Шлюз Modbus RTU
Основная задача устройства — сделать шину RS-485 доступной по сети. Шлюз принимает Modbus TCP-запросы по Ethernet или Wi-Fi, преобразует их в Modbus RTU и передаёт в линию, а ответ устройства преобразует обратно в Modbus TCP и возвращает клиенту.
Если по RS-485 идёт не Modbus, а другой протокол, порт можно перевести в прозрачный режим — тогда пакеты передаются «как есть».
- Стандартный Modbus TCP — работает с любыми ПЛК, SCADA и ПО, которые умеют Modbus TCP: не нужны драйверы и промежуточные утилиты
- Два независимых канала — у каждого порта RS-485 свой TCP-порт (по умолчанию 502 и 503), свой режим и свои настройки линии
- До 8 клиентов на порт — к каждому порту одновременно может обращаться несколько систем(только в Modbus TCP-режиме)
Сниффер и эмулятор мастера
Встроенный анализатор шины: в режиме сниффера WB-MGE v.3 пассивно слушает линию RS-485 и показывает в веб-интерфейсе весь обмен в реальном времени — с разбором пакетов, а не «сырыми» байтами.
Пусконаладка и поиск проблем на объекте больше не требуют отдельного анализатора шины и ноутбука с переходником, достаточно телефона и WB-MGE v.3.
- Расшифровка Modbus и Быстрого Modbus — для каждого пакета видно отправителя (мастер или ведомое устройство), адрес устройства, код функции, данные и результат проверки CRC
- Фильтры и статистика — отбор по Slave ID и коду функции, счётчики пакетов и ошибок: сразу видно, кто молчит и где сыплются CRC
- Эмулятор мастера — можно вручную отправить запрос на чтение или запись и посмотреть ответ устройства; CRC посчитается автоматически
- Экспорт в CSV — захват можно выгрузить, разобрать позже или приложить к обращению в техподдержку
Кеширующий мультимастер
Классическое ограничение RS-485 — на линии может быть только один мастер. Если шину уже опрашивает контроллер, второй мастер сломает обмен.
WB-MGE v.3 снимает это ограничение: он пассивно слушает чужой обмен, запоминает значения регистров и отдаёт их через отдельный Modbus TCP-сервер — не отправляя в линию ни одного пакета.
- Неинвазивное подключение — можно добавить SCADA, аналитику или второй контроллер к уже работающей системе, ничего в ней не меняя
- Нулевая нагрузка на шину — данные отдаются из кеша, а не повторным опросом, поэтому темп опроса основного мастера не страдает
- Контроль актуальности — для значений задаётся таймаут: если данные устарели, клиент получит ошибку, а не «протухшее» число
- Карта регистров — в веб-интерфейсе видно, какие устройства и регистры обнаружены на шине, и статистику по ним; карту можно выгрузить в CSV или JSON
Повторитель линии RS-485
Два порта RS-485 можно связать между собой: шлюз прозрачно ретранслирует пакеты из RS485-1 в RS485-2 и обратно, работая как повторитель линии.
Ретрансляция работает побайтно и не зависит от протокола, а в веб-интерфейсе видна статистика пересылки в реальном времени.
- Удлинение шины — сегмент за пределами допустимой длины подключается через повторитель, а не тянется одной линией
- Ответвление — от магистрали можно отвести отдельную ветку со своими устройствами, не нарушая топологию
- Помехозащищённость — каждый сегмент получает свою «чистую» линию со своими терминаторами, и помехи из одного сегмента не проникают в другой
Ethernet и Wi-Fi
Два сетевых интерфейса:
Если устройство с которого вы подключаетесь к шлюзу поддерживает mDNS, то модуль будет доступен по адресу wb-mge-XXXXXX.local на любом сетевом интерфейсе.
Имя хоста, режим Wi-Fi, а также сетевые настройки можно менять. Значения по умолчанию смотрите в документации.
- Wi-Fi — по умолчанию активен и на нём поднята точка доступа с паролем. Доступны режимы: «точка доступа», «клиент» и «отключено»
- Ethernet — настроен на получение IP-адреса по DHCP
2 x RS-485
Два независимых порта RS-485, представленных каналами с режимами:
Для каждого порта RS-485 можно указать свой TCP-порт, режим и опрашивать потом его по одному из сетевых интерфейсов.
- Modbus TCP — пакеты Modbus RTU преобразуются в пакеты Modbus TCP и отдаются через сетевые интерфейсы
- Прозрачный — пакеты отдаются через сетевые интерфейсы «как есть» без преобразования. В этом режиме можно подключать как обычные Modbus RTU устройства (Modbus RTU Over TCP), так и устройства с произвольным протоколом поверх шины RS-485
Терминаторы и failsafe bias на портах RS-485
На каждом порту RS-485 есть программно отключаемые:
Это упрощает схему подключения и даёт гибкость при проектировании и вводе в эксплуатацию.
- терминатор — 120 Ом, подключенный между линиями A и B. Если модуль стоит в конце шины — нужно включить, если в середине — выключить
- failsafe bias — резисторы по 560 Ом, которые растягивают шину, устраняя неопределённость при выключенных передатчиках устройств. Если модуль работает мастером — надо включить, в остальных случаях выключить
Отключение передачи (TX)
Для любого порта RS-485 передатчик можно отключить программно — шлюз физически переходит в режим «только приём» и не может отправить в линию ни одного бита.
Это даёт гарантированно безопасное подключение к работающей системе: даже если в настройках ошибка или ПО поведёт себя неожиданно, шлюз не вмешается в чужой обмен и не «положит» шину на действующем объекте.
Режим особенно полезен вместе со сниффером и кеширующим мультимастером — когда надо снять данные с чужой линии, ничего в ней не потревожив.
I/O Bus (WBIO)
I/O Bus — это интерфейс для подключения боковых модулей WBIO, предназначенных для контроллера Wiren Board.
Внутри шлюза интерфейс I/O Bus представлен Modbus-устройством на порту RS485-2, которое имеет адрес напечатанный на наклейке. Это позволяет опрашивать модули WBIO через RS-485 по протоколу Modbus RTU или через сетевые интерфейсы по протоколу ModbusTCP/Modbus RTU Over TCP.
Если поддержка WBIO не нужна и вы хотите использовать порт RS485-2 для других протоколов, можете отключить интерфейс I/O Bus в настройках.
Питание модуля и подключенных устройств
В базовой комплектации модуль питается от напряжения 9…28 В постоянного тока.
Опционально можно установить модуль PoE с поддержкой стандартов:
Модуль может питать подключенные к нему устройства, управляется программно. Если модуль подключен к блоку питанию, то максимальный ток 2.5А, напряжение равно напряжению БП, а если модуль работает от POE, то 24 В постоянного тока, а ток ограничен 500 мА.
Всё это позволяет создавать компактные инсталляции без лишних проходных клемм, а при питании от PoE и без блока питания.
- 802.3af, 802.3at — активное PoE с напряжением до 48 В
- Passive Poe — передача напряжения до 24 В по четырём парам
Индикация
На передней панели модуля установлены индикаторы:
Они позволяют оценить состояние модуля без подключения к веб-интерфейсу.
- статуса модуля
- активности Ethernet и Wi-Fi
- состояния выхода Vout для питания подключённых устройств
- обмена на порту RS-485
Веб-интерфейс для настройки
Современный веб-интерфейс хорошо адаптируется под любой размер экрана и позволяет настраивать параметры сетевых интерфейсов, портов, выбора режима и пр. Есть ограничение доступа по логину и паролю.
Если WB-MGE v.3 подключён к одному из сетевых интерфейсов контроллера, а контроллер в Wiren Board Cloud — можно настроить проксирование веб-интерфейса модуля и получить доступ к нему через облако. Подробности в документации.
Поддержка Быстрого Modbus
Все устройства Wiren Board в дополнение к стандартному Modbus RTU могут работать с его расширением Быстрый Modbus ⚡, которое добавляет новые возможности:
WB-MGE v.3 поддерживает Быстрый Modbus во всех режимах работы: прозрачный шлюз и Modbus TCP.
- мгновенный опрос состояний входов и измеренных значений через события
- быстрый поиск подключённых к контроллеру устройств
- разрешение коллизий адресов на шине
Сброс настроек и режим Factory
Если вы забыли настройки модуля — их всегда можно сбросить на заводские с помощью кнопки Config. Это же можно сделать из веб-интерфейса.
Для сложных случаев, когда прошивка по каким-то причинам не загружается, доступен режим Factory в котором вы гарантированно сможете залить последнюю стабильную версию прошивки.
Обновление прошивки
Иногда мы можем выпускать новые прошивки для устройства, чтобы исправить обнаруженные проблемы или добавить новые функции.
Пользователи могут залить новую версию прямо через веб-интерфейс без программатора.
Открытая прошивка — исходники на GitHub
Заводская прошивка WB-MGE v.3 — полностью открытая (лицензия MIT-WB), исходный код опубликован на GitHub.
Открытый код — это ваша страховка и независимость:
Всё для доработки уже внутри: разъём USB-C и USB-UART мост, поэтому для заливки своей сборки нужен только компьютер и кабель USB-C. В документации есть полное описание GPIO.
И в любой момент вы возвращаете заводскую прошивку и пользуетесь устройством как обычным шлюзом — гарантия при этом сохраняется.
- Прозрачность и доверие — прошивку можно проверить и провести аудит безопасности: вы видите, что именно делает шлюз, и как именно написан код. Например, у нас более 1600 автотестов — качество кода можем подтвердить документально
- Никакого вендор-лока — нужна особая логика, свой протокол или интеграция? Вы дорабатываете прошивку сами, а не ждёте её от производителя и не привязаны к его планам
- Развитие под ваши задачи — легко добавить свой функционал: поддержку MQTT, нестандартных протоколов или собственной бизнес-логики