Está en la página 1de 8

TP2: IMPLEMENTACION DE UN LAVARROPAS AUTOMATICO

Pgina |1

Electrnica Digital
Trabajo Prctico Integrador N 2
Diseo e Implementacin de un Lavarropas
Automtico en la Basys2
Candelero, Milton Martini, Mara Antonella
Ingeniera en Informtica - FICH UNL

INTRODUCCIN
Resumen: Un lavarropas es una mquina de estado finito que se utiliza para uso domstico. Para poder disear este programa, se

requieren diferentes componentes: el ms importante es el propiamente dicho: la mquina de estados, encargada de realizar las
operaciones de lavado, enjuague y centrifugado.
Adems, para el correcto funcionamiento y ensamble, se necesita un temporizador para los tiempos de lavado y centrifugado, y
switches para la entrada de comandos que realiza el usuario. Mediante un registro las entradas son guardadas, procesadas en la
maquina de estados y como resultado se encienden distintos diodos led dependiendo del programa que se est llevando a cabo.
Palabras clave Maquina de Estados Finitos, lavarropas, contador, temporizadores, flip flops.

FUNCIONAMIENTO GENERAL DEL LAVARROPAS AUTOMATICO

Circuito General del Lavarropas Automtico

TP2: IMPLEMENTACION DE UN LAVARROPAS AUTOMATICO

Pgina |2

Como podemos observar, la entrada del sensor Vaco/Lleno entra directamente, mientras que las entradas referentes al
programa a realizar se guardan en un registro paralelo al pulsar el botn de inicio, para evitar la interrupcin durante este, luego
este registro alimenta a la mquina de estados. Adems del reloj de la FPGA, la mquina de estados recibe como entrada dos
relojes comparativamente ms lentos que se utilizan para determinar el tiempo de lavado/enjuague y centrifugado.
Las salidas de la FSM son el estado en el que se encuentra y diversas seales que se utilizan para configurar los relojes y
el programa guardado en el registro. Por ltimo, hay un circuito combinacional que se encarga de traducir la salida de la mquina
de estados a una salida que puede conectarse directamente a los diodos led de la FPGA.

PARTES DE UN LAVARROPAS
Para lograr nuestro objetivo, procederemos a explicar las distintas partes que componen un circuito de control para un
lavarropas automtico y como funciona cada una de ellas.

1.1 MAQUINA DE ESTADOS

Circuito Combinacional para la Maquina de Estados

TP2: IMPLEMENTACION DE UN LAVARROPAS AUTOMATICO

Pgina |3

En primer lugar, para poder ensamblar el lavarropas procedemos a disear el circuito para la mquina de estados
finitos. Para eso, instanciamos los diferentes estados posibles que tiene este circuito de control para poder armar el
diagrama de estados correspondiente.
A cada estado se le asigna una combinacin binaria y en este caso se decidi representarlos con nmeros enteros.

Estado
Combinacion Binaria
APAGADO
000
CARGA DEPOSITO
001
MOTOR MINIMO
010
DEPOSITO CARGA
011
MOTOR MAXIMO
100
Tabla de Estados y Asignaciones Binarias

Diagrama de Estados

Decidimos utilizar flip flops T con seal de Reset para armar el circuito de control, armamos la tabla de excitacin
correspondiente a dicho FF. Luego, se arma una tabla de estados, compuestas por las secciones: Estado Actual, Entradas
del switch, Estado Siguiente y las entradas del flip flop dependiendo del estado en que se encuentra la maquina en
determinado periodo de tiempo.

Estado Actual Estado Siguiente


0
0
0
1
1
0
1
1
Tabla de Excitacin del Flip Flop T

T
0
1
1
0

TP2: IMPLEMENTACION DE UN LAVARROPAS AUTOMATICO

Estado actual

Q3 Q2
0 0
0 0
APAGADO
0 0
0 0
0 0
CARGA DEPOSITO
0 0
0 1
MOTOR MINIMO
0 1
0 1
0 1
DESCARGA DEPOSITO
0 1
0 1
1 0
MOTOR MAXIMO
1 0

Pgina |4

Entrada
Flip Flop Estado Siguiente
Q1 L E C T R1 R2 T3 T2 T1 Q3+1 Q2+1 Q1+1
0 0 0 0 0X X
0 0 0
0
0
0
0 1X X 0X X
0 0 1
0
0
1
0 0 1X 0X X
0 0 1
0
0
1
0 0 0 1 0X X
1 0 0
1
0
0
1X X X 0X X
0 0 0
0
0
1
1X X X 1X X
0 1 1
0
1
0
0X X X X 0X
0 0 0
0
1
0
0X X X X 1X
0 0 1
0
1
1
1X X X 1X X
0 0 0
0
1
1
1 0 1X 0X X
0 1 0
0
0
1
1 0 0 1 0X X
1 1 1
1
0
0
1 0 0 0 0X X
0 1 1
0
0
0
0X X X X X
0 0 0 0
1
0
0
0X X X X X
1 1 0 0
0
0
0

