Datum: 12.01.2007 14:21
Hallo, ich möchte mit MATLAB und SIMULINK einen DIGITALEN- Regler realisieren. Prozess: K1/(S*T1+1) Stellglied: K2*(1/s) Wie kann man dies mit MATLAB und SIMULINK realisieren?
Datum: 12.01.2007 14:50
In diesem Beispiel will ich den digitalen PID Reglern aus einzelnen Blöcken aufbauen. Ohne Verwendung von PID Block in SImulink.
Datum: 12.01.2007 14:51
das musst du in simulink malen und dann kannst du simulieren. aber das was du als prozess.. angibst ist nicht digital, sondern ein kontinuierliches verhalten. in dein bild gehört aber hinter die summationsstelle noch der (digitale) regler. der fehlt bisher, wenn die beiden blöcke stellglied und strecke sein sollen. den regler muss du in der kontinuierlichen welt ermittteln und dann in den diskreten bereich transformieren, dann kannst ihn eingeben und simulieren. achja, die rückführung der ausgangsgröße wird abgezogen!!
Datum: 12.01.2007 15:16
Ok ich habs mal in SIMULINK folgendermaßen eingegeben: siehe Bild
Datum: 12.01.2007 15:18
Brauche ich da wirklich ein DISCRETE FILTER, oder reicht da das ZERO ORDER GLIED?
Datum: 12.01.2007 16:52
so wie ich dich verstanden habe, willst du deine strecke (beide oben gegebenene glieder in reihe) als analoge regelstrecke mit nem digitalen regler simulieren? werde mal was in matlab vorbereiten damit ich das zeigen kann
Datum: 12.01.2007 17:13
So würde ich das simulieren. Die beiden hinteren Blöcke müssen mit exakten Werten deiner Strecke/Stellglied hinterlegt werden. Vorne da ist der PID-regler diskret aufgebaut und muss noch mit werten hinterlegt werden(deshalb steht jetzt irgendwas drin) diese werte musst du mit der z-transformation deines exakten anaolgen(PID)Reglers ermitteln!!
Datum: 12.01.2007 18:28
Danke Matthias. Warum ist bei dir der I-Anteil sowie der D-Anteil gleich?
Datum: 12.01.2007 18:35
weil ich keine werde für deinen regler habe: also werte für dort auszurechnen, brauch man die intragtionszeitkonstante, die vorhaltezeitkosntante sowie die abtastzeit des reglers. die werte in der strecke sind ja auch gleich, weil ich keine konkreten angaben habe. du hast sie ja nur mit K1,K2,T1 bezeichnet.
Datum: 12.01.2007 21:11
Welche Werte würdest du mal so benutzen um mal einen digitalen PID Regler zum laufen zu bringen, so dass er auch stabil ist?
Datum: 13.01.2007 11:47
Macht man diesen digitalen PID Regler genau so? Welche werte könnte man für die PID Glieder verwenden?
Datum: 13.01.2007 11:56
Hab mal noch einwenig experimentiert. So könnte man doch auch einen digitalen PID Regler aufbauen oder? Durch das ZERO ORDER GLIED und das DISCRETE FILTER Glied macht man doch das digitale Signal, oder?
Datum: 14.01.2007 19:57
Nicht ganz. Um aus einem anaolgen Signal ein digitales zu machen, braucht man einen Abtaster gefolgt von einem Halteglied. Das zusammen nennt man "Sample and Hold"-Stufe. Dadurch wird das analoge Signal zu exakten Zeitpunkten (Abtastfrequenz fa) "eingefangen". Das brauchst du bei Matlab nicht extra in Form von Blöcken berücksichtigen. Du kannst einfach, wie in meinem Bild, eine "diskrete transfer function" vor eine kontinuierliche Übertragungsfunktion (transfer function) setzen. In den anzugebenden Koeffizienten bei der discrete transfer function ist die Abtastfrequenz SOWIE die Form des Übertragungsverhaltens (P, PI, PID...) enthalten. Zu deiner Frage bzgl. der Werte für eine stabile Arbeitsweise: Das kommt auf die Übertragungsfunktion der Strecke und den Anforderungen an die Regelung an. Da du eine IT1-Strecke hast, reicht es aus, einen P-Regler zu verwenden, um KEINE bleibende Regelabweichung zu bekommen. Würdest du hier einen PI-Regler verwenden, so entsteht eine instabile! Struktur.. Und der D-Anteil eines Reglers wird nur bei ganz bestimmten Streckentypen/Anforderungen eingesetzt, da dieser Differenzierende Anteil hochfrequente Störungen erzeugen kann...
Datum: 24.05.2007 16:25
Hallo ich habe ein ähnliches Problem! Meine Strecke hat leider mit einer Totzeit von 30 Samples. Hab schon mit der Sprungantwort die Parameter für nen PID ermittelt. Wie kann ich es in Simulink hinbekommen, das er den PID nur alle 30 Samples einsetzt? ich kann ja immer nur Sample 1 & 30 und 30 und 60 vergleichen am PID! also den Sollwert und das was 30 Samples später rauskommt!
Datum: 26.05.2007 18:20
Err, wie wärs mit einem guten Buch? Generell kann man digitale regler auf zwei Arten auslegen: 1. Quasikontinuierlich: Auslegung eines kont. Reglers und anschließende Diskretisierung. Vorsicht: Zusätzliche Totzeit von Ts/2 2. Diskret: diskretisierung der Strecke und anschließende Auslegung des reglers im z-Bereich, z.b. durch das Kompensationsverfahren. Das Totzeitproblem wirst Du so nicht in den Griff bekommen. Einfach jedes sample verwursten und den Regler entsprechend parametrieren. Was du da vorzuhaben scheinst, ist doch etwas, ääähmm, unkonventionell. Du würdest praktisch mit der 30-Fachen Abtastzeit rechnen.
Datum: 04.06.2007 09:29
siehe eBook "Grundlagen digitale Regelung mit SCICOS/SCILAB" auf www.ebookaktiv.de SCILAB und SCICOS sind Open-Source Matlab/Simulink
Datum: 20.04.2008 11:39
Hello, ich hätte gern eine Frage. Und zwar das Problem mit der Totzeit und Sample habe ich und möchte wissen ob jemand vielleicht mir ein Tip geben kann?
Antwort schreiben
Die Angabe einer Email-Adresse ist freiwillig. Wenn Sie automatisch per Email über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.
Wichtige Regeln - erst lesen, dann posten!
- Suchfunktion und Betreffsuche benutzen - vielleicht gibt es schon einen ähnlichen Beitrag
- Aussagekräftigen Betreff wählen
- Im Betreff angeben um welchen Controllertyp es geht (AVR, PIC, ...)
- Groß- und Kleinschreibung verwenden
- Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang
- JPEG-Dateien (.jpg) nur für Fotos verwenden, Schaltpläne, Screenshots usw. als PNG oder GIF anhängen
Formatierung (mehr Informationen...)
- [c]C-Code[/c]
- [avrasm]AVR-Assembler-Code[/avrasm]
- [pre]vorformatierter Text (z.B. Code in anderen Sprachen)[/pre]
- [math]Formel in LaTeX-Syntax[/math]
- [[Titel]] - Link zu Artikel



