全国服务热线: 15000711173
企业动态

上门回收全新西门子软件电子签名

发布时间:2023-12-16        浏览次数:1        返回列表
前言:回收西门子主机模块,回收西门子电子签名,西门子软件回收
上门回收全新西门子软件电子签名

回收西门子主机模块,回收西门子电子签名,西门子软件回收


上门回收全新西门子软件电子签名


回收西门子主机模块,回收西门子电子签名,西门子软件回收


上门回收全新西门子软件电子签名



(U)MOVE_BLK的使用

实现功能:将"DB26".Static_1[0]开始的4个元素传送至"DB26".Static_2[4]开始的数组中。

图14 程序使用

图15 运行结果

MOVE_BLK_VARIANT

LAD和SCL均为MOVE_BLK_VARIANT指令。

MOVE_BLK_VARIANT的基本功能是数组之间部分元素的传送,并且是可以处理Variant类型的变量的指令之一,适合处理Variant指向的变长数组。

从TIA V13SP1,S7-1200 V4.0开始支持该指令。

图16 指令位置

图17 指令详情

表2 参数说明

参数声明数据类型
SRCInputVariant、Array、其他(不包括Bool,Array of Bool)
COUNTInputUDINT
SRC_INDEXInputDINT
DEST_INDEXInputDINT
DESTOutputVariant、Array、其他(不包括Bool,Array of Bool)
RET_VALReturnINT

MOVE_BLK_VARIANT指令通常用于将源数组SRC的部分元素传送至目的数组DEST的部分元素中,SRC与DEST数组元素必须完全相同。COUNT是传送的元素个数,SRC_INDEX是待传送的源数组的起始编号,DEST_INDEX是目的数组接收的起始编号,此处用编号不是下标的意思是,SRC_INDEX和DEST_INDEX都从0开始,对应SRC和DEST的第一个元素。

同样是传送部分数组元素的指令,MOVE_BLK_VARIANT相对MOVE_BLK有以下优点:

1. SRC和DEST不可以是Bool数组,但可以是Struct、UDT等复杂数据类型数组

2. SRC和DEST都可以是普通的单个变量,例如SRC为一个INT变量,DEST作为一个INT数组,此时需要设置COUNT=1,SRC_INDEX=0,然后根据DEST_INDEX的值,传入DEST的指定位置。

3. SRC和DEST填写的通常是数组名,也可以是普通的单个变量,或者数组的一个元素,后两种情况都需要像(2)一样处理。

4. SRC和DEST可以是参数类型Variant的变量,也就是可以直接填写P#指针的格式,指令将会把P#指针看做数组处理(原因)。即使是SRC和DEST都指向Variant类型,其指向的形参的数组元素数据类型也需要相同,所以通常需要在使用指令之前用EQ_ElemType检查其中元素的数据类型。

使用MOVE_BLK_VARIANT指令的注意:

(1)COUNT>=1,否则报错并且不传送任何数据。

(2) COUNT+SRC_INDEX与COUNT+DEST_INDEX决定了SRC与DEST数组元素编号上限,超出范围将报错并且不传送任何数据。

使用举例:

1. 实现功能将结构完全一样的M区数据送入DB区

图18 运行结果

需要注意的是将DB块改为非优化,M区和DB区均是16Byte,SRC和DEST可以是P#BYTE 16,P#WORD 8,P#DWORD 4等都可以,但是要注意COUNT和元素数相同(P#BYTE 16,COUNT=16;P#WORD 8,COUNT=8;P#DWORD 4,COUNT=4),SRC和DEST结构一致即可。

图19 程序详情

2. 实现变长数组的处理

功能:FC15处理MBV类型变量,该变量作为InOut,FC14中输入MBV类型变量的变长数组,在其内部判断数组大小,然后数组元素逐个执行FC15指令,*后送回变长数组。

图20 指令详情xiangbaijiao


推荐产品
信息搜索
 
上海陌然自动化科技有限公司
  • 地址:上海市金山区枫泾镇环东一路65弄7号2250室
  • 电话:15921583216
  • 手机:15000711173
  • 传真:15921583216
  • 联系人:向柏矫