Gast
#474731
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?
|
Anzeige
|
MATLAB (digitaler Regler)
Gast
#474731
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?
Gast
#474784
In diesem Beispiel will ich den digitalen PID Reglern aus einzelnen Blöcken aufbauen. Ohne Verwendung von PID Block in SImulink.
Gast
#474786
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!!
Gast
#474800
Ok ich habs mal in SIMULINK folgendermaßen eingegeben: siehe Bild
Gast
#474802
Brauche ich da wirklich ein DISCRETE FILTER, oder reicht da das ZERO ORDER GLIED?
Gast
#474867
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
Gast
#474880
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!!
Gast
#474922
Danke Matthias. Warum ist bei dir der I-Anteil sowie der D-Anteil gleich?
Gast
#474929
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.
Gast
#474997
Welche Werte würdest du mal so benutzen um mal einen digitalen PID Regler zum laufen zu bringen, so dass er auch stabil ist?
Gast
#475195
Macht man diesen digitalen PID Regler genau so? Welche werte könnte man für die PID Glieder verwenden?
Gast
#475201
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?
Gast
#476044
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...
Gast
#568179
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!
Gast
#569307
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.
Gast
#574525
siehe eBook "Grundlagen digitale Regelung mit SCICOS/SCILAB" auf www.ebookaktiv.de SCILAB und SCICOS sind Open-Source Matlab/Simulink
Gast
#847428
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 schreibenBitte melde dich an, um einen Beitrag zu schreiben. |
Anzeige
|