proyecto cafetera

Colegio de Ciencia y Tecnología INGENIERÍA EN SISTEMAS ELECTRÓNICOS Y DE TELECOMUNICACIONES MATERIA: electrónica digit

Views 68 Downloads 0 File size 712KB

Report DMCA / Copyright

DOWNLOAD FILE

Recommend stories

Citation preview

Colegio de Ciencia y Tecnología

INGENIERÍA EN SISTEMAS ELECTRÓNICOS Y DE TELECOMUNICACIONES

MATERIA: electrónica digital i Despachador de café

PROFESOR: CASTILLO SANCHEZ ADRIAN MIGUEL

RODEA AGUILAR ELISEO

GRUPO:

1102

García Diego, 168, col. Doctores, del. Cuauhtémoc, c.p. 06720, Ciudad de México correo: eliseo.rodea@ uacm.edu.mx, www.uacm.edu.mx

Colegio de Ciencia y Tecnología Objetivo académico: Que el estudiante demuestre el conocimiento y las habilidades que ha desarrollado para la solución de problemas digitales, en particular con el uso de circuitos secuenciales. Objetivo del proyecto: Que el estudiante diseñe y construya un circuito que controle y registre el depósito de monedas en una máquina despachadora de bebidas. INTRODUCCIÓN Una compañía está diseñando una máquina que pueda despachar automáticamente bebidas calientes en la universidad. Las bebidas serán almacenadas en unos contenedores térmicos y cuando el precio de la bebida sea cubierto la máquina colocará un vaso debajo de una válvula que servirá la bebida seleccionada. (Ver Figura 1).

NESCAF Precio

$

Inserción de dinero

Deposite

LECHE CAFÉ

Selector de bebida

INDICADOR DE LLENADO

Válvula de llenado

Sensor de llenado de bebida

Figura 1. Esquema del sistema a controlar

García Diego, 168, col. Doctores, del. Cuauhtémoc, c.p. 06720, Ciudad de México correo: eliseo.rodea@ uacm.edu.mx, www.uacm.edu.mx

Colegio de Ciencia y Tecnología Se le solicita que realice el diseño del circuito digital que controlará el depósito de monedas para cubrir el monto del precio de la bebida. Por el momento la máquina sólo acepta monedas de $1 y $2. El sistema permite mostrar la cantidad que se necesita depositar para cubrir el monto de la bebida. El precio de las bebidas es de $7. La operación general es como sigue. Un sensor registra la cantidad de monedas de $1 depositadas a la máquina, otro sensor registra las monedas de $2, cuando el precio de la bebida ha sido cubierto la máquina indicará que puede seleccionar una bebida (leche o café). Cuando se ha cubierto el precio de la bebida el display mostrará, indistintamente del estado de la máquina, el precio de $7. Consideraciones de diseño: 1) El circuito lógico debe indicar que se puede seleccionar una bebida siempre y cuando se haya cubierto el monto de $7. 2) No es posible depositar dos monedas al mismo tiempo. 3) Para este prototipo considere que, no se introducirá más dinero del que realmente se necesita, esto es, si falta $1 para cubrir el monto no se debería introducir una moneda de $2. Si esto pasará el monto se cubrirá pero la máquina no entregará cambio ni almacenará el restante. 4) La inserción de las monedas se emulará mediante dos interruptores momentáneos tipo “push buttton” que serán operados por el usuario. 5) En el display “DEPOSITE” se deberá mostrar la cantidad faltante para cubrir el precio de la bebida.

DESARROLLO Comenzaremos el proyecto determinando las necesidades del sistema y desarrollando un plan que satisfaga estas necesidades. Partiendo de la descripción hecha en el apartado anterior (consideraciones de diseño), se necesitan varios subsistemas, los cuales son: Contador de monedas introducidas, comparador y mostrar resultados. A continuación se muestra el diagrama a bloques del circuito a diseñar.

García Diego, 168, col. Doctores, del. Cuauhtémoc, c.p. 06720, Ciudad de México correo: eliseo.rodea@ uacm.edu.mx, www.uacm.edu.mx

