Sei sulla pagina 1di 160

Universidad De Oriente

Ncleo de Anzotegui
Escuela de Ingeniera y Ciencias Aplicadas
Departamento de Electricidad

Controlador Lgico Programable (PLC).


Curso Tutorial.

Realizado por:
Prof. Danilo A. Navarro G.
Trabajo Presentado Como Requisito Parcial Para
Ascender a la Categora de Profesor Agregado.
Puerto La Cruz, Julio de 2001.

CONTENIDO
Introduccin.
1. El comienzo.
1.1 Qu es un PLC?

Pag.

1.2 Historia de los PLCs.

Pag.

1.3 Caractersticas sobresalientes de los PLCs

Pag.

1.4 Ventajas de los PLCs sobre la lgica a rels.

Pag.

1.5 Listado de principales fabricantes.

Pag.

2.1 Estructura interna.

Pag.

12

2.2 Como trabajan los PLCs.

Pag.

16

2.3 Tiempo de respuesta de los PLCs y sus efectos.

Pag. 18

2. Operacin de los PLCs.

3. Conexionado e interfaces de entrada / salida.


3.1Tipos de Entrada / Salida a los PLCs.

Pag.

22

3.2 Entradas al PLC

Pag.

24

3.3 Entradas DC.

Pag.

26

3.4 Conexionado de entradas DC.

Pag. 29

3.4.1 Conexionado de entradas tipo NPN.

Pag. 30

3.4.2 Conexionado de entradas tipo PNP

Pag.

31

3.4.3 Conexionado de sensores tipo 2 hilos.

Pag.

32

3.5 Entradas AC.

Pag.

34

3.6 Conexionado de entradas AC

Pag.

36

3.8 Salidas del PLC.

Pag.

37

3.9 Salidas a rel.

Pag.

39

3.10 Salidas a transistores

Pag.

41

4.1 Sustitucin de rels.

Pag.

44

4.2 lenguajes de programacin.

Pag.

48

4.3 Instrucciones bsicas.

Pag.

51

4.4 Registros de direcciones en los PLCs.

Pag. 55

4.5 Un ejemplo de control de nivel.

Pag. 57

4. Creacin de programas.

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

CONTENIDO

4.6 Ejecucin del programa de control de nivel.

Pag. 59

5. Principales instrucciones.
5.1 lgebra Booleana.

Pag. 62

5.2 Instrucciones memorizadas.

Pag. 67

5.3 Contadores.

Pag. 69

5.4 Temporizadores.

Pag. 73

5.5 Precisin de los temporizadores.

Pag. 78

5.6 Instruccin Un-Scan.

Pag. 81

5.7 Control maestro.

Pag. 84

5.8 Registros de desplazamiento.

Pag. 86

5.9 Acceso y manipulacin de datos.

Pag. 92

5.10 Instrucciones matemticas.

Pag.

96

6. Lenguaje y equipos para la programacin.


6.1 Lenguaje escalera (LADDER).

Pag. 101

6.1.1 Principios de programacin.

Pag. 103

6.1.2 Ejemplo de control de estacionamiento.

Pag. 104

6.2 Lista de instrucciones (AWL, BOOLEANO, Nemnicos).

Pag. 111

6.3 Grficos funcionales de secuencia (SFC, GRAFCET).

Pag. 120

6.3.1 Reglas para la construccin del GRAFCET

Pag. 124

6.3.2 Ejemplo

Pag. 128

6.4 Programacin con texto estructurado.

Pag. 134

6.5 Bloques funcionales.

Pag. 140

6.6 Equipos para la programacin.

Pag. 142

7. Comunicaciones.
7.1 Comunicacin RS-232 (Hardware).

Pag. 144

7.2 Comunicacin RS-232 (Software).

Pag. 146

7.3 Usando RS-232 dentro de la programacin escalera

Pag. 152

Conclusiones.

Pag. 155

Bibliografa.

Pag. 156

Anexos

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

ii

INTRODUCCION

os sistemas automatizados han evolucionado desde el control a rels hasta


los que usan facilidades computacionales desarrolladas en los tiempos
presentes. Actualmente el corazn del desarrollo de los sistemas

automticos lo representa esencialmente los Controladores Lgicos Programables


(PLC). Cotejar la idea que tiene cada estudiante o profesional del rea de
automatizacin respecto a lo que es un PLC arrojara un cmulo 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 ms 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 elctrica,
electrnica, computacin y sistemas; es de primera necesidad tener conocimientos y
un mediano entrenamiento en el tpico de los PLCs, ya que estos forman parte
fundamental en sistemas de control, de adquisicin de datos y de manejo de la
informacin de un gran nmero de procesos y mquinas que se encuentran en su
campo de trabajo.
Aunque existen textos (muy escasos) especializados en la temtica de los
PLCs, para no dejar el entrenamiento en lo meramente terico, es necesario que el
aprendiz acuda a los cursos de entrenamiento dictados por los propios fabricantes de
los

equipos.

Estos

cursos

adems

de

ser

costosos,

los

ofrecen

muy

espordicamente 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 tericos del software y del hardware de los
PLCs, con paquetes computacionales de simulacin 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.

INTRODUCCIN

Para lograr esta meta se aborda en los captulos 1 y 2 los aspectos filosficos
de la estructura y el funcionamiento de los PLCs, para luego cubrir los extensos tipos
de conexiones e interfaces de entrada / salida en el captulo numero 3.
Conociendo los fundamentos del software usado por un PLC, se llega
fcilmente a entender cualquier otro PLC. Por esta razn, en los captulos 4 y 5 se
cubren las principales instrucciones soportadas por los PLCs, combinando cada
explicacin con una simulacin animada de la misma.
Uno de los aspectos ms importantes dentro del trabajo con PLCs es la
programacin de los mismos y la creacin o configuracin de las aplicaciones.
Considerando lo anterior, el captulo 6 cubre lo concerniente a las distintos lenguajes
de programacin tipificados en el estndar IEC 1131, as como tambin se
desarrollan aplicaciones que pueden ser ejecutadas en el software de simulacin que
acompaa a este trabajo, o en el PLC TSX17 que se encuentra disponible en el
laboratorio de Sistemas de control del Departamento de Ingeniera elctrica de la
Universidad de Oriente.
Tambin, el rpido avance de los sistemas de control distribuido no es posible
sin las facilidades de comunicacin con las que cuentan los PLCs. De aqu que como
parte final de este trabajo, en el captulo 7, se detalle en forma bsica la interfase de
comunicacin ms comnmente usada por los PLCs: La RS-232.

Captulo

EL COMIENZO.
1.1 Qu es un PLC?

n PLC ( Controlador Lgico Programable) es un dispositivo electrnico de


estado slido que puede controlar un proceso o una mquina y que tiene
la capacidad de ser programado o reprogramado rpidamente segn la

demanda de la aplicacin. Fue inventado para remplazar los circuitos secuenciales


basados en rels que eran necesarios para el control de las mquinas. El PLC
funciona monitoreando sus entradas, y dependiendo de su estado, activando y
desactivando sus salidas. El usuario introduce al PLC un programa, usualmente va
Software, lo que ocasiona que el PLC se comporte de la manera deseada.

Fig. 1 Aspecto fsico de un PLC.


Los PLCs son usados en muchas aplicaciones: Maquinado de piezas,
Embaladoras, Manipulacin de materiales, ensamblado automtico,

y en general

cualquier tipo de aplicacin que requiera de controles elctricos puede usar ms bien
un PLC.

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

CAPITULO 1.

EL COMIENZO.

Fig. 2 Aplicacin tpica de un PLC.


Por ejemplo asmase que cuando un switch se activa, deseamos tambin
activar una vlvula solenoide por un perodo 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?. Tambin, Qu si en el proceso es necesario contar cuantas veces
cada switch se activo?. Obviamente se necesitaran una gran cantidad de contadores
externos. Como se ve, mientras ms grande el proceso, mayor es la necesidad de un
PLC, y por ejemplo en el caso descrito bastara con simplemente programar el PLC
para que cuente sus entradas y mantenga activadas sus salidas por un cierto perodo
de tiempo.

1.2 Breve historia de los PLC.

os PLCs fueron introducidos por primera vez a finales de 1960. La razn


principal para introducir tal dispositivo fue la de eliminar el gran costo que
representaba remplazar los sistemas de control basados en lgica de rels.

En 1968, una expresa consultora llamada Bedford Associates (Bedford, MA) diseo
para la General Motors un dispositivo de control que llamaron Controlador Digital
Modular (Modular Digital Controller, MODICON) 084. Otras compaas 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 produccin comercial.
La razn principal que impuls este nuevo tipo de control fue que cuando
cambiaba los requerimientos de produccin, tambin lo hacia el sistema de control, y
esto se tornaba costoso sobre todo cuando los cambios eran frecuentes. Tambin,
como los rels son elementos mecnicos, ellos tienen un perodo de vida limitado y
adems requieren de un estricto programa de mantenimiento. Igualmente, la
resolucin de problemas en la lgica de control era muy tediosa sobre todo cuando
estaban involucrados gran cantidad de rels; y los paneles de control de las
mquinas incluan cada vez ms funciones que si se utilizaba lgica a rels, estos
incluiran cientos de ellos, lo que ocasiona el problema inicial del difcil cableado de
los paneles.
Estos nuevos controladores tambin tenan que ser fciles de programar por
los ingenieros de planta y de mantenimiento. El tiempo de vida tenia que ser largo y
los cambios en la programacin de las funciones deba ser fcilmente realizable.
Tambin, los nuevos controladores deban poseer cualidades para resistir a los
severos ambientes industriales. La respuesta a este lote de planteamientos era usar
tcnicas de programacin que ya le fueran familiares a los tcnicos de
plantas(diagramas de contacto: LADDER) y a la par remplazar los rels
electromecnicos por unos que fueran de estado slido.

A mediados de los 70 la tecnologa 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 carecan de la potencia para satisfacer los
requerimientos de lgica en todo los PLCs excepto en los ms pequeos. Segn
como los microprocesadores convencionales evolucionaron, en esa misma medida
se construyeron PLCs cada vez ms grandes y potentes.
Las posibilidades de comunicacin 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 mquinas controladas. Igualmente se pueden usar para enviar y
recibir voltajes variables lo que les permite entrar al mundo analgico.
Desdichadamente, la carencia de estandarizacin acoplada con los continuos
cambios tecnolgicos hicieron la comunicacin 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 Automatizacin de la Manufactura de la General Motors (MAP). En este
tiempo tambin se redujo el tamao de los PLCs y se hicieron programables
mediante la programacin simblica desde computadores personales PCs en vez de
mantener los terminales de programacin dedicados o programadores "handheld.
Hoy, el PLC ms pequeo en el mundo es del tamao de un simple rel de control.
En los 90 se vio una gradual reduccin en la introduccin de nuevos protocolos, y
en la modernizacin de las capas fsicas de alguno de los ms populares protocolos
que sobrevivieron a la dcada de los 80. El ultimo standard (IEC 1131-3) ha tratado
de unificar los lenguajes de programacin 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.

1.3 Caractersticas sobresalientes de los PLCs.


Poseen memoria voltil y no voltil. Tanto el programa de aplicacin
escrito por el usuario como los datos internos del PLCs, normalmente es
guardado en una RAM (memoria voltil), lo que le permite tener un acceso
ms veloz a las instrucciones de programa y a los datos internos de registros,
contadores, temporizadores, bits internos, etc. Tambin, una vez que se ha
depurado el programa de aplicacin, los PLCs permiten la opcin de
salvaguardar el programa en memorias tipo EEPROM (no voltiles) para as
recuperar el mismo en caso de un corte muy prolongado de energa que
ocasiona una perdida de datos de la RAM.

Fig. 3 Tipos de memorias en un PLC.


Capacidad modular de entradas / salidas. Esto permite la combinacin
de distintos niveles y tipos de seal de entrada, as como tambin el manejo
de salidas para distintos tipos de carga. Igualmente si la aplicacin crece, y se
requiere mayor nmero de entradas / salidas, casi sin ningn problema los
PLCs pueden adecuarse al nuevo requerimiento.

Fig. 4 Capacidad modular de los PLCs.


Autodiagnstico de fallas. El PLC monitorea el funcionamiento de su
CPU, Memoria y circuito de interfases de entrada y de salida, e
igualmente

monitorea el correcto funcionamiento del programa de aplicacin. En ambos


casos sealiza por medio de LEDs en su cara frontal el estado respectivo.
Obviamente esta capacidad es de gran utilidad para efectos de mantenimiento
y correccin de fallas.

Fig. 5 Visualizador de status del PLC.


Programacin de la lgica de control. Esto permite la fcil adaptacin a
los cambios en la lgica de operacin de las mquinas y procesos.

Fig. 6 Lgica programada.


Capacidad para generar reportes y comunicarse con otros sistemas. Con
esta facilidad se pueden integrar interfaces de explotacin Hombre-Mquina,
sacndole al sistema mayor cantidad de informacin. Igualmente los PLCs
pueden participar en redes de datos comunicndose con otros PLCs para
formar sistemas de control distribuidos, o integrndose a las redes
administrativas de la produccin.

Fig. 7 Capacidad de comunicacin.

1.4 Ventajas de los PLCs sobre la lgica a rels.


LOGICA CON PLCs
Flexibilidad de configuracin

LGICA A RELES
Costosos cambios de hardware

programacin.
Rpidos

cambios

de

la

lgica

de control.
Amplia

Mayor tiempo de cambios en


la lgica de control

variedad

Rels,

de

funciones:

Contadores,

Temp.,

Secuenciadores, Registros, etc.

Pocas
Rels,

funciones:
Contadores,

Temporizadores

Reduccin de espacio
Mayor espacio relativo

Montaje fcil y rpido


Localizacin

fcil

rpida

de

Bsqueda lenta y ms difcil

averas y fallas
Alta

Montaje lento y tedioso

confiabilidad.

Elementos

de averas
Poca

de estado slido
Mltiples contactos NO, NC

confiabilidad.

Partes mecnicas

Consumo de energa reducido

Mximo de 4 a 6 contactos

Reduccin

Mayor consumo de energa

del

costo

medida

que aumenta la complejidad del


proceso

A partir de 15 o 20 rels, el
costo comparativo supera el costo
con PLCs

1.5 Listado de principales fabricantes de PLCs.

continuacin se muestra un listado de los principales fabricantes y


vendedores de sistemas para control, automatismos y PLCs.

ABB : http://www.abb.com/products&contracting
Alfa Laval
Allen-Bradley : http://www.ab.com/
ALSTOM/Cegelec
Aromat
AutomationDirect/PLC Direct/Koyo/ : http://www.automationdirect.com/
B&R Industrial Automation
Beck Electronic/Festo
Berthel gmbh
Cegelec/ALSTOM
Control Microsystems
Crouzet Automatismes
Control Technology Corporation
Cutler Hammer/IDT : http://www.ch.cutler-hammer.com/
Divelbiss
EBERLE gmbh
Elsag Bailey
Entertron
Festo/Beck Electronic
Fisher & Paykel
Fuji Electric
GE-Fanuc : http://www.gefanuc.com/
Gould/Modicon : http://www.modicon.com/
Grayhill
Groupe Schneider
Hima

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/

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

