基于单片机控制的自动售货机系统设计.docx
- 文档编号:6770125
- 上传时间:2023-01-10
- 格式:DOCX
- 页数:31
- 大小:522.73KB
基于单片机控制的自动售货机系统设计.docx
《基于单片机控制的自动售货机系统设计.docx》由会员分享,可在线阅读,更多相关《基于单片机控制的自动售货机系统设计.docx(31页珍藏版)》请在冰豆网上搜索。
基于单片机控制的自动售货机系统设计
摘要.......................................................................I
Abstract...................................................................II绪论........................................................................1
第一章自动售货机的系统结构...............................................5
1.1自动售货机的系统概述.....................................................3
1.1.1自动售货过程的控制子系统简述.........................................4
1.1.2自动售货过程的通讯子系统简述.........................................5
1.2自动售货机的功能简介..................................................6
1.2.1此次设计的自动售货机的功能简介....................................6
1.2.2实现自动售货机的功能的设计思路....................................7
1.2.3论文的内容及拟解决的问题..........................................7
第二章.自动售货机的系统硬件电路设计........................................10
2.1自动售货机中央控制元件8751的介绍.......................................8
2.2货币识别系统.............................................................9
2.3货物选择系统............................................................11
2.4出货及显示花钱数系统.................................................…11
2.5找钱及显示找钱数系统...................................................13
2.6出错报警系统简述........................................................14
第三章.自动售货机的系统软件程序设计.........................................15
3.1自动售货机货币识别系统程序流程图......................................15
3.2自动售货机货物选择系统的程序流程图...................................15
3.3自动售货机出货,显示花钱数系统流程图...................................19
3.4自动售货机找钱,显示找钱数系统流程图..................................20
3.5出错报警系统流程图.....................................................21
第四章.系统软、硬件设计实现.................................................21
4.1驱动程序..............................................................23
4.1.1实现有效投币定时30秒以及累加计数程序:
.............................23
4.1.2货物选择系统的驱动程序................................................24
4.1.3报警系统的驱动程序...................................................30
结论.......................................................................27
参考文献...................................................................28
致谢.......................................................................29
附录......................................................................30
摘要
自动售货机是劳动密集型的产业构造向技术密集型社会转变的产物。
本文设计了一种以INTEL公司的8751单片机为核心的自动售货机装置的控制系统。
详细介绍了自动售货机系统的方案设计、硬件选择、软件规划和编写,并重点描述了自动售货机系统的工作原理、系统设计、软件编程的原则和技巧。
该系统以单片机8751芯片为核心,采用集中控制方式实现了对自动售货机全过程的自动控制。
本系统选择4×4矩阵式键盘按键作为货物选择端,采用了2个可编程并行接口8255A实现并行接口的扩展,解决了单片机8751芯片输入/输出口引脚紧张的问题,实现了货物的掉出以及货币数的显示功能。
此外,系统程序采用keil软件进行程序的编写和编译,该软件具有编程简单、查错方便、阅读容易等特点。
汇编语言是程序的基本语言,具有容易理解,便于记忆和使用等特点。
关键词:
自动售货机;控制系统,8751单片机;系统程序
Abstract
ThesystemthatIdesignisanautomatbasingonmicrocontroller8751tocontrolthesellgoodssystem.Inthefollowingpaperintroducethesystemdesignandhandwaresellectionsoftwaredesignandwrite.andemphasesdescribetheautomatsystemworkeprinciplesystemdesignandsofewareprogramingtechniqueThemastermcu8751isINTELCompany.Thesystemhassomeprominentexcellencesbyconcentratecontrol.Itisverysteadyandcredible,mysystemuse44keyboardtosellectinggoodsuseingtwoprogramingparallelinterface8255toresolvei/otensionalproblemmakegoodsdorpandcoindisplayfunction.Iprogramthesystembysoftwarenamedkeilc51Thewholeofprogrammeriswritedbyasembelinglanguage.keilc51softwaremakesmyprogrammereasierandcheckworkmoreconvenient.Keywords:
vendingmachine;MCU8751;8255Akeyboard/display
绪论
从自动售货机的发展趋势来看,它的出现是由于劳动密集型的产业构造向技术密集型社会转变的产物。
大量生产、大量消费以及消费模式和销售环境的变化,要求出现新的流通渠道;而相对的超市、百货购物中心等新的流通渠道的产生,人工费用也不断上升;再加上场地的局限性以及购物的便利性等这些因素的制约,无人自动售货机作为一种必须的机器便应运而生了。
从广义来讲投入硬币、纸币、信用卡等后便可以销售商品的机械,从狭义来讲就是自动销售商品的机械。
从供给的条件看,自动售货机可以充分补充人力资源的不足,适24应消费环境和消费模式的变化,小时无人售货的系统可以更省力,运营时需要的资本少、面积小,有吸引人们购买好奇心的自身性能,可以很好地解决人工费用上升的问题等各项优点。
自动售货机是以单片机为核心的自动化控制装置,它集按键选择技术、单片机技术和显示技术于一体,具有功能强大、可靠性高、使用方便、维护简单等特点。
因此,在商业、生活中得到了广泛的应用。
有些自动售货机不仅能够自动识别1元、5角硬币,而且能够自动识别20元、10元、5元纸币,还会自动找零,人机对话的应用性提高使自动售货机在国内大面积普及成为可能。
随着科技的发展及人们生活水平的提高,自动售货机市场的发展越来越呈现出多元化及个性化的需求。
通过自动售货机进行自助购物正逐渐成为市民的一种新的消费时尚,快捷方便的购物方式满足了人们在当今科技高速发展的现代社会追求高品质生活的需要。
自动售货机在城市商业区、写字楼大厅、风景区、车站、码头、繁华街道等公共场所的布设能够美化亮化城市环境,方便群众生活,已经成为城市各角落的一道亮丽风景线。
自动售货机必将在国内普及,并成为城市现代文明程度的一种象征性标志。
本文详细介绍了如何控制、要求进行自动售货机系统的方案设计、硬件选择、软件规划和编写,并重点描述了自动售货机系统的工作原理、系统设计、软件编程的原则和技巧。
本文共分为五章。
系统介绍了自动售货机系统从控制方案,操作逻辑到系统软件等各个环节的设计及系统调试的方法和原则。
第一章简单介绍了自动售货机的第2页系统结构,第二章介绍了自动售货机的系统硬件电路设计,第三章介绍了自动售货机的系统软件程序设计及分析,第四章主要介绍了自动售货机的系统软件驱动程序实现。
第一章自动售货机的系统结构
1.1自动售货机的系统概述
自动售货机是集光、机、电一体化的独立机构,它只需要顾客投币和按购物键选择即可自动售货及退找零钱,其工作程序如下图1.1
图1.1自动售货机工作时序图
售货机的工作原理是:
(1)从投币口送入货币,然后通过传感器采集数据、识别器判断货币的真伪并判别面值。
(2)识别器把信息数据传给通信模块。
(3)通信模块与售货机的主控系统通信,主控系统显示面值,启动售货机的面板键,显示出哪个货道有货,哪个货道已经售完,并等待顾客按键选择商品。
(4)顾客选择商品后,售货机自动把商品送出,等待顾客取走。
(5)显示余额,如果金额足够多,顾客可以选择找币或者继续买商品;如果款额不够,售货机经过延时予以退币。
退币分为两种情况:
一种是由货币识别器完成退纸币,另一种是由硬币的通信模块完成退硬币。
(6)系统复零,完成售货。
自动售货机的硬件原理构成如下图2.2所示
图1.2自动售货机硬件结构图
综合所述,售货机系统可以分为三部分组成,即自动售货机的控制子系统、通讯子系统、硬币器子系统以及纸币器子系统。
其中控制子系统是本设计研究重点。
这些内容在下文中进一步介绍。
1.1.1自动售货过程的控制子系统简述
控制子系统由以下四个部分组成,分别是预设自动售货机系统、金额累计、可售指示和退币系统、售完检测系统、售出累计及自测功能系统。
1、预设自动售货机系统。
自动售货机售出的同类商品可分为若干品种,其售前设定价格须预先寄存在控制系统内。
售货机的价格设置由按键和存储器组成。
通过按键选择被设价商品的种类及价格,并将价格写入存储器中,该存储器本身具有掉电保护功能,属于软件设置方式。
此外,在简易售货机中,由于出售商品的种类少,价格变化下,使用币种单一,也可以用硬件设置价格,才用拨码开关对应方式,结构简单,操作方便。
2、金额累计、可售指示和退币系统。
控制系统的核心CPU对识币、退币、无货检验及购货信号进行循环检查,当有识币信号后,将金额数值送入金额累计存储器中进行累计,并通过串行接口使可售指示灯亮,提示购货。
此时可以按下购货按钮,由于CPU检测到有购货信号后,如金额累计器中的数值与预设价格相等,则通过并行扩展接口驱动电磁阀或者微电机驱动出商品,并将金额累计存储器清零,完成一次售货过程,如累计金额大于预设价格时,驱动商品后,相减差额由信号驱动退币,实现退币和找钱功能。
3、售完检测系统。
在自动售货机商品存储存道下方按照有接触行程开关,当存储存道有商品时,压下行程开关,自动售货机正常工作;当商品出售完毕时,行程开关被释放,向CPU发出无货信号,经过检测通过串行扩展接口向相应的售完指示灯发出信号,使机身“售完”指示灯亮,此种商品自动停售,即使投币金额达到该道商品预设价格数值,可售按钮仍然无法启动信号,金额累计存储器也不清零。
4、自动售货机售出累计及自测功能系统。
该机CPU在每次售出商品后,向售出累计存储器中累计售出数据,通过自动售货机内部的按键可在金额显示窗口中读到累计结果。
此外,在按下自测功能键后,出现自测功能信号,由外部按键操作,可检测各商品存储道的驱动商品功能。
1.1.2自动售货过程的通讯子系统简述
自动售卖系统的外围设备较为复杂,导致对主控制器的要求越来越高。
为了简化设计,采用简单、稳定的内部通讯总线协议非常必要。
有些公司采用欧洲售货机制造协会(EVMMA)制定的MDB/ICP总线协议。
该协议简洁明了,功能强大,可扩展性强并且对外挂设备数目没有限制,是理想的自动售卖系统内部总线协议。
MDB/ICP协议是欧洲售货机制造协会制定的一套用于协调自动售货机的主控制器(MMC)与多个设外之间通讯的协议。
MDB接口实际上是工作于波特率9600的主从型串行总线接口,所以外围设备(例如硬币器、纸币器等)均为主控制器(传统上称为售货机控制器——VMP)的从机。
所有外围设备与主控制器之间的通讯方式都一致。
MDB协议的串行位格式为:
1个起始位,8个数据位,1个方式位和1个停止位,共11位。
其中方式位根据传递的方式的不同置0或置1。
在MDB总线上,VMC通过广播方式向外发送命令。
第一字节为地址字节(实际上只有高5位寻址信息,低3位为对外设的指令),该字节被所有的外设读取,但只有符号地址字节所指定的外设才处理其后的数据字节,并做出反应。
在VMC到外设的数据中,地址字节的方式位被置1,数据字节的方式位被置0,外设通过检验接受到的方式位确定是地址指令还是数据。
当数据从外设发送到主机时,最后送出的字节方式位被置1,标志着数据发送完毕。
10VMC向外设发送的指令由一个字节、一些可选的数据字节一个校验和字节构成。
发送指令后,外设应答VMC的通信块可以由一个数据块和一个字节组成,或者一个应答字节,或者一个无应答字节。
如果外设应答数据块的话,VMC将通过一个应答字节、无应答字节或重发字节应答外设传回的数据。
1.2自动售货机的功能简介
1.2.1此次设计的自动售货机的功能简介
基本原理:
货币识别器对所投货币进行识别,根据金额将商品选择权提供用户,用户选择后,控制芯片发出指令将所选择商品从储备料道中送达取物口。
其功能描述:
货物种类一共设有12种,这12种物品分别对应着12个不同的按键选择,其中1元,2元,3元价格不等的物品各4种;货币识别器能够识别1元,5元的货币,自动售货机能够实现货币累加功能。
在规定的30秒中内,投了几次货币后,货币能够实现累加功能,这样机器就会把投入的货币总额数目输入中央控制元器件,进行处理;超过30秒后投币,投币无效,机器自动把钱全部退出来。
如果累计投入的货币数目超过物品的预设价格,机器能够实现找钱功能;如果投入的货币没有达到所选择物品的预设价格时,投入的钱将全部退还;在投入一次累加货币后选择物品,如果投入的累加货币数目大大超过所选择物品的预设单个价格时,那么能够实现选择同一个物品购买多个,在本设计中设为可以同时购买2个或3个物品。
本设计中有一共有16个按键选择,其中12个是货物选择键,有2个是多选键(一次购买2个或3个货物),还有1个确定键和1个取消键。
如果没有按照预先设计的流程顺序进行按键选择,自动售货机将启动报警系统,等待再次正确的按键选择。
在出货系统中设计了,显示购买货物的共花钱数。
在找零系统中设计了,显示找零的货币数。
1.2.2实现自动售货机的功能的设计思路
采用单片机MSC-51系列中的8751作为中央控制元件;
用P3.4和P3.5作为识别货币输入端;
P1作为货物选择选择端(采用44行列式键盘做为选择货物端);
采用两个8255A扩展并行I/O接口,实现掉出货物功能、显示功能、找钱功能;
P2.7和P2.6分别作为8255A的片选输入端。
1.2.3论文的内容及拟解决的问题
1、从投币口送入货币,然后经过传感器采集数据、识别器判别人民币的真伪并判别面值。
2、识别器把信息数据传给通讯模块。
3、通讯模块与售货机的主控系统通信,启动售货机的面板控制,并等待顾客按键选择商品。
4、顾客选择商品后,售货机自动把商品送出,等待顾客取走。
5、金额足够多,售货机将自动找回钱。
6、系统复零,完成售货。
第二章.自动售货机的系统硬件电路设计
2.1自动售货机中央控制元件8751的介绍
在本次设计中,中央控制元件采用MCS-51系列单片机中的8751。
8751单片机是Intel公司生产的MCS-51系列单片机中的一种,其特性与MCS-51单片机基本一样。
8751单片机内部结构:
8751单片机包含中央处理器、程序存储器ROM、数据存储器RAM、定时/计数器、并行接口、串行接口和中断系统等几大单元及数据总线、地址总线和控制总线等三大总线。
其中,中央处理器CPU是整个单片机的核心部件,是8位数据宽度的处理器,能处理8位二进制数据或代码,CPU负责控制、指挥和调度整个单元系统协调的工作,完成运算和控制输入输出功能等操作。
8751内部有128个8位用户数据存储单元和128个专用寄存器单元,它们是统一编址的,专用寄存器只能用于存放控制指令数据,用户只能访问,而不能用于存放用户数据,所以,用户能使用的RAM只有128个,可存放读写的数据,运算的中间结果或用户定义的字型表。
图2.18751内部结构
MCS-51的引脚说明:
图2.28751引脚图
MCS-51系列单片机中的8031、8051及8751均采用40Pin封装的双列直接DIP结构,上图是它们的引脚配置,40个引脚中,正电源和地线两根,外置石英振荡器的时钟线两根,8751共有4组8位I/O口P0、P1、P2或P3,用于对外部,4数据的传输。
组8位共32个I/O口,中断口线与P3口线复用。
2.2货币识别系统
货币识别分别有对硬币和纸币的识别,由此在下文中分别介绍说明:
1.我国目前发行的1元、角和1角硬币的金属原材料是为造币而专门使用的特殊合金,因此在它通过投币入口进入由电感和电容组成的特定高频振荡线路所产生的磁场时,金属材质和体积的体积的差别对电感量的影响大小也出现微弱差异,电感量的变化引起振荡频率的变化,与设定值进行比较,确定某种硬币后,经窄带选频电路将频率信号变为电压信号输出,完成对金属硬币的识别。
金属硬币识别器种类繁多,但存币退币机构基本上分为两类:
一类是平面是存币,电磁阀退币;另一类是圆筒式存币,步进机退币。
当硬币投入后经过识别识别出电信号后,伪币和异物被排出真币按面值由几组分配电磁阀分配到不同存币腔体内备用。
当收到退币找零电信号后,通过退币电磁阀或者退币电机拉杆,将存币腔内下部依电信号程序退出,完成自动售货机的退币找零功能。
2.硬件数据采集设备的电源为发光二极光,所发出的光的波长峰值在红外线波段,但不是单光谱,其中红外光成分达到90%以上,因此,光源辐射光中起主要作用的实际上是红外辐射。
实验中对各种纸币的特征的识别也主要是根据纸币的表面特征对红外辐射的敏感。
红外辐射是光辐射中的一种类型,它具有普通光辐射的共性。
这主要是因为不同的纸币表面特征不同,所以在相同的光辐射下会呈现不同的反映,从而可以用来识别不同的纸币,具体地说,首先,钞票的纸张材料是特定的,所以同一种钞票具有一定程度的共性;其次,钞票表面的图案差异,对于相同面值的钞票而言,其表明的各种图案相同,不同面值的钞票之间表明图案有较大区别,所以,根据所述的光的辐射理论,也可以根据它们对相同光辐射的不同反映来判断起面值归属;再次,钞票流通过程中所造成的不同程度的污.就会造成钞票表面特征的变化。
因此,光辐射可反映钞票的新旧程度;另外,相对于尾部的鉴别,因为伪币的一般无法拥有真钞纸的特性,而且,伪币中的某些图案达不到钞票的实际标准,如水印是造纸过程中通过特殊工艺抄制上去的无色图案,而伪钞的水印则是通过一定方式轧印或扫描印上去的,这都能在钞票对光辐射的接受信息中反映出来。
作为整个货币识别系统的核心部分,纸币控制器必须有一颗功能相对较强的嵌入式微处理器以及一系列外围器件构成。
在这里选用的是8751单片机,8751拥有四个I/O口即P0、P1、P2、P3,它有两个可编程的定时器/计数器,分别称为定时器/计数器0和定时器/计数器1。
它们都是16位加法计数结构,分别有TH0和TL0及TH1两个8位计数器组成。
其主要功能是:
处理器通过控制发光二级管发光,当纸币进入时,入口处发光二极管投射过纸币的光变强变化,被相应入口处的光电三极管接受到后转换成为电信号,传给8751处理器,经过判断,处理器直接控制。
2.3货物选择系统
货物选择系统主要通过键盘操作来完成。
键盘是人机交换的装置,价格低廉,使用方便,带单片机应用系统中得到了广泛的应用。
按键按照接口原理可分为编码键盘和非编码键盘两类,它们的主要区别是识别键符及给出相应键码的方法。
编码键盘主要用硬件来实现对键的识别,非编码键盘主要是由软件来实现键盘的定义与识别。
在单片机应用系统中,除了复位按键有专门的复位电路及专一的复位功能外其它按键都是以开关状态来设置控制功能或输入数据的。
当所设置的功能键或数字键按下时,计算机应用系统应完成该按键所设定的功能。
2.4出货及显示花钱数系统
由于还要实现显示花钱数这项功能,这样导致I/O接口紧张考虑到8751自身资源有限,并不能很好的满足系统的要求,明显需要实现并行接口扩展,在本设计中采用了8255A实现扩展并行I/O接口功能。
8255A是一个具有两个8位(A口和B口)和两个4位(C口高/低4位)并行输出输入端口的接口芯片。
8255A可作为提供TTL电平兼容接口,如打印机、A/D、D/A转换器、键盘以
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于 单片机 控制 自动 售货 系统 设计