Descripción
La instrucción "Alarma de tiempo para control del motor" acumula el tiempo desde el instante en el que se activa una de las entradas de comando (abrir o cerrar). El tiempo se acumula hasta que se excede el tiempo predeterminado o hasta que la entrada de realimentación correspondiente indica que el dispositivo ha ejecutado la operación solicitada dentro del tiempo prescrito. Si se excede el tiempo predeterminado antes de recibir realimentación, se activa la alarma correspondiente.
Al insertar la instrucción en el programa, el cuadro de diálogo "Opciones de llamada" se abre automáticamente; en él se puede determinar si los parámetros de bloque de la instrucción se depositan en un bloque de datos propio (instancia individual) o bien como variable local (multiinstancia) en la interfaz del bloque. Si crea un bloque de datos propio, lo encontrará en el árbol del proyecto, en la carpeta "Recursos de programa", en "Bloques de programa > Bloques de sistema". Encontrará más información al respecto en "Consulte también".
Ejecución de la instrucción "Alarma de tiempo para control del motor"
La tabla siguiente muestra las reacciones de la instrucción "Alarma de tiempo para control del motor" a las distintas condiciones de entrada:
|
Parámetros de entrada |
Parámetros de salida |
||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
ET |
O_HIS |
C_HIS |
O_CMD |
C_CMD |
S_CMD |
O_FB |
C_FB |
OO |
CO |
OA |
CA |
ET |
O_HIS |
C_HIS |
Q |
Estado |
|
|
X |
1 |
1 |
X |
X |
X |
X |
X |
0 |
0 |
1 |
1 |
PT |
0 |
0 |
0 |
Alarma |
|
|
X |
X |
X |
X |
X |
X |
1 |
1 |
0 |
0 |
1 |
1 |
PT |
0 |
0 |
0 |
Alarma |
|
|
X |
X |
X |
X |
X |
1 |
X |
X |
0 |
0 |
0 |
0 |
X |
0 |
0 |
1 |
Stop |
|
|
X |
X |
X |
1 |
1 |
X |
X |
X |
0 |
0 |
0 |
0 |
X |
0 |
0 |
1 |
Stop |
|
|
X |
0 |
X |
1 |
0 |
0 |
X |
X |
1 |
0 |
0 |
0 |
0 |
1 |
0 |
1 |
Empezar a abrir |
|
|
<PT |
1 |
0 |
X |
0 |
0 |
0 |
X |
1 |
0 |
0 |
0 |
INC |
1 |
0 |
1 |
Abrir |
|
|
X |
1 |
0 |
X |
0 |
0 |
1 |
0 |
0 |
0 |
0 |
0 |
PT |
1 |
0 |
1 |
Abierto |
|
|
>= PT |
1 |
0 |
X |
0 |
0 |
0 |
X |
0 |
0 |
1 |
0 |
PT |
1 |
0 |
0 |
Abrir alarma |
|
|
X |
X |
0 |
0 |
1 |
0 |
X |
X |
0 |
1 |
0 |
0 |
0 |
0 |
1 |
1 |
Empezar a cerrar |
|
|
< PT |
0 |
1 |
0 |
X |
0 |
X |
0 |
0 |
1 |
0 |
0 |
INC |
0 |
1 |
1 |
Cerrar |
|
|
X |
0 |
1 |
0 |
X |
0 |
0 |
1 |
0 |
0 |
0 |
0 |
PT |
0 |
1 |
1 |
Cerrado |
|
|
>= PT |
0 |
1 |
0 |
X |
0 |
X |
0 |
0 |
0 |
0 |
1 |
PT |
0 |
1 |
0 |
Cerrar alarma |
|
|
X |
0 |
0 |
0 |
0 |
0 |
X |
X |
0 |
0 |
0 |
0 |
X |
0 |
0 |
1 |
Parado |
|
|
Leyenda: |
|||||||||||||||||
|
INC |
Sumar a ET la diferencia de tiempo (en ms) desde la última ejecución del FB |
||||||||||||||||
|
PT |
PT se pone al mismo valor que ET |
||||||||||||||||
|
X |
No aplicable |
||||||||||||||||
|
< PT |
ET < PT |
||||||||||||||||
|
>= PT |
ET >= PT |
||||||||||||||||
|
Si los parámetros de entrada O_HIS y C_HIS tienen el estado lógico "1", se ponen inmediatamente al estado lógico "0". En este caso se aplica la última fila de la tabla mencionada más arriba (X). Puesto que por este motivo no es posible comprobar si los parámetros de entrada O_HIS y C_HIS tienen el estado lógico "1", en este caso se asigna el siguiente valor a los parámetros de salida: OO = FALSE CO = FALSE OA = FALSE CA = FALSE ET = PT Q = TRUE |
|||||||||||||||||
Parámetros
La tabla siguiente muestra los parámetros de la instrucción:
|
Parámetro |
Declaración |
Tipo de datos |
Área de memoria |
Descripción |
|---|---|---|---|---|
|
O_CMD |
Input |
BOOL |
I, Q, M, D, L |
Entrada de la orden "Abrir" |
|
C_CMD |
Input |
BOOL |
I, Q, M, D, L |
Entrada de la orden "Cerrar" |
|
S_CMD |
Input |
BOOL |
I, Q, M, D, L |
Entrada de la orden "Parar" |
|
O_FB |
Input |
BOOL |
I, Q, M, D, L |
Entrada de realimentación al abrir |
|
C_FB |
Input |
BOOL |
I, Q, M, D, L |
Entrada de realimentación al cerrar |
|
OO |
Output |
BOOL |
I, Q, M, D, L |
Salida "Abrir" |
|
CO |
Output |
BOOL |
I, Q, M, D, L |
Salida "Cerrar" |
|
OA |
Output |
BOOL |
I, Q, M, D, L |
Salida de alarma al abrir |
|
CA |
Output |
BOOL |
I, Q, M, D, L |
Salida de alarma al cerrar |
|
Q |
Output |
BOOL |
I, Q, M, D, L |
El estado lógico "0" indica una condición de error. |
|
ET |
Static |
DINT |
I, Q, M, D, L |
Tiempo actual transcurrido; un ciclo de reloj = 1 ms |
|
PT |
Static |
DINT |
I, Q, M, D, L |
Valor de tiempo predeterminado; un ciclo de reloj = 1 ms |
|
PREV_TIME |
Static |
DWORD |
I, Q, M, D, L |
Hora de sistema anterior |
|
O_HIS |
Static |
BOOL |
I, Q, M, D, L |
Bit de evolución "Abrir" |
|
C_HIS |
Static |
BOOL |
I, Q, M, D, L |
Bit de evolución "Cerrar" |
Encontrará más información sobre los tipos de datos válidos en "Consulte también".
Los parámetros estáticos no son visibles al efectuar la llamada de la instrucción en el programa. Estos se almacenan en la instancia de la instrucción.
Ejemplo
El siguiente ejemplo muestra el funcionamiento de la instrucción:
|
Nota Los parámetros estáticos pueden inicializarse en el bloque de datos. |
|
"MCAT_DB"(O_CMD := "Tag_Iput_O_CMD", C_CMD := "Tag_Input_C_CMD", S_CMD := "Tag_Input_S_CMD", O_FB := "Tag_Input_O_FB", C_FB := "Tag_Input_C_FB", OO => "Tag_OutputOpen", CO => "Tag_OutputClosed", OA => "Tag_Output_OA", CA => "Tag_Output_CA", Q => "Tag_Output_Q"); |
Las tablas siguientes muestran el funcionamiento de la instrucción con valores concretos.
Antes de la ejecución
En este ejemplo se utilizan los siguientes valores para los parámetros de entrada y salida:
|
Parámetro |
Operando |
Valor |
|---|---|---|
|
O_CMD |
Tag_Input_O_CMD |
TRUE |
|
C_CMD |
Tag_Input_C_CMD |
FALSE |
|
S_CMD |
Tag_Input_S_CMD |
FALSE |
|
O_FB |
Tag_Input_O_FB |
FALSE |
|
C_FB |
Tag_Input_C_FB |
FALSE |
|
OO |
Tag_OutputOpen |
FALSE |
|
CO |
Tag_OutputClosed |
FALSE |
|
OA |
Tag_Output_OA |
FALSE |
|
CA |
Tag_Output_CA |
FALSE |
|
Q |
Tag_Output_Q |
FALSE |
Los siguientes valores se almacenan en el bloque de datos de instancia "MCAT_DB" de la instrucción:
|
Parámetro |
Dirección |
Valor |
|---|---|---|
|
ET |
DBD4 |
L#2 |
|
PT |
DBD8 |
L#22 |
|
O_HIS |
DBX16.0 |
TRUE |
|
C_HIS |
DBX16.1 |
FALSE |
Después de la ejecución
Una vez ejecutada la instrucción, los valores siguientes se escriben en los parámetros de salida:
|
Parámetro |
Operando |
Valor |
|---|---|---|
|
OO |
Tag_OutputOpen |
TRUE |
|
CO |
Tag_OutputClosed |
FALSE |
|
OA |
Tag_Output_OA |
FALSE |
|
CA |
Tag_Output_CA |
FALSE |
|
Q |
Tag_Output_Q |
TRUE |
Los siguientes valores se almacenan en el bloque de datos de instancia "MCAT_DB" de la instrucción:
|
Parámetro |
Dirección |
Valor |
|---|---|---|
|
ET |
DBD4 |
L#0 |
|
O_HIS |
DBX16.0 |
TRUE |
|
CMD_HIS |
DBX16.1 |
FALSE |