Ein Thermostat in Home Assistant erstellen!

Hier möchte ich euch ein pratisches Beispiel zeigen, wie man eine Steuerung (Thermostat) in Home Assistant erstellt. Dazu benötigt wird einen Temperatursensor und ein Relais, dass die Heizung schaltet.

Das Thermostat konfigurieren wir uns in YAML und zur Darstellung im Dashboard verwenden wir die Thermostat Karte. Aber alles der Reihe nach und wir starten mit dem Sensor und der Heizung. Den Source-code der beiden Beispiele findet ihr auf Github.

 

HA Thermostat Heizung

Aufbau Sensoreinheit

DS18B20 ESP32 Aufbau Beispiel

Aufbau Heizeinheit (*LED)

Wemos mit LED Anschluss Beispiel

Beim Testaufbau verwende ich eine LED um den Ausgang “sichtbar” zu machen. Hier wird dann natürlich ein Relais verwendet um die Heizung schalten zu können.

Hysterese - Zweipunkt Regler

Chart Hysterese

Bei der Hysterese gibt man einen oberen und einen unteren Schwellwert an. In unserem Beispiel starten wir mit einer Temperatur unter 20 Grad und die Heizung ist an. Die Temperatur steigt an und wenn sie den oberen Schwellwert, hier 25 Grad überschreitet, dann wird die Heizung ausgeschalten und die Temperatur fängt langsam wieder an zu sinken. Fällt sie unter 20 Grad, dann startet der Heizvorgang wieder von vorne.

Je nach Stärke der Heizung und der Dauer der Temperaturänderung in einem Raum können die Schwellwerte dichter beieinander sein.

Konfiguration in HASSIO - mit YAML

Im configuration.yaml file müssen wir zuerst den Sensor und die Heizung erstellen. Die Heizung ist ein switch und über das command_topic wird sie ein und ausgeschalten mit dem Payload ON / OFF.

				
					mqtt:
 switch:
   - unique_id: heater_switch
     command_topic: "HeaterRelayIn"
     state_topic: "HeaterRelayState"
     payload_on: "ON"
     payload_off: "OFF"
				
			

Der Temperatursensor wird in YAML unter sensor erstellt und die Werte empfangen wir mittels MQTT unter dem Topic HeaterSensorOut.

				
					mqtt:
  sensor:
   - unique_id: wohnzimmer_temp
     state_topic: HeaterSensorOut
     name: "WohnzimmerTemp"
     unit_of_measurement: "°C"
				
			

Nachdem wir den Sensor und das Relais in Home Assistant eingebunden haben, können wir uns um das Thermostat kümmern. Dazu geben wir in YAML folgendes ein.

				
					climate:
  - platform: generic_thermostat
    name: Testthermostat
    heater: switch.mqtt_switch
    target_sensor: sensor.wohnzimmertemp
    min_temp: 15
    max_temp: 30
    target_temp: 27
    hot_tolerance: 1
    initial_hvac_mode: "off"
    away_temp: 16
    precision: 0.1
    ac_mode: false
    cold_tolerance: 1
				
			

Bei Heater geben wir die Entität von unserer Heizung ein und unter target_sensor die Entität vom Temperatur Sensor. Die Entitäten Namen findet ihr unter Einstellungen  im Tab Entitäten.

Mit min- und max_temp können wir den Nutzungsbereich vom Thermostat definieren und mit der target_temp setzen wir die gewünschte Temperatur beim Start. Diese kann danach in der Karte verändert werden. Mit hot- und cold_tolerance können wir die Hysterese definieren, ab wann sich die Heizung einschalten soll. den ac-mode setzen wir auf false da wir eine Heizung und keine Kühlung verwenden wollen.

Wer das Thermostat für eine Kühlung verwenden möchte, der kann den ac_mode auf true setzen. Beides gleichzeitig ist mit der aktuellen Temperatur Karte nicht möglich.

In der Übersicht können wir die Karte Thermostat hinzufügen und bei Entität unser in YAML erstelltes Thermostat auswählen. Optional können wir noch einen Namen vergeben.

HA Thermostat Kartenkonfiguration

Mit dem Schieberegler können wir uns die gewünschte Temperatur auswählen und sobald der Temperaturwert unterschritten ist, schaltet sich die Heizung bis zum Erreichen des oberen Grenzwertes ein. Auf der rechten unteren Seite können wir die Heizung manuell ausschalten.

HA Thermostat Heizung
HA Thermostat Kühlung

Source Code's

DS18B20 Sensor:

* https://amzn.to/3C2WX0P – DS18B20 – TO-92 Sensor

* https://amzn.to/3C1Ktqd – 10 x DS18B20 – TO-92 Sensor

* https://amzn.to/3aUyZsK – DS18B20 wasserdichte Stahlsonde mit 1m Kabel

* https://amzn.to/3vs1lnD– 5 x DS18B20 wasserdichte Stahlsonde mit 1m Kabel

Relais:

* https://amzn.to/3a5yUjQ – 1 Stk. Relais 5V KY-019 Modul – 10A

* https://amzn.to/2xi4Kvq – 3 Stk. Relais 5V KY-019 Modul – 10A

* https://amzn.to/2U9ZqmL – 5 Stk. Relais 5V KY-019 Modul – 10A

Jumper Wire:

* https://amzn.to/2WxKwIl Female to Female F2F 40 STK. je 20 cm

* https://amzn.to/2xeKb2V – Set 3 x 40 STK. je 20 cm M2M/ F2M / F2F

Breadboard:

* https://amzn.to/2QQ7JSL – Breadboard Steckbrett mit 830 Kontakten

* https://amzn.to/35GcPIp – 3 Stk. Breadboard Steckbrett mit 400 Kontakten

★☆★ Microcontroller ★☆★

Node-MCU ESP8266 Board:

https://amzn.to/2U7Urmn – NodeMCU ESP8266 ESP-12F

https://amzn.to/2J5wLJ3 – 3er Set, ESP8266 ESP-12F

https://amzn.to/3belvGd – 5er Set, ESP8266 ESP-12F

Wemos D1 mini – ESP8266-12F Board

https://amzn.to/38l9Syu – Wemos D1 mini ESP8266-12F

https://amzn.to/3v56YHC – 3er Set, Wemos D1 mini ESP8266-12F

ESP32 und ESP32 Node-MCU Boards:

https://amzn.to/3erQVKq – ESP32 Node-MCU Board

https://amzn.to/2Om89OW – 3er Set ESP32 Node-MCU Board

https://amzn.to/3erIkaS – 5er Set ESP32 Node-MCU Board

https://amzn.to/2Ct9H7c – 4 Stück ESP32 Module

Raspberry Pi:

* https://amzn.to/2wr0rxDRaspberry Pi 4 -4GB Kit

* https://amzn.to/2UobpfeRaspberry Pi 4 – 4GB

* https://amzn.to/3rzAvYy – Raspberry Pi 4 – 8GB Kit

* https://amzn.to/2KtZFXR – Raspberry Pi 4 – 8GB

Zum Video

★☆★ Wenn ihr den Kanal unterstützen wollt über ★☆★

oder über

Twint Spenden Code