Está en la página 1de 33

MQUINAS DE ESTADO FINITAS

Pablo San Segundo (C-206)


pablo.sansegundo@upm.es
Sistemas secuenciales
Secuencial = combinacional + memorias
(biestables)y k f ( x1k , x2k ,..., xnk , m1k , m2k ,...mmk )

Tipos
Sncrono: cambio de estado en cada ciclo de reloj.
Asncrono: cambio de estado nada mas detectarse
variaciones en las entradas o en las memorias internas.
Modelo formal: Mquina de estados
Mealy: las salidas depende de las entradas y del valor de
m k k f ( x1k , x2k ,..., xnk , m1k , m2k ,...mmk )
las memorias
y k f ( x1k , x2k ,..., xnk , m1k , m2k ,...mmk )

m k k f ( x1k , x2k ,..., xnk , m1k , m2k ,...mmk )


Moore: las salidas slo
y k fdepende
(m1k , m2k ,...mdel
k
m)
valor de las memorias
Mquina de Mealy

Mquina de MEALY: Una mquina secuencial de tipo


MEALY es una 5-tupla M=(Q,I,O,,) donde:

Q es un conjunto finito de estados


I es un conjunto finito de entradas (smbolos de )
O es un conjunto finito de salidas (smbolos de )
: QxI Q es la funcin de transicin de estado
: QxI O es la funcin de salida

Q(T T ) ( IT , QT )
I O
OT ( IT , QT ) COMBINACIONAL
Q
Mquina de Moore

Mquina de MOORE: Una mquina secuencial de tipo


MOORE es una 5-tupla M=(Q,I,O,,) donde:

Q es un conjunto finito de estados


I es un conjunto finito de entradas (smbolos de )
O es un conjunto finito de salidas (smbolos de )
: QxI Q es la funcin de transicin de estado
Q O es la funcin de salida

I O
Q
COMBINACIONAL
Objetivos
Nociones de Mquinas de Moore y Mealy
Conversiones entre mquinas
Modelado
Diagramas de estado
Tablas de transicin
Simplificacin
Estados equivalentes
Aplicacin sobre el diagrama de estados
Aplicacin sobre las tablas de transicin
Diseo de sistemas secuenciales sncronos
Eleccin de estados (preferentemente con semntica de salida)
Simplificacin
Ecuaciones de transicin de estados
Activacin
Retencin
Casos prcticos
Ejemplo: Sumador binario bit a bit (1/4)
Entradas
Dos entradas binarias x1 y x2
Una salida binaria y 0 1 1 1 1
x1
Estados- Maquina MEALY
y
Q = {q0,q1} donde + 1 1 0 1 1

q0 estado de no acarreo
x2
q1 estado de acarreo 0 1 1 0 0

Funcin de transicin de estado


(q0,11) = q1 (q0,00/01/10) = q0
(q1,00) = q0 (q1,10/01/11) = q1
Funcin de salida
(q0,00/11) = 0 (q0,01/10) = 1
(q1,00/11) = 1 (q1,01/10) = 0 IO
EJERCIC
er da d p ara y
v
Tablas de
Ejemplo: Sumador binario de 1 bit (2/4)
m={q0 =0,q1 =1}

x1 x2 mt mt+t y
0 0 0 0 0
0 0 1 0 1
0 1 0 0 1
0 1 1 1 0
1 0 0 0 1
1 0 1 1 0
1 1 0 1 0
1 1 1 1 1

N
CUESTI
Interpreta
cin mt t x1 x2 x1mt x2 mt
?
semntica

y x1 x2 mt x1 x2 mt x1 x2 mt x1 x2 mt
Ejemplo: Sumador binario bit a bit (3/4)

0 1 1 1 1
x1
y
+ 1 1 0 1 1

x2
0 1 1 0 0
Evento de ACTIVACIN
del estado q1

00/0 11/1

11/0
01,10/1 q0 q1 01,10/0
00/1

Diagrama de estados
Eventos de RETENCIN
del estado q0 CUESTIN s una mqu
ina
es tr e q ue e
Demu
de Mealy
Ejemplo: Sumador binario bit a bit (4/4)
0 1 1 1 1
x1
Diseo-Mquina MOORE y
+ 1 1 0 1 1
Q = {q00,q01,q10,q11} donde
x2
q00 estado de no acarreo con salida y=0
0 1 1 0 0

