Esta parte del
PLC es considerada como la más importante,
ya que dentro de ella se encuentra un microcontrolador
que lee y ejecuta el programa de usuario, que a
su vez se localiza en una memoria (normalmente del
tipo EEPROM), además de realizar la gestión
de ordenar y organizar la comunicación entre
las distintas partes que conforman al PLC. El programa
de usuario consiste en una serie de instrucciones
que representan el proceso del control lógico
que debe ejecutarse, para poder hacer este trabajo,
la unidad central de proceso debe almacenar en localidades
de memoria temporal las condiciones de las variables
de entrada y variables de salida de datos más
recientes.
La unidad central de proceso, en esencia, tiene
la capacidad para realizar las mismas tareas que
una computadora personal, porque como ya se mencionó
líneas atrás, en su interior se
encuentra instalado un microcontrolador que es
el encargado de gobernar todo el proceso de control.
Cuando se energiza un PLC, el microcontrolador
apunta hacia el bloque de memoria tipo ROM donde
se encuentra la información que le indica
la manera de cómo debe predisponerse para
comenzar sus operaciones de control (BIOS del
PLC). Es, en la ejecución de este pequeño
programa (desarrollado por el fabricante del PLC),
que se efectúa un proceso de diagnóstico
que a través del cual, se sabe con qué
elementos periféricos a la unidad central
de proceso se cuentan (módulos de entrada
/ salida por ejemplo). Una vez concluido esta
fase el PLC “sabe” si tiene un programa
de usuario alojado en el bloque de memoria correspondiente.
Si es así, por medio de un indicador avisa
que está en espera de la orden para comenzar
a ejecutarlo, de otra manera, también notifica
que el bloque de memoria de usuario se encuentra
vacío.
En la figura 4 se puede observar el diagrama
de flujo (estructura de programa) de las actividades
que normalmente desarrolla un PLC.
Una vez que el programa de usuario ha sido cargado
en el bloque de memoria correspondiente del PLC,
y se le ha indicado que comience a ejecutarlo,
el microcontrolador se ubicará en la primer
localidad de memoria del programa de usuario y
procederá a leer, interpretar y ejecutar
la primera instrucción. Dependiendo de
qué instrucción se trate, será
la acción que realice el microcontrolador,
aunque de manera general, las acciones que realiza
son las siguientes: leer los datos de entrada
que se generan en los sensores, guardar esta información
en un bloque de memoria temporal, realizar alguna
operación con los datos temporales, enviar
la información resultante de las operaciones
a otro bloque de memoria temporal, y por último
la información procesada enviarla a las
terminales de salida para manipular algún(os)
actuador(es).
En cuanto a los datos que entran y salen de la
unidad central de proceso, se organizan en grupos
de 8 valores, que corresponden a cada sensor que
esté presente si se trata de datos de entrada,
o actuadores si de datos de salida se refiere
(vea la figura 5). Se escogen agrupamientos de
8 valores, porque es el número de bits
que tienen los puertos de entrada y salida de
datos del microcontrolador, a cada agrupamiento
se le conoce con el nombre de byte ó palabra.
En cada ciclo de lectura de datos que se generan
en los sensores, ó escritura de datos hacia
los actuadores, se gobiernan 8 diferentes sensores
ó actuadores, por lo que cada elemento
de entrada/ salida tiene su imagen en un bit del
byte que se hace llegar al microcontrolador.
En el proceso de lectura de datos provenientes
de los sensores, se reservan localidades de memoria
temporal que corresponden con el bit y la palabra
que a su vez es un conjunto de 8 bits (byte),
esto es para tener identificado en todo momento
el estado en que se encuentra un determinado sensor
(figura 6).
Con los espacios de memoria temporal reservados
para los datos de entrada, se generan paquetes
de información que corresponden al reflejo
de lo que están midiendo los sensores.
Estos paquetes de datos cuando el microcontrolador
da la indicación, son almacenados en la
localidad de memoria que les corresponde, siendo
esa información la que representa las últimas
condiciones de las señales de entrada.
Si durante la ejecución del programa de
control, el microcontrolador requiere conocer
las condiciones de entrada más recientes,
de forma inmediata accede a la localidad de memoria
que corresponde al estado de determinado sensor.
Antes de continuar, vea en la figura 7 cómo
es el flujo de datos de entrada y salida en el
microprocesador del PLC.
El producto de la ejecución del programa
de usuario depende de las condiciones de las señales
de entrada, dicho de otra manera, el resultado
de la ejecución de una instrucción
puede tener una determinada respuesta si una entrada
en particular manifiesta un uno lógico,
y otro resultado diferente si esa entrada está
en cero lógico.
La respuesta que trae consigo la ejecución
de una instrucción se guarda en una sección
de la memoria temporal, para que estos datos posteriormente
sean recuperados, ya sea para exhibirlos o sean
utilizados para otra parte del proceso.
La información que se genera en los sensores
se hace llegar al microcontrolador del PLC, a
través de unos elementos que sirven para
aislar la etapa del medio ambiente donde se encuentran
los sensores, de la etapa de control que es comprendida
por la unidad central de proceso del PLC y que
en su interior se encuentra el microcontrolador.
Los elementos de aislamiento reciben el nombre
de módulos de entradas, los cuales se encuentran
identificados y referenciados hacia los bloques
de memoria temporal donde se alojan los datos
de los sensores.
En cuanto a los datos que manipulan a los actuadores
(también llamados datos de salida), éstos
se encuentran alojados en las localidades de memoria
temporal que de manera exprofesa se reservan para
tal información.
Cuando en el proceso de ejecución de un
programa de usuario se genera una respuesta y
ésta a su vez debe modificar la operación
de un actuador, el dato se guarda en la localidad
de memoria temporal correspondiente, tomando en
cuenta que este dato representa un bit de información
y que cada localidad de memoria tiene espacio
para 8 bits.
Una vez que los datos de salida han sido alojados
en las localidades de memoria correspondiente,
en un ciclo posterior el microcontrolador puede
comunicarlos hacia el exterior del PLC, ya que
cada bit que conforma un byte de datos de salida
tiene un reflejo en cuanto a las conexiones físicas
que tiene el PLC hacia los elementos de potencia
o actuadores. Dicho de otra forma, al igual que
en las terminales de los datos de entrada, cada
una de las terminales que contienen la información
de salida también tienen asociado un elemento
de potencia conectado en su terminal correspondiente.
A medida que el microcontrolador de la unidad
central de proceso del PLC ejecuta las instrucciones
del programa de usuario, el bloque de memoria
temporal asignado a la salida de datos, se está
actualizando continuamente, ya que las condiciones
de salida muchas veces afectan el resultado que
pueda traer consigo la ejecución de las
instrucciones posteriores del programa de usuario.
De acuerdo a la manera de cómo se manejan
los datos de salida, se puede observar que esta
información cumple con una doble actividad,
siendo la primordial la de canalizar los resultados
derivados de la ejecución de las instrucciones
por parte del microcontrolador hacia los bloques
de memoria correspondientes, y pasar también
los datos de salida a las terminales donde se
encuentran conectados los actuadores. Otra función
que se persigue es la de retroalimentar la información
de salida hacia el microcontrolador de la unidad
central de proceso del PLC, cuando alguna instrucción
del programa de usuario lo requiera.
En cuanto a los datos de entrada, no tienen la
doble función que poseen los datos de salida,
ya que su misión estriba únicamente
en adquirir información del medio ambiente
a través de las terminales de entrada y
hacerla llegar hacia el microcontrolador de la
unidad central de proceso.
Los datos de salida al igual que los de entrada,
son guiados hacia los respectivos actuadores a
través de elementos electrónicos
que tienen la función de aislar y proteger
al microcontrolador de la unidad central de proceso
con la etapa de potencia, estos elementos reciben
el nombre de módulos de salida.
Tanto los módulos de entrada como de salida,
tienen conexión directa hacia las terminales
de los puertos de entrada y salida del microcontrolador
del PLC, esta conexión se realiza a través
de una base que en su interior cuenta con un bus
de enlace que tiene asociado una serie de conectores
que son los medios físicos en donde se
insertan los módulos (ya sean de entrada
o salida). El número total de módulos
de entrada o salida que pueden agregarse al PLC
depende de la cantidad de direcciones que el microcontrolador
de la unidad central de proceso es capaz de observar.
De acuerdo con lo escrito en el párrafo
anterior, cada dato (ya sea de entrada o salida)
que es representado por un bit y que a su vez
está agrupado en bloques de 8 bits (palabra
o byte), debe estar registrado e identificado
para que el microcontrolador “sepa”
si está siendo ocupado por un sensor o
un actuador, ya que determinado bit de específico
byte y por ende, de determinada ubicación
de memoria temporal, tiene su reflejo hacia las
terminales físicas de los módulos.
Esto último quiere decir que en los conectores
de la base, se pueden conectar de manera indistinta
tanto los módulos de entrada como los módulos
de salida, por lo que el flujo de información
puede ser hacia el microcontrolador de la unidad
central de proceso o, en dirección contraria.