[西门子] 西门子SMART200PLC数学运算实例

[复制链接]
查看53981 | 回复0 | 2024-1-22 11:26:31 | 显示全部楼层 |阅读模式
在对PLC编程中经常会用到数学运算(也就是我们熟悉的加减乘除等等),今天我们利用一个小案例来体现运算在PLC里面的重要性。我们这个案例也是很早一个小学老师生气出的一道题(1+1+2+3……+100),他的本意是想难道调皮的学生,结果还真有同学算出来了,那就是用1+100,2+99,3+98这样拆分得到50对101,那自然是50*101=5050。今天我们不是用笔算,而是用PLC来计算,首先我们添加一个子程序(其实不添加也可以,这是我的习惯)。下面利用两各定时器来作脉冲1秒循环,也可以用系统自带的SM0.5。程序如下截图:



程序解说:按下M10.0,T37延时0.5秒后接通定时器T38,当T38计时满0.5秒后复位T37,这样如此循环形成一个开关1秒的脉冲,当然也可以用系统的SM0.5也可以。


程序解说:当按下M10.0后触发比较指令,VW0的值小于100接通后递加1,器结果存储在它里面,最后VW0加VW2得到和存储在VW2里面,当我们按下M10.2按钮一个脉冲时,VW2/VW0向左移动16位(超过16位溢出),这时它两里面值变为0,其实也可以用MOVE_W指令还更简单一些。程序结果监控:





关注《电子技术控》一起交流探讨行业机会吧,回复: 进群
以上为这个数学小案例监控所得得结果,仅供参考,感兴趣得同学朋友们也可以试试

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?注册哦

x
您需要登录后才可以回帖 登录 | 注册哦

本版积分规则