Forum: Mikrocontroller und Digitale Elektronik PID-Regler Einstellung bei langer Totzeit


von Marie (Gast)


Angehängte Dateien:

Lesenswert?

Hallo,

ich habe ein Problem bezüglich der richtigen Parametrierung eines 
Universalreglers (UR4848) ohne externe Programmierung. Und zwar soll ein 
Prüfstand, besser gesagt eine Schraube aufgeheizt werden. Dafür stehen 
zwei Heizmanschetten zur Verfügung, welche allerding in einem gewissen 
Abstand zur Schraube verbaut werden mussten. Neben diesen Manschetten 
sind Thermoelemente angebracht, die an jeweils einem Regler 
angeschlossen und somit für die Steuerung der Wärmezufuhr zuständig 
sind. Zusätzlich habe ich an eine Schraube unanbhängige Thermoelemente 
angebracht, um zu überprüfen, welche Temperatur wirklich bei der 
Schraube ankommt. Es war natürlich nicht die, die ich als Sollwert 
vorgegeben habe (durch den langen Weg von den Manschetten bis zur 
Schraube). Nun ist es mein Ziel zwei Thermoelemente an der Schraube für 
die Steuerung zu verwenden, da ich ja so die wahre Temperatur der 
Schraube steuern kann. Jedoch habe ich durch die lange Totzeit, also bis 
sich eine Temperaturänderung an der Schraube einstellt, eine starke und 
zu lange Aufheizung der Manschetten und so auch ein starkes 
Überschwingen etwas später an der Schraube (Siehe angehängtes Diagramm, 
die Temperaturen am Heizelement zeigt die wahre Temperatur der 
Manschetten, die Position Schraubenkopf- und Ende sollen für die 
Steuerung zuständig sein)
Ich bin jetzt etwas überfragt, mit welchen Parametern des Reglers ich 
anfangen soll das ganze einzustellen... Was kann ich eigentlich direkt 
mit dem Proportionalband einstellen? und Ist ein PI-Regler für eine 
lange Totzeit besser?

Es tut mir leid, wenn das alles etwas undruchsichtig wirkt, aber Theorie 
und Praxis sehen dann doch etwas verschieden aus... Ich hoffe ihr 
versteht mein Problem und könnt mir vielleicht einen Ansatz geben, wie 
ich jetzt am besten vorgehen kann.

Vielen Dank

von Florian H. (flowbi)


Lesenswert?

Hallo Marie,
Wenn ich das richtig sehe bist du in der Struktur des Reglers auf einen 
klassischen PID beschränkt. In dem Fall solltest du auf jeden Fall ein 
Thermoelement an der Schraube für das Feedback nutzen. PI sollte 
vermutlich auch reichen, hat aber meiner Ansicht nach keine Vorteile, 
außer dass du einen Parameter weniger "finden" musst.
Wenn du Zugang zu Matlab mit Simulink hast würde ich dir empfehlen eine 
Sprungantwort auf zu nehmen und das System zu identifizieren und dann 
entsprechend in Matlab die passenden Reglereinstellungen vorab aus zu 
tarieren. Das kann enorm viel Zeit sparen.
Auf den ersten Blick würde ich sagen:
Lass den D-Teil erst mal weg wenn du von Hand einstellst. Suche mal nach 
Ziegler und Nichols. Sieht für mich aus als ob du das gaanze langsamer 
aufheizen musst, also alle Parameter mal runter schrauben, vor allem den 
I-Anteil.

Gruß Flo

von gästle2 (Gast)


Lesenswert?

Marie schrieb:
> Ich hoffe ihr
> versteht mein Problem und könnt mir vielleicht einen Ansatz geben, wie
> ich jetzt am besten vorgehen kann.

Geeignet wäre dieser Regler hier:

https://de.wikipedia.org/wiki/Regelkreis#Smith-Pr.C3.A4diktor

Aber sicher schon etwas anspruchsvoller.

von Marie (Gast)


Lesenswert?

oha das klingt allerdings etwas anspruchvoll und ich bin mir nicht 
sicher, ob ich das aus einem normalen Universalregler rausbekommen 
kann... :/

Gibt es vielleicht noch eine andere Möglichkeit mit Anpassung von 
Proportionalband, Integralzeit und Differntialzeit?
Die Augangsleistung liegt schon nur bei 25%

