Приветствую
Написал шаблон для кастомного мобдас устройства - всё отлично
Решил расширить для изменения его параметров и обнаружил, что запись параметра всегда осуществляется функцией 6, а конкретная железка хочет чтобы даже единичный регистр в неё писался 16 функцией
Сходу не увидел можно ли принудить писать именно 16 функцией
Это можно сконфигурировать?
и ещё вопрос - как заставить читать несколько регистров за раз?
подряд идёт несколько регистров, где один регистр - одно значений, и их бы можно прочитать одним запросом для экономии времени и циклов чтения, однако дебаг показывает что каждый регистр читается индивидуально (((
Здравствуйте.
я правильно понял что устройство хочет записать сразу в несколько регистров одновременно?
если да то вам как раз поможет ответ на следующий вопрос:
нужно после номера регистра указать параметр -c и далее кол-во элементов которое нужно прочесть, клиент опросит нужное кол-во начиная с номера регистра который вы указали
как например здесь:
modbus_client --debug -mrtu -b9600 -pnone -s2 /dev/ttyRS485-1 -a1 -t0x03 -r200 -c 6
Загляните в наши интересные статьи про протокол Modbus и утилиту modbus_client
нет, неправильно поняли
речь изначально шла про ШАБЛОН УСТРОЙСТВА, а не про чтение через modbus_client
чтоб вот совсем понятно было
"baud_rate": {
"title": "Baud rate",
"address": 357,
"reg_type": "holding",
"format": "s16",
"enum": [
0,
1,
2,
3,
4
],
"default": 3,
"enum_titles": [
"1200",
"2400",
"4800",
"9600",
"19200"
],
"group": "settings",
"order": 2
}
вот его бы хотелось писать 16 функцией, а оно пишется 6
и как в шаблоне сказать чтобы читать не по 1 регистру по минимум по 2 или как то более оптимизировано?
Обратите внимания на документацию, пожалуйста.
Добры день,
Удалось ли решить вопрос?