mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik Vorgehensweise Optimierung PID-Parameter


Announcement: there is an English version of this forum on EmbDev.net. Posts you create there will be displayed on Mikrocontroller.net and EmbDev.net.
von Jürgen B. (pumpi)


Bewertung
0 lesenswert
nicht lesenswert
Hallo zusammen,

von einem Kollegen habe ich ein sehr unglückliches Projekt geerbt. Es 
wurde bei einer Altanlage die alte Galettenheizungsregelung durch eine 
PID-Regelung per Siemens SPS ersetzt (Eine Galette ist im Prinzip eine 
rotierende Metalltrommel, die per Induktion beheizt wird. Die Abkühlung 
erfolgt rein passiv, also Heizung aus und warten). Das funktioniert 
soweit aber die Abweichung vom Sollwert beträgt + 1,5 und - 2,5 Grad C, 
Ziel sind max. +-1 Grad C. Das wurde auch mit dem originalen Regler 
erreicht, d.h. die Originalhardware konnte das. Die Siemens-SPS (FB58 
TCONT_CP)steuert die originalen SSR per PWM an. Es kann damit sehr 
schnell aufgeheizt aber nur sehr langsam abgekühlt werden. Die Kollegen 
haben darum schon den Stellgrad auf max. 80% limitiert. Die Galette hat 
3 Heizzonen (vorne, mittig, hinten) und die Temperatur jeder Heizzone 
wird per PT2000 direkt an der drehenden Galette gemessen 
(Datenübertragung der Messwerte per Infrarot, Energieübertragung für das 
Messwertsystem induktiv).

Die Sollwertabweichung + 1,5 und - 2,5 Grad C werden aktuell mit 
folgenden Einstellungen erreicht (LMN: max. Stellgröße, Cycle: 
Regler-Abtastzeit, Break Time: Mindestpausendauer) :

Heizzone hinten
P 4,9
I 2,0
D 0
LMN 80
Break Time 0,2
Cycle 0,09

Heizzone Mitte
P 10,0
I 1,5
D 0
LMN 80
Break Time 0,2
Cycle 0,06

Heizone vorne
P 5,0
I 3,0
D 0
LMN 80
Break Time 0,2
Cycle 0,04

Das Aufheizen von Raum- auf Betriebstemperatur (mit evtl. 
Überschwingern) ist relativ uninteressant, da das Hochfahren der anderen 
Anlagenteile ca. eine 1/2 Tag dauert. Bis dahin sollte sich die 
Galettentemperatur schon lange eingeschwungen haben. Ziel ist es, die 
Reglerparameter zu finden, die zu einem Regelverhalten mit einer max. 
Abweichung von +- 1 Grad C führen.

Zusätzlich Herausforderungen:

1. Die Anlage steht in Ägypten, wir aber sitzen hier in D.
2. Die Anlage ist schon so alt, dass wir auch in unserem Labor keinen 
ähnliche Aufbau Galette, Spulen, SSR, etc. mehr haben.
3. Es ist kein Remotezugriff auf die Anlage möglich

Ich kann also hier in D nichts ausprobieren. Das Positive: Die Anlage 
hängt an einem Prozessleitsystem, das die Temperaturen 1 * pro Sekunde 
mitschreibt. Ich kann also dem Kunden z.B. mitteilen, welche Parameter 
er einstellen soll und mir dann die resultierenden Messwerte des 
Prozessleitsystems zusenden lassen.

Ich weiß, das sind nicht viele Infos aber im Moment ist das alles, was 
ich an Infos habe. Wie geht man in solch einem Fall systematisch vor?

Vielen Dank für eure Hilfe.

Jürgen

von Sebastian S. (amateur)


Bewertung
0 lesenswert
nicht lesenswert
>steuert die originalen SSR per PWM an.
Bist Du sicher?
Heizung und PWM?

von Jürgen B. (pumpi)


Bewertung
0 lesenswert
nicht lesenswert
Hallo Sebastian,

im Siemens-Handbuch zum Baustein TCONT_CP heißt es: "Die Funktion 
PULSEGEN wandelt den analogen Stellwert LmnN durch Pulsbreitenmodulation 
in eine Impulsfolge mit der Periodendauer PER_TM um." Laut Info meiner 
Kollegen wird die Funktion PULSEGEN verwendet. Daraus habe ich auf 
Ansteuerung der SSR per PWM geschlossen. Oder habe ich das falsch 
verstanden?

