小弟请教一个问题:
问题描述,需要使用SFC58来修改S120中点动速度的参数问题,按照调试手册上的做法,建立了一个DB块,然后通过变量表修改成功,但是实际使用时碰到点编程的问题,请教一下
SFC58需要有一个M10.0来进行激活,当数据传输完毕后,再将M10.0复位,但是我的程序监控时发现,修改的数据已经写进DB块中,但是starter中的experlist 中发现没有传输成功,我猜想是因为M10.0的问题,以下是我的程序段,哪位看看如何修改?
A I10.3
FP M 5.0 (捕捉上升沿)
JNB M000
L DW316#*****
T DB1.DBD18 (传输修改值给DB)
= M4.2
M000:A I10.3
FN M5.1 (捕捉下降沿)
JNB M001
L DW316#*****
T DB1.DBD18 (传输修改值给DB)
= M4.3
A M 4.2
O M 4.3
= M 10.0
以上就是我的程序段了,数据传给DB是没问题的,但是M10.0似乎有点问题,如何处理呢?请赐教
问题补充:
先回复一下一楼:我觉得这个M4.2没有问题啊,I10.3的上升沿如果被捕捉到了,就将数据写进DB中,同时将M4.2的线圈置为1。如果没有(RLO为0,),则JNB指令跳转到M001处,继续执行
M4.2为1之后,则M10.0的线圈也就为1了啊?
这样理解应该没错吧
最佳答案
查看JNB命令的帮助,你的M4.2和M4.3永远为0
当标点JNB处,按F1键看说明
无论跳转是否成功,RLO都会变为初始状态,在不进行任何逻辑运算时,RLO为0
提问者对于答案的评价:
谢谢指导
原创文章,作者:more0621,如若转载,请注明出处:https://www.zhaoplc.com/plc205397.html