Está en la página 1de 6

UASLP FI

Laboratorio de Sistemas Digitales

Prctica 7

Prctica 7
Control de una Mquina Expendedora
Mediante Mquinas de Estado Finito (FSM)
7.1 Objetivo
El alumno aprender la importancia del diseo de una mquina de estados finitos (FSM) para controlar un
proceso cualquiera.
Disear un control mediante mquinas de estados finitos para controlar una mquina expendedora de
productos.

7.2 Antecedentes
Un circuito secuencial como ya se ha visto con anterioridad consiste en dos etapas principales: una etapa
combinacional que tradicionalmente est conformada por compuertas AND, OR y NOT, y la siguiente
etapa consiste bsicamente en Flip-Flops y es una etapa de memoria.
A un circuito secuencial tambin se le conoce en la literatura tcnica como Mquina de Estado Finito o
FSM de finite state machines. El nombre proviene del hecho de que el comportamiento funcional de estos
circuitos puede representarse mediante un nmero finito de estados.
Existen dos configuraciones bsicas de las FSM las cuales son las siguientes:

Mquinas de Moore
En esta configuracin, el circuito secuencial o FSM las salidas slo dependen de los
estados.
Mquinas de Mealy
En esta mquina, las salidas dependen tanto del estado como de las entradas
principales.

Una FSM, ya sea Moore o Mealy, pude formar parte de circuito que desempee una tarea especfica, tal
como el control de operaciones en un procesador en el que el control de la unidad aritmtica lgica (ALU)
est regido por una FSM que realiza el comando para permitir a la ALU realizar las operaciones bsicas
suma-resta corrimientos lgicos corrimientos aritmticos entre otras operaciones. En sistemas
robotizados, sistemas mecatrnicos, entre otros.

7.3 Ejemplo de diseo de una FSM


Disear una FSM de una mquina expendedora de productos, el producto cuesta $3.00 pesos y acepta
monedas de $1.00 y $2.00 pesos. Suponga que solamente se puede introducir una moneda a la vez y
que la mquina tiene monedas ilimitadas para dar cambio. Tambin suponga que la seal de reloj tiene
una frecuencia mucho mayor que la velocidad con que se introducen (las monedas).
El sistema tiene dos entradas
U para indicar que se ha introducido una moneda de $1.00
D para indicar que se ha introducido una moneda de $2.00
El sistema tiene dos salidas
P para indicar que se tiene que entregar producto
C para indicar que se tiene que entregar cambio

UASLP FI

Laboratorio de Sistemas Digitales

Prctica 7

7.3.1 Planteamiento de la FSM


i.

La mquina comienza a plantearse iniciando en un estado inicial S0 que indica que no se ha


recibido ninguna moneda y por lo tanto no se entrega producto ni cambio. Mientras no se reciba
ninguna moneda se debe permanecer en este estado.

ii.

Cuando se reciba una moneda de $1.00 (U=1) se debe pasar a un estado S1 que indique que
hay $1.00 acumulado, todava sin dar producto ni cambio.

iii.

Cuando se reciba una moneda de $2.00 (D=1) se debe pasar a un estado S2 que indique que
hay $2.00 acumulados sin dar producto ni cambio.

El grafo parcial que arroja este anlisis se ilustra en la figura 7.1.

Figura 7.1. Grafo parcial mostrando a S0 y sus transiciones

Ahora se analiza el estado S1 con $1.00 acumulado.


iv.

Si en el estado S1 no se reciben monedas permanecer sin cambios (es decir, se contina en el


estado S1). De lo contrario, si se recibe una moneda de $1.00 se procede al estado S2, para
indicar que hay $2.00 acumulados.

v.

Si se recibe una moneda de $2.00 se procede a un estado S3 donde se entregar el producto sin
cambio.

El grafo parcial que arroja este anlisis se ilustra en la figura 7.2.

Figura 7.2. Grafo parcial hasta S1.

UASLP FI

Laboratorio de Sistemas Digitales

Prctica 7

Ahora se analiza el estado S2 con $2.00 acumulado.


vi.

El estado S2 indica que hay $2.00 acumulados, y mientras no reciba ninguna moneda debe
permanecer sin cambios.

vii.

Si se recibe una moneda de $1.00 se procede al estado S3 donde se entrega producto.

viii.

Si se entrega una moneda de $2.00 se procede a un estado S4 donde se entrega el producto y


se otorga cambio tambin.

El grafo parcial que arroja este anlisis se ilustra en la figura 7.3.

Figura 7.3. Grafo parcial hasta S2.

Dado que la frecuencia de reloj se supone demasiado elevada respecto a la velocidad con que se
introducen las monedas, se puede suponer que despus de dar producto y cambio en los estados S3 y
S4, no se reciben ms monedas y se procede incondicionalmente al estado inicial S0. El grafo completo
se muestra en la figura 7.4.

Figura 7.4. Grafo completo de la mquina expendedora.

7.3.2 Vaciado de informacin a la tabla de estados


La siguiente etapa consiste en vaciar la informacin a una tabla de estados y elegir el FF a utilizar. Por
simplicidad, seleccionamos el FF tipo D para el diseo del circuito secuencial.
La tabla de estados, contiene todas las transiciones efectuadas en el grafo, y se ilustra a continuacin

UASLP FI

Laboratorio de Sistemas Digitales

Prctica 7

Tabla 7.1. Tabla de transicin de estados


Estado
presente

Qi
000
001
010
011
100

00
S0
S1
S2
S0
S0

S0
S1
S2
S3
S4

Estado
Siguiente
Entrada:
DU
01 10
S1 S2
S2 S3
S3 S4
S0 S0
S0 S0

Salida:
PC
11
x
x
x
S0
S0

0
0
0
1
1

0
0
0
0
1

Tabla 7.2. Tabla de transicin de estados codificada


Estado
presente

000
001
010
011
100

00
000
001
010
000
000

Estado
Siguiente
Entrada: D U
01
10
001 010
010 011
011 100
000 000
000 000

Salida: P C
11
xxx
xxx
xxx
000
000

00
00
00
00
00

00
00
10
00
00

00
10
11
00
00

00
00
00
00
00

Para este ejemplo se necesitan dos tablas de transiciones. En la primera se establece el tipo de Flip-flop
que deber utilizarse en el diseo, la segunda tabla est formada por las salidas del sistema.
Tabla 7.3. Tabla de excitacin de Flip-flops
U
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1

D
0
0
0
0
0
0
0
0
1
1
1
1
1
1
1
1
0
0
0
0
0
0
0
0
1
1
1
1
1
1
1
1

q2
0
0
0
0
1
1
1
1
0
0
0
0
1
1
1
1
0
0
0
0
1
1
1
1
0
0
0
0
1
1
1
1

q1
0
0
1
1
0
0
1
1
0
0
1
1
0
0
1
1
0
0
1
1
0
0
1
1
0
0
1
1
0
0
1
1

q0
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1

Q2
0
0
0
0
0
x
x
x
0
0
0
0
0
x
x
x
0
0
1
0
0
x
x
x
x
x
x
0
0
x
x
x

Q1
0
0
1
0
0
x
x
x
0
1
1
0
0
x
x
x
1
1
0
0
0
x
x
x
x
x
x
0
0
x
x
x

Q0
0
1
0
0
0
x
x
x
1
0
1
0
0
x
x
x
0
1
0
0
0
x
x
x
x
x
x
0
0
x
x
x

J2
0
0
0
0
x
x
x
x
0
0
0
0
x
x
x
x
0
0
1
0
x
x
x
x
x
x
x
0
x
x
x
x

K2
x
x
x
x
1
x
x
x
x
x
x
x
1
x
x
x
x
x
x
x
1
x
x
x
x
x
x
x
1
x
x
x

J1
0
0
x
x
0
x
x
x
0
1
x
x
0
x
x
x
1
1
x
x
0
x
x
x
x
x
x
x
0
x
x
x

K1
x
x
0
1
x
x
x
x
x
x
0
1
x
x
x
x
x
x
1
1
x
x
x
x
x
x
x
1
x
x
x
x

J0
0
x
0
x
0
x
x
x
1
x
1
x
0
x
x
x
0
x
0
x
0
x
x
x
x
x
x
x
0
x
x
x

