You are on page 1of 7

Scientia et Technica Ao XVI, No 49, Diciembre de 2011. Universidad Tecnolgica de Pereira.

ISSN 0122-1701

212

Metodologa para el diseo de autmatas finitos


con salidas en lenguaje ladder bajo elestndar IEC
61131-3
Methodology for design of finite automatas in ladder language under the Standard IEC
61131-3
Mauricio Holgun Londoo1, lvaro ngel Orozco Gutirrez2, Andrs Escobar Meja3
Universidad Tecnolgica de Pereira, Pereira, Colombia
mau.hol@utp.edu.co
aaog@utp.edu.co
andreses1@utp.edu.co

Resumen Los autmatas1 de estados finitos (AF) constituyen


una metodologa de anlisis de autmatas comnmente
empleada en el diseo de sistemas lgicos secuenciales. Ellas
se pueden interpretar como una subclase de las redes de Petri.
En los sistemas lgicos secuenciales se distingue entre su
funcionamiento sncrono y asncrono, seleccionando
normalmente la operacin sncrona con flancos de un reloj,
sin embargo en la implementacin de AF en lenguaje ladder
no es prctico hacer sensible las entradas de un automatismo
a los flancos de un reloj. En el presente artculo se opta por un
enfoque asncrono, se discute una metodologa general para la
implementacin de AF con salida en lenguaje ladder y se
afronta el reto de eliminar posibles transiciones no deseadas.

I.

Los autmatas finitos con salidas constituyen una de las


metodologas de mayor uso para el diseo de sistemas
secuenciales de estados finitos con o sin salidas. Desde la
perspectiva de la automatizacin, es de inters los sistemas
secuenciales con salida, entre los cuales se encuentran las
denominadas Mquina de Mealy y Mquina de Moore [1, 2].
Los autmatas finitos2 ganan su reputacin dentro del diseo de
sistemas de eventos discretos gracias a la gran variedad de
metodologas disponibles para su diseo, entre las cuales se
distinguen el diseo por conjunto de estados y el diseo por
complemento [3]. Adems3 se destaca la posibilidad de aplicar
anlisis sistemtico con el fin de aplicar simplificacin de los
autmatas obtenidos, ya sea con la finalidad de simplificar su
anlisis, donde se obtiene un autmata simplificado con fines
especficos de anlisis, o con la finalidad de simplificar la
implementacin fsica, donde lo que interesa es conservar la
funcionalidad pero con una implementacin de menos estados.
Entre los mtodos empleados para la simplificacin de
autmatas finitos estn la simplificacin por estados
distinguibles y la simplificacin por clases de equivalencia [3][5].

Palabras clave Autmatas finitos, Diagrama escalera, IEC


61131-3, Ladder, Redes de Petri, Sistemas asncronos.
Abstract Finite state automatas provide a methodology for
automata analysis commonly used in the design of sequential
logic systems. They can be interpreted as a subclass of Petri
nets. In sequential logic systems distinguishes between
synchronous and asynchronous operation, usually choosing
synchronous operation with a clock, but in the
implementation of finite automatas in ladder language its not
practical to make sensible automata inputs to a clock edges. In
this article we present an asynchronous approach, we discuss
a general methodology for the implementation of finite
automatas with outputs in ladder language and facing the
challenge to eliminate any unwanted transitions.

Los autmatas cada da alcanzan un tamao y complejidad


considerables, buscando continuamente rutinas de produccin
con mayor eficiencia y bajo condiciones ptimas de seguridad
para las personas y las mquinas. Para cierto rango de
aplicaciones pequeas en trminos del nmero de entradas y
salidas, pero con niveles de complejidad propios de los
autmatas de mayor tamao se requiere del diseo inicial bajo la

Key Word Finite automata, IEC 61131-3, Ladder diagram,


Petri nets, Synchronous systems

2
1

M.Sc. en Ingeniera Elctrica

Fecha de Recepcin: 13 de Mayo de 2011


Fecha de Aceptacin: 14 de Julio de 2011

INTRODUCCIN

Ph.D. en Bioingeniera
M.Sc. en Ingeniera Elctrica

Scientia et Technica Ao XVI, No 49, Diciembre de 2011. Universidad Tecnolgica de Pereira.

213

metodologa de autmatas finitos, pero con despliegue final