von Bademeister (Gast)


Bewertung
0 lesenswert
nicht lesenswert
Sebastian S. schrieb:
> Heizung und PWM?

5 Min an und 5 Min aus ist auch irgendwie PWM :-)

von M. K. (sylaina)


Bewertung
0 lesenswert
nicht lesenswert
Jürgen B. schrieb:
> Ich weiß, das sind nicht viele Infos aber im Moment ist das alles, was
> ich an Infos habe. Wie geht man in solch einem Fall systematisch vor?

Öhm...Sprungantwort ermitteln würde ich sagen.

Den P-Wert der mittleren Heizzone finde ich ganz schön heftig, weicht 
doch deutlich von den anderen beiden Positionen ab. Deutet IMO auf eine 
schlechte Isolierung hin oder aber dass die Regelparameter schlecht 
gewählt sind.

Ich würde also bei allen drei Heizzonen z.B. den P-Anteil auf 5 Stellen 
und I und D Anteil auf 0, Break-Time überall gleich (wäre hier 0 
sinnvoll?), Cycle was da halt sinnvoll ist und dann einen Aufheizsprung 
der Anlage abverlangen um aus dem dann entstehenden Verlauf die I- und 
D-Parameter zu ermitteln.

Sebastian S. schrieb:
> Bist Du sicher?
> Heizung und PWM?

Wieso nicht, ist völlig normal. Machen z.B. unsere RTP-Anlage auch so.

: Bearbeitet durch User
von Stephan (Gast)


Bewertung
0 lesenswert
nicht lesenswert
Macht aber bei einer Heizung mMn wenig sinn, da die viel zu träge 
reagiert. Sinnvoller wäre es wohl eine einfache Ein/Aus Strategie.

von Alexxx (Gast)


Bewertung
1 lesenswert
nicht lesenswert
Ich stelle meine Regler intuitiv mit Hilfe der Sprungantwort ein.
(Sollwertsprung+, Halten, Sollwertsprung-). Solange halten, bis sich 
Regler
eingeschwungen hat. Der Sprung muss so moderat sein, dass der Regler 
nach
erträglicher Zeit einschwingen kann)

Prinzipieller Tipp:
- P-Anteil höher machen!
- Überschwinger mit D-Anteil unterdrücken

Da die Abkühlung noch viel lagsamer, als die Erwärmung erfolgt,
bedeutet das, dass du Überschwinger vermeiden musst.
Denn die gibt es sonst genauso im Betrieb!

Deshalb würde ich intuitiv sagen, dass du unbedingt auch einen  D-Anteil 
brauchst damit  beim Aufheizen / Abkühlen schon vor Erreichen des 
Sollwertes gegengesteuert wird.
Dadurch wird auch die Phasenverschiebung der Regelstrecke teilweise 
kompensiert und man kann deshalb den P-Anteil deutlich erhöhen und
die Regelung ist trotzdem stabil ohne Überschwinger.

von M. K. (sylaina)


Bewertung
1 lesenswert
nicht lesenswert
Stephan schrieb:
> Macht aber bei einer Heizung mMn wenig sinn, da die viel zu träge
> reagiert. Sinnvoller wäre es wohl eine einfache Ein/Aus Strategie.

Du glaubst also, du bist schlauer als Ziegler und Co? Natürlich macht 
das auch bei einer Heizung Sinn. PID ist nichts, was man im "Gefühl" 
hat, das ist ja das Tolle daran: Das lässt sich berechnen. Und die 
Sprungantwort hilft dabei enorm.

von Stephan (Gast)


Bewertung
0 lesenswert
nicht lesenswert
M. K. schrieb:
> Du glaubst also, du bist schlauer als Ziegler und Co? Natürlich macht
> das auch bei einer Heizung Sinn.

Ich sicher nicht. Aber frage Dich doch mal warum man im E-Herd die 
Relais hört wenn die Platten an und aus gehen. Vermutlich sind alle 
Hersteller zu blöd da eine PWM zu nutzen. Oder ist es vielleicht doch 
Perlen vor die Säue da eine PWM zu nutzen?  Nicht alles was technisch 
möglich ist, ist auch immer sinnvoll.

