• IIANews微官网
    扫描二维码 进入微官网
    IIANews微信
    扫描二维码 关注微信
    移动客户端
  • English
2025全景工博会
PLC

利用Twido的周期事件打造超级定时器

  2016年02月14日  

  1.概述

  在某些设备控制程序中可能要求定时器在计时的过程中具备暂停计时的功能,在计时期间,如果暂停信号为高电平,计时器停止工作,但其当前计时值需要保留,当暂停信号为低电平时,定时器在暂停前的计时值基础上继续计时。

  大部分PLC没有提供具备暂停功能的定时器,这就需要编程者自己通过程序来实现这一功能。当然,PLC本身的灵活的可编程性能为实现这一功能提供了很多解决方案,例如可以用定时器与计数器配合,将暂停信号串在计数器的计数端,就能完成带暂停功能的计时器功能。

  2 在Twido系列PLC中的实现方法

  在Twido PLC中可以使用周期事件来实现具备暂停功能的定时/计时器。Twido具有一路周期可在5~255ms间调整的周期事件功能,也就是时间在5~255ms之间的一个定时中断。首先看一下周期事件的设置:

 

  上面配置了一个100ms的周期事件(定时中断),在此事件/中断中调用0号子程序,超级定时器的实现程序就放在这个子程序中。

 

  上面程序段中使用的变量:

  %M0 超级定时器使能

  %M1 超级定时器暂停

  %M2 超级定时器复位

  %M3 超级定时器输出

  %MW10 超级定时器计时值

  %MW11 超级定时器设置值

  在程序使用这个自制的超级定时器:

 

  需要注意之处(如果在程序使用了子程序,必须在主程序结束处加END指令):

 

  程序的指令表源码:

  (* 设置超级定时器定时时间值 *)

  LD 1

  [ %MW11 := 100 ]

  (* 超级定时器时间到后输出 *)

  LD %M3

  ST %Q0.0.0

  (* 超级定时器的便能、暂停及复位 *)

  LD 1

  MPS

  AND %I0.0.0

  ST %M0

  MRD

  AND %I0.0.1

  ST %M1

  MPP

  AND %I0.0.2

  ST %M2

  (* 如果在程序使用了子程序,必须在主程序结束处加END指令 *)

  END

  (* 一个时基为100MS的超级定时器 *)

  SR0:

  LD 1

  MPS

  AND %M0

  MPS

  ANDN %M1

  AND [ %MW10 < %MW11 ]

  [ INC %MW10 ]

  MPP

  AND [ %MW10 >= %MW11 ]

  ST %M3

  MPP

  AND %M2

  [ %MW10 := 0 ]

  RET

  如果需要,在周期中断程序中可以做出多个类似的定时器。

最新视频
图尔克亮相2025上海工博会精彩花絮   
探馆 | 深化“双元本地化”战略,博世力士乐以全球首发新品兑现承诺   
研祥金码
重新定义可靠传动,共同创造美好未来!
专题报道
《我们的回答》ABB电气客户故事
《我们的回答》ABB电气客户故事 ABB以电气问题解决专家之志,回答未来之问。讲述与中国用户携手开拓创新、引领行业发展、推动绿色转型的合作故事,共同谱写安全、智慧和可持续的电气化未来。
企业通讯
研祥金码R-6000系列读码器调研活动
研祥金码R-6000系列读码器调研活动

Regem Marr研祥金码R-6000H智能读码器,拥有高精度AI算法,精准读取各类条码,在多个行业内帮助企业降本增效

立刻注册,赢取好礼!西门子2025工博会系列直播活动
立刻注册,赢取好礼!西门子2025工博会系列直播活动

步入9月,即将迎来工业人一年一度的相聚时刻,9月23-25日,第五届西门子工业论坛 如约而至!通过三日全天候直播,我们将

在线会议
热门标签

社区