von gästle2 (Gast)


Lesenswert?


von ./. (Gast)


Lesenswert?

Einstellvorschrift ganz einfach:

I-Anteil und D-Anteil auf 0.
Den P-Anteil solange verringern bis das Ueberschwingen weg ist.
Dann "ein wenig" I-Anteil damit der Sollwert zuverlaessig erreicht wird.

Fertig [x]

von Bastian W. (jackfrost)


Lesenswert?

Hi,

welche Ausführung des UR4848 hast du ? Kannst du mit den beiden Reglern 
einen Kaskade bauen ?
Also 0-100 % über 4-20 mA als Sollwert für den Folgeregler als 20 - 160 
°C ?
Siehst du den Stellgrad von dem Regler ?
Wie lange ist der bei dem Wert der Begrenzung die du eingegeben hast ?
Wenn der Regler
Ist das Diagramm bereits mit der Begrenzung auf 25 % ?
Wie wird die Leistung der Manschetten geregelt ? Über Relais oder SSRs ?

Evtl kannst du mit einer Kaskade die Regelgüte verbessern so das die 
Maschette früher abkühlt so das du diese Schwinger nicht hast.
Durch die Bregrenzung der Temperatur über die Kaskade, düftest du mit 
der Totzeit weniger Probleme haben.

Gruß JackFrost

von супертроль (Gast)


Lesenswert?

Erstens eine Vorwaertsfunktion definieren :
Heizleistung = funktion (SollTemperatur - Ambient)

Dann parallel noch einen langsamen Integrator. Also

Heizleistung = funktion (SollTemperatur - Ambient) + 
Integrator(Soll-Ist);

von Lurchi (Gast)


Lesenswert?

Die Regelung mit 2 gekoppelten Systemen ist schon trickreich / 
aufwändig, weil die Heizungen nicht jeweils nur auf die eine Seite 
wirken.

Bei dem trägen System wird man schon den kompletten PID Regler 
benötigen. Ohne den D Anteil wird es deutlich langsamer, gerade bei 
hoher Totzeit. Der Nachteil ist halt die aufwändigere Bestimmung der 
Parameter.

Wegen der langen Zeitkonstanten sollte man hier wohl die Sprung- (oder 
alternativ die Impuls-) Antwort(en) messen und dann die Regel-parameter 
weitgehend rechnerisch bestimmen, etwa nach Faustregeln oder auch per 
Simulationssoftware.

Wegen der 2 gekoppelten Systeme wird es noch einmal etwas komplizierter: 
Normal sollte die mittlere Temperatur der langsamere (und damit 
kritische) Fall sein als die Temperaturdifferenz. Entsprechend arbeiten 
für die Auslegung beide Heizungen / Regler parallel und man müssten die 
Antwort für beide Heizungen zusammen nutzen, auch wenn man nachher die 
Heizungen einzeln regelt.

von Marie (Gast)


Lesenswert?

Das Verfahren nach Zieger/Nichols habe ich schon versucht, als ich noch 
mit der alten Steuerung (Thermoelemente bei den Heizmanschetten), 
allerdings habe ich bei dem Regler keinen direkten P-Wert sondern nur 
das Proportionalband und da weiß ich nicht, wie das mit dem P-Wert im 
Verhältnis steht... Auch sonst habe ich so nur eine eine "Sägezahnkurve" 
erhalten... Die Einstellung von Ti unf Td habe ich empirisch 
vorgenommen...

@jackfrost:
Das hier ist der Regler:
http://www.wachendorff-prozesstechnik.de/ur4848

Das mit der Kaskade ist eine gute Idee, allerdings glaube ich nicht, 
dass ich das umsetzen kann... wir haben die Steuerung fertig geliefert 
bekommen mit den zwei Reglern, die bis jetzt unabhängig laufen. Ich habe 
auch schon getestet, ob nur eine von beiden Manschetten ausreicht und 
das scheint so... vielleicht wird es dadurch einfacher. Kann ich nicht 
das rechtzeitige stoppen der Beheizung durch die Regelparameter 
einstellen?
und ja das ist bereits bei 25% Leistung (wird glaube ich über Relais 
gesteuert, ich kann den Wert direkt am Regler definieren), weiterhin war 
Ein Pb-Wert von 10, Ti=27s, Td=8,1s eingestellt (das waren die 
Einstellung von der Regelung davor)