von Matthias S. (Firma: matzetronics) (mschoeldgen)


Bewertung
1 lesenswert
nicht lesenswert
Stephan schrieb:
> Aber frage Dich doch mal warum man im E-Herd die
> Relais hört wenn die Platten an und aus gehen.

Ganz schlechtes Beispiel, denn alle Induktionsherde z.B. benutzen PWM, 
wenn auch im Sekundenbereich, um die Platten zu pulsen. Selbst mein 
kleiner konventioneller E-Herd macht nach dem Einbau der neuen 
Elektronik PWM mit etwa 2 Sekunden Periodendauer.

Relais klacken höchstens noch im Backofen.
Ich stimme Alexxx zu, der D Anteil sollte höher gesetzt werden und 
dementsprechend auch P.

: Bearbeitet durch User
von Stephan (Gast)


Bewertung
0 lesenswert
nicht lesenswert
Matthias S. schrieb:
> Ganz schlechtes Beispiel, denn alle Induktionsherde z.B. benutzen PWM,

Sehr komisch. Das sind Spulen....
Da machen die rückständigen Ing. bei AEG in meinem Ceranfeld klick 
klack. :-)

von Nick M. (muellernick)


Bewertung
-1 lesenswert
nicht lesenswert
Ein I-Anteil bei so einem langsamen Prozess erscheint mir sinnlos. Der 
akkumuliert immer weiter und führt zu Überschwingern.
Stichwort "rollup".

von Bernd K. (prof7bit)


Bewertung
1 lesenswert
nicht lesenswert
Man kann einen PID-Regler von Hand einstellen wenn man etwas Übung damit 
hat. Dann schaut man auf die Sprungantwort und weiß welchen der 3 
Parameter man erhöhen oder senken muss damit es besser wird.

Um das zu trainieren ist es hilfreich sich ein Tool zu basteln das so 
eine ähnliche Regelstrecke simuliert und dann 3 Schieberegler und die 
Sprungantwort in Echtzeit plotten so daß man sehr schnell eine 
Intuition dafür bekommt wie sich P, I und D auswirken, dann mal ne 
Stunde oder so damit rumspielen und man bekommt ein Gefühl dafür.

Irgendwann wirfst Du nur noch einen Blick auf die Sprungantwort und 
sagst sofort: "Einen Hauch weniger D und ein bisschen mehr I und die 
Kurve wird so aussehen", "P ist viel zu hoch", etc. und es wird besser 
werden, so lange bis es passt.

von StefG (Gast)


Bewertung
1 lesenswert
nicht lesenswert
Hallo

Ich arbeite auch mit so Rollenheizungen und derselben Ansteuerung.
Unsere PWM schaltet ca. im 10s zyklus mit Auflösung 0.1s.
Viel schneller macht keinen Sinn da die SSR nur im Nulldurchgang 
schalten.

So erhalte ich gute Startwerte:

Tv(D-Anteil) und Tn(I-Anteil) erstmal auf 0 setzen.

Dann Kp von 0 aus hochdrehen bis die aktuelle Temperatur um den Sollwert 
herum schwingt.
Dann Kp auf 2/3 reduzieren und Tn vom Maximum (kleiner I-Anteil) 
ausgehend reduzieren bis Soll = Istwert.

Das funktioniert gut solange das System genug Zeit hat um sich 
einzupendeln.

Mit dem Tv (D-Anteil) kann man das Überschwingen beim Aufheizen dann 
noch reduzieren.

von ziegler (Gast)


Bewertung
0 lesenswert
nicht lesenswert
StefG schrieb:
> So erhalte ich gute Startwerte:
>...

Du beschreibst im Prinzip Ziegler-Nichols, nur schwammiger :)

Soll keine Kritik sein, erlaubt ist natürlich was funktioniert, nur für 
nachfolgende Leser die ein Schlagwort zum googlen brauchen können.

von Walter T. (nicolas)


Bewertung
1 lesenswert
nicht lesenswert
Nick M. schrieb:
> "rollup".

"windup"

von Bernd K. (prof7bit)


