安全警告
(在使用产品之前必须先阅读此警告)
在使用产品之前,请先阅读此手册和此手册中介绍的相关手册。请对安全问题给予足够重视以便能正确操
作此产品。
请将此手册保存到一个安全的地方,以便在需要时可以方便地得到。请送给最终用户本手册的副本。
A - 1
A - 1
修订本
出版日期
* 手册编号
2003 年 9 月 SH(NA)-080450CHN 初版
此手册编号在封底的左下角给出。
版本
此手册无任何工业产权,无如何其它类型产权,也无任何专利。三菱电机公司不对由于使用本手册中的说明而造成的
任何可能包含的工业产权问题负责。
○C 1999 三菱电机株式会社
英文手册版本 SH-080039-G
A - 2
A - 2
前言
感谢使用三菱电机 MELSEC-Q 系列(Q 模式)和 MELSEC-QnA 系列可编程逻辑控制器。
在使用这些产品之前,请仔细阅读本手册,使你能对所使用的 Q 系列(Q 模式)/QnA 系列可编程逻辑控制器的功
能和性能足够熟悉,以便能保证正确使用该类产品。
应该送给最终用户此手册的一个副本。
目录
1. 综述
1 - 1 到 1 - 4
1.1 相关编程手册 ....................................................................... 1 - 1
1.2 缩写和通用名称 ..................................................................... 1 - 4
2. 指令表
2 - 1 到 2 - 50
2.1 指令分类 ........................................................................... 2 - 1
2.2 如何阅读指令表 ..................................................................... 2 - 2
2.3 顺序指令 ........................................................................... 2 - 4
2.3.1 触点指令 ....................................................................... 2 - 4
2.3.2 连接指令 ....................................................................... 2 - 5
2.3.3 输出指令 ....................................................................... 2 - 6
2.3.4 移位指令 ....................................................................... 2 - 6
2.3.5 主控制指令 ..................................................................... 2 - 7
2.3.6 终止指令 ....................................................................... 2 - 7
2.3.7 其它指令 ....................................................................... 2 - 7
2.4 基本指令 ........................................................................... 2 - 8
2.4.1 比较操作指令 ................................................................... 2 - 8
2.4.2 算术操作指令 ................................................................... 2 - 14
2.4.3 数据转换指令 ................................................................... 2 - 19
2.4.4 数据移动指令 ................................................................... 2 - 21
2.4.5 程序分支指令 ................................................................... 2 - 23
2.4.6 程序执行控制指令 ............................................................... 2 - 23
2.4.7 I/O 刷新指令 .................................................................... 2 - 23
2.4.8 其它易于使用的指令 ............................................................. 2 - 24
2.5 应用指令 ........................................................................... 2 - 25
2.5.1 逻辑操作指令 ................................................................... 2 - 25
2.5.2 循环指令 ....................................................................... 2 - 28
2.5.3 移位指令 ....................................................................... 2 - 29
2.5.4 位处理指令 ..................................................................... 2 - 29
2.5.5 数据处理指令 ................................................................... 2 - 30
2.5.6 结构体创建指令 ................................................................. 2 - 33
2.5.7 数据表操作指令 ................................................................. 2 - 34
2.5.8 缓冲区访问指令 ................................................................. 2 - 35
2.5.9 显示指令 ....................................................................... 2 - 35
2.5.10 调试和错误诊断指令 ............................................................ 2 - 36
2.5.11 字符串处理指令 ................................................................ 2 - 37
A - 3
A - 3
2.5.12 特殊功能指令 .................................................................. 2 - 40
2.5.13 数据控制指令 .................................................................. 2 - 42
2.5.14 转换指令 ...................................................................... 2 - 43
2.5.15 时钟指令 ...................................................................... 2 - 44
2.5.16 外围设备指令 .................................................................. 2 - 45
2.5.17 程序控制指令 .................................................................. 2 - 45
2.5.18 其它指令 ...................................................................... 2 - 46
2.5.19 用于数据链接的指令 ............................................................ 2 - 47
2.5.20 QCPU 指令 ...................................................................... 2 - 49
2.5.21 冗余系统指令(用于 Q4ARCPU) ..................................................... 2 - 50
3. 指令组态
3 - 1 到 3 - 29
3.1 指令组态 ........................................................................... 3 - 1
3.2 指定数据 ........................................................................... 3 - 2
3.2.1 使用位数据 ..................................................................... 3 - 2
3.2.2 使用字(16 位)数据 ............................................................... 3 - 3
3.2.3 使用双字数据(32 位) ............................................................. 3 - 5
3.2.4 使用实型数据 ................................................................... 3 - 8
3.2.5 使用字符串数据 ................................................................. 3 - 10
3.3 索引修改 ........................................................................... 3 - 11
3.4 间接指定 ........................................................................... 3 - 15
3.5 子集处理 ........................................................................... 3 - 17
3.6 编程警告(操作错误) ................................................................. 3 - 18
3.8 计数步号码 ......................................................................... 3 - 21
3.7 指令执行情况 ....................................................................... 3 - 22
3.9 当 OUT,SET/RST,或者 PLS/PLF 指令使用同一设备时的操作 ................................. 3 - 23
3.10 使用文件寄存器的警告 .............................................................. 3 - 27
3.11 使用闪存的警告 .................................................................... 3 - 29
4. 如何阅读指令
5. 顺序指令
4 - 1 到 4 - 3
5 - 1 到 5 - 55
5.1 触点指令 ........................................................................... 5 - 2
5.1.1 操作开始,串联,并联(LD,LDI,AND,ANI,OR,ORI) .................................... 5 - 2
5.1.2 脉冲操作开始,脉冲串联,脉冲并联(LDP,LDF,ANDP,ANDF,ORP,ORF) .................... 5 - 5
5.2 连接指令 ........................................................................... 5 - 7
5.2.1 梯形图串联和并联(ANB,ORB) ...................................................... 5 - 7
5.2.2 操作结果的进栈,读,出栈 (MPS,MRD,MPP) ......................................... 5 - 9
5.2.3 操作结果取反 (INV) ............................................................. 5 - 13
5.2.4 操作结果脉冲转换 (MEP,MEF) ..................................................... 5 - 14
5.2.5 边沿继电器操作结果的脉冲转换(EGP, EGF) ......................................... 5 - 16
5.3 输出指令 ........................................................................... 5 - 18
5.3.1 输出指令(包括定时器,计数器和报警器)(OUT) ...................................... 5 - 18
5.3.2 定时器(OUT T,OUTH T) ........................................................... 5 - 20
5.3.3 计数器(OUT C) .................................................................. 5 - 24
A - 4
A - 4
5.3.4 报警器输出(OUT F) .............................................................. 5 - 26
5.3.5 置位设备(报警器除外)(SET) ...................................................... 5 - 28
5.3.6 复位设备(报警器除外)(RST) ...................................................... 5 - 30
5.3.7 置位和复位报警器(SET F,RST F) .................................................. 5 - 32
5.3.8 前沿和后沿输出(PLS, PLF) ....................................................... 5 - 34
5.3.9 位设备输出倒置(FF) ............................................................. 5 - 36
5.3.10 直接输出的脉冲转换(DELTA,DELTAP) .............................................. 5 - 38
5.4 移位指令 ........................................................................... 5 - 40
5.4.1 位设备移位(SFT,SFTP) ........................................................... 5 - 40
5.5 主控制指令 ......................................................................... 5 - 42
5.5.1 置位和复位电机控制器 (MC,MCR) .................................................. 5 - 42
5.6 结束指令 ........................................................................... 5 - 46
5.6.1 结束主循环程序(FEND) ........................................................... 5 - 46
5.6.2 结束顺序程序(END) .............................................................. 5 - 48
5.7 其它指令 ........................................................................... 5 - 50
5.7.1 顺序程序停止(STOP) ............................................................. 5 - 50
5.7.2 空操作(NOP,NOPLF,PAGE n) ....................................................... 5 - 52
6. 基本指令
6 - 1 到 6 - 133
6.1 比较操作指令 ....................................................................... 6 - 2
6.1.1 BIN 16 位数据比较(=,< >,>,<=,<,>=) .............................................. 6 - 2
6.1.2 BIN 32 位数据比较(D=,D< >,D>,D<=,D<,D>=) ........................................ 6 - 4
6.1.3 浮点十进制数据比较(E=,E< >,E>,E<=,E<,E>=) ...................................... 6 - 6
6.1.4 字符串数据比较($=,$< >,$>,$<=,$<,$>=) .......................................... 6 - 8
6.1.5 BIN 块数据比较(BKCMP,BKCMP P) ................................................ 6 - 12
6.2 算术操作指令 ....................................................................... 6 - 16
6.2.1 BIN 16 位加和减操作(+,+P,-,-P) .................................................. 6 - 16
6.2.2 BIN 32 位加和减操作(D+,D+P,D-,D-P) .............................................. 6 - 20
6.2.3 BIN 16 位乘和除操作( , P,/,/P) ................................................ 6 - 24
6.2.4 BIN 32 位乘和除操作(D ,D P,D/, D/P) ........................................... 6 - 26
6.2.5 BCD 4 位加和减操作(B+,B+P,B-,B-P) ............................................... 6 - 28
6.2.6 BCD 8 位加和减操作(DB+,DB+P,DB-,DB-P) ........................................... 6 - 32
6.2.7 BCD 4 位乘和除操作(B ,B P,B/,B/P) ............................................. 6 - 36
6.2.8 BCD 8 位乘和除操作(DB ,DB P,DB/,DB/P) ......................................... 6 - 38
6.2.9 浮点十进制数据的加和减(E+,E+P,E-,E-P) .......................................... 6 - 40
6.2.10 浮点十进制数据的乘和除(E ,E P,E/,E/P)........................................ 6 - 44
6.2.11 块的加和减(BK+,BK+P,BK-,BK-P) ................................................. 6 - 46
6.2.12 链接字符串 ($+,$+P) ........................................................... 6 - 49
6.2.13 增大和减小 16 位 BIN 数据(INC,INCP,DEC,DECP) .................................... 6 - 53
6.2.14 增大和减小 32 位 BIN 数据(DINC,DINCP,DDEC,DDECP) ................................ 6 - 55
6.3 数据转换指令 ....................................................................... 6 - 57
6.3.1 BIN 数据转换成 4 位和 8 位 BCD 码(BCD,BCDP,DBCD,DBCDP) ............................ 6 - 57
6.3.2 BCD 4 位和 8 位数据转换成 BIN 数据(BIN,BINP,DBIN,DBINP) ........................... 6 - 59
6.3.3 BIN 16 位和 32 位数据转换成浮点十进制数(FLT,FLTP,DFLT,DFLTP) ..................... 6 - 61
6.3.4 浮点十进制数转换成 BIN 16 位和 32 位数据(INT,INTP,DINT,DINTP) .................... 6 - 63
6.3.5 BIN 16 位转换成 BIN 32 位数据(DBL,DBLP) .......................................... 6 - 65
A - 5
A - 5
6.3.6 BIN 32 位转换成 BIN 16 位数据(WORD,WORDP) ........................................ 6 - 66
6.3.7 BIN 16 和 32 位数据转换成格雷码(GRY,GRYP,DGRY,DGRYP) ............................. 6 - 67
6.3.8 格雷码转换成 BIN 16 和 32 位数据(GBIN,GBINP,DGBIN,DGBINP) ........................ 6 - 69
6.3.9 BIN 16 和 32 位数据的补充(符号取反)(NEG,NEGP,DNEG,DNEGP) ......................... 6 - 71
6.3.10 浮点十进制数据的符号取反(ENEG,ENEGP) .......................................... 6 - 73
6.3.11 块 BIN 16 位数据转换成 BCD 4 位数据(BKBCD,BKBCDP) ............................... 6 - 74
6.3.12 块 BCD 4 位数据转换成块 BIN 16 位数据(BKBIN,BKBINP) ............................. 6 - 76
6.4 数据移动指令 ....................................................................... 6 - 78
6.4.1 16 位和 32 位数据移动(MOV,MOVP,DMOV,DMOVP) ....................................... 6 - 78
6.4.1 16 位和 32 位数据移动(MOV,MOVP,DMOV,DMOVP) ....................................... 6 - 80
6.4.3 字符串移动($MOV,$MOVP) ......................................................... 6 - 82
6.4.4 16 位和 32 位负数移动(CML,CMLP,DCML,DCMLP) ....................................... 6 - 84
6.4.5 16 位数据块移动(BMOV,BMOVP) ..................................................... 6 - 87
6.4.6 相同的 16 位数据块移动(FMOV,FMOVP) .............................................. 6 - 89
6.4.7 16 位和 32 位数据交换(XCH,XCHP,DXCH,DXCHP) ....................................... 6 - 91
6.4.8 16 位数据块交换(BXCH,BXCHP) ..................................................... 6 - 93
6.4.9 最高和最低字节交换(SWAP,SWAPP) ................................................. 6 - 95
6.5 程序分支指令 ....................................................................... 6 - 96
6.5.1 指针分支指令(CJ,SCJ,JMP) ....................................................... 6 - 96
6.5.2 跳转到 END(GOEND) ............................................................... 6 - 99
6.6 程序执行控制指令 .................................................................. 6 - 100
6.6.1 中断禁止/允许指令,中断程序掩码(DI,EI IMASK) ................................... 6 - 100
6.6.2 从中断程序中恢复(IRET) ........................................................ 6 - 109
6.7 I/O 刷新指令 ....................................................................... 6 - 111
6.7.1 I/O 刷新(RFS,RFSP) ............................................................. 6 - 111
6.8 其它使用方便的指令 ................................................................ 6 - 113
6.8.1 计数器 1 相输入的增大或减小(UDCNT1) ............................................ 6 - 113
6.8.2 计数器 2 相输入的增大或减小(UDCNT2) ............................................ 6 - 115
6.8.3 教学定时器(TTMR) .............................................................. 6 - 117
6.8.4 特殊功能定时器(STMR) .......................................................... 6 - 119
6.8.5 循环表近路径循环控制(ROTC) .................................................... 6 - 122
6.8.6 斜坡信号(RAMP) ................................................................ 6 - 124
6.8.7 脉冲密度测量(SPD) ............................................................. 6 - 126
6.8.8 固定周期脉冲输出(PLSY) ........................................................ 6 - 128
6.8.9 脉宽调制(PWM) ................................................................. 6 - 130
6.8.10 矩阵输入(MTR) ................................................................ 6 - 132
7. 应用指令
7 - 1 到 7 - 342
7.1 逻辑操作指令 ....................................................................... 7 - 2
7.1.1 16 位和 32 位数据的逻辑乘积(WAND,WANDP,DAND,DANDP) ............................... 7 - 3
7.1.2 块逻辑乘积(BKAND,BKANDP) ....................................................... 7 - 8
7.1.3 16 位和 32 位数据的逻辑和 (WOR,WORP,DOR,DORP) .................................... 7 - 10
7.1.4 块逻辑和操作(BKOR,BKORP) ....................................................... 7 - 14
7.1.5 16 位和 32 位专有的 OR 操作(WXOR,WXORP,DXOR,DXORP) ................................ 7 - 16
7.1.6 块专有的 OR 操作(BKXOR,BKXORP) .................................................. 7 - 20
7.1.7 16 位和 32 位数据非专有逻辑和操作(WXNR,WXNRP,DXNR,DXNRP) ......................... 7 - 22
7.1.8 块非专有的逻辑和操作(BKXNR,BKXNRP) ............................................. 7 - 28
A - 6
A - 6