Forum: Mikrocontroller und Digitale Elektronik Durchflussregelung mit einem Proportionalventil


von Serge W. (serge_w)


Angehängte Dateien:

Lesenswert?

Guten Morgen liebe Leute
Ich bin gerade dabei, mithilfe eines Proportionalventils (stufenlos 
einstellbares Magnetventil) einen Wasserfluss auf eine gewünschte 
Ziel-Durchflussrate zu regeln. Das Wasser wird von einer Pumpe 
gefördert. Nach dem Ventil kann es zu mehr oder weniger fluidischem 
Widerstand kommen, dieser kann sich fortlaufend ändern.

Der Durchfluss wird gemessen und das Ventil dann via PI Regler 
angesteuert.

Grundsätzlich funktioniert das auch ganz gut, insbesondere wenn die 
Druckvehältnisse einigermassen konstant sind und sich der Widerstand 
nach dem Ventil nicht gross ändert. (Die Druckverhältnisse sind dem 
Regler nicht bekannt)

Ich habe aber festgestellt, dass sich das System bei ändernden 
Druckverhältnissen zT sehr instabil verhält, es kommt zu Sprüngen im 
Durchfluss welche dann sehr träge korrigiert werden.

Nachdem ich mir die Kennlinien von Proportionalventilen mal angeschaut 
habe, komme ich zu folgender Erklärung (siehe auch Anhang)

Wenn der Druck im System einigermassen konstant ist, bewege ich mich mit 
dem Regler mehr oder weniger auf einer dieser definierten QI Kennlinien 
(den Strom stelle ich über das PWM ein). Ich erziele mit einem 
defensiven Regler sehr gute und stabile Resultate.

Wenn sich der Druck im System ändert, kann ich innerhalb kurzer Zeit in 
vertikaler Richtung im Diagramm hin und her springen. Der Durchfluss 
ändert sich dann sofort und ich brauche eine grosse korrektur des Stroms 
um wieder bei der ursprünglichen Durchflussgeschwindigkeit zu landen.

Meine Frage erstmal:
Klingt das plausibel für euch?
Wie kann ich das Dilemma lösen, dass ich für den einen Fall mit einem 
defensiven regler gute resultate erziele, für den anderen fall aber viel 
zu langsam bin? Muss ich mit einem kompromiss leben wenn ich die 
Druckverhältnisse nicht kenne?

besten dank für eure Hilfe und liebe Grüsse
Serge

von Lothar M. (Firma: Titel) (lkmiller) (Moderator) Benutzerseite


Lesenswert?

Serge W. schrieb:
> einen Wasserfluss auf eine gewünschte Ziel-Durchflussrate zu regeln.
> Wie kann ich das Dilemma lösen
Nimm eine Pumpe, die pro Umdrehung ein bestimmte Menge Wasser fördert.

Irgendwie ist grade Magnetventilsaison.
Da im Beitrag "PID Regler  Regelung Unterdruck  Verständnisfrage" probiert einer 
Ähnliches mit Luft und hat ebesolche Probleme mit dem Differenzdruck.

von Serge W. (serge_w)


Lesenswert?

Hallo
Danke für die Antwort.
Ja, ich habe dieses Thema auch verfolgt, von mir aus gesehen sind es 
andere Probleme. Dort wird auf einen Eingangsdruck geregelt und daraus 
versucht auf konstaten Fluss zu schliessen, was wegen beschriebenen 
Gründen nicht möglich ist.

Ich versuche einen gemessenen Fluss auf einen Sollfluss zu regeln.
Auf die Pumpenart habe ich leider keinen Einfluss.

lg

von Lothar M. (Firma: Titel) (lkmiller) (Moderator) Benutzerseite


Lesenswert?

Serge W. schrieb:
> Ich versuche einen gemessenen Fluss auf einen Sollfluss zu regeln.
Ja, du hast das Problem dabei schon erfasst:

