Короткий обзор увлажнителя Xiaomi MIJIA Intelligent UV-C и интеграция в Home Assistant


Небольшой обзор достаточно новой модели увлажнителя Xiaomi MIJIA Intelligent UV-C (zhimi.airpurifier.ma4) и моя интеграция его в Home Assistant

Характеристики, от производителя

  • Мощность: 25 W
  • Объем: 4.5 л
  • Уровень шума: 38 дБ
  • Тип подключения: Wi-Fi
  • Wi-Fi: 802.11 b/g/n, 2.4 ГГц
  • Взаимодействие с мобильным приложением: Mi Home
  • УФ лампа
  • Индикация: Низкого уровня воды
  • Увлажнение Продолжительность работы: до 15 ч
  • Расход воды: 300 — 350 мл/ч
  • Источник питания: От сети
  • Параметры входа: 220V ~50 Hz
  • Размеры: 190 х 190 х 353 мм
  • Вес (g): 1900


Пару уточнений от меня


Уф лампа действует только на ту воду, что уходит в распылитель, соответственно толку в ней немного
Wifi работает стабильно, в отличие от розеток xiaomi пропажи сигнала нет
Шум достаточно сильный, но спать можно, от режима к режиму громкость почти не меняется
Есть 3 режима мощности, а так же встроенная функция «держать заданный уровень влажности»
Можно снять бачок отдельно и долить его, при этом почти не капает
Есть индикация снятого бака
Есть прозрачная полоска для слежения за уровнем воды
Есть встроенный датчик влажности и температуры, недоступные из mi home
Китайская вилка(встроенная)

Фото и личный опыт


Фото снаружи, и со снятым баком







Купил увлажнитель зимой 20 года, выбирая по двум критериям — во первых, не слишком дорогой, во вторых — с интеграцией в умный дом. В тот момент я использовал инфраструктуру xiaomi mi home, соответственно выбрал эту модель, в дальнейшем я перешел на Home Assistant, и подключил его туда. Увлажнитель меня полностью устроил, каких-то проблем с ним нет. Единственное — наполненный бак с кухни таскать тяжело девушке:) Установлен он в спальне, при засыпании с увлажнителем как будто стал лучше себя чувствовать с утра, но вполне возможно что это эффект плацебо.
При максимальной мощности полного бака хватает чуть больше чем на ночь, при этом на верхней крышке образуются капли. Шум не мешает спать, но возможно кому-то более чувствительному будет мешать, увлажнитель периодически булькает доливая себя из бака. Датчик влажности увлажнителя завышает во время работы на 5-7% (сравнивал с двумя датчиками в другом конце комнаты)
Вот фотографии от xiaomi как он выглядит внутри



Работа с приложением Mi Home

Подключение к mi home стандартное, если включено авто обнаружение — устройство найдется само, если нет — его нужно выбрать и добавить, даже нужно настроить wifi, обновить прошивку если предложит — собственно и все. Регион должен быть — Китай, или нужно ставить патченную версию приложения
Скриншоты из mi home:



Из приложения можно отключать и включать подсветку, пикающий динамик, менять режим работы, выставлять необходимый уровень влажности который увлажнитель будет поддерживать. Можно настраивать авто включение и другие автоматизации, останавливаться на этом подробнее не буду

Интеграция в Home Assistant

Гаджет достаточно новый, встроенной поддержки пока еще нет(версия 0.111.0b1). Для интеграции нужно установить сторонний компонент github.com/syssi/xiaomi_airpurifier
Сделать это можно через HACS, если у вас полноценный HASS, либо поместив файлы компонента в каталог /config/custom_components если у вас Home Assistant Core

затем в configuration.yaml
fan:
  - platform: xiaomi_miio
    host: XXX.XXX.XXX.XXX
    token: abcdefg12345abcdefg12345abcdefg12345
    name: Очиститель
    model: zhimi.airpurifier.ma4


Токен можно получить разными путями, самый простой — поставить вместо приложения из play market версию от vevs — www.kapiba.ru/2017/11/mi-home.html, затем зайти в увлажнитель — дополнительные настройки — информация о сети, там и будет токен
Имейте в виду, у всех устройств xiaomi токен разный, от пылесоса не подойдет

После перезапуска hass в разделе «Объекты» появится увлажнитель, если имя сделали на русском как у меня — он его транслитом поменяет на английское в ID объекта