Captulo

OPERACIN DE LOS PLCs.


2.1 Estructura interna.

os PLCs constan principalmente de un CPU, rea de memoria, y circuitera


apropiada de entrada /salida de datos. Se puede considerar al PLC como
una caja llena de cientos o miles de Rels independientes, contadores,

temporizadores y locaciones para almacenamiento de datos. Estos contadores,


temporizadores, etc.; realmente existen?. No, Ellos no existen fsicamente pero en
vez de eso son simulados y se pueden considerar como contadores, temporizadores,
etc. hechos a nivel de software. Tambin los Rels internos son simulados mediante
bits en registros del hardware del PLC.

Fig. 3 Estructura general simplificada de un PLC.


Rels DE ENTRADA: Estn conectados al mundo externo. Fsicamente
existen y reciben seal de los switches, sensores, etc. Tpicamente no son
rels pero si son transistores que funcionan como rels estticos.
Rels INTERNOS: Estos no reciben seal desde el mundo exterior ni existen
fsicamente. Ellos son rels simulados y permiten al PLC eliminar los rels
externos. Tambin hay rels especiales que el PLC usa para realizar una
tarea nica. Algunos estn siempre activados mientras que otros su estado
Prof. Danilo Navarro. Universidad De Oriente. Julio 2001.

1
6

CAPITULO 2.

OPERACIN DE LOS PLCS.

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


de arranque y son usados para la iniciacin de los datos que fueron
almacenados.
Contadores: estos no existen fsicamente. Son contadores simulados
mediante software y pueden ser programados para contar pulsos. Tpicamente
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 tambin contadores de alta velocidad
basados en hardware, es decir que son contadores que existen fsicamente y
cuentan ascendentemente, descendentemente, o en ambas direcciones.
TEMPORIZADORES: Estos no existen fsicamente. Son de varios tipos (al
reposo, al trabajo, etc.) y de varias resoluciones de temporizacin. Los tipos
ms comunes son los temporizadores al trabajo. Otros menos comunes son
los temporizadores con retencin. En general la resolucin de temporizacin
ve desde 1 ms hasta 1 segundo.
Rels DE SALIDA: Estos se conectan al mundo exterior al PLC. Fsicamente
existen y funcionan enviando seales de encendido / apagado a selenoides,
luces, etc. Basados en hardware, pueden estar construidos con transistores,
rels electromecnicos o TRIACS, segn el modelo que se escoja.
ALMACENAMIENTO DE DATOS: Tpicamente hay registros del PLC que
estn asignados al simple almacenamiento de datos. Usualmente se usan
para almacenamiento temporal para manipulacin matemtica o de datos.
Tambin son usados para almacenar datos cuando se corta el suministro de
energa al PLC. Una vez regresa la energa, los registros disponen de los
mismos datos que tenan cuando se corto la energa.
Un diagrama de bloques ms completo que describe la estructura de un PLC
sera el siguiente.

Fig. 4 Estructura general de un PLC.


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 lgicas, transferencias, etc), busca o
escribe operandos en la memoria, lee o escribe datos en las unidades de
entrada y salida, etc.
Memoria: Es la circuitera electrnica capaz de almacenar el programa
de aplicacin escrito por el usuario, y los datos provenientes de la mquina o
proceso controlado. Tambin es la encargada de almacenar las variables
internas generadas por la CPU y las variables de salida a ser transferidas a
los perifricos.

Fig. 5 Memorias dentro del PLC.


Perifricos: Corresponden a la circuitera de entrada / salida del PLC, o
lo que representa lo mismo: su comunicacin con el proceso o mquina a
controlar y con el usuario u operador del sistema. Las seales de entrada
provenientes de los sensores son de naturaleza diversa: Voltaje AC, Voltaje
DC, Corriente, seales binarias, seales analgicas, etc. Es as como los
perifricos son los encargados de convertir estas seales a informacin capaz
de ser interpretada por la CPU, y de convertir las seales provenientes de la
CPU a seales capaces de excitar los preaccionadores de las mquinas.

2.2 Cmo trabajan los PLCs?.

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


programa. Este ciclo de barrido o scan consta principalmente de 3 pasos,
aunque tpicamente son mas de tres ya que existen otros como el chequeo

del sistema y la actualizacin de los contadores y temporizadores internos.

Fig. 6 Ciclo de trabajo de un PLC.

Paso 1-DIAGNSTICO INTERNO: En este paso el PLC revisa su circuitera interna


en busca de defectos de entradas, salidas, CPU, memorias y batera. Tambin revisa
el WATCHDOG y los desbordamiento de memoria para revisar fallas en el programa
de aplicacin.
Paso 2-CHEQUEAR EL ESTADO DE LAS ENTRADAS: Al principio el PLC accede
cada una de las entradas para determinar si estn 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 prximo paso.
Paso 3-EJECUTAR EL PROGRAMA DE LA APLICACIN: El PLC ejecuta el
programa de la aplicacin creada por el usuario una instruccin 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 prximo

paso. Como ya el PLC conoce cuales entradas estn 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 prximo paso.
Paso 4-ACTUALIZAR EL ESTADO DE LAS SALIDAS: Finalmente el PLC actualiza
el estado de las salidas basado en los resultados lgicos 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.
Despus 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.

2.3 Tiempos de respuesta de los PLCs y sus efectos.

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


al momento de adquirir un PLC. El mismo esta formado por el tiempo de
adquisicin de entradas, el tiempo de ejecucin de la lgica programada, y
el tiempo para activar sus salidas. El PLC toma cierta cantidad de tiempo

para realizar un autodiagnstico de sus tarjetas electrnicas.

Fig. 8 Tiempo tpico de SCAN de un PLC.


Autodiagnstico: Chequea para verificar que todas las tarjetas estn 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
perodo corto de tiempo. Esto indicara que la lgica 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 ms rpido
y evita casos donde una entrada cambia entre el principio y el final del programa.
Existen tambin funciones especiales de los PLCs que leen las entradas
directamente y evitan el uso de las tablas de imagen.
Ejecucin de la Lgica: 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.

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 (rels, 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 razn 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 adems
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.

Pero, Qu pasa si no es posible que la entrada se mantenga durante el perodo


especificado?, Entonces el PLC no valida la entrada como activa. Para resolver este
tipo de problemas, actualmente existen 2 mtodos.
Funcin alargamiento del pulso: Esta funcin extiende la duracin de la seal de
entrada hasta que el PLC la lea en el prximo scan.

Fig. 11 Alargamiento de pulso.

Funcin interrupcin: Esta funcin 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 interrupcin. (Una rutina puede ser interpretada
como un mini programa aparte del programa principal). Despus de realizar la rutina
de interrupcin, el PLC regresa al mismo punto donde dejo el hilo principal y contina
el proceso normal del scan.

Fig. 12 Interrupcin.

Considerando ahora el mximo tiempo para que una salida se active, asmase 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 despus de que la
entrada relacionada se ha activado. El mximo retardo es:
2 ciclos de scan 1 tiempo retardo de la entrada.

Fig. 13 Mximo retardo de operacin.

Captulo

CONEXIONADO E INTERFACES DE ENTRADA / SALIDA.


3.1 Tipos de Entrada / Salida a los PLCs.

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


mquinas y procesos. Existen bsicamente dos tipos de entradas / salidas a
los PLCs: Entradas-Salidas discretas, y Entradas-Salidas analgicas. Las

entradas discretas, tambin conocidas como entradas digitales, son las que poseen
dos estados: ON u OFF. Provienen de Pushbottons, detectores de proximidad,
interruptores de posicin, etc. En la condicin de ON, una entrada discreta puede ser
llamada como un 1 o como un ALTO, mientras que en la condicin de OFF se
conoce como un 0 o como un BAJO.

Fig. 14 Entradas Salidas discretas al PLC.

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

2
2

CAPITULO 3.

CONEXIONADO E INTERFACES DE ENTRADA / SALIDA.

Las salidas discretas tienen tambin dos condiciones posibles: ON u OFF.


Ellas van a servir a las bobinas de los contactores, a vlvulas selenoides, a luces
pilotos, etc.
Por su parte las entradas analgicas son voltajes o corrientes continuas que
provienen de procesos de control de temperatura, presin, flujo, nivel, etc.
Tpicamente son seales cuyo rango es de 4 a 20 mA DC, o seales de rango de 0 a
10 voltios DC.

Fig. 15 Entradas Salidas analgicas al PLC.

Las salidas analgicas son seales de corriente o voltaje continuo. Pueden ser
tan simples como un nivel de 0 a 10 voltios que maneje un voltmetro analgico, o un
poco ms complejas como seales de corriente que manejen convertidores corriente
- presin de aire que a su vez sirvan a actuadores como lo son Servo vlvulas para el
control de flujo. Igualmente, con la interfase adecuada, serviran a otros tipos de
actuadores dentro de esos mismos procesos como lo son: servomotores, controles
de potencia de hornos, etc.

3.2 Entradas al PLC.

as entradas a los PLCs son poco variadas. Las ms populares son las DC
(Fuente o Sumidero) y las AC. Los rangos tpicos 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 lgicos de voltaje a niveles de


voltaje de lgica TTL (5 Vdc). Para lograr esto utiliza dos interfaces circuitales tpicas:
DC a TTL, y AC a TTL.

Fig. 16 Interfase tpica de conversin DC a TTL.


Los optoacopladores son usados para aislar la circuitera interna de las
tensiones de alimentacin externas. Esto elimina la posibilidad de que cualquier
voltaje daino o cualquier ruido alcance los circuitos lgicos internos del PLC. Los
optoacopladores convierten la seal elctrica de corriente o voltaje a una seal

luminosa, y luego la transforman de luminosa a elctrica para que as los circuitos


lgicos del PLC puedan procesarla.

Fig. 16 Interfase tpica de conversin AC a TTL.


Una primera vista comparativa del uso de entradas DC o AC se da a continuacin:
Los voltajes DC usualmente son ms bajos (12 24 V) y por lo tanto es
menos riesgoso operar con ellos.
Las entradas DC son muy rpidas. 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 elctricos.
Las seales AC son ms inmunes al ruido que las seales DC, por eso
pueden cubrir mayor distancia y ambientes ruidosos.
El suministro AC es ms fcil y menos costoso al momento de alimentar
equipos elctricos.
Las seales AC son muy comunes en muchos equipos de automatizacin.

3.3 Entradas DC.

picamente existen mdulos de entradas DC que trabajan a 5, 12, 24, o 48


voltios, pero el de uso ms popular es el de 24 VDC. Los mdulos de
entradas DC permiten conectar sensores transistorizados del tipo PNP

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


pushbutton) no hay cuidado si las entradas son NPN o PNP. Sin embargo, si se est
usando un sensor electrnico (fotoelctricos, de proximidad, etc.) se debe tener
cuidado que su configuracin de salida sea compatible con el tipo de entrada (NPN o
PNP) del PLC. La diferencia entre los dos tipos es que la carga (en este caso el PLC)
es conmutada a tierra o es conectado a un voltaje positivo. Un sensor tipo NPN
conmuta la carga a tierra, mientas que un sensor tipo PNP suministra a la carga un
voltaje positivo.

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


En este tipo de sensor se conecta uno de los terminales de salida al PLC,
mientras que el otro se conecta a la referencia de la fuente de alimentacin. 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 comn.
Los sensores NPN son de uso comn mas que todo en Norte Amrica.
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 ms comnmente
usados en Europa.

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


Dentro del sensor el transistor acta como un switch esttico. Es decir, la
circuitera 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
COMN, ENTRADA 0000, ENTRADA 0001, ENTRADA xxxx... El terminal comn
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 comn 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 conexin 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 conexin asume que el comn esta

conectado a 0v. Si por el contrario el comn 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.

3.4 Conexionado de entradas DC.

uando un sensor detecta un cambio lgico, l debe sealar ese cambio al


PLC. Esto tpicamente lo consigue mediante la conmutacin de un voltaje o
de una corriente de ON a OFF o viceversa. En este sentido existen

sensores con distintos tipos de salida:


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

Fig. 20 Salida tipo rel.


Salida tipo TTL: Transistor Transistor Logic.

Fig. 21 Salida tipo TTL.


Salida DC tipo Sumidero: Conmutan corriente a tierra.

Fig. 22 Salida tipo NPN.

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 lgico, permite que por dentro de l fluya
corriente en un camino hacia el comn. Conmutando corriente en lugar de voltaje, se
resuelven muchos de los problemas del ruido elctrico. 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
alimentacin para poder funcionar.

Fig. 24 Sensor NPN simplificado.


Si el sensor ha detectado algn fenmeno, activa el transistor permitiendo as
el flujo de corriente hacia el comn.
Cuando se tiene una tarjeta de entrada que tiene un +V (no un comn), entonces se
pude usar sensores tipo NPN. En este caso la corriente sale de la tarjeta (Fuente) y
el sensor la conmuta a tierra.

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

3.4.2 Conexionado de entradas tipo PNP.


Cuando el sensor detecta un cambio lgico, permite que desde el +V salga
una corriente que fluyendo a travs 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 alimentacin para poder operar.

Fig. 26 Sensor tipo PNP simplificado.


Si el sensor ha detectado algn fenmeno, 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 (comn), entonces se
pude usar sensores tipo PNP. En este caso la corriente fluye hacia la tarjeta buscado
el comn de la fuente de alimentacin.

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 slo de una pequea corriente para
mantenerse polarizado, auque cuando se activa permite un mayor flujo de corriente.

Fig. 28 Conexin de sensores de 2 hilos tipo PNP y NPN.


Finalmente, la conexin de sensores tipo 2 hilos requiere que la tarjeta de
entrada de los PLCs permita una cierta corriente de fuga, que sera la necesaria para
que el sensor opere en stand-by.

Fig. 29 Resumen de conexin de sensores DC tipo NPN.

Fig. 30 Resumen de conexin de sensores DC tipo PNP.

3.5 Entradas AC.

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


negativo por el cual preocuparse a la hora de la conexin. Sin embargo
este tipo de entrada posee la desventaja de ser algo peligrosa (SHOCK

elctrico) si no se toman las precauciones debidas. Los mdulos de entrada AC que


existen tpicamente trabajan con voltajes de 24, 48, 110, y 220 voltios.
Los mdulos de entradas AC son menos comunes que los de entrada DC. La
razn es que la gran mayora 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 conexin tpica de los elementos de entrada AC a los mdulos del PLC se
muestra en la figura de arriba. Comnmente la lnea activa (fase) se conecta a los
switch, mientras que el neutro se conecta a la entrada comn del PLC. El terminal de
aterramiento de la red AC debe ser conectado a la carcasa del PLC.

Los nicos terminales accesibles al usuario son los marcados como COMN,
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 comn esta conectado
al neutro.
Finalmente, vale mencionar que tpicamente una entrada AC toma ms 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 mecnicos que son bastantes lentos en su
reaccin. Es comn que un PLC requiera que la entrada este ON por 25 o ms
milisegundos antes de que l la valide. Estos tiempo son requeridos para efectos de
filtrado de las entradas del PLC.

3.6 Conexionado de entradas AC.

