Forum: Mikrocontroller und Digitale Elektronik Frage zu PID Regler für Lötstation


von Ha Jo (Gast)


Angehängte Dateien:

Lesenswert?

Hallo,

PID Regler sind hier zwar schon zu hauf diskutiert worden, aber mein 
Fragen damit leider nicht beantwortet, da ich eigentlich ein 
Regelungsleie bin. Ich habe mir bei Wikip... und auch bei Roboternetz 
die Erklärungen durchgelesen.

Es wird eine Lötstation für den Weller WSP-80 Lötkolben.

Nun geht es bei mir um das Einstellen des Reglers, also das ermitteln 
der PID-Faktoren. Ich habe es experimentel versucht und der Regler läuft 
damit. Wie gut, weiß ich nicht zu bewerten und da ich natürlich das max. 
rausholen möchte, frage ich hier. Durch ändern der Parameter habe ich 
den Regler schnell aber ungenau oder eben langsam, dafür etwas genauer 
hinbekommen.
Ich weiß, beides geht kaum. Von Euch möchte ich wissen, was ich wohl 
erwarten könnte.

Im Anhang mal die Sprungantwort des Lötkolbens ohne Regelung. Ich habe
knapp über 500°C wieder abgeschaltet. Mehr wollte ich dem Ding nicht 
zumuten. Ich habe ihn auch schon durch einen Fehler in der 
TRIAC-Steuerung rotglühend gesehen (ca. 800°C). :-(  Er ist aber noch 
OK.

Die gelbe Kurve ist die Temperatur, das violette wäre der Sollwert, den 
es hier im Moment nicht gibt, Regler ist ja aus. Das blaue unten ist die 
Kurve der Zeitmarken  :-)

In der gelben Kurve sieht man unten eine kleinen Spike, das das 
Einschalten des Lötkolbens, oben knapp über 500°C ist auch ein Spike, 
das war das abschalten. Die Zeitmarken haben 0,5 Sekunden Abstand.

Zur Regelung kurz: Ich habe eine PWM mit 0,5s Periodendauer.
Dort kann ich mit 1% Genauigkeit (also immer eine Halbwelle) die
Pulsbreite bestimmen (0-100%).
Der Regler tastet auch mit 0,5 Sekunden und gibt dann einen neuen
Sollwert vor.

Der Reglercode (ja ja, ich weiß, muß nicht mit Fließkomma, aber
das kommt später) ist unten. Er ist hier aus dem Forum, aber
modifiziert, da er nicht funktioniert hat. Zum schnellen testen
habe ich mir die Reglerkonstanten dann auch als define definiert,
normalerweise sind sie auch in der Struktur.

1) Was könnte ich an Genauigkeit erwarten bei langsamer Regelung?
2) Was könnte ich an Genauigkeit erwarten bei schneller Regelung?
3) Was ist evtl. das Optimum?
4) Falls möglich, lassen sich aus der Sprungantwort die Parameter
   ermitteln? Die Kurve geht ja nicht bins ins Max., sondern ich habe
   vorher abgeschaltet.

Also falls es möglich ist, meine Fragen so zu beantworten, ich
würde mich freuen. Falls noch Fragen von Euch sind, dann nur zu.

Ich poste auch noch ein Plot mit aktivem Regler nach Einschalten
mit den Parametern, wie sie im Code unten stehen.

Danke.
Hajo


1
int PID_Cyclic (int x, int w)
2
{    
3
  PID_Einstellung *PID = &Regler1;
4
  #define MAXY  100. 
5
  #define MAXESUM  300.
6
  
7
  #define KP 2.5  
8
  #define KI 0.20
9
  #define KD 0.50
10
//  #define KP 3.5  
11
//  #define KI 0.20
12
//  #define KD 0.8
13
  #define TA 0.5   // Abtastzeit in Sekunden
14
  
15
  PID->e = (float)(w - x);   // aktuelle Regelabweichung bestimmen
16
  PID->esum = PID->esum + PID->e;  // Summe der Regelabw. aktualisieren  
17
  // Begrenze Fehlersumme
18
  if( PID->esum > MAXESUM ) PID->esum = MAXESUM; 
19
  if( PID->esum < -MAXESUM ) PID->esum = -MAXESUM;
20
  
21
// Reglergleichung
22
  PID->y = (KP*PID->e) + ((KI*TA)*PID->esum) + (KD/TA)*(PID->e-PID->ealt));
