Forum: Analoge Elektronik und Schaltungstechnik Brückenschaltung PT1000


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 FE (Gast)


Angehängte Dateien:

Lesenswert?

Hallo,

ich will einen PT1000 (Tauchfühler, 2-Leiter) auslesen der die 
Temperatur einer Solaranlage (Wasser) überwacht. Der Messbereich ist 
0-80°C. Ich hab mir schon mehrere verschieden Schaltungen angesehen und 
denke, dass die Brückenschaltung den geringsten Aufwand bedeutet.

Ausgelesen wird mit einem µC. Wahrscheinlich ein Arduino. Dieser nutzt 
ja die 5V Versorgungsspannung als Referenz für den ADC. Mit diesen 5V 
will ich dann auch den Sensor und den Verstärker speisen.

Die Widerstände würde ich mit 0.1% Genauigkeit nehmen und als OPV den 
MCP6071, da dieser ein gutes Offsetverhalten zeigt. Mit dem Poti_2k will 
ich die Schaltung dann kalibrieren.

Nun wollte ich fragen ob die Schaltung, so wie ich sie im Anhang 
dimensioniert habe, brauchbar ist oder ob ich etwas vergessen habe. Kann 
mir jemand ein Feedback geben?


Viele Grüße,
FE

von Klaus R. (klara)


Lesenswert?

Hallo,
die Schaltung wird wohl funktionieren. Was sagt denn LTSpice?
Du wirst aber keinen linearen Verlauf erhalten. Letztlich sollte man an 
Hand der Ausgangsspannung den Widerstandswert des PT1000 berechnen um 
dann auf die Temperatur zu kommen. Formeln für den PT1000 gibt es ja. 
Und die Brückenschaltung lässt sich auch berechnen.
Etwas eleganter wäre der Einsatz von Konstantstromquellen. Hier müssten 
für die Brücke zwei Konstantstromquellen eingesetzt werden. Die aber 
wirklich konstant zu bekommen ist auch nicht ganz ohne.
Wie wäre es mit einem DS1631?

PS: Kommst Du mit dem Potential über dem PT1000 denn hoch genug für den 
MCP6071, auch wenn er R2R sein sollte?

mfg. Klaus.

: Bearbeitet durch User
von Ulrich H. (lurchi)


Lesenswert?

Auf den Poti würde ich verzichten - mit genauen Widerständen und richtig 
berechnet (bzw. simuliert) braucht man keinen mechanischen Abgleich 
mehr. Den letzten Feinabgleich macht man in Software - die 
Linearisierung muss man sowieso da machen. Der 10 bit AD (+ etwas 
Obersampling) sollte auch genügend Auflösung haben, so dass man den 
Bereich nicht so eng Auswählen muss. Wenn der Bereich z.B. von -20 C - 
120 C geht ist es auch OK. Vom Aufbau ist es vorteilhaft, wenn R1 und R3 
gleich sind (-> gleiche Widerstände haben oft ähnlichen TK). Zur 
Anpassung dient dann eher R2. Für mehr Auflöung wäre dann eher der Weg 
mit externem ADC passend.

Im Prinzip geht die Schaltung, es wäre aber noch gut zusätzliche 
Kondensatoren gegen HF Störungen vorzusehen (parallel zu R5 und am + 
Eingang des OPs). Es fehlt auch noch ein Schutz vor Überspannungen (z.B. 
Widerstand + 2 Diode).

So wie geplant hat man etwa 100 mV am Sensor und damit etwa 380µV/K als 
Steigung für die Spannung am Sensor. Da entspricht der mögliche Offset 
des MCP6071 schon fast 0,5 K. Es gibt bessere, chopperstabilisierte OPs.

Die Sensoren an der Solaranlage sind eher größere PT1000, da darf man 
vermultich auch etwas (0,3 mA) mehr Strom nutzen und hätte dann weniger 
Anforderungen an den OP.

von Klaus R. (klara)


Lesenswert?

Hallo,

>Ich hab mir schon mehrere verschieden Schaltungen angesehen und
> denke, dass die Brückenschaltung den geringsten Aufwand bedeutet.

