跳到主要内容

BACnet/IP (HVAC / 楼宇自动化)

BACnet (Building Automation and Control networks) 是楼宇自动化 (BA) 领域的标准通信协议。它在空调 (HVAC)、照明、火灾探测、门禁等场景中应用最为广泛,而在 BACnet 之上承载 IP 的 BACnet/IP 目前已是事实标准。

本网关通过通用集成引擎以只读模式支持 BACnet/IP。

与其说是 PLC,不如说是 BMS

BACnet 通常不是出现在普通工业 PLC 上,而是出现在 BMS (Building Management System) 控制器 (Honeywell、Johnson Controls、Schneider Andover、Delta Controls、Siemens Desigo 等) 上。如果现场已有 BMS 在运行,不必直接轮询设备,建议优先考虑使用 BMS 的网关 / 集成 API。


注册表单输入项

输入栏填写内容示例
IP 地址BACnet 控制器的 IP192.168.10.50
端口BACnet/IP 端口47808 (= 0xBAC0,标准值)
Device ID (device-id)BACnet 设备实例号1001
响应超时响应等待时间 (ms)3000
如何获取 Device ID

BACnet 通过 IP + Device ID 的组合来标识设备。使用 YABE (Yet Another BACnet Explorer) 之类的免费工具扫描网络,可以一览设备实例号 / 对象列表。BMS 图纸 (Submittal) 的 BACnet PICS 文档中也会明确标注。


如果是 BACnet/MSTP (串行)

如果现场部署的是 BACnet/MSTP (RS-485),PlantPulse Edge 无法直接通信,需要采用以下方式之一。

方法备注
BACnet 路由器 (Cimetrics B6020、Contemporary Controls BASrouter 等)MSTP ↔ IP 转换,最常见
在 BMS 侧加装 IP 模块控制器固件/模块升级
经由集成网关 (Niagara、Tridium)大型站点的标准做法

标签的 PLC 地址表示法

BACnet 对象按 <objectType>:<instance> 格式填写。

表示法含义
analogValue:1Analog Value 1 (温度/湿度/流量等实数型)
analogInput:5Analog Input 5 (传感器直连输入)
analogOutput:2Analog Output 2 (阀门 / 风阀指令)
binaryValue:10Binary Value 10 (布尔值)
binaryInput:5Binary Input 5 (数字输入 / 触点)
binaryOutput:3Binary Output 3 (继电器指令)
multiStateValue:1Multi-State Value 1 (模式 / 状态)

常用对象类型。

类型代码用途
Analog Input / Value / OutputanalogInput / analogValue / analogOutput实数 (温度、风量等)
Binary Input / Value / OutputbinaryInput / binaryValue / binaryOutput0/1 (运行、报警)
Multi-State Input / Value / OutputmultiStateInput / multiStateValue / multiStateOutput1、2、3、… (运行模式)

数据格式匹配

BACnet 对象数据格式格式辅助项
analogValue / analogInput / analogOutputFloatREAL
binaryValue / binaryInput / binaryOutputBoolean(留空)
multiStateValue / multiStateInput / multiStateOutputInteger(留空)
(属性) Object Name 等字符串String(留空)

默认读取对象的 Present_Value 属性。如需其他属性 (例如 Status_Flags、Out_Of_Service),请在 高级 — REST API 中直接调用。


常见问题与解决

现象可能原因解决方法
“No response” / 超时Device ID 不一致、47808 端口被阻断、未配置 BBMD用 YABE 搜索设备确认 ID,防火墙放行 47808/UDP
看不到其他子网的设备BACnet 默认限于同一广播域配置 BBMD (BACnet Broadcast Management Device) 或 Foreign Device Registration
有数值但含义不明Engineering Units 存放在对象属性中在 YABE / BMS 图纸中确认各对象的单位 (°C、kPa、%、…)
多状态只显示数字State_Text 是独立属性参照 BMS 映射表 (1=停止、2=运行、3=报警等),用计算公式转换为标签

后续步骤

  • 高级 — REST API 中的 BACnet 示例
  • 楼宇站点的集成通常构建在 Niagara / Tridium 之上会更简单 — 请与 BMS 团队协商。