Mit Home Assistant richtig lüften und Schimmelbildung vorbeugen

Hallo,

Ich nehme an das ist der richtige Bereich für Themen zu den YoutubeVideos/Blogs von Simon. Falls nicht, gerne verschieben

Zu oben genanntem Thema habe ich beim Template und der Berechnung für den Außensensor keine Entität, sondern ein Attribut dessen, welches von HA mitgeliefert oder zumindest bestand, genutzt.

Leider erhalte ich keine Daten. Hat jmd. eine Idee?

Errechnet aus der relativen Luftfeuchtigkeit und Temperatur außen die absolute Luftfeuchtigkeit in Gramm pro Kubikmeter
      - name: "Absolute Luftfeuchtigkeit OUT"
        unique_id: "AbsoluteHumidityOutside"
        unit_of_measurement: "g/m^3"
        state_class: "measurement"
        state: >
            {{ ( 1000*e**(19.016-(4064.95/(float(states('weather.forecast_homeassistent.attributes.temperature'))+236.25)))*100/(461.66*(float(states('weather.forecast_homeassistent.attributes.temperature'))+273.15)) * float(states('weather.forecast_homeassistent.attributes.humidity'))/100 | float) | round (2) }}

Herzlich Willkommen im Forum.

Sicher das du die Temperatur abfragen wolltest und nicht die Luftfeuchtigkeit (humidity)?

Bei mir sieht das so aus:

    # Errechnet aus der relativen Luftfeuchtigkeit und Temperatur außen die absolute Luftfreuchtigkeit in Gramm pro Kubikmeter
      - name: "Absolute Luftfeuchtigkeit außen"
        unique_id: "AbsoluteHumidityOutside"
        unit_of_measurement: "g/m^3"
        state: >
            {{ ( 1000*e**(19.016-(4064.95/(float(states('sensor.openweathermap_humidity'))+236.25)))*100/(461.66*(float(states('sensor.openweathermap_humidity'))+273.15)) * float(states('sensor.openweathermap_humidity'))/100 | float) | round (2) }}
1 „Gefällt mir“

Hallo @sirector ,

vielen Dank erstmal für das @Welcome

Laut dem Code und Video von Simon müsste das mit der Berechnung so richtig sein: temp-temp-humi

Für Attribute musst du state_attr() verwenden.

1 „Gefällt mir“

Oh Mist, dann wird sich bei mir ein Fehler eingeschlichen haben. Danke.

Hallo @maxe ,

vielen Dank. Ich hatte diese Variable auch schon bereits probiert, leider aber ohne Erfolg.

{{ ( 1000*e**(19.016-(4064.95/(float(state_attr('weather.forecast_homeassistent.attributes.temperature'))+236.25)))*100/(461.66*(float(state_attr('weather.forecast_homeassistent.attributes.temperature'))+273.15)) * float(state_attr('weather.forecast_homeassistent.attributes.humidity'))/100 | float) | round (2) }}

Versuche es mal mit
state_attr('weather.forecast_homeassistent', 'temperature')

1 „Gefällt mir“

:+1:t4: Das war es bzgl. Luftfeuchte außen.

edit: Die Sensoren wurden ja dadurch angelegt und ich konnte mit diesen auch die Differenz berechnen lassen.

Gut zu wissen bzgl. der Attribute. Vielen Dank :ok_hand:t4:

Wenn deine Helfer alle richtig angelegt sind und die einzelnen Berechnung jetzt stimmt, dann sollte es so passen. Du kannst dir die Werte ja mal einzeln anzeigen (Entwicklerwerkzeuge - Zustände) lassen und schauen ob es so plausibel ist.

1 „Gefällt mir“

Passt

image

Hallo in die Runde,

wenn ich mir den Code aus dem Video schnappe und in die configuration.yaml einfüge, sieht das folgendermaßen aus:

Überprüfe ich danach die Konfiguration erhalte ich folgende Meldung:

Wo liegt mein Fehler?

Versuche mal mit - sensor::

template:
    - sensor:
    # Errechnet aus der relativen Luftfeuchtigkeit und Temperatur im Innenraum die absolute Luftfreuchtigkeit in Gramm pro Kubikmeter
      - name: "Absolute Luftfeuchtigkeit IN
[...]

So?

Dann kommt diese Fehlermeldung:

- name und alles darunter entsprechend unter - sensor einrücken, wie @Schachter es geschrieben hat

1 „Gefällt mir“

Dachte, ich hätte alles richtig untereinander geschoben, war nicht der Fall, sorry, jetzt geht es! Vielen dank euch beiden!

1 „Gefällt mir“

Hallo zusammen,

ich kämpfe auch gerade mit einem Fehler bei Erstellung des Sensors der absoluten Luftfeuchtigkeit. Folgende Ausgangssituation bei mir

Temperatur-Sensoren von Homematic eingebunden über Raspberrymatic. Zur weiteren Verarbeitung in HA habe ich mir Template Sensoren wie folgt erstellt

      - name: "Relative Luftfeuchte Schlafzimmer"
        unique_id: "relative_luftfeuchte_schlafzimmer"
        device_class: humidity
        state_class: measurement
        unit_of_measurement: "%"
        icon: mdi:water-percent
        state: "{{ state_attr( 'climate.og_schlafzimmer_int0000001', 'current_humidity' )| default(60)}}"
      - name: "Temperatur Schlafzimmer"
        unique_id: "temperatur_schlafzimmer"
        device_class: temperature
        state_class: measurement
        unit_of_measurement: "°C"
        icon: mdi:thermometer 
        state: "{{ state_attr( 'climate.og_schlafzimmer_int0000001', 'current_temperature' )| default(60)}}"
      - name: "Solltemperatur Schlafzimmer"
        unique_id: "Solltemperatur_schlafzimmer"
        device_class: temperature
        state_class: measurement
        unit_of_measurement: "°C"
        icon: mdi:thermometer 
        state: "{{ state_attr( 'climate.og_schlafzimmer_int0000001', 'temperature' )| default(60)}}"

Mit diesen Sensoren wollte ich nun anhand des Beispiels mir den Sensor für die absolutte Luftfeuchtigkeit erstellen. Das ganze sieht dann bei mir so aus

    # Errechnet aus der relativen Luftfeuchtigkeit und Temperatur im Innenraum die absolute Luftfreuchtigkeit in Gramm pro Kubikmeter
      - name: "Absolute Luftfeuchtigkeit Schlafzimmer"
        unique_id: "absolute_luftfeuchte_Schlafzimmer"
        unit_of_measurement: "g/m^3"
        state_class: "measurement"
        state: > 
            {{ ( 1000*e**(19.016-(4064.95/(float(states('temperatur_schlafzimmer'))+236.25)))*100/(461.66*(float(states('temperatur_schlafzimmer'))+273.15)) * float(states('relative_luftfeuchte_schlafzimmer'))/100 | float) | round (2) }}

Leider zeigt er mir als Zustand lediglich “unvailable” an

Im Protokoll finde ich folgenden Fehler welchen ich leider nicht so richtig interpretieren kann

Logger: homeassistant.helpers.template_entity
Source: helpers/template_entity.py:422
First occurred: 10:24:51 (6 occurrences)
Last logged: 11:11:14

TemplateError('ValueError: Template error: float got invalid input 'unknown' when rendering template '{{ ( 1000*e**(19.016-(4064.95/(float(states('temperatur_schlafzimmer'))+236.25)))*100/(461.66*(float(states('temperatur_schlafzimmer'))+273.15)) * float(states('relative_luftfeuchte_schlafzimmer'))/100 | float) | round (2) }}' but no default was specified') while processing template 'Template<template=({{ ( 1000*e**(19.016-(4064.95/(float(states('temperatur_schlafzimmer'))+236.25)))*100/(461.66*(float(states('temperatur_schlafzimmer'))+273.15)) * float(states('relative_luftfeuchte_schlafzimmer'))/100 | float) | round (2) }}) renders=4>' for attribute '_attr_native_value' in entity 'sensor.absolute_luftfeuchtigkeit_schlafzimmer'
TemplateError('ValueError: Template error: float got invalid input 'unknown' when rendering template '{{ ( 1000*e**(19.016-(4064.95/(float(states('temperatur_schlafzimmer'))+236.25)))*100/(461.66*(float(states('temperatur_schlafzimmer'))+273.15)) * float(states('relative_luftfeuchte_schlafzimmer'))/100 | float) | round (2) }}' but no default was specified') while processing template 'Template<template=({{ ( 1000*e**(19.016-(4064.95/(float(states('temperatur_schlafzimmer'))+236.25)))*100/(461.66*(float(states('temperatur_schlafzimmer'))+273.15)) * float(states('relative_luftfeuchte_schlafzimmer'))/100 | float) | round (2) }}) renders=4>' for attribute '_attr_native_value' in entity 'sensor.absolute_luftfeuchtigkeit_schlafzimmer_2'
TemplateError('ValueError: Template error: float got invalid input 'unknown' when rendering template '{{ ( 1000*e**(19.016-(4064.95/(float(states('temperatur_schlafzimmer'))+236.25)))*100/(461.66*(float(states('temperatur_schlafzimmer'))+273.15)) * float(states('relative_luftfeuchte_schlafzimmer'))/100 | float) | round (2) }}' but no default was specified') while processing template 'Template<template=({{ ( 1000*e**(19.016-(4064.95/(float(states('temperatur_schlafzimmer'))+236.25)))*100/(461.66*(float(states('temperatur_schlafzimmer'))+273.15)) * float(states('relative_luftfeuchte_schlafzimmer'))/100 | float) | round (2) }}) renders=8>' for attribute '_attr_native_value' in entity 'sensor.absolute_luftfeuchtigkeit_schlafzimmer'

Hat jemand einen Tipp für mich wo mein Fehler liegen könnte?

Float scheint ein falsches Ergebnis zu bekommen. Ich vermute, dass ein Sensor keinen brauchbaren Wert liefert. Daher braucht float immer ein default-Wert welcher gezogen, wenn das Ergebnis invalid wäre.

Test mal über Entwicklerwerkzeuge - Template ob bei den folgenden Zeilen etwas angezeigt wird

{{ states('temperatur_schlafzimmer') }}

Du wirst kein Ergebnis bekommen, denn dieser müsste sensor.temperatur_schlafzimmer heißen.
Und auch bei der relative_luftfeuchte_schlafzimmer muss du den so schreiben, wie der in deinem letzten Screenshot angezeigt wird.

1 „Gefällt mir“

Hallo bei allem Respekt und Dankbarkeit für Simon Arbeit / Video …
Das mit den Sensoren für absolute Feuchtigkeit und mehr, geht auch einfacher :wink:
Ich nutze schon lange die Integration Thermal Comfort und es funktioniert alles ohne großen Aufwand oder Probleme …alles weiter, natürlich wie es Simon in Video gezeigt hat… Es muss natürlich, nicht jeder nutzen aber es ist gut zu wissen dass sowas auch gibt’s :wink:

4 „Gefällt mir“

Wie es @sirector schon schreibt, es wird einzig und alleine daran liegen, dass du die Sensoren falsch ansprichst:
states(‘sensor.temperatur_schlafzimmer’)
states(‘sensor.relative_luftfeuchte_schlafzimmer’)

2 „Gefällt mir“

… oh man :woozy_face: Manchmal sieht man den Wald vor lauter Bäumen nicht. DANKE! Natürlich funktioniert es jetzt

@maxe DANKE!

1 „Gefällt mir“