跳到正文
Learn-LAD
梯形图示例库/LAD 指令手册/LIMIT — 限幅

LIMIT — 限幅

把 IN 限制在 [MN, MX]:低于 MN 输出 MN,高于 MX 输出 MX。

数学 S7-1200/1500 TIA V19 别名:限幅 / Limiter / LIMIT

在 TIA 里试一下

选一个示例块,通过 TiaLink 导入当前 TIA 项目:预检、默认不覆盖、不自动保存。示例块不会自动运行;导入后请在 OB1 调用并接变量。

TiaLink 设置

默认 http://localhost:8080。也可以在本页地址后加 ?tialink= 临时指定。

TiaLink 启动时若设置了 --api-token,这里要填相同的值;只保存在本机浏览器 localStorage,不会上传。

一句话

LIMIT 把 IN 限制在 [MN, MX]:低于 MN 输出 MN,高于 MX 输出 MX,区间内原样输出。

符号与引脚

分类:数学 不需要实例 模板值:计数值类型(value_type)
引脚方向说明
en流输入使能输入
MN输入下限
IN输入输入值
MX输入上限
eno流输出使能输出
OUT输出限幅后的值

符号见下面的最小示例;引脚名与方向来自 lad-ir 指令目录,说明为本站补充。

最小示例

A 限制在 0..100:A=-5 输出 0,A=150 输出 100,A=50 输出 50。

Limit_Example:Network 1 — 限幅 0..100

图中 # 前缀表示块内局部变量;实际工程里也可以是全局标签或 DB 变量。

怎么工作

IN 输出
< MN MN
MN..MX IN
> MX MX
  • MN 必须小于等于 MX;反过来结果没有意义。
  • MN/IN/MX/OUT 的数据类型要一致;value_type 模板用于类型引用。
  • EN 为 0 时不执行,OUT 不再更新。
  • ENO 可以继续串联;类型错误/溢出时可能为 0。

常用场景

1. 输出限幅

同上面的最小示例。

2. 温度安全范围

Temp 限制在 20.0..80.0:低于 20 按 20 算,高于 80 按 80 算,用于设定值/显示保护。

Limit_Temp:Network 1 — 温度限幅 20..80

常见坑

  • MN/MX 写反:先确认下限 ≤ 上限。
  • 类型不一致:Int、DInt、Real 不要混用;先转换。
  • 把 LIMIT 当报警:它只改输出值,不产生越限报警;报警要用比较指令。
  • ENO 未接:后面的指令可能不执行;需要串联时检查 ENO。
  • 边界值:等于 MN/MX 时原样输出,不再被裁剪。

← 返回 LAD 指令手册