# Regelung von 3 und mehr Durchflüsse (Durchflussteiler)



## xEs1710 (29 November 2022)

Hallo zusammen!
Ich stehe vor einem mittelschwerem Problem. Und zwar soll ich eine Ventilsteuerung programmieren, der die Durchflüsse über 3 und mehr (variabel) Wege korrekt verteilt.

Also: 1 großer Zulauf, der 3 und mehr Abzweigungen hat. In diesen Abzweigungen sind Ventile (0-100%) und Durchflussmesser (neuer Wert alle 3-5 Sekunden!). Der Zulauf ist erstmal konstant. Die Sollwerte in den Abzweigung sind variabel, in Summe aber immer gleich. Alle Abzweigungen haben einen unterschiedlichen Widerstand (=alle Ventile 100% offen ergeben unterschiedliche Durchflüsse) und 1 Ventil von allen Abzweigungen muss immer zu 100% geöffnet sein.

Mehr ist das nicht.. 🙃

Man kann sich jetzt vorstellen, dass wenn man 1 Ventil fährt, sich der Durchfluss in den anderen Abzweigungen unterschiedlich ändert. Regel ich alle Ventile gleichzeitig, so findet das nie ein Ende.

Wie würdet Ihr hier vorgehen? Habt Ihr einen Ansatz?

Software TIA Portal V17, WinCC V17.

Vielen Dank vorab!

Beste Grüße Basti


----------



## Timbo (29 November 2022)

Hallo Basti, 

wie genau muss der Durchfluss hinter den Ventilen geregelt werden?
Warum muss ein Ventil 100% offen sein?

Was für eine Anlage ist das überhaupt? Kühlwasser? Heizung?

Gruß tim


----------



## xEs1710 (29 November 2022)

Hallo Tim,

Ein Ventil soll zu 100% offen sein, sodass möglich geringe Gesamtwiderstände erreicht werden.

Schlecht wäre:
Ventil 1: 84%
Ventil 2: 65%
Ventil 3: 68%
...

Wenn z.B. auch funktionieren würde:
Ventil 1: 100%
Ventil 2: 81%
Ventil 3: 84%
...

Eine Totzone von 3%-5% wäre denkbar.

Danke ;-)


----------



## Timbo (29 November 2022)

Hallo Basti,

was für eine Anlge ist das?


----------



## xEs1710 (29 November 2022)

Unterschiedlich. Mal Heizkreise, mal eine einfache Wasserverteilung, mal dies, mal das.

Die Verbraucher/Kunden/wer auch immer in den Abzweigung fordern unterschiedlich viel Wasser an.


----------



## Timbo (29 November 2022)

xEs1710 schrieb:


> Unterschiedlich. Mal Heizkreise, mal eine einfache Wasserverteilung, mal dies, mal das.
> 
> Die Verbraucher/Kunden/wer auch immer in den Abzweigung fordern unterschiedlich viel Wasser an.


Du musst eine Regelung der Heizkreise anders an gehen wie eine Wasserverteilung.
Bei Heizkreisen wird z.B. Ein Kreislauf oft nicht geregelt um sicher zu stellen das immer Durchfluss möglich ist. somit geht die Heizung nicht wegen überdruck in Störung. Hierfür wird oft der Flur oder Gäste WC genommen.

Bei der Wasservertielung verhält es sich anders. Hier darf in der Regel der durchfluss bei den einzelnen Strängen nicht unterschritten werden. Bei Kühlwasseranlagen wird das ganze oft Druck geregelt realisiert.

Wie du siehst alles unterschiedliche Ansätze.


Wenn du ohne diese Überlegungen daran gehen möchtest würde ich folgenden Weg gehen:

Ventil 1 --> 100% auf solange Ventil 2 oder Ventil 3 nicht größer 85% geöffnet sind. Sollte eines der Ventile über die 85% kommen muss Ventil 1 langsam schließen bis das max von 85% auf den anderen Ventilen wieder erreicht ist.
Ventil 2 und Ventil 3 --> Durchfluss Regelung mit z.B. 3% Totband und träge eingestellt.


Die Werte sind dann auf die jeweilige Anlage an zu passen.


Wie oben schon geschrieben kann ich das aber nicht für alle Anlagen empfehlen.

Gruß Tim


----------



## xEs1710 (29 November 2022)

Moin Tim und danke für die Idee,

es ist tatsächlich so, dass in der Regel nur stumpf auf Soll- und Istwerte in den Strängen geschaut wird. Total egal was dahinter kommt. 

Die Anzahl der Stränge variiert. Mal sind es 3, mal 7. Und diese können während des Betriebes auch einzeln deaktiviert werden. (Ventil ZU)

Die Idee, dass Ventil 1 den anderen entgegen kommt ist nicht gewünscht. Dieses Ventil soll so lange offen bleiben, wie die Durchfluss OK oder zu gering ist. Würde der Durchfluss Ventil 1 überschritten, so macht dieses zu -> bedeutet ein anderes Ventil wird zeitgleich zu wenig Durchfluss haben und öffnen. 

Wenn die Ventilstellungen z.B. so aussehen:
Ventil 1: 97%
Ventil 2: 100%
Ventil 3: 17%
..
kann auch alles OK sein. 

Sehen die Stellungen so aus:
Ventil 1: 67%
Ventil 2: 21%
Ventil 3: 73%
..
müsse man alle Ventile öffnen, sodass der Druck in den Leitungen möglichst niedrig ist (1 Ventil zu 100% offen; alle Durchflüsse OK)

Also ich mache keine Ventilstellung abhängig von anderen Stellungen. Am Ende muss immer mindestens 1 Ventil zu 100% geöffnet sein. Das ist natürlich nicht immer Ventil 1.


----------



## blackpeat (29 November 2022)

Hast du denn in jedem Strang eine Durchflussmessung oder nur im Zulauf?


----------



## xEs1710 (29 November 2022)

blackpeat schrieb:


> Hast du denn in jedem Strang eine Durchflussmessung oder nur im Zulauf?


In jedem Strang.


----------



## Blockmove (29 November 2022)

Mal ganz blöd gefragt:
Wenn die Forderung besteht, dass ein Ventil 100% offen sein muss, brauchst du dann überhaupt eine Regelung oder reicht da eine Steuerung (simple Sollwertvorgabe)?


----------



## xEs1710 (29 November 2022)

Die Sollwerte in den Strängen ändern sich ständig. Also grob alle 5 Minuten, sodass nachkorrigiert werden muss.

Wie sehe so eine Steuerung aus? Einfach grob über Schleifen: Wenn zu gering, mach auf. Wenn zu viel, mach zu?


----------



## Timbo (29 November 2022)

ich verstehe die Anforderung nicht.
Ist zu kleiner Durchfluss zum Nachteil?
Ist zu großer Durchfluss zum Nachteil?
Was ist in dem Strang in dem das Ventil zu 100% geöffnet ist? dort ist der Durchfluss egal

Alle 5 Min die Ventile auf eine neue Größe zu setzen ist ja kein Problem aber worauf ist hier zu achten?

Am besten ist mal eine Skizze und Erklärung welche Parameter zwingend einzuhalten sind.


----------



## xEs1710 (29 November 2022)

Hallo Timbo,

es soll eine Soll- zu Istwert Regelung stattfinden. Zu niedriger oder zu hoher Durchfluss soll ausgeregelt werden. Totzone 3%-5%.

Der Durchfluss wird doch nur über die verschiedenen Leitungswiderstände beeinflusst. Nochmal das Beispiel von eben:

Möglichkeit 1:
Ventil 1: 84%
Ventil 2: 65%
Ventil 3: 68%

Möglichkeit 2:
Ventil 1: 100%
Ventil 2: 81%
Ventil 3: 84%

Bei beiden Möglichkeiten können die Durchflüsse genau richtig sein, nur dass bei 'Möglichkeit 2' der Leitungsdruck niedriger ausfallen würde als bei 'Möglichkeit 1'.


----------



## Plan_B (29 November 2022)

Die Anforderungen beissen sich irgendwie. Da die Strecken über einen gemeinsamen Zulauf verbunden sind, kommt es zwangsläufig zu gegenseitiger Beeinflussung. Es sei denn, der Vordruck wird auch geregelt, dann ergibt die Forderung nach min 1x 100% Sinn.


----------



## xEs1710 (29 November 2022)

Jap. Nehmen wir an der Zulauf wird konstant auf 1000l/h gehalten.

Diese 1000l/h sollen jetzt aufgeteilt werden. Möglichst schnell - mit dem Ziel irgendwann alle ausgeregelt zu haben und ein Ventil 100% offen.


----------



## blackpeat (29 November 2022)

Wenn aber gesamt nur 800 l/h benötigt werden kann man ja nicht irgendwas auf 100% drehen. Dann ist irgendwo zuviel Durchfluss.


----------



## Heinileini (29 November 2022)

xEs1710 schrieb:


> Wie sehe so eine Steuerung aus? Einfach grob über Schleifen: Wenn zu gering, mach auf. Wenn zu viel, mach zu?


Wo wird denn gemessen, ob "zu gering" oder "zu viel"? Wenn hinter den StellGliedern, dann ist auch dies eine Regelung.


----------



## xEs1710 (29 November 2022)

blackpeat schrieb:


> Wenn aber gesamt nur 800 l/h benötigt werden kann man ja nicht irgendwas auf 100% drehen. Dann ist irgendwo zuviel Durchfluss


Okay. Nochmal anders: Der Zulauf gibt eine beliebige Menge Wasser durch. Alle Stränge messen nun einen Durchfluss - die Summe aller Stränge ist der Durchfluss im Zulauf. 

Dieser wird konstant gehalten und soll in den unterschiedlichen Strängen verteilt werden. SW_Durchfluss_Strang_1 = Durchfluss_Zulauf * Faktor_Strang_1 / Summe(Faktor_Strang_1 .. n);



Heinileini schrieb:


> Wo wird denn gemessen, ob "zu gering" oder "zu viel"? Wenn hinter den StellGliedern, dann ist auch dies eine Regelung.


Jap, es wird im Strang gemessen, direkt am Stellglied.

Die Frage: Wie regle ich das am besten wenn ich auch mal 10 Stränge habe?


----------



## Mecha2312 (29 November 2022)

Ist das eine praktische Fragestellung? Oder eher Schul/Uniaufgabe?


----------



## xEs1710 (29 November 2022)

Mecha2312 schrieb:


> Ist das eine praktische Fragestellung? Oder eher Schul/Uniaufgabe?


Das ist tatsächlich eine praktische Fragestellung. Wieso kommst du auf Schulaufgabe? Wenn es dir zu einfach vorkommt, so wäre ich für einen Gedankenanstoss sehr dankbar...


----------



## Timbo (29 November 2022)

Ich habe dein System noch immer nicht ganz verstanden. 
Was mir auch fehlt ist die Angabe welche Situation ist zu vermeiden. zu geringer Durchfluss? zu hoher Durchfluss?

Du wirst auch sehen wenn du die Durchflüsse änderst wird im Zulauf auch etwas passieren. 
Eventuell hilft es dir wenn du prozentual rechnest.

Allerdings wird eine Änderung alle 5 min das Ganze nicht stabiler machen.

Eine Skizze und eine Beschreibung der Anlage hilft. Die Anzahl der Abgänge ist nachrangig wenn man schon mal die Funktion geklärt hat.


----------



## Timbo (29 November 2022)

xEs1710 schrieb:


> Das ist tatsächlich eine praktische Fragestellung. Wieso kommst du auf Schulaufgabe? Wenn es dir zu einfach vorkommt, so wäre ich für einen Gedankenanstoss sehr dankbar...


Nichts gegen dich, aber wir verstehen das System nicht was du realisieren möchtest. daher die berechtigte Frage.


----------



## xEs1710 (29 November 2022)

Nach oben hin bis zu 10 Stränge. Alle Stränge haben unterschiedliche "Verbraucher" - benötigen unterschiedlich viel Leistung. Diese Leistung kann variieren - so auch der Durchfluss.


----------



## Mecha2312 (29 November 2022)

Wie blackpeat in #16 schon schrieb, wie soll das gehen?
Zu jedem Zeitpunkt muss doch gelten
Qkonst -( Qsoll1+Qsoll2+Qsoll3+....+Qsoll n)=0


----------



## Blockmove (29 November 2022)

xEs1710 schrieb:


> Hallo Timbo,
> 
> es soll eine Soll- zu Istwert Regelung stattfinden. Zu niedriger oder zu hoher Durchfluss soll ausgeregelt werden. Totzone 3%-5%.
> 
> ...


Welche Sollgröße kommt von außen? Solldurchfluss gesamt oder Solldurchfluss DF1,DF2 und DF3 oder Leitungsdruck?
Oder anders gefragt: Was bestimmt das Verhältnis DF1 - DF2 - DF3?


----------



## xEs1710 (29 November 2022)

Blockmove schrieb:


> Welche Sollgröße kommt von außen? Solldurchfluss gesamt oder Solldurchfluss DF1,DF2 und DF3 oder Leitungsdruck?
> Oder anders gefragt: Was bestimmt das Verhältnis DF1 - DF2 - DF3?


Die benötigte Leistung. Die vorhandene Leistung (Zulauf) wird auf die verschiedenen Stränge verteilt.


Mecha2312 schrieb:


