
GATHER_BLK — 批量位打包
把位数组按每 16 位打包成多个 Word 元素。
在 TIA 里试一下
选一个示例块,通过 TiaLink 导入当前 TIA 项目:预检、默认不覆盖、不自动保存。示例块不会自动运行;导入后请在 OB1 调用并接变量。
一句话
GATHER_BLK 把位数组按每 16 位打包成多个 Word 元素。
符号与引脚
分类:移动
不需要实例
模板值:dest_type, src_type, count_type
| 引脚 | 方向 | 说明 |
|---|---|---|
en | 流输入 | 使能输入 |
IN | 输入 | 位数组起始元素 |
COUNT_OUT | 输入 | 输出元素个数(UDInt) |
eno | 流输出 | 使能输出 |
OUT | 输出 | 目标数组起始元素 |
符号见下面的最小示例;引脚名与方向来自 lad-ir 指令目录,说明为本站补充。
最小示例
Enable=1、Count=2 时,把 Bits[0..31] 打包成 Words[0..1]。

图中 # 前缀表示块内局部变量;实际工程里也可以是全局标签或 DB 变量。
怎么工作
IN是位数组起始元素(如Bits[0]),OUT是目标数组起始元素(如Words[0])。COUNT_OUT是输出元素个数(UDInt);每个 Word 吃 16 位。dest_type/src_type/count_type分别控制输出、输入、计数类型。- 位序按 TIA 规则:第 0 位对应第一个元素的最低位。
常用场景
常见坑
- 绑整个数组:
IN/OUT要绑数组起始元素,不是整个数组。 - Count 超范围:
Count * 16不要超过位数组长度。 - 位序写反:第 0 位是最低位;用已知值验证。
- ENO 未接:后面的指令可能不执行;需要串联时检查 ENO。