@супертроль:
Wie meinst du das mit der Funktion? Was ist Ambient?

von Marie (Gast)


Lesenswert?

Hallo Lurchi,

ich denke, ich werde morgen einfach mal, wie bereits erwähnt, nur mit 
einer Manschette zu heizen und dadurch keine weiter Einflussgröße zu 
haben.
Dann versuche ich dir Parameter nochmal mit dem Ziegler/Nichols 
verfahren zu bestimmen. Ich würde da folgendermaßen vorgehen:
Ti und Td auf Null setzen da ich so einen P-Regler habe. Was mache ich 
aber mit dem Pb-Wert? In welchem Verhältnis steht der zu Kp?
Dann gebe ich zum Beispiel als Sollwert wieder 80°C vor und nehme die 
Kurve auf und berechne/ bestimme mir daraus Tu und Tg?
Bin ich da auf dem richtigen Weg?

Ich kann halt an diesem Regler irgendwie nur Pb, Ti und Td ändern... und 
bevor ich jetzt anfange irgendwelche Rampen zu "programmieren" oder 
ähnliches wollte ich es so einfach wie möglich halten

Danke schon mal euch allen :)

von Sebastian S. (amateur)


Lesenswert?

Bist Du Dir sicher, dass Du mit einer solchen Konstruktion überhaupt 
glücklich werden kannst?

Hast Du zwischen Schraube und Heizung einen guten Wärmeleiter - kein 
Problem!

Ist Dein Übertragungsmedium aber Luft, so wirst Du immer Probleme haben. 
Vor allem, wenn die Schraube (Wärmeabfuhr) keinen "Laborbedingungen" 
unterliegt.

Eine nichtkonstante Wärmeabfuhr ist "hinter" einem großen 
Wärmewiderstand immer ein Griff in die Sch*****. Das lässt sich auch 
nicht mit einem guten Regler kompensieren.

von Marie (Gast)


Lesenswert?

JA das wird leider ein Problem sein :/
Ich habe zwar alles schon isoliert und es wird auch besser, aber ich 
will und muss es probieren, da es Bestandteil meiner Abschlussarbeit 
ist... und nur so kann man halt wirklich auf die Temperatur der Schraube 
schließen. Wenn ich nach langem probieren zu dem Entschluss komme, das 
es nicht funktioniert kann ich es begründen, aber ich muss eben erstmal 
(fast) alles versuchen. ;)

Ich teste diesen neuen Aufbau quasi und optimiere ihn, soweit es geht.

von Sebastian S. (amateur)


Lesenswert?

Eine Isolation nach "Außen" hin wird Deine Energiebilanz verbessern, ein 
bisschen auch die Reaktion nach innen - wegen der scheinbar größeren 
Heizleistung.
Behalte bei solchen Tricks aber im Auge, dass die Heizung zu heiß werden 
kann, vor allem, wenn Deine Sensoren auf der Schraube liegen und die 
"Eigenwärme" der Heizung, dabei aus den Augen verloren geht. Nicht jede 
Heizung kann sich, durch die Erhöhung des Innenwiderstandes, selbst 
schützen.

von Bastian W. (jackfrost)


Lesenswert?

Es könnte sein das das Proportionalband der Bereich ist bei dem der 
Stellgrad proportional zur Regelabweichung geändert wird.

Bsp. Pd = 10 K Sollwert 80 Istwert 60

Wenn die Regelabweichung größer als das Proportionalband ist gibt der 
P-Anteil 100% aus. Wenn die Regelweichung nur noch 5 K beträgt gibt der 
P-Anteil nur noch 50 % aus.

In dem Fall dürfte der Zusammenhang zwischen Kp und Pd folgender sein:

Wenn du die Heizung früher stoppen willst müsstest du den I-Anteil 
langsamer machen und das Pd vergrößern. Wenn es so wie die Formel von 
oben ist hast du bei einer Regelabweichung von 2,5 K immer noch 25 % vom 
P-Anteil, d.h, erst nachdem du nah am Sollwert bist heizt du weniger da 
erst hier der Stellgrad kleiner wird als die Begrenzung. Was ist denn 
bei t.c. eingestellt ?


Gruß JackFrost

: Bearbeitet durch User
von Marie (Gast)


Lesenswert?

