在plc没有像期望的那样开始工作的时候,应该先从PLC的外部来进行判断,这样,可以比较轻易地排除那些不是故障的误会。
所有的PLC在CPU模块、I/O模块或电源模块上都有LED指示灯。通常,红灯表示问题,绿灯表示OK。如果一个LED在闪烁,通常表示功能正在执行或者这个模块在等待什么。对LED灯状态的正确诠释可以节省你很多故障诊断的时间。所以在故障诊断之前,你应该把制造商的故障诊断指南看一遍并放在手边。
如果PLC不能进入运行(RUN)模式,你可以用下面的方法来看看问题是在硬件还是软件:
a)临时将终止循环指令放在你的用户程序的第一行。如果现在PLC可以进入运行模式了,表示问题在你的软件中;而不是PLC的硬件问题。(有些PLC需要你在进入运行模式之前,先清除所有的错误状态,即使原来的问题已经更正了)。
b)将PLC的内存复位(注意!首先,你要将PLC的内存的内容做一份拷贝,或者,你确信你愿意丢失内存中所有的程序、数据和组态)。如果PLC现在可以进入运行模式,问题就出在组态或者冲突使用的内存上。
如果在检测一个传感器时,你发现PLC不能从一个传感器得到信号,首先检查该传感器的输出是否正常,接线是否正确。如果传感器经检查没有问题,则更换一个同型号的输入模块,如果PLC能够识别该模块的改变,就表示输入模块故障了(或者你刚才传感器连线错误了),那么,可以按照如下的方法观察PLC输入模块的LED灯是否与传感器的状态变化一致:
a)如果输入LED没有动静,用万用表检查PLC输入模块的端子看看信号是否变化。如果没有,将传感器与PLC的连接断开,单独对传感器进行测试。看看外接电源是否正常,检查直流电源的极性是否接反。有些PLC是漏电流型(SINK)的,所以对应的传感器电路必须是正端子接到PLC的输入接点上,其它的DC输入模块是电流源型(SOURCE)的,则传感器电路要通过电源的地线接到输入接点上。
b)如果LED状态是发生变化了,可能是你的程序有问题。在你的用户程序中的第一行加一条终止循环的指令,然后运行程序,观察输入映射表,如果该位现在改变了,问题就在你的程序,很可能是你的程序中有一条指令对输入映射表进行了改写,从而改变了它的值。
如果输入映射表依然不随着输入模块的LED的状态而改变,那么,可能是传感器电路有故障。传感器电路的电流能力可能不足以驱动输入状态,虽然它可能足以改变LED的状态。检查输入触点有没有不正常的小的电压变化。
如果一个执行器看来无法得到PLC试图写给它的信号,观察输出模块的LED,确信它们是否随着PLC改变输出状态而一起改变:
a) 如果LED确实改变,用万用表检查输出模块的端子,是否提供了足以驱动外部电路的信号,同时也检查极性是否正确。如果是,则将执行器从PLC上断开,对执行器单独进行测试。(有些输出模块有保险丝,检查一下是否保险丝断了?)
b) 如果LED 不变化,检查输出电路的电源,和它与输出模块的接线,(DC 输出可以是源型或漏型的),如果接线正确,将执行器从PLC的输出模块断开,看看现在LED在不带执行器时是否改变。
更换一个同型号的输出模块,如果PLC可以改变仿真的输出状态,那么刚才的模块或接线就有问题。 |