Редко используемые темы modbus:

Добавление сторонних modbus устройств.

Новые устройства modbus, также как и модули ввода-вывода RKT описываются в файле с расширением "mbd" (modbus device).

Создается в текстовом редакторе.

Формат mbd файла: JSON

В "Настройка modbus(модули ввода вывода)" в поле Тип вручную ввести имя файла mbd без расширения.

Схема mbd файла

mbd файл содержит объект, который содержит 2 поля: cycle_reqs и signal_write_reqs.

Поля, начинающиеся с "_c" используются для комментариев.

Два типа переменных: циклические (cycle_reqs) и сигнальные (signal_write_reqs). Циклические переменные читаются и записываются в цикле - постоянно. Запись в цикле выполняется для надежности - например, если перезагружен модуль ввода вывода, а переменная не установленна. Применяются для работы с модулями ввода вывода и подобными устройствами. Обычно запрос читает и записывет несколько переменных.

Сигнальные переменные - только для записи в модбас. Запись происходит только тогда, когда приходит сигнал изменения переменной. Применяются для конфигурирования модулей ввода вывода и др.

{
 "_c":"modbus запросы",
 "cycle_reqs" :[ // массив циклических запросов
   {
     "_c": "Запрос",
     "func" : 2, // номера modbus функции:1,2,3,4,5,6,0xF,0x10.
     "var_type" : "DS", // тип переменных: "DS" - дискретные, "AN" - аналоговые,"IN" - целые.
     "A" : 1,"B" : 0, // не обязательные, val = A * val + B, в "vars"
     "vars" : [ // массив адресов и имен переменных
       {
         "adr":1, // адрес регистра в modbus устройстве 
         "name":"DI1", // имя переменной
         "A" : 1,"B" : 0, // не обязательные, val = A * val + B
         "type" : "float_le",// не обязательное, задает не стандартный тип данных modbus:
                  // float, float_le, int4, int4_le, signed 
       },
     ]
   },
 ],
 "signal_write_reqs" :[ // массив сигнальных переменных 
   {
     "adr":61, // адрес регистра в modbus устройстве
     "name":"DO1_disconnect", // имя переменной
     "type" : "reg" // тип данных modbus: coil, reg, float, float_le, int4, int4_le
     "A" : 1,"B" : 0, // не обязательные, val = A * val + B
   }, 
 ]
}

// Формат JSON не поддерживает комментарии.
// Здесь они приведены для понимания и должны быть удалены. 

Расширенные настройки modbus

В "Настройка modbus(модули ввода вывода)" в левой части можно дополнително задать параметры RS-485 соединения: baud, parity, databits, stopbits. Имя системы должно начинаться с mb.

Использование сети modbus TCP.

Для использования modbus TCP необходимо поставить соответствующую галку и задать адрес хоста и порт.

Добавление сетей modbus RTU с помощью адаптеров USB-RS485.

К контроллеру RKT можно подключить дополнительные интерфейсы USB-RS485. Непосредственно к контроллеру из соображений питания можно подключить один интерфейс, а остальные через USB концентратор.

Затем нажать кнопку USB-RS485 и скопировать из списка имя интерфейса.