en lenguaje ladder [6]-[8].
La traduccin de autmatas finitos a diagrama ladder se
encuentra en varios textos de la literatura, entre ellos en
[9, 10]. Sin embargo al realizar implementaciones fsicas se
debe afrontar varios retos que no son tradicionalmente
tratados por los autores. Estos retos incluyen en general la
necesidad de eliminar los sistemas secuenciales de entradas
sncronas para los autmatas a ser implementados en PLC,
ya que en la automatizacin industrial no es prctico tener
sistemas fsicos a nivel de potencia que implementen
accionamientos tipo flip-flop, igualmente las entradas bajo
un esquema asncrono implican cambios de estado con el
simple cambio de una entrada lo cual tampoco es deseable.

estado para cada uno de los smbolos de entrada en . El estado


inicial define el estado desde donde inicia el sistema una vez es
energizado y los estados finales definen los posibles estados
donde la mquina puede terminar para considerar que realiz la
tarea propuesta, desde un enfoque informal, o el conjunto de
cadenas de smbolos de entrada aceptados, para un enfoque
formal [11].
Una de las representaciones ms empleadas para un autmata
finito consiste de crculos para representar los estados, un
crculo doble para los estados finales, el signo > para el estado
inicial y arcos para las transiciones entre estados. La grfica as
obtenida recibe el nombre de diagrama de transiciones o
diagrama de estados, figura 1.

Otro reto a direccionar tiene que ver con el enfoque


tradicional donde todo un sistema se modela con un nico
autmata finito, pero en aras de la modularidad,
mantenibilidad y escalabilidad es preferible definir un
diseo jerrquico donde cada accin individual del sistema
es controlada por un autmata especfico. Bajo este ltimo
enfoque un estado en un autmata puede ser, a su vez,
modelado como otro autmata finito.
Los autores presentan en este artculo una metodologa
generalizada que partiendo de la implementacin
tradicional de sistemas diseados bajo un enfoque de
autmatas finitos con salida, permite su implementacin
por traduccin en sistemas restringidos a lenguaje ladder y
afrontando los retos derivados de tener entradas que se
ajusten a sistemas tanto sncronos como no sncronos. Se
hace nfasis en un diseo modular y bajo la norma IEC
61131-6.

II.

CONTENIDO

Figura 1. Diagrama de estados o transiciones.

Todo diagrama de estados tiene una tabla de transiciones


asociada, la cual se lee por renglones y define para cada estado
presente y todo smbolo de entrada el estado siguiente. La tabla
1 es la tabla de transiciones asociada al diagrama de estados de
la figura 1.
q

A. AUTMATAS FINITOS FORMALES

smbolo

Un autmata finito se define formalmente como el


quntuplo:
(2.1)
donde

es el conjunto de smbolos de estado,

conjunto de smbolos de entrada,


transicin

es el

es la funcin de

que desde un estado y dado un

smbolo de entrada genera un nuevo estado siguiente,


el estado inicial y
que

es

es el conjunto de estados finales. Ya

es una funcin, y no solo una relacin, para cada

estado actual y smbolo de entrada debe existir un nico


estado siguiente, adems
debe estar definida en cada

Tabla 1. Tabla de transiciones.

Formalmente un autmata finito es la representacin abstracta


que se muestra en la figura 2 y recibe el nombre de modelo en
cinta, el cual permite estudiar jerarquas, utilidades y

Scientia et Technica Ao XVI, No 49, Diciembre de 2011. Universidad Tecnolgica de Pereira.

limitaciones de diferentes tipos de autmatas. En este


modelo existen tres componentes: el programa o
instrucciones de que dispone el autmata, una cinta que es
el medio de entrada y una cabeza de lectura que se desplaza
exclusivamente de izquierda a derecha.
La cinta consiste de una serie de cuadros en cada uno de
los cuales existe un y slo un smbolo de entrada. La
cabeza lectora se posiciona en el inicio y lee el smbolo del
primer cuadro, transfiere este dato al programa quien
decide si la cabeza se mueve un lugar a la derecha o
permanece quieta. El programa se comporta como un
sistema de control que evala el estado, si luego de recorrer
la cinta de entrada el estado actual es un estado final,
entonces se dice que la secuencia de smbolos de entrada es
aceptada.

214
(2.2)

donde , ,

y se definen igual que en la ecuacin 2.1.

conjunto de smbolos de salida y

es el

