¿Cómo funciona un PLC? ¿Qué es lo que controla el funcionamiento de un PLC? Es evidente que el control del funcionamiento del PLC es una de las tareas claves que debe tener este dispositivo.
Un PLC, una vez alimentado, tiene básicamente dos modos de funcionamiento:
- Stop: en este modo de funcionamiento no se ejecuta el programa de control.
- Run: en este modo de funcionamiento el programa de control se está ejecutando de manera indefinida hasta que el PLC pasa al modo Stop o se desconecta.
El último modo de funcionamiento es en el que nos vamos a centrar. Cuando el autómata se encuentra en esta situación, el programa de control que está grabado en su memoria se ejecuta cíclicamente describiendo lo que se llama ciclo de scan. Un ciclo de scan consiste básicamente en cuatro pasos:
- Lectura de las entradas del PLC.
- Ejecución del programa de control.
- Escritura de las salidas del PLC.
- Tareas internas del PLC.
La lectura de las entradas del PLC se realiza al comienzo de cada ciclo de scan. El sistema operativo del PLC comprueba el estado en el que se encuentran todos y cada uno de los elementos de entrada (sensores, pulsadores, etc.) que están conectados a los distintos módulos de entradas del PLC. Si un sensor está activado, el PLC pondrá un 1 lógico en una posición determinada de una zona de memoria llamada memoria de entradas. Si el sensor fuese analógico en vez de escribir un 1 o un 0, se convertiría el valor de la magnitud física a un valor numérico que también se depositaría en una zona de la memoria de entradas analógicas. Al hacer esta operación de lectura de todas las entradas al comienzo de cada ciclo se asegura que todas las instrucciones del programa de control son ejecutadas sobre el estado actual del proceso.
Leída la memoria de entradas se ejecutarán las instrucciones del programa albergado en su memoria de programa del PLC. Lo hará secuencialmente comenzando por la primera instrucción del módulo de programa que se considere el principal. Esta ejecución secuencial no implica que sea lineal, ya que un programa puede contener instrucciones especiales que permitan hacer saltos hacia delante y hacia atrás, e incluso es posible que haya subrutinas e interrupciones. Existe una última instrucción que pone fin a este paso del ciclo de scan. La ejecución del programa de control hará que los valores de la memoria de datos del PLC vayan cambiando. Los cambios que se registren en la memoria de salidas son los que se traducirán en acciones finales sobre el proceso.
Después de ejecutar la última instrucción del programa de control, el PLC revisa todas las posiciones de la memoria de salidas. En función del valor, el PLC activará o no la salida correspondiente en el módulo de salidas. Normalmente se encuentra un accionador conectado al módulo de salidas en cada posición para llevar a cabo la acción correspondiente sobre el proceso.
Antes de comenzar un nuevo ciclo de scan, el PLC necesita realizar ciertas tareas internas como por ejemplo comprobar errores, almacenar la duración del ciclo de scan, actualizar valores internos de sus tablas de datos, etc. Una vez que esta fase ha terminado el sistema operativo del PLC comenzará a ejecutar un nuevo ciclo de scan.
El tiempo de ciclo puede variar entre 1 y 100 milisegundos, dependiendo del tipo de autómata y de la carga de programa que tenga en la memoria. Es importante que una orden de activación o desactivación de un mismo objeto no se repita dentro del programa, pues el autómata se quedará con la última orden y no hará caso a las demás.
Una subrutina es un subprograma que forma parte de otro principal.