文档中心
PLC在线模拟器
数学运算

数学运算函数(Math Functions)

基本数学运算函数如 ADD、SUB、MUL 和 DIV,用于完成加减乘除等基础计算。它们在 PLC 控制逻辑中常被用作构建更复杂逻辑的基础模块。

符号

ADD
EN
ENO
IN1
<???>
IN2
<???>
OUT
<???>

配置说明

每个基础数学函数都需要两个输入参数 IN1、IN2,以及一个输出参数 OUT。除此之外,函数块还由两个控制参数驱动:EN 用于启用,ENO 用于指示块已启用。也就是说,EN 导通时函数执行,ENO 表示执行条件成立。计算结果会写入 OUT。

需要注意的是,这些参数通常只允许使用 Number 或 Time 类型变量。

ADD
EN
ENO
IN1
InputNumber1
IN2
<???>
OUT
<???>

运行行为

当 EN 为 打开 时,数学函数会执行,结果写入 OUT,同时 ENO 也会为 打开。若 EN 为 关闭,函数不会执行,ENO 也会被置为 关闭。如果 EN 持续导通,则函数会在每个扫描周期中重复运行。若只希望其执行一次,可以使用上升沿或下降沿检测触点。

SUB
EN
ENO
IN1
10InputNumber1
IN2
2InputNumber2
OUT
8OutputNumber

加法

Result = Input1 + Input2

ADD
EN
ENO
IN1
10Input1
IN2
2Input2
OUT
12Result

减法

Result = Input1 - Input2

SUB
EN
ENO
IN1
10Input1
IN2
2Input2
OUT
8Result

乘法

Result = Input1 \* Input2

MUL
EN
ENO
IN1
10Input1
IN2
2Input2
OUT
20Result

除法

Result = Input1 / Input2

DIV
EN
ENO
IN1
10Input1
IN2
2Input2
OUT
5Result

指令类型与数据类型

数学运算指令按照"基础运算 × 数据类型"组合成多种指令,共 12 种。数据类型后缀含义如下:

后缀含义可绑定的变量类型
W16 位字Int16 / Uint16
D32 位双字Int32 / Uint32
R32 位实数Real
基础运算W(16 位)D(32 位)R(实数)
加法 ADDADDWADDDADDR
减法 SUBSUBWSUBDSUBR
乘法 MULMULWMULDMULR
除法 DIVDIVWDIVDDIVR

选择指令时,应根据操作数的数据类型选择合适的后缀:整数运算选择 W/D,需要小数精度时选择 R(实数)。旧版本工程中保存的 ADD、SUB、MUL、DIV 指令会自动迁移为对应的 16 位字指令(ADDW 等),无需手动调整。

示例