包西平
(徐州工业职业技术学院机电工程技术学院,江苏徐州 221140)
基于PLC的自动售货机控制系统设计
包西平
(徐州工业职业技术学院机电工程技术学院,江苏徐州 221140)
自动售货机不受任何场地限制,方便快捷,可以每天24小时售货,因此在汽车总站、商厦、医院、小区、学校等地区获得广泛应用。介绍了一种基于PLC的自动售货机控制系统,系统主要设三个投币口,可自动售出三种饮料,通过软件程序控制能够实现根据投币总额和饮料价格实现饮料的自动售出、纸币识别、数据通信、自动找零、投币总额显示、报警、系统复位等基本功能。通过实际自动售货机程序调试及运行测试可知,实现了自动售货的功能,效果良好。
自动售货机;PLC软件控制;数据通信
随着社会文明进步和先进科学技术的发展,被广泛用于汽车总站、商厦、医院、小区、学校等公共场所的全自动售货机械,给人们的出行和生活带来了极大方便。像各种成型包装小商品以及饮料、票、证、卡等均可售出。随着生活节奏的加快和市场经济的繁荣,作为自动服务设施代表的自动售货机必将得到越来越广泛的应用。
本文设计了基于PLC的自动售货机控制系统,介绍了功能及硬件系统的简单构成、各功能模块软件程序设计的实现,重点介绍纸币识别、通信模块等功能的实现。通过实验验证,证实了系统的可行性。
自动售货机的主要工作过程及功能如下[1]。
(1)货币从投币口投入,光电传感器进行货币数据信息采集,获取人民币面值,判别人民币真伪。
(2)然后再将所获信息传递给通信模块,PLC主控系统接受通信模块传递的信息,主控系统显示人民币面值,然后启动面板按键,显示出哪个货道有存货,已售完的货道是哪几个,等待顾客通过按键选择商品。
(3)自动售货机自动把商品送出,然后等待顾客把选好的货取走。
(4)然后售货机显示人民币余额,若余额充足,顾客可选择继续选择新商品或找零;若余额不足或不想再购买其他商品,可延时退币。
(5)系统复位,完成售货。
(6)当选定商品后投入钱币不足或识别出假币,系统会启动报警程序。
系统的简化结构框图如图1所示。
图1 自动售货机硬件系统简图
数据采集模块的功能是通过光电传感器把光信号转变成电信号,然后通过A/D转换传给PLC的CPU;识别模块是将A/D转换器传送过来的数字信号与系统内人民币标准数据做比较,做出相应的判断;通信模块是负责PLC主控系统与识别模块之间的数据通信;PLC主控系统是控制自动售货机各个部分的运行及完成各部分的交互通信。
在钱币通道上、下设有特殊光发光部件和接收部件,当钱币通过时,接收部件将检测到的光信号传给A/D转换器。在系统中设三路发光/接收电路。
为能完成人民币的准确快速识别,对纸币图像进行预处理。图像倾斜常常会影响图像定位和待识别信息的提取。因此需对图像的倾斜进行矫正。二值化处理可把灰度图像信号处理为二值(0,1)数字信号。二值化法有整体阈值法和自适应动态阈值法。纸币图像实际处理是比较复杂的,为了更准确无误的对质量差的纸币图像进行处理,常采用动态阈值法。通常对以下5种人民币:第4版10元和5元及第5版10元、5元和2元的长和宽的尺寸进行信息采集,应用模糊逻辑推理法进行纸币面值的分类。获得纸币面值后,再对其进行纸币正反面和正反向的识别,并对纸币真假进行识别。
现在的自动售货机对主控器的要求越来越高,设计一个实用、简单、稳定的内部通讯总线协议[2],可大大提高自动售货机的运行效率。
可采用欧洲售货机制造者协会(EVMMA)的MDB/ICP总线协议。它可协调主控制器(MMC)与多个外设之间通信。MDB是主从串行总线接口,波特率为9 600。所有外围设备均为主控制器的从机。所有外围设备与主控制器之间的通信方式都一致。在MDB总线上,VMC(自动售货机控制器)通过广播方式向外设发送命令。发送指令后,外设应答VMC的指令,VMC将再通过发送一个字节应答外设传回的数据。
(1)记币系统
当有顾客购买时,每投入一次钱币都得经过感应器进行真假监辨后,再给PLC进行计币的指令。当发现伪币时,感应器不给PLC累计投币值的指令,同时自行退出伪币。而当PLC接收到感应器传来的记币的指令时,PLC自动把接收来的货币对应的数据累加到寄存器D0中。PLC梯形图如图2所示。
图2 记币系统PLC梯形图
(2)价格比较系统
价格的比较要贯穿实验过程的始终,只要余额大于某种商品价格时,就需要输出一个信号,提示可以购买。投币完成后,系统会将D0内钱币数据和可以购买的饮料价格进行比较:当投币<12元,则没有可购买的商品指示灯亮,表示所投钱币不能购买任何东西,此时可以继续投币或退币;只有投币在12元或以上时会见到汽水选择的指示灯长亮,此时可以选择购买汽水或退币;同样,大于15元的就有汽水和花茶的选择显示,20元就出现汽水、花茶和咖啡的选择显示,此时都是可以选择购买或退币。PLC梯形图如图3。
(3)选购商品系统
当投入的币值可以购买某种商品时,即商品下相应的指示灯亮了,按下相应的“选择”按纽即可在出货框中出现该种商品,同时消费显示栏中显示出扣除已经消费掉的金额的余额币值,接着余额继续与价格相比较,判断是否能继续购买。
图3 价格比较系统PLC梯形图
若余额还能符合上面比较过程的条件时,相应商品的指示灯还会亮的,不然灯不亮了。PLC编程梯形图如图4。
图4 商品选购系统PLC梯形图
(4)退币系统
系统可在顾客购买完饮料后退回余币。按下退币按钮后,数据寄数器D0内的币数除以10,商的整数部分就是需要退回1元硬币的个数并储存在D1上,余数就自动的默认在D2上;再把D2的数据除以5,商的整数部分就是需要退回1元的个数,并储存在D3中(这里由所可投的货币限制来看,1元个数就只有两种情况,0或1,故在选PLC时可以只给这里的留一个端口就行了。)选择退币的同时起动2个退币电动机。2个感应器开始记数,当感应器记币的个数等于数据寄存器的退币数时,退币电动机停止运转。PLC编程梯形图如图5。
图5 退币系统PLC梯形图
(5)报警系统
当选定商品后投入钱币不足、识别器识别出假币等情况时,系统会启动报警程序。此时如果按下购买按钮X3会通过传送指令赋予D1的值为1,而通过仿真软件GTDesigner2设置当D1的值为1时,会跳出报警窗口页面并同时显示余额以及提示及时投币。
图6 系统简单报警PLC梯形图
将PLC程序写入后,首先要仔细检查程序,并改正程序中的错误。用户程序要先在实验室模拟调试,不用接PLC实际的负载(如接触器、电磁阀等)。根据功能表图,也可以用开关或按钮来模拟实际的反馈信号。在调试时,应充分考虑各种可能情况的出现,对系统不同的工作方式、功能表图中的每一条支路、各种可能路线,都应逐一检查,不能有丝毫的遗漏。有问题应及时修改梯形图和PLC程序,直到在各种可能的情况下输入量与输出量之间关系完全符合要求为止。
若程序中某些定时器设定值过大,为了缩短调试时间,可以在调试时人为将它们减小,模拟调试结束后再修改为原来的实际设定值。在设计和模拟调试的同时,也可同时设计、制作控制台或控制柜,或者进行其他硬件的安装、接线工作。
模拟调试完成后,就可进行工业现场的调试工作,首先进行联机总调试,在调试过程中可能会显示出系统中的传感器、执行器和硬接线等方面的出现问题,或者PLC外部接线图和梯形图设计中出现问题,对出现的问题及时处理解决。如果调试达不到用户的指标要求,可对相应硬件和软件部分设计作适当的调整,通常只需略微修改程序就可能出现良好效果。现场调试通过后,需再经过一段时间的适应性实验,才可投入到实际运用中。
本系统经现场调试后,整体运行效果良好,达到了令人满意的效果。
本文研究了自动售货机主要功能模块,如:数据采集模块、纸币识别模块、通信模块等。特别指出用模糊逻辑推理方法对图像面值进行识别。对系统各模块进行了PLC程序的设计和调试,结果良好。
[1]叶银兰,自动售货机的设计与实现[J].微计算机信息,2008(8):53-55.
[2]黄贤英,李玉桃.基于Linux的嵌入式实时数据库的设计[J].微计算机信息,2007(1-2):112-114.
[3]孔凡才.自动控制系统[M].北京:机械工业出版社,2003.
[4]余雷声.电气控制与PLC应用[M].北京:机械工业出版社,1998.
Control System Design of Vending Machine Based on PLC
BAO Xi-ping
(xuzhou Industrial and Vocational Technology Institute,Electricity Engineering Institute,Xuzhou 221140,China)
The vending machine is not subject to any site restrictions,convenient and quick.It can vend 24 hours a day,so at the bus station,shopping malls,hospitals,communities,schools and other regions It is obtained to use in a wide range.In this paper,a control system of vending machine based on PLC is introduced,this system mainly has three slots,it can automatically sell three drinks. it can automatically sell according to the total amount of coin and drinks price,it can realize some basic functions,such as judge true and false coin,data communication,automatically change,the display of the total amount of coin,alarm,system reset and so on.Through actual vending machine program debugging and running test,this design can realize the function of vending,the effect is good.
vending machine;PLC software control;data communication
TP391
A
1009-9492(2014)08-0022-03
10.3969/j.issn.1009-9492.2014.08.007
包西平,男,1972年生,山东蒙阴人,硕士研究生,讲师。研究领域:电力电子技术应用及自动化控制,已发表论文10篇。 (编辑:阮 毅)
2014-02-28