可编程序控制器 FP系列 编程手册

申明敬告: 本站不保证该用户上传的文档完整性,不预览、不比对内容而直接下载产生的反悔问题本站不予受理。

文档介绍

可编程序控制器 FP系列 编程手册

可编程控制器 2011.9 pewc.panasonic.cn/ac/c/ 编程手册 FP系列 ARCT1F313C-1 【适用机型】 FP0 FP-e FP Σ FP1 FP-M FP-2 FP2SH FP3 FP10SH * 使用前请务必仔细通读本手册,确保产品的正确使用。 目录 第一章 基本指令 1-211.2.2 外部输出继电器(Y).................………………………………………………………….. 1-151.1.8 FP3............ ……………………………………………………………………………….. 1.2 继电器说明 1-201.2.1 外部输入继电器(X).................………………………………………………………….. 1-271.2.6 链接继电器(L)(用于FP2/FP2SH/FP10SH/FP3)……………………………………... 1-241.2.4 特殊内部继电器...……………………………………………………………………….. 1-221.2.3 内部继电器...…………………………………………………………………………….. 1-171.1.9 继电器编号.......………………………………………………………………………….. 1-131.1.7 FP10SH..... …………………………………….......…………………………………….. 1-251.2.5 链接继电器(L)(用于FP∑).....……………………………………………………….. 1-111.1.6 FP2SH....... ……………………………………………………………………………..... 1-311.2.7 定时器(T). ……………………………………………………………………………….. 1-331.2.9 定时器和计数器共享项目...…………………………………………………………….. 1-321.2.8 计数器(C). ……………………………………………………………………………….. 1-91.1.5 FP2............ ……………………………………………………………………………….. 1-381.2.11 错误报警继电器(E)…………………………………………………………………….. 1-361.2.10 脉冲继电器(P)………………………………………………………………………….. 1-71.1.4 FP-M......... ……………………………………………………………………………….. 1-51.1.3 FP1............ ……………………………………………………………………………….. 1-31.1.2 FP∑.......................……………………………………………………………………….. 1-11.1.1 FP0/FP-e……….................………………………………………………………………. 1.1 继电器、存储器和常数表 1-581.3.10 索引寄存器(I0~ID)(用于FP∑ )........................…………………............................. 1-551.3.9 索引寄存器(IX、IY)(用于FP0、FP-e、FP1、FP-M和FP3)............……………….. 1-701.4.2 十六进制常数(H).....................………………………………………………………….. 1-541.3.8 定时器/计数器的经过值(EV).......………………………………………………………. 1.4 常数说明 1-691.4.1 整数型十进制常数(K).............………………………………………………………...... 1.5 可在PLC中处理的数据范围 1-761.4.4 BCD型实数(H).........................………………………………………………………….. 1-711.4.3 浮点型实数(f)...........................………………………………………………………….. 1-591.3.11 索引寄存器(I0~ID)(用于FP2、FP2SH和FP10SH)........................………………... 1-531.3.7 定时器/计数器的设定值(SV).......………………………………………………………. 1-771.4.1 字符常数(M).............................………………………………………………………….. 1-491.3.6 链接数据寄存器(LD)(用于FP2/FP2SH/FP3/FP10SH)...……………………………. 1-781.5.1 PLC中处理的数据范围………………………………………………………………….. 1-811.5.2 上溢出和下溢出...........………………………………………………………………….. 1-471.3.5 链接数据寄存器(LD)(用于FP∑)……………………………………………………. 1-461.3.4 WX、 WY、 WR和WL....………………………………………………………………. 1-451.3.3 文件寄存器(FL)................………………………………………………………………. 1-431.3.2 特殊数据寄存器(DT)............……………………………………………………………. 1-411.3.1 数据寄存器(DT)................………………………………………………………………. 1.3 存储器说明 第二章 基本指令 2-22.1.4 数据比较指令...………………………………………………………………………….. 2-22.1.3 控制指令.. ……………………………………………………………………………….. 2-22.1.2 基本功能指令.......……………………………………………………………………….. 2-12.1.1 时序控制基本指令………………………………………………………………………. 2.1 关于基本指令 第三章 高级指令 3-23.1.4 “F”型和“P”型高级指令…………………………………………………………………... 3-23.1.3 高级指令和执行条件.. ………………………………………………………………….. 3-13.1.2 高级指令的编号及程序输入.......……………………………………………………….. 3-13.1.1 构成…………………………………………………………………………..................... 3.1 高级指令构成 第四章 编程信息 4.2 特殊内部继电器列表 4-464.2.1 FP0/FP-e特殊内部继电器 ……………………………………………………………... 4-404.1.7 系统寄存器列表(用于FP3) ……………………………………………………….... 4-314.1.6 系统寄存器列表(用于FP2/FP2SH/FP10SH) ……………………………………….. 4-494.2.2 FP∑特殊内部继电器 …………………………………………………………………... 4-214.1.5 系统寄存器列表(用于FP-M/FP1) ……………………………… ………………….. 4-564.2.3 特殊内部继电器列表(用于FP1/FP-M/FP2/FP2SH/FP3/FP10SH ) ……………….. 4-164.1.4 系统寄存器列表(用于FP∑) … ……………………………………………………... 4-124.1.3 系统寄存器列表(用于FP-e) … ……………………………………………………... 4-24.1.2 系统寄存器列表(用于FP0) ………………………………………………………….. 4-14.1.1 关于系统寄存器的注意事项……………………………………………………………. 4.1 系统寄存器列表 4.4 错误清单 4-1034.3.4 特殊数据寄存器(用于FP-C/FP2/FP2SH/FP3/FP10SH ) ………………………….... 4-894.3.3 特殊数据寄存器(用于FP-M/FP1) ………………………………………………….. 4-754.3.2 特殊数据寄存器(用于FP∑) ………………………………………………………... 4-674.3.1 特殊数据寄存器(用于FP0/FP-e) ………………………………………………….... 4-1334.4.3 自诊断错误列表 ……………………………………………………………………….... 4-1314.4.2 语法检查错误列表 …………………………………………………………………….... 4-1294.4.1 错误指示LED亮时的错误确认…………………………………………………………. 4-1384.4.4 通信校验错误列表 …………………………………………………………………….... 4.3 特殊数据寄存器列表 2-15组逻辑与…………………………………….............................................ANS 2-17组逻辑或…………………………………….............................................ORS 2-19压入堆栈…………………………………….............................................PSHS 2-19读取堆栈…………………………………….............................................RDS 2-19弹出堆栈…………………………………….............................................POPS 2-22上升沿微分………………………………….............................................DF 2-22下降沿微分………………………………….............................................DF/ 2-26上升沿微分(初始执行型)..………………….............................................DFI 2-28置位………………………………………….............................................SET 2-28复位………………………………………….............................................RST 2-30保持………………………………………….............................................KP 时序控制基本指令 2-10上升沿逻辑或……………………………….............................................OR↑ 2-5逻辑非…………………………………………........................................../ 2-6逻辑与……………………………………….............................................AN 2-6逻辑与非…………………………………….............................................AN/ 2-8逻辑或……………………………………….............................................OR 2-8逻辑或非…………………………………….............................................OR/ 2-10上升沿开始………………………………….............................................ST↑ 2-10下降沿开始………………………………….............................................ST↓ 2-10上升沿逻辑与……………………………….............................................AN↑ 2-10下降沿逻辑与……………………………….............................................AN↓ 2-10下降沿逻辑或……………………………….............................................OR↓ 2-12上升沿输出………………………………….............................................OT↑ 2-12下降沿输出…………………………………………..................................OT↓ 2-14翻转输出…………………………………….............................................ALT 2-31空操作……………………………………….............................................NOP 2-3输出………………………………………….............................................OT 2-3开始非……………………………………….............................................ST/ 2-3开始………………………………………….............................................ST 基本指令 2-70开始步进程序……………………………………......................................SSTP 2-70下步步进过程(扫描执行型)…………………………………….................NSTL 2-70下步步进过程(微分执行型)…………………………………….................NSTP 2-70清除步进程序……………………………………......................................CSTP 2-70步进程序区结束……………………………………..................................STPE 2-80块清除………………………………….....................................................SCLR 子程序指令 2-82子程序调用..………………….................................................................CALL 2-82子程序进入…………………………………………..................................SUB 2-82子程序返回…………………………………………..................................RET 2-86输出OFF型子程序调用………………………………………….................FCAL 基本功能指令 2-64断点…………………………………........................................................BRK 2-381秒单位定时器………………………………………….............................TMY 2-44计数器……………………………………….............................................CT 2-50寄存器移位……………………………………..........................................SR 控制指令 2-53主控继电器……………………………………..........................................MC 2-53主控继电器结束…………………………………......................................MCE 2-57跳转…………………………………........................................................JP 2-57标号…………………………………........................................................LBL 2-60循环…………………………………........................................................LOOP 2-66结束…………………………………........................................................ED 2-67条件结束………………………………….................................................CNDE 2-69换页…………………………………........................................................EJECT 步进程序指令 2-380.1秒单位定时器……..……………………..............................................TMX 2-380.01秒单位定时器….……………………….............................................TMR 2-320.001秒单位定时器………………………................................................TML 特殊设置指令 2-128双字比较: 不等时初始加载……………………………….........................STD<> 2-128双字比较: 大于时初始加载……………………………….........................STD> 2-128双字比较: 大于等于时初始加载………………………………..................STD>= 2-128双字比较: 小于时初始加载……………………………….........................STD< 2-128双字比较: 小于等于时初始加载………………………………..................STD<= 2-130字比较:相等时逻辑与………………………………...............................AN= 2-130字比较:不等时逻辑与………………………………...............................AN<> 2-130字比较:大于时逻辑与………………………………...............................AN> 2-130字比较:大于等于时逻辑与……………………………….......................AN>= 2-130字比较:小于时逻辑与………………………………...............................AN< 2-130字比较:小于等于时逻辑与……………………………….......................AN<= 中断指令 2-126字比较: 大于时初始加载……………………………….............................ST> 2-113通信条件设置…………………………………………...............................SYS1 2-116密码设置……………………………………….......................................... 2-118中断设置……………………………………............................................. 2-120PC-link时间设置……………………………………….............................. 2-122RS485响应时间控制……………………………………............................ 2-124修改系统寄存器(№40~№47)………………………………….................SYS2 数据比较指令 2-126字比较: 相等时初始加载……………………………….............................ST= 2-126字比较: 不等时初始加载……………………………….............................ST<> 2-126字比较: 大于等于时初始加载………………………………......................ST>= 2-126字比较: 小于时初始加载……………………………….............................ST< 2-126字比较: 小于等于时初始加载………………………………......................ST<= 2-128双字比较: 相等时初始加载……………………………….........................STD= 2-132双字比较:相等时逻辑与………………………………...........................AND= 2-99中断控制…………………………………………......................................ICTL 2-88中断程序返回………………………………………..................................IRET 2-88中断程序…………………………………….............................................INT 2-136双字比较:不等时逻辑或………………………………...........................ORD<> 2-132双字比较:小于时逻辑与………………………………...........................AND< 2-132双字比较:小于等于时逻辑与………………………………....................AND<= 2-134字比较:相等时逻辑或….……………………………..............................OR= 2-134字比较:不等时逻辑或….……………………………..............................OR<> 2-134字比较:大于时逻辑或….……………………………..............................OR> 2-134字比较:大于等于时逻辑或….…………………………….......................OR>= 2-134字比较:小于时逻辑或….……………………………..............................OR< 2-134字比较:小于等于时逻辑或….…………………………….......................OR<= 2-136双字比较:相等时逻辑或………………………………...........................ORD= 2-136双字比较:大于时逻辑或………………………………...........................ORD> 2-136双字比较:大于等于时逻辑或………………………………....................ORD>= 2-136双字比较:小于时逻辑或………………………………...........................ORD< 2-136双字比较:小于等于时逻辑或………………………………....................ORD<= 2-132双字比较:大于等于时逻辑与………………………………....................AND>= 2-132双字比较:大于时逻辑与………………………………...........................AND> 2-132双字比较:不等时逻辑与………………………………...........................AND<> 3-32数据写至EEPROM ……………………………………...PICWTP13 数据传输指令 3-932位数据求反传输……………………………………....DMV/ PDMV/ F3 P3 3-11位数据传输……………………………………………....BTM PBTM F5 P5 3-15十六进制数位传输……………………………………....DGT PDGT F6 P6 3-18两个16位数据传输……………………………………....MV2 PMV2 F7 P7 3-20两个32位数据传输……………………………………....DMV2 PDMV2 F8 P8 3-22块传输……………………………………......................BKMV PBKMV F10 P10 3-24块复制……………………………………......................COPY PCOPY F11 P11 3-26由IC卡/EEPROM读取数据……………………………...ICRD PICRD F12 P12 3-30数据写入IC卡……………………………………...........ICWT PICWT F13 P13 3-35读取IC卡程序……………………………………...........PGRD PPGRD F14 P14 3-3916位数据交换……………………………………...........XCH PXCH F15 P15 3-4132位数据交换……………………………………...........DXCH PDXCH F16 P16 3-4316位数据高·低字节互换………………………………...SWAP PSWAP F17 P17 3-4516位块数据交换……………………………………........BXCH PBXCH F18 P18 3-716位数据求反传输……………………………………....MV/ PMV/ F2 P2 3-532位数据传输…………………………………………....DMV PDMV F1 P1 3-316位数据传输…………………………………………....MV PMV F0 P0 高级指令 BIN算术运算指令 3-8016位数据减1..……………………………………...........-1 P-1 F37 P37 3-8232位数据减1..……………………………………...........D-1 PD-1 F38 P38 3-7016位数据除法……………………………………...........% P% F32 P32 控制指令 3-5316位数据加法……………………………………...........+ P+ F22 P22 3-5532位数据加法……………………………………...........D+ PD+ F23 P23 3-5716位数据减法……………………………………...........- P- F25 P25 3-5932位数据减法……………………………………...........D- PD- F26 P26 3-6116位数据减法……………………………………...........- P- F27 P27 3-6432位数据减法……………………………………...........D- PD- F28 P28 3-6616位数据乘法……………………………………...........* P* F30 P30 3-6832位数据乘法……………………………………...........D* PD* F31 P31 3-7232位数据除法……………………………………...........D% PD% F33 P33 3-7416位数据乘法……………………………………...........*W P*W F34 P34 3-7616位数据增1..……………………………………...........+1 P+1 F35 P35 3-7832位数据增1..……………………………………...........D+1 PD+1 F36 P36 3-5132位数据加法…………………………………………....D+ PD+ F21 P21 3-4916位数据加法…………………………………………....+ P+ F20 P20 3-47间接跳转…………………………………………...........SJPF19 P19 3-8432位数据乘法..…………………………………….........D*D PD*D F39 P39 3-1114位BCD数据增1…………………………………….......B+1 PB+1 F55 P55 BCD算术运算指令 3-928位BCD数据加法………………………………………..DB+ PDB+ F43 P43 3-944位BCD数据减法………………………………………..B- PB- F45 P45 3-968位BCD数据减法………………………………………..DB- PDB- F46 P46 3-984位BCD数据减法………………………………………..B- PB- F47 P47 3-1008位BCD数据减法………………………………………..DB- PDB- F48 P48 3-1024位BCD数据乘法………………………………………..B* PB* F50 P50 3-1048位BCD数据乘法………………………………………..DB* PDB* F51 P51 3-1064位BCD数据除法………………………………………..B% PB% F52 P52 3-1098位BCD数据除法………………………………………..DB% PDB% F53 P53 3-1138位BCD数据增1…………………………………….......DB+1 PDB+1 F56 P56 3-1154位BCD数据减1…………………………………….......B-1 PB-1 F57 P57 3-1178位BCD数据减1…………………………………….......DB-1 PDB-1 F58 P58 3-904位BCD数据加法………………………………………..B+ PB+ F42 P42 3-888位BCD数据加法………………………………………..DB+ PDB+ F41 P41 3-864位BCD数据加法………………………………………..B+ PB+ F40 P40 3-144区块检查码(BCC)计算………………………………….BCC PBCC F70 P70 数据比较指令 3-12932位数据区段比较……………………………………....DWIN PDWIN F63 P63 3-131数据块比较……………………………………………....BCMP PBCMP F64 P64 逻辑运算指令 3-13416位数据逻辑与……………………………………........WAN PWAN F65 P65 3-13616位数据逻辑或……………………………………........WOR PWOR F66 P66 3-13816位数据逻辑异或………………………......................XOR PXOR F67 P67 3-14016位数据逻辑异或非……………………......................XNR PXNR F68 P68 3-142字(16位)数据结合……………………………................WUNI PWUNI F69 P69 数据转换指令 3-147十六进制数据→ ASCII码 …………………….............HEXA PHEXA F71 P71 3-150ASCII码→十六进制数据………………………………..AHEX PAHEX F72 P72 3-154BCD数据→ASCII码…………………………………….BCDA PBCDA F73 P73 3-158ASCII码数据→BCD数据………………………..……...ABCD PABCD F74 P74 3-16216位数据→ASCII码………………………………........BINA PBINA F75 P75 3-12716位数据区段比较……………………………………....WIN PWIN F62 P62 3-12332位数据比较…………………………………………....DCMP PDCMP F61 P61 3-11916位数据比较…………………………………………....CMP PCMP F60 P60 3-166ASCII码→16位数据..…………………………………...ABIN PABIN 3-195数据解码..………………….……………………...........DECO PDECO F90 P90 F76 P76 3-1804位BCD数据→16位数据..………………………...........BIN PBIN F81 P81 3-18232位数据→8位BCD数据..……………………………...DBCD PDBCD F82 P82 3-1848位BCD数据→32位数据..……………………………...DBIN PDBIN F83 P83 3-18616位数据求反..…………….……………………...........INV PINV F84 P84 3-18716位数据求补..…………………………………............NEG PNEG F85 P85 3-18932位数据求补..…………………………….……...........DNEG PDNEG F86 P86 3-19116位数据取绝对值..……………..………………...........ABS PABS F87 P87 3-19232位数据取绝对值..……………..………………...........DABS PDABS F88 P88 3-19316位数据带符号扩展..…………………..………...........EXT PEXT F89 P89 3-19916位数据7段码译码..……………………………...........SEGT PSEGT F91 P91 3-201数据编码..…………………..……………………...........ENCO PENCO F92 P92 3-20516位数据组合..…………………..………………...........UNIT PUNIT F93 P93 3-17816位数据→4位BCD数据..………………………...........BCD PBCD F80 P80 3-174ASCII码→32位数据..……………………………...........DABI PDABI F78 P78 3-17032位数据→ASCII码..……………………………...........DBIA PDBIA F77 P77 3-242多个16位数据右移1digit(4位)..………………………....WBSR PWBSR F112 P112 数据移位指令 3-20716位数据分离..…………….……………………............DIST PDIST 3-236多个16位数据一并左移..…………….………………….BITL PBITL F109 P109 F94 P94 3-216数据压缩移位读取..…………….…………………….....CMPR PCMPR F98 P98 3-219数据移位写入..…………….……………………............CMPW PCMPW F99 P99 3-22216位数据以位为单位右移..…………….……………….SHR PSHR F100 P100 3-22416位数据以位为单位左移..…………….……………….SHL PSHL F101 P101 3-22632位数据以位为单位右移..…………….……………….DSHR PDSHR F102 P102 3-22816位数据以位为单位左移..…………….……………….DSHL PDSHL F103 P103 3-23016位数据右移1digit(4bit)..…………….……………..BSR PBSR F105 P105 3-23216位数据左移1digit(4bit)..…………….……………..BSL PBSL F106 P106 3-234多个16位数据一并右移..…………….………………….BITR PBITR F108 P108 3-238多个16位数据字单位(16位)右移..…………….………..WSHR PWSHR F110 P110 3-240多个16位数据字单位(16位)右移..…………….………..WSHL PWSHL F111 P111 3-244多个16位数据右移1digit(4位)..………………………....WBSL PWBSL F113 P113 3-21432位数据查找..…………….……………………............DSRC PDSRC F97 P97 3-21216位数据查找..…………….……………………............UNIT PUNIT F96 P96 3-209字符→ASCII码..…………….……………………..........ENCO PENCO F95 P95 位(bit)操作指令 3-28116bit数据位置位..…………….……………………........BTS PBTS F130 P130 3-28316bit数据位复位..…………….……………………........BTR PBTR F131 P131 3-27532bit数据循环左移..…………….…………………….....DROL PDROL F126 P126 FIFO指令 基本功能指令 3-259加/减计数器..…………….……………………..............UDCF118 P118 3-262左/右移位寄存器..…………….…………………….......LRSRF119 P119 数据循环移位指令 3-26516bit数据循环右移..…………….…………………….....ROR PROR F120 P120 3-26716bit数据循环左移..…………….…………………….....ROL PROL F121 P121 3-26916bit数据循环右移(带进位标志位)..…………….……..RCR PRCR F122 P122 3-27116bit数据循环右移(带进位标志位)..…………….……..RCL PRCL F123 P123 3-27332bit数据循环右移 ……….…………………….............DRCR PDRCR F125 P125 3-27732bit数据循环右移(带进位标志位)..…………….……..DRCR PDRCR F127 P127 3-27932bit数据循环左移(带进位标志位)..…………….……..DRCL PDRCL F128 P128 3-28516bit数据位求反..…………….……………………........BTI PBTI F132 P132 3-252FIFO缓冲区数据写入..…………….…………………....FIFW PFIFW F117 P117 3-248FIFO缓冲区数据读取..…………….…………………....FIFR PFIFR F116 P116 3-246FIFO缓冲区定义..…………….……………………........FIFT PFIFT F115 P115 3-362显示信息……………………………………..................MSG PMSG F149 P149 3-356打印输出……………………………………..................PRF147 3-360自诊断错误设置……………………………………........ERR PERR F148 P148 3-28716bit数据位测试…………………………………….......BTT PBTT 3-310串行数据通信……………………………………...........TRNSF144 F133 P133 3-29316bit辅助定时器…………………………………….......STMRF137 P137 特殊指令 3-296时/分/秒数据转换为秒数据 …………………………….HMSS PHMSS F138 P138 3-298转换秒数据为时/分/秒数据……………………………..SHMS PSHMS F139 P139 3-301进位标志置位……………………………………...........STC PSTC F140 P140 3-302进位标志复位……………………………………...........CLC PCLC F141 P141 3-303看门狗定时器刷新……………………………………....WDT PWDT F142 P142 3-305部分I/O刷新…………………………………….............IORFF143 3-308部分I/O刷新……………………………………..............IORF PIORF F143 P143 3-336数据发送……………………………………..................SEND PSEND F145 P145 3-346数据接收(MEWNET链接)……………………………...RECV PRECV F146 P146 3-365读取数据……………………………………..................READ PREAD F150 P150 基本功能指令 3-29132bit数据中1的总个数…………………………………..DBCU PDBCU F136 P136 3-28916bit数据中1的总个数…………………………………..BCU PBCU F135 P135 3-379机器语言程序调用……………………………………....MCAL PMCAL F154 P154 3-431脉冲输出(JOG点动运行: 带通道指定)…………...........PLSF169 3-433PWM脉冲输出(带通道指定)…………………………....PWMF170 3-435脉冲输出控制(梯形控制: 带通道指定)...………...........SPDHF171 3-443脉冲输出控制(JOG控制: 带通道指定)…………….......PLSHF172 3-421目标值一致OFF(带通道指定)……………..……...........HC1RF167 3-423位置控制(梯形控制)…………………………………….SPD1F168 3-368写入数据……………………………………..................WRT PWRT 3-403脉冲输出控制(晶体管输出型)………………………….SPD0F164 F151 P151 3-382采样停止…………………………………………...........STRG PSTRG F156 P156 3-384时间加法…………………………………………...........CADD PCADD F157 P157 3-387时间减法…………………………………………...........CSUB PCSUB F158 P158 3-390串行数据通信……………………………………...........MTRNF159 BIN算术运算指令 3-39732bit数据平方根…………………………………….......DSQR PDSQR F160 P160 特殊指令(高速计数指令) 3-399目标值一致ON……………………………………..........HC0SF162 3-401目标值一致OFF……………………………………........HC0RF163 3-412凸轮输出控制……………………………………...........CAM0F165 3-419目标值一致ON(带通道指定)……………………...........HC1SF166 3-380采样………………………………………………...........SMPL PSMPL F155 P155 3-375写入MEWNET-F子站数据……………………………...RMWT PRMWT F153 P153 3-371读取MEWNET-F子站数据……………………………...RMRD PRMRD F152 P152 3-47832位数据逻辑异或非…………………………………....DXNR PDXNR F218 P218 3-480双字数据组合…………………………………...............DUNI PDUNI F219 P219 数据转换指令 3-48216bit二进制→格雷码转换……………………………....GRY PGRY F235 P235 3-48332bit二进制→格雷码转换……………………………....DGRY PDGRY F236 P236 3-48416bit格雷码→ 16bit二进制……………………………...GBIN PGBIN F237 P237 3-48532bit格雷码→ 32bit二进制……………………………...DGBIN PDGBIN F238 P238 3-446PWM脉冲输出控制(带通道指定)………………...........PWMH 3-47232位数据逻辑与………………………………………...DAND PDAND F215 P215 F173 画面显示指令 3-461FP-e画面显示登录……………………………………….SCRF180 3-464FP-e 画面显示选择切换………..……………………….DSPF181 基本功能指令 3-46532bit辅助定时器………………………………………...DSTMF183 数据传输指令 3-4683个16bit数据一并传输…………………………….…….MV3 PMV3 F190 P190 3-4703个16bit数据一并传输…………………………….…….DMV3 PDMV3 F191 P191 逻辑运算指令 3-47432位数据逻辑或………………………………………...DOR PDOR F216 P216 3-47632位数据逻辑异或……………………………………....DXOR PDXOR F217 P217 3-457脉冲输出控制(圆弧插补)……………………………….SPCHF176 3-453脉冲输出控制(直线插补)……………………………….SPSHF175 3-449脉冲输出控制(可选择数据表控制:带通道指定)……....SP0HF174 3-51432bit数据最小值………………………………………...DMIN PDMIN F273 P273 3-51616bit数据合计值和平均值……………………………....MEAN PMEAN F275 P275 3-486bit行→bit列转换………………………………………...COLM PCOLM 3-50816bit数据最大值………………………………………...MAX PMAX F270 P270 F240 P240 3-492字符串加法……………………………………………....SADD PSADD F258 P258 3-494计算字符串长度.………………………………………...LEN PLEN F259 P259 3-496查找字符串………………………………………............SSRC PSSRC F260 P260 3-498获取字符串右侧部分…………………………………....RIGHT PRIGHT F261 P261 3-500获取字符串左侧部分…………………………………....LEFT PLEFT F262 P262 3-502获取字符串的任意部分………………………………....MIDR PMIDR F263 P263 3-504改写字符串的指定部分………………………………....MIDW PMIDW F264 P264 3-506置换字符串……………………….……………………...SREP PSREP F265 P265 整形数据处理指令 3-51032bit数据最大值………………………………………...DMAX PDMAX F271 P271 3-51216bit数据最小值………………………………………...MIN PMIN F272 P272 3-51832bit数据合计值和平均值……………………………....DMEAN PDMEAN F276 P276 3-490字符串比较………………………………………............SCMP PSCMP F257 P257 字符串指令 3-488bit列→bit行转换………………………………………...LINE PLINE F241 P241 浮点型实数运算指令 3-52016bit数据表排序(升序或降序)………………………….SORT PSORT F277 P277 3-550BCD型反正切运算……………………………………....BATAN PBATAN F305 P305 3-552浮点数移动………………………………………............FMV PFMV F309 P309 3-52232bit数据表排序(升序或降序)………………………….DSORT PDSORT 3-544BCD型TAN运算………………………………………....BTAN PBTAN F302 P302 F278 P278 3-52816bit数据上下限控制…………………………………....LIMT PLIMT F285 P285 3-53016bit数据上下限控制…………………………………....DLIMT PDLIMT F286 P286 3-53216bit数据死区控制……………………………………....BAND PBAND F287 P287 3-53432bit数据死区控制……………………………………....DBAND PDBAND F288 P288 3-53616bit数据零区控制……………………………………....ZONE PZONE F289 P289 3-53832bit数据零区控制……………………………………....DZONE PDZONE F290 P290 BCD型实数运算指令 3-540BCD型SIN运算………………………………………....BSIN PBSIN F300 P300 3-542BCD型COS运算………………………………………....BCOS PBCOS F301 P301 3-546BCD型反正弦运算……………………………………....BASIN PBASIN F303 P303 3-548BCD型反余弦运算……………………………………....BACOS PBACOS F304 P304 整形数非线性函数指令 3-52632bit数据线性化………………………………………....DSCAL PDSCAL F283 P283 3-52416bit数据线性化………………………………………....SCAL PSCAL F282 P282 3-554浮点数加法………………………………………............F+ PF+ F310 P310 3-556浮点数减法………………………………………............F- PF- 3-582实数型平方根………………………………………........FSQR PFSQR F324 P324 F311 P311 3-564实数型COS运算………………………………………....COS PCOS F315 P315 3-566实数型TAN运算………………………………………....TAN PTAN F316 P316 3-568实数型arcSIN运算……………………………………….ASIN PASIN F317 P317 3-570实数型arcCOS运算……………………………………....ACOS PACOS F318 P318 3-572实数型arcTAN运算……………………………………...ATAN PATAN F319 P319 3-574实数型自然对数………………………………………....LN PLN F320 P320 3-576实数型指数………………………………………............EXP PEXP F321 P321 3-578实数型常用对数………………………………………....LOG PLOG F322 P322 3-580实数型数据乘幂………………………………………....PWR PPWR F323 P323 3-58416bit整数→浮点型实数………………………………....FLT PFLT F325 P325 3-58632bit整数→浮点型实数………………………………....DFLT PDFLT F326 P326 3-588浮点型实数→16bit整数(不超出最大值)……………….INT PINT F327 P327 3-562实数型SIN运算………………………………………......SIN PSIN F314 P314 3-560浮点数除法………………………………………............F% PF% F313 P313 3-558浮点数乘法………………………………………............F* PF* F312 P312 3-620浮点型实数零区控制…………………………………....FZONE PFZONE F349 P349 3-590浮点型实数→32bit整数(不超出最大值)……………….DINT PDINT 3-614浮点型实数带域比较…………………………………....FWIN PFWIN F346 P346 F328 P328 3-598浮点型实数→32bit整数(小数点以下四舍五入)……….DROFF PDROFF F332 P332 3-600浮点型实数数据取整(小数点部分舍去)………………..FINT PFINT F333 P333 3-602浮点型实数数据取整(小数点部分四舍五入)…..............FRINT PFRINT F334 P334 3-604浮点型实数数据符号交换……………………………....F+/- PF+/- F335 P335 3-606浮点型实数绝对值……………………………………....FABS PFABS F336 P336 3-608浮点型实数角度→弧度………………………………....RAD PRAD F337 P337 3-610浮点型实数弧度→角度………………………………....DEG PDEG F338 P338 浮点型实数数据处理指令 3-612浮点型实数比较………………………………………....FCMP PFCMP F345 P345 3-616浮点型实数上下限限位控制……………………............FLIMT PFLIMT F347 P347 3-618浮点型实数死区控制…………………………………....FBAND PFBAND F348 P348 3-622浮点型实数求最大值…………………………………....FMAX PFMAX F350 P350 3-596浮点型实数→16bit整数(小数点以下四舍五入)……….ROFF PROFF F331 P331 3-594浮点型实数→32bit整数(小数点以下舍去)…………….DFIX PDFIX F330 P330 3-592浮点型实数→16bit整数(小数点以下舍去)…………….FIX PFIX F329 P329 比较指令 3-624浮点型实数求最小值…………………………………....FMIN PFMIN 3-648文件寄存器Bank切换…………………………………....CBFL PCBFL F415 P415 F351 P351 3-630PID过程控制………………………………………..........PIDF355 P355 3-638数据变化检出(16bit)…………………………………….DTR PDTR F373 P373 3-640数据变化检出(32bit)…………………………………….DDTR PDDTR F374 P374 索引寄存器Bank指令 3-642索引寄存器Bank设置…………………………………....SETB PSETB F410 P410 3-644索引寄存器Bank切换…………………………………....CHGB PCHGB F411 P411 3-646索引寄存器Bank恢复…………………………………....POPB PPOPB F412 P412 文件寄存器Bank指令 3-647文件寄存器Bank设置…………………………………....SBFL PSBFL F414 P414 3-649文件寄存器Bank恢复…………………………………....PBFL PPBFL F416 P416 时系列处理指令 3-628浮点型实数排序………………………………………....FSORT PFSORT F353 P353 3-626浮点型实数合计值和平均值…………………………....FMEAN PFMEAN F352 P352 1 - 1 第一章 继电器、存储器和常数 1 - 1 1.1 继电器、存储器和常数表 1.1.1 FP0/FP-e 编号方式 项目 FP0- C10/C14/C16 FP-e FP0- C32 FP0- T32C 功能 外部输入继电器 (X) 208 点(X0~X12F) 根据外部输入通断。 外部输出继电器 (Y) 208 点(Y0~Y12F) 外部输出通断。 内部继电器(R) (*注释 2) 1008 点 (R0~R62F) 只在程序内部通断的继电器。 定时器(T) (*注释 2) 如果 TM 指令定时到时,则相同编 号的触点接通。 计数器(C) (*注释 2) 144 点 (T0~T99/C100~C143) (*注释 1) 如果 CT 指令计数到,则相同编号 的触点接通。 继电器 特殊内部继电器 (R) 64 点(R9000~R903F) 为根据规格条件通断的继电器,并 用于标志。 外部输入继电器 (WX) 13 字(WX0~WX12) 以 1 个字(16 位)的数据指定 16 个 外部输入点。 外部输出继电器 (WY) 13 字(WY0~WY12) 以 1 个字(16 位)的数据指定 16 个 外部输出点。 内部继电器(WR) (*注释 2) 63 字(WR0~WR62) 以 1 个字(16 位)的数据指定 16 个 内部继电器点。 数据寄存器(DT) (*注释 2) 1660 字 (DT0~DT1659) 6144 字 (DT0~ DT6143) 16384 字 (DT0~ DT16383) 被用于程序的数据存储区。数据被 处理为 16 位(1 个字)。 定时器/计数器 设定值区(SV) (*注释 2) 144 字(SV0~SV143) 用于存储定时器的设定值以及计数 器的缺省值。以定时器/计数器数字 进行存储。 定时器 /计数器经 过值区(EV) (*注释 2) 144 字(EV0~EV143) 用于存储通过定时器/计数器操作 的经过值。以定时器/计数器数字进 行存储。 特殊数据寄存器 (DT) 112 字 (DT9000~ DT9111) 112 字 (DT90000~DT90111) 用于存储特殊数据的数据存储区。 不同的设置和错误代码将被存储。 存储区 索引寄存器(I) 2 字(IX,IY) 寄存器可被用作存储区地址和常数 的修改器。 K-32768~K32767(16bit 操作数) 十进制常数(K) K-2147483648~K2147483647(32bit 操作数) H0~HFFFF(16bit 操作数) 常数 十六进制常数(H) H0~HFFFFFFFF(32bit 操作数) 1 - 2 注释: 1) 定时器和计数器的点数可以通过设定系统存储器 5 来改变。表中所给数字为系统寄存器 5 处于缺省 设定时的数值。 2) 有两种数据类型,一种是保持型,即保存在关断电源之前或从运行模式切换为编程模式之前存在的 状态。另一种是非保持型,即将该状态复位。对于 FP0-C10/C14/C16/C32 和 FP-e,保持型区与非 保持型区是固定的,其地址分配如下。 保存型区和非保存型区 定时器 非保持型:所有点 非保持型 从设定值到 C139 从设定值到 C127 计数器 保持型 4 点(经过值) (C140~C143) 16 点(经过值) (C128~C143) 非保持型 976 点 (R0~R60F) 61 字 (WR0~WR60) 880 点 (R0~R54F) 55 字 (WR0~WR54) 内部继电器 保持型 32 点(R610~R62F) 2 字(WR61~WR62) 128 点(R550~R62F) 8 字(WR55~WR62) 非保持型 1652 字 (DT0~DT1651) 6112 字 (DT0~DT6111) 数据寄存器 保持型 8 字 (DT1652~DT1659) 32 字 (DT6112~DT6143) 对于 FP0-T32C 和带日历时钟功能的 FP-e,保存型和非保存型的选择可通过设定系统寄存器来改变。 1 - 3 1.1.2 FP∑ 项目 点数 可使用的存储区域 功能 外部输入继电器 (见注释 1) FPG-C32T/C32TTM 512 X0~X31F 外部输入继电器 (见注释 1) FPG-C32T2/C32T2TM FPG-C24R2/C24R2TM FPG-C28P2 1184 X0~X73F 由外部输入决定 ON 或 OFF 外部输出继电器 (见注释 1) FPG-C32T/C32TTM 512 Y0~Y31F 外部输出继电器 (见注释 1) FPG-C32T2/C32T2TM FPG-C24R2/C24R2TM FPG-C28P2 1184 Y0~Y73F 对外输出 ON 或 OFF 状 态 内部继电器 (见注释 2) 1568 R0~R97F 只能在程序内 ON 或 OFF 链接继电器 (见注释 2) 1024 L0~L63F 在PC-link中使用的共享 继电器 定时器 (见注释 2 和 3) 1024 T0~T1007/ C1008~C1023 当到达设定时间时变为 ON。 与定时器编号对应 计数器 (见注释 2 和 3) 1024 C1008~C1023/ T0~T1007 当计数到达时变为 ON。 与计数器编号对应 继 电 器 特殊内部继电器 176 R9000~R910F 根据特殊条件决定 ON 或 OFF。用作标志。 外部输入继电器 (见注释 1) FPG-C32T/C32TTM 32 字 WX0~WX31 外部输入继电器 (见注释 1) FPG-C32T2/C32T2TM FPG-C24R2/C24R2TM FPG-C28P2 74 字 WX0~WX73 设定的 16个外部输入点 标记,如同一个数据字 (16 位)。 外部输出继电器 (见注释 1) FPG-C32T/C32TTM 32 字 WY0~WY31 外部输出继电器 (见注释 1) FPG-C32T2/C32T2TM FPG-C24R2/C24R2TM FPG-C28P2 74 字 WY0~WY73 设定的 16个外部输出点 的代码,如同一个数据 字(16 位)。 内部继电器 (见注释 2) 98 字 WR0~WR97 设定的 16个内部继电器 点的代码,如同一个数 据字(16 位)。 存 储 区 (字) 链接继电器 64 字 WL0~WL63 设定的 16个链接继电器 点的代码,如同一个数 据字(16 位)。 1 - 4 数据寄存器 (见注释 2) 32765 字 DT0~DT32764 程序中使用的数据寄存 器。数据按 16bit(一个字) 操作。 链接数据寄存器 (见注释 2) 128 字 LD0~LD127 在PC-link中使用的共享 数据寄存器。数据按 16bit(一个字)操作。 定时器/计数器设定值区 域。 (见注释 2) 1024 字 SV0~SV1023 存储定时器目标值和计 数器初值的数据寄存器。 按定时器/计数器编号存 储。 定时器/计数器经过值区 域。 (见注释 2) 1024 字 EV0~EV1023 存储定时器/计数器操作 中的经过值的数据寄存 器。按定时器/计数器编 号存储。 特殊数据寄存器 260 字 DT90000~DT90259 存储特殊数据的数据寄 存器。存放各种设置和错 误代码。 存 储 区 (字) 索引寄存器 14 字 I0-ID 可用作存储区域或常数 修正的地址。 项目 可使用范围 K-32768~K32767(对于 16bit 操作) 十进制常数 (整数) K-2147483648~K2147483647(对于 32bit 操作) H0~HFFFF(对于 16bit 操作) 十六进制常数 H0~HFFFFFFFF(对于 32bit 操作) f-1.175494×10-38~f-3.402823×1038 常 数 十进制常数 (单精度实数) f1.175494×10-38~f3.402823×1038 注释: 1) 表中所列的点数的数值是可以用于运算的保留区域. 实际可使用的点数由硬件配置决定. 2) 如果不使用电池, 只能备份固定区域的数据(计数器 16 点: C1008~C1023, 内部继电器 128 点: R900~R97F, 数据寄存器: DT32710~DT32764). 当使用电池选件时, 数据可 以备份, 保持型区与非保持型区可以通过系统寄存器进行设置. 3) 定时器与计数器的点数分配可以通过系统寄存器 5 进行设置. 表中所列的数字是系统 寄存器 5 的缺省设置值. 1 - 5 1.1.3 FP1 编号方式 项目 C14/C16 C24/C40 C56/C72 功能 外部输入继电器 (X) 208 点(X0~X12F) 根据外部输入通断。 外部输出继电器 (Y) 208 点(Y0~Y12F) 外部输出通断。 内部继电器(R) (*注释 1) 256 点 (R0~R15F) 1008 点 (R0~R62F) 只在程序内部通断的继电器。 定时器(T) (*注释 1) 如果 TM 指令定时到时,则具有相同 编号的触点被接通。 计数器(C) (*注释 1) 128 点 (T0~T99/ C100~C127) (*注释 2) 144 点 (T0~T99/C100~C143) (*注释 2) 如果 CT 指令计数到,则具有相同编 号的触点被接通。 继电器 特殊内部继电器 (R) 64 点(R9000~R903F) 根据特殊条件决定 ON 或 OFF。用 作标志. 外部输入继电器 (WX) 13 字(WX0~WX12) 外部输入继电器(WX)的字格式.是 把 16 位继电器组作为 1 个字(1 个字 =16 位) 外部输出继电器 (WY) 13 字(WY0~WY12) 外部输出继电器(WY)的字格式,是 把 16 位继电器组作为 1 个字(1 个字 =16 位) 内部继电器(WR) 16 字 (WR0~ WR15) 63 字(WR0~WR62) 内部继电器(WR)的字格式是把16位 继电器组作为 1 个字(1 个字=16 位) 数据寄存器(DT) (*注释 1) 256 字 (DT0DT255) 1660 字 (DT0~ DT1659) 6144 字 (DT0~ DT6143) 数据寄存器是存放处理数据的存储 区,每个数据寄存器由 1 个字组成(1 个字=16 位) 定时器/计数器 设定值区(SV) (*注释 1) 128 字 (SV0~ SV127) 144 字(SV0~SV143) 用于存储定时器的设定值以及计数 器的缺省值。以定时器/计数器编号 进行存储。 定时器/计数器 经过值区(EV) (*注释 1) 128 字 (EV0~ EV127) 144 字(EV0~EV143) 用于存储通过定时器/计数器操作的 经过值。以定时器/计数器编号进行 存储。 特殊数据寄存器 (DT) 70 字(DT9000~DT9069) 用于存储特殊数据的数据存储区。存 储不同的设置和错误代码。 存储区 索引寄存器(I) 2 字(IX,IY) 寄存器可被用作存储区地址和常数 的变址修正。 K-32768~K32767(16bit 操作数) 十进制常数(K) K-2147483648~K2147483647(32bit 操作数) H0~HFFFF(16bit 操作数) 常数 十六进制常数(H) H0~HFFFFFFFF(32bit 操作数) 1 - 6 注释: 1) 有两种数据类型,一种是保持型,即保存在关断电源之前或从运行模式切换为编程模式之前存在的 状态。另一种是非保持型,即将该状态复位。可通过设定系统寄存器改变保持型区和非保持型区的 选择。关于系统寄存器的详细内容,请参阅相关章节。 2) 定时器和计数器的点数可以通过设定系统寄存器 5 改变。表中所给数字为系统寄存器 5 处于缺省设 定时的数值。关于系统寄存器的详细内容,请参阅相关章节。 1 - 7 1.1.4 FP-M 编号方式 项目 C16T C20R/ C20T/ C32T C20RC/ C20TC/ C32TC 功能 外部输入继电器 (X) 208 点(X0~X12F) 根据外部输入通断。 外部输出继电器 (Y) 208 点(Y0~Y12F) 外部输出通断。 内部继电器(R) (*注释 1) 256 点 (R0~R15F) 1008 点 (R0~R62F) 只在程序内部通断的继电器。 定时器(T) 如果 TM 指令定时到时,则具有相同 编号的触点被接通。 计数器(C) 128 点 (T0~T99/ C100~C127) (*注释 2) 144 点 (T0~T99/C100~C143) (*注释 2) 如果 CT 指令计数到,则具有相同编 号的触点被接通。 继电器 特殊内部继电器 (R) 64 点(R9000~R903F) 根据特殊条件决定开 ON 或 OFF。用 作标志. 外部输入继电器 (WX) 13 字(WX0~WX12) 外部输入继电器(WX)的字格式是把 16位继电器组作为1个字(1个字=16 位) 外部输出继电器 (WY) 13 字(WY0~WY12) 外部输出继电器(WY)的字格式是把 16位继电器组作为1个字(1个字=16 位) 内部继电器(WR) 16 字 (WR0~ WR15) 63 字(WR0~WR62) 内部继电器(WR)的字格式是把 16 位 继电器组作为 1 个字(1 个字=16 位) 数据寄存器(DT) (*注释 1) 256 字 (DT0DT255) 1660 字 (DT0~ DT1659) 6144 字 (DT0~ DT6143) 数据寄存器是存放处理数据的存储 区,每个数据寄存器由 1 个字组成(1 个字=16 位) 定时器/计数器 设定值区(SV) (*注释 1) 128 字 (SV0~ SV127) 144 字(SV0~SV143) 用于存储定时器的设定值以及计数 器的缺省值。以定时器/计数器编号进 行存储。 定时器/计数器 经过值区(EV) (*注释 1) 128 字 (EV0~ EV127) 144 字(EV0~EV143) 用于存储通过定时器/计数器操作的 经过值。以定时器/计数器编号进行存 储。 特殊数据寄存器 (DT) 70 字 (DT9000~ DT9069) 112 字 (DT9000~DT9069) (DT9080~DT9121) 用于存储特殊数据的数据存储区。存 储不同的设置和错误代码。 存储区 索引寄存器(I) 2 字(IX,IY) 寄存器可被用作存储区地址和常数 的变址修正。 K-32768~K32767(16bit 操作数) 十进制常数(K) K-2147483648~K2147483647(32bit 操作数) H0~HFFFF(16bit 操作数) 常数 十六进制常数(H) H0~HFFFFFFFF(32bit 操作数) 1 - 8 注释: 1) 有两种数据类型,一种是保持型,即保存在关断电源之前或从运行模式切换为编程模式之前存在的 状态。另一种是非保持型,即将该状态复位。可通过设定系统寄存器改变保持型和非保持型的选择。 关于系统寄存器的详细内容,请参阅相关章节。 2) 定时器和计数器的点数可以通过设定系统存储器 5 来改变。表中所给数字为系统寄存器 5 处于缺省 设定时的数值。关于系统寄存器的详细内容,请参阅相关。 1 - 9 1.1.5 FP2 项目 编号 功能 外部输入继电器(X) 2048 点 (X0~X127F) 根据外部输入通断。 外部输出继电器(Y) 2048 点 (Y0~Y127F) 外部输出通断。 内部继电器(R) (*注释 1) 4048 点 (R0~R252F) 只在程序内部通断的继电器。 链接继电器(L) (*注释 1) 2048 点 (L0~L127F) 为共享继电器,用于 MEWNET 链接系统。 定时器(T) (*注释 1、2) 如果 TM 指令定时到时,则具有相同编号的触 点被接通。 计数器(C) (*注释 1、2) 1024 点 (T0~T999/ C1000~C1023) 如果 CT 指令计数到,则具有相同编号的触点 被接通。 脉冲继电器(P) 1024 点 (P0~P63F) 该继电器只用于脉冲输出指令(OT↑、OT↓), 接通一个扫描周期。 继电器 特殊内部继电器(R) 176 点 (R9000~R910F) 根据特殊条件决定 ON 或 OFF。用作标志. 外部输入继电器(WX) 128 字 (WX0~WX127) 以 1个字(16位)的数据指定 16个外部输入点。 外部输出继电器(WY) 128 字 (WY0~WY127) 以 1个字(16位)的数据指定 16个外部输出点。 内部继电器(WR) 253 字 (WR0~WR252) 以 1 个字(16 位)的数据指定 16 个内部继电器 点。 链接继电器(WL) 128 字 (WL0~WL127) 以 1 个字(16 位)的数据指定 16 个链接继电器 点。 数据寄存器(DT) (*注释 1) 6000 字 (DT0~DT5999) 被用于程序的数据存储区。数据被处理为 16 位(1 个字)。 链接数据寄存器(LD) (*注释 1) 256 字 (LD0~LD255) 这是在MEWNET链接系统内部使用的一个共 享的数据存储区。数据被处理为 16(1 个字)。 定时器/计数器设定值区(SV) (*注释 1) 1024 字 (SV0~SV1023) 用于存储定时器的目标值以及计数器的初始 值。以定时器/计数器数字进行存储。 定时器/计数器经过值区(EV) (*注释 1) 1024 字 (EV0~EV1023) 用于存储通过定时器/计数器操作的经过值。 以定时器/计数器数字进行存储。 文件寄存器(FL) (*注释 1、3) FP2(16K):0~14333 字 (FL0~FL14332) FP2(32K)(扩展时): 0~30717 字 (FL0~FL30716) 用于程序的数据存储区。数据处理为 16 位 (1 个字)。 特殊数据寄存器(DT) 256 字 (DT90000~DT90255) 用于存储特殊数据的数据存储区。存储不同的 设置和错误代码。 存储区 索引寄存器(I) 14 字(I0~ID) 寄存器可被用作存储区地址和常数的变址。 K-32768~ K32767(16-bit 操作数) 十进制常数(整形)(K) K-2147483648~K2147483647(32-bit 操作数) H0~HFFFF(16-bit 操作数) 十六进制常数(H) H0~HFFFFFFFF(32-bit 操作数) f-1.175494×10-38 ~f-3.402823×1038 常数 十进制常数 (单精度实数) f1.175494×10-38 ~f3.402823×1038 1 - 10 注释: 1) 有两种数据类型,一种是保持型,即保存在关断电源之前或从运行模式切换为编程模式之前存在的 状态。另一种是非保持型,即将该状态复位。可通过设定系统寄存器改变保持型和非保持型的选择。 关于系统寄存器的详细内容,请参阅相关章节。 2) 定时器和计数器的点数可以通过设定系统寄存器 5 来改变。表中所给数字为系统寄存器 5 处于缺省 设定时的数值。关于系统寄存器的详细内容,请参阅相关章节。 3) 文件寄存器的容量根据系统寄存器 0、1 和 2 的设定状态而定。关于系统寄存器的详细内容,请参 阅相关章节。 1 - 11 1.1.6 FP2SH 项目 编号 功能 外部输入继电器(X) 8192 点 (X0~X511F) 根据外部输入通断。 外部输出继电器(Y) 8192 点 (Y0~Y511F) 外部输出通断。 内部继电器(R) (*注释 1) 14192 点 (R0~R886F) 只在程序内部通断的继电器。 链接继电器(L) (*注释 1) 10240 点 (L0~L639F) 为共享继电器,用于 MEWNET 链接系统。 定时器(T) (*注释 1、2) 如果 TM 指令定时到时,则具有相同编号的触 点被接通。 计数器(C) (*注释 1、2) 3072 点 (T0~T2999/ C3000~C3071) 如果 CT 指令计数到,则具有相同编号的触点 被接通。 脉冲继电器(P) 2048 点 (P0~P127F) 该继电器只用于脉冲输出指令(OT↑、OT↓), 接通一个扫描周期。 错误报警继电器(E) 2048 点 (E0~E2047) 如果程序运行时为 ON,则该继电器会存储缓 冲区的历史记录。可以为该继电器编程以使它 在运行异常时为 ON。 继电器 特殊内部继电器(R) 176 点 (R9000~R910F) 根据特殊条件决定 ON 或 OFF。用作标志. 外部输入继电器(WX) 512 字 (WX0~WX511) 以 1个字(16位)的数据指定 16个外部输入点。 外部输出继电器(WY) 512 字 (WY0~WY511) 以 1个字(16位)的数据指定 16个外部输出点。 内部继电器(WR) 887 字 (WR0~WR886) 以 1 个字(16 位)的数据指定 16 个内部继电器 点。 链接继电器(WL) 640 字 (WL0~WL639) 以 1 个字(16 位)的数据指定 16 个链接继电器 点。 数据寄存器(DT) (*注释 1) 10240 字 (DT0~DT10239) 被用于程序的数据存储区。数据被处理为 16 位(1 个字)。 链接数据寄存器(LD) (*注释 1) 8448 字 (LD0~LD8447) 这是在MEWNET链接系统内部使用的一个共 享的数据存储区。数据被处理为16位(1个字)。 定时器/计数器设定值区(SV) (*注释 1) 3072 字 (SV0~SV3071) 用于存储定时器的目标值以及计数器的初始 值。以定时器/计数器编号进行存储。 定时器/计数器经过值区(EV) (*注释 1) 3072 字 (EV0~EV3071) 用于存储通过定时器/计数器操作的经过值。以 定时器/计数器编号进行存储。 文件寄存器(FL) (*注释 1) 98295 字 (32765 字×3bank) 被用于程序的数据存储区。数据被处理为 16 位(1 个字)。 特殊数据寄存器(DT) 512 字 (DT90000~DT90511) 用于存储特殊数据的数据存储区。存储不同的 设置和错误代码。 存储区 索引寄存器(I) 14 字×16banks(I0~ID) 寄存器可被用作存储区地址和常数的修改器。 K-32768~ K32767(16-bit 操作数) 十进制常数(整形)(K) K-2147483648 ~K2147483647(32-bit 操作数) H0~HFFFF(16-bit 操作数) 十六进制常数(H) H0~HFFFFFFFF(32-bit 操作数) f-1.175494×10-38 ~f-3.402823×1038 常数 十进制常数(单精度实数)(f) f1.175494×10-38 ~f3.402823×1038 1 - 12 注释: 1) 有两种数据类型,一种是保持型,即保存在关断电源之前或从运行模式切换为编程模式之前存在的 状态。另一种是非保持型,即将该状态复位。可通过设定系统寄存器改变保持型和非保持型的选择。 关于系统寄存器的详细内容,请参阅相关章节。 2) 定时器和计数器的点数可以通过设定系统存储器 5 来改变。表中所给数字为系统寄存器 5 处于缺省 设定时的数值。关于系统寄存器的详细内容,请参阅相关章节。 1 - 13 1.1.7 FP10SH 项目 编号 功能 外部输入继电器(X) 8192 点 (X0~X511F) 根据外部输入通断。 外部输出继电器(Y) 8192 点 (Y0~Y511F) 外部输出通断。 内部继电器(R) (*注释 1) 14192 点 (R0~R886F) 只在程序内部通断的继电器。 链接继电器(L) (*注释 1) 10240 点 (L0~L639F) 为共享继电器,用于 MEWNET 链接系统。 定时器(T) (*注释 1、2) 如果 TM 指令定时到时,则具有相同编号的触 点被接通。 计数器(C) (*注释 1、2) 3072 点 (T0~T2999/ C3000~C3071) 如果 CT 指令计数到,则具有相同编号的触点 被接通。 脉冲继电器(P) 2048 点 (P0~P127F) 该继电器只用于脉冲输出指令(OT↑、OT↓), 接通一个扫描周期。 错误报警继电器(E) 2048 点 (E0~E2047) 如果程序运行时为 ON,则该继电器会存储缓 冲区的历史记录。可以为该继电器编程以使它 在运行异常时变为 ON。 继电器 特殊内部继电器(R) 176 点 (R9000~R910F) 根据特殊条件决定 ON 或 OFF。用作标志. 外部输入继电器(WX) 512 字 (WX0~WX511) 以 1个字(16位)的数据指定 16个外部输入点。 外部输出继电器(WY) 512 字 (WY0~WY511) 以 1个字(16位)的数据指定 16个外部输出点。 内部继电器(WR) 887 字 (WR0~WR886) 以 1 个字(16 位)的数据指定 16 个内部继电器 点。 链接继电器(WL) 640 字 (WL0~WL639) 以 1 个字(16 位)的数据指定 16 个链接继电器 点。 数据寄存器(DT) (*注释 1) 10240 字 (DT0~DT10239) 被用于程序的数据存储区。数据被处理为 16 位(1 个字)。 链接数据寄存器(LD) (*注释 1) 8448 字 (LD0~LD8447) 这是在MEWNET链接系统内部使用的一个共 享的数据存储区。数据被处理为16位(1个字)。 定时器/计数器设定值区(SV) (*注释 1) 3072 字 (SV0~SV3071) 用于存储定时器的目标值以及计数器的初始 值。以定时器/计数器编号进行存储。 定时器/计数器经过值区(EV) (*注释 1) 3072 字 (EV0~EV3071) 用于存储通过定时器/计数器操作的经过值。以 定时器/计数器编号进行存储。 文件寄存器(FL) (*注释 1、3) 32765 字 (FL0~FL32764) 被用于程序的数据存储区。数据被处理为 16 位(1 个字)。 特殊数据寄存器(DT) 512 字 (DT90000~DT90511) 用于存储特殊数据的数据存储区。存储不同的 设置和错误代码。 存储区 索引寄存器(I) 14 字×16 层(I0~ID) 寄存器可被用作存储区地址和常数的变址。 K-32768~K32767(16-bit 操作数) 十进制常数(整形)(K) K-2147483648~K2147483647(32-bit 操作数) H0~HFFFF(16-bit 操作数) 十六进制常数(H) H0~HFFFFFFFF(32-bit 操作数) f-1.175494×10-38 ~f-3.402823×1038 常数 十进制常数(单精度实数)(f) f1.175494×10-38 ~f3.402823×1038 1 - 14 注释: 1) 有两种数据类型,一种是保持型,即保存在关断电源之前或从运行模式切换为编程模式之前存在的 状态。另一种是非保持型,即将该状态复位。可通过设定系统寄存器改变保持型和非保持型的选择。 关于系统寄存器的详细内容,请参阅相关章节。 2) 定时器和计数器的点数可以通过设定系统存储器 5 来改变。表中所给数字为系统寄存器 5 处于缺省 设定时的数值。关于系统寄存器的详细内容,请参阅相关章节。 1 - 15 1.1.8 FP3 项目 编号 功能 外部输入继电器(X) 2048 点 (X0~X127F) 根据外部输入通断。 外部输出继电器(Y) 2048 点 (Y0~Y127F) 外部输出通断。 内部继电器(R) (*注释 1) 1568 点 (R0~R97F) 只在程序内部通断的继电器。 链接继电器(L) (*注释 1) 2048 点 (L0~L127F) 为共享继电器,用于 MEWNET 链接系统。 定时器(T) (*注释 1、2) 如果 TM 指令定时到时,则具有相同编号的触 点被接通。 计数器(C) (*注释 1、2) 256 点 (T0~T199/ C200~C255) 如果 CT 指令计数到,则具有相同编号的触点 被接通。 继电器 特殊内部继电器(R) 176 点 (R9000~R910F) 根据特殊条件决定 ON 或 OFF。用作标志. 外部输入继电器(WX) 128 字 (WX0~WX127) 以 1个字(16位)的数据指定 16个外部输入点。 外部输出继电器(WY) 128 字 (WY0~WY127) 以 1个字(16位)的数据指定 16个外部输出点。 内部继电器(WR) 98 字 (WR0~WR97) 以 1 个字(16 位)的数据指定 16 个内部继电器 点。 链接继电器(WL) 128 字 (WL0~WL127) 以 1 个字(16 位)的数据指定 16 个链接继电器 点。 数据寄存器(DT) (*注释 1) 2048 字 (DT0~DT2047) 被用于程序的数据存储区。数据被处理为 16 位(1 个字)。 链接数据寄存器(LD) (*注释 1) 256 字 (LD0~LD255) 这是在MEWNET链接系统内部使用的一个共 享的数据存储区。数据被处理为16位(1个字)。 定时器/计数器设定值区(SV) (*注释 1) 256 字 (SV0~SV255) 用于存储定时器的目标值以及计数器的初始 值。以定时器/计数器编号进行存储。 定时器/计数器经过值区(EV) (*注释 1) 256 字 (EV0~EV255) 用于存储通过定时器/计数器操作的经过值。以 定时器/计数器数字编号存储。 文件寄存器(FL) (*注释 1、3) FP3(16K): 8189~22525 字 (FL0~FL22524) FP3(10K): 0~8189 字 (FL0~FL8188) 被用于程序的数据存储区。数据被处理为 16 位(1 个字)。 特殊数据寄存器(DT) 256 字 (DT9000~DT9255) 用于存储特殊数据的数据存储区。存储不同的 设置和错误代码。 存储区 索引寄存器(I) 2 字(IX,IY) 寄存器可被用作存储区地址和常数的变址。 K-32768~ K32767(16-bit 操作数) 十进制常数(整形)(K) K-2147483648 ~K2147483647(32-bit 操作数) H0~HFFFF(16-bit 操作数) 常数 十六进制常数(H) H0~HFFFFFFFF(32-bit 操作数) 1 - 16 注释: 1) 有两种数据类型,一种是保持型,即保存在关断电源之前或从运行模式切换为编程模式之前存在的 状态。另一种是非保持型,即将该状态复位。可通过设定系统寄存器改变保持型和非保持型的选择。 关于系统寄存器的详细内容,请参阅相关章节。 2) 定时器和计数器的点数可以通过设定系统存储器 5 来改变。表中所给数字为系统寄存器 5 处于缺省 设定时的数值。关于系统寄存器的详细内容,请参阅相关章节。 3) 文件寄存器的容量根据系统寄存器 0、1 和 2 的设定状态而定。关于系统寄存器的详细内容,请参阅 相关章节。 1 - 17 1.1.9 继电器编号 外部输入继电器(X)、外部输出继电器(Y)、内部继电器(R)、链接继电器(L)和脉冲继电器(P) 由于这些继电器是以 16 点为单位进行处理的,它们以十进制和十六进制数的组合表达如下: 各种继电器可选择的最大值不同。 示例: 外部输入继电器(X) X0, X1 …………………… XF X10, X11 ………………… X1F X20, X21 ………………… X2F 至 至 X1270, X1271 …………… X127F 定时器(T)和计数器(C) 定时器触点(T)和计数器触点(C)的地址与定时器和计数器指令数相对应,并且以十进制数表示如下。 示例: FP2 注释: 计数器和定时器共用同一区。此区域的分区可用系统寄存器 5 来改变。(此表的示例是设定值为 缺省值时的情况。) 错误报警继电器(E)(FP2SH/FP10SH) 错误报警继电器(E)的地址只用十进制数字来表示。 E0,E1……………E2047 十进制编号 十六进制编号 十进制编号 1 - 18 外部输入继电器(X)和外部输出继电器(Y) 只有编号按实际的输入触点指定的继电器才可用作外部输入继电器(X)。 只有编号按实际的输出触点指定的继电器才可用作外部输出继电器(Y)。没有按实际输入触点分配的外部输出 继电器(Y)可作为内部继电器使用。 编号的分配是根据各模块的组合及母板的使用情况确定的。关于 I/O 分配的详细内容,请参阅各型号 PLC 的 《硬件手册》。 示例:FP2 16 点外部输入继电器 X0 到 XF 分配给 0 号插槽中的 16 点输入单元,16 点外部输出继电器 Y10 到 Y1F 分配给 1 号插槽中的 16 点输出单元。 X10 至 X1F 的 16 点无法用于这种组合。 将输入和输出相组合, FP-M/FP0/FP1 可用 208 点,点 FP-C/FP2/FP3 可用 2048, FP2SH/FP10SH 可用 8192 点。 16 点 输 出 单 元 电 源 单 元 C P U 单 元 16 点 输 入 单 元 0 1 2 3 4 (插槽号) Y10~Y1F X0 ~ XF 16 点 输 出 单 元 电 源 单 元 C P U 单 元 16 点 输 入 单 元 1 - 19 WX、WY、WR 和 WL 与 X、Y、R、L 的关系 WX、WY、WR 和 WL 分别对应于各组 16 个外部输入继电器(X)点、16 个外部输出继电器(Y)点、16 个内部 继电器(R)点和 16 个链接继电器(L)点。 示例: 字单位外部输入继电器(WX) 各继电器由 16 个外部输入继电器(X)点构成,如下所示。 当外部输入继电器(X)的状态改变时,WX 的内容也发生变化。 1 - 20 1.2 继电器说明 1.2.1 外部输入继电器(X) 外部输入继电器(X)的功能 此继电器由诸如限位开关或光电传感器等外部器件向可编程控制器输送信号。 使用的限制条件: 实际不存在的输入的地址无法使用。 外部输入继电器的 ON 或 OFF 的状态,不能利用可编程控制器中的程序进行修改。 对于一个外部输入继电器,在程序中的使用次数没有限制。 程序 输入 [ ] X Y X触点:ON PLC CPU 输入 单元 输入:ON 1 - 21 1.2.2 外部输出继电器(Y) 外部输出继电器(Y)的功能 可以通过此继电器输出可编程控制器中程序的执行结果,启动一外部设备(负载),诸如电磁阀、控制面板或 智能单元。 外部输出继电器的 ON 或 OFF 状态作为控制信号输出。 使用限定条件 不存在实际分配的外部输出继电器可以作为内部继电器使用,但是不能被设为保持型数据。 作为触点使用时,对使用次数没有限制。 作为一项规定,当输出继电器被指定为 OT 或 KP 指令运算结果的目标输出时,一般在程序中限定使用一次(禁 止双重输出)。 注释: 通过改变系统寄存器 20 的设置,可允许重复使用输出。此外,即使同一继电器用于如 SET 及 RST 指令的操作数,它也不被定为多重使用输出。 双重输出 程序 [ ] X Y 输出继电器 PLC CPU 输出 单元 外部设备 (负载): ON R R / 执行 1 - 22 1.2.3 内部继电器(R) 内部继电器(R)的功能 内部继电器仅用于程序内部运算,ON 或 OFF 状态不会产生外部输出。当内部继电器的线圈受到激励时,其 触点即接通。 使用限制条件 作为触点使用时,对使用次数没有限制。 作为一项规定,当输出继电器被指定为 OT 或 KP 指令运算结果的目标输出时,一般在程序中限定使用一次(禁 止双重输出)。 注释: 可通过改变系统寄存器 20 的设置,允许重复使用输出。此外,即使同一继电器用于如 SET 及 RST 指令的操作数,它也不被定为多重使用输出。 对于 FP-C/FP2/FP2SH/FP3/FP10SH,如果在编程模式下,INITIALIZE(初始化)/TEST(测试)开关被置于上端 (初始化端),则全部内部继电器(R)会变为 OFF。如果已被指定为保持型(见下页),内部继电器(R)同样会变为 OFF。 注释: 对于 FP2SH/FP10SH,系统寄存器 4 可被设置成即使初始化/测试开关被置于上端、继电器状 态也不被消除的方式。 内部 继电器 1 - 23 非保持型继电器和保持型继电器 内部继电器有两类:非保持型继电器和保持型继电器。当电源断开或由 RUN.模式切换为 PROG.模式时, - 保持型继电器会保持其 ON 或 OFF 状态,并且当系统重新启动时恢复运行。 - 非保型继电器被复位。 对于 FP0 C10/C14/C16/C32 和无日历/时钟功能的 FP-e,非保持型和保持型继电器编号如下: 项目 非保持型 保持型 FP0 C10/C14/C16 FP-e R0~R60F(976 点) R610~R62F(32 点) FP0 C32 R0~R54F(880 点) R550~R62F(128 点) 对于 FP-C/FP-M/FP0 T32C/FPΣ/FP1/FP2/F2SH/FP3/FP10SH 和带日历/时钟功能的 FP-e,系统寄存器 7 可用于指定作为保持型或非保持型。如果用一个数字指定了保持型继电器的起始点,那么,在该点之前的继 电器将为非保持型,且之后的继电器将为保持型。 非保持型 保持型 保持型和非保持型的缺省设定状态 机型 非保持型 保持型 FP10SH/FP2SH R0~R499F(8000 点) R5000~R886F(6192 点) FP3 R0~R59F(960 点) R600~R97F(608 点) FP2 R0~R199F(3200 点) R2000~R252F(848 点) FP-M C16T FP1 C14,C16 R0~R9F(160 点) R100~R15F(96 点) FP-M C20, C32 FP1 C24,C40,C56,C72 R0~R9F(160 点) R100~R62F(848 点) FP0 T32C R0~R9F(160 点) R100~R62F(848 点) FPΣ R0~R89F(1440 点) R900~R97F(128 点) FP-e R0~R60F(976 点) R610~R62F(32 点) 注释: 对于 FPΣ和 FP-e, 在不使用后备电池的情况下, 请保持缺省设置的数值. 否则,不能确保 保持/非保持功能的数值. 系统寄存器 7 的设置值 (保持型区的起始编号) 1 - 24 1.2.4 特殊内部继电器 特殊内部继电器的功能 特殊内部继电器在特定条件下会变为 ON 或 OFF。ON/OFF 状态不向外部输出,仅在程序中起作用。 运行状态标志: 用 ON 或 OFF 表示运行状态。 - 运行(RUN)模式(R9020) - 强制输入/输出(R9029) - 链接站运行(R9060~R906F) - 每次扫描时交替 ON 或 OFF(R9012) - 比较指令的执行结果(R900A~R900C) - 高速计数器控制标志(R903A~R903D)及其他 错误标志: 发生错误时变为 ON。 - 运行错误(R9007, R9008) - 共享存储器存取错误(R9031)及其他 在特殊条件下变为 ON 和 OFF 的继电器: 可在程序中选择并使用相应的继电器, 实现所需条件 - 常开继电器(R9010) - 时钟脉冲继电器(R9018~R901E)等 对于 FP-C/FP2/FP2SH/FP10SH,如果在 PROG.模式下, INITIALIZE(初始化)/TEST(测试)开关置于上端(初 始化端),则特殊内部继电器 R9000 至 R910F 会变为 OFF。但是, 如果发生自诊断错误 44 或编号更小的错 误, R9000~R9008 不会被清除.。 1 - 25 1.2.5 链接继电器(L) (用于 FPΣ) 链接继电器(L)的功能 链接继电器是用于 PC-link 的继电器,当多台可编程序控制器用 PC-link 链接连接时,链接继电器可被它们共 享。 如果计算结果被输出到某一 PLC 的链接继电器(线圈), 则该结果也会同时被发送到通过 MEWNET 相连的其 他 PLC, 并且反映到具有相同编号的链接继电器(触点). 当使用链接继电器时,位数据的信息可以这种方式在 PLC 之间进行交换。 链接继电器的可用范围 链接继电器的有效范围依网络类型和单元的组合而异。点的有效范围和数目须针对各网络单独指定。 对于 MEWNET-W0: 对于一个控制单元, 多可使用 1024 点。有效范围为 L0 至 L63F。 MEWNET-W0 [ ] Ln Ln ON [ ] Ln ON 发送区 接收区 发送 接收 通信插件 1 - 26 指定保持型和非保持型 有两类链接继电器,当电源关断或由 RUN 模式转为 PROG 模式、以及运行停止时,可以进行切换。 保持型继电器在停止期间、停止和启动期间能够保持 ON/OFF 状态。 非保持型继电器,在运行停止时状态被复位。 在使用后备电池的情况下, 系统寄存器 10 可用来指定链接继电器为保持型或非保持型。 范围 系统寄存器编号 L0~L63F 10 指定一个字的编号后,则该点之前的继电器将为非保持型,之后的继电器将为保持型。 例如,如果将系统寄存器 10 设为 10,则 L0 至 L9F 将为非保持型,L100 至 L63F 将为保持型。 对于缺省值,所有链接继电器均为保持型。 如果将链接继电器用于接收,则确保即使链接继电器由系统寄存器设定为保持型,也没有保持型操作。 使用限制条件 如果作为触点使用,则对使用次数没有限制。 作为一项规定,当输出继电器被指定为 OT 或 KP 指令运算结果的目标输出时,一般在程序中限定使用一次(禁 止双重输出)。 注释: 可通过改变系统寄存器 20 的设置,允许重复使用输出。此外,即使同一继电器用于如 SET 及 RST 指令的操作数,它也不被定为多重使用输出。 当配置网络时,必须在编程之前对链接继电器进行分配。分配的方法因网络类型而异。请 参阅各相应的链接单元的使用手册。 1 - 27 1.2.6 链接继电器(L) (用于 FP2/FP2SH/FP10SH/FP3) 链接继电器(L)的功能 链接继电器是用于 PC-link 的继电器,当多台可编程序控制器用 MEWNET 链接连接时,链接继电器可被它 们共享。 链接继电器可用于下列类型的 MEWNET 链接 - FP3 和 FP10SH 的 MEWNET-H 链接系统(用于同轴电缆) - FP-C、FP2、FP2SH、FP3 和 FP10SH 的 MEWNET-W 链接系统(用于双绞线) - FP3 和 FP10SH 的链接系统的 MEWNET-P 链接系统(用于光纤电缆) 如果计算结果被输出到一特定的 PLC 的链接继电器(线圈),则该结果也同时发送给与 MEWNET 相连的其它 PLC,并且反映到具有相同编号的链接继电器(触点)。 当使用链接继电器时,位数据的信息可以这种方式在 PLC 之间进行交换。 MEWNET [ ] Ln Ln ON [ ] Ln ON 发送区 接收区 发送 接收 链接单元 链接站 链接站 C PU C P U C PU C P U 1 - 28 链接继电器的有效范围 链接继电器的有效范围依网络类型和单元的组合而异。点的有效范围和数目须针对各网络单独指定。 对于 MEWNET-W 和 MEWNET-P: 对于一个链接单元, 多可使用 1024 点。有效范围对于第一单元(PC-link0)为 L0 至 L63F,对于第二单元 (PC-link1)为 L640 至 L127F。 对于 MEWNET-W2: 对于每个链接单元, 多可使用 4096 点。请在 MEWNET-W2 设置菜单中设置使用范围。 使用 FP2SH 时, 可以指定 L0~L639F 的范围. 当使用 MEWNET-W 时, 不能使用 L0~L127F 范围。 使用 FP2 时, 可以指定 L0~L127F 的范围. 另外, 可以通过 MEWNET-W2 设置菜单的设置, 将内部继电器 用于替代链接继电器. 但是, 使用 MEWNET-W 时, 不能将 L0~L127F 用于 MEWNET-W2. 对于 MEWNET-H: 多可以使用 10240 点。请使用 MEWNET-H 设置软件, 对使用范围进行设置. 对于 FP10SH,L0~L639F 的范围可使用。 如果与 MEWNET-P 或 MEWNET-W 链接单元相连,请确认不使用 L0~L127F。 对于 FP3,可以使用 L0~L127F 的范围。 但是,如果与 MEWNET-P 或 MEWNET-W 链接单元相连,L0~L127F 的范围不能用于 MEWNET-H。 当有可能与 MEWNEFW 或 MEWNET-P 链接单元组合使用时,建议不使用 L0 至 L127F 的范围。 L0~L127F (2048 点) L1280~L639F (8192 点) 可用于 MEWNET-P 和 MEWNET-W 也可用于 MEWNET-H 可用于 MEWNET-H 1 - 29 指定保持型和非保持型 有两类链接继电器,当电源关断或由 RUN 模式转为 PROG 模式、以及运行停止时,可以进行切换。 保持型继电器在停止期间、停止和启动期间能够保持 ON/OFF 状态。 非保持型继电器,在运行停止时状态被复位。 系统寄存器 10、11 和 16,可用来指定链接继电器为保持型或非保持型。 范围 系统寄存器编号 L0~L63F 10 L640~L127F 11 L1280~L639F 16 指定一个字的编号后,则该点之前的继电器将为非保持型,之后的继电器将为保持型。 例如,如果将系统寄存器 10 设为 10,则 L0 至 L9F 将为非保持型,L100 至 L63F 将为保持型。 对于缺省值,所有链接继电器均为保持型。 如果将链接继电器用于接收,则确保即使链接继电器由系统寄存器设定为保持型,也没有保持型操作。 示例: 非保持型 保持型 非保持型 保持型 非保持型 保持型 L1280~L639F 系统 寄存器16 L0~L63F系统 寄存器10 系统 寄存器11 L640~L127F 1 - 30 使用限制条件 如果作为触点使用,则对使用次数没有限制。 作为一项规定,当输出继电器被指定为 OT 或 KP 指令运算结果的目标输出时,一般在程序中限定使用一次(禁 止双重输出)。 注释: 可通过改变系统寄存器 20 的设置,允许重复使用输出。此外,即使同一继电器用于如 SET 及 RST 指令的操作数,它也不被定为多重使用输出。 当配置网络时,必须在编程之前对链接继电器进行分配。分配的方法因网络类型而异。请参 阅各相应的链接单元的使用手册。 对于 FP-C/FP2/FP2SH/FP3/FP10SH,如果初始化/检测(INITIALIZE/TEST)开关置于 PFOG 方式的上端(初 始化端),则所有链接继电器(L)断开。如果一保持型已被指定,则这些继电器也会断开。 注释: 对于 FP2SH/FP10SH,系统寄存器 4 可被设置成即使初始化/测试开关被置于上端、继电器 状态也不被消除的方式。 1 - 31 1.2.7 定时器(T) 定时器功能 当定时器被启动并经过了设定的时间间隔时,具有相同编号的定时器触点会变为 ON。 如果定时器处于计时状态或定时器的执行条件为 OFF 时,定时器的触点变为 OFF。 使用限定条件: 当用作触点时,对使用次数无限定。 对于 FP-C/FP2/FP2SH/FP3/FP10SH,如果在 PROG 模式下,INITIALIZE(初始化)/TEST(测试)开关置于上 端(初始化端)时,定时器触点为 OFF。如果已将其指定为保持型,则也仍会变为 OFF。 注释: 对于 FP2SH/FP10SH,系统寄存器 4 可被设置成即使初始化/测试开关被置于上端、定时器 状态也不被消除的方式。 定时器编号 定时器触点: ON Tn: ON 定时到时 n: 定时器编号 1 - 32 1.2.8 计数器(C) 计数器(C)的功能 当减计数型预置计数器被启动并且经过值到零时,与计数器编号相同的计数器触点接通。如果计数器的复位 输入信号为 ON,则计数器触点变为 OFF。 使用限定条件: 当用作触点时,对使用次数无限定。 对于 FP-C/FP2/FP2SH/FP3/FP10SH,如果在 PROG 模式下,INITIALIZE(初始化)/TEST(测试)开关置于上 端(初始化端)时,计数器触点为 OFF。如果已将其指定为保持型,则也仍会变为 OFF。 注释: 对于 FP2SH/FP10SH,系统寄存器 4 可被设置成即使初始化/测试开关被置于上端、继电器 状态也不被消除的方式。 计数器编号 计数输入 复位输入 计数器触点: ON n: 计数器编号 计数到 Cn: ON 1 - 33 1.2.9 定时器和计数器共享项目 定时器和计数器的分区 定时器和计数器共用同一区域。可改变该区域的分区,以获得所需的定时器或计数器数量。 可以通过设定系统寄存器 5 划分该区。如果计数器的初始编号被指定,则该点以前的为定时器,该点以后的 为计数器。 如果系统寄存器 5 与系统寄存器 6 的设置值相同, 则定时器全部为非保持型, 而计数器全部为保持型. 通常, 两个系统寄存器被设置为相同数值. 定时器 计数器 定时器和计数器的缺省设定值 机型 定时器 计数器 FP2SH/FP10SH T0~T2999(3000 点) C3000~C3071(72 点) FP3/FP-C T0~T199(200 点) C200~C255(56 点) FP2 T0~T999(1000 点) C1000~C1023(24 点) FP-M C16T FP1 C14,C16 T0~T99(100 点) C100~C127(28 点) FP-M C20,C32 FP1 C24,C40,C56,C72 T0~T99(100 点) C100~C143(44 点) FPΣ T0~T1007(1008 点) C1008~C1023(16 点) FP0, FP-e T0~T99(100 点) C100~C143(44 点) 系统寄存器 5 的设置值 1 - 34 保持型与非保持型的分区 当切断 PLC 的电源或从 RUN 模式切换到 PROG 模式时,定时器触点、计数器触点、设定值、经过值等可以 保持,并且根据这些被保持内容进行后续操作。 对于 FP0 C10/C14/C16/C32 和不带日历/时钟功能的 FP-e,切断电源后能够保持的区域是固定的,如下表所 示。系统寄存器 6~8 及 14 的内容不能进行设置。 定时器 非保持型: 全部点 非保持型 C10、C14、C16, FP-e: 从设置值到 C139 C32:从设置值到 C127 计数器 保持型 C10、C14、C16, FP-e: C140 到 C143 C32:C128 到 C143 对于 FP-C/FP-M/FP0 T32C/FPΣ/FP1/FP2/F2SH/FP3/FP10SH 和带日历/时钟功能的 FP-e,系统寄存器 6 可用于指定作为保持型或非保持型。如果用一个数字指定了保持型定时器/计数器触点和设定值/经过值的起始 点,那么,在该点之前的数据将为非保持型,而之后的数据将为保持型。 非保持型 保持型 保持型和非保持型的缺省设定状态 机型 非保持型 保持型 FP2SH/FP10SH 0~2999(3000 点) 3000~3071(72 点) FP3/FP-C 0~199(200 点) 200~255(56 点) FP2 0~999(1000 点) 1000~1023(24 点) FP-M C16T FP1 C14,C16 0~99(100 点) 100~127(28 点) FP-M C20,C32 FP1 C24,C40,C56,C72 0~99(100 点) 100~143(44 点) FPΣ 0~1007(1008 点) 1008~1023(16 点) FP-e 0~99(100 点) 100~143(44 点) FP0 T32C 0~99(100 点) 100~143(44 点) 如果系统寄存器 5 与 6 设定相同的值,则定时器为非保持型而计数器为保持型。一般来说,两个系统寄存器 应设定相同的值。 系统寄存器 6 的设置值 1 - 35 注释: 对于 FPΣ和 FP-e, 在不使用后备电池的情况下, 请保持缺省设置的数值. 否则,不能确保 保持/非保持功能的数值. 对于 FP-C/FP2/FP2SH/FP10SH,如果定时器和计数器被设置为保持型,当 INITIALIZE(初始化)/TEST(测试) 开关置于上端(初始化端)时,设定值和经过值被清零。 注释: 对于 FP2SH/FP10SH,系统寄存器 4 可被设置成即使初始化/测试开关被置于上端、计数 器触点状态也不被消除的方式 1 - 36 1.2.10 脉冲继电器(P) 注意: 脉冲继电器(P)只能用于 FP2/FP2SH/FP10SH。 脉冲继电器(P)的功能 脉冲继电器(P)只在一个扫描周期内为 ON。ON 或 OFF 的状态不向外部输出,只在程序中动作。 只有在执行上升沿开始指令(OT↑)或下降沿开始指令(OT↓)时,脉冲继电器才为 ON。 当用作触发器时,只有在检测到上升沿或下降沿的一个扫描周期内,脉冲继电器才动作。 示例 1:输入信号 X0 上升时,微分操作 示例 2:输入信号 X0 下降时,微分操作 1 - 37 使用限制 电源断开时,脉冲继电器清零。 脉冲继电器在程序中作为 OT↑或 OT↓指令的输出目标只能一次(禁止双重输出)。 对于脉冲继电器可用作触点的次数无限制。 脉冲继电器无法指定为 OT、KP、SET、RST 或 ALT 指令的输出目标。 字单位脉冲继电器(WP)不能指定为高级指令的存储单元。 1 - 38 1.2.11 错误报警继电器(E) 注意: 错误报警继电器只能用于 FP2SH/FP10SH。 错误报警继电器(E)的功能 错误报警继电器被用于将由用户随意指定的是错误条件反馈给内部继电器,并将它们存入存储器。 使用用户程序中的 SET 和 RST 指令,使错误报警继电器 ON 或 OFF。 当错误报警继电器变为 ON 时,为 ON 的错误报警继电器的数目、继电器编号以及首先出现的时刻的时钟日 期,都存储在 CPU 单元的存储区中。 DT90400 当前为 ON 的继电器数量 DT90401~DT90419 为 ON 的继电器编号 DT90420 分/秒数据 DT90421 日/时数据 DT90422 年/月数据 第一个变为 ON 的继电器的时钟日期 在存储区中 多可以存放 500 个错误警报继电器的信息。用户可以对这些数据进行监控或操作,但是只限 DT90401 到 DT90419 的范围。 使用限制范围和注意事项 错误报警继电器(E)不能指定为 OT、KP 或 ALT 指令的输出目标。 错误报警继电器(E)可以在程序中利用 RST 和 SET 指令多次置为 ON 或 OFF,但是不能重叠嵌套。 设定(置 ON)错误报警继电器的程序 在错误报警条件下,应使用 SET 指令将错误报警继电器置为 ON。 即使错误状态消失,错误警报继电器也仍然保持。 1 - 39 示例: 如果当错误出现时 X0 接通。 错误报警继电器的复位(置 OFF)程序 当错误已被改正时,应使用 RST 指令将错误报警继电器复位。 示例: 如果当错误已被修正时 X1 接通 清除全部缓冲区 可使用下列方法之一。 - 为了复位所有的错误报警继电器,按照与下一页所描述的方法相同的方法,使用 RST 指令,并且将 特殊数据寄存器 DT90400 设置为特殊的数据。 - 如果在 PROG 模式下初始化/测试开关置于的初始化端,则全部错误报警继电器(E)为 OFF,且存储 缓冲区清零。 (为了避免使用初始化开关来清除缓冲区,应改变系统寄存器 4 的设置。) 为 ON 的错误 报警继电器的 继电器数值 为 ON 的错误 报警继电器的 编号 DT90400 中的错误 报警继电器的日历 时钟的数据 为 ON 的错误 报警继电器的 编号 为 ON 的错误 报警继电器的 继电器数值 1 - 40 清除缓冲区和初始化数据 在存储了继电器编号的区域中,只有 DT90400 和 DT90401 可以通过使用 RST 指令直接指定特殊数据寄存 器来清除。如果 DT90400 被指定,则缓冲区中的全部错误信息会被清除,如果指定了 DT90401,则缓冲区 中的起始继电器编号会被清除。缓冲区会被填充,如下面示例所示。 示例:当使用 RST 指令将 DT90401 的内容删除时 用户可视范围 用户不可视范围 用户可视范围 用户不可视范围 1 - 41 1.3 存储区说明 1.3.1 数据寄存器(DT) 数据寄存器(DT)的功能 数据寄存器是以字(16 位)为单元进行处理的存储器,并且用于存放由 16 位组成的数字数据。 数据位 15 · · 12 11 · · 8 7 · · 4 3 · · 0 DTn 0 0 0 1 1 0 1 0 0 1 0 1 1 0 0 0 将数值填写入 DTn 的程序的示例 十进制常数(K)或 十六进制常数(H) 当在数据寄存器中处理 32 位(双字)数据时,将两个数据寄存器作为一组使用。用于低 16 位的数据寄存器被 指定。 DTn+1 DTn 0 0 0 1 1 0 1 0 0 1 0 1 0 0 1 0 0 0 0 1 1 0 1 0 0 1 0 1 1 0 0 0 高 16 位数据 低 16 位数据 1 - 42 非保持型数据和保持型数据 有两种类型的数据寄存器,当电源关闭或由 RUN(运行)模式切换到 PROG(编程)模式时,它们处理数据的方式 不同。 - 保持型数据寄存器在运行停止时保持其内容,并且在运行重新开始时内容依然有效。 - 非保持型数据寄存器在运行停止时复位。 对于 FP0 C10/C14/C16/C32 和无日历/时钟功能的 FP-e,非保持型与保持型数据寄存器的数量如下表: 项目 FP0 C10/C14/C16, FP-e C32 非保持型 1652 字(DT0~DT1651) 6112 字(DT0~DT6111) 数据寄存器 保持型 8 字(DT1652~DT1659) 32 字(DT6112~DT6143) 对于 FP-C/FP-M/FP0 T32C/FPΣ/FP1/FP2/F2SH/FP3/FP10SH 和带日历/时钟功能的 FP-e,系统寄存器 6 可用 于指定作为保持型或非保持型。如果用一个数字指定了保持型定时器/计数器触点和设定值/经过值的起始点, 那么,在该点之前的数据将为非保持型,而之后的数据将为保持型。 非保持型 保持型 保持型和非保持型的缺省设置值 项目 非保持型 保持型 FPΣ DT0~DT32709(32710 字) DT32710~DT32765(55 字) FP-e DT0~DT1651(1652 字) DT1652~DT1659(8 字) 注释: 对于 FPΣ和 FP-e, 在没有使用后备电池的情况下, 请使用缺省的系统寄存器设置值. 否则不能 保证保持型/非保持型功能的数值. 对于 FP-C/FP2SH/FP3/FP10SH,如果在 PROG(编程)模式下,初始化(INITIALIZE)/测试(TEST)开关置于上端(初 始化端),则所有数据寄存器(DT)清零。即使已指定保持型,这些寄存器也会清零。 注释: 对于 FP2SH/FP10SH,系统寄存器 4 可被设置成即使初始化/测试开关被置于上端、计数器触 点状态也不被消除的方式 系统寄存器 8 的设置值 (保持型区的起始编号) 1 - 43 1.3.2 特殊数据寄存器(DT) 特殊数据寄存器的功能 这些数据寄存器有着特殊的用途。 大多数特殊寄存器都无法使用诸如 F0(MV)等指令将数据写入。 对于 FP0 T32CT、FPΣ、FP2、FP2SH、FP10SH 与 FP-M、FP1、FP0 C10/C14/C16/C32、FP3、FP-C, FP-e 的特殊数据寄存器的编号及数量都有差别,但是 后 3 位数字相同。如果以 FP-M、FP1、FP0 C10/C14/C16/C32、FP-e、FP3 和 FP-C 为例,编号的 低 3 位是相同的。在使用 FP0 T32CT、FPΣ、FP2、 FP2SH、FP10SH 时,这些编号被读取为 5 位的编号。 示例: 特殊数据寄存器的主要功能是: 设置运行环境和表示运行状态 存储由系统寄存器指定的可编程控制器的运行和各种指令的状态。 - 链接通信状态(DT9140 至 DT9245/DT90140 至 DT90254) - 高速计数器控制标志(DT9052/DT90052)等 错误内容 发生错误的单元和其它信息被存储起来。 - 自诊断误码(DT9000/DT90000) - 出现错误的单元的插槽编号(DT9002,DT9003,等) - 远程输入/输出错误的从站数目(DT9131 至 DT9135) - 发生运算错误的地址(DT9017,DT9018/DT90017,DT90018) DT9055 DT90055 FP0 T32CT、FPΣ、FP2、 FP2SH、FP10SH: FP-M、FP1、FP0 C10/C14/ C16/C32、FP3、FP-C,FP-e: 后 3 位数字相同 1 - 44 时钟/日历 (可以用于所有型号的 FP0 T32C、FPΣ、FP-e、FP2、FP2SH、FP10SH,以及 4.0 版本以上的 FP-C 和 FP3、 C 版本的 FP-M C20/C32、FP1 C24C/C40C/C56C/C72C。) 年、月、日、时、分、秒和星期由日历时钟驱动,并且存放在 DT9053 至 DT9057 或 DT90053 至 DT90057。 注释: 所存放的时钟/日历值可以改写(校准)。可以利用 F0(MV)指令或通过编程工具直接修改 DT9054 至 DT9057/DT90054 至 DT90057 的数值。 高速计数器 以下数据寄存器用于读、写高速计数器的目标值和经过值。 - 高速计数器经过值/目标值区。 (DT9044 至 DT9051/DT90044 至 DT90051 和 DT9104 至 DT9111/DT90104 至 DT90111) FP-M 智能板卡 以下数据寄存器用于存储 FP-M 智能板卡的数据。 - 对于 FP-M A/D 转换和模拟量 I/O 板:DT9080 至 DT9095 - 对于 FP-M A/D 转换和模拟量 I/O 板:DT9096 至 DT9103 - 对于 FP-M 高速计数器板:DT9104 至 DT9121 对于 FP-C/FP2/FP2SH/FP3/FP10SH,如果在 PROG(编程)模式下初始化(Initialize)/测试(Test)开关置于上端 (初始化端),则全部特殊数据寄存器清零。但是,如果发生自诊断错误 44 或之前的错误,则 DT9000(对于 FP2,FP2SH 和 FP10SH 为 DT90000)不会被清除。 1 - 45 1.3.3 文件寄存器(FL) 文件寄存器(FL)的功能 文件寄存器是以字(16 位)为单位进行处理的存储区,并且用于存储数据,诸如由 16 位构成的数据。 它们可以用与数据寄存器相同的方式使用。 数据位 15 · · 12 11 · · 8 7 · · 4 3 · · 0 FLn 0 0 0 1 1 0 1 0 0 1 0 1 1 0 0 0 可以按与数据寄存器相同的方法指定双字, 将文件寄存器作为 32 位的组合数据使用. 文件寄存器的数量因机型和系统寄存器的设置而不同。 机型 文件寄存器字数 FP10SH 32765 字 FP3(16K) 最大 22525 字(见注释) FP3(10K) 最大 8189 字(见注释) FP2(32K) 最大 30717 字(见注释) FP2(16K) 最大 14333 字(见注释) FP2SH 32765 字×3banks 注释: 字数因机型和系统寄存器的设置而异。关于系统寄存器的详细内容,请参阅相关章节。 非保持型数据和保持型数据 系统寄存器 9 可以将文件寄存器指定为使用保持型或非保持型。 缺省设置是将全部文件寄存器设为保持型。 对于 FP-C/FP2/FP2SH/FP3/FP10SH,如果在 PROG(编程)模式下初始化(Initialize)/检测(Test)开关置于上端 (初始化端),则全部文件寄存器会清零。即使已被指定为保持型,这些寄存器也会清零。 注释: 对于 FP2SH/FP10SH,通过设置系统寄存器 4,可以使文件寄存器在初始化/检测开关置于 上端的情况下也不被清零。 1 - 46 1.3.4 WX、WY、WR 和 WL WX、WY、WR 和 WL 的功能 继电器(X、Y、R、L)可组合为 16 点的数据来处理。 在这些是单字(16 位)的存储区中,可将继电器组作为数据寄存器进行处理。 单字存储区的结构如下。 这些数字对应于所列的字。 WR0 RF RE RD RC RB RA R9 R8 R7 R6 R5 R4 R3 R2 R1 R0 WR1 R1F R1E · · · · · · · · · · · · R11 R10 WR2 R2F R2E · · · · · · · · · · · · R21 R20 对于 FP-C/FP2/FP2SH/FP3/FP10SH,如果在 PROG(编程)模式下初始化(Initialize)/测试(Test)开关置于上端 (初始化端),则即使 WX、WY、WR 和 WL 被设为保持型也会被清零。 脉冲继电器(P)和错误报警继电器(E)无法用字单元进行处理。 使用 WX、WY、WR 和 WL 的示例 WX 可以用于读取数码开关或键盘输入,而 WY 可以输出到 7 段码显示器。 WR 也可用作移位寄存器。 所有这些继电器均可以作为 16 位的字数据进行监控。 使用注意事项 如果构成存储区的其中一个继电器的 ON 或 OFF 的状态发生变化,则存储区值也会改变。 WR0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 1 WR0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 1 1 (H9) (HB) 当 R1 变为 ON 时 1 - 47 1.3.5 链接数据寄存器(LD) (用于 FPΣ) 链接数据寄存器(LD)的功能 链接数据寄存器用于存放 PC-link 的数据,可以通过同一网络的连接,实现多台可编程控制器(PLC)之间的数 据共享。 当向一台 PLC 的链接数据寄存器写入数据时, 该数据内容会被写入通过网络相连的其他 PLC 中具有相同编 号的链接数据寄存器中. 当数据被写入一个 PLC 的链接数据寄存器时,内容便被存入通过 MEWNET 连接的其它 PLC 中的具有相同 编号的链接数据寄存器中。 当链接数据寄存器被使用时,只要通过写数据,便可以在 PLC 之间进行数据交换。 链接数据寄存器的有效范围 链接数据寄存器的有效范围因网络的类型和单元的组合而异。点数的有效范围和数目须针对各个网络单独指 定。 对于 MEWNET-W0 一个控制单元 多可以使用 128 字, 允许使用的范围 LD0~LD127. 发送 接收 MEWNET-W0 通信插件模块 1 - 48 指定保持型和非保持型寄存器 有两种类型的链接数据寄存器,当切断电源或由 RUN(运行)模式切换到 PROG(编程)模式和停止运行时,两 种寄存器可以切换。 - 保持型寄存器,可以保持停止之前的 ON 或 OFF 状态,并且按此状态继续运行。 - 非保持型寄存器,在运行停止时会复位。 在使用后备电池的情况下, 可以利用系统寄存器 12 指定链接数据寄存器是保持型还是非保持型。 范围 系统寄存器编号 LD0~LD127 12 如果指定了保持型寄存器的起始字编号,则该点之前为非保持型,之后全部为保持型。 例如,将系统寄存器 12 设置为 64,则 LD0~LD63 为非保持型,而 LD64~LD127 均为保持型。 对于缺省值,全部链接数据寄存器均为保持型。 如果用作接收用链接数据寄存器,则应注意:即使利用系统寄存器将链接数据寄存器指定为保持型,也不能 将数据保持。 1 - 49 1.3.6 链接数据寄存器(LD) (用于 FP2/FP2SH/FP3/FP10SH) 链接数据寄存器(LD)的功能 链接数据寄存器用于存放 PC-link 的数据,可以通过 MEWNET 链接,实现多台可编程控制器(PLC)之间的数 据共享。 可以使用下列类型的 MEWNET 链接。 - FP3 和 FP10SH 的 MEWNET-H 链接系统(使用同轴电缆) - FP-C、FP2、FP2SH、FP3 和 FP10SH 的 MEWNET-W 链接系统(使用双绞线) - FP3 和 FP10SH 的 MEWNET-P 链接系统(用于光纤电缆) 当数据被写入一个 PLC 的链接数据寄存器时,内容便被存入通过 MEWNET 连接的其它 PLC 中的具有相同 编号的链接数据寄存器中。 当链接数据寄存器被使用时,只要通过写数据,便可以在 PLC 之间进行数据交换。 发送 接收 MEWNET C PU C PU 链接站 链接站 1 - 50 链接数据寄存器的有效范围 链接数据寄存器的有效范围因网络的类型和单元的组合而异。点数的有效范围和数目须针对各个网络单独指 定。 对于 MEWNET-W 和 MEWNET-P 一个链接单元 多可使用 128 字。有效范围对第一单元(PC-link0)为 LD0 至 LD127,对于第二单元(PC-link1) 为 LD128 至 LD255。 对于 MEWNET-W2 每个链接单元 多可使用 4096 字。请在 MEWNET-W2 设置菜单中设置使用范围。 对于 FP2SH,可以使用范围为 LD0 至 LD8447。当使用 MEWNET-W 时, 不能使用 LD0 至 LD255. 对于 FP2,可以使用范围为 LD0 至 LD255。同时, 通过 MEWNET-W2 设置菜单, 可以使用数据寄存器替代 链接继电器. 但是用于 MEWNET-W 的 LD0 至 LD255 不能用于 MEWNET-W2. 对于 MEWNET-H 多可使用 8192 字。请利用 MEWNET-H 设置工具软件设置使用范围. 对于 FP10SH,可以使用范围是 LD0 至 LD8447. 如果与 MEWNET-W 或 MEWNET-P 链接单元相结合,应 注意范围 LD0 至 LD255 不能使用。 对于 FP3,范围 LD0 至 LD255 可以使用。 但是,如果与 MEWNET-W 或 MEWNET-P 链接单元相结合,应注意范围 LD0 至 L255 不能用于 MEWNET-H。 LD0 ~ LD255 (256 字) LD256 ~ LD8447 (8192 字) 可以用于 MEWNET-P 和 MEWNET-W 也可以用于 MEWNET-H 可以用于 MEWNET-H 1 - 51 指定保持型和非保持型寄存器 有两种类型的链接数据寄存器,当切断电源或由 RUN(运行)模式切换到 PROG(编程)模式和停止运行时,两 种寄存器可以切换。 - 保持型寄存器,可以保持停止之前的 ON 或 OFF 状态,并且按此状态继续运行。 - 非保持型寄存器,在运行停止时会复位。 系统寄存器 12、13 和 17 可用来指定链接数据寄存器是保持型还是非保持型。 范围 系统寄存器编号 LD0~LD127 12 LD128~LD255 13 LD256~LD8447 17 如果指定了保持型寄存器的起始字编号,则该点之前为非保持型,之后全部为保持型。 例如,将系统寄存器 12 设置为 64,则 LD0~LD63 为非保持型,而 LD64~LD127 均为保持型。 对于缺省值,全部数据寄存器均为保持型。 如果用作接收用链接数据寄存器,则应注意:即使利用系统寄存器将链接数据寄存器指定为保持型,也不能 将数据保持。 注释: 这些内容取决于系统寄存器 0 和 1 的设置情况。关于系统寄存器的详细内容,请参阅有关章 节。 1 - 52 示例: 非保持型 保持型 非保持型 保持型 非保持型 保持型 注释: 当配有网络时,必须在编程之前,对链接数据寄存器进行分配。分配方法因网络类型而异。请 参阅相应的链接单元的手册。 对于 FP-C/FP2SH/FP3/FP10SH,如果在 PROG(编程)模式下初始化(Initialize)/测试(Test)开关置于上端(初始 化端),则全部链接数据寄存器(LD)清零。即使已被指定为保持型,这些链接数据寄存器也会被清零。 注释: 对于 FP2SH/FP10SH,可以通过设置系统寄存器 4,使链接数据寄存器即使在初始化/测试开 关置于上端的情况下也不被清零。 1 - 53 1.3.7 定时器/计数器的设定值区(SV) 设定值区(SV)的功能 定时器或计数器的设定值存储在与定时器或计数器编号相同的设定值区。 当在程序中输入 TM 或 CT 指令时,便有一个十进制数或 SV 区的编号被指定设定值。 (对于 FP1 和 FP-M,只有 CPU 版本为 2.7 以上,可以指定 SV 区编号。) SV 是一个字的 16 位存储区,它存储了一个由 K0 至 K32767 的十进制数。 设定值区(SV)的使用 在运行模式下, 可以通过改写设定值区中的数值而修改定时器或计数器的设定值. 可以由程序利用 F0(MV)数据传输指令读取或修改的数值. 也可以利用编程工具读取或重写设定值区. 对于 FP-C/FP2/FP2SH/FP10SH,如果在 PROG(编程)模式下初始化/测试开关置于上端(初始化端),所有的 定时器/计数器设定值区都被清零。即使设定值区被指定为保持型,也会被清零。 注释: 对于 FP2SH/FP10SH,通过设定系统寄存器 4,可以使设定值区即使在初始化(Initialize)/测 试(Test)开关置于上端的情况下,也不被清零。 示例: SV 和 EV 区与定时器或计数器一一对应。 定时器编号 设定值区(SV) 经过值区(EV) T0 T1 ∶ T99 SV0 SV1 ∶ SV99 EV0 EV1 ∶ EV99 C100 ∶ SV100 ∶ EV100 ∶ 注释: 定时器/计数器由系统寄存器 5 设置区分。以上表格是设定值为 100 时的示例。 设定值 (10 进制数据) 1 - 54 1.3.8 定时器/计数器的经过值区(EV) 经过值区(EV)的功能 在定时器或计数器运算操作的过程中,经过值被存放在与定时器或计数器具有相同编号的经过值区。 当经过值达到 0 时,与定时器或计数器具有相同编号的触点变为 ON。 EV 是一个单字 16 位数据,可以存放从 K0 至 K32767 的十进制数。 经过值区(EV)的使用 在运行过程中,可以改变定时器或计数器的经过值,以延长或缩短运行。 通过 F0(MV)数据传输指令,可以由程序读取和修改经过值区的值。 使用编程工具可对经过值区进行读取和重写。 对于 FP-C/FP2/FP2SH/FP10SH,如果在 PROG(编程)模式下初始化/测试开关置于上端(初始化端),所有的 定时器/计数器经过值区都被清零。即使经过值区被指定为保持型,也会被清零。 注释: 对于 FP2SH/FP10SH,通过设定系统寄存器 4,可以使经过值区即使在初始化(Initialize)/测 试(Test)开关置于上端的情况下,也不被清零。 当递减操作结束时 Tn 变为 ON SVn 的数值 EVn 的数值 递减 1 - 55 1.3.9 索引寄存器(IX、IY) (用于 FP0, FP-e, FP1, FP-M, FP3) 索引寄存器(IX、IY)的功能 索引寄存器用于间接指定常数和存储区地址。可使用 IX 和 IY 两个 16 位寄存器。用索引寄存器中的值来改变 地址和常数,称为“变址”。 对于 FP-e、FP-C、FP-M、FP0、FP1 和 FP3 只在与高级指令操作数相关时,才可能进行变址修改。 地址变址 地址 = 基地址 + IX 或 IY 中的值(K 常数) 示例: 改变 DT11 IXDT11 修改常数 常数 = 基数据 + IX 或 IY 中的值 示例 1:修改 K100 IXK100 示例 2:修改 H10 IXH10 基地址 IX 数值 目标地址 11 + K0 = DT11 11 + K10 = DT21 11 + K-10 = DT1 基数据 IX 数值 常数 K100 + K0 = K100 K100 + K10 = K110 K100 + K-10 = K90 基数据 IX 数值 常数 H10 + HA = H1A H10 + H10 = H20 1 - 56 变址修改方法 示例 1: 修改目的地址 DT0 中的数值决定了 K100 被写入的 WR 地址。 当 DT0 的值为 K10 时,K100 被写入 WR10。 示例 2: 修改源地址 DT1 中的数值决定了用于传输至 DT0 的 WR 的地址。 当 DT1 值为 K9 时,WR9 中的数据被传输至 DT0。 设置 IX 设置 IX 1 - 57 使用索引寄存器时的注意事项 索引寄存器不能用索引寄存器来进行变址。 如 IXIX、IYIY 如果变址的结果超出存储区,就会产生运算错误。 当修改后的地址为负数或较大的数值时。 修改 32 位常数时,IX 被指定。此时,IX 和 IY 被组合在一起,作为 32 位数据处理。 高 16 位区 低 16 位区 IY 的内容 IX 的内容 修改的结果将为 32 位数据。 对于 FP3,如果在 PROG(编程)模式下初始化(Initialize)/测试(Test)开关置于上端(初始化端),IX 和 IY 被清零。 注释: 关于索引寄存器处理的详细内容, 请参阅有关章节. 1 - 58 1.3.10 索引寄存器(I0~ID) (用于 FPΣ) 索引寄存器(I0~ID)的功能 索引寄存器用于间接指定数据和继电器及存储区中的操作数。 使用 FPΣ时合计可使用 14 个索引寄存器, 由 I0~I9 和 IA~ID。 对于 FP-C、FP-M、FP0、FP1 和 FP3 只在与高级指令操作数相关时,才可能进行变址修改。 使用索引寄存器时的注意事项 索引寄存器不能用索引寄存器来进行变址。 如 I0I0、I1I1 如果变址的结果超出存储区,就会产生运算错误。 当修改后的地址为负数或较大的数值时。 修改 32 位常数时,IX 被指定。此时,IX 和 IY 被组合在一起,作为 32 位数据处理。 高 16 位区 低 16 位区 In+1 的内容 In 的内容 修改的结果将为 32 位数据。 注释: 组合使用 32bit 索引寄存器时, 不能指定 ID. 可以使用以下索引变址 高级指令所使用的存储区编号. 由高级指令指定的 K 常数(16 位或 32 位)和 H 常数(16 位或 32 位). 注释: 有些指令在某些情况下不能使用索引变址. 在使用时应确认各指令的”操作数”表中的描述. 1 - 59 1.3.11 索引寄存器(I0~ID) (用于 FP2、FP2SH 和 FP10SH) 索引寄存器(I0 至 ID)的功能 索引寄存器用于间接指定继电器和存储区中地址和操作数的值。 使用索引寄存器来改变地址和常数,叫做“变址”。 可用于 FP2、FP2SH 和 FP10SH 的索引寄存器共有 14 个,由 I0 至 I9 和 IA 至 ID 构成。 对于 FP2SH/FP10SH,由于存在用于索引寄存器的 bank,通过改变 bank,可以使用 14 点×16bank =224 点的索引寄存器。 使用索引寄存器时的注意事项 索引寄存器无法用索引寄存器来修改。 如 I0I0,I1I1。 索引寄存器可使用另一索引寄存器来修改。 允许使用:I0IA; 不能使用:I0I0 若变址的结果溢出存储区,则会导致运算。 当修改后的地址为负数或较大的数值时。 修改 32 位常数时,被指定编号的索引寄存器和随后的索引寄存器被组合在一起,作为 32 位数据处理。 高 16 位区 低 16 位区 In+1 的内容 In 的内容 修改的结果将为 32 位数据。 注释: 组合使用 32bit 索引寄存器时, 不能指定 ID. 1 - 60 对于 FP2/FP2SH/FP10SH,如果在PROG(编程)模式下初始化(Initialize)/测试(Test)开关置于上端(初始化端), 索引寄存器 I0~ID 被清零。 注释: 对于 FP2SH/FP10SH,通过设定系统寄存器 4,可以使经过值区即使在初始化/测试开关置于 上端的情况下,也不被清零。 在 FP2SH/FP10SH 中,可以使用索引寄存器的 bank 切换功能。在 FP2 中不能使用本功能。 可以使用以下索引变址 用于高级指令的存储区编号。 由高级指令指定的 K 常数(16 位或 32 位)和 H 常数(16 位或 32 位)。 用于下基本指令的继电器编号:ST、ST/、AN、AN/、OR、OR/、OT、KP、SET、RST、OT↑、OT↓ 用于下基本指令的指令编号:TM、CT、MC、MCE、JP、LOOP、CALL、FCAL(FCAL 指令可以用于 FP2SH/FP10SH) 用于下基本指令的存储区编号:TM、CT、SR 注释: 对于部分指令,在某些情况下不能使用索引寄存器变址。请在使用时确认各个指令说明中“操 作数”的描述。 1 - 61 改变由高级指令指定的存储区编号 地址 = 基地址 + I0 至 ID 中的值(K 常数) 示例: 改变 DT11 I0DT11 示例 1: 修改目标地址 DT0 中的数值决定了 K100 被写入的 DT 地址。 当 DT0 的值为 K10 时,K100 被写入 DT110。 示例 2: 修改源地址 DT1 中的数值决定了用于传输至 DT0 的 DT 的地址。 当 DT1 的值为 K9 时,DT109 中的数据被传输至 DT0。 基地址 I0 数值 目标地址 11 + K0 = DT11 11 + K10 = DT21 11 + K-10 = DT1 设置 I0 设置 I0 1 - 62 改变由高级指令指定的常数 常数 = 基数据 + I0 至 ID 中的值 示例 1: 修改 16 位常数 K100 I0DT11 示例 2: 修改 16 位常数 H10 I0H10 示例 3: 修改 32 位常数 K0 I0K0 基数据 I0 数值 16-bit 常数 K100 + K0 = K100 K100 + K10 = K110 K100 + K-10 = K90 基数据 I0 数值 16-bit 常数 H10 + HA = H1A H10 + H10 = H20 基数据 I1 和 I0 数值 32-bit 常数 K0 + K10000 = K10000 K0 + K60000 = K60000 K0 + K999999 = K999999 1 - 63 改变由基本指令指定的继电器编号 编号 = 基本编号 + I0 至 ID 中的值(K 常数/H 常数) 示例: 改变 X10 IAX10 示例 1: 修改触发器 F35 (+)指令的触发器由 DT0 的值决定。 如果 DT0 的值为 K10,则当 XA 为 ON 时执行 F35(+)指令。 示例 2: 修改输出目标 DT2 中的数值决定了 X0 为 ON 时的输出目标。 当 DT2 值为 HF 且 X0 为 ON 时,Y1F 输出为 ON。 基编号 IA 数值 目标编号 10 + H0 = X10 10 + HA = X1F 10 + H-10 = X0 19 + K7 = X20 19 + K-11 = XE 设置 I0 10 + 0 = 10(十进制) → A(十六进制) 设置 I0 1 - 64 示例 3: 修改目标地址 DT0 中的数值决定了 K100 被写入的 WR 地址。 当 DT0 的值为 K10 时,K100 被写入 WR10。 示例 4: 修改源地址 DT1 中的数值决定了用于传输至 DT0 的 WR 的地址。 当 DT1 值为 K9 时,WR9 中的数据被传输至 DT0。 设置 I0 设置 IB 1 - 65 特别注意事项 对于外部输入继电器(X)、外部输出继电器(Y)和内部继电器(R),当对继电器编号进行索引变址时,应注意继 电器编号的 后一位为十六进制,而前几位为十进制。 示例: 外部输入继电器(X) 例:使用 I0X0 I0 数值 K H 目标地址 0 0 X0 1 1 X1 : : : 9 9 X9 10 A XA : : : 15 F XF 16 10 X10 : : : 31 1F X1F : : : 159 9F X9F 160 A0 X100 161 A1 X101 : : : 255 FF X15F 256 100 X160 257 101 X161 : : : 265 10A X169 267 10B X16A : : : 十进制 十六进制 1 - 66 修改基本指令的指令编号 定时器编号 修改 TML20 - - - TML I020 计数器编号 修改 CT3000 - - - CT I03000 移位寄存器编号 修改 SRWR0 - - - SR I0WR0 主控继电器编号 修改 MCE1 - - - MCE I01 用于跳转指令的标号 修改 JP1 - - - JP I01 用于循环指令的标号 修改 LOOP5 - - - LOOP I05 子程序标号 修改 CALL10 - - - CALL I010 注释: 定时器编号和计数器编号只能在存储区为设定值 SV 时进行修改。 正确 指定为设定值编号 当设定值指定为常数时,不能进行变址修改。 不正确 指定为常数 1 - 67 改变索引寄存器 bank(只用于 FP2SH/FP10SH) 通过改变 FP2SH/FP10SH 的索引寄存器的 bank,在程序中 多可以使用到 224 点(14 点×16bank)。 当使用寄存器 bank 设置指令 F410(SETB)或寄存器 bank 修改指令 F411(CHGB)后,改变 bank 前后所使用 的索引寄存器 I0~ID 可以不同。 在程序执行加载地址之前,索引寄存器 bank 被自动设置为 bank0。在第 2 程序中,在执行加载地址之前, 索引寄存器 bank 也同样被自动设置为 bank0。 在中断程序、子程序及其他子程序中指定索引寄存器 bank 时,应该在子程序执行的开始处首先执行 F411(CHGB)指令,而在子程序的结尾处执行 F412(POPB)指令。 1 - 68 示例 1: 利用寄存器 bank 设置指令 F410(SETB)改变 bank 可以在 bank0、bank1 和 bank2 的 I0 中设置不同的数值。设置值只在相应的范围内有效。 注释: 关于改变 bank 指令的详细内容,请参阅 F410(SETB)、F411(CHGB)和 F412(POPB)指令。 示例 2: 在中断程序中改变 bank 1 - 69 1.4 常数说明 1.4.1 整型十进制常数(K) 十进制常数(K)的功能 将二进制数转换为十进制格式的数据。 读取或输入十进制常数时,首先输入 K 进行指定。 十进制常数通常用于指定数据的大小、数量等,如定时器的设定值。 在 PLC 中,十进制常数(K)按照 16 位的二进制(BIN)数据进行处理。 数据的符号是由 MSB(Most Significant Bit, 高符号位,数据位 15)指定的。该数据位为“0”时,表示正数 “+”;该数据位为“1”时,则表示负数“-”。MSB 被称为符号位。 示例: 十进制数“+ 32”(K32) 示例: 十进制数“- 32”(K- 32) 数据通常是以字(16 位)为单位进行处理的,但是也可以组合为双字(32 位)。在这种情况下,MSB 同样作为符 号位。 十进制常数的有效范围: 16 位数据: K-32768 ~ K32767 32 位数据: K-2147483648 ~ K2147483647 “+” “-” 1 - 70 1.4.2 十六进制常数(H) 十六进制常数(H)的功能 十六进制常数是将二进制数转换为十六进制的数值。当输入或读取十六进制常数时,在输入数据之前首先输 入 H 进行指定。 十六进制常数通常用于指定 16 位数据中的 1 和 0,如系统寄存器设置和高级指令的控制参数。十六进制常数 也用于指定 BCD 码数据。 在 PLC 中,十六进制常数(H)按照 16 位的二进制(BIN)数据进行处理。 示例: 十六进制数“2A”(H2A) 数据通常是以字(16 位)为单位进行处理的,但是也可以组合为双字(32 位)。 十六进制常数的有效范围: 16 位数据: H0 ~ HFFFF 32 位数据: H0 ~ HFFFFFFFF 1 - 71 1.4.3 浮点型实数(f) 适用 PLC FP-e、FP0、FPΣ、FP2、FP2SH、FP10SH 可用于运算的浮点型实数的范围 可以存放在存储区中的浮点型实数的范围是: 负数范围: -3.402823×1038 ~ -1.175494×10-38 正数范围: 1.175494×10-38 ~ 3.402823×10-38 即使实数的运算结果包含多位数字,也 多有效处理 7 位数字。 示例: 如果实际的运算结果为 0.33333333…… , 则存放的数据为 0.3333333。 用于存储浮点型实数的区域 在使用对浮点型实数进行运算的指令中,每个被转换为实数的数据以双字(32 位)存储。因此,对实数进行传 输及其他运算时,应使用双字(32 位)单位的指令。 示例 1: 如果指定 DT0 存放浮点型实数,则数据将被写入 DT0 和 DT1。 运算结果存放于 DT0 和 DT1。 存储目标 示例 2: 如果需要将存放在 DT0 和 DT1 中的浮点型实数传输到指定目标,则应使用 32 位数据传输 指令 F1(DMV)指令。 传输源 传输目标 1 - 72 浮点型实数的运算处理 1) 由指定的整型设备处理 可以利用指令将数据存放到指定的位置。通过分别在 S(源:从中读取数据的存储区)或 D(目标:用于存放结 果的存储区)前添加符号%或#,可以说明如何对数据进行处理。如果在 S(源)中添加,则自动将整型数转换为 实数进行运算并输出;如果在 D(目标)中添加,则自动将浮点型实数的结果转换整型数并存放到目标中。 对于 16 位的整型数……可以使用%符号指定 对于 32 位的整型数……可以使用#符号指定 示例 1: 指定目标运算数据 S 为整型设备 将 DT10 和 DT20 中的数据转换为实数并进行运算。存放在 DT30 和 DT31 中的数据为实 数。 示例 2: 指定结果存放 D 为整型设备 读取“DT40 和 DT41”以及“DT50 和 DT51”中的数据并进行运算。运算结果为实数并 被存放在 DT60 中。 示例 3: 指定目标运算数据 S 为双字整型设备 将“DT70 和 DT71”以及“DT80 和 DT81”中的数据自动转换为实数并进行运算。运算 结果为实数并被存放在 DT90 和 DT91 中。 1 - 73 在处理中指定整型设备并且将实数转换为整型,则处理与 F327(INT)指令相同。 如果实数为正数,则数据被取整,小数点后的数字被舍去。 如果实数为负数,则实数数据被减去 0.4999…后取整,小数点后的数字被舍去。 示例 1: 如果运算结果为 f1.234,则数值存储为整数“K1”。 示例 2: 如果运算结果为 f-1.234,则数值存储为整数“K-2”。 使用以下指令时可以指定整型设备: F309(FMV)至 F324(FSQR)/ F336(FABS)至 F338(DEG)/ F345(FCMP)至 F349(FZONE) 2) 利用 整型数→实数 和 实数→整型数 转换指令进行数值转换。 利用这种方法,可以将整型数转换为实数。 当数据为 16 位整数时,使用 F325(FLT)指令 当数据为 32 位整数时,使用 F326(DFLT)指令 使用 F327(INT)至 F332(DROFF)指令将经过实数运算的实数转换为整型数。 示例 1: 当进行转换的 大值不超出允许范围时 如果数据为正数,则结果舍去小数点后的部分。 如果数据为负数,则结果在减去 0.4999…后再舍去小数点后的部分。 如果实数为 1.5,则转换为整数 K1。 如果实数为-1.5,则转换为整数 K-2。 转换为 16-bit 整数 转换为 32-bit 整数 1 - 74 示例 2: 当进行转换时截去小数点右边的数字 小数点右边的数字被截去 如果实数为 1.5,则转换为整数 K1。 如果实数为-1.5,则转换为整数 K-1。 示例 3: 当进行转换时四舍五入小数点右边的数字 小数点右边的数字被四舍五入 如果实数为 1.5,则转换为整数 K2。 如果实数为-1.5,则转换为整数 K-2。 转换为 16-bit 整数 转换为 32-bit 整数 转换为 16-bit 整数 转换为 32-bit 整数 1 - 75 3) 直接指定实数常数。 当指定实数常数作为运算的实数时,利用编程工具在向指令中输入源数据 S 或目标数据 D 时,首先输入“f”。 在这些指令中,可以输入的数据范围是 0.0000001~9999999(有效数据为 7 个数字)。 示例: 将源数据 S 指定为实数常数 将存放在 DT10 和 DT11 中的实数与实数常数 0.5 相乘,结果为实数存放在 DT20 和 DT21 中。 4) 指定 K 常数转换。 K 常数(32 位)是整型数据,因此被自动转换为实数并进行运算。 5) 指定 H 常数转换。 对于 H 常数(32 位),运算时将其作为浮点数。 发生溢出时的操作 当运算结果超出实数范围时,溢出标志(R9009)被置位。 发生这种情况时,以下的某个数值被用于 R9009 的结果。 正无穷大值:H7F800000 负无穷大值:HFF800000 以上数值也同样在编程工具软件(NPST、FPWIN 等)的监控中显示,显示的实数数值如下: 正无穷大值:INF 负无穷大值:-INF 自动转换为实数 1 - 76 1.4.4 BCD 型实数(H) (用于 FP2、FP2SH 和 FP10SH) 运算中可以使用的 BCD 型实数的范围 可以存放在存储区中的实数数据范围为: -9999.9999 ~ +9999.9999 数据存储是由若干个单字构成的。首先是正/负,其次是整数部,随后是小数点, 后是小数部。 符号: H0:整数 H1:负数 整数部 H0~H9999 小数部 H0~H9999 存放 BCD 型实数的区域 在 BCD 型实数运算指令中,每个用于转换到实数的数据结构是 3 字存储区。因此,在传输实数或进行其他 运算时,数据应该以 3 字为单位进行操作。 示例 1: 如果指定 DT0 存放的是 BCD 型实数,则数据将被写入 DT0~DT2。 示例 2: 如果需要传输的数据在 DT0~DT2 中,应使用 F10(BKMV)块传输指令或其他类似指令,3 字为单位进行传输。 数据存储区 DT0 H0 符号 DT1 H0 整数部 DT2 H7070 小数部 传输源 传输目标 DT0 H0 DT100 H0 DT1 H0 DT101 H0 DT2 H7070 DT102 H7070 单字 BCD 单字 BCD 单字 BCD· 运算结果 + 0. 7071 1 - 77 1.4.5 字符常数(M) 字符常数(M)的功能 字符常数用于以二进制表示 ASCII 码。 在数据前添加前缀 M 表示字符常数。 只有两条指令允许指定字符常数,即 F95(ASC)和 F149(MSG)。 在 PLC 的指定存储区中,字符常数是以 BIN 数据保存的。如下所示: 示例: 如果输入字符常数”MEWNET” 字符常数 ASCII 16 进制代码 1字 1 字 1 字 1 - 78 1.5 PLC 中可处理的数据范围 1.5.1 PLC 中可处理的数据范围 16 位数据 PLC 中可处理的数据(16-bit 二进制) 十进制常数 十六进制常数 K 32767 · · · K 1 K 0 K -1 · · · K -32768 H7FFF · · · H1 H0 HFFFF · · · H80000 32 位数据 PLC 中可处理的数据(32-bit 二进制) 十进制常数 十六进制常数 K 2147483647 · · · K 1 K 0 K -1 · · · K -2147483648 H7FFFFFFF · · · H1 H0 HFFFFFFFF · · · H800000000 1 - 79 关于 PLC 中十进制数的解释 十进制数据是以 16 位或 32 位二进制数据进行处理的。 高符号位(MSB)用于表示数据的正或负。当 MSB 为 0 时,数据被认为是 0 或正数;当 MSB 为 1 时,数据 作为负数。 在正数的情况下, 高符号位之后的数据位表示数值的大小。 示例 1: 表示十进制数据“1868”。 负数以二进制补码表示(负数的 16 位二进制数据取反后加 1 作为结果)。 示例 2: 表示十进制数据“-4”。 0 0 0 0 0 1 1 1 0 1 0 0 1 1 0 0 1 6 3 8 4 8 1 9 2 4 0 9 6 2 0 4 8 1 0 2 4 5 1 2 2 5 6 1 2 8 6 4 3 2 1 6 8 4 2 1 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 0 数据大小由其他位表示 1024 + 512 + 256 + 64 + 8 + 4 = 1868 符号位(MSB): 0(正数) 符号位(MSB): 1(负数) 以二进制表示的十进制数”+4” 以二进制表示的十进制数”-4” ↓ 各位取反 ↓ 加 1 1 - 80 PLC 中可以处理的数据范围 可编程控制器可以处理的二进制数据是: 16 位二进制数据:K-32768 ~ K32767。 32 位二进制数据:K-2147483648 ~ K2147483647。 可编程控制器可以处理的 BCD 码数据是: 16 位(4 数字位 BCD H 码):H0 ~ H9999。 32 位(8 数字位 BCD H 码):H0 ~ H99999999。 如果处理相应数据时超出以上范围,则会产生上溢出或下溢出。 BCD 是 binary coded decimal(二进制编码的十进制)的首字母,指利用 4 位二进制表示一个十进制数字。 示例: 采用 BCD 码表示十进制数据。 十进制数 6 4 5 各数字位被转换为二进制 BCD 码数据 0110 0100 0101 → H645 1 - 81 1.5.2 上溢出和下溢出 在运算指令时,有可能产生超出允许范围的数值。如果数值超出 大值,则称为上溢出;如果超出 小值, 则称为下溢出。发生上溢出或下溢出时,进位标志 R9009 会变为 ON。 二进制运算中的上溢出和下溢出 超出以下数值时,结果将产生上溢出或下溢出。 BCD 运算中的上溢出和下溢出 超出以下数值时,结果将产生上溢出或下溢出。 只能处理正数。 16-bit 二进值运算 (超出 大值时,结果上溢出) 32-bit 二进值运算 (超出 大值时,结果上溢出) 大值 K32767 H7FFF K2147483647 H7FFFFFFF : K 1 K 0 K -1 : : H0001 H0000 HFFFF : : K 1 K 0 K -1 : : H00000001 H00000000 HFFFFFFFF : 小值 K-32768 H8000 K-2147483648 H80000000 (小于 小值时,结果下溢出) (小于 小值时,结果下溢出) 4-digit BCD 运算 (超出 大值时,结果上溢出) 8-digit BCD 运算 (超出 大值时,结果上溢出) 大值 H9999 H99999999 : : : : : : 小值 H0 H0 (小于 小值时,结果下溢出) (小于 小值时,结果下溢出) 1 - 82 发生上溢出或下溢出时的数值 FP 系列可编程控制器处理的数值,在所有形式在 大值和 小值处构成一个循环,如下图所示: 16 位二进制运算 示例 1: 对于 K32767 + K1 (上溢出)。 运算结果是 K-32768,并且进位标志为 ON。 示例 2: 对于 K-32768 - K1 (下溢出)。 运算结果是 K32767,并且进位标志为 ON。 4 数字位 BCD 码运算 示例 1: 对于 H9999 + H1 (上溢出)。 运算结果是 H0,并且进位标志为 ON。 示例 2: 对于 H0 - H1 (下溢出)。 运算结果是 H9999,并且进位标志为 ON。 大值 K32767 H7FFF : K 1 K 0 K -1 : : H0001 H0000 HFFFF : 小值 K-32768 H8000 大值 H9999 : : : 小值 H0000 大值与 小值 相连 上溢出 → 下溢出 → 大值与 小值 相连 上溢出 → 下溢出 → 第二章 基本指令 2-I 2-II 2-1 2.1 关于基本指令 2.1.1 时序控制基本指令 基本指令是按位进行逻辑运算, 是继电器顺序控制回路的基本构成. 如下所示, 基本指令是由继电器线圈和触点组合成的表达式. 继电器有若干不同的类型, 根据不同的指令可以选择不同的继电器. 使用时请参阅各指令说明. 示例 开始指令(ST) 读取指定触点的ON或OFF状态. ST X0 读取外部输入 (X0)的状态 输出指令(OT) 将运算的结果输出到指定线圈. OT Y10 将运算结果(ON或OFF) 输出到外部输出(Y10) 示例 地址 内部继电器 内部 继电器 触点 输出线圈 母线 输入触点 <梯形图程序> 2-2 2.1.2 基本功能指令 基本功能指令包括定时器、计数器和寄存器移位指令. 指定相应的数值时, 需要组合使用若干指令. 示例 利用0.1定时器(定时器5)设置3.0秒. 当X0变为ON时开始定时, 经过3秒钟后T5变为ON. 定时器5(0.1秒单位) 设定值 定时器5的触点 2.1.3 控制指令 控制指令用于确定程序的处理顺序和执行流程. 可以根据条件执行某些处理或只执行需要的部分. 当条件成立时, 只执行某一指定部分的程序(由MC和MCE指定). 主控继电器 当条件成立时, 跳过执行部分程序(由JP和LBL指定). 可以缩短执行时间. 跳转 根据要求顺序或分支处理各部分程序(由SSTP和STPE指定). 步进梯形图控制 多次被重复执行的常用程序部分被称为子程序(由SUB和RET指定). 可以在需要是执行. 子程序 中断程序(由INT和RET指定)位于常规程序之外, 在条件满足时可以立即执行. 接收到中断请求后, 停止执行常规程序, 而执行中断程序. 中断程序 2.1.4 数据比较指令 用于比较两个数据. 根据比较的结果将触点变为ON或OFF. 示例 将DT10与K100进行比较. 如果DT10中的数值小于或等于K100, Y30变为ON; 如果DT10中的数值大于K100, Y30为OFF. 2-3 ST ST/ OT 开始 开始非 输出 概述 ST,ST/:开始逻辑运算。 OT: 输出运算结果。 (*) 对于FP2、FP2SH和FP10SH,步数随所使用的继电器编号而异。 程序示例 0 1 2 3 ST X 0 OT Y 10 ST/ X 0 OT Y 11 地址 指令 梯形图程序 布尔形式 操作数 说明 继电器 定时器/计数器触点 T C 索引修正值 (*2) ST,ST/ OT A A A A A A N/A N/A N/A N/AN/A N/AA A A A A (*1) 此项不适用于FP0/FP1/FP-M/FP-e (*2) 此项只用于FP-C/FP2/FP2SH/FP3/FP10SH (*3) 此项只用于FP-2/FP2SH/FP10SH。 示例说明 当X0闭合时,Y10闭合。 当X0断开时,Y11闭合。 X Y R L (*1) P (*2) E (*3) A: 可以使用 N/A:不可使用 开始 开始非 输出 输出 FP-e/FP0/FP∑/FP1/FP-M/FP2/FP2SH/FP3/FP10SH 适用机型 2-4 ST指令开始逻辑运算,输入的触点作为A型(常开)触点。 ST/指令开始逻辑运算,输入的触点作为B型(常闭)触点。 OT指令将逻辑运算的结果输出到线圈。 编程时的注意事项 ST和ST/指令必须由母线开始。 OT指令不能由母线直接开始。 OT指令可连续使用。 某些输入设备,如紧急停止开关等,通常应使用B型(常闭)触点。当对B型触点的紧急停止开关 进行编程时,一定要使用ST指令。 描述 2-5 / 逻辑非 概述 根据本指令进行逻辑取反运算。 程序示例 0 1 2 3 ST X 0 OT Y 10 / OT Y 11 地址 指令 梯形图程序 布尔形式 示例说明 当X0闭合时,Y10闭合,Y11断开。 当X0断开时,Y10断开,Y11闭合。 描述 /指令将本指令处的逻辑运算结果取反。 逻辑非 FP-e/FP0/FP∑/FP1/FP-M/FP2/FP2SH/FP3/FP10SH 适用机型 2-6 AN AN/ 逻辑与 逻辑与非 概述 AN: 使A型(常开)触点串联。 AN/:使B型(常闭)触点串联。 程序示例 0 1 2 3 ST X 0 AN X 1 AN/ X 2 OT Y 10 地址 指令 梯形图程序 布尔形式 操作数 说明 继电器 定时器/计数器触点 T C AN,AN/ A A A A A N/A A A (*1) 此项不能用于FP-e/FP0/FP1/FP-M。 (*2) 此项只用于FP-C/FP2/FP2SH/FP10SH。 (*3) 此项只用于FP2SH/FP10SH。 示例说明 当X0和X1均闭合且X2断开时,Y10闭合。 X Y R L (*1) P (*2) E (*3) A: 可以使用 N/A:不可使用 索引修正值 (*2) 逻辑与 逻辑与非 FP-e/FP0/FP∑/FP1/FP-M/FP2/FP2SH/FP3/FP10SH 适用机型 A 2-7 和前面直接串联的逻辑运算的结果,执行逻辑“与”运算。 编程时的注意事项 当常开的触点(A型触点)串连时,使用AN指令。 当常闭的触点(B型触点)串连时,使用AN/指令。 AN和AN/指令可依次连续使用。 描述 2-8 OR OR/ 逻辑或 逻辑或非 概述 OR: 使A型(常开)触点并联。 OR/:使B型(常闭)触点并联。 程序示例 0 1 2 3 ST X 0 OR X 1 OR/ X 2 OT Y 10 地址 指令 梯形图程序 布尔形式 操作数 示例说明 当X0或X1之一闭合、或X2断开时,Y10为接通。 逻辑或 逻辑或非 说明 继电器 定时器/计数器触点 T C OR,OR/ A A A A A N/A A A (*1) 此项不能用于FP-e/FP0/FP1/FP-M。 (*2) 此项只用于FP-C/FP2/FP2SH/FP10SH。 (*3) 此项只用于FP2SH/FP10SH。 X Y R L (*1) P (*2) E (*3) A: 可以使用 N/A:不可使用 索引修正值 (*2) A FP-e/FP0/FP∑/FP1/FP-M/FP2/FP2SH/FP3/FP10SH 适用机型 2-9 与并联的触点进行逻辑“或”运算。 编程时的注意事项 当常开触点(A型触点)并联时,使用0R指令。 当常闭触点(B型触点)并联时,使用OR/指令。 OR指令由母线开始。 OR和OR/指令可依次连续使用。 描述 2-10 ST↑ 上升沿开始 下降沿开始 概述 用于上升沿检测和下降沿检测的触点指令。 仅在检测到信号的上升沿或下降沿的扫描周期内,对触点进行逻辑运算处理。 程序示例 0 2 3 4 6 7 9 11 地址 指令 梯形图程序 布尔形式 操作数 A: 可以使用 N/A:不可使用 ST↓ AN↑ AN↓ OR↑ OR↓ 上升沿逻辑与 下降沿逻辑与 上升沿逻辑或 下降沿逻辑或 ST↑ X 0 OT Y 10 ST X 1 AN↑ Y 2 OT X 11 ST↓ Y 3 OR↓ X 4 OT Y 12 说明 继电器 定时器/计数器触点 T C ST↑, ST↓ A A A A A N/A A A X Y R L P E AN↑,AN↓ OR↑,OR↓ A A A A A A A A A A A A A A N/A N/A N/A N/A N/A 索引修正值 上升沿开始 上升沿逻辑与 下降沿逻辑或 FP2/FP2SH/FP10SH 适用机型 2-11 编程时的注意事项 ST↑、AN↑、OR↑指令 仅在信号由OFF变为ON之后的一个扫描周期内产生输出。 ST↓、AN↓、OR↓指令 仅在信号由ON变为OFF之后的一个扫描周期内产生输出。 示例说明 ST↑、AN↑和OR↑指令 在X0发生从OFF到ON的变化后,Y10仅输出一个扫描周期。 当X1为ON时,在X1发生从OFF到ON的变化后,Y11仅输出一个扫描周期。 当X1为ON时,在X1发生从OFF到ON的变化后,Y11仅输出一个扫描周期。 描述 ST↑、AN↑和OR↑指令与ST、AN和OR指令后接一条DF(上升沿微分)指令的工作方式相同。 ST↓、AN↓和OR↓指令与ST、AN和OR指令后接一条DF/(下降沿微分)指令的工作方式相同。 上升沿 一个扫描周期 一个扫描周期 上升沿 一个扫描周期 一个扫描周期 一个扫描周期 2-12 OT↑ OT↓ 上升沿输出 下降沿输出 概述 检测到上升沿和检测到下降沿后输出。 处理的结果只在一个扫描周期内被输出到脉冲继电器。 程序示例 0 1 3 4 ST X 0 OT↑ P 0 ST X 1 OT ↓ P 1 地址 指令 梯形图程序 布尔形式 操作数 示例说明 当输入信号X0由OFF变为ON时,脉冲继电器P0产生一个扫描周期的输出。 A: 可以使用 N/A:不可使用 说明 继电器 定时器/计数器触点 T C OT↑ A N/A X Y R L P E OT↓ N/A N/A N/AA A A N/A N/A N/A N/A N/A N/A N/A N/A N/A N/A 索引修正值 上升沿输出 下降沿输出 一个扫描周期 FP2/FP2SH/FP10SH 适用机型 2-13 编程时注意事项 OT↑指令 只有当前面的运算处理结果由OFF变为ON时,脉冲继电器才会在一个扫描周期内输出。且脉冲输出 仅保持一个扫描周期的宽度。 OT↓指令 只有当前面的运算处理结果由ON变为OFF时,脉冲继电器才会在一个扫描周期内输出。且脉冲输出 仅保持一个扫描周期的宽度。 描述 当脉冲继电器(P)(仅在执行OT↑或OT↓指令时产生一个扫描周期ON)用于逻辑运算的基本指令(ST、 AN及OR)时,其操作相当于在通常的触点之后加入DF微分指令。 使用OT↑指令和脉冲继电器(P)的示例。 使用DF指令的示例。 两示例的执行结果表示如下。 一个扫描周期 一个扫描周期 一个扫描周期 当输入信号X0由OFF变为ON时,脉冲继电器P0产生一个扫描周期的输出。 2-14 ALT 翻转输出 概述 每次检测到信号上升沿时,将输出状态反转。 程序示例 0 1 ST X 0 ALT Y 10 地址 指令 梯形图程序 布尔形式 操作数 说明 继电器 定时器/计数器触点 T C ALT A A N/AA 示例说明 每次X0由OFF变为ON时,输出Y10的ON/OFF状态进行交替改变。 描述 X Y R L P E A: 可以使用 N/A:不可使用 N/A N/A N/A N/A N/A 当 近的处理结果由OFF变为ON时,指定线圈的ON/OFF状态进行交替变化。 指定线圈的ON/OFF状态保持不变,直到指定该线圈的ALT指令出现。(反转触发器控制) 编程时的注意事项 在输入保持为ON期间,输出只在变为ON时(上升沿)改变,而之后不变。 索引修正值 翻转输出 取反 取反 取反 当PLC模式变为运行(RUN)、或在运行模式下接通电源时,输入信号在开始时即为ON状态,因此在 第一次扫描周期时不会发生ON/OFF反转。 当使用改变执行顺序的指令,诸如MC到MCE和JP到LBL(见下文)时,要注意各输入信号和指令的执 行时机对指令操作的影响。 - MC至MCE指令 - JP至LBL指令 - F19(SJP)至LBL指令 - LOOP至LBL指令 - CNDE指令 - 步进梯形图指令 - 子程序指令 有关各指令的使用的其他信息,请参阅相关章节. FP2/FP2SH/FP10SH 适用机型 2-15 ANS 组逻辑与 概述 将多个逻辑块串联 程序示例 0 1 2 3 4 5 ST X 0 OR X 1 ST X 2 OR X 3 ANS OT Y 10 地址 指令 梯形图程序 布尔形式 示例说明 当X0或X1闭合、并且X2或X3闭合时,Y10为ON。 (X0 或 X1) 与 (X2 或 X3) → Y10 逻辑块1 逻辑块2 描述 将并联逻辑块串联起来。 以ST指令开始的逻辑块。 逻辑块1 逻辑块2 FP-e/FP0/FP∑/FP1/FP-M/FP2/FP2SH/FP3/FP10SH 适用机型 2-16 使用FP手持编程器Ⅱ时,按键操作 ANS: 逻辑块 5 逻辑块 4 逻辑块 1 逻辑块 2 逻辑块 3 逻辑块 5 连续使用逻辑块时 当连续使用多个逻辑块时,应当考虑逻辑块的划分,表示如下: 逻辑块 1 逻辑块 2 逻辑块 3 逻辑块 4 2-17 ORS 组逻辑或 概述 将多个逻辑块串并联 程序示例 0 1 2 3 4 5 ST X 0 AN X 1 ST X 2 AN X 3 ORS OT Y 10 地址 指令 梯形图程序 布尔形式 示例说明 当X0和X1都闭合、或X2和X3都闭合时,Y10为ON。 (X0 与 X1) 或 (X2 与X3) → Y10 逻辑块1 逻辑块2 描述 将串联的逻辑块并联起来。 以ST指令开始的逻辑块。 逻辑块1 逻辑块2 FP-e/FP0/FP∑/FP1/FP-M/FP2/FP2SH/FP3/FP10SH 适用机型 2-18 使用FP手持编程器Ⅱ时,按键操作 ORS: 连续使用逻辑块时 当连续使用多个逻辑块时,应当考虑逻辑块的划分,表示如下: 逻辑块 5 逻辑块 1 逻辑块 2 逻辑块 3 逻辑块 4 逻辑块 5 逻辑块 4 逻辑块 1 逻辑块 2 逻辑块 3 2-19 PSHS RDS POPS 压入堆栈 读取堆栈 弹出堆栈 概述 PSHS:存储该指令之前的运算结果。 RDS: 读取由PSHS指令所存储的运算结果。 POPS:读取并清除由PSHS所存储的运算结果。 程序示例 0 1 2 3 4 5 6 7 8 9 ST X 0 PSHS AN X 1 OT Y 10 RDS AN X 2 OT Y 11 POPS AN/ X 3 OT Y 12 地址 指令 梯形图程序 布尔形式 示例说明 当X0闭合时: - 由PSHS指令保存之前运算结果,并且当X1闭合时,Y10为ON。 - 由RDS指令来读取所保存的运算结果,并且当X2闭合时Y11为ON。 - 由POPS指令来读取所保存的运算结果,并且当X3断开时,Y12为ON。同时清除由PSHS指令存储的运算结果。 压入堆栈 读取堆栈 弹出堆栈 2-20 编程时的注意事项 一个运算结果可以存储到内存中,而且可以被读取并用于多重处理 PSHS(存储运算结果) 由本条指令存储运算结果,并且继续执行下一条指令。 RDS(读取运算结果) 读取由PSHS指令所存储的运算结果,并且利用此结果从下一步起继续运算。 POPS(复位运算内容): 读取由PSHS指令所存储的运行结果,并且利用此结果从下一步起继续运算。同时还要清除由PSHS 指令存储的运算结果。 上述这些指令用于由某各触点产生的、后接其他一个或多个触点的分支结构。 描述 可通过连续使用RDS指令继续重复使用同一结果。 在 后时,必须使用POPS指令。 RDS指令可重复使用任意次数。 2-21 若指令的连续使用次数大于允许使用次数,该程序将不能正常运行。 若连续使用PSHS指令的期间使用了POPS指令,则会从用PSHS指令存储的 后一个数据开始顺序读取。 这个例子显示了这个命令连续使用了六次 读取 读取 读取 有关连续使用PSHS指令时的注意事项 PSHS指令可连续使用的次数有一定限制。在出现下一条POPS指令之前,可连续使用PSHS指令的 次数如下所示。 类型 FP-M, FP0, FP1, FPΣ,FP-e FP-C,FP2,FP2SH,FP3,FP10SH 连续使用次数 多8次 多7次 2-22 DF DF/ 上升沿微分 下降沿微分 概述 DF: 当检测到输入触发信号的上升沿时,仅将触点闭合一个扫描周期。 DF/:当检测到输入触发信号的下降沿时,仅将触点闭合一个扫描周期。 程序示例 0 1 2 3 4 5 ST X 0 DF OT Y 10 ST X 1 DF/ OT Y 11 地址 指令 梯形图程序 布尔形式 示例说明 在检测到X0的上升沿(OFF→ON)时,Y10仅为ON一个扫描周期。 在检测到X1的下降沿(ON→OFF)时,Y11仅为ON一个扫描周期。 有关指令 对于FPΣ、FP2、FP2SH和FP10SH,可以使用DFI指令。它只在程序的首次扫描周期执行。 上升沿 下降沿 上升沿微分 下降沿微分 FP-e/FP0/FP∑/FP1/FP-M/FP2/FP2SH/FP3/FP10SH 适用机型 2-23 编程时注意事项 当触发信号状态从OFF状态到ON状态变化时,DF指令才执行并且输出仅接通一个扫描周期。 当触发信号状态从ON状态到OFF状态变化时,DF/指令才执行并且输出仅接通一个扫描周期。 DF和DF/指令的使用次数没有限制。 只有在检测到触点的ON或OFF状态发生变化时,DF和DF/指令才会产生动作。 因此若执行条件 初即为闭合,如PLC模式改为运行或在运行模式下接通电源,则不会产生输出。 详细内容请参阅相关章节。 描述 1. 当X1断开时,即使X0升高,Y10仍然保持OFF。 2. 当X0闭合时,即使X1升高,Y10仍然保持OFF。 3. 当X1闭合时,若X0升高,则Y10在一个扫描周期内为ON。 在下列程序中,执行状态 初即为ON,因此没有输出。 示例:上升沿微分(DF)指令 R9013仅在PLC运行开始之后的第一个扫描周期内闭合。 R9010始终闭合。 对于下列程序,可获得输出。 R9014在PLC运行开始之后,由第二个扫描周期开始闭合。 运行 上升沿DF指令不动作 对于下图的程序,运算将按下列方式进行。 2-24 自保持回路的应用实例 如果在诸如MC和MCE、JP和LBL等会改变程序执行顺序的指令中使用微分指令,必须注意指令产生 的影响。 有关MC/MCE和JP/LBL指令的详细内容,请参阅相关章节。 - MC至MCE指令。 - JP至LBL指令 - F19(SJP)至LBL指令 - LOOP至LBL指令 - CNDE指令 - 步进梯形图指令 - 子程序 在将微分指令和堆栈逻辑与及弹出堆栈等指令组合执行时,应注意表达式是否正确。 以下回路的动作时序图如下: 微分指令的应用示例 如果采用微分指令编程,可以使程序调试更加简单。 使用微分指令可以延长保持输入信号。 没有微分指令的情况 如果X0或X1的上升沿都能使Y0输出,则应使用以下程序: (DF) X0 X1 [ ] Y0 (DF) X0 X1 [ ] Y0 (DF) 时序图 X0 X1 Y0 时序图 X0 X1 Y0 此时无输出 2-25 交替回路应用示例 使用微分指令也可以构成一个交替变化回路,实现利用同一个输入信号切换进行保持或释放。 示例 1: 示例 2: 2-26 DFI 上升沿微分(初始执行型) 概述 当检测到信号的上升沿时,触点仅在该扫描周期内闭合。在第一个扫描 周期时也可进行上升沿检测。 程序示例 0 1 3 ST X 0 DFI OT Y 10 地址 指令 梯形图程序 布尔形式 示例说明 仅在X0由OFF变为ON之后的一个扫描周期内对Y10产生输出。 当触发器X0在PLC运行开始之后才闭合时 当触发器X0在PLC运行开始之前已经闭合时 上升沿微分 (初始执行型) 一个扫描周期 上升沿 一个扫描周期 FP∑/FP2/FP2SH/FP10SH 适用机型 2-27 编程时注意事项 如果在诸如MC和MCE、JP和LBL等会改变程序执行顺序的指令中使用微分指令,必须注意指令产生的 影响。 有关MC/MCE和JP/LBL指令的详细内容,请参阅相关章节。 - MC至MCE指令。 - JP至LBL指令 - F19(SJP)至LBL指令 - LOOP至LBL指令 - CNDE指令 - 步进梯形图指令 - 子程序 在将微分指令和堆栈逻辑与及弹出堆栈等指令组合执行时,应注意表达式是否正确。 详细内容请参阅相关章节。 描述 当触发器(执行条件)由OFF变为ON时,DFI指令仅在随后的一个扫描周期内输出(微分输出)。 当触发器(执行条件)在PLC运行开始之前已闭合时,在第一个扫描周期产生输出(微分输出)。 对于DFI指令的使用次数没有限制。 当PLC模式改为运行(RUN)、或PLC在运行模式下接通电源时,如果此时触发器(执行条件)已经闭合, 则使用DF指令不能在第一个扫描周期产生输出。因此,在此情况下应使用DFI指令。 2-28 SET RST 置位 复位 概述 SET:当满足执行条件时,输出变为ON,并且保持ON的状态。 RST:当满足执行条件时,输出变为OFF,并且保持OFF的状态。 程序示例 20 21 24 25 ST X 0 SET Y 30 ST X 1 RST Y 30 地址 指令 梯形图程序 布尔形式 操作数 说明 继电器 定时器/计数器接点 T C SET, RST AA A AN/A (*1) 此项不用于FP-e/FP0/FP1/FP-M。 (*2) 此项仅适用于FP2SH/FP10SH。 示例说明 当X0闭合时,Y30为ON并保持ON。 当X1闭合时,Y30为OFF并保持OFF。 描述 X Y R L (*1) P E (*2) A A: 可以使用 N/A:不可使用 N/A N/A N/A 当触发器闭合时,执行SET(置位)指令。即使触发电器状态改变,输出线圈也会为ON并保持ON状态。 当触发器闭合时,执行RST(复位)指令。即使触发电器状态改变,输出线圈也会为OFF并保持OFF状态。 可以通过SET(置位)和RST(复位)指令,多次使用具有同一编号的继电器输出。(即使进行程序的总体检 查,也不会将其作为语法错误来处理。) 索引修正值 (*2) 置位 输出目标 复位 FP-e/FP0/FP∑/FP1/FP-M/FP2/FP2SH/FP3/FP10SH 适用机型 2-29 编程时注意事项 当使用SET(置位)和RST(复位)指令时,输出的值会随运算过程的期间的各步而改变。 使用SET(置位)和RST(复位)指令时 当X0、X1和X2闭合时 SET指令的目标输出值即使在MC指令中也被保持。 详细内容请参阅 “MC和MCE指令”一节。 如果输出目标继电器不是被指定为保持型的内部继电器,则PLC由运行(RUN)切换到编程(PROG)、或 切断电源时,该输出将被复位(OFF)。 I/O数据的更新是在执行ED(结束)指令时进行的,因此, 终实际的输出结果取决于 后的一次 的运算结果。在上例中,Y10的输出为ON。 如果在处理过程中需要输出一个结果, 可以使用I/O刷新指令(F143). 示例: 在这部分程序中,Y10作为ON处理 在这部分程序中,Y10作为OFF处理 在这部分程序中,Y10作为ON处理 SET和RST指令,以及微分指令 为了便于调试、优化程序,请务必在SET和RST指令 之前加入微分指令。当在程序中若干处对同一个输出 目标进行操作时,采用此方法非常有效。 使用FP2SH和FP10SH时的注意事项 任何用SET和RST指令处理继电器 不能将脉冲继电器(P)指定为SET或RST指令的输出目标继电器。 使用RST指令可以将继电器置为OFF。 使用不同的带SET或RST指令继电器,不会导致多重输出。 不允许将脉冲继电器(P)指定为SET或RST指令的输出目标继电器。 2-30 KP 保持 概述 根据置位或复位的输入信号进行输出,并且保持该输出状态。 程序示例 0 1 2 ST X 0 ST X 1 KP R 30 地址 指令 梯形图程序 布尔形式 操作数 说明 继电器 定时器/计数器接点 T C KP A A AN/A (*1) 此项不用于FP-e/FP0/FP1/FP-M。 (*2) 此项仅适用于FP2SH/FP10SH。 示例说明 当X0闭合时,输出继电器R30变为ON并保持ON状态。 当X1闭合时,R30变为OFF并保持OF状态。 描述 X Y R L (*1) P E A A: 可以使用 N/A:不可使用 N/A N/A N/A 当置位输入信号闭合时,指定继电器的输出变为ON并保持ON状态。 当复位输入信号闭合时,输出继电器变为OFF。 无论置位信号的输入状态是ON或OFF,输出继电器的ON状态都将保持不变,直至复位信号输入闭合。 若置位输入和复位输入同时变为ON,则复位输入信号优先。 N/A 索引修正值 (*2) 置位输入 复位输入 置位 复位 复位信号 优先 输出目标 当在MC和MCE指令之间用KP指令编程时,由KP指令指定的输出目标(继电器)的状态保持不变。 详细内容请参阅“MC和MCE指令”一节。 如果KP指令所使用的内部继电器(R)被设置为非保持型的数据,则PLC由运行(RUN)切换到编程 (PROG)、或切断电源时,该输出将被复位(OFF)。 (如果该内部继电器被设置为保持型,则不会被复位。) 编程时的注意事项 FP-e/FP0/FP∑/FP1/FP-M/FP2/FP2SH/FP3/FP10SH 适用机型 2-31 NOP 空操作 概述 不进行任何操作 程序示例 0 1 2 3 4 ST X 0 AN X 1 NOP AN/ X 2 OT Y 10 地址 指令 梯形图程序 布尔形式 需要将某段程序的起点由地址39移动到地址40时, 在地址39处插入一条NOP指令。 描述 本条指令对该点的操作结果没有任何影响。 如果没有NOP指令,操作结果完全相同。 使用NOP指令可以便于程序的检查和核对。 当需要删除某条指令而又不能改变程序指令的地址时,可以写入一条NOP指令(覆盖以前的指令)。 当需要改变程序指令的地址而又不能改变程序时,可以写入一条NOP指令。 使用本条指令可以方便地将较长、较复杂的程序区分为若干比较简短的程序块。 示例: 删除NOP命令 程序编制完成以后,可以在PROG.(编程)模式下、通过编程工具删除NOP指令。 - 利用编程工具软件(NPST-GR或FPWIN):在菜单中选择[删除NOP指令]并执行。 - 利用FP手持编程器Ⅱ:操作以下的指令键 键操作: 空操作 这个操作将 起始位置移动 到地址40 地址 加入空操作指令 地址 FP-e/FP0/FP∑/FP1/FP-M/FP2/FP2SH/FP3/FP10SH 适用机型 2-32 TML 0.001秒单位定时器 概述 设置以0.001秒为计数单位的延迟定时器 程序示例 0 1 4 5 ST X 0 ST X 1 TM L 5 K 300 ST T 5 OT R 0 地址 指令 梯形图程序 布尔形式 操作数 (*1) 此项仅适用于FP2SH/FP10SH。 (*2) 此项仅适用于FP2/FP2SH/FP10SH。 描述 A: 可以使用 N/A:不可使用 指令 设定值 继电器 WX (*1) WY (*1) WR (*1) WL (*1) 定时器/计数器 SV EV (*1) 寄存器 DT (*1) LD (*1) FL (*1) 索引寄存器 I 常数 K H f 索引 修正值 (*2) N/A N/AA A A A A A A A A A A A 当切断PLC电源或从RUN(运行)模式切换到PROG.(编程)模式时,定时器将被复位,其中的数据被清零。 (如果需要保持当前的操作状态,请参见系统寄存器6) 当触发器(执行条件)闭合时,定时器从设定值开始进行减计数直至经过值为零,然后在该时刻定时器触点 Tn(n为指定定时器的触点编号)变为ON. 如果在减计数的过程中触发器(执行条件)断开,则操作停止、经过值复位(清零)。 可以在定时器线圈之后直接执行OT指令。 定时器指令编号 定时器指令编号 定时器类型 设定值 FP-e/FP0/FP∑/FP2/FP2SH/FP10SH 适用机型 2-33 编程时注意事项 设置定时器的时间 所设定的时间等于时间增量(计时单位)乘以定时器的设定值。 定时器的设定值为K1至K32767之间的十进制整数。时间增量为0.001秒,则相应的定时范围 是0.001秒到32.767秒。 将K常数设置为定时器后,与定时器具有相同编号的存储区SV被作为设定值区域使用。 (1)当PLC模式切换到RUN、或在RUN模式下接通电源后,设定值被传送到与定时器具有相同编号的 设定值存储区SV。 示例: 当设定值为K43时,定时时间为0.001×43=0.043秒 当设定值为K500时,定时时间为0.001×500=0.5秒 在程序处理过程中定时器值递减,应编写程序使一个扫描周期内执行一次递减(如果使用了中 断程序或JP/LOOP等指令,使得程序在一个扫描周期内没有处理或产生多重处理,则不能得到 正确的结果。)如果需要在一个扫描周期内进行多重处理,请参照设置系统寄存器4。 在将定时器指令与ANS指令或POPS指令组合使用时,请注意表达式的正确性。 1)利用十进制常数K设置定时器 设置十进制常数K后的定时器动作 (2)当触发器X0(定时器执行条件)由OFF变为ON时,设定值由设定值存储区SV传送到具有相同编号 的经过值存储区EV。 (3)如果触发器(执行条件)为ON,则PLC模式被切换到RUN时会产生同样的操作。) 在每个扫描周期内,如果触发器(执行条件)为ON,则经过值EV中的数值递减。 设定值 传送到SV区域 传送到EV区域 递减操作 2-34 (4)当经过值EV的数值达到零时,具有相同编号的定时器触点T变为ON。 将字存储区作为设定值用于设定值区。 (1)当某条高级指令的执行条件(X0)变为ON后,设定值被放入指定的区域(此处以DT0为例)。 以下程序利用F0(MV)指令进行说明。 指定常数(K)时的要点 常数(K)在运行过程中可以改变。详细内容请参阅有关章节。 指定的常数(K)无法通过变址索引寄存器来修改。 以下程序无法执行。 2)使用字存储区进行定时器设置 指定字存储区后的定时器操作 指定常数(K)后,定时器编号无法用变址索引寄存器来修改。 以下程序无法执行。 (2)当定时器的执行条件由OFF变为ON时,数值由设定值区(本示例为DT0)传送到具有与定时器相同 编号的经过值EV中。 (当触发器(执行条件)为ON时,如果PLC模式切换到RUN,则也能产生同样的操作。) 递减操作结束 不正确 设定值 传送到设定值区域 不正确 2-35 (4)当经过值区EV中的数值递减到0时,具有相同编号的定时器的触点T变为ON(闭合)。 指定字存储区的要点 在递减操作的过程中,即使指定字存储区中数值被改变,递减操作也仍然继续使用变化之前的数值. 下一次执行条件由OFF变为ON时,定时器的操作才会开始使用新的数值。 字存储区分为两种。当切断PLC电源或由RUN模式切换到PROG.时,其中一种将被清零(非保持型),而 一种不会被清零(保持型)。当需要在再次接通PLC电源或由PROG.模式切换到RUN时仍能保持写入字 储区的数据时,请利用系统寄存器设置保持型数据区。 有关详细内容,请参阅相关章节。 当将字存储区作为设定值时,存储区的地址及定时器编号可以利用索引寄存器变址。 示例:改变储存区地址 当I2=K10时、DT10被用作设定值区时。 - 设定值区:DT10 - 经过值区:EV5 - 定时器触点:T5 递减操作结束 (3)在各个扫描周期中,如果触发器(执行条件)为ON,则经过值区EV中的数据递减。 传送到EV区域 递减操作 2-36 定时器指令应用的示例 定时器的串联 梯形图程序 布尔形式 时序图 定时器的并联 梯形图程序 布尔形式 时序图 当I0=K10时,定时器作为TML15使用。 - 设定值区:DT0 - 经过值区:EV15 - 定时器触点:T15 定时器触点也可以通过索引寄存器变址来改变。 • 当某一定时器编号被修改时,程序的步数为4步,与索引寄存器的值无关。 • 当存储区地址和定时器编号均被改变时,可以分别使用不同的索引寄存器。 示例:改变定时器编号 注释 2-37 由外部数字拨码开关设置设定值示例 与X0至XF相连的数字拨码开关的BCD数据被转换并成为设定值。 连接示例 梯形图程序 布尔形式 数字拨码开关 CPU和输入单元 定时器 设定值 根据指定条件修改设定值 X0闭合时设定值为K50,X1闭合时设定值为K30。 梯形图程序 布尔形式 时序图 2-38 TMR 0.01秒单位定时器 概述 TMR: 设置以0.01秒为定时单位的延时定时器 TMX: 设置以0.1秒为定时单位的延时定时器 TMY: 设置以1秒为定时单位的延时定时器 程序示例 0 1 4 5 ST X 0 TM X 5 K 30 ST T 5 OT Y 37 地址 指令 梯形图程序 布尔形式 操作数 (*1)此项仅适用于FP2SH/FP10SH。 (*2)此项仅适用于FP2/FP2SH/FP10SH。 A: 可以使用 N/A:不可使用 指令 设定值 继电器 WX (*1) WY (*1) WR (*1) WL (*1) 定时器/计数器 SV EV (*1) 寄存器 DT (*1) LD (*1) FL (*1) 索引寄存器 常数 K H 索引 修正值 (*2) N/AA A A A A A A A A A A 对于FP2、FP2SH和FP10SH,只有在未用K常数指定了设定值时,才能用索引寄存器修改定时器编号和设定值的存 储区。若定时器号被修改,则程序步数也改变。 TMX TMY 0.1秒单位定时器 1秒单位定时器 IX IY N/A N/A 设定值 定时器编号 定时器类型 触发 定时器触点编号 经过值 描述 计数器的点数可以用系统寄存器5改变。FP2SH和FP10SH的点数可增至3072点,FP-C和FP3可增至256 点,FP2可增至1024点,FP-M C16T和FP1 C14、C16可增至128点,FP-M C20、C32和FP1 C24、C40、 C56和C72及FP0,可达144。增加定时器的点数会相应减少计数器的点数。 定时器为非保持型,因此若切断电源或PLC模式方式由运行(RUN)变为编程(PROG)时,定时器会复位清 零。若需要保持运行状态,则应设定系统寄存器6。 当触发器闭合时,设定时间[n]递减,当经过值达到零时,定时器触点Tn(n为定时器触点编号)闭合。 若在运行过程中触发器断开,则运行停止且经过值复位(清零)。 在定时器线圈之后可以直接连接OT指令。 对于FP0/FP2/FP2SH/FP10SH,CPU版本为4.4或更高的FP-C/FP3和CPU版本为2.7或更高的FP-M/FP1,设 定值区号(SV)可直接指定为设定值。 FP-e/FP0/FP∑/FP1/FP-M/FP2/FP2SH/FP3/FP10SH 适用机型 设定值 传输到SV区域 2-39 定时器设定时间的计算公式为 [时间单位]×[设定值] 定时器设置值[n]必须为K1至K32767的十进制常数。 - TMS为由0.01至327.67秒,以0.01秒递增。 - TMX为由0.1至327.67秒,以0.1秒递增。 - TMY为由1至327.67秒,以1秒递增。 定时器的设定时间值 当TMX设置为K43时,设定时间为0.1×43=4.3秒。 当TMR设置为K500时,设定时间为0.01×500=5秒。 对于FP-e/FPΣ/FP0/FP2/FP2SH/FP10SH,定时器TML可以以0.001秒为计时单位来使用。 示例: 编程时的注意事项 为确保定时器正确运行,TM指令应在每次扫描中执行。尤其在使用INT、JP和LOOP等指令时应注意。 当定时器指令同“堆栈与(ANS)”或“弹出堆栈(POPS)”指令结合使用时,应注意语法是否正确。 有关详细内容请参阅相关章节。 (2)当计时触发器由OFF变为ON时,设置值被由设定值区(SV)传输至相同编号的经过值区(EV)。 (若在触发器闭合的情况下PLC模式变为运行,则会进行同样的动作。) (3)若触发器保持闭合状态,则经过值区(EV)的值递减。 定时器动作 下面是用K常数来设置设定值的示例。指定设定值区(SV)时的动作的说明,请见下一页。 (1)当PLC模式切换到运行(RUN)、或在运行模式下接通电源,定时设定值被传输至相同编号的设定值区(SV)。 传输到EV区域 递减 2-40 关于设定值区(SV)和经过值区(EV)的说明 ,请参阅相关章节。 定时器指令应用示例 定时器的串联 梯形图程序 布尔形式 时序图 (4)当经过值区(EV)的值达到零时,同号的定时器触点(T)变为ON。 递减操作结束 定时器的并联 梯形图程序 布尔形式 时序图 在动作过程中改变定时器的设定时间 定时器的设定值可以在运行的过程中修改。详细内容请参阅相关章节。 有关的指令 辅助定时器指令(F137、F183)也可以用于定时器。 2-41 直接指定设定值区编号作为定时器设定值 对于FP-e/FPΣ/FP0/FP2/FP2SH/FP10SH、CPU版本为4.4或更高的FP-C/FP3和CPU版本为2.7或更高的 FP-M/FP1,设定值区号(SV)可直接指定为设定值n。 上述程序的具体操作如下: ① 当触发器X0为ON时,执行高级指令F0(MV),将K30设置到SV5 ② 触发器X1变为ON后,由设定的数值30开始进行递减操作。 指定n(设定值SV的编号)为与定时器相同的编号。 使用手持FP编程器Ⅱ的按键操作: 即使设定值(SV)中的数值在进行递减操作的过程中被修改,递减操作也仍然按照原有的数值继续进行。 只有递减操作结束或被中断后,触发器随后由OFF变为ON时,定时器的动作才能从新设定的数值开始。 设定值区(SV)通常是非保持型数据,当切断PLC电源或由运行(RUN)模式切换到编程(PROG)时,这些数据 将被复位(清零)。 如果SV的数值在RUN模式下被修改、该数值作为设定值使用,并且需要在下次接通电源或由RUN运行模式 切换到PROG.编程模式时不被复位,则应该利用系统寄存器6将其指定为保持型数据。 有关详细内容,请参阅有关章节。 设值区编号(n)编号 梯形图程序: 两个编号必须相同 2-42 直接指定设定值区编号时的定时器动作 (1) 当高级指令的触发器为ON时,数值被设置到设定值区(SV)中。以下程序以高级指令F0(MV)为例 进行说明。 (4) 当经过值(EV)到达0时,具有相同编号的定时器的触点(T)变为ON。 (2) 当定时器的触发器由OFF变为ON时,设置值从设定值区(SV)放入具有相同编号的经过值区(EV)。 (当触发器为闭合时,如果PLC切换到运行模式,也会产生同样的动作。) (3) 如果触发器保持闭合,则经过值中的数值在每个扫描周期都递减。 有关设定值(SV)和经过值(EV)的说明,请参阅有关章节。 设定值 传输到SV区域 传输到EV区域 递减操作 递减操作结束 2-43 直接指定设定值区编号的示例 由外部数字拨码开关设置设定值的示例 与X0到XF输入点相连的数字拨码开关的BCD码形式的数据转换并成为设定值。 连接示例 梯形图程序 布尔形式 使用FP2SH和FP10SH时,可以将数据寄存器DT等的存储区指定为设定值。 根据指定条件改变设定值 X0为ON时设定值为K50,X1为ON时设定值为K30。 梯形图程序 布尔形式 时序图 定时器 设定值 WX0 数字拨码开关 CPU和输入单元 2-44 CT 计数器 概述 从预置值开始进行递减计数。 程序示例 0 1 2 5 6 ST X 0 ST X 1 CT 100 K 10 ST C 100 OT Y 31 地址 指令 梯形图程序 布尔形式 操作数 (*1)此项仅适用于FP2SH/FP10SH。 (*2)此项仅适用于FP2/FP2SH/FP10SH。 A: 可以使用 N/A:不可使用 指令 设定值 继电器 WX (*1) WY (*1) WR (*1) WL (*1) 定时器/计数器 SV EV (*1) 寄存器 DT (*1) LD (*1) FL (*1) 索引寄存器 常数 K H 索引 修正值 (*2) N/AA A A A A A A A A A A 计数器的起始编号(示例中为100),可以通过系统寄存器设置. 对于FP2、FP2SH和FP10SH,只有在未用K常数指定了设定值时,才能用索引寄存器修改计数器编号和设定值的存储区。 IX IY N/A N/A 示例说明 当X0的上升沿被检测到十次后,计数器的触点C100闭合、Y31变为ON。 当X1闭合时,经过值被复位。 计数器指令编号 预设值 计数器100的输出开关 计数器触发信号 计数器复位信号 经过值 10 次 FP-e/FP0/FP∑/FP1/FP-M/FP2/FP2SH/FP3/FP10SH 适用机型 2-45 描述 计数器是一种对预置值进行递减运算的计数器。 计数器的点数可以通过系统寄存器5修改。注意,如果增加计数器的使用点数,就会减少可用定 时器的点数。除FP0 C10、C14、C16和C32和FP-e以外的所有型号的模块,都可以有保持型和非保 持型计数器。保持型数据在PLC断电或由运行模式切换到编程模式时,仍然能被保留;而非保持 型数据在这些情况下会被复位(清除)。可以通过系统寄存器6指定非保持型区域。 当复位输入信号由ON变为OFF时,设定值区(SV)中的数值被预置到经过值区(EV)中。 当复位输入信号为ON时,经过值被复位清零。 当计数输入信号由OFF变为ON时,经过值从设定的数值开始递减;当经过值递减为0后,计数器的 触点Cn(n为计数器编号)变为ON。 如果复位输入与计数输入信号在某一时刻同时变为ON,则复位信号优先有效。 如果在某一时刻计数输入信号上升而复位信号同时下降,则计数信号无效、执行预置经过值。 在计数器指令之后可以直接使用OT指令。 设置计数器 设定值可以设定为由K0至K32767的十进制常数(K常数)。 计数器的动作 以下是将K常数指定为设定值的示例。关于指定设定值区编号的说明,请见以下几页。 (本示例所示为计数器的值指定为“100”的情况。) (1) 若PLC模式切换到运行或在设为运行模式时接通电源,则计数器设定值传输至编号相同的设定 值区(SV)。 (2) 在复位输入信号由ON变为OFF时,设定值区(SV)的数值被预置到经过值区(EV)。 传输 预设 递减操作 (3) 每次计数输入信号X0闭合,经过值区(EV)的数值递减。 2-46 当经过值区(EV)的数值达到0时,具有相同编号的计数器触点(C)变为ON。 (4) 当经过值区(EV)的值达到零时,同号的定时器触点(T)变为ON。 编程时的注意事项 当将计数器指令与“堆栈与ANS”指令或“弹出堆栈POPS”指令结合使用时,应注意语法是否正确。 递减结束 当与诸如MC和MCE或JP和LBL(见以下)等改变执行顺序的指令组合使用时,运算会根据指令的执行和 计数输入信号的时机而变化。在编程时应该注意这些情况。 - MC至MCE指令 - JP至LBL指令 - F19(SJP)至LBL指令 - LOOP至LBL指令 - CNDE指令 - 步进梯形图指令 - 子程序序指令 检测计数输入信号的注意事项 在计数指令中,当检测到计数输入信号由OFF到ON的变化时,进行递减操作。 若计数输入信号继续保持ON,则由于递减操作只在信号的上升沿执行一次,而不会进一步执行。 因此,如果PLC切换到运行模式或运行模式下接通电源时,计数输入信号初始已经为ON,则在第一次 扫描周期内不会进行递减运算。 有关指令 计数器指令还包括加/减计数指令(F118)。数据增1指令(F35)也可提供相同的功能。 计数器触发信号 指令动作 不计数 计数 运行 (电源ON) 2-47 上述程序的工作方式如下: (1) 当触发器X0闭合时,执行数据转移指令[F0(MV)],将K30设定到SV100中。 (2) 当计数输入信号X1接通时,从设定值30开始进行递减运算。 指定[n](设定值区SV的编号)应与计数器编号相同。 直接指定设定值编号作为计数器设定值 对于FP-e/FPΣ/FP0/FP2/FP2SH/FP10SH,CPU版本为4.4或更高版的FP-C/FP3,和CPU版本为2.7或 更高的FP-M/FP1,可以直接指定设定值区编号作为设定值n。 即使设定值(SV)中的数值在进行递减操作的过程中被修改,递减操作也仍然按照原有的数值继续进 行。只有递减操作结束或被中断后,触发器随后由OFF变为ON时,计数器的动作才能从新设定的数 值开始。 设定值区(SV)为保持型时,在切断PLC电源或由运行模式切换到编程模式时不被复位。 若在运行模式下改变(SV)的数值,则在下一次接通电源或由编程模式切换到运行模式时,该值可用 作设定值。系统寄存器6用于指定非保持型区。 有关系统寄存器的详细内容,请参阅相关章节。 使用手持编程器的按键输入: 演示 计数器指令编号 两个编号 必须一致 设定值区编号(n) 2-48 (2) 当复位输入断开时,设定值区(SV)的数值被预置到经过值区(EV)。 直接指定设定值区编号时的计数器动作 (1) 当高级指令的触发器闭合时,数值被设置于设定值区(SV).以下程序为使用高级指令F0(MV)的示例. (4) 当经过值区(EV)达到零时,具有相同编号的计数器触点C变为ON。 (3) 每次计数输入X1变为ON时,经过值区(EV)的数值递减。 传输到SV区 预设 递减 递减操作结束 2-49 直接指定设定值区编号的示例 由外部数字拨码开关设置设定值 与X0至XF相连的数字拨码开关的BCD数据被转换,并成为设定值。 连接示例 梯形图程序 布尔形式 对于FP2SH和FP10SH,数据寄存器DT等的存储区可指定为设定值。 根据指定条件改变设定值 X0为ON时设定值为K50,X1为ON时设定值为K30。 梯形图程序 布尔形式 时序图 计数器 设值 数字拨码开关 WX0 CPU和输入单元 2-50 SR 寄存器移位 概述 16位[字数据 内部继电器(WR)]数据左移一位。 程序示例 0 1 2 3 ST X 0 ST X 1 ST X 2 SR WR 3 地址 指令 梯形图程序 布尔形式 操作数 (*) 此项仅用于FP2/FP2SH/FP10SH。 A: 可以使用 N/A:不可使用 指令 D:数据区 继电器 WX WY WR WL 定时器/计数器 SV EV 寄存器 DT LD FL 索引寄存器 常数 K H 索引 修正值 (*) N/AA A 对于FP2、FP2SH和FP10SH,只有在未用K常数指定了设定值时,才能用索引寄存器修改计数器编号和设定值的存储区。 若计数器号被修改,则程序步数也改变。 IX IY N/A N/A N/AN/AN/AN/AN/AN/AN/AN/AN/A 数据输入 移位触发信号 复位触发信号 FP-e/FP0/FP∑/FP1/FP-M/FP2/FP2SH/FP3/FP10SH 适用机型 示例说明 若在X2为OFF状态时X1闭合,则内部继电器的寄存器WR3(对应内部继电器R30至R3F)的内容左移一位。 若X0为ON,则将“1”移入R30;若X0为OFF,则将“0”移入R30。 若X2接通,则WR3的内容复位为0。 2-51 描述 将指定的数据区(WR)左移一位。 当移位输入信号变为ON(上升沿)时,寄存器WR的内容左移一位。 在移位过程中,如果数据输入信号为ON,则将空位(最低位)置1;如果数据输入信号为OFF,则 将该位置为0。 当复位输入信号为ON时,WR的内容被清除。 当复位输入信号为ON时: WR3 位置 数据 3F . . . . . . . . . . . . 30 15 . . 12 11 . . 8 7 . . 4 3 . . 0 0 0 0 0 0 0 0 0 1 0 0 0 1 1 0 0 数据 0 0 0 1 0 0 0 1 0 0 0 1 1 0 0 0 向左移一位 数据输入(X0)ON :将该位设置为“1” 数据输入(X0)OFF:将该位设置为“0” WR(二进制数据) 0 0 1 1 0 1 0 0 0 0 0 1 1 0 0 1 WR(二进制数据) 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 WR3的值被清零 2-52 当与诸如MC和MCE或JP和LBL(见以下)等改变执行顺序的指令组合使用时,运算会根据指令的执行和 移位输入信号的时机而变化。在编程时应该注意这些情况。 - MC至MCE指令 - JP至LBL指令 - F19(SJP)至LBL指令 - LOOP至LBL指令 - CNDE指令 - 步进梯形图指令 - 子程序序指令 有关移位输入检测的注意事项 对于SR指令,仅在检测到移位输入信号(OFF→ON)的上升沿时,进行移位操作。若移位输入信号继续 保持ON,则只能在上升沿的时刻进行移位,不会进一步移位。 因此,如果PLC切换到运行模式或运行模式下接通电源时,移位输入信号初始已经为ON,则在第一次 扫描周期内不会进行移位操作。 有关指令 除移位寄存器指令以外,还有左/右移位寄存器指令(F119)。 也可使用数据移位指令(F100至F113)或数据循环移位指令(F120至F123)进行同样运算。 移位输入 指令动作 不移位 移位 编程时的注意事项 SR指令需要数据输入、移位输入和复位输入。 当同时检测到复位输入和移位输入时,复位输入信号优先。 若内部继电器区被指定为保持型,则应注意:当电源接通时,该区的数据并不复位为“0”。 当将移位寄存器指令与“堆栈与ANS”指令或“弹出堆栈POPS”指令结合使用时,应注意语法是否正确。 移位输入 复位输入 数据区(Rn) 复位信号优先 2-53 MC 主控继电器 概述 当执行条件为ON时,执行MC和MCE之间的程序。 当执行条件为OFF时,MC和MCE之间的输出全部为OFF。 程序示例 0 1 3 4 5 6 7 8 9 ST/ X 0 MC 1 ST X 1 OR Y 31 OT Y 31 ST X 2 OR Y 32 OT Y 32 MCE 1 地址 指令 梯形图程序 布尔形式 MCE 主控继电器结束 示例说明 当执行条件X0为ON时,执行由MC1指令到MCE1指令之间的程序。 若执行条件为OFF,则位于MC1和MCE1指令之间的程序不进行输出处理,输出被置为OFF。 执行条件 主控继电器指令编号 主控继电器 控制区域 主控继电器指令编号 执行 条件 FP-e/FP0/FP∑/FP1/FP-M/FP2/FP2SH/FP3/FP10SH 适用机型 2-54 在使用以下指令时必须注意,因为这些指令(例如微分指令)在检测到执行条件(触发器)的上升沿时 被执行。 - DF指令 - CT指令的计数输入 - F118(UDC)指令的计数输入 - SR指令的移位输入 - F119(LRSR)指令的移位输入 - NSTP指令 - 微分执行型高级指令(这些指令由P和指令编号指定) 下表说明了不同机型的PLC能够使用的MC和MCE指令的点数。 描述 当执行条件为ON时,执行MC1和MCE1之间的程序。 当执行条件为OFF状态时,各指令的操作如下: 指令 OT KP 输入和输出的状态 全部OFF 保持原有状态 SET RST TM CT SR 微分 其他指令 保持原有状态 保持原有状态 复位 保持原有状态 保持原有状态 见下页 不执行 型号 FP2 FP2SH/FP10SH 点数 256点 256点(使用120K步型:512点) FP-C/FP3 FP-M C16T FP1 C14,C16 FP-M C20,C32 FP1 C24,C40,C56,C72 FP0, FP-e 64点 16点 32点 32点 FPΣ 256点 2-55 MC和MCE之间的微分指令的动作 如果微分指令位于MC和MCE之间,则输出将取决于MC指令的执行条件与微分指令的输入的时序。 如果MC指令与微分指令使用同一个执行条件,则无法获得输出。如果需要得到输出,则应该在MC 与MCE指令之外输入微分指令。 时序图1 时序图2 执行前一个 微分指令 微分指令的输入信号X1 与前一次执行时没有变化, 因此不能得到微分输出. 执行前一个 微分指令 微分指令的输入信号X1 与前一次执行时相比, 从OFF变为了ON,因此 可以得到微分输出. 2-56 编程时的注意事项 在最初的MC-MCE指令之间,可以再嵌套次一级的MC-MCE指令。(嵌套次数无限制。) 如果存在以下情况,程序无法执行: 如果MC或MCE不匹配 MC和MCE指令的顺序颠倒 有两个或两个以上主控指令组 具有相同编号。 重复使用 2-57 JP 跳转 概述 跳转至与JP指令有相同编号的LBL指令。 程序示例 10 11.... 20 ST X 1 JP 1.... LBL 1 地址 指令 梯形图程序 布尔形式 LBL 标号 示例说明 当执行条件X1闭合时,程序由JP1跳转至LBL1。 描述 当执行条件为ON时,程序跳转至与指定的跳转编号同号的标号(LBL)指令。 程序随后执行从由作为跳转目标的标号的地址开始的指令。 JP、LOOP和F19(SJP)等指令都使用相同的标号,这些指令都可以作为跳转的起点。 在程序中可以两个或更多的JP指令使用相同的标号。 标号 程序 程序 程序 不执行 在程序中不允许两个或多个LBL指令使用 相同的标号。 如果程序代码中没有作为跳转目标的标号, 则会产生语法错误。 FP-e/FP0/FP∑/FP1/FP-M/FP2/FP2SH/FP3/FP10SH 适用机型 2-58 以下的指令在检测到执行条件的上升沿会被执行(相当于微分指令),因此在使用时必须注意。 - DF(上升沿微分) - 计数输出CT(计数器) - 计数输出F118(增/减计数指令) - 移位指令SR(移位寄存器) - 移位指令F119(左/右移位寄存器) - NSTP(下一级步进) - 微分执行型高级指令(由P和编号指定的指令) JP和LBL指令之间的TM、CT及SR指令的动作 当LBL指令位于JP指令之后时: - TM指令: TM指令不被执行。 如果该指令在一个扫描周期内未被执行, 则不能保证定时的时间精度。 - CT指令: 即使输入信号为ON,也不进行计数。 保留当前的经过值。 - SR指令: 即使输入信号为ON,也不进行移位。 维持指定寄存器的状态。 如果LBL指令的地址位于JP指令的地址之前,则程序会进入死循环而无法终止,并且产生运算瓶颈错误。 不能在步进梯形图程序区中(SSTP和STPE之间)使用JP指令和LBL指令。 不允许执行跳转从主程序进入子程序(子程序或中断程序位于ED指令之后),也不允许从子程序跳转至程 序或一个子程序跳转至另一个子程序。 编程时的注意事项 当LBL指令位于JP指令之前时: - TM指令: 由于在一个扫描周期内多次执行TM, 不能保证定时的时间精度。 - CT指令: 如果输入信号为ON的状态在一个扫描 周期内没有改变,则按通常动作。 - SR指令: 如果输入信号为ON的状态在一个扫描 周期内没有改变,则按通常动作。 当执行条件为ON时 程序跳转 当执行条件为ON时 程序重复执行 注释 对于FP2SH和FP10SH,即使在一次扫描中多次执行涉及时间的指令,也可以精确地计算或保持 有关的时间值。这些指令与JP指令一起使用时,请修改设置系统寄存器4。 2-59 JP与LBL指令之间的微分指令 在JP与LBL指令之间使用微分指令时,必须了解输出将如以下所示,会随JP的执行条件和微分指令 的输入时机而不同。 当JP指令的执行条件与微分指令的执行条件相同时,检测不到微分指令的执行条件的上升沿(或下降沿)。 因此,当需要有微分输出时,请不要在JP和LBL指令之间使用微分指令。 时序图1 时序图2 不执行 放在JP和LBL指令之间以外的区域 前一次执行 JP指令 微分指令的执行条件X1 在前一次执行后没有变化, 因此不能得到微分输出. 前一次执行 JP指令 微分指令的执行条件X1 在前一次执行后, 从ON 变为OFF, 因此能够得到 微分输出. 2-60 LOOP 循环 概述 跳转至与LOOP指令具有相同编号的LBL指令,重复执行其后的程序 部分直至指定的操作数的数值变为“0”。 程序示例 10 11 16 30 31 ST X 0 F0 (MV) K 5 DT 0 LBL 1 · · ST X 1 LOOP 1 DT 0 地址 指令梯形图程序 布尔形式 操作数 (*1) 不能用于FP-e/FP0/FP1/FP-M。 (*2) 不能用于FP-e/FPΣ/FP0/FP1/FP-M。 (*3) 对于FPΣ、FP2、FP2SH和FP10SH,是I0~IC。 (*4) 对于FPΣ、FP2、FP2SH和FP10SH,是ID。 (*5) 只有FP2、FP2SH和FP10SH可以使用标号。 A: 可以使用 N/A:不可使用 指令 设定值 继电器 WX WY WR WL 定时器/计数器 SV EV 寄存器 DT LD (*1) FL (*2) 索引寄存器 常数 K H 索引 修正值 (*5) N/AA A A A A A A A A LBL 标号 IX (*3) IY (*4) N/A N/A S 设置循环操作次数的16位数据区域 A A 循环次数 标号 标号 FP-e/FP0/FP∑/FP1/FP-M/FP2/FP2SH/FP3/FP10SH 适用机型 2-61 如果由S指定的存储区的内容开始即为0,则不执行跳转操作(被忽略)。 描述 当执行条件(触发器)变为ON时,S中的数值将减1,并且如果结果不为0,程序将跳转到与指定编号相 同的标号(LBL指令)。然后,程序从作为循环目标的标号所在的指令开始继续执行。 利用LOOP指令设置程序的执行次数。当S中所设置的次数(K常数)达到0时,即使执行条件(触发器)为 ON,也不会执行跳转。 不允许在程序中有两个或多个LBL指令使用相同的编号。 对于FP2、FP2SH和FP10SH,可以由索引寄存器变址指定编号。 如果程序代码中没有作为循环目标的标号,则会产生语法错误。 标志状态 一个标号可以被JP指令、LOOP指令和F19(SJP)指令共同使用。某个标号允许被所有的指令作为目标 多次使用。 若DT0的值为K5,则在执行五次跳转之后,即使X1被置为 ON,也不会执行跳转运算。 · 错误标志(R9007): · 错误标志(R9008): 当数据区S中指定的数值小于0(指定数据的最高位(bit15)为1)时, 本标志变为ON并且保持。 当数据区S中指定的数值小于0(指定数据的最高位(bit15)为1)时, 本标志瞬时为ON。 2-62 当LBL指令位于LOOP指令之后时: LOOP和LBL指令之间的TM、CT及SR指令的动作 -TM指令:TM指令不被执行。 如果该指令在一个扫描周期内未被执行, 则不能保证定时的时间精度。 -CT指令:即使输入信号为ON,也不进行计数。 保留当前的经过值。 -SR指令:即使输入信号为ON,也不进行移位。 维持指定寄存器的状态。 对于FP2SH和FP10SH,即使在一次扫描中多次执行涉及时间的指令,也可以精确地计算 或保持有关的时间值。这些指令与LOOP指令一起使用时,请修改设置系统寄存器4。 注释 - TM指令: 由于在一个扫描周期内多次执行TM, 不能保证定时的时间精度。(见注释) - CT指令: 如果输入信号为ON的状态在一个扫描 周期内没有改变,则按通常动作。 - SR指令: 如果输入信号为ON的状态在一个扫描 周期内没有改变,则按通常动作。 当执行条件(触发)为ON时,程序跳转 当执行条件(触发)为ON时,程序重复执行 当LBL指令位于LOOP指令之前时: 2-63 在步进梯形图区(SSTP与STPE之间的区域)中,不能使用LOOP指令和LBL指令。 不允许从主程序跳转到子程序(位于ED指令之后的子程序或中断程序)、从子程序跳转到主程序或 从一个子程序跳转到另一个子程序。 以下的指令在检测到执行条件的上升沿会被执行(相当于微分指令),因此在使用时必须注意。有 关详细内容,请参阅相关章节。 - DF(上升沿微分) - CT指令的计数输入(计数器) - F118的计数输入(增/减计数指令) - 指令SR的移位输入(移位寄存器) - 指令F119的移位输入(左/右移位寄存器) - NSTP(下一级步进) - 微分执行型高级指令(由P和编号指定的指令) 示例:当X5为ON时,执行5次F0(MV)指令。 示例:将DT100的值发送到DT200至DT219。 编程时的注意事项 当标号在程序中的地址位于LOOP指令之前时,请注意以下几点。 必须确保在LBL和LOOP指令之间的区域之前,有设置循环的次数的指令。 将需要被重复执行的指令放置在LBL和LOOP指令之间,这样可以使这些指令与LOOP指令具有相同的触发器。 在重复执行过程中,有可能由于运算堵塞而使一次扫描超出限制时间,并且产生运算瓶颈错误。 2-64 BRK 断点 概述 在测试/运行(TEST/RUN)方式下停止执行。 程序示例 10 11 12 13 14 ST X 0 OT Y 30 BRK ST X 1 OT Y 31 地址 指令 梯形图程序 布尔形式 BRK指令只有在测试/运行(TEST/RUN)模式下才能起作用。在通常的运行(RUN)模式条件下,本指令 不被执行。 在测试/运行(TEST/RUN)模式下,程序执行将暂时停止在包含BRK指令的地址处。 BRK指令可以用于一部分一部分地检查程序。 如何使用BRK命令 步骤: 1.将CPU单元上的INITIALIZE/TEST开关设置在TEST一侧 2.利用编程工具软件(FPWIN-GR等)将模式选择为TEST/RUN,如下: - 输出: 禁止或输出(根据实际要求选择其中一种) - BRK : 有效(BRK指令有效模式) - TEST模式:继续(连续运行模式) 描述 FP2/FP2SH/FP3/FP10SH 适用机型 2-65 6.到程序结束为止,根据上述步骤4和5进行处理。 如果需要,可以采用单步运行模式。在单步运行模式下,程序在执行完每条指令后都会停止执行。 4.当X0处于ON的状态时,执行BRK指令,停止执行程序。 5.在编程工具软件(FPWIN-GR等)的测试运行窗口中,按住[SHIFT]键再按[F3]键,使程序继续执行。 如果执行了BRK指令,程序会停止执行。 从地址13开始 停在地址35 执行 3.将模式切换到RUN,开始进行测试/运行操作。 停止在地址12 2-66 ED 结束 概述 表示常规程序的结束。 程序示例 0 1 2 3 · · · 96 97 98 99 ST X 0 OR R 0 AN/ X 1 OT R 0 · · · ST R 0 AN X 2 OT Y 30 ED 地址 指令 梯形图程序 布尔形式 表示常规程序的结束。 程序区 描述 使用本指令,可将程序区划分为常规程序区(主程序)和“子程序”与“中断程序” 区(子程序)。 应在ED指令之后输入子程序和中断程序。 地址 0 常规程序 (ED) 中断程序 子程序 FP-e/FP0/FP∑/FP1/FP-M/FP2/FP2SH/FP3/FP10SH 适用机型 2-67 CNDE 条件结束 概述 当执行条件(触发器)为ON时,程序的一次扫描结束。 程序示例 0 1 2 3 · · · 96 97 98 99 100 ST X 0 OR Y 30 AN/ X 1 OT Y 30 · · · ST X 3 CNDE ST R 0 AN/ X 2 OT Y 31 地址 指令 梯形图程序 布尔形式 CNDE指令能够结束对程序的一次扫描。 当执行条件(触发器)闭合时,程序结束并且进行输入、输出和其他操作。操作完成后,程序回到开始 地址。 可以调节运算的时机,可以在所需地址的程序扫描完成之后结束。 CNDE指令不能在子程序或中断程序中执行。仅能在主程序区使用CNDE指令。 在主程序内,可使用两个或多个CNDE指令。 在使用下列指令之一时,必须注意。这些指令是在检测到执行条件(触发器)的上升沿时执行。有关详 细内容,请参阅相关章节。 - DF(上升沿微分) - CT(计数器)的计数输入 - F118(UDC)(加/减计数器)的计数输入 - SR(移位寄存器)的移位输入 - F119(LRSR)(左/右移位寄存器)的移位输入 - NSTP(下一级步进) - 微分执行型高级指令(由P和编号指定的指令) 描述 执行条件(触发) FP-e/FP0/FP∑/FP1/FP-M/FP2/FP2SH/FP3/FP10SH 适用机型 2-68 当执行CNDE指令时(当X3闭合时), 被执行的程序。 当CNDE指令被执行时, 程序的这部分不执行。 通常扫描过程中被执行的程序。 2-69 EJECT 换页 概述 进行打印输出时添加页结束并换页。 程序示例 0 1 2 3 4 5 6 ST R 0 OT Y 0 EJECT ST R 1 OT Y 1 ST R 2 OT Y 2 地址 指令 梯形图程序 布尔形式 打印输出所编制的程序时,在需要分页的地址加入EJECT指令. 在上例中在地址2处进行页分隔. 描述 示例说明 在打印利用编程工具软件编写的程序时, 在插入本指令的地址处进行分页。 与NOP指令相同, 本指令不影响程序的处理。 FP2/FP2SH/FP10SH 适用机型 2-70 SSTP 开始步进程序 概述 SSTP: 指定步进程序的开始。 NSTL: 启动指定步进程序。 若触发器闭合,则每次扫描都执行NSTL。 NSTP: 启动指定的步进程序。 当检测到触发器的上升沿时,执行NSTP。 CSTP: 将指定的过程复位。 STPE: 指定步进程序区的结束。 程序示例 10 11 14 17 18 19 22 · · · 100 101 104 地址 指令 梯形图程序 布尔形式 NSTL CSTP STPE 下步步进过程(扫描执行型) 清除步进程序 步进程序区结束 ST X 0 NSTP 1 SSTP 1 OT Y 10 ST X 1 NSTL 2 SSTP 2 · · · ST X 3 CSTP 50 STPE 下步步进过程(微分执行型) NSTP FP-e/FP0/FP∑/FP1/FP-M/ FP2/FP2SH/FP3/FP10SH 适用机型 2-71 可以方便地进行顺序控制、选择分支控制、并行分支控制等操作。 描述 - 顺序控制 按次序进行切换和只执行所需要的过程。 示例: 当执行到NSTL指令或NSTP指令时,将开始执行由SSTP指令所指定的编号的步进过程。 在步进梯形图程序中,某个步进过程是由SSTP指令到下一个SSTP指令或STPE指令之间的程序指定的。 - 选择分支控制 根据不同的条件,选择并执行相应的过程。 - 并行分支控制 同步执行多项过程。 各个过程执行结束后,执行下一过程。 过程1 过程1 过程2 过程3 过程4 过程1 过程2 过程3 过程4 过程1 过程2 过程3 过程4 2-72 步进梯形图指令语法 SSTP(步进程序开始)指令: 本指令指定过程n的起始地址。 SSTP指令应始终位于过程n的程序的起始地址处。 有一个特殊的内部继电器,它只在步进程序中的一个过程开始时,才闭合一个扫描周期。(R9015:步进 程序初始脉冲继电器。)该继电器用于只产生一个扫描周期的动作、进行计数器复位或启动其他过程等 程序 程序 程序 过程1 过程2 在步进梯形图程序中,由一个SSTPn指令至下一个SSTP或STPE指令之间的部分被认为是过程n。 两个过程不能使用相同的过程编号。 在SSTP指令后,可以直接编写OT指令。 在子程序(子程序或中断程序区)中不能编写SSTP指令。 由第一个SSTP指令开始到STPE指令为止的区域,被视为步进梯形图程序区。 本区中的所有程序均作为过程进行控制。 其他区域的程序作为通常的梯形图程序进行处理。 普通梯形图区域 步进梯形图区域 普通梯形图区域 2-73 NSTL(下步步进程序,扫描执行型)指令: NSTP(下步步进程序,微分(脉冲)执行型)指令: 当执行到NSTPn指令或NSTPn指令时,会进入与NSTP或NSTL指令具有相同过程编号”n”的过程。 下步步进指令的执行条件(触发器)表示过程开始的执行条件(触发器)。 X0:OFF SSTP1:开始 ON R0:ON SSTP1:清除 SSTP2:开始 当NSTP指令与下列能够改变程序执行顺序的指令一起使用时,必须了解各指令的动作会受到指令执行和 触发器时序的影响。 - MC至MCE指令 - JP至LBL指令 - F19(SJP)至LBL指令 - LOOP至LBL指令 - CNDE指令 - 步进梯形图指令 - 子程序指令 当NSTP与“堆栈逻辑与ANS”和“弹出堆栈POPS”指令组合使用时,应注意编程是否正确。 在常规梯形图程序区中指明下一步步进程序指令中首先执行的过程。 可以从常规梯形图程序区或已经开始执行的过程,开始执行一个过程。 但是,当利用下一步步进程序指令、从另一个过程中间开始一个过程时,当前正在处理的、包含下一步 步进程序指令的过程将被自动清除,开始执行指定的过程。 请确认输出和其他的过程在下一个扫描内确实被清除。 NSTP指令是一个微分(脉冲)执行型指令,因此只在执行条件(触发器)变为ON时执行一次。此外,因为只 有检测到执行条件(触发器)ON与OFF之间的变化才会动作,所以,如果当PLC切换到RUN模式或在RUN模式 下接通电源时、执行条件(触发器)已经处于ON的状态,本指令就不能被执行。 运行 (电源ON) 不执行 执行 执行 执行 NSTP 的操作 NSTL 的操作 2-74 CSTP(清除步进过程)指令: 执行CSTP指令时,带有相同过程编号“n”的过程被清除。本指令可用于清除最终过程或在执行 并行分支控制时清除过程。 在以上示例中,过程n为最后的过程。 STPE指令在主程序中只使用一次。(不能在子程序序或中断程序中使用本指令编程。) STPE(步进结束)指令: STPE表示步进梯形图区的结束。必须在最后的过程的结束处编写本指令。因此步进梯形图程序中最后的 过程是由SSTP至STPE的部分。 一个过程可以从常规梯形图程序区中清除,或从一已经开始的执行过程中清除。 X0:ON 过程99:被清除 过程99 注释 对于FPΣ/FP2/FP2SH/FP10SH, 可以使用SCLR(块清除)指令同时清除指定范围内 的多个过程。详细内容请参阅SCLR指令部分。 过程n 通常梯形图区域 步进梯形图区域 通常梯形图区域 编程时的注意事项 无需按照过程编号的顺序对过程进行编程。 在步进梯形图程序中,不能使用下列指令: - 转移指令(JP和LBL) - 循环指令(LOOP和LBL) - 主控指令(MC和MCE) - 子程序指令(SUB和RET)(*) - 中断指令(INT和IRET) - ED指令 - CNDE指令 (*) 调用(CALL)指令可以在步进梯形图程序内使用。 2-75 X0变为ON时,所有过程均被清除。 步进梯形图动作 在编制了步进梯形图程序后,常规梯形图程序区中的程序和由下一步步进程序指令(NSTL或NSTP) 触发的过程将被处理执行,而未被触发的过程将被忽略。 不必按照过程编号的顺序来执行各个过程。可以同时执行两个或两个以上的过程。 当个已在一过程中编程但尚未执行的输出进行强制ON/OFF操作时,即使强制ON/OFF状态被取消,输出 状态也将维持不变,直至该过程开始。 在以上程序中,程序执行常规梯形图区和过程2。 在进入步进过程的瞬间,步进程序内部脉冲继电器R9015将在第一个扫描周期内立即变为ON,并且 仅保持一个扫描周期。可以利用R9015对计数器进行复位或对寄存器进行移位。 当需要清除步进梯形图程序中所有的过程时,应使用主控(MC和MCE)指令,如下所示。 示例: 通常梯形图区域 不执行过程1 执行过程2 不执行过程3 通常梯形图区域 执行 不执行 执行 不执行 执行 步进 梯形图 区域 主控 指令 2-76 关于过程清除的说明 示例: (*)与MC指令的执行状态 (触发器)变为OFF时的运行 方式相同。请参考MC和MCE 指令说明。 过程的执行状态(启动/停止)存储在特殊数据寄存器中: 若过程被清除,则该过程中的指令运行方式如下。 示例:过程No.16至过程No.31的启动状态 位址 过程号 DT9061/DT90061 15 · · 12 11 · · 8 31 · · 28 27 · · 24 0 0 0 0 0 0 0 1 7 · · 4 23 · · 20 0 0 0 0 3 · · 0 19 · · 16 0 0 0 0 当DT9061/DT90061的第8位为“1”时,表示过程No.24正处于启动状态。 如果在一个正在执行的进程中执行下一步步进指令,那么该过程会自动清除。但是,只有到下一 次扫描才会产生实际的清除动作。因此,对于过程过渡期间的一次扫描而言,将有两个的被执行 的过程同时存在。如果不需要在同一时刻有两个过程存在,应该编写内部互锁回路。如果由于硬 件响应的延时而允许同时存在两个过程,则也可以考虑采取硬件延时响应的方法。 指令 OT KP SET RST TM CT SR DF和DF/(*) 其他指令 操作状态 全部OFF 保持状态 保持状态 保持状态 经过值和定时器触点输出复位 保持触发器变为OFF之前时刻的状态 保持触发器变为OFF之前时刻的状态 记忆执行条件(触发器)的状态 不执行 DT90060 ~ DT90067FP0 T32 DT90060 ~ DT90122FPΣ/FP2/FP2SH/FP10SH DT9060 ~ DT9122FP3 DT9060 ~ DT9067FP0 C10,C14,C16,C32 / FP1/FP-M 特殊数据寄存器机型 2-77 本程序重复相同过程,直至一特殊过程中的工作完成。然后在本过程完成后,立即切换到下一步步进过程。 编程时在各个过程中使用NSTL指令作为进入下一步的触发器。 当执行到NSTL指令时,下一个过程被激活,而当前正在执行的过程则被清除。 不必按照编号的次序执行过程。也可以利用NSTL指令,根据当前的条件触发前一个过程。 ① 一个过程的顺序控制 1)当X10为ON时,执行过程10。 2)当X11为ON时,清除过程10,执行过程11。 3)当X12为ON时,清除过程11,执行过程12。 4)当X14为ON时,清除过程12,并且结束步进 梯形图程序。 步进梯形图指令示例 在使用以下指令时必须注意,因为这些指令(例如微分指令)在检测到执行条件(触发器)的上升沿时被执行。 - DF指令 - CT指令的计数输入 - F118(UDC)指令的计数输入 - SR指令的移位输入 - F119(LRSR)指令的移位输入 - NSTP指令 - 微分执行型高级指令(这些指令由P和指令编号指定) 程序示例 过程流程图 结束 R50变为ON R51变为ON R52变为ON X11:ON X12:ON X14:ON X10:ON 过程10 过程11 过程12 时序图 执行清除 执行清除 执行清除 过程10 过程11 过程12 程序 过程10 过程11 过程12 2-78 本程序根据某一指定过程的动作和结果,选择并且切换进入下一个过程。每个过程将循环执行直至 工作完成。 在一个过程中使用两个或多个NSTL指令触发下一个过程。根据不同的执行条件,选择不同的分支作 为下一个过程触发并且执行。 ② 过程的选择分支控制 1) 当X100为ON时,执行过程100。 2) 在过程100执行中,如果X101为ON则执行 过程101;如果X102为ON,则执行过程102。 3) 在过程101执行,如果X103为ON,则清除 过程101、执行过程200;如果X104为ON, 则清除过程102、执行过程200。 4) 当X200为ON时,清除过程200, 且步进梯形图程序结束。 程序示例 过程流程图 X103:ON X200:ON 结束 过程100 过程101 过程102 过程200 R153变为ON X104:ON R152 变为ON X102:ONX101:ON R151 变为ON R150变为ON X100:ON 程序 时序图 当X101变为ON时 执行清除 过程100 执行清除 执行清除 执行清除 过程101 过程200 过程100 过程200 过程102 过程101 2-79 1) 当X0为ON时,执行过程0。 2) 当X10为ON时,清除过程0、同时执行 过程10和过程20(并行分支控制)。 3) 当X11为ON时,清除过程10、执行 过程11。 4) 当X30为ON时,清除过程11和过程20, 激活过程30(合并分支控制)。 ·利用清除指令清除过程20 ·清除过程11并且执行过程30 5) 当X31为ON时,清除过程30,再次执行 最初的过程0。 程序示例 过程流程图 ③ 过程的并行分支控制 本程序同时触发多个过程. 在每个分支过程结束其任务之后, 这些过程将在进入执行下一过程之前 重新合并. 编程时在某个过程中将多个NSTL指令用于一个触发器. 将各过程合并时, 在向下一过程传送条件时应包含一个表示其他过程状态的标志. 在合并这些过程并执行下一个过程时, 应同时将所有未被清除的过程清除. X11:ON X30:ON 过程0 过程10 过程20 过程30 R23 变为ON R22 变为ON R21 变为ON R20变为ON X0:ON 过程11 R24 变为ON X31:ON 程序 时序图过程0 过程10 过程20 过程11 过程30 执行清除 执行清除 执行清除 执行清除 执行清除 2-80 SCLR 块清除 概述 清除由n1和n2指定的多个过程 程序示例 0 1 4 8 9 12 15 18 21 . . 100 101 106 ST X 0 NSTL 0 SSTP 0 ST X 1 NSTL 1 NSTL 2 NSTL 3 SSTP 1 OT Y 10 . . ST X F SCLR K 1 K 3 STPE 地址 指令 梯形图程序 布尔形式 当输入XF变为ON时,正在执行的 过程1至3被清除。 示例说明 过程0 过程1 过程2 过程3 结束 X0 X1 XF FP-e/FP2/FP2SH/FP10SH 适用机型 2-81 描述 当执行SCLR指令时,从过程n1至过程n2的全部过程被清除。 编程时的注意事项 将n1值设定为大于或等于n2值(n1≥n2) 在常规梯形图程序和正在运行的过程中,都可以执行SCLR指令。 2-82 CALL 子程序调用 概述 CALL:执行指定的子程序。 SUB: 表示子程序的开始。 RET: 表示子程序的结束。 程序示例 10 11.. 20 21 . . 30 ST X 0 CALL 1 .. ED SUB 1 . . RET 地址 指令 梯形图程序 布尔形式 描述 当执行条件(触发器)为ON时,执行CALL指令,并且从SUB指令处开始执行指定编号的子程序。 当子程序执行到RET指令时,程序返回到CALL指令之后的主程序并且继续执行主程序。 执行CALLn时,程序按照(1)(2)(3)的顺序执行,如上所示。 (*)对于FP2、FP2SH、FP10SH,当CALL指令中的编号“n”使用索引寄存器变址时,程序步数不同。 对于FP2、FP2SH和FP10SH,可以利用索引寄存器变址指定CALL的编号。 SUB RET 子程序进入 子程序返回 子程序编号 子程序 主程序 主程序 子程序 FP-e/FP0/FP∑/FP1/FP-M/FP2/FP2SH/FP3/FP10SH 适用机型 2-83 标志位状态 子程序语法 各机型可使用的子程序点数如下表所示。 编程时的注意事项 ·错误标志(R9007):当进行第五层嵌套并对第五层嵌套的子程序执行CALL指令时,变为ON并且保持。 ·错误标志(R9008):当进行第五层嵌套并对第五层嵌套的子程序执行CALL指令时,瞬间变为ON。 子程序n是由SUBn指令到RET指令之间的程序。始终应该把地址(子程序)放在ED指令之后。 编程时可以将CALL指令放在主程序、中断程序区或者子程序区中。 在一个程序中可以指定两个或两个以上程序号相同的CALL指令。 子程序可以进行嵌套, 多5层。 型号 FP-C/FP2/FP2SH/FP3/FP10SH 点数 100个子程序(SUB0~SUB99) FP-M C16 FP1 C14,C16 FP-M C20,C32 FP1 C24,C40,C56,C72 FP0 8个子程序(SUB0~SUB7) 16个子程序(SUB0~SUB15) 16个子程序(SUB0~SUB15) 在中断程序中,不能使用子程序。 (第二步) (第三步) (第四步) (第五步) 子程序内调用 5层嵌套 子程序 2-84 对于FP-C/FP2/FP2SH/FP3/FP10SH,子程序可以使用多个入口而只使用单个出口。 在子程序中,不能使用中断程序。 对于FP-M/FP0/FP1/FP-e,不能在一个子程序内编写另一个子程序。 子程序 子程序 子程序 执行“调用11”时,执行(1)至(4)。 执行“调用13”时,执行(3)至(4)。 在子程序中使用以下指令时必须注意,因为这些指令(例如微分指令)在检测到执行条件(触发器)的上升 沿时被执行。有关详细内容,请参阅相关章节。 — DF指令 — CT指令的计数输入 — F118(UDC)指令的计数输入 — SR指令的移位输入 — F119(LRSR)指令的移位输入 — NSTP指令 — 微分执行型高级指令(这些指令由P和指令编号指定) 调用13 调用11 2-85 注释 当CALL指令执行条件(触发器)为OFF时 若CALL指令的执行条件(触发器)为OFF状态时,不执行子程序。(与主控指令或步进梯形图程序相 同)。当CALL指令的执行条件(触发器)为OFF状态时,子程序中的指令的动作如下 FP2SH和FP10SH有一个称为“FCAL”的指令,当执行指令变为OFF时, FCAL指令会关闭在子程序中正在被使用的所有指令。 指令 OT KP SET RST TM CT SR DF和DF/ 其他指令 操作状态 保持状态 保持状态 保持状态 保持状态 不执行任何操作。如果不能在每个扫描周期执行 一次定时器指令,则不能保证准确的定时。 保持经过值 保持经过值 与在MC和MCE指令之间使用微分指令时的动作相同。 请参考MC和MCE指令 不执行 2-86 FCAL 输出OFF型子程序调用 概述 执行指定的子程序。当返回到主程序时,子程序中所有的输出将被置为OFF。 程序示例 10 11 . . 20 21 23 24 . . 30 ST X 0 FCAL 1 . . ED SUB 1 ST X 20 OT Y 10 . . RET 地址 指令 梯形图程序 布尔形式 运行和语法与一般的子程序调用指令基本相同。但是,下列几点有所差别。 如果FCAL指令的触发器为OFF,则不执行子程序。当FCAL指令的触发器处于OFF状态时,子程序中的指 令的运行状态如下。 描述 子程序编号 指令 OT KP SET RST TM CT SR DF和DF/ 其他指令 操作状态 全部OFF(与通常的子程序不同) 保持状态 保持状态 保持状态 复位(不同于通常的子程序调用指令) 保持触发器变为OFF之前时刻的状态 保持触发器变为OFF之前时刻的状态 与MC指令的触发器为OFF时的操作相同.请参阅MC和MEC指令的说明 不执行 (*)与MC指令的执行状态(触发器)变为OFF时的运行方式相同。请参考MC和MCE指令说明。 (*)对于FP2SH和FP10SH,FCAL指令中的数字“n”使用索引寄存器变址时,步数不同。 FP2SH/FP10SH 适用机型 2-87 编程时的注意事项 与CALL指令相同,FCAL指令 多可以使用五层嵌套。但是,根据嵌套层次的不同,某些MC的编号 不能使用。如下表所示。 由其他子程序调用 第2层 第3层 第4层 第5层 MC255 MC255至254 MC255至253 MC255至252 MC255至251 2-88 INT 中断程序 概述 INT: 表示中断程序的起点。 IRET: 表示中断程序的结束。 程序示例 20 21 . . 26 ED INT 0 . . IRET 地址 指令 梯形图程序 布尔形式 IRET 中断程序返回 描述 当产生中断输入时,开始执行由INT指令起始的指定编号的中断程序。 当中断程序到达IRET指令时,程序返回中断发生时的地址,恢复运行主程序。 中断程序编号 主程序 中断程序 中断 当中断发生时,按如上所示的(1)(2)(3)顺序执行程序。 在缺省设置下,所有的中断程序无效并且不被执行。应当使用ICTL指令设置允许执行中断程序。请 参阅ICTL指令的说明。 FP-e/FP0/FP∑/FP1*/FP-M 适用机型 * FP1-C14/C16不支持 2-89 在输入中断程序之前 中断程序n是在INTn指令与IRET指令之间的程序。中断程序必须全部放置在ED指令之后。 中断程序的编号取决于中断类型。 中断程序的语法 ·若某一触点被设为高速计数器/脉冲捕捉输入,则该触点不能作为中断输入(触发器)使用。 ·对于高速计数器-启动中断和定时中断,不必指定输入(触发器)触点。 注释 (1)指定被作为中断输入(触发器)的触点。 选择作为中断输入(触发器)使用的触点,并且在系统寄存器403中进行定义。 在RUN模式下改写时的注意事项(FP0/FPΣ/FP-e) 若在RUN模式下改写程序,则所有中断程序将被禁止执行,并且只有在RUN模式下完成改写之后, 才重新允许执行。有关详细内容,请参阅ICTL指令的说明。 (2)允许执行中断程序。 缺省值的设置是禁止中断程序。用ICTL指令允许中断程序的执行。参阅ICTL指令的说明。 FP1/FP-MFP0/FPΣ/FP-e 定时中断INT24 --X7INT7 --X6INT6 --X5INT5 -CH3X4INT4 -CH2X3INT3 --X2INT2 -CH1X1INT1 CH0CH0X0INT0 高速计数器设置 中断输入中断程序编号 对于FP0/FP-e, INT5~INT7(输入X5~X7)不能使用. 2-90 当正在执行另一个中断程序时,只有在当前正在执行的中断程序结束之后才会产生中断。 如果中断被禁止,则只有在使用ICTL指令使中断有效的时刻才会产生中断。 中断程序的执行 主程序 中断有三种类型。 (1)输入(触发器)触点产生的中断(INT0至INT5) 在由系统寄存器403指定的输入信号(触发器)出现上升沿(ON)或下降沿(OFF)时产生中断。 (2)高速计数器-启动中断(INT0、INT1、INT3、INT4) 在执行指令F166或指令F167时,当高速计数器经过值等于设定目标值时,产生中断。 请参阅F166指令和F167指令的说明。 (3)定时中断(INT24) 以固定的时间间隔产生中断。用ICTL指令设定时间间隔。 在10ms至30s的范围内,以10ms为单位进行设置(ICTL S1=H2) 在0.5ms至1.5s的范围内,以0.5ms为单位进行设置(ICTL S1=H3) 当产生中断时,执行带有对应编号的中断程序。 中断程序 中断输入 执行 执行 执行 主程序 中断程序 中断输入 执行 执行 允许 主程序 中断程序1 中断输入 中断程序2 执行 执行 执行 2-91 在子程序中不能使用中断程序。 在中断程序中不能使用子程序。 对各类型中断进行编程时的注意事项 如果缺少INT指令或IRET指令(不匹配),则会产生语法错误。 当中断产生时,对应于中断输入触点的运算存储器尚未进行I/0刷新。因此,应将中断输入触点以外 的触点(如常闭触点继电器R9010)作为中断程序中的执行条件使用。 使用常闭继电器R9010 或其他触点代替X5 子程序 子程序 在中断程序中不能包含其他中断程序。 2-92 同时出现一个以上中断的控制 当同时出现一个以上的中断时,首先执行编号较小的中断程序。其他程序被置于等待执行状态。当 第一个中断程序结束后,将按编号顺序由小到大执行其他程序。 示例: 主程序 中断程序1 中断程序2 中断程序3 中断输入1 中断输入2 中断输入3 当正在执行一个中断程序时,如果同时出现一个以上的中断,则在当前的中断程序执行结束后, 按编号顺序由小到大执行其他程序。 示例: 在上面示例中,在INT3程序的执行过程中,INT2输入先于INT1出现。 但是当INT3程序结束之后,先执行INT1程序,然后再执行INT2程序。 主程序 中断程序1 中断程序2 中断程序3 中断输入1 中断输入2 中断输入3 中断程序4 中断输入4 2-93 中断程序等待执行状态和清除 若置于等待执行状态,则在中断出现与实际执行中断程序之间存在一个时间差。如果因此而不想 执行处于等待状态的中断程序,则可使用ICTL指令将其清除。被清除的中断程序将不被执行。 示例: 当多个中断程序同时出现、或在一个中断程序的执行过程中出现新的中断程序时,优先级较低的中 断程序将处于等待执行状态。随后,当其他中断程序完成后,再按优先级顺序来执行这些程序。 示例: 主程序 中断程序1 中断程序2 中断输入1 中断输入2 主程序 中断程序1 中断程序2 中断输入1 中断输入2 等待执行状态 ICTL(中断2清除)执行 清除 当使用ICTL指令禁止中断程序的执行时,所出现的中断仍然处于等待执行状态。当使用ICTL指令 允许执行中断时,处于等待状态的中断程序将被执行。处于等待执行状态的程序可使用ICTL指令 进行清除。 2-94 INT 中断程序 概述 INT: 表示中断程序的起点。 IRET: 表示中断程序的结束。 程序示例 20 21 . . 26 ED INT 0 . . IRET 地址 指令 梯形图程序 布尔形式 IRET 中断程序返回 描述 当产生中断输入时,开始执行由INT指令起始的指定编号的中断程序。 当中断程序到达IRET指令时,程序返回中断发生时的地址,恢复运行主程序。 中断程序编号 主程序 中断程序 中断 当中断发生时,按如上所示的(1)(2)(3)顺序执行程序。 在缺省设置下,所有的中断程序无效并且不被执行。应当使用ICTL指令设置允许执行中断程序。请参阅 ICTL指令的说明。 中断程序的语法 中断程序n(n:0到24)是位于INTn指令与IRET指令之间的程序。中断程序必须全部放在ED指令之后。 多可以编写25个中断程序。 中断程序的编号由中断的类型决定。 INT0至INT15:由中断单元产生的中断。 INT16至INT23:由能发生中断的智能单元所产生的中断。 INT24:定时中断。 FP-C不带中断板卡(中断单元).中断板卡是一种发生中断的智能板(智能单元),所以不能使用从INT0至INT23的中断程序. FP2/FP2SH/FP3/FP10SH 适用机型 2-95 当正在执行另一个中断程序时,只有在当前正在执行的中断程序结束之后才会产生中断。 如果中断被禁止,则只有在使用ICTL指令使中断有效的时刻才会产生中断。 中断程序的执行 主程序 有三种类型的中断: (1)由中断单元产生的中断(对应于INT0至INT15) 对应于中断单元输入信号的上升沿或下降沿产生的中断(上升沿或下降沿在中断单元中设定)。 (2)由能产生中断的智能单元产生的中断(对应于INT16至INT23) 是由具有中断功能的智能单元根据运行状态产生的中断。 (3)定时(INT24) 中断以固定的时间间隔出现。用ICTL指令设定时间间隔。 当中断出现时,执行带有对应编号的中断程序。 中断程序 中断输入 执行 执行 执行 主程序 中断程序 中断输入 执行 执行 使能 主程序 中断程序1 中断输入 中断程序2 执行 执行 执行 2-96 在子程序中不能使用中断程序。 在中断程序中不能使用子程序。 对各类型中断进行编程时的注意事项 若缺少INT指令或IRET指令(不匹配),则会产生语法错误。 当中断产生时,对应于中断输入触点的运算存储器尚未进行I/0刷新。因此,应将中断输入触点以外 的触点(如常闭触点继电器R9010)作为中断程序中的执行条件使用。 使用常闭继电器R9010 或其他触点代替X5 子程序 子程序 允许中断程序使用多个入口和一个出口。 当产生中断程序11的中断时, 执行(1)至(3)。 当产生中断程序13的中断时, 执行(3)。 示例: 中断11 中断13 2-97 同时出现一个以上中断的控制 当同时出现一个以上的中断时,首先执行编号较小的中断程序。其他程序被置于等待执行状态。 当第一个中断程序结束后,将按编号顺序由小到大执行其他程序。 示例: 主程序 中断程序1 中断程序2 中断程序3 中断输入1 中断输入2 中断输入3 当正在执行一个中断程序时出现一个以上的中断,那么在当前正被执行的程序结束后,将以编 号由小到大的顺序执行其他程序。 示例: 在上面示例中,在INT3程序的执行过程中,INT2输入先于INT1出现。但是当INT3程序结束之后, 先执行INT1程序,然后再执行INT2程序。 主程序 中断程序1 中断程序2 中断程序3 中断输入1 中断输入2 中断输入3 中断程序4 中断输入4 2-98 中断程序等待执行状态和清除 若置于等待执行状态,则在中断出现与实际执行中断程序之间存在一个时间差。如果因此而不想 执行处于等待状态的中断程序,则可使用ICTL指令将其清除。被清除的中断程序将不被执行。 示例: 当多个中断程序同时出现、或在一个中断程序的执行过程中出现新的中断程序时,优先级较低的中 断程序将处于等待执行状态。随后,当其他中断程序完成后,再按优先级顺序来执行这些程序。 示例: 主程序 中断程序1 中断程序2 中断输入1 中断输入2 主程序 中断程序1 中断程序2 中断输入1 中断输入2 等待执行状态 ICTL(中断2清除)执行 清除 当使用ICTL指令禁止中断程序的执行时,所出现的中断仍然处于等待执行状态。当使用ICTL指令 允许执行中断时,处于等待状态的中断程序将被执行。处于等待执行状态的程序可使用ICTL指令 进行清除。 2-99 ICTL 中断控制 概述 进行中断的禁止、允许和清除控制。 程序示例 0 1 2 ST X 10 DF ICTL H 0 H 1 地址 指令梯形图程序 布尔形式 操作数 A: 可以使用 N/A:不可以使用描述 当执行ICTL指令时,根据S1和S2中的设置来设定中断程序的禁止/允许和清除中断。 应该使用DF指令,使ICTL指令只在执行条件(触发器)的上升沿被执行一次。 两个或两个以上的ICTL指令可以有相同的执行条件(触发器)。 S1 S2 设定中断控制的16位常数或16位数据区 设定中断触发条件的16位常数或16位数据区 注意 在执行中断程序之前,必须利用ICTL指令允许执行中断程序。 AAAAAAAAAAAAAAS2 AAAAAAAAAAAAAAS1 HKIYIXFLLDDTEVSVWLWRWYWX 索引 修正值 常数索引寄存器寄存器定时器/计数器继电器 操作数 FP-e/FP0/FP∑/FP1/FP-M 适用机型 2-100 输入示例 R9013(初始脉冲继电器)仅在开始运行后的第一个扫描周期内为ON。 示例1:设置定时中断,从运行开始每10ms执行中断程序。 (RUN中改写程序后,再次允许中断) 示例2:当X0出现上升沿时,允许执行INT0至INT3。 每10ms执行一次INT24 X0:ON时, 允许INT0~INT3 在INT0程序执行结束以后 清除INT0以外的中断 示例3:在INT0程序执行结束以后清除INT0以外的中断。 运行中改写程序时的注意事项(FP0/FPΣ/FP-e) 若在RUN模式下当正在使用中断功能时改写程序,则中断程序将被禁止执行. ICTL指令应被再次 用于允许执行中断程序. 示例1:设置定时中断,从运行开始每10ms执行中断程序。 每10ms执行一次INT24 2-101 指定控制数据 设S1=H0,指定禁止或允许INT0至INT7。 设S1=H100,清除中断INT0至INT7。 设S1=H2,设定INT24的时间间隔(以10ms为单位)。 设S1=H3,设定INT24的时间间隔(以0.5ms为单位)。 S1:指定控制功能和中断类型 选择中断类型 H00: 中断0~中断7 H02: 中断24(10ms单位) H03: 中断24(0.5ms单位) 选择控制功能 H00: 中断操作允许/禁止控制 H01: 中断触发器复位控制 编程时的注意事项 对于FP0/FP-e, 不能指定INT5~INT7. 对于FP1/FP-M, 不能以0.5ms为单位指定定时中断的时间间隔 S2:指定中断的控制 (1)禁止或允许执行中断程序(当S1=H0或S1=H1时) 在需要控制的中断程序的编号的对应位中设置控制数据。 将需要允许的中断程序的编号的对应位设置为“1”(允许中断)。 将需要禁止的中断程序的编号的对应位设置为“0”(禁止中断)。 示例: 设置如下时,允许中断INT1和INT2,禁止中断INT0和INT3~INT7. 2-102 (2)清除中断程序(当S1=H100或S1=H101时) 在需要控制的中断程序的编号的对应位中设置控制数据。 将需要清除的中断程序的编号的对应位设置为“0”(禁止中断)。 将不需要清除的中断程序的编号的对应位设置为“1”(允许中断)。 (3)指定定时中断(当S1=H2时) 以十进制设置。时间间隔= S2×10(ms) 示例: 设置如下时,清除中断INT0~INT2,不清除中断INT3~INT7. 时间间隔设置: K1~K3000(10ms~30s) 禁止中断INT24: K0 (4)指定定时中断(当S1=H3时) 以十进制设置。时间间隔= S2×0.5(ms) 时间间隔设置: K1~K3000(0.5ms~1.5s) 禁止中断INT24: K0 K0~K3000 K0~K3000 2-103 [S1]:H0000 指定禁止或允许执行对应于外部输入或到达目标值时产生的中断程序。 [S2]:H0021 允许INT0和INT5(将bit0和5置为“1”),禁止全部其他中断。 允许中断程序执行的示例 示例: 设置为”1”的数位所对应的外部中断被允许. 输入触点 执行ICTL指令后,如果出现中断程序INT0和INT5所对应的中断输入, 则执行INT0或INT5。 主程序 中断0 中断8 中断0输入 中断8输入 条件 执行 ICTL指令 执行 执行 执行 禁止 允许 2-104 [S1]:H100 清除对应于外部输入或到达目标值时产生的中断。 [S2]:HFE 清除中断INT0(将bit0置为“0”),不清除全部其他中断。 设定值与中断输入触点之间的关系,请参阅前页. 当中断程序被禁止时,即使发生INT0中断输入,也可以使用ICTL指令清除INT0中断。 清除中断程序的示例 示例: 主程序 中断0 中断1 中断0输入 中断1输入 条件 ICTL指令 执行 执行 执行 清除 允许禁止 由于INT0被清除,INT0程序即使在被允许后也不被执行。 因为INT1未被清除,所以在允许执行之后INT1程序将被执行。 2-105 设置定时中断的示例 示例: [S1]:H0002 指定定时中断(单位:10ms) [S2]:K1500 指定定时中断的时间间隔,对于K1500,时间间隔为K1500×10ms=15000ms(15s)。 在执行ICTL指令之后,每隔15秒产生一次定时中断。此时,将执行INT24中断程序。 主程序 中断24 执行 执行 执行 ICTL 需要停止定时中断程序(INT24)时,请执行下列程序。 2-106 ICTL 中断控制 概述 进行中断的禁止、允许和清除控制。 程序示例 40 41 42 ST X 10 DF ICTL H 0 H 1 地址 指令 梯形图程序 布尔形式 操作数 A: 可以使用 N/A:不可使用 描述 当执行ICTL指令时,根据S1和S2中的设置来设定中断程序的禁止/允许和清除中断。 应该使用DF指令,使ICTL指令只在执行条件(触发器)的上升沿被执行一次。 两个或两个以上的ICTL指令可以有相同的执行条件(触发器)。 S1 S2 设定中断控制的16位常数或16位数据区 设定中断触发条件的16位常数或16位数据区 注意 在执行中断程序之前,必须利用ICTL指令允许执行中断程序。 (*1)对于FP2、FP2SH和FP10SH,为I0至IC。 (*2)对于FP2、FP2SH和FP10SH,为ID。 AAAAAAAAAAAAAAS2 AAAAAAAAAAAAAAS1 HK IY (*2) IX (*1) FLLDDTEVSVWLWRWYWX 索引 修正值 常数索引寄存器寄存器定时器/计数器继电器 操作数 FP2/FP2SH/FP3/FP10SH 适用机型 2-107 (*)高速计数单元、脉冲输出单元和其他能够产生的智能模块。 输入示例 R9013(初始脉冲继电器)仅在开始运行后的第一个扫描周期内为ON。 示例2:当X0出现上升沿时,允许执行INT0至INT3。 X0:ON时, 允许INT0~INT3 在INT0程序执行结束以后 清除INT0以外的中断 示例3:在INT0程序执行结束以后清除INT0以外的中断。 示例1:设置定时中断,从运行开始每10ms执行中断程序。 每10ms执行一次INT24 指定控制数据 S1:指定控制功能和中断类型 选择控制功能 H00:中断操作允许/禁止 H01:中断清除 选择中断类型 H00:中断0~中断15 H01:中断16~中断23(*) H02:中断24(10ms) H04:中断24(0.5ms:只 FP2/FP2SH/FP10SH) 用于指定INT0至INT15的允许或禁止时,[S1]=H0; 用于指定清除INT0至INT15的中断时,[S1]=H100; 用于指定INT16至INT23的允许或禁止时,[S1]=H1; 用于指定清除INT16至INT23的中断时,[S1]=H101; 用于设置INT24的时间间隔时,[S1]=H2; 用于设置INT24的时间间隔时,[S1]=H3(仅对FP2、FP2SH、FP10SH)。 2-108 (2)清除中断程序(当S1=H100或S1=H101时) 在需要控制的中断程序的编号的对应位中设置控制数据。 将需要清除的中断程序的编号的对应位设置为“0”(禁止中断)。 将不需要清除的中断程序的编号的对应位设置为“1”(允许中断)。 S2:指定中断的控制 (1)禁止或允许执行中断程序(当S1=H0或S1=H1时) 在需要控制的中断程序的编号的对应位中设置控制数据。 将需要允许的中断程序的编号的对应位设置为“1”(允许中断)。 将需要禁止的中断程序的编号的对应位设置为“0”(禁止中断)。 (3)指定定时中断(当S1=H2时) 以十进制设置。时间间隔= S2×10(ms) 时间间隔设置:K1~K3000(10ms~30s) 禁止INT24:K0 K0~K3000 (4)指定定时中断(当S1=H3时) (仅FP2/FP2SH/FP10SH) 以十进制设置。时间间隔= S2×0.5(ms) 时间间隔设置:K1~K3000(0.5ms~1.5s) 禁止INT24:K0 K0~K3000 2-109 [S1]:H0000 指定禁止或允许执行对应于中断单元(INT0~INT15)的中断程序。 [S2]:H101 允许INT0和INT5(将bit0和8置为“1”),禁止全部其他中断。 允许中断程序执行的示例 示例: 设置为”1”的数位所对应的中断被允许. 中断单元 I/O分配是以中断单元安装在插槽0的情况为例. 允许INT0~INT15全部中断时, 设置S2=HFFFF. 2-110 执行ICTL指令后,如果出现中断程序INT0和INT8所对应的中断输入,则执行INT0和INT8。 主程序 中断0 中断8 中断0输入 中断8输入 条件 执行 ICTL指令 执行 执行 执行 禁止 允许 2-111 [S1]:H100 清除对应于中断单元产生的中断(INT0~INT15)。 [S2]:HFFFE 清除中断INT0(将bit0置为“0”),不清除全部其他中断。 设定值与中断输入触点之间的关系,请参阅前页. 当中断程序被禁止时,即使发生INT0中断输入,也可以使用ICTL指令清除INT0中断。 清除中断程序的示例 示例: 主程序 中断0 中断8 中断0输入 中断8输入 条件 ICTL指令 执行 执行 执行 清除 允许禁止 由于INT0被清除,INT0程序即使在被允许后也不被执行。 因为INT1未被清除,所以在允许执行之后INT1程序将被执行。 2-112 设置定时中断的示例 示例: [S1]:H0002 指定定时中断(单位:10ms) [S2]:K1500 指定定时中断的时间间隔,对于K1500,时间间隔为K1500×10ms=15000ms(15s)。 在执行ICTL指令之后,每隔15秒产生一次定时中断。此时,将执行INT24中断程序。 主程序 中断24 执行 执行 执行 ICTL 需要停止定时中断程序(INT24)时,请执行下列程序。 2-113 SYS1 通信条件设置 概述 根据指定的字符串常数,改变COM端口或编程口的通信条件. 程序示例 10 11 12 25 ST R 0 DF SYS1 M COM1,B8POS1 SYS1 M COM1,19200 地址 指令梯形图程序 布尔形式 操作数 A: 可以使用 N/A:不可以使用 描述 对于No.1关键字指定的通信端口,将其通信条件变更为No.2关键字指定的内容. 可以改变的内容如下: 1) 通信格式 2) 波特率 3) 站号 4) 起始符和结束符 5) RS(Request to Send 发送请求)控制 S 字符串常数”M” 操作数 S 继电器 WX WY WR WL 定时器/计数器 SV EV 寄存器 DT LD FL 索引寄存器 常数 K N/A N/A N/A N/A N/A N/A N/A N/A N/A N/A IX N/A H N/A M A 索引 修正值 N/A 关键字 关键字 示例说明 当触发器R0变为ON时,COM.1端口的数据传输格式和速率设置如下: 数据位: 8bit 校验 : 偶校验 停止位: 1bit 波特率: 19200bps 触发器 FP∑ 适用机型 2-114 关键字的设置 1) 通信格式(TOOL编程口、COM.1和COM.2端口共用) 2) 波特率(TOOL编程口、COM.1和COM.2端口共用) 3) 站号(TOOL编程口、COM.1和COM.2端口共用) 4) 起始符和结束符号(COM.1和COM.2端口共用) SYS1, M TOOL, B7 PN S1 适用端口 TOOL: 编程口 COM1: COM.1端口 COM2: COM.2端口 数据长度 B7: 7bits B8: 8bits 奇偶校验 PN:无校验(None) PO:奇校验(Odd) PE:偶校验(Even) 停止位 S1:1bit S2:2bits SYS1, M TOOL, 19200 适用端口 TOOL: 编程口 COM1: COM.1端口 COM2: COM.2端口 波特率 2400:2400bps 4800:4800bps 9600:9600bps 19200:19200bps 38400:38400bps 57600:57600bps 115200:115200bps SYS1, M TOOL, No1 适用端口 TOOL: 编程口 COM1: COM.1端口 COM2: COM.2端口 站号 No1~No99: No.1 ~ No.99 SYS1, M COM1, STX 适用端口 COM1: COM.1端口 COM2: COM.2端口 起始符 STX:STX NOSTX:无STX 结束符 ETX:ETX CR:CR CRLF:CR+LF NOTERM:无 2-115 5) RS(Request to Send发送请求)控制(只用于COM.1) SYS1, M COM1, RTS1 适用端口 COM1: COM.1端口 用于1通道型RS232C通信插件的RS控制 RTS1: 禁止通信(设置RS端为”ON”) RST0: 允许通信(设置RS端为”OFF”) 标志状态 · 错误标志(R9007) 当以下情况时变为ON并且保持 · 错误标志(R9008) 当以下情况时瞬间变为ON - 指定了关键字以外的字符 - No.1关键字与No.2关键字之间没有使用逗号 - 指定关键字时使用了小写字母(指定站号时的No除外) - 设置COM1或COM2时没有安装通信插件 - 当设置COM1或COM2并改变站号时, 站号设置用旋转开关处于0以外的位置 - 利用指令进行站号指定时使用了1~99以外的数值 - 在COM1端口作为PC-link模式使用的情况下, 改变COM1的传输速率、格式等 - 在编程口、COM1端口或COM2端口被初始化为modem连接情况下, 改变该端口 的传输速率、格式等 - 在设置了起始符和结束符的情况下, 将通信模式改为通用通信以外的模式 - 在安装了1通道型RS232C之外的插件的情况下, 使用RS控制 - 在COM.1端口作为PC-link使用时, 指定的站号大于系统寄存器中设置的 大站号 编程时的注意事项 执行本指令时, 并不将改变的内容重新写入控制单元的系统ROM中. 因此, 当断开电源 并重新通电后, 这些内容将按系统寄存器中指定的数据进行重写. 建议在调用本指令时使用微分(DF)指令. 由于系统寄存器的设置被改变, 如果利用工具软件进行校验, 在某些情况下可以产生 校验错误. 区分No.1关键字与No.2关键字时, 应使用逗号”,”而非空格. 2-116 SYS1 密码设置 概述 根据指定的字符串常数,改变由控制器指定的密码. 程序示例 10 11 12 ST R 0 DF SYS1 M PASS, ABCD 地址 指令梯形图程序 布尔形式 操作数 A: 可以使用 N/A:不可使用 描述 根据控制器的指定,将密码变更为No.2关键字指定的内容. S 字符串常数”M” 操作数 S 继电器 WX WY WR WL 定时器/计数器 SV EV 寄存器 DT LD FL 索引寄存器 常数 K N/A N/A N/A N/A N/A N/A N/A N/A N/A N/A IX N/A H N/A M A 索引 修正值 N/A 关键字 关键字 示例说明 当触发器R0变为ON时,密码变更为”ABCD”. 触发器 SYS1, M PASS, ABCD PASS: 固定 密码内容(例:密码设置为”ABCD”) 关键字设置 FP∑ 适用机型 2-117 标志状态 · 错误标志(R9007) 当以下情况时变为ON并且保持 · 错误标志(R9008) 当以下情况时瞬间变为ON - 指定了关键字以外的字符 - No.1关键字与No.2关键字之间没有使用逗号 - 指定关键字时使用了小写字母 - 设置密码时, 指定的字符串中使用了0~9和A~F以外的字符, 或数据常数超出4位. 编程时的注意事项 执行本指令时, 向内部F-ROM写入数据需要约100ms的时间. 如果指定的密码与原有的密码相同, 则密码不写入F-ROM 建议在调用本指令时使用微分(DF)指令. 区分No.1关键字与No.2关键字时, 应使用逗号”,”而非空格. 2-118 SYS1 中断设置 概述 根据指定的字符串常数,设置中断输入. 程序示例 10 11 12 ST R 0 DF SYS1 M INT1,UP 地址 指令梯形图程序 布尔形式 操作数 A: 可以使用 N/A:不可使用 描述 将No.1关键字指定的输入设置为中断, 输入条件由No.2关键字的内容指定. S 字符串常数”M” 操作数 S 继电器 WX WY WR WL 定时器/计数器 SV EV 寄存器 DT LD FL 索引寄存器 常数 K N/A N/A N/A N/A N/A N/A N/A N/A N/A N/A IX N/A H N/A M A 索引 修正值 N/A 关键字 关键字 示例说明 当触发器R0变为ON时,输入X1被设置为上升沿有效的中断. 触发器 SYS1, M INT2, UP 中断输入 INT0:X0 INT1:X1 INT2:X2 INT3:X3 INT4:X4 INT5:X5 INT6:X6 INT7:X7 有效触发条件 UP:上升沿 DOWN:下降沿 BOTH:上升沿和下降沿 关键字设置 FP∑ 适用机型 2-119 标志状态 · 错误标志(R9007) 当以下情况时变为ON并且保持 · 错误标志(R9008) 当以下情况时瞬间变为ON - 指定了关键字以外的字符 - No.1关键字与No.2关键字之间没有使用逗号 - 指定关键字时使用了小写字母 编程时的注意事项 执行本指令时, 并不将改变的内容重新写入控制单元的系统ROM中. 因此, 当断开电源 并重新通电后, 这些内容将按系统寄存器中指定的数据进行重写. 建议在调用本指令时使用微分(DF)指令. 当指定UP或DOWN时, 系统寄存器中的设置内容会同时相应改变, 因此如果利用工具 软件进行程序校验, 可能产生校验错误. 当指定BOTH时, 不改变系统寄存器的内容. 区分No.1关键字与No.2关键字时, 应使用逗号”,”而非空格. 2-120 SYS1 PC-link时间设置 概述 根据指定的字符串常数, 设定使用PC-link时的系统设置时间. 程序示例 10 11 12 25 ST R 9014 DF SYS1 M PCLK1T0,100 SYS1 M PCLK2T1,100 地址 指令梯形图程序 布尔形式 操作数 A: 可以使用 N/A:不可使用 描述 将No.1关键字指定的条件, 设置为由No.2关键字指定的时间. 在某些站没有加入PC-link的情况下(*),如果传输周期被缩短,则链接进入等待时间被设置. (*) 某站没有加入PC-link:该站没有连接到No.1站到 大站之间, 或该站没有接通电源. 如果某一站断电和另一站的传输确认继电器变为OFF之间的时间变短, 则传输确认继电器的错误检测时间 被设置. S 字符串常数”M” 操作数 S 继电器 WX WY WR WL 定时器/计数器 SV EV 寄存器 DT LD FL 索引寄存器 常数 K N/A N/A N/A N/A N/A N/A N/A N/A N/A N/A IX N/A H N/A M A 索引 修正值 N/A 关键字 关键字 示例说明 在使用PC-link的情况下,当触发器R9014变为ON时,链接进入等待时间和用于传输确认继电器的错误 检测时间被设置如下: 链接进入时间:100ms 传输确认继电器的错误检测时间:100ms FP∑ 适用机型 2-121 标志状态 · 错误标志(R9007) 当以下情况时变为ON并且保持 · 错误标志(R9008) 当以下情况时瞬间变为ON - 指定了关键字以外的字符 - No.1关键字与No.2关键字之间没有使用逗号 - 指定关键字时使用了小写字母 - 指定的数值超出允许设置范围 编程时的注意事项 程序应该放置在所有PLC被链接之前, 并且应指定相同的数值. 本指令应以特殊内部继电器R9014的微分作为执行条件. 系统寄存器中的设置内容不受本指令的影响. 区分No.1关键字与No.2关键字时, 应使用逗号”,”而非空格. SYS1, M PCLK1T1, 100 PCLK1T1:固定 指定范围:100~6400(100ms~6400ms) 2) 传输确认继电器的错误检测时间 设置链接进入等待时间时的注意事项 设置的数值应至少是在所有PLC被链接情况下的 大扫描周期的2倍. 如果设置的时间过短, 则某些PLC即使在接通电源的情况下也不能加入链接系统. 如果某一站没有加入链接系统, 则即使链接传输周期较大, 也不能改变设置内容. (缺省值为400ms) 设置传输确认继电器的错误检测时间时的注意事项 设置的数值应至少是在所有PLC被链接情况下的 大传输周期的2倍. 如果设置的时间过短, 有可能使传输确认继电器故障. 即使传输确认继电器检测时间较大, 也不能改变设置内容. (缺省值为6400ms) SYS1, M PCLK1T0, 100 PCLK1T0:固定 指定范围:10~400(10ms~400ms) 关键字设置 1) 链接进入等待时间 外部设备 (PC) 通用RS232C/RS485转换器 指令 应答 FPΣ FPΣ FPΣ 2-122 SYS1 RS485响应时间控制 概述 根据指定的字符串常数, 改变COM.端口或编程口的RS485的通信条件. 程序示例 10 11 12 ST R 0 DF SYS1 M COM1,WAIT2 地址 指令梯形图程序 布尔形式 操作数 A: 可以使用 N/A:不可使用 描述 将No.1关键字指定的端口的响应延迟时间,设置为由No.2关键字指定的时间. 本指令用于延迟PLC侧的、达到外部设备可以发送指令和可以接收到来自PLC应答的状态延迟时间. <用途示例> 使用一个通常的市售RS232C/RS485转换器用于个人计算机与FPΣ之间的通信时, 本指令用于在转换 器侧的允许信号切换完成后返回PLC的应答. S 字符串常数”M” 操作数 S 继电器 WX WY WR WL 定时器/计数器 SV EV 寄存器 DT LD FL 索引寄存器 常数 K N/A N/A N/A N/A N/A N/A N/A N/A N/A N/A IX N/A H N/A M A 索引 修正值 N/A 触发器 FP∑ 适用机型 关键字 关键字 2-123 标志状态 · 错误标志(R9007) 当以下情况时变为ON并且保持 · 错误标志(R9008) 当以下情况时瞬间变为ON - 指定了关键字以外的字符 - No.1关键字与No.2关键字之间没有使用逗号 - 指定关键字时使用了小写字母 - 在设置了COM1或COM2端口的情况下, 没有安装通信插件 编程时的注意事项 本指令只在PLC被设置为计算机链接模式或PC-link模式时有效. PLC被设置为 通用通信模式时, 本指令无效. 执行本指令不会改变系统寄存器中的设置内容. 建议在使用本指令时使用微分. 当断开PLC的电源时, 由本指令设置的数值将被清除.(设定值变为0.) 但如果在 执行本指令后将PLC模式切换到PROG.模式, 此设置将被保留. 如果在PC-link模式下使用普通市售的RS232C/RS485转换器, 则应将本指令编制 所有链接的PLC站中. 区分No.1关键字与No.2关键字时, 应使用逗号”,”而非空格. SYS1, M TOOL, WAITn 使用端口 TOOL:编程口 COM1:COM.1端口 COM2.COM.2端口 响应时间: WAIT0~WAIT999(n:0~999) 关键字设置 如果通信模式设置为计算机链接,则设置的时间等于扫描时间×n(n:0~999). 如果通信模式设置为PC-link,则设置的时间等于n微秒(n:0~999). 如果n=0,则由本指令所设置的延迟时间被设为”无”. 2-124 SYS2 修改系统寄存器(№40~№47) 概述 根据指定的数据, 改变系统寄存器中关于PC-link的设置. 程序示例 10 11 12 ST R 0 SYS2 DT 0 K 40 K 47 地址 指令梯形图程序 布尔形式 操作数 A: 可以使用 N/A:不可使用 描述 将[D1]~[D2]指定的系统寄存器中的内容改为从[S]指定的数据区开始的数值. S 16bit数据存放区起始地址 触发器 操作数 S 继电器 WX WY WR WL 定时器/计数器 SV EV 寄存器 DT LD FL 索引寄存器 常数 K N/A N/A N/A N/A N/A N/A A N/A N/A N/A I N/A H N/A M N/A 索引 修正值 N/A D1 N/A N/A N/A N/A N/A N/A N/A N/A N/A AN/A N/A N/A N/A D2 N/A N/A N/A N/A N/A N/A N/A N/A N/A AN/A N/A N/A N/A D1 指定系统寄存器的起始编号(K40~K47) D2 指定系统寄存器的结束编号(K40~K47) FP∑ 适用机型 2-125 标志状态 · 错误标志(R9007) 当以下情况时变为ON并且保持 · 错误标志(R9008) 当以下情况时瞬间变为ON - D1>D2 - 指定的数值超出各个寄存器的允许设置范围 编程时的注意事项 程序示例 系统寄存器40的设置值 系统寄存器41的设置值 系统寄存器42的设置值 系统寄存器43的设置值 系统寄存器44的设置值 系统寄存器45的设置值 系统寄存器46的设置值 系统寄存器47的设置值 将存储在DT0~DT7中的数值设置到系统寄存器40~47 执行本指令时, 并不将改变的内容重新写入控制单元的系统ROM中. 因此, 当断开电源 并重新通电后, 这些内容将按系统寄存器中指定的数据进行重写. “D1”和“D2”的指定范围是K40~K47, 并且应满足D1≤D2. 因为系统寄存器的内容被改变,所以进行程序核对时会产生错误 系统寄存器 1~16MEWNET-W0 PC-link 大站号47 -未使用46 0~127字链接数据寄存器传输区容量45 0~127链接数据寄存器传输开始编号44 0~64字链接继电器传输区容量43 0~63链接继电器传输开始编号42 0~128字使用链接数据寄存器范围41 0~64字使用链接继电器范围40 设定值及范围名称No. 2-126 ST> 字比较: 相等时初始加载 概述 将两个字数据(16bit)项进行比较作为运算条件。 根据比较的结果触点闭合或断开。 程序示例 0 5 6 11 ST= DT 0 K 50 OT Y 30 ST>= DT 0 K 60 OT Y 31 地址 指令梯形图程序 布尔形式 操作数 S1 S2 被比较的16位常数或存放常数的16位区 被比较的16位常数或存放常数的16位区 ST>= ST< ST<= ST= ST<> 字比较: 不等时初始加载 字比较: 大于时初始加载 字比较: 大于等于时初始加载 字比较: 小于时初始加载 字比较: 小于等于时初始加载 (*1) 不适用于FP0/FP1/FP-M/FP-e。 (*2) 不适用于FP0/FP1/FP-M/FPΣ/FP-e。 (*3) 对于FP2、FP2SH和FP10SH,为I0至IC。 (*4) 对于FP2、FP2SH和FP10SH,为ID。 A: 可以使用 N/A:不可使用 指令 S1 继电器 WX WY WR WL (*1) 定时器/计数器 SV EV 寄存器 DT LD (*1) FL (*2) 索引寄存器 常数 K H 索引 修正值 A A A A A A A A A A A IX (*3) IY (*4) S2 A A A A A A A A A A A A A A A A A FP-e/FP0/FP∑/FP1*/FP-M*/ FP2/FP2SH/FP3/FP10SH 适用机型 *) FP1-C14/C16和FP-M C16不支持 2-127 描述 根据比较条件,将由S1指定的字数据与由S2指定的字数据进行比较。 当比较结果为某一指定状态(=、<、>等)时,ST指令启动连接触点的逻辑运算。 比较运算的结果如下: 示例说明 分别将数据寄存器DT0的内容与K50和K60进行比较。若DT0=K50,则外部输出继电器Y30为ON;若 DT0≥K60,则外部输出继电器Y31为ON。 比较指令 S1S2 条件 ST= OFF ON OFF ST<> ON OFF ON ST> OFF OFF ON ST>= OFF ON ON ST< ON OFF OFF ST<= ON ON OFF 有关使用的注意事项 编程时,比较指令ST=、ST<>、ST>、ST>=、ST<和ST<=应从母线开始。 当与BCD或其他类型的数据混合使用时,如果最高位为1时则数据被视为负数,并且不能得到正确的比较结 果。在此情况下,在进行比较之前应使用F81(B1N)指令或其他类似指令将数据变为二进制数据。 标志位状态 ·错误标志(R9007):当使用索引寄存器变址指定的区域超出范围时变为ON并且并保持。 ·错误标志(R9008):当使用索引寄存器变址指定的区域超出范围时,瞬间变为ON。 <> 表示≠ >= 表示≥ <= 表示≤ 2-128 STD> 双字比较: 相等时初始加载 概述 将两个双字数据(32bit)项进行比较作为运算条件。 根据比较的结果触点闭合或断开。 程序示例 0 9 10 19 STD= DT 0 DT 100 OT Y 30 STD> DT 0 DT 100 OT Y 31 地址 指令梯形图程序 布尔形式 操作数 S1 S2 被比较的32位常数或存放32位常数的低16位区 被比较的32位常数或存放32位常数的低16位区 STD>= STD< STD<= STD= STD<> 双字比较: 不等时初始加载 双字比较: 大于时初始加载 双字比较: 大于等于时初始加载 双字比较: 小于时初始加载 双字比较: 小于等于时初始加载 (*1) 不适用于FP0/FP1/FP-M/FP-e。 (*2) 不适用于FP0/FP1/FP-M/FPΣ/FP-e。 (*3) 对于FP2、FP2SH和FP10SH,为I0至IC。 (*4) 对于FP2、FP2SH和FP10SH,为ID。 A: 可以使用 N/A:不可使用 指令 S1 继电器 WX WY WR WL (*1) 定时器/计数器 SV EV 寄存器 DT LD (*1) FL (*2) 索引寄存器 常数 K H 索引 修正值 A A A A A A A A A A A IX (*3) IY (*4) S2 A A A A A A A A A A A A N/A A N/A A A FP-e/FP0/FP∑/FP1*/FP-M*/ FP2/FP2SH/FP3/FP10SH 适用机型 *) FP1-C14/C16和FP-M C16不支持 2-129 描述 根据比较条件,比较由S1及S1+1指定的双字数据和由S2及S2+1指定的双字数据。 当比较结果为某一指定状态(=、<、>等)时,STD指令启动连接触点的逻辑运算。 比较运算的结果如下: 示例说明 将数据寄存器(DT1、DT0)与数据寄存器(DT101、DT100)的内容进行比较。若(DT1、DT0)= (DT101、DT100),则外部输出继电器Y30为ON,若(DT1、DT0)>(DT101、DT100),则外部输出继电 器Y31为ON。 比较指令 [S1+1,S1]<[S2+1,S2] [S1+1,S1]>[S2+1,S2] 条件 STD= OFF OFF STD<> ON ON STD> OFF ON STD>= OFF ON STD< ON OFF STD<= ON OFF 当处理32位数据时,低16位的数据(S1、S2)被指定后,高16位的数据(S1+1、S2+1)将自动强制确定。 标志位状态 ·错误标志(R9007):当使用索引寄存器变址指定的区域超出范围时变为ON并且并保持。 ·错误标志(R9008):当使用索引寄存器变址指定的区域超出范围时,瞬间变为ON。 当处理32位数据时,低16位的数据(S1、S2)被指定后, 高16位的数据(S1+1、S2+1)将自动强制确定。 有关使用的注意事项 编程时,比较指令STD=、STD<>、STD>、STD>=、STD<和STD<=应从母线开始。 当与BCD或其他类型的数据混合使用时,如果最高位为1时则数据被视为负数,并且不能得到正确的比较 结果。在此情况下,在进行比较之前应使用F83(DB1N)指令或其他类似指令将数据变为二进制数据。 <> 表示≠ >= 表示≥ <= 表示≤ [S1+1,S1]=[S2+1,S2] ON OFF OFF ON OFF ON 2-130 AN> 字比较:相等时逻辑与 概述 将两个字数据(16bit)项进行比较作为AND逻辑的运算条件。根据比较的 结果触点闭合或断开。与其他触点串联。 程序示例 0 1 6 ST X 0 AN>= DT 0 K 60 OT 30 地址 指令梯形图程序 布尔形式 操作数 S1 S2 被比较的16位常数或存放常数的16位区 被比较的16位常数或存放常数的16位区 AN>= AN< AN<= AN= AN<> 字比较:不等时逻辑与 字比较:大于时逻辑与 字比较:大于等于时逻辑与 字比较:小于时逻辑与 字比较:小于等于时逻辑与 (*1) 不适用于FP0/FP1/FP-M/FP-e。 (*2) 不适用于FP0/FP1/FP-M/FPΣ/FP-e。 (*3) 对于FP2、FP2SH和FP10SH,为I0至IC。 (*4) 对于FP2、FP2SH和FP10SH,为ID。 A: 可以使用 N/A:不可使用 指令 S1 继电器 WX WY WR WL (*1) 定时器/计数器 SV EV 寄存器 DT LD (*1) FL (*2) 索引寄存器 常数 K H 索引 修正值 A A A A A A A A A A A IX (*3) IY (*4) S2 A A A A A A A A A A A A A A A A A FP-e/FP0/FP∑/FP1*/FP-M*/ FP2/FP2SH/FP3/FP10SH 适用机型 *) FP1-C14/C16和FP-M C16不支持 2-131 ST> OFF OFF ON ST>= OFF ON ON ST< ON OFF OFF ST<= ON ON OFF 描述 根据比较条件,比较由S1指定的字数据和由S2指定的字数据。 当比较结果为某一指定状态(=、<、>等)时,AN指令作用于串联的触点。 比较运算的结果如下: 示例说明 当X0闭合时,将数据寄存器DT0的内容与常数K60进行比较。在X0为闭合的状态下,如果DT0≥K60,则外部输 出继电器Y30为ON。如果DT0<K60或者X0处于断开状态,则外部输出继电器Y30为OFF。 比较指令 S1S2 条件 ST= OFF ON OFF ST<> ON OFF ON 有关使用的注意事项 多个AND(逻辑与)比较指令AN=、AN<>、AN>、AN>=、AN<和AN<=可以连续使用。 若与BCD码或其他类型的数据混合使用,则当最高位为1时数值为负数,且不能得到正确的比较结果。在此 情况下,请在进行比较之前使用F81(BIN)指令或其他类似指令将数据转换为二进制数据。 标志位状态 ·错误标志(R9007):当使用索引寄存器变址指定的区域超出范围时变为ON并且并保持。 ·错误标志(R9008):当使用索引寄存器变址指定的区域超出范围时,瞬间变为ON。 <> 表示≠ >= 表示≥ <= 表示≤ 2-132 AND> 双字比较:相等时逻辑与 概述 将两个双字数据(32bit)项进行比较作为AND逻辑的运算条件。 根据比较的结果触点闭合或断开。与其他触点串联。 程序示例 0 1 10 ST X 0 AND>= DT 0 DT 100 OT Y 30 地址 指令梯形图程序 布尔形式 操作数 S1 S2 被比较的32位常数或存放32位常数的低16位区 被比较的32位常数或存放32位常数的低16位区 AND>= AND< AND<= AND= AND<> 双字比较:不等时逻辑与 双字比较:大于时逻辑与 双字比较:大于等于时逻辑与 双字比较:小于时逻辑与 双字比较:小于等于时逻辑与 A: 可以使用 N/A:不可使用 指令 S1 继电器 WX WY WR WL (*1) 定时器/计数器 SV EV 寄存器 DT LD (*1) FL (*2) 索引寄存器 常数 K H 索引 修正值 A A A A A A A A A A A IX (*3) IY (*4) S2 A A A A A A A A A A A A N/A A N/A A A FP-e/FP0/FP∑/FP1*/FP-M*/ FP2/FP2SH/FP3/FP10SH 适用机型 *) FP1-C14/C16和FP-M C16不支持 (*1) 不适用于FP0/FP1/FP-M/FP-e。 (*2) 不适用于FP0/FP1/FP-M/FPΣ/FP-e。 (*3) 对于FP2、FP2SH和FP10SH,为I0至IC。 (*4) 对于FP2、FP2SH和FP10SH,为ID。 2-133 描述 根据比较条件,比较由S1及S1+1指定的双字数据和由S2及S2+1指定的双字数据。 当比较结果为某一指定状态(=、<、>等)时,AN指令作用于串联的触点。 比较运算的结果如下: 示例说明 当X0闭合时,将数据寄存器(DT1,DT0)的内容与数据寄存器(DT101,DT100)的内容进行比较。当X0闭 合时,如果(DT1,DT0)≥(DT101,DT100),则外部输出继电器Y30为ON。若(DT1,DT0)< (DT101,DT100)或X0处于断开状态,则外部输出继电器Y30为OFF。 在处理32位的数据时,指定低16位区(S1、S2)后,将自动确定高16位区(S1+1、S2+1)。 标志位状态 ·错误标志(R9007):当使用索引寄存器变址指定的区域超出范围时变为ON并且并保持。 ·错误标志(R9008):当使用索引寄存器变址指定的区域超出范围时,瞬间变为ON。 当处理32位数据时,低16位的数据(S1、S2)被指定后, 高16位的数据(S1+1、S2+1)将自动强制确定。 有关使用的注意事项 多个AND(逻辑与)指令AND=、AND<>、AND>、AND>=和AND<=可以连续使用。 若与BCD码或其他类型的数据混合使用,则当最高位为1时数据为负值,并且不能得到正确的比较结果。 在此情况下,请在进行比较之前,使用F83(DBIN)指令或其他类似指令将数据转换为二进制数据。 比较指令 [S1+1,S1]<[S2+1,S2] [S1+1,S1]>[S2+1,S2] 条件 AND= OFF OFF AND<> ON ON AND> OFF ON AND>= OFF ON AND< ON OFF AND<= ON OFF [S1+1,S1]=[S2+1,S2] ON OFF OFF ON OFF ON <> 表示≠ >= 表示≥ <= 表示≤ 2-134 OR> 字比较:相等时逻辑或 概述 将两个字数据(16bit)项进行比较作为OR逻辑的运算条件。 根据比较的结果触点闭合或断开。与其他触点并联。 程序示例 0 1 6 ST X 0 OT Y 30 OR>= DT 0 K 60 地址 指令梯形图程序 布尔形式 操作数 S1 S2 被比较的16位常数或存放常数的16位区 被比较的16位常数或存放常数的16位区 OR>= OR< OR<= OR= OR<> 字比较:不等时逻辑或 字比较:大于时逻辑或 字比较:大于等于时逻辑或 字比较:小于时逻辑或 字比较:小于等于时逻辑或 (*1) 不适用于FP0/FP1/FP-M/FP-e。 (*2) 不适用于FP0/FP1/FP-M/FPΣ/FP-e。 (*3) 对于FP2、FP2SH和FP10SH,为I0至IC。 (*4) 对于FP2、FP2SH和FP10SH,为ID。 A: 可以使用 N/A:不可使用 指令 S1 继电器 WX WY WR WL (*1) 定时器/计数器 SV EV 寄存器 DT LD (*1) FL (*2) 索引寄存器 常数 K H 索引 修正值 A A A A A A A A A A A IX (*3) IY (*4) S2 A A A A A A A A A A A A A A A A A FP-e/FP0/FP∑/FP1*/FP-M*/ FP2/FP2SH/FP3/FP10SH 适用机型 *) FP1-C14/C16和FP-M C16不支持 2-135 描述 根据比较条件,将由S1指定的字数据与由S2指定的字数据进行比较。 当比较结果为某一指定状态(=、<、>等)时,OR指令作用于并联的触点。 比较运算的结果如下: 示例说明 当X0处于闭合状态或DT0≥K60时,Y30为ON。当DT0S2 条件 ST= OFF ON OFF ST<> ON OFF ON ST> OFF OFF ON ST>= OFF ON ON ST< ON OFF OFF ST<= ON ON OFF 有关使用的注意事项 编程时,OR比较指令OR=、OR<>、OR>、OR>=、OR<和OR<=应从母线开始书写。 多个OR比较指令OR=、OR<>、OR>、OR>=、OR<和OR<=可以连续使用。 若与BCD码或其他类型的数据混合使用,则当最高位为1时,数据为负值,并且不能得到正确的比较结果。 在此情况下,请在进行比较之前,使用F81(BIN)指令或其他类似指令将数据转换为二进制数据。 标志位状态 ·错误标志(R9007):当使用索引寄存器变址指定的区域超出范围时变为ON并且并保持。 ·错误标志(R9008):当使用索引寄存器变址指定的区域超出范围时,瞬间变为ON。 <> 表示≠ >= 表示≥ <= 表示≤ 2-136 ORD> 双字比较:相等时逻辑或 概述 将两个双字数据(32bit)项按照比较条件进行比较,通过比较结果控制OR运算。 根据比较的结果,确定触点的ON或OFF。与其他触点并联。 程序示例 0 1 10 ST X 0 OT Y 30 ORD>= DT 0 DT 100 地址 指令梯形图程序 布尔形式 操作数 S1 S2 被比较的32位常数或存放32位常数的低16位区 被比较的32位常数或存放32位常数的低16位区 ORD>= ORD< ORD<= ORD= ORD<> 双字比较:不等时逻辑或 双字比较:大于时逻辑或 双字比较:大于等于时逻辑或 双字比较:小于时逻辑或 双字比较:小于等于时逻辑或 A: 可以使用 N/A:不可使用 指令 S1 继电器 WX WY WR WL (*1) 定时器/计数器 SV EV 寄存器 DT LD (*1) FL (*2) 索引寄存器 常数 K H 索引 修正值 A A A A A A A A A A A IX (*3) IY (*4) S2 A A A A A A A A A A A A N/A A N/A A A (*1) 不适用于FP0/FP1/FP-M/FP-e。 (*2) 不适用于FP0/FP1/FP-M/FPΣ/FP-e。 (*3) 对于FP2、FP2SH和FP10SH,为I0至IC。 (*4) 对于FP2、FP2SH和FP10SH,为ID。 FP-e/FP0/FP∑/FP1*/FP-M*/ FP2/FP2SH/FP3/FP10SH 适用机型 *) FP1-C14/C16和FP-M C16不支持 2-137 描述 根据比较条件,将由S1及S1+1指定的双字数据与由S2及S2+1指定的双字数据进行比较。 当比较结果为某一指定状态(=、<、>等)时,ORD指令作用于并联连接的触点。 比较运算的结果如下: 示例说明 将数据寄存器(DT1,DT0)的内容与数据寄存器(DT101,DT100)的内容进行比较。当X0闭合或者 (DT1,DT0)≥(DT101,DT100)时,外部输出继电器Y30为ON。 当(DT1,DT0)<(DT101,DT100)并且X0处于断开状态时,外部输出继电器Y30为OFF。 处理32位数字时,指定低16位区(S1、S2)后,会自动确定高16位区(S1+1、S2+1)。 标志位状态 ·错误标志(R9007):当使用索引寄存器变址指定的区域超出范围时变为ON并且并保持。 ·错误标志(R9008):当使用索引寄存器变址指定的区域超出范围时,瞬间变为ON。 当处理32位数据时,低16位的数据(S1、S2)被指定后, 高16位的数据(S1+1、S2+1)将自动强制确定。 有关使用的注意事项 编程时,OR比较指令ORD=、ORD<>、ORD>、ORD>=、ORD<和ORD<=应从母线开始书写。 多个OR比较指令ORD=、ORD<>、ORD>、ORD>=、ORD<和ORD<=可以连续使用。 若与BCD码或其他类型的数据混合使用,则当最高位为1时,数据为负值,并且不能得到正确的比较结果。 在此情况下,请在进行比较之前,使用F83(DBIN)指令或其他类似指令将数据转换为二进制数据。 比较指令 [S1+1,S1]<[S2+1,S2] [S1+1,S1]>[S2+1,S2] 条件 ORD= OFF OFF ORD<> ON ON ORD> OFF ON ORD>= OFF ON ORD< ON OFF ORD<= ON OFF [S1+1,S1]=[S2+1,S2] ON OFF OFF ON OFF ON <> 表示≠ >= 表示≥ <= 表示≤ 第三章 高级指令 3-I 3-II 3.1 高级指令构成 每一条高级指令由高级指令编号、指令助记符和操作数组成。 3.1.1 构成 示例: F0(MV) 指令 本指令将K0(S)复制到DT0(D) X0 0 ─┤├──[ F0 MV, K0 , DT0 ] 操作数 S D 指令助记符 高级指令编号 执行条件 (触发器) 地址 高级指令编号 高级指令编号用于输入高级指令. 指令助记符 指令助记符用于表示各指令的处理内容. 操作数 操作数用于指定存放处理方式、处理数据的存储区地址等内容. 各指令的操作数的数量不同. 操作数分为3类: S(source, 源), D(destination, 目标) 和 n(number, 数字) 操作数类型 S(source, 源): 存储被处理的数据或指定处理方式的数据. D(destination, 目标): 指定存储处理结果的位置. n(number, 数字): 指定被处理的数值数据或设置处理方式. 有关用于指定操作数的常数和存储区(寄存器)的说明, 请参阅第1章1.3节和1.4节. 有关各高级指令所使用的操作数的类型及作用, 请参阅本章的各高级指令说明. 高级指令编号用于指定高级指令. 例如, 用于指定MV指令(16-bit数据传输指令)的编号是0(F0或P0). 通过输入指令编号可以输入相应的高级指令.带有前缀”F”的高级指令,在执行条件(触发器)为ON的状态下, 每个扫描 周期都被执行.带有前缀”P”的高级指令, 仅在检测到执行条件(触发器)为的上升沿的情况下执行一个扫描周期. 3.1.2 高级指令的编号及程序输入 输入”F”型高级指令 输入”P”型高级指令 X0 ─┤├─[ F0 MV, K0 , DT0 ] F 0 X0 ─┤├─[ P0 MV, K0 , DT0 ] P 0 关于”F”型高级指令和”P”型高级指令的说明,请参阅3.1.4节. 3-1 每一条高级指令都始终与其执行条件(触发器)匹配. 当作为继电器时序回路的运算结果的执行条件(触发器) 为ON时,执行高级指令。 3.1.3 高级指令和执行条件 示例: 当执行条件(触发器)X0为 ON时, 执行F0(MV) 指令, 将K0传输到DT0. 3-2 X0 ─┤├─[ F0 MV, K0 , DT0 ] 执行条件(触发器) 当在程序中多个高级指令连续相同的执行条件(触发器)时, 不需要多次编程使用同一个执行条件(触发器). 示例: X0 ─┤├─[ F0 MV, K50, DT0 ] X0 ─┤├─[ F151 WRT,K0,DT1,K1,K0 ] 不需要此执行条件(触发器) X0 ─┤├─[ F0 MV, K50, DT0 ] [ F151 WRT,K0,DT1,K1,K0 ] 省略执行条件(触发器)时的注意事项 如果需要在程序中使用同一个触发器控制”F”和”P”型两种高级指令, 请参照以下示例进行编程. 示例1: 使用两次相同的执行条件 (触发器)控制”F”和”P”型 指令 示例2: 利用PSHS,RDS和POPS指令, 只使用1次执行条件 (触发器) X0 ─┤├─[ F0 MV, K50, DT0 ] [ F151 WRT,K0,DT1,K1,K0 ] [ F60 CMP, DT1, DT30 ] X0 ─┤├─[ P0 PMV, H8000, DT9058 ] [ P157 PCADD,DT9054,DT0,DT30 ] X0 ─┤├┬─[ F0 MV, WRO, DT10 ] │ ├─[ F0 MV, LD1, DT11 ] │ └─[ P115 PFIFT, DT10,DT11 ] PSHS RDS POPS 3.1.4 “F”型和“P”型高级指令 多数高级指令都可以使用”F”型或”P”型 “F”型高级指令 当执行条件(触发器)为ON时, 每个扫描周期重复执行该指令. “P”型高级指令 当检测到执行条件(触发器)的上升沿N时, 在一个扫描周期内执行该指令. 执行条件 (触发器) F型 高级指令 ON OFF 执行 1扫描周期 ON OFF 执行条件 (触发器) P型 高级指令 执行 1扫描周期 16位数据传输 程序示例 操作数 描述 概述 将16位数据复制到指定的16位区。 对于FP-M/FP0/FP1/FP-e/FPΣ,P型高级指令不适用。 WX WY WR WL(*1) SV EV DT LD(*1) FL(*2) IX(*3)IY(*4) K H S A A A A A A A A A A A A A A D N/A A A A A A A A A A A N/A N/A A 操作数 索引变址 定时器/计数器 索引寄存器 常数继电器 数据寄存器 由S指定的16位数据或16位等值常数被复制到由D指定的区域。 A: 可以使用 N/A: 不可使用 F0(MV) P0(PMV) 示例说明 当触发器R0为ON时,数据寄存器DT10的内容复制到数据寄存器DT20。 指令梯形图程序 10 11 ST R 0 F0 (MV) DT 10 DT 20 D 16位常数或存放常数的16位区(源区)S 16位区(目的区) 地址 布尔形式 触发器 FP-e/FP0/FP∑/FP1/FP-M/FP2/FP2SH/FP3/FP10SH 适用机型 3-3 (*1)此处不适用FP-M、FP0、FP-e和FP1。 (*2)此处不适用FP-M、FP0、FP-e、FPΣ和FP1。 (*3)对于FPΣ、FP2、FP2SH和FP10SH,此处为I0至IC。 (*4)对于FPΣ、FP2、FP2SH和FP10SH,此处为ID。 梯形图程序 示例1:当R1为ON时,将K30传输至定时器设定值区SV0。 应用示例 示例2:当R2为ON时,将定时器经过值EV0传输至数据寄存器DT0。 标志位状态 · 错误标志(R9007):当用变址数指定的区域限时为ON并保持ON状态。 · 错误标志(R9008):当用变址数指定的区域超限时瞬间为ON。 3-4 32位数据传输 程序示例 操作数 概述 将32位数据复制到指定的32位区域。 对于FP-M/FP0/FP1/FP-e/FPΣ,P型高级指令不适用。 WX WY WR WL(*1) SV EV DT LD(*1) FL(*2) IX(*3)IY(*4) K H S A A A A A A A A A A N/A A A A D N/A A A A A A A A A A N/A N/A N/A A 操作数 索引变址 定时器/计数器 索引寄存器 常数继电器 数据寄存器 A: 可以使用 N/A: 不可使用 F1(DMV) P1(PDMV) 示例说明 当触发器R0为ON时,数据寄存器DT11和DT10的内容被复制到数据寄存器DT21和DT20。 10 11 ST R 0 F1 (DMV) DT 10 DT 20 D 32位常数或存放常数的32位区(源区)S 32位数据的低16位区(目的区) 地址 指令 梯形图程序 布尔形式 高16位区 低16位区 DT11 DT10 DT21 DT20 DT10的内容(16位)和DT11的内容(16位)被组合为32位的数据进行处理 32位的数据被分为高16位数据和低16位数据,分别存放于DT21和DT20 触发器 FP-e/FP0/FP∑/FP1/FP-M/FP2/FP2SH/FP3/FP10SH 适用机型 3-5 (*1)此处不适用FP-M、FP0、FP-e和FP1。 (*2)此处不适用FP-M、FP0、FP-e、FPΣ和FP1。 (*3)对于FPΣ、FP2、FP2SH和FP10SH,此处为I0至IC。 (*4)对于FPΣ、FP2、FP2SH和FP10SH,此处为ID。 描述 将由S指定的32位数据或32位等值常数复制到由D指定的32位区。 处理32位数据时,指定低16位区(S,D)后,高16位区(S+1,D+1)会被自动确定。 标志位状态 ·错误标志(R9007):当用变址数指定的区超限时为ON并保持ON状态。 ·错误标志(R9008):当用变址数指定的区超限时瞬间为ON。 3-6 16位数据求反传输 概述 程序示例 操作数 将16位数据按位取反并复制到指定的16位区域。 对于FP-M/FP0/FP1/FP-e/FPΣ,P型高级指令不适用。 WX WY WR WL(*1) SV EV DT LD(*1) FL(*2) IX(*3)IY(*4) K H S A A A A A A A A A A A A A A D N/A A A A A A A A A A A N/A N/A A 操作数 索引变址 定时器/计数器 索引寄存器 常数继电器 数据寄存器 A: 可以使用 N/A: 不可使用 示例说明 当触发器R0为ON时,将数据寄存器DT11的内容取反后传输到数据寄存器DT20。 F2(MV/) P2(PMV/) 10 11 ST R 0 F2 (MV/) DT 11 DT 20 触发器 D 16位常数或将被求反的16位区(源区) S 16位区(目的区) 地址 指令 梯形图程序 布尔形式 位址 15 . . 12 11 . . 8 7 . . 4 3 . . 0 DT11 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 源[S]:H5555 目的[D]:HAAAA 转换和传送 位址 15 . . 12 11 . . 8 7 . . 4 3 . . 0 DT11 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 F2(MV/)执行 转换传送 FP-e/FP0/FP∑/FP1/FP-M/FP2/FP2SH/FP3/FP10SH 适用机型 3-7 (*1)此处不适用FP-M、FP0、FP-e和FP1。 (*2)此处不适用FP-M、FP0、FP-e、FPΣ和FP1。 (*3)对于FPΣ、FP2、FP2SH和FP10SH,此处为I0至IC。 (*4)对于FPΣ、FP2、FP2SH和FP10SH,此处为ID。 将由S指定的16位数据或16位等值常数进行按位取反,并传输到由D指定的16位区。 描述 位址 15 . . 12 11 . . 8 7 . . 4 3 . . 0 二进制 0 0 0 0 0 1 0 0 1 1 0 1 0 0 1 0 十六进制 0 4 D 2 标志位状态 ·错误标志(R9007):当用变址数指定的区超限时为ON并保持ON状态。 ·错误标志(R9008):当用变址数指定的区超限时瞬间为ON。 位址 15 . . 12 11 . . 8 7 . . 4 3 . . 0 二进制 1 1 1 1 1 0 1 1 0 0 1 0 1 1 0 1 十六进制 F B 2 D 3-8 32位数据求反传输 概述 程序示例 操作数 将32位数据按位取反并复制到指定的32位区域。 对于FP-M/FP0/FP1/FP-e/FPΣ,P型高级指令不适用。 WX WY WR WL(*1) SV EV DT LD(*1) FL(*2) IX(*3)IY(*4) K H S A A A A A A A A A A N/A A A A D N/A A A A A A A A A A N/A N/A N/A A 操作数 索引变址 定时器/计数器 索引寄存器 常数继电器 数据寄存器 A: 可以使用 N/A: 不可使用 F3(DMV/) P3(PDMV/) 10 11 ST R 0 F3 (DMV/) DT 11 DT 20 触发器 D 32位常数或将被求反的32位数的低16位区(源区) S 32位数据的低16位区(目的区) 地址 指令 梯形图程序 布尔形式 FP-e/FP0/FP∑/FP1/FP-M/FP2/FP2SH/FP3/FP10SH 适用机型 3-9 (*1)此处不适用FP-M、FP0、FP-e和FP1。 (*2)此处不适用FP-M、FP0、FP-e、FPΣ和FP1。 (*3)对于FPΣ、FP2、FP2SH和FP10SH,此处为I0至IC。 (*4)对于FPΣ、FP2、FP2SH和FP10SH,此处为ID。 示例说明 当触发器R0为ON时,将数据寄存器DT12和DT11的内容被按位取反并传输至数据寄存器DT21和DT20。 由S指定的32位数据或32位等值常数被按位取反,并传输至由D指定的32位区。 描述 处理32位数据时,指定低16位区(S,D)后,高16位区(S+1,D+1)会自动确定。 标志位状态 ·错误标志(R9007):当用变址数指定的区超限时为ON并保持ON状态。 ·错误标志(R9008):当用变址数指定的区超限时瞬间为ON。 F3(DMV/)执行 转换传送 3-10 位数据传输 概述 操作数 将一个16位区的位数据复制到另一个16位区的指定位。 对于FP-M/FP0/FP1/FP-e/FPΣ,P型高级指令不适用。 WX WY WR WL(*1) SV EV DT LD(*1) FL(*2) IX(*3)IY(*4) K H S A A A A A A A A A A A A A A n A A A A A A A A A A A A A A D N/A A A A A A A A A A A N/A N/A A 操作数 索引变址 定时器/计数器 索引寄存器 常数继电器 数据寄存器 A: 可以使用 N/A: 不可使用 F5(BTM) P5(PBTM) 程序示例 10 11 ST R 0 F5 (BTM) DT 20 H C04 DT 10 触发器 n 32位常数或将被求反的32位数的低16位区(源区) S 16位常数或16位区(指定源区和目的区的位址) 地址 指令 梯形图程序 布尔形式 D 16位区(目的区) FP-e/FP0/FP∑/FP1/FP-M/FP2/FP2SH/FP3/FP10SH 适用机型 3-11 (*1)此处不适用FP-M、FP0、FP-e和FP1。 (*2)此处不适用FP-M、FP0、FP-e、FPΣ和FP1。 (*3)对于FPΣ、FP2、FP2SH和FP10SH,此处为I0至IC。 (*4)对于FPΣ、FP2、FP2SH和FP10SH,此处为ID。 示例说明 当触发器R0为ON时,数据寄存器DT20中的第4位的数据被复制到数据寄存器DT10中的第12位。 将由S指定16位数据或16位常数中的一个数据位,复制到由D指定的数据区,数据位由n指定 描述 标志位状态 ·错误标志(R9007):当用变址数指定的区超限时为ON并保持ON状态。 ·错误标志(R9008):当用变址数指定的区超限时瞬间为ON。 如何指定 n 位址 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 设定数值 HF HE HD HC HB HA H9 H8 H7 H6 H5 H4 H3 H2 H1 S 和 D 的数据位的指定 例如,当位10被指定时,应指定“HA”。 若将S的位4传输至D的位12,则n=HC04。 对于FP2SH和FP10SH,允许一次传输多个数据位。 “n”用十六进制数据指定源和目标的数据位,如下: n: H ٱٱٱ 源S中的位编号(设定范围:H0~HF) 传输位的数量 ·除以下情况外,应设置为“0” ·只有FP2、FP2SH和FP10SH(版本1.03以上),可以设定 范围:H0~HF(参见下页内容) 目标D中的位编号(设定范围:H0~HF) 源 位址 4 目的 位址 12 n: H C 0 4 F5( BTM )执行 源地址[S] 目的地址[D] 目的地址[D] 位址 15 . . 12 11 . . 8 7 . . 4 3 . . 0 DT20 1 1 0 0 1 1 0 1 0 0 0 1 0 1 0 1 位址 15 . . 12 11 . . 8 7 . . 4 3 . . 0 DT10 0 0 0 0 0 1 0 0 1 1 0 1 0 0 1 0 位址 15 . . 12 11 . . 8 7 . . 4 3 . . 0 DT10 0 0 0 1 0 1 0 0 1 1 0 1 0 0 1 0 3-12 传输多个数据位[只用于FP2、FP2SH和FP10SH(版本1.03以上)] 使用FP2、FP2SH和FP10SH时,如果用n指定传输的数据位的数量,则从S中指定的数据位开始顺序传输 到D中指定的数据位开始的区域。 多能传输16个数据位。被传输的数据位的数量用16进制表示,范围为0~F(对应于1位~16位)。 示例 当传输两个数据位时(n=H□1□) 从S中的位5开始的两个数据位被传输到D中的位10开始的区域……n=HA15 被传送的位数 设置(n) 1位 H□0□ 2位 H□1□ 3位 H□2□ 4位 H□3□ 5位 H□4□ 6位 H□5□ 7位 H□6□ 8位 H□7□ 9位 H□8□ 10位 H□9□ 11位 H□A□ 12位 H□B□ 13位 H□C□ 14位 H□D□ 15位 H□E□ 16位 H□F□ F5(BTM)执行 从位址开始 2位 源的位址5和6被传送到目的位址10和11 位址 15 . . 12 11 . . 8 7 . . 4 3 . . 0 S 0 0 1 0 0 1 0 1 1 1 0 0 1 1 0 1 位址 15 . . 12 11 . . 8 7 . . 4 3 . . 0 D 1 1 1 0 1 1 0 1 0 0 0 1 1 0 0 1 位址 15 . . 12 11 . . 8 7 . . 4 3 . . 0 D 1 1 1 0 1 0 0 1 0 0 0 1 1 0 0 1 3-13 如果指定的范围超出D的区域,则超出部分的不会被传输。数据也不会被写入下一个地址中。 如果传输的数据位数量被指定为“0”,则传输被指定的1位。 如果指定的范围超出S的区域,则超出部分的内容作为“0”传输。 示例:当传输从S的位14开始的4个数据位到D的位2 时……n=H23E 示例:当传输从S的位6开始的6个数据位到D的位12时……n=HC56 F5(BTM)执行 从位址14开始的的4位 S中的位14和位15的内容被传输到D中的位2和位 3。而将“0”存放到D的位4和位5中。 位址 . . 15 . . 12 11 . . 8 7 . . 4 3 . . 0 S 0 0 1 1 0 0 1 1 0 0 0 0 0 1 1 0 1 0 位址 15 . . 12 11 . . 8 7 . . 4 3 . . 0 D 0 0 1 0 0 0 0 1 1 0 1 1 1 0 0 1 位址 15 . . 12 11 . . 8 7 . . 4 3 . . 0 D 0 0 1 0 0 0 0 1 1 0 0 0 1 1 0 1 F5(BTM)执行 从位址6开始的的6位 在S中的位6到位11之间,位6~ 位9的内容被传输到D中的位12 到位15。(S中位10和位11的内 容被忽略。) 位址 15 . . 12 11 . . 8 7 . . 4 3 . . 0 S 0 0 0 0 0 1 0 1 1 1 0 1 1 1 1 1 位址 15 . . 12 11 . . 8 7 . . 4 3 . . 0 D 0 0 0 0 1 0 0 1 1 1 1 1 0 0 1 1 位址 15 . . 12 11 . . 8 7 . . 4 3 . . 0 D 0 1 1 1 1 0 0 1 1 1 1 1 0 0 1 1 3-14 十六进制数位传输 概述 程序示例 操作数 将一个16位区的十六进制数位(digit, 4bit)复制到另一个16位区中指定的数位。 对于FP-M/FP0/FP1/FP-e/FPΣ,P型高级指令不适用。 WX WY WR WL(*1) SV EV DT LD(*1) FL(*2) IX(*3)IY(*4) K H S A A A A A A A A A A A A A A n A A A A A A A A A A A A A A D N/A A A A A A A A A A A N/A N/A A 操作数 索引变址 定时器/计数器 索引寄存器 常数继电器 数据寄存器 A: 可以使用 N/A: 不可使用 F6(DGT) P6(PDGT) 10 11 ST R 0 F6 (DGT) DT 10 H 0 DT 20 n 16位常数或存放数据的16位区(源区)S 16位常数或存放数据的16位区(指定源区和目的区的十六进制位址及位数) 地址 指令 梯形图程序 布尔形式 D 16位区(目的区) 触发器 示例说明 16进制 位址 15 . . 12 11 . . 8 7 . . 4 3 . . 0 DT10 0 0 0 0 0 0 0 1 0 1 0 1 1 0 0 1 3 2 1 0 数据寄存器DT10的低4位被复制 16进制 位址 15 . . 12 11 . . 8 7 . . 4 3 . . 0 DT10 0 0 0 0 0 0 0 1 0 1 0 1 1 0 0 1 3 2 1 0 在示例中,DT20的前12位不会改变 FP-e/FP0/FP∑/FP1/FP-M/FP2/FP2SH/FP3/FP10SH 适用机型 3-15 (*1)此处不适用FP-M、FP0、FP-e和FP1。 (*2)此处不适用FP-M、FP0、FP-e、FPΣ和FP1。 (*3)对于FPΣ、FP2、FP2SH和FP10SH,此处为I0至IC。 (*4)对于FPΣ、FP2、FP2SH和FP10SH,此处为ID。 将由S指定的十六位数据中或16位等值常数中的十六进制数位,复制到由D指定的16位区, 对应的数位由n指定。 描述 标志位状态 ·错误标志(R9007):当用变址数指定的区超限时为ON并保持ON状态。 ·错误标志(R9008):当用变址数指定的区超限时瞬间为ON。 如何指定 n n用于指定进行复制的③源16进制数位、②数位的数量和①目标数位的位置,如下所示: 数据中每4个二进制位(bit)构成一个数位(digit)。 在本指令中,16位的数据被分为4个数位。这些数位从 低位开始按顺序称为digit0、 digit1、digit2和digit3。 数位(digits) 15 . . 12 11 . . 8 7 . . 4 3 . . 0 0 0 0 0 0 0 0 1 0 1 0 0 1 0 0 1 16位数据 16进制 Digit3 16进制 Digit1 16进制 Digit0 16进制 Digit2 n: H ٱٱٱ (3)源地址:起始16进制digit 位置 H0:16进制 digit0 H1:16进制 digit1 H2:16进制 digit2 H3:16进制 digit3 (2)被复制的16进制digit 数量 H0:复制1个16进制 digit (4位) H1:复制2个16进制 digit (8位) H2:复制3个16进制 digit (12位) H2:复制4个16进制 digit (16位) (1)目的地址:起始16进制digit 位置 H0:16进制 digit0 H1:16进制 digit1 H2:16进制 digit2 H3:16进制 digit3 如果①、②、③的数值都为“0”(如前页示例中的H0000),则可以缩写为“H0”。 3-16 以下传输数位的使用格式可以根据指定n,复制不同的数位。 十六进制数位复制示例 (1)当源数据的数位1复制到目标的数位1时 指定 n:H101 (2)当源数据的数位3复制到目标的数位0时 指定 n:H003 (简略形式:H3) (3)当源数据的多个数位(数位2和数位3)复制到目标的多个数位(数位2和数位3)时 指定 n:H212 (4)当源数据的多个数位(数位0和数位1)复制到目标的多个数位(数位2和数位3)时 指定 n:H210 (5)当源数据的4个数位(数位0到数位3)复制到目标的4个数位(数位0到数位3)时 指定 n:H130 3-17 两个16位数据传输 概述 操作数 将两个16位数据复制至指定的32位区。 A: 可以使用 N/A: 不可使用 F7(MV2) P7(PMV2) 程序示例 10 11 ST R 0 F7 (MV2) DT 10 DT 20 DT 30 S2 16位常数或存放数据的16位区(源区)S1 16位常数或存放数据的16位区(源区) 地址 指令 梯形图程序 布尔形式 D 被合并的32位数据区的低16位区(目的区) WX WY WR WL SV EV DT LD FL(*1) K H f S1 A A A A A A A A A A A N/A A S2 A A A A A A A A A A A N/A A D N/A A A A A A A A A N/A N/A N/A A A A A 常数 操作数 索引变址 定时器/计数器 索引寄存器继电器 数据寄存器 I 示例说明 当触发器R0为ON时,数据寄存器DT10的内容复制到数据寄存器DT30。 当触发器R0为ON时,数据寄存器DT20的内容复制到数据寄存器DT31。 DT20 DT10 DT31 DT30 16位 16位 触发器 FP∑/FP2/FP2SH/FP10SH 适用机型 3-18 (*1) 此处不适用FPΣ 当触发器为ON时,由S1和S2指定的两个16位数据或两个16位等值常数被复制到由D指定的32位区。 描述 标志位状态 ·错误标志(R9007):当用变址数指定的区超限时为ON并保持ON状态。 ·错误标志(R9008):当用变址数指定的区超限时瞬间为ON。 需要复制三个16位数据时,请使用F190(MV3)指令。 有关指令 3-19 ] 两个32位数据传输 概述 操作数 将两个32位数据复制至指定的64位区。 A: 可以使用 N/A: 不可使用 F8(DMV2) P8(PDMV2) 程序示例 10 11 ST R 0 F8 (DMV2) DT 10 DT 20 DT 30 S2 32位常数或存放32数据的低16位区(源区)S1 32位常数或存放32数据的低16位区(源区) 地址 指令 梯形图程序 布尔形式 D 被合并的64位数据区的低16位区(目的区) WX WY WR WL SV EV DT LD FL(*1) K H f S1 A A A A A A A A A A A N/A A A S2 A A A A A A A A A A A N/A A A D N/A A A A A A A A A N/A N/A N/A A AA 常数 整型参数索引变址 A A 操作数 定时器/计数器 索引寄存器继电器 数据寄存器 I 示例说明 当触发器R0为ON时,数据寄存器DT11和DT10的内容,以及数据寄存器DT21和DT20的内容复制到数 据寄存器DT33、DT32、DT31和DT30。 DT21 DT20 DT21 DT20 DT33 DT32 DT31 DT30 高16位 低16位 高16区 低16位 触发器 FP∑/FP2/FP2SH/FP10SH 适用机型 3-20 (*1) 此处不适用FPΣ 当触发器为ON时,由S1和S2指定的两个32位数据或两个32位等值常数被复制到由D指定的64位 区(D+3、D+2、D+1和D)。 描述 标志位状态 ·错误标志(R9007):当用变址数指定的区超限时为ON并保持ON状态。 ·错误标志(R9008):当用变址数指定的区超限时瞬间为ON。 需要复制三个32位数据时,请使用F191(DMV3)指令。 有关指令 3-21 块传输 概述 操作数 将块数据复制到指定区。 对于FP-M/FP0/FP1/FP-e/FPΣ,P型高级指令不适用。 A: 可以使用 N/A: 不可使用 F10(BKMV) P10(PBKMV) 程序示例 10 11 ST R 0 F 10 (BKMV) DT 0 DT 3 DT 10 S2 首地址16位区(源区) S1 末地址16位区(源区) 地址 指令 梯形图程序 布尔形式 D 起始于16位区(目的区) WX WY WR WL(*1) SV EV DT LD(*1) FL(*2) IX(*3)IY(*4) K H S1 A A A A A A A A A N/A N/A N/A N/A A S2 A A A A A A A A A N/A N/A N/A N/A A D N/A A A A A A A A A N/A N/A N/A N/A A 操作数 索引变址 定时器/计数器 索引寄存器 常数继电器 数据寄存器 FP-e/FP0/FP∑/FP1/FP-M/FP2/FP2SH/FP3/FP10SH 适用机型 3-22 S1和S2指定的数据块被复制到由D指定的16位区开始的块。 描述 开始区S1和结束区S2应为同类操作数。 低位地址的编号应用S1指定,高位地址的编号应由S2指定。如果S1指定的数值大于由S2指定的数值,则 将产生运算错误。 编程时的注意事项 触发器 (*1)此处不适用FP-M、FP0、FP-e和FP1。 (*2)此处不适用FP-M、FP0、FP-e、FPΣ和FP1。 (*3)对于FPΣ、FP2、FP2SH和FP10SH,此处为I0至IC。 (*4)对于FPΣ、FP2、FP2SH和FP10SH,此处为ID。 示例说明 当触发器R0为ON时,数据寄存器“DT0至DT3”的数据被复制到数据寄存器“DT10至DT13”。 源 执行F10(BKMV) 3-23 R0:on 当S1、S2和D指定的存储区为相同类型时的注意事项 当存储区S1和D的地址及类型均相同时,不执行本指令。 若正在被传输的块与传输目标重叠,则传输结果会被覆盖。 若S1D,则由较低地址到较高地址的顺序复制源数据(DT0→DT1→DT2)。 标志位状态 ·错误标志(R9007):变为ON并保持ON,当: - 变址数指定区超限时。 - S1>S2时。 - 待复制的数据块超过目标区的界限时。 ·错误标志(R9008):瞬间为ON,当: - 变址数指定区超限时。 - S1>S2时。 - 待复制数据块超过目标区的界限时。 3-24 块复制 概述 操作数 将指定的一个16位数据复制到一个或一个以上的16位区的数据块。 对于FP-M/FP0/FP1/FP-e/FPΣ,P型高级指令不适用。 A: 可以使用 N/A: 不可使用 F11(COPY) P11(PCOPY) 程序示例 10 11 ST R 0 F11 (COPY) DT 1 DT 10 DT 14 D1 16位常数或存放数据的16位区(源区) S 首地址16位区(目的区) 地址 指令 梯形图程序 布尔形式 D2 结束地址16位区(目的区) 触发器 WX WY WR WL(*1) SV EV DT LD(*1) FL(*2) IX(*3)IY(*4) K H S A A A A A A A A A A A A A A D1 N/A A A A A A A A A N/A N/A N/A N/A A D2 N/A A A A A A A A A N/A N/A N/A N/A A 操作数 索引变址 定时器/计数器 索引寄存器 常数继电器 数据寄存器 FP-e/FP0/FP∑/FP1/FP-M/FP2/FP2SH/FP3/FP10SH 适用机型 (*1)此处不适用FP-M、FP0、FP-e和FP1。 (*2)此处不适用FP-M、FP0、FP-e、FPΣ和FP1。 (*3)对于FPΣ、FP2、FP2SH和FP10SH,此处为I0至IC。 (*4)对于FPΣ、FP2、FP2SH和FP10SH,此处为ID。 3-25 由S指定的16位等值常数或16位区复制到由D1和D2指定的数据块中所有的16位区。 描述 标志位状态 ·错误标志(R9007):为ON并保持ON,当: - 变址数指定区超限时。 - D1>D2时。 ·错误标志(R9008): 瞬间为ON,当: - 变址数指定区超限时。 - D1>D2时。 开始区D1和结束区D2应为同类操作数。 正在被复制的块的较低的地址区应由D1指定,较高的地址区应由D2指定。若指定的D1大于D2,且指令被 执行,则会发生运算错误。 当D1和D2被指定的编号相同,则16位的数据被复制到该编号的存储区中。 编程时的注意事项 示例说明 当触发器R0为ON时,数据寄存器DT0的内容复制到数据寄存器DT10至DT14的数据块中。 执行F11(COPY)R0:on 3-26 IC 卡中的扩展内存 地址 CPU的内部存储区 由IC卡/EEPROM 读取数据 操作数 对于FP0、FP-e和FPΣ,P型高级指令不适用。 A: 可以使用 N/A: 不可使用 F12(ICRD) P12(PICRD) WX WY WR WL SV EV DT LD FL IX(*1)IY(*2) K H S1 N/A N/A N/A N/A N/A N/A N/A N/A N/A N/A N/A A A A S2 A A A A A A A A A A N/A A A A D N/A A A A A A A A A N/A N/A N/A N/A A 操作数 索引变址 定时器/计数器 索引寄存器 常数继电器 数据寄存器 (*1)此处为I0至IC。 (*2)此处为ID。 程序示例 1. 对于FP2SH/FP10SH 概述 由IC卡的扩展存储区读取数据。 10 11 ST R 0 F12 (ICRD) K 0 K 10 DT 100 S2 IC卡扩展内存的起始地址(源区)S1 被读取的字的个数(源区) 地址 指令 梯形图程序 布尔形式 D 存储IC卡的16位数据的起始地址(目的区) 触发器 示例说明 当R0为ON时,保持在IC卡扩展存储区的地址0至9中的10个字的数据被传输至数据寄存器DT100至DT109。 FP-e/FP0/FP∑/FP2SH/FP10SH 适用机型 3-27 保存于IC卡扩展存储区的、由S1开始的、S2个字的数据被传输至由D指定的CPU的存储区中。 描述 标志位状态 ·错误标志(R9007):为ON并保持ON,当: - CPU中未安装IC卡时。 - IC卡的允许存取设置开关置于OFF(禁止)时。 - IC卡上未找到扩展存储区时。 - S1指定的地址在IC卡的扩展存储中不存在时。 - S2指定的区超过IC卡扩展存储区的界限时。 - 在由D指定的块和其后的参数被传输情况下,超出使用区时。 ·错误标志(R9008): 瞬间为ON,当: - CPU中未安装IC卡时。 - IC卡的允许存取设置开关置于OFF(禁止)时。 - IC卡上未找到扩展存储区时。 - S1指定的地址在IC卡的扩展存储中不存在时。 - S2指定的区超过IC卡扩展存储区的界限时。 - 在由D指定的块和其后的参数被传输情况下,超出使用区时。 适用于S1和S2的值因IC卡扩展存储区的容量而异。 使用nKB的IC卡时, S2的指定数值为: 1~ S1的指定数值为: 0~([S2]-1) 若512KB被分配给扩展存储区,则容量(可使用字数)为: (512×1024)/2=262144字 因此,S1的允许范围是K0至K262143。 编程时的注意事项 n×1024 2 -1( ) 3-28 操作数 A: 可以使用 N/A: 不可使用 WX WY WR WL SV EV DT LD FL IX IY K H S1 N/A N/A N/A N/A N/A N/A N/A N/A N/A N/A N/A A N/A N/A S2 N/A N/A N/A N/A N/A N/A N/A N/A N/A N/A N/A A N/A N/A D N/A N/A N/A N/A N/A N/A A N/A N/A N/A N/A N/A N/A N/A 操作数 索引变址 定时器/计数器 索引寄存器 常数继电器 数据寄存器 2. 对于FP0、FP-e和 FPΣ 概述 由EEPROM(F-ROM)区读取数据 示例说明 当执行条件(触发器)为ON时,将存储在EEPROM的块0至块9的10个数据块中的数据传输到数据寄存器DT0~ DT639(FP0和FP-e时)或DT0~DT20479(FPΣ时)。 程序示例 10 11 ST R 0 F12 (ICRD) K 0 K 10 DT 0 S2 EEPROM内存的起始地址(源区) S1 被写入的字的个数 (源区) 地址 指令 梯形图程序 布尔形式 D EEPROM内存的16位数据的起始地址(目的区) 触发器 地址 (块) EEPROM区 数据寄存器 DT EEPROM区 数据寄存器 DT 地址 (块) FP0和FP-e的情况 FPΣ的情况 3-29 将存储在EEPROM(F-ROM)的、从S1开始的S2个数据块中的数据传输到由D指定的数据寄存器中。此时, 数据传输量的单位固定, FP0和FP-e为1块(block)/64字, FPΣ为1块(block)/2048字。 描述 标志位状态 ·错误标志(R9007):为ON并保持ON,当: - S1指定的地址在EEPROM(F-ROM)区中不存在时。 - S2指定的区超过EEPROM(F-ROM)区的界限时。 - 在由D指定的块和其后的参数被传输情况下,超出使用区时。 ·错误标志(R9008): 瞬间为ON,当: - S1指定的地址在EEPROM(F-ROM)区中不存在时。 - S2指定的区超过EEPROM(F-ROM)区的界限时。 - 在由D指定的块和其后的参数被传输情况下,超出使用区时。 可用S1、S2和D指定的数值 。 编程时的注意事项 S1 S2 D FP0 C10/C14/C16 K0~K9 K1~K10 DT0~DT1595 FP0 C32 K0~K95 K1~K96 DT0~DT6080 FP0 T32 K0~K255 K1~K256 DT0~DT16320 FPΣ K0~K15 K1~K16 DT0~DT32720 类型 内存区 EEPROM(F-ROM)可保存的数据量 FP0 C10/C14/C16 640个字 FP0 C32 6144个字 FP0 T32 16384个字 FPΣ 32765个字 类型 可读取的数据量 因为EEPROM(F-ROM)中所保存的初始数据不确定,所以在读取尚未写入数据的EEPROM的数据时应加以 注意。 3-30 数据写入IC卡 操作数 A: 可以使用 N/A: 不可使用 F13(ICWT) P13(PICWT) WX WY WR WL SV EV DT LD FL IX(*1)IY(*2) K H S1 A A A A A A A A A N/A N/A N/A N/A A S2 A A A A A A A A A A N/A A A A D N/A N/A N/A N/A N/A N/A N/A N/A N/A N/A N/A A A A 操作数 索引变址 定时器/计数器 索引寄存器 常数继电器 数据寄存器 (*1)此处为I0至IC。 (*2)此处为ID。 程序示例 概述 将数据写入IC卡的扩展存储区。 10 11 ST R 0 F13 (ICWT) DT 100 K 10 K 100 S2 16位数据区的起始地址(源区) S1 16位数据区的起始地址(源区) 地址 指令 梯形图程序 布尔形式 D IC卡上存储内存的16位数据的起始地址(目的区) 触发器 示例说明 当触发器R0为ON时,将存储在DT100~DT109中的10个字的数据传输到IC卡中的扩展存储区。 CPU的内部存储区 IC 卡中的扩展内存 地址 FP2SH/FP10SH 适用机型 3-31 存储于CPU中以S1开始的S2个字的数据被传输到由D指定的IC卡的扩展存储区。 F13(ICWT)/P13(PICWT)指令只有在使用SRAM型IC卡的扩展存储区时才能执行。 描述 标志位状态 ·错误标志(R9007):为ON并保持ON,当: - CPU中未安装IC卡时。 - IC卡允许存取设置开关置于OFF(禁止)时。 - IC卡处于写保护状态时。 - 此卡为FLASH-EEPROM型时。 - IC卡中未找到扩展存储区时。 - S2指定的区超过IC卡的扩展存储区的界限时。 - 在由D指定的块及其后的参数被传输情况下,超出使用区时。 ·错误标志(R9008): 瞬间为ON,当: - CPU中未安装IC卡时。 - IC卡允许存取设置开关置于OFF(禁止)时。 - IC卡处于写保护状态时。 - 此卡为FLASH-EEPROM型时。 - IC卡中未找到扩展存储区时。 - S2指定的区超过IC卡的扩展存储区的界限时。 - 在由D指定的块及其后的参数被传输情况下,超出使用区时。 可以使用的D的数值因IC卡的扩展存储区的容量而异。 当使用nKB的IC卡时,S2的指定数值范围是: 1~ S1的指定数值范围是: 0~([S2]-1) 若512KB分配给扩展存储区,则容量(可用字数)为: (512×1024)/2=262144字。 因此,D的允许范围为K0至K262143。 编程时的注意事项 n×1024 2 -1( ) 3-32 数据寄存器 DT EEPROM区 地址 (块) 数据写至EEPROM 操作数 A: 可以使用 N/A: 不可使用 P13(PICWT) WX WY WR WL SV EV DT LD FL IX IY K H S1 N/A N/A N/A N/A N/A N/A A N/A N/A N/A N/A N/A N/A N/A S2 N/A N/A N/A N/A N/A N/A N/A N/A N/A N/A N/A A N/A N/A D N/A N/A N/A N/A N/A N/A N/A N/A N/A N/A N/A A N/A N/A 操作数 索引变址 定时器/计数器 索引寄存器 常数继电器 数据寄存器 程序示例 概述 将数据写至EEPROM区。 10 11 ST R 0 P13 (PICWT) DT 0 K 10 K 0 S2 16位数据区的起始地址(源区) S1 被读的字的个数(源区) 地址 指令 梯形图程序 布尔形式 D EEPROM存储区的起始地址(目的区) 示例说明 当执行状态(触发器)R0为ON,数据寄存器DT0至DT576中存储的10个数据块(640个字)被传输至EEPROM区中 的块0至9。 触发器 该指令是特殊类型(P型)指令,在该指令 号前面要加P FP-e/FP0/FPΣ 适用机型 1. 对于FP0、FP-e 3-33 数据寄存器 DT EEPROM区 地址(块) 操作数 A: 可以使用 N/A: 不可使用 WX WY WR WL SV EV DT LD FL S1 IY K H S1 N/A N/A N/A N/A N/A N/A A N/A N/A N/A N/A N/A N/A N/A S2 N/A N/A N/A N/A N/A N/A N/A N/A N/A N/A N/A A N/A N/A D N/A N/A N/A N/A N/A N/A N/A N/A N/A N/A N/A A N/A N/A 操作数 索引变址 定时器/计数器 索引寄存器 常数继电器 数据寄存器 程序示例 概述 将数据写至F-ROM区。 10 11 ST R 0 P13 (PICWT) DT 0 K 1 K 0 S2 16位数据区的起始地址(源区) S1 被读的字的个数(源区) 地址 指令 梯形图程序 布尔形式 D F-ROM存储区的起始地址(目的区) 示例说明 当执行状态(触发器)R0为ON,从数据寄存器DT0开始的1个数据块(2048个字)被传输至F-ROM区中的块0。 触发器 该指令是特殊类型(P型)指令,在该指令 号前面要加P 2. 对于FPΣ 3-34 将存储在数据寄存器中的、从S1开始的S2个数据块中的数据传输到由D指定的EEPROM(F-ROM)中。 此时,数据传输的单位固定, FP0和FP-e为1块/64字, FPΣ只能为1块/2048字。 描述 标志位状态 ·错误标志(R9007):为ON并保持ON,当: - S1指定的编号在存储区中不存在时。 - S2指定的区超过存储区的界限时。 - 在由D及其之后的参数指定的数据块被传输时,超出使用区时。 ·错误标志(R9008): 瞬间为ON,当: - S1指定的编号在存储区中不存在时。 - S2指定的区超过存储区的界限时。 - 在由D及其之后的参数指定的数据块被传输时,超出使用区时。 可用S1、S2和D指定的数值 编程时的注意事项 S1 S2 D FP0 C10/C14/C16 DT0~DT1595 K1~K10 K0~K9 FP0 C32 DT0~DT6080 K1~K96 K0~K95 FP0 T32 DT0~DT16320 K1~K256 K0~K255 FPΣ DT0~DT30720 K1 K0-K15 类型 内存区 EEPROM(F-ROM)可保存的数据量 FP0 C10/C14/C16 640个字 FP0 C32 6114个字 FP0 T32 16384个字 FPΣ 32765个字 类型 可写入的数据量 数据 多可以写入EEPROM(F-ROM)10000次。 为了防止因程序错误而多次利用本指令向EEPROM(F-ROM)写入数据,本功能被设为微分执行型(P型)指令。 但是,在编制程序时,仍请确认未多次重复执行数据写入。执行本指令时,程序的运行时间FP0和FP-e 将增加5毫秒/1数据块(64字), FPΣ将增加约100毫秒(1块)。FPΣ每次能够写入的块数为1, 需要写入 多个数据块时, 应将其分割。 本指令不能在中断程序中使用。 3. FP0、FP-e和FPΣ共同 读取IC卡程序 操作数 A: 可以使用 N/A: 不可使用 WX WY WR WL SV EV DT LD FL IX(*1) IY(*2) K H S A A A A A A A A A N/A N/A N/A N/A A 操作数 索引变址 定时器/计数器 索引寄存器 常数继电器 数据寄存器 程序示例 概述 从IC卡中读取程序并执行。 示例说明 当执行条件(触发器)R0为ON时,从IC存储卡中读取程序,程序名称存放在DT100开始的数据寄存器中。读 取之后开始执行该程序。 如果DT100及其后的数据寄存器中写有“STEP2”,则保存在IC卡中名为“STEP2”的程序被读取。 F14(PGRD) P14(PPGRD) 10 11 ST R 0 F14 (PGRD) DT 100 存储文件名(最多8个ASCII码)的16位数据区的起始区(最大连续的4个字) S 地址 指令 梯形图程序 布尔形式 触发器 (*1)对于FP2SH/FP10SH,此处为I0至IC。 (*2)对于FP2SH/FP10SH,此处为ID。 程序STEP2被执行 RUN 模式 R0:ON DT100:STEP2 •程序 STEP1 •程序 STEP2 •程序 STEP3 IC内存卡 FP2SH/FP10SH 适用机型 3-35 将由S指定的存储区中的名称的文件从IC卡中读出,并且从当前开始执行该程序。 之后的运算操作根据所读出程序进行。 描述 标志位状态 ·错误标志(R9007):为ON并保持ON,当: - CPU中未安装IC卡时。 - IC卡允许存取设置开关置于OFF(禁止)。 - IC卡上未发现DOS格式化区。 - IC卡上不存在所指定文件名。 - 指定文件不是FP2SH/FP10SH的程序文件。 - 文件被损坏。 - 所指定文件名无法使用。 ·错误标志(R9008): 瞬间为ON,当: - CPU中未安装IC卡时。 - IC卡允许存取设置开关置于OFF(禁止)。 - IC卡上未发现DOS格式化区。 - IC卡上不存在所指定文件名。 - 指定文件不是FP2SH/FP10SH的程序文件。 - 文件被损坏。 - 所指定文件名无法使用。 执行ED指令后程序被改变。在该时刻,模式自动由运行(RUN)方式切换为编程(PROG.)方式。所有的输 出变为OFF。 编程时的注意事项 3-36 程序文件名应当用一字符代码来替代,并写入以S作为起始地址的存储区。 可以使用ASCII码。 不能使用文件扩展名。 单字节的数值“H00”作为结束符。如果“H00”写在文件名称(MSB)的结束处,则该数据之前的所有 字符都被视为文件名。 如果用8个字符指定文件名,则不必再使用结束符。代码H20用于指定空格。 指定文件名 向用于F14(PGRD)指令的存储区中写入字符代码的方法有两种。 一种是利用数据传输指令(F0或F1)直接写入字符代码。 另一种是利用ASCII码转换指令(F95)将文件名称转换为ASCII码。 直接写入字符代码 应用示例 指定文件名的具体示例 最后的字符 全部8个字符 (高字节)(低字节) 只有几个字符 (高字节)(低字节) 空格的 代码 结束码 应用示例 当只指定某些字符时指定文件名“ABCD”。 文件名称 S T E P 2 ASCII 码 53 54 45 50 32 文件名称 A B C D ASCII 码 41 42 43 44 指定文件名“STEP2”。 3-37 使用ASCII转换指令“F95(ASC)”将文件名转换为字符代码,并写入指定存储区。 - 编程只能使用编程工具软件进行。 -执行ASCII转换指令时,结果保存于6个字(12个字符)的存储区。指定进行如下: F95 M □□□□□□□□UUUU 应从左侧输入文件名称(8个字符)以取代开始填充有空格的字符串。如果没有指定字符,则 应输入空格。 利用ASCII转换指令指定并转换文件名 应用示例 (符号“└┘”表示空格) 指定文件名“ABCD” 指定文件名“STEP 2” 3-38 16位数据交换 操作数 A: 可以使用 N/A: 不可使用 程序示例 概述 交换两个16位数据。 对于FP-M/FP0/FP1/FPΣ/FP-e,P型高级指令不适用。 F15(XCH) P15(PXCH) 10 11 ST R 0 F15 (XCH) DT 10 DT 22 将被互换的16位数据区D1 地址 指令 梯形图程序 布尔形式 触发器 (*1)此处不适用FP-M、FP0、FP-e和FP1。 (*2)此处不适用FP-M、FP0、FP-e、FPΣ和FP1。 (*3)对于FPΣ、FP2、FP2SH和FP10SH,此处为I0至IC。 (*4)对于FPΣ、FP2、FP2SH和FP10SH,此处为ID。 将被互换的16位数据区D2 WX WY WR WL(*1) SV EV DT LD(*1) FL(*2) IX(*3)IY(*4) K H D1 N/A A A A A A A A A A A N/A N/A A D2 N/A A A A A A A A A A A N/A N/A A 操作数 索引变址 定时器/计数器 索引寄存器 常数继电器 数据寄存器 FP-e/FP0/FP∑/FP1/FP-M/FP2/FP2SH/FP3/FP10SH 适用机型 3-39 由D1和D2指定的16位区中的内容相互交换。 描述 ·错误标志(R9007):当用变址数指定的区超限时为ON并保持ON状态。 ·错误标志(R9008):当用变址数指定的区超限时瞬间为ON。 示例说明 当触发器R0为ON时,数据寄存器DT10和数据寄存器DT22的内容相互交换。 执行F15(XCH)指令 标志位状态 3-40 32位数据交换 操作数 A: 可以使用 N/A: 不可使用 程序示例 概述 交换两个32位数据。 对于FP-M/FP0/FP1/FP-e/FPΣ,P型高级指令不适用。 F16(DXCH) P16(DPXCH) 10 11 ST R 0 F16 (DXCH) DT 10 DT 22 将被互换的32位数据区的低16位区D1 地址 指令 梯形图程序 布尔形式 触发器 将被互换的32位数据区的低16位区D2 WX WY WR WL(*1) SV EV DT LD(*1) FL(*2) IX(*3)IY(*4) K H D1 N/A A A A A A A A A A N/A N/A N/A A D2 N/A A A A A A A A A A N/A N/A N/A A 操作数 索引变址 定时器/计数器 索引寄存器 常数继电器 数据寄存器 FP-e/FP0/FP∑/FP1/FP-M/FP2/FP2SH/FP3/FP10SH 适用机型 3-41 (*1)此处不适用FP-M、FP0、FP-e和FP1。 (*2)此处不适用FP-M、FP0、FP-e、FPΣ和FP1。 (*3)对于FPΣ、FP2、FP2SH和FP10SH,此处为I0至IC。 (*4)对于FPΣ、FP2、FP2SH和FP10SH,此处为ID。 由D1和D2指定的32位区中的内容相互交换。 描述 ·错误标志(R9007):当用变址数指定的区超限时为ON并保持ON状态。 ·错误标志(R9008):当用变址数指定的区超限时瞬间为ON。 示例说明 当触发器R0为ON时,数据寄存器DT11和DT10的内容与数据寄存器DT23和DT22的内容相互交换。 执行F16(DXCH)指令 标志位状态 3-42 16位数据高·低字节互换 操作数 A: 可以使用 N/A: 不可使用 程序示例 概述 将指定的16位数据的高字节与低字节互换。 对于FP-M/FP0/FP1/FP-e/FPΣ,P型高级指令不适用。 F17(SWAP) P17(PSWAP) 10 11 ST R 0 F17 (SWAP) DT 0 16位区中将被互换的高低字节D 地址 指令 梯形图程序 布尔形式 触发器 WX WY WR WL(*1) SV EV DT LD(*1) FL(*2) IX(*3)IY(*4) K H D N/A A A A A A A A A A A N/A N/A A 操作数 索引变址 定时器/计数器 索引寄存器 常数继电器 数据寄存器 示例说明 当触发器R0为ON时,将DT0的高位字节与低位字节的数据互换。 执行F17(SWAP)指令 位址 15 . . 12 11 . . 8 7 . . 4 3 . . 0 DT0 0 0 0 0 0 1 0 0 1 1 0 1 0 0 1 0 16进制 0 4 D 2 位址 15 . . 12 11 . . 8 7 . . 4 3 . . 0 DT0 1 1 0 1 0 0 1 0 0 0 0 0 0 1 0 0 16进制 D 2 0 4 高字节(8位) 低字节(8位) FP-e/FP0/FP∑/FP1/FP-M/FP2/ FP2SH/FP3/FP10SH 适用机型 3-43 (*1)此处不适用FP-M、FP0、FP-e和FP1。 (*2)此处不适用FP-M、FP0、FP-e、FPΣ和FP1。 (*3)对于FPΣ、FP2、FP2SH和FP10SH,此处为I0至IC。 (*4)对于FPΣ、FP2、FP2SH和FP10SH,此处为ID。 ·错误标志(R9007):当用变址数指定的区超限时为ON并保持ON状态。 ·错误标志(R9008):当用变址数指定的区超限时瞬间为ON。 标志位状态 将由D指定的数据的高位字节(高8位)与低位字节(低8位)的数据互换。 描述 3-44 16位块数据交换 操作数 A: 可以使用 N/A: 不可使用 程序示例 概述 16位块数据相互交换。 对于FPΣ,P型高级指令不适用。 F18(BXCH) P18(PBXCH) 10 11 ST R 0 F18 (BXCH) DT 10 DT 13 DT 31 16位数据块区1的起始地址D1 地址 指令 梯形图程序 布尔形式 触发器 16位数据块区1的结束地址D2 16位数据块区2的起始地址D3 WX WY WR WL SV EV DT LD FL(*1) K H f D1 N/A A A A A A A A A N/A N/A N/A A N/A D2 N/A A A A A A A A A N/A N/A N/A A N/A D3 N/A A A A A A A A A N/A N/A N/A A N/A 操作数 定时器/计数器 索引寄存器继电器 数据寄存器 I A 常数 整型参数索引变址 A A FP∑/FP2/FP2SH/FP10SH 适用机型 3-45 (*1) 此处不适用FPΣ 当触发器为ON时,由D1和D2指定的数据块与从D3开始的指定的16位数据块进行相互交换。 描述 ·错误标志(R9007):为ON并保持ON,当: - 变址数指定区超限时。 - D1>D2时。 - 待交换块超过目标区界限时。 ·错误标志(R9008):瞬时为ON,当: - 变址数指定区超限时。 - D1>D2时。 - 待交换块超过目标区界限时。 示例说明 当触发器R0为ON时,数据寄存器DT10~DT13构成的数据块与从DT31开始的数据块(DT31~DT34)进行数据 交换。 执行F18(BXCH)指令 标志位状态 开始区D1与结束区D2,应该:为相同类型的操作数。 满足D1≤D2。如果D1>D2,则将产生运算错误。 如果交换的数据块相互重叠,则不能正确进行数据交换。但是,此时并不会产生错误。(错误标志不 会变为ON。) 编程时的注意事项 3-46 操作数 A: 可以使用 N/A: 不可使用 程序示例 概述 根据由F19(SJP)指令指定的数据区中的数值,跳转到具有相同数值的LBL指令处。 F19(SJP) LBL 10 11 ST R 0 F19 (SJP) DT 0 存储标签的16位数据区[ 0 到 255 (256点)] S 地址 指令 梯形图程序 布尔形式 标号 间接跳转 (*1)对于FP2SH/FP10SH,此处为I0至IC。 (*2)对于FP2SH/FP10SH,此处为ID。 WX WY WR WL SV EV DT LD FL IX(*1)IY(*2) K H S A A A A A A A A A N/A N/A N/A N/A N/A 操作数 索引变址 定时器/计数器 索引寄存器 常数继电器 数据寄存器 示例说明 当触发器R0为ON时,跳转到与DT0中的数值相同的标号处。 当当 程序 程序 当DT0为K1时,程序从F19(SJP)跳转到LBL1。 当DT0为K125时,程序从F19(SJP)跳转到LBL125。 触发器 FP2/FP2SH/FP3/FP10SH 适用机型 3-47 R0 当触发器为ON时,F19(SJP)指令跳转到与S指定的数值相同的LBL编号处。 程序将从跳转目标标号的下一条指令开始继续执行。 多可以指定256个跳转目标。(S中存放的数值范围为K0至K255)。 LBL指令作为JP、LOOP和F19(SJP)指令的跳转目标。任何指令都可以作为跳转目标后的程序起点。 在同一程序中不允许有两个或两个以上的LBL指令使用相同的编号。 如果没有与S指定的数值相同的编号、或S中存放的数值超出范围,F19(SJP)指令都不会被执行。 描述 ·错误标志(R9007):为ON并保持ON,当: - S的内容小于K0时。 - S的内容大于K255时。 ·错误标志(R9008):瞬时为ON,当: - S的内容小于K0时。 - S的内容大于K255时。 标志位状态 与使用JP和LBL指令的编程相同。请参阅JP和LBL指令的说明。 在使用以下如微分指令等对执行条件(触发器)进行上升沿/下降沿检测的指令时,必须注意执行情况。 有关详细内容,请参阅相关章节。 -DF(上升沿微分) -CT(计数器)的计数输入信号 -F118(加/减计数器)的计数输入信号 -SR(移位寄存器)的移位输入 -F119(左/右移位寄存器)的移位输入 -NSTP(下一步进) -微分执行型高级指令 在F19(SJP)和LBL指令之间使用微分型指令 如果标号语句的地址在F19(SJP)指令之前,则必须确认是否有可能导致程序进入死循环而无法结束 扫描。 F19(SJP)指令不能在步进梯形图程序(SSTP与CSTP之间)、子程序或中断程序中使用。 不能从主程序跳转到子程序(子程序及中断程序等写在ED指令之后的程序)。 编程时的注意事项 3-48 16位数据加法 [D+S→D] 操作数 A: 可以使用 N/A: 不可使用 程序示例 概述 两个16位数据相加 对于FP-M/FP0/FP1/FP-e/FPΣ,P型高级指令不适用。 F20(+) P20(P+) 10 11 ST R 0 F20 (+) DT 1 DT 10 16位常数或16位数据区(加数)S 地址 指令 梯形图程序 布尔形式 示例说明 当触发器R0为ON时,将数据寄存器DT10的内容和数据寄存器DT1的内容相加。 当DT1中的十进制数4与DT10中的十进制数8相加时,操作如下: 触发器 16位区(放被加数和结果)D WX WY WR WL(*1) SV EV DT LD(*1) FL(*2) IX(*3)IY(*4) K H S A A A A A A A A A A A A A A D N/A A A A A A A A A A N/A N/A N/A A 操作数 索引变址 定时器/计数器 索引寄存器 常数继电器 数据寄存器 位址 15 . . 12 11 . . 8 7 . . 4 3 . . 0 DT11 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 被加数[D]:K8 加数[S]:K4 位址 15 . . 12 11 . . 8 7 . . 4 3 . . 0 DT11 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 结果[D]:K12 位址 15 . . 12 11 . . 8 7 . . 4 3 . . 0 DT11 0 0 0 0 0 0 0 0 0 0 0 0 1 1 0 0 FP-e/FP0/FP∑/FP1/FP-M/ FP2/FP2SH/FP3/FP10SH 适用机型 3-49 (*1)此处不适用FP-M、FP0、FP-e和FP1。 (*2)此处不适用FP-M、FP0、FP-e、FPΣ和FP1。 (*3)对于FPΣ、FP2、FP2SH和FP10SH,此处为I0至IC。 (*4)对于FPΣ、FP2、FP2SH和FP10SH,此处为ID。 将由S指定的16位等值常数或16位区与由D指定的16位区相加。 被加数数据 加数数据 触点导通 结果 (D) + (S) → (D) 描述 ·错误标志(R9007):在变址数指定区超限时为ON并保持ON。 ·错误标志(R9008):在变址数指定的区超限时瞬间为ON。 ·=标志(R900B): 当计算结果被认为等于“0”时瞬间为ON。 ·进位标志(R9009):当计算结果超出16位数据的范围(上溢出或下溢出)时瞬间为ON。 标志位状态 若算术运算指令的结果超出可处理的值的范围,则会出现上溢出或下溢出。 在正常情况下,不允许出现上溢出或下溢出。 若计算结果有时会出现上溢出或下溢出,则建议使用F21(D+)指令(32位数据加法)。 当使用F21(D+)指令而不使用F20(+)时,一定要用F89(EXT)指令将16位被加数和加数转换为32位的数据。 若出现上溢出或下溢出,则进位标志(特殊内部继电器R9009)将为ON。 有关详细内容,请参阅相关章节。 编程时的注意事项 3-50 32位数据加法 [(D+1,D)+(S+1,S)→(D+1,D)] 操作数 A: 可以使用 N/A: 不可使用 程序示例 概述 两个32位数据相加。 对于FP-M/FP0/FP1/FP-e/FPΣ,P型高级指令不适用。 F21(D+) P21(PD+) 10 11 ST R 0 F21 (D+) DT 0 DT 10 32位常数或32位数据区低16位(存放加数) S 地址 指令 梯形图程序 布尔形式 32位数据的低16位数据区(存放被加数和结果) D WX WY WR WL(*1) SV EV DT LD(*1) FL(*2) IX(*3)IY(*4) K H S A A A A A A A A A A N/A A A A D N/A A A A A A A A A A N/A N/A N/A A 操作数 索引变址 定时器/计数器 索引寄存器 常数继电器 数据寄存器 触发器 FP-e/FP0/FP∑/FP1/FP-M/ FP2/FP2SH/FP3/FP10SH 适用机型 3-51 (*1)此处不适用FP-M、FP0、FP-e和FP1。 (*2)此处不适用FP-M、FP0、FP-e、FPΣ和FP1。 (*3)对于FPΣ、FP2、FP2SH和FP10SH,此处为I0至IC。 (*4)对于FPΣ、FP2、FP2SH和FP10SH,此处为ID。 由S指定的32位等值常数或32位区与由D指定的32位数据相加。 被加数数据 加数数据 结果 (D+1,D) + (S+1,S) → (D+1,D) 描述 ·错误标志(R9007):在变址数指定区超限时为ON并保持ON。 ·错误标志(R9008):在变址数指定的区超限时瞬间为ON。 ·=标志(R900B): 当计算结果被认为等于“0”时瞬间为ON。 ·进位标志(R9009):当计算结果超出32位数据的范围(上溢出或下溢出)时瞬间为ON。 标志位状态 若算术运算指令的结果超出可处理值的范围,则会出现上溢出或下溢出。 在正常情况下,不允许出现上溢出或下溢出。 若出现上溢出或下溢出,则进位标志(特殊内部继电器R9009)会变为ON。 有关详细内容,请参阅相关章节。 编程时的注意事项 示例说明 当触发器R0为ON时,数据寄存器DT11和DT10的内容与数据寄存器DT1和DT0的内容相加。 指定的数据区与其后的数据区共同构成32位数据 运算结果的低16位存放于DT10,高16位存放于DT11 高16位 低16位 DT11 + DT10 DT1 DT0 (结果) 存入DT11 存入DT10 3-52 16位数据加法 [S1+S2→D] 操作数 A: 可以使用 N/A: 不可使用 程序示例 概述 将两个16位数据相加并将结果保存在指定区。 对于FP-M/FP0/FP1/FP-e/FPΣ,P型高级指令不适用。 F22(+) P22(P+) 10 11 ST R 0 F21 (D+) DT 0 DT 10 16位常数或存放数据的16位区(被加数) S1 地址 指令 梯形图程序 布尔形式 16位常数或存放数据的16位区(加数) S2 WX WY WR WL(*1) SV EV DT LD(*1) FL(*2) IX(*3)IY(*4) K H S1 A A A A A A A A A A A A A A S2 A A A A A A A A A A A A A A D N/A A A A A A A A A A A N/A N/A A 操作数 索引变址 定时器/计数器 索引寄存器 常数继电器 数据寄存器 触发器 16位区(存放运算结果) D FP-e/FP0/FP∑/FP1/FP-M/ FP2/FP2SH/FP3/FP10SH 适用机型 3-53 (*1)此处不适用FP-M、FP0、FP-e和FP1。 (*2)此处不适用FP-M、FP0、FP-e、FPΣ和FP1。 (*3)对于FPΣ、FP2、FP2SH和FP10SH,此处为I0至IC。 (*4)对于FPΣ、FP2、FP2SH和FP10SH,此处为ID。 ·错误标志(R9007):在变址数指定区超限时为ON并保持ON。 ·错误标志(R9008):在变址数指定的区超限时瞬间为ON。 ·=标志(R900B): 当计算结果被认为等于“0”时瞬间为ON。 ·进位标志(R9009):当计算结果超出16位数据的范围(上溢出或下溢出)时瞬间为ON。 标志位状态 由S1与S2指定的16位数据或16位等值常数相加。相加结果保存在D之中。 被加数数据 加数数据 结果 (S1) + (S2) → (D) 描述 示例说明 当触发器R0为ON时,数据寄存器DT10和DT20的内容相加,相加的结果保存于数据寄存器DT30中。 当DT10中为十进制数8,DT20中为十进制数4时,操作如下所示: 位址 15 . . 12 11 . . 8 7 . . 4 3 . . 0 DT11 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 被加数[S1]:K8 加数[S2]:K4 位址 15 . . 12 11 . . 8 7 . . 4 3 . . 0 DT11 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 结果[D]:K12 位址 15 . . 12 11 . . 8 7 . . 4 3 . . 0 DT11 0 0 0 0 0 0 0 0 0 0 0 0 1 1 0 0 (加法) 若算术运算指令的结果超出可处理值的范围,则会出现上溢出或下溢出。 一般情况下,不允许出现上溢出或下溢出。 若计算结果有时会出现上溢出或下溢出,建议使用F23(D+)指令(32位数据加法)。 当使用F23(D+)指令而不使用F22(+)时,一定要使用F89(EXT)指令将16位的加数和被加数转换为32位 的数据。 若出现上溢出或下溢出,进位标志(特殊内部继电器R9009)将变为ON。 有关详细内容,请参阅相关章节。 编程时的注意事项 3-54 32位数据加法 [(S1+1,S1)+(S2+1,S2)→(D+1,D)] 操作数 A: 可以使用 N/A: 不可使用 程序示例 概述 将两个32位数据相加并将结果保存于指定区。 对于FP-M/FP0/FP1/FP-e/FPΣ,P型高级指令不适用。 F23(+) P23(P+) 10 11 ST R 0 F23 (D+) DT 10 DT 20 DT 30 32位常数或存放32位数据的低16位区(被加数) S1 地址 指令 梯形图程序 布尔形式 32位常数或存放32位数据的低16位区(加数) S2 WX WY WR WL(*1) SV EV DT LD(*1) FL(*2) IX(*3)IY(*4) K H S1 A A A A A A A A A A N/A A A A S2 A A A A A A A A A A N/A A A A D N/A A A A A A A A A A N/A N/A N/A A 操作数 索引变址 定时器/计数器 索引寄存器 常数继电器 数据寄存器 触发器 32位数据的低16位区(存放运算结果)D FP-e/FP0/FP∑/FP1/FP-M/ FP2/FP2SH/FP3/FP10SH 适用机型 3-55 (*1)此处不适用FP-M、FP0、FP-e和FP1。 (*2)此处不适用FP-M、FP0、FP-e、FPΣ和FP1。 (*3)对于FPΣ、FP2、FP2SH和FP10SH,此处为I0至IC。 (*4)对于FPΣ、FP2、FP2SH和FP10SH,此处为ID。 S1与S2指定的32位数据或32位等值常数相加。相加结果保存于D+1和D之中。 被加数数据 加数数据 结果 (S1+1,S1) + (S2+1,S2) →(D+1,D) 处理32位数据时,只要指定低16位区(S1,S2,D),就会自动确定高16位区(S1+1,S2+1,D+1)。 描述 ·错误标志(R9007):在变址数指定区超限时为ON并保持ON。 ·错误标志(R9008):在变址数指定的区超限时瞬间为ON。 ·=标志(R900B): 当计算结果被认为等于“0”时瞬间为ON。 ·进位标志(R9009):当计算结果超出32位数据的范围(上溢出或下溢出)时瞬间为ON。 标志位状态 若算术运算指令的结果超出可处理值的范围,则会出现上溢出或下溢出。 在正常情况下,不允许出现上溢出或下溢出。 若出现上溢出或下溢出,则进位标志(特殊内部继电器R9009)会变为ON。 有关详细内容,请参阅相关章节。 编程时的注意事项 示例说明 当触发器R0为ON时,数据寄存器DT11和DT12的内容与数据寄存器DT21和DT20的内容相加。相加的结果保存 于数据寄存器DT31和DT30。 指定的数据区与其后的数据区共同构成32位数据 运算结果的低16位存放于DT30,高16位存放于DT31 高16位 低16位 DT11 + DT10 DT21 DT20 (结果) 存入DT31 存入DT30 3-56 16位数据减法 [D-S→D] 概述 程序示例 操作数 由被减数中减去16位数据。 对于FP-M/FP0/FP1/FP-e/FPΣ,P型高级指令不适用。 WX WY WR WL(*1) SV EV DT LD(*1) FL(*2) IX(*3)IY(*4) K H S A A A A A A A A A A A A A A D N/A A A A A A A A A A A N/A N/A A 操作数 索引变址 定时器/计数器 索引寄存器 常数继电器 数据寄存器 A: 可以使用 N/A: 不可使用 F25(-) P25(P-) 示例说明 当触发器R0为ON时,从数据寄存器DT20的数据中减去数据寄存器DT10的数据。 10 11 ST R 0 F25 ( - ) DT 10 DT 20 D 16位常数或16位数据区(存放减数) S 16位数据区(放被减数和结果) 地址 指令 梯形图程序 布尔形式 触发器 示例 1 当DT20中为十进制16、DT10中为十进制数4时。 FP-e/FP0/FP∑/FP1/FP-M/ FP2/FP2SH/FP3/FP10SH 适用机型 3-57 (*1)此处不适用FP-M、FP0、FP-e和FP1。 (*2)此处不适用FP-M、FP0、FP-e、FPΣ和FP1。 (*3)对于FPΣ、FP2、FP2SH和FP10SH,此处为I0至IC。 (*4)对于FPΣ、FP2、FP2SH和FP10SH,此处为ID。 示例2:当DT20中为十进制数3、DT10中为十进制数5时。 描述 标志位状态 ·错误标志(R9007):在变址数指定区超限时为ON并保持ON。 ·错误标志(R9008):在变址数指定的区超限时瞬间为ON。 ·=标志(R900B): 当计算结果被认为等于“0”时瞬间为ON。 ·进位标志(R9009):当计算结果超出32位数据的范围(上溢出或下溢出)时瞬间为ON。 从由D指定的16位区中减去由S指定的16位数据。 被减数数据 减数数据 结果 (D) - (S) → (D) 编程时的注意事项 若算术运算指令的结果超出可处理值的范围,则会出现上溢出或下溢出。 一般情况下不允许出现上溢出或下溢出。 若计算结果有时会出现上溢出或下溢出,建议使用F26(D-)指令(32位数据减法) 当使用F26(D-)指令而不用F25(-)时,一定要使用F89(EXT)指令将16位的减数和被减数转换为32位的数 据。 若出现上溢出或下溢出,则会进位标志(特殊内部继电器R9009)会变为ON。 有关详细内容,请参阅相关章节。 3-58 32位数据减法 [(D+1,D)-(S+1,S)→(D+1,D)] 概述 程序示例 操作数 由被减数减去32位数据。 对于FP-M/FP0/FP1/FP-e/FPΣ,P型高级指令不适用。 WX WY WR WL(*1) SV EV DT LD(*1) FL(*2) IX(*3)IY(*4) K H S A A A A A A A A A A N/A A A A D N/A A A A A A A A A A N/A N/A N/A A 操作数 索引变址 定时器/计数器 索引寄存器 常数继电器 数据寄存器 A: 可以使用 N/A: 不可使用 F26(-) P26(P-) 10 11 ST R 0 F26 ( D- ) DT 10 DT 20 D 32位常数或32位数据区的低16位区(减数) S 32位数据的低16位区(放被减数和结果) 地址 指令 梯形图程序 布尔形式 触发器 FP-e/FP0/FP∑/FP1/FP-M/ FP2/FP2SH/FP3/FP10SH 适用机型 3-59 (*1)此处不适用FP-M、FP0、FP-e和FP1。 (*2)此处不适用FP-M、FP0、FP-e、FPΣ和FP1。 (*3)对于FPΣ、FP2、FP2SH和FP10SH,此处为I0至IC。 (*4)对于FPΣ、FP2、FP2SH和FP10SH,此处为ID。 描述 标志位状态 ·错误标志(R9007):在变址数指定区超限时为ON并保持ON。 ·错误标志(R9008):在变址数指定的区超限时瞬间为ON。 ·=标志(R900B): 当计算结果被认为等于“0”时瞬间为ON。 ·进位标志(R9009):当计算结果超出16位数据的范围(上溢出或下溢出)时瞬间为ON。 由以D指定的32位数据减去以S指定的32位等值常数或32位数据。 被减数数据 减数数据 结果 (D+1,D) - (S+1,S) → (D+1,D) 编程时的注意事项 若算术运算指令的结果超出可处理值的范围,则会出现上溢出或下溢出。 在正常情况下,不允许出现上溢出或下溢。 若出现上溢出或下溢出,则进位标志(特殊内部继电器R9009)会变为ON。 有关详细内容,请参阅相关章节。 示例说明 当触发器R0为ON时,由数据寄存器DT21和DT20的内容(32位)减去数据寄存器DT11和DT10的 内容(32位)。 指定的数据区与其后的数据区共同构成32位数据 运算结果的低16位存放于DT20,高16位存放于DT21 高16位 低16位 DT21 - DT20 DT11 DT10 DT21 DT20 3-60 16位数据减法 [S1-S2→D] 概述 程序示例 操作数 由被减数减去16位数据并将结果保存于指定区。 对于FP-M/FP0/FP1/FP-e/FPΣ,P型高级指令不适用。 WX WY WR WL(*1) SV EV DT LD(*1) FL(*2) IX(*3)IY(*4) K H S1 A A A A A A A A A A A A A A S2 A A A A A A A A A A A A A A D N/A A A A A A A A A A A N/A N/A A 操作数 索引变址 定时器/计数器 索引寄存器 常数继电器 数据寄存器 A: 可以使用 N/A: 不可使用 F27(-) P27(P-) 10 11 ST R 0 F27 ( - ) DT 10 DT 20 DT 30 S2 16位常数或存放数据的16位区(被减数) S1 16位常数或存放数据的16位区(减数) 地址 指令 梯形图程序 布尔形式 触发器 D 16位区(存放运算结果) FP-e/FP0/FP∑/FP1/FP-M/ FP2/FP2SH/FP3/FP10SH 适用机型 3-61 (*1)此处不适用FP-M、FP0、FP-e和FP1。 (*2)此处不适用FP-M、FP0、FP-e、FPΣ和FP1。 (*3)对于FPΣ、FP2、FP2SH和FP10SH,此处为I0至IC。 (*4)对于FPΣ、FP2、FP2SH和FP10SH,此处为ID。 示例说明 触发器R0为ON时,从数据寄存器DT10的内容中减去数据寄存器DT20的内容,相减的结果存 放到DT30。 示例1:当DT10中为十进制数16,DT20中为十进制数4时。 被减数[S1]:K16 减数[S2]:K4 结果[D]:K12 (减) 被减数[S1]:K3 减数[S2]:K5 结果[D]:K-2 (减) 示例2:当DT10中为十进制数3,DT20中为十进制数5时。 3-62 描述 标志位状态 ·错误标志(R9007):在变址数指定区超限时为ON并保持ON。 ·错误标志(R9008):在变址数指定的区超限时瞬间为ON。 ·=标志(R900B): 当计算结果被认为等于“0”时瞬间为ON。 ·进位标志(R9009):当计算结果超出16位数据的范围(上溢出或下溢出)时瞬间为ON。 从由S1指定的16位数据或16位等值常数中减去由S2指定的16位数据或16 位等值常数,相减的结果存放于D。 被减数数据 减数数据 结果 (S1) - (S2) → (D) 编程时的注意事项 若算术运算指令的结果超出可处理值的范围,则会出现上溢出或下溢出。 一般情况下,不允许出现上溢出或下溢出。 若计算结果有时会出现上溢出或下溢出,建议使用F28(D-)指令(32位数据减法)。 当使用F28(D-)指令而不用F27(-)时,一定要使用F89(EXT)指定将16位的减数和被减数 转换为32位的数据。 若出现上溢出或下溢出,则进位标志(特殊内部继电器R9009)会变为ON。 有关详细内容,请参阅相关章节。 3-63 32位数据减法 [(S1+1,S1)-(S2+1,S2)→(D+1,D)] 概述 程序示例 操作数 由被减数减去32位数据并将结果保存在指定区。 对于FP-M/FP0/FP1/FP-e/FPΣ,P型高级指令不适用。 WX WY WR WL(*1) SV EV DT LD(*1) FL(*2) IX(*3)IY(*4) K H S1 A A A A A A A A A A N/A A A A S2 A A A A A A A A A A N/A A A A D N/A A A A A A A A A A N/A N/A N/A A 操作数 索引变址 定时器/计数器 索引寄存器 常数继电器 数据寄存器 A: 可以使用 N/A: 不可使用 F28(D-) P28(PD-) 10 11 ST R 0 F28 ( D- ) DT 10 DT 20 DT 30 S2 32位常数或存放32位数据的低16位区(被减数)S1 32位常数或存放32位数据的低16位区(减数) 地址 指令 梯形图程序 布尔形式 触发器 D 32位数据的低16位区(存放运算结果) FP-e/FP0/FP∑/FP1/FP-M/ FP2/FP2SH/FP3/FP10SH 适用机型 3-64 (*1)此处不适用FP-M、FP0、FP-e和FP1。 (*2)此处不适用FP-M、FP0、FP-e、FPΣ和FP1。 (*3)对于FPΣ、FP2、FP2SH和FP10SH,此处为I0至IC。 (*4)对于FPΣ、FP2、FP2SH和FP10SH,此处为ID。 描述 标志位状态 ·错误标志(R9007):在变址数指定区超限时为ON并保持ON。 ·错误标志(R9008):在变址数指定的区超限时瞬间为ON。 ·=标志(R900B): 当计算结果被认为等于“0”时瞬间为ON。 ·进位标志(R9009):当计算结果超出32位数据的范围(上溢出出或下溢出)时瞬间为ON。 S1指定的32位数据或32位等值常数减去S2指定的32位数据或32位等值常数,相减的结果存放于D+1和D。 被减数数据 减数数据 结果 (S1+1,S1) - (S2+1,S2) →(D+1,D) 处理32位数据时,只要指定低16位区(S1,S2,D),就会自动确定高16位区(S1+1,S2+1,D+1)。 编程时的注意事项 若算术运算指令的结果超出可处理值的范围,则会出现上溢出出或下溢出。 在正常情况下,不允许出现上溢出出或下溢出。 若出现上溢出出或下溢出,则进位标志(特殊内部继电器R9009)会变为ON。 有关详细内容,请参阅相关章节。 示例说明 触发器R0为ON时,从数据寄存器DT10的内容中减去数据寄存器DT20的内容,相减的结果存 放到DT30。 高16位 低16位 DT11 - DT10 DT21 DT20 DT31 DT30 指定的数据区与其后的数据区共同构成32位数据 运算结果的低16位存放于DT30,高16位存放于DT31 3-65 16位数据乘法 [S1×S2→(D+1,D)] 概述 程序示例 操作数 两个16位数据相乘。 对于FP-M/FP0/FP1/FP-e/FPΣ,P型高级指令不适用。 WX WY WR WL(*1) SV EV DT LD(*1) FL(*2) IX(*3)IY(*4) K H S1 A A A A A A A A A A A A A A S2 A A A A A A A A A A A A A A D N/A A A A A A A A A A N/A N/A N/A A 操作数 索引变址 定时器/计数器 索引寄存器 常数继电器 数据寄存器 A: 可以使用 N/A: 不可使用 F30(*) P30(P*) 10 11 ST R 0 F30 ( * ) DT 10 DT 20 DT 30 S2 16位常数或存放数据的16位区(被乘数) S1 16位常数或存放数据的16位区(乘数) 地址 指令 梯形图程序 布尔形式 触发器 D 32位数据的低16位区(存放运算结果) FP-e/FP0/FP∑/FP1/FP-M/ FP2/FP2SH/FP3/FP10SH 适用机型 3-66 (*1)此处不适用FP-M、FP0、FP-e和FP1。 (*2)此处不适用FP-M、FP0、FP-e、FPΣ和FP1。 (*3)对于FPΣ、FP2、FP2SH和FP10SH,此处为I0至IC。 (*4)对于FPΣ、FP2、FP2SH和FP10SH,此处为ID。 描述 标志位状态 ·错误标志(R9007):在变址数指定区超限时为ON并保持ON。 ·错误标志(R9008):在变址数指定的区超限时瞬间为ON。 ·=标志(R900B): 当计算结果被认为等于“0”时瞬间为ON。 将由S1指定的16位数据或16位等值常数与由S2指定的16位数据或16位等值常数相乘,结果存放 在D+1和D(32位)中。 被乘数数据 乘数数据 结果 (S1) × (S2) → (D+1,D) 相乘结果保存于32位区。 只要指定低16位区(D),高16位区(D+1)就会自动确定。 示例说明 当触发器R0为ON时,数据寄存器DT10和DT20的内容相乘。 结果保存在数据寄存器DT31和DT30中。 当DT10中为二进制数8、DT20中为二进制数2时,操作如下 被乘数[S1]:K8 乘数[S2]:K12 结果[D+1,D]:K16 高16位区 低16位区 32位运算结果中的低16位数据存放在指定的存储区(DT30)中,高16位数据存放在下一个存储区 (DT31)中. 3-67 32位数据乘法 [(S1+1,S1)×(S2+1,S2)→ (D+3,D+2,D+1,D)] 概述 程序示例 操作数 两个32位数据相乘。 对于FP-M/FP0/FP1/FP-e/FPΣ,P型高级指令不适用。 WX WY WR WL(*1) SV EV DT LD(*1) FL(*2) IX(*3)IY(*4) K H S1 A A A A A A A A A A N/A A A A S2 A A A A A A A A A A N/A A A A D N/A A A A A A A A A N/A N/A N/A N/A A 操作数 索引变址 定时器/计数器 索引寄存器 常数继电器 数据寄存器 A: 可以使用 N/A: 不可使用 F31(D*) P31(PD*) 10 11 ST R 0 F31 (D * ) DT 10 DT 20 DT 30 S2 32位常数或存放32位数据的低16位区(被乘数) S1 32位常数或存放32位数据的低16位区(乘数) 地址 指令 梯形图程序 布尔形式 触发器 D 64位区的低16位区(存放运算结果) FP-e/FP0/FP∑/FP1 C24/C40 C56/C72/ FP-M C20/C32/FP2/FP2SH/FP3/FP10SH 适用机型 3-68 (*1)此处不适用FP-M、FP0、FP-e和FP1。 (*2)此处不适用FP-M、FP0、FP-e、FPΣ和FP1。 (*3)对于FPΣ、FP2、FP2SH和FP10SH,此处为I0至IC。 (*4)对于FPΣ、FP2、FP2SH和FP10SH,此处为ID。 描述 标志位状态 ·错误标志(R9007):在变址数指定区超限时为ON并保持ON。 ·错误标志(R9008):在变址数指定的区超限时瞬间为ON。 ·=标志(R900B): 当计算结果被认为等于“0”时瞬间为ON。 将S1指定的32位数据或32位等值数据与S2指定的值相乘。 乘积存于D+3,D+2,D+1和D中。 被乘数数据 乘数数据 结果 (S1+1,S1) × (S2+1,S2) → (D+3,D+2,D+1,D) 乘积保存于64位区。 处理32位数据时,只要指定低16位区(S1,S2),高16位区(S1+1,S2+1)就会自行确定。 只要指定最低的16位区,其余的区域(D+3,D+2,D+1)就会自行确定。 3-69 指定的数据区与其后的数据区共同构成32位数据 乘法运算结果的64位数据,从最低的16位开始,顺序 存放于DT30~DT31 DT11 DT10 DT21 DT20 DT33 DT32 DT31 DT30 示例说明 16位数据除法 [S1/S2→D…(DT9015/DT90015)] 概述 程序示例 操作数 16位数据除法。 对于FP-M/FP0/FP1/FP-e/FPΣ,P型高级指令不适用。 WX WY WR WL(*1) SV EV DT LD(*1) FL(*2) IX(*3)IY(*4) K H S1 A A A A A A A A A A A A A A S2 A A A A A A A A A A A A A A D N/A A A A A A A A A A A N/A N/A A 操作数 索引变址 定时器/计数器 索引寄存器 常数继电器 数据寄存器 A: 可以使用 N/A: 不可使用 F32(%) P32(P%) 10 11 ST R 0 F32 ( %) DT 10 DT 20 DT 30 S2 16位常数或存放数据的16位区(被除数) S1 16位常数或存放数据的16位区(除数) 地址 指令 梯形图程序 布尔形式 触发器 D 16位区(存放商)(余数存放在特殊数据寄存器DT9015中) FP-e/FP0/FP∑/FP1/FP-M/ FP2/FP2SH/FP3/FP10SH 适用机型 3-70 (*1)此处不适用FP-M、FP0、FP-e和FP1。 (*2)此处不适用FP-M、FP0、FP-e、FPΣ和FP1。 (*3)对于FPΣ、FP2、FP2SH和FP10SH,此处为I0至IC。 (*4)对于FPΣ、FP2、FP2SH和FP10SH,此处为ID。 描述 标志位状态 ·错误标志(R9007):在变址数指定区超限时为ON并保持ON。 ·错误标志(R9008):在变址数指定的区超限时瞬间为ON。 ·=标志(R900B): 当计算结果被认为等于“0”时瞬间为ON。 ·进位标志(R9009):当负数的最大值K-32768(H8000)除以K-1(HFFFF)时瞬间为ON。 将由S1指定的16位数据或16位等值常数除以由S2指定的16位数据或16位等值常数。商存放在D中,余数 存放在DT9015(对于FP2/FP2SH/FP10SH为DT90015)。 被除数数据 除数数据 商 余数 (S1) ÷ (S2) → (D) (DT9015/DT90015) 对于FP-C、FP-M、FP0、FP1、FP-e、FPΣ、FP2、FP2SH、FP3和FP10SH,特殊数据寄存器的编号不同(编 号的最后3位相同)。 FP-C、FP-M、FP0、FP-e、FP1和FP3:DT9015 FP0 T32、FPΣ、FP2、FP2SH和FP10SH:DT90015 示例说明 当触发器R0为ON时,用数据寄存器DT10的内容除以十进制常数DT20,商保存在数据寄存器 DT30中,余数保存在特殊数据寄存器DT9015/DT90015中。 当DT10中为十进制数15、DT20中为十进制数4时,运算操作如下: 被除数:[S1]:K15 除数:[S2]:K4 商:[D]:K3 余:[D]:K3 3-71 32位数据除法 [(S1+1,S1)/(S2+1,S2)→(D+1,D) …(DT9016,DT9015)/(DT90016,DT90015)] 概述 程序示例 操作数 32位数据除法。 对于FP-M/FP0/FP1/FP-e/FPΣ,P型高级指令不适用。 WX WY WR WL(*1) SV EV DT LD(*1) FL(*2) IX(*3)IY(*4) K H S1 A A A A A A A A A A N/A A A A S2 A A A A A A A A A A N/A A A A D N/A A A A A A A A A A N/A N/A N/A A 操作数 索引变址 定时器/计数器 索引寄存器 常数继电器 数据寄存器 A: 可以使用 N/A: 不可使用 F33(D%) P33(PD%) 10 11 ST R 0 F33 ( D%) DT 10 DT 20 DT 30 S2 32位数据或存放32位数据的低16位区(被乘数) S1 32位数据或存放32位数据的低16位区(乘数) 地址 指令 梯形图程序 布尔形式 触发器 D 32位数据的低16位区(存放商).(余数存放在特殊数据寄存器DT9016,DT9015中) FP-e/FP0/FP∑/FP1 C24/C40 C56/C72/FP-M C20/C32/ FP2/FP2SH/FP3/FP10SH 适用机型 3-72 (*1)此处不适用FP-M、FP0、FP-e和FP1。 (*2)此处不适用FP-M、FP0、FP-e、FPΣ和FP1。 (*3)对于FPΣ、FP2、FP2SH和FP10SH,此处为I0至IC。 (*4)对于FPΣ、FP2、FP2SH和FP10SH,此处为ID。 描述 标志位状态 ·错误标志(R9007):在变址数指定区超限时为ON并保持ON。 ·错误标志(R9008):在变址数指定的区超限时瞬间为ON。 ·=标志(R900B): 当计算结果被认为等于“0”时瞬间为ON。 ·进位标志(R9009):当负数的最大值K-2147483648(H80000000)除以K-1(HFFFFFFFF)时瞬间为ON。 将由S1指定的32位数据或32位等值常数除以由S2指定的32位数据或32位等值常数。商存放在D+1和D中, 余数存放在特殊数据寄存器DT9016和DT9015(对于FP2/FP2SH/FP10SH为DT90016和DT90015)。 被除数数据 除数数据 商 余数 (S1:低16位) ÷ (S2:低16位) → (D:低16位) (DT9015/DT90015) (S1+1:高16位) (S2+1:高16位) (D+1:高16位) (DT9016/DT90016) 处理32位数据时,只要指定低16位区(S1,S2,D),就会自动确定高16位区(S1+1,S2+1,D+1)。 对于FP-C、FP-M、FP0、FP1、FP-e、FPΣ、FP2、FP2SH、FP3和FP10SH,特殊数据寄存器的编号不同(编 号的最后3位相同)。 FP-C、FP-M、FP0、FP-e、FP1和FP3:DT9016、DT9015 FP0 T32、FPΣ、FP2、FP2SH和FP10SH:DT90016、DT90015 示例说明 高16位 低16位 DT11 DT10 DT21 DT20 DT31 DT30 DT9016/ DT90016 DT9015/ DT90015 商存放在DT31和DT30 余数的低16位存放在DT9015/DT90015 余数的高16位存放在DT9016/DT90016 3-73 16位数据乘法 (结果为16位) 概述 程序示例 操作数 将两个16位数据项相乘,并将结果存入指定的16位区。 F34(*W) P34(P*W) 10 11 ST R 0 F34 (* W ) DT 10 DT 20 DT 30 S2 16位常数或存放数据的16位区(被乘数) S1 16位常数或存放数据的16位区(乘数) 地址 指令 梯形图程序 布尔形式 D 16位区(存放积) 示例说明 当触发器R0为ON时,数据寄存器D10和DT20的内容相乘。乘积存入数据寄存器DT30。 A: 可以使用 N/A: 不可使用 WX WY WR WL SV EV DT LD FL(*1) K H f S1 A A A A A A A A A A A N/A A N/A S2 A A A A A A A A A A A N/A A N/A D N/A A A A A A A A A N/A N/A N/A A N/AA 常数 整型设备索引变址 A A 操作数 定时器/计数器 索引寄存器继电器 数据寄存器 I 位址 15 . . 12 11 . . 8 7 . . 4 3 . . 0 DT11 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 被乘数[D]:K8 乘数[S]:K2 位址 15 . . 12 11 . . 8 7 . . 4 3 . . 0 DT11 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 结果[D]:K16 位址 15 . . 12 11 . . 8 7 . . 4 3 . . 0 DT11 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 R0:ON 触发器 FP∑/FP2/FP2SH/FP10SH 适用机型 3-74 (*1)此处不适用FPΣ。 描述 标志位状态 ·错误标志(R9007):在变址数指定区超限时为ON并保持ON。 ·错误标志(R9008):在变址数指定的区超限时瞬间为ON。 ·=标志(R900B): 当计算结果被认为等于“0”时瞬间为ON。 当触发器为ON时,将由S1指定的16位数据或16位等值常数与由S2指定的16位数据或16位等值常 数相乘,结果存放在D中(16位数据)。 被乘数数据 乘数数据 结果 S1 × S2 → D 乘积存于16位区。 请将计算结果限制在K-32768至K32767范围之内。 编程时的注意事项 3-75 16位数据增1 [(D+1)→D] 概述 程序示例 操作数 16位数据加1。 对于FP-M/FP0/FP1/FP-e/FPΣ,P型高级指令不适用。 F35(+1) P35(P+1) 10 11 ST R 0 F35 (+1 ) DT 0 16位数据递加1D 地址 指令 梯形图程序 布尔形式 示例说明 当触发器为ON时,数据寄DT0的内容加1。 触发器 位址 15 . . 12 11 . . 8 7 . . 4 3 . . 0 DT11 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 1 原数据[D]:K9 结果[D]:K10 位址 15 . . 12 11 . . 8 7 . . 4 3 . . 0 DT11 0 0 0 0 0 0 0 0 0 0 0 0 1 0 1 0 +1 WX WY WR WL(*1) SV EV DT LD(*1) FL(*2) IX(*3)IY(*4) K H D N/A A A A A A A A A A A N/A N/A A 操作数 索引变址 定时器/计数器 索引寄存器 常数继电器 数据寄存器 A: 可以使用 N/A: 不可使用 描述 D指定的16位数据加1。结果存于D中。 源数据 结果 (D) + 1 → (D) FP-e/FP0/FP∑/FP1/FP-M/FP2/FP2SH/FP3/FP10SH 适用机型 3-76 (*1)此处不适用FP-M、FP0、FP-e和FP1。 (*2)此处不适用FP-M、FP0、FP-e、FPΣ和FP1。 (*3)对于FPΣ、FP2、FP2SH和FP10SH,此处为I0至IC。 (*4)对于FPΣ、FP2、FP2SH和FP10SH,此处为ID。 标志位状态 ·错误标志(R9007):在变址数指定区超限时为ON并保持ON。 ·错误标志(R9008):在变址数指定的区超限时瞬间为ON。 ·=标志(R900B): 当计算结果被认为等于“0”时瞬间为ON。 ·进位标志(R9009):当计算结果超出16位数据的范围(上溢出)时瞬间为ON。 若一算术运算指令超出可处理值范围,则会产生上溢出。 一般情况下,不允许出现上溢出。 若运算结果有时会上溢出,建议使用F36(D+1)指令(32位数据加1)。 若出现上溢出,则进位标志(特殊内部继电器R9009)会变为ON。 有关详细内容,请参阅相关章节。 编程时的注意事项 3-77 32位数据增1 [(D+1,D)+1 → (D+1,D)] 概述 程序示例 操作数 32位数据加1。 对于FP-M/FP0/FP1/FP-e/FPΣ,P型高级指令不适用。 F36(D+1) P36(PD+1) 10 11 ST R 0 F36 (D+1 ) DT 0 32位数据的低16位区加1 D 地址 指令 梯形图程序 布尔形式 示例说明 当触发器R0为ON时,数据寄存器DT1和DT0的内容加1。 WX WY WR WL(*1) SV EV DT LD(*1) FL(*2) IX(*3)IY(*4) K H D N/A A A A A A A A A A N/A N/A N/A A 操作数 索引变址 定时器/计数器 索引寄存器 常数继电器 数据寄存器 A: 可以使用 N/A: 不可使用 触发器 高16位 低16位 DT1 DT0 DT1 DT0 指定的数据区与其后的数据区共同构成32位数据 FP-e/FP0/FP∑/FP1/FP-M/ FP2/FP2SH/FP3/FP10SH 适用机型 3-78 (*1)此处不适用FP-M、FP0、FP-e和FP1。 (*2)此处不适用FP-M、FP0、FP-e、FPΣ和FP1。 (*3)对于FPΣ、FP2、FP2SH和FP10SH,此处为I0至IC。 (*4)对于FPΣ、FP2、FP2SH和FP10SH,此处为ID。 标志位状态 ·错误标志(R9007):在变址数指定区超限时为ON并保持ON。 ·错误标志(R9008):在变址数指定的区超限时瞬间为ON。 ·=标志(R900B): 当计算结果被认为等于“0”时瞬间为ON。 ·进位标志(R9009):当计算结果超出32位数据的范围(上溢出)时瞬间为ON。 若一算术运算指令超出可处理值范围,则会产生上溢出。 一般情况下,不允许出现上溢出。 若出现上溢出,则进位标志(特殊内部继电器R9009)会变为ON。 有关详细内容,请参阅相关章节。 编程时的注意事项 描述 D指定的32位数据加1。结果保存于D+1和D 源数据 结果 (D+1,D) + 1 → (D+1,D) 3-79 16位数据减1 [D-1→D] 概述 程序示例 操作数 16位数据减1。 对于FP-M/FP0/FP1/FP-e/FPΣ,P型高级指令不适用。 F37(-1) P37(P-1) 10 11 ST R 0 F37 (-1 ) DT 0 16位数据递减1 D 地址 指令 梯形图程序 布尔形式 WX WY WR WL(*1) SV EV DT LD(*1) FL(*2) IX(*3)IY(*4) K H D N/A A A A A A A A A A A N/A N/A A 操作数 索引变址 定时器/计数器 索引寄存器 常数继电器 数据寄存器 A: 可以使用 N/A: 不可使用 触发器 示例说明 位址 15 . . 12 11 . . 8 7 . . 4 3 . . 0 DT11 0 0 0 0 0 0 0 0 0 0 0 0 1 0 1 0 源[D]:K10 结果[D]:K9 位址 15 . . 12 11 . . 8 7 . . 4 3 . . 0 DT11 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 1 -1 描述 D指定的16位数据减1。结果存于D中。 源数据 结果 (D) - 1 → (D) 当触发器为ON时,数据寄DT0的内容减1。 FP-e/FP0/FP∑/FP1/FP-M/FP2/FP2SH/FP3/FP10SH 适用机型 3-80 (*1)此处不适用FP-M、FP0、FP-e和FP1。 (*2)此处不适用FP-M、FP0、FP-e、FPΣ和FP1。 (*3)对于FPΣ、FP2、FP2SH和FP10SH,此处为I0至IC。 (*4)对于FPΣ、FP2、FP2SH和FP10SH,此处为ID。 标志位状态 ·错误标志(R9007):在变址数指定区超限时为ON并保持ON。 ·错误标志(R9008):在变址数指定的区超限时瞬间为ON。 ·=标志(R900B): 当计算结果被认为等于“0”时瞬间为ON。 ·进位标志(R9009):当计算结果超出16位数据的范围(下溢出)时瞬间为ON。 若一算术运算指令超出可处理值范围,则会产生下溢出。 一般情况下,不允许出现下溢出。 若运算结果有时会下溢出,建议使用F38(D-1)指令(32位数据减1)。 若出现下溢出,则进位标志(特殊内部继电器R9009)会变为ON。 有关详细内容,请参阅相关章节。 编程时的注意事项 3-81 32位数据减1 [(D+1,D)-1→(D+1,D)] 概述 程序示例 操作数 32位数据减1。 对于FP-M/FP0/FP1/FP-e/FPΣ,P型高级指令不适用。 F38(D-1) P38(PD-1) 10 11 ST R 0 F38 (D-1 ) DT 0 32位数据的低16位区减1 D 地址 指令 梯形图程序 布尔形式 示例说明 当触发器R0为ON时,数据寄存器DT1和DT0的内容减1。 WX WY WR WL(*1) SV EV DT LD(*1) FL(*2) IX(*3)IY(*4) K H D N/A A A A A A A A A A N/A N/A N/A A 操作数 索引变址 定时器/计数器 索引寄存器 常数继电器 数据寄存器 A: 可以使用 N/A: 不可使用 触发器 指定的数据区与其后的数据区共同构成32位数据 高16位 低16位 DT1 DT0 DT1 DT0 FP-e/FP0/FP∑/FP1/FP-M/ FP2/FP2SH/FP3/FP10SH 适用机型 3-82 (*1)此处不适用FP-M、FP0、FP-e和FP1。 (*2)此处不适用FP-M、FP0、FP-e、FPΣ和FP1。 (*3)对于FPΣ、FP2、FP2SH和FP10SH,此处为I0至IC。 (*4)对于FPΣ、FP2、FP2SH和FP10SH,此处为ID。 标志位状态 ·错误标志(R9007):在变址数指定区超限时为ON并保持ON。 ·错误标志(R9008):在变址数指定的区超限时瞬间为ON。 ·=标志(R900B): 当计算结果被认为等于“0”时瞬间为ON。 ·进位标志(R9009):当计算结果超出32位数据的范围(下溢出)时瞬间为ON。 若一算术运算指令超出可处理值范围,则会产生下溢出。 一般情况下,不允许出现下溢出。 若出现下溢出,则进位标志(特殊内部继电器R9009)会变为ON。 有关详细内容,请参阅相关章节。 编程时的注意事项 描述 D指定的32位数据减1。结果保存于D+1和D 源数据 结果 (D+1,D) - 1 → (D+1,D) 3-83 32位数据乘法 (结果为32位) 概述 程序示例 操作数 两个32位数据相乘并保存于指定的32位区。 对于FPΣ,P型高级指令不适用。 F39(D*D) P39(PD*D) 10 11 ST R 0 F39 (D*D ) DT 10 DT 20 DT 30 32位常数或存放数据的32位区(被乘数)S1 地址 指令 梯形图程序 布尔形式 示例说明 当触发器R0为ON时,数据寄存于DT11和DT10的内容与数据寄存器DT21和DT20的内容相乘。乘积保存于数 据寄存器DT31和DT30中。 DT1 DT0 DT1 DT0 A: 可以使用 N/A: 不可使用 WX WY WR WL SV EV DT LD FL(*1) K H f S1 A A A A A A A A A A A N/A A N/A S2 A A A A A A A A A A A N/A A N/A D N/A A A A A A A A A N/A N/A N/A A N/AN/A 常数 整型设备索引变址 A A 操作数 定时器/计数器 索引寄存器继电器 数据寄存器 I DT31 DT30 触发器 FP∑/FP2/FP2SH/FP10SH 适用机型 3-84 32位常数或存放数据的32位区(乘数)S2 32位区(存放积)D (*1)此处不适用FPΣ。 标志位状态 编程时的注意事项 描述 3-85 当触发器为ON时,将由S1指定的32位数据或32位等值常数与由S2指定的32位数据或32位等值常 数相乘,结果存放在D中(32位数据)。 被乘数数据 乘数数据 结果 (S1: 低16位) × (S2: 低16位) → (D) (S1+1: 高16位) (S2+1: 高16位) (D+1) 乘积存于32位区。 ·错误标志(R9007):在变址数指定区超限时为ON并保持ON。 ·错误标志(R9008):在以下条件瞬间为ON: -被指定的使用这条指令的区域超过限制 -计算结果超出指定的32位区域D ·=标志(R900B): 当计算结果被认为等于“0”时瞬间为ON。 请将计算结果限制在K-2147483648至K2147483647范围之内。 4位BCD数据加法 [D+S→D] 操作数 A: 可以使用 N/A: 不可使用 程序示例 概述 将两个表示4位十进制数的BCD数据(4位BCD H码)相加。 对于FP-M/FP0/FP1/FP-e/FPΣ,P型高级指令不适用。 F40(B+) P40(PB+) 10 11 ST R 0 F40 (B+) DT 1 DT 10 4位BCD常数或4位BCD数据的16位区(加数) S 地址 指令 梯形图程序 布尔形式 (*1)此处不适用FP-M、FP0、FP-e和FP1。 (*2)此处不适用FP-M、FP0、FP-e、FPΣ和FP1。 (*3)对于FPΣ、FP2、FP2SH和FP10SH,此处为I0至IC。 (*4)对于FPΣ、FP2、FP2SH和FP10SH,此处为ID。 4位BCD数的16位数据 (被加数和结果)D WX WY WR WL(*1) SV EV DT LD(*1) FL(*2) IX(*3)IY(*4) K H S A A A A A A A A A A A A A A D N/A A A A A A A A A A A N/A N/A A 操作数 索引变址 定时器/计数器 索引寄存器 常数继电器 数据寄存器 触发器 FP-e/FP0/FP∑/FP1/FP-M C20/C32/ FP2/FP2SH/FP3/FP10SH 适用机型 3-86 由S指定的4位BCD码等值常数或4位BCD码数据的16位区与D指定的4位BCD码数据相加。 被加数数据 加数数据 结果 (D) + (S) → (D) 描述 ·错误标志(R9007):以下情况时 - 变址数指定区超限 - 数据不是BCD码 ·错误标志(R9008):以下情况时瞬间为ON - 变址数指定区超限 - 数据不是BCD码 ·=标志(R900B): 当计算结果被认为等于“0”时瞬间为ON。 ·进位标志(R9009):当计算结果超出4位BCD码的范围(上溢出)时瞬间为ON。 标志位状态 若一算术运算指令的结果超出可处理值范围,则会出现上溢出。 一般情况下,不允许出现上溢出。 若计算结果有时会上溢出,建议使用F41(DB+)(8位BCD数据加法)指令。 若出现上溢出,则进位标志(特殊内部继电器R9009)会变为ON。 有关详细内容,请参阅相关章节。 编程时的注意事项 示例说明 位址 15 . . 12 11 . . 8 7 . . 4 3 . . 0 DT10 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 BCD码 0 0 0 8 被加数[D]:H8(BCD) 加数[S]:H4(BCD) 结果[D]:H12(BCD) 当触发器R0为ON时,数据寄存器DT10与数据寄存器DT1的内容相加。 当DT1中为H4(BCD)、DT10中为H8(BCD)时,运算如下所示: 位址 15 . . 12 11 . . 8 7 . . 4 3 . . 0 DT1 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 BCD码 0 0 0 4 位址 15 . . 12 11 . . 8 7 . . 4 3 . . 0 DT10 0 0 0 0 0 0 0 0 0 0 0 1 0 0 1 0 BCD码 0 0 1 2 3-87 8位BCD数据加法 [(D+1,D)+(S+1,S)→(D+1,D)] 操作数 A: 可以使用 N/A: 不可使用 程序示例 概述 将两个表示8位十进制数的BCD码数据(8位BCD H码)相加。 对于FP-M/FP0/FP1/FP-e/FPΣ,P型高级指令不适用。 F41(DB+) P41(PDB+) 10 11 ST R 0 F41 (DB+) DT 0 DT 10 8位BCD常数或8位BCD数据的16位区(加数) S 地址 指令 梯形图程序 布尔形式 8位BCD数的低16位数据(被加数和结果)D WX WY WR WL(*1) SV EV DT LD(*1) FL(*2) IX(*3)IY(*4) K H S A A A A A A A A A A N/A A A A D N/A A A A A A A A A A N/A N/A N/A A 操作数 索引变址 定时器/计数器 索引寄存器 常数继电器 数据寄存器 触发器 FP-e/FP0/FP∑/FP1/FP-M C20/C32/ FP2/FP2SH/FP3/FP10SH 适用机型 3-88 (*1)此处不适用FP-M、FP0、FP-e和FP1。 (*2)此处不适用FP-M、FP0、FP-e、FPΣ和FP1。 (*3)对于FPΣ、FP2、FP2SH和FP10SH,此处为I0至IC。 (*4)对于FPΣ、FP2、FP2SH和FP10SH,此处为ID。 描述 ·错误标志(R9007):以下情况时为ON并保持ON - 变址数指定区超限 - 数据不是BCD码 ·错误标志(R9008):以下情况时瞬间为ON - 变址数指定区超限 - 数据不是BCD码 ·=标志(R900B): 当计算结果被认为等于“0”时瞬间为ON。 ·进位标志(R9009):当计算结果超出8位BCD码的范围(上溢出)时瞬间为ON。 标志位状态 若一算术运算指令的结果超出可处理值范围,则会出现上溢出。 一般情况下,不允许出现上溢出。 若出现上溢出,则进位标志(特殊内部继电器R9009)会变为ON。 有关详细内容,请参阅相关章节。 编程时的注意事项 示例说明 当触发器R0为ON时,数据寄存器DT11和DT12的内容与数据寄存器DT1和DT0的内容相加。 高16位 低16位 DT11 低16位 ( 加法 ) DT1 低16位 ( 结果 ) DT11 低16位DT10 DT0 DT10 指定的数据区与其后的数据区共同构成32位数据 运算结果的低16位存放于DT10,高16位存放于DT11 由S指定的8位BCD码等值常数或8位BCD码数据与D指定的8位BCD码数据相加。 被加数数据 加数数据 结果 (D:低4位) + (S:低4位) → (D:低4位) (D+1:高4位) (S+1:高4位) (D+1:高4位) 3-89 4位BCD数据加法 [S1+S2→D] 操作数 A: 可以使用 N/A: 不可使用 程序示例 概述 两个表示4位十进制数的BCD数据(4位BCD H码)相加,并将结果保存于指定区。 对于FP-M/FP0/FP1/FP-e/FPΣ,P型高级指令不适用。 F42(B+) P42(PB+) 10 11 ST R 0 F42 (B+) DT 10 DT 20 DT 30 4位BCD常数或4位BCD数据的低16位区(存放被除数)S1 地址 指令 梯形图程序 布尔形式 4位BCD常数或4位BCD数据的低16位区(存放加数) S2 WX WY WR WL(*1) SV EV DT LD(*1) FL(*2) IX(*3)IY(*4) K H S1 A A A A A A A A A A A A A A S2 A A A A A A A A A A A A A A D N/A A A A A A A A A A A N/A N/A A 操作数 索引变址 定时器/计数器 索引寄存器 常数继电器 数据寄存器 4位BCD数据的低16位区(存放结果) D 触发器 FP-e/FP0/FP∑/FP1/FP-M C20/C32/ FP2/FP2SH/FP3/FP10SH 适用机型 3-90 (*1)此处不适用FP-M、FP0、FP-e和FP1。 (*2)此处不适用FP-M、FP0、FP-e、FPΣ和FP1。 (*3)对于FPΣ、FP2、FP2SH和FP10SH,此处为I0至IC。 (*4)对于FPΣ、FP2、FP2SH和FP10SH,此处为ID。 由S1与S2指定的4位BCD等值常数或4位BCD数据的16位区相加。相加结果保存于D中。 被加数数据 加数数据 结果 (S1) + (S2) → (D) 描述 ·错误标志(R9007):以下情况时为ON并保持ON - 变址数指定区超限 - 数据不是BCD码 ·错误标志(R9008):以下情况时瞬间为ON - 变址数指定区超限 - 数据不是BCD码 ·=标志(R900B): 当计算结果被认为等于“0”时瞬间为ON。 ·进位标志(R9009):当计算结果超出4位BCD码的范围(上溢出)时瞬间为ON。 标志位状态 若一算术运算指令的结果超出可处理值范围,则会出现上溢出。 一般情况下,不允许出现上溢出。 若计算结果有时会上溢出,建议使用F43(DB+)(8位BCD数据加法)指令。 若出现上溢出,则进位标志(特殊内部继电器R9009)会变为ON。 有关详细内容,请参阅相关章节。 编程时的注意事项 示例说明 被加数[D]:H8(BCD) 当触发器R0为ON时,数据寄存器DT10和数据寄存器DT20的内容相加。相加结果存于数据寄存器DT30。 当DT10中为H(BCD)8、DT20中为H(BCD)4时,运算操作如下: 位址 15 . . 12 11 . . 8 7 . . 4 3 . . 0 DT10 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 BCD 十六进制 0 0 0 8 位址 15 . . 12 11 . . 8 7 . . 4 3 . . 0 DT20 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 BCD 十六进制 0 0 0 4 加数[S2]:H4(BCD) 加数 位址 15 . . 12 11 . . 8 7 . . 4 3 . . 0 DT30 0 0 0 0 0 0 0 0 0 0 0 1 0 0 1 0 BCD 十六进制 0 0 1 2 结果[D]:H12(BCD) 3-91 8位BCD数据加法 [(S1+1,S1)+(S2+1,S2) →(D+1,D)] 操作数 A: 可以使用 N/A: 不可使用 程序示例 概述 两个表示8位十进制数的BCD数据项(8位BCDH码)相加,并将结果存于指定区。 对于FP-M/FP0/FP1/FP-e/FPΣ,P型高级指令不适用。 F43(DB+) P43(PDB+) 10 11 ST R 0 F43 (DB+) DT 10 DT 20 DT 30 8位BCD常数或8位BCD数据的低16位区(存放被加数) S1 地址 指令 梯形图程序 布尔形式 8位BCD常数或8位BCD数据的低16位区(存放加数) S2 WX WY WR WL(*1) SV EV DT LD(*1) FL(*2) IX(*3)IY(*4) K H S1 A A A A A A A A A A N/A A A A S2 A A A A A A A A A A N/A A A A D N/A A A A A A A A A A N/A N/A N/A A 操作数 索引变址 定时器/计数器 索引寄存器 常数继电器 数据寄存器 触发器 8位BCD数据的低16位区(存放结果)D FP-e/FP0/FP∑/FP1/FP-M C20/C32/ FP2/FP2SH/FP3/FP10SH 适用机型 3-92 (*1)此处不适用FP-M、FP0、FP-e和FP1。 (*2)此处不适用FP-M、FP0、FP-e、FPΣ和FP1。 (*3)对于FPΣ、FP2、FP2SH和FP10SH,此处为I0至IC。 (*4)对于FPΣ、FP2、FP2SH和FP10SH,此处为ID。 描述 ·错误标志(R9007):以下情况时为ON并保持ON - 变址数指定区超限 - 数据不是BCD码 ·错误标志(R9008):以下情况时瞬间为ON - 变址数指定区超限 - 数据不是BCD码 ·=标志(R900B): 当计算结果被认为等于“0”时瞬间为ON。 ·进位标志(R9009):当计算结果超出8位BCD码的范围(上溢出)时瞬间为ON。 标志位状态 若一算术运算指令的结果超出可处理值范围,则会出现上溢出。 一般情况下,不允许出现上溢出。 若出现上溢出,则进位标志(特殊内部继电器R9009)会变为ON。 有关详细内容,请参阅相关章节。 编程时的注意事项 示例说明 当触发器R0为ON时,数据寄存器DT10和数据寄存器DT20的内容相加。相加结果存于数据寄存器DT30。 当DT10中为H(BCD)8、DT20中为H(BCD)4时,运算操作如下: 指定的数据区与其后的数据区 共同构成32位数据 运算结果的低16位存放于DT30, 高16位存放于DT31 高16位 低16位 DT11 DT10 ( 加 ) DT21 DT20 ( 结果 ) DT31 DT30 由S1与S2指定8位BCD等值常数或8位BCD数据相加,相加的结果存于D+1和D中。 被加数数据 加数数据 结果 (S1:低4位) + (S2:低4位) → (D:低4位) (S1+1:高4位) (S2+1:高4位) (D+1:高4位) 处理8位BCD数据时,只要指定低16位区(S,D),8位BCD数据(S+1,D+1)的高16位区就会自行确定。 3-93 4位BCD数据减法 [D-S→D] 操作数 A: 可以使用 N/A: 不可使用 程序示例 概述 将两个表示4位十进制数的BCD数据(4位BCD H码)相减。 对于FP-M/FP0/FP1/FP-e/FPΣ,P型高级指令不适用。 F45(B-) P45(PB-) 10 11 ST R 0 F45 (B-) DT 10 DT 20 4位BCD常数或4位BCD数据的16位区(减数) S 地址 指令 梯形图程序 布尔形式 4位BCD数的16位数据(存储被减数和结果) D WX WY WR WL(*1) SV EV DT LD(*1) FL(*2) IX(*3)IY(*4) K H S A A A A A A A A A A A A A A D N/A A A A A A A A A A A N/A N/A A 操作数 索引变址 定时器/计数器 索引寄存器 常数继电器 数据寄存器 示例说明 当触发器R0为ON时,数据寄存器DT10和数据寄存器DT20的内容相加。相加结果存于数据寄存器DT30。 当DT10中为H(BCD)8、DT20中为H(BCD)4时,运算操作如下: 触发器 FP-e/FP0/FP∑/FP1/FP-M C20/C32/ FP2/FP2SH/FP3/FP10SH 适用机型 3-94 (*1)此处不适用FP-M、FP0、FP-e和FP1。 (*2)此处不适用FP-M、FP0、FP-e、FPΣ和FP1。 (*3)对于FPΣ、FP2、FP2SH和FP10SH,此处为I0至IC。 (*4)对于FPΣ、FP2、FP2SH和FP10SH,此处为ID。 描述 ·错误标志(R9007):以下情况时为ON并保持ON - 变址数指定区超限 - 数据不是BCD码 ·错误标志(R9008):以下情况时瞬间为ON - 变址数指定区超限 - 数据不是BCD码 ·=标志(R900B): 当计算结果被认为等于“0”时瞬间为ON。 ·进位标志(R9009):当计算结果超出4位BCD码的范围(下溢出)时瞬间为ON。 标志位状态 若一算术运算指令的结果超出可处理值范围,则会出现下溢出。 一般情况下,不允许出现下溢出。 若计算结果有时会下溢出,建议使用F46(DB-)(8位BCD数据减法)指令。 若出现下溢出,则进位标志(特殊内部继电器R9009)会变为ON。 有关详细内容,请参阅相关章节。 编程时的注意事项 从由D指定的4位BCD码等值常数或4位BCD码数据的16位区减去由S指定的4位BCD码数据。 被减数数据 减数数据 结果 (D) - (S) → (D) 3-95 被减数[D]:H16(BCD) 减数[S]:H4(BCD) 结果[D]:H12(BCD) X0:ON 位址 15 . . 12 11 . . 8 7 . . 4 3 . . 0 DT11 0 0 0 0 0 0 0 0 0 0 0 1 0 1 1 0 BCD 十六进制码 0 0 1 6 位址 15 . . 12 11 . . 8 7 . . 4 3 . . 0 DT11 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 BCD 十六进制码 0 0 0 4 位址 15 . . 12 11 . . 8 7 . . 4 3 . . 0 DT11 0 0 0 0 0 0 0 0 0 0 0 1 0 0 1 0 BCD 十六进制码 0 0 1 2 8位BCD数据减法 [(D+1,D)-(S+1,S) →(D+1,D)] 操作数 A: 可以使用 N/A: 不可使用 程序示例 概述 将两个表示8位十进制数的BCD码数据(8位BCD H码)相减。 对于FP-M/FP0/FP1/FP-e/FPΣ,P型高级指令不适用。 F46(DB-) P46(PDB-) 10 11 ST R 0 F46 (DB-) DT 10 DT 20 8位BCD常数或8位BCD数据的16位区(存放被减数)S 地址 指令 梯形图程序 布尔形式 8位BCD数据的16位区 (被减数和结果) D WX WY WR WL(*1) SV EV DT LD(*1) FL(*2) IX(*3)IY(*4) K H S A A A A A A A A A A A A A A D N/A A A A A A A A A A N/A N/A N/A A 操作数 索引变址 定时器/计数器 索引寄存器 常数继电器 数据寄存器 触发器 FP-e/FP0/FP∑/FP1/FP-M C20/C32/ FP2/FP2SH/FP3/FP10SH 适用机型 3-96 (*1)此处不适用FP-M、FP0、FP-e和FP1。 (*2)此处不适用FP-M、FP0、FP-e、FPΣ和FP1。 (*3)对于FPΣ、FP2、FP2SH和FP10SH,此处为I0至IC。 (*4)对于FPΣ、FP2、FP2SH和FP10SH,此处为ID。 描述 ·错误标志(R9007):以下情况时为ON并保持ON - 变址数指定区超限 - 数据不是BCD码 ·错误标志(R9008):以下情况时瞬间为ON - 变址数指定区超限 - 数据不是BCD码 ·=标志(R900B): 当计算结果被认为等于“0”时瞬间为ON。 ·进位标志(R9009):当计算结果超出8位BCD码的范围(下溢出)时瞬间为ON。 标志位状态 若一算术运算指令的结果超出可处理值范围,则会出现下溢出。 一般情况下,不允许出现下溢出。 若出现下溢出,则进位标志(特殊内部继电器R9009)会变为ON。 有关详细内容,请参阅相关章节。 编程时的注意事项 从由D指定的8位BCD码等值常数或8位BCD码数据中减去由S指定的8位BCD码数据。 被减数数据 减数数据 结果 (D:低4位) - (S:低4位) → (D:低4位) (D+1:高4位) (S+1:高4位) (D+1:高4位) 示例说明 当触发器R0为ON时,数据寄存器DT10和数据寄存器DT20的内容相加。相加结果存于数据寄存器DT30。 当DT10中为H(BCD)8、DT20中为H(BCD)4时,运算操作如下: 指定的数据区与其后的数据区 共同构成32位数据 运算结果的低16位存放于DT20, 高16位存放于DT21 高16位 低16位 DT21 DT20 ( 减 ) DT11 DT10 ( 结果 ) DT21 DT20 3-97 4位BCD数据减法 [S1-S2→D] 操作数 A: 可以使用 N/A: 不可使用 程序示例 概述 两个表示4位十进制数的BCD数据(4位BCD H码)相减,并将结果保存于指定区。 对于FP-M/FP0/FP1/FP-e/FPΣ,P型高级指令不适用。 F47(B-) P47(PB-) 10 11 ST R 0 F47 (B-) DT 10 DT 20 DT 30 4位BCD常数或4位BCD数据的16位区(存放被减数)S1 地址 指令 梯形图程序 布尔形式 4位BCD常数或4位BCD数据的16位区(存放减数) S2 4位BCD数据的16位区(存放结果) D WX WY WR WL(*1) SV EV DT LD(*1) FL(*2) IX(*3)IY(*4) K H S1 A A A A A A A A A A A A A A S2 A A A A A A A A A A A A A A D N/A A A A A A A A A A A N/A N/A A 操作数 索引变址 定时器/计数器 索引寄存器 常数继电器 数据寄存器 触发器 FP-e/FP0/FP∑/FP1/FP-M C20/C32/ FP2/FP2SH/FP3/FP10SH 适用机型 3-98 (*1)此处不适用FP-M、FP0、FP-e和FP1。 (*2)此处不适用FP-M、FP0、FP-e、FPΣ和FP1。 (*3)对于FPΣ、FP2、FP2SH和FP10SH,此处为I0至IC。 (*4)对于FPΣ、FP2、FP2SH和FP10SH,此处为ID。 描述 ·错误标志(R9007):以下情况时为ON并保持ON - 变址数指定区超限 - 数据不是BCD码 ·错误标志(R9008):以下情况时瞬间为ON - 变址数指定区超限 - 数据不是BCD码 ·=标志(R900B): 当计算结果被认为等于“0”时瞬间为ON。 ·进位标志(R9009):当计算结果超出4位BCD码的范围(下溢出)时瞬间为ON。 标志位状态 若一算术运算指令的结果超出可处理值范围,则会出现下溢出。 一般情况下,不允许出现下溢出。 若计算结果有时会下溢出,建议使用F48(DB-)(8位BCD数据减法)指令。 若出现下溢出,则进位标志(特殊内部继电器R9009)会变为ON。 有关详细内容,请参阅相关章节。 编程时的注意事项 从由S1指定的4位BCD等值常数或4位BCD数据的16位区中减去由S2指定的4位BCD等值常数或4位BCD数据。 相减的结果保存于D中。 被减数数据 减数数据 结果 (S1) - (S2) → (D) 示例说明 当触发器R0为ON时,从数据寄存器DT10中减去数据寄存器DT20的内容。相减的结果存于数据寄存器DT30。 当DT10中为H(BCD)16、DT20中为H(BCD)4时,运算操作如下: 被减数[S1]:H16(BCD) 位址 15 . . 12 11 . . 8 7 . . 4 3 . . 0 DT10 0 0 0 0 0 0 0 0 0 0 0 1 0 1 1 0 BCD 码 0 0 1 6 位址 15 . . 12 11 . . 8 7 . . 4 3 . . 0 DT10 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 BCD 码 0 0 0 4 加数[S2]:H4(BCD) 减数 位址 15 . . 12 11 . . 8 7 . . 4 3 . . 0 DT10 0 0 0 0 0 0 0 0 0 0 0 1 0 0 1 0 BCD 码 0 0 1 2 结果[D]:H12(BCD) 3-99 8位BCD数据减法 [(S1+1,S1)-(S2+1,S2) →(D+1,D)] 操作数 A: 可以使用 N/A: 不可使用 程序示例 概述 两个表示8位十进制数的BCD数据项(8位BCDH码)相减,并将结果存于指定区。 对于FP-M/FP0/FP1/FP-e/FPΣ,P型高级指令不适用。 F48(DB-) P48(PDB+) 10 11 ST R 0 F48 (DB-) DT 10 DT 20 DT 30 8位BCD常数或8位BCD数据的16位区(存放被减数) S1 地址 指令 梯形图程序 布尔形式 8位BCD常数或8位BCD数据的16位区(存放减数) S2 8位BCD数据的低16位区(存放结果) D WX WY WR WL(*1) SV EV DT LD(*1) FL(*2) IX(*3)IY(*4) K H S1 A A A A A A A A A A N/A A A A S2 A A A A A A A A A A N/A A A A D N/A A A A A A A A A A N/A N/A N/A A 操作数 索引变址 定时器/计数器 索引寄存器 常数继电器 数据寄存器 触发器 FP-e/FP0/FP∑/FP1/FP-M C20/C32/ FP2/FP2SH/FP3/FP10SH 适用机型 3-100 (*1)此处不适用FP-M、FP0、FP-e和FP1。 (*2)此处不适用FP-M、FP0、FP-e、FPΣ和FP1。 (*3)对于FPΣ、FP2、FP2SH和FP10SH,此处为I0至IC。 (*4)对于FPΣ、FP2、FP2SH和FP10SH,此处为ID。 描述 ·错误标志(R9007):以下情况时为ON并保持ON - 变址数指定区超限 - 数据不是BCD码 ·错误标志(R9008):以下情况时瞬间为ON - 变址数指定区超限 - 数据不是BCD码 ·=标志(R900B): 当计算结果被认为等于“0”时瞬间为ON。 ·进位标志(R9009):当计算结果超出8位BCD码的范围(下溢出)时瞬间为ON。 标志位状态 若一算术运算指令的结果超出可处理值范围,则会出现下溢出。 一般情况下,不允许出现下溢出。 若出现下溢出,则进位标志(特殊内部继电器R9009)会变为ON。 有关详细内容,请参阅相关章节。 编程时的注意事项 从由S1指定8位BCD等值常数或8位BCD数据中减去由S2指定8位BCD等值常数或8位BCD数据,相减的结果存 于D+1和D中。 被减数数据 减数数据 结果 (S1:低4位) - (S2:低4位) → (D:低4位) (S1+1:高4位) (S2+1:高4位) (D+1:高4位) 处理8位BCD数据时,只要指定低16位区(S,D),8位BCD数据的高16位区(S+1,D+1)就会自行确定。 示例说明 当触发器R0为ON时,从数据寄存器DT11和DT10的内容中减去数据寄存器DT21和DT20的内容。相减的 结果存于数据寄存器DT31和DT30中。 指定的数据区与其后的数据区 共同构成32位数据 运算结果的低16位存放于DT30, 高16位存放于DT31 高16位 低16位 DT11 DT10 ( 减 ) DT21 DT20 ( 结果 ) DT31 DT30 3-101 4位BCD数据乘法 [S1×S2→(D+1,D)] 操作数 A: 可以使用 N/A: 不可使用 程序示例 概述 两个表示4位十进制数的BCD数据(4位BCD H码)相乘,并将结果保存于指定区。 对于FP-M/FP0/FP1/FP-e/FPΣ,P型高级指令不适用。 F50(B*) P50(PB*) 10 11 ST R 0 F50 (B*) DT 10 DT 20 DT 30 4位BCD常数或4位BCD数据的16位区(存放被乘数) S1 地址 指令 梯形图程序 布尔形式 4位BCD常数或4位BCD数据的16位区(存放乘数) S2 8位BCD数据的低16位区(存放结果) D WX WY WR WL(*1) SV EV DT LD(*1) FL(*2) IX(*3)IY(*4) K H S1 A A A A A A A A A A A A A A S2 A A A A A A A A A A A A A A D N/A A A A A A A A A A N/A N/A N/A A 操作数 索引变址 定时器/计数器 索引寄存器 常数继电器 数据寄存器 触发器 FP-e/FP0/FP∑/FP1/FP-M C20/C32/ FP2/FP2SH/FP3/FP10SH 适用机型 3-102 (*1)此处不适用FP-M、FP0、FP-e和FP1。 (*2)此处不适用FP-M、FP0、FP-e、FPΣ和FP1。 (*3)对于FPΣ、FP2、FP2SH和FP10SH,此处为I0至IC。 (*4)对于FPΣ、FP2、FP2SH和FP10SH,此处为ID。 描述 ·错误标志(R9007):以下情况时为ON并保持ON - 变址数指定区超限 - 数据不是BCD码 ·错误标志(R9008):以下情况时瞬间为ON - 变址数指定区超限 - 数据不是BCD码 ·=标志(R900B): 当计算结果被认为等于“0”时瞬间为ON。 标志位状态 若一算术运算指令的结果超出可处理值范围,则会出现下溢出。 一般情况下,不允许出现下溢出。 若出现下溢出,则进位标志(特殊内部继电器R9009)会变为ON。 有关详细内容,请参阅相关章节。 编程时的注意事项 由S1与S2指定的4位BCD等值常数或4位BCD数据的16位区相乘。相乘的结果保存于D+1和D中。 被乘数数据 乘数数据 结果 (S1) × (S2) → (D+1,D) 相乘的结果保存在32位(8位BCD码)数据中。 只要指定低16位区(D),8位BCD数据的高16位区(D+1)就会自行确定。 示例说明 当触发器R0为ON时,从数据寄存器DT11和DT10的内容中减去数据寄存器DT21和DT20的内容。相减的 结果存于数据寄存器DT31和DT30中。 被乘数[S1]:H8(BCD) 乘数[S2]:H2(BCD) R10:ON 位址 15 . . 12 11 . . 8 7 . . 4 3 . . 0 DT11 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 BCD 码 0 0 0 8 位址 15 . . 12 11 . . 8 7 . . 4 3 . . 0 DT11 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 BCD 码 0 0 0 2 位址 15 . . 12 11 . . 8 7 . . 4 3 . . 0 DT11 0 0 0 0 0 0 0 0 0 0 0 1 0 1 1 0 BCD 码 0 0 1 6 结果[D+1,D]:H16(BCD) 位址 15 . . 12 11 . . 8 7 . . 4 3 . . 0 DT11 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 BCD 码 0 0 0 0 低4 位(digit) 区高4位(digit) 区 3-103 8位BCD数据乘法 [(S1+1,S1)×(S2+1,S2) →(D+3,D+2,D+1,D)] 操作数 A: 可以使用 N/A: 不可使用 程序示例 概述 两个表示8位十进制数的BCD数据(8位BCD H码)相乘,并将结果保存于指定区。 对于FP-M/FP0/FP1/FP-e/FPΣ,P型高级指令不适用。 F51(DB*) P51(PDB*) 10 11 ST R 0 F51 (DB*) DT 10 DT 20 DT 30 8位BCD常数或8位BCD数据的16位区(存放被乘数)S1 地址 指令 梯形图程序 布尔形式 8位BCD常数或8位BCD数据的16位区(存放乘数) S2 16位BCD数据的16位区(存放结果)D WX WY WR WL(*1) SV EV DT LD(*1) FL(*2) IX(*3)IY(*4) K H S1 A A A A A A A A A A N/A A A A S2 A A A A A A A A A A N/A A A A D N/A A A A A A A A A N/A N/A N/A N/A A 操作数 索引变址 定时器/计数器 索引寄存器 常数继电器 数据寄存器 触发器 FP-e/FP0/FP∑/FP1 C24/C40 C56/C72/ FP-M C20/C34/FP2/FP2SH/FP3/FP10SH 适用机型 3-104 (*1)此处不适用FP-M、FP0、FP-e和FP1。 (*2)此处不适用FP-M、FP0、FP-e、FPΣ和FP1。 (*3)对于FPΣ、FP2、FP2SH和FP10SH,此处为I0至IC。 (*4)对于FPΣ、FP2、FP2SH和FP10SH,此处为ID。 描述 ·错误标志(R9007):以下情况时为ON并保持ON - 变址数指定区超限 - 数据不是BCD码 ·错误标志(R9008):以下情况时瞬间为ON - 变址数指定区超限 - 数据不是BCD码 ·=标志(R900B): 当计算结果被认为等于“0”时瞬间为ON。 标志位状态 由S1与S2指定的8位BCD码等值常数或8位BCD码数据的16位区相乘。相乘的结果保存于D+3、D+2、D+1和D中。 被乘数数据 乘数数据 结果 (S1+1,S1) × (S2+1,S2) → (D+3,D+2,D+1,D) 相乘的结果保存在64位(16位BCD码)数据中。 处理8位BCD码时,只要指定低16位区(S1,S2),8位BCD数据的高16位区(S1+1,S2+1)就会自行确定。 指定最低16位区(D)后,其余的数据区(D+3,D+2,D+1)也自动确定。 示例说明 DT11 DT10 DT21 DT20 DT10 DT31 DT30DT33 DT32 指定的数据区与其后的数据区共 同构成32位数据 64位的乘法运算结果,从最低的 16位开始顺序存放于DT30~DT33 3-105 4位BCD数据除法 [S1/S2→D…(DT9015/DT90015)] 操作数 A: 可以使用 N/A: 不可使用 程序示例 概述 4位BCD码数据除法。 对于FP-M/FP0/FP1/FP-e/FPΣ,P型高级指令不适用。 F52(B%) P52(PB%) 10 11 ST R 0 F52 (B%) DT 10 DT 20 DT 30 4位BCD数据或存放BCD数据的16位区(被除数) S1 地址 指令 梯形图程序 布尔形式 4位BCD数据或存放BCD数据的16位区(除数)S2 BCD数据的16位区(存放商). (余数存放在特殊数据寄存器DT9015/DT90015中)D WX WY WR WL(*1) SV EV DT LD(*1) FL(*2) IX(*3)IY(*4) K H S1 A A A A A A A A A A A A A A S2 A A A A A A A A A A A A A A D N/A A A A A A A A A A A N/A N/A A 操作数 索引变址 定时器/计数器 索引寄存器 常数继电器 数据寄存器 触发器 FP-e/FP0/FP∑/FP1/FP-M C20/C32/ FP2/FP2SH/FP3/FP10SH 适用机型 3-106 (*1)此处不适用FP-M、FP0、FP-e和FP1。 (*2)此处不适用FP-M、FP0、FP-e、FPΣ和FP1。 (*3)对于FPΣ、FP2、FP2SH和FP10SH,此处为I0至IC。 (*4)对于FPΣ、FP2、FP2SH和FP10SH,此处为ID。 描述 将由S1指定的4位BCD码数据或等值常数除以由S2指定的4位BCD码数据或等值常数。商存放在D中,余数 存放在DT9015(对于FP0 T32/FPΣ/FP2/FP2SH/FP10SH为DT90015)。 被除数数据 除数数据 商 余数 (S1) ÷ (S2) → (D) (DT9015/DT90015) 对于FP-C、FP-M、FP0、FP1、FPΣ、FP2、FP2SH、FP3和FP10SH,特殊数据寄存器的编号不同(编号的最 后3位相同)。 FP-C、FP-M、FP0、FP-e、FP1和FP3:DT9015 FP0 T32/FPΣ/FP2、FP2SH和FP10SH:DT90015 示例说明 当触发器R0为ON时,用数据寄存器DT10的内容除以十进制常数DT20,商保存在数据寄存器DT30中, 余数保存在特殊数据寄存器DT9015中(对于FP0 T32/FPΣ/FP2/FP2SH/FP10SH,为DT90015)。 当DT10中为H15(BCD)、DT20中为H4(BCD)时,运算操作如下: 被除数[S1]:H15(BCD) 除数[S2]:H4(BCD) X0:ON 位址 15 . . 12 11 . . 8 7 . . 4 3 . . 0 DT11 0 0 0 0 0 0 0 0 0 0 0 1 0 1 0 1 BCD 码 0 0 1 5 位址 15 . . 12 11 . . 8 7 . . 4 3 . . 0 DT11 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 BCD 码 0 0 0 4 位址 15 . . 12 11 . . 8 7 . . 4 3 . . 0 DT11 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 BCD 码 0 0 0 3 商[D]:H3(BCD) 位址 15 . . 12 11 . . 8 7 . . 4 3 . . 0 DT9015/DT90015 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 BCD 码 0 0 0 3 余数:H3(BCD) 3-107 ·错误标志(R9007):以下情况时为ON并保持ON - 变址数指定区超限 - 数据不是BCD码 - 作为除数的4位BCD常数或数据(由S2指定)为0。 ·错误标志(R9008):以下情况时瞬间为ON - 变址数指定区超限 - 数据不是BCD码 - 作为除数的4位BCD常数或数据(由S2指定)为0。 ·=标志(R900B): 当计算结果被认为等于“0”时瞬间为ON。 标志位状态 3-108 8位BCD数据除法 [(S1+1,S1)×(S2+1,S2)→(D+1,D)… (DT9016,DT9015)或(DT90016,DT90015)] 操作数 A: 可以使用 N/A: 不可使用 程序示例 概述 将一个表示8位十进制数的BCD数据(8位BCD H码)除以另一同类数据(除数)。 对于FP-M/FP0/FP1/FP-e/FPΣ,P型高级指令不适用。 F53(DB%) F53(PDB%) 10 11 ST R 0 F53 (DB%) DT 10 DT 20 DT 30 8位BCD数据或存放8位BCD数据的低16位区(被除数) S1 地址 指令 梯形图程序 布尔形式 8位BCD数据或存放8位BCD数据的低16位区(除数) S2 8位BCD数据的16位区(存放商) (余数存放在特殊数据寄存器DT9016和DT9015或DT90016和DT90015中)D WX WY WR WL(*1) SV EV DT LD(*1) FL(*2) IX(*3)IY(*4) K H S1 A A A A A A A A A A N/A A A A S2 A A A A A A A A A A N/A A A A D N/A A A A A A A A A A N/A N/A N/A A 操作数 索引变址 定时器/计数器 索引寄存器 常数继电器 数据寄存器 触发器 FP-e/FP0/FP∑/FP1 C24/C40 C56/C72/ FP-M C20/C34/FP2/FP2SH/FP3/FP10SH 适用机型 3-109 (*1)此处不适用FP-M、FP0、FP-e和FP1。 (*2)此处不适用FP-M、FP0、FP-e、FPΣ和FP1。 (*3)对于FPΣ、FP2、FP2SH和FP10SH,此处为I0至IC。 (*4)对于FPΣ、FP2、FP2SH和FP10SH,此处为ID。 描述 ·错误标志(R9007):以下情况时为ON并保持ON - 变址数指定区超限 - 数据不是BCD码 ·错误标志(R9008):以下情况时瞬间为ON - 变址数指定区超限 - 数据不是BCD码 ·=标志(R900B): 当计算结果被认为等于“0”时瞬间为ON。 标志位状态 由S1指定的8位BCD常数或者8位BCD数据被由S2指定的8位BCD常数或者8位BCD数据除,商被存储在D+1,D 中,余数存储在DT9016和DT9015(对于FP0 T32/FPΣ/FP2/FP2SH/FP10SH为DT90016和DT90015). 被除数数据 除数数据 结果 (S1:低4位) ÷ (S2:低4位) → (D:低4位) (S1+1:高4位) (S2+1:高4位) (D+1:高4位) 处理32位数据时,只要指定低16位区(S1,S2,D),就会自动确定高16位区(S1+1,S2+1,D+1)。 对于FP-C、FP-M、FP0、FP1、FP0 T32、FPΣ、FP2、FP2SH、FP3和FP10SH,特殊数据寄存器的编号不 同(编号的最后3位相同)。 FP-C、FP-M、FP0、FP1和FP3:DT9016、DT9015 FP0 T32、FPΣ、FP2、FP2SH和FP10SH:DT90016、DT90015 示例说明 商的数据存放在DT31和DT30。 余数的低16位存放在DT9015/DT90015,高16位存放在 DT9016/DT90016。 高16位 低16位 DT11 DT10 DT21 DT20 DT31 DT30 DT9016/DT90016 DT30DT9015/DT90015 3-110 4位BCD数据增1 [D+1→D] 操作数 A: 可以使用 N/A: 不可使用 程序示例 概述 表示一个4位十进制数的BCD数据(4位BCDH码)加1。 对于FP-M/FP0/FP1, P型高级指令不适用。 F55(B+1) P55(PB+1) 10 11 ST R 0 F55 (B+1) DT 0 被加1的4位BCD数据的16位区D 地址 指令 梯形图程序 布尔形式 WX WY WR WL(*1) SV EV DT LD(*1) FL(*2) IX(*3)IY(*4) K H S1 A A A A A A A A A A A A A A S2 A A A A A A A A A A A A A A D N/A A A A A A A A A A A N/A N/A A 操作数 索引变址 定时器/计数器 索引寄存器 常数继电器 数据寄存器 触发器 示例说明 当触发器R0为ON时,数据寄存器DT0的内容加1。 源[D]:H9(BCD) +1 位址 15 . . 12 11 . . 8 7 . . 4 3 . . 0 DT11 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 1 BCD 码 0 0 0 9 位址 15 . . 12 11 . . 8 7 . . 4 3 . . 0 DT11 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 BCD 码 0 0 1 0 结果[D]:H10(BCD) FP-e/FP0/FP∑/FP1/FP-M C20/C32/ FP2/FP2SH/FP3/FP10SH 适用机型 3-111 (*1)此处不适用FP-M、FP0、FP-e和FP1。 (*2)此处不适用FP-M、FP0、FP-e、FPΣ和FP1。 (*3)对于FPΣ、FP2、FP2SH和FP10SH,此处为I0至IC。 (*4)对于FPΣ、FP2、FP2SH和FP10SH,此处为ID。 描述 由D指定的4位BCD码数据加1。结果保存于D中。 源数据 结果 (D) + 1 → (D) ·错误标志(R9007):以下情况时为ON并保持ON - 变址数指定区超限 - 数据不是BCD码 ·错误标志(R9008):以下情况时瞬间为ON - 变址数指定区超限 - 数据不是BCD码 ·=标志(R900B): 当计算结果被认为等于“0”时瞬间为ON。 ·进位标志(R9009):当计算结果超出4位BCD码的范围(上溢出)时瞬间为ON。 标志位状态 若一算术运算指令的结果超出可处理值范围,则会出现上溢出。 一般情况下,不允许出现上溢出。 若计算结果有时会上溢出,建议使用F56(DB+1)(8位BCD数据增1)指令。 若出现上溢出,则进位标志(特殊内部继电器R9009)会变为ON。 有关详细内容,请参阅相关章节。 编程时的注意事项 3-112 8位BCD数据增1 [( D+1,D)+1→(D+1,D)] 操作数 A: 可以使用 N/A: 不可使用 程序示例 概述 表示8位十进制数的BCD数据(8位BCD H码)加1。 对于FP-M/FP0/FP1/FP-e/FPΣ,P型高级指令不适用。 F56(DB+1) F56(PDB+1) 10 11 ST R 0 F56 (DB+1) DT 0 被加1的8位BCD数据的低16位区D 地址 指令 梯形图程序 布尔形式 WX WY WR WL(*1) SV EV DT LD(*1) FL(*2) IX(*3)IY(*4) K H D N/A A A A A A A A A A N/A N/A N/A A 操作数 索引变址 定时器/计数器 索引寄存器 常数继电器 数据寄存器 示例说明 当触发器R0为ON时,数据寄存器DT1和DT0的内容(8位BCD码数据)增1。 高16位 低16位 DT1 DT0 DT1 DT0 指定的数据区与其后的数据区共同构成32位数据 触发器 FP-e/FP0/FP∑/FP1/FP-M C20/C32/ FP2/FP2SH/FP3/FP10SH 适用机型 3-113 (*1)此处不适用FP-M、FP0、FP-e和FP1。 (*2)此处不适用FP-M、FP0、FP-e、FPΣ和FP1。 (*3)对于FPΣ、FP2、FP2SH和FP10SH,此处为I0至IC。 (*4)对于FPΣ、FP2、FP2SH和FP10SH,此处为ID。 描述 由D指定的8位BCD数据加1。结果保存于D+1和D中。 初始数据 结果 (D+1,D) + 1 → (D+1,D) ·错误标志(R9007):以下情况时为ON并保持ON - 变址数指定区超限 - 数据不是BCD码 ·错误标志(R9008):以下情况时瞬间为ON - 变址数指定区超限 - 数据不是BCD码 ·=标志(R900B): 当计算结果被认为等于“0”时瞬间为ON。 ·进位标志(R9009):当计算结果超出8位BCD码的范围(上溢出)时瞬间为ON。 标志位状态 若一算术运算指令的结果超出可处理值范围,则会出现上溢出。 一般情况下,不允许出现上溢出。 若出现上溢出,则进位标志(特殊内部继电器R9009)会变为ON。 有关详细内容,请参阅相关章节。 编程时的注意事项 3-114 4位BCD数据减1 [(D-1)→D] 操作数 A: 可以使用 N/A: 不可使用 程序示例 概述 表示一个4位十进制数的BCD数据(4位BCDH码)减1。 对于FP-M/FP0/FP1/FP-e/FPΣ,P型高级指令不适用。 F57(B-1) P57(PB-1) 10 11 ST R 0 F57 (B-1) DT 0 存放被减1的BCD数据的低16位区D 地址 指令 梯形图程序 布尔形式 WX WY WR WL(*1) SV EV DT LD(*1) FL(*2) IX(*3)IY(*4) K H D N/A A A A A A A A A A A N/A N/A A 操作数 索引变址 定时器/计数器 索引寄存器 常数继电器 数据寄存器 示例说明 当触发器R0为ON时,数据寄存器DT0的内容减1。 源[D]:H10(BCD) -1 位址 15 . . 12 11 . . 8 7 . . 4 3 . . 0 DT11 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 BCD 码 0 0 1 0 位址 15 . . 12 11 . . 8 7 . . 4 3 . . 0 DT11 0 0 0 0 0 0 0 0 0 0 0 1 1 0 0 1 BCD 码 0 0 0 9 结果[D]:H9(BCD) 触发器 FP-e/FP0/FP∑/FP1/FP-M C20/C32/ FP2/FP2SH/FP3/FP10SH 适用机型 3-115 (*1)此处不适用FP-M、FP0、FP-e和FP1。 (*2)此处不适用FP-M、FP0、FP-e、FPΣ和FP1。 (*3)对于FPΣ、FP2、FP2SH和FP10SH,此处为I0至IC。 (*4)对于FPΣ、FP2、FP2SH和FP10SH,此处为ID。 描述 由D指定的4位BCD码数据减1。结果保存于D中。 源数据 结果 (D) - 1 → (D) ·错误标志(R9007):以下情况时为ON并保持ON - 变址数指定区超限 - 数据不是BCD码 ·错误标志(R9008):以下情况时瞬间为ON - 变址数指定区超限 - 数据不是BCD码 ·=标志(R900B): 当计算结果被认为等于“0”时瞬间为ON。 ·进位标志(R9009):当计算结果超出4位BCD码的范围(下溢出)时瞬间为ON。 标志位状态 若一算术运算指令的结果超出可处理值范围,则会出现下溢出。 一般情况下,不允许出现下溢出。 若计算结果有时会下溢出,建议使用F58(DB-1)(8位BCD数据减1)指令。 若出现下溢出,则进位标志(特殊内部继电器R9009)会变为ON。 有关详细内容,请参阅相关章节。 编程时的注意事项 3-116 8位BCD数据减1 [( D+1,D)-1→(D+1,D)] 操作数 A: 可以使用 N/A: 不可使用 程序示例 概述 表示8位十进制数的BCD数据(8位BCD H码)减1。 对于FP-M/FP0/FP1/FP-e/FPΣ,P型高级指令不适用。 F58(DB-1) F58(PDB-1) 10 11 ST R 0 F58 (DB-1) DT 0 存放被减1的8位BCD数据的低16位区D 地址 指令 梯形图程序 布尔形式 WX WY WR WL(*1) SV EV DT LD(*1) FL(*2) IX(*3)IY(*4) K H D N/A A A A A A A A A A N/A N/A N/A A 操作数 索引变址 定时器/计数器 索引寄存器 常数继电器 数据寄存器 示例说明 当触发器R0为ON时,数据寄存器DT1和DT0的内容(8位BCD码数据)减1。 高16位 低16位 DT1 DT0 DT1 DT0 指定的数据区与其后的数据区共同构成32位数据 触发器 FP-e/FP0/FP∑/FP1/FP-M C20/C32/ FP2/FP2SH/FP3/FP10SH 适用机型 3-117 (*1)此处不适用FP-M、FP0、FP-e和FP1。 (*2)此处不适用FP-M、FP0、FP-e、FPΣ和FP1。 (*3)对于FPΣ、FP2、FP2SH和FP10SH,此处为I0至IC。 (*4)对于FPΣ、FP2、FP2SH和FP10SH,此处为ID。 描述 由D指定的8位BCD数据减1。结果保存于D+1和D中。 源数据 结果 (D+1,D) - 1 → (D+1,D) ·错误标志(R9007):以下情况时为ON并保持ON - 变址数指定区超限 - 数据不是BCD码 ·错误标志(R9008):以下情况时瞬间为ON - 变址数指定区超限 - 数据不是BCD码 ·=标志(R900B): 当计算结果被认为等于“0”时瞬间为ON。 ·进位标志(R9009):当计算结果超出8位BCD码的范围(下溢出)时瞬间为ON。 标志位状态 若一算术运算指令的结果超出可处理值范围,则会出现下溢出。 一般情况下,不允许出现下溢出。 若出现下溢出,则进位标志(特殊内部继电器R9009)会变为ON。 有关详细内容,请参阅相关章节。 编程时的注意事项 3-118 16位数据比较 操作数 A: 可以使用 N/A: 不可使用 程序示例 概述 对两个指定的16位数据进行比较,并将结果输出到特殊内部继电器。 对于FP-M/FP0/FP1/FP-e/FPΣ,P型高级指令不适用。 F60(CMP) P60(PCMP) 40 41 46 47 48 49 50 51 52 53 54 ST R 0 F60 (CMP) DT 0 K 100 ST R 0 AN R 900A OT Y 10 ST R 0 AN R 900B OT Y 11 ST R 0 AN R 900C OT Y 12 被比较的16位常数或存放数据的16位区S1 地址 指令 梯形图程序 布尔形式 WX WY WR WL(*1) SV EV DT LD(*1) FL(*2) IX(*3)IY(*4) K H S1 A A A A A A A A A A A A A A S2 A A A A A A A A A A A A A A 操作数 索引变址 定时器/计数器 索引寄存器 常数继电器 数据寄存器 触发器 被比较的16位常数或存放数据的16位区S2 FP-e/FP0/FP∑/FP1/FP-M/FP2/ FP2SH/FP3/FP10SH 适用机型 3-119 (*1)此处不适用FP-M、FP0、FP-e和FP1。 (*2)此处不适用FP-M、FP0、FP-e、FPΣ和FP1。 (*3)对于FPΣ、FP2、FP2SH和FP10SH,此处为I0至IC。 (*4)对于FPΣ、FP2、FP2SH和FP10SH,此处为ID。 描述 比较由S1和S2指定的两个32位数据。比较结果输出给特殊内部继电器R9009、R900A、R900B和R900C。 以下表格表示进位标志(R9009)、>标志(R900A)、=标志(R900B)、<标志(R900C)与(S1+1,S1)、(S2+1, S2)之间的关系。 示例说明 当触发器R0为ON时,将数据寄存器DT11和DT10构成的32位数据与数据寄存器DT1和DT0的内容 (32位)进行比较。 当(DT1和DT0)>(DT11和DT10)时,R900A为ON,且外部输出继电器Y10为ON。 当(DT1和DT0)>(DT11和DT10)时,R900B为ON,且外部输出继电器Y11为ON。 当(DT1和DT0)>(DT11和DT10)时,R900C为ON,且外部输出继电器Y12为ON。 R900A(>标志) R900B(=标志) R900C(<标志) R9009(进位标志) S1S2 ON OFF OFF A S1和S2比较关系 标志位 在此程序示例中,只有当R0为ON时,才执行比较指令。 如果需要始终进行比较,则应使用常闭继电器R9010作为执行条件(触发器)。 执行条件(触发器) 保持为ON 此种情况下,R9010可以不用 : 表示根据情况ON或OFF 3-120 使用两个或两个以上的比较指令时的注意事项 比较指令标志R900A至R900C,随着各比较指令的执行而更新。 若在程序中使用两个或两个以上比较的指令,则一定在每个比较指令之后立即使用输出继电器或 内部继电器。 示例:将DT0中的数据与K100、DT1中的数据与K200进行比较。 程序a)的比较结果在程序b)中被输出到输出继电器(Y10,Y11和Y12)。 程序c)的比较结果在程序d)中被输出到输出继电器(Y13,Y14和Y15)。 3-121 也可以使用PSHS,RDS和POPS指令对上面的电路进行编程。 本程序的运行与前页的程序示例的相同。 比较BCD或外部数据时的注意事项 对特殊数据诸如BCD或无符号二进制数(0至FFFF)进行比较时,应使用特殊内部继电器R900B 和R9009,按照下列程序示例表编制程序。 R900A(>标志) R900B(=标志) R900C(<标志) R9009(进位标志) S1S2 OFF OFF S1与S2比较关系 标志位 例如,当S1=H8000,S2=H1000时,R900A将为OFF,R900C将为ON。因此,在程序中使用R900A和R900C 将无法得到正确的比较结果。 示例:比较DT0和DT1中的BCD数据。 比较BCD或无符号16位数据(0至FFFF)时标志位的状况 : 表示根据情况ON或OFF ·错误标志(R9007):在变址数指定区超限时为ON并保持ON。 ·错误标志(R9008):在变址数指定的区超限时瞬间为ON。 标志位状态 S1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 BCD 8 0 0 0 S2 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 BCD 1 0 0 0 3-122 32位数据比较 操作数 A: 可以使用 N/A: 不可使用 程序示例 概述 对两个指定的32位数据进行比较,并将结果输出到特殊内部继电器。 对于FP-M/FP0/FP1/FP-e/FPΣ,P型高级指令不适用。 F61(DCMP) P61(PDCMP) 50 51 60 61 62 63 64 65 66 67 68 ST R 0 F61 (DCMP) DT 0 DT 10 ST R 0 AN R 900A OT Y 10 ST R 0 AN R 900B OT Y 11 ST R 0 AN R 900C OT Y 12 被比较的32位常数或存放32位数据的低16位区S1 地址 指令 梯形图程序 布尔形式 WX WY WR WL(*1) SV EV DT LD(*1) FL(*2) IX(*3)IY(*4) K H S1 A A A A A A A A A A A A A A S2 A A A A A A A A A A A A A A 操作数 索引变址 定时器/计数器 索引寄存器 常数继电器 数据寄存器 触发器 被比较的32位常数或存放32位数据的低16位区S2 FP-e/FP0/FP∑/FP1/FP-M/FP2/ FP2SH/FP3/FP10SH 适用机型 3-123 (*1)此处不适用FP-M、FP0、FP-e和FP1。 (*2)此处不适用FP-M、FP0、FP-e、FPΣ和FP1。 (*3)对于FPΣ、FP2、FP2SH和FP10SH,此处为I0至IC。 (*4)对于FPΣ、FP2、FP2SH和FP10SH,此处为ID。 描述 比较由S1和S2指定的两个32位数据。比较结果输出给特殊内部继电器R9009、R900A、R900B和 R900C。 以下表格表示进位标志(R9009)、>标志(R900A)、=标志(R900B)、<标志(R900C)与(S1+1,S1)、 (S2+1,S2)之间的关系。 示例说明 当触发器R0为ON时,将数据寄存器DT11和DT10构成的32位数据与数据寄存器DT1和DT0的 内容(32位)进行比较。 当(DT1和DT0)>(DT11和DT10)时,R900A为ON,且外部输出继电器Y10为ON。 当(DT1和DT0)>(DT11和DT10)时,R900B为ON,且外部输出继电器Y11为ON。 当(DT1和DT0)>(DT11和DT10)时,R900C为ON,且外部输出继电器Y12为ON。 R900A(>标志) R900B(=标志) R900C(<标志) R9009(进位标志) (S1+1,S1)<(S2+1,S2) OFF OFF ON A (S1+1,S1)=(S2+1,S2) OFF ON OFF OFF (S1+1,S1)>(S2+1,S2) ON OFF OFF A (S1+1,S1)与(S2+1,S2)比较关系 标志位 在此程序示例中,只有当R0为ON时,才执行比较指令。 如果需要始终进行比较,则应使用常闭继电器R9010作为执行条件(触发器)。 执行条件(触发器) 也可以使用PSHS,RDS和POPS指令对上面的电路进行编程。 本程序的运行与前一程序示例的相同。 保持为ON : 表示根据情况ON或OFF 处理32位数据时,只要指定低16位区(S1,S2),高16位区(S1+1,S2+1)就会自动确定。 此种情况下,R9010可以不用 3-124 使用两个或两个以上的比较指令时的注意事项 比较指令标志R900A至R900C,随着各比较指令的执行而更新。 若在程序中使用两个或两个以上比较的指令,则一定在每个比较指令之后立即采用输出继电器或内部 继电器。 示例:将DT1和DT0与DT11和DT10、DT3和DT2与DT21和DT20进行比较。 程序a)的比较结果在程序b)中被输出到输出继电器(Y10,Y11和Y12)。 程序c)的比较结果在程序d)中被输出到输出继电器(Y13,Y14和Y15)。 3-125 比较BCD或外部数据时的注意事项 对特殊数据诸如BCD或无符号二进制数(0至FFFFFFFF)进行比较时,应使用特殊内部继电器 R900A、R900B、 R900C和R9009,按照下列程序示例表编制程序。 R900A(>标志) R900B(=标志) R900C(<标志) R9009(进位标志) (S1+1,S1)<(S2+1,S2) OFF ON (S1+1,S1)=(S2+1,S2) OFF ON OFF OFF (S1+1,S1)>(S2+1,S2) OFF OFF (S1+1,S1)与(S2+2,S2)比较关系 标志位 例如,当S1=H80000000(K-214783648),S2=H10000001(K+268435457)时,执行F61(DCMP)指令,R900A 将为OFF,R900C将为ON。因此,在程序中使用R900A和R900C将无法得到正确的比较结果。 示例:比较(DT1,DT0)和(DT11,DT10)中的BCD数据。 比较BCD或无符号16位数据(0至FFFFFFFF)时标志位的状况 : 表示根据情况ON或OFF ·错误标志(R9007):在变址数指定区超限时为ON并保持ON。 ·错误标志(R9008):在变址数指定的区超限时瞬间为ON。 标志位状态 e)…当(DT1,DT0)<(DT11,DT10)时,内部继电器R0为ON f)…当(DT1,DT0)=(DT11,DT10)时,内部继电器R1为ON g)…当(DT1,DT0)>(DT11,DT10)时,内部继电器R2为ON 3-126 16位数据区段比较 操作数 A:可以使用 程序示例 概述 对带符号的16位数据在另两个16位数据之间进行区段比较,将判定结果输出 到特殊内部继电器。 对于FP-M/FP0/FP1/FP-e/FPΣ,P型高级指令不适用。 F62(WIN) P62(PWIN) 50 51 58 59 60 61 62 63 64 65 66 ST R 0 F62 (WIN) DT 10 DT 20 DT 30 ST R 0 AN R 900A OT Y 10 ST R 0 AN R 900B OT Y 11 ST R 0 AN R 900C OT Y 12 要比较的16位常数或16位区S1 地址 指令 梯形图程序 布尔形式 WX WY WR WL(*1) SV EV DT LD(*1) FL(*2) IX(*3)IY(*4) K H S1 A A A A A A A A A A A A A A S2 A A A A A A A A A A A A A A S3 A A A A A A A A A A A A A A 操作数 索引变址 定时器/计数器 索引寄存器 常数继电器 数据寄存器 触发器 下限的16位常数或16位数据区S2 低限位 高限位 上限的16位常数或16位数据区S2 FP-e/FP0/FP∑/FP1/FP-M/FP2/ FP2SH/FP3/FP10SH 适用机型 3-127 (*1)此处不适用FP-M、FP0、FP-e和FP1。 (*2)此处不适用FP-M、FP0、FP-e、FPΣ和FP1。 (*3)对于FPΣ、FP2、FP2SH和FP10SH,此处为I0至IC。 (*4)对于FPΣ、FP2、FP2SH和FP10SH,此处为ID。 描述 比较由S1指定的16位等值常数或16位数据与由S2和S3指定的数据区段。本指令可以检查S1是否在S2(下 限值)与S3(上限值)之间的数据区段中,是否大于S3或小于S2。比较结果输出到特殊内部继电器R9009、 R900A、R900B和R900C。 下表列出了R9009、R900A、R900B和R900C的状态。 示例说明 当触发器R0时,将数据寄存器DT10的内容与数据寄存器DT20(数值区段的下限)和数据寄 存器DT30( 数值区段的上限)的内容进行比较。 R900A(>标志) R900B(=标志) R900C(<标志) R9009(进位标志) S1标志) R900B(=标志) R900C(<标志) R9009(进位标志) (S1+1,S1)<(S2+1,S2) OFF OFF ON ── (S2+1,S2)≦(S1+1,S1)≦(S3+1,S3) OFF ON OFF ── (S3+1,S3)<(S1+1,S1) ON OFF OFF ── 标志位 示例:当DT21和DT20中为K-50000在、DT31和DT30中为K50000时, 如下所示: 当(DT11,DT10)为K-68000时,R900C为ON且外部输出继电器Y12为ON。 当(DT11,DT10)为K-50000时,R900B为ON且外部输出继电器Y11为ON。 当(DT11,DT10)为K25600时,R900B为ON且外部输出继电器Y11为ON。 当(DT11,DT10)为K68000时,R900A为ON且外部输出继电器Y10为ON。 ·错误标志(R9007):在以下情况时为ON并保持ON。 - 在变址数指定区超限 - (S2+1,S2)>(S3+1,S3) ·错误标志(R9008):在以下情况时瞬间为ON。 - 在变址数指定区超限 - S2+1,S2)>(S3+1,S3) 标志位状态 应使下限值(S2+1,S2)不大于上限值(S3+1,S3)[(S2+1,S2)≤(S3+1,S3)]。 编程时的注意事项 3-130 数据块比较 操作数 程序示例 概述 以字节为单位将一个指定数据块与另一指定数据块进行比较。 对于FP-M/FP0/FP1/FP-e/FPΣ,P型高级指令不适用。 F64(BCMP) P64(PBCMP) 10 11 18 19 20 ST R 0 F64 (BCMP) DT 10 DT 20 DT 30 ST R 0 AN R 900B OT R 1 16位常数或16位区(指定起始字节位置和要比较的字节数) S1 地址 指令 梯形图程序 布尔形式 WX WY WR WL(*1) SV EV DT LD(*1) FL(*2) IX(*3)IY(*4) K H S1 A A A A A A A A A A A A A A S2 A A A A A A A A A N/A N/A N/A N/A A S3 A A A A A A A A A N/A N/A N/A N/A A 操作数 索引变址 定时器/计数器 索引寄存器 常数继电器 数据寄存器 触发器 要比较的起始的16位区S2 S2 A: 可以使用 N/A: 不可使用 FP-e/FP0/FP∑/FP1 C24/C40 C56/C72/ FP-M C20/C32/FP2/FP2SH/FP3/FP10SH 适用机型 3-131 要比较的结束的16位区 (*1)此处不适用FP-M、FP0、FP-e和FP1。 (*2)此处不适用FP-M、FP0、FP-e、FPΣ和FP1。 (*3)对于FPΣ、FP2、FP2SH和FP10SH,此处为I0至IC。 (*4)对于FPΣ、FP2、FP2SH和FP10SH,此处为ID。 描述 根据S1指定的内容,比较S2指定的数据块的内容与S3指定的数据块的内容。 当比较结果为S2=S3时,特殊内部继电器R900B(=标志)为ON。 S1是用于指定比较范围等的控制数据。 示例说明 当触发器R0为ON时,根据数据寄存器DT0中的比较条件,将数据寄存器DT10(DT10由低位字节起的4个 字节)的数据块与数据寄存器DT20(由DT20高位字节起的4个字节)的数据块进行对比。当两数据块相 同时,内部继电器R0为ON。 当DT0中为H1004、两数据块如下时: 从由S2指定的低字节开始的4个字节与S3指定的高字节开始的4个字进行比较时,应指定S1为H1004 如何指定控制数据“S1” 高位字节 低位字节 由S2指定 数据块 由S3指定 数据块 比较 比较4个字节 (32位) 由S2的低位字节开始 由S3的高位字节开始 比较区 被比较的字节数 范围:H01到H99(BCD) 由S2指定数据块的起始字节位址 1:从高位字节开始 2:从低位字节开始 由S3指定数据块的起始字节位址 1:从高位字节开始 2:从低位字节开始 设置示例 3-132 注释 如上述程序中所示,触发器(R0或R1)一定要在标记R900B之前使用。但是,如果使用 R9010(常闭触点),则不必在R900B之前使用触发器。 ·错误标志(R9007):在以下情况时为ON并保持ON。 在变址数指定区超限 对于FP-C/FP2/FP2SH/FP3/FP10SH,S2>S3 对于FP-M/FP0/FP1,S1指定的数据不是BCD码数据 指定的数据块区域超出范围 ·错误标志(R9008):在以下情况时瞬间为ON。 在变址数指定区超限 对于FP-C/FP2/FP2SH/FP3/FP10SH,S2>S3 对于FP-M/FP0/FP1,S1指定的数据不是BCD码数据 指定的数据块区域超出范围 标志位状态 每次执行一个比较指令时,用于比较指令的标志R900B也更新。 因此: - 程序应在F64(BCMP)指令之后立即使用R900B。 - 应输出到输出继电器或内部继电器以保存结果。 编程时的注意事项 F64的结果 F60的结果 3-133 16位数据逻辑与 操作数 A: 可以使用 N/A: 不可使用 程序示例 概述 对两个16位数据进行按位进行“与”运算。 对于FP-M/FP0/FP1/FP-e/FPΣ,P型高级指令不适用。 F65(WAN) P65(PWAN) 10 11 ST R 0 F65 (WAN) DT 10 DT 20 DT 30 16位常数或16位区S1 地址 指令 梯形图程序 布尔形式 示例说明 当触发器R0为ON时,对数据寄存器DT10和DT20中的各个位进行“与”运算。“与”运算的结果保存在 数据寄存器DT30中。 [S1] R0:ON 位址 15 . . 12 11 . . 8 7 . . 4 3 . . 0 DT20 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 触发器 16位常数或16位区S2 存储与(AND)操作结果的16位区D WX WY WR WL(*1) SV EV DT LD(*1) FL(*2) IX(*3)IY(*4) K H S1 A A A A A A A A A A A A A A S2 A A A A A A A A A A A A A A D N/A A A A A A A A A A A N/A N/A A 操作数 索引变址 定时器/计数器 索引寄存器 常数继电器 数据寄存器 [S2] 位址 15 . . 12 11 . . 8 7 . . 4 3 . . 0 DT30 0 0 0 0 0 0 0 0 1 0 1 1 1 0 0 1 [D] 位址 15 . . 12 11 . . 8 7 . . 4 3 . . 0 DT10 0 1 0 0 1 1 0 1 1 0 1 1 1 0 0 1 FP-e/FP0/FP∑/FP1/FP-M/FP2/ FP2SH/FP3/FP10SH 适用机型 3-134 (*1)此处不适用FP-M、FP0、FP-e和FP1。 (*2)此处不适用FP-M、FP0、FP-e、FPΣ和FP1。 (*3)对于FPΣ、FP2、FP2SH和FP10SH,此处为I0至IC。 (*4)对于FPΣ、FP2、FP2SH和FP10SH,此处为ID。 描述 对由S1和S2指定的16位等值常数或16位数据中的各个位进行逻辑“与”运算。 “与”运算结果保存于D指定的16位区。 (S1)∧(S2)→(D) 可以使用本指令将16位数据的某些位的数据复位。 ·错误标志(R9007):在变址数指定区超限时为ON并保持ON。 ·错误标志(R9008):在变址数指定的区超限时瞬间为ON。 ·=标志(R900B): 当计算结果被认为等于“0”时瞬间为ON。 标志位状态 “与”运算表示如下。 “与”运算 S1 S2 D 0 0 0 0 1 0 1 0 0 1 1 1 3-135 16位数据逻辑或 操作数 A: 可以使用 N/A: 不可使用 程序示例 概述 对两个16位数据进行按位进行“或”运算。 对于FP-M/FP0/FP1/FP-e/FPΣ,P型高级指令不适用。 F66(WOR) P66(PWOR) 10 11 ST R 0 F66 (WOR) DT 10 DT 20 DT 30 16位常数或16位区S1 地址 指令 梯形图程序 布尔形式 示例说明 当触发器R0为ON时,对数据寄存器DT10和DT20中的各个位进行“或”运算。“或”运算的结果保存在 数据寄存器DT30中。 [S1] R0:ON 位址 15 . . 12 11 . . 8 7 . . 4 3 . . 0 DT20 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 触发器 16位常数或16位区S2 存储或(OR)操作结果的16位区D WX WY WR WL(*1) SV EV DT LD(*1) FL(*2) IX(*3)IY(*4) K H S1 A A A A A A A A A A A A A A S2 A A A A A A A A A A A A A A D N/A A A A A A A A A A A N/A N/A A 操作数 索引变址 定时器/计数器 索引寄存器 常数继电器 数据寄存器 [S2] 位址 15 . . 12 11 . . 8 7 . . 4 3 . . 0 DT30 0 1 0 0 1 1 0 1 1 1 1 1 1 1 1 1[D] 位址 15 . . 12 11 . . 8 7 . . 4 3 . . 0 DT10 0 1 0 0 1 1 0 1 1 0 1 1 1 0 0 1 FP-e/FP0/FP∑/FP1/FP-M/FP2/ FP2SH/FP3/FP10SH 适用机型 3-136 (*1)此处不适用FP-M、FP0、FP-e和FP1。 (*2)此处不适用FP-M、FP0、FP-e、FPΣ和FP1。 (*3)对于FPΣ、FP2、FP2SH和FP10SH,此处为I0至IC。 (*4)对于FPΣ、FP2、FP2SH和FP10SH,此处为ID。 描述 对由S1和S2指定的16位等值常数或16位数据中的各个位进行“或”运算。 “或”运算的结果保存于D指定的16位区。 (S1)∨(S2)→(D) 可以使用本指令将16位数据的某些位的数据置位。 ·错误标志(R9007):在变址数指定区超限时为ON并保持ON。 ·错误标志(R9008):在变址数指定的区超限时瞬间为ON。 ·=标志(R900B): 当计算结果被认为等于“0”时瞬间为ON。 标志位状态 “或”运算表示如下。 “或”运算 S1 S2 D 0 0 0 0 1 1 1 0 1 1 1 1 3-137 16位数据逻辑异或 操作数 A: 可以使用 N/A: 不可使用 程序示例 概述 对两个16位数据进行按位进行“异或”运算。 对于FP-M/FP0/FP1/FP-e/FPΣ,P型高级指令不适用。 10 11 ST R 0 F67 (XOR) DT 10 DT 20 DT 30 16位常数或16位区S1 地址 指令 梯形图程序 布尔形式 示例说明 当触发器R0为ON时,对数据寄存器DT10和DT20中的各个位进行“异或”运算。“异或”运算的结果保存在 数据寄存器DT30中。 [S1] R0:ON 位址 15 . . 12 11 . . 8 7 . . 4 3 . . 0 DT20 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 触发器 16位常数或16位区S2 存储异或(XOR)操作结果的16位区D WX WY WR WL(*1) SV EV DT LD(*1) FL(*2) IX(*3)IY(*4) K H S1 A A A A A A A A A A A A A A S2 A A A A A A A A A A A A A A D N/A A A A A A A A A A A N/A N/A A 操作数 索引变址 定时器/计数器 索引寄存器 常数继电器 数据寄存器 [S2] 位址 15 . . 12 11 . . 8 7 . . 4 3 . . 0 DT30 0 1 0 0 1 1 0 1 0 1 0 0 0 1 1 0 [D] 位址 15 . . 12 11 . . 8 7 . . 4 3 . . 0 DT10 0 1 0 0 1 1 0 1 1 0 1 1 1 0 0 1 FP-e/FP0/FP∑/FP1/FP-M/FP2/ FP2SH/FP3/FP10SH 适用机型 3-138 F67(XOR) P67(PXOR) (*1)此处不适用FP-M、FP0、FP-e和FP1。 (*2)此处不适用FP-M、FP0、FP-e、FPΣ和FP1。 (*3)对于FPΣ、FP2、FP2SH和FP10SH,此处为I0至IC。 (*4)对于FPΣ、FP2、FP2SH和FP10SH,此处为ID。 描述 对由S1和S2指定的16位等值常数或16位数据中的各个位进行“异或”运算。 “异或”运算的结果保存于D指定的16位区。 {(S1)∧NOT(S2)} ∨ {NOT(S1)∧(S2)} →(D) 可以使用本指令检查数据位的ON/OFF状态是否一致。 如果S1与S2的数值相等,则由D指定的数据中的所有位都为0。 ·错误标志(R9007):在变址数指定区超限时为ON并保持ON。 ·错误标志(R9008):在变址数指定的区超限时瞬间为ON。 ·=标志(R900B): 当计算结果被认为等于“0”时瞬间为ON。 标志位状态 “异或”运算表示如下。 “异或”运算 S1 S2 D 0 0 0 0 1 1 1 0 1 1 1 0 3-139 16位数据逻辑异或非 操作数 A: 可以使用 N/A: 不可使用 程序示例 概述 对两个16位数据进行按位进行“异或非”(同或)运算。 对于FP-M/FP0/FP1/FP-e/FPΣ,P型高级指令不适用。 F68(XNR) P68(PXNR) 10 11 ST R 0 F68 (XNR) DT 10 DT 20 DT 30 16位常数或16位区S1 地址 指令 梯形图程序 布尔形式 示例说明 当触发器R0为ON时,对数据寄存器DT10和DT20中的各个位进行“异或非”运算。“异或非”运算的结果 保存在数据寄存器DT30中。 [S1] R0:ON 位址 15 . . 12 11 . . 8 7 . . 4 3 . . 0 DT20 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 触发器 16位常数或16位区S2 存储异或非(XNR)操作结果的16位区 WX WY WR WL(*1) SV EV DT LD(*1) FL(*2) IX(*3)IY(*4) K H S1 A A A A A A A A A A A A A A S2 A A A A A A A A A A A A A A D N/A A A A A A A A A A A N/A N/A A 操作数 索引变址 定时器/计数器 索引寄存器 常数继电器 数据寄存器 [S2] 位址 15 . . 12 11 . . 8 7 . . 4 3 . . 0 DT30 1 0 1 1 0 0 1 0 1 0 1 1 1 0 0 1 [D] 位址 15 . . 12 11 . . 8 7 . . 4 3 . . 0 DT10 0 1 0 0 1 1 0 1 1 0 1 1 1 0 0 1 FP-e/FP0/FP∑/FP1/FP-M/FP2/ FP2SH/FP3/FP10SH 适用机型 3-140 D (*1)此处不适用FP-M、FP0、FP-e和FP1。 (*2)此处不适用FP-M、FP0、FP-e、FPΣ和FP1。 (*3)对于FPΣ、FP2、FP2SH和FP10SH,此处为I0至IC。 (*4)对于FPΣ、FP2、FP2SH和FP10SH,此处为ID。 描述 对由S1和S2指定的16位等值常数或16位数据中的各个位进行“异或非”(同或)运算。 “异或非”运算的结果保存于D指定的16位区。 {(S1)∧(S2)} ∨ {NOT(S1)∧NOT(S2)} →(D) 可以使用本指令检查数据位的ON/OFF状态是否一致。 如果S1与S2的数值相等,则由D指定的数据中的所有位都为1。 ·错误标志(R9007):在变址数指定区超限时为ON并保持ON。 ·错误标志(R9008):在变址数指定的区超限时瞬间为ON。 ·=标志(R900B): 当计算结果被认为等于“0”时瞬间为ON。 标志位状态 “异或非”运算表示如下。 “异或非”运算 S1 S2 D 0 0 1 0 1 0 1 0 0 1 1 1 3-141 字(16位)数据结合 操作数 A: 可以使用 N/A: 不可使用 程序示例 概述 将两个16位数据结合。 F69(WUNI) P69(PWUNI) 10 11 ST R 0 F69 (WUN) DT 10 DT 20 DT 30 DT 40 16位常数或16位区S1 地址 指令 梯形图程序 布尔形式 示例说明 当触发器R0为ON时,对数据寄存器DT10和DT20中的各个数据按DT30的指定进行组合。结果保存在数据寄 存器DT40中。 触发器 16位常数或16位区S2 16位区存储要组合运算的数据或16位常数 WX WY WR WL SV EV DT LD FL (*1) K H f S1 A A A A A A A A A A A N/A A N/A S2 A A A A A A A A A A A N/A A N/A S3 A A A A A A A A A A A N/A A N/A D N/A A A A A A A A A N/A N/A N/A A N/AA 常数 A 整型参数索引变址 A A 操作数 定时器/计数器 索引寄存器继电器 数据寄存器 I FP∑/FP2/FP2SH/FP10SH 适用机型 3-142 (*1) FP∑不可用 S3 D 16位区存放计算结果 描述 将分别由S1和S2指定的两组16位等值常数或16位数据、根据由S3指定的数据掩码、结合并存放于D指定 的数据区。 {(S1)∧(S3)} ∨ {(S2)∧NOT(S3)} →(D) 如果S3为H0,则将S2的内容存放到D。 如果S3为HFFFF,则将S1的内容存放到D。 ·错误标志(R9007):在变址数指定区超限时为ON并保持ON。 ·错误标志(R9008):在变址数指定的区超限时瞬间为ON。 ·=标志(R900B): 当计算结果被认为等于“0”时瞬间为ON。 标志位状态 3-143 取反 区块校验码(BCC)计算 操作数 A: 可以使用 N/A: 不可使用 程序示例 概述 计算区块校验码(BCC) 对于FP-M/FP0/FP1/FP-e/FPΣ,P型高级指令不适用。 F70(BCC) P70(PBCC) 10 11 ST R 0 F70 (XNR) DT 10 DT 20 DT 30 16位常数或16位区(区块校验码(BCC)的计算方法)S1 地址 指令 梯形图程序 布尔形式 示例说明 当触发器R0为ON时,通过“异或”运算,计算由数据寄存器DT0起始的12位字节的ASCII码数据的区块 校验码(BCC)。 区块校验码(BCC)保存于数据寄存器DT6的低位字节中。 触发器 计算BCC的起始的16位区S2 WX WY WR WL(*1) SV EV DT LD(*1) FL(*2) IX(*3)IY(*4) K H S1 A A A A A A A A A A A A A A S2 A A A A A A A A A N/A N/A N/A N/A A S3 A A A A A A A A A A A A A A D N/A A A A A A A A A N/A N/A N/A N/A A 操作数 索引变址 定时器/计数器 索引寄存器 常数继电器 数据寄存器 16位常数或16位区(指定BCC计算的字节数)S3 FP-e/FP0/FP∑/FP1 C24/C40 C56/C72/ FP-M C20/C32/FP2/FP2SH/FP3/FP10SH 适用机型 3-144 D 存储BCC结果的16位区 (*1)此处不适用FP-M、FP0、FP-e和FP1。 (*2)此处不适用FP-M、FP0、FP-e、FPΣ和FP1。 (*3)对于FPΣ、FP2、FP2SH和FP10SH,此处为I0至IC。 (*4)对于FPΣ、FP2、FP2SH和FP10SH,此处为ID。 描述 根据由S1指定的计算方法、从由S2指定的16位数据开始、计算由S3指定的字节数的ASCII码的区块校验 码(BCC)。BCC码的结果存放在由D指定的16位数据的低字节。(BCC为1个字节,D的高字节数据不变。) S1:指定BCC码的计算方法 K0: 加运算 K1: 减运算 K2: 异或运算 S2和S3:指定目标数据 例如,若以从DT0开始的12字节数据为目标,则设置如下: S2:DT0 S3的内容:K12(以十进制指定数据) ·错误标志(R9007):在以下情况时为ON并保持ON。 在变址数指定区超限 指定的字节数量超出指定的数据区范围。 ·错误标志(R9008):在以下情况时瞬间为ON。 在变址数指定区超限 指定的字节数量超出指定的数据区范围。 标志位状态 应用示例 在本例中,计算出BCC码并且添加在“%01→RCSX0000”字符串之后作为信息发送。 数据传输采用ASCII码形式进行。 BCC计算采用逻辑异或。 信息存放如下: 数据寄存器 ASCII十六进制码 3 0 3 0 3 0 3 0 5 8 5 3 4 3 5 2 2 3 3 1 3 0 2 5 ASCII码 %R # 1 0 DT6 DT5 DT4 DT3 DT2 DT1 DT0 0 0 0 0 X S C BCC校验码 12字节 F70(BCC)指令如下: F70 BCC, K2, DT0, K12, DT6 S1:逻辑异或 S2:目标数据起始 S3:目标数据长度 D: 计算结果 执行以后,BCC码(H 1D)保存于D的DT6最末字节中。 3-145 如何计算区块校验码(BBC) 对各个ASCII码采用“异或”计算区块校验码(BCC)。 S1 S2 D 0 0 1 0 1 1 1 0 1 1 1 0 0 0 1 0 0 1 0 1 % ASCII二进制码 ASCII十六进制码 2 5 执行或运算 异或运算 异或运算 异或运算 异或运算 异或运算 异或运算 异或运算 异或运算 异或运算 异或运算 BCC校验码 本计算结果(H1D)保存于DT6的低位字节。 3-146 0 0 1 1 0 0 0 0 0 ASCII二进制码 ASCII十六进制码 3 0 0 0 1 1 0 0 0 1 1 ASCII二进制码 ASCII十六进制码 3 1 0 0 1 0 0 0 1 1 # ASCII二进制码 ASCII十六进制码 2 3 0 1 0 1 0 0 1 0 R ASCII二进制码 ASCII十六进制码 5 2 0 1 0 0 0 0 1 1 C ASCII二进制码 ASCII十六进制码 4 3 0 1 0 1 0 0 1 1 S ASCII二进制码 ASCII十六进制码 5 3 0 1 0 1 1 0 0 0 X ASCII二进制码 ASCII十六进制码 5 8 0 0 1 0 0 1 0 1 2 5ASCII十六进制码 ASCII二进制码 0 0 1 1 0 0 0 0 0 ASCII二进制码 ASCII十六进制码 3 0 0 0 1 1 0 0 0 0 0 ASCII二进制码 ASCII十六进制码 3 0 0 0 1 1 0 0 0 0 0 ASCII二进制码 ASCII十六进制码 3 0 0 0 1 1 0 0 0 0 0 ASCII二进制码 ASCII十六进制码 3 0 十六进制数据→ ASCII码 操作数 A: 可以使用 N/A: 不可使用 程序示例 概述 将16位数据转换为表示等值十六进制数的ASCII码。 对于FP-M/FP0/FP1/FP-e/FPΣ,P型高级指令不适用。 F71(HEXA) P71(PHEXA) 10 11 ST R 0 F71 (HEXA) DT 0 K 2 DT 10 16位数的起始16位区(源区) S1 地址 指令 梯形图程序 布尔形式 触发器 指定将要转换的源区数据的字节数的16位常数或16位区S2 存储ASCII码的起始的16位区(目的区)D WX WY WR WL(*1) SV EV DT LD(*1) FL(*2) IX(*3)IY(*4) K H S1 A A A A A A A A A N/A N/A N/A N/A A S2 A A A A A A A A A A A A A A D N/A A A A A A A A A N/A N/A N/A N/A A 操作数 索引变址 定时器/计数器 索引寄存器 常数继电器 数据寄存器 FP-e/FP0/FP∑/FP1 C24/C40 C56/C72/ FP-M C20/C32/FP2/FP2SH/FP3/FP10SH 适用机型 3-147 示例说明 当触发器R0为ON时,将储存在DT0中的两个字节的数据转换为以16进制表示的ASCII码。转换后的数据 存放在DT11和DT10中。 (*1)此处不适用FP-M、FP0、FP-e和FP1。 (*2)此处不适用FP-M、FP0、FP-e、FPΣ和FP1。 (*3)对于FPΣ、FP2、FP2SH和FP10SH,此处为I0至IC。 (*4)对于FPΣ、FP2、FP2SH和FP10SH,此处为ID。 描述 将由S指定的16位数据转换为以16进制表示的ASCII码。 转换后的数据存放在从D开始的区域中。 由S2指定待转换的数据字节数。 因为一个16进制的字符需要用一个字节(8位)表示,所以转换后的数据长度将加倍。 ·错误标志(R9007):在以下情况时为ON并保持ON。 - 在变址数指定区超限 - S2指定的字节数量超出S1指定的数据区范围 - 转换的结果超出D指定的数据区范围 - S2指定的数值等于“0” ·错误标志(R9008):在以下情况时瞬间为ON。 - 在变址数指定区超限 - S2指定的字节数量超出S1指定的数据区范围 - 转换的结果超出D指定的数据区范围 - S2指定的数值等于“0” 标志位状态 位址 15 . . 12 11 . . 8 7 . . 4 3 . . 0 二进制 1 0 1 0 1 0 1 1 1 1 0 0 1 1 0 1 十六进制 DT0 A B C D ASCII十六进制码 十六进制 DT11 DT10 4 4 3 B A D C 4 2 4 1 4 编程时的注意事项 在存放数据时,两个字符的位置互换。 两个字节构成一个数据。 十六进制数据 转换结果 十六进制数据 转换 结果 3-148 转换示例 以下所示为十六进制数据与ASCII码的转换。 四个字节数据的转换(S2=K4) 表达十六进制字符的ASCII十六进制码 EF 12 AB CD 十六进制数据 S1+1 S1 4位字节 F71(HEXA)指令执行 46 45 32 31 42 41 44 43 转换结果 D+3 D+2 D+1 D F E 2 1 B A D C S1+1转换的结果 S1转换的结果 三个字节数据的转换(S2=K3) 由于是“字节”作为单位指定的,因此在需要时可以只转换一个字的最后一个字节的数据。 十六进制 ASCII十六进制码 0 H30 1 H31 2 H32 3 H33 4 H34 5 H35 6 H36 7 H37 8 H38 9 H39 A H41 B H42 C H43 D H44 E H45 12 AB CD 十六进制数据 S1+1 S1 3位字节 F71(HEXA)指令执行 32 31 42 41 44 43 转换结果 D+2 D+1 D 2 1 B A D C 3-149 ASCII码→十六进制数据 操作数 A: 可以使用 N/A: 不可使用 程序示例 概述 将表示十六进制字符的ASCII码转换为十六进制数据。 对于FP-M/FP0/FP1/FP-e/FPΣ,P型高级指令不适用。 10 11 ST R 0 F72 (AHEX) DT 0 K 4 DT 40 存储ASCII码的起始的16位区(源区) S1 地址 指令 梯形图程序 布尔形式 触发器 存放指定将要的源区数据的字节数的16位常数或16位区S2 存储转换后的数据的起始16位区(目的区)D WX WY WR WL(*1) SV EV DT LD(*1) FL(*2) IX(*3)IY(*4) K H S1 A A A A A A A A A N/A N/A N/A N/A A S2 A A A A A A A A A A A A A A D N/A A A A A A A A A N/A N/A N/A N/A A 操作数 索引变址 定时器/计数器 索引寄存器 常数继电器 数据寄存器 FP-e/FP0/FP∑/FP1 C24/C40 C56/C72/ FP-M C20/C32/FP2/FP2SH/FP3/FP10SH 适用机型 3-150 F72(AHEX) P72(PAHEX) (*1)此处不适用FP-M、FP0、FP-e和FP1。 (*2)此处不适用FP-M、FP0、FP-e、FPΣ和FP1。 (*3)对于FPΣ、FP2、FP2SH和FP10SH,此处为I0至IC。 (*4)对于FPΣ、FP2、FP2SH和FP10SH,此处为ID。 描述 从由S1指定的16位区开始,将以S2指定的数量的表示十六进制字符的ASCII码转换为十六进制数。转 换后的数据保存在由D指定的十六位区开始的区内。 结果(十六进制数字数据)的数量为被转换的ASCII码的长度的一半。 ·错误标志(R9007):在以下情况时为ON并保持ON。 - 在变址数指定区超限 - S2指定的字节数量超出S1指定的数据区范围 - 转换的结果超出D指定的数据区范围 - S2指定的数值等于“0” - 指定的ASCII码不是十六进制的数字(0~F) ·错误标志(R9008):在以下情况时瞬间为ON。 - 在变址数指定区超限 - S2指定的字节数量超出S1指定的数据区范围 - 转换的结果超出D指定的数据区范围 - S2指定的数值等于“0” - 指定的ASCII码不是十六进制的数字(0~F) 标志位状态 示例说明 当触发器R0为ON时,将保存于数据寄存器DT0和DT1中的4个ASCII码转换为十六进制数。转换后的数据 保存于数据寄存器DT40中。 位址 15 . . 12 11 . . 8 7 . . 4 3 . . 0 二进制 1 1 0 0 1 1 0 1 1 0 1 0 1 0 1 1 十六进制 DT0 C D A B ASCII十六进制码 十六进制 44 4 4 3 D C B A DT1 DT0 2 4 1 编程时的注意事项 由于两个ASCII码的数据转换为一个数字中的两个数字位,在这种情况下,高位与低位字节的字符位置互换。 四个字符作为一个数据段转换。 十六进制数据 转换 结果 3-151 转换示例 下列所示为ASCII码转换为十六进制数据情况 8个字符的转换(S2=K8) 32 31 46 45 44 43 42 41 ASCII码 S1+3 S1+2 S1+1 S1 8个字符(8位字节) F72(AHEX)指令执行 12 EF CD AB 转换结果 D+1 D 7个字符的转换(S2=K7) 31 46 45 44 43 42 41 ASCII码 S1+3 S1+2 S1+1 S1 7个字符(7位字节) F72(AHEX)指令执行 10 EF CD AB 转换结果 D+1 D 2 1 F E D C B A S1+3,S1+2转换结果 S1+1,S1转换结果 1 F E D C B A 此位填充”0” 46 45 44 43 42 41 ASCII码 S1+2 S1+1 S1 6个字符(6位字节) F72(AHEX)指令执行 EF CD AB 转换结果 D+1 D F E D C B A 6个字符的转换(S2=K6) S1+2转换结果 S1+1,S1转换结果 在转换结果中,只有最低字节的数据存放在D+1字中。高字节的数据与原来一样,未发生 转换。 注释 3-152 转换结果按字节单位存储。 若转换的数量为奇数,则转换结果的最后数据(字节)的数据位0至3将输入“0”。 ASCII十六进制码转换成十六进制字符 ASCII十六进制码 十六进制 H30 0 H31 1 H32 2 H33 3 H34 4 H35 5 H36 6 H37 7 H38 8 H39 9 H41 A H42 B H43 C H44 D H45 E ASCII码 转换结果 转换 结果 此位置填充”0” n=S2(奇数) 3-153 BCD数据→ASCII码 操作数 A: 可以使用 N/A: 不可使用 程序示例 概述 将4位BCD码转换为表示十进制数的ASCII码。 对于FP-M/FP0/FP1/FP-e/FPΣ,P型高级指令不适用。 F73(BCDA) P73(PBCDA) 10 11 ST R 0 F73 (BCDA) DT 0 H 4 DT 10 存放BCD数据的起始16位区(源区) S1 地址 指令 梯形图程序 布尔形式 触发器 指定将要转换的源区数据的字节数和安排转换的16位常数或16位区S2 存储转换结果的起始16位区(目的区) D WX WY WR WL(*1) SV EV DT LD(*1) FL(*2) IX(*3)IY(*4) K H S1 A A A A A A A A A N/A N/A N/A N/A A S2 A A A A A A A A A A A A A A D N/A A A A A A A A A N/A N/A N/A N/A A 操作数 索引变址 定时器/计数器 索引寄存器 常数继电器 数据寄存器 FP-e/FP0/FP∑/FP1 C24/C40 C56/C72/ FP-M C20/C32/FP2/FP2SH/FP3/FP10SH 适用机型 3-154 (*1)此处不适用FP-M、FP0、FP-e和FP1。 (*2)此处不适用FP-M、FP0、FP-e、FPΣ和FP1。 (*3)对于FPΣ、FP2、FP2SH和FP10SH,此处为I0至IC。 (*4)对于FPΣ、FP2、FP2SH和FP10SH,此处为ID。 描述 从由S1指定的16位区开始,将由S2指定的表示十进制字符的BCD数据转换为ASCII码。转换数据存储 在从D指定的16位区开始的数据区内。 最多可转换4个字节(8个字符的数据)。 S2用于指定源数据的字节数量和转换数据的方向(正向/反向)。 转换成ASCII码后数据长度为BCD源数据长度的两倍。 示例说明 当触发器R0为ON时,将存储于数据寄存器DT0中的表示4位十进制数的BCD码(4位BCD H码)转换为ASCII 码。转换数据存储于数据寄存器DT0和DT1中。 当S2=H2(正向,2字节转换)时 ASCII十六进制码 ASCII码 DT11 DT10 4 3 3 2 1 4 3 33 2 3 1 BCD码 DT0 1 2 3 4 BCD码 DT0 1 2 3 4 当S2=H1002(反向,2字节转换)时 ASCII十六进制码 ASCII码 33 4 3 3 4 3 2 1 DT11 DT10 2 3 1 3-155 ·错误标志(R9007):在以下情况时为ON并保持ON。 - 在变址数指定区超限 - S1指定的数据不是BCD码数据 - S2指定的字节数量超出S1指定的数据区范围 - 转换的结果超出D指定的数据区范围 - S2指定的数值等于“0” - S2指定的字节数量大于H4 ·错误标志(R9008):在以下情况时瞬间为ON。 - 在变址数指定区超限 - S1指定的数据不是BCD码数据 - S2指定的字节数量超出S1指定的数据区范围 - 转换的结果超出D指定的数据区范围 - S2指定的数值等于“0” - S2指定的字节数量大于H4 标志位状态 编程时的注意事项 构成一个字节的两个字符在保存时交换位置。 两个字节转换为一个数据字段。 如何指定S2 S2 = H □ 0 0 □ BCD码的字节数 H1:1字节(表示2位十进制数的BCD码) H2:2字节(表示4位十进制数的BCD码) H3:3字节(表示6位十进制数的BCD码) H4:4字节(表示8位十进制数的BCD码) 数据转换方向 H0:正向 H1:反向 因为能够以字节单位指定源数据,所以可以只将S1的低位字节转换为ASCII码。关于转换方向的信息, 参考“示例说明”。 正方向 反方向 转换 结果 3-156 转换示例 以下显示为BCD数据到ASCII码的转换。 4个字节的正向转换(S2=H0004) 12 34 56 78 BCD码 S1+1 S1 4字节 F73(BCDA)指令执行 32 31 34 33 36 35 38 37 转换结果 D+3 D+2 D+1 D ASCII十六进制码 ASCII码 4个字节的反向转换(S2=H1004) 12 34 56 78 S1+1 S1 BCD码 4字节 F73(BCDA)指令执行 S1+1转换结果 S1转换结果 2 1 4 3 6 5 8 7 38 37 36 35 34 33 32 31 转换结果 D+3 D+2 D+1 D ASCII十六进制码 ASCII码 S1转换结果 S1+1转换结果 8 7 6 5 4 3 2 1 ASCII十六进制码转换成BCD码 BCD码 ASCII十六进制码 0 H30 1 H31 2 H32 3 H3 4 H34 5 H35 6 H36 7 H37 8 H38 9 H39 3-157 ASCII码数据→BCD数据 操作数 A: 可以使用 N/A: 不可使用 程序示例 概述 将表示十进制数的ASCII码转换为BCD码。 对于FP-M/FP0/FP1/FP-e/FPΣ,P型高级指令不适用。 F74(ABCD) P74(PABCD) 10 11 ST R 0 F74 (ABCD) DT 0 H 8 DT 40 存放ASCII码的起始16位区(源区) S1 地址 指令 梯形图程序 布尔形式 触发器 指定将要转换的源区数据的字节数和安排转换的16位常数或16位区S2 存储转换结果的起始16位区(目的区) D WX WY WR WL(*1) SV EV DT LD(*1) FL(*2) IX(*3)IY(*4) K H S1 A A A A A A A A A N/A N/A N/A N/A A S2 A A A A A A A A A A A A A A D N/A A A A A A A A A N/A N/A N/A N/A A 操作数 索引变址 定时器/计数器 索引寄存器 常数继电器 数据寄存器 FP-e/FP0/FP∑/FP1 C24/C40 C56/C72/ FP-M C20/C32/FP2/FP2SH/FP3/FP10SH 适用机型 3-158 (*1)此处不适用FP-M、FP0、FP-e和FP1。 (*2)此处不适用FP-M、FP0、FP-e、FPΣ和FP1。 (*3)对于FPΣ、FP2、FP2SH和FP10SH,此处为I0至IC。 (*4)对于FPΣ、FP2、FP2SH和FP10SH,此处为ID。 描述 将从由S1指定的16位区开始的、表示十进制的ASCII码,根据S2的指定,转换为BCD码。转换数据存储在 从D指定的16位区开始的数据区内。 最多可转换8个字符的数据。 S2用于指定源数据的字节数量和转换数据的方向(正向/反向)。 转换成BCD码后数据长度为源ASCII数据长度的一半。 示例说明 当触发器R0为ON时,将存储于数据寄存器DT1和DT0中的表示十进制数的ASCII码转换为的BCD码。转换的 结果存储于数据寄存器DT40。 当S2=H4(正向,4字节转换)时 ASCII十六进制码 ASCII码 33 4 3 3 4 3 2 1 DT1 DT0 2 3 1 BCD码 3 4 1 2 DT40 BCD码 1 2 3 4 DT40 当S2=H1004(反向,4字节转换)时 ASCII十六进制码 ASCII码 DT1 DT0 2 3 1 4 3 2 1 33 4 3 3 3-159 编程时的注意事项 两个ASCII字符被转换为1个字节中的两个数字。进行转换时,字符的高位与低位交换位置。 4个字符转换为1个数据字段。 转换的结果以字节为单位存放。 如果转换奇数个字符,则在正向顺序转换时,最终数据(字节)的0~3数据位被输入“0”; 在反向 顺序转换时,最终数据(字节)的4~7数据位被输入“0”。 如何指定S2 S2 = H □ 0 0 □ ASCII码的字节数 H1:1字节(表示1个ASCII码字符) H2:2字节(表示2个ASCII码字符) H3:3字节(表示3个ASCII码字符) H4:4字节(表示4个ASCII码字符) H5:5字节(表示5个ASCII码字符) H6:6字节(表示6个ASCII码字符) H7:7字节(表示7个ASCII码字符) H8:8字节(表示8个ASCII码字符) 数据转换方向 H0:正向 H1:反向 正方向 反方向 BCD码 ASCII 码 转换示例 以下示例说明从ASCII码到BCD码的转换。 8个ASCII字符转换(S2=H0008) 78 56 34 12 D+1 D BCD码 F74(ABCD)指令执行 38 37 36 35 34 33 32 31 转换结果 S1+3 S1+2 S1+1 S1 ASCII十六进制码 ASCII码 8 ASCII字符(8位字节) 8 7 6 5 4 3 2 1 3-160 7个ASCII字符转换(S2=H1007) 01 23 45 67 D+1 D BCD码 F74(ABCD)指令执行 37 36 35 34 33 32 31 转换结果 S1+3 S1+2 S1+1 S1 ASCII十六进制码 ASCII码 7 ASCII字符(7个字节) 7 6 5 4 3 2 1 此位填充”0” 表示ASCII 码的BCD字符 ASCII十六进制码 BCD码 H30 0 H31 1 H32 2 H3 3 H34 4 H35 5 H36 6 H37 7 H38 8 H39 9 ·错误标志(R9007):在以下情况时为ON并保持ON。 - 在变址数指定区超限 - S1指定的数据不是十进制数字(0~9) - S2指定的字节数量超出S1指定的数据区范围 - 转换的结果超出D指定的数据区范围 - S2指定的数值等于“0” - S2指定的ASCII字符数量大于H8 ·错误标志(R9008):在以下情况时瞬间为ON。 - 在变址数指定区超限 - S1指定的数据不是十进制数字(0~9) - S2指定的字节数量超出S1指定的数据区范围 - 转换的结果超出D指定的数据区范围 - S2指定的数值等于“0” - S2指定的ASCII字符数量大于H8 标志位状态 3-161 16位数据→ASCII码 操作数 A: 可以使用 N/A: 不可使用 程序示例 概述 将16位数据转换为表示十进制数的ASCII码。 对于FP-M/FPO/FP1,P型高级指令不适用 F75(BINA) P75(PBINA) 10 11 ST R 0 F75 (BINA) DT 0 K 6 DT 50 将要转换的16位常数或16位区(源区) S1 地址 指令 梯形图程序 布尔形式 触发器 指定用于表示目的区数据的字节数的16位常数或16位区(ASCII码) S2 存储ASCII码的起始16位区(目的区) D WX WY WR WL(*1) SV EV DT LD(*1) FL(*2) IX(*3)IY(*4) K H S1 A A A A A A A A A A A A A A S2 A A A A A A A A A A A A A A D N/A A A A A A A A A N/A N/A N/A N/A A 操作数 索引变址 定时器/计数器 索引寄存器 常数继电器 数据寄存器 FP-e/FP0/FP∑/FP1 C24/C40 C56/C72/ FP-M C20/C32/FP2/FP2SH/FP3/FP10SH 适用机型 3-162 (*1)此处不适用FP-M、FP0、FP-e和FP1。 (*2)此处不适用FP-M、FP0、FP-e、FPΣ和FP1。 (*3)对于FPΣ、FP2、FP2SH和FP10SH,此处为I0至IC。 (*4)对于FPΣ、FP2、FP2SH和FP10SH,此处为ID。 描述 将由S1指定的16位数据转换为表示十进制数的ASCII码。转换结果保存于由D指定开始的16位区。 十进制数的字节数由S2指定。 示例说明 当触发器R0为ON时,将数据寄存器DT0中存储的16位数转换为表达十进制数的ASCII码。转换后的结果存 放在数据寄存器DT52到DT50中。 目的址 ASCII十六进制码 3 0 3 0 3 1 2 D 2 0 2 0 ASCII码 DT50DT52 DT51 0 0 1 - 源地址 位址 15 . . 12 11 . . 8 7 . . 4 3 . . 0 十进制 DT0 K-100 6个字节 空格 编程时的注意事项 转换正数时,“+”号不转换。 转换负数时,“-”号也转换为ASCII码(ASCII十六进制码:H2D) 若S2指定的区大于转换数据要求的区,则用“空格”的ASCII码(ASCII十六进制码:H20)填充超 出的部分。 数据是按照指向最终地址的方向存储的,因此ASCII码的位置会根据存储区的容量而改变。 当S2=K8(8字节) 38 37 36 35 34 33 32 31 转换结果 D+3 D+2 D+1 D ASCII十六进制码 ASCII码 ASCII码 多余字符 0 0 1 - 空格 空格 由S2指定范围 若转换后的ASCII码的字节数(包括负号)大于S2指定的字节数,则会出现运算错误。因此,在指 定S2的转换目标时,一定要考虑符号。 3-163 转换示例 下面显示了16位十进制数据向ASCII码的转换。 当一负数被转换时 当S2=H1004(反向,4字节转换)时 FF 9C 16位数据 S1 K-100 F75(BINA)指令执行 30 30 31 2D 20 20 转换结果 D+2 D+1 D ASCII码 多余字符 0 0 1 - 空格 由S2(6个字节)指定范围 04 D2 16位数据 S1 K1234 F75(BINA)指令执行 34 33 32 21 20 20 转换结果 D+2 D+1 D ASCII码 多余字符 4 3 2 1 空格 由S2(6个字节)指定范围 表示ASCII十六进制码的十进制字符 十进制 ASCII十六进制码 空格 H20 _ H2D 0 H30 1 H31 2 H32 3 H3 4 H34 5 H35 6 H36 7 H37 8 H38 9 H39 3-164 ·错误标志(R9007):在以下情况时为ON并保持ON。 - 在变址数指定区超限 - S2指定的字节数量超出D指定的数据区范围 - 转换的结果超出D指定的数据区范围 - S2指定的数值等于“0” - S2指定的ASCII字符数量大于H8 - 转换结果的字节数超出S2指定的数值 ·错误标志(R9008):在以下情况时瞬间为ON。 - 在变址数指定区超限 - S2指定的字节数量超出D指定的数据区范围 - 转换的结果超出D指定的数据区范围 - S2指定的数值等于“0” - S2指定的ASCII字符数量大于H8 - 转换结果的字节数超出S2指定的数值 标志位状态 3-165 ASCII码→16位数据 操作数 A: 可以使用 N/A: 不可使用 程序示例 概述 将表示十进制的ASCII码转换为表示等值的16位数据。 对于FP-M/FP0/FP1/FP-e/FPΣ,P型高级指令不适用。 F76(ABIN) P76(PABIN) 10 11 ST R 0 F76 (ABIN) DT 0 K 6 DT 50 存放ASCII码的起始16位区(源区) S1 地址 指令 梯形图程序 布尔形式 触发器 指定将要转换的源区数据的16位常数或16位区S2 存储转换结果的16位区(目的区)D WX WY WR WL(*1) SV EV DT LD(*1) FL(*2) IX(*3)IY(*4) K H S1 A A A A A A A A A N/A N/A N/A N/A A S2 A A A A A A A A A A A A A A D N/A A A A A A A A A N/A N/A N/A N/A A 操作数 索引变址 定时器/计数器 索引寄存器 常数继电器 数据寄存器 示例说明 当触发器R0为ON时,将数据寄存器DT2至DT0中表示十进制数的ASCII码(6个字节)转换为16位数据。 转换后的数据保存在数据寄存器DT50中。 目的址 ASCII十六进制码 3 0 3 0 3 1 2 D 2 0 2 0 ASCII码 DT50DT52 DT51 0 0 1 - 源地址 位址 15 . . 12 11 . . 8 7 . . 4 3 . . 0 十进制 DT0 K-100 在这种情况下, 此 位 置 设 置 成”空格”或”0” FP-e/FP0/FP∑/FP1 C24/C40 C56/C72/ FP-M C20/C32/FP2/FP2SH/FP3/FP10SH 适用机型 3-166 (*1)此处不适用FP-M、FP0、FP-e和FP1。 (*2)此处不适用FP-M、FP0、FP-e、FPΣ和FP1。 (*3)对于FPΣ、FP2、FP2SH和FP10SH,此处为I0至IC。 (*4)对于FPΣ、FP2、FP2SH和FP10SH,此处为ID。 描述 按照S2的指定,将存放在从由S1指定的数据区开始的16位区中的表示十进制数的ASCII码转换为16进制 数。转换后的结果存放在D指定的数据区中。 S2指定用于转换的源数据的字节数。 编程时的注意事项 被转换的ACSII应按指向最终地址的方向存储于指定区。 若S1和S2指定的区大于待转换数据所需的区,则向多余的字节中加入“0”( ASCII十六进制码: H30)或“空格”(ASCII十六进制码:H20)。 正负符号的ASCII码(+:H2B和-:H2D)也进行转换。“+”符号可以省略。 ·错误标志(R9007):在以下情况时为ON并保持ON。 - 在变址数指定区超限 - S2指定的字节数量超出S1指定的数据区范围 - S2指定的数值等于“0” - 转换的结果超出D指定的16位数据区范围 - 指定的ASCII字符不是十进制数字或相关的字符(0~9、+、-及空格) ·错误标志(R9008):在以下情况时瞬间为ON。 - 在变址数指定区超限 - S2指定的字节数量超出S1指定的数据区范围 - S2指定的数值等于“0” - 转换的结果超出D指定的16位数据区范围 - 指定的ASCII字符不是十进制数字或相关的字符(0~9、+、-及空格) 标志位状态 3-167 转换示例 以下为将ASCII码转换为十进制数值的示例 将ASCII码转换为负数的示例 30 30 31 2D 30 30 ASCII码 S1+2 S1+1 S1 K-100 F76(ABIN)指令执行 FF 9C ASCII码 多余字符 0 0 1 - (0) (0) 由S2指定范围 转换结果 D 将ASCII码转换为正数的示例 30 30 31 2B 20 20 ASCII码 S1+2 S1+1 S1 ASCII码 多余字符 0 0 1 - (空格) 由S2指定范围 示例1: 示例2: 30 30 31 20 20 20 ASCII码 S1+2 S1+1 S1 ASCII码 多余字符 0 0 1 (空格)(空格) 由S2指定范围 00 64 例1或例2的转换结果 D F76(ABIN)指令执行 K100 3-168 3-169 表示十进制字符的ASCII十六进制码 ASCII十六进制码 十进制 H20 空格 H2B + H2D _ H30 0 H31 1 H32 2 H3 3 H34 4 H35 5 H36 6 H37 7 H38 8 H39 9 3-170 32位数据→ASCII码 操作数 A: 可以使用 N/A: 不可使用 程序示例 概述 将32位数据转换为表示十进制数的ASCII码。 对于FP-M/FP0/FP1,P型高级指令不是适用。 F77(DBIA) P77(PDBIA) 10 11 ST R 0 F77 (DBIA) DT 0 K 10 DT 50 将要转换的32位常数或32位区(源区) S1 梯形图程序 地址 指令 布尔形式 触发器 指定用于表示目的区数据的字节数的16位常数或16位区(ASCII码) S2 存储ASCII码的起始的16位区(目的区) D WX WY WR WL(*1) SV EV DT LD(*1) FL(*2) IX(*3)IY(*4) K H S1 A A A A A A A A A A N/A A A A S2 A A A A A A A A A A N/A A A A D N/A A A A A A A A A N/A N/A N/A N/A A 操作数 索引变址 定时器/计数器 索引寄存器 常数继电器 数据寄存器 FP-e/FP0/FP∑/FP1 C24/C40 C56/C72/ FP-M C20/C32/FP2/FP2SH/FP3/FP10SH 适用机型 (*1)此处不适用FP-M、FP0、FP-e和FP1。 (*2)此处不适用FP-M、FP0、FP-e、FPΣ和FP1。 (*3)对于FPΣ、FP2、FP2SH和FP10SH,此处为I0至IC。 (*4)对于FPΣ、FP2、FP2SH和FP10SH,此处为ID。 3-171 描述 将由S1指定的32位数据转换为表示十进制数的ASCII码。转换结果保存于由D指定开始的16位区。 十进制数的字节数由S2指定。 编程时的注意事项 正数转换时,“+”号不转换。 负数转换时,“-”号也转换为ASCII码(ASCII十六进制码:H2D)。 若S2指定的区大于转换数据所需的区,则用“空格”的ASCII(ASCII十六进制码:H20)存储于附加区。 数据是按照指向最终地址的方向存储的,因此ASCII码的位置会根据数据存储区的容量而改变。 若转换后的ASCII码的字节数(包括负号)大于S2指定的字节数,则会发生运行错误。在通过S2指定的转 换目标时,一定要把符号考虑进去。 ·错误标志(R9007):在以下情况时为ON并保持ON。 - 在变址数指定区超限 - S2指定的字节数量超出D指定的数据区范围 - S2指定的数值等于“0” - 转换的结果超出D指定的数据区范围 - 转换结果的字节数超出S2指定的数值 - 对于FP-M/FP0/FP1,S2指定的字节数小于S1指定的字节数 ·错误标志(R9008):在以下情况时瞬间为ON。 - 在变址数指定区超限 - S2指定的字节数量超出D指定的数据区范围 - S2指定的数值等于“0” - 转换的结果超出D指定的数据区范围 - 转换结果的字节数超出S2指定的数值 - 对于FP-M/FP0/FP1,S2指定的字节数小于S1指定的字节数 标志位状态 示例说明 当触发器R0为ON时,将数据寄存器DT1和DT0中存储的32位数转换为表达十进制数的ASCII码。转换后的 结果存放在数据寄存器DT54到DT50(10个字节)中。 目的址 ASCII十六进制码 3 8 3 7 3 6 3 5 3 4 3 3 3 2 3 1 2 0 2 D ASCII码 DT51 DT50 2 1 DT52DT54 DT53 4 38 7 6 5 源地址 位址 15 . . 12 11 . . 8 7 . . 4 3 . . 0 15 . . 12 11 . . 8 7 . . 4 3 . . 0 十进制 DT0 K-100 DT1 K-100 空格由S2指定字节范围(10个字节) 3-172 转换示例 下面显示的是32位十进制格式数据向ASCII码的转换。 转换负数的示例 FF 43 9E B2 32位数据 S1+1 S1 K-12345678 F77(DBIA)指令执行 38 37 36 35 34 33 32 31 2D 20 转换结果 D+4 D+3 D+2 D+1 D ASCII码 多余字符 8 7 6 5 4 3 2 1 - (空格) 由S2(6个字节)指定范围 转换正数的示例 00 BC 61 4E 32位数据 S1+1 S1 K12345678 F77(DBIA)指令执行 38 37 36 35 34 33 32 31 转换结果 D+3 D+2 D+1 D ASCII码 8 7 6 5 4 3 2 1 由S2(8个字节)指定范围 3-173 以ASCII十六进制码表示的十进制字符 十进制 ASCII十六进制码 空格 H20 + H2B - H2D 0 H30 1 H31 2 H32 3 H3 4 H34 5 H35 6 H36 7 H37 8 H38 9 H39 3-174 ASCII码→32位数据 操作数 A: 可以使用 N/A: 不可使用 程序示例 概述 将表示十进制数的ASCII码转换为表示等值的32位数据。 对于FP-M/FP0/FP1/FP-e/FPΣ,P型高级指令不适用。 F78(DABI) P78(PDABI) 10 11 ST R 0 F78 (DABI) DT 0 K 10 DT 50 存放ASCII码的数据的起始16位区(源区) S1 梯形图程序 地址 指令 布尔形式 触发器 指定将要转换的源区数据的16位常数或16位区S2 存储转换结果的32位数据的低16位区(目的区) D WX WY WR WL(*1) SV EV DT LD(*1) FL(*2) IX(*3)IY(*4) K H S1 A A A A A A A A A N/A N/A N/A N/A A S2 A A A A A A A A A A N/A A A A D N/A A A A A A A A A N/A N/A N/A N/A A 操作数 索引变址 定时器/计数器 索引寄存器 常数继电器 数据寄存器 示例说明 当触发器R0为ON时,将数据寄存器DT4、DT3、DT2、DT1和DT0中表示十进制数的ASCII码(10个字节) 转换为32数据。转换后的数据存储于数据寄存器DT51和DT50中。 源址 ASCII十六进制码 3 8 3 7 3 6 3 5 3 4 3 3 3 2 3 1 2 0 2 0 DT1 DT0DT2DT4 DT3 源地址 位址 15 . . 12 11 . . 8 7 . . 4 3 . . 0 15 . . 12 11 . . 8 7 . . 4 3 . . 0 十进制 DT50 K12345678 DT51 ”空格” 由S2指定ASCII码(10个字节) FP-e/FP0/FP∑/FP1 C24/C40 C56/C72/ FP-M C20/C32/FP2/FP2SH/FP3/FP10SH 适用机型 (*1)此处不适用FP-M、FP0、FP-e和FP1。 (*2)此处不适用FP-M、FP0、FP-e、FPΣ和FP1。 (*3)对于FPΣ、FP2、FP2SH和FP10SH,此处为I0至IC。 (*4)对于FPΣ、FP2、FP2SH和FP10SH,此处为ID。 3-175 描述 将从由S1指定的16位区开始、表示十进制数的ASCII码按照S2的指定转换为32位数据。转换结果存储在开 始于D指定的16位区的区内。 S2指定用于表示十进制数目标数据的字节数。 编程时的注意事项 被转换的ACSII应按指向最终地址的方向存储于指定区。 若S1和S2指定的区大于待转换数据所需的区,则向多余的字节中加入“0”( ASCII十六进制码:H30)或 “空格”(ASCII十六进制码:H20)。 正负符号的ASCII码(+:H2B和-:H2D)也进行转换。“+”符号可以省略。 ·错误标志(R9007):在以下情况时为ON并保持ON。 - 在变址数指定区超限 - S2指定的字节数量超出S1指定的数据区范围 - S2指定的数值等于“0” - 转换的结果超出D指定的16位数据区范围 - 指定的ASCII字符不是十进制数字或相关的字符(0~9、+、-及空格) ·错误标志(R9008):在以下情况时瞬间为ON。 - 在变址数指定区超限 - S2指定的字节数量超出S1指定的数据区范围 - S2指定的数值等于“0” - 转换的结果超出D指定的16位数据区范围 - 指定的ASCII字符不是十进制数字或相关的字符(0~9、+、-及空格) 标志位状态 3-176 转换示例 下面所示为由ASCII码向32位的十进制数据的转换 转换一个表示负数的ASCII码的示例 FF 43 9E B2 转换结果 D+1 D K-12345678 F78(DABI)指令执行 38 37 36 35 34 33 32 31 2D 20 ASCII码 S1+4 S1+3 S1+2 S1+1 S1 ASCII码 多余字符 8 7 6 5 4 3 2 1 - (空格) 由S2(10个字节)指定范围 转换一个表示正数的ASCII码的示例 38 37 36 35 34 33 32 31 ASCII码 S1+3 S1+2 S1+1 S1 ASCII码 7 8 6 5 4 3 2 1 由S2指定范围(8个字节) 示例1: 示例2: 38 37 36 35 34 33 32 31 2B 20 ASCII码 S1+4 S1+3 S1+2 S1+1 S1 ASCII码 多余字符 8 7 6 5 4 3 2 1 + (空格) 由S2指定范围(10个字节) 00 BC 61 4E 例1或例2的转换结果 D+1 D F78(DABI)指令执行 K12345678 3-177 表示十进制字符的ASCII十六进制码 ASCII十六进制码 十进制 H20 空格 H2B + H2D - H30 0 H31 1 H32 2 H3 3 H34 4 H35 5 H36 6 H37 7 H38 8 H39 9 16位数据→4位BCD数据 操作数 A: 可以使用 N/A: 不可使用 程序示例 概述 将16位二进制数据转换为表达4位的十进制的BCD码(4-digit)。 对于FP-M/FP0/FP1/FP-e/FPΣ/FP-e/FPΣ,P型高级指令不适用。 F80(BCD) P80(PBCD) 10 11 ST R 0 F80 (BCD) DT 10 DT 20 16位常数或存放数据的16位区(源) S 地址 指令 梯形图程序 布尔形式 触发器 存放BCD码的4digit区(目的) D WX WY WR WL(*1) SV EV DT LD(*1) FL(*2) IX(*3)IY(*4) K H S A A A A A A A A A A A A A A D N/A A A A A A A A A A A N/A N/A A 操作数 索引变址 定时器/计数器 索引寄存器 常数继电器 数据寄存器 示例说明 当触发器R0为ON时,将数据寄存器DT10中的内容转换为表示4位十进制的BCD码。转换数据存储于数据 寄存器DT20中。 若DT10用十进制数转换结果为16,则下列将存储于DT20。 位址 15 . . 12 11 . . 8 7 . . 4 3 . . 0 DT10 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 十进制 K16 源地址[S]:K16 位址 15 . . 12 11 . . 8 7 . . 4 3 . . 0 DT30 0 0 0 0 0 0 0 0 0 0 0 1 0 1 1 0 BCD 十六进制 0 0 1 6 结果[D]:H16(BCD) FP-e/FP0/FP∑/FP1/FP-M/ FP2/FP2SH/FP3/FP10SH 适用机型 3-178 (*1)此处不适用FP-M、FP0、FP-e和FP1。 (*2)此处不适用FP-M、FP0、FP-e、FPΣ和FP1。 (*3)对于FPΣ、FP2、FP2SH和FP10SH,此处为I0至IC。 (*4)对于FPΣ、FP2、FP2SH和FP10SH,此处为ID。 描述 将以S指定的16位二进制数据转换为表示4位十进制的BCD码(4-digit)。转换后的数据存储于D中。 编程时的注意事项 可转换为BCD码的16位二进制数据的最大值为K9999(H270F) 有关BCD码的详细内容,请参阅相关章节。 ·错误标志(R9007):在以下情况时为ON并保持ON。 - 在变址数指定区超限 - 被转换的数据超出K0~K9999(H0~H270F)的范围 ·错误标志(R9008):在以下情况时瞬间为ON。 - 在变址数指定区超限 - 被转换的数据超出K0~K9999(H0~H270F)的范围 标志位状态 3-179 4位BCD数据→16位数据 操作数 A: 可以使用 N/A: 不可使用 程序示例 概述 将表达4位的十进制的BCD码(4-digit)转换为16位二进制数据。 对于FP-M/FP0/FP1/FP-e/FPΣ,P型高级指令不适用。 F81(BIN) P81(FBIN) 10 11 ST R 0 F81 (BIN) DT 10 DT 20 4位BCD码常数或存放BCD码数据的4digit(源)S 地址 指令 梯形图程序 布尔形式 触发器 16位区(目的) D WX WY WR WL(*1) SV EV DT LD(*1) FL(*2) IX(*3)IY(*4) K H S A A A A A A A A A A A A A A D N/A A A A A A A A A A A N/A N/A A 操作数 索引变址 定时器/计数器 索引寄存器 常数继电器 数据寄存器 FP-e/FP0/FP∑/FP1/FP-M/ FP2/FP2SH/FP3/FP10SH 适用机型 3-180 (*1)此处不适用FP-M、FP0、FP-e和FP1。 (*2)此处不适用FP-M、FP0、FP-e、FPΣ和FP1。 (*3)对于FPΣ、FP2、FP2SH和FP10SH,此处为I0至IC。 (*4)对于FPΣ、FP2、FP2SH和FP10SH,此处为ID。 示例说明 当触发器R0为ON时,将数据寄存器DT10的内容转换为16位二进制数据。转换后的数据存储于数据 寄存器DT20。 若DT10是构成BCD数据的H15,下列将存储于DT20。 位址 15 . . 12 11 . . 8 7 . . 4 3 . . 0 DT10 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 BCD十六进制 K15 源地址[S]:H15(BCD) 位址 15 . . 12 11 . . 8 7 . . 4 3 . . 0 DT30 0 0 0 0 0 0 0 0 0 0 0 1 0 1 0 1 BCD 十六进制 0 0 1 5 结果[D]:K15 转换二进制数据 有关BCD码的详细内容,请参阅相关章节。 描述 将以S指定的表示4位十进制的BCD码(4-digit)转换为16位二进制数据。转换后的数据存储于D中。 ·错误标志(R9007):在以下情况时为ON并保持ON。 - 在变址数指定区超限 - S指定的数据不是BCD数据 ·错误标志(R9008):在以下情况时瞬间为ON。 - 在变址数指定区超限 - S指定的数据不是BCD数据 标志位状态 3-181 32位数据→8位BCD数据 操作数 A: 可以使用 N/A: 不可使用 程序示例 概述 将32位二进制数据转换为表示8位十进制数的BCD码(8-digit)。 对于FP-M/FP0/FP1/FP-e/FPΣ,P型高级指令不适用。 F82(DBCD) P82(PDBCD) 10 11 ST R 0 F82 (DBCD) DT 10 DT 20 32位常数或存放32位数据的低16位区(源区)范围:K0-K99,999,999 S 地址 指令 梯形图程序 布尔形式 触发器 存放8位BCD码的低16位区(目的区)D WX WY WR WL(*1) SV EV DT LD(*1) FL(*2) IX(*3)IY(*4) K H S A A A A A A A A A A A A A A D N/A A A A A A A A A A A N/A N/A A 操作数 索引变址 定时器/计数器 索引寄存器 常数继电器 数据寄存器 描述 将S指定的32位数据转换为表示8位十进制数的BCD码(8-digit)。转换数据存储于D+1和D。 示例说明 当触发器R20为ON时,将数据寄存器DT11和DT10的内容转换为表示8位十进制数的BCD码。转换后的数据 存储于DT21和DT20数据寄存器。 FP-e/FP0/FP∑/FP1/FP-M/ FP2/FP2SH/FP3/FP10SH 适用机型 3-182 (*1)此处不适用FP-M、FP0、FP-e和FP1。 (*2)此处不适用FP-M、FP0、FP-e、FPΣ和FP1。 (*3)对于FPΣ、FP2、FP2SH和FP10SH,此处为I0至IC。 (*4)对于FPΣ、FP2、FP2SH和FP10SH,此处为ID。 ·错误标志(R9007):在以下情况时为ON并保持ON。 - 在变址数指定区超限 - 被转换的数据超出K0~K99999999(H0~H5F5E0FF)的范围 ·错误标志(R9008):在以下情况时瞬间为ON。 - 在变址数指定区超限 - 被转换的数据超出K0~K99999999(H0~H5F5E0FF)的范围 标志位状态 3-183 可以转换为BCD码的二进制数据的最大值为K99999999(H5F5E0FF) 关于BCD码的详细内容,请参阅第相关章节。 编程时的注意事项 8位BCD数据→32位数据 操作数 A: 可以使用 N/A: 不可使用 程序示例 概述 将表示8位十进制数的BCD码(8-digit)转换为32位二进制数据。 对于FP-M/FP0/FP1/FP-e/FPΣ,P型高级指令不适用。 F83(DBIN) P83(PDBIN) 10 11 ST R 0 F83 (DBIN) DT 10 DT 20 8位BCD码或存放8位BCD码的低16位区(源区) S 地址 指令 梯形图程序 布尔形式 触发器 存放32位数据的低16位区(目的区) D WX WY WR WL(*1) SV EV DT LD(*1) FL(*2) IX(*3)IY(*4) K H S A A A A A A A A A A N/A A A A D N/A A A A A A A A A A N/A N/A N/A A 操作数 索引变址 定时器/计数器 索引寄存器 常数继电器 数据寄存器 描述 将由S指定的、表示8位十进制数的BCD码转换为32位二进制数据。转换后的数据存储于D+1和D内。 示例说明 当触发器R20为ON时,将数据寄存器DT11和DT10中表示8位十进制数的BCD码转换为32位数据,转换后 的数据存储于数据寄存器DT21和DT20。 有关BCD码的详细内容,请参阅相关章节。 FP-e/FP0/FP∑/FP1/FP-M/ FP2/FP2SH/FP3/FP10SH 适用机型 3-184 (*1)此处不适用FP-M、FP0、FP-e和FP1。 (*2)此处不适用FP-M、FP0、FP-e、FPΣ和FP1。 (*3)对于FPΣ、FP2、FP2SH和FP10SH,此处为I0至IC。 (*4)对于FPΣ、FP2、FP2SH和FP10SH,此处为ID。 ·错误标志(R9007):在以下情况时为ON并保持ON。 - 在变址数指定区超限 - S指定的数据不是BCD数据 ·错误标志(R9008):在以下情况时瞬间为ON。 - 在变址数指定区超限 - S指定的数据不是BCD数据 标志位状态 3-185 可以转换为BCD码的二进制数据的最大值为K99999999(H5F5E0FF) 关于BCD码的详细内容,请参阅第相关章节。 编程时的注意事项 16位数据求反 操作数 A: 可以使用 N/A: 不可使用 程序示例 概述 将16位区中的各位数据求反。 对于FP-M/FP0/FP1/FP-e/FPΣ,P型高级指令不适用。 F84(INV) P84(PINV) 10 11 ST R 2 0 F84 (INV) DT 0 地址 指令 梯形图程序 布尔形式 触发器 待求反的16位区D WX WY WR WL(*1) SV EV DT LD(*1) FL(*2) IX(*3)IY(*4) K H D N/A A A A A A A A A A A N/A N/A A 操作数 索引变址 定时器/计数器 索引寄存器 常数继电器 数据寄存器 描述 对D指定的16位数据的各位(0或1)求反。 本指令可适用于控制使用负逻辑运算的外围设备(7段显示器)。 示例说明 ·错误标志(R9007):在变址数指定区超限时为ON并保持ON。 ·错误标志(R9008):在变址数指定的区超限时瞬间为ON。 标志位状态 位址 15 . . 12 11 . . 8 7 . . 4 3 . . 0 DT0 0 1 0 1 1 1 1 0 1 0 1 1 1 1 0 1 R20:ON(反转) 目的址 目的址 位址 15 . . 12 11 . . 8 7 . . 4 3 . . 0 DT0 1 0 1 0 0 0 0 1 0 1 0 0 0 0 1 0 FP-e/FP0/FP∑/FP1/FP-M/ FP2/FP2SH/FP3/FP10SH 适用机型 3-186 (*1)此处不适用FP-M、FP0、FP-e和FP1。 (*2)此处不适用FP-M、FP0、FP-e、FPΣ和FP1。 (*3)对于FPΣ、FP2、FP2SH和FP10SH,此处为I0至IC。 (*4)对于FPΣ、FP2、FP2SH和FP10SH,此处为ID。 16位数据求补 操作数 A: 可以使用 N/A: 不可使用 程序示例 概述 计算16位数据对2的补码 对于FP-M/FP0/FP1/FP-e/FPΣ,P型高级指令不适用。 F85(NEG) P85(PNEG) 10 11 ST R 20 F85 (NEG) DT 0 地址 指令 梯形图程序 布尔形式 触发器 存储源数据及求补结果的低16位区D WX WY WR WL(*1) SV EV DT LD(*1) FL(*2) IX(*3)IY(*4) K H D N/A A A A A A A A A A A N/A N/A A 操作数 索引变址 定时器/计数器 索引寄存器 常数继电器 数据寄存器 示例说明 当触发器R20为ON时,计算数据寄存器DT0对2的补码 位址 15 . . 12 11 . . 8 7 . . 4 3 . . 0 DT0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 十进制 K3 目的址 位址 15 . . 12 11 . . 8 7 . . 4 3 . . 0 DT0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 1 十进制 K-3 目的址 R20:ON FP-e/FP0/FP∑/FP1/FP-M/ FP2/FP2SH/FP3/FP10SH 适用机型 3-187 (*1)此处不适用FP-M、FP0、FP-e和FP1。 (*2)此处不适用FP-M、FP0、FP-e、FPΣ和FP1。 (*3)对于FPΣ、FP2、FP2SH和FP10SH,此处为I0至IC。 (*4)对于FPΣ、FP2、FP2SH和FP10SH,此处为ID。 ·错误标志(R9007):在变址数指定区超限时为ON并保持ON。 ·错误标志(R9008):在变址数指定的区超限时瞬间为ON。 标志位状态 描述 计算D指定的16位数据。 对2的补码是指将数据的各位取反后再加1。 本指令可用于将16位数据的由正数改为负数或由负数改为正数。 3-188 32位数据求补 操作数 A: 可以使用 N/A: 不可使用 程序示例 概述 计算32位数据的对2的补码。 对于FP-M/FP0/FP1/FP-e/FPΣ,P型高级指令不适用。 F86(DNEG) P86(PDNEG) 10 11 ST R 20 F86 (DNEG) DT 0 地址 指令 梯形图程序 布尔形式 触发器 存储源数据及求补结果的低16位区D WX WY WR WL(*1) SV EV DT LD(*1) FL(*2) IX(*3)IY(*4) K H D N/A A A A A A A A A A N/A N/A N/A A 操作数 索引变址 定时器/计数器 索引寄存器 常数继电器 数据寄存器 FP-e/FP0/FP∑/FP1/FP-M/ FP2/FP2SH/FP3/FP10SH 适用机型 3-189 (*1)此处不适用FP-M、FP0、FP-e和FP1。 (*2)此处不适用FP-M、FP0、FP-e、FPΣ和FP1。 (*3)对于FPΣ、FP2、FP2SH和FP10SH,此处为I0至IC。 (*4)对于FPΣ、FP2、FP2SH和FP10SH,此处为ID。 ·错误标志(R9007):在变址数指定区超限时为ON并保持ON。 ·错误标志(R9008):在变址数指定的区超限时瞬间为ON。 标志位状态 描述 计算D指定的32位数据对2的补码。 本指令可用于将32位数据由正数变为负数或由负数变正数。 3-190 示例说明 当触发器R20为ON时,计算数据寄存器DT1和DT0对2的补码。 目的址 位址 15 . . 12 11 . . 8 7 . . 4 3 . . 0 15 . . 12 11 . . 8 7 . . 4 3 . . 0 二进制数据 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 1 十进制数据 DT1 DT1 K-3 目的址 R20:ON高16位区 低16位区 目的址 位址 15 . . 12 11 . . 8 7 . . 4 3 . . 0 15 . . 12 11 . . 8 7 . . 4 3 . . 0 二进制数据 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 十进制数据 DT1 DT1 K3 目的址 高16位区 低16位区 16位数据取绝对值 操作数 A: 可以使用 N/A: 不可使用 程序示例 概述 求得带符号16位数据的绝对值。 对于FP-M/FP0/FP1/FP-e/FPΣ,P型高级指令不适用。 F87(ABS) P87(PABS) 10 11 ST R 20 F87 (ABS) DT 0 地址 指令 梯形图程序 布尔形式 触发器 存放源数据及结果的16位区D WX WY WR WL(*1) SV EV DT LD(*1) FL(*2) IX(*3)IY(*4) K H D N/A A A A A A A A A A A N/A N/A A 操作数 索引变址 定时器/计数器 索引寄存器 常数继电器 数据寄存器 描述 求得由D指定的带符号的16位数据的绝对值。带符号的16位数据的绝对值存储于D内。 本指令适用于处理符号(+或-)变化的数据。 示例说明 当触发器R20为ON时,求得数据寄存器DT0的绝对值。 例如,无论DT0的值是K1还是K-1,在执行本指令后DT0的值都将为K1。 ·错误标志(R9007):在以下情况时为ON并保持ON。 - 在变址数指定区超限 - 16位数据为负数最小值“K-32768(H8000)” ·错误标志(R9008):在以下情况时瞬间为ON。 - 在变址数指定区超限 - 16位数据为负数最小值“K-32768(H8000)” ·进位标志(R9008):当16位数据超出负数范围“K-1~K-32767(HFFFF~H8001)”时瞬间为ON。 标志位状态 FP-e/FP0/FP∑/FP1/FP-M/ FP2/FP2SH/FP3/FP10SH 适用机型 3-191 (*1)此处不适用FP-M、FP0、FP-e和FP1。 (*2)此处不适用FP-M、FP0、FP-e、FPΣ和FP1。 (*3)对于FPΣ、FP2、FP2SH和FP10SH,此处为I0至IC。 (*4)对于FPΣ、FP2、FP2SH和FP10SH,此处为ID。 32位数据绝对值 操作数 A: 可以使用 N/A: 不可使用 程序示例 概述 求得带符号32位数据的绝对值 对于FP-M/FP0/FP1/FP-e/FPΣ, P型高级指令不适用。 F88(DABS) P88(PDABS) 10 11 ST R 20 F88 (DABS) DT 0 地址 指令 梯形图程序 布尔形式 触发器 存放源数据及结果的低16位区D WX WY WR WL(*1) SV EV DT LD(*1) FL(*2) IX(*3)IY(*4) K H D N/A A A A A A A A A A N/A N/A N/A A 操作数 索引变址 定时器/计数器 索引寄存器 常数继电器 数据寄存器 描述 求取D指定的带符号的32位数据的绝对值。32位数据的绝对值存储于D+1和D。 这适用于处理符号(+或-)变化的数据。 示例说明 当触发器R20为ON时,求得数据寄存器DT1和DT0的绝对值。DT1和DT0的绝对值存储于DT1和DT0。 ·错误标志(R9007):在以下情况时为ON并保持ON。 - 在变址数指定区超限 - 32位数据为负数最小值“K-2147473648(H8000000)” ·错误标志(R9008):在以下情况时瞬间为ON。 - 在变址数指定区超限 - 32位数据为负数最小值“K-2147473648(H8000000)” ·进位标志(R9008):当16位数据超出负数范围“K-1~K-2147473647(HFFFFFFFF~H80000001)”时 瞬间为ON。 标志位状态 FP-e/FP0/FP∑/FP1/FP-M/ FP2/FP2SH/FP3/FP10SH 适用机型 3-192 (*1)此处不适用FP-M、FP0、FP-e和FP1。 (*2)此处不适用FP-M、FP0、FP-e、FPΣ和FP1。 (*3)对于FPΣ、FP2、FP2SH和FP10SH,此处为I0至IC。 (*4)对于FPΣ、FP2、FP2SH和FP10SH,此处为ID。 16位数据带符号扩展 操作数 A: 可以使用 N/A: 不可使用 程序示例 概述 将指定的16位数据的符号位复制到高16位区(扩展16位区)的各数据位。 对于FP-M/FP0/FP1/FP-e/FPΣ,P型高级指令不适用。 F89(EXT) P89(PEXT) 10 11 ST R 20 F89 (EXT) DT 0 地址 指令 梯形图程序 布尔形式 触发器 存储源16位数据的16位区D WX WY WR WL(*1) SV EV DT LD(*1) FL(*2) IX(*3)IY(*4) K H D N/A A A A A A A A A A N/A N/A N/A A 操作数 索引变址 定时器/计数器 索引寄存器 常数继电器 数据寄存器 FP-e/FP0/FP∑/FP1/FP-M/ FP2/FP2SH/FP3/FP10SH 适用机型 3-193 (*1)此处不适用FP-M、FP0、FP-e和FP1。 (*2)此处不适用FP-M、FP0、FP-e、FPΣ和FP1。 (*3)对于FPΣ、FP2、FP2SH和FP10SH,此处为I0至IC。 (*4)对于FPΣ、FP2、FP2SH和FP10SH,此处为ID。 示例说明 当触发器R20为ON时,将数据寄存器DT0的符号位复制到数据寄存器DT1的各个数据位中。如果DT0中 存放的数据为K-2,则数据处理如下: 描述 将16位数据转换为32位数据,符号及数值均不改变。 如果由D指定的16位数据的符号位(数据位15)为0,则D之后的16位数据区将被设置为0;如果符号位 为1,则全部16位均为1。 处理后,16位数据被转换为32位,符号及数值均不改变。 在执行F89(EXT)指令后,以D为第一数据的双字数据可以作为32位操作指令的操作数。 ·错误标志(R9007):在变址数指定区超限时为ON并保持ON。 ·错误标志(R9008):在变址数指定的区超限时瞬间为ON。 标志位状态 目的址 位址 15 . . 12 11 . . 8 7 . . 4 3 . . 0 二进制数据 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 十进制数据 DT0 K-2 R20:ON 16位数据 目的址 位址 15 . . 12 11 . . 8 7 . . 4 3 . . 0 15 . . 12 11 . . 8 7 . . 4 3 . . 0 二进制数据 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 十进制数据 DT1 DT1 K3 高16位区 (扩展16位区) 低16位区 32位数据 3-194 数据解码 操作数 A: 可以使用 N/A: 不可使用 程序示例 概述 对指定数据进行解码。 对于FP-M/FP0/FP1/FP-e/FPΣ,P型高级指令不适用。 F90(DECO) P90(PDECO) 10 11 ST R 20 F90 (DECO) DT 10 H 404 DT 20 待解码的16位常数或16位区(源区) S 地址 指令 梯形图程序 布尔形式 触发器 规定待解码的起始位和位数的16位常数或16位区n 存放解码后数据的起始16位区(目的区) D WX WY WR WL(*1) SV EV DT LD(*1) FL(*2) IX(*3)IY(*4) K H S A A A A A A A A A A A A A A n A A A A A A A A A A A A A A D N/A A A A A A A A A A A N/A N/A A 操作数 索引变址 定时器/计数器 索引寄存器 常数继电器 数据寄存器 示例说明 当触发器R20为ON时,根据n=H404来对数据寄存器DT10进行解码。解码的结果存放在数据寄存器DT20中。 示例:当 n:H404 位址 15 . . 12 11 . . 8 7 . . 4 3 . . 0 DT10 0 1 0 0 0 1 1 0 0 1 1 1 1 0 0 1 4位 位址4 源地址 待解码的DT10从位址4到位 址7的4位 [二进制:0111(十进制:K7)] 位址 15 . . 12 11 . . 8 7 . . 4 3 . . 0 DT20 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 R20:ON 解码数据“1(ON)”存放在 DT20的数据位7。 除数据位7外,其余位为0。 FP-e/FP0/FP∑/FP1/FP-M/ FP2/FP2SH/FP3/FP10SH 适用机型 3-195 (*1)此处不适用FP-M、FP0、FP-e和FP1。 (*2)此处不适用FP-M、FP0、FP-e、FPΣ和FP1。 (*3)对于FPΣ、FP2、FP2SH和FP10SH,此处为I0至IC。 (*4)对于FPΣ、FP2、FP2SH和FP10SH,此处为ID。 描述 根据n的内容对以S指定的16位数据的内容进行解码。解码结果存储于开始于以D指定的16位的区域。 存储解码结果所需区域长度随解码数据的长度而改变。 如何指定控制数据“n” n:用十六进制数据来指定起始数据单元和待解码的位数。 位址 15 . . 12 11 . . 8 7 . . 4 3 . . 0 n - - - - 0 1 0 0 - - - - 0 1 0 0 16位数据 设定值 起始位 H0 0 H1 1 H2 2 H3 3 H4 4 H5 5 H6 6 H7 7 H8 8 H9 9 HA 10 HB 11 HC 12 HD 13 HE 14 HF 15 待解码的起始位 (范围:H0到HF) 待解码的位数 (范围:H0到H8) 设定值 位数 H0 0 H1 1 H2 2 H3 3 H4 4 H5 5 H6 6 H7 7 H8 8 注:带”-”标记的位无效 3-196 数据位数量与解码数据结果的关系 15 . . 12 11 . . 8 7 . . 4 3 . . 0 0000(K0) 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0001(K1) 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0010(K2) 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0011(K3) 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0100(K4) 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0101(K5) 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0110(K6) 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0111(K7) 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 1000(K8) 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 1001(K9) 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 1010(K10) 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 1011(K11) 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 1100(K12) 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 1101(K13) 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 1110(K14) 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1111(K15) 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 待解码的数据 待解码结果 * 解码结果所需数据区中的无效位被置为“0”。 待解码的位数 结果所需的数据区 结果区中的有效位 1 1字 2位* 2 1字 4位* 3 1字 8位* 4 1字 16位 5 2字 32位 6 4字 64位 7 8字 128位 8 16字 256位 解码示例 当对4位数据进行解码时,用于解码结果的16位数据显示如下。 解码条件(n) 起始数据位:H0(数据位0) 待解码数位数:H4(4位) 3-197 ·错误标志(R9007):在以下情况时为ON并保持ON。 - 在变址数指定区超限 - 解码数据位的数量超出1~8的范围 - 解码数据位的数量和以及起始数据位超出1~16 - 用于解码结果的最后数据区超出范围 ·错误标志(R9008):在以下情况时瞬间为ON。 - 在变址数指定区超限 - 解码数据位的数量超出1~8的范围 - 解码数据位的数量和以及起始数据位超出1~16 - 用于解码结果的最后数据区超出范围 标志位状态 3-198 16位数据7段码译码 操作数 A: 可以使用 N/A: 不可使用 程序示例 概述 将16位数据转换为用于7段码显示的4个数字位(digit)。 对于FP-M/FP0/FP1/FP-e/FPΣ, P型高级指令不适用。 F91(SEGT) P91(PSEGT) 10 11 ST R 20 F91 (SEGT) DT 0 DT 10 16位常数或16位区(源区) S 地址 指令 梯形图程序 布尔形式 触发器 存放七段显示4位16进制数据的起始16位区(目的区)D WX WY WR WL(*1) SV EV DT LD(*1) FL(*2) IX(*3)IY(*4) K H S A A A A A A A A A A A A A A D N/A A A A A A A A A A N/A N/A N/A A 操作数 索引变址 定时器/计数器 索引寄存器 常数继电器 数据寄存器 示例说明 当触发器R20为ON时,将数据寄存器DT0的内容转换为7段码显示的4数字位数据。转换数据存储于内部 字继电器DT11和DT10。 例如,欲显示“ABCD”,应输入下列内容。 位址 15 . . 12 11 . . 8 7 . . 4 3 . . 0 DT10 1 0 1 0 1 0 1 1 1 1 0 0 1 1 0 1 十六进制 A B C D 源地址 位址 15 . . 12 11 . . 8 7 . . 4 3 . . 0 DT10 0 1 1 1 0 1 1 1 0 1 1 1 1 1 0 0 7段显示 A B 位址 15 . . 12 11 . . 8 7 . . 4 3 . . 0 DT10 0 0 1 1 1 0 0 1 0 1 0 1 1 1 1 0 7段显示 C D 目地址 FP-e/FP0/FP∑/FP1/FP-M/ FP2/FP2SH/FP3/FP10SH 适用机型 3-199 (*1)此处不适用FP-M、FP0、FP-e和FP1。 (*2)此处不适用FP-M、FP0、FP-e、FPΣ和FP1。 (*3)对于FPΣ、FP2、FP2SH和FP10SH,此处为I0至IC。 (*4)对于FPΣ、FP2、FP2SH和FP10SH,此处为ID。 描述 将由S指定的16位数据或常数转换为用于7段码显示的4个数字位。转换的结果从D指定的区域开始存放。 由S指定的待转换数据与7段码显示数据之间的关系如下: 十六进制 二进制 / g f e d c b a H0 0 0 0 0 0 0 1 1 1 1 1 1 H1 0 0 0 1 0 0 0 0 0 1 1 0 H2 0 0 1 0 0 1 0 1 1 0 1 1 H3 0 0 1 1 0 1 0 0 1 1 1 1 H4 0 1 0 0 0 1 1 0 0 1 1 0 H5 0 1 0 1 0 1 1 0 1 1 0 1 H6 0 1 1 0 0 1 1 1 1 1 0 1 H7 0 1 1 1 0 0 1 0 0 1 1 1 H8 1 0 0 0 0 1 1 1 1 1 1 1 H9 1 0 0 1 0 1 1 0 1 1 1 1 HA 1 0 1 0 0 1 1 1 0 1 1 1 HB 1 0 1 1 0 1 1 1 1 1 0 0 HC 1 1 0 0 0 0 1 1 1 0 0 1 HD 1 1 0 1 0 1 0 1 1 1 1 0 HE 1 1 1 0 0 1 1 1 1 0 0 1 HF 1 1 1 1 0 1 1 1 0 0 0 1 待解码结果待解码的数据 7段码显示 7段码组合 ·错误标志(R9007):在以下情况时为ON并保持ON。 - 在变址数指定区超限 - 用于转换结果的最后数据区超出范围 ·错误标志(R9008):在以下情况时瞬间为ON。 - 在变址数指定区超限 - 用于转换结果的最后数据区超出范围 标志位状态 3-200 数据编码 操作数 A: 可以使用 N/A: 不可使用 程序示例 概述 对指定数据进行编码。 对于FP-M/FP0/FP1/FP-e/FPΣ, P型高级指令不适用。 F92(ENCO) P92(PENCO) 10 11 ST R 20 F92 (ENCO) DT 0 H 5 DT 20 待编码的16位常数或16位区(源区)S 地址 指令 梯形图程序 布尔形式 触发器 存放编码后数据的起始16位区(目的区)D 规定待编码的起始位和位数的16位常数或16位区n WX WY WR WL(*1) SV EV DT LD(*1) FL(*2) IX(*3)IY(*4) K H S A A A A A A A A A N/A N/A N/A N/A A n A A A A A A A A A A A A A A D N/A A A A A A A A A A A N/A N/A A 操作数 索引变址 定时器/计数器 索引寄存器 常数继电器 数据寄存器 FP-e/FP0/FP∑/FP1/FP-M/ FP2/FP2SH/FP3/FP10SH 适用机型 3-201 (*1)此处不适用FP-M、FP0、FP-e和FP1。 (*2)此处不适用FP-M、FP0、FP-e、FPΣ和FP1。 (*3)对于FPΣ、FP2、FP2SH和FP10SH,此处为I0至IC。 (*4)对于FPΣ、FP2、FP2SH和FP10SH,此处为ID。 示例说明 当触发器R20为ON时,根据n:H5对数据寄存器DT11和DT10的内容进行编码。编码结果存储在起始 于数据寄存器DT20中数据位0的8位中。 当n:H 0 0 0 5 时 进行编码的数据位数量:2ⁿ = 32位(n = 5) 用于目标数据的待编码的起始数据位:数据位0 位址 15 . . 12 11 . . 8 7 . . 4 3 . . 0 DT11 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 源地址[S] 位址 15 . . 12 11 . . 8 7 . . 4 3 . . 0 DT20 0 0 0 0 0 0 0 0 0 0 0 1 1 0 0 0 10进制 K8 目地址[D] 位址 15 . . 12 11 . . 8 7 . . 4 3 . . 0 DT10 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 由H5指定32位 由H5指定32位 编码结果K8被存储在DT20 编码结果:K8第8位到15位为0 开始位置 描述 根据n的内容,对S指定的数据的内容进行编码。编码结果存储于由D指定的数据位开始的16位区。 若在一个被解码的区段中有一个以上数据位为ON,则最高位有效。 对在以S指定的区的开始处的2nL段的内容进行编码。编码结果作为十进制数据存储在开始于以nH位指定 的8位中。 编码结果的指定区中的无效的数据位被设置为0。 3-202 n:用十六进制数据指定目标数据中的起始数据位和待编码数据位的数量。 如何指定控制数据“n” 位址 15 . . 12 11 . . 8 7 . . 4 3 . . 0 n - - - - 0 0 0 0 - - - - 0 1 0 1 16位数据 设定值 起始位 H0 0 H1 1 H2 2 H3 3 H4 4 H5 5 H6 6 H7 7 H8 8 H9 9 HA 10 HB 11 HC 12 HD 13 HE 14 HF 15 被编码的目的址数据的起始位 (范围:H0到HF) 被编码的位数的位数 (范围:H0到H8) 设定值 位数 H1 2 H2 4 H3 8(1个字节) H4 16(1个字) H5 32(2个字) H6 64(4个字) H7 128(8个字) H8 256(16个字) 注:带”-”标记的位无效 3-203 编码结果 15 . . 12 11 . . 8 7 . . 4 3 . . 0 [二进制(十进制)] 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 (K0) 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 1 (K1) 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 1 0 (K2) 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 1 1 (K3) 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 1 0 0 (K4) 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 1 0 1 (K5) 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 1 1 0 (K6) 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 1 1 1 (K7) 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 1 0 0 0 (K8) 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 1 0 0 1 (K9) 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 1 0 1 0 (K10) 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 1 0 1 1 (K11) 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 1 1 0 0 (K12) 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 0 1 (K13) 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 0 (K14) 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 (K15) 被编码的数据 编码示例 对16位数据进行编码(nL=4)时,编码结果如下所示。 ·错误标志(R9007):以下情况时为ON并保持ON - 变址数指定区超限 - 被编码的数据位数量超出1~8的范围 - 被编码的数据位之和以及起始数据位超出1~16的范围 - 被编码的数据为0 ·错误标志(R9008):以下情况时瞬间为ON - 变址数指定区超限 - 被编码的数据位数量超出1~8的范围 - 被编码的数据位之和以及起始数据位超出1~16的范围 - 被编码的数据为0 标志位状态 3-204 16位数据组合 操作数 A: 可以使用 N/A: 不可使用 程序示例 概述 将指定的16位数据的低4位(数据位0~3)组合为1个字。 对于FP-M/FP0/FP1/FP-e/FPΣ, P型高级指令不适用。 F93(UNIT) P93(PUNIT) 10 11 ST R 20 F93 (UNIT) DT 10 K 3 DT 20 被组合数据的起始16位区(源区)S 地址 指令 梯形图程序 布尔形式 触发器 存放组合数据的16位区(目的区)D 规定被组合数据个数的16位常数或16位区n WX WY WR WL(*1) SV EV DT LD(*1) FL(*2) IX(*3)IY(*4) K H S A A A A A A A A A N/A N/A N/A N/A A n A A A A A A A A A A A A A A D N/A A A A A A A A A A A N/A N/A A 操作数 索引变址 定时器/计数器 索引寄存器 常数继电器 数据寄存器 FP-e/FP0/FP∑/FP1/FP-M/ FP2/FP2SH/FP3/FP10SH 适用机型 3-205 (*1)此处不适用FP-M、FP0、FP-e和FP1。 (*2)此处不适用FP-M、FP0、FP-e、FPΣ和FP1。 (*3)对于FPΣ、FP2、FP2SH和FP10SH,此处为I0至IC。 (*4)对于FPΣ、FP2、FP2SH和FP10SH,此处为ID。 示例说明 当触发器R20为ON时,提取数据寄存器DT12~DT10的低4位,将这些数据组合为字数据后存放到数据 寄存器DT20中。 位址 15 . . 12 11 . . 8 7 . . 4 3 . . 0 DT11 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 DT12 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 DT13 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 当n < K4 时,在位地址12到15位为”0” 位址 15 . . 12 11 . . 8 7 . . 4 3 . . 0 DT20 0 0 0 0 0 1 0 0 0 0 1 0 0 0 0 1 ·错误标志(R9007):以下情况时为ON并保持ON - 变址数指定区超限 - 被组合的数据区数量等于或大于5 ·错误标志(R9008):以下情况时瞬间为ON - 变址数指定区超限 - 被组合的数据区数量等于或大于5 标志位状态 位址 15 . . 12 11 . . 8 7 . . 4 3 . . 0 S S+1 S+2 S+3 Digit 4 Digit 1 Digit 2 Digit 3 位址 15 . . 12 11 . . 8 7 . . 4 3 . . 0 D Digit 4 Digit 3 Digit 2 Digit 1 描述 提取从S指定的16位数据区开始的各数据的低4位,并将这些数据组合为一个字数据,存放到由D指定的 数据区中。 n指定用于提取的数据区的数量。 (n的范围:K0~K4) 当n的指定为K0时,不执行本指令。 当n<4时,16位数据D中未被使用的数据位被自动设置为“0”。 源地址 目的址 n 每个数据区的位 地址4到15都无效 3-206 16位数据分离 操作数 A: 可以使用 N/A: 不可使用 程序示例 概述 将指定的16位数据分解为4个4位(4-bit)的单元,并将这些单元分别放入指定的 16位数据的低4位。 对于FP-M/FP0/FP1/FP-e/FPΣ, P型高级指令不适用。 F94(DIST) P94(PDIST) 10 11 ST R 20 F94 (DIST) DT 10 K 4 DT 20 被分离的16位常数或16位区(源区) S 地址 指令 梯形图程序 布尔形式 触发器 存放分离数据的起始16位区(目的区) D 规定分离数据个数的16位常数或16位区n WX WY WR WL(*1) SV EV DT LD(*1) FL(*2) IX(*3)IY(*4) K H S A A A A A A A A A A A A A A n A A A A A A A A A A A A A A D N/A A A A A A A A A N/A N/A N/A N/A A 操作数 索引变址 定时器/计数器 索引寄存器 常数继电器 数据寄存器 FP-e/FP0/FP∑/FP1/FP-M/ FP2/FP2SH/FP3/FP10SH 适用机型 3-207 (*1)此处不适用FP-M、FP0、FP-e和FP1。 (*2)此处不适用FP-M、FP0、FP-e、FPΣ和FP1。 (*3)对于FPΣ、FP2、FP2SH和FP10SH,此处为I0至IC。 (*4)对于FPΣ、FP2、FP2SH和FP10SH,此处为ID。 示例说明 当触发器R20为ON时,将16位数据寄存器DT10以4位(4bit)为单位分解,并将分解后的数据分别放入数 据寄存器DT20~DT30的低4位(数据位0~3)中。 位址 15 . . 12 11 . . 8 7 . . 4 3 . . 0 DT20 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 DT21 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 DT22 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 DT23 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 位址 15 . . 12 11 . . 8 7 . . 4 3 . . 0 DT10 0 1 1 1 0 0 1 1 0 0 0 1 0 0 0 0 ·错误标志(R9007):以下情况时为ON并保持ON - 变址数指定区超限 - 被n的数值等于或大于5 - 由D指定的传输地址超出范围 ·错误标志(R9008):以下情况时瞬间为ON - 变址数指定区超限 - 被n的数值等于或大于5 - 由D指定的传输地址超出范围 标志位状态 描述 将由S指定16位数据区以4位(4bit)为单位分解,并将分解后的数据分别放入从D开始的16位数据区的 低4位(数据位0~3)中。 n指定分离的数据的数量。(范围:K0~K4) 当n指定为K0时,不执行本指令。 位址 15 . . 12 11 . . 8 7 . . 4 3 . . 0 D D+1 D+2 D+3 Digit 1 Digit 2 Digit 3 Digit 4 位址 15 . . 12 11 . . 8 7 . . 4 3 . . 0 S Digit 4 Digit 3 Digit 2 Digit 1 n源地址 目的址 位地址4到15都填充为0 3-208 字符→ASCII码 操作数 A: 可以使用 N/A: 不可使用 程序示例 概述 将字符常数转换为ASCII码。 对于FP-M/FP0/FP1/FP-e/FPΣ, P型高级指令不适用。 F95(ASC) P95(PASC) 10 11 ST R 20 F95 (ASC) M ABC1230_DEF DT 2 字符常数(最多12个字符) S 地址 指令 梯形图程序 布尔形式 触发器 存放6个字ASCII码的起始16位区(目的区)D WX WY WR WL(*1) SV EV DT LD(*1) FL(*2) IX(*3)IY(*4) K H M S N/A N/A N/A N/A N/A N/A N/A N/A N/A N/A N/A N/A N/A A N/A D N/A A A A A A A A A A N/A N/A N/A N/A N/A 索引变址 常数 操作数 定时器/计数器 索引寄存器继电器 数据寄存器 “_”表示空格键.实际是空格. 示例说明 当触发器R20为ON时,将字符串常数“ABCD1230_DEF”转换为ASCII码。ASCII码存放在DT7~DT2中。 当S指定的字符常数数量小于12时,ASCII码H20(空格)将被填充到目标区的空白处。 数据寄存器 ASCII 16进制码 2 0 4 6 4 5 4 4 2 0 3 0 3 3 3 2 3 1 4 3 4 2 4 1 ASCII 码 2 DT7 DT6 DT5 F E D DT4 B A0 DT3 DT2 1 C3 空格 字符内容 M A B C 1 2 3 0 D E F R 20:ON 字符常数标识 FP-e/FP0/FP∑/FP1 C24/C40 C56/C72/ FP-M C20/C32/FP2/FP2SH/FP3/FP10SH 适用机型 3-209 (*1)此处不适用FP-M、FP0、FP-e和FP1。 (*2)此处不适用FP-M、FP0、FP-e、FPΣ和FP1。 (*3)对于FPΣ、FP2、FP2SH和FP10SH,此处为I0至IC。 (*4)对于FPΣ、FP2、FP2SH和FP10SH,此处为ID。 描述 将S指定的字符常数转换为ASCII码。经转换的ASCII码存储在由D指定的16位区开始的6个字中。 字符常数M可以用编程工具软件输入。 一个字符常数“A”的转换示例 编程时的注意事项 · S: M A 11个空格 高位字节 低位字节 · S: M A 11个空格 · S: M A 6个空格 5个空格 高位字节 低位字节 高位字节 低位字节 3-210 ·错误标志(R9007):当ASCII码的区域超出范围(6字:6个16位区)时,变为ON并保持ON。 ·错误标志(R9008):当ASCII码的区域超出范围(6字:6个16位区)时,瞬间为ON。 标志位状态 ASCII 16进制码 0 0 0 0 1 1 1 1 0 1 1 1 0 0 1 1 0 1 0 1 0 1 0 1 0 1 2 3 4 5 6 7 0 0 0 0 0 NUL DLE SPACE 0 @ P p 0 0 0 1 1 SOH DC1 ! 1 A Q a q 0 0 1 0 2 STX DC2 " 2 B R b r 0 0 1 1 3 ETX DC3 # 3 C S c s 0 1 0 0 4 EOT DC4 $ 4 D T d t 0 1 0 1 5 ENQ NAK % 5 E U e u 0 1 1 0 低 6 ACK SYN & 6 F V f v 0 1 1 1 位 7 BEL ETB ' 7 G W g w 1 0 0 0 8 BS CAN ( 8 H X h x 1 0 0 1 9 HT EM ) 9 I Y i y 1 0 1 0 A LF SUB * : J Z j z 1 0 1 1 B VT ESC + ; K [ k { 1 1 0 0 C FF FS , < L l | 1 1 0 1 D CR GS - = M ] m } 1 1 1 0 E SO RS . > N ^ n ~ 1 1 1 1 F SI US / ? O _ o DEL 16进制 b7 b6 b4 b5 高位ASCII b0b1b3 b2b5 b4b7 b6 3-211 16位数据查找 操作数 A: 可以使用 N/A: 不可使用 程序示例 概述 16位区的数据块中查找指定的数值。 对于FP-M/FP0/FP1/FP-e/FPΣ, P型高级指令不适用。 F96(SRC) P96(PSRC) 10 11 ST R 20 F96 (SRC) DT 10 DT 20 DT 40 要查找的16位常数或存放数据的16位区S1 地址 指令 梯形图程序 布尔形式 触发器 区域块的末16位区S3 WX WY WR WL(*1) SV EV DT LD(*1) FL(*2) IX(*3)IY(*4) K H S1 A A A A A A A A A A A A A A S2 N/A A A A A A A A A N/A N/A N/A N/A A S3 N/A A A A A A A A A N/A N/A N/A N/A A 索引变址 常数 操作数 定时器/计数器 索引寄存器继电器 数据寄存器 区域块的首16位区S2 FP-e/FP0/FP∑/FP1/FP-M/ FP2/FP2SH/FP3/FP10SH 适用机型 3-212 (*1)此处不适用FP-M、FP0、FP-e和FP1。 (*2)此处不适用FP-M、FP0、FP-e、FPΣ和FP1。 (*3)对于FPΣ、FP2、FP2SH和FP10SH,此处为I0至IC。 (*4)对于FPΣ、FP2、FP2SH和FP10SH,此处为ID。 示例说明 当触发器R0为ON时,在数据寄存器DT20至DT40的数据块中查找数据寄存器DT10中给定的值。 例如,需要查找的数值为H1234时,应将“H1234”写入DT10。 ·错误标志(R9007):以下情况时为ON并保持ON - 变址数指定区超限 - S2 > S3 ·错误标志(R9008):以下情况时瞬间为ON - 变址数指定区超限 - S2 > S3 标志位状态 描述 在从S2(起始区)到S3(结束区)指定的16位数据区中查找与S1相符的数据。 执行查找后,结果存放如下: - 与S1一致的数据项的数量存放在特殊数据寄存器DT9037(对于FP2、FP2SH、FP10SH为DT90037)中。 - 第一个与S1一致的数据项的相对位置(从S2开始计数)存放在特殊数据寄存器DT9038(对于FP2、FP2SH、 FP10SH为DT90038)中。 起始区S2与结束区S3应该满足以下要求: - 为同类型操作数 - S2 ≤ S3 若DT22、DT39和DT40符合被查找的数据,则产生以下情况: - 如果符合被查找数据的寄存器数量等于3 则“K3”被写入DT9037(对于FP2、FP2SH、FP10SH:DT90037) - 如果第一个符合被查找数据的位置(相对位置)等于2 则“K2”被写入DT9038(对于FP2、FP2SH、FP10SH:DT90038) DT20: 1 2 1 1 0 [S2] DT21: 1 2 F F 1 DT22: 1 2 3 4 2 DT23: 7 F F F 3 DT39: 1 2 3 4 19 DT40: 1 2 3 4 20 [S3] DT10: 1 2 1 1 0 [S2] [S1] 查找数据 16位区块 查找 相对位置 3-213 32位数据查找 操作数 A: 可以使用 N/A: 不可使用 程序示例 概述 在32位的数据块中查找指定的数值。 对于FPΣ, P型高级指令不适用。 F97(DSRC) P97(PDSRC) 10 11 ST R 20 F97 (DSRC) DT 10 DT 20 DT 40 要查找的32位常数或存放数据的32位区S1 地址 指令 梯形图程序 布尔形式 区域块的末32位区S3 区域块的首32位区S2 触发器 WX WY WR WL SV EV DT LD FL(*1) K H f S1 A A A A A A A A A A A A A N/A S2 N/A A A A A A A A A N/A N/A N/A A N/A S3 N/A A A A A A A A A N/A N/A N/A A N/AN/A 常数 整型参数索引变址 A N/A 操作数 定时器/计数器 索引寄存器继电器 数据寄存器 I FP∑/FP2/FP2SH/FP10SH 适用机型 3-214 (*1)此处不适用FPΣ。 描述 当触发器为ON时,在从S2(起始区)至S3(结束区)指定的32位的数据块查找与S1一致的数值。 进行查找后,结果存储如下。 - 与S1一致的数据项的数量存储于特殊数据寄存器DT90037。 - 从起始32位区S2开始计数,第一个一致的数据项的相对位置,存储于特殊数据寄存器DT90038。 起始区S2和结束区S3应满足: - 为同类型操作数。 - S2≤S3 从S2到S3查找数据S1。 ·错误标志(R9007):以下情况时为ON并保持ON - 变址数指定区超限 - S2 > S3 ·错误标志(R9008):以下情况时瞬间为ON - 变址数指定区超限 - S2 > S3 标志位状态 若S2中指定了0或一偶数,则也应在S3中指定一偶数。 若S2中指定了一奇数,则也应在S3中指定一奇数。 编程时的注意事项 3-215 示例说明 当触发器R0为ON时,在数据寄存器DT20至DT40的数据块中查找数据寄存器DT10中给定的值。 例如,需要查找的数值为H1234时,应将“H1234”写入DT10。 与数据寄存器DT10一致的数据项的数量“K3”存储于特殊寄存器DT90037。 从数据寄存器DT20开始计数的相对地址存储于特殊数据寄存器DT90038。 DT21 DT20: 0 1 2 3 5 7 6 4 0 [S2] DT23 DT22: 1 2 F F 1 2 F F 1 DT25 DT24 0 1 2 3 4 5 6 7 2 DT27 DT26 7 F F F 7 F F F 3 DT39 DT38 0 1 2 3 4 5 6 7 9 DT41 DT40: 0 1 2 3 4 5 6 7 10 [S3] DT11 DT10: 0 1 2 3 4 5 6 7 [S1] 查找数据 32位数据表 数据压缩移位读取 操作数 程序示例 概述 将存储于数据表的最高地址的非零数据移出至指定区,并将表中的数据 压缩至高端地址。 对于FPΣ, P型高级指令不适用。 F98(CMPR) P98(PCMPR) 10 11 ST R 20 F98 (CMPR) DT 0 DT 5 DT 10 起始的16位数据区D1 地址 指令 梯形图程序 布尔形式 存储被移出的数据的16位区D3 结束的16位数据区D2 触发器 FP∑/FP2/FP2SH/FP3/FP10SH 适用机型 3-216 A: 可以使用 N/A: 不可使用 WX WY WR WL SV EV DT LD FL(*1) K H f D1 N/A A A A A A A A A N/A N/A N/A A N/A D2 N/A A A A A A A A A N/A N/A N/A A N/A D3 N/A A A A A A A A A N/A N/A N/A A N/A 操作数 定时器/计数器 索引寄存器继电器 数据寄存器 I N/A 常数 整型参数索引变址 N/A N/A (*1)此处不适用FPΣ。 示例说明 若执行条件(触发器)R0为ON,则数据寄存器DT5的内容被送入数据寄存器DT10。 同时,在DT0至DT5的范围内,将所有非零的数据从DT5开始顺序存放。“0”被设置到数据表的另一区域。 ·错误标志(R9007):以下情况时为ON并保持ON - 变址数指定区超限 - D1 > D2 - D1和D2不是相同类型的存储区 ·错误标志(R9008):以下情况时瞬间为ON - 变址数指定区超限 - D1 > D2 - D1和D2不是相同类型的存储区 标志位状态 描述 在D1和D2指定的数据表中数据重新排列如下: - D2(最高地址)中的内容移出至D3指定的数据区。 - 非零数据在指定范围内的从高端地址方向顺序移动(压缩)。 指定数据 范围 F98(CMPR)执行 3-217 应用示例 结合F99(CMPW)/P99(PCMPW)指令,可用于构建一个可选择性缓冲区。 (1) 执行F99(CMPW)/P99(PCMPW)指令。 当数据写入缓冲器(指定范围区)的首地址时,它们被顺序保存和累积在缓冲区中。最旧的数据将保存在缓 冲区的最末一个地址中。 可以用于从随机写入的数据中抽取有效的非零数据。 (2)执行F98(CMPR)/P98(PCMPR)指令。 当缓冲区(指定范围区)的最末地址中的数据被读取时,从最旧的地址中开始提取数据。 缓冲区中其余的数据向首地址方向移动,所以,此时最旧的数据被存放在缓冲区最旧的地址中。 F98(CMPR)执行 指定数据范围 F98(CMPR) 执行 每次执行F98(CMPR)后,数据按顺序从①到③被提取。 3-218 指定数据范围 数据压缩移位写入 操作数 A: 可以使用 N/A: 不可使用 程序示例 概述 将数据移入指定数据表的最小地址中,并向高地址压缩。 对于FPΣ, P型高级指令不适用。 F99(CMPW) F99(PCMPW) 10 11 ST R 20 F99 (CMPW) DT 10 DT 0 DT 5 存放移进的16位常数或16位区S 地址 指令 梯形图程序 布尔形式 区域块的末16位区D2 区域块的首16位区D1 触发器 WX WY WR WL SV EV DT LD FL(*1) IX(*2)IY(*3) K H S A A A A A A A A A A A A A A D1 N/A A A A A A A A A N/A N/A N/A N/A A D2 N/A A A A A A A A A N/A N/A N/A N/A A 索引变址 常数 操作数 定时器/计数器 索引寄存器继电器 数据寄存器 示例说明 若执行条件(触发器)R0为ON,则数据寄存器DT5的内容被送入数据寄存器DT10。 同时,在DT0至DT5的范围内,将所有非零的数据从DT5开始顺序存放。“0”被设置到数据表的另一区域。 FP∑/FP2/FP2SH/FP3/FP10SH 适用机型 3-219 (*1)此处不适用FPΣ。 (*2)对于FPΣ、FP2、FP2SH和FP10SH,此处为I0至IC。 (*3)对于FPΣ、FP2、FP2SH和FP10SH,此处为ID。 说明 因为S的内容被写入DT0,所以DT0的原有内容(如“555”)被重写。 ·错误标志(R9007):以下情况时为ON并保持ON - 变址数指定区超限 - D1 > D2 - 起始区D1与结束区D2不是相同类型的存储区。 ·错误标志(R9008):以下情况时瞬间为ON - 变址数指定区超限 - D1 > D2 - 起始区D1与结束区D2不是相同类型的存储区。 标志位状态 描述 在由D1和D2指定的数据表中,数据被重新排列如下: - S指定的数据被移入由D1指定的区域(起始区)。 - 非零数据在指定范围内向高地址顺序序移动(压缩)。 起始区D1和结束区D2应为同类型的操作数。 指定D1和D2时一定要使“D1≤D2”。 若S的内容为“0”,则只执行压缩移位。 3-220 指定数据 范围 F99(CMPW)执行 应用示例 结合F99(CMPW)/P99(PCMPW)指令,可用于构建一个可选择性缓冲区。 (1) 执行F99(CMPW)/P99(PCMPW)指令。 当数据写入缓冲器(指定范围区)的首地址时,它们被顺序保存和累积在缓冲区中。最旧的数据将保存在缓 冲区的最末一个地址中。 可以用于从随机写入的数据中抽取有效的非零数据。 (2)执行F98(CMPR)/P98(PCMPR)指令。 当缓冲区(指定范围区)的最末地址中的数据被读取时,从最旧的地址中开始提取数据。 缓冲区中其余的数据向首地址方向移动,所以,此时最旧的数据被存放在缓冲区最旧的地址中。 F99(CMPW)执行 指定数据范围 F99(CMPW) 执行 每次执行F99(CMPW)后,只有有效数据被保存。 有效数据 3-221 16位数据以位为单位右移 操作数 程序示例 概述 以位单元将16bit数据右移指定的位数。 对于FP-M/FP0/FP1/FP-e/FPΣ, P型高级指令不适用。 F100(SHR) F100(PSHR) 10 11 ST R 0 F100 (SHR) DT 0 K 4 右移的16位区D 地址 指令 梯形图程序 布尔形式 16位常数或16位区(指定移位的位数) n 触发器 WX WY WR WL(*1) SV EV DT LD(*1) FL(*2) IX(*3)IY(*4) K H D N/A A A A A A A A A A A N/A N/A A n A A A A A A A A A A A A A A 索引变址 常数 操作数 定时器/计数器 索引寄存器继电器 数据寄存器 示例说明 当触发器R0为ON时,将数据寄存器DT0中数据右移4位。 数据位3中的数据传输至特殊内部继电器(进位标志)。 A: 可以使用 N/A: 不可使用 R0:ON 位址 15 . . 12 11 . . 8 7 . . 4 3 . . 0 DT0 0 0 0 0 1 0 1 0 0 1 1 0 1 1 0 0 位址 15 . . 12 11 . . 8 7 . . 4 3 . . 0 DT0 1 0 1 0 0 1 1 0 1 1 0 0 1 0 1 1 在这种情况下,DT0的高4位为0 位址3的数据被传送到R9009(标志位) FP-e/FP0/FP∑/FP1/FP-M/ FP2/FP2SH/FP3/FP10SH 适用机型 3-222 (*1)此处不适用FP-M、FP0、FP-e和FP1。 (*2)此处不适用FP-M、FP0、FP-e、FPΣ和FP1。 (*3)对于FPΣ、FP2、FP2SH和FP10SH,此处为I0至IC。 (*4)对于FPΣ、FP2、FP2SH和FP10SH,此处为ID。 ·错误标志(R9007):在变址数指定区超限时为ON并保持ON。 ·错误标志(R9008):在变址数指定的区超限时瞬间为ON。 ·进位标志(R9009):当传输到R9009(第n bit)的内容被认为是1时,瞬间为ON。 标志位状态 描述 将由D指定的16位数据区向右(向低位)移n位。 当右移n位时, - 16位数据区的高n位填充0。 - 数据位n位中的数据被传输至特殊内部继电器R9009(进位标志)。 n只有16位区的低8位有效。移动总位数可在1位至255位范围内指定。 位址 15 . . 12 11 . . 8 7 . . 4 3 . . 0 D 0 0 0 0 位址 15 . . 12 11 . . 8 7 . . 4 3 . . 0 D D的高n位为0 位址n的数据被传送到R9009(标志位) n 高8位无效 K0-K255 (H00-HFF) 3-223 16位数据以位为单位左移 操作数 程序示例 概述 将以位单元将数据左移指定的位数。 对于FP-M/FP0/FP1/FP-e/FPΣ, P型高级指令不适用 F101(SHL) P101(PSHL) 10 11 ST R 0 F101 (SHL) DT 0 K 4 左移的16位区D 地址 指令 梯形图程序 布尔形式 16位常数或16位区(指定移位的位数) n 触发器 A: 可以使用 N/A: 不可使用 FP-e/FP0/FP∑/FP1/FP-M/ FP2/FP2SH/FP3/FP10SH 适用机型 3-224 当触发器R0为ON时,将数据寄存器DT0中数据右移4位。 数据位12中的数据传输至特殊内部继电器(进位标志)。 示例说明 WX WY WR WL(*1) SV EV DT LD(*1) FL(*2) IX(*3)IY(*4) K H D N/A A A A A A A A A A A N/A N/A A n A A A A A A A A A A A A A A 索引变址 常数 操作数 定时器/计数器 索引寄存器继电器 数据寄存器 (*1)此处不适用FP-M、FP0、FP-e和FP1。 (*2)此处不适用FP-M、FP0、FP-e、FPΣ和FP1。 (*3)对于FPΣ、FP2、FP2SH和FP10SH,此处为I0至IC。 (*4)对于FPΣ、FP2、FP2SH和FP10SH,此处为ID。 ·错误标志(R9007):在变址数指定区超限时为ON并保持ON。 ·错误标志(R9008):在变址数指定的区超限时瞬间为ON。 ·进位标志(R9009):当传输到R9009(第16-n bit)的内容被认为是1时,瞬间为ON。 标志位状态 描述 将由D指定的16位数据区向左(向高位)移n位。 当左移n位时, - 16位数据区的低n位填充0。 - 数据位16-n位中的数据被传输至特殊内部继电器R9009(进位标志)。 n只有16位区的低8位有效。移动总位数可在1位至255位范围内指定。 位址 15 . . 12 11 . . 8 7 . . 4 3 . . 0 D D的低n位为0 n 高8位无效 K0-K255 (H00-HFF) 3-225 位址 15 . . 12 11 . . 8 7 . . 4 3 . . 0 DT0 0 1 1 0 1 1 0 0 1 0 1 1 0 0 0 0 位址 15 . . 12 11 . . 8 7 . . 4 3 . . 0 DT0 1 0 1 0 0 1 1 0 1 1 0 0 1 0 1 1 在这种情况下,DT0的低4位为0 位址12的数据被 传送到R9009(标志位) 位址 15 . . 12 11 . . 8 7 . . 4 3 . . 0 D 0 0 0 0 位址16-n的数据被 传送到R9009(标志位) 32位数据以位为单位右移 操作数 程序示例 概述 将以位为单位将数据右移指定的位数。 对FPΣ, P型高级指令不适用。 F102(DSHR) F102(PDSHR) 10 11 ST R 0 F102 (DSHR) DT 10 DT 2 左移的32位数据的低16位区D 地址 指令 梯形图程序 布尔形式 16位常数或16位区(指定被移位的位数)n的范围:K0~K255(H0~HFF)n 触发器 A: 可以使用 N/A: 不可使用 WX WY WR WL SV EV DT LD FL(*1) K H f D N/A A A A A A A A A N/A N/A N/A A N/A n A A A A A A A A A A A N/A A N/A 常数 整型参数索引变址 A A 操作数 定时器/计数器 索引寄存器继电器 数据寄存器 I FP∑/FP2/FP2SH/FP10SH 适用机型 3-226 (*1)此处不适用FPΣ。 ·错误标志(R9007):在变址数指定区超限时为ON并保持ON。 ·错误标志(R9008):在变址数指定的区超限时瞬间为ON。 ·进位标志(R9009):当传输到R9009(第n bit)的内容被认为是1时,瞬间为ON。 标志位状态 描述 将由D指定的32位数据区向右(向低位)移n位。 当右移n位时, - 32位数据区的高位n填充0。 - 数据位n位中的数据被传输至特殊内部继电器R9009(进位标志)。 n只有16位区的低8位有效。移动总位数可在1位至255位范围内指定。 当[n]指定为K0时,D和D+1中的内容以及特殊内部数据寄存器R9009(进位标志)都不变化。 当[n]指定为K32以上时,D和D+1中的内容为0. 高8位无效 K0-K255 (H00-HFF) [n 位]为0 在第n位的数据被传送到 R9009(标志位) 3-227 32位数据以位为单位左移 操作数 程序示例 概述 将以位单元将数据左移指定的位数。 对FPΣ, P型高级指令不适用。 F103(DSHL) P103(PDSHL) 10 11 ST R 0 F103 (DSHL) DT 10 DT 2 左移的32位数据的低16位区D 地址 指令 梯形图程序 布尔形式 16位常数或16位区((指定被移位的位数) n的范围:K0~K255(H0~HFF)n 触发器 A: 可以使用 N/A: 不可使用 描述 将由D指定的32位数据区向左(向高位)移n位。 当左移n位时, - 从数据位0开始的n位填充0。 -从最高数据位开始的第n位中的数据被传输至特殊内部继电器R9009(进位标志)。 在第16-n位的数据被 传送到R9009(标志位) [n 位]从位地址0开始为0 FP∑/FP2/FP2SH/FP10SH 适用机型 3-228 WX WY WR WL SV EV DT LD FL(*1) K H f D N/A A A A A A A A A N/A N/A N/A A N/A n A A A A A A A A A A A N/A A N/A 常数 整型参数索引变址 A A 操作数 定时器/计数器 索引寄存器继电器 数据寄存器 I (*1)此处不适用FPΣ。 ·错误标志(R9007):在变址数指定区超限时为ON并保持ON。 ·错误标志(R9008):在变址数指定的区超限时瞬间为ON。 ·进位标志(R9009):当传输到R900R(从最高位开始第n bit)的内容被认为是1时,瞬间为ON。 标志位状态 n只有16位区的低8位有效。移动总位数可在1位至255位范围内指定。 当[n]指定为K0时,D和D+1中的内容以及特殊内部数据寄存器R9009(进位标志)都不变化。 当[n]指定为K32或更大的数值时,D和D+1中的内容全部变为0。 高8位无效 K0~K255 (H00~HFF) 3-229 16位数据右移1digit(4bit) 操作数 A: 可以使用 N/A: 不可使用 程序示例 概述 将指定的16位数据右移digit(4位)。 对于FP-M/FP0/FP1/FP-e/FPΣ, P型高级指令不适用。 F105(BSR) P105(PBSR) 10 11 ST R 0 F105 (BSR) DT 0 地址 指令 梯形图程序 布尔形式 触发器 待右移的16位区D WX WY WR WL(*1) SV EV DT LD(*1) FL(*2) IX(*3)IY(*4) K H D N/A A A A A A A A A A A N/A N/A A 操作数 索引变址 定时器/计数器 索引寄存器 常数继电器 数据寄存器 示例说明 当触发器R0为ON时,将数据寄存器DT0中数据右移1个digit(4位)。 第一个digit(数据位0~3)中的数据将被移出并且被传输到特殊数据寄存器DT9014(对于FP0 T32/ FPΣ/FP2/FP2SH/FP10SH为DT90014)的最低digit(数据位0~3)中。 FP-e/FP0/FP∑/FP1/FP-M/ FP2/FP2SH/FP3/FP10SH 适用机型 3-230 (*1)此处不适用FP-M、FP0、FP-e和FP1。 (*2)此处不适用FP-M、FP0、FP-e、FPΣ和FP1。 (*3)对于FPΣ、FP2、FP2SH和FP10SH,此处为I0至IC。 (*4)对于FPΣ、FP2、FP2SH和FP10SH,此处为ID。 ·错误标志(R9007):在变址数指定区超限时为ON并保持ON。 ·错误标志(R9008):在变址数指定的区超限时瞬间为ON。 标志位状态 当右移1个digit(4位)时, - D中第一个digit(数据位0~3)中的数据将被移出并且被传输到特殊数据寄存器 DT9014(对于FP0 T32/FPΣ/FP2/FP2SH/FP10SH为DT90014)的最低digit(数据位0~3)中。 - 16位数据的第4个digit(数据位12~15)填充0。 描述 将由D指定16位数据右移1个digit(4位)(向低位)。 3-231 位地址 15 . . 12 11 . . 8 7 . . 4 3 . . 0 二进制数据 1 0 0 1 1 0 0 1 1 0 0 1 1 0 0 1 十六进制数据 99 9 9 DT0 ( H9999 ) ( H999 ) ( H9 ) 位地址 15 . . 12 11 . . 8 7 . . 4 3 . . 0 二进制数据 0 0 0 0 1 0 0 1 1 0 0 1 1 0 0 1 十六进制数据 9 DT0 90 9 R0:ON 位地址 15 . . 12 11 . . 8 7 . . 4 3 . . 0 二进制数据 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 1 十六进制数据 0 DT9014/ DT90014 90 0 位地址 15 . . 12 11 . . 8 7 . . 4 3 . . 0 D 十六进制数据 Digit4 Digit3 Digit2 Digit1 位地址 15 . . 12 11 . . 8 7 . . 4 3 . . 0 0 Digit1十六进制数据 0 0 DT9014/ DT90014 位地址 15 . . 12 11 . . 8 7 . . 4 3 . . 0 D 十六进制数据 0 Digit4 Digit3 Digit2 此Digit为0 ↑ 16位数据左移1digit(4bit) 操作数 程序示例 概述 将指定的16位数据左移digit(4位)。 对于FP-M/FP0/FP1/FP-e/FPΣ, P型高级指令不适用。 F106(BSL) P106(PBSL) 10 11 ST R 0 F106 (BSL) DT 0 地址 指令 梯形图程序 布尔形式 触发器 待左移的16位区D 示例说明 当触发器R0为ON时,将数据寄存器DT0中数据左移1个digit(4位)。 第四个digit(数据位12~15)中的数据将被移出并且被传输到特殊数据寄存器DT9014(对于FP0 T32/ FPΣ/FP2/FP2SH/FP10SH为DT90014)的最低digit(数据位0~3)中。 FP-e/FP0/FP∑/FP1/FP-M/ FP2/FP2SH/FP3/FP10SH 适用机型 3-232 A: 可以使用 N/A: 不可使用 WX WY WR WL(*1) SV EV DT LD(*1) FL(*2) IX(*3)IY(*4) K H D N/A A A A A A A A A A A N/A N/A A 操作数 索引变址 定时器/计数器 索引寄存器 常数继电器 数据寄存器 (*1)此处不适用FP-M、FP0、FP-e和FP1。 (*2)此处不适用FP-M、FP0、FP-e、FPΣ和FP1。 (*3)对于FPΣ、FP2、FP2SH和FP10SH,此处为I0至IC。 (*4)对于FPΣ、FP2、FP2SH和FP10SH,此处为ID。 ·错误标志(R9007):在变址数指定区超限时为ON并保持ON。 ·错误标志(R9008):在变址数指定的区超限时瞬间为ON。 标志位状态 当左移1个digit(4位)时, -D中第四个digit(数据位12~15)中的数据将被移出并且被传输到特殊数据寄存器DT9014(对于FP0 T32/ -FPΣ/FP2/FP2SH/FP10SH为DT90014)的最低digit(数据位0~3)中。 - 16位数据的第一个digit(数据位0~3)填充0。 描述 将由D指定16位数据左移1个digit(4位)(向高位)。 3-233 位地址 15 . . 12 11 . . 8 7 . . 4 3 . . 0 二进制数据 1 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 十六进制数据 0 DT0 08 1 ( H8100 ) ( H1000 ) ( H8 ) 位地址 15 . . 12 11 . . 8 7 . . 4 3 . . 0 二进制数据 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 十六进制数据 1 0 0 DT0 0 R0:ON 位地址 15 . . 12 11 . . 8 7 . . 4 3 . . 0 二进制数据 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 十六进制数据 0 0 0 DT9014/ DT90014 8 位地址 15 . . 12 11 . . 8 7 . . 4 3 . . 0 D 十六进制数据 Digit4 Digit3 Digit2 Digit1 位地址 15 . . 12 11 . . 8 7 . . 4 3 . . 0 DT9014/ DT90014 0 Digit4十六进制数据 0 0 位地址 15 . . 12 11 . . 8 7 . . 4 3 . . 0 D 十六进制数据 Digit3 Digit2 Digit1 0 ↑ 此Digit为0 多个16位数据一并右移 操作数 程序示例 概述 将指定范围内的多个16位数据一并右移多个数据位。 对于FPΣ, P型高级指令不适用。 F108(BITR) P108(PBITR) 10 11 ST R 0 F108 (BITR) DT 10 DT 12 K 4 起始16位区D1 地址 指令 梯形图程序 布尔形式 结束16位区D2 触发器 A: 可以使用 N/A: 不可使用 WX WY WR WL SV EV DT LD FL(*1) K H f D1 N/A A A A A A A A A N/A N/A N/A A N/A D2 N/A A A A A A A A A N/A N/A N/A A N/A n A A A A A A A A A A A N/A A N/AA 操作数 定时器/计数器 索引寄存器继电器 数据寄存器 I A 常数 整型参数索引变址 A 指定移动位数的16位常数或16位区n 示例说明 当触发器R10为ON时,将DT10~DT12(3个字)内的数据一并右移4个数据位。 3个字 4个位变为0 4个位被移出 FP∑/FP2/FP2SH/FP10SH 适用机型 3-234 (*1)此处不适用FPΣ。 ·错误标志(R9007):以下情况时为ON并保持ON - 变址数指定区超限 - D1 > D2 - n为16或更大的数值。 ·错误标志(R9008):以下情况时瞬间为ON - 变址数指定区超限 - D1 > D2 - n为16或更大的数值。 标志位状态 D1和D2应当满足: - 为相同类型的操作数 - D1 ≤ D2 当右移n位时, - 起始16位数据D1中的n位数据将被移出。 - 结束区16位数据D2中的n位数据将被置为0。 n可以指定为0~15。如果指定为0,则不产生运算动作。 描述 将由D1(起始区)和D2(结束区)指定的16位数据右移n个数据位。 指定数据范围 触发器:ON N个位被移出 n个位 n个位被移出 3-235 多个16位数据一并左移 操作数 程序示例 概述 将指定范围内的多个16位数据一并左移多个数据位。 对于FPΣ, P型高级指令不适用。 F109(BITL) P109(PBITL) 10 11 ST R 0 F109 (BITL) DT 10 DT 12 K 4 起始16位区D1 地址 指令 梯形图程序 布尔形式 结束16位区D2 触发器 A: 可以使用 N/A: 不可使用 指定移动位数的16位常数或16位区n 示例说明 当触发器R10为ON时,将DT10~DT12(3个字)内的数据一并左移4个数据位。 3个字 4个位变为0DT12的4个 位被移出 FP∑/FP2/FP2SH/FP10SH 适用机型 3-236 WX WY WR WL SV EV DT LD FL(*1) K H f D1 N/A A A A A A A A A N/A N/A N/A A N/A D2 N/A A A A A A A A A N/A N/A N/A A N/A n A A A A A A A A A A A N/A A N/AA 操作数 定时器/计数器 索引寄存器继电器 数据寄存器 I A 常数 整型参数索引变址 A (*1)此处不适用FPΣ。 ·错误标志(R9007):以下情况时为ON并保持ON - 变址数指定区超限 - D1 > D2 - n为16或更大的数值。 ·错误标志(R9008):以下情况时瞬间为ON - 变址数指定区超限 - D1 > D2 - n为16或更大的数值。 标志位状态 D1和D2应当满足: - 为相同类型的操作数 - D1 ≤ D2 当左移n位时, - 结束区16位数据D2中的n位数据将被移出。 - 起始16位数据D1中的n位数据将被置为0。 n可以指定为0~15。如果指定为0,则不产生运算动作。 描述 将由D1(起始区)和D2(结束区)指定的16位数据左移n个数据位。 最后n个位被移出触发器:ON 指定数据范围 n个位 3-237 多个16位数据以 字单位(16位)右移 操作数 程序示例 概述 将指定范围内的多个16位数据右移一个字(16位)。 对于FP-M/FP0/FP1/FP-e/FPΣ, P型高级指令不适用。 F110(WSHR) P110(PWSHR) 10 11 ST R 0 F110 (SHR) DT 0 K 4 开始16位区地址D1 地址 指令 梯形图程序 布尔形式 结束16位区地址D2 触发器 WX WY WR WL(*1) SV EV DT LD(*1) FL(*2) IX(*3)IY(*4) K H D1 N/A A A A A A A A A N/A N/A N/A N/A A D2 N/A A A A A A A A A N/A N/A N/A N/A A 索引变址 常数 操作数 定时器/计数器 索引寄存器继电器 数据寄存器 示例说明 当触发器R0为ON时,将DT0~DT2(3个字)内的数据右移1个字(16位)。 A: 可以使用 N/A: 不可使用 数据寄存器 十六进制数 0 2 1 2 0 0 3 0 0 2 3 2 DT2 DT1 DT0 DT0的数据被移出 指定数据范围(3个字) FP-e/FP0/FP∑/FP1/FP-M/ FP2/FP2SH/FP3/FP10SH 适用机型 3-238 (*1)此处不适用FP-M、FP0、FP-e和FP1。 (*2)此处不适用FP-M、FP0、FP-e、FPΣ和FP1。 (*3)对于FPΣ、FP2、FP2SH和FP10SH,此处为I0至IC。 (*4)对于FPΣ、FP2、FP2SH和FP10SH,此处为ID。 数据寄存器 十六进制数 0 0 0 0 0 2 1 2 0 0 3 0 DT2 DT1 DT0 ·错误标志(R9007):以下情况时为ON并保持ON - 变址数指定区超限 - D1 > D2 ·错误标志(R9008):以下情况时瞬间为ON - 变址数指定区超限 - D1 > D2 标志位状态 描述 将由D1(起始区)和D2(结束区)指定的16位数据右移(向低位地址)1个字(16位)。 D1和D2应当满足: - 为相同类型的操作数 - D1 ≤ D2 当右移1个字(16位)时, - 起始16位数据D1中的数据将被移出。 - 结束16位数据D2中的数据将被置为0。 起始字被移出 D2 0 D1 指定数据范围 D2 D1 结束的字变为0 3-239 多个16位数据以 字单位(16位)左移 操作数 程序示例 概述 将指定范围内的多个16位数据左移一个字(16位)。 对于FP-M/FP0/FP1/FP-e/FPΣ, P型高级指令不适用。 F111(WSHL) P111(PWSHL) 10 11 ST R 0 F111 (WSHL) DT 0 DT 2 开始16位区D1 地址 指令 梯形图程序 布尔形式 结束16位区D2 触发器 示例说明 当触发器R0为ON时,将DT0~DT2(3个字)内的数据左移1个字(16位)。 DT2的数据被移出 指定数据范围(3个字) FP-e/FP0/FP∑/FP1/FP-M/ FP2/FP2SH/FP3/FP10SH 适用机型 3-240 WX WY WR WL(*1) SV EV DT LD(*1) FL(*2) IX(*3)IY(*4) K H D1 N/A A A A A A A A A N/A N/A N/A N/A A D2 N/A A A A A A A A A N/A N/A N/A N/A A 索引变址 常数 操作数 定时器/计数器 索引寄存器继电器 数据寄存器 A: 可以使用 N/A: 不可使用 (*1)此处不适用FP-M、FP0、FP-e和FP1。 (*2)此处不适用FP-M、FP0、FP-e、FPΣ和FP1。 (*3)对于FPΣ、FP2、FP2SH和FP10SH,此处为I0至IC。 (*4)对于FPΣ、FP2、FP2SH和FP10SH,此处为ID。 数据寄存器 十六进制数 0 2 1 2 0 0 3 0 0 2 3 2 DT2 DT1 DT0 数据寄存器 十六进制数 0 0 3 0 0 2 3 2 0 0 0 0 DT2 DT1 DT0 D2 D1 ·错误标志(R9007):以下情况时为ON并保持ON - 变址数指定区超限 - D1 > D2 ·错误标志(R9008):以下情况时瞬间为ON - 变址数指定区超限 - D1 > D2 标志位状态 描述 将由D1(起始区)和D2(结束区)指定的16位数据左移(向高位地址)1个字(16位)。 D1和D2应当满足: - 为相同类型的操作数 - D1 ≤ D2 当左移1个字(16位)时, - 结束区16位数据D2中的数据将被移出。 - 起始16位数据D1中的数据将被置为0。 结束的字被移出 指定数据范围 D2 D1 开始的字变为0 3-241 多个16位数据右移 1digit(4位) 操作数 程序示例 概述 将指定范围内的多个16位数据左移一个字(16位)。 对于FP-M/FP0/FP1/FP-e/FPΣ, P型高级指令不适用。 F112(WBSR) P112(PWBSR) 10 11 ST R 0 F111 (WSHL) DT 0 DT 9 开始16位区D1 地址 指令 梯形图程序 布尔形式 结束16位区D2 触发器 示例说明 当触发器R0为ON时,将DT0~DT2(3个字)内的数据右移1个字(16位)。 FP-e/FP0/FP∑/FP1/FP-M/ FP2/FP2SH/FP3/FP10SH 适用机型 3-242 WX WY WR WL(*1) SV EV DT LD(*1) FL(*2) IX(*3)IY(*4) K H D1 N/A A A A A A A A A N/A N/A N/A N/A A D2 N/A A A A A A A A A N/A N/A N/A N/A A 索引变址 常数 操作数 定时器/计数器 索引寄存器继电器 数据寄存器 A: 可以使用 N/A: 不可使用 (*1)此处不适用FP-M、FP0、FP-e和FP1。 (*2)此处不适用FP-M、FP0、FP-e、FPΣ和FP1。 (*3)对于FPΣ、FP2、FP2SH和FP10SH,此处为I0至IC。 (*4)对于FPΣ、FP2、FP2SH和FP10SH,此处为ID。 ·错误标志(R9007):以下情况时为ON并保持ON - 变址数指定区超限 - D1 > D2 ·错误标志(R9008):以下情况时瞬间为ON - 变址数指定区超限 - D1 > D2 标志位状态 描述 将由D1(起始区)和D2(结束区)指定的范围内的16位数据右移(向低位地址)1digit(4位)。 D1和D2应当满足: - 为相同类型的操作数 - D1 ≤ D2 当右移1digit(4位)时, - 起始16位数据D1中的低位digit(数据位0~3)数据将被移出。 - 结束区16位数据D2中的高位digit(数据位12~15)数据将被置为0。 3-243 指定数据范围(10个字=40个digit) 十六进制数据 位地址0到3被移出 15 .. 12 11 .. 8 7 .. 4 3 . . 0 15 . . 0 15 .. 12 11 . . 8 7 . . 4 3 . . 0 0 20 DT9 DT0 02 1 2 2 3 15 .. 12 11 .. 8 7 .. 4 3 . . 0 15 . . 0 15 . . 12 11 . . 8 7 . . 4 3 . . 0 2 30 DT9 DT0 00 2 1 0 2 十六进制数据位地址12到15变为0 R0:ON 指定数据范围 数据的最低digit (bit0~3)被移出 15 .. 12 11 .. 8 7 .. 4 3 . . 0 15 . . 0 15 .. 12 11 . . 8 7 . . 4 3 . . 0 20 D2 D1 02 1 2 2 30 15 .. 12 11 .. 8 7 .. 4 3 . . 0 15 . . 0 15 . . 12 11 . . 8 7 . . 4 3 . . 0 2 30 D2 D1 00 2 1 0 2 数据的最高digit(bit12~15)变为0 多个16位数据左移 1digit(4位) 程序示例 概述 将指定范围内的多个16位数据左移1digit(4位)。 对于FP-M/FP0/FP1/FP-e/FPΣ, P型高级指令不适用。 F113(WBSL) P113(PWBSL) 10 11 ST R 0 F113 (WBSL) DT 0 DT 9 开始16位区D1 地址 指令 梯形图程序 布尔形式 结束16位区D2 触发器 示例说明 当触发器R0为ON时,将DT0~DT2(3个字)内的数据右移1个字(16位)。 FP-e/FP0/FP∑/FP1/FP-M/ FP2/FP2SH/FP3/FP10SH 适用机型 3-244 操作数 WX WY WR WL(*1) SV EV DT LD(*1) FL(*2) IX(*3)IY(*4) K H D1 N/A A A A A A A A A N/A N/A N/A N/A A D2 N/A A A A A A A A A N/A N/A N/A N/A A 索引变址 常数 操作数 定时器/计数器 索引寄存器继电器 数据寄存器 A: 可以使用 N/A: 不可使用 (*1)此处不适用FP-M、FP0、FP-e和FP1。 (*2)此处不适用FP-M、FP0、FP-e、FPΣ和FP1。 (*3)对于FPΣ、FP2、FP2SH和FP10SH,此处为I0至IC。 (*4)对于FPΣ、FP2、FP2SH和FP10SH,此处为ID。 15 .. 12 11 .. 8 7 .. 4 3 . . 0 15 . . 0 15 .. 12 11 . . 8 7 . . 4 3 . . 0 0 02 DT9 DT0 21 2 0 3 2 ·错误标志(R9007):以下情况时为ON并保持ON - 变址数指定区超限 - D1 > D2 ·错误标志(R9008):以下情况时瞬间为ON - 变址数指定区超限 - D1 > D2 标志位状态 描述 将由D1(起始区)和D2(结束区)指定的范围内的16位数据左移(向高位地址)1digit(4位)。 D1和D2应当满足: - 为相同类型的操作数 - D1 ≤ D2 当左移1digit(4位)时, - 结束区16位数据D2中的高位digit(数据位12~15)数据将被移出。 - 起始16位数据D1中的低位digit(数据位0~3)数据将被置为0。 3-245 十六进制数据(位地址0到3)变为0 R0:ON 指定数据范围(10个字=40个digit) 15 .. 12 11 .. 8 7 .. 4 3 . . 0 15 . . 0 15 .. 12 11 . . 8 7 . . 4 3 . . 0 20 DT9 DT0 02 1 2 2 30 最高的digit中的数据0 (位地址12到15)被移出 15 .. 12 11 .. 8 7 .. 4 3 . . 0 15 . . 0 15 .. 12 11 . . 8 7 . . 4 3 . . 0 0 D2 D1 指定数据范围(10个字=40个digit) 15 .. 12 11 .. 8 7 .. 4 3 . . 0 15 . . 0 15 .. 12 11 . . 8 7 . . 4 3 . . 0 D2 D1 最高的digit中的数据 (bit12~15)被移出 最低的digit中的数据 (bit0~3)变为0 FIFO缓冲区定义 操作数 程序示例 概述 定义FIFO(先入先出)缓冲区条件。 对于FPΣ, P型高级指令不适用。 F115(FIFT) P115(PFIFT) 10 11 ST R 0 D F F115 (FIFT) K 256 DT 0 用来指定的16位常数或者16位数据区D 地址 指令 梯形图程序 布尔形式 FIFO缓冲区的首16位区n 触发器 WX WY WR WL SV EV DT LD FL(*1) IX(*2)IY(*3) K H n A A A A A A A A A A A A A A D N/A A A A A A A A A N/A N/A N/A N/A A 索引变址 常数 操作数 定时器/计数器 索引寄存器继电器 数据寄存器 示例说明 当执行条件(触发器)X0为ON时,以DT0开始的数据区被定义为FIFO缓冲区。 FIFO缓冲区的大小(K256)被存放DT0中,数据项的数量(缺省值K0)被存放在DT1中,同时FIFO指针 (缺省值H0000)存放在DT2中。 当n = K256时,DT3~DT258的256个字被定义为数据存储区。 A: 可以使用 N/A: 不可使用 FP∑/FP2/FP2SH/FP3/FP10SH 适用机型 3-246 (*1)此处不适用FPΣ。 (*2)对于FPΣ、FP2、FP2SH和FP10SH,此处为I0至IC。 (*3)对于FPΣ、FP2、FP2SH和FP10SH,此处为ID。 ·错误标志(R9007):以下情况时为ON并保持ON - 变址数指定区超限 - n = 0 - n > 256 - 由n指定的区域超限 ·错误标志(R9008):以下情况时瞬间为ON - 变址数指定区超限 - n = 0 - n > 256 - 由n指定的区域超限 标志位状态 描述 本指令对用于FIFO缓冲区的区域进行定义。从D指定的区域开始,数据存储区定义为n个字(n = K1~K256)。 在写入或从FIFO缓冲区读取之前,利用F115(FIFT)指令定义缓冲区只能执行一次。通常在执行本指令之 前,读和写是被禁止的。 执行F115(FIFT)指令之后,FIFO缓冲区定义如下: 执行F115(FIFT)指令之后,以下数值作为缺省值存储如下: D = n (由F115指定的数值),D+1 = K0,D+2 = H0000 15 0 数据存储区数据存储区 (n个字) 读指针 (0~255/H00~HFF) 写指针 (0~255/H00~HFF) 3-247 15 0 数据存储区 (256个字) FIFO缓冲区内存大小(n) 存储数据的数量(字) FIFO的指针 允许使用F0(MV)指令传送 (可以覆盖) DT0 DT1 DT2 0 0 DT3 DT257 DT258 K256 K0 D D+1 DT2 0 0 DT3 0 1 n-2 D+2+n n-1 K256 K0 FIFO缓冲区内存大小(n) 存储数据的数量(字) FIFO的指针 FIFO缓冲区数据读取 程序示例 概述 从FIFO(先入先出)缓冲区中读取数据。 对于FPΣ, P型高级指令不适用。 F116(FIFR) P116(PFIFR) 10 11 ST R 10 D F F116 (FIFR) DT 0 DT 100 FIFO缓冲区的首16位区S 地址 指令 梯形图程序 布尔形式 存放从FIFO缓冲区所读数据的16位区D 触发器 FP∑/FP2/FP2SH/FP3/FP10SH 适用机型 3-248 操作数 WX WY WR WL SV EV DT LD FL(*1) IX(*2)IY(*3) K H S N/A A A A A A A A A N/A N/A N/A N/A A D N/A A A A A A A A A A A N/A N/A A 索引变址 常数 操作数 定时器/计数器 索引寄存器继电器 数据寄存器 A: 可以使用 N/A: 不可使用 (*1)此处不适用FPΣ。 (*2)对于FPΣ、FP2、FP2SH和FP10SH,此处为I0至IC。 (*3)对于FPΣ、FP2、FP2SH和FP10SH,此处为ID。 DT5中的内容(由读取指针2表示)被发送到DT100。 数据读取后,DT1的内容(存放的数据项数量)减1,并且读取指针移向3。 执行下一次读取时,DT5被发送到DT100(由DT3指示)。 示例说明 当执行条件(触发器)R10为ON时,从以DT0开始的FIFO缓冲区中读取数据,并且将数据存放在DT100中。 当读指针是2时 读指针 写指针 执行 读指针 被移动 读出 存储数据的数量 3-249 ▲ ▲ ▲ ▲ ·错误标志(R9007):以下情况时为ON并保持ON ·错误标志(R9008):以下情况时瞬间为ON - 变址数指定区超限 - 由S指定的FIFO的大小n=0 或 n>256 - FIFO存储的数据项数量为0 - FIFO存储的数据项数量 > FIFO大小(n) - 基于FIFO大小(n)的最终地址超出范围 - FIFO的读指针 > FIFO的大小(n) - 读取数据后,FIFO的读指针为K256(H100)或更大 标志位状态 读指针存放在FIFO缓冲区的第三个字的高8位,用于表示存储数据的相对地址。 实际的地址为由S指定的FIFO缓冲区的起始地址加3,再加读指针的数值。 数据读取后,存放的数据项数量减1,并且读取指针增1。 注意 ·当存储的数据项为0时,执行本指令会产生错误。D中不会被设置数值。 ·只有读指针与写指针不同时,才进行读取。 ·当在读指针为FIFO缓冲区的最终地址时(由FIFO指令定义的n减1),读指针将 被设置为0。 3-250 描述 本指令从S指定的区域FIFO缓冲区中读取数据,并将数据保存在D指定的存储区中。 S是利用F115(FIFT)指令定义的缓冲区的起始地址。 执行指令时,从读指针所指示的地址开始读取数据。 数据读取后,存放的数据项数量减1,并且读取指针增1。 读指针 数据存储区(n个字) FIFO缓冲区的内存大小 数据存储区的数量(字) 读指针的高位地址 (0),(n-2)和(n-1)指定数据存储区的地址 n由F115(FIFT)指令指定 ◆ FIFO缓冲区是按照数据写入的顺序存储数据,并且按照存储顺序读取数据,非常便于按顺序处理对象。 如何使用FIFO缓冲区 如果执行F116(FIFR)指令时FIFO存储的数据项数量(S+1)为0,则会发生错误。 在以下的说明程序中,如果存储的数据项数量为0,就不执行F116(FIFR)指令。 编程时的注意事项 FIFO定义 检查存储区的数量 FIFO读出 首先使用F115(FIFT)指令定义FIFO缓冲区(应在读、写之前只执行一次)。 应利用F117(FIFW)指令写入数据,并用F116(FIFR)指令读取数据。 使用步骤 写入数据时,数据从存储区起始处开始按顺序存储。 写指针指示下一次写入数据的地址。 如果存储区已满,则禁止继续向其中写入数据。 数据写入 读取数据时,数据从存储区起始处开始按存储的顺序读取。 读指针指示读取数据的地址。 如果试图在没有数据项时读取数据,则产生错误。 数据读取 当数据如上所示时,如果写入数据,则根据指针将数据写入3,写指针将指向4。(下一数据项被写入4) 如果读取数据,则根据指针从0读取数据,读指针将指向1。(下一数据被从1中读出) 数据存储的示例 读指针 写指针 3-251 ▲ ▲ FIFO缓冲区数据写入 程序示例 概述 向FIFO(先入先出)缓冲区中写入数据。 对于FPΣ, P型高级指令不适用。 F117(FIFW) P117(PFIFW) 10 11 ST R 10 D F F117 (FIFW) DT 110 DT 0 存放写入FIFO缓冲区的16位常数或16位区S 地址 指令 梯形图程序 布尔形式 FIFO缓冲区的首16位区D 触发器 FP∑/FP2/FP2SH/FP3/FP10SH 适用机型 3-252 操作数 WX WY WR WL SV EV DT LD FL(*1) IX(*2)IY(*3) K H S A A A A A A A A A A A A A A D N/A A A A A A A A A N/A N/A N/A N/A A 索引变址 常数 操作数 定时器/计数器 索引寄存器继电器 数据寄存器 A: 可以使用 N/A: 不可使用 (*1)此处不适FP用Σ。 (*2)对于FPΣ、FP2、FP2SH和FP10SH,此处为I0至IC。 (*3)对于FPΣ、FP2、FP2SH和FP10SH,此处为ID。 根据指针的指示3,将DT110的内容“103”写到DT6。 数据写入之后,DT1中的内容加1(存储数据项的数量),并且写指针指向4。 (下一次写入时,根据指示4将DT110的内容被写入DT7) 有关缓冲区的问题,请参阅相关章节的内容。 示例说明 当执行条件(触发器)R10为ON时,将DT110的内容写入以DT0开始的FIFO缓冲区中。 读指针 写指针 写指针 写 执行 存储数据区大小 写指针移动 3-253 ▲ ▲ ▲ ▲ 写指针存放在FIFO缓冲区的第三个字的低8位,用于表示存储数据的相对地址。 实际的地址为由S指定的FIFO缓冲区的起始地址加3,再加写指针的数值。 数据写入后,存放的数据项数量增1,并且写指针增1。 将由S指定的16位数据存储到由D指定的FIFO缓冲区中。 D是利用F115(FIFT)指令指定的缓冲区的起始地址。 执行本指令时,指定的数据被写入由写指针所指示的地址。 描述 数据存储区 FIFO缓冲区的内存大小 数据存储区的数量(字) 写指针 (0),(n-2)和(n-1)指定数据存储区的地址 n由F115(FIFT)指令指定 写指针(低位) 注意 ·当FIFO缓冲区满时,执行本指令会产生错误。 (存储的数据项 = FIFO定义指令所指定的大小n)。此时禁止写入。 ·当在写指针为FIFO缓冲区的最终地址时(由FIFO指令定义的n),写指针将被设置为0。 3-254 ▲ FIFO缓冲区是按照数据写入的顺序存储数据,并且按照存储顺序读取数据,非常便于按顺序处理对象。 如何使用FIFO缓冲区 首先使用F115(FIFT)指令定义FIFO缓冲区(应在读、写之前只执行一次)。 应利用F117(FIFW)指令写入数据,并用F116(FIFR)指令读取数据。 使用步骤 写入数据时,数据从存储区起始处开始按顺序存储。 写指针指示下一次写入数据的地址。 如果存储区已满,则禁止继续向其中写入数据。 数据写入 读取数据时,数据从存储区起始处开始按存储的顺序读取。 读指针指示读取数据的地址。 如果试图在没有数据项时读取数据,则产生错误。 数据读取 当数据如上所示时,如果写入数据,则根据指针将数据写入3,写指针将指向4。 如果读取数据,则根据指针从0读取数据,读指针将指向1。 数据存储的示例 读指针 写指针 ·错误标志(R9007):以下情况时为ON并保持ON - 变址数指定区超限 - 由S指定的FIFO的大小n=0 或 n>256 - FIFO存储的数据项数量 > FIFO的大小(n) - 基于FIFO大小(n)的最终地址超出范围 - FIFO的写指针 > FIFO的大小(n) - 写入数据后,FIFO的读指针为K256(H100)或更大 ·错误标志(R9008):以下情况时瞬间为ON - 变址数指定区超限 - 由S指定的FIFO的大小n=0 或 n>256 - FIFO存储的数据项数量 > FIFO的大小(n) - 基于FIFO大小(n)的最终地址超出范围 - FIFO的写指针 > FIFO的大小(n) - 写入数据后,FIFO的读指针为K256(H100)或更大 标志位状态 3-255 ▲ ▲ 如果数据达到超出缓冲区容量时,将产生运算错误。 使用F117(FIFW)指令时的注意事项 执行F117(FIFW)指令时,在数据被写入缓冲区的最终地址(4)之后,写指针变为首地址(0)。 示例:如果写指针位于FIFO缓冲区的末尾 读指针 写 执行F117(FIFW)指令 存储区大小 写指针 写指针移动 3-256 ▲ ▲ ▲ ▲ 因为FIFO缓冲区中存储的数据项(DT1=5)超出FIFO缓冲区的大小(DT0=5),所以不能进行处理, 并且会产生运算错误。 示例:当写指针完成一个循环时 读指针 写 执行F117(FIFW)指令 写指针一个周期 (当错误发生,过程不被执行) 3-257 ▲ ▲ ▲ ▲ 避免产生运算错误的方法 利用比较指令,使当FIFO缓冲区中存储的数据项等于FIFO缓冲区的大小时,不执行F117(FIFW)指令。 在执行F116(FIFR)指令之后执行F117(FIFW)指令。 3-258 加/减计数器 操作数 程序示例 概述 设置加/减计数器 F118(UDC) 50 51 52 53 58 59 ST R 0 ST R 1 ST R 2 F118 (UDC) DT 10 DT 0 ST R 900B OT R 50 存放计数器预置值的16位常数或16位区S 地址 指令 梯形图程序 布尔形式 计数器经过值16位区D 加/减计数 计数输入 复位输入 FP-e/FP0/FP∑/FP1/FP-M/FP2/FP2SH/FP3/FP10SH 适用机型 3-259 WX WY WR WL(*1) SV EV DT LD(*1) FL(*2) IX(*3)IY(*4) K H S A A A A A A A A A N/A N/A A A N/A D N/A A A A A A A A A N/A N/A N/A N/A N/A 索引变址 常数 操作数 定时器/计数器 索引寄存器继电器 数据寄存器 A: 可以使用 N/A: 不可使用 (*1)此处不适用FP-M、FP0、FP-e和FP1。 (*2)此处不适用FP-M、FP0、FP-e、FPΣ和FP1。 (*3)对于FPΣ、FP2、FP2SH和FP10SH,此处为I0至IC。 (*4)对于FPΣ、FP2、FP2SH和FP10SH,此处为ID。 根据用于指定加/减的输入信号的ON/OFF状态,计数器在加计数器和减计数器之间切换。 将由D指定16位数据右移1个digit(4位)(向低位)。 如果加/减输入信号为ON,则作为加计数器(+1)使用;如果该信号为OFF,则作为减计数器(-1)使用。经 过值存放在由D指定的区域中。 当检测到复位信号的下降沿(ON→OFF)时,预置值被传输到D。设定值的范围是 K-32768~K32767。 (H8000~H7FFF) 当计数输入从OFF变为ON时(复位输入处于OFF状态),D指定的数值被初始化,同时开始进行计数。 当复位输入为ON时,经过值被清零。 计数的结果可以利用比较指令,对经过值D与指定值进行比较确定。 数据比较指令必须在本指令之后立即执行。 示例说明 前页的示例表示设置初始值,当目标值为0时R50变为ON。 本程序示例可以用于控制指示灯,当增或减工件达到某一数量时,使灯变亮。 当检测到复位信号X2的下降沿(ON→OFF)时,数据寄存器DT10中的数据被传输到DT0中。 当X0处于OFF状态时,计数输入X1会使DT0的数值递减(减计数操作)。 当X0处于ON状态时,计数输入X1会使DT0的数值递增(加计数操作)。 当经过值DT0 = K0时,特殊内部继电器R900B(=标志)将变为ON,并且内部继电器R50也为ON。 写指针 描述 3-260 DT0的值 复位 复位 时间 当F118(UDC)指令与其他可能改变程序执行顺序的指令组合使用时,应注意指令的执行与输入信号 之间的时序关系。 - MC和MCE指令 - JP和LBL指令 - F19(SJP)及LBL指令 - LOOP及LBL指令 - CNDE指令 - 步进梯形图程序 - 子程序 在F118(UDC)指令中,当检测到计数输入信号OFF→ON的上升沿时移位。 如果计数输入信号始终保持ON的状态,则只在上升沿移位。 当PLC切换到RUN模式或在RUN模式下接通电源时,如果输入信号已经处于ON的状态,则在第1扫描周期内 不会移位。 检测计数输入的注意事项 ·=标志(R900B): 当经过值D被认为是0时,瞬间变为ON。 ·进位标志(R9009):当经过值D为“K-1~K-32768”时,瞬间为ON。 标志位状态 如果经过值区被设置为保持型,则经过值会被保留。 在运算开始时,设定值不会被预置到经过值中。预置数值时,必须将复位信号输入从ON变为OFF。 当将F118(UDC)指令与堆栈与指令或弹出堆栈指令组合使用时,必须注意程序是否正确。 编程时的注意事项 计数输入 运行 (电源:ON) 指令操作 不计数 计数 3-261 左/右移位寄存器 程序示例 概述 将16位数据左移或右移1位 F119 (LRSR) 50 51 52 53 54 ST R 0 ST R 1 ST R 2 ST R 3 F119 ( LRSR) DT 0 DT 9 左移或右移一位的起始16位区D1 地址 指令梯形图程序 布尔形式 左移或右移一位的结束16位区D2 左/右计数 (ON:左 OFF:右) 数据输入 D1 移位输入 D2 复位输入 FP-e/FP0/FP∑/FP1/FP-M/FP2/FP2SH/FP3/FP10SH 适用机型 3-262 操作数 WX WY WR WL(*1) SV EV DT LD(*1) FL(*2) IX(*3)IY(*4) K H D1 N/A A A A A A A A A N/A N/A N/A N/A N/A D2 N/A A A A A A A A A N/A N/A N/A N/A N/A 索引变址 常数 操作数 定时器/计数器 索引寄存器继电器 数据寄存器 A: 可以使用 N/A: 不可使用 (*1)此处不适用FP-M、FP0、FP-e和FP1。 (*2)此处不适用FP-M、FP0、FP-e、FPΣ和FP1。 (*3)对于FPΣ、FP2、FP2SH和FP10SH,此处为I0至IC。 (*4)对于FPΣ、FP2、FP2SH和FP10SH,此处为ID。 根据左/右移位控制输入信号的ON/OFF状态,改变寄存器移位方向。 当左/右移位控制输入信号为ON时,进行左移;为ON时右移。 应保证所指定的D1、D2为相同类型的数据区,并且D1≤D2。 当移位输入从OFF变为ON时(复位输入为OFF),由D1和D2指定的数据区左移或右移1位。 数据移位时,如果数据输入信号为ON,则向移位产生的空数据位(最高或最低位)中填充1;如果数据输入信 号为OFF,则向移位产生的空位中填充0。同样,移出的数据位(左移时为最高位,右移时为最低位)将被传 输到特殊内部继电器R9009(进位标志)中。 如果复位输入为ON,则指定区域中的数据被清零。 示例说明 左移操作 描述 右移操作 DT9 位地址 15 . . 12 11 . . 8 7 . . 4 3 . . 0 数据 0 0 0 1 0 0 0 1 0 0 0 1 0 0 0 1 15 . . 12 11 . . 8 7 . . 4 3 . . 0 1 0 0 0 1 0 0 0 1 0 0 0 1 1 0 0 DT0 移出位被传送到 R9009(标志位) DT9 位地址 15 . . 12 11 . . 8 7 . . 4 3 . . 0 数据 0 0 1 0 0 0 1 0 0 0 1 0 0 0 1 0 15 . . 12 11 . . 8 7 . . 4 3 . . 0 0 0 0 1 0 0 0 1 0 0 0 1 1 0 0 0 DT0 当数据输入R1变为ON时, ”1”被移动到位地址0 当数据输入R1变为OFF时, ”0”被移动到位地址0 位地址 15 . . 12 11 . . 8 7 . . 4 3 . . 0 数据 0 0 0 1 0 0 0 1 0 0 0 1 0 0 0 1 15 . . 12 11 . . 8 7 . . 4 3 . . 0 1 0 0 0 1 0 0 0 1 0 0 0 1 1 0 0 位地址 15 . . 12 11 . . 8 7 . . 4 3 . . 0 数据 1 0 0 0 1 0 0 0 1 0 0 0 1 0 0 0 15 . . 12 11 . . 8 7 . . 4 3 . . 0 0 1 0 0 0 1 0 0 0 1 0 0 0 1 1 0 R0:ON R2:OFF → ON R0:OFF R2:OFF → ON 移出位被传送到 R9009(进位标志位) 当数据输入R1变为ON时, ”1”被移动到位地址15 当数据输入R1变为OFF时, ”0”被移动到位地址15 3-263 DT9 DT0 DT9 DT0 当F119(LRSR)指令与其他可能改变程序执行顺序的指令组合使用时,应注意指令的执行与输入信号 之间的时序关系。 - MC和MCE指令 - JP和LBL指令 - F19(SJP)及LBL指令 - LOOP及LBL指令 - CNDE指令 - 步进梯形图程序 - 子程序 在F119(LRSR)指令中,当检测到移位输入信号OFF→ON的上升沿时移位。 如果移位输入信号始终保持ON的状态,则只在上升沿时移位一次,不会一直移位。 当PLC切换到RUN模式或在RUN模式下接通电源时,如果输入信号已经处于ON的状态,则在第1扫描周期内 不会移位。 检测移位输入的注意事项 ·错误标志位(R9007):当使用的起始16位区(D1)大于终止的16位区(D2)(当D1>D2)时变为ON并且保持ON. ·错误标志位(R9008):当使用的起始16位区(D1)大于终止的16位区(D2)(当D1>D2)瞬间为ON. ·进位标志位(R9009):当移出位是1时,瞬间位ON 标志位状态 移位输入 运行 (电源:ON) 指令操作 不移位 移位 当将F119(LRSR)指令同堆栈与指令或弹出堆栈指令组合使用时,必须注意程序是否正确。 编程时的注意事项 3-264 16bit数据循环右移 操作数 程序示例 概述 将指定的16bit数据循环右移指定的位数。 对于FP-M/FP0/FP1/FP-e/FPΣ, P型高级指令不适用。 F120(ROR) P120(PROR) 10 11 ST R 0 F120 (ROR) DT 0 K 4 右移的16位区D 地址 指令 梯形图程序 布尔形式 指定移位的位数的16位常数或16位区n 触发器 WX WY WR WL(*1) SV EV DT LD(*1) FL(*2) IX(*3)IY(*4) K H D N/A A A A A A A A A A A N/A N/A A n A A A A A A A A A A A A A A 索引变址 常数 操作数 定时器/计数器 索引寄存器继电器 数据寄存器 示例说明 当触发器R0为ON时,将数据寄存器DT0中数据循环右移4位。 数据位3中的数据传输至特殊内部继电器R9009(进位标志)。 A: 可以使用 N/A: 不可使用 R9009(进位标志位) 3-265 FP0/FP∑/FP1/FP-M/FP2/FP2SH/FP3/FP10SH 适用机型 (*1)此处不适用FP-M、FP0、FP-e和FP1。 (*2)此处不适用FP-M、FP0、FP-e、FPΣ和FP1。 (*3)对于FPΣ、FP2、FP2SH和FP10SH,此处为I0至IC。 (*4)对于FPΣ、FP2、FP2SH和FP10SH,此处为ID。 ·错误标志(R9007):在变址数指定区超限时为ON并保持ON。 ·错误标志(R9008):在变址数指定区超限时瞬间为ON。 ·进位标志(R9009):当第n-1 bit的内容被认为是1时,瞬间为ON。 标志位状态 描述 将由D指定的16位数据区向右(向低位)循环移n位。 当循环右移n位时, - 数据位n-1位(编号从0位开始)中的数据被传输至特殊内部继电器R9009(进位标志)。 - 从0位开始的n位数据向右移出,并且被移动到D指定的数据的高位。 高8位无效 K0~K255 (H00~HFF) 示例: 循环右移1bit R9009(进位标志位) 指定n时,16bit的数据只有低8位有效 3-266 编程时注意事项 当n指定的数值为16bit的倍数时,实际的操作不变. 例: n=K16: 操作与n=K0时相同(进位标志也不变) n=K17: 操作与n=K1时相同 ...... n=K32: 操作与n=K0时相同(进位标志也不变) n=K33: 操作与n=K1时相同 16bit数据循环左移 操作数 程序示例 概述 将指定的16bit数据循环左移指定的位数。 对于FP-M/FP0/FP1/FP-e/FPΣ, P型高级指令不适用。 F121(ROL) P121(PROL) 10 11 ST R 0 F121 (ROL) DT 0 K 4 左移的16位区D 地址 指令 梯形图程序 布尔形式 指定移位的位数的16位常数或16位区n 触发器 示例说明 当触发器R0为ON时,将数据寄存器DT0中数据循环左移4位。 数据位12中的数据传输至特殊内部继电器R9009(进位标志)。 R9009(进位标志位) 3-267 R0:ON FP0/FP∑/FP1/FP-M/FP2/FP2SH/FP3/FP10SH 适用机型 WX WY WR WL(*1) SV EV DT LD(*1) FL(*2) IX(*3)IY(*4) K H D N/A A A A A A A A A A A N/A N/A A n A A A A A A A A A A A A A A 索引变址 常数 操作数 定时器/计数器 索引寄存器继电器 数据寄存器 A: 可以使用 N/A: 不可使用 (*1)此处不适用FP-M、FP0、FP-e和FP1。 (*2)此处不适用FP-M、FP0、FP-e、FPΣ和FP1。 (*3)对于FPΣ、FP2、FP2SH和FP10SH,此处为I0至IC。 (*4)对于FPΣ、FP2、FP2SH和FP10SH,此处为ID。 ·错误标志(R9007):在变址数指定区超限时为ON并保持ON。 ·错误标志(R9008):在变址数指定区超限时瞬间为ON。 ·进位标志(R9009):当第16-n bit的内容被认为是1时,瞬间为ON。 标志位状态 描述 将由D指定的16位数据区向左(向高位)循环移n位。 当循环左移n位时, - 数据位16-n位(从15位开始的第n位)中的数据被传输至特殊内部继电器R9009(进位标志)。 - 从15位开始的n位数据向左移出,并且被移动到D指定的数据的低位。 高8位无效 K0~K255 (H00~HFF) 示例: 循环左移1bit R9009(进位标志位) 指定n时,16bit的数据只有低8位有效 3-268 编程时注意事项 当n指定的数值为16bit的倍数时,实际的操作不变. 例: n=K16: 操作与n=K0时相同(进位标志也不变) n=K17: 操作与n=K1时相同 ...... n=K32: 操作与n=K0时相同(进位标志也不变) n=K33: 操作与n=K1时相同 16bit数据循环右移 (带进位标志位) 操作数 程序示例 概述 将指定的16bit数据带进位标志位循环右移指定的位数。 对于FP-M/FP0/FP1/FP-e/FPΣ, P型高级指令不适用。 F122(RCR) P122(PRCR) 10 11 ST R 0 F122 (RCR) DT 0 K 4 右移的16位区D 地址 指令 梯形图程序 布尔形式 指定移位的位数的16位常数或16位区n 触发器 示例说明 当触发器R0为ON时,将数据寄存器DT0中数据带进位标志位的数据”1”循环右移4位。 3-269 R9009(进位标志位) 数据位3的数据 进位标志位数据”1” FP0/FP∑/FP1/FP-M/FP2/FP2SH/FP3/FP10SH 适用机型 WX WY WR WL(*1) SV EV DT LD(*1) FL(*2) IX(*3)IY(*4) K H D N/A A A A A A A A A A A N/A N/A A n A A A A A A A A A A A A A A 索引变址 常数 操作数 定时器/计数器 索引寄存器继电器 数据寄存器 A: 可以使用 N/A: 不可使用 (*1)此处不适用FP-M、FP0、FP-e和FP1。 (*2)此处不适用FP-M、FP0、FP-e、FPΣ和FP1。 (*3)对于FPΣ、FP2、FP2SH和FP10SH,此处为I0至IC。 (*4)对于FPΣ、FP2、FP2SH和FP10SH,此处为ID。 ·错误标志(R9007):在变址数指定区超限时为ON并保持ON。 ·错误标志(R9008):在变址数指定的区超限时瞬间为ON。 ·进位标志(R9009):当n-1 bit的内容被认为是1时,瞬间为ON。 标志位状态 描述 将由D指定的16位数据区向右(向低位)带进位标志位循环移n位。 当带进位标志位循环右移n位时, - 数据位n-1位(编号从0位开始)中的数据被传输至特殊内部继电器R9009(进位标志)。 - 从0位开始的n位数据向右移出,同时将进位标志位的数据和从0位开始的n-1位数据被移动到 D指定的数据的高位。 高8位无效 K0~K255 (H00~HFF) 示例: 循环右移1bit 指定n时,16bit的数据只有低8位有效 3-270 编程时注意事项 当n指定的数值为17bit的倍数时,实际的操作不变. 例: n=K17: 操作与n=K0时相同 n=K18: 操作与n=K1时相同 ...... n=K34: 操作与n=K0时相同 n=K35: 操作与n=K1时相同 R9009(进位标志位) 进位标志位数据”0” 16bit数据循环左移 (带进位标志位) 操作数 程序示例 概述 将指定的16bit数据带进位标志位循环左移指定的位数。 对于FP-M/FP0/FP1/FP-e/FPΣ, P型高级指令不适用。 F123(RCL) P123(PRCL) 10 11 ST R 0 F123 (RCL) DT 0 K 4 右移的16位区D 地址 指令 梯形图程序 布尔形式 指定移位的位数的16位常数或16位区n 触发器 示例说明 当触发器R0为ON时,将数据寄存器DT0中数据带进位标志位的数据”1”循环左移4位。 3-271 R9009(进位标志位) 数据位12的数据 进位标志位数据”1” R0:ON FP0/FP∑/FP1/FP-M/FP2/FP2SH/FP3/FP10SH 适用机型 WX WY WR WL(*1) SV EV DT LD(*1) FL(*2) IX(*3)IY(*4) K H D N/A A A A A A A A A A A N/A N/A A n A A A A A A A A A A A A A A 索引变址 常数 操作数 定时器/计数器 索引寄存器继电器 数据寄存器 A: 可以使用 N/A: 不可使用 (*1)此处不适用FP-M、FP0、FP-e和FP1。 (*2)此处不适用FP-M、FP0、FP-e、FPΣ和FP1。 (*3)对于FPΣ、FP2、FP2SH和FP10SH,此处为I0至IC。 (*4)对于FPΣ、FP2、FP2SH和FP10SH,此处为ID。 ·错误标志(R9007):在变址数指定区超限时为ON并保持ON。 ·错误标志(R9008):在变址数指定的区超限时瞬间为ON。 ·进位标志(R9009):当16-n bit的内容被认为是1时,瞬间为ON。 标志位状态 描述 将由D指定的16位数据区向左(向高位)带进位标志位循环移n位。 当带进位标志位循环左移n位时, - 数据位16-n位(15位开始开始的第n位)中的数据被传输至特殊内部继电器R9009(进位标志)。 - 从15位开始的n位数据向左移出,同时将进位标志位的数据和从15位开始的n-1位数据被移动到 D指定的数据的低位。 高8位无效 K0~K255 (H00~HFF) 示例: 循环左移1bit 指定n时,16bit的数据只有低8位有效 3-272 编程时注意事项 当n指定的数值为17bit的倍数时,实际的操作不变. 例: n=K17: 操作与n=K0时相同 n=K18: 操作与n=K1时相同 ...... n=K34: 操作与n=K0时相同 n=K35: 操作与n=K1时相同 R9009(进位标志位) 进位标志位数据”0” 32bit数据循环右移 操作数 程序示例 概述 将指定的32bit数据循环右移指定的位数。 对于FFPΣ, P型高级指令不适用。 F125(DROR) P125(PDROR) 10 11 ST R 0 F125 (DROR) DT 10 K 4 右移的32位区D 地址 指令 梯形图程序 布尔形式 指定移位的位数的16位常数或16位区, 范围: K0~K255(H0~HFF)n 触发器 WX WY WR WL SV EV DT LD FL(*1) K H f D N/A A A A A A A A A N/A N/A N/A A N/A n A A A A A A A A A A A N/A A N/A A A 常数 整型设备索引变址操作数 定时器/计数器 索引寄存器继电器 数据寄存器 I 示例说明 当触发器R0为ON时,将数据寄存器DT11和DT10中数据循环右移4位。 数据位3中的数据传输至特殊内部继电器R9009(进位标志)。 A: 可以使用 N/A: 不可使用 (*1)此处不适用FPΣ。 3-273 FP∑/FP2/FP2SH/FP10SH 适用机型 ·错误标志(R9007):在变址数指定区超限时为ON并保持ON。 ·错误标志(R9008):在变址数指定的区超限时瞬间为ON。 ·进位标志(R9009):当第n-1 bit的内容被认为是1时,瞬间为ON。 标志位状态 描述 将由D指定的32位数据区向右(向低位)循环移n位。 当循环右移n位时, - 数据位n-1位(0位开始的第n位)中的数据被传输至特殊内部继电器R9009(进位标志)。 - 从0位开始的n位数据向右移出,并且被移动到D指定的32位数据的高位。 高8位无效 K0~K255 (H00~HFF) 指定n时,16bit的数据只有低8位有效 3-274 编程时注意事项 当n指定的数值为32bit的倍数时,实际的操作不变. 例: n=K32: 操作与n=K0时相同 触发器: R0 D中0bit的数据 当指定的n等于K0时,[D+1,D]和特殊内部继电器R9009(进位标志)中的内容不变. 32bit数据循环左移 操作数 程序示例 概述 将指定的32bit数据循环左移指定的位数。 对于FPΣ, P型高级指令不适用。 F126(DROL) P126(PDROL) 10 11 ST R 0 F126 (DROL) DT 10 K 4 左移的32位区D 地址 指令 梯形图程序 布尔形式 指定移位的位数的16位常数或16位区, 范围: K0~K255(H0~HFF)n 触发器 WX WY WR WL SV EV DT LD FL(*1) K H f D N/A A A A A A A A A N/A N/A N/A A N/A n A A A A A A A A A A A N/A A N/A A A 常数 整型设备索引变址操作数 定时器/计数器 索引寄存器继电器 数据寄存器 I 示例说明 当触发器R0为ON时,将数据寄存器DT11和DT10中数据循环左移4位。 数据位28中的数据传输至特殊内部继电器R9009(进位标志)。 A: 可以使用 N/A: 不可使用 (*1)此处不适用FPΣ。 3-275 FP∑/FP2/FP2SH/FP10SH 适用机型 ·错误标志(R9007):在变址数指定区超限时为ON并保持ON。 ·错误标志(R9008):在变址数指定的区超限时瞬间为ON。 ·进位标志(R9009):当第32-n bit的内容被认为是1时,瞬间为ON。 标志位状态 描述 将由D指定的32位数据区向左(向高位)循环移n位。 当循环左移n位时, - 数据位32-n位(31位开始的第n位)中的数据被传输至特殊内部继电器R9009(进位标志)。 - 从31位开始的n位数据向左移出,并且被移动到D指定的32位数据的低位。 高8位无效 K0~K255 (H00~HFF) 指定n时,16bit的数据只有低8位有效 3-276 编程时注意事项 当n指定的数值为32bit的倍数时,实际的操作不变. 例: n=K32: 操作与n=K0时相同 触发器: R0 D中15bit的数据 当指定的n等于K0时,[D+1,D]和特殊内部继电器R9009(进位标志)中的内容不变. 32bit数据循环右移 (带进位标志位) 操作数 程序示例 概述 将指定的32bit数据带进位标志位循环右移指定的位数。 对于FPΣ, P型高级指令不适用。 F127(DRCR) P127(PDRCR) 10 11 ST R 0 F127 (DRCR) DT 10 K 4 右移的32位区的低16位D 地址 指令 梯形图程序 布尔形式 指定移位的位数的16位常数或16位区, 范围: K0~K255(H0~HFF)n 触发器 示例说明 当触发器R0为ON时,将数据寄存器[DT11,DT10]中数据带进位标志位的数据”1”循环右移4位。 A: 可以使用 N/A: 不可使用 (*1)此处不适用FPΣ。 3-277 R9009 (进位标志) FP∑/FP2/FP2SH/FP10SH 适用机型 WX WY WR WL SV EV DT LD FL(*1) K H f D N/A A A A A A A A A N/A N/A N/A A N/A n A A A A A A A A A A A N/A A N/A A A 常数 整型设备索引变址操作数 定时器/计数器 索引寄存器继电器 数据寄存器 I R9009 (进位标志) ·错误标志(R9007):在变址数指定区超限时为ON并保持ON。 ·错误标志(R9008):在变址数指定的区超限时瞬间为ON。 ·进位标志(R9009):当n-1 bit的内容被认为是1时,瞬间为ON。 标志位状态 描述 当触发器为ON时,将由D指定的32位数据区向右(向低位)带进位标志位循环移n位。 当循环右移n位时, - 数据位n-1位(编号从0位开始)中的数据被传输至特殊内部继电器R9009(进位标志)。 - 从0位开始的n位数据向右移出,同时将进位标志位的数据和从0位开始的n-1位数据被移动到 D指定的数据的高位。 高8位无效 K0~K255 (H00~HFF) 指定n时,16bit的数据只有低8位有效 3-278 编程时注意事项 当n指定的数值为33bit的倍数时,实际的操作不变. 例: n=K33: 操作与n=K0时相同 R9009(进位标志位) D中0位的数据 触发器: ON 32bit数据循环左移 (带进位标志位) 操作数 程序示例 概述 将指定的32bit数据带进位标志位循环左移指定的位数。 对于FPΣ, P型高级指令不适用。 F128(DRCL) P128(PDRCL) 10 11 ST R 0 F128 (DRCL) DT 10 K 4 左移的32位区D 地址 指令 梯形图程序 布尔形式 指定移位的位数的16位常数或16位区, 范围: K0~K255(H0~HFF)n 触发器 示例说明 当触发器R0为ON时,将数据寄存器[DT11,DT10]中数据带进位标志位的数据”1”循环左移4位。 A: 可以使用 N/A: 不可使用 3-279 FP∑/FP2/FP2SH/FP10SH 适用机型 (*1)此处不适用FPΣ。 WX WY WR WL SV EV DT LD FL(*1) K H f D N/A A A A A A A A A N/A N/A N/A A N/A n A A A A A A A A A A A N/A A N/A A A 常数 整型设备索引变址操作数 定时器/计数器 索引寄存器继电器 数据寄存器 I R9009 (进位标志) R9009 (进位标志) ·错误标志(R9007):在变址数指定区超限时为ON并保持ON。 ·错误标志(R9008):在变址数指定的区超限时瞬间为ON。 ·进位标志(R9009):当31-n bit的内容被认为是1时,瞬间为ON。 标志位状态 描述 当触发器为ON时,将由D指定的32位数据区向左(向高位)带进位标志位循环移n位。 当循环左移n位时, - 数据位32-n位(从第31位开始的n位)中的数据被传输至特殊内部继电器R9009(进位标志)。 - 从31位开始的n位数据向左移出,同时将进位标志位的数据和从31位开始的n-1位数据被移动到 D指定的数据的低位。 高8位无效 K0~K255 (H00~HFF) 指定n时,16bit的数据只有低8位有效 3-280 编程时注意事项 当n指定的数值为33bit的倍数时,实际的操作不变. 例: n=K33: 操作与n=K0时相同 R9009(进位标志位) D中高位的数据 触发器: ON 16bit数据位置位 操作数 程序示例 概述 将16bit数据的指定数据位置位。 对于FP-M/FP0/FP1/FPΣ/FP-e,P型高级指令不适用。 F130(BTS) P130(PBTS) 10 11 ST R 0 F130 (BTS) DT 0 DT 2 16位区D 地址 指令 梯形图程序 布尔形式 指定数据位的位数的16位常数或16位区n 触发器 WX WY WR WL(*1) SV EV DT LD(*1) FL(*2) IX(*3)IY(*4) K H D N/A A A A A A A A A A A N/A N/A A n A A A A A A A A A A A A A A 索引变址 常数 操作数 定时器/计数器 索引寄存器继电器 数据寄存器 示例说明 当触发器R0为ON时,按照DT2中指定的数据位,将数据寄存器DT0中的对应数据位设置为ON。 当DT2=K7时, 操作结果如下: A: 可以使用 N/A: 不可使用 3-281 [n] DT2:K7 [D] [D] 数据位7变为ON(1). 其他未指定的数据位不变. FP-e/FP0/FP∑/FP1/FP-M/ FP2/FP2SH/FP3/FP10SH 适用机型 (*1)此处不适用FP-M、FP0、FP-e和FP1。 (*2)此处不适用FP-M、FP0、FP-e、FPΣ和FP1。 (*3)对于FPΣ、FP2、FP2SH和FP10SH,此处为I0至IC。 (*4)对于FPΣ、FP2、FP2SH和FP10SH,此处为ID。 ·错误标志(R9007):在变址数指定区超限时为ON并保持ON。 ·错误标志(R9008):在变址数指定的区超限时瞬间为ON。 标志位状态 描述 将由D指定的16位数据中的第n位变为ON. 未指定的数据位的内容不变. n指定变为ON的数据位,范围: K0~K15 3-282 n的范围: K0~K15(H0~HF)数据n中bit4~bit15无效 16bit数据位复位 操作数 程序示例 概述 将16bit数据的指定数据位复位。 对于FP-M/FP0/FP1/FPΣ/FP-e,P型高级指令不适用。 F131(BTR) P131(PBTR) 10 11 ST R 0 F131 (BTR) DT 0 DT 2 16位区D 地址 指令 梯形图程序 布尔形式 指定数据位的位数的16位常数或16位区n 触发器 WX WY WR WL(*1) SV EV DT LD(*1) FL(*2) IX(*3)IY(*4) K H D N/A A A A A A A A A A A N/A N/A A n A A A A A A A A A A A A A A 索引变址 常数 操作数 定时器/计数器 索引寄存器继电器 数据寄存器 示例说明 当触发器R0为ON时,按照DT2中指定的数据位,将数据寄存器DT0中的对应数据位设置为OFF。 当DT2=K7时, 操作结果如下: A: 可以使用 N/A: 不可使用 3-283 [n] DT2:K7 [D] [D] 数据位7变为OFF(0). 其他未指定的数据位不变. FP-e/FP0/FP∑/FP1/FP-M/ FP2/FP2SH/FP3/FP10SH 适用机型 (*1)此处不适用FP-M、FP0、FP-e和FP1。 (*2)此处不适用FP-M、FP0、FP-e、FPΣ和FP1。 (*3)对于FPΣ、FP2、FP2SH和FP10SH,此处为I0至IC。 (*4)对于FPΣ、FP2、FP2SH和FP10SH,此处为ID。 ·错误标志(R9007):在变址数指定区超限时为ON并保持ON。 ·错误标志(R9008):在变址数指定的区超限时瞬间为ON。 标志位状态 描述 将由D指定的16位数据中的第n位变为OFF. 未指定的数据位的内容不变. n指定变为ON的数据位,范围: K0~K15 3-284 n的范围: K0~K15(H0~HF)数据n中bit4~bit15无效 16bit数据位求反 操作数 程序示例 概述 将16bit数据的指定数据位求反。 对于FP-M/FP0/FP1/FPΣ/FP-e,P型高级指令不适用。 F132(BTI) P132(PBTI) 10 11 ST R 0 F132 (BTI) DT 0 DT 10 16位区D 地址 指令 梯形图程序 布尔形式 指定数据位的位数的16位常数或16位区n 触发器 WX WY WR WL(*1) SV EV DT LD(*1) FL(*2) IX(*3)IY(*4) K H D N/A A A A A A A A A A A N/A N/A A n A A A A A A A A A A A A A A 索引变址 常数 操作数 定时器/计数器 索引寄存器继电器 数据寄存器 示例说明 当触发器R0为ON时,按照DT2中指定的数据位,将数据寄存器DT0中的对应数据位反转。 当DT10=K7时, 操作结果如下: A: 可以使用 N/A: 不可使用 3-285 [n] DT10:K7 [D] [D] 数据位7取反.[OFF(0)→ON(0)]. 其他未指定的数据位不变. FP-e/FP0/FP∑/FP1/FP-M/ FP2/FP2SH/FP3/FP10SH 适用机型 (*1)此处不适用FP-M、FP0、FP-e和FP1。 (*2)此处不适用FP-M、FP0、FP-e、FPΣ和FP1。 (*3)对于FPΣ、FP2、FP2SH和FP10SH,此处为I0至IC。 (*4)对于FPΣ、FP2、FP2SH和FP10SH,此处为ID。 ·错误标志(R9007):在变址数指定区超限时为ON并保持ON。 ·错误标志(R9008):在变址数指定的区超限时瞬间为ON。 标志位状态 描述 将由D指定的16位数据中的第n位的内容取反,[OFF(0)→ON(1)或ON(1)→OFF(0)]. 未指定的数据位的内容不变. n指定变为ON的数据位,范围: K0~K15 3-286 n的范围: K0~K15(H0~HF)数据n中bit4~bit15无效 16bit数据位测试 操作数 程序示例 概述 检测16bit数据的指定数据位的状态[ON(1)或OFF(0)]。 对于FP-M/FP0/FP1/FPΣ/FP-e,P型高级指令不适用。 F133(BTT) P133(PBTT) 10 11 ST R 0 F133 (BTT) DT 0 DT 2 16位区D 地址 指令 梯形图程序 布尔形式 指定数据位的位数的16位常数或16位区n 触发器 WX WY WR WL(*1) SV EV DT LD(*1) FL(*2) IX(*3)IY(*4) K H D N/A A A A A A A A A A A N/A N/A A n A A A A A A A A A A A A A A 索引变址 常数 操作数 定时器/计数器 索引寄存器继电器 数据寄存器 示例说明 当触发器R0为ON时,按照DT2中指定的数据位,检测数据寄存器DT0中的对应数据位的状态[ON(1)或OFF(0)]。 当DT10=K7时, 操作结果如下: A: 可以使用 N/A: 不可使用 3-287 [n] DT2:K7 [D] 检测数据位7的状态. 当数据位7的状态为OFF(0)时,R900B变为ON,R10变为ON. FP-e/FP0/FP∑/FP1/FP-M/ FP2/FP2SH/FP3/FP10SH 适用机型 (*1)此处不适用FP-M、FP0、FP-e和FP1。 (*2)此处不适用FP-M、FP0、FP-e、FPΣ和FP1。 (*3)对于FPΣ、FP2、FP2SH和FP10SH,此处为I0至IC。 (*4)对于FPΣ、FP2、FP2SH和FP10SH,此处为ID。 ·错误标志(R9007):在变址数指定区超限时为ON并保持ON。 ·错误标志(R9008):在变址数指定的区超限时瞬间为ON。 ·=标志(R9008): 当检测到指定的数据位状态为OFF(0)时,瞬间为ON。 标志位状态 描述 对由D指定的16位数据中的第n位的内容[OFF(0)或ON(1)进行状态测试. 检测结果输出到特殊内容继电器R900B. 特殊内容继电器R900B的内容如下: - 当数据位的状态为ON(1)时,特殊内容继电器R900B(=标志)变为OFF - 当数据位的状态为OFF(0)时,特殊内容继电器R900B(=标志)变为ON n指定变为ON的数据位,范围: K0~K15 3-288 n的范围: K0~K15(H0~HF)数据n中bit4~bit15无效 当两次或多次使用判断标志R900B时的注意事项 每次执行运算指令或比较指令时, 判断标志都会被刷新. 因此,如果两次或多次使用该判断标志, - 应该在执行判断指令之后, 在程序中立即输入判断标志 - 该标志应该输出到输出继电器以便各个不同指令使用 16bit数据中ON(1) 的总个数 操作数 程序示例 概述 计算指定的16bit数据中ON(1)状态的数据位的总数。 对于FP-M/FP0/FP1/FPΣ/FP-e,P型高级指令不适用。 F135(BCU) P135(PBCU) 10 11 ST R 0 F135 (BCU) DT 10 DT 20 16位区或16位常数S 地址 指令 梯形图程序 布尔形式 存放0N(1)状态的数据位的数量的16位区D 触发器 WX WY WR WL(*1) SV EV DT LD(*1) FL(*2) IX(*3)IY(*4) K H S A A A A A A A A A A A A A A D N/A A A A A A A A A A A N/A N/A A 索引变址 常数 操作数 定时器/计数器 索引寄存器继电器 数据寄存器 示例说明 当触发器R0为ON时,对数据寄存器DT10中的为ON(1)的数据位进行计数.将ON(1)的数量存放到数据 寄存器DT20中。 A: 可以使用 N/A: 不可使用 3-289 当触发器R0为ON时,将K5存放到数据寄存器DT20中。 ON(1)的数据位为”5” FP-e/FP0/FP∑/FP1/FP-M/ FP2/FP2SH/FP3/FP10SH 适用机型 (*1)此处不适用FP-M、FP0、FP-e和FP1。 (*2)此处不适用FP-M、FP0、FP-e、FPΣ和FP1。 (*3)对于FPΣ、FP2、FP2SH和FP10SH,此处为I0至IC。 (*4)对于FPΣ、FP2、FP2SH和FP10SH,此处为ID。 ·错误标志(R9007):在变址数指定区超限时为ON并保持ON。 ·错误标志(R9008):在变址数指定的区超限时瞬间为ON。 标志位状态 描述 计算由S指定的16位数据中为ON(1)状态的数据位的数量,将计数的结果存放到由D指定的16位 数据寄存器中. 结果以10进制存放. 3-290 32bit数据中ON(1) 的总个数 操作数 程序示例 概述 计算指定的32bit数据中ON(1)状态的数据位的总数。 对于FP-M/FP0/FP1/FPΣ/FP-e,P型高级指令不适用。 F136(DBCU) P136(PDBCU) 10 11 ST R 0 F136 (DBCU) DT 10 DT 20 32位区或32位常数S 地址 指令 梯形图程序 布尔形式 存放0N(1)状态的数据位的数量的16位区D 触发器 WX WY WR WL(*1) SV EV DT LD(*1) FL(*2) IX(*3)IY(*4) K H S A A A A A A A A A A N/A A A A D N/A A A A A A A A A A N/A N/A N/A A 索引变址 常数 操作数 定时器/计数器 索引寄存器继电器 数据寄存器 示例说明 当触发器R0为ON时, 对数据寄存器DT11和DT10中的为ON(1)的数据位进行计数.将ON(1)的数量存放到 数据寄存器DT20中。 A: 可以使用 N/A: 不可使用 3-291 当触发器R0为ON时,将K9存放到数据寄存器DT20中。 ON(1)的数据位为”9” FP-e/FP0/FP∑/FP1/FP-M/ FP2/FP2SH/FP3/FP10SH 适用机型 (*1)此处不适用FP-M、FP0、FP-e和FP1。 (*2)此处不适用FP-M、FP0、FP-e、FPΣ和FP1。 (*3)对于FPΣ、FP2、FP2SH和FP10SH,此处为I0至IC。 (*4)对于FPΣ、FP2、FP2SH和FP10SH,此处为ID。 ·错误标志(R9007):在变址数指定区超限时为ON并保持ON。 ·错误标志(R9008):在变址数指定的区超限时瞬间为ON。 标志位状态 描述 计算由S指定的32位数据中为ON(1)状态的数据位的数量,将计数的结果存放到由D指定的16位 数据寄存器中. 结果以10进制存放. 3-292 16bit辅助定时器 操作数 程序示例 概述 以0.01秒为单位设置16bit数据ON延迟定时器(0.01~327.67秒)。 F137(STMR) 10 11 16 ST R 0 F137 (STMR) DT 10 DT 20 OT R 5 用于定时器设定值的16位区或16位常数S 地址 指令 梯形图程序 布尔形式 存放定时器经过值的16位数据区D 触发器 WX WY WR WL(*1) SV EV DT LD(*1) FL(*2) IX(*3)IY(*4) K H S A A A A A A A A A A A A A N/A D N/A A A A A A A A A N/A N/A N/A N/A N/A 索引变址 常数 操作数 定时器/计数器 索引寄存器继电器 数据寄存器 示例说明 当执行条件(触发器)满足N时, 辅助定时器被启动. 当经过数据寄存器DT10的数值×0.01秒的时间之后, R5变为ON. A: 可以使用 N/A: 不可使用 3-293 本功能为0.01秒单位的延迟定时器.当执行条件(触发器)为ON时,对设定时间进行减计数.当经过值D达到 0时,特殊内部继电器R900D变为ON.(当执行条件(触发器)为OFF或减计数过程中,特殊内部继电器R900D为 OFF.) 对于FP3 CPU Ver.4.0及以上版本、FP2/FP2SH/FP10SH,可以在辅助定时器之后直接连接OT指令.当执行 条件(触发器)为ON时,对设定时间进行减计数.当经过值D达到0时,使用OT指令的继电器变为ON,同时特殊 内部继电器R900D变为ON. 当执行条件(触发器)为OFF时, 经过值被清0,同时OT指令输出的继电器为OFF. 描述 FP-e/FP0/FP∑/FP1 C56/C72/ FP-M C20/C32/FP2/FP2SH/FP3/FP10SH 适用机型 (*1)此处不适用FP-M、FP0、FP-e和FP1。 (*2)此处不适用FP-M、FP0、FP-e、FPΣ和FP1。 (*3)对于FPΣ、FP2、FP2SH和FP10SH,此处为I0至IC。 (*4)对于FPΣ、FP2、FP2SH和FP10SH,此处为ID。 辅助定时器的动作过程 定时器设定值 当定时达到设定值时,特殊内部继电器R900D也变为ON. R900D也可以作为定时器触点使用.(当执行条件(触发器)为OFF或减计数过程中,R900D为OFF.) 3-294 上例的动作与示例程序的相同. 输入的定时器的设定为0.01秒×(定时器设定值). 定时器的设定值以K1~K32767范围内的K常数指定. STMR的设定范围为0.01秒到327.67秒,单位为0.01秒. 如果设定值等于K500,则设定值为0.01×500=5秒. 编程时的注意事项 存放设定值的区域和指定经过值的区域,不能与其他定时/计数器指令或高级指令的运算区重叠. 因为减计数是在运算时进行的,所以编程时应该使1个扫描周期中只运算一次. (因为中断程序、跳转/循环指令等在一个扫描中可以执行多次或一次也不执行,所以不能得到 正确的结果.) ① 当执行条件(触发器)R0从OFF变为ON时,由S指定的设定值被传送到经过值区D. S 发送到D ② 当执行条件(触发器)保持ON时,每个扫描中将经过值D的数据递减. 递减 3-295 ③ 当经过值D达到0时,OT指令之后的继电器变为ON. 特殊内部继电器R900D也同时变为ON. 递减结束 使用R900D时的注意事项 如果在程序多次使用辅助定时器,应该始终在定时器指令之后立即使用R900D. 当由R0启动的定时器a变为ON时,Y10变为ON.当由R1启动的定时器a变为ON时,Y11变为ON. (a) (b) 匹配 匹配 以下的程序不能产生正确的结果 时/分/秒数据 转换为秒数据 操作数 程序示例 概述 将时/分/秒数据转换为秒数据。 对于FP-M/FPΣ/FP1/FP0/FP-e, P型高级指令不适用。 F138(HMSS) P138(PHMSS) 10 11 ST R 0 F138 (HMSS) DT 0 DT 10 存储时/分/秒数据的起始16bit地址(源)S 地址 指令 梯形图程序 布尔形式 存储转换后的秒数据的起始16bit地址(目标)D 触发器 WX WY WR WL(*1) SV EV DT LD(*1) FL(*2) IX(*3) IY(*4) K H S A A A A A A A A A A N/A N/A N/A A D N/A A A A A A A A A A N/A N/A N/A A 索引变址 常数 操作数 定时器/计数器 索引寄存器继电器 数据寄存器 示例说明 当触发器R0为ON时,将数据寄存器DT1和DT0中的小时、分钟和秒数据转换为秒数据。转换后的秒数据 存放于DT11和DT10。 A: 可以使用 N/A: 不可使用 3-296 执行F138(HMSS)指令 7:45:30 [H00074530(BCD) (DT1=H7,DT0=H4530)] 小时数据 分钟数据 秒数据 秒数据 27930” [H00027930(BCD) (DT11=H2,DT10=H7930)] FP-e*/FP0*/FP∑/FP1 C24/C40 C56/C72/ FP-M C20/C32/FP2/FP2SH/FP3/FP10SH 适用机型 *仅限日历时钟型 (*1)此处不适用FP-M、FP0、FP-e和FP1。 (*2)此处不适用FP-M、FP0、FP-e、FPΣ和FP1。 (*3)对于FPΣ、FP2、FP2SH和FP10SH,此处为I0至IC。 (*4)对于FPΣ、FP2、FP2SH和FP10SH,此处为ID。 标志位状态 描述 将由S指定的32位数据区中的时/分/秒数据转换为秒数据.转换后的秒数据结果存放在D指定的 32位数据区中。 数据构成 3-297 示例: 3:45’19” (S+1:H0003, S:H4519) [S+1,S]32位的数据(2字)区中的数据表示时/分/秒数值.数值以BCD码的形式表示. BCD码的H数据分别表示小时(4数位),分钟(2数位)和秒(2数位). 最大时间数据为 9999小时,59分,59秒.格式如下: H BCD码 8数位(2字) 秒数据:(H00~H59) BCD码 分数据:(H00~H59) BCD码 时数据:(H0000~H9999) BCD码 D+1和D数据格式 转换后的秒数据以32位(2字)表示.转换后的BCD码格式如下: BCD码 8数位(2字) 转换后的秒数据: H00000000~H99999999 (BCD码) 示例: 35,999,999” (D+1:H3599, D:H9999) 注释: 允许指定的最大时间数值是: 9999小时, 59分,59秒 · 错误标志(R9007) 当以下情况时变为ON并且保持 · 错误标志(R9008) 当以下情况时瞬间变为ON -使用索引寄存器指定数据区超出范围 -S指定的被转换数据不是BCD码 -S指定分钟和秒数值不在00~59范围之内 转换秒数据为 时/分/秒数据 操作数 程序示例 概述 将秒数据转换为时/分/秒数据。 对于FP-M/FPΣ/FP1/FP0/FP-e, P型高级指令不适用。 F139(SHMS) P139(PSHMS) 10 11 ST R 0 F139 (SHMS) DT 0 DT 10 存储秒数据的起始16bit地址(源)S 地址 指令 梯形图程序 布尔形式 存储转换后的时/分/秒数据的起始16bit地址(目标)D 触发器 示例说明 当触发器R0为ON时,将数据寄存器DT1和DT0中的秒数据转换为秒数据。转换后的小时、分钟和秒数据 存放于DT11和DT10。 3-298 执行F139(SHMS)指令 4000” [H00004000(BCD) (DT1=H0,DT0=H4000)] 小时数据 分钟数据 秒数据 秒数据 1:6’40” [H00010640(BCD) (DT11=H0001,DT10=H0640)] FP-e*/FP0*/FP∑/FP1 C24/C40 C56/C72/ FP-M C20/C32/FP2/FP2SH/FP3/FP10SH 适用机型 *仅限日历时钟型 WX WY WR WL(*1) SV EV DT LD(*1) FL(*2) IX(*3) IY(*4) K H S A A A A A A A A A A N/A N/A N/A A D N/A A A A A A A A A A N/A N/A N/A A 索引变址 常数 操作数 定时器/计数器 索引寄存器继电器 数据寄存器 A: 可以使用 N/A: 不可使用 (*1)此处不适用FP-M、FP0、FP-e和FP1。 (*2)此处不适用FP-M、FP0、FP-e、FPΣ和FP1。 (*3)对于FPΣ、FP2、FP2SH和FP10SH,此处为I0至IC。 (*4)对于FPΣ、FP2、FP2SH和FP10SH,此处为ID。 描述 将由S指定的32位数据区中的秒数据转换为时/分/秒数据.转换后的时/分/秒数据结果存放在 D指定的32位数据区中。 数据构成 3-299 示例: 35,999,999” (S+1:H3599, S:H9999) [S+1,S]32位的数据(2字)区中的数据表示秒数值.数值以BCD码的形式表示. BCD码的H数据(8数位)格式如下: D+1和D数据格式 转换后的时/分/秒数据以32位(2字)表示.转换后的小时数据(4数位),分钟数据(2数位)和秒数据 (2数位)以BCD码表示.转换后的BCD码格式如下: S+1和S数据格式 H BCD码 8数位(2字) 秒数据:(H00~H59) BCD码 分数据:(H00~H59) BCD码 时数据:(H0000~H9999) BCD码 BCD码 8数位(2字) 秒数据: H00000000~H99999999 (BCD码) H 示例: 3:45’19” (D+1:H0003, D:H4519) 注释: 允许指定的最大时间数值D是: 9999小时, 59分,59秒, 因此允许使用的秒数据是 35999999秒. 标志位状态 3-300 · 错误标志(R9007) 当以下情况时变为ON并且保持 · 错误标志(R9008) 当以下情况时瞬间变为ON -使用索引寄存器指定数据区超出范围 -S指定的被转换数据不是BCD码 -S指定分钟和秒数值不在35999999范围之内 进位标志位置 描述 程序示例 概述 将特殊内部继电器R9009(进位标志)置为ON。 对于FP-M/FP0/FP1/FP-e/FPΣ, P型高级指令不适用。 F140(STC) P140(PSTC) 10 11 ST R 0 F140 (STC) 地址 指令 梯形图程序 布尔形式 触发器 3-301 标志位状态 ·进位标志(R9009):本指令执行后变为ON. 使特殊内部继电器R9009(进位标志)变为ON。 FP-e/FP0/FP∑/FP1 C24/C40 C56/C72/ FP-M C20/C32/FP2/FP2SH/FP3/FP10SH 适用机型 进位标志复位 描述 程序示例 概述 将特殊内部继电器R9009(进位标志)置为OFF。 对于FP-M/FP0/FP1/FP-e/FPΣ, P型高级指令不适用。 F141(CLC) P141(PCLC) 10 11 ST R 0 F141 (CLC) 地址 指令 梯形图程序 布尔形式 触发器 3-302 标志位状态 ·进位标志(R9009):本指令执行后变为OFF. 使特殊内部继电器R9009(进位标志)变为OFF。 FP-e/FP0/FP∑/FP1 C24/C40 C56/C72/ FP-M C20/C32/FP2/FP2SH/FP3/FP10SH 适用机型 看门狗定时器刷新 操作数 程序示例 概述 刷新看门狗定时器的超时时间。 F142(WDT) P142(PWDT) 10 11 ST R 0 F142 (WDT) K 128 指定看门狗定时器数值的常数S 地址 指令 梯形图程序 布尔形式 触发器 WX WY WR WL SV EV DT LD FL IX IY K H S N/A N/A N/A N/A N/A N/A N/A N/A N/A N/A N/A A A N/A 索引变址 常数 操作数 定时器/计数器 索引寄存器继电器 数据寄存器 示例说明 当触发器R0为ON时,将看门狗定时器改为K128(12.8ms) A: 可以使用 N/A: 不可使用 3-303 描述 将由S指定的设定值,预置到看门狗定时器的超时定时值。 利用本指令预置后,运算处理块被按此处设置的超时时间进行监视. 允许的S的指定范围是K4~K6400. 实际的超时时间是S×0.1(ms). 示例: 如果S等于K100,则超时时间为10ms. 运算迟滞时间的看门狗定时器在每个扫描周期的开始时根据系统寄存器进行刷新. 如果需要对所有的扫描周期都改变看门狗定时器的数值,则请改变系统寄存器30中的数值. 如果使用F142(WDT)/P142(PWDT)指令,则可以只改变该扫描周期的超时时间(看门狗定时器制). FP2SH/FP10SH 适用机型 3-304 编程时注意事项 F142(WDT)指令可以多次使用. 需要根据运算改变看门狗定时器值, 请按照以下处理: 1) 在需要处理的程序块之前使用F142(WDT)指令,指定所需的预置值. 2) 处理结束之后,应立即再次使用F142(WDT)指令,重新设置的预置值. 如果一个扫描周期的时间超出640ms,则不按照F142(WDT)指令的设置而启动系统看门狗定时器, 停止运算,输出变为OFF. 如果需要复位系统看门狗定时器,请使用以下方法清除: - 使用编程工具软件 - 将TEST(测试)/INITIALIZE(初始化)开关拨到INITIALIZE位置. 部分I/O刷新 操作数 程序示例 概述 刷新指定部分的I/O点。 F143(IORF) 10 11 ST R 10 F143 (IORF) WX 0 WX 0 开始字地址D1 地址 指令 梯形图程序 布尔形式 结束字地址D2 触发器 数据寄存器 索引寄存器 WX WY WR SV EV DT I K H D1 A A N/A N/A N/A N/A N/A N/A N/A A D2 A A N/A N/A N/A N/A N/A N/A N/A A 索引变址 常数 操作数 定时器/计数器继电器 示例说明 当执行条件(触发器)R10为ON时,立即刷新输入继电器WX0(X0~XF); 当执行条件(触发器)R20为ON时, 立即刷新输出继电器WY0(Y0~YF); A: 可以使用 N/A: 不可使用 3-305 20 21 ST R 20 F143 (IORF) WY 0 WY 0 … 刷新输入部分 刷新输出部分 描述 即使在程序执行过程中,立即刷新由D1和D2指定的外部输入继电器X和外部输出继电器Y. 只有控制单元的I/O点能够利用F143(IORF)指令进行刷新(更新). 刷新输入继电器时,应由[D1]和[D2]指定WX0. 刷新输入继电器时,应由[D1]和[D2]指定WX0. 对于FP0, 不能对扩展单元进行I/O刷新. FP-e/FP0/FP∑ 适用机型 部分I/O刷新 操作数 程序示例 概述 刷新指定部分的I/O点。 F143(IORF) 10 11 ST R 10 F 143 (IORF) WX 0 WX 3 开始字地址D1 地址 指令 梯形图程序 布尔形式 结束字地址D2 触发器 数据寄存器 索引寄存器 WX WY WR SV EV DT I K H D1 A A N/A N/A N/A N/A N/A N/A N/A A D2 A A N/A N/A N/A N/A N/A N/A N/A A 索引变址 常数 操作数 定时器/计数器继电器 示例说明 当执行条件(触发器)R10为ON时,立即刷新输入继电器WX0~WX3(X0~X3F); 当执行条件(触发器)R20为ON时,立即刷新输出继电器WY0~WY5(Y0~Y5F); A: 可以使用 N/A: 不可使用 3-306 20 21 ST R 20 F 143 (IORF) WY 0 WY 5 … 刷新输入部分 刷新输出部分 Y0~Y7 Y30~Y37 Y50~Y53 X0~XF X30~X37 X50~X53 当R10为ON时刷新输入继电器 当R20为ON时刷新输出继电器 FP1/FP-M 适用机型 3-307 描述 即使在程序执行过程中,立即刷新由D1和D2指定的外部输入继电器X和外部输出继电器Y. 刷新输入继电器时,应由[D1]和[D2]指定WX0. 刷新输入继电器时,应由[D1]和[D2]指定WX0. 能够利用F143(IORF)指令对FP1控制单元、FP1扩展单元、FP-M控制板和FP-M控制I/O板进行刷新. 不能用于FP1智能单元和包括I/O link单元在内的FP-M智能. D1和D2必须是相同类型的操作数. 指定地址时必须D1≤D2. 只刷新一个字时,应设置D1和D2为相同的地址. 部分I/O刷新 操作数 程序示例 概述 刷新指定部分的I/O点。 10 11 ST R 10 F143 (IORF) K 0 K 1 开始字地址D1 地址 指令 梯形图程序 布尔形式 结束字地址D2 触发器 示例说明 当执行条件(触发器)R10为ON时,立即刷新字编号为0~1的输入和输出继电器. 当系统配置如下时,在执行指令后, 执行输出处理WX0(X0~XF)和输出处理WY1(Y10~Y1F). 当执行条件(触发器)R20为ON时,立即刷新输出继电器WY0~WY5(Y0~Y5F); A: 可以使用 N/A: 不可使用 3-308 F143(IORF) P143(PIORF) WX WY WR WL SV EV DT LD FL I0~IC ID K H D1 N/A N/A N/A N/A N/A N/A N/A N/A N/A N/A N/A A A A D2 N/A N/A N/A N/A N/A N/A N/A N/A N/A N/A N/A A A A 索引变址 常数 操作数 定时器/计数器 索引寄存器继电器 数据寄存器 电 源 单 元 C PU 单 元 16 点 输 入 单 元 16 点 输 出 单 元 0 1 2 3 4 (槽号) FP2/FP2SH/FP3/FP10SH 适用机型 3-309 描述 即使在程序执行过程中,立即刷新由D1和D2指定的外部输入和外部输出继电器(X和Y). 只能够利用F143(IORF)指令对主板和扩展板中的单元进行刷新.不能刷新MEWNET-F(远程I/O)从站系统 中的输入/输出继电器进行刷新. 指定D1和D2时,应满足: - 指定起始地址D1和结束地址D2(D1≤D2). - 指定地址K0≤D1≤D2≤K255 - 只刷新一个字时,应设置D1和D2为相同的地址. F144(TRNS) 串行数据通信 概述 程序示例 操作数 用于通过RS232C串行通信口向外部设备发送数据. 数据寄存器 索引寄存器 WX WY WR SV EV DT I K H S N/A N/A N/A N/A N/A A N/A N/A N/A A n A A A A A A A A A A 索引变址 定时器/计数器 常数继电器 操作数 3-310 A: 可以使用 N/A: 不可使用 10 11 12 ST R 10 DF F144 (TRN) DT 100 K 8 触发器 n 参数表存储区的起始地址(数据寄存器)S 存放被发送数据的字节数或常数. - 当数值为正时,发送时添加结束符 - 当数值为负时,不添加结束符 - 当数值为H8000时,切换RS232C通信端口的传输模式 FP-e/FP0 适用机型 梯形图程序 布尔形式 地址 指令 描述 当外部设备(计算机、测量仪表、条码识阅读器等)与RS232串行通信端口连接以后用本指令 发送和接收数据. 发送 发送存储在数据表中从“S”地址开始的“n”个字节的数据, 由“D”中指定与外部设备相连接的 通信端口。能够自动添加和发送起始符和结束符。 接收 接收是由接收完成标志位(R9038的ON/OFF控制的. 当接收完成标志变为OFF时, 开始从RS232C 端口接收数据, 并且自动存储在由系统寄存器No.417和No.418数据寄存器中. F144(TRNS)指令可以用来关闭接收完成标志位(R9038) (允许接收). 改变RS232C端口的传送方式 执行F144(TRNS)指令可以切换“通用通信方式”和“计算机链接方式”. 使用时, 在“n”(传送的字节总数)中指定“H8000”并且执行该指令. 在此情况下, 此参数 被忽略,可以任意设置 R9032: 为RS232C通信端口模式选择标志. 在选择为“通用通信方式”的情况下, 该标志为ON. 指定H8000 注意: 当电源接通的时候, 在系统寄存器NO.412中被选择的方式生效. 3-311 标志位状态 · 错误标志(R9007):以下情况时为ON并保持ON · 错误标志(R9008):以下情况时瞬间为ON - 变址数指定区超限 - n指定的数据区 终地址超出范围 当选择了“通用通信方式”时, 执行该指令可以切换到“计算机链接方式” 当选择了“计算机链接方式”时, 执行该指令可以切换到“通用通信方式” 发送过程的编程和操作 为了执行数据发送, 应将被传送的数据写进数据表内并使用F144(TRNS)指令. 传送的数据表 作为被发送的数据表, 从”S”指定的数据寄存器开始. 开始发送时, 此处为待发送字节数. 发送结束时, 置0. 发送数据存储区. (编号表示发送顺序) 注意: 数据发送区不能与接收缓冲区(由系统寄存器417和418设置)重叠. 开始发送时: K8 发送结束时: K0 数据从低位开始发送 发送前的数据表 3-312 使用F0(MV)或者F95(ASC)指令将被发送的数据写入由“S”指定的数据区(从第2个字开始). - 在被传送的数据中表不包括结束符. 结束符是自动添加的. - 在系统寄存器NO.413中的选择“有起始符”, 则在被传送的数据表中不包括起始符. 起始符是自动添加的. - 发送的字节数”n”没有限制.从[S]指定的数据表开始,到数据寄存器区结束的区域都可使用. 开始执行F144(TRNS)指令发送数据时,未被发送的字节数存放在参数表的起始字中. 示例: 传送8个字符A , B , C , D, E , F , G , H(8个字节的数据) 本例中使用DT100到DT104作为数据表. 当不需要添加传送结束符时, 请使用以下的方法 3-313 编程 操作 在“S”中指定发送数据表的首地址, 在“n”中是被传送数据的字节总数. 向数据表中写入发送数据 发送数据表中的数据 当F144(TRNS)指令的执行条件(触发器)变ON、并且当传送标志位(R9039)为ON时, 执行如下操作: 1) “n”被预置在“S”(未发送字节数)中.接收完成标志位(R9038)变成OFF, 同时接收数据的总数被清零. 2) 从数据表的“S+1”中的低字节开始顺序地发送数据. - 每发送一个字节,S(未发送字节数)中的数值减1 - 在传送过程中,传送完成标志位(R9039)保持OFF - 如果在系统寄存器NO.413设置了使用STX起始符, 则起始符自动添加在数据开始处. - 在系统寄存器NO.413中指定的结束符被自动添加在数据末尾. R9039 执行条件 (触发器)R1 发送过程 在此期间不能执行F144(TRNS)指令 3) 所有的指定的数据被发送后, “S”中的数值被清零, 并且发送完成标志位(R9039)变成ON. - 使用负数作为被传送的字节数. - 如果不需要添加结束符, 请参照说明设置系统寄存器NO.413为“无结束符” 示例: 传送8个字节的数据,不添加结束符 指定K-8 发送数据 未发送字节数(DT100) 接收过程的编程和操作 数据从RS23C2端口连接的外部设备传送进来, 存储在作为接收缓冲区的数据寄存器中. 接收缓冲区 接收到的字节数存放在此处 接收缓冲区. (编号表示存放顺序) 3-314 设置接收缓冲区:系统寄存器417和418 所有的数据寄存器都被设置为接收缓冲区. 需要改变接收缓冲区时, 应在系统寄存器417中设置 缓冲区的起始地址, 在系统寄存器418中设置缓冲区大小(以字为单位, 大1024字) 接收缓冲区的构成如下: 接收到的 字节数 存放接收 到数据的 区域 在系统寄存器418中 设置接收缓冲区的字数 在系统寄存器417中 设置接收缓冲区的起始 每次接收到数据后, 接收到数据的字节数被存储在接收缓冲区的起始字中. 该初始值是“0”. 接收到的数据从低位字节开始被顺序存储在从接收缓冲区第2个字开始的数据区中. 字 (地址) 示例: 从外部设备通过COM1端口接收8个字节A , B , C , D, E , F , G , H的数据 本例中使用DT200到DT204作为接收缓冲区. 系统寄存器的设置如下: - 系统寄存器416: K200 - 系统寄存器417: K5 接收结束后的接收缓冲区内容 3-315 存放接收到的字节数 从低字节开始存放接收到的数据. 编程 当从外部通信设备接收数据完成时,接收完成标志(R9038)变为ON. 之后的数据不再接收. 为了接收后来的数据,必须执行F144(TRNS)指令使接收完成标志位(R9038)变为OFF, 同时将 接收字节总数清零. 只用于接收后清除缓冲区和接收完成标志时,指定K0. 当以指定的字节数发送数据时, R9038也能变为OFF. 3-316 操作 接收完成标志位(R9038)为OFF的状态下, 从外部设备发送数据时进行以下操作. (在RUN运行后第一个扫描周期内R9038变成OFF, “0”被设置在由系统寄存器中指定的接收缓冲区 的起始字中) 接收到数据 接收到的字节数 R9038 执行条件 (触发器)R0 不能接收 2) 当接收到结束符后, 接收完成标志位(R9038/R9048)变成ON. 禁止接收后来的数据. 3) F144(TRNS)指令被执行, 接受完成标志位(R9038)变成OFF, 接收的字节总数被清零, 后来的数据从低位字节顺序存储. 1) 接收到的数据被顺序地从接收缓冲区的第二个字的低位字节开始存放。 起始符和结束符不被存储。 每接收到一个字节的数据, 接收缓冲区的起始字中的数值增1。 开始接收 重新开始接收 可以接收 可以接收 执行F144(TRNS) 注意: · 为了确认数据的接收, 请参考以下步骤. 1) 接收数据 2) 接收完成(R9038:ON, 接收被禁止) 3) 处理接收到的数据 4) 执行F144(TRNS)指令(R9038:OFF, 允许继续接收) 5) 接收后续的数据 · 在一个扫描周期中, 接收完成标志位(R9038)有可能改变. F144(TRNS) 串行数据通信 概述 程序示例 操作数 用于通过RS232C串行通信口向外部设备发送数据. 数据寄存器 索引寄存器 WX WY WR SV EV DT I K H S N/A N/A N/A N/A N/A A N/A N/A N/A A n A A A A A A A A A A 索引变址 定时器/计数器 常数继电器 操作数 3-317 A: 可以使用 N/A: 不可使用 10 11 12 ST R 10 DF F144 (TRN) DT 100 K 8 触发器 n 参数表存储区的起始地址(数据寄存器)S 存放被发送数据的字节数或常数. - 当数值为正时,发送时添加结束符 - 当数值为负时,不添加结束符 - 当数值为H8000时,切换RS232C通信端口的传输模式 FP1/FP-M 适用机型 布尔形式 指令地址 梯形图程序 描述 当外部设备(计算机、测量仪表、条码识阅读器等)与RS232串行通信端口连接以后用本指令 发送和接收数据. 发送 发送存储在数据表中从“S”地址开始的“n”个字节的数据, 由“D”中指定与外部设备相连接的 通信端口。能够自动添加和发送起始符和结束符。 接收 接收是由接收完成标志位(R9038的ON/OFF控制的. 当接收完成标志变为OFF时, 开始从RS232C 端口接收数据, 并且自动存储在由系统寄存器No.417和No.418数据寄存器中. F144(TRNS)指令可以用来关闭接收完成标志位(R9038) (允许接收). 在此情况下, 此参数 被忽略,可以任意设置 R9032: 为RS232C通信端口模式选择标志. 在选择为“通用通信方式”的情况下, 该标志为ON. 指定H8000 注意: 当电源导通的时候, 在系统寄存器NO.412中被选择的方式生效. 3-318 标志位状态 · 错误标志(R9007):以下情况时为ON并保持ON · 错误标志(R9008):以下情况时瞬间为ON - 变址数指定区超限 - n指定的数据区 终地址超出范围 当选择了“计算机链接方式”时, 执行该指令可以切换到“通用通信方式” 改变RS232C端口的传送方式(Ver.2.9及更高版本的CPU) 执行F144(TRNS)指令可以切换“通用通信方式”和“计算机链接方式”. 使用时, 在“n”(传送的字节总数)中指定“H8000”并且执行该指令. 发送 RS232C端口 RS232C端口 (系统寄存器412:K2) 外部设备 (个人计算机) 外部设备 (条码阅读器) (系统寄存器412:K2) 接收 发送和接收的准备 系统寄存器412、413、414、417用于设置串行通信的规格, 包括通信模式和格式等. 1) 设置RS232C端口的用途: 系统寄存器412 设置为K2使其为通用通信模式. 2) 设置RS232C端口的格式: 系统寄存器413 发送格式的初始设置如下: - 数据长: 8bits - 奇偶校验: 奇校验 - 停止位: 1bit - 结束符: CR - 起始符: 无STX 应该根据相连的外部设备的情况设置发送格式. 因为PLC会根据系统寄存器413的设置自动将结束符 添加到被发送数据之后, 所以不需要在S和n指定的数据区中写入结束符. 设置 3-319 3) 设置波特率: 系统寄存器414 串行通信的波特率(传输速度)的初始设置为9600bps. 应根据相连接的外部设备设置RS232C端口的波特率. 起始符 0: 无STX 1: 有STX 结束符 00: CR 01: CR+LF 11: ETX 停止位 0: 1bit 1: 2bits 奇偶校验 00: 无 01: 奇校验 11: 偶校验 数据长 0: 7bits 1: 8bits 300bpsH6 600bpsH5 1200bpsH4 2400bpsH3 4800bpsH2 9600bpsH1 19200bpsH0 波特率设置数值 4) 设置接收缓冲区: 系统寄存器417和418 所有的数据寄存器都被初始设置为接收缓冲区. 需要变更接收缓冲区时, 应在系统寄存器417中 设置接收缓冲区的起始地址, 在系统寄存器418中设置缓冲区大小(字数). 接收缓冲区的构成如下: 3-320 接收到的 字节数 接收到 数据的 存放区域 系统寄存器418中设置的字数 系统寄存器418中 设置的起始地址 发送过程的编程和操作 为了执行数据发送, 应将被传送的数据写进数据表内并使用F144(TRNS)指令. 传送的数据表 作为被发送的数据表, 从”S”指定的数据寄存器开始. 发送数据存储区. (编号表示发送顺序) 注意: 数据发送区不能与接收缓冲区(由系统寄存器417和418设置)重叠. 开始发送时: K8 发送结束时: K0 数据从低位开始发送 发送前的数据表 3-321 使用F0(MV)或者F95(ASC)指令将被发送的数据写入由“S”指定的数据区(从第2个字开始). - 在被传送的数据中表不包括结束符. 结束符是自动添加的. - 在系统寄存器NO.413中的选择“有起始符”, 则在被传送的数据表中不包括起始符. 起始符是自动添加的. - 发送的字节数”n”没有限制.从[S]指定的数据表开始,到数据寄存器区结束的区域都可使用. 开始执行F144(TRNS)指令发送数据时,未被发送的字节数存放在参数表的起始字中. 示例: 传送8个字符A , B , C , D, E , F , G , H(8个字节的数据) 本例中使用DT100到DT104作为数据表. 开始发送时, 此处为待发送字节数. 发送结束时, 置0. 当不需要添加传送结束符时, 请使用以下的方法 3-322 编程 操作 在“S”中指定发送数据表的首地址, 在“n”中是被传送数据的字节总数. 向数据表中写入发送数据 发送数据表中的数据 当F144(TRNS)指令的执行条件(触发器)变ON、并且当传送标志位(R9039)为ON时, 执行如下操作: 1) “n”被预置在“S”(未发送字节数)中.接收完成标志位(R9038)变成OFF, 同时接收数据的总数被清零. 2) 从数据表的“S+1”中的低字节开始顺序地发送数据. - 每发送一个字节,S(未发送字节数)中的数值减1 - 在传送过程中,传送完成标志位(R9039)保持OFF - 如果在系统寄存器NO.413设置了使用STX起始符, 则起始符自动添加在数据开始处. - 在系统寄存器NO.413中指定的结束符被自动添加在数据末尾. R9039 执行条件 (触发器)R1 发送过程 在此期间不能执行F144(TRNS)指令 3) 所有的指定的数据被发送后, “S”中的数值被清零, 并且发送完成标志位(R9039)变成ON. F144(TRNS)指令不被指定,并且R9039不变为ON除非RS232C端口的第5脚为ON. - 使用负数作为被传送的字节数. - 如果需要添加结束符, 请在发送数据中写入结束符. 示例: 传送8个字节的数据,不添加结束符 指定K-8 发送数据 未发送字节数(DT100) 接收过程的编程和操作 数据从RS23C2端口连接的外部设备传送进来, 存储在作为接收缓冲区的数据寄存器中. 接收缓冲区 接收到的字节数存放在此处 接收缓冲区. (编号表示存放顺序) 3-323 设置接收缓冲区:系统寄存器417和418 所有的数据寄存器都被设置为接收缓冲区. 需要改变接收缓冲区时, 应在系统寄存器417中设置 缓冲区的起始地址, 在系统寄存器418中设置缓冲区大小(以字为单位, 大1024字) 接收缓冲区的构成如下: 接收到的 字节数 存放接收 到数据的 区域 在系统寄存器418中 设置接收缓冲区的字数 在系统寄存器417中 设置接收缓冲区的起始 每次接收到数据后, 接收到数据的字节数被存储在接收缓冲区的起始字中. 该初始值是“0”. 接收到的数据从低位字节开始被顺序存储在从接收缓冲区第2个字开始的数据区中. 字 (地址) 示例: 从外部设备通过COM1端口接收8个字节A,B,C,D,E,F,G,H的字符数据 本例中使用DT200到DT204作为接收缓冲区. 系统寄存器的设置如下: - 系统寄存器417: K200 - 系统寄存器418: K5 接收结束后的接收缓冲区内容 3-324 存放接收到的字节数 从低字节开始存放接收到的数据. 编程 当从外部通信设备接收数据完成时,接收完成标志(R9038)变为ON. 之后的数据不再接收. 为了接收后来的数据,必须执行F144(TRNS)指令使接收完成标志位(R9038)变为OFF, 同时将 接收字节总数清零. 只用于接收后清除缓冲区和接收完成标志时,指定K0. 当以指定的字节数发送数据时, R9038也能变为OFF. 3-325 操作 接收完成标志位(R9038)为OFF的状态下, 从外部设备发送数据时进行以下操作. (在RUN运行后第一个扫描周期内R9038变成OFF, “0”被设置在由系统寄存器中指定的接收缓冲区 的起始字中) 接收到数据 接收到的字节数 R9038 执行条件 (触发器)R0 不能接收 2) 当接收到结束符后, 接收完成标志位(R9038/R9048)变成ON. 禁止接收后来的数据. 3) F144(TRNS)指令被执行, 接受完成标志位(R9038)变成OFF, 接收的字节总数被清零, 后来的数据从低位字节顺序存储. 1) 接收到的数据被顺序地从接收缓冲区的第二个字的低位字节开始存放。 起始符和结束符不被存储。 每接收到一个字节的数据, 接收缓冲区的起始字中的数值增1。 开始接收 重新开始接收 可以接收 可以接收 执行F144(TRNS) 注意: · 为了确认数据的接收, 请参考以下步骤. 1) 接收数据 2) 接收完成(R9038:ON, 接收被禁止) 3) 处理接收到的数据 4) 执行F144(TRNS)指令(R9038:OFF, 允许继续接收) 5) 接收后续的数据 · 在一个扫描周期中, 接收完成标志位(R9038)有可能改变. F144(TRNS) 串行数据通信 概述 程序示例 操作数 用于通过CPU单元上的COM.端口向外部设备发送数据. 数据寄存器 索引寄存器 WX WY WR SV EV DT I K H S N/A N/A N/A N/A N/A A N/A N/A N/A A n A A A A A A A A A A 操作数 索引变址 定时器/计数器 常数继电器 3-326 A: 可以使用 N/A: 不可使用 10 11 12 ST R 10 DF F144 (TRNS) DT 100 K 8 触发器 n 参数表存储区的起始地址(数据寄存器)S 存放被发送数据的字节数或常数. - 当数值为正时,发送时添加结束符 - 当数值为负时,不添加结束符 - 当数值为H8000时,切换RS232C通信端口的传输模式 示例说明 当触发器R0B变为ON时,通过COM.端口发送存储在数据寄存器DT101到DT104中的8个字节的数据。 FP2/FP2SH/FP10SH 适用机型 梯形图程序 布尔形式 指令地址 描述 当外部设备(计算机、测量仪表、条码识阅读器等)与RS232串行通信端口连接以后用本指令 发送和接收数据. 发送 发送存储在数据表中从“S”地址开始的“n”个字节的数据, 由“D”中指定与外部设备相连接的 通信端口。能够自动添加和发送起始符和结束符。 3-327 标志位状态 · 错误标志(R9007):以下情况时为ON并保持ON · 错误标志(R9008):以下情况时瞬间为ON - 变址数指定区超限 - n指定的数据区 终地址超出范围 接收 接收是由接收完成标志位(R9038的ON/OFF控制的. 当接收完成标志变为OFF时, 开始从RS232C 端口接收数据, 并且自动存储在由系统寄存器No.417和No.418数据寄存器中. F144(TRNS)指令可以用来关闭接收完成标志位(R9038) (允许接收). 发送 RS232C端口外部设备 (个人计算机) FP10SH RS232C端口外部设备 (条码阅读器) 接收 FP10SH 发送的准备 1) 设置传输格式 用于FP10SH 发送格式的初始设置如下: - 数据长: 8bits - 奇偶校验: 奇校验 - 停止位: 1bit - 结束符: CR - 起始符: 无STX 应该根据与COM.端口相连的外部设备的情况设置发送格式. 利用上排的模式操作开关设置参数. 操作模式开关(使用上排DIP开关) 3-328 上排DIP开关 下排DIP开关 ON8bits OFF7bits 数据长 ONON奇校验 OFFON偶校验 OFFOFF无效 奇偶 校验 ON1bit OFF2bits 停止位 ONONEXT(H03) ONOFFCR(H0D) OFFONCR(H0D)+LF(H0A) OFFOFF无 结束符 ONSTX(H02)有效 OFFSTX(H02)无效 起始符 ON允许 OFF禁止modem 控制 SW8SW7SW6SW5SW4SW3SW2SW1 设置 功能 用于FP2/FP2SH 根据与COM.端口相连的外部设备的情况, 在系统寄存器413中设置发送格式. 缺省设置与FP10SH相同. 在发送时, 自动添加所选择的结束符. 如果需要不发送结束符, 则应在执行F144(TRNS)之前将发送字节 数设置为负数. 如果起始符设置为”STX”, 则自动添加STX. 2) 设置波特率 用于FP10SH 波特率(发送速度)的初始设置为9600bps. 应该根据与COM.端口相连的外部设备的情况设置发送速度. 利用下排的模式操作开关进行设置. 操作模式开关(使用下排DIP开关) 3-329 ONONON-----1200bps ONONOFF-----2400bps ONOFFON-----4800bps ONOFFOFF-----9600bps OFFONON-----19200bps OFFONOFF-----38400bps OFFOFFON-----57600bps OFFOFFOFF-----115200bps 传输 速率 SW8SW7SW6SW5SW4SW3SW2SW1 设置 功能 用于FP2/FP2SH 根据与COM.端口相连的外部设备的情况, 在系统寄存器414中设置”COM.端口速率”. 缺省设置为19200bps. 3) 设置RS232C端口的用途 系统寄存器412中设置串行传输. 执行F144(TRNS)指令可以切换“通用通信方式”和“计算机链接方式”. 使用时, 在“n”(传送的字节总数)中指定“H8000”并且执行该指令. 在此情况下, 此参数 被忽略,可以任意设置 R9032: 为RS232C通信端口模式选择标志. 在选择为“通用通信方式”的情况下, 该标志为ON. 指定H8000 注意: 当电源导通的时候, 在系统寄存器NO.412中被选择的方式生效. 当选择了“通用通信方式”时, 执行该指令可以切换到“计算机链接方式” 当选择了“计算机链接方式”时, 执行该指令可以切换到“通用通信方式” 发送过程的编程和操作 为了执行数据发送, 应将被传送的数据写进数据表内并使用F144(TRNS)指令. 传送的数据表 作为被发送的数据表, 从”S”指定的数据寄存器开始. 开始发送时, 此处为待发送字节数. 发送数据存储区. (编号表示发送顺序) 注意: 数据发送区不能与接收缓冲区(由系统寄存器417和418设置)重叠. 开始发送时: K8 发送结束时: K0 数据从低位开始发送 发送前的数据表 3-330 使用F0(MV)或者F95(ASC)指令将被发送的数据写入由“S”指定的数据区(从第2个字开始). - 在被传送的数据中表不包括结束符. 结束符是自动添加的. - 在系统寄存器NO.413中的选择“有起始符”, 则在被传送的数据表中不包括起始符. 起始符是自动添加的. - 发送的字节数”n”没有限制.从[S]指定的数据表开始,到数据寄存器区结束的区域都可使用. 开始执行F144(TRNS)指令发送数据时,未被发送的字节数存放在参数表的起始字中. 示例: 传送8个字符A , B , C , D, E , F , G , H(8个字节的数据) 本例中使用DT100到DT104作为数据表. 当不需要添加传送结束符时, 请使用以下的方法 3-331 编程 操作 在“S”中指定发送数据表的首地址, 在“n”中是被传送数据的字节总数. 向数据表中写入发送数据 发送数据表中的数据 当F144(TRNS)指令的执行条件(触发器)变ON、并且当传送标志位(R9039)为ON时, 执行如下操作: 1) “n”被预置在“S”(未发送字节数)中.接收完成标志位(R9038)变成OFF, 同时接收数据的总数被清零. 2) 从数据表的“S+1”中的低字节开始顺序地发送数据. - 每发送一个字节,S(未发送字节数)中的数值减1 - 在传送过程中,传送完成标志位(R9039)保持OFF - 如果在系统寄存器NO.413设置了使用STX起始符, 则起始符自动添加在数据开始处. - 在系统寄存器NO.413中指定的结束符被自动添加在数据末尾. R9039 执行条件 (触发器)R1 发送过程 在此期间不能执行F144(TRNS)指令 3) 所有的指定的数据被发送后, “S”中的数值被清零, 并且发送完成标志位(R9039)变成ON. F144(TRNS)指令不被指定,并且R9039不变为ON除非RS232C端口的第5脚为ON. - 使用负数作为被传送的字节数. - 如果需要添加结束符, 请在发送数据中写入结束符. 示例: 传送8个字节的数据,不添加结束符 指定K-8 发送数据 未发送字节数(DT100) 接收的准备 1) 设置传输格式 用于FP10SH 发送格式的初始设置如下: - 数据长: 8bits - 奇偶校验: 奇校验 - 停止位: 1bit - 结束符: CR - 起始符: 无STX 应该根据与COM.端口相连的外部设备的情况设置发送格式. 利用上排的模式操作开关设置参数. 操作模式开关(使用上排DIP开关) 3-332 上排DIP开关 下排DIP开关 ON8bits OFF7bits 数据长 ONON奇校验 OFFON偶校验 OFFOFF无效 奇偶 校验 ON1bit OFF2bits 停止位 ONONEXT(H03) ONOFFCR(H0D) OFFONCR(H0D)+LF(H0A) OFFOFF无 结束符 ONSTX(H02)有效 OFFSTX(H02)无效 起始符 ON允许 OFF禁止modem 控制 SW8SW7SW6SW5SW4SW3SW2SW1 设置 功能 用于FP2/FP2SH 根据与COM.端口相连的外部设备的情况, 在系统寄存器413中设置发送格式. 缺省设置与FP10SH相同. 在设置了起始符有效的情况下, 从STX开始到指定的结束符为止的接收数据, 被认为是一帧数据. 2) 设置波特率 用于FP10SH 波特率(传输速度)的初始设置为9600bps. 应该根据与COM.端口相连的外部设备的情况设置传输速度. 利用下排的模式操作开关进行设置. 操作模式开关(使用下排DIP开关) 3-333 ONONON-----1200bps ONONOFF-----2400bps ONOFFON-----4800bps ONOFFOFF-----9600bps OFFONON-----19200bps OFFONOFF-----38400bps OFFOFFON-----57600bps OFFOFFOFF-----115200bps 传输 速率 SW8SW7SW6SW5SW4SW3SW2SW1 设置 功能 用于FP2/FP2SH 根据与COM.端口相连的外部设备的情况, 在系统寄存器414中设置”COM.端口速率”. 缺省设置为19200bps. 3) 设置COM.端口的用途 系统寄存器412中设置串行传输. 执行F144(TRNS)指令可以切换“通用通信方式”和“计算机链接方式”.. 4) 设置接收缓冲区:系统寄存器417和418 所有的数据寄存器都被设置为接收缓冲区. 需要改变接收缓冲区时, 应在系统寄存器417中设置 缓冲区的起始地址, 在系统寄存器418中设置缓冲区大小(以字为单位, 大1024字) 接收缓冲区的构成如下: 接收到的 字节数 存放接收 到数据的 区域 在系统寄存器418中 设置接收缓冲区的字数 在系统寄存器417中 设置接收缓冲区的起始 3-334 接收过程的编程和操作 数据从COM.端口连接的外部设备传送进来, 存储在作为接收缓冲区的数据寄存器中. 接收缓冲区 接收到的字节数存放在此处 接收缓冲区. (编号表示存放顺序) 每次接收到数据后, 接收到数据的字节数被存储在接收缓冲区的起始字中. 该初始值是“0”. 接收到的数据从低位字节开始被顺序存储在从接收缓冲区第2个字开始的数据区中. 字 (地址) 示例: 从外部设备通过COM1端口接收8个字节A,B,C,D,E,F,G,H的字符数据 本例中使用DT200到DT204作为接收缓冲区. 系统寄存器的设置如下: - 系统寄存器417: K200 - 系统寄存器418: K5 接收结束后的接收缓冲区内容 存放接收到的字节数 从低字节开始存放接收到的数据. 3-335 操作 接收完成标志位(R9038)为OFF的状态下, 从外部设备发送数据时进行以下操作. (在RUN运行后第一个扫描周期内R9038变成OFF, “0”被设置在由系统寄存器中指定的接收缓冲区 的起始字中) 接收到数据 接收到的字节数 R9038 执行条件 (触发器)R0 不能接收 2) 当接收到结束符后, 接收完成标志位(R9038/R9048)变成ON. 禁止接收后来的数据. 3) F144(TRNS)指令被执行, 接受完成标志位(R9038)变成OFF, 接收的字节总数被清零, 后来的数据从低位字节顺序存储. 1) 接收到的数据被顺序地从接收缓冲区的第二个字的低位字节开始存放。 起始符和结束符不被存储。 每接收到一个字节的数据, 接收缓冲区的起始字中的数值增1。 开始接收 重新开始接收 可以接收 可以接收 执行F144(TRNS) 注意: · 为了确认数据的接收, 请参考以下步骤. 1) 接收数据 2) 接收完成(R9038:ON, 接收被禁止) 3) 处理接收到的数据 4) 执行F144(TRNS)指令(R9038:OFF, 允许继续接收) 5) 接收后续的数据 · 在一个扫描周期中, 接收完成标志位(R9038)有可能改变. 编程 当从外部通信设备接收数据完成时,接收完成标志(R9038)变为ON. 之后的数据不再接收. 为了接收后来的数据,必须执行F144(TRNS)指令使接收完成标志位(R9038)变为OFF, 同时将 接收字节总数清零. 只用于接收后清除缓冲区和接收完成标志时,指定K0. 当以指定的字节数发送数据时, R9038也能变为OFF. 数据发送 操作数 程序示例 概述 通过网络链接模块,向其他的PLC或计算机站点发送指定的数据. F145(SEND) P145(PSEND) 10 11 ST R 0 F145 (SEND) DT 10 DT 20 DT 0 K 100 存储控制数据的起始16bit地址S1 地址 指令 梯形图程序 布尔形式 存储源数据的起始16bit地址(数据位于本站)S2 触发器 WX WY WR WL SV EV DT LD FL I0~IC ID K H S1 A A A A A A A A A N/A N/A N/A N/A A S2 A A A A A A A A A N/A N/A N/A N/A A D N/A A A A A A A A A N/A N/A N/A N/A N/A N N/A N/A N/A N/A N/A N/A N/A N/A N/A N/A N/A A A A 索引变址 常数 操作数 定时器/计数器 索引寄存器继电器 数据寄存器 示例说明 ①例 发送字单位 当控制字如下时: A: 可以使用 N/A: 不可使用 3-336 远程站点中存储传输数据的地址类型.设备编号指定为0.(目标数据位于另一站中)D D中存储被传输数据的起始16bit地址(目标数据位于另一站中)N DT10(S1) = H0005 (=K5) DT11(S1+1) = H010A 当执行条件(触发器)R0变为ON时, 从DT20到DT24的5个字的数据被传送到站号No.10中的DT100~DT104, 该站与路径1相连. 字单位 5字 站号No.10路径No.1 FP2/FP2SH/FP3/FP10SH 适用机型 描述 将由S2指定的本站中的数据发送到由D和N指定的、通过MEWNET-W/MEWNET-P或MEWNET-H相连的远程站. 远程站点(路径和站号)、传输单位(位单位或字单位)、传输方式和其他参数由控制数据S1指定. 3-337 ②例 发送位单位 当控制字如下时: DT10(S1) = H850D DT11(S1+1) = H010A 当执行条件(触发器)R0变为ON时, 从DT20的bit No.13的ON/OFF信息被传送到站号No.10中的DT100 的bit No.5, 该站与路径1相连. 位单位 本站的No.13位 站号No.10路径No.1 远程站的No.5位 如果网络只是由FP2、FP2SH和FP10SH组成, 则可以通过指定站号[FF](HFF), 向连接在同一网络中的所有 站点发送相同的内容. 如果网络中连接有FP3, 则不能使用指定HFF进行全局发送. 如果使用FP2、FP2SH或FP10SH的COM.端口进行通用通信, 应使用F144(TRNS)指令替代本指令. 请参阅F144(TRNS)指令的有关说明. S2 D, N 本站 远程站 链接单元 CPU单元 远程站由S1指定 执行F145(SEND) 3-338 指定不同项目 控制数据(S1) 指定远程站 指定远程站的站号和路径. 相同网络中的PLC远程站与不同网络层次中的PLC的设置方法不同. 指定传输单位和传输方式 如果以字单位发送, 则指定数据量; 如果以位单位发送, 则指定目标的位位置. 示例: D: DT0, N: K100 ↓ DT100 指定本站的存储区(S2) 指定用于存放发送数据的本站存储区. 指定远程站的存储区(D和N) 指定用于存放发送数据的远程站存储区. 由类型D和地址N组合指定. 标志位状态 · 错误标志(R9007) 当以下情况时变为ON并且保持 · 错误标志(R9008) 当以下情况时瞬间变为ON -控制数据超出指定范围 -远程站不存在 -以字单位传输时, 由S1指定的数据量使得S2或D的区域超出范围 向在同一网络中的PLC传输 指定控制数据(S1+1,S1) 控制数据应以H常数指定. 传输单位、传输方式和其他参数由S1指定, 而远程站由S2指定. 远程站 的指定 传输单位和 方式的指定 S1+1 S1 3-339 (1) 指定字单位传输 在字单位传输的情况下, 从由S2指定的本站存储区开始的、指定字数的数据被存放在D和N指定的目标站 中的存储区. 在只有MEWNET-H的网络中, 一次可以 大传输1020字. 如果使用MEWNET-P或MEWNET-W网络, 一次 大可以传输16字. 示例: 如果发送10个字, 则应在S1中指定K10(H000A). S1: 15 11 7 3 0 指定H0 传输字数: H001~H3FC (1~1020) (2) 指定位单位传输 在位单位传输的情况下, 从由S2指定的本站存储区的指定位的信息被存放在D和N指定的目标站中的指定 的位. 示例: 如果将本站的存储区的位15的数据发送到目标站存储区的位0, 则应在S1中指H800F. S1: 15 11 7 3 0 指定H8 目标站 的位№ H0~HF (0~15) 指定H0 本站的 位№ H0~HF (0~15) (3) 指定目标远程站(字单位/位单位通用) S1+1: 15 11 7 3 0 指定H0 路径№ H1~H8 (1~8) 站号 H01~H40 (1~64) 站号应以16进制指定: MEWNET-W的情况: H01~H20 (1~32) MEWNET-P的情况: H01~H3F (1~63) MEWNET-H的情况: H01~H40 (1~64) 3-340 向不同层的网络中的PLC传输 什么是阶层链接 阶层链接是指将安装在同一母板中的2台链接单元作为中继站, 在处于不同网络的CPU之间进行通信 的功能. 示例: 与深度1的CPU单元进行通信. 采用此方法, 多可以与深度3进行通信. 深度0 深度1 本站 中继站 远程站 远程站单元 中继站目标单元 中继站源单元 注意: 在使用MEWNET-P和MEWNET-H的情况下, 只能与深一级的网络进行中继通信. 3-341 示例: 与深度3的CPU单元进行通信.(由CPU1向CPU5发送) 注) CPUP1~CPU5的编号是为表示阶层链接的中继而采用的临时性标注. 深度0 深度1 深度2 深度3 指定控制数据(S1) 控制数据应以H常数指定. 传输站、传输方式和其他相关参数由S1指定, 远程站由S1+1指定, 后续参数(中继源站、中继目标站和 通信目标站, 需要(深度+3)个字. 示例: 当指定的远程站处于深度3时的控制数据 CPU1 CPU2 CPU3 CPU4 CPU5H00远程站 中继目标中继源 中继目标中继源 中继目标中继源 深度(H03)本站 指定传输站和方式[S1] [S1+1] [S1+2] [S1+3] [S1+4] [S1+5] : 同一网络 : 同一母板 中继源站由网络中的站号指定, 中继目标站由母板中的路径号指定. 3-342 (1) 指定字单位传输 在字单位传输的情况下, 从由S2指定的本站存储区开始的、指定字数的数据被存放在D和N指定的目标站 中的存储区. 在只有MEWNET-H的网络中, 一次可以 大传输1020字. 如果使用MEWNET-P或MEWNET-W网络, 一次 大可以传输16字. 示例: 如果发送10个字, 则应在S1中指定K10(H000A). S1: 15 11 7 3 0 指定H0 传输字数: H001~H3FC (1~1020) (2) 指定位单位传输 在位单位传输的情况下, 从由S2指定的本站存储区的指定位的信息被存放在D和N指定的目标站中的指定 的位. 示例: 如果将本站的存储区的位15的数据发送到远程站存储区的位0, 则应在S1中指H800F. S1: 15 11 7 3 0 指定H8 目标站 的位№ H0~HF (0~15) 指定H0 本站的 位№ H0~HF (0~15) (3) 指定目标远程站(字单位/位单位通用) S1+1: 15 11 7 3 0 指定H8 本站的 路径№ H1~H8 (1~8) 远程站 的深度 H01~H03 (1~3) ① 指定路径№和深度 3-343 示例: 在使用本指令的概要说明中的示例的情况下,本站(CPU1)中从DT20到DT24的5个字的数据 被发送到CPU5中DT100及其后的的存储区中. 如下图所示: 连接示意图 S1+2: 15 11 7 3 0 深度1的中继 目标站的路径№ H01~H08 (1~8) ② 指定中继站 [S1+1]只用于指定深度的内容, [S1+3]用于深度2、[S1+4]用于深度3的同样项目. 深度1的中继 源站的站№ H01~H40 (1~64) S1+n: 15 11 7 3 0 指定H00 ③ 指定远程站 本项设置应该紧随中继站设置之后进行. 远程站的 站№ H01~H40 (1~64) (n=深度+2) 编程时的注意事项 在本示例中, 从DT10开始的控制数据(深度3→6字)应按如下设置. 发送5个字的数据→DT10=H005 3-344 □ : 深度 路径 路径 路径 路径 在同一时刻不能同时执行多个F145(SEND)指令和F146(RECV)指令. 应编制在MEWNET收发允许标志(R9030)为ON的情况下执行的程序. 0: 禁止执行(不执行F145(SEND)/F146(RECV)) 1: 允许执行 R9030 F145(SEND)指令只提出发送请求, 实际的处理是在执行ED指令时进行的.可以使用MEWNET收发 完成标志(R9031)确认发送是否完成. 在异常结束的情况下(R9031:ON), 存放异常内容(错误代码) DT9039 (DT90039) 0: 正常结束 1: 异常结束 (错误代码存放在DT9039中)R9031 错误代码的内容请参阅各链接单元的相关技术手册. 如果错误代码为H71~H73, 则表示产生了 通信超时错误. 利用系统寄存器32可以改变超时时间设置, 范围为10.0毫秒~81.9秒(以10毫秒 为单位). 缺省值: FP3为2秒, FP2/FP2SH/FP10SH为10秒. 超时: 等待传输应答H71 超时: 等待清空传输缓冲区H72 超时: 等待响应H73 描述错误代码(HEX) 如果网络中存在FP2SH或FP10SH以外的CPU, 则不能使用全局传输(使用站号HFF发送). 当目标是特殊内部继电器(R9000~)或特殊数据寄存器(DT9000~)时, 不能使用F145(SEND)指令. F145(SEND)指令的附加信息 3-345 使用数据传输指令发送特殊数据寄存器或特殊内部继电器 不能使用F145(SEND)指令发送特殊数据寄存器和特殊内部继电器的内容. 使用如下的程序发送这些类型的数据. 当目标是FP2、FP2SH或FP10SH时, 不能指定DT9*** 发送FP3的特殊数据寄存器(源发送指令:FP3) 当目标是FP3时, 不能指定DT9*** 发送FP2,FP2SH或FP10SH的特殊数据寄存器(源发送指令:FP2/FP2SH/FP10SH) 发送特殊内部继电器(源发送指令:FP2/FP2SH/FP3/FP10SH) 数据接收 (MEWNET链接) 操作数 程序示例 概述 通过网络链接模块,接收来自其他站点的数据 F146(RECV) P146(PRECV) 10 11 ST R 0 F146 (RECV) DT 10 DT 0 K 100 DT 50 存储控制数据的起始16bit地址S1 地址 指令 梯形图程序 布尔形式 存储源数据的起始16bit地址.设备编号指定为0.(数据位于其他站)S2 触发器 WX WY WR WL SV EV DT LD FL I0~IC ID K H S1 A A A A A A A A A N/A N/A N/A N/A A S2 A A A A A A A A A N/A N/A N/A N/A N/A D N/A N/A N/A N/A N/A N/A N/A N/A N/A N/A N/A A A A N N/A A A A A A A A A N/A N/A N/A N/A A 索引变址 常数 操作数 定时器/计数器 索引寄存器继电器 数据寄存器 示例说明 ①例 接收字单位 当控制字如下时: A: 可以使用 N/A: 不可使用 3-346 存储传输数据的地址类型.(源数据位于另一站中)N 存储接收到数据的起始16bit地址(目标数据区位于本站)D DT10(S1) = H0005 (=K5) DT11(S1+1) = H010A 当执行条件(触发器)R0变为ON时, 与路径1相连的到站号No.10中DT100~DT104的数据被发送到本站 的从DT50到DT54的5个字的数据中. 字单位 5字 站号No.10路径No.1 FP2/FP2SH/FP3/FP10SH 适用机型 描述 读取由S2和N指定的、通过MEWNET-W/MEWNET-P或MEWNET-H相连的远程站中的数据, 并且存放到由D 指定的本站的区域. 远程站点(路径和站号)、传输单位(位单位或字单位)、传输方式和其他参数由控制数据S1指定. 3-347 ②例 接收位单位 当控制字如下时: DT10(S1) = H850D DT11(S1+1) = H010A 当执行条件(触发器)R0变为ON时,与路径1相连的站号No.10中的DT100的bit No.13的ON/OFF信息被 发送到DT50的bit No.5. 位单位 远程站的No.13位 站号No.10路径No.1 本站的No.5位 如果使用FP2、FP2SH或FP10SH的COM.端口进行通用通信, 应使用F144(TRNS)指令替代本指令. 请参阅F144(TRNS)指令的有关说明. D S2, N 本站 远程站 链接单元 CPU单元 远程站由S1指定 (接收请求) 数据 3-348 指定不同项目 控制数据(S1) 指定远程站 指定远程站的站号和路径. 相同网络中的PLC远程站与不同网络层次中的PLC的设置方法不同. 指定传输单位和传输方式 如果以字单位接收, 则指定数据量; 如果以位单位接收, 则指定目标的位位置. 示例: S2: DT10, N: K100 ↓ DT100 指定本站的存储区(S2)和(N) 指定用于存放发送数据的远程站存储区. 由类型S2和地址N组合指定. 标志位状态 · 错误标志(R9007) 当以下情况时变为ON并且保持 · 错误标志(R9008) 当以下情况时瞬间变为ON -控制数据超出指定范围 -远程站不存在 -以字单位传输时, 由S1指定的数据量使得S2或D的区域超出范围 接收同一网络中PLC的传输数据 指定控制数据(S1+1,S1) 控制数据应以H常数指定. 传输单位、传输方式和其他参数由S1指定, 而远程站由S2指定. 远程站 的指定 传输单位和 方式的指定 S1+1 S1 指定本站的存储区(D) 指定用于存放发自远程站数据的本站存储区. 3-349 (1) 指定字单位接收 在字单位接收的情况下, 从由S2和N指定的远程站存储区开始的、指定字数的数据被发送, 并且存储在 从D开始的本站存储区. 如果只使用MEWNET-H网络, 则一次可以 大接收1020字. 如果使用MEWNET-P 或MEWNET-W网络, 一次 大可以接收16字. 示例: 如果接收10个字, 则应在S1中指定K10(H000A). S1: 15 11 7 3 0 指定H0 传输字数: H001~H3FC (1~1020) (2) 指定位单位接收 在位单位传输的情况下, 从由S2和N指定的远程站存储区的指定位的信息被存放在D指定的本站中的 指定的位. 示例: 如果将远程站的存储区的位0的数据发送到本站存储区的位15, 则应在S1中指H8F00. S1: 15 11 7 3 0 指定H8 本站的 位№ H0~HF (0~15) 指定H0 远程站 的位№ H0~HF (0~15) (3) 指定目标远程站(字单位/位单位通用) S1+1: 15 11 7 3 0 指定H0 路径№ H1~H8 (1~8) 站号 H01~H40 (1~64) 站号应以16进制指定: MEWNET-W的情况: H01~H20 (1~32) MEWNET-P的情况: H01~H3F (1~63) MEWNET-H的情况: H01~H40 (1~64) 3-350 向不同层的网络中的PLC传输 什么是阶层链接 阶层链接是指将安装在同一母板中的2台链接单元作为中继站, 在处于不同网络的CPU之间进行通信 的功能. 示例: 与深度1的CPU单元进行通信. 采用此方法, 多可以与深度3进行通信. 深度0 深度1 本站 中继站 远程站 远程站单元 中继站目标单元 中继站源单元 注意: 在使用MEWNET-P和MEWNET-H的情况下, 只能与深一级的网络进行中继通信. 3-351 示例: 与深度3的CPU单元进行通信.(从CPU5接收到CPU1) 注) CPUP1~CPU5的编号是为表示阶层链接的中继而采用的临时性标注. 深度0 深度1 深度2 深度3 指定控制数据(S1) 控制数据应以H常数指定. 传输站、传输方式和其他相关参数由S1指定, 远程站由S1+1指定, 后续参数(中继源站、中继目标站和 通信目标站, 需要(深度+3)个字. 示例: 当指定的远程站处于深度3时的控制数据 CPU1 CPU2 CPU3 CPU4 CPU5H00远程站 中继目标中继源 中继目标中继源 中继目标中继源 深度(H03)本站 指定传输站和方式[S1] [S1+1] [S1+2] [S1+3] [S1+4] [S1+5] : 同一网络 : 同一母板 中继源站由网络中的站号指定, 中继目标站由母板中的路径号指定. 3-352 (1) 指定字单位传输 在字单位接收的情况下, 从由S2和N指定的远程站存储区开始的、指定字数的数据被存放在本站的从D 开始的存储区. 在只有MEWNET-H的网络中, 一次可以 大接收1020字. 如果使用MEWNET-P或MEWNET-W网络, 一次 大可以接收16字. 示例: 如果接收10个字, 则应在S1中指定K10(H000A). S1: 15 11 7 3 0 指定H0 传输字数: H001~H3FC (1~1020) (2) 指定位单位接收 在位单位传输的情况下, 从由S2和N指定的远程站存储区的指定位的信息被存放在D指定的本站中的指定 的位. 示例: 如果将远程站的存储区的位0的数据发送到本站存储区的位15,则应在S1中指H8F00. S1: 15 11 7 3 0 指定H8 目标站 的位№ H0~HF (0~15) 指定H0 远程站 的位№ H0~HF (0~15) (3) 指定目标远程站(字单位/位单位通用) S1+1: 15 11 7 3 0 指定H8 本站的 路径№ H1~H8 (1~8) 远程站 的深度 H01~H03 (1~3) ① 指定路径№和深度 3-353 示例: 在使用本指令的概要说明中的示例的情况下,CPU(CPU5)中DT100~DT104的数据被接收到 本站(CPU1)的DT50~DT54. 如下图所示: 连接示意图 S1+2: 15 11 7 3 0 深度1的中继 目标站的路径№ H01~H08 (1~8) ② 指定中继站 [S1+1]只用于指定深度的内容, [S1+3]用于深度2、[S1+4]用于深度3的同样项目. 深度1的中继 源站的站№ H01~H40 (1~64) S1+n: 15 11 7 3 0 指定H00 ③ 指定远程站 本项设置应该紧随中继站设置之后进行. 远程站的 站№ H01~H40 (1~64) (n=深度+2) 编程时的注意事项 在本示例中, 从DT10开始的控制数据(深度3→6字)应按如下设置. 接收5个字的数据→DT10=H005 3-354 □ : 深度 路径 路径 路径 路径 在同一时刻不能同时执行多个F145(SEND)指令和F146(RECV)指令. 应编制在MEWNET收发允许标志(R9030)为ON的情况下执行的程序. 0: 禁止执行(不执行F145(SEND)/F146(RECV)) 1: 允许执行 R9030 F146(RECV)指令只提出接收请求, 实际的处理是在执行ED指令时进行的.可以使用MEWNET收发 完成标志(R9031)确认接收是否完成. 在异常结束的情况下(R9031:ON), 存放异常内容(错误代码) DT9039 (DT90039) 0: 正常结束 1: 异常结束 (错误代码存放在DT9039中)R9031 错误代码的内容请参阅各链接单元的相关技术手册. 如果错误代码为H71~H73, 则表示产生了 通信超时错误. 利用系统寄存器32可以改变超时时间设置, 范围为10.0毫秒~81.9秒(以10毫秒 为单位). 缺省值: FP3为2秒, FP2/FP2SH/FP10SH为10秒. 超时: 等待传输应答H71 超时: 等待清空传输缓冲区H72 超时: 等待响应H73 描述错误代码(HEX) 当目标是特殊内部继电器(R9000~)或特殊数据寄存器(DT9000~)时, 不能使用F146(RECV)指令. F146(RECV)指令的附加信息 3-355 使用数据传输指令接收特殊数据寄存器或特殊内部继电器 不能使用F146(RECV)指令发送特殊数据寄存器和特殊内部继电器的内容. 使用如下的程序发送这些类型的数据. 当目标是FP2、FP2SH或FP10SH时, 不能指定DT9*** 接收特殊数据寄存器到FP3的DT0(源发送指令:FP3) 当目标是FP3时, 不能指定DT9*** 接收特殊数据寄存器到FP2,FP2SH或FP10SH(源发送指令:FP2/FP2SH/FP10SH) 接收特殊内部继电器(源发送指令:FP2/FP2SH/FP3/FP10SH) F147(PR) 打印输出 概述 程序示例 操作数 将ASCII字符输出到打印机(只用于晶体管输出型). 3-356 A: 可以使用 N/A: 不可使用 10 11 12 ST R 10 DF OR R 9033 F147 (PR) DT 0 WY 0 触发器 存放打印数据(12字节ASCII码)的起始16bit地址(源数据)S 打印输出标志 用于输出ASCII码的外部输出字继电器(目标)D WX WY WR WL(*1) SV EV DT LD(*1) FL(*2) IX IY K H S A A A A A A A A A N/A N/A N/A N/A N/A n N/A A N/A N/A N/A N/A N/A N/A N/A N/A N/A N/A N/A N/A 操作数 索引变址 定时器/计数器 索引寄存器 常数继电器 数据寄存器 (*1)此处不适用于FP-M、FP0、FP-e和FP1。 (*2)此处不适用于FP-M、FP0、FP-e、FPΣ和FP1。 FP-e/FP0/FP∑/FP1 C24/C40 C56/C72/ FP-M/FP2/FP2SH/FP3/FP10SH 适用机型 布尔形式 指令地址 梯形图程序 示例说明 当执行条件(触发器)R10为ON时,通过外部数据字继电器WY0, 输出存放在数据寄存器DT0~DT5 的ASCII码。 将存放在由S指定的6个字的存储区中的12个字符的ASCII码输出由D指定的外部字继电器WY。 描述 3-357 如果指定的输出与商用打印机相连, 则打印输出相关的ASCII码. 只有WY的0~8位用于实际的打印输出. 数据寄存器 ASCII码 HEX ASCII字符 源数据: 12个字符的ASCII码 A,B,C,D,E,F,G,H,I,J 打印机控制数据 ASCII码 目标 Y0~YF: 用于打印机数据信号 (Y0~YF对应于打印机的DATA1~DATA8) Y8:打印机 选通信号 Y9~YF:不使用 S S+1 S+2 S+3 S+4 S+5 15 0 → WY0 D1~D8 STROBE Y0~YF: 用于打印机数据信号 (Y0~YF对应于打印机的DATA1~DATA8) Y8:打印机 选通信号 Y9~YF:不使用 从存储区的低字节开始打印输出ASCII码. 必须在 后设置控制代码(LF+CR)用于打印机. 输出一个字符需要3个扫描周期,所以从开始打印到12个字符输出完毕同需要37个扫描周期. (请参阅“时序图”) 标志位状态 3-358 编程时注意事项 在某一时刻不能同时执行多个F147(PR)指令.编程时应利用打印输出标志(R9033), 防止在执行 F147(PR)指令期间重复执行. 可以利用ASCII转换指令[F95(ASC)]将字符串常数转换为ASCII码. 必须使用晶体管输出的单元或板卡. 执行本指令时,由D指定的WY区中的Y_9~Y_F被置为0(OFF). 接线示意图 - 存放ASCII码的区域结尾超出范围 - 正在执行某一F147(PR)时, 另外F147(PR)指令的执行触发器也变为ON. · 错误标志(R9007) 当以下情况时变为ON并且保持 · 错误标志(R9008) 当以下情况时瞬间变为ON 打印机 (核心接口) 晶体管输出型 (输出: 9点或更多) 示例: A,B,C,D,E,F,G,H,I和J组成的10个字符的ASCII码 数据设置 数据寄存器 ASCII码 HEX ASCII字符 打印机控制数据 ASCII码 3-359 时序图 当使用只有8点输出的型号的PLC时, 应按以下图示接线, 并且按示例程序编程, 从Y7输出使能信号. 使用8点输出型PLC R9033 扫描周期序号 执行F147(PR)指令 ASCII码 16进制 使能信号(Y8) 输出单元 信号 接线示意图 打印机 (核心接口) 晶体管输出型 (输出: 8点) 程序示例 从Y7输出使能 (STROBE)信号. 自诊断错误设置 操作数 程序示例 概述 根据任意设置的检知条件,检测自诊断错误。 对于FP-M/FP0/FP1/FP-e/FPΣ, P型高级指令不适用。 F148(ERR) P148(PERR) 10 11 ST R 0 F148 (ERR) K 100 ST R 0 F148 (ERR) K 0 地址 指令 梯形图程序 布尔形式 自诊断错误代码编号 范围: 0和100~299n 触发器 示例说明 当执行条件(触发器)R0为ON时,设置自诊断错误代码100. 对于FP0/FPΣ, 控制单元上的ERROR (ERROR/ALARM)LED灯闪烁, 而对于FP1/FP-M/FP2/FP2SH/FP3/FP10SH, CPU单元上的ERROR指示LED常亮, 运算停止. (如果需要某种情况设置自诊断错误100, 应在程序中使输入R0变为ON.) 当执行条件(触发器)R1为ON时, 错误代码43及更高编号的自诊断错误被清除. A: 可以使用 N/A: 不可使用 3-360 WX WY WR WL SV EV DT LD FL IX IY K H n N/A N/A N/A N/A N/A N/A N/A N/A N/A N/A N/A A A N/A 索引变址 常数 操作数 定时器/计数器 索引寄存器继电器 数据寄存器 触发器 自诊断错误设置 自诊断错误清除 20 21 ... FP-e/FP0/FP∑/FP1 C24/C40 C56/C72/ FP-M/FP2/FP2SH/FP3/FP10SH 适用机型 ·错误标志(R9007):在以下情况时为ON并保持ON。 ·错误标志(R9008):在以下情况时瞬间为ON。 - n指定的数值超出”0或K100~K299”的范围 标志位状态 描述 将由n指定的错误代码存放在特殊数据寄存器DT9000或DT90000中,同时将自诊断错误标志(R9000) 变为ON. 并且,对于FP0/FPΣ, 控制单元上的ERROR(ERROR/ALARM)LED灯闪烁, 而对于FP1/FP-M/ FP2/FP2SH/FP3/FP10SH, CPU单元上的ERROR指示LED常亮. 指定数值”n”用于确定执行本指令后是否停止运算或继续. 在n的设置数值为K200~K299的情况下, 如果同时处理多个F148(ERR)指令, 则从低编号开始处理. 如果n设置为0并且指令了F148(ERR)指令,则错误代码43及更高编号的自诊断错误被清除.(适用机型 FP-M/FP1控制单元Ver.2.7或更高, FP3 CPU Ver.4.4或更高) - 对于FP-0/FPΣ, ERROR/ALARM LED: 熄灭 - 对于FP-M/FP1/FP2/FP2SH/FP3/FP10SH, ERROR LED: 熄灭 - R9000, R9005, R9006, R9007, R9008: OFF - DT9000, DT9017, DT9018: 清0 DT90000, DT90017, DT90018: 清0 指定相同错误代码的F148(ERR)指令可以在程序中多次重复记述. 3-361 自诊断错误的确认 使用通常的方法确认自诊断错误 继续运算K200~K299 停止运算K100~K199 发生错误时的操作n的设置 DT90017DT9017 DT90018DT9018 DT90000DT9000 FP0-T32/FPΣ/FP2/FP2SH/FP10SH FP0-C10,C14,C16,C32 FP1/FP-M/FP3 显示信息 操作数 程序示例 概述 在编程工具上显示指定的字符串常数信息. 对于FP-M/FP0/FP1/FP-e/FPΣ, P型高级指令不适用。 F149(ERR) P149(PERR) 信息的字符串内容S 示例说明 当执行条件(触发器)R10为ON时,在编程工具上显示”TEST PROGRAM”信息. A: 可以使用 N/A: 不可使用 3-362 WX WY WR WL SV EV DT LD FL IX IY K H M n N/A N/A N/A N/A N/A N/A N/A N/A N/A N/A N/A N/A N/A A N/A 索引变址 常数 操作数 定时器/计数器 索引寄存器继电器 数据寄存器 10 11 ST R 0 F149 (MSG) M TESTPROGRAM 地址 指令 梯形图程序 布尔形式 触发器 描述 本指令用于在编程工具上显示由S指定的文字信息. 字符串常数(M)只能通过编程工具软件输入. 当执行F149(MSG)指令时,信息标志(R9026)变为ON,同时由S指定的信息被设置到特殊数据寄存器 DT9030~DT9035/DT90030~DT90035中. DT90030~DT90035FP0-T32/FPΣ/ FP2/FP2SH/FP10SH DT9030~9035FP0-C10,C14,C16,C32/ FP1/FP-M/FP3 特殊数据寄存器机型 一旦显示了信息,即使再次执行F149(MSG)指令也不能改变这些信息. 必须利用编程工具软件,在[显示PLC信息]对话框中点击[取消]按钮,才能清除特殊数据寄存器中 的信息. FP-e/FP0/FP∑/FP1 C24/C40 C56/C72/ FP-M/FP2/FP2SH/FP3/FP10SH 适用机型 指定槽号 目标智能模块的槽号会根据其安插的位置自动分配. 3-363 对于FPΣ 扩展单元 智能单元 指定编号 目标智能模块的槽号会根据其安插的位置自动分配. 插槽编号取决与底板的顺序. 使用7-、9-、12-槽型的底板时,其设置方法与14-槽型的相同. 对于FP2和FP2SH CPU侧(14槽型底板) 指定编号(16进制数) 14槽(底板插槽数量) 16槽(被计数的插槽数量) 14槽(底板插槽数量) 16槽(被计数的插槽数量) 扩展侧(14槽型底板) 3-364 目标智能模块的槽号会根据其安插的位置自动分配. 插槽编号取决与底板的顺序. 使用3-、5-槽型的底板时,其设置方法与8-槽型的相同. 对于FP3和FP10SH 指定编号(16进制数) 扩展 扩展 扩展 F150(READ) P150(PREAD) 读取数据 概述 程序示例 操作数 从智能单元的共享内存中读取数据。 10 11 ST R 10 F150 (READ) H 3 K 19 K 4 DT 0 触发器 S2 用于指定插槽№或Bank №的16bit数据S1 用于指定智能单元中共享内存的读取起始地址的16bit数据(源数据地址) 3-365 A: 可以使用 N/A: 不可使用 索引寄存器 WX WY WR WL SV EV DT LD FL(*1) I K H S1 N/A N/A N/A N/A N/A N/A N/A N/A N/A N/A A A A S2 N/A N/A N/A N/A N/A N/A N/A N/A N/A N/A A A A n N/A N/A N/A N/A N/A N/A N/A N/A N/A N/A A A A D N/A A A A A A A A A N/A N/A N/A A 继电器 数据寄存器 索引变址 常数 操作数 定时器计数器 (*1)FPΣ不能使用 D 用于指定读取数据字数的16bit数据n 用于存放所读取数据的起始地址(目标数据地址) FPΣ/FP2/FP2SH/FP3/FP10SH 适用机型 梯形图程序 布尔形式 指令地址 示例说明 当触发器R10变为ON时, 从智能单元模块(位于插槽3)中, 读取存放在共享内存从K19到K22的4个字 的数据,并将这些数据存储到CPU的数据寄存器DT0~DT3. 标志状态 描述 将由S1指定的智能单元(智能板卡)的共享内存中的数据、从S2指定的地址开始读取n个字的内容 并存放到CPU中D指定的区域. · 错误标志(R9007) 当以下情况时变为ON并且保持 · 错误标志(R9008) 当以下情况时瞬间变为ON - S1超出指定范围 - 使用索引寄存器指定数据区超出范围 - 读取的数据区域超出D 3-366 智能单元 CPU (插槽№) 4字 指定不同的项目 指定插槽№或Bank № (S1) 指定智能单元安插的插槽. 如果存储区存在bank, 则需要按照bank进行指定. 指定智能单元中共享内存的读取起始地址(S2) 指定智能单元安插的插槽. 如果存储区存在bank, 则需要按照bank进行指定. 指定读取的字数 使用K常数. 需要读入10个字时, 指定”K10”. 指定S1 指定安插目标智能单元模块的插槽编号. 参考: 有Bank的智能单元 3-367 无Bank的智能单元 高位字节 低位字节 H00 插槽号: H00~H1F S1 指定安插目标智能单元模块的插槽编号(H常数). 有Bank的智能单元 高位字节 低位字节 Bank 编号: H00~HFF 插槽号: H00~H1F S1 AFPG201FPΣ扩展存储单元 AFP32091 AFP32092 FP3扩展存储单元 定货号名称 F151(WRT) P151(PWRT) 写入数据 概述 程序示例 操作数 向智能单元的共享内存写入数据。 10 11 ST R 10 F151 (WRT) H 0 DT 10 K 5 K 0 触发器 S2 用于指定插槽№或Bank №的16bit数据S1 用于存放写入数据的起始16bit地址(源数据地址) 3-368 A: 可以使用 N/A: 不可使用 索引寄存器 WX WY WR WL SV EV DT LD FL(*1) I K H S1 N/A N/A N/A N/A N/A N/A N/A N/A N/A N/A A A A S2 A A A A A A A A A N/A N/A N/A A n N/A N/A N/A N/A N/A N/A N/A N/A N/A N/A A A A D N/A N/A N/A N/A N/A N/A N/A N/A N/A N/A A A A 操作数 定时器计数器继电器 数据寄存器 索引变址 常数 (*1)FPΣ不能使用 D 用于指定写入数据的字数的16bit数据n 用于指定共享内存写入的起始16bit地址(目标数据地址) FPΣ/FP2/FP2SH/FP3/FP10SH 适用机型 布尔形式 指令地址 梯形图程序 示例说明 当触发器R10变为ON时, 将存储在CPU的DT10~DT14的5个字的数据写入智能单元模块(位于插槽0) 中从K0到K4的共享内存. 标志状态 描述 向由S1指定的智能单元(智能板卡)的、从D指定的地址开始的共享内存写入n个字的数据,源数据从 S2开始存放. · 错误标志(R9007) 当以下情况时变为ON并且保持 · 错误标志(R9008) 当以下情况时瞬间变为ON - S1超出指定范围 - 使用索引寄存器指定数据区超出范围 - 写入的数据区域超出S2 3-369 智能单元CPU (插槽№) 5字 指定不同的项目 指定插槽№或Bank № (S1) 指定智能单元安插的插槽. 如果存储区存在bank, 则需要按照bank进行指定. 指定写入的字数 使用K常数. 需要读入10个字时, 指定”K10”. 指定智能单元中共享内存的写入起始地址(D) 根据不同的智能单元共享内存分配表进行指定. 指定地址2时, 以”K2”指定. 指定S1 指定安插目标智能单元模块的插槽编号. 参考: 有Bank的智能单元 3-370 无Bank的智能单元 高位字节 低位字节 H00 插槽号: H00~H1F S1 指定安插目标智能单元模块的插槽编号(H常数).和Bank编号(H常数) 有Bank的智能单元 高位字节 低位字节 Bank 编号: H00~HFF 插槽号: H00~H1F S1 AFPG201FPΣ扩展存储单元 AFP32091 AFP32092 FP3扩展存储单元 定货号名称 F152(RMRD) P152(PRMRD) 读取MEWNET-F子站数据 概述 程序示例 操作数 从MEWNET-F远程子站的智能单元的共享内存中读取数据。 10 11 ST R 10 F152 (RMRD) DT 0 K 0 K 10 DT 10 触发器 S2 存放控制字(2字)的低位16bit地址S1 用于指定智能单元中共享内存的读取起始地址的16bit数据(源数据地址) 3-371 A: 可以使用 N/A: 不可使用 WX WY WR WL SV EV DT LD FL IX(*1) IY(*2) K H S1 A A A A A A A A A N/A N/A N/A N/A A S2 A A A A A A A A A A A A A A n A A A A A A A A A A A A A A D N/A A A A A A A A A N/A N/A N/A N/A A 操作数 定时器计数器继电器 数据寄存器 索引变址 常数索引寄存器 (*1)对于FP2、FP2SH和FP10SH,为I0~IC (*2)对于FP2、FP2SH和FP10SH,为ID D 读取数据的字数n 用于存放所读取数据的起始地址(目标数据地址) FP2/FP2SH/FP3/FP10SH 适用机型 梯形图程序 布尔形式 指令地址 示例说明 当触发器R10变为ON时, 读取由DT0和DT1指定的远程子站智能单元模块中共享内存从0到0的10个字 的数据,并将这些数据存储到主站CPU的数据寄存器DT10~DT19. 标志状态 描述 将由S1和S1+1指定的MEWNET-F子站(远程I/O系统)的智能单元(智能板卡)的共享内存中的数据、 从S2指定的地址开始读取n个字的内容, 并存放到主站CPU中D指定的区域. · 错误标志(R9007) 当以下情况时变为ON并且保持 · 错误标志(R9008) 当以下情况时瞬间变为ON - S1超出指定范围 - 没有找到MEWNET-F主站 - 使用索引寄存器指定数据区超出范围 - 读取的数据区域超出D 3-372 指定不同的项目 控制字 (S1) 指定主站的站号、从站的站号和智能单元安插的插槽(如果存储区存在bank, 则需要指定bank), 以及 指定智能单元的内存. (详细说明请参阅下页内容) 指定智能单元中共享内存的读取起始地址(S2) 参照智能单元的内分配表进行指定. 指定地址2时, 利用”K2”进行指定. 指定读取的字数 使用K常数. 需要读入10个字时, 指定”K10”. 智能单元(共享内存) 指定控制字(S1+1和S1) 利用S1指定主站站号和从站站号, 利用S1+1指定目标智能单元模块的插槽编号. 3-373 无Bank的智能单元 高位字节 低位字节 主站站号: H01~H04 从站站号: H01~H20 (1~4) (1~32) S1 有Bank的智能单元 高位字节 低位字节 H00 插槽号: H00~H1F S1+1 高位字节 低位字节 主站站号: H01~H04 从站站号: H01~H20 (1~4) (1~32) S1 高位字节 低位字节 Bank编号: H00~HFF 插槽号: H00~H1F S1+1 参考: 有Bank的智能单元 AFP32091 AFP32092 FP3扩展存储单元 定货号名称 设置示例 在指定从站№5中0号插槽、路径为№1号主站的情况下, 编写指令说明中的示例程序时, 请 参考下例: 控制字: DT0=H0105(主站№1, 从站№5) DT1=H0(插槽0) 编程时的注意事项 不能在同一时刻执行多条F152(RMRD)指令和F153(RMWT)指令. 编写程序时, 应在F152(RMRD)指令和F153(RMWT)指令的允许标志(R9035)为ON的状态下执行 这些指令.. 3-374 0: 禁止执行 (正在执行RMRD/RMWT指令) 1: 允许执行 R9035 F152(RMRD)指令只能够提出接收请求, 而实际处理在执行ED指令时进行. 可以利用F152(RMRD) 指令和F153(RMWT)指令的完成标志(R9036)确认指令是否被执行. 在传输异常结束的情况下, 存放错误内容(错误代码)DT9036 (DT90036) 0: 正常结束 1: 异常结束 (错误代码存放于DT9036/DT90036)R9036 错误代码的内容请参阅各链接单元的相关技术手册. 如果错误代码为H71~H73, 则表示产生了 通信超时错误. 利用系统寄存器32可以改变超时时间设置, 范围为10.0毫秒~81.9秒(以10毫秒 为单位). 缺省值: FP3为2秒, FP2/FP2SH/FP10SH为10秒. 超时错误(在指定的位置上没有找到智能单元)H5B 无存储区错误(在指定的地址上没有存储区)H68 传输应答超时错误H71 传输缓冲区满错误H72 响应超时错误H73 描述错误代码(HEX) 参考: DT9036/DT90036中的错误代码 F153(RMWT) P153(PRMWT) 写入MEWNET-F子站数据 概述 程序示例 操作数 向MEWNET-F远程子站的智能单元的共享内存中写入数据。 10 11 ST R 10 F153 (RMWT) DT 0 DT 250 K 20 K 500 触发器 S2 存放控制字(2字)的低位16bit地址S1 向共享内存发送的数据的起始16bit数据地址(源数据地址) 3-375 A: 可以使用 N/A: 不可使用 WX WY WR WL SV EV DT LD FL IX(*1) IY(*2) K H S1 A A A A A A A A A A N/A N/A N/A A S2 A A A A A A A A A A N/A N/A N/A A n A A A A A A A A A A A A A A D A A A A A A A A A A A A A A 继电器 数据寄存器 索引变址 常数索引寄存器 操作数 定时器计数器 (*1)对于FP2、FP2SH和FP10SH,为I0~IC (*2)对于FP2、FP2SH和FP10SH,为ID D 写入数据的字数n 16bit常数或16bit区地址,用于指定存放写入数据的共享内存的起始地址(目标数据地址) FP2/FP2SH/FP3/FP10SH 适用机型 布尔形式 指令地址 梯形图程序 示例说明 当触发器R10变为ON时, 将存储在主站CPU的数据寄存器DT250~DT269的20个字的数据, 写入由DT0 和DT1指定的远程子站智能单元模块中共享内存从500到519. 标志状态 描述 向由S1和S1+1指定的MEWNET-F子站(远程I/O系统)的智能单元(智能板卡)的从D开始的共享内存中 写入n个字的数据, 源数据在主站CPU中从S2开始的区域. · 错误标志(R9007) 当以下情况时变为ON并且保持 · 错误标志(R9008) 当以下情况时瞬间变为ON - S1超出指定范围 - 没有找到MEWNET-F主站 - 使用索引寄存器指定数据区超出范围 - 写入的数据区域超出S2 3-376 指定不同的项目 控制字 (S1) 指定主站的站号、从站的站号和智能单元安插的插槽(如果存储区存在bank, 则需要指定bank), 以及 指定智能单元的内存. (详细说明请参阅下页内容) 指定智能单元中共享内存的写入起始地址(D) 参照智能单元的内分配表进行指定. 指定地址2时, 利用”K2”进行指定. 指定读取的字数 使用K常数. 需要读入10个字时, 指定”K10”. 智能单元(共享内存) 指定控制字(S1+1和S1) 利用S1指定主站站号和从站站号, 利用S1+1指定目标智能单元模块的插槽编号. 3-377 无Bank的智能单元 高位字节 低位字节 主站站号: H01~H04 从站站号: H01~H20 (1~4) (1~32) S1 有Bank的智能单元 高位字节 低位字节 H00 插槽号: H00~H1F S1+1 高位字节 低位字节 主站站号: H01~H04 从站站号: H01~H20 (1~4) (1~32) S1 高位字节 低位字节 Bank编号: H00~HFF 插槽号: H00~H1F S1+1 参考: 有Bank的智能单元 AFP32091 AFP32092 FP3扩展存储单元 定货号名称 设置示例 在指定向站№10中2号插槽、路径为№2号主站的情况下, 编写指令说明中的示例程序时, 请 参考下例: 控制字: DT0=H020A(主站№2, 从站№10) DT1=H2(插槽2) 编程时的注意事项 不能在同一时刻执行多条F152(RMRD)指令和F153(RMWT)指令. 编写程序时, 应在F152(RMRD)指令和F153(RMWT)指令的允许标志(R9035)为ON的状态下执行 这些指令.. 3-378 0: 禁止执行 (正在执行RMRD/RMWT指令) 1: 允许执行 R9035 F152(RMRD)指令只能够提出接收请求, 而实际处理在执行ED指令时进行. 可以利用F152(RMRD) 指令和F153(RMWT)指令的完成标志(R9036)确认指令是否被执行. 在传输异常结束的情况下, 存放错误内容(错误代码)DT9036 (DT90036) 0: 正常结束 1: 异常结束 (错误代码存放于DT9036/DT90036)R9036 错误代码的内容请参阅各链接单元的相关技术手册. 如果错误代码为H71~H73, 则表示产生了 通信超时错误. 利用系统寄存器32可以改变超时时间设置, 范围为10.0毫秒~81.9秒(以10毫秒 为单位). 缺省值: FP3为2秒, FP2/FP2SH/FP10SH为10秒. 超时错误(在指定的位置上没有找到智能单元)H5B 无存储区错误(在指定的地址上没有存储区)H68 传输应答超时错误H71 传输缓冲区满错误H72 响应超时错误H73 描述错误代码(HEX) 参考: DT9036/DT90036中的错误代码 F154(MCAL) P154(PMCAL) 机器语言程序调用 概述 程序示例 操作数 调用机器语言程序 10 11 ST R 10 F154 (MCAL) H 0 触发器 指定机器语言开始地址的16bit十六进制常数n 3-379 A: 可以使用 N/A: 不可使用 WX WY WR WL SV EV DT LD FL IX IY K H n N/A N/A N/A N/A N/A N/A N/A N/A N/A N/A N/A N/A A N/A 操作数 定时器计数器继电器 数据寄存器 索引变址 常数索引寄存器 描述 调用位于地址Hn的机器语言程序. 使用系统寄存器设置机器语言程序区. 详细内容请参阅介绍系统寄存器的章节. 标志状态 · 错误标志(R9007) 当以下情况时变为ON并且保持 · 错误标志(R9008) 当以下情况时瞬间变为ON - n超出范围 FP-e/FP0/FPΣ/FP2/FP3 适用机型 梯形图程序 布尔形式 指令地址 F155(SMPL) P155(PSMPL) 采样 概述 程序示例 开始数据采样 10 11 ST R 10 F155 (SMPL) 触发器 3-380 示例说明 当执行条件(触发器)R10为ON时, 对登录的继电器(触点)和寄存器数据进行采样. R10 采样 采样输出 采样数据的登录、采样方法(回路或时间间隔等)的指定、采样跟踪开始的指示等操作,只能利用 编程工具软件进行。 描述 在采样跟踪期间, 对指定的数据(继电器触点或寄存器)进行采样, 此时的采样数据内容被保存到 采样跟踪存储器. 如果没有使用编程工具软件设置采样跟踪, 则即使执行条件(触发器)变为ON, 也不能进行处理. FP2/FP2SH/FP3/FP10SH 适用机型 指令地址 布尔形式 梯形图程序 采样跟踪 本功能可以定期地、或者在条件成立时对登录的触点的ON/OFF状态和寄存器中存放的数据进行 采样并记忆,可以确认数据的变化情况。 可以设置16点继电器和3个字的数据。 执行采样跟踪的步骤 3-381 1. 指定进行采样的数据及采样方法(次数、时间间隔等) 2. 指示采样周期开始 3. 进行采样 可以进行定时采样, 或利用F155(SMPL)指令 4. 停止采样跟踪 利用编程工具软件在线操作, 或利用F156(STRG)指令操作停止指示触发器. (触发器启动后, 在 执行指定的延迟次数的采样后, 停止采样.) (使用编程工具软件可以强制停止) 5. 可以利用编程工具软件从CPU中读取采样结果, 可以监控、确认这些数据. F156(STRG) P156(PSTRG) 采样停止 概述 程序示例 停止数据采样 10 11 ST R 10 F156 (STRG) 触发器 3-382 示例说明 当执行条件(触发器)R10为ON时, 发出采样跟踪停止指令. 采样数据的登录、采样方法(回路或时间间隔等)的指定、采样跟踪开始的指示等操作,只能利用 编程工具软件进行。 描述 本指令发出一个采样跟踪停止指令触发器. 当触发器动作时,启动指定的采样延迟, 然后停止采样跟踪. 如果没有使用编程工具软件设置采样跟踪, 则即使执行条件(触发器)变为ON, 也不能进行处理. R10 采样 延迟次数 停止指令触发器 停止采样跟踪 FP2/FP2SH/FP3/FP10SH 适用机型 梯形图程序 布尔形式 指令地址 采样跟踪 本功能可以定期地、或者在条件成立时对登录的触点的ON/OFF状态和寄存器中存放的数据进行 采样并记忆,可以确认数据的变化情况。 可以设置16点继电器和3个字的数据。 执行采样跟踪的步骤 3-383 1. 指定进行采样的数据及采样方法(次数、时间间隔等) 2. 指示采样周期开始 3. 进行采样 可以进行定时采样, 或利用F155(SMPL)指令 4. 停止采样跟踪 利用编程工具软件在线操作, 或利用F156(STRG)指令操作停止指示触发器. (触发器启动后, 在 执行指定的延迟次数的采样后, 停止采样.) (使用编程工具软件可以强制停止) 5. 可以利用编程工具软件从CPU中读取采样结果, 可以监控、确认这些数据. 时间加法 操作数 程序示例 概述 将指定的时间数据(时/分/秒)与日期(年/月/日)和时钟(时/分/秒)数据相加。 对于FP-M/FP1/FP0/FP-e/FPΣ, P型高级指令不适用 F157(CADD) P157(PCADD) 10 11 ST R 0 F 157 (CADD) DT 9054 DT 10 DT 30 存储时间(日期/时刻)数据的起始16位区 (3字,以BCD格式表示) S1 地址 指令 梯形图程序 布尔形式 存储时刻数据(2字)的起始16位区或常数S2 触发器 WX WY WR WL(*1) SV EV DT LD(*1) FL(*2) IX(*3) IY K H S1 A A A A A A A A A N/A N/A N/A N/A A S2 A A A A A A A A A A N/A A A A n N/A A A A A A A A A N/A N/A N/A N/A A 索引变址 常数 操作数 定时器/计数器 索引寄存器继电器 数据寄存器 A: 可以使用 N/A: 不可使用 (*1)此处不适用FP-M、FP0、FP-e和FP1。 (*2)此处不适用FP-M、FP0、FP-e、FPΣ和FP1。 (*3)对于FPΣ、FP2、FP2SH和FP10SH,此处为I0至IC。 3-384 存储结果的起始16位区 (3字, 以BCD格式表示)D * 对于FPΣ/FP2/FP2SH/FP10SH, S1=DT90054 FP-e*/FP0*/FP∑/FP1 C24/C40 C56/C72/ FP-M C20/C32/FP2/FP2SH/FP3/FP10SH 适用机型 *仅限日历时钟型 时 分 秒 示例说明 当触发器为ON时, 将存储在数据寄存器DT11和DT10中的时间数据与存储在特殊数据寄存器 DT9054~DT9056(DT90054~DT90056)中的日历/时刻数据相加. 结果存放到数据寄存器DT32, DT31和DT30中. 3-385 描述 1992年6月17日, 10:30’24” : H920617103024(BCD) 年 月 日 时 分 秒 + (加法) 20:45’00” : H00204500(BCD) 时 分 秒 年 月 日 时 分 秒 1992年6月18日, 7:15’24” : H920618071524(BCD) 将由S1指定的时间数据(3字)与由S2指定的时间数据(2字)相加. 结果存放到D指定的区域(3字). 日期/时刻数据 年 月 日 时 分 秒 + (加法) 时间数据 日期/时刻数据 年 月 日 时 分 秒 3-386 编程时注意事项 特殊数据寄存器DT9054~DT9056/DT90054~DT90056用于存放内部日历时钟的数据, 不能用于 D指定. 需要改变内部日历时钟的数值时, 应将结果存放于其他存储区, 然后在利用F0(MV)指令 将数据传输到DT9054~DT9056/DT90054~DT90056. 年 月 日 时 分 秒 年 月 日 时 分 秒 ·错误标志(R9007):以下情况时为ON并保持ON。 ·错误标志(R9008):以下情况时瞬间为ON。 标志位状态 - 使用索引寄存器指定的区域超出范围 - S1和S2指定的数据不是BCD数据 - 由S1指定的数据不是日期/时刻数据 - 由S2指定的数据不是时间数据 - 指定的数据超出范围 内部日历时钟的数据配置 FPΣ/FP2/FP2SH/FP10SH FP-M/FP1/FP3 时间减法 操作数 程序示例 概述 将指定的时间数据(时/分/秒)与日期(年/月/日)和时钟(时/分/秒)数据相减。 对于FP-M/FP1/FP0/FP-e/FPΣ, P型高级指令不适用 F158(CSUB) P158(PCSUB) 10 11 ST R 0 F158 (CSUB) DT 9054 DT 10 DT 30 存储时间(日期/时刻)数据的起始16位区 (3字,以BCD格式表示) S1 地址 指令 梯形图程序 布尔形式 存储时刻数据(2字)的起始16位区或常数S2 触发器 WX WY WR WL(*1) SV EV DT LD(*1) FL(*2) IX(*3) IY K H S1 A A A A A A A A A N/A N/A N/A N/A A S2 A A A A A A A A A A N/A A A A n N/A A A A A A A A A N/A N/A N/A N/A A 索引变址 常数 操作数 定时器/计数器 索引寄存器继电器 数据寄存器 A: 可以使用 N/A: 不可使用 3-387 存储结果的起始16位区 (3字, 以BCD格式表示)D * 对于FPΣ/FP2/FP2SH/FP10SH, S1=DT90054 FP-e*/FP0*/FP∑/FP1 C24/C40 C56/C72/ FP-M C20/C32/FP2/FP2SH/FP3/FP10SH 适用机型 *仅限日历时钟型 (*1)此处不适用FP-M、FP0、FP-e和FP1。 (*2)此处不适用FP-M、FP0、FP-e、FPΣ和FP1。 (*3)对于FPΣ、FP2、FP2SH和FP10SH,此处为I0至IC。 时 分 秒 示例说明 当触发器为ON时, 将存储在数据寄存器DT11和DT10中的时间数据与存储在特殊数据寄存器 DT9054~DT9056(DT90054~DT90056)中的日历/时刻数据相加. 结果存放到数据寄存器DT32, DT31和DT30中. 3-388 描述 1992年6月17日, 10:30’24” : H920617103024(BCD) 年 月 日 时 分 秒 - (减法) 3:30’30” : H00033030(BCD) 年 月 日 时 分 秒 1992年6月17日, 6:59’54” : H920617065954(BCD) 将由S1指定的时间数据(3字)与由S2指定的时间数据(2字)相减. 结果存放到D指定的区域(3字). 日期/时刻数据 年 月 日 时 分 秒 - (减法) 时间数据 日期/时刻数据 年 月 日 时 分 秒 时 分 秒 3-389 编程时注意事项 特殊数据寄存器DT9054~DT9056/DT90054~DT90056用于存放内部日历时钟的数据, 不能用于 D指定. 需要改变内部日历时钟的数值时, 应将结果存放于其他存储区, 然后在利用F0(MV)指令 将数据传输到DT9054~DT9056/DT90054~DT90056. 年 月 日 时 分 秒 年 月 日 时 分 秒 ·错误标志(R9007):以下情况时为ON并保持ON。 ·错误标志(R9008):以下情况时瞬间为ON。 标志位状态 - 使用索引寄存器指定的区域超出范围 - S1和S2指定的数据不是BCD数据 - 由S1指定的数据不是日期/时刻数据 - 由S2指定的数据不是时间数据 - 指定的数据超出范围 内部日历时钟的数据配置 FPΣ/FP2/FP2SH/FP10SH FP-M/FP1/FP3 F159(MTRN) 串行数据通信 概述 程序示例 操作数 用于通过RS232或RS485串行通信口向外部设备发送数据或者接收外部数据. WX WY WR WL SV EV DT LD IX(*1) IY K H S N/A N/A N/A N/A N/A N/A A N/A N/A N/A N/A N/A A n A A A A A A A A A A A A A D N/A N/A N/A N/A N/A N/A N/A N/A N/A N/A A N/A A 继电器 数据寄存器 索引寄存器 操作数 索引变址 定时器/计数器 常数 3-390 A: 可以使用 N/A: 不可使用 10 11 12 ST R 10 DF F159 (MTRN) DT 100 K 8 K 1 触发器 n 参数表存储区的起始地址(数据寄存器)S 存放被发送数据的字节数或常数. 当数值为正时,发送时添加结束符 当数值为负时,不添加结束符 当数值为H8000时,切换RS232C(RS485)通信端口的传输模式 D 指定用于输出脉冲的输出通道Yn(n: K1或K2) (*1)I0~ID FP∑ 适用机型 梯形图程序 布尔形式 指令地址 描述 当外部设备(计算机、测量仪表、条码识阅读器等)与RS232C或RS485串行通信端口连接以后, 使用本指令发送和接收数据. 1) 发送 发送存储在数据表中从“S”地址开始的“n”个字节的数据, 由“D”中指定与外部设备相连接的 通信端口。能够自动添加和发送起始符和结束符。可以发送的最大字节数是2048. 2) 接收 接收是由接收完成标志位(R9038/R9048)的ON/OFF控制的. 当接收完成标志变为OFF时, 开始 从RS232或RS485端口接收数据, 并且自动存储在由系统寄存器No.416到No.419中指定的数据 寄存器中. F159(MTRN)指令可以用来关闭接收完成标志位(R9038/R9048) (允许接收). 可以接 收的最大字节数是4096. 标志位状态 · 错误标志(R9007): 以下情况时为ON并保持ON · 错误标志(R9008): 以下情况时瞬间为ON - 变址数指定区超限 - n指定的数据区最终地址超出范围 3) 改变RS232C(RS485)端口的传送方式 执行F159指令可以切换“通用通信方式”和“计算机链接方式”. 使用时, 在“n”(传送的字节总数) 中指定“H8000”并且执行该指令. 从“通用通信方式”改为“计算机链接方式” 从“计算机链接方式”改为“通用通信方式” R9032或R9042为通信端口模式选择标志. 在选择为“通用通信方式”的情况下, 该标志为ON. 指定H8000 注意: 当电源导通的时候,在系统寄存器NO.412中被选择的方式生效. 3-391 发送过程的编程和操作 为了执行数据发送, 应将被传送的数据写进数据表内并使用F159指令. 使用F0(MV)或者F95(ASC)指令将被发送的数据写入由“S”指定的数据区. - 在被传送的数据中表不包括结束符. 结束符是自动添加的. - 在系统寄存器NO.413或者NO.414中的选择“有起始符”, 则在被传送的数据表中不包括起始符. 起始符是自动添加的. - 可传送的最大字节数”n” 是2048. 传送的数据表 作为被发送的数据表, 从”S”指定的数据寄存器开始. 开始发送时, 此处为待发送字节数. 发送结束时, 置0. 发送数据存储区. (编号表示发送顺序) 示例: 传送8个字符A , B , C , D, E , F , G , H(8个字节的数据) 本例中使用DT100到DT104作为数据表. 开始发送时: K8 发送结束时: K0 数据从低位开始发送 发送前的数据表 注意: · 当使用一通道型的RS232C端口插件时,只有CS(Clear to Send,清除发送)为ON的时候 才能发送.如果不连接其他设备,则要将CS与RS(Request to Send,发送请求)连接. · 接收完成标志位(R9038/R9048)在一个扫描周期中也可能改变. 3-392 当不需要添加传送结束符, 请使用以下的方法 3-393 编程 操作 在“S”中指定发送数据表的首地址, 在“n”中是被传送数据的字节总数. 向数据表中写入发送数据 发送数据表中的数据 当F159(MTRN)指令的执行条件变ON、并且当传送标志位(R9039/R9049)为ON时, 执行如下操作: 1) “n”被预置在“S”中.接收完成标志位(R9038/R9048)变成OFF, 同时接收数据的总数被清零. 2) 从数据表的“S+1”中的低字节开始顺序地发送数据. - 在传送过程中,传送完成标志位(R9039/R9049)保持OFF - 如果在系统寄存器NO.413或者NO.414设置了使用STX起始符, 则起始符自动添加在数据开始处. - 在系统寄存器NO.413或者NO.414中指定的结束符被自动添加在数据末尾. 发送数据 R9039 R9049 执行条件 (触发器)R0 发送过程 在此期间不能执行F159(MTRN)指令 3) 所有的指定的数据被发送后, “S”中的数值被清零, 并且发送完成标志位(R9039/R9049)变成ON. - 使用负数作为被传送的字节数. - 如果不需要添加结束符, 设置系统寄存器NO.413或者NO.414为“无结束符” 示例: 传送8个字节的数据,不添加结束符 指定K-8 接收过程的编程和操作 数据从RS232或RS485端口连接的外部设备传送进来, 存储在作为接收缓冲区的数据寄存器中. 数据寄存器被用作接收缓冲区. 缓冲区在系统寄存器NO.416到NO.419中指定. 接收数据的字节数 存储在接收缓冲区的起始字中. 该初始值是“0”. 接收到的数据从低位字节开始顺序地存储在接收数据区中. 接收缓冲区 使用”接收缓冲区”的数据寄存器 接收到的字节数存放在此处 接收缓冲区. (编号表示存放顺序) 示例: 从外部设备通过COM1端口接收8个字节A , B , C , D, E , F , G , H的数据 本例中使用DT200到DT204作为接收缓冲区. 系统寄存器的设置如下: - 系统寄存器416: K500 - 系统寄存器417: K5 接收结束后的接收缓冲区内容 3-394 存放在接收到的字节数 从低字节开始存放接收到的数据. 3-395 编程 操作 当从外部通信设备接收数据完成时,接收完成标志(R9038/R9048)变为ON. 之后的数据不再接收. 为了接收后来的数据,必须执行F159(MTRN)指令使接收完成标志位(R9038/R9048)变为OFF, 同时将 接收字节总数清零. 只用于接收后清除缓冲区和接收完成标志时,指定K0. 当以指定的字节数发送数据时, R9038/R9048也能变为OFF. 接收完成标志位(R9038/R9048)为OFF的状态下, 从外部设备发送数据时进行以下操作. (在RUN运行后第一个扫描周期内R9038/R9048变成OFF, “0”被设置在由系统寄存器中指定的 接收缓冲区的起始字中) 接收到数据 R9038 R9048 执行条件 (触发器)R0 不能接收 2) 当接收到结束符后, 接收完成标志位(R9038/R9048)变成ON. 禁止接收后来的数据. 3) 当F159(MTRN)指令被执行, 接受完成标志位(R9038/R9048)变成OFF, 接收的字节总数被清零, 后来的数据从低位字节顺序存储. 相关标志和数据寄存器 项目 COM1 COM2 端口传输模式标志 R9032 R9042 接收完成标志 R9038 R9048 发送完成标志 R9039 R9049 接收缓冲区起始地址 在系统寄存器416中指定 在系统寄存器418中指定 接收缓冲区容量 在系统寄存器417中指定 在系统寄存器419中指定 1) 接收到的数据被顺序地从接收缓冲区的第二个字的低位字节开始存放。 起始符和结束符不被存储 开始接收 重新接收 可以接收 可以接收 注意: · 为了确认数据的接收, 请参考以下步骤. 1) 接收数据 2) 接收完成(R9038/R9048:ON, 接收被禁止) 3) 处理接收到的数据 4) 执行F159(MTRN)指令(R9038/R9048:OFF, 允许继续接收) 5) 接收后续的数据 · 在一个扫描周期中, 接收完成标志位(R9038/R9048)有可能改变. 3-396 F160(DSQR) P160(PDSQR) 32bit数据平方根 概述 程序示例 操作数 计算32bit数据的平方根。 对于FPΣ, P型高级指令不适用 10 11 ST R 0 F160 (DSQR) DT 10 DT 20 触发器 D 32bit常数或32bit数据的低16bit地址S 用于存放计算结果的32bit数据的低16bit地址 3-397 A: 可以使用 N/A: 不可使用 WX WY WR WL SV EV DT LD FL(*1) IX(*2) IY K H S A A A A A A A A A A N/A A A A D N/A A A A A A A A A A N/A N/A N/A A 继电器 数据寄存器 索引变址 常数索引寄存器 操作数 定时器计数器 (*1) FPΣ不能使用 (*2) 对于FPΣ、FP2、FP2SH、FP10SH,此处为I0~IC 示例说明 当R0为ON时, 计算存放在DT11和DT10中的32bit数据的平方根, 并且将结果存放在DT21和DT20中. 如果DT11和DT10中的内容为K64, 则处理如下: 源数据 [S+1, S] : K64 高16bit区 低16bit区 高16bit区 低16bit区 目标 [D+1, D] : K8 FP∑/FP2/FP2SH/FP3/FP10SH 适用机型 梯形图程序 布尔形式 指令地址 标志状态 · 错误标志(R9007) 当以下情况时变为ON并且保持 · 错误标志(R9008) 当以下情况时瞬间变为ON 描述 计算由S1指定的32bit的数据的平方根, 将结果存放到D指定的32bit数据区. 计算结果中, 小数点以后的数字被舍去. - 使用索引寄存器指定数据区超出范围 - S指定的数据为负数 3-398 √ (S+1, S) → (D+1, D) F162(HC0S) 目标值一致ON 概述 程序示例 操作数 指定一外部输出继电器作为高速计数器的输出. 当高速计数器的经过值与 目标值一致时, 指定的外部输出继电器变为ON并且保持ON. 10 11 12 ST R 3 DF F162 (HC0S) K 1000 Y 5 触发器 D 高速计数器目标值的32bit常数或32bit数据的低16bit地址S 允许使用的外部输出继电器: Y0~Y7 3-399 A: 可以使用 N/A: 不可使用 数据寄存器 WX WY WR SV EV DT IX IY K H S A A A A A A A N/A A A A D N/A N/A N/A N/A N/A N/A N/A N/A N/A N/A N/A 继电器 索引变址 常数索引寄存器 操作数 定时器计数器 示例说明 目标值 经过值 F162指令完成(清除) 达到目标值时变为ON FP1/FP-M 适用机型 梯形图程序 布尔形式 指令地址 标志状态 · 错误标志(R9007) 当以下情况时变为ON并且保持 · 错误标志(R9008) 当以下情况时瞬间变为ON 描述 将由S指定的数值设置为高速计数器的目标值. 当经过值与该目标值一致时, 指定的输出点Yn变为 ON. (以中断方式进行处理.) 当达到目标值时, 清除对目标值设置和匹配输出点的控制. 由S指定的32bit目标值的设置范围如下: K-8388608 ~ K8388607 (H FF800000 ~ H007FFFFF) 执行本指令时, 将S的数值存放到DT9047和DT9046. 允许指定的Yn范围是 Y0~Y7 - 使用索引寄存器指定数据区超出范围 - S指定的数据超出允许范围 3-400 编程时的注意事项 从F162(HC0S)指令的执行条件(触发器)变为ON开始, 到目标值一致输出Yn变为ON为止, 高速计数器 控制标志R903A在此过程中为ON. 在控制标志R903A为ON的期间, 不能执行其他高速计数器指令(F162~F165). 在经过值达到目标值之前, 即使执行硬件复位(经过值清0), 也不能清除目标值和目标值匹配输出. 对于指定的目标值匹配输出点Y, 不进行OT指令、KP指令或其他高级指令的双重输出检查. 使用RST指令或F0(MV)指令或同时执行F163(HC0R)指令, 可以将本指令的目标值匹配输出点变为OFF. F163(HC0R) 目标值一致OFF 概述 程序示例 操作数 指定一外部输出继电器作为高速计数器的输出. 当高速计数器的经过值与 目标值一致时, 指定的外部输出继电器变为OFF并且保持OFF. 10 11 12 ST R 3 DF F163 (HC0R) K -200 Y 0 触发器 D 高速计数器目标值的32bit常数或32bit数据的低16bit地址S 允许使用的外部输出继电器: Y0~Y7 3-401 A: 可以使用 N/A: 不可使用 数据寄存器 WX WY WR SV EV DT IX IY K H S A A A A A A A N/A A A A D N/A N/A N/A N/A N/A N/A N/A N/A N/A N/A N/A 继电器 索引变址 常数索引寄存器 操作数 定时器计数器 示例说明 目标值 经过值 F163指令完成(清除) 达到目标值时变为OFF FP1/FP-M 适用机型 梯形图程序 指令地址 布尔形式 标志状态 · 错误标志(R9007) 当以下情况时变为ON并且保持 · 错误标志(R9008) 当以下情况时瞬间变为ON 描述 将由S指定的数值设置为高速计数器的目标值. 当经过值与该目标值一致时, 指定的输出点Yn变为 OFF. (以中断方式进行处理.) 当达到目标值时, 清除对目标值设置和匹配输出点的控制. 由S指定的32bit目标值的设置范围如下: K-8388608 ~ K8388607 (H FF800000 ~ H007FFFFF) 执行本指令时, 将S的数值存放到DT9047和DT9046. 允许指定的Yn范围是 Y0~Y7 - 使用索引寄存器指定数据区超出范围 - S指定的数据超出允许范围 3-402 编程时的注意事项 从F163(HC0R)指令的执行条件(触发器)变为ON开始, 到目标值一致输出Yn变为OFF为止, 高速计数器 控制标志R903A在此过程中为ON. 在控制标志R903A为ON的期间, 不能执行其他高速计数器指令(F162~F165). 在经过值达到目标值之前, 即使执行硬件复位(经过值清0), 也不能清除目标值和目标值匹配输出. 对于指定的目标值匹配输出点Y, 不进行OT指令、KP指令或其他高级指令的双重输出检查. F164(SPD0) 脉冲输出控制 (晶体管输出型) 概述 程序示例 操作数 根据高速计数器的经过值, 控制输出脉冲的频率 10 11 12 ST R 3 DF F164 (SPD0) DT 100 触发器 存放控制数据的16bit区的起始地址S 3-403 A: 可以使用 N/A: 不可使用 数据寄存器 WX WY WR SV EV DT IX IY K H S N/A N/A N/A N/A N/A A N/A N/A N/A N/A A 继电器 索引变址 常数索引寄存器 操作数 定时器计数器 描述 根据由S1指定的16bit数据区的内容选择脉冲输出控制模式. 脉冲输出频率和外部输出继电器Y通过 S确定. 当触发器变为ON时, 根据S+1的内容开始输出指定的脉冲频率. 当认为高速计数器的经过值达到目标值时, 输出脉冲频率从初始频率切换到输出脉冲频率. 当指定K0为速度数据时, 该数据作为最终速度数据, 而在该数据之前的相临数据被认为是最终的 目标值. 当高速计数器的经过值被认为达到最终目标值时, 完成脉冲输出操作. 使用F0(MV)指令强制控制高速计数器的停止. 请参阅相关指令. 脉冲输出 电机 电机 驱动器 FP1控制单元 高速计数器输入 FP1/FP-M 适用机型 梯形图程序 指令地址 布尔形式 数据表设置 3-404 编程时的注意事项 正在执行本指令时, 不能同时执行F162(HC0S),F163(HC0R),F164(SPD0)和F165(CAM0)指令. 高速计数器控制标志R903A在执行本指令的过程中保持ON. 在脉冲输出控制模式中, 如果速度数据的数值或目标值1的数值超出范围, 则会产生运算错误. 如果某个目标值(目标值2及之后值)超出允许范围, 则停止之后的脉冲输出, 并且高速计数器控制标志 R903A变为OFF. [S] [S+1] [S+2] [S+3] [S+4] [S+5] [S+6] 频率范围 脉冲输出端 频率数据1 目标值1 频率数据2 目标值2 频率数据n 最终目标值(目标值n) 脉冲输出停止(参数表结束) 参数表分配 注意: 频率选择范围的适用机型 - H0~H3: CPU版本2.7或更新版本 - H0~H5: CPU版本2.9或更新版本 3-405 ①选择脉冲宽度、频率范围和脉冲输出端子 使用16进制按以下内容选择频率范围、脉冲宽度和本指令的脉冲输出端. [S] = H □□□ 0 选择脉冲宽度: H0: 占空比50% H1~HF: 固定脉冲宽度 选择脉冲输出端: H0: 脉冲输出Y7(适用FP-M和FP1 C14/C16/C24/C40系列的晶体管输出型) H1: 脉冲输出Y6(适用FP-M和FP1 C56/72系列的晶体管输出型) 选择脉冲频率范围: H0: 360Hz ~ 5000Hz H1: 180Hz ~ 5000Hz H2: 90Hz ~ 5000Hz H3: 45Hz ~ 5000Hz H4: 1440Hz ~ 5000Hz H5: 720Hz ~ 5000Hz ②频率数据 利用速度数据指定脉冲输出频率. 速度设置范围: K0~K255 设置频率数据为K0时: 脉冲输出停止. ③目标值 目标值为2字(32bit)数据. 设置范围: K-8388608~K8388607(HFF800000~H7FFFFF) ④参数表结束(停止脉冲输出) 在参数表的最后地址中设置K0以停止脉冲输出. 标志状态 · 错误标志(R9007) 当以下情况时变为ON并且保持 · 错误标志(R9008) 当以下情况时瞬间变为ON - 使用索引寄存器指定数据区超出范围 - 频率范围,脉冲输出继电器或目标值1的数值不在设置范围之内 3-406 程序示例 时序图 速度数据 (输出脉冲频率) 速度数据1 K193 (1460Hz) 初始速度数据 K152 (890Hz) 0 高速计数器经过值 目标值1 目标值2 目标值3 (最终目标值) 触发器 X3 R903A 程序 脉冲输出控制模式选择 (频率范围/脉冲输出选择) 初始频率数据(890Hz) 目标值1(1000) 频率值1(1460Hz) 目标值2(3000) 频率值2(890Hz) 目标值3(4000) 输出脉冲停止 脉冲输出控制 F164(SPD0) 模式输出控制 概述 程序示例 操作数 根据高速计数器的经过值, 控制ON/OFF输出模式 10 11 12 ST R 3 DF F164 (SPD0) DT 100 触发器 存放控制数据的16bit区的起始地址S 3-407 A: 可以使用 N/A: 不可使用 数据寄存器 WX WY WR SV EV DT IX IY K H S N/A N/A N/A N/A N/A A N/A N/A N/A N/A A 继电器 索引变址 常数索引寄存器 操作数 定时器计数器 描述 根据由S1指定的16bit数据区的内容选择脉冲输出控制模式. 目标值数量和外部输出通过S确定. 当触发器变为ON时, 根据S+1的内容开始输出指定的ON/OFF模板. 当认为高速计数器的经过值达到由S+3和S+2指定的目标值1时, 输出模板从模板1切换到由S+4 指定的模板2. 当认为高速计数器的经过值达到最后一个目标值时, 输出模板切换到最终的输出模板. 然后停止 输出模板操作. 目标值1 目标值2 目标值3 目标值4 0 时间 经过值 Y0 Y1 Y2 输出模板 FP1/FP-M 适用机型 梯形图程序 布尔形式 指令地址 数据表设置 3-408 编程时的注意事项 正在执行本指令时, 不能同时执行F162(HC0S),F163(HC0R),F164(SPD0)和F165(CAM0)指令. 高速计数器控制标志R903A在执行本指令的过程中保持ON. 在模板输出控制模式中, 如果目标值1的数值超出范围, 则会产生运算错误. 如果某个目标值(目标值2及之后值)超出允许范围, 则停止之后的模板输出, 并且高速计数器控制标志 R903A变为OFF. [S] [S+1] [S+2] [S+3] [S+4] [S+5] [S+6] 目标值数量 使用输出数量 输出模板1 目标值1 输出模板2 目标值2 输出模板n 最终目标值(目标值n) 最终输出模板 参数表分配 标志状态 · 错误标志(R9007) 当以下情况时变为ON并且保持 · 错误标志(R9008) 当以下情况时瞬间变为ON - 使用索引寄存器指定数据区超出范围 - 使用的模板输出数量、模板输出或目标值超出设置范围 - 本指令使用的数据表超出数据寄存器范围(允许使用数据寄存器) 3-409 ①目标值数量和使用输出数量 使用16进制按以下内容设置目标值数量和使用输出点数量. [S] = H 0 0 □□ 使用输出点数量: 设置范围: H1~H8(1~8) 目标值数量: 设置范围: H1~HF (1~15) ②目标值 目标值占用2个字(32bit数据) 设置范围: K-8388608 ~ K8388607 (HFF800000~H7FFFFF) ③输出模板 使用输出触点Y0~Y7用于模板输出时, 应利用16进制按位分别指定各个使用点. 示例: S = H 3 3 3点输出(Y0~Y2) 3个目标值 1: ON 0: OFF 示例: 输出模板 ”HA” Y1 和 Y3: ON Y0, Y2, Y4~Y7: OFF 3-410 时序图 速度 R3 R903A Y0 Y1 Y2 程序 程序示例 接线 使用模板输出, 实现以下形式的不同速度控制(变频器控制). 模板输出 变频器 变频器 FP1控制单元 交流电机旋转 编码器 高速计数器 输入 目标值1(K10000) 目标值2(K20000) 目标值3(K30000) 输出模板1 (高速模式) 输出模板2 (中速模式) 输出模板3 (低速模式) 模板输出控制模式(3个目标值, Y0~Y2) 输出模板1 目标值1 (Y0和Y1: ON, Y2: OFF) 输出模板1 目标值1 (Y0和Y2: OFF, Y1: ON) 输出模板1 目标值1 (Y0: ON, Y1和Y2: OFF) 最终输出模板 (Y0和Y1: OFF, Y2: ON) 模板输出控制 注意: · 时序图中(高速/中速/低速)的情况, 会因变频器的型号和 设置不同而不同. · 在最终模板输出后, 可以使用RST(复位)指令将输出触点 置为OFF. · 当R3变为ON时, 高速计数器控制控制标志R903A处于ON. 3-411 F165(CAM0) 凸轮输出控制 概述 程序示例 操作数 根据高速计数器的经过值, 控制凸轮输出(凸轮的各ON/OFF输出模板). 10 11 12 ST R 3 DF F165 (CAM0) DT 100 触发器 存放控制数据的16bit区的起始地址S 3-412 A: 可以使用 N/A: 不可使用 数据寄存器 WX WY WR SV EV DT IX IY K H S N/A N/A N/A N/A N/A A N/A N/A N/A N/A A 继电器 索引变址 常数索引寄存器 操作数 定时器计数器 描述 本指令可以利用输入到FP1或FP-M的旋转编码器的信号, 将FP-M或FP1作为可编程凸轮开关. 在执行凸轮控制期间, 应确保避免向高速计数器输入减计数信号. 如果使用减计数输入, 则输出不能 按照凸轮设置表进行操作. 从Y0开始, 最多可以使用8个凸轮控制输出. 可以使用的最多模板分别是: - FP1-C14和C16: 合计16组(16个ON目标和16个OFF目标) - FP1-C24/C40/C56/C72和FP-M C20/32: 合计32组(32个ON目标和32个OFF目标) 因为F165(CAM0)指令的触发器不能将高速计数器的经过值清零, 所以应确保在使用F165(CAM0)指令 之前, 先利用F1(DMV)指令将高速计数器的经过值(特殊内部数据寄存器DT9045和DT9044)复位. 凸轮控制操作在触发器变为ON后立即开始执行. 凸轮控制操作会循环重复执行. 如果需要停止凸轮控 制, 可以利用F0(MV)指令和特殊数据寄存器DT9052. FP1/FP-M C20/C32 适用机型 梯形图程序 布尔形式 指令地址 3-413 K14000 K12000 K10000 K8000 K6000 K4000 K2000 0 R3 CAM0 Y0 CAM1 Y1 初始模板 时间 最大目标值 高速计数器 经过值 数据表设置 3-414 最大目标值控制 使用输出数量 初始输出模板 ON目标值 Y0输出模板设置 的结束码 凸轮输出数据表从S指定的16bit存储区开始, 凸轮控制操作模式和各个输出的ON/OFF目标值的 设置如下: OFF目标值 ON目标值 OFF目标值 输出Y0的ON/OFF目标值 ON目标值 Y1输出模板设置 的结束码 OFF目标值 输出Y1的ON/OFF目标值 ON目标值 Yn输出模板设置 的结束码 OFF目标值 输出Yn的ON/OFF目标值 最大目标值 [ S ] [S+1] [S+2] [S+3] [S+4] [S+5] [S+6] [S+7] [S+8] [S+9] [S+10] [S+11] [S+12] [S+13] [S+14] [S+15] [S+16] [S+17] [S+(n-7)] [S+(n-6)] [S+(n-5)] [S+(n-4)] [S+(n-3)] [S+(n-2)] [S+(n-1)] [S+n] ①最大目标值控制和使用输出点数量(S) 在S指定的16bit区中, 使用16进制按以下内容设置凸轮控制操作: - 在凸轮控制数据表中定义最大目标值 - 凸轮控制操作使用的输出点数量 [S] = H □ 0 0 □ 使用输出点数量设置范围: H1~H8(1~8) H0: 凸轮控制数据表中没有设置最大目标值. 缺省值K8388607(H7FFFFF)作为最大目标值 H1: 凸轮控制数据表中设置最大目标值 注意: 在使用复位输入X2控制凸轮输出循环时, 建议使用最大缺省目标值. 3-415 ②初始输出模板(S+1) 此处设置的内容是当检测到F165(CAM0)指令的触发器时的输出模板. 用于凸轮控制操作的数据, 是通过设置相应位的ON(1)或OFF(0)而指定输出模板的. 注意: · 应按ON和OFF的顺序成对地指定ON/OFF目标值而不论其数值如何. · 应确保目标值从Y0开始顺序设置. · 应确保在设置每个输出模板时, 在每个输出模板的目标值后设置结束 代码(HFFFFFFFF). 示例: 初始输出模板为Y0和Y7 ON. ③凸轮输出的ON/OFF目标值 应该成对地指定使输出变为ON和变为OFF的目标值. 各目标值分别用32bit的数据指定, 目标值的设置范围是: - 在凸轮控制数据表中没有设置目标的情况下, 为K1~K8388607(H1~H7FFFFF) - K1~凸轮控制数据表中的最大目标值 允许设置的ON/OFF目标值数量是: - FP1-C14和C16: 合计16组(16个ON目标和16个OFF目标) - FP1-C24/C40/C56/C72和FP-M C20/32: 合计32组(32个ON目标和32个OFF目标) ④最大目标值设置 只有在16bit数据区的16进制数位digit3被设置为H1的情况下, 可以指定最大目标值. 当高速计数器的经过值达到最大目标值时, 高速计数器的经过值被清零, 并且重复相同的 凸轮控制. 最大目标值的设置范围是K1~K8388607(H1~H7FFFFF) 标志状态 · 错误标志(R9007) 当以下情况时变为ON并且保持 · 错误标志(R9008) 当以下情况时瞬间变为ON - 使用索引寄存器指定数据区超出范围 - ON/OFF目标值或最大目标值超出允许设置范围 - ON/OFF目标值大于最大目标值 - ON/OFF目标值设置为0 - ON目标值和OFF目标值没有成对匹配设置 - ON/OFF目标值的数量超出允许设置范围 FP1-C14/C16: 合计16对(16个ON目标, 16个OFF目标) FP1-C24/C40/C56/C72和FP-M C20/C32: 合计32对(32个ON目标,32个OFF目标 - 凸轮控制操作使用的输出点超出设置范围 - 凸轮控制输出设置了无效的外部输出继电器 - 本指令使用的16it数据区的结束地址超出实际可用数据寄存器范围 3-416 编程时的注意事项 控制输出时, 必须使ON目标值和OFF目标值成对设置. 在进行凸轮控制操作期间, 特殊内部继电器R903A和R903B处于ON状态, 并且其他与高速计数器相关 的指令(如:F162(HC0S),F163(HC0R),F164(SPD0)等)不能被执行. 在凸轮控制过程中, 当使用F1(DMV)指令或复位输入X2将高速计数器复位(软件复位)时, 在高速计数器 的经过值被复位后, 凸轮控制操作从初始状态开始. 高速计数器可以对输入进行计数的范围是K0~K8388607, 如果在数据表中没有指定最大目标值, 凸轮 控制将K8388607作为最大目标值进行运算. 应确保设置的ON和OFF目标值能够使ON或OFF分别保持各自的状态大于1ms. 在使用特殊内部继电器R9008作为本指令的标志时, 在编程时应确保该标志的使用紧随本指令之后. ON目标值 OFF目标值 ON目标值 凸轮控制 ≥1ms ≥1ms 凸轮输出设置示例 3-417 执行如下的凸轮输出控制: - 凸轮输出: 4点(Y0~Y3) - 最大输出目标值: K14000 - 初始输出模板: H9(Y0和Y3:ON, Y1,Y2,Y4~Y7:OFF) 凸轮控制的ON和OFF目标值 程序 ← 凸轮控制操作模式 (最大目标值和4点输出) ← 初始凸轮输出模板 Y0的ON目标值(K12000) Y0的OFF目标值(K12000) ← Y0的输出模板结束代码设置(HFFFFFFFF) Y1的ON目标值(K2000) Y1的OFF目标值(K6000) ← Y1的输出模板结束代码设置(HFFFFFFFF) Y1的ON目标值(K8000) Y1的OFF目标值(K12000) ← Y2的输出模板结束代码设置(HFFFFFFFF) Y2的ON目标值(K4000) Y2的OFF目标值(K10000) ← Y3的输出模板结束代码设置(HFFFFFFFF) Y3的ON目标值(K12000) Y3的OFF目标值(K2000) ← 高速计数器的经过值被复位 最大目标值(K14000) 3-418 K14000 K12000 K10000 K8000 K6000 K4000 K2000 0 时序图 时间 最大目标值(K14000) R3 R903A 和R903B Y0 Y1 Y2 Y3 当达到目标值时变为ON的输出线圈 与高速计数器匹配输出通道数量(n: K0~K3) 高速计数器目标值数据或存放数据的存储区起始地址 F166(HC1S) 目标值一致ON (带通道指定) 概述 程序示例 操作数 当指定的通道(HSC0~HSC3)经过值与目标值一致时, 指定的输出变为ON. 10 11 12 ST R 0 DF F166 (HC1S) K 0 K 10000 Y 0 触发器 D 3-419 A: 可以使用 N/A: 不可使用 数据寄存器 WX WY WR SV EV DT IX(*1) IY(*2) K H n N/A N/A N/A N/A N/A N/A N/A N/A A A N/A S A A A A A A A N/A A A A D N/A N/A N/A N/A N/A N/A N/A N/A N/A N/A N/A 继电器 索引变址 常数索引寄存器 操作数 定时器计数器 示例说明 目标值 经过值 F166指令完成(清除) 达到目标值时变为ON S n (*1)对于FPΣ,此处为I0~IC. (*2)对于FPΣ,此处为ID. 高速计数器控制标志的编号(R903A~R903D)随使用的通道而不同. FP-e/FPΣ/FP0 适用机型 梯形图程序 布尔形式 指令地址 标志状态 · 错误标志(R9007) 当以下情况时变为ON并且保持 · 错误标志(R9008) 当以下情况时瞬间变为ON 描述 将由S指定的数值设置为高速计数器的目标值. 当经过值与该目标值一致时, 指定的输出点Yn变为 ON. (以中断方式进行处理.) 当达到目标值时, 清除对目标值设置和匹配输出点的控制. 由S指定的32bit目标值的设置范围如下: FP0 K-8388608 ~ K8388607 (H FF800000 ~ H007FFFFF) FPΣ K-2147483648 ~ K2147483647 (H800000 ~ H7FFFFFFF) 执行本指令时, 将S的数值存放到目标值区. 允许指定的Yn范围是 Y0~Y7 - 使用索引寄存器指定数据区超出范围 - n指定的数值超出0~3 - S指定的数据超出允许范围 3-420 编程时的注意事项 从F166(HC1S)指令的执行条件(触发器)变为ON开始, 到目标值一致输出Yn变为ON为止, 相应高速计数 器控制标志在此过程中为ON. 在此期间, 不能执行其他高速计数器指令(F166~F176). 在经过值达到目标值之前, 即使执行硬件复位(经过值清0), 也不能清除目标值和目标值匹配输出.(经过 值被清为0) 对于指定的目标值匹配输出点Y, 不进行OT指令、KP指令或其他高级指令的双重输出检查. 使用RST指令或F0(MV)指令或同时成对执行F167(HC1R)指令, 可以将本指令的目标值匹配输出点变为 OFF. 如果在常规程序和中断程序中同时包含有对同一通道的程序代码, 则应确保不同时执行这些指令. 高速计数器控制标志有可能在扫描过程中被改变. 当高速计数器控的经过值等于设定的目标值时, 可以执行中断程序. 高速计数器目标值数据或存放数据的存储区起始地址 与高速计数器匹配输出通道数量(n: K0~K3) 当达到目标值时变为OFF的输出线圈 F167(HC1R) 概述 3-421 目标值 经过值 F167指令完成(清除) 达到目标值时变为OFF 目标值一致OFF (带通道指定) 当指定的通道(HSC0~HSC3)经过值与目标值一致时, 指定的输出变为OFF. 程序示例 操作数 10 11 12 ST R 0 DF F167 (HC1R) K 0 K - 200 Y 0 触发器 D A: 可以使用 N/A: 不可使用 数据寄存器 WX WY WR SV EV DT IX(*1) IY(*2) K H n N/A N/A N/A N/A N/A N/A N/A N/A A A N/A S A A A A A A A N/A A A A D N/A N/A N/A N/A N/A N/A N/A N/A N/A N/A N/A 继电器 索引变址 常数索引寄存器 操作数 定时器计数器 示例说明 S n (*1)对于FPΣ,此处为I0~IC. (*2)对于FPΣ,此处为ID. 高速计数器控制标志的编号(R903A~R903D)随使用的通道而不同. FP-e/FPΣ/FP0 适用机型 梯形图程序 布尔形式 指令地址 标志状态 · 错误标志(R9007) 当以下情况时变为ON并且保持 · 错误标志(R9008) 当以下情况时瞬间变为ON 描述 将由S指定的数值设置为高速计数器的目标值. 当经过值与该目标值一致时, 指定的输出点Yn变为 OFF. (以中断方式进行处理.) 当达到目标值时, 清除对目标值设置和匹配输出点的控制. 由S指定的32bit目标值的设置范围如下: FP0 K-8388608 ~ K8388607 (H FF800000 ~ H007FFFFF) FPΣ K-2147483648 ~ K2147483647 (H800000 ~ H7FFFFFFF) 执行本指令时, 将S的数值存放到目标值区. 允许指定的Yn范围是 Y0~Y7 - 使用索引寄存器指定数据区超出范围 - n指定的数值超出0~3 - S指定的数据超出允许范围 3-422 编程时的注意事项 从F167(HC1R)指令的执行条件(触发器)变为OFF开始, 到目标值一致输出Yn变为ON为止, 相应高速计数 器控制标志在此过程中为ON. 在此期间, 不能执行其他高速计数器指令(F166~F173). 在经过值达到目标值之前, 即使执行硬件复位(经过值清0), 也不能清除目标值和目标值匹配输出.(经过 值被清为0) 对于指定的目标值匹配输出点Y, 不进行OT指令、KP指令或其他高级指令的双重输出检查. 使用RST指令或F0(MV)指令或同时成对执行F166(HC1S)指令, 可以将本指令的目标值匹配输出点变为 OFF. 如果在常规程序和中断程序中同时包含有对同一通道的程序代码, 则应确保不同时执行这些指令. 高速计数器控制标志有可能在扫描过程中被改变. 当高速计数器控的经过值等于设定的目标值时, 可以执行中断程序. 指定用于输出脉冲的输出通道Yn(n: K0或K1) F168(SPD1) 位置控制 (梯形控制) 概述 程序示例 操作数 描述 注意 根据参数表的设置,从指定的输出通道(Y0或Y1)输出一个脉冲序列。 10 11 ST R 0 F168 (SPD1) DT 100 K 0 触发器 n 参数表存储区的起始地址S 数据寄存器 WX WY WR SV EV DT IX IY K H S N/A N/A N/A N/A N/A A N/A N/A N/A N/A A n N/A N/A N/A N/A N/A N/A N/A N/A A A N/A 操作数 索引变址 继电器 定时器/计数器 索引寄存器 常数 在相应的控制标志为OFF并且执行条件(触发器)为ON的情况下,从指定的输出通道(Y0或Y1)输出 一组脉冲序列. 控制代码、初始速度、最高速度、加/减速时间和目标值等参数由用户程序写入参数表. 参数表中 的数据内容请参阅下页说明. 根据指定的加/减速时间, 脉冲频率以一定变化率从初始速度切换到最高速度. 减速过程(通常为30 级)中, 频率变化的斜率和加速过程的相同. 相关的数据如下所示. ch0 DT9046,DT9047 (FP0-T32:DT90046,DT90047) ch1 DT9050,DT9051 (FP0-T32:DT90050,DT90051) R903B DT9044,DT9045 (FP0-T32:DT90044,DT90045) DT9048,DT9049 (FP0-T32:DT90048,DT90049) Y2 Y3 方向输出 R903A 通道号 控制标志 经过值 目标值 · 使用本指令时,在系统寄存器400中相应的通道设置处,应选择[不设置为高速计数器]。 · 在输出脉冲的过程中,如果执行RUN中改写程序,则实际发出的脉冲有可能多于设定值。 3-423 A: 可以使用 N/A: 不可使用 FP-e/FP0 适用机型 梯形图程序 布尔形式 指令地址 动作模式说明 参数表设置[S]~[S+6] 3-424 增量型<相对值控制> 绝对型<绝对值控制> S 控制代码 (*1) S+1 初始速度 Fmin(Hz) K40~K5000(Hz) S+2 最高速度 Fmax(Hz) K40~K9500(Hz) (*2) S+3 加/减速时间 t (ms) K30~K32767(ms) S+4 S+5 S+6 K0 固定指定"0" 目标值 (脉冲数量) K-8388608~K+8388607 输出脉冲 数量 减速时间加速时间 减少 脉冲输出ON 方向输出OFF 脉冲输出ON 方向输出ON负数 增加 脉冲输出ON 方向输出ON 脉冲输出ON 方向输出OFF正数 经过值 控制代码: H03 正转ON/反转OFF 控制代码: H02 正转OFF/反转ON 动作模式 目标值 根据目标值输出所设置的脉冲. 输出脉冲的数量等于目标值与当前值的差值. 减少 脉冲输出ON 方向输出OFF 脉冲输出ON 方向输出ON目标值<当前值 增加 脉冲输出ON 方向输出ON 脉冲输出ON 方向输出OFF目标值>当前值 经过值 控制代码: H13 正转ON/反转OFF 控制代码: H12 正转OFF/反转ON 动作模式 目标值 编程时的注意事项 如果常规程序和中断程序中都包含有对同一通道的程序代码, 则应确保两者不会被同时执行. 当使用脉冲输出功能控制单一方向的电机运行时, 请参考后附的示范程序. 应用事例 3-425 (*1) 由H常数(16进制)指定控制代码 脉冲宽度指定 0: 占空比50% 1: 固定脉冲宽度(约80us) (建议使用此项) 注) 2或更大的设置值将被等同于0. 动作模式及输出逻辑关系 00: 增量型不使用方向输出 02: 增量型正向OFF/反向ON 03: 增量型正向ON/反向OFF 10: 不使用绝对型方向输出 12: 绝对型正向OFF/反向ON 13: 绝对型正向ON/反向OFF (*2) 当脉冲宽度设置为占空比50%时, 最高频率为6kHz; 当脉冲宽度设置为固定宽度(约80us)时, 最高频率为9.5kHz DT0 H2 DT1 K1000 DT2 K7000 DT3 K300 DT4 K10000 DT5 DT6 0 H □□□ 标志状态 3-426 - 使用索引寄存器指定数据区超出范围 - n 的数值不为0或1 - S 的范围超限 - [S+1] < K40 - [S+1] > [S+2] - [S+5, S+4]的数值超出范围 · 错误标志(R9007) 当以下情况时变为ON并且保持 - 使用索引寄存器指定数据区超出范围 - n 的数值不为0或1 - S 的范围超限 - [S+1] < K40 - [S+1] > [S+2] - [S+5, S+4]的数值超出范围 · 错误标志(R9008) 当以下情况时瞬间变为ON 脉冲输出数量 10000 F168(SPD1) 位置控制 (原点返回) 概述 程序示例 操作数 描述 注意 根据参数表的设置,从指定的输出通道(Y0或Y1)输出一个脉冲序列。 10 11 ST R 0 F168 (SPD1) DT 100 K 0 触发器 n 参数表存储区的起始地址S 指定用于输出脉冲的输出通道Yn(n: K0或K1) 数据寄存器 WX WY WR SV EV DT IX IY K H S N/A N/A N/A N/A N/A A N/A N/A N/A N/A A n N/A N/A N/A N/A N/A N/A N/A N/A A A N/A 操作数 索引变址 继电器 定时器/计数器 索引寄存器 常数 在相应的控制标志为OFF并且执行条件(触发器)为ON的情况下,从指定的输出通道(Y0或Y1)输出 一组脉冲序列. 控制代码、初始速度、最高速度、加/减速时间和目标值等参数由用户程序写入参数表. 参数表中 的数据内容请参阅下页说明. 根据指定的加/减速时间, 脉冲频率以一定变化率从初始速度切换到最高速度. 减速过程(通常为30 级)中, 频率变化的斜率和加速过程的相同. 相关的数据如下所示. ch0 DT9046,DT9047 (FP0-T32: DT90046,DT90047) Y2 DT9052 bit2 (FP0-T32: DT90052) ch1 DT9050,DT9051 (FP0-T32: DT90050,DT90051) Y3 DT9052 bit6 (FP0-T32: DT90052) 原点 输入 通道号 控制 标志 经过值 目标值 方向 输出 近原点输入 R903B DT9044,DT9045 (FP0-T32: DT90044,DT90045) DT9048,DT9049 (FP0-T32: DT90048,DT90049) X0 X1 R903A · 使用本指令时,在系统寄存器400中相应的通道设置处,应选择[不设置为高速计数器]。 · 在输出脉冲的过程中,如果执行RUN中改写程序,则实际发出的脉冲有可能多于设定值。 3-427 A: 可以使用 N/A: 不可使用 FP-e/FP0 适用机型 梯形图程序 布尔形式 指令地址 动作模式说明 3-428 利用近原点和原点输入信号进行返回原点控制 持续输出脉冲, 直到原点信号(X0,X1)输入. 当在接近原点的位置需要减速时, 可以利用近原点输入信号 对DT9052的对应bit进行OFF→ON→OFF操作. 在动作过程中, 经过值区和设定值的数值是不确定的. 在动作完成之后, 经过值将变为0. 编程时的注意事项 当控制代码(低位)为H20~H23时, 无论减速过程已经结束或正在处理过程中, 原点输入信号在近原点 信号之后都有效. 当控制代码(低位)为H24~H27时, 原点输入信号只在近原点信号之后、并且到初始速度的减速过程已 经完成之后才有效。 即使已经出现原点输入信号, 执行本指令也会开始输出脉冲. 如果在加速过程中近原点输入信号有效, 则开始执行减速. 如果常规程序和中断程序中都包含有对同一通道的程序代码, 则应确保两者不会被同时执行. 当使用脉冲输出功能控制单一方向的电机运行时, 请参考后附的示范程序. 当出现近原点信号的输入时开始减速, 当输入原点信号时停止脉冲输出. 动作方式根据下页所示的控制 代码(低位)而不同. 只利用原点输入信号进行返回原点控制 近原点输入 原点输入 t 原点输入 t 当出现原点信号的输入时, 停止脉冲输出. 动作方式参照下页所示的控制代码H20~H23. 参数表设置[S]~[S+3] S 控制代码 (*1) S+1 初始速度 Fmin(Hz) K40~K5000(Hz) S+2 最高速度 Fmax(Hz) K40~K9500(Hz) (*2) S+3 加/减速时间 t (ms) K30~K32767(ms) 应用事例 3-429 (*1) 由H常数(16进制)指定控制代码 脉冲宽度指定 0: 占空比50% 1: 固定脉冲宽度(约80us) (建议使用此项) 注意: 当指定2或更大的数值时, 结果等同于0 动作模式及输出逻辑关系 20: 原点返回模式Ⅰ 原点返回不使用方向输出 22: 原点返回模式Ⅰ 原点返回方向输出OFF 23: 原点返回模式Ⅰ 原点返回方向输出ON 24: 原点返回模式Ⅱ 原点返回不使用方向输出 (只在近原点信号输入后, 原点输入信号有效) 26: 原点返回模式Ⅱ 原点返回方向输出OFF (只在近原点信号输入后, 原点输入信号有效) 27: 原点返回模式Ⅱ 原点返回方向输出ON (只在近原点信号输入后, 原点输入信号有效) 注) 24,26,27在CPU Ver2.0以后版本支持. (*2) 当脉冲宽度设置为占空比50%时, 最高频率为6kHz; 当脉冲宽度设置为固定宽度(约80us)时, 最高频率为9.5kHz DT0 H2 DT1 K1000 DT2 K7000 DT3 K300 H □□□ 标志状态 · 错误标志(R9007) 当以下情况时变为ON并且保持 - 使用索引寄存器指定数据区超出范围 - n 的数值不为0或1 - S 的范围超限 - [S+1] < K40 - [S+1] > [S+2] · 错误标志(R9008) 当以下情况时瞬间变为ON 使用脉冲输出指令(F168和F169)时的注意事项 3-430 当控制电机持续向单一方向旋转时, 请使用以下的示例程序. 当电机始终向单一方向旋转时, 如果内部经过值超出上限值, 则脉冲输出停止. 作为对策, 应该参照上述程序, 在执行F168(SPD1)和F169(PLS)之前将经过值复位(清零). 经过值清零 增量型控制 初始速度 最高速度 加/减速时间 目标值(总移动量) 位置控制开始 F169(PLS) 脉冲输出 (JOG点动运行: 带通道指定) 概述 程序示例 操作数 描述 注意 根据参数表的设置, 从指定的输出通道(Y0或Y1)输出脉冲。 10 11 ST R 10 F169 (PLS) DT 10 K 0 触发器 n 参数表存储区的起始地址S 指定用于输出脉冲的输出通道Yn(n: K0或K1) 数据寄存器 WX WY WR SV EV DT IX IY K H S N/A N/A N/A N/A N/A A N/A N/A N/A N/A A n N/A N/A N/A N/A N/A N/A N/A N/A A A N/A 操作数 索引变址 继电器 定时器/计数器 索引寄存器 常数 在相应的控制标志为OFF并且执行条件(触发器)为ON的情况下,从指定的输出通道(Y0或Y1)输出脉冲. 当执行条件保持为ON时, 持续输出脉冲. 通过在控制代码中设置增计数或减计数模式, 可以将本指令作为JOG(点动)运动控制. 在这种情况下, 需要组合设置控制码如H12(增计数, 方向输出OFF)或H22(减计数, 方向输出ON). 可以在每个扫描周期改变脉冲频率和占空比. (这些变更将从本指令执行后的下一个脉冲输出开始生效) 相关的数据如下所示. ch0 ch1 DT9044,DT9045 (使用FP0-T32时,为DT90044,DT90045) DT9048,DT9049 (使用FP0-T32时,为DT90048,DT90049) 经过值 R903A 通道号 控制标志 R903B · 使用本指令时,在系统寄存器400中相应的通道设置处,应选择[不设置为高速计数器]。 · 在输出脉冲的过程中,如果执行RUN中改写程序,则在改写的过程中停止脉冲输出。 3-431 A: 可以使用 N/A: 不可使用 使用增计数模式时, 当经过值超出H7FFFFF时, 停止输出脉冲. 使用减计数模式时, 当经过值超出H800000时, 停止输出脉冲. FP-e/FP0 适用机型 梯形图程序 布尔形式 指令地址 参数表设置[S]~[S+1] 3-432 S 控制代码 (*1) S+1 脉冲频率(Hz) K40~K10000(Hz) (*2) (*1) 由H常数(16进制)指定控制代码 脉冲宽度指定 0 : 固定脉冲宽度(约80us) (CPU ver2.1及以上) 1~9: 占空比10~90% (增量10%) 动作模式及输出逻辑关系 00: 无计数模式 10: 增计数模式无方向输出 12: 增计数模式无方向输出OFF 13: 增计数模式无方向输出ON 20: 减计数模式无方向输出 22: 减计数模式无方向输出ON 23: 减计数模式无方向输出OFF (*2) 脉冲频率设置范围: K40~K10000(Hz) 当[S+1]中设置的数值为K0~K39时, 脉冲频率将被设为40Hz(K40). H □□□ 标志状态 · 错误标志(R9007) 当以下情况时变为ON并且保持 · 错误标志(R9008) 当以下情况时瞬间变为ON - 使用索引寄存器指定数据区超出范围 - n 的数值不为0或1 编程时的注意事项 如果常规程序和中断程序中都包含有对同一通道的程序代码, 则应确保两者不会被同时执行. 当使用脉冲输出功能控制单一方向的电机运行时, 请参考前附的示范程序. F170(PWM) PWM脉冲输出 (带通道指定) 概述 程序示例 操作数 描述 注意 根据参数表的设置,从指定的输出通道(Y0或Y1)输出PWM脉冲。 10 11 ST R 10 F170 (PLS) DT 20 K 0 触发器 n 参数表存储区的起始地址S 指定用于输出脉冲的输出通道Yn(n: K0或K1) 数据寄存器 WX WY WR SV EV DT IX IY K H S N/A N/A N/A N/A N/A A N/A N/A N/A N/A A n N/A N/A N/A N/A N/A N/A N/A N/A A A N/A 操作数 索引变址 继电器 定时器/计数器 索引寄存器 常数 在相应的控制标志为OFF并且执行条件(触发器)为ON的情况下,从指定的输出通道(Y0或Y1)输出 PWM(脉宽调制)脉冲. 当执行条件保持为ON时, 持续输出脉冲. 可以通过用户程序改变由参数表指定的脉冲频率和占空比. 由于在最大及最小值附近会出现输出延迟, 占空比可能与设置值略有差异. 可以在每个扫描周期内改变占空比. 而频率设置只在开始执行本指令时生效. (因为从下一个脉冲输出 开始生效) 相关的数据如下所示. ch0 ch1 R903B R903A 通道号 控制标志 · 使用本指令时,在系统寄存器400中相应的通道设置处,应选择[不设置为高速计数器]。 · 在输出脉冲的过程中,如果执行RUN中改写程序,则在改写的过程中停止脉冲输出。 · 如果在常规程序和中断程序中包含有对同一通道操作的程序代码,则应确保两者不被 同时执行。 3-433 A: 可以使用 N/A: 不可使用 FP-e/FP0 适用机型 梯形图程序 布尔形式 指令地址 参数表设置[S]~[S+1] 3-434 S 控制代码 F0~H16(*1) S+1 占空比(%) K1~K999(0.1%~99.9%) (*1) 由H常数(16进制)指定控制代码(频率设置) H11: 频率1kHz (周期1.0ms) H12: 频率714Hz (周期1.2ms) H13: 频率500Hz (周期2.0ms) H14: 频率400Hz (周期2.5ms) H15: 频率200Hz (周期5.0ms) H16: 频率100Hz (周期10ms) H0 : 频率38Hz (周期26ms) H1 : 频率19Hz (周期52ms) H2 : 频率9.5Hz (周期105ms) H3 : 频率4.8Hz (周期210ms) H4 : 频率2.4Hz (周期420ms) H5 : 频率1.2Hz (周期840ms) H6 : 频率0.6Hz (周期1.6s) H7 : 频率0.3Hz (周期3.4s) H8 : 频率0.15Hz(周期6.7s) 控制码H11到H16在CPU Ver2.0及以上的版本中支持 标志状态 · 错误标志(R9007) 当以下情况时变为ON并且保持 · 错误标志(R9008) 当以下情况时瞬间变为ON - 使用索引寄存器指定数据区超出范围 - n 的数值不为0或1 - 由[S]设置的频率超出规格范围 - 由[S+1]设定的占空比为100%或更高 F171(SPDH) 脉冲输出控制 (梯形控制: 带通道指定) 概述 程序示例 操作数 描述 根据参数表的设置,从指定的输出通道(ch0或ch2)输出脉冲。 10 11 12 ST R 10 DF F171 (SPDH) DT 100 K 0 触发器 n 参数表存储区的起始地址S 指定用于输出脉冲的输出通道Yn(n: K0或K2) 数据寄存器 WX WY WR SV EV DT K H S N/A N/A N/A N/A N/A A N/A N/A A n N/A N/A N/A N/A N/A N/A A A N/A N/A N/A 操作数 索引变址 继电器 定时器/计数器 索引寄存器 常数 IX 当相关控制标志为OFF并且执行条件(触发器)变成ON时, 从指定的通道(ch0或者ch2)输出脉冲. CW PLS CCW SIGN CW PLS CCW SIGN Y3 通道号 输出 输出方式 ch0 ch2 Y0 Y1 Y4 3-435 A: 可以使用 N/A: 不可使用 利用下页所示参数表中的”S”到”S+1”指定控制代码、初速度、最大速度、加/减速时间、目标值. 根据加/减速时间从初速度到最高速改变频率. 在减速过程中, 频率的改变和加速时的斜率是一样的. 如果频率被设置成50kHz或者更高, 指定占空比为1/4(25%). FP∑ 适用机型 梯形图程序 指令地址 布尔形式 使用的数据区 3-436 增量型<相对值控制> 输出由目标值设定的数量的脉冲.. 绝对型<绝对值控制> 根据当前值与目标值的差值, 输出脉冲.(当前值与目标值的差值即为输出脉冲的数量) DT90044, DT90045 DT90046, DT90047 DT900200, DT90201 DT90202, DT90203 通道号 控制标志 经过值 目标值 R903Ach0 ch2 R903C 动作模式 选择方式 PLS + SIGN 目标值 正向: ON 反向: OFF 脉冲输出ON 方向输出ON 脉冲输出ON 方向输出OFF方向输出ON 脉冲输出ON 递增 脉冲输出ON 正数 负数 从CW输出脉冲 从CCW输出脉冲 CW/CCW 方向输出OFF 经过值 PLS + SIGN 正向: OFF 反向: ON 递减 选择方式 PLS + SIGN 目标值 正向: ON 反向: OFF 脉冲输出ON 方向输出ON 脉冲输出ON 方向输出OFF CW/CCW 方向输出OFF 经过值 PLS + SIGN 正向: OFF 反向: ON 目标值大于 当前值 目标值小于 当前值 从CW输出脉冲 从CCW输出脉冲 方向输出ON 脉冲输出ON 递增 脉冲输出ON 递减 编程时的注意事项 使用本指令时, 在对应系统寄存器400和401设置中该通道为”不设置为高速计数器” 在RUN模式下当脉冲输出运行时, 如果改写参数, 那么实际输出的脉冲数可能多于设定的脉冲数. 如果常规部分的程序和中断程序的代码对同一通道操作, 则应该确保两部分不同时执行. 在圆弧插补控制标志R904E为ON的情况下, 脉冲输出指令F166~F176不能执行. 在设置加/减速时间、阶梯数量和初始速度时,应使用满足以下公式的数值.当加/减速过程包含 30级时,请以30ms为单位进行设置.当该过程有60级时,请以60ms为单位. 加/减速时间: t[ms]≥(阶梯数×1000)/初始速度f0[Hz] 3-437 数据表设置 输出脉冲 数量 减速时间加速时间 S S+1 控制代码 (*1) S+2 S+3 初始速度 Fmin(Hz) (*2) S+4 S+5 最高速度 Fmax(Hz) (*2) S+6 S+7 加/减速时间 t (ms) (*3) S+8 S+9 S+10 S+11 K0 目标值 (脉冲数量) (*4) (*1) 由H常数(16进制)指定控制代码 0: 固定 加/减速段数指定 0: 30段 1: 60段 (Ver. 2.0及以上) 占空比(ON脉冲宽度) 0: 占空比1/2 (50%) 1: 占空比1/4 (25%) 频率范围 0: 1.5Hz~9.8kHz 1: 48Hz~100kHz 2: 191Hz~100kHz 动作模式及输出逻辑关系 00: 增量型 CW/CCW 02: 增量型 PLS+SIGN (正向OFF/反向ON) 03: 增量型 PLS+SIGN (正向ON/反向OFF) 10: 绝对型 CW/CCW 12: 绝对型 PLS+SIGN (正向OFF/反向ON) 13: 绝对型 PLS+SIGN (正向ON/反向OFF) (*2) 频率范围(Hz) ”K值表示”, 1.5Hz到9.8kHz [K1到K9800(单位:Hz)] (最大误差在9.8kHz时约-0.9 kHz) * 设定”K1”对应1.5Hz 48Hz到100kHz [K48到K100000(单位: Hz)] (最大误差在100kHz时约-3 kHz) 191Hz到100kHz [K191到K100000(单位: Hz)] (最大误差在100kHz时约-0.8 kHz) (*3) 加/减速时间(ms)”K值表示” 30段: K30到K32767 60段: K60到K32767(版本2.0以后) (*4) 目标值 K-2147483648 到K2147483647 控制码 H □□□□□□□□ 标志状态 3-438 · 错误标志(R9007) 当以下情况时变为ON并且保持 - 使用索引寄存器指定数据区超出范围 - n 的数值不为0或2 - [S, S+1]到[S+4, S+5] 的数据超出范围 - [S+2, S+3] > [S+4, S+5] - [S+8, S+9]的数值超出范围 · 错误标志(R9008) 当以下情况时瞬间变为ON 应用示例 加/减速时间设置 加/减速时间值应大于或等于根据以下公式计算出的数值. 加/减速时间(ms) ≥ 段数×100 / 频率f(Hz) 根据段数, 加/减速时间有可能长于设定值. 例: 根据以下公式, 当加/减速时间为100ms、段数为30时,实际的加/减速时间为120ms. 100ms ÷ 30段=3.3ms → 4ms 4ms×30段=120ms 输出脉冲数量 100000 使用30级时: 使用60级时: F171(SPDH) 脉冲输出控制 (原点返回控制: 带通道指定) 概述 程序示例 操作数 描述 根据参数表的设置,从指定的输出通道(ch0或ch2)输出脉冲。 10 11 12 ST R 10 DF F171 (SPDH) DT 100 K 2 触发器 n 参数表存储区的起始地址S 指定用于输出脉冲的输出通道Yn(n: K0或K2) 数据寄存器 WX WY WR SV EV DT K H S N/A N/A N/A N/A N/A A N/A N/A A n N/A N/A N/A N/A N/A N/A A A N/A N/A N/A 操作数 索引变址 继电器 定时器/计数器 索引寄存器 常数 I 当相关控制标志为OFF并且执行条件(触发器)变成ON时, 从指定的通道(ch0或者ch2)输出脉冲. CW PLS CCW SIGN CW PLS CCW SIGN 偏差计数器清零 偏差计数器清零 Y2 Y5 Y1 Y3 Y4 通道号 输出 输出方式 Y0 ch0 ch2 3-439 A: 可以使用 N/A: 不可使用 利用下页所示参数表中的”S”到”S+1”指定控制代码、初速度、最大速度、加/减速时间、目标值. 根据加/减速时间从初速度到最高速改变频率. 在减速过程中, 频率的改变和加速时的斜率是一样的. 如果频率被设置成50kHz或者更高, 指定占空比为1/4(25%). FP∑ 适用机型 梯形图程序 布尔形式 指令地址 使用的数据区 3-440 返回原点 脉冲连续发出直到原点信号(X2或者X5)输入.为了在近原点减速,当近原点信号输入时, 应设定 特殊数据寄存器DT90052 相应的位由OFF→ON→OFF. 在返回原点过程中, 经过值中的数值与当前值不同. 当原点返回完成, 经过值变成0. 近原点 原点输入 DT90052 bit2 DT90052 bit4 X2 X5 R903Ach0 ch2 R903C 通道号 控制标志 经过值 目标值 DT90044, DT90045 DT90046, DT90047 DT900200, DT90201 DT90202, DT90203 动作模式 利用近原点输入和原点输入信号返回原点 当近原点信号输入时减速开始,在原点输入后脉冲输出停止.操作数由下页所述的控制代码(在较 低位)决定. 只利用原点输入信号返回原点 当原点信号输入时脉冲输出停止.使用下页所述的控制代码H20到H27(在较低位). 近原点信号输入 原点信号输入 原点信号输入 3-441 数据表设置 S S+1 控制代码 (*1) S+2 S+3 初始速度 Fmin(Hz) (*2) S+4 S+5 最高速度 Fmax(Hz) (*2) S+6 S+7 加/减速时间 t (ms) (*3) S+8 S+9 偏差计数器 清零信号(ms) (*4) (*1) 由H常数(16进制)指定控制代码 0: 固定 加/减速段数指定 0: 30段 1: 60段 (Ver. 2.0及以上的C32T2和C28P2) 占空比(ON脉冲宽度) 0: 占空比1/2 (50%) 1: 占空比1/4 (25%) 频率范围 0: 1.5Hz~9.8kHz 1: 48Hz~100kHz 2: 191Hz~100kHz 动作模式及输出逻辑关系 20: 原点返回模式Ⅰ CW 21: 原点返回模式Ⅰ CCW 22: 原点返回模式Ⅰ 方向输出OFF 23: 原点返回模式Ⅰ 方向输出ON 24: 原点返回模式Ⅰ CW + 偏差计数器复位 25: 原点返回模式Ⅰ CCW + 偏差计数器复位 26: 原点返回模式Ⅰ 方向输出OFF + 偏差计数器复位 27: 原点返回模式Ⅰ 方向输出ON + 偏差计数器复位 30: 原点返回模式Ⅱ CW 31: 原点返回模式Ⅱ CCW 32: 原点返回模式Ⅱ 方向输出OFF 33: 原点返回模式Ⅱ 方向输出ON 34: 原点返回模式Ⅱ CW + 偏差计数器复位 35: 原点返回模式Ⅱ CCW + 偏差计数器复位 36: 原点返回模式Ⅱ 方向输出OFF + 偏差计数器复位 37: 原点返回模式Ⅱ 方向输出ON + 偏差计数器复位 (*2) 频率范围(Hz) ”K值表示”, 1.5Hz到9.8kHz [K1到K9800(单位:Hz)] (最大误差在9.8kHz时约-0.9 kHz) * 设定”K1”对应1.5Hz 48Hz到100kHz [K48到K100000(单位: Hz)] (最大误差在100kHz时约-3 kHz) 191Hz到100kHz [K191到K100000(单位: Hz)] (最大误差在100kHz时约-0.8 kHz) (*3) 加/减速时间(ms)”K值表示” 30段: K30到K32767 60段: K60到K32767(版本2.0以后,仅C32T2和C28P2) (*4) 偏差计数器清零信号 0.5ms到100ms [K0到K100] 设定值+误差(≤0.5ms) 不使用本信号或指定0.5ms时, 设置为K0. 控制码 H □□□□□□□□ 标志状态 3-442 · 错误标志(R9007) 当以下情况时变为ON并且保持 - 使用索引寄存器指定数据区超出范围 - n 的数值不为0或2 - [S, S+1]到[S+4, S+5] 的数据超出范围 - [S+2, S+3] > [S+4, S+5] · 错误标志(R9008) 当以下情况时瞬间变为ON 应用示例 加/减速时间设置 加/减速时间值应大于或等于根据以下公式计算出的数值. 加/减速时间(ms) ≥ 段数×100 / 频率f(Hz) 根据段数, 加/减速时间有可能长于设定值. 例: 根据以下公式, 当加/减速时间为100ms、段数为30时,实际的加/减速时间为120ms. 100ms ÷ 30段=3.3ms → 4ms 4ms×30段=120ms 编程时的注意事项 当控制代码(较低位)是H20到H27时(原点返回模式I), 无论有无近原点信号输入、减速过程是否结束 或者在减速过程之中, 原点信号都有效. 当控制代码(较低位)是H30到H37时(原点返回模式Ⅱ), 只有在近原点信号输入、减速过程结束之后, 原点信号才有效. 即使已有原点信号输入,执行本指令仍能输出脉冲. 使用本指令时, 在对应系统寄存器400和401设置中该通道为”不设置为高速计数器” 在RUN模式下当脉冲输出运行时, 如果改写参数, 那么实际输出的脉冲数可能多于设定的脉冲数. 如果常规部分的程序和中断程序的代码对同一通道操作, 则应该确保两部分不同时执行. 在圆弧插补控制标志R904E为ON的情况下, 脉冲输出指令F166~F176不能执行. 进行软件复位、禁止计数、停止脉冲输出或近原点处理时,请参照并使用F0(MV)指令. 在设置加/减速时间、阶梯数量和初始速度时,应使用满足以下公式的数值.当加/减速过程包含 30级时,请以30ms为单位进行设置.当该过程有60级时,请以60ms为单位. 加/减速时间: t[ms]≥(阶梯数×1000)/初始速度f0[Hz] F172(PLSH) 脉冲输出控制 (JOG控制: 带通道指定) 概述 程序示例 操作数 描述 根据参数表的设置,从指定的输出通道(ch0或ch2)输出脉冲。 10 11 ST R 10 F172 (PLSH) DT 10 K 0 触发器 n 参数表存储区的起始地址S 指定用于输出脉冲的输出通道Yn(n: K0或K2) 数据寄存器 WX WY WR SV EV DT K H S N/A N/A N/A N/A N/A A N/A N/A A n N/A N/A N/A N/A N/A N/A A A N/A N/A N/A 操作数 索引变址 继电器 定时器/计数器 索引寄存器 常数 I 当相关控制标志为OFF并且执行条件(触发器)变成ON时, 从指定的通道(ch0或者ch2)输出脉冲. 在执行条件为ON的状态下持续输出脉冲. CW PLS CCW SIGN CW PLS CCW SIGN Y3 通道号 输出 输出方式 ch0 ch2 Y0 Y1 Y4 3-443 A: 可以使用 N/A: 不可使用 通过在控制代码中指定加计数或者减计数,可将该指令作为JOG操作指令. 可以在每个扫描周期内改变脉冲频率, 也可以在不同时间修改目标值. 但是在指令执行的过程中, 不能 改变控制代码. 如果频率被设置成50kHz或者更高, 应指定占空比为1/4(25%). FP∑ 适用机型 梯形图程序 布尔形式 指令地址 使用的数据区 3-444 R903Ach0 ch2 R903C 通道号 控制标志 经过值 DT90044, DT90045 DT900200, DT90201 编程时的注意事项 在圆弧插补控制标志R904E为ON的情况下, 脉冲输出指令F166~F176不能执行. 使用本指令时, 在对应系统寄存器400和401设置中该通道为”不设置为高速计数器” 在RUN模式下当脉冲输出运行时, 如果改写程序, 在改写过程中停止输出脉冲. 只能在版本2.0及以后版本(C32T2,C28P2)中设置目标值. 如果在常规部分的程序和中断程序的中执行相同的代码, 则应该确保两部分不同时执行. 在指令执行过程中, 如果向频率参数区中写入超出指定范围的数值, 实际的频率输出会被调整 为最大值或最小值. 如果在开始执行时出现这种情况, 则会产生运算错误. 标志状态 · 错误标志(R9007) 当以下情况时变为ON并且保持 - 使用索引寄存器指定数据区超出范围 - n 的数值不为0或2 - [S, S+1] 的数据超出范围 · 错误标志(R9008) 当以下情况时瞬间变为ON 3-445 数据表设置 (*1) 由H常数(16进制)指定控制代码 0: 固定 目标值设置 0: 无目标值模式 1: 到达目标值停止模式 占空比(ON脉冲宽度) 0: 占空比1/2 (50%) 1: 占空比1/4 (25%) 频率范围 0: 1.5Hz~9.8kHz 1: 48Hz~100kHz 2: 191Hz~100kHz 动作模式及输出逻辑关系 00: 无计数 CW 01: 无计数 CCW 10: 增计数 CW 12: 增计数 方向输出OFF 13: 增计数 方向输出ON 21: 减计数 CCW 22: 减计数 方向输出OFF 23: 减计数 方向输出ON (*2) 频率范围(Hz) ”K值表示”, 1.5Hz到9.8kHz [K1到K9800(单位:Hz)] (最大误差在9.8kHz时约-0.9 kHz) * 设定”K1”对应1.5Hz 48Hz到100kHz [K48到K100000(单位: Hz)] (最大误差在100kHz时约-3 kHz) 191Hz到100kHz [K191到K100000(单位: Hz)] (最大误差在100kHz时约-0.8 kHz) (*3) 目标值(绝对值) (版本2.0以后) 用于到达目标值停止模式.(只使用绝对值) 目标值设置的范围如下表所示. 如果指定的数值超出范围, 则实际的输出脉冲数可能 与设定值不同. 在无计数模式下, 忽略目标值. 控制码H □□□□□□□□ S S+1 控制代码 (*1) S+2 S+3 频率(Hz) (*2) S+4 S+5 目标值 (*3) S S+1 控制代码 (*1) S+2 S+3 频率(Hz) (*2) 无目标值模式 达到目标值停止模式 增计数 减计数 输出模式 允许指定的目标值范围 指定值小于当前值 指定值大于当前值 F173(PWMH) PWM脉冲输出控制 (带通道指定) 概述 程序示例 操作数 描述 根据参数表的设置,从指定的输出通道(ch0或ch2)输出PWM脉冲。 10 11 ST R 10 F173 (PWMH) DT 20 K 0 触发器 n 参数表存储区的起始地址S 指定用于输出脉冲的输出通道Yn(n: K0或K2) 数据寄存器 WX WY WR SV EV DT K H S N/A N/A N/A N/A N/A A N/A N/A A n N/A N/A N/A N/A N/A N/A A A N/A N/A N/A 操作数 索引变址 继电器 定时器/计数器 索引寄存器 常数 I 当相关控制标志为OFF并且执行条件(触发器)变成ON时, 从指定的通道(ch0或者ch2)输出PWM脉冲. 在执行条件为ON的状态下持续输出PWM脉冲. 数据表如下所示, 可以通过用户程序指定频率和占空比的数值. 特别是在接近最大值或最小值时, 根据负载的电压及电流的情况, 占空比有可能偏离指定比率. 可以在每个扫描周期内改变脉冲频率, 也可以在不同时间修改目标值. 但是在指令执行的过程中, 不能改变控制代码. 3-446 A: 可以使用 N/A: 不可使用 使用的数据区 Y0ch0 ch2 Y3 通道号 输出 控制标志 R903A R903C FP∑ 适用机型 梯形图程序 布尔形式 指令地址 3-447 编程时的注意事项 在圆弧插补控制标志R904E为ON的情况下, 脉冲输出指令F166~F176不能执行. 使用本指令时, 在对应系统寄存器400和401设置中该通道为”不设置为高速计数器” 在RUN模式下当脉冲输出运行时, 如果改写程序, 在改写过程中停止输出脉冲. 如果在常规部分的程序和中断程序的中执行相同的代码, 则应该确保两部分不同时执行. 在指令执行过程中, 如果向频率参数区中写入超出指定范围的数值, 实际的占空比输出会被调整 为最大值或最小值. 如果在开始执行时出现这种情况, 则会产生运算错误. 标志状态 · 错误标志(R9007) 当以下情况时变为ON并且保持 - 使用索引寄存器指定数据区超出范围 - n 的数值不为0或2 - 由[S]指定频率超出范围 - [S+1] 指定的数值大于100%(K100). (在指令开始执行时) · 错误标志(R9008) 当以下情况时瞬间变为ON 3-448 数据表设置 (*1) 由K常数(10进制)指定控制代码 S 控制代码 S+1 占空比 (*2) 由K常数(10进制)指定占空比 当控制代码为K0到K19时, 占空比为K0到K999(0.0%~99.9%) 当控制代码为K20到K24时, 占空比为K0到K990(0%~99%) 以1%(K10)为单位指定数值, 小数点以下的数字被四舍五入. K 频率(Hz) 周期(ms) K0 1.5 666.7 K1 2.0 502.5 K2 4.1 245.7 K3 6.1 163.9 K4 8.1 122.9 K5 9.8 102.4 K6 19.5 51.2 K7 48.8 20.5 K8 97.7 10.2 K9 201.6 5.0 K10 403.2 2.5 K11 500.0 2.0 K12 694.4 1.4 K13 1.0k 1.0 K14 1.3k 0.8 K15 1.6k 0.6 K16 2.1k 0.5 K17 3.1k 0.3 K18 6.3k 0.2 K19 12.5k 0.1 K 频率(Hz) 周期(ms) K20 15.6k 0.06 K21 20.8k 0.05 K22 25.0k 0.04 K23 31.3k 0.03 K24 41.7k 0.02 分辨率1/1000 分辨率1/100 F174(SP0H) 脉冲输出控制 (可选择数据表控制:带通道指定) 概述 程序示例 操作数 描述 根据参数表的设置,从指定的输出通道(ch0或ch2)输出脉冲。 10 11 12 ST R 10 DF F174 (SP0H) DT 100 K 0 触发器 n 参数表存储区的起始地址S 指定用于输出脉冲的输出通道Yn(n: K0或K2) 数据寄存器 WX WY WR SV EV DT K H S N/A N/A N/A N/A N/A A N/A N/A A n N/A N/A N/A N/A N/A N/A A A N/A N/A N/A 操作数 索引变址 继电器 定时器/计数器 索引寄存器 常数 I 当相关控制标志为OFF并且执行条件(触发器)变成ON时, 按照从S开始的数据表中的内容, 从指定的 通道(ch0或者ch2)输出脉冲. CW PLS CCW SIGN CW PLS CCW SIGN Y1 Y3 Y4 Y0 ch0 ch2 通道号 输出 输出方式 3-449 A: 可以使用 N/A: 不可使用 当高速计数器的经过值达到参数表中的目标值时,切换脉冲频率(执行中断程序). 当经过值与最终的目标值一致时, 停止脉冲输出. 使用F0(MV)指令控制高速计数器强制脉冲输出停止. DT90044, DT90045 DT90046, DT90047 DT900200, DT90201 DT90202, DT90203 通道号 控制标志 经过值 目标值 R903Ach0 ch2 R903C 使用数据表 FP∑ 适用机型 梯形图程序 指令地址 布尔形式 3-450 编程时的注意事项 从F174(SP0H)指令的执行条件变为ON开始到脉冲输出结束为止, 高速计数器控制标志R903A(R903C) 保持ON. 在高速计数器控制标志R903A(R903C)为ON的状态下,不能执行使用此标志的高速计数器及脉冲输出 指令F166~F176. 在圆弧插补控制标志R904E为ON的情况下, 脉冲输出指令F166~F176不能执行. 当指定的控制代码或频率1不在允许范围内时,会产生运算错误. (如果频率1的值是0,则不执行该 指令的操作即结束.) 当频率2或之后的频率指定为0或超出允许范围时, 停止输出脉冲. 如果在脉冲输出过程中参数表的指针超出数据寄存器DT的范围, 则脉冲输出控制停止, 并且高速 计数器控制标志R903A(R903C)变为OFF. 应始终确保指定的目标值在下页所示的范围内. 如果指定的数值超出允许范围, 则实际输出的脉冲 数量可能与指定的数值不同. 如果定时中断或高速计数器中断程序在运行,或者同时使用PC-link功能,应使用不高于80kHz的频率. 标志状态 · 错误标志(R9007) 当以下情况时变为ON并且保持 - 使用索引寄存器指定数据区超出范围 - n 的数值不为0或2 - 控制代码或频率1超出设置范围 · 错误标志(R9008) 当以下情况时瞬间变为ON 3-451 数据表设置 (*1) 由H常数(16进制)指定控制代码 高位字 0: 固定 占空比(ON脉冲宽度) 0: 占空比1/2 (50%) 1: 占空比1/4 (25%) 频率范围 0: 1.5Hz~9.8kHz 1: 48Hz~100kHz 2: 191Hz~100kHz 动作模式及输出逻辑关系 0: 增量型 指定移动量(脉冲数量) 1: 绝对值型 指定目标值(绝对数值) 输出模式及输出逻辑关系 0: CW (加计数) 1: CCW (减计数) 2: PLS+SIGN(正向OFF) (加计数) 3: PLS+SIGN(反向ON) (减计数) 4: PLS+SIGN(正向ON) (加计数) 5: PLS+SIGN(反向OFF) (减计数) (*2) 频率范围(Hz) ”K值表示”, 1.5Hz到9.8kHz [K1到K9800(单位:Hz)] (最大误差在9.8kHz时约-0.9 kHz) * 设定”K1”对应1.5Hz 48Hz到100kHz [K48到K100000(单位: Hz)] (最大误差在100kHz时约-3 kHz) 191Hz到100kHz [K191到K100000(单位: Hz)] (最大误差在100kHz时约-0.8 kHz) (*3) 目标值(K-2147483648~K2147483647) 指定的32bit目标值的设置范围如下表所示. 控制码 H □□□□□□□□ [S] 控制代码 (*1) [S+2] 频率1 (*2) [S+4] 目标值1 (脉冲数量) (*3) [S+6] 频率2 [S+8] 目标值2(脉冲数量) [S+2n] 频率n [S+2(n+1)] 目标值n(脉冲数量) [S+2(n+2)] K0 参数表结束 (脉冲输出停止) 动作模式 输出方式 增计数 指定正数 减计数 指定负数 增计数 指定值大于当前值 减计数 指定值小于当前值 控制代码 增量型 绝对值型 允许目标值范围 3-452 应用示例 [动作内容] 1. 当F174(SP0H)指令的执行条件(触发器)R10变成ON时,, 从1000Hz开始由指定通道CH0输出脉冲. 2. 当以频率1000Hz计到1000个脉冲时,频率切换到2500Hz. 3. 当以频率2500Hz计到3000个脉冲时,频率切换到5000Hz. 4. 当以频率5000Hz计到8000个脉冲时,频率切换到1000Hz. 5. 当以计到10000个脉冲时,脉冲输出停止. [设置及程序] 频率(速度) (Hz) 高速计数器经过值 (总移动量) 当F174(SP0H)执行条件(触点)R10变成ON时, 高速计数器控制标志位R903A(R903C)变成ON; 当经过值达到10000时, 脉冲输出停止, R903A(R903C)变成OFF. 频率范围从191Hz 到100 kHz ,占空比1/4 (25%),操作模式是增量型, 输出方式是CW. 控制代码: H1200 频率1 : 1000Hz 目标值1 : 1000脉冲 频率2 : 2500Hz 目标值2 : 2000脉冲 频率3 : 5000Hz 目标值3 : 5000脉冲 频率4 : 1000Hz 目标值4 : 2000脉冲 停止脉冲输出 脉冲输出控制 F175(SPSH) 脉冲输出控制 (直线插补) 概述 程序示例 操作数 描述 根据参数表的设置,从通道ch0和ch2输出脉冲, 以直线路径达到目标位置。 10 11 12 ST R 10 DF F175 (SPSH) DT 100 K 0 触发器 n 参数表存储区的起始地址S 0: 固定 数据寄存器 WX WY WR SV EV DT K H S N/A N/A N/A N/A N/A A N/A N/A A n N/A N/A N/A N/A N/A N/A A A N/A N/A N/A 操作数 索引变址 继电器 定时器/计数器 索引寄存器 常数 I 当相关控制标志为OFF并且执行条件(触发器)变成ON时, 从ch0(X轴)和ch2(Y轴)同时输出脉冲. CW PLS CCW SIGN CW PLS CCW SIGN Y1 Y4 ch0 (X轴) ch2 (Y轴) Y3 通道号 输出 输出方式 Y0 3-453 A: 可以使用 N/A: 不可使用 在程序中按照下页所示参数表中的”S”到”S+11”指定控制代码、初速度、最大速度、加/减速时间、目标值. 如果频率被设置成50kHz或者更高, 指定占空比为1/4(25%). DT90044, DT90045 DT90046, DT90047 DT90200, DT90201 DT90202, DT90203 通道号 控制标志 经过值 目标值 R903Ach0 ch2 R903C 使用数据表 FP∑ 适用机型 梯形图程序 指令地址 布尔形式 3-454 编程时的注意事项 指定的目标值和移动距离应该在以下范围之内. -8,388,608 ~ +8,388,607 当与其他位置控制指令如F171指令一起使用时, 在这些指令中也应在上述范围内指定目标值. 当实际应用中有精度要求时, 应确认实际的机械设备情况. 在圆弧插补控制标志R904E为ON的情况下, 脉冲输出指令F166~F176不能执行. 如果在常规部分的程序和中断程序的中执行相同的代码, 则应该确保两部分不同时执行. 使用本指令时, 在对应系统寄存器400和401设置中该通道为”不设置为高速计数器” 在RUN模式下当脉冲输出运行时, 如果改写程序, 在改写过程中停止输出脉冲. 标志状态 · 错误标志(R9007) 当以下情况时变为ON并且保持 - 使用索引寄存器指定数据区超出范围 - n 的数值不为0 - 数据表中[S ,S+1]~[S10,S+11]超出指定范围 - 合成速度指定 初始速度[S+2,S+3] >最高速度[S+2,S+3] - 合成速度指定 最高速度[S+4,S+5] > 100kHz - 在指定为增量型模式情况下, “当前值 + 移动量” 超出-8,388,608 ~ +8,388,607的范围 - 在指定为绝对值型模式情况下, 目标值超出 -8,388,608 ~ +8,388,607的范围 · 错误标志(R9008) 当以下情况时瞬间变为ON 3-455 数据表设置 (*1) 由H常数(16进制)指定控制代码 0: 固定 占空比(ON脉冲宽度) 0: 占空比1/2 (50%) 1: 占空比1/4 (25%) 0: 固定 动作模式及输出逻辑关系 00: 增量型 CW/CCW 02: 增量型 PLS+SIGN(正向OFF/反向ON) 03: 增量型 PLS+SIGN(正向ON/反向OFF) 10: 绝对值型 CW/CCW 12: 绝对值型 PLS+SIGN(正向OFF/反向ON) 13: 绝对值型 PLS+SIGN(正向ON/反向OFF) (*2) 合成速度(初始速度, 最高速度) (Hz) ”K值表示” 1.5Hz到100kHz [K1到K100000] 但是, 1.5Hz只对于0°或90°. 设置K1指定1.5Hz. 如果分速度低于各频率范围的最低速度, 则速度将被调整为合适的速度, 因此在使用时请注意.(*6) 如果定时中断或高速计数器中断程序在运行,或者同时使用PC-link功能,应使用不高于60kHz的频率. 如果设置的初始速度等于最高速度, 则脉冲输出时没有加/减速过程. 设置的合成速度应使各轴的分速度不低于1.5Hz. 合成速度(初始速度): 小于30kHz 控制码 H □□□□□□□□ [S] 控制代码 (*1) [S+2] 合成速度 初始速度 Fmin(Hz) (*2) 数据设置区 [S+4] 合成速度 最高速度 Fmax(Hz) (*2) [S+6] 加/减速时间 T(ms) (*3) 由用户程序设置 [S+8] X轴(ch0)目标值(移动距离) (*4) [S+10] Y轴(ch2)目标值(移动距离) (*4) [S+12] X轴(ch0)分速度 初始速度 Fxmin(Hz) [S+14] X轴(ch0)分速度 最高速度 Fxmax(Hz) [S+16] Y轴(ch2)分速度 初始速度 Fymin(Hz) 运算结果保持区 [S+18] Y轴(ch2)分速度 最高速度 Fymax(Hz) [S+20] X轴(ch0)频率范围 [S+21] Y轴(ch2)频率范围 [S+22] X轴(ch0)加/减速步数 (*7) [S+23] Y轴(ch2)加/减速步数 (*7) (*5) (*6) 存放指令执行后计算出的 各轴分速度等参数 S+1 S 3-456 (*3) 加/减速时间(ms) ”K值表示” K0到K32767 如果设置为0, 则以初始速度(合成速度)输出脉冲, 没有加/减速. (*4) 目标值 K-8388608到K8388607 当仅是控制一轴时, a) 在增量型控制模式下, 对该轴设定的目标值不能使运算为0. b) 在绝对值型控制模式下,对该轴设定的目标值不能使运算与当前值相同. (*5) 分速度(各轴的初始速度和最高速度) 以2个字存放的实数. X轴的分速度 = Y轴的分速度 = 例: 即使初始速度被修正(参阅*6), 计算数值也被存放在运算结果存储区. (*6) 频率范围 系统自动为各轴的分速度选择对应的频率范围. 范围0: 1.5Hz ~ 9.8kHz 范围1: 48Hz ~ 100kHz 范围2: 191Hz ~ 100kHz a) 当最高速度≤9800Hz时 如果初始速度<1.5Hz, 则将初始速度修正为1.5Hz,并选择范围0 如果初始速度≥1.5Hz, 则选择范围0 b) 当9800Hz<最高速度≤100000Hz时 如果初始速度<48Hz, 则将初始速度修正为48Hz,并选择范围1 如果48Hz≤初始速度<191Hz, 则选择范围1 如果初始速度≥191Hz, 则选择范围2 (*7) 加/减速的步数 系统自动在0到60步的范围内计算加/减速的步数. 如果运算结果为0, 则以初始速度(合成速度)输出脉冲而无加/减速. 加/减速的步数通过下列公式计算: 加/减速时间(ms)×合成的初速度(Hz) 例: 增量型位置控制, 初速度300Hz, 最高速5kHz, 加/减速时间0.5秒, CH0目标值1000, CH2目标值50 CH0分初始速度 = = 299.626Hz CH2分初始速度 = = 14.981Hz CH0的加/减速步数 = 500×10-3×299.626 ≈ 147.8 → 60步 CH2的加/减速步数 = 500×10-3×14.981 ≈ 7.4 → 7步 (合成速度)×(X轴移动量) √ (X轴移动量)2+(Y轴移动量)2 (合成速度)×(Y轴移动量) √ (X轴移动量)2+(Y轴移动量)2 300×1000 √ (10002 + 502 ) 300×50 √ (10002 + 502 ) F176(SPCH) 脉冲输出控制 (圆弧插补) 概述 程序示例 操作数 描述 根据参数表的设置,从通道ch0和ch2输出脉冲, 以圆弧路径达到目标位置。 10 11 ST R 10 F175 (SPSH) DT 100 K 0 触发器 n 参数表存储区的起始地址S 0: 固定 数据寄存器 WX WY WR SV EV DT K H S N/A N/A N/A N/A N/A A N/A N/A A n N/A N/A N/A N/A N/A N/A A A N/A N/A N/A 操作数 索引变址 继电器 定时器/计数器 索引寄存器 常数 I 当相关控制标志为OFF并且执行条件(触发器)变成ON时, 从ch0(X轴)和ch2(Y轴)同时输出脉冲. CW PLS CCW SIGN CW PLS CCW SIGN Y1 Y4 ch0 (X轴) ch2 (Y轴) Y3 通道号 输出 输出方式 Y0 3-457 A: 可以使用 N/A: 不可使用 在程序中按照下页所示参数表中的”S”到”S+11”指定控制代码、初速度、最大速度、加/减速时间、目标值. R903Ach0 ch2 R903C 通道号 控制标志 经过值 目标值 DT90044, DT90045 DT90046, DT90047 DT90200, DT90201 DT90202, DT90203 使用数据表 FP∑ 适用机型 梯形图程序 布尔形式 指令地址 3-458 编程时的注意事项 应始终保持本指令的执行条件. 当执行条件为OFF时, 脉冲输出停止. 在圆弧插补控制标志R904E为ON的情况下, 脉冲输出指令F166~F176不能执行. 当没有达到目标值并且执行条件为OFF时, 圆弧插补控制标志R904E为ON, 而其他位置控制指令 F171到F176指令不能启动. 重新启动时, 应使用脉冲输出控制指令F0对脉冲输出指令进行复位. 这一操作能复位圆弧插补 控制标志R904E. 设置的目标值和移动量应在以下范围内 -8,388,608 ~ +8,388,607 当与其他位置控制指令如F171指令一起使用时, 在这些指令中也应在上述范围内指定目标值. 圆弧插补的精度有可能因扫描周期长而降低. 如果在常规部分的程序和中断程序的中执行相同的代码, 则应该确保两部分不同时执行. 在中心位置指定模式下, 如果当前位置与目标位置相同, 则执行结果为绘制一个圆. 当实际应用中有精度要求时, 应确认实际的机械设备情况. 在对应系统寄存器400和401设置中该通道为”不设置为高速计数器” 标志状态 · 错误标志(R9007) 当以下情况时变为ON并且保持 - 使用索引寄存器指定数据区超出范围 - n 的数值不为0 - 数据表中[S ,S+1]~[S10,S+11]超出指定范围 - 在指定为增量型模式情况下, “当前值 + 移动量” 超出-8,388,608 ~ +8,388,607的范围 - 在指定为绝对值型模式情况下, 目标值超出 -8,388,608 ~ +8,388,607的范围 在使用经过点设置模式下 - 当前位置S≈目标位置E - 当前位置S≈经过点位置P - 经过点位置P≈目标位置E - 当前位置S、经过点位置P和目标位置E三点接近于一条直线 在使用中心点设置模式下 - 圆心位置O=目标位置E - 圆心位置O=当前位置S · 错误标志(R9008) 当以下情况时瞬间变为ON 圆弧插补标志 R904E: 圆弧插补控制标志 当圆弧插补指令F176启动时,本标志变为ON并且保持ON状态直至达到目标值. R904F: 改变设置值确认标志 当连续执行圆弧插补功能时, 在圆弧插补指令启动后, 使用此标志用于改写下一个目标值. 3-459 数据表设置 (*1) 由H常数(16进制)指定控制代码 0: 固定 动作连接方式(*4) 0: 停止 1: 继续 旋转方向(*5) 0: 顺时针方向(右旋) 从CH2-CW轴到CH0-CW轴 1: 逆时针方向(左旋) 从CH0-CW轴到CH2-CW轴 圆弧形成方法(*6) 0: 经过位置指定 1: 中心位置指定 动作模式及输出逻辑关系 00: 增量型 CW/CCW 02: 增量型 PLS+SIGN(正向OFF/反向ON) 03: 增量型 PLS+SIGN(正向ON/反向OFF) 10: 绝对值型 CW/CCW 12: 绝对值型 PLS+SIGN(正向OFF/反向ON) 13: 绝对值型 PLS+SIGN(正向ON/反向OFF) (*2) 合成速度(初始速度, 最高速度) (Hz) ”K值表示” 100Hz到20kHz [K100到K20000] 建议使合成速度保持在以下算式的范围内 Fv[Hz] ≤ 半径[脉冲]×10/扫描周期[ms] 控制码 H □□□□□□□□ S+1 S 经过点指定模式 S S+1 S+2 合成速度 S+3 频率 Fv(Hz) S+4 X轴(CH0) S+5 目标位置 S+6 Y轴(CH2) S+7 目标位置 S+8 X轴(CH0) S+9 经过点位置 S+10 Y轴(CH2) S+11 经过点位置 S+12 S+13 S+14 X轴(CH0) S+15 中心点位置 S+16 Y轴(CH2) S+17 中心点位置 半径 (*1) (*2) (*3) 控制代码 设置区 由用户程序指定 运算结果存储区 存放执行指令后计算 出的各轴分量参数 中心点指定模式 S S+1 S+2 合成速度 S+3 频率 Fv(Hz) S+4 X轴(CH0) S+5 目标位置 S+6 Y轴(CH2) S+7 目标位置 S+8 X轴(CH0) S+9 中心点位置 S+10 Y轴(CH2) S+11 中心点位置 S+12 S+13 控制代码 (*3) (*3) 半径 (*1) (*2) 设置区 运算结果存储区 3-460 (*3) 目标位置和经过点位置 K-8388608到K8388607 (*4) 动作连接方式 停止: 如果指定为停止(0), 则到达目标值后停止 继续: 圆弧插补动作开始后,在指定为继续(1)的情况下,如果向参数表中改写 下一个圆弧插补数据,则在最初启动的圆弧插补结束后(到达目标位置), 开始进行下一个圆弧插补动作.需要结束时, 请在最后的圆弧插补动作 开始后,将此标志(动作继续模式)设置为停止(0). (*5) 旋转方向 按照指定的方向输出脉冲.根据通过位置和旋转位置的不同,实际动作如下图: (*6) 圆弧形成方法 经过点指定模式: 由当前点位置根据指定的经过点和目标点位置,计算出圆心位置和半径. 中心点指定模式: 由当前点位置根据指定的中心点和目标点位置,计算出半径. 设 CH0为X轴, CH2为Y轴 Fv: 合成速度 O(Xo,Yo): 圆心(中心点位置) Fx: X轴分速度 S(Xs,Ys): 起始点(当前位置) Fy: Y轴分速度 P(Xp,Yp): 经过点(经过位置) r : 半径 E(Xe,Ye): 终点(结束位置) | Ye - Yo | Fx = Fv sinθ= ───── r | Xe - Xo | Fy = Fv cosθ= ───── r F180(SCR) FP-e画面显示登录 概述 程序示例 操作数 描述 设置登录FP-e的显示画面。 10 11 ST R 10 F180 (SCR) DT 10 DT 1000 DT 101 触发器 S2 FP-e画面模式及编号(0~3)S1 控制FP-e显示模式的存储区起始地址 数据寄存器 WX WY WR SV EV DT IX IY K H S1 A A A A A A A A A A A S2 A A A A A A N/A N/A N/A N/A A S3 A A A A A A A A N/A N/A A S4 N/A A A A A A A A N/A N/A A 操作数 索引变址 继电器 定时器/计数器 索引寄存器 常数 登录由参数S1指定的显示模式的画面, S2到S2+2设置显示方法. S3指定画面上段显示数据的 存储区, S4指定画面下段显示数据的存储区. 执行本指令后, FP-e面板上显示已登录的画面. 需要切换显示画面时, 可以操作FP-e面板上的按键或执行F180、F181指令. 3-461 A: 可以使用 N/A: 不可使用 S4 FP-e上段显示数据的存储区S3 FP-e下段显示数据的存储区 标志状态 · 错误标志(R9007) 当以下情况时变为ON并且保持 · 错误标志(R9008) 当以下情况时瞬间变为ON - 使用索引寄存器指定数据区超出范围 - S1或S2指定的数值超出范围 FP-e 适用机型 梯形图程序 布尔形式 指令地址 3-462 如何指定参数S1 S1指定FP-e的画面模式. S中的指定值 画面类型 H0 N模式 画面1 H1 N模式 画面2 H2 S模式 画面1 H3 S模式 画面2 如何指定参数S2~S2+2 S2是用来设置FP-e显示模式的数据区的首地址, 通过下列数据. 画面显示模式是由从S2开始的连续3个字指定的. 例如: 当S2为DT10时, DT10到DT12是以下所示的指定范围. 在下列显示的各位中指定显示方法.. S2: 第1个字 未定义(bit15~bit10) (指定为0) 下段显示设置(bit9) [0: 显示 1: 不显示] 上段显示设置(bit9) [0: 显示 1: 不显示] 显示单位设置(bit7~bit0) [ 0: 不显示 1: 显示] bit0: “PV” bit1: “SV” bit2: “s” bit3: “m” bit4: “h” bit5: “℃” bit6: “F” bit7: “●” 3-463 S2+1: 第2个字 画面上段数据的显示方法. 各位的设置在下图中显示. 以十六进制数值H指定. S2+2: 第3个字 画面下段数据的显示方法. 各位的设置在下图中显示. 以十六进制数值H指定. 示例: 若改变颜色为红色, 将1和0放在14和13位, 即指定 0100 0000 0000 0000 → H4000. 补零显示(bit15) (0: 不补零 1: 补零显示) 颜色指定(bit14,bit13) 00: 绿 01: 绿 10: 红 11: 橙 指定不显示数位(bit12~bit8) (0: 显示 1:不显示) - bit8 : 第1位 - bit9 : 第2位 - bit10 : 第3位 - bit11 : 第4位 - bit12 : 第5位 数据显示格式指定(bit7~bit5) 000: 5位带符号10进制显示 001: 4位16进制或BCD码显示 010: bit显示 011: 5个ASCII字符显示 100: 7段码显示 指定小数点显示位置(bit4~bit0) (0: 不显示 1:显示) - bit0 : 第2位 - bit1 : 第3位 - bit2 : 第4位 - bit3 : 第4位 - bit4 : 第3位上侧 F181(DSP) FP-e 画面显示选择切换 概述 程序示例 操作数 描述 切换到指定的FP-e画面显示。 10 11 ST R 10 F181 (DSP) DT 0 触发器 FP-e的画面模式和编号(指定0~7)S 数据寄存器 WX WY WR SV EV DT IX IY K H S A A N/A A A A A A A A A 操作数 索引变址 继电器 定时器/计数器 索引寄存器 常数 将FP-e的画面切换到通过参数S指定的各种模式的画面. 3-464 A: 可以使用 N/A: 不可使用 如何指定参数S S指定FP-e的画面模式. S中的指定值 画面类型 K0 N模式 画面1 K1 N模式 画面2 K2 S模式 画面1 K3 S模式 画面2 K4 R模式 画面1 K5 R模式 画面2 K6 I模式 画面1 K7 I模式 画面2 标志状态 · 错误标志(R9007) 当以下情况时变为ON并且保持 · 错误标志(R9008) 当以下情况时瞬间变为ON - 使用索引寄存器指定数据区超出范围 - S指定的数值不为0~7 FP-e 适用机型 梯形图程序 布尔形式 指令地址 32bit辅助定时器 操作数 程序示例 概述 以0.01秒为单位设置32bit数据ON延迟定时器(0.01~21474836.47秒). F183(DSTM) 10 11 16 ST R 0 F 183 (DSTM) DT 10 DT 5 OT R 5 用于定时器设定值的16位区或16位常数S 地址 指令 梯形图程序 布尔形式 存放定时器经过值的16位数据区D 触发器 数据寄存器 WX WY WR SV EV DT IX(*1)IY(*2) K H S A A A A A A A N/A A A N/A D N/A A A A A A N/A N/A N/A N/A N/A 索引变址 常数 操作数 定时器/计数器 索引寄存器继电器 示例说明 当执行条件(触发器)满足N时, 辅助定时器被启动. 当经过数据寄存器DT10和DT11的数值×0.01秒的时间 之后,R5变为ON. A: 可以使用 N/A: 不可使用 (*1)对于FPΣ、FP2、FP2SH和FP10SH,此处为I0至IC。 (*2)对于FPΣ、FP2、FP2SH和FP10SH,此处为ID。 3-465 本功能为0.01秒单位的32bit加计数型延迟定时器. 当执行条件(触发器)为ON时,对经过时间进行加计数.当经过值(D+1,D)(32bit)超出设定值时,在程序中紧 随其后的OT指令控制的继电器变为ON. 当执行条件(触发器)为OFF时,经过值区被清零, 同时OT指令使用的继电器变为OFF. 当经过值达到设定值时,特殊内部继电器R900D也变为ON. R900D可以作为定时器的触点使用. (当执行条件(触发器)为OFF以及指令执行时,R900D为OFF.) 描述 左图所示的程序与上述的示范程序作用相同. FP-e/FP0/FP∑/FP-M C20/C32/ FP2/FP2SH/FP10SH 适用机型 辅助定时器的动作过程 定时器设定值 3-466 输入的定时器的设定为0.01秒×(定时器设定值). 定时器的设定值以K1~K2147483647范围内的K常数指定. DSTM的设定范围为0.01秒到21474836.47秒,单位为0.01秒. 如果设定值等于K500,则设定值为0.01×500=5秒. 编程时的注意事项 存放设定值的区域和指定经过值的区域,不能与其他定时/计数器指令或高级指令的运算区重叠. 因为加计数是在运算时进行的,所以编程时应该使1个扫描周期中只运算一次. (因为中断程序、跳转/循环指令等在一个扫描中可以执行多次或一次也不执行,所以不能得到 正确的结果.) ① 当执行条件(触发器)R0从OFF变为ON时,由数值0被传送到经过值区(D+1,D). ② 当执行条件(触发器)保持ON时,经过值(D+1,D)的数据递增. ①发送到(D+1,D) ②递增 3-467 ③ 当经过值(D+1,D)达到设定值(S+1,S)时, OT指令之后的继电器变为ON. 特殊内部继电器R900D也 同时变为ON. 使用R900D时的注意事项 如果在程序多次使用辅助定时器,应该始终在定时器指令之后立即使用R900D. 当由R0启动的定时器a变为ON时,Y10变为ON.当由R1启动的定时器a变为ON时,Y11变为ON. (a) (b) 匹配 匹配 以下的程序不能产生正确的结果 ③递减结束 经过值(D+1,D) 设定值 (S+1,S) R0 R5 (R900D) F190(MV3) P190(PMV3) 3个16bit数据 一并传输 概述 程序示例 操作数 将3个16bit数据复制到指定的48bit区(3字) 对于FPΣ, P型高级指令不适用 10 11 ST R 0 F190 (MV3) DT 10 DT 20 DT 30 DT 40 触发器 D 16bit常数或16bit数据区(源)S1 存放48bit结果的开始16bit数据区(目标) 3-468 A: 可以使用 N/A: 不可使用 索引寄存器 WX WY WR WL SV EV DT LD FL(*1) I K H f S1 A A A A A A A A A A A A N/A A N/A S2 A A A A A A A A A A A A N/A A N/A S3 A A A A A A A A A A A A N/A A N/A D N/A A A A A A A A A A N/A N/A N/A A N/A 操作数 定时器/计数器 整型设备 继电器 数据寄存器 索引变址 常数 16bit常数或16bit数据区(源)S2 16bit常数或16bit数据区(源)S3 FP∑/FP2/FP2SH/FP10SH 适用机型 (*1)此处不适用FPΣ。 梯形图程序 布尔形式 指令地址 3-469 示例说明 当触发器R0为ON时, - 将数据寄存器DT10中的内容复制到DT40. - 将数据寄存器DT20中的内容复制到DT41. - 将数据寄存器DT30中的内容复制到DT42. 标志状态 · 错误标志(R9007) 当以下情况时变为ON并且保持 · 错误标志(R9008) 当以下情况时瞬间变为ON 相关指令 一次同时发送2个16bit的数据, 请使用F7(MV2)指令. -使用索引寄存器指定数据区超出范围 描述 当触发器为ON时, 将S1,S2,S3指定的3个16bit数据或常数复制到由D指定数据区(3字). [S3] 16bits [S2] 16bits [S1] 16bits DT30的内容 DT20的内容 DT10的内容 [D] DT42 DT41 DT40 存放96bit结果(6字)的开始16bit数据区(目标) F191(DMV3) P191(PDMV3) 3个32bit数据 一并传输 概述 程序示例 操作数 将3个32bit数据复制到指定的96bit区(6字) 对于FPΣ, P型高级指令不适用 3-470 A: 可以使用 N/A: 不可使用 10 11 ST R 0 F191 (DMV3) DT 10 DT 20 DT 30 DT 40 触发器 D 32bit常数或32bit数据的低16bit数据区(源)S1 32bit常数或32bit数据的低16bit数据区(源)S2 16bit常数或32bit数据的低16bit数据区(源)S3 FP∑/FP2/FP2SH/FP10SH 适用机型 索引寄存器 WX WY WR WL SV EV DT LD FL(*1) I K H f S1 A A A A A A A A A A A A N/A A N/A S2 A A A A A A A A A A A A N/A A N/A S3 A A A A A A A A A A A A N/A A N/A D N/A A A A A A A A A A N/A N/A N/A A N/A 操作数 定时器/计数器 整型设备 继电器 数据寄存器 索引变址 常数 (*1)此处不适用FPΣ。 梯形图程序 指令地址 布尔形式 3-471 示例说明 当触发器R0为ON时, - 将数据寄存器DT11和DT10中的内容复制到DT41和DT40. - 将数据寄存器DT21和DT20中的内容复制到DT43和DT42. - 将数据寄存器DT31和DT30中的内容复制到DT45和DT44. 标志状态 · 错误标志(R9007) 当以下情况时变为ON并且保持 · 错误标志(R9008) 当以下情况时瞬间变为ON 相关指令 一次同时发送2个32bit的数据, 请使用F8(DMV2)指令. -使用索引寄存器指定数据区超出范围 描述 当触发器为ON时, 将S1,S2,S3指定的3个32bit数据或常数复制到由D指定数据区(6字). [S3] DT31的内容 高16bit 低16bit DT30的内容 [D] DT45 DT44 DT43 DT42 DT41 DT40 [S2] DT21的内容 高16bit 低16bit DT20的内容 [S1] DT11的内容 高16bit 低16bit DT10的内容 32位数据逻辑与 操作数 A: 可以使用 N/A: 不可使用 程序示例 概述 对两个32位数据进行按位进行“与”运算。 对于FPΣ,P型高级指令不适用 F215(DAND) P215(PDAND) 10 11 ST R 0 F215 (DAND) DT 10 DT 20 DT 30 32位常数或32位数据的低16位区S1 地址 指令 梯形图程序 布尔形式 示例说明 触发器 32位常数或32位数据的低16位区S2 存储与(AND)操作结果的32位数据的低16位区D 3-472 索引寄存器 WX WY WR WL SV EV DT LD FL(*1) I K H f S1 A A A A A A A A A A A A N/A A N/A S2 A A A A A A A A A A A A N/A A N/A D N/A A A A A A A A A A N/A N/A N/A A N/A 操作数 定时器/计数器 整型设备 继电器 数据寄存器 索引变址 常数 [DT10] [DT11] 15 0 “与”(AND)操作 [DT20] [DT21] 15 0 [DT30] [DT31] 15 0 FP∑/FP2/FP2SH/FP10SH 适用机型 (*1)此处不适用FPΣ。 描述 对由[S1+1,S1]和[S2+1,S2]指定的32位常数或32位数据中的各个位进行逻辑“与”运算。 “与”运算结果保存于D指定的32位区。 可以使用本指令将32位数据的某些位的数据复位。 · 错误标志(R9007):在变址数指定区超限时为ON并保持ON。 · 错误标志(R9008):在变址数指定的区超限时瞬间为ON。 · 相等标志(R900B):当计算结果被认为等于“0”时瞬间为ON。 标志位状态 3-473 32位数据逻辑或 操作数 A: 可以使用 N/A: 不可使用 程序示例 概述 对两个32位数据进行按位进行“或”运算。 对于FPΣ,P型高级指令不适用 F216(DOR) P216(PDOR) 10 11 ST R 0 F216 (DOR) DT 10 DT 20 DT 30 32位常数或32位数据的低16位区S1 地址 指令 梯形图程序 布尔形式 示例说明 触发器 32位常数或32位数据的低16位区S2 存储或(OR)操作结果的32位数据的低16位区D 3-474 索引寄存器 WX WY WR WL SV EV DT LD FL(*1) I K H f S1 A A A A A A A A A A A A N/A A N/A S2 A A A A A A A A A A A A N/A A N/A D N/A A A A A A A A A A N/A N/A N/A A N/A 操作数 定时器/计数器 整型设备 继电器 数据寄存器 索引变址 常数 [DT10] [DT11] 15 0 “或”(OR)操作 [DT20] [DT21] 15 0 [DT30] [DT31] 15 0 FP∑/FP2/FP2SH/FP10SH 适用机型 (*1)此处不适用FPΣ。 描述 对由[S1+1,S1]和[S2+1,S2]指定的32位常数或32位数据中的各个位进行逻辑“或”运算。 “或”运算结果保存于D指定的32位区。 可以使用本指令将32位数据的某些位的数据置位。 · 错误标志(R9007):在变址数指定区超限时为ON并保持ON。 · 错误标志(R9008):在变址数指定的区超限时瞬间为ON。 · 相等标志(R900B):当计算结果被认为等于“0”时瞬间为ON。 标志位状态 3-475 32位数据逻辑异或 操作数 A: 可以使用 N/A: 不可使用 程序示例 概述 对两个32位数据进行按位进行“异或”运算。 对于FPΣ,P型高级指令不适用 F217(DXOR) P217(PDXOR) 10 11 ST R 0 F217 (DXOR) DT 10 DT 20 DT 30 32位常数或32位数据的低16位区S1 地址 指令 梯形图程序 布尔形式 示例说明 触发器 32位常数或32位数据的低16位区S2 存储异或(XOR)操作结果的32位数据的低16位区D 3-476 索引寄存器 WX WY WR WL SV EV DT LD FL(*1) I K H f S1 A A A A A A A A A A A A N/A A N/A S2 A A A A A A A A A A A A N/A A N/A D N/A A A A A A A A A A N/A N/A N/A A N/A 操作数 定时器/计数器 整型设备 继电器 数据寄存器 索引变址 常数 [DT10] [DT11] 15 0 “异或”(XOR)操作 [DT20] [DT21] 15 0 [DT30] [DT31] 15 0 [S1]: HC6A99621 [S2]: H00FFFF00 [D]: H6921C656 FP∑/FP2/FP2SH/FP10SH 适用机型 (*1)此处不适用FPΣ。 描述 对由[S1+1,S1]和[S2+1,S2]指定的32位常数或32位数据中的各个位进行逻辑“异或”运算。 “异或”运算结果保存于D指定的32位区。 可以使用本指令检查2个32位数据的不同的数据位。 · 错误标志(R9007):在变址数指定区超限时为ON并保持ON。 · 错误标志(R9008):在变址数指定的区超限时瞬间为ON。 · 相等标志(R900B):当计算结果被认为等于“0”时瞬间为ON。 标志位状态 3-477 32位数据逻辑异或非 操作数 A: 可以使用 N/A: 不可使用 程序示例 概述 对两个32位数据进行按位进行“异或非(同或)”运算。 对于FPΣ,P型高级指令不适用 F218(DXNR) P218(PDXNR) 10 11 ST R 0 F218 (DXNR) DT 10 DT 20 DT 30 32位常数或32位数据的低16位区S1 地址 指令 梯形图程序 布尔形式 示例说明 触发器 32位常数或32位数据的低16位区S2 存储异或非(NOR)操作结果的32位数据的低16位区D 3-478 索引寄存器 WX WY WR WL SV EV DT LD FL(*1) I K H f S1 A A A A A A A A A A A A N/A A N/A S2 A A A A A A A A A A A A N/A A N/A D N/A A A A A A A A A A N/A N/A N/A A N/A 操作数 定时器/计数器 整型设备 继电器 数据寄存器 索引变址 常数 [DT10] [DT11] 15 0 “异或非”(NOR)操作 [DT20] [DT21] 15 0 [S1]: HC6A99621 [S2]: H00FFFF00 [D]: H39A996DE [DT30] [DT31] 15 0 FP∑/FP2/FP2SH/FP10SH 适用机型 (*1)此处不适用FPΣ。 描述 对由[S1+1,S1]和[S2+1,S2]指定的32位常数或32位数据中的各个位进行逻辑“异或非”运算。 “异或非”运算结果保存于D指定的32位区。 可以使用本指令检查2个32位数据的相同的数据位。 · 错误标志(R9007):在变址数指定区超限时为ON并保持ON。 · 错误标志(R9008):在变址数指定的区超限时瞬间为ON。 · 相等标志(R900B):当计算结果被认为等于“0”时瞬间为ON。 标志位状态 3-479 F219(DUNI) P219(PDUNI) 双字数据组合 概述 程序示例 操作数 将2个32bit数据按照指定的位组合为1个32bit数据. 对于FPΣ, P型高级指令不适用 10 11 ST R 0 F219 (DUNI) DT 10 DT 20 DT 30 DT 40 触发器 D 32bit常数或32bit数据的低16bit数据区(2字)S1 存放运算结果的32bit数据的低16bit数据区 3-480 A: 可以使用 N/A: 不可使用 索引寄存器 WX WY WR WL SV EV DT LD FL(*1) I K H f S1 A A A A A A A A A A A A N/A A N/A S2 A A A A A A A A A A A A N/A A N/A S3 A A A A A A A A A A A A N/A A N/A D N/A A A A A A A A A A N/A N/A N/A A N/A 操作数 定时器/计数器 整型设备 继电器 数据寄存器 索引变址 常数 32bit常数或32bit数据的低16bit数据区(2字)S2 S3 FP∑/FP2/FP2SH/FP10SH 适用机型 作为位屏蔽码的32bit常数或32bit数据的低16bit数据区 (*1)此处不适用FPΣ。 梯形图程序 布尔形式 指令地址 3-481 示例说明 标志状态 描述 当触发器为ON时, 将[S1+1, S1]和[S2+1, S2]指定的2个32bit数据、根据[S3+1, S3]指定屏蔽位, 合并 为1个32bit的数据, 结果存放到D指定的数据区. ( [S1+1, S1] AND [S3+1,S3] ) OR ( [S2+1,S2] AND [S3+1,S3] ) → [D+1,D] 当 [S3+1,S3]等于H0时, [S2+1,S2] → [D+1,D] 当 [S3+1,S3]等于HFFFFFFFF时, [S1+1,S1] → [D+1,D] [S2+1, S2]: H33335555[S1+1, S1]: HCCCCAAAA [S3+1, S3]: HF0F0F00F [S3+1, S3]取反: H0F0F0FF0 1 1 0 0 1 0 1 0 1 1 0 0 1 0 1 0 1 1 0 01 1 0 0[DT11] 1 0 1 01 0 1 0[DT10] 0 0 1 1 0 1 0 1 0 0 1 1 0 1 0 1 0 0 1 10 0 1 1[DT11] 0 1 0 10 1 0 1[DT10] 1 1 1 1 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 01 1 1 1[DT31] 1 1 1 10 0 0 0[DT30] 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 1 1 1 10 0 0 0[DT31取反] 0 0 0 01 1 1 1[DT30取反] 与(AND) 与(AND) 1 1 0 0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0 01 1 0 0 1 0 1 00 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 0 1 0 1 0 0 1 10 0 0 0 0 0 0 00 1 0 1 HC0C0A00A H03030550 · 错误标志(R9007):在变址数指定区超限时为ON并保持ON。 · 错误标志(R9008):在变址数指定的区超限时瞬间为ON。 · 相等标志(R900B):当计算结果被认为等于“0”时瞬间为ON。 1 1 0 0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0 01 1 0 0[DT41] 1 0 1 00 0 0 0[DT40] 或(OR)[D+1, D1]: HC3C3A55A F235(GRY) P235(PGRY) 16bit二进制→格雷码转换 概述 程序示例 操作数 将16位二进制数据转换为格雷码 对于FPΣ, P型高级指令不适用 0 1 ST R 0 F235 (GRY) DT 10 DT 20 触发器 D 待转换的16bit数据或16bit数据区(源)S 存放转换结果的16bit数据(目标) 3-482 A: 可以使用 N/A: 不可使用 索引寄存器 WX WY WR WL SV EV DT LD FL(*1) I K H f S A A A A A A A A A A A A N/A A N/A D N/A A A A A A A A A A N/A N/A N/A A N/A 整型设备 继电器 数据寄存器 索引变址 常数 操作数 定时器计数器 描述 当触发器为ON时, 将S指定的16bit数据转换为格雷码. 转换的结果存放在由D指定的16bit数据区. 关于格雷码的详细内容, 请参阅有关章节. 标志状态 · 错误标志(R9007) 当以下情况时变为ON并且保持 · 错误标志(R9008) 当以下情况时瞬间变为ON -使用索引寄存器指定数据区超出范围 -被转换的16bit二进制数据范围超出K0~K32767(H0~H7FFF) 编程时注意事项 能够转换为格雷码的16bit二进制数据范围为K0~K32767(H0~H7FFF) -使用索引寄存器指定数据区超出范围 -被转换的16bit二进制数据范围超出K0~K32767(H0~H7FFF) FP∑/FP2/FP2SH/FP10SH 适用机型 (*1)此处不适用FPΣ。 梯形图程序 布尔形式 指令地址 F236(DGRY) P236(PDGRY) 32bit二进制→格雷码转换 概述 程序示例 操作数 将32位二进制数据转换为格雷码 对于FPΣ, P型高级指令不适用 0 1 ST R 0 F236 (DGRY) DT 10 DT 20 触发器 D 待转换的32bit数据或32bit数据的低16bit地址(源)S 存放转换结果的32bit数据的低16bit地址(目标) 3-483 A: 可以使用 N/A: 不可使用 索引寄存器 WX WY WR WL SV EV DT LD FL(*1) I K H f S A A A A A A A A A A A A N/A A N/A D N/A A A A A A A A A A N/A N/A N/A A N/A 整型设备 继电器 数据寄存器 索引变址 常数 操作数 定时器计数器 描述 当触发器为ON时, 将S指定的32bit数据转换为格雷码. 转换的结果存放在由[D+1,D]指定的16bit数据区. 关于格雷码的详细内容, 请参阅有关章节. 标志状态 · 错误标志(R9007) 当以下情况时变为ON并且保持 · 错误标志(R9008) 当以下情况时瞬间变为ON -使用索引寄存器指定数据区超出范围 -被转换的32bit二进制数据范围超出K0~K2147483647(H0~H7FFFFFFF) 编程时注意事项 能够转换为格雷码的32bit二进制数据范围为K0~K2147483647(H0~H7FFFFFFF) -使用索引寄存器指定数据区超出范围 -被转换的32bit二进制数据范围超出K0~K2147483647(H0~H7FFFFFFF) FP∑/FP2/FP2SH/FP10SH 适用机型 (*1)此处不适用FPΣ。 梯形图程序 指令地址 布尔形式 F237(GBIN) P237(PGBIN) 16bit格雷码→ 16bit二进制 概述 程序示例 操作数 将16位格雷码转换为16位二进制数据 对于FPΣ, P型高级指令不适用 0 1 ST R 0 F237 (GBIN) DT 10 DT 20 触发器 D 待转换的16bit格雷码(源)S 存放转换结果的16bit数据(目标) 3-484 A: 可以使用 N/A: 不可使用 索引寄存器 WX WY WR WL SV EV DT LD FL(*1) I K H f S A A A A A A A A A A A A N/A A N/A D N/A A A A A A A A A A N/A N/A N/A A N/A 整型设备 继电器 数据寄存器 索引变址 常数 操作数 定时器计数器 描述 当触发器为ON时, 将S指定的16bit格雷码转换为16bit数据. 转换的结果存放在由D指定的16bit数据区. 关于格雷码的详细内容, 请参阅有关章节. 标志状态 · 错误标志(R9007) 当以下情况时变为ON并且保持 · 错误标志(R9008) 当以下情况时瞬间变为ON -使用索引寄存器指定数据区超出范围 -使用索引寄存器指定数据区超出范围 FP∑/FP2/FP2SH/FP10SH 适用机型 (*1)此处不适用FPΣ。 梯形图程序 指令地址 布尔形式 F238(DGBIN) P238(PDGBIN) 32bit格雷码→ 32bit二进制 概述 程序示例 操作数 将32位格雷码转换为32位二进制数据 对于FPΣ, P型高级指令不适用 0 1 ST R 0 F238 (DGBIN) DT 10 DT 20 触发器 D 待转换的32bit格雷码(源)S 存放转换结果的32bit数据(目标) 3-485 A: 可以使用 N/A: 不可使用 索引寄存器 WX WY WR WL SV EV DT LD FL(*1) I K H f S A A A A A A A A A A A A N/A A N/A D N/A A A A A A A A A A N/A N/A N/A A N/A 整型设备 继电器 数据寄存器 索引变址 常数 操作数 定时器计数器 描述 当触发器为ON时, 将S指定的32bit格雷码转换为32bit数据. 转换的结果存放在由D+1和D指定的16bit数据区. 关于格雷码的详细内容, 请参阅有关章节. 标志状态 · 错误标志(R9007) 当以下情况时变为ON并且保持 · 错误标志(R9008) 当以下情况时瞬间变为ON -使用索引寄存器指定数据区超出范围 -使用索引寄存器指定数据区超出范围 FP∑/FP2/FP2SH/FP10SH 适用机型 (*1)此处不适用FPΣ。 梯形图程序 指令地址 布尔形式 F240(COLM) P240(PCOLM) bit行→bit列转换 概述 程序示例 操作数 将指定的bit行数据转换为bit列数据 3-486 A: 可以使用 N/A: 不可使用 布尔形式 10 11 ST R 0 F240 (COLM) DT 10 K 10 DT 20 触发器 n 16位常数或16位数据的地址(源数据).S 用于指定bit位置的16位常数或16位数据的地址 被重写bit列的数据的起始地址D 索引寄存器 WX WY WR WL SV EV DT LD FL(*1) I K H f S A A A A A A A A A A A A N/A A N/A n A A A A A A A A A A A A N/A A N/A D N/A A A A A A A A A A N/A N/A N/A A N/A 操作数 定时器计数器 整型设备 继电器 数据寄存器 索引变址 常数 FP∑/FP2/FP2SH/FP10SH 适用机型 (*1)此处不适用FPΣ。 梯形图程序 指令地址 3-487 示例说明 当触发器为ON时, 将由S指定的16bit数据依次填写到从D开始的16个字中、由n指定的bit位置中. 以D为起始地址的16个字的数据中n位以外的数据不变. n的范围为0~15. 标志状态 · 错误标志(R9007) 当以下情况时变为ON并且保持 · 错误标志(R9008) 当以下情况时瞬间变为ON -使用索引寄存器指定数据区超出范围 -指定bit位置的参数[n]超出有效范围0≤n≤15 -由D指定的转换结果存放区域超出范围 描述 当指定的bit位置n=10时, 将进行以下处理 15 0 0 1 0 1 0 0 0 1 1 1 0 1 1 0 0 1 15 10 0 D 1 D+1 0 D+2 0 D+3 1 D+4 1 D+5 0 D+6 1 D+7 1 D+8 1 D+9 0 D+10 0 D+11 0 D+12 1 D+13 0 D+14 1 D+15 0 ↓ -使用索引寄存器指定数据区超出范围 -指定bit位置的参数[n]超出有效范围0≤n≤15 -由D指定的转换结果存放区域超出范围 F241(LINE) P241(PLINE) bit列→bit行转换 概述 程序示例 操作数 将指定的bit列数据转换为bit行数据 3-488 A: 可以使用 N/A: 不可使用 布尔形式 10 11 ST R 0 F241 (LINE) DT 10 K 10 DT 20 触发器 n 存放bit列数据的16位数据的起始地址(源数据).S 用于指定bit位置的16位常数或16位数据的地址 被重写的16bit数据(目标)D 索引寄存器 WX WY WR WL SV EV DT LD FL(*1) I K H f S A A A A A A A A A A N/A N/A N/A A N/A n A A A A A A A A A A A A N/A A N/A D N/A A A A A A A A A A N/A N/A N/A A N/A 操作数 定时器计数器 整型设备 继电器 数据寄存器 索引变址 常数 FP∑/FP2/FP2SH/FP10SH 适用机型 (*1)此处不适用FPΣ。 梯形图程序 指令地址 3-489 示例说明 当触发器为ON时, 将从S开始的16个字数据中第n个bit的数据依次填写到从D指定的16bit数据中. n的范围为0~15. 标志状态 · 错误标志(R9007) 当以下情况时变为ON并且保持 · 错误标志(R9008) 当以下情况时瞬间变为ON -使用索引寄存器指定数据区超出范围 -指定bit位置的参数[n]超出有效范围0≤n≤15 -由S指定的转换源数据存放区域超出范围 描述 当指定的bit位置n=10时, 将进行以下处理 -使用索引寄存器指定数据区超出范围 -指定bit位置的参数[n]超出有效范围0≤n≤15 -由S指定的转换源数据存放区域超出范围 15 10 0 S 1 S+1 0 S+2 0 S+3 1 S+4 1 S+5 0 S+6 1 S+7 1 S+8 1 S+9 0 S+10 0 S+11 0 S+12 1 S+13 0 S+14 1 S+15 0 15 0 D 0 1 0 1 0 0 0 1 1 1 0 1 1 0 0 1 ↓ F257(SCMP) P257(PSCMP) 字符串比较 概述 程序示例 操作数 将2个指定的字符串进行比较, 将判断的结果输出到特殊内部继电器. (FPΣ不支持微分型P257(PSCMP)指令) 10 11 ST R 10 F257 (SCMP) DT 0 DT 10 触发器 S2 待比较的字符串1S1 待比较的字符串2 3-490 A: 可以使用 N/A: 不可使用 索引寄存器 WX WY WR WL SV EV DT LD FL(*1) I(*2) K H f M S1 A A A A A A A A A A N/A N/A N/A N/A A S2 A A A A A A A A A A N/A N/A N/A N/A A 操作数 定时器计数器继电器 数据寄存器 索引变址 常数 (*1) FPΣ不能使用 (*2) I0~ID 示例程序说明 当触发器R10为ON时, 比较数据寄存器DT1和DT11. 在以下情况下, 将判定”S1”<”S2”, 并且R900C变为ON. (字符串大小) (字符串大小) (字符数量)(字符数量) FP∑/FP2/FP2SH/FP10SH 适用机型 梯形图程序 指令地址 布尔形式 描述 将S1指定的字符串与S2指定的字符串进行比较, 将比较的判断结果输出到特殊内部继电器 R9009~R900C(比较指令的判断标志). R9009~R900C根据S1与S2的大小关系, 其变化条件如下表所示. 标志状态 · 错误标志(R9007) 当以下情况时变为ON并且保持 · 错误标志(R9008) 当以下情况时瞬间变为ON 编程时注意事项 如果字符的数量不相等, 则两者之间的大小关系如下: -使用索引寄存器指定数据区超出范围 -字符的数量大于字符串的大小 S1与S2 的关系 标志 进位 变化 变化 字符串的比较从字节0开始顺序进行, 每次比较1个字符. 如果一个字符串比另外一个的字符少, 但是只要其字符代码大于另一字符串中的对应字符, 其结果仍然是大于. 例如: “B”>”ABCDE” 在指定字符串时, 应在字符串大小和字符数量的存储区中存放相应的数值. 详细的说明请参阅数据区的配置表. 大小关系 3-491 F258(SADD) P258(PSADD) 字符串加法 概述 程序示例 操作数 将一个指定的字符串连接到另一字符串之后. (FPΣ不支持微分型P258(PSADD)指令) 10 11 ST R 10 F258 (DGRY) DT 0 DT 10 DT 20 触发器 S2 待连接的字符串S1 待连接的字符串 3-492 A: 可以使用 N/A: 不可使用 索引寄存器 WX WY WR WL SV EV DT LD FL(*1) I(*2) K H f M S1 A A A A A A A A A A N/A N/A N/A N/A A S2 A A A A A A A A A A N/A N/A N/A N/A A D N/A A A A A A A A A A N/A N/A N/A N/A A 继电器 数据寄存器 索引变址 常数 操作数 定时器计数器 (*1) FPΣ不能使用 (*2) I0~ID D 存放连接后的字符串的地址 FP∑/FP2/FP2SH/FP10SH 适用机型 梯形图程序 布尔形式 指令地址 描述 将S1指定的字符串与S2指定的字符串相连接, 结果存放到由D指定的区域. 在存放结果的D的起始区中, 应由用户程序指定字符串大小. 标志状态 · 错误标志(R9007) 当以下情况时变为ON并且保持 · 错误标志(R9008) 当以下情况时瞬间变为ON 示例程序说明 如果连接操作后的字符串的长度大于D中的数值, 则只能存放D中指定数量的字符. - 使用索引寄存器指定数据区超出范围 - 字符的数量大于字符串的大小 编程时的注意事项 + = 高8位 低8位 高8位 低8位 高8位 低8位 由用户程序指定 存放运算结果的区域 · 进位标志(R9009) 当以下情况时瞬间变为ON 3-493 - 运算结果大于D的字符串大小 F259(LEN) P259(PLEN) 计算字符串长度 概述 程序示例 操作数 10 11 ST R 10 F237 (GBIN) DT 0 DT 100 触发器 D 字符串S 存放字符串长度的计算结果 3-494 A: 可以使用 N/A: 不可使用 计算字符串中字符的数量. (FPΣ不支持微分型P259(PLEN)指令) 索引寄存器 WX WY WR WL SV EV DT LD FL(*1) I(*2) K H f M S1 A A A A A A A A A A N/A N/A N/A N/A A D N/A A A A A A A A A A N/A N/A N/A N/A A 继电器 数据寄存器 索引变址 常数 操作数 定时器计数器 (*1) FPΣ不能使用 (*2) I0~ID FP∑/FP2/FP2SH/FP10SH 适用机型 梯形图程序 布尔形式 指令地址 描述 计算S1指定的字符串中字符的数量, 结果存放到由D指定的区域. 标志状态 · 错误标志(R9007) 当以下情况时变为ON并且保持 · 错误标志(R9008) 当以下情况时瞬间变为ON 示例程序说明 如果字符数量大于字符串的长度, 则会产生运算错误. - 使用索引寄存器指定数据区超出范围 - 字符的数量大于字符串的大小 编程时的注意事项 = 高8位 低8位 3-495 DT100 8 F260(SSRC) P260(PSSRC) 查找字符串 概述 程序示例 操作数 查找指定的字符串 (FPΣ不支持微分型P260(PSSRC)指令) 10 11 ST R 10 F260 (SSRC) DT 0 DT 10 DT 120 触发器 3-496 A: 可以使用 N/A: 不可使用 索引寄存器 WX WY WR WL SV EV DT LD FL(*1) I(*2) K H f M S1 A A A A A A A A A A N/A N/A N/A N/A A S2 A A A A A A A A A A N/A N/A N/A N/A A D N/A A A A A A A A A A N/A N/A N/A N/A A 继电器 数据寄存器 索引变址 常数 操作数 定时器计数器 (*1) FPΣ不能使用 (*2) I0~ID S2 需要查找的字符串的存放地址(字符串或字符常数)S1 被查找的字符串的存放区 D 查找结果的存放地址 FP∑/FP2/FP2SH/FP10SH 适用机型 梯形图程序 布尔形式 指令地址 描述 标志状态 · 错误标志(R9007) 当以下情况时变为ON并且保持 · 错误标志(R9008) 当以下情况时瞬间变为ON 示例程序说明 指定字符的数量时, 应使S1小于或等于S2. 在S+1中的字符数量应指定查找字符的数量. 例: - 使用索引寄存器指定数据区超出范围 - 字符的数量大于字符串的大小 编程时的注意事项 3-497 (字符串大小) (字符数量) (字符串大小) (字符数量) 查找 在DT10开始的字符串中查找DT0中的字符串, 结果存放到DT120. 匹配字符数据的数量 第一个匹配数据的位置 在S2开始的字符串中查找S1中的字符串. 相同的字符数量作为结果存放到D, 第一个被检测到的相对位置(字节单位)被存放到D+1中. (字符串大小) (字符数量) 当字符数量为1时, 查找”A”; 当字符数量为2时, 以”AB”为单位进行查找 F261(RIGHT) P261(PRIGHT) 获取字符串右侧部分 概述 程序示例 操作数 获取字符串中从右侧开始的指定数量的字符. (FPΣ不支持微分型P261(PRIGHT)指令) 10 11 ST R 10 F261 (RIGHT) DT 0 K 5 DT 20 触发器 3-498 A: 可以使用 N/A: 不可使用 索引寄存器 WX WY WR WL SV EV DT LD FL(*1) I(*2) K H f M S1 A A A A A A A A A A N/A N/A N/A N/A A S2 A A A A A A A A A A A A N/A N/A A D N/A A A A A A A A A A N/A N/A N/A N/A A 操作数 定时器计数器继电器 数据寄存器 索引变址 常数 (*1) FPΣ不能使用 (*2) I0~ID S2 字符串S1 获取字符的数量 D 查找结果的存放地址 FP∑/FP2/FP2SH/FP10SH 适用机型 梯形图程序 布尔形式 指令地址 描述 标志状态 · 错误标志(R9007) 当以下情况时变为ON并且保持 · 错误标志(R9008) 当以下情况时瞬间变为ON 示例程序说明 在D之前的数据被清除. 如果S2指定的字符数量大于S1指定的字符串中的实际字符数量, 则得到S1指定的字符串 的字符数量. 如果S2指定的字符数量大于D指定的字符串中的实际字符数量, 则得到与D指定的字符串 相同的字符串. - 使用索引寄存器指定数据区超出范围 - 字符的数量大于字符串的大小 编程时的注意事项 3-499 在DT0开始的字符串的结尾开始截取5个字符的字符串, 结果存放到DT20. 在S1指定的字符串中, 按照S2指定的字符数量, 从右侧(结尾)开始截取相应数量的字符, 结果存放到D中. 在结果存放区的起始D中, 应由用户程序指定字符串大小. 由用户程序指定 运算结果存放区 · 进位标志(R9009) 当运算的结果大于D指定的字符串大小时,瞬间变为ON F262(LEFT) P262(PLEFT) 获取字符串左侧部分 概述 程序示例 操作数 获取字符串中从左侧开始的指定数量的字符. (FPΣ不支持微分型P262(PLEFT)指令) 10 11 ST R 10 F262 (LEFT) DT 0 K 5 DT 20 触发器 3-500 A: 可以使用 N/A: 不可使用 索引寄存器 WX WY WR WL SV EV DT LD FL(*1) I(*2) K H f M S1 A A A A A A A A A A N/A N/A N/A N/A A S2 A A A A A A A A A A A A N/A N/A A D N/A A A A A A A A A A N/A N/A N/A N/A A 操作数 定时器计数器继电器 数据寄存器 索引变址 常数 (*1) FPΣ不能使用 (*2) I0~ID S2 字符串S1 获取字符的数量 D 查找结果的存放地址 FP∑/FP2/FP2SH/FP10SH 适用机型 梯形图程序 布尔形式 指令地址 描述 标志状态 · 错误标志(R9007) 当以下情况时变为ON并且保持 · 错误标志(R9008) 当以下情况时瞬间变为ON 示例程序说明 在D之前的数据被清除. 如果S2指定的字符数量大于S1指定的字符串中的实际字符数量, 则得到S1指定的字符串的字符数量. 如果S2指定的字符数量大于D指定的字符串中的实际字符数量, 则得到与D指定的字符串相同的字符串. - 使用索引寄存器指定数据区超出范围 - 字符的数量大于字符串的大小 编程时的注意事项 3-501 在S1指定的字符串中, 按照S2指定的字符数量, 从左侧(开头)开始截取相应数量的字符, 结果存放到D中. 在结果存放区的起始D中, 应由用户程序指定字符串大小. 由用户程序指定 运算结果存放区 · 进位标志(R9009) 当运算的结果大于D指定的字符串大小时,瞬间变为ON 在DT0开始的字符串的开头开始截取5个字符的字符串, 结果存放到DT20. F263(MIDR) P263(PMIDR) 获取字符串的任意部分 概述 程序示例 操作数 获取字符串中从指定位置开始的指定数量的字符. (FPΣ不支持微分型P263(PMIDR)指令) 10 11 ST R 10 F263 (MIDR) DT 0 K 1 K 3 DT 20 触发器 3-502 A: 可以使用 N/A: 不可使用 索引寄存器 WX WY WR WL SV EV DT LD FL(*1) I(*2) K H f M S1 A A A A A A A A A A N/A N/A N/A N/A A S2 A A A A A A A A A A A A N/A N/A A S3 A A A A A A A A A A A A N/A N/A A D N/A A A A A A A A A A N/A N/A N/A N/A A 继电器 数据寄存器 索引变址 常数 操作数 定时器计数器 (*1) FPΣ不能使用 (*2) I0~ID S2 字符串S1 字符串位置的存放地址或数值常数 S3 字符串数量的存放地址或数值常数 D 存放结果的地址 FP∑/FP2/FP2SH/FP10SH 适用机型 梯形图程序 布尔形式 指令地址 描述 标志状态 · 错误标志(R9007) 当以下情况时变为ON并且保持 · 错误标志(R9008) 当以下情况时瞬间变为ON 示例程序说明 在D之前的数据被清除. 如果从S2指定位置开始的、S3指定的字符数量大于S1指定的字符串中的实际字符数量, 则得到 S1指定的字符串的字符数量. 如果得到的字符数量大于D指定的字符串中的字符数量, 则得到与D指定的字符串相同的字符串. S2指定的字节编号从K0(字节0)开始, 按照0、1、2...的顺序从 低字节开始. - 使用索引寄存器指定数据区超出范围 - 字符的数量大于字符串的大小 - S1中的字符数量大于S2的字符数量 编程时的注意事项 3-503 在S1指定的字符串中, 从S2指定的位置开始, 按照S3指定的字符数量, 截取相应数量的字符, 结果存放到D中. 在结果存放区的起始D中, 应由用户程序指定字符串大小. 由用户程序指定 运算结果存放区 · 进位标志(R9009) 当运算的结果大于D指定的字符串大小时,瞬间变为ON 在DT0开始的字符串的字节1位置(第2个字符)开始截取3个字符的字符串, 结果存放到DT20. F264(MIDW) P264(PMIDW) 改写字符串的指定部分 概述 程序示例 操作数 将指定数量的字符从指定位置开始写入指定的字符串. (FPΣ不支持微分型P264(PMIDW)指令) 10 11 ST R 10 F264 (MIDW) DT 0 K 3 DT 20 K 1 触发器 3-504 A: 可以使用 N/A: 不可使用 索引寄存器 WX WY WR WL SV EV DT LD FL(*1) I(*2) K H f M S1 A A A A A A A A A A N/A N/A N/A A A S2 A A A A A A A A A A A A N/A N/A A D N/A A A A A A A A A A A N/A N/A N/A A n A A A A A A A A A A A A N/A N/A A 操作数 定时器计数器继电器 数据寄存器 索引变址 常数 (*1) FPΣ不能使用 (*2) I0~ID S2 字符串S1 字符串位置的存放地址或数值常数 D 存放结果字符串的地址 n 字符串中指定位置的存放地址或数值常数 FP∑/FP2/FP2SH/FP10SH 适用机型 梯形图程序 布尔形式 指令地址 描述 标志状态 · 错误标志(R9007) 当以下情况时变为ON并且保持 · 错误标志(R9008) 当以下情况时瞬间变为ON 示例程序说明 从D开始的数据不被清除(被覆盖). 如果从S2指定字符数量大于S1指定的字符串中的实际字符数量, 则发送S1指定的字符串的字符数量. 如果位置n大于D指定的字符串中的字符数量, 则发生运算错误. 如果运算结果的字符数量大于D中字符串大小, 则只替换到D中字符串 大范围. n指定的字节编号从K0(字节0)开始, 按照0、1、2...的顺序从 低字节开始. - 使用索引寄存器指定数据区超出范围 - 字符的数量大于字符串的大小 - S1中的字符数量大于S2的字符数量 编程时的注意事项 3-505 将S1指定的字符串中的字符、按照S2指定的字符数量, 发送到D指定的字符串中, 目标字节位置 由n指定. 由用户程序指定 运算结果存放区 · 进位标志(R9009) 当运算的结果大于D指定的字符串大小时,瞬间变为ON 将DT0中的字符串从字节1位置(第2个字符)开始的3个字符, 发送到从DT20中字符串字节1(第2个字符) 开始的字符串块中. 高16位 低16位 高16位 低16位 F265(SREP) P265(PSREP) 置换字符串 概述 程序示例 操作数 从指定的位置开始, 用相同数量不同字符,置换指定数量的字符. (FPΣ不支持微分型P265(PMIDW)指令 ) 10 11 ST R 10 F265 (SREP) DT 0 DT 20 K 1 K 3 触发器 3-506 A: 可以使用 N/A: 不可使用 索引寄存器 WX WY WR WL SV EV DT LD FL(*1) I(*2) K H f M S A A A A A A A A A A N/A N/A N/A A A D N/A A A A A A A A A A N/A N/A N/A N/A A p A A A A A A A A A A A A N/A N/A A n A A A A A A A A A A A A N/A N/A A 继电器 数据寄存器 索引变址 常数 操作数 定时器计数器 (*1) FPΣ不能使用 (*2) I0~ID D 用于置换的字符串S 字符串的存放地址 p 字符串被置换的起始字节位置的数值存放地址或常数 n 字符串被置换的字节数量的存放地址或数值常数 FP∑/FP2/FP2SH/FP10SH 适用机型 梯形图程序 布尔形式 指令地址 描述 标志状态 · 错误标志(R9007) 当以下情况时变为ON并且保持 · 错误标志(R9008) 当以下情况时瞬间变为ON 示例程序说明 从D开始的数据不被清除(被覆盖). 如果n指定字符数量大于S指定的字符串中从p开始的实际字符数量, 则只替换S1字符串从p开始到 结尾的实际数量的字符. 如果位置p大于n指定的字符数量, 则发生运算错误. n指定的字节编号从K0(字节0)开始, 按照0、1、2...的顺序从 低字节开始. - 使用索引寄存器指定数据区超出范围 - 字符的数量大于字符串的大小 - D中的字符数量大于字符数量n 编程时的注意事项 3-507 用S指定的字符串替换D指定的字符串中, 字符数量由n指定, 开始位置由p指定. 由用户程序指定 运算结果存放区 · 进位标志(R9009) 当运算的结果大于D指定的字符串大小时,瞬间变为ON 用DT0的字符串的3个字符, 置换DT20中字符串从字节1(第2个字符)开始的部分. F270(MAX) P270(PMAX) 16bit数据最大值 概述 程序示例 操作数 在16bit数据表中查找最大值. (FPΣ不支持P270(PMAX)指令) 10 11 ST R 0 F270 (MAX) DT 10 DT 20 DT 30 触发器 16bit数据的起始地址S1 3-508 A: 可以使用 N/A: 不可使用 索引寄存器 WX WY WR WL SV EV DT LD FL(*1) I K H f S1 A A A A A A A A A A N/A N/A N/A A N/A S2 A A A A A A A A A A N/A N/A N/A A N/A D N/A A A A A A A A A A N/A N/A N/A A N/A 整型设备 继电器 数据寄存器 索引变址 常数 操作数 定时器计数器 描述 当触发器变为ON时, 在由S1指定的起始区到S2指定的结束区之间16bit数据表中查找最大值, 最大值 存放在[D]中,相对位置存放在[D+1]. 16bit数据的结束地址 存放运算结果(最大值和相对地址)的数据区(2字) S1: 0 S1+1: 1 S1+2: 2 S1+3: 3 : S2: n 16bit数据表 D: D+1: 最大值 相对位置 相对位置 当有多个最大值存在时,从S1开始查找到的第1个值的相对地址存放在[D+1]. FP∑/FP2/FP2SH/FP10SH 适用机型 D S2 (*1)此处不适用FPΣ。 梯形图程序 布尔形式 指令地址 标志状态 · 错误标志(R9007) 当以下情况时变为ON并且保持 · 错误标志(R9008) 当以下情况时瞬间变为ON 编程时的注意事项 即使D+1超出指定的区域,也仍然保存结果.但随后的区域可能被破坏.(不进行越界检查) -使用索引寄存器指定数据区超出范围 - S1>S2 - S1与S2的数据区类型不同 -使用索引寄存器指定数据区超出范围 - S1>S2 - S1与S2的数据区类型不同 3-509 F271(DMAX) P271(PDMAX) 32bit数据最大值 概述 程序示例 操作数 在32bit数据表中查找最大值. (FPΣ不支持P271(PDMAX)指令) 10 11 ST R 0 F271 (DMAX) DT 10 DT 20 DT 30 触发器 32bit数据的起始16bit地址S1 3-510 A: 可以使用 N/A: 不可使用 索引寄存器 WX WY WR WL SV EV DT LD FL(*1) I K H f S1 A A A A A A A A A A N/A N/A N/A A N/A S2 A A A A A A A A A A N/A N/A N/A A N/A D N/A A A A A A A A A A N/A N/A N/A A N/A 整型设备 继电器 数据寄存器 索引变址 常数 操作数 定时器计数器 描述 32bit数据的结束地址S2 存放运算结果(最大值和相对地址)的16bit数据区起始地址(3字)D 当触发器变为ON时, 在由S1指定的起始区到S2指定的结束区之间数据表中(32bit)查找最大值, 最大值 存放在[D+1,D]中,相对位置存放在[D+2]. S1: 低位字 0 S1+1: 高位字 S1+2: 1 S1+3: : S2: 低位字 n S2+1: 高位字 双字数据表 D: 低位字 D+1: 高位字 D+2: 最大值 相对位置 相对位置 FP∑/FP2/FP2SH/FP10SH 适用机型 (*1)此处不适用FPΣ。 梯形图程序 布尔形式 指令地址 标志状态 · 错误标志(R9007) 当以下情况时变为ON并且保持 · 错误标志(R9008) 当以下情况时瞬间变为ON -使用索引寄存器指定数据区超出范围 - S1>S2 - S1和S2为不同类型的数据区 当S2指定为两个字的高位字时, 处理方式与指定低位字时的相同. 如果同时存在若干个相同的最大值,则从S1开始查找到的第一个最大值的相对地址被存放在D+2中. S1: 低位字 0 S1+1: 高位字 S1+2: 1 S1+3: : S2-1: 低位字 n S2: 高位字 2字数据表 D: 低位字 D+1: 高位字 D+2: 最大值 相对位置 相对位置 -使用索引寄存器指定数据区超出范围 - S1>S2 - S1和S2为不同类型的数据区 编程时的注意事项 即使D+2超出指定的区域,也仍然保存结果.但随后的区域可能被破坏.(不进行越界检查) 3-511 F272(MIN) P272(PMIN) 16bit数据最小值 概述 程序示例 操作数 在16bit数据表中查找最小值. (FPΣ不支持P272(PMIN)指令) 10 11 ST R 0 F272 (MIN) DT 10 DT 20 DT 30 触发器 16bit数据的起始地址S1 3-512 A: 可以使用 N/A: 不可使用 索引寄存器 WX WY WR WL SV EV DT LD FL(*1) I K H f S1 A A A A A A A A A A N/A N/A N/A A N/A S2 A A A A A A A A A A N/A N/A N/A A N/A D N/A A A A A A A A A A N/A N/A N/A A N/A 整型设备 继电器 数据寄存器 索引变址 常数 操作数 定时器计数器 描述 当触发器变为ON时, 在由S1指定的起始区到S2指定的结束区之间16bit数据表中查找最小值, 最小值 存放在[D]中,相对位置存放在[D+1]. 16bit数据的结束地址S2 存放运算结果(最小值和相对地址)的数据区(2字)D S1: 0 S1+1: 1 S1+2: 2 S1+3: 3 : S2: n 16bit数据表 D: D+1: 最小值 相对位置 相对位置 当有多个最小值存在时,从S1开始查找到的第1个值的相对地址存放在[D+1]. FP∑/FP2/FP2SH/FP10SH 适用机型 (*1)此处不适用FPΣ。 梯形图程序 布尔形式 指令地址 标志状态 · 错误标志(R9007) 当以下情况时变为ON并且保持 · 错误标志(R9008) 当以下情况时瞬间变为ON -使用索引寄存器指定数据区超出范围 - S1>S2 - S1与S2的数据区类型不同 编程时的注意事项 即使D+1超出指定的区域,也仍然保存结果.但随后的区域可能被破坏.(不进行越界检查) -使用索引寄存器指定数据区超出范围 - S1>S2 - S1与S2的数据区类型不同 3-513 F273(DMIN) P273(PDMIN) 32bit数据最小值 概述 程序示例 操作数 在32bit数据表中查找最小值. (FPΣ不支持P273(PDMIN)指令) 10 11 ST R 0 F273 (DMIN) DT 10 DT 20 DT 30 触发器 32bit数据的起始16bit地址S1 3-514 A: 可以使用 N/A: 不可使用 索引寄存器 WX WY WR WL SV EV DT LD FL(*1) I K H f S1 A A A A A A A A A A N/A N/A N/A A N/A S2 A A A A A A A A A A N/A N/A N/A A N/A D N/A A A A A A A A A A N/A N/A N/A A N/A 整型设备 继电器 数据寄存器 索引变址 常数 操作数 定时器计数器 描述 32bit数据的结束地址S2 存放运算结果(最小值和相对地址)的16bit数据区起始地址(3字)D 当触发器变为ON时, 在由S1指定的起始区到S2指定的结束区之间数据表中(32bit)查找最小值, 最小值 存放在[D+1,D]中,相对位置存放在[D+2]. S1: 低位字 0 S1+1: 高位字 S1+2: 1 S1+3: : S2: 低位字 n S2+1: 高位字 双字数据表 D: 低位字 D+1: 高位字 D+2: 最小值 相对位置 相对位置 FP∑/FP2/FP2SH/FP10SH 适用机型 (*1)此处不适用FPΣ。 梯形图程序 布尔形式 指令地址 标志状态 · 错误标志(R9007) 当以下情况时变为ON并且保持 · 错误标志(R9008) 当以下情况时瞬间变为ON -使用索引寄存器指定数据区超出范围 - S1>S2 - S1和S2为不同类型的数据区 当S2指定为两个字的高位字时, 处理方式与指定低位字时的相同. 如果同时存在若干个相同的最小值,则从S1开始查找到的第一个最小值的相对地址被存放在D+2中. S1: 低位字 0 S1+1: 高位字 S1+2: 1 S1+3: : S2-1: 低位字 n S2: 高位字 2字数据表 D: 低位字 D+1: 高位字 D+2: 最小值 相对位置 相对位置 -使用索引寄存器指定数据区超出范围 - S1>S2 - S1和S2为不同类型的数据区 编程时的注意事项 即使D+2超出指定的区域,也仍然保存结果.但随后的区域可能被破坏.(不进行越界检查) 3-515 F275(MEAN) P275(PMEAN) 16bit数据 合计值和平均值 概述 程序示例 操作数 计算16bit数据表的合计值和平均值. (FPΣ不支持P275(PMEAN)指令) 10 11 ST R 10 F275 (MEAN) DT 10 DT 20 DT 30 触发器 16bit数据表的起始地址S1 3-516 A: 可以使用 N/A: 不可使用 索引寄存器 WX WY WR WL SV EV DT LD FL(*1) I K H f S1 A A A A A A A A A A N/A N/A N/A A N/A S2 A A A A A A A A A A N/A N/A N/A A N/A D N/A A A A A A A A A A N/A N/A N/A A N/A 整型设备 继电器 数据寄存器 索引变址 常数 操作数 定时器计数器 描述 当触发器变为ON时, 计算从S1指定的起始区到S2指定的结束区之间数据表(16bit数据)的合计值和平均值, 结果存放在从D开始的区域中. 16bit数据表的结束地址S2 存放运算结果(合计值和平均值)的数据区(3字)D D: D+1: D+2: 合计值(32bit) 平均值(16bit) 平均值的的小数点以下部分被舍去, 结果为整数. FP∑/FP2/FP2SH/FP10SH 适用机型 (*1)此处不适用FPΣ。 梯形图程序 布尔形式 指令地址 标志状态 · 错误标志(R9007) 当以下情况时变为ON并且保持 · 错误标志(R9008) 当以下情况时瞬间变为ON -使用索引寄存器指定数据区超出范围 - S1>S2 - S1和S2为不同类型的数据区 -使用索引寄存器指定数据区超出范围 - S1>S2 - S1和S2为不同类型的数据区 编程时的注意事项 即使D+2超出指定的区域,也仍然保存结果.但随后的区域可能被破坏.(不进行越界检查) 3-517 F276(DMEAN) P276(PDMEAN) 32bit数据 合计值和平均值 概述 程序示例 操作数 计算32bit数据表的合计值和平均值. (FPΣ不支持P276(PDMEAN)指令) 10 11 ST R 0 F276 (DMEAN) DT 10 DT 20 DT 30 触发器 32bit数据表的起始16bit地址S1 3-518 A: 可以使用 N/A: 不可使用 索引寄存器 WX WY WR WL SV EV DT LD FL(*1) I K H f S1 A A A A A A A A A A N/A N/A N/A A N/A S2 A A A A A A A A A A N/A N/A N/A A N/A D N/A A A A A A A A A A N/A N/A N/A A N/A 整型设备 继电器 数据寄存器 索引变址 常数 操作数 定时器计数器 描述 当触发器变为ON时, 计算从S1指定的起始区到S2指定的结束区之间数据表(32bit数据)的合计值和平均值, 结果存放在从D开始的区域中. 32bit数据表的结束字地址S2 存放运算结果(合计值和平均值)的数据区的起始16bit地址(5字)D D: D+1: D+2: D+3: D+4: D+5: 合计值(64bit) 平均值(32bit) FP∑/FP2/FP2SH/FP10SH 适用机型 (*1)此处不适用FPΣ。 梯形图程序 布尔形式 指令地址 标志状态 · 错误标志(R9007) 当以下情况时变为ON并且保持 · 错误标志(R9008) 当以下情况时瞬间变为ON -使用索引寄存器指定数据区超出范围 - S1>S2 - S1和S2为不同类型的数据区 -使用索引寄存器指定数据区超出范围 - S1>S2 - S1和S2为不同类型的数据区 编程时的注意事项 即使D+5超出指定的区域,也仍然保存结果.但随后的区域可能被破坏.(不进行越界检查) 平均值的的小数点以下部分被舍去, 结果为整数. 当S2指定为双字数据的高位字时, 处理方式与指定低位字时的相同. S1: 低位字 0 S1+1: 高位字 S1+2: 1 S1+3: : S2-1: 低位字 n S2: 高位字 双字(32bit)数据表 指定区域 · 进位标志(R9009) 当运算产生上溢出或下溢出时瞬间变为ON 3-519 F277(SORT) P277(PSORT) 16bit数据表排序 (升序或降序) 概述 程序示例 操作数 将数据表中的数值按升序或降序排列. (FPΣ不支持P277(PSORT)指令) 10 11 ST R 0 F277 (SORT) DT 10 DT 19 K 0 触发器 16bit数据的起始地址S1 3-520 A: 可以使用 N/A: 不可使用 索引寄存器 WX WY WR WL SV EV DT LD FL(*1) I K H f S1 N/A A A A A A A A A A N/A N/A N/A A N/A S2 N/A A A A A A A A A A N/A N/A N/A A N/A S3 A A A A A A A A A A A A N/A A N/A 操作数 定时器计数器 整型设备 继电器 数据寄存器 索引变址 常数 存放16bit数据的结束地址S2 指定排序条件的常数或存放地址(K0:升序 K1:降序)S3 程序示例 当S3=K0(升序)时 当S3=K1(降序)时 DT10 K3000 DT11 K10 DT12 K3 DT13 K-1 DT14 K1000 DT15 K-30 DT16 K100 DT17 K30 DT18 K1 DT19 K-3 DT10 K3000 DT11 K10 DT12 K3 DT13 K-1 DT14 K1000 DT15 K-30 DT16 K100 DT17 K30 DT18 K1 DT19 K-3 DT10 K-30 DT11 K-3 DT12 K-1 DT13 K1 DT14 K3 DT15 K10 DT16 K30 DT17 K100 DT18 K300 DT19 K1000 DT10 K1000 DT11 K300 DT12 K100 DT13 K30 DT14 K10 DT15 K3 DT16 K1 DT17 K-1 DT18 K-3 DT19 K-30 FP∑/FP2/FP2SH/FP10SH 适用机型 (*1)此处不适用FPΣ。 梯形图程序 布尔形式 指令地址 标志状态 · 错误标志(R9007) 当以下情况时变为ON并且保持 · 错误标志(R9008) 当以下情况时瞬间变为ON -使用索引寄存器指定数据区超出范围 - S1>S2 - S1和S2为不同类型的数据区 -使用索引寄存器指定数据区超出范围 - S1>S2 - S1和S2为不同类型的数据区 描述 当触发器变为ON时, 将从S1指定的起始区到S2指定的结束区之间数据表(有符号整数)按升序 (从小到大)或降序(从大到小)排列. 排列顺序由S3指定. 如果S1=S2, 则不进行排序操作. 排序条件由S3按以下内容指定: - K0: 升序排列 - K1: 降序排列 排序方法采用2重排序.数据比较的次数与S1到S2的数据个数的平方成正比, 因此当排序数量较多时, 执行时间较长. 3-521 F278(DSORT) P278(PDSORT) 32bit数据表排序 (升序或降序) 概述 程序示例 操作数 将数据表中的数值按升序或降序排列. (FPΣ不支持P278(PDSORT)指令) 10 11 ST R 0 F278 (DSORT) DT 10 DT 19 K 0 触发器 16bit数据的起始地址(2字)S1 3-522 A: 可以使用 N/A: 不可使用 索引寄存器 WX WY WR WL SV EV DT LD FL(*1) I K H f S1 N/A A A A A A A A A A N/A N/A N/A A N/A S2 N/A A A A A A A A A A N/A N/A N/A A N/A S3 A A A A A A A A A A A A N/A A N/A 操作数 定时器计数器 整型设备 继电器 数据寄存器 索引变址 常数 存放16bit数据的结束地址(2字)S2 指定排序条件的常数或存放地址(K0:升序 K1:降序)S3 程序示例 当S3=K0(升序)时 当S3=K1(降序)时 DT10,11 K25000 DT12,13 K-4000 DT14,15 K1500 DT16,17 K-2600 DT18,19 K100000 DT10,11 K-4000 DT12,13 K-2600 DT14,15 K1500 DT16,17 K25000 DT18,19 K100000 DT10,11 K25000 DT12,13 K-4000 DT14,15 K1500 DT16,17 K-2600 DT18,19 K100000 DT10,11 K100000 DT12,13 K25000 DT14,15 K1500 DT16,17 K-2600 DT18,19 K-4000 FP∑/FP2/FP2SH/FP10SH 适用机型 (*1)此处不适用FPΣ。 梯形图程序 布尔形式 指令地址 标志状态 · 错误标志(R9007) 当以下情况时变为ON并且保持 · 错误标志(R9008) 当以下情况时瞬间变为ON -使用索引寄存器指定数据区超出范围 - S1>S2 - S1和S2为不同类型的数据区 当S2指定为双字数据的高位字时, 处理方式与指定低位字时的相同. S1: 低位字 0 S1+1: 高位字 S1+2: 1 S1+3: : S2-1: 低位字 n S2: 高位字 实数数据表 -使用索引寄存器指定数据区超出范围 - S1>S2 - S1和S2为不同类型的数据区 指定区域 描述 当触发器变为ON时, 将从S1指定的起始区到S2指定的结束区之间数据表(32bit有符号整数)按升序 (从小到大)或降序(从大到小)排列. 排列顺序由S3指定. 如果S1=S2, 则不进行排序操作. 排序条件由S3按以下内容指定: - K0: 升序排列 - K1: 降序排列 排序方法采用2重排序.数据比较的次数与S1到S2的数据个数的平方成正比, 因此当排序数量较多时, 执行时间较长. 3-523 F282(SCAL) P282(PSCAL) 16bit数据线性化 概述 程序示例 操作数 根据给定数据表,将输入数据X线性化输出到数据Y. (FPΣ不支持P282(PSCAL)指令) 10 11 ST R 10 F282 (SCAL) DT 0 DT 10 DT 120 触发器 相当于输入数据X的16bit数据或存放地址S1 3-524 A: 可以使用 N/A: 不可使用 索引寄存器 WX WY WR WL SV EV DT LD FL(*1) I(*2) K H f S1 A A A A A A A A A A A A N/A A S2 A A A A A A A A A A N/A N/A N/A A D N/A A A A A A A A A A N/A N/A N/A A 操作数 定时器计数器继电器 数据寄存器 索引变址 常数 存放用于线性化数据的16bit数据表的起始地址S2 线性化后输出数据Y的存放地址D 示例程序说明 计算存放在DT0中的输入数值X的对应输出数值Y,进行线性化计算所使用的数据表存放在从DT10 开始的数据区中.计算结果Y存放在DT120中. 1 (*1) FPΣ不支持 (*2) I0~ID FP∑/FP2/FP2SH/FP10SH 适用机型 梯形图程序 布尔形式 指令地址 标志状态 · 错误标志(R9007) 当以下情况时变为ON并且保持 · 错误标志(R9008) 当以下情况时瞬间变为ON -使用索引寄存器指定数据区超出范围 - “S2”中指定的n小于1或大于99. - “S2”指定的数据表超出允许使用范围 - Xn不是按单一的升序排列 描述 根据已有的数据表,计算输入数值X的线性化输出数值Y.输入的16bit数值由S1指定,数据表由S2指定. 数据表中的数据项目数量”n”,应该在数据表的起始字”S2”中被指定为”n+1”. 线性化数据表的配置如下: 输出数值 输入数值 编程时的注意事项 应该使Xt 大于Xt-1. Xt 和Yt 将根据指定的曲线被表达为16bit的数据. 如果X(S1)的数值小于x0, 则Y(D)的数值被指定为y0. 如果X(S1)的数值大于xn, 则Y(D)的数值被指定为yn. 数据表中允许的最大数量是99. 3-525 F283(DSCAL) P283(PDSCAL) 32bit数据线性化 概述 程序示例 操作数 根据给定数据表,将输入数据X线性化输出到数据Y. (FPΣ不支持P283(PDSCAL)指令) 10 11 ST R 10 F283 (PSCAL) DT 0 DT 10 DT 120 触发器 相当于输入数据X的32bit数据或存放地址S1 3-526 A: 可以使用 N/A: 不可使用 索引寄存器 WX WY WR WL SV EV DT LD FL(*1) I(*2) K H f S1 A A A A A A A A A A A A N/A A S2 A A A A A A A A A A N/A N/A N/A A D N/A A A A A A A A A A N/A N/A N/A A 操作数 定时器计数器继电器 数据寄存器 索引变址 常数 存放用于线性化处理的数据表的起始地址S2 线性化后输出数据Y的存放地址D 示例程序说明 计算存放在DT0中的输入数值X的对应输出数值Y,进行线性化计算所使用的数据表存放在从DT10 开始的数据区中.计算结果Y存放在DT120和DT121中. (*1) FPΣ不支持 (*2) I0~ID S1 FP∑/FP2/FP2SH/FP10SH 适用机型 梯形图程序 布尔形式 指令地址 标志状态 · 错误标志(R9007) 当以下情况时变为ON并且保持 · 错误标志(R9008) 当以下情况时瞬间变为ON -使用索引寄存器指定数据区超出范围 - “S2”中指定的n小于1或大于99. - “S2”指定的数据表超出允许使用范围 - Xn不是按单一的升序排列 描述 根据已有的数据表,计算输入数值X的线性化输出数值Y.输入的16bit数值由S1指定,数据表由S2指定. 数据表中的数据项目数量”n”,应该在数据表的起始字”S2”中被指定为”n+1”. 线性化数据表的配置如下: 编程时的注意事项 应该使Xt 大于Xt-1. Xt 和Yt 将根据指定的曲线被表达为32bit的数据. 如果X(S1)的数值小于x0, 则Y(D)的数值被指定为y0. 如果X(S1)的数值大于xn, 则Y(D)的数值被指定为yn. 数据表中允许的最大数量是99. 输出数值 输入数值 3-527 F285(LIMT) P285(PLIMT) 16bit数据上下限控制 概述 程序示例 操作数 对16bit数据根据进行上限位和下限位输出. (FPΣ不支持P285(PLIMT)指令) 10 11 ST R 0 F285 (PLIMT) DT 10 DT 20 DT 30 DT 40 触发器 下限数值或下限数值的存放地址S1 3-528 A: 可以使用 N/A: 不可使用 输入数据或输入数据的存放地址S3 索引寄存器 WX WY WR WL SV EV DT LD FL(*1) I(*2) K H f S1 A A A A A A A A A A A A N/A A N/A S2 A A A A A A A A A A A A N/A A N/A S3 A A A A A A A A A A A A N/A A N/A D N/A A A A A A A A A A N/A N/A N/A A N/A 操作数 定时器计数器 整型设备 继电器 数据寄存器 索引变址 常数 存放输出数值的地址D 上限数值或上限数值的存放地址S2 FP∑/FP2/FP2SH/FP10SH 适用机型 (*1) FPΣ不支持 (*2) I0~ID 梯形图程序 布尔形式 指令地址 标志状态 · 错误标志(R9007) 当以下情况时变为ON并且保持 · 错误标志(R9008) 当以下情况时瞬间变为ON -使用索引寄存器指定数据区超出范围 - S1>S2 -使用索引寄存器指定数据区超出范围 - S1>S2 描述 根据S1和S2中的下限值和上限值, 使S3指定的输入值的控制输出在上下限之间, 结果存放到D中. 输出的数值按以下情况处理: - 当下限值S1大于输入值S3时, 将下限值S1作为输出结果存放到D中. - 当上限值S2小于输入值S3时, 将上限值S2作为输出结果存放到D中. - 当下限值S1≤输入值S3≤上限值S2时, 将输入值S3作为输出结果存放到D中. 输出值[D] 输入值[S3]上限值[S2] [S2] [S1] 下限值[S1] 如果将下限S1设置为K-32768(或H8000), 则只执行上限位控制. 如果将上限S2设置为K32767(或H7FFF), 则只执行下限位控制. · =标志(R900B) 当处理结果位于上限和下限之间时为ON 3-529 F286(DLIMT) P286(PDLIMT) 32bit数据上下限控制 概述 程序示例 操作数 对32bit数据根据进行上限位和下限位输出. (FPΣ不支持P286(PDLIMT)指令) 10 11 ST R 0 F285 (PLIMT) DT 10 DT 20 DT 30 DT 40 触发器 下限数值或下限数值的存放地址(2字)S1 3-530 A: 可以使用 N/A: 不可使用 输入数据或输入数据的存放地址(2字)S3 索引寄存器 WX WY WR WL SV EV DT LD FL(*1) I(*2) K H f S1 A A A A A A A A A A A A N/A A N/A S2 A A A A A A A A A A A A N/A A N/A S3 A A A A A A A A A A A A N/A A N/A D N/A A A A A A A A A A N/A N/A N/A A N/A 操作数 定时器计数器 整型设备 继电器 数据寄存器 索引变址 常数 存放输出数值的地址(2字)D 上限数值或上限数值的存放地址(2字)S2 FP∑/FP2/FP2SH/FP10SH 适用机型 (*1) FPΣ不支持 (*2) I0~ID 梯形图程序 布尔形式 指令地址 标志状态 · 错误标志(R9007) 当以下情况时变为ON并且保持 · 错误标志(R9008) 当以下情况时瞬间变为ON -使用索引寄存器指定数据区超出范围 - S1>S2 -使用索引寄存器指定数据区超出范围 - S1>S2 描述 根据S1和S2中的下限值(2字)和上限值(2字), 使S3指定的输入值的控制输出在上下限之间, 结果(2字) 存放到D中. 输出的数值按以下情况处理: - 当下限值[S1+1,S1]大于输入值[S3+1,S3]时, 将下限值[S1+1,S1]作为输出结果存放到[D+1,D]中. - 当上限值[S2+1,S2]小于输入值[S3+1,S3]时, 将上限值[S2+1,S2]作为输出结果存放到[D+1,D]中. - 当下限值[S1+1,S1]≤输入值[S3+1,S3]≤上限值[S2+1,S2]时, 将输入值[S3+1,S3]作为输出结果 存放到[D+1,D中]. 输出值[D+1,D] 输入值[S3+1,S3]上限值[S2+1,S2] [S2+1,S2] [S1+1,S1] 下限值[S1+1,S1] 如果将下限[S1+1,S1]设置为K-2147483648(或H80000000), 则只执行上限位控制. 如果将上限[S2+1,S2]设置为K2147483647(或H7FFFFFFF), 则只执行下限位控制. · =标志(R900B) 当处理结果位于上限和下限之间时为ON 3-531 F287(BAND) P287(PBAND) 16bit数据死区控制 概述 程序示例 操作数 控制一个16bit数据的死区输出. (FPΣ不支持P287(PBAND)指令) 10 11 ST R 0 F287 (BAND) DT 10 DT 20 DT 30 DT 40 触发器 下限值的数值或存放地址S1 3-532 A: 可以使用 N/A: 不可使用 索引寄存器 WX WY WR WL SV EV DT LD FL(*1) I(*2) K H f S1 A A A A A A A A A A A A N/A A N/A S2 A A A A A A A A A A A A N/A A N/A S3 A A A A A A A A A A A A N/A A N/A D N/A A A A A A A A A A N/A N/A N/A A N/A 操作数 定时器计数器 整型设备 继电器 数据寄存器 索引变址 常数 程序示例说明 当DT10=K-100并且DT20=K100时 上限值的数值或存放地址S2 输入数据或存放地址S3 存放输出数据的地址D K-300 K-200 K-200 K-100 K-100~K100 K0 K200 K100 K300 K200 DT30的数值 DT40的数值 FP∑/FP2/FP2SH/FP10SH 适用机型 (*1) FPΣ不支持 (*2) I0~ID 梯形图程序 布尔形式 指令地址 标志状态 · 错误标志(R9007) 当以下情况时变为ON并且保持 · 错误标志(R9008) 当以下情况时瞬间变为ON - 使用索引寄存器指定数据区超出范围 - S1>S2 · =标志(R900B) 当处理结果被认为等于”0”时变为ON 输出值D 输入值S3 死区上限值S2 死区下限值S1 在此区间输出为0 · 进位标志(R9009) 当处理结果溢出时瞬间变为ON - 使用索引寄存器指定数据区超出范围 - S1>S2 描述 根据输入数据S3是否位于下限值S1和上限值S2(1字)之间的死区范围内,控制输出结果并存放在由D指定 的区域. 根据以下情况确定输出数值: 当下限值S1>输入值S3时, 输入值S3-下限值S1作为输出值写入D. 当上限值S2<输入值S3时, 输入值S3-上限值S2作为输出值写入D. 当下限值S1≤输入值S3≤上限值S2时, 0作为输出值写入D. 3-533 F288(DBAND) P288(PDBAND) 32bit数据死区控制 概述 程序示例 操作数 控制一个32bit数据的死区输出. (FPΣ不支持P288(PDBAND)指令) 10 11 ST R 0 F288 (DBAND) DT 10 DT 20 DT 30 DT 40 触发器 下限值的数值或存放地址(2字)S1 3-534 A: 可以使用 N/A: 不可使用 索引寄存器 WX WY WR WL SV EV DT LD FL(*1) I(*2) K H f S1 A A A A A A A A A A A A N/A A N/A S2 A A A A A A A A A A A A N/A A N/A S3 A A A A A A A A A A A A N/A A N/A D N/A A A A A A A A A A N/A N/A N/A A N/A 操作数 定时器计数器 整型设备 继电器 数据寄存器 索引变址 常数 程序示例说明 当[DT11,DT10]=K-10000并且[DT21,DT20]=K10000时 上限值的数值或存放地址(2字)S2 输入数据或存放地址(2字)S3 存放输出数据的地址(2字)D K-30000 K-20000 K-20000 K-10000 K-10000~K10000 K0 K20000 K10000 K30000 K20000 DT30的数值 DT40的数值 FP∑/FP2/FP2SH/FP10SH 适用机型 (*1) FPΣ不支持 (*2) I0~ID 梯形图程序 布尔形式 指令地址 标志状态 · 错误标志(R9007) 当以下情况时变为ON并且保持 · 错误标志(R9008) 当以下情况时瞬间变为ON - 使用索引寄存器指定数据区超出范围 - S1>S2 · =标志(R900B) 当处理结果被认为等于”0”时变为ON 输出值[D+1,D] 输入值[S3+1,S3] 死区上限值[S2+1,S2] 死区下限值[S1+1,S1] 在此区间输出为0 · 进位标志(R9009) 当处理结果溢出时瞬间变为ON - 使用索引寄存器指定数据区超出范围 - S1>S2 描述 根据输入数据S3是否位于下限值S1和上限值S2(2字)之间的死区范围内,控制输出结果并存放在由D指定 的区域. 根据以下情况确定输出数值: 当下限值[S1+1,S1]>输入值[S3+1,S3]时, 输入值[S3+1,S3]-下限值[S1+1,S1]作为输出值写入[D+1,D]. 当上限值[S2+1,S2]<输入值[S3+1,S3]时, 输入值[S3+1,S3]-上限值[S2+1,S2]作为输出值写入[D+1,D]. 当下限值[S1+1,S1]≤输入值[S3+1,S3]≤上限值[S2+1,S2]时, 0作为输出值写入[D+1,D]. 3-535 F289(ZONE) P289(PZONE) 16bit数据零区控制 概述 程序示例 操作数 控制一个16bit数据的零区输出. (FPΣ不支持P289(PZONE)指令) 10 11 ST R 0 F289 (ZONE) DT 10 DT 20 DT 30 DT 40 触发器 负偏置数值的数据或数据的存放地址S1 3-536 A: 可以使用 N/A: 不可使用 索引寄存器 WX WY WR WL SV EV DT LD FL(*1) I(*2) K H f S1 A A A A A A A A A A A A N/A A N/A S2 A A A A A A A A A A A A N/A A N/A S3 A A A A A A A A A A A A N/A A N/A D N/A A A A A A A A A A N/A N/A N/A A N/A 操作数 定时器计数器 整型设备 继电器 数据寄存器 索引变址 常数 正偏置数值的数据或数据的存放地址S2 输入数据或数据的存放地址S3 存放输出的数据D 程序示例说明 当DT10=K-100并且DT20=K100时 K-300 K-400 K-200 K-300 K-100 K-200 K0 K0 K100 K200 K200 K300 K300 K400 DT30的数值 DT40的数值 FP∑/FP2/FP2SH/FP10SH 适用机型 (*1) FPΣ不支持 (*2) I0~ID 梯形图程序 布尔形式 指令地址 标志状态 · 错误标志(R9007) 当以下情况时变为ON并且保持 · 错误标志(R9008) 当以下情况时瞬间变为ON - 使用索引寄存器指定数据区超出范围 · =标志(R900B) 当处理结果被认为等于”0”时变为ON · 进位标志(R9009) 当处理结果溢出时瞬间变为ON 输出值D 输入值S3 正偏置值S2 负偏置值S1 描述 当触发器变为ON时, 将由S1或S2指定偏置值与由S3指定的输入值(字数据)相加, 输出结果存放在 由D指定的区域. 根据以下情况确定输出数值: 当输入值S3<0时, 输入值S3+负偏置值S1作为输出值写入D. 当输入值S3=0时, 输出值为0. 当输入值S3>0时, 输入值S3+正偏置值S2作为输出值写入D. - 使用索引寄存器指定数据区超出范围 3-537 F290(DZONE) P290(PDZONE) 32bit数据零区控制 概述 程序示例 操作数 控制一个32bit(2字)数据的零区输出. (FPΣ不支持P290(PDZONE)指令) 10 11 ST R 0 F290 (DZONE) DT 10 DT 20 DT 30 DT 40 触发器 负偏置数值的数据(2字)或数据的存放地址S1 A: 可以使用 N/A: 不可使用 索引寄存器 WX WY WR WL SV EV DT LD FL(*1) I(*2) K H f S1 A A A A A A A A A A A A N/A A N/A S2 A A A A A A A A A A A A N/A A N/A S3 A A A A A A A A A A A A N/A A N/A D N/A A A A A A A A A A N/A N/A N/A A N/A 操作数 定时器计数器 整型设备 继电器 数据寄存器 索引变址 常数 正偏置数值的数据(2字)或数据的存放地址S2 输入数据(2字)或数据的存放地址S3 存放输出数据的地址(2字)D 程序示例说明 当[DT11,DT10]=K-10000并且[DT21,DT20]=K10000时 K-30000 K-40000 K-20000 K-30000 K-10000 K-20000 K0 K0 K10000 K20000 K20000 K30000 K30000 K40000 [DT31,DT30]的数值 [DT41,DT40]的数值 FP∑/FP2/FP2SH/FP10SH 适用机型 3-538 (*1) FPΣ不支持 (*2) I0~ID 梯形图程序 布尔形式 指令地址 标志状态 · 错误标志(R9007) 当以下情况时变为ON并且保持 · 错误标志(R9008) 当以下情况时瞬间变为ON - 使用索引寄存器指定数据区超出范围 - [S1+1, S1]和[S2+1,S2]、[S3+1,S3]指定的数据不是实数 - 在D+1,D指定为整数的情况下, 运算结果超出整数范围. - 使用索引寄存器指定数据区超出范围 - [S1+1, S1]和[S2+1,S2]、[S3+1,S3]指定的数据不是实数 - 在D+1,D指定为整数的情况下, 运算结果超出整数范围. · =标志(R900B) 当处理结果被认为等于”0”时变为ON · 进位标志(R9009) 当处理结果溢出时瞬间变为ON 输出值[D+1,D] 输入值[S3+1,S3] 正偏置值[S2+1,S2] 负偏置值[S1+1,S1] 描述 当触发器变为ON时, 将由S1或S2指定偏置值与由S3指定的输入值(2字数据)相加, 输出结果存放在 由D指定的区域. 根据以下情况确定输出数值: 当输入值[S3+1,S3]<0时, 输入值[S3+1,S3]+负偏置值[S1+1,S1]作为输出值写入[D+1,D]. 当输入值[S3+1,S3]=0时, 输出值为0. 当输入值[S3+1,S3]>0时, 输入值[S3+1,S3]+正偏置值[S2+1,S2]作为输出值写入[D+1,D]. 3-539 F300(BSIN) P300(PBSIN) BCD型SIN运算 概述 程序示例 操作数 示例说明 三角函数功能. 计算以BCD码表示的角度数据的正弦, 结果以BCD码存储. 10 11 ST R 0 F300 (BSIN) DT 10 DT 20 触发器 D 存放角度数据的地址或角度数据.S 存放运算结果的16-bit数据起始区(3个字) 计算角度45°的正弦值 计算角度270°的正弦值 A: 可以使用 N/A: 不可使用 索引寄存器 WX WY WR WL SV EV DT LD FL I K H f S A A A A A A A A A A A A N/A A N/A D N/A A A A A A A A A A N/A N/A N/A A N/A 整型设备 继电器 数据寄存器 索引变址 常数 操作数 定时器计数器 DT10: H45 DT20: H0 DT21: H0 DT22: H7071 DT10: H270 DT20: H1 DT21: H1 DT22: H0 ↓ ↓ FP2/FP2SH/FP10SH 适用机型 3-540 梯形图程序 布尔形式 指令地址 描述 3-541 计算由[S]指定的角度(以度为单位)的SIN值, 结果存放在从D开始的3个字的存储区. SIN([S]) → [D][D+1][D+2] D: 符号 D+1: 整数部分数值 D+2: 小数部分数值 通过S在0°~360°之间以1°为单位指定角度的BCD码. 必须保证指定的数值为BCD(H)码. 当运算结果为正数时, D中存放0; 当结果为负数时, D中存放1. 存放在D+1和D+2中的运算结果在-1.0000到+1.0000之间. D+2中存放的小数部分被四舍五入到4位. 标志状态 · 错误标志(R9007) 当以下情况时变为ON并且保持 · 错误标志(R9008) 当以下情况时瞬间变为ON - 使用索引寄存器指定数据区超出范围 - S指定的数据不是BCD码 - S指定的角度超出0°~360° - 使用索引寄存器指定数据区超出范围 - S指定的数据不是BCD码 - S指定的角度超出0°~360° · =标志(R900B) 当处理结果为0时变为ON F301(BCOS) P301(PBCOS) BCD型COS运算 概述 程序示例 操作数 示例说明 三角函数功能. 计算以BCD码表示的角度数据的余弦, 结果以BCD码存储. 10 11 ST R 0 F301 (BCOS) DT 10 DT 20 触发器 D 存放角度数据的地址或角度数据.S 存放运算结果的16-bit数据起始区(3个字) 计算角度30°的余弦值 计算角度135°的余弦值 3-542 A: 可以使用 N/A: 不可使用 DT10: H30 DT20: H0 DT21: H0 DT22: H8660 DT10: H135 DT20: H1 DT21: H0 DT22: H7071 ↓ ↓ FP2/FP2SH/FP10SH 适用机型 索引寄存器 WX WY WR WL SV EV DT LD FL I K H f S A A A A A A A A A A A A N/A A N/A D N/A A A A A A A A A A N/A N/A N/A A N/A 整型设备 继电器 数据寄存器 索引变址 常数 操作数 定时器计数器 布尔形式 指令地址 梯形图程序 描述 3-543 计算由[S]指定的角度(以度为单位)的COS值, 结果存放在从D开始的3个字的存储区. COS([S]) → [D][D+1][D+2] D: 符号 D+1: 整数部分数值 D+2: 小数部分数值 通过S在0°~360°之间以1°为单位指定角度的BCD码. 必须保证指定的数值为BCD(H)码. 当运算结果为正数时, D中存放0; 当结果为负数时, D中存放1. 存放在D+1和D+2中的运算结果在-1.0000到+1.0000之间. D+2中存放的小数部分被四舍五入到4位. 标志状态 · 错误标志(R9007) 当以下情况时变为ON并且保持 · 错误标志(R9008) 当以下情况时瞬间变为ON - 使用索引寄存器指定数据区超出范围 - S指定的数据不是BCD码 - S指定的角度超出0°~360° - 使用索引寄存器指定数据区超出范围 - S指定的数据不是BCD码 - S指定的角度超出0°~360° · =标志(R900B) 当处理结果为0时变为ON F302(BTAN) P302(PBTAN) BCD型TAN运算 概述 程序示例 操作数 示例说明 三角函数功能. 计算以BCD码表示的角度数据的正切, 结果以BCD码存储. 10 11 ST R 0 F302 (BTAN) DT 10 DT 20 触发器 D 存放角度数据的地址或角度数据.S 存放运算结果的16-bit数据起始区(3个字) 计算角度60°的正切值 计算角度135°的正切值 3-544 A: 可以使用 N/A: 不可使用 DT10: H60 DT20: H0 DT21: H1 DT22: H7321 DT10: H135 DT20: H1 DT21: H1 DT22: H0 ↓ ↓ FP2/FP2SH/FP10SH 适用机型 索引寄存器 WX WY WR WL SV EV DT LD FL I K H f S A A A A A A A A A A A A N/A A N/A D N/A A A A A A A A A A N/A N/A N/A A N/A 操作数 定时器计数器 整型设备 继电器 数据寄存器 索引变址 常数 布尔形式 指令地址 梯形图程序 描述 3-545 计算由[S]指定的角度(以度为单位)的TAN值, 结果存放在从D开始的3个字的存储区. TAN([S]) → [D][D+1][D+2] D: 符号 D+1: 整数部分数值 D+2: 小数部分数值 通过S在0°~360°之间以1°为单位指定角度的BCD码. 必须保证指定的数值为BCD(H)码. 当运算结果为正数时, D中存放0; 当结果为负数时, D中存放1. 存放在D+1和D+2中的运算结果在-57.2900到+57.2900之间. D+2中存放的小数部分被四舍五入到4位. 标志状态 · 错误标志(R9007) 当以下情况时变为ON并且保持 · 错误标志(R9008) 当以下情况时瞬间变为ON - 使用索引寄存器指定数据区超出范围 - S指定的数据不是BCD码 - S指定的角度超出0°~360° - S指定的角度在90°~270° · =标志(R900B) 当处理结果为0时变为ON - 使用索引寄存器指定数据区超出范围 - S指定的数据不是BCD码 - S指定的角度超出0°~360° - S指定的角度在90°~270° F303(BASIN) P303(PBASIN) BCD型反正弦运算 概述 程序示例 操作数 示例说明 三角函数功能. 计算以BCD码表示的数据的反正弦[SIN-1( )], 结果以 BCD码存储. 10 11 ST R 0 F303 (BASIN) DT 20 DT 10 触发器 D 存放待运算的16-bit数据起始区(3个字)S 存放运算结果的角度数据. 计算角度0.7071的arcSIN值 计算角度-0.5的arcSIN值 3-546 A: 可以使用 N/A: 不可使用 DT10: H45 DT20: H0 DT21: H0 DT22: H7071 DT10: H330 DT20: H1 DT21: H0 DT22: H5000 ↓ ↓ FP2/FP2SH/FP10SH 适用机型 索引寄存器 WX WY WR WL SV EV DT LD FL I K H f S A A A A A A A A A A N/A N/A N/A A N/A D N/A A A A A A A A A A N/A N/A N/A A N/A 操作数 定时器计数器 整型设备 继电器 数据寄存器 索引变址 常数 布尔形式 指令地址 梯形图程序 描述 3-547 计算由[S]开始的3个字的存储区指定的数据的SIN-1值, 结果存放在D. SIN-1([S][S+1][S+2]) → [D] S: 符号 S+1: 整数部分数值 S+2: 小数部分数值 当运算数据为正数时, S中存放0; 当数据为负数时, S中存放1. 存放在S+1和S+2中存放的整数和小数部分在0到1.0000之间. 运算结果以BCD码的形式存放在D中, 范围在0°~90°或 270°~360°(以度为单位) 标志状态 · 错误标志(R9007) 当以下情况时变为ON并且保持 · 错误标志(R9008) 当以下情况时瞬间变为ON - 使用索引寄存器指定数据区超出范围 - S+2, S+1, S指定的数据不是BCD码 - S+2, S+1, S指定的数据不在-1.0000到+1.0000之间 · =标志(R900B) 当处理结果为0时变为ON - 使用索引寄存器指定数据区超出范围 - S+2, S+1, S指定的数据不是BCD码 - S+2, S+1, S指定的数据不在-1.0000到+1.0000之间 F304(BACOS) P304(PBACOS) BCD型反余弦运算 概述 程序示例 操作数 示例说明 三角函数功能. 计算以BCD码表示的数据的反余弦[COS-1( )], 结果以 BCD码存储. 10 11 ST R 0 F304 (BACOS) DT 20 DT 10 触发器 D 存放待运算的16-bit数据起始区(3个字)S 存放运算结果的角度数据. 计算角度0.8660的arcCOS值 计算角度-0.5的arcCOS值 3-548 A: 可以使用 N/A: 不可使用 DT10: H30 DT20: H0 DT21: H0 DT22: H8660 DT10: H120 DT20: H1 DT21: H0 DT22: H5000 ↓ ↓ FP2/FP2SH/FP10SH 适用机型 索引寄存器 WX WY WR WL SV EV DT LD FL I K H f S A A A A A A A A A A N/A N/A N/A A N/A D N/A A A A A A A A A A N/A N/A N/A A N/A 操作数 定时器计数器 整型设备 继电器 数据寄存器 索引变址 常数 布尔形式 指令地址 梯形图程序 描述 3-549 计算由[S]开始的3个字的存储区指定的数据的COS-1值, 结果存放在D. COS-1([S][S+1][S+2]) → [D] S: 符号 S+1: 整数部分数值 S+2: 小数部分数值 当运算数据为正数时, S中存放0; 当数据为负数时, S中存放1. 存放在S+1和S+2中存放的整数和小数部分在0到1.0000之间. 运算结果以BCD码的形式存放在D中, 范围在0°~180°(以度为单位) 标志状态 · 错误标志(R9007) 当以下情况时变为ON并且保持 · 错误标志(R9008) 当以下情况时瞬间变为ON - 使用索引寄存器指定数据区超出范围 - S+2, S+1, S指定的数据不是BCD码 - S+2, S+1, S指定的数据不在-1.0000到+1.0000之间 · =标志(R900B) 当处理结果为0时变为ON - 使用索引寄存器指定数据区超出范围 - S+2, S+1, S指定的数据不是BCD码 - S+2, S+1, S指定的数据不在-1.0000到+1.0000之间 F305(BATAN) P305(PBATAN) BCD型反正切运算 概述 程序示例 操作数 示例说明 三角函数功能. 计算以BCD码表示的数据的反余弦[TAN-1( )], 结果以 BCD码存储. 10 11 ST R 0 F305 (BATAN) DT 20 DT 10 触发器 D 存放待运算的16-bit数据起始区(3个字)S 存放运算结果的角度数据. 计算角度1.7321的arcTAN值 计算角度-1的arcTAN值 3-550 A: 可以使用 N/A: 不可使用 DT10: H60 DT20: H0 DT21: H0 DT22: H7321 DT10: H315 DT20: H1 DT21: H1 DT22: H0 ↓ ↓ FP2/FP2SH/FP10SH 适用机型 索引寄存器 WX WY WR WL SV EV DT LD FL I K H f S A A A A A A A A A A N/A N/A N/A A N/A D N/A A A A A A A A A A N/A N/A N/A A N/A 操作数 定时器计数器 整型设备 继电器 数据寄存器 索引变址 常数 布尔形式 指令地址 梯形图程序 描述 3-551 计算由[S]开始的3个字的存储区指定的数据的TAN-1值, 结果存放在D. TAN-1 ([S][S+1][S+2]) → [D] S: 符号 S+1: 整数部分数值 S+2: 小数部分数值 当运算数据为正数时, S中存放0; 当数据为负数时, S中存放1. 存放在S+1和S+2中存放的整数和小数部分在0到9999.9999之间. 运算结果以BCD码的形式存放在D中, 范围在0°~90°或 270°~360° (以度为单位) 标志状态 · 错误标志(R9007) 当以下情况时变为ON并且保持 · 错误标志(R9008) 当以下情况时瞬间变为ON - 使用索引寄存器指定数据区超出范围 - S+2, S+1, S指定的数据不是BCD码 · =标志(R900B) 当处理结果为0时变为ON - 使用索引寄存器指定数据区超出范围 - S+2, S+1, S指定的数据不是BCD码 F309(FMV) P309(PFMV) 浮点数移动 概述 程序示例 操作数 示例说明 将浮点数(32位)复制到指定的32-bit存储区. FP0、FP-e和FPΣ不支持P型的高级指令. 10 11 ST R 0 F309 (FMV) f 1.234 DT 10 触发器 D 浮点数(32位)或32位数据的低16位的地址(源数据).S 32位数据的低16位的地址(目标数据) 当触发器R0变为ON时, 将浮点数f1.234复制到DT11和DT10. 3-552 A: 可以使用 N/A: 不可使用 索引寄存器 WX WY WR WL SV EV DT LD FL I K H f S N/A N/A N/A N/A N/A N/A N/A N/A N/A N/A N/A N/A A N/A N/A D N/A A A A A A A A A A N/A N/A N/A A N/A 整型设备 继电器 数据寄存器 索引变址 常数 操作数 定时器计数器 DT10: DT11: (f1.234) FP-e/FP0/FP∑/FP2/FP2SH/FP10SH 适用机型 (*1) WL、LD不适用FP0和FP-e。 (*2) FL不适用FP0、FP-e和FPΣ。 (*3) 对于FP0和FP-e,I为IX和IY; 对于FPΣ、FP2、FP2SH和FP10SH,I为I0~ID。 梯形图程序 布尔形式 指令地址 描述 3-553 当触发器变为ON时, 由[S]指定的浮点数(32位)被复制到由D指定的32位数据区. 浮点数数据: 实数数据: 15 0 DT: DT+1: 可以设置的实数范围如下: 正数: f0.0000001 到 f9999999 负数: f-9999999 到 f-0.000001 标志状态 · 错误标志(R9007) 当以下情况时变为ON并且保持 · 错误标志(R9008) 当以下情况时瞬间变为ON - 使用索引寄存器指定数据区超出范围 - 使用索引寄存器指定数据区超出范围 低位字 高位字 编程时注意事项 本指令F309(FMV)不能在中断程序中使用. F310(F+) P310(PF+) 浮点数加法 概述 程序示例 操作数 将两个实数相加, 结果存放到指定的32-bit存储区. FP0、FP-e和FPΣ不支持P型的高级指令. 10 11 ST R 0 F310 (F+) DT 10 DT 20 DT 30 触发器 S2 浮点数(32位)或32位数据的低16位的地址(被加数).S1 浮点数(32位)或32位数据的低16位的地址(加数). 3-554 A: 可以使用 N/A: 不可使用 索引寄存器 WX WY WR WL SV EV DT LD FL I K H f S1 A A A A A A A A A A A A A A* A S2 A A A A A A A A A A A A A A* A D N/A A A A A A A A A A N/A N/A N/A A A 操作数 定时器计数器 整型设备 继电器 数据寄存器 索引变址 常数 32位数据的低16位的地址(结果).D * 实数不能使用变址索引 描述 当触发器变为ON时, 将由S1和S2指定浮点数(2字)相加. 结果存放到D+1和D. [S1+1, S1] + [S2+1, S2] → [D+1, D] 由[S1]和[S2]指定整型数据时, 在运算之前整型数将被转换为浮点数. FP-e/FP0/FP∑/FP2/FP2SH/FP10SH 适用机型 (*1) WL、LD不适用FP0和FP-e。 (*2) FL不适用FP0、FP-e和FPΣ。 (*3) 对于FP0和FP-e,I为IX和IY; 对于FPΣ、FP2、FP2SH和FP10SH,I为I0~ID。 梯形图程序 布尔形式 指令地址 3-555 如果由[D]指定整型数, 则浮点数将被自动转换为整型数. 标志状态 · 错误标志(R9007) 当以下情况时变为ON并且保持 · 错误标志(R9008) 当以下情况时瞬间变为ON - 使用索引寄存器指定数据区超出范围 - [S1+1, S1]或[S2+1, S2]指定的数据不是实数 - 当[D+1, D]指定为整型数时, 运算结果超出整型数范围. · 进位标志(R9009) 当运算结果溢出时, 瞬间变为ON 如果在S1或S2中指定了K常数, 则运算处理与指定整型数时的相同. 编程时注意事项 本指令F310(F+)不能在中断程序中使用. 有关整型数处理的详细内容, 请参阅有关章节. 示例程序 - 使用索引寄存器指定数据区超出范围 - [S1+1, S1]或[S2+1, S2]指定的数据不是实数 - 当[D+1, D]指定为整型数时, 运算结果超出整型数范围. 当R0变为ON时, f4.554被存放到DT30和DT31中. 当R0变为ON时, f24.69被存放到DT30和DT31中. F311(F-) P311(PF-) 浮点数减法 概述 程序示例 操作数 将两个实数相减, 结果存放到指定的32-bit存储区. FP0、FP-e和FPΣ不支持P型的高级指令. 10 11 ST R 0 F311 (F-) DT 10 DT 20 DT 30 触发器 S2 浮点数(32位)或32位数据的低16位的地址(被减数).S1 浮点数(32位)或32位数据的低16位的地址(减数). 3-556 A: 可以使用 N/A: 不可使用 索引寄存器 WX WY WR WL SV EV DT LD FL I K H f S1 A A A A A A A A A A A A A A* A S2 A A A A A A A A A A A A A A* A D N/A A A A A A A A A A N/A N/A N/A A A 整型设备 继电器 数据寄存器 索引变址 常数 操作数 定时器计数器 32位数据的低16位的地址(结果).D * 实数不能使用变址索引 当触发器变为ON时, 将由S1和S2指定浮点数(2字)相减. 结果存放到D+1和D. [S1+1, S1] - [S2+1, S2] → [D+1, D] 由[S1]和[S2]指定整型数据时, 在运算之前整型数将被转换为浮点数. 描述 FP-e/FP0/FP∑/FP2/FP2SH/FP10SH 适用机型 (*1) WL、LD不适用FP0和FP-e。 (*2) FL不适用FP0、FP-e和FPΣ。 (*3) 对于FP0和FP-e,I为IX和IY; 对于FPΣ、FP2、FP2SH和FP10SH,I为I0~ID。 梯形图程序 布尔形式 指令地址 3-557 如果由[D]指定整型数, 则浮点数将被自动转换为整型数. 标志状态 · 错误标志(R9007) 当以下情况时变为ON并且保持 · 错误标志(R9008) 当以下情况时瞬间变为ON - 使用索引寄存器指定数据区超出范围 - [S1+1, S1]或[S2+1, S2]指定的数据不是实数 - 当[D+1, D]指定为整型数时, 运算结果超出整型数范围. · 进位标志(R9009) 当运算结果溢出时, 瞬间变为ON 如果在S1或S2中指定了K常数, 则运算处理与指定整型数时的相同. 编程时注意事项 本指令F311(F-)不能在中断程序中使用. 有关整型数处理的详细内容, 请参阅有关章节. 示例程序 - 使用索引寄存器指定数据区超出范围 - [S1+1, S1]或[S2+1, S2]指定的数据不是实数 - 当[D+1, D]指定为整型数时, 运算结果超出整型数范围. 当R0变为ON时, f0.445被存放到DT30和DT31中. 当R0变为ON时, f100.05被存放到DT30和DT31中. F312(F*) P312(PF*) 浮点数乘法 概述 程序示例 操作数 将两个实数相乘, 结果存放到指定的32-bit存储区. FP0、FP-e和FPΣ不支持P型的高级指令. 10 11 ST R 0 F312 (F*) DT 10 DT 20 DT 30 触发器 S2 浮点数(32位)或32位数据的低16位的地址(被乘数).S1 浮点数(32位)或32位数据的低16位的地址(乘数). 3-558 A: 可以使用 N/A: 不可使用 索引寄存器 WX WY WR WL SV EV DT LD FL I K H f S1 A A A A A A A A A A A A A A* A S2 A A A A A A A A A A A A A A* A D N/A A A A A A A A A A N/A N/A N/A A A 整型设备 继电器 数据寄存器 索引变址 常数 操作数 定时器计数器 32位数据的低16位的地址(结果).D * 实数不能使用变址索引 当触发器变为ON时, 将由S1和S2指定浮点数(2字)相乘. 结果存放到D+1和D(32位). [S1+1, S1] × [S2+1, S2] → [D+1, D] 由[S1]和[S2]指定整型数据时, 在运算之前整型数将被转换为浮点数. 描述 FP-e/FP0/FP∑/FP2/FP2SH/FP10SH 适用机型 (*1) WL、LD不适用FP0和FP-e。 (*2) FL不适用FP0、FP-e和FPΣ。 (*3) 对于FP0和FP-e,I为IX和IY; 对于FPΣ、FP2、FP2SH和FP10SH,I为I0~ID。 梯形图程序 布尔形式 指令地址 3-559 如果由[D]指定整型数, 则浮点数将被自动转换为整型数. 标志状态 · 错误标志(R9007) 当以下情况时变为ON并且保持 · 错误标志(R9008) 当以下情况时瞬间变为ON - 使用索引寄存器指定数据区超出范围 - [S1+1, S1]或[S2+1, S2]指定的数据不是实数 - 当[D+1, D]指定为整型数时, 运算结果超出整型数范围. · 进位标志(R9009) 当运算结果溢出时, 瞬间变为ON 如果在S1或S2中指定了K常数, 则运算处理与指定整型数时的相同. 编程时注意事项 本指令F312(F*)不能在中断程序中使用. 有关整型数处理的详细内容, 请参阅有关章节. 示例程序 - 使用索引寄存器指定数据区超出范围 - [S1+1, S1]或[S2+1, S2]指定的数据不是实数 - 当[D+1, D]指定为整型数时, 运算结果超出整型数范围. 当R0变为ON时, f123.4000被存放到DT30和DT31中. F313(F%) P313(PF%) 浮点数除法 概述 程序示例 操作数 将两个实数相除, 结果存放到指定的32-bit存储区. FP0、FP-e和FPΣ不支持P型的高级指令. 10 11 ST R 0 F313 (F%) DT 10 DT 20 DT 30 触发器 S2 浮点数(32位)或32位数据的低16位的地址(被除数).S1 浮点数(32位)或32位数据的低16位的地址(除数). 3-560 A: 可以使用 N/A: 不可使用 索引寄存器 WX WY WR WL SV EV DT LD FL I K H f S1 A A A A A A A A A A A A A A* A S2 A A A A A A A A A A A A A A* A D N/A A A A A A A A A A N/A N/A N/A A A 整型设备 继电器 数据寄存器 索引变址 常数 操作数 定时器计数器 32位数据的低16位的地址(结果).D * 实数不能使用变址索引 当触发器变为ON时, 将由S1和S2指定浮点数(2字)相除. 结果存放到D+1和D(32位). [S1+1, S1] ÷ [S2+1, S2] → [D+1, D] 由[S1]和[S2]指定整型数据时, 在运算之前整型数将被转换为浮点数. 描述 FP-e/FP0/FP∑/FP2/FP2SH/FP10SH 适用机型 (*1) WL、LD不适用FP0和FP-e。 (*2) FL不适用FP0、FP-e和FPΣ。 (*3) 对于FP0和FP-e,I为IX和IY; 对于FPΣ、FP2、FP2SH和FP10SH,I为I0~ID。 梯形图程序 布尔形式 指令地址 3-561 如果由[D]指定整型数, 则浮点数将被自动转换为整型数. 标志状态 · 错误标志(R9007) 当以下情况时变为ON并且保持 · 错误标志(R9008) 当以下情况时瞬间变为ON - 使用索引寄存器指定数据区超出范围 - [S1+1, S1]或[S2+1, S2]指定的数据不是实数 - 当[D+1, D]指定为整型数时, 运算结果超出整型数范围. - 当[S2]指定的实数(浮点数)等于“0.0”时 · 进位标志(R9009) 当运算结果溢出时, 瞬间变为ON 如果在S1或S2中指定了K常数, 则运算处理与指定整型数时的相同. 编程时注意事项 本指令F313(F%)不能在中断程序中使用. 有关整型数处理的详细内容, 请参阅有关章节. 示例程序 当R0变为ON时, f5.432100被存放到DT30和DT31中. - 使用索引寄存器指定数据区超出范围 - [S1+1, S1]或[S2+1, S2]指定的数据不是实数 - 当[D+1, D]指定为整型数时, 运算结果超出整型数范围. - 当[S2]指定的实数(浮点数)等于“0.0”时 F313 F%, F314(SIN) P314(PSIN) 实数型SIN运算 概述 程序示例 操作数 描述 三角函数功能. 计算数据的正弦函数. FP0、FP-e和FPΣ不支持P型的高级指令. 10 11 ST R 0 F314 (SIN) DT 10 DT 20 触发器 D 角度数据(32位)或存放角度数据的32位数据的低16位地址S 32位数据的低16位的地址(结果) 3-562 A: 可以使用 N/A: 不可使用 索引寄存器 WX WY WR WL SV EV DT LD FL I K H f S A A A A A A A A A A A A A A* A D N/A A A A A A A A A A N/A N/A N/A A A 整型设备 继电器 数据寄存器 索引变址 常数 操作数 定时器计数器 * 实数不能使用变址索引 当触发器变为ON时, 计算S+1和S指定的角度数据(以弧度为单位)正弦SIN([S+1, S]). 结果存放 到D+1和D(32位). SIN( [S+1, S] ) → [D+1, D] 由[S]指定整型数据时, 在运算之前整型数将被转换为浮点数. FP-e/FP0/FP∑/FP2/FP2SH/FP10SH 适用机型 (*1) WL、LD不适用FP0和FP-e。 (*2) FL不适用FP0、FP-e和FPΣ。 (*3) 对于FP0和FP-e,I为IX和IY; 对于FPΣ、FP2、FP2SH和FP10SH,I为I0~ID。 梯形图程序 布尔形式 指令地址 如果由[D]指定整型数, 则浮点数将被自动转换为整型数. 标志状态 · 错误标志(R9007) 当以下情况时变为ON并且保持 · 错误标志(R9008) 当以下情况时瞬间变为ON - 使用索引寄存器指定数据区超出范围 - [S+1, S]指定的数据不是实数 - 当[D+1, D]指定为整型数时, 运算结果超出整型数范围时 - 当[S+1, S]指定的绝对值大于或等于52707176时 · =标志(R900B) 当运算结果被认为等于0时变为ON 如果在S中指定了K常数, 则运算处理与指定整型数时的相同. 编程时注意事项 随着[S+1, S]指定的数值的绝对值增大, 计算精度将降低.因此建议使用以下范围内的角度数据. -2π(弧度)≤[S+1, S]≤2π(弧度) 本指令F314(SIN)不能在中断程序中使用. 有关整型数处理的详细内容, 请参阅有关章节. 示例程序 当R0变为ON时, “f0.4999999”被存放到DT20和DT21中. 30°的对应弧度值 - 使用索引寄存器指定数据区超出范围 - [S+1, S]指定的数据不是实数 - 当[D+1, D]指定为整型数时, 运算结果超出整型数范围时 - 当[S+1, S]指定的绝对值大于或等于52707176时 · 进位标志(R9009) 当运算结果溢出时瞬间变为ON 3-563 F315(COS) P315(PCOS) 实数型COS运算 概述 程序示例 操作数 描述 三角函数功能. 计算数据的余弦函数. FP0、FP-e和FPΣ不支持P型的高级指令. 10 11 ST R 0 F315 (COS) DT 10 DT 20 触发器 D 角度数据(32位)或存放角度数据的32位数据的低16位地址S 32位数据的低16位的地址(结果) 3-564 A: 可以使用 N/A: 不可使用 * 实数不能使用变址索引 当触发器变为ON时, 计算S+1和S指定的角度数据(以弧度为单位)余弦COS([S+1, S]). 结果存放 到D+1和D(32位). COS( [S+1, S] ) → [D+1, D] 由[S]指定整型数据时, 在运算之前整型数将被转换为浮点数. 索引寄存器 WX WY WR WL SV EV DT LD FL I K H f S A A A A A A A A A A A A A A* A D N/A A A A A A A A A A N/A N/A N/A A A 整型设备 继电器 数据寄存器 索引变址 常数 操作数 定时器计数器 FP-e/FP0/FP∑/FP2/FP2SH/FP10SH 适用机型 (*1) WL、LD不适用FP0和FP-e。 (*2) FL不适用FP0、FP-e和FPΣ。 (*3) 对于FP0和FP-e,I为IX和IY; 对于FPΣ、FP2、FP2SH和FP10SH,I为I0~ID。 梯形图程序 布尔形式 指令地址 如果由[D]指定整型数, 则浮点数将被自动转换为整型数. 标志状态 · 错误标志(R9007) 当以下情况时变为ON并且保持 · 错误标志(R9008) 当以下情况时瞬间变为ON - 使用索引寄存器指定数据区超出范围 - [S+1, S]指定的数据不是实数 - 当[D+1, D]指定为整型数时, 运算结果超出整型数范围时 - 当[S+1, S]指定的绝对值大于或等于52707176时 · =标志(R900B) 当运算结果被认为等于0时变为ON 如果在S中指定了K常数, 则运算处理与指定整型数时的相同. 编程时注意事项 随着[S+1, S]指定的数值的绝对值增大, 计算精度将降低.因此建议使用以下范围内的角度数据. -2π(弧度)≤[S+1, S]≤2π(弧度) 本指令F315(COS)不能在中断程序中使用. 有关整型数处理的详细内容, 请参阅有关章节. 示例程序 当R0变为ON时, “f0.7071068”被存放到DT20和DT21中. 45°的对应弧度值 - 使用索引寄存器指定数据区超出范围 - [S+1, S]指定的数据不是实数 - 当[D+1, D]指定为整型数时, 运算结果超出整型数范围时 - 当[S+1, S]指定的绝对值大于或等于52707176时 · 进位标志(R9009) 当运算结果溢出时瞬间变为ON 3-565 F316(TAN) P316(PTAN) 实数型TAN运算 概述 程序示例 操作数 描述 三角函数功能. 计算数据的正切函数. FP0、FP-e和FPΣ不支持P型的高级指令. 10 11 ST R 0 F316 (TAN) DT 10 DT 20 触发器 D 角度数据(32位)或存放角度数据的32位数据的低16位地址S 32位数据的低16位的地址(结果) 3-566 A: 可以使用 N/A: 不可使用 * 实数不能使用变址索引 当触发器变为ON时, 计算S+1和S指定的角度数据(以弧度为单位)正切TAN([S+1, S]). 结果存放到 D+1和D(32位). TAN( [S+1, S] ) → [D+1, D] 由[S]指定整型数据时, 在运算之前整型数将被转换为浮点数. 索引寄存器 WX WY WR WL SV EV DT LD FL I K H f S A A A A A A A A A A A A A A* A D N/A A A A A A A A A A N/A N/A N/A A A 整型设备 继电器 数据寄存器 索引变址 常数 操作数 定时器计数器 由[D]指定整型数据时,浮点数将被转换为整型数. 如果在S中指定了K常数, 则运算处理与指定整型数时的相同. 有关整型数处理的详细内容, 请参阅有关章节. FP-e/FP0/FP∑/FP2/FP2SH/FP10SH 适用机型 (*1) WL、LD不适用FP0和FP-e。 (*2) FL不适用FP0、FP-e和FPΣ。 (*3) 对于FP0和FP-e,I为IX和IY; 对于FPΣ、FP2、FP2SH和FP10SH,I为I0~ID。 梯形图程序 布尔形式 指令地址 标志状态 · 错误标志(R9007) 当以下情况时变为ON并且保持 · 错误标志(R9008) 当以下情况时瞬间变为ON - 使用索引寄存器指定数据区超出范围 - [S+1, S]指定的数据不是实数 - 当[D+1, D]指定为整型数时, 运算结果超出整型数范围时 - 当[S+1, S]指定的绝对值大于或等于52707176时 · =标志(R900B) 当运算结果被认为等于0时变为ON 编程时注意事项 随着[S+1, S]指定的数值的绝对值增大, 计算精度将降低.因此建议使用以下范围内的角度数据. -2π(弧度)≤[S+1, S]≤2π(弧度) 本指令F316(TAN)不能在中断程序中使用. 示例程序 当R0变为ON时, “f1.732048”被存放到DT20和DT21中. 60°的对应弧度值 - 使用索引寄存器指定数据区超出范围 - [S+1, S]指定的数据不是实数 - 当[D+1, D]指定为整型数时, 运算结果超出整型数范围时 - 当[S+1, S]指定的绝对值大于或等于52707176时 · 进位标志(R9009) 当运算结果溢出时瞬间变为ON 3-567 F317(ASIN) P317(PASIN) 实数型arcSIN运算 概述 程序示例 操作数 描述 三角函数功能. 计算数据的反正弦函数. FP0、FP-e和FPΣ不支持P型的高级指令. 10 11 ST R 0 F317 (ASIN) DT 10 DT 20 触发器 D 角度数据(32位)或存放角度数据的32位数据的低16位地址S 32位数据的低16位的地址(结果) A: 可以使用 N/A: 不可使用* 实数不能使用变址索引 当触发器变为ON时, 计算S+1和S指定数据的反正弦([S+1, S]). 结果(以弧度为单位)存放到D+1 和D(32位). SIN-1 ( [S+1, S] ) → [D+1, D] 由[S]指定整型数据时, 在运算之前整型数将被转换为浮点数. 索引寄存器 WX WY WR WL SV EV DT LD FL I K H f S A A A A A A A A A A A A A A* A D N/A A A A A A A A A A N/A N/A N/A A A 操作数 定时器计数器 整型设备 继电器 数据寄存器 索引变址 常数 由[D]指定整型数据时,浮点数将被转换为整型数. 如果在S中指定了K常数, 则运算处理与指定整型数时的相同. 有关整型数处理的详细内容, 请参阅有关章节. FP-e/FP0/FP∑/FP2/FP2SH/FP10SH 适用机型 3-568 (*1) WL、LD不适用FP0和FP-e。 (*2) FL不适用FP0、FP-e和FPΣ。 (*3) 对于FP0和FP-e,I为IX和IY; 对于FPΣ、FP2、FP2SH和FP10SH,I为I0~ID。 梯形图程序 布尔形式 指令地址 标志状态 · 错误标志(R9007) 当以下情况时变为ON并且保持 · 错误标志(R9008) 当以下情况时瞬间变为ON - 使用索引寄存器指定数据区超出范围 - [S+1, S]指定的数据不是实数 - 当[S+1, S]超出范围 -1.0≤ [S+1, S] ≤1.0 - 在[D+1, D]被指定为整型数的情况下, 处理结果超出整型数范围 · =标志(R900B) 当运算结果被认为等于0时变为ON 编程时注意事项 [D+1, D]中存放的结果在以下范围内. -π/2(弧度)≤[D+1, D]≤π/2(弧度) 本指令F317(ASIN)不能在中断程序中使用. 示例程序 当R0变为ON时, “f0.5235986(30°的弧度)”被存放到DT20和DT21中. · 进位标志(R9009) 当运算结果溢出时瞬间变为ON - 使用索引寄存器指定数据区超出范围 - [S+1, S]指定的数据不是实数 - 当[S+1, S]超出范围 -1.0≤ [S+1, S] ≤1.0 - 在[D+1, D]被指定为整型数的情况下, 处理结果超出整型数范围 3-569 F318(ACOS) P318(PACOS) 实数型arcCOS运算 概述 程序示例 操作数 描述 三角函数功能. 计算数据的反余弦函数. FP0、FP-e和FPΣ不支持P型的高级指令. 10 11 ST R 0 F318 (ACOS) DT 10 DT 20 触发器 D 角度数据(32位)或存放角度数据的32位数据的低16位地址S 32位数据的低16位的地址(结果) 3-570 A: 可以使用 N/A: 不可使用 * 实数不能使用变址索引 当触发器变为ON时, 计算S+1和S指定数据的反余弦([S+1, S]). 结果(以弧度为单位)存放到D+1 和D(32位). COS-1 ( [S+1, S] ) → [D+1, D] 由[S]指定整型数据时, 在运算之前整型数将被转换为浮点数. 索引寄存器 WX WY WR WL SV EV DT LD FL I K H f S A A A A A A A A A A A A A A* A D N/A A A A A A A A A A N/A N/A N/A A A 整型设备 继电器 数据寄存器 索引变址 常数 操作数 定时器计数器 由[D]指定整型数据时,浮点数将被转换为整型数. 如果在S中指定了K常数, 则运算处理与指定整型数时的相同. 有关整型数处理的详细内容, 请参阅有关章节. FP-e/FP0/FP∑/FP2/FP2SH/FP10SH 适用机型 (*1) WL、LD不适用FP0和FP-e。 (*2) FL不适用FP0、FP-e和FPΣ。 (*3) 对于FP0和FP-e,I为IX和IY; 对于FPΣ、FP2、FP2SH和FP10SH,I为I0~ID。 布尔形式 指令 梯形图程序 地址 标志状态 · 错误标志(R9007) 当以下情况时变为ON并且保持 · 错误标志(R9008) 当以下情况时瞬间变为ON - 使用索引寄存器指定数据区超出范围 - [S+1, S]指定的数据不是实数 - 当[S+1, S]超出范围 -1.0≤ [S+1, S] ≤1.0 - 在[D+1, D]被指定为整型数的情况下, 处理结果超出整型数范围 · =标志(R900B) 当运算结果被认为等于0时变为ON 编程时注意事项 [D+1, D]中存放的结果在以下范围内. 0.0(弧度)≤[D+1, D]≤π(弧度) 本指令F318(ACOS)不能在中断程序中使用. 示例程序 当R0变为ON时, “f0.7853980(45°的弧度)”被存放到DT20和DT21中. · 进位标志(R9009) 当运算结果溢出时瞬间变为ON - 使用索引寄存器指定数据区超出范围 - [S+1, S]指定的数据不是实数 - 当[S+1, S]超出范围 -1.0≤ [S+1, S] ≤1.0 - 在[D+1, D]被指定为整型数的情况下, 处理结果超出整型数范围 3-571 F319(ATAN) P319(PATAN) 实数型arcTAN运算 概述 程序示例 操作数 描述 三角函数功能. 计算数据的反正切函数. FP0、FP-e和FPΣ不支持P型的高级指令. 10 11 ST R 0 F319 (ATAN) DT 10 DT 20 触发器 D 角度数据(32位)或存放角度数据的32位数据的低16位地址S 32位数据的低16位的地址(结果) 3-572 A: 可以使用 N/A: 不可使用 * 实数不能使用变址索引 当触发器变为ON时, 计算S+1和S指定数据的反正切([S+1, S]). 结果(以弧度为单位)存放到D+1 和D(32位). TAN-1 ( [S+1, S] ) → [D+1, D] 由[S]指定整型数据时, 在运算之前整型数将被转换为浮点数. 索引寄存器 WX WY WR WL SV EV DT LD FL I K H f S A A A A A A A A A A A A A A* A D N/A A A A A A A A A A N/A N/A N/A A A 整型设备 继电器 数据寄存器 索引变址 常数 操作数 定时器计数器 由[D]指定整型数据时,浮点数将被转换为整型数. 如果在S中指定了K常数, 则运算处理与指定整型数时的相同. 有关整型数处理的详细内容, 请参阅有关章节. FP-e/FP0/FP∑/FP2/FP2SH/FP10SH 适用机型 (*1) WL、LD不适用FP0和FP-e。 (*2) FL不适用FP0、FP-e和FPΣ。 (*3) 对于FP0和FP-e,I为IX和IY; 对于FPΣ、FP2、FP2SH和FP10SH,I为I0~ID。 布尔形式 指令地址 梯形图程序 标志状态 · 错误标志(R9007) 当以下情况时变为ON并且保持 · 错误标志(R9008) 当以下情况时瞬间变为ON - 使用索引寄存器指定数据区超出范围 - [S+1, S]指定的数据不是实数 - 在[D+1, D]被指定为整型数的情况下, 处理结果超出整型数范围 · =标志(R900B) 当运算结果被认为等于0时变为ON 编程时注意事项 [D+1, D]中存放的结果在以下范围内. -π/2(弧度)≤[D+1, D]≤π/2(弧度) 本指令F319(ATAN)不能在中断程序中使用. 示例程序 当R0变为ON时, “f1.047197(60°的弧度)”被存放到DT20和DT21中. · 进位标志(R9009) 当运算结果溢出时瞬间变为ON - 使用索引寄存器指定数据区超出范围 - [S+1, S]指定的数据不是实数 - 在[D+1, D]被指定为整型数的情况下, 处理结果超出整型数范围 3-573 F320(LN) P320(PLN) 实数型自然对数 概述 程序示例 操作数 描述 计算自然对数LN( ). FP0、FP-e和FPΣ不支持P型的高级指令. 10 11 ST R 0 F320 (LN) DT 10 DT 20 触发器 D 运算数据(32位)或存放32位数据的低16位地址S 32位数据的低16位的地址(结果) 3-574 A: 可以使用 N/A: 不可使用 索引寄存器 WX WY WR WL SV EV DT LD FL I K H f S A A A A A A A A A A A A A A* A D N/A A A A A A A A A A N/A N/A N/A A A 整型设备 继电器 数据寄存器 索引变址 常数 操作数 定时器计数器 * 实数不能使用变址索引 当触发器变为ON时, 计算S+1和S指定的数据的自然对数LN([S+1, S]). 结果存放到D+1和D(32位). LN( [S+1, S] ) → [D+1, D] 由[S]指定整型数据时, 在运算之前整型数将被转换为浮点数. 由[D]指定整型数据时,浮点数将被转换为整型数. FP-e/FP0/FP∑/FP2/FP2SH/FP10SH 适用机型 (*1)WL、LD不适用FP0和FP-e。 (*2)FL不适用FP0、FP-e和FPΣ。 (*3)对于FP0和FP-e,I为IX和IY; 对于FPΣ、FP2、FP2SH和FP10SH,I为I0~ID。 梯形图程序 布尔形式 指令地址 标志状态 · 错误标志(R9007) 当以下情况时变为ON并且保持 · 错误标志(R9008) 当以下情况时瞬间变为ON - 使用索引寄存器指定数据区超出范围 - [S+1, S]指定的数据不是实数 - [S+1, S]指定的数据不大于零 - 在[D+1, D]被指定为整型数的情况下, 处理结果超出整型数范围 · =标志(R900B) 当运算结果被认为等于0时变为ON 编程时注意事项 本指令F320(LN)不能在中断程序中使用. 示例程序 当R0变为ON时, “f1.6094379”被存放到DT20和DT21中. · 进位标志(R9009) 当运算结果溢出时瞬间变为ON 当R0变为ON时, “f-0.3160815”被存放到DT30和DT31中. - 使用索引寄存器指定数据区超出范围 - [S+1, S]指定的数据不是实数 - [S+1, S]指定的数据不大于零 - 在[D+1, D]被指定为整型数的情况下, 处理结果超出整型数范围 3-575 F321(EXP) P321(PEXP) 实数型指数 概述 程序示例 操作数 描述 计算浮点数的指数EXP( ). FP0、FP-e和FPΣ不支持P型的高级指 令. 10 11 ST R 0 F321 (EXP) DT 10 DT 20 触发器 D 运算数据(32位)或存放32位数据的低16位地址S 32位数据的低16位的地址(结果) 3-576 A: 可以使用 N/A: 不可使用 索引寄存器 WX WY WR WL SV EV DT LD FL I K H f S A A A A A A A A A A A A A A* A D N/A A A A A A A A A A N/A N/A N/A A A 整型设备 继电器 数据寄存器 索引变址 常数 操作数 定时器计数器 * 实数不能使用变址索引 当触发器变为ON时, 计算S+1和S指定的数据的指数EXP([S+1, S]). 结果存放到D+1和D(32位). EXP( [S+1, S] ) → [D+1, D] 计算e(等于2.718282)的指数. 由[S]指定整型数据时, 在运算之前整型数将被转换为浮点数. 由[D]指定整型数据时,浮点数将被转换为整型数. FP-e/FP0/FP∑/FP2/FP2SH/FP10SH 适用机型 (*1)WL、LD不适用FP0和FP-e。 (*2)FL不适用FP0、FP-e和FPΣ。 (*3)对于FP0和FP-e,I为IX和IY; 对于FPΣ、FP2、FP2SH和FP10SH,I为I0~ID。 梯形图程序 布尔形式 指令地址 标志状态 · 错误标志(R9007) 当以下情况时变为ON并且保持 · 错误标志(R9008) 当以下情况时瞬间变为ON - 使用索引寄存器指定数据区超出范围 - [S+1, S]指定的数据不是实数 - 在[D+1, D]被指定为整型数的情况下, 处理结果超出整型数范围 · =标志(R900B) 当运算结果被认为等于0时变为ON 编程时注意事项 本指令F321(EXP)不能在中断程序中使用. 示例程序 当R0变为ON时, “f7..389056”被存放到DT20和DT21中. · 进位标志(R9009) 当运算结果溢出时瞬间变为ON 当R0变为ON时, “f221.406402”被存放到DT30和DT31中. - 使用索引寄存器指定数据区超出范围 - [S+1, S]指定的数据不是实数 - 在[D+1, D]被指定为整型数的情况下, 处理结果超出整型数范围 3-577 F322(LOG) P322(PLOG) 实数型常用对数 概述 程序示例 操作数 描述 计算浮点数的常用对数LOG( ). FP0、FP-e和FPΣ不支持P型的高级指令. 10 11 ST R 0 F322 (LOG) DT 10 DT 20 触发器 D 运算数据(32位)或存放32位数据的低16位地址S 32位数据的低16位的地址(结果) 3-578 A: 可以使用 N/A: 不可使用 索引寄存器 WX WY WR WL SV EV DT LD FL I K H f S A A A A A A A A A A A A A A* A D N/A A A A A A A A A A N/A N/A N/A A A 整型设备 继电器 数据寄存器 索引变址 常数 操作数 定时器计数器 * 实数不能使用变址索引 当触发器变为ON时, 计算S+1和S指定的数据的常用对数LOG([S+1, S]). 结果存放到D+1和D(32位). LOG( [S+1, S] ) → [D+1, D] 由[S]指定整型数据时, 在运算之前整型数将被转换为浮点数. 由[D]指定整型数据时,浮点数将被转换为整型数. 在S中指定了常数K时, 处理与指定整型设备时的相同. FP-e/FP0/FP∑/FP2/FP2SH/FP10SH 适用机型 (*1)WL、LD不适用FP0和FP-e。 (*2)FL不适用FP0、FP-e和FPΣ。 (*3)对于FP0和FP-e,I为IX和IY; 对于FPΣ、FP2、FP2SH和FP10SH,I为I0~ID。 梯形图程序 布尔形式 指令地址 标志状态 · 错误标志(R9007) 当以下情况时变为ON并且保持 · 错误标志(R9008) 当以下情况时瞬间变为ON · =标志(R900B) 当运算结果被认为等于0时变为ON 编程时注意事项 本指令F322(LOG)不能在中断程序中使用. 示例程序 当R0变为ON时, “f1.30103”被存放到DT20和DT21中. · 进位标志(R9009) 当运算结果溢出时瞬间变为ON 当R0变为ON时, “f0.0108932”被存放到DT30和DT31中. - 使用索引寄存器指定数据区超出范围 - [S+1, S]指定的数据不是实数 - [S+1, S]指定的数据不大于零 - 在[D+1, D]被指定为整型数的情况下, 处理结果超出整型数范围 - 使用索引寄存器指定数据区超出范围 - [S+1, S]指定的数据不是实数 - [S+1, S]指定的数据不大于零 - 在[D+1, D]被指定为整型数的情况下, 处理结果超出整型数范围 3-579 F323(PWR) P323(PPWR) 实数型数据乘幂 概述 程序示例 操作数 描述 计算浮点数的乘幂. FP0、FP-e和FPΣ不支持P型的高级指 令. 10 11 ST R 0 F323 (PWR) DT 10 DT 20 DT 30 触发器 D 运算数据(32位)或存放32位数据的低16位地址(底数)S1 32位数据的低16位的地址(结果) 3-580 A: 可以使用 N/A: 不可使用 索引寄存器 WX WY WR WL SV EV DT LD FL I K H f S1 A A A A A A A A A A A A A A* A S2 A A A A A A A A A A A A A A* A D N/A A A A A A A A A A N/A N/A N/A A A 整型设备 继电器 数据寄存器 索引变址 常数 操作数 定时器计数器 * 实数不能使用变址索引 当触发器变为ON时, 计算S1+1和S1指定的数据的乘幂, 指数由S2+1和S2指定, 结果存放到D+1和D(32位). [S1+1, S1] ^ [S2+1, S2] → [D+1, D] 由[S1]和[S2]指定整型数据时, 在运算之前整型数将被转换为浮点数. 运算数据(32位)或存放32位数据的低16位地址(指数)S2 FP-e/FP0/FP∑/FP2/FP2SH/FP10SH 适用机型 (*1)WL、LD不适用FP0和FP-e。 (*2)FL不适用FP0、FP-e和FPΣ。 (*3)对于FP0和FP-e,I为IX和IY; 对于FPΣ、FP2、FP2SH和FP10SH,I为I0~ID。 梯形图程序 布尔形式 指令地址 标志状态 · 错误标志(R9007) 当以下情况时变为ON并且保持 · 错误标志(R9008) 当以下情况时瞬间变为ON · =标志(R900B) 当运算结果被认为等于0时变为ON 编程时注意事项 本指令F323(PWR)不能在中断程序中使用. 示例程序 当R0变为ON时, “f625.0”被存放到DT20和DT21中. · 进位标志(R9009) 当运算结果溢出时瞬间变为ON 当R0变为ON时, “f30.51758”被存放到DT30和DT31中. - 使用索引寄存器指定数据区超出范围 - [S1+1, S1]或[S2+1, S2]指定的数据不是实数 - 对负数的指数不是整数 - 在[D+1, D]被指定为整型数的情况下, 处理结果超出整型数范围 在S1和S2中指定了常数K时, 处理与指定整型设备时的相同. 由[D]指定整型数据时,浮点数将被转换为整型数. - 使用索引寄存器指定数据区超出范围 - [S1+1, S1]或[S2+1, S2]指定的数据不是实数 - 对负数的指数不是整数 - 在[D+1, D]被指定为整型数的情况下, 处理结果超出整型数范围 3-581 F324(FSQR) P324(PFSQR) 实数型平方根 概述 程序示例 操作数 描述 计算浮点数的平方根. FP0、FP-e和FPΣ不支持P型的高级 指令. 10 11 ST R 0 F324 (FSQR) DT 10 DT 20 触发器 D 运算数据(32位)或存放32位数据的低16位地址S 32位数据的低16位的地址(结果) 3-582 A: 可以使用 N/A: 不可使用 索引寄存器 WX WY WR WL SV EV DT LD FL I K H f S A A A A A A A A A A A A A A* A D N/A A A A A A A A A A N/A N/A N/A A A 整型设备 继电器 数据寄存器 索引变址 常数 操作数 定时器计数器 * 实数不能使用变址索引 当触发器变为ON时, 计算S+1和S指定的数据的常用对数LOG([S+1, S]). 结果存放到D+1和D(32位). ________ √[S+1, S] → [D+1, D] 由[S]指定整型数据时, 在运算之前整型数将被转换为浮点数. 由[D]指定整型数据时,浮点数将被转换为整型数. 在S中指定了常数K时, 处理与指定整型设备时的相同. FP-e/FP0/FP∑/FP2/FP2SH/FP10SH 适用机型 (*1)WL、LD不适用FP0和FP-e。 (*2)FL不适用FP0、FP-e和FPΣ。 (*3)对于FP0和FP-e,I为IX和IY; 对于FPΣ、FP2、FP2SH和FP10SH,I为I0~ID。 梯形图程序 布尔形式 指令地址 标志状态 · 错误标志(R9007) 当以下情况时变为ON并且保持 · 错误标志(R9008) 当以下情况时瞬间变为ON · =标志(R900B) 当运算结果被认为等于0时变为ON 编程时注意事项 本指令F324(FSQR)不能在中断程序中使用. 示例程序 当R0变为ON时, “f1.41421”被存放到DT20和DT21中. · 进位标志(R9009) 当运算结果溢出时瞬间变为ON - 使用索引寄存器指定数据区超出范围 - [S+1, S]指定的数据不是实数 - [S+1, S]指定的数据不大于零 - 在[D+1, D]被指定为整型数的情况下, 处理结果超出整型数范围 - 使用索引寄存器指定数据区超出范围 - [S+1, S]指定的数据不是实数 - [S+1, S]指定的数据不大于零 - 在[D+1, D]被指定为整型数的情况下, 处理结果超出整型数范围 3-583 F325(FLT) P325(PFLT) 16bit整数→浮点型实数 概述 程序示例 操作数 描述 将16bit整型数转换为浮点型实数. FP0、FP-e和FPΣ不支持P型的高级指令. 10 11 ST R 0 F325 (FLT) DT 10 DT 20 触发器 D 16位数据或存放16位数据的地址(源)S 浮点数的低16位的地址(结果) 3-584 A: 可以使用 N/A: 不可使用 索引寄存器 WX WY WR WL SV EV DT LD FL I K H f S A A A A A A A A A A A A A A A D N/A A A A A A A A A A N/A N/A N/A A A 操作数 定时器计数器 整型设备 继电器 数据寄存器 索引变址 常数 当触发器变为ON时, 将S指定的有符号16位整数转换为实数. 结果存放到D+1和D. 有符号16位 整型数据 15 0 S: 15 0 D: D+1: 浮点型 实数数据 低位字 高位字 FP-e/FP0/FP∑/FP2/ FP2SH/FP10SH 适用机型 (*1)WL、LD不适用FP0和FP-e。 (*2)FL不适用FP0、FP-e和FPΣ。 (*3)对于FP0和FP-e,I为IX和IY; 对于FPΣ、FP2、FP2SH和FP10SH,I为I0~ID。 梯形图程序 布尔形式 指令地址 标志状态 · 错误标志(R9007) 当以下情况时变为ON并且保持 · 错误标志(R9008) 当以下情况时瞬间变为ON - 使用索引寄存器指定数据区超出范围 - 使用索引寄存器指定数据区超出范围 · =标志(R900B) 当运算结果被认为等于0时变为ON 3-585 编程时注意事项 本指令F325(FLT)不能在中断程序中使用. F326(DFLT) P326(PDFLT) 32bit整数→浮点型实数 概述 程序示例 操作数 描述 将32bit整型数转换为浮点型实数. FP0、FP-e和FPΣ不支持P型的高级指令. 10 11 ST R 0 F326 (DFLT) DT 10 DT 20 触发器 D 32位数据或存放32位数据的低16位地址(源)S 32位浮点数的低16位的地址(结果) 3-586 A: 可以使用 N/A: 不可使用 索引寄存器 WX WY WR WL SV EV DT LD FL I K H f S A A A A A A A A A A A A A A A D N/A A A A A A A A A A N/A N/A N/A A A 操作数 定时器计数器 整型设备 继电器 数据寄存器 索引变址 常数 当触发器变为ON时, 将S指定的有符号16位整数转换为实数. 结果存放到D+1和D. 有符号16位 整型数据 15 0 S: 15 0 D: D+1: 浮点型 实数数据 低位字 高位字 低位字 高位字 FP-e/FP0/FP∑/FP2/ FP2SH/FP10SH 适用机型 (*1)WL、LD不适用FP0和FP-e。 (*2)FL不适用FP0、FP-e和FPΣ。 (*3)对于FP0和FP-e,I为IX和IY; 对于FPΣ、FP2、FP2SH和FP10SH,I为I0~ID。 梯形图程序 布尔形式 指令地址 标志状态 · 错误标志(R9007) 当以下情况时变为ON并且保持 · 错误标志(R9008) 当以下情况时瞬间变为ON - 使用索引寄存器指定数据区超出范围 - 使用索引寄存器指定数据区超出范围 · =标志(R900B) 当运算结果被认为等于0时变为ON · 进位标志(R9009) 当转换的实数尾数超出有效范围时变为ON 3-587 编程时注意事项 本指令F326(DFLT)不能在中断程序中使用. F327(INT) P327(PINT) 浮点型实数→16bit整数 (不超出最大值) 概述 程序示例 操作数 示例程序 将浮点型实数转换为带符号16bit整型数(不超过最大值). FP0、FP-e和FPΣ不支持P型的高级指令. 10 11 ST R 0 F327 (INT) DT 10 DT 20 触发器 D 实数(2字)数据或存放32位数据的低16位地址(源)S 存储转换结果的16位数据地址(结果) 3-588 当DT10和DT11中数据为“1.234”时, 执行以下操作. DT10: DT11: A: 可以使用 N/A: 不可使用 索引寄存器 WX WY WR WL SV EV DT LD FL I K H f S A A A A A A A A A A N/A A A A* N/A D N/A A A A A A A A A A N/A N/A N/A A N/A 整型设备 继电器 数据寄存器 索引变址 常数 操作数 定时器计数器 * 实数不能使用变址索引 (f1.234) DT20: (K1) DT10: DT11: (f-1.234) DT20: (K-2) 当DT10和DT11中数据为“1.234”时, 执行以下操作. FP-e/FP0/FP∑/FP2/ FP2SH/FP10SH 适用机型 (*1)WL、LD不适用FP0和FP-e。 (*2)FL不适用FP0、FP-e和FPΣ。 (*3)对于FP0和FP-e,I为IX和IY; 对于FPΣ、FP2、FP2SH和FP10SH,I为I0~ID。 梯形图程序 布尔形式 指令地址 标志状态 · 错误标志(R9007) 当以下情况时变为ON并且保持 · 错误标志(R9008) 当以下情况时瞬间变为ON · =标志(R900B) 当运算结果被认为等于0时变为ON 描述 当触发器变为ON时, 将S指定的实数(+32767.99~-32767.99)转换为有符号16位整数(不大于 该实数的最大整数). 结果存放到D+1和D. 有符号16位 整型数据 15 0 D: 15 0 S: S+1: 浮点型 实数数据 低位字 高位字 编程时注意事项 本指令F327(INT)不能在中断程序中使用. - 使用索引寄存器指定数据区超出范围 - [S+1, S]指定的数据不是实数 - 转换数据超出16位整型数范围 - 使用索引寄存器指定数据区超出范围 - [S+1, S]指定的数据不是实数 - 转换数据超出整型16位数范围 3-589 F328(DINT) P328(PDINT) 浮点型实数→32bit整数 (不超出最大值) 概述 程序示例 操作数 示例程序 将浮点型实数转换为带符号32bit整型数(不超过最大值). FP0、FP-e和FPΣ不支持P型的高级指令. 10 11 ST R 0 F328 (DINT) DT 10 DT 20 触发器 D 实数(2字)数据或存放32位数据的低16位地址(源)S 存储转换结果的低16位数据地址(结果) 3-590 当DT10和DT11中数据为“12345.67”时, 执行以下操作 DT10: DT11: A: 可以使用 N/A: 不可使用 索引寄存器 WX WY WR WL SV EV DT LD FL I K H f S A A A A A A A A A A N/A A A A* N/A D N/A A A A A A A A A A N/A N/A N/A A N/A 整型设备 继电器 数据寄存器 索引变址 常数 操作数 定时器计数器 * 实数不能使用变址索引 (f12345.67) DT20: DT21: 当DT10和DT11中数据为“-12345.67”时, 执行以下操作 (K12345) DT10: DT11: (f-12345.67) DT20: DT21: (K-12346) FP-e/FP0/FP∑/FP2/ FP2SH/FP10SH 适用机型 (*1)WL、LD不适用FP0和FP-e。 (*2)FL不适用FP0、FP-e和FPΣ。 (*3)对于FP0和FP-e,I为IX和IY;对于FPΣ、FP2、FP2SH和FP10SH,I为I0~ID。 梯形图程序 布尔形式 指令地址 标志状态 · 错误标志(R9007) 当以下情况时变为ON并且保持 · 错误标志(R9008) 当以下情况时瞬间变为ON · =标志(R900B) 当运算结果被认为等于0时变为ON 描述 当触发器变为ON时, 将S+1和S指定的实数(+2147483000~-2147483000)转换为有符号32位整数 (不大于该实数的最大整数). 结果存放到D+1和D. 有符号32位 整型数据 15 0 D: D+1: 15 0 S: S+1: 浮点型 实数数据 低位字 高位字 编程时注意事项 本指令F328(DINT)不能在中断程序中使用. - 使用索引寄存器指定数据区超出范围 - [S+1, S]指定的数据不是实数 - 转换数据超出32位整型数范围 - 使用索引寄存器指定数据区超出范围 - [S+1, S]指定的数据不是实数 - 转换数据超出32位整型数范围 低位字 高位字 3-591 F329(FIX) P329(PFIX) 浮点型实数→16bit整数 (小数点以下舍去) 概述 程序示例 操作数 示例程序 将浮点型实数转换为带符号16bit整型数(小数点以下舍去). FP0、FP-e和FPΣ不支持P型的高级指令. 10 11 ST R 0 F329 (FIX) DT 10 DT 20 触发器 D 实数(2字)数据或存放32位数据的低16位地址(源)S 存储转换结果的16位数据地址(结果) 3-592 当DT10和DT11中数据为“1.234567”时, 执行以下操作. DT10: DT11: A: 可以使用 N/A: 不可使用 索引寄存器 WX WY WR WL SV EV DT LD FL I K H f S A A A A A A A A A A N/A A A A* N/A D N/A A A A A A A A A A N/A N/A N/A A N/A 整型设备 继电器 数据寄存器 索引变址 常数 操作数 定时器计数器 * 实数不能使用变址索引 (f1.234567) DT20: (K1) DT10: DT11: (f-1.234567) DT20: (K-1) 当DT10和DT11中数据为“-1.234567”时, 执行以下操作. FP-e/FP0/FP∑/FP2/ FP2SH/FP10SH 适用机型 (*1)WL、LD不适用FP0和FP-e。 (*2)FL不适用FP0、FP-e和FPΣ。 (*3)对于FP0和FP-e,I为IX和IY;对于FPΣ、FP2、FP2SH和FP10SH,I为I0~ID。 梯形图程序 布尔形式 指令地址 标志状态 · 错误标志(R9007) 当以下情况时变为ON并且保持 · 错误标志(R9008) 当以下情况时瞬间变为ON · =标志(R900B) 当运算结果被认为等于0时变为ON 描述 当触发器变为ON时, 将S指定的实数(+32767.99~-32768.99)转换为有符号16位整数(). 结果 存放到D+1和D. 有符号16位 整型数据 15 0 D: 15 0 S: S+1: 浮点型 实数数据 低位字 高位字 编程时注意事项 本指令F329(FIX)不能在中断程序中使用. - 使用索引寄存器指定数据区超出范围 - [S+1, S]指定的数据不是实数 - 转换数据超出16位整型数范围 - 使用索引寄存器指定数据区超出范围 - [S+1, S]指定的数据不是实数 - 转换数据超出整型16位数范围 3-593 F330(DFIX) P330(PDFIX) 浮点型实数→32bit整数 (小数点以下舍去) 概述 程序示例 操作数 示例程序 将浮点型实数转换为带符号32bit整型数(小数点以下部分舍去). FP0、FP-e和FPΣ不支持P型的高级指令. 10 11 ST R 0 F330 (DFIX) DT 10 DT 20 触发器 D 实数(2字)数据或存放32位数据的低16位地址(源)S 存储转换结果的低16位数据地址(结果) 3-594 当DT10和DT11中数据为“123456.7”时, 执行以下操作 DT10: DT11: A: 可以使用 N/A: 不可使用 索引寄存器 WX WY WR WL SV EV DT LD FL I K H f S A A A A A A A A A A N/A A A A* N/A D N/A A A A A A A A A A N/A N/A N/A A N/A 整型设备 继电器 数据寄存器 索引变址 常数 操作数 定时器计数器 * 实数不能使用变址索引 (f123456.7) DT20: DT21: 当DT10和DT11中数据为“-12345.67”时, 执行以下操作 (K123456) DT10: DT11: (f-123456.7) DT20: DT21: (K-123456) FP-e/FP0/FP∑/FP2/ FP2SH/FP10SH 适用机型 (*1)WL、LD不适用FP0和FP-e。 (*2)FL不适用FP0、FP-e和FPΣ。 (*3)对于FP0和FP-e,I为IX和IY;对于FPΣ、FP2、FP2SH和FP10SH,I为I0~ID。 梯形图程序 布尔形式 指令地址 标志状态 · 错误标志(R9007) 当以下情况时变为ON并且保持 · 错误标志(R9008) 当以下情况时瞬间变为ON · =标志(R900B) 当运算结果被认为等于0时变为ON 描述 当触发器变为ON时, 将S+1和S指定的实数(+2147483000~-2147483000)转换为有符号32位整数 (小数点以下部分舍去). 结果存放到D+1和D. 有符号32位 整型数据 15 0 D: D+1: 15 0 S: S+1: 浮点型 实数数据 低位字 高位字 编程时注意事项 本指令F330(DFIX)不能在中断程序中使用. - 使用索引寄存器指定数据区超出范围 - [S+1, S]指定的数据不是实数 - 转换数据超出32位整型数范围 - 使用索引寄存器指定数据区超出范围 - [S+1, S]指定的数据不是实数 - 转换数据超出32位整型数范围 低位字 高位字 3-595 F331(ROFF) P331(PROFF) 浮点型实数→16bit整数 (小数点以下四舍五入) 概述 程序示例 操作数 示例程序 将浮点型实数转换为带符号16bit整型数(小数点以下四舍五入). FP0、FP-e和FPΣ不支持P型的高级指令. 10 11 ST R 0 F331 (ROFF) DT 10 DT 20 触发器 D 实数(2字)数据或存放32位数据的低16位地址(源)S 存储转换结果的16位数据地址(结果) 3-596 当DT10和DT11中数据为“1234.567”时, 执行以下操作. DT10: DT11: A: 可以使用 N/A: 不可使用 索引寄存器 WX WY WR WL SV EV DT LD FL I K H f S A A A A A A A A A A N/A A A A* N/A D N/A A A A A A A A A A N/A N/A N/A A N/A 整型设备 继电器 数据寄存器 索引变址 常数 操作数 定时器计数器 * 实数不能使用变址索引 (f1234.567) DT20: (K1235) DT10: DT11: (f-1234.567) DT20: (K-1235) 当DT10和DT11中数据为“-1234.567”时, 执行以下操作. FP-e/FP0/FP∑/FP2/ FP2SH/FP10SH 适用机型 (*1)WL、LD不适用FP0和FP-e。 (*2)FL不适用FP0、FP-e和FPΣ。 (*3)对于FP0和FP-e,I为IX和IY;对于FPΣ、FP2、FP2SH和FP10SH,I为I0~ID。 梯形图程序 布尔形式 指令地址 标志状态 · 错误标志(R9007) 当以下情况时变为ON并且保持 · 错误标志(R9008) 当以下情况时瞬间变为ON · =标志(R900B) 当运算结果被认为等于0时变为ON 描述 当触发器变为ON时, 将S指定的实数(+32767.49~-32768.49)转换为有符号16位整数(). 结果 存放到D+1和D. 有符号16位 整型数据 15 0 D: 15 0 S: S+1: 浮点型 实数数据 低位字 高位字 编程时注意事项 本指令F331(ROFF)不能在中断程序中使用. - 使用索引寄存器指定数据区超出范围 - [S+1, S]指定的数据不是实数 - 转换数据超出16位整型数范围 - 使用索引寄存器指定数据区超出范围 - [S+1, S]指定的数据不是实数 - 转换数据超出整型16位数范围 3-597 F332(DROFF) P332(PDROFF) 浮点型实数→32bit整数 (小数点以下四舍五入) 概述 程序示例 操作数 示例程序 将浮点型实数转换为带符号32bit整型数(小数点以下部分四舍五入). FP0、FP-e和FPΣ不支持P型的高级指令. 10 11 ST R 0 F332 (DROFF) DT 10 DT 20 触发器 D 实数(2字)数据或存放32位数据的低16位地址(源)S 存储转换结果的低16位数据地址(结果) 3-598 当DT10和DT11中数据为“45678.51”时, 执行以下操作 DT10: DT11: A: 可以使用 N/A: 不可使用 索引寄存器 WX WY WR WL SV EV DT LD FL I K H f S A A A A A A A A A A N/A A A A* N/A D N/A A A A A A A A A A N/A N/A N/A A N/A 整型设备 继电器 数据寄存器 索引变址 常数 操作数 定时器计数器 * 实数不能使用变址索引 (f45678.51) DT20: DT21: 当DT10和DT11中数据为“-45678.51”时, 执行以下操作 (K45679) DT10: DT11: (f-45678.51) DT20: DT21: (K-45679) FP-e/FP0/FP∑/FP2/ FP2SH/FP10SH 适用机型 (*1)WL、LD不适用FP0和FP-e。 (*2)FL不适用FP0、FP-e和FPΣ。 (*3)对于FP0和FP-e,I为IX和IY; 对于FPΣ、FP2、FP2SH和FP10SH,I为I0~ID。 梯形图程序 布尔形式 指令地址 标志状态 · 错误标志(R9007) 当以下情况时变为ON并且保持 · 错误标志(R9008) 当以下情况时瞬间变为ON · =标志(R900B) 当运算结果被认为等于0时变为ON 描述 当触发器变为ON时, 将S+1和S指定的实数(+2147483000~-2147483000)转换为有符号32位整数 (小数点以下部分四舍五入). 结果存放到D+1和D. 有符号32位 整型数据 15 0 D: D+1: 15 0 S: S+1: 浮点型 实数数据 低位字 高位字 编程时注意事项 本指令F332(DROFF)不能在中断程序中使用. - 使用索引寄存器指定数据区超出范围 - [S+1, S]指定的数据不是实数 - 转换数据超出32位整型数范围 - 使用索引寄存器指定数据区超出范围 - [S+1, S]指定的数据不是实数 - 转换数据超出32位整型数范围 低位字 高位字 3-599 F333(FINT) P333(PFINT) 浮点型实数数据取整 (小数点部分舍去) 概述 程序示例 操作数 示例程序 获取浮点型实数的整数部分(小数点以下部分舍去). FP0、FP-e和FPΣ不支持P型的高级指令. 10 11 ST R 0 F333 (FINT) DT 10 DT 20 触发器 D 实数(2字)数据或存放32位数据的低16位地址(源)S 存储转换结果的低16位数据地址(结果) 3-600 当DT10和DT11中数据为“1234.567”时, 执行以下操作 DT10: DT11: A: 可以使用 N/A: 不可使用 索引寄存器 WX WY WR WL SV EV DT LD FL I K H f S A A A A A A A A A A N/A A A A* N/A D N/A A A A A A A A A A N/A N/A N/A A N/A 整型设备 继电器 数据寄存器 索引变址 常数 操作数 定时器计数器 * 实数不能使用变址索引 (f1234.567) DT20: DT21: 当DT10和DT11中数据为“-45678.51”时, 执行以下操作 (f1234.000) DT10: DT11: (f-1234.567) DT20: DT21: (f-1235.000) FP-e/FP0/FP∑/FP2/ FP2SH/FP10SH 适用机型 (*1)WL、LD不适用FP0和FP-e。 (*2)FL不适用FP0、FP-e和FPΣ。 (*3)对于FP0和FP-e,I为IX和IY;对于FPΣ、FP2、FP2SH和FP10SH,I为I0~ID。 梯形图程序 布尔形式 指令地址 标志状态 · 错误标志(R9007) 当以下情况时变为ON并且保持 · 错误标志(R9008) 当以下情况时瞬间变为ON · =标志(R900B) 当运算结果被认为等于0时变为ON 描述 当触发器变为ON时, 获取由S+1和S指定的实数的整数部分(小数点以下部分舍去). 结果存放到D+1和D. 15 0 D: D+1: 15 0 S: S+1: 浮点型 实数数据 低位字 高位字 编程时注意事项 本指令F333(FINT)不能在中断程序中使用. - 使用索引寄存器指定数据区超出范围 - [S+1, S]指定的数据不是实数 - 使用索引寄存器指定数据区超出范围 - [S+1, S]指定的数据不是实数 低位字 高位字 · 进位标志(R9009) 当运算结果溢出时,瞬间变为ON 3-601 浮点型 实数数据 F334(FRINT) P334(PFRINT) 浮点型实数数据取整 (小数点部分四舍五入) 概述 程序示例 操作数 示例程序 获取浮点型实数的整数部分(小数点以下部分四舍五入). FP0、FP-e和FPΣ不支持P型的高级指令. 10 11 ST R 0 F334 (FRINT) DT 10 DT 20 触发器 D 实数(2字)数据或存放32位数据的低16位地址(源)S 存储转换结果的低16位数据地址(结果) 3-602 当DT10和DT11中数据为“1234.567”时, 执行以下操作 DT10: DT11: A: 可以使用 N/A: 不可使用 索引寄存器 WX WY WR WL SV EV DT LD FL I K H f S A A A A A A A A A A N/A A A A* N/A D N/A A A A A A A A A A N/A N/A N/A A N/A 整型设备 继电器 数据寄存器 索引变址 常数 操作数 定时器计数器 * 实数不能使用变址索引 (f1234.567) DT20: DT21: 当DT10和DT11中数据为“-45678.51”时, 执行以下操作 (f1235.000) DT10: DT11: (f-1234.567) DT20: DT21: (f-1235.000) FP-e/FP0/FP∑/FP2/ FP2SH/FP10SH 适用机型 (*1)WL、LD不适用FP0和FP-e。 (*2)FL不适用FP0、FP-e和FPΣ。 (*3)对于FP0和FP-e,I为IX和IY; 对于FPΣ、FP2、FP2SH和FP10SH,I为I0~ID。 梯形图程序 布尔形式 指令地址 标志状态 · 错误标志(R9007) 当以下情况时变为ON并且保持 · 错误标志(R9008) 当以下情况时瞬间变为ON · =标志(R900B) 当运算结果被认为等于0时变为ON 描述 当触发器变为ON时, 获取由S+1和S指定的实数的整数部分(小数点以下部分四舍五入). 结果存放 到D+1和D. 15 0 D: D+1: 15 0 S: S+1: 浮点型 实数数据 低位字 高位字 编程时注意事项 本指令F334(FRINT)不能在中断程序中使用. - 使用索引寄存器指定数据区超出范围 - [S+1, S]指定的数据不是实数 - 使用索引寄存器指定数据区超出范围 - [S+1, S]指定的数据不是实数 低位字 高位字 · 进位标志(R9009) 当运算结果溢出时,瞬间变为ON 3-603 浮点型 实数数据 F335(F+/-) P335(PF+/-) 浮点型实数 数据符号交换 概述 程序示例 操作数 示例程序 交换浮点型实数的符号. FP0、FP-e和FPΣ不支持P型的高级指令. 10 11 ST R 0 F335 (F+/-) DT 10 DT 20 触发器 D 实数(2字)数据或存放32位数据的低16位地址(源)S 存储转换结果的低16位数据地址(结果) 3-604 当DT10和DT11中数据为“-60000.00”时, 执行以下操作 DT10: DT11: A: 可以使用 N/A: 不可使用 索引寄存器 WX WY WR WL SV EV DT LD FL I K H f S A A A A A A A A A A A A A A* A D N/A A A A A A A A A A N/A N/A N/A A N/A 操作数 定时器计数器 整型设备 继电器 数据寄存器 索引变址 常数 * 实数不能使用变址索引 (f-60000.00) DT20: DT21: 当DT10和DT11中数据为“-30000.00”时, 执行以下操作 (f60000.00) DT10: DT11: (f-30000.00) DT20: DT21: (f30000.00) FP-e/FP0/FP∑/FP2/FP2SH/FP10SH 适用机型 (*1)WL、LD不适用FP0和FP-e。 (*2)FL不适用FP0、FP-e和FPΣ。 (*3)对于FP0和FP-e,I为IX和IY;对于FPΣ、FP2、FP2SH和FP10SH,I为I0~ID。 梯形图程序 布尔形式 指令地址 标志状态 · 错误标志(R9007) 当以下情况时变为ON并且保持 · 错误标志(R9008) 当以下情况时瞬间变为ON 描述 当触发器变为ON时, 将S+1和S指定的实数的符号位改变, 结果存放到D+1和D. 15 0 D: D+1: 15 0 S: S+1: 浮点型 实数数据 低位字 高位字 编程时注意事项 本指令F335(F+/-)不能在中断程序中使用. - 使用索引寄存器指定数据区超出范围 - [S+1, S]指定的数据不是实数 - 使用索引寄存器指定数据区超出范围 - [S+1, S]指定的数据不是实数 低位字 高位字 · 进位标志(R9009) 当运算结果溢出时,瞬间变为ON 3-605 浮点型 实数数据 F336(FABS) P336(PFABS) 浮点型实数绝对值 概述 程序示例 操作数 示例程序 计算浮点型实数的绝对值. FP0、FP-e和FPΣ不支持P型的高级指令. 10 11 ST R 0 F336 (FABS) DT 10 DT 20 触发器 D 实数(2字)数据或存放32位数据的低16位地址(源)S 存储运算结果的低16位数据地址(结果) 3-606 当DT10和DT11中数据为“-1234.567”时, 执行以下操作 DT10: DT11: A: 可以使用 N/A: 不可使用 索引寄存器 WX WY WR WL SV EV DT LD FL I K H f S A A A A A A A A A A A A A A* A D N/A A A A A A A A A A N/A N/A N/A A N/A 操作数 定时器计数器 整型设备 继电器 数据寄存器 索引变址 常数 * 实数不能使用变址索引 (f1234.567) DT20: DT21: 当DT10和DT11中数据为“-1234.567”时, 执行以下操作 (f1234.567) DT10: DT11: (f-1234.567) DT20: DT21: (f1234.567) FP-e/FP0/FP∑/FP2/FP2SH/FP10SH 适用机型 (*1)WL、LD不适用FP0和FP-e。 (*2)FL不适用FP0、FP-e和FPΣ。 (*3)对于FP0和FP-e,I为IX和IY; 对于FPΣ、FP2、FP2SH和FP10SH,I为I0~ID。 梯形图程序 布尔形式 指令地址 标志状态 · 错误标志(R9007) 当以下情况时变为ON并且保持 · 错误标志(R9008) 当以下情况时瞬间变为ON 描述 当触发器变为ON时, 计算由S+1和S指定的实数的绝对值, 结果存放到D+1和D. 15 0 D: D+1: 15 0 S: S+1: 浮点型 实数数据 低位字 高位字 编程时注意事项 本指令F336(FABS)不能在中断程序中使用. - 使用索引寄存器指定数据区超出范围 - [S+1, S]指定的数据不是实数 - 使用索引寄存器指定数据区超出范围 - [S+1, S]指定的数据不是实数 低位字 高位字 · =标志(R900B) 当处理结果被认为等于”0”时变为ON 当由[S]指定了整数设备时, 整型数据在进行运算之前在内部自动转换为实数. 当在[S]中指定了K常数时, 处理与指定了整型数时的相同. · 进位标志(R9009) 当运算结果溢出时,瞬间变为ON 3-607 浮点型 实数数据 F337(RAD) P337(PRAD) 浮点型实数 角度→弧度 概述 程序示例 操作数 将以度表示的角度转换为弧度. FP0、FP-e和FPΣ不支持P型的高级指令. 10 11 ST R 0 F337 (RAD) DT 10 DT 20 触发器 D 角度数据(度)(2字)或存放32位数据的低16位地址(源)S 存储转换结果的低16位数据地址(结果) 3-608 A: 可以使用 N/A: 不可使用 索引寄存器 WX WY WR WL SV EV DT LD FL I K H f S A A A A A A A A A A A A A A* A D N/A A A A A A A A A A N/A N/A N/A A N/A 操作数 定时器计数器 整型设备 继电器 数据寄存器 索引变址 常数 * 实数不能使用变址索引 描述 当触发器变为ON时, 将由S+1和S指定的角度值(以度为单位)转换为弧度(实数). 结果存放到D+1和D. 15 0 D: D+1: 15 0 S: S+1: 角度数据(度) 实数数据 低位字 高位字 低位字 高位字 当由[S]指定了整数设备时, 整型数据在进行运算之前在内部自动转换为实数. 当在[S]中指定了K常数时, 处理与指定了整型数时的相同. 角度数据(弧度) 实数数据 FP-e/FP0/FP∑/FP2/FP2SH/FP10SH 适用机型 (*1)WL、LD不适用FP0和FP-e。 (*2)FL不适用FP0、FP-e和FPΣ。 (*3)对于FP0和FP-e,I为IX和IY; 对于FPΣ、FP2、FP2SH和FP10SH,I为I0~ID。 梯形图程序 布尔形式 指令地址 标志状态 · 错误标志(R9007) 当以下情况时变为ON并且保持 · 错误标志(R9008) 当以下情况时瞬间变为ON 编程时注意事项 本指令F337(RAD)不能在中断程序中使用. - 使用索引寄存器指定数据区超出范围 - [S+1, S]指定的数据不是实数 - 使用索引寄存器指定数据区超出范围 - [S+1, S]指定的数据不是实数 · =标志(R900B) 当处理结果被认为等于”0”时变为ON · 进位标志(R9009) 当运算结果溢出时,瞬间变为ON 示例程序 当触发器R0为ON时, “f0.7853981”被存放到DT20和DT21. 3-609 F338(DEG) P338(PDEG) 浮点型实数 弧度→角度 概述 程序示例 操作数 将以弧度表示的角度转换为度. FP0、FP-e和FPΣ不支持P型的高级指令. 10 11 ST R 0 F338 (DEG) DT 10 DT 20 触发器 D 角度数据(弧度)(2字)或存放32位数据的低16位地址(源)S 存储转换结果的低16位数据地址(结果) 3-610 A: 可以使用 N/A: 不可使用 索引寄存器 WX WY WR WL SV EV DT LD FL I K H f S A A A A A A A A A A A A A A* A D N/A A A A A A A A A A N/A N/A N/A A A 整型设备 继电器 数据寄存器 索引变址 常数 操作数 定时器计数器 * 实数不能使用变址索引 描述 当触发器变为ON时, 将由S+1和S指定的角度值(以弧度为单位,实数)转换为度(实数). 结果存放到D+1 和D. 15 0 D: D+1: 15 0 S: S+1: 角度数据(度) 实数数据 低位字 高位字 低位字 高位字 角度数据(弧度) 实数数据 FP-e/FP0/FP∑/FP2/FP2SH/FP10SH 适用机型 (*1)WL、LD不适用FP0和FP-e。 (*2)FL不适用FP0、FP-e和FPΣ。 (*3)对于FP0和FP-e,I为IX和IY; 对于FPΣ、FP2、FP2SH和FP10SH,I为I0~ID。 梯形图程序 布尔形式 指令地址 标志状态 · 错误标志(R9007) 当以下情况时变为ON并且保持 · 错误标志(R9008) 当以下情况时瞬间变为ON 编程时注意事项 本指令F338(DEG)不能在中断程序中使用. - 使用索引寄存器指定数据区超出范围 - [S+1, S]指定的数据不是实数 - 使用索引寄存器指定数据区超出范围 - [S+1, S]指定的数据不是实数 · =标志(R900B) 当处理结果被认为等于”0”时变为ON · 进位标志(R9009) 当运算结果溢出时,瞬间变为ON 示例程序 当触发器R0为ON时, “f30.00000”被存放到DT20和DT21. 当在[S]中指定了K常数时, 处理与指定了整型数时的相同. 当由[S]指定了整数设备时, 整型数据在进行运算之前在内部自动转换为实数. 当由[D]指定了整数设备时,实数数据在内部自动转换为整型. 3-611 F345(FCMP) P345(PDEG) 浮点型实数比较 概述 程序示例 操作数 将一个实数(浮点数)与另一个实数进行比较. FPΣ不支持P型的高级指令. 10 11 ST R 0 F345 (FCMP) DT 10 DT 20 触发器 S2 用于比较的实数数据(2字)或存放32位数据的低16位地址S1 用于比较的实数数据(2字)或存放32位数据的低16位地址 3-612 A: 可以使用 N/A: 不可使用 索引寄存器 WX WY WR WL SV EV DT LD FL I K H f S1 A A A A A A A A A A A A A A* A S2 A A A A A A A A A A A A A A A 操作数 定时器计数器 整型设备 继电器 数据寄存器 索引变址 常数 * 实数不能使用变址索引 描述 当触发器变为ON时, 将由S1指定的数据(浮点数)与S2指定的数据进行比较. 比较结果存放在特殊内部 继电器R9009和R900A~R900C。 下表为进位标志(R9009)、>标志(R900A)、=标志(R900B)和<标志(R900C)对不同的(S1+1,S1)和(S2+1,S2) 的关系时的结果. R900A (>标志) R900B (=标志) R900C (<标志) R9009 (进位标志) (S1+1,S1)<(S2+1,S2) off off on (S1+1,S1)=(S2+1,S2) off on off off (S1+1,S1)>(S2+1,S2) on off off 标志位 (S1+1,S1)与(S2+1,S2) 的比较关系 “ ”表示根据情况变化。 当由[S1]和[S2]指定了整数设备时, 整型数据在进行运算之前在内部自动转换为实数. 当在[S1]和[S2]中指定了K常数时, 处理与指定了整型数时的相同. FP∑/FP2/FP2SH/FP10SH 适用机型 (*1)FL不适用FPΣ。 (*2)I为I0~ID。 梯形图程序 布尔形式 指令地址 标志状态 · 错误标志(R9007) 当以下情况时变为ON并且保持 · 错误标志(R9008) 当以下情况时瞬间变为ON - 使用索引寄存器指定数据区超出范围 - [S1+1, S1]和[S2+1,S2]指定的数据不是实数 - 使用索引寄存器指定数据区超出范围 - [S1+1, S1]和[S2+1,S2]指定的数据不是实数 3-613 F346(FWIN) P346(PFWIN) 浮点型实数带域比较 概述 程序示例 操作数 将一个实数(浮点数)与另由两个实数指定的带域进行比较. FPΣ不支持P型的高级指令. 10 11 ST R 0 F346 (FCMP) DT 10 DT 20 DT 30 触发器 用于比较的实数数据(2字)或存放32位数据的低16位地址S1 3-614 A: 可以使用 N/A: 不可使用 索引寄存器 WX WY WR WL SV EV DT LD FL I K H f S1 A A A A A A A A A A A A A A* A S2 A A A A A A A A A A A A A A* A S3 A A A A A A A A A A A A A A* A 整型设备 继电器 数据寄存器 索引变址 常数 操作数 定时器计数器 * 实数不能使用变址索引 描述 当触发器变为ON时, 将由S1指定的数据(浮点数)与S2和S3指定的数据进行比较. 本指令检查S1是否在S2 (下限)和S3(上限)之间. 比较结果存放在特殊内部继电器R9009和R900A~R900C。 下表为进位标志(R9009)、>标志(R900A)、=标志(R900B)和<标志(R900C)在不同情况下的结果. R900A (>标志) R900B (=标志) R900C (<标志) R9009 (进位标志) (S1+1,S1)<(S2+1,S2) off off on × (S1+1,S1)≥(S2+1,S2)且 (S1+1,S1)≤(S3+1,S3) off on off off (S1+1,S1)>(S3+1,S3) on off off × 标志位(S1+1,S1)与 (S2+1,S2)、(S3+1,S3)的 比较关系 “×”表示不变化。 用于比较的实数数据(2字)或存放32位数据的低16位地址(下限)S2 用于比较的实数数据(2字)或存放32位数据的低16位地址(上限)S3 FP∑/FP2/FP2SH/FP10SH 适用机型 (*1)FL不适用FPΣ。 (*2)I为I0~ID。 梯形图程序 布尔形式 指令地址 标志状态 · 错误标志(R9007) 当以下情况时变为ON并且保持 · 错误标志(R9008) 当以下情况时瞬间变为ON - 使用索引寄存器指定数据区超出范围 - [S1+1, S1]和[S2+1,S2]、[S3+1,S3]指定的数据不是实数 - [S2+1,S2]>[S3+1,S3] 当由[S1]和[S2]、[S3]指定了整数设备时, 整型数据在进行运算之前在内部自动转换为实数. 当在[S1]和[S2]、[S3]中指定了K常数时, 处理与指定了整型数时的相同. - 使用索引寄存器指定数据区超出范围 - [S1+1, S1]和[S2+1,S2]、[S3+1,S3]指定的数据不是实数 - [S2+1,S2]>[S3+1,S3] 3-615 F347(FLIMT) P347(PFLIMT) 浮点型实数上下限 限位控制 概述 程序示例 操作数 将一个实数(浮点数)限制在上下限之间. FPΣ不支持P型的高级指令. 10 11 ST R 0 F347 (FLIMT) DT 10 DT 20 DT 30 DT 40 触发器 下限值数值的实数数据(2字)或存放32位数据的低16位地址S1 3-616 A: 可以使用 N/A: 不可使用 索引寄存器 WX WY WR WL SV EV DT LD FL I K H f S1 A A A A A A A A A A A A A A* A S2 A A A A A A A A A A A A A A* A S3 A A A A A A A A A A A A A A* A D N/A A A A A A A A A A N/A N/A N/A A A 操作数 定时器计数器 整型设备 继电器 数据寄存器 索引变址 常数 * 实数不能使用变址索引 描述 当触发器变为ON时, 根据由S3是否位于上限和下限值(实数)之间范围内,控制输出结果(实数)并存放在 由D指定的区域. 根据以下情况确定输出数值: 当下限值[S1+1,S1]>输入值[S3+1,S3]时, 下限值[S1+1,S1]作为输出值写入[D+1,D]. 当上限值[S2+1,S2]<输入值[S3+1,S3]时, 上限值[S2+1,S2]作为输出值写入[D+1,D]. 当下限值[S1+1,S1]≤输入值[S3+1,S3]≤上限值[S2+1,S2]时,输入值[S3+1,S3]≤作为输出值写入[D+1,D].. 上限值数值的实数数据(2字)或存放32位数据的低16位地址S2 输入实数数据(2字)或存放32位数据的低16位地址S3 存放输出的实数数据(2字)D FP∑/FP2/FP2SH/FP10SH 适用机型 (*1)FL不适用FPΣ。 (*2)I为I0~ID。 梯形图程序 布尔形式 指令地址 标志状态 · 错误标志(R9007) 当以下情况时变为ON并且保持 · 错误标志(R9008) 当以下情况时瞬间变为ON - 使用索引寄存器指定数据区超出范围 - [S1+1, S1]和[S2+1,S2]、[S3+1,S3]指定的数据不是实数 -[S1+1,S1]>[S2+1,S2] - 在D+1,D指定为整数的情况下, 运算结果超出整数范围. 当由[S1]和[S2]、[S3]指定了整数设备时, 整型数据在进行运算之前在内部转换为实数. 输出值[D+1,D] 输入值[S3+1,S3]上限值[S2+1,S2] [S2+1,S2] [S1+1,S1] 下限值[S1+1,S1] 当由[D]指定了整数设备时,实数被转换为整型数据. 当在[S1]和[S2]、[S3]中指定了K常数时, 处理与指定了整型数时的相同. - 使用索引寄存器指定数据区超出范围 - [S1+1, S1]和[S2+1,S2]、[S3+1,S3]指定的数据不是实数 -[S1+1,S1]>[S2+1,S2] - 在D+1,D指定为整数的情况下, 运算结果超出整数范围. · =标志(R900B) 当处理结果被认为等于”0”时变为ON 3-617 F348(FBAND) P348(PFBAND) 浮点型实数死区控制 概述 程序示例 操作数 控制一个实数(浮点数)的死区输出. FPΣ不支持P型的高级指令. 10 11 ST R 0 F348 (FBAND) DT 10 DT 20 DT 30 DT 40 触发器 下限值数值的实数数据(2字)或存放32位数据的低16位地址S1 3-618 A: 可以使用 N/A: 不可使用 索引寄存器 WX WY WR WL SV EV DT LD FL I K H f S1 A A A A A A A A A A A A A A* A S2 A A A A A A A A A A A A A A* A S3 A A A A A A A A A A A A A A* A D N/A A A A A A A A A A N/A N/A N/A A A 操作数 定时器计数器 整型设备 继电器 数据寄存器 索引变址 常数 * 实数不能使用变址索引 描述 当触发器变为ON时, 根据由S3是否位于上限和下限值(实数)之间的死区范围内,控制输出结果(实数)并存放 在由D指定的区域. 根据以下情况确定输出数值: 当下限值[S1+1,S1]>输入值[S3+1,S3]时, 输入值[S3+1,S3]-下限值[S1+1,S1]作为输出值写入[D+1,D]. 当上限值[S2+1,S2]<输入值[S3+1,S3]时, 输入值[S3+1,S3]-上限值[S2+1,S2]作为输出值写入[D+1,D]. 当下限值[S1+1,S1]≤输入值[S3+1,S3]≤上限值[S2+1,S2]时, 0.0作为输出值写入[D+1,D].. 上限值数值的实数数据(2字)或存放32位数据的低16位地址S2 输入实数数据(2字)或存放32位数据的低16位地址S3 存放输出的实数数据(2字)D FP∑/FP2/FP2SH/FP10SH 适用机型 (*1)FL不适用FPΣ。 (*2)I为I0~ID。 梯形图程序 布尔形式 指令地址 标志状态 · 错误标志(R9007) 当以下情况时变为ON并且保持 · 错误标志(R9008) 当以下情况时瞬间变为ON - 使用索引寄存器指定数据区超出范围 - [S1+1, S1]和[S2+1,S2]、[S3+1,S3]指定的数据不是实数 - [S1+1,S1]>[S2+1,S2] - 在D+1,D指定为整数的情况下, 运算结果超出整数范围. 当由[S1]和[S2]、[S3]指定了整数设备时, 整型数据在进行运算之前在内部转换为实数. 当由[D]指定了整数设备时,实数被转换为整型数据. 当在[S1]和[S2]、[S3]中指定了K常数时, 处理与指定了整型数时的相同. - 使用索引寄存器指定数据区超出范围 - [S1+1, S1]和[S2+1,S2]、[S3+1,S3]指定的数据不是实数 - [S1+1,S1]>[S2+1,S2] - 在D+1,D指定为整数的情况下, 运算结果超出整数范围. · =标志(R900B) 当处理结果被认为等于”0”时变为ON 输出值[D+1,D] 输入值[S3+1,S3] 死区上限值[S2+1,S2] 死区下限值[S1+1,S1] 在此区间输出为0 · 进位标志(R9009) 当处理结果溢出时瞬间变为ON 3-619 F349(FZONE) P349(PFZONE) 浮点型实数零区控制 概述 程序示例 操作数 控制一个实数(浮点数)的零区输出. FPΣ不支持P型的高级指令. 10 11 ST R 0 F349 (FZONE) DT 10 DT 20 DT 30 DT 40 触发器 负偏置数值的实数数据(2字)或存放32位数据的低16位地址S1 3-620 A: 可以使用 N/A: 不可使用 索引寄存器 WX WY WR WL SV EV DT LD FL I K H f S1 A A A A A A A A A A A A A A* A S2 A A A A A A A A A A A A A A* A S3 A A A A A A A A A A A A A A* A D N/A A A A A A A A A A N/A N/A N/A A A 操作数 定时器计数器 整型设备 继电器 数据寄存器 索引变址 常数 * 实数不能使用变址索引 描述 当触发器变为ON时, 将由S1或S2指定偏置值与由S3指定的输入值(实数)相加, 输出结果(实数)存放在由D 指定的区域. 根据以下情况确定输出数值: 当输入值[S3+1,S3]<0.0时, 输入值[S3+1,S3]+负偏置值[S1+1,S1]作为输出值写入[D+1,D]. 当输入值[S3+1,S3]>0.0时, 输入值[S3+1,S3]+正偏置值[S2+1,S2]作为输出值写入[D+1,D]. 正偏置数值的实数数据(2字)或存放32位数据的低16位地址S2 输入实数数据(2字)或存放32位数据的低16位地址S3 存放输出的实数数据(2字)D FP∑/FP2/FP2SH/FP10SH 适用机型 (*1)FL不适用FPΣ。 (*2)I为I0~ID。 梯形图程序 布尔形式 指令地址 标志状态 · 错误标志(R9007) 当以下情况时变为ON并且保持 · 错误标志(R9008) 当以下情况时瞬间变为ON - 使用索引寄存器指定数据区超出范围 - [S1+1, S1]和[S2+1,S2]、[S3+1,S3]指定的数据不是实数 - 在D+1,D指定为整数的情况下, 运算结果超出整数范围. 当由[S1]和[S2]、[S3]指定了整数设备时, 整型数据在进行运算之前在内部转换为实数. 当由[D]指定了整数设备时,实数被转换为整型数据. 当在[S1]和[S2]、[S3]中指定了K常数时, 处理与指定了整型数时的相同. - 使用索引寄存器指定数据区超出范围 - [S1+1, S1]和[S2+1,S2]、[S3+1,S3]指定的数据不是实数 - 在D+1,D指定为整数的情况下, 运算结果超出整数范围. · =标志(R900B) 当处理结果被认为等于”0”时变为ON · 进位标志(R9009) 当处理结果溢出时瞬间变为ON 输出值[D+1,D] 输入值[S3+1,S3] 正偏置值[S2+1,S2] 负偏置值[S1+1,S1] 3-621 F350(FMAX) P350(PFMAX) 浮点型实数求最大值 概述 程序示例 操作数 实数(浮点数)数据表中查找最大值. 10 11 ST R 0 F350 (FMAX) DT 10 DT 20 DT 30 触发器 存放实数数据的起始地址S1 3-622 A: 可以使用 N/A: 不可使用 索引寄存器 WX WY WR WL SV EV DT LD FL I K H f S1 A A A A A A A A A A N/A N/A N/A A N/A S2 A A A A A A A A A A N/A N/A N/A A N/A D N/A A A A A A A A A A N/A N/A N/A A N/A 操作数 定时器计数器 整型设备 继电器 数据寄存器 索引变址 常数 描述 当触发器变为ON时, 在由S1指定的起始区到S2指定的结束区之间数据表中(实数)查找最大值, 最大值 存放在[D+1,D]中,相对位置存放在[D+2]. 存放实数数据的结束地址S2 存放运算结果(最大值和相对地址)的数据区(3字)D S1: 低位字 0 S1+1: 高位字 S1+2: 1 S1+3: : S2: 低位字 n S2+1: 高位字 实数数据表 D: 低位字 D+1: 高位字 D+2: 最大值 相对位置 相对位置 FP2/FP2SH/FP10SH 适用机型 梯形图程序 布尔形式 指令地址 标志状态 · 错误标志(R9007) 当以下情况时变为ON并且保持 · 错误标志(R9008) 当以下情况时瞬间变为ON -使用索引寄存器指定数据区超出范围 - S1>S2 - S1和S2为不同类型的数据区 - 实数数据超出允许的范围 当S2指定为实数的高位字时, 处理方式与指定低位字时的相同. 如果同时存在若干个相同的最大值,则从S1开始查找到的第一个最大值的相对地址被存放在D+2中. S1: 低位字 0 S1+1: 高位字 S1+2: 1 S1+3: : S2-1: 低位字 n S2: 高位字 实数数据表 D: 低位字 D+1: 高位字 D+2: 最大值 相对位置 相对位置 -使用索引寄存器指定数据区超出范围 - S1>S2 - S1和S2为不同类型的数据区 - 实数数据超出允许的范围 3-623 F351(FMIN) P351(PFMIN) 浮点型实数求最小值 概述 程序示例 操作数 实数(浮点数)数据表中查找最小值. 10 11 ST R 0 F351 (FMIN) DT 10 DT 20 DT 30 触发器 存放实数数据的起始地址S1 3-624 A: 可以使用 N/A: 不可使用 索引寄存器 WX WY WR WL SV EV DT LD FL I K H f S1 A A A A A A A A A A N/A N/A N/A A N/A S2 A A A A A A A A A A N/A N/A N/A A N/A D N/A A A A A A A A A A N/A N/A N/A A N/A 操作数 定时器计数器 整型设备 继电器 数据寄存器 索引变址 常数 描述 当触发器变为ON时, 在由S1指定的起始区到S2指定的结束区之间数据表中(实数)查找最小值, 最小值 存放在[D+1,D]中,相对位置存放在[D+2]. 存放实数数据的结束地址S2 存放运算结果(最小值和相对地址)的数据区(3字)D S1: 低位字 0 S1+1: 高位字 S1+2: 1 S1+3: : S2: 低位字 n S2+1: 高位字 实数数据表 D: 低位字 D+1: 高位字 D+2: 最小值 相对位置 相对位置 FP2/FP2SH/FP10SH 适用机型 梯形图程序 布尔形式 指令地址 标志状态 · 错误标志(R9007) 当以下情况时变为ON并且保持 · 错误标志(R9008) 当以下情况时瞬间变为ON -使用索引寄存器指定数据区超出范围 - S1>S2 - S1和S2为不同类型的数据区 - 实数数据超出允许的范围 当S2指定为实数的高位字时, 处理方式与指定低位字时的相同. 如果同时存在若干个相同的最小值,则从S1开始查找到的第一个最小值的相对地址被存放在D+2中. S1: 低位字 0 S1+1: 高位字 S1+2: 1 S1+3: : S2-1: 低位字 n S2: 高位字 实数数据表 D: 低位字 D+1: 高位字 D+2: 最小值 相对位置 相对位置 -使用索引寄存器指定数据区超出范围 - S1>S2 - S1和S2为不同类型的数据区 - 实数数据超出允许的范围 · 进位标志(R9009) 当处理结果溢出时瞬间变为ON 3-625 F352(FMEAN) P352(PFMEAN) 浮点型实数 合计值和平均值 概述 程序示例 操作数 计算实数(浮点数)数据表的合计值和平均值. 10 11 ST R 0 F352 (FMEAN) DT 10 DT 20 DT 30 触发器 存放实数数据的起始地址S1 3-626 A: 可以使用 N/A: 不可使用 索引寄存器 WX WY WR WL SV EV DT LD FL I K H f S1 A A A A A A A A A A N/A N/A N/A A N/A S2 A A A A A A A A A A N/A N/A N/A A N/A D N/A A A A A A A A A A N/A N/A N/A A N/A 操作数 定时器计数器 整型设备 继电器 数据寄存器 索引变址 常数 描述 当触发器变为ON时, 计算从S1指定的起始区到S2指定的结束区之间数据表(实数)的合计值和平均值, 结果存放在从D开始的区域中. 存放实数数据的结束地址S2 存放运算结果(合计值和平均值)的数据区(4字)D D: 低位字 D+1: 高位字 D+2: 低位字 D+3: 高位字 合计值 平均值 FP2/FP2SH/FP10SH 适用机型 梯形图程序 布尔形式 指令地址 标志状态 · 错误标志(R9007) 当以下情况时变为ON并且保持 · 错误标志(R9008) 当以下情况时瞬间变为ON -使用索引寄存器指定数据区超出范围 - S1>S2 - S1和S2为不同类型的数据区 - 实数数据超出允许的范围 当S2指定为实数的高位字时, 处理方式与指定低位字时的相同. 如果同时存在若干个相同的最小值,则从S1开始查找到的第一个最小值的相对地址被存放在D+2中. S1: 低位字 0 S1+1: 高位字 S1+2: 1 S1+3: : S2-1: 低位字 n S2: 高位字 实数数据表 -使用索引寄存器指定数据区超出范围 - S1>S2 - S1和S2为不同类型的数据区 - 实数数据超出允许的范围 指定区域 编程时的注意事项 即使D+2超出指定的区域,也仍然保存结果.但随后的区域可能被破坏.(不进行越界检查) 3-627 F353(FSORT) P353(PFSORT) 浮点型实数排序 概述 程序示例 操作数 将实数(浮点数)数据表中的数值按升序或降序排列. 10 11 ST R 0 F353 (FSORT) DT 10 DT 20 K 0 触发器 存放实数数据的起始地址S1 3-628 A: 可以使用 N/A: 不可使用 索引寄存器 WX WY WR WL SV EV DT LD FL I K H f S1 N/A A A A A A A A A A N/A N/A N/A A N/A S2 N/A A A A A A A A A A N/A N/A N/A A N/A S3 A A A A A A A A A A A A N/A A N/A 整型设备 继电器 数据寄存器 索引变址 常数 操作数 定时器计数器 描述 当触发器变为ON时, 将从S1指定的起始区到S2指定的结束区之间数据表(实数)按升序(从小到大)或 降序(从大到小)排列. 排列顺序由S3指定. 如果S1=S2, 则不进行排序操作. 排序条件由S3按以下内容指定: - K0: 升序排列 - K1: 降序排列 排序方法采用2重排序.数据比较的次数与S1到S2的数据个数的平方成正比, 因此当排序数量较多时, 执行时间较长. 存放实数数据的结束地址S2 指定排序条件的常数或存放地址(K0:升序 K1:降序)S3 FP2/FP2SH/FP10SH 适用机型 梯形图程序 布尔形式 指令地址 标志状态 · 错误标志(R9007) 当以下情况时变为ON并且保持 · 错误标志(R9008) 当以下情况时瞬间变为ON -使用索引寄存器指定数据区超出范围 - S1>S2 - S1和S2为不同类型的数据区 - 实数数据超出允许的范围 当S2指定为实数的高位字时, 处理方式与指定低位字时的相同. 如果同时存在若干个相同的最小值,则从S1开始查找到的第一个最小值的相对地址被存放在D+2中. S1: 低位字 0 S1+1: 高位字 S1+2: 1 S1+3: : S2-1: 低位字 n S2: 高位字 实数数据表 -使用索引寄存器指定数据区超出范围 - S1>S2 - S1和S2为不同类型的数据区 - 实数数据超出允许的范围 指定区域 编程时的注意事项 即使D+2超出指定的区域,也仍然保存结果.但随后的区域可能被破坏.(不进行越界检查) 3-629 F355(PID) PID过程控制 概述 程序示例 操作数 根据参数表中的数据进行PID过程控制输出 10 11 ST R 0 F355 (PID) DT 10 触发器 PID参数表的起始编号S 3-630 A: 可以使用 N/A: 不可使用 索引寄存器 WX WY WR WL SV EV DT LD FL I K H f S N/A N/A N/A N/A N/A N/A A N/A N/A N/A N/A N/A N/A N/A 继电器 数据寄存器 索引变址 常数 操作数 定时器计数器 描述 当触发器变为ON时, 进行PID过程控制, 使S+2指定的测量值保持在由S+1指定的设定值, 结果输出到 S+3中. 可以选择微分先行型或比例-微分先行型的PID控制模式. 利用参数表设置PID相关参数(比例增益系数、积分时间和微分时间)和处理模式及控制周期. PID运算 将按照这些设置进行. PID控制处理类型 逆动作和正动作 当过程发生变化时, 可以选择输出的变化方向。 如果测量值下降,则输出值应增大.这种方式称为“逆动作”(如加热器等). 如果测量值上升,则输出值应增大.这种方式称为“正动作”(如冷却器等). 微分先行型(PI-D)和比例-微分先行型(I-PD) 通常,在使用”微分先行型PID控制”的情况下,当设定值发生变化时, 输出值会有较大波动, 但能迅速收敛. 通常,在使用”比例微分先行型PID控制”的情况下, 改变设定值后, 输出值的波动较小, 但达到稳态值较慢. FP-e/FP0/FP∑/FP2/FP2SH/FP10SH 适用机型 梯形图程序 布尔形式 指令地址 标志状态 · 错误标志(R9007) 当以下情况时变为ON并且保持 · 错误标志(R9008) 当以下情况时瞬间变为ON - 参数设置超出范围 - 使用索引寄存器指定数据区超出范围 - 参数设置超出范围 - 使用索引寄存器指定数据区超出范围 参数表设置 [S]: 控制模式 [S+1]: 设定值(SP) [S+2]: 测量值(PV) [S+3]: 输出值(MV) [S+4]: 输出下限值 [S+5]: 输出上限值 [S+6]: 比例增益(Kp) [S+7]: 积分时间(Ti) [S+8]: 微分时间(Td) [S+9]: 控制周期(Ts) [S+10]: 自整定进程指示 [S+11]: [S+29]: PID运算工作区≈ ≈ 3-631 3-632 参数表说明 不执行自整定 执行自整定 逆动作 H0 H8000 正动作 H1 H8001 逆动作 H2 H8002 正动作 H3 H8003 [S]数值 微分先行型 比例微分 先行型 控制模式 (1) 控制模式 ························································································································ [S] 利用H常选择PID控制类型和自整定ON/OFF。 自整定 通过测量过程量的相应情况, 可以测定PID的参数Kp、Ti和Td。执行自整定时, 在自整定结束之后, 推测 出的结果被自动反映到PID参数区.(对于不同的被控制过程, 有可能存在无法完成自整定的情况. 在这种 情况下, 处理结束后将返回到原有的设定参数.) 有关执行自整定时的注意事项, 请参阅下页内容. 正动作和逆动作 此参数确定当过程发生变化时, 输出增大或减小. 逆动作 如果测量值下降,则输出值应增大.这种方式称为“逆动作”(如加热器等). 正动作 如果测量值上升,则输出值应增大.这种方式称为“正动作”(如冷却器等). 微分先行型PID和比例-微分先行型PID 改变设定值时, 输出将改变. 微分先行型 通常情况下, 当设定值改变时, 产生的波动较大, 但是收敛、达到稳态值较快. 比例-微分先行型 通常情况下, 当设定值改变时, 产生的波动较小, 但是收敛、达到稳态值较慢. (2) 设定值(SP) ················································································································ [S+1] 请在以下范围内设置过程控制的目标值. K0~K10000 (3) 测量值(PV) ················································································································ [S+2] 利用A/D转换单元等, 将过程控制量的当前值转换输入. 允许范围为 K0~K10000 (4) 输出值(MV) ················································································································ [S+3] 存放PID运算的结果. 可以利用D/A等输出到被控制过程对象. 范围为K0~K10000 (5) 输出下限值(MV) ········································································································ [S+4] 允许范围为K0~K9999 (<上限值) (6) 输出下限值(MV) ········································································································ [S+5] 允许范围为K1~K10000 (>下限值) 指定输出值(MV)的范围. 不输出超出指定范围的数值. 上限值和下限值应满足以下条件: 0≤输出下限值≤输出上限值≤10000 (7) 比例增益(Kp) ············································································································ [S+6] 指定PID运算的有关系数. 设定的数值×0.1为实际的比例增益系数. 允许的设定范围为K1~K9999(0.1~999.9, 以0.1为单位指定). 在控制模式中指定了自整定时, 可以自动调节并改写设定的数值. (8) 积分时间(Ti) ············································································································ [S+7] 指定PID运算的有关系数. 设定的数值×0.1为实际的积分时间. 允许的设定范围为K0~K10000(0~1000秒, 以0.1秒为单位指定). 在控制模式中指定了自整定时, 可以自动调节并改写设定的数值. (9) 微分时间(Td) ············································································································ [S+8] 指定PID运算的有关系数. 设定的数值×0.1为实际的微分时间. 允许的设定范围为K0~K10000(0~1000秒, 以0.1秒为单位指定). 在控制模式中指定了自整定时, 可以自动调节并改写设定的数值. (10) 控制周期(Ts) ·········································································································· [S+9] 指定执行PID运算处理的周期. 设定的数值×0.01为实际的控制周期. 允许的设定范围为K1~K6000(0.01~60.0秒, 以0.01秒为单位指定). (11) 控制周期(Ts) ········································································································ [S+10] 指定执行PID运算处理的周期. 设定的数值×0.01为实际的控制周期. 允许的设定范围为K1~K6000(0.01~60.0秒, 以0.01秒为单位指定). (12) 自整定进程指示 ···································································································· [S+11] 在指定了进行自整定的情况下, 此处表示自整定的处理进度. 其中的数值根据进程由缺省值K0开始, 从K1到K5依次变化. 当自整定结束后, 数值返回到缺省值. (13) PID运算工作区 ······················································································ [S+11]~[S+29] 系统使用本区域执行PID处理. 请勿在用户程序中使用本区域. 3-633 3-634 执行自整定时的注意事项 当在参数表(控制模式[S])中指定了”执行自整定”时, 请注意以下事项: 在自整定结束之后, [S]中的控制模式代码被自动从H8000~H8003改写为H0~H3. 应确认控制模 式在程序中是否被重写. 在自整定结束之后, 最优的参数值被分别存放到比例增益(Kp)、积分时间(Ti)和微分时间(Td). 但是, 在执行自整定之前, 必须设置一组在允许范围之内的大约数值(例如下限值). 在自整定结束之后, 最优的参数值被分别存放到比例增益(Kp)、积分时间(Ti)和微分时间(Td).应该 注意避免因疏忽而改变存放的数值. 编程时的注意事项 参数表需要一个包括运算工作区再内的30个字的连续数据区, 必须注意避免其他指令覆盖使用这 一区域中的数据. 当参数表超出范围时, 并不产生错误. 因此在指定S时, 应至少选择在最终地址之前30个字的数字. 注意避免在使用索引寄存器时引起的越界. 越界时不发生错误. 利用A/D或其他设备将当前测量值输入到[S+2]. 利用D/A或其他设备将PID处理结果[S+3]输出到被控过程. 本指令F355(PID)不能在中断程序中使用. FPΣ的F355(PID)指令说明 FPΣ的F355(PID)指令在原有的基础上, 增加了一些功能. 这些变化的使用说明如下: 参数表中的[控制代码]追加了部分选择控制位, 参数表的其他内容没有变化. 0:逆动作 1:正动作 0:P-ID 1:I-PD 0:通常控制 1:自整定开始 0:以往方式 1:新方式 0:运算周期×10ms 1:运算周期×0.5ms * 0:设定周期自动运算 1:触点ON时运算 * b0 b1 b2 b3 b4 b5 b6 b7 b8 b9 bA bB bC bD bE bF 控制模式代码 ① 设定值、当前值变为可以在±30000范围内使用(Ver2.20及以前版本为±10000)。 (原来:0~10000) -3000.0℃的温度值也能直接使用。 ② PID的运算输出计算范围变为上下限的±2000。 (原来:固定为 -2000~12000) 减少了不能改变运算输出的时间。 ③ PID运算周期可以以0.5ms为单位进行设置。(原来:10ms单位) 可以实现高速机械的PID运算。 ④ PID的运算时机可以自由控制。(原来:不能控制运算时机) 由于当前值的测定与PID运算可以同时进行, 可以进行高精度的PID控制。 ① ② ③ ④ * Ver.2.26以后支持此项设置 3-635 3-636 PID控制动作说明 PID控制是一种带反馈的控制方式, 被广泛应用于温度、压力、流量、液位等过程控制领域. (1) 比例动作 比例运算将输入信号按比例输出. Kp 输出MV 偏差e 测量值 信号PV 设定值信号SV - + 0 t e 1 0 t 2 1 MV 0.5 Kp=2 Kp=0.5 Kp=1 0 t mi 0 t e 1 mi=1/Ti∫edt 积分 输出mi 偏差e设定值信号SV - + 测量值 信号PV 控制量保持为常数. 存在定常偏差. Kp的数值越大, 比例动作的效果越强. (2) 积分动作 将输入的积分时间按比例大小输出的控制动作. 与比例或比例微分动作组合使用, 可以消除稳态误差 Ti的数值越小, 比例动作的效果越强. (3) 微分动作 将输入的微分时间按比例大小输出的控制动作. 0 t mDe 0 t 微分 输出mD 偏差e设定值信号SV - + 测量值 信号PV mD=TD· de dt 0 t e 0 t mD 积分 输出MV偏差e设定值信号SV - + 测量值 信号PV 微分 + + + + Kp 利用微分动作的特性, 可以减小被控过程的延迟特性对控制的不好影响. Td的数值越大, 比例动作的效果越强. 在使用单纯的微分动作的情况下, 当有噪声干扰输入时,会使控制暂时失效. 因此,一般采用 对操作端没有恶劣影响的不完全微分控制. (4) PID动作 将比例、积分、微分各个动作组合形成的控制方式称为PID动作. 利用PID控制, 如果采用最优的参数, 可以使被控制量快速达到并且保持在目标值. 3-637 F373(DTR) P373(PDTR) 数据变化检出(16bit) 概述 程序示例 操作数 示例程序说明 检测16位数据的变化. FPΣ不支持P型的高级指令. 10 11 17 18 20 ST R 0 F373 (DTR) DT 10 DT 20 ST R 0 AN R9009 OT R 10 触发器 D 用于检测的16bit数据区S 存放前次执行时数据状态的数据区 3-638 当触发器R0变为ON时, 如果DT10中的数据与前次执行时的发生变化, 则内部特殊继电器R9009(进位标志) 变为ON, 因此输出R10. A: 可以使用 N/A: 不可使用 索引寄存器 WX WY WR WL SV EV DT LD FL I K H f S A A A A A A A A A A N/A N/A N/A A N/A D N/A A A A A A A A A A N/A N/A N/A A N/A 整型设备 继电器 数据寄存器 索引变址 常数 操作数 定时器计数器 触发器 描述 当S指定的数据自前次操作后发生变化时, 内部继电器R9009(进位标志)变为ON. D用于保存前次操作时的数据. 当本次操作结束时, 当前数据被存放到D. FP∑/FP2/FP2SH/FP10SH 适用机型 (*1)FL不适用FPΣ。 (*2)I为I0~ID。 梯形图程序 布尔形式 指令地址 标志状态 · 错误标志(R9007) 当以下情况时变为ON并且保持 · 错误标志(R9008) 当以下情况时瞬间变为ON 编程时注意事项 用于检测数据变化的内部特殊继电器R9009(进位标志)会随每次执行指令的情况而刷新. 因此, 在使用时 应将R9009在程序中紧随F373(DTR)/P373(PDTR)指令 应将结果输出到一个输出继电器或内部继电器以保持该结果.(参阅F64(BCMP)/P64(PBCMP)的说明) 如前页所示,应在使用R9009之前加入与用于执行F373(DTR)/P373(PDTR)指令的相同触发器(R0) 如果使用常闭继电器(R9010), 则不必使用触发器(R0). - 使用索引寄存器指定数据区超出范围 - 使用索引寄存器指定数据区超出范围 · 进位标志(R9009) 当指定的数据发生变化时变为ON 3-639 F374(DDTR) P374(PDDTR) 数据变化检出(32bit) 概述 程序示例 操作数 示例程序说明 检测32位数据的变化. FPΣ不支持P型的高级指令. 10 11 17 18 20 ST R 0 F374 (DDTR) DT 10 DT 20 ST R 0 AN R9009 OT R 10 触发器 D 用于检测的32bit的低16bit数据区S 存放前次执行时数据状态的32bit的低16bit数据区 3-640 当触发器R0变为ON时, 如果[DT11,DT10]中的数据与前次执行时的发生变化, 则内部特殊继电器 R9009(进位标志)变为ON, 因此输出R10. A: 可以使用 N/A: 不可使用 索引寄存器 WX WY WR WL SV EV DT LD FL I K H f S A A A A A A A A A A N/A N/A N/A A N/A D N/A A A A A A A A A A N/A N/A N/A A N/A 整型设备 继电器 数据寄存器 索引变址 常数 操作数 定时器计数器 触发器 描述 当S指定的32bit数据自前次操作后发生变化时, 内部继电器R9009(进位标志)变为ON. [D+1,D]用于保存前次操作时的数据. 当本次操作结束时, 当前数据被存放到[D+1,D]. FP∑/FP2/FP2SH/FP10SH 适用机型 (*1)FL不适用FPΣ。 (*2)I为I0~ID。 梯形图程序 布尔形式 指令地址 标志状态 · 错误标志(R9007) 当以下情况时变为ON并且保持 · 错误标志(R9008) 当以下情况时瞬间变为ON 编程时注意事项 用于检测数据变化的内部特殊继电器R9009(进位标志)会随每次执行指令的情况而刷新. 因此, 在使用时 应将R9009在程序中紧随F374(DDTR)/P374(PDDTR)指令 应将结果输出到一个输出继电器或内部继电器以保持该结果.(参阅F64(BCMP)/P64(PBCMP)的说明) 如前页所示,应在使用R9009之前加入与用于执行F374(DDTR)/P374(PDDTR)指令的相同触发器(R0) 如果使用常闭继电器(R9010), 则不必使用触发器(R0). - 使用索引寄存器指定数据区超出范围 - 使用索引寄存器指定数据区超出范围 · 进位标志(R9009) 当指定的数据发生变化时变为ON 3-641 F410(SETB) P410(PSETB) 索引寄存器Bank设置 概述 程序示例 操作数 设置索引寄存器Bank编号. 10 11 ST R 0 F410 (SETB) K 1 触发器 常数或存放寄存器bank编号的数据区n 3-642 A: 可以使用 N/A: 不可使用 索引寄存器 WX WY WR WL SV EV DT LD FL I K H f n A A A A A A A A A A A A N/A A N/A 整型设备 继电器 数据寄存器 索引变址 常数 操作数 定时器计数器 描述 本指令用于选择当前索引寄存器Bank编号. 编程时注意事项 在执行程序起始地址之前, 索引寄存器Bank编号被自动设置为0. 在程序存储区为120k步的情况下, 当第1程序与第2程序切换时,索引寄存器Bank被自动设置为Bank0. FP2SH/FP10SH 适用机型 梯形图程序 布尔形式 指令地址 标志状态 · 错误标志(R9007) 当以下情况时变为ON并且保持 · 错误标志(R9008) 当以下情况时瞬间变为ON 程序示例 -使用索引寄存器指定数据区超出范围 - Bank编号超出K0~K15 -使用索引寄存器指定数据区超出范围 - Bank编号超出K0~K15 切换索引寄存器Bank Bank0的I0~ID Bank1的I0~ID Bank2的I0~ID Bank3的I0~ID 3-643 F411(CHGB) P411(PCHGB) 索引寄存器Bank切换 概述 程序示例 操作数 将当前索引寄存器Bank编号保存到堆栈区, 并切换到新的Bank编号. 10 11 ST R 0 F411 (CHGB) K 2 触发器 常数或存放寄存器bank编号的数据区n 3-644 A: 可以使用 N/A: 不可使用 索引寄存器 WX WY WR WL SV EV DT LD FL I K H f n A A A A A A A A A A A A N/A A N/A 整型设备 继电器 数据寄存器 索引变址 常数 操作数 定时器计数器 描述 本指令用于选择当前索引寄存器Bank编号. 此时, 当前的索引寄存器Bank编号被存放到堆栈区(堆栈只有一级有效, 因此在此之前的数据被覆盖). 在中断程序、子程序中使用索引寄存器Bank编号时, 应在子程序开始处执行F411(CHGB)指令, 在子程序 结束之前执行F412(POPB)指令. 编程时注意事项 在执行程序起始地址之前, 索引寄存器Bank编号被自动设置为0. 在程序存储区为120k步的情况下, 当第1程序与第2程序切换时,索引寄存器Bank被自动设置为Bank0. 堆栈区只有一级有效, 因此在此之前的数据被覆盖. FP2SH/FP10SH 适用机型 梯形图程序 布尔形式 指令地址 标志状态 · 错误标志(R9007) 当以下情况时变为ON并且保持 · 错误标志(R9008) 当以下情况时瞬间变为ON 程序示例 - 使用索引寄存器指定数据区超出范围 - Bank编号超出K0~K15 - 使用索引寄存器指定数据区超出范围 - Bank编号超出K0~K15 以下程序在中断程序开始时将索引寄存器切换到”2”, 在中断程序结束之前恢复到原有的索引寄存器 (在IRET指令之前). 主程序 子程序 3-645 F412(POPB) P412(PPOPB) 索引寄存器Bank恢复 概述 程序示例 将当前索引寄存器Bank编号恢复到执行F411(CHGB)/P411(PCHGB) 指令之前的数值. 10 11 ST R 0 F412 (POPB) 触发器 3-646 描述 本指令用于将当前的索引寄存器Bank编号恢复为堆栈区中所保持的数值. 此时, 堆栈中的内容并不改变。 在中断程序、子程序中使用索引寄存器Bank编号时, 应在子程序开始处执行F411(CHGB)指令, 在子程序 结束之前执行F412(POPB)指令. 编程时注意事项 在执行程序起始地址之前, 索引寄存器Bank编号被自动设置为0. 在程序存储区为120k步的情况下, 当第1程序与第2程序切换时,索引寄存器Bank被自动设置为Bank0. 堆栈区只有一级有效. 程序示例 以下程序在中断程序开始时将索引寄存器切换到”2”, 在中断程序结束之前恢复到原有的索引寄存器 (在IRET指令之前). 主程序 子程序 FP2SH/FP10SH 适用机型 梯形图程序 布尔形式 指令地址 F414(SBFL) P414(PSBFL) 文件寄存器Bank设置 概述 程序示例 操作数 设置文件寄存器Bank编号. 10 11 ST R 0 F414 (SBFL) DT 1 触发器 常数或存放寄存器bank编号的数据区n A: 可以使用 N/A: 不可使用 索引寄存器 WX WY WR WL SV EV DT LD FL I K H f n A A A A A A A A A A A A N/A A N/A 整型设备 继电器 数据寄存器 索引变址 常数 操作数 定时器计数器 描述 本指令用于选择当前文件寄存器Bank编号. 此时, 当前的索引寄存器Bank编号被存放到堆栈区(DT90264)(堆栈中的内容保持). 文件寄存器Bank的操作 文件寄存器Bank编号: K0~K2. 用于文件寄存器Bank的特殊数据寄存器如下: DT90263 文件寄存器bank(当前值) 存放文件寄存器Bank的当前值 DT90264 文件寄存器bank(退避值) 存放文件寄存器Bank的退避值 文件寄存器Bank在程序第一步处被设置为Bank0. 第二程序的第一步也将文件寄存器Bank设置为Bank0 标志状态 · 错误标志(R9007) 当以下情况时变为ON并且保持 · 错误标志(R9008) 当以下情况时瞬间变为ON -使用索引寄存器指定数据区超出范围 - Bank编号超出K0~K2 -使用索引寄存器指定数据区超出范围 - Bank编号超出K0~K2 FP2SH 适用机型 3-647 梯形图程序 布尔形式 指令地址 F415(CBFL) P415(PCBFL) 文件寄存器Bank切换 概述 程序示例 操作数 切换文件寄存器Bank编号. 10 11 ST R 0 F415 (CBFL) DT 1 触发器 常数或存放寄存器bank编号的数据区n 3-648 A: 可以使用 N/A: 不可使用 索引寄存器 WX WY WR WL SV EV DT LD FL I K H f n A A A A A A A A A A A A N/A A N/A 整型设备 继电器 数据寄存器 索引变址 常数 操作数 定时器计数器 描述 本指令用于选择当前文件寄存器Bank编号. 此时, 当前的文件寄存器Bank编号被存放到堆栈区(堆栈只有一级有效, 因此在此之前的数据被覆盖). 文件寄存器Bank的操作 文件寄存器Bank编号: K0~K2. 用于文件寄存器Bank的特殊数据寄存器如下: DT90263 文件寄存器bank(当前值) 存放文件寄存器Bank的当前值 DT90264 文件寄存器bank(退避值) 存放文件寄存器Bank的退避值 文件寄存器Bank在程序第一步处被设置为Bank0. 第二程序的第一步也将文件寄存器Bank设置为Bank0 标志状态 · 错误标志(R9007) 当以下情况时变为ON并且保持 · 错误标志(R9008) 当以下情况时瞬间变为ON -使用索引寄存器指定数据区超出范围 - Bank编号超出K0~K2 -使用索引寄存器指定数据区超出范围 - Bank编号超出K0~K2 FP2SH 适用机型 梯形图程序 布尔形式 指令地址 F416(PBFL) P416(PPBFL) 文件寄存器Bank恢复 概述 程序示例 将文件寄存器Bank编号切换回执行F415(CBFL)/P415(PCBFL)指令之前的数值. 10 11 ST R 0 F416 (PBFL) 触发器 描述 本指令用于选择当前文件寄存器Bank编号. 此时, 当前的文件寄存器Bank编号被存放到堆栈区(堆栈只有一级有效, 因此在此之前的数据被覆盖). 文件寄存器Bank的操作 文件寄存器Bank编号: K0~K2. 用于文件寄存器Bank的特殊数据寄存器如下: DT90263 文件寄存器bank(当前值) 存放文件寄存器Bank的当前值 DT90264 文件寄存器bank(退避值) 存放文件寄存器Bank的退避值 文件寄存器Bank在程序第一步处被设置为Bank0. 第二程序的第一步也将文件寄存器Bank设置为Bank0 FP2SH 适用机型 3-649 梯形图程序 布尔形式 指令地址 第四章 编程信息 4-I 4-II 4.1 系统寄存器列表 系统寄存器用于设置确定PLC运行范围或使用功能的数值(参数). 这些设定值根据程序的功能需要进行设置. 对于不使用的功能, 无需设置系统寄存器. 4.1.1 关于系统寄存器的注意事项 系统寄存器的设置内容从被设置时开始生效. 但是, 输入设置、编程口设置、COM端口设置和调制解调器连接设置等内容, 在PLC从PROG.(编程)切换到 RUN(运行)模式后才开始生效. 在设置为与调制解调器(modem)连接的情况下, 当PLC断电并再次通电后、 或者从PROG.(编程)切换到RUN(运行)模式时, PLC会自动向modem发出一组指令使其能够接收信号数据. 在执行初始化操作后, 所有系统寄存器中的数值都被初始化. 系统寄存器的设置内容(参数)是程序的一部分, 因此, 在向PLC中传输程序或从PLC上载程序时, 系统寄存器 中的各项参数会与梯形图程序一起被同时传入PLC或从PLC中读出. 在新编写程序或修改设置时,应注意避免 系统寄存器的设置被错误覆盖或改写. 系统寄存器设置的注意事项 确认和修改系统寄存器的设置 需要使用已被设置的数值(读取时显示的数值)时, 不必重新写入这些值. 使用编程工具软件FPWIN-GR 步骤: 1. 将CPU的模式设置为PROG.(编程) 2. 在主菜单中选择[选项] → [PLC系统寄存器设置] 3. 在[PLC系统寄存器设置]的设置页面中, 各项目的设定值被显示. 4. 需要改变设置时, 请根据系统寄存器表中的内容进行设置. 5. 执行[OK], 将设定的数值写入PLC. 使用手持编程器Ⅱ 步骤: 1. 将CPU的模式设置为PROG.(编程) 2. 在手持编程Ⅱ中按以下按键 3. 指定系统寄存器编号(如No.26), 读取并设置该项内容, 所选择的系统寄存器(如No.26) 将被显示. 4. 需要改变设置时, 请按键, 并根据系统寄存器表中的内容输入新的数值. 设置时可以使用十进制常数(K)或十六进制常数(H). ACLR (-) OP 5 0 ENT 2 6 READ 注释: 手持编程器Ⅱ不能用于修改FPΣ/FP2/FP2SH/FP10SH的系统寄存器 设置. 4-1 C10,C14,C16,C32和T32C在表中各自对应10点,14点,16点,32点型FP0控制单元。 将系统寄存器5和6 设为相同值 ————未使用15 K0: 保持 K1: 不保持 K1步进梯形图程序保持或非保持设 置(对应机型: T32) FP0 C10/C14/C16/C32,用编程工具修改 该值会出现错误 ——未使用(可用型号: C10,C14/C16/C32) 14 ————未使用9~13 K0~K16384K0数据寄存器保持型区域起始编号 设置(对应机型: T32) 8 K0~K63K10内部继电器保持型区域起始编号 设置(对应机型: T32) 7 K0~K144K100定时器/计数器保持型区域起始 编号设置(对应机型: T32) 6 FP0 C10/C14/C16/C32,用编程工具修改 该值会出现错误 ——未使用 (对应机型: C10,C14,C16,C32) 6~8 K0~K144K100定时器/计数器分界 (设定计数器起始区编号) 5保持/ 非保持 ————未使用1~3 设定值是固定的,无法改变 存储值的更化取决于不同型号 K3: 3K字(FP0 C10,C14,C16) K5: 5K字(FP0 C32) K10: 10K字(FP0 T32C) ——0用户存 储分配 描述默认值名称地址项目 4.1.2 系统寄存器列表(用于FP0) 4-2 ————未使用30时间 设置 K4~K32760: 10ms~81900ms 建议使用默认设置值(K2600/6500ms) 设置值×2.5ms=多帧通信等待时间(ms) K2600 (6500ms) 设置多帧通信时的等待时间31 FP0 C10/C14/C16/C32,用编程工具修改 该值会出现错误 ——未使用32,33 K1~K64(2.5ms~160ms): 按指定的时 间间隔进行扫描. K0: 通常扫描 设置值×2.5ms=固定扫描周期时间(ms) K0设置固定扫描时间34 操作 错误 FP0 C10/C14/C16/C32,用编程工具修改 该值会出现错误 ——未使用4 ————未使用28,29 K0: 停止 K1: 继续 K1设置当在远程I/O(S-LINK)系统 中发生通信错误时的操作 27 K0: 停止 K1: 继续 K0设置当发生运算错误时的操作26 ————未使用24,25 K0: 停止 K1: 继续 K0 设置当出现I/O校验错误时的操 作 23 ————未使用21,22 K0: 禁止(会出现语法错误) K1: 允许(不出现语法错误) K0设置禁止或允许多重输出20 描述默认值名称地址项目 ↑ 在编程工具 软件中,直接 输入时间值 (2.5的倍数) ↑ 在手持编程器Ⅱ 中, 输入设置值. (时间值除以2.5) ↑ 在编程工具 软件中,直接 输入时间值 (2.5的倍数) ↑ 在手持编程器Ⅱ 中, 输入设置值. (时间值除以2.5) 4-3 0: 输入X1不作为高速计数器 3: 增计数输入(X1) 4: 增计数输入(X1) 复位输入(X2) 5: 减计数输入(X1) 6: 减计数输入(X1) 复位输入(X2) 0: 输入X0不作为高速计数器 1: 2相输入(X0,X1) 2: 2相输入(X0,X1) 复位输入(X2) 3: 增计数输入(X0) 4: 增计数输入(X0) 复位输入(X2) 5: 减计数输入(X0) 6: 减计数输入(X0) 复位输入(X2) 7: 分别输入(X0,X1) 8: 分别输入(X0,X1) 复位输入(X2) 9: 方向判别(X0,X1) 10: 方向判别(X0,X1) 复位输入(X2) 使用编程工具 软件设置 输入 设置 CH1 CH0H0高速计数器 模式设置 (X0~X2) 400 描述默认值名称地址项目 注释 • 如果动作模式设置为2相计数,则CH1的分别输入和方向差别的设置无效. • 如果复位设置重叠,则CH1的设置优先. • 如果系统寄存器400至403同时对输入继电器进行了设置,则按以下优先顺序 处理: [高速计数器] → [脉冲捕捉] → [中断输入] 4-4 0: 输入X0不作为 高速计数器 1: 2相输入(X0,X1) 2: 2相输入(X0,X1) 复位输入(X2) 3: 增计数输入(X0) 4: 增计数输入(X0) 复位输入(X2) 5: 减计数输入(X0) 6: 减计数输入(X0) 复位输入(X2) 7: 分别输入(X0,X1) 8: 分别输入(X0,X1) 复位输入(X2) 9: 方向判别(X0,X1) 10: 方向判别(X0,X1) 复位输入(X2) 0: 输入X1不作为 高速计数器 3: 增计数输入(X1) 4: 增计数输入(X1) 复位输入(X2) 5: 减计数输入(X1) 6: 减计数输入(X1) 复位输入(X2) 使用手持 编程器Ⅱ 设置 输入 设置 CH0/ CH1 H0高速计数器 模式设置 (X0~X2) 400 描述默认值名称地址项目 注释 • 如果动作模式设置为2相计数,则CH1的分别输入和方向差别的设置无效. • 如果复位设置重叠,则CH1的设置优先. • 如果系统寄存器400至403同时对输入继电器进行了设置,则按以下优先顺序 处理: [高速计数器] → [脉冲捕捉] → [中断输入] 00H 4-5 0: 输入X4不作为高速计数器 3: 增计数输入(X4) 4: 增计数输入(X4) 复位输入(X5) 5: 减计数输入(X4) 6: 减计数输入(X4) 复位输入(X5) 0: 输入X3不作为高速计数器 1: 2相输入(X3,X4) 2: 2相输入(X3,X4) 复位输入(X5) 3: 增计数输入(X3) 4: 增计数输入(X3) 复位输入(X5) 5: 减计数输入(X3) 6: 减计数输入(X3) 复位输入(X5) 7: 分别输入(X3,X4) 8: 分别输入(X4,X4) 复位输入(X5) 9: 方向判别(X3,X4) 10: 方向判别(X3,X4) 复位输入(X5) 使用编程工具 软件设置 输入 设置 CH3 CH2H0高速计数器 模式设置 (X3~X5) 401 描述默认值名称地址项目 注释 • 如果动作模式设置为2相计数,则CH3的分别输入和方向差别的设置无效. • 如果复位设置重叠,则CH3的设置优先. • 如果系统寄存器400至403同时对输入继电器进行了设置,则按以下优先顺序 处理: [高速计数器] → [脉冲捕捉] → [中断输入] 4-6 0: 输入X3不作为 高速计数器 1: 2相输入(X3,X4) 2: 2相输入(X3,X4) 复位输入(X5) 3: 增计数输入(X3) 4: 增计数输入(X3) 复位输入(X5) 5: 减计数输入(X3) 6: 减计数输入(X3) 复位输入(X5) 7: 分别输入(X3,X4) 8: 分别输入(X3,X4) 复位输入(X5) 9: 方向判别(X3,X4) 10: 方向判别(X3,X4) 复位输入(X5) 0: 输入X4不作为 高速计数器 3: 增计数输入(X4) 4: 增计数输入(X4) 复位输入(X5) 5: 减计数输入(X4) 6: 减计数输入(X4) 复位输入(X5) 使用手持 编程器Ⅱ 设置 输入 设置 CH2/ CH3 H0高速计数器 模式设置 (X3~X5) 401 描述默认值名称地址项目 注释 • 如果动作模式设置为2相计数,则CH3的分别输入和方向差别的设置无效. • 如果复位设置重叠,则CH3的设置优先. • 如果系统寄存器400至403同时对输入继电器进行了设置,则按以下优先顺序 处理: [高速计数器] → [脉冲捕捉] → [中断输入] 00H 4-7 输入 设置 FP0 C10/C14/C16/C32,用编程工具修 改该值会出现错误 ——未使用404- 407 使用编程工具软件 在高位字节中 设置作为中断 输入的触点 (0: 通常输入 1: 中断输入) 在低位字节中 设置中断输入 的有效边沿 (0: ON有效 1: OFF有效) 使用手持编程器Ⅱ设置 例: 当设置X0,X1,X2,X3为中断输入, 其中X0,X1为下降沿(ON→OFF)有效 指定边沿 指定中断 ↓ 输入H30F H0中断输入设置403 0: 标准输入 1: 脉冲捕捉输入 使用手持编程器Ⅱ设置时, 按上述输入 16进制数值. 例: 将X3,X4设置为脉冲捕捉 ↓ 输入H18 对于FP0, 不允许设置X6和X7. H0脉冲捕捉功能设置402 描述默认值名称地址项目 4-8 注释 如果系统寄存器400至403同时对输入继电器进行了设置,则按以下优先顺序 处理: [高速计数器] → [脉冲捕捉] → [中断输入] 当高速计数器设置为增计数模式时,即使X0被指定为中断输入和脉冲捕捉输入, 这些设置也无效,X0仍然作为高速计数器输入. No.400: H1 ←此设置有效 No.402: H1 No.403: H1 4-9 通过手持编程器 Ⅱ设置 0: 9600bps 1: 19200bps H0编程口波特率设置414 编程口 设置 编程口/ COM口 设置 例: 编程口和COM口都设置为 19200bps时 → H100 H1编程口和 COM口波 特率设置 414 使用编程工具软件时, 在采单中选择对 应的项目. 使用手持编程器Ⅱ设置时, 利用16进制 常数指定对应的项目. Modem通信 0: 不使用 1: 使用 数据长度 0: 8bits 1: 7bits 设置为与Modem连接时, 在系统寄存器 410中将站号设置为1 H0编程口通信格式设置 默认设置项目 -Modem: 不使用 -数据长度: 8bits 411 K1~K32(1号到32号站)K1编程口站号设置410 描述默认值名称地址项目 编程口 H0: 9600bps H1: 19200bps (设置为H0或H1 以外的数值时, 编程口将被设置 为9600bps) COM口 H0: 9600bps H1: 19200bps H2: 4800bps H3: 2400bps H4: 1200bps H5: 600bps H6: 300bps 4-10 T32 C32C C10/C14C/C16C 0: 19200bps 1: 9600bps 2: 4800bps 3: 2400bps 4: 1200bps 5: 600bps 6: 300bps H1COM口速率设置414 COM口 设置 K1~K32(1号到32号站)K1COM口站号设置415 使用编程工具软件时,在菜单中设置. 使用手持编程器 H0: 调制解调器不可用 H8000: 调制解调器可用 H0COM口调制解调器(Modem) 兼容性设置 416 C10/C14C/C16C型: K0-K1660 C32C型: K0-K6144 T32型: K0-K16383 K0接收缓冲区起始地址设置417 K0~K1660K1660 K0~K6144K6144 K0~K16384K16384 接收缓冲 区容量 设置 418 使用编程工具软件时, 在菜单中设置对 应项目. 使用手持编程器Ⅱ设置时 起始符: 0: 无STX 1: 有STX 结束符: 00: CR 01: CR+LF 10: 无 11: ETX 停止位: 0: 1bits 1: 2bits 奇偶校验: 00: 无 01: 奇 11: 偶 数据长: 0: 7bits 1: 8bits H3COM口通信格式设置 设置项目/默认设置值 - 起始符: 无STX - 结束符: CR - 停止位: 1位 - 奇偶校验: 奇校验 - 数据长: 8位 413 使用编程工具软件时, 在菜单中设置对 应项目. 使用手持编程器Ⅱ设置时 K0: COM口不使用 K1: 计算机链接模式 (链接C-NET等) K2: 通用通信模式(串行通信) K0COM口通信方式设置412 描述默认值名称地址项目 4-11 (参阅注释) 0~6361内部继电器保持型区域起始编号 设置 7 保持/ 非保 持 0~16601652数据寄存器保持型区域起始编号 设置 8 保持/非保持非保持步进梯形图保持型区设置14 固定 FPWIN GR: 允许/禁止 是 FPWIN GR: 禁止 允许或禁止多重输出20错误 动作 停止 / 继续操作停止设置当发生运算错误时的操作26 禁止: 当发生电池错误时, 不发出自诊断 错误, ERROR的LED指示不亮 允许: 当发生电池错误时, 发出自诊断 错误, 并且ERROR的LED指示变亮 禁止电池错误报警 (设置发生电池错误时的操作) 4 10~81900ms6500.0ms设置多帧通信时的等待时间31时间 设置 0: 通常扫描 1~160ms: 按指定的时间间隔进行扫描 0.0ms设置扫描时间常数34 0~144140计数器/定时器保持型区域起始 编号设置 6 0~144100计数器起始编号5 描述默认值名称地址项目 4.1.3 系统寄存器列表(用于FP-e) 注释 在没有使用日历时钟的机型时,请使用左侧的默认值.如果改变这些设置,则不能 确定保持型操作. 这些设置对带日历时钟的机型有效. 4-12 ·输入X4不作为高速计数器 ·增计数输入(X4) ·增计数输入(X4),复位输入(X5) ·减计数输入(X4) ·减计数输入(X4),复位输入(X5) ·输入X3不作为高速计数器 ·2相输入(X3,X4) ·2相输入(X3,X4), 复位输入(X5) ·增计数输入(X3) ·增计数输入(X3),复位输入(X5) ·减计数输入(X3) ·减计数输入(X3),复位输入(X5) ·增/减计数输入(X3,X4) ·增/减计数输入(X3,X4), 复位输入(X5) ·增/减计数控制输入(X3,X4) ·增/减计数控制输入(X3,X4), 复位输入(X5) ·输入X1不作为高速计数器 ·增计数输入(X1) ·增计数输入(X1),复位输入(X2) ·减计数输入(X1) ·减计数输入(X1),复位输入(X2) ·输入X0不作为高速计数器 ·2相输入(X0,X1) ·2相输入(X0,X1), 复位输入(X2) ·增计数输入(X0) ·增计数输入(X0),复位输入(X2) ·减计数输入(X0) ·减计数输入(X0),复位输入(X2) ·增/减计数输入(X0,X1) ·增/减计数输入(X0,X1), 复位输入(X2) ·增/减计数控制输入(X0,X1) ·增/减计数控制输入(X0,X1), 复位输入(X2) CH2CH2: 输入X3不 作为高速 计数器 高速计数器动作模式设置 (X3~X5) 401 高速 计数器 CH3CH3: 输入X4不 作为高速 计数器 CH1CH1: 输入X1不 作为高速 计数器 CH0CH0: 输入X0不 作为高速 计数器 高速计数器动作模式设置 (X0~X2) 400 描述默认值名称地址项目 4-13 中断 输入 将输入触点指定为脉冲捕捉输入 指定中断输入的有效触发边沿 (设置时: ON→OFF有效) 未设置中断输入设置403 将输入触点指定为脉冲捕捉输入 未设置脉冲捕捉输入设置402 描述默认值名称地址项目 注释 • 如果动作模式设置为2相计数,则在系统寄存器400的第2部分中CH1和系统 寄存器401的第2部分中CH3的增/减计数、增/减计数控制的设置无效. • 如果复位设置重叠,则系统寄存器400中的CH1的设置优先,系统寄存器401 中的CH3的设置优先. • 只能在系统寄存器402和403中设置脉冲捕捉和中断输入 • 如果系统寄存器400至403同时对输入继电器进行了设置,则按以下优先顺序 处理: 1.[高速计数器] 2.[脉冲捕捉] 3.[中断输入] 因此,即使在中断之后,计数器仍保持计数 4-14 1~991站号设置410编程 口设 置 温度 输入 调制解调器连接: 可用/不可用不可用通信格式设置411 数据长度: 7位/8位 当与调制解调器连接时,应根据数据 长度使用以下格式: 数据长度8位: 无奇偶校验, 停止位1位 数据长度7位: 奇校验, 停止位1位 数据长度: 8位 9600 bps 19200 bps 9600bps通信速度(波特率)设置414 计算机链接 通用串行通信 计算机链接通信模式设置412COM 口设 置 输入不同的项目设置. 数据长度: 7位/8位 奇偶校验: 无/奇校验/偶校验 停止位: 1位/2位 数据长: 8位 奇偶校验: 奇校验 停止位: 1位 通信格式设置413 300 bps 600 bps 1200 bps 2400 bps 4800 bps 9600 bps 19200 bps 9600bps通信速度(波特率)设置414 0~991站号设置415 可用/不可用不可用选择调制解调器连接416 0~16590使用通用串行通信模式时的接收 缓冲区起始地址 417 0~16601660使用通用串行通信模式时的接收 缓冲区起始容量 418 0~50 当默认设置”0”时,平均处理次数为20次. 0温度输入平均处理次数 (适用机型: 带温度输入型) 409 描述默认值名称地址项目 4-15 禁止: 当发生电池错误时, 不发出 自诊断 错误, ERROR的LED 指示不亮 允许: 当发生电池错误时, 发出自 诊断 错误, 并且ERROR的 LED指示变亮 禁止电池错误报警 (设置发生电池错误时的操作) 4 10~81900ms6500.0ms设置多帧通信时的等待时间31时间 设置 0: 通常扫描 1~350ms: 按指定的时间间隔进行扫 描 0.0ms设置扫描时间常数34 0~64字0用于PC-link的链接继电器范围40PC- link 设置 0~128字0用于PC-link的链接数据寄存器范围41 0~630链接继电器传输的起始编号42 0~64字0链接继电器传输区大小43 0~1270链接数据寄存器传输的起始编号44 0~127字0链接数据寄存器传输区大小45 停止 / 继续操作停止设置当发生运算错误时的操作26 错误 动作 停止 / 继续操作停止设置当发生I/O校验错误时的操作23 -这些设置只在安装 使用后备电池选件 的情况下有效 -在未使用后备电池 选件的情况下,请勿 修改这些设置,否则 不能确保保持型和 非保持型功能 0~9890内部继电器保持型区域起始编号设 置 7 保持/ 非保 持 0~-3276532710数据寄存器保持型区域起始编号设 置 8 保持/非保持非保持步进梯形图程序保持/非保持设置14 0~6464PC-link继电器保持型区域起始 编号设置 10保持/ 非保 持2 0~128128PC-link数据寄存器保持型区域 起始编号设置 12 固定 FPWIN GR: 允许/禁止 是 FPWIN GR: 禁止 允许或禁止多重输出20 1~1616MEWNET-W0 PC-link的 大站号47 0~10241008计数器/定时器保持型区域起始编号 设置 6 0~10241008计数器起始编号5 描述默认值名称地址项目 4.1.4 系统寄存器列表(用于FPΣ) 4-16 ·输入X4不作为高速计数器 ·增计数输入(X4) ·增计数输入(X4),复位输入(X5) ·减计数输入(X4) ·减计数输入(X4),复位输入(X5) ·输入X3不作为高速计数器 ·2相输入(X3,X4) ·2相输入(X3,X4), 复位输入(X5) ·增计数输入(X3) ·增计数输入(X3),复位输入(X5) ·减计数输入(X3) ·减计数输入(X3),复位输入(X5) ·增/减计数输入(X3,X4) ·增/减计数输入(X3,X4), 复位输入(X5) ·增/减计数控制输入(X3,X4) ·增/减计数控制输入(X3,X4), 复位输入(X5) ·输入X1不作为高速计数器 ·增计数输入(X1) ·增计数输入(X1),复位输入(X2) ·减计数输入(X1) ·减计数输入(X1),复位输入(X2) ·输入X0不作为高速计数器 ·2相输入(X0,X1) ·2相输入(X0,X1), 复位输入(X2) ·增计数输入(X0) ·增计数输入(X0),复位输入(X2) ·减计数输入(X0) ·减计数输入(X0),复位输入(X2) ·增/减计数输入(X0,X1) ·增/减计数输入(X0,X1), 复位输入(X2) ·增/减计数控制输入(X0,X1) ·增/减计数控制输入(X0,X1), 复位输入(X2) CH2CH2: 输入X3不 作为高速 计数器 高速计数器动作模式设置 (X3~X5) 401 高速 计数器 CH3CH3: 输入X4不 作为高速 计数器 CH1CH1: 输入X1不 作为高速 计数器 CH0CH0: 输入X0不 作为高速 计数器 高速计数器动作模式设置 (X0~X2) 400 描述默认值名称地址项目 4-17 中断 输入 将输入触点指定为脉冲捕捉输入 指定中断输入的有效触发边沿 (设置时: ON→OFF有效) 未设置中断输入设置403 将输入触点指定为脉冲捕捉输入 未设置脉冲捕捉输入设置402 描述默认值名称地址项目 注释 • 如果动作模式设置为2相计数,则在系统寄存器400的第2部分中CH1和系统 寄存器401的第2部分中CH3的增/减计数、增/减计数控制的设置无效. • 如果复位设置重叠,则系统寄存器400中的CH1的设置优先,系统寄存器401 中的CH3的设置优先. • 只能在系统寄存器402和403中设置脉冲捕捉和中断输入 • 如果系统寄存器400至403同时对输入继电器进行了设置,则按以下优先顺序 处理: 1.[高速计数器] 2.[脉冲捕捉] 3.[中断输入] 因此,即使在中断之后,计数器仍保持计数.但是,高速计数器的响应速度约 为100微秒,而脉冲捕捉的约为200微秒.所以,认为中断速度足够快. X0 X1 X2 X3 X4 X5 X6 X7 X0 X1 X2 X3 X4 X5 X6 X7 X0 X1 X2 X3 X4 X5 X6 X7 4-18 1~991站号设置410 通信格式设置413 1~991站号设置410编程 口设 置 调制解调器连接: 可用/不可用不可用选择调制解调器连接411 输入不同的项目设置. 数据长度: 7位/8位 奇偶校验: 无/奇校验/偶校验 停止位: 1位/2位 数据长: 8位 奇偶校验: 奇校验 停止位: 1位 2400 bps 4800 bps 9600 bps 19200 bps 38400bps 57600 bps 115200bps 9600bps通信速度(波特率)设置415 计算机链接 通用串行通信 PC-link 计算机链接通信模式设置412 COM. 1口设 置 输入不同的项目设置. 数据长度: 7位/8位 奇偶校验: 无/奇校验/偶校验 停止位: 1位/2位 数据长: 8位 奇偶校验: 奇校验 停止位: 1位 通信格式设置413 2400 bps 4800 bps 9600 bps 19200 bps 38400bps 57600 bps 115200bps 9600bps通信速度(波特率)设置415 0~327640使用通用串行通信模式时的接收 缓冲区起始地址 416 0~20482048使用通用串行通信模式时的接收 缓冲区容量 417 描述默认值名称地址项目 注释 在PC-link模式下, 通信格式固定为以下设置: 数据长度8位, 奇校验, 停止位1位. 通信速率(波特率)固定为115200bps. 4-19 允许/不允许不允许调制解调器连接设置 1~991站号设置411 计算机链接 通用串行通信 计算机链接通信模式设置412 COM. 2口设 置 输入不同的项目设置. 数据长度: 7位/8位 奇偶校验: 无/奇校验/偶校验 停止位: 1位/2位 仅在系统寄存器412中将通信模式设置 为”通用通信”时,以下设置内容有效: 结束符: CR/CR+LF/无 起始符: 无STX/有STX 数据长: 8位 奇偶校验: 奇校验 停止位: 1位 通信格式设置414 2400 bps 4800 bps 9600 bps 19200 bps 38400bps 57600 bps 115200bps 9600bps通信速度(波特率)设置415 0~327642048使用通用串行通信模式时的接收 缓冲区起始地址 418 0~20482048使用通用串行通信模式时的接收 缓冲区容量 419 描述默认值名称地址项目 注释 在PC-link模式下, 通信格式固定为以下设置: 数据长度8位, 奇校验, 停止位1位. 通信速率(波特率)固定为115200bps. 4-20 系统寄存器5和6 设置为相同的数 值. ————未使用20~25 K0: 停止 K1: 继续 K1设置当发生运算错误时的操作26 K0~K256(FP1 C14/C16, FP-M C16T) K0~K1660(FP1 C24/C40, FP-M 2.7K) K0~K6114(FP1 C56/C72, FP-M 5K) K0数据寄存器保持型区域起始编号 设置 8 ————未使用9-13 K0: 保持 K1: 非保持 K1步进梯形图保持/非保持14 ————未使用15~19 K0: 禁止(会出现语法错误) K1: 允许(不出现语法错误) K0设置禁止或允许多重输出20错误 动作 ————未使用27~29 (FP1 C14/C16, FP-M C16T: K0~K16)K10内部继电器保持型区域起始编号 设置(以字为单位) 7 保持/ 非保 持 K0~K144 (FP1 C14/C16, FP-M C16T: K0~K128) K100计数器/定时器保持型区域起始 编号设置 6 用户 存储 分配 K0: 允许(R9000, R9005和R9006变为 ON, ERROR LED亮) K1: 禁止 K0电池错误报警4错误 动作 K0~K144 (FP1 C14/C16, FP-M C16T: K0~K128) K100计数器/定时器分配 (计数器起始编号设置) 5 ————未使用1~3 设定值是固定的,无法改变 存储值的更化取决于不同型号 K1: FP1 C14/C16, FP-M C16T K3: FP1 C24/C40, FP-M 2.7K K5: FP1 C56/C72, FP-M 5K ——0 描述默认值名称地址项目 4.1.5 系统寄存器列表(用于FP-M/FP1) 4-21 K4~K32760: 10ms~81900ms 建议使用默认设置值(K2600/6500ms) 设置值×2.5ms=多帧通信等待时间(ms) K2600 (6500ms) 设置多帧通信时的等待时间31 ————未使用32,33 时间 设置 K1~K64(2.5ms~160ms): 按指定的时 间间隔进行扫描. K0: 通常扫描 设置值×2.5ms=固定扫描周期时间(ms) K0设置固定扫描时间34 ————未使用30 描述默认值名称地址项目 ↑ 在编程工具 软件中,直接 输入时间值 (2.5的倍数) ↑ 在手持编程器Ⅱ 中, 输入设置值. (时间值除以2.5) ↑ 在编程工具 软件中,直接 输入时间值 (2.5的倍数) ↑ 在手持编程器Ⅱ 中, 输入设置值. (时间值除以2.5) 4-22 脉冲输出内部连接设置 (只对FP1 C56/C72,FP-M) 输入 设置 H 0 . 高速计数器模式 脉冲输出内部连接 H0: 不内部连接 H1: 内部连接 H0高速计数器模式设置400 描述默认值名称地址项目 注释 如果系统寄存器400至404同时对输入继电器进行了设置,则按以下优先 顺序处理: 1.400 (高速计数器模式设置) 2.402 (脉冲捕捉输入功能设置) 3.403 (中断触发设置) 4.404 (输入时间滤波设置) 复位输入 增/减输入 (X0:增输入 X1:减输入) H8 —— 增/减输入 (X0:增输入 X1:减输入) H7 复位输入减输入——H6 ——减输入——H5 复位输入——增输入H4 ——增输入H3 复位输入2相输入H2 ——2相输入H1 不使用高速计数器功能H0 X2X1X0 FP-M和FP1的输入触点设 置 值 4-23 FP1 C14/C16 和FP-M C16T: X0~X3 0: 通常输入 1: 脉冲捕捉输入 使用FP手持编程器Ⅱ时, 按上述设置输入16进制 数值. 例: 当X3作为脉冲捕捉功能使用时,输入H8. 系统寄存器402 ————未使用401输入 设置 FP1 C14/C16: X0~X3 FP1 C24/C40/C56/C72: X0~X7 FP-M C20/C32T: X0~X7 系统寄存器402 位编号 对应输入 0: 通常输入 1: 脉冲捕捉输入 使用FP手持编程器Ⅱ时, 按上述设置输入16进制 数值. 例: 当X3和X4作为脉冲捕捉功能使用时,输入H18. 系统寄存器402 位编号 对应输入 输入数据 H0脉冲捕捉输入功能设置402 描述默认值名称地址项目 4-24 FP-M C16T: 2点输入X4和X5 通过设置中断输入, 使在RUN期间发生中断输入时执 行中断程序(不使用ICTL指令). 0: 通常输入 1: 中断输入 使用FP手持编程器Ⅱ时, 按上述设置输入16进制数值. 例: 当X7作为中断输入使用时, 输入H20 系统寄存器403: 输入 设置 位编号 对应输入 0: 通常输入 1: 中断输入 使用FP手持编程器Ⅱ时, 按上述设置输入16进制数值. 例: 当X5到X7作为中断输入使用时,输入HE0 系统寄存器403 位编号 对应输入 输入数据 FP1 C14/C16系列: 不可使用 H0中断输入设置403 描述默认值名称地址项目 4-25 输入 设置 FP-M C16T: 输入修改时间常数的数值. 输入时间常数设置与X0~X3相关. - 输入时间常数的设定值 - 数字与输入(4点)关系 404 = H 0 0 0 . ↑ X0~X3 H0001输入时间常数设置(X0~X3)404 描述默认值名称地址项目 H7128ms H664ms H532ms H416ms H38ms H24ms H12ms H01ms 设定值数字输入时间常数 4-26 设置8-输入单元的输入常数时间. - 输入时间常数的设定值 - 根据以下内容设置系统寄存器404, 405, 406 和407: 404 = H □□□□ X0~X7 X8~XF X10~X17 X18~X1F 405 = H □□ 1 □ X20~X27 固定 X30~X37 X38~X3F 406 = H □□ 1 □ X40~X47 固定 X50~X57 X58~X5F 407 = H 0 0 1 □ X60~X67 固定 例) 如果X0~X7的输入时间常数指定为4ms, 则系统寄存器404中应输入H1112. 系统寄存器404 位编号 输入数据 X18~X1F X10~X17 X8~XF X0~X7 H1111输入时间常数设置 (X0 ~X1F) 404输入 常数 H1111输入时间常数设置 (X20~X3F) 405 H1111输入时间常数设置 (X40~X5F) 406 H0011输入时间常数设置 (X60~X6F) 407 ————未使用408,409 描述默认值名称地址项目 H7128ms H664ms H532ms H416ms H38ms H24ms H12ms H01ms 设定值数字输入时间常数 控制单元 控制板 FP1 第一级 扩展 FP1 第二级 扩展 4-27 COM. 口设 置 K1~K32(1号~32号站)K1编程口站号设置410编程 口设 置 调制解调器通信 0: 不使用 1: 使用 数据长度 0: 8bits 1: 7bits 当连接调制解调器时, 在系统寄存器410中将站 号设置为1. H0编程口通信格式设置 默认设置 项目 - 数据长: 8位 - 调制解调器: 不使用 调制解调器通信对于FP-M C16和FP1 C14/C16不可用 411 K0: COM.口不使用 K1: 计算机链接 K2: 通用串行通信 K0COM.口通信方式设置412 描述默认值名称地址项目 4-28 COM. 口设 置 起始符: 0: 无STX 1: 有STX 结束符: 00: CR 01: CR+LF 10: 无 11: ETX 停止位: 0: 1bits 1: 2bits 奇偶校验: 00: 无 01: 奇 11: 偶 数据长: 0: 7bits 1: 8bits 例) 当COM.口设置如下时, 系统寄存器中输入 H13. - 起始符: 无STX - 结束符: CR+LF - 停止位: 1bit - 校验: 奇校验 - 数据长度: 8bit 系统寄存器413 位编号 输入数据 H3COM.口通信格式设置 默认设置 项目 - 数据长: 8位 - 奇偶校验: 奇校验 - 停止位: 1位 - 结束符: CR - 开始符: 无STX (当系统寄存器412设为 K2(通用通信)时,系统寄存 器413中的开始符和结束 符才有效; 在设成K0(不使 用)或者K1(计算机链接)时 无效) 413 描述默认值名称地址项目 4-29 K1波特率设置 (用于计算机链接和通用串 行通信) 414COM. 口设置 K1~K32(1站~32站)K1COM.口站号设置415 设置: H0: 不连接调制解调器 H8000: 允许连接调制解调器 当允许连接调制解调器时, 设置系统寄存器 412,413,415: 412: K1 计算机链接通信 413: 设置通信格式, 使数据合计为10位. (例) 数据长度:8位, 奇偶校验:无, 停止位:1位 415: K1, 站号1 H0COM.口调制解调器兼容性 设置 416 设置范围: C版本的FP-M 2.7k型和FP1 C24C/C40C型: K0~K1660 C版本的FP-M 5k型和FP1 C56C/C72C型: K0~K6144 有关详细内容,请参阅F144(TRNS)指令. K0通用通信接收缓冲区起始 地址设置(数据寄存器编号) 417通用通 信口设 置 设置范围: C版本的FP-M 2.7k型和FP1 C24C/C40C型: K0~K1660字 C版本的FP-M 5k型和FP1 C56C/C72C型: K0~K6144字 有关详细内容,请参阅F144(TRNS)指令. K1660通用通信接收缓冲区容量 设置(字数) 418 描述默认值名称地址项目 300bpsK6 600bpsK5 1200bpsK4 2400bpsK3 4800bpsK2 9600bpsK1 19200bpsK0 波特率设定值 4-30 错误报警继电器 (E) 索引寄存器(I) 文件寄存器(FL) 链接数据寄存器 (LD) 数据寄存器(DT) 定时器/计数器 (T,C,SV,EV) 链接继电器(L) 内部继电器(R) 允许: 发生电池错误时, 产生一个自诊断 错误, 同时ERROR LED变亮. (BATT. LED变亮) 禁止: 发生电池错误时, 不产生自诊断 错误, ERROR LED不变亮. (BATT. LED不亮) 允许电池错误报警4操作 错误 清除: 当INITIALIZE(初始化)/TEST (测试)开关在PROG.(编程)模式 下处于INITIALIZE位置时, 可以 指定被清除的内存类型. 不清除: 当INITIALIZE(初始化)/TEST (测试)开关在PROG.(编程)模式 下处于INITIALIZE位置时, 可以 指定不被清除的内存类型. 清除开关在初始 化 (INITIALIZE) 位置时内存 区内容设置. 适用机型: FP2SH FP10SH 清除 清除 清除 清除 清除 清除 清除 常规: 保持MC和MCE指令设置的之前 的结果 更新: 忽略MC和MCE指令设置的之前 的结果 常规MC与MCE指令之间的微分型高级 指令 适用机型: FP2SH, FP10SH 常规: 与扫描周期同步 更新: 与扫描周期异步 常规TM指令动作设置 适用机型: FP2SH, FP10SH FP2(16K): 0~14K字 FP2(32K): 0~30K字 0K字配置区容量设置 适用机型: FP2 2 用户 存储 区分 配 FP2(16K): 0~14K字 FP2(32K): 0~30K字 0K字机器语言程序区容量设置 适用机型: FP2 1 允许: 检查索引变址是否溢出, 并且 执行常规处理 禁止: 执行处理时不进行索引变址溢出 检查 允许索引变址检查设置 FP2(16K): 2~16K字 FP2(32K): 2~32K字 12K字程序区容量设置 适用机型: FP2 0 描述默认值名称地址项目 4.1.6 系统寄存器列表(用于FP2/FP2SH/FP10SH) 4-31 数据寄存器保持型区域起始编号 设置 将系统寄存器5和6设置 为相同的数值 FP2SH/ FP10SH: 0~3072 FP2SH/ FP10SH: 3000 计数器起始编号 (设置定时器与计数器的编号) 5保持/ 非保 持 FP2: 0~1024 FP2: 1000 FP2SH/ FP10SH: 0~3072 FP2SH/ FP10SH: 3000 计数器/定时器保持型区域起始 编号设置 6 FP2: 0~1024 FP2: 1000 FP2SH/FP10SH: 0~887FP2SH/ FP10SH: 500 内部继电器保持型区域起始编号 设置(以字单位) 7 FP2: 0~253FP2: 200 FP2SH/FP10SH: 0~1024008 FP2: 0~6000 FP2SH/FP10SH: 0~327650文件寄存器保持型区域起始编号 设置(用于FP2SH, bank0) 9 FP2(16K): 0~14333 FP2(32K): 0~30717 0~640MEWNET-W/-P链接继电器保持 型区域起始编号设置 (用于PC-link0) (对于FP2SH, MEWNET-P链接 继电器不可使用) 10 64~12864MEWNET-W/-P链接继电器保持 型区域起始编号设置 (用于PC-link1) (对于FP2SH, MEWNET-P链接 继电器不可使用) 11 0~1280MEWNET-W/-P链接数据寄存器 保持型区域起始编号设置 (用于PC-link0) (对于FP2SH, MEWNET-P链接 数据寄存器不可使用) 12 128~256128MEWNET-W/-P链接数据寄存器 保持型区域起始编号设置 (用于PC-link1) (对于FP2SH, MEWNET-P链接 数据寄存器不可使用) 13 保持/非保持非保持步进梯形图保持/非保持型设置14 0~327650文件寄存器保持型区域起始编号 设置(用于bank1) 15 描述默认值名称地址项目 4-32 128~640128MEWNET-H链接继电器保持型 区域起始编号设置 适用机型: FP10SH 16保持/ 非保 持 256~8448256MEWNET-H链接数据寄存器保 持型区域起始编号设置 适用机型: FP10SH 17 0~2240索引寄存器保持型区域起始编号 设置 适用机型: FP2SH/FP10SH 18 0~327650文件寄存器保持型区域起始编号 设置(用于bank2) 19 禁止/允许禁止允许或禁止多重输出20错误 时的 操作 停止 / 继续停止设置当发生MEWNET-TR通信错 误时的操作 (使用机型: FP10SH) 21 停止 / 继续停止设置当发生I/O错误时的操作 (使用机型: FP2SH/FP2) 停止 / 继续停止设置当智能单元发生错误时的操 作 22 停止 / 继续停止设置当发生I/O校验错误时的操 作 23 停止 / 继续 通过设置系统寄存器30设置看门狗超时 时间 停止设置当发生看门狗错误时的操作 适用机型: FP2SH/FP10SH 24 停止 / 继续停止设置当远程从站发生连接超时错 误时的操作 适用机型: FP2SH 25 停止 / 继续停止设置当发生运算错误时的操作26 停止 / 继续停止设置当MEWNET-F系统中发生 通信错误时的操作 27 停止 / 继续停止设置当MEWNET-F系统从站中 发生错误时的操作 28 描述默认值名称地址项目 4-33 0~52428μs 设置只在RUN模式下有效 在PROG.模式和设置为”0”时, 允许通信 处理的持续时间被设置为52428μs 设置时间按以下公式计算: 设置时间 =设定值×0.8(μs) 240μs通信处理操作时间设置29FP2SH/ FP10SH 时间设置 0.4~640ms 设置时间按以下公式计算: 设置时间 =设定值×0.1(ms) 100ms系统看门狗定时器超时时间设 置 30 10~81917.5ms 建议使用默认设置值(6500ms). 设置时间按以下公式计算: 设置时间 =设定值×2.5(ms) 6500ms计算机链接时多帧通信时间设 置和数据发送缓冲区的通信时 间设置 31 10~81917.5ms 建议使用默认设置值(10000ms). 设置时间按以下公式计算: 设置时间 =设定值×2.5(ms) 10000ms设置使用 F145(SEND)/P145(PSEND), F146(RECV)/P146(PRECV), F152(RMRD)/P152(PRMRD), F153(RMWT)/P153(PRMWT) 指令时的超时时间 32 2500~163837.5ms 建议使用默认设置值(163837.5ms). 设置时间按以下公式计算: 设置时间 =设定值×2.5(ms) 163837.5 ms 监控的有效时间33 0~640ms 按指定的时间间隔进行扫描 设置”0”: 通常扫描 设置时间按以下公式计算: 设置时间 =设定值×0.1(ms) 0ms: 普通扫描 固定扫描时间设置34 10.0~8190.0ms 建议使用默认设置值(6500ms). 6500ms计算机链接时多帧通信时间设 置 31FP2时间 设置 10.0~8190.0ms 建议使用默认设置值(2000ms). 2000ms设置使用 F145(SEND)/P145(PSEND), F146(RECV)/P146(PRECV), F152(RMRD)/P152(PRMRD), F153(RMWT)/P153(PRMWT) 指令时的超时时间 32 800.0~52428.0ms 建议使用默认设置值(10000ms). 10000μsRUN模式下程序块编辑时间33 0.1~640ms(1~6400) 按指定的时间间隔进行扫描 设置”0”: 通常扫描 0: 普通扫描 固定扫描时间设置34 描述默认值名称地址项目 4-34 用于发送的 链接数据寄 存器区的大 小 用于发送的 链接数据寄 存器区的起 始地址 用于发送的 链接继电器 区的大小 用于发送的 链接继电器 的起始地址 用于通信的 链接数据寄 存器区大小 用于通信的 链接继电器 区大小 停止 / 继续停止设置当远程从站发生连接时间 错误时的操作 适用机型: FP2SH 25远程I/O 控制 允许: 在所有从站登录后CPU开始操作. 禁止: CPU开始操作不等待从站的连接 只在登录远程I/O分配时有效. 允许 (等待连接) 使用MEWNET-F系统时的动作 模式设置 35 扫描同步模式/扫描异步模式扫描同步MEWNET-F系统的I/O数据更 新模式设置 36 0~64字0MEWNET- W/-P链接系 统的PC-link0 设置 (用于FP2/ FP10SH: MEWNET-W / -P) (用于FP2SH: MEWNET-W) 40PC-link 0 设置 0~128字041 0~63042 0~64字043 0~127044 0~127字045 通常分配: 插槽编号较小的链接单元作为PC-link0, 较大编号的链接单元作为PC-link1 反转分配: 插槽编号较小的链接单元作为PC-link1, 较大编号的链接单元作为PC-link0 通常分配MEWNET-W/-P链接系统的 PC-link0和1的分配设置 (用于FP2/FP10SH: MEWNET-W / -P) (用于FP2SH: MEWNET-W) 46 描述默认值名称地址项目 4-35 PC link 1 设置 1~32(1号~32号站)1编程口站号设置 适用机型: FP2/FP2SH 410 用于发送的链接 数据寄存器区的 大小 用于发送的链接 数据寄存器区的 起始地址 用于发送的链接 继电器区的大小 用于发送的链接 继电器的起始地 址 用于通信的链接 数据寄存器区大 小 用于通信的链接 继电器区大小 0: 一个扫描周期内处理所有数据 1~65535: 处理容量设置 容量 =设定值×256字节 4(每个扫 描周期 1024字节) MEWNET-H系统的处理容量设 置 适用机型: FP10SH 49MEWNET -H设置 0~64字0MEWNET- W/-P链接系 统的PC- link1设置 (用于FP2/ FP10SH: MEWNET- W / -P) (用于 FP2SH: MEWNET- W) 50 编程口 设置 0~128字051 64~1276452 0~64字053 128~25512854 0~127字055 数据长度: 7位/8位 调制解调器通信: 使用/不使用 当与调制解调器连接时, 应在系统寄 存器410中将站号设置为1. 通信格式 (数据长度): 8位 调制解调 器通信: 不使用 编程口通信格式设置 适用机型: FP2/FP2SH 411 描述默认值名称地址项目 4-36 详细使用说明请 参阅F144(TRNS) / P144(PTRNS) 指令的说明 在FP10SH中,当CPU中的DIP开关SW1 处于OFF位置时,波特率的设置有效. 在FP2/FP2SH中,当CPU背面的DIP开 关SW1处于OFF位置时,波特率的设置 有效. 19200bps 19200bps 1200bps 38400bps 2400bps 57600bps 4800bps 115200bps 9600bps 19200bps编程口波特率设置414编程 口设 置 不使用: COM.端口不被使用 计算机链接: 用于计算机链接模式(与C- NET连接等) 通用通信: 通用串行通信模式 FP2: 不使用 COM.口通信方式设置412COM. 口设 置 FP2SH/ FP10SH: 计算机链 接 数据长: 8位/7位 奇偶校验: 无校验/奇校验/偶校验 停止位: 1位/2位 结束符: CR/CR+LF/无/ETX 起始符: 无STX/有STX - 数据长: 8位 - 奇偶校验: 奇校验 - 停止位: 1位 - 结束符: CR - 起始符: 无STX 通信格式设置(同时用于计算机链 接和通用串行数据通信) 当用于计算机链接时, 对于 MEWTOCOL-COM的起始符和结 束符无效 适用机型: FP2/FP2SH 413 19200bps 19200bps 1200bps 38400bps 2400bps 57600bps 4800bps 115200bps 9600bps 19200bitCOM.口波特率设置 适用机型: FP2/FP2SH 414 1~32(站号1~32)1COM.口站号设置 适用机型: FP2/FP2SH 415 使用/不使用调制解调器 当与调制解调器连接时, 应在系统寄存 器415中将站号设置为1. 不使用调 制解调器 COM.口调制解调器兼容性设置 适用机型: FP2/FP2SH 416 FP2SH/FP10SH: 0~10240 FP2: 0~5999 0通用通信接收缓冲区起始地址设 置(数据寄存器编号) 417通用 通信 设置 FP2SH/FP10SH: 0~1024 FP2SH/ FP10SH: 1024 通用通信接收缓冲区容量设置 (字数) 418 FP2: 0~2048FP2: 2048 描述默认值名称地址项目 4-37 位于MC与MCE指令之间的DF指令的操作 在使用MC和MCE指令的情况下, 当使用上升沿检测指令(DF指令)时, 产生的输出结果会根据MC 指令的触发器和DF指令的输入时机而变化. 在使用时请注意 示例1: 当系统寄存器4设置为0时(常规处理) 时序图1 DF指令的 前次执行 DF指令的触发器X1在前次执行后 没有发生变化, 因此不产生输出 时序图2 DF指令的 前次执行 DF指令的触发器X1在前次执行后 从OFF变为ON, 因此产生输出 4-38 示例2: 当系统寄存器4设置为1时(更新处理) 时序图1 DF指令的 前次执行 产生相关的输出 不考虑触发器X1与前次执行时的关系. 时序图2 DF指令的 前次执行 产生相关的输出 不考虑触发器X1与前次执行时的关系. 4-39 允许: 发生电池错误时, 产生一个自诊断 (K0) 错误, 同时ERROR LED变亮. (BATT. LED变亮) 禁止: 发生电池错误时, 不产生自诊断 (K1) 错误, ERROR LED不变亮. (BATT. LED不亮) 将系统寄存器5和6设置 为相同的数值 FP3: 0~256 (K0~K256) FP3: 200 (K200) 计数器起始编号 (设置定时器与计数器的编号) 5 FP3: 0~256 (K0~K256) FP3: 200 (K200) 计数器/定时器保持型区域起始 编号设置 6 FP3: 0-98(K0~K98)FP3: 60 (K60) 内部继电器保持型区域起始编号 设置(以字单位) 7 允许 (K0) 电池错误报警 (*注) 4错误 时的 操作 使用默认值3(K3)3(K3)注释容量设置2 用户 存储 区分 配 FP3: 0-2048(K0~K2048)0(K0)数据寄存器保持型区域起始编号 设置 8 保持/ 非保 持 FP3(10K): 0~8K字(K0~K8) FP3(16K): 0~14K字(K0~K14) 0字(K0)机器语言程序区容量设置1 FP3(10K): 2~10K字(K2~K10) FP3(16K): 1~16K字(K2~K16) 8K字(K8)程序区容量设置0 描述默认值名称地址项目 注释 括号内的默认值及其说明表示使用FP手持编程器Ⅱ时的设置值. 4.1.7 系统寄存器列表(用于FP3) 4-40 FP3(10K): 0~8189(K0~K8189) FP3(16K): 0~22525(K0~K22525) 0(K0)文件寄存器保持型区域起始编号 设置 9保持/ 非保 持 0~64(K0~K64)0(K0)MEWNET-W/-P链接继电器保持 型区域起始编号设置 (用于PC-link0) 10 64~128(K64~K128)64(K64)MEWNET-W/-P链接继电器保持 型区域起始编号设置 (用于PC-link1) 11 0~128(K0~K128)0(K0)MEWNET-W/-P链接数据寄存器 保持型区域起始编号设置 (用于PC-link0) 12 128~256(K128~K256)128(K128)MEWNET-W/-P链接数据寄存器 保持型区域起始编号设置 (用于PC-link1) 13 保持(K0)/非保持(K1)非保持(K1)步进梯形图保持/非保持型设置14 ————未使用16,17 禁止(K0) / 允许(K1)禁止(K0)允许或禁止多重输出20错误 时的 操作 停止(K0) / 继续(K1)停止(K0)设置当发生MEWNET-TR通信错 误时的FP3操作 21 停止(K0) / 继续(K1)停止(K0)设置当智能单元发生错误时的操 作 22 停止(K0) / 继续(K1)停止(K0)设置当发生I/O校验错误时的操 作 23 ————未使用24 停止(K0) / 继续(K1)停止(K0)设置当发生运算错误时的操作26 停止(K0) / 继续(K1)停止(K0)设置当MEWNET-F系统中发生 通信错误时的操作 27 停止(K0) / 继续(K1)停止(K0)设置当MEWNET-F系统中从站 发生错误时的操作 28 描述默认值名称地址项目 注释 括号内的默认值及其说明表示使用FP手持编程器Ⅱ时的设置值. 4-41 ————未使用29时间 设置 ————未使用30 10.0ms~81900.0ms (K4~K32760) 建议使用默认值(6500ms). 使用FP手持编程器Ⅱ时,按以下公式计算设定 值: 设定时间 = 设定值(K4~K32760)×2.5(ms) 6500ms (K2600) 在计算机链接时多帧通信时间 设置 31 10.0ms~81900.0ms (K4~K32760) 建议使用默认值(2000ms). 使用FP手持编程器Ⅱ时,按以下公式计算设定 值: 设定时间 = 设定值(K4~K32760)×2.5(ms) 2000ms (K800) 设置使用 F145(SEND)/P145(PSEND), F146(RECV)/P146(PRECV), F152(RMRD)/P152(PRMRD), F153(RMWT)/P153(PRMWT) 指令时的超时时间 32 使用编程工具软件时,设置范围: 2000~130107μs 使用FP手持编程器Ⅱ时, - 设置范围: 2000~65534μs (K1000~K32767) - 设置范围: 65536~131070μs (H8000~HFFFF) 建议使用默认值(10000μs). 使用偶数设置本寄存器. 使用FP手持编程器Ⅱ时, 设置被2乘除的数值. 10000μs (K5000) 在RUN模式下,程序块编辑时间33 2.5~637.4ms(K1~K255) 按指定的时间间隔进行扫描 设置”0”: 通常扫描 使用FP手持编程器Ⅱ时设置时间按以下公式 计算: 设置时间 =设定值(K1~K255)×2.5(ms) 0: (K0)固定扫描时间设置34 描述默认值名称地址项目 注释 括号内的默认值及其说明表示使用FP手持编程器Ⅱ时的设置值. 4-42 允许(K1): 在所有从站登录后CPU 开始操作. 禁止(K0): CPU开始操作不等待从站 的连接.只在登录远程I/O 分配时有效. 只在登录远程I/O分配时有效 允许 (等待连接) (K1) 使用MEWNET-F系统时的操作 模式设置 35远程I/O 控制 扫描异步模式(K1) / 扫描同步模式(K0)扫描同步 (K0) 用于MEWNET-F系统的数据更 新模式 36 描述默认值名称地址项目 注释 括号内的默认值及其说明表示使用FP手持编程器Ⅱ时的设置值. 4-43 通常分配(K0): 插槽编号较小的链接单元作为PC-link0, 较大编号的链接单元作为PC-link1 反转分配(K1): 插槽编号较小的链接单元作为PC-link1, 较大编号的链接单元作为PC-link0 通常分配 (K0) MEWNET-W/-P链接系统的PC- link0和1的分配设置 46 PC-link 0 设置 用于发送的链接 数据寄存器区的 大小 用于发送的链接 数据寄存器区的 起始地址 用于发送的链接 继电器区的大小 用于发送的链接 继电器的起始地 址 用于通信的链接 数据寄存器区大 小 用于通信的链接 继电器区大小 0~64字(K0~K64)0(K0)MEWNET- W/-P链接系 统的PC- link0设置 40 MEWNET- H设置 0~128字(K0~K128)0(K0)41 0~63(K0~K63)0(K0)42 0~64字(K0~K64)0(K0)43 0~127(K0~K127)0(K0)44 0~127字(K0~K127)0(K0)45 0(K0): 一个扫描周期内处理所有数据 1~65535(K1~K5535): 处理容量设置 容量 =设定值×256字节 0(K0)MEWNET-H系统的处理容量设 置 49 描述默认值名称地址项目 注释 括号内的默认值及其说明表示使用FP手持编程器Ⅱ时的设置值. 4-44 1~32(1号~32号站)1(K1)编程口站号设置 适用机型: FP5 410编程口 设置 PC-link 1 设置 用于发送的链接 数据寄存器区的 大小 用于发送的链接 数据寄存器区的 起始地址 用于发送的链接 继电器区的大小 用于发送的链接 继电器的起始地 址 用于通信的链接 数据寄存器区大 小 用于通信的链接 继电器区大小 0~64字(K0~K64)0(K0)MEWNET- W/-P链接系 统的PC- link1设置 50 0~128字(0~128)0(K1)51 64~127(K64~K127)64(K64)52 0~64字(K0~K64)0(K0)53 128~255(K128~K255)128(K128)54 0~127字(K0~K127)0(K0)55 数据长度: 7位/8位 调制解调器通信: 使用/不使用 当与调制解调器连接时, 应在系统寄存 器410中将站号设置为1. 通信格式 (数据长度): 8位 调制解调 器通信: 不使用 编程口通信格式设置411 描述默认值名称地址项目 注释 • 括号内的默认值及其说明表示使用FP手持编程器Ⅱ时的设置值. • 使用FP手持编程器Ⅱ时,不能修改系统寄存器410和411. 4-45 发生运算错误的时刻置ON. 发生错误的地址保存在DT9018中. 每次发生错误时更新其中的内容. 运算错误标志( 新型)(ER标志) R9008 当运算结果发生上溢出或下溢出时、执行移位相关指令的结果, 该标志瞬间被置位. 进位标志(CY标志)R9009 执行比较指令F60(CMP)~F63(DWIN)后,如果比较结果大,该标 志瞬间为ON. >标志R900A 执行比较指令F60~F63后,如果比较结果相等,该标志瞬间为ON. 执行运算指令后,如果运算结果为0,该标志瞬间为ON. =标志R900B 执行比较指令F60(CMP)~F63(DWIN)后,如果比较结果小,该标 志瞬间为ON. <标志R900C 执行辅助定时器指令(F137/F183)、到达设定的时间后,该标志 为ON. 当执行条件为OFF时,R900D置OFF. 辅助定时器触点R900D 编程口发生通信异常时置ON. 编程口通信异常标志R900E 执行固定扫描时,扫描时间超过设定定时器(系统寄存器No.34) 时置ON. 固定扫描异常标志R900F 始终置ON. 常闭继电器R9010 始终置OFF. 常开继电器R9011 每个扫描周期ON/OFF交替重复. 扫描脉冲继电器R9012 运行开始后,如果发生错误即置ON,并且在运行期间保持. 此时发生错误的程序地址保存在DT9017中(显示 初发生的运 算错误.) 运算错误标志(保持型)(ER标志)R9007 未使用——R9005 R9006 检测到I/O校验异常时置ON. 发生校验异常的I/O单元的No.保存在DT9010. I/O校验异常标志 适用PLC机型:FP0 R9004 未使用——R9001 ~ R9003 发生自诊断错误时变为ON. 自诊断的错误代码保存在DT9000. 自诊断错误标志R9000 描述名称地址 4.2.1 FP0/FP-e特殊内部继电器 内部特殊继电器在特殊条件下接通或者断开.开/关状态不输出到外部.不能利用编程工具或指令改变其状态. 4.2 特殊内部继电器列表 4-46 未使用——R9016, R9017 周期为0.01秒的时钟脉冲.0.01秒时钟脉冲继电器R9018 周期为0.02秒的时钟脉冲. 0.02秒时钟脉冲继电器R9019 周期为0.1秒的时钟脉冲. 0.1秒时钟脉冲继电器R901A 周期为0.2秒的时钟脉冲. 0.2秒时钟脉冲继电器R901B 周期为1秒的时钟脉冲.1秒时钟脉冲继电器R901C 周期为2秒的时钟脉冲. 2秒时钟脉冲继电器R901D 周期为1分钟的时钟脉冲. 1分时钟脉冲继电器R901E 未使用——R901F 当前为PROG.模式时置OFF. 当前为RUN模式时置ON. RUN模式标志R9020 未使用——R9021 ~ R9025 执行MSG指令(F149) 后置ON.信息标志R9026 (*注) 可以通过远程操作切换RUN←→PROG.模式时置ON. 遥控(Remote)标志R9027 进行步进梯形图控制时,仅在一个工程启动后的第一个扫描 周期为ON. 步进程序初始脉冲继电器(ON) R9015 运行(RUN)开始后的第一个扫描周期为ON,从第二个扫描周 期开始变为OFF. 初始脉冲继电器(ON) R9013 运行(RUN)开始后的第一个扫描周期为OFF,从第二个扫描周 期开始变为ON. 初始脉冲继电器(OFF) R9014 未使用——R9028 描述名称地址 注释 由系统使用. 4-47 在串行数据通信时,发送结束后置ON. 在串行数据通信时,正在进行发送时置OFF. COM口发送完成标志R9039 正在执行高速计数器指令(F162~F165)时为ON. ch0高速计数器控制中标志R903A 正在执行高速计数器指令(F162~F165)时为ON. ch1高速计数器控制中标志R903B 正在执行高速计数器指令(F162~F165)时为ON. ch2高速计数器控制中标志R903C 正在执行高速计数器指令(F162~F165)时为ON. ch3高速计数器控制中标志R903D 未使用——R903E, R903F ·使用串行通信功能时为ON. ·使用计算机链接功能时为OFF. COM口选择标志R9032 OFF:没有执行F147(PR)指令 ON :当前正在执行F147(PR)指令 打印指令执行标志R9033 在RUN模式下、向程序中写入、插入、删除时仅第一个扫 描周期为ON. RUN中程序编辑标志R9034 R9035 在S-LINK系统中发生了某种错误(ERR 1,3,4)时为ON.S-LINK I/O通信异常标志 适用PLC机型:FP0-SL1 在S-LINK系统的输入/输出单元中正在进行通信时为ON.S-LINK I/O通信状态标志 适用PLC机型:FP0-SL1 R9036 在串行通信过程中发生传输错误时置ON.COM口通信错误标志R9037 在串行数据通信时,接收到结束符后置ON.COM口接收完成标志R9038 未使用. ——R9030, R9031 R902C ~ R902F 当中断发生异常时为ON. 中断异常标志R902B (*注) 由ICTL指令允许外部中断时置ON. 外部中断允许标志R902A (*注) 正在对输入输出继电器、定时器/计数器触点等进行强制 ON/OFF时置ON. 强制中标志R9029 (*注) 描述名称地址 注释 由系统使用. 4-48 发生运算错误的时刻置ON.发生错误的地址保存在 DT90018中. 每次发生错误时更新其中的内容. 运算错误标志( 新型)(ER标志) R9008 当运算结果发生上溢出或下溢出时、执行移位相关指令 的结果, 该标志被置位. 进位标志(CY标志)R9009 执行比较指令后, 如果比较结果大, 该标志瞬间为ON. >标志R900A 执行比较指令后, 如果比较结果相等, 该标志瞬间为ON. 执行运算指令后, 如果运算结果为0, 该标志瞬间为ON. =标志R900B 执行比较指令后, 如果比较结果小, 该标志瞬间为ON.<标志R900C 执行辅助定时器指令(F137/F183)、到达设定的时间后, 该标志为ON. 执行条件为OFF时R900D置OFF. 辅助定时器触点R900D 编程口发生通信异常时置ON. 编程口通信异常标志R900E 执行固定扫描时, 扫描时间超过设定定时器(系统寄存器 No.34)时置ON. 固定扫描异常标志R900F 运行开始后, 如果发生错误即置ON, 并且在运行期间保 持.此时发生错误的地址保存在DT90017)中( 初发生的 运算错误.) 运算错误标志(保持型)(ER标志)R9007 检测到电池异常时置ON并且保持. 检出一次电池异常后, 即使恢复正常也仍保持ON. 切断电源或进行初始化操作后变为OFF. 后备电池异常标志(保持型)R9006 检测到电池异常时置ON.后备电池异常标志(当前型)R9005 检测到I/O校验异常时置ON.I/O校验异常标志R9004 未使用——R9003 未使用——R9002 未使用——R9001 发生自诊断错误时ON. 自诊断的结果保存DT90000. 自诊断错误标志R9000 描述名称地址 4.2.2 FPΣ特殊内部继电器 内部特殊继电器在特殊条件下接通或者断开.其开/关状态不输出到外部.不能利用编程工具或指令改变其状态. 4-49 未使用——R9016 未使用——R9017 周期为0.01秒的时钟脉冲.0.01秒时钟脉冲继电器R9018 周期为0.02秒的时钟脉冲. 0.02秒时钟脉冲继电器R9019 周期为0.1秒的时钟脉冲. 0.1秒时钟脉冲继电器R901A 周期为0.2秒的时钟脉冲. 0.2秒时钟脉冲继电器R901B 周期为1秒的时钟脉冲.1秒时钟脉冲继电器R901C 周期为2秒的时钟脉冲. 2秒时钟脉冲继电器R901D 周期为1分钟的时钟脉冲. 1分时钟脉冲继电器R901E 未使用——R901F 进行步进梯形图控制时, 仅在一个工程启动后的第一个扫 描周期为ON. 步进程序初始脉冲继电器(ON) R9015 始终置OFF. 常开继电器R9011 每个扫描周期ON/OFF交替重复. 扫描脉冲继电器R9012 运行(RUN)开始后的第一个扫描周期为ON, 从第二个扫描周 期开始变为OFF. 初始脉冲继电器(ON) R9013 运行(RUN)开始后的第一个扫描周期为OFF, 从第二个扫描 周期开始变为ON. 初始脉冲继电器(OFF) R9014 始终置ON. 常闭继电器R9010 描述名称地址 4-50 未使用——R9028 正在对输入输出继电器、定时器/计数器触点等进行强制 ON/OFF时置ON. 强制中标志R9029 R902A 利用ICTL指令允许外部中断触发器时变为ON.允许中断处理标志 当中断发生异常时为ON. 中断异常标志R902B 未使用——R902C 未使用——R902D 未使用——R902E 未使用——R902F 未使用——R9027 未使用——R9023 未使用——R9024 未使用——R9025 执行F149(MSG)指令后置ON.有信息标志R9026 当前为PROG.模式时置OFF. 当前为RUN模式时置ON. RUN模式标志R9020 未使用——R9021 未使用——R9022 描述名称地址 4-51 在通用串行数据通信时,发送结束后置ON. 在通用串行数据通信时,发送数据时置OFF. COM端口1发送完成标志R9039 正在执行高速计数器指令F166(HC1S)、F167(HC1R)和 F171(SPDH)~F176(PWMH)时为ON. ch0高速计数器控制标志R903A 正在执行高速计数器指令F166(HC1S)、F167(HC1R)和 F171(SPDH)~F176(PWMH)时为ON. ch1高速计数器控制标志R903B 正在执行高速计数器指令F166(HC1S)、F167(HC1R)和 F171(SPDH)~F176(PWMH)时为ON. ch2高速计数器控制标志R903C 正在执行高速计数器指令F166(HC1S)、F167(HC1R)和 F171(SPDH)~F176(PWMH)时为ON. ch3高速计数器控制标志R903D 未使用——R903E 未使用——R903F 未使用——R9031 使用串行通信功能时为ON. 使用计算机链接功能时为OFF. COM端口1选择标志R9032 OFF:没有执行打印指令 ON :当前正在执行打印指令 打印指令执行标志R9033 在RUN模式下、向程序中写入、插入、删除时仅第1个扫 描周期为ON. RUN中程序编辑标志R9034 未使用——R9035 未使用——R9036 在串行通信过程中发生传输错误时置ON. 在F159(MTRN)指令中请求发送时置OFF. COM端口1传输错误标志R9037 在通用串行数据通信时,接收到结束符后置ON.COM端口1接收完成标志R9038 未使用——R9030 描述名称地址 4-52 在使用MEWNET-W0的情况下, - PC-link发生错误时变为ON. - PC-link设置区有错误时为ON. MEWNET-W0 PC-link传输错误标志R9050 圆弧插补指令F176启动时为ON,从指令执行过程的第二个 扫描周期开始置OFF. 在持续模式下,可以利用此标志改写圆弧插补时的连接点 的位置. 圆弧插补数据改写确认标志R904F 未使用 —— R904A ~ R904D 在通用串行数据通信时,发送结束后置ON. 在通用串行数据通信时,发送数据时置OFF. COM端口2发送完成标志R9049 圆弧插补指令F176启动时为ON,在执行过程中保持ON.与 目标值一致时置OFF. 在此标志为ON期间,不能执行其他 位置控制指令(F171~F176). 圆弧插补指令正在执行标志R904E 未使用 —— R9051 ~ R905F 使用PC-link功能时为ON. COM端口1PC-link选择标志R9041 使用串行通信功能时为ON. 使用计算机链接或PC-link功能时为OFF. COM端口2动作模式标志R9042 在串行通信过程中发生传输错误时置ON. 在F159(MTRN)指令中请求发送时置OFF. COM端口2传输错误标志R9047 在通用串行数据通信时,接收到结束符后置ON.COM端口2接收完成标志R9048 未使用——R9040 描述名称地址 4-53 单元No.16 单元No.15 单元No.14 单元No.13 单元No.12 单元No.11 单元No.10 单元No.9 单元No.8 单元No.7 单元No.6 单元No.5 单元No.4 单元No.3 单元No.2 单元No.1 单元No.2正在PC-link模式下正常通信时: ON 处于停止状态、发生异常或不是PC-link时: OFF R9061 单元No.3正在PC-link模式下正常通信时: ON 处于停止状态、发生异常或不是PC-link时: OFF R9062 单元No.4正在PC-link模式下正常通信时: ON 处于停止状态、发生异常或不是PC-link时: OFF R9063 单元No.5正在PC-link模式下正常通信时: ON 处于停止状态、发生异常或不是PC-link时: OFF R9064 单元No.6正在PC-link模式下正常通信时: ON 处于停止状态、发生异常或不是PC-link时: OFF R9065 单元No.7正在PC-link模式下正常通信时: ON 处于停止状态、发生异常或不是PC-link时: OFF R9066 单元No.8正在PC-link模式下正常通信时: ON 处于停止状态、发生异常或不是PC-link时: OFF R9067 单元No.9正在PC-link模式下正常通信时: ON 处于停止状态、发生异常或不是PC-link时: OFF R9068 单元No.10正在PC-link模式下正常通信时: ON 处于停止状态、发生异常或不是PC-link时: OFF R9069 单元No.11正在PC-link模式下正常通信时: ON 处于停止状态、发生异常或不是PC-link时: OFF R906A 单元No.12正在PC-link模式下正常通信时: ON 处于停止状态、发生异常或不是PC-link时: OFF R906B 单元No.13正在PC-link模式下正常通信时: ON 处于停止状态、发生异常或不是PC-link时: OFF R906C 单元No.14正在PC-link模式下正常通信时: ON 处于停止状态、发生异常或不是PC-link时: OFF R906D 单元No.15正在PC-link模式下正常通信时: ON 处于停止状态、发生异常或不是PC-link时: OFF R906E 单元No.16正在PC-link模式下正常通信时: ON 处于停止状态、发生异常或不是PC-link时: OFF R906F 单元No.1正在PC-link模式下正常通信时: ON 处于停止状态、发生异常或不是PC-link时: OFF MEWNET-W0 PC-link 传输保证继电器 R9060 描述名称地址 4-54 单元No.16 单元No.15 单元No.14 单元No.13 单元No.12 单元No.11 单元No.10 单元No.9 单元No.8 单元No.7 单元No.6 单元No.5 单元No.4 单元No.3 单元No.2 单元No.1 当单元No.2处于RUN(运行)模式时: ON 当单元No.2处于PROG(编程)模式时: OFF R9071 当单元No.3处于RUN(运行)模式时: ON 当单元No.3处于PROG(编程)模式时: OFF R9072 当单元No.4处于RUN(运行)模式时: ON 当单元No.4处于PROG(编程)模式时: OFF R9073 当单元No.5处于RUN(运行)模式时: ON 当单元No.5处于PROG(编程)模式时: OFF R9074 当单元No.6处于RUN(运行)模式时: ON 当单元No.6处于PROG(编程)模式时: OFF R9075 当单元No.7处于RUN(运行)模式时: ON 当单元No.7处于PROG(编程)模式时: OFF R9076 当单元No.8处于RUN(运行)模式时: ON 当单元No.8处于PROG(编程)模式时: OFF R9077 当单元No.9处于RUN(运行)模式时: ON 当单元No.9处于PROG(编程)模式时: OFF R9078 当单元No.10处于RUN(运行)模式时: ON 当单元No.10处于PROG(编程)模式时: OFF R9079 当单元No.11处于RUN(运行)模式时: ON 当单元No.11处于PROG(编程)模式时: OFF R907A 当单元No.12处于RUN(运行)模式时: ON 当单元No.12处于PROG(编程)模式时: OFF R907B 当单元No.13处于RUN(运行)模式时: ON 当单元No.13处于PROG(编程)模式时: OFF R907C 当单元No.14处于RUN(运行)模式时: ON 当单元No.14处于PROG(编程)模式时: OFF R907D 当单元No.15处于RUN(运行)模式时: ON 当单元No.15处于PROG(编程)模式时: OFF R907E 当单元No.16处于RUN(运行)模式时: ON 当单元No.16处于PROG(编程)模式时: OFF R907F 当单元No.1处于RUN(运行)模式时: ON 当单元No.1处于PROG(编程)模式时: OFF MEWNET-W0 PC-link 操作模式继电器 R9070 描述名称地址 4-55 发生运算错误的时刻置ON. 发生错误的地址保存在DT9018. FP10/FP10SFP10SH/FP2/FP2SH保存在DT90018中. 每次发生错误时更新其中的内容. 运算错误标志( 新型)(ER标志) R9008 运行开始后, 如果发生错误即置ON, 并且在运行期间 保持. 此时发生错误的地址保存在DT9017. FP10/FP10S/FP10SH/FP2/FP2SH保存在DT90017中(显 示 初发生的运算错误.) 运算错误标志(保持型)(ER标志)R9007 检测到电池异常时置ON. 检出一次电池异常后, 即使恢复正常也仍保持ON. 切断电源或进行初始化操作后变为OFF. 后备电池异常标志(保持型) 适用PLC机型: FP1 C24/C40/C56/C72,FP-M C20/C32, FP10,FP10S,FP10SH,FP2,FP2SH,FP3 R9006 检测到电池异常时置ON.后备电池异常标志(当前型) 适用PLC机型: FP1 C24/C40/C56/C72,FP-M C20/C32, FP10,FP10S,FP10SH,FP2,FP2SH,FP3 R9005 检测到I/O校验异常时置ON. 发生校验异常的I/O单元的插槽No.保存在DT9010及 DT9011(FP10/FP10S/FP10SH/FP2中为 DT90010,DT90011)中. I/O校验异常标志 适用PLC机型: FP10,FP10S,FP10SH,FP2,FP2SH,FP3 R9004 检测到智能单元(板)中的异常时置ON. 发生异常的智能单元的插槽No.保存在DT9006及 DT9007(FP10/FP10S/FP10SH/FP2为DT90006,DT90007) 中. 智能单元异常标志 适用PLC机型: FP10,FP10S,FP10SH,FP2,FP2SH,FP3 R9003 检测到I/O单元异常时置ON. 发生异常的单元的插槽No.保存在DT90002,DT90003中. I/O异常标志 适用PLC机型:FP2,FP2SH 检测到发送主单(Transmitter Master Unit)中 MEWNET-TR网络通信状态异常时置ON. 发生异常的主单元的插槽No.保存在DT9002及DT9003 (FP10S/FP10SH中为DT90002,DT90003)中. MEWNET-TR通信异常标志 适用PLC机型:FP3,FP10S,FP10SH R9002 未使用——R9001 发生自诊断错误时ON. 自诊断的结果保存DT9000. (FP10/FP10S/FP10SH/FP2/FP2SH为DT90000). 自诊断错误标志R9000 描述名称地址 4.2.3 特殊内部继电器列表(用于FP1/FP-M/FP2/FP2SH/FP3/FP10SH) 内部特殊继电器在特殊条件下接通或者断开.其开/关状态不输出到外部.不能利用编程工具或指令改变其状态. 4-56 未使用——R9016 未使用——R9017 周期为0.01秒的时钟脉冲.0.01秒时钟脉冲继电器R9018 周期为0.02秒的时钟脉冲. 0.02秒时钟脉冲继电器R9019 周期为0.1秒的时钟脉冲. 0.1秒时钟脉冲继电器R901A 周期为0.2秒的时钟脉冲. 0.2秒时钟脉冲继电器R901B 周期为1秒的时钟脉冲.1秒时钟脉冲继电器R901C 进行步进梯形图控制时, 仅在一个工程启动后的第一个扫 描周期为ON. 步进程序初始脉冲继电器(ON) R9015 始终置OFF. 常开继电器R9011 每个扫描周期ON/OFF交替重复. 扫描脉冲继电器R9012 运行(RUN)开始后的第一个扫描周期为ON, 从第二个扫描周 期开始变为OFF. 初始脉冲继电器(ON) R9013 运行(RUN)开始后的第一个扫描周期为OFF, 从第二个扫描 周期开始变为ON. 初始脉冲继电器(OFF) R9014 始终置ON. 常闭继电器R9010 R900B 执行固定扫描时, 扫描时间超过设定定时器(系统寄存器 No.34)时置ON. 固定扫描异常标志R900F 编程口发生通信异常时置ON. 编程口通信异常标志 适用PLC机型: FP1,FP10SH,FP2SH,FP-M R900E 执行辅助定时器指令(F137/F183)、到达设定的时间后,该 标志为ON. (F183对应FP2/FP2SH及FP10SH控制单元Ver.3.0以上)执行 条件为OFF时R900D置OFF. 辅助定时器触点 适用PLC机型: FP-M C20/C32, FP1 C56/C72,FP10SH,FP2SH,FP3 R900D 执行比较指令后, 如果比较结果小, 该标志为ON.<标志R900C 执行比较指令后, 如果比较结果相等, 该标志为ON. 执行运算指令后, 如果运算结果为0, 该标志为ON. =标志 执行比较指令后, 如果比较结果大, 该标志为ON. >标志R900A 当运算结果发生上溢出或下溢出时、执行移位相关指令的 结果, 该标志被置位. 进位标志(CY标志)R9009 描述名称地址 4-57 指定解除断点时置ON.断点解除标志 适用PLC机型: FP10,FP10S,FP10SH,FP2,FP2SH,FP3 R9028 正在对输入输出继电器、定时器/计数器触点等进行强制 ON/OFF时置ON. 强制中标志R9029 执行ICTL指令允许外部中断时置ON. 外部中断允许标志 适用PLC机型: FP1 C24/C40/C56/C72,FP-M, FP10,FP10S,FP10SH,FP3,FP2SH R902A 正在由ICTL指令执行定时中断时为ON.中断处理中标志 适用PLC机型:FP2 当中断发生异常时为ON. 中断异常标志 适用PLC机型: FP1 C24/C40/C56/C72,FP-M, FP3,FP10,FP10S,FP10SH,FP2,FP2SH R902B 按照指令采样时为OFF. 按照定时中断采样时为ON. 采样点标志R902C 可以通过远程操作切换RUN←→PROG.模式时置ON. 遥控(Remote)标志R9027 将测试运行模式设为[允许BRK指令]时置ON.断点允许标志 适用PLC机型: FP10,FP10S,FP10SH,FP2,FP2SH,FP3 R9023 将测试运行模式设为[刷新输出]时置ON.测试运行时输出刷新标志 适用PLC机型: FP10,FP10S,FP10SH,FP2,FP2SH,FP3 R9024 将测试运行模式设为[单指令执行]时置ON.单条指令执行标志 适用PLC机型: FP10,FP10S,FP10SH,FP2,FP2SH,FP3 R9025 执行MSG指令(F149) 后置ON.有信息标志R9026 未使用——R901F 当前为PROG.模式时置OFF. 当前为RUN模式时置ON. RUN模式标志R9020 当CPU单元的TEST/INITIALIZE开关处于[TEST]一侧并进 入RUN模式(测试运行)后, 该标志置ON. 通常模式RUN时置OFF. 测试运行中标志 适用PLC机型: FP10,FP10S,FP10SH,FP2,FP2SH,FP3 R9021 执行BRK指令或单步执行时置ON.断点暂停标志 适用PLC机型: FP10,FP10S,FP10SH,FP2,FP2SH,FP3 R9022 周期为1分钟的时钟脉冲. 1分时钟脉冲继电器R901E 周期为2秒的时钟脉冲. 2秒时钟脉冲继电器R901D 描述名称地址 4-58 表示F145(SEND)以及F146(RECV)指令的执行状态. OFF:正常结束 ON :异常结束 错误代码保存于FP3:DT9039, FP10/FP10S/FP10SH/FP2/FP2SH:DT90039). SEND/RECV指令执行结束标志 适用PLC机型: FP10,FP10S,FP10SH,FP2,FP2SH,FP3 R9031 ·使用串行通信功能时为ON. ·使用计算机链接功能时为OFF. COM口选择标志 适用PLC机型: FP1 C24C/C40C/C56C/C72C, FP-M C20/C32, FP10SH,FP2,FP2SH R9032 OFF:没有执行F147(PR)指令 ON :当前正在执行F147(PR)指令 打印指令执行标志 适用PLC机型: FP1 C24/C40/C56/C72, FP-M C20/C32, FP3,FP10SH,FP2,FP2SH R9033 在RUN模式下、向程序中写入、插入、删除时为ON.RUN中程序编辑标志 适用PLC机型: FP10,FP10S,FP10SH,FP2,FP2SH,FP3 R9034 表示允许/不允许F152(RMRD)以及F153(RMWT)指令. OFF:不允许执行(正在执行RMRD/RMWT指令) ON :允许执行 RMRD/RMWT指令允许执行标志 适用PLC机型: FP10,FP10S,FP10SH,FP2,FP2SH,FP3 R9035 表示允许/不允许F145(SEND)以及F146(RECV)指令. OFF:不允许执行(正在执行SEND/RECV指令) ON :允许执行 SEND/RECV指令允许执行标志 适用PLC机型: FP10,FP10S,FP10SH,FP2,FP2SH,FP3 R9030 指定采样动作开始时为ON. 采样允许标志 适用PLC机型: FP10,FP10S,FP10SH,FP2,FP2SH,FP3 R902F 当F156(STRG)/P156(PSTRG)指令的采样触发器为ON时,本 标志为ON. 采样触发器标志 适用PLC机型: FP10,FP10S,FP10SH,FP2,FP2SH,FP3 R902E 采样过程停止后置ON. 采样过程结束标志 适用PLC机型: FP10,FP10S,FP10SH,FP2,FP2SH,FP3 R902D 描述名称地址 4-59 在串行数据通信时、发送结束后置ON. 在串行数据通信时、请求发送时置OFF. COM口发送完成标志 适用PLC机型: FP1 C24C/C40C/C56C/C72C, FP-M C20/C32, FP10SH,FP2,FP2SH R9039 正在执行高速计数器指令(F166~F165)时为ON. R903A 正在执行凸轮输出指令F165(CAMO)时为ON. 高速计数器凸轮位置控制中标志 适用PLC机型:FP1,FPM R903B 正在执行高速计数器指令(F166~F170)时为ON. 高速计数器控制中标志(ch1) 正在执行高速计数器指令(F166~F170)时为ON. 高速计数器控制中标志(ch2)R903C 正在执行高速计数器指令(F166~F170)时为ON. 高速计数器控制中标志(ch3)R903D 未使用——R903E 未使用——R903F 当错误报警继电器(E0到E2047)动作时为ON. 当所有错误报警继电器断开时为OFF. 错误报警(0~2047)R9040 在串行数据通信时、接收到结束符后置ON.COM口接收完成标志 适用PLC机型: FP1 C24C/C40C/C56C/C72C, FP-M C20/C32, FP10SH,FP2,FP2SH R9038 在串行通信过程中发生传输错误时置ON. 在F144(TRNS)指令中请求发送时置OFF. COM口传输错误标志 适用PLC机型: FP1 C24C/C40C/C56C/C72C, FP-M C20/C32, FP10SH,FP2,FP2SH R9037 I/O链接功能发生异常时置ON. I/O链接异常标志 适用PLC机型:FP1,FP-M C20/C32 表示F152(RMRD)以及F153(RMWT)指令的执行状态. OFF:正常结束 ON :异常结束(发生存取异常) 错误代码保存于FP3: DT9036, FP10/FP10S/FP10SH/FP2/FP2SH: DT90036. RMRD/RMWT指令执行结束标志 适用PLC机型: FP10,FP10S,FP10SH,FP2,FP2SH,FP3 R9036 描述名称地址 4-60 使用MEWNET-H链接单元时 - 在H link3中发生传输异常时置ON. - 链接区域的设置中存在异常时置ON. MEWNET-H 链接传输异常标志 [H link3] 适用PLC机型:FP10,FP10S,FP10SH,FP3 ※在FP5,FP3,FP-C中, Ver.4.3以后的 控制单元可以使用. R9057 使用远程I/O系统(MEWNET-F)时 - 在master 1体系中发生传输异常时、置ON. - 设置异常时、置ON. 远程I/O传输异常标志(master1) 适用PLC机型: FP10,FP10S,FP10SH,FP2,FP2SH,FP3 R9058 使用远程I/O系统(MEWNET-F)时 - 在master 2体系中发生传输异常时、置ON. - 设置异常时、置ON. 远程I/O传输异常标志(master2) 适用PLC机型: FP10,FP10S,FP10SH,FP2,FP2SH,FP3 R9059 使用远程I/O系统(MEWNET-F)时 - 在master 3体系中发生传输异常时、置ON. - 设置异常时、置ON. 远程I/O传输异常标志(master3) 适用PLC机型: FP10,FP10S,FP10SH,FP2,FP2SH,FP3 R905A 使用远程I/O系统(MEWNET-F)时 - 在master 4体系中发生传输异常时、置ON. - 设置异常时、置ON. 远程I/O传输异常标志(master4) 适用PLC机型: FP10,FP10S,FP10SH,FP2,FP2SH,FP3 R905B 未使用 —— R905C ~ R905F 使用MEWNET-H链接单元时 - 在H link2中发生传输异常时置ON. - 链接区域的设置中存在异常时置ON. MEWNET-H 链接传输异常标志 [H link2] 适用PLC机型:FP10,FP10S,FP10SH,FP3 ※在FP5,FP3,FP-C中, Ver.4.3以后的 控制单元可以使用. R9056 R9053 使用MEWNET-H链接单元时 - 在H link1中发生传输异常时置ON. - 链接区域的设置中存在异常时置ON. MEWNET-H 链接传输异常标志 [H link1] 适用PLC机型:FP10,FP10S,FP10SH,FP3 ※在FP5,FP3,FP-C中, Ver.4.3以后的 控制单元可以使用. R9055 使用MEWNET-W或MEWNET-P链接单元时 - 在link5中发生传输异常时置ON. - 链接区域的设置中存在异常时置ON. MEWNET-W/P 链接传输异常标志 [W/P link5]:FP3,FP10SH, [W link1]: FP2,FP2SH R9054 使用MEWNET-W或MEWNET-P链接单元时 - 在link4中发生传输异常时置ON. - 链接区域的设置中存在异常时置ON. MEWNET-W/P 链接传输异常标志 [W/P link4]:FP3,FP10SH, [W link1]: FP2,FP2SH 使用MEWNET-W或MEWNET-P链接单元时 - 在link3中发生传输异常时置ON. - 链接区域的设置中存在异常时置ON. MEWNET-W/P 链接传输异常标志 [W/P link3]:FP3,FP10SH, [W link1]: FP2,FP2SH R9052 使用MEWNET-W或MEWNET-P链接单元时 - 在link2中发生传输异常时置ON. - 链接区域的设置中存在异常时置ON. MEWNET-W/P 链接传输异常标志 [W/P link2]:FP3,FP10SH, [W link1]: FP2,FP2SH R9051 使用MEWNET-W或MEWNET-P链接单元时 - 在link1中发生传输异常时置ON. - 链接区域的设置中存在异常时置ON. MEWNET-W/P 链接传输异常标志 [W/P link1]:FP3,FP10SH, [W link1]: FP2,FP2SH R9050 描述名称地址 4-61 单元No.16 单元No.15 单元No.14 单元No.13 单元No.12 单元No.11 单元No.10 单元No.9 单元No.8 单元No.7 单元No.6 单元No.5 单元No.4 单元No.3 单元No.2 单元No.1 单元No.2正在PC-link模式下正常通信时: ON 处于停止状态、发生异常或不是PC-link时: OFF R9061 单元No.3正在PC-link模式下正常通信时: ON 处于停止状态、发生异常或不是PC-link时: OFF R9062 单元No.4正在PC-link模式下正常通信时: ON 处于停止状态、发生异常或不是PC-link时: OFF R9063 单元No.5正在PC-link模式下正常通信时: ON 处于停止状态、发生异常或不是PC-link时: OFF R9064 单元No.6正在PC-link模式下正常通信时: ON 处于停止状态、发生异常或不是PC-link时: OFF R9065 单元No.7正在PC-link模式下正常通信时: ON 处于停止状态、发生异常或不是PC-link时: OFF R9066 单元No.8正在PC-link模式下正常通信时: ON 处于停止状态、发生异常或不是PC-link时: OFF R9067 单元No.9正在PC-link模式下正常通信时: ON 处于停止状态、发生异常或不是PC-link时: OFF R9068 单元No.10正在PC-link模式下正常通信时: ON 处于停止状态、发生异常或不是PC-link时: OFF R9069 单元No.11正在PC-link模式下正常通信时: ON 处于停止状态、发生异常或不是PC-link时: OFF R906A 单元No.12正在PC-link模式下正常通信时: ON 处于停止状态、发生异常或不是PC-link时: OFF R906B 单元No.13正在PC-link模式下正常通信时: ON 处于停止状态、发生异常或不是PC-link时: OFF R906C 单元No.14正在PC-link模式下正常通信时: ON 处于停止状态、发生异常或不是PC-link时: OFF R906D 单元No.15正在PC-link模式下正常通信时: ON 处于停止状态、发生异常或不是PC-link时: OFF R906E 单元No.16正在PC-link模式下正常通信时: ON 处于停止状态、发生异常或不是PC-link时: OFF R906F 单元No.1正在PC-link模式下正常通信时: ON 处于停止状态、发生异常或不是PC-link时: OFF MEWNET-W/-P PC-link 传输保证继电器 [用于PC-link0(W/P)] R9060 描述名称地址 注释 当系统寄存器46=K0时,用于PC-link0的链接单元使用较小编号的插槽, 用于PC-link1的链接单元使用较大编号的插槽. 当系统寄存器46=K1时,用于PC-link1的链接单元使用较小编号的插槽, 用于PC-link0的链接单元使用较大编号的插槽. 4-62 单元No.16 单元No.15 单元No.14 单元No.13 单元No.12 单元No.11 单元No.10 单元No.9 单元No.8 单元No.7 单元No.6 单元No.5 单元No.4 单元No.3 单元No.2 单元No.1 当单元No.2处于RUN(运行)模式时: ON 当单元No.2处于PROG(编程)模式时: OFF R9071 当单元No.3处于RUN(运行)模式时: ON 当单元No.3处于PROG(编程)模式时: OFF R9072 当单元No.4处于RUN(运行)模式时: ON 当单元No.4处于PROG(编程)模式时: OFF R9073 当单元No.5处于RUN(运行)模式时: ON 当单元No.5处于PROG(编程)模式时: OFF R9074 当单元No.6处于RUN(运行)模式时: ON 当单元No.6处于PROG(编程)模式时: OFF R9075 当单元No.7处于RUN(运行)模式时: ON 当单元No.7处于PROG(编程)模式时: OFF R9076 当单元No.8处于RUN(运行)模式时: ON 当单元No.8处于PROG(编程)模式时: OFF R9077 当单元No.9处于RUN(运行)模式时: ON 当单元No.9处于PROG(编程)模式时: OFF R9078 当单元No.10处于RUN(运行)模式时: ON 当单元No.10处于PROG(编程)模式时: OFF R9079 当单元No.11处于RUN(运行)模式时: ON 当单元No.11处于PROG(编程)模式时: OFF R907A 当单元No.12处于RUN(运行)模式时: ON 当单元No.12处于PROG(编程)模式时: OFF R907B 当单元No.13处于RUN(运行)模式时: ON 当单元No.13处于PROG(编程)模式时: OFF R907C 当单元No.14处于RUN(运行)模式时: ON 当单元No.14处于PROG(编程)模式时: OFF R907D 当单元No.15处于RUN(运行)模式时: ON 当单元No.15处于PROG(编程)模式时: OFF R907E 当单元No.16处于RUN(运行)模式时: ON 当单元No.16处于PROG(编程)模式时: OFF R907F 当单元No.1处于RUN(运行)模式时: ON 当单元No.1处于PROG(编程)模式时: OFF MEWNET-W/-P PC-link 操作模式继电器 [用于PC-link0(W/P)] R9070 描述名称地址 注释 当系统寄存器46=K0时,用于PC-link0的链接单元使用较小编号的插槽, 用于PC-link1的链接单元使用较大编号的插槽. 当系统寄存器46=K1时,用于PC-link1的链接单元使用较小编号的插槽, 用于PC-link0的链接单元使用较大编号的插槽. 4-63 单元No.16 单元No.15 单元No.14 单元No.13 单元No.12 单元No.11 单元No.10 单元No.9 单元No.8 单元No.7 单元No.6 单元No.5 单元No.4 单元No.3 单元No.2 单元No.1 单元No.2正在PC-link模式下正常通信时: ON 处于停止状态、发生异常或不是PC-link时: OFF R9081 单元No.3正在PC-link模式下正常通信时: ON 处于停止状态、发生异常或不是PC-link时: OFF R9082 单元No.4正在PC-link模式下正常通信时: ON 处于停止状态、发生异常或不是PC-link时: OFF R9083 单元No.5正在PC-link模式下正常通信时: ON 处于停止状态、发生异常或不是PC-link时: OFF R9084 单元No.6正在PC-link模式下正常通信时: ON 处于停止状态、发生异常或不是PC-link时: OFF R9085 单元No.7正在PC-link模式下正常通信时: ON 处于停止状态、发生异常或不是PC-link时: OFF R9086 单元No.8正在PC-link模式下正常通信时: ON 处于停止状态、发生异常或不是PC-link时: OFF R9087 单元No.9正在PC-link模式下正常通信时: ON 处于停止状态、发生异常或不是PC-link时: OFF R9088 单元No.10正在PC-link模式下正常通信时: ON 处于停止状态、发生异常或不是PC-link时: OFF R9089 单元No.11正在PC-link模式下正常通信时: ON 处于停止状态、发生异常或不是PC-link时: OFF R908A 单元No.12正在PC-link模式下正常通信时: ON 处于停止状态、发生异常或不是PC-link时: OFF R908B 单元No.13正在PC-link模式下正常通信时: ON 处于停止状态、发生异常或不是PC-link时: OFF R908C 单元No.14正在PC-link模式下正常通信时: ON 处于停止状态、发生异常或不是PC-link时: OFF R908D 单元No.15正在PC-link模式下正常通信时: ON 处于停止状态、发生异常或不是PC-link时: OFF R908E 单元No.16正在PC-link模式下正常通信时: ON 处于停止状态、发生异常或不是PC-link时: OFF R908F 单元No.1正在PC-link模式下正常通信时: ON 处于停止状态、发生异常或不是PC-link时: OFF MEWNET-W/-P PC-link 传输保证继电器 [用于PC-link1(W/P)] R9080 描述名称地址 注释 当系统寄存器46=K0时,用于PC-link0的链接单元使用较小编号的插槽, 用于PC-link1的链接单元使用较大编号的插槽. 当系统寄存器46=K1时,用于PC-link1的链接单元使用较小编号的插槽, 用于PC-link0的链接单元使用较大编号的插槽. 4-64 监控是否安装了IC存储卡. - ON : 已安装IC卡 - OFF: 未安装IC卡 IC存储卡安装标志 适用PLC机型:FP2SH,FP10SH R9100 监控IC存储卡的电压下降情况. - ON : 不能保证IC卡中的数据 - OFF: 可以保持IC卡中的数据 IC存储卡后备电池标志1 适用PLC机型:FP2SH,FP10SH R9101 (*注) 当单元No.16处于RUN(运行)模式时: ON 当单元No.16处于PROG(编程)模式时: OFF 单元No.16 MEWNET-W/-P PC-link 操作模式继电器 [用于PC-link1(W/P)] R909F 单元No.15 单元No.14 单元No.13 单元No.12 单元No.11 单元No.10 单元No.9 单元No.8 单元No.7 单元No.6 单元No.5 单元No.4 单元No.3 单元No.2 单元No.1 当单元No.2处于RUN(运行)模式时: ON 当单元No.2处于PROG(编程)模式时: OFF R9091 当单元No.3处于RUN(运行)模式时: ON 当单元No.3处于PROG(编程)模式时: OFF R9092 当单元No.4处于RUN(运行)模式时: ON 当单元No.4处于PROG(编程)模式时: OFF R9093 当单元No.5处于RUN(运行)模式时: ON 当单元No.5处于PROG(编程)模式时: OFF R9094 当单元No.6处于RUN(运行)模式时: ON 当单元No.6处于PROG(编程)模式时: OFF R9095 当单元No.7处于RUN(运行)模式时: ON 当单元No.7处于PROG(编程)模式时: OFF R9096 当单元No.8处于RUN(运行)模式时: ON 当单元No.8处于PROG(编程)模式时: OFF R9097 当单元No.9处于RUN(运行)模式时: ON 当单元No.9处于PROG(编程)模式时: OFF R9098 当单元No.10处于RUN(运行)模式时: ON 当单元No.10处于PROG(编程)模式时: OFF R9099 当单元No.11处于RUN(运行)模式时: ON 当单元No.11处于PROG(编程)模式时: OFF R909A 当单元No.12处于RUN(运行)模式时: ON 当单元No.12处于PROG(编程)模式时: OFF R909B 当单元No.13处于RUN(运行)模式时: ON 当单元No.13处于PROG(编程)模式时: OFF R909C 当单元No.14处于RUN(运行)模式时: ON 当单元No.14处于PROG(编程)模式时: OFF R909D 当单元No.15处于RUN(运行)模式时: ON 当单元No.15处于PROG(编程)模式时: OFF R909E 监控IC存储卡的电压下降情况 - ON : 要求更换电池 - OFF: 不需要更换电池 R9102 (*注) 当单元No.1处于RUN(运行)模式时: ON 当单元No.1处于PROG(编程)模式时: OFF IC存储卡后备电池标志2 适用PLC机型:FP2SH,FP10SH R9090 描述名称地址 注释 当系统寄存器46=K0时,用于PC-link0的链接单元使用较小编号的插槽, 用于PC-link1的链接单元使用较大编号的插槽. 当系统寄存器46=K1时,用于PC-link1的链接单元使用较小编号的插槽, 用于PC-link0的链接单元使用较大编号的插槽. 4-65 监控IC存储卡的写保护状态. - ON : 保护开关不在写保护(WP)位置 - OFF: 保护开关在写保护(WP)位置 IC存储卡写保护开关标志 适用PLC机型:FP2SH,FP10SH R9103 监控IC存储卡的写保护状态. - ON(允许存取) : 允许存取开关在ON位置 - OFF(禁止存取): 允许存取开关在OFF位置 IC存储卡存储切换标志 适用PLC机型:FP2SH,FP10SH R9104 (*注) 未使用R9105 ~ R901F —— 描述名称地址 注释 可以利用特殊内部继电器R9101和R9102根据下表判断IC存储卡 后备电池的状态. 不需要更换电池OFFOFF 更换后备电池. 可以维持IC卡中的数据. ONOFF 不能维持IC卡中的数据. 更换后备电池. ON ON IC存储卡状态R9102R9101 4-66 4.3.1 特殊数据寄存器(适用FP0/FP-e) 特殊数据寄存器是储存特殊信息的单字(16位)存储区域。除了在“描述”栏中标识出“可写”的寄存器,这些寄存 器不能被写. 将FP-e的画面切换到指定的画面模式. K0: N模式第1画面 K1: N模式第2画面 K2: S模式第1画面 K3: S模式第2画面 K4: R模式第1画面 K5: R模式第2画面 K6: I模式第1画面 K7: I模式第2画面 FP-e画面显示切换 (适用机型: FP-e) DT9001DT90001 运算错误地址(非保持型) I/O校验异常时,将发生异常的I/O位置存放到bit 0~3 I/O错误校验单元DT9010DT90010 数据移位指令F105(BSR)或F106(BSL)的执行结果、 被移出的1digit部分存放到bit0~bit3中. 运算用辅助寄存器DT9014DT90014 执行16bit除法指令F32(%)或F52(B%)时,16bit余数 存放到DT9015/DT90015中。 执行32bit除法指令F33(D%)或F53(DB%)时,32bit余 数存放到DT9015~DT9016/DT90015~DT90016中. 运算用辅助寄存器DT9015DT90015 DT9016DT90016 运行开始后、第一次发生运算错误的地址存放于其 中. 请以10进制显示进行监控 运算错误地址(保持型)DT9017DT90017 存放发生运算错误时的地址。每次发生错误时更新 内容。 在扫描开始时为0。请以10进制显示进行监控。 DT9018DT90018 存放值每隔2.5ms自动 +1。(H0~HFFFF) 2点的数值的差值(绝对值)×2.5ms=2点间的经过 值。 2.5ms振铃信号DT9019DT90019 未使用 —— DT9020DT90020 DT9021DT90021 保存发生自诊断错误时的错误代码。 请以10进制显示进行监控。 自诊断错误代码DT9000DT90000 FP0 C10,C14, C16,C32 FP-e FP0 T32 描述名称地址 4.3 特殊数据寄存器列表 4-67 存放扫描时间的当前值。 扫描时间 = [存放数值(10进制数)]×0.1ms (例) K50时表示5ms。 扫描时间(当前值) (*注释) DT9022DT90022 信息1DT9031DT90031 信息2DT9032DT90032 未使用——DT9026DT90026 存放根据ICTL指令设置的内容。 - K0: 不使用定时中断 - K1~K3000: 10ms~30s 或0.5ms~1.5s 定时中断间隔 (INT24) DT9027DT90027 未使用——DT9028DT90028 未使用——DT9029DT90029 存放执行F149(MSG)指令后的指定信息内容.信息0DT9030DT90030 信息3DT9033DT90033 信息4DT9034DT90034 信息5DT9035DT90035 存放根据ICTL指令设置的内容。 请以2进制(BIN)显示进行监控。 0: 禁止中断(被屏蔽) 1: 允许中断(非屏蔽) 中断许可状态监控寄存器 (INT0~5) DT9025DT90025 存放扫描时间的 大值。 扫描时间 = [存放数值(10进制数)]×0.1ms (例) K125时表示12.5ms。 扫描时间( 大值) (*注释1) DT9024DT90024 存放扫描时间的 小值。 扫描时间 = [存放数值(10进制数)]×0.1ms (例) K50时表示5ms。 扫描时间( 小值) (*注释1) DT9023DT90023 FP0 C10,C14, C16,C32 FP-e FP0 T32 描述名称地址 注释 (1) 扫描时间只在运行状态下显示,并显示运行循环时间。在每次RUN与PROG 模式切换时, 最大值和最小值被清零。 (2) 系统使用。 4-68 未使用——DT9042DT90042 系统使用区(电池)系统使用 (适用机型: FP-e) DT9043DT90043 存放未经平均处理的温度输入数值.温度输入通道0 (适用机型: FP-e) DT9040DT90040 温度输入通道1 (适用机型: FP-e) DT9041DT90041 未使用——DT9036DT90036 存放在执行F96(SRC)指令时与查找数据一致的个 数. F96(SRC)指令工作区1DT9037DT90037 DT9049DT90049 存放利用高速计数器指令(F166~F170)设置的高 速计数器的目标值(24 bit数据)。 预置执行高速计数器相关指令F166~F170时各指 令所设定的目标值.只能读出,不能写入. 高速计数器通道1目标值DT9050DY90050 DT9045DT90045 存放利用高速计数器指令(F166~F170)设置的高 速计数器的目标值(24 bit数据)。 预置执行高速计数器相关指令F166~F170时各指 令所设定的目标值.只能读出,不能写入. 高速计数器通道0目标值DT9046DT90046 DT9047DT90047 存放高速计数器的经过值(24bit数据). 执行F1(DMV)指令可以写入数值. 高速计数器通道1经过值DT9048DT90048 存放高速计数器的经过值(24bit数据). 执行F1指令(DMV)可以写入数值. 高速计数器通道0经过值DT9044DT90044 DT9051DT90051 未使用——DT9039DT90039 存放在执行F96(SRC)指令时第一个一致数据的 16-bit相对位置. F96(SRC)指令工作区2DT9038DT90038 FP0 C10,C14, C16,C32 FP-e FP0 T32 描述名称地址 4-69 可以通过MV指令(F0)写入数值,进行高速计数 器的复位、计数禁止、高速计数器指令(F168) 的终止及清除. 控制代码设置: 控制代码 = □□□□ (2进制) 软件复位 0:不执行/1:执行 计数 0:允许/1:禁止 硬件复位 0:允许/1:禁止 高速计数清零 0:继续/1:停止 不进行软件复位: H0(0000) 进行软件复位: H1(0001) 禁止计数: H2(0010) 禁止硬件复位: H4(0100) 停止输出脉冲(清除指令): H8(1000) 禁止软件复位并停止脉冲输出: H9(1001) DT9052/DT90052的16bit数据按组分别对应于 通道0~通道3共4个高速计数通道,分布如下: 禁止硬件复位只在使用复位输入(X2和X5)时有 效.除此以外不进行处理. 使用脉冲输出时,硬件复位相当于原点近旁输 入. 高速计数器控制标志DT9052DT90052 FP0 C10,C14, C16,C32 FP-e FP0 T32 描述名称地址 4-70 日历时钟的时•分数据. 可以读出,不能写入.时钟/日历监控 (小时/分钟) DT9053 (注释2) DT90053 (注释1) 时钟/日历监控与设置 (日/小时) DT9055 (注释2) DT90055 (注释1) 时钟/日历监控与设置 (分钟/秒) DT9054 (注释2) DT90054 (注释1) 时钟/日历监控与设置 (星期) DT9057 (注释2) DT90057 (注释1) 日历时钟的年•月•日•时•分•秒•星期数据。 内置时钟可以对应到2099年,也支持闰年. 可以通过编程器或在程序中使用传输指令F0(MV) 写入数值、对日历时钟进行设置(调整时间). 时钟/日历监控与设置 (年/月) DT9056 (注释2) DT90056 (注释1) FP0 C10,C14, C16,C32 FP-e FP0 T32 描述名称地址 注释 (1) 当电池不足或被卸下(包括第一次接通电源)时, DT90053~DT90058的内容随 机变化。在时间和日期被设置之后, 这些数值将正常变化。 (2) 只适用于日历/时钟型的FP-e。 高8位 低8位 周数据 H00~H06 (BCD) —— DT90057 月数据 H00~H59 (BCD) 年数据 H00~H99 (BCD) DT90056 时数据 H00~H23 (BCD) 日数据 H01~H99 (BCD) DT90055 秒数据 H00~H59 (BCD) 分数据 H00~H59 (BCD) DT90054 小时数据 H00-H23(BCD) 分钟数据 H00-H59(BCD) 高8位 低8位 4-71 用于调整内置日历时钟的时间。 ●在程序中调整时间 将DT9058(DT90058)的 高bit置1后,变为由F0(MV) 指令写入DT9054~DT9057(DT90054~DT90057)中的 时间。 进行时间调整以后,将DT9058(DT90058) 高位清 零。 (不能执行F0(MV)以外的指令。) 〈例〉 X0:ON 时, 将时间调整为 5日12时0分0秒 注) 利用编程工具软件或手持编程器Ⅱ改写DT9054~ DT9057(DT90054~DT90057)中的数值时, 时刻被设置 为写入的新数值. 不需要向DT9058/DT90058中写入数 据。 ●调整30秒以内的偏差 将DT9058(DT90058)的 低bit置1后,向前或向后调整 使时间恰好为0秒。进行修正以后,将 DT9058(DT90058)清零。 〈例〉 X0:ON 时,修正为0秒 执行时刻为0秒~29秒时调慢、30秒~59时调快。 在上例中,如果为5分29秒,则调慢为5分0秒。如果为 5分35秒,则调快为6分0秒。 时钟/日历设置与30秒 修正 DT9058 (注释2) DT90058 (注释1) FP0 C10,C14, C16,C32 FP-e FP0 T32 描述名称地址 注释 (1) 当电池不足或被卸下(包括第一次接通电源)时, DT90053~DT90058的内容 随机变化。在时间和日期被设置之后,这些数值将正常变化。 (2) 只适用于日历/时钟型的FP-e。但对于FP-e, 不能使用30秒钟修正功能。 4-72 工程 112~127 工程 96~111 工程 80~95 工程 64~79 工程 48~63 工程 32~47 工程 16~31 高速计数器通道2目标 值 高速计数器通道2经过 值 步进 梯形图 工程 串行通信错误代码 名称 工程 0~15 - 编程口 bit0=1: 运行溢出错误 bit1=1: 帧错误 bit2=1: 奇偶校验错误 - 编程口 bit8=1: 运行溢出错误 bit9=1: 帧错误 bit10=1: 奇偶校验错误 DT9059DT90059 表示步进梯形图程序工程的启动状态。工程启动 后,该工程相对应的bit置ON。 请以2进制(BIN)显示进行监控。 0:未执行 1:正在执行 可以利用编程工具软件写入数据. DT9060DT90060 DT9061DT90061 DT9062DT90062 DT9063DT90063 DT9064DT90064 DT9065DT90065 DT9066DT90066 DT9067DT90067 存放高速计数器的经过值(24bit数据)。 在每次执行到ED指令时,自动将高速计数器的经过 值传输到DT9104、DT9105。 可以利用F1(DMV)指令写入数值. DT9104DT90104 DT9105DT90105 DT9106DT90106 存放利用高速计数器指令(F166~F170)设置的高速 计数器的目标值(24 bit数据)。 预置执行高速计数器相关指令F166~F170时各指令 所设定的目标值.只能读出,不能写入. DT9107DT90107 FP0 C10,C14, C16,C32 FP-e FP0 T32 描述地址 RS232口 错误标识 编程口 错误标识 4-73 DT9109DT90109 存放高速计数器的经过值(24bit数据)。 可以利用F1(DMV)指令写入数值. 高速计数器通道3经过值DT9108DT90108 存放利用高速计数器指令(F166~F170)设置的高 速计数器的目标值(24 bit数据)。 预置执行高速计数器相关指令F166~F170时各指 令所设定的目标值.只能读出,不能写入. DT9111DT90111 高速计数器通道2目标值DT9110DT90110 FP0 C10,C14, C16,C32 FP-e FP0 T32 描述名称地址 4-74 4.3.2 特殊数据寄存器表 FP∑ 特殊数据寄存器是储存特殊信息的单字(16位)存储区域。除了在“描述”栏中标识出“可写”的寄存器,这些寄存 器不能被写。 当FP0扩展I/O单元的安装状态与接通 电源时的状态不同时, 该单元所对应的 位变为ON. 请使用二进制显示进行监 控. ON: 异常 OFF: 正常 FP0右扩展的I/O校验错误单 元的位置 DT90010 N/AA 存放使用COM.2端口时的错误内容COM.2的通信错误标志DT90009 ──未使用DT90008 N/AN/A ──未使用DT90007 N/AA 当FPΣ的扩展智能单元发生错误时,对 应于该单元编号的位将变为ON. 请使 用二进制显示进行监控. ON: 异常 OFF: 正常 FPΣ左扩展的异常智能单元 的位置 DT90006 ──未使用DT90005 ──未使用DT90004 N/AN/A ──未使用DT90003 N/AA 当FPΣ的扩展I/O单元发生错误时,对 应于该单元编号的位将变为ON. 请使 用二进制显示进行监控. ON: 异常 OFF: 正常 FPΣ左扩展的异常I/O单元的 位置 DT90002 N/AN/A──未使用DT90001 N/AA保存发生自诊断错误时的错误代码.自诊断错误代码DT90000 可写性可读性描述名称地址 15 11 7 3 2 1 0 (位编号) 3 2 1 0 (单元编号) 15 11 7 3 2 1 0 (位编号) 3 2 1 0 (单元编号) 15 11 7 3 2 1 0 (位编号) 2 1 0 (单元编号) 4-75 N/AA 当FPΣ扩展I/O单元的安装状态与接通 电源时的状态不同时, 该单元所对应的 位变为ON. 请使用二进制显示进行监 控. ON: 异常 OFF: 正常 FPΣ左扩展的I/O校验错误单 元的位置 DT90011 N/AN/A ──未使用DT90012 ──未使用DT90013 N/AA 数据移位指令F105(BSR)或F106(BSL) 的执行结果、被移出的1digit部分存 放到bit0~bit3中. 可以利用F0(MV)指令读取或改写其中 的数值. 用于数据移位指令的运算用 辅助寄存器 DT90014 执行16bit除法指令F32(%)或F52(B%) 时,16bit余数存放到DT9015/DT90015 中。 执行32bit除法指令F33(D%)或F53(DB%) 时,32bit余数存放到DT9015~ DT9016/DT90015~DT90016中. 可以利用F0(MV)指令读取或改写其中 的数值. 用于除法运算指令的运算用 辅助寄存器 DT90015 DT90016 运行开始后、第一次发生运算错误的 程序地址存放于其中. 请以10进制显示进行监控 运算错误地址(保持型)DT90017 存放发生运算错误时的程序地址。每 次发生错误时更新内容。 在扫描开始时为0。请以10进制显示进 行监控。 运算错误地址(非保持型)DT90018 存放值每隔2.5ms自动+1.(H0~HFFFF) 2点的数值的差值(绝对值)×2.5ms=2 点间的经过值。 2.5ms振铃信号DT90019 N/AN/A ──未使用DT90020 ──未使用DT90021 N/AA 存放扫描时间的当前值. 扫描时间 = [存放数值(10进制数)]× 0.1ms (例) K50时表示5ms. 扫描时间(当前值) (*注释) DT90022 可写性可读性描述名称地址 15 11 7 3 2 1 0 (位编号) 3 2 1 0 (单元编号) 4-76 N/AA 存放扫描时间的 小值。 扫描时间 = [存放数值(10进制数)]× 0.1ms (例) K50时表示5ms。 扫描时间( 小值) (*注释) DT90023 存放扫描时间的 大值。 扫描时间 = [存放数值(10进制数)]× 0.1ms (例) K125时表示12.5ms。 扫描时间( 大值) (*注释) DT90024 存放根据ICTL指令设置的内容。 请以2进制(BIN)显示进行监控。 0: 禁止中断(被屏蔽) 1: 允许中断(非屏蔽) 中断许可状态监控寄存器 (INT0~5) DT90025 N/AN/A──未使用DT90026 N/AA 存放根据ICTL指令设置的内容。 - K0: 不使用定时中断 - K1~K3000: 0.5ms~1.5s 或10ms~ 30s 定时中断间隔 (INT24) DT90027 N/AN/A ──未使用DT90028 ──未使用DT90029 存放执行F149(MSG)指令后的指定信 息内容. 信息0DT90030 信息1DT90031 信息2DT90032 信息3DT90033 信息4DT90034 N/AA 信息5DT90035 可写性可读性描述名称地址 注释 15 11 7 3 0 (位编号) 23 19 16 (中断编号) 扫描时间只在运行状态下显示,并显示运行循环时间。在每次RUN与PROG.模 式切换时,最大值和最小值被清零。 4-77 CH1使用 CH1使用 CH0使用 CH0使用 N/AN/A──未使用DT90036 N/AA 存放在执行F96(SRC)指令时与查找数 据一致的个数. F96(SRC)查找指令的辅助运 算寄存器 DT90037 存放在执行F96(SRC)指令时第一个一 致数据的16-bit相对位置. F96(SRC)查找指令的辅助运 算寄存器 DT90038 N/AN/A──未使用DT90039 N/AA 存放可调电位器的输入数值(K0~ K1000). 可以通过程序读取其中的数 值将其用于模拟量定时器等用途. V0 →DT90040 V1 →DT90041 可调电位器输入(V0)DT90040 可调电位器输入(V1)DT90041 N/AN/A 系统使用──DT90042 系统使用──DT90043 AA 存放高速计数器的经过值(32bit数据). 执行F1指令(DMV)可以写入数值. 高速计数器 经过值 DT90044 DT90045 N/AA 存放利用高速计数器指令(F166~ F176)设置的高速计数器的目标值(32 bit数据)。 预置执行高速计数器相关指令F166~ F176时各指令所设定的目标值. 只能 用F1(DMV)指令读出,不能写入. 高速计数器 目标值 DT90046 DT90047 AA 存放高速计数器的经过值(32bit数据). 执行F1指令(DMV)可以写入数值. 高速计数器 经过值 DT90048 DT90049 存放利用高速计数器指令(F166~ F176)设置的高速计数器的目标值(32 bit数据)。 预置执行高速计数器相关指令F166~ F176时各指令所设定的目标值. 只能 用F1(DMV)指令读出,不能写入. 高速计数器 目标值 DT90050 N/AA DT90051 可写性可读性描述名称地址 4-78 AN/A 可以通过MV指令(F0)写入数值,进行高 速计数器的复位、计数禁止、高速计数 器指令的终止及清除. 控制代码设置: 通道设置 0~3: CH0~CH3 原点近旁 0:OFF 1:ON 高速计数器 指令 0:继续/1:清除 脉冲输出 0:继续/1:停止 硬件复位 0:允许/1:禁止 计数 0:允许/1:禁止 软件复位 0:不执行/1:执行 高速计数器控制标志DT90052 N/AA 日历时钟的时•分数据. 可以读出,不能写入. 高字节 低字节 小时 分钟 H00~H23 H00~H59 时钟/日历监控 (小时/分钟) DT90053 日历时钟的年•月•日•时•分•秒•星期数据。 内置时钟可以对应到2099年,也支持闰年. 可以通过编程器或在程序中使用传输指令 F0(MV)写入数值、对日历时钟进行设置(调 整时间). (参阅DT90058示例) 高字节 低字节 时钟/日历监控与设置 (分钟/秒) DT90054 时钟/日历监控与设置 (日/小时) DT90055 时钟/日历监控与设置 (年/月) DT90056 AA 时钟/日历监控与设置 (星期) DT90057 可写性可读性描述名称地址 星期数据 H00~H06──DT90057 月数据 H00~H59 年数据 H00~H99 DT90056 时数据 H00~H23 日数据 H01~H99 DT90055 秒数据 H00~H59 分数据 H00~H59 DT90054 4-79 AA 1. 调整时间和日期 将DT9058(DT90058)的 高bit置1后,变为由F0(MV) 指令写入DT90054~DT90057中的时间。 进行时间调整以后,将DT90058 高位清零。 (不能执行F0(MV)以外的指令。) 〈例〉 X0:ON 时, 将时间调整为 5日12时0分0秒 FPWIN GR 利用编程工具软件改写DT90054~DT90057中的数 值时, 时刻被设置为写入的新数值. 不需要向 DT90058中写入数据. 时钟/日历设置 与30秒修正 AA 2. 调整30秒以内的偏差 将DT9058(DT90058)的 低bit置1后, 向前或向后调 整使时间恰好为0秒. 进行修正以后, 将DT90058清 零。 〈例〉 X0:ON 时, 修正为0秒 FPWIN GR 执行时刻为0秒~29秒时调慢、30秒~59时调快。 在上例中,如果为5分29秒,则调慢为5分0秒。如果 为5分35秒,则调快为6分0秒。 DT90058 可写性可读性描述名称地址 输入0分0秒 输入12时 5日 设置时间 校正到0秒 4-80 N/AN/A存放发生通信错误时的错误代码串行通信错误代码DT90059 表示步进梯形图程序工程的启动状态。工程 启动后,该工程相对应的bit置ON。 请以2进制(BIN)显示进行监控。 (0: 未执行 1:正在执行) 例) DT90060 可以利用编程工具软件写入数据. 步进程序工程(0到15)DT90060 步进程序工程(16到31)DT90061 步进程序工程(32到47)DT90062 步进程序工程(48到63)DT90063 步进程序工程(64到79)DT90064 步进程序工程(80到95)DT90065 步进程序工程(96到111)DT90066 步进程序工程(112到127)DT90067 步进程序工程(128到143)DT90068 步进程序工程(144到159)DT90069 步进程序工程(160到175)DT90070 步进程序工程(176到191)DT90071 步进程序工程(192到207)DT90072 步进程序工程(208到223)DT90073 步进程序工程(224到239)DT90074 步进程序工程(240到255)DT90075 步进程序工程(256到271)DT90076 步进程序工程(272到287)DT90077 步进程序工程(288到303)DT90078 AA 步进程序工程(304到319)DT90079 可写性可读性描述名称地址 (位编号) (工程 编号) 4-81 表示步进梯形图程序工程的启动状态。工程 启动后,该工程相对应的bit置ON。 请以2进制(BIN)显示进行监控。 (0: 未执行 1:正在执行) 例) DT90060 可以利用编程工具软件写入数据. 步进程序工程(320到335)DT90080 步进程序工程(336到351)DT90081 步进程序工程(352到367)DT90082 步进程序工程(368到383)DT90083 步进程序工程(384到399)DT90084 步进程序工程(400到415)DT90085 步进程序工程(416到431)DT90086 步进程序工程(432到447)DT90087 步进程序工程(448到463)DT90088 步进程序工程(464到479)DT90089 步进程序工程(480到495)DT90090 步进程序工程(496到511)DT90091 步进程序工程(512到527)DT90092 步进程序工程(528到543)DT90093 步进程序工程(544到559)DT90094 步进程序工程(560到575)DT90095 步进程序工程(576到591)DT90096 步进程序工程(592到607)DT90097 步进程序工程(608到623)DT90098 步进程序工程(624到639)DT90099 AA 可写性可读性描述名称地址 (位编号) (工程 编号) 4-82 表示步进梯形图程序工程的启动状态. 工程启 动后, 该工程相对应的bit置ON. 请以2进制(BIN)显示进行监控。 (0: 未执行 1:正在执行) 例) DT90100 可以利用编程工具软件写入数据. 步进程序工程(944到959)DT90119 步进程序工程(960到975)DT90120 步进程序工程(976到991)DT90121 步进程序工程(640到655)DT90100 步进程序工程(656到671)DT90101 步进程序工程(672到687)DT90102 步进程序工程(688到703)DT90103 步进程序工程(704到719)DT90104 步进程序工程(720到735)DT90105 步进程序工程(736到751)DT90106 步进程序工程(752到767)DT90107 步进程序工程(768到783)DT90108 步进程序工程(784到799)DT90109 步进程序工程(800到815)DT90110 步进程序工程(816到831)DT90111 步进程序工程(832到847)DT90112 步进程序工程(848到863)DT90113 步进程序工程(864到879)DT90114 步进程序工程(880到895)DT90115 步进程序工程(896到911)DT90116 步进程序工程(912到927)DT90117 步进程序工程(928到943)DT90118 步进程序工程(992到999) (高位: 未使用) DT90122 AA 可写性可读性描述名称地址 (位编号) (工程编号) 4-83 N/AN/A ──未使用DT90123~ DT90125 系统使用强制输入/输出单元编号DT90126 ──未使用DT90127~ DT90139 N/AA 执行接收操作的次数MEWNET-W0 PC-link 状态 DT90140 两次接收间隔的当前值: 寄存器中的数值×2.5ms DT90141 两次接收间隔的 小值: 寄存器中的数值×2.5ms DT90142 两次接收间隔的 大值: 寄存器中的数值×2.5ms DT90143 执行发送操作的次数DT90144 两次发送间隔的当前值: 寄存器中的数值×2.5ms DT90145 两次发送间隔的 小值: 寄存器中的数值×2.5ms DT90146 两次发送间隔的 大值: 寄存器中的数值×2.5ms DT90147 N/AN/A──未使用DT90148~ DT90155 N/AA PC-link的接收间隔测定用工作区.MEWNET-W0 PC-link 状态 DT90156 PC-link的发送间隔测定用工作区DT90157 N/AN/A ──未使用DT90158 DT90159 存放PC-link的站号MEWNET-W0 PC-link 站号 DT90160 N/AA 存放PC-link的错误内容MEWNET-W0 PC-link 链接错误标志 DT90161 可写性可读性描述名称地址 4-84 N/AA 监控由DT90052指定的数据 原点近旁 0:OFF 1:ON 高速计数器 指令 0:继续/1:清除 脉冲输出 0:继续/1:停止 硬件复位 0:允许/1:禁止 计数 0:允许/1:禁止 软件复位 0:不执行/1:执行 CH0高速计数器控制 标志监控 DT90190 CH1高速计数器控制 标志监控 DT90191 CH2高速计数器控制 标志监控 DT90192 CH3高速计数器控制 标志监控 DT90193 N/AN/A──未使用DT90162- DT90169 N/AA PLC内部链接地址的重复目标MEWNET-W0 PC-link 状态 DT90170 令牌丢失次数DT90171 检测到多重令牌的次数DT90172 信号丢失次数DT90173 接收到未定义指令的次数DT90174 在接收过程中发生和校验错误的次数DT90175 在接收到的数据中发生格式错误的次数DT90176 发生传输错误的次数DT90177 发生处理程序错误的次数DT90178 发生主站重叠的次数DT90179 N/AN/A──未使用DT90180- DT90189 N/AN/A──未使用DT90194- DT90199 可写性可读性描述名称地址 4-85 CH3使用 CH3使用 CH2使用 CH2使用 AA 存放高速计数器的经过值(32bit数据). 执行F1指令(DMV)可以写入数值。 高速计数器 经过值 DT90200 DT90201 N/AA 存放利用高速计数器指令(F166~F176)设 置的高速计数器的目标值(32 bit数据)。 预置执行高速计数器相关指令F166~F176 时各指令所设定的目标值. 只能用F1(DMV) 指令读出,不能写入。 高速计数器 目标值 DT90202 DT90203 AA 存放高速计数器的经过值(32bit数据). 执行F1指令(DMV)可以写入数值。 高速计数器 经过值 DT90204 DT90205 N/AA 存放利用高速计数器指令(F166~F176)设 置的高速计数器的目标值(32 bit数据)。 预置执行高速计数器相关指令F166~F176 时各指令所设定的目标值. 只能用F1(DMV) 指令读出,不能写入。 高速计数器 目标值 DT90206 DT90207 N/AN/A── 未使用DT90208- DT90218 可写性可读性描述名称地址 4-86 系统寄存器 46和47 系统寄存器 44和45 系统寄存器 42和43 系统寄存器 40和41 系统寄存器 46和47 系统寄存器 44和45 系统寄存器 42和43 系统寄存器 40和41 系统寄存器 46和47 系统寄存器 44和45 系统寄存器 42和43 系统寄存器 40和41 系统寄存器 46和47 系统寄存器 44和45 系统寄存器 42和43 系统寄存器 40和41 系统寄存器 46和47 系统寄存器 44和45 系统寄存器 42和43 系统寄存器 40和41 0: 单元号(站号)1~8 1: 单元号(站号)9~16 用于DT90200~DT90251的 单元号(站号)选择 DT90219 系统寄存器设置的内容属于不同单元编 号的PLC内部链接功能, 存储内容如下. 例) 当DT90219为0时 PC-link单元 号(站号)1或 9 DT90220 DT90221 DT90222 DT90223 PC-link单元 号(站号)2或 10 DT90224 DT90225 DT90226 DT90227 PC-link单元 号(站号)3或 11 DT90228 DT90229 DT90230 DT90231 PC-link单元 号(站号)4或 12 DT90232 DT90233 DT90234 DT90235 PC-link单元 号(站号)5或 13 DT90236 DT90237 DT90238 N/AA DT90239 可写性可读性描述名称地址 高字节 低字节 系统寄存器 40,42,44和 46的设置内容 系统寄存器 41,43,45和 47的设置内容 DT90220~ DT90223 单元(站) 号1. 4-87 N/AN/AN/A──未使用DT90252- DT90255 N/AA 系统寄存器设置的内容属于不同单元编 号的PLC内部链接功能, 存储内容如下. 例) 当DT90219为0时 系统寄存器 46和47 PC-link单元 号(站号)8或 16 DT90251 系统寄存器 44和45 系统寄存器 42和43 系统寄存器 40和41 系统寄存器 46和47 系统寄存器 44和45 系统寄存器 42和43 系统寄存器 40和41 系统寄存器 46和47 系统寄存器 44和45 系统寄存器 42和43 系统寄存器 40和41 由系统使用 PC-link单元 号(站号)6或 14 DT90240 DT90241 DT90242 DT90243 PC-link单元 号(站号)7或 15 DT90244 DT90245 DT90246 DT90247 用于COM.口的单元(站)号 切换监控 DT90248 DT90249 DT90250 DT90256 N/AA 可写性可读性描述名称地址 高字节 低字节 系统寄存器 40,42,44和 46的设置内容 系统寄存器 41,43,45和 47的设置内容 DT90240~ DT90243 单元(站) 号6. 4-88 名称 —————————— 未使用 —— DT9020 DT9021 AAAAA 存放值每隔2.5ms自动 +1。 (H0~HFFFF) 2点的数值的差值(绝对 值)×2.5ms=2点间的经过 值。 2.5ms振铃信号DT9019 A (*) A (*) A (*) A (*) A (*) 存放发生运算错误时的地 址。每次发生错误时更新内 容。 在扫描开始时为0。请以10进 制显示进行监控。 运算错误地址 (非保持型) DT9018 A (*) A (*) A (*) A (*) A (*) 运行开始后、第一次发生运 算错误的地址存放于其中. 请以10进制显示进行监控 运算错误地址 (保持型) DT9017 AN/AAAN/A DT9016 AAAAA执行16bit除法指令F32(%)或 F52(B%)时,16bit余数存放 到DT9015/DT90015中。 执行32bit除法指令F33(D%) 或F53(DB%)时,32bit余数存 放到DT9015~ DT9016/DT90015~DT90016中. 运算用辅助寄存器DT9015 AAAAA 数据移位指令F105(BSR)或 F106(BSL)的执行结果、被移 出的1digit部分存放到 bit0~bit3中. 运算用辅助寄存器DT9014 AAAAA 保存发生自诊断错误时的错 误代码。 请以10进制显示进行监控。 自诊断错误代码DT9000 C20/ C32C16C56/ C72 C24/ C40 C14/ C16 FP-MFP1 适用机型描述地址 注释 特殊数据寄存器DT9017和DT9018对CPU Ver.2.7及以上版本可用. 4.3.3 特殊数据寄存器(用于FP-M/FP1) 4-89 AAAAA 存放扫描时间的 小值。 扫描时间 = [存放数值(10进制 数)]×0.1ms (例) K50时表示5ms。 扫描时间 ( 小值) (注释1) DT9023 AAAAA 存放扫描时间的 大值。 扫描时间 = [存放数值(10进制 数)]×0.1ms (例) K125时表示12.5ms。 扫描时间 ( 大值) (注释1) DT9024 AN/AAAN/A 存放根据ICTL指令设置的内 容。 请以2进制(BIN)显示进行监控。 0: 禁止中断(被屏蔽) 1: 允许中断(非屏蔽) 中断许可状态监 控寄存器 (INT0到7) DT9025 (注释2) ——————————未使用——DT9026 名称 AN/AAAN/A 存放根据ICTL指令设置的内 容。 - K0: 不使用定时中断 - K1~K3000: 10ms~30s 定时中断间隔 (INT24) DT9027 (注释2) AAAAA 存放扫描时间的当前值。 扫描时间 = [存放数值(10进制 数)]×0.1ms (例) K50时表示5ms。 扫描时间 (当前值) (注释1) DT9022 C20/ C32C16C56/ C72 C24/ C40 C14/ C16 FP-MFP1 可用性描述地址 注释 (1) 扫描时间只在运行状态下显示,并显示运行循环时间。在每次RUN与PROG.模 式切换时,最大值和最小值被清零。 (2) 系统使用。 15 11 7 3 0 7 0 4-90 ——————————未使用——DT9029 AN/AAAN/A执行F149(MSG)指令后的 指定信息内容分别存放于. 信息0DT9030(*注释) AN/AAAN/A信息1DT9031(*注释) AN/AAAN/A信息2DT9032(*注释) AN/AAAN/A信息3DT9033(*注释) AN/AAAN/A信息4DT9034(*注释) AN/AAAN/A信息5DT9035(*注释) ——————————未使用——DT9036 AAAAA存放在执行F96(SRC)指令 时与查找数据一致的个数. F96(SRC)指令 工作区1 DT9037 AAAAA 存放在执行F96(SRC)指令 时第一个一致数据的16-bit 相对位置. F96(SRC)指令 工作区2 DT9038 ——————————未使用——DT9039 AAAAA旋转可调电位器的输入值 (K0~K255) - FP1 C14,C16: V0 → DT9040 - FP1 C24/FP-M C20,C32: V0 → DT9040, V1 → DT9041 - FP-M C16: V0 → DT9040, V1 → DT9041, V2 → DT9042 - FP1 C40,C56,C72: V0 → DT9040, V1 → DT9041, V2 → DT9042, V3 → DT9043 手动转盘设置 寄存器(V0) DT9040 AAAAN/A手动转盘设置 寄存器(V1) DT9041 N/AAAAN/A手动转盘设置 寄存器(V2) DT9042 N/AN/AAN/AN/A 手动转盘设置 寄存器(V3) DT9043 AAAAA存放高速计数器的经过值 (24bit数据)。 执行DMV指令(F1)可以写 入数值。 内置高速计数 器经过值 DT9044 AAAAADT9045 AAAAA存放利用高速计数器指令 (F162~F164)设置的高速 计数器的目标值(24 bit数 据). DT9046 名称 AAAAA 内置高速计数 器目标值 DT9047 ——————————未使用——DT9028 C20/ C32C16C56/ C72 C24/ C40 C14/ C16 FP-MFP1 可用性描述地址 注释 系统使用 4-91 AAAAA 可以通过MV指令(F0)写入数值, 进行高速计数器的复位、计数禁 止、高速计数器指令(F162~ F165)的终止及清除. 控制代码设置: 高速计数器指令 (0:继续 / 1:清除) 硬件复位 (0:允许 / 1:禁止) 计数 (0:允许 / 1:禁止) 软件复位 (0:执行 / 1:不执行) 系统寄存器400的设置被存放在 高16bit. <模式设置> 由系统寄存器400设置 (H0~H8) <控制代码> 由F0(MV)指令输入 (H0~HF) 内置高速计数器 控制标志 DT9052 A (*) A (*) A (*) A (*)N/A 日历时钟的时•分数据. 可以读出,不能写入. 时钟/日历监控 (小时/分钟) DT9053 名称 —————————— 未使用 —— DT9048- DT9051 C20/ C32C16C56/ C72 C24/ C40 C14/ C16 FP-MFP1 可用性描述地址 注释 只适用于C型FP-M C20,C32和FP1 C24C,C40C,C56C和C72C 0 0 0 0 0 0 0 0 0 0 0 0 _ _ _ _ 15 11 7 3 0 7 0 高8位 低8位 小时数据 H00到 H23(BCD) 分钟数据 H00到 H59(BCD) 4-92 A (*) N/A A (*) A (*) N/A 时钟/日历监控与 设置 (日/小时) DT9055 A (*) N/A A (*) A (*) N/A 时钟/日历监控与 设置 (年/月) DT9056 A (*) N/A A (*) A (*) N/A 时钟/日历监控与 设置 (星期) DT9057 名称 A (*) N/A A (*) A (*) N/A 日历时钟的年•月•日•时•分•秒• 星期数据. 内置时钟可以对应到2099年, 也支持闰年. 对CPU Ver.2.1或更高版本, 可 以通过编程器或在程序中使用 传输指令F0(MV)写入数值、对 日历时钟进行设置(调整时间). 时钟/日历监控与 设置 (分钟/秒) DT9054 C20/ C32C16C56/ C72 C24/ C40 C14/ C16 FP-MFP1 可用性描述地址 注释 只适用于C型FP-M C20,C32和FP1 C24C,C40C,C56C和C72C 高8位 低8位 周数据 H00~ H06 (BCD) —— DT 9057 月数据 H00~ H59 (BCD) 年数据 H00~ H99 (BCD) DT 9056 时数据 H00~ H23 (BCD) 日数据 H01~- H99 (BCD) DT 9055 秒数据 H00~ H59 (BCD) 分数据 H00~ H59 (BCD) DT 9054 4-93 名称 A (*) N/A A (*) A (*) N/A 用于调整内置日历时钟的时间。 在程序中调整时间(CPU Ver2.1 或更高版本) 将DT9058(DT90058)的 高bit 置1后,变为由F0(MV)指令写入 DT9054~DT9057(DT90054~ DT90057)中的时间。 进行时间调整以后,将 DT9058(DT90058) 高位清 零。 (不能执行F0(MV)以外的指令。) 〈例〉 X0:ON 时, 将时间调整为 5日12 时0分0秒 1)输入0分和0秒 2)输入12时和5日 3)设置时间 如果利用用编程工具软件的数据 监控功能改写DT9054~DT9057 中的数值时, 时刻被设置为写入 的新数值. 不需要向 DT9058/DT90058中写入数据。 时钟/日历设置与 30秒修正 DT9058 C20/ C32C16C56/ C72 C24/ C40 C14/ C16 FP-MFP1 可用性描述地址 注释 只适用于C型FP-M C20,C32和FP1 C24C,C40C,C56C和C72C 4-94 A (*1) N/A A (*1) A (*1) N/A 调整30秒以内的偏差 将DT9058(DT90058)的 低bit 置1后,向前或向后调整使时 间恰好为0秒。进行修正以 后,将DT9058(DT90058)清 零。 〈例〉 X0:ON 时,修正为0秒 执行时刻为0秒~29秒时调 慢、30秒~59时调快。 在上例中,如果为5分29秒, 则调慢为5分0秒。如果为5分 35秒,则调快为6分0秒。 时钟/日历设 置与30秒修 正 DT9058 A (*1) N/A A (*1) N/A A (*1) 高位8bit: RS232C端口的错误 代码 低位8bit: 编程口的错误代码 串行通信错 误标志 DT9059 (*注释2) 名称 C20/ C32C16C56/ C72 C24/ C40 C14/ C16 FP-MFP1 可用性描述地址 注释 1) 只适用于C型FP-M C20,C32和FP1 C24C,C40C,C56C和C72C 2) 系统使用 修正到0秒 4-95 工程 112~127 工程 96~111 工程 80~95 工程 64~79 工程 48~63 工程 32~47 工程 16~31 工程 0~15 AAAAA 表示步进梯形图程序工程 的启动状态。工程启动 后,该工程相对应的bit置 ON。 请以2进制(BIN)显示进行 监控。 0:未执行 1:正在执行 可以利用编程工具软件写 入数据. 步进 梯形图 工程 DT9060 AAAAA DT9061 AAAAA DT9062 AAAAA DT9063 AAAAN/A DT9064 AAAAN/A DT9065 AAAAN/A DT9066 名称 AAAAN/A DT9067 C20/ C32C16C56/ C72 C24/ C40 C14/ C16 FP-MFP1 可用性描述地址 DT 9060 4-96 AN/AN/A 用于存储来自A/D转换板卡或模拟量I/O板卡的 转换后的数字量. 各模拟量控制板卡的数字转换范围如下: 当安装了A/D转换板卡时 转换数字值的范围(分辨率10bit) K0~K999(0~20mA/0~5V/0~10V) 如果输入的模拟量数据超出模拟量的 大值 (20mA/5V/10V), 则数字量数值 大为1023. 但是应确保输入的电压或电流在有效转换范围 之内,以免损坏系统. 当安装了模拟量I/O板卡时 转换数字值的范围(分辨率8bit) K0~K255(0~20mA/0~5V/0~10V) 即使输入的模拟量数据超出指定的范围, 也不 能使用超出K0~K255的数字量数值. 但是应确保输入的电压或电流在有效转换范围 之内,以免损坏系统. 应使用F0(MV)指令将存储在这些特殊数据寄存 器中的数据传输到其他数据寄存器. 通道0模拟量控 制板No.0 的转换后 的数字量 DT9080 通道1DT9081 通道2DT9082 通道3DT9083 AN/AN/A 通道0模拟量控 制板No.1 的转换后 的数字量 DT9084 通道1DT9085 通道2DT9086 通道3DT9087 AN/AN/A 通道0模拟量控 制板No.2 的转换后 的数字量 DT9088 通道1DT9089 通道2DT9090 通道3DT9091 N/A 通道0模拟量控 制板No.3 的转换后 的数字量 DT9092 通道1DT9093 通道2DT9094 通道3 名称 AN/A DT9095 C20/ C32C16 FP-M FP1 可用性描述地址 4-97 AN/AN/A 存放用于从D/A转换板卡或模拟量I/O板卡输 出模拟量的指定数字量. 当安装了D/A转换板卡时 指定用于模拟量输出的数字量数值的范围 (分辨率10bit) K0~K999(0~20mA/0~5V/0~10V) 应确保指定的数据在K0~K999范围内 - 如果指定的数据在K1000~K1023范围内, 则输出的模拟量值略大于 大转换值 (20mA/5V/10V). - 如果指定数据超出K0~K1023的范围, 则 数据的bit10~bit15的内容无效. <例> 如果输入K-24, 则输出的模拟量等同于K999. 当输入K-24时的数据构成如下: bit10~bit15的数据无效. 当安装了模拟量I/O板卡时 指定用于模拟量输出的数字量数值的范围 (分辨率8bit) K0~K255(0~20mA/0~5V/0~10V) 应确保指定的数据在K0~K255范围内 - 如果指定数据超出K0~K255的范围, 则数 据的bit8~bit15的内容无效. <例> 如果输入K-1, 则输出的模拟量等同于K255. 当输入K-1时的数据构成如下: bit10~bit15的数据无效. 应使用F0(MV)指令将存储在这些特殊数据 寄存器中的数据传输到其他数据寄存器. 通道0由智能板 卡№0输出 的D/A转换 值 DT9096 通道1DT9097 AN/AN/A 通道0由智能板 卡№1输出 的D/A转换 值 DT9098 通道1DT9099 AN/AN/A 通道0由智能板 卡№2输出 的D/A转换 值 DT9100 通道1DT9101 通道0DT9102 通道1 AN/AN/A 由智能板 卡№3输出 的D/A转换 值 DT9103 名称 C20/ C32C16 FP-M FP1 可用性描述地址 bit位置 二进制数据 1 1 1 1 1 1 1 1 1 1 1 0 0 1 1 1 ↓ K999 15 · · 12 11 · · 8 7 · · 4 3 · · 0 4-98 AN/AN/A 存放FP-M高速计数器板卡的数据. 目标值0和1、经过值、捕捉值按2进制处 理, 数值范围K-8388608~K8388607. 应使用F1(DMV)指令将这些特殊数据寄 存器中的数据传输到其他寄存器. 当修改这些特殊数据寄存器中的数据时, 应确保指定的数据在 K-8388608~ K8388607的范围内. 如果输入的数据超出上述范围, 则该数据 的bit24~bit31(32bit的高16bit的bit8~ bit15)无效. <例> 如果指定K2147483647, 则高速计数器按 照K-8388608动作. 当输入K2147483647时, 数据构成如下: 数据的bit24~bit31无效. 通道0高速计数 器板卡的 目标值0 DT9104 DT9105 高速计数 器板卡的 目标值1 DT9106 DT9107 高速计数 器板卡的 经过值 DT9108 DT9109 高速计数 器板卡的 捕捉值 DT9110 DT9111 AN/AN/A 通道1高速计数 器板卡的 目标值0 DT9112 DT9113 高速计数 器板卡的 目标值1 DT9114 DT9115 高速计数 器板卡的 经过值 DT9116 DT9117 高速计数 器板卡的 捕捉值 DT9118 DT9119 AN/AN/A 利用F0(MV)指令通过数据寄存器DT9120 控制高速计数器板卡. 高速计数器板卡控制寄存器DT9120 名称 C20/ C32C16 FP-M FP1 可用性描述地址 1)CH0目标值0输出模式 2)CH0内部复位控制(1:复位) 3)CH0外部复位控制(1:禁止) 4)CH0[目标值=经过值]输出控制(1:禁止) 5)CH0目标值设置(1:设置) 6)BCD/BIN切换 CH0/CH1(0:BCD 1:BIN) 7)CH1目标值0输出模式 8)CH1内部复位控制(1:复位) 9)CH1外部复位控制(1:禁止) 10)CH1[目标值=经过值]输出控制(1:禁止) 11)CH1目标值设置(1:设置) 高16位区 低16位区 11 10 9 8 7 6 5 4 3 2 1 4-99 AN/AN/A 输出模式: 当经过值等于目标值时,输出变为ON或OFF. 各对应位分别指定当经过值等于目标值时的 输出变化.如果改变输出模式,则应重新设置 目标值. bit数据 0: OFF→ON 1: ON→OFF 外部复位置控制bit: 当bit3和bit11为ON时, 外部复位输入 (RST.0/RST.1)无效. 可以利用将外部复位使能输入 (RST.E0/RST.E1)变为ON, 使外部复位置输 入信号(RST.0/RST.1)有效. 外部复位输入 (RST.0/RST.1)有效是: - 当外部复位使能输入信号处于ON状态时, 外部复位输入. - 当外部复位使能输入信号变为OFF后的第1 个外部复位输入. 高速计数器板卡控制寄 存器 DT9120 名称 C20/ C32C16 FP-M FP1 可用性描述地址 外部复位控制字 字位3-11 外部复位输入 RST.0/RST.1 复位输入无效 外部复位控制字 字位3-11 外部复位输入 RST.0/RST.1 外部复位使能输入 RST.0/RST.1 复位输入有效 输出11目标值13 输出10目标值0 1 2 输出01目标值11 输出00目标值0 0 0 相应 输出 相应 目标值 通道位 4-100 AN/AN/A 目标值设置: 预置高速计数器板卡的目标值时,首先将设 定值传输到用于目标值的特殊数据寄存器. 然后将目标值设置bit从0变为1. 当检测到该 数据位的上升沿时, 对设定值进行更新. 因此, 如果该数据位已为1, 则应先将其置为0, 再 从0变为1. 数制的选择: 该数据位用于选择高速计数器板卡的数据形 式.如果该位设置为0,数据的计数值采用 BCD码形式. FP-M通常都采用二进制的数值, 因此建议数据使用二进制形式的. 高速计数器板卡控制寄 存器 DT9120 AN/AN/A 存放输入和输出的条件以及高速计数器板卡 的错误代码. 高速计数器板卡状态寄 存器 DT9121 名称 C20/ C32C16 FP-M FP1 可用性描述地址 1) CH0外部复位许可(RST.E0) [1:允许复位] 2) CH0一致输出禁止(O.INH0输入) [0:允许 1:禁止] 3) CH1外部复位许可(RST.E1) [1:允许复位] 4) CH1一致输出禁止(O.INH1输入) [0:允许 1:禁止] 5) CH0目标值0=经过值标志 [1:一致] 6) CH0目标值1=经过值标志 [1:一致] 7) CH1目标值0=经过值标志 [1:一致] 8) CH1目标值1=经过值标志 [1:一致] 9) 错误代码(参阅次页) 10) 错误标志 [1:发生了错误] 10 9 8 7 6 5 4 3 2 1 4-101 AN/AN/A “输出禁止”输入: 该输入禁止外部输出,即使高速计数器由DT9120设 置为允许输出模式. 当此输入变为ON时, 即使经过 值与设定值相等,高速计数器板卡的输出也不变化. 错误代码: 高速计数器板卡 状态寄存器 DT9121 名称 C20/ C32C16 FP-M FP1 可用性描述地址 1 0 0 0 bit 8 0 0 1 0 bit 10 0 1 0 0 bit 9 bit 11 BCD错误 CH0上溢出/下溢出 CH1上溢出/下溢出 看门狗定时期错误 0 0 0 1 错误内容 4-102 MEWNET-TR通 信异常主单元 (槽号№16~31) (适用机型: FP3/FP10SH) DT90003DT9003 异常I/O插槽位置 (槽号№0~15) (适用机型: FP2/FP2SH) 异常I/O插槽位置 (槽号№16~31) (适用机型: FP2/FP2SH) 可以监控安装有异常单元的插槽号. 当检测到以下错误 时, 对应的位被置为”1”(ON). MEWNET-TR主单元通信错误 当发送主单元(Transmitter Master Unit) MEWNET-TR 网络的通信状态发生异常时, 安装主单元的插槽所对应的位变为ON. 请以2进制显示(BIN)进行监控. (1:异常MEWNET-TR主单元, 0:正常) 异常I/O插槽位置 I/O单元中发生异常时,所安装的插槽的对应位被置ON. 请以2进制显示(BIN)进行监控. (1:异常, 0:正常) MEWNET-TR通 信异常主单元(槽 号№0~15) (适用机型: FP3/FP10SH) DT90002DT9002 未使用 —— DT90001DT9001 保存发生自诊断错误时的错误代码. 请以10进制显示进行监控. 自诊断错误代码DT90000DT9000 FP2/FP2S/ FP10SH FP-C/FP3 描述名称地址 4.3.4 特殊数据寄存器(用于FP-C/FP2/FP2SH/FP3/FP10SH) bit位置 插槽编号 DT9002/DT90002 15 · · 12 11 · · 8 7 · · 4 3 · · 0 15 · · 12 11 · · 8 7 · · 4 3 · · 0 bit位置 插槽编号 DT9003/DT90003 31 · · 28 27 · · 24 23 · · 20 19 · · 16 15 · · 12 11 · · 8 7 · · 4 3 · · 0 4-103 检测到智能单元处于异常状态后,将该槽所对应的位变为 ON. 请以2进制显示(BIN)进行监控. (1:异常智能单元, 0:正常智能单元) 异常智能单元 (槽号№0~15) DT90006DT9006 异常智能单元 (槽号№16~31) DT90007DT9007 当I/O单元的安装状态与接通电源时的状态不同时,该槽所 对应的位变为ON. 请以2进制显示(BIN)进行监控. (1:错误, 0:正常) I/O校验异常单元 (槽号№0~15) DT90010DT9010 I/O校验异常单元 (槽号№16~31) DT90011DT9011 数据移位指令F105(BSR)/P105(PBSR)或 F106(BSL)/P106(PBSL)的执行结果、被移出的1digit部分存 放到bit 0~bit 3中 运算用辅助寄存 器 DT90014DT9014 执行16bit除法指令F32(%)/P32(P%)或F52(B%)/P52(PB52) 时,16bit余数存放到DT9015中. 执行32bit除法指令F33(D%)/P33(PD%)或 F53(DB%)/P53(PDB%)时,32bit余数存放到DT9015~ DT9016中. 运算用辅助寄存 器 DT90015DT9015 DT90016DT9016 运行开始后、第一次发生错误的地址存放于其中. 请以10进制显示进行监控. (相关参考: DT90257) 运算错误发生地 址(保持型) DT90017DT9017 存放发生运算错误时的地址.每次发生错误时更新内容.在扫 描开始时为0. 请以10进制显示进行监控. (相关参考: DT90258) 运算错误发生地 址(非保持型) DT90018DT9018 存放值每隔2.5ms自动 +1.(H0~HFFFF) 2点的数值的差值(绝对值)×2.5ms=2点间的经过值. DT90019DT9019 FP2/FP2S/ FP10SH FP-C/FP3 描述名称地址 bit位置 插槽编号 DT9006/DT90006 15 · · 12 11 · · 8 7 · · 4 3 · · 0 15 · · 12 11 · · 8 7 · · 4 3 · · 0 bit位置 插槽编号 DT9007/DT90007 31 · · 28 27 · · 24 23 · · 20 19 · · 16 15 · · 12 11 · · 8 7 · · 4 3 · · 0 bit位置 插槽编号 DT9010/DT90010 15 · · 12 11 · · 8 7 · · 4 3 · · 0 15 · · 12 11 · · 8 7 · · 4 3 · · 0 bit位置 插槽编号 DT9011/DT90011 31 · · 28 27 · · 24 23 · · 20 19 · · 16 15 · · 12 11 · · 8 7 · · 4 3 · · 0 4-104 所表示的扫描时间仅 在RUN模式时表示 运算周期时间. 大值、 小值在进 行RUN模式与 PROG.模式切换时 被执行一次清零. 存放由系统寄存器No 0.中所设置的PLC程序区 后地 址. 程序 大值 (适用机型: FP3) ——DT9020 以10进制形式存放程序容量. (例) K30:约30K步 K60:约60K步(扩展存储器时) 程序容量表示 (适用机型: FP10SH) DT90020—— 以10进制形式存放程序容量. (例) K16: 约16K步(K15870) K32: 约32K步(扩展存储器时) 程序容量表示 (适用机型: FP2) 存放文件寄存器的 后( 大)№.文件寄存器 大 地址 (适用机型: FP3) ——DT9021 (*注释) 存放文件寄存器的 后( 大)№.文件寄存器 大 地址 (适用机型: FP2/FP10SH) DT90021 (*注释) 存放扫描时间的当前值. 扫描时间 = [存放数值(10进制 数)]×0.1ms (例) K50时表示5ms以内. 扫描时间 (当前值) DT90022DT9022 存放扫描时间的 小值. 扫描时间 = [存放数值(10进制 数)]×0.1ms (例) K50时表示5ms. 扫描时间 ( 小值) DT90023DT9023 存放扫描时间的 大值. 扫描时间 = [存放数值(10进制 数)]×0.1ms (例) K125时表示125ms. 扫描时间 ( 大值) DT90024DT9024 FP2/FP2SH/ FP10SH FP-C/FP3 描述名称地址 注释 系统使用. 4-105 存放根据ICTL指令设置的内容. 请以2进制(BIN)显示进行监控. 0: 禁止中断(屏蔽) 1: 允许中断(非屏蔽) 来自中断单元的 中断许可状态 (INT0~15) (FP2不使用) DT90025 (*注释) DT9025 (*注释) 存放根据ICTL指令设置的内容. 请以2进制(BIN)显示进行监控. 0: 禁止中断(屏蔽) 1: 允许中断(非屏蔽) 来自智能单元的 中断许可状态 (INT16~23) (FP2不使用) DT90026DT9026 (*注释) 存放根据ICTL指令设置的内容. - K0: 不使用定时中断 - K1~K3000: 10ms~30s 或 0.5ms~1.5s 定时中断的中断 间隔(INT24) DT90027 (*注释) DT9027 (*注释) 存放由编程工具软件登录的内容. K0: 根据F155(SMPL)/P155(PSMPL)指令采样. K1~K3000(×10ms): 10ms~30s 采样过程间隔DT90028 (*注释) DT9028 (*注释) 存放测试运行中暂停时的地址(K常数).断点地址DT90029 (*注释) DT9029 (*注释) 执行F149(MSG)/P149(PMSG)指令时,指定的信息内容 存放在这些特殊数据寄存器中. 信息0DT90030 (*注释) DT9030 (*注释) 信息1DT90031 (*注释) DT9031 (*注释) 信息2DT90032 (*注释) DT9032 (*注释) 信息3DT90033 (*注释) DT9033 (*注释) 信息4DT90034 (*注释) DT9034 (*注释) 信息5DT90035 (*注释) DT9035 (*注释) FP2/FP2SH/ FP10SH FP-C/FP3 描述名称地址 注释 系统使用. bit位置 中断程序 DT9025/DT90025 15 · · 12 11 · · 8 7 · · 4 3 · · 0 15 · · 12 11 · · 8 7 · · 4 3 · · 0 bit位置 中断程序 DT9026/DT90026 —— —— 23 · · 20 19 · · 16 15 · · 12 11 · · 8 7 · · 4 3 · · 0 4-106 存放RMRD/RMWT指令(F152,F153)的执行结果、异常 时的错误代码. 正常结束时为0. F152(RMRD)/P1 52(PRMRD)和 F153(RMWT)/P1 53(PRMWT)指令 结束的代码 DT90036DT9036 当母板中安装有异常单元时,保存该单元的插槽№. 请以10进制数显示进行监控. 异常单元显示 存放在执行F96(SRC)/P96(PSRC)指令时与查找数据一 致的个数. 查找指令 F96(SRC)/P96(P SRC)用工作区1 DT90037DT9037 存放在执行F96(SRC)/P96(PSRC)指令时第一个一致数 据的相对位置. 查找指令 F96(SRC)/P96(P SRC)用工作区2 DT90038DT9038 存放SEND/RECV指令(F145,F146)的执行结果、异常 时的错误代码. 正常结束时为0. F145(SEND)/P14 5(PEND)和 F146(RECV)/P14 6(PRECV)指令的 结束代码 DT90039DT9039 FP2/FP2S/ FP10SH FP-C/FP3 描述名称地址 4-107 时钟/日历监控与设 置 (年/月) DT90056 (*注释) DT9056 日历时钟的时•分数据. 可以读出,不能写入. 时钟/日历监控 (小时/分钟) DT90053 (*注释) DT9053 日历时钟的年•月•日•时•分•秒•星期数据. 内置时钟可以对应到2099年,也支持闰年. 可以通过编程器或在程序中使用传输指令F0(MV)写 入数值、对日历时钟进行设置(调整时间). 时钟/日历监控与设 置 (分钟/秒) DT90054 (*注释) DT9054 时钟/日历监控与设 置 (日/小时) DT90055 (*注释) DT9055 时钟/日历监控与设 置 (星期) DT90057 (*注释) DT9057 FP2/FP2H/ FP10SH FP-C/FP3 描述名称地址 注释 使用FP2时,需要存储扩展单元. 高8位 低8位 星期数据 H00-H06 (BCD) —— DT9057/ DT90057 月数据 H00-H59 (BCD) 年数据 H00-H99 (BCD) DT9056/ DT90056 时数据 H00-H23 (BCD) 日数据 H01-H99 (BCD) DT9055/ DT90055 秒数据 H00-H59 (BCD) 分数据 H00-H59 (BCD) DT9054/ DT90054 小时数据 H00-H23(BCD) 分钟数据 H00-H59(BCD) 高8位 低8位 4-108 用于调整内置日历时钟的时间。 ●在程序中调整时间 将DT9058(DT90058)的 高bit置1后,变为由 F0(MV)指令写入DT9054~DT9057(DT90054~ DT90057)中的时间。 进行时间调整以后,将DT9058(DT90058) 高位清 零。 (不能执行F0(MV)以外的指令。) 〈例〉 X0:ON 时, 将时间调整为 5日12时0分0秒 注) 利用编程工具软件或手持编程器Ⅱ改写 DT9054~DT9057(DT90054~DT90057)中的数值 时, 时刻被设置为写入的新数值. 不需要向 DT9058/DT90058中写入数据。 ●调整30秒以内的偏差 将DT9058(DT90058)的 低bit置1后,向前或向后 调整使时间恰好为0秒。进行修正以后,将 DT9058(DT90058)清零。 〈例〉 X0:ON 时,修正为0秒 执行时刻为0秒~29秒时调慢、30秒~59时调快。 在上例中,如果为5分29秒,则调慢为5分0秒。如 果为5分35秒,则调快为6分0秒。 时钟/日历设置与30 秒修正 DT90058 (*注释) DT9058 FP2/FP2H/ FP10SH FP-C/FP3 描述名称地址 注释 使用FP2时,需要存储扩展单元. 4-109 步进程序工程(64到79)DT90064DT9064 步进程序工程(80到95)DT90065DT9065 步进程序工程(96到111)DT90066DT9066 步进程序工程(112到127)DT90067DT9067 步进程序工程(128到143)DT90068DT9068 步进程序工程(144到159)DT90069DT9069 步进程序工程(160到175)DT90070DT9070 步进程序工程(176到191)DT90071DT9071 作为发生通信异常时通信状态,在系统中使用。串行通信异常代码DT90059 (*注释) DT9059 (*注释) 表示步进梯形图程序工程的启动状态。工程启动 后,该工程相对应的bit置ON。 请以2进制(BIN)显示进行监控。 (0: 未执行 1:正在执行) DT9060/DT90060的0bit为”1”, 因此步进梯形图程序0 工程正在执行. 可以利用编程工具软件写入数据. 步进程序工程(0到15)DT90060DT9060 步进程序工程(16到31)DT90061DT9061 步进程序工程(32到47)DT90062DT9062 步进程序工程(48到63)DT90063DT9063 步进程序工程(192到207)DT90072DT9072 步进程序工程(208到223)DT90073DT9073 步进程序工程(224到239)DT90074DT9074 步进程序工程(240到255)DT90075DT9075 步进程序工程(256到271)DT90076DT9076 步进程序工程(272到287)DT90077DT9077 FP2/FP2H/ FP10SH FP-C/FP3 描述名称地址 注释 系统使用 高8位 低8位 对应COM口 对应编程口 bit位置 工程编号 DT9060/DT90060 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 15 · · 12 11 · · 8 7 · · 4 3 · · 0 15 · · 12 11 · · 8 7 · · 4 3 · · 0 4-110 步进程序工程(576到591)DT90096DT9096 步进程序工程(592到607)DT90097DT9097 表示步进梯形图程序工程的启动状态。工程启动 后,该工程相对应的bit置ON。 请以2进制(BIN)显示进行监控。 (0: 未执行 1:正在执行) DT9080/DT90080的0bit为”1”, 因此步进梯形图程序 320工程正在执行. 可以利用编程工具软件写入数据. 步进程序工程(560到575)DT90095DT9095 步进程序工程(608到623)DT90098DT9098 步进程序工程(352到367)DT90082DT9082 步进程序工程(368到383)DT90083DT9083 步进程序工程(384到399)DT90084DT9084 步进程序工程(400到415)DT90085DT9085 步进程序工程(416到431)DT90086DT9086 步进程序工程(432到447)DT90087DT9087 步进程序工程(448到463)DT90088DT9088 步进程序工程(464到479)DT90089DT9089 步进程序工程(288到303)DT90078DT9078 步进程序工程(304到319)DT90079DT9079 步进程序工程(320到335)DT90080DT9080 步进程序工程(336到351)DT90081DT9081 步进程序工程(480到495)DT90090DT9090 步进程序工程(496到511)DT90091DT9091 步进程序工程(512到527)DT90092DT9092 步进程序工程(528到543)DT90093DT9093 步进程序工程(544到559)DT90094DT9094 步进程序工程(624到639)DT90099DT9099 FP2/FP2H/ FP10SH FP-C/FP3 描述名称地址 bit位置 工程编号 DT9080/DT90080 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 335 · · 332 331 · · 328 327 · · 324 323 · · 320 15 · · 12 11 · · 8 7 · · 4 3 · · 0 4-111 表示步进梯形图程序工程的启动状态。工程启动 后,该工程相对应的bit置ON。 请以2进制(BIN)显示进行监控。 (0: 未执行 1:正在执行) DT9100/DT90100的0bit为”1”, 因此步进梯形图程序 640工程正在执行. 可以利用编程工具软件写入数据. 步进程序工程(976到991)DT90121DT9121 步进程序工程(928到943)DT90118DT9118 步进程序工程(944到959)DT90119DT9119 步进程序工程(912到927)DT90117DT9117 步进程序工程(960到975)DT90120DT9120 步进程序工程(704到719)DT90104DT9104 步进程序工程(720到735)DT90105DT9105 步进程序工程(736到751)DT90106DT9106 步进程序工程(752到767)DT90107DT9107 步进程序工程(768到783)DT90108DT9108 步进程序工程(784到799)DT90109DT9109 步进程序工程(800到815)DT90110DT9110 步进程序工程(816到831)DT90111DT9111 步进程序工程(640到655)DT90100DT9100 步进程序工程(656到671)DT90101DT9101 步进程序工程(672到687)DT90102DT9102 步进程序工程(688到703)DT90103DT9103 步进程序工程(832到847)DT90112DT9112 步进程序工程(848到863)DT90113DT9113 步进程序工程(864到879)DT90114DT9114 步进程序工程(880到895)DT90115DT9115 步进程序工程(896到911)DT90116DT9116 步进程序工程(992到999) (高位:未使用) DT90122DT9122 FP2/FP2H/ FP10SH FP-C/FP3 描述名称地址 bit位置 工程编号 DT9100/DT90100 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 655 · · 652 651 · · 648 647 · · 644 643 · · 640 15 · · 12 11 · · 8 7 · · 4 3 · · 0 4-112 对应于MEWNET-F远程I/O服务次数。 未使用——DT90123DT9123 未使用——DT90124DT9124 未使用——DT90125DT9125 显示执行强制ON/OFF的单元№。强制输入输出执行站号显示DT90126DT9126 对应于MEWNET-F远程I/O服务次数。MEWNET-F远程I/O服务次数DT90127DT9127 DT90128DT9128 未使用——DT90129DT9129 未使用——DT90130DT9130 对应于DT9131中的存放值,DT9132~ DT9135(FP10/FP10S/FP2中为 DT90132~DT90135)中表示的内容发生变 化。请利用编程工具写入所需要显示内容 的设定值。(也可以通过传输指令F0(MV0 进行设置)。 在高字节中设置代表显示内容的代码(H0 或H1)、在低字节中设置代表主站的代码 (H0~H3)。 MEWNET-F(远程I/O)异常子站确认DT90131DT9131 FP2/FP2H/ FP10SH FP-C/FP3 描述名称地址 注释 系统使用 高8位 低8位 对应主站2 对应主站1 高8位 低8位 对应主站4 对应主站3 显示主站 H0:主站1 H1:主站2 H2:主站3 H3:主站4 显示内容 H0:异常从站 H1:I/O校验异常从站 发生瞬时电压降得从站 4-113 发生异常的MEWNET-F的子站的№所对应的bit变 为ON。 请以2进制(BIN)显示进行监控。 (1: 错误子站, 0: 正常子站) MEWNET-F(远程I/O) 异常子站编号 (当前值) (DT9131/DT90131= H0~H3时) DT90132 DT90133 DT9132 DT9133 当MEWNET-H子站置位单元的安装状态与接通电 源时相比发生变化时,该子站No.所对应的bit被置 为ON。 请以2进制(BIN)显示进行监控。 (1: 错误子站, 0: 正常子站) MEWNET-F(远程I/O) 子站置位I/O校验异 常子站 (DT9131/DT90131= H100~H103时) 发生异常的MEWNET-F的子站的№所对应的bit变 为ON。 请以2进制(BIN)显示进行监控。 (1: 错误子站, 0: 正常子站) MEWNET-F(远程I/O) 异常子站编号 (累计值) (DT9131/DT90131= H0~H3时) 当MEWNET-H子站单元发生瞬间停电,该子站的 №所对应的bit变为ON。 请以2进制(BIN)显示进行监控。 (1: 错误子站, 0: 正常子站) MEWNET-F(远程I/O) 发生瞬时停电子站 (DT9131/DT90131= H100~H103时) DT90134 DT90135 DT9134 DT9135 FP2/FP2H/ FP10SH FP-C/FP3 描述名称地址 bit位置 子站编号 DT9132/DT90132 16 · · 13 12 · · 9 8 · · 5 4 · · 1 15 · · 12 11 · · 8 7 · · 4 3 · · 0 bit位置 子站编号 DT9133/DT90133 32 · · 29 28 · · 25 24 · · 21 20 · · 17 15 · · 12 11 · · 8 7 · · 4 3 · · 0 bit位置 子站编号 DT9132/DT90132 16 · · 13 12 · · 9 8 · · 5 4 · · 1 15 · · 12 11 · · 8 7 · · 4 3 · · 0 bit位置 子站编号 DT9133/DT90133 32 · · 29 28 · · 25 24 · · 21 20 · · 17 15 · · 12 11 · · 8 7 · · 4 3 · · 0 bit位置 子站编号 DT9134/DT90134 16 · · 13 12 · · 9 8 · · 5 4 · · 1 15 · · 12 11 · · 8 7 · · 4 3 · · 0 bit位置 子站编号 DT9135DT90135 32 · · 29 28 · · 25 24 · · 21 20 · · 17 15 · · 12 11 · · 8 7 · · 4 3 · · 0 bit位置 子站编号 DT9134/DT90134 16 · · 13 12 · · 9 8 · · 5 4 · · 1 15 · · 12 11 · · 8 7 · · 4 3 · · 0 bit位置 子站编号 DT9135DT90135 32 · · 29 28 · · 25 24 · · 21 20 · · 17 15 · · 12 11 · · 8 7 · · 4 3 · · 0 4-114 以1个字节表示八种错误内容。 (1: 状态异常 0: 状态正常) 通信错误 传输错误 非法单元错误 终端站错误 插槽数量错误 I/O点数分配错误 瞬间停电错误 异常I/O单元错误 MEWNET-F(远程I/O)异常代 码 DT90136 DT90137 DT9136 DT9137 未使用——DT90138DT9138 未使用——DT90139DT9139 FP2/FP2H/ FP10SH FP-C/FP3 描述名称地址 高8位 低8位 对应主站2 对应主站1 对应主站3 高8位 低8位 对应主站4 DT9136/ DT90136 DT9137/ DT90137 4-115 PC-link0的接收次数 (RING计数器) MEWNET-W/-P PC-link 状态 [PC-link0 (W/P)] (注释2, 3) DT90140 (*注释1) DT9140 (*注释1) PC-link0的接收间隔 当前值(×2.5ms)DT90141 (*注释1) DT9141 (*注释1) PC-link0的接收间隔 小值(×2.5ms)DT90142 (*注释1) DT9142 (*注释1) PC-link0的接收间隔 大值(×2.5ms)DT90143 (*注释1) DT9143 (*注释1) PC-link0的发送次数 (RING计数器) DT90144 (*注释1) DT9144 (*注释1) PC-link0的发送间隔 当前值(×2.5ms)DT90145 (*注释1) DT9145 (*注释1) PC-link0的发送间隔 小值(×2.5ms)DT90146 (*注释1) DT9146 (*注释1) PC-link0的发送间隔 大值(×2.5ms)DT90147 (*注释1) DT9147 (*注释1) FP2/FP2SH/ FP10SH FP-C/FP3 描述名称地址 注释 1) 系统使用 2) 当系统寄存器46=K0时,第1路: PC-link0,第2路: PC-link1 当系统寄存器46=K1时,第1路: PC-link1,第2路: PC-link0 3) 对于MEWNET-W系统,适用PLC机型:FP-C/FP2/FP2SH/FP3/FP10SH 对于MEWNET-P系统,适用PLC机型:FP3/FP10SH 4-116 PC-link1的发送间隔测定用工作区。 PC-link0的发送间隔测定用工作区。 PC-link0的接收间隔测定用工作区。MEWNET-W/-P PC-link 状态 [PC-link0 (W/P)] (注释2, 3) DT90156 (*注释1) DT9156 (*注释1) DT90157 (*注释1) DT9157 (*注释1) PC-link1的发送间隔 大值(×2.5ms) MEWNET-W-P PC-link 状态 [PC-link1 (W/P)] (注释2, 3) DT90155 (*注释1) DT9155 (*注释1) PC-link1的接收间隔测定用工作区。MEWNET-W/-P PC-link 状态 [PC-link1 (W/P)] (注释2, 3) DT90158 (*注释1) DT9158 (*注释1) PC-link1的接收次数 (RING计数器) DT90148 (*注释1) DT9148 (*注释1) PC-link1的接收间隔 当前值(×2.5ms)DT90149 (*注释1) DT9149 (*注释1) PC-link1的接收间隔 小值(×2.5ms)DT90150 (*注释1) DT9150 (*注释1) PC-link1的接收间隔 大值(×2.5ms)DT90151 (*注释1) DT9151 (*注释1) PC-link1的发送次数 (RING计数器) DT90152 (*注释1) DT9152 (*注释1) PC-link1的发送间隔 当前值(×2.5ms)DT90153 (*注释1) DT9153 (*注释1) PC-link1的发送间隔 小值(×2.5ms)DT90154 (*注释1) DT9154 (*注释1) DT90159 (*注释1) DT9159 (*注释1) FP2/FP2SH/ FP10SH FP-C/FP3 描述名称地址 注释 1) 系统使用 2) 当系统寄存器46=K0时,第1路: PC-link0,第2路: PC-link1 当系统寄存器46=K1时,第1路: PC-link1,第2路: PC-link0 3) 对于MEWNET-W系统,适用PLC机型:FP-C/FP2/FP2SH/FP3/FP10SH 对于MEWNET-P系统,适用PLC机型:FP3/FP10SH 4-117 存放link1的单元№。link单元编号 [W/P link1] (*注释) DT90160DT9160 存放link1的异常标志。错误标志 [W/P link1] (*注释) DT90161DT9161 存放link2的单元№。link单元编号 [W/P link2] (*注释) DT90162DT9162 存放link2的异常标志。错误标志 [W/P link2] (*注释) DT90163DT9163 存放link3的单元№。link单元编号 [W/P link3] (*注释) DT90164DT9164 存放link3的异常标志。错误标志 [W/P link3] (*注释) DT90165DT9165 存放link4的单元№。link单元编号 [W/P link4] (适用机型: FP2SH)(*注释) DT90166DT9166 存放link4的异常标志。错误标志 [W/P link4] (适用机型: FP2SH)(*注释) DT90167DT9167 存放link5的单元№。link单元编号 [W/P link5] (适用机型: FP2SH)(*注释) DT90168DT9168 存放link5的异常标志。错误标志 [W/P link5] (适用机型: FP2SH)(*注释) DT90169DT9169 FP2/FP2H/ FP10SH FP-C/FP3 描述名称地址 注释 对于MEWNET-W系统,适用PLC机型:FP-C/FP2/FP2SH/FP3/FP10SH 对于MEWNET-P系统,适用PLC机型:FP3/FP10SH 4-118 发送WACKDT90179DT9179 发送响应DT90180DT9180 发送响应DT90181DT9181 未定义指令DT90182DT9182 奇偶校验错误次数DT90183DT9183 End Code接收错误DT90184DT9184 格式错误DT90185DT9185 不支持错误DT90186DT9186 自诊断DT90187DT9187 环路切换次数DT90188DT9188 PC link 地址重复目标MEWNET-W/P link状 态 [W/P link1] (*注释) DT90170DT9170 MEWNET-P link系统的光传输体系测试的测试结果.DT90171DT9171 令牌丢失次数DT90172DT9172 (双重令牌次数) DT90173DT9173 无信号状态次数DT90174DT9174 同步异常次数DT90175DT9175 发送NACK DT90176DT9176 发送NACKDT90177DT9177 发送WACKDT90178DT9178 无法链接状态的发生次数DT90189DT9189 FP2/FP2H/ FP10SH FP-C/FP3 描述名称地址 注释 对于MEWNET-W系统,PLC适用机型:FP-C/FP2/FP2SH/FP3/FP10SH 对于MEWNET-P系统,PLC适用机型:FP3/FP10SH 4-119 H link2的链接状态信息存放在高字节中. H link2的单元№存放在低字节中. MEWNET-H link状态/单 元编号 [H link2] (FP2/FP2SH使用W2模式) DT90196DT9196 H link3的链接状态信息存放在高字节中. H link3的单元№存放在低字节中. MEWNET-H link状态/单 元编号 [H link3] (FP2/FP2SH使用W2模式) DT90197DT9197 未使用——DT90198DT9198 H link1的链接状态信息存放在高字节中. H link1的单元№存放在低字节中 MEWNET-H link状态/单 元编号 [H link1] (FP2/FP2SH使用W2模式) DT90195DT9195 环路输入状态 MEWNET-W/P link状态 [W/P link1] (*注释) DT90194DT9194 主环路输入断线次数 —— DT90190DT9190 副环路输入断线次数DT90191DT9191 正在进行环路重新构筑处理DT90192DT9192 环路运行模式DT90193DT9193 未使用DT90199DT9199 FP2/FP2H/ FP10SH FP-C/FP3 描述名称地址 注释 对于MEWNET-W系统,PLC适用机型:FP-C/FP2/FP2SH/FP3/FP10SH 对于MEWNET-P系统,PLC适用机型:FP3/FP10SH 高8位 低8位 H link 1连接标志 H link 1单元标号 DT9195/ DT90195 高8位 低8位 H link 2连接标志 H link 2单元标号 DT9196/ DT90196 高8位 低8位 H link 3连接标志 H link 3单元标号 DT9197/ DT90197 4-120 无法链接状态的发生次数 MEWNET-W/P 链接状态 [W/P link2] (*注释) DT90219DT9219 主环路输入断线次数DT90220DT9220 发送WACKDT90209DT9209 发送响应DT90210DT9210 发送响应DT90211DT9211 未定义指令DT90212DT9212 奇偶校验错误次数DT90213DT9213 End Code接收错误DT90214DT9214 格式错误DT90215DT9215 不支持错误DT90216DT9216 自诊断DT90217DT9217 环路切换次数DT90218DT9218 PC link 地址重复目标DT90200DT9200 MEWNET-P link系统的光传输体系测试的测试结果.DT90201DT9201 令牌丢失次数DT90202DT9202 (双重令牌次数) DT90203DT9203 无信号状态次数DT90204DT9204 同步异常次数DT90205DT9205 发送NACK DT90206DT9206 发送NACKDT90207DT9207 发送WACKDT90208DT9208 FP2/FP2H/ FP10SH FP-C/FP3 描述名称地址 注释 对于MEWNET-W系统,PLC适用机型:FP-C/FP2/FP2SH/FP3/FP10SH 对于MEWNET-P系统,PLC适用机型:FP3/FP10SH 4-121 未使用——DT90226DT9226 未使用——DT90227DT9227 未使用——DT90228DT9228 未使用——DT90225DT9225 MEWNET-W/P 链接状态 [W/P link2] (*注释) 副环路输入断线次数 —— DT90221DT9221 正在进行环路重新构筑处理DT90222DT9222 环路运行模式DT90223DT9223 环路输入状态DT90224DT9224 未使用DT90229DT9229 FP2/FP2H/ FP10SH FP-C/FP3 描述名称地址 注释 对于MEWNET-W系统,PLC适用机型:FP-C/FP2/FP2SH/FP3/FP10SH 对于MEWNET-P系统,PLC适用机型:FP3/FP10SH 4-122 无法链接状态的发生次数 MEWNET-W/P 链接状态 [W/P link3] (*注释) DT90249DT9249 主环路输入断线次数DT90250DT9250 发送WACKDT90239DT9239 发送响应DT90240DT9240 发送响应DT90241DT9241 未定义指令DT90242DT9242 奇偶校验错误次数DT90243DT9243 End Code接收错误DT90244DT9244 格式错误DT90245DT9245 不支持错误DT90246DT9246 自诊断DT90247DT9247 环路切换次数DT90248DT9248 PC link 地址重复目标DT90230DT9230 MEWNET-P link系统的光传输体系测试的测试结果.DT90231DT9231 令牌丢失次数DT90232DT9232 (双重令牌次数) DT90233DT9233 无信号状态次数DT90234DT9234 同步异常次数DT90235DT9235 发送NACK DT90236DT9236 发送NACKDT90237DT9237 发送WACKDT90238DT9238 FP2/FP2H/ FP10SH FP-C/FP3 描述名称地址 注释 对于MEWNET-W系统,PLC适用机型:FP-C/FP2/FP2SH/FP3/FP10SH 对于MEWNET-P系统,PLC适用机型:FP3/FP10SH 4-123 MEWNET-W/P 链接状态 [W/P link3] (*注释) 副环路输入断线次数DT90251DT9251 正在进行环路重新构筑处理DT90252DT9252 环路运行模式DT90253DT9253 环路输入状态DT90254DT9254 FP2/FP2H/ FP10SH FP-C/FP3 描述名称地址 注释 对于MEWNET-W系统,PLC适用机型:FP-C/FP2/FP2SH/FP3/FP10SH 对于MEWNET-P系统,PLC适用机型:FP3/FP10SH 4-124 存放通信口站号的BCD码(H1~H32).COM端口用站号设置监控 (适用机型: FP2SH,FP10SH) DT90256—— RUN以后,首次发生运算错误的程序块代码存 放在高字节. 程序块代码: - H1: 在第1程序中发生运算错误 - H2: 在第2程序中发生运算错误 发生运算错误程序编号 (保持型) (适用机型: FP2SH,FP10SH) DT90257—— 后发生运算错误的程序块代码存放在高字节. 程序块代码: - H1: 在第1程序中发生运算错误 - H2: 在第2程序中发生运算错误 发生运算错误程序编号 (非保持型) (适用机型: FP2SH,FP10SH) DT90258—— 产生BRK指令断点的程序块代码存放在高字节. 程序块代码: - H1: 在第1程序中发生运算错误 - H2: 在第2程序中发生运算错误 发生运算断点程序编号 (适用机型: FP2SH,FP10SH) DT90259—— 监控IC存储卡的类型. - H5: FLASH EEPROM - H6: SRAM时 - H506: flash-EEPROM/RAM混合型存储卡 (对于FP10SH) - H6: 未写入属性信息的IC卡 - H6: 未写入数据的IC卡 - 其他代码: 错误状态(自诊断错误为56) IC存储卡类型 (适用机型: FP2SH,FP10SH) DT90260—— 存放所安装的IC存储卡的容量[存放值(10进 制)]KB. flash-EEPROM/RAM在混合型的情况下为 SRAM部分的容量。 IC存储卡1容量 (适用机型: FP2SH,FP10SH) DT90261—— flash-EEPROM/RAM在混合型的情况下为 EEPROM部分的容量 IC存储卡2容量 (适用机型: FP2SH,FP10SH) DT90262—— 存放文件寄存器Bank No.的当前值.文件寄存器Bank No. (当前值) (适用机型: FP2SH,FP10SH) DT90263—— 存放文件寄存器Bank No.的保存No.值文件寄存器Bank No. (保存值) (适用机型: FP2SH,FP10SH) DT90264—— 存放编程口站号的BCD码(H1~H32).TOOL端口用站号设置监 控 (适用机型: FP2SH,FP10SH) DT90255 —— 存放编译内存的剩余容量. 使用120K步扩展内 存时,存放第1程序的值. 编译内存剩余容量 (适用机型: FP2SH,FP10SH) DT90265—— FP2/FP2H/ FP10SH FP-C/FP3 描述名称地址 4-125 未使用——DT90267—— 存放索引寄存器Bank的当前值.索引寄存器Bank (当前值) (适用机型: FP2SH,FP10SH) DT90268—— 存放索引寄存器Bank保存№.索引寄存器Bank (保存值) (适用机型: FP2SH,FP10SH) DT90269—— 未使用——DT90399—— 存放当前为ON的异常警告继电器的总点数. ( 大 500个). 利用RST指令和DT90400将异常警告缓冲区中的所 有数据清零. 异常警告继电器ON总 点数 (适用机型: FP2SH,FP10SH) DT90400—— 存放第1个变为ON的异常警告继电器的编号。 可以通过RST指令清除继电器。 〈例1〉直接指定继电器编号 〈例2〉直接指定特殊数据寄存器 第1个为ON的异常警 告继电器 (适用机型: FP2SH,FP10SH) DT90401—— 存放变为ON的异常警告继电器的编号。 只可以通过RST指令清除指定的异常警告继电器。 第2个为ON的异常警 告继电器 (适用机型: FP2SH,FP10SH) DT90402—— 第3个为ON的异常警 告继电器 (适用机型: FP2SH,FP10SH) DT90403—— 使用120K步扩展内存时,存放第2程序中的编译内 存剩余容量. 编译内存剩余容量 (第2程序用) (适用机型: FP2SH,FP10SH) DT90266 —— FP2/FP2H/ FP10SH FP-C/FP3 描述名称地址 制定储存错误 报警继电器号 (E12) 继电器编号 (E12)复位 4-126 第5个为ON的异常警 告继电器 (适用机型: FP2SH,FP10SH) DT90405—— 第6个为ON的异常警 告继电器 (适用机型: FP2SH,FP10SH) DT90406—— 第7个为ON的异常警 告继电器 (适用机型: FP2SH,FP10SH) DT90407—— 第8个为ON的异常警 告继电器 (适用机型: FP2SH,FP10SH) DT90408—— 第9个为ON的异常警 告继电器 (适用机型: FP2SH,FP10SH) DT90409—— 第10个为ON的异常警 告继电器 (适用机型: FP2SH,FP10SH) DT90410—— 第11个为ON的异常警 告继电器 (适用机型: FP2SH,FP10SH) DT90411—— 第12个为ON的异常警 告继电器 (适用机型: FP2SH,FP10SH) DT90412—— 第13个为ON的异常警 告继电器 (适用机型: FP2SH,FP10SH) DT90413—— 存放变为ON的异常警告继电器的编号。 只可以通过RST指令清除指定的异常警告继电器。 第4个为ON的异常警 告继电器 (适用机型: FP2SH,FP10SH) DT90404 —— 第14个为ON的异常警 告继电器 (适用机型: FP2SH,FP10SH) DT90414—— FP2/FP2H/ FP10SH FP-C/FP3 描述名称地址 继电器编号 (E12)复位 4-127 第16个为ON的异常警 告继电器 (适用机型: FP2SH,FP10SH) DT90416—— 第17个为ON的异常警 告继电器 (适用机型: FP2SH,FP10SH) DT90417—— 第18个为ON的异常警 告继电器 (适用机型: FP2SH,FP10SH) DT90418—— 第19个为ON的异常警 告继电器 (适用机型: FP2SH,FP10SH) DT90419—— DT90401中所存放的、第1个异常警告继电器变为 ON的时间(分/秒) 异常警告继电器 (DT90401)中存放的 数据变为ON的时间 (分/秒) (适用机型: FP2SH,FP10SH) DT90420—— DT90401中所存放的、第1个异常警告继电器变为 ON的时间(日/时) 异常警告继电器 (DT90401)中存放的 数据变为ON的时间 (日/时) (适用机型: FP2SH,FP10SH) DT90421—— DT90401中所存放的、第1个异常警告继电器变为 ON的时间(年/月) 异常警告继电器 (DT90401)中存放的 数据变为ON的时间 (年/月) (适用机型: FP2SH,FP10SH) DT90422—— 存放变为ON的异常警告继电器的编号。 只可以通过RST指令清除指定的异常警告继电器。 第15个为ON的异常警 告继电器 (适用机型: FP2SH,FP10SH) DT90415 —— FP2/FP2H/ FP10SH FP-C/FP3 描述名称地址 继电器编号 (E12)复位 4-128 4.4.1 错误指示LED亮时的错误确认 当CPU(控制)单元上的错误指示灯”ERROR LED(ERROR/ALARM LED)”变亮时, 表示发生了自诊断错误 或语法错误. 请确认错误内容并进行相应的处理. 错误的确认方法 步骤: 1. 使用编程工具显示错误代码 使用编程工具软件: 执行[状态显示]后, 错误代码及内容将被显示. 使用FP手持编程器Ⅱ: 对于语法检查错误, 相关错误代码和信息内容将被简便地显示在编程器上. 对于自诊断错误, 请按以下按键, 自诊断错误代码将被显示在编程器上. 2. 根据错误代码, 在错误清单中确认对应的内容 自诊断错误 当CPU(控制器)中的自诊断功能检测到系统中的异常时, 会产生此错误. 自诊断功能对看门狗定时器、 内存异常检测、I/O异常检测及其他设备进行监控. 当产生自诊断错误时 CPU(控制器)的ERROR LED指示变亮. 根据错误内容及系统寄存器的设置, CPU(控制器)可能停止运行. 错误代码将被存放在特殊数据寄存器DT9000或DT90000中. 在产生运算错误的情况下, 错误的地址将被存放到DT9017和DT9018/DT90017和DT90018. ACLR ( - ) OP 1 1 0 ENT READ▲ 4.4 错误清单 4-129 清除自诊断错误 使用编程工具软件: 执行[状态显示]后, 点击[清除错误]按钮. 错误代码43及更高编号的错误将被清除. 使用FP手持编程器Ⅱ: 对于自诊断错误, 请按以下按键, 错误代码43及更高编号的错误将被清除. 对于FP2/FP2SH/FP3/FP10SH, 可以利用CPU单元上的INITIALIZE/TEST开关清除某一错误. 但是 这一操作也将清除运算内存中的内容. 在PROG.(编程)模式下断开再接通电源也可以清除错误. 但是, 运算内存中的内容以及非保持型的 数据也将同时被清除. 也可以利用自诊断错误设置指令F148(ERR)清除错误. 处理自诊断错误的步骤 对于不同的错误内容, 处理的方法不同. 详细说明请参阅自诊断错误的代码及内容说明. 语法检查错误 当总体检查功能检测到程序中的语法错误或不正确的设置时, 会产生此错误. 当CPU(控制器)切换 到RUN模式时, 总体检查功能被自动启动, 并且排除可能因程序中的语法错误而产生的不正确错误. 当检测到语法检查错误时 ERROR LED(ERROR/ALARM LED)指示变亮. 即使切换到RUN模式也不开始运行. 不能用REMOTE(遥控)操作切换到RUN模式. 清除语法检查错误 切换到PROG.(编程)模式, 错误将被清除, ERROR LED(ERROR/ALARM LED)熄灭. 处理自诊断错误的步骤 切换到PROG.模式, 利用编程工具软件、在在线联机的状态下, 执行[总体检查]操作. 可以显示出错误 和发生的程序地址. 详细说明请参阅错误代码及内容说明. ACLR ( - ) OP 1 1 2 ENT SHIFT SC WRT 4-130 存储在FPΣ/FP2SH/FP10SH中的程序过大, 不能在程序区中编译. 切换到编程模式(PROG.),减少程序的总步 数。 停止 编译存储区满错误 (适用机型: FPΣ/ FP2SH/FP10SH) E6 将必须写在指定程序区(主程序区或子程 序区)的指令写入了不同的程序区.(例:将 SUB~RET的程序写到了ED指令之前) 切换到编程模式(PROG.),并将指令输入到 正确的区域。 停止程序区错误 E5 (*注意) 使用了系统寄存器设置所不允许的指令. 例:程序中使用的定时器/计数器的编号数 值超出了系统寄存器设置的范围. 切换到编程模式(PROG.),确认系统寄存器 中设置的范围,并修改设置值或改变程序 中使用的数值。 停止参数错误E4 使用跳转(JP和LBL)等必须成对匹配使用 的指令时, 其中一条指令缺少或所处位置 不正确。 切换到编程模式(PROG.),输入完整的指令, 使其匹配并处于正确的位置。 停止不匹配错误E3 在程序中有两个或更多的OT(Out)指令和 KP(Keep)指令使用同一个继电器。 切换到编程模式(PROG.)并修改程序,使其 不对同一个继电器使用两个或更多的OT指 令或KP指令.也可以将系统寄存器20的设 置修改为”允许(K1)”多重输出。 停止多重输出错误 E2 (*注意) 程序中有语法错误。 切换到编程模式(PROG.)并改正错误。 停止语法错误E1 描述及更正步骤操作状况名称错误编号 4.4.2 语法检查错误列表 注意 当在运行(RUN)模式下,用包含错误的程序改写当前程序时,也会出现此错误。 在这种状况下,不会向CPU中写入任何内容,而将继续操作。 4-131 在RUN模式下, 利用编程工具软件试图进 行删除、添加或改变指令顺序(ED, LBL, SUB, RET, INT, IRET, SSTP和STPE)等不 能执行的操作。 此时不会向CPU写入任何 内容。 继续运行运行时修改程序 语法错误 E10 程序可能被损坏。 请重新下载程序。 停止无程序错误 (适用机型: FP2SH/FP10SH) E9 在需要使用指定组合的操作数的指令中使 用了错误操作数.(例: 所有操作数应全部 为某一类型) 输入正确的操作数组合。 停止高级指令操作数错误E8 在程序中, 每个扫描周期都执行的指令与 在触发器上升沿执行的指令, 使用了同一 个触点作为触发器.(例: F0(MV)与P0(PMV) 在编程时同时使用了相同的触点) 修改程序, 使每个扫描周期都执行的指令 与在触发器上升沿执行的指令使用不同的 触发器。 停止高级指令类型错误 (适用机型: FP-C/FP2/FP2SH/ FP3/FP10SH) E7 描述及更正步骤操作状况名称错误编号 4-132 FP1-C24/C40/C56/C72和全部FP-M: 存储 单元或主存储单元可能异常. 重新编写存储单元或主存储单元的程序并 操作.如果再次发生同样错误,请更换单元. 可能存在硬件异常. 请与供货商联系 停止中断错误0E30 系统寄存器中可能存在异常. 请检查系统中的设置内容, 或初始化系统 寄存器. 停止系统寄存器错误 (适用机型: FP-C/FP2/FP2SH/ FP3/FP10SH/FPΣ) E28 请与供货商联系停止系统总线超时错误 (适用机型: FP2/FP3) E29 在没有中断请求的情况下产生了一个中断. 可能存在硬件问题或干扰产生的错误. 请断开电源并检查环境干扰情况. 停止中断错误1E31 安装的智能单元超出限制. (例: 链接单元多于4个) 断开电源, 并且按照硬件手册重新配置智 能单元. 停止智能单元安装错误 (适用机型: FP-C/FP2/FP2SH/ FP3/FP10SH/FPΣ) E27 FP1-C14/C16和FPΣ: 内置ROM可能异常. 请与供货商联系 停止ROM错误 (适用机型: FPΣ/FP-M/FP1) 未安装ROM. 已安装的ROM可能有问题. - ROM中的内容被损坏 - 存储在ROM中的程序大于ROM的容量 检查ROM的内容 停止用户ROM错误 (适用机型: FP-C/FP2/FP2SH/ FP3/FP10SH) E26 内部RAM可能产生了硬件异常情况 请与供货商联系. 停止RAM错误 (适用机型: FP-C/FP2/FP2SH/ FP3/FP10SH) E21 E22 E23 E24 E25 可能产生了硬件异常情况 请与供货商联系. 停止CPU错误 (适用机型: FP-C/FP2/FP2SH/ FP3/FP10SH) E20 描述及更正步骤操作状况名称错误编号 4.4.3 自诊断错误列表 4-133 产生的中断没有对应的中断程序. 确认中断程序的编号, 并修改为与相应的 中断请求一致的编号. 用于MEWNET-F系统的插槽数量或I/O点数 超出限制. 重新配置系统, 使其插槽数量及I/O点数 在允许范围内. 停止MEWNET-F限制错误 (适用机型: FP-C/FP2/FP2SH/ FP3/FP10SH) E36 在I/O分配和MEWNET-F I/O分布中存在I/O 重叠或I/O设置超出范围. 重新正确分配I/O. 停止MEWNET-F I/O映射 错误 (适用机型: FP-C/FP2/FP2SH/ FP3/FP10SH) E37 远程I/O终端板卡、远程I/O终端单元或 I/O链接单元的I/O分配不正确. 根据从站的I/O点数,重新正确分配从站的 I/O. 停止MEWNET-F从站I/O映 射错误 (适用机型: FP-C/FP2/FP2SH/ FP3/FP10SH) E38 当从IC存储卡中读取程序时(根据DIP开关 3的设置自动读入,或利用程序中的 F14(PGRD)指令): - 没有安装IC存储卡 - 程序文件不存在或已损坏 - 不能执行写操作 - AUTOEXEC.SPG文件异常 - 存储卡中的程序大小超出CPU的容量. 请插入存储有适当程序的IC卡并重新执行. 停止IC卡读取错误 (适用机型: FP2SH/FP10SH) E39 将一个不能作为MEWNET-F链接系统的从站 的单元安装到了从站. 将该单元自从站中撤除. 停止MEWNET-F(远程I/O) 从站非法单元错误 (适用机型: FP-C/FP2/FP2SH/ FP3/FP10SH) E35 安装了异常的单元. 请检查特殊数据寄存器中的内容 (FP3:DT9036, FP2/FP2SH/FP10SH/FPΣ: DT90036), 确认异常单元的位置. 然后断开电源, 更换新的单元. 停止I/O状态错误 (适用机型: FP-C/FP2/FP2SH/ FP3/FP10SH/FPΣ) E34 当FP3/FP10SH作为CPU2用于多CPU系统时, 可能产生此错误. 请与供货商联系. CPU2停止多CPU数据不匹配 错误(只对CPU2) (适用机: FP3/FP10SH) E33 在没有中断请求的情况下产生了一个中断. 可能存在硬件问题或干扰产生的错误. 请断开电源并检查环境干扰情况. 停止中断错误2E32 描述及更正步骤操作状况名称错误编号 4-134 程序执行所需要的扫描时间超过系统看门 狗定时器的设置. 检查并修改程序使FP2SH/FP10SH的执行扫 描时间在指定值以内. 可选择系统看门狗定时器错 误 (适用机型: FP2SH/FP10SH) E43 从站的连接执行时间超过系统寄存器35的 设定值. 可选择MEWNET-F系统的从 站连接时间错误 (适用机型: FP2SH) E44 I/O单元的接线状态与接通电源时的不同. 请检查特殊数据寄存器中的内容 (FP3:DT9010和DT9011, FP2/FP2SH/FP10SH/FPΣ:DT90010和 DT90011),确认错误单元的位置,然后检查 该单元并修正接线. 可选择I/O单元校验错误 (适用机型: FP-C/FP2/FP2SH/ FP3/FP10SH/FPΣ) E42 智能单元中存在异常. 请检查特殊数据寄存器中的内容 (FP3:DT9006和DT9007, FP2/FP2SH/FP10SH/FPΣ:DT90006和 DT90007),确认异常智能单元的位置,然后 根据手册检查该单元 可选择智能单元错误 (适用机型: FP-C/FP2/FP2SH/ FP3/FP10SH/FPΣ) E41 异常I/O单元位置 (适用机型: FP2/FP2SH/FPΣ) 在FP3/FP10SH中, MEWNET-TR系统中产生了 通信错误. 在FP2/FP2SH/FPΣ中, 检测到异常I/O单元. 请检查特殊数据寄存器中的内容 (FP3:DT9002和DT9003, FP2/FP2SH/FP10SH/FPΣ:DT90002和 DT90003),确认错误的MEWNET-TR主单元和 异常I/O单元.然后检查单元. 可选择MEWNET-TR通信错 误 (适用机型: FP3/FP10SH) E40 描述及更正步骤操作状况名称错误编号 利用系统寄存器21选择操作状态: - 设置为K1: 继续运行 - 设置为K0: 停止运行 利用系统寄存器22选择操作状态: - 设置为K1: 继续运行 - 设置为K0: 停止运行 利用系统寄存器23选择操作状态: - 设置为K1: 继续运行 - 设置为K0: 停止运行 利用系统寄存器24选择操作状态: - 设置为K1: 继续运行 - 设置为K0: 停止运行 利用系统寄存器25选择操作状态: - 设置为K1: 继续运行 - 设置为K0: 停止运行 4-135 后备电池的电压过低, 或未安装CPU单元 的后备电池. 检查后备电池的安装情况, 必要时更换电 池. 继续执行后备电池异常 (适用机型: FP-M/FP-C/FP1 C24,C40,C56,C72/ FP2/FP2SH/FP3/ FP10SH) E50 在从站的单元中产生如下异常: - 缺少单元 - 检测到异常的智能单元 请检查特殊数据寄存器中的内容 (FP3:DT9131~DT9137, FP2/FP2SH/FP10SH:DT90131~DT90137), 确认异常从站的位置,然后改正该站状态 可选择MEWNET-F属性错误 (适用机型: FP-C/FP2/FP2SH/ FP3/FP10SH) E47 因传输电缆或从站的断电而导致的通信异 常. 请检查特殊数据寄存器中的内容 (FP3:DT9131~DT9137, FP2/FP2SH/FP10SH:DT90131~DT90137), 确认异常从站的位置,然后改正该站状态. 可选择MEWNET-F通信错误 (适用机型: FP-C/FP2/FP2SH/ FP3/FP10SH) S-LINK通信错误 (适用机型: FP0-SL) E46 执行高级指令时, 无法进行运算 请检查特殊数据寄存器中的内容(FP-M/ FP0/FP1/FP3:DT9017和DT9018, FP2/ FP2SH/FP10SH/FPΣ:DT90017和DT90018), 确认产生运算错误的程序地址,然后修改 程序.请参考关于运算错误及高级指令的 说明. 可选择运算错误E45 描述及更正步骤操作状况名称错误编号 利用系统寄存器26选择操作状态: - 设置为K1: 继续运行 - 设置为K0: 停止运行 利用系统寄存器27选择操作状态: - 设置为K1: 继续运行 - 设置为K0: 停止运行 利用系统寄存器27选择操作状态: - 设置为K1: 继续运行 - 设置为K0: 停止运行 通过将系统寄存器4设置为K0(NO), 可以忽略此错误. 但是BATT. LED 仍然为ON. 4-136 用于IC卡的后备电池电压过低. 更换IC卡的后备电池或对其进行充电. (但不能确保IC存储卡中的内容.) 继续执行IC卡后备电池错误 (BATT.发光二极管不 亮) (适用机型: FP2SH/FP10SH) E54 用于IC卡的后备电池电压过低. 更换IC卡的后备电池或对其进行充电. (但不能确保IC存储卡中的内容.) 继续执行IC卡后备电池错误 (BATT.发光二极管不 亮) (适用机型: FP2SH/FP10SH) E55 安装的IC存储卡与FP2SH/FP10SH不兼容. 请将IC卡更换为与FP2SH/FP10SH兼容的型 号. 继续执行IC卡不兼容错误 (适用机型: FP2SH/FP10SH) E56 产生了由F148(ERR)/P148(PERR)指令设置 的自诊断错误. 根据用户程序的设置, 处理产生错误的条 件. 停止由F148(ERR)/P148 (PERR)指令设置的 自诊断错误 E100 ~ E199 继续执行E200 ~ E299 使用多CPU系统时,检测到异常情况. 请与供货商联系. 继续执行多CPU注册错误(只对 CPU2) (适用机型: FP3/FP10SH) E53 在模式选择开关保持在RUN位置情况下,将 INITIALIZE/TEST选择开关拨置到 INITIALIZE的位置. 如果仍然产生同一错误, 请与供货商联系. 继续执行MEWNET-F I/O更新 同步错误 (适用机型: FP-C/FP2/FP2SH/ FP3/FP10SH) E52 终端站的设置不能正确执行. 请检查通信路径中的所有终点, 利用DIP 开关将其设置为终端站. 继续执行MEWNET-F终端站错 误 (适用机型: FP-C/FP2/FP2SH/ FP3/FP10SH) E51 描述及更正步骤操作状况名称错误编号 4-137 利用编程工具软件输入程序时, 编辑了不 能在RUN模式下进行改写的指令(ED, SUB, RET, INT, IRET, SSTP和STPE). 不向CPU中写入任何内容. 继续执行运行时修改程序错误 (适用机型: FP-C/FP2/FP2SH/ FP3/FP10SH) E68 使用编程工具软件,在在线状态下编辑程 序时, 不允许编写该部分程序. 请检查程序. 继续执行PLC写入错误 地址错误 (适用机型: FP-C/FP2/FP2SH/ FP3/FP10SH) E66 在ROM运行/IC卡运行状态下,进行了传输. 请在切换模式之后再次执行. 停止保护错误 (适用机型: FP-C/FP2/FP2SH/ FP3/FP10SH) E65 当从RAM向ROM(IC存储卡)传输时发生异常. ROM或IC存储卡可能不正常. - ROM传输时, 指定的内容超出256KB的容 量 - 发生了写入错误 - 没有安装ROM/IC卡 - ROM/IC卡不符合规定 请检查ROM/IC卡的内容. 停止无ROM/RAM错误 (适用机型: FP-C/FP2/FP2SH/ FP3/FP10SH) E64 在RUN模式下进行传输. 请在切换模式之后再次执行. 停止PLC错误模式 (适用机型: F P-C/FP2/FP2SH/ FP3/FP10SH) E63 描述及更正步骤操作状况名称错误编号 4.4.4 通信校验错误列表 4-138 敬请垂询● 敬请垂询∶松下电工 ( 中国 ) 有限公司 北京分公司∶北京市朝阳区建国路79号华茂中心2号写字楼6层 上海分公司∶上海市淮海中路8号兰生大厦26F 广州分公司∶广州市环市东路371-375号 大连分公司∶大连市西岗区中山路147号大连森茂大厦24楼 沈阳分公司∶沈阳市和平区南京北街206号城市广场第二座3-906室 成都分公司∶成都市人民南路二段18号川信大厦15楼A-2座 深圳分公司∶深圳市福田区深南中路3032号田面城市大厦19楼D,E座 天津分公司∶天津市南京路75号天津国际大厦2210室 ARCT1F313C-1 制造商∶松下电工神视株式会社 海外销售部 ( 总公司 ) 地址∶日本国爱知县春日井市牛山町2431-1 电话∶+81-568-33-7861 传真∶+81-568-33-8591 URL∶panasonic-electric-works.net/sunx 电话∶010-5925-5988 电话∶021-2322-7777 电话∶020-8713-0888 电话∶0411-3960-4422 电话∶024-2334-1905 电话∶028-8619-9501 电话∶0755-8234-4802 电话∶022-2311-3131 控制机器Call Center 客户服务中心 免费电话∶800-820-3096 免费传真∶800-820-3097 © Panasonic Electric Works SUNX Co., Ltd. 2010
查看更多

相关文章

您可能关注的文档