Pocas veces los PLCs incluyen la fuente para excitar las entradas y para
alimentar los sensores. Por esa razn hay que disponer de una fuente
externa.

Fig. 32 Tarjeta de entrada AC tpica.


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. Tambin, se debe tomar en cuenta que Tierra NO es igual a COM, el
aterramiento es usado para prevenir shocks elctricos y daos de los equipos.

3.8 Salidas del PLC.

os mdulos de salida raras veces o nunca suplen potencia a las cargas,


ms bien ellos actan como switches. Fuentes externas son conectadas a
las tarjetas de salida de los PLCs y entonces ellas se encargan de conmutar

la potencia (ON u OFF) hacia cada salida. Los rangos tpicos de voltajes tpicos que
son conmutados en los mdulos de salida son lo que se listan a continuacin:
120 VAC
24 VDC
220 VAC
12 48 VAC
12 48 VDC
5 VDC (TTL)
Los mdulos de salida normalmente tienen de 8 a 16 salidas de un mismo tipo: a
rels, a transistores, o a TRIACs. Los PLCs deben convertir los niveles lgicos 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 continuacin, los cuales
adems de usar bsicamente un optoacoplador para conmutar la circuitera externa,
tambin utilizan algunos componentes para proteger la circuitera de voltajes
excesivos y de polaridad inversa.

Fig. 33 Interfase tpica para salida a rel.

Las salidas a rel son las ms 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 conmutacin tpico: 10 ms), de mayor tamao,
de mayor costo, y de tiempo de vida ms 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 tensin), as como tambin permite aislar las
salidas, protegiendo las mismas y al PLC mismo. Este mtodo es menos sensitivo a
las variaciones y a los picos de voltaje.

Fig. 34 Interfase tpica para salida a transistor.

Fig. 35 Interfase tpica para salida a TRIAC.


Las salidas a transistores usan del tipo NPN o PNP y estn limitadas a servir
cargas DC hasta 1 amp, mientras que las salidas a TRIACs sirven a cargas AC
tpicamente hasta 1 Amp. Las salidas a transistores o a TRIACs son conocidas como
salidas conmutadas o salidas estticas, y su tiempo de conmutacin esta
normalmente por debajo de 1 ms..

3.9 Salidas a rel.

no de los tipos mas populares de salidas disponibles son las de rel. Esto
se debe a que un rel puede ser usado tanto con cargas AC como con
cargas DC. Algunas de las formas ms comunes de cargas son

solenoides, lmparas, motores, etc; las cuales vienen en muchos tamaos elctricos.
Por esta razn siempre hay que chequear las especificaciones de la carga antes de
conectarla a la salida del PLC, a fin de asegurar que la corriente mxima que ellas
consumen estar dentro de los lmites permitidos en las especificaciones de las
salidas del PLC.
Existe un tipo de carga a las que se le debe prestar especial atencin: 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
dao de la salida a rels del PLC. Tpicamente se deben usar diodos, varistores o
circuitos "snubber" para ayudar a combatir el dao de los rels de salida del PLC.

Fig. 36 Mdulo de salidas a rels.


Los rels de salida estn dentro del PLC. La figura de arriba muestra un
diagrama circuital tpico de las salidas a rels. Cuando la lgica del programa de
aplicacin indica que se debe activar una salida fsica, entonces el PLC aplica un

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 travs de la carga conectada en la salida en cuestin. Contrariamente,
cuando la lgica programada indica que se debe desactivar la salida fsica, 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 desactivacin de la carga
conectada a esta salida.

Fig. 37 conexin tpica de un mdulo de salidas a rels.


La figura de arriba muestra el modo tpico de conexin de las salidas a rels
de los PLCs. Aunque la figura muestra slo la conexin en circuitos DC, tambin 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 rels 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.

3.10 Salidas a transistores.

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


razn el transistor no puede ser usado con voltajes de corriente alterna
(AC). En este tipo de aplicacin, el transistor es tratado como un switch de

estado slido. Una pequea corriente aplicada a la base del transistor permite
conmutar una corriente considerablemente mayor a travs de su unin ColectorEmisor. Basado en este fundamento, Cuando la lgica programada en el PLC indica
que se debe activar una salida fsica, el PLC aplica una pequea corriente a la base
del transistor de la salida en cuestin y as la misma cierra sus contactos. Una vez
establecido el flujo elctrico a travs de los contactos de la salida activada, la carga
conectada a esta salida se activara tambin.
En general existen dos tipos de transistores usados en la etapa de salida de
los PLCs: Transistores NPN y transistores PNP. El tipo fsico de transistor usado
tambin vara de fabricante a fabricante. Algunos de los tipos mas comnmente
usados son los BJT y los MOSFET. Un transistor tipo BJT(Bipolar Junction
Transistor) generalmente tiene menos capacidad de conmutacin (Puede manejar
menos corriente) que uno tipo MOS-FET(Metal Oxide Semiconductor- Field Effect
Transistor). Sin embargo, el BJT tiene un tiempo de conmutacin ligeramente ms
pequeo que el tiempo de los MOS-FET. Al igual que con las salidas a rels, 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 mxima corriente de carga no
exceda la del transistor.
La figura que se muestra a continuacin incluye un tpico diagrama circuital de
salida para una del tipo NPN.

Fig. 38 Salida a transistor.


Aqu tambin se muestra un foto acoplador cuya funcin es aislar los voltajes y
corrientes del mundo exterior de la circuitera interna del PLC. Cuando la lgica
programada indica que se debe activar esta salida, el circuito interno aplica un
pequeo voltaje al LED del foto acoplador el cual emite entonces una luz que causa
que el fototransistor permita el flujo de una pequea 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 lgica 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 Conexin tpica de un mdulo de salidas a transistores.

La figura anterior muestra la forma tpica de conectar una salida a transistor.


Ntese que se trata de un transistor tipo PNP. Si la salida mostrada fuese una tipo
NPN, el terminal comn estara conectado a V, mientras que el terminal final de
cada carga estara conectado a +V.
Una cuestin 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
situacin, si la carga a conmutar excede la permisible a travs del transistor,
entonces se debe conectar un rel de interposicin a la salida del PLC, y luego
conectar la carga a los terminales de este rel.
Un resumen de las salidas a transistor sera el siguiente: son rpidas, conmutan
slo corrientes relativamente pequeas, poseen largo tiempo de vida y trabajan
solamente con DC.

Captulo

CREACIN DE PROGRAMAS.
4.1 sustitucin de los rels.

l principal propsito de los PLCs es remplazar los rels del mundo real. El
rel es un switch electromagntico. Aplicando un voltaje a la bobina, se
genera un campo magntico que atrae la armadura que sostiene los
contactos, causando entonces que los mismos produzcan la conexin. La

unin de los contactos permite que la corriente fluya entra los dos puntos
estableciendo as un circuito elctrico.

Fig. 40 Rel electromecnico.

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 elctrica a la campana ocasionando
que la misma suene.

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

4
4

CAPITULO 4.

CREACIN DE PROGRAMAS.

Fig. 41 Circuito de control por rel.

Ntese 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 funcin de los rels.
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 cdigos de programacin, afortunadamente
muchos de ellos poseen software con el cual puede convertir el diagrama escalera a
cdigo de mquina.
Primer paso: se deben convertir todos los tem del diagrama de control de la
aplicacin a smbolos que el PLC entiende. El PLC no entiende de switch, rels o
campanas, mas bien l interpreta entradas, bobinas de salida, contactos, etc.
Primero se remplazar la batera con un smbolo. Este smbolo es comn en
todos los diagramas escalera y son llamados barras de potencial. Las mismas son
simplemente dos lneas 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 lgico ser de izquierda hacia la derecha.
Luego se colocar el smbolo de las entradas. En el ejemplo que se trata se
tiene una entrada del mundo real (el switch) el cual se representar con el smbolo

siguiente. Este smbolo tambin se puede usar para representar el contacto de un


rel.

Fig. 42 Smbolo de un contacto.

Luego se debe colocar el smbolo de las salidas. En este ejemplo existe una
salida del mundo real (La campana). La salida estar fsicamente conectada a la
campana. Dicha salida usa el siguiente smbolo.

Fig. 43 Smbolo de una bobina.

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


diagrama escalera. El PLC slo tiene que ver con encender sus salidas sin importar
que est fsicamente conectado a ellas.
Segundo paso: Debemos decir al PLC donde estn ubicadas cada una de las
entradas y salidas mencionadas. En otras palabras debemos dar todas las
direcciones correspondientes a cada smbolo. Esto es: Dnde esta fsicamente
conectado el switch?, Dnde esta conectada la campana?. Cada fabricante de
PLCs tiene su manera diferente de indicar estas direcciones, pero por ahora
asmase que la entrada tiene la direccin 0000 y que la salida tiene la direccin
500
Paso final: Se debe convertir el esquemtico de control en una secuencia
lgica 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.

Fig. 44 Diagrama escalera del ejemplo.


La figura anterior representa la conversin del esquemtico de control a un
diagrama escalera.

4.2 Lenguajes de programacin.

l estndar IEC 1131-3 define 5 lenguajes de programacin que pueden


ser usados para definir los procedimientos de control y automatizacin.

1. Nemnicos o Lista de instrucciones: Es un lenguaje de bajo nivel basado


en operaciones Booleanas y cuya apariencia es similar al cdigo del lenguaje
ensamblador.

ETIQUETA

INSTRUCCIN

OPERANDO

00001

LD

00001

00002

LDN

00002

00003

AND

00004

LD

00003

00005

LD

00004

00006

AND

00007

OR

00008

ST

00009

END

00107

Tabla 1 Ejemplo de programacin en lista de instrucciones.

2. Diagrama Escalera: Es un lenguaje de programacin grfica que conserva la


estructura de los diagramas elctricos de control.

Fig. 45 Ejemplo de diagrama escalera.

3. Grficos secuenciales (GRAFCET): Este lenguaje divide el ciclo de proceso


en un cierto nmero de pasos bien definidos, y en transiciones que los
separan. Este lenguaje es el ncleo del estndar IEC 1131-3. Los otros
lenguajes se usan para describir las acciones realizadas en cada uno de los
pasos, y para describir las condiciones lgicas para pasar de una etapa a otra
(Transiciones).
4. Diagrama de bloques funcionales: Es un lenguaje grfico que permite al
usuario construir procedimientos complejos mediante la unin de bloques
funcionales prediseados.

Fig. 46 Programacin con bloques funcionales.

Fig. 47 Ejemplo de diagrama GRAFCET.


5. Texto estructurado: Este es un lenguaje estructurado de alto nivel parecido
al PASCAL, pero ms intuitivo para el ingeniero de control. Este lenguaje es
usado principalmente para implementar procedimientos complejos que no
pueden ser expresados mediante lenguajes grficos.

Fig. 48 Ejemplo de cdigo de programacin con texto estructurado.

4.3 Instrucciones bsicas.

continuacin se detallan las instrucciones bsicas de los PLCs.

Cargar(Load): La instruccin cargar o Load (LD) se refiere a un contacto

abierto. En otros casos se describe como la instruccin examinar s esta on


(examine if on: XIO). El smbolo usado es el siguiente:

Fig. 49 Smbolo para la instruccin LoaD


Este smbolo es usado cuando se requiere que la seal este presente para
que el smbolo este lgicamente activo. Cuando la entrada fsica esta activa o en alto
se puede decir que la condicin lgica del smbolo es Cierta. El PLC examina si la
seal de entrada esta en on, es decir, si la entrada fsica est on entonces el
smbolo tambin estar on. Una condicin on tambin se conoce como un estado
lgico 1 o un alto.
Este smbolo normalmente puede ser usado con entradas internas, entradas
externas y contactos de salida externos.
Cargar Barra(LoadBar): La instruccin LoaDBar se refiere a un contacto
cerrado. Tambin es conocida como examinar si esta cerrado (examine if closed:
XIC) y como Cargar negado (LoaDNot: LDN). Esto es examinar si la entrada fsica
esta desactivada. El smbolo para la instruccin LoadBar es el siguiente:

Fig. 50 Smbolo para la instruccin LoaDBar.


Es usado cuando se requiere que el smbolo este activo en ausencia de seal.
Esto es, cuando la seal fsica esta en off o en un nivel bajo, entonces el smbolo

tiene la condicin lgica cierto. En otras palabras, el PLC examina si la entrada


fsica esta off y luego asigna al smbolo el estado lgico on. Una condicin off
tambin se trata de un estado lgico 0.
Este smbolo 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 smbolo a la izquierda del diagrama escalera.
Estado Lgico

Load

LoadBar

Falso

Cierto

Cierto

Falso

Tabla 2 Resultados lgicos de las instrucciones LOAD y LOADBAR.

Salida(Out): La instruccin Out conocida en algunos casos como Energice la


salida (OutputEnergize) es similar a la bobina de un rel. El smbolo usado es el
siguiente:

Fig. 51 Smbolo OUT (Bobina de salida)

Cuando en un peldao existe una secuencia de smbolos con condicin


lgica cierta que preceden esta instruccin, entonces se activa la salida fsica
correspondiente a la direccin indicada en la instruccin OUT. Esto es equivalente a
una salida que esta normalmente desenergizada. Esta instruccin es usada tanto en
bobinas internas que son simuladas (no existen fsicamente) como en salidas hacia
el mundo exterior.
SalidaBarra(Outbar):La instruccin Outbar se conoce tambin como salida
negada (OutNot). Es similar a la bobina de un rel que esta normalmente energizada.
El smbolo usado para esta instruccin corresponde a:

Fig. 52 Smbolo instruccin OUTBar(Bobina normalmente energizada)


Cuando en un peldao existe una secuencia de smbolos con condicin
lgica Falso que preceden esta instruccin, entonces se activa la salida fsica
correspondiente a la direccin indicada en la instruccin OUTBar. Esto es
equivalente a una salida que esta normalmente energizada. Esta instruccin es
usada tanto en bobinas internas que son simuladas (no existen fsicamente) como en
salidas hacia el mundo exterior.
Estado Lgico

Out

OutBar

Falso

Cierto

Cierto

Falso

Tabla 3 Resultados lgicos de las instrucciones OUT y OUTBAR.

Ejemplo
Comparemos

un

diagrama

escalera

simple

con

circuitos

de

rels

interconectados como el de la figura para apreciar las diferencias.

Fig. 53 Circuito con lgica a rels.


En el circuito anterior, la bobina se energizara cuando exista un circuito
cerrado entre los terminales positivo y negativo de la batera. Este mismo circuito se
puede representar mediante un diagrama escalera que consiste de peldaos
individuales justo como en una escalera real. Cada peldao debe contener una o
ms entradas, y una o ms salidas. La primera instruccin en un peldao debe ser
siempre una instruccin de entrada, y la ltima instruccin del peldao debe ser
siempre una salida o su equivalente.

Fig. 54 Diagrama escalera del ejemplo.


Ntese que en este diagrama escalera se ha usado las instrucciones LoaD y
OUT, adems de la instruccin END que requieren algunos PLCs para indicar que es
el ltimo peldao del programa. Algunos PLCs tambin requieren la instruccin
ENDH en el ltimo peldao antes de la instruccin END.

4.4 Registros de direcciones en los PLCs.

