Forum: Mikrocontroller und Digitale Elektronik DS18S20 Eigenerwärmung?


von Max G. (l0wside) Benutzerseite


Lesenswert?

Hallo zusammen,

meine DS18S20 bringen mich noch um den Verstand. Ich bekomme in meiner 
Anwendung konstant zu hohe Werte.

Testsetup:
- Ein DS18S20P, eingebaut in die Schaltung, ausgelesen über Bitbanging 
am MSP430. Die Kommunikation ist ok (eingelesene Werte sind prinzipiell 
plausibel, auch mit dem Logic Analyzer sieht es gut aus). Betrieben wird 
die Schaltung mit 3,3V, das ist innerhalb der Spezifikation.
Gehäuse: TO92, Gehäuse ca. 15mm oberhalb der Leiterplatte.
- Zwei DS18B20, angeschlossen an ein USB-Interface. Einer ist mittels 
Kabelbinder direkt an oben genanntem Baustein angebracht (für optimale 
thermische Kopplung), der andere hängt ca. 2 cm daneben in der Luft.

Die gemessenen Werte müssten eigentlich ziemlich identisch sein. Die 
gesamte Leistungsaufnahme der Schaltung liegt im Bereich 100-150mW, ein 
Gehäuse ist nicht verwendet.

Leider differieren die Messungen ziemlich:
- DS18S20P im Board: 23,68°C (Scratchpad: 0=0x2F, 6=0x01)
- DS18B20 direkt daran: 22,94°C
- DS18B20, ein paar Zentimeter weiter: 22,56°C

Ich rätsle nun, was genau hier schiefläuft. Hat jemand eine Idee?

Max

von Norbert (Gast)


Lesenswert?

Hallo Max,

ich weiß nicht, ob es Dir was nutzt, aber mir ist auch schon 
aufgefallen, dass sich der Sensor (in meinem Fall ein DS18B20) in der 
"Anlaufphase", offensichtlich durch die Erwärmung der Verlustleistung 
der internen Verarbeitungslogik, selbst erwärmt. Also man schaltet die 
Sache ein, der MC fordert alle paar Sekunden einen Meßwert an und man 
sieht, dass die Temperatur in den ersten 15-30 Sekunden um fast ein 
halbes Grad Celsius hochläuft und sich dann erst stabilisiert. Bei mir 
wird der Sensor mit 5V betrieben.

So wie ich die Sache sehe, haben diese Sensoren tatsächlich eine 
Eigenerwärmung durch die in der internen Verarbeitungslogik entstehende 
Verlustleistung. Und die ist wohl nicht so unbeträchtlich, wie man 
zunächst annehmen sollte.

Gruß, Norbert

von Max B. (theeye)


Lesenswert?

Miss doch mal die Temperatur des Sensors. Mit einem infrarot Thermometer 
zB

Gruß Max

von (prx) A. K. (prx)


Lesenswert?

Max G. schrieb:
> - DS18S20P im Board: 23,68°C (Scratchpad: 0=0x2F, 6=0x01)
> - DS18B20 direkt daran: 22,94°C
> - DS18B20, ein paar Zentimeter weiter: 22,56°C

Ist auf dem Board etwas, das mehr als ein paar Milliwatt braucht?

von Karl H. (kbuchegg)


Lesenswert?

Norbert schrieb:
> Hallo Max,
>
> ich weiß nicht, ob es Dir was nutzt, aber mir ist auch schon
> aufgefallen, dass sich der Sensor (in meinem Fall ein DS18B20) in der
> "Anlaufphase", offensichtlich durch die Erwärmung der Verlustleistung
> der internen Verarbeitungslogik, selbst erwärmt. Also man schaltet die
> Sache ein, der MC fordert alle paar Sekunden einen Meßwert an und man
> sieht, dass die Temperatur in den ersten 15-30 Sekunden um fast ein
> halbes Grad Celsius hochläuft und sich dann erst stabilisiert. Bei mir
> wird der Sensor mit 5V betrieben.

Eine ähnliche Erfahrung hab ich auch gemacht.
Es hat einen Unterschied gemacht, ob ich den DS18B20 (bin mir jetzt 
nicht sicher, ob ich einen B oder S habe) alle 2 Sekunden oder alle 10 
Sekunden ausgelesen habe. Die Differenzen waren durchaus nicht zu 
vernachlässigen.

Gut, mir wars wurscht, weil ich sowieso eine Allergie gegen 
Luft-Temperaturangaben mit 3 Nachkommastellen habe. Aber prinzipiell ...

(Allerdings hab ich dann den Fehler gemacht, den DS in räumliche Nähe zu 
einem Schalttransistor zu setzen, der ein Relais schaltet. Jetzt kann 
ich in den DS-Daten sehen, ob der Transistor das Relais schaltet oder 
nicht. :-)

: Bearbeitet durch User
von (prx) A. K. (prx)


Lesenswert?

Karl Heinz schrieb:
> Es hat einen Unterschied gemacht, ob ich den DS18B20 (bin mir jetzt
> nicht sicher, ob ich einen B oder S habe) alle 2 Sekunden oder alle 10
> Sekunden ausgelesen habe.

