Información general sobre la gestión del bloque de funciones administrativas y de movimiento

Gestión de variables de entrada

En el flanco ascendente de la entrada Execute, se inicia el bloque de funciones.

No se tendrá en cuenta cualquier modificación posterior realizada en las variables de entrada.

Siguiendo la normativa IEC 61131-3, si falta alguna entrada de variable en un bloque de funciones, es decir, si alguna se deja abierta o sin conectar, se utilizará el valor de la invocación anterior de la instancia del bloque de funciones. En este caso, en la primera invocación se aplicará el valor inicial configurado. Por tanto, es mejor que un bloque de funciones siempre tenga valores conocidos atribuidos a sus entradas para evitar así dificultades en la depuración del programa. Para los bloques de funciones HSC y PTO, es mejor utilizar la instancia solo una vez, y dicha instancia debe estar en la tarea principal.

Gestión de variables de salida

Las salidas Done, InVelocity o InFrequency se excluyen mutuamente con las salidas Busy, CommandAborted y Error: solamente una de ellas puede ser TRUE en un bloque de funciones. Si la entrada Execute es TRUE, una de estas salidas es TRUE.

En el flanco ascendente de la entrada Execute, se establece la salida Busy. Esta salida Busy permanece establecida durante la ejecución del bloque de funciones, y se resetea en el flanco ascendente de una de las otras salidas (Done, InVelocity, InFrequency, CommandAborted y Error).

La salida Done, InVelocity o InFrequency se establece cuando la ejecución del bloque de funciones se ha completado correctamente.

Cuando se interrumpe una ejecución de bloques de funciones con otra, se establece la salida CommandAborted en su lugar.

Cuando una ejecución de bloques de funciones termina por un error detectado, se define la salida Error y se ofrece el número de error detectado a través de la salida ErrId.

Las salidas Done, InVelocity, InFrequency, Error, ErrID y CommandAborted se resetean con el flanco descendente de Execute. Si la entrada Execute se resetea antes de que finalice la ejecución, entonces las salidas se establecen para un ciclo de tareas al finalizar la ejecución.

Cuando una instancia de un bloque de funciones recibe una nueva Execute antes de finalizar, el bloque de funciones no devuelve información, como Done, para la acción anterior.

Gestión de un error detectado

Todos los bloques tienen dos salidas que pueden notificar un error detectado durante la ejecución del bloque de funciones:

oError = TRUE cuando se detecta un error.

oErrID Cuando Error = TRUE, devuelve el ID de error detectado.