Kennst Du auch dieses Verfahren?
http://electronicdesign.com/analog/improve-noise-immunity-rtd-ratiometric-measurements

mfg. klaus.

von FE (Gast)


Angehängte Dateien:

Lesenswert?

Danke für den Input bisher. Ich hab mir das mit den ADCs von klaus 
nochmal angeschaut.

Also ich habe zweimal die selben Sensoren die ich auslesen will. Wenn 
ich nur ein Kanal des ADC verwenden müsste, dann könnte ich den MCP3442 
nehmen.

Funktioniert das so wie ich das im Anhang aufgebaut habe?
Es ist schon ziemlich spät und ich entschuldige mich schonmal falls ich 
jetzt irgendwie total daneben gegriffen habe.

Viele Grüße,
FE

von Peter R. (pnu)


Lesenswert?

Das mit den 2V (D1) wird nicht funktionieren. Die Temperaturdrift usw. 
von D1 wird das Messergebnis direkt beeinflussen.
Abhilfe: mit dem 2.Kanal auch die Spannung an D1 messen und das 
Spannungsverhältnis Kanal1/Kanal2 weiterverwenden.

Vorschlag: D1 weglassen. Speisung aus 5V. Dafür Spannung an R2 =1kOhm 
und Spannung an Pt1000 messen. Aus dem Spannungsverhältnis Widerstand 
von Pt1000 berechnen. Daraus dann Temp ausrechnen. Durch dieses 
ratiometrische Messen fällt die Ungenauigkeit durch die Speisespannung 
5V bei der Rechnung heraus.

Außerdem wird durch den Teiler mit R2 = 10kOhm die Spannung am Pt1000 so 
klein, dass die Umsetzung Spannung-Temperatur (mV/Grad) wohl zu geringe 
Spannung bringt.

1 kOhm für R2 wäre wohl wesentlich besser. Auch R1 sollte man etwas 
größer messen. So, dass z.B. bei 120Grad (Ende des Messbereichs). gerade 
der volle Messbereich des DA-Wandlers genutzt wird.

: Bearbeitet durch User
von Uli der Troll (Gast)


Lesenswert?

Die einfachste Schaltung ist ein Spannungsteiler mit einen genauen 
Widerstand (0.1%). Dann damit auf einen 24Bit wandler. Mit 10bit ist man 
nirgendwo.
Eine Konstantstromquelle ist auch quatsch. Zu aufwendig.

von MaWin (Gast)


Lesenswert?

FE schrieb:
> Mit dem Poti_2k will ich die Schaltung dann kalibrieren.

Du brauchst die Schaltung nicht kalibrieren.

je nach Qualität ist ein Pt1000 genau, Klasse B beispielsweise auf 0.3 
GradC oder 0.1% vom Widerstandswert. Wenn du 0.1% Widerstände und eine 
Offsetspannung von 150uV hast, ist das Gesamtergebnis ohne Kalibrierung 
auf 1 GradC genau. Dabei spielt die exakte Versorgungsspannung keine 
Rolle, aber Schwankungen müssen weggemittelt werden.

Ein 10 bit A/D-Eingang löst das dann auf besser als 0.1 GradC auf, 
interessant ist die Umrechnung vom A/D-Wert in die Temperatur, man kann 
ggf. eine 1024 Einträge Tabelle nehmen und gar nicht rechnen.

Weil der MCP6071 nicht ganz auf 0V und nicht ganz an 5V herankommt, 
würde ich den Messbereich (0-5V) jedoch von -5 bis +85 GradC auslegen 
und wenn überhaupt, dann in Software kalibrieren. Aber hast du überhaupt 
eine Kalibrierquelle die genauer wäre als 1 GradC ?


FE schrieb:
> Funktioniert das so wie ich das im Anhang aufgebaut habe?

