用置位复位指令编了个顺序控制程序,网络10,12都让q0.3导通,可是网络10的q0.3从程序监控看是导通了,查状态表q0.3=0,PLC的q0.3指示灯也没亮。网络12倒是正常,我把网络12的q0.3删除,网络10就正常了,弄不明白,那位大侠帮忙看一下。
Network 1 // 网络标题
// 网络注释
LD SM0.1
S M0.0, 1
R M0.1, 8
R M10.0, 1
R T37, 3
Network 2
LD I0.1
O M10.0
AN I0.0
= M10.0
Network 3
LD M0.0
A I0.0
S M0.1, 1
R M0.0, 1
Network 4
LD M0.1
= Q0.0
Network 5
LD M0.1
A I0.2
S M0.2, 1
R M0.1, 1
Network 6
LD M0.2
= Q0.1
Network 7
LD M0.2
A I0.3
S M0.3, 1
R M0.2, 1
Network 8
LD M0.3
TON T37, 60
= Q0.2
Network 9
LD M0.3
A T37
S M0.4, 1
R M0.3, 1
Network 10
LD M0.4
= Q0.3
Network 11
LD M0.4
A I0.4
S M0.5, 1
R M0.4, 1
Network 12
LD M0.5
TON T38, 400
= Q0.3
Network 13
LD T38
A M0.5
AN M10.0
S M0.1, 1
R M0.5, 1
Network 14
LD M10.0
A T38
A M0.5
S M0.0, 1
R M0.5, 1
最佳答案
因为你这是典型的多线圈输出,你的理解错误,程序的执行过程不是看到输出为1就输出为1,而是扫描结束后把输出影响区刷新到输出点。所以从这点来说你的逻辑还是有问题的。
提问者对于答案的评价:
谢谢
专家置评
夜可参考“回答者: 天外飞飞”的答案,使用复位与置位指令。
原创文章,作者:more0621,如若转载,请注明出处:https://www.zhaoplc.com/plc299609.html