Skip to content

综合场景例程 4:新风机组(时段启停 + 送风 PI + 防冻 + 滤网堵塞) ​

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

场景:组合式空调机组的标准配置:按时间段自动启停、按送风温度调水阀、盘管防冻优先、滤网压差报警。

软元件

软元件作用
M610时段条件
M611风机故障
X30急停
M600机组运行
D110送风温度
D112盘管温度(防冻探头)
D640滤网压差
D230水阀开度
Y0送风机
Y20滤网堵塞报警

块图(照着拖即可)

例程 4:新风机组(时段启停 + 送风 PI + 防冻 + 滤网堵塞) 的块图

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

json
{
  "version": 1,
  "name": "新风机组",
  "scan_ms": 500,
  "lines": [
    {
      "op": "assign",
      "target": {"op":"ref","device":"M","addr":600},
      "expr": {
        "op": "rs",
        "id": "rs_ahu",
        "args": [
          {"op":"ref","device":"M","addr":610},
          {
            "op": "or",
            "args": [{"op":"ref","device":"M","addr":611},{"op":"ref","device":"X","addr":30}]
          }
        ]
      }
    },
    {
      "op": "assign",
      "target": {"op":"ref","device":"D","addr":210},
      "expr": {
        "op": "pi",
        "id": "pi_ahu",
        "args": [
          {"op":"ref","device":"M","addr":600},
          {"op":"const","value":1},
          {"op":"ref","device":"D","addr":110},
          {"op":"const","value":18},
          {"op":"const","value":1},
          {"op":"const","value":10},
          {"op":"const","value":128}
        ]
      }
    },
    {
      "op": "assign",
      "target": {"op":"ref","device":"M","addr":601},
      "expr": {
        "op": "cmp",
        "cmp": "<=",
        "args": [{"op":"ref","device":"D","addr":112},{"op":"const","value":5}]
      }
    },
    {
      "op": "if",
      "cond": {
        "op": "or",
        "args": [
          {"op":"ref","device":"M","addr":601},
          {"op":"not","args":[{"op":"ref","device":"M","addr":600}]}
        ]
      },
      "then": [
        {
          "op": "assign",
          "target": {"op":"ref","device":"D","addr":230},
          "expr": {"op":"const","value":100}
        }
      ],
      "else": [
        {
          "op": "assign",
          "target": {"op":"ref","device":"D","addr":230},
          "expr": {
            "op": "limit",
            "args": [
              {"op":"ref","device":"D","addr":210},
              {"op":"const","value":10},
              {"op":"const","value":90}
            ]
          }
        }
      ]
    },
    {
      "op": "assign",
      "target": {"op":"ref","device":"Y","addr":0},
      "expr": {
        "op": "and",
        "args": [
          {"op":"ref","device":"M","addr":600},
          {"op":"not","args":[{"op":"ref","device":"M","addr":601}]}
        ]
      }
    },
    {
      "op": "assign",
      "target": {"op":"ref","device":"Y","addr":20},
      "expr": {
        "op": "cmp",
        "cmp": ">=",
        "args": [{"op":"ref","device":"D","addr":640},{"op":"const","value":200}]
      }
    }
  ]
}

要点

  • 防冻优先于温度调节:用「如果」整段覆盖输出(水阀全开 + 停风机),而不是在 PI 里加条件——防冻是安全动作,不能被调节逻辑覆盖。
  • 防冻的两个动作缺一不可:停风机 + 全开水阀。只做一个,盘管照样冻裂。
  • 滤网压差是报警不是控制:提醒清洗即可,不要用它去停机组(会频繁误停)。

验证:M610 = 1 → M600 = 1、Y0 = 1;把 D112 写成 3 → D230 = 100、Y0 = 0、M601 = 1;D640 写 250 → Y20 = 1。

注意事项

  • 只靠 PI 的使能做防冻:使能只停止调节,输出停在原值,阀可能是关的——冻裂风险就在这里。
  • 冬夏共用一套参数:冬季要换成加热(正比例 = 0)并改设定值和防冻阈值。
  • 时段条件或故障没并进停止孔:下班后机组还在跑,或故障时不停机。

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