Auswertung von Abständen mit zwei Nachkommastellen bei Ultraschallsensoren

Home Assistant 2. Sep. 2025

Einleitung
Die präzise Messung von Füllständen in Smart-Home-Anwendungen ist entscheidend für die Automatisierung und Steuerung von Geräten wie Magnetventilen. Insbesondere bei der Verwendung von Ultraschallsensoren kann es notwendig sein, Werte mit hoher Genauigkeit zu erfassen, um eine zuverlässige Funktionalität zu gewährleisten. In diesem Artikel wird erläutert, wie man die Messwerte eines Ultraschallsensors mit zwei Nachkommastellen auswertet.

Problem
Ein Benutzer hat Schwierigkeiten, die Werte seines Ultraschallsensors, der den Füllstand einer Wassertonne misst, mit zwei Nachkommastellen auszuwerten. Die Standardkonfiguration über Helfer erlaubt nur die Verwendung von vollen Werten oder einer Nachkommastelle für Minimum und Maximum. Der Benutzer fragt sich, ob es eine Möglichkeit gibt, die Werte präziser zu erfassen, ohne ein komplexes YAML-Template schreiben zu müssen.

Lösung
Anstatt sich auf Helfer zu verlassen, die in ihrer Funktionalität eingeschränkt sind, kann direkt ein Template in der Automation verwendet werden. Dies ermöglicht eine präzisere Auswertung der Sensorwerte. Die Verwendung von Templates in Home Assistant erlaubt es, die Werte direkt zu manipulieren und zu vergleichen.

Hier ist ein Beispiel, wie du die Werte deines Sensors mit zwei Nachkommastellen auswerten kannst:

# Ausgangssensor
{{ states('sensor.stromzaehler_phasea_energy_returned') | float(0) }}

# Template für Automation
{{ states('sensor.stromzaehler_phasea_energy_returned') | float(0) >= 0.03 }}
{{ states('sensor.stromzaehler_phasea_energy_returned') | float(0) <= 0.03 }}

In diesem Beispiel wird der Sensorwert in einen Float-Wert umgewandelt, was die Verwendung von Dezimalstellen ermöglicht. Die Bedingungen können dann in einer Automation verwendet werden, um Aktionen auszulösen, wenn die Bedingungen erfüllt sind.

Schritte zur Umsetzung
1. Öffne die Entwicklerwerkzeuge in Home Assistant und navigiere zum Tab "Template".
2. Füge den Code für den Ausgangssensor ein, um den aktuellen Wert zu überprüfen.
3. Erstelle eine neue Automation, in der du die oben genannten Template-Bedingungen als Auslöser oder Bedingungen verwendest.
4. Definiere die Aktionen, die ausgeführt werden sollen, wenn die Bedingungen erfüllt sind.

Hintergrundwissen
Templates in Home Assistant sind eine mächtige Funktion, die es ermöglicht, Daten dynamisch zu verarbeiten. Sie verwenden die Jinja2-Template-Engine, die es erlaubt, Variablen zu manipulieren und Bedingungen zu überprüfen. Ein häufiger Fehler ist, dass Benutzer versuchen, Werte ohne die Umwandlung in einen Float zu vergleichen, was zu unerwarteten Ergebnissen führen kann.

Zusätzliche Infos

FunktionErklärung
`states('sensor.stromzaehler_phasea_energy_returned')`Ruft den aktuellen Wert des Sensors ab.
`float(0)`Wandelt den Wert in einen Float um, um Dezimalstellen zu ermöglichen.
`>=` und `<=`Vergleichsoperatoren, um Bedingungen für die Automation zu definieren.

Hinweise & Best Practices
- Stelle sicher, dass der Sensorwert immer als Float verarbeitet wird, um Fehler bei der Auswertung zu vermeiden.
- Teste die Templates in den Entwicklerwerkzeugen, bevor du sie in Automationen verwendest, um sicherzustellen, dass sie wie gewünscht funktionieren.
- Dokumentiere deine Automationen und Templates, um die Wartung und Anpassung in der Zukunft zu erleichtern.