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.

CONTENIDO
Introducción. 1. El comienzo. 1.1 ¿Qué es un PLC? 1.2 Historia de los PLCs. 1.3 Características sobresalientes de los PLCs 1.4 Ventajas de los PLCs sobre la lógica a relés. 1.5 Listado de principales fabricantes. 2. Operación de los PLCs. 2.1 Estructura interna. 2.2 Como trabajan los PLCs. 2.3 Tiempo de respuesta de los PLCs y sus efectos. 3. Conexionado e interfaces de entrada / salida. 3.1Tipos de Entrada / Salida a los PLCs. 3.2 Entradas al PLC 3.3 Entradas DC. 3.4 Conexionado de entradas DC. 3.4.1 Conexionado de entradas tipo NPN. 3.4.2 Conexionado de entradas tipo PNP 3.4.3 Conexionado de sensores tipo 2 hilos. 3.5 Entradas AC. 3.6 Conexionado de entradas AC 3.8 Salidas del PLC. 3.9 Salidas a relé. 3.10 Salidas a transistores 4. Creación de programas. 4.1 Sustitución de relés. 4.2 lenguajes de programación. 4.3 Instrucciones básicas. 4.4 Registros de direcciones en los PLCs. 4.5 Un ejemplo de control de nivel.
Prof. Danilo Navarro. Universidad De Oriente. Julio 2001.

Pag. Pag. Pag. Pag. Pag.

1 3 5 8 9

Pag. Pag.

12 16

Pag. 18

Pag. Pag. Pag.

22 24 26

Pag. 29 Pag. 30 Pag. Pag. Pag. Pag. Pag. Pag. Pag. 31 32 34 36 37 39 41

Pag. Pag. Pag.

44 48 51

Pag. 55 Pag. 57
i

CONTENIDO

4.6 Ejecución del programa de control de nivel. 5. Principales instrucciones. 5.1 Álgebra Booleana. 5.2 Instrucciones memorizadas. 5.3 Contadores. 5.4 Temporizadores. 5.5 Precisión de los temporizadores. 5.6 Instrucción Un-Scan. 5.7 Control maestro. 5.8 Registros de desplazamiento. 5.9 Acceso y manipulación de datos. 5.10 Instrucciones matemáticas. 6. Lenguaje y equipos para la programación. 6.1 Lenguaje escalera (LADDER). 6.1.1 Principios de programación. 6.1.2 Ejemplo de control de estacionamiento. 6.2 Lista de instrucciones (AWL, BOOLEANO, Nemónicos). 6.3 Gráficos funcionales de secuencia (SFC, GRAFCET). 6.3.1 Reglas para la construcción del GRAFCET 6.3.2 Ejemplo 6.4 Programación con texto estructurado. 6.5 Bloques funcionales. 6.6 Equipos para la programación. 7. Comunicaciones. 7.1 Comunicación RS-232 (Hardware). 7.2 Comunicación RS-232 (Software). 7.3 Usando RS-232 dentro de la programación escalera Conclusiones. Bibliografía. Anexos

Pag. 59

Pag. 62 Pag. 67 Pag. 69 Pag. 73 Pag. 78 Pag. 81 Pag. 84 Pag. 86 Pag. 92 Pag. 96

Pag. 101 Pag. 103 Pag. 104 Pag. 111 Pag. 120 Pag. 124 Pag. 128 Pag. 134 Pag. 140 Pag. 142

Pag. 144 Pag. 146 Pag. 152 Pag. 155 Pag. 156

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

ii

INTRODUCCION

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

L

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

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.

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

iii

INTRODUCCIÓN

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.

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

iv

Capítulo

1

EL COMIENZO.
1.1 ¿Qué es un PLC?

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.

U

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

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.

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

1

CAPITULO 1.

EL COMIENZO.

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.

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

2

CAPITULO 1.

EL COMIENZO.

1.2 Breve historia de los PLC.

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

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.

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

3

CAPITULO 1.

EL COMIENZO.

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.

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

4

CAPITULO 1.

EL COMIENZO.

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
Prof. Danilo Navarro. Universidad De Oriente. Julio 2001. 5

CAPITULO 1.

EL COMIENZO.

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.

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

6

CAPITULO 1.

EL COMIENZO.

Fig. 7 – Capacidad de comunicación.

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

7

CAPITULO 1.

EL COMIENZO.

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

LOGICA CON PLCs v Flexibilidad de configuración programación.

y

LÓGICA A RELES Ö Costosos cambios de hardware Ö Mayor tiempo de cambios en la lógica de control Ö Pocas funciones: Relés,

v Rápidos cambios de la lógica de control. v Amplia variedad de funciones: Relés, Contadores, Temp., Secuenciadores, Registros, etc. v Reducción de espacio v Montaje fácil y rápido v Localización fácil y rápida de averías y fallas v Alta confiabilidad. Elementos de

