《自动饮料售物机控制系统的设计ppt培训课件》由会员分享,可在线阅读,更多相关《自动饮料售物机控制系统的设计ppt培训课件(21页珍藏版)》请在金锄头文库上搜索。
1、题目:自动饮料售物机控制系统的设计,一、大作业摘要,摘要:本次大作业问题:编写程序的过程中,对verilog语言的不熟练导致不能顺利的编写程序来进行实验,对always语句 各种标识理解不透彻,编写程序遇到类似的很多问题;方法:通过仔细复习和理解课本,对课本上的程序例题进行大量的分析,以相类似的程序来进行模仿,经过询问老师和同学探讨以及上网查阅资料的各种方式来完善所设计的关于自动售物机的程序。,二、设计的背景、目的和意义,二十一世纪是信息化高速发展的世纪,因此在二十一世纪掌握前沿技术是十分有必要的。本次课题是计算机组成原理的课程设计,这次课题旨在通过自己对所需功能芯片的设计与实现来巩固以前所学
2、的计算机硬件基础知识,同时也提高动手实践的能力,还有为将来进行更大规模更复杂的开发积累经验。自动售货是20世纪70年代在日本、欧美发展起来的一种全新的消费方式,自动售货机(Vending Machines)商业起源于本世纪的六十年代,由美国的Mars家族发明。自动售货机又被称为24小时营业的微型自助超市,它的售货领域非常广泛,是发达国家商品零售的一种主要方式。自动售货机作为一种先进的消费方式,已经成为城市现代文明发达程度的重要标志,其新颖、时尚的购物方式,24小时营业的特点给人们生活带来了便利,美化了城市环境,受到消费者的欢迎。但是在我国自动售货机的普及还不及发达国家,主要原因是我国EDA技术
3、的应用水平长期落后于发达国家。自动售货机是可完成无人自动售货,集光、机、电一体化的商业自动化设备。 自动售货机不受任何场地限制,方便快捷,可以每天24小时售货,因此深受上班族的欢迎,很多城市的公共场所里面都放置有自动售货机,出售的商品五花八门,从饮料、零食、香烟、糖果,到牙刷、方便面、自动照相机。 近年来,我国的自动售货机行业突飞猛进:在汽车总站、商厦、医院、小区、学校等地区纷纷涌现出自动售货机的踪迹。 这种方便快捷的购物方式越来越受到人们的青睐,同时也是现代化城市配套设施的需求。,三、设计任务及要求,本次实验设计一个简单的自动售货机逻辑电路。它的投币口每次只能投入一枚五角或一元的硬币。投入一
4、元五角钱硬币后机器自动给出一瓶饮料;投入两元(两枚一元)硬币后,在给出饮料的同时找回一枚五角的硬币,投币时只能一个一个地投。,四、确定输入和输出变量,input :one_dollar,投入一元硬币half_dollar,投入5角硬币reset,清零信号clk;时钟信号 output :collect,对输入硬币进行计数half_out,找零5角dispense;出售饮料,五、确定输入状态,状态idle:即未投入硬币; 状态half:表示投入五角钱的状态,状态 half下再投入五角钱则转到状态one; 状态one:表示投入一元钱的状态,如果再投入五角钱,则输出dispense为1,half_o
5、ut为0,表示机器售出一瓶饮料,售货机不找回五角硬币;如果在投入一元,则输出dispense为1,half_out为1, 机器售出一瓶饮料,售货机找回五角硬币。,六、整体设计框图,时钟脉冲,投币信号 输入与处理,控制器,售出饮料,译码,显示,七、输入和输出变量对应部件说明,根据设计要求,共有七个变量。clk:时钟输入;reset:系统复位信号;half_dollar:代表投入五角硬币;one_dollar:代表投入一元硬币;half_out:售货机找回一枚五角硬币信号;dispense:机器售出一瓶饮料;collect:提示投币者取走饮料。,八、方案论证,通过上网查阅资料我得知实现饮料自动售物
6、机的系统可以有以下两种方式 1.通过单片机的控制系统去实现。 2.通过本学期所学习的verilog HDL语言进行描述,编写程序,建立信号文件,连接电路图,生成HDL图,建立波形文件,上实验室进行烧写和功能实现的过程。 论证:第一,通过查阅资料的方式,我得知用verilog hdl去实现饮料自动售物机的方式要比使用单片机的方法简单明了;第二,在我们目前的学习中,对于我们而言,对于verilog语言更熟悉,而单片机原理没有学过,故而不怎么了解。 因此综上两点,本实验采用verilog HDL语言进行实现。,九、状态任务输出特性分析,确定状态机类型,该电路一共用3个状态就可以完成设计要求:状态id
7、le,表示为投入任何硬币状态;状态half,表示投入五角钱的状态;状态one,表示投入一元钱的状态。 状态机状态转换: 1.当投入一元五角钱时,给出一瓶饮料并转到状态idle; 2.投入两元(两枚一元)硬币后,在给出饮料的同时找回一枚五角的硬币并转到状态idle。,十、状态机设计(状态转换图),reset idle one half图1中如果当前状态为idle(即未投入硬币),则投入五角钱即输入为01则状态转到half,在状态half下再投入五角钱则转到one;在idle状态投入一元钱即输入为10则直接转到状态one,在one状态下如果再投入五角钱,则输出dispense为1、half_out
8、为0,表示机器售出一瓶饮料,售货机不找回五角硬币。,十一、状态机设计(状态编码),module machine_sell(one_dollar,half_dollar,collect,half_out, dispense,reset,clk);parameter idle=2b00, half=2b01, one=2b10; /代表投入币值的几种情况 input one_dollar,half_dollar,reset,clk;output collect,half_out,dispense;reg collect,half_out,dispense;reg1:0 D;always(posed
9、ge clk)beginif(reset)begindispense=0;collect=0;half_out=0;D=idle;endelsecase(D)idle:if(half_dollar)begin,dispense=0;collect=0;half_out=0;D=half;endelse if(one_dollar)begindispense=0;collect=0;half_out=0;D=one;endelsebegindispense=0;collect=0;half_out=0;D=idle;endhalf:if(half_dollar)begindispense=0;,
10、collect=0;half_out=0;D=one;endelse if(one_dollar)begindispense=1;collect=1;half_out=0;D=idle;endelsebegindispense=0;collect=0;half_out=0;D=half;endone:if(half_dollar)begindispense=1;collect=1;half_out=0;D=idle;end,else if(one_dollar)begindispense=1;collect=1;half_out=1;D=idle;endelsebegindispense=0;
11、collect=0;half_out=0;D=one;endendcaseend endmodule,十二、状态机设计,电路bdf原理图如上所示,两个投币口的输入端,清零端输入和时钟信号的输入,在输出端口利用D触发器进行储存再连接三个输出端,对电路进行简单地控制。,十三、RTL图,十四、仿真时序图,如上波形图所示(在同一工程文件下建立波形文件, 当reset 为1时,系统复位,状态机的状态为初始状态idle。投入五角硬币,状态转到half状态,再投入五角状态转到one状态,再投入五角状态回到idle状态,同时输出信号dispense和collect为1,驱动执行机构售出一瓶饮料,并提示投币者取走饮料。,十五、演示照片,每个状态1张照片,并有文字说明,此页ppt可复制,十六、设计结论及评价,优点:简单快捷,可以实现自动售物功能,节省人力物力。不足:可供选择的商品数量太少结论:通过此次的verilog HDL语言来进行编程设计自动售物机的系统,对课本上的一些知识了解的更加透彻了,同时加强了我的设计思想和编写程序的能力,也开始逐渐的对程序编写设计控制系统有了初步的认识。,谢谢大家!,