Настройка виртуальных устройств

Материал из Система Swiitch
Перейти к навигации Перейти к поиску

В этой инструкции описывается настройка виртуальных устройств на всех контроллерах линеек Home и Uni (кроме Swiitch Home Controller) с версией прошивки не ниже 3.836. В качестве виртуальных могут выступать внешние устройства других производителей, устройства DIY, а также внутренние группы устройств Swiitch.

Настройка делается в Web-интерфейсе контроллера: Личный кабинет > Контроллеры > Нужный контроллер > Кнопка «Информация», в открывшемся окне нажать на ссылку IP, чтобы перейти в Web-интерфейс.

Выберите раздел «Виртуальные» в основном меню. Далее заполните нужные параметры в карточке виртуального устройства:
Протокол: выбираем нужный протокол для виртуального устройства (устройство должно поддерживать этот протокол)
Тип: выбираем нужный тип для виртуального устройства

Типы устройств

«Реле» – Устройство с двумя состояниями (включено / выключено)
«Диммер» – Устройство с возможностью регулировки яркости
«Диммер и температура» – Устройство с возможностью регулировки яркости и изменения температуры свечения
«RGB» – Устройство с возможностью изменения яркости и цвета свечения
«RGB и температура» – Устройство с возможностью изменения яркости, цвета и температуры свечения
«Датчик температуры» – Датчик температуры
«Датчик темп и влажности» – Датчик температуры и влажности
«Дискретный датчик» – Датчик с двумя состояниями (замкнуто / размокнуто)
«Аналоговый датчик» – Датчик с аналоговым значением
«Датчик давления» – Датчик давления
«Датчик освещенности» – Датчик освещенности
«Датчик CO2» – Датчик углекислого газа
«Кнопка» – Датчик с событием «Нажатие кнопки»
«Датчик протечки» – Датчик протечки, выдает событие «Протечка»
«Датчик утечки газа» – Датчик утечки газа, выдает событие «Утечка газа»
«Датчик движения» – Датчик движения, выдает событие «Есть движение / Нет движения»
«Охранный датчик» – Датчик движения, выдает событие «Тревога проникновения»
«Счетчик энергии» – Устройство, показывающее количество использованной энергии

Протокол HTTP GET

ВНИМАНИЕ!: на данный момент этот протокол работает только с исполнительными устройствами («Реле», «Диммер», «Диммер и температура», «RGB»).

Для включения / выключения устройства необходимо в разделе «Управление» прописать в поля «Включить» и «Выключить» строки http для включения / выключения (берем данные из инструкции на устройство).
Пример: «Включить» = http://192.168.1.55/?state=on
Пример: «Выключить» = http://192.168.1.55/?state=off

ВНИМАНИЕ!: у одного устройства можно управлять только одним параметром – либо цветом либо температурой свечения.

Для управления яркостью устройства необходимо в поле «Данные/Яркость» прописать строку управления яркостью устройства, вместо значения прописать %value%
Пример: «Данные/Яркость» = http://192.168.1.55/?brightness=%value%

Для управления цветом или температурой свечения необходимо в поле «Данные/Цвет» прописать строку управления цветом или температурой свечения устройства, вместо значения прописать %value%
Пример: «Данные/Цвет» = http://192.168.1.55/?color=%value%

Протокол MQTT

Для включения устройства необходимо прописать в поле «Включить» канал MQTT для включения устройства, а в параметр «Включить» – значение, отправляемое в выбранный канал MQTT.
Пример:
В разделе «Управление»: «Включить» = /diy_device/set
В разделе «Параметр»: «Включить» = on

Для выключения устройства необходимо прописать в поле «Выключить» канал MQTT для выключения устройства, а в параметр «Выключить» – значение, отправляемое в выбранный канал MQTT.
Пример:
В разделе «Управление»: «Выключить» = /diy_device/set
В разделе «Параметр»: «Выключить» = off

Для управления яркостью устройства необходимо прописать в поле «Данные/Яркость» канал MQTT для изменения яркости устройства, значение яркости будет отправляться в выбранный канал MQTT.
Пример: «Данные/Яркость» = /diy_device/brightness

Для управления цветом или температурой свечения необходимо прописать в поле «Данные/Цвет» канал MQTT для изменения цвета или температуры свечения. Значение цвета или температуры свечения будет отправляться в выбранный канал MQTT.
Пример: «Данные/Цвет» = /diy_device/color

