编写转换条件
转换条件、动作条件和事件都是逻辑表达式。您用普通 ASCII 字符输入它们;图表以教科书记法显示(NOT 显示为上划线,AND 显示为 ·)。关闭 视图 › 教科书记法 可准确查看您输入的内容。
运算符
| 含义 | 输入 | 也可接受 | 显示为 |
|---|---|---|---|
| AND | a * b | a AND b、a && b、a · b | a · b |
| OR | a + b | a OR b、a || b | a + b |
| NOT | /a | NOT a、!a、¬a | 带上划线的 a |
| 上升沿 | ↑a | RE a(输入 ^a 得到 ↑a) | ↑a |
| 下降沿 | ↓a | FE a | ↓a |
| 恒为真 / 恒为假 | 1 / 0 | TRUE / FALSE | 1 / 0 |
| 括号 | (a + b) * c | (a + b) · c |
NOT 优先级最高,其次是 AND,然后是 OR:a + b * /c 表示 a + (b * (/c))。如有疑问,请使用括号。
上升沿和下降沿
边沿仅在其操作数发生变化的瞬间为真:↑a(上升沿,P 触发)在 a 从假变为真时为真,↓a(下降沿,N 触发)在它从真变为假时为真。无论按钮按住多久,都可以用它对一次按下只作出一次响应。
输入边沿的三种方式:
- 在名称前输入
^:^start会在输入时变为↑start。 - 将文本光标放在某个名称上,按 Alt+↑ 得到上升沿,按 Alt+↓ 得到下降沿。再按一次可移除边沿,按另一个则可互换。
- 编辑转换条件时,单击字段上方出现的符号栏中的 ↑ 或 ↓。
也可以使用 RE a 和 FE a。边沿同样适用于步变量:↑X3 在步 3 变为激活时为真。
步变量
步 3 激活期间 X3 为真。在包含多个 grafcet 的项目中,X3 指同一 grafcet 中的步 3,或者项目中唯一的步 3。可用它来同步多个 grafcet,例如等待另一个 grafcet 到达某个步。
定时器
5s/X2 在 X2 变为真 5 秒后为真,一旦 X2 为假就立即再次为假:典型含义是“步 2 激活 5 s 后”。
- 单位:
ms、s、min、h,例如500ms/X4、2min/start。 - 操作数可以是任何条件:
3s/(a * b)。 2s/a/5s在a变为真 2 s 后为真,并保持为真直到a变为假后 5 s。
比较
数值变量(INT、REAL、TIME)用 =、<>、<、<=、>、>= 进行比较,并可在比较中使用 +、-、*、/ 和 MOD:level >= 80、C = 3、T1 > 2s、(a + b) / 2 < limit。比较是一个条件:当您将它与其他条件组合时,请将它放在括号中,如 start * (C < 10)。没有括号时,start * C < 10 会将 start * C 与 10 进行比较。
存储型动作中的赋值
存储型动作包含一个赋值:C := C + 1、Motor := 1、Speed := 2.5、Done := FALSE。请参阅动作。
输入时的帮助
- 建议:开始输入名称,用方向键选择一个变量或步(
X…),然后按 Enter 或 Tab。高亮名称的其余部分以灰色显示在光标之后;按 Tab 或 → 接受。 - 空字段:变量表中第一个尚未被使用的变量以灰色显示(转换条件显示输入,动作显示输出);按 Tab 接受。
- 问题:字段下方的框会解释哪里有错、在出错位置加下划线,并提供修复:拼错名称时提供 使用 Start。新名称会被提示出来(新变量 start:BOOL 输入),并在您确认时声明。
- 符号栏:用于 ↑ ↓ NOT AND OR、括号(会包住所选文本)以及定时器模板的按钮。
您始终可以确认一个有问题的表达式:它会在图表上以红色下划线显示,并列在问题中,直到您修复它为止。