Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. Blockly
    5. [Vorlage] Poolfilterpumpensteuerung

    NEWS

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

    • ioBroker goes Matter ... Matter Adapter in Stable

    • Monatsrückblick - April 2025

    UNSOLVED [Vorlage] Poolfilterpumpensteuerung

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

      @georgs Hallo, ich bin bei der Suche nach einer Möglichkeit meine Poolpumpe zu steuern über die Poolfiltersteuerung gestolpert. Habe das Skript in IoBrober implementiert und die Visualisierung auch gestartet. Alles läuft soweit auch ohne eine Fehlermeldung, nur die Laufzeiten laufen nicht die angegebene Zeit ab. Bei eingestellter Laufzeit1 von 120min laufen nur 60min und bei Laufzeit2 bei 210min nur 134min. Bin gerade etwas überfagt, an was das liegen könnte.
      Ich muss aber zugeben, dass ich von Skrip programmierung keine Ahnung habe und bei Blockly nur einfache Blöcke hinbekomme.
      Vieleicht gibt es hier ja jemanden de mir Helfen könnte.
      Grüße in die Runde

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

        @georgs Moin Georg, dein script ist Top 🙂 Vielen Dank dafür!

        Ich hätte noch einen Vorschlag bzw. eine Idee dazu... Ich habe als erstes noch einen Block eingefügt, der die aktuelle Tageshöchsttemperatur vom daswetter adapter prüft. Den Wert teile ich durch 2 als Faustregel für die Pumpenlaufzeit und rechne mal 60 Minuten. Damit aktualisiere ich um 7 Uhr morgens die Filterzeit 2 nachdem ich die eingestellte Filterzeit 2 vom Ergebnis abgezogen habe..

        Hintergrund: Die Laufzeit der Pumpe sollte (laut div. Foren) 1/2 Zeit in Stunden der Tagestemperatur laufen. Ich verwende einen Chlorinator der Abends das Becken chlort damit es über nacht wirken kann. Dazu muss die Pumpe eh laufen... ich starte um 18 Uhr mit 4 Stunden. Der Rest ist dann eben variabel, abhängig von der Tagestemperatur.

        Hier ist der Codebaustein wenn die Ihn einbauen magst:

        <block xmlns="https://developers.google.com/blockly/xml" type="schedule" id="{On=]L?/+veq/[gbXc|W" x="-1162" y="-2262">
          <field name="SCHEDULE">0 7 * * *</field>
          <statement name="STATEMENT">
            <block type="comment" id="8znNY$$+0DSgaGv9S32%">
              <field name="COMMENT">Laufzeitberechnung um 7 Uhr mit das Wetter / Tageshöchsttemperatur geteilt durch 2 abzüglich Laufzeit 2</field>
              <next>
                <block type="variables_set" id="iq#O{)]O[ros.6d+{nx|">
                  <field name="VAR" id="Bcx-@%4B@gt-0F}K:f(m">Tagestemperatur</field>
                  <value name="VALUE">
                    <block type="math_arithmetic" id="kKA)~_2HvSc%-gs54@Id">
                      <field name="OP">MINUS</field>
                      <value name="A">
                        <shadow type="math_number" id="iUTQPNqUiEXe7ROWM;~[">
                          <field name="NUM">1</field>
                        </shadow>
                        <block type="math_arithmetic" id="P/:6%u^Kt}S@:+h@pLA%">
                          <field name="OP">MULTIPLY</field>
                          <value name="A">
                            <shadow type="math_number" id="rj`fcd)$q{!/BkMP_G,6">
                              <field name="NUM">1</field>
                            </shadow>
                            <block type="math_arithmetic" id=";1BA(hLKSMeJXkw!+j+S">
                              <field name="OP">DIVIDE</field>
                              <value name="A">
                                <shadow type="math_number" id="-Cvsb1{4.tX-]H%I=N%x">
                                  <field name="NUM">1</field>
                                </shadow>
                                <block type="get_value" id="xIq5WxS(#itC8pCxtwD2">
                                  <field name="ATTR">val</field>
                                  <field name="OID">daswetter.0.NextHours.Location_1.Day_1.tempmax_value</field>
                                </block>
                              </value>
                              <value name="B">
                                <shadow type="math_number" id="#YRwS=AX6eRxD{#~RcA5">
                                  <field name="NUM">2</field>
                                </shadow>
                              </value>
                            </block>
                          </value>
                          <value name="B">
                            <shadow type="math_number" id="EcQfUgZSn]?w/kAwKmpK">
                              <field name="NUM">60</field>
                            </shadow>
                          </value>
                        </block>
                      </value>
                      <value name="B">
                        <shadow type="math_number" id="=lG7gc?Yo(|(JM^/s_fo">
                          <field name="NUM">240</field>
                        </shadow>
                        <block type="variables_get" id="1sI*w71rft{|0!p1BZ!!">
                          <field name="VAR" id="bd$x:fR[|5BNbw+MyPx2">Laufzeit2</field>
                        </block>
                      </value>
                    </block>
                  </value>
                  <next>
                    <block type="control" id="jLF)0=.qSK7zC$1Zd8Di">
                      <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                      <field name="OID">javascript.0.Pool.Filteranlage.Laufzeit1</field>
                      <field name="WITH_DELAY">FALSE</field>
                      <value name="VALUE">
                        <block type="variables_get" id="7w;|cXlU!|PrpL[RR8b7">
                          <field name="VAR" id="Bcx-@%4B@gt-0F}K:f(m">Tagestemperatur</field>
                        </block>
                      </value>
                      <next>
                        <block type="debug" id="ZK`o`|PEVP_xw@#o543a">
                          <field name="Severity">log</field>
                          <value name="TEXT">
                            <shadow type="text" id="v=V75F5m6T}0-Djp%Je:">
                              <field name="TEXT">test</field>
                            </shadow>
                            <block type="variables_get" id="En+wE8T~)~)VFZ_b.VAT">
                              <field name="VAR" id="Bcx-@%4B@gt-0F}K:f(m">Tagestemperatur</field>
                            </block>
                          </value>
                        </block>
                      </next>
                    </block>
                  </next>
                </block>
              </next>
            </block>
          </statement>
        </block>
        

        Als nächstes würde ich die Redoxsteuerung einpflegen, dazu fehlt mir aber noch die Pool-ID vom Blueconnect... 😄

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

          @georgs
          Guten Morgen. Erst einmal vielen Dank das du dies hier zur Verfügung stellst. Ich finde das genial das es Leute gibt die anderen in so einer Community helfen. Großes Lob. Ich bin gerade dabei meine poolsteuerung mit Shelly Aktoren zu realisieren. Dafür werde ich dein blockly importieren. Leider bin ich absoluter Leie was IObroker angeht . Ich habe minimale wissen weil ich mir den raspi sowie iobroker erst vor ein paar Tagen angelegt habe weil ich mich da ein arbeiten will. Meine Herausforderung besteht jetzt aber darin, dass ich zusätzlich einen Stellmotor schalten will der den Weg zu meinen Solarmodulen öffnen soll. Dazu habe ich zwei Temperatursensoren am Pool bzw solar angebracht. Hättest du für sowas auch einen Vorschlag oder eine fast fertige Lösung. Das wäre genial. Ich werde das nachher mal testen was du hier veröffentlicht hast. vis habe ich bisher auch noch nicht genutzt. Das muss ich jetzt auch unebdingt machen.

          F 1 Reply Last reply Reply Quote 0
          • F
            fhepfussel @Shadow79 last edited by fhepfussel

            @shadow79 Hallo Shadow, ich habe bei mir ein solches 3-Wege Mischventil im einsatz, welches ich umgebaut habe mit einem High Torque Motor. Screenshot 2021-05-18 213545.png
            Mittels 3D-Druck habe ich mir Teile angefertigt um den Motor und Endschalter auf das Ventil zu bringen.!DSC00438.JPG DSC00437.JPG
            Um den Motor zu steuern habe ich einen Wemos D1 Mini mit Tasmota in IoBroker und 2 Relais in ein Gehäuse gepackt.DSC00440.JPG .

            Wäre als Ideenspender gedacht. Ich bin aber auch gespannt ob alles so läuft, weil ich bis jetzt nur Trockentests machen konnte. Der Pool steht auf grund des bescheidenen Wetters noch nicht.
            Grüße an alle.DSC00439.JPG

            S G 2 Replies Last reply Reply Quote 1
            • S
              Shadow79 @fhepfussel last edited by

              @fhepfussel cool. ich schicke mal fotos von meiner Konstruktion. Heute sollten die letzten teile eintreffen. Vielleicht schaffe ich es am Wochende.Dann melde ich mich. Dann brauche ich nur die Blockly hilfe. aber dringend 😉

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

                @soerenkaiser99 hallo, kannst du mir vielleicht helfen. Ich würde gern diese Blocky auch nutzen. Ich bin aber absoluter neuling und weiß überhaupt nicht was da wie abläuft. bräuchte echt jemand der das schritt für schritt mir erklärt um da rein zu kommen und es für meinen teil anzupassen.

                1 Reply Last reply Reply Quote 0
                • G
                  GeorgS @fhepfussel last edited by

                  @fhepfussel Coole Idee funktioniert das ganze denn nun zuverlässig?

                  @shadow79 Brauchst du denn noch Hilfe bei der Implementierung des Blockly?

                  F 1 Reply Last reply Reply Quote 0
                  • F
                    fhepfussel @GeorgS last edited by

                    @georgs Hi, sorry die späte Antwort, waren im Urlaub. Die Idee ist Cool, aber es läuft nicht zuverlässig. Die Steuerung arbeitet so ein bis zwei Tage, dann plötzlich läd sie die Parameter neu mitten im laufen und schaltet die Pumpe nicht mehr ab oder ein, je nachdem zu welcher Zeit der neue Load kommt. Dann muss ich das Skript stoppen und neu starten, damit es wieder funktioniert. Oder was auch schon war das Zeit 1 eingeschaltet wurde und gleich darauf wieder aus, obwohl die ausschaltzeit eine ganz andere ist.
                    Grüße

                    G 1 Reply Last reply Reply Quote 0
                    • G
                      GeorgS @fhepfussel last edited by

                      @fhepfussel

                      Hast du noch irgend etwas hinzugefügt? Denn bei mir läuft das ganze jetzt seit 3 Jahre problemlos.

                      Warum läd er denn die Parameter neu? Wenn er nämlich die Parameter neu läd schaltet er eigentlich die Pumpe aus.

                      Kannst du mir mal dein Skript schicken?

                      F 1 Reply Last reply Reply Quote 0
                      • F
                        fhepfussel @GeorgS last edited by

                        @georgs Hi, danke für die schnelle Antwort. Leider weis ich im Moment gar nicht mehr ob ich etwas verändert hatte, in der VIS ja da hab ich etwas gemacht, was allerdings darauf keinen Einfluss habes sollte. Wie kann ich dir das Skript schicken?
                        Gruß

                        G 1 Reply Last reply Reply Quote 0
                        • G
                          GeorgS @fhepfussel last edited by

                          @fhepfussel Du gehst in das Blockly Script rein und drückst oben rechts auf "Blöcke exportieren" dann öffnet sich ein neues Fenster und den Inhalt dann einfach mal Posten 😃

                          95a5f016-3aa8-44dd-a2a5-953ff1c2091d-Unbenannt.png

                          Laut deinem Beitrag von damals wolltest du deine Solaranlage noch einbinden 😃

                          F 2 Replies Last reply Reply Quote 0
                          • F
                            fhepfussel @GeorgS last edited by

                            @georgs Hi, hab das skript mal als zip Datei gemacht.
                            neu 1.zip

                            Nee die Solaranlage war SoerenKaiser99.
                            Würde ich aber auch gerne alles in einem haben, mein Mischer läuft momentan in einem anderen Blockly.

                            1 Reply Last reply Reply Quote 0
                            • F
                              fhepfussel @GeorgS last edited by fhepfussel

                              @georgs Hier mal noch ein Bild von Telegram.
                              3bf7ad38-9aef-4356-a053-148629ff2948-grafik.png
                              wo mitten drin die Grundeinstellungen geladen wurden.
                              Vieleicht finde ich noch das andere wo ich vorhin meinte
                              a8d0b284-e49b-4fdd-be3a-acbe19ff873c-grafik.png

                              oder hier mitten in der Nacht
                              aca8a732-0873-4939-9d7c-8f6259a26a58-grafik.png

                              G 1 Reply Last reply Reply Quote 0
                              • G
                                GeorgS @fhepfussel last edited by GeorgS

                                @fhepfussel Ist ja sehr komisch... ich lass mal ein paar Tage das Skript laufen und schau ob das bei mir auch passiert... Das sollte das Skript nicht machen sehr komisch

                                Das mit dem Mischer kannst du genau so in das Blockly stecken in dem du es Exportierst und dann wieder Importierst 😉

                                F 1 Reply Last reply Reply Quote 0
                                • F
                                  fhepfussel @GeorgS last edited by

                                  @georgs Erstmal Danke das du das Prüfst. Könnte auch sein das die Abbrüche oder fehler durch schlechte Verbindung im Wlan kommen. Da bin ich gerade am Planen wie ich ein Kabel von meinem Switch im Keller zu meinem Gartenhaus, wo sich die Steuerung ( Hardware) vom Pool befindet, hin bekomme. Wird ne wilde Fummelei werden.
                                  Arbeitest du als Visualisierung nur mit VIS oder benutzt du auch Node Red? Mir würde das Node Red Dashboard für die Poolsteuerung besser gefallen, weil ich schon viel über das Dashboard visualisiere vom Haus.
                                  Grüße 👍

                                  G 1 Reply Last reply Reply Quote 0
                                  • G
                                    GeorgS @fhepfussel last edited by

                                    @fhepfussel Bisher lief das Skript ohne Neustart durch und hat auch alle Funktionen richtig ausgeführt...

                                    In deinem Skript gibt es 2 Codeabschnitte die nicht von mir sind. Hast du da was ausprobiert?

                                    58fada0d-3d67-48fa-9f1f-0f1ddf36e785-image.png

                                    F 3 Replies Last reply Reply Quote 0
                                    • F
                                      fhepfussel @GeorgS last edited by

                                      @georgs Hi, könnte sein, nur weiß ich nicht mehr welche. Könntest du sie bitte markieren, damit ich vielleicht meinem Hirn wieder auf die Sprünge helfen kann 🙂 . Ich hatte etwas verändert um etwas zu testen, aber was ???????
                                      Grüße

                                      1 Reply Last reply Reply Quote 0
                                      • F
                                        fhepfussel @GeorgS last edited by fhepfussel

                                        @georgs Jetzt ist es mir wieder eingefallen, ich habe dies Codeschnipsel eingefügt um zu sehen wie der Timer abläuft, weil die Timer ab und zu nicht richtig abgelaufen sind.
                                        Dazu habe ich mir Datenpunkte angelegt um das zu sehen.
                                        Die Timer sind bei mir immer weitergelaufen über den eingestellten Wert hinaus.
                                        Danach lief das Skript besser.
                                        Grüße

                                        G 1 Reply Last reply Reply Quote 0
                                        • F
                                          fhepfussel @GeorgS last edited by fhepfussel

                                          @georgs Hier auch mal ein Bild meiner Visu in Node red.
                                          60898a44-50de-4d74-b330-bf64cae8a52c-grafik.png
                                          Hier kann ich nur die Zeiten der Laufzeit nicht einstellen, ist quasi nur für die Temperaturen zuständig und zur erfassung wann die Pume läuft und wann nicht usw.

                                          1 Reply Last reply Reply Quote 0
                                          • G
                                            GeorgS @fhepfussel last edited by

                                            @fhepfussel also bei mir läuft das ganze ohne Neustart oder Reset der Zeiten ich weiß nicht was das bei dir ist...

                                            Also du hast in deinem Skript diesen Baustein hinzugefügt (aktualisier "Meine_Geräte.0.test" mit "Timer 2" mit Verzögerung)?

                                            Damit hättest du Theoretisch nur den "Variablen" Timer in einen "Objekt" Timer umgewandelt, wenn das geholfen hat ok aber sehr komisch.

                                            Könntest du mir mal alles zukommen lassen was di für deinen Pool erstellt hast vielleicht liegt es an einem zusätzlichen Skript das diese Poolsteuer sich immer Neustartet?

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

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            1.0k
                                            Online

                                            31.7k
                                            Users

                                            79.7k
                                            Topics

                                            1.3m
                                            Posts

                                            12
                                            37
                                            3997
                                            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