同事昨天在现场调试一台机器,该程序在其他机器上用的好好的,两台机器一样,为什么新装的一台不行呢?
今天让我去看一下,啊呀我才来公司对了设备还不熟,你们搞不定,我只能试试,也就屁殿屁殿的跟他们到 现场。用电脑连上PPU,检查程序和另外一台正常运行的程序完全一样呀!一开始他们建议我这样做的。
可是问题不能解决,我坚持要找到原因,不去跟另一台机器比较了,在线诊断程序,发现临时变量L0.3为什么一直处在1状态,而Q4.5又是0状态,L0.3直接输出到Q4.5,关机重起也没有用。
而实际DB9026.DBX0.1是没有信号的,因为M42换档指令没有执行,L0.3不该是1,实际线圈也是0,但上面常闭L0.3且是断开的,当然L0.2在执行换低档时没有输出,但我也没想通,干脆我就在L0.3并联M256.6,然后把L0.3用M256.6取代,再进行换档测试可以换到低档了,I8.0低档信号也正常了。
接着再换到高档M42,问题又来了,当换到高档后I8.1高档信号有了,闪了一下又回到低档了,然后又回到高档,往复换档不停,换档一会儿正转,一会儿反转,按复位键也是随机在高档或低档。但执行的是高档且停在低档,检查程序换低档条件中少了个与高档条件互锁的条件,换高档条件中有低档互锁点,之后我把此条件加进去了,换档终于OK了。
但让我无法理解的是另一台机器同样的程序运行是OK的,L0.3状态是0。
问题是解决了,同样的机器同样的程序会有不同的结果,让我见识了。