Skip to content

指令速查总表 ​

一页列全梯形图里可用的应用指令:助记符、功能、操作数、写法示例、占用步数、位宽(16 位还是 32 位)和 FNC 号。

上位机「梯形图」编辑器的指令库共 291 条(其中 93 条可以直接从指令面板拖入,其余只作参考)。FNC 号以三菱 FX3U 指令体系为准 —— 本系列设备兼容 FX3U,排查三菱手册或对照资料时可直接使用这一列。

实用例程 ​

梯形图:与下方指令表同一段程序

LD M8000
MOV D8031 D0
MOV D8032 D2
END

把上面的地址、主题、引脚替换成你项目里的即可。

怎么读这张表 ​

  • 分节按功能分类(25 节),与编辑器里「指令」侧栏基本一致;找指令先按分类翻,不确定分类就搜助记符。只有一处不照抄面板:面板把一部分 32 位指令单独堆进了「双字/扩展/补充指令」那一类,本页不这样 —— 见下一条。
  • 16 位与 32 位成对的指令排在一起:32 位那条(D 前缀)紧跟在它的 16 位版下面,PLSY 与 DPLSY、TO 与 DTO、WOR 与 DWOR 都是这样,成对看步数和操作数差别最直观。全表 49 组成对的都按这条排(DHCMOV 例外:三菱印的名字本身就带 D,它没有不带 D 的另一条)。32 位版只在页末那张「只能在指令表里敲」的补充表里列着的(见「面板里搜得到、但只能看说明不能拖入的指令」一节)(DPLSR、DZRN、DPLSV、DDRVI、DDRVA 等 —— 上位机面板里没有这一条,拖不动,只能在指令表敲),它的 16 位行里会写明去哪儿找。
  • 位宽这一列说这条指令按 16 位还是 32 位处理数据,取值来自上位机/固件自己的指令表(不是抄来的资料),并由 npm run check:layout 逐格对账。16 位 = 这条按 16 位算,它另有一条 32 位版(紧跟在同一节的下一行);32 位 = 这条指令按 32 位处理数据,源和目标各占两个数据寄存器,步数约是 16 位版的两倍。它有两种来源:① 真正的「16 位指令的 32 位版」—— 同节上一行是 16 位版、助记符加 D(如 MOV→DMOV);② 本机只有 32 位一种形态、名字写成 D 开头的指令(浮点四则/转换、三角与对数函数、高速计数比较),它们没有独立的 16 位兄弟指令,「写 D」是这条指令自己的写法,不是「16 位加 D」;32 位(无 16 位版) = 名字本身带 D、且本机确无任何 16 位版的极个别指令(目前只有 DHCMOV,FNC 197)。它与上一类(如 DEMOV/DSIN/DHSCS)外观相似,区别在于它连「加 D 变 32 位」的来源都不存在,所以单列一类;— = 触点、线圈、块、栈、步进、主控这类基本指令,操作的是位元件,本来就不分 16/32 位。名字以 D 开头不等于 32 位形态:DRVI/DRVA(相对/绝对定位)、DIS(4 位分离)、DSW(数字开关)、DUTY(占空比输出)都是三菱印的原名,16 位;它们各自的 32 位版是 DDRVI/DDRVA(在页末那张补充表里)。
  • 操作数里 S=源、D=目标、n=点数/长度,具体能填哪些软元件见各指令的详解页。
  • 步数 = 这条指令在程序里占用的步数(一个操作码/操作数占 1 步),算程序容量时用;※ 表示该值来自指令表标注、未经运行时逐条确认,用在关键场合前请实测一次。基本触点/线圈类的步数随软元件范围变化,见 2.7 指令步数。
  • 一条指令只有一个名字,以三菱 FX3U 的叫法为准。 浮点四则与转换(DEADD/DECMP/DEMOV/DESTR/DEVAL …)、三角与对数(DSIN/DCOS/DASIN/DDEG/DEXP …)、高速计数比较(DHSCS/DHSCR/DHSZ)在本机只有 32 位形态,三菱印的就是本表这一列名字。手册正文常把这些写成不带 D 的短名(EADD/ECMP/EMOV/SIN/HSCS…),那只是"实数运算"的行文称呼、不是指令名 —— GX Works2 显示与导出的都是本表这一列(带 D)。编码器两种写法都接受,编出来完全一样,本站不再并列。唯一的例外是 DHCMOV(FNC 197)—— 三菱印的名字本身就带 D,照本表敲 DHCMOV 就对了。
  • FNC 号是三菱 FX3U 体系里功能指令的编号。32 位用法不占新的 FNC 号:在助记符前加 D 前缀即可(如 DMOV 仍是 FNC 12),下表 32 位行标注 (D)。三菱不编号的基本指令(触点、线圈、栈操作等)标 基本。
  • 状态列:空白 = 正常可用;加粗的都带注意事项。
状态标注意味着什么
(空白)正常可用。
运行时无动作程序能编进去、设备也认得这条指令,但运行时什么都不做。共 20 条,详见本页末尾清单。
基本三菱 FX 体系的基本指令(触点/线圈/栈/步进/主控),不占 FNC 号。

动手写程序前先看这一条

有 20 条指令运行时无动作:程序编得进去、设备也认得,但运行时什么都不做。列表见本页末尾「运行时无动作的指令」。

全表 ​

基本触点指令 ​

共 4 条。

指令位宽功能操作数示例步数FNC状态详解
LD
常开
—读取常开触点状态,触点闭合时为 ONX/Y/M/S/T/C 位元件LD X0见 2.7基本2.1 详解
LDI
常闭
—读取常闭触点状态,触点断开时为 ONX/Y/M/S/T/C 位元件LDI X0见 2.7基本2.1 详解
LDP
上升沿
—检测触点由 OFF→ON 的上升沿,仅一个扫描周期为 ONX/Y/M/S 位元件LDP X0见 2.7基本2.1 详解
LDF
下降沿
—检测触点由 ON→OFF 的下降沿,仅一个扫描周期为 ONX/Y/M/S 位元件LDF X0见 2.7基本2.1 详解

基本线圈指令 ​

共 5 条。

指令位宽功能操作数示例步数FNC状态详解
OUT—驱动输出线圈,前面回路导通时线圈 ONY/M/S/T/C 位元件OUT Y0见 2.7基本3.1 详解
SET—置位:条件成立后线圈保持 ON,需 RST 复位Y/M/S 位元件SET Y0见 2.7基本2.3 详解
RST—复位:清零位元件/字元件,或复位定时器计数器Y/M/S/T/C/D 元件RST Y0见 2.7基本2.3 详解
PLS
上升沿脉冲
—条件由 OFF→ON 时输出一个扫描周期的脉冲Y/M 位元件PLS M0见 2.7基本2.3 详解
PLF
下降沿脉冲
—条件由 ON→OFF 时输出一个扫描周期的脉冲Y/M 位元件PLF M0见 2.7基本2.3 详解

基本逻辑/栈指令 ​

共 10 条。

指令位宽功能操作数示例步数FNC状态详解
AND—串联常开触点位元件AND X1见 2.7基本2.1 详解
ANI—串联常闭触点位元件ANI X1见 2.7基本2.1 详解
OR—并联常开触点位元件OR Y1见 2.7基本2.1 详解
ORI—并联常闭触点位元件ORI Y1见 2.7基本2.1 详解
ANB—块串联:两个逻辑块串联无ANB见 2.7基本2.2 详解
ORB—块并联:两个逻辑块并联无ORB见 2.7基本2.2 详解
INV—取反:将前一步运算结果取反无INV见 2.7基本2.4 详解
MPS—进栈:保存当前运算结果无MPS见 2.7基本2.2 详解
MRD—读栈:读栈顶结果无MRD见 2.7基本2.2 详解
MPP—出栈:读栈顶并弹出无MPP见 2.7基本2.2 详解

