自动售货机程序都不会编,还学什么PLC?
自动售货机是商业自动化的常用设备,它不受时间、地点的限制,能节省人力、方便交易,更是一种全新的商业零售形式,又被称为24小时营业的微型超市。各位工程师会不会很好奇,这机器如果用于PLC该如何设计程序呢?下面咱们一起来看看吧:
一、控制要求
一台饮料自动售货机用于出售矿泉水、可乐和果汁3种饮料,分别售价2元、3元、5元。顾客可以投入1元、5元和10元三种纸币,投币后主页面可以显示对应各金额纸币投入的张数,还能显示累计投入金额。
程序需要完成以下功能:初始化、投币检测、商品选择、找零、退币

二、运算分析
1、投币检测
例如5元纸币的模拟投币。我们需要在按钮接通一次的情况下,使用加法(ADD)统计5元纸币的数量,然后使用乘法(MUL)计算5元纸币投入的总额,其他1元/10元纸币也是如此处理,最后将三个纸币的总额依旧使用加法相加即可得出投入的总额:

(投币运算)
2、商品选择
我们可以直接使用加一指令(INC)和减一指令(DEC),当按下一次商品对应按钮执行一次+1或者-1来进行对数量的调整。和投币一样,我们最后需要使用乘法和加法来完成对所选三种商品的价格总额的计算。

(商品选择运算)
3、找零及出货
当我们按下购买按钮时,且投入的金额≥商品购买金额时,我们需要进行找零和出货操作。出货操作很简单,我们将商品库存的基础上减去购买的商品数量并输出出货动作即可。

(找零及出货运算)
4、退币
当按下退币按钮时,以1元为例,使用减法将1元库存纸币减去1元累计投入的数量后,即视为退还成功,5元和10元也是同样操作。

(退币运算)
三、I/O分配表

根据I/O分配表的分布,我们将三种纸币的模拟投币按钮接在X0-X2三个端口中。三个按钮中的一端分别接X0、X1、X2对应三个红点,按钮的另一端全部接到公共端C即可。

Y1和Y2是晶体管类型,公共端C需要接24V负极,然后将指示灯一端接Y点,因此,输出端接线中红点标识所示,两盏指示灯的另一端口接电源的24V正极即可。

四、编写程序
第一步:系统初始化

第二步:投币检测

第三步:商品选择

第四步:商品总额计算

第五步:商品购买及找零

第六步:点亮出货及找零指示灯

第七步:数据清零

第八步:退币操作

五、HMI 程序
第一步:触摸屏主界面

第二步:数值显示设置

第三步:按钮设置

第四步:PLC控制画面跳转设置

第五步:画面继承设置

第六步:确认按钮设置

六、演示效果

七、章节小结与练习
看完上面的图文描述,各位小伙伴是否对PLC的四则运算和传送指令有更深入的了解呢?那么下面这几个问题,你们知道答案吗?评论区一起讨论讨论吧:
1、常规的运算指令相信大家已经清楚使用并能够掌握了,但是当我们计算实数时,该怎样编写呢?请使用浮点运算指令:加(DEADD)减(DESUB)乘(DEMUL)除(DEDIV)试计算(2.5*0.5)+(1.25/0.25)- 0.25的结果;
2、运用转换指令将英寸转换成厘米,已知单位为英寸的长度保存在D200中,数据类型为整数,1英寸=2.54厘米,要将最终单位厘米的结果保存在D210中,且结果为整数。(思考将浮点数转为整数需要用到什么指令?怎样编写?)
私聊小编加入咱们7天PLC交流群,一起来看视频课后习题讲解吧!