teoria plc

159
Universidad De Oriente Núcleo de Anzoátegui Escuela de Ingeniería y Ciencias Aplicadas Departamento de Electricidad Controlador Lógico Programable (PLC). Curso Tutorial. Realizado por: Prof. Danilo A. Navarro G. Trabajo Presentado Como Requisito Parcial Para Ascender a la Categoría de Profesor Agregado. Puerto La Cruz, Julio de 2001. * *

Upload: oskr-velazkez

Post on 13-Aug-2015

35 views

Category:

Documents


6 download

TRANSCRIPT

Page 1: Teoria Plc

Universidad De Oriente

Núcleo de Anzoátegui

Escuela de Ingeniería y Ciencias Aplicadas

Departamento de Electricidad

Controlador Lógico Programable (PLC).

Curso Tutorial.

Realizado por:

Prof. Danilo A. Navarro G.

Trabajo Presentado Como Requisito Parcial Para

Ascender a la Categoría de Profesor Agregado.

Puerto La Cruz, Julio de 2001.

* *

Page 2: Teoria Plc

Prof. Danilo Navarro. Universidad De Oriente. Julio 2001. i

CONTENIDO

Introducción.

1. El comienzo.

1.1 ¿Qué es un PLC? Pag. 1

1.2 Historia de los PLCs. Pag. 3

1.3 Características sobresalientes de los PLCs Pag. 5

1.4 Ventajas de los PLCs sobre la lógica a relés. Pag. 8

1.5 Listado de principales fabricantes. Pag. 9

2. Operación de los PLCs.

2.1 Estructura interna. Pag. 12

2.2 Como trabajan los PLCs. Pag. 16

2.3 Tiempo de respuesta de los PLCs y sus efectos. Pag. 18

3. Conexionado e interfaces de entrada / salida.

3.1Tipos de Entrada / Salida a los PLCs. Pag. 22

3.2 Entradas al PLC Pag. 24

3.3 Entradas DC. Pag. 26

3.4 Conexionado de entradas DC. Pag. 29

3.4.1 Conexionado de entradas tipo NPN. Pag. 30

3.4.2 Conexionado de entradas tipo PNP Pag. 31

3.4.3 Conexionado de sensores tipo 2 hilos. Pag. 32

3.5 Entradas AC. Pag. 34

3.6 Conexionado de entradas AC Pag. 36

3.8 Salidas del PLC. Pag. 37

3.9 Salidas a relé. Pag. 39

3.10 Salidas a transistores Pag. 41

4. Creación de programas.

4.1 Sustitución de relés. Pag. 44

4.2 lenguajes de programación. Pag. 48

4.3 Instrucciones básicas. Pag. 51

4.4 Registros de direcciones en los PLCs. Pag. 55

4.5 Un ejemplo de control de nivel. Pag. 57

Page 3: Teoria Plc

CONTENIDO

Prof. Danilo Navarro. Universidad De Oriente. Julio 2001. ii

4.6 Ejecución del programa de control de nivel. Pag. 59

5. Principales instrucciones.

5.1 Álgebra Booleana. Pag. 62

5.2 Instrucciones memorizadas. Pag. 67

5.3 Contadores. Pag. 69

5.4 Temporizadores. Pag. 73

5.5 Precisión de los temporizadores. Pag. 78

5.6 Instrucción Un-Scan. Pag. 81

5.7 Control maestro. Pag. 84

5.8 Registros de desplazamiento. Pag. 86

5.9 Acceso y manipulación de datos. Pag. 92

5.10 Instrucciones matemáticas. Pag. 96

6. Lenguaje y equipos para la programación.

6.1 Lenguaje escalera (LADDER). Pag. 101

6.1.1 Principios de programación. Pag. 103

6.1.2 Ejemplo de control de estacionamiento. Pag. 104

6.2 Lista de instrucciones (AWL, BOOLEANO, Nemónicos). Pag. 111

6.3 Gráficos funcionales de secuencia (SFC, GRAFCET). Pag. 120

6.3.1 Reglas para la construcción del GRAFCET Pag. 124

6.3.2 Ejemplo Pag. 128

6.4 Programación con texto estructurado. Pag. 134

6.5 Bloques funcionales. Pag. 140

6.6 Equipos para la programación. Pag. 142

7. Comunicaciones.

7.1 Comunicación RS-232 (Hardware). Pag. 144

7.2 Comunicación RS-232 (Software). Pag. 146

7.3 Usando RS-232 dentro de la programación escalera Pag. 152

Conclusiones. Pag. 155

Bibliografía. Pag. 156

Anexos

Page 4: Teoria Plc

Prof. Danilo Navarro. Universidad De Oriente. Julio 2001. iii

INTRODUCCION

os sistemas automatizados han evolucionado desde el control a relés hasta

los que usan facilidades computacionales desarrolladas en los tiempos

presentes. Actualmente el corazón del desarrollo de los sistemas

automáticos lo representa esencialmente los Controladores Lógicos Programables

(PLC). Cotejar la idea que tiene cada estudiante o profesional del área de

automatización respecto a lo que es un PLC arrojaría un cúmulo de ideas distintas

dependiendo por supuesto del conocimiento previo y el paradigma que cada

individuo se haya formado respecto a este mismo tema. En este trabajo no se trata

de unificar estas ideas o conceptos, sino más bien se trata de enriquecer el

conocimiento que estudiantes y profesionales poseen hasta este momento.

De manera especial para estudiantes y profesionales del área de eléctrica,

electrónica, computación y sistemas; es de primera necesidad tener conocimientos y

un mediano entrenamiento en el tópico de los PLCs, ya que estos forman parte

fundamental en sistemas de control, de adquisición de datos y de manejo de la

información de un gran número de procesos y máquinas que se encuentran en su

campo de trabajo.

Aunque existen textos (muy escasos) especializados en la temática de los

PLCs, para no dejar el entrenamiento en lo meramente teórico, es necesario que el

aprendiz acuda a los cursos de entrenamiento dictados por los propios fabricantes de

los equipos. Estos cursos además de ser costosos, los ofrecen muy

esporádicamente a grupos especiales, y por lo general son poco amplios ya que

tratan a un determinado tipo o marca de PLC.

Este trabajo combina los aspectos teóricos del software y del hardware de los

PLCs, con paquetes computacionales de simulación para ofrecer al interesado la

posibilidad de cumplir con un programa de auto entrenamiento que lo prepare mejor

para ejecutar trabajos en el área de los PLCs.

L

Page 5: Teoria Plc

INTRODUCCIÓN

Prof. Danilo Navarro. Universidad De Oriente. Julio 2001. iv

Para lograr esta meta se aborda en los capítulos 1 y 2 los aspectos filosóficos

de la estructura y el funcionamiento de los PLCs, para luego cubrir los extensos tipos

de conexiones e interfaces de entrada / salida en el capítulo numero 3.

Conociendo los fundamentos del software usado por un PLC, se llega

fácilmente a entender cualquier otro PLC. Por esta razón, en los capítulos 4 y 5 se

cubren las principales instrucciones soportadas por los PLCs, combinando cada

explicación con una simulación animada de la misma.

Uno de los aspectos más importantes dentro del trabajo con PLCs es la

programación de los mismos y la creación o configuración de las aplicaciones.

Considerando lo anterior, el capítulo 6 cubre lo concerniente a las distintos lenguajes

de programación tipificados en el estándar IEC 1131, así como también se

desarrollan aplicaciones que pueden ser ejecutadas en el software de simulación que

acompaña a este trabajo, o en el PLC TSX17 que se encuentra disponible en el

laboratorio de Sistemas de control del Departamento de Ingeniería eléctrica de la

Universidad de Oriente.

También, el rápido avance de los sistemas de control distribuido no es posible

sin las facilidades de comunicación con las que cuentan los PLCs. De aquí que como

parte final de este trabajo, en el capítulo 7, se detalle en forma básica la interfase de

comunicación más comúnmente usada por los PLCs: La RS-232.

Page 6: Teoria Plc

Prof. Danilo Navarro. Universidad De Oriente. Julio 2001. 1

EL COMIENZO.

1.1 ¿Qué es un PLC?

n PLC ( Controlador Lógico Programable) es un dispositivo electrónico de

estado sólido que puede controlar un proceso o una máquina y que tiene

la capacidad de ser programado o reprogramado rápidamente según la

demanda de la aplicación. Fue inventado para remplazar los circuitos secuenciales

basados en relés que eran necesarios para el control de las máquinas. El PLC

funciona monitoreando sus entradas, y dependiendo de su estado, activando y

desactivando sus salidas. El usuario introduce al PLC un programa, usualmente vía

Software, lo que ocasiona que el PLC se comporte de la manera deseada.

Fig. 1 – Aspecto físico de un PLC.

Los PLCs son usados en muchas aplicaciones: Maquinado de piezas,

Embaladoras, Manipulación de materiales, ensamblado automático, y en general

cualquier tipo de aplicación que requiera de controles eléctricos puede usar más bien

un PLC.

Capítulo

1

U

Page 7: Teoria Plc

CAPITULO 1. EL COMIENZO.

Prof. Danilo Navarro. Universidad De Oriente. Julio 2001. 2

Fig. 2 – Aplicación típica de un PLC.

Por ejemplo asúmase que cuando un switch se activa, deseamos también

activar una válvula solenoide por un período de 5 segundos y luego apagarla sin

importar el tiempo que el switch estuvo activado. Esto se puede hacer con un simple

temporizador externo; pero, ¿Qué tal si el proceso incluye 10 switch y 10

selenoides?. También, ¿Qué si en el proceso es necesario contar cuantas veces

cada switch se activo?. Obviamente se necesitarían una gran cantidad de contadores

externos. Como se ve, mientras más grande el proceso, mayor es la necesidad de un

PLC, y por ejemplo en el caso descrito bastaría con simplemente programar el PLC

para que cuente sus entradas y mantenga activadas sus salidas por un cierto período

de tiempo.

Page 8: Teoria Plc

CAPITULO 1. EL COMIENZO.

Prof. Danilo Navarro. Universidad De Oriente. Julio 2001. 3

1.2 Breve historia de los PLC.

os PLCs fueron introducidos por primera vez a finales de 1960. La razón

principal para introducir tal dispositivo fue la de eliminar el gran costo que

representaba remplazar los sistemas de control basados en lógica de relés.

En 1968, una expresa consultora llamada Bedford Associates (Bedford, MA) diseño

para la General Motors un dispositivo de control que llamaron Controlador Digital

Modular (Modular Digital Controller, MODICON) 084. Otras compañías al mismo

tiempo propusieron esquemas de control basados en computadoras, uno de los

cuales se basó en el PDP-8. El MODICON 084 representó el primer PLC en el

mundo dentro de la producción comercial.

La razón principal que impulsó este nuevo tipo de control fue que cuando

cambiaba los requerimientos de producción, también lo hacia el sistema de control, y

esto se tornaba costoso sobre todo cuando los cambios eran frecuentes. También,

como los relés son elementos mecánicos, ellos tienen un período de vida limitado y

además requieren de un estricto programa de mantenimiento. Igualmente, la

resolución de problemas en la lógica de control era muy tediosa sobre todo cuando

estaban involucrados gran cantidad de relés; y los paneles de control de las

máquinas incluían cada vez más funciones que si se utilizaba lógica a relés, estos

incluirían cientos de ellos, lo que ocasiona el problema inicial del difícil cableado de

los paneles.

Estos nuevos controladores también tenían que ser fáciles de programar por

los ingenieros de planta y de mantenimiento. El tiempo de vida tenia que ser largo y

los cambios en la programación de las funciones debía ser fácilmente realizable.

También, los nuevos controladores debían poseer cualidades para resistir a los

severos ambientes industriales. La respuesta a este lote de planteamientos era usar

técnicas de programación que ya le fueran familiares a los técnicos de

plantas(diagramas de contacto: LADDER) y a la par remplazar los relés

electromecánicos por unos que fueran de estado sólido.

L

Page 9: Teoria Plc

CAPITULO 1. EL COMIENZO.

Prof. Danilo Navarro. Universidad De Oriente. Julio 2001. 4

A mediados de los 70 la tecnología dominante en los PLCs eran las maquinas

secuenciadoras de estados y los bit-Slice based CPU. El AMD 2901 y 2903 eran

bastante populares en los PLCs de Allen Bradley y en los de MODICON. Los

microprocesadores convencionales carecían de la potencia para satisfacer los

requerimientos de lógica en todo los PLCs excepto en los más pequeños. Según

como los microprocesadores convencionales evolucionaron, en esa misma medida

se construyeron PLCs cada vez más grandes y potentes.

Las posibilidades de comunicación comienzan a aparecer aproximadamente

en 1973. El primero de tales sistemas fue el ModBus de MODICON. Los PLCs

pueden a partir de aquí comunicarse con otros PLCs distantes e intercambiar con

ellos datos de las máquinas controladas. Igualmente se pueden usar para enviar y

recibir voltajes variables lo que les permite entrar al mundo analógico.

Desdichadamente, la carencia de estandarización acoplada con los continuos

cambios tecnológicos hicieron la comunicación entre los PLCs un mar negro de

redes y protocolos incompatibles.

En los 80 se vio el intento por estandarizar las comunicaciones con el

Protocolo de Automatización de la Manufactura de la General Motors (MAP). En este

tiempo también se redujo el tamaño de los PLCs y se hicieron programables

mediante la programación simbólica desde computadores personales PCs en vez de

mantener los terminales de programación dedicados o programadores "handheld”.

Hoy, el PLC más pequeño en el mundo es del tamaño de un simple relé de control.

En los 90 se vio una gradual reducción en la introducción de nuevos protocolos, y

en la modernización de las capas físicas de alguno de los más populares protocolos

que sobrevivieron a la década de los 80. El ultimo standard (IEC 1131-3) ha tratado

de unificar los lenguajes de programación de los PLCs bajo un único standard

internacional. Actualmente hay PLC que son programables en diagramas de Bloques

de Funciones, Lista de instrucciones, “C++” y texto estructurado, Diagrama de

Contactos(LADDER) y GRAFCET al mismo tiempo.

Page 10: Teoria Plc

CAPITULO 1. EL COMIENZO.

Prof. Danilo Navarro. Universidad De Oriente. Julio 2001. 5

1.3 Características sobresalientes de los PLCs.

v Poseen memoria volátil y no volátil. Tanto el programa de aplicación escrito

por el usuario como los datos internos del PLCs, normalmente es guardado en

una RAM (memoria volátil), lo que le permite tener un acceso más veloz a las

instrucciones de programa y a los datos internos de registros, contadores,

temporizadores, bits internos, etc. También, una vez que se ha depurado el

programa de aplicación, los PLCs permiten la opción de salvaguardar el

programa en memorias tipo EEPROM (no volátiles) para así recuperar el

mismo en caso de un corte muy prolongado de energía que ocasiona una

perdida de datos de la RAM.

Fig. 3 – Tipos de memorias en un PLC.

v Capacidad modular de entradas / salidas. Esto permite la combinación de

distintos niveles y tipos de señal de entrada, así como también el manejo de

salidas para distintos tipos de carga. Igualmente si la aplicación crece, y se

requiere mayor número de entradas / salidas, casi sin ningún problema los

PLCs pueden adecuarse al nuevo requerimiento.

Fig. 4 – Capacidad modular de los PLCs.

v Autodiagnóstico de fallas. El PLC monitorea el funcionamiento de su CPU,

Memoria y circuito de interfases de entrada y de salida, e igualmente

Page 11: Teoria Plc

CAPITULO 1. EL COMIENZO.

Prof. Danilo Navarro. Universidad De Oriente. Julio 2001. 6

monitorea el correcto funcionamiento del programa de aplicación. En ambos

casos señaliza por medio de LEDs en su cara frontal el estado respectivo.

Obviamente esta capacidad es de gran utilidad para efectos de mantenimiento

y corrección de fallas.

Fig. 5 – Visualizador de status del PLC.

v Programación de la lógica de control. Esto permite la fácil adaptación a los

cambios en la lógica de operación de las máquinas y procesos.

Fig. 6 – Lógica programada.

v Capacidad para generar reportes y comunicarse con otros sistemas. Con esta

facilidad se pueden integrar interfaces de explotación Hombre-Máquina,

sacándole al sistema mayor cantidad de información. Igualmente los PLCs

pueden participar en redes de datos comunicándose con otros PLCs para

formar sistemas de control distribuidos, o integrándose a las redes

administrativas de la producción.

Page 12: Teoria Plc

CAPITULO 1. EL COMIENZO.

Prof. Danilo Navarro. Universidad De Oriente. Julio 2001. 7

Fig. 7 – Capacidad de comunicación.

Page 13: Teoria Plc

CAPITULO 1. EL COMIENZO.

Prof. Danilo Navarro. Universidad De Oriente. Julio 2001. 8

1.4 Ventajas de los PLCs sobre la lógica a relés.

LOGICA CON PLCs LÓGICA A RELES v Flexibilidad de configuración y

programación.

⌦ Costosos cambios de hardware

v Rápidos cambios de la lógica de

control.

⌦ Mayor tiempo de cambios en la

lógica de control

v Amplia variedad de funciones: Relés,

Contadores, Temp., Secuenciadores,

Registros, etc.

⌦ Pocas funciones: Relés,

Contadores, Temporizadores

v Reducción de espacio ⌦ Mayor espacio relativo

v Montaje fácil y rápido ⌦ Montaje lento y tedioso

v Localización fácil y rápida de averías

y fallas

⌦ Búsqueda lenta y más difícil de

averías

v Alta confiabilidad. Elementos de

estado sólido

⌦ Poca confiabilidad. Partes

mecánicas

v Múltiples contactos NO, NC ⌦ Máximo de 4 a 6 contactos

v Consumo de energía reducido ⌦ Mayor consumo de energía

v Reducción del costo a medida que

aumenta la complejidad del proceso

⌦ A partir de 15 o 20 relés, el costo

comparativo supera el costo con

PLCs

Page 14: Teoria Plc

CAPITULO 1. EL COMIENZO.

Prof. Danilo Navarro. Universidad De Oriente. Julio 2001. 9

1.5 Listado de principales fabricantes de PLCs.

continuación se muestra un listado de los principales fabricantes y

vendedores de sistemas para control, automatismos y PLCs.

ABB : http://www.abb.com/products&contracting

Alfa Laval

Allen-Bradley : http://www.ab.com/

ALSTOM/Cegelec

Aromat

AutomationDirect/PLC Direct/Koyo/ : http://www.automationdirect.com/

B&R Industrial Automation

Beck Electronic/Festo

Berthel gmbh

Cegelec/ALSTOM

Control Microsystems

Crouzet Automatismes

Control Technology Corporation

Cutler Hammer/IDT : http://www.ch.cutler-hammer.com/

Divelbiss

EBERLE gmbh

Elsag Bailey

Entertron

Festo/Beck Electronic

Fisher & Paykel

Fuji Electric

GE-Fanuc : http://www.gefanuc.com/

Gould/Modicon : http://www.modicon.com/

Grayhill

Groupe Schneider

Hima

A

Page 15: Teoria Plc

CAPITULO 1. EL COMIENZO.

Prof. Danilo Navarro. Universidad De Oriente. Julio 2001. 10

Hitachi : http://www.lighthouseplcs.com/

Honeywell : http://www.iac.honeywell.com/

Horner Electric

Idec

IDT/Cutler Hammer : http://www.ch.cutler-hammer.com/

Jetter gmbh

Keyence : http://www.keyence.com/

Kirchner Soft

Klockner-Moeller : http://www.moellerusa.net/

Koyo/AutomationDirect/PLC Direct : http://www.automationdirect.com/

LG Industrial Systems

Microconsultants

Mitsubishi : http://www.meau.com/

Modicon/Gould : http://www.modicon.com/

Moore Products

Motorola

Omron : http://oeiweb.omron.com/

Opto22

Pilz

PLC Direct/Koyo/AutomationDirect : http://www.automationdirect.com/

Reliance

Rockwell Automation : http://www.automation.rockwell.com/

Rockwell Software : http://www.software.rockwell.com/

SAIA-Burgess

Samsung

Schleicher : http://www.schleicher-de.com/

Schneider Automation : http://www.schneiderautomation.com/

Sharp

Siemens : http://www.aut.sea.siemens.com/

Sigmatek

Sixnet

SoftPLC/Tele-Denken : http://www.softplc.com/

Page 16: Teoria Plc

CAPITULO 1. EL COMIENZO.

Prof. Danilo Navarro. Universidad De Oriente. Julio 2001. 11

Square D : http://www.squared.com/

Tele-Denken/SoftPLC

Telemecanique : http://www.schneider.co.uk/automati.htm

Toshiba : http://www.tic.toshiba.com/plc/

Triangle Research

Triconex

Unitronics

Yokogawa

Z-World

Page 17: Teoria Plc

Prof. Danilo Navarro. Universidad De Oriente. Julio 2001. 12

OPERACIÓN DE LOS PLCs.

2.1 Estructura interna.

os PLCs constan principalmente de un CPU, área de memoria, y circuitería

apropiada de entrada /salida de datos. Se puede considerar al PLC como

una caja llena de cientos o miles de Relés independientes, contadores,

temporizadores y locaciones para almacenamiento de datos. Estos contadores,

temporizadores, etc.; ¿realmente existen?. No, Ellos no existen físicamente pero en

vez de eso son simulados y se pueden considerar como contadores, temporizadores,

etc. hechos a nivel de software. También los Relés internos son simulados mediante

bits en registros del hardware del PLC.

Fig. 3 – Estructura general simplificada de un PLC.

• Relés DE ENTRADA: Están conectados al mundo externo. Físicamente

existen y reciben señal de los switches, sensores, etc. Típicamente no son

relés pero si son transistores que funcionan como relés estáticos.

• Relés INTERNOS: Estos no reciben señal desde el mundo exterior ni existen

físicamente. Ellos son relés simulados y permiten al PLC eliminar los relés

externos. También hay relés especiales que el PLC usa para realizar una

tarea única. Algunos están siempre activados mientras que otros su estado

Capítulo

2

L

Page 18: Teoria Plc

CAPITULO 2. OPERACIÓN DE LOS PLCS.

Prof. Danilo Navarro. Universidad De Oriente. Julio 2001. 13

normal es estar desactivados. Algunos se activan solamente durante el ciclo

de arranque y son usados para la iniciación de los datos que fueron

almacenados.

• Contadores: estos no existen físicamente. Son contadores simulados

mediante software y pueden ser programados para contar pulsos. Típicamente

estos contadores cuentan en forma ascendente y descendente. Dado que

estos contadores son simulados mediante software, su velocidad de contaje

esta limitada. Algunos PLC incluyen también contadores de alta velocidad

basados en hardware, es decir que son contadores que existen físicamente y

cuentan ascendentemente, descendentemente, o en ambas direcciones.

• TEMPORIZADORES: Estos no existen físicamente. Son de varios tipos (al

reposo, al trabajo, etc.) y de varias resoluciones de temporización. Los tipos

más comunes son los temporizadores al trabajo. Otros menos comunes son

los temporizadores con retención. En general la resolución de temporización

ve desde 1 ms hasta 1 segundo.

• Relés DE SALIDA: Estos se conectan al mundo exterior al PLC. Físicamente

existen y funcionan enviando señales de encendido / apagado a selenoides,

luces, etc. Basados en hardware, pueden estar construidos con transistores,

relés electromecánicos o TRIACS, según el modelo que se escoja.

• ALMACENAMIENTO DE DATOS: Típicamente hay registros del PLC que

están asignados al simple almacenamiento de datos. Usualmente se usan

para almacenamiento temporal para manipulación matemática o de datos.