23
  PID->ealt = PID->e; // Regelabweichung für nächste Abtastung merken
24
  
25
  if (PID->y > MAXY)  // Stellgröße auf 0..100% begrenzen
26
    PID->y = MAXY;
27
  if (PID->y < 1.)
28
    PID->y = 0;
29
  return (s16)PID->y;
30
}

von Ha Jo (Gast)


Angehängte Dateien:

Lesenswert?

Hier der Plot nach dem Einschalten mit aktivem Regler.
Ganz unten die hellblaue Kurve ist die ausgegebene Heizleistung
in %. Es zappelt glaube ich zu viel!?

Ach ja, Solltemperatur waren 400°C.

Danke für Eure Mühe.

Hajo

von Sven (Gast)


Lesenswert?

So kann man ja leider nicht die Schwankungsbreite ablesen!
So müsstest Du also mal sagen in welchem Bereich
die Temperatur schwankt, sagen wir ab Pos. 300.

von 388 - 415 oder so....

> 1) Was könnte ich an Genauigkeit erwarten bei langsamer Regelung?
> 2) Was könnte ich an Genauigkeit erwarten bei schneller Regelung?

Und wie ist Deine Schaltung aufgebaut ?
Wie wird die Temperatur eingelesen, welcher ADC ? Auflösung ?

Gruß Sven

von Ha Jo (Gast)


Angehängte Dateien:

Lesenswert?

Hallo Sven,

im Anhang nochmal ein Plot mit Ausschnitten von Pos. 388-415 oder so!?
Die x-Achsennumerierung ist jetzt anders, daran nicht stören. Es ist ein
Ausschnitt aus meinem Plott mit eingeschaltetem Regler.
Unten der Plott ist wieder die ausgegebene Heizleistung.

Zur Hardware:
Der Lötkolben hat einen Temperatursensor, den genauen Typ weiß ich 
leider nicht. Es hängt ein Meßverstärker daran, der auch die Kennlinie 
linerisiert. Der Meßverstärker liefert ca. 0-4V bei 20°C - 600°C. So 
soll er jedenfalls abgeglichen werden. Ist noch nicht ganz genau so.
Der Meßverstärker speißt den Meßzweig (Widerstand, Temp-Sensor) aus 
einer Referenzspannungsquelle (REF02).

Dieses Signal wird mit dem ADC vom ATMEGA16 gewandelt, also 10 Bit
Wandler. Der oben erwähnte REF02 soll auch Aref vom ADC liefern.
Tut er gerade nicht bei meinem Prototypaufbau. Ich verwende gerade
die interne Spannung des AVRs.


Hajo

von Ha Jo (Gast)


Lesenswert?

Hmmmmmm...... Oben im ersten Posting schrieb ich, das ich mit
1% Auflösung die PWM steuern kann. Patsch!
Ich habe eine Periodendauer von 0,5 s. Also 50 Halbwellen,
da ich immer eine volle Halbwelle schalte mit der PWM.
Ergibt eine Auflösung von 2%. Oh jeee....
(Wenn das Dirk G. ließt) :-))

Hajo

von Tupf (Gast)


Lesenswert?

1) Was könnte ich an Genauigkeit erwarten bei langsamer Regelung?

Du hast ein I Anteil im Regler. Deswegen wird die Regeldifferenz auf 
Null runtergeregelt. Allerdings ist die Regelung nur so genau, wie der 
Temperatursensor ist. Je groesser der I Anteil, desto schneller wird die 
Regeldifferenz ausgeregelt, aber deine Schaltung wird instabiler. Das 
wirkt sich so aus, dass du groessere Ueberschwinger hast, bzw. die 
Temperatur oszilliert.

