Modbus: База данных

Материал из HOMEd Wiki
HOMEd > Modbus > База данных

Файл базы данных

База данных это файл, в котором хранится описание устройств. По умолчанию это /opt/homed-modbus/database.json. Путь к файлу базы данных может быть изменен в конфигурации. Не обязательно редактировать базу данных автоматизаций вручную, намного проще настраивать устройства через веб-интерфейс.

Структура базы данных

База данных HOMEd Modbus это JSON-объект. Общая структура базы данных выглядит так:

{
  "devices":
  [
    {
      "active": true,
      "type": "homedRelayController",
      "portId": 1,
      "slaveId": 11,
      "baudRate": 115200,
      "pollInterval": 1000,
      "requestTimeout": 1000,
      "replyTimeout": 5,
      "name": "Relay Controller",
      "cloud": true,
      "discovery": false
    },
    {
      "active": true,
      "type": "customController",
      "portId": 2,
      "slaveId": 25,
      "baudRate": 9600,
      "pollInterval": 1000,
      "requestTimeout": 1000,
      "replyTimeout": 10,
      "name": "Custom Controller",
      "cloud": false,
      "discovery": true,
      "items":
      [
        ...
      ],
      "options":
      {
        ...
      }
    }
  ]
}

Параметры устройств

active

Включение/выключение устройства.

type

Тип устройства. Возможные варианты:

  • homedRelayController
  • homedSwitchController
  • customController

portId

Номер порта к которому подключено устройство, в соответствии с конфигурацией.

slaveId

Адрес устройства.

baudRate

Скорость обмена данными с устройством.

pollInterval

Период опроса устройства в миллисекундах.

requestTimeout

Время ожидания ответа от устройства в миллисекундах.

replyTimeout

Время ожидания окончания приема данных от устройства в миллисекундах.

name

Уникальное читаемое имя устройства.

cloud

Включение/выключение проброса устройств в Умный дом Яндкса при помощи HOMEd Cloud.

discovery

Включение/выключение функуии Home Assistant MQTT Discovery для устройства.

bindings

Объект с картой регистров устройства. Актуально только для устройств типа "customController".

options

Объект с опциями устройства. Актуально только для устройств типа "customController".