CONTROLADOR LOGICO
PROGRAMABLE
PLC
Los Controladores Lógicos Programables o PLC (Programmable
Logic Controller por sus siglas en inglés) son dispositivos
ampliamente usados en la Automatización Industrial.
Su historia se remonta a finales de la década de 1960, cuando la
industria buscó en las nuevas tecnologías electrónicas una solución
más eficiente para reemplazar los sistemas de control basados en
circuitos eléctricos con relevadores, interruptores y otros
componentes comúnmente utilizados para el control de los sistemas
de lógica combinacional.
Hoy en día, los PLC no sólo controlan la lógica de funcionamiento
de máquinas, plantas y procesos industriales, sino que también
pueden realizar operaciones aritméticas, manejar señales
analógicas para realizar estrategias de control, tales como
controladores proporcional integral derivativo (PID).
Los PLC actuales pueden comunicarse con otros controladores y
computadoras en redes de área local, y son una parte fundamental
de los modernos sistemas de control distribuido.
Lenguajes
Existen varios lenguajes de programación,
tradicionalmente los más utilizados son el diagrama de
escalera (Ladder), lista de instrucciones y programación
por estados, aunque se han incorporado lenguajes más
intuitivos que permiten implementar algoritmos
complejos mediante simples diagramas de flujo más
fáciles de interpretar.
En la programación se pueden incluir diferentes tipos de
operandos, desde los más simples como lógica
booleana, contadores, temporizadores, contactos,
bobinas y operadores matemáticos, hasta operaciones
más complejas como manejo de tablas, apuntadores y
algoritmos PID.
Lenguaje de escalera.
A este lenguaje también se le conoce
como lenguaje de contactos, es un
lenguaje grafico muy popular debido a que
esta basado en los esquemas eléctricos
de control clásicos.
Elementos de programación
Para programar un PLC en escalera,
además de estar familiarizado con las
reglas de los circuitos de conmutación, es
necesario conocer a todos y cada uno de
los elementos que conforman este
lenguaje.
Elementos Básicos del lenguaje
escalera.
CONTACTO
Se activa cuando hay
un uno lógico en el
elemento que
representa, esto es,
una entrada (para
captar información del
proceso a controlar),
una variable interna o
un bit de sistema.
Elementos Básicos del lenguaje
escalera.
CONTACTO negado
Su función es similar
al contacto anterior,
pero en este caso se
activa cuando hay un
cero lógico, cosa que
deberá de tenerse
muy en cuenta a la
hora de su utilización.
Elementos Básicos del lenguaje
escalera.
BOBINA
Se activa cuando la
combinación que hay a
su entrada (izquierda)
arroja un uno lógico. Su
activación equivale a
decir que tiene un uno
lógico. Suele representar
elementos de salida,
aunque a veces puede
hacer el papel de variable
interna.
Elementos Básicos del lenguaje
escalera.
BOBINA NEGADA.
Se activa cuando la
combinación que hay
a su entrada
(izquierda) da un cero
lógico. Su activación
equivale a decir que
tiene un cero lógico.
Su comportamiento
es complementario al
de la bobina anterior.
Elementos Básicos del lenguaje
escalera.
BOBINA SET
Una vez activa (puesta a
1) no se puede desactivar
(puesta a 0) si no es por
su correspondiente
bobina en RESET. Sirve
para memorizar bits y
usada junto con la bobina
RESET dan una enorme
potencia en la
programación.
Elementos Básicos del lenguaje
escalera.
BOBINA RESET
Permite desactivar
una bobina SET
previamente activada
Elementos Básicos del lenguaje
escalera.
BOBINA JUMP
Permite saltarse
instrucciones del
programa e ir
directamente a la
etiqueta que se
desee. Sirve para
realizar
subprogramas.
PROGRAMACION
En esta sección se trataran de manera
general, los conceptos básicos de la
programación en escalera. Una vez que
se conocen los elementos básicos que
conforman el lenguaje escalera es
importante mencionar la estructura de un
programa así como el orden de ejecución.
Programación
Esta figura representa un
programa en escalera
típico, esto es los
contactos del lado
izquierdo y las bobinas
del lado derecho.
El orden de ejecución
generalmente es de
arriba hacia abajo y de
izquierda a derecha, esto
es primero los contactos
y despues las bobinas.
Programación
Aunque en los sistemas industriales la
programación se centra en procesos
secuenciales, es necesario conocer la lógica
combinacionál ya que en ocasiones cuando se
este desarrollando un programa secuencial se
necesitara la lógica combinacionál.
Una vez conocida la función lógica, de un
problema combinacionál el paso a lenguaje
escalera es sencillo.
Programación
Algebra de Boole aplicada al sistema de
conmutación.
Sumas
Las sumas serán equivalentes a contactos en
paralelo
Multiplicaciones
Las multiplicaciones serán contactos en serie
Las negaciones
Las negaciones se representan con contatos
normalmente cerrado.
Programación.
Este programa en
escalera representa
la función booleana
M=A*(/B+C)*/D.
Estructura de un programa en
escalera
Un diagrama en escalera esta formado de peldaños. Cada peldaño
tiene un mínimo de un contacto, y un máximo de 12 contactos en
serie. Cada peldaño contiene además al menos una y a lo mas seis
secciones de peldaños.
Se pueden insertar en paralelo un máximo de 9 ramas dando como
resultado un máximo de 10 contactos en paralelo.
Las ramas paralelas pueden ser posicionadas en cualquier lugar,
exceptuando los sitios en donde se enciman.
Las bobinas también pueden ser configuradas en paralelo, pero
todas tendrán una entrada común. Una rama puede además solo
enviar solo una señal lógica asia todos las bobinas.
De que esta conformado un
diagrama en escalera?
En su forma mas simple un diagrama en
escalera es un circuito que se lee de izquierda a
derecha.
Términos usados.
Ramas.
Rutas paralelas.
Secciones de peldaño.
Contactos.
Cajas.
Bobinas.
Bobinas en paralelo.
De que esta conformado un
diagrama en escalera?
Una caja puede ser usada para remplazar
un contacto o una bobina. Las cajas son
usadas como funciones que son muy
difíciles de representar diagramas de
circuitos en escalera, por ejemplo una
operación aritmética, como la suma de
dos números.
Un máximo de 5 cajas puede ser usado en un
pedaño.
De que esta conformado un
diagrama en escalera?
Las ramas en paralelo pueden ser usadas
en cualquier punto del peldaño, tan
separadas como para que sus conexiones
no se crucen. Las ramas paralelas son
conocidas como bobinas en paralelo.
De que esta conformado un
diagrama en escalera?
Estructura de un diagrama es
escalera.
Condicional y parte ejecutable.
Al igual que la algebra booleana o las
operaciones lógicas, los peldaños son
divididos en parte condicional y una parte
ejecutable. La parte condicional para una
determinada acción; la parte ejecutable
contiene la acción que debe de ser ejecutada
cuado cierta condición es valida.
Como es procesado un peldaño
Los peldaños son numerados, este
numerado es automático. Antes de
descargar el programa en escalera dentro
del controlador el programa es traducido
en código maquina usado por el
controlador. Los peldaños son traducidos
en el orden de su numero de secuencia.
Como es procesado un peldaño
El programa es ejecutado estrictamente
en secuencia. Cuando se enciende un
PLC o cuando se cambia el interruptor
RUN/STOP a la posición RUN cada
controlador empieza en la primer línea del
programa. Así que cuando se esta
programando siempre se debe saber que
operación debe de ser ejecutada primero.
Programación por sentencia.
Ambiente de programación FST (Festo
Software Tools).
FST es un programa que puede operar
en una PC con PC/Ms-Dos.
Sentencia.
Escalera.
Basic.
Resumen de Comandos
AND
Desempeña una operación lógica que combina dos o
mas operandos simples o Multibit.
BID
Convierte el contenido del Acumulador Multibit binario
al formato BCD.
CFM n
Empieza su ejecución o inicialización de un modulo
de función.
Resumen de Comandos
CMP n
Empieza su ejecución de un modulo de
programa.
CPL
Produce dos o mas complementos de el
contenido del Acumulador Multibit.
DEC
Decrementa un Operando o Acumulador
Multibit.
Resumen de Comandos
DEB
Convierte el contenido del Acumulador del BCD al
formato binario.
EXOR
Para combinar dos o mas operandos siples o multibit
en la parte condicional o efectora de una línea
IF
Palabra clave que marca el inicio de un enunciado
condicional
Resumen de Comandos
INC
Incrementa un Operando o Acumulador Multibit.
INV
Este comando complementa (INVierte) el contenido
del Acumulador Multibit utilizando el método de
complementación.
JMP TO (Step label)
Causa que el programa continúe su ejecución a un
Step en específico.
Resumen de Comandos
LOAD
Carga operandos específicos.
NOP
Instrucción especial la cual siempre es verdadera en
la parte Condicional del enunciado. En la parte de
OR
Combinar uno o más operandos en la parte
condicional usando la operación lógica OR.
Resumen de Comandos
OTHRW
Ejecuta el código inmediato cuando ninguna
condición en la parte condicional es valida.
PSE
Marcar el final de un programa (Program Section
End) y causar un cambio. Este comando no es
necesario en todos los modelos de los controladores.
RESET
El comando de RESET (Reinicio) se utiliza para
cambiar el estado de los operandos de bit sencillo a
un 0 lógico (cero).
Resumen de Comandos
ROL
La instrucción de rotar a la izquierda, conecta el MBA
hacia la izquierda en una posición.
ROR
La instrucción de rotar hacia a la derecha, conecta el
MBA hacia la derecha en una posición.
SET
Este comando se utiliza para cambiar el estado de
operandos de bit sencillo a un lógico (uno).
Resumen de Comandos
SHIFT
Desviar. Este comando ejecuta el intercambio entre
el SBA, y un operando de bit sencillo.
SHL
El comando de SHift Left mueve los contenidos del
MBA a la izquierda por una posición.
SHR
El comando de SHift Right mueve los contenidos del
MBA a la derecha por una posición.
Resumen de Comandos
SWAP
Nos da los promedios de intercambios en el orden de
altos bites (8-15) y los bits de bajo orden (0-7) en el
MBA.El MBA deberá ser cargado en el MBO
apropiado o el valor antes de ejecutar el comando de
SWAP.
TO
Usar con la instrucción de LOAD para especificar el
destino del operando.
THEN
Palabra clave que marca el comienzo de la parte
ejecutora de un enunciado
Resumen de Comandos
WITH
Utilizado para pasar con algunos parámetros
de las instrucciones CFM/CPM. También es
utilizado para especificar el tiempo en
algunos modelos de PLC.
Operadores
Las direcciones de los operadores
absolutos siguen la siguiente estructura.
F4.2
Operador Número de Bit
Número de palabra
Nota: Los operadores nunca tienen
espacios entre caracteres
Operadores
Operador Designado Sintaxis Aplicación Ejemplo
Salida O On.n Condición
(On)
Salida O On.n Ejecución
(On)
Entrada I In.n Condición
(In)
Bandera F Fn.n.n Condición
(Fn.n)
Bandera F Fn.n.n Ejecución
(Fn.n)
Operadores
Operador Designado Sintaxis Aplicación Ejemplo
Timer T Tn Condición
Timer T Tn Ejecución
Contador C Cn Condición
Contador C Cn Ejecución
Ejemplos de Programación en
escalera
Ejemplo 1.
Combinación lógica AND
Realizar O0.0 = i0.0 AND i0.1
La salida O0.0 debe activarse si los dos
interruptores conectados a las entradas I0.0 y I0.1
están cerrados.
Ejemplos de Programación en
escalera
Ejemplo 2.
Combinación lógica OR
Realizar O0 = i0 OR i1
La salida O0.0 debe activarse si cualquiera de los
dos interruptores conectados a las entradas I0 o I1
están cerrados.
Ejemplos de Programación en
escalera
Ejemplo 3.
Combinación lógica AND de OR
Realizar O7 = (I0 OR I1) AND (I2 OR I3)
Ejemplos de Programación en
escalera
Ejemplo 4.
Combinación lógica OR de AND
Realizar O7 = (I0 AND I1) OR (I2 AND I3).
Ejemplos de Programación en
escalera
Ejemplo 5.
Combinación lógica XOR
Realizar O7 = I0 XOR I1
Ejemplos de Programación en
escalera
Ejemplo 6.
Auto retención
Un pulsador conectado a la entrada I0 debe
activar la salida O7; un segundo pulsador
conectado a la entrada I1 debe desactivarla
Ejemplos de Programación en
escalera
Ejemplo 7.
SET y RESET
Un pulsador conectado a la entrada I0 debe
activar la salida O7; un segundo pulsador,
conectado a la entrada I1, debe desactivarla
Ejemplos de Programación en
escalera
Ejemplo 8.
Activación por flacos
Activar las salidas O6 y O7, respectivamente con
los flancos ascendente y descendente de la
entrada I0.