> Wie blackpeat in #16 schon schrieb, wie soll das gehen?
> Zu jedem Zeitpunkt muss doch gelten
> Qkonst -( Qsoll1+Qsoll2+Qsoll3+....+Qsoll n)=0


Das ist ja korrekt und passt ja auch.

Jetzt sollen die Durchflüsse z.B. so sein:
Qsoll1= 354l/h
Qsoll2=450l/h
Qsoll3=196l/h

30 Minuten später evtl. so:
Qsoll1= 270l/h
Qsoll2=500l/h
Qsoll3=230l/h

Nur alle Ventile einfach frei regeln lassen führt zu einem schlechten Ergebnis. Alle würden sich gegenseitig behindern. Weiter noch das Problem mit -> 1 Ventil soll dabei immer komplett offen sein. Welches Ventil soll offen sein? -> Dieses, womit alle Durchflüsse erreicht werden.


----------



## blackpeat (29 November 2022)

Dein Zulauf ist also Konstant und die Summe der Sollwerte ergibt auch immer die Zulauf Menge?


----------



## xEs1710 (29 November 2022)

blackpeat schrieb:


> Dein Zulauf ist also Konstant und die Summe der Sollwerte ergibt auch immer die Zulauf Menge?


Jap.


----------



## Watchcat (29 November 2022)

Hmmm....


xEs1710 schrieb:


> Dieser wird konstant gehalten und soll in den unterschiedlichen Strängen verteilt werden. SW_Durchfluss_Strang_1 = Durchfluss_Zulauf * Faktor_Strang_1 / Summe(Faktor_Strang_1 .. n);


Wenn man den Zulauf konstant lässt, kann nicht einfach irgendein Ventil auf 100% fahren. Das würde doch voraussetzen, dass andere Stränge mehr abnehmen, damit der Sollwert in dem Strang mit den 100% Ventil gehalten wird. Oder sehe ich das falsch?


----------



## xEs1710 (29 November 2022)

Watchcat schrieb:


> Hmmm....
> 
> Wenn man den Zulauf konstant lässt, kann nicht einfach irgendein Ventil auf 100% fahren. Das würde doch voraussetzen, dass andere Stränge mehr abnehmen, damit der Sollwert in dem Strang mit den 100% Ventil gehalten wird. Oder sehe ich das falsch?


Es gibt ja in jedem Strang einen Sollwert der erreicht werden soll. 

Mind. 1 Ventil soll dabei auf 100% stehen, da man davon ausgeht, dass so der maximal niedrigste Anlagendruck bei gleichzeitig richtigem Durchfluss erreicht wird.


----------



## Watchcat (29 November 2022)

Könntest du den Durchfluss am Zulauf auch regeln?
Wenn die Durchflussregelung für Stang 1 einen Stellwert von 87% ausgibt, könntest du dann den Stellwert auf 100% setzten und die Differenz an Durchfluss in l/h zwischen den 100% und 87% berechnen und am Zulauf abziehen.


----------



## xEs1710 (29 November 2022)

Watchcat schrieb:


> Könntest du den Durchfluss am Zulauf auch regeln?
> Wenn die Durchflussregelung für Stang 1 einen Stellwert von 87% ausgibt, könntest du dann den Stellwert auf 100% setzten und die Differenz an Durchfluss in l/h zwischen den 100% und 87% berechnen und am Zulauf abziehen.


Zulauf ist und bleibt konstant. 


xEs1710 schrieb:


> Die benötigte Leistung. Die vorhandene Leistung (Zulauf) wird auf die verschiedenen Stränge verteilt.
> 
> Das ist ja korrekt und passt ja auch.
> 
> ...


Hier siehst du was erreicht werden soll mit Qsoll1..3


----------



## Blockmove (29 November 2022)

xEs1710 schrieb:


> Es gibt ja in jedem Strang einen Sollwert der erreicht werden soll.


Also ist der Sollwert pro Abgang nur ein *Minimalwert*.


----------



## xEs1710 (29 November 2022)

Blockmove schrieb:


> Also ist der Sollwert pro Abgang nur ein *Minimalwert*.


Nein, der Zielwert. Dieser Wert soll +-3% erreicht werden.


----------



## Watchcat (29 November 2022)

Mal angenommen du nimmst den Strang der am nächtsen an seinem QstrangMax (maximaler Druchfluss Strang) ist und fährst ihn auf 100%, dann würden die anderen Regler wieder versuchen auf ihren QStrangSoll zu regeln und wegen der höheren Abnahme des anderen Stranges auch selbst ihren Stellwert erhöhen. Wenn die anderen Stänge es im realen System wieder auf ihren QstrangSoll schaffen, dann ist auch der Durchfluss für den 100%-Strang wieder ok (wenn "Qzulauf = Qstrang1 + Qstrang2 +n " und "Qzulauf = konstant").

Soweit einverstanden?

Wie sind sich das aber im realen System verhällt kann ich schwer einschätzen. Am besten langsam auf die 100% fahren.


----------



## Holzmichl (29 November 2022)

Grundsätzliche Fragen zum gewünschten Ablauf:

Was passiert, wenn Du Strang 1 zwangsmäßig auf 100% gesetzt hast und Strang 3 durch die Regelung auf 100% geht und seinen eigentlichen Sollwert nicht erreicht, da der Durchfluss gesamt zu wenig ist.
Wenn Du Strang 1 dann automatisch regeln lässt und dieser auf z.B. 60% einregelt und dann der Durchfluss auf Strang 3 ebenfalls zu hoch wird und wieder zurückregeln würde - wie soll dein Verhalten sein?

Nächster Fall: 
Alle Stränge würden laut Sollwert bei 90% laufen. Ein Strang wird auf 100% manuell gesetzt, was bewirkt, dass auf den restlichen Strängen die Leistung nicht erreicht wird.

Hintergrund: Ich glaube hier schwingt sich relativ schnell alles mögliche auf, wenn die Sollleistung im Zulauf tatsächlich benötigt wird.


----------



## xEs1710 (29 November 2022)

Watchcat schrieb:


> Mal angenommen du nimmst den Strang der am nächtsen an seinem QstrangMax (maximaler Druchfluss Strang) ist und fährst ihn auf 100%, dann würden die anderen Regler wieder versuchen auf ihren QStrangSoll zu regeln und wegen der höheren Abnahme des anderen Stranges auch selbst ihren Stellwert erhöhen. Wenn die anderen Stänge es im realen System wieder auf ihren QstrangSoll schaffen, dann ist auch der Durchfluss für den 100%-Strang wieder ok (wenn "Qzulauf = Qstrang1 + Qstrang2 +n " und "Qzulauf = konstant").
> 
> Soweit einverstanden?
> 
> Wie sind sich das aber im realen System verhällt kann ich schwer einschätzen. Am besten langsam auf die 100% fahren.





Holzmichl schrieb:


> Grundsätzliche Fragen zum gewünschten Ablauf:
> 
> Was passiert, wenn Du Strang 1 zwangsmäßig auf 100% gesetzt hast und Strang 3 durch die Regelung auf 100% geht und seinen eigentlichen Sollwert nicht erreicht, da der Durchfluss gesamt zu wenig ist.
> Wenn Du Strang 1 dann automatisch regeln lässt und dieser auf z.B. 60% einregelt und dann der Durchfluss auf Strang 3 ebenfalls zu hoch wird und wieder zurückregeln würde - wie soll dein Verhalten sein?
> ...


Ich zitiere mal direkt beide. Ich kann nicht einfach "irgendein" Ventil auf 100% setzen und die anderen nachregeln lassen. Im schlimmsten Fall sollen 10 Ventile gleichzeitig regeln. Das schaukelt sich nur auf.

Ich baue mir gerade eine Simulation auf. Ich schätze es wird in folgende Richtung gehen:
Welcher Istwert ist am weitesten vom Sollwert entfernt? (Positiv wie negativ) Dieses Ventil wird dann gefahren bis ein anderes Ventil eine größere Differenz zwischen Soll- und Istwert aufweist. Dieses wird dann geregelt. Es hat also immer nur 1 Ventil die Freigabe zu regeln.

Irgendwann sind alle Ventile im Sollbereich (inkl. Totzone), aber noch nicht unbedingt 1 Ventil auf 100%. Wenn dieser Fall eintritt, werden alle aktiven Ventile um 1% angehoben. Dadurch entstehen neue Differenzen und das System "schaukelt" sich weiter hoch, bis 1 Ventil die 100% hat und alle im Sollbereich sind.


----------



## Holzmichl (29 November 2022)

xEs1710 schrieb:


> Irgendwann sind alle Ventile im Sollbereich (inkl. Totzone), aber noch nicht unbedingt 1 Ventil auf 100%. Wenn dieser Fall eintritt, werden alle aktiven Ventile um 1% angehoben. Dadurch entstehen neue Differenzen und das System "schaukelt" sich weiter hoch, bis 1 Ventil die 100% hat und alle im Sollbereich sind.



Und wann entsteht der Fall, dass wieder nach unten geregelt wird?
Bzw was passiert, wenn die Anforderung der Stränge größer als die Zuleitung ist?



Holzmichl schrieb:


> Alle Stränge würden laut Sollwert bei 90% laufen. Ein Strang wird auf 100% manuell gesetzt, was bewirkt, dass auf den restlichen Strängen die Leistung nicht erreicht wird.


----------



## Blockmove (29 November 2022)

Blockmove schrieb:


> Also ist der Sollwert pro Abgang nur ein *Minimalwert*.





xEs1710 schrieb:


> Nein, der Zielwert. Dieser Wert soll +-3% erreicht werden.


Und wie soll das funktionieren, wenn der Zulauf konstant bleiben soll?



> Schlecht wäre:
> Ventil 1: 84%
> Ventil 2: 65%
> Ventil 3: 68%
> ...



Also zumindest ein Abgang muss doch in der Lage sein, die Überschussmenge aufzunehmen.
Anders ergibt doch dein Beispiel keinen rechten Sinn.
Deine Prozentangaben entsprechen dem Öffnungsgrad der Ventil und somit dem offenen Querschnitt.
Beispiel 1 sind also 217 Einheiten und Beispiel 2 sind 265 Einheiten.
Beide würden funktionieren, aber Beispiel 2 wäre besser. Der Zulauf wäre aber bei beiden gleich.

Wir reden hier von normalen Flussigkeiten?


----------



## xEs1710 (29 November 2022)

Holzmichl schrieb:


> Und wann entsteht der Fall, dass wieder nach unten geregelt wird?
> Bzw was passiert, wenn die Anforderung der Stränge größer als die Zuleitung ist?


Das passiert nicht. Der Zulauf gibt die max mögliche Leistung vor und diese wird nur verteilt.


Blockmove schrieb:


> Und wie soll das funktionieren, wenn der Zulauf konstant bleiben soll?
> 
> 
> 
> ...


Der Zulauf wird an anderer Stelle geregelt. Das ist aber ja nicht mein beschriebenes Problem 🙃
Je mehr Einheiten, desto besser.

Ja von 98% Wasser. ;-)


----------



## xEs1710 (29 November 2022)

.


----------



## Blockmove (29 November 2022)

Jetzt bin ich draussen ... Irgendwie müssen da andere Naturgesetze gelten


----------



## xEs1710 (29 November 2022)

Blockmove schrieb:


> Jetzt bin ich draussen ... Irgendwie müssen da andere Naturgesetze gelten


Trotzdem vielen Dank


----------



## Plan_B (29 November 2022)

xEs1710 schrieb:


> Der Zulauf wird an anderer Stelle geregelt.


Also doch nicht konstant, nur nicht in diesem Regelkreis einbezogen.
Halte ich für ineffektiv. Aber egal. Wenn Du nur den nun nicht mehr konstanten Zufluss aufteilen möchtest, kannst Du jeweils das Ventil mit dem grössten Stellwert auf 100% fahren und die anderen müssen nachregeln.


----------



## Thomas_v2.1 (29 November 2022)

Was ich schon einmal gemacht habe, ist die Sollwerte der einzelnen Strecken mit einem Gewichtungsfaktor zu versehen. Also Mittelwert aller Sollwerte durch Mittelwert aller Istwerte ergibt einen Gewichtungsfaktor. Wird dann in Summe mehr benötigt, dann erhöhen sich alle Stellgrößen zuggleich. Hat nur eine Strecke zu wenig und eine andere zu viel, so können diese das unter sich ausmachen (Gewichtungsfaktor ist dann gleich 1). Das funktioniert aber nur, wenn das liefernde Element an der Einspeisung dann auch entsprechend nachregelt, was bei dir ja nicht der Fall zu sein scheint. Außerdem muss man mit dem Einfluss dieser Gewichtung etwas feintunen, was mir eigentlich überhaupt nicht bei einer Regelung gefällt.


----------



## Blockmove (29 November 2022)

Wie schon gesagt, begreife ich die Physik dahinter nicht.
Wasser kann nicht komprimiert werden.
In dem System gibt es Durchfluss und Druck.
Also auch nix anderes als in einem Stromkreis die Stromstärke und die Spannung.
Mittlerweile wissen wir ja, dass der Zulauf / das Netzteil auch in irgendeiner geregelt wird?
Auf welche Größe? Durchfluß, Druck oder Leistung?
Woher kommen Soll- und Istwerte für diese Regelung?
Die Regelung der Abgänge ist ja irgendwie nicht rückwirkungsfrei auf die Zulaufregelung.


----------



## ducati (29 November 2022)

Blockmove schrieb:


