本文详细介绍三菱plc功能指令。包含FX0N、FX1S、FX1N、FX2N、FX3NC 等三菱plc的功能指令。
类
|
FNC NO.
|
指令助记符
|
功能说明
|
对应不同型号的PLC
|
FX0S
|
FX0N
|
FX1S
|
FX1N
|
FX2N
FX2NC
|
程
序
流
程
|
00
|
CJ
|
条件跳转
|
√
|
√
|
√
|
√
|
√
|
01
|
CALL
|
子程序调用
|
×
|
×
|
√
|
√
|
√
|
02
|
SRET
|
子程序返回
|
×
|
×
|
√
|
√
|
√
|
03
|
IRET
|
中断返回
|
√
|
√
|
√
|
√
|
√
|
04
|
EI
|
开中断
|
√
|
√
|
√
|
√
|
√
|
05
|
DI
|
关中断
|
√
|
√
|
√
|
√
|
√
|
06
|
FEND
|
主程序结束
|
√
|
√
|
√
|
√
|
√
|
07
|
WDT
|
监视定时器刷新
|
√
|
√
|
√
|
√
|
√
|
08
|
FOR
|
循环的起点与次数
|
√
|
√
|
√
|
√
|
√
|
09
|
NEXT
|
循环的终点
|
√
|
√
|
√
|
√
|
√
|
传
送
与
比
较
|
10
|
CMP
|
比较
|
√
|
√
|
√
|
√
|
√
|
11
|
ZCP
|
区间比较
|
√
|
√
|
√
|
√
|
√
|
12
|
MOV
|
传送
|
√
|
√
|
√
|
√
|
√
|
13
|
SMOV
|
位传送
|
×
|
×
|
×
|
×
|
√
|
14
|
CML
|
取反传送
|
×
|
×
|
×
|
×
|
√
|
15
|
BMOV
|
成批传送
|
×
|
√
|
√
|
√
|
√
|
16
|
FMOV
|
多点传送
|
×
|
×
|
×
|
×
|
√
|
17
|
XCH
|
交换
|
×
|
×
|
×
|
×
|
√
|
18
|
BCD
|
二进制转换成BCD码
|
√
|
√
|
√
|
√
|
√
|
19
|
BIN
|
BCD码转换成二进制
|
√
|
√
|
√
|
√
|
√
|
算
术
与
逻
辑
运
算
|
20
|
ADD
|
二进制加法运算
|
√
|
√
|
√
|
√
|
√
|
21
|
SUB
|
二进制减法运算
|
√
|
√
|
√
|
√
|
√
|
22
|
MUL
|
二进制乘法运算
|
√
|
√
|
√
|
√
|
√
|
23
|
DIV
|
二进制除法运算
|
√
|
√
|
√
|
√
|
√
|
24
|
INC
|
二进制加1运算
|
√
|
√
|
√
|
√
|
√
|
25
|
DEC
|
二进制减1运算
|
√
|
√
|
√
|
√
|
√
|
26
|
WAND
|
字逻辑与
|
√
|
√
|
√
|
√
|
√
|
27
|
WOR
|
字逻辑或
|
√
|
√
|
√
|
√
|
√
|
28
|
WXOR
|
字逻辑异或
|
√
|
√
|
√
|
√
|
√
|
29
|
NEG
|
求二进制补码
|
×
|
×
|
×
|
×
|
√
|
循
环
与
移
位
|
30
|
ROR
|
循环右移
|
×
|
×
|
×
|
×
|
√
|
31
|
ROL
|
循环左移
|
×
|
×
|
×
|
×
|
√
|
32
|
RCR
|
带进位右移
|
×
|
×
|
×
|
×
|
√
|
33
|
RCL
|
带进位左移
|
×
|
×
|
×
|
×
|
√
|
34
|
SFTR
|
位右移
|
√
|
√
|
√
|
√
|
√
|
35
|
SFTL
|
位左移
|
√
|
√
|
√
|
√
|
√
|
36
|
WSFR
|
字右移
|
×
|
×
|
×
|
×
|
√
|
37
|
WSFL
|
字左移
|
×
|
×
|
×
|
×
|
√
|
38
|
SFWR
|
FIFO(先入先出)写入
|
×
|
×
|
√
|
√
|
√
|
39
|
SFRD
|
FIFO(先入先出)读出
|
×
|
×
|
√
|
√
|
√
|
数
据
处
理
|
40
|
ZRST
|
区间复位
|
√
|
√
|
√
|
√
|
√
|
41
|
DECO
|
解码
|
√
|
√
|
√
|
√
|
√
|
42
|
ENCO
|
编码
|
√
|
√
|
√
|
√
|
√
|
43
|
SUM
|
统计ON位数
|
×
|
×
|
×
|
×
|
√
|
44
|
BON
|
查询位某状态
|
×
|
×
|
×
|
×
|
√
|
45
|
MEAN
|
求平均值
|
×
|
×
|
×
|
×
|
√
|
46
|
ANS
|
报警器置位
|
×
|
×
|
×
|
×
|
√
|
47
|
ANR
|
报警器复位
|
×
|
×
|
×
|
×
|
√
|
48
|
SQR
|
求平方根
|
×
|
×
|
×
|
×
|
√
|
49
|
FLT
|
整数与浮点数转换
|
×
|
×
|
×
|
×
|
√
|
高
速
处
理
|
50
|
REF
|
输入输出刷新
|
√
|
√
|
√
|
√
|
√
|
51
|
REFF
|
输入滤波时间调整
|
×
|
×
|
×
|
×
|
√
|
52
|
MTR
|
矩阵输入
|
×
|
×
|
√
|
√
|
√
|
53
|
HSCS
|
比较置位(高速计数用)
|
×
|
√
|
√
|
√
|
√
|
54
|
HSCR
|
比较复位(高速计数用)
|
×
|
√
|
√
|
√
|
√
|
55
|
HSZ
|
区间比较(高速计数用)
|
×
|
×
|
×
|
×
|
√
|
56
|
SPD
|
脉冲密度
|
×
|
×
|
√
|
√
|
√
|
57
|
PLSY
|
指定频率脉冲输出
|
√
|
√
|
√
|
√
|
√
|
58
|
PWM
|
脉宽调制输出
|
√
|
√
|
√
|
√
|
√
|
59
|
PLSR
|
带加减速脉冲输出
|
×
|
×
|
√
|
√
|
√
|
方
便
指
令
|
60
|
IST
|
状态初始化
|
√
|
√
|
|
ASCI
|
16进制数转换成ASCI码
|
×
|
√
|
√
|
√
|
√
|
83
|
HEX
|
ASCI码转换成16进制数
|
×
|
√
|
√
|
√
|
√
|
84
|
CCD
|
校验
|
×
|
√
|
√
|
√
|
√
|
85
|
VRRD
|
电位器变量输入
|
×
|
×
|
√
|
√
|
√
|
86
|
VRSC
|
电位器变量区间
|
×
|
×
|
√
|
√
|
√
|
87
|
-
|
-
|
|
|
|
|
|
88
|
PID
|
PID运算
|
×
|
×
|
√
|
√
|
√
|
89
|
-
|
-
|
|
|
|
|
|
浮
点
数
运
算
|
110
|
ECMP
|
二进制浮点数比较
|
×
|
×
|
×
|
×
|
√
|
111
|
EZCP
|
二进制浮点数区间比较
|
×
|
×
|
×
|
×
|
√
|
118
|
EBCD
|
二进制浮点数→十进制浮点数
|
×
|
×
|
×
|
×
|
√
|
119
|
EBIN
|
十进制浮点数→二进制浮点数
|
×
|
×
|
×
|
×
|
√
|
120
|
EADD
|
二进制浮点数加法
|
×
|
×
|
×
|
×
|
√
|
121
|
EUSB
|
二进制浮点数减法
|
×
|
×
|
×
|
×
|
√
|
122
|
EMUL
|
二进制浮点数乘法
|
×
|
×
|
×
|
×
|
√
|
123
|
EDIV
|
二进制浮点数除法
|
×
|
×
|
×
|
×
|
√
|
127
|
ESQR
|
二进制浮点数开平方
|
×
|
×
|
×
|
×
|
√
|
129
|
INT
|
二进制浮点数→二进制整数
|
×
|
×
|
×
|
×
|
√
|
130
|
SIN
|
二进制浮点数Sin运算
|
×
|
×
|
×
|
×
|
√
|
131
|
COS
|
二进制浮点数Cos运算
|
×
|
×
|
×
|
×
|
√
|
132
|
TAN
|
二进制浮点数Tan运算
|
×
|
×
|
×
|
×
|
√
|
|
147
|
SWAP
|
高低字节交换
|
×
|
×
|
×
|
×
|
√
|
定
位
|
155
|
ABS
|
ABS当前值读取
|
×
|
×
|
√
|
√
|
×
|
156
|
ZRN
|
原点回归
|
×
|
×
|
√
|
√
|
×
|
157
|
PLSY
|
可变速的脉冲输出
|
×
|
×
|
√
|
√
|
×
|
158
|
DRVI
|
相对位置控制
|
×
|
×
|
√
|
√
|
×
|
159
|
DRVA
|
绝对位置控制
|
×
|
×
|
√
|
√
|
×
|
时
钟
运
算
|
160
|
TCMP
|
时钟数据比较
|
×
|
×
|
√
|
√
|
√
|
161
|
TZCP
|
时钟数据区间比较
|
×
|
×
|
√
|
√
|
√
|
162
|
TADD
|
时钟数据加法
|
×
|
×
|
√
|
√
|
√
|
163
|
TSUB
|
时钟数据减法
|
×
|
×
|
√
|
√
|
√
|
166
|
TRD
|
时钟数据读出
|
×
|
×
|
√
|
√
|
√
|
167
|
TWR
|
时钟数据写入
|
×
|
×
|
√
|
√
|
√
|
169
|
HOUR
|
计时仪
|
×
|
×
|
√
|
√
|
|
外
围
设
备
|
170
|
GRY
|
二进制数→格雷码
|
×
|
×
|
×
|
×
|
√
|
171
|
GBIN
|
格雷码→二进制数
|
×
|
×
|
×
|
×
|
√
|
176
|
RD3A
|
模拟量模块(FX0N-3A)读出
|
×
|
√
|
×
|
√
|
×
|
177
|
WR3A
|
模拟量模块(FX0N-3A)写入
|
×
|
√
|
×
|
√
|
×
|
触
点
比
较
|
224
|
LD=
|
(S1)= (S2)时起始触点接通
|
×
|
×
|
√
|
√
|
√
|
225
|
LD>
|
(S1)> (S2)时起始触点接通
|
×
|
×
|
√
|
√
|
√
|
226
|
LD<
|
(S1)< (S2)时起始触点接通
|
×
|
×
|
√
|
√
|
√
|
228
|
LD<>
|
(S1)<> (S2)时起始触点接通
|
×
|
×
|
√
|
√
|
√
|
229
|
LD≦
|
(S1)≦ (S2)时起始触点接通
|
×
|
×
|
√
|
√
|
√
|
230
|
LD≧
|
(S1)≧ (S2)时起始触点接通
|
×
|
×
|
√
|
√
|
√
|
232
|
AND=
|
(S1)= (S2)时串联触点接通
|
×
|
×
|
√
|
√
|
√
|
233
|
AND>
|
(S1)> (S2)时串联触点接通
|
×
|
×
|
√
|
√
|
√
|
234
|
AND<
|
(S1)< (S2)时串联触点接通
|
×
|
×
|
√
|
√
|
√
|
236
|
AND<>
|
(S1)<> (S2)时串联触点接通
|
×
|
×
|
√
|
√
|
√
|
237
|
AND≦
|
(S1)≦ (S2)时串联触点接通
|
×
|
×
|
√
|
√
|
√
|
238
|
AND≧
|
(S1)≧ (S2)时串联触点接通
|
×
|
×
|
√
|
√
|
√
|
240
|
OR=
|
(S1)= (S2)时并联触点接通
|
×
|
×
|
√
|
√
|
√
|
241
|
OR>
|
(S1)> (S2)时并联触点接通
|
×
|
×
|
√
|
√
|
√
|
242
|
OR<
|
(S1)< (S2)时并联触点接通
|
×
|
×
|
√
|
√
|
√
|
244
|
OR<>
|
(S1)<> (S2)时并联触点接通
|
×
|
×
|
√
|
√
|
√
|
245
|
OR≦
|
(S1)≦ (S2)时并联触点接通
|
×
|
×
|
√
|
√
|
√
|
246
|
OR≧
|
(S1)≧ (S2)时并联触点接通
|
×
|
×
|
√
|
√
|
√
|
再介绍FX系列三菱PLC功能指令的数据格式。
1.位元件与字元件
象X、Y、M、S等只处理ON/OFF信息的软元件称为位元件;而象T、C、D等处理数值的软元件则称为字元件,一个字元件由16位二进制数组成。
位元件可以通过组合使用,4个位元件为一个单元,通用表示方法是由Kn加起始的软元件号组成,n为单元数。例如K2 M0表示M0~M7组成两个位元件组(K2表示2个单元),它是一个8位数据,M0为最低位。如果将16位数据传送到不足16位的位元件组合(n<4)时,只传送低位数据,多出的高位数据不传送,32位数据传送也一样。在作16位数操作时,参与操作的位元件不足16位时,高位的不足部分均作0处理,这意味着只能处理正数(符号位为0),在作32位数处理时也一样。被组合的元件首位元件可以任意选择,但为避免混乱,建议采用编号以0结尾的元件,如S10,X0,X20等。
2.数据格式
在FX系列PLC内部,数据是以二进制(BIN)补码的形式存储,所有的四则运算都使用二进制数。二进制补码的最高位为符号位,正数的符号位为0,负数的符号位为1。FX系列PLC可实现二进制码与BCD码的相互转换。
为更精确地进行运算,可采用浮点数运算。在FX系列PLC中提供了二进制浮点运算和十进制浮点运算,设有将二进制浮点数与十进制浮点数相互转换的指令。二进制浮点数采用编号连续的一对数据寄存器表示,例D11和D10组成的32位寄存器中,D10的16位加上D11的低7位共23位为浮点数的尾数,而D11中除最高位的前8位是阶位,最高位是尾数的符号位(0为正,1是负)。10进制的浮点数也用一对数据寄存器表示,编号小数据寄存器为尾数段,编号大的为指数段,例如使用数据寄存器(D1,D0)时,表示数为
10进制浮点数=〔尾数D0〕×10〔指数D1〕
其中:D0,D1的最高位是正负符号位。
|