2) Was könnte ich an Genauigkeit erwarten bei schneller Regelung?

siehe auch 1.)
Je groesser der P Anteil und der D Anteil, desto schneller deine 
Schaltung. Allerdings haben grosse P Anteile instabilitaet zur Folge. 
Das wirkt sich so aus, dass die Ueberschwinger groesser werden, bzw. die 
Temperatur oszilliert. Der D Anteil hat z.T. einen stabilisierenden 
Effekt und kann die Instabilitaet des I Anteils ausgleichen. Dadurch 
kannst du den P Anteil hoeher setzen und die Regelung wird schneller. 
Leider gilt dies nur z.T., da der D Anteil Rauschen verstaerkt. Ich 
empfehle dir Baud Diagramme fuer Reglerauslegung genauer anzuschauen. 
Such mal in google nach Baud Diagramme.

3) Was ist evtl. das Optimum?

Das wird mathematisch. Siehe mal hier: 
http://en.wikipedia.org/wiki/Optimal_control#Linear_quadratic_control

Such auch mal in Google nach Riccati Regler.

4) Falls möglich, lassen sich aus der Sprungantwort die Parameter
   ermitteln? Die Kurve geht ja nicht bins ins Max., sondern ich habe
   vorher abgeschaltet.

Welche Parameter?

Bis dann, ich geh jetzt feiern ...


Alles Gute zum neunen Jahr.

von Karl (Gast)


Lesenswert?

Also erstens hieß der Kerl Bode und nicht Baud, zweitens hat die lineare 
Regelungstechnik bei dieser Problemstellung sicher einige Probleme durch 
die Stellgrößenbegrenzung und den Störgrößeneinfluss (=Löten). Optimale 
Regelung ist auch so eine Sache, ist doch die Optimalität reine 
Definitionssache einer   Bewertungsfunktion. Ein Fuzzy-Regler wäre evtl 
eine Überlegung wert.

von Ha Jo (Gast)


Lesenswert?

Tupf wrote:
> 4) Falls möglich, lassen sich aus der Sprungantwort die Parameter
>    ermitteln? Die Kurve geht ja nicht bins ins Max., sondern ich habe
>    vorher abgeschaltet.
>
> Welche Parameter?

Na die Faktoren für P, I, D dachte ich.

> Bis dann, ich geh jetzt feiern ...

Na dann komm gut rein :-) Und wenig Kopfschmerzen morgen.

> Alles Gute zum neunen Jahr.

Danke schön, das wünsche ich Dir auch.

@Karl
Das der Kerl Bode heißt und nicht Baud hatte ich mir auch gedacht :-)
Dass das Optimum eine Frage der Bewertung ist, dass ist mir schon klar.
Es ist eben auch ein Kompromiß zwischen schneller Ausregelung und
minimaler Abweichung. Aber wie den besten Kompromiß finden? Nur durch
probieren?
Fuzzy Regler. Damit habe ich mich noch nie beschäftigt. Wird es damit
besser? Hast Du einen Einstiegslink parat?

Danke und auch einen Guten Rutsch.

Hajo

von Thilo M. (Gast)


Lesenswert?

Ich denke, den D-Anteil kann man bei einer Temperaturregelung getrost 
weglassen. Da es ein recht langsamer Prozess ist, genügt ein PI-Regler 
mit (wie Karl schon andeutete) einer Überwachung der Stellgrößengrenzen 
(Anti-Windup). Damit dürften sich recht gute Ergebnisse erzielen lassen.
Siehe auch:
Beitrag "PID-Regler mit anti-Windup"

von Thilo M. (Gast)


Angehängte Dateien:

Lesenswert?

Zur schnellen Optimierung könnte ich das Verfahren nach Ziegler-Nichols 
empfehlen, die Faustformeln funktionieren in den meisten Fällen sehr 
gut. Man muss nur eine gleichmäßige Schwingung hinbekommen.

