esp8266: http://alii.pub/5sc0eq
ds18b20: http://alii.pub/5sc0ec
relay: http://alii.pub/5sc0bf
Прежде чем приступить к материалу, я Вас попрошу, если нравится то, что я делаю и хотите следить за моей деятельностью, то рекомендую подписаться на мой телеграмм канал: https://t.me/ypavla
Там я публикую новости о вышедших видео, статьях и разные устройства для умного дома и не только показываю.
Спасибо за внимание, теперь продолжим.
Как установить ESPHome в Home Assistant описано тут:
Знакомство с ESPHome. Настройка ds18b20 на esp8266. Интеграция ESPHome в Home Assistant.
Так же там описано подключение датчика ds18b20 в ESPHome.
А в этой статье описано как добавить реле и управлять им в ESPHome:
И вот на основе этих статей решил сделать термостат.
В принципе блок термостата в ESPHome очень хорошо описан на официальном сайте тут: https://esphome.io/components/climate/thermostat.html
Там описано много всяких параметров, которые в данной статье мы не затронем. Поэтому если есть желание усовершенствовать получившийся термостат, то стоит перейти и ознакомиться с функционалом.
Чуток подумав над примерами у меня получилось 3 разных вида термостата.
Схема подключения простая.
Пин от ds18b20 подключаем к D4 пину esp8266.
Пин от Реле подключаем к D3 пину esp8266
Термостат на обогрев:
==================================================================================
#описываем датчик температуры ds2812
dallas:
pin: D4
update_interval: 10s
sensor:
- platform: dallas
name: "temperature_test"
address: "0xA104166427CCFF28"
id: temperature_test
#описываем реле
switch:
- platform: gpio
name: "Relay_termo"
pin: D3
id: relay_1
#Термостат на обогрев
climate:
- platform: thermostat
name: esp_thermostat
sensor: temperature_test
default_target_temperature_low: 20 °C
heat_action:
- switch.turn_on: relay_1
idle_action:
- switch.turn_off: relay_1
===================================================================
Данный пример описывает термостат который будет работать на обогрев. Тоесть будет включать реле, когда температура опустится ниже заданного порога.
Термостат на охлаждение:
===================================================================
#описываем датчик температуры ds2812
dallas:
pin: D4
update_interval: 10s
sensor:
- platform: dallas
name: "temperature_test"
address: "0xA104166427CCFF28"
id: temperature_test
#описываем реле
switch:
- platform: gpio
name: "Relay_termo"
pin: D3
id: relay_1
#Термостат на охлаждение
climate:
- platform: thermostat
name: esp_thermostat
sensor: temperature_test
default_target_temperature_high: 20 °C
cool_action:
- switch.turn_on: relay_1
idle_action:
- switch.turn_off: relay_1
===============================================================================
Данный пример работает на охлаждение. То есть реле будет включаться после того как температура будет выше заданного порога. Реле срабатывает если температура повысилась более чем на 0.5 градуса от заданной.
Термостат на поддерживание заданного пула температуры.
===================================================================
#описываем датчик температуры ds2812
dallas:
pin: D4
update_interval: 10s
sensor:
- platform: dallas
name: "temperature_test"
address: "0xA104166427CCFF28"
id: temperature_test
#описываем реле
switch:
- platform: gpio
name: "Relay_termo"
pin: D3
id: relay_1
#термостат на охлаждение и на обогрев
climate:
- platform: thermostat
name: esp_thermostat
sensor: temperature_test
default_target_temperature_low: 20 °C
default_target_temperature_high: 20 °C
cool_action:
- switch.turn_on: relay_1
heat_action:
- switch.turn_on: relay_1
idle_action:
- switch.turn_off: relay_1
===================================================================
Данный пример будет работать как на охлаждение так и на обогрев.
Как добавить все это дело в Home Assistant я показываю в видео: