西门子 PLC 利用CPU时间存储器和OB35做计时器
方法一、CPU时间存储器1.1、在硬件组态完成后,双击CPU模板,选择"CYCLE\CLOCK MEMORY"选项,切换视窗后,选择底部的"CLOCK MEMORY"选项,这就是内部时钟脉冲的设置项,系统默认值是MB0,当勾选"CLOCK MEMORY"时,用户可以设置自已感兴趣的MB值.
如果设置的字节是MB100,从M100.0到M100.7为周期性改变值的存储位(脉冲占空比1:1)例如:m100.5为循环接通0.5s断开0.5s。
时钟位对应的时钟周期:https://p3-tt.byteimg.com/origin/pgc-image/ed41102de2bb41c090004a4433d059ec.png?from=pc
https://p3-tt.byteimg.com/origin/pgc-image/ecbf12b4249444f289b258cc4e2162a9.png?from=pc
1.2、仿真
编写程序,M150.5由内部时钟控制,通断周期为1S;利用整数加法指令每个脉冲的上升沿加一次。Md50中的数据就是以1s一次累计的计时器https://p3-tt.byteimg.com/origin/pgc-image/b967d5f907dc4245a7773db370e56449.png?from=pc
https://p3-tt.byteimg.com/origin/pgc-image/0698bfcc55d64a5eaa70122a574073a1.png?from=pc
方法二、利用等时中断组织块来实现等时中断,在OB35中调用存储程序块,实现等时存储,该方法较精确
2.1、在硬件组态完成后,双击CPU模板,选择“Cyclic Interrupts”,设置“OB35”循环中断时间“Execution”,1000为中断时间。https://p6-tt.byteimg.com/origin/pgc-image/8bdd57c3e46b4503a44e3306d584e0c2.png?from=pc
新建“OB35”块,并双击打开,选择累加指令“ADD DI”, 编写如下图中的程序https://p1-tt.byteimg.com/origin/pgc-image/b887485b076742cd9a32364ecabe612a.png?from=pc
https://p3-tt.byteimg.com/origin/pgc-image/ee0b78c53854453d845f110ba2727829.png?from=pc
打开PLCSIM,下载“OB35”块到仿真PLC,打开监视器,数值1s增加1。https://p6-tt.byteimg.com/origin/pgc-image/addc433b3be64ca1b329f10950eccc2a.png?from=pc
看完楼主的帖子,我的心情竟是久久不能平息,受教了 真是难得给力的帖子啊。
楼主辛苦啦,期待下一篇分享! 这逻辑绝了,分析得太到位了吧 求个链接 / 教程,楼主好人一生平安~ 我先占个楼,等下再慢慢看~ 评论区人才辈出,笑到停不下来😂 楼主太会说了,字字句句都在理~ 学到干货了,感谢分享,已火速收藏