Light Stream Bridge 2 - Руководство пользователя
Черновик на проверку. Статья собрана по технической документации производителя и переписана под нашу линейку. Не публиковать за пределами рабочей вики до вычитки. Иллюстрации с пометкой «черновик» содержат чужой корпус — их нужно перерисовать.
Требует решения до выпуска. У этого устройства веб-интерфейс встроен в саму прошивку, и в нём стоит логотип производителя и его модель. В отличие от остальных модулей линейки, здесь чужой бренд увидит наш заказчик, а не только читатель документации. Прошивка открытая, так что перебрендирование технически возможно — но это отдельная задача. До её решения все экраны в статье помечены как требующие пересъёмки.
Отдельный вопрос — боковые модули ввода-вывода. Устройство их поддерживает, но в нашей линейке таких модулей нет. Раздел оставлен; решите, нужен ли он в нашей документации.
Многопротокольный шлюз RS-485 ⇄ Ethernet и Wi-Fi. Артикул LS-MLTG.
- Два независимых порта RS-485, режим задаётся для каждого
- Ethernet и Wi-Fi, Wi-Fi полностью отключаем
- Режимы «Modbus TCP», «Прозрачный мост» и «Пассивный»
- Сниффер Modbus с декодированием прямо в веб-интерфейсе
- Кеширующий мультимастер — снимает ограничение «один мастер на линию»
- Режим повторителя между портами RS-485
- Электронное управление терминаторами и failsafe bias
- Опциональное питание PoE, два выхода питания для периферии
Назначение
Шлюз подключает устройства с интерфейсом RS-485 к серверу автоматизации через Ethernet или Wi-Fi. Сервером может быть любой контроллер или компьютер с поддержкой нужных протоколов.
Пара таких шлюзов образует мост через сеть — это выручает, когда сторонний контроллер не имеет сетевых интерфейсов, а опросить удалённый сегмент RS-485 нужно.
Для каждого порта отдельно задаётся режим работы. Поверх любого режима независимо включаются два пассивных инструмента: сниффер трафика и кеширующий мультимастер. Оба порта вместе могут работать повторителем.
Устройство поставляется прошитым и готовым к работе шлюзом. Прошивка с открытым исходным кодом.
Технические характеристики
| Параметр | Значение |
|---|---|
| Питание | Питание |
| Напряжение питания интерфейсной части | 9 В — 28 В постоянного тока |
| Потребляемая мощность при 24 В | 1 Вт |
| Максимальный ток с Vout | 2.5 A |
| Максимальный ток с Vout при питании от PoE (долговременный) | 500 мА |
| Входы питания | 1 вход Vin; 1 вход PoE 802.3af, 802.3at на Ethernet с помощью встраиваемого модуля |
| Приоритет входов питания | от входа с бо́льшим напряжением |
| Выход для питания внешних устройств | Выход для питания внешних устройств |
| Vout | На клеммы подаётся напряжение питания модуля, с защитой по току больше 2.5 А, программным отключением и сохранением состояния при перезагрузке. При питании от PoE на Vout будет подано стабилизированное напряжение 24 В. При питании от PoE ток снимаемый с Vout меньше. |
| Клеммники и сечение проводов | Клеммники и сечение проводов |
| Рекомендуемое сечение провода с НШВИ | 0.35 – 1 мм2 — одинарные, 0.35 – 0.5 мм2 – сдвоенное обжатие |
| Длина стандартной втулки НШВИ | 8 мм |
| Момент затяжки винтов | 0.2 Н∙м |
| Коммуникация | Коммуникация |
| Протокол обмена данными | Через клеммы RS-485: Modbus TCP; прозрачный шлюз для любых протоколов поверх RS-485 (например, Modbus RTU over TCP). Боковой разъём I/O: WBIO. |
| Интерфейсы | 2x RS-485 I2C для подключения боковых модулей WBIO Ethernet 10/100 Wi-Fi 2.4 ГГц |
| Параметры интерфейса RS-485 | Задаются программно, по умолчанию: скорость 9600 бит/с; данные — 8 бит; четность N; стоп-биты 2 |
| Готовность к работе после подачи питания | 8 c |
| Условия эксплуатации | Условия эксплуатации |
| Температура воздуха | От −40 до +70 °C |
| Относительная влажность | До 95 %, без конденсации влаги |
| Климатическое исполнение по ГОСТ 15150-69 | O2.1* |
| Гарантийный срок | 2 года |
| Срок службы | 5 лет |
| Габариты | Габариты |
| Ширина, DIN-юнитов | 2 |
| Габаритные размеры (Д x Ш x В) | 36 x 90 x 58 мм |
| Масса (с коробкой) | 105 г |
Общий принцип работы
Аппаратная часть
Модуль построен на чипе ESP32. Он реализует функции шлюза RS-485, управляет периферией и индикаторами и обслуживает встроенный веб-интерфейс и API настройки.
Сетевые интерфейсы и работа с пакетами
В модуле два сетевых интерфейса: Ethernet и Wi-Fi, причём Wi-Fi работает точкой доступа или клиентом.
Прошивка принимает пакеты по сети и отправляет их в один из портов RS-485, а ответы устройств транслирует обратно. Выбор порта определяется тем, на какой TCP-порт пришёл пакет: по умолчанию 502 — это RS-485-1, 503 — RS-485-2.
Помимо сквозной передачи, поверх любого порта включаются два независимых инструмента, работающих с трафиком пассивно:
- сниффер — захватывает и декодирует кадры Modbus в обе стороны и показывает их в реальном времени; заменяет внешний анализатор при диагностике;
- кеширующий мультимастер — собирает из трафика последние значения регистров и отдаёт их по отдельному Modbus TCP-серверу, без повторного опроса шины.
Питание
Модуль питается напрямую от клеммы Vin либо, опционально, по PoE стандартов IEEE 802.3af и 802.3at. Для PoE внутрь устройства устанавливается отдельный модуль со встроенным преобразователем, который выдаёт 24 В на внутреннюю шину питания.
Осторожно с пассивным PoE. Модуль пассивного PoE допускается, но только при напряжении питания не выше 24 В постоянного тока. Превышение выведет шлюз из строя.
У шлюза два выхода питания Vout для периферийных устройств. Управление групповое: оба канала включаются и отключаются одновременно. Суммарная нагрузка на оба выхода не должна превышать значение из таблицы характеристик.
Индикация

