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 @quorle last edited by mcm1957

      @quorle said in Test neuer Adapter pid (pid-Regler) V0.0.x:

      Welche Werte würde man dem PI-Regler übergeben müssen, um einen Heizstab nach der vorhandenen PV-Leistung regeln lassen zu können?
      Ein 0-100% Regelausgang würde mir reichen. Abschaltung des Reglers über die Temperatur wäre kein Problem ( zusätzliches Blockly ). Aktuelle PV-Leistung und aufgenommene Leistung des Heizstabes sind im ioB vorhanden.

      @paul53
      @fu_zhou

      Schätze da seid ihr seid Könner 🙂

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

        @quorle sagte: Aktuelle PV-Leistung

        PV-Leistung (WR) oder PV-Überschuss (Einspeisung)?

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

          @paul53

          Sorry, meinte natürlich PV-Überschuss (Einspeiseleistung). Dieser Wert ist aber sowohl negativ, als auch positiv. Negativ = Netzbezug, positiv = Überschusseinspeisung

          paul53 2 Replies Last reply Reply Quote 0
          • paul53
            paul53 @quorle last edited by paul53

            @quorle
            Anhand früherer Beiträge zur "Nulleinspeisung" würde ich beginnen mit Xp = 10 * max. Heizstableistung und Tn = 2 * Aktualisierungszyklus der Leistung (Überschuss - Einspeisung). Davon ausgehend kann man dann optimieren.

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

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

              @quorle
              Anhand früherer Beiträge zur "Nulleinspeisung" würde ich beginnen mit Xp = 10 * max. Heizstableistung und Tn = 2 * Aktualisierungszyklus der Leistung (Überschuss - Einspeisung). Davon ausgehend kann man dann optimieren.

              Habe jetzt einmal 20000 als XP (10* 2000 wobei 2000 max. Heizleistung ist). Aber Tn verstehe ich nicht ganz, was du mit "Aktualisierungszyklus der Leistung" meinst?

              Folgende Objekte sind so belegt:

              • actual value = PV-Überschuss
              • set Point = 2000 ( max. Wert Heizstab )
              • Zykluszeit = 2000
              paul53 1 Reply Last reply Reply Quote 0
              • paul53
                paul53 @quorle last edited by paul53

                @quorle sagte: was du mit "Aktualisierungszyklus der Leistung" meinst?

                Der Aktualisierungszyklus von "PV-Überschuss" ist gemeint.

                @quorle sagte in Test neuer Adapter pid (pid-Regler) V0.0.x:

                set Point = 2000 ( max. Wert Heizstab )

                Wenn "Nulleinspeisung" erreicht werden soll, muss "set Point" 0 sein.

                @quorle sagte in Test neuer Adapter pid (pid-Regler) V0.0.x:

                Zykluszeit = 2000

                Wird die Zykluszeit in ms angegeben?

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

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

                  @quorle sagte: was du mit "Aktualisierungszyklus der Leistung" meinst?

                  Der Aktualisierungszyklus von "PV-Überschuss" ist gemeint.

                  @quorle sagte in Test neuer Adapter pid (pid-Regler) V0.0.x:

                  set Point = 2000 ( max. Wert Heizstab )

                  Wenn "Nulleinspeisung" erreicht werden soll, muss "set Point" 0 sein.

                  @quorle sagte in Test neuer Adapter pid (pid-Regler) V0.0.x:

                  Zykluszeit = 2000

                  Wird die Zykluszeit in ms angegeben?

                  Also die Zykluszeit wird in ms angegeben.
                  setPoint auf "0" geändert
                  Der Modbus Adapter holt alle 10 Sekunden die Werte aus dem Wechselrichter.

                  aktuelle Einstellungen:

                  • setPoint = 0
                  • Zykluszeit 2000 ms
                  • actual Value = aktueller PV-Überschuss ( Wert wird alle 10 Sekunden vom Modbus Adapter vom Wechselrichter abgeholt)

                  Ausgang PID wechselt aktuell immer von "0" auf "100" hin und her.

                  Eigentlich möchte ich nur erreichen, dass ein 0-100% Signal aus dem Regler ausgegeben wird. Der PID soll Anhand der Überschussleistung den Prozentwert errechnen und ausgeben. Der Heizstab hat max. 2000W. Sprich der Regler soll sauber den Heizstab anhand eines 0-100% Signales sauber hoch und runter regeln.
                  Das ausgegebene Signal des PID´s wird dann in einem anderen Aktor weiter verarbeitet.

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

                    @quorle sagte: Ausgang PID wechselt aktuell immer von "0" auf "100" hin und her.

                    Was ist dem Ausgang y zugewiesen?
                    Wie ist Tn eingestellt (20 s)?
                    Ist wirklich Xp 20000 oder ist es kp? "useXp" ist true?

                    @quorle sagte in Test neuer Adapter pid (pid-Regler) V0.0.x:

                    anhand eines 0-100% Signales

                    Der Offset ist auf 50 eingestellt?

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

                      @paul53

                      Dem Ausgang "Y" ist noch kein weiterer Datenpunkt zugeordnet ( Der Regler soll erst einmal ordentlich regeln und eingestellt sein, bis dieser dann scharf geschalten wird)

                      Unbenannt2.PNG Unbenannt.PNG

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

                        @quorle
                        Der Offset findet sich nicht im DP "off" wieder. Der Rest sieht gut aus. Damit müsste sich y, beginnend bei 58 % (P-Anteil) langsam erhöhen.
                        Startwert = Offset + (act - set) * (max - min) / Xp

                        Etwas irritiert bin ich, dass diff = set - act ist.

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

                          @paul53
                          Ev mal die option zum loggen der berechnungen aktivieren. Da sollte dann im log stehen was bei jedem zyklus gerechnetvwurde.

                          Aber bitte nicht zykluszeit 100ms 🙂

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

                            @mcm57 sagte: Ev mal die option zum loggen der berechnungen aktivieren.

                            Ich teste den Adapter nicht. Das macht @quorle.

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

                              @paul53 @mcm57

                              Hab den DP "off" mal mit 50 befeuert. Aber der PID steht weiterhin bei y = 0.
                              Sobald man in den DP "off" etwas einträgt, regelt der PID bis auf null herunter, anstatt rauf auf 100.

                              Auszug aus dem LOG:

                              pid.1
                              2023-07-14 18:14:50.610	info	[C-PV-Heizstab] update() - {"ts":1689351290610,"act":2448,"set":0,"diff":-2448,"off":50,"err":-2448,"y":0,"lim":true,"dt":2001,"differr":null,"sumerr":-7552,"supr":false}
                              
                              pid.1
                              2023-07-14 18:14:48.609	info	[C-PV-Heizstab] update() - {"ts":1689351288609,"act":2448,"set":0,"diff":-2448,"off":50,"err":-2448,"y":0,"lim":true,"dt":2001,"differr":null,"sumerr":-7552,"supr":false}
                              
                              pid.1
                              2023-07-14 18:14:46.608	info	[C-PV-Heizstab] update() - {"ts":1689351286608,"act":2448,"set":0,"diff":-2448,"off":50,"err":-2448,"y":0,"lim":true,"dt":2000,"differr":null,"sumerr":-7552,"supr":false}
                              
                              pid.1
                              2023-07-14 18:14:44.608	info	[C-PV-Heizstab] update() - {"ts":1689351284608,"act":2531,"set":0,"diff":-2531,"off":50,"err":-2531,"y":0,"lim":true,"dt":2001,"differr":null,"sumerr":-7469,"supr":false}
                              
                              pid.1
                              2023-07-14 18:14:42.607	info	[C-PV-Heizstab] update() - {"ts":1689351282607,"act":2531,"set":0,"diff":-2531,"off":50,"err":-2531,"y":0,"lim":true,"dt":2001,"differr":null,"sumerr":-7469,"supr":false}
                              
                              pid.1
                              2023-07-14 18:14:40.606	info	[C-PV-Heizstab] update() - {"ts":1689351280606,"act":2531,"set":0,"diff":-2531,"off":50,"err":-2531,"y":0,"lim":true,"dt":2001,"differr":null,"sumerr":-7469,"supr":false}
                              
                              pid.1
                              2023-07-14 18:14:38.605	info	[C-PV-Heizstab] update() - {"ts":1689351278605,"act":2531,"set":0,"diff":-2531,"off":50,"err":-2531,"y":0.5439999999999969,"lim":false,"dt":2000,"differr":null,"sumerr":-7360.200000000001,"supr":false}
                              
                              pid.1
                              2023-07-14 18:14:36.605	info	[C-PV-Heizstab] update() - {"ts":1689351276605,"act":2531,"set":0,"diff":-2531,"off":50,"err":-2531,"y":1.8094999999999928,"lim":false,"dt":2000,"differr":null,"sumerr":-7107.1,"supr":false}
                              
                              pid.1
                              2023-07-14 18:14:34.605	info	[C-PV-Heizstab] update() - {"ts":1689351274605,"act":3146,"set":0,"diff":-3146,"off":50,"err":-3146,"y":0,"lim":true,"dt":2001,"differr":null,"sumerr":-6854,"supr":false}
                              
                              pid.1
                              2023-07-14 18:14:32.604	info	[C-PV-Heizstab] update() - {"ts":1689351272604,"act":3146,"set":0,"diff":-3146,"off":50,"err":-3146,"y":0,"lim":true,"dt":2001,"differr":null,"sumerr":-6854,"supr":false}
                              
                              pid.1
                              2023-07-14 18:14:30.603	info	[C-PV-Heizstab] update() - {"ts":1689351270603,"act":3146,"set":0,"diff":-3146,"off":50,"err":-3146,"y":0,"lim":true,"dt":2001,"differr":null,"sumerr":-6854,"supr":false}
                              

                              @mcm57
                              Wenn man in den Adaptereinstellungen bei "Offset" einen Wert einträgt, wird dieser nicht im Datenpunkt "offset Value" übernommen. Zudem wenn man bei einer Adapter-Instanz das Logging einstellt, wird dies auf allen Adapterinstanzen angewandt.

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

                                @quorle sagte: Negativ = Netzbezug, positiv = Überschusseinspeisung

                                Muss dann der Regler nicht invertieren (y sinkt wenn act steigt)?

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

                                  @paul53
                                  Ja da gebe ich dir Recht, aber der Regler regelt im Netzbezug dann auf 100 und bei Netzeinspeisung sinkt der Wert nicht mehr. Habe ich gerade ausprobiert mit invertieren.

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

                                    @quorle
                                    Bitte für das offs problem um ein issue

                                    Das logging ist global für eine instanz. Ich nehme an du meinst das logging witd für alle controller einer instanz übernommen. Das ist so gedacht.

                                    Dass zwischen adapterinstanzen eine wechselwirkung existiert wäre überraschend.

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

                                      @quorle sagte: Regler regelt im Netzbezug dann auf 100

                                      Die Richtung würde schon mal stimmen: Bei Netzbezug soll der WR mehr Leistung liefern. Setze mal den I-Anteil zurück (macht das der Button "reset controller"?).

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

                                        Zu den xalc teaces
                                        Drr regler ist voll am Anschlag.
                                        Beispiel
                                        Set 0
                                        Act 2800
                                        Y bei k = 1 wäre -2800. Da nutzt der offset nix mehr.
                                        Ich ver mute dass der proportionalanteil zu gross ist. Und invertieren müsste nan auch ( oder nan invertuert act gleich extern)

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

                                          Ich wütd auch den integrallanteil mal welassen bis der prop anteil mal halbwegs passt

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

                                            @paul53
                                            Ja reset resettet den p anteil

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

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            997
                                            Online

                                            31.6k
                                            Users

                                            79.6k
                                            Topics

                                            1.3m
                                            Posts

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