También son usados para almacenar datos cuando se corta el suministro de

energía al PLC. Una vez regresa la energía, los registros disponen de los

mismos datos que tenían cuando se corto la energía.

Un diagrama de bloques más completo que describe la estructura de un PLC

sería el siguiente.

Page 19: Teoria Plc

CAPITULO 2. OPERACIÓN DE LOS PLCS.

Prof. Danilo Navarro. Universidad De Oriente. Julio 2001. 14

Fig. 4 – Estructura general de un PLC.

v Unidad Central de procesamiento (CPU): Esta formada por la unidad de

control, la tabla imagen de proceso, y por los temporizadores, contadores y

bits internos. La CPU se encarga del tratamiento de los datos internamente

(sumas, operaciones lógicas, transferencias, etc), busca o escribe operandos

en la memoria, lee o escribe datos en las unidades de entrada y salida, etc.

v Memoria: Es la circuitería electrónica capaz de almacenar el programa de

aplicación escrito por el usuario, y los datos provenientes de la máquina o

proceso controlado. También es la encargada de almacenar las variables

internas generadas por la CPU y las variables de salida a ser transferidas a

los periféricos.

Page 20: Teoria Plc

CAPITULO 2. OPERACIÓN DE LOS PLCS.

Prof. Danilo Navarro. Universidad De Oriente. Julio 2001. 15

Fig. 5 – Memorias dentro del PLC.

v Periféricos: Corresponden a la circuitería de entrada / salida del PLC, o lo

que representa lo mismo: su comunicación con el proceso o máquina a

controlar y con el usuario u operador del sistema. Las señales de entrada

provenientes de los sensores son de naturaleza diversa: Voltaje AC, Voltaje

DC, Corriente, señales binarias, señales analógicas, etc. Es así como los

periféricos son los encargados de convertir estas señales a información capaz

de ser interpretada por la CPU, y de convertir las señales provenientes de la

CPU a señales capaces de excitar los preaccionadores de las máquinas.

Page 21: Teoria Plc

CAPITULO 2. OPERACIÓN DE LOS PLCS.

Prof. Danilo Navarro. Universidad De Oriente. Julio 2001. 16

2.2 ¿Cómo trabajan los PLCs?.

n PLC trabaja realizando continuamente un barrido(SCAN) sobre un

programa. Este ciclo de barrido o scan consta principalmente de 3 pasos,

aunque típicamente son mas de tres ya que existen otros como el chequeo

del sistema y la actualización de los contadores y temporizadores internos.

Fig. 6 – Ciclo de trabajo de un PLC.

Paso 1-DIAGNÓSTICO INTERNO: En este paso el PLC revisa su circuitería interna

en busca de defectos de entradas, salidas, CPU, memorias y batería. También revisa

el WATCHDOG y los desbordamiento de memoria para revisar fallas en el programa

de aplicación.

Paso 2-CHEQUEAR EL ESTADO DE LAS ENTRADAS: Al principio el PLC accede

cada una de las entradas para determinar si están activadas o desactivadas (on /

off). Es decir, ¿ Esta activado el sensor conectado a la primera entrada?, ¿El

segundo?, ¿El tercero? … Luego el PLC graba estos datos en la tabla imagen de

proceso para usarlos en el próximo paso.

Paso 3-EJECUTAR EL PROGRAMA DE LA APLICACIÓN: El PLC ejecuta el

programa de la aplicación creada por el usuario una instrucción a la vez. Por

ejemplo, si el programa especifica que si la primera entrada esta “on” se debe activar

la salida numero 2, el PLC graba este resultado para tomarlo en cuenta en el próximo

U

Page 22: Teoria Plc

CAPITULO 2. OPERACIÓN DE LOS PLCS.

Prof. Danilo Navarro. Universidad De Oriente. Julio 2001. 17

paso. Como ya el PLC conoce cuales entradas están activadas o desactivadas (paso

2), él será capaz de decidir cuales salidas se deben activar basado en el estado de

las entradas y en el estado de los contadores, temporizadores y bits internos. Como

ya se dijo el PLC guarda este resultado para usarlo en el próximo paso.

Paso 4-ACTUALIZAR EL ESTADO DE LAS SALIDAS: Finalmente el PLC actualiza

el estado de las salidas basado en los resultados lógicos del paso 3. Siguiendo el

ejemplo del paso 3, el PLC activara en este tercer paso la salida numero 2 basado en

el hecho que la primera entrada estaba en “on”.

Después del cuarto paso el PLC vuelve al paso uno y repite la rutina continuamente.

Así, un SCAN se define como el tiempo que toma el PLC para ejecutar los cuatro

pasos descritos anteriormente.

Fig. 7 – Esquema de tiempos relativos dentro del SCAN del PLC.

Page 23: Teoria Plc

CAPITULO 2. OPERACIÓN DE LOS PLCS.

Prof. Danilo Navarro. Universidad De Oriente. Julio 2001. 18

2.3 Tiempos de respuesta de los PLCs y sus efectos.

l tiempo de respuesta total de un PLC es un hecho que se debe considerar

al momento de adquirir un PLC. El mismo esta formado por el tiempo de

adquisición de entradas, el tiempo de ejecución de la lógica programada, y

el tiempo para activar sus salidas. El PLC toma cierta cantidad de tiempo

para realizar un autodiagnóstico de sus tarjetas electrónicas.

Fig. 8 – Tiempo típico de SCAN de un PLC.

Autodiagnóstico: Chequea para verificar que todas las tarjetas estén libres de falla,

restaura el perro de guardia(WATCHDOG TIMER), etc. (El “WATCHDOG” causará

un error e interrumpirá el funcionamiento del PLC sino es restaurado dentro de un

período corto de tiempo. Esto indicaría que la lógica del programa no esta siendo

escaneada normalmente).

Barrido de Entradas: Lee los valores de entrada disponibles en los chips de las

tarjetas de entrada y copia sus valores en la memoria. Esto hace al PLC más rápido

y evita casos donde una entrada cambia entre el principio y el final del programa.

Existen también funciones especiales de los PLCs que leen las entradas

directamente y evitan el uso de las tablas de imagen.

Ejecución de la Lógica: Basado en la tabla de imagen de entradas, el programa es

ejecutado un paso a la vez, y al mismo tiempo se va actualizando en memoria la

tabla de imagen de salida.

E

Page 24: Teoria Plc

CAPITULO 2. OPERACIÓN DE LOS PLCS.

Prof. Danilo Navarro. Universidad De Oriente. Julio 2001. 19

Barrido de Salidas: La tabla de imagen de salida es copiada desde la memoria

hacia los chips de salida. Estos chips de salida entonces accionan los dispositivos de

salida (relés, transistores, etc).

El PLC pude ver la entrada on / off solamente durante el tiempo de barrido de

entrada. En otras palabras, él solamente ve sus entradas durante la parte del scan

correspondiente al chequeo de entradas.

Fig. 9 – Error en el barrido de entradas.

En el diagrama, la entrada 1 no es vista sino hasta el scan 2. Esto se debe a que

cuando la entrada 1 esta en alto, el scan 1 ya ha finalizado su tiempo de chequeo de

entradas. La entrada 2 no es vista sino hasta el scan 3 por la misma razón anterior.

La entrada 3 nunca es vista o validada como activa ya que cuando el scan 3 estaba

haciendo el barrido sobre las entradas, la misma no estaba aun en on, y además

cambia a off antes de que el scan 4 active su tiempo de chequeo de entradas. Por

tanto, la entrada 3 nunca es vista por el PLC.

Para evitar lo que ocurre con la entrada 3 del ejemplo anterior, se debe establecer

que la entrada este activa al menos por 1 tiempo de barrido de entradas + un

tiempo de barrido de programa o Scan.

Fig. 10 – Tiempo de entrada activa.

Page 25: Teoria Plc

CAPITULO 2. OPERACIÓN DE LOS PLCS.

Prof. Danilo Navarro. Universidad De Oriente. Julio 2001. 20

Pero, ¿Qué pasa si no es posible que la entrada se mantenga durante el período

especificado?, Entonces el PLC no valida la entrada como activa. Para resolver este

tipo de problemas, actualmente existen 2 métodos.

Función alargamiento del pulso: Esta función extiende la duración de la señal de

entrada hasta que el PLC la lea en el próximo scan.

Fig. 11 – Alargamiento de pulso.

Función interrupción: Esta función interrumpe el scan para procesar una rutina

especial que el usuario haya programado. Esto es que tan pronto como la entrada se

activa, sin importar en que parte del scan este, el PLC inmediatamente para lo que

esta haciendo y ejecuta una rutina de interrupción. (Una rutina puede ser interpretada

como un mini programa aparte del programa principal). Después de realizar la rutina

de interrupción, el PLC regresa al mismo punto donde dejo el hilo principal y continúa

el proceso normal del scan.

Fig. 12 – Interrupción.

Page 26: Teoria Plc

CAPITULO 2. OPERACIÓN DE LOS PLCS.

Prof. Danilo Navarro. Universidad De Oriente. Julio 2001. 21

Considerando ahora el máximo tiempo para que una salida se active, asúmase que

cuando un switch se activa se necesita activar una carga conectada a la salida del

PLC. El diagrama siguiente muestra el mayor retardo (El peor caso ya que la entrada

no es vista sino hasta el scan 2) para que la salida se active después de que la

entrada relacionada se ha activado. El máximo retardo es:

2 ciclos de scan – 1 tiempo retardo de la entrada.

Fig. 13 – Máximo retardo de operación.

Page 27: Teoria Plc

Prof. Danilo Navarro. Universidad De Oriente. Julio 2001. 22

CONEXIONADO E INTERFACES DE ENTRADA / SALIDA.

3.1 Tipos de Entrada / Salida a los PLCs.

as entradas y salidas a un PLC le sirven para controlar y monitorear las

máquinas y procesos. Existen básicamente dos tipos de entradas / salidas a

los PLCs: Entradas-Salidas discretas, y Entradas-Salidas analógicas. Las

entradas discretas, también conocidas como entradas digitales, son las que poseen

dos estados: ON u OFF. Provienen de Pushbottons, detectores de proximidad,

interruptores de posición, etc. En la condición de ON, una entrada discreta puede ser

llamada como un 1 o como un ALTO, mientras que en la condición de OFF se

conoce como un 0 o como un BAJO.

Fig. 14 – Entradas – Salidas discretas al PLC.

Capítulo

3 L

Page 28: Teoria Plc

CAPITULO 3. CONEXIONADO E INTERFACES DE ENTRADA / SALIDA.

Prof. Danilo Navarro. Universidad De Oriente. Julio 2001. 23

Las salidas discretas tienen también dos condiciones posibles: ON u OFF.

Ellas van a servir a las bobinas de los contactores, a válvulas selenoides, a luces

pilotos, etc.

Por su parte las entradas analógicas son voltajes o corrientes continuas que

provienen de procesos de control de temperatura, presión, flujo, nivel, etc.

Típicamente son señales cuyo rango es de 4 a 20 mA DC, o señales de rango de 0 a

10 voltios DC.

Fig. 15 – Entradas – Salidas analógicas al PLC.

Las salidas analógicas son señales de corriente o voltaje continuo. Pueden ser

tan simples como un nivel de 0 a 10 voltios que maneje un voltímetro analógico, o un

poco más complejas como señales de corriente que manejen convertidores corriente

- presión de aire que a su vez sirvan a actuadores como lo son Servo válvulas para el

control de flujo. Igualmente, con la interfase adecuada, servirían a otros tipos de

actuadores dentro de esos mismos procesos como lo son: servomotores, controles

de potencia de hornos, etc.

Page 29: Teoria Plc

CAPITULO 3. CONEXIONADO E INTERFACES DE ENTRADA / SALIDA.

Prof. Danilo Navarro. Universidad De Oriente. Julio 2001. 24

3.2 Entradas al PLC.

as entradas a los PLCs son poco variadas. Las más populares son las DC

(Fuente o Sumidero) y las AC. Los rangos típicos de voltajes de entrada

listados en orden de popularidad son los siguientes:

• 12 – 24 Vdc

• 100-120 Vac

• 5 Vdc(TTL)

• 200-240 Vac

• 48 Vdc

• 24 Vac

El PLC debe convertir esta variedad de niveles lógicos de voltaje a niveles de

voltaje de lógica TTL (5 Vdc). Para lograr esto utiliza dos interfaces circuitales típicas:

DC a TTL, y AC a TTL.

Fig. 16 – Interfase típica de conversión DC a TTL.

Los optoacopladores son usados para aislar la circuitería interna de las

tensiones de alimentación externas. Esto elimina la posibilidad de que cualquier

voltaje dañino o cualquier ruido alcance los circuitos lógicos internos del PLC. Los

optoacopladores convierten la señal eléctrica de corriente o voltaje a una señal

L

Page 30: Teoria Plc

CAPITULO 3. CONEXIONADO E INTERFACES DE ENTRADA / SALIDA.

Prof. Danilo Navarro. Universidad De Oriente. Julio 2001. 25

luminosa, y luego la transforman de luminosa a eléctrica para que así los circuitos

lógicos del PLC puedan procesarla.

Fig. 16 – Interfase típica de conversión AC a TTL.

Una primera vista comparativa del uso de entradas DC o AC se da a continuación:

• Los voltajes DC usualmente son más bajos (12 – 24 V) y por lo tanto es

menos riesgoso operar con ellos.

• Las entradas DC son muy rápidas. Las entradas AC requieren de un tiempo

mayor para ser reconocida.

• Los voltajes DC pueden ser conectados a una gran variedad de equipos y

sistemas eléctricos.

• Las señales AC son más inmunes al ruido que las señales DC, por eso

pueden cubrir mayor distancia y ambientes ruidosos.

• El suministro AC es más fácil y menos costoso al momento de alimentar

equipos eléctricos.

• Las señales AC son muy comunes en muchos equipos de automatización.

Page 31: Teoria Plc

CAPITULO 3. CONEXIONADO E INTERFACES DE ENTRADA / SALIDA.

Prof. Danilo Navarro. Universidad De Oriente. Julio 2001. 26

3.3 Entradas DC.

ípicamente existen módulos de entradas DC que trabajan a 5, 12, 24, o 48

voltios, pero el de uso más popular es el de 24 VDC. Los módulos de

entradas DC permiten conectar sensores transistorizados del tipo PNP

(fuente) o NPN (sumidero). Si se está usando un switch convencional (interruptores o

pushbutton) no hay cuidado si las entradas son NPN o PNP. Sin embargo, si se está

usando un sensor electrónico (fotoeléctricos, de proximidad, etc.) se debe tener

cuidado que su configuración de salida sea compatible con el tipo de entrada (NPN o

PNP) del PLC. La diferencia entre los dos tipos es que la carga (en este caso el PLC)

es conmutada a tierra o es conectado a un voltaje positivo. Un sensor tipo NPN

conmuta la carga a tierra, mientas que un sensor tipo PNP suministra a la carga un

voltaje positivo.

Fig. 17 – Etapa de salida de un sensor tipo NPN (Sumidero).

En este tipo de sensor se conecta uno de los terminales de salida al PLC,

mientras que el otro se conecta a la referencia de la fuente de alimentación. Si el

sensor no es alimentado de la misma fuente que alimenta al PLC, los negativos de

ambas fuentes deben unirse entre sí para formar un terminal de referencia común.

Los sensores NPN son de uso común mas que todo en Norte América.

En los sensores tipo PNP se conecta uno de los terminales de salida al

positivo de la fuente, mientras que el otro se conecta a la correspondiente entrada

del PLC. Si el sensor no es alimentado por la misma fuente que alimenta al PLC, se

deben conectar ambos V+'s entre sí. Los sensores tipo PNP son más comúnmente

usados en Europa.

T

Page 32: Teoria Plc

CAPITULO 3. CONEXIONADO E INTERFACES DE ENTRADA / SALIDA.

Prof. Danilo Navarro. Universidad De Oriente. Julio 2001. 27

Fig. 18 – Etapa de salida de un sensor tipo PNP (Fuente).

Dentro del sensor el transistor actúa como un switch estático. Es decir, la

circuitería interna de procesamiento del sensor habilita al transistor de salida para

que se active cuando por ejemplo sea detectada la presencia de un objetivo. De esta

manera el transistor cerrará el circuito entre las 2 conexiones que se muestra arriba

(V+ y entrada del PLC).

Fig. 19 – Interfase DC de entrada al PLC.

En el PLC, lo único accesible al usuario son los terminales nombrados como

COMÚN, ENTRADA 0000, ENTRADA 0001, ENTRADA xxxx... El terminal común

debe conectarse a V+ o a tierra, dependiendo del tipo de sensor que se este usando.

Cuando se usan sensores tipo NPN el terminal se conecta a V+, mientras que

cuando se usan sensores tipo PNP el terminal común se conecta a 0V (tierra).

Un switch ordinario como por ejemplo un limit switch, pushbutton, selector, etc;

debe ser conectado a las entradas del PLC de una manera similar a la conexión de

los sensores descritos anteriormente. Un terminal del switch debe ser conectado

directamente a V+, mientras que el otro se debe conectar a la entrada del PLC, si se

asume compatibilidad PNP. Es decir esta conexión asume que el común esta

Page 33: Teoria Plc

CAPITULO 3. CONEXIONADO E INTERFACES DE ENTRADA / SALIDA.

Prof. Danilo Navarro. Universidad De Oriente. Julio 2001. 28

conectado a 0v. Si por el contrario el común esta conectado a V+ (compatibilidad

NPN) entonces un extremo del switch debe ser conectado a 0V (ground) mientras

que el otro va al terminal de entrada en el PLC.

Page 34: Teoria Plc

CAPITULO 3. CONEXIONADO E INTERFACES DE ENTRADA / SALIDA.

Prof. Danilo Navarro. Universidad De Oriente. Julio 2001. 29

3.4 Conexionado de entradas DC.

uando un sensor detecta un cambio lógico, él debe señalar ese cambio al

PLC. Esto típicamente lo consigue mediante la conmutación de un voltaje o

de una corriente de “ON” a “OFF” o viceversa. En este sentido existen

sensores con distintos tipos de salida:

v Salida tipo Switch o relé: Conmutan un voltaje DC o AC.

Fig. 20 – Salida tipo relé.

v Salida tipo TTL: Transistor Transistor Logic.

Fig. 21 – Salida tipo TTL.

v Salida DC tipo Sumidero: Conmutan corriente a tierra.

Fig. 22 – Salida tipo NPN.

C

Page 35: Teoria Plc

CAPITULO 3. CONEXIONADO E INTERFACES DE ENTRADA / SALIDA.

Prof. Danilo Navarro. Universidad De Oriente. Julio 2001. 30

v Salida DC tipo Fuente: Corriente sale desde el sensor.

Fig. 23 – Salida tipo PNP.

3.4.1 Conexionado de entradas tipo NPN.

Cuando el sensor detecta un cambio lógico, permite que por dentro de él fluya

corriente en un camino hacia el común. Conmutando corriente en lugar de voltaje, se

resuelven muchos de los problemas del ruido eléctrico. La salida de un sensor tipo

sumidero esta compuesta por un transistor tipo NPN. En forma simple estos

sensores se conocen como tipo NPN, y los mismos necesitan de una fuente de

alimentación para poder funcionar.

Fig. 24 – Sensor NPN simplificado.

Si el sensor ha detectado algún fenómeno, activa el transistor permitiendo así

el flujo de corriente hacia el común.

Cuando se tiene una tarjeta de entrada que tiene un +V (no un común), entonces se

pude usar sensores tipo NPN. En este caso la corriente sale de la tarjeta (Fuente) y

el sensor la conmuta a tierra.

Page 36: Teoria Plc

CAPITULO 3. CONEXIONADO E INTERFACES DE ENTRADA / SALIDA.

Prof. Danilo Navarro. Universidad De Oriente. Julio 2001. 31

Fig. 25 – Tarjeta simplificada del PLC para sensor tipo NPN.

3.4.2 Conexionado de entradas tipo PNP.

Cuando el sensor detecta un cambio lógico, permite que desde el +V salga

una corriente que fluyendo a través de él, active una carga o la entrada de un PLC.

Complementario al sensor tipo sumidero, la salida de un sensor tipo fuente consta de

un transistor tipo PNP. En forma simple estos sensores se conocen como tipo PNP, e

igualmente necesitan de una fuente de alimentación para poder operar.

Fig. 26 – Sensor tipo PNP simplificado.

Si el sensor ha detectado algún fenómeno, activa el transistor permitiendo así

que el flujo de corriente salga por el transistor.

Cuando se tiene una tarjeta de entrada que tiene un COM (común), entonces se

pude usar sensores tipo PNP. En este caso la corriente fluye hacia la tarjeta buscado

el común de la fuente de alimentación.

Page 37: Teoria Plc

CAPITULO 3. CONEXIONADO E INTERFACES DE ENTRADA / SALIDA.

Prof. Danilo Navarro. Universidad De Oriente. Julio 2001. 32

Fig. 27 – Tarjeta simplificada del PLC para sensor tipo PNP.

3.4.3 Conexionado de sensores tipo 2 hilos.

Los sensores NPN o PNP a dos hilos se han hecho populares ya que ellos

reducen el cableado en las aplicaciones de PLCs. Un sensor a dos hilos puede ser

usado como Fuente o como sumidero. Necesita sólo de una pequeña corriente para

mantenerse polarizado, auque cuando se activa permite un mayor flujo de corriente.

Fig. 28 – Conexión de sensores de 2 hilos tipo PNP y NPN.

Finalmente, la conexión de sensores tipo 2 hilos requiere que la tarjeta de

entrada de los PLCs permita una cierta corriente de fuga, que sería la necesaria para

que el sensor opere en stand-by.

Page 38: Teoria Plc

CAPITULO 3. CONEXIONADO E INTERFACES DE ENTRADA / SALIDA.

Prof. Danilo Navarro. Universidad De Oriente. Julio 2001. 33

Fig. 29 – Resumen de conexión de sensores DC tipo NPN.

Fig. 30 – Resumen de conexión de sensores DC tipo PNP.

Page 39: Teoria Plc

CAPITULO 3. CONEXIONADO E INTERFACES DE ENTRADA / SALIDA.

Prof. Danilo Navarro. Universidad De Oriente. Julio 2001. 34

3.5 Entradas AC.

n voltaje AC es uno que no posee polaridad, es decir, no hay positivo o

negativo por el cual preocuparse a la hora de la conexión. Sin embargo

este tipo de entrada posee la desventaja de ser algo peligrosa (SHOCK

eléctrico) si no se toman las precauciones debidas. Los módulos de entrada AC que

existen típicamente trabajan con voltajes de 24, 48, 110, y 220 voltios.

Los módulos de entradas AC son menos comunes que los de entrada DC. La

razón es que la gran mayoría de los sensores actuales utilizan salidas

transistorizadas (NPN o PNP), y un transistor no trabaja con polarizaciones AC.

Fig. 31 – Entrada AC al PLC.

La conexión típica de los elementos de entrada AC a los módulos del PLC se

muestra en la figura de arriba. Comúnmente la línea activa (fase) se conecta a los

switch, mientras que el neutro se conecta a la entrada común del PLC. El terminal de

aterramiento de la red AC debe ser conectado a la carcasa del PLC.

U

Page 40: Teoria Plc

CAPITULO 3. CONEXIONADO E INTERFACES DE ENTRADA / SALIDA.

Prof. Danilo Navarro. Universidad De Oriente. Julio 2001. 35

Los únicos terminales accesibles al usuario son los marcados como COMÚN,

ENTRADA 0000, ENTRADA xxxx. Un switch ordinario como por ejemplo un limit

switch, pushbutton, etc; debe ser conectado directamente a los terminales de