Сходу доступны следующие данные:
Включение и выключение, задание режима мощности
Данные встроенных датчиков температуры и влажности
Подсветка, динамик
Датчик наличия воды, датчик снятия бака
«целевая» влажность

Теперь добавим сенсоры отдельно, чтобы с ними можно было работать. У меня сенсоры вынесены в отдельный файл, подключенный в configuration.yaml с помощью таких строк

binary_sensor: !include binary_sensors.yaml
sensor: !include sensors.yaml


в sensors.yaml прописываем

- platform: template
  sensors:
    airhumidifier_temperature:
      friendly_name: Air Humidifier Temperature
      value_template: '{{ states.fan.uvlazhnitel.attributes.temperature }}'
      unit_of_measurement: '°C'
    airhumidifier_humidity:
      friendly_name: Air Humidifier Humidity
      value_template: '{{ states.fan.uvlazhnitel.attributes.humidity }}'
      unit_of_measurement: '%'
    airhumidifier_mode:
      friendly_name: Air Humidifier Mode
      value_template: '{{ states.fan.uvlazhnitel.attributes.mode }}'
    airhumidifier_target_humidity:
      friendly_name: Air Humidifier Target Humidity
      value_template: '{{ states.fan.uvlazhnitel.attributes.target_humidity }}'
      unit_of_measurement: '%'
    airhumidifier_speed:
      friendly_name: Air Humidifier Speed
      value_template: '{{ states.fan.uvlazhnitel.attributes.speed }}'

в binary_sensors.yaml прописываем

- platform: template
  sensors:
    airhumidifier_water:
      friendly_name: Air Humidifier Water
      value_template: '{{ states.fan.uvlazhnitel.attributes.no_water }}'
    airhumidifier_water_tank:
      friendly_name: Air Humidifier Water Tank
      value_template: '{{ states.fan.uvlazhnitel.attributes.water_tank_detached }}'


Вместо fan.uvlazhnitel вам нужно будет подставить ваш ID увлажнителя. Теперь в «Объектах» у нас будут доступны как отдельные сенсоры все перечисленные, и их можно будет использовать в автоматизациях

Для начала добавим кнопку в Lovelace, которая будет включать и выключать увлажнитель, код:
entity: fan.uvlazhnitel
hold_action:
  action: more-info
icon: 'mdi:water'
icon_height: 50px
show_icon: true
show_name: true
tap_action:
  action: toggle
type: button



Во включенном состоянии капля будет желтая, в выключенном — синяя, если увлажнитель отключен от сети или розетки — серая

А вот несколько примеров автоматизации. Автоматизации прописываются в automations.yaml
# Нотификации
# Уведомление о закончившейся воде  в увлажнителе
- alias: Уведомление о закончившейся воде  в увлажнителе
  trigger:
    entity_id: sensor.airhumidifier_water
    platform: state
    to: 'on'
  action:
    service: telegram_bot.send_message
    data:
      message: В увлажнителе закончилась вода!
      target: ХХХХХХХ
      timeout: 15000
# Уведомление о включении увлажнителя
- alias: Уведомление о включении увлажнителя
  trigger:
    entity_id: sensor.airhumidifier_speed
    platform: state
    to: 'High'
  action:
    service: telegram_bot.send_message
    data:
      message: "Увлажнитель включен - текущая влажность {{ states('sensor.humidity_158d000ХХХХХХХ') }}% "
      target: ХХХХХХХ
      timeout: 15000
# Уведомление об отключении увлажнителя
- alias: Уведомление об отключении увлажнителя
  trigger:
    entity_id: sensor.airhumidifier_speed
    platform: state
    from: 'High'
  action:
    service: telegram_bot.send_message
    data:
      message: "Увлажнитель выключен - текущая влажность {{ states('sensor.humidity_158d000ХХХХХХХ') }}% "
      target: ХХХХХХХХХХХ
      timeout: 15000

Тут sensor.humidity_158d000ХХХХХХХ — внешний датчик влажности, расположенный у кровати, подальше от увлажнителя
Если нет внешних датчиков можно использовать встроенный, или не использовать влажность в нотификации

# Включение и отключение по расписанию

