三菱PLC(主要以主流FX系列和Q/L系列为例)的编程指令非常丰富,涵盖基本逻辑控制、数据处理、运算、流程控制、通信、定位等多个方面。以下按功能分类对一些常用和重要的指令进行详细介绍(使用中文指令名,括号内为常见助记符):
一、 基本逻辑指令 (LD, LDI, AND, ANI, OR, ORI, OUT, SET, RST)
LD (取):
LD X0
读取输入点X0状态。LDI (取反):
LDI X1
。AND (与):
LD X0 AND X1
表示X0与X1都ON时通路。ANI (与非):
LD X0 ANI X1
表示X0 ON且X1 OFF时通路。OR (或):
LD X0 OR X1
表示X0或X1任一个ON时通路。ORI (或非):
LD X0 ORI X1
表示X0 ON或X1 OFF时通路。OUT (输出):
OUT Y0
。SET (置位):
SET M0
。RST (复位):
RST M0
, RST C0
。二、 堆栈与主控指令 (MPS, MRD, MPP, MC, MCR)
MPS (入栈):
MRD (读栈):
MPP (出栈):
MC (主控):
MCR (主控复位):
三、 定时器指令 (T)
定时器 (T):
OUT T0 K50
)被驱动时开始计时。K50
工作原理:
四、 计数器指令 (C)
计数器 (C):
计数输入:
复位输入(RST指令):
OUT C0 K10
)时,计数器触点动作。工作原理(增计数):
五、 数据处理指令
MOV (传送):MOV S D
MOV D0 D10
。ADD (加):ADD S1 S2 D
ADD D0 D1 D2
(D2 = D0 + D1)。SUB (减):SUB S1 S2 D
SUB D0 D1 D2
(D2 = D0 - D1)。MUL (乘):MUL S1 S2 D
MUL D0 D1 D2
。DIV (除):DIV S1 S2 D
DIV D0 D1 D2
(商存D2,余数存D3)。INC (加1):INC D
DEC (减1):DEC D
AND (与):AND S1 S2 D
OR (或):OR S1 S2 D
XOR (异或):XOR S1 S2 D
CMP (比较):CMP S1 S2
ZCP (区间比较):ZCP S S1 S2 D
六、 移位与循环指令
SFTR (位右移), SFTL (位左移):
ROR (循环右移), ROL (循环左移):
SFR (右移), SFL (左移):
七、 流程控制指令 (CJ, CALL, SRET, IRET, EI, DI, FEND, END)
CJ (条件跳转):CJ Pn
Pn
处执行。CALL (子程序调用):CALL Pn
Pn
为标号)。SRET (子程序返回):
CALL
指令后的下一条指令。FEND (主程序结束):
IRET (中断返回), EI (允许中断), DI (禁止中断):
END (程序扫描结束):
八、 方便指令 (应用指令)
ALT (交替输出):
HSC (高速计数器):
PLSY (脉冲输出):
PLSR (加减速脉冲输出):
DRVA (绝对定位), DRVI (增量定位):
RS (串行通信):
FROM/TO (缓冲存储器读写):
九、 模拟量指令 (通过FROM/TO配合特殊模块)
虽然严格来说不是单一指令,但对模拟量处理至关重要:
读模拟量输入:
FROM
指令读取模拟量输入模块对应通道的BFM(AD转换值)。写模拟量输出:
TO
指令将数据写入模拟量输出模块对应通道的BFM(设置DA输出值)。十、 时钟与比较指令
TCMP (时间比较):
TZCP (时间段比较):
重要说明:
操作数表示:S
D
通常代表目标操作数(Destination, 如D10, Y0, M0等)。n
通常代表数量或数据长度。数据长度:
D
表示32位操作(如MOV
是16位,DMOV
是32位)。指令符号后加P
表示脉冲执行型(只在驱动条件从OFF变ON的上升沿执行一次)。例如:DMOVP D0 D10
(在上升沿将D0/D1的32位值传到D10/D11)。支持情况:
编程手册:最全面、最准确的指令信息源是您所使用的具体三菱PLC型号的《编程手册》或《指令手册》。
总结:
三菱PLC提供了从最基本的开关量控制到复杂数据处理、高速计数、精密定位、网络通信等全方位的编程指令集。掌握这些核心指令是进行有效PLC程序设计的基础。对于复杂的工程应用,务必深入研读具体型号的官方编程手册,并根据项目需求选择合适的指令进行编程。