Home Assistant: различия между версиями

2004 байта добавлено ,  1 месяц назад
 
(не показана 21 промежуточная версия 6 участников)
Строка 11: Строка 11:
{{Wbincludes:Installing Software In Console}}
{{Wbincludes:Installing Software In Console}}


Мы будем использовать рекомендуемый разработчиком платформы метод '''Home Assistant Container''':
Мы будем использовать рекомендуемый разработчиком платформы метод '''Home Assistant Container'''. В нём нет супервизора, поэтому установка аддонов (дополнений) из веб-интерфейса Home Assistant недоступна.
 
В большинстве случаев в дополнение завёрнут сторонний софт: zigbee2mqtt, ESPHome, Node-RED и т.п., который вы можете поставить отдельно теми же контейнерами. Возможно, эта статья по переезду с супервизора в docker вам поможет: [https://ivan.bessarabov.ru/blog/docker-compose-instead-of-home-assistant-supervisor Использование docker-compose.yaml вместо супервизора Home Assistant].
 
Установка:
# Установите docker по [[docker | инструкции]].
# Установите docker по [[docker | инструкции]].
# Создайте каталог под служебные файлы и сделайте на него симлинк:
# Создайте каталог под служебные файлы:
#:<syntaxhighlight lang="bash">
#:<syntaxhighlight lang="bash">
mkdir /mnt/data/root/HA && ln -s /mnt/data/root/HA /HA
mkdir /mnt/data/.HA
</syntaxhighlight>
</syntaxhighlight>
# Запустите образ homeassistant — docker автоматически загрузит его из интернет и запустит:
# Запустите образ homeassistant — docker автоматически загрузит его из интернет и запустит:
#:<syntaxhighlight lang="bash">
#:<syntaxhighlight lang="bash">
docker run -d --name homeassistant --privileged --restart=unless-stopped -e TZ=Europe/Moscow -v /HA:/config --network=host ghcr.io/home-assistant/home-assistant:stable
docker run -d --name homeassistant --privileged --restart=unless-stopped -e TZ=Europe/Moscow -v /mnt/data/.HA:/config --network=host ghcr.io/home-assistant/home-assistant:stable
</syntaxhighlight>
</syntaxhighlight>


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


== Настройка устройств Wiren Board ==
== Работа с устройствами Wiren Board ==
=== Установка MQTT-интеграции ===
=== Установка MQTT-интеграции ===
Home Assistant может управлять Modbus-устройствами с помощью [[MQTT]], для этого нужно установить MQTT-интеграцию и настроить получение и отправку данных.
Home Assistant может управлять Modbus-устройствами с помощью [[MQTT]], для этого нужно установить MQTT-интеграцию и настроить получение и отправку данных.
Строка 53: Строка 57:
Настройка интеграции завершена, теперь надо для каждого устройства создать описание в файле '''configuration.yaml''', для этого откройте файл с помощью редактора:
Настройка интеграции завершена, теперь надо для каждого устройства создать описание в файле '''configuration.yaml''', для этого откройте файл с помощью редактора:
<syntaxhighlight lang="bash">
<syntaxhighlight lang="bash">
mcedit /mnt/data/root/HA/configuration.yaml
nano /mnt/data/.HA/configuration.yaml
</syntaxhighlight>
</syntaxhighlight>


Строка 70: Строка 74:
* Адреса MQTT-топиков смотрите в [[Wiren Board Web Interface | стандартном веб-интерфейсе контроллера]], раздел '''Settings''' → '''MQTT Channels'''.  
* Адреса MQTT-топиков смотрите в [[Wiren Board Web Interface | стандартном веб-интерфейсе контроллера]], раздел '''Settings''' → '''MQTT Channels'''.  
* В ''state_topic'' пишете адрес MQTT-топика, а в ''command_topic'' — тот же адрес, только в конец добавляете <code>/on</code>.
* В ''state_topic'' пишете адрес MQTT-топика, а в ''command_topic'' — тот же адрес, только в конец добавляете <code>/on</code>.
Сенсоры создаются в группе <code>mqtt:</code>, объявленной в примере с датчиком температуры. Подробнее о формате читайте в [https://www.home-assistant.io/integrations/sensor.mqtt/#new_format документации Home Assistant].


Выведем данные с датчика температуры процессора:
Выведем данные с датчика температуры процессора:
<syntaxhighlight lang="yaml">
<syntaxhighlight lang="yaml">
sensor:
mqtt:
  - platform: mqtt
  sensor:
    name: "CPU Temperature"
    - unique_id: wb_cpu_temperature
    unique_id: wb_cpu_temperature
      name: "CPU Temperature"
    state_topic: "/devices/hwmon/controls/CPU Temperature"
      state_topic: "/devices/hwmon/controls/CPU Temperature"
    unit_of_measurement: "°C"
      unit_of_measurement: "°C"
</syntaxhighlight>
</syntaxhighlight>


Настроим управление выходами '''A1''' и '''A2''', этот пример можно использовать для управления модулями реле:
Настроим управление выходами '''A1''' и '''A2''', этот пример можно использовать для управления модулями реле:
<syntaxhighlight lang="yaml">
<syntaxhighlight lang="yaml">
switch:
#mqtt:
  - platform: mqtt
  switch:
    name: "WB A1"
    - unique_id: wb_a1_switch
    unique_id: wb_A1
      name: "WB A1 Switch"
    command_topic: "/devices/wb-gpio/controls/A1_OUT/on"
      state_topic: "/devices/wb-gpio/controls/A1_OUT"
    state_topic: "/devices/wb-gpio/controls/A1_OUT"
      command_topic: "/devices/wb-gpio/controls/A1_OUT/on"
    payload_on: "1"
      payload_on: "1"
    payload_off: "0"
      payload_off: "0"
    retain: true
      retain: true
  - platform: mqtt
    - unique_id: wb_a2_switch
    name: "WB A2"
      name: "WB A2 Switch"
    unique_id: wb_A2
      state_topic: "/devices/wb-gpio/controls/A2_OUT"
    command_topic: "/devices/wb-gpio/controls/A2_OUT/on"
      command_topic: "/devices/wb-gpio/controls/A2_OUT/on"
    state_topic: "/devices/wb-gpio/controls/A2_OUT"
      payload_on: "1"
    payload_on: "1"
      payload_off: "0"
    payload_off: "0"
      retain: true
    retain: true
</syntaxhighlight>
</syntaxhighlight>


Настроим управление зуммером контроллера, этот пример можно использовать при подключении диммера светодиодных ламп:
Настроим управление зуммером контроллера, этот пример можно использовать при подключении диммера светодиодных ламп:
<syntaxhighlight lang="yaml">
<syntaxhighlight lang="yaml">
light:
#mqtt:
  - platform: mqtt
  light:
    name: "Buzzer"
    - unique_id: wb_buzzer
    unique_id: wb_buzzer
      name: "Buzzer"  
    state_topic: "/devices/buzzer/controls/enabled"
      state_topic: "/devices/buzzer/controls/enabled"
    command_topic: "/devices/buzzer/controls/enabled/on"
      command_topic: "/devices/buzzer/controls/enabled/on"
    brightness_state_topic: '/devices/buzzer/controls/volume'
      brightness_state_topic: '/devices/buzzer/controls/volume'
    brightness_command_topic: '/devices/buzzer/controls/volume/on'
      brightness_command_topic: '/devices/buzzer/controls/volume/on'
    brightness_scale: 100
      brightness_scale: 100
    payload_on: "1"
      payload_on: "1"
    payload_off: "0"
      payload_off: "0"
    retain: true
      retain: true
</syntaxhighlight>
</syntaxhighlight>
<gallery mode="packed" heights="150px" caption="Настройка Modbus-устройства Wiren Board">
<gallery mode="packed" heights="150px" caption="Настройка Modbus-устройства Wiren Board">
Строка 128: Строка 134:
== Полезные ссылки ==
== Полезные ссылки ==
* [https://www.home-assistant.io/installation/linux#install-home-assistant-container Оригинальная инструкция по установке Home Assistant]
* [https://www.home-assistant.io/installation/linux#install-home-assistant-container Оригинальная инструкция по установке Home Assistant]
* [https://www.home-assistant.io/docs/mqtt/discovery/ Описание Home Assistant MQTT Discovery]
* [https://support.wirenboard.com/t/hass-configurator-file-editor-dlya-home-assistant-wb7 Установка HASS Configurator (File Editor) для Home Assistant на Wiren Board 7]
* [https://support.wirenboard.com/t/integracziya-wirenboard-s-homeassistant/9008/31 Автоматическое добавление serial-устройств в Home Assistant, решение от пользователя]
* [https://support.wirenboard.com/t/wb-engine/13251 Добавление устройств в Home Assistant мышкой из веб-интерфейса через WB-Engine]
* [https://github.com/4mr/wb-mqtt-homeassistant Автоматическое добавление serial-устройств в Home Assistant, решение от пользователя]
* [https://ivan.bessarabov.ru/blog/docker-compose-instead-of-home-assistant-supervisor Использование docker-compose.yaml вместо супервизора Home Assistant]
* [https://www.home-assistant.io/integrations/mqtt#mqtt-discovery Описание Home Assistant MQTT Discovery]
* [https://github.com/wirenboard/conventions/blob/main/README.md Wiren Board MQTT Conventions]
* [https://github.com/wirenboard/conventions/blob/main/README.md Wiren Board MQTT Conventions]
* [[docker | Установка Docker на контроллер Wiren Board]]
* [https://support.wirenboard.com/t/wb-mrgbw-d-i-homeassistant-cherez-mqtt/11566 Преобразование RGB формата для диммера WB-MRGBW-D или WB-LED]
* [https://support.wirenboard.com/t/wb-mrgbw-d-i-homeassistant-cherez-mqtt/11566 Преобразование RGB формата для диммера WB-MRGBW-D]
* [https://support.wirenboard.com/t/dimmer-i-home-assistant/10475/18 Диммер WB-MDM3 и Home Assistant]
* [https://github.com/dext0r/yandex_smart_home Yandex Smart Home (Яндекс Алиса) для Home Assistant]
* [https://support.wirenboard.com/t/instrukcziya-po-ustanovke-home-assistant-stable-c-podderzhkoj-bluetooth-portainer-file-editor-na-kontroller-wirenboard-7-v-docker-compose/19166 Инструкция по установке пользователей портала]
wb_editors
12

правок