Вы находитесь на странице: 1из 38

JAIME TAMIREZ BLANDON

Tecnólogo Mecánico I.T.P.B


INTRODUCCIÓN A LOS PLC 2

CONTENIDO.

AUTOMATAS PROGRAMABLES PLC

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

2. HISTORIA DE LOS AUTÓMATAS PROGRAMABLES. 8

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

4.2 LENGUAJES DE PROGRAMACIÓN DE PLC 22


4.2.1 Lenguaje de contactos. (ld). 22
4.2.2 Diagrama de funciones 22
4.2.3 Lenguaje por lista de instrucciones. (il). 23
4.2.4 Grafcet. (sfc). 24
4.2.5 Texto estructurado. 25
4.2.6 Programacion: c frente al esquema de contactos 26

5. OTROS ASPECTOS DE LOS PLC 28


5.1 EL P.C. INDUSTRIAL ( I.P.C. ) 28
5.2 REDES DE PLC Y SISTEMAS SUPERVISOR ESCLAVO. 28
5.2.1 Sistema supervisor esclavo 29
5.2.2 Como diseñar una red de plc 29
5.2.3 Introducción al scada 30
5.3 INTRODUCCIÓN AL ESTÁNDAR IEC 1131-3 31
5.4 EFECTO 2000 EN LOS PLC 32
5.6 LISTA DE FABRICANTES DE PLC 33

6. EJEMPLOS DE PROGRAMACIÓN DE PLC 34


6.1 PROGRAMA 3 SENSORES Y UNA SALIDA. 34
6.2 EJEMPLO DE UN PROGRAMA EN C. PROTOCOLO DE COMUNICACIÓN
ENTRE PC Y PLC SIMATIC S5. 36
6.3 PROGRAMACIÓN PARA SIMATIC S5. MÁQUINA EMPAQUETADORA 37
6.4 PROGRAMACIÓN PARA SIMATIC S5. MÁQUINA MEZCLADORA 38

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

La automatización es a realización de tareas y funciones mediante maquinas de funcionamiento


autónomo, sin la intervención directa del hombre. Así las maquinas realizan el trabajo mas duro,
menos humano como los grandes esfuerzos o la repetición sin variaciones.

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.

La bibliografía usada corresponde en un 60% a páginas de Internet especializadas en


