Предварительно: раз в 8-20 секунд возникает “помеха”, которая мешает обмену поо шине с ошибками “illegal data value”.
При остановленном wb-mqtt-serial попытка циклического чтения
for i in {1..200}
do
echo "count $i $(modbus_client -mrtu -pnone -s2 $DEV_PORT -a16 -t0x03 -r104 -c2 | grep Data:)"
done
неудачна в значительном количестве случаев:
root@wirenboard-ATNO6FBW:~# for i in {1..200}; do echo "count $i $(modbus_client -mrtu -pnone -s2 $DEV_PORT -a16 -t0x03 -r104 -c2 | grep Data:)"; done
count 1
count 2 Data: 0x0042 0x5624
count 3 Data: 0x0042 0x5624
count 4 Data: 0x0042 0x5624
count 5
count 6 Data: 0x0042 0x5625
count 7
count 8 Data: 0x0042 0x5626
count 9 Data: 0x0042 0x5626
count 10 Data: 0x0042 0x5626
count 11
count 12 Data: 0x0042 0x5628
count 13 Data: 0x0042 0x5628
count 14 Data: 0x0042 0x5628
count 15
count 16 Data: 0x0042 0x5629
count 17 Data: 0x0042 0x5629
count 18
count 19
count 20
count 21
count 22 Data: 0x0042 0x562d
count 23
count 24
count 25 Data: 0x0042 0x562f
count 26 Data: 0x0042 0x562f
count 27 Data: 0x0042 0x562f
count 28
count 29
count 30 Data: 0x0042 0x5631
count 31 Data: 0x0042 0x5632
count 32 Data: 0x0042 0x5632
Устройства остальные - работают. Прошелся по всем.
Есть небольшие потери на 191 (MIO) и на 1
Исключение 16
При чтении 14 регистров счетчиков из 191:1
for i in {1..200}; do echo "count $i $(modbus_client -mrtu -pnone -s2 $DEV_PORT -a191 -t0x03 -r1250 -c14 | grep Data:)"; done
count 1 Data: 0x0056 0x000e 0x0014 0x0000 0x006c 0x0002 0x0000 0x0ac7 0x14e5 0x0000 0x0000 0x0000 0x0000 0x0000
count 2 Data: 0x0056 0x000e 0x0014 0x0000 0x006c 0x0002 0x0000 0x0ac7 0x14e5 0x0000 0x0000 0x0000 0x0000 0x0000
count 3 Data: 0x0056 0x000e 0x0014 0x0000 0x006c 0x0002 0x0000 0x0ac7 0x14e5 0x0000 0x0000 0x0000 0x0000 0x0000
count 4 Data: 0x0056 0x000e 0x0014 0x0000 0x006c 0x0002 0x0000 0x0ac7 0x14e5 0x0000 0x0000 0x0000 0x0000 0x0000
count 5 Data: 0x0056 0x000e 0x0014 0x0000 0x006c 0x0002 0x0000 0x0ac7 0x14e5 0x0000 0x0000 0x0000 0x0000 0x0000
count 6 Data: 0x0056 0x000e 0x0014 0x0000 0x006c 0x0002 0x0000 0x0ac7 0x14e5 0x0000 0x0000 0x0000 0x0000 0x0000
count 7 Data: 0x0056 0x000e 0x0014 0x0000 0x006c 0x0002 0x0000 0x0ac7 0x14e5 0x0000 0x0000 0x0000 0x0000 0x0000
count 8 Data: 0x0056 0x000e 0x0014 0x0000 0x006c 0x0002 0x0000 0x0ac7 0x14e5 0x0000 0x0000 0x0000 0x0000 0x0000
count 9
count 10 Data: 0x0056 0x000e 0x0014 0x0000 0x006c 0x0002 0x0000 0x0ac7 0x14e5 0x0000 0x0000 0x0000 0x0000 0x0000
count 11 Data: 0x0056 0x000e 0x0014 0x0000 0x006c 0x0002 0x0000 0x0ac7 0x14e5 0x0000 0x0000 0x0000 0x0000 0x0000
count 12 Data: 0x0056 0x000e 0x0014 0x0000 0x006c 0x0002 0x0000 0x0ac7 0x14e5 0x0000 0x0000 0x0000 0x0000 0x0000
count 13 Data: 0x0056 0x000e 0x0014 0x0000 0x006c 0x0002 0x0000 0x0ac7 0x14e5 0x0000 0x0000 0x0000 0x0000 0x0000
count 14 Data: 0x0056 0x000e 0x0014 0x0000 0x006c 0x0002 0x0000 0x0ac7 0x14e5 0x0000 0x0000 0x0000 0x0000 0x0000
count 15 Data: 0x0056 0x000e 0x0014 0x0000 0x006c 0x0002 0x0000 0x0ac7 0x14e5 0x0000 0x0000 0x0000 0x0000 0x0000
count 16
count 17 Data: 0x0056 0x000e 0x0014 0x0000 0x006c 0x0002 0x0000 0x0ac7 0x14e5 0x0000 0x0000 0x0000 0x0000 0x0000
count 18 Data: 0x0056 0x000e 0x0014 0x0000 0x006c 0x0002 0x0000 0x0ac7 0x14e5 0x0000 0x0000 0x0000 0x0000 0x0000
count 19 Data: 0x0056 0x000e 0x0014 0x0000 0x006c 0x0002 0x0000 0x0ac7 0x14e5 0x0000 0x0000 0x0000 0x0000 0x0000
count 20 Data: 0x0056 0x000e 0x0014 0x0000 0x006c 0x0002 0x0000 0x0ac7 0x14e5 0x0000 0x0000 0x0000 0x0000 0x0000
count 21 Data: 0x0056 0x000e 0x0014 0x0000 0x006c 0x0002 0x0000 0x0ac7 0x14e5 0x0000 0x0000 0x0000 0x0000 0x0000
count 22
count 23 Data: 0x0056 0x000e 0x0014 0x0000 0x006c 0x0002 0x0000 0x0ac7 0x14e5 0x0000 0x0000 0x0000 0x0000 0x0000
count 24 Data: 0x0056 0x000e 0x0014 0x0000 0x006c 0x0002 0x0000 0x0ac7 0x14e5 0x0000 0x0000 0x0000 0x0000 0x0000
count 25
count 26 Data: 0x0056 0x000e 0x0014 0x0000 0x006c 0x0002 0x0000 0x0ac7 0x14e5 0x0000 0x0000 0x0000 0x0000 0x0000
count 27 Data: 0x0056 0x000e 0x0014 0x0000 0x006c 0x0002 0x0000 0x0ac7 0x14e5 0x0000 0x0000 0x0000 0x0000 0x0000
count 28 Data: 0x0056 0x000e 0x0014 0x0000 0x006c 0x0002 0x0000 0x0ac7 0x14e5 0x0000 0x0000 0x0000 0x0000 0x0000
count 29
count 30 Data: 0x0056 0x000e 0x0014 0x0000 0x006c 0x0002 0x0000 0x0ac7 0x14e5 0x0000 0x0000 0x0000 0x0000 0x0000
count 31 Data: 0x0056 0x000e 0x0014 0x0000 0x006c 0x0002 0x0000 0x0ac7 0x14e5 0x0000 0x0000 0x0000 0x0000 0x0000
count 32 Data: 0x0056 0x000e 0x0014 0x0000 0x006c 0x0002 0x0000 0x0ac7 0x14e5 0x0000 0x0000 0x0000 0x0000 0x0000
count 33 Data: 0x0056 0x000e 0x0014 0x0000 0x006c 0x0002 0x0000 0x0ac7 0x14e5 0x0000 0x0000 0x0000 0x0000 0x0000
count 34 Data: 0x0056 0x000e 0x0014 0x0000 0x006c 0x0002 0x0000 0x0ac7 0x14e5 0x0000 0x0000 0x0000 0x0000 0x0000
count 35 Data: 0x0056 0x000e 0x0014 0x0000 0x006c 0x0002 0x0000 0x0ac7 0x14e5 0x0000 0x0000 0x0000 0x0000 0x0000
count 36
count 37 Data: 0x0056 0x000e 0x0014 0x0000 0x006c 0x0002 0x0000 0x0ac7 0x14e5 0x0000 0x0000 0x0000 0x0000 0x0000
count 38
count 39
count 40
count 41 Data: 0x0056 0x000e 0x0014 0x0000 0x006c 0x0002 0x0000 0x0ac7 0x14e5 0x0000 0x0000 0x0000 0x0000 0x0000
count 42 Data: 0x0056 0x000e 0x0014 0x0000 0x006c 0x0002 0x0000 0x0ac7 0x14e5 0x0000 0x0000 0x0000 0x0000 0x0000
count 43 Data: 0x0056 0x000e 0x0014 0x0000 0x006c 0x0002 0x0000 0x0ac7 0x14e5 0x0000 0x0000 0x0000 0x0000 0x0000
count 44
count 45
Также потери.
Надо для продолжения теста - подключить MIO коротким проводом к порту контроллера и повторить.
Ну и проверить на корректность подключения 16 устройство - с такими потерями работать нормально не будет.