Bewertung
0 lesenswert
nicht lesenswert
StefG schrieb:
> Tn vom Maximum (kleiner I-Anteil)
> ausgehend reduzieren bis Soll = Istwert.

Das ist immer sofort der Fall sobald Ki>0. Die Kunst ist es ihn so weit 
aufzudrehen bis es gerade genug ist und nicht zu viel. Ebenso die 
anderen 2.

von Udo K. (udok)


Bewertung
-1 lesenswert
nicht lesenswert
In so einem Fall bist du eine arme "Sau", aber mit der Aussicht
auf einen Ägypten Urlaub.

Ich würde mir die originale Regelung besorgen, und versuchen,
die nachzubauen.
Wenn man an die Software nicht herankommt, dann kannst du
ein gemessenes Temperaturprofil "simulieren", und schauen was der 
Original-Regler macht.
Ich könnte mir vorstellen, dass da einige Tricks eingebaut sind,
die über einen simplen PID Regler hinausgehen.

: Bearbeitet durch User
von Nick M. (muellernick)


Bewertung
-1 lesenswert
nicht lesenswert
Walter T. schrieb:
>> "rollup".
>
> "windup"

Richtig!

von Jürgen B. (pumpi)


Bewertung
0 lesenswert
nicht lesenswert
Vielen Dank für eure Tipps! Das klingt ja machbar :-)

Ziegler-Nichols ist mir theoretisch bekannt, praktisch habe ich das noch 
nicht gemacht.

Zum Thema Geschwindigkeit der Heizung: Das Ganze reagiert überaus 
schnell, es  ist eine Induktions- und keine Widerstandsheizung, dadurch 
ist die Reaktion eher wie bei einer Lampenheizung (RTP) aber ohne 
Wasserkühlung. Im Unterschied zum Induktionsherd wird die Temperatur 
nicht in der Heizung sondern direkt am Galettenmantel, also sozusagen am 
Topf auf dem Herd, gemessen.

Die originale Regelung ist nur beim Kunden vorhanden, wir haben hier im 
Werk nur noch ein paar wenige Ersatzteile dafür. Das Problem der 
originalen Regelung: Die Software scheint damals für uns extra angepasst 
worden zu sein (haben wir auch z. B. bei alten Umrichtern), einige 
Parameter bzw. Parameterwerte werden auch in der Originalbeschreibung 
nicht erwähnt. Und von den alten Kollegen, die den Regler noch kennen, 
ist keiner mehr hier.

Zum Thema Sprungantwort: Wie mache ich das mit den 3 Heizzonen (vorne, 
Mitte, hinten) einer Galette? Alle 3 gleichzeitig mit einem Sprung 
beaufschlagen?

von M. K. (sylaina)


Bewertung
0 lesenswert
nicht lesenswert
Stephan schrieb:
> Ich sicher nicht. Aber frage Dich doch mal warum man im E-Herd die
> Relais hört wenn die Platten an und aus gehen. Vermutlich sind alle
> Hersteller zu blöd da eine PWM zu nutzen.

Nö, zu klug. Wie genau braucht man denn die Temperatur beim Kochen? Also 
mir ist das völlig schnuppe ob der Backofen jetzt 180 oder zwischen 170 
und 190 Grad pendelt.

Bei den Hochtemperaturprozessen, mit denen ich beruflich in der 
Halbleiterfertigung zu tun hab, würde es mich schon stören, wenn die 
rund 1000 Grad nur auf +/- 1 Grad genau eingeregelt würden, da bin ich 
froh, dass ich nen PID-Regler hab und nicht nur einen Zweipunkt-Regler 
wie er typisch im Herd eingesetzt wird bzw. wurde, mein Herd ist weit 
über 20 Jahre alt, ka wie da der aktuelle Stand der Technik ist.

Nick M. schrieb:
> Ein I-Anteil bei so einem langsamen Prozess erscheint mir sinnlos.

Wenn er zu groß gewählt wird ist er das auf jeden Fall ;)

Jürgen B. schrieb:
> Zum Thema Sprungantwort: Wie mache ich das mit den 3 Heizzonen (vorne,
> Mitte, hinten) einer Galette? Alle 3 gleichzeitig mit einem Sprung
> beaufschlagen?

Japp, alle drei gleichzeitig.

