La memoria y el ciclo de escán son características del procesador. El procesador, también llamado CPU, es la parte más importante del PLC. Este es el encargado de ejecutar todas las tareas para la que fue programado mediante instrucciones y datos que se almacenan en la memoria. La memoria del controlador está dividida en memoria de datos y memoria de programa.
Memoria de datos.
Todas las variables que usa el controlador son almacenadas un área de memoria, llamada memoria de datos. Estas variables son generadas en el controlador. También pueden venir desde el exterior de controlador a través de los módulos de e/s o redes de comunicación conectadas a interfaces de operación o a otros controladores.
En la memoria de datos está la memoria de entrada. En ella se almacena la información de los módulos de entrada digitales y analógicos. También se encuentra la memoria de salida donde se almacenan los datos de los módulos de salida.
Entre los tipos de datos que se almacenan dentro de la memoria de datos se encuentra los booleanos, enteros, punto flotante y cadenas de caracteres.
Algunas instrucciones del controlador usan datos de estructura más complejas como los temporizadores y contadores. Por ejemplo el temporizador al menos necesita un entero que indique el valor final del tiempo, otro que indique el valor actual del conteo y un bit que indique cuando el valor actual alcanzó el valor final. En algunos procesadores estos tres datos se agrupan en un solo dato que se usa con el temporizador. Mientras el conjunto de instrucciones del controlador sea más complejo, hay más tipos de datos que se almacenan en la memoria de datos.
Memoria de programa
Las instrucciones que se colocan de forma ordenada dentro de rutinas para indicar las acciones que va a ejecutar el controlador. El orden en que se colocan las instrucciones depende del tipo de lenguaje usado. En la norma IEC61131 se indican 4 tipos de lenguajes. Estos son: diagrama escalera (LD), diagrama de bloques funcionales (FBD), lista de instrucciones (IL) y texto estructurado (ST). Además, en la misma norma se contempla las cartas de función secuencial (SFC), que es una forma de organizar las rutinas en el controlador, basada en redes de Petri.
Tanto la memoria de datos como la memoria de programa están preservadas de alguna manera con una batería o un condensador. Esto que en ausencia de energía eléctrica, ni los datos ni el programa se pierdan. El controlador tiene al menos un puerto de comunicación que es usado para transferir el programa y los datos.
Ciclo de escán
La ejecución de las operaciones para las que se programó el controlador ocurre de la siguiente manera:
- Lectura de las entradas. Lee la información en los módulos del controlador y se coloca en la memoria de entrada.
- Barrido de rutinas. Ejecutan todas las rutinas en el controlador y actualización de la memoria de datos.
- Actualización de las salidas. Toma la información de la memoria de salida y se escribe en los módulos de salida.
- Comunicaciones. Atiende los requerimientos de comunicaciones.
- Diagnóstico. Verifica si el procesador está funcionando correctamente.
A esta secuencia de operaciones se le denomina ciclo de escán. En los controladores se puede configurar un tiempo de perro guardián, el tiempo que dura el ciclo de escán debe ser menor que el tiempo de perro guardián en caso contrario ocurre un error.
En los PLCs más avanzados las actividades del ciclo de escán no ocurren de forma secuencial. Cada actividad es ejecutada cíclicamente de forma independiente. Algunas de las actividades pueden ser ejecutadas por la aparición de eventos.
Aw, this was a really nice post. In idea I would like to put in writing like this additionally – taking time and actual effort to make an excellent article… but what can I say… I procrastinate alot and not at all seem to get something done.
Some genuinely interesting details you have written.Aided me a lot, just what I was looking for : D.
Hey, you used to write magnificent, but the last several posts have been kinda boring… I miss your tremendous writings. Past several posts are just a bit out of track! come on!