前几天出差,又遇到了让人头大的S5 。
这次现象是这样的:可能因为电池没电,造成S5内程序丢失。所以将程序进行硬件总清后再上电,准备向PLC中重新写入程序。结果在传输程序的过程中发现程序上传后出现一报警“Exist in Eprom”,并且最终显示传输程序块为0 。再将PLC程序拷出,检查发现实际程序并未上传成功,PLC中程序变成了设备进厂时的初始程序(该设备经过了数次改造)。
到场后发现该PLC是带EPROM的,可以断定现在PLC中的程序是从EPROM中读出来执行的。(关于如何将程序从EPROM中读出可参考
S5 115U如何从EPROM传送程序至CPU)
又参阅资料得知,对于从EPROM中读出的程序,PLC会自动进行标识,并且该程序不能编辑、无法修改。唯一解决的途径就是把它再清除掉,然后才能再次写入程序。
为了确保再次上电后程序不会从EPROM中读出,我们断电后将EPROM卡拔出,然后上电,再次硬件总清。此时新建一个文件上传一遍程序,确认程序已经被清掉。然后将原来备份的程序写入PLC,成功后显示出总共传输的程序块数量。设备运行正常。
以上是本次维修的一点小经验。对于带卡的PLC,在出现“Exist in Eprom”的警告无法修改程序时,再把程序清除一遍就可以了。
=======================================================
对于EPROM卡中的程序,要想修改需要一定的硬件:西门子的PG编程器或者USB读卡器。这两个东东可是造价不菲。