automatización, electrónica y PLC y el otro 50% a información de las revistas de CEKIT empresa de
Pereira (Colombia) dedicada a la electrónica y computadores y el libro PLC de Hernán valencia,
experto de la universidad Pontificia Bolivariana de Medellín (Colombia.

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.

Para un control estadístico favor enviarme un E-mail informando sobre su uso a


mtorres@incolmotos.com.co

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.

1.1 QUE ES UN PLC.

PLC Programmer Logic Controller, Controlador lógico programable. Un PLC o Autómata


Programable es un equipo o máquina electrónica, programable, diseñado para controlar en tiempo
real y en ambiente industrial procesos secuenciales o combinacionales. Esta definición se está
quedando un poco desfasada, ya que han aparecido los micro-PLC, destinados a pequeñas
necesidades y al alcance de cualquier persona. También los PLC se han popularizado en uso de la
automatización de viviendas y edificios (Dogmótica). Los PLC modernos tienen incorporados,
además de las funciones de tratamiento lógico, funciones de calculo numérico, de regulación de
PID y de servocontrol

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.

Veamos un típico circuito de automatismos. Un arrancador Estrella/Triángulo con temporizador. La


figura 1 muestra como es la técnica cableada. Por una parte tenemos el circuito de fuerza, que
alimenta el motor, y por otra el circuito auxiliar o de mando, que realiza la maniobra de arranque de
dicho motor. La figura 2 muestra como se realiza el mismo montaje de forma programada, con un
PLC. El circuito de fuerza es exactamente el mismo que en la técnica cableada. Sin embargo, el de
mando será sustituido por un autómata programable, al cual se unen eléctricamente los pulsadores
y las bobinas de los contactores. La maniobra de arranque la realizara el programa que
previamente se ha transferido al autómata.

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

Figura 1. Arrancador Estrella/Triángulo con temporizador, técnica cableada.

Figura 2. Arrancador Estrella/Triángulo con temporizador, técnica programada

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

1.2. CAMPOS DE APLICACIÓN.

Se uso ha sido básicamente en proceso industriales, entre los que se pueden mencionar:

 Control de movimientos de maquinas (avanzar, retroceder, girar, doblar, manipular,…)


 En prensas, estampadoras, trefiladoras, embutidoras, maquinas de soldadura.
 Procesos de manufactura en línea como embotellado, embalaje, etiquetado, pesaje, dosificación.
 En procesos donde se requiera control lógico como ascensores, hornos, bombas, semáforos,
manejo de materiales, calderas, puente grúas, centrales eléctricas, lavadoras, control de motores,
subestaciones eléctricas, interruptores, protectores de alta tensión
 En equipos hidroneumaticos, hidráulicos y oleohidraulicos
 Para regulación en procesos fisicoquimicos cuando el PLC está configurado con bloques
funcionales PID.
 En general, los PLC se usan en procesos o maquinas que tengan espacio reducido, procesos de
producción periódicamente cambiantes, procesos secuenciales o combinacionales, Instalaciones
de procesos complejos.

Actualmente se usan para otras aplicaciones no industriales como la automatización de viviendas y


edificios (Dogmótica y edificios inteligentes), control de cultivos en invernaderos 1, control de abonos
en la tierra, entre otros.

1.3 VENTAJAS DE LOS PLC

 Usan lógica programada y no cableada.


 Menor tiempo de elaboración de proyectos.
 Posibilidad de hacer cambios fácilmente, según los desarrollos o cambios en las maquinas o
procesos y con un mínimo costo.
 Mínimo espacio de ocupación, menor peso y tamaño.
 Menor costo de mano de obra y de mantenimiento.
 Posibilidad de gobernar varias máquinas con el mismo autómata.
 Menor tiempo de puesta en funcionamiento.
 Si el autómata queda pequeño para el proceso industrial puede seguir siendo de utilidad en otras
máquinas o sistemas de producción.
 Facilita la implementación de sistemas de control distribuido y control jerarquizado.
 Sistema muy confiable.
 Es posible instalarlo en ambientes industriales y/o donde existan condiciones severas de
temperatura, ambiente, influencias eléctricas y químicas, humedad, vibración, ruidos, polvo,
contaminantes, cortes de energía.
 Permite la simulación de procesos, alarmas y fallas sin influir directamente en la maquina o
proceso.

1.4 INCONVENIENTES DE LOS PLC

 Adiestramiento de técnicos, tanto operativo como mantenimiento.


 Costo considerable del equipo pero mas bajo que la mayoría de los equipos de control.
 Poco conocimiento sobre el tema en el mercado Colombiano.
 Desplazamiento de mano de obra.
 Tecnología cerrada. Apenas se están estandarizando los diferentes fabricantes.

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

2. HISTORIA DE LOS AUTÓMATAS PROGRAMABLES.

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.

Las habilidades de comunicación comenzaron a aparecer en 1973 aproximadamente. El primer


sistema fue el bus Modicon (Modbus). El PLC podía ahora dialogar con otros PLC y en conjunto
podían estar aislados de las máquinas que controlaban. También podían enviar y recibir señales de
tensión variables, entrando en el mundo analógico. Desafortunadamente, la falta de un estándar
acompañado con un continuo cambio tecnológico ha hecho que la comunicación de PLC sea un
maremagnum de sistemas físicos y protocolos incompatibles entre si. No obstante fue una gran
década para los PLC.

En los 80 se produjo un intento de estandarización de las comunicaciones con el protocolo MAP


(Manufacturing Automation Protocol) de General Motor's. También fue un tiempo en el que se
redujeron las dimensiones del PLC y se pasó a programar con programación simbólica a través de
ordenadores personales en vez de los clásicos terminales de programación. Hoy día el PLC más
pequeño es del tamaño de un simple relé.

Los 90 han mostrado una gradual reducción en el número de nuevos protocolos, y en la


modernización de las capas físicas de los protocolos más populares que sobrevivieron a los 80. El
último estándar (IEC 1131-3) intenta unificar el sistema de programación de todos los PLC en 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 9

ú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.

Figura 3. Vistas de 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 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

Figura 4. Estructura básica de un PLC

3.1 FUENTE DE ALIMENTACIÓN.

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.

3.2.1 Funciones de la CPU.

 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.

3.2.2 Ciclo de trabajo del PLC. (Ciclo continuo)

INICIO

Verifica el estado de las entradas y las asocia LECTURA DEL ESTADO


las variables usadas en el proceso.
DE LA ENTRADAS

Ejecuta las ordenes de acuerdo al programa que


hay en memoria. Se hacen operaciones PROCESO Tiempo de
matemáticas y verificación de contadores y escaneo
temporizadores. Se toman decisiones y se
envían a los módulos de salida

La CPU ordena la actualización de los valores ACTUALIZACIÓN DE


de las salidas. On Off para salidas digitales o
voltaje variable para análogas
LAS SALIDAS

Verifica el tiempo de ejecución del programa, WATCHDOG


que no sobrepase del determinado.

Figura 5. Ciclo de trabajo de un PLC

3.2.3. Partes de la CPU.

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.

 Unidad de tratamiento. Efectúa los cálculos y las operaciones lógicas y aritméticas.

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

Figura 6. Esquema del procesador de un PLC Ciclo de trabajo de un PLC

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 temporal. Utilizada por los programas del sistema.

 Memoria de datos. Se almacenan el estado de las entradas y salidas, se almacenan registros,


estado de temporizadores y contadores que el usuario utiliza en sus programas. Esta área de
memoria, tanto del usuario, como de estado de E/S, es almacenada en general en memoria RAM,
por su facilidad de escritura, borrado y modificación en curso.

 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.

En general las memorias electrónicas se pueden clasificar así:

 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.

3.3 SISTEMA DE ENTRADAS / SALIDAS (E/S) O INTERFACES (I/O)


GRUPO LINUX. Puede reproducirse solo para fines académicos. Prohibida la comercialización parcial o total de este documento
INTRODUCCIÓN A LOS PLC 13

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 MEDIOS DE COMUNICACIÓN INTERNA


GRUPO LINUX. Puede reproducirse solo para fines académicos. Prohibida la comercialización parcial o total de este documento
INTRODUCCIÓN A LOS PLC 15

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.

3.5 TERMINAL DE PROGRAMACIÓN (PG)

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

Como consolas de programación pueden ser utilizadas

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:

 Herramientas más potentes, posibilidad de almacenamiento en soporte magnético, impresión,


transferencia de datos, monitorización mediante software SCADA, etc.

 Para cada caso el fabricante proporciona lo necesario, bien el equipo o el software/cables


adecuados. Cada equipo, dependiendo del modelo y fabricante, puede poseer una conexión a
uno o varios de los elementos anteriores. En el caso de los micro-plc se escoge la programación
por PC o por unidad de programación integrada en la propia CPU.

3.5.3 Consola de programación y/o paneles de operación OP. Es un terminal a modo de


ordenador que proporciona una forma más cómoda de realizar el programa de usuario y observar
parámetros internos del autómata.

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).