entrada. Un terminal del switch se conecta al conductor activo y el otro terminal va a

la entrada del PLC. Esto por supuesto asume que el terminal común esta conectado

al neutro.

Finalmente, vale mencionar que típicamente una entrada AC toma más tiempo

para que el PLC la vea que la que toma para una entrada DC. Sin embargo en

muchos casos esto no representa un problema ya que normalmente los elementos

de entrada AC son switch o elementos mecánicos que son bastantes lentos en su

reacción. Es común que un PLC requiera que la entrada este ON por 25 o más

milisegundos antes de que él la valide. Estos tiempo son requeridos para efectos de

filtrado de las entradas del PLC.

Page 41: Teoria Plc

CAPITULO 3. CONEXIONADO E INTERFACES DE ENTRADA / SALIDA.

Prof. Danilo Navarro. Universidad De Oriente. Julio 2001. 36

3.6 Conexionado de entradas AC.

Pocas veces los PLCs incluyen la fuente para excitar las entradas y para

alimentar los sensores. Por esa razón hay que disponer de una fuente

externa.

Fig. 32 – Tarjeta de entrada AC típica.

La tarjeta de entrada compara el voltaje con la referencia (COM), si está

dentro de cierto rango, la entrada se activa. En este caso, el neutro es el punto de

referencia de voltaje(COM), por lo que sí existen otras fuentes hay que unir todos los

neutros. También, se debe tomar en cuenta que Tierra NO es igual a COM, el

aterramiento es usado para prevenir “shocks” eléctricos y daños de los equipos.

U

Page 42: Teoria Plc

CAPITULO 3. CONEXIONADO E INTERFACES DE ENTRADA / SALIDA.

Prof. Danilo Navarro. Universidad De Oriente. Julio 2001. 37

3.8 Salidas del PLC.

os módulos de salida raras veces o nunca suplen potencia a las cargas,

más bien ellos actúan como switches. Fuentes externas son conectadas a

las tarjetas de salida de los PLCs y entonces ellas se encargan de conmutar

la potencia (ON u OFF) hacia cada salida. Los rangos típicos de voltajes típicos que

son conmutados en los módulos de salida son lo que se listan a continuación:

• 120 VAC

• 24 VDC

• 220 VAC

• 12 – 48 VAC

• 12 – 48 VDC

• 5 VDC (TTL)

Los módulos de salida normalmente tienen de 8 a 16 salidas de un mismo tipo: a

relés, a transistores, o a TRIACs. Los PLCs deben convertir los niveles lógicos TTL

(5 VDC) presente en el bus de datos a niveles de voltaje externos. Esto se logra con

el uso de circuitos de interfase como los mostrados a continuación, los cuales

además de usar básicamente un optoacoplador para conmutar la circuitería externa,

también utilizan algunos componentes para proteger la circuitería de voltajes

excesivos y de polaridad inversa.

Fig. 33 – Interfase típica para salida a relé.

L

Page 43: Teoria Plc

CAPITULO 3. CONEXIONADO E INTERFACES DE ENTRADA / SALIDA.

Prof. Danilo Navarro. Universidad De Oriente. Julio 2001. 38

Las salidas a relé son las más flexibles con respectos al uso. Ellas son

capaces de conmutar tanto cargas AC como cargas DC. Sin embargo este tipo de

salida es bastante lenta (Tiempo de conmutación típico: 10 ms), de mayor tamaño,

de mayor costo, y de tiempo de vida más corto. Cuando se dedica un relé separado

por cada salida, a menudo se le conoce como contactos secos. Esto permite mezclar

voltajes (AC o DC a distintos niveles de tensión), así como también permite aislar las

salidas, protegiendo las mismas y al PLC mismo. Este método es menos sensitivo a

las variaciones y a los picos de voltaje.

Fig. 34 – Interfase típica para salida a transistor.

Fig. 35 – Interfase típica para salida a TRIAC.

Las salidas a transistores usan del tipo NPN o PNP y están limitadas a servir

cargas DC hasta 1 amp, mientras que las salidas a TRIACs sirven a cargas AC

típicamente hasta 1 Amp. Las salidas a transistores o a TRIACs son conocidas como

salidas conmutadas o salidas estáticas, y su tiempo de conmutación esta

normalmente por debajo de 1 ms..

Page 44: Teoria Plc

CAPITULO 3. CONEXIONADO E INTERFACES DE ENTRADA / SALIDA.

Prof. Danilo Navarro. Universidad De Oriente. Julio 2001. 39

3.9 Salidas a relé.

no de los tipos mas populares de salidas disponibles son las de relé. Esto

se debe a que un relé puede ser usado tanto con cargas AC como con

cargas DC. Algunas de las formas más comunes de cargas son

solenoides, lámparas, motores, etc; las cuales vienen en muchos tamaños eléctricos.

Por esta razón siempre hay que chequear las especificaciones de la carga antes de

conectarla a la salida del PLC, a fin de asegurar que la corriente máxima que ellas

consumen estará dentro de los límites permitidos en las especificaciones de las

salidas del PLC.

Existe un tipo de carga a las que se le debe prestar especial atención: las

llamadas cargas inductivas. Este tipo de carga tiene la tendencia de desarrollar una

sobrecorriente al energizarlas, y lo que es peor, desarrollan un sobre impulso de

voltaje inverso cuando son desactivadas. Esta corriente y voltaje inverso propensa el

daño de la salida a relés del PLC. Típicamente se deben usar diodos, varistores o

circuitos "snubber" para ayudar a combatir el daño de los relés de salida del PLC.

Fig. 36 – Módulo de salidas a relés.

Los relés de salida están dentro del PLC. La figura de arriba muestra un

diagrama circuital típico de las salidas a relés. Cuando la lógica del programa de

aplicación indica que se debe activar una salida física, entonces el PLC aplica un

U

Page 45: Teoria Plc

CAPITULO 3. CONEXIONADO E INTERFACES DE ENTRADA / SALIDA.

Prof. Danilo Navarro. Universidad De Oriente. Julio 2001. 40

voltaje a la bobina del relé correspondiente. Esto a su vez causará el cierre de los

contactos del relé activado. Luego, cuando los contactos cierran se permite el flujo de

corriente a través de la carga conectada en la salida en cuestión. Contrariamente,

cuando la lógica programada indica que se debe desactivar la salida física, el PLC

interrumpe el suministro de voltaje a la bobina del relé, causando la inminente

apertura de los contactos del mismo, y con ello la desactivación de la carga

conectada a esta salida.

Fig. 37 – conexión típica de un módulo de salidas a relés.

La figura de arriba muestra el modo típico de conexión de las salidas a relés

de los PLCs. Aunque la figura muestra sólo la conexión en circuitos DC, también se

puede conectar de manera similar en circuitos AC; ya que un relé es un elemento de

salida no polarizado y en consecuencia él puede conmutar tanto AC como DC. En

este caso se trata de salidas a contactos secos.

Un resumen de las salidas a relés es el siguiente: son relativamente lentas,

pueden conmutar corrientes algo grandes, tiene tiempo de vida relativamente

corto y trabajan tanto en AC como en DC.

Page 46: Teoria Plc

CAPITULO 3. CONEXIONADO E INTERFACES DE ENTRADA / SALIDA.

Prof. Danilo Navarro. Universidad De Oriente. Julio 2001. 41

3.10 Salidas a transistores.

n transistor solo puede conmutar en circuitos de corriente directa. Por esta

razón el transistor no puede ser usado con voltajes de corriente alterna

(AC). En este tipo de aplicación, el transistor es tratado como un switch de

estado sólido. Una pequeña corriente aplicada a la “base” del transistor permite

conmutar una corriente considerablemente mayor a través de su unión Colector-

Emisor. Basado en este fundamento, Cuando la lógica programada en el PLC indica

que se debe activar una salida física, el PLC aplica una pequeña corriente a la base

del transistor de la salida en cuestión y así la misma “cierra sus contactos”. Una vez

establecido el flujo eléctrico a través de los contactos de la salida activada, la carga

conectada a esta salida se activara también.

En general existen dos tipos de transistores usados en la etapa de salida de

los PLCs: Transistores NPN y transistores PNP. El tipo “físico” de transistor usado

también varía de fabricante a fabricante. Algunos de los tipos mas comúnmente

usados son los BJT y los MOSFET. Un transistor tipo BJT(Bipolar Junction

Transistor) generalmente tiene menos capacidad de conmutación (Puede manejar

menos corriente) que uno tipo MOS-FET(Metal Oxide Semiconductor- Field Effect

Transistor). Sin embargo, el BJT tiene un tiempo de conmutación ligeramente más

pequeño que el tiempo de los MOS-FET. Al igual que con las salidas a relés, hay que

chequear las especificaciones dadas por el fabricante acerca de un grupo de salidas

a transistores en particular, a fin de verificar que la máxima corriente de carga no

exceda la del transistor.

La figura que se muestra a continuación incluye un típico diagrama circuital de

salida para una del tipo NPN.

U

Page 47: Teoria Plc

CAPITULO 3. CONEXIONADO E INTERFACES DE ENTRADA / SALIDA.

Prof. Danilo Navarro. Universidad De Oriente. Julio 2001. 42

Fig. 38 – Salida a transistor.

Aquí también se muestra un foto acoplador cuya función es aislar los voltajes y

corrientes del mundo exterior de la circuitería interna del PLC. Cuando la lógica

programada indica que se debe activar esta salida, el circuito interno aplica un

pequeño voltaje al LED del foto acoplador el cual emite entonces una luz que causa

que el fototransistor permita el flujo de una pequeña corriente hacia la base del

transistor conectado a la salida 0500. De aquí que lo que este conectado entre el

COM y el terminal 0500 se active. Cuando la lógica programada indica que se debe

desactivar la salida 0500, entonces se deja de aplicar el voltaje al foto acoplador lo

que causa que ya el LED pare de emitir luz y así el transistor de salida conectado

entre 0500 y COM se desactivara “abriendo” sus contactos.

Fig. 39 – Conexión típica de un módulo de salidas a transistores.

Page 48: Teoria Plc

CAPITULO 3. CONEXIONADO E INTERFACES DE ENTRADA / SALIDA.

Prof. Danilo Navarro. Universidad De Oriente. Julio 2001. 43

La figura anterior muestra la forma típica de conectar una salida a transistor.

Nótese que se trata de un transistor tipo PNP. Si la salida mostrada fuese una tipo

NPN, el terminal común estaría conectado a –V, mientras que el terminal final de

cada carga estaría conectado a +V.

Una cuestión importante ha denotar es que el transistor por lo general no

puede conmutar cargas tan altas como las que conmuta un relé. Para reparar esta

situación, si la carga a conmutar excede la permisible a través del transistor,

entonces se debe conectar un relé de interposición a la salida del PLC, y luego

conectar la carga a los terminales de este relé.

Un resumen de las salidas a transistor sería el siguiente: son rápidas, conmutan

sólo corrientes relativamente pequeñas, poseen largo tiempo de vida y trabajan

solamente con DC.

Page 49: Teoria Plc

Prof. Danilo Navarro. Universidad De Oriente. Julio 2001. 44

CREACIÓN DE PROGRAMAS.

4.1 sustitución de los relés.

l principal propósito de los PLCs es remplazar los relés del mundo real. El

relé es un switch electromagnético. Aplicando un voltaje a la bobina, se

genera un campo magnético que atrae la armadura que sostiene los

contactos, causando entonces que los mismos produzcan la conexión. La

unión de los contactos permite que la corriente fluya entra los dos puntos

estableciendo así un circuito eléctrico.

Fig. 40 – Relé electromecánico.

Aquí se muestra el simple encendido de una campana cuando se cierra el

switch. Existe 3 partes del mundo real: Un switch, un relé y una campana. Siempre

que el switch se cierre se aplica una corriente eléctrica a la campana ocasionando

que la misma suene.

Capítulo

4

E

Page 50: Teoria Plc

CAPITULO 4. CREACIÓN DE PROGRAMAS.

Prof. Danilo Navarro. Universidad De Oriente. Julio 2001. 45

Fig. 41 – Circuito de control por relé.

Nótese que existen 2 circuitos separados. El inferior que es la parte DC, y el

superior que es la parte AC. Aquí se esta usando un relé DC para controlar un

circuito AC, que es justamente la función de los relés.

Ahora, usemos un PLC en lugar de un relé. Lo primero por hacer es crear lo

que se conoce como un diagrama escalera (LADDER). Aunque los PLC son

computadoras que solo reconocen códigos de programación, afortunadamente

muchos de ellos poseen software con el cual puede convertir el diagrama escalera a

código de máquina.

Primer paso: se deben convertir todos los ítem del diagrama de control de la

aplicación a símbolos que el PLC entiende. El PLC no entiende de switch, relés o

campanas, mas bien él interpreta entradas, bobinas de salida, contactos, etc.

Primero se remplazará la batería con un símbolo. Este símbolo es común en

todos los diagramas escalera y son llamados barras de potencial. Las mismas son

simplemente dos líneas verticales, una a cada lada del diagrama. Se puede pensar

que la de la izquierda es el potencial “+”, mientras que la de la derecha es el

potencial “-“. Así el flujo lógico será de izquierda hacia la derecha.

Luego se colocará el símbolo de las entradas. En el ejemplo que se trata se

tiene una entrada del mundo real (el switch) el cual se representará con el símbolo

Page 51: Teoria Plc

CAPITULO 4. CREACIÓN DE PROGRAMAS.

Prof. Danilo Navarro. Universidad De Oriente. Julio 2001. 46

siguiente. Este símbolo también se puede usar para representar el contacto de un

relé.

Fig. 42 – Símbolo de un contacto.

Luego se debe colocar el símbolo de las salidas. En este ejemplo existe una

salida del mundo real (La campana). La salida estará físicamente conectada a la

campana. Dicha salida usa el siguiente símbolo.

Fig. 43 – Símbolo de una bobina.

El suministro de AC es una fuente externa y por lo tanto no se coloca en el

diagrama escalera. El PLC sólo tiene que ver con encender sus salidas sin importar

que está físicamente conectado a ellas.

Segundo paso: Debemos decir al PLC donde están ubicadas cada una de las

entradas y salidas mencionadas. En otras palabras debemos dar todas las

direcciones correspondientes a cada símbolo. Esto es: ¿Dónde esta físicamente

conectado el switch?, ¿Dónde esta conectada la campana?. Cada fabricante de

PLCs tiene su manera diferente de indicar estas direcciones, pero por ahora

asúmase que la entrada tiene la dirección “0000” y que la salida tiene la dirección

“500”

Paso final: Se debe convertir el esquemático de control en una secuencia

lógica de eventos. Esto es que el programa que se escribirá dirá al PLC que hacer

cuando ciertos eventos aparezcan en su contexto. En este ejemplo, se debe indicar

al PLC que hacer cuando el operador active el switch.

Page 52: Teoria Plc

CAPITULO 4. CREACIÓN DE PROGRAMAS.

Prof. Danilo Navarro. Universidad De Oriente. Julio 2001. 47

Fig. 44 – Diagrama escalera del ejemplo.

La figura anterior representa la conversión del esquemático de control a un

diagrama escalera.

Page 53: Teoria Plc

CAPITULO 4. CREACIÓN DE PROGRAMAS.

Prof. Danilo Navarro. Universidad De Oriente. Julio 2001. 48

4.2 Lenguajes de programación.

l estándar IEC 1131-3 define 5 lenguajes de programación que pueden

ser usados para definir los procedimientos de control y automatización.

1. Nemónicos o Lista de instrucciones: Es un lenguaje de bajo nivel basado

en operaciones Booleanas y cuya apariencia es similar al código del lenguaje

ensamblador.

ETIQUETA INSTRUCCIÓN OPERANDO

00001 LD 00001

00002 LDN 00002

00003 AND

00004 LD 00003

00005 LD 00004

00006 AND

00007 OR

00008 ST 00107

00009 END

Tabla 1 – Ejemplo de programación en lista de instrucciones.

2. Diagrama Escalera: Es un lenguaje de programación gráfica que conserva la

estructura de los diagramas eléctricos de control.

E

Page 54: Teoria Plc

CAPITULO 4. CREACIÓN DE PROGRAMAS.

Prof. Danilo Navarro. Universidad De Oriente. Julio 2001. 49

Fig. 45 – Ejemplo de diagrama escalera.

3. Gráficos secuenciales (GRAFCET): Este lenguaje divide el ciclo de proceso

en un cierto número de pasos bien definidos, y en transiciones que los

separan. Este lenguaje es el núcleo del estándar IEC 1131-3. Los otros

lenguajes se usan para describir las acciones realizadas en cada uno de los

pasos, y para describir las condiciones lógicas para pasar de una etapa a otra

(Transiciones).

4. Diagrama de bloques funcionales: Es un lenguaje gráfico que permite al

usuario construir procedimientos complejos mediante la unión de bloques

funcionales prediseñados.

Fig. 46 – Programación con bloques funcionales.

Page 55: Teoria Plc

CAPITULO 4. CREACIÓN DE PROGRAMAS.

Prof. Danilo Navarro. Universidad De Oriente. Julio 2001. 50

Fig. 47 – Ejemplo de diagrama GRAFCET.

5. Texto estructurado: Este es un lenguaje estructurado de alto nivel parecido

al PASCAL, pero más intuitivo para el ingeniero de control. Este lenguaje es

usado principalmente para implementar procedimientos complejos que no

pueden ser expresados mediante lenguajes gráficos.

Fig. 48 – Ejemplo de código de programación con texto estructurado.

Page 56: Teoria Plc

CAPITULO 4. CREACIÓN DE PROGRAMAS.

Prof. Danilo Navarro. Universidad De Oriente. Julio 2001. 51

4.3 Instrucciones básicas.

continuación se detallan las instrucciones básicas de los PLCs.

Cargar(Load): La instrucción cargar o “Load” (LD) se refiere a un contacto

abierto. En otros casos se describe como la instrucción “examinar sí esta on”

(examine if on: XIO). El símbolo usado es el siguiente:

Fig. 49 – Símbolo para la instrucción “LoaD”

Este símbolo es usado cuando se requiere que la señal este presente para

que el símbolo este lógicamente activo. Cuando la entrada física esta activa o en alto

se puede decir que la condición lógica del símbolo es “Cierta”. El PLC examina si la

señal de entrada esta en “on”, es decir, si la entrada física está “on” entonces el

símbolo también estará “on”. Una condición “on” también se conoce como un estado

lógico “1” o un “alto”.

Este símbolo normalmente puede ser usado con entradas internas, entradas

externas y contactos de salida externos.

Cargar Barra(LoadBar): La instrucción “LoaDBar” se refiere a un contacto

cerrado. También es conocida como “examinar si esta cerrado” (examine if closed:

XIC) y como “Cargar negado” (LoaDNot: LDN). Esto es examinar si la entrada física

esta desactivada. El símbolo para la instrucción LoadBar es el siguiente:

Fig. 50 – Símbolo para la instrucción LoaDBar.

Es usado cuando se requiere que el símbolo este activo en ausencia de señal.

Esto es, cuando la señal física esta en “off” o en un nivel “bajo”, entonces el símbolo

A

Page 57: Teoria Plc

CAPITULO 4. CREACIÓN DE PROGRAMAS.

Prof. Danilo Navarro. Universidad De Oriente. Julio 2001. 52

tiene la condición lógica “cierto”. En otras palabras, el PLC examina si la entrada

física esta “off” y luego asigna al símbolo el estado lógico “on”. Una condición “off”

también se trata de un estado lógico “0”.

Este símbolo es usado con entradas internas, entradas externas y algunas

veces con contactos de salida externos.

NOTA: En muchos PLCs las instrucciones LoaD y LoaDBar deben es obligatorio que

sean el primer símbolo a la izquierda del diagrama escalera.

Estado Lógico Load LoadBar

0 Falso Cierto

1 Cierto Falso

Tabla 2 – Resultados lógicos de las instrucciones LOAD y LOADBAR.

Salida(Out): La instrucción Out conocida en algunos casos como Energice la

salida (OutputEnergize) es similar a la bobina de un relé. El símbolo usado es el

siguiente:

Fig. 51 – Símbolo OUT (Bobina de salida)

Cuando en un “peldaño” existe una secuencia de símbolos con condición

lógica “cierta” que preceden esta instrucción, entonces se activa la salida física

correspondiente a la dirección indicada en la instrucción OUT. Esto es equivalente a

una salida que esta normalmente desenergizada. Esta instrucción es usada tanto en

bobinas internas que son simuladas (no existen físicamente) como en salidas hacia

el mundo exterior.

SalidaBarra(Outbar):La instrucción Outbar se conoce también como salida

negada (OutNot). Es similar a la bobina de un relé que esta normalmente energizada.

El símbolo usado para esta instrucción corresponde a:

Page 58: Teoria Plc

CAPITULO 4. CREACIÓN DE PROGRAMAS.

Prof. Danilo Navarro. Universidad De Oriente. Julio 2001. 53

Fig. 52 – Símbolo instrucción OUTBar(Bobina normalmente energizada)

Cuando en un “peldaño” existe una secuencia de símbolos con condición

lógica “Falso” que preceden esta instrucción, entonces se activa la salida física

correspondiente a la dirección indicada en la instrucción OUTBar. Esto es

equivalente a una salida que esta normalmente energizada. Esta instrucción es

usada tanto en bobinas internas que son simuladas (no existen físicamente) como en

salidas hacia el mundo exterior.

Estado Lógico Out OutBar

0 Falso Cierto

1 Cierto Falso

Tabla 3 – Resultados lógicos de las instrucciones OUT y OUTBAR.

Ejemplo

Comparemos un diagrama escalera simple con circuitos de relés

interconectados como el de la figura para apreciar las diferencias.

Fig. 53 – Circuito con lógica a relés.

En el circuito anterior, la bobina se energizara cuando exista un circuito

cerrado entre los terminales positivo y negativo de la batería. Este mismo circuito se

puede representar mediante un diagrama escalera que consiste de peldaños

individuales justo como en una escalera real. Cada peldaño debe contener una o

más entradas, y una o más salidas. La primera instrucción en un peldaño debe ser

siempre una instrucción de entrada, y la última instrucción del peldaño debe ser

siempre una salida o su equivalente.

Page 59: Teoria Plc

CAPITULO 4. CREACIÓN DE PROGRAMAS.

Prof. Danilo Navarro. Universidad De Oriente. Julio 2001. 54

Fig. 54 – Diagrama escalera del ejemplo.

Nótese que en este diagrama escalera se ha usado las instrucciones LoaD y

OUT, además de la instrucción END que requieren algunos PLCs para indicar que es

el último peldaño del programa. Algunos PLCs también requieren la instrucción

ENDH en el último peldaño antes de la instrucción END.

Page 60: Teoria Plc

CAPITULO 4. CREACIÓN DE PROGRAMAS.

Prof. Danilo Navarro. Universidad De Oriente. Julio 2001. 55

4.4 Registros de direcciones en los PLCs.

n el ejemplo anterior, cambiando el switch 2 por un símbolo de contacto a

la apertura (LoaDBar), se cambiaría el diagrama escalera a la siguiente

forma:

Fig. 55 – Diagrama escalera con dirección de operandos.

Nótese que a cada símbolo (o instrucción) ahora se le asigno una dirección.

Esta dirección especifica una cierta área de almacenamiento en los registros de

datos del PLC, de tal manera que el estatus de la instrucción (verdadero o falso)

puede ser almacenado. Muchos PLCs usan registros de 16 bits. En el ejemplo

anterior se esta asumiendo que SW1 estará en principio físicamente abierto (off) y

que el SW2 estará en principio físicamente cerrado (on). Igualmente se esta

