三菱PLC指令梯型图详解
三菱PLC指令梯型图详解
三菱PLC指令梯型图详解如下:
一、标注说明:
注1:下列未特别标注者,均为十六进制数格式。
注2:p 为寄存器名称编号,pp 为32位寄存器名称编号,表示为十进制数,但在存储格式中以十六进制数 ppp 表示。
注3:R0,R1,R2,R3 为半字节型十六进制数,R0为最低位,依次类推。4位组成一个字。
注4:xx,yy,zz,ww 为字节型十六进制数,xx为最低位,依次类推。
注5:m,n 为数据/地址类型指示,为半字节型十六进制数。
注6:K 为十进制常数。
注7:S,X,Y,T,M(M0-M1535),Mp(扩展,M1536-M3071),C(C0-C199),Cp(32位,C200-C255),M8xxx 为寄存器位(点)元件名称(包含地址)。
注8:N 为嵌套级,最大为 8级(N=0-7)。
注9:D(包含Dx,Dxxxx,D8xxx,Zp,Vp),Dx 地址范围为 D000-D999,Dxxxx 地址范围为 D1000-D7999,D8xxx(包含Zp,Vp)地址范围为 D8000-D8195。
二、寄存器位(点)元件地址 ppp = 0-FFF,其分布如下:
寄存器名称 =位地址 + 偏移量 = 实际地址ppp
S0-1023 =(0-3FF) = 0-3FF
X0-377(八进制) =(0-FF) + 400=400-4FF
Y0-377(八进制) =(0-FF) + 500=500-5FF
T0-511 =(0-1FF)+ 600=600-7FF
M0-1535 =(0-5FF)+ 800=800-DFF
M1536-M3071 =(600-BFF)+ 200=800-DFF
C0-255 =(0-FF) + E00=E00-EFF
M8000-8255 =(0-FF) + F00=F00-FFF
三、存储格式及报文发送格式说明:
存储格式为字型,低在先,高在后(如指令END,指令码为00 0F,存储为0F 00。指令LDX002,指令码为24 02,存储为02 24)。
在报文发送时,以字为单位传送,低字节在先。在字节传送过程中,高位在先,低位在后,转换成 ASCII 码 后传送(即以存储格式传送)。
指令LDX002,指令码为24 02,存储格式为02 24,转换成 ASCII 码传送为30 32 32 34。
注:报文发送方式未经上机验证!
四、三菱指令格式说明:
1、三菱PLC指令格式:
纯单字指令 R3R2R1R0 = 命令
单字指令(含位地址) R3 = 命令,R2R1R0 = ppp
双字指令(含位地址) R3R2R1R0 = 命令,8000+ppp
多字指令:
16位指令(含数据/地址)R3R2R1R0 = 命令,8m00+xx,8n00+yy,.........8m00+xx,8n00+yy 可重复 N次,直至将所有16位数据/地址传送完毕。
32位指令(含数据/地址)R3R2R1R0 = 命令,8m00+xx,8n00+yy,8000+zz,8000+ww,.........8m00+xx,8n00+yy,8000+zz,8000+ww 可重复 N次,直至将所有32位数据/地址传送完毕(如是16位数据/地址,在32位指令应用中,需前面加8000填充,组成32位数)。
注:数据/地址传送时,每次送一字节十六进制数,和命令字 8x00 组合(相加),以字为单位传送。
2、三菱PLC指令命名:
R3 R2 R1 R0(四位十六进制值)
R3 -> 指令定义
应用指令 = 0
P 应用指令 = 1
LD= 2
LDI = 3
AND = 4
ANI = 5
OR= 6
ORI = 7
数据/地址 = 8 (多字指令,第二字及以后有效)
地址 = A (仅对M1536-M3071有效,需加偏移量200)
Pn= B (标号,仅对CJ,CALL指令有效)
OUT = C (仅对Y,M有效)
SET = D (仅对Y,M有效)
RST = E (仅对Y,M有效)
纯单字指令 = F
R2 R1 R0 = 单字指令位元件地址 ppp = 0-FFF
R2 R1 R0 = 基本应用指令 (FNC.No.n+8)*2 ;偶数,可和P应用指令组合
R2 R1 R0 =D 应用指令(FNC.No.n+8)*2 +1;奇数,可和P应用指令组合
注:基本应用指令或 D 应用指令 加偏移量 1000 即为 P 指令。
3、三菱PLC指令基本指令分类:
纯单字指令
END 000F
ANB FFF8
ORB FFF9
MPS FFFA
MRD FFFB
MPP FFFC
INV FFFD
NOP FFFF
单字指令
LD 2000+ppp ;(扩展 Mp除外)
LDI 3000+ppp ;(扩展 Mp除外)
AND 4000+ppp ;(扩展 Mp除外)
ANI 5000+ppp ;(扩展 Mp除外)
OR 6000+ppp ;(扩展 Mp除外)
ORI 7000+ppp ;(扩展 Mp除外)
Pn B000+(N) ; N=0-127
OUT C000+ppp ;(仅对Y,M有效)
SET D000+ppp ;(仅对Y,M有效)
RST E000+ppp ;(仅对Y,M有效)
双字指令
OUT 0002 8000+ppp ;(仅对M8xxx有效)
OUT 0002 A000+ppp ;(仅对Mp有效)
SET 0003 8000+ppp ;(仅对M8xxx有效)
SET 0003 A000+ppp ;(仅对Mp有效)
RST 0004 8000+ppp ;(仅对M8xxx有效)
RST 0004 A000+ppp ;(仅对Mp有效)
OUT 0005 8000+ppp ;(仅对S有效)
SET 0006 8000+ppp ;(仅对S有效)
RST 0007 8000+ppp ;(仅对S有效)
PLS 0008 8000+ppp ;(仅对Y,M有效)
PLF 0009 8000+ppp ;(仅对Y,M有效)
MC 000A 8000+(N) 8000+ppp ;(仅对Y,M有效)
MCR 000B 8000+(N) ; N=0-7
RST 000C 8000+ppp ;(仅对T,C,Cp有效)
RST 000D 8m00+xx8n00+yy;(仅对 D 有效,包含Z,V)
LD 01C2 A000+ppp ;(仅对Mp有效)
LDI 01C3 A000+ppp ;(仅对Mp有效)
AND 01C4 A000+ppp ;(仅对Mp有效)
ANI 01C5 A000+ppp ;(仅对Mp有效)
OR 01C6 A000+ppp ;(仅对Mp有效)
ORI 01C7 A000+ppp ;(仅对Mp有效)
LDP 01CA 8000+ppp ;(扩展 Mp除外)
LDP 01CA A000+ppp ;(仅对 Mp有效)
LDF 01CB 8000+ppp ;(扩展 Mp除外)
LDF 01CB A000+ppp ;(仅对 Mp有效)
ANDP 01CC 8000+ppp ;(扩展 Mp除外)
ANDP 01CC A000+ppp ;(仅对 Mp有效)
ANDF 01CD 8000+ppp ;(扩展 Mp除外)
ANDF 01CD A000+ppp ;(仅对 Mp有效)
ORP 01CE 8000+ppp ;(扩展 Mp除外)
ORP 01CE A000+ppp ;(仅对 Mp有效)
ORF 01CF 8000+ppp ;(扩展 Mp除外)
ORF 01CF A000+ppp ;(仅对 Mp有效)
三字及五字指令
OUTTK 0000+(T)8000+xx 8000+yy
OUTCK 0000+(C)8000+xx 8000+yy
OUTCp K 0000+(Cp) 8000+xx 8000+yy 8000+zz 8000+ww
4、三菱PLC指令应用指令表示法:
基本应用指令=(FNC.No.n+8)*2
D 应用指令 =(FNC.No.n+8)*2 +1
P 应用指令 =(FNC.No.n+8)*2 +1000
例如
ADD 0038
DADD 0039
SUB 003A
DSUB 003B
MUL 003C
DMUL 003D
DIV 003E
DDIV 003F
ADDP 1038
DADDP 1039
SUBP 103A
DSUBP 103B
MULP 103C
DMULP 103D
DIVP 103E
DDIVP 103F
5、三菱PLC应用指令中的数据/地址格式:
16数据/地址格式 = 8m00+xx ,8n00+yy
32数据/地址格式 = 8m00+xx ,8n00+yy ,8000+zz ,8000+ww
位(点)元件地址格式= 8m00+xx ,8n00+yy ,(8000 , 8000) ;16地址去掉括号内的最高二字
三菱应用指令中的数据/地址格式 m,n 说明:
16/32位十进制数据说明 m=0 ,n=0 ;K 以十六进制数表示。
16/32位十六进制数据说明 m=2 ,n=0
位(点)元件地址 说明 m=4 ,n=0 ;bit点, 实际地址=ppp
n=2 ;int点, 4bit,实际地址=ppp
n=4 ;int点, 8bit,实际地址=ppp
n=6 ;int点,12bit,实际地址=ppp
n=8 ;int点,16bit,实际地址=ppp
n=A ;int点,20bit,实际地址=ppp
n=C ;int点,24bit,实际地址=ppp
n=E ;int点,28bit,实际地址=ppp
n=10 ;int点,32bit,实际地址=ppp
D元件地址(注:16位地址去掉最高二字节 ww zz) 实际地址= (地址 - 偏移量)*2
T0-T255 m=6 ,n=2 ;ww zz yy xx =Tx * 2
C0-D234 m=6 ,n=4 ;ww zz yy xx =Cx * 2
D0-D999 m=6 ,n=6 ;ww zz yy xx =Dx * 2
D1000-D7999 m=6 ,n=8 ;ww zz yy xx = (Dxxxx-1000) * 2
D8***(包含Zp,Vp)m=6 ,n=0 ;ww zz yy xx = (D8***-8000) * 2
跳转或调用的标号地址 实际地址= 地址 * 2
P*** m=8 ,n=0 ; yy xx =P*** * 2
五、Zp,Vp实际地址计算:
偏移量
Z 实际地址yy xx = Z 地址 *2 ;Z= p*2 + 1C (p=0)偶地址
V 实际地址yy xx = V 地址 *2 ;V= p*2 + 1C +1 (p=0)奇地址
Zp实际地址yy xx = Zp地址 *2 ;Zp = p*2 + B4 (p=1-7)偶地址
Vp实际地址yy xx = Vp地址 *2 ;Vp = p*2 + B4 +1 (p=1-7)奇地址
Zp,Vp实际地址如下:
D8028 : Z(Z0)
D8029 : V(V0)
D8182 : Z1
D8183 : V1
D8184 : Z2
D8185 : V2
D8186 : Z3
D8187 : V3
D8188 : Z4
D8189 : V4
D8190 : Z5
D8191 : V5
D8192 : Z6
D8193 : V6
D8194 : Z7
D8195 : V7
以下蓝色文字由版主:yy888 于:2009-10-03,09:15:37 加入。下面的 pmw 文件格式整理,作者:dragon045
pmw 文件的格式说明
输入、输出端口号按8进制。程序开始地址:15CH
如:X0-X7 -> 0-7(H) X40-X47 -> 20-27(H) X80-X87 -> 40-47(H)
X10-X17 -> 8-F(H) X50-X57 -> 28-2F(H) X90-X97 -> 48-4F(H)
X20-X27 -> 10-17(H)X60-X67 -> 30-37(H) X100-X107 -> 50-57(H)
X30-X37 -> 18-1F(H)X70-X77 -> 38-3F(H) X110-X117 -> 58-5F(H)
存储格式为:
0E 24
||
|-指令
|
----操作数
指令对应16进制依次为:
X X
| |
| -0:Sx(特殊寄存器、状态寄存器)
| -4: Xx(输入)
| -5: Yx(输出)
| -6: Tx(定时器)
| -8: Mx(数据存储器、辅助继电器)
| -E: Cx(计数器)
|
|----2: LD
|----3: LDI
|----4: AND
|----5: ANI
|----6: OR
|----7: ORI
|----C: OUT
|----D: SET
|--8x 寄存器 00 0C : RST T/C
|--Ex 端口 : RST Y/M
|--E(x>=8)yy : RST M(xyy-800) (M0-M1535)
|--Ax yy 00 04 : RST M(xyy-200) (M1536-M3071)
|--8F xx 00 04 : RST M8xxx (M8000-M8255)
|--86 xx 86 yy 00 0D : RST D(XXYY/2) (D0-D1998)
|--88 xx 86 yy 00 0D : RST D(XXYY/2)+1000 (D1000-D7999)
|--80 xx 86 yy 00 0D : RST D(XXYY/2)+8000 (D8000-D8195)
| |-D8028 :Z0
| |-D8029 :V0
| |-D8182 :Z1
| |-D8183 :V1
| |-D8184 :Z2
| |-D8185 :V2
| |-D8186 :Z3
| |-D8187 :V3
| |-D8188 :Z4
| |-D8189 :V4
| |-D8190 :Z5
| |-D8191 :V5
| |-D8192 :Z6
| |-D8193 :V6
| |-D8194 :Z7
| |-D8195 :V7
|--8x 寄存器 00 07 : RST Sx
|--8x 端口 01 CA : LDP
|--8x 端口 01 CB : LDF
|--8x 端口 01 CC : ANDP
|--8x 端口 01 CD : ANDF
|--8x 端口 01 CE : ORP
|--8x 端口 01 CF : ORF
|--8x 端口 00 08 : PLS
|--8x 端口 00 09 : PLF
|--8x 端口 80 0x 00 0A: MC Nx Yx/Mx
| |-Nx
|
|------------80 0x 00 0B: MCR Nx
| |-Nx
|
|----80 yy 80 xx 06 zz: OUT TzzKyyxx
|----80 yy 80 xx 0E zz: OUT CzzKyyxx
|--FF F8 : ANB
|--FF F9 : ORB
|--FF FA : MPS
|--FF FB : MRD
|--FF FC : MPP
|--FF FD : INV
|--00 0F : END
LD Xxx 24 xx
LD Yxx 25 xx
LD M0-M1535 2x yy LD M(xyy-800)
28 00
2D FF
LD M1536-M3071 Ax yy 01 C2 LD M(xyy-200)
A8 00
AD FF
LD M8000-M8255 2F xx LD Mxx
2F 00
2F FF
LD S0-S999 2x xx LD Sxxx
20 00
23 E7
LD T0-T255 2x xx LD Txx
26 00
26 FF
LD C0-C255 2x xx LD Cxx
2E 00
2E FF
LDP Xxx 84 xx 01 CA
LDP Yxx 85 xx 01 CA
LDP M0-M1535 8x yy 01 CA LDP M(xyy-800)
88 00
8D FF
LDP M1536-M3071 Ax yy 01 CA LDP M(xyy-200)
A8 00
AD FF
LDP M8000-M8255 8F xx 01 CA LDP Mxx
8F 00
8F FF
LDP S0-S999 8x yy 01 CA LDP Sxxx
80 00
83 E7
LDP T0-T255 8x yy 01 CA LDP Txx
86 00
86 FF
LDP C0-C255 8x yy 01 CA LDP Cxx
8E 00
8E FF
LDI Xxx 34 xx
LDI Yxx 35 xx
LDI M0-M1535 3x yy LDI M(xyy-800)
38 00
3D FF
LDI M1536-M3071 Ax yy 01 C3 LDI M(xyy-200)
A8 00
AD FF
LDI M8000-M8255 3F xx LDI Mxx
3F 00
3F FF
LDI S0-S999 3x xx LDI Sxxx
30 00
33 E7
LDI T0-T255 3x xx LDI Txx
36 00
36 FF
LDI C0-C255 3x xx LDI Cxx
3E 00
3E FF
LDF Xxx 84 xx 01 CB
LDF Yxx 85 xx 01 CB
LDF M0-M1535 8x yy 01 CB LDF M(xyy-800)
88 00
8D FF
LDF M1536-M3071 Ax yy 01 CB LDF M(xyy-200)
A8 00
AD FF
LDF M8000-M8255 8F xx 01 CB LDF Mxx
8F 00
8F FF
LDF S0-S999 8x yy 01 CB LDF Sxxx
80 00
83 E7
LDF T0-T255 8x yy 01 CB LDF Txx
86 00
86 FF
LDF C0-C255 8x yy 01 CB LDF Cxx
8E 00
8E FF
AND Xxx 44 xx
AND Yxx 45 xx
AND M0-M1535 4x yy AND M(xyy-800)
48 00
4D FF
AND M1536-M3071 Ax yy 01 C4 AND M(xyy-200)
A8 00
AD FF
AND M8000-M8255 4F xx AND Mxx
4F 00
4F FF
AND S0-S999 4x xx AND Sxxx
40 00
43 E7
AND T0-T255 4x xx AND Txx
46 00
46 FF
AND C0-C255 4x xx AND Cxx
4E 00
4E FF
ANDP Xxx 84 xx 01 CC
ANDP Yxx 85 xx 01 CC
ANDP M0-M1535 8x yy 01 CC ANDP M(xyy-800)
88 00
8D FF
ANDP M1536-M3071 Ax yy 01 CC ANDP M(xyy-200)
A8 00
AD FF
ANDP M8000-M8255 8F xx 01 CC ANDP Mxx
8F 00
8F FF
ANDP S0-S999 8x yy 01 CC ANDP Sxxx
80 00
83 E7
ANDP T0-T255 8x yy 01 CC ANDP Txx
86 00
86 FF
ANDP C0-C255 8x yy 01 CC ANDP Cxx
8E 00
8E FF
ANI Xxx 54 xx
ANI Yxx 55 xx
ANI M0-M1535 5x yy ANI M(xyy-800)
58 00
5D FF
ANI M1536-M3071 Ax yy 01 C5 ANI M(xyy-200)
A8 00
AD FF
ANI M8000-M8255 5F xx ANI Mxx
5F 00
5F FF
ANI S0-S999 5x xx ANI Sxxx
50 00
53 E7
ANI T0-T255 5x xx ANI Txx
56 00
56 FF
ANI C0-C255 5x xx ANI Cxx
5E 00
5E FF
ANDF Xxx 84 xx 01 CD
ANDF Yxx 85 xx 01 CD
ANDF M0-M1535 8x yy 01 CD ANDF M(xyy-800)
88 00
8D FF
ANDF M1536-M3071 Ax yy 01 CD ANDF M(xyy-200)
A8 00
AD FF
ANDF M8000-M8255 8F xx 01 CD ANDF Mxx
8F 00
8F FF
ANDF S0-S999 8x yy 01 CD ANDF Sxxx
80 00
83 E7
ANDF T0-T255 8x yy 01 CD ANDF Txx
86 00
86 FF
ANDF C0-C255 8x yy 01 CD ANDF Cxx
8E 00
8E FF
OR Xxx 64 xx
OR Yxx 65 xx
OR M0-M1535 6x yy OR M(xyy-800)
68 00
6D FF
OR M1536-M3071 Ax yy 01 C6 OR M(xyy-200)
A8 00
AD FF
OR M8000-M8255 6F xx OR Mxx
6F 00
6F FF
OR S0-S999 6x xx OR Sxxx
60 00
63 E7
OR T0-T255 6x xx OR Txx
66 00
66 FF
OR C0-C255 6x xx OR Cxx
6E 00
6E FF
ORP Xxx 84 xx 01 CE
ORP Yxx 85 xx 01 CE
ORP M0-M1535 8x yy 01 CE ORP M(xyy-800)
88 00
8D FF
ORP M1536-M3071 Ax yy 01 CE ORP M(xyy-200)
A8 00
AD FF
ORP M8000-M8255 8F xx 01 CE ORP Mxx
8F 00
8F FF
ORP S0-S999 8x yy 01 CE ORP Sxxx
80 00
83 E7
ORP T0-T255 8x yy 01 CE ORP Txx
86 00
86 FF
ORP C0-C255 8x yy 01 CE ORP Cxx
8E 00
8E FF
ORI Xxx 74 xx
ORI Yxx 75 xx
ORI M0-M1535 7x yy ORI M(xyy-800)
78 00
7D FF
ORI M1536-M3071 Ax yy 01 C7 ORI M(xyy-200)
A8 00
AD FF
ORI M8000-M8255 7F xx ORI Mxx
7F 00
7F FF
ORI S0-S999 7x xx ORI Sxxx
70 00
73 E7
ORI T0-T255 7x xx ORI Txx
76 00
76 FF
ORI C0-C255 7x xx ORI Cxx
7E 00
7E FF
ORF Xxx 84 xx 01 CF
ORF Yxx 85 xx 01 CF
ORF M0-M1535 8x yy 01 CF ORF M(xyy-800)
88 00
8D FF
ORF M1536-M3071 Ax yy 01 CF ORF M(xyy-200)
A8 00
AD FF
ORF M8000-M8255 8F xx 01 CF ORF Mxx
8F 00
8F FF
ORF S0-S999 8x yy 01 CF ORF Sxxx
80 00
83 E7
ORF T0-T255 8x yy 01 CF ORF Txx
86 00
86 FF
ORF C0-C255 8x yy 01 CF ORF Cxx
8E 00
8E FF
PLS Yxx 85 xx 00 08
PLS M0-M1535 8x yy 00 08 PLS M(xyy-800)
88 00
8D FF
PLS M1536-M3071 Ax yy 00 08 PLS M(xyy-200)
A8 00
AD FF
PLF Yxx 85 xx 00 09
PLF M0-M1535 8x yy 00 09 PLF M(xyy-800)
88 00
8D FF
PLF M1536-M3071 Ax yy 00 09 PLF M(xyy-200)
A8 00
AD FF
OUT Yxx C5 xx
OUT M0-M1535 Cx yy OUT M(xyy-800)
C8 00
CD FF
OUT M1536-M3071 Ax yy 00 02 OUT M(xyy-200)
A8 00
AD FF
OUT M8000-M8255 8F xx 00 02 OUT Mxx
8F 00
8F FF
OUT S0-S999 8x xx 00 05
80 00
83 E7
OUT T0-T255 80 xx 80 yy 06 zz OUT Tzz Kxxyy
OO
FF
OUT C0-C255 80 xx 80 yy 0E zz OUT CzzKxxyy
OO
FF
MC Ny Yxx 85 0y 80 xx 00 0A
MC Ny M0-M1535 8x yy 80 yy 00 0A MC Ny M(xyy-800)
88 00
8D FF
MC Ny M1536-M3071 Ax yy 80 yy 00 0A MC Ny M(xyy-200)
A8 00
AD FF
MCR Nx 80 0x 00 0B
SET Yx D5 xx SET Yx
SET M0-M1535 zx yy SET M(xyy-800)
D8 00
DD FF
SET M1536-M3071 zx yy zz zz SET Mxx
8F 00 00 03
8F FF 00 03
SET S0-S999 zx yy zz zz SET Sxyy
80 00 00 06
83 E7 00 06
RST Yx E5 xx RST Yx
RST M0-M1535 zx yy RST M(xyy-800)
E8 00
ED FF
RST M1536-M3071 zx yy zz zz RST M(xyy-200)
A8 00 00 04
AD FF
RST M8000-M8255 zx yy zz zz RST Myy
8F 00 00 04
8F FF
RST S0-S999 zx yy zz zz RST S0-S999
80 00 00 07
83 E7 00 07
RST T0-T255 zx yy zz zz RST Tyy
86 00 00 0C
86 FF
RST D0-D999 zz xx zz yy zz zz RST D(xxyy/2)
86 xx 86 yy 00 0D
RST D1000-D7000 88 xx 86 yy 00 0D RST D(xxyy/2)+1000
RST D8000-D8195 80 xx 86 yy 00 0D RST D(xxyy/2+800)
ANB FF F8
ORB FF F9
MPS FF FA
MRD FF FB
MPP FF FC
INV FF FD
END 00 0F