von Ha Jo (Gast)


Lesenswert?

@Tupf
Danke auch nochmal für Deine Erklärungen. Das hilft auch schon mal etwas 
weiter. Ist dann eher die Praktikersicht und nicht die rein 
Mathematische. Das verstehe ich dann auch besser ;-)

@Thilo
Danke für das PDF. Ich werde mich die Tage mal daran setzten und es auch 
mit der Methode probieren. Mal sehen wie es dann wird.

@Sven
Hast Du noch eine Idee? Du fragtest nach der Hardware und einem 
Ausschnitt aus dem Plott (s.o.). Ist die Hardware ausreichend 
beschrieben?

Mich interessiert allerdings, was denn Experten meinen was denn schon 
ganz gut wäre als minimale Regelabweichung und wie schnell er sich 
wieder fangen mußte nach einer Störung. Hmmm.. ja hängt von der Größe 
der Störung ab.
Wenn man das überhaupt so "mal eben" überschlagen kann bzw. eine Aussage 
darüber treffen.

Und allen ein Happy New Year 2008. prost

Hajo

von Thilo M. (Gast)


Lesenswert?

Wie schon gesagt, die Regelabweichung ist beim PI-Regler im 
ausgeregelten Zustand null.
Wie schnell der Regelkreis in der Lage ist, eine Abweichung (Störgröße) 
auszuregeln hängt davon ab, wie stark das Stellglied 'nachschiebt' und 
wie stark der Regelkreis zum Schwingen neigt. Den Mittelweg zwischen 
'langsam und genau' und 'schnell und schwingt leicht' musst du nicht 
unbedingt berechnen, empirisch ermitteln geht auch. Also die Faustformel 
aus dem PDF und dann spielen.

von Sven (Gast)


Lesenswert?

>@Sven
>Hast Du noch eine Idee? Du fragtest nach der Hardware und einem
>Ausschnitt aus dem Plott (s.o.). Ist die Hardware ausreichend
>beschrieben?

>Dieses Signal wird mit dem ADC vom ATMEGA16 gewandelt, also 10 Bit
>Wandler. Der oben erwähnte REF02 soll auch Aref vom ADC liefern.
>Tut er gerade nicht bei meinem Prototypaufbau. Ich verwende gerade
>die interne Spannung des AVRs.

Frohes neues.
Ich habe noch ein wenig Blut im Alkohol,
aber ich habe kurz überschlagen:

Ideal:

10 bit heisst 1024 Schritte.
Du benutzt nur 80 % davon -> 0-4V.
d.h. 819 Schritte übrig.
20-600Grad -> macht dann 580 Grad.
Auflösung = 580 / 819;
Auflösung = 0.71

d.h. Du kannst deine Temperatur um +/- 1 Grad genau messen.

Dies gilt dann für optimales analog design.
(von dem man hier nichts sehen kann, da weder schaltplan
noch layout gezeigt sind)

Jetzt sagst Du uns, der analog eingang vom atmel hängt über
den Temp-Sensor an Ref02;
aber der Aref vom Atmel nicht.
(das bedeutet für mich, dass der Atmel auf jeden Fall
viel mehr Schwankungen messen kann.)

Daraus resultiert eine schwankende Messgrösse,
die den Regler entsprechend falsch beeinflusst.

Fazit: die Messschaltung muss vorher stimmen,
dann kann man regeln.
Weiterhin könntest Du an +/- 1 Grad heranregeln,
die Frage ist, ob Dir das reicht.
Zur Theorie wie man die PID grössen beeinflusst
wurden ja oben schon einige Beispiele genannt.

Gruß Sven

von Ha Jo (Gast)


Angehängte Dateien:

Lesenswert?

@Thilo
Ich werde das evtl. morgen mal so probieren. Im Moment liegen ich die 
meiste Zeit im Bett. Leider nicht von einer feinen Silvesterparty 
sondern wegen einer fetten Erkältung :-(

Sven wrote:
> Frohes neues.
> Ich habe noch ein wenig Blut im Alkohol,

Ja Dir auch ein Frohes Neues. Blut im Alkohol um diese Zeit :-))

