已阅读5页,还剩16页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
关键词:单片机,智能找零,纸币识别系统 系统的基本构成及工作原理下图2.1为系统的结构框图从系统的总体框图可以看出,该系统分为:纸币识别系统、零钱兑换和找零系统三个部分零钱兑换和找零系统的核心控制器件是89C51单片机,他的功能主要表现在以下几个方面(1)、读取键盘输入键值,监视并锁定键盘(2)、读取纸币识别系统送来的纸币面值信息(3)、送出所需要找零钱数额的显示信号(4)、缺币、少币检测(5)、控制电机动作,找出正确的硬币数当控制器接受到纸币识别系统送来的纸币信息后,将信息存入寄存器,然后在启动键盘扫描识别程序,将所识别到的键值存入内部寄存器并和纸币识别系统送来的纸币信息相比较,如果相符合则启动兑换程序,否则将不于兑换,然后重新扫描键盘直到用户输入正确的键值,从而实现零钱兑换及找零功能。实现纸币识别检测的方法很多,大部分实现的方法都是利用了高速数字信号处理(DSP)技术与复杂可编程逻辑器件(CPLD)和线阵型图像传感器(CCD)相结合的方法。这样的技术和产品有很多已经用于我们的现实生活中,而且这样的产品很多都以做成了集成模块,这就为开发智能找零机提供了方便和可能。 系统硬件结构 下图3.1为系统的主电路图,从系统的主电路图中可以知道,该系统大体上可以分为四个模块:单片机模块、键盘模块、显示器模块、步进电机控制驱动模块5。其中后三个模块通过与单片机模块相连接从而构成了一个功能完整的系统,实现了零钱兑换及找零机的基本硬件结构。下面我将从这四个模块具体介绍该系统的具体实现方案。3.1系统主电路结构图1控制器件的选用综合比较器件的优缺点以及该系统设计的实际情况,本文选用了Intel公司生产的MCS-51系列中的8051单片机作为该系统和核心控制器件。AT8051是一种带4K字节闪烁可编程可擦除只读存储器(FPEROMFlash Programmable and Erasable Read Only Memory)的低电压,高性能CMOS8位微处理器,俗称单片机。该器件采用ATMEL高密度非易失存储器制造技术制造,与工业标准的MCS-51指令集和输出管脚相兼容。由于将多功能8位CPU和闪烁存储器组合在单个芯片中,ATMEL的AT8051是一种高效微控制器,为很多嵌入式控制系统提供了一种灵活性高且价廉的方案。2.1系统所采用的键盘接口方案在该设计中选用了非编码键盘中的独立式键盘结构,采用查询的方式实现输入功能。其电路图及布局如图3.2所示3.2键盘接口电路图从上图可以看出该系统键盘结构包括十二按键,其中有十个数字键,两个功能键;“确认”键接到单片机的外部“0”中断接口,当“确认”键按下后就产生中断;“取消”键接到单片机的复位接口,当“取消”键按下后单片机复位。在采用查询方式键盘结构时,CPU对所有按键进行监视;从电路图中我们可以知道,在没有键按下的时候单片机的各输出I/O口在上拉电阻和正电压的作用下被钳位在高电平,当有键按下后,相应I/O端口变为低电平。一旦发现有键按下,CPU应通过相应的程序加以识别,并转入相应键的处理程序,实现该键功能。因此在电路结构和软件处理方面我注意并考虑到了键盘的监控、识别、抖动和窜键处理等方面的问题12。在本例中键盘的监控、识别、抖动和窜键处理均是用通过软件实现的。由于按键的抖动会给按键的识别造成错误的信息,因此很有必要处理好按键抖动的问题。下面我将从按键产生抖动的原因着手来介绍本系统中的解决方案。2.2按键产生抖动原因及解决方案实际中,在按下某个键时,被按按键的弹簧总会有轻微的抖动,如图3.3所示。t1,t3分别是闭和和释放的抖动时间,抖动时间的长短与按键的机械特 t0t1t2t3t4图3.3按键抖动性有关,一般为5ms-20ms13-15。为确保CPU对键的一次闭和仅做一次处理,必须去抖动,这可以分别通过软件和硬件两种方法实现。如果用硬件来实现去抖动,那就需要增加必要的元器件这样就使得电路变的复杂,而且也不经济,所以在本例中选用了,选用了软件去抖动的方法。具体实现的方法就是,当CPU检测到有按键按下后通过软件延时(5ms-20ms)一段时间后再进行扫描,如果延时后检测到仍然有键按下,这时才读取键值并存入寄存器,从而达到了去抖动的效果。2.3窜键的处理用户在操作时常常因不小心同时按下了一个以上的按键的处理一般用软件的方法解决,也有用硬件方法实现的,但是用硬件的方法既复杂有不经济,而用软件的方法只需几行程序就能够解决,所以在本例中我选用了用软件的方法完成窜键的处理。具体方法如下:在8051单片机的数据存储单元中预先设定了窜键标志寄存器。窜键标志寄存器在行扫描期间用于记录被按按键个数,故发生窜键时窜键标志必大于01H 。CPU在行扫描时不以发生第一个被按按键为满足,而是继续完成对所有键的一遍扫描,并在该键扫描结束后根据窜键标志来判断是否发生窜键。如果未发现窜键,则CPU再进行一遍扫描就可以获得最后放开键的键值了。从而解决了窜键的问题。3显示模块在单片机系统中,常用的显示器有:发光二极管显示器,简称LED;;液晶显示器,简称LCD;阴极射线CRT显示器等。由于LED数码管显示器具有价格低廉,配置灵活,连接方便等优点,结合本例实际的需要我选用了两位共阴极的LED显示器作为显示器件,后期可根据实际情况进行调整。3.1系统中所采用的显示接口电路显示部分电路如下图3.5所示,两片CD4543芯片接受到单片机送来的BCD 图 3.5 显示部分电路图显示码后能自其动将编码译成对应的七断数码显示信息,并送往LED显示;由于CD4543具有锁存的功能,在保证供电的情况下,当CPU送完显示信号转而执行其他程序后它仍然可以锁存显示信号,这样就实现了LED的静态显示。机械部分的设计与论证本例中如何实现币是该系统能否用之于实践中非常关键的部分,在有步进电机提供精确转动角度的前提条件下怎样设计出币装置是必须要考虑的问题。机械部分的设计也是该系统的独特之处和创新部分之一。下面我将从理论上将该机械装置的可行性加以论证。机械部分的模型如下图4.1所示22-24:(a) 外观侧面图 (b) 内部结构图图4.1机械部分模型从图4.1(a)可以知道该装置从整体上看可以分为四个部分:动力部分(即电动机)、底座(如上图C所示)、盛币桶(如上图A所示)、转动部分(如上图B所示)。在找币的过程中底座和盛币桶是固定不动的,电动机则带动B部分转动。在结构上B和C是相互接触的光滑平面,A和B之间有很小的间隙,这样是为了能保证B能够在电动机的带动下顺利转动。现假设A中两个圆柱体中左边放一元面值的硬币,右边放一角面值的硬币,当B顺时针转动900的时候,一角面值的硬币就会从C的空心孔G中漏出;当B逆时针转动900的时候,一元面值的硬币就会从C的空心孔G中漏出,这样就完成了一个简单的出币过程;在软件的设计过程中我们可以根据用户输入的信息决定电机正反转的次数从而兑换出正确的零钱。为了说明该装置的工作原理现将各部分的结构介绍如下:在该装置中关键的设计部分应该是转动部分B了,从图4.1(b)中剖面图可以知道B上有两个孔G,孔G的直径设计为一枚硬币直径的1。21。5倍左右,也就是孔G的大小要比一枚硬币略大,这样设计的目的是为了让盛币桶A中的硬币能顺利落入孔G中。当然为了保证B在转动的过程中不被卡住,确定B的厚度是非常关键的,它的厚度应该刚好和一枚硬币的厚度相同;从装置的剖面图可以看出A是一个立体结构,它里面有空心圆柱体用于盛放硬币,显然圆柱面G2的大小应比硬币的稍大。当然,A不是堆放在B上的,它们之间有一定的间隙,这个间隙的距离最大不能超过硬币的厚度,所以A必须有个支撑轴。C上的G1孔为出币孔。5系统的软件结构及其特点5.1主程序流程图主程序流程图如下图5.1所示,从主程序的流程图可以看出,该系统的软件部分大体可以分为键盘扫描子程序、中断服务子程序和步进电机驱动子程序这三大块。开始2000H初始化各端口,给寄存器初值,开外部“0”中断调用键盘扫描监视程序读取键值,存入相应的寄存器R0,R1,并送出显示等待外部“0”中断调用中断服务子程序调用找零程序返回5.2子程序流程图 1.键盘扫描子程序流程图如下图5.2所示为键盘扫描、识别子程序流程图25。在本图 5.2键盘扫描子程序流程图2.中断子程序流程图下图5.3为中断服务子程序流程图,在中断服务子程序中P2.5端口作为标6零钱兑换机的工作方式及操作说明6.1换零机的工作方式1、在零钱兑换机中放入指定金额的零钱(例如200元),并将充完币的换零机放置在公交车站及人群集中的地方。2、放置在公共场合的零钱兑换机是由用户操作的,用户投入纸币后,通过键盘的操作得到用户想要的零钱。3、放置在公共场合的装置如果零钱不足则会产生报警,即时提醒相关人员来处理。6.2换零机的操作方式下图6.1所示为系统控制面板的效果图,它包括键盘和显示两个部分;现将其操作方式介绍如下:图 6.1 找零机操作面板效果图1 零钱兑换操作假使用户向零钱兑换机投入的是五元面值的纸币,现在用户想要四个一元,十个一角的硬币,则操作方式为:先按“4”键,然后按“0.”键,再依次按“1”,“0”键,如果用户认为没有问题了就按“确认”键,系统将按用户的要求兑换出相应的硬币数;要是用户发现一角的硬币少了,还要多点,这时用户可以按“取消”键,然后重新输入,步骤和上面一样。当然,系统会自动记录用户所投的纸币面值,并根据用户输入的信息和纸币信息相比较,假如用户输入的数额和纸币数额不相符,则不与兑换;如果相符合则可以实现兑换。2 找零操作找零操作基本上和零钱兑换相同,只不过这时需要人来管理和操作。我们还是假设消费者买一个价格为“2元6角”的商品,付给卖主10元钱,这时卖主就可以这样操作:先按“7”键,然后按“0。”键,再按“4”键最后按“确认”键即可。要是消费者给了3元钱的纸币,这时卖主的操作方为:先按“0。”键,然后按“4”键,最后按确认键即可。3.零钱兑换及找零的范围从理论上来讲该系统可以实现任意范围内零钱的兑换及找零,该系统可以根据不同用户的需要来设定兑换及找零的范围。从实验的角度来看由于在实验的过程中只用到了两种币种,根据组合的方式的不同可以实现如下范围内的兑换及找零具体情况见下表6.1所示:表6.1零钱兑换及找零的范围币种一次性最大兑换和找零范围1元和1角9个一元和99个一角或9个一角和99个一元1元和5角9个一元和99个5角或9个5角和99个一元1角和5角9个一角和99个5角或9个5角和99个一角当然,该系统如果要做成产品,多币种结合兑换和找零以换零机的容量也是必须要考虑的问题。目前市面上有1元、5角和1角这三种面值的硬币,因此在设计该产品的时候必须考虑到这三种硬币的结合兑换和找零,如果要扩充本兑换机的功能,使其可以对纸币1元,5元,10元,20元,100元操作动态兑换,算法类似,有限制一次性兑换的数量,只是兑换机可以通过改变结构即可。附录实验源程序: org 0000h jmp 0088h org 0003h jmp mm org 0088h start: mov ie,#81h clr it0 mov p3,#0ffh mov p0,#0ffh mov r0,#20h kk: call delay ;键盘扫描 jnb p0.0,dd jnb p0.1,zlq1 jnb p0.2,zlq2 jnb p0.3,zlq3 jnb p0.4,zlq4 jnb p0.5,zlq5 jnb p0.6,zlq6 jnb p0.7,dd1 jnb p2.7,dd2 jnb p2.6,dd3 jmp kk dd: ljmp zlq dd1: ljmp zlq7 dd2: ljmp zlq8 dd3: ljmp zlq9 zlq1: call delay jnb p0.1,zlq1 mov r0,#20h mov 20h,#01h mov r0,#01h clr p3.5 mov p1,#01h km: jnb p0.0,$ jmp zlq zlq2: call delay jnb p0.2,zlq2 mov r0,#20h mov 20h,#02h mov r0,#02h clr p3.5 mov p1,#02h jmp km zlq3: call delay jnb p0.3,zlq1 mov r0,#20h mov 20h,#03h mov r0,#03h clr p3.5 mov p1,#03h jmp km zlq4: call delay jnb p0.4,zlq1 mov r0,#20h mov 20h,#04h mov r0,#04h clr p3.5 mov p1,#04h jmp km zlq5: call delay jnb p0.5,zlq1 mov r0,#20h mov 20h,#05h mov r0,#05h clr p3.5 mov p1,#05h jmp km zlq6: call delay jnb p0.6,zlq1 mov r0,#20h mov 20h,#06h mov r0,#06h clr p3.5 mov p1,#06h jmp km zlq7: call delay jnb p0.7,zlq7 mov r0,#20h mov 20h,#07h mov r0,#07h clr p3.5 mov p1,#07h jmp km zlq8: call delay jnb p2.7,zlq8 mov r0,#20h mov 20h,#07h mov r0,#07h clr p3.5 mov p1,#07h jmp km zlq9: call delay jnb p2.6,zlq9 mov r0,#20h mov 20h,#09h mov r0,#09h clr p3.5 mov p1,#09h jmp km zlq: lcall delay jnb p0.0,$ qq: jnb p0.1,cc1 jnb p0.2,cc2 jnb p0.3,cc3 jnb p0.4,cc4 jnb p0.5,cc5 jnb p0.6,cc6 jnb p0.7,cc7 jnb p2.7,cc8 jnb p2.6,df call delay1 jmp qq df: ljmp cc9 cc1: lcall delay jnb p0.1,$ mov r1,#21h mov 21h,#01h mov r1,#01h jop: mov a,r1 swap a mov r1,a mov r0,#20h mov a,r0 add a,r1 mov p1,a jmp $ cc2: lcall delay jnb p0.2,$ mov r1,#21h mov 21h,#02h mov r1,#02h jmp jop cc3: lcall delay jnb p0.3,$ mov r1,#21h mov 21h,#03h mov r1,#03h jmp jop cc4: lcall delay jnb p0.4,$ mov r1,#21h mov 21h,#04h mov r1,#04h jmp jop cc5: lcall delay jnb p0.5,$ mov r1,#21h mov 21h,#05h mov r1,#05h jmp jop cc6: lcall delay jnb p0.6,$ mov r1,#21h mov 21h,#06h mov r1,#06h jmp jop cc7: lcall delay jnb p0.7,$ mov r1,#21h mov 21h,#07h mov r1,#07h jmp jop cc8: lcall delay jnb p2.7,$ mov r1,#21h mov 21h,#08h mov r1,#08h jmp jop cc9: lcall delay jnb p2.6,$ mov r1,#21h mov 21h,#09h mov r1,#09h jmp jop org 1000h mm: mov ie,#00h jnb p3.2,$ jb p3.5,dis1 ljmp display dis1: mov r0,#21h ;显示子程序 mov a,r0 swap a mov r1,a mov r0,#20h mov a,r0 add a,r1 mov p1,a mov r1,#20h mov a,r1 jnz ee jmp xxp ee: clr p2.1 call bjdj setb p2.1 call delay dec 20h mov r0,#20h mov a,r0 jnz dis1 xxp: mov 20h,#00h mov r1,#21h mov a,r1 swap a mov p1,a ;20单元显示完成 call delay dis2: mov r1,#21h mov a,r1 swap a mov p1,a mov r1,#21h mov a,r1 jnz ee1 jmp xxp1 ee1: clr p2.0 call bjdj setb p2.0 call delay dec 21h mov r0,#21h mov a,r0 jnz dis2 xxp1: mov p1,#00h jmp start display: mov 20h,#00h mov r0,#21h mov a,r1 swap a mov p1,a mov r1,#21h mov a,r1 jnz ee2 jmp xxp2 ee2: clr p2.0 call bjdj setb p2.0 call delay dec 21h mov r0,#21h mov a,r0 jnz dis2 xxp2: mov p1,#00h jmp start delay: mov r3,#0afh ;延时1 y1: mov r4,#0ffh y2: mov r5,#02h y3: nop djnz r5,y3 djnz r4,y2 djnz r3,y1 ret bjdj: mov p2,#0ffh ;电机正转 clr p2.0 call delay1 setb p2.0 clr p2.1 call delay1 setb p2.1 clr p2.2 call delay1 setb p2.2 clr p2.3 call delay1 setb p2.3 clr p2.0 call delay1 setb p2.0 call delay1 clr p2.3 call delay1 setb p2.3 clr p2.2 call delay1 setb p2.2 clr p2.1 call delay1 setb p2.1 clr p2.0 call delay1 setb p2.0 clr p2.3 call delay1 setb p2.3ret bjdj1: mov p2,#0ffh ;电机反转 clr p1.3 call delay1 setb p1.3 clr p2.2 call delay1 setb p2.2 clr p2.1 call delay1 setb p2.1 clr p2.0 call delay1 setb p2.0 clr p2.3 call delay1 setb p2.3 call delay1 clr p2.0 call delay1 setb p2.0 clr p2.1 call delay1 setb p2.1 clr p2.2 call delay1 setb p2.2 clr p2.3 call delay1 setb p2.3 clr p2.0 call delay1 setb p2.0 ret delay1: mov r3,#0fh ;延时2 m1: mov r4,#0ffh m2: mov r5,#02h m3: nop djnz r5,m3 djnz r4,m2 djnz r3,m1 ret end一、 市场分析 (一) 现有市场分析1. 国际市场:1) 现状:在国外街头巷尾早已推出零钱兑换机。美国的Coinstar公司早已从中发现商机。十几年前,这家公司就开始推出零钱兑换机。市民只要往兑换机里投币,它就会自动计算出换零的数额,并按10%收取手续费后,将所兑换的零钞和凭据一起输出。这种零钱兑换机就摆在各大超市,非常方便。这家公司还与一些机构合作,换零钱的同时可以上网购物,还可以直接向慈善团体捐款。十几年下来,零钱兑换机的生意愈做愈好。据调查,日本,首尔也已经出现了零钱兑换机。2) 普及率3) 存在的问题2. 国内市场:1) 现状:目前,国内也开始关注到零钱兑换机的商机。上海、武汉、苏州、湖南已经出现了试点。2004年10月22日武汉市就发生一起因一男乘客投币不足被揭穿后殴打女司机的事件;2004年8月3日郑州市公汽公司出台“多投币不找零”的政策,结果被人们称为“霸王合同”,引得人们怨声不断。近日,在网上一份相关调查结果显示:90%的参与调查者表示自己遭遇过换零难;60%的人认同零钱兑换机。但仅30%人接受兑换零钱时交手续费。2) 普及率3) 存在的问题:零钞属于国家法定的流通货币,利用零钱换取产生利润的行为,属于买卖流通货币的行为。按照相关条款规定,货币兑换业务属于金融业务范畴,只能在银行进行,并且银行方面是不收取相关费用的。而民间的这种有偿兑换零钱业务,如果是个体商户经营的,首先他们没有这个经营范围,无法申请营业执照;其次,他们无法开据发票;第三,他们也无法入账。总的来讲,他们所从事的是一种变相买卖人民币的行为,这和人民币管理条例的相关规定是相违背的。 3. 应用领域1) 学校渠道: 目前各地大学城拔地而起,拥有大批量的客户群。2) 工厂渠道:在一些大型工厂的员工休息区车间都可以放置自动零钱转换机。3) 办公渠道:证券、银行、交易大厅都比较适合。4) 公共渠道:在一些大型连锁商店、快餐店、地铁站、KTV、网吧、电影院出入口、车站放置一般饮料机5) 城市公交渠道:是一个城市的窗口,其工作的质量与效率会直接影响到人民群众的日常生活和工作。4. 初期市场:科学技术是在不断的发展的,人类文明也在不断进步;在将来的某个时候世界上的纸币将不复存在,取而带之的是电子或者其他方式的货币。但就目前人们的消费观念以及科学技术发展的程度来看,完全用取消纸币的流通是不可能实现的,而且这需要一个相当长的时间
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025宁夏吴忠市红寺堡区招聘(竞聘)区属国有企业管理人员考试总笔试历年常考点试题专练附带答案详解2卷
- 2025四川九洲防控科技有限责任公司招聘市场经理测试笔试历年备考题库附带答案详解2套试卷
- 2025启明信息校园招聘笔试历年常考点试题专练附带答案详解2卷
- 现代农业产业链发展现状分析
- 2025下半年四川内江市隆昌诚信农业产业化融资担保有限责任公司招聘笔试及排名笔试历年典型考点题库附带答案详解2套试卷
- 南昌水业集团南昌工贸有限公司2025年招聘笔试历年备考题库附带答案详解2套试卷
- 2025重庆市工程管理有限公司招聘17人笔试历年常考点试题专练附带答案详解2套试卷
- 2025贵州能投产业集团有限公司招聘(10月28日11月15日)笔试历年典型考点题库附带答案详解2套试卷
- 建筑工程施工安全标准化管理规范
- 网络运维工作总结
- 安全教育培训试题(选煤厂)
- 粉尘清扫安全管理制度完整版
- 糖尿病预防及宣教
- 马克思主义基本原理专题测验答案
- 老年口腔基础知识培训课件
- 2025福建厦漳泉城际铁路有限责任公司筹备组社会招聘10人考试模拟试题及答案解析
- 数学活动自然数被3整除的规律
- TCNAS49-2025成人泌尿造口护理学习解读课件附送标准全文可编辑版
- 党校食堂管理制度
- 企业ERP项目立项与管理报告模板
- linux操作系统选择题大全
评论
0/150
提交评论