von Nick M. (muellernick)


Bewertung
-1 lesenswert
nicht lesenswert
M. K. schrieb:
>> Ein I-Anteil bei so einem langsamen Prozess erscheint mir sinnlos.
>
> Wenn er zu groß gewählt wird ist er das auf jeden Fall ;)

Haha! ;-)
Nachdem aber offensichtlich wurde, dass die Aufheizung doch nicht so 
langsam ist, muss ich mich korrigieren: Sei mit dem I-Anteil vorsichtig 
und versuch es erst mal ohne.

Ja, ich hab schon mitbekommen, dass das ganz weit weg ist. Darum würde 
ich mich kümmern die Reaktionszeit der teilnehmenden Personen zu 
verkürzen. Telefonkonferenz während Produktionsstillstand etc.

von Bernd K. (prof7bit)


Bewertung
2 lesenswert
nicht lesenswert
Nick M. schrieb:
> Sei mit dem I-Anteil vorsichtig
> und versuch es erst mal ohne.

Es ist eine Heizung, da wird er nicht ohne I auskommen, oder wie stellst 
Du Dir das vor? Immer 30% mehr einstellen damits ungefähr hinkommt?

: Bearbeitet durch User
von Nick M. (muellernick)


Bewertung
-2 lesenswert
nicht lesenswert
Bernd K. schrieb:
> Es ist eine Heizung, da wird er nicht ohne I auskommen, oder wie stellst
> Du Dir das vor? Immer 30% mehr einstellen damits ungefähr hinkommt?

Wenn ich mir die Regelung meines Härteofens so anschaue ...
Ich stell 800 °C ein, er heizt auf und schaltet bei etwa 700 °C schon 
die Heizung ab. Und wenn ich mir dann überleg, was in den 15 Minuten mit 
dem I-Anteil passiert ist (besser wäre) ... würde er bei 800 °C immer 
noch heizen.
Ich hab's weiter oben schon (falsch) geschrieben: windup. Und wenn das 
der Regler nicht begrenzen kann (scheinbar nicht), dann wird sie freudig 
schwingen.

von Bernd K. (prof7bit)


Bewertung
1 lesenswert
nicht lesenswert
Nick M. schrieb:
> Darum würde
> ich mich kümmern die Reaktionszeit der teilnehmenden Personen zu
> verkürzen.

Ich würde als erstes mal versuchen das halbwegs in einer Simulation 
nachzubilden, und zwar so daß das bisher gemessene damit einigermaßen in 
Einklang zu bringen ist, dann kann er zuhause einen halben Tag auf eine 
Millisekunde zusammenschrumpfen und mal ein paar Einstellverfahren 
ausprobieren oder von Hand an den Reglern drehen und dabei die 
Verformung der Kurve live beobachten ohne Gesichtslähmung zu bekommen 
oder beim Warten auf den nächsten Telefonanruf versehentlich zu 
verhungern.

von Bernd K. (prof7bit)


Bewertung
1 lesenswert
nicht lesenswert
Nick M. schrieb:
> Und wenn ich mir dann überleg, was in den 15 Minuten mit
> dem I-Anteil passiert ist (besser wäre) ... würde er bei 800

Nein, nicht wenn er richtig eingestellt ist. Und darum gehts ja hier: 
das richtige Einstellen.

von Walter T. (nicolas)


Bewertung
0 lesenswert
nicht lesenswert
Bernd K. schrieb:
> Nein, nicht wenn er richtig eingestellt ist.

Sicher. Der I-Anteil wird erst dann wieder (langsam) abgebaut, wenn der 
Sollwert überschritten ist. Das macht ihn bei ohnehin trägen Systemen 
extrem hinterlistig.

Dafür ist bei Öfen ein hoher P-Anteil kein Problem, weil die 
Regelstrecke selbst keinen differenzierenden Anteil mitbringt.

Nett ist es, wenn Störgrößenaufschaltung (PD) möglich ist.

von mech (Gast)


Bewertung
0 lesenswert
nicht lesenswert
Walter T. schrieb:
> Der I-Anteil wird erst dann wieder (langsam) abgebaut, wenn der
> Sollwert überschritten ist.

