Что такое BACnet
BACnet (Building Automation and Control Network) — стандарт ASHRAE, принятый также как ISO 16484-5. Он разработан для зданий: вентиляция и кондиционирование, освещение, энергия, котельные. В отличие от Modbus, BACnet описывает, чем является устройство, а не только как читаются регистры.
Объекты и свойства
Каждое устройство — набор объектов, у каждого объекта есть свойства.
- Analog Input / Output / Value — температура, влажность, уставка
- Binary Input / Output / Value — состояние, команда
- Device — само устройство
- Schedule, Calendar — расписания
- Trend Log — запись значений во времени
- Notification Class — уведомления об авариях
Самое важное свойство — Present_Value, текущее значение.
Службы
- Who-Is / I-Am — обнаружение устройств в сети
- ReadProperty / WriteProperty — чтение и запись
- SubscribeCOV — сообщение только при изменении значения
- Alarm и Event — аварии с состояниями и квитированием
Массив приоритетов для команд определяет, кто вправе перезаписать значение.
Транспорт
| Вариант | Среда | Примечание |
|---|---|---|
| BACnet/IP | Ethernet, UDP порт 47808 (0xBAC0) | Самый распространённый |
| BACnet MS/TP | RS-485 | Дёшев, для полевых устройств, обмен передачей «маркера» |
| BACnet/SC | IP с защитой | Шифрованные соединения через TLS и WebSocket |
BBMD
Who-Is отправляется как широковещательное сообщение, которое не проходит между подсетями. BBMD (BACnet Broadcast Management Device) пересылает такие сообщения между подсетями.
Совместимость
Производитель указывает, что поддерживает устройство, в документе PICS и через блоки BIBB. Перед выбором устройств сравнивают эти документы, а не только слово «BACnet» в листе данных.
Типичные проблемы
- Повторяющиеся Device ID в одной сети.
- Разная скорость линии MS/TP или больше рекомендуемого числа устройств.
- Отсутствие BBMD между подсетями.
- Слишком частый опрос вместо COV.
