比较触点(Compare Contacts)
比较触点是梯形图编程中的重要元件,用于对两个变量的大小关系进行判断,并根据比较结果决定逻辑是否导通。
概述
与其他梯形图元件一样,比较触点也以图形符号表示。它通常用于比较实时变量与设定值、上下限或另一实时变量之间的大小关系。
<变量_1>
----|>=|----
<变量_2>比较触点类型
比较触点有多种类型,每一种对应不同的比较关系:
- 等于 (==):当两个变量相等时,触点导通。
- 不等于 (<>):当两个变量不相等时,触点导通。
- 小于 (<):当第一个变量小于第二个变量时,触点导通。
- 小于等于 (<=):当第一个变量小于或等于第二个变量时,触点导通。
- 大于 (>):当第一个变量大于第二个变量时,触点导通。
- 大于等于 (>=):当第一个变量大于或等于第二个变量时,触点导通。
每个触点的状态取决于比较结果。若比较结果导通,触点闭合(ON);若不导通,则触点断开(OFF)。
指令类型与数据类型
比较触点按"基础比较关系 × 数据类型"组合成 24 种指令。6 种基础比较关系分别为:
| 指令 | 运算符 | 含义 |
|---|---|---|
| EQU | == | 等于 |
| NEQ | <> | 不等于 |
| GRT | > | 大于 |
| GEQ | >= | 大于等于 |
| LES | < | 小于 |
| LEQ | <= | 小于等于 |
每种比较关系支持 4 种数据类型后缀:
| 后缀 | 含义 | 可绑定的变量类型 |
|---|---|---|
| B | 8 位字节 | Uint8 / Int8 |
| W | 16 位字 | Int16 / Uint16 |
| D | 32 位双字 | Int32 / Uint32 |
| R | 32 位实数 | Real |
例如 EQUB 表示 8 位字节相等比较,GRTD 表示 32 位整数大于比较,LEQR 表示实数小于等于比较。两个操作数应绑定同数据类型(或直接填写常量)的变量。旧版本工程中的 EQU、NEQ 等指令会自动迁移为对应的 16 位字指令。
在控制逻辑中的应用
比较触点常用于构建基于数值关系的控制逻辑。例如,可使用 大于 (>) 触点判断液位是否超过某一设定值,从而触发关闭阀门、防止溢流。
总的来说,理解比较触点对于梯形图编程非常关键,因为它能够根据变量之间的关系生成更复杂的控制逻辑。