各位大侠好,我想在CFC安全程序中构造一个方波输出,脉冲宽度为5ms,占空比为50%,然后我注意到F块中有时钟(F_REPCYC)这个块,于是我按照我的需求对该块的各个引脚赋了值,将其输入接至某一数字输出口(见图1)。该程序放在了OB33中,同时我按照默认的设置把OB33的执行周期设为了500ms。PLC运行后,我使能时钟的IN口,发现输出口连接的指示灯闪烁的频率却似乎与OB33的执行周期一样,0.5s一闪。难道是因为程序每隔500ms跑一次的原因么?那这样的话,程序是怎么保证每次执行的时候输出值是0,1交替呢?F块时钟的输出(5ms的脉宽)变化很快,程序在相邻的两次执行中都可能正好是时钟输出都为0或者1的时候啊。还有,有其他哪些方法(只能更改OB33的执行周期时间么?)可以使DO口输出达到我想要的5ms宽的方波信号?谢谢!
最佳答案
OB33是循环中断块,以你设定的时间循环中断扫描。就是每过500ms执行一次OB33,同时执行你的时钟(F_REPCYC)块。
提问者对于答案的评价:
那它是怎么保证每次输出都是0,1交替啊?我比较困惑的是,每次OB33执行时钟时,时钟都有可能输出同样的值即1或者0啊
专家置评
已阅,最佳答案正确。
原创文章,作者:more0621,如若转载,请注明出处:https://www.zhaoplc.com/plc236979.html