PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Regelstrecke simulieren



Wüstenblume
29.05.2008, 08:39
Hallo Leute,
ich programmiere einen GS-Motor Regler (PI).
Um die Reglerparameter herauszubekommen habe ich die ganze Regelstrecke mit WinFact simuliert.
Nun habe ich ein paar Fragen dazu.
Zuerst hab ich versucht, die Parameter duch Ausprobieren einzustellen. Also am ANfang nur P-Regler und die Sprungantwort des Systems angeschaut.
Das Problem ist, ich weiß nicht genau, wie ich die Simulationszeit einstellen soll, wähle ich die groß, dann sieht ja das Verhalten immer gut aus!!! Wenn ich sie zu klein wähle, dann habe ich immer Überschwinger.
Wonach sollte ich mich da richten? Die Aufrufperiode des Reglers beträgt 0,2 s

Die zweite Frage:
versuch ich die Parameter nach Ziegler/Nichols einzustellen, dann muss ich mein Gesamtsystem zum Schwingen bringen. Ich bekomme aber eine periodische Schwingung gar nicht hin, sondern nur entweder eine auf oder eine abklingelne. Ok, wenn ich den Simulationsbereich sehr klein wähle, also bis 0.2s, dann sieht es so aus, als würd das System schwingen, aber in Wirklichkeit, schwingt es sich ein (bei einer Tsim von z.B. 10s).

wie gehe ich da am Besten vor??
danke schon mal

Crashmichl
29.05.2008, 09:27
Hallo,

arbeite mal mit der Sprungantwort der Strecke. Dann kannst du das Einstellverfahren nach Chien, Hrones und Reswick. Dabei wird mit Hilfer der Sprungantwort die Wendetangente benutzt um Verzugszeit Tu und Ausgleichszeit Tg sowie Verstärkung bestimmt. Dazu gibts dann eine Formel zum berechnen.

Gruß

Michael

shaun
29.05.2008, 11:11
Ich fass es nicht, ein zweiter Mensch, der den Hund (frz Chien ;) ) in der Praxis nutzt! Ich habe mich bisher zwei mal öffentlich dazu herabgelassen (Gegentakt-SNT in meiner Studienarbeit und HF-Pegelregler in der Diplomarbeit) und kein Regelungstechniker kennt das Ding. Anscheinend lernen die bei uns nur Ziegler/Nichols als schlechtes Beispiel aus der Vergangenheit und springen dann gleich zu diskreten selbstoptimierenden Mehrgrößenreglern. Den notwendigen High-End-PC für Matlab in die zu steuernde Waschmaschine einzubauen ist dann Hausaufgabe ;)

Crashmichl
29.05.2008, 11:31
Hallo,

@shaun: Das und Ziegler/Nichols haben wir bei uns im Studium für die "kleinen" Regler kennen gelernt. Da hat unser Prof Wert drauf gelegt, dass wir das zumindest schon mal gehört haben.

@Wüstenblume: Wenn du dazu Material brauchst, habe hier sogar noch was in digitaler Form gefunden.

Gruß

Michael

Wüstenblume
29.05.2008, 11:48
@Chrashmichl:
also das hab ich im Studium auch gehört, danke. Hab da genügend Infos wie man vorgehen soll.

sehreilig
30.05.2008, 07:49
Der Regler scheint mir mit einer Zykluszeit von 0,2s zu langsam für diese Regelaufgabe, so dass er das Zeitverhalten mehr bestimmt als die Strecke selbst.
Trotzdem kannst du deinen Regler verwenden, er ist eben nur nicht optimal.
Stelle deinen PI-Regler doch in zwei Schritten ein:
1. I-Anteil aus, nur P-Anteil: Sollwertsprünge auf den Kreis und Einschwingvorgang beobachten. Dann den P-Anteil so einstellen, dass der IstWert keinerlei Tendenz zum Schwingen hat (der Endwert ist dann noch sehr weit von Sollwert entfernt)
2. P-Anteil nicht mehr verändern, I-Anteil so einstellen, dass der IstWert den SollWert möglichst schnell erreicht.
Du wirst keine bessere Reglereisntellung anders herausfinden.
Gruß von Jens

Wüstenblume
02.06.2008, 08:03
Was sagt mir das, wenn mein Sollwert, den Istwert nie erreicht?
Hab z.B. bei 1000U/min soll, nur 982 U/min als ist.

Crashmichl
02.06.2008, 08:57
Ein P-Regler verursacht immer eine Regelabweichung. Je größer K für die Verstärlung gewählt ist, desto höher auch die Differenz von Soll und Ist bei stationären Zustand.

Gruß

Michael

Wüstenblume
02.06.2008, 09:24
Ein P-Regler verursacht immer eine Regelabweichung. Je größer K für die Verstärlung gewählt ist, desto höher auch die Differenz von Soll und Ist bei stationären Zustand.

Gruß

Michael

ich bin aber schon beim PI-Regler

Crashmichl
02.06.2008, 13:13
Dann sollte es keine Regelungsabweichung geben. Hast du den I-Anteil vielleicht zu klein gewählt, so dass er sehr lange braucht um auszugleichen?
Ist das in der Simulation oder schon beim Aufbau?

Gruß

BastelHans
02.06.2008, 14:15
Probier es mal mit der anderen Methode von Ziegler und Nichols. Dabei Nimmst du die Sprungantwort (am besten der realen Strecke) auf und bestimmst damit die Parameter.