数据传送 ​

共 13 条。

指令位宽功能操作数示例步数FNC状态详解
MOV
传送
16 位将源数据 S 传送到目标 D(16 位)源 S, 目标 DMOV K100 D05FNC 124.2 详解
DMOV32 位32 位数据传送,占用 D 与 D+1源 S, 目标 DDMOV D0 D109FNC 12 (D)4.2 详解
CML
取反传送
16 位将 S 按位取反后送入 D源 S, 目标 DCML D0 D105FNC 144.2 详解
DCML32 位32 位取反传送源 S, 目标 DDCML D0 D109FNC 14 (D)4.2 详解
SMOV
位传送
16 位按 BCD 位方式移位传送指定位数源 S, 目标 D, m1, m2, nSMOV D0 K4 K2 D10 K311FNC 134.2 详解
SWAP
字节交换
16 位高低字节互换(16 位)操作数 DSWAP D03FNC 1475.8 详解
DSWAP32 位32 位高低字节互换操作数 DDSWAP D05FNC 147 (D)5.11 详解
XCH
交换
16 位交换两个元件的数据D1, D2XCH D0 D105FNC 174.2 详解
DXCH32 位32 位交换S, DDXCH D0 D29FNC 17 (D)4.2 详解
BMOV
成批传送
16 位把 S 起始 n 个元件批量传送到 D源 S, 目标 D, 点数 nBMOV D0 D10 K57FNC 154.2 详解
FMOV
多点传送
16 位把 S 的值填充到 D 起始 n 个元件(批量清零/赋初值常用)源 S, 目标 D, 点数 nFMOV K0 D0 K107FNC 164.2 详解
DFMOV32 位32 位多点传送(将 S 起的 n 个双字成批复制到 D 起)S(源), D(目标), n(点数)DFMOV D0 D10 K513FNC 16 (D)4.2 详解
ZRST
区间复位
16 位把 [D1, D2] 范围内的同类型元件全部复位(初始化常用)起始 D1, 结束 D2(同类元件)ZRST D0 D95FNC 405.2 详解

数据比较 ​

共 4 条。

指令位宽功能操作数示例步数FNC状态详解
CMP
比较
16 位比较 S1 与 S2,结果输出到 D 起始的 3 个位元件(>/=/<)S1, S2, 结果 DCMP D0 K100 M07FNC 104.2 详解
DCMP32 位32 位数据比较S1, S2, 结果 DDCMP D0 D10 M013FNC 10 (D)4.2 详解
ZCP
区间比较
16 位判断 S3 是否在 [S1, S2] 范围内下限 S1, 上限 S2, 值 S3, 结果 DZCP K10 K100 D0 M09FNC 114.2 详解
DZCP32 位32 位区间比较下限 S1, 上限 S2, 值 S3, 结果 DDZCP D0 D2 D4 M017FNC 11 (D)4.2 详解

实用例程 ​

梯形图:与下方指令表同一段程序

LD M8002
MOV K0 D0
MOV K0 D1
LD M8000
CMP D8031 K960 M0
MPS
AND M0
SET M10
MPP
CMP D8032 K890 M20
AND M20
SET M30
LD M10
OUT T0 K300
MOV K1 D0
AND T0
MOV K0 D0
RST M10
LD M30
OUT T1 K300
MOV K1 D1
AND T1
MOV K0 D1
RST M30
END

把上面的地址、主题、引脚替换成你项目里的即可。

算术运算 ​

共 18 条。

指令位宽功能操作数示例步数FNC状态详解
ADD16 位S1 + S2 → D(16 位加法)被加数 S1, 加数 S2, 结果 DADD D0 D2 D47FNC 204.3 详解
DADD32 位32 位加法S1, S2, 结果 DDADD D0 D2 D413FNC 20 (D)4.3 详解
SUB16 位S1 − S2 → D(16 位减法)被减数 S1, 减数 S2, 结果 DSUB D0 D2 D47FNC 214.3 详解
DSUB32 位32 位减法S1, S2, 结果 DDSUB D0 D2 D413FNC 21 (D)4.3 详解
MUL16 位S1 × S2 → D(结果占 32 位)被乘数 S1, 乘数 S2, 结果 DMUL D0 D2 D47FNC 224.3 详解
DMUL32 位32 位乘法(结果占 64 位)S1, S2, 结果 DDMUL D0 D2 D413FNC 22 (D)4.3 详解
DIV16 位S1 ÷ S2 → D(商与余数)被除数 S1, 除数 S2, 结果 DDIV D0 D2 D47FNC 234.3 详解
DDIV32 位32 位除法S1, S2, 结果 DDDIV D0 D2 D413FNC 23 (D)4.3 详解
INC16 位目标 D 自增 1操作数 DINC D03FNC 244.3 详解
DINC32 位32 位自增 1操作数 DDINC D05FNC 24 (D)4.3 详解
DEC16 位目标 D 自减 1操作数 DDEC D03FNC 254.3 详解
DDEC32 位32 位自减 1操作数 DDDEC D05FNC 25 (D)4.3 详解
NEG16 位求补码(取负数)操作数 DNEG D03FNC 294.3 详解
DNEG32 位32 位求补码操作数 DDNEG D05FNC 29 (D)4.3 详解
MEAN
求平均值
16 位求 n 个数据的平均值源 S, 目标 D, 个数 nMEAN D0 D10 K37FNC 455.2 详解
DMEAN32 位32 位求平均值源 S, 目标 D, 个数 nDMEAN D0 D10 K313FNC 45 (D)5.2 详解
SQR
求平方根
16 位求平方根源 S, 目标 DSQR D0 D105FNC 485.2 详解
DSQR32 位32 位求平方根源 S, 目标 DDSQR D0 D109FNC 48 (D)5.2 详解

实用例程 ​

梯形图:与下方指令表同一段程序

LD M8000
MOV K2004 D8126
LD M8000
EXTR K9600 K0 K81 K2
LD M8000
MOV K2008 D8126
LDP M8013
INC D94
LD>= D94 K5
MOV K0 D94
LD= D94 K1
EXTR H103 H56 K1 D96
LD= D94 K2
EXTR H203 H56 K1 D98
LD M8000
ADD D96 D98 D100
LD M8000
MOV D4 D9
MOV D5 D8
END

把上面的地址、主题、引脚替换成你项目里的即可。

逻辑运算 ​

共 10 条。

指令位宽功能操作数示例步数FNC状态详解
WAND16 位按位逻辑与:S1 AND S2 → D(32 位版写 DWAND,在「双字/扩展/补充指令」组)S1, S2, 结果 DWAND D0 D2 D47FNC 264.3 详解
DWAND32 位32 位字逻辑与S1, S2, DDWAND D0 D2 D413FNC 26 (D)4.3 详解
WOR16 位按位逻辑或:S1 OR S2 → D(32 位版写 DWOR)S1, S2, 结果 DWOR D0 D2 D47FNC 274.3 详解
DWOR32 位32 位字逻辑或S1, S2, DDWOR D0 D2 D413FNC 27 (D)4.3 详解
WXOR16 位按位异或:S1 XOR S2 → D(32 位版写 DWXOR)S1, S2, 结果 DWXOR D0 D2 D47FNC 284.3 详解
DWXOR32 位32 位字逻辑异或S1, S2, DDWXOR D0 D2 D413FNC 28 (D)4.3 详解
BON
位判定
16 位判断 S 的第 n 位状态输出到 D源 S, 位 n, 目标 DBON D0 K4 M07FNC 445.2 详解
DBON32 位32 位位判定源 S, 位 n, 目标 DDBON D0 K20 M013FNC 44 (D)5.2 详解
SUM
ON 位计数
16 位统计 S 中处于 ON 的位个数存入 D源 S, 目标 DSUM D0 D105FNC 435.2 详解
DSUM32 位32 位统计 ON 位数(结果送 D)S(源首址), D(结果)DSUM D0 D109FNC 43 (D)5.2 详解

