跳到正文
Learn-LAD
梯形图示例库/LAD 指令手册/Scale_X — 缩放到范围

Scale_X — 缩放到范围

把 0..1 的 VALUE 缩放到 [MIN, MAX],结果写入 OUT。

转换 S7-1200/1500 TIA V19 别名:缩放 / SCALE_X / Scale

在 TIA 里试一下

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

TiaLink 设置

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

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

一句话

Scale_X 把 0..1 的 value 缩放到 [min, max],结果写入 out。

符号与引脚

分类:转换 不需要实例 模板值:源类型(SrcType), 目标类型(DestType)
引脚方向说明
en流输入使能输入
min输入输出下限
value输入0..1 的输入值
max输入输出上限
eno流输出使能输出
out输出缩放结果

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

最小示例

Norm 是 0..1,缩放到 0..100:Norm=0.5 时 Temp=50.0。

ScaleX_Example:Network 1 — 0..1 → 0..100

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

怎么工作

  • value 是 0..1 的归一化值;min/max 是输出范围。
  • SrcType/DestType 决定源/目标类型;常见 Real→Real、Real→DInt。
  • value 超出 0..1 时结果会外推;需要限幅时先接 LIMIT。
  • EN/ENO 是使能;类型不匹配可能报错。

常用场景

1. 0..1 → 0..100

同上面的最小示例。

2. 百分比 → 转速

Percent 是 0..1,缩放到 0..50 的转速设定值。

ScaleX_Speed:Network 1 — 0..1 → 0..50

常见坑

  • 把 Scale_X 当 SCALE:SCALE_X 输入是 0..1;模拟量原始值 0..27648 用 SCALE。
  • 不做限幅:value 超 0..1 会外推,可能超出 min/max。
  • 类型不一致:SrcType/DestType 和变量类型要匹配。
  • ENO 未接:后面的指令可能不执行;需要串联时检查 ENO。
  • 量纲:min/max 的单位要和输出变量一致。

← 返回 LAD 指令手册