Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Por:
DIGITALES
BUCARAMANGA
2019
Pagina2
Por:
DIGITALES
BUCARAMANGA
2019
Pagina3
TABLA DE CONTENIDO
Resumen……………………………………………………………………….4
Introducción……………………………………………………………………4,5
Antecedentes…………………………………………………………………...7, 8, 9
Metodología……………………………………………………………………10, 11, 12
Conclusiones……………………………………………………………………13
Referencias……………………………………………………………………...13
Pagina4
RESUMEN
En el presente trabajo se realiza la programación e implementación de una FPGA para el control
de una máquina expendedora de productos, la cual cuenta con un contador de monedas, pero no
entrega cambio. Primeramente se describe el proceso de expendio del producto, nuestra máquina
expendedora contara con cuatro tipos de productos en cual el usuario podrá escoger, se presenta
el diagrama de estado el cual se utiliza para obtener las ecuaciones booleanas y secuenciales del
sistema, que a su vez permitirá construir el circuito lógico y desarrollar la codificación en VHDL
para programar la FPGA Xilinx XC2S200E. Antes de realizar la implementación se presenta la
simulación del código en VHDL, mediante el software Quartus II de la empresa Altera. Los
resultados muestran que el código desarrollado se ajusta perfectamente a la lógica establecida para
el funcionamiento de la máquina de productos.
I. INTRODUCCION
Las máquinas expendedoras se utilizan para dispensar diversos productos como café, bocadillos y
bebidas frías, etc. cuando se introduce dinero en ellos. Las máquinas expendedoras existen desde
1880. La primera máquina comercial que funciona con monedas se introdujo en Londres e
Inglaterra, utilizada para vender tarjetas postales. Las máquinas expendedoras son más accesibles
y prácticas que el método de compra convencional. Hoy en día, se pueden encontrar en todas
partes, como en las estaciones de tren que venden boletos de tren, en escuelas y oficinas que venden
bebidas y bocadillos, en los bancos como cajeros automáticos y que ofrecen a los clientes incluso
joyeros de platino y diamantes. Las máquinas anteriores basadas en CMOS y SED consumen más
tiempo que las máquinas basadas en FPGA. La máquina basada en FPGA también es más flexible,
programable y puede ser reprogramada. Pero en una máquina basada en micros controladores, si
uno quiere mejorar el diseño, tiene que cambiar toda la arquitectura de nuevo, pero en FPGA el
usuario puede aumentar fácilmente la cantidad de productos. En este documento se propone un
nuevo enfoque para diseñar una máquina expendedora con características de facturación
automática. La máquina también es compatible con una función de cancelación significa que la
persona puede retirar la solicitud y que el dinero se devolverá al usuario. Esta máquina se puede
utilizar en varios lugares como hoteles, restaurantes y calles de comida. Esto reduce el tiempo y el
costo.
La rentabilidad es una de los beneficios que brindan las máquinas expendedoras, pues mediante
ellas pueden lograrse beneficios con un mantenimiento prácticamente mínimo.
Antes que dejar pasarlo o tomar cualquier snack sin auténtico alimento, se proponen máquinas
elaboradoras que preparan suculentos platos. Podemos asegurarle que los productos estarán en
Pagina5
buen estado y a la temperatura ideal, pues estas máquinas han superado una serie de controles de
calidad.
HISTORIA
IMPLEMENTACIÓN
Esta máquina expendedora se construye en términos de Diagramas de estado con la ayuda del
programa Quartus II. El usuario puede obtener cuatro tipos diferentes de productos de diferentes
precios, Los precios de estos productos se dan la tabla. La máquina puede un solo tipo de
moneda. El código está escrito y sintetizado en Verilog HDL.
DESCRIPCION LOGICA
Cuando se reinicia la máquina, significa que está listo para que el usuario seleccione el producto
deseado y este estado está representado por el estado INICIAL, Hay cuatro botones de selección
de productos, a saber, producto1, producto2, producto3 y producto4. Después de sintetizar el
código Verilog HDL obtenido por la herramienta Quartus II, se muestra a continuación el
diagrama esquemático del Nivel de transferencia de registro (RTL)
No Selección precio
1 Producto1 2
2 Producto2 3
3 Producto3 4
4 Producto4 5
Tabla 1. Lista de productos y precios
Pagina6
En nuestro proyecto, utilizamos como entrada una moneda, hemos implementado una máquina
expendedora de productos. Donde las entrada es un tipo de moneda Y las salidas cuatro tipos de
productos la cual cuenta la cantidad de monedas ingresadas
Poder que la máquina expendedora basada micro controlador. La máquina expendedora basada en
FPGA soporta cuatro productos y cuatro Monedas La máquina expendedora acepta un solo tipo
de moneda como entrada en cualquier secuencia y entrega productos cuando se deposita la cantidad
requerida, Y devuelve el cambio si la cantidad introducida es mayor que el precio del producto.
También es compatible con la función de cancelación significa un usuario, Puede retirar la
solicitud en cualquier momento y el dinero ingresado se devolverá sin ningún producto. El
algoritmo propuesto esta Implementado en Verilog HDL y simulado utilizando la herramienta de
simulación Xilinx ISE.
DESCRIPCION DE DISEÑO
Inicialmente, la señal de restablecimiento es alta y la máquina está lista para que el usuario
seleccione el producto. Este estado es el estado inicial de la Máquina y después de esto, la maquina
contara la cantidad de monedas dependiendo de los créditos del producto, el usuario seleccionará
el producto a dispensar. Después de seleccionar una entrada particular, la máquina va a Estado
espera y pedido dependiendo de la disponibilidad del producto. Supongamos que el usuario
selecciona el primer producto. La máquina en primer lugar verifica la cantidad de créditos
necesarios correspondiente al primer producto. En caso afirmativo, pasa al estado entrega
cuando la cantidad deseada se inserta en la máquina, irá al estado del producto 4 y el producto será
entregado. Si el producto es
También hay una función adicional de retirar la solicitud si el usuario no quiere tomar el producto.
El programa espera por si el usuario deposita otra moneda , Si se presiona antes de que se haya
insertado todo el dinero, el dinero insertado se devolverá al usuario a través de la devolución.
Se utiliza una señal de conteo de dinero para calcular el dinero total insertado en la máquina y si
es más que la cantidad del Producto entonces el cambio extra será devuelto al usuario. El monto
total del dinero tomado a la vez se muestra en la Señal de dinero. Del mismo modo, el usuario
puede seleccionar y obtener los otros productos siguiendo el procedimiento anterior.
Pagina7
En el diagrama hay 5 estados. El cliente puede comprar cuatro productos. Tomemos un ejemplo
de que el usuario desea comprar bocadillos y luego tiene que presionar el botón SEL1, como
resultado, la máquina ingresará al estado espera desde el estado contar. Ahora la máquina esperará
las monedas. Supongamos que el cliente inserta una moneda, entonces la máquina ingresará en el
contar que representa que se ha depositado una moneda y el valor de en_cont será 1. en_comp,
comparará. Pasará al estado pedido a dar un pulso=1 si no comp=0 La máquina regresará
automáticamente al estado espera donde nuevamente estará listo para aceptar la moneda.
Supongamos que esta vez se inserta otra moneda, la máquina irá al contar en el que el valor de
en_cont se incrementará en dos créditos y así sucesivamente. Si el pulso=1 pasa al estado pedido
cumpliendo con el precio de producto, la máquina ingresará al estado de entrega en el que se
lanzará el producto. Del mismo modo, los clientes pueden obtener todos los demás productos
siguiendo el mismo procedimiento.
III. ANTECEDENTES
Venduino
Ryan Bates ha construido una máquina expendedora en miniatura desde cero utilizando un
Arduino Uno, cuatro servos de rotación continua y un LCD Nokia 5110. El dispositivo,
denominado "Venduino", incluye cuatro botones de entrada para hacer una selección, un indicador
LED y una luz de 12V para iluminar el interior del gabinete. Ya sea para caramelos, artículos de
tocador, cartuchos de juegos o artículos misceláneos que busca dispensar, las posibilidades son
infinitas. Simplemente inserte una moneda, elija un producto y repita.
Figura 1. Venduino
Pagina8
La máquina expendedora cuenta con cuatro unidades de descarga controladas mediante cuatro
servomotores de rotación continua, un sistema de transporte controlado mediante motores paso a
paso, una pantalla LCD, cuatro botones para seleccionar un artículo y un detector de monedas.
Simplemente la máquina tiene cuatro tipos de caramelos y cada tipo tiene un código especial, debe
twittear con este código especial para obtener sus caramelos. Si desea obtener un caramelo del
primer sabor, debe escribir C111 entre su tweet, Si desea obtener un caramelo del segundo sabor,
debe escribir C112 entre su tweet, Si desea obtener un caramelo del tercer sabor, debe escribir
C113 entre su tweet, Si desea obtener un caramelo del cuarto sabor, debe escribir C114 entre su
tweet.
Pagina9
El objetivo de este proyecto es crear una máquina expendedora, accionada por un micro
controlador arduino, utilizando componentes "baratos y fáciles de obtener" disponibles en la tienda
local.
La máquina expendedora debe aceptar cierta cantidad de dinero (en moneda), antes de permitir
que el cliente elija su producto y, por supuesto, entregar el producto.
Pagina10
IV. METODOLOGIA
Para la Metodología de diseño de la máquina expendedora nos basamos en el método de
máquina de estado finito.
La máquina de estados finitos (FSM) es en realidad una Modelo matemático de computación, esta
máquina. ¿Puede estar en uno de los estados del total posible. Estados El estado actual se puede
cambiar de acuerdo a Entrada desde el exterior. Un FSM se puede definir por su Lista de estados,
estado inicial y condición para cada estado. Transición. Hay dos tipos de FSM
1. Máquina Mealy
2. Máquina Moore
Máquina Mealy: En este modelo de máquina, la salida depende del estado actual así como de la
entrada. El modelo de la máquina MEALY se muestra a continuación.
Máquina MOORE: En el modelo de máquina Moore, la salida solo depende del estado actual. El
modelo de máquina MOORE se muestra a continuación.
Materiales
Tarjeta FPGA
4 pulsadores anti rebote
Modulo Sensor de velocidad de Herradura de motor LM393 Tipo H2010
4 motores reductores DC. Ref. GMZS- 0.21 a 6V 100Rpm
16×2 LCD
Cargador 12 v
V. CONCLUSIONES
Se observó a través de diferentes escenarios, que FPGA solución de diseño basado en alta
calidad, alta calidad Rendimiento y fácil de usar. Nuestros resultados indican claramente
que la solución basada en FPGA aumenta la eficiencia y Precisión de las máquinas
expendedoras. También podemos monitorear la Máquina expendedora basada en FPGA con
el marco principal computadora. Su algoritmo es muy flexible y confiable como el
proveedor puede mejorar fácilmente el algoritmo para gran número de Productos a bajo
costo en comparación con los microprocesadores.
Nos gustaría agradecer a nuestros respetados maestros y Colegas por su orientación y apoyo
siempre presentes. También estamos muy agradecidos con la docente MSc Dania Andrea
Largo Jaimes, por su Esfuerzo para facilitarnos y brindarnos su tiempo y ayuda para la
construcción de este proyecto. Entorno para la investigación y el desarrollo.
Con la máquina de estados la tarea de crear una máquina expendedora se logró. Esto no fue
simple hazaña, como para incluir todas las combinaciones dentro de Estados mínimos,
demostró bastante el desafío. Mejoras en el diseño que se podrían realizar. incluir el sensor
de monedas utilizado en el lado de entrada que detectar la cantidad correcta y la salida del
producto.
VI. REFRENCIAS
[1] Samir Palnitkar, “Verilog HDL”, Second Edition, Prantice Hall, 2003
EXAMPLES." (n.d.): n. pag. EBooks club. JOHN WILEY & SONS, INC., 2008. Web. 27 Nov
2017
[3] BLOG HOME Venduino is a DIY Arduino vending machine ARDUINO TEAM — June
29th, 2016
Pagina13
Links
http://javierfabiandavid.blogspot.es/1416627101/trabajo-final/
http://www.ijset.in/wp-
content/uploads/2014/09/IJSET.0920140903.1011.0910_AANCHAL_1446-1450.pdf
http://ingridbasanta.blogspot.com/2008/01/implementacin-de-un-fpga-una-mquina.html
https://www.academia.edu/20418982/DESIGN_AND_IMPLEMENTATION_OF_VENDING_MACHINE_USI
NG_VERILOG_HDL
http://www.secs.oakland.edu/~llamocca/Courses/F17_ECE2700/FinalProject/Group15_Vendingmachin
e.pdf
http://www.ijirset.com/upload/2015/november/137_Machine.pdf
https://es.slideshare.net/pratikpatilee/hdl-implementation-of-vending-machine-controller
http://ijsrcseit.com/paper/CSEIT1833571.pdf