> Wie schon gesagt, begreife ich die Physik dahinter nicht.
> Wasser kann nicht komprimiert werden.
> In dem System gibt es Durchfluss und Druck.
> Also auch nix anderes als in einem Stromkreis die Stromstärke und die Spannung.
> ...


Vielleicht ist das so gemeint:
Einfacher Sonderfall: 3 gleich große Stränge wollen jeweils 333 m3/h. Die Hauptpumpe regelt deshalb auf 1000m3/h. Wenn jetzt die 3 Ventile alle bei 50% offen sind, muss die Hauptpumpe schneller drehen als wenn alle 3 Ventile bei 100% offen sind.
Jetzt das ganze erweitern auf unterschiedliche Volumenströme der 3 Stränge und unterschiedliche Ventilnennweiten...

Ob das so überhaupt nen Sinn macht würde ich bezweifeln. Mindestens würde ich die Hauptpumpe auf Druck regeln. Evtl. den Drucksollwert abhängig von der größten Ventilstellung. Ob man die einzelnen Stränge auf Volumstrom regeln muss ist die nächste Frage. Evtl. ist da auch ne Druckregelung besser, oder nen mechanischer Überstromregler oder Mechan. Volumenstromregler oder ganz was anderes.
Da das ja hier im Thema Gebäudeautomatisierung und im Zusammenhang mit Heizung genannt wird, denk ich grad an so Heizkreise wo jemand anstatt auf Vorlauftemp. oder Raumtemp. zu regeln sich so ne Volumenstrom oder Leistungsregelung zusammenphantasiert hat.


----------



## Blockmove (29 November 2022)

Ok


ducati schrieb:


> Vielleicht ist das so gemeint:
> Einfacher Sonderfall: 3 gleich große Stränge wollen jeweils 333 m3/h. Die Hauptpumpe regelt deshalb auf 1000m3/h. Wenn jetzt die 3 Ventile alle bei 50% offen sind, muss die Hauptpumpe schneller drehen als wenn alle 3 Ventile bei 100% offen sind.
> Jetzt das ganze erweitern auf unterschiedliche Volumenströme der 3 Stränge und unterschiedliche Ventilnennweiten...
> 
> ...


Ok, jetzt wird mir langsam klar, um was es geht.
Es soll der Energiebedarf der Zulaufpumpe minimiert werden.
Also Minimierung des notwendigen Drucks um die Volumenmenge zu transportieren.
Wäre es da nicht sinnvoll den Druck im Zulauf mit in die Regelung einzubeziehen?


----------



## Thomas_v2.1 (29 November 2022)

Und die Strecken beeinflussen sich gegenseitig, wenn ein Ventil weiter öffnet, bekommen die anderen Strecken entsprechend weniger und müssen nachregeln. Es hängt alles zusammen. Aber bei einer Durchflussregelung die normalerweise keine großen Totzeiten aufweist, kann man meiner Meinung nach damit klarkommen. Man muss sich eben darauf einstellen, dass die Antriebe öfter verfahren werden.

Übliches Problem bei der Belüftung der Belebungsbecken auf Kläranlagen. Mehrere Gebläse fördern Luft in eine Sammelleitung, Druckgeregelt. Über mehrere Verteilschieber die auf den Sauerstoffgehalt regeln, wird die Luft auf die Becken verteilt. Bei der Sauerstoffregelung gibt es aber längere Totzeiten, also muss man hier die Regler relativ langsam einstellen. Kommt nun eine höhere Belastung in der ersten Stufe, Sauerstoff sinkt -> Schieber öffnet, klaut den anderen Strecken die Luft -> dort fällt darum verzögert der Sauerstoffwert -> Schieber müssen öffnen usw. Bei bestimmten Belastungszuständen schwingt sich das dann gerne mal auf, weil die Streckenparameter von etlichen Umweltbedingungen abhängig sind.


----------



## xEs1710 (30 November 2022)

Plan_B schrieb:


> Also doch nicht konstant, nur nicht in diesem Regelkreis einbezogen.
> Halte ich für ineffektiv. Aber egal. Wenn Du nur den nun nicht mehr konstanten Zufluss aufteilen möchtest, kannst Du jeweils das Ventil mit dem grössten Stellwert auf 100% fahren und die anderen müssen nachregeln.


Naja schon. Also natürlich ist der Gesamtdurchfluss variabel einstellbar, aber der eingestellte Durchfluss wird konstant gehalten.


Thomas_v2.1 schrieb:


> Was ich schon einmal gemacht habe, ist die Sollwerte der einzelnen Strecken mit einem Gewichtungsfaktor zu versehen. Also Mittelwert aller Sollwerte durch Mittelwert aller Istwerte ergibt einen Gewichtungsfaktor. Wird dann in Summe mehr benötigt, dann erhöhen sich alle Stellgrößen zuggleich. Hat nur eine Strecke zu wenig und eine andere zu viel, so können diese das unter sich ausmachen (Gewichtungsfaktor ist dann gleich 1). Das funktioniert aber nur, wenn das liefernde Element an der Einspeisung dann auch entsprechend nachregelt, was bei dir ja nicht der Fall zu sein scheint. Außerdem muss man mit dem Einfluss dieser Gewichtung etwas feintunen, was mir eigentlich überhaupt nicht bei einer Regelung gefällt.


Und da wie hier Thomas von einer Gewichtung spricht, spielt der Gesamt Zufluss eine untergeordnete Rolle. Denn wenn der Zulauf prozentual verteilt werden soll, mach die Größe des Zulaufes keinen Unterschied.

Der Zulauf wird permanent geregelt - was für die Regelung der Ventile nicht mal nötig wäre.
Warum nicht? Nehmen wir an wir haben 1000l/h Zulauf. Diesen verteilen wir zu Q1: 25% = 250l/h; Q2: 45% = 450l/h und Q3: 30% = 300l/h.
Steigt nun der Zulauf auf 2000l/h - Was machen die Ventile? Nichts, weil die prozentuale Verteilung gleich bleibt.

Die Sollwerte der einzelnen Stränge sind immer prozentual vom Gesamtdurchfluss Zulauf.


ducati schrieb:


> Vielleicht ist das so gemeint:
> Einfacher Sonderfall: 3 gleich große Stränge wollen jeweils 333 m3/h. Die Hauptpumpe regelt deshalb auf 1000m3/h. Wenn jetzt die 3 Ventile alle bei 50% offen sind, muss die Hauptpumpe schneller drehen als wenn alle 3 Ventile bei 100% offen sind.
> Jetzt das ganze erweitern auf unterschiedliche Volumenströme der 3 Stränge und unterschiedliche Ventilnennweiten...
> 
> ...


Damit kommst du schon sehr nah dran. Ziel ist es möglich wenig Energie für den Gesamtzulauf aufbringen zu müssen (möglichst niedriger Anlagendruck, bei gleichzeitig richtigen Durchflüssen).

Die Hauptpumpe regelt auf Durchfluss. Der Druck im System ist nicht relevant - nur einfach möglichst niedrig.


Blockmove schrieb:


> Ok
> 
> Ok, jetzt wird mir langsam klar, um was es geht.
> Es soll der Energiebedarf der Zulaufpumpe minimiert werden.
> ...


Wenn ich den Druck mit einbeziehen würde, könnte ich die "Gesamtleistung" im Zulauf nicht einfach hoch fahren. Dieser lässt sich nämlich nicht regeln, wenn bestimmte Durchflüsse in jedem Strang (Prozentual vom Gesamtdurchfluss) realisiert werden soll. Die Hauptpumpe soll den Durchfluss liefern bei möglichst niedrigem Aufwand.



Thomas_v2.1 schrieb:


> Und die Strecken beeinflussen sich gegenseitig, wenn ein Ventil weiter öffnet, bekommen die anderen Strecken entsprechend weniger und müssen nachregeln. Es hängt alles zusammen. Aber bei einer Durchflussregelung die normalerweise keine großen Totzeiten aufweist, kann man meiner Meinung nach damit klarkommen. Man muss sich eben darauf einstellen, dass die Antriebe öfter verfahren werden.
> 
> Übliches Problem bei der Belüftung der Belebungsbecken auf Kläranlagen. Mehrere Gebläse fördern Luft in eine Sammelleitung, Druckgeregelt. Über mehrere Verteilschieber die auf den Sauerstoffgehalt regeln, wird die Luft auf die Becken verteilt. Bei der Sauerstoffregelung gibt es aber längere Totzeiten, also muss man hier die Regler relativ langsam einstellen. Kommt nun eine höhere Belastung in der ersten Stufe, Sauerstoff sinkt -> Schieber öffnet, klaut den anderen Strecken die Luft -> dort fällt darum verzögert der Sauerstoffwert -> Schieber müssen öffnen usw. Bei bestimmten Belastungszuständen schwingt sich das dann gerne mal auf, weil die Streckenparameter von etlichen Umweltbedingungen abhängig sind.


Genau. Die gegenseitige Beeinflussung werde ich jetzt auch "nutzen". Wenn irgend ein Ventil zu wenig Wasser fährt, fährt automatisch ein anderes Ventil zu viel. So werde ich das Ventil, welches die größte Differenz Sollwert-Istwert aufweist, als erstes fahren. So fließt z.B. hier mehr Wasser durch und durch das Ventil, welches zu viel Wasser lieferte automatisch weniger.
Ich schaue immer auf die Differenzen Sollwert zu Istwert und entscheide so welches Ventil fährt, um möglichst mehrere Zielwerte gleichzeitig zu erreichen. Wichtig: Nur das Ventil mit der größten Differenz fährt -> Nicht alle gleichzeitig.
Wenn alle Ventile "ausgeregelt" sind und noch keines bei 100%, so fahre ich alle gleichzeitig auf, bis ein Ventil wieder die größte Differenz aufweist. So schaukelt sich das System hoch und am Ende ist mind. 1 Ventil auf 100% und die Durchflüsse passen.

Danke Leute. Ihr habt mir den ein oder anderen Hinweis gegeben um das zu lösen! Beste Grüße


----------



## Blockmove (30 November 2022)

Weiter oben schreibst du, dass die Durchflusswerte auf +/-3% geregelt werden sollen.
Innerhalb dieses Toleranzbandes willst du dich dann hochschaukeln und zusätzlich regelt auch noch die Zulaufpumpe.
Sehr ambitioniert


----------



## xEs1710 (30 November 2022)

Blockmove schrieb:


> Weiter oben schreibst du, dass die Durchflusswerte auf +/-3% geregelt werden sollen.
> Innerhalb dieses Toleranzbandes willst du dich dann hochschaukeln und zusätzlich regelt auch noch die Zulaufpumpe.
> Sehr ambitioniert


Jap. Ist ja klein Problem, weil ja auch Bedingung ist, dass mind. 1 Ventil auf 100% steht.  Wenn alle Durchflüsse innerhalb der Toleranz (=ausgeregelt), aber nicht 1 Ventil = 100% -> Fahre alle Ventile um 1% auf. Nun werden - evtl - Toleranzbereiche verlassen und dieses Ventil wird nachgeregelt.

Du hast das mit der Zulaufpumpe noch nicht verstanden. Die Zulaufpumpe bzw. der Zulauf_Gesamt_Durchfluss ist egal, weil die Sollwerte der Stränge immer prozentual vom Gesamtdurchfluss sind.


----------



## Blockmove (30 November 2022)

xEs1710 schrieb:


> Du hast das mit der Zulaufpumpe noch nicht verstanden. Die Zulaufpumpe bzw. der Zulauf_Gesamt_Durchfluss ist egal, weil die Sollwerte der Stränge immer prozentual vom Gesamtdurchfluss sind.


Doch das habe ich schon verstanden.
Wenn aber der Pumpen-Volumenstrom bei veränderten Ventilöffnungen konstant bleiben muss, ändert sich der Druck im System.
Geringerer Druck hat aber auf Grund verringerter Reibungsverluste wieder Einfluss auf deine Abgänge. Ähnlich wie die gegenseitige Beeinflussung.
Deshalb meinte ich, dass die 3% ambitioniert sind.
Aber wenn die Toleranzbänder verlassen werden können, dann ist das egal.
Ich halt es in solchen Fällen mit Pippi Langstrumpf: "Ich regel mir die Welt wie sie mir gefällt"


----------



## xEs1710 (30 November 2022)

Blockmove schrieb:


> Doch das habe ich schon verstanden.
> Wenn aber der Pumpen-Volumenstrom bei veränderten Ventilöffnungen konstant bleiben muss, ändert sich der Druck im System.
> Geringerer Druck hat aber auf Grund verringerter Reibungsverluste wieder Einfluss auf deine Abgänge. Ähnlich wie die gegenseitige Beeinflussung.
> Deshalb meinte ich, dass die 3% ambitioniert sind.
> ...


Ich gebe dir recht, dass sich der Pumpen-Volumenstrom permanent ändert, sobald die Ventile verfahren werden. Auch stimmt, dass sicher der Druck ändern wird. Beeinflusst sich das System stark gegenseitig? Nein. Warum nicht? Weil ich die SOLL-Werte der Stränge anhand der IST-Werte im Zulauf bilde und Reibungsverluste in jedem Strang ungefähr gleich wirken.
Sollwert 1 = Istwert_Zulauf * Faktor_Strang_1.
Sollwert 2 = Istwert_Zulauf * Faktor_Strang_2.
Etc.

