当前位置: 主页 > PLC控制

请教各位老师STL程序解读问题

各位老师好,我这儿有一段STL程序,如下:
A"OP20_StaRT"
A"M2019.0"
A(
O"Conf"
O"T149"
)
A"OP20-Step17"
=L5.0
AL5.0
BLD102
R"OP20-Step17"
AL5.0
BLD102
R"M2019.0"
AL5.0
BLD102
S"OP20-DBlocalsupervisor".PLC_Write.Handshake.Req_Unload_pallet
AL5.0
JNB_003
L"Gen-Generaldata".PieCE.Unloaded
L1
+D
T"Gen-Generaldata".Piece.Unloaded
_003:NOP0
AL5.0
BLD102
LS5T#2S
SE"T107"
A(
AL5.0
JNB_004
CALL"RESet_txt"
_004:ABR
)
JNB_005
CALL"Reset_load_txt"
_005:NOP0
AL5.0
BLD102
R"M2019.4"
1、上面JNB_003这个语句若要执行话,是不是L5.0要为0?
2、若是L5.0为零执行_003跳转的话,那么后面的_004和_005怎么执行,因为要执行_004和_005的话,前面都有AL5.0这个语句,此时L5.0为0,那岂不是没法执行_004和_005语句了?
麻烦各位老师指教,谢谢!

图片说明:

请教各位老师STL程序解读问题c1e7ac710b409bd96e68891fb9060ca1

最佳答案

楼主的程序一看就是由梯形图转为STL的,如你将再转换为梯形图,其逻辑就非常清楚了。
注意,程序中的JNB、ABR语句均为在转换STL时,系统自动加入的。
1、上面JNB_003这个语句若要执行的话,是不是L5.0要为0?
是的。JNB是RLO为0跳转。
AL5.0
JNB_003/若是L5.0为0,跳转至_003处。
2、2、若是L5.0为零执行_003跳转的话,那么后面的_004和_005怎么执行,因为要执行_004和_005的话,前面都有AL5.0这个语句,此时L5.0为0,那岂不是没法执行_004和_005语句了?
应该讲,如果L5.0为0,只不执行CALL"Reset_txt"这条语句。
A(
AL5.0
JNB_004/若是L5.0为0,跳转至_004处,,并复位BR。
CALL"Reset_txt"/若L5.0为1,则调用"Reset_txt"
_004:ABR
)
JNB_005/若L5.0为0,并BR为0则跳转到_005处。
CALL"Reset_load_txt"/
_005:NOP0

提问者对于答案的评价:
谢谢阿鸣老师的指点,终于搞明白了!

  • 关注微信
上一篇:问两个问题

猜你喜欢

微信公众号