Das ist immer so, nicht nur bei Systemen die für menschliche 
Verhältnisse träge sind.
Das Ziel (bei Strecken ohne I-Verhalten wie einem Ofen) ist eben, dass 
beim Erreichen des Sollwertes der bis dahin aufintegrierte I-Anteil 
grade reicht um diesen zu halten, da der P-Anteil ja auf 0 fällt.

Nicht mehr. Der I-Anteil wird dann erstmal nicht mehr abgebaut, soll er 
auch nicht.

von M. K. (sylaina)


Bewertung
0 lesenswert
nicht lesenswert
Walter T. schrieb:
> Bernd K. schrieb:
>> Nein, nicht wenn er richtig eingestellt ist.
>
> Sicher. Der I-Anteil wird erst dann wieder (langsam) abgebaut, wenn der
> Sollwert überschritten ist. Das macht ihn bei ohnehin trägen Systemen
> extrem hinterlistig.

Deshalb ist man ja gut beraten den Regler nicht Pi-mal-Daumen 
einzustellen sondern mit den bekannten Einstellverfahren, z.B. nach 
Ziegler-Nichols ;)

von Bernd K. (prof7bit)


Bewertung
2 lesenswert
nicht lesenswert
Walter T. schrieb:
> Das macht ihn bei ohnehin trägen Systemen
> extrem hinterlistig.

Langsam ist relativ! Und in einer Simulation verliert die Zeit ihren 
Schrecken und ihre zersetzende Wirkung auf die menschliche Wahrnehmung 
und Arbeitsmoral gänzlich und man kann das System um den Faktor 1000000 
beschleunigen dabei beobachten daß alle Gesetzmäßigkeiten der 
Regelungstechnik dort weiterhin exakt bis aufs i-Tüpfelchen genauso 
funktionieren wie bei "langsamen" Systemen. Und selbstverständlich auch 
der I-Anteil.

von Bernd K. (prof7bit)


Bewertung
1 lesenswert
nicht lesenswert
Walter T. schrieb:
> Der I-Anteil wird erst dann wieder (langsam) abgebaut, wenn der
> Sollwert überschritten ist.

Er soll nie ganz abgebaut werden weil der Ofen ja ständig Energie 
verliert, der I-Anteil soll da permanent dagegen halten.

Und das einmalige Überschwingen und dann langsame annähern des I-Anteils 
von oben, ich nenn es mal die I-Schulter kann man kompensieren mit dem 
richtigen D-Anteil. Der drückt die Schulter wieder runter. Den D-Wert 
kann man so weit erhöhen bis kurz vor dem Peak ne weitere Beule 
rauskommt, ich nenn sie mal die D-Beule. Du drehst D nur so weit auf bis 
die D-Beule gerade noch nicht merklich in Erscheinung tritt und dann 
stellst Du I so ein daß die Schulter wieder horizontal wird. Evtl. 
abwechselnd mit D und I spielen bis die Schulter fast perfekt aussieht, 
so als ob er am Sollwert im Vorbeiflug einfach wie in Leim kleben 
bleibt, ohne Überschwinger. Und dann zur Sicherheit mal sehen ob sich 
mit etwas mehr P immer noch ein gutes I und D finden lassen und kein 
P-Schwingen auftritt, wenn Du das optimal passende P dazu gefunden hast 
wird das maximal knackig und schön.

Mit der Zeit bekommst Du Übung, Du wirst die Kurven wiedererkennen wenn 
Du sie siehst und sofort intuitiv sagen: "Der könnte noch ein gutes 
bisschen mehr D vertragen", "Hier ist der I-Anteil zu hoch", "Das sieht 
verdächtig nach zuviel P aus", ...

: Bearbeitet durch User
von Bernd K. (prof7bit)


Bewertung
1 lesenswert
nicht lesenswert
Hier, kleines Spielzeug:

https://github.com/prof7bit/pid-trainer

Youtube-Video "pid trainer - play with P, I and D values to see how it changes the impulse response"
(Es ist die Sprungantwort, nicht die Impulsantwort, das ist da noch 
falsch beschrifet)

: Bearbeitet durch User
von wolle g. (wolleg)