3.5.3.1 Ventajas de los OP.

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.

 El mayor inconveniente es la capacidad modular de expansión, muy reducida en la mayoría de


los modelos, habiendo casos en que la ampliación es imposible.

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.

 Ranuras de expansión (según modelo y fabricante).

 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.

3.7 ESTRUCTURA EXTERNA

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.

4.1 TIPOS DE COMANDOS EN LENGUAJES DE PROGRAMACIÓN

4.1.1 comandos lógicos

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.

OUT: conexión de una salida sobre una línea.


XOR: Operación or exclusiva, impide la simultaneidad
de las entradas (Conexión en paralelo) en estado 1

TMR: identificación de un temporizador. OUT TMR ó TMR


Hay tres tipos OUT TMR ó TMR TMR
AND TMR
AND NOT TMR.

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

AND TMR. AND NOT TMR.


TMR TMR

>ó < ó =. 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

OUT CNT ó CNT AND CNT.


CNT
C: conteo C
R: reposición R

AND NOT CNT OUT SFR ó SR. Identificación de un registro.


CNT D
C: reloj( “clock”)
R: reposición C
D: datos R

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

4.1.2 Comandos de servicio


NEXT ó STEP +. Comandos para saltar paso a paso en avance una línea de programa. Permite ver
el contenido de dicha línea.
GRUPO LINUX. Puede reproducirse solo para fines académicos. Prohibida la comercialización parcial o total de este documento
INTRODUCCIÓN A LOS PLC 20

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.