数据转换 ​

共 10 条。

指令位宽功能操作数示例步数FNC状态详解
BIN
BCD→BIN
16 位BCD 码转换成二进制数源 S, 目标 DBIN D0 D105FNC 194.2 详解
DBIN32 位32 位 BCD → BIN源 S, 目标 DDBIN D0 D109FNC 19 (D)4.2 详解
BCD
BIN→BCD
16 位二进制数转换成 BCD 码源 S, 目标 DBCD D0 D105FNC 184.2 详解
DBCD32 位32 位 BIN → BCD源 S, 目标 DDBCD D0 D109FNC 18 (D)4.2 详解
FLT
整数→浮点
16 位整数转换成二进制浮点数源 S, 目标 DFLT D0 D105FNC 495.7 详解
DFLT32 位32 位整数 → 浮点数源 S, 目标 DDFLT D0 D109FNC 49 (D)5.7 详解
INT
浮点→整数
16 位二进制浮点数转换成二进制整数(舍去小数)源 S, 目标 DINT D0 D105FNC 1295.7 详解
DINT32 位32 位浮点数 → 整数源 S, 目标 DDINT D0 D109FNC 129 (D)5.11 详解
DECO
解码
16 位把 S 的第 n 位状态展开到 D 起始 2^n 个位元件源 S, 目标 D, 位数 nDECO X0 M0 K37FNC 415.2 详解
ENCO
编码
16 位把 S 起始 2^n 位中 ON 的最高位序号存入目标源 S, 目标 D, 位数 nENCO X0 D0 K37FNC 425.2 详解

实用例程 ​

DMOV D25 D27
DEADD D26 E0 D27
AND M8029
RST M45
LD= K7 D150
SET M40
SET M41
SET M42
SET M43
SET M44
SET M45
MOV K0 D150
LD M8000
MOV K30 D80
FLT D80 D82
DECMP D22 D82 M18
LDI M10
ANI M11
INV
OUT M16
LD M8000
MOV K30 D84
FLT D84 D86
DECMP D2 D86 M10
LD M8000
MOV K30 D88
FLT D88 D90
DECMP D2 D90 M11

把上面的地址、主题、引脚替换成你项目里的即可。

脉冲/扩展 ​

共 20 条。

指令位宽功能操作数示例步数FNC状态详解
PLSY
脉冲输出
16 位按指定频率与脉冲数输出脉冲(32 位版 DPLSY 就在下一行)频率 S1, 脉冲数 S2, 输出 YPLSY K1000 K100 Y07FNC 575.3 详解
DPLSY32 位32 位指定频率脉冲输出(PLSY 的 32 位版)S1(频率), S2(脉冲数), D(输出Y)DPLSY D0 D2 Y013FNC 57 (D)5.3 详解
PWM
脉宽调制
16 位PWM 脉宽调制输出脉宽 S1, 周期 S2, 输出 YPWM K50 K100 Y07FNC 585.3 详解
DRVI
相对定位
16 位相对定位(增量方式驱动)(32 位版 DDRVI 见本页末尾「面板里搜得到、但只能看说明不能拖入的指令」那张表)脉冲数 S1, 频率 S2, 脉冲输出 Y, 方向输出DRVI K10000 K5000 Y0 Y49FNC 1585.8 详解
DRVA
绝对定位
16 位绝对定位(绝对方式驱动)(32 位版 DDRVA 见本页末尾「面板里搜得到、但只能看说明不能拖入的指令」那张表)目标位置 S1, 频率 S2, 脉冲输出 Y, 方向输出DRVA K20000 K5000 Y0 Y49FNC 1595.8 详解
ZRN
原点回归
16 位回到原点位置(32 位版 DZRN 见本页末尾「面板里搜得到、但只能看说明不能拖入的指令」那张表)回归速度 S1, 爬行速度 S2, 近点输入 S3, 脉冲输出 YZRN K5000 K500 X0 Y09FNC 1565.8 详解
PLSV
可变速脉冲
16 位输出频率可随时更改的脉冲(32 位版 DPLSV 见本页末尾「面板里搜得到、但只能看说明不能拖入的指令」那张表)速度 S1, 脉冲输出 Y, 方向输出PLSV K3000 Y0 Y47FNC 1575.8 详解
DSZR16 位带 DOG 搜索的原点回归近点 DOG 输入 S1, 零点 Z 相输入 S2, 脉冲输出 Y, 方向输出DSZR X0 X1 Y0 Y49FNC 1505.8 详解
FROM
BFM 读出
16 位从特殊功能模块缓冲区读取数据模块 m1, 缓冲 m2, 目标 D, 点数 nFROM K0 K29 D0 K19FNC 786.3 详解
DFROM32 位32 位从特殊功能模块缓冲区读取(FROM 的 32 位版)模块 m1, 缓冲 m2, 目标 D, 点数 nDFROM K0 K29 D0 K117FNC 78 (D)6.3 详解
TO
BFM 写入
16 位向特殊功能模块缓冲区写入数据模块 m1, 缓冲 m2, 源 S, 点数 nTO K0 K29 D0 K19FNC 791.10 详解
DTO32 位32 位向特殊功能模块缓冲区写入(TO 的 32 位版)模块 m1, 缓冲 m2, 源 S, 点数 nDTO K0 K29 D0 K117FNC 79 (D)6.3 详解
REF
IO 刷新
16 位立即刷新以 S 起始的 n 个 I/O 点(默认扫完才刷新,需即时生效时用)刷新起始 S, 点数 nREF X0 K85FNC 50运行时无动作
程序编得进去,但运行时没有动作
5.3 详解
REFF
滤波调整
16 位设定所有 X 输入的滤波时间 = n ms(≤60)滤波时间 n(ms)REFF K103FNC 515.3 详解
TRD
读时钟
16 位读取实时时钟数据目标 DTRD D03FNC 1665.8 详解
TWR
写时钟
16 位写入实时时钟数据源 STWR D03FNC 1675.8 详解
ANS
报警器置位
16 位信号报警器置位信号 S, 时间 m, 状态 DANS T0 K10 S9007※FNC 465.2 详解
ANR
报警器复位
16 位信号报警器复位(无操作数)ANR1FNC 475.2 详解
ALT
交替输出
16 位条件每次由 OFF→ON 时目标状态翻转(常用脉冲型 ALTP,避免条件保持时每个扫描都翻转)操作数 D(Y/M 位元件)ALT Y03FNC 665.4 详解
WDT
看门狗刷新
16 位程序很长时在中间插入,防止扫描周期超时(无操作数)WDT1FNC 74.1 详解

程序控制 ​

共 14 条。