es la funcin de salida que

depende slo del estado actual, es decir,

, donde

es la cerradura sobre .

2. Autmata de Mealy
Autmata finito donde en cada instante de tiempo el valor de sus
salidas depende del estado presente y de la funcin de transicin
[1]. Su diagrama de estados, figura 4, adiciona un indicador del
valor de salida en cada transicin.
Formalmente, un autmata de Mealy es el sxtuplo:
(2.3)
donde

ecuacin 2.2, y

se definen igual que en la

es la funcin de salida que depende del estado

Figura 2. Modelo en cinta de un autmata finito.

actual y del valor de los caracteres de entrada, es decir,


.
B. AUTMATAS FINITOS CON SALIDA
Representan el modelo fsico de sistemas donde el
beneficio est en responder en cada estado adecuadamente
de acuerdo al valor del conjunto de entradas. Su desarrollo
puede incluir determinar la aceptacin de secuencias de
caracteres de entrada, pero normalmente se enfocan en una
operacin cclica sin inters en la aceptacin [3].

1. Autmata de Moore
Autmata finito donde en cada instante de tiempo el valor
de sus salidas es funcin exclusiva del estado presente [2].
Su diagrama de estados, figura 3, adiciona un indicador del
valor de salida en cada estado.

Figura 4. Diagrama de estados de una mquina de Mealy.

III.

ETAPAS DEL DISEO

Se describe a continuacin la forma de implementar cada una de


las partes de un autmata finito con y sin salidas y las
consideraciones especiales de diseo segn su tipo.

A. LOS ESTADOS
Los estados son la nica memoria con la que cuentan los
autmatas finitos [12, 13]. Por tanto su implementacin
corresponde con la ecuacin de un biestable:
Figura 3. Diagrama de estados de una mquina de Moore.

Formalmente, un autmata de Moore es el sxtuplo:

(3.1)

Scientia et Technica Ao XVI, No 49, Diciembre de 2011. Universidad Tecnolgica de Pereira.

215
El estado inicial

representa el estado con activacin

incondicional al instante de la energizacin, por tanto como


al inicio todos los estados estn inactivos:
(3.2)
La accin de activacin de estado siguiente (set) ocurre
simultneamente con la accin de desactivacin de estado
previo (reset) cuando desde el estado presente se verifica la
transicin hacia el estado siguiente, es decir el Set para
ocurre junto con el Reset de

cuando:

(3.7)
Sin embargo, en ambos casos una salida puede presentarse
repetidamente en varios estados con lo cual las ecuaciones 3.6 y
3.7 se convierten en:
(3.8)
(3.9)
donde con

se quiere significar que se deben sumar

todas las funciones de salida que entregan como resultado el


mismo smbolo de salida .
(3.3)
D. ENTRADAS

B. TRANSICIONES TEMPORIZADAS
La evolucin en un autmata finito ocurre cuando se
verifica una transicin determinada, la cual a su vez es
funcin del estado presente y del smbolo de entrada. Bajo
este enfoque, un smbolo representa una entrada en un
autmata fsico, lo cual frecuentemente se relaciona como
simples valores booleanos. Sin embargo es frecuente que la
seal de transicin sea la respuesta de un estado ante una
accin de temporizacin. La temporizacin a la
energizacin (tipo ON) se representa:
(3.4)
y da como respuesta un uno lgico que se retarda en el
tiempo un valor de seleccin determinado en referencia a la
energizacin [14]. Igualmente, la temporizacin a la
desenergizacin (tipo OFF) se representa:
(3.5)

Las entradas presentan un gran desafo a la hora de


implementaciones fsicas, ya que en los modelos de Mealy o
Moore un cambio en un valor de entrada, smbolo, produce la
evolucin inmediata del autmata hacia un posible nuevo
estado; sin embargo es deseable que los cambios ocurran a
intervalos mnimos que garanticen el cumplimiento de las
acciones propuestas de salida.
En los sistemas secuenciales digitales este problema se afronta
con los denominados sistemas sncronos, donde las entradas se
escanean solo ante los flancos de subida o bajada de una seal
de reloj de referencia gracias al emplea de los dispositivos
denominados flip-flops.
Para el caso presente, el objetivo es implementar en PLC usando
lenguaje ladder, para ello las entradas deben igualmente permitir
una evolucin gradual del autmata, pero sin empleo de reloj.
Para solventar este problema se ha optado por adicionar
detectores de flancos de las seales de entrada con lo cual el
avance del autmata se puede controlar pausadamente dando el
tiempo necesario para la actualizacin de salidas.