asumiendo que el registro 00 almacena el estatus de las entradas y que el registro 05

es la tabla de imagen de las salidas.

REGISTRO 00 15 14 13 12 11 10 09 08 07 06 05 04 03 02 01 00 1 0

REGISTRO 05 15 14 13 12 11 10 09 08 07 06 05 04 03 02 01 00 0

Tabla 4 – Registros del PLC.

En las tablas anteriores se puede apreciar que en el registro 00, el bit 00 (esto

es entrada 0000) tiene un estatus bajo, mientras que el bit 01 (entrada 0001) tiene un

estatus alto. Por otra parte el registro 05 muestra que el bit 00 (salida 0500) posee un

estatus bajo.

E

Page 61: Teoria Plc

CAPITULO 4. CREACIÓN DE PROGRAMAS.

Prof. Danilo Navarro. Universidad De Oriente. Julio 2001. 56

Por otra parte, los estados lógicos bajo (0) y alto (1) indican cuando la

instrucción es Falsa o Cierta respectivamente.

CONDICIÓN LÓGICA DEL SÍMBOLO BITS LÓGICOS LD LDB OUT 0 Logic Falso Cierto Falso 1 Lógico Cierto Falso Cierto

Tabla 5 – Resultados lógicos de las instrucciones del diagrama escalera anterior.

El PLC sólo energizara una salida cuando todas las condiciones lógicas

en un peldaño sean Cierta. De aquí que mirando la tabla anterior se concluya que

en el ejemplo el SW1 debe poseer un estatus y estado lógico alto (1), mientras que el

SW2 debe poseer un estatus bajo, para que así el PLC asigne a la salida un estado

lógico 1(cierto), energizando la salida física. Si alguna instrucción en el peldaño es

Falso, entonces el estado lógico de la salida será Falso y de esa manera no se

activará la salida física.

En la siguiente tabla de la verdad se exploran las distintas combinaciones a

las que puede dar lugar el ejemplo que se esta analizando.

Estatus de entradas Estatus Salida Estado Lógico del símbolo SW1 SW2 BOBINA LD 0000 LDB 0001 OUT 0500

Abierto(0) Abierto(0) Desenergizada 0 1 0 Abierto(0) Cerrado(1) Desenergizada 0 0 0 Cerrado(1) Abierto(0) energizada 1 1 1 Cerrado(1) Cerrado(1) Desenergizada 1 0 0

Tabla 6 – Tabla de la verdad del ejemplo.

Page 62: Teoria Plc

CAPITULO 4. CREACIÓN DE PROGRAMAS.

Prof. Danilo Navarro. Universidad De Oriente. Julio 2001. 57

4.5 Un ejemplo de control de nivel.

onsiderese la siguiente aplicación: Sea desea controlar el suministro de

aceite proveniente de un tanque. Para lo anterior se usarán dos sensores:

uno en las proximidades del fondo del tanque y el otro en el borde superior.

Fig. 56 – Tanque dispensador de aceite.

Se desea que la bomba de llenado inyecte aceite al tanque hasta que el

sensor superior se active. Alcanzada la condición anterior se debe apagar el motor

de la bomba y mantenerlo desactivado hasta que el tanque se vacié y caiga por

debajo del nivel del sensor inferior. Entonces se debe encender nuevamente la

bomba de llenado y repetir el proceso según lo descrito anteriormente.

En esta aplicación son necesarios 3 I/O (Entradas / salidas): 2 entradas para

los sensores y 1 salida para el motor de la bomba. Asúmase por ejemplo que ambos

sensores serán normalmente cerrados (NC) del tipo de sensores de nivel de fibra

óptica. Cuando ellos NO están inmersos en el liquido estarán activados.

Contrariamente, cuando están inmersos en el liquido estarán desactivados.

Por otra parte, hay que asignarle a cada una de las Entradas / salidas una

dirección en el PLC, para que el mismo conozca donde están físicamente

conectadas tanto las entradas como las salidas. Las direcciones escogidas se

muestran en la siguiente tabla:

C

Page 63: Teoria Plc

CAPITULO 4. CREACIÓN DE PROGRAMAS.

Prof. Danilo Navarro. Universidad De Oriente. Julio 2001. 58

Entrada Dirección Salida Dirección Relés Internos Sensor bajo nivel 0000 Motor 0500 1000 Sensor alto nivel 0001

Tabla 7 – Asignación de E/S y bits internos del ejemplo.

La siguiente figura muestra el diagrama escalera resultante de esta aplicación.

Nótese que se están usando relés internos aunque no son estrictamente necesarios.

Se pueden usar los contactos de este relé tantas veces como se desee. En este

ejemplo se usan los contactos dos veces para simular un relé de 2 contactos.

Recuérdese que estos relés no existen físicamente en el PLC, sino que en vez de

eso son bits en un registro que el PLC usa para simular este tipo de utilidad.

Fig. 57 – Diagrama escalera para el control de nivel.

Se debe recordar que la principal razón para usar los PLCs en la mayoría de

las aplicaciones es para sustituir los relés del mundo real, y en ese sentido los relés

internos del PLC hacen esta acción por lo demás posible. Es imposible indicar

cuantos relés internos vienen en cada tipo o marca de PLC. Algunos incluyen cientos

de relés, otros miles de relés. Típicamente, el tamaño del PLC (no es tamaño físico)

es el factor que marca la pauta. Si se esta usando un micro-PLC con pocas entradas

/ salidas, normalmente no se necesitarán muchos relés internos, pero si en cambio

se esta usando un PLC mayor con cientos o miles de entradas / salidas, obviamente

se necesitaran gran cantidad de relés internos.

Page 64: Teoria Plc

CAPITULO 4. CREACIÓN DE PROGRAMAS.

Prof. Danilo Navarro. Universidad De Oriente. Julio 2001. 59

4.6 Ejecución del programa de control de nivel.

nicialmente el tanque esta vacío. Por lo tanto la entrada 0000 esta en 1 y la

entrada 0001 también esta en 1. Así al final del primer SCAN se activa el relé

interno 1000. Al comienzo del segundo SCAN las condiciones permanecen

iguales excepto que ahora el bit interno 1000 se está auto reteniendo a través de su

contacto 1000 del segundo peldaño, y al final de este SCAN se activa la salida física

0500.

a)

b)

Fig. 58 – a) Scan 1. b) Scan 2 - 100.

Gradualmente el tanque se va llenando gracias a que 0500 esta activa y con

esto se activa el motor de la bomba.

Después de 100 SCANs el nivel de aceite alcanza el sensor de bajo nivel por

lo que el se activa y abre su contacto. De este manera pasa a un estado lógico

FALSO .

Fig. 59 – Scan 101 – 1000.

I

Page 65: Teoria Plc

CAPITULO 4. CREACIÓN DE PROGRAMAS.

Prof. Danilo Navarro. Universidad De Oriente. Julio 2001. 60

Nótese que aun cuando el sensor 0000 es FALSO, aun existe el camino lógico

de izquierda a derecha a trabes del relé interno 1000. Este relé interno permanecerá

en ese estado hasta tanto el sensor 0001 se haga FALSO y se rompa de esta

manera el camino lógico que mantiene al relé 1000. Esto último ocurrirá después del

SCAN 1000 que es cuando el nivel de aceite alcanzará el sensor de nivel alto

ocasionando que éste abra su contacto entrando en una condición lógica FALSO.

a)

b)

Fig. 60 – a) Scan 1001. b) Scan 1002.

Ya que no existe ningún camino lógico hacia la salida 0500, la misma se

desactivara apagando así el motor de llenado.

Después del SCAN 1050 el nivel de aceite cae por debajo del sensor de nivel alto y

él se hace CIERTO otra vez.

Fig. 61 – Scan 1050.

Page 66: Teoria Plc

CAPITULO 4. CREACIÓN DE PROGRAMAS.

Prof. Danilo Navarro. Universidad De Oriente. Julio 2001. 61

Nótese que aunque el sensor de nivel alto se hace CIERTO, aun no hay

camino lógico hacia el relé interno 1000 y por lo tanto el motor sigue apagado.

Después del SCAN 2000 el nivel de aceite cae por debajo del sensor de bajo

nivel, haciéndose CIERTO y estableciendo un camino lógico CIERTO hacia el relé

1000. En este punto se cae nuevamente en la condición del SCAN 1, repitiéndose el

proceso descrito.

(VER ANIMA1.PPT EN EL CD ANEXO).

Page 67: Teoria Plc

Prof. Danilo Navarro. Universidad De Oriente. Julio 2001. 62

PRINCIPALES INSTRUCCIONES.

5.1 Álgebra Booleana.

l álgebra Booleana permite realizar operaciones básicas con los bits

contenidos en los registros del PLC. Las funciones básicas incluyen las

operaciones: AND, OR y XOR.

• AND- Esta función habilita el uso de la tabla de la verdad mostrada a

continuación.

Resultado = A AND B

A B Resultado

0 0 0

1 0 0

0 1 0

1 1 1

Tabla 8 – Tabla de la verdad función AND.

Aquí se puede observar que la operación AND esta relacionada con la

multiplicación ya que la única vez que el resultado es cierto es cuando los dos

operándoos son ciertos al mismo tiempo.

La función AND es útil sobretodo cuando el PLC no cuenta con funciones de

enmascaramientos de registros. Cuando se trabaja a nivel de bits, la función de

enmascaramiento permite dejar en un registro dado un único bit. Esto se debe a

que cualquier bit que sea operado a través de una AND con sigo mismo

Capítulo

5 E

Page 68: Teoria Plc

CAPITULO 5. PRINCIPALES INSTRUCCIONES.

Prof. Danilo Navarro. Universidad De Oriente. Julio 2001. 63

permanecerá en el valor cierto o falso que ostente en ese momento. Por ejemplo

si se desea hacer cero solamente 12 de los 16 bits de un cierto registro, se puede

realizar una AND con un registro de 0’s en todas las posiciones excepto en los

cuatro bits donde se desea mantener el estado que poseen.

• OR- Esta función se basa en la tabla de la verdad que a continuación se

presenta.

Resultado = A OR B

A B Resultado

0 0 0

1 0 1

0 1 1

1 1 1

Tabla 9 – Tabla de la verdad función OR.

Aquí se puede ver que la función OR esta relacionada con la adición ya que

mientras A o B sean ciertos, el resultado será cierto.

• EXOR- Esta función sigue la tabla de la verdad presentada a continuación.

Resultado = A XOR B

A B Resultado

0 0 0

1 0 1

0 1 1

1 1 0

Tabla 10 – Tabla de la verdad función XOR.

Aquí se puede ver que la función no esta relacionada a nada. Una nemotécnica

para recordar sus resultados es pensar que los operando deben ser opuestos

para que el resultado sea cierto. Si por el contrario los operando son iguales el

resultado será falso.

Esta operación es algunas veces útil cuando se desea comparar dos bits en dos

Page 69: Teoria Plc

CAPITULO 5. PRINCIPALES INSTRUCCIONES.

Prof. Danilo Navarro. Universidad De Oriente. Julio 2001. 64

registros y resaltar cuales son diferentes. Esta operación es igualmente necesaria

cuando se calcula alguna checksum sobre todo en caso de protocolos de

comunicaciones. Una operación de checksum se usa comúnmente para chequear

los errores en las comunicaciones.

Las instrucciones del diagrama escalera son llamadas típicamente como: AND,

ANDA, ANDW, OR, ORA, ORW, XOR, EORA XORW.

Existen generalmente 2 métodos para llevar a cabo estas instrucciones. El primer

método se refiere a una instrucción simple que requiere de tres entradas:

• Operando A- Esta es la dirección de memoria del primer operando.

• Operando B- Esta es la dirección de memoria del segundo operando.

• Destino- Esta es la dirección de memoria donde se almacenará el resultado.

Por ejemplo si A AND B = 0 el resultado se colocará automáticamente en la

dirección de memoria indicada en el destino.

Fig. 62 – Símbolo AND

Las instrucciones AND, OR, y XOR en cualquier PLC típico tendrían un

símbolo parecido al de arriba. Remplazando por supuesto la etiqueta AND por OR o

XOR según corresponda. En el símbolo anterior, El operando A esta en la dirección

de memoria DM100, El operando B esta en la dirección de memoria DM101 y el

resultado se almacenará en la dirección de memoria DM102. Por lo tanto aquí se ha

creado simplemente la ecuación Booleana DM100 AND DM101 = DM102. El

resultado es almacenado automáticamente en la dirección DM102.

El siguiente diagrama escalera muestra el uso de la función Boolena AND.

Page 70: Teoria Plc

CAPITULO 5. PRINCIPALES INSTRUCCIONES.

Prof. Danilo Navarro. Universidad De Oriente. Julio 2001. 65

Fig. 63 – Instrucción AND en el diagrama escalera.

Nótese igualmente el uso de la instrucción DIFU para garantizar que la

instrucción AND se ejecute solamente durante un scan una vez que se halla activado

la entrada de validación 0000.

Fig. 64 – Símbolo AND(método de la instrucción dual)

El método de la instrucción dual usa un símbolo similar al que se muestra

arriba. En este método sólo se suministra con el símbolo la dirección del operando B.

La dirección del operando A se suministra con la operación LDA, y la dirección del

destino del resultado se suministra con la operación STA.

Fig. 65 – Uso de la instrucción dual para el AND en el diagrama escalera.

Page 71: Teoria Plc

CAPITULO 5. PRINCIPALES INSTRUCCIONES.

Prof. Danilo Navarro. Universidad De Oriente. Julio 2001. 66

El resultado es idéntico al obtenido con el método de la instrucción simple. Para

realizar las operaciones de OR y XOR con el método dual, sólo se debe cambiar la

etiqueta del símbolo AND por la correspondiente OR o XOR.

Page 72: Teoria Plc

CAPITULO 5. PRINCIPALES INSTRUCCIONES.

Prof. Danilo Navarro. Universidad De Oriente. Julio 2001. 67

5.2 Instrucciones memorizadas.

as bobinas de salida son parte esencial de los programas en los PLCs, pero

hay que tomar en cuenta que ellas se activan mientras que todas las

instrucciones que la preceden en el peldaño están también activas.

Regresando al ejemplo de los relés y la campana previamente visto, ¿Qué pasaría si

no se cuenta con un switch ON / OFF?. Se tendrá que mantener entonces el

pulsador accionado tanto tiempo como se desee que la campana suene. En los

PLCs, la instrucción de retención permite que se usen switch de acción momentánea

para mantener una bobina activa indefinidamente hasta tanto se le aplique la

instrucción de liberación.

La instrucción de retención comúnmente se llama SET, mientras que la

instrucción de liberación se llama RESET. El diagrama siguiente muestra el uso de

estas dos instrucciones.

Fig. 66 – Uso de la instrucción SET y RESET.

Aquí se están usando dos switches tipo “push button”. Uno de ellos esta

físicamente conectado a la entrada 0000 del PLC, mientras que el otro esta

conectado a la entrada 0001 del mismo. Cuando el operador oprime el switch 0000

la instrucción "set 0500" se hace cierta por lo que entonces se activa la salida física

0500. Aunque el operador deje de oprimir el switch, la salida 0500 permanecerá

L

Page 73: Teoria Plc

CAPITULO 5. PRINCIPALES INSTRUCCIONES.

Prof. Danilo Navarro. Universidad De Oriente. Julio 2001. 68

activada ya que esta enclavada en ON. La única manera de desactivar la salida 0500

es activando la entrada 0001, lo que causará que la instrucción "res 0500" se haga

cierta restaurando así la salida física 0500.

(VER ANIMA2.PPT EN EL CD ANEXO)

Fig. 67 – Figura animación uso de la instrucción SET y RESET.

Por otra parte, ¿Qué pasaría si se activan las dos entradas(0000 y 0001) al

mismo tiempo?, ¿La salida 0500 estará enclavada en ON o restaurada en OFF?

Para responder a esta pregunta se debe pensar en la secuencia del scan que

ejecuta el PLC. El diagrama de escalera siempre es barrido de arriba hacia a bajo y

de izquierda a derecha. Lo primero que se ejecuta en el scan es el monitoreo de las

entradas física. Esto arrojará que tanto 0000 como 0001 están activas. Luego el PLC

ejecuta el programa y resuelve: Comenzando por el tope izquierdo, como 0001 esta

activa entonces la salida 0500 debe estar lógicamente activa. En segundo lugar,

como en el próximo peldaño 0001 esta activa, entonces la salida 0500 debe estar

lógicamente inactiva o en cero. Finalmente, en la última parte del scan que es donde

se actualizan las salidas, se mantendrá el último estado lógico (reset 0500) de la

salida 0500 que no es otro distinto a que la salida física se mantenga desactivada.

Page 74: Teoria Plc

CAPITULO 5. PRINCIPALES INSTRUCCIONES.

Prof. Danilo Navarro. Universidad De Oriente. Julio 2001. 69

5.3 Contadores.

n contador es un elemento diseñado simplemente para contar eventos, sin

embargo dependiendo del fabricante pueden existir en general tres tipos

de contadores: Contadores ascendentes los cuales cuentan solamente

ascendentemente (1, 2, 3, …) y que usualmente se denotan como CTU(count up);

Contadores descendentes los cuales cuentan solamente descendentemente (9, 8,

7, …) y que usualmente se denotan como CTD (count down); y Contadores

bidireccionales los cuales cuentan tanto ascendente como descendentemente (1, 2,

3, 4, 3, 2, 3, 4, 5,...) y que usualmente se denotan como UDC(up-down counter) o

simplemente C.

También, muchos fabricantes incluyen un numero limitado de contadores de

alta velocidad denotados usualmente como HSC (high-speed counter). Típicamente

el contador rápido es un dispositivo del hardware del PLC, mientras que los

contadores mencionados anteriormente son implementados mediante software. Es

decir, mientras que los contadores ordinarios no existen físicamente sino que son

simulados en el programa monitor del PLC, los contadores de alta velocidad si

existen como elemento del hardware y funciona de esta manera en forma

independiente del tiempo de scan del PLC.

Una buena regla práctica es simplemente usar los contadores normales

(software) cuando los pulsos que se estén contando arriben con periodos mayores a

2 veces el tiempo del SCAN. Por ejemplo, si el tiempo de SCAN es 2 ms y los pulsos

que se están contado llegan cada 4 ms o más, es posible usar los contadores

normales. Si al contrario los pulsos arriban cada 3 ms hay que hacer uso de los

contadores rápidos.

Típicamente los contadores de 16 bits pueden contar desde 0 hasta 9999

usando BCD (decimal codificado en binario), -32,768 hasta +32,767 o 0 hasta 65535

usando codificación binaria normal. Cuando el programa esta corriendo en el PLC, el

U

Page 75: Teoria Plc

CAPITULO 5. PRINCIPALES INSTRUCCIONES.

Prof. Danilo Navarro. Universidad De Oriente. Julio 2001. 70

valor actual o el acumulado del contador puede ser visualizado en la consola de

programación y ajuste del PLC (Hand held).

A continuación se pueden ver algunos ejemplos de la instrucción del contador.

Fig. 68 – Bloque contador típico.

Este contador usa 2 entradas: la primera es la entrada de RESET la cual al

activarse restaura a cero el valor actual o el acumulado del PLC. La segunda entrada

es por donde entrarían los pulsos que se desean contar. Por ejemplo si se esta

contando cuantas piezas pasan por el frente de un detector inductivo que esta

físicamente conectado a la entrada 0001, entonces se debe colocar un contacto al

cierre con la dirección 0001 en la segunda línea de entrada(pulse).

Cxxx es la dirección o el nombre del contador. Si se desea nombrarlo como el

contador cero (0), se debe colocar ahí "C000".

yyyyy es el preset o el número de pulso que se desean contar antes de que el

contador active su salida. Por ejemplo, si se desean contar 5 piezas antes de que se

active la salida física que activa el mecanismo de embalaje de las piezas, habrá que

colocar ahí el número 5 en decimal. Cuando el contador ha alcanzad el valor del

preset entonces él activara un conjunto de contactos etiquetados también con la

dirección C000 y que pueden ser utilizados en cualquier parte del programa de la

aplicación.

.

Page 76: Teoria Plc

CAPITULO 5. PRINCIPALES INSTRUCCIONES.

Prof. Danilo Navarro. Universidad De Oriente. Julio 2001. 71

Fig. 69 – Uso del Bloque contador en un diagrama escalera.

En el diagrama escalera anterior se puede apreciar como el contador C000

debe contar 100 pulsos provenientes de la entrada 0001 antes de activar la salida

0500. El sensor 0002 es el encargado de restaurar a cero el contador.

Fig. 70 – Símbolo típico de un contador bidireccional .

En este tipo de contador se requieren 3 entradas: La entrada de RESET la

cual tiene la misma función que en el contador mencionado anteriormente, la entrada

UP para contar ascendentemente y la entrada DOWN para avanzar

descendentemente. En este ejemplo se llamara al contador como UDC000 y se le

pondrá un valor de preset igual a 1000. (se desean contar 1000 piezas. El diagrama

escalera correspondiente se muestra a continuación.

Page 77: Teoria Plc

CAPITULO 5. PRINCIPALES INSTRUCCIONES.

Prof. Danilo Navarro. Universidad De Oriente. Julio 2001. 72

Fig. 71 – Uso del Bloque contador bidireccional en un diagrama escalera.

(VER ANIMA3.PPT EN EL CD ANEXO)

Fig. 72 – Figura animación uso del bloque contador.

Page 78: Teoria Plc

CAPITULO 5. PRINCIPALES INSTRUCCIONES.

Prof. Danilo Navarro. Universidad De Oriente. Julio 2001. 73

5.4 Temporizadores.

os temporizadores son instrucciones que aguardan una predeterminada

cantidad de tiempo antes de ejecutar una acción. Existen diferentes tipos de

temporizadores según el fabricante. Los más comunes son los siguientes:

• Temporizadores al trabajo (On-Delay timer)- Este tipo de temporizador

simplemente retraza el encendido. En otras palabras, después que un sensor

(entrada) activa la temporización, el temporizador espera por un tiempo

predeterminado antes de activar su salida. Este es el más común de los

temporizadores y usualmente se denota como TON (timer on-delay), TIM

(timer) o TMR (timer).

• Temporizadores al reposo (Off-Delay timer)- Este temporizador retarda la

desactivación de una salida. Por ejemplo, después que un sensor detecta un

objetivo, se activa inmediatamente una salida, y luego cuando ya el sensor no

esta detectando más el objetivo, la salida se mantiene encendida por un

tiempo determinado antes de desactivarla. El símbolo para este tipo de

temporizadores es TOF (timer off-delay) y es menos común que el

temporizador ON-DELAY.

• Temporizador acumulativo o de retención- Este tipo de temporizador

requiere de dos entradas. Una de las entradas inicia la temporización y la otra

la restaura a cero. La temporización de los mencionados anteriormente es

restaurada a cero una vez que la entrada del sensor que los activa cambia de

estado sin que haya concluido la temporización, mientras que este tipo de

temporizador mantiene el tiempo de temporización que haya transcurrido

cuando el mismo sea desactivado a mitad del ciclo de temporización. Por

ejemplo, si se desea conocer cuanto tiempo estuvo un sensor activado

durante el intervalo de una hora, hay que usar temporizador acumulativo ya

que si se usan los ordinarios (on / off delay) el temporizador que lleva la

L

Page 79: Teoria Plc

CAPITULO 5. PRINCIPALES INSTRUCCIONES.

Prof. Danilo Navarro. Universidad De Oriente. Julio 2001. 74

cuenta del tiempo se mantendría reseteado cada vez que el sensor se

desactive / active. Un símbolo para este tipo de temporizador es RTO

(retentive timer) o TMRA (accumulating timer).

Finalmente, mientras el programa de aplicación esta corriendo en el PLC, se

puede acceder mediante la consola de programación al tiempo de temporización

transcurrido o al acumulado según corresponda. Estos tiempos mencionados se

expresan en pulsos de reloj que de acuerdo al fabricante se ofrecen en varias bases

de tiempo, siendo las más típicas: 1, 10, 100 mseg, 1 seg y 1 min. Los valores de

preselección para las funciones de temporización van desde 0 hasta 9999, o desde 0

hasta 65535 pulsos de reloj.

Fig. 73 – Símbolo básico de una instrucción de temporización.

Este temporizador es uno del tipo on-delay direccionado como Txxx. Cuando

la entrada de activación (enable) se pone en un nivel alto comienza la temporización.

Cuando los pulsos de temporización han alcanzado el valor de preselección yyyyy,

él activará sus contactos que se podrán usar en cualquier forma y punto del

programa de aplicación. Hay que recordar que la duración de cada pulso de reloj

depende del tiempo base usado el cual se ajusta para cada temporizador con la

ayuda de la consola de programación.

Fig. 74 – Uso del temporizador on delay en el diagrama escalera.

Page 80: Teoria Plc

CAPITULO 5. PRINCIPALES INSTRUCCIONES.

Prof. Danilo Navarro. Universidad De Oriente. Julio 2001. 75

En este diagrama cuando la entrada 0001 se activa, el temporizador T000 (un

temporizador con base de tiempo igual a 100ms) comienza a contar los pulsos de

base de tiempo hasta que alcance los 100 pulsos que son el valor de preselección.

Como cada pulso corresponde a 100 ms, entonces la temporización total será de 10

seg (100 pulsos X 100ms = 10,000ms =10 segundos). Cuando los 10 segundos se

han agotado, el contacto de T000 cierra activando así la salida 0500. También,

cuando la entrada 0001 cae a cero el temporizador T000 se restaura a cero

causando la apertura de su contacto, y con ello la desactivación de la salida 0500.

(VER ANIMA4.PPT EN EL CD ANEXO)

Fig. 75 – Figura animación uso del bloque temporizador on delay.

Un temporizador de acumulación típico sería como el siguiente.

Fig. 76 – Símbolo básico de un temporizador acumulativo.

Page 81: Teoria Plc

CAPITULO 5. PRINCIPALES INSTRUCCIONES.

Prof. Danilo Navarro. Universidad De Oriente. Julio 2001. 76

Este temporizador es direccionado como Txxx. Cuando la entrada de

activación (enable) se pone en un nivel alto comienza la temporización. Cuando los

pulsos de temporización han alcanzado el valor de preselección yyyyy, él activará

sus contactos que se podrán usar en cualquier forma y punto del programa de

aplicación. Si por ejemplo, la entrada ENABLE cae a cero antes de que termine la

temporización, el valor en curso se conservará, y cuando la entrada vuelva a su nivel

alto continuará la temporización tomando en cuenta el tiempo ya computado. La

única manera de forzar al temporizador a que comience la temporización desde el

principio es poner un nivel alto en la entrada de RESET.

A continuación esta la instrucción de temporización en el diagrama escalera.

Fig. 77 – Uso del temporizador acumulativo en el diagrama escalera.

En este diagrama cuando la entrada 0002 se activa, el temporizador T000 de

base de tiempo 10 ms comienza a contar pulsos hasta alcanzar 100 unidades que

corresponden a 1 segundo (100 pulsos X 10ms = 1,000ms= 1 segundo). Cuando se

alcanza la temporización de 1 segundo se cierra el contacto T000, activando de esta

manera la salida 0500. Si la entrada 0002 cae hasta cero el tiempo contabilizado

hasta el momento se retendrá hasta que la misma vuelva al nivel alto continuando la

temporización en el punto que se dejó, o hasta que se active la entrada 0001

(RESET) con lo que se restauraría a cero el tiempo contabilizado y se iniciaría desde

cero cuando se active 0002.

Page 82: Teoria Plc

CAPITULO 5. PRINCIPALES INSTRUCCIONES.

Prof. Danilo Navarro. Universidad De Oriente. Julio 2001. 77

(VER ANIMA5.PPT EN EL CD ANEXO)

Fig. 78 – Figura animación uso del bloque temporizador acumulativo.

Page 83: Teoria Plc

CAPITULO 5. PRINCIPALES INSTRUCCIONES.

Prof. Danilo Navarro. Universidad De Oriente. Julio 2001. 78

5.5 Precisión de los Temporizadores.

uando se utilizan temporizadores con tiempos de retardo de algunos

segundos, no hay gran cuidado con su precisión ya que la misma es

insignificante. Sin embargo, cuando se utilizan temporizadores en el rango

de los milisegundos, su precisión si es de cuidado.

En general hay dos tipos de error a tomar en cuenta cuando de temporizadores

se trata: error de entrada y error de salida. El error total es la suma de los dos

anteriores.

• Error de entrada- Este tipo de error ocurre dependiendo del momento del

ciclo de scan del PLC donde se active la entrada del temporizador. Si la

entrada del temporizador se activa inmediatamente después que el PLC ha

monitoreado o capturado el status de las entradas durante el ciclo de scan, el

error de entrada será máximo (mayor o igual al tiempo de scan). Esto se debe

a que las entradas son capturadas solamente una vez durante el ciclo de

scan, y a que además hay que esperar hasta que la instrucción de

temporización sea ejecutada. Si la instrucción de temporización es la última

del peldaño, el error será aun mayor.

• Error de salida- Este tipo de error depende del momento dentro del programa

cuando el temporizador agote su tiempo de temporización, y de cuando el

PLC finalice de ejecutar la parte del programa del scan para entonces ir a la

parte donde actualiza las salidas. Esto se debe a que el temporizador finaliza

durante el tiempo de ejecución del programa pero el PLC debe primero

finalizar de ejecutar el resto del programa antes de activar la salida apropiada.

Abajo hay un diagrama donde se ilustra el peor caso de error de entrada. Ahí se

nota que el mismo corresponde a 1 tiempo completo de ejecución del scan + 1

tiempo de ejecución del programa. También hay que recordar que el tiempo de

C

Page 84: Teoria Plc

CAPITULO 5. PRINCIPALES INSTRUCCIONES.

Prof. Danilo Navarro. Universidad De Oriente. Julio 2001. 79

ejecución del programa varia de programa a programa, y que en ese sentido

depende del tipo y cantidad de instrucciones con que cuente el mismo.

Fig. 79 – Diagrama error de entrada.

Igualmente, a continuación se ilustra el peor caso de error de salida. Ahí se

puede ver que el mismo será igual a 1 tiempo completo de ciclo de scan.

Fig. 80 – Diagrama error de salida.

Basado en lo expuesto anteriormente, se puede concluir que el peor tiempo de

error posible correspondería a:

1 tiempo de scan + 1 tiempo de ejecución de programa + 1 tiempo de scan

= 2 tiempos de scan + 1 tiempo de ejecución de programa.

Todo lo anterior significa que aunque muchos fabricantes actualmente ofrecen

temporizadores con resolución de 1 ms, estos no deben ser usados para

temporizaciones menores que algunos milisegundos, y esto asumiendo que el tiempo

de scan sea de 1 ms. Si el tiempo de scan de la aplicación es por ejemplo 5 ms, es

preferible no usar temporizaciones inferiores a 15 ms.

Page 85: Teoria Plc

CAPITULO 5. PRINCIPALES INSTRUCCIONES.

Prof. Danilo Navarro. Universidad De Oriente. Julio 2001. 80

Por otra parte también es de notar que los errores mencionados son sólo

errores debido al software; sin embargo existen también errores de entrada y salida

que son debido al hardware.

El error debido al hardware de entrada se debe al tiempo que toma el PLC

para validad una entrada, lo cual corresponde en muchos casos a 10 ms. La mayoría

de los PLCs requieren que la entrada este físicamente en alto por algunos ciclos de

scan antes de determinar que efectivamente es una entrada válida. Esto último es

para eliminar ruido y efectos de rebote en switches.

El error de tiempo de hardware en las salidas se debe al tiempo que ellas

toman para efectivamente activarse a partir del momento en la que el software del

PLC las activo. Típicamente un transistor toma aproximadamente 0.5 ms para

activarse plenamente, mientras que un relé electromecánica toma aproximadamente

10 ms.

Finalmente, si todos estos errores son demasiado grandes para la aplicación,

es mejor considerar el uso de temporizadores de hardware externo.

Page 86: Teoria Plc

CAPITULO 5. PRINCIPALES INSTRUCCIONES.

Prof. Danilo Navarro. Universidad De Oriente. Julio 2001. 81

5.6 Instrucción UN-SCAN.

sta instrucción (ONE-SHOT) es usada para hacer algo durante un ÚNICO

SCAN. Muchos fabricantes ofrecen ONE-SHOT que son sensibles a un

flanco subiente (Transición de off a on) y otros que son sensibles a los

flancos descendientes (Transición de on a off). Alguno de los símbolos más usados

para este tipo de instrucción corresponde a: difu/difd (differentiate up/down),

sotu/sotd (single output up/down), osr (one-shot rising) y otros.

Fig. 81 – Símbolo típico de instrucción ONE-SHOT.

Arriba se muestra el símbolo para una instrucción one-shots difu. Una

instrucción difd usaría el mismo símbolo excepto que la etiqueta interna sería “difd".

Algunos fabricantes usan como símbolo las mismas barras exteriores cambiándole la

etiqueta interna por una “P” para la activación por flanco ascendente y una “N” para

flanco descendente.

Esta instrucción es a menudo usada en conjunto con otras instrucciones

avanzadas para realizar una actividad que debe tomar lugar solamente una vez. Por

ejemplo, considérese la implementación de un flip-flop. Se desea que la primera vez

que un operador accione un pulsador se active una salida y se mantenga

memorizada en ese estado hasta tanto el operador vuelva a accionar el pulsador.

E

Page 87: Teoria Plc

CAPITULO 5. PRINCIPALES INSTRUCCIONES.

Prof. Danilo Navarro. Universidad De Oriente. Julio 2001. 82

Fig. 82 – Uso del DIFU para implementación de un FLIP-FLOP.

• Peldaño 1- Cuando la entrada 0000 se hace cierta, el DIFU 1000 también se

hace cierto.

• Peldaño 2- Como el contacto NO 1000 s cierto, NO 1001 permanece en

falso, NC 1001 permanece cierto, NC 1000 cambia a falso. Ya que existe en

este peldaño un camino cierto (NO 1000 & NC 1001), entonces OUT 1001 se

activa.

• Peldaño 3- NO 1001 es cierto, entonces la salida física OUT 500 es cierta.

Próximo Scan

• Peldaño 1- NO 0000 permanece cierto. DIFU 1000 ahora cambia a falso. Esto

se debe a que la instrucción DIFU es cierta sólo durante un scan

• Peldaño 2- NO 1000 es falso, NO 1001 permanece cierto, NC 1001 es falso,

NC 1000 cambia a cierto. Ya que aun existe un camino cierto (NO 1001 & NC

1000), entonces OUT 1001 permanece en cierto.

• Peldaño 3- NO 1001 es cierto y por lo tanto OUT 500 permanece cierto.

Después de por ejemplo 100 scan, el operador libera el pulsador y así NO 0000

cambia a falso. La lógica permanece en el mismo estado según como se describió en

los peldaños 2 y 3 de arriba. Si por ejemplo en el scan 101 el operador acciona el

pulsador, entonces NO 0000 cambia a cierto, y produciéndose los siguientes

cambios:

Page 88: Teoria Plc

CAPITULO 5. PRINCIPALES INSTRUCCIONES.

Prof. Danilo Navarro. Universidad De Oriente. Julio 2001. 83

• Peldaño 1- Cuando la entrada NO 0000 se hace cierta, entonces DIFU 1000

también se hace cierto.

• Peldaño 2- NO 1000 es cierto, NO 1001 permanece en cierto, NC 1001 se

hace falso, NC 1000 también se hace falso. Como ya no hay camino lógico

cierto, entonces OUT 1001 se hace falso.

• Peldaño 3- NO 1001 es falso y por lo tanto OUT 500 se desactiva.

(VER ANIMA6.PPT EN EL CD ANEXO)

Fig. 83 – Figura animación implementación del FLIP-FLOP.

Page 89: Teoria Plc

CAPITULO 5. PRINCIPALES INSTRUCCIONES.

Prof. Danilo Navarro. Universidad De Oriente. Julio 2001. 84

5.7 Control maestro.

sta instrucción puede ser concebida como una parada de emergencia en el

sentido que el segmento de programa que este marcado por ella sólo se

ejecutara si ella esta activada. Así, la instrucción de control maestro es

usada en pares: set para marcar el inicio del segmento controlado, y reset para

marcar el final. Comúnmente se simboliza como MC/MCR (master control / master

control reset), o como MCS/MCR (master control set/master control reset). De lo

anterior se desprende que un símbolo común para esta instrucción es:

Fig. 84 – a) Control Maestro. b) Reset del Control Maestro.

Para ver como funciona, considere el siguiente ejemplo:

Fig. 85 – Uso del Control Maestro en un diagrama escalera.

En este ejemplo los peldaños 2 y 3 se ejecutan solamente cuando la entrada

0000 es cierta. De no ser así, el PLC asume que las instrucciones lógicas entre MC y

MCR no existen y por lo tanto él hará un by-pass en este bloque de instrucciones e

ira al peldaño ubicada inmediatamente después del la instrucción MCR.

E

Page 90: Teoria Plc

CAPITULO 5. PRINCIPALES INSTRUCCIONES.

Prof. Danilo Navarro. Universidad De Oriente. Julio 2001. 85

Contrariamente, si la entrada 0000 es cierta, el PLC ejecutara los peldaños 2 y 3, y

actualizara el estado de las salidas 0500 y 0501 de acuerdo al resultado lógico de

estos peldaños.

En este ejemplo, el tiempo de scan del PLC se reduce ya que el mismo ignora

la existencia de los peldaños entre las instrucciones MC / MCR y por lo tanto no las

ejecuta.

(VER ANIMA7.PPT EN EL CD ANEXO)

Fig. 86 – Figura animación uso Control Maestro.

Page 91: Teoria Plc

CAPITULO 5. PRINCIPALES INSTRUCCIONES.

Prof. Danilo Navarro. Universidad De Oriente. Julio 2001. 86

5.8 Registros de desplazamiento.

n muchas aplicaciones es necesario almacenar el estado de uno o varios

eventos que ha ocurrido previamente. En este caso el uso de registros o

grupo de registros para formar un tren de bits que almacene el estado (on /

off) de los eventos reseñados, es una técnica ventajosa. Cada nuevo cambio de

estado se almacena la primera posición y los bits restantes avanzan una posición

dentro del registro.

El registro de desplazamiento se etiqueta con variados nombres: SFT (ShiFT),

BSL (Bit Shift Left), SFR (Shift Forward Register) son algunos de los más comunes.

Estos registros desplazan los bits hacia la izquierda. BSR (Bit Shift Right) y SFRN

(Shift Forward Register Not) son algunos ejemplos de instrucciones que desplazan

los bits hacia la derecha. Pocos fabricantes ofrecen registros de desplazamiento

hacia la derecha; mientras que la mayoría ofrece registros de desplazamiento hacia

la izquierda.

Fig. 87 – Símbolo típico de registro de desplazamiento.

• Datos- La entrada de datos suministra los estados cierto / falso que serán

almacenados en el tren de bits dentro del registro. Cuando la entrada de datos

es cierta el primer bit en el tren se pondrá en 1 y se almacenara en el registro

con el flanco subiente de la entrada de reloj.

E

Page 92: Teoria Plc

CAPITULO 5. PRINCIPALES INSTRUCCIONES.

Prof. Danilo Navarro. Universidad De Oriente. Julio 2001. 87

• Reloj- La entrada de reloj le indica al registro de desplazamiento que

almacene el estado de la entrada de datos en la primera posición y a la vez

que desplace el restos de los bits ya almacenados.

• Reset- La entrada de reset pone a cero o falso a todos los bits almacenados

dentro del registro.

El 1000 dentro del símbolo del registro de desplazamiento en la dirección del

primer bit del registro. El 1003 dentro del símbolo del registro de desplazamiento en

la dirección del último bit del registro. De aquí que este registro de desplazamiento

cuente con 4 bits: 1000,1001,1002,1003.

Fig. 88 – Figura del ejemplo de la máquina de barquillas.

Considérese una maquina de 4 estados destinada a la elaboración de barquillas.

Primero se verifica que el cono base no esté roto. Luego se coloca el helado sobre el

cono activando la salida 0500, luego se le adiciona maní activando la salida 0501 y

finalmente se le rocía con caramelo al activar la salida 0502. Si el cono esta roto no

se le adiciona ni el helado ni los items restantes. De aquí que se le deba hacer un

seguimiento al cono dañado a medida que él avanza dentro del proceso a fin de

informar a la máquina para que no adicione el ítem correspondiente a cada estado.

Aquí se sugiere utilizar un sensor óptico para verificar si el fondo del cono esta

dañado (entrada 0000), un codificador rotativo para seguir el viaje del cono a través

de la línea transportadora (entrada 0001), y un push button para reiniciar el registro y

Page 93: Teoria Plc

CAPITULO 5. PRINCIPALES INSTRUCCIONES.

Prof. Danilo Navarro. Universidad De Oriente. Julio 2001. 88

con ello la línea de producción (entrada 0002). El diagrama escalera resultante sería

como el siguiente:

Fig. 89 – Uso del registro de desplazamiento en el ejemplo anterior.

A continuación se muestra el seguimiento del proceso según van

aconteciendo las acciones y hechos. El registro 1000 inicialmente estaría en cero.

10xx Register

15 14 13 12 11 10 09 08 07 06 05 04 03 02 01 00

0 0 0 0

Tabla 11 – Estado inicial del registro de desplazamiento.

Un cono en buen estado llega y el sensor (entrada 0000) cambia a cierto. El

registro 1000 no almacenará el dato hasta tanto no reciba el flanco subiente

proveniente del codificador (entrada 0001). Finalmente cuando el codificador genera

la entrada requerida, el estado de la entrada de datos es transferida hacia el

registro, el cual se vería como:

10xx Register

15 14 13 12 11 10 09 08 07 06 05 04 03 02 01 00

0 0 0 1

Tabla 12 – Estado del registro al llegar un cono en buen estado.

Page 94: Teoria Plc

CAPITULO 5. PRINCIPALES INSTRUCCIONES.

Prof. Danilo Navarro. Universidad De Oriente. Julio 2001. 89

Según el sistema de transporte se va moviendo, otro cono en mal estado

alcanza al sensor y este último permanece en falso. Ahora el codificador genera el

pulso de reloj y así el estado del cono anterior es pasado a la dirección 1001,

mientras que el estado del cono roto es pasado a la dirección 1000 que es el primer

bit del registro.

10xx Register

15 14 13 12 11 10 09 08 07 06 05 04 03 02 01 00

0 0 1 0

Tabla 13 – Estado del registro al llegar un cono en mal estado.

Como el registro muestra que el bit 1001 es cierto, entonces la lógica del

diagrama escalera indica que hay que activar la salida 0500 que es la que agrega el

helado al cono bueno.

Según que el transportador sigue avanzando, un cono bueno alcanza al

sensor y este cambia su estado a cierto. Nuevamente el codificador genera el pulso

de reloj con lo que ingresa el nuevo dato al registro mientras que los datos previos

son desplazados hacia la izquierda. Ahora el registro luce de la siguiente forma:

10xx Register

15 14 13 12 11 10 09 08 07 06 05 04 03 02 01 00

0 1 0 1

Tabla 14 – Estado del registro al llegar el próximo cono en buen estado.

Dado que el registro muestra el bit 1002 como cierto, se activa la salida que

adiciona el maní. Igualmente como el bit 1001 esta en falso mostrando el cono roto,

la lógica del diagrama escalera no esta habilitada para adicionar el helado sobre este

cono. Al seguir en movimiento el sistema de transportación, un cono en buen estado

alcanza el sensor y luego el codificador genera la entrada de validación del reloj. El

nuevo estado del registro sería:

Page 95: Teoria Plc

CAPITULO 5. PRINCIPALES INSTRUCCIONES.

Prof. Danilo Navarro. Universidad De Oriente. Julio 2001. 90

10xx Register

15 14 13 12 11 10 09 08 07 06 05 04 03 02 01 00

1 0 1 1

Tabla 15 – Estado del registro al llegar otro cono en buen estado.

Ya que el bit 1003 es cierto, entonces según la lógica del diagrama escalera

se activaría la salida 0502 que rociaría el helado con el caramelo. Al mismo tiempo,

sobre el cono roto no se ejecuta ninguna acción ya que el bit 1002 esta en falso, y

sobre el cono bueno que esta en la posición 1 se agrega el helado ya que el bit 1001

esta puesto a cierto.

El sistema se sigue moviendo e ingresa frente al sensor un cono en mal estado por lo

que entonces el registro llena su primera posición con un cero, y a la vez desplaza

los demás bits que le van haciendo seguimiento a todos los conos.

10xx Register

15 14 13 12 11 10 09 08 07 06 05 04 03 02 01 00

0 1 1 0

Tabla 16 – Estado del registro al llegar el próximo cono en mal estado

Nótese que el estado del primer cono que ingreso ha desaparecido, aunque

realmente ha pasado a la posición 1004 la cual no se está usando en la lógica

programada en diagrama escalera y por lo tanto carece de utilidad. La operación

descrita continua sucediéndose con cada flanco ascendente proveniente del

codificador.

(VER ANIMA8.PPT EN EL CD ANEXO)

Page 96: Teoria Plc

CAPITULO 5. PRINCIPALES INSTRUCCIONES.

Prof. Danilo Navarro. Universidad De Oriente. Julio 2001. 91

Los registros de desplazamiento son usados mas comúnmente en

aplicaciones de sistema de correas transportadoras, etiquetado, envasado, etc.

Algunas veces es también conveniente usarlos para producir retrasos en líneas de

embotellado de rápido movimiento. Por ejemplo, un solenoide no puede expulsar

inmediatamente una botella en mal estado ya que cuando el solenoide reacciona ya

la botella ha pasado frente a él. Por eso lo común es colocar el solenoide un poco

mas aguas abajo en la línea de producción y utilizar registros de desplazamiento

para seguir la trayectoria de la botella en mal estado y sacarla así en un punto más

conveniente.

Page 97: Teoria Plc

CAPITULO 5. PRINCIPALES INSTRUCCIONES.

Prof. Danilo Navarro. Universidad De Oriente. Julio 2001. 92

5.9 Acceso y manipulación de datos.

Por qué se requiere acceder y manipular datos? . Considérese que en una

aplicación se está utilizando un módulo especial de entrada como por ejemplo

uno de conversión Análogo / Digital. Este módulo adquiere las señales

analógicas del mundo exterior (una corriente o un voltaje variable) y las convierte a

un formato que el PLC pueda entender (una señal digital: 1’s y 0’s), al mismo tiempo

que las almacena en la memoria. Sin embargo se debe acceder los datos

almacenados y moverlos a otra posición de memoria o de lo contrario la próxima

muestra remplazará la previamente existente, produciéndose la perdida irremediable

de esos datos. En otros casos simplemente se desea almacenar una constante,

acceder algún dato binario no proveniente de las entradas discretas (por ejemplo

datos provenientes de un programador cíclico), realizar alguna operación matemática

y almacenar el resultado en una dirección de memoria diferente, etc.

