我在840D机床上载了PLC程序,他是S7-300的PLC,发现OB1中有些语句是红色的,我无法存储这个OB1程序,也就无法更改。点存储会出现一个对话框“网络***无法编译”,这个网络就是那些红色的语句,我吧其中的一个网络发出来,大家帮我看看是什么原因,其中CALL,和END CALL是红色的,但由于是上载来的,说明OB1是可以正常运行的。例子:
A M 0.1
= L 34.0
BLD 103
A M 0.0
= L 34.1
BLD 103
Call
BLD 1
= L 35.0
OPN DB 59
L DBW 2918
T LW 36
UC "FC_Direct_Keys"
P#L 34.0
P#L 34.1
P#I 61.0
P#I 60.0
P#L 36.0
L LW 36
OPN DB 59
T DBW 2918
BLD 2
End Call
NOP 0
问题补充:1、归档是指在FILE菜单下的那个archive么?如果是的话,应该没有作用,因为我理解这个相当于一个压缩,而且是压缩硬盘中已经存在的项目,而不是在线PLC中的项目。
2、机床运行是正常的,PLC没有错误,那么应该语法上没有错误,我只是吧程序上载上来,而且有好几个网络都是那样,只有CALL 和CALL END是这两条是红色的,其他的都是黑色的。
3、我想是否和UC有关?是否是原来程序是用LAD或者FBD编写的,在转成STL的时候出现的这种情况?但怎么恢复呢?因为现在由于红色的CALL存在,我无法存储程序了。
我在找答案中发了这个帖子,很多人怀疑是DB59不存在,或者是UC "FC_Direct_Keys" 这个不存在,这里的FC_Direct_Keys是FC118的符号,所以这里应该是UC FC118。由于不能在找答案中继续去补充说明,所以在这里再次说明一下。DB59和FC118都是存在的,前面也说了,机床是正常运行的,所以不可能是数据快缺少或者FC118不存在,这样的话PLC会出错停止的。