业务销售;竭诚为你服务.
公司主营西门子PLC模块,数控伺服,触摸屏等系列产品,产品*,质保一年
![]() |
参考价 | ¥670 |
订货量 | 1 |
更新时间:2019-07-04 18:30:25浏览次数:258
联系我们时请说明是化工仪器网上看到的信息,谢谢!
西门子6SN1145-1BA01-0BA2定制
本店所售均为西门子原装全新未开封产品,图片仅供参考,一切已型号为准,实物保证全新,MOVE_BLK_VARIANT:块 (S7-1500)
说明
可以使用“块"(Move block) 指令将一个存储区(源范围)的数据到另一个存储区
(目标范围)中。可以将一个完整的 ARRAY 或 ARRAY 的元素到另一个相同数据类型
的 ARRAY 中。源 ARRAY 和目标 ARRAY 的大小(元素个数)可能会不同。可以一
个 ARRAY 内的多个或单个元素。
要的元素数量不得超过所选源范围或目标范围。
如果在创建块时使用该指令,则无需确定该 ARRAY,源和目标将使用 VARIANT 进行传
输。
无论后期如何声明该 ARRAY,参数 SRC_INDEX 和 DEST_INDEX 始终从下限“0"开始计
数。
如果的数据多于可用的数据,则不执行该指令。
指令
4.1 指令
对 PLC 进行编程
编程和操作手册, 10/2018 1575
参数
下表列出了“块"指令的参数:
参数声明数据类型存储区说明
SRC Input 2) VARIANT(指
向一个 ARRAY
或一个 ARRAY
元素),
ARRAY of <数
据类型>
L(可在块接口
的“Input"、
“InOut"
和“Temp"部分
进行声明。)
待的源块
COUNT Input UDINT I、Q、M、D、
L 或常量
已的元素数目
如果参数 SRC 或参数
DEST 中未任何
ARRAY,则将参数
COUNT 的值设置为“1"。
SRC_INDE
X
Input DINT I、Q、M、D、
L 或常量
定义要的个元
素:
● SRC_INDEX 参数将
从 0 开始计算。如果参
数 SRC 中了
ARRAY,则参数
SRC_INDEX 中的整数
将待源区域中
的个元素。而与所
声明的 ARRAY 限值无
关。
● 如果 SRC 参数中未指
定 ARRAY 或者仅
了 ARRAY 的某个元
素,则将
SRC_INDEX 参数的值
赋值为“0"。
指令
4.1 指令
对 PLC 进行编程
1576 编程和操作手册, 10/2018
参数声明数据类型存储区说明
DEST_IND
EX
Input DINT I、Q、M、D、
L 或常量
定义了目标存储区的起点。
● DEST_INDEX 参数将
从 0 开始计算。如果参
数 DEST 中了
ARRAY,则参数
DEST_INDEX 中的整
数将待目标范
围中的个元素。而
与所声明的 ARRAY 限
值无关。
● 如果参数 DEST 中未
任何 ARRAY,则
将参数 DEST_INDEX
赋值为“0"。
DEST Output 1) VARIANT L(可在块接口
的“Input"、
“InOut"
和“Temp"部分
进行声明。)
源块中内容将到的目
标区域。
RET_VAL Output INT I、Q、M、D、L 错误信息:
如果指令执行期间出错,
则在参数 RET_VAL 中输
出错误代码。
1) DEST 参数声明为 Output,因为数据流入变量。但此变量本身在块接必须声明为
InOut。
2) 参数 SRC 的数据类型不能为 BOOL 和 BOOL 型 ARRAY。
有关有效数据类型的更多信息,请参见“另请参见"。
指令
4.1 指令
对 PLC 进行编程
编程和操作手册, 10/2018 1577
RET_VAL 参数
下表列出了 RET_VAL 参数值的含义:
错误代码*
(W#16#...
)
说明
0000 无错误
80B4 数据类型不匹配。使用 ARRAY of PLC 数据类型 (UDT),而非 ARRAY of
Struct。
8151 无法访问 SRC 参数。
8152 未输入参数 SRC 的操作数。
8153 参数 SRC 在生成代码时出错
8154 参数 SRC 的操作数具有 BOOL 数据类型。
8281 参数 COUNT 的值无效
8382 参数 SRC_INDEX 的值小于 0。
8383 SRC_INDEX 的值超出 ARRAY 的上限。
8482 参数 DEST_INDEX 的值小于 0。
8483 DEST_INDEX 的值超出 ARRAY 的上限。
8534 DEST 参数为写保护
8551 无法访问 DEST 参数。
8552 未输入参数 DEST 的操作数。
8553 参数 DEST 在生成代码时出错
8554 参数 DEST 的操作数具有 BOOL 数据类型。
* 在程序编辑器中,错误代码可显示为整数或十六进制值。有关切换显示格式的更多信
息,请参见“另请参见"。
示例
以下示例说明了该指令的工作原理:
STL 说明
CALL MOVE_BLK_VARIANT // 调用指令。
SRC := #SrcField // 待的个元素
COUNT := "Tag_Count" // 要从源范围到目标范围的元素个数。
SRC_INDEX := "Tag_Src_Index" //SRC 参数处待的个元素
DEST_INDEX := "Tag_Dest_Index" //DEST 参数处待的个元素
指令
4.1 指令
对 PLC 进行编程
1578 编程和操作手册, 10/2018
STL 说明
DEST := #DestField //待源区域的个元素。
RET_VAL := "Tag_Result" // 错误信息
下表将通过具体的操作数值对该指令的工作原理进行说明:
参数块接的声明操作数值
SRC Input #SrcField 局部操作数
#SrcField 使用了一
个在编程块时仍然未
知的 PLC 数据类型。
(ARRAY[0..10] of
"MOVE_UDT")
COUNT Input Tag_Count 2
SRC_INDEX Input Tag_Src_Index 3
DEST_INDEX Input Tag_Dest_Index 3
DEST InOut #DestField 局部操作数
#DestField 使用了一
个在编程块时仍然未
知的 PLC 数据类型。
(ARRAY[10..20] of
"MOVE_UDT")
将两个元素从源范围(从 MOVE_UDT 的 ARRAY [0..10] 的第 4 个元素开始)到目标
范围。的元素将从第 4 个元素开始粘贴到 ARRAY [10..20] of MOVE_UDT 中。
说明
有关 MOVE_BLK_VARIANT 指令的更多信息,请参见西门子工业在线支持中的以下
文章:
在 STEP 7 (TIA Portal) 中,如何将存储区和结构化数据从一个数据块到另一个数据块
中?
下一篇:西门子6SN1145-1BA01-0BA2回收