Típicamente existen dos instrucciones que se utilizan para el acceso y la

manipulación de datos (LDA & STA), aunque algunos fabricantes utilizan una

instrucción única para realizar enteramente esta operación (MOV).

Fig. 90 – Símbolo de la instrucción MOV.

El símbolo del par de instrucciones LDA (LoaD Accumulator) y STA (STore

Accumulator) se muestra a continuación. Es de hacer notar que el acumulador es

simplemente un registro dentro del CPU donde el PLC almacena datos

temporalmente mientras ejecuta algunas operaciones.

¿

Page 98: Teoria Plc

CAPITULO 5. PRINCIPALES INSTRUCCIONES.

Prof. Danilo Navarro. Universidad De Oriente. Julio 2001. 93

Fig. 91 – a) carga desde el acumulador. B) almacena en el acumulador.

Analizando primero el uso del símbolo único MOV, se nota que el mismo necesita de

dos entradas:

• Fuente (xxxx)- Esto es la dirección de memoria donde esta localizado el dato

que deseamos mover. Si se escribe DM100 significa que se desea mover el

dato que esta localizado en la dirección de memoria 100. también se puede

escribir aquí directamente el dato que se desea mover. Por ejemplo se puede

escribir una constante (2543 por ejemplo). Esto último significa que el dato

fuente es el 2543.

• Destino (yyyy)- Esta es la dirección de memoria a donde se moverá el dato.

Por ejemplo si se escribe DM201 significa que el dato se moverá a la dirección

de memoria 201. también se puede escribir por ejemplo 0500, lo que

significaría que el bit menos significativo del dato debe ser movido a la salida

física 0500, el siguiente a la 0501 … y el más significativo a la salida 0515.

Esto puede ser útil si se tiene un display binario conectado a las salidas y se

desea desplegar el valor de un contador para que lo use el operador de la

máquina.

Fig. 92 – Uso de la instrucción MOV.

Page 99: Teoria Plc

CAPITULO 5. PRINCIPALES INSTRUCCIONES.

Prof. Danilo Navarro. Universidad De Oriente. Julio 2001. 94

El diagrama escalera para realizar la operación de manipulación de datos

sería el mostrado arriba. Es de hacer notar que la instrucción DIFU es para evitar que

los datos sean movidos en cada ciclo del scan. Algunas veces en útil que se realice

la operación en cada scan (por ejemplo en la adquisición de datos A/D), pero otras

veces es inconveniente como por ejemplo en el caso de usar un display externo, el

cual no se podría leer por los cambios excesivos que se presentarían en los datos.

El diagrama muestra que cada vez que la entrada se hace cierta, el DIFU se

hace cierto solamente por un ciclo de scan, y en este momento el PLC mueve los

datos de la memoria 200 a la memoria 201.

La instrucción con los dos símbolos trabaja de manera similar pero luce diferente.

Fig. 93 – Uso de la instrucción a dos símbolos.

Para usar estas instrucciones se debe suministrar también 2 cosas:

• LDA - Esta instrucción es similar a la fuente de la instrucción MOV. Esto se

refiere a la dirección donde esta localizada la data que se desea mover. Si se

escribe DM100 significa que se desea mover el dato que esta localizado en la

dirección de memoria 100. también se puede escribir aquí directamente el

dato que se desea mover. Por ejemplo se puede escribir una constante (2222

por ejemplo). Esto último significa que el dato fuente es el 2222.

• STA- Esta instrucción es similar al destino de la instrucción MOV. Por ejemplo

si se escribe DM200 significa que el dato se moverá a la dirección de memoria

200. también se puede escribir por ejemplo 0500, lo que significaría que el bit

Page 100: Teoria Plc

CAPITULO 5. PRINCIPALES INSTRUCCIONES.

Prof. Danilo Navarro. Universidad De Oriente. Julio 2001. 95

menos significativo del dato debe ser movido a la salida física 0500, el

siguiente a la 0501 … y el más significativo a la salida 0515. Esto puede ser

útil si se tiene un display binario conectado a las salidas y se desea desplegar

el valor de un contador para que lo use el operador de la máquina.

En este diagrama se está moviendo la constante 2222 a la posición de memoria

200. El símbolo "#" es usado por algunos fabricantes para simbolizar un número

decimal. Si se usa solamente 2222 el PLC interpretara que se trata de la dirección de

memoria 2222.

(VER ANIMA9.PPT EN EL CD ANEXO)

Fig. 94 – Figura animación manipulación de datos.

Page 101: Teoria Plc

CAPITULO 5. PRINCIPALES INSTRUCCIONES.

Prof. Danilo Navarro. Universidad De Oriente. Julio 2001. 96

5.10 Instrucciones matemáticas.

n muchas aplicaciones prácticas se deben ejecutar algún tipo de operación

matemática. Es poco usual que los datos que se manejan estén

exactamente formulados como se necesitan. Por ejemplo supóngase que

se están manufacturando cierto tipo de piezas mecánicas, y no se desea mostrar el

numero total de piezas hechas sino mejor el número de piezas que son necesarias

hacer para cumplir la cuota del día. Asumiendo que la cuota diaria es de 1000

piezas, y que la producción acumulada es X, entonces se puede formular que el

número de piezas restantes por fabricar corresponden a 1000 – X. Obviamente para

implementar esta formula se necesita que el PLC tenga cierta capacidad matemática.

En general los PLCs siempre incluyen las siguientes funciones matemáticas:

• Adición- Corresponde a la capacidad de sumar unos datos a otros.

Comúnmente se denota con el símbolo ADD.

• Sustracción- Corresponde a la capacidad de sustraer unos datos de otros.

Comúnmente se denota con el símbolo SUB.

• Multiplicación- Corresponde a la capacidad de multiplicar unos datos por

otros. Comúnmente se denota con el símbolo MUL.

• División- Corresponde a la capacidad de dividir unos datos entre otros.

Comúnmente se denota con el símbolo DIV.

Similar a como ocurre con la instrucción MOV, hay generalmente dos métodos

que son usados por los fabricantes para realizar estas operaciones. El primer método

incluye el uso de un sólo símbolo que requiere de tres entradas para ejecutar la

instrucción:

E

Page 102: Teoria Plc

CAPITULO 5. PRINCIPALES INSTRUCCIONES.

Prof. Danilo Navarro. Universidad De Oriente. Julio 2001. 97

• Operando A- Esta es la dirección de memoria donde se encuentra el primer

operando de la formula a usar. Vale mencionar que este operando puede ser

también una constante.

• Operando B- Esta es la dirección de memoria donde se encuentra el segundo

operando de la formula a usar. Vale mencionar que este operando también

puede ser una constante.

• Destino- Esto contiene la dirección de memoria donde se almacenara el

resultado de la operación.

Fig. 95 – Símbolo de suma

Las operaciones aritméticas básicas se simbolizarían como se muestra arriba,

intercambiando la etiqueta de ADD, SUB, MUL y DIV según se trate de una suma,

resta, multiplicación o división respectivamente. En el símbolo anterior se ve que la

operación es la suma, el operando 1 se encuentra en la dirección de memoria 100, el

operando 2 se encuentra localizado en la dirección de memoria 101, y el resultado se

almacenara en la dirección de memoria 102.

Fig. 96 – Uso de la operación Suma en el diagrama escalera.

Page 103: Teoria Plc

CAPITULO 5. PRINCIPALES INSTRUCCIONES.

Prof. Danilo Navarro. Universidad De Oriente. Julio 2001. 98

En la página anterior se muestra el uso típico de la operación matemática de

suma en una aplicación escrita en diagrama escalera. Nótese el uso de DIFU para

garantizar que la operación se ejecute sólo durante un scan. Si previamente se ha

colocado el numero 100 en la dirección DM100 y el número 200 en la dirección

DM101, El numero 300 será almacenado en la dirección DM102.(100+200=300)

Fig. 97 – Símbolo de suma(ADD método dual)

El método de la instrucción dual usaría un símbolo similar al mostrado

anteriormente. En este método se debe suministrar solamente la dirección del

operando 2 ya que la dirección del operando 1 esta dada en la instrucción LDA. La

dirección de destino del resultado de la operación esta implícitamente indicada en la

instrucción STA.

Fig. 98 – Uso de la instrucción de suma(ADD método dual).

El diagrama escalera muestra el uso de las instrucciones anteriormente

indicadas. Obviamente el resultado es similar al obtenido con la instrucción simple

mostrada antes.

Page 104: Teoria Plc

CAPITULO 5. PRINCIPALES INSTRUCCIONES.

Prof. Danilo Navarro. Universidad De Oriente. Julio 2001. 99

(VER ANIMA10.PPT EN EL CD ANEXO)

Fig. 99 – Figura animación manipulación de datos.

Una interrogante interesante es preguntarse ¿Qué pasaría si el resultado de

una operación matemática es más grande del máximo tamaño que se puede

almacenar en una locación de memoria?

Típicamente las locaciones de memoria son de 16 bits. Esto significa que el

mayor número que se puede almacenar corresponde a 65535 (2^16=65536). Si el

resultado es mayor a este número ocurre un desbordamiento (overflow), y

típicamente el PLC activa un relé indicando lo que ha pasado.

Algunos PLCs operan a 32 bits con lo cual resuelven este problema excepto

para números realmente muy grandes. Otra causa de desbordamiento es la división

por cero lo que también causa la activación del relé de error matemático.

Muchos PLCs también incluyen otras capacidades matemáticas tales como:

• Extracción de raíz cuadrada.

• Escalamiento.

• Valor absoluto.

Page 105: Teoria Plc

CAPITULO 5. PRINCIPALES INSTRUCCIONES.

Prof. Danilo Navarro. Universidad De Oriente. Julio 2001. 100

• Función senoidal, cosenoidal y tangencial.

• Función logaritmo natural y base 10.

• Potenciación ( Xy )

• Otras.

Algunos PLCs también tienen la capacidad de operaciones con punto flotante. Es

decir, por ejemplo si se divide 10 entre 3 el resultado almacenado será 3.33333.

Page 106: Teoria Plc

Prof. Danilo Navarro. Universidad De Oriente. Julio 2001. 101

LENGUAJES Y EQUIPOS PARA LA PROGRAMACION.

6.1 Lenguaje escalera (LADDER).

Son similares a los diagramas de lógica cableada usados para representar

los circuitos de control a relés. La principal diferencia entre las dos es que en

la programación en escalera, todas las entradas son representadas mediante

símbolos de contacto ( -| |- ), todas las salidas son representadas mediante bobinas

de salida ( -( )- ), y las operaciones numéricas están incluidas en el conjunto de

instrucciones del cual dispone el lenguaje.

Fig. 100 – Equivalencia entre lógica a relés y diagrama escalera.

La figura de arriba ilustra un diagrama simplificado del control con lógica a

relés y su equivalente en diagrama de escalera. Nótese que en el diagrama de

escalera, todas los contactos de entrada están asociados con uno de los elementos

de conmutación del diagrama de lógica a relés. La bobina de salida M1 en el

diagrama de relés está representada con un símbolo de bobina de salida en el

diagrama escalera. La dirección numérica que aparece en la parte superior de cada

símbolo de contacto o de bobina en el diagrama escalera, hace referencia a la

Capítulo

6 S

Page 107: Teoria Plc

CAPITULO 6. LENGUAJES Y EQUIPOS PARA LA PROGRAMACIÓN.

Prof. Danilo Navarro. Universidad De Oriente. Julio 2001. 102

localización de la conexión de Entrada / Salida física en el bus de direcciones del

PLC.

Un programa escrito en escalera (LADDER) esta compuesto por peldaños

(Conjunto de instrucciones gráficas especificas que se encuentra entre dos barras

verticales que representan las líneas de potencial) que son ejecutados

secuencialmente por el PLC. El conjunto de instrucciones gráficas disponibles

representan:

• Las entradas / Salidas físicas del PLC (Pulsadores, sensores, relés auxiliares,

luces pilotos, etc.),

• Las funciones internas del PLC (Temporizadores, contadores, programadores

cíclicos, etc).

• Las operaciones matemáticas (Suma, división, AND, XOR, etc.).

• Las operaciones de comparación y manipulación de datos (A < B, A = B,

Desplazar, rotar, etc.).

• Las variables internas al PLC (bits, palabras, etc.).

B

Estas instrucciones gráficas se relacionan mediante líneas de conexión

horizontales y verticales, que al final conducen a una o varias salidas y/o acciones.

Un peldaño no puede soporta más que un grupo de instrucciones enlazadas. Por

ejemplo el siguiente diagrama esta compuesto por dos peldaños.

Fig. 101 – Ejemplo de peldaños.

Page 108: Teoria Plc

CAPITULO 6. LENGUAJES Y EQUIPOS PARA LA PROGRAMACIÓN.

Prof. Danilo Navarro. Universidad De Oriente. Julio 2001. 103

6.1.1 Principios de programación.

En un PLC típico, cada peldaño esta compuesto por ejemplo por un conjunto

máximo de 7 líneas y 11 columnas organizadas en dos zonas perfectamente

definidas:

• Una zona de TEST que contiene las condiciones que se deben cumplirse o

ser ciertas (TRUE) para que una acción tome lugar.

• Una zona de acciones la cual contiene las salidas u operaciones que se

ejecutan a partir de los TEST conectados a ellas.

Fig. 102 – Formato de programación.

De esta forma el peldaño se visualiza como un formato de programación de 7

por 11, comenzando la programación a partir del tope de la izquierda. Aquí, se deben

Page 109: Teoria Plc

CAPITULO 6. LENGUAJES Y EQUIPOS PARA LA PROGRAMACIÓN.

Prof. Danilo Navarro. Universidad De Oriente. Julio 2001. 104

programar las instrucciones de TEST, comparaciones, y funciones, justificándolas

por la izquierda. Estas pruebas lógicas entonces conducen a la zona de acción

donde se programan las bobinas de salida, operaciones numéricas e instrucciones

de control del flujo del programa; justificándola por la derecha. El peldaño es resuelto

o ejecutado por el PLC (Se hacen los TEST y se asignan las salidas u operaciones)

desde arriba hacia abajo y desde la izquierda a la derecha. Generalmente, además

de la zonas TEST y ACCIONES mencionadas, también existe espacio para comentar

la finalidad lógica el peldaño. Normalmente este espacio aparece como cabecera o

también puede ir como comentario lateral derecho.

6.1.2 Ejemplo del control de un estacionamiento.

a) Especificación de la aplicación.

Se planea construir un estacionamiento moderno y automatizado que opere de

acuerdo a lo siguiente:

• Control de acceso de vehículos: Tan pronto como se detecte la

presencia de un vehículo en la rampa de entrada, el sistema debe abrir

automáticamente la barrera de entrada y/o de salida, de acuerdo a lo

que corresponda. De igual forma, el numero de puestos disponibles, el

control de horario de trabajo y otros eventos especiales, debe ser

completamente administrado por el sistema.

• Seguridad de personas: Un detector de gases de escape debe iniciar el

arranque de un gran extractor con la finalidad de evacuar el exceso de

CO2 en el estacionamiento. Asimismo, por razones económicas, las

luces deben ser controladas por temporizadores.

Page 110: Teoria Plc

CAPITULO 6. LENGUAJES Y EQUIPOS PARA LA PROGRAMACIÓN.

Prof. Danilo Navarro. Universidad De Oriente. Julio 2001. 105

Fig. 103 – Control de acceso a estacionamiento.

b) Análisis orgánico y selección del PLC.

De acuerdo a la especificación anterior, el sistema debe tener capacidad para:

• Apertura / Cierre de la barrera al detectar presencia de vehículos.

• Controlar la cantidad de vehículos que han entrado o que han salido del

estacionamiento.

• Encender / Apagar luces.

• Arrancar / Parar un extractor al detectar exceso de CO2.

• Programador semanal para horario de funcionamiento del estacionamiento.

• Control manual de apertura y cierre de la barrera de acceso.

• Posibilidad de modificar los parámetros de la cantidad de puestos

disponibles en caso de eventos especiales.

• Indicar si hay disponibilidad de puestos o no en el estacionamiento.

Lo anterior conduce a la siguiente tabla de requerimientos:

Número de entradas discretas: 6 Número de entradas analógicas: 1 Numero de salidas discretas: 4 Contadores: 1 Temporizadores: 1 Reloj de tiempo real: 1

Tabla 17 – Requerimientos de entrada /salida del ejemplo del estacionamiento.

Page 111: Teoria Plc

CAPITULO 6. LENGUAJES Y EQUIPOS PARA LA PROGRAMACIÓN.

Prof. Danilo Navarro. Universidad De Oriente. Julio 2001. 106

Un PLC que cubre los requerimientos de esta aplicación es el ZELIO SR1B121BD

(Ver anexo 1 de este trabajo).

c) Parametrización y conexiónes de entrada / salida al PLC.

Fig. 104 – Diagrama de Entradas / salidas del PLC.

Page 112: Teoria Plc

CAPITULO 6. LENGUAJES Y EQUIPOS PARA LA PROGRAMACIÓN.

Prof. Danilo Navarro. Universidad De Oriente. Julio 2001. 107

N° ETIQUETA DESCRIPCION Entradas Discretas

01 I1 Detector de entrada 02 I2 Detector de salida 03 I3 Switch temporizador 04 I4 Arranca extractor 05 I5 Para extractor 06 I6 Cierra barrera manual.

Entradas Analógicas 01 IB Detector CO2

Salidas Discretas 01 Q1 Apertura barrera 02 Q2 Cierre barrera 03 Q3 Control iluminación. 04 Q4 Control extractor

Teclas Zx 01 Z1 Apertura barrera 02 Z2 Descontaje manual 03 Z3 Cierra barrera 04 Z4 Contaje manual

Tabla 18 – Variables de entrada / salida.

Tabla 19 – Parametrización de temporizadores y entradas analógicas.

Page 113: Teoria Plc

CAPITULO 6. LENGUAJES Y EQUIPOS PARA LA PROGRAMACIÓN.

Prof. Danilo Navarro. Universidad De Oriente. Julio 2001. 108

Relojes Día y hora de inicio Día y hora de fin Lunes 8:00 Lunes 21:00 Martes 8:00 Martes 21:00 Miércoles 8:00 Miércoles 21:00 Jueves 8:00 Jueves 21:00

R1

Viernes 6:00 Viernes 22:00 R2 Sábado 6:00 Sábado 23:59 R3 Domingo 0:00 Domingo 23:59

Tabla 20 – Parametrización de relojes.

Fig. 105 – Parametrización de bloques de texto.

d) Programa.

El listado de programa se muestra en las siguientes dos figuras. Para la

simulación, cargar el software (EVA-SOFT) del CD anexo a este trabajo y abrir el

archivo parking.zel.

Page 114: Teoria Plc

CAPITULO 6. LENGUAJES Y EQUIPOS PARA LA PROGRAMACIÓN.

Prof. Danilo Navarro. Universidad De Oriente. Julio 2001. 109

Fig. 106a – Diagrama escalera del ejemplo del estacionamiento.

Page 115: Teoria Plc

CAPITULO 6. LENGUAJES Y EQUIPOS PARA LA PROGRAMACIÓN.

Prof. Danilo Navarro. Universidad De Oriente. Julio 2001. 110

Fig. 106b – Diagrama escalera del ejemplo del estacionamiento.

Page 116: Teoria Plc

CAPITULO 6. LENGUAJES Y EQUIPOS PARA LA PROGRAMACIÓN.

Prof. Danilo Navarro. Universidad De Oriente. Julio 2001. 111

6.2 Lista de instrucciones( AWL, BOOLEANO, Nemónicos).

orresponde al nivel más fundamental de lenguajes de programación

definidos en el estándar IEC 1131. De hecho, todos los otros lenguajes de

programación de PLCs pueden ser convertidos a lista de instrucciones o

Nemónicos. Este tipo de programación consiste en elaborar un listado de

instrucciones BOOLEANAS (únicamente operaciones sobre Bits) que se asocian a

los símbolos y contactos de un diagrama eléctrico de control, y las cuales

representarán la combinación lógica que exista entre dichos contactos.

Fig. 107 – Diagrama escalera.

En el diagrama escalera anterior contiene 4 entradas y 1 salida. Esta red

puede ser representada mediante la ecuación Booleana que aparece justo abajo.

O:01 = I:00 AND (I:01 OR (I:02 AND NOT I:03))

Igualmente, esta ecuación puede ser convertida a una lista de instrucciones

usando los Nemónicos que aparecen a continuación:

Fig. 108 – Lista de Nemónicos del ejemplo anterior.

C

Page 117: Teoria Plc

CAPITULO 6. LENGUAJES Y EQUIPOS PARA LA PROGRAMACIÓN.

Prof. Danilo Navarro. Universidad De Oriente. Julio 2001. 112

El comienzo del programa corresponde a la etiqueta “START”. En este punto

se carga el primer valor, y el resto de la ecuación es dividida en pequeños

segmentos. El único cambio significativo es que el “AND NOT” cambia por “ADN”.

NEMÓNICO MODIF. TIPO DATOS DESCRIPCIÓN

LD N VARIADO Cargue el valor leído

ST N VARIADO Almacene el resultado en la locación

S,R BOOLEANO Set o Reset el valor actual(flip-flop)

