基于FPGA的自动售货机控制系统
(完整版)基于FPGA的自动售货机控制系统——开题报告
填写要求1.开题报告只需填写“文献综述”、“研究或解决的问题和拟采用的方法”两部分内容,其他信息由系统自动生成,不需要手工填写。
2.为了与网上任务书兼容及最终打印格式一致,开题报告采用固定格式,如有不适请调整内容以适应表格大小并保持整体美观,切勿轻易改变格式。
3.任务书须用A4纸,小4号字,黑色宋体,行距1.5倍。
4.使用此开题报告模板填写完毕,可直接粘接复制相应的内容到毕业设计网络系统。
内核,一次只能执行一个指令,且基于处理器的系统时刻面临着严格限时的任务相互取占的风险。
而FPGA不使用操作系统,拥有真正的并行执行和专注于每一项任务的确定性硬件,可减少稳定性方面出现问题的可能。
4、长期维护——FPGA芯片是现场可升级的,无需重新设计ASIC所涉及的时间与费用投入。
举例来说,数字通信协议包含了可随时间改变的规范,而基于ASIC的接口可能会造成维护和向前兼容方面的困难。
可重新配置的FPGA芯片能够适应未来需要作出的修改。
随着产品或系统成熟起来,用户无需花费时间重新设计硬件或修改电路板布局就能增强功能。
1.3FPGA实现自动售货机控制系统的基本原理如图1所示,本次设计的售货机是由四个模块组成的,分别为:分频模块、扫描模块、主控模块、显示模块。
图1 自动售货机内部模块分频模块的作用是对外来的时钟信号进行分频以达到自己所需的频率。
扫描模块采用的是实验箱上的4X4矩阵键盘对商品的单价进行手动的输入。
显示模块的作用是对商品的单价、数量以及投币的金额进行显示。
主控模块是自动售货机控制系统的核心模块,主要实现存储商品信息、控制购物进程、处理投币金额、控制商品出货、计算余额以及控制LED灯显示等功能。
其主要分五个步骤来完成:1、信息存储——信息存储是初始设置,对任务所需要的四种商品的价格和数量进行手动的输入并保存,保存完之后系统执行第二个步骤。
2、投币选择——顾客可以投入0.5元、1元、5元、10元四种类型的货币,投币完2.毕业设计任务要研究或解决的问题和拟采用的方法:(1)毕业设计任务要研究或解决的问题研究基于FPGA的自动售货机控制系统问题,要求:①阅读FPGA相关的论文和书籍,系统地了解FPGA相关知识和原理的目的。
基于FPGA的自动售货机的课设说明书
目录1 引言 (1)2 VHDL介绍 (2)2.1 硬件描述语言VHDL (2)2.2 VHDL语言的特点 (3)3 QuartusII软件简介 (4)3.1软件介绍 (4)3.2界面介绍 (4)3.2.1代码输入界面 (4)3.2.2功能仿真界面 (5)3.2.3波形仿真界面 (6)4 自动售货机控制器设计与仿真 (7)4.1硬件电路设计 (7)4.2状态转换图 (7)4.3时序仿真结果 (10)5引脚锁定及下载 (12)5.1引脚锁定 (12)5.2下载 (12)5.3结果分析 (12)6设计总结 (14)参考文献 (15)附录 (16)1 引言VHDL的英文全名是VHSIC(Very High Speed Integrated Circuit)Hardware Descriptiong Language,诞生于1982年。
1987年底,VHDL被美国国防部确认为标准硬件描述语言。
自IEEE公布了VHDL的标准版本,IEEE-1076之后,各EDA公司相继推出了自己的VHDL设计环境,或宣布自己的设计工具可以和VHDL接口。
1993年,IEEE对VHDL进行了修订,从更高的抽象层次和系统描述能力上扩展VHDL的内容,公布了新版本的VHDL,即IEEE标准的1076-1993版本。
现在,VHDL和Verilog作为IEEE的工业标准硬件描述语言,又得到众多EDA公司的支持,在电子工程领域,已成为事实上的通用硬件描述语言。
有专家认为,在新的世纪中,VHDL于Verilog语言将承担起大部分的数字系统设计任务。
VHDL的英文全写(Very-High-Speed Integrated Circuit HardwareDescription Language)翻译成中文就是超高速集成电路硬件描述语言。
因此它的应用主要是应用在数字电路的设计中。
目前,它在中国的应用多数是用在FPGA/CPLD/EPLD的设计中。
基于FPGA的自动售货机控制系统的设计
基于FPGA的自动售货机控制系统的设计摘要本文旨在设计一种基于FPGA(现场可编程门阵列)的自动售货机控制系统。
该系统利用FPGA芯片的可编程特性和高性能,能够实现灵活、可靠的自动售货机操作。
本文将详细介绍系统的设计原理、硬件架构和关键功能,并提供实施建议和性能评估。
引言自动售货机已经成为现代社会的常见设备,用于快速、方便地购买商品。
然而,传统的自动售货机控制系统常常受限于固定的硬件结构和有限的功能。
为了提升自动售货机的灵活性和性能,本文提出基于FPGA的控制系统设计。
设计原理基于FPGA的自动售货机控制系统利用FPGA芯片的可编程特性,通过组合逻辑和时序逻辑实现自动售货机的各项功能。
系统将通过外部接口与售货机的硬件部分进行通信,并处理用户输入、商品库存、货币交易等关键操作。
通过FPGA的灵活配置和高速性能,该控制系统能够实现实时响应、精确计算和可靠交互。
硬件架构系统的硬件架构主要包括FPGA芯片、外部接口电路、按钮和显示屏。
FPGA芯片作为核心处理单元,负责运行控制程序和管理系统资源。
外部接口电路用于与售货机硬件部分进行数据传输和控制信号的交互。
按钮和显示屏提供用户与自动售货机进行交互的接口。
关键功能基于FPGA的自动售货机控制系统具备以下关键功能:1. 商品选择和购买:用户可以通过按钮选择所需商品,并进行购买操作。
系统将根据用户选择,实时更新商品库存和计算金额。
2. 货币交易:系统支持不同货币单位的识别和计算。
用户可以通过投币或刷卡等方式完成支付,系统将验证货币的合法性并进行交易处理。
3. 商品库存管理:系统能够实时监测商品库存,并在库存不足时提醒用户或停止销售。
管理员可以通过特定操作进行库存的添加和更新。
4. 故障监测和报警:系统能够监测售货机硬件部分的运行状态,并在故障发生时及时报警或进行相应处理。
实施建议实施基于FPGA的自动售货机控制系统时,可以考虑以下建议:1. 确定系统需求,并合理规划FPGA芯片和外部接口电路的选型和布局。
基于FPGA的模拟自动售货机设计
现在EDA技术发展迅猛,应用比较广泛,包括在机械、电子、通信、航空航天、化工、矿产、生物、医学、军事等各个领域都有EDA的应用。
目前,EDA技术已在产品设计与制造、教学和科研部门广泛使用,发挥着巨大的作用。
在产品设计与制造方面,EDA技术可实现前期的计算机仿真、系统级模拟及测试环境的仿真、PCB的制作、电路板的焊接、ASIC的设计等。
在教学方面,高校电子类专业的实践教学中,几乎所有理工科(特别是电子信息)类的高校都开设了EDA课程。
主要是让学生了解EDA的基本原理和基本概念,掌握描述系统逻辑的方法,使用PLD/FPGA器件进行电子电路课程的模拟仿真实验,并在作毕业设计时从事简单电子系统的设计,既使实验设备或设计出的电子系统具有高可靠性,又经济、快速,容易实现,修改便利,同时可大大提高学生的实践动手能力、创新能力和计算机应用能力,为今后工作打下基础。
作为一个学电子信息专业的学生,我们必须不断地了解更多的新产品信息,这就更加要求我们对EDA有个全面的认识。
本设计系统地介绍了有关编程逻辑器件的基础知识以及相关软件的使用方法,着重讲述了自动售货机的原理以及本次设计的思路和方法。
第一章阐述了EDA技术的发展历史、基本特征以及Altera公司生产的一些产品器件、开发工具等等;并简单介绍了FPGA(Field Programmable Gate Array)的应用,现场可编程门阵列的出现是超大规模集成电路技术和计算机辅助设计技术发展的结果,它允许电路设计者利用基于计算机开发平台,经过设计输入、仿真、测试和校验,直到达预期的效果。
第二章介绍系统方案的设计,其中主要介绍了不同方案的比较,自动售货机的基本功能等。
第三章分析了系统设计的具体模块实现。
第四章阐述自动售货机系统的硬件设计及调试结果。
摘要........................................................................ I I ABSTRACT ..................................................................... I I 第1章绪论 (1)1.1EDA的发展概述 (1)1.1.1 EDA技术简介 (1)1.1.2 EDA技术的发展概况 (2)1.1.3 EDA技术的基本特征 (2)1.2EDA的FPGA/CPLD开发 (3)1.2.1 FPGA简介 (3)1.2.2 FPGA的基本特点 (3)1.2.3 FPGA的结构及其发展 (4)1.3课题的研究现状及研究意义 (4)1.3.1课题的研究现状 (4)1.3.2课题研究意义 (4)第2章模拟自动售货机系统方案设计 (5)2.1模拟自动售货机的方案比较 (5)2.2软件简介 (5)2.2.1 Quartus II软件简介 (5)2.2.2 VHDL语言简介 (6)2.2.3 VHDL语言的特点 (7)2.2.4 VHDL语言的优点 (7)2.2.5 VHDL语言的基本结构 (8)2.3模拟自动售货机的实现 (8)2.3.1总体系统的设计 (8)2.3.2自动售货机软件组成 (10)第3章模拟自动售货机的模块化处理 (12)3.1各模块组成 (12)3.1.1状态控制模块 (12)3.1.2状态指示模块 (12)3.1.3商品选择模块 (13)3.1.4投币处理模块 (13)3.1.5液晶显示模块 (14)3.1.6声音处理模块 (16)3.2 模拟自动售货机交易仿真图 (17)3.2.1商品选择仿真 (17)3.2.2投币、交易完成仿真 (17)3.2.3投币不足时返回继续投币仿真 (18)3.2.4投币时退出购买、复位仿真 (18)第4章模拟自动售货机的FPGA验证 (20)4.1CYCLONE核心板简介 (20)4.2液晶显示屏简介 (22)4.3接口板简介 (22)4.4硬件引脚绑定 (23)4.5测试结果及分析 (24)第5章结论与展望 (25)5.1结论 (25)5.2展望 (25)致辞 (26)参考文献 (27)第6章附录 (28)附录1设计原理图: (28)附录2接口板PCB版图 (29)附录3设计源程序: (29)2010届电子信息工程专业毕业设计(摘要)摘要本文是基于FPGA芯片设计一个简易模拟自动售货机。
基于FPGA的自动售货控制系统设计
基于FPGA的自动售货控制系统设计概述
本文介绍了一个基于FPGA的自动售货控制系统的设计。
该系统包括一个电子标签读写器、一个货道控制器和一个运营管理系统。
读写器用于读写货物的信息,货道控制器用于控制货道的状态,运营管理系统用于监控和管理整个系统。
硬件设计
电子标签读写器采用HF RFID技术,能够读取和写入RFID标签中的数据。
货道控制器采用了FPGA芯片,通过IIC总线控制电机的转动,实现货道的开关。
运营管理系统采用了嵌入式系统,通过与FPGA芯片的通信,实现对货道控制器的监控和管理。
软件设计
电子标签读写器的软件采用C语言编写,通过串口通信将读取到的数据发送到FPGA芯片。
货道控制器的软件采用Verilog HDL语言编写,实现IIC总线的接口和电机的控制。
运营管理系统的软件采用Python编写,通过FPGA芯片的通信接口与货道控制器进行通信,实现对货道的状态监控和管理。
应用场景
该自动售货控制系统可以应用于各种场景,如超市、自助售卖机、自动售货机等。
系统支持多种货物类型,可以灵活满足不同需求。
同时,运营管理系统可以实时监控货道的状态,管理货道的补货和维护,提高售货效率和用户体验。
结论
基于FPGA芯片的自动售货控制系统,通过电子标签读写器、货道控制器和运营管理系统的设计,实现了对售货过程的自动控制和管理。
该系统具有高效、灵活等特点,在实际应用中具有广泛的应用前景。
基于FPGA的自动售货机设计
基于FPGA的自动售货机设计
自动售货机最基本的功能就是为顾客提供可供选择的物品并接受付款,然后交付所选物品。
自动售货机还需要具备一些其他的功能,例如在货品数量低于设定值时警报,更新商家的库存信息等。
基于FPGA的自动售货机设计包括以下步骤:
1. 确定自动售货机的物品种类和数量,并选择相应的电机、传感器和显示器等组件。
2. 设计自动售货机的控制电路,包括接口电路、逻辑电路和中央处理器(CPU)等。
其中,FPGA可以作为逻辑电路的核心部件,负责控制整个自动售货机的操作流程。
3. 利用Verilog HDL编写FPGA的逻辑设计,并通过仿真和测试确保正确性和可靠性。
FPGA的逻辑设计应该能够控制电机的旋转、传感器的检测和显示器的显示等操作。
4. 将FPGA的逻辑设计下载到实验板上并测试它的功能和性能。
在测试过程中需要注意电机的工作效率、传感器的准确性和显示器的清晰度等方面的问题。
5. 将整个自动售货机装在一个外壳中,并测试整个系统的可靠性和用户友好性。
在测试过程中需要关注售货机的操作流程、货品存储和取出的方便程度以及付款方式的安全性等方面的问题。
综上所述,基于FPGA的自动售货机设计需要充分考虑到售货机的各个方面,包括物品种类、控制电路、逻辑设计和用户体验等,以提供高质量和可靠性的售货机。
基于FPGA自动售货机
摘要本课题是基于Verilog HDL语言的小型自动售货机。
采用Verilog HDL在ModelsimSE6.2B软件平台进行编译和仿真。
在此次设计中,主要采用有限状态机(FSM)的设计,在投币选货状态和找零状态在这两个状态间进行转移。
从而实现货物的选择、货币运算、出货控制、余额显示以及找零等功能。
该售货机系统能够识别两种硬币,两种纸币。
有五种不同价格的商品可供选择,并且通过显示译码电路,可在LED显示器显示余额,同时具备找零、机器存有硬币不足LED 亮起报警、缺货LED亮起报警等功能。
现代的自动售货机有使用方便快捷,可以全天候24小时工作,占地少,成本低,维护简单等优点,有着广阔的前景。
采用FPGA方式用Verilog HDL硬件描述语言,设计简易的自动售货机,其编程简单,开发周期短,硬件运行速度快,开发成本低,稳定性高等优点。
关键词:自动售货机; Verilog HDL;有限状态机;Modelsim;ABSTRACTThis topic design a simple vending machine is based on the FPGA chip. EP2C35 chip, and DE2 development board for the hardware platform, the use of Verilog HDL to compile and simulation in the Quartus Ⅱ software platform, and through the DE2 development achieve the basic functions of a Si mple vending machine.board by to download code to the chip. In this design,it used of finite state machine (FSM) design, choice of goods state, shipment status and give change coin state in the three inter-state transfer, in order to achieve the choice of goods, monetary operations, the cargo control, features such as display and give change. The vending machine system to identify three kinds of coins, there are five kinds of goods at different prices to choose from, and by showing decoding circuit, in DE2 onboard LED display shows the balance, both functions give change. Modern vending machines are convenient, it can work 24 hours a day, covers an area of small, low cost, simple maintenance, there are broad prospects. Manner with the use of FPGA hardware description language Verilog HDL, design simple vending machine, the programming is simple, short development cycles, fast hardware, the development of low cost, high stability.Key words: vending machines; Verilog HDL; Finite state machine; FPGA; DE2 development board;目录绪论..............................................................1 第一章系统方案设计...............................................31.1 人机交换界面设计..........................................31.2 系统方案设计..............................................41.2.1 系统方案确定..........................................5 第二章系统各模块硬件设计.........................................72.1 DE2开发板介绍.............................................72.2 自动售货机各模块设计.....................................82.2.1 自动售货机主体设计...................................82.2.2 LED显示设计方案.....................................92.2.3 货币输入信号设计方案................................102.2.4 出货显示设计方案....................................11 第三章系统的软件设计............................................123.1 EDA工具软件介绍.........................................133.2 软件设计总方案...........................................143.3 售货机主芯片程序设计方案................................153.4 BCD-LED七段数码显示译码器...............................173.5 硬币输入信号程序设计方案................................183.6 出货显示程序设计方案....................................193.7 自动售货机各部分组合连接设计............................20 第四章调试及仿真...............................................214.1 用Quartus Ⅱ完成PFGA设计步骤...........................214.2 自动售货机波形仿真结果..................................214.2.1 自动售货机波形仿真..................................214.2.2 输入信号处理程序波形仿真............................234.2.3 BCD-LED七段数码显示译码器波形仿真..................234.2.4 出货显示译码器波形仿真..............................244.2.5 自动售货机主芯片程序仿真波形.......................254.3 下载、仿真及测试..........................................25 结论..............................................................26 致谢.............................................................27 参考文献..........................................................28 附录1(程序源代码)...............................................29 附录2(整体设计原理图)...........................................35绪论自动售货机最早出现在二十世纪五、六十年代的西欧,英国是较早实行自动售货机售货的国家之一。
FPGA实验报告 系统设计综合实践 自动售货机
FPGA实验报告系统设计综合实践自动售货机引言本实验报告旨在介绍FPGA实验中关于系统设计综合实践的内容,以及针对自动售货机的设计和实现过程。
本项目的目标是通过FPGA实现一个基本的自动售货机,能够接受货币投入并显示余额,实现商品选择和出货的功能。
设计概述在本项目中,我们使用FPGA作为硬件平台进行实现,采用VHDL语言进行编程。
整个设计主要分为三个模块:货币处理模块、商品选择模块和出货控制模块。
货币处理模块货币处理模块负责接收和处理投入的货币,并显示当前的余额。
具体实现过程如下:1.接收货币输入:使用FPGA板载的GPIO接口连接硬币接收器,将接收到的信息传递给FPGA。
2.处理货币信息:通过计算接收到的货币数量和面额,计算出当前的余额。
3.显示余额:使用FPGA板载的数码管显示当前的余额。
根据计算得到的余额,将其显示在数码管上。
商品选择模块商品选择模块负责接收用户的商品选择,并计算选中商品的价格。
具体实现过程如下:1.接收商品选择:使用FPGA板载的按键输入接口,接收用户按下的相应按键,确定用户选择的商品。
2.计算商品价格:根据用户选择的商品,从预先配置的商品价格表中查找相应的价格。
3.显示选中商品价格:使用FPGA板载的数码管显示选中商品的价格。
根据查找到的价格,将其显示在数码管上。
出货控制模块出货控制模块负责控制商品的出货和相关信息的提示。
具体实现过程如下:1.判断余额是否足够:根据当前余额和选中商品的价格,判断余额是否足够购买商品。
2.控制商品出货:如果余额足够购买商品,则触发相应的出货机构,实现商品的出货。
3.提示用户相关信息:根据出货情况,通过数码管显示相关信息,如余额不足、出货成功等提示。
实验结果经过对上述三个模块的设计和实现,我们成功地完成了自动售货机的基本功能。
在实验过程中,我们选取了几种常见的商品,并配置了相应的价格表。
通过按下相应的按键,用户可以选择购买的商品,并通过投币的方式支付。
基于FPGA的自动售货机控制器设计毕业论文
基于FPGA的自动售货机控制器设计毕业论文目录第1章绪论 (1)1.1自动售货机的起源 (1)1.2自动售货机的现状与发展 (1)1.3自动售货机的研究方向 (2)1.4课题研究任务 (2)1.5 本章小结 (2)第2章开发设计基础 (3)2.1 EDA技术简介 (3)2.2 FPGA简介 (3)2.3 VHDL语言概述 (4)2.3.1 VHDL语言特点 (4)2.3.2 VHDL的优势 (4)2.4 Quartus II软件介绍 (5)2.5 硬件介绍 (5)2.6 本章小结 (6)第3章自动售货机设计方案 (7)3.1 自动售货机整体描述 (7)3.1.1 自动售货机功能要求 (7)3.1.2 自动售货机系统总框图 (7)3.1.3 自动售货机基本流程图 (8)3.2 购物模块 (10)3.2.1 购物模块整体描述 (10)3.2.2 扫描元件 (13)3.2.3 编译元件 (13)3.2.4 数据处理元件 (14)3.2.5 购物数码管译码元件 (15)3.3 定价模块 (15)3.3.1 定价模块整体描述 (16)3.3.2 定价元件 (17)3.3.3 价格BCD译码元件 (18)3.3.4 价格数码管译码元件 (19)3.4 投币模块 (19)3.4.1 投币模块整体描述 (19)3.4.2 投币二进制译码元件 (21)3.4.3 投币BCD译码元件 (22)3.4.4 投币数码管译码元件 (23)3.5 计时模块 (24)3.5.1 计时模块基本流程图 (24)3.5.2 计时模块生成器件 (24)3.5.3 计时模块总功能描述 (24)3.5.4. 仿真结果 (25)3.6 比价模块 (25)3.6.1 比价模块整体描述 (25)3.6.2 比价元件 (27)3.7 复位模块 (30)3.7.1 复位模块生成器件 (30)3.7.2 复位模块总功能描述 (30)3.7.3 仿真结果 (31)3.8 购物显示模块 (32)3.8.1 购物显示模块生成器件 (32)3.8.2 购物显示模块总功能描述 (33)3.8.3 购物显示模块波形仿真 (33)3.9 数码管显示模块 (34)3.10 顶层原理图 (34)3.11 本章小结 (36)第4章下载调试与结果验证 (37)4.1 下载调试 (37)4.2 输出显示 (38)4.2.1所购商品金额大于投币金额 (38)4.2.2所购商品金额等于投币金额 (38)4.2.3所购商品金额小于投币金额 (39)4.2.4有投币无商品选择 (40)4.3 本章小结 (40)第5章总结 (41)参考文献 (42)致谢 (43)基于FPGA的自动售货机控制器设计第1章绪论1.1自动售货机的起源公元前3纪元时,希腊科学家希罗为教堂发放圣水,设制了一个圣水壶。
东南大学信息科学与工程学院 基于FPGA的自动售货机控制系统
数字系统课程设计--基于FPGA的自动售货机组长:师楠(04010512)组员:徐璇(04010505)一、设计要求:功能描述:用于模拟自动售货机的工作过程,完成自动售货功能。
功能要求:(1)售货机有两个进币孔,可以输入硬币和纸币,售货机有两个进币孔,一个是输入硬币,一个是输入纸币,硬币的识别范围是1 元的硬币,纸币的识别范围是5 元,10 元,20,50 元,100元。
乘客可以连续多次投入钱币。
(2)顾客可以选择的商品种类有16 种,价格分别为1-16 元,顾客可以通过输入商品的编号来实现商品的选择。
即有一个小键盘(0-9 按键)来完成,比如输入15 时要先输入1,再输入5。
(3)顾客选择完商品后,可以选择需要的数量。
然后可以继续选择商品及其数量,每次可以选择最多三个商品。
然后显示出所需金额。
顾客此时可以投币,并且显示已经投币的总币值。
当投币值达到或超过所需币值后,售货机出货,并扣除所需金额,并找出多余金额。
在投币期间,顾客可以按取消键取消本次操作,钱币自动退出。
二、课题分析1)进行购物时,顾客依次选择商品种类和对应的商品数量。
一共有16种商品,编号分别为1-16,顾客通过(0-9按键)小键盘输入商品编号和对应的商品数量。
若顾客继续选择商品则按下“继续购物”按钮,继续选择下一商品的种类和数量。
最多可以选择三种商品,每种商品最多可选择三个。
若在商品选择过程中顾客按下“取消”按钮,则回到初始化状态,顾客重新进行选择。
2)完成选择后,自动售货机显示所需金额,编号1-16的商品价格分别为1-16元。
顾客根据所需金额继续投币,可以连续多次投入1元的硬币和5 元,10 元,20,50 元,100元的纸币。
当投币总额大于所需金额时,自动售货机出货并找出零钱。
若在投币过程中顾客按下“取消”按钮,则自动售货机自动退出顾客已经投入的钱币。
3)根据按键的数值范围(0-9)和商品数量(1-3)的选择范围,设置三个端口,分别用于接收商品编号的个位(4位)、商品编号的十位(4位)、商品数量(2位)。
基于FPGA的自动售货机控制系统
基于FPGA的自动售货机控制系统摘要伴随着我国现代化进程的不断深入以及生活节奏的不断加快,如何能够快速、高效、便捷的购物也成为了商家和顾客不得不面临的一个问题。
自动售货机作为一种不同于传统的零售方式,以其不受时间地点限制、省时省力的优点,迅速的成为了人们的首选。
本课题主要是用EDA技术来实现对自动售货机控制系统的设计。
EDA技术以其特有的有开发周期短、设计成本低、运行速度快等天然优势,使开发出的产品可以迅速的投放到市场上去。
该课题主要是基于FPGA内部电路的编程设计,使用硬件描述语言(VHDL)对自动售货机控制系统进行描述,以Altera公司的EP1K30QC208-3芯片为目标器件详细阐述了自动售货机控制系统整体的设计思路以及工作原理,并且对自动收货机控制系统实现的货物信息的存储、进程控制、硬币处理、余额计算和显示功能加以仿真调试。
通过仿真调试,基于可编程器件FPGA 的自动售货机控制系统的设计基本达到了预期目标。
关键词:EDA,FPGA,自动售货机,VHDLVending machine control system based onFPGAAbstractWith the deepening of China's modernization process and the accelerating pace of life, it has become a problem for businesses and consumers to face that how to fast, efficient, convenient shopping. As a way different from the traditional retail, vending machines are not restricted by time and place, So vending machines quickly became the first choice for shopping election. The main topic is the use of EDA technology to achieve the vending machine control system design. EDA technology has a short development cycle, lower design costs, faster running speed, etc. That products can be developed rapidly to market upswing.The main topic is programming based on FPGA. Using hardware description language (VHDL) to describe the vending machine control system. Altera's EP1K30QC208-3 chip as the target device elaborated vending machine control system as well as the overall design concept works, and automatic control of receipt storing cargo information system implementation, process control, coin handling, balance calculation and display capabilities to simulation debugging. Through simulation debugging FPGA-based programmable device vending machine controller design basically achieve the desired goals.Key Words:EDA; FPGA; Vending machine; VHDL目录摘要 (1)Abstract (2)第一章引言 (1)1.1 自动售货机的发展历史 (1)1.2 自动售货机的发展现状 (1)1.3 自动售货机控制系统研究的目的和意义 (2)1.4 课题主要研究工作 (2)第二章关键技术 (3)2.1 EDA技术简介 (3)2.2 FPGA简介 (3)2.3 VHDL简介 (3)第三章系统硬件介绍 (5)3.1 KH310实验箱简单介绍 (5)3.2 时钟单元 (5)3.3 数码管显示单元 (5)第四章程序设计 (7)4.1 功能要求 (7)4.2 系统内部模块设计 (7)4.3 系统外部界面设计 (7)4.4 工作流程图 (8)4.5 系统各功能模块 (9)4.5.1 分频模块 (9)4.5.2 显示模块 (12)4.5.3 扫描模块 (14)4.5.4 主控模块 (16)第五章仿真调试 (21)5.1 顶层模块 (21)5.2 管脚分配.............................................................................................. 错误!未定义书签。
fpga课程设计自动售货机
fpga课程设计自动售货机一、教学目标本课程旨在通过学习FPGA课程设计自动售货机,使学生掌握以下知识目标:1.理解自动售货机的基本工作原理和结构。
2.学习FPGA的基本设计和编程方法。
3.掌握自动售货机的控制逻辑和接口设计。
4.能够使用FPGA开发板进行基本设计和编程。
5.能够独立完成自动售货机控制逻辑的设计和实现。
6.能够对自动售货机进行调试和优化。
情感态度价值观目标:1.培养学生的创新意识和实践能力。
2.培养学生的团队合作意识和沟通能力。
3.培养学生的自主学习和解决问题的能力。
二、教学内容本课程的教学内容主要包括以下几个部分:1.FPGA的基本概念和设计方法。
2.自动售货机的基本工作原理和结构。
3.自动售货机的控制逻辑和接口设计。
4.FPGA编程和调试方法。
第一周:FPGA的基本概念和设计方法。
第二周:自动售货机的基本工作原理和结构。
第三周:自动售货机的控制逻辑和接口设计。
第四周:FPGA编程和调试方法。
第五周:项目实践和总结。
三、教学方法为了激发学生的学习兴趣和主动性,本课程将采用多种教学方法,包括:1.讲授法:用于讲解FPGA的基本概念和设计方法,自动售货机的基本工作原理和结构,以及控制逻辑和接口设计等理论知识。
2.案例分析法:通过分析实际案例,使学生更好地理解和掌握FPGA设计和编程的方法。
3.实验法:通过动手实践,使学生能够独立完成自动售货机的控制逻辑设计和实现,并掌握FPGA编程和调试方法。
4.小组讨论法:通过分组讨论和合作,培养学生的团队合作意识和沟通能力。
四、教学资源为了支持教学内容和教学方法的实施,丰富学生的学习体验,我们将选择和准备以下教学资源:1.教材:选用《FPGA设计与应用》作为主教材,辅助以相关论文和案例分析资料。
2.实验设备:准备FPGA开发板和相关实验设备,供学生进行实践操作。
3.多媒体资料:制作PPT和教学视频,用于辅助讲解和演示。
4.在线资源:提供在线编程环境和调试工具,方便学生进行自主学习和实践。
基于FPGA的自动售货机.
目录第1章绪论.......................................... 错误!未定义书签。
1.1本文研究内容 (1)1.2目的与意义 (1)第2章系统设计方案 (2)2.1货物自动贩卖机总体设计方案 (2)第3章货物自动贩卖机的基本原理 (4)3.1货物自动贩卖机功能 (4)3.2货物自动贩卖机的基本组成 (4)3.2.1 投币信号产生的设计 (4)3.2.2 时钟电路的设计 (4)3.2.3 数码显示的设计 (4)第4章货物自动贩卖机软件设计 (6)4.1软件实现功能综述 (6)4.2计数功能的设计 (6)4.3投币功能的设计 (6)4.4显示功能的设计 (6)4.5显示功能的设计 (7)4.6 代码段 (7)第5章货物自动贩卖机系统的仿真与实现 (18)第6章课程设计总结.................................. 错误!未定义书签。
第1章绪论1.1本文研究内容本次设计的是一个货物自动贩卖机。
货物自动贩卖机主要是由以下几个部分构成,电源电路、数码显示、时钟脉冲、投币脉冲、闸门时间控制等,各部件形成一个简单的饮料自动提取机系统。
本设计采用EDA技术,通过FPGA实现了数字电子钟电路的设计,并完成对电路的功能进行仿真。
1.2目的与意义本系统用于模拟现实生活中的自动售货贩卖机。
可以模拟四种商品的买卖、存贮、控制等等功能。
并模拟买家模式和管理模式,可以分开进行商品买卖的模拟和商品上架的模拟。
第2章系统设计方案2.1饮料自动提取机总体设计方案自动售货机控制系统设计主要有四个功能模块,一个为货币:该模块能完成硬币处理,余额计算。
一个为分频模块:功能主要是实现各个部分的操作。
一个为售货器模块:该模块主要是负责进行货物的管理。
最后一个是控制模块:主要负责进行商品买卖控制。
图2.1饮料提取机的系统组成框图设计思路:首先,我们对于物品存储进行模拟,共有商品买卖和商品管理两个模式。
基于FPGA的自动售货机主控制系统的设计与实现
28《信息化纵横》 2009年第14期随着科技的发展及人们生活水平的提高,自动售货机市场的发展呈现出多元化及个性化的需求,通过自动售货机进行自助购物正逐渐成为市民的一种新的消费时尚和追求高品质生活的需要。
传统的自动售货机控制系统采用单片机作为控制核心,不仅需要在输入输出接口上做大量的工作,而且系统的抗干扰性也比较差。
FPGA具有可靠性高、编程简单、维护方便等优点,已在工业控制领域得到广泛应用。
本文详细介绍了一种用FPGA实现的自动售货机主控制系统的硬件设计和软件设计,并进行了软件仿真和硬件设计实验,实验表明该控制系统是可行的。
1 自动售货机系统总体结构自动售货机作为一种完全独立的售货设备,集接收货币、顾客自选商品、售出商品和找零等功能于一体[1]。
具体的说,一个完整的售货机控制系统[2]一般应包含如图1所示的设备和模块。
图1自动售货机主控制器总体设计框图(1)人机交互设备:通过显示设备和输入设备实现,顾客通过使用键盘输入需要购买的商品编号,根据液晶显示器LCD给出的提示信息进行投币、取商品、接受找零等操作;系统管理人员可以使用键盘在显示器所提供的可视化界面下对售货机的各种运行参数进行基于FPGA的自动售货机主控制系统的设计与实现范文萍,吴定雪(黄冈师范学院 计算机科学与技术学院,湖 北 黄 冈 438000)摘 要:从总体上介绍了自动售货机主控制系统的组成和功能,讨论了自动售货机工作原理,详细阐述了主控制系统F P G A的软、硬件设计及其主要控制模块的仿真实现,并编写了系统程序总框图。
实践验证,系统能够在各种条件下持续、平稳、可靠地工作。
关键词:F P G A;自动售货机;硬件设计;软件仿真中图分类号:TP391.8文献标识码:BDesign and implementation of vending machine control systembased on FPGAFAN Wen Ping, WU Ding Xue(Computer Department of Huanggang Normal University, Huanggang 438000,China)Abstract: First of all, the compositions and functions of the vending machine control system is presented, the control fundamental of vending machine are also described. The hardware and software design of the control system based on FPGA is given, and the control system′s main module are simulated in function. The block diagram of the system software is composed. The whole control system demonstrates the capability of working continuously, smoothly, and reliably in various practical applications and conditions.Key words: FPGA; vending machine; hardware design; software simulation《信息化纵横》 2009年第14期29欢迎网上投稿设置;(2)MDB(Multi-Drop Bus / Internal Communication Protocol)通信接口[3]:MDB/ICP协议是欧洲售货机制造者协会制定的一套用于协调自动售货机的主控制器(VMC)与多个外设之间的通信协议,用于协调自动售货机的主控制器(VMC)与多个外设之间的通信,所有外围设备与主控制器之间的通信方式都一致。
根据FPGA自动饮料售货机
自动饮料售货机目录1.前言 (1)2.设计流程图 (2)3.源代码编写 (3)4.仿真时序图 (6)5.分析与总结 (7)6.参考文献 (7)1.前言本人在本科阶段自学了一部分PLC,并运用PLC完成了本科的毕业设计,同在毕业设计课题组的同学选做基于PLC自动饮料售货机的设计,当时对自动饮料售货机的控制系统了解仅限于基于单片机与PLC的控制没有亲自动手去尝试设计。
在本学期,全新的接触和学习了FPGA课程,正处于一个FPGA的入门阶段,基于以前的兴趣,该次尝试基于FPGA简单设计自动饮料售货机的一部分控制。
本次是采用Quartus II 13.0sp1进行了程序源代码的编写和时序仿真。
图1-1自动饮料售货机内部结构图图1-2自动饮料售货机内部结构图2.设计流程图图2-1自动饮料售货机示意图图2-2自动饮料售货机流程图3.源代码编写/*信号定义:clk: 表示时钟输入;rst_n: 为系统复位信号;half_yuan: 代表投入5角钱币;one_yuan: 代表投入1元钱币;half_out: 代表找零信号;dispense: 代表机器售出一瓶饮料;collect: 用于提示投币者取走饮料.seg1: LCDA数码管显示;seg2: LCDB数码管显示;seg3: LCDC数码管显示;*/module SCD(half_yuan ,one_yuan,half_out,collect,dispense,rst_n,clk,seg1,seg2,seg3);parameter idle=0,half=1,one=2,two=3,three=4; // idle,half,one,two,three代表投入钱币的几种状态input half_yuan,one_yuan,rst_n,clk;output collect,half_out,dispense,seg1,seg2,seg3;reg[2:0]D; //D代表当前时刻投币的状态reg temp1,temp2;reg collect,half_out,dispense;reg [3:0]seg1; reg[3:0]seg2; reg[7:0]seg3;always @(posedge clk or negedge rst_n)beginif (!rst_n)begin dispense<=0;collect<=0;half_out<=0;D<=idle;temp1<=0;temp2<=0;{seg1,seg2}<=8'b0000_0000;{seg3}<=8'b11111101;endelsebegin temp1<=half_yuan;temp2<=one_yuan; //初始状态赋值case(D)idle: if ({temp1,half_yuan}==2'b10) //0元状态下检测下降沿begin D<=half;{seg1,seg2}<=8'b0000_0101;{seg3}<=8'b1111_1101; //数码管显示dispense<=0;collect<=0;half_out<=0;end //循环时输出置0else if ({temp2,one_yuan}==2'b10)begin D<=one;{seg1,seg2}<=8'b0001_0000;{seg3}<=8'b1111_1101;dispense <=0;collect<=0;half_out<=0;endhalf: if ({temp1,half_yuan}==2'b10) //0.5元状态下检测下降沿begin D<=one;{seg1,seg2}<=8'b0001_0000;{seg3}<=8'b11111101;endelse if ({temp2,one_yuan}==2'b10)begin D<=two;{seg1,seg2}<=8'b0001_0101;{seg3}<=8'b11111101;end one: if ({temp1,half_yuan}==2'b10) //1元状态下检测下降沿begin D<=two;{seg1,seg2}<=8'b0001_0101;{seg3}<=8'b11111101;end else if ({temp2,one_yuan}==2'b10)begin D<=three;{seg1,seg2}<=8'b0010_0000;{seg3}<=8'b11111101;end two: if ({temp1,half_yuan}==2'b10) //1.5元状态下检测下降沿begin D<=three;{seg1,seg2}<=8'b0010_0000;{seg3}<=8'b11111101;end else if ({temp2,one_yuan}==2'b10)begin dispense<=1;collect<=1;D<=idle;{seg1,seg2}<=8'b0010_0101;{seg3}<=8'b11111101;end //售出饮料three: if ({temp1,half_yuan}==2'b10) //2元状态下检测下降沿begin dispense<=1;collect<=1;D<=idle;{seg1,seg2}<=8'b0010_0101;{seg3}<=8'b11111101;end //售出饮料else if ({temp2,one_yuan}==2'b10)begin dispense<=1;collect<=1;half_out<=1; D<=idle{seg1,seg2}<=8'b0011_0000;{seg3}<=8'b10110110;end //售出饮料endcaseendendendmodule图3-1Verilog HDL设计图3-2 Verilog HDL设计4.仿真时序图图4-1仿真时序图图4-2仿真时序图5.分析与总结首先对该控制系统基于PLC和FPGA软件控制方面做简单比较,PLC采用的梯形图的编程,个人认为PLC的类似“积木式的电路结构图”梯形图较简单明了,对程序的调试也方便了些,FPGA的Verilog HDL也可以认为是对象电路的实现的描述,虽然是基于C语言,大部分人有C语言的基础,但是一般人调试很困难。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
基于FPGA的自动售货机控制系统摘要伴随着我国现代化进程的不断深入以及生活节奏的不断加快,如何能够快速、高效、便捷的购物也成为了商家和顾客不得不面临的一个问题。
自动售货机作为一种不同于传统的零售方式,以其不受时间地点限制、省时省力的优点,迅速的成为了人们的首选。
本课题主要是用EDA技术来实现对自动售货机控制系统的设计。
EDA技术以其特有的有开发周期短、设计成本低、运行速度快等天然优势,使开发出的产品可以迅速的投放到市场上去。
该课题主要是基于FPGA内部电路的编程设计,使用硬件描述语言(VHDL)对自动售货机控制系统进行描述,以Altera公司的EP1K30QC208-3芯片为目标器件详细阐述了自动售货机控制系统整体的设计思路以及工作原理,并且对自动收货机控制系统实现的货物信息的存储、进程控制、硬币处理、余额计算和显示功能加以仿真调试。
通过仿真调试,基于可编程器件FPGA 的自动售货机控制系统的设计基本达到了预期目标。
关键词:EDA,FPGA,自动售货机,VHDLVending machine control system based onFPGAAbstractWith the deepening of China's modernization process and the accelerating pace of life, it has become a problem for businesses and consumers to face that how to fast, efficient, convenient shopping. As a way different from the traditional retail, vending machines are not restricted by time and place, So vending machines quickly became the first choice for shopping election. The main topic is the use of EDA technology to achieve the vending machine control system design. EDA technology has a short development cycle, lower design costs, faster running speed, etc. That products can be developed rapidly to market upswing.The main topic is programming based on FPGA. Using hardware description language (VHDL) to describe the vending machine control system. Altera's EP1K30QC208-3 chip as the target device elaborated vending machine control system as well as the overall design concept works, and automatic control of receipt storing cargo information system implementation, process control, coin handling, balance calculation and display capabilities to simulation debugging. Through simulation debugging FPGA-based programmable device vending machine controller design basically achieve the desired goals.Key Words:EDA; FPGA; Vending machine; VHDL目录摘要 (1)Abstract (2)第一章引言 (1)1.1 自动售货机的发展历史 (1)1.2 自动售货机的发展现状 (1)1.3 自动售货机控制系统研究的目的和意义 (2)1.4 课题主要研究工作 (2)第二章关键技术 (3)2.1 EDA技术简介 (3)2.2 FPGA简介 (3)2.3 VHDL简介 (3)第三章系统硬件介绍 (5)3.1 KH310实验箱简单介绍 (5)3.2 时钟单元 (5)3.3 数码管显示单元 (5)第四章程序设计 (7)4.1 功能要求 (7)4.2 系统内部模块设计 (7)4.3 系统外部界面设计 (7)4.4 工作流程图 (8)4.5 系统各功能模块 (9)4.5.1 分频模块 (9)4.5.2 显示模块 (12)4.5.3 扫描模块 (14)4.5.4 主控模块 (16)第五章仿真调试 (21)5.1 顶层模块 (21)5.2 管脚分配.............................................................................................. 错误!未定义书签。
5.3 顶层模块仿真...................................................................................... 错误!未定义书签。
5.4调试运行 (23)5.5 实际操作演示 (24)第六章结论...................................................................................................... 错误!未定义书签。
参考文献.. (27)致谢.......................................................................................................... 错误!未定义书签。
附录.......................................................................................................... 错误!未定义书签。
第一章引言自动售货机,顾名思义是一种能够自动与顾客进行交易的机器,其功能相当于是一个小型的商店。
作为一种非常常见的商业自动化设备,自动售货机具有科技含量高,可以进行24小时不间断的工作,出售商品十分便利并且不需要有专人看守等优点。
使之在可以很大程度上节省人工费用和销售成本,所以自动售货机的迅速普及和发展也就成了必然的趋势。
1.1 自动售货机的发展历史自动售货机的雏形最早可追溯到公元前215年,根据亚历山大的科学家HERON在他的著作《气体装置》中的记载,在埃及的寺院中安装了一种能够用来销售神圣之水的装置。
只要将钱币投入到该装置,水就会自动的流出来。
第二次世界大战之后,经济开始复兴。
1957年,一种被命名为喷水型果汁自动售货机的饮料自动售货机在日本被开发出来了。
只要在饮料自动售货机中投入10日元,它就会自动的在一个纸杯子中注满饮料。
自动售货机的发展狂潮也由此拉开了序幕。
1962年,瓶装饮料自动售货机问世了。
它的问世作使之成为了流通领域革命的使者。
紧接而来的是1967年,日本的货币政策发生了变革,100日元单位以下的货币全部被改为了硬币。
而这个政策的出台让自动售货机产业的发展出现了长足的进步,为自动售货机的普及打下了坚实的基础。
伴随着经济的迅速发展,人类不断的探索追求快速便捷的购物方式,自动售货机的市场需求不断的提升,自动售货机行业的发展也会因此而得到长足的发展。
1.2 自动售货机的发展现状目前,自动售货机已经悄然的走进四十五个国家的市场。
由于目前人类的生活节奏的不断加快,自动售货机在发达国家的发展十分的迅猛。
自动售货机的发展最先开始是由饮料厂商带动的。
日本作为自动售货机发展较早的几个国家之一,拥有者全世界最大的自动售货级市场,在日本当地通过自动售货机出售的商品多达6000余种。
日本每个消费者每年在自动售货机上的消费金额达5.5万日元。
全世界每年通过自动售货机销售商品的总额已达2000亿美元。
就国内来说,自动售货机在我国的安放和使用已经有10多年的历史,目前也还在推广和普及中。
1992年的时候中国市场开始从日本以及韩国引进了部分自动售货机,但是那时候引进的都是淘汰的旧机器。
基于这种情况,我们国家的厂家决定白手起家,自行研制属于自己的自动售货机。
在经历了蹒跚起步的艰难创业阶段之后,自动售货机在中国诞生了,它的诞生为中国零售业打开了一扇新的大门。
在自主研制自动售货机之后,自动售货机开始导入中国市场。
就目前的状况而言,自动售货机在中国市场是基本没有竞争这一说法的。
因为中国目前拥有的自动售货机数量约为4万台,这对于我国13亿的人口来说是多么微不足道的一个数字。
但是我相信在经历了市场导入和逐步发展的缓慢期之后,自动售货机行业必将迎来加速发展和爆炸性增长的阶段,行业的春天也会在那时真正的到来。
1.3 自动售货机控制系统研究的目的和意义随着生活节奏的日趋加快,如何拥有更高的效率渐渐的被人们所看重。
传统购物方式受时间和地点的限制十分的严重,这就成为了商家和顾客都必须面临的一个问题,如何提高购买效率。
自动售货机的出现解决了这一难题,它可以被安置在各种场合:商业街、办公楼、居民小区、学校、地铁站等。
自动售货机以其快捷方便的购物方式满足了人们追求高效率生活的需要。
而自动售货机在国内的普及,成为了城市发展状况的衡量标准。
现有的自动售货机控制系统大多数是采用单片机来进行设计的,但是FPGA对比于单片机而言具有更强的组合逻辑能力和时序实现能力。
采用FPGA设计的自动售货机控制系统具有编程简单,开发周期短,硬件运行速度快,开发成本低,稳定性高等优点。
因为其低廉的成本,使之可以大批量的投放到现代人们的生活中,让其在人们居住的小区,路边的杂货铺以及各种车站都可以让它为人们的生活提供便利。
1.4 课题主要研究工作本课题的主要工作是设计一个自动售货机控制系统,使之能完成货物信息的存储、进程控制、硬币处理、余额计算和显示等功能。
此系统可以管理4种货物,每种货物的数量和单价可以使用键盘输入,输入完之后存入到存储器中;用户可以用0.5元、1元、5元及10元的货币进行购物,利用按键进行选择;售货时能够根据用户投入到硬币,判断钱币是否够,钱币足够则根据顾客要求自动售货,钱币不够则给出提示并退出。