n el ejemplo anterior, cambiando el switch 2 por un smbolo de contacto a


la apertura (LoaDBar), se cambiara el diagrama escalera a la siguiente
forma:

Fig. 55 Diagrama escalera con direccin de operandos.


Ntese que a cada smbolo (o instruccin) ahora se le asigno una direccin.
Esta direccin especifica una cierta rea de almacenamiento en los registros de
datos del PLC, de tal manera que el estatus de la instruccin (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 fsicamente abierto (off) y
que el SW2 estar en principio fsicamente 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

15

14

13

12

11

10

09

08

07

06

05

04

03

02

01
1

00
0

04

03

02

01

00
0

REGISTRO 05
07

06

05

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.

Por otra parte, los estados lgicos bajo (0) y alto (1) indican cuando la
instruccin es Falsa o Cierta respectivamente.
CONDICIN LGICA DEL SMBOLO
BITS LGICOS
LD
0 Logic
Falso
1 Lgico
Cierto

LDB
Cierto
Falso

OUT
Falso
Cierto

Tabla 5 Resultados lgicos de las instrucciones del diagrama escalera anterior.


El PLC slo energizara una salida cuando todas las condiciones lgicas
en un peldao sean Cierta. De aqu que mirando la tabla anterior se concluya que
en el ejemplo el SW1 debe poseer un estatus y estado lgico alto (1), mientras que el
SW2 debe poseer un estatus bajo, para que as el PLC asigne a la salida un estado
lgico 1(cierto), energizando la salida fsica. Si alguna instruccin en el peldao es
Falso, entonces el estado lgico de la salida ser Falso y de esa manera no se
activar la salida fsica.
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 Lgico del smbolo


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.

4.5 Un ejemplo de control de nivel.

onsiderese la siguiente aplicacin: Sea desea controlar el suministro de


aceite proveniente de un tanque. Para lo anterior se usarn 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 condicin 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 segn lo descrito anteriormente.
En esta aplicacin son necesarios 3 I/O (Entradas / salidas): 2 entradas para
los sensores y 1 salida para el motor de la bomba. Asmase por ejemplo que ambos
sensores sern normalmente cerrados (NC) del tipo de sensores de nivel de fibra
ptica. Cuando ellos NO estn inmersos en el liquido estarn activados.
Contrariamente, cuando estn inmersos en el liquido estarn desactivados.
Por otra parte, hay que asignarle a cada una de las Entradas / salidas una
direccin en el PLC, para que el mismo conozca donde estn fsicamente
conectadas tanto las entradas como las salidas. Las direcciones escogidas se
muestran en la siguiente tabla:

Entrada
Sensor bajo nivel
Sensor alto nivel

Direccin
0000
0001

Salida
Motor

Direccin
0500

Rels Internos
1000

Tabla 7 Asignacin de E/S y bits internos del ejemplo.


La siguiente figura muestra el diagrama escalera resultante de esta aplicacin.
Ntese que se estn usando rels 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.
Recurdese que estos rels no existen fsicamente 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 razn para usar los PLCs en la mayora de
las aplicaciones es para sustituir los rels del mundo real, y en ese sentido los rels
internos del PLC hacen esta accin por lo dems posible. Es imposible indicar
cuantos rels internos vienen en cada tipo o marca de PLC. Algunos incluyen cientos
de rels, otros miles de rels. Tpicamente, el tamao del PLC (no es tamao fsico)
es el factor que marca la pauta. Si se esta usando un micro-PLC con pocas entradas
/ salidas, normalmente no se necesitarn muchos rels internos, pero si en cambio
se esta usando un PLC mayor con cientos o miles de entradas / salidas, obviamente
se necesitaran gran cantidad de rels internos.

4.6 Ejecucin del programa de control de nivel.

nicialmente el tanque esta vaco. Por lo tanto la entrada 0000 esta en 1 y la


entrada 0001 tambin esta en 1. As al final del primer SCAN se activa el rel
interno 1000. Al comienzo del segundo SCAN las condiciones permanecen

iguales excepto que ahora el bit interno 1000 se est auto reteniendo a travs de su
contacto 1000 del segundo peldao, y al final de este SCAN se activa la salida fsica
0500.

a)

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

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


esto se activa el motor de la bomba.
Despus 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 lgico
FALSO .

Fig. 59 Scan 101 1000.

Ntese que aun cuando el sensor 0000 es FALSO, aun existe el camino lgico
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 lgico que mantiene al rel 1000. Esto ltimo ocurrir despus 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 condicin lgica FALSO.

a)

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

Ya que no existe ningn camino lgico hacia la salida 0500, la misma se


desactivara apagando as el motor de llenado.
Despus 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.

Ntese que aunque el sensor de nivel alto se hace CIERTO, aun no hay
camino lgico hacia el rel interno 1000 y por lo tanto el motor sigue apagado.
Despus del SCAN 2000 el nivel de aceite cae por debajo del sensor de bajo
nivel, hacindose CIERTO y estableciendo un camino lgico CIERTO hacia el rel
1000. En este punto se cae nuevamente en la condicin del SCAN 1, repitindose el
proceso descrito.

(VER ANIMA1.PPT EN EL CD ANEXO).

Captulo

PRINCIPALES INSTRUCCIONES.
5.1 lgebra Booleana.

l lgebra Booleana permite realizar operaciones bsicas con los bits


contenidos en los registros del PLC. Las funciones bsicas incluyen las
operaciones: AND, OR y XOR.

AND- Esta funcin habilita el uso de la tabla de la verdad mostrada a


continuacin.
Resultado = A AND B
A

Resultado

Tabla 8 Tabla de la verdad funcin AND.


Aqu se puede observar que la operacin AND esta relacionada con la
multiplicacin ya que la nica vez que el resultado es cierto es cuando los dos
operndoos son ciertos al mismo tiempo.
La funcin AND es til sobretodo cuando el PLC no cuenta con funciones de
enmascaramientos de registros. Cuando se trabaja a nivel de bits, la funcin de
enmascaramiento permite dejar en un registro dado un nico bit. Esto se debe a
que cualquier bit que sea operado a travs de una AND con sigo mismo
Prof. Danilo Navarro. Universidad De Oriente. Julio 2001.

6
2

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 0s en todas las posiciones excepto en los
cuatro bits donde se desea mantener el estado que poseen.
OR- Esta funcin se basa en la tabla de la verdad que a continuacin se
presenta.
Resultado = A OR B
A

Resultado

Tabla 9 Tabla de la verdad funcin OR.


Aqu se puede ver que la funcin OR esta relacionada con la adicin ya que
mientras A o B sean ciertos, el resultado ser cierto.
EXOR- Esta funcin sigue la tabla de la verdad presentada a continuacin.
Resultado = A XOR B
A

Resultado

Tabla 10 Tabla de la verdad funcin XOR.


Aqu se puede ver que la funcin no esta relacionada a nada. Una nemotcnica
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 operacin es algunas veces til cuando se desea comparar dos bits en dos

registros y resaltar cuales son diferentes. Esta operacin es igualmente necesaria


cuando se calcula alguna checksum sobre todo en caso de protocolos de
comunicaciones. Una operacin de checksum se usa comnmente para chequear
los errores en las comunicaciones.
Las instrucciones del diagrama escalera son llamadas tpicamente como: AND,
ANDA, ANDW, OR, ORA, ORW, XOR, EORA XORW.
Existen generalmente 2 mtodos para llevar a cabo estas instrucciones. El primer
mtodo se refiere a una instruccin simple que requiere de tres entradas:
Operando A- Esta es la direccin de memoria del primer operando.
Operando B- Esta es la direccin de memoria del segundo operando.
Destino- Esta es la direccin de memoria donde se almacenar el resultado.
Por ejemplo si A AND B = 0 el resultado se colocar automticamente en la
direccin de memoria indicada en el destino.

Fig. 62 Smbolo AND


Las instrucciones AND, OR, y XOR en cualquier PLC tpico tendran un
smbolo parecido al de arriba. Remplazando por supuesto la etiqueta AND por OR o
XOR segn corresponda. En el smbolo anterior, El operando A esta en la direccin
de memoria DM100, El operando B esta en la direccin de memoria DM101 y el
resultado se almacenar en la direccin de memoria DM102. Por lo tanto aqu se ha
creado simplemente la ecuacin Booleana DM100 AND DM101 = DM102. El
resultado es almacenado automticamente en la direccin DM102.
El siguiente diagrama escalera muestra el uso de la funcin Boolena AND.

Fig. 63 Instruccin AND en el diagrama escalera.


Ntese igualmente el uso de la instruccin DIFU para garantizar que la
instruccin AND se ejecute solamente durante un scan una vez que se halla activado
la entrada de validacin 0000.

Fig. 64 Smbolo AND(mtodo de la instruccin dual)


El mtodo de la instruccin dual usa un smbolo similar al que se muestra
arriba. En este mtodo slo se suministra con el smbolo la direccin del operando B.
La direccin del operando A se suministra con la operacin LDA, y la direccin del
destino del resultado se suministra con la operacin STA.

Fig. 65 Uso de la instruccin dual para el AND en el diagrama escalera.

El resultado es idntico al obtenido con el mtodo de la instruccin simple. Para


realizar las operaciones de OR y XOR con el mtodo dual, slo se debe cambiar la
etiqueta del smbolo AND por la correspondiente OR o XOR.

5.2 Instrucciones memorizadas.

as bobinas de salida son parte esencial de los programas en los PLCs, pero
hay que tomar en cuenta que ellas se activan mientras que todas las
instrucciones que la preceden en el peldao estn tambin activas.

Regresando al ejemplo de los rels y la campana previamente visto, Qu pasara 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 instruccin de retencin permite que se usen switch de accin momentnea
para mantener una bobina activa indefinidamente hasta tanto se le aplique la
instruccin de liberacin.
La instruccin de retencin comnmente se llama SET, mientras que la
instruccin de liberacin se llama RESET. El diagrama siguiente muestra el uso de
estas dos instrucciones.

Fig. 66 Uso de la instruccin SET y RESET.


Aqu se estn usando dos switches tipo push button. Uno de ellos esta
fsicamente 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 instruccin "set 0500" se hace cierta por lo que entonces se activa la salida fsica
0500. Aunque el operador deje de oprimir el switch, la salida 0500 permanecer

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 instruccin "res 0500" se haga
cierta restaurando as la salida fsica 0500.

(VER ANIMA2.PPT EN EL CD ANEXO)

Fig. 67 Figura animacin uso de la instruccin SET y RESET.


Por otra parte, Qu pasara 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 fsica. Esto arrojar que tanto 0000 como 0001 estn activas. Luego el PLC
ejecuta el programa y resuelve: Comenzando por el tope izquierdo, como 0001 esta
activa entonces la salida 0500 debe estar lgicamente activa. En segundo lugar,
como en el prximo peldao 0001 esta activa, entonces la salida 0500 debe estar
lgicamente inactiva o en cero. Finalmente, en la ltima parte del scan que es donde
se actualizan las salidas, se mantendr el ltimo estado lgico (reset 0500) de la
salida 0500 que no es otro distinto a que la salida fsica se mantenga desactivada.

5.3 Contadores.

n contador es un elemento diseado simplemente para contar eventos, sin


embargo dependiendo del fabricante pueden existir en general tres tipos
de contadores: Contadores ascendentes los cuales cuentan solamente

ascendentemente (1, 2, 3, ) y que usualmente se denotan como CTU(count up);


Contadores descendentes los cuales cuentan solamente descendentemente (9, 8,
7, ) y que usualmente se denotan como CTD (count down); y Contadores
bidireccionales los cuales cuentan tanto ascendente como descendentemente (1, 2,
3, 4, 3, 2, 3, 4, 5,...) y que usualmente se denotan como UDC(up-down counter) o
simplemente C.
Tambin, muchos fabricantes incluyen un numero limitado de contadores de
alta velocidad denotados usualmente como HSC (high-speed counter). Tpicamente
el

contador rpido es un dispositivo del hardware del PLC, mientras que los

contadores mencionados anteriormente son implementados mediante software. Es


decir, mientras que los contadores ordinarios no existen fsicamente 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 prctica es simplemente usar los contadores normales
(software) cuando los pulsos que se estn 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 estn contado llegan cada 4 ms o ms, es posible usar los contadores
normales. Si al contrario los pulsos arriban cada 3 ms hay que hacer uso de los
contadores rpidos.
Tpicamente 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 codificacin binaria normal. Cuando el programa esta corriendo en el PLC, el

valor actual o el acumulado del contador puede ser visualizado en la consola de


programacin y ajuste del PLC (Hand held).
A continuacin se pueden ver algunos ejemplos de la instruccin del contador.

Fig. 68 Bloque contador tpico.


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 entraran los pulsos que se desean contar. Por ejemplo si se esta
contando cuantas piezas pasan por el frente de un detector inductivo que esta
fsicamente conectado a la entrada 0001, entonces se debe colocar un contacto al
cierre con la direccin 0001 en la segunda lnea de entrada(pulse).
Cxxx es la direccin 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 nmero 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 fsica que activa el mecanismo de embalaje de las piezas, habr que
colocar ah el nmero 5 en decimal. Cuando el contador ha alcanzad el valor del
preset

entonces l activara un conjunto de contactos etiquetados tambin con la

direccin C000 y que pueden ser utilizados en cualquier parte del programa de la
aplicacin.
.

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 Smbolo tpico de un contador bidireccional .


En este tipo de contador se requieren 3 entradas: La entrada de RESET la
cual tiene la misma funcin que en el contador mencionado anteriormente, la entrada
UP

para

contar

ascendentemente

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

Fig. 71 Uso del Bloque contador bidireccional en un diagrama escalera.

(VER ANIMA3.PPT EN EL CD ANEXO)

Fig. 72 Figura animacin uso del bloque contador.

5.4 Temporizadores.

os temporizadores son instrucciones que aguardan una predeterminada


cantidad de tiempo antes de ejecutar una accin. Existen diferentes tipos de
temporizadores segn el fabricante. Los ms comunes son los siguientes:

Temporizadores al trabajo (On-Delay timer)- Este tipo de temporizador


simplemente retraza el encendido. En otras palabras, despus que un sensor
(entrada) activa la temporizacin, el temporizador espera por un tiempo
predeterminado antes de activar su salida. Este es el ms comn 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
desactivacin de una salida. Por ejemplo, despus que un sensor detecta un
objetivo, se activa inmediatamente una salida, y luego cuando ya el sensor no
esta detectando ms el objetivo, la salida se mantiene encendida por un
tiempo determinado antes de desactivarla. El smbolo para este tipo de
temporizadores es TOF (timer off-delay) y es menos comn que el
temporizador ON-DELAY.
Temporizador acumulativo o de retencin- Este tipo de temporizador
requiere de dos entradas. Una de las entradas inicia la temporizacin y la otra
la restaura a cero. La temporizacin 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 temporizacin, mientras que este tipo de
temporizador mantiene el tiempo de temporizacin que haya transcurrido
cuando el mismo sea desactivado a mitad del ciclo de temporizacin. 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

cuenta del tiempo se mantendra reseteado cada vez que el sensor se