Formeln unter "Approximation der Strecke durch PT1Tt-Glied" und Beschreibung des Verfahrens bei http://de.wikipedia.org/wiki/Faustformelverfahren_(Automatisierungstechnik)#Met hode_von_Ziegler_und_Nichols

Das Verfahren sollte eigentlich brauchbare Werte liefern.

Bezüglich des Aufruf des diskreten Reglers: Die Aufrufperiode sollte allerhöchstens 1/5 (besser 1/10) der Streckenzeitkonstante (aus der Sprungantwort) betragen, damit der diskrete Regler wie ein kontinuierlicher Regler behandelt werden kann. Sonst gelten die ganzen Faustformeln auch nicht! Also wenn du den Regler alle 0,2 Sekunden aufrufst, dann darf die Zeitkonstante der Strecke nicht kleiner als eine Sekunde sein.

sehreilig
03.06.2008, 06:45
Hallo noch einmal,
zunächst möchte ich etwas richtig stellen:

Ein P-Regler verursacht immer eine Regelabweichung. Je größer K für die Verstärlung gewählt ist, desto höher auch die Differenz von Soll und Ist bei stationären Zustand.
ist falsch, richtig ist natürlich, je höher die Verstärkung, umso geringer die bleibende Regelabweichung (und umso höher die Schwingneigung der regelgröße). Dass heisst, ich muss mit meiner Reglereinstellung für den P-Anteil ein Optimum zwischen geringer bleibender Regelabweichung und noch für meine spezielle Regelaufgabe akzeptierbarer Schwingneigung einstellen.
Den I-Anteil muss ich dann so einstellen, dass die bleibende Regelabweichung des P-Reglers möglichst schnell und mit akzeptebler Schwingneigung durch den I-Anteil ausgeregelt wird.
Noch einmal ein häufig erprobtes weiter oben bereits genanntes Vorgehen zum Finden einer optimalen Reglereinstellung:

1. I-Anteil aus, nur P-Anteil: Sollwertsprünge auf den Kreis und Einschwingvorgang beobachten. Dann den P-Anteil so einstellen, dass der IstWert keinerlei Tendenz zum Schwingen hat (der Endwert ist dann noch sehr weit von Sollwert entfernt)
2. P-Anteil nicht mehr verändern, I-Anteil so einstellen, dass der IstWert den SollWert möglichst schnell erreicht.
Du hast dann die schnellstmögliche Reglereinstellung mit sehr geringer Schwingneigung.

Eine Reglereinstellung nach Ziegler Nichols ist zwar sehr bekann, liefert aber nach meiner Erfahrung Reglereinstellungen mit starker Schwingneigung (2 bis 3 mal Überschwingen).
Grüße von Jens

Wüstenblume
03.06.2008, 10:09
Probier es mal mit der anderen Methode von Ziegler und Nichols. Dabei Nimmst du die Sprungantwort (am besten der realen Strecke) auf und bestimmst damit die Parameter.

Formeln unter "Approximation der Strecke durch PT1Tt-Glied" und Beschreibung des Verfahrens bei http://de.wikipedia.org/wiki/Faustformelverfahren_(Automatisierungstechnik)#Met hode_von_Ziegler_und_Nichols

Das Verfahren sollte eigentlich brauchbare Werte liefern.

Bezüglich des Aufruf des diskreten Reglers: Die Aufrufperiode sollte allerhöchstens 1/5 (besser 1/10) der Streckenzeitkonstante (aus der Sprungantwort) betragen, damit der diskrete Regler wie ein kontinuierlicher Regler behandelt werden kann. Sonst gelten die ganzen Faustformeln auch nicht! Also wenn du den Regler alle 0,2 Sekunden aufrufst, dann darf die Zeitkonstante der Strecke nicht kleiner als eine Sekunde sein.


Kannst du mir das mit der Aufrufperiode genauer erkläre? Warum soll die kleiner als die Zeitkonstante vom Motor (12,77ms) sein?
Noch ne andere Frage: "Wie spielt die Periode des PWM-Signals da rein?" Hat die auch Einfluß auf das Verhalten des Regelkreises? Ich hab nämlich sowas gehört. Mir wurde empfohlen, die Tpwm von ca. 1ms einzustellen, wie die Aufrufperiode des Reglers auch. Das Problem dabei ist, ich bin damit im hörbarem Bereich und der Motor piepst schrecklich.......

Wüstenblume
04.06.2008, 10:08
ich hätt da mal ne andere Frage. Wenn ich eine Störgröße auf die Strecke draufgebe und dann wegnehme, dann schwingt mein Motor ein wenig, bis es sich auf die Sollvorgabe eingeschwungen hat. Muss ich da den I-Anteil erhöhen, damit er sich schneller einschwingt oder muss ich den D-Anteil dazu nehmen, damit die Überschwinger weg sind?

Die Parameter hab ich einigermaßen hinbekommen (Regler regelt!)

sehreilig
05.06.2008, 20:58
Hallo,
wie du einen PI-Regler ohne irgendwelche mathematischen Verfahren einstellen kannst, hab ich doch oben beschrieben: Erst P-Anteil, dann I-Anteil
Es hat keinen Sinn, wild dran rumzuschrauben. Wenn z.B. der P-Anteil schon für Überschwinger sorgt, kriegst du die nur über diesen wieder heraus
Gruß Jens