q01 estado de no acarreo con salida y=1


q10 estado de acarreo con salida y=0
q11 estado de acarreo con salida y=1

Funcin de transicin de estados


(q00/q01 ,00) = q00 (q00/q01 ,11) = q10
(q10/q11 ,00) = q01 (q10/q11 ,11) = q11
(q00/q01 ,01/10) = q01 (q10/q11,01/10) = q10

Funcin de salida I N c o n versi


n
T le re
CUES otra posib aly a Moo
(q00/q10) = 0 (q01/q11) = 1 Indiqu
e de Me
Representacin-Diagrama de estados (1/2)
Diagrama de estados
Grafo cuyos nodos representan estados y los arcos
cambios (transiciones) entre estados fruto de eventos
00/0 11/1
MEALY
CUESTIN I
11/0
MEALY o MOORE? 01,10/1 q0 q1 01,10/0
00/1
CUESTIN II
Secuencial o combinacional?

00 q00 /0 11 q10 /0 10,01

MOORE
SUMADOR 0 1 ,1 0

0 1 ,1 0
11
EN SERIE DE
1 BIT

q01 /1 00 q11/1 11
01,10
Representacin-Tabla de transicin (2/2)
0 1 1 1 1
Tabla de transicin de estados x1
Representacin tabular de las funciones de transicin de
y
estado y salida + 1 1 0 1 1

SUMADOR EN SERIE DE 1 BIT x2


0 1 1 0 0

Modelo MEALY Modelo MOORE


q T |x00
1 x01
2 11 10 00 01 11 10 O q T |x1x 2
q0 q0,0 q0,1 q1,0 q0,1 q00 q00 q01 q10 q01 0
q1 q0,1 q1,0 q1,1 q1,0 q01 q00 q01 q10 q01 1
q10 q01 q10 q11
qT T q10 0
q11 q01 q10 q11 q10 1
qT T
CUESTIN
Razone si pueden existir problemas de
implementacin de la
mquina para el caso de La salida se computa a partir del
entrada 11 estando en el caso estado actual (Qt) y las entradas
qo
SIMPLIFICACIN DE
MQUINAS DE ESTADO

ESTADOS EQUIVALENTES
Caracterizacin de estado equivalente (1/3)

ESTADOS EQUIVALENTES

Dos estados son equivalentes cuando para cualquier secuencia


de entradas la mquina evoluciona de la misma manera, es decir:
I. Pasa por los mismos estados
II. Presenta la misma salida en todo momento
Simplificacin-ejemplo (2/3)
Reconocedor de cadenas 101
Nota: 10101 es una sola secuencia, no dos
x y II
Rec.(101) E S TIN l?
...111011011 ...001001000 CU
b in a c i ona
Com

I: x={0,1} 0/0 1/0 1/0


O: y={0,1}
1/0 0/0 1/1
NADA 1 10 101
Cadena {101} Cadena {101}
NO encontrada encontrada 0/0
0/0

Estados: NADA ningn smbolo reconocido


1 subcadena 1 reconocida
I
10 subcadena 10 reconocida CUESTIN
oore?
Mealy o M
101 cadena 101 reconocida
Simplificacin-ejemplo (3/3)
Identificacin de estados equivalentes
EJERC
ICIO
e t ra n sicin
Tabla d
0/0 1/0 1/0

1/0 0/0 1/1 101


NADA 1 10
Q\X x=0 x=1
0/0
1/1 Qn Qn/0 Q1/0
0/0 Q1 Q10/0 Q1/0
Q10 Qn/0 Q101/1
Conversin a Mquina de Moore Mejor solucin para Q101 Qn/0 Q1/0
Control Secuencial

0 1
1
Q\X x=0 x=1 y
Qn Qn Q1 0 1 0 1
NADA/0 1/0 10/0 101/1
Q1 Q10 Q1 0
0
Q10 Qn Q101 0 0
Q101 Qn Q1 1 No hay estados equivalentes
DISEO DE SISTEMAS DE
EVENTOS DISCRETOS

