Descripción
La instrucción "Retardo al conectar" permite retardar la activación del parámetro Q por el tiempo programado PT. La instrucción se inicia cuando el resultado lógico (RLO) del parámetro IN cambia de "0" a "1" (flanco de señal ascendente). Cuando se inicia la instrucción, se empieza a contar el tiempo programado PT. Una vez transcurrido el tiempo PT, el parámetro Q devuelve el estado lógico "1". El parámetro Q permanecerá activado mientras la entrada de arranque esté puesta a "1". Cuando el estado lógico del parámetro IN cambia de "1" a "0", se resetea el parámetro Q. La función de temporización se reinicia al detectarse un nuevo flanco ascendente en el parámetro IN.
El valor actual de tiempo se puede consultar en el parámetro ET. Este valor de tiempo empieza a partir de T#0s y termina al alcanzarse el valor del tiempo PT. El parámetro ET se resetea en cuanto el estado lógico del parámetro IN cambia a "0".
A cada llamada de la instrucción "Retardo al conectar" debe asignársele un temporizador CEI, en el que se guarden los datos de la instrucción. Un temporizador CEI se puede declarar como se indica a continuación:
-
Declaración de un bloque de datos del tipo TON (p. ej., "TON_DB")
-
Declaración como variable local del tipo TON en la sección "Static" de un bloque (p. ej., #MyTON_TIMER)
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 el temporizador CEI se deposita 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 "Bloques de programa > Bloques de sistema", carpeta "Recursos de programa", . Encontrará más información al respecto en "Consulte también".
El sistema operativo inicializa las instancias de la instrucción "Retardo al conectar" cuando se realiza un arranque en frío. Si alguna instancia de la instrucción debe estar inicializada tras un rearranque completo (en caliente), las instancias que se deben inicializar se deben llamar en un OB de arranque con el valor "0" en el parámetro PT. Si un bloque diferente contiene instancias de la instrucción "Retardo al conectar", estas pueden inicializarse p. ej. inicializando el bloque de nivel superior.
|
Nota Ignorar instrucción Si en el programa no se llama la instrucción porque, p. ej., esta es ignorada, la salida ET devuelve un valor de constante en cuanto ha transcurrido este tiempo. |
|
Nota Actualización de los datos de la instrucción Los datos de la instrucción se actualizan únicamente al llamar la instrucción. Al acceder a las salidas Q o ET, no se actualizan los datos. |
Temporizador CEI como bloque de datos de instancia del tipo de datos de sistema <Temporizador_CEI> (Shared DB)
Un temporizador CEI se puede declarar como bloque de datos del modo siguiente:
<DB_temporizador_CEI>.TON();
Temporizador CEI como variable local de la interfaz del bloque (multiinstancia)
El temporizador CEI se puede declarar como variable local del modo siguiente:
#myLocal_Timer();
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 |
|---|---|---|---|---|
|
IN |
Input |
BOOL |
I, Q, M, D, L |
Entrada de arranque |
|
PT |
Input |
TIME |
I, Q, M, D, L, P |
Tiempo de retardo al conectar. El valor del parámetro PT debe ser positivo. |
|
Q |
Output |
BOOL |
I, Q, M, D, L |
Operando que se activa una vez transcurrido el tiempo PT. |
|
ET |
Output |
TIME |
I, Q, M, D, L |
Valor de tiempo actual |
Encontrará más información sobre los tipos de datos válidos en "Consulte también".
Cronograma de impulsos
La figura siguiente muestra el cronograma de impulsos de la instrucción "Retardo al conectar":
Ejemplo
El siguiente ejemplo muestra el funcionamiento de la instrucción:
|
"TON_DB".TON(IN := "Tag_Start", PT := "Tag_PresetTime", Q => "Tag_Status", ET => "Tag_ElapsedTime"); |
Cuando el estado lógico del operando "Tag_Start" cambia de "0" a "1", el tiempo programado en el parámetro PT empieza a contar. Una vez transcurrido el tiempo, el operando "Tag_Start" se pone a "1" si el operando "Tag_Status" tiene el estado lógico "1". Una vez transcurrido el tiempo, el operando "Tag_Status" adopta el estado lógico "1" mientras el operando "Tag_Start" tenga el estado lógico "1". El valor de tiempo actual se guarda en el operando "Tag_ElapsedTime".