Nicht sehr überraschend. Es sind zwar nur ein paar Milliwatt, aber wenn 
man alle 2s für 750ms misst... Beim SHT11, der ungefähr halb so viel 
frisst, steht im Datasheet, dass man besser nicht über 10% gehen sollte.

von Norbert (Gast)


Lesenswert?

Man sollte auch bedenken, dass die Sensoren eine Toleranz haben, die 
über den kleinstmöglichen Meßwertschritten liegt. Und vor allem aber 
auch, dass sich Wärme von anderen Bauteilen vorzüglich über kurze 
Kupferleiterbahnen der Platine überträgt. Alles Faktoren, die hier eine 
Rolle spielen könnten.

von Harald W. (wilhelms)


Lesenswert?

Karl Heinz schrieb:

> Gut, mir wars wurscht, weil ich sowieso eine Allergie gegen
> Luft-Temperaturangaben mit 3 Nachkommastellen habe.

ACK.

> Aber prinzipiell ...

...ist das möglich, wenn man solche Feinheiten wie Abschirmung
der Wärmestrahlung der Beleuchtung, die trotzdem immer durch-
laufen muss, Doppeltüren mit Schleuse dazwischen und ähnliches
beachtet.
Gruss
Harald
PS: Für einen Sensor wie den DS1820 würde ich eine Abweichung
von weniger als 0,7 Grad schon als gut bezeichnen.

von eProfi (Gast)


Lesenswert?

Ganz einfach: Du ermittelst zuerst die Abweichung der Sensoren 
(Grundgenauigkeit), indem Du sie gut thermisch koppelst und gleich nach 
dem Einschalten messen läßt. Dann läßt Du sie mit der gewünschten Rate 
wandeln und beobachtest die Erwärmung.
Für TO92 gibt es Aufsteckkühlkörper.

von Wilhelm F. (Gast)


Lesenswert?

Man könnte den Baustein auch noch schaltungstechnisch einschalten, wenn 
man ihn gerade im Augenblick braucht.

von (prx) A. K. (prx)


Lesenswert?

Lohnt nicht, die Ruheleistung ist vernachlässigbar (<1µA).

von Max G. (l0wside) Benutzerseite


Lesenswert?

A. K. schrieb:
> Max G. schrieb:
>> - DS18S20P im Board: 23,68°C (Scratchpad: 0=0x2F, 6=0x01)
>> - DS18B20 direkt daran: 22,94°C
>> - DS18B20, ein paar Zentimeter weiter: 22,56°C
>
> Ist auf dem Board etwas, das mehr als ein paar Milliwatt braucht?

Ja, ein µC mit rund 20mW, ein Schaltregler mit wohl um die 5-10mW und 
der Busankoppler mit um die 60mW. Letzterer ist auf der Platine in der 
diagonal entgegengesetzten Ecke, allerdings ist die LP nur 3x3cm groß.
Wärmeleitung allerdings müsste über die Beinchen kommen, die auch gegen 
Luft einen eher geringen Rth haben sollten. Leider habe ich keine Zahlen 
dazu. Ich hatte zuvor einen SMD-Fühler auf der LP, der deutlich höhere 
Abweichungen hatte - deswegen habe ich auf den bedrahteten Baustein 
umgestellt.

Ich versuche mal einen Blick mit der Wärmebildkamera, weiß aber nicht, 
ob die gut genug auflöst. In dieser Ecke der Leiterplatte würde ich 
eigentlich keine größere Temperaturüberhöhung erwarten.

Zu den Nachkommastellen: natürlich ist alles jenseits von 0,5°C 
absoluter Genauigkeit im Grunde Unfug, relativ würde ich die Grenze bei 
0,1°C ziehen. Ich kenne den Unterschied zwischen Auflösung und 
Genauigkeit, aber der Nutzer kann so selber entscheiden, wie er rundet.

Ich gehe mal auf 30s Messzyklus und schaue noch mal nach. Danke für die 
Beiträge.

Max

von Wilhelm F. (Gast)


Lesenswert?

A. K. schrieb:

> Lohnt nicht, die Ruheleistung ist vernachlässigbar (<1µA).

Aah, OK. Es obliegt dann dem Entwickler, das Ding nicht neben einem 
Heizelement zu platzieren, welches er nicht messen möchte.

von (prx) A. K. (prx)


Lesenswert?

Wilhelm F. schrieb:
> Es obliegt dann dem Entwickler, das Ding nicht neben einem
> Heizelement zu platzieren, welches er nicht messen möchte.

Eben. Seine knapp 100mW könnten schon reichen.

von Amateur (Gast)


Lesenswert?

Man sollte auch die Lage nicht vernachlässigen.

Steht eine Platine senkrecht und ist der Sensor an der Unterkante, so 
kannst Du Dir nur helfen, indem Du möglichst selten Misst.

Drehst Du dieselbe Platine um, so kann die Temperaturverteilung, je nach 
umgesetzter Leistung, eine völlig andere sein. Und das ohne jede 
Änderung am Aufbau (Layout).

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.