Colegio de Ciencia y Tecnología Descripción de cada uno de los subsistemas que se implementarán: Contador de monedas introducidas: Esta etapa del circuito será la encargada de contar el número de monedas de uno y dos pesos que se vayan introduciendo. Comparador: Será en esta etapa del circuito donde se decidirá si el número de monedas introducidas es suficiente para cubrir el monto de la bebida, o si ya se excedió. Resultados: Se utiliza para mostrar en cada momento lo que está pasando con el sistema, mostrará cuántas monedas faltan por ingresar para cubrir el monto de la bebida Empezaremos primeramente por hacer nuestra tabla de estados. Como el costo de la bebida será 7 pesos, y en binario necesitamos tres bits para alcanzar el número7. Entonces utilizaremos Flip Flops, uno para cada bit. Además tendremos dos entradas (interruptores) que son las que simularan la entrada de las monedas; un interruptor para las monedas de $ 1 peso y otro para las de $ 2 pesos. El número de combinaciones posibles para el número 7 son cuatro, para el número 6 también, hasta llegar de manera descendente hasta el número cero; que también son cuatro combinaciones posibles. .* Nota: Realmente se utilizaron sólo dos displays, ya que si utilizamos el display en el cual se muestra el precio de las bebidas para mostrar la cantidad que falta por ingresar, se reduciría el costo del circuito sin comprometer la funcionalidad del mismo. Como son dos entradas las que tendremos, nos es necesario indicar que la entrada X le corresponderá el valor de $ 2 pesos, y la entrada Y $ 1 peso. Hasta aquí podemos llenar la primera parte de la tabla de estados en la columna de “Estado actual”, entrada “X” y entrada “Y”. La columna de “Estado siguiente” se llenará realizando la resta del estado actual con la entrada de uno o dos pesos según sea el caso. Nuestras salidas JA, KA, JB, KB, y JC KC las llenaremos haciendo la comparación entre los bits del “Estado actual” y el “Estado siguiente” conjuntamente con la siguiente tabla:

QJ

Q(T+1)

J K

0 0 1 1

0 1 0 1

0 X 1 X X 1 X 0

Finalmente nuestra tabla queda llenada de la siguiente manera: TABLA DE ESTADOS

García Diego, 168, col. Doctores, del. Cuauhtémoc, c.p. 06720, Ciudad de México correo: eliseo.rodea@ uacm.edu.mx, www.uacm.edu.mx

Colegio de Ciencia y Tecnología Estado actual ABC 111 111 111 111 110 110 110 110 101 101 101 101 100 100 100 100 011 011 011 011 010 010 010 010 001 001 001 001 000 000 000 000

Entrada X 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

Y 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

Estado siguiente ABC 111 110 101 111 110 101 100 110 101 100 011 101 100 011 010 100 011 010 001 011 010 001 000 010 001 000 000 001 000 000 000 000

JA X X X X X X X X X X X X X X X X 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0

KA 0 0 0 0 0 0 0 0 0 0 1 0 0 1 1 0 x x x x x x x x x x x x x x x x

JB X X X X X X X X 0 1 0 0 0 1 1 0 X

KB 0 1 0 0 0 1 1 0 X X X X X X X X 0

X X X X X X 0 0 0 0 0 0 0 0

0 0 0 1 1 0 X X X X X X X X

JC X X x X 0 0 1 0 X X X X 0 0 1 0 X X X X 0 0 1 0 X X X X 0 0 0 0

García Diego, 168, col. Doctores, del. Cuauhtémoc, c.p. 06720, Ciudad de México correo: eliseo.rodea@ uacm.edu.mx, www.uacm.edu.mx

KC 0 0 1 0 X X X X 0 0 1 0 X X X X 0 0 1 0 X X X X 0 1 1 0 X X X X

Colegio de Ciencia y Tecnología

Una vez que ya hemos llenado nuestra Tabla de Estados, entonces procederemos a dibujar el diagrama de estados, y así fue como nos quedó: Diagrama de Estados

00,11 00,01 10,11

10

111 000

01,10

00,11

01

00,11

110

01

01

001

10 01

10

01

01

010

101 00,11

