Объекты и свойства BACnet: основы для сборщиков щитов
Прежде чем подключать первый щит BACnet, разберитесь, что такое 'объект' на самом деле — смоделированная точка с заданным набором свойств — и почему номер Device Instance должен быть уникален во всей сети здания, а не только в вашем сегменте.
Как читать список точек BACnet до начала монтажа щита
Начните с объекта Device
У каждого устройства BACnet — контроллера, датчика, шлюза — есть ровно один объект Device с уникальным Device Instance (0–4194302). Найдите его первым: за ним стоят все остальные объекты устройства.
Поймите, что такое объект на самом деле
Объект BACnet — это смоделированная точка, а не «сырой» регистр, с фиксированным набором свойств: Present_Value, Status_Flags, Object_Name, Units, Description. Вы читаете свойство, а не адрес в памяти.
Изучите стандартные типы объектов
Analog Input/Output/Value (AI/AO/AV) для непрерывных величин, Binary Input/Output/Value (BI/BO/BV) для точек вкл/выкл и Multi-state Input/Output/Value для ступенчатых состояний — это покрывает большинство точек в листе пусконаладки.
Проверьте уникальность Device Instance перед запуском
Номер Instance должен быть уникален во всей сети (internetwork), а не только в локальном сегменте. Конфликт незаметно ломает обнаружение по Who-Is/I-Am — ошибка проявится через недели как «пропавшее устройство» уже на другом объекте.
Модель объектов и свойств на практике
Диапазон Device Instance
22-битное число, по одному на объект Device, которое должно оставаться уникальным во всей сети BACnet — основа автоматического обнаружения через Who-Is/I-Am.
Свойства определяют, что вы можете сделать с точкой
Present_Value несёт показание или команду, Status_Flags отражает состояние неисправности, override или тревоги, Out_Of_Service позволяет принудительно задать значение для теста, не трогая проводку.
Типы объектов напрямую соответствуют вашим I/O
AI/AO/AV для аналоговых сигналов, BI/BO/BV для дискретных точек, Multi-state для ступенчатых положений — плюс надзорные объекты Schedule, Calendar, Trend Log и Notification Class для логики, которая живёт в контроллере, а не в программе ПЛК.
Дисциплина именования окупается при сдаче объекта
Автоматически сгенерированные имена вроде 'AI-1' или 'BO-14' нечитаемы на графике BMS. Единая конвенция именования (этаж-система-точка) для Object_Name и Description превращает список точек в документ, по которому сможет работать другой инженер.
PICS показывает, что устройство поддерживает на самом деле
Protocol Implementation Conformance Statement перечисляет типы объектов и сервисы, реализованные конкретным устройством. Проверяйте его до проектирования щита, а не после звонка интегратора.
Priority Array определяет, кто управляет точкой
Управляемые объекты вроде BO и AO имеют 16 уровней приоритета — уровень 1 для перехвата по безопасности жизни, уровень 8 для ручного перехвата оператором, уровень 16 как значение по умолчанию — так несколько систем могут «голосовать» за одну точку без конфликтов проводки.
Что наши инженеры проверяют в списке точек BACnet
Перед сборкой щита мы проверяем модель объектов по фактическим устройствам, а не только по спецификации.
- Проверка объектов и свойств по предоставленным документам PICS
- План распределения Device Instance с проверкой уникальности во всей сети
- Предложение конвенции именования объектов (этаж-система-точка) для графики BMS
- Сборка щита по IEC 61439 с документированной разводкой BACnet для передачи
- Поддержка при пусконаладке в случае проблем обнаружения по Who-Is/I-Am на объекте
Частые вопросы
Что такое объект BACnet простыми словами?
Это смоделированное представление физической или логической точки — датчика, реле, уставки, — выраженное через заданный набор свойств (Present_Value, Status_Flags, Object_Name, Units и другие), а не через сырой адрес памяти. Вы читаете и записываете свойства, а не регистры.
В чём разница между AI, AO, AV, BI, BO и BV?
Буквы разделяют тип сигнала и направление: Analog (непрерывные величины) против Binary (вкл/выкл), а также Input (со стороны поля), Output (в сторону поля) или Value (внутренний, без привязки к физическому I/O). AI/AO/AV и BI/BO/BV покрывают большинство точек листа пусконаладки; Multi-state добавляет ступенчатые состояния сверх простого вкл/выкл.
Почему Device Instance должен быть уникален во всей сети, а не только в моём сегменте?
Обнаружение по Who-Is/I-Am рассылается широковещательно по всей сети через BBMD и маршрутизаторы, а не только по локальному сегменту. Два устройства с одинаковым Instance в разных сегментах столкнутся, как только сеть будет объединена маршрутизацией — часто на другом объекте, спустя месяцы после отгрузки вашего щита.
Что именно ломается, если два устройства делят один Device Instance?
Обнаружение становится ненадёжным: broadcast Who-Is может получить ответ I-Am от не того устройства, либо рабочие станции периодически «теряют» одно из двух устройств в зависимости от того, кто ответил первым. Мгновенного жёсткого отказа обычно не происходит — именно поэтому диагностировать проблему позже сложно.
Нужно ли запоминать каждое свойство или достаточно нескольких?
Для повседневной работы со щитом достаточно Present_Value, Status_Flags, Out_Of_Service, Object_Name, Description и Units — это покрывает большую часть задач. Более глубокие свойства вроде Priority_Array важны в основном для управляемых объектов (AO/BO), где точкой может командовать больше одной системы.
Впервые монтируете щит с BACnet?
Пришлите нам список точек и документы PICS устройств — наши инженеры проверят модель объектов и план Device Instance до начала сборки, а не после.