Mir ist der tatsächliche Durchfluss im Zulauf und in den Strängen fast egal. Ich will nur das was im Zulauf ist, in den Strängen verteilen.

Habe ich nun Schwankungen im Zulauf aufgrund Änderung des Druckes, wird diese Schwankung auf die Sollwerte der Stränge übertragen. Die Istwerte in den Strängen ändern sich fast garnicht. Und wenn -> Wo ist die größte Differenz? Nachregeln.

Es kann auch sein, dass ich deinen Gedankengang noch nicht verstanden habe. Jedenfalls ist die Anlage so in Betrieb gegangen und läuft - Und der Kunde ist nicht Pippi Langstrumpf


----------



## Plan_B (30 November 2022)

Zum einen ist was egal, zum anderen willst Du regeln.
Mal dwn Durchfluss in den Strängen regeln und mal den Zulauf verteilen.

Skizzier doch mal ein Schema mit Kausalitäten, soll/ist- bezügen und egal.
Ich versuch immer noch, die Aufgabenstellung zu verstehen.


----------



## xEs1710 (30 November 2022)

Plan_B schrieb:


> Zum einen ist was egal, zum anderen willst Du regeln.
> Mal dwn Durchfluss in den Strängen regeln und mal den Zulauf verteilen.
> 
> Skizzier doch mal ein Schema mit Kausalitäten, soll/ist- bezügen und egal.
> Ich versuch immer noch, die Aufgabenstellung zu verstehen.


Ja weil ich tatsächlich nur den Zulauf unterschiedlich verteilen muss - wie ich das in meinem ersten Post schrieb. Den Zulauf_Gesamt auf die Stränge verteilen. Die sich daraus ergebenen Sollwerte ausregeln...


----------



## ducati (30 November 2022)

Wenn die Volumenströme in den Strängen egal sind, brauchst die auch nicht ausregeln, sondern die 3 Ventile einfach auf nen fixen Wert setzen und gut...


----------



## Onkel Dagobert (30 November 2022)

xEs1710 schrieb:


> ... Dieser wird konstant gehalten und soll in den unterschiedlichen Strängen verteilt werden. SW_Durchfluss_Strang_1 = Durchfluss_Zulauf * Faktor_Strang_1 / Summe(Faktor_Strang_1 .. n);


Genau so! Wenn in jedem Strang der Durchfluss gemessen wird, dann sollte man in jedem Strang auch den Durchfluss regeln. Die Sollwerte kannst du berechnen, wie du es für richtig hältst. Das genannte Beispiel mit den Faktoren wäre eine so genannte Verhältnisregelung. Der Zulauf ergibt sich ganz einfach aus der Summe der Stränge. Diesen Zulauf noch einmal zusätzlich regeln zu wollen, macht überhaupt keinen Sinn und wird auch nicht funktionieren.


----------



## xEs1710 (1 Dezember 2022)

Onkel Dagobert schrieb:


> Genau so! Wenn in jedem Strang der Durchfluss gemessen wird, dann sollte man in jedem Strang auch den Durchfluss regeln. Die Sollwerte kannst du berechnen, wie du es für richtig hältst. Das genannte Beispiel mit den Faktoren wäre eine so genannte Verhältnisregelung. Der Zulauf ergibt sich ganz einfach aus der Summe der Stränge. Diesen Zulauf noch einmal zusätzlich regeln zu wollen, macht überhaupt keinen Sinn und wird auch nicht funktionieren.


Moinsen. Wie wäre dein Vorschlag mehr Gesamt-Leistung in die Stränge rein zu bringen ohne die Temperatur anzuheben? Jeder Strang braucht nun mehr Leistung. 

Die Forderung ist nun statt:
1000l/h - Q1:250; Q2:350; Q3:400

nun:
2000l/h - Q1:500; Q2:700; Q3:800

Gerne Lösungsvorschläge.

Also aktuell sieht es so aus: Die Pumpen fahren hoch, die Durchflüsse in den Strängen heben sich fast komplett gleichmäßig an und alle Verbraucher bekommen mehr Leistung.


----------



## xEs1710 (1 Dezember 2022)

ducati schrieb:


> Wenn die Volumenströme in den Strängen egal sind, brauchst die auch nicht ausregeln, sondern die 3 Ventile einfach auf nen fixen Wert setzen und gut...


Und auf welchen fixen Wert wenn sich die Widerstände in den Strängen ändern könnte?


----------



## Plan_B (1 Dezember 2022)

Warum ändert sich der Widerstand? Fährt n Ventil zu? Und trotzdem soll die gleiche Medienmenge durchgepresst werden? Warum fährt das Ventil dann zu?


----------



## Onkel Dagobert (1 Dezember 2022)

xEs1710 schrieb:


> ... Gerne Lösungsvorschläge...


Es ist doch ganz allein von deinen Erfordernissen abhängig, wie du die Sollwerte berechnest. Wenn du die Gesamtmenge als Grundlage verwenden möchtest, denn betragen die Sollwerte in den drei Strängen 25%, 35% und 40% von der vorgegebenen Gesamtmenge.



xEs1710 schrieb:


> ... Wie wäre dein Vorschlag mehr Gesamt-Leistung in die Stränge rein zu bringen ohne die Temperatur anzuheben? ..


Wenn du jetzt die Leistung oder die Wärmemenge regeln willst, dann musst du diese erst einmal messen. Die Leistung kannst du theoretisch erhöhen durch eine Erhöhung der Temperatur bzw. der Temperaturdifferenz oder durch Erhöhung der Durchflussmenge. Das ist aber nur die Theorie, praktisch ist das nicht so einfach abgehandelt.


----------



## Blockmove (1 Dezember 2022)

So wie ich es verstehe, bekommst du von einem übergeordneten System die Sollwerte für die Stränge.
Das Ventil mit dem höchsten Sollwert vom übergeordneten System soll auf 100% fahren.
Also eine Verhältnissteuerung.
Zulauf spielt keine Rolle, Absoluter Durchfluß in den Strängen auch nicht.
Somit bleibt doch eigentlich nur die Ventilstellung.
Alle anderen Eingriffe bringen - meiner Meinung nach - nur das übergeordnete System durcheinander.
Gesamtenergiemenge bestimmt die Zulaufregelung durch Fördermenge und Temperatur.


----------



## Heinileini (1 Dezember 2022)

Völlig ungetestet:

```
FUNCTION DISTRIB : VOID

VAR_INPUT
    irSkala  : REAL  // >= 0.001 (willkürlich!); MaximalWert für orSollW1, orSollW2 und orSollW3.
    irVorga1 : REAL  // vorgegebener Anteil von SollWert1: = 0.0 oder >= 1.0.
    irVorga2 : REAL  // vorgegebener Anteil von SollWert2: = 0.0 oder >= 1.0.
    irVorga3 : REAL  // vorgegebener Anteil von SollWert3: = 0.0 oder >= 1.0.
END_VAR // Für irVorga1, irVorga2 und irVorga3 gilt:
        // 1. Dieselbe Einheit verwenden! Könnte z.B. Liter/Sekunde sein oder % oder Promille
        // 2. Wenn Wert < 1.0, dann wird er durch 0.0 ersetzt und der entspr. SollWert auch!

VAR_OUTPUT
    orSollW1 : REAL  // SollWert1 skaliert auf irSkala.
    orSollW2 : REAL  // SollWert2 skaliert auf irSkala.
    orSollW3 : REAL  // SollWert3 skaliert auf irSkala.
END_VAR

VAR_TEMP
    trSkala  : REAL  // ggfs korrigierter Wert von irSkala.
    trVorga1 : REAL  // ggfs korrigierter Wert von irVorga1.
    trVorga2 : REAL  // ggfs korrigierter Wert von irVorga2.
    trVorga3 : REAL  // ggfs korrigierter Wert von irVorga3.
    trMaximV : REAL  // Maximum der 3 Werte trVorga1, trVorga2, trVorga3 oder 1.0.
    trFaktor : REAL  // Faktor, mit dem die 3 Werte trVorga1, trVorga2 und trVorga3 ...
END_VAR              // ... multipliziert werden müssen, sodass ...
                     // ... MAX(orSollW1, orSollW2, orSollW3) = trSkala wird.

// InputWerte bei Unterschreitung von 0.001 bzw. 1.0 korrigieren:
trSkala  := MAX(IN1:=0.001, IN2:=irSkala) ;
trVorga1 := irVorga1 ; IF trVorga1 < 1.0 THEN trVorga1 = 0.0 ; END_IF ;
trVorga2 := irVorga2 ; IF trVorga2 < 1.0 THEN trVorga2 = 0.0 ; END_IF ;
trVorga3 := irVorga3 ; IF trVorga3 < 1.0 THEN trVorga3 = 0.0 ; END_IF ;

// Verteilung:
trMaximV := MAX(IN1:=1.0, IN2:=trVorgab1, IN3:=trVorgab2, IN4:=trVorgab3) ;
trFaktor := trSkala  / trMaximV ;
orSollW1 := trVorga1 * trFaktor ;
orSollW2 := trVorga2 * trFaktor ;
orSollW3 := trVorga3 * trFaktor ;

END_FUNCTION
```


----------



## xEs1710 (2 Dezember 2022)

Heinileini schrieb:


