- 1、本文档共42页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
基本功能指令说明及应用
第四章 功能指令说明及应用
4.1 功能指令一览表
分类 指令助记符 功能 页码
程
序
流
程
CJ 条件跳转 CALL 子程序调用 SRET 子程序返回 FEND 主程序结束 FOR 循环范围开始 NEXT 循环范围结束
传
送
与
比
较 CMP 比较 ZCP 区域比较 MOV 传送 CML 反向传送 BCD BCD转换 BIN BIN转换
四
则
逻
辑
运
算 ADD BIN加法 SUB BIN减法 MUL BIN乘法 DIV BIN除法 INC BIN加1 DEC BIN减1 WAND 逻辑字与 WOR 逻辑字或 WXOR 逻辑字异或 NEG 求补码 SQR BIN开方 循
环
与
移
位 ROR 循环右移 ROL 循环左移 RCR 带进位循环右移 RCL 带进位循环左移
基本功能指令一览表(续)
分类 指令助记符 功能 页码
浮
点
数
运
算 ECMP 2进制浮点数比较 EZCP 2进制浮点数区域比较 EBCD 2进制浮点数转10进制浮点数 EBIN 10进制浮点数转2进制浮点数 EADD 2进制浮点数加法 ESUB 2进制浮点数减法 EMUL 2进制浮点数乘法 EDIV 2进制浮点数除法 ESQR 2进制浮点数开方 INT 2进制浮点数转BIN整数 FLT BIN整数转2进制浮点数 ZRST 批复位指令
接
点
比
较 LD= (S1)=(S2) LD (S1)(S2) LD (S1)(S2) LD (S1)(S2) LD≦ (S1)≦(S2) LD≧ (S1)≧(S2) AND= (S1)=(S2) AND (S1)(S2) AND (S1)(S2) AND (S1)(S2) AND≦ (S1)≦(S2) AND≧ (S1)≧(S2) OR= (S1)=(S2) OR (S1)(S2) OR (S1)(S2) OR (S1)(S2) OR≦ (S1)≦(S2) OR≧ (S1)≧(S2)
4.2 程序流程
4.2.1 条件跳转 [CJ]
功能和动作
作为执行序列的一部分的指令,有CJ、CJP指令,可以缩短运算周期。
在上图示例中,如果X000“ON”,则从0步跳到23步(标记P0的后一步)。X000“OFF”时,不进行跳转,顺序执行。
当X000“ON”时,进行跳转,跳转中的线圈动作如下:
Y、M、S保持以前动作;
T在跳转前若没有触发,跳转后即使触发,定时器也不动作。若被触发,时钟继续运行,但触点不动作,当X000“OFF”时,触点立即动作;
C在跳转前若没有触发,跳转后即使触发,计数器不动作。若被触发,计数中断,当X000“OFF”时继续计数;
功能指令跳转后不动作;
定时器及计数器的复位指令在跳转外时,计时线圈及跳转的计数线圈复位(接点复位及当前值的清除)有效;
对END步跳转,需标明标号(P0~P127都可以),线圈动作如上。
主控制指令和跳转指令的关系及动作如下,
4.2.2 子程序调用 [CALL]
4.2.3 子程序返回 [SRET]
适用软元件 子程序调用的指针(P)可以指定下列编号
·P0~P127;
·指针编号可作变址修改;
·嵌套最多可为5层;
·对子程序返回,无适用软元件。
功能和动作
若X001“ON”,则执行调用指令跳转到标记P11步,执行完通过执行SRET指令返回原来的步,再往下执行;
在FEND指令后对标记(子程序)编程;
CJ指令的标记和子程序的标记不能重复编号;
在子程序内最多可以允许有四层嵌套,如上例,还可增加2层,整体而言可做5层;
指针编号可作变址修改,如P0Z(0+12=12),如果变址得出的编号没有,嵌入式PLC停止工作。
4.2.4 主程序结束 [FEND]
当程序使用多个FEND指令时,子程序请在最后的FEND指令与END指令之间编写。
4.2.5 循环范围开始 [FOR]
适用软元件 ·字软元件 K、H、KnX、KnY、KnM、KnS、T、C、D、V,Z,
·可作变址修改。
4.2.6 循环范围结束 [NEXT]
功能和动作
只在FOR~NEXT指令之间的处理(利用源数据指
文档评论(0)