WB-MIO-E и WBIO-DO-R1G-16

Добрый день!

Возникла проблема с модулями WB-MIO-E и WBIO-DO-R1G-16.
Если я подключаю релейный модуль к самому контроллеру, то он нормально управляется (релюшки щелкают), при попытке подключить релейный модуль через WB-MIO-E - все его топики отображаются как ошибочные.

У меня два модуля WB-MIO-E, проверил на обоих - не работает.

IP-адрес на контроллере 10.2.203.5, маска 255.0.0.0
IP-адрес на WB-MIO-E 10.1.104.30, маска 255.0.0.0
Контроллер прекрасно видит шлюз и даже что-то ему отправляет

Настройки шлюза выглядят вот так

Наклейка на шлюзе

Настройки на контроллере выглядят так

У меня уже используется шлюз для RS-485 WB-MGE (видно на скрине с конфигурацией) совместно с релейными модулями WB-MR6C и все замечательно работает.

Не подскажете, как можно решить данную проблему?

Попробовал подключить шлюз WB-MIO-E к контроллеру напрямую через RS-485, оказалось, что шлюз не применяет настройку скорости, указанную в его web-интерфейсе, и всегда работает на скорости 9600.

Сейчас мне удалось подключить WB-MIO-E через WB-MGE (ethernet приходит в WB-MGE и оттуда уже по RS-485 уходит в WB-MIO-E), что само по себе извращение.

Так что проблема все еще остается актуальной.

Возможно ли, что роутер не пускает?
Попробуйте привести один WB-MIO-E в исходное состояние и подключить его напрямую к порту 2 (Eth1). Затем простые настройки позволят его увидеть:

Настройка подключения по Ethernet

Чтобы подключение к модулю работало, вам нужно убедиться, что IP-адрес модуля WB-MIO-E и IP-адрес порта Wiren Board, через который вы к нему подключаетесь, находятся в одной подсети. В частности, если вы подключаете WB-MIO-E напрямую (без роутера) к контроллеру Wiren Board через порт, подписанный Ethernet 2, вам необходимо внести следующие изменения в /etc/network/interfaces :

auto eth1 allow-hotplug
eth1 iface eth1 inet static
address 192.168.0.1
netmask 255.255.255.0

1 Симпатия

Возможно ли, что роутер не пускает?

Я проверял, подключив непосредственно к контроллеру, чтобы исключить подобные проблемы.

Это я не понял, к сожалению.

  1. Чем вас не устраивает 9600 у WB-MIO-E?
  2. Где именно вы поменяли скорость?
  3. Работает ли на 9600 в конфигурации, когда WB-MIO-E подключено по Ethernet к контроллеру?
  1. Не устраивает тем, что об этом нигде не сказано в документации, вместо этого там указано как настроить скорость порта, что по факту не работает. Изначально я установил скорость 115200 и очень долго не мог понять, почему ничего не работает.

  2. Если Вы про WB-MIO-E, то скорость менял в web-интерфейсе по адресу 192.168.0.7

  3. Нет, не работает.

WB-MIO-E внутри состоит из двух частей: конвертера из Ethernet в последовательный порт (1) и конвертера из последовательного порта в шину WBIO (2). Грубо говоря, WB-MIO-E - это WB-MGE + WB-MIO в одном корпусе.

Поэтому если вы поменяли скорость порта в веб-интерфейсе WB-MIO-E, то часть (1) не сможет связаться с частью (2), потому что у части (2) осталась старая скорость порта. Скорость порта части (2) меняется по Modbus RTU.

Менять эти скорости может понадобиться в единственном случае: если вы используете WB-MIO-E как WB-MIO, т.е. обращаетесь с физического RS-485 к модулям WBIO, а вся сеть RS-485 у вас уже работает на нестандартной скорости.

Сейчас скорость в web-интерфейсе (часть 1 ) и скорость порта (часть 2) равны 9600 (остальные параметры вообще не менял: четность и т.п.), шлюз подключен напрямую к eth1 контроллера. По-прежнему нет связи с релейным модулем.

  1. Всё-таки проверьте доступность шлюза с контроллера:
    ping 10.1.104.30
  2. Посмотрите, какие выводятся ошибки:
    tail -f /var/log/messages