RU | EN
Набор инструментов для работы с Modbus с функцией автоопроса устройства с помощью файлов конфигурации. Подходит для любых устройств, подключенных через Modbus RTU. Конфиги для продукции Gidrolock в комплекте.
Позволяет формировать простые сообщения для отправки на устройство.
Modbus TCP пока в разработке.
Конфигурация — это .json файл с описанием команд чтения для конкретных моделей устройств.
Запись checkEntry в конфигурации позволяет перебирать файлы в папке для определения подходящей конфигурации.
Поля и возможные значения:
{
// Имя устройства/конфигурации
"name": "Gidrolock Standard Wi-Fi RS-485",
// Описание
"description": "Умный блок управления водопроводными кранами с поддержкой проводных и беспроводных датчиков.",
// Проверочная запись.
// Используется для автоподбора конфигурации при выборе папки и для мягкой проверки при выборе одного файла
"checkEntry": {
// тип регистра: "coil", "discrete", "input", "holding"
"registerType": "input",
// физический адрес регистра (не путать с логическими адресами, которые больше на 1)
"address": 200,
// количество опрашиваемых регистров
"length": 6,
// тип данных, в которые будут конвертироваться значения регистров
// доступны: bool, uint16, uint32, string
"dataType": "string",
// ожидаемый ответ от устройства
"expectedValue": "STW485"
},
// Запись с Modbus ID устройства для быстрой смены
"idEntry": {
"registerType": "holding",
"address": 128,
"length": 1,
"dataType": "uint16"
},
// Запись с бодрейтом устройства для быстрой смены
"speedEntry": {
"registerType": "holding",
"address": 110,
"length": 1,
"dataType": "uint16"
},
// Массив записей, которые будет опрашивать приложение
"entries": [
{
"name": "Модель",
"registerType": "input",
"address": 200,
"length": 6,
"dataType": "string",
// Флаг разового чтения. Автоматически снимает галочку опроса в UI после одного опроса.
"readOnce": true
},
{
"name": "Авария",
"registerType": "coil",
"address": 1201,
"length": 1,
"dataType": "bool",
// Значения для парсинга ответа от устройства
"valueParse": {
"0": "Выкл",
"1": "Вкл"
},
{
"name": "Уровень сигнала",
"registerType": "input",
"address": 1247,
"length": 21,
"dataType": "uint16",
// Названия для отдельных регистров при групповом опросе
"labels": [
"WSR 1",
"WSR 2",
"WSR 3",
"WSR 4",
"WSR 5",
"WSR 6",
"WSR 7",
"WSR 8",
"WSR 9",
"WSP 10",
"WSR 11",
"WSR 12",
"WSR 13",
"WSR 14",
"WSR 15",
"WSR 16",
"WSR 17",
"WSR 18",
"WSR 19",
"WSR 20",
"WSR 21"
]
}
]
}