PLC 扫描周期问题,困扰很久了,求PLC高手解答
答案:2 悬赏:40 手机版
解决时间 2021-03-30 04:07
- 提问者网友:皆是孤独
- 2021-03-29 03:45
PLC 扫描周期问题,困扰很久了,求PLC高手解答
最佳答案
- 五星知识达人网友:末日狂欢
- 2021-03-29 04:09
疑问一:一般的PLC,内部数据区都是立即刷新,I/O是下一个周期刷新。在同一级梯形图中,调用D100,是刷新后的。
疑问二:MOVE 和赋值给M0,有一个堆栈的处理。出现你说的现象,我猜是MOVE的执行时间和M0赋值的时间不一致,MOVE假如是3us,M0的是1us,可能会出现,检测M0的上升沿时(检测上升沿是跟一个值做比较才能判断是否上升沿,一般是寄存器,如果此时寄存器的值不为0,那么你的上升沿检测是不对的),MOVE没有执行完成。
有没有办法在MOVE之后赋值给M0?可以实验一下。
以上只是逻辑推断,可以探讨,以实际为准,毕竟PLC的运行也不会那么严密。追问如果这样推算,就算同一级梯形图,也有指令处理时间问题,即d虽然是立即刷新,但考虑到指令时间,最好还是按你说的驱动m0时比较下mov指令是否完成,或者加延时如果这样推算,就算同一级梯形图,也有指令处理时间问题,即d虽然是立即刷新,但考虑到指令时间,最好还是按你说的驱动m0时比较下mov指令是否完成,或者加延时如果这样推算,就算同一级梯形图,也有指令处理时间问题,即d虽然是立即刷新,但考虑到指令时间,最好还是按你说的驱动m0时比较下mov指令是否完成,或者加延时如果这样推算,就算同一级梯形图,也有指令处理时间问题,即d虽然是立即刷新,但考虑到指令时间,最好还是按你说的驱动m0时比较下mov指令是否完成,或者加延时追答西门子的MOVE不是最后的指令,所以可以在MOVE后再增加M0的位指令。
我不知道三菱的该怎么实现。
疑问二:MOVE 和赋值给M0,有一个堆栈的处理。出现你说的现象,我猜是MOVE的执行时间和M0赋值的时间不一致,MOVE假如是3us,M0的是1us,可能会出现,检测M0的上升沿时(检测上升沿是跟一个值做比较才能判断是否上升沿,一般是寄存器,如果此时寄存器的值不为0,那么你的上升沿检测是不对的),MOVE没有执行完成。
有没有办法在MOVE之后赋值给M0?可以实验一下。
以上只是逻辑推断,可以探讨,以实际为准,毕竟PLC的运行也不会那么严密。追问如果这样推算,就算同一级梯形图,也有指令处理时间问题,即d虽然是立即刷新,但考虑到指令时间,最好还是按你说的驱动m0时比较下mov指令是否完成,或者加延时如果这样推算,就算同一级梯形图,也有指令处理时间问题,即d虽然是立即刷新,但考虑到指令时间,最好还是按你说的驱动m0时比较下mov指令是否完成,或者加延时如果这样推算,就算同一级梯形图,也有指令处理时间问题,即d虽然是立即刷新,但考虑到指令时间,最好还是按你说的驱动m0时比较下mov指令是否完成,或者加延时如果这样推算,就算同一级梯形图,也有指令处理时间问题,即d虽然是立即刷新,但考虑到指令时间,最好还是按你说的驱动m0时比较下mov指令是否完成,或者加延时追答西门子的MOVE不是最后的指令,所以可以在MOVE后再增加M0的位指令。
我不知道三菱的该怎么实现。
全部回答
- 1楼网友:执傲
- 2021-03-29 04:52
你的推测有道理,但D区应该是立即刷新,只是M0时序上可能得有一个准备过程,我用的是PLC内置 的脉冲输出功能,有时也有这种情况,也是通过延时触发脉冲输出来解决的。
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