Contadores, Temporizadores Ö Mayor espacio relativo Ö Montaje lento y tedioso Ö Búsqueda lenta y más difícil de averías Ö Poca confiabilidad. Partes

estado sólido v Múltiples contactos NO, NC v Consumo de energía reducido v Reducción del costo a medida que aumenta la complejidad del proceso

mecánicas Ö Máximo de 4 a 6 contactos Ö Mayor consumo de energía Ö A partir de 15 o 20 relés, el costo comparativo supera el costo con PLCs

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

8

CAPITULO 1.

EL COMIENZO.

1.5 Listado de principales fabricantes de PLCs.

A
Alfa Laval Aromat

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

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

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
Prof. Danilo Navarro. Universidad De Oriente. Julio 2001. 9

CAPITULO 1.

EL COMIENZO.

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/
Prof. Danilo Navarro. Universidad De Oriente. Julio 2001. 10

CAPITULO 1.

EL COMIENZO.

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

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

11

Capítulo

2

OPERACIÓN DE LOS PLCs.
2.1 Estructura interna.

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.

L

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,

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

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

12

CAPITULO 2.

OPERACIÓN DE LOS PLCS.

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.

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

13

CAPITULO 2.

OPERACIÓN DE LOS PLCS.

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.

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

14

CAPITULO 2.

OPERACIÓN DE LOS PLCS.

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.

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

15

CAPITULO 2.

OPERACIÓN DE LOS PLCS.

2.2 ¿Cómo trabajan los PLCs?.

U

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
Prof. Danilo Navarro. Universidad De Oriente. Julio 2001. 16

CAPITULO 2.

OPERACIÓN DE LOS PLCS.

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.

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

17

CAPITULO 2.

OPERACIÓN DE LOS PLCS.

2.3 Tiempos de respuesta de los PLCs y sus efectos.

E

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.

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

18

CAPITULO 2.

OPERACIÓN DE LOS PLCS.

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.

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

19

CAPITULO 2.

OPERACIÓN DE LOS PLCS.

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.

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

20

CAPITULO 2.

OPERACIÓN DE LOS PLCS.

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.

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

21

Capítulo

3

CONEXIONADO E INTERFACES DE ENTRADA / SALIDA.
3.1 Tipos de Entrada / Salida a los PLCs.

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.

L

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

Fig. 14 – Entradas – Salidas discretas al PLC.

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

22

CAPITULO 3.

CONEXIONADO E INTERFACES DE ENTRADA / SALIDA.

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.

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

23

CAPITULO 3.

CONEXIONADO E INTERFACES DE ENTRADA / SALIDA.

3.2 Entradas al PLC.

L

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

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

24

CAPITULO 3.

CONEXIONADO E INTERFACES DE ENTRADA / SALIDA.

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.

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

25

CAPITULO 3.

CONEXIONADO E INTERFACES DE ENTRADA / SALIDA.

3.3 Entradas DC.

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

T

í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

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.
Prof. Danilo Navarro. Universidad De Oriente. Julio 2001. 26

CAPITULO 3.

CONEXIONADO E INTERFACES DE ENTRADA / SALIDA.

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
Prof. Danilo Navarro. Universidad De Oriente. Julio 2001. 27

CAPITULO 3.

CONEXIONADO E INTERFACES DE ENTRADA / SALIDA.

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.

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

28

CAPITULO 3.

CONEXIONADO E INTERFACES DE ENTRADA / SALIDA.

3.4 Conexionado de entradas DC.

sensores con distintos tipos de salida: v Salida tipo Switch o relé: Conmutan un voltaje DC o AC.

C

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

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.

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

29

CAPITULO 3.

CONEXIONADO E INTERFACES DE ENTRADA / SALIDA.

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.

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

30

CAPITULO 3.

CONEXIONADO E INTERFACES DE ENTRADA / SALIDA.

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.
Prof. Danilo Navarro. Universidad De Oriente. Julio 2001. 31

CAPITULO 3.

CONEXIONADO E INTERFACES DE ENTRADA / SALIDA.

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.

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

32

CAPITULO 3.

CONEXIONADO E INTERFACES DE ENTRADA / SALIDA.

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

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

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

33

CAPITULO 3.

CONEXIONADO E INTERFACES DE ENTRADA / SALIDA.

3.5 Entradas AC.

U

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.

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

34

CAPITULO 3.

CONEXIONADO E INTERFACES DE ENTRADA / SALIDA.

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.

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

35

CAPITULO 3.

CONEXIONADO E INTERFACES DE ENTRADA / SALIDA.

3.6 Conexionado de entradas AC.

U

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.

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

36

CAPITULO 3.

CONEXIONADO E INTERFACES DE ENTRADA / SALIDA.

3.8 Salidas del PLC.

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

L

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

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é.
Prof. Danilo Navarro. Universidad De Oriente. Julio 2001. 37

