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.
    • fu_zhou
      fu_zhou @mcm1957 last edited by

      @mcm57 Ich habe noch einen weiteren Regler hinzugefügt, damit ist die Instanz neu gestartet worden, jetzt scheint last_delta stabil bei 500 ms +- 1ms zu bleiben.

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

        @mcm57 beim zweiten Regler aus der Adapter-Instanz ist die Zykluszeit stabil, beim ersten kommt als Reaktion auf eine para Veränderung kurzzeitig der Sprung im last_delta.

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

          @fu_zhou
          Danke
          Fehler schon gefunden. An sich müßte der Fehler bei allen Reglern auftreten.

          Ursache ist eine Sonderbehandling von Cycle Time == 0. In diesem Fall wird eine Neuberechnugn getriggert, wenn neue Daten (act, Parameter, ...) eingeleifert werden. Das stammt noch aus der 0.0.0 Version. Ich bin aber zwischenzeitlich überzeutgt, dass das niemand braucht. Bevor ich nun in 3 Itaérationen (:-)) den Bug versuche zu beheben werde ich diese Sonderbahndlung ganz entfernen. Macht das Verhalten klarer nachvollziehbar. Wenn mal wirklich ein Bedarf auftritt nicht zyklisch sondern immer beim SChreiben der Daten neu zu berechnen kann man das ja wieder einfügen. Allerdings glaub ich wär da dann ein eigener State "jetzt berechnen" sinnvoller als diese krude Autiomatik.

          Neue Release sollte morgen kommen.

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

            @mcm57 Da kann ich voll mitgehen - wie kann's auch anders sein 😉! Ist da nicht eh ein Denkfehler drin? Den I-Anteil will ich doch zyklisch berechnen, um die Regelabweichung abzubauen. Wenn eine Berechnung nur stattfindet, wenn sich Soll oder Ist ändert, bekomme ich doch eigentlich einen reinen P-Regler, auch wenn eine Nachstellzeit paramteriert ist, oder?

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

              @fu_zhou sagte: Wenn eine Berechnung nur stattfindet, wenn sich Soll oder Ist ändert, bekomme ich doch eigentlich einen reinen P-Regler, auch wenn eine Nachstellzeit paramteriert ist, oder?

              Nein, es kann aber lange dauern, bis sich die Regelabweichung ändert. Bis dahin ändert sich das Stellsignal nicht und macht dann plötzlich einen starken Sprung durch die Berechnung des I-Anteils. Deshalb sollte bei aktiviertem I-Anteil (Tn) auch immer eine nicht zu lange Zykluszeit aktiviert sein.

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

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

                @mcm57 Da kann ich voll mitgehen - wie kann's auch anders sein 😉! Ist da nicht eh ein Denkfehler drin? Den I-Anteil will ich doch zyklisch berechnen, um die Regelabweichung abzubauen. Wenn eine Berechnung nur stattfindet, wenn sich Soll oder Ist ändert, bekomme ich doch eigentlich einen reinen P-Regler, auch wenn eine Nachstellzeit paramteriert ist, oder?

                Nein, dass stimmt so nicht.
                Der I Fehleranteil würde dann nur über ein längere Zeit summiert und dementsprechende ausfallen.

                Aber wie schon geschrieben - ich seh den Bedarf nicht und mit fliegt diese Sonderbehandlung die nun schon zum driten (?) Mal nicht wie geplant funtkioniert weill immer wieder ein anderer Sonderfall nichgt codiert ist.

                Mit 0.0.7 wird ein neuer Wert (hoffentlich) nur mehr berechnet wenn eine Zyklusperiode abgelaufen ist (und der Regler nicht gestoppt ist). Extrawürste gibts nicht mehr.

                McM

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

                  @fu_zhou
                  Neue Version 0.0.7 released
                  Nun sollten Updates definitiv im Zyklusraster aktualisisert werden solange der Controller nicht gestoppet ist

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

                    @mcm57 super, passt, vielen Dank!

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

                      Die Beschreibung des Adapters gibts nun auch auf deutsch:

                      https://github.com/iobroker-community-adapters/ioBroker.pid/blob/master/docs/de/pid_de.md

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

                        @mcm57
                        In welcher Einheit werden Tn (Nachstellzeit) und Tv (Vorhaltezeit) angegeben?
                        Da mit Nachkommastellen vermute ich Sekunden.

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

                          @paul53
                          Sollten Sekunden sein.

                          Die eingegebenen Werte werden in keiner Weise umgerechnet sondern 1:1 in die angegebenen Formeln eingesetzt.

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

                            @mcm57 sagte: Sollten Sekunden sein.

                            Bitte in der Beschreibung angeben.

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

                              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.

                              mcm1957 paul53 2 Replies Last reply Reply Quote 0
                              • 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
                                            • First post
                                              Last post

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            349
                                            Online

                                            31.7k
                                            Users

                                            79.8k
                                            Topics

                                            1.3m
                                            Posts

                                            16
                                            314
                                            38595
                                            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