恭喜,你发布的帖子
发布于 2018-07-24 11:20:16
24楼
粗略的定时,使用系统时钟计数应该是可以的。
我是一直习惯iec定时器,fb里面做多重背景块。
不过最近也在看,有些程序,使用,累加扫描周期,可能做起来也更随意一些,只需要一个int或者dint就足够了。尤其iec定时器在300plc的梯形图里面,编程有一些限制,比如后面只能加线圈,前面的串并联等也有要求。
在想,使用iec定时器和自己累加扫描周期,对cpu的运行负载和空间占用来说,各有和长短呢?一个fb 背景块用多了,空间也是很庞大的。应该还是iec占用要多一些吧!?
搞不明白西门子PLC的内存管理机制,但是通过一个事实感觉使用系统时钟,自制累加器代替Timer占用执行时间短。同一个项目我用自制定时器、结构体数组,除了系统时候用了M区,其它没有一个用M区的,另外一个同事用FB多重背景,所有中间量全是用M区,结果是扫描周期相差3~5倍。
顾此我认为定时要求精度不高的场合,就不要去用IECTimer,更不要去用M区,随便开DB块吗。
请填写推广理由:
分享
只看
楼主