西门子plc数据处理指令的实例教程

来源:电工天下   编辑:老电工发布时间:2015-10-26 07:43:08

西门子plc数据处理指令的实例教程

传送类指令,包括:MOVB,字节传送指令,BIR,传送字节立即读指令,BIW,传送字节立即写指令,MOVW,字传送指令,MOVD,双字传送指令,MOVR,实数传送指令,BMB,字节块传送指令等。

移位指令,包括:字节左移和字节右移,字左移和字右移,SLW和SRW,双字左移和双字右移,SLD和SRD等。

字节交换指令SWAP与存储器填充指令FILL。

一、传送类指令

单一传送

◆ MOVB,字节传送指令
◆ BIR,传送字节立即读指令
◆ BIW,传送字节立即写指令
◆ MOVW,字传送指令
◆ MOVD,双字传送指令
◆ MOVR,实数传送指令

1、MOVB,字节传送指令

使能输入有效时,把一个单字节无符号数据由IN传送到OUT所指的字节存储单元。
IN的寻址范围:VB、IB、QB、MB、SB、SMB、LB、AC、*VD、*AC、*LD和常数。
VB、IB、QB、MB、SB、SMB、 LB、AC、*VD、*AC、*LD。
指令格式: MOVB IN1, OUT
西门子<a href=/plc/ target=_blank class=infotextkey>plc</a>数据处理指令1

图1 MOVB指令
例: MOVB VB0, QB0

2、BIR,传送字节立即读指令

使能输入有效时,立即读取单字节物理输入区数据IN,并传送到OUT所指的字节存储单元。
IN的寻址范围:IB
OUT的寻址范围:VB、IB、QB、MB、SB、SMB、LB、AC、*VD、*AC、*LD。
指令格式:BIR IN1, OUT
西门子plc数据处理指令2

图2 BIR指令

例:BIR IB0, VB10

块传送

◆ BMB,字节块传送指令
◆ BMW,字块传送指令
◆ BMD,双字块传送指令
指令可用来进行一次多个(最多255个)数据的传送,数据块类型可以是字节块、字块、双字块。
三条指令中N的寻址范围都是:VB、IB、QB、MB、SB、SMB、LB、AC、*VD、*AC、*LD和常数。
使ENO断开的出错条件:SM4.3(运行时间);0006(间接寻址);0091(数超界)。

西门子plc数据处理指令3

图3 块数据传送指令

二、移位指令

左移和右移
1、字节左移和字节右移
SLB和SRB,字节左移和字节右移。使能输入有效时,把字节型输入数据IN左移或右移N位后,再将结果输出到OUT所指的字节存储单元。最大实际可移位次数为8。
西门子plc数据处理指令4

图4 字节左移和字节右移
以字节左移指令为例,指令执行情况如表所示。

西门子plc数据处理指令5

图5 字节左移指令

2、字左移和字右移,SLW和SRW
使能输入有效时,把字型输入数据IN左移或右移N位后,再将结果输出到OUT所指的字存储单元。最大实际可移位次数为16。
指令格式: SLW OUT, N (字左移) ;SRW OUT, N (字右移)
例: SLW MW0, 2;SRW LW0, 3
以字右移指令为例,指令执行情况如表所示。
西门子plc数据处理指令6

图6 字右移指令

3、双字左移和双字右移,SLD和SRD
使能输入有效时,把双字型输入数据IN左移或右移N位后,再将结果输出到OUT所指的双字存储单元。最大实际可移位次数为32。
指令格式:SLD OUT, N (双字左移);SRD OUT, N (双字右移)

例: SLD MD0, 2;SRD LD0, 3

循环左移、循环右移
循环左移和循环右移根据所循环移位的数的长度分别又可分为字节型、字型、双字型。
移位数据存储单元的移出端与另一端相连,同时又与SM1.1(溢出)相连,所以最后被移出的位被移到另一端的同时,也被放到SM1.1位存储单元。
例如在循环右移时,移位数据的最右端位移入最左端,同时又进入SM1.1。SM1.1始终存放最后一次被移出的位。
     
西门子plc数据处理指令7

图7 循环左移、循环右移
循环移位的类型:

◆ 字节循环左移和字节循环右移
◆ 字循环左移和字循环右移
◆ 双字循环左移和双字循环右移