K0
x
0
x
1
x
x
x
x
x
1
x
1
x
x
x
x
x
0
x
1
x
x
x
x
x
x
x
1
x
x
x
x

D2
0
0
0
0
0
x
x
x
0
0
0
0
0
x
x
x
0
0
1
0
0
x
x
x
x
x
x
0
0
x
x
x

D1
0
0
1
0
0
x
x
x
0
1
1
0
0
x
x
x
1
1
0
0
0
x
x
x
x
x
x
0
0
x
x
x

D0
0
1
0
0
0
x
x
x
1
0
1
0
0
x
x
x
0
1
0
0
0
x
x
x
x
x
x
0
0
x
x
x

UASLP FI

Laboratorio de Sistemas Digitales

Prctica 7

Como se puede ver en la tabla 7.3, las ecuaciones de transicin para los FF, se obtienen a partir de
mapas de cinco variables, o puede recurrir a un software especializado para realizar la reduccin de la
tabla de verdad y obtener las ecuaciones.
Para encontrar las ecuaciones de excitacin de las salidas se recurre a la tabla 7.4. En esta tabla estn
presentes todas las combinaciones para C y P.
Tabla 7.4. Tabla de excitacin de salidas
q2
0
0
0
0
1
1
1
1

q1
0
0
1
1
0
0
1
1

q0
0
1
0
1
0
1
0
1

C
0
0
0
1
1
x
x
x

P
0
0
0
0
1
x
x
x

Realizando las operaciones pertinentes, y considerado la utilizacin de Flip-flops JK, se obtienen las
siguientes expresiones:
Para las entradas a los FF-JK

Para las salidas

J0 = Dq2

P = q2

K 0 = q1 + D

C = q1q0 + q2

J1 = Dq0 + Uq2
K1 = q0 + U
J2 = Uq1q0
K2 = 1

7.4 Desarrollo de la prctica


Utilizando la tabla 7.4 y considerando las columnas para el Flip-flop tipo D, encuentre las ecuaciones de
entrada a los FF tipo D. NOTA: Las expresiones de salida son las mismas que en el JK pues no
dependen de los FF a utilizar.
La expresin para D1 es D1 = Uq1q0 + Dq1q0 + Uq2 q1 .
Encuentre las ecuaciones para D0 y D2.
Determine el nmero de compuertas a utilizar mediante un diagrama esquemtico.
Arme el circuito lgico digital
Agregue la parte del reloj diseado en las prcticas anteriores.
Realice las conexiones necesarias y pruebe su circuito.
o Obedece al grafo de la figura 7.4?

7.5 Material y equipo


Material
Cantidad
1
2
1
3
1
1

Elemento
Fuente de 5 VCD
Tablilla de conexiones
Interruptores DIP
Diodo Emisor de Luz
Resistencia de 470
Potencimetro de 1M

Descripcin
Fuente de alimentacin
Para circuitos integrados
4 entradas de cambio deslizable
Estndar
Para la construccin del multivibrador astable 555
Para la construccin del multivibrador astable 555

UASLP FI

1
2
1
Las
necesarias
Las
necesarias
Las
necesarias
4

Laboratorio de Sistemas Digitales

Prctica 7

Capacitor de 100F a 50V


Capacitares de 0.47F a 50V
555
74LS32

Para la construccin del multivibrador astable 555


Para la construccin del astable (filtros)
multivibrador
Circuito integrado OR de dos entradas

74LS08

Circuito integrado AND de dos entradas

74LS04

Circuito integrado inversor

Resistencias 1K

Para proteccin contra corto circuito

7.6 Conclusiones
7.7 Cuestionario
1. Dibuje el esquemtico del circuito combinacional y secuencial del grafo que est en la figura 7.4.
2. Simule el circuito utilizando Electronics work bench.
3. Simule el circuito de la prctica y comprelo con el del punto 1 del cuestionario.
4. Investigar los siguientes temas:
Por qu es necesario el control en una ALU?
La arquitectura de una computadora bsica
La diferencia entre un microprocesador y un microcontrolador.

Anexar la simulacin solicitada.

También podría gustarte