|
|
Modell eines Regelkreises in Simulink implementieren |
|
Andreas1234 |
Forum-Newbie
|
|
Beiträge: 5
|
|
|
|
Anmeldedatum: 21.04.13
|
|
|
|
Wohnort: Paderborn
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 03.05.2013, 01:09
Titel: Modell eines Regelkreises in Simulink implementieren
|
|
|
|
|
Hallo,
es geht um eine Aufgabe, die ich sehr kurzfristig lösen muss.
Kurz zu meinen Grundlagen: Das einzige was ich je mit Simulink gelöst habe, war die Modellbildung und Simulation der Anlaufspannung eines Motors. Jetzt muss ich im Rahmen meines Studiums (leider) sehr kurzfristig eine Aufgabe lösen, in der ich einen Regler auslegen soll und ein Modell des Regelkreises in Simulink implentieren und auswerten soll.
Die Theorie dazu ist erledigt, vom praktischen Umsetzen in Simulink habe ich so gut wie keine Ahnung.
Würde mich deshalb riesig über Hilfe freuen.
Werde mit natürlich noch Fachbücher zum Entwurf von Reglern in Simulink beschaffen, schaffe das jedoch leider nicht bis zum Abgabetermin. Über gute Tipps für gute Bücher dazu würde ich mich freuen.
Theorie:
Ich habe die Übertragungsfunktion einer Regelstrecke gegeben:
mit Ks=0.1, T1=1s, T2=0.2s
An diese Regelstrecke möchte ich einen Regler anpassen, unter der Bedingung, dass die Regelgröße nicht mehr als 5Prozent überschwingt.
Als Regler wäre meiner Meinung nach ein pT2-Regler richtig:
mit T0=2*T2*Ks=0.04s
und T1=1s
Der Frequenzgang des offenen Regelkreises wäre dann ja:
mit T0=0.04s
und Ks=0.1
und T2=0.2s
und der des geschlossenen Regelkreises:
oder in Zahlen ausgedrückt:
Soweit die Theorie, die ich verstanden habe.
Wie kann ich diesen Regelkreis in Simulink darstellen und auswerten?
Vielen, vielen Dank schonmal.
|
|
|
|
|
Calle |
Forum-Century
|
|
Beiträge: 145
|
|
|
|
Anmeldedatum: 08.02.11
|
|
|
|
Wohnort: ---
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 03.05.2013, 06:19
Titel:
|
|
Hi,
deine Rechnung kann ich zwar nicht ganz nachvollziehen (muss ich aber auch nicht), aber ich baue mir einen Regelkreis immer nach einer DGL auf.
unter Simulink ist es auch möglich, direkt die Übertragungsfunktion als block einzugeben. da ist unter continous ein Block der Transfer fcn. heißt.
Ansonsten würde ich die Übertragungsfunktion in eine DGL umwandeln, die höchste Ableitung gleich setzen und dann danach das Blockschaltbild aufbauen.
Hoffe konnte dir ein bisschen helfen.
Was ich nicht verstehe, ist deine Wahl vom Regler. Ich habe noch nie etwas vom Regler mit Verzögerung gehört. aber irgendwann ist ja immer das erste mal. Aber du hast ja eine ganz normale Strecke mit PT2 verhalten. Ich würde dafür dann einen nur einen P-Regler benutzen (soweit es nicht zu weit über-schwingt) und ansonsten noch einen I-Anteil (also PI-Regler) benutzen.
gruß
|
|
|
Andreas1234 |
Themenstarter
Forum-Newbie
|
|
Beiträge: 5
|
|
|
|
Anmeldedatum: 21.04.13
|
|
|
|
Wohnort: Paderborn
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 03.05.2013, 11:47
Titel:
|
|
|
|
|
Hi,
danke für deine schnelle Antwort!
Sorry, hatte nen Fehler drin: Die erste Gleichung ist die Übertragungsfunktion der RegelSTRECKE und heißt korrekt:
mit mit und mit
Differenzialgleichungen müssen doch bevor man sie mit dem Transfer fcn Block ausdrückt der Laplace-Transformation unterzogen werden, wenn ich das richtig sehe?
Meine letzte Gleichung ist ja eine solche transformierte Diff.gleichung.
Diese habe ich bereits in einen Transfer fcn Block eingegeben. Wie kriege ich jetzt aber die Frequenzkennlinie für den Regelkreis dargestellt, sodass ich darin Durchtrittsfreuquenz und Phasenreserve/Phasenrand kennzeichnen kann?
Zu der Verzögerung: Die Regelstrecke ist ein Verzögerungsglied zweiter Ordnung (hatte mich vorhin unklar ausgedrückt, sry). Deshalb muss, um den Regelkreis nach dem Betragsoptimum einstellen zu können, ein I-Regler ersten Grades gewählt werden (da die Regelstrecke eine große Zeitkonstante hat).
Der sieht dann so aus:
mit und
Wenn man anschließend die Übertragungsfunktion oder den Frequenzgang des offenen Regelkreises (Produkt aus Übertragungsfunktion der Regelstrecke und Übertragungsfunktion des Reglers) bildet, und daraus die Übertragungsfunktion des geschlossenen Regelkreises ableitet, sollte man diese in Simulink darstellen und die zugehörigen Frequenzkennlinien abbilden lassen können.
Hoffe, du verstehst was ich meine?
Am letzten Satz scheiterts bei mir.
|
|
|
controlnix |
Forum-Century
|
|
Beiträge: 106
|
|
|
|
Anmeldedatum: 10.06.12
|
|
|
|
Wohnort: ---
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 03.05.2013, 12:15
Titel:
|
|
|
|
|
Hallo Andreas1234,
zunächst kann ich nur feststellen, dass Deine Ausführungen bis auf Kleinigkeiten richtig sind.
1) Wenn Du Deine Indizes bei F anpasst (Strecke Fs, Regler Fr, offener Kreis Fo, geschlossener Regelkreis Fg), ist wahrscheinlich einige Verwirrung beseitigt.
2) Dein Regler ist ein PI-Regler (und nicht PT2).
Die Berechnung der Übertragungsfunktion des geschlossenen Regelkreises (Fg) ist korrekt, wenn man einen Standardregelkreis zugrunde legt und das Übertragungsverhalten vom Sollwert zur Regelgröße betrachtet.
Zeichne Dir diesen Regelkreis als Blockschaltbild auf. Dann ist das Umsetzen in Simulink unter Verwendung der Simulink-Grundelemente (Step, ADD, Transfer Function, Scope) nicht schwer.
@Calle: a) was meinst Du mit "die höchste Ableitung gleich setzen" ?
b) Andreas1234 verwendet einen PI-Regler (s.Uebertragungsfunktion). Es ist also kein Regler mit Verzögerung. Und dennoch: es gibt schon bei einem PID aus Realisierbarkeitsgründen die Notwendigkeit, eine Verzögerung vorzusehen, was dann einem PID-T1 entspricht. Wenn man sich die Übertragungsfunktion eines PID aufschreibt, ergibt sich im Zähler eine höhere Ordnung als im Nenner -> und das wäre ein nichtkausales System.
Grüße
ControlNix
|
|
|
controlnix |
Forum-Century
|
|
Beiträge: 106
|
|
|
|
Anmeldedatum: 10.06.12
|
|
|
|
Wohnort: ---
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 03.05.2013, 12:23
Titel:
|
|
Hallo Andreas1234,
oops, da hattest Du offenbar schon in der Zwischenzeit geantwortet.
Aber nun zu Deiner Frage: Simulink ist dazu da, Simulationen im Zeitbereich durchzuführen.
Freqenzkennlinien sind Darstellungen im Frequenzbereich, also z.B. Darstellung der Ortskurve oder des Bode-Diagramms.
Dafür gibt es in der Control Toolbox fertige Befehle und hat nichts mit Simulation im Zeitbereich zu tun.
Grüße
ControlNix
|
|
|
Andreas1234 |
Themenstarter
Forum-Newbie
|
|
Beiträge: 5
|
|
|
|
Anmeldedatum: 21.04.13
|
|
|
|
Wohnort: Paderborn
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 04.05.2013, 16:01
Titel:
|
|
|
|
|
Hallo,
vielen Dank controlnix! Du hast mir auf jeden Fall schon mal sehr viel weitergeholfen!
Hab leider noch mehr Fragen:
1. Ich habe mal ein Modell meines Regelkreises im Simulink "gezeichnet", allerdings weiß ich nicht was das mir bringt, wenn ich auf scope klicke, erscheint ein leeres Diagramm.
(Sorry, wahrscheinlich ist da irgendwo ein ganz dummer Fehler, beschäftige mich erst seit nicht ganz einer Woche mit Regelungstechnik und simulink.)
2. Ich habe in einer Script-Datei (Anhang) ein Bodediagramm und eine Sprungantwort darstellen lassen. Gibt es die Möglichkeit beide Diagramme gleichzeitig darstellen zu lassen? (z.B mit "hold on" oder "figure(1)" oder "plot" usw.)
3. Ich habe ja einmal die Übertragungsfunktion des geschlossenen Regelkreises und einmal die des offenen. Wenn ich das richtig verstehe, wird für das Bodediagramm die Funktion des offenen Regelkreises verwendet, für die Sprungantwort die des geschlossenen und die Stabilität wird anhand der Polstellen der Übertragungsfunktion des geschlossenen Regelkreises untersucht.
Warum wird für das Bodediagramm die Funktion des offenen Regelkreises verwendet?
4. Die Übertragungsfunktion des geschlossenen Regelkreises hat laut "roots([0.08 0.4 1])" die beiden komplexen Nullstellen -2.5+2.5i und -2.5-2.5i was ja also die Polstellen dieser Funktion sind.
Ist diese Folgerung richtig: Es haben alle Pole der Übertragungsfunktion einen negativen Realteil, der Regelkreis ist also asymptotisch stabil?
5. Gibt es eine Funktion, die die Gütekenngrößen meiner Sprungantwort (Zeit bis zum ersten Maximum, Anregelzeit, Ausregelzeit) automatisch darstellt? (z.B. so ähnlich wie "margin" automatisch die Phasenreserve kennzeichnet)
6. Im Moment ist mein Script für die Darstellung der Diagramme zuständig, mein Simulink-Modell ist komplett unabhängig davon und um die Polstellen zu berechnen, muss ich im Command Window von MatLab arbeiten. Gibt es die Möglichkeit, das etwas eleganter zu lösen?
Wäre echt dankbar, wenn jemand ein bisschen Zeit für die Beantwortung meiner Fragen findet.
(Sorry, wenn sie zu sehr so gestellt sind, dass ich es mit geeigneter Literatur auch selbst rausfinden könnte, schaffe es einfach von der Zeit sonst nicht mehr).
Beschreibung: |
|
Download |
Dateiname: |
Sprungantwort.fig |
Dateigröße: |
13.53 KB |
Heruntergeladen: |
792 mal |
Beschreibung: |
|
Download |
Dateiname: |
Bodediagramm.fig |
Dateigröße: |
15.23 KB |
Heruntergeladen: |
698 mal |
Beschreibung: |
|
Download |
Dateiname: |
Modell.mdl |
Dateigröße: |
23.63 KB |
Heruntergeladen: |
1089 mal |
Beschreibung: |
|
Download |
Dateiname: |
Regelung.m |
Dateigröße: |
465 Bytes |
Heruntergeladen: |
1185 mal |
|
|
|
|
|
Einstellungen und Berechtigungen
|
|
Du kannst Beiträge in dieses Forum schreiben. Du kannst auf Beiträge in diesem Forum antworten. Du kannst deine Beiträge in diesem Forum nicht bearbeiten. Du kannst deine Beiträge in diesem Forum nicht löschen. Du kannst an Umfragen in diesem Forum nicht mitmachen. Du kannst Dateien in diesem Forum posten Du kannst Dateien in diesem Forum herunterladen
|
|
Impressum
| Nutzungsbedingungen
| Datenschutz
| FAQ
| RSS
Hosted by:
Copyright © 2007 - 2024
goMatlab.de | Dies ist keine offizielle Website der Firma The Mathworks
MATLAB, Simulink, Stateflow, Handle Graphics, Real-Time Workshop, SimBiology, SimHydraulics, SimEvents, and xPC TargetBox are registered trademarks and The MathWorks, the L-shaped membrane logo, and Embedded MATLAB are trademarks of The MathWorks, Inc.
|
|