Modbus RTU · Weinzierl · RS-485 · Счетчики энергии · 9 мин чтения

KNX Modbus Gateway: Weinzierl KNXGW-MODBUS и отображение регистров

Modbus RTU — доминирующий протокол для счетчиков энергии, частотных преобразователей и HVAC-оборудования. Weinzierl KNXGW-MODBUS соединяет шину RS-485 Modbus с KNX TP, отображая значения регистров как групповые адреса KNX — делая данные об энергии и обратную связь от приводов доступными для визуализации KNX, логики и шлюзов BMS без отдельного ПО или ПЛК.

Варианты использования Modbus RTU/TCP в KNX

Modbus RTU по RS-485 — доминирующий полевой протокол для оборудования учета энергии, частотных преобразователей и подсистем HVAC зданий. Эти устройства не имеют нативного интерфейса KNX, однако их данные — активная мощность, суммарная энергия, обратная связь по скорости привода, ток двигателя — требуются в системах визуализации KNX, энергетических панелях и экспорте BMS-шлюзов. Weinzierl KNXGW-MODBUS считывает регистры Modbus-ведомых и записывает значения в групповые адреса KNX с масштабированием по DPT.

Счетчики энергии

  • Carlo Gavazzi EM340 (3-фазный, DIN-рейка)
  • Eastron SDM630 (3-фазный, сертифицирован MID)
  • Schneider iEM3155 и iEM3255
  • Счетчики серий ABB B23 и B24
  • Janitza UMG 96-PA (анализатор мощности)

Частотные преобразователи

  • ABB ACH580 (HVAC VFD, Modbus RTU)
  • Danfoss FC102 (вентилятор и насос HVAC)
  • Mitsubishi FR-F800 (приводы вентиляторов HVAC)
  • Siemens SINAMICS G120 (общего назначения)
  • Yaskawa GA800 (HVAC зданий)

Аппаратное обеспечение Weinzierl KNXGW-MODBUS

Weinzierl KNXGW-MODBUS — это DIN-рейковое устройство, подключаемое непосредственно к шине KNX TP и к сети RS-485 Modbus RTU через винтовые клеммы. На некоторых вариантах доступен дополнительный порт Modbus TCP (Ethernet RJ45), что позволяет подключаться к ведомым устройствам Modbus TCP, таким как сетевые счетчики, без прокладки кабеля RS-485. Устройство настраивается полностью через ETS6 — отдельное программное обеспечение не требуется.

Технические характеристики KNXGW-MODBUS

Interface:
  KNX TP bus connector (bus-powered, 10mA)
  RS-485 Modbus RTU: A, B, GND screw terminals
  Modbus TCP: RJ45 Ethernet (on -TCP variant)

Modbus RTU parameters:
  Baud rate: 9600 / 19200 / 38400 baud
  Parity: None / Even / Odd
  Stop bits: 1 / 2

Capacity:
  Up to 512 Modbus registers mapped to KNX objects
  Up to 32 Modbus slave devices on RS-485 bus
  Slave address range: 1 – 247

Configuration:
  ETS6 only — download product database from weinzierl.de
  No separate software required
  Parameters and group objects configured in ETS6

База данных продуктов ETS6: загрузите прикладную программу KNXGW-MODBUS с weinzierl.de/en/products, импортируйте файл .knxprod в ETS6 через Каталоги → Импорт. Устройство появляется в каталоге продуктов ETS6 и может быть добавлено в структуру здания как любое другое устройство KNX. Все параметры Modbus, определения регистров и назначения групповых объектов KNX выполняются в параметрах ETS6.

Конфигурация ETS6

Конфигурация ETS6 для KNXGW-MODBUS выполняется в два этапа: глобальные параметры шины Modbus, применимые ко всем подключенным ведомым устройствам, затем индивидуальные определения регистров для каждого ведомого устройства. Планируйте карту регистров в электронной таблице перед вводом в ETS6 — адреса регистров различаются в зависимости от производителя счетчика и версии прошивки.

Страницы параметров ETS6

General parameters (applies to all slaves on RS-485):
  Baud rate:   9600 baud (EM340 default), or 19200/38400
  Parity:      Even (EM340 default), None, or Odd
  Stop bits:   1 (standard for Even parity)

Per-slave parameters (one set per connected device):
  Slave address:    1 – 247 (must match device front panel)
  Slave type:       RTU (RS-485) or TCP (Ethernet)
  IP address:       Required for TCP slaves only

