我在OB1中需要调用四到五次FC1,FC1中有计时器用的是ton,在OB1中顺序调用FC1时,第一个FC1块可以将输出按照时间实时输出,但是第一个FC1计时完毕之后输出一个BOOL型M0.0为1,第二个FC1当M0.0为1后启动,这时候问题就出现了,第二个和以后的fc1就都直接输出最终结果了,都不会进行定时的操作,怎么处理这个问题呢?
向各位大神请教。
最佳答案
1、出现这样的情况,是你的FC1里用了全局变量定时器。
你多次调用FC1就是相当于多线圈输出的问题。
2、为了避免这种情况,你在FC1里全不用局部变量去做,包括定时号。然后在OB1调用的时候只需要填写不同的定时号就可以了!
3、实例如附图:
FC1 和OB1
图片说明:
提问者对于答案的评价:
你说的也对,不过我建立了一个背景数据块,在ob中调用的时候直接调用背景数据块的内容,另外在ob1调用的时候也简历了定时器调用,就解决了,谢谢
原创文章,作者:more0621,如若转载,请注明出处:https://www.zhaoplc.com/plc243100.html