DEL. Comando para borrar instrucciones de programa en 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.

INS. Comando para insertar una instrucción de programa en la memoria.

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.

READ. Comando para pasar a la memoria el contenido de un “cassette” ó un disco. El selector de


funciones debe estar en LOAD.

WRITE. Comando para manejar periféricos como impresoras, “plotters” y otros.

CHECK. Comando para verificar la transferencia adecuada del programa en el manejo de


periféricos.

4.2 LENGUAJES DE PROGRAMACIÓN DE PLC


En los comienzos el lenguaje utilizado por excelencia fue el Ladder, un lenguaje que se corresponde
con la simbología de los planos eléctricos. Se simbolizan Contactos normalmente abiertos o
cerrados en serie o paralelos, conectado a salidas, relés (memoria interna), o temporizadores. En la
época actual casi todos los fabricantes mantienen el lenguaje ladder como forma de programación,
pero se ofrecen otras alternativas, como Statement List que es un lenguaje más parecido a un
lenguaje de alto nivel de P.C, con estructuras IF THEN, Load, Jump, etc. Hoy día se han
incorporados bloques de control como P.I.D y estructuras de control más complejas. El lenguaje
usado en un PLC depende del fabricante. En general, los siguientes tipos de lenguajes son los más
conocidos:

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

reducido su número).Se apoya el lenguaje Booleano. El PLC tiene un menú de símbolos


normalizados que se trasladan a la pantalla pro medio del teclado y se posicionan a voluntad en
cuatro direcciones y con la ayuda de cursores, formandose así el circuito deseado.

A cada dispositivo se le asigna un código de identificación o instrucción y luego se valida hasta


configurar el circuito totalmente. Es el que más similitudes tiene con el utilizado por un electricista
al elaborar cuadros de automatismos. Muchos autómatas incluyen módulos especiales de software
para poder programar gráficamente de esta forma.

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.

Entre las características más importantes figuran


 Bastante restrictivo, de forma que los problemas simples casi siempre se resuelven por sí solos.
 Ejecuta cada sección secuencialmente por cada ciclo. No existe posibilidad de no ejecutar
código.
 Puede ser aprendido con relativa rapidez.
 Diseñado para realizar una tarea particular, realizando la tarea correctamente.

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

se asocian a los símbolos y su combinación en un circuito eléctrico a contactos. La ecuación


boleana se puede obtener del diagrama de escalera (Según ANSI-NEMA). Cada instrucción consta
de una o dos líneas de programación es decir solo se permite una operación por línea (ejemplo
almacenar un valor en un registro) o en algunos casos dos operaciones. Este lenguaje es adecuado
para pequeñas aplicaciones y para optimizar partes de una aplicación.

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.