CAPITULO 3.

CONEXIONADO E INTERFACES DE ENTRADA / SALIDA.

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

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

38

CAPITULO 3.

CONEXIONADO E INTERFACES DE ENTRADA / SALIDA.

3.9 Salidas a relé.

U

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
Prof. Danilo Navarro. Universidad De Oriente. Julio 2001. 39

CAPITULO 3.

CONEXIONADO E INTERFACES DE ENTRADA / SALIDA.

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.

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

40

CAPITULO 3.

CONEXIONADO E INTERFACES DE ENTRADA / SALIDA.

3.10 Salidas a transistores.

U

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

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

41

CAPITULO 3.

CONEXIONADO E INTERFACES DE ENTRADA / SALIDA.

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.

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

42

CAPITULO 3.

CONEXIONADO E INTERFACES DE ENTRADA / SALIDA.

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.

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

43

Capítulo

4

CREACIÓN DE PROGRAMAS.
4.1 sustitución de los relés.

E

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.

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

44

CAPITULO 4.

CREACIÓN DE PROGRAMAS.

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

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

45

CAPITULO 4.

CREACIÓN DE PROGRAMAS.

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.

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

46

CAPITULO 4.

CREACIÓN DE PROGRAMAS.

Fig. 44 – Diagrama escalera del ejemplo. La figura anterior representa la conversión del esquemático de control a un diagrama escalera.

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

47

CAPITULO 4.

CREACIÓN DE PROGRAMAS.

4.2 Lenguajes de programación.

E

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 00001 00002 00003 00004 00005 00006 00007 00008 00009

INSTRUCCIÓN LD LDN AND LD LD AND OR ST END

OPERANDO 00001 00002

00003 00004

00107

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.

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

48

CAPITULO 4.

CREACIÓN DE PROGRAMAS.

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.

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

49

CAPITULO 4.

CREACIÓN DE PROGRAMAS.

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.

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

50

CAPITULO 4.

CREACIÓN DE PROGRAMAS.

4.3 Instrucciones básicas.

A

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
Prof. Danilo Navarro. Universidad De Oriente. Julio 2001. 51

CAPITULO 4.

CREACIÓN DE PROGRAMAS.

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 0 1 Load Falso Cierto LoadBar 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:
Prof. Danilo Navarro. Universidad De Oriente. Julio 2001. 52

CAPITULO 4.

CREACIÓN DE PROGRAMAS.

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 0 1 Out Falso Cierto OutBar 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.

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

53

CAPITULO 4.

CREACIÓN DE PROGRAMAS.

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.

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

54

CAPITULO 4.

CREACIÓN DE PROGRAMAS.

4.4 Registros de direcciones en los PLCs.

E

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 1 00 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.
Prof. Danilo Navarro. Universidad De Oriente. Julio 2001.

55

CAPITULO 4.

CREACIÓN DE PROGRAMAS.

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 0 Logic Falso 1 Lógico Cierto LDB Cierto Falso OUT 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 SW1 SW2 Abierto(0) Abierto(0) Abierto(0) Cerrado(1) Cerrado(1) Abierto(0) Cerrado(1) Cerrado(1)

Estatus Salida BOBINA Desenergizada Desenergizada energizada Desenergizada

Estado Lógico del símbolo LD 0000 LDB 0001 OUT 0500 0 1 0 0 0 0 1 1 1 1 0 0

Tabla 6 – Tabla de la verdad del ejemplo.

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

56

CAPITULO 4.

CREACIÓN DE PROGRAMAS.

4.5 Un ejemplo de control de nivel.

C

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:

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

57

CAPITULO 4. Entrada Sensor bajo nivel Sensor alto nivel Dirección 0000 0001 Salida Motor Dirección 0500

CREACIÓN DE PROGRAMAS. Relés Internos 1000

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.

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

58

CAPITULO 4.

CREACIÓN DE PROGRAMAS.

4.6 Ejecución del programa de control de nivel.

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.

I

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

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

b)

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.
Prof. Danilo Navarro. Universidad De Oriente. Julio 2001. 59

CAPITULO 4.

CREACIÓN DE PROGRAMAS.

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) Fig. 60 – a) Scan 1001. b) Scan 1002.

b)

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.

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

60

CAPITULO 4.

CREACIÓN DE PROGRAMAS.

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

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

61

Capítulo

5

PRINCIPALES INSTRUCCIONES.
5.1 Álgebra Booleana.

E

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 0 1 0 1 B 0 0 1 1 Resultado 0 0 0 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
Prof. Danilo Navarro. Universidad De Oriente. Julio 2001. 62

CAPITULO 5.

PRINCIPALES INSTRUCCIONES.

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 0 1 0 1 B 0 0 1 1 Resultado 0 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 0 1 0 1 B 0 0 1 1 Resultado 0 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
Prof. Danilo Navarro. Universidad De Oriente. Julio 2001. 63

