跳到正文
Learn-LAD
梯形图示例库/LAD 指令手册/Eq — 等于比较

Eq — 等于比较

in1 = in2 时导通;用于计数到设定值、配方/参数比较。

比较 S7-1200/1500 TIA V19 别名:等于 / Equal / EQ

一句话

Eq 比较两个值:in1 = in2 时输出导通;用于计数到设定值、配方/参数比较。

符号与引脚

分类:比较 不需要实例 模板值:源类型(SrcType)
引脚方向说明
pre流输入左侧 RLO
in1输入比较值 1
in2输入比较值 2
out流输出相等时为 1

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

最小示例

Count 等于 10 时 Done=1;大于或小于 10 都不导通。

Eq_Example:Network 1 — 等于 10

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

怎么工作

in1 in2 out
等于 等于 1
大于 小于 0
小于 大于 0
  • in1/in2 的数据类型必须一致;不同类型 TIA 可能要求显式转换。
  • 比较盒的 pre 是左侧 RLO,out 是结果;可以继续串联其它条件。
  • Eq 只判断「相等」,不判断「大于等于」;需要范围用 Ge/Le 或 InRange。
  • 浮点数相等要特别小心:Real 的 100.0 可能因为计算误差不等于 100.0。

常用场景

1. 计数到设定值

同上面的最小示例。

2. 液位等于设定值

Level 等于 100.0 时 AtSP=1;实际工程更常用 >= 或范围比较,避免浮点误差。

Eq_Level:Network 1 — 液位等于 100.0

常见坑

  • Real 直接相等:计算值有误差,Eq 可能永远不成立;用范围/容差比较。
  • 类型不一致:Int 和 DInt、Real 和 Int 不要直接比较;先转换。
  • 用 Eq 代替 >=:超过设定值后 Eq 会变 0,可能导致逻辑反复。
  • 比较顺序:比较盒前面的 RLO 也会影响结果;pre=0 时即使相等也不导通。
  • 扫描时序:比较的是当前扫描的值;上下游写入顺序会影响结果。

在博途里试一下

TiaLink

把 TIA Portal 接到你的智能体:导入、编译、读回核对、PLCSIM 仿真。本地运行,工程数据不出厂。

打开 TiaLink

也可以先在示例库里找一条用到 Eq 的完整程序,导入后再改。

← 返回 LAD 指令手册