当前位置:首页 >> 电脑基础知识 >>

三菱PLC的指令系统


教程 5

三菱的指令系统
(V1.0)

5.1 三菱的指令系统
三菱的指令系统在国内是被研究的比较深入的指令系统,因而国内仿三菱的 PLC 也是最 多的。原因是三菱的 PLC 比较简单,主要体现在以下几个方面:1、通讯协议简单,大约只有 4~5 个命令(读/写,force on/force off 等) ;2、通讯命令采用绝对地址方式,很容易被推测出内 部结构;

5.1.1

三菱的指令字节码 三菱的指令字节码的安排很不合理,但从另一侧面也反映早期 PLC 的功能和控制能力是 比较弱,随着 PLC 的发展,PLC 的功能也在不断加强,但为了保持兼容,通常采用打补丁的 方法扩展,用现在的眼光看就显得极不合理,本教程以 FX1S 系列 PLC 为例说明。 指令字节码是指令中的指令码、变量地址、常数以一定的顺序,按字节(或字)排列而 成的一串二进制代码。 三菱指令字节码中的变量地址采用绝对地址,其划分如下: 寄存器名称 = 位地址 + 偏移量 = 实际地址 ppp 空间(最大) S = (S0~127 = 0~2F) + 0 = 0000~007F 128 * 8 = 1024 bits X (八进制) = (X000~017 = 0~01) + 80 = 0080~09F 32 * 8 = 256 Y (八进制) = (Y000~015 = 0~01) + A0 = 00A0~00BF 32 * 8 = 256 T = (T0~63 :0~3F) + C0 = 00C0~00FF 64 * 4 = 256 M = (M0~511 = 0~40) + 100 = 0100~01BF 192 * 8 = 1536 C = (C0~31 :0~1F) + 1C0 = 01C0~029F 224 PY = ()+ 2A0 = 02A0~02BF 32 * 8 = 256 OT = ()+ 2C0 = 02C0~02FF 64 * 4 = 256 PM = ()+ 300 = 0300~03BF 192 * 8 = 1536 M1536~M3071 OC = ()+ 3C0 = 03C0~04BF 256 RT = ()+ 4C0 = 04C0~05BF 256 RC = ()+ 5C0 = 05C0~07FF 256 TV = ()+ 800 = 0800~09FF 256 CV16 = ()+ A00 = 0A00~0BFF 256 CV32 = ()+ C00 = 0C00~0DFF D8000~8255 = () + E00 = 0E00~0FFF 256

D0~D255

= (0~1FF) + 1000 = 0~11FF

5.1.2

三菱指令格式 三菱的指令字节码的指令类型由第一个字决定,其中第一个字的最高 4 位定义如下: 应用指令 = 0 P 应用指令 = 1 LD = 2 LDI = 3 AND = 4 ANI = 5 OR = 6 ORI = 7 数据/地址 = 8 (多字指令,第二字及以后有效) 地址 = A (仅对 M1536-M3071 有效,需加偏移量 200) OUT = C (仅对 Y,M 有效) SET = D (仅对 Y,M 有效) RST = E (仅对 Y,M 有效) 纯单字指令 = F

5.1.2.1

单字格式 单字格式,即一个字(16 位二进制数)表示一条指令,如: 纯单字指令 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 ORI 7000+ppp OUTYM C000+ppp SETYM D000+ppp RSTYM E000+ppp

;(扩展 Mp 除外) ;(扩展 Mp 除外) ;(仅对 Y,M 有效) ;(仅对 Y,M 有效) ;(仅对 Y,M 有效)

5.1.2.2