Cada línea, que contiene a una instrucción, tiene 3 tipos de información:

SETP CODE DATA


Numero de línea que se Es la operación a ejecutar. Varia de
incrementa automáticamente. acuerdo al fabricante. En general se da
De dos o más dígitos. Indica la en 2 formas:
posición de la instrucción en la Alfabético: abreviaturas de la expresión
memoria (En ingles normalmente). Es él más usado
internacionalmente.
Numérico: Poco usado. Se usan
números de uno o dos dígitos.

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.

SETP CODE DATA


(Con notas de ayuda)

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

Los elementos básicos del diagrama son etapas y transiciones.

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

Etapas. Acción a realizar. Se describe en un rectángulo conectado a la etapa, la cual no se realiza


hasta que este activada. Solo la etapa inicial no requiere una acción asociada. Cada etapa se
activa o desactiva una tras otra y están numeradas en orden desde 0 o 1. El sistema automatizado
esta completamente definido con el conjunto de etapas activas e inactivas.

10 ACCION H

Etapa # 10 Se realiza la acción 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().

42.6 Programación de controladores: C frente al esquema de contactos

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.

La razón de la popularidad del C es su naturaleza de propósito general. A causa de que el C no


toma en consideración el entorno o el tipo de tareas a procesar, los programas escritos en C
emplean los recursos más eficientemente que los sistemas basados en RLL. La mayoría de los PLC
proporcionan al usuario un número determinado de dispositivos tales como relés auxiliares,
registros, y temporizadores. Eventualmente, cada programador de RLL encuentra una situación
donde una asignación fija de variables no es aceptable para una aplicación. Por ejemplo, una
aplicación particular sólo debe requerir unos pocos relés y temporizadores, pero requiere más
registros que los posibles en una aplicación RLL.

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).

El lenguaje C puede solventar la mayoría de los problemas de programación y es soportado por la


gran mayoría de las plataformas de programación. Otra importante ventaja del C es su perspectiva
de ejecución. El RLL fue diseñado para simular operaciones inherentemente paralelas de hardware.
Las operaciones paralelas están acopladas mediante la ejecución secuencial de cada "escaló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 25

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.

Características del lenguaje C

 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

5. OTROS ASPECTOS DE LOS PLC

5.1 EL P.C. INDUSTRIAL ( I.P.C. )

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

5.2 REDES DE PLC Y SISTEMAS SUPERVISOR ESCLAVO

En la actualidad existen muchas propuestas para el control de ambiente, hogar e industria y se


requieren cumplir múltiples características:

 El usuario debe dar la mayor jerarquía al usuario.

 El sistema debe garantizar en un 99,999...% el éxito de los comandos manuales.

 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.

Un paquete SCADA debe estar en disposición de ofrecer las siguientes prestaciones:

• 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:

 Configuración. Permite al usuario definir el entorno de trabajo de su SCADA, adaptándolo a la


aplicación particular que se desea desarrollar.
 Interfaz gráfico del operador. Proporciona al operador las funciones de control y supervisión de
la planta. El proceso se representa mediante sinópticos gráficos almacenados en el ordenador de
proceso y generados desde el editor incorporado en el SCADA o importados desde otra
aplicación durante la configuración del paquete.
 Módulo de proceso. Ejecuta las acciones de mando preprogramadas a partir de los valores
actuales de variables leídas. La programación se realiza por medio de bloques de programa en
lenguaje de alto nivel (como C, Basic, etc.).
 Gestión y archivo de datos. Se encarga del almacenamiento y procesado ordenado de los
datos, de forma que otra aplicación o dispositivo pueda tener acceso a ellos.
 Comunicaciones. Se encarga de la transferencia de información entre la planta y la arquitectura
hardware que soporta el SCADA, y entre ésta y el resto de elementos informáticos de gestión.

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)

5.3 INTRODUCCIÓN AL ESTÁNDAR IEC 1131-33

