4. 基本逻辑指令与梯形图编程

梯形图(Ladder Diagram,简称LAD)是三菱FX系列及iQ-F系列PLC最常用的编程语言,它的图形符号来源于继电器控制电路,因此对电气人员非常直观。但梯形图并不是"画电路图",它本质上是一种由PLC循环扫描执行的逻辑运算表达方式。理解这一点,是掌握基本逻辑指令的关键。

一、触点与线圈:梯形图的最小单元

梯形图中最基本的三种元素是常开触点、常闭触点和输出线圈。它们对应的软元件和指令如下:

  • 常开触点(LD/LDI):对应软元件为"1"时导通。梯形图中画成两条竖线中间断开的形式,类似继电器常开接点。
  • 常闭触点(LDI/LD):对应软元件为"0"时导通,画成带斜杠的接点。
  • 输出线圈(OUT):位于梯形图最右侧,当左侧逻辑运算结果为"1"时,线圈对应的软元件被置为ON。

需要特别强调的是:梯形图的"能流"方向是从左母线到右母线,触点串联表示"与"逻辑,触点并联表示"或"逻辑。例如,启动按钮X0与停止按钮X1(常闭)串联后驱动Y0,就是典型的"启保停"电路。在iQ-F中,X0~X7为输入继电器,Y0~Y7为输出继电器,M0~M499为通用辅助继电器,T0~T199为定时器,C0~C199为计数器。

二、置位与复位:保持型输出

OUT指令是"即时输出",当逻辑条件消失时线圈立即断开。而SET(置位)和RST(复位)指令可以让软元件保持状态,直到遇到相反的指令。这在需要"按下启动后持续运行"的场合非常有用。

例如,用SET/RST实现电机启停控制:

LD X0        // 启动按钮
SET Y0       // 置位Y0,电机启动并保持
LD X1        // 停止按钮
RST Y0       // 复位Y0,电机停止

与OUT指令相比,SET/RST的优势在于:即使启动按钮松开,Y0仍保持ON;只有按下停止按钮才会断开。需要注意的是,SET和RST之间没有先后顺序限制,但同一软元件如果同时被SET和RST驱动,程序会按扫描顺序执行,最后执行的那条指令生效。因此在实际编程中应避免这种"双线圈"冲突。

三、边沿触发:捕捉瞬间变化

PLC的扫描周期通常为几毫秒到几十毫秒,如果按钮按下的时间很短,普通触点可能"抓不住"这个信号。边沿触发指令就是用来捕捉信号从OFF到ON(上升沿)或从ON到OFF(下降沿)的瞬间。

  • LDP(上升沿):仅在信号由0变1的那个扫描周期导通一次。
  • LDF(下降沿):仅在信号由1变0的那个扫描周期导通一次。
  • PLS(脉冲输出):检测到上升沿时,让指定软元件导通一个扫描周期。
  • PLF(脉冲输出):检测到下降沿时,让指定软元件导通一个扫描周期。

边沿触发在计数、单次动作、状态切换等场合非常关键。例如,用PLS指令让M0在X0按下瞬间产生一个脉冲,再用M0驱动计数器C0,就可以实现"每按一次按钮计数加一"的功能。

四、逻辑块与程序结构

当梯形图变得复杂时,需要用到逻辑块指令来处理"块与"和"块或"的关系。三菱PLC中常用的有:

  • ANB(块与):将两个并联块串联起来。
  • ORB(块或):将两个串联块并联起来。
  • MPS/MRD/MPP:用于多重输出分支,分别表示进栈、读栈、出栈。

程序结构上,iQ-F系列支持主程序、子程序和中断程序。主程序从上到下循环扫描,子程序通过CALL指令调用,中断程序则由外部中断或定时中断触发。合理的程序结构应该做到:主程序负责主要逻辑,子程序负责重复功能,中断程序负责紧急处理。

基本逻辑指令与梯形图结构关系图 左母线 右母线 X0 常开 LD X1 常闭 LDI X2 SET Y0 置位保持 X3 RST Y0 复位清除 X4 PLS M0 上升沿脉冲 指令与功能对照 LD / LDI 常开/常闭触点起始 OUT 线圈输出,条件消失即断开 SET / RST 置位保持 / 复位清除 LDP / LDF 上升沿/下降沿触点 PLS / PLF 脉冲输出一个扫描周期 ANB / ORB 逻辑块与 / 逻辑块或 MPS/MRD/MPP 多重输出分支栈操作 扫描方向:从左到右、从上到下循环执行

五、编程实践要点

在实际编写梯形图时,有几个容易出错的地方需要特别注意:

  1. 双线圈问题:同一个输出线圈(如Y0)在程序中只能出现一次。如果多次使用OUT Y0,PLC会以最后一次扫描结果为准,前面的逻辑会被覆盖。正确做法是用中间继电器M汇总逻辑,最后统一输出。
  2. 触点顺序:串联触点中,常闭触点应尽量靠近左母线,这样可以减少不必要的逻辑运算,提高程序可读性。
  3. 边沿指令的位置:LDP/LDF必须紧跟在左母线或前一个逻辑块之后,不能随意插入串联支路中间。
  4. SET/RST配对:使用SET置位的软元件,一定要有对应的RST复位逻辑,否则PLC断电重启后状态可能不确定。
在iQ-F系列中,GX Works3软件支持梯形图与ST语言混合编程。对于复杂的逻辑块,可以先用梯形图搭建框架,再对重复性高的部分用ST语言编写子程序,这样既保持了梯形图的可读性,又提高了编程效率。

掌握这些基本指令后,就可以开始编写完整的控制程序了。建议从简单的"启保停"电路入手,逐步加入定时器、计数器和边沿触发,最后再练习逻辑块和子程序调用。每一步都要在GX Works3中实际编译、下载并观察PLC的运行状态,通过监视功能查看各软元件的ON/OFF变化,这样才能真正理解梯形图的扫描执行机制。