CAPITULO 5.

PRINCIPALES INSTRUCCIONES.

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.

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

64

CAPITULO 5.

PRINCIPALES INSTRUCCIONES.

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.

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

65

CAPITULO 5.

PRINCIPALES INSTRUCCIONES.

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.

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

66

CAPITULO 5.

PRINCIPALES INSTRUCCIONES.

5.2 Instrucciones memorizadas.

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.

L

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.

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á
Prof. Danilo Navarro. Universidad De Oriente. Julio 2001. 67

CAPITULO 5.

PRINCIPALES INSTRUCCIONES.

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.

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

68

CAPITULO 5.

PRINCIPALES INSTRUCCIONES.

5.3 Contadores.

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

U

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

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
Prof. Danilo Navarro. Universidad De Oriente. Julio 2001. 69

CAPITULO 5.

PRINCIPALES INSTRUCCIONES.

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

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

70

CAPITULO 5.

PRINCIPALES INSTRUCCIONES.

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.

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

71

CAPITULO 5.

PRINCIPALES INSTRUCCIONES.

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.

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

72

CAPITULO 5.

PRINCIPALES INSTRUCCIONES.

5.4 Temporizadores.

L
• •

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

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

73

CAPITULO 5.

PRINCIPALES INSTRUCCIONES.

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.
Prof. Danilo Navarro. Universidad De Oriente. Julio 2001. 74

CAPITULO 5.

PRINCIPALES INSTRUCCIONES.

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.

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

75

CAPITULO 5.

PRINCIPALES INSTRUCCIONES.

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.
Prof. Danilo Navarro. Universidad De Oriente. Julio 2001. 76

CAPITULO 5.

PRINCIPALES INSTRUCCIONES.

(VER ANIMA5.PPT EN EL CD ANEXO)

Fig. 78 – Figura animación uso del bloque temporizador acumulativo.

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

77

CAPITULO 5.

PRINCIPALES INSTRUCCIONES.

5.5 Precisión de los Temporizadores.

C

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
Prof. Danilo Navarro. Universidad De Oriente. Julio 2001. 78

CAPITULO 5.

PRINCIPALES INSTRUCCIONES.

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.

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

79

CAPITULO 5.

PRINCIPALES INSTRUCCIONES.

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.

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

80

CAPITULO 5.

PRINCIPALES INSTRUCCIONES.

5.6 Instrucción UN-SCAN.

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.

E

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

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.

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

81

CAPITULO 5.

PRINCIPALES INSTRUCCIONES.

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:
Prof. Danilo Navarro. Universidad De Oriente. Julio 2001. 82

CAPITULO 5. •

PRINCIPALES INSTRUCCIONES.

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.

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

83

CAPITULO 5.

PRINCIPALES INSTRUCCIONES.

5.7 Control maestro.

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:

E

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

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.
Prof. Danilo Navarro. Universidad De Oriente. Julio 2001. 84

CAPITULO 5.

PRINCIPALES INSTRUCCIONES.

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.

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

85

CAPITULO 5.

PRINCIPALES INSTRUCCIONES.

5.8 Registros de desplazamiento.

E

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.

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

86

CAPITULO 5. •

PRINCIPALES INSTRUCCIONES.

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

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

87

CAPITULO 5.

PRINCIPALES INSTRUCCIONES.

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 0 02 0 01 0 00 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 0 02 0 01 0 00 1

Tabla 12 – Estado del registro al llegar un cono en buen estado.

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

88

CAPITULO 5.

PRINCIPALES INSTRUCCIONES.

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 0 02 0 01 1 00 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 0 02 1 01 0 00 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:
Prof. Danilo Navarro. Universidad De Oriente. Julio 2001. 89

CAPITULO 5. 10xx Register 15 14 13 12 11 10 09 08 07 06 05 04

PRINCIPALES INSTRUCCIONES.

03 1

02 0

01 1

00 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 0 02 1 01 1 00 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)

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

90

CAPITULO 5.

PRINCIPALES INSTRUCCIONES.

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.

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

91

CAPITULO 5.

PRINCIPALES INSTRUCCIONES.

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.

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

92

CAPITULO 5.

PRINCIPALES INSTRUCCIONES.

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.
Prof. Danilo Navarro. Universidad De Oriente. Julio 2001. 93

CAPITULO 5.

PRINCIPALES INSTRUCCIONES.

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

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

94

CAPITULO 5.

PRINCIPALES INSTRUCCIONES.

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.

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

95

CAPITULO 5.

PRINCIPALES INSTRUCCIONES.

5.10 Instrucciones matemáticas.

E

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:

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

96

CAPITULO 5. •

PRINCIPALES INSTRUCCIONES.

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.

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

97

CAPITULO 5.