> Völlig ungetestet:
> 
> ```
> FUNCTION DISTRIB : VOID
> ...


Moinsen,
ja das geht schon genau so in die Richtung. 
Also Gesamt-Leistung und Leistung in den Strängen wird anders wo berechnet. Ich muss nur die daraus resultierenden Sollwerte ausregeln.



Blockmove schrieb:


> So wie ich es verstehe, bekommst du von einem übergeordneten System die Sollwerte für die Stränge.
> Das Ventil mit dem höchsten Sollwert vom übergeordneten System soll auf 100% fahren.
> Also eine Verhältnissteuerung.
> Zulauf spielt keine Rolle, Absoluter Durchfluß in den Strängen auch nicht.
> ...


Ja das ist so. Die Anpassungen sind aber alle recht träge und aufeinander abgestimmt. 

Die Gesamtleistung und benötigte Leistung in den Strängen bestimme nicht ich. Einfach das Ventil mit dem höchsten Sollwert auf 100% setzen funktioniert leider nicht, da die Widerstände in den Strängen unterschiedlich sind/sein können. (Andere Komponenten, Längen, etc.)

Also im Prinzip schaue ich immer auf die MaxDifferenz zwischen SOLL und IST in jedem Strang. Der größte Wert hat Vorrang. Dadurch erreiche ich, dass andere Durchflüsse automatisch mit in die richtige Richtung wandern. 
Damit habe ich auch sichergestellt, dass das mit 2 sowie 20 Strängen funktioniert - dauert halt nur länger.

Ich Danke euch allen!


----------



## Blockmove (2 Dezember 2022)

xEs1710 schrieb:


> Einfach das Ventil mit dem höchsten Sollwert auf 100% setzen funktioniert leider nicht, da die Widerstände in den Strängen unterschiedlich sind/sein können. (Andere Komponenten, Längen, etc.)


Wenn die Widerstände höher sind, dann kommt doch weniger Energie an. Damit müsste das übergeordnete System das auch kompensieren.
Mit deinen Anpassungen bringst du  - meiner Meinung nach - eine weitere Störgröße ins übergeordnete System.


----------



## Heinileini (2 Dezember 2022)

xEs1710 schrieb:


> Einfach das Ventil mit dem höchsten Sollwert auf 100% setzen funktioniert leider nicht, da die Widerstände in den Strängen unterschiedlich sind/sein können. (Andere Komponenten, Längen, etc.)


Nach grossen AnlaufSchwierigkeiten, Dein Anliegen überhaupt annähernd zu verstehen, hatte ich Deinen EnergieSparAnsatz akzeptiert, in demjenigen Zweig das StellGlied auf 100 % festzunageln, für den der LöwenAnteil der Aufteilung angefordert wird.
Nun sagst Du aber, das funktioniert leider nicht. Warum jetzt aus Deiner Sicht doch nicht?
Mir ist durchaus klar, dass die Widerstände in den diversen Strängen unterschiedlich sein werden und auch variieren können, aber was genau meinst Du mit "funktioniert leider nicht"?
Ist das jetzt ein Argument dafür, diesen Ansatz endgültig in die Tonne zu treten? EnergieSparen ist doch angesagt.
Immerhin sollen die Stränge separat und unabhängig von den anderen geregelt werden. Wir müssen "nur" dafür sorgen, dass den Reglern genügend SpielRaum bleibt, um auch regeln zu können. U.a., damit sie wirklich unabhängig voneinander arbeiten können, statt sich gegenseitig die Ressourcen abzugraben.



xEs1710 schrieb:


> Also im Prinzip schaue ich immer auf die MaxDifferenz zwischen SOLL und IST in jedem Strang. Der größte Wert hat Vorrang.


Die Differenz zwischen SollWert und IstWert ist sowieso das Mass für die Regler, ihren Dienst zu tun und Abweichungen gering zu halten.
Derjenige Regler, der die grösste Differenz zwischen Soll und Ist feststelt, wird ohnehin am heftigsten reagieren. Du musst nicht eingreifen und irgendwelche VorrangRegeln oder RegulierungsMassnahmen "draufsetzen". Wird irgendeiner der beteiligten Regler künstlich daran gehindert, seine Aufgabe erfüllen zu können, so macht das nur zusätzliche Probleme, insbesondere durch den IntegralAnteil des Reglers.


xEs1710 schrieb:


> Dadurch erreiche ich, dass andere Durchflüsse automatisch mit in die richtige Richtung wandern.


Ich fürchte, Du willst den ZeitPunkt, an dem andere Durchflüsse beginnen können, "automatisch in die richtige Richtung zu wandern", nur willkürlich hinauszögern. Das bringt aber keine Beruhigung, sondern sorgt dafür, dass unnötig viel "NachholBedarf" bei den einzelnen, ausgebremsten Reglern aufgestaut wird.

Der Punkt, warum ich nach wie vor Bauchschmerzen bei dem Gedanken bekomme, den StellWert desjenigen Reglers auf 100 % zu setzen, der am meisten "liefern" soll, ist folgender: ein Regler, der weiss, dass er kräftiger auf's GasPedal treten müsste, um eine RegelDifferenz zügig abzubauen, wird zu Beginn einer grossen Abweichung gerne mehr anfordern, als er später benötigen wird, um den erreichten Wert zu halten. 
Der Regler weiss wie es geht und was er tun müsste, aber wir lassen ihn nicht. Die nötigen Reserven billigen wir ihm nicht zu. Das behindert und stört die WirkungsWeise des Reglers.

Was tun? Auf gute RegelEigenschaften verzichten zu Gunsten einer EnergieEinsparung? Oder den Aspekt EnergieSparen so hoch hängen, dass die Regler Probleme bekommen?
Wir müssen ein gewisses Mass an EnergieVerschwendung einplanen, um vernünftig regeln zu können. Wir sollten aber versuchen, die EnergieVerschwendung in Grenzen zu halten. Reserve für die Regler vorsehen, aber nicht mehr als nötig. Welches Mass an Reserve nötig ware, können wir aus der Ferne nicht abschätzen.
Wohin mit der zuviel ins System bzw. in die Zuleitung gepumpten Energie? "Ablasen" kommt ja wohl nicht in Frage. 
Das "starre" Verhalten der Zuleitung gefällt mir nicht. Könnte man einen DruckSpeicher einbauen?

Um den EnergieSparGedanken wieder aufzugreifen: die Idee, die Werte der StellGlieder (bzw. die ReglerAusgänge) auszuwerten, finde ich gar nicht übel. Sie sind ein Mass dafür, wieviel Reserve für die AufteilungsRegler vorhanden ist. 
Man sollte diese aber nicht auswerten, um die AufteilungsRegler zu beeinflussen, also nicht deren SollWerte darüber zu manipulieren, sondern sie müssten auf die Regelung des Zuflusses "korrigierend" einwirken - sofern das überhaupt nötig oder wenigstens hilfreich wäre.

Ich gehe mal davon aus, dass der ProzentWert, der maximal für das am weitesten geöffnete AufteilungsVentil angestrebt werden sollte, schwanken wird. Je nach BetriebsBedingungen, z.B. je nach Art der Änderungen bei den AufteilungsVorgaben. Vielleicht findet man einen Weg, diesen ProzentWert z.B. sachte zu erhöhen, wenn es zweitweise keiner grösseren Reserven für die Regler bedarf. Oder vielleicht findet man ein Kriterium dafür, einen Bedarf für eine höhere Reserve möglichst frühzeitig zu erkennen. Das wirkliche Problem dabei wird es sein, den bevorstehenden Verlauf des Bedarfs "vorauszusehen".
Zur Erinnerung, mit Reserve meine ich den Abstand des ProzentWertes von 100 % "nach unten", kleine Reserve knapp unter 100 % - sagen wir mal 97 % - und grosse Reserve deutlich unter 100 % - sagen wir mal 85 %. Keine Ahnung, die Werte habe ich natürlich aus der Luft gegriffen.
Man müsste mal am "lebenden Objekt" beobachten können, was sich wie verhält. Ein Aufzeichnen der "relevanten" Werte wäre sinnvoll, am besten inkl. dem Verhalten des ZuflussReglers.


----------



## Thomas_v2.1 (2 Dezember 2022)

Da ich grundsätzlich Interesse an einer passenden Lösung hätte, wäre mein Vorschlag hier vielleicht mal eine Simulation zu erstellen. Also Pumpe auswählen von der es möglichst viele Daten gibt, dann meinetwegen 5 Abgänge mit Rohrleitungen und Stellventilen (müsste man sehen was für ein Verschluss). Am besten wäre hier natürlich wenn man auf eine reale Konstruktion aufsetzen könnte. Mit Wasser als Medium kann ich damit aber auch nicht dienen.


----------



## Holzmichl (2 Dezember 2022)

@xEs1710
Für mich sehen deine Ausführungen so aus, als würdet Ihr versuchen um eine schlechte Regelung "herumbauen" zu wollen.

So wie ich den ganzen Sachverhalt aus der Ferne bewerte, wäre eine ordentliche Differenzdruck-Regelung an der Zuleitung das Beste.
Dann könntest Du deine ganzen Einzelstränge eigens regeln lassen nach Sollwert und wenn die Zuleitung, laut deiner Aussage, so üppig dimensioniert ist, wird diese Regelung alles zur vollsten Zufriedenheit arbeiten und den Differenzdruck konstant halten.

Das ist das System, wie in praktisch jeder Fernwärme oder Zentral-Prozesskälte-Anlage und durch die modernen Heizungspumpen fast in jedem Haushalt hervorragend funktioniert und auch sehr energieeffizient arbeitet.

Ich rede gerade aus Erfahrung als technischer Verantwortlicher einer Fernwärme-Anlage mit maximal-Durchfluss von ca 350 m³/h, Leistung ca 8MW thermisch und schätzungsweise 100 versorgten Abnahme-Einheiten im Bereich von 1/2 Zoll bis DN250.
Das läuft perfekt seit über 15 Jahren mit einer einmaligen Versuchsreihe, wie hoch man den Differenzdruck einstellen muss, damit alle Verbraucher gut versorgt werden.

PS: Wenn Ihr natürlich nichts an der Regelung der Versorgung ändern könnt ist das schlecht. Dann ist dein Ansatz soweit richtig, dass das trotzdem nur die zweitbeste Lösung darstellt. Aber besser die zweitbeste Lösung als gar keine Lösung.

Nur meine persönliche Meinung...


----------



## Thomas_v2.1 (2 Dezember 2022)

Ich dachte es geht hier auch um die grundsätzliche Lösung so einer Verteilungsregelung. Dass das in jeder Heizungsanlage mit Verteiler und mehreren Abgängen funktioniert, dürfte bekannt sein.


----------



## Heinileini (3 Dezember 2022)

Thomas_v2.1 schrieb:


> Ich dachte es geht hier auch um die grundsätzliche Lösung so einer Verteilungsregelung. Dass das in jeder Heizungsanlage mit Verteiler und mehreren Abgängen funktioniert, dürfte bekannt sein.


Ich denke auch, dass auch um die grundsätzliche Lösung geht. Was ich in der Aufgabenstellung dieses Thread eher aussergewöhnlich finde:
1. Die Regelung des Zulaufs findet autark irgendwo ausserhalb des EinflussBereichs des TE statt.
2. Der TE hat vermutlich beobachtet, dass die unter 1. genannte Regelung dazu führt, dass die Verteilung in dem Strang mit dem grössten DurchFluss nicht erwartungsgemäss dazu führt, das StellVentil voll aufzufahren.
Mit "erwartungsgemäss" ist die Erwartung des TE gemeint. Er macht sich Gedanken, dass mit dem VollAuffahren des Ventils Energie einzusparen wäre, weil in diesem Fall nur genau der Druck in der Zuleitung erzeugt werden muss, mit dem die gewünschte Verteilung erzielt werden könnte.
Diesen GedankenGang kann ich nachvollziehen und er dürfte einen Aspekt ansprechen, der bisher vermutlich eher vernachlässigt wurde und wahrscheinlich noch relativ neu, auf jeden Fall aber "zeitgemäss" ist.
Neu ist, dass man einem der Stränge (dem mit dem grössten Durchfluss) die Möglichkeit nehmen würde, "vernünftig" regeln zu können.
Bzw. man müsste in diesem Strang dafür sorgen, dass das Ventil voll aufgefahren wird und der Regler dieses Strangs keinen Einfluss hat. Die Verteilung würde dann über die Regler der anderen Stränge und den Regler des Zulaufs geregelt. Das setzt aber voraus, dass der Regler des Zulaufs beeinflusst werden kann, was aber dem TE anscheinend nicht möglich ist.


----------



## SPS-Bitschubser (3 Dezember 2022)

Also für mich klingt das Thema für das z. B. Belimo Druckunabhängies Regel typischen RegelVentil.

Die Regelventile nach durchfluss und schaue über die Rückmeldung wie weit die offen sind.sind alle unter ca 90 Prozent offen alles gut

Schau dir mal die Werbevideos dazu an.


----------



## Blockmove (3 Dezember 2022)

Das Energiesparen soll, soweit ich das hier nachvollziehen kann, durch Erhöhen des Durchflusses, niedriger Vorlauftemperatur und niedrigen Pumpendruck erreicht werden. Also ein guter Ansatz.
Bei Smarthome-Lösungen basteln auch viele daran. Weg von der wetterabhängigen Vorlauftemperatur, hin zur Bedarfsregelung.
Deshalb die Ventile soweit wie möglich auf. Ob hier die 100%-Lösung passt … schwer zu sagen.
Alternativ eine Verteilung auf eine definierte Summe der Stellgrößen.
Bei der Trägheit braucht es sowieso einen Trace über mehrere Tage.


----------



## Onkel Dagobert (3 Dezember 2022)

Thomas_v2.1 schrieb:


> .. mein Vorschlag hier vielleicht mal eine Simulation zu erstellen...


Ich glaube, von diesem Stadium sind wir noch ganz weit entfernt. Aber eine einfache Skizze mit allen Sensoren und Aktoren wäre für den Anfang ganz gut. Ich finde nämlich die bisherigen Angaben zur Aufgabe sehr verwirrend. Möglicherweise fehlt auch ein gewisses Grundverständnis auf dem Gebiet der Regelungstechnik? Mal wird von Leistung gesprochen, mal von Temperatur und dann wieder von Durchfluss oder Strangwiderstand. Möglicherweise erwartet man sogar, die Ventilstellung genügt für eine sensorlose Regelung? Eine Skizze könnte zunächst solch fundamentale Fragen klären, ohne viel Gelaber.


----------



## Plan_B (3 Dezember 2022)

Onkel Dagobert schrieb:


> Eine Skizze könnte zunächst solch fundamentale Fragen klären, ohne viel Gelaber.


Da bin ich schon vor 20 Beiträgen gewesen und absolut Deiner Meinung.


----------



## Onkel Dagobert (3 Dezember 2022)

Plan_B schrieb:


> Da bin ich schon vor 20 Beiträgen gewesen und absolut Deiner Meinung.


Jetzt, wo du es sagst, ich hatte es gelesen. Das ist aber schon wieder so viele kalte Inbetriebnahme-Stunden her, dass ich es bereits wieder vergessen hatte.


----------



## Blockmove (3 Dezember 2022)

Onkel Dagobert schrieb:


> Das ist aber schon wieder so viele kalte Inbetriebnahme-Stunden her, dass ich es bereits wieder vergessen hatte.



Dank TIA und EPlan ist das Notebook immer ein guter Handwärmer


----------



## Onkel Dagobert (3 Dezember 2022)

Blockmove schrieb:


> Dank TIA und EPlan ist das Notebook immer ein guter Handwärmer


Das kann ich eigentlich nicht bestätigen. Bei manchen Programmständen oder Installationen treibt PLCSim den Lüfter mal zum Dauerlauf, aber ansonsten sind beide Programme eigentlich recht bescheiden. Jedenfalls sind bei 5°C die Hände beim Taschenbilliard besser aufgehoben .


----------



## xEs1710 (5 Dezember 2022)

Okay ich versuche das nochmal zu erklären. Es geht hier nicht um eine Heizungsverteilung oder ähnliches. Ich zitiere mich mal selbst: 


xEs1710 schrieb:


> Hallo zusammen!
> Ich stehe vor einem mittelschwerem Problem. Und zwar soll ich eine Ventilsteuerung programmieren, der die Durchflüsse über 3 und mehr (variabel) Wege korrekt verteilt.
> 
> Also: 1 großer Zulauf, der 3 und mehr Abzweigungen hat. In diesen Abzweigungen sind Ventile (0-100%) und Durchflussmesser (neuer Wert alle 3-5 Sekunden!). Der Zulauf ist erstmal konstant. Die Sollwerte in den Abzweigung sind variabel, in Summe aber immer gleich. Alle Abzweigungen haben einen unterschiedlichen Widerstand (=alle Ventile 100% offen ergeben unterschiedliche Durchflüsse) und 1 Ventil von allen Abzweigungen muss immer zu 100% geöffnet sein.
> ...



Meine Frage war gewesen, wie man eine Ventilsteuerung programmieren kann, die 3 und mehr Durchflüsse verteilt. Bedingung: Ein Ventil ist zu 100% geöffnet. Auch hier habe ich erkannt, dass sich die Ventile gegenseitig beeinflussen und deshalb ja die Frage! Ich brauchte zu diesem Zeitpunkt eine Lösung für 3 und mehr (10?, 20?, 30?) Abzweigungen.

Die freie Regelung aller Ventile zur selben Zeit funktionierte für uns nicht und deshalb wollten wir, wie ihr so schön sagt, "einen Regler drum herum bauen". Ebenso war die Bedingung 1 Ventil (und somit Regler) immer auf 100% festzuhalten ein Thema, warum wir das so nicht gelöst haben.


----------



## Blockmove (5 Dezember 2022)

Du hast hier nun doch schon einige Vorschläge bekommen.

Verhältnisregelung auf Basis Durchfluss der Abgänge
Verhältnisregelung auf Basis Ventilstellungen
Verhältnisregelung auf Basis Soll-Istwert-Differenz
Druckregelung des Zulaufs
...
Was erwartest du?
Ein fertiges Programm oder auch passende Regelparameter kann hier keiner liefern.
Keiner von uns weiß, wie sich das übergeordnete System verhält und keiner weiß, wie die gegenseitige Beeinflussung sich auswirkt.
Um wenigstens irgendwelche Aussagen zu treffen, braucht es ein Fließbild und vernünftige Traces der Daten.
Ansonsten bleibt nur die Glaskugel ... Und die ist halt trüb.


----------



## xEs1710 (5 Dezember 2022)

Was ich erwarte? Zeit zum antworten 🙃 


Blockmove schrieb:


> Wenn die Widerstände höher sind, dann kommt doch weniger Energie an. Damit müsste das übergeordnete System das auch kompensieren.
> Mit deinen Anpassungen bringst du  - meiner Meinung nach - eine weitere Störgröße ins übergeordnete System.


Die Widerstände ändern sich nicht permanent und somit ist das akzeptabel. Mein Problem hierbei ist nur, dass ich im Vorfeld nicht weiß wie hoch die Widerstande sind und ich mir so nicht einfach die Ventilstellung ausrechnen könnte. Was ich eigentlich hiermit sagen wollte: Wenn ich 5 Ventile habe und alle bei 100%, dann fließen heute dort 5 verschiedene Durchflüsse. 
Nächsten Monat würden hier bei der selben Ventilstellung 5 andere Durchflüsse anstehen.



Heinileini schrieb:


> Nach grossen AnlaufSchwierigkeiten, Dein Anliegen überhaupt annähernd zu verstehen, hatte ich Deinen EnergieSparAnsatz akzeptiert, in demjenigen Zweig das StellGlied auf 100 % festzunageln, für den der LöwenAnteil der Aufteilung angefordert wird.
> Nun sagst Du aber, das funktioniert leider nicht. Warum jetzt aus Deiner Sicht doch nicht?
> Mir ist durchaus klar, dass die Widerstände in den diversen Strängen unterschiedlich sein werden und auch variieren können, aber was genau meinst Du mit "funktioniert leider nicht"?
> Ist das jetzt ein Argument dafür, diesen Ansatz endgültig in die Tonne zu treten? EnergieSparen ist doch angesagt.
> ...


Warum einfach 100% beim höchsten Durchfluss-Sollwert nicht funktioniert wenn wir unterschiedliche Widerstände in den Strängen haben? 
Wenn im Strang_1 Soll 550l/h und in Strang_2 560l/h fließen sollen, dafür aber in Strang_1 ein deutlich größerer Widerstand vorhanden ist, dann wird der Gedankengang "größter Durchfluss - größte Stellung" nicht funktionieren.

Okay. Wenn man alles unbedingt mit einem (bzw. ganz vielen) PI-Regler erschlagen will, dann bekommt man genau die Probleme, die du beschreibst. Da bin ich ganz deiner Meinung.
Für mich war dieser Regler aufgrund der Varianz, der Anzahl der Stränge und eben dieser Problematik mit dem Integral-Anteil, der Bedingung mit der SparMassnahme (mind. 1 Ventil 100%) und der Tatsache dass sich alle Durchflüsse gegenseitig behindern ausschlaggebend dafür, eben KEINEN PI-Regler einzusetzen. 

Auch haben wir festgestellt, dass es extrem lange dauert, bis das System ausgeregelt ist, weil eben jeder sich "irgendwie" beeinflusst. Und "dieses" irgendwie wollte ich eliminieren und für mich arbeiten lassen. Dazu gleich mehr.

Zu den generellen Ideen das System anders aufzubauen (Systemspeicher, Druckregelung, etc.) kann und will ich nicht eingehen, weil das einfach nicht mein Problem darstellt bzw. lösen kann. Es geht hier ausschließlich um die Verteilung des Zulaufes (egal wie groß, egal was da fließt, egal wie da geregelt wird).



Holzmichl schrieb:


> @xEs1710
> Für mich sehen deine Ausführungen so aus, als würdet Ihr versuchen um eine schlechte Regelung "herumbauen" zu wollen.
> 
> So wie ich den ganzen Sachverhalt aus der Ferne bewerte, wäre eine ordentliche Differenzdruck-Regelung an der Zuleitung das Beste.
> ...


Das passt für deine beschriebenen Anforderungen. Meine Anforderung ist ein passender Durchfluss in jedem Strang - auch dem Zulauf.


----------



## xEs1710 (5 Dezember 2022)

Heinileini schrieb:


> Ich denke auch, dass auch um die grundsätzliche Lösung geht. Was ich in der Aufgabenstellung dieses Thread eher aussergewöhnlich finde:
> 1. Die Regelung des Zulaufs findet autark irgendwo ausserhalb des EinflussBereichs des TE statt.
> 2. Der TE hat vermutlich beobachtet, dass die unter 1. genannte Regelung dazu führt, dass die Verteilung in dem Strang mit dem grössten DurchFluss nicht erwartungsgemäss dazu führt, das StellVentil voll aufzufahren.
> Mit "erwartungsgemäss" ist die Erwartung des TE gemeint. Er macht sich Gedanken, dass mit dem VollAuffahren des Ventils Energie einzusparen wäre, weil in diesem Fall nur genau der Druck in der Zuleitung erzeugt werden muss, mit dem die gewünschte Verteilung erzielt werden könnte.
> ...


Punkt 1: Goldrichtig
Punkt 2: Goldrichtig, fast.
1. Ich setze nicht einfach das Ventil welches MaxDurchfluss hat auf 100% fest. Warum nicht? Oben beschrieben.
2. Die Durchflussmenge im Zulauf muss von mir nicht (direkt) beachtet werden. Ich möchte ja nicht die Gesamtmenge im Zulauf regeln, sondern die Resultierende in den jeweiligen Strängen. Das ist für meine Lösung hier ganz ganz wichtig. Ändert sich der Zulauf, werden sich meine Sollwerte prozentual ebenfalls verschieben.

So und nun versuche ich euch meine Lösung ansatzweise verständlich vorzustellen:
Wir nehmen an der Zulauf beträgt 1000L/h (oder mehr, oder weniger - total egal!), weil ein übergeordnetes System ausgerechnet hat, dass 1000L/h (oder mehr, oder weniger) in den richtigen Strängen korrekt verteilt dazu führt, dass das System wie gewünscht läuft.

Mir wird mitgeteilt, dass der Zulauf wie folgt aufgeteilt werden soll:
Q1: 15% (vom Zulauf); Q2: 20%; Q3: 50% und Q4: 15%.
-> Das einfache Stellen der Ventile auf diese Vorgaben führt zu ganz falschen Durchflüssen.

Step 1: Soll- zu Istwert -> Differenzbildung und Vergleich.
Alle Ventile sind z.B. zu 50% geöffnet:
Durchflüsse IST:
Q1: 50% mit 200L/h; Q2: 50% mit 330L/h; Q3: 50% mit 400L/h und Q4: 50% mit 70L/h

Differenzen: (+ = zu viel; - = zu wenig)
Q1: 50+; Q2: 130+; Q3: 100- und Q4: 80-

Größte Differenz bei Ventil 2! ABER: Da noch kein Ventil bei 100%, wird erst die negative Seite korrigiert:
Q3 wird aufgefahren! Q1 wird kleiner (richtige Richtung), Q2 wird kleiner (richtige Richtung), Q3 wird größer (richtige Richtung), Q4 wird kleiner (FALSCHE Richtung).
Nun wird das Ventil so lange aufgefahren bis Q3 und Q4 die selbe Differenz zum Sollwert aufweist! Da die Ventile immer nach und nach gefahren werden und so die MaximaleNegativeDifferenz zum Sollwert immer hin und her wandert (zwischen Q3 und Q4) schauckeln diese beiden Ventile sich solange gegenseitig hoch, bis entweder ein Ventil von diesen bei 100% angekommen ist oder aber bis der Sollwert erreicht.

Step 2: Nehmen wir an Q4 hat Sollwert erreicht. Aktuelle Stellungen und Durchflüsse:
Q1: 50% mit 170l/h; Q2: 50% mit 250L/h; Q3: 73% mit 470/h und Q4: 68% mit 150L/h.
Aktuelle Differenzen:
Q1: 20+; Q2: 50+; Q3: 30- und Q4: 0+-

Da noch kein Ventil die 100% erreicht, wird Q3 korrigiert, da negativ:
Q1 wird kleiner (richtige Richtung), Q2 wird kleiner (richtige Richtung), Q3 wird größer (richtige Richtung), Q4 wird kleiner (Keine Richtung wäre korrekt).
Nun passiert folgendes: Q1, Q2 und Q4 werden sinken und ebenfalls eine negative Differenz aufweisen. Jetzt wird genau das Ventil aufgefahren welche die größte (negative) Differenz aufweist. Irgendwann ist 1 Ventil bei 100% oder alle beim Sollwert und evtl. noch keines bei 100%.

Step 3 (Variante 1): Alle Ventile beim Sollwert, aber keines bei 100%:
Nun werden alle Ventile gleichzeitig (zB. 1%) aufgefahren. Dadurch ergeben sich neue Differenzen und Step2 beginnt von vorne.

Step 3 (Variante 2): 1 Ventil auf 100% aber noch nicht alle beim Sollwert:
Da nun Bedingung 100% Ventil erfüllt, wird auch die positive Differenz zur Korrektur freigegeben. Man suche die größte Differenz zum Sollwert und dieses Ventil fährt dann AUF oder ZU, je nachdem.

Sollte das 100% Ventil das Ventil sein mit der größten Differenz, so fährt dieses minimal zu, sodass Bedingung 100% Ventil nicht mehr erfüllt ist: Was passiert? Es dürfen nur noch neg. Differenzen korrigiert werden.

Und thats it! Dieses Vorgehen werkelt tatsächlich schon so vor sich hin. Ich hoffe ich konnte das einigermaßen verständlich erklären. Vielleicht kann einer von euch dieses Vorgehen/meine Idee für sich nutzen. Vielleicht aber auch nicht ;-) Jedenfalls ist das aktuell die Lösung unseres Problems.

Achja: Auch wenn der Zulauf schwankt, was er tut, so ist das bei diesem Vorgehen egal, da die Differenzen miteinander verglichen werden und so der Zulauf nicht wichtig ist.


----------



## Blockmove (5 Dezember 2022)

xEs1710 schrieb:


> Mir wird mitgeteilt, dass der Zulauf wie folgt aufgeteilt werden soll:
> Q1: 15% (vom Zulauf); Q2: 20%; Q3: 50% und Q4: 15%.
> -> Das einfache Stellen der Ventile auf diese Vorgaben führt zu ganz falschen Durchflüssen.


Warum?
Auf welcher Basis legt das übergeordnete System die Sollwerte für die Stränge fest?
Wenn die Sollwerte nicht passen, dann sollte das übergeordnete System die Sollwerte doch anpassen.
Das ist doch erstmal die grundlegende Funktion einer Regelung.
Funktioniert das schon nicht, wie willst du dann vernünftig regeln?


----------



## xEs1710 (5 Dezember 2022)

Blockmove schrieb:


> Warum?
> Auf welcher Basis legt das übergeordnete System die Sollwerte für die Stränge fest?
> Wenn die Sollwerte nicht passen, dann sollte das übergeordnete System die Sollwerte doch anpassen.
> Das ist doch erstmal die grundlegende Funktion einer Regelung.
> Funktioniert das schon nicht, wie willst du dann vernünftig regeln?


Das ist doch einfach nicht das Problem! Ich brauchte einen Verteiler! Mir ist völlig gleich was der Sollwert über alle Stränge ist. Ich verstehe einfach nicht warum du dich da so dran aufhängst.

Die Zulauf ist innerhalb weniger Sekunden ausgeregelt - das wird so schnell angepasst, dass ich mit den Ventilen machen (ausser alle schließen natürlich..!) kann was ich will. Da sind die 1000L/h +- 10L/h fast wie festgenagelt.


----------



## Thomas_v2.1 (5 Dezember 2022)

Du müsstest aber schon eine einigermaßen konkrete Anwendung beschreiben. Bei Heizkreisverteilern ist das Problem mit der Beeinflussung auch vorhanden, aus dem Grund gibt es eben auch diverse hydraulische Schaltungen die je nach Einsatzfall das Problem umgehen. Wenn das so einfach zu beheben wäre, würde man auch eine Pumpe im Vorlauf am Wärmeerzeuger verwenden, und dann alle Abgänge mit Ventilen in Drosselschaltung.


----------



## Onkel Dagobert (5 Dezember 2022)

xEs1710 schrieb:


> .. Die Widerstände ändern sich nicht permanent und somit ist das akzeptabel. Mein Problem hierbei ist nur, dass ich im Vorfeld nicht weiß wie hoch die Widerstande sind und ich mir so nicht einfach die Ventilstellung ausrechnen könnte. Was ich eigentlich hiermit sagen wollte: Wenn ich 5 Ventile habe und alle bei 100%, dann fließen heute dort 5 verschiedene Durchflüsse.
> Nächsten Monat würden hier bei der selben Ventilstellung 5 andere Durchflüsse anstehen...


Das ist das Problem. Um dieses zu beheben, hat man vor hunderten von Jahren z.Bsp. den PID-Regel-Algorithmus kreiert. Da man aber im Vorfeld nicht weiß, wie hoch z.Bsp. "die Widerstände sind", muss man diese bzw. die eigentliche Regelgröße messen. Ohne Regelgröße --> keine Regelung! Der "Strang-Widerstand" ist bei deiner Betrachtung eine Störgröße, die der Regler ausregeln muss. Die eigentliche Regelgöße ist z. Bsp. die Vorlauftemperatur, welche dann aber auch gemessen werden muss. Eine Regelung besteht immer aus einem Prozesswert bzw. einer Regelgröße und einem Stellglied. Dazwischen liegt die Regelstrecke. Bei deiner Betrachtung hast du bisher nur x Stellglieder.


----------



## Holzmichl (5 Dezember 2022)

@xEs1710
Entschuldige, dass ich nochmal reingrätsche.
Dein hydraulischer Fall sieht genau so aus, als hätte man bei der Auslegung den "Fehler" begangen, das Regelventil im Vorlauf, also vor allen Verbrauchern=Leitungswiderständen zu schalten.
Wenn man das Regelventil im Rücklauf oder von mir aus vor dem freien Auslauf schaltet, hat man den Vorteil, dass jeder Verbraucher den kompletten Differenzdruck der Anlage bekommt. Dann sind auch die Beeinflussungen der einzelnen Ventile zueinander erheblich geringer und vor Allem auch das Verhältnis zwischen den Strängen nahezu gleich, wenn die Stränge selbst ausgeregelt sind und alle gleichzeitig auffahren.

Was passiert hydraulisch, wenn du das Regelventil im Zulauf anordnest:
Dein Regelventil beeinfluss nicht nur den Durchfluss, sondern auch erheblich den Druckverlust von der Zuleitung zum Strang.

Bei Anordnung als erster "Verbraucher" im Strang bekommt der Strang selbst nicht nur einen Bruchteil des eigentlich anstehenden Differenzflusses ab, sondern auch dein Ventil hat eine in der Praxis eher progressive statt lineare Kennlinie. Bei kleiner Öffnung hast Du eine Art Strahlwirkung in den Strang, da das "Wasser" am Regelventil mit hohem Druck anliegt und dahinter kein Druck mehr ansteht.
Bildlich: Gartenschlauch, den man am Ende mit dem Daumen zuhält/stark verengt mit voll aufgedrehtem Hahn (Ventil = Daumen im Vorlauf) im Vergleich zum nur halb aufgedrehten Hahn (Ventil = Daumen im Rücklauf).

Wenn Du eine Anordnung der Regelventile im Rücklauf hättest, wären die ganzen Regelungs-Spielchen, die Du hier beschreibst erheblich einfacher. Vielleicht kannst Du ja für eine nachfolgende Anlage hierauf Einfluss nehmen.


----------



## xEs1710 (6 Dezember 2022)

Onkel Dagobert schrieb:


> Das ist das Problem. Um dieses zu beheben, hat man vor hunderten von Jahren z.Bsp. den PID-Regel-Algorithmus kreiert. Da man aber im Vorfeld nicht weiß, wie hoch z.Bsp. "die Widerstände sind", muss man diese bzw. die eigentliche Regelgröße messen. Ohne Regelgröße --> keine Regelung! Der "Strang-Widerstand" ist bei deiner Betrachtung eine Störgröße, die der Regler ausregeln muss. Die eigentliche Regelgöße ist z. Bsp. die Vorlauftemperatur, welche dann aber auch gemessen werden muss. Eine Regelung besteht immer aus einem Prozesswert bzw. einer Regelgröße und einem Stellglied. Dazwischen liegt die Regelstrecke. Bei deiner Betrachtung hast du bisher nur x Stellglieder.


Wer sagt denn dass ich keine Regelgrößen habe? Nein, es muss nicht der Widerstand, sondern der Durchfluss ausgeregelt werden. Und letztendlich kommt beides aufs gleiche hinaus. 
Ich messe in jedem Strang den Durchfluss, die Temperatur und noch ein paar mehr wilde Sachen. Aber für mich und den Kunden zählt hier nur der Durchfluss. Und die Lösung meines Problems habe ich gepostet. Der Kunde möchte in Zukunft nicht länger als 30 Sekunden dafür benötigen, die Programmierung von 4 Strängen auf 20 Strängen zu ändern. Und das klappt nicht so einfach mit Jahrhundert alten PID Reglern ;-)

Meine Aufgabe war lediglich vorhandenen Durchfluss in der Zuleitung aufzuteilen. Dazu habe ich Stell-Ventile NACH den Verbrauchern in jedem Strang. In der großen Zuleitung sitzt eine Pumpe, kein Regelventil. Aber das habe ich doch alles schon geschrieben....

Ich habe KEINE Heizung, keine Lüftungsanlage, keinen Mähdrescher! Ich habe die Aufgabe einen Verteiler zu programmieren. Wie die erste Anlage aussieht, hatte ich mal dargestellt. Zitiere ich gleich nochmal. 
Mit mehr kann ich nicht arbeiten. Veränderungen an der Anlage sind nicht drin.
Ich finde das so interessant, dass ihr mir sagt, dass das nicht funktionieren kann :-D Aber es werkelt sehr gut vor sich hin.


----------



## xEs1710 (6 Dezember 2022)

Holzmichl schrieb:


> @xEs1710
> Entschuldige, dass ich nochmal reingrätsche.
> Dein hydraulischer Fall sieht genau so aus, als hätte man bei der Auslegung den "Fehler" begangen, das Regelventil im Vorlauf, also vor allen Verbrauchern=Leitungswiderständen zu schalten.
> Wenn man das Regelventil im Rücklauf oder von mir aus vor dem freien Auslauf schaltet, hat man den Vorteil, dass jeder Verbraucher den kompletten Differenzdruck der Anlage bekommt. Dann sind auch die Beeinflussungen der einzelnen Ventile zueinander erheblich geringer und vor Allem auch das Verhältnis zwischen den Strängen nahezu gleich, wenn die Stränge selbst ausgeregelt sind und alle gleichzeitig auffahren.
> ...


Schau nochmal die Skizze:


----------



## xEs1710 (6 Dezember 2022)

Ist die Anordnung deiner Meinung nach so OK?


----------



## Plan_B (6 Dezember 2022)

Und was spricht jz dagegen, jeweils den Strang mit dem grössten Sollwert auf 100% zu setzen und die anderen nachzuregeln?
Von mir aus auch mit einer Vorsteuerung entsprechend dem Verhältnis der Sollwerte.


----------



## Thomas_v2.1 (6 Dezember 2022)

Wie wird die Hauptpumpe geregelt, gibt es da keinen Durchflussmesser? Was ist das für ein Pumpentyp?


----------



## Heinileini (6 Dezember 2022)

Plan_B schrieb:


> Und was spricht jz dagegen, jeweils den Strang mit dem grössten Sollwert auf 100% zu setzen und die anderen nachzuregeln?


Vielleicht könnte ein anderer Strang mit einem kleineren "Widerstand" derjenige sein, der sich mit 100% "StellGrösse" zufrieden geben könnte, obwohl er sich laut SollwertVorgabe nicht in den VorderGrund gedrängt hat?


----------



## ducati (6 Dezember 2022)

xEs1710 schrieb:


> Der Kunde möchte in Zukunft nicht länger als 30 Sekunden dafür benötigen, die Programmierung von 4 Strängen auf 20 Strängen zu ändern. Und das klappt nicht so einfach mit Jahrhundert alten PID Reglern ;-)


Das kann der Kunde vergessen 🤣
Selbst ein einzelner PI Regler ist nicht in 30 Sekunden eingestellt.
Schwatz dem Kunden doch ne KI auf. Die wird das schon machen 🤷‍♂️


----------



## Thomas_v2.1 (6 Dezember 2022)

Was versteht der Kunde denn unter "verschiedene Komponenten"? Das müsste man auch definieren, also grundsätzlich ob es sich um ein geschlossenes oder offenes System handelt.


----------



## manni199 (6 Dezember 2022)

Hallo zusammen

Ich habe so eine Mengenverteilung schon einmal umgesetzt.
Es handelte sich um eine Grundwassersanierung, bei der aus 12 Brunnen kontaminiertes Wasser zu einer Reinigungsanlage gefördert wurde.
Die Summe der Wassermenge lag bei 0-160m^3/h, im Normalbetrieb so zwischen 60-160m^3/h.
Die Summe der Fördermenge hat sich nur geändert, wenn Brunnen zu oder abgeschaltet wurden.
Oder bei Störungen und Wartungen, oder auch wenn die Ergiebigkeit der Förderbrunnen nachlies.
All das musste das SPS-Programm ausgleichen.

Auf der Anlage wird das Wasser zuerst durch vier parallele Kiesfilter geleitet um gelöstes Eisen zu entfernen. Dahinter sind zwei Gruppen mit Aktivkohle geschaltet, um die Schadstoffe letztendlich aus dem Wasser zu entfernen.

Aufgabe war es unter anderem alle vier Kiesfilter gleichmäßig zu beschicken.
Hierzu ist vor jedem Kiesfilter ein Regelschieber (SB1, SB6, SB11 und SB16) mit Stellungsrückmeldung geschaltet, also ähnlich wie hier die Regelventile.
Die Kiesfilter setzen sich mit der Zeit immer mehr zu, und bauen einen Gegendruck auf. Das geschieht nicht ganz gleichmässig, so das über die Zeit immer wieder nachgeregelt werden muss.
Speziell wenn ein Kiesfilter rückgespült wird, ist der Strömungswiderstand für dieses Filter deutlich niedriger als das der anderen Filter.
All das musste die Regelung abfangen und ausregeln.

Die Verteilung in dieser Anlage erfolgte stets gleichmäßig, also 25% des Zulaufs für jedes Kiesfilter.
Für die Regelung habe ich einen PI-Regler als Stellungsregler von Siemens verwendet (FB41 Cont_C hiess der glaub ich).

Die Summe der Zulaufmenge habe ich einfach aus der Summe der einzelnen Kiesfilter errechnet. Hat man ein MID im Zulauf das die Summe gleich anzeigt, um so besser.

Einen Regelschieber habe ich immer auf 100% gestellt.
Zum Einen um einen möglichst geringen Durchflusswiderstand an den Schiebern zu erhalten.
Aber es gibt einen weiteren Grund. Werden alle Schieber geregelt so ist es denkbar, das sich eine gleichmäßige Verteilung einstellt, wenn alle Schieber relativ weit geschlossen sind. Dann müssen alle Förderpumpen immer mehr Energie aufwenden, um die Fördermengen zu gewährleisten.
Hierzu habe ich das Kiesfilter 1 vorgewählt, wenn kein Filter vorgewählt ist (z.B. bei SPS Neustart).
Wichtig, es darf immer nur ein Filter gleichzeitig vorgewählt sein.
Bei mir spielte es keine Rolle welches Filter zuerst vorgewählt wird, weil ja alle Filter 25% des Zulaufs erhalten sollten.
Beim in diesem Thread genannten Fall würde ich ggfs. das Regel-Ventil zu 100% öffnen (also vorwählen), das die grösste Menge durchlassen soll.
Natürlich nur beim Start der SPS, denn im Regelbetrieb muss die Steuerung den Regelschieber selber finden (dazu bitte weiter lesen).
Dazu hab ich den Regler in Hand gestellt, und den Handstellwert am Regler auf 100% gesetzt. Dann fährt der Regelschieber des vorgewählten Kiesfilters auf die obere Endlage (100%).
Das war für mich am einfachsten.
Die Stellungsregler für die Regelschieber der Filter 2, 3 und 4 habe ich dann mit dem Sollwert 25% (der Zulaufmenge) für die Regelung freigegeben.
Ich habe einen einfachen PI-Regler verwendet.

Befindet sich ein Regelschieber der Kiesfilter 2, 3, oder 4 für 10min in der oberen Endlage (100%), so wird dieses Kiesfilter vorgewählt.
Nehmen wir an es ist Filter 3. Dann wird ab diesem Zeitpunkt Filter 1, 2 und 4 geregelt. Der Regelschieber vom Kiesfilter 3 ist zu 100% geöffnet.
Die Überwachungszeit von 10min wird erneut gestartet. Die Überwachungszeit läuft jetzt nur an, wenn einer der Regelschieber 1, 2 oder 4 in der oberen Endlage (100%) steht.
Die Steuerung findet immer sehr schnell den Filter mit dem höchsten Durchlasswiderstand, und setzt den zugehörigen Regelschieber auf 100%.
Das ganze Konzept hat super funktioniert, und läuft auch heute noch ohne das ich irgendwann mal Klagen vom Kunden gehabt hätte.

Für die Regelschieber habe ich eine Hysterese von +-1% festgelegt. Der Regelschieber wird nur bewegt wenn der Stellbefehl vom Regler den Bereich von +-1% um die aktuelle Stellung verlässt.

So wie sich das hier liest könnte mein Regelkonzept in dem hier genannten Fall auch funktionieren, denke ich.
Anbei hänge ich mal ein Fliessbild aus dem kleinen SCADA System, über das die Anlage überwacht wurde.

Das SPS Programm hat übrigens noch einen Haufen weiterer Funktionen wie das automatische Rückspülen der Kiesfilter, die Steuerung/Regelung der 12 Förderbrunnen, usw.

Vielleicht hilfts.

manni199


----------



## Plan_B (6 Dezember 2022)

Heinileini schrieb:


> Vielleicht könnte ein anderer Strang mit einem kleineren "Widerstand" derjenige sein, der sich mit 100% "StellGrösse" zufrieden geben könnte,


Meine Annahme ging blauäugig von gleichen Querschnitten aus.
Jupp, dann brauchts natürlich noch ne Normierung.
Und Druck/Durchfluss=Widerstand.


----------



## Thomas_v2.1 (6 Dezember 2022)

@manni199 
Du hast ein offenes System, das verhält sich anders als ein geschlossenes System. Da gibt es durch Rückstau zwar auch eine leichte gegenseitige Beeinflussung, aber das ist kaum ein Problem. Ich habe sowas schon etliche Male z.B. für Filtrationsanlagen auf Kläranlagen programmiert.


----------



## xEs1710 (7 Dezember 2022)

manni199 schrieb:


> Hallo zusammen
> 
> Ich habe so eine Mengenverteilung schon einmal umgesetzt.
> Es handelte sich um eine Grundwassersanierung, bei der aus 12 Brunnen kontaminiertes Wasser zu einer Reinigungsanlage gefördert wurde.
> ...


Vielen Dank! Ich habe andere Anlagen vor der Brust, aber im Grunde ist es das selbe! Du hattest in etwa die selben "Herausforderungen". Ich denke auch, dass Deine Herangehensweise ebenfalls funktionieren würde.

Inwieweit nehmen die PI-Regler gegenseitig Einfluss? Hattest du hier Schwierigkeiten?

Ich dachte schon ich bin mit meiner Aufgabenstellung gänzlich alleine :-D


----------



## manni199 (7 Dezember 2022)

xEs1710 schrieb:


> Inwieweit nehmen die PI-Regler gegenseitig Einfluss? Hattest du hier Schwierigkeiten?


Da hab ich jetzt nix schlimmes in Erinnerung.
Bei meiner Anlage war die Geschwindigkeit des Ausregelns war auch sekundär.
Die Fördermengen in den 12 Brunnen wurden immer innerhalb von wenigen Sekunden ausgeregelt.
Die Mengenverteilung in den vier Kiesfilter hab ich relativ träge gemacht.
Nicht zuletzt auch weil so ein E-Schieber etwas Zeit benötigt seine Zielstellung zu erreichen.
Wenn ich mich recht entsinne, dann benötigten sie von 0% auf 100% ca. 20s.
Somit sollte ein Stellbefehl zuverlässig beendet werden bevor ein neuer Befehl kommt.
Auch das ganze System muss soviel Zeit haben, das es eine Chance hat zur Ruhe zu kommen.

Ich glaube es war so:
Stellbefehle werden erst ausgeführt, wenn die Zielposition ausserhalb der Hysterese von +-1% der aktuellen Stellung liegt. Das zusammen mit einem langsamen Regler hat dazu geführt, das die E-Schieber relativ selten bewegt wurden. Manchmal über Tage nur ein oder zwei mal.
Ausserdem hat es dafür gesorgt, das selten mehr als ein E-Schieber gleichzeitig bewegt wurde.

Auch hilfreich ist folgender Effekt:
Fliesst durch Kiesfilter 1 zu viel Wasser, so fliesst in den anderen Kiesfiltern zu wenig Wasser.
Beschliesst die Regelung den E-Schieber vor Kiesfilter 1 etwas zu schliessen, so fliesst anschliessend sofort auch etwas mehr durch die anderen drei Kiesfilter. Die Regelungen unterstützen sich also eher gegenseitig, als das sie sich stören.

Man muss bei der Inbetriebnahme etwas mit den Einstellmöglichkeiten ‚spielen‘, um eine stabile und optimale Regelung hinzubekommen.
(P-Anteil, I-Anteil, Hysterese Schieberstellung)


----------



## ducati (8 Dezember 2022)

Auf Volumenströme, Massenströme oder Strömungsgeschwindigkeiten zu regeln versuch ich nach Möglichkeit immer zu vermeiden. Bei den Sensoren sind so gut wie nie die Einlauf und Auslaufstrecken eingehalten... Das ist eh mehr Schätzen als Messen.
Hab hier grad nen Sensor, da fordert der Hersteller 45* Rohrdurchmesser als Einlaufstrecke nach Ventil/Drosselklappe...


----------



## de vliegende hollander (8 Dezember 2022)

Ich habe mal als Retrofit eine BOGE mit Dampfturbine angetriebebe Turbokompresor in Betrieb gesetzt.
Das war eine schöne Aufgabe.
Sie hatte eine Grunddrehzahl und daoben sein Arbeitsbereich. Druckgeregeld. Ausregeln des Luftdrucks.


----------



## xEs1710 (9 Dezember 2022)

manni199 schrieb:


> Da hab ich jetzt nix schlimmes in Erinnerung.
> Bei meiner Anlage war die Geschwindigkeit des Ausregelns war auch sekundär.
> Die Fördermengen in den 12 Brunnen wurden immer innerhalb von wenigen Sekunden ausgeregelt.
> Die Mengenverteilung in den vier Kiesfilter hab ich relativ träge gemacht.
> ...


Okay super. Meine Ventile brauchen sogar 90 Sekunden. Alles sehr sehr träge. 

Mein Problem bei den PI Reglern ist halt, dass ich die Inbetriebnahme gar nicht mache, sondern der Kunde. Und wenn der Bock hat aus 4 Strängen 20 zu machen, dass soll das möglichst einfach funktionieren. Und deshalb fahre ich immer nur maximal 1 Ventil zur gleichen Zeit und nutze eben auch den Effekt, dass sich alle gegenseitig unterstützen 👍


----------



## Heinileini (9 Dezember 2022)

xEs1710 schrieb:


> Meine Ventile brauchen sogar *90 Sekunden*. Alles sehr sehr träge.


Von Anschlag (0%) zu Anschlag (100%) 90 Sekunden?


xEs1710 schrieb:


> Mein Problem bei den PI Reglern ist halt, dass ich die Inbetriebnahme gar nicht mache, sondern der Kunde. Und wenn der Bock hat aus 4 Strängen *20* zu machen, dass soll das möglichst einfach funktionieren. Und *deshalb fahre ich immer nur maximal 1 Ventil zur gleichen Zeit* und nutze eben auch den Effekt, dass sich alle gegenseitig unterstützen 👍


Was heisst "deshalb fahre ich immer nur maximal 1 Ventil zur gleichen Zeit" konkret? Solange 1 der 20 Ventile in Bewegung ist, werden die StellGrössen der 19 übrigen Ventile festgehalten? Die 19 übrigen Regler regeln munter weiter, jedoch werden Änderungen der StellGrössen, die sich ergeben, nicht an die entsprechenden Ventile ausgegeben?

Die 90 s pro Ventil werden sicherlich nicht ständig bzw. eher ausnahmsweise ein Thema sein. Aber 20 bzw. 19 mal viele s entsprechend im ExtremFall (fast) 30 Minuten? Und die Mehrzahl der Regler sooo lange irgendwie an ihrer Tätigkeit zu hindern, das erscheint mir nicht wirklich im Interesse einer (oder mehrerer) Regelung(en) zu sein. Der 1 Regler, der jeweils nur wirksam werden kann, soll also, während er dann doch wirksam werden kann, den NachholBedarf von so vielen Minuten ausbügeln? Ich verstehe es nicht bzw. ich kann mir das nicht als hilfreich vorstellen, eine insgesamt brauchbare Regelung zu realisieren. 

Solange Du mit nur 3 oder 4 Reglern bzw. Strängen arbeitest, mögen die negativen Effekte, die Du Dir einfängst, ja noch erträglich sein.
Aber wenn der Kunde wirklich eines Tages auf 20 Stränge ausbauen will?  
Mir wäre es nicht geheuer, aus einem erfolgreichen Betrieb mit 3 Strängen auf ein ebenso gutes Verhalten mit 20 Strängen zu schliessen (zu "extrapolieren"), wenn wirklich immer nur die Regelung eines einzigen Stranges aktiv ist, während alle übrigen auf ihren Einsatz warten müssen.

Ich sehe auch nicht, wie unter diesen Umständen der "Effekt, dass sich alle gegenseitig unterstützen" genutzt werden soll oder kann, geschweige denn, überhaupt eintreten wird.


----------



## Thomas_v2.1 (9 Dezember 2022)

Je mehr Stränge es gibt, desto weniger gegenseitige Beeinflussung gibt es doch. Wenn du deine 1000 l/h auf 20 Stränge aufteilst, dann hat einer wenn es gleichmäßig aufgeteilt ist noch 50 l/h. Und selbst wenn dieser eine Strang dann komplett schließt, teilen sich diese zusätzlichen 50 l/h auf die anderen 19 Stränge mit dort +2,6 l/h auf.


----------



## Heinileini (9 Dezember 2022)

Thomas_v2.1 schrieb:


> Je mehr Stränge es gibt, desto weniger gegenseitige Beeinflussung gibt es doch.


Das sehe ich genauso. Es ist kein "Effekt, dass sich alle gegenseitig unterstützen", sondern der Effekt, dass eine Änderung in einem von vielen Strängen in den anderen Strängen nur entsprechend geringfügig - weil auf so viele Stränge verteilt - aus wirken wird.


----------



## Plan_B (11 Dezember 2022)

@xEs1710
Da Du das ganze maximal adaptiv haben willst:

- wenn Du den Vordruck als Istwert hast, könntest Du so etwas wie einen MPP-Algo programmieren, der auf den niedrigsten Vordruck optimiert, bei dem noch alle Strangsollwerte eingehalten werden.

- ohne Vordruck kannst Du das analog aus den Stellwerten der Strangventile ableiten. Ist keines bei 100%, schaltest Du einen Störwert auf, der alle Strangventile um einen kleinen Betrag weiter öffnet. Und das repetiv, bis entweder die Strangsollwerte unterschritten oder ein Strang 100% Stellwert erreicht.

Das funzt IMHO aber nur schlecht, wenn Du immer nur ein Ventil fahren lässt.
Im Prinzip wiederhole ich aber nur, was ich viel weiter oben schon vorgeschlagen habe.


----------



## xEs1710 (12 Dezember 2022)

Heinileini schrieb:


> Von Anschlag (0%) zu Anschlag (100%) 90 Sekunden?
> 
> Was heisst "deshalb fahre ich immer nur maximal 1 Ventil zur gleichen Zeit" konkret? Solange 1 der 20 Ventile in Bewegung ist, werden die StellGrössen der 19 übrigen Ventile festgehalten? Die 19 übrigen Regler regeln munter weiter, jedoch werden Änderungen der StellGrössen, die sich ergeben, nicht an die entsprechenden Ventile ausgegeben?
> 
> ...


90 Sekunden - Ja.
Der Rest: Nein. Manchmal glaube ich ihr lest gar nicht was ich alles geschrieben hatte :-D Ich nutze keinen PI-Regler! Ich hatte weiter vorne irgendwo "meine Lösung" beschrieben. Klappt sehr gut - etwa so wie @manni199 das Verhalten seiner Anlage beschrieben hat.

Oft haben die Ventile selbe Differenzen und so fahren dann auch mehrere Ventile gleichzeitig. Diesen "Extremfall" 30 Minuten gibt es nicht. Wenn es hoch kommt, sind das 10 Minuten bis zur fertigen Stellung mit passenden Durchflüssen - WENN alle Ventile bei 0 starten (Fast egal wie viele Stränge vorhanden).
Und danach sind das alles nur minimale Anpassungen und absolut zeit-un-kritisch.


----------



## xEs1710 (12 Dezember 2022)

Plan_B schrieb:


> @xEs1710
> Da Du das ganze maximal adaptiv haben willst:
> 
> - wenn Du den Vordruck als Istwert hast, könntest Du so etwas wie einen MPP-Algo programmieren, der auf den niedrigsten Vordruck optimiert, bei dem noch alle Strangsollwerte eingehalten werden.
> ...


Moin. So wie du "ohne Vordruck" beschrieben hast, mache ich das auch. Jedenfalls die Idee dahinter ist die selbe. Ich öffne einfach jedes Ventil gleichzeitig um 1% und schaue wieder auf die Max-Differenzen. 



Thomas_v2.1 schrieb:


> Je mehr Stränge es gibt, desto weniger gegenseitige Beeinflussung gibt es doch. Wenn du deine 1000 l/h auf 20 Stränge aufteilst, dann hat einer wenn es gleichmäßig aufgeteilt ist noch 50 l/h. Und selbst wenn dieser eine Strang dann komplett schließt, teilen sich diese zusätzlichen 50 l/h auf die anderen 19 Stränge mit dort +2,6 l/h auf.


Genau diesen Effekt nutze ich. Nur ist das so, wenn der Kunde Stränge dazu nimmt, erhöht er den Zulauf um den jeweiligen Durchfluss für diesen Strang.


----------

