
```
LD W#12000 //将十进制值 12000 载入中间寄存器
TIM M1000 //将中间寄存器的值(单位为 ms)载入定时器 M1000
```
上面的代码中,“W#12000” 表示将 120 分钟转换为毫秒,并将值保存在中间寄存器中;“M1000” 是一个可编程的计时器寄存器号。
此外,为了保证定时器能够正确执行,在程序中需要定期读取定时器寄存器的值,以判断是否达到计时时间。
下面是一个完整的 PLC 程序代码示例,用于实现 120 分钟定时功能:
```
LD W#12000 //将十进制值 12000 载入 W10 中间寄存器
TIM M1000 //将中间寄存器的值(单位为 ms)载入定时器 M1000
:LOOP //循环开始
TPL M1000 //读取定时器 M1000 的累加值
JMP NZ, LOOP//如果累加值不为零,则继续等待
... //定时时间到达后要执行的 *** 作
CLR M1000 //清除定时器 M1000 中的累加值
```
在以上的代码中,“TPL” 指令用于读取定时器 M1000 的累加值,如果累加值不为零,则代表定时时间还未到,继续等待;否则,即达到了定时时间,就会执行代码中“...”处的 *** 作。最后,“CLR” 指令用来清除定时器中的累加值,以备下一次使用。
希望这个简单的程序对您有所帮助。请注意,这里只是提供了一种可能的实现方法,具体实现需要根据实际情况进行调整和优化。同时,PLC 编程需要非常注意安全性,确保程序稳定性和安全性。
如下设计即可实现(用一个定时器和一个计数器完成1h的定时)。
解析:
当X0接通时,M0得电并自锁,定时器T0依靠自身复位产生一个周期为100s的脉冲序列,作为计数器C0的计数脉冲。当计数器计满36个脉冲后,其常开触点闭合,使输出Y0接通。从X0接通到Y0接通,延时时间为100s x 36 = 3600s,即1h。
扩展资料:
用两个计数器完成1h的定时,如下设计。
解析:
以M8013 (1s的时钟脉冲)作为计数器C0的计数脉冲。当X0接通时,计数器C0开始计时。
计满60个脉冲(60s)后,其常开触点C0向计数器C1发出一个计数脉冲,同时使计数器c0复位。
计数器C1对c0脉冲进行计数,当计满60个脉冲后,C1的常开触点闭合,使输出Y0接通。从X0接通到Y0接通,定时时间为60s x 60 = 3600s,即1h。
1、200PLC可以用READ_RTC指令读取系统时钟,然后与你设定时间比较后,输出给STOP指令停机。2、300PLC可以用SFC1读取系统时间,然后作比较,条件满足调用SFC46让CPU停机。也可以利用日期中断OB10里面调用调用SFC46让CPU停机。
突然让CPU停机存在安全风险,请谨慎使用。
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)