基于Arduino的纸币整理分类控制系统设计*

2016-12-02 09:30陈芳琪林子钰黄凯鸿周雨婧赵建柱
网络安全与数据管理 2016年21期
关键词:子程序纸币整理

陈芳琪,林子钰,黄凯鸿,周雨婧,赵建柱

(中国农业大学 工学院,北京 100083)



基于Arduino的纸币整理分类控制系统设计*

陈芳琪,林子钰,黄凯鸿,周雨婧,赵建柱

(中国农业大学 工学院,北京 100083)

设计了一种基于Arduino开发板的纸币整理、分类控制系统。该系统采用ArduinoMega2560单片机作为控制核心,结合步进电机驱动板、颜色传感器、显示屏、语音播放模块等组成整套系统,实现了纸币整理、分类、显示、语音播报等功能。该系统利用Arduino IDE开发环境编写控制程序,通过模拟人工整理纸币过程实现纸币整理,通过颜色传感器采集数据以及算法控制,实现纸币分类,并通过实验证明了设计的可靠性、稳定性。

纸币整理;Arduino;纸币分类;颜色识别

0 引言

我国无人售票公交车的付费,相当一部分是由乘客使用小面额纸币或硬币自行投放,钱币的清点工作是一个难题,特别是纸币的分类需要大量的人工完成,缺少自动化的分选装置,国外的纸币清分机结构复杂、价格昂贵。本文提出了一种全自动纸币整理分类一体机,可实现纸币整理、分类、显示等功能,具有良好的应用前景。

1 系统方案设计

纸币整理部分:模仿人工整理纸币的过程:(1)将散乱的纸币竖起;(2)用手指或者手掌将竖直或者倾斜的纸币拨倒;(3)用手指或者手掌将拨倒的纸币推整齐。该系统整理纸币分4步完成:(1)纸币顺斜板滑下;(2)动板往复运动震动纸币;(3)上拨针拨倒竖直或倾斜的纸币;(4)下拨针将拨倒的纸币推至左侧。

纸币分类部分:不同纸币之间颜色存在明显差异,通过颜色传感器检测每种纸币不同的红、绿、蓝三通道的颜色值(RGB),分析和比较不同纸币RGB的特性,实现纸币分类。

2 系统结构

2.1 纸币整理机构

纸币顺斜板滑下,进入竖直的两板之间,其中一个为动板,另一个为定板。通过控制步进电机丝杆滑台控制动板作水平往复直线运动,使两板间距周期变化,纸币在重力作用下继续下落。动板往复运动的同时,上端步进电机带动同步带上的拨针将竖直的纸币拨倒,下端步进电机带动同步带上的拨针将纸币自右端推至左侧。整理好的纸币通过控制舵机轴的旋转落入下面的纸币分类机构。

2.2 纸币分类机构

纸币上方颜色识别传感器负责采集信号,不同面额的纸币对应不同的RGB,采用8G-4R-4B二值化[1]进行RGB数值处理,使之产生显著差别,从而实现不同纸币的分类。通过控制步进电机转动捻钞轮,实现纸币的单张输出,每次识别到当前纸币的面额之后,通过控制下方步进电机滑台,带动固定在滑台上方的收集盒前进或后退,使不同的纸币落入对应的收集盒中。该系统结构框图如图1所示。

图1 系统结构框图

3 硬件部分

采用TCS3200颜色传感器收集纸币的RGB数据,ATmega2560芯片进行数据处理,Ramps1.4拓展板和a4988驱动板作为步进电机驱动拓展板,组成一个基于Ardunio Mega 2560控制的系统。通过控制各接口输出的高低电平来控制各个部件,通过多个数字接口进行信号传输,按时序通过I/O接口控制各部件工作状态。对在正常清点中各传感器接收到的信号进行取样、识别,并寄存起来,作为检测的依据,同时根据比较算法得到该面值纸币的特征信号。清点纸币时,把颜色传感器接收到的信号参数与原寄存起来的信号参数进行比较、判断,发出指令,步进电机驱动丝杆滑台移动,将不同纸币分别传送到对应的纸币收集盒中。

3.1 单片机单元

系统采用Arduino Mega2560作为核心电路板,其最大的特点就是具有多达54路数字输入输出,特别适合以Mega2560处理器为核心的需要大量I/O接口的设计,同时具有54路数字输入/输出口(其中16路可作为PWM输出),16路模拟输入,4路UART接口,1个16 MHz晶体振荡器,1个USB口,1个电源插座,1个ICSP header和1个复位按钮[2]。鉴于Arduino Mega 2560强大的功能,选择其作为纸币整理分类机的核心处理器。纸币整理分类机包含多个部件,其中5路步进电机驱动板占用10个数字I/O接口,颜色传感器占用一个中断0引脚、4个数字I/O接口,语音模块占用2个数字I/O接口,显示屏占用2个数字I/O接口。Arduino Mega 2560可满足该纸币整理分类机的数据处理需求。系统所用主控板如图2所示。

图2 Arduino Mega 2560

3.2 颜色传感器单元

TCS3200可编程的彩色光频率转换器适合于色度计测量应用领域,根据三原色感应原理,如果已知构成各种颜色的三原色值,即可知道所测物体的颜色。对于TCS3200 ,当选定一个颜色滤波器时,它只允许某种特定的原色通过,阻止其他原色通过[3]。例如,当选择红色滤波器时,入射光中只有红色可以通过,蓝色和绿色都被阻止,这样就可以得到红色光的光强;同理,选择其他滤波器就可以得到蓝色光或绿色光的光强。通过这三个值,就可以分析投射到TCS3200 传感器上光的颜色。

