Spezielle Art eines P-Reglers?

OP #4729814
Hallo,

folgendes vereinfachtes Szenario:
Mit dem PWM-Ausgang eines µCs soll die Drehzahl eines Motors geregelt 
werden. Stellgröße und Rückführgröße sind der Einfachheit halber gleich 
skaliert. Die Zeit von Ausgabe einer neuen Stellgröße bis zum Einlesen 
einer neuen Rückführgröße ist so groß, dass die Strecke im neuen 
Arbeitspunkt eingeschwungen ist.

Der Algorithmus soll möglichst einfach sein und mit wenigen Abtastungen 
des Ist-Werts auskommen. Man könnte jetzt also einen P-Regler 
implementieren. Der hat aber bekanntlich den Nachteil, dass es eine 
nennenswete Regelabweichung gibt (Verstärkung klein) oder dass das 
System schwingt (Verstärkung groß).
Ich habe mir folgenden Algorithmus ausgedacht (vermutlich gibt es diese 
Vorgehensweise schon, ich kenne sie nur nicht). Denken wir uns folgende 
Betriebsfälle:

- Die Stellgröße beträgt 20, die Motordrehzahl ist 20 --> Alles prima, 
nichts zu tun.

- Die Stellgröße wird geändert und beträgt jetzt 30, die Motordrehzahl 
ist nach wie vor 20 --> Die Stellgröße muss um den Faktor 30/20=1,5 
erhöht werden. Also ergibt sich als neue Stellgröße 1,5*20=30

- Die Stellgröße beträgt 30, die Motordrehzahl ist 30 --> Alles prima, 
nichts zu tun.

- Die Stellgröße beträgt 30, die Motordrehzahl ist 25, weil sich die 
Belastung erhöht hat --> Die Stellgröße muss um den Faktor 30/25=1,2 
erhöht werden. Also ergibt sich als neue Stellgröße 1,2*30=36

Ich habe das mal im Excel getestet, funktioniert. Aber was ist das für 
eine Art von Regler?
Welche Nachteile hätte diese Art von Regler?

Danke
Third Eye
Gast
Servus,
wow, Nobelpreis trächtig.

So wie sich das anhört versuchst du zu Fuß einen PD-Regler nachzubilden. 
Das geht in die Hose, weil eine Regeländerung sehr scharf angefahren 
wird und somit ein ständiges nervöses Überschwingen hervorgerufen wird.

Mein Rat an dich: nehme einen klassischen PI-Regler.

Achte daraf, dass die Abtastzeit hier "T" konstant ist...
Angehängte Dateien:
Das Verhältnis von deiner Regelgröße y(t)  zu deiner Stellgröße u(t) ist 
deine Regelstrecke.

z.b. Stellgröße = Spannung U [V]
     Regelgröße = Drehzahl n [U/min]

Die Regelstrecke ist dein Motor. Der Motor kann durch Gleichungen 
modelliert werden, sodass ein Term y(t) = f(u(t)) existiert.

Was du hast ist auch nur ein P-Regler, da du/dein Regler nicht mit 
Ableitungen oder Integralen der Regelabweichung arbeitet. Dann wäre es 
ein PID, ein PI, ein PD, ein I oder ein D Regler, wobei D-Regler 
eigentlich nicht existieren.
Gast
Third E. schrieb:
> Die Stellgröße muss um den Faktor 30/20=1,5
> erhöht werden

Das ist nicht die richtige Art eines P-Reglers: der P-Faktor, mit dem 
die Regelabweichung(!) multipliziert wird, sollte einstellbar sein - das 
ist auch die einzige Stellschraube, an der man bei einem P-Regler drehen 
kann. Die bleibende Regelabweichung und die Stabilität hängen davon ab.

Es ist übrigens egal, ob die Regelabweichung von einem neuen Sollwert 
oder einer geänderten Belastung verursacht wird, das "weiss" der Regler 
garnicht.

Natürlich ist es besser, gleich einen PID-Regler zu programmieren, man 
kann ja den I- und D-Faktor immer noch auf Null stellen, wenn man mit 
dem P-Verhalten schon zufrieden ist.

Georg
Gast
Third E. schrieb:

> Ich habe das mal im Excel getestet, funktioniert. Aber
> was ist das für eine Art von Regler?

Irgendwas Nichtlineares :)

Du bildest Quotienten von variablen Größen, und das
sprengt den Rahmen der klassischen linearen Systemtheorie.
Dort sind nur Plus, Minus und konstante Faktoren erlaubt.
(Integrale und Ableitungen natürlich auch noch.)

> Welche Nachteile hätte diese Art von Regler?

Das Zeitverhalten ist unklar.

Der Motor reagiert nicht unendlich schnell; man muss
verhindern, dass der Regler immer weiter aufdreht.

Antwort schreiben

Eine eigene Frage? Dieser Thread ist über 10 Jahre alt. Stell sie in einem eigenen Thread – dort lesen mehr Leute mit, und sie wird öfter und schneller beantwortet.

Neuen Thread starten

Eine Lösung, Ergänzung oder Rückmeldung zu diesem Thread? Dann antworte hier.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.