Имеем 3 датчика WB-MSW v.3 температуры и влажности. Измеряем только температуру.
Периодически с датчика приходят некорректные значения.
Проверили, с помощью ПО Modbus poll, получение некорректного значения.
Добрый день.
Судя по значениям, (0x7fffffff), которое описано в карте регистров как признак ошибки датчика.
Давайте диагностировать:
какая версия прошивки устройства? (актуальная 4.16.5), посмотреть можно в регистрах 250…265 или сразу командой:
export DEV_PORT=/dev/ttyRS485-2
export DEV_ADDR=55
U=""
for i in {250..265}; do U=$U"\\x"$(modbus_client --debug -mrtu -pnone -s2 $DEV_PORT -a$DEV_ADDR -t0x03 -r$i | grep Data:| cut -f 2 -d' ' | tr -d '0x00'); done;
echo -e $U
напряжение питания устройства (считать из регистра 121)
не перезагружается ли (проверить время работы с момента загрузки, старшее значение в 104, младшее в 105) если перезагружается из-за плохого контакта - то дает похожие симптомы.
Сам датчик стоит на шине в середине или крайним? Какое питание?
Так себя ведет один?
Текущее напряжение питания (Input: 121):
колеблется около 23,8В; //
Время работы с момента загрузки в секундах ():
45942425 == около 1,45 года после запуска
Датчики с ошибкой стоят последними в линии связи. В самой линии связи установлено по 2 датчика
Линия 1 ТФ120.1 и ТФ120.2
Линия 2 ТФ121.1 и ТФ120.2
Связь с датчиками осуществляется через 1-портовый преобразователь Modbus RTU/ASCII (RS-232/422/485) в Modbus TCP MGATE MB3180.
@BrainRoot, здравствуйте.
Есть особенность при работе с этим датчиком - он подключен посредством преобразователя протоколов Modbus RTU<>Modbus TCP
Вопрос в следующем - утилита для обновления firmware, которая указана в материалах по загрузке прошивок на устройства позволяет работать посредством обращения к Modbus TCP, по IP-адресу? В явном виде такой возможности в материалах по ссылке выше не нашёл.
@BrainRoot, здравтсвуйте.
Получилось подключиться к датчику по Modbus-RTU, после настройки COM-порта, считать значения регистров с данными о температуре и влажности.
Но в процессе попытки установки firmware с помощью утилиты wb-mcu-fw-flasher произошло следующее:
Сводка
C:\Users\Админ\Downloads\Wb-mcu-fw-flasher_1.0.3>wb-mcu-fw-flasher_1.0.3.exe -j -d COM3 -a 146 -f msw3-48mh__4.16.5_master_7a4adf5.wbfw
\.\COM3 opened successfully.
Send jump to bootloader command and wait 2 seconds…
Ok, device will jump to bootloader.
msw3-48mh__4.16.5_master_7a4adf5.wbfw opened successfully, size 23968 bytes
Sending info block…
Error while sending info block: Unknown error
Error while sending info block: Unknown error
Error while sending info block: Unknown error
Error while sending info block.
Check connection, jump to bootloader and try again.
После чего датчик перестал отвечать на запросы в его адрес по Modbus, повторная попытка записать firmware приводит к следующему:
Сводка
C:\Users\Админ\Downloads\Wb-mcu-fw-flasher_1.0.3>wb-mcu-fw-flasher_1.0.3.exe -j -d COM3 -a 146 -f msw3-48mh__4.16.5_master_7a4adf5.wbfw
\.\COM3 opened successfully.
Send jump to bootloader command and wait 2 seconds…
Error: Unknown error.
May be device already in bootloader, check status led
msw3-48mh__4.16.5_master_7a4adf5.wbfw opened successfully, size 23968 bytes
Sending info block…
Error while sending info block: Unknown error
Error while sending info block: Unknown error
Error while sending info block: Unknown error
Error while sending info block.
Check connection, jump to bootloader and try again.
Что могло произойти в процессе обновления firmware, из за чего датчик стал недоступен и есть ли возможность восстановить его работоспособность?