Wb-mge

Здравствуйте!
Подключил модуль WB-MGE к компьютеру. Для начала читаю 2 регистра: 110 и 128. Читаю их из MasterScada 4D. Чтение происходит очень неустойчиво. При старте программы в MS 4D часто выскакивает системное сообщение Отказ внешних модулей УСО. Но регистры читаются. В MS настроил каналы для чтения регистров. Значения каналов могут меняться местами или читают один и тот же регистр. Подскажите, какие параметры нужно настроить для надёжной работы Modbus?
Настройки WB-MGE
Параметры WB-MGE

Протоколы в MS4D. Видно, что значения каналов поменяны местами. AI1 это регистр 110 - скорость передачи Modbus = 96. А AI2 регистр 128 - Modbus-адрес = 29
Протоколы в MS4D

Настройки протокола Modbus over TCP
Протокол Modbus Over TCP

Настройки модуля Modbus
Настройки Modbus

Настройки канала AI1
Настройки канала AI1

Настройки канала AI2
Настройки канала AI2

А зачем использовать с WB-MGE именно modbus RTU-over-TCP, а не modbus TCP?
Какое устройство по ту сторону адаптера?

Про ошибки - выбран очень маленький таймаут, как мне кажется. Вы опрашиваете WB-MGE, WB-MGE опрашивает вашу периферию - и всё на 9600 с надеждой уложиться в 10мс.

Пробовал использовать Modbus TCP, но в параметрах надо галочку ставить Modbus поверх TCP, иначе не работает. И таймаут ставил 500, 1000. Ничего не меняется.
В настройках MGE установил скорость 19200 - перестал MGE совсем отвечать. Или нужно ещё где-то скорость менять? Я не нашел где.
За MGE пока ничего нет. Пробую регистры читать с самого MGE.

У вас модель WB-MGE или WB-MGE v2? Пришлите фото лицевой панели модуля. Модуль WB-MGE не поддерживает работу по Modbus TCP.

Перестал открываться веб-интерфейс модуля?

Веб интерфейс открывается.
На модуле есть зелёная лампочка Start. Когда происходит обращение к регистрам - она моргает. Так вот на скорости 9600 регистры, пускай не правильно, но читались - лампочка моргала. На скорости 19200 - не моргала, регистры не читались.

Если можно менять скорость передачи в MGE, то, по логике, нужно менять скорость и в скаде? Но я не нашёл где в скаде в протоколе поменять скорость.

Про какие регистры вы имеете в виду? Вы же планируете опрашивать устройства, подключенный к WB-MGE по сети RS-485, которых у вас пока нет. Для их опроса достаточно изменить скорость в веб-интерфейсе.

Также у модуля есть встроенные регистры (что-то вроде встроенного устройства, подключенного к шине RS485). В целом его опрашивать не нужно, это может только запутать. Но если очень хочется, то нужно сначала изменить скорость работы “внутреннего устройства”, а потом аналогично изменить скорость в веб-интерфейсе. Регистры конфигурации можно посмотреть здесь: Карта регистров модулей WB-MIO и WB-MIO-E — Wiren Board

Спасибо за ответ, теперь понятно. Речь про внутренние регистры и идёт. Сначала нужно в регистр 110 записать другую скорость, затем поменять в вебинтерфейсе. Не могу только понять как правильно Таймаут выставлять? От количества считываемых регистров значение таймаута зависит?

Таймаут зависит не столько от количества регистров в запросе, а от времени отклика на каждый запрос.
В Вашем случае это ping+отклик на RTU.

Начните с 100мс.