10 10

011

10

100 00,11

00,11 00,11

Mapas de Karnaugh Apoyandonos nuevamente de la Tabla de Estados podremos hacer los mapas de Karnaugh:

García Diego, 168, col. Doctores, del. Cuauhtémoc, c.p. 06720, Ciudad de México correo: eliseo.rodea@ uacm.edu.mx, www.uacm.edu.mx

Colegio de Ciencia y Tecnología Para JA=A

A=1 00 01 X X X X X X X X

BC/XY 00 01 11 10

11 X X X X

10 X X X X

BC/X Y 00 01 11 10

Para KA=X’YB’+XY’B’C’ A=1 00 01 BC/XY 0 1 00 0 1 01 0 0 11 0 0 10 Para JB=X’YA+XY’AC’ BC/XY 00 01 11 10

00 0 0 X X

A=1 01 1 1 X X

00

A=0 01

11

10

0 0 0 0

0 0 0 0

0 0 0 0

0 0 0 0

11 X X X X

10 X X X X

11 0 0 0 0

10 1 0 0 0

BC/XY 00 01 11 10

00 X X X X

A=0 01 X X X X

11 0 0 X X

10 1 0 X X

BC/XY 00 01 11 10

00 0 0 X X

A=0 01 0 0 X X

11 0 0 X X

10 0 0 X X

11 X X 0 0

10 X X 0 1

00 X X 0 0

A=0 01 X X 1 1

11 X X 0 0

10 X X 0 1

Para KB=X’Y+XY’C’ BC/XY 00 01 11 10

00 X X 0 0

A=1 01 X X 1 1

BC/XY 00 01 11 10

García Diego, 168, col. Doctores, del. Cuauhtémoc, c.p. 06720, Ciudad de México correo: eliseo.rodea@ uacm.edu.mx, www.uacm.edu.mx

Colegio de Ciencia y Tecnología Para JC=XY’A+XY’B A=1 00 01 BC/XY 0 0 00 X X 01 X X 11 0 0 10 Para KC=XY’+X’YA’B’ A=1 00 01 BC/XY X X 00 0 0 01 0 0 11 X X 10

11 0 X X 0

11 X 0 0 X

10 1 X X 1

BC/XY 00 01 11 10

00 0 X X 0

A=0 01 0 X X 0

11 0 X X 0

10 0 X X 1

10 X 1 1 X

BC/XY 00 01 11 10

00 X 0 0 X

A=1 01 X 1 0 X

11 X 0 0 X

10 X 1 1 X

El siguiente paso a realizar es hacer la simulación en el software “Circuit maker”. Se realizaron n cantidad de veces la simulación en el software hasta que por fin nos arrojó las respuestas a nuestro planteamiento del problema. En un principio se manejaron 21 compuertas AND, pero se logró reducirlas a 13 de ellas. La siguiente es una imagen de la simulación final:

García Diego, 168, col. Doctores, del. Cuauhtémoc, c.p. 06720, Ciudad de México correo: eliseo.rodea@ uacm.edu.mx, www.uacm.edu.mx

Colegio de Ciencia y Tecnología Como último paso se procedió a armar el diseño quedando de la siguiente manera como se muestra en la siguiente fotografía tomada directamente junto al generador de pulsos que se utilizó para realizar las pruebas. Armado físico de los componentes. Lista de componentes y materiales.

Un chip 74LS04 (INVERSOR). Cuatro chips 74LS08 (compuertas AND). Dos chips 74LS32 (compuertas OR). Dos Flip-Flops 74LS112. Un decodificador 74LS47. Display 7 segmentos anodo común. Dos push buttons Un dip switch 5 resistencias de 330 ohms. Juego de jumpers 2 protoboard Total

$ 10.00 $ 32.00 $ 16.00 $ 50.00 $ 10.00 $ 12.00 $ 16.00 $ 12.00 $ 5.00 $ 50.00 $ 160.00 $ 373.00