# Включение увлажнителя
- alias: Включение увлажнителя примерно с 22:00
  trigger:
    - platform: time_pattern
      minutes: "/5"
  condition:
      condition: and
      conditions:
      - condition: time
        after: '22:00:00'
        before: '11:00:00'
      - condition: numeric_state
        entity_id: sensor.humidity_158d000ХХХХХХХ
        below: 45
      - condition: state
        entity_id: sensor.airhumidifier_water
        state: 'off'
  action:
    - service: fan.turn_on
      entity_id: fan.uvlazhnitel
    - service: fan.set_speed
      entity_id: fan.uvlazhnitel
      data:
        speed: 'High'

# Отключение при нахождении в лимитах влажности
- alias: Отключение увлажнителя при достижении предела влажности
  trigger:
    - platform: time_pattern
      minutes: "/5"
  condition:
      condition: and
      conditions:
      - condition: time
        after: '22:10:00'
        before: '11:10:00'
      - condition: numeric_state
        entity_id: sensor.humidity_158d000ХХХХХХХ
        above: 55
  action:
      service: fan.turn_off
      entity_id: fan.uvlazhnitel

# Отключение в 11:15
- alias: Отключение увлажнителя в 11:15
  trigger:
    - platform: time
      at: '11:15:00'
  action:
      service: fan.turn_off
      entity_id: fan.uvlazhnitel


Логика такая — если влажность меньше 45%, время после 22:00, и увлажнитель еще не включен — включаем его. Если влажность достигает 55% — отключаем его, в 11:15 отключаем его насовсем. Граница установлена с разницей в 10% для того чтобы он не работал в режиме постоянного включения-выключения, а днем влажность в спальне уже не нужна.

Вот и все, если есть вопросы — задавайте в комментариях!
Планирую купить +11 Добавить в избранное +14 +30
+
avatar
  • QNX
  • 05 июня 2020, 19:01
0
Если бы это фигня еще могла в себя воду заливать, автоматически было бы полезнее, чем просто управление через вафлю.

А то при максимальном режиме воды в бачке на ночь может не хватить. У меня по проще вариант, без мозгов :)
+
avatar
0
кстати, странно, что нет некой интеграции в водопровод, пусть и за доп плату
дома тупой бонеко нужно каждый день доливать
+
avatar
+2
Какой-такой водопровод? Туда нужно лить воду после обратного осмоса, чтобы вся ваша комната не покрылась догадайтесь с 3-х раз чем )
+
avatar
+1
ну так трубку после осмоса? или это запрещено?
+
avatar
+1
Конечно запрещено! Соседями снизу ))
Это тогда нужно колхозить ограничители и все такое. Целый серьезный проект.
Да оно и не стоит того. Бака хватает на несколько ночей (у меня правда старая версия этого увлажнителя).
+
avatar
+1
В принципе, достаточно фильтра если вода мягкая
+
avatar
+1
Просто в мягкой воде также присутствуют растворённые соли щёлочноземельных металлов, главным образом, кальция и магния. К сожалению налет по-любому будет.
+
avatar
0
обычно их ставят там где спят, а тащить воду туда не каждый решится
+
avatar
  • Jet
  • 06 июня 2020, 02:21
+1
Думается мне за всеми плюшками плюнули на производительность, 350 мл при 10% дома зимой только туалет увлажнять
+
avatar
+1
Логика такая — если влажность меньше 45%, время после 22:00, и увлажнитель еще не включен — включаем его. Если влажность достигает 55% — отключаем его, в 11:15 отключаем его насовсем
+ Если открыто окно (включен бризер) то тоже не включаем.

Ну и кмк 45% — это очень комфортно, вот ниже 30% — уже ой.
+
avatar
+1
Как альтернативный вариант, можно взять обычный Deerma c физической крутилкой и запихнуть внутрь реле Sonoff. Дальше настраивать желаемые сценарии
У меня 2 таких комплекта. Один с TH10 и выносным датчиком, другой с Basic. Включаются автоматически за час до сна. Датчик поставил потому что был лишний. Прекрасно понимаю, что это всё костыль и к тому же при включенном увлажнителе на расстоянии 30см показания датчика будут так себе достоверные. :)
+
avatar
+1
Так и сделал этой зимой. Только не Сонофф, а Ми. Получилось неплохо
+
avatar
  • Zardek
  • 05 июня 2020, 22:09
+1
Имхо. Есть смысл добавить и купить обычный humidifier 2.
+
avatar
-1
Такая производительность годится только для собачей будки.