Для работы с датчиками «Датчик температуры», «Датчик темп и влажности», «Аналоговый датчик», «Датчик давления», «Датчик освещенности», «Датчик CO2», «Счетчик энергии» необходимо прописать в поле «Данные/Яркость» канал MQTT, в котором будут получаться данные датчика. Для датчика типа «Датчик темп и влажности» также нужно указать в поле «Данные/Цвет» канал MQTT, в котором будут получаться данные влажности. В поле «Включить/Множитель» и «Выключить/Множитель» нужно прописать множитель для читаемых данных.
Пример: «Данные/Яркость» = /diy_device/temp
В разделе «Параметр»: «Включить/Множитель» = 1
«Выключить/Множитель» = 1

Для работы с датчиками «Дискретный датчик», «Кнопка», «Датчик протечки», «Датчик утечки газа», «Датчик движения», «Охранный датчик» необходимо прописать в поле «Данные/Яркость» канал MQTT, в котором будут получаться данные датчика, а в разделе «Параметр» в поле «Включить/Множитель» прописать значение, при котором будет считаться, что датчик включен/замкнут, остальные значения, прочитанные из выбранного канала MQTT будут восприниматься, как состояние датчика «выключен/разомкнут».
Пример:
В разделе «Управление»: «Включить» = /diy_device/motion
В разделе «Параметр»: «Включить/Множитель» = true

Протокол Modbus RTU

Для работы по этому протоколу необходим модуль расширения Home Ext Modbus RTU.

Для включения устройства необходимо прописать в поле «Включить» ячейку для включения устройства, а в параметр «Включить» – значение, записываемое в выбранную ячейку.
Формат: x:y/z
x – тип команды Modbus RTU: «r» - 0x06 Write register или «c» - 0x05 Write coil
y – адрес устройства Modbus RTU: 1-255
z – ячейка устройства Modbus RTU: 0-65535
Пример:
В разделе «Управление»: «Включить» = r:3/1
В разделе «Параметр»: «Включить/Множитель» = 255

Для выключения устройства необходимо прописать в поле «Выключить» ячейку для выключения устройства, а в параметр «Выключить» – значение, записываемое в выбранную ячейку
Формат: x:y/z
x – тип команды Modbus RTU: «r» - 0x06 Write register или «c» - 0x05 Write coil
y – адрес устройства Modbus RTU: 1-255
z – ячейка устройства Modbus RTU: 0-65535
Пример:
В разделе «Управление»: «Выключить» = r:3/1
В разделе «Параметр»: «Выключить/Множитель» = 0

ВНИМАНИЕ!Изменение цвета и температуры свечения на данный момент не поддерживается.

Для работы с датчиками «Датчик температуры», «Датчик темп и влажности», «Аналоговый датчик», «Датчик давления», «Датчик освещенности», «Датчик CO2», «Счетчик энергии» необходимо прописать в поле «Данные/Яркость» ячейку устройства Modbus RTU, из которой будут читаться данные датчика. Для датчика «Датчик темп и влажности» также нужно указать в поле «Данные/Цвет» ячейку, из которой будут читаться данные влажности. В поле «Включить/Множитель» и «Выключить/Множитель» нужно прописать множитель для читаемых данных. Дополнительно для отправки уставки температуры на устройства Modbus RTU можно указать в поле «Включить» ячейку Modbus RTU, в которую будут записываться данные уставки температуры и параметр «Яркость/Множитель», на значение которого будет умножаться температура уставки.
Формат: x:y/z
x – тип команды Modbus RTU: «r» - 0x03 Read holding register register, «ri» - 0x04 Read input register, «c» - Read coil, «ci» - Read input coil
y – адрес устройства Modbus RTU: 1-255
z – ячейка устройства Modbus RTU: 0-65535
Пример:
В разделе «Управление»: «Данные/Яркость» = ri:1/1
В разделе «Управление»: «Данные/Цвет» = ri:1/2
В разделе «Управление»: «Управление-Включить» = ri:1/20
В разделе «Параметр»: «Включить» = 0.1
В разделе «Параметр»: «Выключить» = 0.1
В разделе «Параметр»: «Яркость/Множитель» = 1