Serge W. schrieb:
> ich brauche eine grosse korrektur des Stroms um wieder bei der
> ursprünglichen Durchflussgeschwindigkeit zu landen.
Da kommst du also mit einem zahmen PI Regler nicht mehr hinterher, du 
musst einen D-Anteil einführen, um schnell regieren zu können. Schnell 
reagieren können muss natürlich auch deine Leistungsstufe und das 
Propventil.

von Serge W. (serge_w)


Lesenswert?

Hallo
Okay ja das klingt mal nach einem guten Ansatz, werde es damit mal 
versuchen. :)

Das prop ventil spricht übrigens sehr schnell an, denke nicht das dies 
limitierend sein wird.

Besten Dank und einen schönen Tag

: Bearbeitet durch User
von Klaus F. (klaus27f)


Lesenswert?


von Lothar M. (Firma: Titel) (lkmiller) (Moderator) Benutzerseite


Lesenswert?

Klaus F. schrieb:
> Durchflußmesser sind bereits erfunden und bezahlbar
Ist ja offenbar einer drin, denn

Serge W. schrieb:
> Der Durchfluss wird gemessen

: Bearbeitet durch Moderator
von Purzel H. (hacky)


Lesenswert?

Naja, die Druckaenderung muss einfliessen.

von Hermann W. (hermannw)


Lesenswert?

Purzel H. schrieb:
> Naja, die Druckaenderung muss einfliessen.

Genau! Das macht man mit einer Störgrößenaufschaltung. Also den Druck 
messen und auf die Stellgröße einen druckabhängigen Wert aufschalten. 
Wie hoch die Aufschaltung sein muss, muss man experimentell oder aus 
einem geeigneten Diagramm ermitteln.

von Gunther M. (gunther_m)


Lesenswert?

Serge W. schrieb:
[...]
> Ich habe aber festgestellt, dass sich das System bei ändernden
> Druckverhältnissen zT sehr instabil verhält, es kommt zu Sprüngen im
> Durchfluss welche dann sehr träge korrigiert werden.
[...]
>
> Meine Frage erstmal:
> Klingt das plausibel für euch?
> Wie kann ich das Dilemma lösen, dass ich für den einen Fall mit einem
> defensiven regler gute resultate erziele, für den anderen fall aber viel
> zu langsam bin? Muss ich mit einem kompromiss leben wenn ich die
> Druckverhältnisse nicht kenne?

Das klingt sehr plausibel. Ich habe da auch eine Frage dazu:
Bei der Feuerwehr haben die wohl dasselbe Problem. Die haben da
so eine Art Luftsack bzw. Druckausgleich, der dann die Druckspitzen
glättet. Wäre das bei Dir möglich?

Gruß
Gunther

von Lothar M. (Firma: Titel) (lkmiller) (Moderator) Benutzerseite


Lesenswert?

Hermann W. schrieb:
> Also den Druck messen und auf die Stellgröße einen druckabhängigen Wert
> aufschalten.
Bei der Hydraulik braucht man den Druck nicht messen, weil der sich 
quasi sofort auf den Durchfluss auswirkt. Je nach System und Sensor und 
"Steifigkeit" der Verrohrung kann man da allenfalls ein paar ms 
gewinnen.

Gunther M. schrieb:
> Die haben da so eine Art Luftsack bzw. Druckausgleich
Ja, damit baut man eine "Feder" in das System ein und gibt dem System 
Zeit, nachzuregeln. Federn haben allerdings die unangenehme Eigenschaft, 
zu Schwingungen angeregt werden zu können.


Ich bin mir nicht sicher, ob das hier tatsächlich ein 
digitalelektronisches Problem ist. Eigentlich müsste es nach DSP, wo die 
Regelungstechnik in der Forenliste steht:
https://www.mikrocontroller.net/forum/dsp

: Bearbeitet durch Moderator
von Thomas (kosmos)


Lesenswert?

Eigentlich müsste es reichen wenn du bei kleinen Abweichungen kleinere 
Regelschritte und bei einer größeren Abweichung eben größere 
Regelschritte für dein Ventil verwendest. So werden mit Annäherung an 
den Sollwert diese Schrittweiten immer geringer.