CASOS PRCTICOS
Ejercicio: Control de un carrito (1/7)
LEY DE CONTROL
Un ciclo completo de
ida y vuelta tras cada Dcha Entradas Salidas
pulsacin de PON Izqda
PON Izq
A B
A Dcha

PON B

Tanteo con mquina de Moore: Un estado por


cada combinacin de salidas posibles con
accin de control:
Reposo (R)
Derecha (D)
Izquierda (I)
Ecuaciones de transicin (2/7)
Pon A B
E={Pon, A, B}
Q={R, D, I} Qt\ 00 00 01 01 10 10 11 11 O
0 1 0 1 0 1 0 1
O= {Do, Io}
R x x 0,0
D x x 1,0
I x x 0,1
Qt\ 00 00 01 01 10 10 11 11 O
0 1 0 1 0 1 0 1
Ecuaciones de
activacin de estado R x D x 0,0
DI, RD, IR
D I x I x 1,0

I R x R x 0,1
Qt\ 00 00 01 01 10 10 11 11 O
0 1 0 1 0 1 0 1
Ecuaciones de
retencin de estado R R R R x R R D x 0,0
RR, DD, II
D D I D x D I D x 1,0
I I I R x I I R x 0,1
Ecuaciones de activacin (3/7)

Qt\ 00 00 01 01 10 10 11 11 O
0 1 0 1 0 1 0 1
R x D x 0,0
D I x I x 1,0
I R x R x 0,1

Activacin del estado DerechaDt 1 Rt Pon A


I t 1 Dt (BA B )
Activacin del estado Izquierda
Activacin del estado ReposoRt 1 I t A
PON A B

Reposo Dcha Izqda

A
Ecuaciones de retencin (4/7)

Qt 00 00 01 01 10 10 11 11 O
0 1 0 1 0 1 0 1
R R R R x R R D x 0,0
D D I D x D I D x 1,0
I I I R x I I R x 0,1

Retencin del estado de reposo


Usando solo entradas y reposo(t)-el formalismo

Rt 1 Rt (( Pon A B) (Pon A B ) ( Pon


A B ) ...)
Usando entradas, reposo(t) y derecha(t+1),
programacin PLCs
Rt 1 Rt Dt 1
Retencin de D, I?
Ecuaciones de transicin finales (5/7)

Qt 00 00 01 01 10 10 11 11 O
0 1 0 1 0 1 0 1
R R R R x R R D x 0,0
D D I D x D I D x 1,0
I I I R x I I R x 0,1

Activacin Retencin

Dt 1 Rt A Pon Dt It 1
Trans. Derecha

I t 1 Dt B I t Rt 1
Trans. Izquierda

Trans. ReposoRt 1 I t A Rt Dt 1
Modificacin de especificaciones (6/7)
Sucesivas pulsaciones de Pon alternan la
direccin del movimiento del carrito (si no
est en los extremos)
Qt 00 00 01 01 10 10 11 11 O
Activacin 0 1 0 1 0 1 0 1
R x D x 0,0
D I x I I x 1,0
I R x D R x 0,1
Qt 00 00 01 01 10 10 11 11 O
0 1 0 1 0 1 0 1
Retencin R R R R x R R x 0,0
D D D x D x 1,0
I I I x I x 0,1
Nuevas ecuaciones de transicin (7/7)

Qt 00 00 01 01 10 10 11 11 O
0 1 0 1 0 1 0 1
R R R R x R R D x 0,0
D D I D x I I D x 1,0
I I I R x D I R x 0,1

Activacin Retencin

Trans. DerechaDt 1 Pon B ( Rt I t ) Dt I t 1

I t 1 Dt ( B Pon) I t ( Rt 1 Dt 1 )
Trans. Izquierda

Trans. ReposoRt 1 I t A Rt Dt 1 Cuestin ?


das
Ec. Sali
Control de trfico en un sentido-Caso A

e2

e1

q1 q2 q3 q4

q5 q6 q7

Disee una mquina de estados que permita detectar vehculos


que circulan en direccin contraria por una autova. Dicho sistema
tendr dos entradas e1 y e2 que sern las seales de dos clulas
fotoelctricas situadas a una distancia menor que la longitud
del vehculo y la separacin entre vehculos.
Solucin
(e1,e2) salida