双字格式 是从 0 类应用指令中扩展出来的。 (0 class) 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 有效) OUTS 0005 8000+ppp ;(仅对 S 有效) SETS 0006 8000+ppp ;(仅对 S 有效) RSTS 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 RSTTC 000C 8000+ppp ;(仅对 T,C,Cp 有效) RSTD 000D 8m00+xx 8n00+yy ;(仅对 D 有效,包含 Z,V) ( 01 class) MLD 01C2 A000+ppp ;(仅对 Mp 有效) MLDI 01C3 A000+ppp ;(仅对 Mp 有效) MAND 01C4 A000+ppp ;(仅对 Mp 有效) MANI 01C5 A000+ppp ;(仅对 Mp 有效) MOR 01C6 A000+ppp ;(仅对 Mp 有效) MORI 01C7 A000+ppp ;(仅对 Mp 有效) MLDP MLDP MLDF MLDF MANDP 01CA 8000+ppp 01CA A000+ppp 01CB 8000+ppp 01CB A000+ppp 01CC 8000+ppp ;(扩展 Mp 除外) ;(仅对 Mp 有效) ;(扩展 Mp 除外) ;(仅对 Mp 有效) ;(扩展 Mp 除外)

MANDP MANDF MANDF MORP MORP MORF MORF

01CC A000+ppp 01CD 8000+ppp 01CD A000+ppp 01CE 8000+ppp 01CE A000+ppp 01CF 8000+ppp 01CF A000+ppp

;(仅对 Mp 有效) ;(扩展 Mp 除外) ;(仅对 Mp 有效) ;(扩展 Mp 除外) ;(仅对 Mp 有效) ;(扩展 Mp 除外) ;(仅对 Mp 有效)

5.1.2.3

3 字格式 OUT T K 0000+(T) VV00+xx VV00+yy OUT C K 0000+(C) VV00+xx VV00+yy OUT Cp K 0000+(Cp) VV00+xx VV00+yy 8000+zz 8000+ww 3 字以上格式 除了上述基本指令外,三菱还有一类指令称为应用指令,其格式如下: 指令码 + 变量地址 1(或常数 1)+变量地址 2(或常数 2)+ …

5.1.2.4

三菱应用指令中的变量地址格式 16 变量地址格式 = VV00+xx ,VV00+yy 32 变量地址格式 = VV00+xx ,VV00+yy ,8000+zz ,8000+ww 位(点)元件地址格式= VV00+xx ,VV00+yy; 三菱的变量表示很奇怪,16 位的变量用 2 个字表示,第一个字的高 8 位和第二个字 的高 8 位组成变量类型描述字,第一个字的低 8 位和第二个字的低 8 位组成变量地址或 常数。 32 位的变量用 4 个字表示,第一个字的高 8 位和第二个字的高 8 位组成变量类型描 述字,第三个字的高 8 位、第四个字的高 8 位固定位 0x80,第一个字的低 8 位、第二个 字的低 8 位、第三个字的低 8 位、第四个字的低 8 位组成 32 位的变量地址或常数。 这样的安排人为地增加了解析的复杂性,降低了指令的执行速度,浪费程序存储空 间。以下是变量类型描述表(VV) 序号 1 2 3 4 5 6 第 1 字高 8 位 80 82 84 84 84 84 第 2 字高 8 位 80 80 80 82 84 86 变量类型 K 常数 H 常数 位变量(X、Y、M、S、M8、 C、T) K1 K2 K3 4bit 8bit 12bit 备注

7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40

84 84 84 84 84 86 86 86 86 86 88 8A 90 94 94 94 94 94 94 94 94 A4 A4 A4 A4 A4 A4 A4 A4 A6 A6 A6 A6 A6

88 8A 8C 8E 90 80 82 84 86 88 80 80 80 82 84 86 88 8A 8C 8E 90 82 84 86 88 8A 8C 8E 90 80 82 84 86 88

K4 K5 K6 K7 K8 D8xxx Txxx Cxxx Dxxx Dxxxx Pxxx ASCII CHAR KxxxxV K1(X,Y,M,S)V K2(X,Y,M,S)V K3(X,Y,M,S)V K4(X,Y,M,S)V K5(X,Y,M,S)V K6(X,Y,M,S)V K7(X,Y,M,S)V K8(X,Y,M,S)V K1(X,Y,M,S)Z K2(X,Y,M,S)Z K3(X,Y,M,S)Z K4(X,Y,M,S)Z K5(X,Y,M,S)Z K6(X,Y,M,S)Z K7(X,Y,M,S)Z K8(X,Y,M,S)Z D8xxxZ TxxxZ CxxxZ DxxxZ DxxxxZ