通过颜色传感器得到纸币RGB值后,再经过8G-4R-4B二值化处理数据,并根据数据特征,进行纸币分类。系统所用的颜色传感器如图3所示。

图3 TCS3200颜色传感器

3.3 显示单元

系统选择 LCD1602液晶显示器,其具有微功耗、体积小、显示内容丰富、超薄轻巧的诸多优点,可以显示字符和数字,显示容量为 2行16个字。在系统中,将第一行的16个字分为“1yuan 5jiao zong”,同时将不同纸币的数量、总金额对应到第二行的16个字。在数据通信方面,采用两条双向的串行线来实现数据的传输(I2C协议),极大地简化了电路,使整个系统简单而不失功能。

3.4 语音播放单元

本系统选择mini voice M3语音播放模块,该语音播放模块体积小、集成度高、音量大、可靠稳定,可以通过单片机单元选择播放存入存储卡内的指定音频[4],如发送指令“play,0001,$ ”便播放0001号文件,具有操作简单、可控性高的优点。该系统采用异步串口通信UART接口2传输数据[4],实现语音提示、语音播报总数量的功能。

3.5 拓展板单元

Ramps1.4 连接强大的Arduino MEGA平台,并拥有充足的扩展空间。除了步进电机驱动器接口外,Ramps 1.4提供了大量其他应用电路的扩展接口,是一款更换零件方便,拥有强大的升级能力和扩展模块化设计的Arduino扩展板。除五路步进电机的脉冲宽度调制(PWM)信号接口外,自定义LCD1602屏、颜色传感器、mini voice M3语音播放模块的数字I/O接口,将所有接口集中在Ramps1.4拓展板上实现了装置一体化、自动化。

3.6 步进电机驱动单元

A4988是一款带转换器和过流保护的DMOS微步驱动器,该产品可在全、半、1/4、1/8及1/16步进模式时操作双极步进电动机,输出驱动性能可达35 V及2 A,A4988包括一个固定关断时间电流稳压器,该稳压器可在慢或混合衰减模式下工作。系统所用步进电机驱动如图4所示。

图4 A4988

4 软件部分

系统利用Arduino IDE开发环境编写控制程序。该开发环境基于C语言,主要的参数功能都已经函数化,直接调用函数,方便实现各模块的功能[5]。该程序采用模块化编程,程序由系统主程序、初始化子程序、PWM步进电机调速子程序、LCD1602液晶显示子程序、语音提示子程序和颜色传感器识别子程序组成。

主系统程序流程图如图5所示。

图5 主程序流程图

5 结论

本文提出了一种可对纸币进行整理和分类的实现方法。通过动板往复运动,上拨针拨倒纸币,下拨针推齐纸币实现纸币的整理,通过颜色传感器测得纸币RGB值,通过8G-4R-4B二值化处理数据,并根据二值化数据特征进行纸币分类。该纸币整理分类装置结构简单,成本低,可减少人力物力的消耗,达到较佳的纸币分类效果,具有良好的应用前景。

[1] 蔡世捷.基于MATLAB的树木图像分割研究[D]. 南京:南京林业大学,2005.

[2] 崔阳,张维华,白云峰.一种基于Arduino的智能家居控制系统[J].电子技术应用,2014,40(4):123-125.

[3] 张菁,杨应平,章金敏,等.基于TCS3200D的颜色再现与分类[J]. 武汉大学学报(工学版),2013,46(2):257-260.

[4] 马光.单片机原理及应用[M].北京:机械工业出版社,2006.

[5] 程晨.Arduino 开发实战指南:AVR 篇[M].北京:机械工业出版社,2012.

Design of paper currency sorting control system based on Arduino

Chen Fangqi,Lin Ziyu,Huang Kaihong,Zhou Yujing,Zhao Jianzhu

(College of Engineering,China Agriculture University,Beijing 100083,China)

A paper currency sorting control system was designed based on Arduino. With the Arduino mega 2560 as the control center and a combination of stepper motor driver, color sensor ,viewing screen, voice broadcast module,the system realized the functions of paper currency collating ,sorting ,display and voice broadcast. Using Arduino integrated development environment to write the program, the system achieved both paper currency collating by imitating the process of manual work of paper currency collating and paper currency sorting by color sensor data collection and algorithm control .And the design proved to be reliable and stable by experiments.

paper currency collating ; Arduino; paper currency sorting; color discrimination

首都高校第八届机械创新设计大赛(201605)

TP274

A

10.19358/j.issn.1674- 7720.2016.21.003

陈芳琪,林子钰,黄凯鸿,等. 基于Arduino的纸币整理分类控制系统设计[J].微型机与应用,2016,35(21):11-13.

2016-07-04)

陈芳琪(1995-),男,本科生,主要研究方向:机械设计制造及其自动化。

林子钰(1994-),女,本科生,主要研究方向:车辆工程。

黄凯鸿(1994-),男,本科生,主要研究方向:机械设计制造及其自动化。

猜你喜欢
子程序纸币整理
消失的纸币
猜纸币
高一零碎知识整理
浅谈子程序在数控车编程中的应用
Value
子程序在数控车加工槽中的应用探索
西门子840D系统JOG模式下PLC调用并执行NC程序
简化编程与子程序嵌套的应用
整理“房间”
整理房间