Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. Blockly
    5. Wiedermal die fertigmeldung für die Waschmaschine

    NEWS

    • ioBroker@Smart Living Forum Solingen, 14.06. - Agenda added

    • ioBroker goes Matter ... Matter Adapter in Stable

    • Monatsrückblick - April 2025

    Wiedermal die fertigmeldung für die Waschmaschine

    This topic has been deleted. Only users with topic management privileges can see it.
    • Duffy
      Duffy @Duffy last edited by Duffy

      @paul53 und alle anderen Experten

      Bitte lacht mich nicht aus 🙂 aber kann das so funktionieren?

      Es soll der untere Teil des Skripts erst nach 60 min ausgeführt werden.

      Screenshot 2023-10-28 161832.png

      paul53 1 Reply Last reply Reply Quote 0
      • paul53
        paul53 @Duffy last edited by

        @duffy sagte: kann das so funktionieren?

        Nein, Trigger innerhalb eines Triggers funktioniert nicht.

        1 Reply Last reply Reply Quote 0
        • paul53
          paul53 @Duffy last edited by

          @duffy sagte: eine Stunde nach dem Start

          Versuche es mal so:

          Blockly_temp.JPG

          Duffy 2 Replies Last reply Reply Quote 1
          • Duffy
            Duffy @paul53 last edited by

            @paul53

            Klasse, vielen Dank, werde ich gleich bei nächsten Wäsche ausprobieren.

            Viele Grüße Duffy

            1 Reply Last reply Reply Quote 0
            • Duffy
              Duffy @paul53 last edited by

              @paul53

              Hallo Paul53,

              wir haben jetzt einige male gewaschen und es hat geklappt.
              Die Werte, Watt und Zeit, mussten noch etwas optimiert werden aber jetzt schaltet die Maschien nach dem waschen ab und wartet nicht erst noch bis der Knitterschutz fertig ist.

              Jetzt ist mir heute noch aufgefallen das ich
              1b29e9ea-4824-4919-9c2a-efee3a2c7c16-grafik.png

              setze gestartet auf falsch

              im Blockly übersehen habe.
              Wie gesagt es hat ja trotzdem funktioniert. War das jetzt Glück oder Zufall?

              Wie auch immer ich kann das Blockly, made by paul53, nur jedem empfehlen der auch vom Knitterschutz geärgert wird 🙂

              Danke noch mal für deine Mühe.

              Gruß Duffy

              paul53 1 Reply Last reply Reply Quote 0
              • paul53
                paul53 @Duffy last edited by

                @duffy sagte: es hat ja trotzdem funktioniert.

                Ja, aber nur einmal nach Skriptstart.

                Duffy 1 Reply Last reply Reply Quote 0
                • Duffy
                  Duffy @paul53 last edited by

                  @paul53

                  Danke für den Hinweis, ist jetzt aber korrigiert.

                  1 Reply Last reply Reply Quote 0
                  • Duffy
                    Duffy @paul53 last edited by

                    @paul53 sagte in Wiedermal die fertigmeldung für die Waschmaschine:

                    EDIT: Ab Javascript-Version 7.0.5 funktioniert es so nicht mehr, da die Variable fertig bei Ablauf der Verzögerung automatisch auf null gesetzt wird.
                    Alternative für "nicht Verzögerung fertig": "vorheriger Wert > 18".

                    Hallo paul53,

                    vielen Dank für den Hinweis. Aktuell habe ich Javascript 7.1.6 und habe noch keine Änderung feststellen können, Die Waschmaschine hat bis gestern punktgenau abgaschaltet.

                    Wenn du jedoch schon darauf hinweist würde ich es natürlich gerne auch richtig machen.
                    Mein aktuelles Skript schaut so aus, da hattest du ja freundlicherweise noch einige Verbesserungen einfließen lassen.
                    5d9ca9bf-a1d0-4129-b0bc-57d4dbc2a35c-grafik.png

                    Ich habe jetzt einmal versucht deinen Vorschlag umzusetzen und würde dich bitten dir den Screenshot einmal anzusehen ob das nun so passt wie du es meintest.
                    93ad6ee5-9542-4dfb-a889-5dc58ceaf24c-grafik.png

                    VG Duffy

                    paul53 1 Reply Last reply Reply Quote 0
                    • paul53
                      paul53 @Duffy last edited by paul53

                      @duffy sagte: ob das nun so passt

                      Passt.
                      Dass es bei dir trotz der Änderung funktioniert, liegt daran, dass die WM komplett abgeschaltet wird.

                      Duffy 1 Reply Last reply Reply Quote 0
                      • Duffy
                        Duffy @paul53 last edited by

                        @paul53

                        Danke für die Rückmeldung und noch einen schönen ersten Advent.

                        1 Reply Last reply Reply Quote 0
                        • S
                          stronoff last edited by

                          Darf ich mal fragen, wie ihr die Leistung eurer Waschmaschinen (und anderer Hausgeräte) erfasst?

                          Hintergrund meiner Frage ist, dass ich das mit der Homematic IP Schaltmess-Steckdose (HMIP-PSM-2) machen wollte. Aber ich habe das Gefühl, dass die für diese Aufgabe zu träge sind, bzw. übermitteln die Änderungen nicht regelmäßig genug.

                          Vielleicht hab ich sie aber auch nur falsch eingestellt?!?

                          Duffy 1 Reply Last reply Reply Quote 0
                          • Duffy
                            Duffy @stronoff last edited by Duffy

                            @stronoff

                            Ich Messe den Verbrauch der Waschmaschine mit einer Gosund Steckdose die alle 10 Sek Daten liefert.

                            Gruß Duffy

                            Edit: Gosund mit Tasmota über den sonoff Adapter.

                            Duffy 1 Reply Last reply Reply Quote 1
                            • Duffy
                              Duffy @Duffy last edited by

                              @paul53

                              Hallo Paul53,

                              ich freue mich ja das die Blocklys so schön funktionieren.
                              Aber was ich immer noch nicht verstanden habe ist das mit den Timeouts, ich würde es aber gerne verstehen.

                              Könntest du mir bitte erklären was in dem rot umrandeten Bereich passiert?

                              f9683df7-7a6d-4fb0-af34-7dc2c30adc97-grafik.png

                              Ich hatte auch schon zum Thema Timeouts gegoogelt, auch nachvollziehbare Beispiele gefunden aber so etwas habe ich nicht gefunden.

                              VG Duffy

                              Codierknecht paul53 2 Replies Last reply Reply Quote 0
                              • Codierknecht
                                Codierknecht Developer Most Active @Duffy last edited by Codierknecht

                                @duffy
                                Ich springe da mal ein ...

                                Es passiert folgendes:
                                Wenn die WM mehr als 21 W verbrät, wird ein evtl. laufender timeout gestoppt. Könne ja sein, dass die Maschine beim Wechsel der Programme mal kurz weniger als 21 W braucht.

                                Verbraucht sie <= 21 W, wird zunächst geschaut, ob vielleicht schon ein timeout läuft, denn es muss ja kein weiterer gestartet werden. Du willst die Meldung ja nur 1x erhalten.
                                Läuft kein timeout, wird einer gestartet, der nach 50 Sekunden eine Meldung ausgibt.

                                Soweit verständlich?

                                1 Reply Last reply Reply Quote 0
                                • paul53
                                  paul53 @Duffy last edited by paul53

                                  @duffy sagte: was in dem rot umrandeten Bereich passiert?

                                  Das hat @Codierknecht gut erklärt. Nur leider funktioniert es seit JS-Version 7.0.5 so nicht mehr, da nun Blockly bei Ablauf der Verzögerung die Timer-Variable fertig automatisch auf null setzt. Bei schwankender Leistung <= 21 wird der Timeout erneut gestartet.

                                  Codierknecht Duffy 2 Replies Last reply Reply Quote 0
                                  • Codierknecht
                                    Codierknecht Developer Most Active @paul53 last edited by

                                    @paul53 sagte in Wiedermal die fertigmeldung für die Waschmaschine:

                                    Bei schwankender Leistung <= 21 wird der Timeout erneut gestartet

                                    Dann müsste man das selbst über eine Statusvariable verwalten.

                                    paul53 1 Reply Last reply Reply Quote 0
                                    • paul53
                                      paul53 @Codierknecht last edited by paul53

                                      @codierknecht sagte: über eine Statusvariable verwalten.

                                      Es genügt, "nicht Verzögerung timeout" durch "vorheriger Wert > Grenzwert" zu ersetzen.

                                      M 1 Reply Last reply Reply Quote 0
                                      • Duffy
                                        Duffy @paul53 last edited by Duffy

                                        @paul53 sagte in Wiedermal die fertigmeldung für die Waschmaschine:

                                        @duffy sagte: was in dem rot umrandeten Bereich passiert?
                                        Das hat @Codierknecht gut erklärt. Nur leider funktioniert es seit JS-Version 7.0.5 so nicht mehr, da nun Blockly bei Ablauf der Verzögerung die Timer-Variable fertig automatisch auf null setzt. Bei schwankender Leistung <= 21 wird der Timeout erneut gestartet.

                                        Ja das hattest du geschrieben, das habe ich bei dem aktiven Blockly auch geändert und es läuft. Mir ging es bei dem Screenshot eher um das grundsätzliche beim Timeout.

                                        @Codierknecht Danke für deine Mühe, leider ist der Groschen noch nicht gefallen, vermutlich bin ich zu doof, werde es mir aber morgen noch einmal in Ruhe ansehen. Also sagen wir so, ich verstehe die Erklärung bekomme sie aber nicht mit den Blocklybausteinen zusammen.

                                        VG Duffy

                                        Edit: das ist das aktive Blockly nur hätte ich es da ja noch weniger verstanden.

                                        1b926441-49ea-49f7-aa44-cb4b7124b358-grafik.png

                                        paul53 1 Reply Last reply Reply Quote 0
                                        • paul53
                                          paul53 @Duffy last edited by

                                          @duffy sagte: leider ist der Groschen noch nicht gefallen

                                          Vielleicht, wenn ich die Aussage von @Codierknecht ergänze?

                                          @codierknecht sagte: Wenn die WM mehr als 21 W verbrät, wird ein evtl. laufender timeout gestoppt
                                          ... und die Timer-Variable auf null gesetzt.

                                          Codierknecht 1 Reply Last reply Reply Quote 0
                                          • Codierknecht
                                            Codierknecht Developer Most Active @paul53 last edited by

                                            @Duffy
                                            Vielleicht muss man zum Verständnis auch noch etwas weiter ausholen.

                                            Wenn man so einen timeout startet, tritt man ja nicht einfach etwas los, was dann nach Ablauf der Zeitspanne irgendwelche Dinge tut.
                                            timeout kann man auch abfragen - wie jede andere Variable auch.

                                            Damit kann man dann sowohl einen laufenden timeout abbrechen
                                            b204be26-8b07-4c98-8e86-6df63a5452d0-grafik.png
                                            aber auch abfragen, ob timeout gerade läuft (existiert) oder nicht.
                                            f1e7af90-0ff5-4827-887c-1954d727dfe5-grafik.png
                                            Aber wie @paul53 schon schreibt: Wenn das mit JS > 7.0.5 nicht mehr funktioniert, muss man auf anderem Wege herausfinden, ob der Wert (Power) gerade von > 21 auf < 21 gewechselt hat.
                                            Wenn er bei der letzten Änderung bereits unter 21 war, wurde ja der timeout bereits angeschubst.

                                            Vielleicht wäre mein Vorschlag mit der Statusvariablen einfacher?
                                            Man setzt bei < 21 mit dem Start des timeout eine Variable timerLaeuft auf true.
                                            Wenn beim Auslösen des Triggers der Wert erneut < 21 und diese Variable true ist, wurde der timeout bereits gestartet und man muss ihn nicht erneut anschubsen.
                                            Wechselt der Wert vor Ablauf auf > 21, stoppt man den timeout und setzt die Variable wieder auf false.
                                            Ist etwas umständlicher als @paul53's Vorschlag, aber evtl. einfacher zu verstehen.

                                            Duffy 1 Reply Last reply Reply Quote 1
                                            • First post
                                              Last post

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            906
                                            Online

                                            31.6k
                                            Users

                                            79.6k
                                            Topics

                                            1.3m
                                            Posts

                                            10
                                            85
                                            5143
                                            Loading More Posts
                                            • Oldest to Newest
                                            • Newest to Oldest
                                            • Most Votes
                                            Reply
                                            • Reply as topic
                                            Log in to reply
                                            Community
                                            Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen
                                            The ioBroker Community 2014-2023
                                            logo