Theoretisch ja, aber der MCP3422 führt seine 2.048V+/-0.05% 
Spannungsreferenz nicht nach aussen, wenn deine D1 eine LM4040AN-2 wäre 
mit 2.048V+/-0.1% hat man Toleranzen.
Du teilst 2.048V durch 11, 0.18618V für 0 GradC, und willst diese mit 18 
bit gegen 2.048V messen, da hat ein bit 0,0000078125V, es kommt also 
23831 als Messwert raus.
Wäre die extern 2.048V maximal (2,049024V), die 10k minimal (9990), der 
Pt1000 Klasse B maximal (1001.17), die internen 2.048 minimal (2,050048) 
kommt 23890 raus, also 0.25% Abweichung, was auch knapp 0.7 GradC 
entspricht., Die Schaltung ist also ähnlich genau bzw. ungenau wie der 
OpAmp am 10 bit Wandler.

von Klaus R. (klara)


Lesenswert?

FE schrieb:
> Danke für den Input bisher. Ich hab mir das mit den ADCs von klaus
> nochmal angeschaut.
>
> Also ich habe zweimal die selben Sensoren die ich auslesen will. Wenn
> ich nur ein Kanal des ADC verwenden müsste, dann könnte ich den MCP3442
> nehmen.
>
Ich wollte eigentlich nur auf die radiometrische Messung hinweisen. Hier 
ein Beitrag dazu im Forum:
Beitrag "Re: PT1000 Messwandler Problem"

Noch etwas zum Vertiefen.
http://www.electronicdeveloper.de/ADCRatiometrisch.aspx

mfg. Klaus.

von Georg W. (gaestle)


Lesenswert?

Uli der Troll schrieb:
> Dann damit auf einen 24Bit wandler. Mit 10bit ist man
> nirgendwo.

Blödzinn! So etwas zeugt von mangelndem Sachverstand. Mehr als 12 Bit 
Auflösung sind bei dieser (und den meisten anderen) Temperaturmessungen 
Perlen vor die Säue.

von Georg W. (gaestle)


Lesenswert?

Am einfachsten nimmst du einen Spannungsteiler bestehend aus 47k und dem 
PT1000, versorgt aus der selben Quelle wie OPV und D/A-Wandler. Wenn du 
eine Brücke aufbauen willst kannst besser gleich einen 
Differenzverstärker benutzen. Dann kannst du auch gleich noch eine 
Offsetspannung addieren um den Nullpunkt zu korrigieren (wenn überhaupt 
notwendig). Nachteilig ist dann daß die Eingangsspannung nahe der Masse 
liegt, der OPV sollte einen Rail to Rail Eingang haben.

Linearisierung müsste man mal durchrechnen, ob das überhaupt was bringt. 
Wenn es ein Einzelstück bleibt ist es einfacher eine kleine 
Korrekturtabelle aufzunehmen und damit zu arbeiten. So ersparst du dir 
sämtliche Abgleicharbeiten zum Preis einer etwas schlechteren Auflösung.

Auf alle Fälle solltest du die Bandbreite begrenzen, 10 Hz reichen 
völlig aus.

Die Achillesverse ist oft die Montage des Temperaturfühlers. Wenn hier 
nicht alles stimmt (z.B. Kontakt Hüllrohr/PT1000-Element oder 
Temperaturgefälle über dem Fühler) hast du gleich ein paar Grad 
Differenz.

von FE (Gast)


Angehängte Dateien:

Lesenswert?

Hallo,

ich habe mich nochmal mit dem ADC beschäftig. Hat mich interessiert :)

Im Anhang ist ein Entwurf für die Schaltung. Mit dem CH1 des ADC messe 
ich die Spannung über den Widerstand R5. Da alle anderen Werte des 
Spannungsteilers bekannt sind, erhalte ich daraus die exakte 
Versorgungsspannung U.

Der CH2 des ADC misst die Spannung quer über die Wheatstone Brücke. Da U 
und die restlichen Widerstände bekannt sind, kann ich damit den 
Widerstand des PT1000 berechen.

Die Versorgungsspannung der Widerstände könnte ich noch mit einem FET 
an/ausschalten um eine Eigenerwärmung des PT1000 zu vermeiden. Ist das 
nötig? Die Fühler befinden sich ja in einem Rohr das immer mit Wasser 
durchflossen ist.