AND, & N, ( BOOLEANO AND Booleana

OR N, ( BOOLEANO OR Booleana

XOR N, ( BOOLEANO OR Exclusiva Booleana

ADD ( VARIADO Suma

SUB ( VARIADO Sustracción

MUL ( VARIADO Multiplicación

DIV ( VARIADO División

GT ( VARIADO Mayor que (>)

GE ( VARIADO Mayor o igual que (>=)

EQ ( VARIADO Igual que(=)

EN ( VARIADO Distinto que (<>)

LE ( VARIADO Menor que (<)

LT ( VARIADO Menor o igual que (<=)

JMP C, N ETIQUETA Salto a la dirección

CAL C, N NOMBRE Llamada a subrutina

RET C, N Retorno subrutina.

) Leer del “stack”

Tabla 21 – Operadores y Nemónicos que establece el estándar IEC 1131.

Page 118: Teoria Plc

CAPITULO 6. LENGUAJES Y EQUIPOS PARA LA PROGRAMACIÓN.

Prof. Danilo Navarro. Universidad De Oriente. Julio 2001. 113

DIAGRAMA ESCALERA LISTA

LD A

ST X

LDN A

ST X

LD A

AND B

ST X

LD A

ANDN B

ST X

LD A

OR B

AND C

ST X

LD A

LD B

OR C

ANB

ST X

LD A

OR B

LD C

OR D

ANB

ST X

Tabla 22 – Tabla de equivalencias Diagrama escalera - Lista de instrucciones.

Page 119: Teoria Plc

CAPITULO 6. LENGUAJES Y EQUIPOS PARA LA PROGRAMACIÓN.

Prof. Danilo Navarro. Universidad De Oriente. Julio 2001. 114

Con el lenguaje lista de instrucciones también se pueden representar

instrucciones más complejas como la que se muestra en la siguiente figura.

Fig. 109 – Función compleja programada en Lista de Instrucciones.

En esta instrucción se suma el valor decimal 3 con el contenido del

acumulador del temporizador T4:0, y se almacena en la dirección de memoria N7.0

EJEMPLO DE APLICACIÓN:

a) Descripción de la aplicación.

Un lavado de autos esta compuesto:

• Un puente que soporta un rodillo horizontal y dos rodillos verticales. El

Puente es movido en dos direcciones (adelante y atrás) por un motor

reversible.

• Un motor que rota tanto el rodillo horizontal como los rodillos verticales.

• Un motor que sube y baja el rodillo horizontal.

• Un limit switch que detecta cuando el rodillo horizontal esta en la

posición alta.

• Un limit switch que detecta cuando el puente ha llegado al tope

posterior de su recorrido.

• Un limit switch que detecta cuando el puente ha llegado al top5

delantero de su recorrido.

Page 120: Teoria Plc

CAPITULO 6. LENGUAJES Y EQUIPOS PARA LA PROGRAMACIÓN.

Prof. Danilo Navarro. Universidad De Oriente. Julio 2001. 115

• Un sensor de proximidad que detecta la presencia de vehículos en la

zona de lavado.

• Un pulsador de arranque del ciclo.

• Una lámpara piloto para indicar ciclo en proceso.

Fig. 110 – Puente de lavado.

b) Especificaciones funcionales.

Condiciones iniciales: El puente esta en la posición trasera, y el rodillo

horizontal en su posición alta. Hay un vehículo presente en el área de lavado.

Cuando se llenan estas condiciones, se presiona el botón de marcha y

comienza el siguiente ciclo automático.

• Enciende la lámpara de proceso en marcha, y es seguida por una

temporización de 10 segundos.

• El rodillo se mueve hacia abajo por un período de 5 segundos.

• Los rodillos comienzan a rotar y el puente se mueve hacia delante. Se

presume que la bomba de agua se activa al unísono con la activación

del puente.

• El avance del puente es detenido cuando toca el limit switch delantero,

y en ese momento se pone en reversa.

Page 121: Teoria Plc

CAPITULO 6. LENGUAJES Y EQUIPOS PARA LA PROGRAMACIÓN.

Prof. Danilo Navarro. Universidad De Oriente. Julio 2001. 116

• El movimiento de reversa y la rotación de los rodillos es detenida al

tocar el limit switch posterior. Aquí también se contabiliza un vehículo

lavado.

c) Representación en GRAFCET.

Fig. 111 – Descripción grafica del proceso.

d) Entradas / salidas al PLC.

Page 122: Teoria Plc

CAPITULO 6. LENGUAJES Y EQUIPOS PARA LA PROGRAMACIÓN.

Prof. Danilo Navarro. Universidad De Oriente. Julio 2001. 117

ITEM DIRECC. ELEMENTO DE CONTROL

ENTRADAS

Presencia de Vehículo I0,0 Sensor de proximidad inductivo

Arrancar Proceso I0,1 Pulsador de arranque.

Parar proceso I0,2 Pulsador de parada.

Puente adelante I0,3 Interruptor de posición

Puente atrás I0,4 Interruptor de posición

Rodillo arriba I0,5 Interruptor de posición

SALIDAS

Ciclo en marcha O0,0 Lampara piloto

Bajar rodillo O0,1 Contactor KM1

Subir rodillo O0,2 Contactor KM2

Rotar rodillos O0,3 Contactor KM3

Avance puente O0,4 Contactor KM4

Retroceso puente O0,5 Contactor KM5

VARIABLES INTERNAS

Temporizador arranque T0 ON DELAY (10 seg)

Temp.bajar rodillo T1 ON DELAY (5 seg)

Contador de lavadas. C0 ASCENDENTE(9999)

Tabla 23 – análisis de entrada / salida del ejemplo del lavado de vehículos.

e) Conexión del PLC.

Page 123: Teoria Plc

CAPITULO 6. LENGUAJES Y EQUIPOS PARA LA PROGRAMACIÓN.

Prof. Danilo Navarro. Universidad De Oriente. Julio 2001. 118

Fig. 112 – Conexión del PLC.

f) Programa.

Page 124: Teoria Plc

CAPITULO 6. LENGUAJES Y EQUIPOS PARA LA PROGRAMACIÓN.

Prof. Danilo Navarro. Universidad De Oriente. Julio 2001. 119

6.3 Gráficos Funcionales de Secuencia(SFC, GRAFCET).

n sistema es combinacional cuando para cada combinación de estado de

los elementos de entrada al sistema, existe una y sólo uno combinación de

estado de los elementos de salida. En forma distinta, un sistema es

secuencial cuando para una combinación de estado de los elementos de entrada al

sistema, pueden existir más de una combinación de estado de los elementos de

salida; o bien cuando además de considerar el estado actual de los elementos de

entrada y de salida, también se considera su estado anterior o la evolución que

hayan tenido.

La mayoría de los procesos funcionan secuencialmente pero con un solo

estado activo a la vez. Sin embargo, existen máquinas más complejas que son

diseñadas para realizar varias operaciones al mismo tiempo. Este último tipo de

máquina o proceso amerita que el controlador sea capaz de realizar procesos

concurrentes. Es decir, el procesador debe ser capaz de realizar las actividades

correspondientes a dos o más etapas que estén activas al mismo tiempo. Este último

requerimiento puede lograse con técnicas tales como los Gráficos de Funciones

Secuenciales (SFC: Sequencial Function Charts), conocido también como el

estándar IEC 848, o sencillamente como GRAFCET (Gráficos Funcionales de

Control de Etapas y Transiciones).

El GRAFCET es un método mediante el cual se describe en forma gráfica las

especificaciones de cualquier automatismo. Dentro de sus ventajas se encuentra que

permite la programación directa desde el mismo gráfico sin tener que traducirlo a

lenguaje de contactos o LADDER. También permite hacer seguimiento etapa por

etapa dentro del automatismo, de forma que la localización de algún problema se

hace sistemática y por lo tanto conduce al ahorro de tiempo.

El GRAFCET permite la representación de los sistemas secuenciales

mediante la sucesión alternada de etapas y transiciones. Los elementos básicos de

una carta GRAFCET típica se muestran a continuación.

U

Page 125: Teoria Plc

CAPITULO 6. LENGUAJES Y EQUIPOS PARA LA PROGRAMACIÓN.

Prof. Danilo Navarro. Universidad De Oriente. Julio 2001. 120

Fig. 113 – Principales elementos del GRAFCET.

ETAPAS: En la carta GRAFCET todos los estados estables del sistema tienen

asociado un elemento de memoria llamado etapa. Las etapas se representan con un

cuadro, o bien con un cuadro doble en el caso de etapas iniciales. Además, las

etapas están numeradas en forma ordenada de acuerdo al desarrollo del

automatismo.

a) Etapas iniciales.

v Se activan al iniciar el GRAFCET.

v Una vez iniciado, tienen el mismo tratamiento que otras etapas.

Page 126: Teoria Plc

CAPITULO 6. LENGUAJES Y EQUIPOS PARA LA PROGRAMACIÓN.

Prof. Danilo Navarro. Universidad De Oriente. Julio 2001. 121

v Un sistema debe tener como mínimo una etapa inicial.

v Pueden existir varias etapas iniciales en procesos concurrentes.

b) Etapas normales.

v Representan los estados estables del sistema.

v Deben estar numeradas aunque no necesariamente en forma correlativa.

v No puede haber dos etapas con el mismo número.

v Durante la evolución del GRAFCET, pueden estar activas o inactivas.

v Pueden o no contener acciones asociadas.

TRANSICIONES: Toda transición tiene una condición o condiciones lógicas que son

las que van marcando la evolución del sistema. Una transición marca el paso de una

etapa a la otra, ya que es una barrera que separa dos etapas y que se supera si

estando activa la etapa o etapas anteriores o de entrada a la transición, se cumplen

las condiciones lógicas en ella impuesta.

Fig. 114 – Ejemplo de evolución del GRAFCET.

Validar la transición implica un cambio en las etapas activas del GRAFCET. Al

pasar una transición, el sistema deja de estar en una etapa e inmediatamente va a la

siguiente.

8 9

10

8 9

10

8 9

10

8 9

10

a.b = 0 o 1 a.b = 0 a.b=1 →→ a.b=0 o 1

: Etapa activa

8 9

10

8 9

10

8 9

10

8 9

10

a.b = 0 o 1 a.b = 0 a.b=1 →→ a.b=0 o 1

8 9

10

8 9

10

8 9

10

8 9

10

8 9

10

8 9

10

a.b = 0 o 1 a.b = 0 a.b=1 →→ a.b=0 o 1

: Etapa activa

Page 127: Teoria Plc

CAPITULO 6. LENGUAJES Y EQUIPOS PARA LA PROGRAMACIÓN.

Prof. Danilo Navarro. Universidad De Oriente. Julio 2001. 122

En el GRAFCET:

v Las transiciones se representan con un pequeño segmento horizontal que

corta la línea de enlace entre dos o más etapas.

v Son etapas de entrada a una transición, todas las que conducen a ella.

v Son etapas de salida a una transición, todas las que se activan una vez se ha

superado la transición.

La condición o condiciones que deben superarse para poder pasar una transición

reciben el nombre de receptividades. Una transición puede poseer:

v Una receptividad simple o única.

v Una función Booleana.

v Una receptividad correspondiente a un temporizador o a un contador.

v Una receptividad asociada a alguno otra etapa GRAFCET.

ESTADO: Se refiere a una de las formas o maneras en la que puede encontrarse el

sistema: Parado / operando, encendido / apagado, etc.

ACCIONES ASOCIADAS: Están asociadas a las etapas del GRAFCET y son las

normalmente modifican el estado de algunos elementos de salida del sistema.

Fig. 115 – Acciones asociadas.

La figura anterior indica que al estar activa la etapa 2, se enciende el ventilador.

Existen acciones asociadas que son condicionadas. En este caso en el

rectángulo donde se representa la acción, hay un campo de entrada para las

condiciones.

2 Ventilador2 Ventilador

Page 128: Teoria Plc

CAPITULO 6. LENGUAJES Y EQUIPOS PARA LA PROGRAMACIÓN.

Prof. Danilo Navarro. Universidad De Oriente. Julio 2001. 123

Fig. 116 – Acciones condicionadas.

El estándar IEC 848 propone las siguientes representaciones para las

acciones asociadas condicionadas:

C Acción condicionada

D Acción retardada

L Acción limitada en el tiempo

P Impulso

S Acción mejorada

Tabla 25 – Modificación de las acciones.

LÍNEAS DE ENLACE: Son líneas verticales u horizontales que unen con una

dirección significativa, las distintas etapas con las transiciones, y las transiciones con

las etapas.

6.3.1 Reglas para construcción del GRAFCET.

a) El diagrama debe dibujarse en sucesión alternada de etapas y

transiciones. En ese sentido no puede haber ni dos etapas ni dos

transiciones seguidas.

2 VentiladorC2 VentiladorC

Page 129: Teoria Plc

CAPITULO 6. LENGUAJES Y EQUIPOS PARA LA PROGRAMACIÓN.

Prof. Danilo Navarro. Universidad De Oriente. Julio 2001. 124

b) El GRAFCET es de secuencia única cuando en el diagrama sólo hay una

rama. El conjunto de etapas se irán activando consecutivamente una a la vez,

después de validarse las recepciones asociadas a las transiciones.

Fig. 117 – GRAFCET de secuencia única.

c) El GRAFCET es de Bifurcación u OR cuando a la salida de una etapa hay

una selección de secuencias. En este punto, el flujo seguirá por una sola de

ellas. Aunque no es necesario que las diferentes secuencias posean igual

número de etapas y transiciones, lo que si es conveniente es que sean

excluyentes entre si.

Fig. 118 – GRAFCET tipo OR.

Page 130: Teoria Plc

CAPITULO 6. LENGUAJES Y EQUIPOS PARA LA PROGRAMACIÓN.

Prof. Danilo Navarro. Universidad De Oriente. Julio 2001. 125

d) El GRAFCET es de Concurrencia o AND cuando a la salida de una

transición, el flujo debe evolucionar de forma simultanea por dos o mas ramas.

No es necesario que las secuencias en paralelo contengan igual número de

etapas y transiciones, ya que al final de la secuencias habrá un punto de

convergencia o de espera donde el sistema aguarda a que todas las

secuencias lleguen a esa etapa de espera para continuar su evolución.

Fig. 119 – GRAFCET tipo Paralelo

e) Una modalidad de los puntos de bifurcación lo constituyen los saltos de

etapas. Esta modalidad da la posibilidad de que se ejecute o no una

secuencia completa, o de que la evolución del flujo siga a partir de la etapa

indicada en el salto.

Fig. 120 – Saltos en cartas GRAFCET.

Page 131: Teoria Plc

CAPITULO 6. LENGUAJES Y EQUIPOS PARA LA PROGRAMACIÓN.

Prof. Danilo Navarro. Universidad De Oriente. Julio 2001. 126

f) Existen Bucles o estructuras WHILE cuando una o un conjunto de etapas se

repiten varias veces. Son controladas por temporizadores, contadores, o

simplemente se repiten infinitamente.

g) En GRAFCET se pueden escribir dos o más secuencias independientes que

funciones concurrentemente evolucionando cada una por separado y a su

ritmo según se validen sus transiciones. Aunque estas secuencias no se tocan

en el gráfico de flujo, se pueden interrelacionar a través de sus variables de

estado.

Fig. 121 – Representación de procesos concurrentes.

Page 132: Teoria Plc

CAPITULO 6. LENGUAJES Y EQUIPOS PARA LA PROGRAMACIÓN.

Prof. Danilo Navarro. Universidad De Oriente. Julio 2001. 127

6.3.2 Ejemplo de aplicación del GRAFCET en la automatización de procesos.

a) Descripción de la aplicación.

Se trata de un sistema de respaldo de energía formado por:

• 2 generadores G1 y G2 que estarán en STAND-BY esperando su turno

para respalda el sistema de suministro en caso de falla de la línea

principal.

• 3 contactores para Conectar / Desconectar las fuentes, los cuales

poseen contactos auxiliares para indicar STATUS.

• 3 relés de mínima tensión para supervisar la operación de cada fuente.

Fig. 122 – Esquemático del sistema de respaldo de energía.

b) Especificación funcional.

Condiciones iniciales: La línea de suministro principal debe estar OK, con G1 y

G2 apagados. En consecuencia KM0 debe estar cerrado y KM1 junto a KM2

abiertos.

Page 133: Teoria Plc

CAPITULO 6. LENGUAJES Y EQUIPOS PARA LA PROGRAMACIÓN.

Prof. Danilo Navarro. Universidad De Oriente. Julio 2001. 128

Al fallar la línea principal (validada por un retardo de 1 segundos después que

LV0 se activa), el sistema arrancará el generador de turno (G1 y G2 deben

alternar su funcionamiento), entonces abrir el contactor de línea y cerrar el

contactor del generador que ahora este funcionando.

Bajo las condiciones anteriores se debe computar el tiempo de funcionamiento

del generador para efector de mantenimiento preventivo de los generadores.

Al retornar la línea (validada por un retardo de 5 segundos), el sistema debe

realizar la retransferencia hacia la línea principal.

Igualmente el generador que respaldo debe pasar por un proceso de

enfriamiento de 10 minutos. (funcionamiento sin carga).

En un proceso de BACKGROUND, el sistema debe indicar a través de una luz

piloto, cuando hay que hacer mantenimiento por 200 horas de funcionamiento.

En este caso debe marcar el generador como no disponible hasta tanto un

operador confirme que el mantenimiento se ha hecho.

Fig. 123 – Descripción funcional a través de un esquema GRAFCET.

Page 134: Teoria Plc

CAPITULO 6. LENGUAJES Y EQUIPOS PARA LA PROGRAMACIÓN.

Prof. Danilo Navarro. Universidad De Oriente. Julio 2001. 129

c) Análisis de entrada / salida, y variables internas.

ITEM DIREC

C.

ELEMENTO DE CONTROL

ENTRADAS

Voltaje en la línea OK I0,0 Relé mínima tensión LV0 (NA)

Voltaje en G1 OK I0,1 Relé mínima tensión LV1 (NC)

Voltaje en G2 OK I0,2 Relé mínima tensión LV2 (NC)

Contactor de línea cerrado I0,3 Contacto auxiliar NA en KM0 (13-14)

Contactor G1 cerrado I0,4 Contacto auxiliar NA en KM1 (13-14)

Contactor G2 cerrado I0,5 Contacto auxiliar NA en KM2 (13-14)

Mantenimiento G1 OK I0,6 Selector con llave S1 (NA)

Mantenimiento G2 OK I0,7 Selector con llave S2 (NA)

SALIDAS

Conectar/desconectar línea O0,0 Bobina contactor KM0

Conectar/desconectar G1 O0,1 Bobina contactor KM1

Conectar/desconectar G2 O0,2 Bobina contactor KM2

Mantenimiento G1 O0,4 Luz piloto LP1

Mantenimiento G2 O0,5 Luz piloto LP2

VARIABLES INTERNAS

Tiempo falla línea T0 ON DELAY (1 seg)

Tiempo retorno línea T1 ON DELAY (5 seg)

Tiempo enfriamiento G1 T2 OFF DELAY (10 min)

Tiempo enfriamiento G2 T3 OFF DELAY (10 min)

Funcionamiento G1 T4 ON DELAY (60 min)

Horas G1 C1 ASCENDENTE(200)

Funcionamiento G2 T5 ON DELAY (60 min)

Horas G2 C2 ASCENDENTE(200)

Alternador G1 – G2 SC0 PASO a PASO (2 pasos)

Tabla 26 – Análisis de entrada / salida del sistema de respaldo.

Page 135: Teoria Plc

CAPITULO 6. LENGUAJES Y EQUIPOS PARA LA PROGRAMACIÓN.

Prof. Danilo Navarro. Universidad De Oriente. Julio 2001. 130

d) Conexión de entradas / Salidas al PLC.

Fig. 124 – Conexión del PLC para el sistema de transferencia.

e) Programa.

Page 136: Teoria Plc

CAPITULO 6. LENGUAJES Y EQUIPOS PARA LA PROGRAMACIÓN.

Prof. Danilo Navarro. Universidad De Oriente. Julio 2001. 131

Page 137: Teoria Plc

CAPITULO 6. LENGUAJES Y EQUIPOS PARA LA PROGRAMACIÓN.

Prof. Danilo Navarro. Universidad De Oriente. Julio 2001. 132

6.4 Programación con texto estructurado.

s un lenguaje de programación similar al C, al Pascal, al BASIC

estructurado, etc. Formando parte del estándar IEC 1131, sus

características generales son:

a) El lenguaje puede usar tanto las direcciones memoria normales de I/O como

nombres de variables.

TESTER, I, I:000, T4:0, T4:0/ACC, MOTOR, TANQUE, I:000/00

b) Los nombres de las variables pueden ser cualquiera excepto nombres de

instrucciones y los listados a continuación:

START, DATA, PROJECT, SFC, LADDER, I/O, ASCII, CAR, FORCE,

PLC2, CONFIG, INC, ALL, YES, NO, STRUCTURED TEXT.

c) Las variables se declaran de la siguiente forma:

DECLARACIÓN DESCRIPCIÓN

VAR Declaración general de variables.

VAR_INPUT Declaración de variables de entradas a una función.

VAR_OUTPUT Declaración de variables de salida de una función.

VAR_IN_OUT Declara variables de entrada / salida de una función.

VAR_EXTERNAL

VAR_GLOBAL Declaración de variable global.

VAR_ACCESS

RETAIN Variable memorizada ante un corte de energia.

CONSTANT Valor que no cambia.

Tabla 27 –Declaración de variables.

E

Page 138: Teoria Plc

CAPITULO 6. LENGUAJES Y EQUIPOS PARA LA PROGRAMACIÓN.

Prof. Danilo Navarro. Universidad De Oriente. Julio 2001. 133

d) Las instrucciones pueden usar indistintamente mayúsculas o minúsculas.

e) Las instrucciones pueden ser concatenadas o anidadas.

f) Los comentarios deben estar en líneas que comienzan con “;;”.

g) El sistema numérico corresponde al siguiente:

Tipo de Número Ejemplos

Enteros -100, 0, 100

Reales -100.0, 0.0, 100.0

Exponentes -1.0E-2, 0.0E0, 1.0E2

Binarios 2#111111111

Octales 8#123, 8#777, 8#14

Hexadecimal 16#FF, 16#ff, 16#9a, 16#01

Booleano 0, FALSE, TRUE

Tabla 28 –Sistema numérico.

h) Las cadenas de caracteres usables se muestran a continuación:

Ejemplos Descripción

‘’ Cadena vacia.

‘ ‘, ‘a’, ‘$’’, ‘$$’ Un espacio, un carácter, una comilla, símbolo $(dólar)

‘$R$L’, ‘$r$l’,‘$0D$0A’ Produce la combinación ASCII <CR>, <LF>

‘$P’, ‘$p’ Avance página.

‘$T’, ‘4t’ Tabulador <TAB>

Tabla 29 –Cadenas de caracteres válidos.

Page 139: Teoria Plc

CAPITULO 6. LENGUAJES Y EQUIPOS PARA LA PROGRAMACIÓN.

Prof. Danilo Navarro. Universidad De Oriente. Julio 2001. 134

i) Las bases de tiempo típicas se muestran a continuación:

Valores de tiempo Ejemplos

2.5 ms T#25ms, T#25.0ms, TIME#25.0ms, T#-25ms, t#25ms

5.5 horas TIME#5.3h, T#5.3h, T#5h_30m, T#5h30m

3 días,5 horas, 6 min,46 seg. TIME#3d5h6m36s, T#3d_5h_6m_36s

Tabla 30– Bases de tiempo.

j) Variables calendario se usan para comparar fechas y tiempos en el sistema.

Descripción Ejemplos

Fechas DATE#1996-12-25, D#1996-12-25

Hora TIME_OF_DAY#12:42:50.92, TOD#12:42:50.92

Fecha y hora DATE_AND_TIME#1996-12-25-12:42:50.92, DT#1996-12-25-12:42:50.92

Tabla 31– Variables tipo calendario.

k) Funciones matemáticas básicas.

Función Descripción :=

Asigna una variable.

+ Suma -

Sustracción. /

División.

+ Multiplicación.

MOD(A,B) Módulo. Provee el entero resultate de dividir A/B.

SQR(A) Raiz cuadrada.

Page 140: Teoria Plc

CAPITULO 6. LENGUAJES Y EQUIPOS PARA LA PROGRAMACIÓN.

Prof. Danilo Navarro. Universidad De Oriente. Julio 2001. 135

FRD(A) Convertir de BCD a Decimal.

TOD(A) Convertir de Decimal a BCD.

NEG(A) Cambiar de signo +/- .

LN(A) Logaritmo natural.

LOG(A) Logaritmo base 10.

DEG(A) Convertir de radianes a grados.

RAD(A) Convertir de grados a radianes.

SIN(A) Seno.

COS(A) Coseno TAN(A)

Tangente.

ASN(A) Arcoseno

ACS(A) Arcocoseno.

ATN(A) Arcotangente. XPY(A,B)

“A” elevado a la “B” A**B

“A” elevado a la “B”

Tabla 32– Funciones matemáticas.

l) Funciones lógicas de comparación.

Función Descripción

> Mayor que.

>= Mayor o igual que. =

Igual que.

<= Menor o igual que.

< Menor que.

<> Diferente de.

Tabla 33– Funciones lógicas de comparación.

m) Funciones de lógica Booleana.

Page 141: Teoria Plc

CAPITULO 6. LENGUAJES Y EQUIPOS PARA LA PROGRAMACIÓN.

Prof. Danilo Navarro. Universidad De Oriente. Julio 2001. 136

Función Descripción

AND(A,B) “Y” lógica.

OR(A,B) “O” lógica XOR(A,B)

“O” exclusiva NOT(A)

Negación o inversión lógica

! Negación o inversión lógica

Tabla 34– Funciones lógicas BOOLANAS.

n) Estructuras de ejecución y lazos.

Estructura Descripción

IF-THEN-ELSIF-ELSE-END_IF; Ejecuta condicionalmente.

CASE-valor:-ELSE-END_CASE; Ejecuta selectivamente.

