-
-
Erfahrener Benutzer
Robotik Visionär
Hallo Ihr,
eine Anmerkung zu Störungen bzw. zum Rauschen beim D-Anteil - und natürlich bei anderen Messungen.
Bei (genügend un-) geschickter Wahl der Größen kommen Fehler u.a. durch die endliche Stufung der Messwerte in die Rechnung. Dazu eine kurze Bemerkung von mir zusammen mit einem Beispiel-Graphen. Der Graph wurde an einer streng monoton steigenden Funktion aufgenommen. Dieses Teilthema betrifft insofern Rundungsfragen, weil die zu messenden Werte oft irrationale Zahlen ergeben (sollten) mit z.T. beliebig langem Nachkommaanteil - die Messaufnehmer aber nur einen teilweise sehr begrenzten Zahlenraum haben.
Dieses Problem des Messrauschens habe ich bei (m)einer Drehzahlregelung ziemlich markant, da ich integer mit etwa 8 Bit Auflösung messe und rechne. Als Beispiel die Auswertung einer Messfahrt meines MiniD0 in diesem Diagramm, bei dem der D-Anteil (hellblauer Graph) erheblich um seinen Nullwert (Achtung - D ist um 50 nach oben verschoben) pendelt.
-
Erfahrener Benutzer
Robotik Visionär
Wenn man ein längeres Zeitintervall für die Bestimmung der Steigung nutzt, gibt es mehrere Möglichkeiten. Mein Vorschlag ist gerade die Formel für die lineare Interpolation. Mit nur 2 Werten die etwas weiter auseinanderliegen, die Werte dazwischen aber ignorieren wird es auch schon besser als nur die letzten 2 Werte, aber in der Regel wird es mit den zwischenwerten noch etwas besser, schon einfach weil die Quatisierungsschritte kleiner werden. Die Länge des Zeitfensters für die bestimmung Steigung sollte aber kürzer bleiben als die Reaktionszeit der Heizung.
Ein weiteres Problem das man leicht bekommt, wenn man einen sehr stabilen Wert anstrebt ist das man irgendwann die Quantisierung beim Stellwert bemerkt. Solange man durch den D-Anteil noch Rauschen drin hat, schwankt der Ausganbewert auch so noch genug und man bekommt so eine Art Dithering, was die Auflösung erhöht. Wenn man jetzt das Rauschen des D-Anteils stark reduziert, kann es passieren das man die Quatisierung auf der Ausgabeseite stärker stört. Dem müßte man dann ggf. durch ein künstliches Dithering entgegenwirken. Mir ist das schonmal so bei einem Temperaturregeler passiert, trotz 12 Bit Auflösung für die Heizung.
Wenn das ein Programmregler werden soll, also so das nicht eine feste temperatur, sondern ein Temperatur - Zeitverlauf vorgegben wird, dann sollte man die grob geschätzten nötigen Heizleistungen schon aus den sollwerten von Temperatur, Steigung und ggf. auch der Ableitung der Steigung berechnen. Der Regler muß dann nur noch gegen die Fehler bei den Schätzwerten gegenan regeln. Das gibt vor allem an den Übergängen einen schnelleren Verlauf. Vor allem kann man so gut ein Überschießen der Temperatur reduzieren, weil man im Vorraus erkennen kann wie lange die Heizung auchmal ganz aus sein muß - der PID Regler hat da Probleme.
-
Erfahrener Benutzer
Fleißiges Mitglied
Hallo,
ich beschäftige mich zur Zeit auch mit PID Reglern. Eine interessante Quelle wie man die PID Anteile berechnen kann habe ich im Systemhandbuch der S7 - 200 gefunden. Ab Seite 147
https://support.automation.siemens.c...edownload=true
Berechtigungen
- Neue Themen erstellen: Nein
- Themen beantworten: Nein
- Anhänge hochladen: Nein
- Beiträge bearbeiten: Nein
-
Foren-Regeln
Lesezeichen