一、定时触发故障PLC程序(PLC为实时时钟)
该程序是用三菱PLC编程软件GX Developer V7.08J(SW7D5C-GPPW)简体中文版所编的程序,仅适用于三菱FX2N系列PLC。
程序是为设备制造商收取剩余款项而设的筹码,在设备制造商老板有要求时可以使用,仅适用于信誉度不好的客户。该程序一旦触发,无论设备是否处于运行状态、PLC是否处于运行状态或通电状态,指定时间以后将会准时出现故障。请谨慎使用!
该程序应当嵌入应用程序之中,为避免他人识破,可以将程序分成多块分别嵌入在应用程序的各个地方。
为避免他人修改你的程序,应当将整个程序进行加密——设置口令,具体操作方法请参阅程序加密的相关说明。
M490为故障触点,应当串联或并联在程序多个关键动作回路中。
X20为定时触发故障复位端子,要求该端子为没有被使用的端子(否则请更换为另一个没有被使用的端子)。需要解除还没有被触发的故障或已经触发的故障时,将该触点和PLC的输入COM端短接即可。如果系统当前时间还没到故障触发时间,一旦该端子与COM端子断开,故障将在预定时间触发!如果系统当前时间已经过了指定的故障触发时间,一旦该端子与COM端子断开,故障将立即触发!如果需要重新指定故障触发时间,就必须得更改指定的故障触发时间——需要对PLC进行编程!
该程序指定的故障触发时间为2007年1月1日0时0分0秒,可以进行更改。
该程序中所用到的通用继电器M481-M499、定时器T198、存储区D0-D5,请不要在程序的其它地方使用,否则该程序可能无法正常发挥作用。
对于三菱其它系列PLC或其它品牌PLC,请对程序作相应更改——各存储器请按照相应存储区域进行更改。
该程序并没有修改PLC的系统时钟,因此程序中的其它地方或和PLC通信的其它设备所调用的PLC系统时钟反映的是正确的当前日期和时间。
在程序动作之前,应当检查PLC的系统时钟是否正确反映当前日期和时间(因为PLC的默认系统时钟可能不正确,笔者就遇到过系统时钟快一个小时多一点的情况)。检查方法如下:
启动三菱PLC编程软件GX Developer V7.08J(SW7D5C-GPPW)简体中文版到一个新的窗口,将电脑与PLC正确连接(具体连接方法请参阅相关说明<比如采用SC09连接电缆或等同功能电缆,加接USB转RS232电缆(需要加安装驱动)等等>),然后点击“在线”——“PLC读取”——“确认”(对于部分笔记本电脑(比如顶星品牌龙尊系列某型号的笔记本电脑),默认串口为COM2,这种情况下需要将COM口选为COM2,具体操作方法不再赘述),然后选中“软元件内存”再点击“确定”......待软元件内存传送到电脑以后,马上检查M8018(年)、M8017(月)、M8016(日)、M8015(时)、M8014(分)、M8013(秒)是否大概是当前正确时间(请注意,软元件内存只是下载时的PLC内存,并不能实时反映PLC的当前软元件内存数据。所以,软元件内存数据中反映的系统时钟比PLC当前系统时钟要慢)。或者,采用另外一种更简单的方法:直接PLC在线连接的下拉菜单中选择PLC时间设置选项,然后就可以看见非实时显示的时钟了——这个时间是读取瞬间的时钟,不实时跟随。
如果PLC的系统时钟不能正确反映当前日期和时间,那就需要对软元件内存进行修改。修改方法为:1、直接PLC在线连接的下拉菜单中选择PLC时间设置选项,然后更改时间就可以了。但该方法一次性只能更改一回时间,一旦更改后时间就实时跟随了,无法再进行更改。如果需要再次更改,需要将该窗口关闭后重新打开,然后再进行时间的更改。 2、通过程序的相关指令(例如MOV指令写时间对应的特殊存储区D8013~D8018或通过TWR指令来写时间,具体指令此处就不再赘述了)。
通过读出软元件内存后修改软元件内存再写回去的方法是行不通的——经过多次试验,证明了PLC在写入软元件内存时根本不会重写特殊存储区的内容,也就是说特殊存储区没被列入“软元件内存”的范围之内!