Hallo alle zusammen!
Ich wusste jetzt nicht ob die Frage besser in der Rubrik Messtechnik gepasst hätte, falls das der Fall ist bitte ich um Nachsicht.
Ich bin dabei meine Bachelorarbeit zu schreiben. Es handelt sich dabei um die Druckregelung in einer Druckkammer (die einen Brennraum/Motor) simulieren soll. Es gibt ein Ein- und ein Auslassventil. Beide Ventile sind Magnetventile die nur auf oder zu geschaltet werden können. Mein Betreuer will das ich mit Labview einen PID Regler bastle der den Druck in der Kammer regelt. Im Grunde soll dieser Regler angeschaltet werden und sobald der Druck sich möglichst genau eingestellt hat, soll der Regler wieder abgeschaltet werden (wobei man PID Regler ja eigentlich für eine permanente Regelung benutzt). Ich habe mich zu PID Reglern belesen und hier auch über die Suche mir ähnlich Beispiele angeschaut und bin zu dem Schluss gekommen, dass es für meinen Versuchsaufbau nur zwei Möglichkeiten gibt einen PID Regler zu verwenden. Die erste wäre, dass ich Ein Magnetventil durch ein Proportionalventil ersetze (entfällt da viel zu teuer) und die zweite Möglichkeit wäre die Magnetventile sehr schnell schalten zu lassen und durch ein schnelles auf und zu verschiedene Zustände zu realisieren z.B. von 60% Öffnung (entfällt da Druck sehr Hoch bis 150 bar und Schaltzeit zu lang 0,7 s). Wir haben bereits mechanische Nadelventile als Drossel vor die Magnetventile gesetzt was leider nicht viel gebracht hat.
Nach meiner Literaturrecherche bin ich zu dem Schluss gekommen, dass man für meinen Versuchsaufbau/Verwendung eher einen Zweipunktregler verwenden würde. Das wäre für meine Bachelorarbeit aber leider sehr schlecht da sehr viel Theorie weg fällt über die ich gern schreiben würde.
Ist es möglich ohne meinen Versuchsaufbau zu verändern einen PID Regler zu verwenden oder macht das ganze in meinem Fall gar keinen Sinn?
Moin,
mit deiner Vermutung Zweipunktregler liegst du schon ganz richtig.
Die Option "Schnell schalten" würde ich verwerfen. Hierfür kannst du mal nach dem Stichwort PWM googlen.
Die technisch saubere Lösung wäre das Prop-Ventil und der PI(D)-Regler. Wenn dein Betreuer einen saubere Simulation haben möchte,
dann wird er um diese Investition nicht herum kommen.
Eine Krücke wäre ein PI(D)-Regler, bei dem du ab einem gewissen Stellgrad das Ventil öffnest und bei Unterschreitung wieder schließt.
Das funktioniert, ist IMHO aber nicht wirklich schön.
Hope it helps, Ralf aka RMR
(17.05.2016 06:22 )RMR schrieb: [ -> ]Die technisch saubere Lösung wäre das Prop-Ventil und der PI(D)-Regler.
Wo ist das Problem beim Setup PID -> PWM -> Magnetventil? Bei Flussreglern (Gase) ist das durchaus üblich... Ist eher die Frage, was für ein Magnetventil du hast, d.h. ob dessen Schaltzeit, Membran etc. für den Einsatz als 1/0 Regler geeignet sind. Scheint mir hier leider nicht so richtig der Fall zu sein.
(16.05.2016 16:57 )Labview User schrieb: [ -> ]Das wäre für meine Bachelorarbeit aber leider sehr schlecht da sehr viel Theorie weg fällt über die ich gern schreiben würde.
Dachte ich auch mal, da möglichst viel schreiben zu müssen. Aus Erfahrung: will bei einer praktischen Arbeit kein Betreuer lesen
(16.05.2016 16:57 )Labview User schrieb: [ -> ]Wir haben bereits mechanische Nadelventile als Drossel vor die Magnetventile gesetzt was leider nicht viel gebracht hat.
Wenn die Drosslung dein Setup nicht stört, klingt es sinnvoll, diese zu erhöhen. Falls sie stört könntest du vielleicht einen Bypass ohne Restriktion aufbauen für den Fall, dass schnell bedruckt oder entlüftet werden soll? Das müsste deine Regelung dann natürlich berücksichtigen (Stichwort: State-Machine).
(16.05.2016 16:57 )Labview User schrieb: [ -> ]Ich wusste jetzt nicht ob die Frage besser in der Rubrik Messtechnik gepasst hätte, falls das der Fall ist bitte ich um Nachsicht.
Passt definitiv besser hier her, deshalb
.
Gruß, Jens
Vielen Dank!!! Für die hilfreichen Antworten von euch. Das hat geholfen um meinen Betreuer zu überzeugen. Mein Betreuer meint, dass ihm nur wichtig ist, dass der Druck möglichst genau eingestellt wird wie ist ihm egal. Ich werde jetzt also erstmal versuchen das Ganze mit einem Zweipunktregler umzusetzen. In der Kammer gibt es noch eine Heizung (0-5V) und einen Temperatursensor. Die Temperatur werde ich dann wohl mit einem PID Regler regeln. Die Drosselung (Edelstahlrohr mit 0,1 mm Innendurchmesser) haben wir jetzt erhöht. Im Grunde ist die schnelle Befüllung der Druckkammer uns nicht so wichtig aber falls es sehr langsam wird werden wir noch einen Bypass verbauen. PWM ist ein gutes Stichwort und im Grunde genau das was ich meinte. Aber mit unserem Ventil wird das wohl nichts.
Ich gebe Bescheid wie ich voran komme es wird sicherlich noch die ein oder andere Frage auftreten.
ps Danke Jens fürs verschieben!
Wie erwartet bin ich auf ein paar neue Probleme gestoßen. Ich war mir jetzt nicht ganz sicher ob ich dafür ein neues Thema aufmachen sollte. In der Hoffnung das hier noch ein paar Leute reinschauen versuche ich es erstmal hier.
Ich bin gerade dabei die Temperatur in der Druckkammer über einen PID-Regler zu regeln. Also ist doch eigentlich meine Prozessvariable die Temperatur oder? Das Problem bei der Heizung ist das man sie nicht gleich mit voller Leistung anschmeißen kann da sonst der Draht durch brennt(sie muss möglichst langsam hochgefahren werden). Ich hatte gehofft, dass ich das über die Gains des PID-Reglers hinbekomme. Ich frage mich jetzt allerdings wie ich es umsetzen kann das mein Eingang quasi die Temperatur ist und am Ausgang aber die Spannung geregelt werden soll?
Hat jemand da vielleicht einen Tipp für mich?
Hallo User,
Zitat:Also ist doch eigentlich meine Prozessvariable die Temperatur oder?
Ja.
Zitat:Das Problem bei der Heizung ist das man sie nicht gleich mit voller Leistung anschmeißen kann da sonst der Draht durch brennt(sie muss möglichst langsam hochgefahren werden). Ich hatte gehofft, dass ich das über die Gains des PID-Reglers hinbekomme.
Nein, das macht man nicht mit den Gains.
Dafür gibt es im PID-Toolkit die Funktion "PID Output Rate Limiter": mit dieser kann man erreichen, dass die Stellgröße nicht schlagartig große Sprünge macht!
Zitat:wie ich es umsetzen kann das mein Eingang quasi die Temperatur ist und am Ausgang aber die Spannung geregelt werden soll?
Das erreicht man über den P-Gain.
Der P-Wert ist vereinfacht gesagt das Verhältnis von Änderung der Stellgröße im Verhältnis zur Änderung der Prozessgröße.
Oder umgangssprachlich: pro K Temperaturabweichung muss die Spannung um einen Wert x (=P-Gain) geändert werden…
Zitat:In der Hoffnung das hier noch ein paar Leute reinschauen versuche ich es erstmal hier.
Ich gucke immer nach den aktuellen Threads des letzten Tages. Sobald du einen neuen Beitrag in einem alten Thread schreibst, rutscht dieser automatisch nach oben!
Danke Gerd! Deine Antwort war wirklich sehr hilfreich. Ich werde versuchen das Ganze so umzusetzen und gebe nochmal eine Rückmeldung ob alles geklappt hat.
(07.06.2016 13:27 )Labview User schrieb: [ -> ]...Das Problem bei der Heizung ist das man sie nicht gleich mit voller Leistung anschmeißen kann da sonst der Draht durch brennt(sie muss möglichst langsam hochgefahren werden).........
Wenn du mit Freigabe der Heizung (des Reglers), das Outputlimit (findest du als Cluster am PID-VI) über ein Scchieberegister langsam steigerst, dann würde der Regler langsam starten.
Evtl gibt es da noch elegantere Lösungen, aber diese ist mir spontan eingefallen.
Hope it helps, Ralf
Ich dachte mir, dass bevor ich mir die Gains aus den Versuchen ermittle, probiere ich vielleicht das Ganze zu berechnen.
Eingangssignal x_e ist bei mir die Spannung U
Ausgangssignal x_a die Temperatur T bzw. Wärmeenergie Q
Widerstand R
Zeit t
Q= (U^2/R)*t
jetzt wollte ich die Zustandsgleichung für einen PI-Regler aufstellen
x_e = U
x_a = Q
x_a = (U^2/R)*t = 1/R*Integral(x_e*(2t*x'_e + x_e))dt = 1/R*Integral(U*(2t*U' + U))dt
Ist das soweit richtig und macht Sinn?
Mein Problem ist das ich nicht wirklich weiß was U' sein soll. Ich hatte überlegt ob U vielleicht unabhängig von der Zeit ist bzw. einfach U' = 0
Dann wäre x_a = (U^2/R)*t = 1/R*Integral(x_e^2)dt = 1/R*Integral(U^2)dt und somit meine Integrationskonstante T_I = R. Ist K_p = K_c = 1 wenn R meine Integrationskonstante ist?
Ich bin mir auch nicht ganz sicher ob ich Eingangs- und Ausgangssignal verwechselt habe und somit meine Integrationskonstante T_I = 1/R ist?
Online konnte ich zu dem Problem merkwürdiger Weise noch nichts finden.
@Ralf Danke für den Tipp. Ich werde das mal ausprobieren.