> aber ich habe kurz überschlagen:

Hast Du die Störgröße Alkohol ausgefiltert? ;-)

>
> Dies gilt dann für optimales analog design.
> (von dem man hier nichts sehen kann, da weder schaltplan
> noch layout gezeigt sind)

Es gibt den Schaltplan im Moment in alter Manier als Bleistiftversion 
auf kariertem Papier :-) Das Layout gibt es noch garnicht. Ein Freund 
von mir wird das in der nächsten Zeit mal erledigen. Ich probiere im 
Moment mit dem Prototypen auf Lochraster aufgebaut. Wir teilen uns ein 
bischen den Job, ich mache die Software zu der Station und er hat mehr 
Spaß am eaglen, ich garnicht.
Den Meßverstärker habe ich mal eingescannt. Der oebere Anschluß nach 
rechts raus geht über einen 10k zum ADC des AVRs. Der untere Anschluß 
geht zu einem Komperator, der bei Übertemperatur (durchgebranntes TRIAC 
??) ein Relasi abfallen läßt. Das wollte ich auch nicht über SW machen, 
die soll ja auch Fehler machen können ;-) Die beiden Anschlüße links 
sind für den Temperaturfühler, dessen Typ ich nicht kenne (PTC Funktion: 
23Ohm bei Raumtemp, 53Ohm bei ca. 400 Grad habe ich mal grob gemessen).
Vielleicht möchte da noch jemand etwas verbessern?

>
> Jetzt sagst Du uns, der analog eingang vom atmel hängt über
> den Temp-Sensor an Ref02;
> aber der Aref vom Atmel nicht.
> (das bedeutet für mich, dass der Atmel auf jeden Fall
> viel mehr Schwankungen messen kann.)

Für mich auch. In der "wirklichen Welt" soll es dann auch so werden dass 
der AVR über den RF02 versorgt wir. Vielleicht löte ich mir das auch 
noch um in meinem Lochrateraufbau. Ist ja nicht soooo schwer, allerdings 
hatte ich es nicht für sooo störend empfunden. Aber sicher ist es 
besser, wenn der AVR auch damit an Aref gefüttert wird.

> Fazit: die Messschaltung muss vorher stimmen,
> dann kann man regeln.

Werde ich ja artig berücksichtigen ;-)

> Weiterhin könntest Du an +/- 1 Grad heranregeln,
> die Frage ist, ob Dir das reicht.

Mit +/- 1 Grad kann ich gut leben. Nur die Ausregelgeschwindigkeit 
sollte dann noch einigermaßen passen.

> Zur Theorie wie man die PID grössen beeinflusst
> wurden ja oben schon einige Beispiele genannt.

Da werde ich wie schon beschrieben die Tage mal weiter mit 
experimentieren. Danke erstmal an alle, die sich hier dazu Gedanken 
machen. Ist ja wie Weihnachten hier ;-)

Hajo

von Tupf (Gast)


Lesenswert?

kleine Anmerkung ...

Nach Nyquist musst du noch die hohen Frequenzen vor der Abtastung 
ausfiltern. Nach der Theorie sollte die Filterfrequenz bei 1 Hz liegen, 
wenn die Schaltung mit 2 Hz abtastet (glaube ich, siehe 
http://de.wikipedia.org/wiki/Nyquist-Shannon-Abtasttheorem). Ist 
technisch net so einfach, es sei denn du benutzt Switch Capacitor 
Filter, z.B. den MAX 7401-7405. Selbst der braucht auch noch einen 
Vorfilter. So wie ich deine Schaltung oben verstehe hast du aber schon 
einen Filter 2ter Ordner.



Das ist aber alles Theorie; deine Regelung kann trotzdem sehr gut 
funktionieren, auch ohne 2Hz Filter.


Bis dann ...

von Ha Jo (Gast)


Lesenswert?

Danke auch für den Hinweis Tupf.

Grundsätzlich ist mir natürlich klar, dass es sich um eine Lötstation 
handelt. Also eine Regelung auf z.B. +- 1°C ist nicht notwendig. Eher
sehe ich da die max. Abweichung und schnelle Ausregelung im Vordergrund. 
Die max. Abweichung darf natürlich auch > 1°C liegen :-) Läßt sich auch 
wohl kaum verhindern.
Aber mich interessiert einfach mal, was man da so rausholen kann und ich 
habe noch nie mit einem Regler "gespielt". Und man lernt ja gerne dazu.

