当远程就地信号为1时,即表示现场的控制柜(箱)上的转换开关打到了远程位置,可进行plc的自动控制;当其为0时,则表示是现场手动操作。为了实现程序内部的手动自动切换,就像远程就地信号一样,设置一个中间变量,这个中间变量作为程序手动单体设备操作的标志,是由上位机监控程序来赋值的,其值为1时,进行程序的单体设备手动操作;为0时PLC程序进行自动控制。由此可见,每一个自动控制中的设备都是在这两个条件下运行的。 我们用梯形图来实现一个电机和一个阀门的手自动切换功能,设置如下输入、输出IO标签和中间变量: 输出:电机启动START 电机停止STOP 阀门打开OPEN 阀门关闭CLOSE 输入:电机MCC柜远程就地信号RL_M 阀门控制柜远程就地信号RL_V 变量:电机启动条件A 电机停止条件B 阀门打开条件C 阀门关闭条件D 电机的上位机手动操作中间变量UP_MAN_M 电机的上位机手动操作启动UP_START_M 电机的上位机手动操作停止UP_STOP_M 阀门的上位机手动操作中间变量UP_MAN_V 阀门的上位机手动操作打开UP_OPEN_V 阀门的上位机手动操作关闭UP_CLOSE_V 使用美国A-B公司用于Logix 5000系列PLC的RSLogix 5000编程软件的梯形图,程序如图1:
其中(L)为置位指令,(U)为复位指令。这里之所以用置位、复位指令,主要是考虑到启动(打开)条件和停止(关闭)条件可能是脉冲型的(例如上升沿脉冲),需要保持(注:如果MCC中的控制回路使用了“启动-保持-停止”方式,那么采用脉冲输出比较合适,就像自复位式按钮一样。这里为了简化梯形图程序,没有这样做。有兴趣的读者不妨一试)。电机启动或停止条件是自动控制时的联锁条件,上位机进行手动操作时,自动控制程序不能执行。同样就地操作时,PLC的程序控制也不能执行,程序可以根据需要将此时的电机启动和停止控制信号复位。阀门的控制也是一样。这样各个设备均可根据情况进行自动运行或手动操作。
|