指令位宽功能操作数示例步数FNC状态详解
END—程序结束:主程序执行到此返回,必须独占一行且直连左母线(无操作数)END见 2.7基本4.1 详解
FEND16 位主程序结束:主程序与子程序的分界(无操作数)FEND见 2.7FNC 64.1 详解
CJ
条件跳转
16 位条件成立时跳到 Pn 标号处执行,跳过中间程序段跳转目标 PnCJ P103FNC 04.1 详解
CALL
子程序调用
16 位跳到 Pn 子程序,遇 SRET 返回子程序标号 PnCALL P203FNC 14.1 详解
SRET
子程序返回
16 位与 CALL 配对使用(无操作数)SRET1FNC 24.1 详解
IRET
中断返回
16 位中断子程序末尾必须有(无操作数)IRET1FNC 34.1 详解
EI
开中断
16 位允许响应中断(无操作数)EI1FNC 44.1 详解
DI
关中断
16 位禁止响应中断(无操作数)DI1FNC 54.1 详解
FOR
循环开始
16 位FOR~NEXT 之间的程序循环执行 n 次循环次数 nFOR K52※FNC 84.1 详解
NEXT
循环结束
16 位与 FOR 配对使用(无操作数)NEXT2※FNC 94.1 详解
MC
主控开始
—公共条件控制 N~MCR 间多条母线(条件断开时其间输出全部 OFF)嵌套级号 Nn + 主控继电器 M(MC Nn Mn,级号与配对的 MCR Nn 一致)MC N0 M100见 2.7基本2.6 详解
MCR
主控结束
—与 MC 配对使用嵌套级 NnMCR N0见 2.7基本2.6 详解
STL
步进开始
—进入 Sn 状态(步进顺控,状态继电器 S)状态 SnSTL S0见 2.7基本4.1 详解
RET
步进结束
—退出步进返回普通母线(整个程序只需一个 RET)(无操作数)RET见 2.7基本4.1 详解

通信/串口指令 ​

共 5 条。

指令位宽功能操作数示例步数FNC状态详解
ADPRW
MODBUS 读写
16 位MODBUS 主站读写(FNC 276)。工作模式由特殊寄存器 D8126 决定(如 1006=脉冲模式),详见 6.3从站地址, 功能码(1/2读线圈/离散输入, 3/4读保持/输入寄存器, 5/6/15/16写), 寄存器地址(0 基), 数据长度, 数据区首址MOV K1007 D8126
ADPRW K1 K3 K0 K2 D100
11FNC 2766.3 详解
EXTR16 位外部设备读写,由 D8126 选定工作模式,详见 6.3合并字(从站地址<<8|功能码,如 H0103=站 1 功能 3), 寄存器地址(0 基), 数据长度, 数据区首址MOV K1007 D8126
EXTR H0103 K0 K2 D100
9FNC 1806.3 详解
DEXTR32 位EXTR 的 32 位数据版,模式表与 EXTR 相同;另有 1004 设定串口工作参数、1027/1028 电表(DLT645) 等模式1004 模式:波特率, 校验方式, 数据位+停止位, 协议+从站地址;其余模式同 EXTRMOV K1004 D8126
DEXTR K9600 K0 K81 K1
17FNC 1816.3 详解
RS
串行传送
16 位串口数据收发,串口参数由 D8120 设定发送起始 S, 发送点数 m, 接收起始 D, 接收点数 nRS D0 K4 D10 K49※FNC 806.3 详解
RS216 位增强串口收发,自动处理发送/接收时序,端口指定为 K1发送起始 S, 发送点数 m, 接收起始 D, 接收点数 n, 端口(须K1)RS2 D0 K4 D10 K4 K111FNC 875.6 详解

时钟/时间指令 ​

共 10 条。

指令位宽功能操作数示例步数FNC状态详解
TCMP16 位时钟数据比较:比较 时S1/分S2/秒S3 与 时间数据S(3字),结果输出到 D 起始的 3 位(>/=/<)时S1, 分S2, 秒S3, 时间数据S(3字), 结果D(3位)TCMP K11 K10 K20 D0 M011FNC 1605.8 详解
TZCP16 位时钟区间比较:判断 比较值S3(3字) 是否在 [下限S1, 上限S2] 区间内,结果占 3 位下限S1(3字), 上限S2(3字), 比较值S3(3字), 结果D(3位)TZCP D20 D30 D0 M39FNC 1615.8 详解
TADD16 位时钟数据加法:S1(3字 时/分/秒) + S2(3字) → D(3字)S1(3字), S2(3字), D(3字)TADD D12 D22 D327FNC 1625.8 详解
TSUB16 位时钟数据减法:S1(3字) − S2(3字) → D(3字)S1(3字), S2(3字), D(3字)TSUB D12 D22 D327FNC 1635.8 详解
HOUR16 位小时计(运行累时):累计条件为 ON 的时间,到达 S 小时后置位 D2目标小时数 S, 当前值 D1(字), 输出 D2(位)HOUR K100 D200 M07※FNC 1695.8 详解
DHOUR32 位32 位小时计(运行累时)目标小时数 S, 当前值 D1(双字), 输出 D2(位)DHOUR K100 D200 M013※FNC 169 (D)5.8 详解
HTOS16 位时:分:秒 → 秒 转换(S 占3字 → D=秒数)源 S(3字), 目标 DHTOS D0 D105FNC 1645.8 详解
DHTOS32 位32 位 时:分:秒 → 秒 转换源 S(3字), 目标 DDHTOS D0 D109FNC 164 (D)5.11 详解
STOH16 位秒 → 时:分:秒 转换(S=秒数 → D 占3字)源 S, 目标 D(3字)STOH D0 D105FNC 1655.8 详解
DSTOH32 位32 位 秒 → 时:分:秒 转换源 S, 目标 D(3字)DSTOH D0 D109FNC 165 (D)5.11 详解

栈/嵌套指令 ​

共 2 条。

指令位宽功能操作数示例步数FNC状态详解
ZPUSH16 位保存变址寄存器等现场数据,供子程序保护现场数据区 S(起始软元件)ZPUSH D03FNC 1022.2 详解
ZPOP16 位恢复 ZPUSH 保存的数据(与 ZPUSH 配对)数据区 SZPOP D03FNC 1032.2 详解

浮点/三角函数 ​

共 11 条。

本族在本机只有 32 位形态(浮点数占两个数据寄存器),三菱给这几条印的名字本身就没有 16 位版,所以本站只用 DSIN、DDEG、DEXP 这一个名字。手册正文与个别老资料里会看到不带 D 的 SIN、DEG、EXP —— 那是行文短名,编码器也接受,编进程序后和上面那条是同一个东西、占同样步数,本站不再并列,写程序请照本表这一列敲。

指令位宽功能操作数示例步数FNC状态详解
DSIN
正弦
32 位二进制浮点数 Sin 运算源 S, 目标 DDSIN D0 D29FNC 1305.7 详解
DCOS
余弦
32 位二进制浮点数 Cos 运算源 S, 目标 DDCOS D0 D29FNC 1315.7 详解
DTAN
正切
32 位二进制浮点数 Tan 运算源 S, 目标 DDTAN D0 D29FNC 1325.7 详解
DASIN32 位浮点反正弦源 S, 目标 DDASIN D0 D29FNC 1335.7 详解
DACOS32 位浮点反余弦源 S, 目标 DDACOS D0 D29FNC 1345.7 详解
DATAN32 位浮点反正切源 S, 目标 DDATAN D0 D29FNC 1355.7 详解
DDEG
弧度→角度
32 位浮点弧度值转换成角度值源 S, 目标 DDDEG D0 D29FNC 1375.7 详解
DRAD
角度→弧度
32 位浮点角度值转换成弧度值源 S, 目标 DDRAD D0 D29FNC 1365.7 详解
DEXP32 位浮点数 e 的指数运算源 S, 目标 DDEXP D0 D29FNC 1245.7 详解
DLOG1032 位浮点数常用对数(以 10 为底)源 S, 目标 DDLOG10 D0 D29FNC 1265.7 详解
DLOGE32 位浮点数自然对数(以 e 为底)源 S, 目标 DDLOGE D0 D29FNC 1255.7 详解