16bit 20bit 24bit 28bit 32bit

D <1000 D >1000

D <1000 D >1000

5.1.3

三菱指令表 PLC 的型号 指令 FX2N 长度 FX1S FX1N FX2NC 2 2 2 2 2 2 2 2 2 2 7 7 5 11 5 7 7 5 5 5 7 7 7 7 3 3 7 7 ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○

分 FNC 指 令 助 指令码 类 NO. 记符 00 01 02 03 程 04 序 05 流 06 程 07 08 09 10 11 12 13 传 14 送 15 与 16 比 较 17 18 19 20 算 21 术 22 与 23 逻 24 辑 25 运 26 算 27 CJ CALL SRET IRET EI DI FEND WDT FOR NEXT CMP ZCP MOV SMOV CML FMOV XCH BCD BIN ADD SUB MUL DIV INC DEC WAND WOR 0x0010 0x0012 0x0014 0x0016 0x0018 0x001A 0x001C 0x001E 0x0020 0x0022 0x0024 0x0026 0x0028 0x002A 0x002C 0x0030 0x0032 0x0034 0x0036 0x0038 0x003A 0x003C 0x003E 0x0040 0x0042 0x0044 0x0046

功能说明 条件跳转 子程序调用 子程序返回 中断返回 开中断 关中断 主程序结束 监视定时器刷新 循环的起点与次数 循环的终点 比较 区间比较 传送 位传送 取反传送 成批传送 多点传送 交换 二进制转换成 BCD 码 BCD 码转换成二进制 二进制加法运算 二进制减法运算 二进制乘法运算 二进制除法运算 二进制加 1 运算 二进制减 1 运算 字逻辑与 字逻辑或

BMOV 0x002E

28 29 30 31 32 33 循 34 环 35 与 36 移 位 37 38 39 40 41 42 43 44 数 45 据 46 处 理 47 48 49 50 51 52 53 54 高 55 速 56 处 理 57 58 59 60 61

WXOR 0x0048 NEG ROR ROL RCR RCL SFTR SFTL WSFR WSFL SFWR SFRD ZRST DECO ENCO SUM BON ANS ANR SQR FLT REF REFF MTR HSCS HSCR HSZ SPD PLSY PWM PLSR IST SER 0x004A 0x004C 0x004E 0x0050 0x0052 0x0054 0x0056 0x0058 0x005A 0x005C 0x005E 0x0060 0x0062 0x0064 0x0066 0x0068 0x006C 0x006E 0x0070 0x0072 0x0074 0x0076 0x0078 0x007A 0x007C 0x007E 0x0080 0x0082 0x0084 0x0086 0x0088 0x008A

字逻辑异或 求二进制补码 循环右移 循环左移 带进位右移 带进位左移 位右移 位左移 字右移 字左移 FIFO(先入先出)写入 FIFO(先入先出)读出 区间复位 解码 编码 统计 ON 位数 查询位某状态 求平均值 报警器置位 报警器复位 求平方根 整数与浮点数转换 输入输出刷新 输入滤波时间调整 矩阵输入 比较置位(高速计数用) 比较复位(高速计数用) 区间比较(高速计数用) 脉冲密度 指定频率脉冲输出 脉宽调制输出 带加减速脉冲输出 状态初始化 数据查找

7 3 5 5 5 5 7 7 9 9 7 7 5 7 7 5 7 7 7 1 5 5 5 3 9 13 13 17 7 7 7 7 7 7

○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ -

○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ -

○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○

MEAN 0x006A

方 62 便 63 指 64 令 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89

ABSD INCD TTMR STMR ALT RAMP ROTC SORT TKY HKY DSW SEGD SEGL ARWS ASC PR TO RS PRUN ASCI HEX CCD VRRD VRSC PID -

0x008C 0x008E 0x0090 0x0092 0x0094 0x0096 0x0098 0x009A 0x009C 0x009E 0x00A0 0x00A2 0x00A4 0x00A6 0x00A8 0x00AA 0x00AE 0x00B0 0x00B2 0x00B4 0x00B6 0x00B8 0x00BA 0x00BC 0x00C0 0x00EC 0x00EE 0x00FC 0x00FE 0x0100 0x0102