Qt\ 00 01 10 11 O
C1: no vehculo NO NO SI SC x 1
C2: correcto SC NO SC SC SC 1
C3: incorrecto SI NO SI SI SI 0

NOt 1 ( SCt SI t ) E1 E 2 NOt (SI t 1 SC


t 1 )

SCt 1 NOt E1 SCt NOt 1

SI t 1 NOt E 2 SI t NOt 1

01,11,10 00,11 01,11,10

00 10
C3/0 C1/1 C2/1 CUESTIN
01 00 Ecuaciones de salida
Control de trfico en un sentido-caso B

e2

e1

q1 q2 q3 q4

IN e
CUEST o el diseo d
lid
Es v el caso A?
sd
estado

q5 q6 q7

Disee una mquina de estados que permita detectar vehculos


que circulan en direccin contraria por una autova. Dicho sistema
tendr dos entradas e1 y e2 que sern las seales de dos clulas
fotoelctricas situadas a una distancia mayor que la longitud
del vehculo y menor que la separacin entre vehculos
Tabla de transicin (1/2)
(e1,e2)

Qt\ 00 01 10 11 O
no vehculo NO NO SI SC x 1
correcto SC VE SC SC x 1
incorrecto C
vehculo entre sensores no ok SI VEI SI SI x 0
vehculo entre sensores ok
VEI VEI x SI x 0
VE VE SC x x I
C C

CUESTIN I
Es correcta la tabla?

CUESTIN II
Indique si existe un problema con el diseo
Tabla de transicin (2/2)

Qt\ 00 01 10 11 O
no vehculo
(e1,e2)

correcto-10 NO NO SI-01 SC- x 1


10
correcto-00
SC-10 SC- x SC- x 1
correcto-01 00 10
SC-00 SC- SC- x x 1
00 01
SC-01 NO SC- x x 1
01
SI-01 0
CUESTI
NI
Complete SI-00 CUESTIN II lg
0
n estado?
la tabla im pli fi c ar a
Se puede s
SI-10 0

EJERCICIO
Ecuaciones de activacin y retencin para la mquina simplificada
Ejercicio: Control de un cilindro (1/4)
Realizar un automatismo para el control de un cilindro de doble
efecto con una electrovlvula 5/2 biestable. Se dispone de un
interruptor de inicio (I) y otro de parada (P), junto con dos
sensores de posicin S1 y S2, que detectan la compresin y
expansin del cilindro respectivamente.
Al activar I se realizarn ciclos completos de expansin/compresin
del cilindro hasta que se active P, momento en que el cilindro
volver al reposo, tras terminar el ciclo actual.
En reposo el cilindro siempre estar comprimido. La parada
siempre ser preferente.

I P
Diseo de mquina de estado (2/4)
Qt 000 000 A1 A
Entradas: {I, P, S1, S2} 0 1 2
Salidas: {A1 y A2} R
Estados E
{ Reposo (R), Expandiendo
C (E), Comprimiendo (C)
} conf. inicial del reposo

EJERCICIO I
I . Rt 1 Ct P S1 Rt Et 1 Ecuaciones de salidas

II . Et 1 Rt I S1 S2 P Ct S1 P Et Ct 1

III . Ct 1 Et S 2 Ct ( Et 1 Rt 1 ) EJERCICIO
II
Ecuacione
s en lengu
aje
de
Indica parada contactos
preferente (KOP)
Rt 1 Ct P S1 Rt Et 1
Lenguaje KOP (3/4)
Et 1 Rt I S1 S2 P Ct S1 P Et Ct 1
Ct 1 Et S 2 Ct ( Et 1 Rt 1 )

Ec. activacin

Ec. retencin

E S TIN ?
CU
al g n error
Hay
Grafcet del sistema (4/4)
INTRODUCCIN A LAS MQUINA DE ESTADO
(con aplicacin a control)

I. Definiciones: Mquinas de Mealy y Moore


II. Estados equivalentes-simplificacin
III. Diseo: seleccin de estados
IV. Ecuaciones de activacin y retencin
V. Casos prcticos

PREGUNTAS?

También podría gustarte