寄存器移位
SHRB,寄存器移位指令:该指令在梯形图中有3个数据输入端:DATA为数值输入, 将该位的值移入移位寄存器;S_BIT为移位寄存器的最低位端;N指定移位寄存器的长度。每次使能输入有效时,整个移位寄存器移动1位。
移位寄存器长度在指令中指定,没有字节型、字型、双字型之分。可指定的最大长度为64位,可正也可负。

西门子plc数据处理指令8

图11 移位寄存器

西门子plc数据处理指令9

图12 指令SHRB执行结果

、字节交换指令

使能输入有效时,将字型输入数据IN的高字节和低字节进行交换。
本指令只对字型数据进行处理,指令的执行不影响的特殊存储器位。
使能流输出ENO断开的出错条件:SM4.3(运行时间);0006(间接寻址)。
指令格式: SWAP IN (字节交换)
西门子plc数据处理指令10

图13 指令SWAP执行结果

四、存储器填充指令FILL

使能输入有效时,用字型输入数据IN填充从输出OUT所指的单元开始的N个字存储单元。

填充指令只对字型数据进行处理,N值为字节型,可取从1~255的整数。指令的执行不影响的特殊存储器位。

使能流输出ENO断开的出错条件:SM4.3(运行时间);0006(间接寻址);0091(操作数超界)。
指令格式: FILL IN, OUT, N
西门子plc数据处理指令11

图14 存储器填充指令

本文由作者上传并发布(或网友转载),本站仅提供信息发布平台,文章仅代表作者个人观点。

相关文章
  • S7-1200基本指令:SR、RS用法指南

    S7-1200基本指令:SR、RS用法指南

    本文介绍了西门子S7-1200基本指令SR与RS的用法,置位/复位触发器SR,复位/置位触发器SR,以及s7-1200中置位/复位触发器的应用实例说明,供大家学习参考。

    时间:2022-03-18 06:21:00

  • 西门子s7-200系列plc定时中断指令编程入门

    西门子s7-200系列plc定时中断指令编程入门

    西门子s7-200系列plc定时中断指令编程入门,

    时间:2022-02-05 08:11:01

  • 西门子S7-200系列PLC中断指令第二部分

    西门子S7-200系列PLC中断指令第二部分

    西门子S7-200系列PLC中断指令第二部分,先来复习下中断指令的三要素:激活中断(1次即可);中断事件连接中断程序;开放中断。以上提到的三要素,要求必须包含在中断指令的主程序中。

    时间:2022-02-05 06:42:51

  • 西门子S7-200系列PLC中断指令第一部分

    西门子S7-200系列PLC中断指令第一部分

    西门子S7-200系列PLC中断指令第一部分,中断跟扫描周期无关,响应快,只要中断事件发生才会去执行程序,可以节省时间,避免等待和浪费时间。

    时间:2022-02-05 06:38:11

  • 西门子S7-200 Plc之比较指令入门教程

    西门子S7-200 Plc之比较指令入门教程

    西门子S7-200 Plc之比较指令入门教程,本节来学习下西门子s7-200“比较指令”的知识,下面是比较指令的常见类型:常见操作数,针对B\I\DI\R做下简单的解释。

    时间:2021-10-23 07:16:16

  • 西门子plc堆栈指令的用法

    西门子plc堆栈指令的用法

    西门子plc堆栈指令的用法,包括栈装载与指令ALD(与块)、栈装载或指令OLD (或块)、逻辑推入栈指令LPS (分支或主控指令)、逻辑读栈指令LRD等。

    时间:2020-04-23 11:45:15

  • 西门子step7基本指令的分类与用法

    西门子step7基本指令的分类与用法

    西门子step7基本指令的分类与用法,包括位逻辑指令(位逻辑运算指令、定时器指令、计数器指令),以及数据指令的功能与用法说明,感兴趣的朋友参考下。

    时间:2020-04-23 10:47:26

  • 西门子plc定时器指令的种类_西门子plc定时器指令的刷新方式

    西门子plc定时器指令的种类_西门子plc定时器指令的刷新方式

    西门子plc定时器指令的种类与刷新方式,s7—200 plc定时器种类,分为接通延时定时器(TON)、有记忆接通延时定时器(TONR)和断开延时定时器(TOF),定时器的分辨率(时基)与刷新方式。

    时间:2020-04-23 10:45:14

推荐文章

Copyright © 2015 - 2022 dgjs123.com All Rights Reserved

电工天下 版权所有