ESPHome Deep Sleep Компонент глубокого сна: различия между версиями

Материал из УМКИwiki
Перейти к навигации Перейти к поиску
Нет описания правки
 
(не показано 29 промежуточных версий этого же участника)
Строка 1: Строка 1:
'''ESPHome Deep Sleep  - автономная работа в режиме сна'''
== ESPHome Deep Sleep — автономная работа в режиме сна ==
[[Файл:ESP8266 с пауэрбанком.jpg|link=http://meteor.laser.ru/umki/images/8/8a/ESP8266_с_пауэрбанком.jpg |260px|thumb|(Фото 1) ESP8266 с пауэрбанком]]
[[Файл:Сам адаптер ESP 8266.jpg|link=http://meteor.laser.ru/umki/images/8/8a/ESP8266_с_пауэрбанком.jpg |260px|thumb| ESP8266 с пауэрбанком и датчиком DHT11]]
Иногда бывает необходимо производить замеры в течение нескольких дней в таких местах, куда трудно провести питание 220В. Это может быть например, дальний угол парника, где нужно измерять влажность субстрата,
Иногда бывает необходимо производить замеры в течение нескольких дней в таких местах, куда трудно провести питание 220В. Это может быть например, дальний угол парника, где нужно измерять влажность субстрата,
или замер освещенности на листьях растения, или фиксация температуры и влажности в помещении.
или замер освещенности на листьях растения, или фиксация температуры и влажности в помещении.


Для этих целей можно использовать, например контроллер [https://tixer.ru/catalog/Arduino/wemos_wifi_esp8266_s_batareynym_otsekom_pod_akkumulyator_18650/?sphrase_id=1816732 WEMOS WIFI ESP8266] С БАТАРЕЙНЫМ ОТСЕКОМ ПОД АККУМУЛЯТОР 18650. Чтобы добиться для этого контроллера максимального времени работы от источника питания, его необходимо вводить в режим сна (Deep Sleep). В режиме сна потребление составляет 14 мА. В режиме передачи данных 140 мА.
Для этих целей можно использовать, например контроллер [https://tixer.ru/catalog/Arduino/wemos_wifi_esp8266_s_batareynym_otsekom_pod_akkumulyator_18650/?sphrase_id=1816732 WEMOS WIFI ESP8266] С БАТАРЕЙНЫМ ОТСЕКОМ ПОД АККУМУЛЯТОР 18650. Чтобы добиться для этого контроллера максимального времени работы от источника питания, его необходимо вводить в режим сна (Deep Sleep). В режиме сна потребление составляет 14 мА. В режиме передачи данных 140 мА.
 
В нашем случае, для измерений мы использовали датчик температуры и влажности воздуха [https://aliexpress.ru/popular/esp32-dht11.html 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
 
<gallery>
Файл:Nodemcu v3 pinout.png | Картинка с пинами для пересчета контактов GPIO - в - D*
Файл:Esp8266.png|Почитать подробнее про устройство можно вот здесь
</gallery>
 
== Создаем файл конфигурации HA: '''term-humi.yaml'''  ==
В этом примере контроллер просыпается раз в 10 минут на 10 сек, делает замер и передает данные по WIFI в интеграцию Home Assistant. Точка доступа здесь ''laser305'', пароль тоже ''laser305''
<syntaxhighlight lang="C++">
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
 
</syntaxhighlight>
После создания и сохранения файла конфигурации, переходим в режим Install и выбираем ответы в предлагаемом меню, как представлено на изображениях ниже.
 
Если все было выполнено правильно, то после окна компиляции получаем окно лога, в котором станет очевидным какой IP адрес присвоен нашей плате ESP8266.
<gallery>
Файл:Новый девайс.png | При компиляции выбираем новое устройство
Файл:Выбираем ESP8266.png | Здесь выбираем ESP8266
Файл:Выбираем 4-й вариант.png | Здесь выбираем третий вариант
Файл:Окно компиляци и прошивки в плату.png |Окно компиляции и прошивки в плату
Файл:Окно лога для определения IP девайса ESP8255.png |Окно лога для определения IP девайса ESP8266
</gallery>
 
== Настройка интеграции ESPHome ==
Зная теперь IP адрес платы ESP8266,  в нашем случае: 192.168.9.103, можем приступить к интеграции ESPHome. Для этого заходим в '''Настройки''' >> '''Устройства и службы''' >> '''Интеграции''' >> '''+Добавить интеграцию'''
<gallery>
Файл:Новый объект в интеграции.png |Новый объект в интеграции ESPHome
Файл:Добавляем интеграцию, зная IP девайса ESP8255.png | Зная IP адрес добавляем это устройство. Порт по умолчанию который указан - не трогаем
Файл:Все интеграции.png | Если все сделали нормально, то это устройство должно появиться в разделе все интеграции на карточке ESPHome
Файл:Добавить на панель.png | Можно добавить прямо из Интеграции - карточку на панель.
</gallery>
После выполнения интеграции у нас должны появиться два новых объекта '''sensor.term_hume_zhilaia_komnata_humidity''' и '''sensor.term_hume_zhilaia_komnata_temperature'''
 
== Настройка карточки Объекты ==
[[Файл:ESP8266 c аккумулятором 18650 - 2000mAch.jpg|260px|thumb|ESP8266  работает от аккумулятора 18650 три дня до полного разряда]]
[[Файл:3 дня работы Аккумулятор.png|link=http://meteor.laser.ru/umki/images/0/02/3_дня_работы_Аккумулятор.png |260px|thumb|График замеров влажности и температуры в течении 3-х дней]]
На панели Home Assistant добавляем карточку объекта.
 
В текстовом режиме карточка объекты будет выглядеть примерно так:
<syntaxhighlight lang="C++">
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
</syntaxhighlight>
 
Добавляем карточку объекта на панель и запускам измерение температуры и влажности.
 
В нашем случае, для аккумулятора 18650 при полном заряде 2000мА, продолжительность работы в режиме сна: 10 минут, замеров: 10 сек, составляет, как следует из полученного графика: '''92 часа'''.








Ресурсы для работы https://esphome.io/components/deep_sleep.html
[[Категория:Home Assistant]]
[[Категория:Home Assistant]]
[[Категория:Датчики]]
[[Категория:Датчики]]

Текущая версия от 13:36, 16 августа 2023

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 часа.