Hallo zusammen, für ein Projekt möchte ich einen temperaturabhängigen Widerstand (z.B. Pt100, ggf. auch ein anderer) als Heizung nutzen, indem ich schlicht Strom durchschicke. Gleichzeitig interessiert mich die Temperatur des Sensors, die ich möglichst konstant halten möchte. Hierzu möchte ich einen simplen digitalen (PID) Reglern auf Mikrocontroller-Basis nehmen. Ich überlege nun, wie ich am geschicktesten den analogen Schaltungsteil aufbaue, also gleichzeitig die Temperatur messe und heize: Eine Möglichkeit wäre aus meiner Sicht, den Widerstand zu beheizen und zusätzlich einen 1-Ohm Shunt in den Kreis einzubauen. Gleichzeitig dann über dem Shunt mit einem CURRENT-MONITOR-IC (INA21x, z.B.) den Strom messen. Gleichzeitig die Spannung vor dem PT100 über einen zweiten AD-Wandler messen und so übers Ohm'sche Gesetz den PT100-Widerstand berechnen und auf eine Temperatur zurück rechnen. Mir fehlt hier die Erfahrung, ob das eine Herangehensweise ist, die überhaupt stabil laufen kann, wenn ich mit diesem Wert dann versuche zu regeln. Mit welcher Güte müsste ich hier überhaupt die AD / DA Wandlungen machen? Eine Alternative, die mir einfällt ist, eine Schaltung aufzubauen, die in kurzen Abständen zwischen Messen und Heizen umschaltet. Also zum Messen einen kleinen konstanten Messstrom liefert und zum Heizen dann auf den Heizstrom umschaltet. Das wäre sicher aufwändiger und ich habe Zweifel, dass das so funktioniert. Welche Herangehensweise haltet ihr für Sinnvoll / Zielführend? Gibt es vielleicht alternative Konzepte, auf die ihr mich stoßen könnt? Bin für Anregungen und Kritik dankbar!
Das Hauptproblem, das ich dabei sehe (egal welche Herangehensweise) besteht darin, dass du nicht so einfach lapidar sagen kannst: dann schick ich eben mehr Strom durch. Denn der Stromfluss ist bei gegebener Spannung ja durch den Widerstandswert vorgegeben. Wenn du mehr Strom durch den PT100 jagen willst, dann bedeutet das, dass du mit der Spannung über dem PT100 raufgehen musst. Das kannst du aber nicht beliebig hoch machen, denn am PT100 hängt ja auch der ADC vom µC. Und der kann nicht beliebig hohe Spannungen ab.
:
Bearbeitet durch User
Hallo Karl Heinz, danke für deine schnelle Rückmeldung. Dafür hab ich eine Lösung, mit der ich erst mal zufrieden bin und daher oben auch nicht näher drauf eingegangen bin: Ich nehme als DAC einen PWM Pin und gebe das 0..5V-Signal auf einen OPV, der mit 10V betrieben wird und mit dem Faktor 2 verstärkt. Dahinter hängt ein Transistor, der das so weitergibt. Hiermit erreiche ich mit einer hohen Dynamik die Temperaturen, die ich brauche (RT bis über 200 °C). Vor dem Pt100 liegen damit maximal 10V an, die würde ich zwecks Messung mit einem hochohmigem Spannungsteiler halbieren und dann über einen ADC in den Mikrocontroller einlesen. So gesehen war meine Formulierung oben etwas blöd: ich variiere zum Heizen die Spannung und der Strom ergibt sich daraus.
Bernhard S. schrieb: > Eine Möglichkeit wäre aus meiner Sicht, den Widerstand zu beheizen und > zusätzlich einen 1-Ohm Shunt in den Kreis einzubauen Sicher. Du musst wissen, welche Spannung und welchen Strom du durch den Pt100 schickst, um seinen Widerstandswert ausrechnen zu können und damit dessen Temperatur zu erfahren. Falls die Zuleitungen zu lang sind, musst du eine 4-Draht-Messung machen. Auf PWM würde ich verzichten, sondern rein linear analog.
Bernhard S. schrieb: > für ein Projekt möchte ich einen temperaturabhängigen Widerstand (z.B. > Pt100, ggf. auch ein anderer) als Heizung nutzen, indem ich schlicht > Strom durchschicke. Theoretisch geht das schon. Die hohe Genauigkeit eines PT100-Sensors kannst Du so aber nicht nutzen. Nimm lieber einen normalen Wider- standsdraht und nimm von dem eine Temperaturkurve auf. Gruss Harald
Irgendwie hab ich da trotzdem noch einen Knopf im Gehirn bei dem Konzept. Wenn du den so bestromst, dann kannst du doch nur die Temperatur des PT100 feststellen. Da du den aber aktiv 'beheizt' hat seine Temperatur nichts mehr mit der Temperatur des zu beheizenden Gutes zu tun?
So abwegig ist die Anwendung nicht, etwa um damit einen Gasstrom zu messen. Man bestimmt dann nicht die Temperatur, sondern die Leistung, die nötig ist um die Solltemperatur zu halten. Das ist dann ein Maß für den Luftstrom. Das wird so ähnlich auch gemacht - etwa im Luftmassen Sensor im Auto, in der Luftstromüberwachung bei gewerblichen Staubsaugern oder im Pirani Vakuum-Sensor. Das kann ggf. sogar bei der Temperatur noch genau sein - beim Differential Kalorimeter durchaus besser als 0,5 Grad bei der Temperatur, wenn auch da eher PT25 oder so. Es ist halt eine Frage der thermischen Kopplung und wie viel man da kompensieren kann. Die Methode der Wahl wird wohl PWM zur Regelung sein, ein relativ schneller ADC und dann eine Brückenschaltung zur Auswertung. Je nach Bereich der Heizleistungen hilft ggf. auch eine 2. Stufe mit weniger Strom für die Messung. Bei Konstanter Temperatur ist auch der Widerstand konstant, zumindest so weit, dass die Regelung davon ausgehen kann. So genau, dass es auf ein paar Prozente ankommt sind die Regelparamter in der Regel sowieso nicht.
Karl Heinz schrieb: > Wenn du mehr Strom durch den PT100 jagen > willst, dann bedeutet das, dass du mit der Spannung über dem PT100 > raufgehen musst. Das kannst du aber nicht beliebig hoch machen, denn am > PT100 hängt ja auch der ADC vom µC. Bei einer 4-Leiter Messung kann man an den Sense-Anschlüssen relativ hochohmig arbeiten. Da wird einem schon was als Schutz für den ADC einfallen. Ein simpler Widerstand, der den Strom durch die Eingangsschutzdiode begrenzt, könnte da schon reichen.
Bernhard S. schrieb: > Hiermit erreiche ich mit einer hohen Dynamik die Temperaturen, die ich > brauche (RT bis über 200 °C). Im Datenblatt des PT100 steht die maximal zulässige Leistung. 200°C dürften eher nicht drin sein, ohne ihn zu überlasten. Und wie schon gesagt wurde, Du mißt dann nur die Temperatur des Heizelements, aber nicht die des zu beheizenden Gutes.
Schau mal hier auf Seite 12: http://cds.linear.com/docs/en/datasheet/10134fd.pdfhttp://cds.linear.com/docs/en/datasheet/10134fd.pdf Da ist ein Opamp mit einer "geköpften" Lampe so beschaltet, dass der Heizdraht eine konstante Temperatur hält. Vielleicht kannst du das adaptieren mit einem PT100 anstelle des Glühfadens?
Wie soll denn die Temperatur von der Temperatur unterschieden werden? Zum einen willst Du den PT100 und natürlich seine Aufnahme und Umgebung aufheizen. Zum anderen willst Du mit ebendiesem PT100 die Temperatur messen. Auf Grund des Aufwandes, einen PT100 zur Messung heranzuziehen, schließe ich mal, dass das Ganze genau werden soll...
Bernhard S. schrieb: > Eine Alternative, die mir einfällt ist, eine Schaltung aufzubauen, die > in kurzen Abständen zwischen Messen und Heizen umschaltet. Also zum > Messen einen kleinen konstanten Messstrom liefert und zum Heizen dann > auf den Heizstrom umschaltet. Das wäre sicher aufwändiger und ich habe > Zweifel, dass das so funktioniert. Ich bin nicht sicher, ob das wirklich aufwendiger wäre, denn die Hälfte der Sache hast du ja sowieso schon drin: du willst die Heizleistung regeln, daß geht am einfachsten per PWM. PWM heißt nix anderes, als daß der Widerstand nur Teilzeit-Heizer ist. Da bietet sich ja förmlich an, ihn in seiner Freizeit zum Meßinstrument zu machen. Nimmt man einen Timer mit zwei PWM-Kanälen, hat man eine einfache Möglichkeit, ein Steuersignal beliebiger Polarität für den Meßstrom bereitzustellen und das in beliebiger (aber kontrollierter) Phasenlage zum Heizzyklus. Nimmt man weiterhin einen Timer, der in der Lage ist, die ADC zu triggern, hat man auch noch die Messung in einer festen Phasenlage zu einem der beiden PWM-Signale (sinnvollerweise natürlich dem für den Meßstrom). D.h. in Summe: du brauchst außen nur noch zwei schaltbare Stromquellen für Heiz- und Meßstrom und mußt diese an die beiden PWM-Ausgänge tüdern und den Meßpunkt bzw. die Meßpunkte an einen oder zwei ADC-Eingänge. Der Rest ist Software. Einmaliges Setup von Timer und ADC und eine ISR für den ADC, die das Meßergebnis holt und einen Reglerlauf triggert. Ohne Regler sind das nur etwa 20 Zeilen Code.
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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.