Hajo

von Lothar L. (lole)


Lesenswert?

Verringere mal Deine D-Anteil, dann wird die Regelung zwar etwas 
langsamer, aber das Überschwingen wird geringer. In der Praxis gilt ein 
Überschwingen von 4% als guter Kompromis. 5° spielen beim Löten wirklich 
keine Rolle, bei Deiner Auflösung wird's bestimmt besser.

von JÜrgen G. (Firma: 4CKnowLedge) (psicom) Benutzerseite


Lesenswert?

> Fuzzy Regler. Damit habe ich mich noch nie beschäftigt. Wird es damit
> besser? Hast Du einen Einstiegslink parat?

http://en.wikipedia.org/wiki/Fuzzy_control_system

is besser beschrieben als in der deutschen Version!


Aber für eine Lötstation einen PID zu nehmen halte ich fast für 
überflüssig... Wenn schon einen D-Anteil, dann würd ich den Daumen mal 
Pi ca. ein 20stel vom I-Anteil machen... soll sich ja nicht so schlimm 
auswirken, wie du bereits beschrieben hast!


lg psicom

von Ha Jo (Gast)


Angehängte Dateien:

Lesenswert?

Hallo,

ich habe heute Abend weiter experimentiert, dabei noch einen kleinen 
Fehler in der Triacansteuerung entdeckt, der sich bei kleine PWM-Werten 
wohl auswirkte.

Ich habe die Ziegler-Methode auch probiert, aber damit ist der Regler am 
schnellsten aber schwingt auch sehr stark über. Die K-Werte waren auch 
atemberaubend.

Entgegen aller Meinungen und Theorien habe ich mit einem PI-Regler 
deutlich schlechtere Werte als mit D-Anteil. Ich kann es mir schon 
garnicht erklären, evtl. ja Ihr? Also ohne D-Anteil ist die Ausregelung 
sehr langsam und schwingt trotzdem über. Mit den folgnenden Parametern 
habe ich die Ergebnisse, die Ihr im Anhang seht. Im nächsten Posting 
dann nur die Schwankungen.

kP = 2.5    kI = 0.2    KD = 2.0

Fragend in die Runde blicke. Wer kann sich da einen Reim drauf machen?
Wenn ich D=0 setze und dann P oder I erhöhe, dann schwingt er stark über 
bei Störungen (Löten) und reglt langsamer. Mit den oben angegeben Werten 
ist es ziemlich gut. elbst beim Löten von Masseflächen ist die 
Abweichung max. 10°C.
Es regelt schnell aus, mit Überschwinger von 5-8C aber danach hat er 
sich wieder.


Hajo

von Ha Jo (Gast)


Angehängte Dateien:

Lesenswert?

So und nun noch die Schwankungen im Leerlauf. Die Anfangsphase ist noch 
vom Einschalten. Die untere Kurve zeigt die ausgegebene Heizleistung in 
%.

Hajo

von Ha Jo (Gast)


Lesenswert?

Kleiner Nachtrag:

Also zum Löten reicht es mit allemal so. Bin ganz begeistert.

Aber für Experimente bin ich noch offen. Wenn noch einer Ideen
hat, warum entgegen der Meinungen der D-Anteil sich doch so gut 
auswirkt.
Wenn ich den Lötkolben so im Leerlauf lasse, dann schwankt er kaum noch 
meisten steht die Temp exakt beim Sollwert :-)

Danke für's Kopfzerbrechen ;-)

Hajo