На лицевой панели под наклейкой расположены индикаторы состояния модуля и его выходов: статус, состояние выхода питания, сетевой обмен и обмен по каждому порту RS-485.
Режимы работы
Режим «Modbus TCP»

Модуль принимает запросы Modbus TCP через сетевые интерфейсы, преобразует их в Modbus RTU и передаёт в порт RS-485. Ответ преобразуется обратно и возвращается клиенту, отправившему запрос.
В этом режиме модуль работает только как сервер. К каждому порту одновременно подключается до восьми TCP-клиентов.
Режим «Прозрачный мост»

Модуль принимает по сети TCP-пакеты с данными любого протокола — например, Modbus RTU over TCP — и передаёт их байт в байт в порт RS-485. Ответ так же без изменений уходит обратно клиенту.
В этом режиме задаётся роль: сервер — к нему подключается контроллер; клиент — модуль сам подключается к указанному адресу.
Режим нужен, когда протокол на шине не Modbus либо когда важно не вмешиваться в структуру кадров.
Сниффер

Сниффер захватывает трафик на выбранном порту в обе стороны, декодирует кадры Modbus и показывает их в реальном времени.
Для каждого кадра выводятся отправитель (мастер или ведомое устройство), адрес устройства, код функции, данные в HEX, длина и результат проверки CRC. Есть фильтры по адресу и коду функции, счётчики пакетов и ошибок CRC.
Отдельно полезна возможность сформировать и отправить в шину произвольный запрос на чтение или запись — CRC считается автоматически. Это позволяет проверить устройство прямо с места, не подключая ноутбук с утилитой.
Кеширующий мультимастер

Шлюз пассивно отслеживает обмен на шине, запоминает последние значения регистров всех устройств и отдаёт их по отдельному Modbus TCP-серверу — по умолчанию на порту 504.
Это снимает ограничение «один мастер на шину». Реальные мастера продолжают опрос, а дополнительные TCP-клиенты читают данные из кэша, не создавая на линии конкурирующих запросов.
Настраивается таймаут значения — за какое время значение в кэше считается устаревшим. На странице видна автоматически собранная карта «устройство → тип регистра → регистр» и статистика: число устройств, обработанных пакетов, возраст карты и расход памяти.

Повторитель между портами

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

Повторитель из двух модулей через сеть

