Hallo Zusammen,
Ich bin dabei so etwas wie eine Steuerung mit Datenlogger für eine
Wärmepumpe zu bauen. In der ersten Ausbaustufe geht es nur um das Messen
von 3 Temperaturen mit Pt1000 Sensoren.
Als Controller werde ich einen Atmega32-P verwenden. Die
Versorgungsspannung wird mit einen 24V Steckernetzteil, wo dann noch
DC/DC Wandler von Traco die 5V für die Elektronik generiert, bereit
gestellt.
Ich brauche 2 mal den Messbereich -40°C - +40°C, und 1 mal 0-100°C.
Auf den Tatsächlichen reellen Messwert kommt es nicht so sehr an. Nur
die Temperaturabweichung über den gesamten Messbereich sollte nicht um
mehr als 1-2°C abweichen.
Das ganze soll vom Aufbau her so einfach wie möglich werden und die
Kosten sollen auch überschaubar bleiben. (Normaler Messverstärker mit
Pt1000 kosten so zwischen 30 und 50€, ich möchte versuchen auf 10€
runter zu kommen.)
Als OPV-Schaltung habe ich diese von MaWin gefunden, und ich finde diese
hat genau das was ich brauche ohne schnickschnack.
Dann tut es folgende Schaltung mit einem LM358:
VCC VCC
| |
| LM358 |
| /+|-----+-- Aref
+------+---(-----------+--< | |
| | | | \-|--+ |
R1 R2 | | | | |
| | | +----(---+ |
| | | | |
| | | | |
+------)--|+\ | |
| | | >----+-- A/D | 100nF
| +--|-/ | | |
| | | | | |
Pt1000 +---)--R4--+ | |
| | | | |
| R3 | | |
| | | | |
+------+---+----------------+------+-- AGND
Was mir daran nicht klar ist, wozu der Spannungsfolger oben rechts ist?
Ich vermute, um die Spannung konstant zu halten? Als Externe
Refernzspannung für den Atmega würde ich die Spannung vom Ua dieses
LM358 nehmen. Die exakten 5V Aref würde ich mit einen Poti mit dem
Messgerät einmessen. Oder wird das zu ungenau?
Als Erklärung, ich brauche den bereich 0-5V, da später noch ein oder 2
Drucksensoren mit 0-10V Ausgang dazu kommen. Dort will ich dann einfach
nur einen Spannungsteiler nehmen.
Als OP wollte ich den OP2340 nehmen, oder ist der eher nicht so gut?
So ich hoffe das war verständlich :-)
Treter_Peter schrieb:> Was mir daran nicht klar ist, wozu der Spannungsfolger oben rechts ist?
Du kannst ARef nicht so stark belasten, wie es der Pt1000 tut.
Treter_Peter schrieb:> Als Externe> Refernzspannung für den Atmega würde ich die Spannung vom Ua dieses> LM358 nehmen
Nein, der LM358 liefert die gepufferte Referenzspanung des ATmega.
Treter_Peter schrieb:> Als Erklärung, ich brauche den bereich 0-5V, da später noch ein oder 2> Drucksensoren mit 0-10V Ausgang dazu kommen. Dort will ich dann einfach> nur einen Spannungsteiler nehmen.
Warum kann der Spannungsteiler nicht 10V aus 2.5V teilen ?
Die 2.5V sind doch 1000 mal stabiler (nicht: genauer) alsod ie 5V der
Versorgungsspannung.
Treter_Peter schrieb:> Als OP wollte ich den OP2340 nehmen,
Gibt's nicht, vermutlich meinst du OPA2340, der geht natürlich auch.
Wenn du sowieso 5V als VRef nehmen willst und einen Rail-To-Rail OpAmp,
kannst du es auch so machen:
VCC
|
+--------- AVCC
|
+------+---+--------- ARef
| | |
R1 R2 |
| | |
| | |
| | |
+------)--|+\
| | | >----+-- A/D
| +--|-/ |
| | | |
Pt1000 +---)--R4--+
| | |
| R3 |
| | |
+------+---+--------- AGND
und eben für 0.1V bis 4.9V berechnen.
Hallo,
ich würde die PT1000 über eine Brücke an den je nach Temperaturbereich
entsprechend beschalteten OP (mein Favorit ist der TS912/914) hängen
(auf meinem Tablet kann ich deinen Schaltplan leider nicht richtig
sehen). AVref über eine Spule mit der Versorgungsspannung verbinden und
auch den OP mit der gleichen Spannung versorgen. Dann würde ich mir für
die Temperaturbereiche eine LookUp-Table aufbauen und fertig. Wenn die
Spannung tatsächlich schwanken sollte, dann in der gesamten Schaltung -
also ist es egal. Für deinen Genauigkeit reicht das allemal. Das habe
ich schon >100x mit PTs und KTY so aufgebaut.
Gruss
Harry
Hallo,
Großes DANKE SCHÖN MaWin! Das mit der Aref-Spannung für den Atmega hab
ich völlig missverstanden gehabt.
Worauf ich hinaus wollte ist, das die VCC Spannung sehr ungenau ist. Ich
habe mal gemessen, so ca. 5,2V, (deshalb der OPA2340 (VCC bis 5,5V)).
Diese möchte ich nun mehr oder weniger exakt auf 5,0V bringen. Ich
dachte da an folgendes:
VCC
|
+--------- AVCC
|
Trimpoti Rx
|
|
+------------------------+
+------+---+--------- ARef |
| | | |
R1 R2 | |
| | | |
| | | |
| | | |
+------)--|+\ |
| | | >----+-- A/D 100nF
| +--|-/ | |
| | | | |
Pt1000 +---)--R4--+ |
| | | |
| R3 | |
| | | |
+------+---+------------------------+--AGND
Mit dem Trimpoti würde ich die Spannung möglichst genau einstellen und
mit dem Kondensator puffern.
Ist das sinvoll?
ok, hast mich überzeugt. :-)
Ich werde deinen Empfehlungen folgen und die interne ARef. Spannung
nutzen.
Abschließend noch 3 Fragen:
1. Bei den Messbereich 0...100C°, die Anlage steht draußen und im Winter
können es ja auch Minus-grade werden. Im Ausgeschaltetem zustand
verlasse ich also den Messbereich. Könnte das zum Problem werden?
2. Was denkst du, wie genau wird das ganze?
3. Wie kann ich den Drucksensor dann später anschließen. Die genaue
Aref-Spannung, die der Atmega ausgibt kenne ich ja nicht. Die Sensoren
haben in der Regel ja einen 0-10V Ausgang und müssen mit 24V Versorgt
werden.
So dann werde ich jetzt mal rechnen gehen.
Vielen Dank nochmal.
Treter_Peter schrieb:> Könnte das zum Problem werden?
Nein.
> Was denkst du, wie genau wird das ganze?
Du wolltest 1-2 Grad, und das geht.
Dein OPA2340 ist auf 150uV genau, bleiben
für die Widerstände 0.15% damit du ohne
Abgleich, d.h. ohne Kalibrierung, auf 1-2
GradC genau wirst.
Hast du nur 1% Widerstände, die aber ausreichend
temperaturstabil sind (je nach Temperaturbereich in
dem die Auswerteschaltung arbeiten soll), musst du
kalibrieren, d.h. mit bekannter Temperatur, Widerstandwert
oder Spannung den A/D-Wert ermitteln, der zu einer
bestimmten Temperatur gehört, und das dann in
Software umrechnen.
So wirs5t du das bei deinen Drucksensoren auch machen
müssen, statt Druck kannst du auch eine Spannung
vorlegen, die genau einem Druck entspricht.
Hallo,
ich brauche nochmal Hilfe, zwecks der Auslegung der Widerstände.
VCC VCC
| |
| LM358 |
| /+|-----+-- Aref
+------+---(-----------+--< | |
| | | | \-|--+ |
R1 R2 | | | | |
| | | +----(---+ |
| | | | |
| | | | |
+------)--|+\ | |
| | | >----+-- A/D | 100nF
| +--|-/ | | |
| | | | | |
RTD= +---)--R4--+ | |
PT1000 | | | |
| R3 | | |
| | | | |
+------+---+----------------+------+-- AGND
R1 = Vref/Irtd; Irtd ist dabei der ungefähre Messstrom. festgelegt auf
0,2mA. Das habe ich Verstanden. Wie man allerdings auf die anderen 3
Widerstände kommt, ohne nicht wenigstens einen Vorzugeben, ist mir
unklar.
Die Formeln aus diesem Beitrag:
Beitrag "PT1000-Messschaltung, kleine Hilfe bei Dimensionierung"
verstehe ich nicht ganz und, wenn ich damit Rechne, bekomme ich keine
plausiblen Werte.
Kann mir vlt. jemand erklären, was genau die Quellimpedanz R, c, und M
ist.
Danke
OK, mein Beitrag ist NUR vernünftig - er verzichtet auf die
ganzen Erfahrungen der OpAmp-Pfriemler - aber vielleicht ist
er dem EIGENTLICHEN Vorhaben dienlich:
Wie wäre es denn, den ganzen teuren OpAmp-Schnickschnack
wegzulassen und einfach ratiometrisch mit Uref = Ub
direkt an 3 ADC-Eingängen des Atmega32-P zu arbeiten?
Fehlerquelle sind dann nur der jeweilige Teilerwiderstand
und die Eigenschaften des AD-Converters. Für die Genauigkeit
gilt das genauso.
-40...+40 °C und 0...100 °C mit dem internen 10-Bit-ADC auf
< 2 °C stabil (!) aufgelöst sind damit keine Hexerei.
Bei gleitender Mittelung aus 4...8 Messungen kommt man
auf stabil (!) +/-1 °C.
Bei -40 °C (besonders Lufttemperatur) ist es auch nachteilig,
den Pt1000 dauernd mit Strom zu beaufschlagen. Damit heizt man
den Sensor und die Messumgebung auf!
Wenn man schon Geld für zusätzliche Bauteile ausgeben will,
nimmt man einen niederohmigen Logic-Level-MOSFET (und einen
weiteren Steuerpin des µCs), um die Pt1000 nur während der
Messung für ein paar ms mit Strom zu beaufschlagen. Bei einer
Wärmepumpe dürfte ein Messzyklus von einigen Sekunden ausreichend
sein.
Verbesserungen der Genauigkeit und Stabilität (!) auf
< +/- 0,5 °C, die auch mit dem ganzen OpAmp-Aufwand NUR SCHWER
möglich wären, sind mit einem externen 12-Bit-ADC mit 3 (4)
Eingängen für maximal das gleiche Geld und weniger Platz auf
der Platine zu erreichen!
Aber da es nun mal OpAmp-Pfriemelei sein soll:
Viel Glück damit!
Warum machst du das so kompliziert?
Nimm einen NTC 10K@25°C nach Masse; Vorwiderstand nach Ucc und Fertig.
Mit dem ADC den Spannungsabfall am NTC messen und umrechnen.
Da die Kennlinie der NTC auf diese Schaltung optimiert ist ergibt sich
eine (fast) Lineare Spannungs-Temperatur-Kennlinie.
Der Vorwiderstand wird so dimensioniert, dass er dem Temperaturwert
entspricht, bei dem die größte Genauigkeit/ Linearität benötigt wird.
z.B. wird mit einem NTC10K@25°C und einem 12K5 Vorwiderstand der
Meßbereich zwischen -5°C und +35°C mit einer Linearitätsabweichung von
unter 1K durch eine Gerade abgebildet.
Wenn du im Programm die tatsächliche Kurve mit einer segmentierten
Gerade mit 3 oder 4 Segmenten abbildest schaffst du den ganzen
benötigten Meßbereich.
http://www.reichelt.de/Heissleiter-Varistoren/NTC-0-2-10K/3//index.html?ACTION=3&GROUPID=3114&ARTICLE=13553&SHOW=1&OFFSET=16&
Oldie schrieb:> Wie wäre es denn, den ganzen teuren OpAmp-Schnickschnack> wegzulassen und einfach ratiometrisch mit Uref = Ub> direkt an 3 ADC-Eingängen des Atmega32-P zu arbeiten?Oldie schrieb:> Wenn man schon Geld für zusätzliche Bauteile ausgeben will,> nimmt man einen niederohmigen Logic-Level-MOSFET (und einen> weiteren Steuerpin des µCs), um die Pt1000 nur während der> Messung für ein paar ms mit Strom zu beaufschlagen. Bei einer> Wärmepumpe dürfte ein Messzyklus von einigen Sekunden ausreichend> sein.
Ich würde sogar noch weiter gehen. 1 Attiny841 pro Messfühler. 2 Kanäle
zum Messen und über einen weiteren Ausgang Spannung während des Messens
auf die Reihenschaltung von R+Pt1000 geben. Alles andere ist Software.
Noch einen RS485 Treiber auf die Platine und ein kleines Gehäuse und
alles in die Nähe der Messfühler. Wenn das mechanisch clever aufgebaut
ist wird auch die Verdrahtung einfach. Bauteile (incl. PCB) sollten <5€
pro Kanal kosten.