跳到正文
Learn-LAD
梯形图示例库/LAD 指令手册/Mul — 乘法

Mul — 乘法

乘法:out = in1 × in2。

数学 S7-1200/1500 TIA V19 别名:乘法 / MUL / Mul

在 TIA 里试一下

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

TiaLink 设置

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

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

一句话

Mul 做乘法:out = in1 × in2;EN 为 1 时执行,ENO 可以继续串联。

符号与引脚

分类:数学 不需要实例 模板值:个数(Card), 源类型(SrcType)
引脚方向说明
en流输入使能输入
in1输入操作数 1
in2输入操作数 2
eno流输出使能输出
out输出结果

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

最小示例

Enable=1 时 Result = A × 1;Enable=0 时函数不执行,Result 不再更新。

Mul_Example:Network 1 — Mul — 乘法

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

怎么工作

  • EN 是使能:只有 EN 为 1 的扫描才执行运算。
  • in1/in2 是操作数,out 是结果;数据类型必须一致。
  • ENO 是使能输出;如果运算出错(如溢出/类型错误),ENO 可能为 0。
  • Card 控制输入个数:Card=3 时可以连乘多个操作数。
  • 整数乘法很容易溢出;需要时用 DInt/Real 或先做范围检查。

常用场景

1. 乘常量

同上面的最小示例。

2. 缩放

Scaled = Raw × 10,把原始值放大 10 倍;注意结果的数据类型和量程。

Mul_Scaled:Network 1 — 缩放

常见坑

  • 整数溢出:Int 乘法很容易超出 32767;用 DInt 或 Real。
  • 类型不一致:Int、DInt、Real 不要混用;先转换。
  • 每个扫描都乘:累计/连乘逻辑要配边沿或条件,否则会指数增长。
  • ENO 未接:后面的指令可能不执行;需要串联时检查 ENO。
  • 单位/量纲:缩放系数和结果单位要写清楚,避免 10 倍/100 倍错误。

← 返回 LAD 指令手册