Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Tester
    4. Test Adapter pid (pid-Regler) V1.0.x

    NEWS

    • ioBroker goes Matter ... Matter Adapter in Stable

    • Monatsrückblick - April 2025

    • Minor js-controller 7.0.7 Update in latest repo

    Test Adapter pid (pid-Regler) V1.0.x

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

      @paul53 @fu_zhou

      Könnte ihr da ev. helfen?
      Danke

      1 Reply Last reply Reply Quote 0
      • fu_zhou
        fu_zhou @root_ last edited by

        @root_
        Ich versuche mal mein Glück:

        Ein Regelkreis besteht immer aus einem Istwert (hier Verbrauch), einem Sollwert (hier: 0 Watt) und einem Stellglied, hier ein elektrischer Verbraucher, der über den Regler z.B. von 0-100% angesteuert wird, um den Istwert auf den Sollwert zu bekommen.
        Du nimmst also den PID Adapter und schreibst zyklisch (z.B. jede Sekunde mit Blockly) den Verbrauch auf den "in.act". "in.set" kannst du z.B. mit "0" beschreiben. out.y schreibst du dann bei Änderung (oder zyklisch) an deinen elektrischen Verbraucher (z.B. auch im Blockly), hier kommt es auf die Einheiten an, die in "para.min" und "para.max" eingestellt werden. Z.B. 0 und 100 bei 0-100 % oder 0 und 2000 bei 0 bis 2000 Watt.

        Und dann geht's schon los... Wenn du mehr Details hast, können wir sämtliche Paramter für den Einspeise-Null-Regler hier erarbeiten.

        Schau ggf. auch mal hier rein: https://forum.iobroker.net/topic/75038/anwendung-von-pid-adapter-mit-blockly/7?_=1741182921548

        Cephalopod 1 Reply Last reply Reply Quote 1
        • Cephalopod
          Cephalopod @fu_zhou last edited by Cephalopod

          Betr. Regleroptimierung:

          Ich nutze den Adapter schon eine Weile für die Nulleinspeisung meines Balkonkraftwerks durch einen Heizstab.
          Prinzipiell funktioniert alles wie es soll, ich verschenke allerdings, vermutlich durch falsche Parameter, noch zu viel Strom.

          Hier eine Grafik von einem typischen Sonnentag mit gutem Ertrag:

          c2a14864-0f71-4ca6-95c8-44cff164095e-image.png

          Blau ist der PV-Ertrag, Grün ist der EVU-Zähler. Negative Werte bedeuten Einspeisung.
          Daran sieht man, dass ich bei 500 W Ertrag oft 180 W Einspeise, obwohl ich den Sollwert auf -20 W gesetzt habe.
          Geht der Ertrag runter (ab 13 Uhr) passt die Nulleinspeisung besser.

          Hier der PV-Ertrag und der Regler-Ausgang in %

          2ae5555c-1e82-4952-9797-389b45c0a4ab-image.png

          Reglerparameter:
          Xp / Tn / Tv ausgewählt
          XP = 1000
          TN = 20
          TV = 0
          Minimal = 0
          Maximal = 100
          Offset = 0
          Hysterese = 0
          Nicht Invertiert
          Zykluszeit = 1000
          Sollwert = -20

          Der Heizstab zieht bei 100% maximal 500 Watt

          Vorschläge?

          Hier mein Blockly Script, falls es hilft:

          077175c3-0bb4-4d1e-a2f3-1e422891880f-image.png

          G paul53 2 Replies Last reply Reply Quote 0
          • G
            Gonzokalle @Cephalopod last edited by

            @Cephalopod
            Ich kann dir leider nicht helfen.
            Mich würde aber interessieren welchen Heizstab du verwendest?
            Der Heizstab ist von 0 bis 500 Watt einstellbar?

            Cephalopod 1 Reply Last reply Reply Quote 0
            • Cephalopod
              Cephalopod @Gonzokalle last edited by Cephalopod

              @gonzokalle sagte in Test Adapter pid (pid-Regler) V1.0.x:

              @Cephalopod
              Der Heizstab ist von 0 bis 500 Watt einstellbar?

              Ja.
              Mit einem Thyristorsteller und einem Shelly Dimmer

              G 1 Reply Last reply Reply Quote 0
              • G
                Gonzokalle @Cephalopod last edited by

                @cephalopod
                Sehr interessant.
                Hast du davon ein Schaltplan mit den verbauten Komponenten?

                Cephalopod 1 Reply Last reply Reply Quote 0
                • Cephalopod
                  Cephalopod @Gonzokalle last edited by

                  @gonzokalle

                  https://forum.iobroker.net/topic/78546/analoge-regelung-heizstab

                  Cephalopod 1 Reply Last reply Reply Quote 1
                  • Cephalopod
                    Cephalopod @Cephalopod last edited by Cephalopod

                    Ich habe den
                    Xp = 500
                    geändert.

                    So sieht die Kurve jetzt aus:

                    742ddbea-83d5-47f3-af56-07a44c755f8a-image.png

                    Geht deutlich in die richtige Richtung.

                    Ich teste morgen Mal 250.

                    fu_zhou 1 Reply Last reply Reply Quote 0
                    • fu_zhou
                      fu_zhou @Cephalopod last edited by fu_zhou

                      @cephalopod ich arbeite mit kp, nicht mit xp, das ist wohl Geschmackssache. xp berücksichtigt den Messbereich (min/max), kp ist nur die Verstärkung bei der Sprungantwort. Da ich min/max z.T. dynamisch beschreibe (über einen zweiten Regler, der zu Begrenzung dient - Details dazu, wenn dich das interessiert), kommt für mich nur kp in Frage, da sich bei xp und Veränderung von min/max das Reglerverhalten verändert.
                      Heißt also, wenn kp=1 und sich der Istwert um 1 ändert, springt der Stellwert auch um 1. Hier sollte man auf die Einheiten achten (abgebildet durch para.min und para.max). Wenn dein Istwert Watt ist und dein Stellwert auch Watt, kann ein kp von 1 sinnvoll sein: es kommt ein W mehr vom Dach => der Heizstab kann sofort 1 W mehr verbraten. Wenn die Leistung in % (0-100) an den Heizstab übergeben wird, kann ein kp von z.B. 0,2 sinnvoll sein, weil 1% = 5 W.
                      Siehe ggf. auch https://forum.iobroker.net/topic/75038/anwendung-von-pid-adapter-mit-blockly/9?_=1741182921548
                      Wenn es dir gelingt, den Regelkreis zum Schwingen zu bringen (Ziegler-Nichols), kannst du PID-Parameter zur Einstellung des Reglers ermitteln. Dazu brauchst du Geduld und eine gleichmäßige Sonneneinstrahlung, sonst ändert sich ja die Regelstrecke. Und dann wäre natürlich noch zu überlegen, wie gut die Elektronik mit optimierten Regelparametern umgehen kann, d.h. wie gut würde sie ständige Leistungsänderungen vertragen. Dazu kann im Regler aber ja para.sup parametriert werden => das würde ich auf jeden Fall empfehlen.

                      Cephalopod 1 Reply Last reply Reply Quote 1
                      • Cephalopod
                        Cephalopod @fu_zhou last edited by Cephalopod

                        @fu_zhou sagte in Test Adapter pid (pid-Regler) V1.0.x:

                        Wenn die Leistung in % (0-100) an den Heizstab übergeben wird, kann ein kp von z.B. 0,2 sinnvoll sein, weil 1% = 5 W.

                        Ja, ich übergebe 0-100% an den Dimmer, entspricht 0-500W am Heizstab.
                        Dann versuche ich mal einen kp von 0,2.

                        Wann macht der Integrale Anteil Sinn?
                        Was empfiehst du?

                        @fu_zhou sagte in Test Adapter pid (pid-Regler) V1.0.x:

                        Und dann wäre natürlich noch zu überlegen, wie gut die Elektronik mit optimierten Regelparametern umgehen kann, d.h. wie gut würde sie ständige Leistungsänderungen vertragen.

                        Der Dimmer steuert mit 0-10 V einen Thyristorsteller, an dem einen simplen Widerstandheizstab hängt.
                        Den Komponenten dürften schnelle Änderungen von Strom- oder Spannungswerten ziemlich egal sein.

                        fu_zhou 1 Reply Last reply Reply Quote 0
                        • fu_zhou
                          fu_zhou @Cephalopod last edited by fu_zhou

                          @cephalopod sagte in Test Adapter pid (pid-Regler) V1.0.x:

                          Wann macht der Integrale Anteil Sinn?
                          Was empfiehst du?

                          Es ist ist auf jeden Fall sinnvoll, eine Nachstellzeit Tn zu parametrieren, fange mal mit 20 an. Ohne hättest du einen reinen P-Regler, da bleibt eine Regelabweichung (Nulleinspeisung wird wahrscheinlich nicht erreicht). Und dann könnte man sich auch den Regler sparen, und das einfach über Addition/ Subtraktion in Blockly realisieren, also als Kennlinie, z.B. Wenn Einspeisung = 500 W, dann Steller auf 500 W, Wenn Einspeisung = 0 W, dann 0 W. Eine Vorhaltezeit Tv dagegen ist nur bei sehr schnellen Regelkreisen sinnvoll. Kann aber bei dir zutreffend sein, je nachdem wie schnell Verbraucher außer dem Heizstab rein- und rausgehen: Staubsauger, Föhn, Backofen etc. Da kommt es immer zu einem Stromkauf aus dem Netz, weil der Regler muss ja eine Abweichung feststellen, um zu reagieren. Je schneller und besser er parametriert ist, umso geringer ist dann der Zukauf.

                          Cephalopod 1 Reply Last reply Reply Quote 0
                          • Cephalopod
                            Cephalopod @fu_zhou last edited by

                            @fu_zhou sagte in Test Adapter pid (pid-Regler) V1.0.x:

                            Es ist ist auf jeden Fall sinnvoll, eine Nachstellzeit Tn zu parametrieren, fange mal mit 20 an. Ohne hättest du einen reinen P-Regler, da bleibt eine Regelabweichung (Nulleinspeisung wird wahrscheinlich nicht erreicht).

                            Heute war über einige Stunden eine recht konstante Sonneneinstrahlung und wir waren nicht zu hause, also kein wechselnden Verbraucher.
                            Das ist rausgekommen:

                            627b44ca-993c-4136-b7ab-87aba508d442-image.png

                            Zwischen 10:20 und 14:15 Uhr lag die Regelabweichung ziemlich konstant bei ca. -70 bis -80 Watt, also nicht bei den -20 Watt, die ich als Sollwert angegeben hatte.

                            Meine Parameter:
                            Kp = 0,2
                            Tn = 20
                            Tv = 0

                            Welchen sollte ich ändern?

                            fu_zhou 2 Replies Last reply Reply Quote 0
                            • fu_zhou
                              fu_zhou @Cephalopod last edited by fu_zhou

                              @cephalopod Anhand von kp und Tn sollte der Regler die Abweichung ausregeln (Edit: was nicht bedeutet, dass das schon die optimalen Werte sind). Das gelingt natürlich nur, wenn sich out.y zwischen para.min und para.max bewegt. Wenn der Regler am Anschlag ist, kann natürlich nichts mehr nachgeregelt werden. para.sup ist 0, nehme ich an.
                              Du solltest mal out.y mit aufzeichnen und in den Kurven mit anzeigen.
                              Für mich sieht das so aus, als wenn dein Heizstab nur ca. 400-450 W verbraucht, deine PV-Anlage aber 500-550 W liefert und dann kommt es zur Einspeisung von 70-80 W (Einspeisung = negatives Vorzeichen denke ich mal). Auf der anderen Seite bleibt die Einspeisung konstant, auch wenn die PV-Leistung zurück geht...
                              Egal wie, wenn out.y = 100 (%) ist und damit 10 V (max. Leistung) an den Steller gehen, liegt die Abweichung am Stellglied, nicht am Regler. Dann müsstest du mal die Signalkette vom Shelly über den Thyristorsteller an den Heizstab überprüfen.

                              Cephalopod 1 Reply Last reply Reply Quote 1
                              • fu_zhou
                                fu_zhou @Cephalopod last edited by fu_zhou

                                @cephalopod schau auch nochmal in dein Blockly-Script: du übergibst an den Dimmer einen gerundeten Wert von out.y. Nicht dass die Regelabweichung (zum Teil) daher kommt?!

                                Edit: habe gerade bei dir gelesen, dass der Shelly nur ganzzahlige Werte nimmt, du also runden musst. 1% Genauigkeit sollte ja langen... Vergiss den Beitrag hier einfach...

                                1 Reply Last reply Reply Quote 1
                                • Cephalopod
                                  Cephalopod @fu_zhou last edited by

                                  @fu_zhou sagte in Test Adapter pid (pid-Regler) V1.0.x:

                                  Wenn der Regler am Anschlag ist, kann natürlich nichts mehr nachgeregelt werden. para.sup ist 0, nehme ich an.
                                  Du solltest mal out.y mit aufzeichnen und in den Kurven mit anzeigen.

                                  Nein, der Regler ist nicht am Anschlag, sondern bei maximal 83%.
                                  Die Hysterese ist 0.
                                  Ich habe den Reglerausgang hier (mit der PV-Erzeugung) dargestellt:

                                  9bfe09aa-edaa-4519-9349-6d716cbec005-image.png

                                  Der Regler funktioniert, er regelt mit abnehmender Sonneneinstrahlung perfekt runter.

                                  @fu_zhou sagte in Test Adapter pid (pid-Regler) V1.0.x:

                                  Für mich sieht das so aus, als wenn dein Heizstab nur ca. 400-450 W verbraucht, deine PV-Anlage aber 500-550 W liefert und dann kommt es zur Einspeisung von 70-80 W

                                  Fast richtig. Ich habe immer an die 200 W Grundlast (auch wenn niemand zu Hause ist), die kommen ja auch noch dazu.

                                  fu_zhou 2 Replies Last reply Reply Quote 0
                                  • fu_zhou
                                    fu_zhou @Cephalopod last edited by fu_zhou

                                    @cephalopod sagte in Test Adapter pid (pid-Regler) V1.0.x:

                                    Nein, der Regler ist nicht am Anschlag, sondern bei maximal 83%.

                                    Das ist schon mal gut. Willst du mal ein Screenshot von den Regler-Objekten (cfg bis para) posten?

                                    Bei -70 Watt sollte der Regler den out.y eigentlich allmählich auf 100% schieben. Gehe mal auf kp von 0.1 -> zum probieren.
                                    Warum kp = 0.1? Wenn die Annahme stimmt, dass durch die Einheit % => W ein kp von 0.2 bei einer Änderung von 1 W bei der Einspeisung direkt 1 W beim Steller verändert, reagiert der P-Anteil 1:1. Wenn das Verhalten durch ein kleineres kp weniger aggressiv ist, wird das helfen, die Regelabweichung wegzubekommen, der Regler ist dann aber etwas langsamer.

                                    Vielleicht wäre es auch hilfreich eine Kurvendarstellung mit in.act, in.set und out.y zu erstellen. Nicht, dass bei der Übergabe vom Skript an den Regler was schief läuft.

                                    Du kannst zum debuggen ja auch mal einen Netzbezug parametrieren, z.B. +400 W, +800 W etc. und mit den Sollwerten rumspielen. Dann siehst du, wie der Regler reagiert und den Sollwert anfährt. Bei 800 W Soll, 200 W Grundlast sollte der Regler dann ja auf 100% gehen, Wenn du dann einen Föhn dazunimmst sollte der Regler den Heizstab ziemlich schnell auf 0% bringen.

                                    Dein Skript musst du dann natürlich anpassen, dass der Regler aktiv ist.

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

                                      @cephalopod sagte:

                                      Reglerparameter:
                                      Xp / Tn / Tv ausgewählt
                                      XP = 1000
                                      TN = 20
                                      TV = 0
                                      Minimal = 0
                                      Maximal = 100
                                      Offset = 0
                                      Hysterese = 0
                                      Nicht Invertiert
                                      Zykluszeit = 1000
                                      Sollwert = -20
                                      Der Heizstab zieht bei 100% maximal 500 Watt

                                      Nach meiner Erfahrung hier aus dem Forum sollte Xp für eine stabile Regelung das 6- bis 10-fache der max. Verbraucherleistung betragen. Ich würde mit einem Xp von 5000 starten.
                                      Wie oft wird die Einspeiseleistung aktualisiert?

                                      Cephalopod 1 Reply Last reply Reply Quote 0
                                      • fu_zhou
                                        fu_zhou @Cephalopod last edited by

                                        @cephalopod hast du schon weiter probiert? Mich würde ein Zwischenstand interessieren...

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

                                          @paul53 sagte in Test Adapter pid (pid-Regler) V1.0.x:

                                          Nach meiner Erfahrung hier aus dem Forum sollte Xp für eine stabile Regelung das 6- bis 10-fache der max. Verbraucherleistung betragen. Ich würde mit einem Xp von 5000 starten.

                                          Das kann ich in meinem Fall so nicht bestätigen.
                                          Der Xp = 350 sieht besser aus, als der Xp = 1000.

                                          @paul53 sagte in Test Adapter pid (pid-Regler) V1.0.x:

                                          Wie oft wird die Einspeiseleistung aktualisiert?

                                          Vom Smartmeter bekomme ich sekündlich Daten.

                                          @fu_zhou sagte in Test Adapter pid (pid-Regler) V1.0.x:

                                          @cephalopod hast du schon weiter probiert? Mich würde ein Zwischenstand interessieren...

                                          Dank des aktuell stabilen Sonnen Wetters bin ich noch am Testen.
                                          Aktuell bin ich bei einem Xp = 350 und es sieht damit ganz gut aus.

                                          fu_zhou 1 Reply Last reply Reply Quote 0
                                          • fu_zhou
                                            fu_zhou @Cephalopod last edited by

                                            @cephalopod also geht der Regler auch auf 100%?

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

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            529
                                            Online

                                            31.6k
                                            Users

                                            79.5k
                                            Topics

                                            1.3m
                                            Posts

                                            15
                                            303
                                            35180
                                            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