Wichtig ist das du aber ausreichend schnell misst, damit die Regelung 
nicht verspätet reagiert.

Außerdem helfen größere Leitungsdurchmesser die Druckveränderungen 
gering zu halten.

Beispiel: 1 Leitung 20mm Durchmesser 10 Meter länge und dann gibts dort 
2 16mm Zapfstellen, die erste öffnet, der Druck bricht etwas zusammen 
und wenn dann die 2te noch öffnet ist der Druck fast komplett weg. Wenn 
man da eine 32mm Leitung nimmt dann bleibt der Druck viel höher und 
stabiler, da genug Wasser nach fließt.

von Hermann W. (hermannw)


Lesenswert?

Lothar M. schrieb:
> Bei der Hydraulik braucht man den Druck nicht messen, weil der sich
> quasi sofort auf den Durchfluss auswirkt.

Ja, die Druckänderung wirkt sich sofort auf den Durchfluß aus, aber der 
Durchfluss wird erst langsam über den den PI-Regler korrigiert. Das 
verhindert die Störgrößenaufschaltung, da sie sofort auf die 
Druckänderung reagiert. Im Idealfall ändert sich der Durchfluss nicht 
und der Regler muss nicht reagieren.

von Ralf X. (ralf0815)


Lesenswert?

Thomas schrieb:
> Eigentlich müsste es reichen wenn du bei kleinen Abweichungen kleinere
> Regelschritte und bei einer größeren Abweichung eben größere
> Regelschritte für dein Ventil verwendest. So werden mit Annäherung an
> den Sollwert diese Schrittweiten immer geringer.
>
> Wichtig ist das du aber ausreichend schnell misst, damit die Regelung
> nicht verspätet reagiert.
>
> Außerdem helfen größere Leitungsdurchmesser die Druckveränderungen
> gering zu halten.
>
> Beispiel: 1 Leitung 20mm Durchmesser 10 Meter länge und dann gibts dort
> 2 16mm Zapfstellen, die erste öffnet, der Druck bricht etwas zusammen
> und wenn dann die 2te noch öffnet ist der Druck fast komplett weg. Wenn
> man da eine 32mm Leitung nimmt dann bleibt der Druck viel höher und
> stabiler, da genug Wasser nach fließt.

Es geht nicht um die Aufrechterhaltung eines konstanden Drucks, sondern 
um eine konstante Durchflussmenge bei unterschiedlichsten Situationen.
Und da spielen die unterschiedlichsten Grössen/Faktoren rein, gerade bei 
einem Fluid wie Wasser.

Nur als Beispiele:
Trägheit der Masse, Staudruck
Laminarer/turbulenter Widerstand
Steilheit und Dauer der Widerstandsänderung.
usw..

von Serge W. (serge_w)


Lesenswert?

Liebe Leute
Danke erstmal für eure Feedbacks und anregungen.

Vorweg, in einem ersten Schritt geht es darum, das Optimum aus dem 
bestehenden System herauszuholen. Sprich ich habe keine andere Sensorik 
als das Flowmeter zur verfügung. Dazu konkret noch folgende Fragen:

1. Zur Zeit verwende ich wie gesagt einen PI regler, wobei der I anteil 
so pi mal Daumen 1/10 vom P anteil ausmacht. Sollte der D Anteil in 
einer ähnlichen Grössenordnung sein oder geht das einfach nur über 
ausprobieren?

2. Angenommen ich kann den Durchfluss ausreichend präziese und schnell 
messen, und zusätzlich kenne ich den Strom der durch das Ventil fliesst 
(da ich ja das PWM kenne). Dann kann ich ja im Prinzip daraus ableiten, 
auf welcher QI Kurve aus dieser gezeigten Kurvenschar ich mich befinde 
(auch hier angenommen dass mein System genügend steif ist und Druck und 
Flow direkt zusammenhängen). Wenn sich nun der durchfluss bei gleichem 
PWM ändert, heisst das dass ich mich nun auf einer andern QI Kurve 
befinde und den strom entsprechend korrigieren muss. Soweit sinnvoll?

