Skip to content

基础控制例程 4:故障锁存、确认与消音 ​

这一页只讲这一个例程。母页 b-01-basic-control 里留着例程 1,其余例程各自一页、在那一页的目录里点。

场景:故障闪一下也要记住;人工确认后停蜂鸣器但灯继续亮;故障真正消失才自动解除。现场最能减少误操作的报警结构。

软元件

软元件作用
M10故障输入(1 = 故障)
X11确认 / 消音按钮
M100报警锁存
M101已确认(消音)
Y10报警灯
Y11蜂鸣器

块图(照着拖即可)

例程 4:故障锁存、确认与消音 的块图

对应的 ddc.json(点「生成 JSON」得到的就是它;也可存成 .ddc.json 导入)

json
{
  "version": 1,
  "name": "故障报警与消音",
  "scan_ms": 200,
  "lines": [
    {
      "op": "assign",
      "target": {"op":"ref","device":"M","addr":100},
      "expr": {
        "op": "rs",
        "id": "rs_alarm",
        "args": [
          {"op":"ref","device":"M","addr":10},
          {
            "op": "and",
            "args": [
              {"op":"ref","device":"X","addr":11},
              {"op":"not","args":[{"op":"ref","device":"M","addr":10}]}
            ]
          }
        ]
      }
    },
    {
      "op": "assign",
      "target": {"op":"ref","device":"M","addr":101},
      "expr": {
        "op": "rs",
        "id": "rs_ack",
        "args": [
          {"op":"ref","device":"X","addr":11},
          {"op":"not","args":[{"op":"ref","device":"M","addr":100}]}
        ]
      }
    },
    {
      "op": "assign",
      "target": {"op":"ref","device":"Y","addr":10},
      "expr": {"op":"ref","device":"M","addr":100}
    },
    {
      "op": "assign",
      "target": {"op":"ref","device":"Y","addr":11},
      "expr": {
        "op": "and",
        "args": [
          {"op":"ref","device":"M","addr":100},
          {"op":"not","args":[{"op":"ref","device":"M","addr":101}]}
        ]
      }
    }
  ]
}

要点

  • 锁存用启停控制的启动孔接故障:比扫描周期还短的瞬时故障也锁得住。
  • 解除条件是「确认 且 故障已消失」两个都要满足——避免故障还在时按一下就把报警清掉。
  • 消音标志 M101 的停止孔接 非 M100:报警一解除就自动复位,下一次报警必定重新响。

验证:M10 给一个短脉冲 → Y10 亮、Y11 响;按 X11 → Y11 停、Y10 仍亮;M10 回 0 → 稍等一轮 Y10 灭、M100/M101 自动复位。

注意事项

  • 两颗启停控制块必须有不同实例标识(这里的 rs_alarm / rs_ack),否则校验报「实例标识重复」。
  • 把 X11 直接接到报警锁存的停止孔:故障还在时按一下就清掉报警,等于漏报。
  • 忘了给消音标志接停止条件:确认标志一直留着,下次故障蜂鸣器不响。

LPPLC 工业物联网云平台 · 软硬件与云平台全栈自研