Wenn ich dann mit 16bit oder sogar 18bit messe, sollte ich eine gute 
Auflösung erhalten.

Die Genauigkeit hängt dann wahrscheinlich stark von den Widerständen ab.
An CH3 soll dann noch ein zweiter PT1000 mit dem selben Prinzip 
ausgelesen werden.

Viele Grüße,
FE

von Klaus R. (klara)


Lesenswert?

FE schrieb:
> Die Versorgungsspannung der Widerstände könnte ich noch mit einem FET
> an/ausschalten um eine Eigenerwärmung des PT1000 zu vermeiden. Ist das
> nötig? Die Fühler befinden sich ja in einem Rohr das immer mit Wasser
> durchflossen ist.
>
Das hängt natürlich auch vom Wärmewiderstand des PT1000 und dessen 
Gehäuse ab. Am PT1000 tritt in Deiner Schaltung 20 mW Wärmeleistung auf. 
Letztlich kannst Du die Eigenerwärmung wieder rechnerisch kompensieren.
mfg. Klaus.

von W.S. (Gast)


Lesenswert?

FE schrieb:
> ich will einen PT1000 (Tauchfühler, 2-Leiter) auslesen...

und wieviel Geld+Zeit planst du für den OpV, die Widerstände und den 
ganzen Abgleich ein?

Ich würde an deiner Stelle einen einigermaßen billigen hochauflösenden 
ADC nehmen, dazu einen Vorwiderstand mit einigermaßen geringem TK und 
das war's hardwaremäßig. Beispiel dafür gibt es genug, lies z.B. mal bei 
den Appnotes von Microchip nach.

Und vergiß die dummen Beiträge, wo Leute schreiben, daß ein hoch 
auflösender ADC sowas wie Perlen vor die Säue wäre. Guck bei Reichelt, 
m.W. kriegt man dort einen 19 oder 20 Bit Wandler von Microchip für 3..4 
Euro. Mit sowas hast du Auflösung reichlich und kannst den Vorwidestand 
recht groß dimensionieren, wodurch du die elektrische Belastung deines 
PT1000 klein halten kannst, was sowohl der Genauigkeit als auch der 
Lebensdauer des PT1000 zugute kommt.

W.S.

von MaWin (Gast)


Lesenswert?

W.S. schrieb:
> Mit sowas hast du Auflösung reichlich

Hmm, von Thermospannungen hast du bisher nichts gehört ?

Wo es um uV geht ist selbst die Deformation einer Platine messrelevant.

von Georg W. (gaestle)


Lesenswert?

FE schrieb:
> Die Versorgungsspannung der Widerstände könnte ich noch mit einem FET
> an/ausschalten um eine Eigenerwärmung des PT1000 zu vermeiden. Ist das
> nötig?

Höchst wahrscheinlich nicht. Dus solltest aber noch Abblckkondensatoren 
und zumindest ein kleines RC-Filter an den Eingang machen damit keine zu 
hohen Frequenzen (z.B.Netzbrumm) zum Wandler kommen.

W.S. schrieb:
> Und vergiß die dummen Beiträge, wo Leute schreiben, daß ein hoch
> auflösender ADC sowas wie Perlen vor die Säue wäre.

Hast du dir eigentlich schon einmal überlegt welchen Einfluss alleine 
die Güteklasse des Sensors hat und wie vielen Bit Auflösung dies 
entspricht? Alles was darüber hinausgeht endet all zu oft nur in einer 
Pseudogenauigkeit. Wie bei den Kameras, viele Megapixel klingen gut und 
lassen sich auch besser vermarkten, bedeuten aber noch lange nicht ein 
besseres Ergebnis. Wenn du einen billigen Wandler hoher nomineller 
Auflösung bekommst kannst du den gerne benutzen, erwarte aber keine 
Wunder.

Der MCP3424 erreicht die 18 Bit Auflösung auch nur bei einer Abtastrate 
von gemächlichen 2,75 SPS. Dafür liegt der Gain error schon bei max. 
0,35% bei einer Verstärkung von 1.

von Arc N. (arc)


Angehängte Dateien:

Lesenswert?

