根据网上资料自己编了一个子程序,想多次调用。采用的是西门子200。我遇到的问题是:当程序只保留网络1或者网络2时,程序运行时正常的。如果同时调用,则子程序无法正常执行出正确的结果。请老师给予指导一下。谢谢!
子程序:
Network 1 // Network Title
// Network Comment
LD L0.0
LPS
A SM0.5
EU
INCW LW1
LRD
AW= LW1, 60
EU
+I 1, LW3
AENO
MOVW 0, LW1
LRD
AW= LW3, 60
EU
+I 1, LW5
AENO
MOVW 0, LW3
LRD
ITD LW1, LD11
AENO
DTR LD11, LD15
AENO
/R 3600.0, LD15
LRD
ITD LW3, LD19
AENO
DTR LD19, LD23
AENO
/R 60.0, LD23
LRD
ITD LW5, LD27
AENO
DTR LD27, LD31
LPP
MOVR LD15, LD35
AENO
+R LD23, LD35
AENO
MOVR LD35, LD7
+R LD31, LD7
Network 2 // // Network Comment
LD #复位:L0.1
LPS
MOVW 0, #秒:LW1
AENO
MOVW 0, #分:LW3
AENO
MOVW 0, #时:LW5
AENO
MOVR 0.0, #总小时:LD7
LPP
MOVD 0, #temp0:LD11
AENO
MOVR 0.0, #temp1:LD15
AENO
MOVD 0, #temp2:LD19
AENO
MOVR 0.0, #temp3:LD23
AENO
MOVD 0, #temp4:LD27
AENO
MOVR 0.0, #temp5:LD31
AENO
MOVR 0.0, #temp6:LD35
主程序调用
Network 1
LD SM0.0
= L60.0
LD M10.1
= L63.7
LDN M10.1
= L63.6
LD L60.0
CALL SBR6, L63.7, L63.6, VW102, VW104, VW106, VD112
Network 2
LD SM0.0
= L60.0
LD STOP_BT_1:M10.2
= L63.7
LDN STOP_BT_1:M10.2
= L63.6
LD L60.0
CALL CUM_T:SBR6, L63.7, L63.6, End_S_1:VW184, End_M_1:VW186, End_H_1:VW188, End_Time_1:VD190