Меркурий 230 AR-02 R (rs485)

Добрый день, не получается подключить счетчик Меркурий 230 AR-02 R к контроллеру Wiren Board 6 по rs485.

А вы всегда подключаете используя витую паре как один провод? Еще что-то на этой шине работает?

Подключение RS485:
23 - (+5V)
24 - (A)
18 - (GND)
19 - (B)

Так, “А” - третья сверху,
“Б” - третья снизу.
кажется подключено верно.
Попробуйте обратиться (считать) какой-либо регистр вручную с помощью Modbus-client
остановив wb-mqtt-serial.

  1. Возможно, что этому счётчику нужно внешнеие питание на интерфейс. Уточните пожалуйста в документации или у производителя. Там в разных буковках по-разному.

  2. Если ему питание не нужно, то RS-485 работает только при наличии напряжения то ли на второй, то ли на третьей фазе - про это тоже есть коротко в документации на счётчик. Если напряжение есть не по всем фазам, то проблема может быть в этом.

Счетчик подключен по 3 фазам.
Адрес счетчика считывается по последним трем цифрам серийного номера, если они больше 247 то по последним 2?

Больше 240. Про адрес - так в документации. Если его (и логин с паролем) при установке не поменяли. Можно обратиться к счетчику для проверки по адресу “0”, но он должен быть на порту один.
А на VOUT контроллера у вас какое напряжение? Счетчику надо 5,5-12В
Документация

Настройки у счетчика не менялись, он подключался из коробки.

Тогда - еще раз проверяем подключение (все ж я советую использовать одну пару для RS-485, ее достаточно и наводкам/помехам не так подвержена).
Стоповый бит у меркурия по-умолчанию 1.
Попробуйте оставить его на порту одного.

1 - проверили еще раз распиновку и подключение
2 - настройки счетчика по умолчанию
3 - питание счетчика есть на 3 фазах
4 - счетчик висит на 2 (rs485) порту, в единственном числе
5 - пробовали адреса 69 и 0, результата нет.
6 - попытки подключения через modbus_client выдают ошибку

Вывод консоли с адресом 0:
modbus_client --debug -mrtu -pnone -s2 /dev/ttyRS485-2 -a0 -t0x03 -r0x80
Opening /dev/ttyRS485-2 at 9600 bauds (N, 8, 2)
[00][03][00][80][00][01][84][33]
Waiting for a confirmation…
ERROR Connection timed out: select
ERROR occured!

Вывод консоли с адресом 69
modbus_client --debug -mrtu -pnone -s2 /dev/ttyRS485-1 -a69 -t0x03 -r0x80
Opening /dev/ttyRS485-1 at 9600 bauds (N, 8, 2)
[45][03][00][80][00][01][8A][A6]
Waiting for a confirmation…
ERROR Connection timed out: select
ERROR occured!

Для проверки адрес работающего устройства на другом порту:
modbus_client --debug -mrtu -pnone -s2 /dev/ttyRS485-1 -a179 -t0x03 -r0x80
Opening /dev/ttyRS485-1 at 9600 bauds (N, 8, 2)
[B3][03][00][80][00][01][9E][30]
Waiting for a confirmation…
<03><02><00>
SUCCESS: read 1 of elements:
Data: 0x00b3

Стоповых бит - “1”
То есть попробуйте

-s1

root@wirenboard-AIWXFY2Q:~# modbus_client --debug -mrtu -pnone -s1 /dev/ttyRS485-2 -a0 -t0x03 -r0x80
Opening /dev/ttyRS485-2 at 9600 bauds (N, 8, 1)
[00][03][00][80][00][01][84][33]
Waiting for a confirmation…
ERROR Connection timed out: select
ERROR occured!
root@wirenboard-AIWXFY2Q:~# modbus_client --debug -mrtu -pnone -s1 /dev/ttyRS485-2 -a69 -t0x03 -r0x80
Opening /dev/ttyRS485-2 at 9600 bauds (N, 8, 1)
[45][03][00][80][00][01][8A][A6]
Waiting for a confirmation…
ERROR Connection timed out: select
<45><01>ERROR occured!

Получилось подключиться с такими настройками:


Так, ASCII формат у счетчика. modbus_client не сильно поможет. Смените для второко порта стопбит на “1” и попробуйте снова запустить wb-mqtt-serial.

Уже, спасибо.