La incremente complejidad en la programación de los autómatas programables requiere más que


nunca de la estandarización de la misma. Bajo la dirección del IEC el estándar IEC 1131-3 (IEC 65)
para la programación de PLC ha sido definida. Alcanzó el estado de Estándar Internacional en
Agosto de 1992. Los lenguajes gráficos y textuales definidos en el estándar son una fuerte base
para entornos de programación potentes en PLC. Con la idea de hacer el estándar adecuado para
un gran abanico de aplicaciones, cinco lenguajes han sido definidos en total:

 Gráfico secuencial de funciones (grafcet),


 Lista de instrucciones (LDI o AWL),
 Texto estructurado,
 Diagrama de flujo
 Diagrama de contactos

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:

Parte 1 - Información general (IS)


Parte 2 - Requerimientos de equipo y test (IS)
GRUPO LINUX. Puede reproducirse solo para fines académicos. Prohibida la comercialización parcial o total de este documento
INTRODUCCIÓN A LOS PLC 30

Parte 3 - Lenguajes de programación (IS)


Parte 4 - Líneas de guía al usuario (CD)
Parte 5 - Servicios de comunicación (CD)

Un documento técnico de tipo 2 proveerá una guía de 'pre-estandarización' para la implementación y


aplicación de los lenguajes de programación definidos en el estándar, incluyendo notas para
sistemas operativos, programas de interacción y requerimientos para entornos de programación.

5.4 Efecto 2000 en los PLC

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.

5.6 Lista de fabricantes de PLC

Fabricantes Autómatas Series


1. ABB Series Prontic T200/CS31
2. AEG-Modicon Serie Micro Serie Compact 984 Series 984-385/485/685/785
3. AFEISA Serie Mida

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

4. Alfa Laval Satt Con


5. Allen Bradley (Rokwell)Serie PLC-2 SLC-500, SLC-5/01 y /02 Series PLC-5 PLC-3
6. B&R Series MCPP
7. Digital Varias series
8. Eliop (casa española) Serie 3000
9. Fagor Automation PLC64 (controles 8025 y 8030) PLCI (8025, 8030 y 800)
PLC (control 8050)
10. Fuji Electric Series Micrex y Flex
11. GE-Fanuc Micro y Serie 90-20 Serie 90-30 Serie 90-70 Power Mater
12. Hitachi Series EC/ECL, H-Board y H200/250/252 Serie H302/702/2002
Hidic/Hizac
13. Izumi (IDEC) Series FA-2/2J/3S Micro 3
14. Keyence Keyence KZ-300
15. Klockner Moeller PS3, PS306, PS4-101/201/401 PS24 PS316 y Serie 620
16. Koyo Kostac PLC Direct
17. Landis & Gyr SAIA-PC
18. Matsushita Mewnet FP
19. Mitsubishi Series Melsec A/F/FX/Q
20. Omron SP10/16/20 C20/C20K/C28K/C40K/C60K
C20H/C28H/C40H/C60H CPM1/CPM1A SRM1 CQM1
C200H/C200HS/C200HALPHA
CVM1/CV500/CV1000/CV2000
22. Pilz Serie PSS-3x
23. Schleicher Promodul-F Promodul-U microLine
24. Sharp New Satellite
25. Shinko Selmart
26. Siemens AUT S5-90U S5-95U S5-95F S5-100U S5-101U
S5-115S5-135 S5-155 S7-200/300/400
Teleperm XP/SP LOGO!
27. Sprecher Series 190 y 290 Series 390, 490, 590 y 690
28. Square D Company Sy/max 50
29 Telemecanique TSX-07 (TSXNANO) TSX-17 TSX-37 (TSX MICRO)TSX-47
(Grupo Shneider) TSX-57 (TSX PREMIUN) TSX-67 TSX-87 TSX-107
TSX-MODICOM QUANTUN
TSX P47 TPMX P47 TPMX P67 TPMX P87 TPMX P107
30. Toshiba M20/M40, EX100
PROSEC EX/T Provisor
31. Toyota Toyopuc-pc2
32. Yaskawa Memcon-SC
33. Yokogawa Serie Factory ACE
34. Z-World Engineering PK2400 PK2300 PK2200 (Little Star) PK2100(Rugged
Giant) LP3100s BL1700 BL1600 (Little-G)
BL1500(Micro-G2) BL1400 (Micro-G)
BL1300(Protocol Switch) BL1200 (Little PLC) BL1100
(Little Giant)
BL1000 (Tiny Giant)

