Управление протечкой в доме. Практическая реализация и рекомендации

Данную схему я уже собрал и смигрировал ее работу в HA где-то полгода назад и она находилась в тестовом режиме эксплуатации. Постоянно приходилось ее совершенствовать и дорабатывать. Теперь можно и делиться наработками. Начну пожалуй с конца 😉 Из каких элементов все это собрано вы можете ознакомиться из видео, которое я оставлю в конце поста. На самом деле там все просто. Сразу перейду к автоматизации. Схема состоит из : Xiaomi Mi Smart Wifi socket (не Zigbee) – 2шт, датчика протечки Aqara Smart Home Water Sensor, любой управляемый шарнирный кран воды (напряжение 220В или другое, на выбор), можно камеру добавить (?) и немного прямых рук. Датчик протечки располагается по местом вероятного попадания воды, две розетки подключаются через Mihome, шарнирный кран устаналивается на ввод воды дома. Выглядит это примерно так. Кстати если все таки интересно будет как все это собрать и внедрить технически и наберутся хотя бы человек 10 желаиющих – распишем детально с картинками 🙂

Далее в дело вступает тяжелая артиллерия – Home Assistant. Но, каков сценарий всей этой релизации.

  • при наличии воды в месте датчика протечки воды – он меняет свое состояние с off на on. Мне высылается первичное оповещение о наличии воды (аварии). Далее для управления открытием и закрытием краном вступает в бой наши две розетки wifi, одна их которых открывает (подает питание на 1 канал) шаровой кран, вторая розетка делает наоборот – закрывает (также подает питание на 2 канал) шаровой кран. У крана 3 контакта – 2 управляющих и 1 общий. У меня 220В значить это будет общий N (ноль) и управляющий L (фаза) (или наоборот, точно не помню). Если на один контакт подать управляющее напряжение (на втором отключить) – то он будет либо в открытом либо в закрытом состоянии. Одновременно если подать на все три контакта – то он будет попеременно открывать и закрывать кран. Это надо учесть. Розетки WIFI как раз и будут этим заниматься – одна розетка отключает, другая выключает кран. В моем случае : нет автоматической подачи воды – мне приходят оповещения об аварии с детализацией и уже далее подключаюсь я к камере и смотрю на истинное происхождение дел. Включение воды я решил сделать мануально. Можно автоматизировать на автоподачу – но тут дело вкуса.

Скрипты автоматизации для датчика протечки (automation.yaml)

# ДАТЧИК ПРОТЕЧКИ под котлом Buderus
- alias: water leak bedroom-1 buderus
  trigger:
     - platform: state
       entity_id: binary_sensor.water_leak_sensor_158d0001d589cc
       to: 'on'
     - platform: state
       entity_id: binary_sensor.water_leak_sensor_158d0001d589cc
       to: 'off'
  action:
     - service: notify.telegram
       data:
        message: >
          {% if is_state("binary_sensor.water_leak_sensor_158d0001d589cc", "on") %}
            Обнаружена протечка под котлом!
          {% elif is_state("binary_sensor.water_leak_sensor_158d0001d589cc", "off") %}
            Протечка под котлом устранена!
          {% else %}
          {% endif %}
     - service: switch.turn_off
       entity_id: switch.plug_room1_1
     - service: switch.turn_on
       entity_id: switch.plug_room1_2

Скрипты автоматизации для переключения розеток (automation.yaml)

switch.plug_room1_1 – wifi розетка на открывание воды

switch.plug_room1_2 – wifi розетка на закрытие воды

- alias: Tap Alert in Bathroom-1 P1-1 
  trigger:
     - platform: state
       entity_id: switch.plug_room1_1
       to: 'off'
  condition:
    - condition: state
      entity_id: switch.plug_room1_2
      state: 'on'
  action:
     - service: notify.telegram
       data:
        message: "Подача воды в дом заблокирована. Требуется вмешательство. Время срабывания: {{ states('sensor.time_date')}}"

- alias: Tap Alert in Bathroom-1 P1-2 
  trigger:
     - platform: state
       entity_id: switch.plug_room1_2
       to: 'on'
  condition:
    - condition: state
      entity_id: switch.plug_room1_1
      state: 'off'
  action:
     - service: notify.telegram
       data:
        message: "Подача воды в дом заблокирована. Требуется вмешательство. Время срабывания: {{ states('sensor.time_date')}}"

- alias: Tap Alert in Bathroom-1 P1-3 
  trigger:
     - platform: state
       entity_id: switch.plug_room1_1
       to: 'on'
  condition:
    - condition: state
      entity_id: switch.plug_room1_2
      state: 'off'
  action:
     - service: notify.telegram
       data:
        message: "Подача воды в дом восстановлена. Не требуется вмешательство. Время срабывания: {{ states('sensor.time_date') }}"


- alias: Tap Alert in Bathroom-1 P2 
  trigger:
     - platform: state
       entity_id: switch.plug_room1_1
       to: 'on'
  condition:
    - condition: state
      entity_id: switch.plug_room1_2
      state: 'on'
  action:
     - service: notify.telegram
       data:
        message: "Сбой системы. Обнаружено открытие и закрытие одновременно крана воды в доме. Требуется вмешательство."

- alias: Tap Alert in Bathroom-1 P3 
  trigger:
     - platform: state
       entity_id: switch.plug_room1_1
       to: 'off'
  condition:
    - condition: state
      entity_id: switch.plug_room1_2
      state: 'off'
  action:
     - service: notify.telegram
       data:
        message: "Сбой системы в водоснабжении. Требуется вмешательство. Время срабывания: {{ states('sensor.time_date') }}"

- alias: Tap Alert in Bathroom-1 P4 
  trigger:
     - platform: state
       entity_id: switch.plug_room1_2
       to: 'off'
  condition:
    - condition: state
      entity_id: switch.plug_room1_1
      state: 'off'
#     - delay: 00:00:10
  action:
     - service: notify.telegram
       data:
        message: "Сбой системы в водоснабжении. Требуется вмешательство. Время срабывания: {{ states('sensor.time_date') }}"

Видео инструкция как все это собрать

5 1 голос
Рейтинг статьи
Подписаться
Уведомить о
guest
1 Комментарий
Популярные
Новые Старые
Межтекстовые Отзывы
Посмотреть все комментарии
Михаил
Михаил
30.04.2023 21:31

зачем все так сложно с контактами?

1
0
Оставьте комментарий! Напишите, что думаете по поводу статьи.x
()
x