扩展浮点(E/D系列) ​

共 13 条。

指令位宽功能操作数示例步数FNC状态详解
DEADD32 位二进制浮点数加法S1, S2, DDEADD D0 D2 D413FNC 1205.7 详解
DESUB32 位二进制浮点数减法S1, S2, DDESUB D0 D2 D413FNC 1215.7 详解
DEMUL32 位二进制浮点数乘法S1, S2, DDEMUL D0 D2 D413FNC 1225.7 详解
DEDIV32 位二进制浮点数除法S1, S2, DDEDIV D0 D2 D413FNC 1235.7 详解
DESQR32 位二进制浮点数开平方S, DDESQR D0 D29FNC 1275.7 详解
DECMP32 位二进制浮点数比较,结果占 3 位S1, S2, D(结果3位)DECMP D0 D2 M013FNC 1105.7 详解
DEZCP32 位二进制浮点数区间比较,结果占 3 位下限 S1, 上限 S2, 比较值 S3, 结果 D(3位)DEZCP D0 D2 D4 M017FNC 1115.7 详解
DEBCD32 位二进制浮点→十进制浮点S, DDEBCD D0 D29FNC 1185.7 详解
DEBIN32 位十进制浮点→二进制浮点S, DDEBIN D0 D29FNC 1195.7 详解
DEMOV32 位浮点数传送(浮点本身就是 32 位,占 D 与 D+1)S, DDEMOV D0 D49FNC 1145.7 详解
DESTR32 位浮点数→字符串。格式操作数占连续 3 个字(方式 / 总位数 / 小数位数)源 S(浮点), 格式 S2(3字), 目标 DDESTR D10 D20 D10013FNC 1165.9 详解
DEVAL32 位字符串→浮点数。只有 2 个操作数源 S, 目标 D(浮点)DEVAL D100 D109FNC 1175.9 详解
DENEG32 位浮点取负(原位变号)。只有 1 个操作数D(浮点,占2字)DENEG D105FNC 1285.7 详解

字符串指令 ​

共 15 条。

指令位宽功能操作数示例步数FNC状态详解
STR16 位数值→字符串S1(存"所有位数/小数位数"的软元件,占 D 与 D+1), S2(BIN 源), D(字符串目标)STR D0 D10 D207FNC 2005.9 详解
DSTR32 位32 位数值→字符串S1(存位数的软元件), S2(BIN 源), D(字符串目标)DSTR D0 D10 D2013FNC 200 (D)5.9 详解
VAL16 位字符串→数值(BIN)S(字符串), D1(存"位数"的软元件), D2(BIN 目标)VAL D0 D10 D207FNC 2015.9 详解
DVAL32 位字符串→32 位 BINS(字符串), D1(存"位数"的软元件), D2(BIN 目标)DVAL D0 D10 D2013FNC 201 (D)5.11 详解
ASC
字符→ASCII
16 位字符数据转换成 ASCII 码源 S, 目标 DASC D0 D105FNC 765.5 详解
ASCI
HEX→ASCII
16 位十六进制数转换成 ASCII 码源 S, 长度 n, 目标 DASCI D0 K4 D107FNC 825.6 详解
HEX
ASCII→HEX
16 位ASCII 码转换成十六进制数,生成 n 位十六进制源 S, 长度 n, 目标 DHEX D0 K4 D107FNC 835.6 详解
CCD
校验码
16 位计算校验码(总和/奇偶/异或,由 S2 指定)源 S, 长度 n, 结果 DCCD D0 K4 D107FNC 845.6 详解
LEN16 位求字符串长度源 S, 目标 DLEN D0 D105FNC 2035.9 详解
LEFT16 位从左侧取子串源 S, 长度 n, 目标 DLEFT D0 K3 D107FNC 2055.9 详解
RIGHT16 位从右侧取子串源 S, 长度 n, 目标 DRIGHT D0 K3 D107FNC 2045.9 详解
MIDR16 位从中间读取子串源 S, 起始 n, 目标 DMIDR D0 K2 D107FNC 2065.9 详解
MIDW16 位从中间写入子串源 S, 起始 n, 目标 DMIDW D0 K2 D107FNC 2075.9 详解
PR
ASCII 打印
16 位ASCII 码打印(送打印机)源 S, 长度 nPR D0 K45※FNC 77运行时无动作
程序编得进去,但运行时没有动作
5.5 详解
INSTR16 位字符串检索(在 S1 中查找 S2 的位置)源 S1, 检索 S2, 结果 D, 长度 nINSTR D0 D10 D20 K49FNC 2085.9 详解

PID 运算 ​

共 1 条。

指令位宽功能操作数示例步数FNC状态详解
PID
PID 运算
16 位比例-积分-微分控制运算S1(设定值), S2(测定值), S3(参数块首址), D(输出)PID D0 D100 D200 D3009※FNC 887.9 详解

高速计数指令 ​

共 4 条。

指令位宽功能操作数示例步数FNC状态详解
DHSCS32 位高速计数器比较置位(当前值与 S 相等时置位指定输出)S(设定值), C(高速计数器), Y(置位输出)DHSCS K100 C235 Y013FNC 53运行时无动作
程序编得进去,但运行时没有动作
5.3 详解
DHSCR32 位高速计数器比较复位(当前值与 S 相等时复位指定输出)S(设定值), C(高速计数器), Y(复位输出)DHSCR K100 C235 Y013FNC 54运行时无动作
程序编得进去,但运行时没有动作
5.3 详解
DHSZ32 位高速计数器区间比较下限 S1, 上限 S2, C(高速计数器), D(结果3位)DHSZ K100 K1000 C235 M017FNC 55运行时无动作
程序编得进去,但运行时没有动作
5.3 详解
DHCMOV32 位(无 16 位版)高速计数器当前值传送/清零。在本机型上不执行任何动作:固件里对应的处理函数只把三个参数读掉就返回,不做任何传送。要搬高速计数器当前值请改用 DMOV C235 D0,或先与厂家确认S(目标软元件), C(高速计数器), 清零条件位DHCMOV D0 C235 M013FNC 197运行时无动作
请不要依赖它
5.3 详解

移位/循环指令 ​

共 14 条。

指令位宽功能操作数示例步数FNC状态详解
SFTL
位左移
16 位位左移(n2 位源数据移入 n1 位目标区)S(源位), D(目标位), n1(目标位数), n2(源位数)SFTL M0 M10 K4 K49FNC 355.1 详解
SFTR
位右移
16 位位右移S(源位), D(目标位), n1(目标位数), n2(源位数)SFTR M0 M10 K4 K49FNC 345.1 详解
WSFL
字左移
16 位字左移S(源), D(目标), n1(目标字数), n2(源字数)WSFL D0 D10 K4 K29FNC 375.1 详解
WSFR
字右移
16 位字右移S(源), D(目标), n1(目标字数), n2(源字数)WSFR D0 D10 K4 K29FNC 365.1 详解
ROL16 位循环左移D(目标), n(移位数)ROL D0 K45FNC 315.1 详解
DROL32 位32 位循环左移D(目标), n(移位数)DROL D0 K49FNC 31 (D)5.1 详解
ROR16 位循环右移D(目标), n(移位数)ROR D0 K45FNC 305.1 详解
DROR32 位32 位循环右移D(目标), n(移位数)DROR D0 K49FNC 30 (D)5.1 详解
RCL16 位带进位循环左移D(目标), n(移位数)RCL D0 K45FNC 335.1 详解
DRCL32 位32 位带进位循环左移D(目标), n(移位数)DRCL D0 K49FNC 33 (D)5.1 详解
RCR16 位带进位循环右移D(目标), n(移位数)RCR D0 K45FNC 325.1 详解
DRCR32 位32 位带进位循环右移D(目标), n(移位数)DRCR D0 K49FNC 32 (D)5.1 详解
SFWR
FIFO 写入
16 位先入先出写入S(源), D(目标首址), n(长度)SFWR D0 D10 K57FNC 385.1 详解
SFRD
FIFO 读出
16 位先入先出读出S(源首址), D(目标), n(长度)SFRD D0 D10 K57FNC 395.1 详解

