Ankündigung

Einklappen
Keine Ankündigung bisher.

Support Thread für das rtr2 Plugin

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

    #31
    Hast Du vorher den gecachten Werte des Items (hz.settings.garage.frost​_temp) gelöscht? initial_value setzt den Wert nur, wenn noch keiner vorhanden ist. Außerdem werden

    Was passiert denn, wenn Du in einer Logik ng.sh.hz.settings.garage.frost_temp(4.0) setzt?

    Ich kann Dein Problem bei mir nicht nachvollziehen. Wenn ich nach Deinen Infos konfiguriere, funktioniert es bei mir.
    Viele Grüße
    Martin

    There is no cloud. It's only someone else's computer.

    Kommentar


      #32
      Versuche ich.
      Im Plugin selbst sind diese Werte ja auch alle voreingestellt. Kann es sein das diese Werte vorab eingeladen werden?

      Kommentar


        #33
        Zitat von Haxley Beitrag anzeigen
        Kann es sein das diese Werte vorab eingeladen werden?
        Ja, damit Änderungen der Werte eines rtr (z.B. durch die Visu) beim Neustart von SmartHomeNG nicht verloren gehen, werden die jeweils aktuellen Werte im Verzeichnis ../var/plugins_cache gesichert.

        Falls das Plugin beim Start dort eine Datei rtr2.json findet, werden daraus die Konfigurationsdaten der darin gespeicherten rtr des Plugins wieder hergestellt.
        Viele Grüße
        Martin

        There is no cloud. It's only someone else's computer.

        Kommentar


          #34
          Hallo, ich noch mal,
          Also eine /var/pugins_cache habe ich gefunden.
          Wenn ich da die Einstellung vornehme, werden die genommen. Das ist doch aber nicht Sinn und Zweck der Sache das Settings ignoriert werden und ich Einstellungen im Cache machen muss.

          Kann man das nicht anders programmieren?


          Lieben Dank Gruß Haxley
          Zuletzt geändert von Haxley; 13.02.2025, 23:31.

          Kommentar


            #35
            Ich sprach auch nicht vom /var Verzeichnis des Betriebssystems, sondern vom var Verzecihnis von SmartHomeNG unterhalb Deines Verzeichnis in das Du SmartHomeNG installiert hast.
            Viele Grüße
            Martin

            There is no cloud. It's only someone else's computer.

            Kommentar


              #36
              Ich habe mal eine Verständnisfrage: Warum wird denn der Stellwert überhaupt gesendet, dieser wird doch vom Heizaktor automatisch berechnet. Es müsste doch nur die Sollwertverschiebung gesendet werden? Vielleicht stehe ich auch nur auf dem Schlauch...Danke euch

              Kommentar


                #37
                Der Stellwert wird durch den rtr bestimmt und steuert den Heizaktor.

                Falls Dein Aktor den Stellwert selbst bestimmt, hast Du keinen reinen Heizaktor, sondern er enthält auch einen rtr. Dann brauchst Du das Plugin nicht, es sei denn Du willst Feturers des rtr2 Plugins nutzen, die Dein Aktor nicht unterstützt.
                Viele Grüße
                Martin

                There is no cloud. It's only someone else's computer.

                Kommentar


                  #38
                  Ich habe das RTR2 am Laufen aber das spinnt immer mal.
                  Code:
                  buero:
                      struct: rtr2.rtr
                      rtr2_id: heizung_buero
                      rtr2_settings: [24,6,1,false]
                      #rtr2_settings: [<comfort_temp>, <night_reduction>, <standby_reduction>, <fixed_reduction>, <hvac_mode>, <frost_temp>]
                      rtr2_controller_settings: [4,60]
                      soll_temp:
                      database: init
                  
                      ist_temp:
                           knx_dpt: 9
                          knx_cache: 4/1/12
                          knx_listen: 4/1/12
                          database: init
                  
                      stellwert:
                          knx_dpt: 5001
                          knx_send: 1/2/0
                          database: init
                  ​
                  Leider passiert das nur ab und zu aber auch an anderen Reglern.

                  Die Soll Temp. ist auf 21,4 eingestellt aber selbst bei 22,6 Grad im Raum wird weiter mit 18,4 weiter geheizt und die Temp steigt weiter.

                  Ich habe mir nun mal das Plugin angeschaut und in der tat ist da ein Bug drin:

                  Bug in pi_controller.py (Zeile 83-86):
                  Code:
                  if y < 0 or self._eSum < 0:
                      if y < 0:
                          y = 0
                      self._eSum = 0
                  Problem:
                  Wenn die Ist-Temperatur über dem Sollwert liegt (e < 0), wird eSum negativ.
                  Wenn eSum noch positiv ist (z. B. von vorherigem Heizen) und y durch die Berechnung noch positiv bleibt, wird eSum nicht zurückgesetzt.
                  Folge: Es wird weiter geheizt, obwohl die Temperatur bereits über dem Sollwert liegt.

                  Beispiel:
                  Soll: 21.4°C, Ist: 22.6°C → e = -1.2
                  Wenn eSum noch positiv ist (z. B. 150) und Ki=30:
                  i = 150 / (60 * 30) = 0.083
                  y = 100 * 0.25 * (-1.2 + 0.083) = -27.9 → sollte 0 sein
                  Wenn eSum sehr groß ist (z. B. 300):
                  i = 300 / (60 * 30) = 0.167
                  y = 100 * 0.25 * (-1.2 + 0.167) = -25.8 → sollte 0 sein
                  Das Integral wird nicht zurückgesetzt, wenn e < 0 ist, auch wenn y noch positiv bleibt.

                  Beheben:
                  Code:
                  # Statt:
                  if y < 0 or self._eSum < 0:
                      if y < 0:
                          y = 0
                      self._eSum = 0
                  
                  # Sollte sein:
                  if e < 0:  # Wenn Temperatur über Sollwert liegt
                      y = 0
                      self._eSum = 0
                  elif y < 0:
                      y = 0
                      if self._eSum < 0:
                          self._eSum = 0
                  Auf die Schnelle (ohne den Plugin Code zu ändern) kann man auch die Einstellungen anpassen:
                  Es muss der KI Wert erhöt werden, auf 120 oder so.
                  rtr2_controller_settings: [4,120]
                  und ggf. auch der Kp Wert auf 5 oder 6 gesetzt werden.

                  Besser ist aber den Bug zu beheben;-)

                  Gern geschehen.

                  Gruß Haxley
                  Zuletzt geändert von wvhn; Gestern, 22:01. Grund: Einrückungen wiederhergestellt und Doppelung entfernt

                  Kommentar


                    #39
                    Moin Haxley,

                    mein Studium der Regelungstechnik ist leider schon eine Weile her. Ich denke aber nicht, dass dies ein Bug ist.

                    Dein Vorschlag macht aus dem PI-Regler mehr oder weniger einen Zweipunkt-Regler, der in der Temperarur deutlich höhere Schwankungen produziert und damit den Hauptvorteil des PI-Reglers zunichte macht. Der Ansatz, die Regelparameter an den jeweiligen Raum anzupassen, ist hier sicher der bessere.

                    Gruß
                    Wolfram

                    Kommentar

                    Lädt...
                    X