FOR-TO-BY-DO-END_FOR; Ejecuta cierto número de lazos.

WHILE-DO-END_WHILE; Ejecuta lazo mientras cumpla condición.

Tabla 35– Estructuras de ejecución y lazos.

o) Instrucciones especiales.

Instrucción Descripción

RETAIN() Causa que un bit sea memorizado.

IIN(); Actualiza una entrada (Immediate Input Update)

EXIT; Sale de un lazo FOR o WHILE

EMPTY

Tabla 36– Instrucciones especiales.

Page 142: Teoria Plc

CAPITULO 6. LENGUAJES Y EQUIPOS PARA LA PROGRAMACIÓN.

Prof. Danilo Navarro. Universidad De Oriente. Julio 2001. 137

En el siguiente ejemplo, se acepta una entrada en BCD proveniente de la

dirección (I:000) y se usa para cambiar el tiempo de retardo de un temporizado “al

trabajo” que en combinación con el estado de la entrada (I:002/00) activa la salida

(O:001/00).

FRD (I:000, DELAY_TIME); IF (I:002/00) THEN TON (T4:0, 1.0, DELAY_TIME, 0); ELSE RES (T4:0); END_IF; O:001/00 := T4:0.DN;

Page 143: Teoria Plc

CAPITULO 6. LENGUAJES Y EQUIPOS PARA LA PROGRAMACIÓN.

Prof. Danilo Navarro. Universidad De Oriente. Julio 2001. 138

6.5 Programación con bloques funcionales.

ste es un procedimiento de programación que hace resemblanza de los

diagramas de bloques. Al formar parte del estándar IEC 1131, cuenta con

características típicas como:

a) Existen diferentes tipos de datos en las líneas de conexión.

Fig. 125 – Ejemplo de programación con bloques funcionales.

b) Las entradas y las salidas se pueden “negar” mediante la adición de un bloque

inversor.

Fig. 126 – Bloques de negación.

c) Las funciones en los diagramas están basadas en otras funciones disponibles.

Las entradas a una función van por la izquierda, mientras que la salida

emerge por la derecha.

E

Page 144: Teoria Plc

CAPITULO 6. LENGUAJES Y EQUIPOS PARA LA PROGRAMACIÓN.

Prof. Danilo Navarro. Universidad De Oriente. Julio 2001. 139

Texto estructurado Equivalente bloques funcionales

O:=ADD(A,B)

Fig. 127 – Ejemplo de equivalencia entre texto estructurado y bloques funcionales.

d) Algunas funciones pueden poseer un número variables de argumentos de

entrada.

Texto estructurado Equivalente bloques funcionales

O:=LIM(MN:=A, IN:=B, MX:=C)

O:=LIM(MN:=A, IN:=B)

Fig. 128 – Funciones de tres argumentos.

e) Se pueden desarrollar bloques función usando texto estructurado, LADDER u

otros lenguajes de programación.

Texto estructurado Equivalente bloques funcionales

FUNCTION_BLOCK DIVIDE VAR_INPUT A: INT; B: INT; END_VAR VAR_OUTPUT C: INT; END_VAR IF B <> 0 THEN C := A / B; ELSE C:= 0; END_IF; END_FUNCTION_BLOCK

Fig. 129 – Desarrollos de bloques funcionales.

Page 145: Teoria Plc

CAPITULO 6. LENGUAJES Y EQUIPOS PARA LA PROGRAMACIÓN.

Prof. Danilo Navarro. Universidad De Oriente. Julio 2001. 140

6.6 Equipos para la programación.

xisten cuatro formas o equipos para la programación, configuración y

explotación de los PLCs: Los equipos integrados, las consolas

BOOLEANAS portátiles o HAND HELD, los terminales de programación

gráfica y los PCs + Software especial.

Fig. 130 – Equipos integrados.

Fig. 131 – Hand Held.

E

Page 146: Teoria Plc

CAPITULO 6. LENGUAJES Y EQUIPOS PARA LA PROGRAMACIÓN.

Prof. Danilo Navarro. Universidad De Oriente. Julio 2001. 141

Fig. 132 – Terminal de programación gráfica.

Fig. 133 – Programación mediante PCs + Software especializado.

Page 147: Teoria Plc

Prof. Danilo Navarro. Universidad De Oriente. Julio 2001. 142

COMUNICACIONES.

7.1 Comunicación RS-232 (Hardware).

a comunicación a través de un puerto de comunicaciones RS-232 es el

método más popular para la comunicación de los PLCs con dispositivos

externos. Este es un método de comunicación asincrónica que usa el

sistema binario (1's y 0's) para transmitir los datos en un formato ASCII(American

Standard Code for Information Interchange). Este código traduce el código humano

(letras / números) a un código legible por las computadoras(1's y 0's). La transmisión

y recepción de los datos se hace a través del puerto serial de los PLCs. Este puerto

trabaja enviando y recibiendo señales de voltaje. Un voltaje positivo se conoce

como una MARCA, mientras que un voltaje negativo es un ESPACIO.

Típicamente los PLCs trabajan con +/- 15 voltios.

Existen 2 tipos de dispositivos RS-232. El primero es llamado DTE (Data

Terminal Equipment) y un ejemplo de él es un computador. El segundo tipo de

dispositivo es llamado DCE (Data Communications Equipment) y un ejemplo de él es

un MODEM (Modulador / Demodulador). Los PLCs pueden ser tanto DTE como

DCE.

El puerto serial del PLC trabaja poniendo algún pin en on (ALTO) mientras

pone algún otro en off (BAJO). Cada uno de estos pines esta dedicado a un

propósito específico. El puerto serial viene en dos presentaciones: un tipo de 25

pines y otro de 9 pines. Los pines y sus propósitos se muestran a continuación. (esta

tabla asume que el equipo es un DTE).

Capítulo

7

L

Page 148: Teoria Plc

CAPITULO 7. COMUNICACIONES.

Prof. Danilo Navarro. Universidad De Oriente. Julio 2001. 143

9-PIN 25-PIN PROPÓSITO

1 1 Aterramiento de la carcasa

2 3 Recepción de datos (RD: Receive data)

3 2 Transmisión de datos (TD: Transmit data)

4 20 Terminal listo (DTR: data terminal ready)

5 7 Referencia de la señal

6 6 Equipo OK (DSR: data set ready)

7 4 Listo para transmitir (RTS: request to send)

8 5 Listo para recibir (CTS: clear to send)

9 22 Indicador de tono (RI: ring indicator) *Sólo para MODEMs*

Tabla 37 – Tabla asignación de pines del puerto RS-232.

• Aterramiento- Este pin debe ser conectado internamente al chasis del

dispositivo.

• Recepción de datos- este pin es por entra los datos provenientes de un

dispositivo externo.

• Transmisión de datos- Este pin es por donde salen los datos rumbo a un

dispositivo externo.

• Terminal listo- Este pin es el control maestro para el dispositivo externo.

Cuando este pin esta en 1 el dispositivo externo ni transmite ni recibe datos.

• Referencia de la señal- Ya que los datos son enviados como voltajes

positivos o como voltajes negativos, este pin sirve como referencia a ambas

señales.

• Equipo OK- Usualmente los dispositivos externos mantienen este pin

permanentemente en 0 y el PLC lo usa básicamente para determinar si el

dispositivo externo esta encendido y listo.

Page 149: Teoria Plc

CAPITULO 7. COMUNICACIONES.

Prof. Danilo Navarro. Universidad De Oriente. Julio 2001. 144

• Listo para transmitir- este es parte de la sincronización del hardware.

Cuando el PLC desea enviar datos a un dispositivo externo, el pone este pin

en 0. En otras palabras, el PLC pone este bits en 0 para indicar que “desea

enviar datos”, y el dispositivo externo responde poniendo el pin CLEAR TO

SEND a 0 indicando así que “esta listo”. entonces, el PLC envía los datos.

• Listo para el envío- Esta es la otra mita de la sincronización del hardware.

Como se vio anteriormente, el dispositivo externo pone este pin en 0 para

indicar que esta listo para recibir datos.

• Indicador de tono- Se usa solamente cuando el PLC esta conectado a un

modem.

¿Que pasaría si tanto el PLC como el dispositivo externo son DTE o si ambos son

DCE? No podrán comunicarse uno con el otro.

La figura siguiente muestra porque 2 dispositivos del mismo tipo no pueden

comunicarse entre sí.

Fig.134 – Conexión incorrecta.

Nótese que en la figura de arriba la línea de recepción de datos (pin 2) del

primer dispositivo esta conectada con la línea de recepción de datos del segundo

dispositivo. Con la línea de transmisión de datos pasa algo similar excepto que es

para la transmisión sobre el pin 3.La solución a este problema es usar una conexión

tipo null-modem como las mostrada a continuación.

Fig. 135 – Conexión Null-Modem.

Page 150: Teoria Plc

CAPITULO 7. COMUNICACIONES.

Prof. Danilo Navarro. Universidad De Oriente. Julio 2001. 145

Como resumen, considere este ejemplo donde ambos dispositivos están

encendido y el PLC es un DTE, mientras que otro dispositivo externo es un

DCE.

El dispositivo externo activa su pin DSR lo cual dice al PLC que está ahí y que

está encendido. El PLC activa su pin RTS lo cual es igual que preguntar al dispositivo

externo “Estas listo para recibir algunos datos”. El dispositivo externo responde

activando su pin CTS con lo cual dice que esta OK que el PLC envíe datos. El PLC

envía datos usando su pin TD terminal y el dispositivo externo la recibe por su pin

RD. Algunos datos son enviados y recibidos. Después de un tiempo, El dispositivo

externo no puede procesar los datos tan rápidamente, y por eso pone a 0 su pin CTS

y el PLC congela el envío de datos. El dispositivo externo se pone al corriente y

entonces pone nuevamente a 1 su pin CTS . El PLC reanuda el envío de datos a

trabes del terminal TD terminal y el dispositivo externo los recibe a trabes de su

terminal RD. El PLC se le acaban los datos por enviar y entonces pone a cero su pin

RTS. El dispositivo externo para de recibir y entonces aguarda por mas datos futuros.

Page 151: Teoria Plc

CAPITULO 7. COMUNICACIONES.

Prof. Danilo Navarro. Universidad De Oriente. Julio 2001. 146

7.2 Comunicación RS-232 (Software).

• ASCII es un código de traducción de lo entendible por humanos a lo

entendible por computadoras (cada letra o número es convertido en 1's y 0's).

Su código de 7 bits permite codificar 128 caracteres (27 = 128). La tabla

siguiente muestra la representación ASCII hexadecimal de los 128 símbolos o

caracteres. Por ejemplo, en la tabla se ve que el "0" se codifica como 30h, el

"5" como 35h, la letra "E" como 45h, etc.

Bits más significantes

0 1 2 3 4 5 6 7

0 space 0 @ P ` p

1 XON ! 1 A Q a q

2 STX " 2 B R b r

3 ETX XOFF # 3 C S c s

4 $ 4 D T d t

5 NAK % 5 E U e u

6 ACK & 6 F V f v

7 ' 7 G W g w

8 ( 8 H X h x

9 ) 9 I Y i y

A LF * : J Z j z

B + ; K [ k {

C , < L \ l |

D CR - = M ] m }

E . > N ^ n ~

Bits

Menos

significantes

F / ? O _ o

Tabla38 – Tabla símbolos ASCII.

Page 152: Teoria Plc

CAPITULO 7. COMUNICACIONES.

Prof. Danilo Navarro. Universidad De Oriente. Julio 2001. 147

• Bit de inicio- En el RS-232 lo primero que se envía es llamado bit de inicio.

Este bit de inicio (“inventado durante la 1era guerra mundial por Kleinschmidt)

es un bit de sincronización adicionada justamente antes de enviar cada

carácter. Este es considerado un ESPACIO, un voltaje negativo o un “0”.

• Bit de parada- Es el último bit que se envía después de cada carácter (fin de

carácter). Es considerado como una MARCA, Voltaje positivo o un “1”.

• Bit de paridad- Ya que muchos PLC y dispositivos externos están orientados

al byte (8 bits = 1byte), parece mejor manejar los datos como un byte. Aunque

ASCII es un código de 7 bits no es común transmitirlo de esa manera.

Típicamente se usa un octavo bit de paridad para el chequeo de errores. Este

método de chequeo de errores recibe su nombre de la idea matemática de la

paridad. En términos simples, todos los caracteres tendrán una cantidad par

de 1’s, o una cantidad impar de 1’s. De aquí que las formas comunes de

paridad sean: Par, Impar y ninguna. Considere este ejemplo:

enviar el carácter "E" (45h en Hexadecimal o 1000101b en Binario)

Paridad Ninguna: Como el bit de paridad es siempre 0, entonces se envía

10001010.

Paridad par: Se debe tener una cantidad par de 1's. Como el carácter original

tiene 3 1’s (1000101) entonces el bit de paridad a adicionar debe ser 1

(10001011). Ahora lo enviado si tiene una cantidad par de 1's.

Paridad impar: Se debe tener una cantidad impar de 1's. Como el carácter

original tiene 3 1’s (1000101), osea una cantidad impar, entonces el bit de

paridad a adicionar debe ser 0 (10001010).

Durante la comunicación el dispositivo que transmite calcula el bit de paridad y

lo envía. Por su parte el receptor calcula también la paridad para el carácter

de 7 bits y la compara con el bit de paridad recibido. Si los bits calculado y

recibido no son iguales, ha ocurrido un error y entonces se ejecuta la rutina

apropiada en este caso.

El método de chequeo de paridad no es muy popular. Esto se debe a que el

mismo es efectivo sólo la mitad de las veces, ya que el chequeo de la paridad

puede sólo detectar errores que afectan una cantidad impar de bits. Si el error

Page 153: Teoria Plc

CAPITULO 7. COMUNICACIONES.

Prof. Danilo Navarro. Universidad De Oriente. Julio 2001. 148

afecto a 2, 4 o 6 bits el método es inútil. Típicamente los errores son causados

por el ruido que viene en ráfagas y que difícilmente afecta a un solo bit. De

aquí que sea más popular usar el método de chequeo mediante bloque

redundante.

• Rata de Baudios- Se refiere a la cantidad de bits por segundos (bps) que son

transmitidos. Valores comunes son 1200, 2400, 4800, 9600, 19200, y 38400

bps.

• Formato de datos RS-232- (Rata de baudios-bits de datos-paridad-bits de

parada) Esta es la manera como típicamente se especifica el formato de los

datos. Por ejemplo: 9600-8-N-1 significa una rata de baudios igual a 9600 bps,

8 bits de datos, sin paridad, y un bit de parada.

La siguiente figura muestra como los datos correspondientes al carácter “E”

(45h=100 0101b) con paridad “par”, salen por el puerto serial.

Fig. 36 – Tren de bits correspondiente al carácter “E”

Otra importante característica que algunas veces es usada para la

sincronización entre dispositivos es el “control de flujo”, el cual se usa para asegurar

que ambos dispositivos estén listos para enviar / recibir datos. El más popular

“control de flujo de caracteres” se conoce como XON/XOFF. Simplemente cuando el

receptor desea que el transmisor haga una pausa, él envía el carácter XOFF.

Cuando el receptor desea recibir datos otra vez, él envía al transmisor el carácter

XON.

Una última característica son los “delimitadores”, los cuales se agregan al final

del mensaje para indicar al receptor que procese los datos que él ha recibido. El más

popular es el CR(carriage return) o el par CR y LF(line feed). Cuando el PLC u otro

dispositivo externo recibe estos delimitadores, sabe que tiene que tomar los datos del

Page 154: Teoria Plc

CAPITULO 7. COMUNICACIONES.

Prof. Danilo Navarro. Universidad De Oriente. Julio 2001. 149

buffer que ya están listos.(El buffer es la memoria donde se guardan temporalmente

los datos que se están recibiendo).

Para la transmisión / recepción a veces se usa igualmente el par STX(start of

text) y ETX(end of text). El STX es enviado antes de los datos e indica al dispositivo

externo que los datos vienen a continuación. Después que todos los datos han sido

enviados, un carácter ETX es enviado.

Finalmente, poco menos usual, pero también se usa un par ACK/NAK

(acknowledge). Esencialmente , el transmisor envía sus datos y el receptor debe

enviar como respuesta un carácter ACK para indicar que recibió sin errores, o un

carácter NAK si la recepción tuvo errores. En el último caso el transmisor debe

reenviar los datos.

Page 155: Teoria Plc

CAPITULO 7. COMUNICACIONES.

Prof. Danilo Navarro. Universidad De Oriente. Julio 2001. 150

7.3 Usando RS-232 dentro de la programación escalera.

lgunos PLC incluyen capacidad de comunicación RS-232 en el procesador

principal, otros usan el puerto de programación para este fin, y un tercer

grupo requiere que se le instale un módulo especial RS-232 para

comunicarse con otros dispositivos externos. Como dispositivo externo se entienden

las interfaces con los operadores (HMI: Human Machine Interface), computadores,

controladores de motores, sistemas de visión y robotizados, etc.

Para comunicarse vía RS-232 se deben establecer algunas cosas:

• ¿En que lugar de la memoria se almacenaran los datos a ser enviados?

• ¿En que lugar de la memoria se almacenarán los datos recibidos de los

dispositivos externos?

• ¿Cómo indicarle al PLC que es el momento para enviar los datos por el puerto

serial?

• ¿Como se sabrá que se ha recibido datos desde un dispositivo externo?

Como se nota, para establecer la comunicación con dispositivos externos sólo hay

que escoger en la memoria disponible un área de trabajo, y seleccionar unos relés

internos para enviar y recibir datos. Pero antes de realizar esto, considérese las

siguientes definiciones.

• Buffer- Es una locación de memoria usada para almacenamiento temporal

donde el PLC o el dispositivo externo hace lo propio con los datos recibidos o

con los datos que están aguardando para ser enviado vía RS-232.

• Cadena- es una forma sencilla de referirse a un grupo de caracteres. La

palabra “hola” es una cadena, ya que es un grupo de caracteres (h-o-l-a) que

están relacionados entre sí para lograr un significado útil. "43770" también es

una cadena aunque por ahora carezca de sentido alguno. Sin embargo la

A

Page 156: Teoria Plc

CAPITULO 7. COMUNICACIONES.

Prof. Danilo Navarro. Universidad De Oriente. Julio 2001. 151

cadena anterior podría ser un comando que indique a un robot que envíe su

posición actual.

• Concatenar- Simplemente significa combinar 2 cadenas entre sí para lograr

una sola. Por ejemplo se concatena “láser” y “jet” se obtendría la cadena única

“laserjet”.

Ahora bien, los pasos típicos a seguir para lograr establecer la comunicación se dan

a continuación.

1. Se debe asignar por ejemplo las locaciones de memoria DM100 hasta DM102

para que sean el lugar donde se pondrán los datos antes de enviarlos por el

puerto serial. Como nota especial considere el hecho de que muchos PLCs

tienen áreas de memoria especialmente dedicadas a este fin.

2. Se debe asignar por ejemplo el relé interno 1000 para que funcione como

nuestra bandera de arranque de transmisión. En otras palabras, cuando se

active el relé 1000 el PLC enviará los datos contenido en DM100-DM102 por

el puerto serial hacia el dispositivo externo. Nótese nuevamente que muchos

PLCs cuentan con relés especiales para ejecutar lo mencionado.

En el siguiente ejemplo se enviará la cadena "alr" por el puerto serial del PLC

hacia una interfase hombre-máquina cuando un sensor de temperatura se active

indicando que el horno se ha sobrecalentado. Cuando el dispositivo externo que

funciona como HMI reciba esta cadena, desplegará un mensaje de alarma para que

sea vista por un operador. Al mirar la tabla ASCII se nota que “alr” en hexadecimal es

igual a 61, 6C, 72 (a=61, l=6C, r=72). De aquí que se deba escribir en forma

individual estos caracteres ASCII (en forma Hexadecimal) en las locaciones de

memoria ya antes seleccionadas (DM100-102). Para ello se utilizarán las

instrucciones LDA o MOV. Posteriormente, se activara el relé de envío cuando el

sensor de temperatura (entrada 0000) se ponga en alto. El diagrama escalera

resultante se muestra a continuación.

Page 157: Teoria Plc

CAPITULO 7. COMUNICACIONES.

Prof. Danilo Navarro. Universidad De Oriente. Julio 2001. 152

Fig.37 – Envío de una cadena de caracteres.

Algunos PLCs pueden no tener relés internos dedicados al envió de datos a

trabes de puerto RS-232, y en consecuencia se deberá asignar manualmente por

configuración. También, algunos PLCs cuentan con instrucciones especiales para

indicar donde los datos han sido almacenados y para indicar cuando enviar los datos.

Estas instrucciones son llamadas comúnmente como AWT (ASCII Write) o RS

(Request to Send).

Page 158: Teoria Plc

Prof. Danilo Navarro. Universidad De Oriente. Julio 2001. 153

CONCLUSIÓN

os Controladores Lógicos Programables o PLCs son elementos de control de

estado sólido que si bien su origen fue en las líneas de producción de la

industria automotriz, hoy se encuentran diseminados en muy diversas

aplicaciones: desde el simple control local de una máquina o proceso hasta las más

avanzadas operaciones de control distribuido. Su operación no sólo se limita a ciclos

mono tarea sino que pueden ejecutar tareas concurrentes, tareas rápidas activadas

por eventos, sub tareas, etc. La comunicación con el mundo exterior la logra

principalmente con sus interfases de entrada / salida, siendo la forma más popular la

de las entradas discretas a 24 Vdc en conjunto con salidas a contactos secos.

En otro orden de ideas, los elementos virtuales de control forman parte sui

generis de los PLCs, siendo esta la característica que permite a los usuarios crear

aplicaciones de control imposibles de realizar con los viejos sistemas a relés,

además de que les permite la fácil reprogramación de los cambios que surjan en la

lógica de control. Para lograr esta versatilidad de programación de la lógica de

control, los PLCs disponen de varios lenguajes mediante el cual se pueden crear las

aplicaciones en cuestión, pero de ellos el de más amplio uso es el lenguaje a

contactos o diagrama escalera ya que le es el más familiar a los profesionales que

están envuelto en las operaciones con PLCs.

Las herramientas de comunicación integrada a los PLCs no sólo mejora la

posibilidad de explotación de los sistemas de control, sino que además abre sus

aplicaciones hacia los sistemas integrados de manufactura y producción tales como:

CIM, CAM, etc.

Finalmente, todo lo relacionado a los Controladores Lógicos Programables o

PLCs, esta reunido bajo el estándar IEC-1131.

L

Page 159: Teoria Plc

Prof. Danilo Navarro. Universidad De Oriente. Julio 2001. 154

BIBLIOGRAFÍA

1. http://www.thelearningpit.com

2. http://www.plcs.net/contents.shtml

3. Hugh, Jack: Automated manufacturing systems. PLCs. First Draft. Enero 2000.

4. Industrial programmable controller. Modicon. Catálogo, Febrero 1998.

5. Micro autómata TSX 17.Manual de Instalación: Telemecanique. Manual 1989.

6. Petrozella, Frank: Programmable logic controller. Enero 1997.

7. Rabiee, Max et al.:Programmable logic controller: Hardware and

Programming. Enero 2000.

8. Relé programable ZELIO LOGIC. Telemecanique. Manual Enero, 2000.

9. Rosandich, Ryan: Fundamental of Programmable Logic Controller. Septiembre

1997.

10. Siemens Technical Education Program: Basics of PLCs. Julio 1986.

11. Terminal TSX T317. Programación PL7-1. Lenguaje Booleano.

Telemecanique. Manual 1989.