I/O 与显示指令 ​

共 11 条。

指令位宽功能操作数示例步数FNC状态详解
SEGD
七段译码
16 位1 位十六进制→7 段显示码S(源), D(输出)SEGD D0 K2Y05FNC 735.5 详解
SEGL
七段显示
16 位带锁存的多位七段显示控制S(源), D(输出首址), n(参数)SEGL D0 K2Y0 K47※FNC 745.5 详解
DSW
数字开关
16 位数字开关读入S(输入), n1, D1(输出), n2, D2(状态)DSW X0 Y0 D0 K19※FNC 72运行时无动作
程序编得进去,但运行时没有动作
5.5 详解
TKY
十键输入
16 位十进制键输入(键盘→BIN)S(输入), D1(结果), D2(状态)TKY X0 D0 M07※FNC 70运行时无动作
程序编得进去,但运行时没有动作
5.5 详解
DTKY32 位32 位十进制键输入S(输入), D1(结果), D2(状态)DTKY X0 D0 M013FNC 70 (D)运行时无动作
程序编得进去,但运行时没有动作
5.5 详解
HKY
十六键输入
16 位十六进制键输入S(键输入起始 X,占 4 点), D1(输出起始 Y,占 4 点), D2(结果), D3(按键信息起始,占 8 点)HKY X0 Y0 D0 M09FNC 71运行时无动作
程序编得进去,但运行时没有动作
5.5 详解
DHKY32 位十六进制键输入(32 位形态)S(键输入起始 X,占 4 点), D1(输出起始 Y,占 4 点), D2(结果), D3(按键信息起始,占 8 点)DHKY X0 Y0 D0 M017FNC 71 (D)运行时无动作
程序编得进去,但运行时没有动作
5.5 详解
ARWS
方向开关
16 位方向开关输入与显示控制S(输入), D1(输出), D2(状态), n(参数)ARWS X0 K2Y0 M0 K09※FNC 75运行时无动作
程序编得进去,但运行时没有动作
5.5 详解
PRUN
八进制传送
16 位位元件按八进制编号成对传送S(源), D(目标)PRUN K1X0 K1Y05FNC 81运行时无动作
程序编得进去,但运行时没有动作
5.6 详解
VRRD
电位器读入
16 位读取模拟电位器当前值S(电位器号 0-7), D(目标)VRRD K1 D05FNC 855.5 详解
VRSC
电位器刻度
16 位读取模拟电位器刻度值(0~10)S(电位器号 0-7), D(目标)VRSC K1 D05FNC 865.5 详解

数据块运算(BK系列) ​

共 8 条。

这 8 条在指令表里只能敲右列那串(BK+、BKCMP=…)。面板上显示什么名字随上位机版本不同: 有的版本显示 BK_ADD 这类自造名字(拖进梯形图照常能用,但把这个名字抄进指令表会被判未知指令)。 要手写指令表、或让 AI 生成指令表程序,一律照右边这一列 —— 它在哪个版本都能编过。

面板上可能显示的名字指令表写法(照这列敲)位宽FNC功能
BK_ADDBK+16 位FNC 192数据块加:S1 与 S2 逐字相加→D,共 n 字 —— 5.9 详解
BK_SUBBK-16 位FNC 193数据块减:S1 与 S2 逐字相减→D —— 5.9 详解
BK_AMOUNTBKCMP=16 位FNC 194数据块相等比较(逐字 ==,结果位) —— 5.9 详解
BK_BIGBKCMP>16 位FNC 195数据块大于比较(逐字 >) —— 5.9 详解
BK_LESSBKCMP<16 位FNC 196数据块小于比较(逐字 <) —— 5.9 详解
BK_NOT_AMOUNTBKCMP<>16 位FNC 197数据块不等于比较(逐字 ≠) —— 5.9 详解
BK_LESS_AMOUNTBKCMP<=16 位FNC 198数据块小于等于比较(逐字 ≤) —— 5.9 详解
BK_BIG_AMOUNTBKCMP>=16 位FNC 199数据块大于等于比较(逐字 ≥) —— 5.9 详解

智能模块/模拟量 ​

共 4 条。

指令位宽功能操作数示例步数FNC状态详解
RD3A
模拟量读
16 位读本机板载 AI 通道值(非外部模块)。操作数顺序:通道, 数据个数, 存入地址偏移量 S(=AI 通道), 数据个数 n, 存入 DRD3A K0 K1 D1007FNC 1765.8 详解
WR3A
模拟量写
16 位写本机板载 AO 通道值(非外部模块)。操作数顺序:通道, 数据个数, 源地址偏移量 S(=AO 通道), 数据个数 n, 源 DWR3A K0 K1 D1007FNC 1775.8 详解
COMRD16 位读软元件注释S(软元件), D(目标)COMRD D0 D105FNC 182运行时无动作
程序编得进去,但运行时没有动作
5.8 详解
CRC16 位计算 CRC 校验码(n 字节数据)S(源首址), n(长度), D(结果)CRC D0 K10 D207FNC 1885.8 详解

其他应用指令 ​

共 27 条。

