Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. Blockly
    5. Mein erstes Blockly | Schaltung für Zirkulationspumpe

    NEWS

    • 15. 05. Wartungsarbeiten am ioBroker Forum

    • Monatsrückblick - April 2025

    • Minor js-controller 7.0.7 Update in latest repo

    Mein erstes Blockly | Schaltung für Zirkulationspumpe

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

      Okay, ich habe nun auch die anderen Teile in den Zeitplan eingefügt. Das Skript sieht nun so aus:

      Zwischenablage-1.jpg

      Ich schaue mir das mit der reinen Temperatursteigerung noch einmal an. Ich habe ein wenig "Angst" vor Fehlauslösungen wegen Temperatursprüngen am Sensor. Einerseits möchte ich, dass die Zirkulation möglichst zeitnah anspringt (daher geringe Temperaturdifferenzen), andererseits sollen Fehler durch den gleitenden Wert ausgegliche werden... Vielleicht ist meine Sorge unbegründet und eine reine Abfrage anhand der feststellten Temperatur anhand eines bestimmten Schwellenwertes vollkommen ausreichend. Ich bastle gleich nochmal eine zweite Version.

      Weitere Fragen habe ich aber zur einer Einschaltverzögerung. Bin ich mit folgendem Versuch total auf dem Holzweg?
      Zwischenablage-2.jpg
      Wie löse ich die Abfrage des angelegten Zeitstempels und dessen Löschung nach einer definierten Zeit?

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

        @scrub sagte in Mein erstes Blockly | Schaltung für Zirkulationspumpe:

        Weitere Fragen habe ich aber zur einer Einschaltverzögerung

        Schau Dir im Starthilfe-Thread das Thema "timeout" an.

        S 1 Reply Last reply Reply Quote 0
        • S
          Scrub @Scrub last edited by

          Die rein temperaturgestütze Schaltung sähe dann so (einfach) aus?!!

          Zwischenablage-1.jpg

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

            @scrub
            So kannst Du mit "Wert" noch immer nicht arbeiten.
            Das funktioniert nur in einem Trigger auf einen DP.

            ff59234a-11b2-41f4-b411-3511237b1154-image.png

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

              @codierknecht
              Danke für deine Hilfe. Ich steige zwar noch nicht ganz dahinter, lese mich aber noch einmal ein. Du hast als Wert SwitchState eingetragen, den finde ich aber bei mir nicht. Ich finde nur Switch?

              Zwischenablage-1.jpg

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

                @codierknecht sagte in Mein erstes Blockly | Schaltung für Zirkulationspumpe:

                Schau Dir im Starthilfe-Thread das Thema "timeout" an.

                Zwischenablage-2.jpg

                So?

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

                  @scrub sagte in Mein erstes Blockly | Schaltung für Zirkulationspumpe:

                  Du hast als Wert SwitchState eingetragen, den finde ich aber bei mir nicht. Ich finde nur Switch?

                  Wie der Kram bei Dir heißt, weißt nur Du 😉
                  Es sollte das Prinzip klar werden.

                  So?

                  Nein. Nimm nicht "Pause" sondern "Timeout" - wie oben gezeigt.

                  Da passiert folgendes:
                  Wenn die Temperatur über 30°C steigt, wird geprüft, ob der letzte Wert darunter lag.
                  Nur dann wird die Pumpe (sofort) eingeschaltet.
                  Nach der gewünschten Zeit wird die Pumpe wieder ausgeschaltet.

                  Die Zeit bestimmst Du selbst. Keine Ahnung was da sinnvoll ist.
                  Das sollte prinzipiell erstmal funktionieren.
                  Im nächsten Schritt muss man mal schauen wie oft das so anspringt und sich ggf. Gegenmaßnahmen überlegen wenn das zu oft passiert.

                  Es könnte auch passieren, dass die Temp. über 30° steigt und das Anwerfen der Pumpe sie nicht unter 30° kriegt.
                  Wie gesagt: Ich habe von dem Anwendungsfall keinen blassen Schimmer. Versuch macht klug!

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

                    @codierknecht sagte in Mein erstes Blockly | Schaltung für Zirkulationspumpe:

                    Wie gesagt: Ich habe von dem Anwendungsfall keinen blassen Schimmer. Versuch macht klug!

                    Das ist klar. Die eigentlichen Werte kann ich im Selbstversuch dann noch anpassen.

                    Nun habe ich das Skript für den Timeout entsprechend der Beschreibung angepasst. Passt das?

                    Zwischenablage-1.jpg

                    Und wenn ich mich nicht total vertue, baue ich das ebenso in den Zeitplan-Block mit ein, da es ja ebenfalls laufend abgefragt werden soll?!

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

                      @scrub
                      Warum wird da jetzt plötzlich der Schalter überwacht?
                      Das könnte knallen, da ja der Schalter hier auch per Code geschaltet wird.
                      Könnte 'ne wunderbare Endlosschleife werden.

                      Ich dachte, es geht um die Temperatur?

                      Was übrigens nicht funktioniert ist "Trigger in Trigger" oder "Trigger in Zeitplan".
                      f241a380-fba9-45e3-91f7-6deda2871def-grafik.png

                      Wieso Zeitplan?
                      Ich hatte Dir doch oben gezeigt: Einen Trigger auf die Temperaturänderungen setzen.
                      Wie oft ändert die sich bzw. wie oft sendet der Sensor seine Daten an ioB?
                      Vermutlich deutlich seltener als alle 2 Sekunden. Derart häufig abzufragen wäre also sinnbefreit und würde das System unnötig belasten.
                      Wiederkehrendes Abfragen von Werten über derart kurze Zeitpläne ist eigentlich eher ein Notnagel.
                      Wesentlich effektiver ist es, auf die Änderungen von Werten direkt zu reagieren.

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

                        @codierknecht sagte in Mein erstes Blockly | Schaltung für Zirkulationspumpe:

                        Wieso Zeitplan?

                        Ok, verstanden. Ich bin dem Irrtum unterlegen, dass eine Routine in der Holschuld ist, was die Temperatur anbelangt. Ja, die Aktualisierung erfolgt seltener als alle 2 Sekunden. Das Skript nun also ohne die Routine:

                        Zwischenablage-1.jpg

                        Das hier verstehe ich allerdings nicht:

                        @codierknecht sagte in Mein erstes Blockly | Schaltung für Zirkulationspumpe:

                        Warum wird da jetzt plötzlich der Schalter überwacht?

                        Welchen Schalter meinst du wo?

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

                          @scrub sagte in Mein erstes Blockly | Schaltung für Zirkulationspumpe:

                          dass eine Routine in der Holschuld ist

                          Bei ioBroker ist nur äußerst selten etwas in der "Holschuld".
                          In der Regel reagiert man mit Triggern auf geänderte Werte. Das ist deutlich effizienter.

                          @scrub sagte in Mein erstes Blockly | Schaltung für Zirkulationspumpe:

                          Welchen Schalter meinst du wo?

                          Diesen hier:
                          4a970e7c-0db2-498d-8a28-bedf0a421cab-grafik.png

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

                            Dann hatte ich wohl den falschen Trigger benutzt.

                            "Alles" in einem Trigger sähe dann so aus?

                            Zwischenablage-1.jpg

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

                              @scrub sagte: Der Temperaturfühler soll nun nach dem Boiler an der WW-Leitung angeschlossen werden und via Shelly die Zirkulationspumpe schalten, sobald (kurz) WW gezapft wird.

                              Wenn die Zirkulationspumpe erst beim Wasserzapfen eingeschaltet wird, dauert es fast genau so lange, bis warmes Wasser an die Zapfstelle gelangt, wie ohne Zirkulation. Es ist gegen den Sinn einer Zirkulation. Außerdem auch immer an die Legionellen denken!

                              1 Reply Last reply Reply Quote 0
                              • JoJo58
                                JoJo58 @Scrub last edited by

                                @scrub sagte in Mein erstes Blockly | Schaltung für Zirkulationspumpe:

                                "Alles" in einem Trigger sähe dann so aus?

                                Keine Ahnung ob du das mit Absicht machst 🙄 . Ich bin selber Blockly Anfänger und habe mir den Kurs von Matthias Kleine angesehen und dadurch sehr viel gelernt. Den Rest durch Recherche im Netz und wenn dann etwas nicht klappt, dann frage ich hier nach. Das was du da gemacht hast, hat wirklich viele Fehler und kann nicht mal Ansatzweise funktionieren.

                                Wie gesagt, ich bin selber Anfänger und ich wollte wissen, wie man das mit 2 Timeouts lösen könnte. Habe recht schnell einen Weg gefunden, bin mir aber sicher, das es noch andere/bessere Ideen gibt.

                                Ich würde es wie auf dem Screenshot lösen:

                                Zwei Timeouts.jpg

                                Eventuell kommst du ja damit weiter.

                                Gruß, Johannes

                                S paul53 2 Replies Last reply Reply Quote 0
                                • S
                                  Scrub @JoJo58 last edited by

                                  @jojo58 sagte in Mein erstes Blockly | Schaltung für Zirkulationspumpe:

                                  Keine Ahnung ob du das mit Absicht machst 🙄 .

                                  Was mache ich mit Absicht?

                                  Ansonsten vielen Dank, ich habe dein Skript nachgebaut und es sieht auf den ersten Blick so aus, als ob es das tut, was es soll. 🙂
                                  Ich versuche es nun einmal im Echtbetrieb, wenn die BWWP in Kürze wieder ihren Betrieb aufnimmt.

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

                                    @jojo58 sagte: wie auf dem Screenshot

                                    Aufgrund der Sperre varTimeout2 ist das Stoppen der Timer nicht erforderlich.

                                    S 1 Reply Last reply Reply Quote 1
                                    • S
                                      Scrub @paul53 last edited by

                                      So, das Skript läuft nun seit ein paar Tagen im Echtbetrieb. Ich habe festgestellt, dass die Erwärmung der Zirkulationsleitung viel zu langsam verläuft, als dass ich mit großen Temperatursprüngen arbeiten kann. Es dauert mehr als zwei Minuten, bis der Temperatursensor mir (bei "kalter" Zirkulation) einen Wert von mehr als 30 Grad anzeigt.
                                      Jetzt könnte man natürlich den Schwellwert nach unten setzen, allerdings funktioniert die Zirkulation dann nicht, wenn noch Restwärme in der Leitung ist und die Temperatur beispielsweise bei 28 Grad läge.

                                      Ich würde daher gerne wieder den Vorschlag mit einer Speicherung der letzten drei Temperaturwerte, einer Mittelwertbildung und einem Anstieg dieses Wertes als Trigger arbeiten. Oder hat jemand andere Ideen?

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

                                        Hier mein Versuch mit der Liste und dem Mittelwert. Liege ich einigermaßen richtig?

                                        Zwischenablage-1.jpg

                                        1 Reply Last reply Reply Quote 0
                                        • M
                                          mading last edited by

                                          Nur so als Anregung: warum schaltest du die ZP so oft? Ist sie für ein Mehrfamilienhaus? Ich habe mir einen Wandtaster Aufputz ins Bad montiert, mit dem die ZP dann 4 Min läuft. So läuft sie bedarfsgerecht. Wenn die ZP ständig läuft, verschwendest su Energie, da das warme Wasser ständig in den Rohren ist und die Heizung nachheizen muss.

                                          Just my 50 cents…

                                          S 1 Reply Last reply Reply Quote 0
                                          • S
                                            Scrub @mading last edited by

                                            @mading Ich möchte die ZP auf Bedarf schalten. Ein extra Schalter kommt aus mehreren Gründen nicht in Betracht, eine zeitgesteuerte Zirkulation schluckt zu viel Wärme. Über eine Änderung der Grenzwerte erhoffe ich mir, sie zielgerichtet an- und auszuschalten.

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

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            796
                                            Online

                                            31.6k
                                            Users

                                            79.4k
                                            Topics

                                            1.3m
                                            Posts

                                            6
                                            34
                                            1546
                                            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