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

三菱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功能指令简表[1]
指令 0.74 0.74 三菱 PLC 功能指令简表助记符 SQR SWAP FMOV PRUN ANS ANR REF REFF MTR PLSR SER ABSD INCD TTMR STMR SOTR CCD VRSC PR HEX ASCI GRY ...
三菱PLC指令讲解
三菱PLC 指令讲解 2011-04-17 16:11 hzzhangxch | 分类:教育/科学 三菱 PLC 功能指令: MOV K1 20 谢啦图" class="ikqb_img_alink"> 指令 意思,每 ...
对三菱plc指令的理解
三菱plc指令的理解_信息与通信_工程科技_专业资料 暂无评价|0人阅读|0次下载|举报文档 对三菱plc指令的理解_信息与通信_工程科技_专业资料。基本逻辑指令 FN2N...
三菱PLC IST方便指令应用实例
三菱PLC IST方便指令应用实例_电子/电路_工程科技_专业资料。三菱 PLC IST 方便...由上面实例可知,该控制系统编程时因用了一条初始状态功能指令(IST 指令),使...
三菱PLC基本指令
三菱PLC基本指令_信息与通信_工程科技_专业资料。plc相关指令PLC 原理和编程实例分析 第3章 基本指令 FX2N 系列的 PLC 共有基本指令 27 条,本章主要介绍这些基本...
三菱PLC编程指令
三菱PLC编程指令_信息与通信_工程科技_专业资料。123 三菱PLC 编程第一部分 软...七、定时器(T) PLC 中的定时器(T)相当于继电器控制系统中的通电型时间继电器...
三菱PLC基本指令表
三菱PLC基本指令表_IT/计算机_专业资料。PLC基本指令总结!学习的同志看看!1. 基本指令表 FX2N PLC 各基本指令的符号、功能如下表所示。 基本指令一览符号名称 [...
三菱FX系列PLC功能指令一览表_图文
三菱FX系列PLC功能指令一览表_信息与通信_工程科技_专业资料。三菱 FX 系列 PLC 功能指令一览表对应不同型号的 PLC 分类 FNC NO. 00 01 02 03 程序 流程 04...
三菱PLC中FROM和TO的使用
三菱PLC中FROM和TO的使用_IT/计算机_专业资料。一、 to 指令是从 plc 对增设的特殊单元(如 fx2n-4da)缓冲存储器(bfm)写入数据的指令 to,top:十六位连续执行...
三菱PLC原理及综合实训(全)
三菱PLC原理及综合实训(全) - 《PLC 原理及综合实训》教学大纲(实习) 一、教学性质和任务 “可编程控制器技术及应用”是工科类专业的一门专业技术课, 是为下...
更多相关标签: