Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. ioBroker Allgemein
    4. Unterschied timeout und pause in Blockly

    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

    Unterschied timeout und pause in Blockly

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

      Ich mache das hier mal wieder auf.
      Hier mein Script:
      2d67c7df-5024-43b5-98f9-7cf0d81aa4e7-grafik.png

      Es soll die Pumpe meines Pools steuern. Dabei sollen folgende Parameter erfüllt sein:

      1. Es liegt ein Stromüberschuß von mind 3kW an (PV und/ oder BHKW)
      2. Es sollen max. 2,4kWh am Tag verbraucht werden.
      3. Es soll eine Vorlauftemperatur von mind. 60°C anliegen.
        Bei meinen ersten Versuchen habe ich ohne Timeout gearbeitet. Das funktioniert zwar sehr gut, aber nach kurzer Zeit tilt mein Shelly Schalter (auch wenn er nur ein Schütz steuert, ich muss dann jedes mal die Sicherung ab- und wieder anschalten, damit der Shelly wieder funktioniert), da es zu zu vielen Schaltvorgängen kommt. Für die Schwimmbadpumpe ist das sicher auch nicht förderlich.
        Deswegen möchte ich, daß die Pumpe, nachdem sie eingeschaltet wurde mind. 5 Minuten laufen soll.
        Ich hoffe ich habe den Thread soweit richtig verstanden und die Tips dort umgesetzt? Oder sind da noch Fehler drin?
      Homoran paul53 2 Replies Last reply Reply Quote 0
      • Homoran
        Homoran Global Moderator Administrators @XWing last edited by Homoran

        @xwing jedesmal wenn ein Wert > -3000 (2995, 29800, 2800) nacheinander kommt wird ein neuer timeout gestartet ohne dass der laufende gestoppt wird.
        dadurch kann keiner der timeouts gestoppt werden

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

          @xwing sagte: Pumpe, nachdem sie eingeschaltet wurde mind. 5 Minuten laufen soll.

          So werden bei Werten >= -3000 mehrere Timeout gestartet, die sich nicht mehr stoppen lassen. Ersetze sonst durch sonst falls vorheriger Wert < -3000, damit immer nur ein Timeout gestartet wird.
          Besser: Bau eine Hysterese ein, die größer ist als die Leistungsaufnahme der Pumpe.

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

            @paul53
            Also so?
            7b839060-dd99-4c5b-b57d-23eefa9707cd-grafik.png

            Das mit der Hysterese verstehe ich nicht. Die Pumpe braucht max 740W.

            paul53 Homoran 2 Replies Last reply Reply Quote 0
            • paul53
              paul53 @XWing last edited by

              @xwing sagte: Also so?

              Nein: sonst falls vorheriger Wert < -3000

              @xwing sagte in Unterschied timeout und pause in Blockly:

              Die Pumpe braucht max 740W.

              Dann passt eine Hysterese von 1000 W:

              Bild_2022-08-08_153602719.png

              X 1 Reply Last reply Reply Quote 0
              • Homoran
                Homoran Global Moderator Administrators @XWing last edited by

                @xwing sagte in Unterschied timeout und pause in Blockly:

                Das mit der Hysterese verstehe ich nicht. Die Pumpe braucht max 740W.

                in dem Moment wenn die Pumpe anspringt we7l du mehr als 3000W einspeist, fällt die Einspeisung sofort um die Leistungsaufnahme der Pumpe und das Skript würde die Pumpe sofort (nach timeout) wieder ausschalten.

                Das kann doch nicht gewollt sein.

                X 1 Reply Last reply Reply Quote 0
                • X
                  XWing @Homoran last edited by XWing

                  @homoran
                  Das ist korrekt. Ich verstehe das Hysteresescript von paul53 jetzt und werde es umsetzen.
                  Was mir da noch fehlt ist die Mindestlaufzeit der Pumpe. Meine Frau könnte ja den Teekocher, oder den Fön kurz anmachen und die Pumpe wird ausgeschaltet. Das möchte ich verhindern. Wenn die Pumpe einmal an ist, soll sie eine Mindestlaufzeit in diesem Zustand bleiben.

                  Homoran 1 Reply Last reply Reply Quote 0
                  • Homoran
                    Homoran Global Moderator Administrators @XWing last edited by

                    @xwing sagte in Unterschied timeout und pause in Blockly:

                    Wenn die Pumpe einmal an ist, soll sie eine Mindestlaufzeit in diesem Zustand bleiben.

                    das hattest du so nie im Skript drin.
                    du möchtest also nicht 5 Minuten Mindestlaufzeit, was immer noch eine hohe Belastung für die Pumpe wäte, sondern nach 5 Minuten erneut überprüfen ob die Einspeisung zu gering ist, und dann erst abschalten.
                    Solltexder Föhn dann wieder aus sein, soll die Pumpe weiterlaufen.

                    ODER?

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

                      @paul53
                      Danke,
                      das hilft mir schonmal auf die Sprünge.
                      Ich verstehe allerdings nicht was dieser Teil in Deinem Script macht:
                      e1e8bbb1-34a0-4e89-b5c4-430d6af29a63-grafik.png

                      paul53 1 Reply Last reply Reply Quote 0
                      • X
                        XWing @Homoran last edited by XWing

                        @homoran
                        Das war so mein Ziel. Wenn die Pumpe an ist soll sie mindestens 5 Minuten laufen, bevor sie ausschaltet.
                        Deswegen der Versuch mit dem Timeout.

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

                          @xwing sagte: Ich verstehe allerdings nicht was dieser Teil in Deinem Script macht:

                          Das sorgt dafür, dass nur dann gesendet wird, wenn die Pumpe schalten soll und vermeidet so unnötige Funk-Störungen.

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

                            @xwing sagte: Wenn die Pumpe an ist soll sie mindestens 5 Minuten laufen, bevor sie ausschaltet.

                            Dann erweitere den unteren Teil:

                            Bild_2022-08-08_163858685.png

                            Wenn die Pumpe auch mind. 5 Minuten aus bleiben soll, dann lass die Abfrage "falls pumpe" weg:

                            Bild_2022-08-08_164553979.png

                            X 1 Reply Last reply Reply Quote 1
                            • X
                              XWing @paul53 last edited by

                              @paul53
                              Danke!
                              Ich bin gerade dabei das einzutippen.
                              Wo finde ich den "und" Block? e56c45e4-8619-4023-a0f2-b010c892ea1b-grafik.png

                              Bei mir finde ich nur:
                              8580e935-a3cc-4805-9818-e7474df0c5ac-grafik.png

                              Die machen sicher das gleiche. Aber mit Deinem Block ist das lesbarer.

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

                                @xwing sagte: Wo finde ich den "und" Block?

                                Über dem "und" Block: Rechte Maustaste und "externe Eingänge" auswählen.

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

                                  @paul53 said in Unterschied timeout und pause in Blockly:

                                  Über dem "und" Block: Rechte Maustaste und "externe Eingänge" auswählen.

                                  Da muss man drauf kommen...

                                  Noch eine Frage: Wofür dient die Variable "timeout". Sie wird ja immer auf "0" gehalten.
                                  1d9a55dc-9c8a-4ebc-bb14-ebb6dc7a1365-grafik.png

                                  Homoran paul53 2 Replies Last reply Reply Quote 0
                                  • Homoran
                                    Homoran Global Moderator Administrators @XWing last edited by

                                    @xwing sagte in Unterschied timeout und pause in Blockly:

                                    Wofür dient die Variable "timeout". Sie wird ja immer auf "0" gehalten.

                                    nein und nein!

                                    es wird überprüft ob der timeout nicht läuft und dann wird der timeout gestoppt.

                                    null !=0

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

                                      @xwing sagte: Wofür dient die Variable "timeout". Sie wird ja immer auf "0" gehalten.

                                      timeout darf keine selbst erstellte Variable sein! Es ist die Variable des Timers, die bei Start des Timers gesetzt wird und bei Ablauf des Timers per Blockly auf null zurück gesetzt wird. Solange der Timer läuft, dient die Variable als Umschaltsperre.
                                      Bitte in der Javascript-Ansicht überprüfen: Es darf nur eine Variable timeout geben!

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

                                        @paul53
                                        Ich verstehe. Es waren natürlich zwei Variablem "timeout" vorhanden. In Blockly habe ich unter "Variablen" die Variable "timeout gelöscht.
                                        Jetzt fehlt mir allerdings der Block "timeout" das Du in Deinem Beispiel nutzt:
                                        5c155dc8-ec36-499b-9dbc-e0c69ee268f1-grafik.png

                                        Wo bekomme ich den her?

                                        Edit: Habe es gefunden. Einfach einen Variablenblock einfügen und imDropDown dann "timeout" anwählen.

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

                                        Support us

                                        ioBroker
                                        Community Adapters
                                        Donate
                                        FAQ Cloud / IOT
                                        HowTo: Node.js-Update
                                        HowTo: Backup/Restore
                                        Downloads
                                        BLOG

                                        897
                                        Online

                                        31.9k
                                        Users

                                        80.1k
                                        Topics

                                        1.3m
                                        Posts

                                        pause timeout blockly
                                        9
                                        35
                                        11760
                                        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