PLC cmp 指令的问题,高手请进。
cmp指令像这样并联使用,在同一个扫描周期里,是不是只执行一次cmp指令:也就是第一个周期只执行第一条cmp,满足条件后,后面的cmp指令要在后面的扫描周期中执行。...
cmp指令像这样并联使用,在同一个扫描周期里,是不是只执行一次cmp指令:也就是第一个周期只执行第一条cmp,满足条件后,后面的cmp指令要在后面的扫描周期中执行。
展开
3个回答
展开全部
1.PLC的扫描周期跟随代码量变化而变化。
2.PLC的扫描方式是从梯形图的0步起执行“从上之下,从左至右”扫描。
3.当你的“确认”键按下后在【这个扫描周期里】->第一条“CMP”条件满足,执行第一条“CMP”指令,应该在2~4个机器周期(几个~20个uS,视PLC而定。)->【在同一个扫描周期里】扫描M1输出这行->“CMP”导通条件满足->【在同一个扫描周期里】执行执行第二条“CMP”指令。。。依次类推,如有导通条件不满足不执行同行后面的语句,扫描下一行!!!
2.PLC的扫描方式是从梯形图的0步起执行“从上之下,从左至右”扫描。
3.当你的“确认”键按下后在【这个扫描周期里】->第一条“CMP”条件满足,执行第一条“CMP”指令,应该在2~4个机器周期(几个~20个uS,视PLC而定。)->【在同一个扫描周期里】扫描M1输出这行->“CMP”导通条件满足->【在同一个扫描周期里】执行执行第二条“CMP”指令。。。依次类推,如有导通条件不满足不执行同行后面的语句,扫描下一行!!!
更多追问追答
追问
就是说,第一条满足之后,M1闭合,第二条在这个周期里 继续执行?
追答
是,M1闭合,第二条在这个扫描周期里会继续执行!执行“CMP”这条指令用的时间是PLC的CPU的机器周期的时间。
如果你在第二条“CMP”指令后第60行或者120行后用M1触点上升沿去导通另一条指令,它会没反应没输出,因为扫描周期还在第二条“CMP”指令处,没扫描到“第60行或者120行后M1触点上升沿去导通另一条指令”的地方。而M1上升沿闭合时间在同一个扫描周期,等扫描到“第60行或者120行后M1触点上升沿去导通另一条指令”的地方,M1触点已是断开状态。所以用上升沿或者下降沿指令时不要离触发它动作的指令过远。
展开全部
错误,如果满足条件的话,任何指令都可以执行的。我感觉你的这个程序好像只执行一个CMP,也就是第一个周期只执行满足条件的cmp。
更多追问追答
追问
如果第一个密码数输入为8,那么满足第一个条件之后,第二条M1闭合,那第二条也执行?
追答
不执行,由于在扫描的时候,M1未闭合的。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
无论哪个扫描周期,只要条件满足就执行。看似你的M1 M4 M7是在这条指令后面操作的,所以得到下个周期条件才能满足。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询