1、 淮南师范学院计算机与信息工程系 电子课程设计 1、设计的任务与要求21.1 设计任务21.2 设计要求21.3 PLC可编程控制器简介31、PLC的基本概念32、PLC的基本结构33、PLC的工作原理44、PLC目前的主要品牌42、总体设计和系统框图52.1 控制程序流程图设计52.2 控制程序时序图设计63、设计方案63.1 控制程序设计思路63.2 PLC与上位监控软件通讯73.3 上位监控系统组态设计81、仿真系统组成82、仿真实验的售货分析83、设计任务的确定94、程序设计部分103.4 系统变量定义及分配表124、系统仿真和调试155、设计结果分析166、设计总结和体会177、参考
2、文献17关键词:自动售货机 PCL可编程控制器 1、设计的任务与要求1.1 设计任务设计一台完整的销售汽水和咖啡的自动售货机,具有硬币识别、币值累加,自动售货、自动找钱功能,此售货机可接受的硬币为1元、5元和10元。有三个钱币输入按钮,0.01代表1元,0.02代表5元,0.03代表10元,当投入的硬币总值超过12元时,汽水指示灯1.00亮,当投入的硬币超过15元时,花茶指示灯1.01亮,咖啡指示灯1.02亮,如果要汽水则按汽水按钮0.05,这时汽水输出指示灯1.03亮,输出汽水,然后汽水指示灯闪烁,3 s后停止。如果要花茶则按花茶按钮0.06,这时花茶输出指示灯1.04亮,输出花茶,然后花茶
3、指示灯闪烁,3 s后停止。如果要咖啡,则按咖啡按钮0.07,这时咖啡输出指示灯1.05亮,输出咖啡,然后咖啡指示灯闪烁,3s 后也自动停止,当要完汽水、花茶或咖啡时,如有多余的钱,则找钱指示灯1.06亮,如果多余钱超过10元则找钱口1.07自动退出余额,3s 后停止,如果少于十元则找钱口1.08自动退出余额,如果当顾客投入一定的硬币后什么都不想要时,则可考虑复位按钮0.08,则投入的钱会原数从出钱口退出。1.2 设计要求随着科技的发展和社会的进步, 自动化商业机械有了越来越广泛的应用, 自动售货机作为自动化商业机械的代表被广泛用于公共场所。人们通过自动售货机可以买到食品、香烟、饮料、报纸、票、
4、卡甚至鲜花和小宠物等物品。自动售货机实现了商品需求化、性能多样化的发展, 又由原来只能出售有限商品品种, 转变为继百货公司、超级市场、便民店之后,以消费者与售货机“一对一”自动售货的无店铺销售业态。自动售货, 给人们的生活带来了极大的方便。自动售货机的新奇、文明、高档、灵活方便等深受广大市民青睐。售货机的最基本功能就是对投入的货币进行运算,并根据货币数值判断是否能购买某种商品,并做出相应的反映。因此,售货机应能够辨识机内包含的商品:售货机应该能够显示已投入的币值,以及再投入货币累计显示;同时提示可以购买的商品(或商品的编号)。当按下选择商品的按钮时,售货机进行减法运算,从投入的货币总值中减去该
5、商品的价格,同时起动相应的电机,提取该商品到出货口,此时售货机继续等待外部命令,如继续交易,则同上,如果此时不再购买,则按下退币按钮,售货机进行退币操作,退回相应的货币,并在程序中清零,完成此次交易。1.3 PLC可编程控制器简介1、PLC的基本概念可编程控制器(Programmable Controller)是计算机家族中的一员,是为工业控制应用而设计制造的。早期的可编程控制器称作可编程逻辑控制器(Programmable Logic Controller),简称PLC,它主要用来代替继电器实现逻辑控制。随着技术的发展,这种装置的功能已经大大超过了逻辑控制的范围,因此,今天这种装置称作可编程
6、控制器,简称PC。但是为了避免与个人计算机(Personal Computer)的简称混淆,所以将可编程控制器简称PLC。 2、PLC的基本结构PLC实质是一种专用于工业控制的计算机,其硬件结构基本上与微型计算机相同,如图所示: a. 中央处理单元(CPU) 中央处理单元(CPU)是PLC的控制中枢。它按照PLC系统程序赋予的功能接收并存储从编程器键入的用户程序和数据;检查电源、存储器、I/O以及警戒定时器的状态,并能诊断用户程序中的语法错误。当PLC投入运行时,首先它以扫描的方式接收现场各输入装置的状态和数据,并分别存入I/O映象区,然后从用户程序存储器中逐条读取用户程序,经过命令解释后按指
7、令的规定执行逻辑或算数运算的结果送入I/O映象区或数据寄存器内。等所有的用户程序执行完毕之后,最后将I/O映象区的各输出状态或输出寄存器内的数据传送到相应的输出装置,如此循环运行,直到停止运行。 为了进一步提高PLC的可靠性,近年来对大型PLC还采用双CPU构成冗余系统,或采用三CPU的表决式系统。这样,即使某个CPU出现故障,整个系统仍能正常运行。 b、存储器 存放系统软件的存储器称为系统程序存储器。 存放应用软件的存储器称为用户程序存储器。 c、电源 PLC的电源在整个系统中起着十分重要的作用。如果没有一个良好的、可靠的电源系统是无法正常工作的,因此PLC的制造商对电源的设计和制造也十分重
8、视。一般交流电压波动在+10%(+15%)范围内,可以不采取其它措施而将PLC直接连接到交流电网上去 3、PLC的工作原理一. 扫描技术 当PLC投入运行后,其工作过程一般分为三个阶段,即输入采样、用户程序执行和输出刷新三个阶段。完成上述三个阶段称作一个扫描周期。在整个运行期间,PLC的CPU以一定的扫描速度重复执行上述三个阶段。 (一) 输入采样阶段 在输入采样阶段,PLC以扫描方式依次地读入所有输入状态和数据,并将它们存入I/O映象区中的相应得单元内。输入采样结束后,转入用户程序执行和输出刷新阶段。在这两个阶段中,即使输入状态和数据发生变化,I/O映象区中的相应单元的状态和数据也不会改变。
9、因此,如果输入是脉冲信号,则该脉冲信号的宽度必须大于一个扫描周期,才能保证在任何情况下,该输入均能被读入。 (二) 用户程序执行阶段 在用户程序执行阶段,PLC总是按由上而下的顺序依次地扫描用户程序(梯形图)。在扫描每一条梯形图时,又总是先扫描梯形图左边的由各触点构成的控制线路,并按先左后右、先上后下的顺序对由触点构成的控制线路进行逻辑运算,然后根据逻辑运算的结果,刷新该逻辑线圈在系统RAM存储区中对应位的状态;或者刷新该输出线圈在I/O映象区中对应位的状态;或者确定是否要执行该梯形图所规定的特殊功能指令。即,在用户程序执行过程中,只有输入点在I/O映象区内的状态和数据不会发生变化,而其他输出
10、点和软设备在I/O映象区或系统RAM存储区内的状态和数据都有可能发生变化,而且排在上面的梯形图,其程序执行结果会对排在下面的凡是用到这些线圈或数据的梯形图起作用;相反,排在下面的梯形图,其被刷新的逻辑线圈的状态或数据只能到下一个扫描周期才能对排在其上面的程序起作用。 (三) 输出刷新阶段 当扫描用户程序结束后,PLC就进入输出刷新阶段。在此期间,CPU按照I/O映象区内对应的状态和数据刷新所有的输出锁存电路,再经输出电路驱动相应的外设。这时,才是PLC的真正输出。 4、PLC目前的主要品牌松下,西门子,三菱,欧姆龙,台达,富士,施耐德,AB 等。2、总体设计和系统框图2.1 控制程序流程图设计
11、启动1元DM0+15元DM0+510元DM0+10DM20咖啡灯亮DM15花茶灯亮DM12汽水灯亮咖啡输出DM-20花茶输出DM-15汽水输出DM-10退币按钮DM1010元出口DM101元出口图2-1 控制程序流程图2.2 控制程序时序图设计图2-2 时序图3、设计方案 3.1 控制程序设计思路自动售货机是台机电一体化的自动化装置,在接受到货币已输入的前提下,靠触摸控制按钮输入信号使控制器启动相关位置的机械装置完成规定动作,将货物输出。用自动控制系统替代现有的人工销售方式,节省人力,减少销售开支,扩大销售覆盖面,当投入的硬币总值超过12元时,汽水指示灯亮。当投入的硬币总值超过15元时,汽水和
12、花茶的指示灯都亮。当投入的硬币总值超过20元时,汽水、花茶和咖啡的指示灯都亮。当汽水指示灯亮时,按汽水按钮,则汽水从售货口自动售出,汽水指示灯闪烁(闪烁频率为1s ON,1s OFF),3秒后自动停止。当花茶指示灯亮时,按咖啡按钮,则花茶从售货口自动售出,花茶指示灯闪烁(闪烁频率为1sON,1sOFF),3秒后自动停止。当咖啡指示灯亮时,按咖啡按钮,则咖啡从售货口自动售出,咖啡指示灯闪烁(闪烁频率为1sON,1sOFF),3秒后自动停止。当按下汽水按钮、花茶按钮或咖啡按钮后,如果投入的硬币总值超过所需的钱数时,找钱指示灯亮,自动售货机自动退出多余的钱,3s后自动停止。动作停止后按退币钮,可以退
13、回余额,退回金额如果大于10元,则先退10元再退1元,如果小于10元则直接退1元的。初始状态投币状态购买状态退币状态投入硬币按下选择按钮是否剩余Y按下退币按钮N图3-1自动售货机工作流程图3.2 PLC与上位监控软件通讯本次课程设计涉及到欧姆龙PLC与力控组态软件的通讯。目前欧姆龙的小型PLC组要是CPM1A和CPM2A系列;PLC与组态软件通过串口RS232通信,那么就要了解PLC的通信协议是什么方式的。第一步:通过PLC的编程软件来了解通信协议,在欧姆龙PLC的“PLC设定”对话框中“外围端口”标签中设置“通信协议”为“标准”,模式是“Host Link”,单元号为“0”,在网络设置对话框
14、的“驱动器”标签中,设置“端口名称”为“COM3”,“波特率”为“9600”,“数据位”为“7”,“校验”为“偶校验”,“停止位”为“2”,在“设备类型设置”的“通用”标签中,设置“CPU类型”为“CPU40”在“变更PLC”对话框中,“设备类型”为“CPM1(CPM1A)”,“网络类型”为“SYSMAC WAY”。第二步:与力控的通讯:在上位机力控组态软件的“设备配置第一步”的对话框中,设置“设备地址”为“0”,“通讯方式”为“串口(RS232/422/485)”,在“设备配置第二步”的对话框中,设置“串口”为“COM8”,点击“设置”按钮设置通信参数“波特率”为“9600”,“数据位”为“
15、7”,“校验”为“偶校验”,“停止位”为“2”。3.3 上位监控系统组态设计1、仿真系统组成本仿真系统由上位机和下位机组成。上、下位机通过串行口进行通信交换数据。上位机内装北京组态软件FORCECONTROL2.6和CX-P编程软件。组态软件FORCECONTROL用以制作仿真画面、编写仿真程序并与下位机进行通信,是专用的自动化软件,集数据采集监控功能于一体。CX_P是可编程控制器与PC机联机的编程支持工具,用户利用它可以实现程序输入、程序注释、程序修改、程序编译、状态监控和测试以及设计系统寄存器和PLC 各种参数等。CX_P是WINDOWS操作系统下使用的软件,有多种编程方式,其中主要是梯形
16、图和助记符编程。需要注意的一点是在进行程序的上传下传时一定要把PLC的COM口连接方式设置成“计算机链接”否则PLC将自锁,不再与外界通信,只有使用手持编程器才能再次开启。2、仿真实验的售货分析由于售货机的全部功能是在上位机上模拟的,所以售货机的部分硬件是由计算机软件来模拟代替的。如钱币识别系统,可以用按某个“仿真对象”输出一个脉冲直接给PLC发布命令,而传动系统也是由计算机直接模拟的,这些并不会影响实际程序的操作,完全能模拟实际自动售货机的运行。(1)实验状态假设a、由于是在计算机上模拟运行的,实验中有些区别于实际情况的假设:b、自动售货机只售出三种商品;c、自动售货机可以识别10元、5元、
17、1元;d、自动售货机可以退币10元、5元、1元;e、自动售货机有液晶显示功能;f、试验中售货机忽略了各种故障以及缺货等因素;(2)一次交易过程分析为了方便分析,我们以一次交易过程为例a、初始状态:有电子标签显示各商品价格,显示屏显示界面,此时不能购买任何商品;b、投币状态:按下投币按钮,显示投币框,按下所投币值,显示屏显示投入、消费、余额数值,当所投币值超过某商品价格时,相应商品选择按钮发生变化,提示可以购买。c、购买状态:按下可以购买的选择按钮,所选的 出现在出货框中,同时显示屏上的金额数字根据消费情况相应变化。取走商品则出货框消失。d、退币状态:按下退币按钮显示退币框,同时显示相应的退币值
18、和数量,按下确认按钮则恢复初始状态。到此为止,自动售货机的一个完整工作结束。这也是本仿真系统的设计思想。3、设计任务的确定在清楚自动售货机运行工作过程的基础上,制定出设计方案,确定任务的目标,以设计出合理的仿真系统。首先,应该做上位机和下位机的任务分工:上位机主要用来完成仿真界面的制作工作,而下位机则主要完成PLC 程序的编写。其次,要分别对上位机和下位机进行资料的查找和收集。例如在进行仿真界面的设计时,可以去观察一下真正售货机的外观,必要时可以借助于一些宣传图片来设计自动售货机的外形,在进行PLC程序的编写时,需要先分配PLC的I/O点,确定上下位机的接口。然后对上下位机进行设计工作。最后进
19、行上位机和下位机设计结果的配合工作,经调试后,完成整个系统的设计。4、程序设计部分仿真程序的编写利用利用组态软件FORCECONTROL2.6,下位机程序的编制则利用PLC专用编程软件欧姆龙完成的。在详细设计过程中,没有将上位机的设计和下位机的设计整体分开来写,而是相互交替,尽量清楚地叙述。PLC程序已经介绍,现在我们看一下仿真界面设计。(1)销售机背景的设计售货机背景是一个不动的画面,可以利用图片处理的方法按照制定样式的功能画出售货机的整体。先分几部分进行仿真设计,如图3-1所示。图3-1(2)显示屏部分的设计显示屏部分的设计利用了组态软件设计两个显示画面,一个是未交易时初始状态的欢迎界面如
20、图3-2,在交易过程中的币值显示画面如图3-3所示 ,其中图3-1中的欢迎字符是可以闪烁变化的,aaaa字符可以显示系统时间,图3-2中的8888用来显示币值,它们均是可以定义的变量。图3-2 图3-3(3)标签设计电子标签用来显示程序中传上来的价格,所以其中要有可以定义的字符,所以标签设计为,其中“J.03显示03商品价格的变量。(4)按钮设计“选择”按钮的设计要反映出可以购买和不可以购买的差异,所以其中也要有可以变化的字符,设计如右图,其中字符“选择”在满足条件下可以闪烁变色,退币按钮设计成样式,按钮均可以动作。(5)投退币提示框设计投退币提示框要有可已投入的硬币,确认按钮以及框架,其中硬
21、币、确认按钮和字符“a”均是可以定义的变量图3-4 投币提示框 图3-5退币提示框(6)出货框的设计出货框中要有01-03商品的示意图以及框架,其中商品在满足条件后可以出现,鼠标点击后可以消失,因此也是可定义的变量效果如图3-6所示图3-6 出货框3.4 系统变量定义及分配表表3-1 输入输出分配表输入输出设备输入点设备输出点复位按钮SB10.00汽水指示灯LED1.001元SB20.01花茶指示灯LED1.015元SB30.02咖啡指示灯LED1.0210元SB40.03汽水输出LED1.03汽水按钮SB50.05花茶输出LED1.04咖啡按钮SB60.06咖啡输出LED1.05花茶按钮SB
22、70.07找钱指示灯LED1.06退币按钮SB80.08十元出钱口LED1.07一元出钱口LED1.08硬件连接如图3-7图3-7 硬件连接图PCL梯形图如下图3-8PCL梯形图4、系统仿真和调试一、硬件调试:1、 断电时检查电源是否接好,地线是否接好,各输入/输出点是否接好接牢;2、接通PLC电源,确认“PWR”指示灯点亮,传入程序,检查“RUN”指示灯点亮。二、软件调试:1、在梯形图编辑器中配合使用编译器查找、修改程序中的语法错误;2、 将编辑好的程序传入PLC运行,使用编辑器联机调试操作,检查各点工作状态,并配合观察PLC各点输入/输出指示LED或输入/输出设备工作是否符合程序功能要求。
23、配合着上位机软件动画效果来观察硬件的连接。三、解决的问题:通过软件的调试发现了梯形图中设计时的一些错误,比如7段数码管的清零问题,开始设计时用的是RESET指令,后来通过调试得知此指令只能置位位,考虑到实质是把通道清零,用MOVE指令即可。对其他一些平时实验用不到的指令及程序设计,经过梯形图的设计及调试加深了理解,比如七段译码指令的使用。实现的效果:图4-1 运行结果图5、设计结果分析实验证明: 该系统程序设计较全面地演示自动售货机的使用功能; 通过修改PLC控制程序, 可在自动售货机上实现多种控制方式、销售方式、销售种类。自动售货机可以根据投入的钱币自动付货。它根据投入钱币的多少,提示你可以
24、买什么东西,再按一下相应的按钮,购买的饮料就可以从出口处提出,出口处提示用户将物品拿走,不买东西了就按下退币按钮,将多余的钱币取回,经过6秒后钱币没有取回则自动启动报警,避免顾客有不必要的损失。在交易的过程中,币值界面会显示投入钱币的金额、消费钱币的金额、余额。6、设计总结和体会现在,自动售货机产业正在走向信息化并进一步实现合理化。例如实行联机方式,通过电话线路将自动售货机内的库存信息及时地传送各营业点的电脑中,从而确保了商品的发送、补充以及商品选定的顺利进行。并且,为防止地球暖化,自动售货机的开发致力于能源的节省,节能型清凉饮料自动售货机成为该行业的主流。在夏季电力消费高峰时,这种机型的自动
25、售货机即使在关掉冷却器的状况下也能保持低温,与以往的自动售货机相比,它能够节约1015%的电力。进入21世纪时,自动售货机也将进一步向节省资源和能源以及高功能化的方向发展。 通过这次课程设计,我体会到了很多,也让我懂得了不少知识,让我知道在学习方面还是有欠缺的,这次课程设计包括许多方面的知识,主要是可编程控制器(PLC)是以微处理器为核心的工业控制装置。它将传统的继电器控制系统与计算机技术结合在一起,具有高的可靠性,灵活通用,易于编程,使用方便等特点,因此在近年来在工业控制、机电一体化、改造传统产业等方面得到普遍应用。7、参考文献1廖常初编.PLC基础及应用M.北京:机械工业出版社.2贾德胜编.PLC应用开发实用子程序M.北京:人民邮电出版社.3钟肇新,彭侃编.可编程序控制器原理及应用M.广州:华南理工大学出版社.4朱绍祥编.可编程序控制器(PC)原理与应用M.上海:上海交大出版社.5赵跃华.可编程序控制器原理及应用M.成都:电子科技大学出版社.1998.6 赵红梅,张军.自动售货机PLC控制系统的设计J.科技资讯.2009.(3).37-397银叶兰.自动售货机的设计与实现J.嵌入式系统应用.2008.(8).53-55 .第 17 页