@Sebastian:
Die Temperatur habe ich ständig im Blick und könnte abbrechen, falls es 
zu hoch wird. Das sind in dem Diagramm die Datenreihe Heizelement links 
und rechts


@Jackfrost
ok, der Zusammenhang macht erstmal Sinn, das probiere ich morgen aus.
Bei tc sind 10s nach Werkseinstellung eingestellt

von супертроль (Gast)


Lesenswert?

>Heizleistung = funktion (SollTemperatur - Ambient) +
Integrator(Soll-Ist);


Also. Eine Heizung hat Verluste gegen die Umgebung. Deshalb muss man die 
Umgebungstemperatur kennen. Das nent sich dann "Ambient", wie auch immer 
man auf diesen Begriff kommt. Die Heizleistung ist eine Funktion der 
Temperaturdifferenz zur Umgebung. Im einfachsten Fall ist der 
zusammenhang linear. Eine Gerade durch Null. Dh bei Null 
Temperaturdifferenz muss man nicht heizen. Im Komplizierteren Fall ist 
die Funktion bei hoeheren Temperaturen etwas hoeher. Diese Funktion kann 
und soll man bestimmen. Denn damit kann man die Heizung schon mal 
ansteuern und ist in der Naehe.

von Lurchi (Gast)


Lesenswert?

Die modernen Regler haben meist eine Autotune Funktion. Das ist so etwas 
ähnliches wie der Abgleich nach Zieger/Nichols nur das der Regler das 
Intern macht und ggf. auch etwas besser.

Wegen der 2 Regler die ggf. mehr oder weniger parallel arbeiten, muss 
man aber ziemlich sicher die Parameter noch anpassen. Also erst einmal 
Autotune für jeden der Regler einzeln laufen lassen. Dies sollte 
vermutlich ähnliche Parameter geben. Zur Anpassung an das Zusammenwirken 
dann die Regelverstärkung jeweils halbieren, also den parameter 
Proportional Band verdoppeln - je nach Stärker der Kopplung auch etwas 
weniger als verdoppeln. Die Zeiten für I und D Anteil bleiben 
unverändert.
Alternativ könnte man für den Abgleich jeweils beide Heizungen parallel 
an den Reglern haben und dann nacheinander Abgleichen.

Der Aufbau mit schlechter Kopplung Heizung Probe macht die Regelung 
prinzipbedingt langsam und schwer zu regeln. Da muss man ggf. noch etwas 
dran ändern (andere, ggf. zusätzliche Heizungen). Extra Isolierung macht 
die Regelung oft eher langsamer.

Die Kaskadenregelung wäre wohl eine Verbesserung, löst aber das 
prinzpielle Problem (die lange Totzeit) nicht. Das braucht i.a. Regler 
die dafür vorgesehen sind - einfach 2 normale Regler koppeln geht nicht 
gut, weil dann die Anti-Windup Funktion meist nicht gut funktioniert.

von Marie (Gast)


Lesenswert?

Also ich habe es jetzt hinbekommen. :)

Nach nochmaliger tiefgründiger Auseinandersetzung mit dem Regler konnte 
ich doch tatsächlich nur über die Ausgangsleistung regeln und so eine 
Sprungantwort aufnehmen. Dafür habe ich das Steuerthermoelement am 
Schraubenkopf angebracht und den Temperaturverlauf aufgezeichnet. Ich 
habe 5% vorgegbenen und als sich irgendwann ein stationäres Verhalten 
eingestellt hat, habe ich auf 10% erhöht.
Für die Bestimmung von Proportionalband (bei dem ich mittlerweile auch 
weiß was es ist), Integral- und Differntialzeit habe ich ein Verfahren 
gefunden, was extra für lange Regelstrecken geeignet ist. Dort wird die 
Anstiegsgeschwindigkeit (K/s) und der verwendete 
Ausgangsleistungsbereich im späteren Betrieb berücksichtigt.

meine Ergebnisse waren:
Xp= 18K
Ti=960s
Td=240s

und es funktioniert tatsächlich einwandfrei ohne großes überschwingen 
der Temperatur an der Schraube.

Vielen Dank für eure Hilfe, das hat mich echt weiter gebracht.
Wen die Berechnungen interessieren, ich habe das Buch "Regelungstechnik 
für den Praktiker" von Manfred Schleicher verwendet. Da ist alles super 
erklärt.

von che (Gast)


Lesenswert?


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.