第七章 PLC功能指令

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
MOV-BIR EN ENO IN OUT MOV-BIW EN ENO IN OUT
传送字节立即写(BIW)指令,
将从输入端(IN)指定字节地址的 内容写入输出端(OUT)指定字节 地址的物理输出点(QB)。
BIR
IN,OUT
BIW
IN,OUT
传送字节立即读
传送字节立即写
[例]将变量存储器VW100中内容 送到VW200中。
指令ATT执行结果
返回本节
7.2.2 表取数指令
• 1. FIFO,先进先出指令 • 2. LIFO,后进先出指令
1. FIFO,先进先出指令
• •
• 当使能输入有效时,从TBL指明的表中移出
• • •
第一个字型数据并将其输出到 DATA 所指定 的字单元。 FIFO表取数特点: 取数时,移出的数据总是最先进入表中的数 据。每次从表中移出一个数据,剩余数据依 次上移一个字单元位置,同时实际填表数 EC会自动减1。 指令格式: FIFO TBL, DATA 例: FIFO VW100, AC0 如果仍是对表4.21存取,则指令执行情况如 表4.23所示。
SQRT IN,OUT //求平方根指令 SQRT(IN)=OUT LN IN,OUT //求(IN)的自然对数指令 LN(IN)=OUT EXP IN,OUT //求(IN)的指数指令EXP(IN)=OUT 平方根(自然对数、指数)指令是把一个双字长(32位) 的实数(IN)开方(取自然对数、取以e为底的指数),得 到 32 位的实数运算结果,通过( OUT )指定的存储器单元
寄存器移位指令
• 寄存器移位指令是一个移位长度可指定的移位指令。

SHRB I1.1, M1.0, +10
• 功能:指令执行时,DATA位的值移入移位寄存器。 • S-BIT为寄存器的最低位,N为移位寄存器的长度(1~64)。每次
使能有效时,整个移位寄存器移动1位。 • N为正值时,左移位(由低位到高位),DATA值从S-BIT位移入, 移出位进入SM1.1; • N为负值时右移位(由高位到低位),S-BIT移出到SM1.1,高端补 充DATA移入位的值。 • 最高位的计算方法:(N 的绝对值-1+(S_BIT的位号))/8,余 数即是最高位的位号,商与S_BIT的字节号之和即是最高位的字节号。
移位指令
• • • • • •
[例] 将VD0右移2位送AC0。 NETWORK 1 LD I0.0 //使能输入 MOVD VD0, AC0 //VD0=AC0 SRD AC0, 2 //AC0右移2位 寄存器移位指令最大移位位数N≤数据类型(B、 W、D)对应的位数,移位位数(次数)N为字节 型数据。
指令FIFO执行结果
2. LIFO,后进先出指令
• 当使能输入有效时,从 TBL 指明的表中
• •
• • •
移出最后一个字型数据并将其输出到 DATA所指定的字单元。 LIFO表取数特点: 取数时,移出的数据是最后进入表中的 数据。每次从表中取出一个数据,剩余 数据位置保持不变,实际填表数EC会自 动减1。 指令格式: LIFO TBL, DATA 例: LIFO VW100, AC0 如果仍是对表存取,则指令执行情况如 表所示。

除法 IN1/IN2=OUT
[例] 乘/除法指令的应用
• NETWORK 1 • LDN I0.0
//装入常 闭触点 • *R AC1, VD100 //实数 乘法 • /R VD10, VD200 //实数 除法
• 运行结果:
数学函数变换指令
1. 平方根/自然对数/指数指令

• • • • • •
7.1.2 算术、逻辑运算指令
算术运算指令
• • •
IN1+IN2=OUT
IN1—IN2=OUT 加减指令盒由指令类型,使能端EN,操作数 (IN1、IN2)输入端,运算结果输出OUT,逻辑 结果输出端ENO等组成。
整数加法、减法、乘法、除法
双整数加法、减法、乘法、除法
整数完全乘法、除法
实数加法、减法、乘法、除法

