Добрый день. Уже на протяжении пары дней, пытаюсь наладить управление через mqtt устройствами подключенными по modbus rtu. Проблема возникает уже на этапе конфигурирования mqtt-mbgate. После включения Modbus binding : RTU, ложится вся линия rs 485 (modbus rtu), состояние тегов становится “error”. Отправляю запрос по mqtt со SCADa, изменения по mqtt в WB приходят, но стоит обновить страничку, значение становится прежним. Такое чувство, что запрос дальше по линии rs485 не идёт, а остаётся на уровне контроллера.
WirenBoard 6
Необходимо управлять внешним прибором, изменять уставки и менять состояние. С веб интерфейса работает идеально, а вот через mqtt explorer или scada, изменения не происходят.
Добрый день.
А какой протокол предполагается для использования с mbgate? Modbus TCP или Modbus RTU?
Если, как на первом скриншоте включить использование RTU для ttyRS485-1 который УЖЕ включен в конфиг wb-mqtt-serial - то произвойдет конфликт.
То есть именно каждый из RS-485 портов может быть использован или для wb-mqtt-serial (как master) или для mbgate в режиме Modbus RTU (как slave).
Может все ж TCP настраиваете?
Да, благодарю за оформление вопроса - настолько понятно и доходчиво проблема описана - отвечать прямо-таки приятно.
Нет, настраиваю именно RTU. Да, именно конфликт и происходит. А как его избежать и в тоже время, отправлять обратно запросы по RTU во внешнее устройство? Насколько я понял, для этого и предназначен шлюз? ( знаком с WB я не давно, устроился в компанию, которая сотрудничает с Вами, до этого работал с промышленными плк, там другой принцип, так что прошу не кидаться тряпками)
Или именно в mqtt-serial необходимо выполнить какую-то настройку?
Порт может быть использовани **или как slave (для mbgate, например) или как master (для serial).
Порт занимается монопольно. А схема которую вы хоьтите - когда в шине два мастера - один опрашивает контроллера и в тоже время сам контроллер работает мастером и опрашивает устройства - невозможна.
Надо использовать свободный, не задействованный в serial порт. Если два встроенных - уже заняты и нужны еще - можно доставить модулем расширения дополнительные RS485 порт, до 3 штук включитьелно дополнительных. Модуль: Модуль расширения: RS485, WBE2-I-RS485-ISO — Wiren Board
То есть используйте второй порт.
Спасибо большое за ответ. Но я не совсем понял, что значит использовать второй порт. Мне физически на него нужно ещё одну линию связи тянуть? У меня один контроллер, который опрашивает 6 своих модулей и 3 сторонних. Управление скажем прибором СО2 с веб-интерфейса осуществляется идеально, а вот если через mqtt изменить какую-нибудь уставку, она до прибора не доходит, хотя сам контроллер же управляет этим прибором.