von Knut B. (Firma: TravelRec.) (travelrec) Benutzerseite


Lesenswert?

>Wenn ich den Lötkolben so im Leerlauf lasse, dann schwankt er kaum noch
>meisten steht die Temp exakt beim Sollwert :-)

Das ist gut. Wenn er bei Benutzung "schwankt", dann ist die Regelung zu 
träge, bzw. setzt zu schwach oder zu stark ein. Wenn auf die Störgröße 
schnell mit kleinen Regelschritten reagiert wird, ist die Regelung 
besser und sanfter, als wenn langsam mit großen oder aber zu kleinen 
Regelschritten reagiert wird. Die Trägheit des Sensors immer mit 
eingerechnet. Bei meinem Ersa-Microtool 25Watt, bei dem die 
Keramikheizung zugleich ein PTC-Element darstellt, über das direkt die 
Temperatur gemessen werden kann, ist die Reaktionszeit recht kurz, die 
Abtastung habe ich mit 10x pro Sekunde als angenehm empfunden.

von Ha Jo (Gast)


Lesenswert?

Travel Rec. wrote:
>>Wenn ich den Lötkolben so im Leerlauf lasse, dann schwankt er kaum noch
>>meisten steht die Temp exakt beim Sollwert :-)
>
> Das ist gut. Wenn er bei Benutzung "schwankt", dann ist die Regelung zu
> träge, bzw. setzt zu schwach oder zu stark ein. Wenn auf die Störgröße
> schnell mit kleinen Regelschritten reagiert wird, ist die Regelung
> besser und sanfter, als wenn langsam mit großen oder aber zu kleinen
> Regelschritten reagiert wird.

Genauso habe ich das heute beim ausprobieren auch rausbekommen.

Die Trägheit des Sensors immer mit
> eingerechnet. Bei meinem Ersa-Microtool 25Watt, bei dem die
> Keramikheizung zugleich ein PTC-Element darstellt, über das direkt die
> Temperatur gemessen werden kann, ist die Reaktionszeit recht kurz, die
> Abtastung habe ich mit 10x pro Sekunde als angenehm empfunden.

Zur Häufigkeit der Abtastung habe ich eine Frage. Meine PWM läuft mit 
2Hz. Sie reagiert also auf eine schnelle Einstellung nicht. Wenn vor 
Ablauf Ihrer Periode ein neuer Sollwert kommt, dann nimmt sie ihn noch 
nicht.
Aus diesem Grunde taste ich auch exakt mit 2Hz die Temperatur und geb 
den Wert an den PID-Regler dessen Ausgangswert dann wiederum der PWM 
übergeben wird.

Lohnt sich trotz der 2Hz PWM ein schnelleres Abtasten?

Hajo

von Tom (Gast)


Lesenswert?

hier war schon mal so ein Thread, vielleicht kannste da was mit
anfangen.

Beitrag "Lötstation"

von Knut B. (Firma: TravelRec.) (travelrec) Benutzerseite


Lesenswert?

>Lohnt sich trotz der 2Hz PWM ein schnelleres Abtasten?

Jain. Durch Überabtasten beommst Du mehr Meßwerte die Du mitteln kannst 
und so einen Tiefpaß erhältst.

Wenn Du Deine PWM schneller machst und mit kleineren Regelsprüngen 
fütterst bzw. anhand der schnelleren Meßwerte Zwischenstufen in das 
PWM-Register schreibst, wird die ganze Regelung gedämpft und weicher. Es 
kann auch Sinn machen, die Regelwerte vom Eingriff her an die Meßwerte 
anzupassen: bist Du noch weit vom Sollwert weg, große PWM-Sprünge 
verwenden, bist Du schon nahe dran, sehr kleine Sprünge verwenden. 
Dadurch lassen sich schnelle Temperaturänderungen abfangen, ohne daß die 
Regelung extrem überschwingt.

von Ha Jo (Gast)


Lesenswert?