y da como respuesta un uno lgico que se prolonga en el


tiempo un valor de seleccin determinado en referencia a la
desenergizacin [14].

IV.

METODOLOGA DE DISEO

En general la metodologa para implementar en ladder un


autmata finito con salida se puede resumir de la siguiente
forma:

C. SALIDAS
Las salidas son fundamentales en los autmatas tipo Mealy
o Moore. Para los primeros, las salidas son funcin del
estado y del smbolo de entrada, con lo cual su evaluacin
corresponde con:

(3.6)
En los segundos, la salida es funcin exclusiva del estado,
por lo que:

Identificar el nmero de entradas, salidas y estados del


automatismo
Definir e implementar el estado inicial
Construir un diagrama de estados que permita identificar las
funciones de transicin y salida
Implementar las equivalencias de las ecuaciones 3.1 a 3.9
Adicionar detectores de flancos a las entradas

Scientia et Technica Ao XVI, No 49, Diciembre de 2011. Universidad Tecnolgica de Pereira.

En el caso de autmata finito sin salida, la aceptacin


ocurre cuando se consumen los smbolos de entrada y
el estado actual coincide con uno final

216
C

--

Tabla 2. Tabla de transiciones del ejemplo

Las ecuacin 3.1 y 3.3 definen la activacin de estado, que


aplicadas a cada uno quedan:
V.

EJEMPLO DE APLICACIN

Un mvil se desplaza a derecha (Vd) e izquierda (Vi) entre


los lmites a y b. El pulsador de entrada D activa el
movimiento a derecha, el pulsador I activa el movimiento a
izquierda y el pulsador Al es seal de alto total. La figura 5
ilustra lo planteado.

Donde:

Figura 5. Ejemplo de aplicacin

El primer paso de la metodologa es identificar el nmero


de entradas, salidas y de estados requeridos, que para este
caso son: 5 entradas (los 3 pulsadores y los lmites), 2
salidas (el desplazamiento a derecha e izquierda) y 3
estados, as:
Estado A: define mvil en reposo
Estado B: define movimiento a derecha
Estado C: define movimiento a izquierda
En segundo trmino se define el estado inicial, que para el
presente caso es el estado de reposo A.

La ecuacin 3.2 para activacin del estado inicial queda:

El ejemplo es una mquina de Moore, ya que el desplazamiento


depende exclusivamente del valor de los estados, as la ecuacin
3.9 queda:

El tercer paso consiste en obtener un diagrama de estados


(figura 6), del cual se puede deducir la tabla de transiciones
(tabla 2).
Para las seales de entrada se debe considerar el tipo de flanco a
emplear. Por ejemplo, es comn que la orden ingresada
mediante un pulsador se tome en el flanco de bajada, es decir
cuando se suelta el pulsador y no cuando se presiona. Por el
contrario, las seales de los sensores del lmite de
desplazamiento se deben tomar apenas ocurren, lo cual coincide
con el flanco de subida.
La implementacin se muestra en la figura 7 usando el software
ZelioLogic, disponible libremente en la red [7], y desplegado
sobre una unidad Telemecanique SR2B201FU.

Figura 6. Diagrama de estados del ejemplo

ENTRADAS Al, I, D, a, b
Estados
A
B

10000

01000

00100

00010

00001

00000

A
A

C
C

B
B

---

-C

A
B

Scientia et Technica Ao XVI, No 49, Diciembre de 2011. Universidad Tecnolgica de Pereira.

217

dispositivos son ajustados para ser programados mediante el


lenguaje ladder que define la norma IEC 61131-3. Lo
anterior obliga a plantear metodologas sistemticas de
traduccin de sistemas complejos que frecuentemente se
disean con la ayuda de otros enfoques no ladder.

El diseo ladder es altamente demandante de la experiencia


y experticia de los ingenieros de desarrollo. El tiempo para
entrega, la facilidad de adicionar restricciones y de escalar
un diseo son restrictivas ladder.

La
metodologa
presentada
permite
traducir
satisfactoriamente todo autmata finito, con y sin salidas,
para su implementacin en sistemas de desarrollo ladder.
Ya que el proceso respeta la misma estructura de los
autmatas finitos, la adicin de nuevas restricciones y la
escalabilidad del diseo original no afectan la topologa
ladder obtenida.

