Умная кровать для умного дома

в 7:33, , рубрики: homeassistant, zigbee, датчики

Привет!

Сегодня хочу поделиться своим экспериментом с "разработкой" датчика определения человека на кровати.

Почему это было нужно?

У меня достаточно давно была создана автоматизация открывающая шторы утром при наличии движения в гостиной в будние дни, а в выходные, по тому же сенсору, сценарий открывал шторы и в спальне. Все работает отлично, пока один из нас двоих не вставал в выходные раньше, а второй оставался в постели (признаюсь, чаще всего это был я 😊). Нужно было определять и не открывать шторы в спальне. В будущем можно привязать к этому датчику, например, включение ночного освещения, включение кондиционеравентилятора и тд.

Ну или когда уже автоматизировать совсем нечего...

Датчики

За основу решил взять самый дешевый Zigbee датчик открытия двериокна, работающий на герконовом принципе (геркон замыкается под воздействием магнитного поля). И сенсор давления в сидении автомобиля. Оба устройства заказал на Aliexpress: датчик двери, датчик сидения. Все это я заказал на авось, особенно датчик сидения, не знал "хватит ли его сопротивления" для замыкания контактов вместо геркона и не будет ли он замыкаться от веса матраса.

датчик открытиязакрытия двери

датчик открытиязакрытия двери
датчик давления

датчик давления

Что было сделано?

  1. Измерение сопротивления датчика давления
    Сначала измерил сопротивление вхолостую, сопротивление было около 1МОм, потом под давлением (я на него сел) - полное замыкание. Потом положил датчик под матрас, сопротивления оставалось близко к мегаому.

  2. Демонтаж геркона
    Вскрыв корпус датчика, я аккуратно выпаял геркон.

  3. Установка датчика давления
    Вместо геркона я припаял датчик давления.

  4. Интеграция в умный дом
    После переделки датчик сохранил свою совместимость с экосистемой умного дома. Теперь он отправляет сигнал не об "открытии/закрытии", а о "наличии давления".

Сравнение размеров сенсора давления и датчика двери
Умная кровать для умного дома - 3

Сопротивление датчика давления вхолостую
Умная кровать для умного дома - 4

Процесс запайки вместо геркона
Умная кровать для умного дома - 5

Пример автоматизации для Home Assistant

description: "Открыть шторы в выходные, в гостиной по движению, а после, в спальне по отсутствию человека на кровати"
mode: single
triggers:
  - trigger: state
    entity_id:
      - binary_sensor.presence_sensor_living_room
    to: "on"
conditions:
  - condition: time
    weekday:
      - sat
      - sun
    after: "06:00:00"
    before: "13:00:00"
actions:
  - action: cover.open_cover
    metadata: {}
    data: {}
    target:
      area_id: gostinaia
  - wait_for_trigger:
      - trigger: state
        entity_id:
          - binary_sensor.krovat_contact
        from: "off"
        to: "on"
        for:
          hours: 0
          minutes: 1
          seconds: 0
    continue_on_timeout: false
  - action: cover.open_cover
    metadata: {}
    data: {}
    target:
      area_id: spalnia

Готовое устройство

итоговый результат
итоговый результат
итоговый результат

под матрасом

Оптимизация и нюансы

Как видно на фото выше, сенсор давления не задействован на 100%, под него нужно что-то подложить, например, приклеить к тонкому листу алюминия. Новый датчик срабатывает только на моей стороне кровати, нужно купить еще один сенсор давления и запараллелить их.

Новый сенсор HA с антидребезгом
- platform: template
  sensors:
    presence_sensor_on_bed:
      friendly_name: "Сенсор присутствия на кровати"
      device_class: presence
      value_template: >-
          {% set last_changed = states['binary_sensor.0xa4c138732178ae70_contact'].last_changed %}
          {% if now().timestamp() - as_timestamp(last_changed) > 2 %}
            {{ 'off' if states('binary_sensor.0xa4c138732178ae70_contact') == 'on' else 'on' }}
          {% endif %}

Мира!

Автор: almirus

Источник

* - обязательные к заполнению поля


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js