河海大学本科生毕业设计 自动售货机的自动化控制
在梯形图程序图4中,系统初始化时,通过运行初期闭合继电器R9013在第一次扫描时将数值传递给上位机。给WR1-WR11及SV0-SV4赋初值,赋值功能通过高级指令FO实现。 (2).投币过程
在投币的过程中,每投下一枚硬币,投入显示将增加相应的币值,余额也增加同样币制。先建立变量表,在编写程序。变量表如表4所示。对应的梯形图程序如图5所示。
表4 投币过程变量表
在图中,当按下投入1角时,相当于让R200接通,之所以用一个微分指令,就是
图5 投币过程梯形图
26
河海大学本科生毕业设计 自动售货机的自动化控制
要只在接通时检测一次,不能永远加下去。投入1角要投入显示、余额显示都相应增加相同数值,加法是由16位加法指令E20来实现的。投入1角、5角、1元,原理同上。 (3)价格比较过程
价格的比较要贯穿实验过程的始终,只要余额大于某种商品价格时,就需要输出一个信号,提示可以购买。这里只要选择灯来代表此信号。所建立的变量表如表5所示。
表 5价格比较过程变量表
根据变量表和控制要求编写的程序如图6所示。
在梯形图6中,为了实现数据的实时比较,用了一个特殊内部继电器R9010,在程序执行过程中,R9010始终保持闭合,F60是16位数据比较指令,用它来比较余额和商品的价格,R900A是大于价格,R900B是等于标志。当余额大于等于某种商品价格时,程序使相应的指示灯闪烁表示可以购买该种商品。
27
河海大学本科生毕业设计 自动售货机的自动化控制
R9010
F60 CMP , WR3 , WR4 R900A Y0 R900B R9010 F60 CMP , WR3 , WR5 R900A Y1 R900B
R9010
F60 CMP , WR3 , WR6 R900A Y2
R900B R9010 F60 CMP , WR3 , WR7 R900A Y3 R900B
R9010
F60 CMP , WR3 , WR8 R900A Y4 R900B R9010 F60 CMP , WR3 , WR9 R900A Y5
R900B
. . . . . .
图6 价格比较过程梯形图
28
河海大学本科生毕业设计 自动售货机的自动化控制
(4)选择商品过程
当投入的币值可以购买某种商品时,按下相应的“选择”按纽,即可在对应的取
物口流出该种饮料,同时消费显示栏中显示出已经消费掉的金额,余额也将扣除已消费的币值,接着余额继续与价格相比较,判断是否能继续购买。建立的变量表如表6所示。对应的梯形图程序如图7所示。
表6 选择商品过程变量表
在梯形图9中,一是要使商品出现在出货框中,二是要实现内部货币的运算。以
第一步为例,按下选择01商品键,相当于给R205加一个信号(只接受一次脉冲,所以用DF微分指令),当YO接通(01商品灯亮)时,则系统显示可以购买01商品。由于取01商品R230是常闭触点,故Y8输出,代表在出货框中出现01商品,购买成功。当按下取01商品按钮时,R230断开,不能输出Y8,代表01商品被取走。内部币值的
29
河海大学本科生毕业设计 自动售货机的自动化控制
计算和是否取走商品无关,只要按下选择按钮,并且可以购买此商品就要从余额中扣除相应的金额,显示消费的币值。加法由F20指令实现,减法由F25实现。
R205 Y0 R230 Y8 DF
Y8 R205 Y0 DF 1 1 F25- , WR 4 , WR 3 F20+ , WR 4 , WR 2 R206 Y1 R231 Y9 DF Y9
R206 Y1 DF 1 1 F25- , WR 5 , WR 3 F20+ , WR 5 , WR 2
R207 Y2 R232 YA DF YA R207 Y2 DF 1 1 F25- , WR 6 , WR 3 F20+ , WR 6 , WR 2 R208 Y3 R233 YB DF YB 30