Tabla de Estados del Circuito de Control del Lavarropas Automtico

De la tabla anterior, se extrajeron las expresiones lgicas correspondientes a cada una de las entradas de los tres flip flops
que componen la mquina de estados:

Adicionalmente a las salidas de los flip flops la FSM posee otras salidas que se utilizan para activar y desactivar
los relojes que esperan a que terminen los programas de Lavado/Enjuague y Centrifugado; y otras que se utilizan para
reescribir el registro de instrucciones apagando los distintos bits a medida que se completan las ordenes. De esta forma nos
aseguramos que al final de cada ciclo el circuito termine en el estado apagado y est listo para un nuevo programa de
lavado.

TP2: IMPLEMENTACION DE UN LAVARROPAS AUTOMATICO

Pgina |5

1.2 REGISTRO PARALELO DE INSTRUCCIONES


1.2.1 REGISTRO DE UN BIT.
El registro de un bit utiliza flip flops tipo D ya que estos son ptimos a la hora de guardar un dato. Su funcionamiento fue
ampliamente explicado en la ctedra.

Registro de un bit.

1.2.2 REGISTRO PARALELO.

Registro Paralelo de tres bit.

TP2: IMPLEMENTACION DE UN LAVARROPAS AUTOMATICO

Pgina |6

Mediante la implementacin del registro anterior, obtenemos el registro de 3 bits que se utilizara para guardar las
instrucciones del programa con el objetivo de prevenir que este pueda cambiar en la mitad del ciclo.
Cada uno de los 3 bits del registro corresponden a las entradas de Lavado, Enjuague y Centrifugado. Las seales de
reset de los registros estn para que la FSM pueda apagar los bits de los procesos que ya haya completado y as avanzar en
el programa.

1.3 DIVISOR DE FRECUENCIAS DE CLOCK


1.3.1 CONTADOR A 10.
El contador a 10 es el contador de dcadas que se vio en clase usando flipflops tipo JK y que est en el libro Fundamentos
de Sistemas Digitales, Floyd 9na Edicin.

Circuito del Contador a 10.

1.3.2 DIVISOR DE FRECUENCIAS


Se conectan los ocho contadores a 10 en cascada con el objetivo de dividir la frecuencia del reloj de la FPGA por 10 en
cada salto. De esta forma, obtenemos una reduccin desde 50,000,000 Hz a 0,5 Hz.
Finalmente alimentamos un contador asncrono de 2 bits incluido en xilinx (CB2CE) que posee enable y reset asncrono lo
cual nos permite activar y desactivar el contador en el momento que se lo necesite.
Ntese que en este diseo tanto el lavado/enjuague como el centrifugado duran el mismo tiempo. A la hora de aplicarse
este diseo se deben expandir ambos divisores para lograr tiempos acorde a las tareas.

Circuito para el Divisor de Frecuencias

TP2: IMPLEMENTACION DE UN LAVARROPAS AUTOMATICO

Pgina |7

1.4 DECODIFICADOR DE SALIDA.


Para poder presentar las salidas de la mquina de estado en los diodos LED se utiliza un decodificador que responde a las
siguientes ecuaciones:

Tabla de Verdad para el Decodificador

Circuito de Decodificador para las Salidas de la Maquina de Estados

TP2: IMPLEMENTACION DE UN LAVARROPAS AUTOMATICO

Pgina |8

CONCLUSIN
Durante este trabajo pudimos poner a prueba los conocimientos adquiridos en la ctedra sobre mquinas de estado y
contadores adems de repasar nuevamente los conceptos sobre los circuitos combinacionales.
Adems aprendimos a solventar problemas que puedan surgir en una mquina de estados debido a variaciones temporales
inesperadas.

Notas finales:
Cuando ya casi finalizado el trabajo, nos topamos con una solucin que implicaba utilizar un contador de mdulo 8
solamente recorrerlo implicaba realizar el programa completo de lavado. Si bien este mtodo podra resultar ms ameno a
la hora de ver el circuito, debido a limitaciones del enunciado y al estado de nuestro trabajo decidimos proseguir con
nuestro acercamiento.
Existe una transicin ms dentro del circuito de control donde, si en cualquier periodo de tiempo el estado de de este
contiene cuatro ceros en sus entradas (0000XX = Lavado=0, Enjuague=0, Centrifuga=0, Sensor de vaco/Lleno=0)
entonces el estado del programa seria APAGADO. Esto se percibe cuando se prende la FPGA y los flip flops se encuentran
con valores aleatorios. Con apretar en botn de Encendido o On y todos los switches en estado bajo, se reinicie.
Durante una etapa del trabajo, debido a un glitch ocasionado por uno de los relojes, el sistema poda llegar a caer en un
estado no contemplado por nosotros. Se corrigi este problema haciendo que si la maquina cae en dicho estado
automticamente se reinicie y contine el programa sin inconvenientes.

También podría gustarte