PRINCIPALES INSTRUCCIONES.

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.
Prof. Danilo Navarro. Universidad De Oriente. Julio 2001. 98

CAPITULO 5.

PRINCIPALES INSTRUCCIONES.

(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.
99

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

CAPITULO 5. • • • •

PRINCIPALES INSTRUCCIONES.

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.

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

100

Capítulo

6

LENGUAJES Y EQUIPOS PARA LA PROGRAMACION.
6.1 Lenguaje escalera (LADDER).

S

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
Prof. Danilo Navarro. Universidad De Oriente. Julio 2001. 101

CAPITULO 6.

LENGUAJES Y EQUIPOS PARA LA PROGRAMACIÓN.

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.
Prof. Danilo Navarro. Universidad De Oriente. Julio 2001. 102

CAPITULO 6.

LENGUAJES Y EQUIPOS PARA LA PROGRAMACIÓN.

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
Prof. Danilo Navarro. Universidad De Oriente. Julio 2001. 103

CAPITULO 6.

LENGUAJES Y EQUIPOS PARA LA PROGRAMACIÓN.

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.

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

104

CAPITULO 6.

LENGUAJES Y EQUIPOS PARA LA PROGRAMACIÓN.

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: Número de entradas analógicas: Numero de salidas discretas: Contadores: Temporizadores: Reloj de tiempo real:

6 1 4 1 1 1

Tabla 17 – Requerimientos de entrada /salida del ejemplo del estacionamiento.
Prof. Danilo Navarro. Universidad De Oriente. Julio 2001. 105

CAPITULO 6.

LENGUAJES Y EQUIPOS PARA LA PROGRAMACIÓN.

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.

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

106

CAPITULO 6.

LENGUAJES Y EQUIPOS PARA LA PROGRAMACIÓN.

N° 01 02 03 04 05 06

ETIQUETA I1 I2 I3 I4 I5 I6

01 IB 01 02 03 04 01 02 03 04 Q1 Q2 Q3 Q4 Z1 Z2 Z3 Z4

DESCRIPCION Entradas Discretas Detector de entrada Detector de salida Switch temporizador Arranca extractor Para extractor Cierra barrera manual. Entradas Analógicas Detector CO2 Salidas Discretas Apertura barrera Cierre barrera Control iluminación. Control extractor Teclas Zx Apertura barrera Descontaje manual Cierra barrera Contaje manual

Tabla 18 – Variables de entrada / salida.

Tabla 19 – Parametrización de temporizadores y entradas analógicas.

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

107

CAPITULO 6.

LENGUAJES Y EQUIPOS PARA LA PROGRAMACIÓN.

Relojes

R1

R2 R3

Día y hora de inicio Lunes 8:00 Martes 8:00 Miércoles 8:00 Jueves 8:00 Viernes 6:00 Sábado 6:00 Domingo 0:00

Día y hora de fin Lunes 21:00 Martes 21:00 Miércoles 21:00 Jueves 21:00 Viernes 22:00 Sábado 23:59 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.

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

108

CAPITULO 6.

LENGUAJES Y EQUIPOS PARA LA PROGRAMACIÓN.

Fig. 106a – Diagrama escalera del ejemplo del estacionamiento.
Prof. Danilo Navarro. Universidad De Oriente. Julio 2001. 109

CAPITULO 6.

LENGUAJES Y EQUIPOS PARA LA PROGRAMACIÓN.

Fig. 106b – Diagrama escalera del ejemplo del estacionamiento.

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

110

CAPITULO 6.

LENGUAJES Y EQUIPOS PARA LA PROGRAMACIÓN.

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

C

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.
Prof. Danilo Navarro. Universidad De Oriente. Julio 2001. 111

CAPITULO 6.

LENGUAJES Y EQUIPOS PARA LA PROGRAMACIÓN.

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 LD ST S,R AND, & OR XOR ADD SUB MUL DIV GT GE EQ EN LE LT JMP CAL RET )

MODIF. N N

TIPO DATOS VARIADO VARIADO BOOLEANO

DESCRIPCIÓN Cargue el valor leído Almacene el resultado en la locación Set o Reset el valor actual(flip-flop) AND Booleana OR Booleana OR Exclusiva Booleana Suma Sustracción Multiplicación División Mayor que (>) Mayor o igual que (>=) Igual que(=) Distinto que (<>) Menor que (<) Menor o igual que (<=) Salto a la dirección Llamada a subrutina Retorno subrutina. Leer del “stack”

