Ankündigung

Einklappen
Keine Ankündigung bisher.

EFH KNX Zustandsautomaten

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

    #16
    Hi,

    Zitat von trollvottel Beitrag anzeigen
    Eine simple grün blinkende LED auf der MDT Glas-LED-Anzeige im Wohnbereich signalisiert "PV-Überschuss" (Günstiger Zeitpunkt, beliebige Verbraucher einzuschalten: Geschirrspüler, WaMa, Trockner, Sauger, ...)
    so eine Anzeige hab ich auch, für die anderen Geräte. Beim Geschirrspüler und WaMa (Trockner haben wir nicht) wollte ich einfach einschalten können und der macht dann das "Richtige". Was das "Richtige" ist, wird dann eben algorithmisch bestimmt. Oder man übersteuert es manuell.

    Zitat von trollvottel Beitrag anzeigen
    Ich hätte da noch eine Idee zur Verbesserung Deines Automaten, damit "Frau" nicht abends heimkommt und der Spüler gar nicht gelaufen ist, weil der Tag dann doch nur Wolken brachte und keiner da war, um die "Dennoch Waschen"-Taste zu drücken (Würde meine Frau und mich selber ziemlich ärgern): Ein simpler Timer, der sicherstellt, dass das Gerät bis zum Abendessen fertig ist.
    Die Idee hatte ich auch, aber ich versuch mich erstmal mit
    Zitat von mumpf Beitrag anzeigen
    P.S.: Ich arbeite gerade daran, noch eine Prognosefunktion in den Zustandsautomaten zu integrieren. Wenn die Wettervorhersage für den aktuellen Tag sowieso nur Wolken vorhersagt, dann muss man ja auch nicht auf "genug PV" warten, sondern kann gleich waschen.
    Das finde ich spannender . Und mir/meiner Frau kommen bestimmt noch ein paar andere Ideen, welche weiteren Bedingungen man noch implementieren kann.

    Zitat von trollvottel Beitrag anzeigen
    Übrigens: Den Geschirrspüler am Warmwasser anzuschließen, spart u.U. nochmal richtig ordentlich Strom!
    Ich wollte das machen lassen, aber der Kücheninstallateur meinte, dafür braucht man spezielle Geschirrspüler und wir hatten unseren schon gekauft. Ist das gar nicht so? Dann werde ich das vielleicht nochmal nachinstallieren lassen. Ich habe das dummerweise damals gar nicht weiter verfolgt.

    Gruß, Waldemar
    OpenKNX www.openknx.de

    Kommentar


      #17
      Zitat von mumpf Beitrag anzeigen
      Ich wollte das machen lassen, aber der Kücheninstallateur meinte, dafür braucht man spezielle Geschirrspüler und wir hatten unseren schon gekauft. Ist das gar nicht so? Dann werde ich das vielleicht nochmal nachinstallieren lassen.
      Im Grunde geht das mit allen. Aber natürlich kann ein darauf angepasstes Programm damit besser umgehen, z.B. für die verkürzte Restlaufzeitanzeige. Der meiste Strom geht ja für das Aufheizen drauf, das geht damit einfach deutlich effizienter und schneller. Bei unserem (Bosch SBV68TX06E) kann man es im Setup konfigurieren, vielleicht bei Deinem auch?

      War übrigens eine Sache von ca. 10 Minuten, das selber zu machen, Materialeinsatz: 50cm Teflonband. Einfach Wasser zentral abdrehen, an einer tiefer gelegenen Entnahmestelle das Kalt- & Warmwasser aufdrehen um die Leitungen leerlaufen zu lassen (erspart komplett die Sauerei). Dann einfach die beiden Eckventile vertauschen, ggfs. mit Teflonband neu abdichten. Konnte ich sogar einfach mit der Hand rausdrehen, weil die Installation noch relativ jung war (1,5 Jahre).

      Bei den Waschmaschinen ist es schwieriger, da will man definitiv auch mal kaltes Wasser haben. Da gibt es spezielle Maschinen mit Anschlüssen für beides. Das haben wir aber auch nicht, weil erstens Maschine mit umgezogen und zweitens WW-Anschluß vergessen aufzubemustern.
      Zuletzt geändert von trollvottel; 21.12.2020, 15:29.

      Kommentar


        #18
        Wenn man das Optimum aus der PV holen möchte ist eine Geräteindividuelle Auswertung schon von Vorteil, weil dann kann die Wama auch erstmal warten bis der Geschirrspüler fertig ist. Beides zusammen könnte ja auch wieder zum Strombezug vom EVU führen.

        Das mit dem Timer spätestes Zwangs-AN aus der Logik um ein gesichertes Fertig zum Abendessen zu haben finde ich ein clevere Ergänzung, natürlich zur Prognose am Morgen.
        ----------------------------------------------------------------------------------
        "Der Hauptgrund für Stress ist der tägliche Kontakt mit Idioten."
        Albert Einstein

        Kommentar


          #19
          Hi ihr beiden,

          Zitat von gbglace Beitrag anzeigen
          Das mit dem Timer spätestes Zwangs-AN aus der Logik um ein gesichertes Fertig zum Abendessen zu haben finde ich ein clevere Ergänzung, natürlich zur Prognose am Morgen.
          da habt ihr beide recht, hat meiner Frau auch gleich gefallen, als ich ihr das erzählt habe. Werde ich wohl so realisieren.

          Zitat von trollvottel Beitrag anzeigen
          Bei unserem (Bosch SBV68TX06E) kann man es im Setup konfigurieren, vielleicht bei Deinem auch?
          Nee, leider nicht, kein Setup-Menü o.ä. vorhanden. Aber ich werde das mal angehen, sobald die Baumärkte wieder auf haben. Ich kann das Eckventil nicht einfach tauschen, da am Kaltwasseranschluß auch noch meine Kaffeemaschine mit Festwasseranschluß sitzt... wobei, der würde ja Warmwasser auch nicht schaden

          Oh mann, wieder so viel zu tun, obwohl ja "eigentlich" alles läuft
          ​​​​​​​
          Gruß, Waldemar
          OpenKNX www.openknx.de

          Kommentar


            #20
            mumpf

            Nur als Hinweis: Also bei mir in der Anleitung des Geschirrspülers steht ganz klar drinne, dass z.B. der AquaStopp nur mit Strom funktioniert und das die lebenslange Zusatz-Garantie des Herstellers ohne Strom nicht greift. Solche "Experimente" (die Idee finde aber trotzdem super) haben halt auch Nebenwirkungen, was man beachten sollte.
            OpenKNX www.openknx.de | OpenKNX-Wiki (Beta)

            Kommentar


              #21
              Zitat von traxanos Beitrag anzeigen
              und das die lebenslange Zusatz-Garantie des Herstellers ohne Strom nicht greift.
              Die Zusatzgarantie auf was? Oder will mir der Hersteller dann sagen, hui Verkaufsdatum der Maschine war vor 7 Jahren, Stunden unter Strom aber kleiner 7*365*24, daher entfällt die Garantie?
              ----------------------------------------------------------------------------------
              "Der Hauptgrund für Stress ist der tägliche Kontakt mit Idioten."
              Albert Einstein

              Kommentar


                #22
                Die Zusatzgarantie für das AquaStop, nicht die normale Garantie oder die Gewährleistung. Solltest du also wegen einem nicht funktionierend AquaStop (kein Strom) einen Wasserschaden haben, dann brauchst darauf nicht bei denen Vorstellig werden, das lässt sich leicht überprüfen. Ob das überhaupt jemand in Anspruch genommen hätte
                OpenKNX www.openknx.de | OpenKNX-Wiki (Beta)

                Kommentar


                  #23
                  Zitat von mumpf Beitrag anzeigen
                  Und ich würde sie nicht den Transitionen zuordnen, ganz einfach deswegen, weil es viel mehr Transitionen als Zustände gibt und ich müsste dann die gleichen Aktionen mehrfach machen (an mehrere Transitionen hängen).
                  Eventuell bietet es sich an Zwischen-Zustände einzuführen die nur den Zweck haben den Fluss zu bündeln. Anstelle mehrerer Transitionen welche die selben Aktionen ausführen gibt es einen Zwischenzustand. Dieser wird unmittelbar durch den nächsten Trigger verlassen und erreicht das Zielt.

                  knxforum.png

                  Ob das Einfacher ist hängt von der Implementierung ab.

                  Zitat von mumpf Beitrag anzeigen
                  Ich habe diesen Automaten übrigens auch noch auf eine andere Weise realisiert, ich weiß keinen Fachausdruck dafür, kenne ich nur von Callidomus und SmarthomeNG.py her. Im Prinzip geht das so:
                  • Alle Trigger werden dem Laufzeitsystem bekannt gegeben und jeder Trigger löst eine Evaluation des Zustandsautomaten aus
                  • Die Evaluation durchläuft eine Liste von Conditions, jede Condition kann aus komplexen UND/ODER-Ausdrücken bestehen
                  • Mit jeder Condition ist ein Zustand verbunden. Die erste Condition in der Liste, die erfüllt wird, führt zu dem ihr zugeordnetem Zustand.
                  • Der Zustand wird angenommen und er führt die ihm zugeordneten "on entry"-Aktionen durch
                  • Es gibt auch while- und on exit-Behandlung, aber die hab ich bisher nicht gebraucht.
                  Ich kenne weder Callidomus noch SmarthomeNG.py, aber das klingt nach einer sinnvollen Implementierung eines Zustandsautomaten.
                  Das Kernproblem ist natürlich dass man an die Möglichkeiten des Systems gebunden ist. Ich habe bisher nur mit Homeassistant gespielt und bin nicht ganz so begeistert weil mir diese Scriptsprache noch Kopfzerbrechen bereitet.
                  Aber wieso machst du es nicht in Homeassistant wenn es da anscheinend besser geht?
                  Man kann ja auch nur einen Teil der Automatisierung mit HA umsetzen.


                  Ich bin ja eigentlich total KNX unerfahren und nur über den Thread gestolpert. Bin mal gespannt wie das weitergeht ...

                  Ich frage mich nur ob man es nicht so hinbekommt dass der Bus komplett Zustandsfrei bleibt. D.h. keine Sperren o.ä. sondern der Bus hat immer Vorfahrt. Drückt man Waschen, dann wäscht die Wäsche. Alles andere setzt man obendrauf.

                  Kommentar


                    #24
                    Zitat von Chr1stoph Beitrag anzeigen
                    Drückt man Waschen, dann wäscht die Wäsche. Alles andere setzt man obendrauf.
                    Weil nicht alle Geräte so an den KNX-Koppelbar sind das es ein GW von KNX direkt in die Waschmaschine gibt. Daher teilweise die Umwege über KNX-Bedienung (Taster / Logiken) und manuelle Maschinen-Bedienung.

                    Wenn Du natürlich so eine Maschine mit gut dokumentierter IoT Schnittstelle hast, die auch alle Möglichkeiten der Bedienung wie am Gerät selbst ermöglicht, dann kann man natürlich einfach am Gerät oder in einer KNX-Visu seine Waschprogramme usw. einstellen. Und bei funktionierender Logik übernimmt diese den Rest oder wenn nicht, dann läuft das eben durch. Solange aber diese beiden Intelligenzen nicht direkt miteinander sprechen und auf einander hören können, kann man nur indirekt irgendwie auf die Bremse treten (Steckdose aus) damit der eine Prozess eben pausiert, bis der andere sagt mach weiter.
                    Nicht jeder kauft sich ne neue Wama, nur weil man sich gerade einen tollen Zustandsautomaten ausgedacht hat.
                    ----------------------------------------------------------------------------------
                    "Der Hauptgrund für Stress ist der tägliche Kontakt mit Idioten."
                    Albert Einstein

                    Kommentar


                      #25
                      Zitat von gbglace Beitrag anzeigen
                      Weil nicht alle Geräte so an den KNX-Koppelbar sind das es ein GW von KNX direkt in die Waschmaschine gibt. Daher teilweise die Umwege über KNX-Bedienung (Taster / Logiken) und manuelle Maschinen-Bedienung.
                      Ich glaube wir reden aneinander vorbei. Der Zustsandsautomat ist übrigens nicht von mir und meine Waschmaschine kann auch kein IoT. Oder sonst was. Nur Waschen.

                      Was ich mit "Drückt man Waschen, dann wäscht die Wäsche" meine ist - glaube ich - das Gegenteil von dem was du verstanden hast.
                      Der Kram soll einfach funktionieren, ich persönlich will keinen Automatismus der mir dazwischenfunkt. ( ich habe aber auch keine PV)
                      Ich finde solche Überlegungen und "Spielereien" zwar toll aber stehe dem auch sehr skeptisch gegenüber.

                      Meine persönliche KNX-Planung (noch Zukunftsmusik) geht auch eher in die andere Richtung: Konventionelles Verhalten ohne viel Automatismus. Außer Späße wie "alle Lichter aus" oder "Markise rein wenns knallt".

                      Kommentar


                        #26
                        Hi,

                        Zitat von traxanos Beitrag anzeigen
                        Also bei mir in der Anleitung des Geschirrspülers steht ganz klar drinne, dass z.B. der AquaStopp nur mit Strom funktioniert
                        Ja klar braucht AquaStopp Strom - um das Ventil aufzumachen! Ansonsten wäre ein solcher Hinweis ganz klar ein Grund für mich, die Maschine nicht zu kaufen. Es geht hier um Sicherheitstechnik. Die einzige sinnvolle Realisierung von AquaStopp kann nur sein, dass das Ventil stromlos geschlossen ist. Ein Stromausfall kann jederzeit in einem Haus passieren. Oder die Sicherung abgeschaltet werden, weil Elektroarbeiten anliegen. In der Zeit darf so ein AquaStopp nicht deaktiviert sein, vor allem wenn man eine lebenslange Garantie gibt.

                        Insofern verstehe ich den Hinweis in der Bedienungsanleitung nicht...

                        Zitat von Chr1stoph Beitrag anzeigen
                        Ich frage mich nur ob man es nicht so hinbekommt dass der Bus komplett Zustandsfrei bleibt. D.h. keine Sperren o.ä. sondern der Bus hat immer Vorfahrt
                        Bisher habe ich es fast hinbekommen - die Sperre beim Geschirrspüler ist die einzige. Aber egal wie man es macht, man muss beim Neustart des Servers auf jeden Fall versuchen, den Zustandsautomaten möglichst gut in Sync mit dem Bus zu bekommen.

                        Zitat von Chr1stoph Beitrag anzeigen
                        Meine persönliche KNX-Planung (noch Zukunftsmusik) geht auch eher in die andere Richtung: Konventionelles Verhalten ohne viel Automatismus. Außer Späße wie "alle Lichter aus" oder "Markise rein wenns knallt".
                        Klar, jeder darf das so weit treiben, wie er will. Ich hätte nur anderes erwartet, mit Deinen Vorkenntnissen.

                        Gruß, Waldemar
                        OpenKNX www.openknx.de

                        Kommentar


                          #27
                          Zitat von Chr1stoph Beitrag anzeigen
                          Was ich mit "Drückt man Waschen, dann wäscht die Wäsche" meine ist - glaube ich - das Gegenteil von dem was du verstanden hast.
                          Der Kram soll einfach funktionieren, ich persönlich will keinen Automatismus der mir dazwischenfunkt. ( ich habe aber auch keine PV)
                          Ich finde solche Überlegungen und "Spielereien" zwar toll aber stehe dem auch sehr skeptisch gegenüber.
                          Ja da haben wir uns hier vollständig Missverstanden. Und es mag zwar Spielerei sein aber damit man es eben nicht skeptisch sehen muss, machen wir uns hier Gedanken wie eine stabile Logik aussehen sollte um eben immer manuell überstimmen zu können und sonst den Komfort oder Kostenvorteile aus den sonstigen Gegebenheiten des Hauses nutzen zu können.

                          KNX und Smarthome wird ja nun immer mit beworben auch energiesparend zu sein, insofern wollen wir der Werbung auch mal unter die Arme greifen.

                          Wenn es uns nur darum gehen würde auf theoretischer Ebene einen Zustandsautomaten zu ergründen, wäre das hier ein mögliches aber wahrscheinlich nicht das optimale Forum.
                          ----------------------------------------------------------------------------------
                          "Der Hauptgrund für Stress ist der tägliche Kontakt mit Idioten."
                          Albert Einstein

                          Kommentar


                            #28
                            Zitat von mumpf Beitrag anzeigen
                            Ja klar braucht AquaStopp Strom - um das Ventil aufzumachen! Ansonsten wäre ein solcher Hinweis ganz klar ein Grund für mich, die Maschine nicht zu kaufen
                            Ich weis nicht warum der Hinweis so im Handbuch steht. Aber vielleicht is ja noch mehr verbaut? Leckagesensor... Aber ich sagte ja ich würde mich auf die Zusatzgarantie nicht verlassen. Dafür gibt es passende Versicherungen.
                            OpenKNX www.openknx.de | OpenKNX-Wiki (Beta)

                            Kommentar


                              #29
                              Hi Christoph,

                              zu Deinem Diagramm oben und dieser Anmerkung:
                              Zitat von Chr1stoph Beitrag anzeigen
                              Eventuell bietet es sich an Zwischen-Zustände einzuführen die nur den Zweck haben den Fluss zu bündeln. Anstelle mehrerer Transitionen welche die selben Aktionen ausführen gibt es einen Zwischenzustand. Dieser wird unmittelbar durch den nächsten Trigger verlassen und erreicht das Zielt.
                              Vielleicht reden wir auch aneinander vorbei (oder ich sehe den Wald vor lauter Baumen nicht) - wie gesagt, ich bin nicht wirklich vom Fach, was Zustandsautomatentheorie angeht, ich habe aber einige realisiert, weil ich sie sehr übersichtlich und änderungsfreundlich finde.

                              Ich skizziere mal kurz, wie ich das in Home Assistant (HA) realisiert habe, vielleicht meinen wir das selbe und reden nur aneinander vorbei.

                              In HA gibt es "automations", das ist für mich das Mittel der Wahl für meine Zustandsautomaten, da sie Formulierungen der Form
                              Code:
                              trigger: ...
                              condition: ...
                              action: ...
                              erlauben und damit ideal für Transitionen (also für Zustandsübergänge) geeignet sind. Um den aktuellen Zustand zu speichern, verwende ich nur eine normale (string)-Variable (letztendlich ist das doch ein Objekt, da ich neben dem Zustand auch noch für das UI einen Text für den Zustand setze und so auch die Möglichkeit habe, weitere Zusatzinfo zu speichern, aber das ist für die Betrachtung nicht wichtig).

                              Wenn man nur die Variable anschaut, dann ist der Zustand natürlich "dumm", der kann nichts machen. Was ich dann zusätzlich immer mache, ist eine Aktion, die bei der Änderung der Zustandsvariable getriggert wird :
                              Code:
                                  alias: "kueche_geschirr_strom"
                                  description: Geschirrspüler Steckdose an
                                  trigger:
                                    - platform: state
                                      entity_id: [COLOR=#16a085]variable.kueche_geschirr_state
                                      to: "strom"[/COLOR]
                                  action:
                                    - service: homeassistant.[COLOR=#2980b9]turn_off[/COLOR]
                                      entity_id:
                              [COLOR=#2980b9]         - switch.kueche_geschirr_trotzdem_waschen
                                        - input_boolean.kueche_geschirr_pv_warnung
                                        - input_boolean.kueche_geschirr_fertig[/COLOR]
                                    - service: variable.set_variable
                                      data:
                                        variable: kueche_geschirr_state
                                        attributes:
                              [COLOR=#2980b9]           text: "Steckdose ein"[/COLOR]
                              Hier im Beispiel ist der Trigger "Zustandsvariable wird auf den Wert 'strom' gesetzt" (gruen), als Aktion werden einige Objekte ausgeschaltet und der Text des Zustandes auf "Steckdose ein" gesetzt (blau). Ich habe zwar immer davon geschrieben, dass ein Zustand auch alle Aktionen ausführt, aber man kann das natürlich auch so betrachten, dass es zu jedem (dummen) Zustand einfach eine Ausgabefunktion gibt, die dann die Aktionen macht. Auf jeden Fall hat so eine Ausgabefunktion (bei mir) immer einen einfachen Trigger und potentiell viele Aktionen.

                              Eine Transition sieht dagegen immer so aus:
                              Code:
                                  alias: "kueche_geschirr_aus_strom"
                                  description: Vom Zustand aus nach strom
                                  trigger:
                                    - platform: state
                                      entity_id: [COLOR=#16a085]switch.kueche_geschirr_steckdose
                                      to: "on"[/COLOR]
                                  condition:
                                    condition: state
                                    entity_id: [COLOR=#e67e22]variable.kueche_geschirr_state
                                    state: "aus"[/COLOR]
                                  action:
                                    - service: variable.set_variable
                                      data:
                                        variable: [COLOR=#2980b9]kueche_geschirr_state
                                        value: "strom"[/COLOR]
                              Es gibt einen oder mehrere externe Trigger (gruen), eine oder mehrere Bedingungen, die erfüllt sein müssen (orange), wobei mindestens immer auf den aktuellen Zustand geprüft werden muss und nur eine simple Aktion, die die Zustandsvariable auf den neuen Zustand setzt (blau).

                              So wie ich Dein Diagramm oben verstehe, würden die Zwischenzustände nur dazu genutzt werden, damit alle notwendigen Aktionen an eine einzige Transition gehängt werden können und nicht mehrfach repliziert werden müssen. Damit hätte ich aber viele neue Zwischenzustände und faktisch würde das, was ich jetzt "Ausgabefunktion" genannt habe, immer von Zwischenzustand auf den gewünschten Zustand führen, der dann nicht mehr macht (keine Ausgabefunktion auslöst).

                              Ich muss sagen, dass meinem Denkmodell der Ansatz mit der Ausgabefunktion eher entspricht und ich (zumindest bisher) keine Vorteile in dem anderen Ansatz erkenne - eher sogar die Nachteile der zusätzlichen Zwischenzustände. Insofern werde ich bei meinem Ansatz bleiben. Aber danke für die Anregung, so konnte ich das mal durchdenken und aus einem weiteren Blickwinkel bewerten.

                              Zitat von Chr1stoph Beitrag anzeigen
                              Ich habe bisher nur mit Homeassistant gespielt und bin nicht ganz so begeistert weil mir diese Scriptsprache noch Kopfzerbrechen bereitet.
                              Da sieht man, wie unterschiedlich die Ansichten sein können... mir hat das auf Anhieb gefallen, weil es relativ klar zu lesen ist und man auch ohne Doku erfasst, was gemeint ist. Das einzige, womit man sich mal vorher auseinandersetzen muss, ist die Syntax von YAML, da kann HA nichts für, da leiden alle drunter.

                              Gruß, Waldemar
                              Zuletzt geändert von mumpf; 22.12.2020, 10:13.
                              OpenKNX www.openknx.de

                              Kommentar

                              Lädt...
                              X