Снова не удаётся подключить устройства через WB-MIO

Доброго дня!

Говорят, бомба дважды в одну воронку не падает, но это не мой случай.
Для расширения своей инсталляции взял ещё один MIO-E v2.

При подключении имею те же самые проблемы, что и с предыдущим:

Заменённый ранее модуль работает на IP 192.168.0.7 без нареканий.
На новом модуле (192.168.0.30) делаю аналогичные настройки:







В логе journalctl -fu wb-mqtt-serial | grep "\.30" получаю:

авг 09 16:36:23 wirenboard-ATMTILFT wb-mqtt-serial[8711]: WARNING: <192.168.0.30:23>: closed due to repetitive errors
авг 09 16:36:23 wirenboard-ATMTILFT wb-mqtt-serial[8711]: DEBUG: [serial client] <192.168.0.30:23>1997947: Wait until 1997947
авг 09 16:36:23 wirenboard-ATMTILFT wb-mqtt-serial[8711]: DEBUG: [port] 192.168.0.30: Sleep 8000 us
авг 09 16:36:23 wirenboard-ATMTILFT wb-mqtt-serial[8711]: DEBUG: [port] 192.168.0.30: Sleep 0 us

diag_output_ATMTILFT_2025-08-09-16.42.44.zip (118.7 KB)

Прошу помочь разобраться в ситуации.

Добрый день!

Проверю одну мысль и вернусь с ответом.

В данном случае для работы быстрого автоматического быстрого поиска на шине, рекомендую использовать режим Modbus RTU over TCP.

Если вам принципиально использовать Modbus TCP, то

  • удалите и добавьте устройство вручную
  • убедитесь что настройки порта самих устройств и WB-MIO соответствуют
  • проверьте связь через Modbus client

Отпишитесь по результату.

  • удалите и добавьте устройство вручную

Не понимаю что имеется в виду в этом пункте. В интерфейсе редактирования wb-mqtt-serial.conf я и так всё вручную делаю. Ничего про возможности автоматического добавления устройств не знаю.

Об этом можете почитать здесь:

https://wirenboard.com/wiki/RS-485:Configuration_via_Web_Interface#Добавление_устройств_автоматически

Остальное проверьте по пунктам, приведенными мной выше.

1 лайк

Добрый день!

Вам удалось решить вопрос?

Доброго дня.

Нет, решения пока нет.
Буду на объекте в четверг/пятницу - отпишусь по результату.

Поменял настройки для использования Modbus RTU over TCP:

Перезапустил – результата нет.

Из документации абсолютно не ясно нужно ли менять протокол порта в /etc/wb-mqtt-serial.conf, но попробовал и это сделать:

После сохранения в обоих случаях всё осталось так же как и было:

авг 14 16:33:25 wirenboard-ATMTILFT wb-mqtt-serial[32277]: WARNING: <192.168.0.30:23>: closed due to repetitive errors
авг 14 16:33:25 wirenboard-ATMTILFT wb-mqtt-serial[32277]: DEBUG: [serial client] <192.168.0.30:23>192391172: Wait until 192391172
авг 14 16:33:25 wirenboard-ATMTILFT wb-mqtt-serial[32277]: DEBUG: [port] 192.168.0.30: Sleep 8000 us
авг 14 16:33:25 wirenboard-ATMTILFT wb-mqtt-serial[32277]: DEBUG: [port] 192.168.0.30: Sleep 0 us
авг 14 16:33:25 wirenboard-ATMTILFT wb-mqtt-serial[32277]: DEBUG: [port] 192.168.0.30: Write: e4 06 00 72 00 01 fe 24
авг 14 16:33:26 wirenboard-ATMTILFT wb-mqtt-serial[32277]: DEBUG: [serial client] <192.168.0.30:23>192391694: Wait until 192391694
авг 14 16:33:26 wirenboard-ATMTILFT wb-mqtt-serial[32277]: DEBUG: [port] 192.168.0.30: Sleep 8000 us
авг 14 16:33:26 wirenboard-ATMTILFT wb-mqtt-serial[32277]: DEBUG: [port] 192.168.0.30: Sleep 0 us
авг 14 16:33:26 wirenboard-ATMTILFT wb-mqtt-serial[32277]: DEBUG: [port] 192.168.0.30: Write: 5b 06 00 72 00 01 e4 eb

Оба варианта никак не изменили значения TX Count в интерфейсе MIO:

|TX Count(ETH) :|0/ bytes|
|RX Count(ETH) :|36992/ bytes|

Для проблемного MIO:

root@wirenboard-ATMTILFT:~# modbus_client --debug -mtcp -a228 -c1 -t0x03 -o3000 -p23 192.168.0.30
Connecting to 192.168.0.30:23
[00][01][00][00][00][06][E4][03][00][64][00][01]
Waiting for a confirmation...
ERROR Connection timed out: select
ERROR occured!

Для работающего MIO:

root@wirenboard-ATMTILFT:~# modbus_client --debug -mtcp -a174 -c1 -t0x03 -o3000 -p23 192.168.0.7
Connecting to 192.168.0.7:23
[00][01][00][00][00][06][AE][03][00][64][00][01]
Waiting for a confirmation...
<00><01><00><00><00><05><AE><03><02><FF><FE>
SUCCESS: read 1 of elements:
        Data: 0xfffe

При этом с контроллера wirenboard пинги ходят:

root@wirenboard-ATMTILFT:~# ping 192.168.0.30
PING 192.168.0.30 (192.168.0.30) 56(84) bytes of data.
64 bytes from 192.168.0.30: icmp_seq=1 ttl=255 time=11.1 ms
64 bytes from 192.168.0.30: icmp_seq=2 ttl=255 time=7.22 ms
64 bytes from 192.168.0.30: icmp_seq=3 ttl=255 time=3.57 ms
^C
--- 192.168.0.30 ping statistics ---
3 packets transmitted, 3 received, 0% packet loss, time 2003ms
rtt min/avg/max/mdev = 3.573/7.313/11.144/3.091 ms

Телнет на контроллере отсутствует, но curl-ом доступ проверяется:

root@wirenboard-ATMTILFT:~# telnet
-bash: telnet: команда не найдена
root@wirenboard-ATMTILFT:~# curl 192.168.0.30
<HTML><HEAD><TITLE>Required Authorization To Login</TITLE><meta http-equiv="Content-Type" content="text/html; charset=gb2312"><style type="text/css">
<!--
body {
        background-color: #DDECFE;
}
body,td,th {
        font-family: Arial, Helvetica, sans-serif;
}
.STYLE1 {color: #8000FF}
-->
</style></HEAD><BODY>
<H4 class="STYLE1">Required Authorization To Login</H4>

</BODY>
</HTML>

Проверил с ноута telnet на .30:23 - соединение установилось, на любую чепуху, отправленную в порт MIO не ответил, счётчик TX не увеличился ни на байт.

Пригласите пожалуйста пользователя support@wirenboard.com в организацию на облачном сервисе.
Для этого в настройках организации нажмите кнопку “Пригласить”


И укажите почтовый адрес:

После этого поддержка получит доступ к вашему контроллеру для диагностики.
Не забудьте удалить потом доступ.

Добрый день!

Подскажите, доступ еще предоставляли?

Приглашение отправлено.

Давайте попробуем настроить WB-MIO-E v2 192.168.0.30 точно так же как и 192.168.0.7, а затем подкинуть на его место.

Если на порту MODBUS TCP 192.168.0.7:23 проблемный WB-MIO-E v2 не заработает, то попробуйте выполнить сброс с последующей настройкой и проверить еще.

Давайте попробуем настроить WB-MIO-E v2 192.168.0.30 точно так же как и 192.168.0.7, а затем подкинуть на его место.

Если на порту MODBUS TCP 192.168.0.7:23 проблемный WB-MIO-E v2 не заработает, то попробуйте выполнить сброс с последующей настройкой и проверить еще.

Старый блок MIO отключил физически, на новом все настройки перекинул как было на старом (в т.ч. поменял IP .30 → .7) и установил физически вместо старого - работает.

Попробовал на новом блоке поставить IP .30, перекинул в wb-mqtt-serial.conf сделал соответствующие изменения - продолжает работать → дело не в IP.
Поставил старый блок с IP .7 в новое место (рядом с блоками 228 и 91 - см. фото в этом треде) - не работает.

Пробовал отключать по очереди 228 и 91 блок), предположив, что какой-то из блоков рушит схему - не помогло.
Прозвонил всю гирлянду RS485 (клеммы A и B) - соединение есть.

Переставил новый блок MCM 228 вместо старого - работает.
Идеи что может быть не так закончились.

Перекоммутировал новыми проводами старый MIO с новым MR6C через клеммы RS485 напрямую - не работает.
Переставил старый блок MCM8 в новое место - не работает.

Поменял клемму (единственное физическое, что не было проверено) - не работает.