MQTT Dash: различия между версиями

 
(не показано 14 промежуточных версий 2 участников)
Строка 1: Строка 1:
{{Draft}}
{{DISPLAYTITLE: Подключение MQTT Dash к контроллеру Wiren Board }}
{{DISPLAYTITLE: MQTT Dash и Wiren Board }}
== Введение ==
== Введение ==
[[Image: MQTTDash_panel1.jpg |200px|thumb|right| Панель управления MQTT Dash ]]
[[Image: MQTTDash_panel1.jpg |170px|thumb|right| Панель управления MQTT Dash ]]
MQTT Dash — мобильное приложение для работы с протоколом [[MQTT | MQTT]]. Позволяет создавать пользовательские панели управления и управлять устройствами умного дома с помощью смартфона или планшета.
MQTT Dash — мобильное приложение для работы с протоколом [[MQTT | MQTT]]. Позволяет создавать пользовательские панели управления и управлять устройствами умного дома с помощью смартфона или планшета.


Строка 30: Строка 29:
</gallery>
</gallery>


== Добавление приборов ==
== Добавление устройств ==
После создания подключения к MQTT-брокеру можно создавать метрики:
После создания подключения к MQTT-брокеру можно создавать метрики:
#Откройте созданное подключение и нажмите «'''+'''» в правом верхнем углу экрана.  
#Откройте созданное подключение и нажмите «'''+'''» в правом верхнем углу экрана.  
#Выберите тип метрики соответствующий типу подключаемого параметра.
#Выберите тип метрики соответствующий типу подключаемого параметра.
#В открывшемся окне настройки задайте '''Имя''' и '''Адрес''' топика. Адрес топика можно посмотреть на вкладке '''Настройки-Каналы MQTT''' в [[Wiren_Board_Web_Interface | веб-интерфейсе]] контроллера или воспользоваться программой [[MQTT_Explorer | MQTT Explorer]]. Удобнее воспользоваться программой.
#В открывшемся окне настройки задайте '''Имя''' и '''Адрес''' топика. Адрес топика можно посмотреть на вкладке '''Настройки-Каналы MQTT''' в [[Wiren_Board_Web_Interface | веб-интерфейсе]] контроллера или воспользоваться программой [[MQTT_Explorer | MQTT Explorer]].
#Поставьте галку '''«Включить публикацию»''', если элемент используется для управления устройством. Иначе, элемент будет только отображать текущее состояние параметра. Топики для чтения и управления могут быть разными, см. подсказки в программе.
#:Обратите внимание, что для чтения значения топика необходимо указать его адрес в поле '''Topic (sub)''' в виде <code>/devices/buzzer/controls/enabled</code>.
#:Для записи параметра в топик необходимо указать в поле '''Topic (pub)''' адрес топика<code>/devices/buzzer/controls/enabled/on</code>.
#Поставьте галку '''«Включить публикацию»''', если метрика используется для публикации значения в топик.  
#Задайте дополнительные параметры метрики, такие как цвет, изображение значка и т.д.
#Задайте дополнительные параметры метрики, такие как цвет, изображение значка и т.д.
#Нажмите дискету в правом верхнем углу. На экране появится созданная метрика. Чтобы не заполнять одни и те же данные при создании нескольких однотипных метрик используйте инструмент '''«Клонировать»'''.
#Нажмите дискету в правом верхнем углу чтобы сохранить созданную метрику. Чтобы не заполнять одни и те же данные при создании нескольких однотипных метрик используйте инструмент '''«Клонировать»'''.
  <gallery mode="packed" heights="350px">
  <gallery mode="packed" heights="350px">
Image: MQTTDash_example1.jpg| Настройка метрики типа ''Переключатель'' для зуммера контроллера Wiren Board
Image: MQTTDash_example1.jpg| Настройка метрики типа ''Переключатель'' для зуммера контроллера Wiren Board
Image: MQTTDash_example2.jpg | Настройка метрики типа ''Переключатель'' для модуля реле WB-MR6C
Image: MQTTDash_example2.jpg | Настройка метрики типа ''Переключатель'' для модуля реле WB-MR6C
Image: MQTTDash_example3.jpg | Настройка метрики типа ''Текст'' для вывода напряжения питания  
Image: MQTTDash_example3.jpg | Настройка метрики типа ''Текст'' для вывода напряжения питания  
Image: MQTTDash_example6.jpg | Настройка метрики типа ''Диапазон'' для управления громкостью зуммера
Image: MQTTDash_example4.jpg | Отображение метрик на панели MQTT Dash
Image: MQTTDash_example4.jpg | Отображение метрик на панели MQTT Dash
</gallery>
</gallery>
== Управление цветом RGB ленты с помощью MQTT Dash ==
[[Image: RGB_mqttdash.jpg |200px|thumb|right| Пример настройки метрики типа ''Цвет'' для управления цветом RGB-ленты]]
Для управления цветом RGB ленты в MQTT Dash есть специальная метрика '''Цвет'''. Но чтобы использовать эту метрику с Wiren Board нужно преобразовать код цвета полученный из MQTT Dash из формата HEX в формат RGB. К контроллеру RGB-лента подключается с помощью диммера светодиодных лент [[WB-MRGBW-D_Modbus_LED_Dimmer | WB-MRGBW-D]].
Для этого можно воспользоваться следующим [[Wb-rules | правилом]] (скриптом):
<syntaxhighlight lang="ecmascript">
defineVirtualDevice("colorButton",
{
title: "Color Buttons",  //Имя виртуального устройства
  cells: {
    "Dimmer 1": {
    type: "text",
    readonly: false,
    //forceDefault: true,
    value: "",
},
  }
});
defineRule("color_convert", {
whenChanged: "colorButton/Dimmer 1", 
then: function (newValue){
if(newValue.substring(0,1) == "#") {
  newValue = newValue.substring(1);
}
      r = parseInt("0x"+newValue.slice(0, 2));
      g = parseInt("0x"+newValue.slice(2, 4));
      b = parseInt("0x"+newValue.slice(4, 6));
      log.info("R;G;B",r+";"+g+";"+b)
      dev["wb-mrgbw-d-fw3_129/RGB Palette"] = r+";"+g+";"+b // R;G;B, строка передаваемая в топик диммера LED-лент
}
});
</syntaxhighlight>
Скрипт создает новый MQTT-топик, который получает HEX-код цвета из MQTT Dash. Затем этот код преобразуется в формат RGB и записывается в соответствующий топик диммера RGB-ленты.
== Полезные ссылки ==
== Полезные ссылки ==
*[[MQTT | MQTT в Wiren Board]]
*[[MQTT | MQTT в Wiren Board]]
translator, wb_editors
4251

правка