源自文库
[例] 求以10为底,150的常用对数,150 存于VD100,结果放到AC1(应用对数的换 底公式求解)。 当求解以10为底的常用对数时,用实数 除法指令将自然对数除以2.302585即可。 (LN10≈2.302585)
• LD I0.1 //使能输入 • LN VD100, AC1 //自然对数 • //Ln(VD100)=AC1 • LN 10.0, VD200 //自然对数 • //Ln(10)=VD200
第7章 PLC功能指令
7.1.1数据传送

数据处理指令包括数据传送指令,交换、填充指 令,移位指令等。 • 1. 单个数据传送 • LAD • STL MOV IN,OUT //IN= OUT
数据块传送指令
BLKMOV-B BLKMOV-W BLKMOV-DW
EN IN N MOVB
ENO OUT
将输入的字节、字或双字(IN)左、右移N位后(右、左端补 0),将结果输出到OUT所指定的存储单元中,最后一次移出 位保存在SM1.1。 • 循环左、右移位指令(ROL 、ROR )的功能:使能输入有效 时,字节、字或双字(IN)数据循环左移N位后,将结果输出 到OUT所指定的存储单元中,并将最后一次移出位送SM1.1。
[例] 字或/双字异或/字求反/字节与操作编程
举例。
• NETWORK 1 • LD I0.0 • MOVW LW10, LW30 • • • • • • • • • • • • •
10=LW30 ORW LW20, LW30 //字或操作 NETWORK 2 LD I0.1 MOVD VD100, VD120 XORD VD200, VD120 //双字异或 操作 NETWORK 3 LD I0.2 MOVW AC0, AC1 INVW AC1 //字取反操作 NETWORK 4 LD I0.3 MOVB AC0, AC1 ANDB 255, AC1 //字节与操作


与(或、异或)指令功能:使能输入有效时,把两个字节(字、 双字)长的输入逻辑数按位相与(或、异或) ,得到的一个字节 (字、双字)逻辑运算结果,送到OUT指定的存储器单元输出。 • 取反指令功能:使能输入有效时,将一个字节(字、双字)长的 逻辑数按位取反,得到的一个字节(字、双字)逻辑运算结果,送到 OUT指定的存储器单元输出。
EN IN N MOVW
ENO OUT
EN IN N
ENO OUT
IN,OUT
IN,OUT
MOVDW IN,OUT
数据块传送指令把从 输入(IN)指定地址 的N个连续字节、字、 双字的内容传送到从 输出(OUT)指定地址 开始的N个连续字节、 字、双字的存储单元 中去。
传送字节立即读、写指令
传送字节立即读(BIR)指令,读取输入端(IN)指定字节地址的物理输入 点(IB)的值,并写入输出端(OUT)指定字节地址的存储单元中。
// LW
7.1.5 字节交换/填充指令
• 1、字节交换指令(SWAY IN)
• 使能输入(EN)有效时,
将输入字(IN)的高、低字 节交换的结果输出到(IN) 存储器单元。
• 2、字填充(FILL IN,OUT,N)
• 使能输入(EN)有效时,
字型输入数据(IN)填充从 输出(OUT)指定单元开始 的N个字存储单元。 N(BYTE)的数据范围0~255。
7.1.3加法运算应用举例
• NETWORK 1 • LD I0.0 //装入常开触
点 • MOVW VW100, VW200 //VW100 → VW200 • +I +100, VW200 //VW200+100=VW200
乘/除运算
• • •

