Forum: Mikrocontroller und Digitale Elektronik PID-Regelung für Motoransteuerung via PWM


von Chris P. (Gast)


Lesenswert?

Hallo Leute,


gleich vorweg gebe ich zu, dass ich zwar viel theoretisches Wissen über 
Regelungstechnik habe, es aber noch nie in der Praxis gebraucht habe. 
Darum wende ich mich nun an euch.


Ich stehe vor der folgenden Aufgabe:
Bei der Geschwindigkeitsregelung eines Gleischtrommotors der mit einem 
PWM-Signal angesteuert wird, soll der Beschleunigungsvorgang viel 
sanfter sein, als der Bremsvorgang. (Der Bremsvorgang soll so abrupt wie 
möglich sein.)
Der Regler wird dabei komplett in der Sofware implementiert und soll 
hald das PWM-Signal erzeugen. Soweit so gut.


Nun die Praxisfrage: Soll ich einfach zwei PID-Regler machen, die 
unterschiedlich agressiv sind und dann bei der PWM-Generierung jeweils 
den entsprchenden Regler nutzen? Macht man das so? Bzw. gibt es auch 
eine Alternative mit nur einem Regler der trotzdem unterschiedlich 
aggressiv reagieren kann? Es gibt ja allerhand Variationen 
(Zustandsregelung, Kaskadierung, Vorsteuerung, und wie sie nicht alle 
heißen...) aber ich weiß nicht was man wann und wozu benutzt.


Mfg,
Chris

von St fresser (Gast)


Lesenswert?

Einen PI Regler reicht dafür völlig aus. Wenn du Strom messen kannst, 
kommt Kaskadenregelung im Einsatz,

Für Bremsvorgang kannst den P Anteil etwas höher stellen

von MaWin (Gast)


Lesenswert?

Chris P. schrieb:
> Der Bremsvorgang soll so abrupt wie möglich sein.

Da muss man dann eigentlich gar nichts mehr regeln.

von Chris P. (Gast)


Lesenswert?

Ah verstehe. Also macht man für die beiden unterschiedlichen Fälle 
tatsächlich einfach zwei verschiedene P- bzw. I-Parameter!

@MaWin: Ja stimmt, das hab ich mir auch schon gedacht, aber ich weiß 
nicht wie es die Motorschaltung das verkraftet, wenn ich einfach nen 
Spannungssprung auf -U_max mache...

von RP6conrad (Gast)


Lesenswert?

Eine PID regelung reicht, aber du brauchst ein variabele setpoint ! 
Standard bei Motor Regelungen ist das sie eine Trapezium profil 
einstellt fur ihre setpoint. Jetzt reicht es um die steigende Flanke 
flach einzustellen und die senkende flanke steil ! Damit haben sie auch 
immer die Moglichkeit um diese Flanke jederzeit nach ihre Wunsch zu 
anderen. Die PID Parameter bleiben immer gleich !

von volsksvorg (Gast)


Lesenswert?

Um den vorherigen Post etwas verständlicher auszudrücken. du brauchst 
nur einen PID Regler mit einem Parameterset. Den Brems bzw. 
Beschleunigungsvorgang erzeugst du indem du den Sollwert änderst. Der 
Regler folgt immer dem Sollwert. Am einfachsten machst du das mit einer 
Rampe. Oben
Trapezium profil genannt. Die Steigung der Rampe repräsentiert dann 
deine Beschleunigung bzw. Verzögerung.

Bsp: Dein Motor soll in 2s von der max. Drehzahl auf null verzögern.
Dann lässt du den Sollwert von seinem max. Wert in 2s. linear auf null 
"runter rampen". Am einfachsten machst du das mit einem Timer der deinen 
max. Sollwert z.B. 32767 in 2s auf null subtrahiert.

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.