desactive / active. Un smbolo para este tipo de temporizador es RTO
(retentive timer) o TMRA (accumulating timer).
Finalmente, mientras el programa de aplicacin esta corriendo en el PLC, se
puede acceder mediante la consola de programacin

al tiempo de temporizacin

transcurrido o al acumulado segn corresponda. Estos tiempos mencionados se


expresan en pulsos de reloj que de acuerdo al fabricante se ofrecen en varias bases
de tiempo, siendo las ms tpicas: 1, 10, 100 mseg, 1 seg y 1 min. Los valores de
preseleccin para las funciones de temporizacin van desde 0 hasta 9999, o desde 0
hasta 65535 pulsos de reloj.

Fig. 73 Smbolo bsico de una instruccin de temporizacin.


Este temporizador es uno del tipo on-delay direccionado como Txxx. Cuando
la entrada de activacin (enable) se pone en un nivel alto comienza la temporizacin.
Cuando los pulsos de temporizacin han alcanzado el valor de preseleccin yyyyy,
l activar sus contactos que se podrn usar en cualquier forma y punto del
programa de aplicacin. Hay que recordar que la duracin de cada pulso de reloj
depende del tiempo base usado el cual se ajusta para cada temporizador con la
ayuda de la consola de programacin.

Fig. 74 Uso del temporizador on delay en el diagrama escalera.

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 preseleccin.
Como cada pulso corresponde a 100 ms, entonces la temporizacin 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. Tambin,
cuando la entrada 0001 cae a cero el temporizador T000 se restaura a cero
causando la apertura de su contacto, y con ello la desactivacin de la salida 0500.

(VER ANIMA4.PPT EN EL CD ANEXO)

Fig. 75 Figura animacin uso del bloque temporizador on delay.

Un temporizador de acumulacin tpico sera como el siguiente.

Fig. 76 Smbolo bsico de un temporizador acumulativo.

Este temporizador es direccionado como Txxx. Cuando la entrada de


activacin (enable) se pone en un nivel alto comienza la temporizacin. Cuando los
pulsos de temporizacin han alcanzado el valor de preseleccin yyyyy, l activar
sus contactos que se podrn usar en cualquier forma y punto del programa de
aplicacin. Si por ejemplo, la entrada ENABLE cae a cero antes de que termine la
temporizacin, el valor en curso se conservar, y cuando la entrada vuelva a su nivel
alto continuar la temporizacin tomando en cuenta el tiempo ya computado. La
nica manera de forzar al temporizador a que comience la temporizacin desde el
principio es poner un nivel alto en la entrada de RESET.
A continuacin esta la instruccin de temporizacin 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 temporizacin 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
temporizacin en el punto que se dej, o hasta que se active la entrada 0001
(RESET) con lo que se restaurara a cero el tiempo contabilizado y se iniciara desde
cero cuando se active 0002.

(VER ANIMA5.PPT EN EL CD ANEXO)

Fig. 78 Figura animacin uso del bloque temporizador acumulativo.

5.5 Precisin de los Temporizadores.

uando se utilizan temporizadores con tiempos de retardo de algunos


segundos, no hay gran cuidado con su precisin ya que la misma es
insignificante. Sin embargo, cuando se utilizan temporizadores en el rango

de los milisegundos, su precisin 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 despus que el PLC ha
monitoreado o capturado el status de las entradas durante el ciclo de scan, el
error de entrada ser mximo (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 adems hay que esperar hasta que la instruccin de
temporizacin sea ejecutada. Si la instruccin de temporizacin es la ltima
del peldao, 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 temporizacin, 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 ejecucin 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 ejecucin del scan + 1
tiempo de ejecucin del programa. Tambin hay que recordar que el tiempo de

ejecucin 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 continuacin 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 correspondera a:
1 tiempo de scan + 1 tiempo de ejecucin de programa + 1 tiempo de scan
= 2 tiempos de scan + 1 tiempo de ejecucin de programa.
Todo lo anterior significa que aunque muchos fabricantes actualmente ofrecen
temporizadores con resolucin 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 aplicacin es por ejemplo 5 ms, es
preferible no usar temporizaciones inferiores a 15 ms.

Por otra parte tambin es de notar que los errores mencionados son slo
errores debido al software; sin embargo existen tambin 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 mayora
de los PLCs requieren que la entrada este fsicamente en alto por algunos ciclos de
scan antes de determinar que efectivamente es una entrada vlida. 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. Tpicamente un transistor toma aproximadamente 0.5 ms para
activarse plenamente, mientras que un rel electromecnica toma aproximadamente
10 ms.
Finalmente, si todos estos errores son demasiado grandes para la aplicacin,
es mejor considerar el uso de temporizadores de hardware externo.

5.6 Instruccin UN-SCAN.

sta instruccin (ONE-SHOT) es usada para hacer algo durante un NICO


SCAN. Muchos fabricantes ofrecen ONE-SHOT que son sensibles a un
flanco subiente (Transicin de off a on) y otros que son sensibles a los

flancos descendientes (Transicin de on a off). Alguno de los smbolos ms usados


para este tipo de instruccin corresponde a: difu/difd (differentiate up/down),
sotu/sotd (single output up/down), osr (one-shot rising) y otros.

Fig. 81 Smbolo tpico de instruccin ONE-SHOT.


Arriba se muestra el smbolo para una instruccin one-shots difu. Una
instruccin difd usara el mismo smbolo excepto que la etiqueta interna sera difd".
Algunos fabricantes usan como smbolo las mismas barras exteriores cambindole la
etiqueta interna por una P para la activacin por flanco ascendente y una N para
flanco descendente.
Esta instruccin es a menudo usada en conjunto con otras instrucciones
avanzadas para realizar una actividad que debe tomar lugar solamente una vez. Por
ejemplo, considrese la implementacin 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.

Fig. 82 Uso del DIFU para implementacin de un FLIP-FLOP.


Peldao 1- Cuando la entrada 0000 se hace cierta, el DIFU 1000 tambin se
hace cierto.
Peldao 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 peldao un camino cierto (NO 1000 & NC 1001), entonces OUT 1001 se
activa.
Peldao 3- NO 1001 es cierto, entonces la salida fsica OUT 500 es cierta.
Prximo Scan
Peldao 1- NO 0000 permanece cierto. DIFU 1000 ahora cambia a falso. Esto
se debe a que la instruccin DIFU es cierta slo durante un scan
Peldao 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.
Peldao 3- NO 1001 es cierto y por lo tanto OUT 500 permanece cierto.
Despus de por ejemplo 100 scan, el operador libera el pulsador y as NO 0000
cambia a falso. La lgica permanece en el mismo estado segn como se describi en
los peldaos 2 y 3 de arriba. Si por ejemplo en el scan 101 el operador acciona el
pulsador, entonces NO 0000 cambia a cierto, y producindose los siguientes
cambios:

Peldao 1- Cuando la entrada NO 0000 se hace cierta, entonces DIFU 1000


tambin se hace cierto.
Peldao 2- NO 1000 es cierto, NO 1001 permanece en cierto, NC 1001 se
hace falso, NC 1000 tambin se hace falso. Como ya no hay camino lgico
cierto, entonces OUT 1001 se hace falso.
Peldao 3- NO 1001 es falso y por lo tanto OUT 500 se desactiva.

(VER ANIMA6.PPT EN EL CD ANEXO)

Fig. 83 Figura animacin implementacin del FLIP-FLOP.

5.7 Control maestro.

sta instruccin puede ser concebida como una parada de emergencia en el


sentido que el segmento de programa que este marcado por ella slo se
ejecutara si ella esta activada. As, la instruccin de control maestro es

usada en pares: set para marcar el inicio del segmento controlado, y reset para
marcar el final. Comnmente 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 smbolo comn para esta instruccin 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 peldaos 2 y 3 se ejecutan solamente cuando la entrada
0000 es cierta. De no ser as, el PLC asume que las instrucciones lgicas entre MC y
MCR no existen y por lo tanto l har un by-pass en este bloque de instrucciones e
ira al peldao ubicada inmediatamente despus del la instruccin MCR.

Contrariamente, si la entrada 0000 es cierta, el PLC ejecutara los peldaos 2 y 3, y


actualizara el estado de las salidas 0500 y 0501 de acuerdo al resultado lgico de
estos peldaos.
En este ejemplo, el tiempo de scan del PLC se reduce ya que el mismo ignora
la existencia de los peldaos entre las instrucciones MC / MCR y por lo tanto no las
ejecuta.

(VER ANIMA7.PPT EN EL CD ANEXO)

Fig. 86 Figura animacin uso Control Maestro.

5.8 Registros de desplazamiento.

n muchas aplicaciones es necesario almacenar el estado de uno o varios


eventos que ha ocurrido previamente. En este caso el uso de registros o
grupo de registros para formar un tren de bits que almacene el estado (on /

off) de los eventos reseados, es una tcnica ventajosa. Cada nuevo cambio de
estado se almacena la primera posicin y los bits restantes avanzan una posicin
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 ms 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 mayora ofrece registros de desplazamiento hacia
la izquierda.

Fig. 87 Smbolo tpico de registro de desplazamiento.


Datos- La entrada de datos suministra los estados cierto / falso que sern
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.

Reloj- La entrada de reloj le indica al registro de desplazamiento que


almacene el estado de la entrada de datos en la primera posicin 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 smbolo del registro de desplazamiento en la direccin del
primer bit del registro. El 1003 dentro del smbolo del registro de desplazamiento en
la direccin 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 mquina de barquillas.


Considrese una maquina de 4 estados destinada a la elaboracin 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 roca 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 daado a medida que l avanza dentro del proceso a fin de
informar a la mquina 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
daado (entrada 0000), un codificador rotativo para seguir el viaje del cono a travs
de la lnea transportadora (entrada 0001), y un push button para reiniciar el registro y

con ello la lnea de produccin (entrada 0002). El diagrama escalera resultante sera
como el siguiente:

Fig. 89 Uso del registro de desplazamiento en el ejemplo anterior.


A continuacin se muestra el seguimiento del proceso segn van
aconteciendo las acciones y hechos. El registro 1000 inicialmente estara en cero.
10xx Register
15

14

13

12

11

10

09

08

07 06

05

04

03

02

01

00

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 vera como:


10xx Register
15

14

13

12

11

10

09

08

07

06

05

04

03

02

01

00

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

Segn 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 direccin 1001,
mientras que el estado del cono roto es pasado a la direccin 1000 que es el primer
bit del registro.

10xx Register
15

14

13

12

11

10

09

08

07

06

05

04

03

02

01

00

Tabla 13 Estado del registro al llegar un cono en mal estado.


Como el registro muestra que el bit 1001 es cierto, entonces la lgica del
diagrama escalera indica que hay que activar la salida 0500 que es la que agrega el
helado al cono bueno.
Segn que el transportador sigue avanzando, un cono bueno alcanza al
sensor y este cambia su estado a cierto. Nuevamente el codificador genera el pulso
de reloj con lo que ingresa el nuevo dato al registro mientras que los datos previos
son desplazados hacia la izquierda. Ahora el registro luce de la siguiente forma:

10xx Register
15

14

13

12

11

10

09

08

07

06

05

04

03

02

01

00

Tabla 14 Estado del registro al llegar el prximo 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 lgica del diagrama escalera no esta habilitada para adicionar el helado sobre este
cono. Al seguir en movimiento el sistema de transportacin, un cono en buen estado
alcanza el sensor y luego el codificador genera la entrada de validacin del reloj. El
nuevo estado del registro sera:

10xx Register
15

14

13

12

11

10

09

08

07

06

05

04

03

02

01

00

Tabla 15 Estado del registro al llegar otro cono en buen estado.


Ya que el bit 1003 es cierto, entonces segn la lgica del diagrama escalera
se activara la salida 0502 que rociara el helado con el caramelo. Al mismo tiempo,
sobre el cono roto no se ejecuta ninguna accin ya que el bit 1002 esta en falso, y
sobre el cono bueno que esta en la posicin 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 posicin con un cero, y a la vez desplaza
los dems bits que le van haciendo seguimiento a todos los conos.

10xx Register
15

14

13

12

11

10

09

08

07

06

05

04

03

02

01

00

Tabla 16 Estado del registro al llegar el prximo cono en mal estado


Ntese que el estado del primer cono que ingreso ha desaparecido, aunque
realmente ha pasado a la posicin 1004 la cual no se est usando en la lgica
programada en diagrama escalera y por lo tanto carece de utilidad. La operacin
descrita continua sucedindose con cada flanco ascendente proveniente del
codificador.

(VER ANIMA8.PPT EN EL CD ANEXO)

Los

registros

de

desplazamiento

son

usados

mas

comnmente

en

aplicaciones de sistema de correas transportadoras, etiquetado, envasado, etc.


Algunas veces es tambin conveniente usarlos para producir retrasos en lneas de
embotellado de rpido 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 comn es colocar el solenoide un poco
mas aguas abajo en la lnea de produccin y utilizar registros de desplazamiento
para seguir la trayectoria de la botella en mal estado y sacarla as en un punto ms
conveniente.

5.9 Acceso y manipulacin de datos.

Por qu se requiere acceder y manipular datos? . Considrese que en una


aplicacin se est utilizando un mdulo especial de entrada como por ejemplo
uno de conversin Anlogo / Digital. Este mdulo adquiere las seales

analgicas del mundo exterior (una corriente o un voltaje variable) y las convierte a
un formato que el PLC pueda entender (una seal digital: 1s y 0s), al mismo tiempo
que las almacena en la memoria. Sin embargo se debe acceder los datos
almacenados y moverlos a otra posicin de memoria o de lo contrario la prxima
muestra remplazar la previamente existente, producindose la perdida irremediable
de esos datos. En otros casos simplemente se desea almacenar una constante,
acceder algn dato binario no proveniente de las entradas discretas (por ejemplo
datos provenientes de un programador cclico), realizar alguna operacin matemtica
y almacenar el resultado en una direccin de memoria diferente, etc.
Tpicamente existen dos instrucciones que se utilizan para el acceso y la
manipulacin de datos (LDA & STA), aunque algunos fabricantes utilizan una
instruccin nica para realizar enteramente esta operacin (MOV).

Fig. 90 Smbolo de la instruccin MOV.


El smbolo del par de instrucciones LDA (LoaD Accumulator) y STA (STore
Accumulator) se muestra a continuacin. Es de hacer notar que el acumulador es
simplemente un registro dentro del CPU donde el PLC almacena datos
temporalmente mientras ejecuta algunas operaciones.

Fig. 91 a) carga desde el acumulador. B) almacena en el acumulador.

Analizando primero el uso del smbolo nico MOV, se nota que el mismo necesita de
dos entradas:
Fuente (xxxx)- Esto es la direccin 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 direccin de memoria 100. tambin 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 direccin de memoria a donde se mover el dato.
Por ejemplo si se escribe DM201 significa que el dato se mover a la direccin
de memoria 201. tambin se puede escribir por ejemplo 0500, lo que
significara que el bit menos significativo del dato debe ser movido a la salida
fsica 0500, el siguiente a la 0501 y el ms 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
mquina.

Fig. 92 Uso de la instruccin MOV.

El diagrama escalera para realizar la operacin de manipulacin de datos


sera el mostrado arriba. Es de hacer notar que la instruccin DIFU es para evitar que
los datos sean movidos en cada ciclo del scan. Algunas veces en til que se realice
la operacin en cada scan (por ejemplo en la adquisicin de datos A/D), pero otras
veces es inconveniente como por ejemplo en el caso de usar un display externo, el
cual no se podra leer por los cambios excesivos que se presentaran 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 instruccin con los dos smbolos trabaja de manera similar pero luce diferente.

Fig. 93 Uso de la instruccin a dos smbolos.


Para usar estas instrucciones se debe suministrar tambin 2 cosas:
LDA - Esta instruccin es similar a la fuente de la instruccin MOV. Esto se
refiere a la direccin 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
direccin de memoria 100. tambin 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 instruccin es similar al destino de la instruccin MOV. Por ejemplo
si se escribe DM200 significa que el dato se mover a la direccin de memoria
200. tambin se puede escribir por ejemplo 0500, lo que significara que el bit

menos significativo del dato debe ser movido a la salida fsica 0500, el
siguiente a la 0501 y el ms 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 mquina.
En este diagrama se est moviendo la constante 2222 a la posicin de memoria
200. El smbolo "#" es usado por algunos fabricantes para simbolizar un nmero
decimal. Si se usa solamente 2222 el PLC interpretara que se trata de la direccin de
memoria 2222.

(VER ANIMA9.PPT EN EL CD ANEXO)

Fig. 94 Figura animacin manipulacin de datos.

5.10 Instrucciones matemticas.

n muchas aplicaciones prcticas se deben ejecutar algn tipo de operacin


matemtica. Es poco usual que los datos que se manejan estn
exactamente formulados como se necesitan. Por ejemplo supngase que

se estn manufacturando cierto tipo de piezas mecnicas, y no se desea mostrar el


numero total de piezas hechas sino mejor el nmero de piezas que son necesarias
hacer para cumplir la cuota del da. Asumiendo que la cuota diaria es de 1000
piezas, y que la produccin acumulada es X, entonces se puede formular que el
nmero de piezas restantes por fabricar corresponden a 1000 X. Obviamente para
implementar esta formula se necesita que el PLC tenga cierta capacidad matemtica.
En general los PLCs siempre incluyen las siguientes funciones matemticas:
Adicin- Corresponde a la capacidad de sumar unos datos a otros.
Comnmente se denota con el smbolo ADD.
Sustraccin- Corresponde a la capacidad de sustraer unos datos de otros.
Comnmente se denota con el smbolo SUB.
Multiplicacin- Corresponde a la capacidad de multiplicar unos datos por
otros. Comnmente se denota con el smbolo MUL.
Divisin- Corresponde a la capacidad de dividir unos datos entre otros.
Comnmente se denota con el smbolo DIV.
Similar a como ocurre con la instruccin MOV, hay generalmente dos mtodos
que son usados por los fabricantes para realizar estas operaciones. El primer mtodo
incluye el uso de un
instruccin:

slo smbolo que requiere de tres entradas para ejecutar la

Operando A- Esta es la direccin de memoria donde se encuentra el primer


operando de la formula a usar. Vale mencionar que este operando puede ser
tambin una constante.
Operando B- Esta es la direccin de memoria donde se encuentra el segundo
operando de la formula a usar. Vale mencionar que este operando tambin
puede ser una constante.
Destino- Esto contiene la direccin de memoria donde se almacenara el
resultado de la operacin.

Fig. 95 Smbolo de suma


Las operaciones aritmticas bsicas se simbolizaran como se muestra arriba,
intercambiando la etiqueta de ADD, SUB, MUL y DIV segn se trate de una suma,
resta, multiplicacin o divisin respectivamente. En el smbolo anterior se ve que la
operacin es la suma, el operando 1 se encuentra en la direccin de memoria 100, el
operando 2 se encuentra localizado en la direccin de memoria 101, y el resultado se
almacenara en la direccin de memoria 102.

Fig. 96 Uso de la operacin Suma en el diagrama escalera.

En la pgina anterior se muestra el uso tpico de la operacin matemtica de


suma en una aplicacin escrita en diagrama escalera. Ntese el uso de DIFU para
garantizar que la operacin se ejecute slo durante un scan. Si previamente se ha
colocado el numero 100 en la direccin DM100 y el nmero 200 en la direccin
DM101, El numero 300 ser almacenado en la direccin DM102.(100+200=300)

Fig. 97 Smbolo de suma(ADD mtodo dual)


El mtodo de la instruccin dual usara un smbolo similar al mostrado
anteriormente. En este mtodo se debe suministrar solamente la direccin del
operando 2 ya que la direccin del operando 1 esta dada en la instruccin LDA. La
direccin de destino del resultado de la operacin esta implcitamente indicada en la
instruccin STA.

Fig. 98 Uso de la instruccin de suma(ADD mtodo dual).

El diagrama escalera muestra el uso de las instrucciones anteriormente


indicadas. Obviamente el resultado es similar al obtenido con la instruccin simple
mostrada antes.

(VER ANIMA10.PPT EN EL CD ANEXO)

Fig. 99 Figura animacin manipulacin de datos.


Una interrogante interesante es preguntarse Qu pasara si el resultado de
una operacin matemtica es ms grande del mximo tamao que se puede
almacenar en una locacin de memoria?
Tpicamente las locaciones de memoria son de 16 bits. Esto significa que el
mayor nmero que se puede almacenar corresponde a 65535 (2^16=65536). Si el
resultado es mayor a este nmero ocurre un desbordamiento (overflow), y
tpicamente el PLC activa un rel indicando lo que ha pasado.
Algunos PLCs operan a 32 bits con lo cual resuelven este problema excepto
para nmeros realmente muy grandes. Otra causa de desbordamiento es la divisin
por cero lo que tambin causa la activacin del rel de error matemtico.
Muchos PLCs tambin incluyen otras capacidades matemticas tales como:
Extraccin de raz cuadrada.
Escalamiento.
Valor absoluto.

Funcin senoidal, cosenoidal y tangencial.


Funcin logaritmo natural y base 10.
y

Potenciacin ( X )
Otras.
Algunos PLCs tambin tienen la capacidad de operaciones con punto flotante. Es
decir, por ejemplo si se divide 10 entre 3 el resultado almacenado ser 3.33333.

Captulo

LENGUAJES Y EQUIPOS PARA LA PROGRAMACION.


6.1 Lenguaje escalera (LADDER).

Son similares a los diagramas de lgica cableada usados para representar


los circuitos de control a rels. La principal diferencia entre las dos es que en
la programacin en escalera, todas las entradas son representadas mediante

smbolos de contacto ( -| |- ), todas las salidas son representadas mediante bobinas


de salida ( -( )- ), y las operaciones numricas estn incluidas en el conjunto de
instrucciones del cual dispone el lenguaje.

Fig. 100 Equivalencia entre lgica a rels y diagrama escalera.


La figura de arriba ilustra un diagrama simplificado del control con lgica a
rels y su equivalente en diagrama de escalera. Ntese que en el diagrama de
escalera, todas los contactos de entrada estn asociados con uno de los elementos
de conmutacin del diagrama de lgica a rels. La bobina de salida M1 en el
diagrama de rels est representada con un smbolo de bobina de salida en el
diagrama escalera. La direccin numrica que aparece en la parte superior de cada
smbolo de contacto o de bobina en el diagrama escalera, hace referencia a la
Prof. Danilo Navarro. Universidad De Oriente. Julio 2001.

10
2

CAPITULO 6.

LENGUAJES Y EQUIPOS PARA LA PROGRAMACIN.

localizacin de la conexin de Entrada / Salida fsica en el bus de direcciones del


PLC.
Un programa escrito en escalera (LADDER) esta compuesto por peldaos
(Conjunto de instrucciones grficas especificas que se encuentra entre dos barras
verticales

que

representan

las

lneas

de

potencial)

que

son

ejecutados

secuencialmente por el PLC. El conjunto de instrucciones grficas disponibles


representan:
Las entradas / Salidas fsicas del PLC (Pulsadores, sensores, rels auxiliares,
luces pilotos, etc.),
Las funciones internas del PLC (Temporizadores, contadores, programadores
cclicos, etc).
Las operaciones matemticas (Suma, divisin, AND, XOR, etc.).
Las operaciones de comparacin y manipulacin de datos (A < B, A = B,
Desplazar, rotar, etc.).
Las variables internas al PLC (bits, palabras, etc.).
Estas instrucciones grficas se relacionan mediante lneas de conexin
horizontales y verticales, que al final conducen a una o varias salidas y/o acciones.
Un peldao no puede soporta ms que un grupo de instrucciones enlazadas. Por
ejemplo el siguiente diagrama esta compuesto por dos peldaos.

Fig. 101 Ejemplo de peldaos.

6.1.1 Principios de programacin.


En un PLC tpico, cada peldao esta compuesto por ejemplo por un conjunto
mximo de 7 lneas 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 accin 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 programacin.


De esta forma el peldao se visualiza como un formato de programacin de 7
por 11, comenzando la programacin a partir del tope de la izquierda. Aqu, se deben

programar las instrucciones de TEST, comparaciones, y funciones, justificndolas


por la izquierda. Estas pruebas lgicas entonces conducen a la zona de accin
donde se programan las bobinas de salida, operaciones numricas e instrucciones
de control del flujo del programa; justificndola por la derecha. El peldao 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, adems
de la zonas TEST y ACCIONES mencionadas, tambin existe espacio para comentar
la finalidad lgica el peldao. Normalmente este espacio aparece como cabecera o
tambin puede ir como comentario lateral derecho.
6.1.2 Ejemplo del control de un estacionamiento.
a) Especificacin de la aplicacin.
Se planea construir un estacionamiento moderno y automatizado que opere de
acuerdo a lo siguiente:
Control de acceso de vehculos: Tan pronto como se detecte la
presencia de un vehculo en la rampa de entrada, el sistema debe abrir
automticamente 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
2

CO en el estacionamiento. Asimismo, por razones econmicas, las


luces deben ser controladas por temporizadores.

Fig. 103 Control de acceso a estacionamiento.


b) Anlisis orgnico y seleccin del PLC.
De acuerdo a la especificacin anterior, el sistema debe tener capacidad para:
Apertura / Cierre de la barrera al detectar presencia de vehculos.
Controlar la cantidad de vehculos que han entrado o que han salido del
estacionamiento.
Encender / Apagar luces.
2

Arrancar / Parar un extractor al detectar exceso de CO .


Programador semanal para horario de funcionamiento del estacionamiento.
Control manual de apertura y cierre de la barrera de acceso.
Posibilidad de modificar los parmetros 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:
Nmero de entradas discretas:
Nmero de entradas analgicas:
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.

Un PLC que cubre los requerimientos de esta aplicacin es el ZELIO SR1B121BD


(Ver anexo 1 de este trabajo).
c) Parametrizacin y conexines de entrada / salida al PLC.

Fig. 104 Diagrama de Entradas / salidas del PLC.

ETIQUETA

01
02
03
04
05
06

I1
I2
I3
I4
I5
I6

01 IB
01
02
03
04

Q1
Q2
Q3
Q4

01
02
03
04

Z1
Z2
Z3
Z4

DESCRIPCION
Entradas Discretas
Detector de entrada
Detector de salida
Switch temporizador
Arranca extractor
Para extractor
Cierra barrera manual.
Entradas Analgicas
2
Detector CO
Salidas Discretas
Apertura barrera
Cierre barrera
Control iluminacin.
Control extractor
Teclas Zx
Apertura barrera
Descontaje manual
Cierra barrera
Contaje manual

Tabla 18 Variables de entrada / salida.

Tabla 19 Parametrizacin de temporizadores y entradas analgicas.

Relojes
R1
R2
R3

Da y hora de inicio
Lunes 8:00
Martes 8:00
Mircoles 8:00
Jueves 8:00
Viernes 6:00
Sbado 6:00
Domingo 0:00

Da y hora de fin
Lunes 21:00
Martes 21:00
Mircoles 21:00
Jueves 21:00
Viernes 22:00
Sbado 23:59
Domingo 23:59

Tabla 20 Parametrizacin de relojes.

Fig. 105 Parametrizacin de bloques de texto.


d) Programa.
El listado de programa se muestra en las siguientes dos figuras. Para la
simulacin, cargar el software (EVA-SOFT) del CD anexo a este trabajo y abrir el
archivo parking.zel.

Fig. 106a Diagrama escalera del ejemplo del estacionamiento.

Fig. 106b Diagrama escalera del ejemplo del estacionamiento.

6.2 Lista de instrucciones( AWL, BOOLEANO, Nemnicos).

orresponde al nivel ms fundamental de lenguajes de programacin


definidos en el estndar IEC 1131. De hecho, todos los otros lenguajes de

programacin de PLCs pueden ser convertidos a lista de instrucciones o

Nemnicos. Este tipo de programacin consiste en elaborar un listado de


instrucciones BOOLEANAS (nicamente operaciones sobre Bits) que se asocian a
los smbolos y contactos de un diagrama elctrico de control, y las cuales
representarn la combinacin lgica 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 ecuacin Booleana que aparece justo abajo.

O:01 = I:00 AND (I:01 OR (I:02 AND NOT I:03))


Igualmente, esta ecuacin puede ser convertida a una lista de instrucciones
usando los Nemnicos que aparecen a continuacin:

Fig. 108 Lista de Nemnicos del ejemplo anterior.

El comienzo del programa corresponde a la etiqueta START. En este punto


se carga el primer valor, y el resto de la ecuacin es dividida en pequeos
segmentos. El nico cambio significativo es que el AND NOT cambia por ADN.

NEMNICO

MODIF.

TIPO DATOS

LD

VARIADO

Cargue el valor ledo

ST

VARIADO

Almacene el resultado en la locacin

S,R

DESCRIPCIN

BOOLEANO

Set o Reset el valor actual(flip-flop)

AND, &

N, (

BOOLEANO

AND Booleana

OR

N, (

BOOLEANO

OR Booleana

XOR

N, (

BOOLEANO

OR Exclusiva Booleana

ADD

VARIADO

Suma

SUB

VARIADO

Sustraccin

MUL

VARIADO

Multiplicacin

DIV

VARIADO

Divisin

GT

VARIADO

Mayor que (>)

GE

VARIADO

Mayor o igual que (>=)

EQ

VARIADO

Igual que(=)

EN

VARIADO

Distinto que (<>)

LE

VARIADO

Menor que (<)

LT

VARIADO

Menor o igual que (<=)

JMP

C, N

ETIQUETA

Salto a la direccin

CAL

C, N

NOMBRE

Llamada a subrutina

RET

C, N

Retorno subrutina.
Leer del stack

Tabla 21 Operadores y Nemnicos que establece el estndar IEC 1131.

DIAGRAMA ESCALERA

LISTA
LD

ST

LDN

ST

LD

AND

ST

LD

ANDN

ST

LD

OR

AND

ST

LD

LD

OR

ANB
ST

LD

OR

LD

OR

ANB
ST

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

Con el lenguaje lista de instrucciones tambin se pueden representar


instrucciones ms complejas como la que se muestra en la siguiente figura.

Fig. 109 Funcin compleja programada en Lista de Instrucciones.


En esta instruccin se suma el valor decimal 3 con el contenido del
acumulador del temporizador T4:0, y se almacena en la direccin de memoria N7.0
EJEMPLO DE APLICACIN:
a) Descripcin de la aplicacin.
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 atrs) 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
posicin 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.

Un sensor de proximidad que detecta la presencia de vehculos en la


zona de lavado.
Un pulsador de arranque del ciclo.
Una lmpara piloto para indicar ciclo en proceso.

Fig. 110 Puente de lavado.

b) Especificaciones funcionales.
Condiciones iniciales : El puente esta en la posicin trasera, y el rodillo
horizontal en su posicin alta. Hay un vehculo presente en el rea de lavado.
Cuando se llenan estas condiciones, se presiona el botn de marcha y
comienza el siguiente ciclo automtico.
Enciende la lmpara de proceso en marcha, y es seguida por una
temporizacin de 10 segundos.
El rodillo se mueve hacia abajo por un perodo 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 unsono con la activacin
del puente.
El avance del puente es detenido cuando toca el limit switch delantero,
y en ese momento se pone en reversa.

