Modos de temporización
Estas instrucciones de variadores y control de procesos admiten diferentes modos de temporización.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Hay tres distintos modos de temporización.
Modo de temporización | Descripción | |
Periódico | El modo Periódico es el modo predeterminado y es apto para la mayoría de aplicaciones de control. Le recomendamos que coloque las instrucciones que usen este modo en una rutina que se ejecute en una tarea periódica. El valor de tiempo de delta (DeltaT) para la instrucción se determina de la siguiente manera: | |
Si la instrucción se ejecuta en una | Entonces el valor de DeltaT es igual a | |
Tarea periódica | Período de la tarea | |
Evento o tarea continua | Tiempo transcurrido desde la ejecución anterior El controlador trunca el tiempo transcurrido en milisegundos enteros (ms). Por ejemplo, si el tiempo transcurrido = 10,5 ms, el controlador establece DeltaT = 10 ms. | |
La actualización de la entrada del proceso debe sincronizarse con la ejecución de la tarea o debe muestrearse entre 5 y 10 veces más rápido que el tiempo necesario para ejecutar la tarea a fin de reducir al mínimo el error de muestreo entre la entrada y la instrucción. | ||
Sobremuestreo | En el modo Sobremuestreo, el tiempo de delta (DeltaT) usado por la instrucción es el valor escrito en el parámetro OversampleDT de la instrucción. Si la entrada del proceso tiene un valor de marca de tiempo, use el modo de muestreo en tiempo real en su lugar. Añada lógica a su programa para controlar cuándo se ejecuta la instrucción. Por ejemplo, puede usar un temporizador establecido en el valor OversampleDeltaT para controlar la ejecución mediante el uso de la entrada EnableIn de la instrucción. La entrada del proceso debe muestrearse entre 5 y 10 veces más rápido que el tiempo necesario para ejecutar la instrucción a fin de reducir al mínimo el error de muestreo entre la entrada y la instrucción. | |
Muestreo en tiempo real | En el modo Muestreo en tiempo real, el tiempo de delta (DeltaT) usado por la instrucción es la diferencia entre dos valores de marca de tiempo que corresponden a las actualizaciones de la entrada de proceso. Use este modo cuando la entrada de proceso tenga una marca de tiempo asociada a sus actualizaciones y necesite una coordinación precisa. El valor de marca de tiempo se lee desde el nombre de etiqueta introducido para el parámetro RTSTimeStamp de la instrucción. Por lo general, este nombre de etiqueta es un parámetro en el módulo de entrada asociado a la entrada de proceso. La instrucción compara el valor de RTSTime configurado (período de actualización previsto) con el valor de DeltaT calculado para determinar si la instrucción lee cada actualización de la entrada de proceso. Si la diferencia entre DeltaT y el tiempo de configuración no es menor o igual a 1 milisegundo, la instrucción establece el bit de estado de RTSMissed para indicar que hay un problema al leer actualizaciones de la entrada en el módulo. | |
Las instrucciones basadas en tiempo requieren un valor constante de DeltaT para que el algoritmo de control calcule correctamente la salida del proceso. Si DeltaT varía, se produce una discontinuidad en la salida del proceso. La gravedad de la discontinuidad depende de la instrucción y el rango de variación de DeltaT.
Se producirá una discontinuidad si sucede lo siguiente:
- La instrucción no se ejecuta durante un escaneo.
- La instrucción se ejecuta varias veces durante una tarea.
- La tarea se está ejecutando y cambia el régimen de escaneo o el tiempo de muestreo de la entrada del proceso.
- El usuario cambia el modo de base de tiempo mientras se está ejecutando la tarea.
- El parámetro Order se modifica en un bloque de filtro mientras se ejecuta la tarea.
- Al cambiar el parámetro Order, se selecciona otro algoritmo de control dentro de la instrucción.
Parámetros de instrucción comunes para los modos de temporización
Las instrucciones que admiten los modos de base de tiempo tienen estos parámetros de entrada y salida.
Parámetros de entrada
Parámetro de entrada | Tipo de datos | Descripción |
TimingMode | DINT | Selecciona el modo de ejecución de temporización. Value: Descripción: 0 Modo periódico 1 Modo sobremuestreo 2 Modo de muestreo en tiempo real Válido = de 0 a 2 Valor predeterminado = 0 Cuando TimingMode = 0 y la tarea es periódica, se habilita el modo de temporización periódico y se establece DeltaT en el régimen de escaneo de la tarea. Cuando TimingMode = 0 y la tarea es un evento o es continua, se habilita el modo de temporización periódico y se establece DeltaT en el intervalo de tiempo transcurrido desde la última vez que se ejecutó la instrucción. Cuando TimingMode = 1, se habilita el modo de temporización de sobremuestreo y se establece DeltaT en el valor del parámetro OversampleDT. Cuando TimingMode = 2, se habilita el modo de muestre en tiempo real y DeltaT se establece en la diferencia entre los valores de marca de tiempo actual y anterior leídos desde el módulo asociado a la entrada. Si el valor de TimingMode no es válido, la instrucción establece el bit correspondiente de Status. |
OversampleDT | REAL | Tiempo de ejecución para el modo de temporización de sobremuestreo. El valor usado para DeltaT se expresa en segundos. Si TimingMode = 1, OversampleDT = 0,0 deshabilita la ejecución del algoritmo de control. Si no es válido, la instrucción establece DeltaT = 0,0 y establece el bit correspondiente en Status. Válido = de 0 a 4194,303 segundos Valor predeterminado = 0,0 |
RTSTime | DINT | Período de actualización de módulo para el modo de temporización de muestreo en tiempo real. El período de actualización DeltaT esperado se expresa en milisegundos. El período de actualización es normalmente el valor que se utilizó para configurar el tiempo de actualización del módulo. Si su valor no es válido, la instrucción establece el bit correspondiente en Status y deshabilita la comprobación de RTSMissed. Válido = 1…32,767ms Valor predeterminado = 1 |
RTSTimeStamp | DINT | Valor de sello de tiempo de módulo para el modo de temporización de muestreo en tiempo real. El valor de sello de tiempo que corresponde a la última actualización de la señal de entrada. Este valor se utiliza para calcular DeltaT. Si su valor no es válido, la instrucción establece el bit correspondiente en Status, deshabilita la ejecución del algoritmo de control y deshabilita la comprobación de RTSMissed. Válido =0…32,767ms (envuelve desde 32767 a 0) 1 conteo = 1 milisegundo Valor predeterminado = 0 |
Parámetros de salida
Parámetro de salida | Tipo de datos | Descripción |
DeltaT | REAL | Tiempo transcurrido entre actualizaciones. Este es el tiempo transcurrido en segundos utilizado por el algoritmo de control para calcular la salida del proceso. Periódico: DeltaT = régimen de escaneo de tarea si es una Tarea periódica, DeltaT =
tiempo transcurrido desde la anterior ejecución de la instrucción si la tarea es una tarea de Evento o Continua Sobremuestreo: DeltaT = OversampleDT Muestreo en tiempo real: DeltaT = (RTSTimeStampn - RTSTimeStampn-1) |
Estado | DINT | Estado del bloque de funciones. |
TimingModeInv (Status.27) | BOOL | Valor de TimingMode no válido. |
RTSMissed (Status.28) | BOOL | Solo se utiliza en el modo de muestreo en tiempo real. Se establece cuando ABS | DeltaT - RTSTime | > 1 (0,001 segundos). |
RTSTimeInv (Status.29) | BOOL | Valor de RTSTime no válido. |
RTSTimeStampInv (Status.30) | BOOL | Valor de RTSTimeStamp no válido. |
DeltaTInv (Status.31) | BOOL | Valor de DeltaT no válido. |
Descripción general de los modos de temporización
El siguiente diagrama muestra cómo una instrucción determina el modo de temporización adecuado.

Entregue su opinión