6. EJEMPLOS DE PROGRAMACIÓN EN PLC

6.1 PROGRAMA 3 SENSORES Y UNA SALIDA.

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

I0, I1, I2 son entradas.


O0 es la salida.
I0 I1 o0
[ ]-----------------------------------[ ]----------------( S )

I3 o0
[ ]-------------------------------------------------------( R )

El mismo programa escrito en statement list, se escribe

If I0 ´ Primer Entrada
AND I1 ´ Segunda entrada
THEN
SET O0 ´ Salida
IF I2 ´ Tercer entrada
THEN
RESET O0 ´ Salida

6.2 EJEMPLO DE UN PROGRAMA EN C. PROTOCOLO DE COMUNICACIÓN ENTRE PC Y


PLC SIMATIC S5.

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.

/* ********************** ON LINE ************** */


int online()
{
int dada,a;
buf_rx0=&buf_rx[0]; /* inicializa punteros */
buf_rx1=&buf_rx[0];

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;

6.3 PROGRAMACIÓN PARA SIMATIC S5. MÁQUINA EMPAQUETADORA

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.

PLANTEAMIENTO. El departamento de expedición de una fábrica de repuestos dispone de un


sistema de automatización para empacar en un cartón 100 engranajes de acero, tal y como muestra
la siguiente figura:

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:

- Interruptor de inicio del proceso: E32.0.


- Impulsos del brazo contador: E33.1.
- Barrera luminosa: E33.0.
- Interruptor "DES" de parada: E32.3.

- Motor de la cinta: A 32.0.


- Tapa del depósito (0 cerrado, 1 abierto): A32.1.
- Bocina: A32.2.

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

UN E 32.2 ¿Cartón en su lugar?


R M 64.0 Si en así, borrar marca (se explica su uso después)
R A 32.2 y desconectar bocina.
***
U E 32.0 Interruptor de inicio del proceso.
UN M 64.0 Cartón en su lugar.
S A 32.0 Si se cumple lo anterior conectar motor
S A 32.1 y abrir tapa del depósito.
GRUPO LINUX. Puede reproducirse solo para fines académicos. Prohibida la comercialización parcial o total de este documento
INTRODUCCIÓN A LOS PLC 35

***
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

U E 33.1 Vemos si se ha desbordado el contador.


R E 33.1 En caso afirmativo borramos el bit de diagnosis
R A 32.1 y cerramos la tapa.
BEB Aquí finalizamos si la causa ha sido el contaje hasta 100.
***
U E 33.0 Vemos si el cartón está en su sitio.
R E 33.0 En caso afirmativo borramos el bit de diagnosis.
S M 64.0 Activamos la marca (que se emplea en OB1).
R A 32.1 Cerramos la tapa.
R A 32.0 Desconectamos el motor.
S A 32.2 Conectamos la bocina.
BE Fin del módulo.

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:

0: KC ='DB1 OBI: IP 0 ; OBC: ';


12: KC ='CAP 100 ; SL1: SLN 1 ';

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.

6.4 PROGRAMACIÓN PARA SIMATIC S5. MÁQUINA MEZCLADORA

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:

El sistema consta de:

•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.

:OB1 #INICIO, PRIMER PESO Y CONTROL DE VALVULA A


UE 32.6 #Interruptor de inicio
UNA 32.2 #Válvula Vc cerrada
UNA 32.4 #Mezclador parado
UNA 32.5 #Motor para pivotar parado
UNM 64.0 #Control para ref.3 de la báscula que se da dos veces:
UE 32.2 #una porque es posición de reposo y otra al abrir Vc
SA 32.0 #Válvula Va abierta si se cumplen las anteriores condiciones
UE 32.0 #Bascula en ref.1, primer peso y cierre de Va
RA 32.0 #Vávula Va cerrada si se cumple la condición anterior
--- #CONTROL DE VALVULA B
UE 32.0 #Báscula en ref.1, abre a Vb
SA 32.1 #Vb abierta
UE 32.1 #Báscula en ref.2, segundo peso completado
RA 32.1 #Se cierra Vb y se abre Vc
--- #CONTROL DE MARCA (M64.0) PARA GOBERNAR REF.3
UE 32.0 #Usamos ref.1 como proceso intermedio, así cuando sé
SM 64.0 #vuelva a dar ref.3 (E32.2) no se abrirá Va
UE 32.4 #Usamos el fin de pivote a izquierda para borrar la marca
RM 64.0
GRUPO LINUX. Puede reproducirse solo para fines académicos. Prohibida la comercialización parcial o total de este documento
INTRODUCCIÓN A LOS PLC 37

--- #CONTADOR PARA DOS PAQUETES


UE 32.3 #Detector de paso de los paquetes (D)
ZRZ 1
NOP0
UE 32.0 #Se activa cuando se da la primera pesada
LKZ 2
SZ 1
NOP0 #Los 3 NOP0 siguientes solo sirven para programar en
NOP0 #la consola, no sirven para nada en AWL
NOP0
UZ 1
=A 32.3
--- #CONTROL DE VALVULA C
UNA 32.3 #La alimentación de paquetes debe haber terminado
UE 32.1 #Báscula en ref.2, es decir llena de sustancias A y B
SA 32.2 #Válvula Vc abierta
UM 64.0 #Báscula cae a estado de reposo y se da ref.3 por segunda
UE 32.2 #vez, pero al utilizar la marca Va no se abrirá
RA 32.2 #Cierre de Vc
--- #ARRANQUE DEL MOTOR MEZCLADOR
UE 32.2 #Comienza con mismas condicones de cierre de Vc
UM 64.0
UE 32.5 #con estas dos condicones ayudamos a la emulación,
UNE 32.4 #en la realidad se darán siempre
UNA 32.2 #Vc debe estar cerrada
SA 32.4 #Motor arrancado
UE 32.4 #Parada cuando se da fin de carrera a izquierda
UNE 32.5 #Lógicamente no se da fin de carrera a derecha, pero así
RA 32.4 #mejoramos la emulación
--- #MARCA PARA GOBERNAR EL TEMPORIZADOR
UM 64.0
UE 32.5 #Fin de carrera a derecha
UNA 32.4 #Pivote
SM 64.2 #Marca intermedia, será uno si se cumple lo anterior
UE 32.5 #Como estas condiciones se dan antes, usamos la marca
UNM 64.0 #M64.0 que cambia de estado en el fin de carrera a izquierda
RM 64.2
--- #TEMPORIZADOR DE 9 SEGUNDOS PARA PIVOTAR
UE 32.2 #Comienza la temporización con mismas condiciones
UM 64.0 #de cierre de Vc
LKT 900.0
SST 4
UNM 64.2 #Se para el pivote cuando se dé el fin de carrera a derecha
RT 4
NOP0
NOP0
UT 4
=A 32.5 #Transcurridos 9 segundos comenzamos a pivotar
BE
***
COMENTARIOS. En este ejemplo hemos vuelto a emplear marcas intermedias para distintos
propósitos. Ya hemos dicho que estas marcas son 0 al iniciar el autómata, ya que son del tipo no
remanente.

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

Вам также может понравиться