Georg W. schrieb:
> FE schrieb:
>> Die Versorgungsspannung der Widerstände könnte ich noch mit einem FET
>> an/ausschalten um eine Eigenerwärmung des PT1000 zu vermeiden. Ist das
>> nötig?
>
> Höchst wahrscheinlich nicht. Dus solltest aber noch Abblckkondensatoren
> und zumindest ein kleines RC-Filter an den Eingang machen damit keine zu
> hohen Frequenzen (z.B.Netzbrumm) zum Wandler kommen.
>
> W.S. schrieb:
>> Und vergiß die dummen Beiträge, wo Leute schreiben, daß ein hoch
>> auflösender ADC sowas wie Perlen vor die Säue wäre.
>
> Hast du dir eigentlich schon einmal überlegt welchen Einfluss alleine
> die Güteklasse des Sensors hat und wie vielen Bit Auflösung dies
> entspricht? Alles was darüber hinausgeht endet all zu oft nur in einer
> Pseudogenauigkeit.

Wenn die Auflösung zu gering ist, kann es unmöglich sein etwaige Fehler 
durch Kalibrierung zu verringern...

> Wenn du einen billigen Wandler hoher nomineller
> Auflösung bekommst kannst du den gerne benutzen, erwarte aber keine
> Wunder.
>
> Der MCP3424 erreicht die 18 Bit Auflösung auch nur bei einer Abtastrate
> von gemächlichen 2,75 SPS.

Was in den allermeisten Fällen für Temperaturmessungen ausreicht

> Dafür liegt der Gain error schon bei max.
> 0,35% bei einer Verstärkung von 1.

Der MCP ist eher (zumindest u.U.) aufgrund der geringen Eingangsimpedanz 
etwas ungünstig. Der Verstärkungsfehler spielt bei passender Schaltung 
keine Rolle. Die von MaWin erwähnten Thermospannungen dagegen u.U. 
schon, da diese mit diesem AD-Wandler nicht ohne externe Schaltung 
herausgerechnet werden können (correlated double sampling)

(die Widerstände R1, R2, RREF sollten in der angehängten Schaltung 
erhöht werden, da sonst der Strom durch die PT1000 zu hoch ist)

: Bearbeitet durch User
von W.S. (Gast)


Lesenswert?

Georg W. schrieb:
> Hast du dir eigentlich schon einmal überlegt welchen Einfluss alleine
> die Güteklasse des Sensors hat und wie vielen Bit Auflösung dies
> entspricht?

Dein Beitrag beginnt, mich zu ärgern. Hast du denn ÜBERHAUPT mal über 
das anstehende Meßproblem nachgedacht? Offensichtlich nicht. Meinen 
Beitrag hast du auch nicht wirklich gelesen.

Also hier nochmal zum Mitschreiben:
- wir nehmen einen SigmaDelta-Wandler mit so etwa 20 Bit Auflösung.
- dessen -Ref Eingang kommt auf Masse (sofern das geht)
- dessen +Ref Eingang kommt auf VCC, evtl. bissel gesiebt
- vom +Ref Eingang zum PT1000 kommt ein Vorwiderstand Rv
- die andere Seite des PT1000 kommt auch auf Masse bzw. an -Ref
- der +Adc Eingang kommt an die hochliegende Seite des PT1000
- der -Adc Eingang kommt an die masseseitite Seite des PT1000
Fertig.
Zum Rechnen beachten wir folgende Relation:
U über PT1000 plus U über Rv ist gleich Ureferenz
Der gemessene Adc-Wert plus dessen Abstand vom Fullscale-Wert entspricht 
ebenfalls der Referenz

Also haben wir
U(pt1000) = Adcwert
U(Rv) = Fullscalewert - Adcwert

Jetzt können wir beide ins Verhältnis setzen und das ergibt eine 
ratiometrische Widerstandsmessung. Wären beide Spannungen gleich, dann 
wäre die erzielbare Auflösung am höchsten. Aber wir machen Rv sehr viel 
größer als den PT1000, damit an Rv der Großteil der Vcc abfällt und 
unser PT1000 kein Heizstab wird. Deshalb brauchen wir ne Menge Bits, da 
wir nur einen relativ kleinen Bereich des ADC's ausnutzen.

