三菱PLC基本指令
三菱plc常用的指令
19 BIN BIN变换,BCD→BIN
三 算术、逻辑运算指令—FNC20~29 BIN----二进制 BCD----十进制
20 ADD BIN加法
十四 时钟运算指令—FNC160~169
160 TCMP 时钟数据比较
161 TZCP 时钟数据区间比较
162 TADD 时钟数据加法
163 TSUB 时钟数据减法
166 TRD 时钟数据读出
42 ENCO 编码
43 SUM 求置ON位总数
44 BON ON位判别
45 MEAN 求平均值
46 ANS 信号报警器标志置位
一 程序流程控制指令—FNC00~09
00 CJ 条件转移
01 CALL 子程序调用
02 SRET 子程序返回
03 IRET 中断返回
167 TWR 时钟数据写入
169 HOUR 小时定时器
十五 变换指令—FNC170~177
170 GRY 二进制数→格雷码
171 GBIN 格雷码→二进制数
176 RD3A 读FXon-3A模拟量模块
131 COS BIN浮点数余弦函数(COS)
132 TAN BIN浮点数正切函数(TAN)
十二 交换指令—FNC147
147 SWAP 高低字节交换
十三 定位指令—FNC155~159
122 EMUL BIN浮点数乘法
123 EDIV BIN浮点数除法
127 ESQR BIN浮点数开方
129 INT BIN浮点数→BIN整数
130 SIN BIN浮点数正弦函数(SIN)
三菱PLC指令详解
1 触点指令00 LD 逻辑操作开始01 LDI 逻辑非操作开始02 AND 逻辑乘03 ANI 逻辑乘非04 OR 逻辑加05 ORI 逻辑加非2 连接指令06 ANB AND逻辑块与07 ORB OR逻辑块或08 MPS 存储操作结果09 MRD 从MPS读取操作结果10 MPP 从MPS读取操作结果并清除结果3 输出指令11 OUT 软元件输出12 SET 软元件置位13 RST 软元件复位14 PLS 在输入信号的上升沿15 PLF 在输入信号的下降沿16 CHK 软元件输出翻转4 移位指令17 SFT 元件移1位18 SFTP 元件移1位5 主控指令19 MC 主控开始20 MCR 主控复位6 结束指令21 FEND 结束主程序22 END 总的程序末尾,返回第0步7 其它指令23 STOP 停止24 NOP 空操作二基本指令1 比较指令16位数据比较25 LD= 当S1=S2, 接通,当S1≠S2, 断开26 AND=27 OR=28 LD<> 当S1≠S2, 接通,当S1=S2, 断开30 OR<>31 LD> 当S1>S2, 接通,当S1≤S2, 断开32 AND>33 OR>34 LD<= 当S1≤S2, 接通,当S1>S2, 断开35 AND<=36 OR<=37 LD< 当S1<S2, 接通,当S1≥S2, 断开38 AND<39 OR<40 LD>= 当S1≥S2, 接通,当S1<S2, 断开41 AND>=42 OR>=32位数据比较43 LDD= 当(S1+1,S1)=(S2+1,S2), 接通44 ANDD=45 ORD=46 LDD<> 当(S1+1,S1)≠(S2+1,S2),接通47 ANDD<>48 ORD<>49 LDD> 当(S1+1,S1)>(S2+1,S2), 接通50 ANDD>51 ORD>52 LDD<= 当(S1+1,S1)≤(S2+1,S2),接通53 ANDD<=54 ORD<=55 LDD< 当(S1+1,S1)<(S2+1,S2), 接通56 ANDD<57 ORD<58 LDD>= 当(S1+1,S1)≥(S2+1,S2),接通59 ANDD>=60 ORD>=2 算术运算指令二进制16位加/减61 + (D)+(S)→(D)62 +P63 + (S1)+(S2)→(D)64 +P65 - (D)-(S)→(D)67 - (S1)-(S2)→(D)68 -P二进制32位加/减69 D+ (D+1,D)+(S+1,S)→(D+1,D)70 D+P71 D+ (S1+1,S1)+(S2+1,S2)→(D+1,D)72 D+P73 D- (D+1,D)-(S+1,S)→(D+1,D)74 D-P75 D- (S1+1,S1)-(S2+1,S2)→(D+1,D)76 D-P77 * (S1)×(S2)→(D+1,D)78 *P79 / (S1)/(S2)→商(D), 余数(D+1)80 /P81 D* (S1+1,S1)×(S2+1,S2)→(D+3,D+2,D+1,D)82 D*P83 D/ (S1+1,S1)/(S2+1,S2)→商(D+1,D),余数(D+3,D+2)84 D/P85 B+ (D)+(S)→(D)86 B+P87 B+ (S1)+(S2)→(D)88 B+P89 B- (D)-(S)→(D)90 B-P91 B- (S1)-(S2)→(D)92 B-P93 DB+ (D+1,D)+(S+1,S) →(D+1,D)94 DB+P95 DB+ (S1+1,S1)+(S2+1,S2)→(D+1,D)96 DB+P97 DB- (D+1,D)-(S+1,S)→(D+1,D)98 DB-P99 DB- (S1+1,S1)-(S2+1,S2)→(D+1,D) 100 DB-P101 B* (S1)×(S2)→(D+1,D)102 B*P103 B/ (S1)/(S2)→商(D),余数(D+1) 104 B/P105 DB* (S1+1,S1)×(S2+1,S2)→(D+3,D+2,D+1,D)107 DB/ (S1+1,S1)/(S2+1,S2)→商(D+1,D),余数(D+3,D+2)108 DB/P109 INC (D)+1→(D)110 INCP111 DINC (D+1,D)+1→(D+1,D)112 DINCP113 DEC (D)-1→(D)114 DECP115 DDEC (D+1,D)-1→(D+1,D)116 DDECP3 BCD—二进制转换117 BCD (S)→(D)BCD转换118 BCDP119 DBCD (S+1,S)→(D+1,D)120 DBCDP121 BIN (S)→(D)二进制转换122 BINP123 DBIN (S+1,S)→(D+1,D)124 DBINP4 数据传送指令125 MOV (S)→(D)126 MOVP127 DMOV (S+1,S)→(D+1,D)128 DMOVP129 CML (S)→(D)130 CMLP131 DCML (S+1,S)→(D+1,D)132 DCML133 DCMLP134 BMOV (S)→(D)n个135 BMOVP136 FMOV (S)→(D)n个137 FMOVP138 XCH (D1)←→(D2)139 XCHP140 DXCH (D1+1,D1)←→(D2+1,D2)141 DXCHP5 程序分支指令142 CJ 条件满足,跳转到P**处143 SCJ 条件满足后紧接的扫描周期, 跳转到P**处144 JMP 无条件跳转到P**处145 CALL 执行P**处子程序146 CALLP147 RET 从子程序返回148 EI 允许中断149 DI 禁止中断150 IRET 从中断程序返回151 SUB 执行n指定的程序152 SUBP6 程序切换指令153 CHG 在主副程序间切换7 刷新指令154 COM 执行通讯刷新155 EI 允许通讯刷新156 DI 禁止通讯刷新157 SEG 对应软元件的刷新,仅执行1个扫描周期,M9052 ON时有效三应用指令1 逻辑运算指令158 WAND (D) AND (S)→(D)159 WANDP160 WAND (S1) AND (S2)→(D)161 WANDP162 DAND (D+1,D) AND (S+1,S)→(D+1,D)163 DANDP164 WOR (D) OR (S)→(D)165 WORP166 WOR (S1) OR (S2)→(D)167 WORP168 DOR (D+1,D) OR (S+1,S)→(D+1,D)169 DORP170 WXOR (D) XOR (S)→(D)异或171 WXORP172 WXOR (S1) XOR (S2)→(D)173 WXORP174 DXOR (D+1,D) XOR (S+1,S)→(D+1,D)175 DXORP176 WXNR (D) XOR (S)→(D)177 WXNRP178 WXNR (S1) XOR (S2)→(D)179 WXNRP180 DXNR (D+1,D) XOR (S+1,S)→(D+1,D)181 DXNRP182 NEG 0-(D)→(D)补码183 NEGP2 旋转指令184 ROR n位右转185 RORP186 RCR n位右转(带进位) 187 RCRP188 ROL n位左转189 ROLP190 RCL n位左转(带进位) 191 RCLP192 DROR n位右转193 DRORP194 DRCR n位右转(带进位) 195 DRCRP196 DROL n位左转197 DROLP198 DRCL n位左转(带进位) 199 DRCLP3 移位指令200 SFR n位右移201 SFRP202 SFL n位左移203 SFLP204 BSFR 1位右移205 BSFRP206 BSFL 1位左移207 BSFLP208 DSFR 1位右移209 DSFRP210 DSFL 1位左移211 DSFLP4 数据处理指令212 SER 数据搜索213 SERP214 SUM 位检查215 SUMP216 DSUM217 DSUMP218 DECO 译码编码219 DECOP220 ENCO221 ENCOP222 SEG 7段编码223 BSET 对字中n位置位224 BSETP225 BRST 对字中n位复位226 BRSTP227 DIS 组合分离228 DISP229 UNI230 UNIP231 ASC ASCII转化5 先进先出指令232 FIFW FIFO写233 FIFWP234 FIFR FIFO读235 FIFRP6 内存缓冲区存取指令236 FROM 从特殊功能模块读取数据237 FROMP238 DFRO239 DFROP240 TO 向特殊功能模块写数据241 TOP242 DTO243 FROM 从远程I/O站读数据244 FROMP245 DFRO246 DFROP247 TO 向远程站写数据248 TOP249 DTO250 DTOP7 FOR/NEXT指令251 FOR 重复n次252 NEXT8 本地站、远程I/O站存取指令253 LRDP 从本地站读数据254 LWTP 向本地站写数据255 RFRP 从远程特殊功能模块读数据256 RTOP 向远程特殊功能模块写数据9 显示指令257 PR 从指定的8点字软元件输出16个字符的ASCII码258 PR 顺序向输出模块输出ASCII 码, 直到结束符NUL(00H)259 PRC 将字软元件的注释转换成ASCII码,并输出260 LED 将指定的8点字软元件显示16个字符的ASCII码261 LEDA 显示指定的英文数字字符262 LEDB263 LEDC 显示软元件S的注释264 LEDR 显示复位10 其它指令265 WDT WDT复位266 WDTP267 CHK 故障检测268 SLT 按参数设定的条件,数据被锁定269 SLTR 状态锁存复位,且执行SLT 270 STRA 按参数设定的条件,采样数据存入271 STRAR 采样跟踪复位,且允许执行272 STC 进位标志(M9012)ON273 CLC 进位标志(M9012)OFF274 DUTY 用户定义时钟11 伺服指令275 DSFRP 请求启动伺服程序276 PSFLP 数据修改特殊继电器和特殊寄存器一特殊继电器M清单M9000 熔丝断M9002 I/O组件校验出错M9004 MINI网通讯出错M9005 AC电源掉电检测M9006 电池电压低M9007 电池电压低锁存M9008 自诊断出错M9009 信号报警器检测M9010 运算出错标志M9011 运算出错标志锁存M9012 进位标志M9016 数据存储区清零标志M9017 数据存储区清零标志M9018 数据通讯监控切换M9020 0号用户定时时钟M9021 1号用户定时时钟M9022 2号用户定时时钟M9023 3号用户定时时钟M9024 4号用户定时时钟M9025 时钟数据设置请求M9026 时钟数据出错M9027 时钟数据显示M9028 时钟数据读请求M9030 0.1秒时钟M9031 0.2秒时钟M9032 1秒时钟M9033 2秒时钟M9034 1分钟时钟M9036 常开M9037 常闭M9038 RUN后第一个扫描周期ONM9039 运行标志M9040 暂停PAUSE允许线圈M9041 PAUSE状态触点M9042 停止状态触点M9043 采样跟踪完成M9044 采样跟踪M9046 采样跟踪M9047 采样跟踪准备M9048 RUN LED闪烁标志M9049 切换输出字符数目M9050 存放操作结果的存储区交换触点M9051 CHG指令执行禁止M9052 SEG指令切换M9053 EI/DI指令切换M9054 单步运行标志M9055 状态锁存完成标志M9056 主程序P, I设置请求M9057 副程序P, I设置程序M9060 副程序2P, I设置程序M9061 副程序3P, I设置程序M9060 远程终端出错M9061 通讯出错M9065 分离传送状态M9066 传送处理切换M9067 I/O组件出错检测M9068 测试模式M9069 线路故障时的输出M9073 WDT出错标志M9074 PCPU准备完成标志M9075 测试模式标志M9076 外部急停输入标志M9077 手动脉冲发生器轴设置错误标志M9078 测试模式请求出错标志M9079 伺复程序设置出错标志M9081 对远程模块的通讯请求M9082 最终站数不一致M9084 出错检测M9086 运行标志BASIC程序M9087 暂停(PAUSE)标志M9091 操作运行出错细节标志M9091 微机子程序调用出错标志M9092 双电源模块过热M9093 双工电源模块出错M9094 I/O改变标志M9095 双工运行校验出错M9096 A3VCPU A自校出错M9097 A3VCPU B自校出错M9098 A3VCPU C自校出错M9099 A3VTU自校出错M9100 SFC程序登记M9101 SFC程序起/停M9102 SFC启动状态M9103 连续步转移有效/失效M9104 连续转移防止标志M9108 步转移监控定时器起始(对应D9108)M9109 步转移监控定时器起始(对应D9109)M9110 步转移监控定时器起始(对应D9110)M9111 步转移监控定时器起始(对应D9111)M9112 步转移监控定时器起始(对应D9112)M9113 步转移监控定时器起始(对应D9113)M9114 步转移监控定时器起始(对应D9114)M9180 激活步采样跟踪完成标志M9181 激活步采样跟踪执行标志M9182 激活步采样跟踪有效M9196 在块停止时控制输出M9197~9198 保险丝熔断,I/O校核出错显示切换二特殊寄存器D9000 保险丝断D9001 保险丝断D9002 I/O组件校验出错D9003 SUM指令检测位数D9004 MINI网主通讯组件出错D9005 AC掉电计数D9006 电池不足D9008 自诊断出错D9009 信号报警器检测D9010 出错步D9011 出错步D9014 I/O控制模式D9015 CPU运行状态D9016 ROM/RAM设置D9017 最小扫描时间D9018 当前扫描时间D9019 最大扫描时间D9020 恒定扫描D9021 扫描时间D9022 1秒计数器D9025 时钟数据(年,月)D9026 时钟数据(日,时)D9027 时钟数据(分,秒)D9028 时钟数据(星期)D9021~D9034 远程终端组件参数设置D9035 远程I/O组件的通讯属性D9035 扩展文件寄存器D9036 总的站数D9036~9037 供指定扩展文件寄存器软件地址D9038~9039 LED显示优先级D9044 采样跟踪D9050 SFC程序出错代码D9051 出错块D9052 出错步D9053 转移出错D9054 出错顺控步D9055 状态锁存步序号D9061 通讯出错代码D9072 PC通讯检测D9081 对远程终端模块的已执行的通讯请求数D9082 最后的站号D9090 微机子程序输入数据区首软元件号D9091 指令出错D9094 待更换的I/O组件的首地址D9095 A3VTS系统和A3VCPU的运行状态D9096 A3VCPU A自检出错D9097 A3VCPU B自检出错D9098 A3VCPU C自检出错D9099 A3VTU 自检测出错D9100~D9107 断保险丝的组件D9100 保险丝熔断的组件D9108~D9114 步转移监控定时器设置D9116~D9123 I/O组件校验出错D9124 信号器报警数量检测D9125~D9132 信号报警器地址号D9133~D9140 远程终端卡信息D9141~D9172 通讯重发次数D9173 模式设置D9174 设置重发次数D9175 线缆出错模块出错代码D9180~9193远程终端模块出错代码D9180 轴1和轴2的限位开关输出状态存储区D9181 轴3和轴4的限位开关输出状态存储区D9182 轴5和轴6的限位开关输出状态存储区D9183 轴7和轴8的限位开关输出状态存储区D9184 CPU出错的原因D9185 伺服放大器接线数据D9187 手动脉冲发生器轴设置出错D9188 在TEST模式下启动轴号请求出错D9189 出错程序号D9190 数据设置出错D9191 伺服放大器类型D9196~9199 故障站检测D9200 LRDP处理结果D9201 LWTP处理结果D9204 通讯状态D9205 执行回送的站D9206 执行回送的站D9207 通讯扫描时间(最大值)D9208 通讯扫描时间(最小值)D9209 通讯扫描时间(当前值)D9210 重发次数D9211 环路切换计数D9212 就地站运行状态(1~16)D9213 就地站运行状态(17~32)D9214 就地站运行状态(33~48)D9215 就地站运行状态(49~64)D9216 就地站出错检测(1~16)D9217 就地站出错检测(17~32)D9218 就地站出错检测(33~48)D9219 就地站出错检测(49~64)D9220 就地站参数不匹配或(1~16)远程站I/O分配出错D9221 就地站参数不匹配或(17~32)远程站I/O分配出错D9222 就地站参数不匹配或(33~48)远程站I/O分配出错D9223 就地站参数不匹配或(49~64)远程站I/O分配出错D9224 主站与从站和远程I/O站之间的初始通讯(1~16) D9225 主站与从站和远程I/O站之间的初始通讯(17~32) D9226 主站与从站和远程I/O站之间的初始通讯(33~48) D9227 主站与从站和远程I/O站之间的初始通讯(49~64) D9228 就地站或远程I/O站出错(1~16)D9229 就地站或远程I/O站出错(17~32)D9230 就地站或远程I/O站出错(33~48)D9231 就地站或远程I/O站出错(49~64)D9232 就地站或远程I/O站环路出错D9233 就地站或远程I/O站环路出错D9234 就地站或远程I/O站环路出错D9235 就地站或远程I/O站环路出错D9236 就地站或远程I/O站环路出错D9237 就地站或远程I/O站环路出错D9238 就地站或远程I/O站环路出错D9239 就地站或远程I/O站环路出错D9240 检测到接收出错的次数D9243 本站站号检测D9244 从站的总数D9245 检测到的接收出错次数D9248 就地站运行状态D9249 就地站运行状态D9250 就地站运行状态D9251 就地站运行状态D9252 就地站出错检测D9253 就地站出错检测D9254 就地站出错检测D9255 就地站出错检测各种软元件一览表项目A1,A1NA1S A2,A2NA2C A2-S1A2N-S1 A3,A3NA3A A2U,A3UA4U I/O软元件点256 512 1024 2048 8192输入继电器X 0~FF 0~1FF 0~3FF 0~7FF 0~FFF输出继电器Y 0~FF 0~1FF 0~3FF 0~7FF 0~FFF辅助继电器内部继电器(1000点)M0~M999 M0~M999, M2048~8191 特殊继电器(256点)M9000~M9255锁存继电器(1048点)L1000~L2048通讯用继电器(2048点)B0~B3FF B0~BFFF定时器100ms定时器(200点)T0~T19910ms定时器(56点)T200~T255100ms记忆定时器(0点)计数器(256点)C0~C255寄存器数据寄存器(1024点)D0~D1023 D0~D6143特殊寄存器(256点)D9000~D9255通讯寄存器(1024点)W0~W3FF W0~WFFF累加器(2点)A0,A1变址寄存器(2点)Z, V Z,Z1~Z6(7点), V,V1~V6(7点)嵌套(8点)N0~ N7指针(256点)P0~P255中断指针(32点)I0~I31常数十进制K (16位)-32768~+32767(32位)-2147483648 ~+2147483647十六进制H (16位)0~FFFF(32位)0~FFFFFFFF。
三菱PLC功能指令
三菱PLC功能指令1.位操作指令:位操作指令用于读取、写入和修改位级别的数据。
常见的位操作指令包括LD(逻辑与)、ORR(逻辑或)、AND(逻辑与)、XOR(异或)等。
2.数据操作指令:数据操作指令用于读取、写入和修改字节、字和双字级别的数据。
常见的数据操作指令包括MOV(赋值)、ADD(加法)、SUB(减法)、MUL(乘法)、DIV(除法)等。
3.计数器指令:计数器指令用于实现计数功能。
有三种类型的计数器指令:上升沿计数器、下降沿计数器和阶段计数器。
计数器指令可以用于进行数量统计、进度监测等应用。
4.定时器指令:定时器指令用于实现定时功能。
有两种类型的定时器指令:上升沿定时器和下降沿定时器。
定时器指令可以用于进行时间监测、延时操作等应用。
5.移位指令:移位指令用于将数据的位进行移动。
常见的移位指令包括SHL(左移)、SHR(右移)等。
移位指令通常用于数据处理和位拼接等应用。
6.比较指令:比较指令用于比较两个数值的大小。
常见的比较指令包括CMP(比较)、EQ(等于)、NE(不等于)、GT(大于)等。
比较指令可以用于实现条件判断和逻辑控制等应用。
7.转移指令:转移指令用于控制程序的流程。
常见的转移指令包括JMP(无条件跳转)、JE(等于时跳转)、JNE(不等于时跳转)、JG(大于时跳转)等。
转移指令可以用于实现程序的循环和条件判断等应用。
8.存储器控制指令:存储器控制指令用于读取和写入存储器的数据。
常见的存储器控制指令包括LD(读取)、ST(写入)等。
存储器控制指令可以用于实现数据存储和加载等应用。
9.数学指令:数学指令用于实现各种数学运算。
常见的数学指令包括SIN(正弦)、COS(余弦)、SQRT(平方根)等。
数学指令可以用于实现数据处理和数值计算等应用。
10.基本运算指令:基本运算指令用于实现基本的数值运算。
常见的基本运算指令包括加法、减法、乘法和除法等。
基本运算指令通常用于实现逻辑计算和数据处理等应用。
三菱PLC编程要记住一些常用指令
三菱 FX 系列plc的基本逻辑指令取指令与输出指令(LD/LDI/LDP/LDF/OUT)(1)LD(取指令)一个常开触点与左母线连接的指令,每一个以常开触点开始的逻辑行都用此指令。
(2)LDI(取反指令)一个常闭触点与左母线连接指令,每一个以常闭触点开始的逻辑行都用此指令。
(3)LDP(取上升沿指令) 与左母线连接的常开触点的上升沿检测指令,仅在指定位元件的上升沿(由OFF→ON)时接通一个扫描周期。
(4)LDF(取下降沿指令)与左母线连接的常闭触点的下降沿检测指令。
(5)OUT(输出指令)对线圈进行驱动的指令,也称为输出指令。
取指令与输出指令的使用说明:1)LD、LDI指令既可用于输入左母线相连的触点,也可与ANB、ORB指令配合实现块逻辑运算;2)LDP、LDF指令仅在对应元件有效时维持一个扫描周期的接通。
3)LD、LDI、LDP、LDF指令的目标元件为X 、Y 、M 、T、C、S;4)OUT指令可以连续使用若干次(相当于线圈并联),对于定时器和计数器,在OUT指令之后应设置常数K或数据寄存器。
5)OUT指令目标元件为Y、M、T、C和S,但不能用于X。
触点串联指令(AN D/ANI/ANDP/ANDF)(1)AND(与指令) 一个常开触点串联连接指令,完成逻辑“与”运算。
(2)ANI(与反指令) 一个常闭触点串联连接指令,完成逻辑“与非”运算。
(3)ANDP 上升沿检测串联连接指令。
(4)ANDF 下降沿检测串联连接指令。
触点串联指令的使用的使用说明:1)AND、ANI、ANDP、ANDF都指是单个触点串联连接的指令,串联次数没有限制,可反复使用。
2)AND、ANI、ANDP、ANDF的目标元元件为X、Y、M、T、C和S。
3)OUT M101指令之后通过T1的触点去驱动Y4称为连续输出。
触点并联指令(OR/ORI/ORP/ORF)(1)OR(或指令) 用于单个常开触点的并联,实现逻辑“或”运算。
三菱FX系列PLC基本指令应用
图 1 取指令与输出指令的使用取指令与输出指令的使用说明:1 )LD 、LDI 指令既可用于输入左母线相连的触点,也可与ANB 、ORB 指令配合实现块逻辑运算;2 )LDP 、LDF 指令仅在对应元件有效时维持一个扫描周期的接通。
图3-15 中,当M1 有一个下降沿时,则Y3 只有一个扫描周期为ON 。
3 )LD 、LDI 、LDP 、LDF 指令的目标元件为X 、Y 、M 、T 、C 、S ;4 )OUT 指令可以连续使用若干次(相当于线圈并联),对于定时器和计数器,在OUT 指令之后应设置常数K 或数据寄存器。
5 )OUT 指令目标元件为Y 、M 、T 、C 和S ,但不能用于X 。
FX系列PLC —触点串联指令(AND/ANI/ANDP/ANDF)( 1 )AND (与指令)一个常开触点串联连接指令,完成逻辑“与”运算。
( 2 )ANI (与反指令)一个常闭触点串联连接指令,完成逻辑“与非”运算。
( 3 )ANDP 上升沿检测串联连接指令。
( 4 )ANDF 下降沿检测串联连接指令。
触点串联指令的使用如图 1 所示。
图 1 触点串联指令的使用触点串联指令的使用的使用说明:1 )AND 、ANI 、ANDP 、ANDF 都指是单个触点串联连接的指令,串联次数没有限制,可反复使用。
2 )AND 、ANI 、ANDP 、ANDF 的目标元元件为X 、Y 、M 、T 、C 和S 。
3 )图1 中OUT M101 指令之后通过T1 的触点去驱动Y4 称为连续输出。
FX系列PLC —触点并联指令(OR/ORI/ORP/ORF)( 1 )OR (或指令)用于单个常开触点的并联,实现逻辑“或”运算。
( 2 )ORI (或非指令)用于单个常闭触点的并联,实现逻辑“或非”运算。
( 3 )ORP 上升沿检测并联连接指令。
( 4 )ORF 下降沿检测并联连接指令。
触点并联指令的使用如图 1 所示。
图 1 触点并联指令的使用触点并联指令的使用说明:1 )OR 、ORI 、ORP 、ORF 指令都是指单个触点的并联,并联触点的左端接到LD 、LDI 、LDP 或LPF 处,右端与前一条指令对应触点的右端相连。
三菱PLC指令详解
一顺控指令1 触点指令00 LD 逻辑操作开始01 LDI 逻辑非操作开始02 AND 逻辑乘03 ANI 逻辑乘非04 OR 逻辑加05 ORI 逻辑加非2 连接指令06 ANB AND逻辑块与07 ORB OR逻辑块或08 MPS 存储操作结果09 MRD 从MPS读取操作结果10 MPP 从MPS读取操作结果并清除结果3 输出指令11 OUT 软元件输出12 SET 软元件置位13 RST 软元件复位14 PLS 在输入信号的上升沿15 PLF 在输入信号的下降沿16 CHK 软元件输出翻转4 移位指令17 SFT 元件移1位18 SFTP 元件移1位5 主控指令19 MC 主控开始20 MCR 主控复位6 结束指令21 FEND 结束主程序22 END 总的程序末尾,返回第0步7 其它指令23 STOP 停止24 NOP 空操作二基本指令1 比较指令16位数据比较25 LD= 当S1=S2, 接通,当S1≠S2, 断开26 AND=27 OR=28 LD<> 当S1≠S2, 接通,当S1=S2, 断开29 AND<>30 OR<>31 LD> 当S1>S2, 接通,当S1≤S2, 断开32 AND>33 OR>34 LD<= 当S1≤S2, 接通,当S1>S2, 断开35 AND<=36 OR<=37 LD< 当S1<S2, 接通,当S1≥S2, 断开38 AND<39 OR<40 LD>= 当S1≥S2, 接通,当S1<S2, 断开41 AND>=42 OR>=32位数据比较43 LDD= 当(S1+1,S1)=(S2+1,S2), 接通44 ANDD=45 ORD=46 LDD<> 当(S1+1,S1)≠(S2+1,S2),接通47 ANDD<>48 ORD<>49 LDD> 当(S1+1,S1)>(S2+1,S2), 接通50 ANDD>51 ORD>52 LDD<= 当(S1+1,S1)≤(S2+1,S2),接通53 ANDD<=54 ORD<=55 LDD< 当(S1+1,S1)<(S2+1,S2), 接通56 ANDD<57 ORD<58 LDD>= 当(S1+1,S1)≥(S2+1,S2),接通59 ANDD>=60 ORD>=2 算术运算指令二进制16位加/减61 + (D)+(S)→(D)62 +P63 + (S1)+(S2)→(D)64 +P65 - (D)-(S)→(D)66 -P67 - (S1)-(S2)→(D)68 -P二进制32位加/减69 D+ (D+1,D)+(S+1,S)→(D+1,D)70 D+P71 D+ (S1+1,S1)+(S2+1,S2)→(D+1,D)72 D+P73 D- (D+1,D)-(S+1,S)→(D+1,D)74 D-P75 D- (S1+1,S1)-(S2+1,S2)→(D+1,D)76 D-P77 * (S1)×(S2)→(D+1,D)78 *P79 / (S1)/(S2)→商(D), 余数(D+1)80 /P81 D* (S1+1,S1)×(S2+1,S2)→(D+3,D+2,D+1,D)82 D*P83 D/ (S1+1,S1)/(S2+1,S2)→商(D+1,D),余数(D+3,D+2)84 D/P85 B+ (D)+(S)→(D)86 B+P87 B+ (S1)+(S2)→(D)88 B+P89 B- (D)-(S)→(D)90 B-P91 B- (S1)-(S2)→(D)92 B-P93 DB+ (D+1,D)+(S+1,S) →(D+1,D)94 DB+P95 DB+ (S1+1,S1)+(S2+1,S2)→(D+1,D)96 DB+P97 DB- (D+1,D)-(S+1,S)→(D+1,D)98 DB-P99 DB- (S1+1,S1)-(S2+1,S2)→(D+1,D) 100 DB-P101 B* (S1)×(S2)→(D+1,D)102 B*P103 B/ (S1)/(S2)→商(D),余数(D+1) 104 B/P105 DB* (S1+1,S1)×(S2+1,S2)→(D+3,D+2,D+1,D)106 DB*P107 DB/ (S1+1,S1)/(S2+1,S2)→商(D+1,D),余数(D+3,D+2) 108 DB/P109 INC (D)+1→(D)110 INCP111 DINC (D+1,D)+1→(D+1,D) 112 DINCP113 DEC (D)-1→(D)114 DECP115 DDEC (D+1,D)-1→(D+1,D) 116 DDECP3 BCD—二进制转换117 BCD (S)→(D)BCD转换118 BCDP119 DBCD (S+1,S)→(D+1,D) 120 DBCDP121 BIN (S)→(D)二进制转换122 BINP123 DBIN (S+1,S)→(D+1,D) 124 DBINP4 数据传送指令125 MOV (S)→(D)126 MOVP127 DMOV (S+1,S)→(D+1,D)128 DMOVP129 CML (S)→(D)130 CMLP131 DCML (S+1,S)→(D+1,D)132 DCML133 DCMLP134 BMOV (S)→(D)n个135 BMOVP136 FMOV (S)→(D)n个137 FMOVP138 XCH (D1)←→(D2)139 XCHP140 DXCH (D1+1,D1)←→(D2+1,D2)141 DXCHP5 程序分支指令142 CJ 条件满足,跳转到P**处143 SCJ 条件满足后紧接的扫描周期, 跳转到P**处144 JMP 无条件跳转到P**处145 CALL 执行P**处子程序146 CALLP147 RET 从子程序返回148 EI 允许中断149 DI 禁止中断150 IRET 从中断程序返回151 SUB 执行n指定的程序152 SUBP6 程序切换指令153 CHG 在主副程序间切换7 刷新指令154 COM 执行通讯刷新155 EI 允许通讯刷新156 DI 禁止通讯刷新157 SEG 对应软元件的刷新,仅执行1个扫描周期,M90 52 ON时有效三应用指令1 逻辑运算指令158 WAND (D) AND (S)→(D)159 WANDP160 WAND (S1) AND (S2)→(D)161 WANDP162 DAND (D+1,D) AND (S+1,S)→(D+1,D) 163 DANDP164 WOR (D) OR (S)→(D)165 WORP166 WOR (S1) OR (S2)→(D)167 WORP168 DOR (D+1,D) OR (S+1,S)→(D+1,D) 169 DORP170 WXOR (D) XOR (S)→(D)异或171 WXORP172 WXOR (S1) XOR (S2)→(D)173 WXORP174 DXOR (D+1,D) XOR (S+1,S)→(D+1,D) 175 DXORP176 WXNR (D) XOR (S)→(D)177 WXNRP178 WXNR (S1) XOR (S2)→(D)179 WXNRP180 DXNR (D+1,D) XOR (S+1,S)→(D+1,D) 181 DXNRP182 NEG 0-(D)→(D)补码183 NEGP2 旋转指令184 ROR n位右转185 RORP186 RCR n位右转(带进位) 187 RCRP188 ROL n位左转189 ROLP190 RCL n位左转(带进位) 191 RCLP192 DROR n位右转193 DRORP194 DRCR n位右转(带进位) 195 DRCRP196 DROL n位左转197 DROLP198 DRCL n位左转(带进位) 199 DRCLP3 移位指令200 SFR n位右移201 SFRP202 SFL n位左移203 SFLP204 BSFR 1位右移205 BSFRP206 BSFL 1位左移207 BSFLP208 DSFR 1位右移209 DSFRP210 DSFL 1位左移211 DSFLP4 数据处理指令212 SER 数据搜索213 SERP214 SUM 位检查215 SUMP216 DSUM217 DSUMP218 DECO 译码编码219 DECOP220 ENCO221 ENCOP222 SEG 7段编码223 BSET 对字中n位置位224 BSETP225 BRST 对字中n位复位226 BRSTP227 DIS 组合分离228 DISP229 UNI230 UNIP231 ASC ASCII转化5 先进先出指令232 FIFW FIFO写233 FIFWP234 FIFR FIFO读235 FIFRP6 内存缓冲区存取指令236 FROM 从特殊功能模块读取数据237 FROMP238 DFRO239 DFROP240 TO 向特殊功能模块写数据241 TOP242 DTO243 FROM 从远程I/O站读数据244 FROMP245 DFRO246 DFROP247 TO 向远程站写数据248 TOP249 DTO250 DTOP7 FOR/NEXT指令251 FOR 重复n次252 NEXT8 本地站、远程I/O站存取指令253 LRDP 从本地站读数据254 LWTP 向本地站写数据255 RFRP 从远程特殊功能模块读数据256 RTOP 向远程特殊功能模块写数据9 显示指令257 PR 从指定的8点字软元件输出16个字符的ASCII码258 PR 顺序向输出模块输出ASCII 码, 直到结束符NUL(00H)259 PRC 将字软元件的注释转换成ASCII码,并输出260 LED 将指定的8点字软元件显示16个字符的ASCII码261 LEDA 显示指定的英文数字字符262 LEDB263 LEDC 显示软元件S的注释264 LEDR 显示复位10 其它指令265 WDT WDT复位266 WDTP267 CHK 故障检测268 SLT 按参数设定的条件,数据被锁定269 SLTR 状态锁存复位,且执行SLT 270 STRA 按参数设定的条件,采样数据存入271 STRAR 采样跟踪复位,且允许执行272 STC 进位标志(M9012)ON273 CLC 进位标志(M9012)OFF274 DUTY 用户定义时钟11 伺服指令275 DSFRP 请求启动伺服程序276 PSFLP 数据修改特殊继电器和特殊寄存器一特殊继电器M清单M9000 熔丝断M9002 I/O组件校验出错M9004 MINI网通讯出错M9005 AC电源掉电检测M9006 电池电压低M9007 电池电压低锁存M9008 自诊断出错M9009 信号报警器检测M9010 运算出错标志M9011 运算出错标志锁存M9012 进位标志M9016 数据存储区清零标志M9017 数据存储区清零标志M9018 数据通讯监控切换M9020 0号用户定时时钟M9021 1号用户定时时钟M9022 2号用户定时时钟M9023 3号用户定时时钟M9024 4号用户定时时钟M9025 时钟数据设置请求M9026 时钟数据出错M9027 时钟数据显示M9028 时钟数据读请求M9030 0.1秒时钟M9031 0.2秒时钟M9032 1秒时钟M9033 2秒时钟M9034 1分钟时钟M9036 常开M9037 常闭M9038 RUN后第一个扫描周期ONM9039 运行标志M9040 暂停PAUSE允许线圈M9041 PAUSE状态触点M9042 停止状态触点M9043 采样跟踪完成M9044 采样跟踪M9046 采样跟踪M9047 采样跟踪准备M9048 RUN LED闪烁标志M9049 切换输出字符数目M9050 存放操作结果的存储区交换触点M9051 CHG指令执行禁止M9052 SEG指令切换M9053 EI/DI指令切换M9054 单步运行标志M9055 状态锁存完成标志M9056 主程序P, I设置请求M9057 副程序P, I设置程序M9060 副程序2P, I设置程序M9061 副程序3P, I设置程序M9060 远程终端出错M9061 通讯出错M9065 分离传送状态M9066 传送处理切换M9067 I/O组件出错检测M9068 测试模式M9069 线路故障时的输出M9073 WDT出错标志M9074 PCPU准备完成标志M9075 测试模式标志M9076 外部急停输入标志M9077 手动脉冲发生器轴设置错误标志M9078 测试模式请求出错标志M9079 伺复程序设置出错标志M9081 对远程模块的通讯请求M9082 最终站数不一致M9084 出错检测M9086 运行标志BASIC程序M9087 暂停(PAUSE)标志M9091 操作运行出错细节标志M9091 微机子程序调用出错标志M9092 双电源模块过热M9093 双工电源模块出错M9094 I/O改变标志M9095 双工运行校验出错M9096 A3VCPU A自校出错M9097 A3VCPU B自校出错M9098 A3VCPU C自校出错M9099 A3VTU自校出错M9100 SFC程序登记M9101 SFC程序起/停M9102 SFC启动状态M9103 连续步转移有效/失效M9104 连续转移防止标志M9108 步转移监控定时器起始(对应D9108) M9109 步转移监控定时器起始(对应D9109)M9110 步转移监控定时器起始(对应D9110)M9111 步转移监控定时器起始(对应D9111)M9112 步转移监控定时器起始(对应D9112)M9113 步转移监控定时器起始(对应D9113)M9114 步转移监控定时器起始(对应D9114)M9180 激活步采样跟踪完成标志M9181 激活步采样跟踪执行标志M9182 激活步采样跟踪有效M9196 在块停止时控制输出M9197~9198 保险丝熔断,I/O校核出错显示切换二特殊寄存器D9000 保险丝断D9001 保险丝断D9002 I/O组件校验出错D9003 SUM指令检测位数D9004 MINI网主通讯组件出错D9005 AC掉电计数D9006 电池不足D9008 自诊断出错D9009 信号报警器检测D9010 出错步D9011 出错步D9014 I/O控制模式D9015 CPU运行状态D9016 ROM/RAM设置D9017 最小扫描时间D9018 当前扫描时间D9019 最大扫描时间D9020 恒定扫描D9021 扫描时间D9022 1秒计数器D9025 时钟数据(年,月)D9026 时钟数据(日,时)D9027 时钟数据(分,秒)D9028 时钟数据(星期)D9021~D9034 远程终端组件参数设置D9035 远程I/O组件的通讯属性D9035 扩展文件寄存器D9036 总的站数D9036~9037 供指定扩展文件寄存器软件地址D9038~9039 LED显示优先级D9044 采样跟踪D9050 SFC程序出错代码D9051 出错块D9052 出错步D9053 转移出错D9054 出错顺控步D9055 状态锁存步序号D9061 通讯出错代码D9072 PC通讯检测D9081 对远程终端模块的已执行的通讯请求数D9082 最后的站号D9090 微机子程序输入数据区首软元件号D9091 指令出错D9094 待更换的I/O组件的首地址D9095 A3VTS系统和A3VCPU的运行状态D9096 A3VCPU A自检出错D9097 A3VCPU B自检出错D9098 A3VCPU C自检出错D9099 A3VTU 自检测出错D9100~D9107 断保险丝的组件D9100 保险丝熔断的组件D9108~D9114 步转移监控定时器设置D9116~D9123 I/O组件校验出错D9124 信号器报警数量检测D9125~D9132 信号报警器地址号D9133~D9140 远程终端卡信息D9141~D9172 通讯重发次数D9173 模式设置D9174 设置重发次数D9175 线缆出错模块出错代码D9180~9193远程终端模块出错代码D9180 轴1和轴2的限位开关输出状态存储区D9181 轴3和轴4的限位开关输出状态存储区D9182 轴5和轴6的限位开关输出状态存储区D9183 轴7和轴8的限位开关输出状态存储区D9184 CPU出错的原因D9185 伺服放大器接线数据D9187 手动脉冲发生器轴设置出错D9188 在TEST模式下启动轴号请求出错D9189 出错程序号D9190 数据设置出错D9191 伺服放大器类型D9196~9199 故障站检测D9200 LRDP处理结果D9201 LWTP处理结果D9204 通讯状态D9205 执行回送的站D9206 执行回送的站D9207 通讯扫描时间(最大值)D9208 通讯扫描时间(最小值)D9209 通讯扫描时间(当前值)D9210 重发次数D9211 环路切换计数D9212 就地站运行状态(1~16)D9213 就地站运行状态(17~32)D9214 就地站运行状态(33~48)D9215 就地站运行状态(49~64)D9216 就地站出错检测(1~16)D9217 就地站出错检测(17~32)D9218 就地站出错检测(33~48)D9219 就地站出错检测(49~64)D9220 就地站参数不匹配或(1~16)远程站I/O分配出错D9221 就地站参数不匹配或(17~32)远程站I/O分配出错D9222 就地站参数不匹配或(33~48)远程站I/O分配出错D9223 就地站参数不匹配或(49~64)远程站I/O分配出错D9224 主站与从站和远程I/O站之间的初始通讯(1~16) D9225 主站与从站和远程I/O站之间的初始通讯(17~32) D9226 主站与从站和远程I/O站之间的初始通讯(33~48) D9227 主站与从站和远程I/O站之间的初始通讯(49~64) D9228 就地站或远程I/O站出错(1~16)D9229 就地站或远程I/O站出错(17~32) D9230 就地站或远程I/O站出错(33~48) D9231 就地站或远程I/O站出错(49~64) D9232 就地站或远程I/O站环路出错D9233 就地站或远程I/O站环路出错D9234 就地站或远程I/O站环路出错D9235 就地站或远程I/O站环路出错D9236 就地站或远程I/O站环路出错D9237 就地站或远程I/O站环路出错D9238 就地站或远程I/O站环路出错D9239 就地站或远程I/O站环路出错D9240 检测到接收出错的次数D9243 本站站号检测D9244 从站的总数D9245 检测到的接收出错次数D9248 就地站运行状态D9249 就地站运行状态D9250 就地站运行状态D9251 就地站运行状态D9252 就地站出错检测D9253 就地站出错检测D9254 就地站出错检测D9255 就地站出错检测各种软元件一览表项目A1,A1NA1S A2,A2NA2C A2-S1A2N-S1 A3,A3NA3A A2U, A3UA4UI/O软元件点256 512 1024 2048 8192输入继电器X 0~FF 0~1FF 0~3FF 0~7FF 0~FFF输出继电器Y 0~FF 0~1FF 0~3FF 0~7FF 0~FFF辅助继电器内部继电器(1000点)M0~M999 M0~M999, M204 8~8191特殊继电器(256点)M9000~M9255锁存继电器(1048点)L1000~L2048通讯用继电器(2048点)B0~B3FF B0~BFFF定时器100ms定时器(200点)T0~T19910ms定时器(56点)T200~T255100ms记忆定时器(0点)计数器(256点)C0~C255寄存器数据寄存器(1024点)D0~D1023 D0~D6143特殊寄存器(256点)D9000~D9255通讯寄存器(1024点)W0~W3FF W0~WFFF累加器(2点)A0,A1变址寄存器(2点)Z, V Z,Z1~Z6(7点), V,V1~V6(7点) 嵌套(8点)N0~ N7指针(256点)P0~P255中断指针(32点)I0~I31常数十进制K (16位)-32768~+32767(32位)-2147483648 ~+2147483647十六进制H (16位)0~FFFF(32位)0~FFFFFFFF。
三菱PLC基本指令
三菱PLC基本指令PLC原理和编程实例分析第3章基本指令FX2N系列的PLC共有基本指令27条,本章主要介绍这些基本指令的功能。
并掌握由梯形图转化成指令表,指令表转化成梯形图的方法;然后通过一些编程的示例理解基本指令的应用和一些编程的规则。
3.1 基本指令LD,取指令,表示每一行程序中第一个与母线相连的常开触点。
另外,与后面讲到LDI,取反指令,与 LD的用法相同,只是LDI是对常闭触点。
LD、LDI两条指令的目标元件是X、Y、M、S、T、C。
OUT,线圈驱动指令。
是对输出继电器(Y)、辅助继电器(M)、状态器(S)、定时器的ANB、ORB指令组合,在分支起点处也可使用。
3.1.1 LD、LDI、OUT指令(T)、计数器(C)的线圈驱动,对输入继电器(X)不能使用。
程序步号X0Y0X1T0Y1SP为空格键a) 梯形图b) 指令表指令目标元件与母线相连驱动线圈驱动定时器线圈定时器设定值0 LD X01 OUT Y02 LDI X13 OUT M04 OUTT07 LD T08 OUT Y1图3-1 LD、LDI、OUT指令的使用说明当OUT指令驱动的目标元件是定时器T和计数器C时,如设定值是常数K时,则K的设定范围如表3-1所示:程序步序号是自动生成,在输入程序时不用输入程序步号,不同的指令,程序步号是有所不同的。
表3-1 K值设定范围:- 36 -第3章基本指令用于单个常开接点的串联。
3.1.2 触点串联指令AND、ANIANI,与非指令。
用于单个常闭接点的串联。
AND与ANI都是一个程序步指令,串联触点的个数没有限制,该指令可以多次重复OUT指令后,通过接点对其他线圈使用OUT指令称为纵接输出或连续输出,如图3-2使用。
使用说明如图3-2所示。
这两条指令的目标元件为X、Y、M、S、T、C。
中的OUT Y3。
这种连续输出如果顺序不错,可以多次重复。
但是如果驱动顺序换成图3-3的形式,则必须用后述的MPS指令和MPR指令。
三菱PLC指令详解
一顺控指令1 触点指令00 LD 逻辑操作开始01 LDI 逻辑非操作开始02 AND 逻辑乘03 ANI 逻辑乘非04 OR 逻辑加05 ORI 逻辑加非2 连接指令06 ANB AND逻辑块与07 ORB OR逻辑块或08 MPS 存储操作结果09 MRD 从MPS读取操作结果10 MPP 从MPS读取操作结果并清除结果3 输出指令11 OUT 软元件输出12 SET 软元件置位13 RST 软元件复位14 PLS 在输入信号的上升沿15 PLF 在输入信号的下降沿16 CHK 软元件输出翻转4 移位指令17 SFT 元件移1位18 SFTP 元件移1位5 主控指令19 MC 主控开始20 MCR 主控复位6 结束指令21 FEND 结束主程序22 END 总的程序末尾,返回第0步7 其它指令23 STOP 停止24 NOP 空操作二基本指令1 比较指令16位数据比较25 LD= 当S1=S2, 接通,当S1≠S2, 断开26 AND=27 OR=28 LD<> 当S1≠S2, 接通,当S1=S2, 断开29 AND<>30 OR<>31 LD> 当S1>S2, 接通,当S1≤S2, 断开32 AND>33 OR>34 LD<= 当S1≤S2, 接通,当S1>S2, 断开35 AND<=36 OR<=37 LD< 当S1<S2, 接通,当S1≥S2, 断开38 AND<39 OR<40 LD>= 当S1≥S2, 接通,当S1<S2, 断开41 AND>=42 OR>=32位数据比较43 LDD= 当(S1+1,S1)=(S2+1,S2), 接通44 ANDD=45 ORD=46 LDD<> 当(S1+1,S1)≠(S2+1,S2),接通47 ANDD<>48 ORD<>49 LDD> 当(S1+1,S1)>(S2+1,S2), 接通50 ANDD>51 ORD>52 LDD<= 当(S1+1,S1)≤(S2+1,S2),接通53 ANDD<=54 ORD<=55 LDD< 当(S1+1,S1)<(S2+1,S2), 接通56 ANDD<57 ORD<58 LDD>= 当(S1+1,S1)≥(S2+1,S2),接通59 ANDD>=60 ORD>=2 算术运算指令二进制16位加/减61 + (D)+(S)→(D)62 +P63 + (S1)+(S2)→(D)64 +P65 - (D)-(S)→(D)66 -P67 - (S1)-(S2)→(D)68 -P二进制32位加/减69 D+ (D+1,D)+(S+1,S)→(D+1,D)70 D+P71 D+ (S1+1,S1)+(S2+1,S2)→(D+1,D)72 D+P73 D- (D+1,D)-(S+1,S)→(D+1,D)74 D-P75 D- (S1+1,S1)-(S2+1,S2)→(D+1,D)76 D-P77 * (S1)×(S2)→(D+1,D)78 *P79 / (S1)/(S2)→商(D), 余数(D+1)80 /P81 D* (S1+1,S1)×(S2+1,S2)→(D+3,D+2,D+1,D)82 D*P83 D/ (S1+1,S1)/(S2+1,S2)→商(D+1,D),余数(D+3,D+2)84 D/P85 B+ (D)+(S)→(D)86 B+P87 B+ (S1)+(S2)→(D)88 B+P89 B- (D)-(S)→(D)90 B-P91 B- (S1)-(S2)→(D)92 B-P93 DB+ (D+1,D)+(S+1,S) →(D+1,D)94 DB+P95 DB+ (S1+1,S1)+(S2+1,S2)→(D+1,D)96 DB+P97 DB- (D+1,D)-(S+1,S)→(D+1,D)98 DB-P99 DB- (S1+1,S1)-(S2+1,S2)→(D+1,D) 100 DB-P101 B* (S1)×(S2)→(D+1,D)102 B*P103 B/ (S1)/(S2)→商(D),余数(D+1) 104 B/P105 DB* (S1+1,S1)×(S2+1,S2)→(D+3,D+2,D+1,D)106 DB*P107 DB/ (S1+1,S1)/(S2+1,S2)→商(D+1,D),余数(D+3,D+2) 108 DB/P109 INC (D)+1→(D)110 INCP111 DINC (D+1,D)+1→(D+1,D) 112 DINCP113 DEC (D)-1→(D)114 DECP115 DDEC (D+1,D)-1→(D+1,D) 116 DDECP3 BCD—二进制转换117 BCD (S)→(D)BCD转换118 BCDP119 DBCD (S+1,S)→(D+1,D) 120 DBCDP121 BIN (S)→(D)二进制转换122 BINP123 DBIN (S+1,S)→(D+1,D) 124 DBINP4 数据传送指令125 MOV (S)→(D)126 MOVP127 DMOV (S+1,S)→(D+1,D)128 DMOVP129 CML (S)→(D)130 CMLP131 DCML (S+1,S)→(D+1,D)132 DCML133 DCMLP134 BMOV (S)→(D)n个135 BMOVP136 FMOV (S)→(D)n个137 FMOVP138 XCH (D1)←→(D2)139 XCHP140 DXCH (D1+1,D1)←→(D2+1,D2)141 DXCHP5 程序分支指令142 CJ 条件满足,跳转到P**处143 SCJ 条件满足后紧接的扫描周期, 跳转到P**处144 JMP 无条件跳转到P**处145 CALL 执行P**处子程序146 CALLP147 RET 从子程序返回148 EI 允许中断149 DI 禁止中断150 IRET 从中断程序返回151 SUB 执行n指定的程序152 SUBP6 程序切换指令153 CHG 在主副程序间切换7 刷新指令154 COM 执行通讯刷新155 EI 允许通讯刷新156 DI 禁止通讯刷新157 SEG 对应软元件的刷新,仅执行1个扫描周期,M90 52 ON时有效三应用指令1 逻辑运算指令158 WAND (D) AND (S)→(D)159 WANDP160 WAND (S1) AND (S2)→(D)161 WANDP162 DAND (D+1,D) AND (S+1,S)→(D+1,D) 163 DANDP164 WOR (D) OR (S)→(D)165 WORP166 WOR (S1) OR (S2)→(D)167 WORP168 DOR (D+1,D) OR (S+1,S)→(D+1,D) 169 DORP170 WXOR (D) XOR (S)→(D)异或171 WXORP172 WXOR (S1) XOR (S2)→(D)173 WXORP174 DXOR (D+1,D) XOR (S+1,S)→(D+1,D) 175 DXORP176 WXNR (D) XOR (S)→(D)177 WXNRP178 WXNR (S1) XOR (S2)→(D)179 WXNRP180 DXNR (D+1,D) XOR (S+1,S)→(D+1,D) 181 DXNRP182 NEG 0-(D)→(D)补码183 NEGP2 旋转指令184 ROR n位右转185 RORP186 RCR n位右转(带进位) 187 RCRP188 ROL n位左转189 ROLP190 RCL n位左转(带进位) 191 RCLP192 DROR n位右转193 DRORP194 DRCR n位右转(带进位) 195 DRCRP196 DROL n位左转197 DROLP198 DRCL n位左转(带进位) 199 DRCLP3 移位指令200 SFR n位右移201 SFRP202 SFL n位左移203 SFLP204 BSFR 1位右移205 BSFRP206 BSFL 1位左移207 BSFLP208 DSFR 1位右移209 DSFRP210 DSFL 1位左移211 DSFLP4 数据处理指令212 SER 数据搜索213 SERP214 SUM 位检查215 SUMP216 DSUM217 DSUMP218 DECO 译码编码219 DECOP220 ENCO221 ENCOP222 SEG 7段编码223 BSET 对字中n位置位224 BSETP225 BRST 对字中n位复位226 BRSTP227 DIS 组合分离228 DISP229 UNI230 UNIP231 ASC ASCII转化5 先进先出指令232 FIFW FIFO写233 FIFWP234 FIFR FIFO读235 FIFRP6 内存缓冲区存取指令236 FROM 从特殊功能模块读取数据237 FROMP238 DFRO239 DFROP240 TO 向特殊功能模块写数据241 TOP242 DTO243 FROM 从远程I/O站读数据244 FROMP245 DFRO246 DFROP247 TO 向远程站写数据248 TOP249 DTO250 DTOP7 FOR/NEXT指令251 FOR 重复n次252 NEXT8 本地站、远程I/O站存取指令253 LRDP 从本地站读数据254 LWTP 向本地站写数据255 RFRP 从远程特殊功能模块读数据256 RTOP 向远程特殊功能模块写数据9 显示指令257 PR 从指定的8点字软元件输出16个字符的ASCII码258 PR 顺序向输出模块输出ASCII 码, 直到结束符NUL(00H)259 PRC 将字软元件的注释转换成ASCII码,并输出260 LED 将指定的8点字软元件显示16个字符的ASCII码261 LEDA 显示指定的英文数字字符262 LEDB263 LEDC 显示软元件S的注释264 LEDR 显示复位10 其它指令265 WDT WDT复位266 WDTP267 CHK 故障检测268 SLT 按参数设定的条件,数据被锁定269 SLTR 状态锁存复位,且执行SLT 270 STRA 按参数设定的条件,采样数据存入271 STRAR 采样跟踪复位,且允许执行272 STC 进位标志(M9012)ON273 CLC 进位标志(M9012)OFF274 DUTY 用户定义时钟11 伺服指令275 DSFRP 请求启动伺服程序276 PSFLP 数据修改特殊继电器和特殊寄存器一特殊继电器M清单M9000 熔丝断M9002 I/O组件校验出错M9004 MINI网通讯出错M9005 AC电源掉电检测M9006 电池电压低M9007 电池电压低锁存M9008 自诊断出错M9009 信号报警器检测M9010 运算出错标志M9011 运算出错标志锁存M9012 进位标志M9016 数据存储区清零标志M9017 数据存储区清零标志M9018 数据通讯监控切换M9020 0号用户定时时钟M9021 1号用户定时时钟M9022 2号用户定时时钟M9023 3号用户定时时钟M9024 4号用户定时时钟M9025 时钟数据设置请求M9026 时钟数据出错M9027 时钟数据显示M9028 时钟数据读请求M9030 0.1秒时钟M9031 0.2秒时钟M9032 1秒时钟M9033 2秒时钟M9034 1分钟时钟M9036 常开M9037 常闭M9038 RUN后第一个扫描周期ONM9039 运行标志M9040 暂停PAUSE允许线圈M9041 PAUSE状态触点M9042 停止状态触点M9043 采样跟踪完成M9044 采样跟踪M9046 采样跟踪M9047 采样跟踪准备M9048 RUN LED闪烁标志M9049 切换输出字符数目M9050 存放操作结果的存储区交换触点M9051 CHG指令执行禁止M9052 SEG指令切换M9053 EI/DI指令切换M9054 单步运行标志M9055 状态锁存完成标志M9056 主程序P, I设置请求M9057 副程序P, I设置程序M9060 副程序2P, I设置程序M9061 副程序3P, I设置程序M9060 远程终端出错M9061 通讯出错M9065 分离传送状态M9066 传送处理切换M9067 I/O组件出错检测M9068 测试模式M9069 线路故障时的输出M9073 WDT出错标志M9074 PCPU准备完成标志M9075 测试模式标志M9076 外部急停输入标志M9077 手动脉冲发生器轴设置错误标志M9078 测试模式请求出错标志M9079 伺复程序设置出错标志M9081 对远程模块的通讯请求M9082 最终站数不一致M9084 出错检测M9086 运行标志BASIC程序M9087 暂停(PAUSE)标志M9091 操作运行出错细节标志M9091 微机子程序调用出错标志M9092 双电源模块过热M9093 双工电源模块出错M9094 I/O改变标志M9095 双工运行校验出错M9096 A3VCPU A自校出错M9097 A3VCPU B自校出错M9098 A3VCPU C自校出错M9099 A3VTU自校出错M9100 SFC程序登记M9101 SFC程序起/停M9102 SFC启动状态M9103 连续步转移有效/失效M9104 连续转移防止标志M9108 步转移监控定时器起始(对应D9108) M9109 步转移监控定时器起始(对应D9109)M9110 步转移监控定时器起始(对应D9110)M9111 步转移监控定时器起始(对应D9111)M9112 步转移监控定时器起始(对应D9112)M9113 步转移监控定时器起始(对应D9113)M9114 步转移监控定时器起始(对应D9114)M9180 激活步采样跟踪完成标志M9181 激活步采样跟踪执行标志M9182 激活步采样跟踪有效M9196 在块停止时控制输出M9197~9198 保险丝熔断,I/O校核出错显示切换二特殊寄存器D9000 保险丝断D9001 保险丝断D9002 I/O组件校验出错D9003 SUM指令检测位数D9004 MINI网主通讯组件出错D9005 AC掉电计数D9006 电池不足D9008 自诊断出错D9009 信号报警器检测D9010 出错步D9011 出错步D9014 I/O控制模式D9015 CPU运行状态D9016 ROM/RAM设置D9017 最小扫描时间D9018 当前扫描时间D9019 最大扫描时间D9020 恒定扫描D9021 扫描时间D9022 1秒计数器D9025 时钟数据(年,月)D9026 时钟数据(日,时)D9027 时钟数据(分,秒)D9028 时钟数据(星期)D9021~D9034 远程终端组件参数设置D9035 远程I/O组件的通讯属性D9035 扩展文件寄存器D9036 总的站数D9036~9037 供指定扩展文件寄存器软件地址D9038~9039 LED显示优先级D9044 采样跟踪D9050 SFC程序出错代码D9051 出错块D9052 出错步D9053 转移出错D9054 出错顺控步D9055 状态锁存步序号D9061 通讯出错代码D9072 PC通讯检测D9081 对远程终端模块的已执行的通讯请求数D9082 最后的站号D9090 微机子程序输入数据区首软元件号D9091 指令出错D9094 待更换的I/O组件的首地址D9095 A3VTS系统和A3VCPU的运行状态D9096 A3VCPU A自检出错D9097 A3VCPU B自检出错D9098 A3VCPU C自检出错D9099 A3VTU 自检测出错D9100~D9107 断保险丝的组件D9100 保险丝熔断的组件D9108~D9114 步转移监控定时器设置D9116~D9123 I/O组件校验出错D9124 信号器报警数量检测D9125~D9132 信号报警器地址号D9133~D9140 远程终端卡信息D9141~D9172 通讯重发次数D9173 模式设置D9174 设置重发次数D9175 线缆出错模块出错代码D9180~9193远程终端模块出错代码D9180 轴1和轴2的限位开关输出状态存储区D9181 轴3和轴4的限位开关输出状态存储区D9182 轴5和轴6的限位开关输出状态存储区D9183 轴7和轴8的限位开关输出状态存储区D9184 CPU出错的原因D9185 伺服放大器接线数据D9187 手动脉冲发生器轴设置出错D9188 在TEST模式下启动轴号请求出错D9189 出错程序号D9190 数据设置出错D9191 伺服放大器类型D9196~9199 故障站检测D9200 LRDP处理结果D9201 LWTP处理结果D9204 通讯状态D9205 执行回送的站D9206 执行回送的站D9207 通讯扫描时间(最大值)D9208 通讯扫描时间(最小值)D9209 通讯扫描时间(当前值)D9210 重发次数D9211 环路切换计数D9212 就地站运行状态(1~16)D9213 就地站运行状态(17~32)D9214 就地站运行状态(33~48)D9215 就地站运行状态(49~64)D9216 就地站出错检测(1~16)D9217 就地站出错检测(17~32)D9218 就地站出错检测(33~48)D9219 就地站出错检测(49~64)D9220 就地站参数不匹配或(1~16)远程站I/O分配出错D9221 就地站参数不匹配或(17~32)远程站I/O分配出错D9222 就地站参数不匹配或(33~48)远程站I/O分配出错D9223 就地站参数不匹配或(49~64)远程站I/O分配出错D9224 主站与从站和远程I/O站之间的初始通讯(1~16) D9225 主站与从站和远程I/O站之间的初始通讯(17~32) D9226 主站与从站和远程I/O站之间的初始通讯(33~48) D9227 主站与从站和远程I/O站之间的初始通讯(49~64) D9228 就地站或远程I/O站出错(1~16)D9229 就地站或远程I/O站出错(17~32) D9230 就地站或远程I/O站出错(33~48) D9231 就地站或远程I/O站出错(49~64) D9232 就地站或远程I/O站环路出错D9233 就地站或远程I/O站环路出错D9234 就地站或远程I/O站环路出错D9235 就地站或远程I/O站环路出错D9236 就地站或远程I/O站环路出错D9237 就地站或远程I/O站环路出错D9238 就地站或远程I/O站环路出错D9239 就地站或远程I/O站环路出错D9240 检测到接收出错的次数D9243 本站站号检测D9244 从站的总数D9245 检测到的接收出错次数D9248 就地站运行状态D9249 就地站运行状态D9250 就地站运行状态D9251 就地站运行状态D9252 就地站出错检测D9253 就地站出错检测D9254 就地站出错检测D9255 就地站出错检测各种软元件一览表项目A1,A1NA1S A2,A2NA2C A2-S1A2N-S1 A3,A3NA3A A2U, A3UA4UI/O软元件点256 512 1024 2048 8192输入继电器X 0~FF 0~1FF 0~3FF 0~7FF 0~FFF输出继电器Y 0~FF 0~1FF 0~3FF 0~7FF 0~FFF辅助继电器内部继电器(1000点)M0~M999 M0~M999, M204 8~8191特殊继电器(256点)M9000~M9255锁存继电器(1048点)L1000~L2048通讯用继电器(2048点)B0~B3FF B0~BFFF定时器100ms定时器(200点)T0~T19910ms定时器(56点)T200~T255100ms记忆定时器(0点)计数器(256点)C0~C255寄存器数据寄存器(1024点)D0~D1023 D0~D6143特殊寄存器(256点)D9000~D9255通讯寄存器(1024点)W0~W3FF W0~WFFF累加器(2点)A0,A1变址寄存器(2点)Z, V Z,Z1~Z6(7点), V,V1~V6(7点) 嵌套(8点)N0~ N7指针(256点)P0~P255中断指针(32点)I0~I31常数十进制K (16位)-32768~+32767(32位)-2147483648 ~+2147483647十六进制H (16位)0~FFFF(32位)0~FFFFFFFF。
三菱PLC基本指令表
1. 基本指令表
FX 2N PLC 各基本指令的符号、功能如下表所示。
基本指令一览
电路表示和目标兀件
上升沿触点
LD] 运算开始 常开触点
CjS-Com
[LDI] 取反 运算开始
常闭触点
LDP] 取上升沿脉冲
运算开始
符号名称
串联下降沿触点
常开触点
PfcjS-COnl
[ANB] 逻辑块与块串联
ORI] 并联
或非常闭触点ORP]
或脉冲
并联上升沿触点
[ORF]
或脉冲(F)并联下降沿触点
UXYMSTC PECjS-∞rn 并联
OR]
-XYMSTC PlCjS-Conl
ORB]
逻辑块或
块并联OUT]
线圈驱动指令
SET] YMΞ I一
-Plej⅛-∞m
RST]
复位PLS]
脉冲PLF]
脉冲(F)保持指令
复位指令
上升沿检测指令
下降沿检测指令
YM
—P¾3⅛CC⅛
PLF YM
-PfcjS-COn1!
MC]
主控
N
COVn
INV]
INV
反向
MCR
p⅛js.tθRl
主控
[MCR]
复位指令
主控复位
进栈指令
MPS]
(PUSH )
进栈
MRD]
读栈指令
读栈
PlCIS-CorTI
运算结果的反向
[MPP]
出栈
主控 开始指令
岀栈指令
(POP 读栈且复位)
YM — Pte^-COrn。
(完整版)三菱PLC基本指令27条
1.原型指令备注:OUT 用于继电器、定时器、计数器的输出,可以连续使用无次数限制。
OUT 的程序步Y 、M:1;特M:2;T:3;C:3~5 OUT 指令不能用于输入继电器,在对定时器、计数器使用OUT 指令后,一定要设定常数K (十进制)或H (十六进制)。
ANI 、AN 、OR 、ORI 一行不要超过10个,连续使用不建议超过24行。
指令功能梯形图 操作元件 程序步LD(取)第一个常开X.Y.M.S .T.C 1 LDI (取反)第一个常闭X.Y.M.S .T.C1 AND (与)串联常开X.Y.M.S .T.C 1 ANI (与反)串联常闭X.Y.M.S .T.C 1 OR(或)并联常开X.Y.M.S .T.C 1 ORI (或反)并联常闭X.Y.M.S .T.C 1OUT (输出)驱动输出线圈Y.M.S.T .C备注LD. LDI.与OUT指令的应用AND. ANI指令的应用OR. ORI指令的应用-----------------------------------------------------------------------------------2.块指令与堆栈指令(多重输出)备注:块指令与堆栈指令无操作元件,ANB 、ORB 若集中使用次数不能超过8次,MPS 、MPP 必须成对使用,连续使用最多不能超过11次,MRD 不限使用次数。
(无操作元件)指令功能梯形图程序步ANB (块与)并联电路块的串联1ORB (块或)串联电路块的并联1 MPS(进栈)将前面已运算的结果将已存储 1 MRD(读栈)将已存储的运算结果读出1 MPP (出栈)将已存储的运算结果读出并退出栈运算1ANB指令的应用(并联块的串联)ORB指令的应用(串联块的并联)一层堆栈的应用-----------------------------------------------------------------------------------3.输出型指令备注:SET 保持线圈得电并具有自锁功能,RST 保持线圈失电。
三菱PLC指令大全
DSTR(P)(_U)
单精度实数→字符串转换
ESTR(P)/DESTR(P)
Unicode字符串→移位JIS字符串转换
WS2SJIS(P)
移位JIS字符串→Unicode字符串转换(无字节顺序标志)
SJIS2WS(P)
字符串的长度检测
LEN(P)
移位JIS字符串→Unicode转换(有字节顺序标志)
二.逻辑运算指令
16位数据逻辑积
WAND(P)
32位数据逻辑积
DAND(P)
16位块数据逻辑积
BKAND(P)
16位数据逻辑和
WOR(P)
32位数据逻辑和
DOR(P)
16位块数据逻辑和
BKOR(P)
16位数据异或
WXOR(P)
32位数据异或
DXOR(P)
16位块数据异或
BKXOR(P)
16位数据异或非
有符号BIN32位数据→无符号BIN32位数据转换
DINT2UDINT(P)
无符号BIN32位数据→有符号BIN16位数据转换
UDINT2INT(P)
无符号BIN32位数据→无符号BIN16位数据转换
UDINT2UINT(P)
无符号BIN32位数据→有符号BIN32位数据转换
UDINT2DINT(P)
UINT2INT(P)
无符号BIN16位数据→有符号BIN32位数据转换
UINT2DINT(P)
无符号BIN16位数据→无符号BIN32位数据转换
UINT2UDINT(P)
有符号BIN32位数据→有符号BIN16位数据转换
DINT2INT(P)
三菱PLC指令说明
三菱PLC指令说明1. 概述三菱PLC(Programmable Logic Controller)是一种可编程逻辑控制器,它通常应用于工业自动化领域中。
PLC通过编程来实现机器、设备和生产线的控制。
在编程过程中,指令是最基本的控制单元。
本文将介绍三菱PLC常用指令的使用方法和示例,以帮助初学者更快地上手PLC编程。
2. 指令分类三菱PLC指令主要分为以下几类:2.1. 位指令位指令是通过设置或清除变量中的某个位,来控制设备和机器的状态。
在PLC编程中,常用的位指令包括AND、OR、XOR、NOT、SET、RESET等。
2.1.1. AND指令AND指令用于将两个输入端的逻辑值做AND运算,并将结果输出到输出端。
具体语法如下:LD <输入端1>AND <输入端2>OUT <输出端>其中,<输入端1>和<输入端2>可以是一个变量、一个IO口或一个常量。
例如:LD Y0AND Y1OUT M0表示将Y0和Y1的逻辑值做AND运算,并将结果输出到M0。
2.1.2. OR指令OR指令用于将两个输入端的逻辑值做OR运算,并将结果输出到输出端。
具体语法如下:LD <输入端1>OR <输入端2>OUT <输出端>其中,<输入端1>和<输入端2>可以是一个变量、一个IO口或一个常量。
例如:LD Y0OR Y1OUT M0表示将Y0和Y1的逻辑值做OR运算,并将结果输出到M0。
2.1.3. XOR指令XOR指令用于将两个输入端的逻辑值做XOR运算,并将结果输出到输出端。
具体语法如下:XOR <输入端2>OUT <输出端>其中,<输入端1>和<输入端2>可以是一个变量、一个IO口或一个常量。
例如:LD Y0XOR Y1OUT M0表示将Y0和Y1的逻辑值做XOR运算,并将结果输出到M0。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
第3章 基本指令FX 2N 系列的PLC 共有基本指令27条,本章主要介绍这些基本指令的功能。
并掌握由梯形图转化成指令表,指令表转化成梯形图的方法;然后通过一些编程的示例理解基本指令的应用和一些编程的规则。
3.1 基本指令3.1.1 LD 、LDI 、OUT 指令LD ,取指令,表示每一行程序中第一个与母线相连的常开触点。
另外,与后面讲到的ANB 、ORB 指令组合,在分支起点处也可使用。
LDI ,取反指令,与 LD 的用法相同,只是LDI 是对常闭触点。
LD 、LDI 两条指令的目标元件是X 、Y 、M 、S 、T 、C 。
OUT ,线圈驱动指令。
是对输出继电器(Y )、辅助继电器(M )、状态器(S )、定时器(T )、计数器(C )的线圈驱动,对输入继电器(X )不能使用。
图3-1 LD、LDI、OUT指令的使用说明8 OUT Y17 LD T0 SP K204 OUT T03 OUT M02 LDI X11 OUT Y00 LD X0a) 梯形图T0Y1T0K20X1X0Y0M0步号程序驱动定时器线圈b) 指令表SP为空格键定时器设定值目标元件指令驱动线圈与母线相连当OUT 指令驱动的目标元件是定时器T 和计数器C 时,如设定值是常数K 时,则K的设定范围如表3-1所示:程序步序号是自动生成,在输入程序时不用输入程序步号,不同的指令,程序步号是有所不同的。
表3-1 K 值设定范围:3.1.2 触点串联指令AND 、ANI用于单个常开接点的串联。
ANI ,与非指令。
用于单个常闭接点的串联。
AND 与ANI 都是一个程序步指令,串联触点的个数没有限制,该指令可以多次重复使用。
使用说明如图3-2所示。
这两条指令的目标元件为X 、Y 、M 、S 、T 、C 。
OUT 指令后,通过接点对其他线圈使用OUT 指令称为纵接输出或连续输出,如图3-2中的OUT Y3。
这种连续输出如果顺序不错,可以多次重复。
但是如果驱动顺序换成图3-3的形式,则必须用后述的MPS 指令和MPR 指令。
3.1.3 接点并联指令OR 、ORIOR ,或指令。
ORI ,或非指令。
这两条指令都用于单个的常开触点并联,操作的对象是X 、Y 、M 、S 、T 、C 。
OR 是用于常开触点,ORI 用于常闭触点,并联的次数可以是无限次。
使用说明如图3-4所示。
并联连接并联连接0 LD X4Y5X5图3-4 OR、ORI使用说明a) 梯形图X7M110M103Y5M102ORORORI X10OR M103b)指令表9 OUT M1038 OR M1107 ANI X106 OR M103 AND X74 LD Y53 OUT Y52 ORI M1021 OR X55X4图3-3 不推荐使用MPPX3X4Y3Y2MPSX5a)梯形图X5X1X3X4X2图3-2 AND、ANI指令使用说明Y3Y2Y16 AND X5b)语句表7 OUT Y35 OUT Y23 ANI X42 LD X31 AND X20 LD X1触联常闭触点串联常开触点3.1.4 取脉冲指令LDP、LDF、ANDP、ANDF、ORP、ORFLDP,ANDP,ORP指令是进行上升沿检测的触点指令,仅在指定的位元件上升沿(OFF →ON变化时)时,接通一个扫描周期,操作的目标元件是X、Y、M、S、T、C。
应用如图3-5所示。
LDF、ANDF、ORF指令是进行下降沿检测的触点指令,仅在指定位元件下降时(即由ON→OFF变化时)接通1个扫描周期。
操作的目标元件是X、Y、M、S、T、C。
使用说明如图3-6所示。
3.1.5 串联电路块并连指令ORB两个或两个以上的接点串联的电路称为串联电路块;当串联电路块和其它电路并联时连接时,分支开始用LD、LDI。
分支结束用ORB。
ORB指令和后面的ANB指令是不带操作数的独立指令。
电路中有多少个串联电路块就用多少次ORB,ORB使用的次数不受限制。
ORB指令也可成批使用,但是由于LD、LDI指令的重复使用次数受限制在8次以下,请务必注意。
ORB指令使用说明见图3-7所示。
3.1.6 并联电路块的串联连接指令ANB两个或两个以上接点并联的电路称为并联电路块。
并联电路块和其它接点串联连接时,使用ANB。
电路块的起点用LD、LDI指令,并联电路块结束后,使用ANB指令与前面串联。
ANB指令是无操作目标元件的指令。
ANB指令的使用说明见图3-8所示。
3.1.7 多重输出指令MPS、MRD、MPPMPS,进栈指令。
MRD,读栈指令。
MPP,出栈指令。
在PLC中有11个存储器,它们用来存储运算的中间结果,被称为栈存储器。
使用1次MPS指令就将此时的运算结果送入栈存储器的第1段。
再使用MPS指令,又将此时刻的运算结果送入栈存储器的第1段,而将原先存入的数据依此移到栈存储器的下一段。
使用MPP指令,各数据按顺序向上移动,将最上段的数据读出,同时该数据就从栈存储器中消失。
MRD是读出最上段所存的最新数据的专用指令,栈存储器内的数据不发生移动。
这些指令都是不带操作数的独立指令。
MPS、MRD、MPP的使用见下例各图(图3-9、3-10、3-11)所示。
3.1.8 主控及主控复位指令MC、MCRMC,主控指令。
用于公共串联触点的连接。
MCR,主控复位指令。
用于公共串联触点的清除。
主控(MC)指令后,母线(LD、LDI点)移到主控触点后,MCR为将其返回原母线的指令。
通过更改软元件地址号Y,M,可多次使用主控指令,但不同的主控指令不能使用同一软件号,否则就双线圈输出。
MC、MCR指令的应用如图3-13的程序示例中,当输入X0为接通时,直接执行从MC到MCR的指令。
输入X0为断开时,成为如下形式:保持当前状态:积算定时器、计数器、用置位/复位指令驱动的软元件。
变为OFF的软元件:非积算定时器,用OUT指令驱动的软元件。
在没有嵌套结构时,通用N0编程。
N0的使用次数没有限制。
有嵌套结构时,嵌套级N的地址号增大,即N0→N1→N2→N3→N4→N5… N7。
在将指令返回时,采用MCR指令,则从大的嵌套级开始消除。
如图3-14所示。
图3-13 MC、MCR指令的应用N1 M101MCR N0Y6Y5MCR N1MCR N2Y4MC N2 M102Y3Y1X10X7X6N2 M102X5X4X3图3-14 主控嵌套应用示例关。
因为它已在主控以外。
ON/OFF,于X0、X2、X4无Y6的ON/OFF只取决于X10的的程序不能运行。
当X4=OFF时,则夹在N2级以内当X4=0N时,则夹在N2内的程序可以运行,N2级有效。
当X2=0N时,则夹在N1内的程的程序不能运行。
当X2=OFF时,则夹在N1级以内N0N1N2N2序可以运行。
MC N1 M101Y0MC N0 M100N0 M100X1X2X0序可以运行,N1级N2级有效。
当X0=0N时,则夹在N0内的程的程序不能运行。
当X0=OFF时,则夹在N0级以内N1N0程序运行说明:3.1.9 取反INV 指令INV 指令是在将执行INV 指令之前的运算结果反转的指令,是不带操作数的独立指令。
使用如图3-15所示。
当X0断开,则Y0接通,如果X0接通则Y0断开。
(a) 梯形图 (b )指令表 (c) 时序图图3-15 取反指令INV3.1.10 置位与复位指令SET 、RST 。
SET 为置位指令,使动作保持;RST 复位指令,使操作保持复位。
SET 、RST 指令的使用说明如图3-16所示。
由波形图可见,当X0接通,即使再变成断开,Y0也保持接通。
X1接通后,即使再断开,Y0也将保持断开。
SET 指令的操作目标元件为Y 、M 、S 。
而RST指令的操作元件是Y、M、S、D、V、Z、T、C。
3.1.11 微分输出指令PLS、PLFPLS—上升沿微分输出。
当输入条件为ON时(上升沿),相应的输出位元件Y或M 接通一个扫描周期。
PLF—下降沿微分输出。
当输入条件为OFF时(下降沿),相应的输出位元件Y或M 接通一个扫描周期。
这两条指令都是2个程序步,它们的目标元件是Y和M,但特殊辅助继电器不能作为目标元件。
其动作过程如图3-17所示。
使用这两条指令时,要特别注意目标元件。
例如,在驱动输入接通时,PLC由运行→停止→运行,此时PLS M0动作,但PLS M600(断电保持辅助继电器)不动作。
这是因为M600在断电停机时其动作也能保持。
(a) (b)(a)梯形图 (b)指令表 (c) 波形图3.1.12 NOP、END指令NOP—空操作指令。
END—程序结束指令。
NOP指令是不带操作数,在普通指令之间插入NOP指令,对程序执行结果没有影响,但是将已写入的指令换成NOP,则被换的程序被删除,程序发生变化。
所以用NOP指令可以对程序进行编辑。
如图3-18,当把AND X1换成NOP,则触点X1被消除,ANI X2换成NOP,触点X2被消除。
X0X1X2Y0AND NOP ANI NOP图3-18 NOP指令使用说明END是程序结束指令,当一个程序结束时,后面用END,写在END后的程序不能被执行。
如果程序结束不用END,在程序执行时会扫描完整个用户存储器,延长程序的执行时间,有的PLC还会提示程序出错,程序不能运行。
例3-1:根据下例梯形图写出指令表。
图3-19 例1梯形图和指令表3.2 基本指令的应用了解了PLC的基本指令后,我们学习利用基本指令进行编程,用基本指令能完成大部分逻辑控制的编程。
3.2.1 可编程控制器梯形图编程规则。
1、水平不垂直。
垂直触点不能输入,要完成同样的逻辑控制,可以改成右图所示图3-20 触点水平不垂直2、多上串右。
触点多的写在上方,如右图,则可以不用ORB指令(a)多上将并联电路快写在右边,则可以不用ANB指令。
(b)串右图3-21 多上串右3、线圈右边无接点线圈的右边不能有接点,应改成右图所示。
图3-22 线圈右边无触点4、不能有双线圈输出。
Y3是双线圈输出,当出现双线圈输出时,前面的输出不起作用,只有最后的一条输出才起作用。
避免双线圈的方法是把触点并联。
如图3-23。
图3-23 不能有双线圈输出3.2.2 程序举例当我们要进行一个程序设计时,一般要按照这么几个过程进行:(1)、理解控制过程。
这是写程序非常关键的一步,不了解控制过程,也就无法写出正确的程序。
这一过程可以是客户提出,如果不能准确理解,可以到现场进行观测。
(2)、选择所需的硬件,并分配I/O地址,画出I/O图。
(3)、进行程序设计,画出梯形图。
(4)、对程序进行调试。
下面我们通过一些简单例子来说明如何进行编程。
例3-2:电动机正反转的控制。
控制要求:当按下正转按钮时,电动机正转;按下反转按钮,电动机反转;按下停止按钮,电动机马上停止。