Se debe observar como en la figura 7 existen bloques bien


definidos para la inicializacin del estado inicial, para la
activacin y desactivacin de estados, para las condiciones
de las transiciones, para las salidas y para las entradas. Estos
bloques son los que permiten una estructura uniforme que
no se ve mayormente afectada por cambios en el diseo por
diagrama de estados.

REFERENCIAS
[1] Mealy, George H. A Method to Synthesizing Sequential
Circuits Bell Systems Technical Journal.pp. 10451079,
1955.
[2] Moore, E. F. Gedanken-experiments on Sequential
Machines Automata Studies, Annals of Mathematical
Studies, vol. 34, pag. 129153. Princeton University Press,
Princeton, N.J., 1956.

Figura 7. Implementacin programada en Ladder

VI.

CONCLUSIONES Y TRABAJOS FUTUROS

Los autmatas finitos constituyen una metodologa de


diseo que permite el planteamiento de soluciones a
problemas de diversa naturaleza y de gran
complejidad. Los autmatas con salida adicionalmente
facilitan la mantenibilidad y escalabilidad de
aplicaciones industriales.
La implementacin de los autmatas finitos con salida
en PLCs con baja cuenta de canales de entrada/salida,
representa un reto ya que normalmente este tipo de

[3] Brena, Ramn. Autmatas y lenguajes, un enfoque de


diseo. Tecnolgico de Monterrey, Mxico, Verano de
2003.
[4] Nelson, Vctor P. Anlisis y diseo de circuitos lgicos
digitales: Circuitos de conmutacin. Edicin Ilustrada.
Texas. Pearson Prentice Hall. Universidad De Arburn.
ISBN 968-880-706-0, 1996.
[5] Wakerly, John F. Diseo digital principios y prcticas:
Principios y diseo de lgica secuencial. Tercera Edicin.
Mxico. Pearson Educacin. Stanford University. ISBN
970-17-0404-5, 2001
[6] Click Koyo, AutomationDirect. Disponible en la red en el
URL:
http://www.aboutplcs.com/click/
About_CLICK/Features_and_Benefits/madebykoyo.html

Scientia et Technica Ao XVI, No 49, Diciembre de 2011. Universidad Tecnolgica de Pereira.

[7] Rel ZelioLogic. Telemecanique. Disponible en la red


en el URL: http://www.electricidadlynch.com.ar/
novedadesreletelemecaniquers.htm
[8] 1761 MicroLogix 1000. Programmable controllers
Allen-Bradley. Disponible en la red en el URL:
http://www.ab.com/programmablecontrol/plc/microlog
ix1000/
[9] Ramirez-Serrano, Alejandro. Discrete Event Systems
Implementing Finite State Machines (e.g., supervisory
controllers) into PLC Ladder Logic code. ENMF
619.20
[10] Barragn Pia, Antonio Javier. Instrumentacin y
Control Industrial. Dpto. Ing. Electrnica, Sistemas
Informticos y Automtica Universidad de Huelva,
Espaa. Disponible en la red en el URL:
http://www.uhu.es/antonio.barragan
[11] Holgun, Mauricio. Holgun Germn A. Orozco,
lvaro. Fundamentos Tericos para los Autmatas
Industriales. Impreso en Taller de Publicaciones de la
Universidad Tecnolgica de Pereira. Realizado bajo el
auspicio de COLCIENCIAS, Proyecto:1110-40520247: Identificacin en lnea de modos tempranos de
fallas dinmicas en mquinas rotativas. ISBN: 978958-722-096-4, 2010.
[12] Hopcroft, John E. Ullman, Jeffrey D. Introduction to
automata theory languages, and computation AddisonWesley, ISBN: 0-210-02988-X, 1993.
[13] Davis, Martin. Sigal, Ron. Weyuker, Elaine.
Computability,
complexity,
and
Languages
Fundamentals of theoretical computer science.
Morgan Kaufmann Publishers, ISBN: 0-12-206382-1,
2003.
[14] Delhaye, C. La concepcin lgica de automatismos
industriales: Rels electromecnicos Rels
electrnicos. nica Edicin. Espaa. Marcombo S.A.
ISBN 26.676-1968, 1971.

218

You might also like