El movimiento de reversa y la rotacin de los rodillos es detenida al


tocar el limit switch posterior. Aqu tambin se contabiliza un vehculo
lavado.
c) Representacin en GRAFCET.

Fig. 111 Descripcin grafica del proceso.


d) Entradas / salidas al PLC.

ITEM

DIRECC.

ELEMENTO DE CONTROL
ENTRADAS

Presencia de Vehculo

I0,0

Sensor de proximidad inductivo

Arrancar Proceso

I0,1

Pulsador de arranque.

Parar proceso

I0,2

Pulsador de parada.

Puente adelante

I0,3

Interruptor de posicin

Puente atrs

I0,4

Interruptor de posicin

Rodillo arriba

I0,5

Interruptor de posicin
SALIDAS

Ciclo en marcha

O0,0

Lampara piloto

Bajar rodillo

O0,1

Contactor KM1

Subir rodillo

O0,2

Contactor KM2

Rotar rodillos

O0,3

Contactor KM3

Avance puente

O0,4

Contactor KM4

Retroceso puente

O0,5

Contactor KM5

VARIABLES INTERNAS
Temporizador arranque

T0

ON DELAY (10 seg)

Temp.bajar rodillo

T1

ON DELAY (5 seg)

Contador de lavadas.

C0

ASCENDENTE(9999)

Tabla 23 anlisis de entrada / salida del ejemplo del lavado de vehculos.

e) Conexin del PLC.


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

11
7

Fig. 112 Conexin del PLC.

f) Programa.

6.3 Grficos Funcionales de Secuencia(SFC, GRAFCET).

n sistema es combinacional cuando para cada combinacin de estado de


los elementos de entrada al sistema, existe una y slo uno combinacin de
estado de los elementos de salida. En forma distinta, un sistema es

secuencial cuando para una combinacin de estado de los elementos de entrada al


sistema, pueden existir ms de una combinacin de estado de los elementos de
salida; o bien cuando adems de considerar el estado actual de los elementos de
entrada y de salida, tambin se considera su estado anterior o la evolucin que
hayan tenido.
La mayora de los procesos funcionan secuencialmente pero con un solo
estado activo a la vez. Sin embargo, existen mquinas ms complejas que son
diseadas para realizar varias operaciones al mismo tiempo. Este ltimo tipo de
mquina 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 ms etapas que estn activas al mismo tiempo. Este ltimo
requerimiento puede lograse con tcnicas tales como los Grficos de Funciones
Secuenciales (SFC: Sequencial Function Charts), conocido tambin como el
estndar IEC 848, o sencillamente como GRAFCET (Grficos Funcionales de
Control de Etapas y Transiciones).
El GRAFCET es un mtodo mediante el cual se describe en forma grfica las
especificaciones de cualquier automatismo. Dentro de sus ventajas se encuentra que
permite la programacin directa desde el mismo grfico sin tener que traducirlo a
lenguaje de contactos o LADDER. Tambin permite hacer seguimiento etapa por
etapa dentro del automatismo, de forma que la localizacin de algn problema se
hace sistemtica y por lo tanto conduce al ahorro de tiempo.
El GRAFCET permite la representacin de los sistemas secuenciales
mediante la sucesin alternada de etapas y transiciones. Los elementos bsicos de
una carta GRAFCET tpica se muestran a continuacin.

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. Adems, las
etapas estn numeradas en forma ordenada de acuerdo al desarrollo del
automatismo.
a) Etapas iniciales.
Se activan al iniciar el GRAFCET.
Una vez iniciado, tienen el mismo tratamiento que otras etapas.

Un sistema debe tener como mnimo una etapa inicial.


Pueden existir varias etapas iniciales en procesos
concurrentes. b) Etapas normales.
Representan los estados estables del sistema.
Deben estar numeradas aunque no necesariamente en forma correlativa.
No puede haber dos etapas con el mismo nmero.
Durante la evolucin del GRAFCET, pueden estar activas o inactivas.
Pueden o no contener acciones asociadas.
TRANSICIONES: Toda transicin tiene una condicin o condiciones lgicas que son
las que van marcando la evolucin del sistema. Una transicin 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 transicin, se cumplen
las condiciones lgicas en ella impuesta.

a.b = 0 o 1

10

a.b = 0

10

a.b=1

10

a.b=0 o 1

10

: Etapa activa

Fig. 114 Ejemplo de evolucin del GRAFCET.

Validar la transicin implica un cambio en las etapas activas del GRAFCET. Al


pasar una transicin, el sistema deja de estar en una etapa e inmediatamente va a la
siguiente.

En el GRAFCET:
Las transiciones se representan con un pequeo segmento horizontal
que corta la lnea de enlace entre dos o ms etapas.
Son etapas de entrada a una transicin, todas las que conducen a ella.
Son etapas de salida a una transicin, todas las que se activan una vez se
ha superado la transicin.
La condicin o condiciones que deben superarse para poder pasar una transicin
reciben el nombre de receptividades. Una transicin puede poseer:
Una receptividad simple o nica.
Una funcin Booleana.
Una receptividad correspondiente a un temporizador o a un contador.
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: Estn asociadas a las etapas del GRAFCET y son las
normalmente modifican el estado de algunos elementos de salida del sistema.

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
rectngulo donde se representa la accin, hay un campo de entrada para las
condiciones.

Ventilador

Fig. 116 Acciones condicionadas.


El estndar IEC 848 propone las siguientes representaciones para las
acciones asociadas condicionadas:

Accin condicionada

Accin retardada

Accin limitada en el tiempo

Impulso

Accin mejorada

Tabla 25 Modificacin de las acciones.


LNEAS DE ENLACE: Son lneas verticales u horizontales que unen con una
direccin significativa, las distintas etapas con las transiciones, y las transiciones con
las etapas.

6.3.1 Reglas para construccin del GRAFCET.


a) El

diagrama

debe

dibujarse

en

sucesin

alternada

de

etapas

transiciones. En ese sentido no puede haber ni dos etapas ni dos


transiciones seguidas.

b) El GRAFCET es de secuencia nica cuando en el diagrama slo hay una


rama. El conjunto de etapas se irn activando consecutivamente una a la vez,
despus de validarse las recepciones asociadas a las transiciones.

Fig. 117 GRAFCET de secuencia nica.


c) El GRAFCET es de Bifurcacin u OR cuando a la salida de una etapa hay
una seleccin de secuencias. En este punto, el flujo seguir por una sola de
ellas. Aunque no es necesario que las diferentes secuencias posean igual
nmero de etapas y transiciones, lo que si es conveniente es que sean
excluyentes entre si.

Fig. 118 GRAFCET tipo OR.

d) El GRAFCET es de Concurrencia o AND cuando a la salida de una


transicin, el flujo debe evolucionar de forma simultanea por dos o mas ramas.
No es necesario que las secuencias en paralelo contengan igual nmero 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 evolucin.

Fig. 119 GRAFCET tipo Paralelo


e) Una modalidad de los puntos de

bifurcacin lo constituyen los saltos de

etapas. Esta modalidad da la posibilidad de que se ejecute o no una


secuencia completa, o de que la evolucin del flujo siga a partir de la etapa
indicada en el salto.

Fig. 120 Saltos en cartas GRAFCET.

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 ms secuencias independientes que
funciones concurrentemente evolucionando cada una por separado y a su
ritmo segn se validen sus transiciones. Aunque estas secuencias no se tocan
en el grfico de flujo, se pueden interrelacionar a travs de sus variables de
estado.

Fig. 121 Representacin de procesos concurrentes.

6.3.2 Ejemplo de aplicacin del GRAFCET en la automatizacin de procesos.


a) Descripcin de la aplicacin.
Se trata de un sistema de respaldo de energa formado por:
2 generadores G1 y G2 que estarn en STAND-BY esperando su turno
para respalda el sistema de suministro en caso de falla de la lnea
principal.
3 contactores para Conectar / Desconectar las fuentes, los cuales
poseen contactos auxiliares para indicar STATUS.
3 rels de mnima tensin para supervisar la operacin de cada fuente.

Fig. 122 Esquemtico del sistema de respaldo de energa.


b) Especificacin funcional.
Condiciones iniciales: La lnea de suministro principal debe estar OK, con G1 y
G2 apagados. En consecuencia KM0 debe estar cerrado y KM1 junto a KM2
abiertos.

Al fallar la lnea principal (validada por un retardo de 1 segundos despus que


LV0 se activa), el sistema arrancar el generador de turno (G1 y G2 deben
alternar su funcionamiento), entonces abrir el contactor de lnea 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 lnea (validada por un retardo de 5 segundos), el sistema debe
realizar la retransferencia hacia la lnea 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 travs 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 Descripcin funcional a travs de un esquema GRAFCET.

c) Anlisis de entrada / salida, y variables internas.


ITEM

DIREC

ELEMENTO DE CONTROL

C.
ENTRADAS
Voltaje en la lnea OK

I0,0

Rel mnima tensin LV0 (NA)

Voltaje en G1 OK

I0,1

Rel mnima tensin LV1 (NC)

Voltaje en G2 OK

I0,2

Rel mnima tensin LV2 (NC)

Contactor de lnea cerrado

I0,3

Contacto auxiliar NA en KM0 (13-14)

Contactor G1 cerrado

I0,4

Contacto auxiliar NA en KM1 (13-14)

Contactor G2 cerrado

I0,5

Contacto auxiliar NA en KM2 (13-14)

Mantenimiento G1 OK

I0,6

Selector con llave S1 (NA)

Mantenimiento G2 OK

I0,7

Selector con llave S2 (NA)


SALIDAS

Conectar/desconectar lnea

O0,0

Bobina contactor KM0

Conectar/desconectar G1

O0,1

Bobina contactor KM1

Conectar/desconectar G2

O0,2

Bobina contactor KM2

Mantenimiento G1

O0,4

Luz piloto LP1

Mantenimiento G2

O0,5

Luz piloto LP2

VARIABLES INTERNAS
Tiempo falla lnea

T0

ON DELAY (1 seg)

Tiempo retorno lnea

T1

ON DELAY (5 seg)

Tiempo enfriamiento G1

T2

OFF DELAY (10 min)

Tiempo enfriamiento G2

T3

OFF DELAY (10 min)

Funcionamiento G1

T4

ON DELAY (60 min)

Horas G1

C1

ASCENDENTE(200)

Funcionamiento G2

T5

ON DELAY (60 min)

Horas G2

C2

ASCENDENTE(200)

Alternador G1 G2

SC0

PASO a PASO (2 pasos)

Tabla 26 Anlisis de entrada / salida del sistema de respaldo.

d) Conexin de entradas / Salidas al PLC.

Fig. 124 Conexin del PLC para el sistema de transferencia.

e) Programa.

6.4 Programacin con texto estructurado.

s un lenguaje de programacin similar al C, al Pascal, al BASIC


estructurado,

etc.

Formando

parte

del

estndar

IEC

1131,

sus

caractersticas 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 continuacin:
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:
DECLARACIN

DESCRIPCIN

VAR

Declaracin general de variables.

VAR_INPUT

Declaracin de variables de entradas a una funcin.

VAR_OUTPUT

Declaracin de variables de salida de una funcin.

VAR_IN_OUT

Declara variables de entrada / salida de una funcin.

VAR_EXTERNAL
VAR_GLOBAL

Declaracin de variable global.

VAR_ACCESS
RETAIN

Variable memorizada ante un corte de energia.

CONSTANT

Valor que no cambia.


Tabla 27 Declaracin de variables.

d) Las instrucciones pueden usar indistintamente maysculas o minsculas.


e) Las instrucciones pueden ser concatenadas o anidadas.
f) Los comentarios deben estar en lneas que comienzan con ;;.
g) El sistema numrico corresponde al siguiente:

Tipo de Nmero

Ejemplos

Enteros

-100, 0, 100

Reales

-100.0, 0.0, 100.0

Exponentes

-1.0E-2, 0.0E0, 1.0E2

Binarios

2#111111111

Octales

8#123, 8#777, 8#14

Hexadecimal

16#FF, 16#ff, 16#9a, 16#01

Booleano

0, FALSE, TRUE

Tabla 28 Sistema numrico.

h) Las cadenas de caracteres usables se muestran a continuacin:


Ejemplos

Descripcin

Cadena vacia.

, a, $, $$

Un espacio, un carcter, una comilla, smbolo


$(dlar)

$R$L, $r$l,$0D$0A Produce la combinacin ASCII <CR>, <LF>


$P, $p

Avance pgina.

$T, 4t

Tabulador <TAB>
Tabla 29 Cadenas de caracteres vlidos.

i) Las bases de tiempo tpicas se muestran a continuacin:

Valores de tiempo

Ejemplos

2.5 ms

T#25ms, T#25.0ms, TIME#25.0ms, T#-25ms,


t#25ms

5.5 horas

TIME#5.3h, T#5.3h, T#5h_30m, T#5h30m

3 das,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.

Descripcin

Ejemplos

Fechas

DATE#1996-12-25, D#1996-12-25

Hora

TIME_OF_DAY#12:42:50.92, TOD#12:42:50.92

Fecha y hora DATE_AND_TIME#1996-12-25-12:42:50.92,


12:42:50.92

DT#1996-12-25-

Tabla 31 Variables tipo calendario.


k) Funciones matemticas bsicas.

Funcin
:=

+
/

Descripcin
Asigna una variable.
Suma
Sustraccin.
Divisin.

Multiplicacin.

MOD(A,B)

Mdulo. Provee el entero resultate de dividir A/B.

SQR(A)

Raiz cuadrada.

FRD(A)

Convertir de BCD a Decimal.

TOD(A)

Convertir de Decimal a BCD.

NEG(A)

Cambiar de signo +/- .

LN(A)

Logaritmo natural.

LOG(A)

Logaritmo base 10.

DEG(A)

Convertir de radianes a grados.

RAD(A)

Convertir de grados a radianes.

SIN(A)

Seno.

COS(A)

Coseno

TAN(A)

Tangente.

ASN(A)

Arcoseno

ACS(A)

Arcocoseno.

ATN(A)

Arcotangente.