Per-register parameters (one entry per mapped register):
  Register address: Decimal or hex, 0-based or 1-based
  Register type:    Holding (0x03) / Input (0x04) / Coil
  Data type:        INT16 / UINT16 / INT32 / UINT32 / FLOAT32
  Byte order:       Big-endian / Little-endian / Byte-swapped
  KNX DPT:          DPT 9.001, DPT 12.001, etc.
  Polling interval: 1s – 3600s

Отображение регистров Carlo Gavazzi EM340

Carlo Gavazzi EM340 — это трехфазный DIN-рейковый счетчик электроэнергии с интерфейсом Modbus RTU RS-485. Он хранит измерения в виде 32-битных чисел с плавающей запятой IEEE 754 в регистрах хранения. Все регистры доступны только для чтения — шлюз считывает счетчик, запись не производится. Порядок байтов — big-endian (старший байт первым).

Регистр (hex)ИзмерениеТипKNX DPTЕдиница
0x0000Напряжение L1FLOAT32 BEDPT 9.020В
0x0002Напряжение L2FLOAT32 BEDPT 9.020В
0x0004Напряжение L3FLOAT32 BEDPT 9.020В
0x0012Ток L1FLOAT32 BEDPT 9.021A
0x0034Суммарная активная мощностьFLOAT32 BEDPT 9.001Вт
0x003EОбщий коэффициент мощностиFLOAT32 BEDPT 9.001
0x0046ЧастотаFLOAT32 BEDPT 9.010Гц
0x0100Импорт активной энергииFLOAT32 BEDPT 12.001кВт·ч
0x0102Экспорт активной энергииFLOAT32 BEDPT 12.001кВт·ч

Адресация регистров: В руководстве к EM340 регистры указаны с адресацией, начинающейся с 1 (например, регистр 1 = 0x0001). ETS6 и большинство Modbus-инструментов используют адресацию, начинающуюся с 0. При вводе в ETS6 вычтите 1 из адреса из руководства. Регистр активной мощности указан как 0x0035 (с 1) = 0x0034 (с 0). Всегда сверяйтесь с конкретной версией прошивки EM340 — карты регистров иногда меняются между версиями прошивки.

Карта регистров Eastron SDM630

Eastron SDM630 — это трехфазный MID-сертифицированный счетчик электроэнергии с Modbus RTU. Его карта регистров отличается от EM340 — не предполагайте совместимость регистров между разными брендами счетчиков. SDM630 использует входные регистры (код функции 0x04) для всех данных измерений, а также хранит значения в виде 32-битных чисел с плавающей запятой IEEE 754 в порядке байтов big-endian.

Регистр (hex)ИзмерениеКод функцииKNX DPT
0x0000Напряжение L1 (В)0x04 ВходнойDPT 9.020
0x0002Напряжение L2 (В)0x04 ВходнойDPT 9.020
0x0004Напряжение L3 (В)0x04 ВходнойDPT 9.020
0x0006Ток L1 (А)0x04 ВходнойDPT 9.021
0x0034Суммарная активная мощность (Вт)0x04 ВходнойDPT 9.001
0x003CОбщий коэффициент мощности0x04 ВходнойDPT 9.001
0x0046Частота (Гц)0x04 ВходнойDPT 9.010
0x0156Импорт активной энергии (кВт·ч)0x04 ВходнойDPT 12.001
0x015AЭкспорт активной энергии (кВт·ч)0x04 ВходнойDPT 12.001

Опрос vs COV: настройка мертвой зоны

Modbus RTU — это протокол с опросом: мастер (KNXGW-MODBUS) инициирует каждое чтение. Ведомые устройства никогда не отправляют данные спонтанно. Шлюз опрашивает каждый настроенный регистр с интервалом, заданным в ETS6. После каждого успешного опроса шлюз сравнивает новое значение с последним отправленным в KNX. Если изменение превышает настроенную мертвую зону, отправляется групповая телеграмма KNX с новым значением.

Стратегия опроса и мертвой зоны

Polling interval recommendations:
  Active power (kW):    5s – 10s  (fast-changing, demand monitoring)
  Energy total (kWh):   60s       (slow-accumulating)
  VFD speed feedback:   2s        (control feedback)
  Temperature sensors:  30s       (slow physical process)

Deadband recommendations (prevents telegram storms):
  Temperature:    ±0.2°C  (avoids 0.1°C floating-point noise)
  Active power:   ±10W    (noise on lightly loaded circuits)
  Energy total:   ±0.01kWh (send every 36Wh increment)
  VFD speed %:    ±0.5%   (avoids resolver dither noise)

Without deadband on a noisy FLOAT32 register:
  Gateway sends a new KNX telegram every poll cycle
  even when the physical value has not changed.
  On a 512-signal configuration at 1s polling,
  this can saturate the KNX TP bus at 9600 baud.

