Модуль Bacnet/IP для программ-логгеров
Последняя версия: 5.0.1 build 1126. November 28, 2025.
Модуль BACnet/IP считывает значения с устройств, совместимых с BACnet, в локальной Ethernet-сети. Он опрашивает устройства и датчики через заданный интервал. Модуль передает полученные значения в основную программу. Основная программа может логировать их, записывать в базу данных или передавать модулям экспорта. Он также может обнаруживать устройства с помощью широковещательных адресов.
Ключевые функции и применение
Модуль поддерживает очередь запросов. Каждый запрос адресован одному или нескольким устройствам и выполняется сверху вниз. Запрос можно отправлять в заданное время суток или через определенный фиксированный интервал. Запросы отправляются на IP и порт одного устройства, на несколько экземпляров устройств или на широковещательный адрес, например 192.168.1.255, для автоматического поиска устройств. Для перечисления нескольких идентификаторов экземпляров используйте точку с запятой, например 1345;1346. Символ "*" позволяет опрашивать все обнаруженные устройства.
Настройте таймаут ожидания ответа в миллисекундах. Если ответ не пришел до истечения таймаута, запрос отменяется и модуль переходит к следующему устройству или запросу в очереди. Задержавшиеся ответы, пришедшие после таймаута, игнорируются. Поскольку модуль обрабатывает запросы последовательно, задавайте интервалы опроса так, чтобы очередь успевала завершаться в ожидаемый цикл.
Элементы ответа и именование
Каждый запрос содержит один или несколько элементов ответа. Элемент ответа задает имя переменной, тип данных и индекс экземпляра внутри устройства. Имя переменной используется основной программой и модулями экспорта. Задавайте имена уникальными в пределах одного запроса. В разных запросах имена могут совпадать, например, если вы опрашиваете одинаковые данные с разных устройств.
Тип данных должен соответствовать возможностям устройства. Некоторые устройства выдают только аналоговые значения; другие — дискретные или бинарные. Выбирайте типы, которые поддерживаются устройством, чтобы избежать ошибок чтения. Запросы можно редактировать, перемещать или удалять через меню Действие или по правому клику в дереве запросов.
Пример: входящие BACnet-данные (как принял логгер)
Timestamp: DATE_TIME_STAMP
Source: 192.168.1.45:47808
Device Instance: 1345
Response:
- Name: TempRoom1
Type: Analog
Instance: 1
Value: 22.8
- Name: FanStatus
Type: Binary
Instance: 2
Value: 1
Пример: экспортированная CSV-строка после обработки
DATE_TIME_STAMP,192.168.1.45,1345,TempRoom1,22.8,FanStatus,1
Практический сценарий: опрашивать датчики системы вентиляции каждые 30 секунд
- Создайте запрос с конечной точкой 192.168.1.255 и экземпляром *. Он должен обнаружить все BACnet-устройства в подсети.
- Добавьте элементы ответа: TempRoom1 (аналоговое, экземпляр 1), CO2Level (аналоговое, экземпляр 3), FanStatus (двоичные данные, экземпляр 2).
- Установите тип запроса "Опрос" и интервал 30000 мс. Настройте таймаут запроса на 5000 мс.
- В Advanced TCP/IP Data Logger настройте сетевое подключение в режим "UDP сервер" на порту 47808 и включите режим отображения данных.
- Настройте экспорт принятых данных по вашему желанию, например в CSV или базу данных.
Рекомендации
- Используйте понятные, краткие имена для элементов ответа. Это упрощает экспорт и дальнейшую обработку. Устанавливайте интервалы опроса достаточно длинными, чтобы очередь успевала завершаться. При длинной очереди и слишком коротких интервалах часть запросов будет задерживаться.
- Выбирайте таймауты с учетом сетевой задержки и скорости отклика устройств. Для медленных устройств увеличьте таймаут.
- Используйте широковещательное обнаружение только в доверенных сетях. Широковещание может вызвать большое число ответов и увеличить время обработки.
- Чтобы добавить или изменить запросы, нажмите Действие и выберите Добавить запрос или Добавить ответ. Переупорядочьте очередь с помощью меню Вверх / Вниз.
- Для тех же операций можно использовать контекстное меню.
- Для большинства развертываний режим UDP Server с IP 0.0.0.0 и портом 47808 будет работать без дополнительной настройки.
Как включить модуль
На рисунке ниже вы можете увидеть, как включить данных модуль в настройках программы на странице "Модули".

Рис.1. Выбор модуля.
Как настроить модуль
На рисунке ниже показан пример настроек модуля. Вы можете ознакомиться с файлом справки по ссылке выше, для получения более подробной информации.

Рис.2. Настройка модуля.
Другие похожие модули:
Все модули | MODBUS RTU, MODBUS TCP, MODBUS ASCII | M-Bus | Bacnet/IP | IEC 62056-21 | DLMS/COSEM | DL-T645-2007 | Kamstrup [KMP протокол]