指令位宽功能操作数示例步数FNC状态详解
SER
数据查找
16 位在 S1 起始 n 字中查找 S2S1(源首址), S2(检索值), D(结果首址), n(点数)SER D0 D10 D20 K59FNC 615.4 详解
DSER32 位32 位数据查找S1(源首址), S2(检索值), D(结果首址), n(点数)DSER D0 D10 D20 K517FNC 61 (D)5.4 详解
SORT
数据排序
16 位数据排序(1 维升序)S(表格首址,占 m1×m2 点), m1(行数 1~32), m2(列数 1~6), D(结果首址), n(按哪一列排)SORT D0 K5 K3 D20 K111FNC 695.4 详解
SORT216 位数据排序(2 维,按行/列)S(表格首址), m1(行数), m2(列数), D(结果首址), n(按哪一列排)SORT2 D0 K5 K3 D20 K111FNC 1495.4 详解
DSORT232 位32 位数据排序(2 维)S(表格首址), m1(行数), m2(列数), D(结果首址), n(按哪一列排)DSORT2 D0 K5 K3 D20 K121FNC 149 (D)5.11 详解
RAMP
斜坡信号
16 位在限定时间内使 D 线性增减到目标值S1(起始值), S2(目标值), D(当前值输出), n(过渡时间=多少个扫描周期)RAMP D0 D10 D20 K109FNC 675.4 详解
ROTC
旋转工作台
16 位旋转工作台控制S(输入), D(输出首址), n1, n2ROTC X0 M0 K4 K29※FNC 68运行时无动作
程序编得进去,但运行时没有动作
5.4 详解
MTR
矩阵输入
16 位矩阵输入(8 行 × n 列键盘扫描)S(输入首址), D1(输出首址), D2(状态首址), n(行数)MTR X0 Y0 M0 K49※FNC 52运行时无动作
程序编得进去,但运行时没有动作
5.3 详解
STMR
特殊定时器
16 位产生闪烁/延迟断开/单脉冲等定时输出S(输入), D(定时器首址), m(设定值), n(方式)STMR X0 T0 K107※FNC 655.4 详解
TTMR
示教定时器
16 位记录输入导通时间,按倍率存入 DS(输入), D(目标)TTMR X0 D05※FNC 645.4 详解
IST
状态初始化
16 位手动/单步/回零/自动等运行模式的初始化管理S(运行模式输入首址), D1(最低状态号), D2(最高状态号)IST X10 S20 S407※FNC 60运行时无动作
程序编得进去,但运行时没有动作
5.4 详解
ABS
ABS 当前值
16 位绝对位置编码器当前值读取S(ABS 数据输入起始,占 3 点), D1(输出信号起始,占 3 点), D2(保存 32 位当前值)ABS X0 Y0 D107FNC 155运行时无动作
程序编得进去,但运行时没有动作
5.8 详解
DABS32 位32 位绝对位置当前值读取S(ABS 数据输入起始,占 3 点), D1(输出信号起始,占 3 点), D2(保存 32 位当前值)DABS X0 Y0 D1013FNC 155 (D)运行时无动作
程序编得进去,但运行时没有动作
5.11 详解
ABSD
凸轮控制
(绝对方式)
16 位按计数器当前值与数据表比较驱动输出S1(计数器), S2(表首址), D(输出首址), n(点数)ABSD C0 D0 M0 K49※FNC 625.4 详解
DABSD32 位32 位凸轮控制(绝对方式)S1(计数器), S2(表首址), D(输出首址), n(点数)DABSD C0 D0 M0 K417FNC 62 (D)5.4 详解
INCD
凸轮控制
(增量方式)
16 位增量方式的凸轮控制S1(计数器), S2(表首址), D(输出首址), n(点数)INCD C0 D0 M0 K49※FNC 635.4 详解
BTOW16 位位→字:n 个位元件合成 1 个字S(位首址), n(位数), D(字)BTOW M0 K4 D07FNC 1425.8 详解
WTOB16 位字→字节:1 个字拆成 n 个字节S(字), D(目标起始), n(个数)WTOB D0 D10 K47FNC 1415.8 详解
GRY
→格雷码
16 位二进制数转换成格雷码S, DGRY D0 D25FNC 1705.8 详解
DGRY32 位32 位二进制数→格雷码S, DDGRY D0 D49FNC 170 (D)5.11 详解
GBIN
格雷码→BIN
16 位格雷码转换成二进制数S, DGBIN D0 D25FNC 1715.8 详解
DGBIN32 位32 位格雷码→二进制数S, DDGBIN D0 D49FNC 171 (D)5.11 详解
LIMIT16 位上下限限位:把 D 限制在 [S1,S2] 区间S1(下限), S2(上限), S3(待限位的输入值), D(限位后的输出)LIMIT D0 D10 D20 D309FNC 2565.10 详解
DLIMIT32 位32 位上下限限位S1(下限), S2(上限), S3(待限位的输入值), D(限位后的输出)DLIMIT D0 D10 D20 D3017FNC 256 (D)5.11 详解
ZONE16 位区域控制:D 落在 [S1,S2] 区间内外时输出不同状态S1(死区下限), S2(死区上限), S3(输入值), D(输出)ZONE D0 D10 D20 D309FNC 2585.10 详解
DZONE32 位32 位区域控制S1(死区下限), S2(死区上限), S3(输入值), D(输出)DZONE D0 D10 D20 D3017FNC 258 (D)5.11 详解
SCL16 位标度变换(按参数表把 BIN 值折算成工程量)S(源), D(目标), n(参数首址)SCL D0 D10 K17FNC 259运行时无动作
程序编得进去,但运行时没有动作
5.10 详解

定位/脉冲指令 ​

共 1 条。

指令位宽功能操作数示例步数FNC状态详解
PLSR
加减速脉冲
16 位带加减速的脉冲输出(梯形加减速)(32 位版 DPLSR 见本页末尾「面板里搜得到、但只能看说明不能拖入的指令」那张表)S1(最高频率), S2(脉冲数), S3(加减速时间), D(输出Y)PLSR D0 D2 D4 Y09FNC 595.3 详解

双字/扩展/补充指令 ​

共 7 条。

指令位宽功能操作数示例步数FNC状态详解
DUTY16 位占空比可调的脉冲输出S1(输出Y), S2(占空比), D(频率)DUTY Y0 D0 D27FNC 1866.1 详解
FDEL16 位删除表中指定位置的数据(后续数据前移),被删掉的值送到第一个操作数D(取出值), S(表首址), n(删除位置)FDEL D0 D10 K37FNC 2105.9 详解
FINS16 位向表中指定位置插入数据(后续数据后移)S(插入值), D(表首址), n(插入位置)FINS D0 D10 K37FNC 2115.9 详解
RND16 位随机数生成(把 D 变成一个随机数)D(结果)RND D03FNC 1845.8 详解
SFL16 位字左移(带进位):D 的 16 位整体左移 n 位,移出的最高位进 M8022D(数据), n(移位数 1~15)SFL D0 K35FNC 2145.9 详解
SFR16 位字右移(带进位):D 的 16 位整体右移 n 位,移出的最低位进 M8022D(数据), n(移位数 1~15)SFR D0 K35FNC 2135.9 详解
SPD
脉冲密度
16 位测定 S2 时间内 S1 输入的脉冲数→D(测速常用)S1(输入X), S2(测定时间ms), D(结果)SPD X0 K100 D07※FNC 565.3 详解

FNC 号的读法 ​

  • 三菱 FX3U 是本设备的兼容基准:本表 FNC 号与三菱 FX3U 手册一致,可直接拿三菱资料对照。32 位用法不占新的 FNC 号,在助记符前加 D 前缀即可,表中以 (D) 标注。
  • 触点、线圈、栈操作、步进、主控属于三菱的「基本指令」,不占 FNC 号,表中标 基本。
  • 浮点/三角函数那一族在本机只有 32 位形态(浮点数占两个数据寄存器),三菱印的名字就是本表这一列(DSIN = FNC 130、DEADD = FNC 120)。手册正文与老资料里常见的 SIN、EADD 是不带 D 的行文短名,编码器也接受,编进去和这一列是同一条、占同样步数,本站不再并列。

占用步数怎么算 ​

一条指令占的步数 = 指令本身 1 步 + 各操作数占的字数。带执行条件的写法(前沿/后沿触发那一类)在条件不成立时要跳过其余操作数,本表的步数已经把这个因素算进去 —— 与别处资料对不上时以本表为准。※ 表示这个数只有指令表标注、未经运行时确认,用到关键场合前请实测一次。

要自己复核本表任何一个数:在上位机的指令表窗口里敲三行 —— 第一行 LD X0,中间只写你要量那一条,末行 END; 下载时显示的整段步数减去 2(LD X0 与 END 各占 1 步)就是那条指令占的步数 (例:LD X0 / DPLSY D0 D2 Y0 / END 整段 15 步 → DPLSY 本身占 13 步)。 2026-10-04 用这个办法量过脉冲输出这一族,其中 PLSR 实为 9 步、PLSV 实为 7 步, 与原先指令表标注的 7/9 正好相反,已按实测改正。

表里没列出来的写法就是没有:上位机「指令」面板里能搜到、但本站不列写法的条目,都是本机型不提供对应功能的(变频器通信、专用定位通道、七段/按键那一类外设的配合),需要时请与厂家确认。

面板名与指令表写法不同的 8 条 ​

见上文「数据块运算(BK系列)」一节的对照表。面板显示 BK_ADD 这类名字的版本(老一些的上位机)里, 照面板名字去手写指令表会被判未知指令 —— 一律照那张表右边一列敲,右列那串在新旧版本里都编得过。