Was mir nicht klar ist, wie ich diese information in einen PI(D) Regler 
reinpacke. Ist das ein weiterer Term der hinzukommt? Muss ich dazu alle 
Kennlinien welche ich dazu benötige irgendwo ablegen oder wie geht man 
sowas normalerweise an?

Danke fürs feedback

: Bearbeitet durch User
von Hermann W. (hermannw)


Lesenswert?

zu 1: Wenn man die Regelstrecke genau kennt, kann man die P- und 
I-Anteile berechnen. In deinem Fall ist die Strecke nicht bekannt, dh. 
man muss probieren (besonders wegen der Nichtlinearitäten).
zu 2: Ja, du kannst ableiten, auf welcher Kurve du dich befindest, am 
besten indem du den Druck misst. Wie du den Strom korrigierst, habe ich 
mit der Störgrößenaufschaltung beschrieben. Man verändert also nicht die 
Regelparameter, sondern schaltet einen zusätzlichen Strom auf (Strom ist 
die Stellgröße). Wie viel Strom, kann man wieder berechnen, aber in 
deinem Fall besser probieren.

von Serge W. (serge_w)


Lesenswert?

Danke
Zu 1: Ich meine mal gelesen zu haben, dass I und D anteil in der 
grössenordnung 1/10 vom P anteil sein sollten. Ist das mehr ein 
richtwert um mal anzufangen oder sollte man sich mehr oder weniger daran 
halten aus welchen gründen auch immer.

Oder anders gefragt: Angenommen ich erziele mit P=500, I=50 und D=400 
gute ergebnisse. Kann ich das dann ohne weiteres so umsetzen oder sollte 
ich vorsichtig sein da es bei fällen welche ich nicht untersucht habe 
grob daneben gehen kann da D nun relativ gross ist.

Zu 2. Also ich habe das noch nie gemacht und frage mich halt konkret wie 
man es umsetzt
Angenommen ich steuere mein ventil momentan mit 70% PWM an und messe 
dabei einen fluss von 10ml/sec

Im nächsten loop stelle ich fest dass ich bei 70% PWM noch 8ml/sec 
messe.

Ich würde dann also aufgrund der Information 8ml/sec und 70% abschätzen 
auf welcher QI Kurve ich mich befinde. Da die kurve hinterlegt ist weiss 
ich dann wie viel %PWM ich hinzufügen muss um wieder bei den 10ml/sec zu 
landen.

Ist es in etwa so wie der mechanismus zu funktionieren hat?

: Bearbeitet durch User
von Hermann W. (hermannw)


Angehängte Dateien:

Lesenswert?

Zur Erklärung der Störgrößenaufschaltung ist in der Anlage der 
theoretische Regelkreis dargestellt. Die Regelstrecke ist symbolisch in 
F1 und F2 aufgeteilt, damit man den Eingriffspunkt der Störgröße 
einfügen kann. Wenn man jetzt diese Störgröße über Fk=1/F1 von dem 
Stellwert Ir des Reglers abzieht, wird die Störung vollständig 
kompensiert. Leider kennt man F1 und F2 nicht genau, so dass man Fk 
probieren muss.

von Hermann W. (hermannw)


Lesenswert?

zu 1: Bei genauer Kenntnis der Strecke kann man leicht den richtigen 
Regler berechnen. Aber bei irgendeiner Strecke können Faustformeln kein 
vernünftiges Ergebnis liefern.
Meistens hat jede Strecke eine dominierende Zeitverzögerung T1. Diese 
Verzögerung kann man mit dem I-Anteil vollständig komensieren über 
Tr=T1. Jetzt gibt es nur einen freien Parameter, den P-Anteil. Der 
bestimmt die Dämpfung des Regelkeises. Den probiert man einfach aus, bis 
die Regeleigenschaft gefällt. D sollte man erstmal weglassen und später 
testen, ob man die Regelung damit beschleunigen kann ohne sich ein 
Schwingen einzuhandeln.
zu 2: Ja, man kann das sicherlich über einen Table-Lookup machen. Das 
ist dann auch eine Störgrößenaufschaltung wie im Anhang. Der Block Fk 
schaut dann eben in die Tabelle, um den richtigen Korrekturstrom Ikorr 
zu bestimmen.

