
Upper_Bound — 数组上界
数组上界:返回数组指定维度的上界。
在 TIA 里试一下
选一个示例块,通过 TiaLink 导入当前 TIA 项目:预检、默认不覆盖、不自动保存。示例块不会自动运行;导入后请在 OB1 调用并接变量。
一句话
Upper_Bound 返回数组指定维度的上界。
符号与引脚
分类:移动
不需要实例
模板值:src_type
| 引脚 | 方向 | 说明 |
|---|---|---|
en | 流输入 | 使能输入 |
ARR | 输入 | 开放数组(Array[*]) |
DIM | 输入 | 维度号(1 开始) |
eno | 流输出 | 使能输出 |
OUT | 输出 | 边界值(DInt) |
符号见下面的最小示例;引脚名与方向来自 lad-ir 指令目录,说明为本站补充。
最小示例
Enable=1、DIM=1 时,上 = Upper_Bound(Arr, 1);Array[0..7] 的上界是 7。

图中 # 前缀表示块内局部变量;实际工程里也可以是全局标签或 DB 变量。
怎么工作
ARR是开放数组(Array[*]),调用时传实际数组。DIM是维度号,一维数组用 1。- 返回类型是
DInt;src_type=Variant。 - 数组边界不一定是 0 开始:
Array[1..10]的上界是 10。
常用场景
常见坑
- 把上界当元素个数:元素个数 = 上界 - 下界 + 1。
- DIM 写 0:维度号从 1 开始。
- ARR 用固定数组类型:形参要用
Array[*],否则 TIA 报类型不匹配。 - 以为边界从 0 开始:数组可以自定义下界。
