Step 7 PI-Regler für Motor

Frank2728

Level-1
Beiträge
27
Reaktionspunkte
0
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo,

ich muß für ein Praktikum einen PI-Regler für einen Motor programmieren. Er soll nach der Trapez-Methode funktionieren mit folgendem Algorithmus:

Stellgröße = kp*[ei+T/(2Tn)*Summe(e(i-1)+ei)]

(ei = aktuelle Regelabweichung, e(i-1) = Regelabweichung der letzten Abtastung, T=Abtastperiode, Tn=Nachstellzeit, kp= Proportionalitätsfaktor)

Die Simulation scheint soweit korrekt zu laufen, bin mir nur nicht ganz sicher, ob das alles im Einzelnen so richtig ist, besonders das "Anti-Windup" am Ende.

Wäre schön, wenn da mal jemand einen Blick drauf werfen könnte.

Grüße Frank
 

Anhänge

  • FB4.pdf
    53,8 KB · Aufrufe: 41
Hallo Frank,

die Berechnung sieht auf den ersten Blick erst einmal ganz gut aus. Wurde dir der Algorithmus so vorgegeben? Im Bezug auf diese Wind-up Geschichte wäre es günstiger, den P- und den I-Anteil getrennt zu berechnen und erst am Ende zu addieren. Der I-Anteil (die aufsummierte Regelabweichung) müsste dann idealerweise so begrenz werden, dass der Stellgrad (I-Anteil + P-Anteil) einen maximalen und auch einen minimalen Wert nicht über- bzw. unterschreitet. Eine Initialisierung bei Reglerfreigabe wäre eigentlich auch notwendig.
 
Die "normale" Wind-UP Methode (gibt ja ganze Bücher dazu :cool: ) basiert ja oft auf einem "Anhalten" des I-Anteils, also kein weiteres Aufaddieren. Da würde es evtl. Sinn machen nur den I-Anteil anzuhalten und P weiter zu nutzen.
 
Also wenn das mit dem Anti-Windup soweit in Ordnung ist, würde ich es so lassen. Es geht nur um ein Testat für eine Klausurzulassung. Freibier für den, der das beste Programm liefert, gibt es leider nicht ;)

Mich würde noch interessieren, ob ich für die Regelabweichung einen Startwert vorgeben soll. Die Simulation scheint auch ohne korrekt zu laufen.

Dann gibt es noch die Frage "Wie lässt sich das P-Verhalten und das I-Verhalten prüfen?" Also beim P-Verhalten würde ich T=0 vorgeben, damit von der Formel nur Stellgröße=kp*Regeldifferenz übrigbleibt. Beim Simulieren müßte dann eine bleibende Regelabweichung vorhanden sein. Aber wie testet man das I-Verhalten? Da würde mir jetzt nur einfallen, daß die bleibende Regelabweichung nahezu Null wird?
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Dann gibt es noch die Frage "Wie lässt sich das P-Verhalten und das I-Verhalten prüfen?" Also beim P-Verhalten würde ich T=0 vorgeben, damit von der Formel nur Stellgröße=kp*Regeldifferenz übrigbleibt. Beim Simulieren müßte dann eine bleibende Regelabweichung vorhanden sein. Aber wie testet man das I-Verhalten? Da würde mir jetzt nur einfallen, daß die bleibende Regelabweichung nahezu Null wird?

1. Regler initialisieren und mit Sollwert=0 und Istwert=0 betreiben -> Stellgröße sollte 0 sein
2. Sollwert=1, Istwert=0 setzen.
3. Nach dem ersten Aufruf muss die Stellgröße aufgrund des P-Anteils y=kp(w-x) sein, z.b. bei kp=10 dann y=10
3. Nach Ablauf der Nachstellzeit Tn muss sich die Stellgröße aufgrund des I-Verhaltens auf 2x der Stellgrößenänderung durch kp erhöht haben, d.h. y=20
 
Zurück
Oben