Академический Документы
Профессиональный Документы
Культура Документы
CONTENIDO.
Página
INTRODUCCIÓN 4
1 GENERALIDADES. 5
1.1 QUE ES UN PLC. 5
1.2 CAMPOS DE APLICACIÓN. 7
1.3 VENTAJAS DE LOS PLC 7
1.4 INCONVENIENTES DE LOS PLC 7
3. PARTES DE UN P.L.C. 10
3.1 FUENTE DE ALIMENTACIÓN. 10
3.2 CPU 10
3.2.1 Funciones de la CPU. 11
3.2.2 Ciclo de trabajo del PLC. 11
3.2.3 Partes de la CPU. 12
3.2.3.1 Procesador. 12
3.2.3.2 Memoria. 12
3.3 SISTEMA DE ENTRADAS / SALIDAS E/S O INTERFACES I/O 13
3.3.1 Tipos de señales del sistema E/S. 13
3.3.2. Modulo de entradas. 14
3.3.3. Modulo de salidas. 14
3.4 MEDIOS DE COMUNICACIÓN INTERNA 15
3.4.1. Bus de control. 15
3.4.2. Bus de datos. 15
3.4.3. Bus de dirección. 15
3.4.4. Bus de comunicación. 15
3.5 TERMINAL DE PROGRAMACIÓN (PG) 15
3.5.1 Unidad de programación portátil. 15
3.5.2 Computador. 16
3.5.3 Consola de programación y/o paneles de operación OP. 16
3.5.3.1 Ventajas de los OP. 16
3.5.3.2 Componentes de un OP 16
3.6 PERIFÉRICOS 17
3.7 ESTRUCTURA EXTERNA 18
Página
4. LENGUAJES DE PROGRAMACIÓN 19
4.1 TIPOS DE COMANDOS EN LENGUAJE DE PROGRAMACIÓN 19
4.1.1 Comandos lógicos. 19
4.1.2 Comandos de servicio. 21
GRUPO LINUX. Puede reproducirse solo para fines académicos. Prohibida la comercialización parcial o total de este documento
INTRODUCCIÓN A LOS PLC 3
INTRODUCCIÓN
GRUPO LINUX. Puede reproducirse solo para fines académicos. Prohibida la comercialización parcial o total de este documento
INTRODUCCIÓN A LOS PLC 4
Las primeras técnicas de automatización usaron la lógica cableada, con la electrónica moderna se
desarrollo de la lógica programada, con la cual los elementos del automatismo no se conectan
mediante cables sino mediante una sucesión de instrucciones introducidas por teclado y
almacenados en memoria de la maquina.
Los automatismos mas conocidos que trabajan con esta lógica son los computadores y los PLC. La
diferencia entre ambos es que el primero emplea lenguajes informáticos y se usan para múltiples
tareas, el PLC usa lenguajes específicos y se usa básicamente para procesos industriales.
El presente trabajo es una introducción a los PLC (Controladores lógicos programables) o autómatas
programables. Se presentan los elementos básicos para entender que es, como funcionan, de que
se componen, para que sirven y los lenguajes de programación usados.
Muchas de las direcciones de Internet fueron suministradas por los miembros de la Comunidad
Virtual Automática y comunicaciones industriales http://www.ictnet.es/esp/comunidades/automat/
La información de este trabajo puede ser copiada o reproducida por cualquier persona o institución
pero solo para fines académicos. No se permite el uso con fines comerciales.
MILTHON TORRES C.
Medellín - Colombia
GRUPO LINUX. Puede reproducirse solo para fines académicos. Prohibida la comercialización parcial o total de este documento
INTRODUCCIÓN A LOS PLC 5
1. GENERALIDADES.
Otras definiciones son: “ Robot cuyo funcionamiento se desarrolla paso a paso y sin necesidad de
intervención humana”. “ Ordenador lógico electrónico que procesa información o datos de entrada y
produce una salida, previamente convertida a una tensión y que fue sumada o multiplicada”
Hasta no hace mucho tiempo el control de procesos industriales se venia haciendo de forma
cableada por medio de contactores y relés. Al operario que se encontraba a cargo de este tipo de
instalaciones, se le exigía tener altos conocimientos técnicos para poder realizarlas y posteriormente
mantenerlas. Además cualquier variación en el proceso suponía modificar físicamente gran parte de
las conexiones de los montajes, siendo necesario para ello un gran esfuerzo técnico y un mayor
desembolso económico.
En la actualidad no se puede entender un proceso complejo de alto nivel desarrollado por técnicas
cableadas. El computador y los autómatas programables ha intervenido de forma considerable para
que este tipo de instalaciones se hayan visto sustituidas por otras controladas de forma programada.
El Autómata Programable Industrial (API) nació como solución al control de circuitos complejos de
automatización. Por lo tanto se puede decir que un API no es más que un aparato electrónico que
sustituye los circuitos auxiliares o de mando de los sistemas automáticos. A él se conectan los
captadores (finales de carrera, pulsadores,...) por una parte, y los actuadores (bobinas de
contactores, lámparas, pequeños receptores,...) por otra.
GRUPO LINUX. Puede reproducirse solo para fines académicos. Prohibida la comercialización parcial o total de este documento
INTRODUCCIÓN A LOS PLC 6
GRUPO LINUX. Puede reproducirse solo para fines académicos. Prohibida la comercialización parcial o total de este documento
INTRODUCCIÓN A LOS PLC 7
Se uso ha sido básicamente en proceso industriales, entre los que se pueden mencionar:
GRUPO LINUX. Puede reproducirse solo para fines académicos. Prohibida la comercialización parcial o total de este documento
INTRODUCCIÓN A LOS PLC 8
Los PLC se introdujeron por primera vez en la industria en 1960 aproximadamente. La razón
principal de tal hecho fue la necesidad de eliminar el gran costo que se producía ante cualquier
necesidad de cambio, mantenimiento, parada inesperada de los complejos sistemas de control
basado en relés y contactores. Se buscó utilizar sistemas basados en electrónica de
semiconductores , que soportara ambientes industriales y que puedan ser adaptables a distintas
aplicaciones.
Los primeros fueron usados en General Motors , empleaban memoria de ferrita y un procesador ,
logrado por un grupo de circuitos integrados interconectados , su aplicación se centra a procesos
típicamente secuenciales. Bedford Associates propuso algo denominado Controlador Digital
Modular (MODICON, MOdular DIgital CONtroler) a un gran fabricante de automóviles. Otras
compañías propusieron a la vez esquemas basados en ordenador, uno de los cuales estaba basado
en el PDP-8. El MODICON 084 resultó ser el primer PLC del mundo en ser producido
comercialmente.
El problema de los relés era que cuando los requerimientos de producción cambiaban también lo
hacía el sistema de control. Esto comenzó a resultar bastante caro cuando los cambios fueron
frecuentes. Dado que los relés son dispositivos mecánicos y poseen una vida limitada se requería
una estricta manutención planificada. Por otra parte, a veces se debían realizar conexiones entre
cientos o miles de relés, lo que implicaba un enorme esfuerzo de diseño y mantenimiento.
Los "nuevos controladores" debían ser fácilmente programables por ingenieros de planta o personal
de mantenimiento. El tiempo de vida debía ser largo y los cambios en el programa tenían que
realizarse de forma sencilla. Finalmente se imponía que trabajaran sin problemas en entornos
industriales adversos. La solución fue el empleo de una técnica de programación familiar y
reemplazar los relés mecánicos por relés de estado sólido.
A mediados de los 70 las tecnologías dominantes de los PLC eran máquinas de estado secuenciales
y CPU basadas en desplazamiento de bit. Los AMD 2901 y 2903 fueron muy populares en el
Modicon y PLC A-B. Los microprocesadores convencionales cedieron la potencia necesaria para
resolver de forma rápida y completa la lógica de los pequeños PLC. Por cada modelo de
microprocesador había un modelo de PLC basado en el mismo. No obstante, el 2903 fue de los
más utilizados.
único estándar internacional. Ahora disponemos de PLC que pueden ser programados en
diagramas de bloques, lista de instrucciones, C y texto estructurado al mismo tiempo. Se han
desarrollan PLC con operaciones de punto flotante , mucho más rápidos , con mayores posibilidades
de almacenar datos , mayor disponibilidad de memoria de programa .
Los PC están comenzando a reemplazar al PLC en algunas aplicaciones, incluso la compañía que
introdujo el Modicon 084 ha cambiado al control basado en PC. Por lo cual, no sería de extrañar que
en un futuro no muy lejano el PLC desaparezca frente al cada vez más potente PC, debido a las
posibilidades que éste último puede proporcionar.
GRUPO LINUX. Puede reproducirse solo para fines académicos. Prohibida la comercialización parcial o total de este documento
INTRODUCCIÓN A LOS PLC 10
3. PARTES DE UN PLC
La estructura interna básica de cualquier autómata esta representada en los siguientes diagramas
PROGRAMADOR
FUENTE PERIFERICOS
MODULO
MODULODE
DE CPU
CPU MODULO
MODULODEDE
ENTRADAS
ENTRADAS SALIDAS
SALIDAS
SENSORES
SENSORES MAQUINA
MAQUINAOO ACTUADORES
ACTUADORES
PROCESO
PROCESO
Es la encargada de convertir la tensión de la red, 220v c.a., a baja tensión de c.c. normalmente 24 v.
Siendo esta la tensión de trabajo en los circuitos electrónicos que forma el Autómata.
3.2 CPU
La Unidad Central de Procesos es el cerebro del sistema. Se encarga de recibir las ordenes, del
operario por medio de la consola de programación y el modulo de entradas. Posteriormente las
procesa para enviar respuestas al módulo de salidas. En general en la CPU se realizan las tareas
de control, vigilancia del funcionamiento correcto del equipo, intercambio continuo de información
con los demás integrantes del equipo. Para ello disponemos de diversas zonas de memoria,
registros, e instrucciones de programa, adicionalmente, en determinados modelos más avanzados,
podemos disponer de funciones ya integradas en la CPU, como reguladores PID, control de
posición, etc.
Vigilar que el tiempo de ejecución del programa de usuario no excede el tiempo de escaneo. A
esta función se le suele denominar Watchdog (perro guardián). El tiempo de escaneo scan time
es determinado por el lapso que hay entre la ejecución por parte del PLC del paso A, ir hasta el
paso C y luego llegar hasta A, es decir un ciclo completo. Entre mas pequeño sea el tiempo de
escaneo mayor será la velocidad de respuesta del PLC. (Ver figura 5)
Ejecutar el programa de usuario.
Crear una imagen de las entradas, ya que el programa de usuario no debe acceder directamente
a dichas entradas.
GRUPO LINUX. Puede reproducirse solo para fines académicos. Prohibida la comercialización parcial o total de este documento
INTRODUCCIÓN A LOS PLC 11
Renovar el estado de las salidas en función de la imagen de las mismas obtenida al final del ciclo
de ejecución del programa de usuario.
Chequeo del sistema.
Operaciones lógicas y matemáticas entre los datos.
Comparación, trasferencia y memorización de datos.
En equipos mas avanzados, tratamiento y manejo de textos.
INICIO
3.2.3.1 Procesador. En general está formado por varios circuitos integrados, entre ellos se
encuentra un microprocesador y memoria (solo la memoria del sistema). En los mini-PLC, se aloja
parte del sistema E/S, junto al CPU, en otros PLC más grandes , se distingue entre módulos E/S y
Módulos CPU. El procesador se divide básicamente en dos partes, de acuerdo a sus funciones.
Unidad de comando. Rige el comportamiento de todos los componentes, da las ordenes y los
comandos para la ejecución de las operaciones, decodifica o interpreta y ejecuta las
instrucciones.
GRUPO LINUX. Puede reproducirse solo para fines académicos. Prohibida la comercialización parcial o total de este documento
INTRODUCCIÓN A LOS PLC 12
BUS DE DATOS
UNIDAD DE TRATAMIENTO
CP
UNIDAD DE COMANDO BUS DE DIRECCIONES
U
BUS DE CONTROL
3.2.3.2 Memoria. Dispositivos que contienen en forma binaria las instrucciones del programa y los
datos a usar en la ejecución de las mismas. Se distinguen distintos tipos de memoria:
Memoria del sistema. Donde se almacenan en fabrica los programas firmware o sistema
operativo del PLC. Esta área se almacena en un chip de EPROM
Memoria principal. Utilizada para almacenar el programa del usuario. Esta área se almacenada
hasta hace unos años en memoria RAM, con soporte de baterías, para que no se borre cuando
se desenergiza, pero desde hace unos años, se utiliza en general memoria EEPROM que no
requiere la batería.
ROM (Read Only memory). Memoria de solo lectura. El usuario tiene acceso a la información
pero no la puede alterar. No son volátiles (No se borran con los cortes de energía). Son
programadas por los fabricantes y definen las capacidades y posibilidades del equipo
PROM (Programable Read Only Memory). Memoria ROM programable por el usuario pero no
borrables por este. Después de introducir los datos solo puede leerse.
EPROM (Erasable Programable Read Only Memory). Memoria almacenada en fábrica, por lo
que solo podrá ser leída, pues para borrarla se tendría que exponer a ultravioleta y tendría que
ser grabada con un dispositivo especial.
EEPROM (Erasable two Programable Read Only Memory). Memorias PROM borrables
eléctricamente y reprogramables
EAPROM. Memoria alterable eléctricamente, pero solo puede borrarse un sector de la misma
RAM (Random Acces Memory). Es la memoria de usuario, este puede almacenar los programas
y datos. Son de acceso aleatorio. Se puede leer, escribir, entrar, sacar y modificar datos. Es
volátil y por eso requiere sostenerse con batería.
Normalmente los sistemas de control se implementan utilizando un PLC que a través de sensores,
obtiene la información necesaria de las maquinas y mediante actuadores, logra el comportamiento
programado o deseado de la máquina. La información recibida del proceso, recibe el nombre de
entradas, mientras que las acciones sobre la máquina se denominan salidas. Tanto las entradas
como las salidas están aisladas de la CPU según el tipo de autómata que utilicemos, normalmente
se suelen emplear optoacopladores en las entradas y relés/optoacopladores en las salidas. Las
señales pueden ser de tipo digital o analógico principalmente. En ambos casos tenemos unos
rangos de tensión característicos, los cuales se encuentran en las hojas de características del
fabricante.
Lo normal de un PLC es que posean E/S serie del tipo o protocolo RS-232 / RS-422.
3.3.1 Tipos de señales del sistema E/S. En general la función del sistema E/S, es adaptar la
tensión de trabajo de los dispositivos externos a la de los elementos electrónicos del PLC, logrando
una separación eléctrica .
Entradas / Salidas binarias o digitales. Son capaces de captar o generar señales, que tienen
únicamente dos estados diferenciados, por ejemplo ausencia o presencia de un nivel de tensión.
Como ejemplo de entradas binarias encontramos microswitches, sensores inductivos, etc . En los
que tenemos dos estados, detección o no, cerrado o no, son también llamadas on/off, o también
discretas. Estas E/S se manejan a nivel de bit dentro del programa de usuario.
Entradas / Salidas Analógicas. Son capaces de captar o generar más de dos estados de una
señal , como el microprocesador trabaja con señales binarias, deberá existir en este módulo un
conversor Analógico/Digital, que convierta la señal de entrada en varias señales binarias o un
conversor Digital / Analógico que convierta varias señales binarias en la señal analógica de
salida. En general la señal se convierte en 10, 11 o 12 señales binarias, dependiendo del
conversor utilizado, lo cual es un parámetro importante en un modulo analógico, pues no define la
precisión en la lectura o la exactitud en la salida analógica. Estas señales se manejan a nivel de
byte o palabra (8/16 bits) dentro del programa de usuario.
Entradas/Salidas Remotas. Para sistemas de control grandes no es posible ubicar todas los
módulos de entradas/salidas en el mismo rack, se hace necesario expandir existen dos
posibilidades, un enlace paralelo mediante un cable multiconductor, lo cual no es muy
recomendable ya que al extender mucho el cable, se producen caídas de tensión y además se
pueden inducir interferencias, y la otra opción es establecer una conexión de las entradas/salidas
remotas, mediante un modulo de interconexión serial del tipo field bus o bus de campo, el que
permite conectar el PLC con el sistema de entrada/salida remoto , mediante únicamente un par
de hilos, logrando una descentralización del sistema de entrada/salida que puede llegar al orden
de los kilómetros .
3.3.2. Modulo de entradas. Es la información obtenida del proceso. A este módulo se unen
eléctricamente los captadores o sensores (Interruptores, finales de carrera, pulsadores, Sensores de
temperatura, microswitches, caudalímetros, sensores inductivos , capacitivos , magnéticos , ópticos ,
medidores de peso o interferencias , entre otros). La información recibida en él, es enviada a la
CPU para ser procesada de acuerdo la programación residente. Este modulo posee un circuito
electrónico de interface que evita el rebote de los contactos, acopla los niveles de tensión y
acondiciona las señales para reducir el efecto del ruido e interferencia.
GRUPO LINUX. Puede reproducirse solo para fines académicos. Prohibida la comercialización parcial o total de este documento
INTRODUCCIÓN A LOS PLC 14
Se pueden diferenciar dos tipos de captadores conectables al módulo de entradas: los Pasivos y
los Activos.
Captadores Pasivos. Son aquellos que cambian su estado lógico, activado no activado, por
medio de una acción mecánica. Estos son los Interruptores, pulsadores, finales de carrera, etc.
Captadores Activos. Son dispositivos electrónicos que necesitan ser alimentados por una
tensión para que varíen su estado lógico. Este es el caso de los diferentes tipos de detectores
(Inductivos, Capacitivos, Fotoeléctricos). Muchos de estos aparatos pueden ser alimentados por
la propia fuente de alimentación del autómata.
El que conoce circuitos de automatismos industriales realizados por contactores, sabrá que puede
utilizar, como captadores, contactos eléctricamente abiertos o eléctricamente cerrados dependiendo
de su función en el circuito.
Como ejemplo podemos ver un simple arrancador paro/marcha (Figura 5). En él se distingue el
contacto usado como pulsador de marcha que es normalmente abierto y el usado como pulsador de
parada que es normalmente cerrado. Sin embargo en circuitos automatizados por autómatas, los
captadores son generalmente abiertos. El mismo arrancador paro/marcha realizado con un
autómata es el de la figura 6. En él se ve que ambos pulsadores y el relé térmico auxiliar son
abiertos.
3.3.3 Modulo de salidas. Acciones finales sobre las máquinas. El modulo de salidas del autómata
es el encargado de activar y desactivar los actuadores es decir se encargan de aportar potencia a la
señal de salida, corresponden a válvulas por ejemplo neumáticas, hidráulicas o de otro tipo, del tipo
convencional o de cierre variable, es decir proporcionales, variadores de frecuencia, relés, bobinas
de contactores, dosificadores, lámparas, motores pequeños, etc. La información enviada por las
entradas a la CPU, una vez procesada, se envía al módulo de salidas para que estas sean
activadas y a la vez los actuadores que en ellas están conectados. Este modulo posee un circuito
electrónico de interface que ayuda aislar los circuitos lógicos de los de carga, acoplan la salida de
bajo nivel a una de alto nivel y son optoacopladores (Con separación galvánica)
Según el tipo de proceso a controlar por el autómata, podemos utilizar diferentes módulos de
salidas, existen tres tipo bien diferenciados a relés, a triac y a transistores.
Módulos de salidas a relés. Son usados en circuitos de corriente continua y alterna. Están
basados en la conmutación mecánica, por la bobina del relé, de un contacto eléctrico
normalmente abierto .
Módulos de salidas a Triacs. Se utilizan en circuitos de corriente continua y corriente alterna
que necesiten maniobras de conmutación muy rápidas.
Módulos de salidas a Transistores a colector abierto. El uso del este tipo de módulos es
exclusivo de los circuitos de c.c. Igualmente que en los de Triacs, es utilizado en circuitos que
necesiten maniobras de conexión / desconexión muy rápidas.
La forma de conectar los actuadores a los módulos de salidas, dependerá del tipo de módulo
utilizado.
3.4.1 Bus de control. Conexión mediante la cual la CPU envía ordenes o instrucciones a los
demás elementos del sistema y recibe de ellos una señal de respuesta.
3.4.2 Bus de datos. Conexión física mediante la cual se trasmiten datos entre el procesador, la
memoria, las E/S y el programador.
3.4.3 Bus de dirección. Conexión por donde van las señales que constituyen una dirección, es
decir la localización en la memoria la E/S donde se leen o escriben los datos
3.4.4 Bus de comunicación. Sirve para la comunicación con otros periféricos o sistemas
computarizados.
El terminal o consola de programación es el que permite comunicar al operario con el sistema. Las
funciones básicas de éste son las siguientes:
Transferencia y modificación de programas.
Verificación de la programación.
Información del funcionamiento de los procesos y estados y funcionamiento de los E/S
Control de operación
3.5.1 Unidad de programación portátil. Suele ser en forma de calculadora. Es la forma más
simple de programar el autómata, y se suele reservar para pequeñas modificaciones del programa o
la lectura de datos en el lugar de colocación del autómata.
3.5.2 Computador (PC). Es el modo más potente y empleado en la actualidad. Permite programar
desde un ordenador personal estándar, con todo lo que ello supone:
Los OP (Operator Panel) son paneles de operación que facilitan el acceso visual del operario al
sistema de automatización, englobándose dentro del famoso "Human Machine Interface" (Interfaz
Humano con la Maquinaria).
GRUPO LINUX. Puede reproducirse solo para fines académicos. Prohibida la comercialización parcial o total de este documento
INTRODUCCIÓN A LOS PLC 16
Interfaz de usuario amigable, acceso rápido y sencillo a los datos del sistema.
Supervisión y control del proceso, visualizando solo lo que interesa.
Visualización del proceso (sólo en OP gráficos).
Modificación de parámetros y órdenes (sólo en algunos casos).
posibilidad de varios idiomas (según el modelo)
controlar un proceso o subproceso de forma autónoma.
software de programación integrado.
Especialización de funciones (el 8050 de Fagor está especializado para fresadoras).
En muchos casos se dispone de conexión a redes industriales.
Posibilidad de programar todo directamente desde el propio teclado del display, lo que hace
innecesarios en la mayoría de los casos el uso de unidades de programación o transferencias de
programas desde un PC.
El conjunto es más económico que si se compra por separado y se evita el cableado entre los
aparatos.
No se necesita una programación del PLC (salvo interacción con éste).
No se emplea memoria de usuario.
No se necesitan interfaces con el programa de aplicación.
No consume tiempo de CPU en el PLC (salvo interacción con éste).
Cuando la CPU del PLC está parada es posible establecer comunicación entre el OP y el PLC.
3.5.3.2 Componentes de un OP
CPU (normalmente un procesador 486 o 386). Esta se encarga de la lectura del teclado, lectura
de datos por el puerto correspondiente de comunicación (serie, bus de campo, etc), el
procesamiento de los datos recogidos, el envío de datos por el puerto de comunicación (si es
necesario) y la presentación de los datos en pantalla.
Como es lógico la CPU posee su propia memoria RAM y ROM para poder almacenar el programa
de tratamiento de datos y presentación (sistema operativo del OP) y para almacenar los datos
convenientes. De esta forma se evita consumir tiempo de CPU y memoria de otro sistema externo
(como un PLC).
Teclado. El teclado puede ser configurable por el usuario, y puede ser más o menos completo
según el tipo de OP. La flexibilidad del teclado incluye serigrafía, etiquetado e incluso el nombre
de la compañía. Por supuesto es posible emplear pantallas táctiles, suprimiendo el teclado.
Pantalla. En cuanto al tipo de pantalla hay varias posibilidades, sólo texto (el número de filas y
columnas depende del modelo), de gráfico monocromo y de gráfico en color.
Puerto(s) de comunicación.
Accesorios. Los OP permiten también una serie de accesorios según el modelo y fabricante,
entre los cuales figuran, las baterías para funcionamiento en caso de fallo de alimentación,
comunicación serie (RS-485, etc), Comunicación con bus de campo (Profibus, etc), configuración
mediante consola externa o PC (tanto por cable directo como a través del puerto de
comunicaciones).
GRUPO LINUX. Puede reproducirse solo para fines académicos. Prohibida la comercialización parcial o total de este documento
INTRODUCCIÓN A LOS PLC 17
3.6 PERIFÉRICOS
El autómata programable, en la mayoría de los casos, puede ser ampliable. Las ampliaciones
abarcan muchas posibilidades, que van desde las redes internas (LAN, etc.), módulos auxiliares de
E/S, memoria adicional... hasta la conexión con otros autómatas del mismo modelo.
Cada fabricante facilita las posibilidades de ampliación de sus modelos, los cuales pueden variar
incluso entre modelos de la misma serie.
Los periféricos no intervienen directamente en el funcionamiento del autómata, pero sin embargo
facilitan la labor del operario, ellos sirven para documentar los programas, para hacer supervisión al
proceso, entre otras funciones. Los más utilizados son: cassettes, Impresoras, cartuchos de
memoria EEPROM, Visualizadores, monitores y paneles de operación OP, unidades de disco,
telefax, led, teclados.
Todos los autómatas programables, poseen una de las siguientes estructuras constructivas
Compacta. Se usa para automatismos lógicos con equipos pequeños y donde las E/S son fijas.
En un solo bloque están todos lo elementos.
Modular. Se usa en PLC industriales. Posee módulos desmontables y es posible expandir las
entradas y salida. Existen dos configuraciones, la estructura americana que separa las E/S del
resto del autómata y la estructura europea donde cada módulo es una función (fuente de
alimentación, CPU, E/S).
Exteriormente nos encontraremos con cajas que contienen una de estas estructuras, las cuales
poseen indicadores y conectores en función del modelo y fabricante.
Los micro-autómatas suelen venir sin caja, en formato kit, ya que su empleo no es determinado y se
suele incluir dentro de un conjunto más grande de control o dentro de la misma maquinaria que se
debe controlar.
GRUPO LINUX. Puede reproducirse solo para fines académicos. Prohibida la comercialización parcial o total de este documento
INTRODUCCIÓN A LOS PLC 18
4. LENGUAJES DE PROGRAMACIÓN
Cuando surgieron los autómatas programables, lo hicieron con la necesidad de sustituir a los
enormes cuadros de maniobra construidos con contactores y relés. Por lo tanto, la comunicación
hombre-máquina debería ser similar a la utilizada hasta ese momento. El lenguaje usado, debería
ser interpretado, con facilidad, por los mismos técnicos electricistas que anteriormente estaban en
contacto con la instalación. Estos lenguajes han evolucionado, en los últimos tiempos, de tal forma
que algunos de ellos ya no tienen nada que ver con el típico plano eléctrico a relés.
Con el programa de usuario se logra la adaptación de las diferentes condiciones del proceso. Este
programa depende del fabricante y se escribe en memoria RAM no volátil y luego se puede grabar
en memoria EPROM. En general todos los PLC tienen unos comandos típicos para el manejo del
programa de usuario y se pueden dividir en dos grupos, comandos lógicos y comandos de servicio.
STR. Inicio de una rama con un contacto NO STR NOT. Inicio de una rama con un contacto NC.
AND. Conexión en serie con un contacto NO. AND NOT. Conexión en serie de un contacto NC
OR. Conexión en paralelo de un contacto NO. OR NOT. Conexión en paralelo de un contacto NC.
GRUPO LINUX. Puede reproducirse solo para fines académicos. Prohibida la comercialización parcial o total de este documento
INTRODUCCIÓN A LOS PLC 19
>ó < ó =. Comparación de los estados lógicos entre CNT. Identificación de un contador. Hay 3 tipos
dos variables
OUT CNT ó CNT.
AND CNT.
AND NOT CNT
AND STR. Conexión en serie de dos ramas. OR STR. Conexión en paralelo de dos ramas.
MCS. (“Master Control set”) derivación de un circuito MCR. (“Master Control Reset”) fin de un grupo de
para el control de un grupo salidas controladas por un MCS.
MCS
MCR
Tanto los comandos MCS como el MCR permiten el ahorro de memoria al hacer la programación. con estas
funciones se pueden conectar varios órganos receptores que inician la lógica desde una sola línea
NOTA: cada símbolo del programa debe estar referenciado por medio de direcciones, que equivalen
a una posición d memoria que representan las entradas o salidas (Físicas o lógicas). Dentro de las
direcciones generalmente se incluye el numero del modulo en el que se encuentra instalado. Las
salidas se identifican con una O y las entradas con I
CONTACTO 02
Ejemplo O.8.02
SALIDA MODULO 8
PRV ó STEP -. Comando para saltar paso a paso en retroceso una línea de programa. Permite ver
el contenido de dicha línea.
MON. Comando para monitorear ó supervisar los estados lógicos de las variables de una entrada ó
salida, temporizadores, contadores, registros, etc., en ejecución del programa (modo RUN).
SCH ó SRC. Comando para encontrar rápidamente una instrucción de programa ó para saber en
que paso del programa está una información específica.
CLR. Comando para limpiar ó clarificar el contenido de una línea en el “display”, no sirve para borrar
la memoria.
ENT. Comando para entrar y validar una instrucción de programa en la memoria. Con la validación
se pasa a la siguiente instrucción.
SET Y, RST ó RES. Comandos para forzar el estado lógico de entradas, salidas y relés internos.
SHF. Comando con el cual se habilita el teclado que define una doble información.
STEP SET. Instrucción para buscar información en una línea de instrucción deseada, es una función
salto, la poseen algunos PLC.
F. comando especial para hacer funciones aritméticas, no todos los PLC los traen.
R. comando para introducir constantes ó parámetros en los registros de datos. Al igual que el
comando anterior, no todos los PLC los poseen.
4.2.1 Lenguaje a contactos. (LD). El diagrama de contactos (ladder diagram LD) es un lenguaje
que utiliza un juego estandarizado de símbolos de programación. Los símbolos usados están
codificados bajo el código ASCII, en el estándar IEC los símbolos han sido racionalizados (se ha
GRUPO LINUX. Puede reproducirse solo para fines académicos. Prohibida la comercialización parcial o total de este documento
INTRODUCCIÓN A LOS PLC 21
4.2.2 Diagrama de funciones. El diagrama de funciones (function block diagram o FBD) o Blokes
funcionales es un lenguaje gráfico que permite programar elementos que aparecen como bloques
para ser cableados entre sí de forma análoga al esquema de un circuito. FBD es adecuado para
muchas aplicaciones que involucren el flujo de información o datos entre componentes de control.
Estos bloques son estándar y ejecutan algoritmos como reguladores PID. El estándar IEC asegura
que los FBD son definidos empleando una metodología estándar. Hay controles empleando
parámetros externos, mientras que los algoritmos internos permanecen ocultos empleando
Programación Orientada a Objetos.
El esquema de contactos (RLL o FBD) fue diseñado para proporcionar un software más flexible de
simulación que pudiera reemplazar los contactores, temporizadores, y contadores de forma análoga
a los sistemas de control de 1960 a 1970. RLL no sólo ha sido un éxito, también ha superado sus
modestos objetivos. RLL es una herramienta potente cuando es utilizada en aplicaciones que
realizan tareas específicas, no obstante no puede soportar los múltiples retos de los actuales PLC.
Para ello se han añadido características que soporten aplicaciones más complicadas, pero estas
mejoras son torpes, lentas, y son muy difíciles o casi imposibles de emplear. RLL simplemente no
está preparado para los problemas más complicados de la industria actual.
4.2.3 Lenguaje por lista de instrucciones. (IL). O Statement List o Lenguaje Booleano. La lista
de instrucciones (IL o AWL) es un lenguaje de bajo nivel, similar al lenguaje ensamblador. Este
lenguaje es una agrupación de instrucciones literales que definen la ecuación Booleana de cada
órgano receptor; en otras palabras consiste en elaborar una lista de instrucciones o nemónicos que
GRUPO LINUX. Puede reproducirse solo para fines académicos. Prohibida la comercialización parcial o total de este documento
INTRODUCCIÓN A LOS PLC 22
En los autómatas de gama baja, es el único modo de programación. También decir, que este tipo de
lenguaje es, en algunos los casos, la forma más rápida de programación e incluso la más potente.
Algunos fabricantes adicionan notas sobre lo que realiza cada instrucción. En la mayoría de los
programas cada instrucción se valida con otra instrucción especifica o por teclado. Por ejemplo
usando ENT o ENTER.
4.2.4 GRAFCET. (SFC). O Gráfico secuencial de funciones (SFC o Grafcet) o Gráfico de Orden
Etapa Transición. Es un lenguaje gráfico que proporciona una representación en forma de diagrama
de las secuencias del programa, especialmente diseñado para resolver problemas de automatismos
secuenciales, se apoya en el Booleano pero no es necesario conocer la totalidad de las ecuaciones.
Soporta selecciones alternativas de secuencia y secuencias paralelas.
Se desarrolla con el diagrama funcional Grafcet o gráfico. Al igual que con el diagrama escalera los
PLC que trabajan con este sistema están dotados con un menú de símbolos
GRUPO LINUX. Puede reproducirse solo para fines académicos. Prohibida la comercialización parcial o total de este documento
INTRODUCCIÓN A LOS PLC 23
10 ACCION H
Transición. Paso de una etapa a otra. Esta asociado a una condición lógica. Indica la posibilidad
de evolución entre una etapa y otra. Una etapa no se activa hasta que la anterior este activada y
cumpla la condición. No puede haber mas de una etapa activa (excepto la condición de
simultaneidad) sobre la misma línea de flujo. La secuencia se realiza de arriba hacia abajo. La
transición proporciona RESET de los actuadores activos en la etapa anterior y da SET a los
actuadores de la siguiente.
X Transición
8
X: condición lógica.
Direccionamiento Condicional. Es una elección condicional entre varias secuencias posibles que
puede presentar un automatismo lógico en función de datos del operador o del proceso
8 6 8
Como consecuencia de que las aplicaciones industriales funcionan en forma de pasos, el SFC es la
forma lógica de especificar y programar él más alto nivel de un programa para PLC.
Este lenguaje resulta enormemente sencillo de interpretar por operarios sin conocimientos de
automatismos eléctricos. Muchos de los autómatas que existen en el mercado permiten la
programación en GRAFCET, tanto en modo gráfico o como por lista de instrucciones. También
podemos utilizarlo para resolver problemas de automatización de forma teórica y posteriormente
convertirlo a plano de contactos.
GRUPO LINUX. Puede reproducirse solo para fines académicos. Prohibida la comercialización parcial o total de este documento
INTRODUCCIÓN A LOS PLC 24
4.2.5 Texto estructurado. El texto estructurado (structured text o ST) es un lenguaje de alto nivel
estructurado por bloques que posee una sintaxis parecida al PASCAL. El ST puede ser empleado
para realizar rápidamente sentencias complejas que manejen variables con un amplio rango de
diferentes tipos de datos, incluyendo valores analógicos y digitales. También se especifica tipos de
datos para el manejo de horas, fechas y temporizaciones, algo importante en procesos industriales.
El lenguaje posee soporte para bucles iterantes como REPEAR UNTIL, ejecuciones condicionales
empleando sentencias IF-THEN-ELSE y funciones como SQRT() y SIN().
El mundo de los controladores programables se ha vuelto más sofisticado. No basta ahora que una
máquina pueda realizar la misma serie de acciones. Los sistemas, ahora, deben no sólo ser
capaces de realizar tareas repetitivas, también deben optimizar los procedimientos para maximizar
la producción mientras mantienen estadísticas básicas (un requerimiento de calidad asegurado).
Más aún, muchos sistemas deben interactuar con uno o varios dispositivos adicionales con
interfaces que son ajenos al PLC. Algunos sistemas también deben ser capaces de soportar
comunicación con una red industrial que proporcione supervisión con información actualizada.
El lenguaje C, sin embargo, fue diseñado para ser un lenguaje de programación de propósito
general. El C no sólo domina el desarrollo de aplicaciones personales y corporativas para
computadoras, también soporta el desarrollo de sistemas modulares. De esta forma, C es empleado
para programa desde procesadores de texto y bases de datos a microondas y televisores. En
esencia, el C está en todas partes.
El aspecto más grave de este escenario es que un PLC casi siempre tiene la necesidad de memoria,
pero asigna memoria a innecesarios relés auxiliares y temporizadores. Cuando se programa en C la
asignación de memoria no es un problema, debido a que el programador tiene el control de la
asignación de recursos disponibles (hasta donde los recursos lleguen).
dentro de cada tarea en todo ciclo de ejecución. Esto presenta el problema que a mayor
complejidad de las tareas los ciclos de ejecución se hacen más lentos, llegando a superar los 10
milisegundos, lo que es inapropiado en la mayoría de las aplicaciones.
El C, no obstante, posee un contador de programa que comienza en la función "main" (la primera
función ejecutada en un programa en C). El contador programado trabaja a lo largo del código,
dirigido por sentencias de control de flujo escritas por el programador. Un procesador ejecutando un
programa en C sólo ejecuta una secuencia de instrucciones a la vez.
Mientras una secuencia de instrucciones es ejecutada, el resto del programa espera a la ejecución
del próximo juegos de instrucciones. Esta ejecución simple permite al programador decidir que
partes de la aplicación necesitan una mayor atención y cuales deben ser ejecutadas
periódicamente. Sin este control, manejar eventos de alta velocidad sería imposible.
Programación flexible que permite resolver unos problemas de diversas formas. Con frecuencia
un programador novato puede sentirse abrumado con las posibilidades.
Habilidad de enfocar la ejecución en una pequeña sección de código. Esto es importante para
aplicaciones donde ciertas funciones no son realizadas en su totalidad o son ignoradas.
Menos intuitivo para los principiantes y un poco más complicado de aprender que RLL.
Un juego básico de instrucciones puede ser aprendido con rapidez, pero los aspectos más
complicados del lenguaje pueden ser bastante confusos incluso para los programadores con
experiencia moderada.
Los autómatas más conocidos por emplear el lenguaje C como lenguaje de programación son los
de la firma Zworld Engineering 2
GRUPO LINUX. Puede reproducirse solo para fines académicos. Prohibida la comercialización parcial o total de este documento
INTRODUCCIÓN A LOS PLC 26
Durante muchos años ocupó un área en la que los PLC no podían cubrir, realizando tareas de
visualización complicada, almacenamiento de datos, manejo de redes novell, puertos de impresora,
etc. Hasta ahora ambos productos cubrían un área distinta, pero en los últimos años el I.P.C. se ha
desarrollado de tal forma que hace pensar, que este integrará la técnica del PLC, he incluso lo
sustituirá. El tradicional lenguaje de programación del PLC ha sido introducido en el I.P.C., por lo
que no solo se puede programar en Pascal, C, Basic como ha sido de costumbre, si no también en
Ladder, Statement List, etc. Es posible además acceder a todas las capacidades del PC, transmisión
de los datos de producción al computador maestro , intercambio y manejo de datos en la red , todo
esto integrado en el hardware y software del I.P.C. En cuanto a tamaño el I.P.C., podrá ser tan
pequeño como el P.C. La potencialidad de la técnica del PC. supera ampliamente a cualquier
aplicación de PLC, pudiendo utilizarse el hardware de Ethernet para las E/S remotas, ya
desarrollado en los computadores.
Por ejemplo el minicontrolador de FESTO, es el mini PLC, Mide 13 x 8 x 6 cm. Posee 12 entradas
binarias y 8 salidas binarias, está desarrollado bajo un microprocesador de computadora de
escritorio (80186), y basado en el sistema operativo D.O.S., lo que permite programarlo en cualquier
lenguaje de programación, aunque se dispone de programas que corren bajo D.O.S. que desarrollan
las tareas clásicas de los sistemas operativos de los PLC.
En este caso se podría decir que es un I.P.C., dado que está construido en base a un
microprocesador de p.c. y basado en sistema operativo DOS. , aunque no posee las prestaciones
clásicas de un I.P.C., y si posee las prestaciones habituales de un PLC
El sistema no debe ser capaz de producir daño al usuario bajo ninguna circunstancia, sea por
falla mecánica, electrónica o de cualquier otra índole.
El control debe ser distribuido, con controles locales que cumplan la totalidad de las premisas
restantes.
Las tazas de falla deben ser semejantes a los sistemas industriales y/o espaciales.
El cambio de su funcionalidad y operación del sistema debe ser totalmente reprogramable, sin el
requerimiento de recableados
Ninguna de las operaciones de reprogramacion debe requerir que el usuario tome contacto con
los circuitos de potencia o energía.
Una falla en los circuitos de potencia no debe incidir sobre el control o comando del sistema,
dejando inactivos o inoperantes partes de este.
GRUPO LINUX. Puede reproducirse solo para fines académicos. Prohibida la comercialización parcial o total de este documento
INTRODUCCIÓN A LOS PLC 27
En sistemas de control grandes, o incluso en sistemas no tan grandes pero que el PLC esta, de
uno o más sensores, a distancias considerables, la instalación de E/S, se hace complicada, y
cuando se tienen tendidos muy largos, existen caídas de tensión importantes, y se aumenta el
riesgo de interferencias.
5.2.1 Sistema Supervisor Esclavo. Es así que nace la idea de colocar un modulo esclavo remoto
y centralizar los sensores ahí en la zona, y transmitir la información de las E/S, mediante una
conexión serial. La interfase serial utilizada, en general es la RS485, que mide tensión diferencial,
siendo apropiado para transmitir en líneas largas y medios ruidosos, para la transmisión de los datos
mediante esta interfase, se utiliza un protocolo, cada fabricante tiene en general su protocolo,
(aunque hay algunos protocolos abiertos). A cada PLC esclavo se le asigna una dirección en la red
de PLC. El PLC maestro envía un mensaje a un esclavo, introduciendo en el mensaje la dirección
del esclavo. Este mensaje llega a todos los esclavos, el esclavo que posee la dirección especificada
en el mensaje, puede responder transmitiendo un mensaje al PLC maestro, dentro de un tiempo
determinado si el esclavo no responde, el mensaje es enviado nuevamente, en el mensaje puede
haber información redundante (dependiendo del protocolo), para el chequeo de errores en la
transmisión. El medio físico utilizado para la transmisión de datos es en general cable coaxial
mallado y en algunos casos torneado, aunque depende de la interfase y del protocolo utilizado. Por
ejemplo AS interface (Protocolo abierto), utiliza cable plano sin malla para transportar tanto la
energía como los datos por el mismo par de conductores , dado que utiliza codificación manchester .
La topología del cableado puede ser del tipo bus o estrella, la estructura estrella es mucho más
costosa pero a su vez más segura. En una topología bus una falla en un transeiver puede dejar
inoperante toda la red. Para cumplir con las premisas anteriormente listadas, con una estructura
bus, se deben estar embutidos y aquellos que definitivamente no lo estén deben poseer cableados
con malla de protección. De lo contrario un simple roedor puede ser nuestro mas temible enemigo
Los elementos escogidos deben ser de alta confiabilidad, robustos y fáciles de intercambiar o
mantener.
Los sistemas mas adecuados para la implementación de este tipo de controles son los PLC SCMH y
SCMT. La serie H puede ser utilizada para controles del tipo on/off o sistemas de censado con
entrada digital. La serie T posee canales de entrada/salida analógicos, lo cual permite la
implementación de sistemas con control proporcional, además, posee opcional para reloj de tiempo
real con lo cual se pueden implementar controlados por tiempo.
5.2.2 Como diseñar una red de PLC con topología bus con una PC que actúe como host.
Una red 485 solo requiere de un par trenzado con malla, para su instalación. En la PC debe
instalarse una tarjeta PC485 que le permita acceder a la aplicación de PC a todos los recursos de
los PLC conectados a la red.
En el host puede implementarse una aplicación Cyber Tools con interfase de usuario que le permita
generar eventos, controles o recibir comandos generados por otras aplicaciones u otras
computadoras conectadas a una red windows.
Las herramientas Cyber Tools poseen opcionales para SQL Server y DDE, con lo cual el usuario
puede implementar un server de control y adquisición de datos, que se encargue de realizar las
consultas a la base de datos , disparar procesos a través de la base de datos o dejar datos para que
el usuario los pueda levantar desde cualquier otra aplicación de la red , desde una terminal remota o
un server de internet o intranet.
GRUPO LINUX. Puede reproducirse solo para fines académicos. Prohibida la comercialización parcial o total de este documento
INTRODUCCIÓN A LOS PLC 28
La instalación de esta red no requiere de grandes cuidados mas que el respetar la polaridad en el
conexionado. Los PLC SCMH y SCMT pueden operar en forma esclava o remota. En forma
esclava el PLC pasiva todos sus programas internos y se limita a recibir comandos de red
generando el accionamiento de salida, la cual permanecerá estable, o transmitiendo la respuesta
con las entradas de salida. En el modo remoto, el PLC ejecutara los programas Ladder que posee
cargados en su memoria EEPROM, si recibe un mensaje por el puerto de comunicaciones realiza el
accionamiento, el cual en los casos de accionamientos de salida estos permanecen estables
durante un periodo de escaneo, tiempo suficiente para generar un latcheo de un estado o para
disparar un proceso ladder. Este modo permitirá que el PLC pueda tener la inteligencia local
suficiente para realizar todos los controles, y a su vez una interconexión a red que le permita activar
programas, generar eventos o setear timmer y contadores.
El PLC deberá contener un programa que posea toda la lógica del funcionamiento de la instalación
local. por ejemplo, cuando toquemos un pulsador este sea detectado por una entrada del PLC y se
active una salida determinada, otro tipo de ejemplo, que cuando toquemos un pulsador se active un
motor de enrollar de una persiana, que este avance una cantidad de pasos y se detenga
Algunos controles independientes, como ser controles remotos, y pequeños sistemas que posean
poca complejidad también pueden ser implementados con microcomputadoras BS. Hay algunas
notas publicadas al respecto en la sección de notas de aplicación.
5.2.3 Introducción a SCADA. (Supervisory Control And Data Acquisition), adquisición de datos y
supervisión de control. Es una aplicación software especialmente diseñada para funcionar sobre PC
de control de producción, proporcionando comunicación con los dispositivos de campo
(controladores autónomos, PLC, etc.) y controlando el proceso de forma automática desde la
pantalla del ordenador. Además, provee de toda la información que se genera en el proceso
productivo a diversos usuarios, tanto del mismo nivel como de otros supervisores dentro de la
empresa: control de calidad, supervisión, mantenimiento, etc. Los programas necesarios, y en su
caso el hardware adicional que se necesite, se denomina en general sistema SCADA.
• Posibilidad de crear paneles de alarma, que exigen la presencia del operador para reconocer una
parada o situación de alarma, con registro de incidencias.
• Generación de históricos de señal de planta, que pueden ser volcados para su proceso sobre
una hoja de cálculo.
• Ejecución de programas, que modifican la ley de control, o incluso el programa total sobre el
autómata, bajo ciertas condiciones.
• Posibilidad de programación numérica, que permite realizar cálculos aritméticos de elevada
resolución sobre la CPU del ordenador, y no sobre la del autómata, menos especializado, etc.
Con ellas, se pueden desarrollar aplicaciones basadas en el PC, con captura de datos, análisis de
señales, presentaciones en pantalla, envío de resultados a disco e impresora, etc.
Además, todas estas acciones se llevan a cabo mediante un paquete de funciones que incluye
zonas de programación en un lenguaje de uso general (como C, Pascal, o Basic), lo cual confiere
una potencia muy elevada y una gran versatilidad.
Un SCADA debe cumplir varios objetivos para que su instalación sea perfectamente aprovechada:
• Deben ser sistemas de arquitectura abierta, capaces de crecer o adaptarse según las
necesidades cambiantes de la empresa.
GRUPO LINUX. Puede reproducirse solo para fines académicos. Prohibida la comercialización parcial o total de este documento
INTRODUCCIÓN A LOS PLC 29
• Deben comunicarse con total facilidad y de forma transparente al usuario con el equipo de planta
y con el resto de la empresa (redes locales y de gestión).
• Deben ser programas sencillos de instalar, sin excesivas exigencias de hardware, y fáciles de
utilizar, con interfaces amigables con el usuario.
Los módulos o bloques software que permiten las actividades de adquisición, supervisión y control
son los siguientes:
Algunos de los programas SCADA, o que incluyen SCADA como parte de ellos, son: CIRNET
(CIRCUTOR S.A.), SCADA InTouch (LOGITEK), WinCC (Siemens), Coros LS-B/Win (Siemens),
SYSMAC SCS (Omron), FIXDMACS (Omron-Intellution)
El estándar también define una nueva arquitectura para la organización e interacción de tareas con
PLC. Una tarea controla la ejecución de un programa ejecutándolo periódicamente o en respuesta a
un específico evento. Para optimizar los recursos del controlador, una aplicación puede ser
fragmentada en un número de pequeños programas concretos. Cada programa está bajo el control
de una tarea que se ejecuta a la velocidad que requiera la E/S asociada.
El estándar de programación es la tercera parte del estándar 1131 para autómatas programables,
cuyas partes generales son:
El "efecto 2000" o YGK que hará que muchos computadores funcionen incorrectamente debido a la
falta de previsión en el diseño de los mismos y del software que se emplea actualmente.
El problema reside en que muchos ordenadores y dispositivos almacenan el año mediante las dos
últimas cifras (ej. 99) y cuando llegue el 1 de Enero del año 2000 creerán estar en el 1900 y no en
el 2000. En esta misma tónica se ha extendido la inquietud al resto de los sectores que tengan que
ver con dispositivos electrónicos dotados de microprocesadores o microcontroladores. Es el caso de
los PLC, de los cuales vamos a tratar las dos posibles áreas de efecto: hardware y software.
¿Qué PLC soportarán el cambio internamente? Todos los fabricantes han tomado medidas. En el
caso de Siemens ha dotado de sus modelos S7 de 4 cifras para almacenar el año actual, con lo que
se garantiza las fechas correctas hasta el año 9999, en pocas palabras depende del fabricante. Lo
más simple es consultar los manuales del PLC y ver cuantos dígitos emplea para almacenar el año.
Si se disponemos de esta información se puede consultar las páginas Web del fabricante o
consultar directamente a él para que nos proporcione dicha información.
¿Qué aplicaciones se verán afectadas? Sólo los programas que empleen la fecha del PLC se
pueden ver afectados por el cambio. Un programa que maneje una línea de producción y no
emplee la fecha del PLC para alguna tarea no se verá afectado, ni hoy ni nunca. Sin embargo las
aplicaciones que empleen la fecha para alguna función pueden verse afectadas. Es el caso de los
programas que se basen en el reloj del sistema para almacenar alguna información. Supongamos
un programa que lleva el control de una embotelladora y que al final del día almacene los datos del
número de botellas que ha manejado. Si los datos los almacena en una tabla fijándose en el año,
mes y día llegarán al 1 de Enero del 2000 y realizará la tabla de forma incorrecta (siempre que el
PLC emplee dos cifras para el año). Por tanto debemos consultar con el autor del programa del
PLC y pedirle que indique si empleó el reloj del PLC para alguna función. Si es así se debe pedir
que sé reescriba el programa para remediarlo o solicitar soluciones al fabricante del PLC.
GRUPO LINUX. Puede reproducirse solo para fines académicos. Prohibida la comercialización parcial o total de este documento
INTRODUCCIÓN A LOS PLC 31
Programa que sensa dos entradas al mismo tiempo (I0 e I1 ) , se encienda una salida y al sensar
una tercer entrada (I2) esta se apague. Este programa escrito en Ladder, se escribe:
GRUPO LINUX. Puede reproducirse solo para fines académicos. Prohibida la comercialización parcial o total de este documento
INTRODUCCIÓN A LOS PLC 32
I3 o0
[ ]-------------------------------------------------------( R )
If I0 ´ Primer Entrada
AND I1 ´ Segunda entrada
THEN
SET O0 ´ Salida
IF I2 ´ Tercer entrada
THEN
RESET O0 ´ Salida
Esta es una rutina efectuada en lenguaje C donde se puede deducir la comunicación que efectúa el
PLC con el PC cuando en forma ON-line. No se puede transmitir datos, sirve solo comprobar que sé
esta en línea con el PLC.
trans(0x02); /*transmite */
dada = llegn(2); /*lee dos byts*/
if (dada == -1) /* si rutina retorna -1 error*/
return -2;
if (buf_lec[0] != 0x10) /*comprobar si 1§ byte = 10*/
return -1;
if (buf_lec[1] != 0x6) /*compronar si 2 byte = 6*/
return -1;
trans(0x18); /* trnamite valor 18 */
dada = llegn(1);
if (dada == -1)
return -2;
if (buf_lec[0] != 0x02)
return -1;
trans(0x10);
trans(0x06);
dada = llegn(3);
if (dada == -1)
return -2;
if (buf_lec[0] !=0x16)
return -1;
if (buf_lec[1] !=0x10)
return -1;
if (buf_lec[2] != 0x3)
GRUPO LINUX. Puede reproducirse solo para fines académicos. Prohibida la comercialización parcial o total de este documento
INTRODUCCIÓN A LOS PLC 33
return -1;
trans(0x10);
trans(0x06);
trans(0x10);
trans(0x04);
dada = llegn(3);
if (dada == -1 )
return -2;
if (buf_lec[0] != 0x10)
return -1;
if (buf_lec[1] != 0x06)
return -1;
if (buf_lec[2] != 0x02)
return -1;
trans(0x10);
trans(0x06);
dada =llegd();
if (dada == -1)
return -2;
if (dada < 46)
return -1;
for(a=0;a<49;a++)
buf_ol[a]=buf_lec[a];
trans(0x10);
trans(0x06);
dada = llegn(1);
if (dada == -1)
return -2;
if (buf_lec[0] != 0x02)
return -1;
trans(0x10);
trans(0x06);
dada = llegn(3);
if (dada == -1)
return -2;
if (buf_lec[0] != 0x12)
return -1;
if (buf_lec[1] != 0x10)
return -1;
if (buf_lec[2] != 0x03)
return -1;
trans (0x10);
trans (0x06);
return 1;
Los ejemplos aquí expuestos están preparados para Simatic S5-90U, pero son totalmente válidos
para toda la familia S5 debido a la estructura similar que comparten.
GRUPO LINUX. Puede reproducirse solo para fines académicos. Prohibida la comercialización parcial o total de este documento
INTRODUCCIÓN A LOS PLC 34
El sistema consta de un depósito con tapa, un brazo contador, una cinta transportadora motorizada,
una barrera luminosa, una bocina y un autómata S5-90U/95U.
Cuando el operador conecta el proceso se abre la tapa del depósito y los engranajes van cayendo
uno tras otro sobre la cinta. Una pieza precisa 30 segundos para alcanzar el cartón situado al final
de la cinta.
Cada vez que un engranaje pasa por la tapa del depósito, el brazo contador emite un pulso. Cuando
el contador alcanza el valor de 100 se cerrará de forma inmediata la tapa del depósito, parando el
motor de la cinta transportadora a los 30 segundos (para que todas las piezas lleguen al final de la
cinta y a la caja).
Cuando haya que empacar otro cartón, el operador arrancará de nuevo el proceso. El operador
puede utilizar un interruptor (denominado DES) para detener en cualquier momento el proceso.
Una barrera luminosa situada al final de la cinta garantiza el correcto posicionamiento del cartón
durante la llegada de los engranajes. La barrera genera una señal en cuanto se quite de su posición
correcta a la caja, lo que debe parar inmediatamente el proceso (cerrando la tapa y parando el
motor) y generar una señal audible mediante la bocina. En cuanto sé situe correctamente la caja se
continuará el proceso de forma automática.
SOLUCION. En primer lugar se deben asignar las entradas y salidas del autómata a los elementos
que tiene el proceso:
Recordemos que las asignación de entradas y salidas no es única y que puede hacerse de muchas
formas. En este caso se ha utilizado la entrada de contaje E33.1 y la de alarma 33.0.
Ahora se debe hacer un esquema del proceso, bien empleando diagramas de flujo o mediante
Grafcet, aunque para este ejemplo no lo hacemos.
Tras realizar el esquema pasamos a programar en AWL, lo cual nos lleva al siguiente programa, el
cual hemos separado en segmentos para que se observe como se implementa cada parte del
proceso:
MODULO OB1
***
U A 32.1 Si la tapa está cerrada,
LKT 300.1 entonces arracamos retardo a la desconexión,
SA T 1 con el temporizador 1.
***
UN T 1 Vemos si ha transcurrido el tiempo,
R A 32.0 tras lo cual desconectamos el motor.
***
U E 32.3 Comprobamos el interruptor de parada "DES".
R A 32.1 Si está conectado "DES" cerramos la tapa
R A 32.0 y desconectamos el motor.
BE Fin del módulo.
MODULO OB3
COMENTARIOS. Como se habrá observado, se ha empleado la marca 64.0 para un fin muy
concreto. En este caso se emplea para saber si se ha producido un error debido a que el cartón no
está bien situado. Recordemos que al iniciar el autómata se borran todas las marcas, con lo que
podemos afirmar con total seguridad que al comienzo del proceso la marca 64.0 es 0 (incluso se ha
escogido dicha marca del grupo de no remanentes para reafirmar este hecho).
Otro asunto que hay que mencionar es que hay que programar el módulo DB1 para activar las
entradas 33.0 y 33.1, además de situar el contador a 100. Esto se realiza de la siguiente forma:
De esta forma nos aseguramos que el programa salte al módulo OB3 cuando reciba un pulso por la
entrada E33.0 o 100 pulsos por la entrada E33.1.
PLANTEAMIENTO. Una empresa posee una máquina mezcladora de dos productos. Dicha mezcla
se produce añadiendo una cantidad definida de cada producto y dos paquetes de una sustancia
para dar consistencia a la mezcla. La máquina se muestra en la figura siguiente:
•Una báscula, con 3 salidas para cada referencia de peso: ref.1, ref.2, y ref.3. •Un detector de paso
de paquetes (D). •Un detector de fin de carrera a izquierda (P0) y otro a la derecha (P1). •Un
GRUPO LINUX. Puede reproducirse solo para fines académicos. Prohibida la comercialización parcial o total de este documento
INTRODUCCIÓN A LOS PLC 36
interruptor de inicio/fin (P). •Tres válvulas (Va para el producto A, Vb para el producto B, y Vc para la
báscula. •Un motor de la cinta para suministrar paquetes (Mt). •Un motor del mezclador (Mm). •Un
motor para pivotar (Mp).
Al accionar el interruptor de inicio, la primera acción que se realizará será la pesada del producto A.
Una vez concluida ésta, se realizan tres acciones simultáneas, que son: cierre de Va, pesada del
producto B y la alimentación de dos paquetes. Cuando estas acciones han terminado podemos
pasar al vaciado de la báscula. Una vez vaciada ejecutamos dos acciones simultáneas, que son el
cierre de Vc y la puesta en marcha del mezclador; comienza la acción de pivotar del mezclador,
mientras gira a la izquierda (sentido horario) el motor del mezclador sigue funcionando y cuando gire
a la derecha parará el mezclador. Una vez llegado a este punto, si el interruptor de inicio está
activado se repetirá el proceso si no se para la máquina.
SOLUCION. En primer lugar asignamos las entradas y salidas del autómata a los elementos que
tiene el proceso:
- ref.1: E32.0
- ref.2: E32.1
- ref.3: E32.2
- D: E32.3
- P0: E32.4
- P1: E32.5
- P: E32.6
- Va: A32.0
- Vb: A32.1
- Vc: A32.2
- Mt: A32.3
- Mm: A32.4
- Mp: A32.5
El siguiente paso debe ser la formación del Grafcet/diagrama del proceso, del cual obtenemos el
programa AWL correspondiente.
GRUPO LINUX. Puede reproducirse solo para fines académicos. Prohibida la comercialización parcial o total de este documento
INTRODUCCIÓN A LOS PLC 38
Si deseamos convertir el ejemplo a AWL para el autómata hay que hacer los cambios pertinentes,
además de emplear las unidades más bajas posibles en los temporizadores para reducir el error.
GRUPO LINUX. Puede reproducirse solo para fines académicos. Prohibida la comercialización parcial o total de este documento