Zum Hauptinhalt springen

Home Assistant Quickie: Werte in Prozent anzeigen

·2 min
Smarthome Home-Assistant Home-Assistant-Quickie Sensor Yaml
Autor
Markus

Bei meiner Zisterne, wird aus der Spannung des Wasserstandsensors der Füllstand in Zentimetern und Litern berechnet. Natürlich weiß ich, dass bei 100,5 cm Füllstand die Zisterne bis zum Überlauf voll ist und damit laut Herstellerangabe 5130 Liter Wasser enthalten sind. Doch wie gibt man den Füllstand in Prozent aus? Das ist auch für Batterieanzeigen interessant, denn 70 % Batterielevel sind intuitiver zu verstehen, als 2,7 Volt.

Mit einem Sensor-Template geht die Umrechnung ganz einfach, denn damit kann man praktisch einen “virtuellen” Sensor bauen, der eine Berechnung aus anderen Quellen ausgibt.

Wir benötigen einen Sensor mit dem aktuellen Wert, also z. B. dem aktuellen Wasserstand in Litern. Bei mir ist das die Entität sensor.zisterne_liter. Außerdem den maximal zu erreichenden Wert, den Grundwert. Bei meiner Zisterne wären das 5130 (Liter).

Nun erstellt man einen neuen Sensor. Entweder unter sensors: in der configuration.yaml oder, wie bei mir, in einer ausgelagerten sensors.yaml in der nur meine Sensoren enthalten sind - das schafft mehr Übersicht.

sensors:
  - platform: template
    sensors:
      zisterne_prozent:
        unit_of_measurement: '%'
        value_template: >-
          {{ (((states('sensor.zisterne_liter'))|float / 5130) *100)|round(1) }}

In value_template teilen wir den gemessenen Wert des Sensors durch den Grundwert, also 5130 und multiplizieren das Ergebnis mit 100. round(1) gibt an, dass auf eine Nachkommstelle gerundet werden soll. Will man keine Nachkommastellen, gibt man round(0) an.

Nach dem Reload hat man eine neue Entität sensor.zisterne_prozent, die man dann im Dashboard einbinden kann.

Für eine Batterie muss man erst einmal wissen, ab wann eine Batterie als leer angesehen werden kann. Bei Knopfzellen, wie man sie in vielen Geräten wie den Aqara ZigBee Sensoren findet, kommen 3 Volt Lithium-Knopfzellen zum Einsatz. Die meisten Hersteller geben an, dass die Zelle bei einer Spannung von 2 Volt leer ist. Daher darf man also nicht die 3 Volt als Grundwert annehmen, sondern nur die Differenz zwischen neuer Batterie mit 3 Volt und leerer Batterie mit 2 Volt, also 1 Volt. Bei 1,5 Volt Batterien geht man von 0,9 Volt für eine leere Batterie aus, also müsste man 0,6 Volt als Grundwert annehmen (1,5 Volt - 0,9 Volt).

sensors:
  - platform: template
    sensors:
      batterie_prozent:
        unit_of_measurement: '%'
        value_template: >-
          {{ (((states('sensor.batteriespannung'))|float / 1) *100)|round(0) }}

Hier nimmt man den Sensor, der die aktuelle Batteriespannung eines Geräts misst, und setzt z. B. bei einer 3 Volt Batterie 1 als Grundwert ein und schon hat man den Batteriezustand in Prozent.

Verwandte Artikel

Home Assistant: Entitäten sauber in Amazon Alexa integrieren
·5 min
Smarthome Alexa Home-Assistant Smart-Home Sprachsteuerung Yaml
So richtet man Home Assistant und Alexa richtig ein und kann seine Geräte mit klar definierten Namen steuern.
Automationen mit mehreren Schaltzeiten in Home Assistant erstellen
·6 min
Smarthome Automation Garten Home-Assistant Yaml
Wenn man in einer Homeassistant Automation mehrere Schaltzeiten benötigt (z. B. für die Gartenbewässerung), kann man diese mit etwas YAML als Liste angeben.
CO2 Ampel mit ESPHome und Home Assistant
·9 min
Smarthome Corona Diy Esphome Home-Assistant Sensor Smarthome
Mit einem ESPHome und dem MH-Z19B CO2-Sensor, kann man für weniger als 40 Euro eine CO2-Ampel bauen, die in Home Assistant integriert ist.