凸轮控制(绝对方式) 凸轮控制(增量方式) 示教定时器 特殊定时器 交替输出 斜坡信号 旋转工作台控制 数据排序 十进制键输入 十六进制键输入 数字开关 七段译码 七段显示 方向开关 ASCI 码转换成 16 进制数 ASC 码打印 BFM 读出 BFM 写入 串行数据传送 八进制位传送 16 进制数转换成 ASCI 码 ASCI 码转换成 16 进制数 校验码 电位器变量输入 电位器变量区间 PID 运算 二进制浮点数比较 二进制浮点数区间比较 二进制浮点数→十进制浮点数 十进制浮点数→二进制浮点数 二进制浮点数加法 二进制浮点数减法

9 9 5 7 3 9 9 17 7 9 9 5 7 9 11 5 9 9 9 5 7 7 7 5 5 0 9 0 13 17 9 9 13 13

○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ -

○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ -

○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○

FROM 0x00AC

浮 110 ECMP 点 111 EZCP 数 118 EBCD 运 119 EBIN 算 120 EADD 121 EUSB

122 EMUL 123 EDIV 127 ESQR 129 INT 130 SIN 131 COS 132 TAN 147 SWAP 155 ABS 156 ZRN 定 157 PLSV 位 158 DRVI 159 DRVA 160 TCMP 161 TZCP 时 162 钟 163 运 166 算 167 外 170 围 171 设 176 备 177 216 ~22 3 224 LD= 225 LD> 226 LD< 228 LD<> 触 229 LD≦ 点 230 LD≧ 比 232 AND= TADD TSUB TRD TWR GRY GBIN RD3A WR3A

0x0104 0x0108 0x010E 0x0112 0x0114 0x0116 0x0118 0x0136 0x0146 0x0148 0x014A 0x014C 0x014E 0x0150 0x0152 0x0154 0x0156 0x015C 0x015E 0x0162 0x0164 0x0166 0x0170 0x0172 0x01C0~ 0x01CF 0x01D0 0x01D2 0x01D4 0x01D8 0x01DA 0x01DC 0x01E0

二进制浮点数乘法 二进制浮点数除法 二进制浮点数开平方 二进制浮点数→二进制整数 二进制浮点数 Sin 运算 二进制浮点数 Cos 运算 二进制浮点数 Tan 运算 高低字节交换 ABS 当前值读取 原点回归 可变速的脉冲输出 相对位置控制 绝对位置控制 时钟数据比较 时钟数据区间比较 时钟数据加法 时钟数据减法 时钟数据读出 时钟数据写入 计时仪 二进制数→格雷码 格雷码→二进制数 模拟量模块(FX0N-3A)读出 模拟量模块(FX0N-3A)写入 已使用 (S1)= (S2)时起始触点接通 (S1)> (S2)时起始触点接通 (S1)< (S2)时起始触点接通 (S1)<> (S2)时起始触点接通 (S1)≦ (S2)时起始触点接通 (S1)≧ (S2)时起始触点接通 (S1)= (S2)时串联触点接通

13 13 9 5 9 9 9 3 13 9 9 9 9 11 9 7 7 3 3 7 5 5 7 7

○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ -

○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○

○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ -

169 HOUR

5 5 5 5 5 5 5

○ ○ ○ ○ ○ ○ ○

○ ○ ○ ○ ○ ○ ○

○ ○ ○ ○ ○ ○ ○

较 233 AND> 234 AND<

0x01E2 0x01E4

(S1)> (S2)时串联触点接通 (S1)< (S2)时串联触点接通 (S1)<> (S2)时串联触点接通 (S1)≦ (S2)时串联触点接通 (S1)≧ (S2)时串联触点接通 (S1)= (S2)时并联触点接通 (S1)> (S2)时并联触点接通 (S1)< (S2)时并联触点接通 (S1)<> (S2)时并联触点接通 (S1)≦ (S2)时并联触点接通 (S1)≧ (S2)时并联触点接通

5 5 5 5 5 5 5 5 5 5 5

○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○

○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○

○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○

236 AND<> 0x01E8 237 AND≦ 0x01EA 238 AND≧ 0x01EC 240 OR= 241 OR> 242 OR< 244 OR<> 245 OR≦ 246 OR≧ 0x01F0 0x01F2 0x01F4 0x01F8 0x01FA 0x01FC

5.2

三菱指令的用法 基本应用指令 = (FNC.No.n+8)*2 D 应用指令 = (FNC.No.n+8)*2 +1 P 应用指令 = (FNC.No.n+8)*2 +1000 例如: ADD SUB MUL DIV ADDP DADDP SUBP DSUBP MULP DMULP DIVP DDIVP

0038 003A 003C 003E 1038 1039 103A 103B 103C 103D 103E 103F

DADD DSUB DMUL DDIV

0039 003B 003D 003F

5.2.1 Zp,Vp 实际地址计算: 偏移量 Z 实际地址 yy xx = Z 地址 *2

;Z = p*2 + 1C

(p=0)偶地址

V 实际地址 yy xx = V 地址 *2 Zp 实际地址 yy xx = Zp 地址 *2 Vp 实际地址 yy xx = Vp 地址 *2

;V = p*2 + 1C + 1 (p=0)奇地址 ;Zp = p*2 + B4 (p=1-7)偶地址 ;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


相关文章:
三菱PLC指令详解
三菱PLC指令详解_机械/仪表_工程科技_专业资料。详细讲述了三菱PLC的各种指令的...系统和 A3V D9096 A3VCPU A 自检出错 D9097 A3VCPU B 自检出错 D9098 A3...
三菱FX2N系列PLC指令系统5
三菱FX2N系列PLC指令系统5_工学_高等教育_教育专区。三菱FX2N系列PLC指令系统5第二节 三菱 FX2N 系列 PLC 指令系统指令系统概述 一、指令分类 1)FX 系列 PLC...
三菱PLC指令讲解
三菱PLC 指令讲解 2011-04-17 16:11 hzzhangxch | 分类:教育/科学 三菱 PLC 功能指令: MOV K1 20 谢啦图" class="ikqb_img_alink"> 指令 意思,每 ...
第二章 三菱PLC基本逻辑指令 教案
第二章 三菱PLC基本逻辑指令 教案_财会/金融考试_资格考试/认证_教育专区。《可...“并行”工作有质的区别,PLC 的串行工作方式避免了继电控制系统中触点竞争和...
三菱PLC中FROM和TO的使用
三菱PLC中FROM和TO的使用_IT/计算机_专业资料。一、 to 指令是从 plc 对增设的特殊单元(如 fx2n-4da)缓冲存储器(bfm)写入数据的指令 to,top:十六位连续执行...
三菱plc指令大全二
三菱plc指令大全二_其它语言学习_外语学习_教育专区。深圳自动化培训,plc培训,...指令出错 待更换的 I/O 组件的首地址 A3VTS 系统和 A3V CPU 的运行状态 ...
三菱FX 系列PLC的20条基本逻辑指令
三菱FX 系列PLC的20条基本逻辑指令_电子/电路_工程科技_专业资料。初学的朋友可以...如当 X1为 ON 时,则系统由 S20状态转为 S21状态。 状态转移图中的每一步...
三菱FX系列PLC基本指令
三菱FX系列PLC基本指令_电子/电路_工程科技_专业资料。三菱FX系列PLC基本指令三菱...如当 X1 为 ON 时,则系统由 S20 状态转为 S21 状态。 图 11 状态转移图...
三菱PLC基本指令(一)
三菱PLC基本指令(一)_工学_高等教育_教育专区。三菱 PLC教案 泰州技师学院教案首页授课日期 班级 课题: 三菱 PLC 基本指令(一) 教学目的要求: 教学目的要求:...
三菱PLC A系列编程指令
三菱PLC A系列编程指令_信息与通信_工程科技_专业资料。三菱PLC A系列编程指令一...(1~16) D9072 PC 通讯检测 D9095 A3VTS 系统和 A3V D9213 D9214 D9215...
更多相关标签: