|

Waschen, schleudern, trocknen

Da war sie nun, die neue Waschmaschine. Sie war preisgünstig, einfach zu bedienen, schönes Design und hatte alle ‚Features‘, die man zum waschen benötigt. Nur hatte sie weder Bluetooth, WLAN noch einen Netzwerkanschluss eingebaut. Eine elektronische Nachrüstung wäre zu kompliziert (oder mangels Schaltungsunterlagen unmöglich) und sehr zeitaufwendig. Meine Idee: Home Assistant und eine Z-Wave Steckdose mit Leistungsmessung. Ich hatte noch einen Greenwave Z-Wave Steckdosenschalter übrig:

Es funktionieren natürlich auch andere Schalter mit Leistungsmessung. Die Grundidee war eigentlich, das die Waschmaschine in verschiedenen Betriebszuständen auch unterschiedliche Leistungen benötigt. Also erstellte ich einen Liste der Leistungsaufnahmen in den Zuständen:

  • ausgeschaltet (Greenwave Z-Wave Schalter aus)
  • standby (Waschmaschine nur eingeschaltet)
  • aktiv (Wasser wird in die Maschine bzw. aus der Maschine gepumpt)
  • waschen (Trommel dreht sich langsam)
  • schleudern (Trommel dreht sich schnell)
  • heizen (Wasser wird in Intervallen aufgeheizt)
  • eingeschaltet

Nach den Testläufen hatte ich nicht nur jede Menge frische Wäsche, sondern auch eine Liste mit den Leistungsaufnahmen über die gesamten Waschvorgänge. Um die Sollwert-Bereiche jederzeit anpassen zu können, verwende ich vier Helfer für die jeweiligen Leistungen und mache daraus ein Sensor-Template, in dem ich die aktuelle Leistung in W in der Entität sensor.waschmaschine mit den Sollwerten in den Helfern vergleiche:


- sensor:
    - name: "Waschmaschine"
      unique_id: washing_machine
      state: >
        {% set power = states('sensor.waschmaschine')|float(0)|round(0,0,0) %}
        {% if is_state('switch.waschmaschine', 'off') %}
          {% set status = 0 %}
        {% elif power <= states('input_number.wm_power_ein')|float(0) %}
          {% set status = 1 %}
        {% elif power < states('input_number.wm_power_betrieb')|float(0) %}
          {% set status = 2 %}
        {% elif power >= states('input_number.wm_power_heizung')|float(0) %}
          {% set status = 5 %}
        {% elif power >= states('input_number.wm_power_motor')|float(0) %}
          {% set status = 4 %}
        {% elif power >= states('input_number.wm_power_betrieb')|float(0) %}
          {% set status = 3 %}
        {% else %}
          {% set status = 6 %}
        {% endif %}      
        {{ status }}

Die Reihenfolge der Abfragen ist hier entscheidend. Trifft keine der Vergleiche zu, dann ist die Waschmaschine nur ‚eingeschaltet‚. Ist der Z-Wave Schalter switch.waschmaschine ausgeschaltet, wird der Status auf 0 gesetzt. Fehlt nur noch ein anzeigbarer Text:


- sensor:
    - name: "Status Waschmaschine"
      unique_id: wm_stat_text
      state: >
        {% set t = ('Ausgeschaltet', 'Standby', 'Aktiv', 'Waschen', 'Schleudern', 'Heizen', 'Eingeschaltet') %}
        {% set stat = states('sensor.waschmaschine')|int(0) %}
        {{ t[stat] }}

Für meine Waschmaschine gelten folgende Sollwert-Bereiche (in Watt):

  • input_number.wm_power_betrieb = 2.3
  • input_number.wm_power_ein= 0.4
  • input_number.wm_power_heizung = 1000.0
  • input_number.wm_power_motor = 130.0

Somit kann ich mit dem Text-Sensor Status Waschmaschine Meldungen am Dashboard anzeigen oder an meinen Signal Messenger senden. Natürlich habe ich auch an die Sicherheit gedacht – ein Everspring Wassersensor benachrichtigt mich über ein mögliches Wasserleck – damit lässt sich dann ein Wasserventil schliessen und die Waschmaschine ausschalten.

Diese Automation hat viel Erweiterungspotential. Es ließe sich noch der Wasch-Zyklus identifizieren, in dem die Trommel langsam in einem bestimmten Rhythmus die Drehrichtung ändert. Auch hier sind der Fantasie kaum Grenzen gesetzt.

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert