主题
二、功能块图/梯形图(FBD/LD)
结构化编程类似西门子默认的编程方法,支持自定义 FB。结构体梯形图是使用触点、线圈、功能、功能块等梯形图符号,将程序用图形进行记述的语言。编辑器的左端有母线,通过从母线向连接的电路供应电源的示意图进行编程。
这是三种编程方式里最常用的一种。把反复用到的逻辑(比如一段 PID、一段报警判断)封装成功能块,之后在梯形图里像元件一样调用,改一处就能全部生效。
结构体梯形图基本格式
结构体梯形图由以下要素构成:
| 要素 | 说明 |
|---|---|
| 触点 | 传递运算结果的连接要素 |
| 线圈 | 输出运算结果 |
| 功能 | 执行功能运算 |
| 功能块 | 执行功能块运算 |
| 输入变量 | 将外部数据输入到功能/功能块 |
| 输出变量 | 从功能/功能块输出运算结果 |
梯形图符号表
触点与线圈
| 要素 | 梯形图符号 | 说明 |
|---|---|---|
| 常开触点 | — | |
| 常闭触点 — | / | — |
| 上升沿脉冲 — | P | — |
| 下降沿脉冲 — | N | — |
| 上升沿脉冲否 | — | PN |
| 下降沿脉冲否 | — | NP |
| 线圈 | —( )— | 将运算结果输出到指定软元件或标签 |
| 取反型线圈 | —(/)— | 运算结果为 OFF 时指定软元件或标签变为 ON |
| 置位 | —(S)— | 运算结果为 ON 时置位,即使运算结果变为 OFF 也保持 ON |
| 复位 | —(R)— | 运算结果为 ON 时复位为 OFF,OFF 时状态不变化 |
触点连接规则
- 串联连接时,与到此为止的运算结果进行 AND 运算
- 并联连接时,与到此为止的运算结果进行 OR 运算
跳转与返回
| 要素 | 说明 |
|---|---|
| 跳转 | 指针分支指令,无条件执行同一程序文件内指令的指针号的程序 |
| 返回 | 表示子程序的结束,返回到子程序调用指令的下一步 |
功能与功能块
| 要素 | 说明 |
|---|---|
| 功能 | 执行功能 |
| 功能块 | 执行功能块 |
| 功能自变量输入 | 将自变量输入到功能、功能块 |
| 功能恢复值输出 | 从功能、功能块输出恢复值 |
| 功能自变量取反输入 | 将自变量取反后输入到功能、功能块 |
| 功能恢复值取反输出 | 将来自于功能、功能块的恢复值取反后输出 |
编程规则
结构体梯形图以梯形图块为单位进行编程,运算顺序为:
- 从母线开始向右执行
- 由上至下逐行执行