Для корректной работы устройства нужно писать несколько регистров одновременно. (5 или 8 регистров, 10 или 16 байт соответственно) Как это лучше всего сделать? Отображать их статус необязательно.
wb-mqtt-serial это сейчас делать не умеет. Так что только через прямую запись в порт в обход нашего ПО.
А как это корректно сделать? Правильно ли я понимаю что нужно писать скрипт где останавливать wb-mqtt-serial, слать команду а потом стартовать его опять? Если так, то это очень сомнительное решение…
Может можно как-то прикрутить holding-multi? (через команду 0х10)
да, примерно так. Очень сомнительное решение, согласен.
оно только на чтение
Для истории прошу оставить название и документацию на устройство, и номера регистров, с которыми такая проблема. В отдалённом будущем подумаем, как реализовать это в ПО контроллера.
Для истории прошу оставить название и документацию на устройство, и номера регистров, с которыми такая проблема.
http://vkmodule.com.ua/RS485_modbus/pdf/Протокол%20’Modbus’%20для%20VRD-485.pdf
Регистры 0x0004-0x000B
Так же очень часто в логе ошибка “Serial protocol error: invalid crc” для этого устройства.
оно только на чтение
Из этой темы следует что на запись. Или я чего-то не понял?
wb-mqtt-serial это сейчас делать не умеет.
Есть ли шанс что научится в обозримом будущем? По идее не сильно сложная доработка…