@Tom
Beitrag Lötstation kannte ich. Aber eben ist mir dort aufgefallen,
dass dort in dem PID-Regler garnicht die Abtastzeit mit einbezogen wird. 
Das habe ich schon woanders gesehen. Kann das gut funktionieren?

Travel Rec. wrote:
>>Lohnt sich trotz der 2Hz PWM ein schnelleres Abtasten?
>
> Jain. Durch Überabtasten beommst Du mehr Meßwerte die Du mitteln kannst
> und so einen Tiefpaß erhältst.

Stimmt, werde ich bei Gelegenheit mal testen, wie sich das auswirkt.

>
> Wenn Du Deine PWM schneller machst und mit kleineren Regelsprüngen
> fütterst bzw. anhand der schnelleren Meßwerte Zwischenstufen in das
> PWM-Register schreibst, wird die ganze Regelung gedämpft und weicher.

Leuchtet mir ein.

Es
> kann auch Sinn machen, die Regelwerte vom Eingriff her an die Meßwerte
> anzupassen: bist Du noch weit vom Sollwert weg, große PWM-Sprünge
> verwenden, bist Du schon nahe dran, sehr kleine Sprünge verwenden.
> Dadurch lassen sich schnelle Temperaturänderungen abfangen, ohne daß die
> Regelung extrem überschwingt.

Hmmmm??? Genau das soll doch der Regler machen oder was verstehe ich 
falsch?

Hajo

von Tom (Gast)


Lesenswert?

>@Tom
>Beitrag Lötstation kannte ich. Aber eben ist mir dort aufgefallen,
>dass dort in dem PID-Regler garnicht die Abtastzeit mit einbezogen wird.
>Das habe ich schon woanders gesehen. Kann das gut funktionieren?

Das verstehe ich jetzt nicht ganz. Volker schreibt doch:

1. Die Heizung wird mit einem PWM-Takt von 1s angesteuert. Hierfür ist
die Variable "pwm_reload" zuständig...

Die Temperatur wird wohl auch alle 1s gemessen.
Meiner Meunung nach bringt es nichts die Temperatur mit einer höheren 
Frequenz als die PWM-Frequenz zu messen.

Tom

von Ha Jo (Gast)


Lesenswert?

Tom wrote:
> Das verstehe ich jetzt nicht ganz. Volker schreibt doch:
>
> 1. Die Heizung wird mit einem PWM-Takt von 1s angesteuert. Hierfür ist
> die Variable "pwm_reload" zuständig...

Ja aber pwm_reload ist nicht für die Zeit zuständig sondern nur zum 
setzen des Sollwertes der PWM. Aber mir ist im  nachhinein aufgefallen, 
dass bei 1s Abtastzeit, diese aus der Reglerberechnung raus kann, da sie 
mit 1 ja nichts veändert. Aber wenn sie die Abtastzeit verändern, denke 
ich, ist das nicht mehr richtig so.

>
> Die Temperatur wird wohl auch alle 1s gemessen.
> Meiner Meunung nach bringt es nichts die Temperatur mit einer höheren
> Frequenz als die PWM-Frequenz zu messen.

Eben nur zum filtern vorweg, so wie Travel Rec oben schreibt. Das kann 
ich mir schon vorstellen. Werde ich mal probieren.

Einen schönen Tag wünscht
Hajo

von Ha Jo (Gast)


Lesenswert?

@Sven, Tupf, Karl, Thilo, Lothar, JÜrgen, Travel Rec, Tom

Ich sag mal danke bei Euch für Eure Beiträge. Hat mich gefreut so viele 
hilfreiche Tips zubekommen. Werde noch in einigen Links von Euch stöbern 
und den Regler dann für's erste so lassen. Ich denke die Ergebnisse wie 
oben gepostet sind völlig ausreichend für die Lötstation. Es sei denn, 
jemand hat noch etwas beizutragen.


Gruß Hajo

von Knut B. (Firma: TravelRec.) (travelrec) Benutzerseite


Lesenswert?

>Es sei denn, jemand hat noch etwas beizutragen.

Nö :)

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.