我今天到现场把程序破解,下到了电脑上,结果终于看明白是怎么回事了。看样我昨天的判断是错的,高估了设备的程序设计人员。
他的程序是用步进梯形图编写的(三菱的PLC),在这里,分别由不同的步(S15-S200)定义了不同的动作,以执行顺序的先后动作。如果脚踏开关不出问题,他的程序是没有问题的,都会按照设想一步一步往下走,只有上步动作到位后,下步才会动作。但步进梯形图有一个问题,就是“在状态转移的过程中,仅仅在一个瞬间(1个运算周期)两个状态会同时变ON”。正巧脚踏开关出现的问题是,在踩下时,接触不可靠,但还没有断,就产生了高频率的脉冲信号,恰巧在这个运算同期(2ms)的时间内,脚踏开关(X7)接通,造成PLC程序虽然在上一个状态执行完,到下一个状态的瞬间,又执行了上一个状态,而且到位的判断条件越过了了,最后导致弯管臂一直往下转,没有停止。我想这个问题的出现,是当时编程人员也没有想到的。
我在这里要提醒大家的就是,不要认为PLC的运算周期很短,平时一按按钮,会在这个时间之外,我们要认真的弄明白PLC的运行原理,这样才不会出看似古怪的问题。
看来什么事都要好好的研究,并且要实践,真的是不怕做不到,就怕想不到啊。