乘法运算
除法运算
MUL I/DIV I为整数乘/除运算,MUL DI/DIV DI双整数乘/除运 算,MUL/DIV整数乘/除的结果双整数输出,MUL R/DVI R实数乘/除 运算 • 指令执行的结果:乘法 IN1*IN2=OUT
180.0, AC0 //得π /1800弧度
65.0, AC0 //将角度转化为弧度 • TAN AC0, AC1 //求正切指令结果存放到AC1
• 3.数学函数变换指令对标志位的影响及操作数的寻址范围 • (1)平方根/自然对数/指数/三角函数运算指令执行的结果影响特殊
存储器位:SM1.0(零),SM1.1(溢出),SM1.2(负),SM1.3(被0 除)。 • (2)使能流输出ENO=0的错误条件是:SM1.1(溢出),SM4.3(运行 时间),0006(间接寻址)。
表查找指令执行结果
返回本节
7.3 转换指令
• 7.3.1 数据类型转
换 • 7.3.2 编码和译码 • 7.3.3 七段码 • 7.3.4 字符串转换
返回本章首页
7.3.1 数据类型转换
• • • • • •
1. 字节与整数 (1)字节到整数 (2)整数到字节 2. 整数与双整数 (1)双整数到整数 (2)整数到双整数
3. 双整数与实数 (1)实数到双整数 (2)双整数到实数 4. 整数与BCD码 (1)BCD码到整数 (2)整数到BCD码 5. 程序实例
• (3)IN、OUT操作数的数据类型为REAL,寻址范围见附表1。
增1/减1计数

增1/减1计数器用于自增、自减操作,以实现累加计数和循环控 制等程序的编制。


字节、字、双字增1 OUT+1=OUT

字节、字、双字减1

OUT-1=OUT
7.1.4逻辑运算指令

逻辑运算是对无符号数进行的逻辑处理,主要包括逻 辑与、逻辑或、逻辑异或和取反等运算指令。
• 7.2.1 表存数指令 • 7.2.2 表取数指令 • 7.2.3 表查找指令
返回本章首页
• 表只对字型数据存储,表的格式例如表
所示。
7.2.1 表存数指令
• ATT,表存数指令。 • 该指令在梯形图中有 2 个数据输入端:
DATA为数值输入,指出将被存储的字型 数据或其地址; TBL 表格的首地址,用 以指明被访问的表格。当使能输入有效 时,将输入字型数据添加到指定的表格 中。 • 表存数特点: • 表存数时,新存的数据添加在表中最后 一个数据的后面。每向表中存一个数据, 实际填表数EC会自动加1。
/R VD200, AC1 //实数除法指令 • //AC1/VD200=VD200
1. 平方根/自然对数/指数指令
• 利用指数函数求解任意函数的x次方(yx=exlny)。 • 例如: 7的4次方=EXP(4*LN(7))=2401 • 8的3次方根=8 ^ (1/3)=EXP (LN (8) *1/3 )=2 • 2. 三角函数
指令LIFO执行结果
返回本节
7.2.3 表查找指令
• FND?,表查找指令。通过表查找指令可
以从字型数表中找出符合条件的数据所 在的表中数据编号,编号范围为0~99。 • 在梯形图中有4个数据输入端:TBL表格 的首地址,用以指明被访问的表格; PTN 是用来描述查表条件时进行比较的 数据;CMD是比较运算符“?”的编码, 它是一个1~4的数值,分别代表=、<>、 < 和 > 运算符; INDX 用来指定表中符合 查找条件的数据的地址。
• • • •
NETWORK 1 LD I0.0 //使能输入 MOVW VW100, VW200 //VW100=VW200
• 移位指令分为:左、右移位和循环左、右移位及寄存器移位指
令三大类。 • 左、右移位和循环左、右移位指令按移位数据的长度又分为 字节型、字型、双字型三种。
移位指令
• 左、右移位指令(SHL 、SHR )的功能:使能输入有效时,
• SIN IN,OUT //SIN(IN)=OUT • COS IN,OUT // COS(IN)=OUT • TAN IN,OUT //TAN(IN)=OUT
[例] 求65o的正切值
• LDN I0.0 //使能输入 • MOVR 3.14159, AC0
//π 装入AC0
• /R • • *R
[例]将从VW100开始的256个字节(128个
字)存储单元清零。
• NETWORK 1 • LD I0.0 //使能输入 • FILL +0, VW100, 128 •
//128个字填充0 • 本条指令执行结果:从VW100开始的256个字节 (VW100~VW354)的存储单元清零。
7.2 表功能指令
相关文档
最新文档