直播课堂
HOME
直播课堂
正文内容
plc编程指令移动 S7-1200 PLC的移动操作指令介绍
发布时间 : 2024-10-26
作者 : 小编
访问数量 : 23
扫码分享至微信

S7-1200 PLC的移动操作指令介绍

前面给大家介绍了数学函数指令,接下来就接着介绍一下移动操作指令吧!

S7-1200 PLC的移动操作指令也包括有多个(如下图),不过这里我们不会所有的指令都介绍一遍,这里就介绍一些常用的移动操作指令,比如移动值指令MOVE,可以说是相当于我们说的传送指令,还有块移动指令MOVE_BLK、填充块指令FILL_BLK、交换指令SWAP、读取域指令FieldRead与写入域指令FieldWrit。

下面我们就开始讲解咯~

1、移动值指令MOVE

移动值指令MOVE,就相当于是我们S7-200/200 SMART PLC中的MOV传送指令,是用于对存储器进行赋值,或者把一个存储器的数据复制到另外一个存储器中,还可以用于清零功能。对于这个指令进行移动复制之后,源操作数的数据是不变的。

我们可以通过点击指令下方的增加管脚的按钮,增加一些输出管脚,这样就可以实现将源操作数的数据复制到多个目标操作数里面去。

对于移动值指令的操作数可以支持基本的数据类型、复杂的数据类型也是可以支持的,但是我们需要注意的是,如果使用复杂的数据类型时,我们需要保证源操作数和目标操作数具有相同的格式才行。

如果要把一个数组的数据复制到另外一个数组,我们需要保证两个数组的元素个数相同,元素的数据类型相同。

2、块移动指令MOVE_BLK

块移动指令是将源存储区的数据移动到目标存储区,注意是有多个存储器的移动,IN是源存储器的首个元素,COUNT是指定需要复制的元素个数,OUT是目标存储器的首个元素。

注意,这个指令只适合于数据块中的数组进行移动,如果需要对非数据块的存储器进行块移动是不能使用这个指令的,比如说将MB0~MB5的数据移动到QB0~QB5,这时不能使用MOVE_BLK指令。

上图的程序首先是创建DB块,再分别创建DATA和数据的数组,元素数为5个,即0~4,所以我们可以看到有以上这些数据,这个指令的功能是将函数DB块中的数组元素DATA[2]、DATA[3]、DATA[4]的数据分别移动到数组元素数据[0]、数据[1]、数据[2]中。

3、填充块指令FILL_BLK

填充块指令可以对数组中连续的元素写入相同的数值,比如对一个数组中的连续N个元素进行赋值或清零时可以利用这个指令去实现。IN是需要填充进入的数据,COUNT是存储器个个数,OUT是需要填入的第一个元素的地址。这个指令跟块移动指令一样,也是只适合于数据块中的数组中连续元素进行填充数据。

上图的程序是将20这个数组填充到函数DB的DATA[0]开始的数组元素的一共5个元素中取,监控的结果是DATA[0]、DATA[1]、DATA[2]、DATA[3]、DATA[4]里面的数值都是20。

4、交换指令SWAP

交换指令可以将输入操作数的数据的字节的顺序进行调换,也就是实现高低字节的交换,交换指令支持WORD和DWORD这两种数据类型。

我们可以监控指令的执行情况,可以以十六进制的数值显示,这样也方便我们去查看。比如16#1234,交换之后是16#3412,而对于16#12345678,交换之后是16#78563412,注意不是16#56781234哦。

5、读取域指令FieldRead和写入域指令FieldWrit

读取域指令和写入域指令主要是用于间接寻址的功能,可以用该指令对一个数组中的任意元素的值进行读取或写入的操作。

读取域指令用于根据指定的元素下标值,读取除对应元素的值,指令中的INDEX管脚是元素的下表值,为DINT的类型,MEMBER管脚是指定数组中的第一个元素地址,VALUE管脚用于存放读取出来的数据。

写入域指令用于根据指定的元素下标值,把VALUE的值写入到对应下表值的元素中,指令中的INDEX管脚是元素的下表值,为DINT的类型,VALUE管脚表示需要写入的值,MEMBER管脚是指定数组中的第一个元素地址。

不过过于博途V14以上的版本软件,对于数组的下标值可以通过变量进行表示,所以读取域指令和写入域指令使用得也比较少,大家了解一下有这样的指令就可以了。

以上这些就是移动操作指令的介绍,对于西门子S7-200/200 SMART中我们叫传送指令,包括有MOV、BLKMOV、SWAP指令,还有表指令FILL_N,其实跟我们S7-1200 PLC的这些指令的功能是差不多的,只是有一些小区别,不同的地方注意一下就可以咯。

移动操作指令部分我们就介绍完了,下一篇文章给大家介绍一下转换操作指令的使用,欢迎关注更新~

(技成培训网原创,作者:蔡慧荥,未经授权不得转载,违者必究)

详解几个使用频率较高的S7-200SMART PLC传送指令,PLC编程不慌张

在编写程序的过程中,经常会碰到存储区中的数值需要改变,或者数据在PLC中存储位置需要改变,这就需要用到传送指令。

