1西门子PLC的自动售货机系统设计摘要本论文基于西门子S7-200系列PLC进行自动售货机控制系统的设计,阐述了自动售货机系统设计的基本原理及工作流程,然后以一次交易过程为例,把交易过程分为几个程序块,分别对程序块进行编程。在PLC梯形图的编写时,文中采用的是西门子PLC梯形图专用编译软件STEP7来进行编写,并完成了PLC外部接线图。利用PLC控制的自动售货机提高了系统的稳定性,保证自动售货机能够长期稳定运行。关键词:PLC;自动售货机;控制系统TheSystemDesignforAutomaticVendingMachineBasedonPLCThedesignofthispaperisbasedonSiemensS7-200seriesautomaticvendingmachinePLCcontrolsystem,explainsthevendingsystemdesignprincipleandworkflow,andthentoacourseofdealing,forexample,thetransactionprocessisdividedintoseveralblocksonblocks,respectively.InthepreparationofthePLCladderdiagram,thetextisaSiemensPLCladderdiagramprivatecompilesoftwaretowritetheSTEP7,andcompletedaPLCexternalwiringdiagram.UseofPLCcontrolvendingmachineimprovesthestabilityofthesystem,ensurethelong-termstabilityofthevendingmachinetorun.Keywords:PLC;vendingsystem;2第1章引言1.1自动售货机的发展自动售货机是一种全新的商业零售形式,20世纪70年代自日本和欧美发展起来。它的出现是劳动密集型的产业构造向技术密集型社会转变的产物。消费模式和销售环境的变化,要求新的流通渠道,相对于超市、百货购物中心等流通渠道而言,场地的局限性以及购物的便利性等这些因素的制约,无人自动售货机作为一种必须的机器便应运而生了。自动售货机的售货领域非常广泛,是发达国家商品零售的一种主要方式。近几年,自动售货机逐渐被越来越多的消费者所接受。采用可编程控制器实现自动售货机的系统设计,不仅编程方便,而且增强了系统的抗干扰能力。(把摘要和这里对应起来)1.2自动售货机控制系统设计的主要内容1.此自动售货机可以投入五角、一元的硬币;2.如果顾客投入硬币在限定的时间内(2分钟)不按任何按键,自动售货机将退还所投硬币;3.当投入硬币的总值等于或超过物品价值时,对应的物品指示灯亮绿灯;4.当物品对应的指示灯亮绿灯时,按下相应的按键,相应的物品排出,同时指示灯绿灯闪烁;5.如果顾客投入硬币总值超过所选物品的价值时,自动售货机会自动将余款退还顾客;6.当顾客成功购买完一件物品后20秒无操作,自动售货机会自动将余款退还顾客;7.如果顾客投入硬币后又不想买物品,按下退款按键,自动售货机会自动将余款退还顾客;8.找零时顾客可选择退一元的还是五角的;3第2章可编程控制器PLC2.1可编程控制器PLC的发展前景2.1.1可编程控制器PLCPLC是一种专门为在工业环境下应用而设计的数字运算操作的电子装置,它采用可以编制程序的存储器,用来在其内部存储执行逻辑运算、顺序运算、计时、计数和算术运算等操作的指令,并能通过数字式或模拟式的输入和输出,控制各种类型的机械或生产过程。PLC具有体积小、结构简单、操作方便、可靠性好等特点,2.1.2PLC的发展前景PLC总的发展趋势是向高集成度、小体积、大容量、高速度、易使用、高性能方向发展。具体表现在以下几个方面。(1)向小型化、专用化、低成本方向发展(2)向大容量、高速度方向发展(3)智能型I/O模块的发展(4)基于PC的编程软件取代编程器(5)PLC编程语言的标准化(6)PLC通信的易用化(7)组态软件与PLC的软件化(8)PLC与现场总线相结合(9)开发新型特殊功能模块(10)CPU的处理速度进一步加快2.1.3PLC的工作原理PLC的工作原理与计算机的工作原理基本是一致的,可以简单地表述为在系统程序的管理下,通过运行应用程序完成用户任务。PLC通电后,首先对硬件和软件作一些初始化操作,初始化反复不停地分阶段处理各种不同的任务(见图2-1)。42.1.4PLC的循环扫描工作对每个程序,CPU从第一条指令开始执行,按指令步序号做周期性的程序循环扫描,如果无跳转指令,则从则从第一条指令开始逐条顺序执行用户程序,直至遇到结束符后又返回第一条指令,如此周而复始不断循环,每一个循环称为一个扫描周期。PLC的扫描全过程如图2-2所示。(1)输入刷新阶段在输入刷新阶段,CPU扫描全部输入端口,读取其状态并写入输入状态寄存器。完成后关闭输入端口,转入程序执行阶段。(2)程序执行阶段在程序执行阶段,根据用户输入的控制程序,从第一条开始逐条执行,并将相应的逻辑运算结果存入对应的内部辅助寄存器和输出状态寄存器。(3)输出刷新阶段当所有指令执行完毕后,将输出状态寄存器中的内容,依次送到输出锁存电路,并通过一定输出方式输出,驱动外部相应执行元件工作,这才形成PLC的实际输出。读取输入执行用户程序处理通信要求自诊断检查改写输出RUN状态读取输入处理通信要求自诊断检查改写输出STOP状态图2-1各阶段处理任务5图2-2PLC的扫描全过程2.1.5PLC的硬件组成PLC的硬件主要由中央处理器(CPU)、存储器、输入单元、输出单元、通信接口、扩展接口、电源等几部分组成。其中,CPU是PLC的核心;输入单元/输出单元是CPU与现场输入/输出设备之间的接口电路;通信接口用于连接编程器、上位计算机等外部设备,其硬件构成图如图2-3。图2-3PLC硬件结构图2.1.6PLC的编程语言PLC为用户提供了完善的编程语言来满足编制用户程序要求。它提供的编程6语言通常有以下5种:梯形图(LAD)、语句表(STL)、顺序功能图(SFC)、功能块图(FBD)和结构文本(ST)。2.1.7PLC的特点(1)抗干扰能力强,可靠性好(2)控制系统结构简单,通用性强(3)编程方便,易于使用(4)功能完善(6)体积小,维护操作方便(7)易于实现网络化(8)可实现三电一体化2.2PLC的选型原则及选型方法2.2.1PLC的选型原则当某一个控制任务决定由PLC来完成后,选择PLC就成为最重要的事情。一方面要选择多大容量的PLC,另一方面是选择什么公司的PLC及外设。首先要对控制任务进行详细的分析,把所有的I/O点找出来,包括开关量I/O和模拟量I/O以及输出是用继电器还是晶体管或是可控硅型。控制系统输出点的类型非常关键,如果他们之中既有交流220V的接触器、电磁阀,又有24V的指示灯,则最后选用的PLC的输出点数有可能大于实际电数。因为PLC的输出点一般是几个一组共用一个公共端,这一组输出只能有一种电源的种类和等级。所以一旦它们是交流220V的负载负载使用。则直流24V的负载只能使用其他的输出端了。这样有可能造成输出点浪费,增加成本。所以要尽可能选择相同等级和种类的负载,比如使用交流220V的指示灯等。一般情况下继电器输出的PLC使用最多,但对于要求高速输出的情况,就要使用无触点的晶体管输出的PLC了。对第二个问题,则有以下几个方面要考虑:(1)功能方面所有PLC一般都具有常规的功能,但对某些特殊要求,就要知道所选用的PLC是否有能力控制任务。如对PLC与PLC、PLC与智能仪表及上位机之间有灵活方便的通信要求;或对PLC的计算速度、用户程序容量等有特殊要求;或对PLC的位置控制有特殊要求等。这就要求用户对市场上流行的PLC品种有一个详细的了解,以便做出正确的选择。(2)价格方面不同厂家的PLC产品价格相差很大,有些功能类似、质量相当、7I/O点数相当的PLC的价格能相差40%以上。8第3章自动售货机的系统设计3.1自动售货机的控制要求3.1.1自动售货机的控制要求自动售货机的基本功能就是对投入的货币进行运算,并根据货币数值判断是否能够购买某种商品,并作出相应的反应。例如:售货机中有2种商品,A商品价格为0.5元,B商品为1元。现投入1个1元硬币,当投入的货币超过A商品的价格时,A商品的选择按钮处应有变化,提示可以购买,B商品也提示。当按下选择A商品的价格时,售货机进行减法运算,从投入的货币总值中减去A商品的价格同时启动相应的电机,提取A号商品到出货口。此时售货机继续进行等待外部命令,如继续交易,则同上,如果此时不再购买而按下退币按钮,售货机则要进行退币操作,退回相应的货币,并在程序中清零,完成此次交易。由此看来,售货机一次交易要涉及加法运算、减法运算以及在退币时的除法运算,这是它的内部功能。还要有货币识别系统和货币的传动来实现完整的售货、退币功能。3.1.2自动售货机的相关说明当投入五角时加5投入1元是加10,SUB_DI是双整数减法当成功购买物品时就减去物品对应的数;T37—T56表示通电延时定时器,按下物品按钮时T37—T42延时8秒,无操作时T43启动计时20秒,T44与T43配合组成投币2分钟无操作找零,T46—T56两两配合形成闪烁电路。9图3-1自动售货机模拟操作面板本设计统一采用按钮开关模拟物品选择,按钮内有绿灯和红灯分别表示可购买物品和物品销售完;指示灯模拟物品输出及找零如图3-1示。3.1.3定时器定时器是PLC中重要的编程元件,是累计时间增量的内部器件。定时器的工作过程与继电器控制系统的时间继电器基本相同,但它没有瞬动触点,失电时,常闭触点闭合,常开触点打开;定时器得电时,常闭触点打开,常开触点闭合。定时器的当前值、设定值均为10位有符号整数(INT),允许的最大值为32767。定时器指令表见表3-1。表3-1定时器指令语句描述TONTxxx,PT接通延时定时器TOFTxxx,PT断开延时定时器TONRTxxx,PT保持型接通延时定时器BITIMOUT起动间隔定时器CITIMIN,OUT计算间隔定时器103.1.4数学运算指令在梯形图中,整数、双整数与浮点数的加、减、乘、除指令(见表3-2)分别执行下列运算:IN1+IN2=OUT,IN1—IN2=OUT,IN1*IN2=OUT,IN1/IN2=OUT。表3-2加减乘除指令梯形图语句表描述梯形图语句表描述ADD_I+IINT1,OUT整数加法DIV_DI/DINT1,OUT双整数除法SUB_I-IINT1,OUT整数减法ADD_R+RINT1,OUT实数加法MUL_I*IINT1,OUT整数乘法SUB_R-RINT1,OUT实数减法DIV_I/IINT1,OUT整数除法MUL_R*RINT1,OUT实数乘法ADD_DI+DINT1,OUT双整数加法DIV_R/RINT1,OUT实数除法SUB_DI-DINT1,OUT双整数减法MULMULINT1,OUT整数乘法产生双整数MUL_DI*DINT1,OUT双整数乘法DIVDIVINT1,OUT带余数的整数除法在语句表中,整数、双整数与浮点数的加、减、乘、除指令分别执行下列运算:IN1+OUT=OUT,OUT—IN1=OUT,IN1*OUT=OUT,OUT/IN2=OUT。3.2自动售货机I/O点的分配输入/输出单元通常也称I/O单元或I/O模块,是PLC与工业生产现场之间的连接部件。PLC通过输入接口可以检测被控对象的各种数据,以这些数据作为PLC对被控制对象进行控制的依据;同时PLC又通过输出接口将处理结果送给被控制对象,以实现控制目的。I/O点分配表如表3-3示。11表3-3I/O点的分配表序号定义点符号功能1I0.0SB1找零按钮2I0.1SB2食品五角按钮3I0.2SB3食品一元按钮4I0.3SB4饮料一元按钮5I0.4SB5饮料二元按钮6I