运行时无动作的指令 ​

共 20 条:程序编得进去、设备也认得,但运行时没有任何动作 —— 这几条对应三菱体系里的按键、数字开关、方向开关、打印机、绝对值编码器、高速计数比较等外设功能,本机型不提供这些外设的配合。写程序请先避开它们,确实需要对应功能请先与厂家确认:

REF、PR、DHSCS、DHSCR、DHSZ、DHCMOV、DSW、TKY、HKY、DHKY、ARWS、PRUN、COMRD、ROTC、MTR、IST、ABS、DABS、SCL、DTKY。

面板里搜得到、但只能看说明不能拖入的指令 ​

上位机右侧「指令」面板现在有 291 条,设备认得的助记符基本都能搜到(2026-10-04 之前有 40 多条只在指令表里能敲、面板里根本列不出来,那一档已经补齐)。但面板条目分两种:

  • 能拖进梯形的 93 条 —— 拖拽或双击就落图。
  • 只作参考的 198 条 —— 搜得到、点得开说明,但拖不动、双击也没有反应,这是设计如此不是坏了:落图请在指令表里敲。比较触点(LD=/AND=/OR<=…)、边沿族(ANDP/ANDF/MEP/MEF)、NOP、浮点与三角函数族、字符串族($MOV/$+)、数据块运算(BK+…)、块与栈指令(ANB/ORB/INV/MPS/MRD/MPP —— 梯形图里串联并联由接线表达、栈由拓扑还原,它们没有「落到某一格」的含义)、高速计数比较、定位与智能功能模块通道都在这一档。较新的上位机会在鼠标悬停时直接写明「仅参考(请在指令表中输入)」,没有这句提示的版本同样拖不动 —— 拖不动就说明该去指令表里敲。

敲法照上面「全表」和下面这张补充表 —— 16 位还是 32 位看各行「位宽」那一列;不带 D 的是 16 位、带 D 的是 32 位,浮点与三角函数族只有一个名字(见本页开头那条规则);LD= / AND> / OR<= 这类比较触点的 32 位版写作 LDD= / LDD>。操作数个数与外部资料不一致时,以本表为准。下面这 42 条是「全表」里没单独立行的写法,只能在指令表里敲:

写法位宽状态FNC步数说明
WSUM16 位指令表可敲FNC 1407字块累加和 —— 5.8 详解
DWSUM32 位指令表可敲FNC 140 (D)13字块累加和(32 位) —— 5.8 详解
UNI16 位指令表可敲FNC 14374 位合并 —— 5.8 详解
DIS16 位指令表可敲FNC 14474 位分离 —— 5.8 详解
DABIN16 位指令表可敲FNC 2605ASCII→BIN —— 5.10 详解
DDABIN32 位指令表可敲FNC 260 (D)9ASCII→BIN(32 位) —— 5.11 详解
BINDA16 位指令表可敲FNC 2615BIN→ASCII —— 5.10 详解
DBINDA32 位指令表可敲FNC 261 (D)9BIN→ASCII(32 位) —— 5.11 详解
POP16 位指令表可敲FNC 2127后入先出读 —— 5.9 详解
$+16 位指令表可敲FNC 202—字符串连接 —— 5.9 详解
$MOV16 位指令表可敲FNC 209—字符串传送 —— 5.9 详解
LD=16 位指令表可敲FNC 2245LD 比较触点:等于 —— 5.10 详解
LD>16 位指令表可敲FNC 2255LD 比较触点:大于 —— 5.10 详解
LD<16 位指令表可敲FNC 2265LD 比较触点:小于 —— 5.10 详解
LD<>16 位指令表可敲FNC 2285LD 比较触点:不等于 —— 5.10 详解
LD<=16 位指令表可敲FNC 2295LD 比较触点:小于等于 —— 5.10 详解
LD>=16 位指令表可敲FNC 2305LD 比较触点:大于等于 —— 5.10 详解
AND=16 位指令表可敲FNC 2325AND 比较触点:等于 —— 5.10 详解
AND>16 位指令表可敲FNC 2335AND 比较触点:大于 —— 5.10 详解
AND<16 位指令表可敲FNC 2345AND 比较触点:小于 —— 5.10 详解
AND<>16 位指令表可敲FNC 2365AND 比较触点:不等于 —— 5.10 详解
AND<=16 位指令表可敲FNC 2375AND 比较触点:小于等于 —— 5.10 详解
AND>=16 位指令表可敲FNC 2385AND 比较触点:大于等于 —— 5.10 详解
OR=16 位指令表可敲FNC 2405OR 比较触点:等于 —— 5.10 详解
OR>16 位指令表可敲FNC 2415OR 比较触点:大于 —— 5.10 详解
OR<16 位指令表可敲FNC 2425OR 比较触点:小于 —— 5.10 详解
OR<>16 位指令表可敲FNC 2445OR 比较触点:不等于 —— 5.10 详解
OR<=16 位指令表可敲FNC 2455OR 比较触点:小于等于 —— 5.10 详解
OR>=16 位指令表可敲FNC 2465OR 比较触点:大于等于 —— 5.10 详解
BAND16 位指令表可敲FNC 2579死区控制 —— 5.10 详解
DBAND32 位指令表可敲FNC 257 (D)17死区控制(32 位) —— 5.11 详解
LOADR16 位指令表可敲FNC 2905从 ER 读到 R —— 5.10 详解
SAVER16 位指令表可敲FNC 2917从 R 写入 ER —— 5.10 详解
INITR16 位指令表可敲FNC 2925初始化 R 与扇区 —— 5.10 详解
LOGR16 位指令表可敲FNC 29311数据登录 —— 5.10 详解
RWER16 位指令表可敲FNC 2945R 与 ER 互写 —— 5.10 详解
INITER16 位指令表可敲FNC 2955初始化 ER 扇区 —— 5.10 详解
DPLSR32 位指令表可敲FNC 59 (D)17带加减速脉冲输出(32 位) —— 5.11 详解
DZRN32 位指令表可敲FNC 156 (D)17原点回归(32 位) —— 5.11 详解
DPLSV32 位指令表可敲FNC 157 (D)13可变速脉冲输出(32 位) —— 5.11 详解
DDRVI32 位指令表可敲FNC 158 (D)17相对定位(32 位) —— 5.11 详解
DDRVA32 位指令表可敲FNC 159 (D)17绝对定位(32 位) —— 5.11 详解

32 位扩展写法说明 ​

带 D 的 32 位写法已在各指令详解页或 5.11 32 位扩展指令详解 中给出,不再单独列出。

真机与软 PLC 模拟器的已知差别 ​

软 PLC 模拟器用来离线验证逻辑。下面几条在模拟器和真机上表现不一致,同一段程序可能模拟器上跑不过、真机上却正常:

  • PLSR / DPLSR(带加减速脉冲输出):设备上可用,软 PLC 模拟器上暂时识别不了 —— 先在模拟器上验证其他逻辑,到设备上再跑这条指令,或临时用 PLSY 代替
  • WDT(看门狗刷新)的占用步数与部分外部资料不同,本表按本机型的实际执行值给出

机型差别

本表按 ESP32 系列设备整理。早期板型(STM32F103 等)支持的指令集是更小的子集,不同机型支持范围不一样 —— 给客户写程序前先确认设备型号支持哪些指令,见 机型总览。


指令的完整用法(各软元件取值范围、时序、注意事项)见各章详解页,本页只保证不漏项、不写出不存在的指令。

LPPLC 工业物联网云平台 · 软硬件与云平台全栈自研