Conclusiones Se hicieron muchos cambios al circuito original, ya que aunque en la simulación un determinado circuito puede funcionar perfecto, al alambrarlo ya no funciona “tan bien” como en la simulación, por ejemplo, con el circuito que mandaría la señal para indicar que ya se depositaron los 7 pesos, se hicieron 3 circuitos diferentes, primero se intentó con compuertas, se colocó una nand de 3 entradas a la salida del restador para que se obtuviera una salida en alto cuando sus tres primeros bits fueran cero, o sea, cuando el número de monedas ingresadas fuera igual a siete pesos, y para detectar cuando ya se había pasado se utilizaba el acarreo de salida de dicho restador. Pero no funcionó, ya desde la simulación daba problemas, ya que la transición de estados no es limpia, sino que se activan por segundos algunas salidas que no se debían de activar, y como la salida se manda un flip flop, pues bastaba con que se activaran unas fracciones de segundo para que el flip flop lo detectara y mantuviera la salida en alto, por lo tanto se desechó, entonces para evitar los problemas de las transiciones se decidió utilizar un comparador, con el cual la simulación funcionaba perfecta, pero al hacer el alambrado y realizar algunas pruebas se encontró el mismo error con las transiciones, ya que si se empezaba a pagar con dos monedas de 2 pesos seguidas, se prendía el led indicando que ya se podía seleccionar la bebida y ¡hasta había un peso de cambio!, bueno, eso de

García Diego, 168, col. Doctores, del. Cuauhtémoc, c.p. 06720, Ciudad de México correo: eliseo.rodea@ uacm.edu.mx, www.uacm.edu.mx

Colegio de Ciencia y Tecnología que había cambio no fue tan malo, ya que me informaba qué salida era la que estaba prendiéndose en falso, y era, por supuesto, la salida del comparador que indicaba que la entrada “B” era mayor que la entrada “A” (recordar que en la entrada “A” se formaba un siete y en la entrada “B” se conectaba la suma de monedas introducidas), para solucionarlo se regresó a la solución anterior, ya que en esa solución la señal que fallaba era la que indicaba que se habían introducido 7 pesos exactos, pero la que indicaba que había cambio funcionaba muy bien, entoces se decidió utilizar una y una, agarrar lo que sí funcionaba bien de cada una de ellas, por lo cual, del comparador se utilizó la señal que indica que se introdujeron 7 pesos exactos, y la señal que indica que hay cambio se tomó del acarreo del restador. Otro problema fueron los botones, ya que con el rebote se activaban los contadores más de las veces que se había pulsado el botón, entonces, si yo pulsaba una vez el botón de un peso, realmente aparecía como si lo hubiera presionado cuatro, cinco o más veces, por lo que se agregó un circuito anti-rebotes, primero se intentó el más simple, un capacitor, pero no funcionó del todo bien ya que aún así no filtraba todos los rebotes, después, buscando en internet se encontró que se debía agregar una resistencia al capacitor, pero aún así se le pasaban algunos rebotes, por lo que buscando más en internet se encontró un circuito con un multivibrador monoestable, pero también se le pasaban, por lo que se decidió cambiar los botones, por unos que no tuvieran tanto desplazamiento (por que los primeros se tenían que mover mucho desde el reposo hasta el punto donde hacían contacto las placas) y así se solucionó el problema, este último circuito fue el que se implementó, aunque supongo que ya que se habían cambiado los botones hubiera funcionado alguno de los circuitos anti-rebote anteriores.

BIBLIOGRAFÍA 1. Ronald, Tocci. “Sistemas Digitales Principios y Aplicaciones, Ed. Pearson Prentice Hall, año 2007. 2. M. Morris Mano. “Fundamentos de Diseño Lógico y de Computadoras”, Ed. Pearson Educacion de México, año 2007. 3. Página de internet: http://es.wikipedia.org/wiki/M%C3%A1quina_expendedora 4. Página de internet: http://www.ervending.com/cafe.htm 5. Página de internet: http://es.wikipedia.org/wiki/Vending 6. Página de internet: http://es.wikipedia.org/wiki/Monoestable

García Diego, 168, col. Doctores, del. Cuauhtémoc, c.p. 06720, Ciudad de México correo: eliseo.rodea@ uacm.edu.mx, www.uacm.edu.mx