首先我们介绍一下标准的一对一传送指令:MOV指令 ;将IN端输入数据复制一份移至OUT输出端,数据类型不同需要用的传送指令也不同,有如下几种。

说明:

1.只要检测到EN条件闭合,就发生数据传送,每个扫描周期执行一次。

2.值的传送过程为IN复制到OUT,OUT中原本数据被覆盖掉,IN中数据仍然保留。

3.对IN的参数可以是常数也可以是变量,对OUT必须是变量。IN为常数时,通常称为赋值。

4.每种指令对应的数据类型必须匹配,否则会发生错误。

5.对定时器和计数器用字传送指令,传送的是当前值。

6.实数传送即浮点数传送,因为浮点数都是32位,所以操作数也为VD。不能与双字传送混用。

7.ENO为能流输出,可以再接其它指令,如常开,常闭,输出,置位,复位等。不接指令时不得延长否则编译报错。

立即传送指令

移动字节立即读取指令读取物理输入 IN 的状态,并将结果写入存储器地址 OUT 中,但不更新过程映像寄存器。

传送字节立即写入指令从存储器地址 IN 读取数据,并将其写入物理输出 OUT 以及相应的过程映像位置。

块传送指令

将相邻的几个数据同时传送到另外几个相邻的寄存器中。块传送应避免地址重叠,否则容易发送数据传输错误。

以BLKMOV_B为例说明指令的执行过程:将IN(VB0)开始的N(5)个数据复制到OUT(VB5)开始的N(5)个寄存器中,N为1-255。三种块传送原理相同,只是存储空间大小不同而已。

字填充指令

将IN中字类型的存储器或常数写入从地址OUT开始的N个字寄存器中。N的范围是1—255。

典型应用:批量清零,初始化。

交换指令

每执行一次,将IN中的字寄存器的高字节和低字节交换一下。

字交换方法:两个字要进行互换,没有直接指令,可以使用传送指令进行交换。

比如要将VW100和VW102中的数据互换,可用如下程序实现:

免责声明:本文转自网络,版权归原作者所有,如涉及作品版权问题,请及时与我们联系删除,谢谢!

相关问答

plc移动指令什么意思?

移动值指令MOVE,就相当于是我们S7-200/200SMARTPLC中的MOV传送指令,是用于对存储器进行赋值,或者把一个存储器的数据复制到另外一个存储器中,还可以用于清...

西门子plc程序中如何向右移动?

在西门子PLC程序中,使用右移指令可以实现向右移动。具体操作步骤如下:在要右移的变量上方插入一个右移指令,设置移动位数和目标变量。将目标变量连接到右移指...

plc循环移位指令有什么用?

plc循环移位指令有用右移字节(SRB)和左移字节(SLB)指令将输入数值(IN)根据移位计数(N)向右或向左移动,并将结果载入输出字节(OUT)。移位指令对每个移...plc...

PLCOUT指令怎么连续使用?

OUT用于继电器、定时器、计数器的输出,可以连续使用无次数限制。OUT的程序步Y、M:1;特M:2;T:3;C:3~5。OUT指令不能用于输入继电器,在对定时器、计数器使用OUT...

PLC运动控制如何计算物体移动速度和位移?

你好,PLC运动控制可以通过编程实现计算物体移动速度和位移。具体方法如下:1.计算物体移动速度:可以通过编程实现对物体位置的连续采样,然后计算相邻两个采...

怎样通俗易懂的理解西门子plc寄存器移位指令?

PLC中的寄存器移位指令是一种用于在寄存器中移动二进制位的命令。这种指令可以用于向左或向右移动寄存器中的位,并在每个移位过程中修改寄存器的值。一个寄...

移字指令有什么用?

移字指令是计算机指令中的一种,它可以将数据从一个寄存器或内存地址移动到另一个寄存器或内存地址。移字指令的作用非常广泛,可以用于数据传输、寄存器间数据...

西门子plc程序控制指令?

关于这个问题,以下是一些常见的西门子PLC程序控制指令:1.LD:加载指令,将一个变量或者寄存器的值加载到一个寄存器中。2.AND:逻辑与指令,将两个逻辑值进...

plc排队程序怎么写?

PLC排队程序的编写需要依据具体的实际应用需求,以下提供一个简单的示例:1.定义变量:定义一个整型数组Queue,用于存储排队顾客的编号,定义一个整型变量Count...

新人求教:欧姆龙plc中SFT指令如何应用?

SFT是位移动指令,编程手册有介绍。我这边简单说说。SFT指令盒的最上面一条线是指令运行许可,比如SFTW5W5,这条指令未执行时W5中16个位都是0.当最上面一条线O...

 德梅尔  俄方:乌赴白俄罗斯与俄谈判 
王经理: 180-0000-0000(微信同号)
10086@qq.com
北京海淀区西三旗街道国际大厦08A座
©2024  上海羊羽卓进出口贸易有限公司  版权所有.All Rights Reserved.  |  程序由Z-BlogPHP强力驱动
网站首页
电话咨询
微信号

QQ

在线咨询真诚为您提供专业解答服务

热线

188-0000-0000
专属服务热线

微信

二维码扫一扫微信交流
顶部