XPY(A,B)
A**B

A elevado a la B
A elevado a la B
Tabla 32 Funciones matemticas.

l) Funciones lgicas de comparacin.


Funcin
>

>=
=
<=

Descripcin
Mayor que.
Mayor o igual que.
Igual que.
Menor o igual que.

<

Menor que.

<>

Diferente de.
Tabla 33 Funciones lgicas de comparacin.

m) Funciones de lgica Booleana.

Funcin
AND(A,B)

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

Descripcin
Y lgica.
O lgica
O exclusiva
Negacin o inversin lgica
Negacin o inversin lgica
Tabla 34 Funciones lgicas BOOLANAS.

n) Estructuras de ejecucin y lazos.


Estructura

Descripcin

IF-THEN-ELSIF-ELSE-END_IF;
CASE-valor:-ELSE-END_CASE;
FOR-TO-BY-DO-END_FOR;
WHILE-DO-END_WHILE;

Ejecuta condicionalmente.
Ejecuta selectivamente.
Ejecuta cierto nmero de lazos.
Ejecuta lazo mientras cumpla condicin.

Tabla 35 Estructuras de ejecucin y lazos.


o) Instrucciones especiales.
Instruccin
RETAIN()
IIN();
EXIT;

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

EMPTY

Tabla 36 Instrucciones especiales.

En el siguiente ejemplo, se acepta una entrada en BCD proveniente de la


direccin (I:000) y se usa para cambiar el tiempo de retardo de un temporizado al
trabajo que en combinacin 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;

6.5 Programacin con bloques funcionales.

ste es un procedimiento de programacin que hace resemblanza de los


diagramas de bloques. Al formar parte del estndar IEC 1131, cuenta con
caractersticas tpicas como:

a) Existen diferentes tipos de datos en las lneas de conexin.

Fig. 125 Ejemplo de programacin con bloques funcionales.

b) Las entradas y las salidas se pueden negar mediante la adicin de un bloque


inversor.

Fig. 126 Bloques de negacin.

c) Las funciones en los diagramas estn basadas en otras funciones disponibles.


Las entradas a una funcin van por la izquierda, mientras que la salida
emerge por la derecha.

Texto estructurado

Equivalente bloques funcionales

O:=ADD(A,B)

Fig. 127 Ejemplo de equivalencia entre texto estructurado y bloques funcionales.


d) Algunas funciones pueden poseer un nmero variables de argumentos de
entrada.
Texto estructurado

Equivalente bloques funcionales

O:=LIM(MN:=A, IN:=B, MX:=C)

O:=LIM(MN:=A, IN:=B)

Fig. 128 Funciones de tres argumentos.


e) Se pueden desarrollar bloques funcin usando texto estructurado, LADDER u
otros lenguajes de programacin.
Texto estructurado

Equivalente bloques
funcionales

FUNCTION_BLOCK DIVIDE
VAR_INPUT
A: INT;
B: INT;
END_VAR
VAR_OUTPUT
C: INT;
END_VAR
IF B <> 0 THEN
C := A / B;
ELSE
C:= 0;
END_IF;
END_FUNCTION_BLOCK
Fig. 129 Desarrollos de bloques funcionales.

6.6 Equipos para la programacin.

xisten cuatro formas o equipos para la programacin, configuracin y


explotacin de

los

PLCs:

Los

equipos

integrados,

las

consolas

BOOLEANAS porttiles o HAND HELD, los terminales de programacin

grfica y los PCs + Software especial.

Fig. 130 Equipos integrados.

Fig. 131 Hand Held.

Fig. 132 Terminal de programacin grfica.

Fig. 133 Programacin mediante PCs + Software especializado.

Captulo

COMUNICACIONES.
7.1 Comunicacin RS-232 (Hardware).

a comunicacin a travs de un puerto de comunicaciones RS-232 es el


mtodo ms popular para la comunicacin de los PLCs con dispositivos
externos. Este es un mtodo de comunicacin asincrnica que usa el

sistema binario (1's y 0's) para transmitir los datos en un formato ASCII(American
Standard Code for Information Interchange). Este cdigo traduce el cdigo humano
(letras / nmeros) a un cdigo legible por las computadoras(1's y 0's). La transmisin
y recepcin de los datos se hace a travs del puerto serial de los PLCs. Este puerto
trabaja enviando y recibiendo seales de voltaje. Un voltaje positivo se conoce
como una MARCA, mientras que un voltaje negativo es un ESPACIO.
Tpicamente 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 algn pin en on (ALTO) mientras
pone algn otro en off (BAJO). Cada uno de estos pines esta dedicado a un
propsito especfico. El puerto serial viene en dos presentaciones: un tipo de 25
pines y otro de 9 pines. Los pines y sus propsitos se muestran a continuacin. (esta
tabla asume que el equipo es un DTE).

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

14
2

CAPITULO 7.

COMUNICACIONES.

9-PIN 25-PIN PROPSITO


1

Aterramiento de la carcasa

Recepcin de datos (RD: Receive data)

Transmisin de datos (TD: Transmit data)

20

Terminal listo (DTR: data terminal ready)

Referencia de la seal

Equipo OK (DSR: data set ready)

Listo para transmitir (RTS: request to send)

Listo para recibir (CTS: clear to send)

22

Indicador de tono (RI: ring indicator) *Slo para MODEMs*


Tabla 37 Tabla asignacin de pines del puerto RS-232.

Aterramiento- Este pin debe ser conectado internamente al chasis del


dispositivo.
Recepcin de datos- este pin es por entra los datos provenientes de un
dispositivo externo.
Transmisin 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 seal- Ya que los datos son enviados como voltajes
positivos o como voltajes negativos, este pin sirve como referencia a ambas
seales.
Equipo OK- Usualmente los dispositivos externos mantienen este pin
permanentemente en 0 y el PLC lo usa bsicamente para determinar si el
dispositivo externo esta encendido y listo.

Listo para transmitir- este es parte de la sincronizacin 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 enva los datos.
Listo para el envo- Esta es la otra mita de la sincronizacin 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 pasara si tanto el PLC como el dispositivo externo son DTE o si ambos son
DCE? No podrn comunicarse uno con el otro.
La figura siguiente muestra porque 2 dispositivos del mismo tipo no pueden
comunicarse entre s.

Fig.134 Conexin incorrecta.


Ntese que en la figura de arriba la lnea de recepcin de datos (pin 2) del
primer dispositivo esta conectada con la lnea de recepcin de datos del segundo
dispositivo. Con la lnea de transmisin de datos pasa algo similar excepto que es
para la transmisin sobre el pin 3.La solucin a este problema es usar una conexin
tipo null-modem como las mostrada a continuacin.

Fig. 135 Conexin Null-Modem.

Como resumen, considere este ejemplo donde ambos dispositivos estn


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 enve datos. El PLC
enva datos usando su pin TD terminal y el dispositivo externo la recibe por su pin
RD. Algunos datos son enviados y recibidos. Despus de un tiempo, El dispositivo
externo no puede procesar los datos tan rpidamente, y por eso pone a 0 su pin CTS
y el PLC congela el envo de datos. El dispositivo externo se pone al corriente y
entonces pone nuevamente a 1 su pin CTS . El PLC reanuda el envo 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.

7.2 Comunicacin RS-232 (Software).


ASCII es un cdigo de traduccin de lo entendible por humanos a lo
entendible por computadoras (cada letra o nmero es convertido en 1's y 0's).
7

Su cdigo de 7 bits permite codificar 128 caracteres (2 = 128). La tabla


siguiente muestra la representacin ASCII hexadecimal de los 128 smbolos 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 ms significantes
0

3 4

space

0 @

1 A

"

2 B

3 C

4 D

5 E

&

6 F

'

7 G

8 H

9 I

A LF

< L

D CR

= M

> N

? O

0
1

XON

STX

ETX

XOFF

4
5
Bits Menos
significantes

NAK
ACK

Tabla38 Tabla smbolos ASCII.

Bit de inicio- En el RS-232 lo primero que se enva es llamado bit de inicio.


Este bit de inicio (inventado durante la 1

era

guerra mundial por Kleinschmidt)

es un bit de sincronizacin adicionada justamente antes de enviar cada


carcter. Este es considerado un ESPACIO, un voltaje negativo o un 0.
Bit de parada- Es el ltimo bit que se enva despus de cada carcter (fin de
carcter). Es considerado como una MARCA, Voltaje positivo o un 1.
Bit de paridad- Ya que muchos PLC y dispositivos externos estn orientados
al byte (8 bits = 1byte), parece mejor manejar los datos como un byte. Aunque
ASCII es un cdigo de 7 bits no es comn transmitirlo de esa manera.
Tpicamente se usa un octavo bit de paridad para el chequeo de errores. Este
mtodo de chequeo de errores recibe su nombre de la idea matemtica de la
paridad. En trminos simples, todos los caracteres tendrn una cantidad par
de 1s, o una cantidad impar de 1s. De aqu que las formas comunes de
paridad sean: Par, Impar y ninguna. Considere este ejemplo:
enviar el carcter "E" (45h en Hexadecimal o 1000101b en Binario)
Paridad Ninguna: Como el bit de paridad es siempre 0, entonces se enva
10001010.
Paridad par: Se debe tener una cantidad par de 1's. Como el carcter original
tiene 3 1s (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 carcter
original tiene 3 1s (1000101), osea una cantidad impar, entonces el bit de
paridad a adicionar debe ser 0 (10001010).
Durante la comunicacin el dispositivo que transmite calcula el bit de paridad y
lo enva. Por su parte el receptor calcula tambin la paridad para el carcter
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 mtodo de chequeo de paridad no es muy popular. Esto se debe a que el
mismo es efectivo slo la mitad de las veces, ya que el chequeo de la paridad
puede slo detectar errores que afectan una cantidad impar de bits. Si el error

afecto a 2, 4 o 6 bits el mtodo es intil. Tpicamente los errores son causados


por el ruido que viene en rfagas y que difcilmente afecta a un solo bit. De
aqu que sea ms popular usar el mtodo 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 tpicamente 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 carcter E
(45h=100 0101b) con paridad par, salen por el puerto serial.

Fig. 36 Tren de bits correspondiente al carcter E


Otra importante caracterstica que algunas veces es usada para la
sincronizacin entre dispositivos es el control de flujo, el cual se usa para asegurar
que ambos dispositivos estn listos para enviar / recibir datos. El ms popular
control de flujo de caracteres se conoce como XON/XOFF. Simplemente cuando el
receptor desea que el transmisor haga una pausa, l enva el carcter XOFF.
Cuando el receptor desea recibir datos otra vez, l enva al transmisor el carcter
XON.
Una ltima caracterstica son los delimitadores, los cuales se agregan al final
del mensaje para indicar al receptor que procese los datos que l ha recibido. El ms
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

buffer que ya estn listos.(El buffer es la memoria donde se guardan temporalmente


los datos que se estn recibiendo).
Para la transmisin / recepcin 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 continuacin. Despus que todos los datos han sido
enviados, un carcter ETX es enviado.
Finalmente,

poco

menos

usual,

pero tambin se usa un par ACK/NAK

(acknowledge). Esencialmente , el transmisor enva sus datos y el receptor debe


enviar como respuesta un carcter ACK para indicar que recibi sin errores, o un
carcter NAK si la recepcin tuvo errores. En el ltimo caso el transmisor debe
reenviar los datos.

7.3 Usando RS-232 dentro de la programacin escalera.

lgunos PLC incluyen capacidad de comunicacin RS-232 en el procesador


principal, otros usan el puerto de programacin para este fin, y un tercer
grupo requiere que se le instale un mdulo 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 visin y robotizados, etc.
Para comunicarse va 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 almacenarn los datos recibidos de los
dispositivos externos?
Cmo 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 comunicacin con dispositivos externos slo hay
que escoger en la memoria disponible un rea de trabajo, y seleccionar unos rels
internos para enviar y recibir datos. Pero antes de realizar esto, considrese las
siguientes definiciones.
Buffer- Es una locacin 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 estn aguardando para ser enviado va 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
estn relacionados entre s para lograr un significado til. "43770" tambin es
una cadena aunque por ahora carezca de sentido alguno. Sin embargo la

cadena anterior podra ser un comando que indique a un robot que enve su
posicin actual.
Concatenar- Simplemente significa combinar 2 cadenas entre s para lograr
una sola. Por ejemplo se concatena lser y jet se obtendra la cadena nica
laserjet.
Ahora bien, los pasos tpicos a seguir para lograr establecer la comunicacin se dan
a continuacin.
1. Se debe asignar por ejemplo las locaciones de memoria DM100 hasta DM102
para que sean el lugar donde se pondrn 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 transmisin. 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. Ntese nuevamente que muchos
PLCs cuentan con rels especiales para ejecutar lo mencionado.
En el siguiente ejemplo se enviar la cadena "alr" por el puerto serial del PLC
hacia una interfase hombre-mquina 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 utilizarn las


instrucciones LDA o MOV. Posteriormente, se activara el rel de envo cuando el
sensor de temperatura (entrada 0000) se ponga en alto. El diagrama escalera
resultante se muestra a continuacin.

Fig.37 Envo de una cadena de caracteres.

Algunos PLCs pueden no tener rels internos dedicados al envi de datos a


trabes de puerto RS-232, y en consecuencia se deber asignar manualmente por
configuracin. Tambin, 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 comnmente como AWT (ASCII Write) o RS
(Request to Send).

CONCLUSIN

os Controladores Lgicos Programables o PLCs son elementos de control de


estado slido que si bien su origen fue en las lneas de produccin de la
industria automotriz, hoy se encuentran diseminados en muy diversas

aplicaciones: desde el simple control local de una mquina o proceso hasta las ms
avanzadas operaciones de control distribuido. Su operacin no slo se limita a ciclos
mono tarea sino que pueden ejecutar tareas concurrentes, tareas rpidas activadas
por eventos, sub tareas, etc. La comunicacin con el mundo exterior la logra
principalmente con sus interfases de entrada / salida, siendo la forma ms 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 caracterstica que permite a los usuarios crear
aplicaciones de control imposibles de realizar con los viejos sistemas a rels,
adems de que les permite la fcil reprogramacin de los cambios que surjan en la
lgica de control. Para lograr esta versatilidad de programacin de la lgica de
control, los PLCs disponen de varios lenguajes mediante el cual se pueden crear las
aplicaciones en cuestin, pero de ellos el de ms amplio uso es el lenguaje a
contactos o diagrama escalera ya que le es el ms familiar a los profesionales que
estn envuelto en las operaciones con PLCs.
Las herramientas de comunicacin integrada a los PLCs no slo mejora la
posibilidad de explotacin de los sistemas de control, sino que adems abre sus
aplicaciones hacia los sistemas integrados de manufactura y produccin tales como:
CIM, CAM, etc.
Finalmente, todo lo relacionado a los Controladores Lgicos Programables o
PLCs, esta reunido bajo el estndar IEC-1131.

BIBLIOGRAFA

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. Catlogo, Febrero 1998.
5. Micro autmata TSX 17.Manual de Instalacin: 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.

Programacin

Telemecanique. Manual 1989.

PL7-1.

Lenguaje

Booleano.

Potrebbero piacerti anche