Cómo utilizar el valor introducido en un temporizador. Realizar cálculos con el tiempo actual del temporizador y conocer qué formato utilizar es algo que parece simple pero hay que saber cómo trabajarlo…

Cuando se programa un temporizador se inserta el tiempo al cual se debe ejecutar una función o la activación de algún bit. Simplemente utilizando el bit de dicho temporizador se podrá activar cualquier proceso al tiempo establecido.

Una forma más compleja de trabajar con tiempos sería utilizando el valor actual del temporizador e ir comparando a intervalos de tiempo dentro del rango de tiempo total del temporizador.

Qué hacer con un temporizador.

Se pretende trabajar con el valor actual del temporizador y utilizar ese dato en otra parte del programa para, por ejemplo, a cada intervalo de tiempo ejecutar un proceso.

para conocer todos los parámetros que tiene un temporizador y los tipos puedes ver los documentos relacionados: Cómo utilizar un temporizador, Temporizador TON, Temporizador TOF, Temporizador TONR.

Procedimiento para trabajar con el valor actual del temporizador.

Valor actual de un temporizador.

Si se pretende trabajar con el tiempo actual para realizar algún cálculo, hay que tener en cuenta que este dato está en milésimas. Para trabajar con este dato, se procede de esta manera:

Dividir el valor entre 100.
Este valor será un valor Real (coma flotante con decimales).
Utilizar la función TRUNC para no contar esos decimales.

El valor del temporizador tiene un formato INT. Habrá que almacenarlo en una variable tipo WORD.
Mover valor del temporizador a una variable tipo Word.

Mover valor del temporizador a una variable tipo Word.

Este valor se debe convertir de entero a tipo “doble entero”. Para ello se utiliza la función “I_DI”.

 

Convertir el dato de tipo Int a un dato de tipo Doble Int.

Convertir el dato de tipo Int a un dato de tipo Doble Int.

Este nuevo valor ahora hay que transformarlo a tipo “Real”. Función “DI_R”.
Convertir el valor de la variable de tipo Doble Int a otro de tipo Real.

Convertir el valor de la variable de tipo Doble Int a otro de tipo Real.

Posteriormente se divide este nuevo valor real entre 100 y se guarda en otra variable tipo “Real”.
Dividir el dato de tipo Real entre una constante 100.

Dividir el dato de tipo Real entre una constante 100.

A esta variable “Real” se le ejecuta la función “TRUNC”, cuyo resultado se guarda en una variable tipo “Real” donde se puede trabajar con el valor exacto sin decimales.

Por ejemplo:

Ejecutar la función TRUNC con el último valor generado.

Ejecutar la función TRUNC con el último valor generado.

Últimos detalles.

Para trabajar con el valor Real de un temporizador se deben ejecutar una serie de conversiones de tipos de datos. Pero este nuevo valor se puede utilizar para crear varios rangos de tiempo dentro del tiempo total del temporizador.

Por ejemplo: el temporizador tiene un tiempo total de 100 segundos. Se quiere activar una salida cuando el tiempo esté entre 0 y 50 segundos. Se debe activar otra salida cuando el tiempo esté entre 50 y 100.

Tener en cuenta que, a la hora de trabajar con números en coma flotante, esto es, números “Reales”, los números debemos introducirlos con su punto decimal. Por ejemplo, un «100» equivale a «100.0». Conoce más a cerca de este tipo de datos Real.


Desarrollo del documento

Documento desarrollado por tecnoplc.com bajo una Licencia de Creative Commons Reconocimiento-NoComercial-CompartirIgual 4.0 Internacional.
Ante cualquier duda, consultar en www.tecnoplc.com.
Creative Commons pequeño