Для работы с датчиками «Дискретный датчик», «Кнопка», «Датчик протечки», «Датчик утечки газа», «Датчик движения», «Охранный датчик» необходимо прописать в поле «Данные/Яркость» ячейку устройства Modbus RTU, из которой будут читаться данные датчика, а в разделе «Параметр» в поле «Включить» прописать значение, при котором будет считаться, что датчик включен/замкнут, остальные значения прочитанные из выбранной ячейки будут восприниматься, как состояние датчика «выключен/разомкнут». Дополнительно при команде «Поставить на охрану» будут записываться в ячейку «Управление» > «Включить» данные из поля «Параметр» > «Включить», а при команде «Снять с охраны» будут записываться в ячейку «Управление» > «Выключить» данные из поля «Параметр» > «Выключить»
Формат: x:y/z
x – тип команды Modbus RTU: «r» - 0x03 Read holding register register, «ri» - 0x04 Read input register, «c» - Read coil, «ci» - Read input coil
y – адрес устройства Modbus RTU: 1-255
z – ячейка устройства Modbus RTU: 0-65535
Пример:
В разделе «Управление»: «Включить» = ri:1/1
В разделе «Параметр»: «Включить» = 255

Протокол Modbus TCP

На данный момент не поддерживается

Протокол Yeelight

В поле "Данные/Яркость" необходимо прописать ip адрес светильника Yeelight
Формат : ip[:port][/bg]:
ip - IP адрес светильника
[:port] - порт светильника (можно не указывать)
[/bg] - для указания что это виртуальное устройство будет управлять подсветкой выбранного светильника
Пример : Пример: "Данные/Яркость" = 192.168.1.15/bg - управление подсветкой светильника с IP адресом 192.168.1.15


Внимание, для корректной работы светильника Yeelight необходимо:
В настройках роутера - прописать фиксированный адрес для каждого светильника Yeelight (см. инструкцию на роутер)
В настройках штатного приложения Yeelight - вклчюить режим "Управление по LAN"
https://sprut.ai/article/yeelight-rezhim-razrabotchika-dobavlenie-v-domoticz

Протокол «Глобальная группа»


Внимание, для работы необходимо чтобы все устройства входящие в выбранную глобальную группу были подключены у облачному серверу Swiitch или были подключены к одному брокеру MQTT
Для управления группами устройств Swiitch, необходимо в поле "Данные/Яркость" прописать выбранную глобальную группу, а также во все устройства Swiitch прописать эту же глобальную группу
Пример: "Данные/Яркость" = 5

Для работы с датчиками "Датчик температуры", "Датчик темп и влажности", "Аналоговый датчик", "Датчик давления", "Датчик освещенности", "Датчик CO2", "Счетчик энергии", необходимо прописать в поле "Данные/Яркость", прописать выбранную глобальную группу, а также во все датчики Swiitch прописать эту же глобальную группу, в поле "Включить/Множитель" и "Выключить/Множитель" нужно прописать множитель для читаемых данных
Пример:
"Данные/Яркость" = 5
"Параметр" - "Включить" = 1
"Параметр" - "Выключить" = 1

Для работы с датчиками "Дискретный датчик", "Кнопка", "Датчик протечки", "Датчик утечки газа", "Датчик движения", "Охранный датчик", необходимо прописать в поле "Данные/Яркость", прописать выбранную глобальную группу, а также во все датчики Swiitch прописать эту же глобальную группу
Пример:
"Данные/Яркость" = 2


Внимание, в виртуальный датчики будут отображаться данные с последнего датчика отправившего свои данные

Протокол Noolite и Noolite F

Для работы необходим модуль расширения Home Ext Noolite
Для управления устройством Noolite или получения данных от датчика Noolite, необходимо в поле "Данные/Яркость" - прописать номер Noolite канала 1-31
Пример: "Данные/Яркость" = 3

Для привязки датчика, необходимо в веб интерфейсе нажать кнопку "Связать", потом нажать кнопку привязки на датчике (см. инструкцию на датчик)

Для привязки исполнительного устройство, необходимо на устройстве Noolite нажать кнопку привязки (см. инструкцию на устройство), потом в веб интерфейсе нажать кнопку "Связать" и после подтвердить привязку на устройстве Noolite (см. инструкцию на устройство)

Для очистки канала, в веб интерфейсе необходимо нажать кнопку "Отвязать"