Правила проводки RS-485

Физический уровень RS-485 (EIA-485) — это дифференциальная передача сигнала по витой паре. Правильная проводка обязательна: неправильно подключенная шина RS-485 может работать на коротких расстояниях и низких скоростях, но давать сбои на больших расстояниях или высоких скоростях. Следуйте этим правилам без исключений.

Правила проводки RS-485

Signal polarity (EIA-485 standard):
  A terminal = non-inverting (+)  →  positive when marking (idle)
  B terminal = inverting (-)      →  negative when marking (idle)

Termination resistors:
  120 Ω resistor at BOTH physical ends of the bus only
  Never terminate in the middle of the bus
  Total bus impedance = 60 Ω when both terminations installed
  Most Weinzierl gateways have built-in switchable termination

Cable requirements:
  120 Ω characteristic impedance twisted pair
  Belden 9841 or equivalent (22 AWG, shielded)
  Shield: drain both ends to panel earth (same earth reference)
  Maximum bus length: 1200m at 9600 baud (EIA-485 spec)
  Maximum 32 standard unit loads (UL) without repeater

WAGO polarity note:
  WAGO 750-653 Modbus RTU coupler labels
  A and B REVERSED vs EIA-485 standard.
  A(WAGO) connects to B(EIA-485) and vice versa.
  Always verify with oscilloscope on first connection.

Топология «звезда» — запрещена

RS-485 требует топологии «линейная шина» (daisy-chain). Топология «звезда», когда несколько ответвлений отходят от центральной точки, вызывает отражения и нарушения целостности сигнала. Даже короткие ответвления (30 см) вызывают проблемы на скорости 19200 бод. Кабель прокладывается от шлюза к устройству 1, затем от устройства 1 к устройству 2 и так далее. Никаких T-образных соединений.

Опорный заземляющий проводник

RS-485 не требует заземляющего проводника для передачи сигнала, но разность напряжений заземления между ведущим и ведомым устройством, выходящая за пределы ±7 В относительно синфазного диапазона, может исказить сигналы или повредить приёмопередатчики. Включайте заземляющий проводник в кабель RS-485 для установок, охватывающих несколько распределительных щитов.

Проектирование многоприборной шины RS-485

Один KNXGW-MODBUS может обслуживать до 32 ведомых устройств Modbus RTU на одной шине RS-485. Систематическое проведение пусконаладочных работ на многоприборной шине предотвращает конфликты адресов и ошибки подключения, которые сложно диагностировать после подключения всех устройств.

Последовательность пусконаладки многоприборной шины

Pre-connection preparation:
  1. Assign unique slave addresses 1–247 to each device
     via front panel programming (DIP switches or menu)
     BEFORE connecting to shared bus
  2. Verify each device address with a Modbus RTU tester
     connected directly to the individual device
  3. Document address assignments in panel schedule

Connection sequence:
  1. Connect gateway to device 1 only (install 120Ω at both ends)
  2. Verify gateway polls device 1 successfully in ETS6 diagnostics
  3. Add device 2 (remove termination from device 1 if not end of bus)
  4. Verify both devices poll successfully
  5. Repeat for each additional device

Bus capacity (EIA-485, 9600 baud):
  Maximum 32 unit loads (UL) — one UL per standard transceiver
  Many modern meters present 1/4 UL → up to 128 devices possible
  Verify UL rating in device datasheet before exceeding 32 devices
  Use RS-485 repeater (e.g. Weidmuller RS-485 REP) if needed

Бюджет времени опроса: с 32 устройствами и 512 регистрами каждый цикл опроса занимает примерно 32 × (адресный кадр + время ответа + межкадровый интервал). При скорости 9600 бод и межкадровой задержке 10 мс чтение 16 регистров на устройство занимает примерно 50 мс на устройство, что даёт общее время цикла 1,6 секунды для 32 устройств. Установите интервал опроса ETS6 минимум 2 секунды для сумм энергии, чтобы каждое устройство было опрошено в каждом цикле. Увеличьте скорость до 19200 или 38400 бод, если время цикла слишком велико.

Нужен шлюз KNX Modbus, интегрированный в ваш щит мониторинга энергопотребления?

Мы проектируем щиты с предварительно настроенным Weinzierl KNXGW-MODBUS — карты регистров проверены для ваших конкретных счётчиков и приводов, шина RS-485 протестирована, а групповые объекты ETS6 связаны с визуализацией KNX до отгрузки.

Запросить расчёт →
Загрузка ...
Наверх