ESPHome Deep Sleep Компонент глубокого сна

Материал из УМКИwiki
Перейти к навигации Перейти к поиску

ESPHome Deep Sleep — автономная работа в режиме сна

ESP8266 с пауэрбанком и датчиком DHT11

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

Для этих целей можно использовать, например контроллер WEMOS WIFI ESP8266 С БАТАРЕЙНЫМ ОТСЕКОМ ПОД АККУМУЛЯТОР 18650. Чтобы добиться для этого контроллера максимального времени работы от источника питания, его необходимо вводить в режим сна (Deep Sleep). В режиме сна потребление составляет 14 мА. В режиме передачи данных 140 мА.

В нашем случае, для измерений мы использовали датчик температуры и влажности воздуха DHT11

Подключение, конфигурация ESPHome

Для нормальной работы с датчиком, нам нужно правильно составить файлы конфигураций. Файлы конфигурации ESPHome имеют несколько типов. ESPHome всегда использует внутренние номера GPIO чипа. Однако у большинства контроллеров ESP есть псевдонимы для определенных контактов. Например, NodeMCU ESP8266 использует имена контактов D0 в D8 качестве псевдонимов для внутренних номеров контактов GPIO. Эта информация взята отсюда: https://esphome.io/guides/configuration-types.html#config-pin

Так же существует англоязычный форум, где можно почитать обсуждения этой платы контроллера: https://forum.fritzing.org/t/request-wemos-esp-wroom-02-with-16850-bat-holder/5073

Описание правил работы с компонентом глубокого сна Deep Sleep представлены здесь: https://esphome.io/components/deep_sleep.html

Ссылка на описание подключения датчика температуры и влажности воздуха DHT11, представлена здесь: https://esphome.io/components/sensor/dht.html#dht-temperature-humidity-sensor

Создаем файл конфигурации HA: term-humi.yaml

В этом примере контроллер просыпается раз в 10 минут на 10 сек, делает замер и передает данные по WIFI в интеграцию Home Assistant. Точка доступа здесь laser305, пароль тоже laser305

esphome:
  name: "term-humi"
  friendly_name: term_hume

esp8266:
  board: esp01_1m

# Enable logging
logger:

# Enable Home Assistant API
api:

ota:

wifi:
  ssid: laser305
  password: laser305

  # Enable fallback hotspot (captive portal) in case wifi connection fails
  
captive_portal:


# Example configuration entry
sensor:
  - platform: dht
    pin: GPIO2
    temperature:
      name: "Рабочая комната Temperature"
    humidity:
      name: "Рабочая комната Humidity"
    update_interval: 60s

# Example configuration entry
deep_sleep:
  run_duration: 10s
  sleep_duration: 10min

После создания и сохранения файла конфигурации, переходим в режим Install и выбираем ответы в предлагаемом меню, как представлено на изображениях ниже.

Если все было выполнено правильно, то после окна компиляции получаем окно лога, в котором станет очевидным какой IP адрес присвоен нашей плате ESP8266.

Настройка интеграции ESPHome

Зная теперь IP адрес платы ESP8266, в нашем случае: 192.168.9.103, можем приступить к интеграции ESPHome. Для этого заходим в Настройки >> Устройства и службы >> Интеграции >> +Добавить интеграцию

После выполнения интеграции у нас должны появиться два новых объекта sensor.term_hume_zhilaia_komnata_humidity и sensor.term_hume_zhilaia_komnata_temperature

Настройка карточки Объекты

ESP8266 работает от аккумулятора 18650 три дня до полного разряда
График замеров влажности и температуры в течении 3-х дней

На панели Home Assistant добавляем карточку объекта.

В текстовом режиме карточка объекты будет выглядеть примерно так:

type: entities
entities:
  - entity: sensor.term_hume_zhilaia_komnata_humidity
    name: Рабочая комната Humidity
  - entity: sensor.term_hume_zhilaia_komnata_temperature
    name: Рабочая комната Temperature
title: term_hume
state_color: true

Добавляем карточку объекта на панель и запускам измерение температуры и влажности.

В нашем случае, для аккумулятора 18650 при полном заряде 2000мА, продолжительность работы в режиме сна: 10 минут, замеров: 10 сек, составляет, как следует из полученного графика: 92 часа.