主题
基础控制例程
逻辑编程最常用的一组基础回路:启停保持、回差开关、报警指示、故障锁存、多条件联动、手自动切换。 每个例程给出编辑器里的块图和对应的 ddc.json——照着块图拖,或把 JSON 存成
程序名.ddc.json再导入,两者等价。
返回 例程总览。
这一页的主角
「启停控制」就是电气里的自保持回路(启保停):启动为真→输出真并保持,停止为真→输出假并保持, 两者同时为真时停止优先。凡是"按钮按一下、设备一直运行"的需求都用它——不用它就得自己用寄存器绕, 很容易写出"松开就停"的点动效果。
例程 1:启停保持
场景:启动按钮按一下设备运转并保持,按停止或出现故障才停。所有连续运行控制的起点。
软元件
| 软元件 | 作用 |
|---|---|
X0 | 启动按钮(点动) |
X1 | 停止按钮 |
M10 | 故障信号(1 = 故障) |
Y0 | 设备(接触器) |
块图(照着拖即可)
对应的 ddc.json(点「生成 JSON」得到的就是它;也可存成 .ddc.json 导入)
json
{
"version": 1,
"name": "启停保持",
"scan_ms": 200,
"lines": [
{
"op": "assign",
"target": {"op":"ref","device":"Y","addr":0},
"expr": {
"op": "rs",
"id": "rs1",
"args": [
{"op":"ref","device":"X","addr":0},
{
"op": "or",
"args": [{"op":"ref","device":"X","addr":1},{"op":"ref","device":"M","addr":10}]
}
]
}
}
]
}要点
- 启动孔接点动按钮即可,输出会自己保持,不需要额外寄存器。
- 停止孔用「或」把所有停机条件并在一起:停止按钮、故障、急停、联锁。增加停机条件时往里再并一路就行。
- 停止优先:启动和停止同时为真时按停止处理,不会出现"按着启动就停不下来"。
验证:X0 给一个短脉冲(1→0)→ Y0 保持 1;X1 置 1 → Y0 变 0;Y0 = 1 期间把 M10 置 1 → Y0 立刻变 0。
注意事项
- 写成
Y0 ← X0(不用启停控制):变成点动,松开就停。 - 停止孔只接了停止按钮,故障信号没并进来——故障来了设备还在跑。
- 期望"停电后记住运行":做不到,重新下发或重新上电后启停状态回到初始(见 3.1.5)。
其余例程(各自一页)
- 基础控制例程 2:带回差的温度开关
- 基础控制例程 3:报警指示(常亮 / 慢闪 / 快闪)
- 基础控制例程 4:故障锁存、确认与消音
- 基础控制例程 5:多条件联动(与 / 或 / 非)
- 基础控制例程 6:手 / 自动切换(多路选择)
相关文档
- 2.3 逻辑类功能块(启停控制、定时器、脉冲触发、与或非)
- 2.1 程序类功能块(主循环、条件判断、赋值)
- 2.2 数据类功能块(取变量、常量、系统时钟)
- 时序与定时例程 / 模拟量与工程量例程
- 3.2 常见问题(数量限制与排错)