Você está na página 1de 202

REPUBLICA BOLIVARIANA DE VENEZUELA

MINISTERIO DE EDUCACION SUPERIOR


INSTITUTO UNIVERSITARIO DE TECNOLOGIA
"ALONSO GAMERO"
CORO ESTADO FALCON.

CONTROLADORES LGICOS PROGRAMABLES


(PLC) Y SU APLICACIN EN PROCESOS
INDUSTRIALES.

Ing. VISTRIMIRO HIDALGO.


C.I: 4.886.465

CORO, ENERO DEL 2005.

CONTROLADORES LGICOS PROGRAMABLES


(PLC) Y SU APLICACIN EN PROCESOS
INDUSTRIALES.

REPUBLICA BOLIVARIANA DE VENEZUELA


MINISTERIO DE EDUCACION SUPERIOR
INSTITUTO UNIVERSITARIO DE TECNOLOGIA
"ALONSO GAMERO"
CORO ESTADO FALCON.

CONTROLADORES LGICOS PROGRAMABLES


(PLC) Y SU APLICACIN EN PROCESOS
INDUSTRIALES.

Trabajo

especial

durante

el

elaborado

ejercicio

licencia sabtica.

de

la

Presentado

ante el Consejo Directivo del


Instituto

Universitario

de

Tecnologa "Alonso Gamero".

Ing. VISTRIMIRO HIDALGO.


C.I: 4.886.465

CORO, ENERO DEL 2005.

DEDICATORIA
A DIOS, FUENTE DE MI VIDA E INSPIRACION
A MI MADRE
A MI ESPOSA
A MIS HIJOS, MIS FAROS EN ESTE MUNDO
A MIS ALUMNOS.

RESUMEN
Hidalgo H., Vistrimiro A. CONTROLADORES LGICOS PROGRAMABLES
(PLC) Y SU APLICACIN EN PROCESOS INDUSTRIALES.
El presente trabajo representa una exhaustiva investigacin bibliogrfica, que
aborda de una manera sencilla pero bastante generalizada los pormenores y
detalles de los controladores lgicos programables. Dado que estos
dispositivos son de una tecnologa reciente, se han desarrollado a capricho
de los fabricantes. Solo en los ltimos diez aos se han hecho intentos
serios para la estandarizacin de ellos. El trabajo se enfoca principalmente
en el anlisis de controladores programables de fabricantes influyentes en el
mbito mundial y el estudio de la norma IEC-61131, principalmente su parte
referente a la programacin de los PLC. Los ejemplos planteados siempre
estn desarrollados para aplicaciones industriales.

NDICE GENERAL
DEDICATORIA.
RESUMEN.
INTRODUCCIN. ...........................................................................................1
CAPTULO I: GENERALIDADES DE LOS PLC. ...........................................2
1.1.-INTRODUCCIN.
.........................................................................3
1.2.-RESEA HISTRICA DE LOS PLC. ..............................................6
1.3.-DEFINICIN DE PLC. .....................................................................9
1.4.-DESCRIPCIN GENERAL DEL PLC. .............................................11
1.4.1.-UNIDADES DE ENTRADA. .........................................................12
1.4.2.-UNIDADES DE SALIDA. ...............................................................13
1.4.3.-UNIDAD CENTRAL DE PROCESO (CPU). ................................15
1.4.4.-UNIDADES DE MEMORIA. .........................................................15
1.4.5.-EL PROGRAMA. ........................................................................16
1.4.6.-FUENTE DE ALIMENTACIN. ...................................................16
1.4.7.-PERIFRICOS. ...........................................................................17
1.5.-PRINCIPIO DE OPERACIN DE UN PLC. ....................................17
1.6.-CLASIFICACIN DE LOS PLC. ....................................................24
1.6.1-PLC COMPACTOS. .....................................................................25
1.6.2.-PLC MODULARES. .....................................................................27
1.7.-VENTAJAS Y DESVENTAJAS DEL PLC. .......................................31
CAPTULO II: ARQUITECTURA DE LOS PLC. ........................................34
2.1.-INTRODUCCIN. ...........................................................................35
2.2.-SISTEMA LOGO! DE SIEMENS. ....................................................36
2.3.-SISTEMA SIMATIC S7-200 DE SIEMENS. ..................................47
2.4.-SISTEMA PLC-5 / 1771 DE ALLEN BRADLEY. ...........................53
2.5.-SISTEMA QUANTUM AUTOMATION DE MODICON. ....................67
CAPTULO III: BASES LGICAS DE UN AUTOMATISMO Y NORMA
INTERNACIONAL PARA LOS CONTROLADORES
PROGRAMABLES. ..............................................................81
3.1.-INTRODUCCIN. ..........................................................................82
3.2.-FORMULACIN LGICA DE UN PROBLEMA DE CONTROL
ELCTRICO. ..................................................................................83
3.2.1.-FORMULACIN LGICA PARA UN ARRANCADOR DIRECTO. 93
3.2.2.-FORMULACIN LGICA DE UN INVERSOR DE GIRO. ...........98
3.2.3.-FORMULACIN LGICA DE UN ARRANQUE DE TRES
MOTORES EN SECUENCIA. .......................................................102
3.3.-ESTNDAR IEC-61131 PARA PLC. 104

CAPTULO IV: ELEMENTOS PARA PROGRAMACIN DE LOS PLC. ...107


4.1.-INTRODUCCIN. ..........................................................................108
4.2.-LENGUAJES ESTANDARIZADOS PARA PLC. ...........................109
4.3.-IEC-61131-3. ELEMENTOS COMUNES. ....................................109
4.4.-USO DE CARACTERES DE IMPRESIN. ..................................110
4.5.-REPRESENTACIN EXTERNA DE DATOS. ..............................111
4.6.-TIPOS DE DATOS. ........................................................................113
4.7.-VARIABLES. .................................................................................117
4.8.-UNIDADES DE ORGANIZACIN DE PROGRAMA (POU). .........124
4.8.1.-GENERALIDADES ACERCA DE FUNCIONES. .......................124
4.8.2.-FUNCIONES ESTNDAR. ........................................................135
4.8.3.-GENERALIDADES DE BLOQUES FUNCIONALES FB`s. ........144
4.8.4.-BLOQUES FUNCIONALES ESTNDAR. ..................................155
4.8.5.-GENERALIDADES ACERCA DE LOS PROGRAMAS. ..............160
CAPTULO V: DEFINICIN DE LOS LENGUAJES ESTNDAR DE LA
LA NORMA IEC-61131-3. .................................................162
5.1.-INTRODUCCIN. ..........................................................................163
5.2.-ELEMENTOS COMUNES DE LOS LENGUAJES TEXTUALES. ..164
5.3.-LENGUAJE DE LISTA DE INSTRUCCIONES (IL). ......................164
5.3.1.-INSTRUCCIONES EN LENGUAJE IL. ......................................165
5.3.2.-OPERADORES, MODIFICADORES Y OPERANDOS DEL
LENGUAJE IL. ..............................................................................165
5.3.3.-FUNCIONES Y BLOQUES FUNCIONALES EN EL
LENGUAJE IL. ..............................................................................168
5.4.-LENGUAJE DE TEXTO ESTRUCTURADO (ST). .........................171
5.4.1.-EXPRESIONES EN ST. ..............................................................171
5.4.2.-INSTRUCCIONES EN ST. .........................................................173
5.4.2.1.-INSTRUCCIONES DE ASIGNACIN. ...................................173
5.4.2.2.-INSTRUCCIONES DE CONTROL DE FUNCIONES Y
BLOQUES FUNCIONALES. .........................................................175
5.4.2.3.-INSTRUCCIONES DE SELECCIN. ......................................176
5.4.2.4.-INSTRUCCIONES DE ITERACIN. ........................................177
5.5.-ELEMENTOS COMUNES PARA LENGUAJES GRFICOS. ......179
5.5.1.-REPRESENTACIN DE BLOQUES Y LNEAS. ........................179
5.5.2.-DIRECCIN DEL FLUJO EN UNA RED. ..................................180
5.5.3.-EVALUACIONES DE REDES. ..................................................181
5.5.4.-ELEMENTOS DE CONTROL DE EJECUCIN. ........................184
5.6.-LENGUAJE DE DIAGRAMA DE CONTACTOS (LADDER
DIAGRAM LD). .............................................................................185
5.6.1.-REPRESENTACIN DE LNEAS DE FUERZA. ........................186
5.6.2.-ELEMENTOS DE ENLACE Y ESTADO. ....................................186
5.6.3.-CONTACTOS. ............................................................................187
5.6.4.-BOBINAS. ...................................................................................188
5.6.5.-FUNCIONES Y BLOQUES FUNCIONALES. .............................190

5.6.6.-ORDEN PARA EVALUACIN DE REDES EN LD. ....................190


5.7.-LENGUAJE DE BLOQUE FUNCIONALES (FUNCTION
BLOCK DIAGRAM FBD). 190
5.7.1.-COMBINACIN DE ELEMENTOS EN LENGUAJE FBD. ..........191
5.7.2.-ORDEN DE EVALUACIN DE REDES EN FBD. ......................191
BIBLIOGRAFA. .........................................................................................193

INTRODUCCIN
La tecnologa de automatizacin ha experimentado profundos cambios
en los ltimos treinta aos, con la introduccin de los avances en electrnica
y comunicaciones se ha logrado potenciar de una manera muy notable las
aplicaciones dentro de la industria, comercio, oficinas, hogar y muchas otras
reas.
Los microprocesadores de hoy permiten crear funciones de control
bastante complejas en espacios muy reducidos, lo cual ha hecho entrar en
obsolescencia los grandes tableros de control basados en rels.
Los

controladores

lgicos

programables

(PLC)

controles

programables se han desarrollado de una manera notable desde su primera


aparicin en el inicio de la dcada del sesenta del pasado milenio, sin
embargo, no es sino hasta principios de la dcada del noventa, cuando se
trata de estandarizar los esfuerzos de desarrollo de los PLC, mediante un
cuerpo de normas de la Comisin Electrotcnica Internacional (IEC).
El presente trabajo contiene importantes aportes acerca de la
tecnologa de los PLC. Se utiliza como fuentes primarias de informacin los
manuales de equipos modernos de fabricantes importantes en el mbito
mundial, adems los fundamentos establecidos en la norma internacional
IEC-61131, as como tambin algunos textos relacionados con el tema.
Adicionalmente se vuelca la experiencia del autor con los automatismos, con
lo cual se logra producir un texto que permite abordar el tema de los PLC de
una manera fcil.
El trabajo se presenta en cinco grandes captulos.
En el primer captulo trata sobre los aspectos generales de los PLC,
se hace una resea histrica de su evolucin, su definicin, componentes,
principio de operacin, clasificacin, ventajas y desventajas.

En el segundo captulo se estudia la arquitectura de los PLC, para tal


fin se describen al detalle cuatro sistemas de PLC de fabricantes importantes
y reconocidos mundialmente.
El captulo tres contiene las bases que permiten formular las
aplicaciones de automatismo de una manera lgica a travs del lgebra de
Bool, la cual es adecuada para la estructura de un PLC. Adicionalmente en
el captulo se hace la introduccin a la norma IEC-61131.
En el captulo cuatro se presentan los elementos de programacin de
los PLC de acuerdo a la norma IEC_-61131-3. Se detallan aspectos como:
los caracteres de impresin, los tipos de datos, la variables y las unidades de
organizacin de programas entre otros.
En el quinto captulo se detallan los aspectos particulares de los
lenguajes estandarizados por la norma IEC-6131-3, los cuales estn
agrupados en dos tipo texto o lenguajes textuales (lista de instrucciones IL y
texto estructurado ST) y dos tipo grfico o lenguajes grficos (diagrama de
contactos o de escalera LD y diagrama de bloques de funciones FBD).
En cada captulo presentan ejemplos ilustrativos de aplicaciones
orientadas al control elctrico y automatizacin industrial, para ayudar a
entender los principios explicados.
El texto tiene una edicin en formato Microsoft Word y en PDF. La
versin en PDF se incluye totalmente en un CD encartado con el texto. El
CD contiene adicionalmente, manuales de PLC de varios fabricantes, as
como el cuerpo de la norma IEC-61131-3.

CAPITULO I
GENERALIDADES SOBRE LOS PLC

CAPITULO I
GENERALIDADES SOBRE LOS PLC
1.1.-INTRODUCCIN.
El rpido desarrollo de la electrnica

ha introducido importantes

cambios en la concepcin del control elctrico tradicional. La configuracin


de enormes tableros con una gran cantidad

de cables de control y de

potencia, y una configuracin poco flexible, est siendo sustituida en forma


acelerada por pequeos tableros, con una versatilidad enorme, adems de
una gran capacidad de adaptacin a las necesidades de cambio del proceso
sujeto a control.
En el control elctrico tradicional las aplicaciones desarrolladas
consisten en una interconexin ordenada de todos los elementos
involucrados en el circuito de mando. El desarrollo de cualquier aplicacin
implica el uso de una gran cantidad de conductores que permitan enlazar
cada componente con otros y con las fuentes de alimentacin; y as poder
definir una accin de control particular. Esta forma de elaborar los sistemas
elctricos de control se ha denominado lgica cableada, ya que las funciones
lgicas presentes en el control, se han logrado uniendo a travs de
conductores los diferentes contactos NA y NC

de los dispositivos

componentes del mismo.


La lgica cableada exige una considerable cantidad de mano de obra
muy calificada a la hora de realizar los montajes y el mantenimiento de los
circuitos elctricos de control.

A medida que la complejidad de los

desarrollos se acenta con las mayores exigencias de control en los


procesos, los esquemas y arreglos tambin se hacen mucho ms complejos,
hacindolos muchas veces no factibles o demasiados costosos dentro de los
limites del control con lgica cableada.

Por otra parte los circuitos elctricos de control desarrollados con una
lgica cableada tienen una fuerte rigidez, esto significa que bajo cualquier
cambio

que

sea

necesario

abordar

en

el

proceso,

se

requerir

probablemente de una fuerte inversin para adaptar el circuito de control a


las nuevas necesidades. O en el caso ms extremo el reemplazo total del
sistema de control elctrico existente.
Con el nimo de eliminar o atenuar las limitaciones impuestas por la
lgica cableada y como consecuencia del desarrollo de las computadoras,
surge como una alternativa para el desarrollo de sistemas elctricos de
control; lo que se conoce como lgica programable.
En la concepcin de un sistema de control bajo lgica programable las
funciones lgicas son construidas y evaluadas en la memoria de un
computador, atendiendo por supuesto a un conjunto de instrucciones
previamente cargadas o programadas y al estado de los contactos NA y NC
de los elementos del control. Una consecuencia inmediata de esto es una
reduccin sustancial en la cantidad de cables de control que son usados para
el desarrollo de las aplicaciones de control. Adicionalmente se reducen la
cantidad de dispositivos tales como: rel de tiempo, contadores, rels
auxiliares, etctera, que son incorporados dentro de los sistemas
controladores.
Naturalmente un sistema controlador programable presenta una
caracterstica de aplicacin general, esto permite un alto grado de flexibilidad
y de adaptacin a los cambios en el proceso. Modificando las instrucciones
del programa y agregando algn dispositivo de control adicional, es posible
adaptar o cambiar totalmente las funciones del control original.
Los sistemas usados en el desarrollo de controles elctricos a travs
de lgica programable reciben el nombre de CONTROLADORES LGICOS
PROGRAMABLES

(PLC,

por

sus

siglas

en

ingls),

AUTMATAS

PROGRAMABLES o simplemente CONTROLADORES PROGRAMABLES.

Estos son fabricados por una gran cantidad de compaas en el mbito


mundial y cada una presenta formatos diferentes, no existiendo un nivel de
estandarizacin apropiado para un estudio riguroso.
En este captulo se aborda de una manera general el tema de los
controladores lgicos programables. Se hace una breve resea histrica del
origen y desarrollo de los aparatos, se presentan algunas definiciones de
PLC, se estudia su constitucin general, su principio de funcionamiento, las
principales formas de clasificarlos y las principales ventajas y desventajas de
su uso en los automatismos.

1.2.-RESEA HISTRICA DE LOS PLC.


A mediados de la dcada del sesenta la empresa General Motors,
muestra su preocupacin por reducir los altos costos que involucraban el
colocar y reemplazar los sistemas de control basados en rels, para el
control de las mquinas en sus lneas de ensamblaje. En conjunto con la
empresa Digital Corporation C, se propone el desarrollo de un sistema de
control que cumpliera con los siguientes requerimientos:

Uso de electrnica esttica.

De fcil mantenimiento.

Debe ser reutilizable.

Debe ser programable.

Adaptado al ambiente industrial.

El equipo de General Motors y Digital, desarrollan un sistema llamado


PDP-14, el cual era esencialmente un sistema de memoria cableada; el
programa se desarrollaba en un ordenador que suministraba el esquema de
cableado para construir la memoria.
En forma independiente la empresa Bedford Associates (Bedford, MA)
propuso algo llamado un Controlador Modular Digital (MODICON), el cual

trabajaba con memorias de ferrita, permitiendo una fcil programacin y


reutilizacin.

El equipo supera las exigencias de la General Motors y

rpidamente se difunde a otras industrias. El procesador de estos equipos


se compona de circuitos integrados, conectados a travs de cables.
En los aos setenta la tecnologa de los PLC era ya dominante en la
organizacin de los procesos, las mquinas de estado y los programas de
control basados en CPU.

En la primera mitad de la dcada se incorpora la

tecnologa de los microprocesadores lo que permite aumentar sus


prestaciones:

Incorporacin de elementos de interconexin hombre-maquina.

Manipulacin de datos.

Operaciones aritmticas.

Comunicacin con ordenador.

Su aplicacin aumenta las prestaciones de la maquina ya que con la


capacidad de tratamiento numrico el PLC puede desarrollar acciones
correctivas en su funcionamiento.
La segunda mitad de la dcada del setenta se mejora en forma
constante las prestaciones y el desarrollo de elementos especializados:

Incremento de la capacidad de memoria.

Posibilidad de entradas/salidas remotas (E/S o I/O).

Entradas/salidas analgicas y numricas. Control de posicin,

Mejoras en la programacin. (Instrucciones ms potentes).

Desarrollo de comunicaciones con perifricos y ordenador.

Sus aplicaciones se extienden al control de procesos, al poder


efectuar lazos de regulacin trabajando con dispositivos de instrumentacin.
En esta etapa el PLC desarrolla el control adaptativo, sin intervencin del
operador.

Otros campos de aplicacin son el posicionamiento mediante

entradas lectoras para codificadores y salidas de control de motores de paso


a paso, la generacin de informes de produccin y, adems, el empleo de

redes de comunicacin. Por otra parte la disponibilidad de entradas/salidas


remotas aporta una considerable reduccin de costos en grandes
instalaciones. Algunos de los modelos que tomaron gran relevancia en esta
dcada fueron los AMD 2901 y AMD 2903 de MODICON.
Para la dcada de los 80 se vio un intento de estandarizar las
comunicaciones con el Protocolo de Automatizacin de Manufactura (MAP,
por sus siglas en ingls). En esta poca se incorporan en gran medida los
avances tecnolgicos de los microprocesadores, aprovechando el impulso
que se tiene en los computadores personales:

Alta velocidad de respuesta.

Reduccin de tamao al integrarse ms las unidades de


entrada / salida.

Entrada / salida inteligentes (servo controladores, controles


PID).

Mayor capacidad de diagnstico de funcionamiento.

Capacidad de almacenaje de grandes cantidades de datos.

Mejoras en el lenguaje. (instrucciones de bloque, de clculo


matemtico etc.

Aparecen lenguajes de programacin alternativos. (De bloques,


GRAFCET, lenguajes de alto nivel).

Fue en estos aos en que surgi la necesidad de reducir


considerablemente el tamao del PLC y hacer de ellos receptores de
instrucciones de control programadas desde una computadora.
Los 90 han visto una reduccin gradual en la introduccin de nuevos
protocolos, y la modernizacin de las capas fsicas de algunos de los
protocolos ms populares que sobrevivan en los 1980. La ltima norma (IEC
61131-3) ha intentado unir los lenguajes de programacin bajo una norma
internacional. Se comercializan equipos pequeos y compactos que, junto

con la reduccin de los precios, ha hecho que el uso se extienda a todos los
sectores industriales.

1.3.-DEFINICIN DE PLC.
A continuacin se presentan varias definiciones de lo que es un
controlador lgico programable: IES Venacio Bravo; en su obra: Curso de
Autmatas Programables (PLC), define el PLC de la siguiente manera:
Circuito electrnico basado en microprocesador, usado en una gran
variedad de industrias, que nos permite controlar sistemas, procesos
mquinas. Contiene dos conjuntos, principales, de puntos de conexin
conocidos como entradas y salidas. El estado de las salidas, dependen del
estado de las entradas y la lgica del programa. La sigla PLC define sus
caractersticas principales: Controla una planta por medio de la lgica
definida en el programa de usuario, y es programable tantas veces como sea
necesario.
Fernando Castro y otros; en su monografa titulada Introduccin al
Autmata Programable, lo definen as: Sistema Industrial de Control
Automtico que trabaja bajo una secuencia almacenada en memoria, de
instrucciones lgicas,
Cristhian Beltrn P; en su obra Controladores Lgicos Programables,
PLC, define as: se entiende por Controlador Lgico Programable (PLC), o
Autmata Programable, a toda mquina electrnica diseada para controlar
en tiempo real y en medio industrial procesos secuenciales.
Albert Mayol i Badia; en su libro Autmatas Programables, aparece la
siguiente definicin:

El Autmata Programable Industrial es un equipo

electrnico, programable en lenguaje no informtico, diseado para controlar,


en tiempo real y en ambiente industrial, procesos secuenciales.

10

Andre Simon; en su obra titulada Electricidad Industrial Aplicada,


define as:

El autmata programable es un aparato electrnico cuyo

funcionamiento est definido por un programa.

A diferencia de los

calculadores, su programacin no requiere competencia en informtica. El


autmata programable realiza mandos de tipo lgico y secuencial en las
fbricas, es decir, cerca de las mquinas en un ambiente industrial.
En la presente obra se define el PLC de la siguiente manera: Es un
aparato electrnico diseado para realizar actividades de control automtico
de sistemas o mquinas en ambientes industriales, su operacin se basa en
microprocesadores, memorias, lenguajes especiales de programacin,
etctera, todos configurados en arreglos muy parecidos a los que poseen las
computadoras personales (PC). La interaccin con el sistema o mquina a
controlar se hace principalmente aunque no exclusivamente, a travs de
variables de entrada y salida lgicas.
Tambin se puede definir como una caja negra en la que existen
unos terminales de entrada a los que se conectaran pulsadores, finales de
carrera, fotoclulas, detectores, etctera; unos terminales de salida a los que
se conectaran bobinas de contactores, electro vlvulas, lmparas, de tal
forma que las actuaciones de estos ltimos estn en funcin de seales de
entrada que estn activadas en cada momento, segn el programa
almacenado.
Esto quiere decir que los elementos tradicionales rels auxiliares, rels
de enclavamiento, temporizadores, contadores..., son internos. La tarea del
usuario se reduce a realizar el programa, que no es mas que la relacin
entre las seales de entrada que se tienen que cumplir para activar cada
salida.

11

1.4.-DESCRIPCIN GENERAL DEL PLC.


La constitucin interna de un controlador lgico programable es
fundamentalmente la misma constitucin interna de un computador personal
(PC); la diferencia fundamental radica en la forma de intercambiar

la

informacin con el mundo exterior. En el caso del PC; la informacin llega al


centro de proceso del computador a travs de teclados, dispositivos tipo
mouse, discos magnticos, cmaras fotogrficas, scanner, etc., en el caso de
los PLC la informacin fluye desde el sistema o mquina industrial a travs
de unidades de acceso de datos conocidas simplemente como unidades de
entrada. La informacin procesada por el computador personal sale de este
por medio de monitores de video, impresoras graficas, discos magnticos,
etc., y las acciones de control o salidas del PLC se presentan en unidades
conocidas como unidades de salida.

En la figura 1.1 se muestra un

esquema general de un sistema industrial controlado a travs de un PLC,


donde se destacan las unidades de entrada y salida (E/S o I/O).
La informacin del estado del sistema llega a las unidades de entrada
del PLC a travs de los sensores o captadores, las seales provenientes de
estos

dispositivos

generalmente).

son

esencialmente

de

tipo

lgico

(aunque

no

La informacin que llega es procesada por medio de un

programa previamente cargado en el PLC y de ser necesario se ajustan las


unidades de salida, las acciones o variable de producidas por dichas
unidades, tambin son esencialmente del tipo lgico y actan sobre los
actuadores que controlan el sistema.
Se pueden identificar los siguientes elementos esenciales en un
controlador lgico programable:

Unidades de entrada.

Unidades de salida.

Unidad central de proceso (CPU)

Unidades de memoria.

12

Programa.

Fuente de alimentacin.

Perifricos.

Figura 1.1. Esquema de sistema controlado por PLC.


A continuacin se hace una breve descripcin de cada uno de los
elementos mencionados.

1.4.1.-UNIDADES DE ENTRADA.
Son circuitos electrnicos que permiten ingresar y supervisar el estado
de una variable del sistema a controlar dentro del PLC. Las variables que se
introducen al PLC son fundamentalmente de tipo digital, stas provienen por
lnea general de elementos de mando, auxiliares de mando, rels, etc., son
aparatos que cierran o abren contactos de acuerdo a la situacin del sistema

13

a monitorear.

Los terminales del dispositivo de supervisin o de

accionamiento son conectados al PLC en los terminales de las unidades de


entrada.

El controlador programable suministra una tensin a estos

dispositivos. Cada entrada puede tener dos estados: uno con tensin,
cuando el contacto est cerrado y el PLC lee un estado alto de la variable (1
lgico), cuando el contacto est abierto se lee un estado bajo (0 lgico). Esta
lgica puede tambin ser inversa.
Las

unidades

de

entrada

son

protegidas

contra

posibles

perturbaciones externas en la red de suministro y que pudieran afectar los


circuitos internos del PLC.

Esta proteccin se alcanza con circuitos

electrnicos opto-acoplados.
La cantidad de entradas del PLC es limitada de acuerdo a los
fabricantes y los modelos presentados. Se pueden conseguir en el mercado
controladores programables de cuatro entradas hasta cientos de entradas.
Existen PLC que pueden incorporar dispositivos de entrada con
seales analgicas, las cuales son convertidas a seales digitales antes de
ser procesadas.

1.4.2.-UNIDADES DE SALIDA.
Son circuitos electrnicos a travs de las cuales el controlador lgico
programable ordena las acciones de control sobre el sistema. Las variables
que salen del PLC son tambin de tipo lgico. Internamente el PLC abre o
cierra un contacto que permite energizar (1 lgico) o desenergizar (0 lgico)
un aparato de accionamiento; por ejemplo un contactor, una vlvula
solenoide, etc., que permitirn a su vez el arranque o paro de un motor
elctrico en el caso de un contactor o abrir o cerrar el paso de un fluido en el
caso de una vlvula solenoide.

14

Es importante destacar que las unidades de salida pueden ser


interpretadas como contactos elctricos controlados, por lo tanto pueden ser
energizados con corriente continua, as como tambin con corriente alterna e
inclusive se pueden combinar aparatos accionados con DC y AC en un
mismo PLC.
Las unidades de salida al igual que las de entrada tambin estn
protegidas contra perturbaciones de las redes elctricas de alimentacin,
usan circuitos opto-acoplados.
La potencia o la intensidad de corriente que puede manejar una salida
de un PLC es un parmetro muy importante a la hora de desarrollar cualquier
aplicacin, adicionalmente se debe considerar la velocidad con que es
cerrado o abierto el contacto elctrico controlado. Estos dos factores definen
tres tipos de tecnologas para las salidas de los PLC. A continuacin se
hacen comparaciones de los casos.
Salidas a rel; las cuales pueden manejar cantidades relativamente
altas de corriente, (por ejemplo 10 amp) tienen como desventaja que es lenta
debido al accionamiento electromecnico. Salidas a transistores manejan
corrientes bajas (por ejemplo 2 amp) pero son muy veloces en la
conmutacin. Por ltimo estn las salidas a triacs, las cuales presentan
cualidades de alta velocidad de conmutacin y manejo de alta corriente (por
ejemplo 10 amp). Existen muchas ventajas y desventajas en cada una de los
tipos de tecnologas empleadas en la configuracin de las salidas.

Un

desarrollo completo usando PLC debe abordar con detenimiento los


problemas de la seleccin adecuada del tipo de salida requerido.
La cantidad de salidas en un PLC es diversa; desde cuatro en los
minicontroladores hasta cerca de mil en los grandes sistemas.

15

1.4.3.-UNIDAD CENTRAL DE PROCESO (CPU).


Este es el cerebro del PLC al igual que en el computador. Es el centro
por donde fluye y se procesa la informacin del sistema a controlar. Esta
dividido en dos secciones o unidades: La unidad aritmtico-lgica que se
encarga de realizar las operaciones matemticas y lgicas y la unidad de
control que se encarga de dirigir todos los procesos involucrados. Se usan
microprocesadores integrados, as como tambin los microcontroladores con
capacidad de operar con palabras de 8, 16, 32, 64 y ms bits.

1.4.4.-UNIDADES DE MEMORIA.
Son los medios fsicos que permiten almacenar la informacin
requerida y generada durante el desarrollo del programa de control por parte
del PLC. La conformacin de la memoria del PLC es diferente a la de los
computadores personales.

La memoria en los computadores personales

esta conformada por la memoria tipo ROM (read only memory) que no es
voltil y de pequeo tamao. La memoria RAM(random acces memory) que
es voltil y de gran tamao (varios megabytes) y los perifricos de
almacenamiento (discos duros, diskets, cintas, discos pticos etc.).
En los PLC la memoria es ms diversificada dada las caractersticas y
funciones del equipo. Posee una pequea memoria ROM casi con funciones
similares a la de los computadores personales. Tambin posee una memoria
RAM utilizada con fines de procesamiento intermedio, similar a la de los
computadores personales pero de un tamao no muy grande, se podra
comparar con el tamao de la ROM.

El segmento ms importante de

memoria de los PLC es la memoria EPROM (electric program read only


memory).

Como su nombre le seala es una memoria programable

elctricamente y que es slo para lectura. Adems, no es voltil. Sobre sta

16

a se graban las instrucciones del

programa que controla el proceso o

sistema. Lo no voltil asegura que las instrucciones grabadas dentro del


PLC no se perdern al ocurrir un fallo en la energa elctrica.
El tamao de la memoria puede ser definido ya sea en cantidad de
bytes que pueden ser almacenados o en muchos casos por la cantidad de
instrucciones de programacin que pueden ser escritas.

1.4.5.-EL PROGRAMA.
El programa representa el conjunto de instrucciones grabadas en la
memoria del PLC y que constituye, el conjunto de operaciones necesarias
para gobernar o controlar el sistema.

Este conjunto de instrucciones

reemplaza las conexiones lgicas elctricas (lgica cableada) de un sistema


automtico, por una secuencia de ordenes escritas en un lenguaje apropiado
(lgica programada).

En el captulo III del trabajo se profundiza en los

procedimientos y lenguajes de programacin usados en el PLC.

1.4.6.-FUENTE DE ALIMENTACIN.
La mayora de los controladores lgicos programables modernos
vienen adaptados para operar en AC, sin embargo, existen versiones que
operan slo con DC como fuente de suministro. En el caso de operacin en
AC; el PLC incorpora una fuente de tensin de DC que alimenta sus circuitos
internos y en muchas aplicaciones los sensores que se conectan a las
unidades de entrada.
Algunos fabricantes presentan arreglos en los cuales el PLC puede
tener su propia fuente de DC o incorporar una externa. Esta flexibilidad la
motiva la reduccin de costos cuando se dispone en el sitio de aplicacin de
fuentes de DC apropiadas.

17

1.4.7.-PERIFRICOS.
Son los diferentes equipos que pueden ser conectados al PLC a travs
de interfases apropiadas.

Algunos son los siguientes:

computadoras,

programadores manuales, consolas especiales de programacin, monitores,


accesorios para conexin en red, etctera. Los equipos dan gran poder de
conexin al PLC, permitiendo su comunicacin a travs de redes industriales.

1.5.-PRINCIPIO DE OPERACIN DEL PLC.


Con el propsito de ilustrar la forma de operacin de la mayora de los
controladores lgicos programables, se desarrollan tres aplicaciones, usando
el sistema tradicional de control a travs de conexiones elctricas entre los
diferentes elementos, tales como: contactores, pulsadores, rels, etctera y
usando lgica programada con un PLC.
EJEMPLO No. 1.1: En la figura 1.2 se muestra un esquema para la
inversin de giro de un motor trifsico de corriente alterna. El cableado del
circuito de potencia y mando es tal que se puede hacer la seleccin del
sentido de giro a voluntad de un operador y se desarrollan sistemas de
seguridad que impiden el accionamiento simultneo de los dos contactores
de potencia, tambin se incorpora un rel de proteccin trmica contra
sobrecargas y la respectiva sealizacin.
Para implementar el mismo problema a travs de un PLC, se debe ver
el automatismo como un sistema de entradas y salidas o excitacin y
respuesta. Sobre esta forma de abordar el problema, se profundizar en el
captulo III. Por el momento basta con decir, que las entradas del sistema
son: los tres pulsadores (S1, S2 y So) y el rel trmico, y que las salidas son:
los dos contactores (C1 y C2) y las tres lmparas piloto (h1, h2 y h3).

18

Figura 1. 2. Circuito para inversin de giro de motor de AC


Las seales de entrada se conectan a las unidades de entrada del
PLC, como se muestra en la figura 1.3. Como se puede apreciar, el PLC
enva una seal de voltaje a los elementos sensores del sistema. Se ha
usado en el ejemplo una seal de 24 voltios de DC, pero los niveles de
tensin en PLC comerciales pueden ser de otros valores. Tambin se puede
apreciar que la seal proveniente de cada sensor se conecta a una sola
entrada del PLC, con lo que se tiene una direccin e identificacin nica de
cada sensor. Cuando en la entrada del PLC aparece la seal de 24 voltios,
se tiene un uno (1) lgico y cuando no est, se tiene un cero (0) lgico.
Los actuadores del sistema se conectan a las unidades de salida del
PLC, a cada actuador corresponde una unidad de salida. En este ejemplo
las salidas son contactos elctricos que al estar abiertos presentan un cero
(0) lgico y que al cerrarse presentan un uno (1) lgico.

Entonces la

energizacin o no de cada uno de los actuadores depende de; si la unidad de


salida asociada cierra o no su contacto.

19

Figura 1. 3. Inversor de giro con PLC.

La figura 1.4 muestra el circuito del sistema de control en forma


simplificada, ya que se ha omitido la parte de potencia.

Como puede

apreciarse las conexiones requeridas son relativamente sencillas y fciles de


implementar.

Figura 1. 4. Esquema simplificado de inversor de giro usando PLC.

20

Los sensores y los actuadores han sido conectados al PLC,


previamente se deben construir las relaciones lgicas que gobernarn el
sistema; esto es las relaciones entre variables de entrada (sensores) y
variables de salida (actuadores).

Se usan los principios de la lgica

matemtica para establecer en forma apropiada las relaciones del sistema.


Las relaciones lgicas del sistema son codificadas como un conjunto
de instrucciones a travs de un lenguaje adecuado (lista de instrucciones,
ecuaciones lgicas, diagramas de compuertas, diagramas de escalera,
grafcet, etctera). El usuario introduce este conjunto de instrucciones en el
PLC a travs de un programador manual que puede estar incorporado al
PLC, o por otro medio, como una computadora personal. Una vez cargado el
programa en el PLC, el sistema puede ponerse en marcha y funciona
exactamente igual que el circuito de lgica cableada de la figura 1.2.
La forma de funcionamiento interno

de un controlador lgico

programable depende del fabricante del PLC y hasta del modelo de una
misma marca. Slo en aplicaciones donde se requiere operaciones de gran
velocidad es importante conocer en detalle como el PLC se comporta y como
ejecuta las operaciones necesarias para llevar a cabo su funcin.
La mayora de los PLC opera sobre una memoria intermedia tipo RAM,
en la cual desarrollan las operaciones y almacenan los valores iniciales,
intermedios y finales de las variables de entrada y de salida.
Los PLC que usan memoria intermedia leen los valores de las
variables de entrada y de salida al momento de iniciar el programa, los
valores son almacenados en localidades de su memoria intermedia.
Seguidamente se van cargando y evaluando una por una las instrucciones
contenidas en el programa los resultados obtenidos se almacenan en las
memorias intermedias si se afecta o cambia el estado de una salida, dicho
cambio se refleja en la memoria pero no aun en la salida fsica propiamente
dicha.

De esta forma todos los cambios que involucran las funciones de

21

cada instruccin son almacenados en memoria. Al finalizar el programa las


salidas fsicas son ajustadas a

los valores que tienen las variables de

memoria relacionadas con cada salida.


El ciclo comienza nuevamente con la lectura del estado de las
variables de entrada y salida, repitiendo todo nuevamente. La duracin del
ciclo depende de la capacidad de la cpu y de la cantidad de instrucciones
que tiene el programa implementado.
EJEMPLO No. 1.2: En la figura 1.5 se muestra un esquema para
operar un motor trifsico con freno por contracorriente. Las variables de
entrada son los pulsadores So1, So2, S1 y el rel F1. Las variables de salida
son los contactores C1, C2 y los pilotos h1, h2, y h3.

Como se puede

apreciar la definicin de variables de entrada y de salida del problema son


idnticas a las definidas en el ejemplo 1.1, pero se ve a simple vista, que
ambos los sistemas de control, son muy diferentes.
Las conexiones de los actuadores y sensores al PLC se muestran en
la figura 1.6 y se aprecia que son exactamente iguales a las del ejemplo 1.1
mostrado en la figura 1.4. Es sistema de control incorpora un temporizador
con contactos al trabajo (C2t), pero al revisar las entradas del PLC no se
aprecia la conexin de este elemento. La razn es porque el PLC incorpora
dentro

de

sus

instrucciones

previamente

grabadas

temporizadores,

contadores, rels auxiliares y otros elementos comnmente usados en


sistemas de automatizacin. Estos elementos se incorporan dentro de la
estructura del programa que ejecuta el controlador lgico programable para
el sistema especfico.
Por lo tanto la diferencia entre los automatismos de los ejemplos 1.1 y
1.2 radica en el programa que ejecuta el PLC para cada uno de los sistemas.
El conjunto de instrucciones que se introducen al PLC, para cada sistema de
control, es radicalmente diferente.

22

Figura 1. 5. Accionamiento de un motor AC, con freno por


contracorriente

Figura 1. 6. Conexin del motor con freno al plc.

23

EJEMPLO 1.3: En la figura 1.7 se muestra un sistema automtico de


inversin de giro de una mquina para el mecanizado de materiales.

grandes rasgos el sistema funciona de la siguiente manera: Se puede iniciar


el sistema de giro a la izquierda o a la derecha. Suponiendo que se inicia
con giro a la derecha, la mquina se desplaza hasta llegar a la posicin del
final de carrera

S3. Se detiene y permanece en esa posicin por unos

segundos, luego inicia su recorrido hacia la izquierda, hasta alcanzar la


posicin del final de carrera S4. Se detiene y permanece all por unos
segundos, luego inicia su recorrido hacia la derecha, repitiendo el ciclo
indefinidamente hasta que el operador pulse el pulsador de parada So.

Figura 1.7. Sistema automtico para operar mquina de mecanizado


de materiales.
En la figura 1.8 se muestra el esquema de las conexiones del
automatismo descrito.

Se puede apreciar que, auque la complejidad del

24

mecanismo es mucho que la observada en el ejemplo 1.1, las conexiones en


el PLC apenas si sufrieron cambios para incluir en las unidades de entrada
los dos sensores de proximidad o finales de carrera S3 y S4.

Los

contactores auxiliares y los temporizadores requeridos por el sistema de


control formarn parte de las instrucciones de programacin que se incluyen
en el PLC.

Figura 1. 8. Conexiones del sistema de mecanizado al PLC.

Al igual que en los ejemplos anteriores el cambio principal radica en


construir un programa que satisfaga las relaciones entre las variables del
sistema.

1.6.-CLASIFICACIN DE LOS PLC.


Se estudia a continuacin dos formas generalizadas de clasificar los
controladores lgicos programables.

En primer lugar se clasifican de

acuerdo a la disposicin de los elementos que lo componen en:


compactos y

PLC modulares.

PLC

La segunda forma de clasificarlos es de

acuerdo al nmero de entradas/salidas (I/O) que posee: Equipos pequeos,

25

hasta aproximadamente 128 entrada/salidas.

Equipos medianos, hasta

aproximadamente 500 entradas/salidas. Equipos grandes con ms de 500


entradas/salidas.
Los

fabricantes

de

controladores

lgicos

programables,

han

desarrollado y comercializados productos que van desde 10 hasta miles de


entrada/ salidas.

1.6.1.-PLC COMPACTOS.
Son dispositivos en los cuales todas las unidades o elementos que
conforman el PLC, se encuentran en una sola estructura o caja.

La

programacin se hace usando uno o ms tipos de lenguaje y pueden ser


programados desde una computadora, programador manual o con teclas
especiales incorporadas en el mismo PLC.
Los PLC compactos son fabricados en tamaos pequeos, pero con
posibilidad de ampliacin, a travs de la conexin de unidades de
entrada/salida adicionales.

La mayora de los PLC

compactos posee

capacidad para comunicarse con otros PLC u otros dispositivos de control a


travs de una red apropiada. En la figura 1.9 se muestran algunos tipos de
PLC compactos de varios fabricantes.
Actualmente existes pequeos PLC que incorporan potentes funciones
de control, tales como: contadores, temporizadores, salidas y entradas
analgicas, puertos de comunicacin, etctera que los hacen apropiados
para el control de una gran cantidad de equipos y sistemas pequeos, tales
como:

sistemas de suministro de agua, portones elctricos, alarmas de

incendio, equipos hidroneumticos, etctera.

26

Sistema
MicroLogic
1000/1761 de Allen
Bradley.
Configuraciones
de 10, 16, 25 y 32

Serie
microautmatas y
Nanoautmatas
de Telemecanique

Serie EC de Hitachi
configuraciones de
20, 28, 40, y 60 E/S

Figura 1.9 Muestra de PLC compactos de comercializados por


fabricantes.

27

1.6.2.-PLC MODULARES.
Son aquellos cuyos componentes fundamentales estn divididos
conformando mdulos individuales, los cuales son ensamblados por el
usuario en un soporte o chasis, de acuerdo a sus necesidades y al potencial
del equipo.
La presentacin de mdulos tiene dos tendencias, conocidas como:
estructura americana y estructura europea.
En la estructura americana se tiene un bloque comn que contiene la
CPU, la memoria de usuario y la fuente de alimentacin, mientras que las
unidades de entrada/salida se encuentran en bloques o tarjetas separadas.
De esta manera se puede configurar el PLC a los requerimientos de entrada
y salida del sistema que se desea controlar.
La estructura europea presenta una mayor cantidad de mdulos, ya
que la CPU, la fuente, las ampliaciones de memoria, adems de las unidades
de entrada/salida, etctera, constituyen mdulos individuales conectados a
travs del bus externo del PLC. Tal grado de presentacin modular permite
una gran flexibilidad a la hora de desarrollar aplicaciones con los PLC.
Por lo general los PLC modulares se construyen en tamaos
medianos y grandes aunque algunos fabricantes construyen PLC modulares
pequeos.
La programacin de estos PLC suele hacerse a travs de
computadoras personales y en varios tipos de lenguaje.

El poder de

procesamiento es elevado y se incorporan una gran cantidad de funciones de


control dentro de la configuracin bsica.

En la figura 1.10 se muestran

algunos tipos de PLC modulares presentados por varios fabricantes.

28

Sistema MicroLogic 1500/1769 de Allen


Bradley. Maneja hasta 156 E/S.

Figura 1. 10 PLC modulares.

29

Sistema PLC-5/1771 de Allen Bradley.


(Maneja hasta 512 entradas y 3072 salidas)

Figura 1. 10. Continuacin...

30

Serie H de
Hitachi.
Expansible
hasta 4096 E/S.

Autmata TSX
107 de
Telemecanique.
Expansible
hasta 256 E/S.

Figura 1. 10 Continuacin...

31

1.7.-VENTAJAS Y DESVENTAJAS DEL PLC.


A continuacin se har una descripcin de las principales ventajas y
desventajas que tienen los PLC, como elementos de control de mquinas y
procesos.
Entre las principales ventajas destacan las siguientes:
a.- Menor tiempo empleado en la elaboracin de proyectos debido a lo
siguiente:

No es necesario elaborar el diagrama de funcional o de contactos.

No es requerido un proceso de anlisis de las ecuaciones lgicas


para su simplificacin, ya que el PLC posee por lo general
suficiente memoria.

La lista de materiales queda sensiblemente reducida, debido a que


muchos componentes son reemplazados por software del PLC.
Por lo tanto al elaborar el presupuesto se elimina parte del
problema que significa tener diferentes proveedores y diferentes
plazos de entrega.

b.- Se pueden introducir modificaciones y agregar elementos de


control adicionales en el sistema de mando, sin que ello provoque
necesariamente modificaciones en el cableado del circuito de control. Las
modificaciones se hacen en el programa del PLC.
c.- El espacio que ocupa el PLC es muy reducido en comparacin con
los grandes armarios de contactores usados en los automatismos
tradicionales a rel y contactores.
d.- Los costos de mano de obra para la instalacin de los PLC son
mucho menores que en los automatismos tradicionales.
e.- Economa en el mantenimiento, adems de incrementarse la
fiabilidad del sistema al ser eliminados una gran cantidad de contactos
mviles presentes en los automatismos tradicionales.

Las labores de

32

mantenimiento se resumen a revisar los elementos sensores y actuadores de


campo y que la ejecucin del programa dentro del PLC sea normal. Por lo
general el PLC es capaz de detectar y sealar el mal funcionamiento, tanto
de los sensores y actuadores como del mismo aparato.
f.- Es posible controlar varios equipos y procesos al mismo tiempo y
con el mismo equipo. Por ejemplo en una vivienda, se puede controlar el
sistema de suministro de agua, un portn automtico, el arranque del sistema
de aire acondicionado, etctera, todo con un solo PLC.
g.- Los tiempos de puesta en marcha de los equipos se reducen al
desaparecer prcticamente el cableado del sistema.
h.- El equipo tiene mltiples aplicaciones y si por alguna razn se debe
prescindir de una maquina controlado por un PLC, ste puede ser usado en
cualquier otra maquina o proceso productivo.
i.- La mayora de los PLC modernos pueden ser incorporados a redes
industriales e informticas obtenindose un mayor grado de control y de
monitoreo de los procesos industriales, ayudando en la construccin de
bases de datos importantes para gestin acertada de toda la empresa.
Como principales desventajas se han sealado las siguientes;
aunque hoy en da la tendencia es a desaparecer tales inconvenientes:
a.- Se ha indicado que el costo de un PLC es alto; pero cada da salen
al mercado nuevos PLC, con grandes prestaciones y precios muy asequibles.
Por lo tanto se puede encontrar un PLC adecuado a un precio razonable y
comparable a una solucin a travs de tableros de control tradicional. La
inversin debe incorporar los costos que a futuro tiene la confiabilidad del
sistema y la reduccin de los costos de mantenimiento.
b.- Como segunda desventaja se seala la necesidad de un personal
tcnico con un entrenamiento adecuado en el rea de programacin de los
equipos. Con respecto a esto se puede sealar que en las Universidades,
los Institutos Universitarios de Tecnologa, los Colegios Universitarios, INCE

33

y muchas otras instituciones educativas tecnolgicas en nuestro pas,


incorporan en sus pensum de estudio de las carreras relacionadas con la
electricidad, instrumentacin y control, materias que estudian el PLC. Con lo
cual muchos de los profesionales nuevos que se incorporan a la industria,
cuentan con un cierto grado de entrenamiento. Por otro lado los principales
lenguajes de usados en la programacin de los PLC tienen mucha afinidad
con los esquemas de control (diagramas de escalera) usados en los
automatismos tradicionales, lo cual facilita el entrenamiento del personal que
labora en la actualidad.

CAPITULO II
ARQUITECTURA DE LOS PLC

35

CAPITULO II
ARQUITECTURA DE LOS PLC
2.1.-INTRODUCCION.
Definir una arquitectura nica de un PLC es prcticamente imposible,
ya que cada una de las corporaciones que fabrican controladores
programables establece sus propias normas de construccin y configura los
sistemas que ofrecen, de acuerdo a las necesidades del mercado y a la
evolucin tecnolgica de los componentes de sus productos. Por lo tanto sus
arquitecturas varan, a veces enormemente, de un producto a otro, auque
tratan de mantener conectividad o capacidad de comunicacin entre sus
lneas de diversos modelos de PLC.
Ahora bien, si cada fabricante impone en sus productos caractersticas
que lo hacen nicos, se hace cuesta arriba entender de una manera general
los PLC. Sin embargo hay empresas lideres mundiales, cuyos productos
poseen arquitecturas que son seguidas por muchas otras empresas del ramo
y presentan cierto grado de similitud.
En el captulo I se seal, que los PLC pueden tener estructura
compacta o modular, sin embargo muchos PLC que se construyen hoy da
presentan caractersticas compactas y modulares a mismo tiempo.
Con el propsito de presentar una idea general de la arquitectura de
un PLC se estudiarn varios modelos de fabricantes con cierto grado de
influencia mundial.

Al observarse la forma como se han diseado y

configurado cada uno de ellos, es posible generalizar algunos elementos de


la arquitectura de un PLC.
Son estudiados los siguientes PLC:

PLC LOGO y SIMATIC S7,

ambos de la empresa SIEMENS, PLC 5; de la empresa ALLEN BRADLEY


y sistema Quantum Automation de MODICON del grupo SCHNEIDER.

36

2.2.-SISTEMA LOGO! DE SIEMENS.


El sistema Logo! De Siemens, es un pequeo PLC, la empresa lo
comercializa como un modulo lgico universal. Su estructura es modular,
partiendo de una configuracin o modulo bsico, el cual posee ocho entradas
y cuatro salidas.

A travs de la conexin de mdulos analgicos y digitales

se puede expandir la configuracin del sistema Logo!, y contar con un PLC


de prestaciones amplias requeridas en muchos problemas de control de
reas residenciales, comerciales e industriales; tales como:

control de

alumbrado, portones y puertas automticas, sistemas hidroneumticos,


compresores de aire, equipos de aire acondicionado, manejo de bombas,
etctera.
El modulo bsico Logo! se construye en dos variantes:

uno con

pantalla y teclas de programacin, con lo cual se puede programar


directamente el equipo. La otra versin no posee teclas ni pantalla, por lo
que la programacin se realiza exclusivamente a travs de un computador
personal.
En la figura 2.1 se muestra una tabla con las distintas variantes
bsicas del sistema Logo!. Como se puede apreciar existen mdulos bsicos
que utilizan fuentes de alimentacin diversas, cada nivel y tipo de tensin de
alimentacin definen un modelo especfico.
Tambin se pueden apreciar que existen dos variantes para las
salidas del PLC, stas son: a rel o a transistores.
Se incluye adems en la figura 2.1, algunas orientaciones sobre los
cdigos de identificacin y su significado para las configuraciones o mdulos
bsicos del sistema Logo!.

37

Figura 2.1. mdulos bsicos del sistema Logo!. (Fuente:


Manual del sistema Logo! de SIEMENS)

38

Para ampliar las prestaciones del sistema Logo!, se pueden usar dos
tipos de mdulos: mdulos digitales (DM) y mdulos analgicos (AM). En la
figura 2.2 se muestra una tabla con los diferentes tipos de mdulos de
ampliacin y sus caractersticas ms resaltantes.

Figura 2. 2. mdulos para la ampliacin del sistema Logo!. (Fuente:


Manual del sistema Logo! de SIEMENS)
En la figura 2.3 se muestran las formas, dimensiones y partes de un
mdulo bsico y uno de ampliacin del sistema Logo!.

Las entradas se

identifican con la letra I (I1, I2, etc.) y las salidas con la letra Q (Q1, Q2, etc.).
Como se aprecia en la figura 2.3, las dimensiones del equipo bsico y
la de los mdulos de ampliacin son bastante reducidas, con lo cual se
obtiene gran capacidad de control en poco espacio, an con las
configuraciones mximas posibles permitidas para estos equipos.

39

Figura 2. 3. Formas y dimensiones de mdulos Logo!. Fuente:


Manual del sistema Logo! de SIEMENS)

40

Es posible armar varias configuraciones partiendo de un mdulo


bsico e ir agregando mdulos de ampliacin.

Las posibilidades de

combinaciones entre un mdulo bsico los mdulos de ampliacin as como


las combinaciones posibles de mdulos de ampliacin se muestran en la
figura 2.4.
Las configuraciones mximas que pueden ser desarrolladas con el
sistema Logo!, se muestran en la figura 2.5.

Figura 2. 4. Posibilidades de combinacin de mdulos Logo!.


(Fuente: Manual del sistema Logo! de SIEMENS)

41

Figura 2. 5. Configuraciones mximas de Logo!. (Fuente:


Manual del sistema Logo! de SIEMENS)
La forma de conectar el sistema Logo! a la fuente de alimentacin es
simple, como puede apreciarse en la figura 2.6.
El sistema Logo! acepta principalmente entradas de tipo digital
proveniente de sensores on/off o pulsadores, selectores, interruptores y otros
elementos de dos posiciones, pero algunas de sus entradas pueden ser de
tipo analgico.

En la figura 2.7 se muestra la forma de conectar los

elementos de entrada digitales o sensores digitales al sistema Logo!.


El sistema Logo! considera una entrada digital como un uno lgico (1)
o un cero lgico (0) de acuerdo al nivel de voltaje que presente la seal. La
figura 2.8 muestra una tabla con las referencias de voltajes considerados
como 1 o 0 por las diferentes variantes del sistema Logo!.

42

Figura 2. 6. Conexin de fuente de voltaje al sistema


Logo! (Fuente: Manual del sistema Logo! de SIEMENS)

Figura 2. 7 Conexin de sensores al sistema Logo!.


(Fuente: Manual del sistema Logo! de SIEMENS)

43

Figura 2. 8. Referencias de niveles de voltajes para entradas


digitales del sistema Logo!. (Fuente: Manual del sistema Logo! de
SIEMENS)

44

La conexin de sensores analgicos o entradas analgicas al sistema


Logo! se muestran en la figura 2.9, para un mdulo de ampliacin analgico.
Se puede medir corrientes de 0 a 20 mA., tensiones de 0 a 10 voltios, se
pueden colocar sensores de temperatura, etctera. Las seales analgicas
son convertidas a valores digitales de 0 a 1000.

Figura 2. 9. Conexin de entradas analgicas al sistema Logo!.


(Fuente: Manual del sistema Logo! de SIEMENS)
Los actuadores del sistema de control se conectan a las unidades de
salida del sistema Logo!. El sistema se presenta con dos variantes o tipos de
salida: salida a rel y salida a transistores. La figura 2.10 muestra la forma
de conectar los actuadores al sistema Logo!, De acuerdo con el tipo de salida
que presente.
Los actuadores colocados en las salidas a rel pueden ser de varios
niveles de tensin y de AC o DC, mientras que las salidas a transistores
operan solo a 24 voltios DC.
La programacin del sistema Logo! se pude realizar a travs de las
teclas incorporadas en el mdulo bsico o por medio de una computadora
personal (PC). Los sistemas bsicos que no poseen pantalla, se programan

45

exclusivamente a travs de la PC.

El software utilizado se denomina

Logo!soft Confort.

Conexin para salida a rel.

Conexin para salida a transistores.

Figura 2. 10. Conexin de salidas del sistema Logo!. (Fuente:


Manual del sistema Logo! de SIEMENS)

46

El lenguaje de programacin utilizado (Logo!soft confort), se basa en


redes de compuertas y mdulos funcionales que realizan funciones
especficas y que se interconectan para construir un automatismo. En la
figura 2.11 se muestra un ejemplo de una red de compuertas para un control
automtico implementado en un sistema Logo!.

En el captulo III se

profundiza sobre las redes de compuertas y otras formas de lenguaje de


programacin de los PLC.

Figura 2. 11 Red de compuertas para automatismo programado en


Logo!soft Confort. (Fuente: Manual del sistema Logo! de SIEMENS)
El software incorpora mltiples funciones lgicas, de tiempo, de
memoria, contadores, reloj,

etctera.

Con lo cual se obtiene una gran

prestacin para este pequeo PLC.


A fin de

estudiar en detalle el sistema Logo! de SIEMENS, se

recomienda revisar el manual del sistema Logo! del fabricante.

47

2.3.-SISTEMA SIMATIC S7-200 DE SIEMENS.


La lnea de PLC Simatic S7-200 de la empresa SIEMENS consta de
cuatro unidades bsicas, cada una de ellas con diferentes cantidades de
entradas y de salidas y una variedad de elementos o mdulos de ampliacin.
Las unidades bsicas comercializadas en la actualidad son las siguientes:
CPU 221, CPU 222, CPU 224, CPU 226 y CPU 226 XM.
La empresa SIEMENS ha comercializado anteriormente la lnea
Simatic S7-200 a travs de los siguientes mdulos bsicos: CPU 212, CPU
214, CPU 215 y CPU 216, stas configuraciones son de 16 Bits, mientras
que las nuevas versiones son de 32 Bits. En la figura 2.12 se muestran las
CPU de la lnea Simatic S7-200.
En la figura 2.13 se muestra una tabla donde se resaltan las
principales caractersticas de las CPU de la lnea Simatic S7-200.
Con excepcin de la CPU 221, todas las dems aceptan mdulos de
expansin que incrementan las prestaciones de la serie.

Figura 2. 12 CPU del sistema Simatic (Fuente: Catlogo del sistema


Simatic S7-200 de SIEMENS).

48

Figura 2. 13 Principales caractersticas de la lnea Simatic S7-200.


(Fuente: Manual del sistema de Automatizacin S7-200 de Siemens)
En la figura 2.14 se muestra una tabla con los diferentes mdulos de
ampliacin que se ofrecen para los distintos PLC de la serie Simatic S7-200.
Como puede observarse, las ampliaciones son de dos tipos: digitales
o analgicas y es posible incrementar el nmero de salidas y/o de entradas
de todo el sistema. Las ampliaciones incluyen mdulos de conexin a redes
industriales.
La tensin de alimentacin de las CPU puede ser seleccionada en 24
voltios de corriente continua o 120 a 240 voltios en corriente alterna. En la
figura 2.15 se muestra como conectar la fuente de alimentacin de corriente
alterna AC o continua CC, a las CPU del sistema.

49

Figura 2. 14 Mdulos de ampliacin de la serie Simatic S7-200.


(Fuente: Manual del sistema de Automatizacin S7-200 de Siemens)
Las diferentes CPU de la serie que se est analizando (CPU 221...
CPU 226) usan entradas opto-acopladas, alimentadas con una fuente de 24
voltios de DC para conectar los sensores, mientras que las salidas pueden
ser de 24 voltios DC (salidas a transistores) o 120 a 240 voltios AC (salidas a
rel). La figura 2.16 muestra la forma de conectar las entradas y las salidas
a la CPU de acuerdo al tipo de alimentacin usado.
Algunas CPU antiguas del sistema S7-200 usan corriente alterna del
mismo nivel que la alimentacin con el propsito de suministrar tensin a los
diferentes sensores y por lo tanto; como tensin de entrada a la CPU.

Figura 2. 15 Conexin de la CPU del sistema S7-200 (Fuente: Manual


del sistema de Automatizacin S7-200 de Siemens)

50

Los mdulos de ampliacin digitales del sistema pueden ser de


corriente continua o alterna. La figura 2.17 muestra la forma de conectar los
diferentes elementos de entrada y de salida para diferentes tensiones de
alimentacin.

Figura 2. 16 Conexin de las entradas y salidas a la


CPU del sistema S7-200. (Fuente: Manual del sistema
de Automatizacin S7-200 de Siemens)
Los mdulos de ampliacin analgicos usan como fuente de
alimentacin 24 voltios de DC. Dicho nivel de tensin, por lo general, es
suministrado por la CPU.

La figura 1.18 muestra la conexin de estos

mdulos a los diferentes elementos de entrada y salida del sistema de control


automtico.

51

Figura 2. 17 Conexin de las entradas y salidas a los mdulos


digitales de expansin del sistema S7-200. (Fuente: Manual del
sistema de Automatizacin S7-200 de Siemens)

La programacin del sistema Simatic S7-200 se realiza usando el


software STEP 7-Micro/WIN, comercializado por Siemens. Es necesario el
uso de un computador personal y un cable de conexin entre el PC y la CPU,
con el propsito de cargar en el PLC, el programa creado en la PC. El
mencionado software permite la edicin de programas de tres maneras
distintas. La edicin en KOP es una estructura de programacin basada en
redes de escalera. La edicin AWL visualiza los programas a travs de una
lista de instrucciones. Y por ltimo la edicin FUP usa los logigramas o
diagramas de compuertas para desarrollar los programas.

El software

52

permite observar un mismo programa de aplicacin en sus diferentes


versiones o ediciones.

Figura 2. 18 Conexin de las entradas y salidas a los mdulos


analgicos de expansin del sistema S7-200. (Fuente: Manual del
sistema de Automatizacin S7-200 de Siemens)
El software incorpora un conjunto de funciones que hacen del sistema
Simatic S7-200 un poderoso PLC de amplias prestaciones, adems se
cuenta con asistentes que facilitan la construccin de programas de
aplicacin.
Con el propsito de conocer detalladamente

el sistema de

automatizacin Simatic S7-200, se recomienda revisar el manual de dicho


sistema.

53

2.4.-SISTEMA PLC-5 / 1771 DE ALLEN BRADLEY.


El sistema PLC-5 /1771 es un PLC modular fabricado por la empresa
Allen

Bradley.

La

configuracin

bsica

parte

de

un

chasis

de

entradas/salidas (chasis E/S 1771), especialmente diseado para contener


los diferentes elementos que conforman el PLC.
Los diferentes mdulos que conforman el sistema PLC-5 / 1771 son
los siguientes:

El chasis.

La fuente de poder.

El procesador.

Mdulos de entradas/salidas digitales (E/S digitales).

Mdulos de entradas/salidas analgicas (E/S analgicas).

Mdulos de comunicacin a otros chasis con E/S adicionales.

Mdulos de comunicacin con redes industriales.

E/S distribuidas.

Software de programacin.

Accesorios de conexin.

En la figura 2.19 se pueden observar los diferentes elementos


mencionados.
La modularidad que presenta el PLC-5 / 1771 permite configurar
aplicaciones a la medida y con una gran capacidad de conectividad con otros
elementos de control compatibles con el sistema principal.
En la figura 2.20 se muestran dos posibles configuraciones del sistema
PLC-5 / 1771, la primera de ellas es una configuracin sencilla donde solo se
cuenta con un chasis que contiene la fuente y el procesador, en sta
configuracin se puede alcanzar un mximo de 512 E/S.

54

Figura 2. 19. Mdulos del sistema PLC-5 /1771. (Fuente:


manual del sistema PLC-5 / 1771 de Allen Bradley)

55

La segunda configuracin es mucho ms compleja y se pueden


direccionar

hasta 3072 E/S, utilizando mdulos adicionales de E/S y

comunicacin a travs de redes.


A continuacin se estudiarn algunos detalles de los principales
componentes que conforman la arquitectura del PLC-5 / 1771.

Configuracin
bsica.

Configuracin
compleja.

Figura 2.20. Configuraciones posibles del sistema PLC-5 / 1771.


(Fuente: Manual del PLC-5 / 1771 de Allen Bradley)

56

El chasis sirve de soporte para todos los elementos que integran el


sistema PLC-5 / 1771, este viene en versiones de 1, 2, 4, 8, 12 y 16 ranuras
para colocar los diferentes mdulos, uno por cada ranura. En la figura 2.21
se muestra una tabla de seleccin para los diferentes modelos de chasis.

Figura 2. 21. Modelos de chasis del sistema PLC-5 / 1771. (Fuente:


Manual del PLC-5 / 1771 de Allen Bradley)

57

La fuente de poder requerida para la operacin del sistema se


obtiene a travs de mdulos que se conectan en una o dos ranuras del
chasis. Los circuitos electrnicos del sistema operan a con una tensin de 5
voltios de corriente continua (5 VDC). Los chasis tipo 1771 PSC y AM estn
diseados especialmente para colocar fuentes de poder y conectarse al
backplane del chasis de E/S con cables conectivos especiales. En la figura
2.22 se muestra las caractersticas de las fuentes disponibles para el sistema
PLC-5 / 1771.
Mdulo de
fuente de
alimentacin
elctrica
insertados en
chasis de E/S

Mdulo de fuente de
alimentacin elctrica en un
chasis de alimentacin
elctrica 1771-PSC
conectado a un chasis de
E/S

Figura 2. 22. Fuentes de alimentacin del sistema PLC-5 / 1771.


(Fuente: Manual del PLC-5 / 1771 de Allen Bradley)

58

Figura 2. 22. Continuacin...

El procesador es un mdulo de ranura nica que se coloca en el


extremo izquierdo del chasis E/S 1771. Est disponible en una amplia gama
de configuraciones de E/S, de memoria y posibilidades de comunicacin.
Cada procesador tiene incorporado un puerto de comunicacin que puede
ser configurado para:

Una red Data Highway plus.

Una red de E/S remotas universales.

Adems cada procesador posee un puerto Ethernet, adicionalmente


se pueden incorporar puertos adicionales Ethernet, DeviceNet usando
mdulos apropiados. En la figura 2.23 se muestran las tres categoras de
procesadores que pueden usarse en el sistema PLC-5 / 1771.

59

Figura 2. 23. Tabla de categoras de procesadores del sistema PLC-5


/ 1771. (Fuente: Manual del PLC-5 /1771 de Allen Bradley)
Como se puede apreciar en la tabla aparecen tres categoras de
procesadores, las cuales dependen de las posibilidades de comunicacin con
unidades de E/S locales, locales extendidas, universales remotas, DeviceNet
y ControlNet. Las capacidades mximas de direccionamiento de unidades
de entradas y salidas se muestran tambin en la tabla, para cada una de las
categoras de procesadores.
En las tablas mostradas en la figura 2.24 se muestran ms detalles
relacionados con los procesadores, tales como capacidad de memoria,
combinaciones de E/S, tiempos de ejecucin de instrucciones, cantidad
mxima de chasis que puede direccionar, puertos, corriente de carga del
backplane. La figura 2.23 muestra solo los procesadores estndar.

60

Figura 2. 24. Procesadores estndar del sistema PLC-5 / 1771.


(Fuente: Manual del PLC-5 / 1771 de Allen Bradley)

61

Figura 2. 24. Continuacin...

Los mdulos de entradas digitales son circuitos electrnicos que


permiten conectar los sensores externos, tales como: pulsadores, finales de
carrera, detectores de proximidad, contactos, etc. al circuito interno o de
procesamiento del PLC.

La fuente de alimentacin de los sensores es

diferente a la del circuito interno del PLC y el sistema de acoplamiento de


seal es a travs de opto-acopladores presentes en las unidades de entrada.

62

En la figura 2.25 se muestra una tabla con los mdulos de entradas


del sistema PLC-5 / 1771. Estos pueden ser tanto de corriente alterna (CA)
como de corriente continua (CC), algunos diseados para aplicaciones
especficas.

Figura 2. 25. Mdulos de entradas del sistema PLC-5 / 1771.


(Fuente: Manual del PLC-5 / 1771 de Allen Bradley)

63

Los mdulos de salidas digitales conectan los dispositivos


accionadores tales como: bobinas de contactores, rels, electro-vlvulas
neumticas, luces pilotos, etc. Al igual que las entradas las salidas son optoacopladas y pueden operar a diferentes voltajes de CA y CC. Las salidas
pueden ser de rel, de transistores o de triacs. En la figura 2.26 se muestra
una tabla con las caractersticas ms resaltantes de los mdulos de salidas a
rel, para ver las caractersticas de los otros mdulos de salida ver el manual
del sistema.

Figura 2. 26. Mdulos de salidas digitales del sistema PLC-5 / 1771.


(Fuente: Manual del PLC-5 / 1771 de Allen Bradley)

64

Los mdulos de E/S analgicas se utilizan para realizar las


conversiones analgico/digital (A/D) o digital/analgico (D/A) necesarias para
interconectar directamente seales a la tabla interna de seales digitales
(bits) del PLC. En la tabla 2.27 se muestra un grupo de mdulos utilizados
para el sistema PLC-5 / 1771. Existen muchos mdulos con aplicaciones
especficas, para profundizar sobre el tema se recomienda revisar el manual
del equipo.

Figura 2. 27 Mdulos de E/S analgicas del sistema PLC-5 / 1771.


(Fuente: Manual del PLC-5 / 1771 de Allen Bradley)

65

Los

mdulos

de

comunicacin

permiten

conectar

puertos

adicionales al procesador y as conformar una red distribuida de control a


travs de una planta industrial. El sistema PLC-5 / 1771 tiene posibilidades
de comunicarse a travs de las siguientes redes:

DeviceNet, EtherNet,

ControlNet, Data Highway Plus, RS-232-C (DF1), Red universal de E/S


remotas y Vnculos de E/S locales extendidas.
La figura 2.28 muestra los diferentes mdulos utilizados para ampliar
los puertos de comunicacin del PLC.

La figura 2.29 muestra algunas

configuraciones tpicas del sistema PLC-5 / 1771 conectado en redes


industriales.

Figura 2. 28. Mdulos de comunicacin del sistema PLC-5 /


1771. (Fuente: Manual del PLC-5 / 1771 de Allen Bradley)

66

Figura 2. 29. Configuraciones tpicas de redes que integran el


sistema PLC-5 / 1771. (Fuente: Manual del PLC-5 / 1771 de Allen
Bradley)
La programacin del sistema PLC-5 / 1771, requiere del uso del
software RSLogix 5 comercializado por Allen Bradley para el sistema en
estudio, el cual usa una PC con sistema operativo Windows 95, 98 y NT. Se
puede programar en lenguaje de escalera, texto estructurado (STX Structure
text) y grfico de secuencia estructurada (SFC Sequential Function Chart),
tambin conocido como GRAFCET.

67

2.5.-SISTEMA QUANTUM AUTOMATION DE MODICON.


El sistema Quantum Automation de MODICON es un PLC modular y
escalable o ampliable, lo cual permite su adaptacin a una gran cantidad de
aplicaciones en sistemas industriales.
El sistema puede manejar hasta 448 unidades de entradas/salidas
(E/S) en un solo gabinete, o se puede alcanzar a travs de configuraciones
de red un mximo de 64000 E/S.
Los procesadores del sistema se basan en tecnologa Intel y sus
memorias van desde 256 Kb, hasta 4 Mb.
Los elementos que componen el sistema son los siguientes:

Chasis, bastidor o backplane.

Procesador o CPU.

Fuente de alimentacin.

Mdulos de entrada/salida digital o discreto.

Mdulos de entrada/salida analgicos.

Mdulos de comunicacin.

Mdulos especiales.

Otros accesorios.

En la figura 2.30 se muestra un diagrama de conexin del sistema


Quantum Automation.

La CPU se ubica en el mdulo local y existen

estaciones distribuidas de E/S (DIO) y estaciones remotas de E/S (RIO) las


cuales se conectan con la estacin local o maestra a travs de redes
industriales especiales.
El sistema Quantum Automation permite la comunicacin con las
siguientes redes industriales: Modbus, Modbus plus, E/S remotas, Ethernet
TCP/IP, Ethernet MMS, Interbus, LonWorks, SERCOS.

68

Figura 2. 30. Esquema bsico de un sistema Quantum Automation.


(Fuente: Gua de referencia del hardware del sistema Quantum
Automation de MODICON)
A continuacin se describe brevemente los principales componentes
del sistema.
El chasis o bastidor es la estructura o soporte donde se colocan
todos los componentes o mdulos del sistema Quantum. El bastidor se
encarga de proveer las seales de comunicacin y la distribucin de energa
para los diferentes mdulos conectados. Los bastidores tienen las siguientes
capacidades en lo referente a ranuras para insertar o aceptar mdulos:
Chasis de 2, 3, 4, 6,10, 16 ranuras (slots).
En la figura 2.31 se muestran los diagramas de los chasis y sus
referencias. La mayora de los mdulos del sistema Quantum ocupan una
sola ranura en el chasis y se pueden ubicar en cualquier posicin.

69

Figura 2. 31. BackPlane o chasis del sistema Quantum. (Fuente:


Gua de referencia del hardware del sistema Quantum Automation
de MODICON)
La fuente de alimentacin son mdulos que suministran la energa al
chasis y sirve adems como filtro contra ruidos y parsitos del sistema
elctrico.

La fuente de poder toma el suministro de energa local y

transforma en una fuente de tensin de 5 voltios de DC requeridos por el

70

CPU, los mdulos de entrada/salida y de comunicacin.

La energa

requerida por las seales de los sensores de campo es suministrada por


otras vas. Los mdulos pueden conectarse de tres maneras diferentes para
suministrar una mayor cantidad de potencia, se colocan como fuente
independiente, en paralelo o aditivas independientes y en configuracin de
respaldo o redundantes.
En la figura 2.32 se muestra un mdulo tpico y las referencias de
diversas fuentes compatibles con el sistema Quantum.

Figura 2. 32. Mdulos de alimentacin del sistema Quantum.


(Fuente: Gua de referencia del hardware del sistema Quantum
Automation de MODICON)

71

Las CPU del sistema Quantum estn basadas en tecnologa Intel y


poseen diversas capacidades de memoria y comunicacin. Estn colocadas
en el bastidor principal y sirve de controlador maestro para gobernar
unidades de entrada/salida locales, remotas y distribuidas del sistema.
En la figura 2.33 se muestra un mdulo de CPU para el sistema
Quantum, se destacan los puertos de comunicacin incorporados. La figura
2.34 se detallan algunas caractersticas de los mdulos de CPU que pueden
ser usados en el sistema.
Los puertos de comunicacin del sistema Quantum no se limitan a los
ubicados en el CPU sino que adems se pueden usar mdulos adicionales
que permiten ampliar las posibilidades de comunicacin del sistema.

Figura 2. 33. Modulo de CPU tpico del sistema Quantum. (Fuente:


Gua de referencia del hardware del sistema Quantum Automation
de MODICON)

72

Figura 2. 34. Referencias de las CPU del sistema Quantum.


(Fuente: Gua de referencia del hardware del sistema Quantum
Automation de MODICON)
Los mdulos de entras/salidas (E/S) digitales permiten conectar las
seales lgicas de campo (pulsadores, selectores contactos etc.) y las
respuestas o salidas digitales, que conectan los actuadores (bobinas,
vlvulas solenoides etc.) al procesador del sistema Quantum. El sistema
cuenta con una gran diversidad de stos mdulos lo cual permite ingresar al
procesador una variedad de seales provenientes de los procesos de control
e igualmente los mdulos de salida conectan una gran diversidad de
elementos de accionamiento.
Todos los mdulos de E/S Quantum estn poseen acoplamiento
ptico entre las seales de campo y el bus del procesador, con lo cual se
resguarda el circuito electrnico interno de sistema.
La figura 2.35 muestra un mdulo estndar de E/S digital. En la figura
2.36 se muestran algunos mdulos de entrada digital y en la figura 2.37
mdulos de salida.

Como se aprecia en las tablas de muestra, las

combinaciones de cantidad de salidas y tensiones de conexin son bastante


diversas.

73

El sistema Quantum cuenta con mdulos que poseen entradas y


salidas digitales combinadas en una misma estructura. En la figura 2.38 se
dan las caractersticas bsicas de los mencionados mdulos.
Como se puede notar en las diferentes tablas de E/S, se requiere de
una fuente independiente para alimentar los captadores y actuadores. La
fuente puede ser de AC o de DC y de varios niveles de magnitud.
Los mdulos poseen diodos emisores de luz (LED) que permiten
observar en todo momento los estados de las diferentes entradas y salidas
conectadas.
El software de programacin del PLC permite configurar de manera
apropiada los diferentes mdulos de E/S, dndole una direccin nica a cada
uno de ellos y a cada entrada o salida del sistema Quantum.

Figura 2. 35. Mdulo de E/S del sistema Quantum. (Fuente: Gua


de referencia del hardware del sistema Quantum Automation de
MODICON)

74

Figura 2. 36. Mdulos de entrada del sistema Quantum. (Fuente:


Gua de referencia del hardware del sistema Quantum Automation
de MODICON)

75

Figura 2.37. Mdulos de salida digital del sistema Quantum.


(Fuente: Gua de referencia del hardware del sistema Quantum
Automation de MODICON)

76

Figura 2. 38. Mdulos de E/S combinados del sistema Quantum.


(Fuente: Gua de referencia del hardware del sistema Quantum
Automation de MODICON)
Los mdulos de entradas/salidas analgicas del sistema Quantum
permiten la conversin de seales de corriente o tensin, de magnitud
analgica en seales digitales que usa el microprocesador Quantum, as
como tambin el cambio de seales digitales provenientes del procesador en
seales analgicas que van a controlar dispositivos de campo. La seal
elctrica de corriente o voltaje proviene; por lo general, de instrumentos de
medicin de temperatura, presin, caudal y otras seales involucradas en los
sistemas de control. La figura 2.39 muestra un mdulo de E/S tpico.
Los mdulos E/S analgicos presentan varias configuraciones, en la
figura 2.40 se muestra una tabla de mdulos de entradas analgicos. La
figura 2.41 muestra mdulos E/S de salidas analgicas.

Tambin hay

mdulos que tienen, tanto entradas como salidas analgicas, los cuales se
muestran en la figura 2. 42. Todos los mdulos son configurables y tienen
desde 2 hasta 16 canales de entradas.

77

1.- Nmero de Modelo y cdigo de colores.


2.- Panel de diodos LED indicadores.
3.- Puerta removible y etiqueta.
4.- Regleta de conexiones.

Figura 2.39. Mdulo de E/S analgico tpico. (Fuente: Gua de


referencia del hardware del sistema Quantum Automation de
MODICON)

Figura 2.40. Mdulos de entrada analgica del sistema Quantum.


(Fuente: Gua de referencia del hardware del sistema Quantum
Automation de MODICON)

78

Figura 2. 41. Mdulos de salida analgica del sistema Quantum.


(Fuente: Gua de referencia del hardware del sistema Quantum
Automation de MODICON)

Figura 2. 42. Mdulo combinado de entradas y salidas del sistema


Quantum. (Fuente: Gua de referencia del hardware del sistema
Quantum Automation de MODICON)

79

Los mdulos de comunicacin del sistema Quantum permiten


ampliar la cantidad de puertos de comunicacin bsicos que tiene el
microprocesador del sistema. En la figura 2.43 se muestra una tabla donde
se sealan los diferentes mdulos para las diversas redes de comunicacin
compatibles con el sistema Quantum. Se pueden utilizar combinaciones de
estas redes para proporcionar arquitecturas de comunicacin sencillas y de
altas prestaciones que cumplan los exigentes requisitos de conectividad de
ordenadores y controladores.

Figura 2. 43. Mdulos de comunicacin del sistema Quantum.


(Fuente: Gua de referencia del hardware del sistema Quantum
Automation de MODICON)

80

Los mdulos especiales del sistema Quantum son dispositivos


diseados para realizar tareas especficas dentro de un sistema de
automatizacin, entre los cuales estn los siguientes: mdulos contadores,
mdulos de interfase ASCII, mdulos interruptores de alta velocidad,
mdulos para el control de movimiento en un solo eje, etctera.
La programacin del sistema Quantum Automation se realiza a travs
del software Concept, el cual es comercializado por el grupo Schneider. El
software trabaja en ambiente Windows y posee cinco editores compatibles
con la norma IEC 61131-3, sobre lenguajes de PLC.

CAPTULO III
BASES LGICAS DE UN AUTOMATISMO Y NORMA
INTERNACIONAL PARA LOS CONTROLADORES
PROGRAMABLES.

82

CAPTULO III
BASES LGICAS DE UN AUTOMATISMO Y NORMA
INTERNACIONAL PARA LOS CONTROLADORES
PROGRAMABLES.
3.1.-INTRODUCCIN.
La concepcin moderna del automatismo dej atrs los grandes
cuadros de control con infinidad de rels y otros dispositivos interconectados
a travs de conductores, stos han sido sustituidos por pequeos y
poderosos controladores programables.

Esto ha conllevado a cambios

profundos en la concepcin del circuito elctrico del control, transformando


los esquemas de rels en programas que se corren en computadoras y
controladores programables, haciendo posible el desarrollo de aplicaciones
con un alto grado de complejidad.
En el presente captulo se estudia la manera de convertir un problema
clsico de automatismo utilizando rels y contactores en un problema lgico
que pueda ser transformado en un programa que ejecute la misma funcin
de control y sea ejecutado en un controlador programable.
La formulacin lgica del problema de control elctrico o de un
automatismo conlleva a la presentacin del problema en cuatro formas
basadas en el lgebra booleana, stas son: las ecuaciones booleanas, la
lista de instrucciones, el diagrama de escalera y el diagrama de compuertas.
Estas cuatro formulaciones son bsicas en la definicin de lenguajes
estndar patrocinado por la Comisin Electrotcnica Internacional.
Se incluye en el captulo la presentacin de la norma IEC-61131, la
cual representa un importante estndar internacional para el desarrollo y
programacin de los controladores programables.

83

3.2.-FORMULACIN

LGICA

DE

UN

PROBLEMA

DE

CONTROL ELCTRICO.
Los circuitos automticos de control elctrico pueden ser presentados
como un problema de sistema. Mediante este enfoque, se ve el circuito de
control como un conjunto de variables de entrada o de excitacin y un
conjunto de respuestas o variables de salida, todas interactuando en un
proceso a fin de construir una respuesta. El sistema puede ser representado
como se muestra en la figura 3.1.

Figura 3. 1 Esquema de un sistema.

Un sistema puede ser descrito de muchas maneras, una de ellas es


mediante un modelo matemtico, el cual expresa las diferentes relaciones
que existen entre las variables de entrada y las variables de salida o
respuesta del sistema. El conjunto general de ecuaciones matemticas que
representa el sistema se muestra a continuacin.

84

Y1

f1 ( X

( X

, X

, X

,.......,

Xn , Y 1 , Y

, Y 3 ,.......,

Yn )

( X

, X

, X

,.......,

Xn , Y 1 , Y

, Y 3 ,.......,

Yn )

( X

, X

, X

,.......,

Xn , Y 1 , Y

, Y 3 ,.......,

Yn )

, X

, X

,.......,

Xn , Y 1 , Y

,Y

,.......,

Yn )

Para la construccin del modelo matemtico se requiere observar


cuidadosamente el sistema que se desea representar, a fin de identificar las
variables que deben ser consideradas independientes o variables de entrada
o excitacin (Xn), y aquellas que se deben considerar como variables
dependientes o de salida o respuestas del sistema.
Un sistema fsico suele presentar innumerables variables, se pueden
seleccionar aquellas que realmente son determinantes y de inters para el
estudio realizado.
Las funciones que describen el sistema pueden ser muy complejas
dependiendo del grado de precisin que se desee obtener del modelo y lo
realista o aproximado a la realidad que este sea.
Al momento de construir el modelo matemtico se deben hacer
muchas suposiciones, aproximaciones y limitar las observaciones y
resultados.
Con el propsito de ilustrar las ideas anteriores se analizar el
siguiente ejemplo:

Considerar una resistencia elctrica

como sistema a

estudiar. Algunas variables de estudio del sistema son las siguientes:

Voltaje en los terminales.

Corriente a travs de los terminales.

Potencia elctrica disipada.

85

Temperatura alcanzada por la resistencia.

Energa disipada.

Temperatura ambiente que rodea la resistencia.

Imperfecciones del material con que se construy la resistencia.

Etctera.

Las relaciones entre algunas variables son muy bien conocidas y otras
no. De todas las variables involucradas en el sistema, solo se seleccionan
las de inters para nuestro estudio. Por ejemplo voltaje, corriente y potencia.
Se considera que las variables temperatura de la resistencia, temperatura
ambiente, imperfecciones, etctera no influyen en forma determinante en la
respuesta del sistema.
Consideremos ahora cual de las variables estudiadas es dependiente
y cual independiente. Se asume para el ejercicio que la corriente elctrica
es la variable independiente y el voltaje en los terminales y la potencia son
respuestas del sistema o variables dependientes. En la figura 3.2 se ilustra
el modelo del sistema.
El modelo matemtico que describe el sistema es el siguiente:

R*I

P = V *I
En el modelo descrito las variables son continuas y pueden tomar una
infinidad de valores.

En el caso de los circuitos de control elctrico se

pueden considerar modelos en los cuales las variables solo toman dos
valores: abierto o cerrado, todo o nada, apagado o encendido, 0 o 1,
etctera.
Cuando el sistema se reduce al estudio de variables de dos estados,
se emplea los principios de la lgica matemtica para describir las relaciones
de las variables involucradas en el estudio y la construccin de modelos
lgicos.

86

Figura 3.2 Modelo sistmico de una resistencia.

Al trabajar con modelos lgicos se usa el lgebra de Bool o Booleana.


A continuacin se estudiarn los principios bsicos de las conjugaciones
lgicas que sirven de base para la construccin y presentacin lgica de los
circuitos elctricos de control automtico.
Considrese el sistema sencillo mostrado en la figura 3.3, se
representa en la figura una salida de agua la cual es controlada por dos
llaves de paso.

Como se ha dicho con anterioridad el sistema puede

contener muchas variables de estudio, tales como: caudal, presin,


temperatura, velocidad del fluido, etctera, pero el anlisis se centrar en
estudiar la presencia o ausencia de agua en la toma.

Esta variable se

llamar simplemente estado de la toma, la cual ser representada con una


letra S. Los posibles valores de la variable S son dos: sale agua o no sale
agua.

87

Figura 3.3 Sistema de suministro de agua.

Se considera la variable S como una variable de salida del sistema.


Como variables de entrada sern considerados el estado de la vlvula 1 y el
estado de la vlvula 2. Se codificarn estas dos variables como V1 y V2
respectivamente.

Los valores que pueden asumir las dos variables de

entrada en nuestro sistema tambin son dos:

vlvula abierta o vlvula

cerrada.
Comnmente a los sistemas de variables de dos estados se le asignan
los valores 0 y 1, para representar los dos posibles estados de la variable.
En el cuadro 3.1 se presenta un resumen de las variables del sistema con la
codificacin asumida y los valores codificados de las variables.

Estos sistemas tambin reciben el nombre de sistemas binarios. Las


combinaciones posibles de las variables se determinan de la siguiente
manera:

Sea un sistema de n variables binarias, el nmero de

combinaciones posibles es 2n.

88

En el sistema que se est analizando; el nmero de variables de


entrada a combinar, para obtener una salida es dos (2), por lo tanto hay
cuatro (22) combinaciones posibles de las variables de entrada, dichas
combinaciones determinan los valores de la variable de salida. En el cuadro
3.2 se muestran las diferentes combinaciones de las variables de entrada y el
efecto en la variable de salida.
Cada una de las combinaciones posibles define uno de los dos
estados de la variable de salida (sale agua o no sale agua).

La forma como se combinan las dos variables de entrada para


producir la salida se denomina conjugacin OR (O) o disyuncin y de una
manera general se puede expresar como se muestra en el cuadro 3.3. Esta
tabla recibe el nombre de tabla de verdad.

La expresin lgica que define esta conjugacin se representa de la


siguiente manera:

= V1 + V 2

Esta ecuacin recibe el nombre de ecuacin Booleana de sistema.

89

Considrese ahora el sistema mostrado en la figura 3.4. Se tiene una


variante del sistema mostrado en la figura 3.3, se usarn las mismas
definiciones de variables y las consideraciones hechas en la descripcin del
sistema.

Figura 3.4 Sistema de suministro de agua.

Como se aprecia las vlvulas estn colocadas en serie y la nica


forma de que exista salida de agua es que las dos vlvulas estn abiertas.
Siguiendo el mismo procedimiento de anlisis descrito, la codificacin de las
variables es la misma mostrada en el cuadro 3.1.
En el cuadro 3.4 se muestran las diferentes combinaciones posibles
de las variables de entrada (V1 y V2) y su efecto en la variable de salida (S).

La forma como se combinan las dos variables de entrada para


producir la salida se denomina conjugacin AND (Y) o conjuncin y de una
manera general se puede expresar como se muestra en el cuadro 3.5, o sea
la tabla de verdad de la conjugacin AND.

90

La expresin lgica o ecuacin Booleana que define esta conjugacin


se expresa de la siguiente manera:

= V1*V 2

Se analiza a continuacin un sistema completamente diferente como


se puede apreciar en la figura 3.5. Este corresponde a un circuito elctrico
sencillo en el cual se controla el encendido de una lmpara a travs de los
interruptores.

Figura 3.5 Sistema de encendido de lmpara.

En este sistema se est interesado en observar el encendido o


apagado de la lmpara. Por lo tanto se considera el estado de la lmpara

91

como variable de salida, la cual presenta dos posibles valores apagada o


encendida.
Las variables de entrada son el estado que presentan los interruptores
cuyos valores son: abierto o cerrado.
La codificacin de las variables se define a continuacin: la variable
de salida, o sea, el estado de la lmpara es H y sus valores son 1, para
encendido y 0 para apagado. Para las variables de entrada los cdigos son:
I1 e I2 y sus posibles valores son 1 cuando el interruptor est cerrado y 0
cuando est abierto.

En el cuadro 3.6 se muestra un resumen de las

variables, sus cdigos, sus valores y las cuatro combinaciones posibles de


las variables de entrada, as como la respuesta del sistema a cada una de las
combinaciones.

Como se puede apreciar la respuesta del sistema se describe a travs


de una conjugacin OR de las dos variables de entrada. De manera general
la combinacin lgica de dos contactos en paralelo se describe con la
siguiente ecuacin Booleana:

I1 + I 2

Se considerar ahora un sistema con dos interruptores en serie para


controlar la lmpara como se muestra en la figura 3.6.

92

Figura 3.6 Sistema de encendido de lmpara.

Todas las consideraciones de las variables de entrada y de salida del


sistema estudiado anteriormente son vlidas para el presente sistema. Lo
que cambia es la disposicin de los interruptores con lo cual cambia tambin
la respuesta del sistema a las diferentes combinaciones de las variables de
entrada.
En el cuadro 3.7 se muestra el resumen de las variables de entrada y
salida del sistema, con sus respectivo valores y combinaciones.

Como se observa, la nica forma de que la lmpara se encienda es


que los dos interruptores estn cerrados. Para cualquier otra combinacin en
el estado de los interruptores, el sistema responde con la lmpara apagada.

93

Como se puede apreciar la respuesta del sistema se describe a travs


de una conjugacin AND de las dos variables de entrada.

De manera

general la combinacin lgica de dos contactos en serie se describe con la


siguiente ecuacin Booleana:

I1 * I 2

Existe una tercera conjugacin lgica conocida como la negacin o la


inversin de una variable de entrada, el nombre general asignado es
conjugacin NOT. En el cuadro 3.8 se muestra su tabla de verdad.

La expresin Booleana de la conjugacin NOT es la siguiente:


Y

__

Con estas tres conjugaciones bsicas del lgebra Booleana se


estructurarn una gran cantidad de problemas de control elctrico
automtico.

3.2.1.-FORMULACIN LGICA PARA UN ARRANCADOR


DIRECTO.
Se comenzar por el planteamiento del arranque simple o directo de
un motor elctrico tal como se muestra en la figura 3.7.

94

Al estudiar el problema como un sistema se deben definir claramente


cuales son las variables de entrada y de salida o respuesta, que son de
inters en el estudio planteado.
En primer lugar se consideran como respuestas del sistema lo
siguiente:
Estado del motor; se codifica esta variable como C1 y sus dos valores
posibles son: motor accionado o energizado ( 1 ) o motor detenido o
desenergizado ( 0 ). Al ser asumida esta variable se considera que el motor
se pone en marcha o se detiene, cuando la bobina del contactor se energiza
o se desenergiza respectivamente.

Figura 3.7 Sistema para el arranque directo de un motor.

95

Como segunda y tercera respuesta o variables de salida se considera


el estado de las lmparas h1 y h2 respectivamente. Dichas variables son
codificadas como h1 y h2, sus valores son: lmpara energizada o encendida
( 1 ) o lmpara desenergizada o apagada ( 0 ).
En segundo lugar se definen las variables de entrada o excitacin del
sistema; stas son:
Estado del rel trmico, se marca con el cdigo F y sus valores son
abierto ( 0 ) o cerrado ( 1 ).
Estado del pulsador de parada o stop, se marca con el cdigo So y
sus valores son abierto ( 0 ) o cerrado ( 1 ).
Estado del pulsador de marcha o start, se marca con el cdigo S1 y
sus valores son abierto ( 0 ) o cerrado ( 1 ).
En el cuadro 3.9 se muestra una tabla resumen de las variables
definidas y sus respectivos valores.

A continuacin se construirn las ecuaciones lgicas que gobiernan el


sistema, apelando por supuesto, a las definiciones bsicas hechas para las
conjugaciones OR, AND y NOT. El sistema cuenta con tres variables de

96

salida por lo que se debern definir tres ecuaciones lgicas o ecuaciones


Booleanas del sistema.

C1 =

F * So * ( S1 + C1 )

h1 =

__

h 2 = C1
Los diferentes contactos se combinan a travs de conjugaciones AND
si estn en serie y OR si estn en paralelo.
Las ecuaciones Booleana permiten construir un diagrama de
compuertas lgicas para representar el sistema. En la figura 3.8 se muestra
un diagrama de compuertas para el sistema de arranque directo estudiado.

Figura 3.8 Diagrama de compuertas del arrancador directo.

97

El problema tambin se puede representar a travs de un diagrama


conocido con el nombre de diagrama de escalera, donde se muestran las
relaciones lgicas de las variables del sistema y es muy parecido a los
diagramas funcionales de control elctrico. La figura 3.9 muestra el diagrama
de escalera del arrancador directo.
A travs de los diagramas de escalera se construye de manera fcil
una lista de instrucciones de carcter lgico para describir el sistema
mostrado. Esta lista, as como las representaciones descritas anteriormente
constituyen cuatro formas de representar un problema de control elctrico en
forma lgica. Comnmente se denominan de la siguiente manera:

Ecuaciones Booleanas.

Diagramas de compuertas lgicas o logigramas.

Diagramas de escalera.

Lista de instrucciones.

Figura 3.9 Diagrama de escalera del arrancador directo.

98

La lista de instrucciones tiene la siguiente forma general:


LD

S1

OR

C1

AND So
AND F
OUT C1
LD

C1

OUT h1
LDI F
OUT h2
END.
Los controladores lgicos programables (PLC) usan al menos una de
las formas descritas anteriormente para desarrollar los esquemas de control
elctrico. Constituyndose cada forma de presentar el problema en una
estructura bsica de un lenguaje de programacin desarrollado por el
fabricante de PLC.
Cuando los esquemas de control elctrico son muy complejos, se
emplean tcnicas de anlisis lgico de optimizacin, que permite obtener
reducciones en la cantidad de contactos y rels auxiliares del circuito original.
Estas tcnicas requieren de estudios ms detallados y profundos del lgebra
Booleana.

3.2.2.-FORMULACIN LGICA DE UN INVERSOR DE


GIRO.
Se plantea ahora el accionamiento de un motor elctrico con
accionamiento directo y posibilidad de seleccionar el giro del mismo. En la

99

figura 3.9 se muestra el esquema elctrico funcional correspondiente a este


automatismo.
El motor puede arrancar inicialmente en cualquier direccin, mientras
gira en una direccin puede cambiarse el giro inmediatamente al pulsar el
pulsador de giro contrario, aunque es ms aconsejable, pulsar el botn de

Figura 3.9. Circuito de potencia y mando para la inversin de giro


de un motor trifsico.
parada y luego arrancarlo en otro sentido.
Las variables seleccionadas como entradas y salidas del sistema se
muestran el cuadro 3.10.
En la figura 3.9 se puede observar que los pulsadores S1 y S2 son de
conexin desconexin con un contacto NA y otro NC. No es necesario
definir dos variables para cada pulsador, basta con seleccionar uno de los
contactos como variable y en el planteamiento lgico el otro contacto es el

100

inverso o negado. En este ejemplo se considera el contacto abierto de cada


pulsador para definir las variables S1 y S2.
De manera similar no se definen como variables los contactos
auxiliares de los contactores C1 y C2, sino que se consideran como la misma
variable en el caso de contacto abierto y variable negada o invertida cuando
el contacto es cerrado.

Las ecuaciones Booleanas que definen el sistema son las siguientes:


C1 =

F 1 * So * C 2 * S 2 * ( S1 + C1 )

101

C2

F 1 * So * C1 * S1* ( S 2 + C 2 )

h2 =

F1

h3 =

C1

h4 =

C2

El diagrama de escalera y el de compuertas se muestran en la figura


3.10. La lista de instrucciones se muestra en el cuadro 3.11.

Figura 3. 10. Diagrama de escalera y de compuertas del inversor de


giro de un motor de AC.

102

3.2.3.-FORMULACIN LGICA DE UN ARRANQUE DE


TRES MOTORES EN SECUENCIA.
En la figura 3.11 se muestra un circuito para el arranque directo de

Figura 3. 11. Arranque secuencial de tres motores

103

tres motores en forma secuencial y temporizado.

Se usan dos

temporizadores a fin de lograr la secuencia de arranque: Primero arranca


M1, diez segundos despus arranca M2, y diez segundos despus arranca
M3.
Las variables de entrada y salida del sistema se muestran en el
cuadro No. 3.12.

Como se puede apreciar en la tabla no fueron consideradas los


temporizadores como variables de salida o de entrada. Los PLC contienen
rutinas o funciones internas programadas que simulan los temporizadores,
contadores, rels auxiliares y otra gran cantidad de elementos de control
elctrico. Sin embargo en las ecuaciones Booleanas y los otros diagramas
se hace la representacin de los temporizadores.
Hay nueve (9) variables de salida, por lo tanto se tienen que formular
nueve ecuaciones Booleanas para describir el sistema, sin embargo se
incluyen las ecuaciones internas de los temporizadores.
C1 =

F 1 * F 5 * F 6 * SO * ( S1 + C1 )

104

C5

F 1 * F 5 * F 6 * C1* C1t

C6

F 1 * F 5 * F 6 * C1* C 5 * C 5t

h1 =
h4
C1t

F1

=
=

C1
C1

h2

F5

h3

F6

h5

C5

h6

C6

C 5t

C5

El diagrama de escalera y el de compuertas se muestra en la figura


3.12.
Las salidas para los temporizadores aparecen reflejadas en los
diagramas como salidas externas, pero en realidad en los PLC son variables
internas y no presentan conexiones fsicas al exterior del mismo.
La lista de instrucciones se muestra en el cuadro 3.13.

3.3.-ESTNDAR IEC 61131 PARA PLC.


La norma internacional IEC 61131, intenta organizar en un estndar
todo lo relacionado con los controladores programables utilizados en
automatizacin industrial. Dicha norma consta de ocho partes reseadas a
continuacin.
IEC 61131 1. Informacin general: Establece las definiciones e
identifica las principales caractersticas relevantes para la seleccin y
aplicacin de los controladores programables y sus perifricos.

105

Figura 3. 12. Diagrama de escalera y de compuertas del arracador


en secuencia de tres motores de AC.

106

IEC 61131 2. Requerimientos y pruebas de equipos: Especifica


los requerimientos de equipos y pruebas relacionadas para los PLC y sus
perifricos.
IEC 61131 3. Lenguajes de programacin: Define para cada un
de los lenguajes de programacin estandarizados por la norma, lo siguiente:

Mejor campo de aplicacin.

Reglas de sintaxis y semntica.

Conjunto bsico pero completo de elementos simples de


programacin.

Pruebas y medios a travs de los cuales, los fabricantes


pueden expandir o adaptar los conjuntos bsicos a sus propios
controles programables.

IEC 61131 4. Instrucciones para el usuario: Presenta al usuario


final de los PLC una visin general e instrucciones de aplicacin del presente
estndar.
IEC 61131 5. Comunicaciones: Define las comunicaciones entre
el PLC y otros sistemas electrnicos.
IEC 61131 6.

Apartado

reservado para futuras revisiones o

ampliaciones del estndar.


IEC 61131 7. Programacin

de control

difuso:

Define

los

lenguajes de programacin para control difuso.


IEC 61131 8. Instrucciones para la aplicacin e implementacin
de lenguajes de programacin para PLC, definidos en parte 3.
De todas las partes del estndar, la que ha tenido mayor aceptacin
en el mbito mundial es la parte correspondiente a los lenguajes de
programacin de los PLC (IEC 61131 3). A continuacin se detalla el
mencionado estndar.

CAPTULO IV
ELEMENTOS PARA PROGRAMACIN DE LOS PLC.

108

CAPTULO IV
ELEMENTOS PARA PROGRAMACIN DE LOS PLC.

4.1.-INTRODUCCIN.
Los usuarios de PLC han manifestado la necesidad de contar con un
lenguaje de universal para la programacin para sus equipos; de tal manera
que una aplicacin desarrollada para un determinado PLC pueda ser
implementada sin dificultades en equipos de otros fabricantes.

Como

respuesta la Comisin Electrotcnica Internacional (IEC) ha respondido


desde principios de los aos noventa con el estndar IEC-61131,
particularmente
programacin.

su

seccin

IEC-61131-3

referente

lenguajes

de

Desde la introduccin del estndar ste ha ido ganando

muchos adeptos en todo el mundo, tanto en el sector empresarial que fabrica


los PLC, como en los usuarios en la industria.
En este captulo se hace la primera referencia a los lenguajes de
programacin estandarizados bajo la norma IEC-61131-3. Son definidos los
elementos comunes a los cuatro lenguajes que seala la norma, se definen
los caracteres de impresin necesarios para la escritura de los programas,
los tipos de datos que son soportados, los tipos de variables, las unidades de
organizacin de los programas, entre otros.
Los fundamentos desarrollados en el presente captulo son bsicos
para el desarrollo del captulo V y en varias ocasiones se hace referencia al
capitulo V para que se comprenda con mayor claridad algunos conceptos y
visualizar algunos ejemplos.

109

4.2.-LENGUAJES ESTANDARIZADOS PARA PLC.


La norma IEC 61131 3, representa el primer esfuerzo real, en
estandarizar los lenguajes de programacin usados en automatizacin
industrial. Fue introducida por la Comisin Internacional de Electrotecnia en
1993 y desde entonces ha ganado mucha aceptacin entre los fabricantes de
PLC y otros sistemas de automatizacin industrial.
El estndar IEC 61131 3, especfica la sintaxis y la semntica de
un conjunto unificado de lenguajes de programacin de controladores
programables.

El grupo consiste de dos lenguajes textuales conocidos

como: Lista de Instrucciones (Instruction List, IL) y Texto estructurado


(Structured Text, ST), adems, dos lenguajes grficos con los siguientes
nombres: Diagrama de Escalera o de contactos (Ladder Diagram, LD) y
Diagrama de Bloques de Funcin ( Funtion Block Diagram, FBD).
Adicionalmente, la norma define elementos de programacin usando
la Carta de Funciones Secuenciales (Sequential Function Chart, SFC),
basados en los conceptos de GRAFCET, con el propsito de estructurar la
organizacin interna de los programas y bloques de funciones de los
controladores programables.

Adems, son definidos elementos de

configuracin los cuales soportan la instalacin de programas en los distintos


sistemas de PLC.
El estndar se divide en dos grandes secciones, la primera, se refiere
a los elementos comunes de todos los lenguajes y la segunda seccin es
referida a los lenguajes y sus caractersticas propias.

4.3.-IEC 61131-3. ELEMENTOS COMUNES.


Se establecen como disposiciones o elementos comunes a todos los
lenguajes descritos en la norma las siguientes secciones:

110

Uso de caracteres de impresin.

Representacin externa de datos.

Tipos de datos.

Tipos de variables.

Unidades organizacionales del programa (Program organization


units, POU).

Grafico de Funciones Secuenciales (Secuential Function Chart,


SFC).

Configuracin de elementos.

4.4.-USO DE CARACTERES DE IMPRESIN.


Conjunto de caracteres.

Los elementos de cualquiera de los

lenguajes normalizados deben ser representado por el conjunto de


caracteres definido en la norma ISO/IEC 10646.

La norma contempla

caracteres alfabticos, numricos y de otros tipos.


Identificadores. Un identificador es una cadena de letras, dgitos y
caracteres de subrayado, los cuales se usan para identificar elementos de
programas en cualquiera de los lenguajes estandarizados. El identificador
puede comenzar con una letra o guin de subrayado.
En el caso de identificadores con letras maysculas o minsculas son
interpretados de igual forma. Por ejemplo los siguientes identificadores son
iguales: abcd, ABCD y abCD.
Cuando se usa el guin de sub-rayado se establece una diferencia
entre dos identificadores, as:
diferentes.
seguidos.

A_BCD y AB_CD son identificadores

No se permite el uso de varios caracteres de subrayado

111

Se permite hasta un mximo de seis caracteres de un mismo tipo


seguidos en un identificador. Por ejemplo son vlidos los siguientes: IDENT,
ABCDE1, Lim_sw_5, _IW215Z.
Palabras reservadas (keywords). Son identificadores definidos por
la presente norma y que poseen una sintaxis ya definida y no pueden ser
usados como identificadores de elementos de lenguaje. En el anexo C de la
norma aparece la lista con todas las palabras reservadas.
Uso de espacios en blanco.

Se permite el uso de uno o ms

espacios en blanco en el texto de programas con excepcin en: palabras


reservadas,

literales,

valores

enumerados,

identificadores,

variables

directamente representadas o combinacin de delimitadores.


Comentarios.

Todos los lenguajes admiten la inclusin de

comentarios delimitados por los siguientes caracteres:

(* y *).

Los

siguientes son ejemplos de comentarios:


(* Esto es un ejemplo de comentario *)
(**************)
(*

variable de entrada

*)

4.5.-REPRESENTACIN EXTERNA DE DATOS.


Los

datos

externos

representados

por

varios

lenguajes

de

controladores programables consisten en alguno de los siguientes:

Literales numricos.

Literales de cadenas de caracteres.

Literales de tiempo.

Literales numricos.

Existen dos clases de literales numricos:

enteros y reales. Se permite el uso de los signos + o - para preceder los


literales o sus exponentes. Se permite el uso del guin de subrayado dentro
de un literal, pero no tiene ningn significado o valor. Los literales pueden

112

ser expresados en las siguientes bases numricas: base 2 (binaria), base


8(octal) y base 16(hexadecimal). La base se debe indicar en el literal. El
cuadro 4.1 muestra algunos ejemplos de literales.

Literales de cadenas de caracteres. Estos literales pueden ser de


dos tipos: con caracteres codificados en byte simple o en doble byte. Los de
byte simple se delimitan con un apostrofe simple () al principio y al final de la
cadena, mientras que los de doble byte usan como delimitador un apostrofe
doble (). Los siguientes ejemplos son literales de cadenas de caracteres
vlidos: cadena de byte simple, cadena de byte doble.
Literales de tiempo. Se pueden representar dos tipos de eventos
temporales:

representacin de duracin de eventos y representacin de

fechas.
Los literales de duracin de eventos van precedidos de cualquiera de
las siguientes palabras reservadas: T# y TIME#. Se pueden representar
retardos de tiempo en das, horas, minutos, segundos y milisegundos, o

113

cualquier combinacin de stos.

Algunos ejemplos se muestran a

continuacin:
T#14ms (14 milisegundos).
TIME#14.7s (14.7 segundos).
T#25h_15m (25 horas y 15 minutos).
TIME#5d_14h_12m_18s_3.5ms

(5 das, 14 horas, 12 minutos, 18

segundos, 3.5 milisegundos)


Los literales de fecha estn representados de acuerdo a la norma ISO
8601. Los prefijos utilizados son los siguientes:
DATE#

o D#.

TIME_OF_DAY#

o TOD#.

DATE_AND_TIME#

o DT#.

Algunos ejemplos para la especificacin de fechas y horas se


muestran a continuacin:
DATE#1994-06-25 o D#1994-06-25.
date#1994-06-25

o d#1994-06-25.

TIME_OF_DAY#15:36:55.36 o TOD#15:36:55.36.
date_and_time#1994-06-25-15:36:55.36 o
dt#1994-06-25-15:36:55.36

4.6.-TIPOS DE DATOS.
El estndar reconoce los siguientes tipos de datos:

Datos elementales.

Datos genricos.

Datos derivados.

A continuacin se detallan cada uno de ellos.

114

Datos elementales. En el cuadro 4.2 se muestran todos los datos


elementales definidos en el estndar, con sus respectivas palabras claves,
nmero de bits y rango de valores.

Datos genricos.

Estos datos pueden ser usados en la

especificacin de entradas y salidas de las funciones y bloques estndar.


Los datos genricos van precedidos de la palabra clave ANY y se deben

115

segur ciertas reglas definidas en el documento del estndar para su


implementacin y aplicacin.
Datos derivados.

Estos son datos que pueden ser creados o

definidos por el usuario o fabricante de equipos.


siguiente declaracin:

TYPE ...END TYPE.

Para tal fin se usa la

Los datos creados de esta

manera pueden ser usados como datos elementales. El cuadro 4.3 muestra
algunas formas vlidas para crear datos derivados.

El valor inicial de un dato derivado es; en el caso de datos numerados


y de sub-rango, el primer valor de la lista o rango que se especifique. Se
puede indicar tambin el valor inicial usando el operador := . En el cuadro
4.4 muestran ejemplos de valores iniciales de datos elementales y datos
derivados.

116

117

4.7.-VARIABLES.
Son identificadores de datos de objetos asociados con entradas,
salidas y localidades de memoria de un PLC, cuyo contenido puede variar.
Una variable puede ser declarada como un tipo de dato elemental o derivado.
Se distinguen en la norma dos tipos de variables: las variables de simple
elemento y las variables de mltiples elementos.
Las variables de elemento simple son aquellas que representan un
solo dato de los tipos definidos anteriormente.

Este tipo dato puede ser

representado en forma simblica o de mediante una representacin directa.


La representacin directa implica la asociacin de un dato elemental a una
localidad fsica o lgica en las entradas, salidas o localidades de memoria del
PLC.
Las variables se pueden identificar usando las normas para los
identificadores dadas en la seccin 4.3.1. La representacin directa se hace
anteponiendo el smbolo de porcentaje (%), concatenado con un prefijo de
localizacin y uno de longitud, ambos sealados en el cuadro 4.5,
adicionalmente uno o ms enteros no asignados separados por un punto (.).

118

El signo de porcentaje y los prefijos de localizacin I, Q y M, siempre


estarn presentes en la representacin de una variable directa. En el cuadro
4.6 se muestran algunos ejemplos de estas variables.

Cualquiera sea la forma de identificar la variable se requiere que las


variables sean completamente definidas en la seccin de configuracin
usando la siguiente directiva:
VAR_CONFIG...END_VAR.
Las variables de mltiples elementos que se definen en el estndar
son las variables del tipo arreglos y estructuras.
Un arreglo es una coleccin de datos del mismo tipo referidos con uno
o ms valores suscritos dentro de un corchete y separados por coma.
Ejemplos:
% OUTARY [ %MB6, SYM ] = INARY [ 0 ] + INARR [ 7 ] INAR [
%MB6] * IW62
% IENT [ 5, 5 ].
Las variables estructuradas se designan con datos del tipo
estructurado, es decir como una coleccin de nombres de elementos. Un
elemento de una variable estructurada se representa por dos o ms
identificadores o arreglos de acceso, separados por un punto. El primer
identificador representa el nombre del elemento de la estructura y los

119

identificadores

siguientes

representa

la

secuencia

de

nombre

de

componentes para ingresar al elemento de dato en particular dentro de la


estructura.
Por ejemplo si la variable MODULE_5_CONFIG, ha sido declarada
como tipo ANALOG_16_IMPUT_CONFIGURATION, como se muestra en el
cuadro 4.6. Las siguientes instrucciones en lenguaje ST causarn que el
valor SINGLE_ENDED, sea asignado al elemento SIGNAL_TYPE, de la
variable MODULE_5_CONFIG, mientras que el valor BIPOLAR_10V, ser
asignado al elemento RANGE del quinto CHANNEL, del elemento
MODULE_5_CONFIG.
MODULE_5-CONFIG.SIGNAL_TYPE := SINGLE_ENDED;
MODULE_5_CONFIG.CHANNEL[ 5 ].RANGE := BIPOLAR_10V.
En la iniciacin de un elemento del programa, las variables asociadas
pueden tomar alguno de los siguientes valores:

El valor que tena al detenerse el programa en algn momento.

Un valor inicial definido por el usuario, usando el calificador


RETAIN.

El valor por defecto segn el tipo de variable.

El valor inicial de las variables y sus elementos de configuracin


asociados deben ser como se indica a continuacin:

Si la operacin es una restauracin en caliente, el valor de las


variables retenidas debe ser el retenido.

Si la operacin es una restauracin en fro, el valor inicial de las


variables retenidas debe ser el asignado por el usuario, o su valor
por defecto cuando no lo especifica el usuario.

120

Las variables sin retencin se iniciarn por el valor asignado por el


usuario o su valor por defecto.

Las variables que representan entradas de PLC se inician de una


manera defina en la implementacin.

Cada programa y unidad de programacin debe contener una seccin


declarativa donde se especifica el tipo de variable usada en la unidad
organizativa.
La seccin declarativa debe ser iniciada con las palabras reservadas
sealadas en el cuadro 4.7, seguidas en el caso de VAR por alguno de los
siguientes calificadores: RETAIN, NON_RETAIN o CONSTANT.

121

En el caso de las palabras clave VAR_IMPUT o VAR_OUTPUT, los


calificadores que siguen pueden ser RETAIN o NON_RETAIN.

continuacin se contempla las declaraciones separadas por (;) y finalizada


con la palabra reservada END_VAR.

Cuando existan declaraciones de

valores iniciales para las variables, se debe hacer en esta seccin.


Dentro de los bloque de funciones y de los programas, se pueden
declarar variables de la siguiente manera: VAR_Temp....END_VAR. Estas
variables son llamadas e inicializadas cada vez que se invoque al programa o
bloque o sea que el valor de las variables no persiste al cada llamado.
El rango de validez de las declaraciones de variables contenidas en
cada parte del programa, est limitada a la unidad organizativa en la cual ha
sido declarada. Esto es; las variables no pueden ser llamadas por otras
unidades de programacin, exceptuando los argumentos explcitos que
pasan a travs de las variables cuando han sido declaradas como entradas o
salidas de la mencionada unidad. La nica excepcin a esta regla es el caso
en el cual una variable es definida como global. Tales variables son solo
accesibles a travs de una declaracin VAR_EXTERNAL en la unidad de
programa. El tipo de variable declarada en un bloque VAR_EXTERNAL debe
corresponder con los declarados en el bloque VAR_GLOBAL del programa, o
configuraciones asociadas. Un ejemplo estas declaraciones se muestra a
continuacin.
DECLARACIN EN ELEMENTOS SUPERIORES:
VAR_GLOBAL X ...
VAR_GLOBAL Y ...
VAR_GLOBAL CONSTANT T ...
DECLARACIN EN ELEMENTOS CONTENIDOS
VAR_EXTERNAL X ...
VAR_EXTERNAL CONSTANT Y
VAR_EXTERNAL CONSTANT T ...

122

La asignacin de una localizacin fsica o lgica de una variable


representada directamente dentro del PLC debe ser acompaada de la
palabra reservada AT.
El cuadro 4.8 y 4.9 muestran ejemplos de designacin de variables.

123

124

4.8.-UNIDADES DE ORGANIZACIN DE PROGRAMAS


(POU).
Dentro de la norma IEC 61131 3, los programas, bloques
funcionales y funciones, reciben el nombre de unidades de organizacin de
programa (programan organization units POU). Dichas unidades pueden ser
desarrolladas y presentadas por los fabricantes o por los usuarios de
controles programables. El estndar suministra los medios para tal fin.
Las unidades de programacin no son recursivas; es decir el llamado
de una unidad de programacin no debe producir el llamado de la misma
unidad de programacin.
Se estudia a continuacin cada una de estas unidades de
organizacin del programa en forma separada.

4.8.1.-GENERALIDADES ACERCA DE FUNCIONES.


Son unidades de programacin que al ser ejecutadas produce
exactamente un elemento de dato, el cual es considerado como el resultado
de la funcin. Adicionalmente se pueden producir muchos datos los cuales
se comunican con el exterior del bloque de funcin a travs de los bloques de
declaracin de variables VAR_OUTPUT, VAR_IN_OUT.

Como cualquier

elemento de dato el resultado de la funcin puede ser del tipo de


multivalores; es decir, un arreglo o una estructura. El llamado o invocacin
de una funcin puede hacerse a travs del uso de lenguaje textual o tambin
como el operando de una expresin.
La declaracin de una funcin dentro de un programa, puede
hacerse en lenguaje textual o en lenguaje grfico.

En la figura 4.1 se

muestra un ejemplo de declaracin de una funcin dentro de un programa.

125

(*

Ejemplo de declaracin de funcin en st *)

FUNCTION SIMPLE_FUN : REAL


VAR_IN_OUT COUNT : INT ;
END_VAR
VAR COUNT1 : INT ;
END_VAR
COUNT1 := ADD(COUNT,1); (* instrucciones de la funcin*)
COUNT:=COUNT1;
SIMPLE_FUN:=A*B/C;
END_FUNCTION

Figura 4. 1. Declaracin de una funcin en lenguaje de texto.

La declaracin de una funcin en lenguaje textual consta de los


siguientes elementos.

La palabra reservada FUNCTION, seguido por un identificador del


nombre de la funcin declarada. A continuacin el signo ( : ) y la
declaracin del tipo de dato que devolver la funcin.

Un

bloque

de

declaracin

de

variables

de

entrada

VAR_INPUT...END_VAR, donde se especifican el nombre, tipo de


variable y valor inicial si se va a especificar.

De ser requerido tambin se define un bloque de declaracin de


variables

de

entrada

VAR_OUTPUT...END_VAR

y/o

y/o

entrada/salida,

VAR_IN_OUT...END_VAR,

especificando el nombre de la variable, su tipo y su valor inicial, si


aplica.

Un tercer bloque de definicin de variables puede ser requerido,


este es: VAR...END_VAR, en este bloque se especifican nombre y
tipo de variables internas de la funcin.

126

A continuacin se colocan las instrucciones de la funcin, cuidando


de asignar al nombre de la funcin como variable de salida.

Se usa la palabra reservada END_FUNCTION para concluir con el


procedimiento de declaracin de la funcin.

En la figura 4.2 se muestra el mismo ejemplo de declaracin de


funcin de la figura 4.1, pero ahora en lenguaje grfico.

Figura 4. 2. Declaracion de funcin utilizando lenguaje grfico.

Los pasos a seguir para realizar una declaracin de funcin en


lenguaje grfico son los siguientes.

127

Se deben usar las palabras reservadas FUNCTION y


END_FUNCTION o equivalentes grficos, al inicio y al final de
la declaracin de la funcin.

Una especificacin grfica del nombre de la funcin y los


nombres, tipos y posibles valores iniciales de las variables tanto
del resultado de la funcin, como de las variables (entradas,
salidas, entradas/salidas).

Una especificacin de nombres, tipos, posibles valores iniciales


de las variables internas de la funcin, o sea, las usadas en la
declaracin VAR...END_VAR.

Las instrucciones que componen el cuerpo de la funcin


especificadas en forma grfica.

Las variables declaradas con los bloques VAR...END_VAR son


llamadas e inicializadas cada vez que se invoque la funcin, o sea, que su
valor no persiste en cada llamado.
El rango de validez de las variables declaradas dentro de un
determinado bloque de definicin, est limitado a la unidad de organizacin
donde se ha hecho la declaracin. Lo anterior significa que las variables
declaradas no podrn ser llamadas por otras unidades de programas, con
excepcin de los argumentos explcitos que pasan a travs de las variables
declaradas de entrada y/o salida de esa unidad. Tambin como excepcin
de la regla es la definicin de una variable como global (VAR_GLOBAL).
Tales variables son solo accesibles a travs de un bloque VAR_EXTERNAL
en la unidad de programacin.
El tipo de variable declarada en un bloque VAR_EXTERNAL debe
corresponder con los declarados en el bloque VAR_GLOBAL del programa o
configuracin asociada.

El cuadro 4.10 muestra varios ejemplos de

declaraciones de variables globales y su uso en unidades internas.

128

Para la invocacin o llamado de una funcin en lenguaje textual se


deben seguir las siguientes reglas:

La asignacin de argumentos de entrada debe estar en


concordancia con lo sealado en el cuadro 4.11.

La designacin de argumentos formales VAR_OUTPUT puede ser


vaco o con variables.

Se deben asignar variables a los argumentos VAR_IN_OUT.

La asignacin de argumentos a VAR_INPUT, puede ser: vaco,


variables, constantes o llamados a funciones. En el ltimo caso el
resultado de la funcin es usado como argumento.

En el lenguaje grfico la funcin se representa siguiendo las siguientes


reglas.

La forma del bloque debe ser rectangular o cuadrada.

Las dimensiones y proporciones del bloque pueden variar


dependiendo del nmero de entradas y otra informacin adicional
desplegada.

129

La direccin de procesamiento del bloque es de izquierda a


derecha. (Las entradas a la izquierda y las salidas a la derecha)

El smbolo o el nombre del bloque debe ser colocado dentro del


bloque.

Los nombres de las variables de entrada y de salida deben


aparecer dentro del bloque, en el lado izquierdo y derecho
respectivamente. El uso esta sujeto a lo siguiente.

Cuando no se dan los nombres a las variables de entrada en


funciones

estndar,

se

asumen

por

defecto

IN1,

IN2,...aplicados de arriba hacia abajo.

Cuando una funcin estndar posee una sola variable de


entrada sin nombre, se asume IN como nombre por defecto.

El nombre por defecto puede no aparecer en el lado


izquierdo de la representacin grfica.

Se pueden usar entradas de habilitacin del bloque (EN) o salidas


de finalizacin de operaciones del bloque (ENO). Dichas entradas
y salidas deben ser representadas en la parte superior del bloque,
en los lados izquierdo y derecho respectivamente.

El resultado del bloque debe ser representado en la parte superior


derecha del bloque, excepto si hay una salida ENO, en cuyo caso
el resultado se muestra en la posicin posterior de la salida ENO.

Si no hay ningn valor mostrado en la parte superior derecha del


bloque, se usar el nombre de la funcin como salida.

Los argumentos de conexin se muestran como lneas de flujo.

La negacin de una funcin Booleana debe ser mostrada con un


crculo abierto, justo en la interseccin de la lnea de entrada con el
bloque.

Todas las entradas y salidas del bloque de funcin se representan


con una lnea en lado correspondiente del bloque.

130

Los

resultados

de

evaluacin

del

bloque

de

funcin

(VAR_OUTPUT), pueden conectarse a una variable de entrada de


otro bloque de funcin o puede permanecer desconectado.

Se producir un error si cualquiera de las variables VAR_IN_OUT,


en una llamada a un bloque de funcin o a una funcin dentro de
una POU, no se encuentra representada apropiadamente. Una
variable

VAR_IN_OUT,

se

encuentra

representada

apropiadamente si est conectada grficamente a la izquierda o


asignada a travs del operador := en una llamada textual; a una
variable declarada (sin calificador CONSTANT) en un bloque
VAR_IN_OUT, VAR, VAR_OUT o VAR_EXTERNAL, de una POU
contenida en una POU ms general o superior, o un apropiado
bloque de VAR_IN_OUT en otro bloque de funcin contiguo o
llamado de funcin.

Una representacin apropiada de una variable VAR_IN_OUT de


una instancia de bloque funcional o llamado de funcin, puede ser
conectada grficamente a la derecha de un bloque o asignada
mediante el uso del operador := en una llamada textual, de una
variable declarada en bloques VAR_IN_OUT o VAR_EXTERNAL,
de la POU contenida.

Habr un error si tal conexin presenta

ambigedad en el valor de la variable a conectar.


La figura 4.3 muestra ejemplos de funciones grficas y sus
equivalentes textuales.

La funcin ADD incluye nombres de argumentos

formales no definidos, la funcin SHL nombres de argumentos formales


definidos. La funcin INC es definida por el usuario y contiene nombres de
argumentos definidos formalmente.
Algunas formas para el llamado de una funcin a travs de lenguaje
textual se muestran en el cuadro 4.11. La invocacin textual de una funcin
consiste en el nombre de la funcin seguido por una lista de argumentos

131

separados por una coma (,) cuando se usa lenguaje ST y por un parntesis
cuando se usa lenguaje IL.

Figura 4.3. Ejemplos de funciones representadas en forma grfica y


su equivalente textual.
En el ejemplo No. 1 del cuadro 4.11, la lista de argumentos tiene la
forma de un conjunto de asignaciones de valores actuales, para los nombres
de argumentos formales (lista de argumentos formales), las designaciones
son las siguientes: 1.) asignacin de valores a las entradas y a las variables
in_out, usando el operador := . Y 2.) asignaciones de valores a las variables
de salida usando el operador =>. El orden de la lista no es significativo.
Cualquier variable con valor no asignado dentro de la lista asumir el valor
por defecto.

132

En el segundo ejemplo del cuadro 4.11 (no hay una lista de


argumentos formales) la lista de argumentos debe contener exactamente el
mismo nmero de argumentos, con el mismo orden y el mismo tipo de datos
dado en la definicin de la funcin, se exceptan los argumentos de control
de ejecucin EN y ENO.
Para el control de ejecucin de una funcin puede usarse una entrada
booleana (EN), una salida booleana (ENO) o ambas.

Dichos controles

pueden ser suministrados por el fabricante o definidos por el usuario,


utilizando para tal fin la siguiente declaracin:
VAR_INPUT EN : BOOL := 1; END_VAR.
VAR_OUTPUT ENO : BOOL; END_VAR.
Cuando se usan estas variables en una funcin, la ejecucin de las
instrucciones definidas dentro de la funcin sern controladas de acuerdo a
las siguientes reglas.

Si el valor de EN es falso (0) cuando la funcin es llamada, ninguna


operacin es realizada y el valor de ENO es colocado en falso (0)
por el sistema de control del programa.

En cualquier otro caso el valor de ENO ser ajustado en verdadero


(1) por el sistema de control del programa y las operaciones
definidas en la funcin se ejecutan.

Estas operaciones pueden

incluir asignaciones a la variable ENO.

Si ocurre algn error durante la ejecucin de una funcin estndar


la salida ENO de esa funcin es colocada en falso (0) por el
sistema de control del programa, o el fabricante debe especificar
otra disposicin.

Si la salida ENO es falsa, el valor que asumen las otras salidas de


la funcin (VAR_OUTPUT, VAR_IN_OUT y el resultado de la
funcin) se definirn como una caracterstica de implementacin
por parte del fabricante.

133

A continuacin se vern tres conceptos importantes en la definicin de


los tipos de variables en funciones. Estos son: tipificacin, sobrecarga y
tipos de conversin.
Una funcin estndar, un tipo de bloque de funcin, un operador o una
instruccin, se dice que estn sobrecargadas, cuando pueden operar varios
tipos de elementos de dato de entrada dentro de una designacin de tipo de
dato genrico.

Por ejemplo, una funcin sobrecargada con el operador

genrico ANY_NUM, puede operar con los siguientes tipos de datos:


LREAL, REAL, DINT, INT, y SINT.
Cuando un sistema de control programable soporta una funcin
estndar, un tipo de bloque de funcin, un operador o una instruccin, stos
se aplicarn a todos los tipos de datos definidos en una definicin genrica
que sea soportada por el sistema. Por ejemplo si un PLC soporta la funcin
ADD sobrecargada y los tipos de datos SINT, INT, y REAL, el sistema
soportar la funcin ADD con tipos SINT, INT y REAL.
Cuando una funcin esta normalmente tipificada, se debe incluir un
operador para indicar tal situacin. Esto es, la salida y la entrada estn
restringidas a un determinado tipo de dato.

La tipificacin se logra

agregando a la funcin el signo de subrayado y un tipo de dato determinado.


En la figura

4.4 se muestran ejemplos de funciones sobrecargadas y

tipificadas.

Figura 4.4 . Ejemplos de funciones sobrecargadas y tipificadas.

134

Cuando el tipo de resultado de una funcin estndar es genrico,


entonces todas las variables de entrada deben ser del mismo tipo, de no ser
as, se deben convertir al tipo apropiado en la invocacin a la funcin.
Ejemplos de esto se muestran en la figura 4.5.

Figura 4. 5. Ejemplos de funciones con conversin de variables.

135

4.8.2.-FUNCIONES ESTNDAR.
La norma IEC 61131 3, define un conjunto de funciones bsicas
comunes

estndar

para

todos

los

lenguajes

de

controladores

programables. Las funciones estndar se agrupan de la siguiente manera:

Funciones de conversin de tipos de datos.

Funciones numricas.

Funciones de cadenas de bits.

Funciones de seleccin y comparacin.

Funciones de cadenas de caracteres.

Funciones con tipos de datos de tiempo.

Funciones con tipos de datos numerales.

A continuacin se detallan cada uno de los grupos de funciones


estndar sealados por la norma. Cuando se muestra una representacin
grfica de una funcin estndar, una declaracin textual equivalente ser
presentada.
Funciones de conversin de tipos de datos: Estas funciones tienen
la siguiente forma *_TO_**, donde * es el tipo de variable de entrada y **
es el tipo de variable de salida. Por ejemplo INT_TO_REAL, la cual convierte
un entero en un real. La exactitud de la conversin es un parmetro de
implementacin de los sistemas de PLC. En la figura 4.6 se muestran las
funciones estndar con un ejemplo de uso y su respectivo equivalente en
lenguaje estructurado ST.
Funciones numricas:

La figura 4.7 muestra la representacin

grfica estndar, los nombres de las funciones, los tipos de variables de


entrada y salida, y la descripcin de funciones de valor numrico simple.
La figura 4.8 muestra algo similar pero para funciones aritmticas de
dos o ms variables. Estas funciones estarn sobrecargadas con todos los
tipos de variables numricas.

136

Figura 4. 6. Funciones estndar de conversin de datos.

137

Figura 4. 7. Funciones aritmticas estndar de variable simple.

Figura 4. 8. Funciones aritmeticas estndar con dos o ms


variables

138

Funciones de cadenas de bits: La representacin grfica estndar,


el nombre de la funcin y la descripcin de las funciones de rotacin o de
cambio de las variables de cadenas de bits, se muestran en la figura 4.9.
Estas funciones estn sobrecargadas en todos los tipos de variables de
cadenas de bits.
Adicionalmente, la figura 4.10, muestra la representacin estndar, el
nombre y smbolo de la funcin y la descripcin de las funciones Booleanas
binarias. Estas funciones son extensibles, con excepcin de la funcin NOT
y adems estn sobrecargadas en todos los tipos de variables de cadena de
bits.

Figura 4. 9. Funciones de cadenas de bits de una sola variable.

Funciones de seleccin y comparacin: La figura 4.11, se muestra


la representacin grfica estndar, el nombre de la funcin y la descripcin
de las funciones de seleccin. Estas funciones estn sobrecargadas para
todos los tipos de datos.
Las funciones de comparacin, se muestran en la figura 4.12, todas
estas funciones son extensibles con excepcin de la funcin NE.

139

Figura 4. 10. Funciones de cadenas de bits de varias variable.

La comparacin entre cadenas de bits, se hace desde el bit ms


significativo hasta el menos significativo de la cadena. Si las cadenas que se
comparan son de diferente longitud, se llenan de ceros a la izquierda de la
cadena de menor tamao.
Funciones de cadenas de caracteres:

Todas las funciones

definidas para la seleccin y comparacin, pueden ser aplicadas a las


variables de cadenas de caracteres.

Cuando se comparan cadenas de

diferente longitud, la mas corta ser rellenada con caracteres de valor cero,
hasta alcanzar la longitud de la cadena ms larga.

La comparacin se

realiza desde la izquierda hacia la derecha, basndose en el valor numrico


del cdigo del carcter. Por ejemplo; la cadena de carcter Z, ser mayor
que la cadena AZ y AZ a su vez es mayor que ABC.
Las funciones adicionales de cadenas de caracteres, se encuentran
en la figura 4.13, donde se representa para cada funcin, su grfica estndar,
el nombre y su descripcin. Para estas operaciones, la posicin del carcter

140

dentro de la cadena ser numerado de la siguiente forma 1,2,3,...L,


comenzando con la posicin de carcter ms a la izquierda, siendo L la
longitud de la cadena.

Figura 4. 11. Funciones de seleccin

141

Figura 4. 12. Funciones de comparacin.

Figura 4. 13. Funciones de cadena.

142

Figura 4. 13. ...Continuacin.

143

Funciones de tiempo.

Adems de las funciones de seleccin y

comparacin que se definieron anteriormente, la combinacin de entradas y


salidas de datos de manejo de tiempo que se muestra en el cuadro 4.12,
pueden ser usadas con las funciones asociadas.

Funciones para tipos de datos enumerados:

Las funciones de

seleccin y comparacin que se muestran en el cuadro 4.13 y que fueron


definidas con anterioridad, pueden ser aplicadas a datos tipos numerados
definidos en la seccin 4.3.3.

144

4.8.3.-GENERALIDADES DE BLOQUES FUNCIONALES (FBs).


Para propsitos de lenguajes de PLC, un bloque funcional es una
unidad de programacin que al ser ejecutada produce uno ms valores.
Los bloques funcionales son los equivalentes de los circuitos
integrados, ICs, que representan funciones de control especializadas. Los
FBs contienen tanto datos como instrucciones, y adems pueden guardar
los valores de las variables (que es una de las diferencias con las funciones).
Tienen una interfaz de entradas y salidas bien definido y un cdigo interno
oculto, como un circuito integrado o una caja negra. De este modo,
establecen

una

clara

separacin

entre

los

diferentes

niveles

de

programadores, o el personal de mantenimiento. Un lazo de control de


temperatura, PID, es un excelente ejemplo de bloque funcional. Una vez
definido, puede ser usado una y otra vez, en el mismo programa, en
diferentes programas o en distintos proyectos. Esto lo hace altamente
reutilizable.
Los bloques funcionales pueden ser escritos por el usuario en alguno
de los lenguajes de la norma IEC, pero tambin existen FBs estndar
(biestables, deteccin de flancos, contadores, temporizadores, etc.). Existe la
posibilidad de ser llamados mltiples veces creando copias del bloque
funcional que se denominan instancias. Cada instancia llevar asociado un

145

identificador y una estructura de datos que contenga sus variables de salida


e internas.
La ejecucin de las operaciones de un bloque funcional se hace de
acuerdo a reglas de cada tipo de lenguajes utilizado en su programacin,
mas adelante se detalla este aspecto.
Cualquier tipo de FB que haya sido declarado, puede ser usado en la
declaracin de otro FB o tipo de programa.
El alcance de un FB ser local al POU en el cual se hace el llamado,
siempre y cuando no sea declarado como un bloque global a travs de la
instruccin VAR_GLOBAL BLOCK, como se ver ms adelante.
La representacin de una instancia de un bloque funcional se muestra
en la figura 4.14. En lenguaje estructurado se realiza la declaracin usando
la construccin VAR...END_VAR.

En lenguaje grfico se usa una

representacin del bloque funcional, con el nombre del FB dentro del bloque
y el nombre de la instancia o copia fuera del mismo. Por lo dems se siguen
las normas de representacin de funciones ya vistos.

Figura 4. 14. Representacin de un bloque funcional.

Las variables y entradas de una instancia pueden ser representados


como tipos de datos estructurado. Al igual que en las funciones la negacin
de la entrada o de la salida de una variable booleana, se hace con un crculo
abierto justo en la interseccin de la lnea de entrada con el bloque.

146

La asignacin de valores a la variable de salida no est permitido


excepto dentro del bloque funcional. La asignacin de valores de entrada
solo se permite en el llamado del bloque funcional. Los usos permitidos de
entradas y salidas son resumidos en el cuadro 4.14 para el ejemplo mostrado
en la figura 4.14.

Uso de las variables EN y ENO en bloques funcionales: al igual


que para las funciones, se puede disponer de una entrada booleana EN, y
una salida booleana ENO, para los bloques funcionales.

Pueden ser

definidas por el fabricante del PLC o por un usuario, para tal fin se usan las
siguientes declaraciones:
VAR_INPUT EN : BOOL := 1 ; END_VAR
VAR_OUTPUT ENO : BOOL ; END_VAR.
Cuando se usan las variables la ejecucin del bloque funcional se
hace de la siguiente manera:

Si EN es falso cuando se llama a la instancia, la asignacin de los


parmetros actuales del bloque funcional puede o no ser hecha,
esto depender de la implementacin del fabricante.

Las

operaciones descritas dentro del bloque funcional no se realizarn


y el valor de ENO es colocado en falso (0) por el programa de
control del sistema.

147

En cualquier otra circunstancia el valor de ENO es colocado en


verdadero (1).

Se asignan los parmetros a las entradas del

bloque funcional y se realizan las operaciones. Las operaciones


pueden incluir la asignacin de valor a la variable ENO.

Si ocurre un error en la ejecucin del programa, el valor de ENO


debe ser ajustado a falso (0) por el programa de control del
sistema.

Si el valor de ENO es falso (0) los valores de las salidas


(VAR_OUTPUT) mantienen los mismos estados que antes del
llamado del bloque funcional.

Declaracin de un bloque funcional: En la figura 4.15 se muestra


un ejemplo de declaracin de bloque funcional, tanto en lenguaje de texto
(ST) como en lenguaje grfico (FDB). La forma de declaracin es similar a la
usada para las funciones con algunas diferencias que se sealan a
continuacin y se resumen en el cuadro 4.15.
a. Las palabras claves para la definicin del bloque funcional son
FUNCTION_BLOCK...END_FUNCTION_BLOCK
b. Se puede usar el calificador RETAIN para las variables internas y
de salida del bloque funcional. Esto se muestra en los ejemplos 1,
2 y 3 del cuadro 4.15.
c. Los valores de las variables que pasan al bloque funcional a travs
de la declaracin VAR_EXTERNAL pueden ser modificadas dentro
del bloque como lo muestran los ejemplos 5, 6 y 7 del cuadro 4.15.
d. Los valores de salida de una instancia de un bloque funcional cuyo
nombre es pasado dentro de un bloque funcional a travs de las
declaraciones VAR_EXTERNAL, VAR_INPUT o VAR_IN_OUT,
pueden ser usadas, pero no modificadas dentro del bloque
funcional. Esto se muestra en los ejemplos 5, 6, y 7 del cuadro
4.15.

148

e. Un bloque funcional cuyo nombre de instancia ha sido pasado


dentro de otro bloque funcional a travs de las instrucciones
VAR_INPUT o VAR_EXTERNAL, puede ser llamado desde dentro
del bloque funcional como lo muestran los ejemplos 5, 6 y 7 del
cuadro 4.15.
f. En declaraciones textuales los calificadores R_EDGE y F_EDGE,
pueden ser usados para definir una funcin de deteccin de bordes
o deteccin de flancos con entradas booleanas. Esto induce la
declaracin implcita de bloques funcionales estndar R_TRIG y
F_TRIG, los cuales se detallan ms adelante. Ejemplos de estas
construcciones se muestran en los ejemplos 8 y 8b del cuadro
4.15.
g. En la construccin grafica de las funciones de deteccin de limites
se usan los caracteres mayor que (>) y menor que (<) como se
muestra en los ejemplos 9 y 9b del cuadro 4.15.
h. Si se usan datos genricos en las declaraciones de entradas y
salidas de bloques funcionales estndar, las reglas para inferir los
tipos de datos de salida actuales de tales bloques, sern parte de
la definicin de dichas funciones.
i. La notacin de asterisco definida para las funciones, puede ser
usada en la declaracin de variables internas de un bloque
funcional.
Como se muestra en la figura 4.16, solo variables o nombres de
instancias de bloques funcionales pueden ser pasadas dentro de un bloque
funcionas a travs de la declaracin VAR_IN_OUT, ni funciones, ni bloques
funcionales pueden pasarse usando dicha instruccin. Esto se hace con el
fin de impedir modificaciones de tales salidas. Se pueden construir cascadas
de declaraciones VAR_IN_OUT, tal y como se ilustra en la figura 4.16 c.

149

Figura 4. 15. Ejemplo de declaracin de un bloque


funcional.

150

151

Figura 4. 16. Declaracin y uso de variables de entrad-salida (inout) en bloques funcionales.

152

Figura 4. 17. Uso del nombre de un bloque funcional como variable


de entrada (forma grfica)

153

Figura 4. 18. Uso del nombre de un bloque funcional como variable


in-out (forma grfica)

154

Figura 4. 19. Uso del nombre de un bloque funcional como


variable externa (forma grfica)

155

Figura 4. 20. Representacin grfica de funciones de limites de


entrada.

4.8.4. BLOQUES FUNCIONALES ESTNDAR.


La norma IEC-61131-5 establece los siguientes bloques funcionales
estndar para los PLC:

Bloques biestables.

Bloques de deteccin de flancos.

Bloques funcionales para conteo (contadores).

Bloques funcionales para temporizacin (temporizadores)

Bloques funcionales de comunicacin.

Los bloques funcionales estndar pueden ser sobrecargados y


tambin tener entradas y salidas extensibles.
Se describen a continuacin los bloques funcionales estndar.

156

Bloques biestables: La figura 4.21 muestra la representacin y el


cuerpo de un elemento biestable estndar.

Figura 4. 21. Bloques funcionales estndar biestables.

Bloques de deteccin de flancos: En la figura 4.22 se muestran los


bloques funcionales estndar para la deteccin de flancos de subida y de
bajada de ondas cuadradas. El comportamiento de estos bloques debe ser
equivalente a las definiciones dadas a continuacin:
a. La salida Q del bloque funcional estndar R_TRIG se ajusta al
valor booleano 1 en la primera ejecucin del bloque, luego de que
se produzca el cambio de 0 a 1 de la variable CLK. Q retornara a
cero en la siguiente ejecucin.

157

b. La salida Q del bloque funcional estndar F_TRIG se ajusta al valor


booleano 1 en la primera ejecucin del bloque, luego de que se
produzca el cambio de 1 a 0 de la variable CLK. Q retornara a cero
en la siguiente ejecucin.

Figura 4. 22. Bloques funcionales estndar para la deteccin de


flancos.
Contadores:

La representacin grfica para bloques funcionales

estndar contadores, con sus respectivas variables de entrada y salida se


muestra en la figura 4.23. Las operaciones de dichos bloques se muestran
en los correspondientes cuerpos de la funcin descritos en lenguaje
estructurado (ST).
Temporizadores: En la figura 4.23 se muestra la representacin de
bloques funcionales de: generadores de pulsos, temporizador al trabajo (ondelay) y temporizador al reposo (off-delay). Se detalla tambin en la figura
4.23 los diagramas de tiempo correspondientes a cada uno de los bloques
funcionales representados.

158

Figura 4. 23. Bloques funcionales estandar para contadores.

159

Figura 4. 24. Bloques funcionales estndar de


temporizadores.

160

Bloques funcionales estndar de comunicacin:

Estos bloques

son definidos en el estndar IEC-61131-5. Aunque no son tratados en el


presente texto, permiten las siguientes funciones en la programacin de las
comunicaciones: verificacin de dispositivos, elegir la adquisicin de un dato,
programar la adquisicin de un dato, control paramtrico, control de
interfases, conexin direccin y proteccin.

4.8.5.-GENERALIDADES ACERCA DE PROGRAMAS.


Segn la norma IEC-61131-1, un programa es: un arreglo lgico de
todos los elementos y construcciones de un determinado lenguaje de
programacin, necesarios para el manejo adecuado de las seales de
procesamiento, requeridas para el control de una mquina o proceso a travs
de un sistema de control programable.
La declaracin y uso de los programas es similar a las formas usadas
para declarar bloques funcionales, con las caractersticas adicionales que se
muestran en el cuadro 4.16 y las siguientes diferencias:

Las palabras reservadas para la definicin del un programa son:


PROGRAM...END_PROGRAM.

Un

programa

puede

contener

construcciones

del

tipo

VAR_ACCES...END_VAR, la cual provee al programa de un medio


para especificacin de variables que pueden ser llamadas por
algunos de los servicios de comunicacin especificados en el
estndar IEC-61131-5. Una va de acceso asociada con cada una
de tales variables con una entrada (input), o salida (output) o una
variable interna del programa.

El formato y uso de stas

declaraciones se muestra en el estndar IEC-61131-5.

Los programas solo pueden ser copiados dentro de los bloques de


recursos, mientras que los bloques funcionales pueden ser

161

copiados dentro de los programas o dentro de otros bloques


funcionales.

Un programa puede contener asignacin de localidades de


variables, tal y como se describi en la seccin 4.4 de declaracin
de variables, para la declaracin de sus variables internas y
globales.

La extensin de un programa es un parmetro de implementacin del


fabricante.

CAPTULO V
DEFINICIN DE LOS LENGUAJES ESTNDAR DE LA NORMA
IEC-61131-3.

163

CAPTULO V
DEFINICIN DE LOS LENGUAJES ESTNDAR DE LA NORMA
IEC-61131-3.

5.1.-INTRODUCCIN.
Como ya es conocido la norma IEC-61131-3 establece cuatro
lenguajes de programacin para los controladores programables; estos son
dos lenguajes textuales (el texto estructurado ST y la lista de instrucciones
IL) y dos lenguajes grficos (los diagramas de contactos LD y los diagramas
de bloques funcionales FBD).

Cualquier controlador programable cuya

programacin opere bajo la norma IEC, soporta al menos uno de los


lenguajes estndar mencionado. Con el enorme desarrollo que ha tenido y
sigue teniendo el software de programacin es comn que algunos de los
paquetes o sistemas de programacin permitan la elaboracin de programas
en ms de uno de los lenguajes, pudindose obtener de manera instantnea
los programas escritos en diferentes lenguajes.
En el presente captulo se terminan de delinear los aspectos generales
de la semntica de cada uno de los lenguajes. La presentacin se hace
agrupando primeramente los lenguajes textuales, sealando sus aspectos
comunes y luego los detalles particulares del lenguaje LD y ST. Se repite el
esquema de presentacin para los lenguajes grficos con sus aspectos
generales y comunes tanto al lenguaje LD como al FBD y posteriormente los
aspectos particulares de cada uno de ellos.
La lectura e interpretacin de este captulo requiere de haber realizado
una lectura detallada del captulo IV ya que existen mltiples referencias a las
secciones de dicho captulo.

164

5.2.-ELEMENTOS

COMUNES

DE

LOS

LENGUAJES

TEXTUALES.
Los elementos textuales definidos en la seccin 4.3 como elementos
comunes del estndar IEC 63111-3, son aplicados a los lenguajes textuales y
en particular las siguientes construcciones.
TYPE...END_TYPE.
VAR...END_VAR.
VAR_INPUTEND_VAR.
VAR_OUTPUTEND_VAR.
VAR_IN_OUTEND_VAR.
VAR_EXTERNALEND_VAR.
VAR_TEMPEND_VAR.
VAR_ACCESSEND_VAR.
VAR_GLOBALEND_VAR.
VAR_CONFIGEND_VAR.
FUNCTIONEND_FUNCTION.
FUNCTION_BLOCKEND_FUNCTION_BLOCK.
PROGRAMEND_ROGRAM.
STEPEND_STEP.
TRANSITIONEND_TRANSITION.
ACCIONEND_ACTION.
Las ltimas tres construcciones corresponden a

elementos de

diagramas secuencial de funciones (SFC) el cual se estudiar mas adelante.

5.3.-LENGUAJE DE LISTA DE INSTRUCCIONES (IL).


En las siguientes secciones se define la semntica del lenguaje textual
de lista de instrucciones. Este es un lenguaje bsico y sencillo el cual consta

165

de instrucciones que poseen operadores, modificadores y operando, as


como tambin se definen funciones y bloques funcionales dentro del lenguaje
de lista de instrucciones.

5.3.1.-INSTRUCCIONES EN LENGUAJE IL.


En el cuadro 5.1, se muestra una lista de instrucciones, la cual est
compuesta por una serie de instrucciones en secuencia. Cada instruccin
comienza en una nueva lnea y debe contener un operador y opcionalmente
puede tener un modificador, y si es necesario para la operacin uno o ms
operando separados por coma. El operando pueden ser cualquier tipo de
dato representado tal como se defini en la seccin 4.5, para literales o en la
seccin 4.6 para valores enumerados o una variable como se defini en la
seccin 4.7.
Las

instrucciones

pueden

ser

precedidas

por

etiquetas

identificadores seguidos por dos puntos (:). Se pueden dejar lneas vacas
entre las instrucciones.

5.3.2.-OPERADORES, MODIFICADORES Y OPERANDO


DEL LENGUAJE IL.
En el cuadro 5.2, se muestran los operadores estndar con sus
respectivos modificadores y operandos.

La tipificacin de los operadores

166

est de acuerdo con lo sealado para la tipificacin de funciones en la


seccin 4.8.1.

167

Mientras no se diga lo contrario en la tabla 5.2, la semntica de los


operadores ser como se seala a continuacin.
resultado := resultado OP operando.
Esto significa lo siguiente:

el valor de la expresin inicialmente

evaluada es reemplazada por su valor actual operado mediante el operador


sobre el respectivo operando.

Por ejemplo la instruccin AND %IX1, es

interpretada como:
resultado := resultado AND %IX1.
Los resultados de la comparacin sern interpretados con el corriente
resultado a la izquierda y el operando a la derecha, el resultado es booleano.
Por ejemplo, la instruccin GT %IW10, tendr resultado booleano 1, si el
valor actual del resultado es mayor que el valor de la palabra de entrada 10 y
ser 0 en cualquier otro caso.
El modificador N indica un cambio o negacin booleana del
operando. Por ejemplo la instruccin ANDN %IX2, es interpretada como:
resultado := resultado AND NOT %IX2.
Los parntesis indican la evaluacin de las operaciones dentro de
ellos antes de ejecutar las que estn fuera. La tabla 5.3 muestra dos formas
equivalentes de usar los parntesis en la definicin de instrucciones. Ambos
ejemplos de la tabla 5.3 se deben interpretar de la siguiente manera:
resultado := resultado AND (%IX1 OR %IX2).

168

El modificador C seala que la instruccin asociada se ejecutar si el


valor actual del resultado es 1 booleano

( O tambin 0 booleano si el

operador es combinado con el modificador N.

5.3.3.-FUNCIONES Y BLOQUES FUNCIONALES EN EL


LENGUAJE IL.
Las funciones tal y como fueron definidas en la seccin 4.8.1, pueden
ser llamadas colocando el nombre de la funcin en el campo del operador.
Como se muestra en los ejemplos 4 y 5 del cuadro 5.4, el llamado puede
hacerse de una de dos formas. El resultado que retorna la funcin, cuando
ha alcanzado la instruccin RET o cuando llega la final del grupo de
instrucciones que la componen, representa el resultado corriente para las
sucesivas evaluaciones.
La lista de argumentos de la funcin en el ejemplo 4 del cuadro 5.4 es
equivalente al ejemplo 1 del cuadro 4.11. Las reglas y ejemplos definidos en
la seccin 4.8.1 y en la tabla 4.11, son aplicables para el llamado de
funciones.
La lista de entradas no formales de la funcin en el ejemplo 5 del
cuadro 5.4, es equivalente al ejemplo 2 del cuadro 4.11. En contraste con lo
sealado en el ejemplo dado en el cuadro 4.11 para lenguaje ST, el primer
argumento no est contenido en la lista de entradas no formales en lenguaje
IL, pero el resultado actual ser usado como el primer argumento de la
funcin. Los argumentos adicionales (si son requeridos) se pondrn en el
campo de los operando de la funcin, separados por comas y en el orden de
su declaracin.
Los bloques funcionales, como fueron declarados en la seccin 4.8.3,
pueden ser invocados condicional e incondicionalmente, usando el operador
CAL. Los ejemplos 1 al 4 del cuadro 4.11, muestra la forma del llamado.

169

170

La lista de argumentos formales de un llamado a un bloque funcional


(ejemplo 1 del cuadro 5.4) es equivalente al ejemplo 1 del cuadro 4.11. El
llamado de un bloque funcional con lista de argumentos formales como en el
ejemplo 1b del cuadro 5.4, es equivalente al ejemplo 2 del cuadro 4.11. Las
reglas y ejemplos definidos en la representacin de funciones (seccin 4.8.2),
son aplicables siempre y cuando, se reemplace el trmino function por el
trmino function block.
Todas las asignaciones en una lista de argumentos de un llamado de
bloque funcional, solo ser realizado junto con la invocacin, si la condicin
es verdadera.
Los operadores de entrada mostrados en el cuadro 5.5, podrn ser
usados en conjuncin con los ejemplos del cuadro 5.4.

El mtodo de

llamado es equivalente al CAL con una lista de argumentos, el cual contiene


solo una variable con el nombre del operador de entrada. Los argumentos
que no estn presentes son tomados de la ltima asignacin si no estn
presentes, para la inicializacin. Estos ejemplos se aplican a situaciones
donde los eventos son predecibles y solo una variable cambia de una
invocacin a otra siguiente.
Junto con la siguiente declaracin:
VAR C10 : CTU ; END_VAR.
La secuencia de instrucciones
LD

15

PV

C10.

El equivalente al siguiente resultado:


CAL

C10(PV := 15).

171

5.4.-LENGUAJE DE TEXTO ESTRUCTURADO (ST).


En las siguientes secciones se define la semntica del lenguaje
estructurado ST.

Es un lenguaje ms completo y permite construir

aplicaciones de mayor complejidad.

El lenguaje define expresiones e

instrucciones de varios tipos.

5.4.1.-EXPRESIONES EN ST.
Una expresin es una construccin que al ser evaluada toma un valor
correspondiente a un tipo de dato.
Las expresiones se componen de operandos y operadores.

Un

operando ser un literal como los definidos en las secciones 4.5 a la 4.6, o
una invocacin de funcin u otra expresin.
Los operadores del lenguaje de texto estructurado son resumidos en
el cuadro 5.6. La evaluacin de una expresin consiste en la aplicacin de
operadores a los operandos en una secuencia definida por un procedimiento
de operacin mostrado en el cuadro 5.6. El operador con mayor jerarqua se

172

aplica en primer lugar, luego los de menor jerarqua hasta completar la


evaluacin de la expresin.

Los operadores de igual jerarqua se aplican como estn escritos en la


expresin, o sea; de izquierda a derecha. Por ejemplo si A, B, C y D son tipo
entero con valores 1, 2, 3, y 4 respectivamente, entonces la siguiente
expresin:
A+B-C*ABS(D).
Ser evaluada como 9. Y la expresin:
(A+B-C)*ABS(D).
Es evaluada como 0.
Cuando una expresin tiene dos operandos, el operando que est
ms a la izquierda se evala primero. Por ejemplo en la siguiente expresin:
SIN(A)*COS(B)

173

La expresin SIN(A) ser evaluada primero y seguidamente la


expresin COS(B), y a continuacin se procede con la evaluacin del
producto de las dos funciones.
Las expresiones booleanas deben ser evaluadas solo hasta la
extensin necesaria para obtener un valor resultante. Por ejemplo: si A<=B,
entonces al evaluar la siguiente expresin:
(A>B) & (C<D)
Solamente al evaluar la expresin (A>B) es suficiente para determinar
que el resultado de toda la expresin es 0 booleano.
Las funciones sern invocadas como elementos de expresiones,
consistentes en un nombre de funcin seguido de una lista de argumentos
entre parntesis, como se defini en la seccin 4.8.2.

5.4.2.-INSTRUCCIONES EN ST.
El lenguaje de texto estructurado (ST), contiene cuatro tipos de
instrucciones mencionadas a continuacin y resumidas en el cuadro 5.7.
Instrucciones de asignacin.
Instrucciones de funciones y bloques funcionales.
Instrucciones de seleccin.
Instrucciones de iteracin.
Toda instruccin ser terminada con punto y coma (;). La mxima
longitud de una instruccin es un parmetro de implementacin del fabricante
o de la aplicacin.

5.4.2.1.-INSTRUCCIONES DE ASIGNACIN.
Las instrucciones de asignacin reemplazan el valor actual de una
variable simple o de mltiples valores por el resultado de la evaluacin de

174

una expresin. Una instruccin de asignacin consistir de una variable de


referencia al lado izquierdo seguido por el operador de asignacin := ,
seguido por la expresin a ser evaluada. Por ejemplo la instruccin:
A := B ;
Es utilizada para reemplazar el valor actual de la variable A por el
valor actual de la variable B, siempre y cuando ambas variables sean del
mismo tipo (entero por ejemplo). Adicionalmente si ambos tipos de variables
fueran de tipo ANALOG_CHANNEL_CONFIGURATION, tal y como se
defini en el cuadro 4.3, entonces los valores de todos los elementos de la
variable estructurada A son reemplazados por los correspondientes valores
de la variable B.
Como se muestra en la figura 4.1, la instruccin de asignacin puede
ser usado para el valor que retorna la funcin, esto se logra colocando el
nombre de la funcin a la izquierda de un operador en el cuerpo de la
declaracin de la funcin. El valor que retorna la funcin ser el valor de la
evaluacin ms reciente de la asignacin.

175

Cuadro No. 5.7 continuacin...

5.4.2.2.-INSTRUCCIONES DE CONTROL DE FUNCIONES


Y BLOQUES FUNCIONALES.
Las instrucciones de control de las funciones y bloques funcionales,
consisten en los mecanismos para el llamado y para la devolucin del control
a la entidad de invocacin una vez que se ha llegado al final de la funcin o
del bloque funcional.
La evaluacin de una funcin se invocar como parte de una
expresin de evaluacin como se seal en la seccin 5.4.1.
Un bloque funcional es llamado a travs de una instruccin que
consiste del nombre de la instancia del bloque funcional, seguido por una

176

lista de argumentos entre parntesis, tal cual como se ilustra en el cuadro


5.7. Las reglas y ejemplos definidos en la seccin 4.8.1 y el cuadro 4.11,
para

el

llamado

de

funciones

se

aplican

correspondientemente,

reemplazando cada ocurrencia del trmino function por el trmino function


block.
La instruccin RETURN permitir una fcil salida de una funcin,
bloque funcional o programa.

5.4.2.3.-INSTRUCCIONES DE SELECCIN.
Las instrucciones de seleccin son IF y CASE. Una instruccin de
seleccin permite escoger una (o un grupo) de sus instrucciones
componentes para su ejecucin, basado en una condicin especfica. Por
ejemplo las instrucciones de seleccin dadas en el cuadro 5.7.
La instruccin IF especifica que el grupo de instrucciones, ser
ejecutado, solo si la expresin booleana asociada es verdadera (1). Si la
condicin es falsa las instrucciones no son ejecutadas o pueden ejecutarse el
grupo de instrucciones colocadas despus de la palabra ELSE (o la palabra
ELSIF si su condicin booleana asociada es verdadera).
La instruccin CASE consiste en una expresin la cual se evaluar
para un tipo de variable ANY_INT, o para un tipo de dato enumerado, y unos
grupos de instrucciones, cada grupo comienza con una etiqueta con valores
enteros o numerados. La etiqueta especifica que se ejecutar el grupo de
instrucciones que contenga el valor evaluado y sealado en la etiqueta. Si el
valor del valor evaluado no corresponde a ninguno del rango sealados por
la etiqueta, se ejecutarn las instrucciones colocadas despus de la palabra
ELSE (si las hay). En cualquier otro caso no se ejecutan ninguna de las
instrucciones.

177

5.4.2.4.-INSTRUCCIONES DE ITERACIN.
Una instruccin especifica de iteracin indica que el grupo de
instrucciones asociadas se ejecutarn repetidamente. Dentro del lenguaje de
texto estructurado se definen tres instrucciones de iteracin, stas son:
FOR...END_FOR.
WHILEEND_WHILE.
REPEATEND_REPEAT.
La instruccin FOR se usa si en nmero de iteraciones pueden ser
determinadas y en avance, en otras circunstancias se usan las instrucciones
REPEAT o WHILE.
La instruccin EXIT se usar para finalizar la iteracin sin que se halla
satisfecho la condicin, en otras palabras, para interrumpir los ciclos.
Cuando la instruccin EXIT se encuentra localizada dentro de una
construccin iterativa, la salida es a la siguiente construccin y el control
pasa a la siguiente instruccin despus del final del respectivo lazo. Por
ejemplo en la figura 5.1 se muestra un conjunto de instrucciones iterativas; el
valor de la variable SUM ser 15 si el valor de la variable booleana FLAG es
0 y 6 si FLAG = 1.

Figura 5.1. Uso del EXIT en un grupo de instrucciones iterativas

178

La iteracin FOR indica que la secuencia de instrucciones ser


repetida hasta que la variable de control alcance el valor indicado. En cada
ciclo la variable de control es incrementada por el valor asignado en una
expresin (el valor por defecto es la una unidad. La variable de control es de
tipo entero (SINT, INT,DINT), y no debe ser alterada por las instrucciones
que se repiten.

La prueba para la condicin de finalizacin es hecha al

comienzo de cada iteracin, si el valor de la variable de control excede el


valor final no se ejecuta la secuencia.
El cuadro 5.6 en su ejemplo 6, muestra otra forma de uso de la
instruccin FOR. En ese ejemplo se usa el lazo FOR para determinar el
ndice J de la primera ocurrencia de la cadena KEY en los elementos de un
arreglo de cadenas WORDS con un rango suscrito de 1...100. Si no se
encuentra la cadena , el valor de J ser 101.
La instruccin WHILE causa que el grupo de instrucciones hasta la
sentencia END_WHILE se ejecute repetidamente hasta que la expresin
booleana asociada sea falsa. Si la expresin es inicialmente falsa, entonces
no se ejecuta ninguna instruccin. Por ejemplo el ejemplo 6 del cuadro 5.6
puede ser reescrito con una instruccin WHILE...END_WHILE, como se
muestra en el ejemplo 7 del mismo cuadro.
La instruccin REPEAT causa que la secuencia de instrucciones hasta
la palabra UNTIL, sean ejecutadas de manera iterativa (al menos una vez),
hasta que la condicin booleana sea verdadera. Por ejemplo el ejemplo 6 del
cuadro

5.6

puede

ser

reescrito

con

una

instruccin

REPEAT...END_REPEAT, como se muestra en el ejemplo 8 del mismo


cuadro.

179

5.5.-ELEMENTOS

COMUNES

PARA

LENGUAJES

GRFICOS.
Los lenguajes grficos que define el estndar IEC-61131-3, son el
lenguaje de diagrama de contactos (Ladder Diagram, LD) y el lenguaje de
diagramas de bloques funcionales (Function Block Diagram FBD).

Los

elementos de grfico secuencial de funcin (SFC) se pueden usar en


conjunto con cualquiera de los lenguajes grficos mencionados.
Los elementos definidos en esta seccin se aplicarn tanto a los
lenguajes grficos LD y FBD, como a la representacin grfica en SFC.

5.5.1.-REPRESENTACIN DE BLOQUES Y LNEAS.


Los elementos de lenguaje grfico definidos aqu, son dibujados con
elementos de lneas usando los caracteres definidos en la seccin 4.4, o
usando grficos o elementos de grficos que se muestran en el cuadro 5.8.
Las lneas pueden ser extendidas a travs de los conectores
mostrados en el cuadro 5.8. El uso de los conectores no debe ser asociado
con elementos de datos o su almacenamiento, por lo tanto, para evitar
ambigedades, se cometer un error si el identificador usado como una
etiqueta de conector tiene el mismo nombre de otro nombre de elemento
dentro de la misma unidad de organizacin de programa.
Cualquier restriccin en la topologa de una red en particular, debe ser
sealada como un parmetro de implementacin.

180

5.5.2.-DIRECCIN DEL FLUJO EN UNA RED.


Una red se define como el conjunto mximo de interconexin de
elementos grficos, excluyendo las lneas de alimentacin o fuerza en los
diagramas de contactos (LD) definidos en la seccin 5.6.2. Se deben tomar
precauciones para la asociacin con cada una de las redes o grupos de
redes en un lenguaje grfico se usa una etiqueta de red delimitada a la
izquierda por dos puntos (:). Esta etiqueta tendr la forma de un identificador
o de un entero decimal no asignado, como se define en la seccin 4.5. El

181

alcance de una red y sus etiquetas ser local a la unidad de organizacin del
programa donde se encuentre localizada la red.
Los lenguajes grficos son usados para representar el flujo de una
cantidad conceptual a travs de una o ms redes que representan un plan de
control, esto es:
a. Flujo de potencia:

Similar al flujo elctrico de potencia en un

sistema de rels, se usa tpicamente en diagramas de contactos.


b. Flujo de seal: Es similar al flujo de seales entre los diferentes
elementos que componen un sistema de seal de proceso, se usa
tpicamente en el lenguaje de diagramas de bloques funcionales.
c. Flujo de actividad: Similar al flujo de control entre elementos de
una organizacin o pasos de una secuencia electromecnica, se
usa tpicamente en los grficos funcionales de secuencia.
La cantidad conceptual fluir a lo largo de lneas entre elementos de
una red de acuerdo a las siguientes reglas:
a. El flujo de potencia en el lenguaje LD ir de izquierda a derecha.
b. El flujo de seal en el lenguaje FBD ir desde la salida (en el lado
derecho) de la funcin o bloque funcional a la entrada (en el lado
izquierdo) de los mismos.
c. El flujo de actividad en los elementos SFC ir desde la parte baja
del paso a travs de la transicin correspondiente, hasta el
principio del siguiente paso.

5.5.3.-EVALUACIN DE REDES.
El orden en el cual las redes y sus elementos son evaluados no es
necesariamente el mismo en el cual estn las etiquetas o en el cual se
muestran las redes. De igual forma, no es necesario que todas las redes
sean evaluadas, antes de que la evaluacin de una determinada red pueda

182

ser repetida. De cualquier manera cuando el cuerpo de una POU consiste de


una o ms redes, el resultado de la evaluacin de la red dentro del cuerpo,
ser funcionalmente equivalente a las observaciones en las siguientes
reglas:
a. Ningn elemento de la red, deber ser evaluado hasta que se
hallan evaluado los estados de todas sus entradas.
b. La evaluacin de un elemento de red no estar completa hasta que
los estados de todas sus salidas hallan sido evaluadas.
c. La evaluacin de una red no estar completa hasta que la salida de
todos sus elementos hayan sido evaluados, aun si la red contiene
uno de los elementos de control de ejecucin que se definen en la
seccin 5.5.4.
d. La forma como se evala la red se define en la seccin 5.6.6, para
el lenguaje LD y en la seccin 5.7.2, para el lenguaje FBD.
Se dice que existe una va de realimentacin en una red, cuando la
salida de una funcin o de un bloque funcional, se usa como entrada de una
funcin o bloque funciona precedente dentro de la red. La variable asociada
se denomina variable de realimentacin. Por ejemplo la variable booleana
RUN es la variable de realimentacin en el ejemplo mostrado en la figura 5.2.
Las vas de realimentacin pueden ser utilizadas en los lenguajes
grficos definidos en las secciones 5.6 y 5.7, sujetos a las siguientes reglas:
a. Los lazos explcitos como los mostrados en la figura 5.2a, solo
aparecen en el lenguaje FBD.
b. Debe darse posibilidad al usuario de utilizar un medio de
implementacin para determinar el orden de ejecucin de un lazo
explcito, por ejemplo a travs de la seleccin de una variable de
realimentacin para formar un lazo implcito como lo muestra la
figura 5.2b.

183

c. La variable de realimentacin debe ser inicializada a travs de


alguno de los mtodos definidos en las secciones 4.4 a 4.7. El
valor inicial ser usado durante la primera evaluacin de la red.
d. Una vez que el elemento con variable de realimentacin de salida
ha sido evaluado, el nuevo valor de la variable de realimentacin
ser usado hasta la prxima evaluacin del elemento.

Figura 5.2. Ejemplos de caminos de realimentacin.

184

5.5.4.-ELEMENTOS DE CONTROL DE EJECUCIN.


Los elementos de transferencia del control de programa, tanto para el
lenguaje LD como para el FBD, sern representados por los elementos
grficos mostrados en el cuadro 5.9

185

Como puede apreciarse los saltos sern mostrados por una lnea de
seal booleana que termina en una doble punta de flecha. La lnea de seal
para un salto condicionado se originar en una variable booleana, en una
salida booleana de una funcin o bloque funcional o en la lnea de potencia
en un diagrama de contactos. Una transferencia del control de programa a
una etiqueta de red designada, ocurrir cuando el valor booleano de la
variable sea 1 (verdadero), por lo tanto, el salto incondicional es un caso
especial del salto condicional.
El destino de un salto ser una etiqueta de red dentro de la unidad de
organizacin de programa en la cual el salto ocurre. Si el salto ocurre dentro
de una construccin ACTION...END_ACTION, el destino del salto ser dentro
de la misma construccin.
Los retornos condicionales de las funciones y bloques funcionales
sern implementados usando la construccin RETURN, como lo muestra el
cuadro 5.9.

La ejecucin del programa ser transferida de regreso a la

entidad que hizo el llamado, cuando el valor de la entrada booleana sea 1


(verdadero) y continuara su proceso normal cuando la entrada booleana sea
0 (falsa). El retorno incondicional se har cuando se llegue al final de las
instrucciones de la funcin o del bloque funcional, o por el elemento
RETURN colocado en la lnea de potencia izquierda en el lenguaje LD, como
se puede observar en el cuadro 5.9.

5.6.-LENGUAJE

DE

DIAGRAMA

DE

CONTACTOS

(LADDER DIAGRAM LD).


En esta seccin se define el lenguaje de diagrama de contactos (LD)
para la programacin de controladores programables.
Un programa en LD permite al controlador programable probar y
modificar datos a travs de smbolos grficos estandarizados.

Estos

186

smbolos son colocados en redes de una manera similar a como son usados
los eslabones de un diagrama de escalera o de contactos en esquemas de
rels. Los diagramas LD estn limitados a ambos lados por lneas de fuerza
o de potencia.

5.6.1.-REPRESENTACIN DE LNEAS DE FUERZA.


Como se muestra en el cuadro 5.10, las redes LD estarn limitadas en
el lado izquierdo por una lnea vertical conocida como lnea de fuerza
izquierda y por el lado derecho tambin por una lnea vertical con el nombre
de lnea de fuerza derecha. La lnea de fuerza derecha puede ser implcita o
explicita.

5.6.2.-ELEMENTOS DE ENLACE Y ESTADOS.


El cuadro 5.11, muestra los elementos de enlace, y como se puede
apreciar stos son horizontales o verticales. El estado de un elemento de
enlace puede denotarse ON u OFF, correspondiendo a los valores bolanos
1 y 0 respectivamente.

El trmino estado de enlace ser sinnimo del

trmino flujo de potencia.


El estado de la lnea de fuerza izquierda ser considerada en ON todo
el tiempo. No se define ningn estado para la lnea de fuerza derecha.

187

Un elemento de enlace horizontal ser indicado por una lnea


horizontal.

Un elemento de enlace horizontal transmite el estado del

elemento inmediato a la izquierda al elemento inmediato a la derecha.

El elemento de enlace vertical consistir de una lnea vertical


interceptada con una o ms elementos de enlace horizontales a cada lado.
El estado del enlace vertical representar la conjugacin OR del estado ON
de los enlaces horizontales en lado izquierdo, esto es, el estado del enlace
vertical ser:

OFF si los estados de todos los enlaces horizontales acoplados en


su lado izquierdo son OFF.

ON si el estado de uno o ms enlaces horizontales acoplados en


su lado izquierdo son ON.

El estado del enlace vertical debe ser copiado a todos los enlaces
horizontales colocados a la derecha. El estado del enlace vertical no debe
ser copiado a ninguno de los enlaces horizontales colocados en el lado
izquierdo.

5.6.3.-CONTACTOS.
Un contacto es un elemento el cual le imparte un estado al lado
derecho de un enlace horizontal, el cual es igual a la conjugacin booleana
AND del estado del enlace horizontal y su lado izquierdo, donde debe haber

188

una funcin apropiada en asociacin con una entrada, salida o variable de


memoria booleana. Un contacto no modifica el valor de la variable booleana
asociada. Los smbolos estndar para contactos se muestran en el cuadro
5.12.

5.6.4.-BOBINAS.
Una bobina es un elemento que copia el estado del enlace a su
izquierda a la derecha sin modificaciones y almacena una funcin adecuada
del estado o transicin del enlace izquierdo en una variable booleana

189

asociada. Los smbolos estndar asociados a las bobinas en el lenguaje LD


se muestran en el cuadro 5.13. Transicin,

190

5.6.5.-FUNCIONES Y BLOQUES FUNCIONALES.


La representacin de funciones y bloques funcionales en el lenguaje
LD se har tal y como se defini en el captulo IV con las siguientes
excepciones:
a. Las conexiones actuales de las variables pueden ser mostradas
opcionalmente, escribiendo el dato o variable apropiado fuera del
bloque, adyacente al nombre formal de la variable en el lado
interior.
b. Al menos un uno (1) booleano de entrada y de salida se mostrar
en cada bloque para tener en cuenta el flujo de potencia a travs
del bloque.

5.6.6.-ORDEN PARA LA EVALUACIN DE REDES EN LD.


Dentro de una unidad de organizacin de programa escrita en LD, las
redes sern evaluadas de arriba hacia abajo, tal y como aparecen en el
diagrama de contactos, excepto que el orden sea modificado por algn
elemento de control de ejecucin, de los definidos en la seccin 5.5.4.

5.7.-LENGUAJE

DE

BLOQUES

FUNCIONALES

(FUNCTION BLOCK DIAGRAM FBD).


En esta seccin el lenguaje FBD, el cual consiste en un lenguaje
grfico para la programacin de controladores lgicos programables.
Las previsiones hechas en el captulo IV y en la seccin 5.5, se
aplicarn para la construccin e interpretacin de programas para
controladores programables en lenguaje FBD.

191

5.7.1.-COMBINACIN DE ELEMENTOS EN LENGUAJE


FBD.
Los elementos de lenguaje FBD sern interconectados por lneas de
flujo de seales siguiendo lo sealado en la seccin 5.5.2.
Las salidas de bloques funcionales no deben ser conectadas juntas.
En particular el cableado OR del lenguaje LD no est permitido en el lenguaje
FBD. Se requiere de una bloque booleano OR explicito, para esta funcin tal
y como se muestra en el cuadro 5.14.

5.7.2.-ORDEN DE LA EVALUACIN DE REDES EN FBD.


Existen tres mtodos para determinar el orden mediante el cual una
red de una unidad de organizacin de programa escrita en lenguaje FBD es
evaluada. Estos mtodos son explicados en el cuadro 5.15. El mtodo que
se use debe ser definido como un parmetro de implementacin de la
aplicacin.

192

193

BIBLIOGRAFA
Asea Brawn Boveri (ABB). Thecnical Catalogue. Editorial ABB. 1995
Asea Brawn Boveri (ABB). Catalogo de Productos. Editorial ABB. 2001.
Allen Bradley. (AB). Catalogo de Productos. Editorial AB. 2001.
Ies, Venancio . Curso de Autmatas Programables (PLC). Tijuana, B. C.
Mxico. 2003.
Fernando Castro, Mauricio Araya, Jos Gmez. Monografa: Introduccin al
Autmata Programable (PLC).

Documento publicado en INTERNET.

Universidad de Costa Rica. 2003.


Beltrn

P.,

Cristhian.

Controladores

Lgicos

Programables

(PLC).

Documento publicado en INTERNET.


Mayol i Badia, Albert.

Autmatas Programables.

Editorial Marcombo.

Espaa 1992.
Simn, Andr. Electricidad Industrial Aplicada. Editorial Paraninfo. Espaa
1992.
General Electric. (GE) Catlogo de Productos. Editorial GE. 2002.
Ibez, Carabantes P. y Ubieto, Artur P. Diseo Bsico de Automatismos
Elctricos. Editorial Paraninfo. 1995.

194

Siemens. Catlogo de Productos. Editorial Siemens. 2001.


Telemecanique. Catlogo General 1988 1989. Editorial Telemecanique.
1988.
Telemecanique.

Catalogo de Productos 2000.

Editorial Telemecanique.

2000.
Westinghouse. Catlogo de Productos. Editorial Westinghosue. 2002.

Você também pode gostar