von Rainer W. (rawi)


Lesenswert?

Serge W. schrieb:
> Ich habe aber festgestellt, dass sich das System bei ändernden
> Druckverhältnissen zT sehr instabil verhält, es kommt zu Sprüngen im
> Durchfluss

Das mag wohl an der Hysterese des Ventilmagneten liegen. Außerdem ist 
die Kennlinie alles andere als Linear, so dass sich die Eigenschaften 
der Strecke mit dem Durchfluss ändern. So ein simpler PID-Regler ist 
davon nicht begeistert, weil der auf feste Streckeneigenschaften 
parametriert ist.

von Hermann W. (hermannw)


Lesenswert?

Rainer W. schrieb:
> Außerdem ist die Kennlinie alles andere als Linear...
> So ein simpler PID-Regler ist davon nicht begeistert,

Stimmt! Eine lineare Strecke kann man dadurch erreichen, dass man einen 
Linearisierer vorschaltet - quasi eine inverse Abhängigkeit. Der Regler 
sieht dann eine lineare Strecke.

von Rainer W. (rawi)


Lesenswert?

Hermann W. schrieb:
> ... dass man einen Linearisierer vorschaltet - quasi eine inverse
> Abhängigkeit.

Viel Spaß mit der Hysterese.

von Hermann W. (hermannw)


Lesenswert?

Ja, das ist eklig. Da bekommt der Regler doch was zu tun.

von Wolle G. (wolleg)


Lesenswert?

Serge W. schrieb:
> 1. Zur Zeit verwende ich wie gesagt einen PI regler, wobei der I anteil
> so pi mal Daumen 1/10 vom P anteil ausmacht. Sollte der D Anteil in
> einer ähnlichen Grössenordnung sein oder geht das einfach nur über
> ausprobieren?
Nicht nur ausprobieren.
Man kann mit sogn. Faustformeln die PID-Faktoren in erster Näherung 
bestimmen. Ein Beispiel wäre z.B. das Verfahren nach Ziegler Nicols
Nähere Beschreibung siehe: 
https://de.wikipedia.org/wiki/Faustformelverfahren_(Automatisierungstechnik)

von Walter B. (walter1950)


Lesenswert?

Hallo,

Du suchst einen elektronischen Durchflussmesser:
<https://www.amazon.de/durchflussmesser/s?k=durchflussmesser>;

Ciao
Walter

von Ralf X. (ralf0815)


Lesenswert?

Walter B. schrieb:
> Du suchst einen elektronischen Durchflussmesser:
> <https://www.amazon.de/durchflussmesser/s?k=durchflussmesser>;;

Wohl kaum, denn:

Serge W. schrieb:
> Der Durchfluss wird gemessen und das Ventil dann via PI Regler
> angesteuert.

von Walter B. (walter1950)


Lesenswert?

Ralf X. schrieb:
> Walter B. schrieb:
>> Du suchst einen elektronischen Durchflussmesser:
>> <https://www.amazon.de/durchflussmesser/s?k=durchflussmesser>;;
>
> Wohl kaum, denn:
>
> Serge W. schrieb:
>> Der Durchfluss wird gemessen und das Ventil dann via PI Regler
>> angesteuert.

OP möchte:
"..einen Wasserfluss auf eine *gewünschte
Ziel-Durchflussrate* zu regeln..."

Es gibt auch kein "stufenlos einstellbares Magnetventil". Ein Magnet ist 
ein- oder ausgeschaltet. Bei einem Kugelhahn ist die 
Öffnungscharakeristik zu beachten (Von null über elipsenförmig nach 
kreisrund).

Wenn möglich sollte er über den Durchflussmesser die Pumpe regeln. Kann 
auch über ein Rückströmventil zum Vorlauf/Vorlaufbehälter der Pumpe 
gehen.

Ciao
Walter

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.