Умный дом достиг дзена: Креативная автоматизация стирки в Home Assistant с Алисой
Уже давно я оптимизирую и обучаю свой Умный дом уму-разуму, и, признаться честно, мне кажется, что в какой-то мере он уже достиг настоящего кибер-дзена! 🧘♂️ Большинство сценариев выверено до миллисекунд и работает четко, как швейцарские часы. Но, как истинный гик, я знаю: нет предела совершенству! Некоторые скрипты все еще требуют доработки — иногда это упирается в покупку дополнительных железок, а пока я виртуозно латаю аппаратные дыры хитрыми умными условиями. 🛠️
Решил делиться с вами годными идеями для автоматизаций. Вдруг кому-то из вас тоже захочется прокачать свое жилище и сделать такую же или подобную фичу? В общем, ловите интересную и очень жизненную автоматизацию для стиральной машины. 🧦✨
💡 Зачем это нужно и где применять?
Знакома ли вам ситуация, когда вы закинули белье в машинку и благополучно ушли смотреть сериал, а вспомнили о нем только на следующий день, когда оно уже приобрело специфический аромат? Или эти бесконечные походы в ванную, чтобы проверить: «Ну что, отжала или еще крутит?»
Эта автоматизация Home Assistant решает сразу несколько проблем:
-
Защита от «прокисания» вещей: Колонка напомнит о стирке сразу по завершении, но только если вы находитесь в комнате. Если вас нет — она подождет вашего возвращения и только потом выдаст базу.
-
Контроль времени: Если машинка стирает подозрительно долго (больше часа), система иронично об этом сообщит.
-
Развлечение: Сообщения рандомизированы, поэтому каждый раз ваш цифровой дворецкий будет выдавать новую забавную фразу.
🛒 Что понадобится для реализации?
Чтобы магия сработала, нам нужен минимальный джентльменский набор гика:
-
🔌 Умная розетка с мониторингом энергопотребления (чтобы понимать, когда машинка потребляет ток, а когда простаивает).
-
👁️ Датчик движения или присутствия (чтобы колонка не вещала в пустую стену, а ждала появления кожаного мешка в комнате).
-
🗣️ Умная колонка (в моем случае Яндекс.Станция с Алисой, но подойдет любая интегрированная в систему).
💻 Код автоматизации (YAML)
Я специально заменил свои зубодробительные ID устройств на понятные названия, чтобы вам было проще адаптировать код под себя. Просто скопируйте и подставьте свои сущности:
alias: 'Ванная : Стиральная машина : Оповещения и комментарии Алисы'
description: >-
Комментирует долгую стирку (>1 ч) и сообщает о завершении, когда кто-то есть в гостиной.
triggers:
- trigger: numeric_state
entity_id: sensor.smart_plug_power # <--- Ваша умная розетка на стиралке
above: 3
for:
hours: 1
id: washing_long
- trigger: numeric_state
entity_id: sensor.smart_plug_power # <--- Ваша умная розетка на стиралке
below: 2
for:
minutes: 5
id: washing_done
conditions:
- condition: template
value_template: >-
{{ trigger is not defined or trigger.from_state.state not in
['unavailable', 'unknown', 'none'] }}
actions:
- choose:
- conditions:
- condition: trigger
id: washing_long
sequence:
- if:
- condition: state
entity_id: binary_sensor.living_room_occupancy # <--- Ваш датчик присутствия/движения
state: 'off'
then:
- wait_for_trigger:
- trigger: state
entity_id: binary_sensor.living_room_occupancy # <--- Ваш датчик присутствия/движения
to: 'on'
timeout:
minutes: 30
continue_on_timeout: false
- action: media_player.play_media
target:
entity_id: media_player.yandex_station # <--- Ваша умная колонка
dаta:
media:
media_content_id: |-
{{ [
'Не переживай, человек, стирка в самом разгаре — вещички полощутся на максимальных оборотах!',
'В ванной продолжается пенная вечеринка уже целый час. Твой гардероб проходит тотальную дезинфекцию, не переживай.',
'Машинка крутит уже больше часа. Грязи объявлена война до победного конца, скоро закончим.',
'Докладываю: процесс еще идет, трусишки намылены и крутятся в барабане. Не бегай в ванную зря!'
] | random }}
media_content_type: text
metadаta: {}
- conditions:
- condition: trigger
id: washing_done
sequence:
- if:
- condition: state
entity_id: binary_sensor.living_room_occupancy # <--- Ваш датчик присутствия/движения
state: 'off'
then:
- wait_for_trigger:
- trigger: state
entity_id: binary_sensor.living_room_occupancy # <--- Ваш датчик присутствия/движения
to: 'on'
timeout:
hours: 6
continue_on_timeout: false
- action: media_player.play_media
target:
entity_id: media_player.yandex_station # <--- Ваша умная колонка
dаta:
media:
media_content_id: |-
{{ [
'Хозяин, забери портки постиранные, а то прокиснут!',
'Стирочка закончилась. Будем ждать, пока белье прямо в барабане высохнет, или все-таки развесим?',
'Человек, миссия выполнена! Чистые вещи томятся в ванной и требуют срочной эвакуации на сушилку.',
'Капитан, стиральная машина отчиталась об успехе! Пора размяться и развесить вещи, пока они не слежались в один ком.',
'Барабан остановился, подвиг совершен! Бегом в ванную разбирать чистую добычу.'
] | random }}
media_content_type: text
metadаta: {}
mode: restart
🍪 Итоги
Я искренне думаю, что подобная автоматизация должна быть у каждого, чтобы не навещать свою машинку в ванной каждые пять минут и не гипнотизировать бельевую карусель. 🌀 Сидишь себе часик с печенькой, попиваешь чаек, а тебе умная колонка сама сообщает, когда идти забирать бельишко. Причем каждый раз креативненько, чтобы не было скучно!
Кстати, для самых продвинутых: тут можно пойти еще дальше и напрячь локальную нейросеть (через Ollama, например) или саму Алису, чтобы она на лету генерировала уникальные фразы. Но это уже тема для отдельного поста. 😉
Пользуйтесь на здоровье, внедряйте в свой Умный дом и обязательно делитесь своими идеями и доработками в комментариях! 👇
- misterleks от