Чтобы объединить два сегмента RS-485 через локальную сеть или VPN, на одном модуле выбирается прозрачный режим с ролью сервера, на другом — прозрачный режим с ролью клиента и адресом сервера.
Схема имеет ограничения и рекомендуется только когда нет возможности подключить шлюз к контроллеру напрямую:
- устройства с расширением «Быстрый Modbus» могут находиться только в одном из сегментов шины;
- нужно увеличить задержку перед отправкой очередного запроса — для скорости 9600 бод не менее 50 мс.
Быстрый Modbus
Особенность расширения «Быстрый Modbus» — пакеты арбитража. В прозрачном режиме шлюз пропускает их как есть, в режиме Modbus TCP обрабатывает отдельно в прошивке. В итоге расширение работает в обоих режимах.
Карта регистров самого шлюза
Шлюз отвечает по Modbus TCP на запросы к собственному адресу Unit ID 255 — этот адрес зарезервирован за ним. Работает в режимах «Modbus TCP» и «Cache TCP» независимо от состояния кэша; в режиме Modbus TCP такой запрос не пересылается в RS-485.
Адресное пространство одно: функции чтения holding- и input-регистров обслуживают общую карту, и любой адрес отдаёт одно и то же значение на обеих функциях.
Монтаж
Модуль ставится на стандартную DIN-рейку шириной 35 мм.
Шину RS-485 собирайте линией, витой парой, с терминаторами на концах. Терминаторы и failsafe bias в этом модуле управляются электронно — отдельных перемычек ставить не нужно.
Если устройства на шине питаются от разных источников, соедините их клеммы GND.

Отключение передачи

Передачу по порту RS-485 можно отключить программно, оставив только приём. Это нужно, когда шлюз работает исключительно как наблюдатель — например, в режиме сниффера на действующей шине, где лишний передатчик недопустим.
Настройка
Модуль настраивается через встроенный веб-интерфейс. Доступ к нему возможен через точку доступа Wi-Fi модуля или по Ethernet.
Параметры порта
Для каждого порта RS-485 задаются скорость, чётность, количество стоп-битов и биты данных, а также включаются терминатор и failsafe bias.
Failsafe bias — это подтягивающие резисторы, устраняющие неопределённость на линиях A и B при выключенных передатчиках устройств. Включайте, если модуль работает мастером; в остальных случаях выключайте.
Терминатор — резистор 120 Ом между линиями A и B. Включайте, если модуль стоит на конце шины; если в середине — выключайте.
Сохранение и загрузка конфигурации
Конфигурацию модуля можно сохранить в файл и загрузить обратно. Это экономит время при вводе в эксплуатацию нескольких одинаковых шлюзов.
Полное отключение Wi-Fi
Wi-Fi отключается полностью, а не только программно скрывается. Это важно для объектов, где беспроводные коммуникации запрещены регламентом.
Боковые модули ввода-вывода

Устройство поддерживает подключение боковых модулей ввода-вывода. Внутри для этого есть отдельный узел, который представляет все боковые модули одним Modbus-устройством на порту RS-485-2 с адресом 247 и параметрами связи 9600 8N2.
Поддержку можно выключить — это освобождает занятый Modbus-адрес и требуется, если на порту RS-485-2 используется произвольный протокол, конфликтующий с Modbus RTU.

Восстановление и обновление
Factory-режим
В модуле предусмотрен factory-режим для восстановления работы при проблемах с основной прошивкой. Это страховка: неудачное обновление не превращает шлюз в кирпич.
Отладочный порт
На корпусе есть отладочный порт USB-C с консолью — через него доступна диагностика и загрузка прошивки.
Обновление прошивки
Прошивка обновляется через веб-интерфейс модуля.
Сброс на заводские настройки
Сброс выполняется из веб-интерфейса либо кнопкой Config на корпусе.
Карта регистров
Карта регистров, связанных с боковыми модулями
| RO / RW | Read only / Read/Write |
| Выделено жирным | Значение регистра по умолчанию |
| xN | Множитель, на который надо умножить число из регистра, чтобы получить значение в единицах измерения. Не указан — считать равным 1 |
| ⚡ | Регистр поддерживает отправку данных с помощью событий Быстрого Modbus. |
| FW | Версия прошивки устройства, с которой появился регистр. Пусто — регистр был всегда. |
| Error: | Значение при ошибке |
| Серый цвет ячейки | Служебный регистр: назначение, формат и содержимое может измениться в новых версиях прошивки |
Карта регистров, связанных с боковыми модулями
| Адрес | Адрес | Параметры регистра | Параметры регистра | Параметры регистра | Канал | Описание | Значения | FW |
|---|---|---|---|---|---|---|---|---|
| Dec | Hex | Тип | Доступ | Формат | Канал | Описание | Значения | FW |
| Регистры модулей DIO | Регистры модулей DIO | Регистры модулей DIO | Регистры модулей DIO | Регистры модулей DIO | Регистры модулей DIO | Регистры модулей DIO | Регистры модулей DIO | Регистры модулей DIO |
| 990 | 0x03DE | Input | RO | u16 | DO 1 | Статус модулей DI/DO | 0 - не подключен, 1 - 8 канальный, 2 - 16 канальный | |
| 991 | 0x03DF | Input | RO | u16 | DO 2 | Статус модулей DI/DO | 0 - не подключен, 1 - 8 канальный, 2 - 16 канальный | |
| 992 | 0x03E0 | Input | RO | u16 | DO 3 | Статус модулей DI/DO | 0 - не подключен, 1 - 8 канальный, 2 - 16 канальный | |
| 993 | 0x03E1 | Input | RO | u16 | DI 4 | Статус модулей DI/DO | 0 - не подключен, 1 - 8 канальный, 2 - 16 канальный | |
| 994 | 0x03E2 | Input | RO | u16 | DO 4 | Статус модулей DI/DO | 0 - не подключен, 1 - 8 канальный, 2 - 16 канальный | |
| 995 | 0x03E3 | Input | RO | u16 | DI 3 | Статус модулей DI/DO | 0 - не подключен, 1 - 8 канальный, 2 - 16 канальный | |
| 996 | 0x03E4 | Input | RO | u16 | DI 2 | Статус модулей DI/DO | 0 - не подключен, 1 - 8 канальный, 2 - 16 канальный | |
| 997 | 0x03E5 | Input | RO | u16 | DI 1 | Статус модулей DI/DO | 0 - не подключен, 1 - 8 канальный, 2 - 16 канальный | |
| 1000 - 1015 | 0x03E8 - 0x03F7 | Coil | RO | bool | DI 1 | Логические состояния входов модуля DI | 0 — разомкнут,1 — замкнут. | |
| 2000 - 2015 | 0x07D0 - 0x07DF | Coil | RO | bool | DI 2 | Логические состояния входов модуля DI | 0 — разомкнут,1 — замкнут. | |
| 3000 - 3015 | 0x0BB8 - 0x0BC7 | Coil | RO | bool | DI 3 | Логические состояния входов модуля DI | 0 — разомкнут,1 — замкнут. | |
| 4000 - 4015 | 0x0FA0 - 0x0FAF | Coil | RO | bool | DI 4 | Логические состояния входов модуля DI | 0 — разомкнут,1 — замкнут. | |
| 1500 - 1515 | 0x05DC - 0x05EB | Coil | RW | bool | DO 1 | Логические состояния выходов модуля DO | 0 — разомкнут,1 — замкнут. | |
| 2500 - 2515 | 0x09C4 - 0x09D3 | Coil | RW | bool | DO 2 | Логические состояния выходов модуля DO | 0 — разомкнут,1 — замкнут. | |
| 3500 - 3515 | 0x0DAC - 0x0DBB | Coil | RW | bool | DO 3 | Логические состояния выходов модуля DO | 0 — разомкнут,1 — замкнут. | |
| 4500 - 4515 | 0x1194 - 0x11A3 | Coil | RW | bool | DO 4 | Логические состояния выходов модуля DO | 0 — разомкнут,1 — замкнут. | |
| 1250 - 1265 | 0x04E2 - 0x04F1 | Holding | RO | u16 | DI 1 | Счетчик изменений состояния (инкремент на фронт и срез) на входах модуля DI | 0 ... 65535 | |
| 2250 - 2265 | 0x08CA - 0x08D9 | Holding | RO | u16 | DI 2 | Счетчик изменений состояния (инкремент на фронт и срез) на входах модуля DI | 0 ... 65535 | |
| 3250 - 3265 | 0x0CB2 - 0x0CC1 | Holding | RO | u16 | DI 3 | Счетчик изменений состояния (инкремент на фронт и срез) на входах модуля DI | 0 ... 65535 | |
| 4250 - 4265 | 0x109A - 0x10A9 | Holding | RO | u16 | DI 4 | Счетчик изменений состояния (инкремент на фронт и срез) на входах модуля DI | 0 ... 65535 | |
| 11009 | 0x2B01 | Input | RO | u16 | DI 1 | Регистр битовых флагов состояния входов модуля | 1.6.0 | |
| 12009 | 0x2EE9 | Input | RO | u16 | DI 2 | Регистр битовых флагов состояния входов модуля | 1.6.0 | |
| 13009 | 0x32D1 | Input | RO | u16 | DI 3 | Регистр битовых флагов состояния входов модуля | 1.6.0 | |
| 14009 | 0x36B9 | Input | RO | u16 | DI 4 | Регистр битовых флагов состояния входов модуля | 1.6.0 | |
| 11509 | 0x2CF5 | Holding | RW | u16 | DO 1 | Регистр битовых флагов состояния выходов модуля | 1.6.0 | |
| 12509 | 0x30DD | Holding | RW | u16 | DO 2 | Регистр битовых флагов состояния выходов модуля | 1.6.0 | |
| 13509 | 0x34C5 | Holding | RW | u16 | DO 3 | Регистр битовых флагов состояния выходов модуля | 1.6.0 | |
| 14509 | 0x38AD | Holding | RW | u16 | DO 4 | Регистр битовых флагов состояния выходов модуля | 1.6.0 | |
| 10999 | 0x2AF7 | Holding | RW | u16 | DI 1 | Команда записи конфигурации модуля входов | (0) 1 и выше - выполнить запись конфигурации | |
| 11999 | 0x2EDF | Holding | RW | u16 | DI 2 | Команда записи конфигурации модуля входов | (0) 1 и выше - выполнить запись конфигурации | |
| 12999 | 0x32C7 | Holding | RW | u16 | DI 3 | Команда записи конфигурации модуля входов | (0) 1 и выше - выполнить запись конфигурации | |
| 13999 | 0x36AF | Holding | RW | u16 | DI 4 | Команда записи конфигурации модуля входов | (0) 1 и выше - выполнить запись конфигурации | |
| 11000 - 11005 | 0x2AF8 - 0x2AFD | Holding | RW | u16 | DI 1 | Регистры конфигурации модуля входов | ||
| 12000 - 12005 | 0x2EE0 - 0x2EE5 | Holding | RW | u16 | DI 2 | Регистры конфигурации модуля входов | ||
| 13000 - 13005 | 0x32C8 - 0x32CD | Holding | RW | u16 | DI 3 | Регистры конфигурации модуля входов | ||
| 14000 - 14005 | 0x36B0 - 0x36B5 | Holding | RW | u16 | DI 4 | Регистры конфигурации модуля входов | ||
| 11499 | 0x2CEB | Holding | RW | u16 | DO 1 | Команда записи конфигурации модуля выходов | (0) 1 и выше - выполнить запись конфигурации | |
| 12499 | 0x30D3 | Holding | RW | u16 | DO 2 | Команда записи конфигурации модуля выходов | (0) 1 и выше - выполнить запись конфигурации | |
| 13499 | 0x34BB | Holding | RW | u16 | DO 3 | Команда записи конфигурации модуля выходов | (0) 1 и выше - выполнить запись конфигурации | |
| 14499 | 0x38A3 | Holding | RW | u16 | DO 4 | Команда записи конфигурации модуля выходов | (0) 1 и выше - выполнить запись конфигурации | |
| 11500 - 11505 | 0x2CEC - 0x2CF1 | Holding | RW | u16 | DO 1 | Регистры конфигурации модуля выходов | ||
| 12500 - 12505 | 0x30D4 - 0x30D9 | Holding | RW | u16 | DO 2 | Регистры конфигурации модуля выходов | ||
| 13500 - 13505 | 0x32C8 - 0x32CD | Holding | RW | u16 | DO 3 | Регистры конфигурации модуля выходов | ||
| 14500 - 14505 | 0x38A4 - 0x38A9 | Holding | RW | u16 | DO 4 | Регистры конфигурации модуля выходов | ||
| Регистры модулей AI | Регистры модулей AI | Регистры модулей AI | Регистры модулей AI | Регистры модулей AI | Регистры модулей AI | Регистры модулей AI | Регистры модулей AI | Регистры модулей AI |
| 19990 | 0x4E16 | Coil | RO | u8 | AI 1 | Статус модуля AI | 0 - не подключен, 1 - подключен | |
| 19991 | 0x4E17 | Coil | RO | u8 | AI 2 | Статус модуля AI | 0 - не подключен, 1 - подключен | |
| 19992 | 0x4E18 | Coil | RO | u8 | AI 3 | Статус модуля AI | 0 - не подключен, 1 - подключен | |
| 19993 | 0x4E19 | Coil | RO | u8 | AI 4 | Статус модуля AI | 0 - не подключен, 1 - подключен | |
| 20000 - 20017 | 0x4E20 - 0x4E31 | Input | RO | s16 | AI 1 | Регистры значения напряжения ADC модуля | x0.01, В | |
| 21000 - 21017 | 0x5208 - 0x5219 | Input | RO | s16 | AI 2 | Регистры значения напряжения ADC модуля | x0.01, В | |
| 22000 - 22017 | 0x55F0 - 0x5601 | Input | RO | s16 | AI 3 | Регистры значения напряжения ADC модуля | x0.01, В | |
| 23000 - 23017 | 0x59D8 - 0x59E9 | Input | RO | s16 | AI 4 | Регистры значения напряжения ADC модуля | x0.01, В | |
| 20500 - 20517 | 0x5014 - 0x5025 | Holding | RW | u16 | AI 1 | Регистры конфигурации ADC модуля | 0 - 7 | |
| 21500 - 21517 | 0x53FC - 0x540D | Holding | RW | u16 | AI 2 | Регистры конфигурации ADC модуля | 0 - 7 | |
| 22500 - 22517 | 0x57E4 - 0x57F5 | Holding | RW | u16 | AI 3 | Регистры конфигурации ADC модуля | 0 - 7 | |
| 23500 - 23517 | 0x5BCC - 0x5BDD | Holding | RW | u16 | AI 4 | Регистры конфигурации ADC модуля | 0 - 7 |
Карта регистров конфигурации дискретных боковых модулей
| Register/ Address | Number of ports | Device type | Recomended value | Description |
|---|---|---|---|---|
| xxx00 | 8 pin | INPUT | 0xFF | IODIR: pin direction |
| xxx00 | 8 pin | OUTPUT | 0x00 | IODIR: pin direction |
| xxx00 | 16 pin | INPUT | 0xFFFF | IODIR: pin direction |
| xxx00 | 16 pin | OUTPUT | 0x0000 | IODIR: pin direction |
| xxx01 | 8 pin | INPUT | 0x00 | IPOL: pin polarity |
| xxx01 | 8 pin | OUTPUT | 0x00 | IPOL: pin polarity |
| xxx01 | 16 pin | INPUT | 0x0000 | IPOL: pin polarity |
| xxx01 | 16 pin | OUTPUT | 0x0000 | IPOL: pin polarity |
| xxx02 | 8 pin | INPUT | 0xFF | GPINTEN: interrupt on change |
| xxx02 | 8 pin | OUTPUT | N/A | GPINTEN: interrupt on change |
| xxx02 | 16 pin | INPUT | 0xFFFF | GPINTEN: interrupt on change |
| xxx02 | 16 pin | OUTPUT | N/A | GPINTEN: interrupt on change |
| xxx03 | 8 pin | INPUT | 0x00 | DEFVAL: default value register |
| xxx03 | 8 pin | OUTPUT | N/A | DEFVAL: default value register |
| xxx03 | 16 pin | INPUT | 0x0000 | DEFVAL: default value register |
| xxx03 | 16 pin | OUTPUT | N/A | DEFVAL: default value register |
| xxx04 | 8 pin | INPUT | 0x00 | INTCON: interrupt on change |
| xxx04 | 8 pin | OUTPUT | N/A | INTCON: interrupt on change |
| xxx04 | 16 pin | INPUT | 0x0000 | INTCON: interrupt on change |
| xxx04 | 16 pin | OUTPUT | N/A | INTCON: interrupt on change |
| xxx05 | 8 pin | INPUT | 0x4444 | IOCON: configuration register |
| xxx05 | 8 pin | OUTPUT | 0x4444 | IOCON: configuration register |
| xxx05 | 16 pin | INPUT | 0x4444 | IOCON: configuration register |
| xxx05 | 16 pin | OUTPUT | 0x4444 | IOCON: configuration register |
Карта регистров конфигурации боковых модулей аналогового ввода WB-AI
| Register/ Address | Description |
|---|---|
| 20500 | A1 config register |
| 20501 | A2 config register |
| 20502 | A3 config register |
| 20503 | A4 config register |
| 20504 | DIFF1 config register |
| 20505 | DIFF2 config register |
| 20506 | A5 config register |
| 20507 | A6 config register |
| 20508 | A7 config register |
| 20509 | A8 config register |
| 20510 | DIFF3 config register |
| 20511 | DIFF4 config register |
| 20512 | A9 config register |
| 20513 | A10 config register |
| 20514 | A11 config register |
| 20515 | A12 config register |
| 20516 | DIFF5 config register |
| 20517 | DIFF6 config register |
Значения регистров и соответствующий измеряемый диапазон напряжений
| Value | Configuration |
|---|---|
| 0x00 | ±6.144 V (*) |
| 0x01 | ±4.096 V (*) |
| 0x02 | ±2.048 V |
| 0x03 | ±1.024 V |
| 0x04 | ±0.512 V |
| 0x05 | ±0.256 V |
| 0x06 | ±0.256 V |
| 0x07 | ±0.256 V |
Общие регистры
| RO / RW | Read only / Read/Write |
| Выделено жирным | Значение регистра по умолчанию |
| xN | Множитель, на который надо умножить число из регистра, чтобы получить значение в единицах измерения. Не указан — считать равным 1 |
| ⚡ | Регистр поддерживает отправку данных с помощью событий Быстрого Modbus. |
| FW | Версия прошивки устройства, с которой появился регистр. Пусто — регистр был всегда. |
| Error: | Значение при ошибке |
| Серый цвет ячейки | Служебный регистр: назначение, формат и содержимое может измениться в новых версиях прошивки |
Общие регистры
| Адрес | Адрес | Параметры регистра | Параметры регистра | Параметры регистра | Описание | Значения | Примечание |
|---|---|---|---|---|---|---|---|
| Dec | Hex | Тип | Доступ | Формат | Описание | Значения | Примечание |
| Параметры подключения | Параметры подключения | Параметры подключения | Параметры подключения | Параметры подключения | Параметры подключения | Параметры подключения | Параметры подключения |
| 110 | 0x006E | Holding | RW | u16 | Скорость порта RS-485. Настройка параметров подключения по RS-485 | x100, Боды12 — 1200 бит/с,24 — 2400 бит/с,48 — 4800 бит/с, 96 — 9600 бит/с, 192 — 19 200 бит/с, 384 — 38 400 бит/с, 576 — 57 600 бит/с,1152 — 115 200 бит/с | |
| 111 | 0x006F | Holding | RW | u16 | Настройка бита чётности порта RS-485 | 0 — нет бита чётности (none),1 — нечётный (odd),2 — чётный (even) | |
| 112 | 0x0070 | Holding | RW | u16 | Количество стоп-битов порта RS-485Подробнее: игнорирование стопбитов | 1, 2 | |
| 128 | 0x0080 | Holding | RW | u16 | Modbus-адрес устройства (подробнее) | ||
| Модель устройства и версия прошивки | Модель устройства и версия прошивки | Модель устройства и версия прошивки | Модель устройства и версия прошивки | Модель устройства и версия прошивки | Модель устройства и версия прошивки | Модель устройства и версия прошивки | Модель устройства и версия прошивки |
| 200-205 | 0x00C8 - 0x00CD | Input | RO | string | Модель устройства | ||
| 206-219 | 0x00CE - 0x00DB | Input | RO | string | Расширение модели устройства. | Для чтения модели устройства нужно читать диапазон из 20 регистров (200 - 219) | Только в версиях прошивок, где есть Быстрый Modbus |
| 220-244 | 0x00DC - 0x00F4 | Input | RO | string | Хэш коммита и название ветки откуда собрана прошивка (2 символа в регистре) | ||
| 250-265 | 0x00FA - 0x0109 | Input | RO | string | Версия прошивки | ||
| 266-269 | 0x010A - 0x010D | Input | RO | u64 | Расширение серийного номера | ||
| 270-271 | 0x010E - 0x010F | Input | RO | u32 | Серийный номер | ||
| 290-301 | 0x0122 - 0x012D | Holding | RO | string | Сигнатура прошивки | ||
| 320 | 0x0140 | Input | RO | u16 | Версия прошивки в числовом формате (подробнее) | MAJOR | Только в версиях прошивок, где есть Быстрый Modbus |
| 321 | 0x0141 | Input | RO | u16 | Версия прошивки в числовом формате (подробнее) | MINOR | Только в версиях прошивок, где есть Быстрый Modbus |
| 322 | 0x0142 | Input | RO | u16 | Версия прошивки в числовом формате (подробнее) | PATCH | Только в версиях прошивок, где есть Быстрый Modbus |
| 323 | 0x0143 | Input | RO | s16 | Версия прошивки в числовом формате (подробнее) | SUFFIX | Только в версиях прошивок, где есть Быстрый Modbus |
| 324-325 | 0x0144 - 0x0145 | Input | RO | u32 | Версия прошивки в числовом формате | Только в версиях прошивок, где есть Быстрый Modbus | |
| 326-327 | 0x0146 - 0x0147 | Input | RO | u32 | Версия прошивки в Big Endian формате | Только в версиях прошивок, где есть Быстрый Modbus | |
| Прочее | Прочее | Прочее | Прочее | Прочее | Прочее | Прочее | Прочее |
| 104-105 | 0x0068 - 0x0069 | Input | RO | u32 | Время работы с момента загрузки | секунды | |
| 120 | 0x0078 | Holding | RW | u16 | Перезагрузка устройства без сохранения состояния | любое, отличное от 0 перезагружает устройство | |
| 129 | 0x0081 | Holding | RW | u16 | Перевод в режим обновления прошивки на 2 минуты | любое, отличное от 0 переводит устройство в режим обновления прошивки | |
| 330-336 | 0x014A - 0x0150 | Holding | RO | string | Версия загрузчика | ||
| 130 | 0x0082 | Holding | RW | u16 | Отключение светодиода Status | 0 - включен 1 - отключен | |
| 113 | 0x0071 | Holding | RW | u16 | Время перед отправкой ответа на modbus запрос | мс0 - 254 (0) | Только в версиях прошивок, где есть Быстрый Modbus |
| 131 | 0x0083 | Holding | RW | u16 | Перевод в режим обновления прошивки на текущих настройках соединения.Для проверки того, поддерживает ли текущая прошивка и загрузчик обновление прошивки на текущих настройках соединения, нужно прочитать значение данного регистра: если чтение успешно и значение равно 0, то функция поддерживается. | запись 1 переводит устройство в режим обновления прошивки | С версии прошивки 1.6.3 |
| 114 | 0x0072 | Holding | RW | u16 | Режим непрерывного чтения регистров с зазором | 0 - отключен 1 - включен 2 - включение сохраняется после перезагрузки | Только в версиях прошивок, где есть Быстрый Modbus |
| 121 | 0x0079 | Input | RO | u16 | Текущее напряжение питания | мВ | |
| 122 | 0x007A | Input | RO | u16 | Минимальное напряжение питания с момента загрузки, без усреднения | мВ | |
| 125 | 0x007D | Input | RO | u16 | Текущее напряжение питания, без усреднения | мВ | |
| 119 | 0x0077 | Input | RO | u16 | Минимальное напряжение питания микроконтроллера с момента загрузки до усреднения | мВ | |
| 123 | 0x007B | Input | RO | u16 | Напряжение питания микроконтроллера | мВ | |
| 124 | 0x007C | Input | RO | s16 | Внутренняя температура микроконтроллера | x0.1, °C | |
| 304-319 | 0x0130-0x013F | Input | RO | string | Номер партии устройства. Регистр доступен только для устройств, произведенных с 21.01.26. |
С версии прошивки 1.8.0 | |
| 64256-64383 | 0xFB00-0xFB7F | Input | RO | u16 | FlashFS: свободное место на странице | байт | С версии прошивки 1.7.1 |
| 64384-64511 | 0xFB80-0xFBFF | Input | RO | u16 | FlashFS: сумма размеров актуальных файлов на странице | байт | С версии прошивки 1.7.1 |
| 64512-64639 | 0xFC00-0xFC7F | Input | RO | u16 | FlashFS: фрагментация страницы | 0 - 100%0 - все данные актуальны,100 - нет актуальных данных | С версии прошивки 1.7.1 |
| 64640-64767 | 0xFC80-0xFCFF | Input | RO | u16 | FlashFS: счетчик количества стираний страницы | С версии прошивки 1.7.1 | |
| 65402 | 0xFF7A | Holding | RW | u16 | Сброс настроек устройства к значениям по умолчанию. Настройки связи не сбрасываются.После сброса настроек устройство будет перезагружено. | запись 1 приводит к сбросу настроек | С версии прошивки 1.7.0 |
| 65504 | 0xFFE0 | Input | RO | u16 | Максимальный размер используемого стека | байт0 - стек поврежден | С версии прошивки 1.7.1 |
| 65505 | 0xFFE1 | Input | RO | u16 | Объём свободной оперативной памяти | байт | С версии прошивки 1.7.1 |
| 65506 | 0xFFE2 | Input | RO | u16 | Объем используемой оперативной памяти | байт | С версии прошивки 1.7.1 |
| 65507 | 0xFFE3 | Input | RO | u16 | Размер стека | байт | С версии прошивки 1.7.1 |
| 65508 | 0xFFE4 | Input | RO | u16 | Причина последней перезагрузки МК | 1 - LPWR,2 - WWDG,3 - IWDG,4 - SFT,5 - POR,6 - PIN,7 - OBL,8 - V18PWR | С версии прошивки 1.7.1 |
| 65509 | 0xFFE5 | Input | RO | u32 | Счетчик обновлений прошивки | С версии прошивки 1.7.1 |