N, ( N, ( N, ( ( ( ( ( ( ( ( ( ( ( C, N C, N C, N

BOOLEANO BOOLEANO BOOLEANO VARIADO VARIADO VARIADO VARIADO VARIADO VARIADO VARIADO VARIADO VARIADO VARIADO ETIQUETA NOMBRE

Tabla 21 – Operadores y Nemónicos que establece el estándar IEC 1131.

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

112

CAPITULO 6.

LENGUAJES Y EQUIPOS PARA LA PROGRAMACIÓN.

DIAGRAMA ESCALERA

LISTA
LD ST LDN ST LD AND ST LD A X A X A B X A

ANDN B ST LD OR AND ST LD LD OR ANB ST LD OR LD OR ANB ST X X A B C D X A B C X A B C

Tabla 22 – Tabla de equivalencias Diagrama escalera - Lista de instrucciones.

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

113

CAPITULO 6.

LENGUAJES Y EQUIPOS PARA LA PROGRAMACIÓN.

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.

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

114

CAPITULO 6. •

LENGUAJES Y EQUIPOS PARA LA PROGRAMACIÓN.

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.

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

115

CAPITULO 6. •

LENGUAJES Y EQUIPOS PARA LA PROGRAMACIÓN.

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.
Prof. Danilo Navarro. Universidad De Oriente. Julio 2001. 116

CAPITULO 6.

LENGUAJES Y EQUIPOS PARA LA PROGRAMACIÓN.

ITEM

DIRECC.

ELEMENTO DE CONTROL ENTRADAS

Presencia de Vehículo Arrancar Proceso Parar proceso Puente adelante Puente atrás Rodillo arriba

I0,0 I0,1 I0,2 I0,3 I0,4 I0,5

Sensor de proximidad inductivo Pulsador de arranque. Pulsador de parada. Interruptor de posición Interruptor de posición Interruptor de posición SALIDAS

Ciclo en marcha Bajar rodillo Subir rodillo Rotar rodillos Avance puente Retroceso puente

O0,0 O0,1 O0,2 O0,3 O0,4 O0,5

Lampara piloto Contactor KM1 Contactor KM2 Contactor KM3 Contactor KM4 Contactor KM5

VARIABLES INTERNAS Temporizador arranque Temp.bajar rodillo Contador de lavadas. T0 T1 C0 ON DELAY (10 seg) ON DELAY (5 seg) ASCENDENTE(9999)

Tabla 23 – análisis de entrada / salida del ejemplo del lavado de vehículos.

e) Conexión del PLC.

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

117

CAPITULO 6.

LENGUAJES Y EQUIPOS PARA LA PROGRAMACIÓN.

Fig. 112 – Conexión del PLC.

f) Programa.

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

118

CAPITULO 6.

LENGUAJES Y EQUIPOS PARA LA PROGRAMACIÓN.

6.3 Gráficos Funcionales de Secuencia(SFC, GRAFCET).

U

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.
Prof. Danilo Navarro. Universidad De Oriente. Julio 2001. 119

CAPITULO 6.

LENGUAJES Y EQUIPOS PARA LA PROGRAMACIÓN.

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.
Prof. Danilo Navarro. Universidad De Oriente. Julio 2001. 120

CAPITULO 6.

LENGUAJES Y EQUIPOS PARA LA PROGRAMACIÓN.

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.

8

9

8

9

8

9

8

9

a.b = 0 o 1

a.b = 0

a.b=1 →→

a.b=0 o 1

10
: Etapa activa

10

10

10

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.
Prof. Danilo Navarro. Universidad De Oriente. Julio 2001. 121

CAPITULO 6.

LENGUAJES Y EQUIPOS PARA LA PROGRAMACIÓN.

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.

2

Ventilador

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.
Prof. Danilo Navarro. Universidad De Oriente. Julio 2001. 122

CAPITULO 6.

LENGUAJES Y EQUIPOS PARA LA PROGRAMACIÓN.

2

C

Ventilador

Fig. 116 – Acciones condicionadas. El estándar IEC 848 propone las siguientes representaciones para las acciones asociadas condicionadas:

C D L P S

Acción condicionada Acción retardada Acción limitada en el tiempo Impulso 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.

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

123

CAPITULO 6.

LENGUAJES Y EQUIPOS PARA LA PROGRAMACIÓN.

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.

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

124

CAPITULO 6.

LENGUAJES Y EQUIPOS PARA LA PROGRAMACIÓN.

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.
Prof. Danilo Navarro. Universidad De Oriente. Julio 2001. 125

CAPITULO 6.

LENGUAJES Y EQUIPOS PARA LA PROGRAMACIÓN.

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.

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

126

CAPITULO 6.

LENGUAJES Y EQUIPOS PARA LA PROGRAMACIÓN.

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.

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

127

CAPITULO 6.

LENGUAJES Y EQUIPOS PARA LA PROGRAMACIÓN.

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.

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

128

CAPITULO 6.

LENGUAJES Y EQUIPOS PARA LA PROGRAMACIÓN.

c) Análisis de entrada / salida, y variables internas. ITEM DIREC C. ENTRADAS Voltaje en la línea OK Voltaje en G1 OK Voltaje en G2 OK Contactor de línea cerrado Contactor G1 cerrado Contactor G2 cerrado Mantenimiento G1 OK Mantenimiento G2 OK I0,0 I0,1 I0,2 I0,3 I0,4 I0,5 I0,6 I0,7 Relé mínima tensión LV0 (NA) Relé mínima tensión LV1 (NC) Relé mínima tensión LV2 (NC) Contacto auxiliar NA en KM0 (13-14) Contacto auxiliar NA en KM1 (13-14) Contacto auxiliar NA en KM2 (13-14) Selector con llave S1 (NA) Selector con llave S2 (NA) SALIDAS Conectar/desconectar línea Conectar/desconectar G1 Conectar/desconectar G2 Mantenimiento G1 Mantenimiento G2 O0,0 O0,1 O0,2 O0,4 O0,5 Bobina contactor KM0 Bobina contactor KM1 Bobina contactor KM2 Luz piloto LP1 Luz piloto LP2 ELEMENTO DE CONTROL

VARIABLES INTERNAS Tiempo falla línea Tiempo retorno línea Tiempo enfriamiento G1 Tiempo enfriamiento G2 Funcionamiento G1 Horas G1 Funcionamiento G2 Horas G2 Alternador G1 – G2 T0 T1 T2 T3 T4 C1 T5 C2 SC0 ON DELAY (1 seg) ON DELAY (5 seg) OFF DELAY (10 min) OFF DELAY (10 min) ON DELAY (60 min) ASCENDENTE(200) ON DELAY (60 min) ASCENDENTE(200) PASO a PASO (2 pasos)

Tabla 26 – Análisis de entrada / salida del sistema de respaldo.

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

129

CAPITULO 6.

LENGUAJES Y EQUIPOS PARA LA PROGRAMACIÓN.

d) Conexión de entradas / Salidas al PLC.

Fig. 124 – Conexión del PLC para el sistema de transferencia.

e) Programa.
Prof. Danilo Navarro. Universidad De Oriente. Julio 2001. 130

CAPITULO 6.

LENGUAJES Y EQUIPOS PARA LA PROGRAMACIÓN.

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

131

CAPITULO 6.

LENGUAJES Y EQUIPOS PARA LA PROGRAMACIÓN.

6.4 Programación con texto estructurado.

E

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 VAR VAR_INPUT VAR_OUTPUT VAR_IN_OUT VAR_EXTERNAL VAR_GLOBAL VAR_ACCESS RETAIN CONSTANT Variable memorizada ante un corte de energia. Valor que no cambia. Tabla 27 –Declaración de variables. Declaración de variable global. DESCRIPCIÓN Declaración general de variables. Declaración de variables de entradas a una función. Declaración de variables de salida de una función. Declara variables de entrada / salida de una función.

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

132

CAPITULO 6.

LENGUAJES Y EQUIPOS PARA LA PROGRAMACIÓN.

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 Enteros Reales Exponentes Binarios Octales Hexadecimal Booleano -100, 0, 100 -100.0, 0.0, 100.0 -1.0E-2, 0.0E0, 1.0E2 2#111111111 8#123, 8#777, 8#14

Ejemplos

16#FF, 16#ff, 16#9a, 16#01 0, FALSE, TRUE

Tabla 28 –Sistema numérico.

h) Las cadenas de caracteres usables se muestran a continuación: Ejemplos ‘’ ‘ ‘, ‘a’, ‘$’’, ‘$$’ Cadena vacia. Un espacio, un carácter, una comilla, símbolo $(dólar) Descripción

‘$R$L’, ‘$r$l’,‘$0D$0A’ Produce la combinación ASCII <CR>, <LF> ‘$P’, ‘$p’ ‘$T’, ‘4t’ Avance página. Tabulador <TAB> Tabla 29 –Cadenas de caracteres válidos.

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

133

CAPITULO 6.

LENGUAJES Y EQUIPOS PARA LA PROGRAMACIÓN.

i) Las bases de tiempo típicas se muestran a continuación:

Valores de tiempo 2.5 ms 5.5 horas

Ejemplos T#25ms, T#25.0ms, TIME#25.0ms, T#-25ms, t#25ms 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 Fechas Hora

Ejemplos DATE#1996-12-25, D#1996-12-25 TIME_OF_DAY#12:42:50.92, TOD#12:42:50.92 DT#1996-12-25-

Fecha y hora DATE_AND_TIME#1996-12-25-12:42:50.92, 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. Módulo. Provee el entero resultate de dividir A/B. Raiz cuadrada.
134

+
/

+ MOD(A,B) SQR(A)

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

CAPITULO 6.

LENGUAJES Y EQUIPOS PARA LA PROGRAMACIÓN.

FRD(A) TOD(A) NEG(A) LN(A) LOG(A) DEG(A) RAD(A) SIN(A) COS(A)
TAN(A)

Convertir de BCD a Decimal. Convertir de Decimal a BCD. Cambiar de signo +/- . Logaritmo natural. Logaritmo base 10. Convertir de radianes a grados. Convertir de grados a radianes. Seno. Coseno Tangente. Arcoseno Arcocoseno. Arcotangente. “A” elevado a la “B” “A” elevado a la “B” Tabla 32– Funciones matemáticas.

ASN(A) ACS(A) ATN(A)
XPY(A,B) A**B

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.
Prof. Danilo Navarro. Universidad De Oriente. Julio 2001. 135

CAPITULO 6.

LENGUAJES Y EQUIPOS PARA LA PROGRAMACIÓN.

Función
AND(A,B)

Descripción “Y” lógica. “O” lógica “O” exclusiva Negación o inversión lógica Negación o inversión lógica Tabla 34– Funciones lógicas BOOLANAS.

OR(A,B)
XOR(A,B) NOT(A)

!

n) Estructuras de ejecución y lazos. Estructura
IF-THEN-ELSIF-ELSE-END_IF; CASE-valor:-ELSE-END_CASE; FOR-TO-BY-DO-END_FOR; WHILE-DO-END_WHILE;

Descripción Ejecuta condicionalmente. Ejecuta selectivamente. Ejecuta cierto número de lazos. Ejecuta lazo mientras cumpla condición.

Tabla 35– Estructuras de ejecución y lazos. o) Instrucciones especiales. Instrucción
RETAIN() IIN(); EXIT; EMPTY

Descripción Causa que un bit sea memorizado. Actualiza una entrada (Immediate Input Update) Sale de un lazo FOR o WHILE

Tabla 36– Instrucciones especiales.

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

136

CAPITULO 6.

LENGUAJES Y EQUIPOS PARA LA PROGRAMACIÓN.

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;

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

137

CAPITULO 6.

LENGUAJES Y EQUIPOS PARA LA PROGRAMACIÓN.

6.5 Programación con bloques funcionales.

E

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.

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

138

CAPITULO 6.

LENGUAJES Y EQUIPOS PARA LA PROGRAMACIÓN.

Texto estructurado O:=ADD(A,B)

Equivalente bloques funcionales

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 O:=LIM(MN:=A, IN:=B, MX:=C) Equivalente bloques funcionales

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 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. Equivalente bloques funcionales

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

139

CAPITULO 6.

LENGUAJES Y EQUIPOS PARA LA PROGRAMACIÓN.

6.6 Equipos para la programación.

gráfica y los PCs + Software especial.

E

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

Fig. 130 – Equipos integrados.

Fig. 131 – Hand Held.

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

140

CAPITULO 6.

LENGUAJES Y EQUIPOS PARA LA PROGRAMACIÓN.

Fig. 132 – Terminal de programación gráfica.

Fig. 133 – Programación mediante PCs + Software especializado.

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

141

Capítulo

7

COMUNICACIONES.
7.1 Comunicación RS-232 (Hardware).

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

L

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

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

142

CAPITULO 7.

COMUNICACIONES.

9-PIN 25-PIN PROPÓSITO 1 2 3 4 5 6 7 8 9 1 3 2 20 7 6 4 5 22 Aterramiento de la carcasa Recepción de datos (RD: Receive data) Transmisión de datos (TD: Transmit data) Terminal listo (DTR: data terminal ready) Referencia de la señal Equipo OK (DSR: data set ready) Listo para transmitir (RTS: request to send) Listo para recibir (CTS: clear to send) 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.

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

143

CAPITULO 7. •

COMUNICACIONES.

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.

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

144

CAPITULO 7.

COMUNICACIONES.

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.

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

145

CAPITULO 7.

COMUNICACIONES.

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 0 1 2 3 4 5 Bits Menos significantes 7 8 9 A LF B C D CR E F ' ( ) * + , . / 7 G 8 H 9 I : ; J K W X Y Z [ \ ] ^ _ g h i j k l m n o w x y z { | } ~ 6 ACK NAK STX ETX XOFF XON 1 2 space ! " # $ % & 3 4 0 @ 1 A 2 B 3 C 4 D 5 E 6 F 5 P Q R S T U V 6 ` a b c d e f 7 p q r s t u v

< L = M > N ? O

Tabla38 – Tabla símbolos ASCII.

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

146

CAPITULO 7. •

COMUNICACIONES.

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

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

147

CAPITULO 7.

COMUNICACIONES.

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
Prof. Danilo Navarro. Universidad De Oriente. Julio 2001. 148

CAPITULO 7.

COMUNICACIONES.

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.

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

149

CAPITULO 7.

COMUNICACIONES.

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

A
• •

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

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

150

CAPITULO 7.

COMUNICACIONES.

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.

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

151

CAPITULO 7.

COMUNICACIONES.

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

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

152

CONCLUSIÓN

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

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

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

153

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.

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

154

Sign up to vote on this title
UsefulNot useful