Bewertung
0 lesenswert
nicht lesenswert
Bernd K. schrieb:
> Langsam ist relativ! Und in einer Simulation verliert die Zeit ihren
> Schrecken und ihre zersetzende Wirkung auf die menschliche Wahrnehmung
> und Arbeitsmoral gänzlich ......

Wo könnte man ein allg. zugängliches Simulationsprogramm herunterladen?
Ich würde gern mal mein Heizkörperprogramm (Thermostatventil mit 
umgebautem el. Thermostatkopf "schnell" optimieren.

von Bernd K. (prof7bit)


Bewertung
0 lesenswert
nicht lesenswert
wolle g. schrieb:
> Bernd K. schrieb:
>> Langsam ist relativ! Und in einer Simulation verliert die Zeit ihren
>> Schrecken und ihre zersetzende Wirkung auf die menschliche Wahrnehmung
>> und Arbeitsmoral gänzlich ......
>
> Wo könnte man ein allg. zugängliches Simulationsprogramm herunterladen?
> Ich würde gern mal mein Heizkörperprogramm (Thermostatventil mit
> umgebautem el. Thermostatkopf "schnell" optimieren.

Ich würds wahrscheinlich einfach mit Python machen, aber vielleicht ist 
das auch nur für mich der Hammer der zu so einem Nagel passt, andere 
mögen aufgrund unterschiedlicher Vorbelastung oder Neigung vielleicht 
andere Tools bevorzugen.

: Bearbeitet durch User
von Messfehler (Gast)


Bewertung
0 lesenswert
nicht lesenswert
Noch ein Ansatz in eine ganz andere Richtung: wie hoch ist die Messung 
aufgelöst und wie stabil sind die letzten Bits?

Wenn so eine Galette beispielsweise auf 500 °C aufgeheizt wird und der 
Sensor einen Messbereich von 20 °C bis 532 °C aufweist; dann würde eine 
Auflösung von einem Kelvin neun echten Bits entsprechen. Ist der 
Messbereich nicht so genau auf das Betriebstemperaturfenster 
zugeschnitten, natürlich entsprechend mehr. Was kann denn so eine SPS? 
Und ist der Sensor so beschaltet, dass man die Auflösung sinnvoll nutzen 
kann?

von M. K. (sylaina)


Bewertung
0 lesenswert
nicht lesenswert
wolle g. schrieb:
> Wo könnte man ein allg. zugängliches Simulationsprogramm herunterladen?
> Ich würde gern mal mein Heizkörperprogramm (Thermostatventil mit
> umgebautem el. Thermostatkopf "schnell" optimieren.

SciLab (www.scilab.org) ist hier eine Idee, das ist eine Art Matlab und 
Xcos ist Simulink-ähnlich und damit kann man prima solche Simulationen 
machen.

von blub (Gast)


Bewertung
0 lesenswert
nicht lesenswert
Poste doch mal eine Messreihe dann können die Profis da mal 
drüberblicken.

von Jürgen B. (pumpi)


Bewertung
0 lesenswert
nicht lesenswert
Vielen Dank für die vielen hilfreichen Beiträge.

Als erstes werde ich mich an der Methode von Ziegler und Nichols 
(Dauerschwingung) versuchen. Mal sehen, ob das klappt. Entweder lässt 
sich der Kunde dazu breitschlagen, dass er den Versuch selbst macht oder 
ich fahre in einigen Wochen hin.

blub schrieb:
> Poste doch mal eine Messreihe dann können die Profis da mal
> drüberblicken.

Leider habe ich noch keine Messreihe, da die Kollegen bei ihren 
Kundenbesuchen keine aufgenommen haben und die Maschine im Moment noch 
mit dem alten Regler läuft.

Messfehler schrieb:
> Und ist der Sensor so beschaltet, dass man die Auflösung sinnvoll nutzen
> kann?

Ja. Das Signal des Temperatursensors wird auf 4..20mA umgesetzt und aus 
der Galettendrehung per Infrarot nach außen übertragen. Bei anderen 
Anlagenteilen läuft das genauso, also Umsetzung des Temperatursignals 
auf 4..20mA, dann SPS mit Software-PID-Regler und Ausgabe des 
Stellwertes entweder digital (PWM) oder analog.

Was mir noch nicht ganz klar ist: Wie mache ich einen Sprung um eine 
Sprungantwort aufzunehmen? Meine Idee war, im Handbetrieb den Stellwert 
von z.B. 60% auf 65% zu erhöhen. Das geht bei diesem Regler aber nicht 
(genauer es geht nur über das Siemens SPS Programmiersystem), da kein 
Handbetrieb programmiert worden ist. Kann ich das auch mit z.B. P = 5, I 
= 0, D = 0 und Sollwertsprung  von z.B. 100 Grad C auf 110 Grad C 
machen?

von Walter T. (nicolas)


Bewertung
0 lesenswert
nicht lesenswert
Leicht OT: Kannst Du Dir die Regelungstechnik als Beratungsleistung 
nicht einkaufen? Das ist zwar nicht billig, aber ich weiß nicht, was 
euch der Tag an Verzögerung kostet, wenn es nicht auf Anhieb klappt.

Topic: Ziegler-Nichols kannst Du am geschlossenen Regelkreis machen. 
Dafür brauchst Du auch einen Sollwert-Sprung. Parameter-Identifikation 
am geschlossenen Regelkreis geht auch, aber ist etwas schwieriger. D und 
I-Anteil auf Null setzen ist richtig, wenn das System ungefährlich ist. 
Ob P=5 geeignet ist, kannst Du nur vor Ort entscheiden. Entscheidend ist 
ja die Gesamt-Kreisverstärkung inkl. Stellglied.

: Bearbeitet durch User
von Jürgen B. (pumpi)


Bewertung
0 lesenswert
nicht lesenswert
Walter T. schrieb:
> Kannst Du Dir die Regelungstechnik als Beratungsleistung
> nicht einkaufen?

Ich mag hier gar nicht berichten, was für dieses Projekt mit welchem 
Ergebnis schon alles extern eingekauft worden ist ... Um es kurz zu 
machen: Das Wissen soll wieder ins Haus geholt werden.

Walter T. schrieb:
> D und
> I-Anteil auf Null setzen ist richtig, wenn das System ungefährlich ist.
> Ob P=5 geeignet ist, kannst Du nur vor Ort entscheiden.

Prima, habe ich verstanden. Dann besteht ja Hoffnung, eine der beiden 
Möglichkeiten sollte zum Ziel führen. :-)

von ... (Gast)


Bewertung
0 lesenswert
nicht lesenswert
Eventuell könnte dir das hier weiter helfen:

Hier kannst du deine Regelstrecke modellieren und anhand der gemessenen 
Kurven die Parameter schätzen lassen:

http://www.aaabbb.de/ControlTheory/ControlPathParameters.php

Und hier kannst du die Parameter für den PID-Regler bestimmen lassen:

http://www.aaabbb.de/ControlTheory/ControlLoopTuningIteration.php

oder

http://www.aaabbb.de/ControlTheory/ControlLoopTuningStepResponse.php

Die Seiten benötigen allerdings Javascript und einen modernen Browser.

von Jürgen B. (pumpi)


Bewertung
0 lesenswert
nicht lesenswert
... schrieb:
> Hier kannst du deine Regelstrecke modellieren und anhand der gemessenen
> Kurven die Parameter schätzen lassen:

Das ist für mich der 2. Schritt da die Voraussetzung ist, dass das 
Verhalten der Regelstrecke bekannt ist. Das ist aber bislang leider 
nicht der Fall.

Darum als 1. Idee die Methode nach Ziegler-Nichols, Erhöhung von P bis 
zur Dauerschwingung. Dafür müssen meinem Verständnis nach die Parameter 
der Regelstrecke nicht bekannt sein.

Und als 2. Idee die Messung der Sprungantwort der Regelstrecke. Danach 
kann dann die Regelstrecke modelliert /simuliert und darüber die 
PID-Parameter bestimmt werden.

Oder habe ich da etwas falsch verstanden?

von M. K. (sylaina)


Bewertung
0 lesenswert
nicht lesenswert
Hast du richtig verstanden. IMO einfacher ist es, wenn du den Regelkreis 
öffnen kannst und das Streckenverhalten ermitteln kannst (2. 
Einstellregel nach Ziegler-Nichols) da ja nicht bekannt ist, ob deine 
Heizung überhaupt schwingen kann. ;)

: Bearbeitet durch User

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.