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@Smart Living Forum Solingen, 14.06. - Agenda added

    • ioBroker goes Matter ... Matter Adapter in Stable

    • Monatsrückblick - April 2025

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

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

      @Lenny-CB
      Die bisher hier eifrig tätigen Tester können dir hier sicher besser helfen als ich, ich bin mehr SW Entwickler als Regelungstechniker 🙂

      ABER foldender Satz läßt bei mir Alarmglocken schrillen - wenn ich ihn wörtlich nehme:

      Weiterhin sind am Wemos auch noch Temp-Sensoren angeschlossen, die vor Überhitzung des Pufferkessels schützen sollen.

      Ich hoffe, dass damit nicht die unbedingt notwendige Sicherheitsbegrenzung gemeint ist. Der Pufferkessel muss einerseits mit einem Überdruckventil gesichert sein und der Heizstab muss unbedingt mit einer eingebauten oder vom Fachmann installierten Sicherheitstemperaturbegrenzung (z.B. Bimetallschalter direkt im Stromkreis) überwacht werden. Keine Softwarelösung (abgesehen von zertifizierten Sicherheitsmodulen) kann eine Sicherheitsfunktion übernehmen. Wenn du mittels Sensoren am Wemos verhindrn willst, dass das Wasser 80 Grad erreicht, ist das schon OK; aber die Sicherheitsabschaltung in den Heizstab integriert sein oder unabhängig und direkt auf die Energiervesorgung wirkend ausgeführt werden. Sonst hast du womöglich einen Dampfkessel - und das kann lebensgefährlich sein.

      Sorry - ist offtoppic hier, aber bei Sicherheitsbereichen kann ich mich nicht zurückhalten.

      Lenny.CB 1 Reply Last reply Reply Quote 0
      • Lenny.CB
        Lenny.CB Most Active @paul53 last edited by

        @paul53 sagte in Test neuer Adapter pid (pid-Regler) V0.0.1-alpha.x:

        @lenny-cb sagte: ist ein PID nötig?

        Zumindest ein PI-Regler, da der Überschuss (Einspeisung) sicherlich im Mittel nahe 0 sein soll.

        @lenny-cb sagte in Test neuer Adapter pid (pid-Regler) V0.0.1-alpha.x:

        regeln sondern die "Eingangsleistung" des Heizstab.

        Das ist nicht die Regelgröße, sondern die Stellgröße. Die Regelgröße ist der PV-Überschuss.

        Ich sag ja, Regelungstechnik war nicht so meins...

        Die Frage ist, brauche ich überhaupt einen PID oder reicht ein P-Regler.
        Wenn P reicht, kann ich mittels Script die Regelgröße ermitteln und so die Stellgröße anpassen.
        Wobei das auch wieder falsch formuliert ist.

        Beispiel:
        im Sekundentakt
        PVÜ = 500W --> prüfen/umrechnen --> 0,83V --> Thyristorsteller auf 0,83V = 500W
        PVÜ = 750W --> prüfen/umrechnen --> 1,25V --> Thyristorsteller auf 1,25V = 750W
        PVÜ = 400W --> prüfen/umrechnen --> 0,66V --> Thyristorsteller auf 0,66V = 400W
        PVÜ = 5000W --> prüfen/umrechnen --> 8,33V --> Thyristorsteller auf 8,33V = 5000W
        usw....

        Der Thyristorsteller kann das ab und dem Heizstab sollten die Leistungssprünge auch Wurst sein.

        (ohje, hat immer weiniger mit dem eigentlichen Thema zu tun, Sorry 😵 )

        paul53 1 Reply Last reply Reply Quote 0
        • paul53
          paul53 @Lenny.CB last edited by

          @lenny-cb sagte: reicht ein P-Regler.

          Nein.
          Fraglich, ob das Beispiel stabil ist und nicht schwingt.

          Lenny.CB 1 Reply Last reply Reply Quote 0
          • Lenny.CB
            Lenny.CB Most Active @mcm1957 last edited by

            @mcm57 sagte in Test neuer Adapter pid (pid-Regler) V0.0.1-alpha.x:

            ch hoffe, dass damit nicht die unbedingt notwendige Sicherheitsbegrenzung gemeint ist. Der Pufferkessel muss einerseits mit einem Überdruckventil gesichert sein und der

            das sind natürlich gute Einwände, aber zur Beruhigung:

            • Puffer ist vom Fachmann installiert mit allen nötigen Sicherheitsgruppen
            • der Heizstab selbst hat eine Sicherheitsabschaltung
            • Temp-Sensoren am WEMOS war nicht korrekt ausgedrückt. Gemeint ist ein "Bimetall Sicherheitsschalter", der die Steuerung des WEMOS (Spannungsversorgung) außer Kraft setzt.
            • wäre dann sogar doppelt abgesichert.

            Ich gebe dir bedingungslos Recht, Sicherheit geht vor. 👍

            1 Reply Last reply Reply Quote 0
            • Lenny.CB
              Lenny.CB Most Active @paul53 last edited by

              @paul53 sagte in Test neuer Adapter pid (pid-Regler) V0.0.1-alpha.x:

              @lenny-cb sagte: reicht ein P-Regler.

              Nein.
              Fraglich, ob das Beispiel stabil ist und nicht schwingt.

              kannst das näher erklären? Schwingen in Bezug auf "Rückwirkung auf die Wechselrichter"?

              paul53 1 Reply Last reply Reply Quote 0
              • paul53
                paul53 @Lenny.CB last edited by paul53

                @lenny-cb
                Siehe hier und Folgebeiträge. WR ca. 800 W. Es ist selbst bei Xp = 2 * WR-Leistung noch instabil.

                Dein Beispiel bedeutet P-Regler mit Xp = 6000 und Sollwert (Überschuss) = 3000.

                Lenny.CB 1 Reply Last reply Reply Quote 0
                • Lenny.CB
                  Lenny.CB Most Active @paul53 last edited by

                  @paul53 sagte in Test neuer Adapter pid (pid-Regler) V0.0.1-alpha.x:

                  @lenny-cb
                  Siehe hier und Folgebeiträge. Heizstab ca. 800 W. Es ist selbst bei Xp = 2 * Heizstableistung noch instabil.

                  Dein Beispiel bedeutet P-Regler mit Xp = 6000 und Sollwert (Überschuss) = 3000.

                  Ich raffe es einfach nicht. In dem Beispiel aus dem Link soll ein WR gesteuert werden. Quasi eine Null-Einspeisung.
                  Wenn bei mir die Leistung da ist, wird die entweder eingespeist oder verbraucht.

                  Brauche ich doch keine "Regelung" in dem Sinne.

                  Ist doch wie "Leistung da = AN" oder "Leistung nicht da = AUS" nur eben mit Werten zwischen 0-10V.

                  paul53 1 Reply Last reply Reply Quote 0
                  • paul53
                    paul53 @Lenny.CB last edited by

                    @lenny-cb sagte: WR gesteuert werden. Quasi eine Null-Einspeisung.

                    Das Ziel ist gleich: Null-Einspeisung. Du steuerst keinen WR, sondern einen Verbraucher (Heizstab). Damit kehrt sich lediglich die Richtung um.

                    Lenny.CB 1 Reply Last reply Reply Quote 0
                    • Lenny.CB
                      Lenny.CB Most Active @paul53 last edited by

                      @paul53 sagte in Test neuer Adapter pid (pid-Regler) V0.0.1-alpha.x:

                      @lenny-cb sagte: WR gesteuert werden. Quasi eine Null-Einspeisung.

                      Das Ziel ist gleich: Null-Einspeisung. Du steuerst keinen WR, sondern einen Verbraucher (Heizstab). Damit kehrt sich lediglich die Richtung um.

                      korrekt, ich bin immer noch am überlegen was da mit dem Script schwingen soll.
                      Wenn ich sekündlich eine Leistung vorgebe und nicht ganz treffe, schlägt die drüber oder drunter. Wird ja in der nächsten Sekunde korrigiert. Das ist doch m.M. ein P-Regler. Abtastung --> Sprungantwort, Abtastung --> Sprungantwort.
                      Naja, egal.

                      paul53 1 Reply Last reply Reply Quote 0
                      • paul53
                        paul53 @Lenny.CB last edited by

                        @lenny-cb sagte: was da mit dem Script schwingen soll.

                        Teste es!

                        Lenny.CB 1 Reply Last reply Reply Quote 0
                        • Lenny.CB
                          Lenny.CB Most Active @paul53 last edited by

                          @paul53 sagte in Test neuer Adapter pid (pid-Regler) V0.0.1-alpha.x:

                          @lenny-cb sagte: was da mit dem Script schwingen soll.

                          Teste es!

                          Habe ich mich schon für deine Geduld bedankt?! 🙂 DANKE!

                          Das mit dem Schwingen kann ich nur nachvollziehen wenn der WR die Leistung am Heizstab einstellen muss.
                          Muss er aber nicht, die Leistung ist da, weil er ohne Begrenzung erzeugt.
                          Wird nur halt nicht eingespeist sondern verbraucht.

                          Ich mache es immer gern mit Beispielen:

                          Erzeugung 10000W (im Beispiel konstant)
                          Sekunde 1: 6000W am Heizstab abrufen --> 4000W einspeisen
                          Sekunde 2: 1000W am Heizstab abrufen --> 9000W einspeisen
                          usw.

                          Was soll da schwingen und wo?
                          Ich wills nur verstehen. 🙂

                          paul53 1 Reply Last reply Reply Quote 0
                          • paul53
                            paul53 @Lenny.CB last edited by

                            @lenny-cb sagte: Was soll da schwingen und wo?

                            Ob die Regelung stabil ist, hängt auch vom Zeitverhalten (Totzeit / Anstiegszeit) der Regelstrecke ab. Regelstrecke: Stellsignal --> MQTT --> Wemos --> 0-10V-Modul --> Thyristorsteller --> Smartmeter --> Adapter-Datenpunkt "Überschuss"

                            Lenny.CB 1 Reply Last reply Reply Quote 0
                            • Lenny.CB
                              Lenny.CB Most Active @paul53 last edited by

                              @paul53 sagte in Test neuer Adapter pid (pid-Regler) V0.0.1-alpha.x:

                              @lenny-cb sagte: Was soll da schwingen und wo?

                              Ob die Regelung stabil ist, hängt auch vom Zeitverhalten (Totzeit / Anstiegszeit) der Regelstrecke ab. Regelstrecke: Stellsignal --> MQTT --> Wemos --> 0-10V-Modul --> Thyristorsteller --> Smartmeter --> Adapter-Datenpunkt "Überschuss"

                              Wenn die Summe aller Zeiten jedes einzelnen "Mitspielers" größer ist als die Taktzeit im WEMOS wirds kritisch?
                              Ist das mit "schwingen" oder "instabil" gemeint?

                              1 Reply Last reply Reply Quote 0
                              • Ben1983
                                Ben1983 @Lenny.CB last edited by

                                @lenny-cb also Die Frage ist, ob Du damit erreichen möchtest, dass die überschüssige Energie selbst verbraucht wird, oder ob auch im Vordergund steht, dass so gut wie nichts bezogen wird?

                                Bei zweiterem wäre der Regler sinnvoll.
                                Würde direkt auf den Netzwerte (bspw. -100W) regeln. Die Stellgröße also wären dann 0-6000W an den Wemos senden.
                                Den dann die Konvertierung auf 0-10V machen lassen.

                                soll nur eine überschüssige Leistung genutzt werden, wäre vielleicht alle Minute oder so prüfen auch ne Lösung. Würde zu Max Ben minütigen Bezug führen, aber die Energy wäre ja im Wasser und nicht komplett weg.

                                Ist nur meine Meinung dazu.

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

                                  @mcm57 ich möchte nicht drängeln, aber gibt es schon einen Zeitraum, wann die nächste Version zum Testen bereitsteht? Ich bin bereit...

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

                                    @fu_zhou
                                    Neine du drängelst nicht. Ich bin dir und alle anderen SEHR dankbar für eure Zeit zum Testen.

                                    Alle Jiras die mit to be tested markiert sind sind implementiet und in meinem fork Repo mcm1957/ioBroker.pid umgesetzt. Ich möchte / wollte die Funktionen nur noch explizit durchtesten bevor ich wieder andere beschäftige :-). Leider hat mir eine Fehler in Rules einiges an Zeit gekostet. Rules rechnet nämlich im 2 States module statt A=A-B A=B-A ... (https://github.com/ioBroker/ioBroker.javascript/issues/1291) und damit hab ich beim Test der Inverteirung natürlich kein vernünftiges Verhalten bekommen. Nur kann man da im Adaopter lange suchen :-(.

                                    Egal - ich hoffe ich kann die nächet Version im community Bereich heute od. morgen releasen. Die wär dann zwar noch imer alpha aber vergessene Codeteile wie das invert sollte es dann nicht mehr geben. Wenn wer mag, kann er natürlich jederzeit die head von mcm1957/ioBroker.pid nehmen. Das ist meine Arbeitsversion. Da kann sich nur jederzeit was ändern.

                                    Danke nochmals
                                    Martin

                                    mcm1957 created this issue in ioBroker/ioBroker.javascript

                                    open [RULES] rules module "operate two states" calculates wrong results #1291

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

                                      @mcm57 Ich bin grade am testen:

                                      • Die Ordnerstruktur finde ich echt gut
                                      • "hold", um den Regler zu pausieren und "run", um den aktuellen Status zu zeigen, ist super
                                      • "supr" um Rauschunterdrückung zu melden (und damit diff = 0 zu erklären trotz Regelabweichung) ist auch klasse
                                      • "hold" auf "false" und dann wieder "true" => Zyklus wird weiterhin eingehalten
                                      • bei "hold" (run = false) pausiert der Regler "echt" = im Hintergrund wird "y" nicht neu ermittelt und angesprungen, wenn "hold" = "false" gesetzt wird.

                                      Bis jetzt funktioniert alles, echt stark!

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

                                        @fu_zhou
                                        Ich bin grad am release der 0.0.3-alpha.0.
                                        Sollte nicht mehr viel Unterschied zu der mcm1957 Version sein. Ein paar Texte wurden noch korrigioert bzw. ergänzt. Das ist aber Cosmetic.

                                        Sobald Releasebau grün ist und Testinstallation bei mir gut ging kommt Infoposting.
                                        Gröberer Umbauten (wie zuletzt die Ordnerstruktur) möchte ich nunmehr vermeiden und zunächst nurmehr Bugs fixen.

                                        Verlinkung zu anderen States und ev. weitere Feature werde ich zunächste zurückstellen und erst in 0.1.x einbauen. Ich möchte sobald als möglich in einen "offiziellen" beta Tests incl. Aufnahmeantrag ins Lates Repo gehen.

                                        DANKE dir nochmals für deine Testmühe und Feedback.

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

                                          @fu_zhou @Ben1983 @paul53

                                          Ich habe nun die neueste und (hoffentlich) letzte ALPHA Release 0.0.3-alpha.0 erstellt.

                                          • neu: Eine optionale Ordnerstruktur für Zustände wurde implementiert.
                                          • geändert: Timer wird bei Neustart nach Pausierung nun resetted.
                                          • geändert: Werte für act und set werden nun gespeichert und beim Starten des Adapters verwendet
                                          • geändert: Zustandsänderungen mit ack=true werden gelogged
                                          • geändert: Falsche Updates beim Schreiben des act Zustands werden nun verhindert
                                          • geändert: Funktionsfehler des Invert-Flags wurden behoben
                                          • geändert: Die Fehleranzeige beim Erreichen der Limits wurde entfernt.
                                          • geändert: q-Flag-Handling wurde korrigiert
                                          • geändert: Unerwartetes Verhalten des sup-Parameters wurde behoben
                                          • geändert: Der Eingabe-Zustand 'run' wurde auf 'hold' umbenannt."

                                          Die bekannten Probleme sollten nun behoben sein. Die gewünschte Ordnerstruktur wurde (optional und per Default) umgesetzt.

                                          Bekannte Probleme siehe Issues im Repository.

                                          Falls wer Zeit zum Testen hat - ich sage ganz ganz herzlich Danke wenn ihr es versucht. Falls was nicht gehtr bitte Bescheid geben. Falls alles ok scheint, bitte auch kurz sagen.

                                          DANKE
                                          Martin

                                          Ben1983 1 Reply Last reply Reply Quote 0
                                          • Ben1983
                                            Ben1983 @mcm1957 last edited by

                                            @mcm57 Soweit alles gut,
                                            ich habe nur bei etwas spielen folgendes bemerkt:
                                            wenn man den Regler mit hold = true stoppe und dann einen
                                            Rest mit rst = true mache, dann springt y nicht auf 0, sondern auf den neu berechneten Wert.
                                            => Wenn man den Regler eine gewisse Zeit angehalten hat und dann RST betätigt, springt er in die maximale Begrenzung (und man kann ihn somit im Zustand Hold nicht auf 0 zurück setzen.
                                            (Wie kann man eigentlich den einzelnen I Anteil resetten?)
                                            => Das wird bei manchen Anwendungenbenötigt... ok, sind Zeitkritische, die wird man sicher nicht mit ioBroker Lösen. Von daher denke ich nicht so wichtig.

                                            Aber könnte man beim Reset nicht das delta der Zeit auf 0 setzen, sodass der Regler wirklich bei 0 beginnt? (Wie im ersten Zyklus). Und eben wenn er auf hold = true ist auch nicht den P-Anteil ausgibt?
                                            das Delta bzw. die Zeit würde ich während hold = true nicht weiter laufen lassen

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

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            821
                                            Online

                                            31.6k
                                            Users

                                            79.6k
                                            Topics

                                            1.3m
                                            Posts

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