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 Script GPIO Inverter und Wärmepumpe

    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 Script GPIO Inverter und Wärmepumpe

    This topic has been deleted. Only users with topic management privileges can see it.
    • N
      Nico K. last edited by

      Hallo zusammen,

      ich hoffe ihr könnt mir bei meinem Problem helfen.

      Ich habe seit ca. 5 Jahren einen IOBroker auf Rasp4 laufen, mit dem ich mein Smarthome betreibe.
      Seit diesem Jahr habe ich auch eine Photovoltaikanlage (Wechselrichter von Sungrow).
      Den Wechselrichter habe ich über Modbus eingebunden und erhalte auch gewisse Werte.
      Meine Wärmepumpe hat einen SG-Ready Eingang (potentialfreier Kontakt).
      Dieser ist über ein Relais mit dem Raspberry GPIOPin17 verbunden.

      Nun brauche ich ein Script, das folgendes macht.

      Wenn die PV-Leistung einen Schwellwert (z.B.500Watt) überschreitet, soll der GPIOPin17 (und damit das Relais) kurzzeitig (ca. 200ms -> Impuls) geschaltet werden.
      Wenn die PV-Leistung den gleichen Schwellwert unterschreitet, soll der GPIOPin17 (und damit das Relais) kurzzeitig (ca. 200ms -> Impuls) geschaltet werden.

      Klingt im Prinzip einfach, mein Problem ist, dass ich Blockly wohl nicht ganz verstanden habe.
      Die Schaltung, die ich erstellt habe, schaltet leider bei jeder Wertänderung bzw. Aktualisierung, also eigentlich immer, wenn ein neuer PV-Leistungswert über Modbus übertragen wird.
      Ich möchte aber, dass das Relais nur dann schaltet, wenn der Schwellwert über- oder unterschritten wird.

      Ich freue mich auf euren Input!

      Viele Grüße

      Nico

      Homoran 2 Replies Last reply Reply Quote 0
      • Homoran
        Homoran Global Moderator Administrators @Nico K. last edited by

        @nico-k sagte in Blockly Script GPIO Inverter und Wärmepumpe:

        Die Schaltung, die ich erstellt habe, schaltet leider bei jeder Wertänderung bzw. Aktualisierung, also eigentlich immer, wenn ein neuer PV-Leistungswert über Modbus übertragen wird.

        kann ich anhand deines Blocklys nicht nachvollziehen 😉

        1 Reply Last reply Reply Quote 0
        • N
          Nico K. last edited by

          Blockly Test Script.JPG

          paul53 1 Reply Last reply Reply Quote 0
          • Homoran
            Homoran Global Moderator Administrators @Nico K. last edited by

            @nico-k sagte in Blockly Script GPIO Inverter und Wärmepumpe:

            Wenn die PV-Leistung einen Schwellwert (z.B.500Watt) überschreitet,

            du reagierst suf jede Änderung über dem Schwellwert!
            nicht nur bei der ersten Überschreitung

            im sonst falls haben weitere Trigger Bausteine nichts zu suchen.

            du musst eine Hysterese einbauen, etwas größer als der erwartete Verbrauch
            immer größer-kleiner 100 wird zum ständigen Flackern führen

            1 Reply Last reply Reply Quote 0
            • N
              Nico K. last edited by

              Wie kann ich den nur auf den ersten Wert reagieren? Also mit welchem Triggerblock?

              Homoran 1 Reply Last reply Reply Quote 0
              • N
                Nico K. last edited by

                Ich habe nun den Triggerblock komplett entfernt und nur die If Anweisung gelassen.
                Das scheint wohl zu funktionieren. Triggert nicht bei jeder Änderung, sondern nur beim überschreiten/unterschreiten des Schwellwerts.

                Blockly Test Script.JPG

                1 Reply Last reply Reply Quote 0
                • Homoran
                  Homoran Global Moderator Administrators @Nico K. last edited by

                  @nico-k sagte in Blockly Script GPIO Inverter und Wärmepumpe:

                  Wie kann ich den nur auf den ersten Wert reagieren? Also mit welchem Triggerblock?

                  Trigger ist der selbe!
                  du musst nur in der Logik abfangen ob er bereits lief, z.B. mit einer Sperrvariablen

                  1 Reply Last reply Reply Quote 0
                  • N
                    Nico K. last edited by

                    Wobei das ist so auch nicht richtig.

                    paul53 1 Reply Last reply Reply Quote 0
                    • paul53
                      paul53 @Nico K. last edited by paul53

                      @nico-k
                      Du schaltest mittels eines Impulses die Wärmepumpe ein und aus? Woher weist du, ob der Impuls gerade ein- oder ausschaltet?

                      N 1 Reply Last reply Reply Quote 0
                      • paul53
                        paul53 @Nico K. last edited by paul53

                        @nico-k sagte: Wobei das ist so auch nicht richtig.

                        Wenn die Wärmepumpe keine Rückmeldung liefert, ob sie läuft, muss ein eigener DP "WP" manuell synchronisiert werden.

                        Vorschlag:

                        Blockly_temp.JPG

                        So reagiert die Wärmepumpe allerdings auf jede kleine Wolke / Wolkenlücke.

                        1 Reply Last reply Reply Quote 0
                        • N
                          Nico K. last edited by

                          Ich habe das jetzt wie folgt gelöst.
                          Läuft bereits mehrere Tage stabil und schaltet nicht unnötig.

                          Blockly Test Script.JPG

                          1 Reply Last reply Reply Quote 0
                          • N
                            Nico K. @paul53 last edited by

                            @paul53 Das ist eine gute Frage!
                            Ich werde am kommenden WE die Wärmepumpe beobachten und die Signale überwachen.
                            Ich hoffe, dass seitens Wärmepumpe irgendeine Rückmeldung (ein Bit oder Wert) übermittlet wird, welches ich abfangen kann und als Rückmeldung nutze.
                            Dann werde ich mein Script entsprechend erweitern.

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

                            Support us

                            ioBroker
                            Community Adapters
                            Donate

                            452
                            Online

                            31.9k
                            Users

                            80.3k
                            Topics

                            1.3m
                            Posts

                            3
                            12
                            237
                            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