Ich hab die ISO-Tabelle nicht auswendig gelernt, aber wir müssen - wenn 
ich mich recht erinnere - die mehr oder weniger 1000 Ohm des PT besser 
als 1 Ohm auflösen, um schlußendlich ne Temperaturauflösung von so etwa 
1 Grad zu erhalten. Das macht mindestens 11 Bit plus den üblichen 
Streubereich des Wandlers, ich schätze mal so etwa 14 benutzbare Bits 
sollten ausreichen. Wer es feiner haben will, braucht noch mehr Bits.

Klaro?

W.S.

von FE (Gast)


Angehängte Dateien:

Lesenswert?

Hallo,

ich habe leider keinen ADC gefunden der seine Referenzspannung nach 
außen führt, gleichzeitig preiswert ist, mit I2C angesteuert und mit 5V 
versorgt werden kann. Den MCP3424 bekomme ich für 3,50€.

Im Anhang ist die Schaltung die ich aufbauen will. Dazu auch eine kleine 
Rechnung. Mit R1 und R5 wird jeweils der Strom durch die PT1000 
festgelegt. Sind ca. 200µA.
Bei dieser Schaltung müssen nur R2 und R6 exakt bekannt sein.  Dafür 
nehme ich eine 0.1% Metallfilmwiderstand mit einem TC von 15ppm/°C. Das 
heißt ich hab bei einer Temperaturänderung von 40K eine Änderung von 
0,6mOhm (*15*10^-6 Ohm/K * 40K).

Was ein größeren Fehler miteinbringen wird, ist die Zwei-Leiter-Messung.

Der ADC hat auch einen Vorverstärker mit dem ich die Messsignale nochmal 
verstärken kann um die Auflösung zu verbessern. Inwieweit ich damit mein 
Signal/Rauschverhältnis verändere (verschlechtere), muss ich 
ausprobieren.
Zudem könnte ich über mehrere Messwerte mitteln um das Netzrauschen 
herrauszurechen, falls es ein Problem darstellen sollte.

Könnt ihr nochmal die Schaltung anschauen und eure Meinung dazu 
scheiben?
Danke :)

Viele Grüße,
FE

von PT100 Kalibrator (Gast)


Lesenswert?

Seit wann linearisiert man Platinwiderstände? Und mehr als 12bit sind 
wirklich Unsinn. Ohne Referenzspannung und Vierleiterschaltung braucht 
man auch über 0,1% Widerstände nicht nachdenken...
Und schaut euch mal die Anwendung an. Da braucht man vielleicht 0,5℃ 
Genauigkeit.

Mfg

von FE (Gast)


Lesenswert?

Also die Anwendung verlangt wirklich keine so hohe Genauigkeit. Wie du 
sagst, 0,5°C sind OK. Aber ich wollte schauen, was man für eine 
Genauigkeit mit soch einer Schaltung erreichen kann auch wenn die 
Vorraussetzungen nicht optimal sind.

Zum Überprüfen kann ich dann ein geeichtes Messgerät nehmen, dass auf 
0,1°C genau misst.

Da ich noch nie wirklich einen ADC extern verwendet habe, seh ich das 
als Übung an und versuch so viel wie möglich raus zu holen.

Viele Grüße,
FE

von eule (Gast)


Lesenswert?

Bist du sicher, dass du die 18 Bit benötigst? Nimm doch einen kleineren 
adc.

von Amateur (Gast)


Lesenswert?

Ein beliebter Trick ist, einen A/D-Wandler mit eigener Referenzspannung 
zu nehmen und diese auch gleich zur Messung heranzuziehen. Geht diese 
nämlich auf Wanderschaft (preiswert), so gleicht sich dies gleich wieder 
aus. Natürlich ist die Lastgrenze zu beachten oder ein Puffer 
vorzusehen.

Wie von anderen bereits gesagt: Entweder genaue Widerstände oder Poti. 
Beides zusammen ist Unsinn bzw. herausgeschmissenes Geld.

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.