Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. Blockly
    5. Blockly Trockner Überwachung "Problem"

    NEWS

    • Neuer Blog: Fotos und Eindrücke aus Solingen

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

    • ioBroker goes Matter ... Matter Adapter in Stable

    Blockly Trockner Überwachung "Problem"

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

      @wusa sagte in Blockly Trockner Überwachung "Problem":

      Falls das Objekt Leistung verändert wird:
      Falls der Wert > 200 ist, dann mache "stop fertig"
      Somit ist doch das Skript im Knitterschutz wenn die Trommel stehen bleibt, sofort erfüllt?

      Ich komme doch dann gar nicht in den "sonst falls" Fall rein?

      Im "sonst falls" wird der vorherige Wert abgefragt. Diese Abfrage bedeutet: Wenn Wert das erste Mal kleiner oder gleich 200 ist. Nur dann soll der Timer gestartet werden. Wenn dann innerhalb von fünf Minuten der Wert wieder über 200 steigt, war es wohl nur die ausgeschaltete Heizung mitten im Betrieb. Erst wenn es mindestens fünf Minuten lang unter 200 bleibt, kommt man an die Stelle "Meldung fertig".

      W 1 Reply Last reply Reply Quote 2
      • W
        wusa @Zarello last edited by wusa

        @zarello

        Ich stehe momentan auch vor dem Problem, dass ich gerne meinen Trocker überwachen würde.
        Allerdings sieht meine Trockner Kurve etwas anders aus:

        8564a3ad-aa2b-4c4a-bdb2-9b3cbb3f27d7-image.png
        Hier mal eine detailierter Screenshot.
        0c64a309-4961-4bd9-99d4-9838feca5610-image.png Angegeben ist hier ~135 Watt.

        f960939a-f6c2-415c-be5f-e8971e99f5ee-image.png
        Im Knitterschutz sind aber immer wieder mal Ausschläge dabei, die genauso hoch oder höher sind.

        Die Logik, die hier am Anfang von dem Thread angewendet wird, dass es eine bestimmt Zeit unter einem Wert liegen muss, kann ich leider in meinem Fall nicht anwenden.

        Kann man irgendwie einen Zähler machen, wenn innerhalb einer bestimmten Zeit der Wert unter 5 Watt fällt dann sollte er fertig sein?
        f05ab1fc-812b-4d45-ac7b-0f5988584107-image.png
        a3f7973e-003a-44cc-b095-8ba392cd2834-image.png ab8c4839-698e-438e-9b69-c11e95f3ae5d-image.png

        17:32:58 > 5W
        17:33:31 > 5W
        17:34:04 > 5W

        Oder kann man das irgendwie anders angehen? Es sind dazwischen auch immer wieder mal kurz Phasen, in denen die Watt zahlt sinkt auf ~5 Watt.

        0d1e2fd2-48e8-46b9-adbb-84f607050b83-image.png
        Aber meist nur 2-3x

        Eigentlich könnte man sagen, wenn der Wert innerhalb von 5 Minuten 5x bei unter 5 Watt liegt, sollte er fertig sein?

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

          @wusa sagte: Trockner Kurve

          Soweit ich erkennen kann, sind die zwischenzeitlichen Pausen (< 200 W) unter 15 Minuten lang. Also sollte das Prinzip mit einer Verzögerung von 15 Minuten funktionieren.

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

            @paul53
            Ja soweit ich sehe, liegen die Zwischenpausen bei < 200W für ~12 Minuten.
            Dann könnte es klappen.

            Da hatte ich vorher vermutlich irgendwie anders gedacht.

            Ich teste das Skript. Danke!

            Edit: @paul53
            Irgendwie lässt mich der Gedanke nicht los, dass man das anders auch angehen könnte.
            Mein Knitterschutz läuft ungefähr 30 Min lang. Davon sind immer wieder in ungefähr 30 Sekunden abständen die Werte unter 5 Watt.
            Wäre es nicht irgendwie besser, das anders abzufangen?

            Wenn Wert für 5 Min min. 10x unter 5 Watt liegt, dann ist der Trockner fertig.
            Dann würde der Knitterschutz vielleicht auch nicht immer die kompletten 30 Min nachlaufen.
            Hier mal eine Detailansicht auf einen Teil vom Kitterschutz. Ausschnitt ist genau 5 Minuten lang.
            94528116-58a8-40e6-90af-db6575b72ce4-image.png

            Zarello paul53 2 Replies Last reply Reply Quote 0
            • Zarello
              Zarello @wusa last edited by

              @wusa Würde nicht schon eine Prüfung auf min. 15 Sekunden unter 5W reichen? Dann würde es schon bei der ersten Pause anschlagen.
              Alternativ, um etwas sicherer zu sein: 30 Sekunden unter 5W in einem Zeitraum von 60 Sekunden.

              W 1 Reply Last reply Reply Quote 0
              • W
                wusa @Zarello last edited by

                @zarello
                Habe es gerade mit dem "Zwischenpausen" geprüft, Da sollte eigentlich klappen.
                Aber beim Knitterschutz habe ich nicht immer 15 Sekunden. Es kann auch mal sein, dass innerhalb der 15 Sekunden 9 Watt im Knitterschutz dabei sind. Dann geht der Strom wieder kurz auf 140 Watt und fällt wieder ab.
                Da glaube ich klappt es nicht.

                Oder wie hast du es dir vorgestellt?

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

                  @wusa sagte: in ungefähr 30 Sekunden abständen die Werte unter 5 Watt.

                  Ich würde das jeweils erstmalige Unterschreiten einer Schwelle von 50 W verwenden und dieses Ereignis zählen.

                  Bild_2022-07-04_144323658.png

                  Dann sollte die Meldung nach ca. 2,5 Minuten erfolgen.

                  1 Reply Last reply Reply Quote 1
                  • Zarello
                    Zarello @wusa last edited by Zarello

                    @wusa Ich habe natürlich anhand des Diagramms schätzen müssen.
                    Die Zeit von unter 5W würde ich rechnen als Zeitpunkt, zu dem der Wert das erste Mal unter 5W fällt bis zum Zeitpunkt, bei dem der Wert danach das erste Mal wieder über 5W ist.
                    Evtl. kann man die entsprechend benötigte Dauer ja auch noch ein wenig reduzieren. Es muss ja nur deutlich über den Pausen während des Waschvorgangs liegen.

                    Möchte man etwas mehr Sicherheit haben, kann man natürlich gucken, ob innerhalb von einer Minute (oder 90 Sekunden) zwei solche Phasen hintereinander auftauchen.

                    Ein weiterer Weg wäre übrigens numerisch das bestimmte Integral der letzten Minute zu berechnen. Damit solltest Du einen ziemlich eindeutigen Kennwert bekommen, anhand dessen Du die beiden Zustände eindeutig unterscheiden kannst.

                    Edit: Die Version von @paul53 sieht auch sehr gut aus. Es werden die Spitzen gezählt, wobei fünf Spitzen zusammen kommen müssen und keine Spitze länger als 90 Sekunden dauern darf (wobei die 90 Sekunden wirklich sehr großzügig gerechnet sind).

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

                      @zarello sagte: keine Spitze länger als 90 Sekunden dauern darf

                      Wenn 90 s lang die Leistung über 50 W bleibt, wird der Zähler zurück gesetzt, also auch zwischen den Spitzen innerhalb der 12-Minuten-Pausen.

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

                        @paul53

                        Ich versuche gerade wieder mal das Blockly zu verstehen.

                        Kann es sein, dass die < und > zeichen nicht durchgehend stimmen?
                        Oder ich verstehe es falsch.
                        Falls Wert kleiner (<) 50
                        falls vorheriger Wert größer oder gleich 50
                        Kann das stimmen? Wenn der Wert größer als 50 ist, dass dann der cnt erhöht wird. Ich vermute nicht?
                        Rest verstehe ich.

                        Sonst falls, wenn vorheriger Wert kleiner (< ) 50
                        Ausführen Timeout in 90 Sekunden
                        Läuft das nicht in eine Endlosschleife? Wenn der Wert keiner 50 ist, dann setze dem Timer auf 90 Sekunden.
                        Wenn der nächste Wert wieder kleiner 50 ist, dann wieder Timer auf 90 Sekunden?

                        Irgendwie tue ich mich gerade hart das zu verstehen.

                        Und woher weißt das Skript was der vorherige Wert war? Wird bei jeder Veränderung der gerade aktuelle Wert in die Variable vorheriger Wert geschrieben?

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

                          @wusa sagte: Kann es sein, dass die < und > zeichen nicht durchgehend stimmen?

                          Nein, die stimmen.

                          @wusa sagte in Blockly Trockner Überwachung "Problem":

                          Falls Wert kleiner (<) 50
                          falls vorheriger Wert größer oder gleich 50
                          Kann das stimmen?

                          Ja. Wenn der Wert 50 erstmalig (vorheriger Wert >= 50) unterschritten wird, soll gezählt werden.

                          @wusa sagte in Blockly Trockner Überwachung "Problem":

                          Sonst falls, wenn vorheriger Wert kleiner (< ) 50
                          Ausführen Timeout in 90 Sekunden
                          Läuft das nicht in eine Endlosschleife?

                          sonst falls vorheriger Wert < 50
                          

                          ist gleich bedeutend mit

                          Wert >= 50 UND vorheriger Wert < 50
                          

                          und bedeutet erstmaliges Überschreiten von 50, damit nur ein Timer gestartet wird.

                          @wusa sagte in Blockly Trockner Überwachung "Problem":

                          woher weißt das Skript was der vorherige Wert war?

                          Das liefert der Trigger:

                          Blockly_DP_Props.JPG

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

                            @paul53

                            Ok ich glaube (bin mir aber noch nicht sicher), dass ich es verstanden habe.

                            Der Timeout wird aber nur bei vorheriger Wert verwendet und es muss innerhalb der 90 Sekunden nochmal ein vorheriger Wert< 50 kommen?
                            Wenn innerhalb der 90 Sekunden kein vorheriger Wert mit kleiner 50 kommt dann greift die obere Schleife wieder und Stoppt den Timeout. Ansonsten, wenn vorheriger Wert nach (oder innerhalb) der 90 Sekunden wieder kommt, dann wird der Zähler auf 0 gesetzt?

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

                              @wusa sagte: Der Timeout wird aber nur bei vorheriger Wert verwendet und es muss innerhalb der 90 Sekunden nochmal ein vorheriger Wert< 50 kommen?

                              Nein, der Timeout wird nur ausgelöst, wenn der Wert >= 50 ist (sonst) UND der vorherige Wert < 50 ist. Wird der Wert wieder < 50 wird der Timeout gestoppt, wodurch sicher gestellt wird, dass immer nur ein Timeout aktiv ist.

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

                                @paul53

                                Ok ich glaube ich hab es verstanden, bzw. ich versuche es jetzt mal und wenn nochmal fragen sind, dann melde ich mich nochmal.

                                Danke

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

                                Support us

                                ioBroker
                                Community Adapters
                                Donate

                                783
                                Online

                                31.9k
                                Users

                                80.1k
                                Topics

                                1.3m
                                Posts

                                7
                                31
                                1659
                                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