Forum: Mikrocontroller und Digitale Elektronik DS18B20 Spannung auf Datenleitung geht von 5V auf 2V => keine Kommunikation mehr


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 Thomas F. (thomasfischer25)


Lesenswert?

Hi,

ich betreibe in meinem Haus ein Netzwerk von DS18B20 One Wire Sensoren.
Die Verdrahtung ist alles andere alsideal. Mischverbau zwischen Stern 
und Serienverdrahtung der One Wire Sensoren. Zu dem Zeitpunkt als ich 
die Leitungen verlegt habe, war mir das nicht bewusst und jetzt muss ich 
mit dem leben was ich habe. Wände aufklopfen und neu verlegen ist nicht.
Abgefragt werden diese von einem Atmega32A.
Selbstgeschriebene Software also keine bekannte Lib aus dem Inet.

Ich habe 15 Sensoren angeschlossen.
Der Pullup Widerstand ist 1kOhm auf 5V.
Die Sensoren werden NICHT im parasitären Modus betrieben, sondern 
bekommen 5V (bzw. rund 4,88V).

Mein Problem:
Nach einiger Zeit (z.B. 2h aber auch schon 24h) bekomme ich keine 
Kommunikation mehr zwischen meinem Atmega und den Sensoren.

Wenn ich mir die Datenleitung mit dem Oszi anschaue, habe ich im Gutfall 
einen Spannungspegel auf der Datenleitung von maximal 4,88V. Im 
Schlechtfall, habe ich nur noch ~2V auf der Datenleitung.

Um das Problem wieder zu beheben, hilft es bisher nur die 
Versorgungsspannung der DS Sensoren kurz abzuziehen. Das heißt der 
Atmega etc. läuft weiter ohne Reset.

Scheint also, als würden sich die One Wire Sensoren irgendwie aufhängen 
oder der ein oder andere so viel Strom ziehen, dass die Spannung auf der 
Datenleitung gedrückt wird.

Ich habe auch versucht manuell aber auch automatisch im Fehlerfall die 
Datenleitung für 5s (also weitaus mehr als die nötigen 480µs) auf GND zu 
ziehen, um die One Wire Sensoren zu reseten. Hilft aber leider nicht.

Was passiert da genau? Wieso tritt der Fehler auf? Was kann ich noch 
probieren, um den Fehler zu beheben oder eine Behebungsmaßnahme 
implementieren. Einziges was mir aktuell noch einfällt wäre die 
Versorgungsleitung automatisch im Fehlerfall mal zu kappen. Aber das 
wäre erst der letzte Schritt. Möchte das Problem verstehen und im besten 
Fall unter den gegebenen Umständen so sauber wie möglich lösen.

Vielen Dank schonmal für jede Anregung!

von Chris K. (kathe)


Lesenswert?

Bist du dir sicher das du Originale DS18 hast ?
Fange mit dem letzten Schritt zuerst an das wird am schnellsten zur 
Lösung führen.

von Thomas F. (thomasfischer25)


Lesenswert?

Nein, sind leider unter anderem nicht originale DS18 dabe. Hatte schon 
öfters die Vermutung manch andere Probleme liegen an den nicht 
originalen DS18 und deshalb jetzt wieder Stück für Stück auf die 
originalen umgestellt. Sind aber sicherlich noch nicht alle 
ausgetauscht.

Der Letzte Schritt bedeutet auch Platine nochmal ändern und neu 
bestellen. Das will ich erstmal vermeiden :-) Schließlich ist die neue 
Platine ja noch so frisch.

von Thomas S. (Firma: Chipwerkstatt) (tom_63)


Lesenswert?

Ich würde auf jedem Ast, und da zumindest jeweils am letzten DS18B20 
einen Elko mit 10 uF einpflanzen. Je nach Stückzahl.

Wieviele sind denn überhaupt angeschlossen?

von Thomas F. (thomasfischer25)


Lesenswert?

15 Stück.

Ach jetzt kommt es mir, bei dieser Strecke ist es tatsächlich sogar 
"nur" eine Stichleitung. Das heißt alle 15 Ow Sensoren hängen 
hintereinander. Also doch keine Sternverdrahtung bei dieser Strecke 
(Habe im Haus 5 Strecken verbaut. Die anderen 4 funktionieren problemlos 
aber mit gemischter Topologie also Stern gemischt mit mehreren in 
"Reihe")

Die Idee mit dem Kondensator probiere ich mal in der Mitte meiner 
Strecke aus.

Tatsächlich ist die "Stichleitung" ein Ring, bei der GND und 5V an 
beiden Enden angeklemmt sind und nur die Datenleitung ist an einem Ende 
am Atmega verbunden. Das heißt der weiteste Punkt entfernt von 5V ist in 
der Mitte des Rings.

: Bearbeitet durch User
von Karl K. (leluno)


Lesenswert?

Alle ds1820 vom Netz trennen - einzeln wieder anschließen bis der Fehler 
auftritt.

von Peter D. (peda)


Lesenswert?

Thomas F. schrieb:
> Im
> Schlechtfall, habe ich nur noch ~2V auf der Datenleitung.

Dann miß doch einfach mal die Stromaufnahme aus der 5V Versorgung der 
Sensoren. Wie hast Du die überhaupt abgesichert?

Wenn die sich erholen bei Unterbrechung der VCC, dann kannst Du doch 
schnell auslesen, welcher sich stark erwärmt hat.

von Cyblord -. (cyblord)


Lesenswert?

Thomas F. schrieb:
> ich betreibe in meinem Haus ein Netzwerk von DS18B20 One Wire Sensoren.

Das ist ja furchtbar.

von Falk B. (falk)


Lesenswert?

Thomas F. schrieb:

> Ich habe 15 Sensoren angeschlossen.
> Der Pullup Widerstand ist 1kOhm auf 5V.

Grenzwertig. Das sind 5mA, wenn der BUS auf nahe 0V gezogen werden muss. 
garantiert sind nur 4mA. Ich würde auf minimal 1k5 gehen.

> Nach einiger Zeit (z.B. 2h aber auch schon 24h) bekomme ich keine
> Kommunikation mehr zwischen meinem Atmega und den Sensoren.

Dann hängt wohl einer.

> Um das Problem wieder zu beheben, hilft es bisher nur die
> Versorgungsspannung der DS Sensoren kurz abzuziehen. Das heißt der
> Atmega etc. läuft weiter ohne Reset.

Ist schon mal ein brauchbarer Workaround. Den kann man auch mit dem AVR 
machen. Passender MOSFET zum +5V schalten, fertig.

> Scheint also, als würden sich die One Wire Sensoren irgendwie aufhängen
> oder der ein oder andere so viel Strom ziehen, dass die Spannung auf der
> Datenleitung gedrückt wird.

Sieht so aus. Kann ein logisches Problem eines Sensor sein oder ein 
Latchup durch ESD/EMV-Probleme.

> Ich habe auch versucht manuell aber auch automatisch im Fehlerfall die
> Datenleitung für 5s (also weitaus mehr als die nötigen 480µs) auf GND zu
> ziehen, um die One Wire Sensoren zu reseten. Hilft aber leider nicht.

Logisch.

> Was passiert da genau? Wieso tritt der Fehler auf? Was kann ich noch
> probieren, um den Fehler zu beheben oder eine Behebungsmaßnahme
> implementieren.

Betreibe eine systematische Fehlersuche. Betreibe deine Sensoren 
einzeln am Bus. Betreibe nur einen Teil der Sensoren am Bus. Spendieren 
jedem Sensor 100nF nah am IC zwischen VCC/GND (Entkoppelkondensator). 
Spendiere jedem Sensor eine 5,6V Z-Diode an VCC/GND.

von Falk B. (falk)


Lesenswert?

Thomas F. schrieb:
> Der Letzte Schritt bedeutet auch Platine nochmal ändern und neu
> bestellen.

Wieso? Man kann die auch ändern und ein paar Drahtbrücken ziehen. Oder 
erlaubt das dein ästhetisches Empfinden nicht?

von Rainer W. (rawi)


Lesenswert?

Falk B. schrieb:
> Sieht so aus. Kann ein logisches Problem eines Sensor sein oder ein
> Latchup durch ESD/EMV-Probleme.

Wo soll im laufenden Betrieb eine ESD herkommen, wenn da niemand mit 
Entladungen rumhantiert.
Wenn elektromagnetische Verträglichkeit gegeben ist, kann das kein 
Problem sein.

Wenn ein einzelner Sensor die Ursache für das Problem ist, hilft nur 
abtrennen.
Bei 15 Sensoren sollte bei binärer Suche nach 8 Schritten klar sein, wer 
der Verursacher ist.

von Cyblord -. (cyblord)


Lesenswert?

Rainer W. schrieb:
> Falk B. schrieb:
>> Sieht so aus. Kann ein logisches Problem eines Sensor sein oder ein
>> Latchup durch ESD/EMV-Probleme.
>
> Wo soll im laufenden Betrieb eine ESD herkommen, wenn da niemand mit
> Entladungen rumhantiert.

Laut Eingangspost liegen da meterlange Leitungen durchs Haus. Auch evt. 
neben Stromkabeln an denen z.B. Waschmaschine und Trockner hängen 
können.

Seit wann ist 1Wire für sowas spezifiziert? Was denkt man wozu es 
Ethernet, CAN und spezielle Hausautomationsbusse gibt?

> Wenn elektromagnetische Verträglichkeit gegeben ist, kann das kein
> Problem sein.

Wo soll die bei einem pfuschigen 1Wire Verschlag herkommen?

Falk B. schrieb:
> Ist schon mal ein brauchbarer Workaround. Den kann man auch mit dem AVR
> machen. Passender MOSFET zum +5V schalten, fertig.

Workaround um eine pfuschige Ursache zu kaschieren.

: Bearbeitet durch User
von H. H. (hhinz)


Lesenswert?

Cyblord -. schrieb:
> Laut Eingangspost liegen da meterlange Leitungen durchs Haus. Auch evt.
> neben Stromkabeln an denen z.B. Waschmaschine und Trockner hängen
> können.
>
> Seit wann ist 1Wire für sowas spezifiziert?

Seit Anbeginn. Und richtig gemacht sind 300m kein Problem.

von Frederic S. (frederics)


Lesenswert?

Hast Du dir mal die Versorgungsspannung der Sensoren am Ende der Leitung 
mit dem Oszi angeschaut.

von Rainer W. (rawi)


Lesenswert?

Rainer W. schrieb:
> Bei 15 Sensoren sollte bei binärer Suche nach 8 Schritten klar sein, wer
> der Verursacher ist.

Es muss natürlich heißen "... nach 4 Schritten ..."

von DAVID B. (bastler-david)


Lesenswert?

Ich weis nicht ob dir das hilft aber ICH würde auch jeden einzeln 
Testen.
Ohne langen Kabel sondern mal vor Ort mit einer Test Schaltung für paar 
stunden.

Ich hatte vor vielen Jahren mal sowas ähnliches.
hatte auch ca. 5 stück an der selben Leitung.
Es lief Monate lang alles gut aber ab und zu und dann zuletzt dauerhaft 
keine Verbindungen zu den Sensoren mehr.
Zuerst machte ich mir nix draus als ich sah da die werte wieder Müll 
sind und Verschub das Fehler suchen auf später.

Irgendwann später Bemerkte ich dann das ein Sensor welcher im Flur 
bissel versteckt hinter der Tapete SEHR heiß war. nach dem Austausch 
lief wieder alles bestens.

Auch nie angefasst oder sonst was..

Ob die kleinen Teile einen brennt auslösen können weis ich zwar nicht.
Aber an die Tapete Klebe ich sie jetzt nicht mehr :-)

(Und Ja danke alle die jetzt wieder schreiben "SICHERUNG" verbauen)

von Hans-jürgen H. (hjherbert) Benutzerseite


Lesenswert?

Ich habe hier unzuverlässige Sensoren die insbesondere zwischen 50 und 
80 grdC ausfallen.
Deren Seriennummern sind:

28 B2 2E 88 00 00 00 E8

28 E0 ED 85 00 00 00 59

28 CB 93 86 00 00 00 50

28 FF 4E 86 00 00 00 D3

28 B6 B8 86 00 00 00 0A

28 B4 10 86 00 00 00 69

von Joachim B. (jar)


Lesenswert?

Thomas F. schrieb:
> ich betreibe in meinem Haus ein Netzwerk von DS18B20 One Wire Sensoren.

was mißt du denn?
ich messe nur Raumtemperaturen und mit

Hans-jürgen H. schrieb:
> zwischen 50 und
> 80 grdC

würde ich mich nicht wohlfühlen

man muß ja nicht im Sekundentakt messen weil das die Eigenerwärmung 
steigert und wenn Temperaturen so schnell steigen brennt das Haus.

von Thomas F. (thomasfischer25)


Lesenswert?

Vielen Dank schonmal für die vielen Antworten!

tatsächlich nutze ich die Sensoren nicht um die Temperaturen zu messen, 
sondern um zu prüfen ob ein Fenster offen ist. Dabei ist der Datenpin 
über einen Reed kontakt an den "Bus" angeschlossen. Ist die ROM ID am 
Bus zu finden, ist das Fenster zu, ansonsten ist es offen.

Es gibt zwar spezielle One Wire ICs die nur eine Rom ID haben, aber die 
waren (zumindest zu dem Zeitpunkt) teurer als die DS18B20. Und da ich 
die DS18B20 eh schon nutze und kenne, habe ich diese Verwendet.

Das heißt an jedem Fenster ist in der Leibung eine Unterputzdose, in der 
sich die Sensoren befinden. Die Temperatur, kann ich aber trotzdem 
auslesen.

Peter D. schrieb:
> Wenn die sich erholen bei Unterbrechung der VCC, dann kannst Du doch
> schnell auslesen, welcher sich stark erwärmt hat.
Manchmal kann es so einfach sein und man kommt selbst nicht drauf.
Vielen Dank für deinen Kommentar! Das habe ich mir gleich mal 
angeschaut.
Dabei war auffällig, dass alle Sensoren so um die 17° anzeigen. (Im Haus 
ist es natürlich wärmer, aber anscheinend in der Außenwand nahe dem 
Fenster doch sehr kalt.)
In der Küche habe ich ein doppelflügeliges Fenster. Ich wollte einfach 
nur weil es möglich ist, jeden Flügel einzeln auswerten. Deshalb hat 
jeder Flügel seinen eigenen Sensor und diese sind ca. 1cm voneinander 
entfernt. An dieser Stelle hat der eine Sensor 22° angezeigt und der 
andere 13°. Schonmal sehr verdächtig!
Diese habe ich jetzt auch entfernt. Jetzt warte ich wieder ob der Fehler 
mit den bisher noch angeschlossenen wieder auftritt.

Es müsste sich hierbei auch um "nicht" originale Sensoren halten.
Weiß jemand anhand von welchen Daten ich erkennen kann, ob es ein 
originaler Sensor ist oder nicht? Aufschrift auf den beiden Sensoren 
ist:
DALLAS 18B20 1804C4+051AG ROM ID: 0x28 AA 65 05 19 13 02 0E und
DALLAS 18B20 1804C4+051AG ROM ID: 0x28 AA 30 07 19 13 02 4E

Falk B. schrieb:
> Wieso? Man kann die auch ändern und ein paar Drahtbrücken ziehen. Oder
> erlaubt das dein ästhetisches Empfinden nicht?
Ja ästhetisches Empfinden :-)

Falk B. schrieb:
> Betreibe eine systematische Fehlersuche. Betreibe deine Sensoren
> einzeln am Bus. Betreibe nur einen Teil der Sensoren am Bus. Spendieren
> jedem Sensor 100nF nah am IC zwischen VCC/GND (Entkoppelkondensator).
> Spendiere jedem Sensor eine 5,6V Z-Diode an VCC/GND.
Auch das werde ich im Anschluss noch hinzufügen! Vielen Dank für den 
Kommentar!

Schließe jetzt jeden Sensor so nach und nach ab. Und dann wieder nach 
und nach an. Dauert leider etwas, weil ich zwischendurch immer wieder 
warte, bis der Bus ausfällt. Zudem muss ich alle Dosen aufschrauben :-)

Frederic S. schrieb:
> Hast Du dir mal die Versorgungsspannung der Sensoren am Ende der Leitung
> mit dem Oszi angeschaut.
Hab ich jetzt mal gemacht. Spannung ist traumhaft konstant. Also kein 
zappeln drauf etc.

Peter D. schrieb:
> Dann miß doch einfach mal die Stromaufnahme aus der 5V Versorgung der
> Sensoren. Wie hast Du die überhaupt abgesichert?
Bei jetzt noch 10 verbundenen Sensoren im Fall wenn alle Sensoren 
erreichbar, fließt die meiste Zeit ein Strom von ~330µA bis ~440µA und 
manchmal schlägt es aus auf 5mA (eventuell, dann wenn wie von mir 
programmiert alle 10s ein Temperatur Messen Trigger an alle Sensoren 
geht)

von H. H. (hhinz)


Lesenswert?

Thomas F. schrieb:
> Weiß jemand anhand von welchen Daten ich erkennen kann, ob es ein
> originaler Sensor ist oder nicht? Aufschrift auf den beiden Sensoren
> ist:
> DALLAS 18B20 1804C4+051AG ROM ID: 0x28 AA 65 05 19 13 02 0E und
> DALLAS 18B20 1804C4+051AG ROM ID: 0x28 AA 30 07 19 13 02 4E

Foto?

von Εrnst B. (ernst)


Lesenswert?

Thomas F. schrieb:
> Es müsste sich hierbei auch um "nicht" originale Sensoren halten.
> Weiß jemand anhand von welchen Daten ich erkennen kann, ob es ein
> originaler Sensor ist oder nicht?

Hier gibt's eine Übersicht über die verschiedenen Fälschungen, und wie 
man sie erkennt:
https://github.com/cpetrich/counterfeit_DS18B20

von Thomas S. (Firma: Chipwerkstatt) (tom_63)


Lesenswert?

Ich weiß ja nicht, in welchen Rhytmus Du die Sensoren quälst, ähm 
abfrägst. Sollten diese im Sekundenrhytmus sein, so wundert es mich 
nicht, dass die Teile warm werden. Steht auch im DaBla. Gönne jedem 
Sensor ein Stück Alu, so 2cm x 1cm x 2mm, dass den Sensor etwas abkuhlt. 
Denn mit schnellem Auslesen verfälscht Du eh die Messwerte. Und dann 
nebenbei suchst Du Dich zu Tode, weil einer wegen Temp 'aussteigt'

Ich  habe an meinen ein stück Kupfer, oder Alu. Das stabilisiert auch 
nebenbei den Sensor mit der Temp.

von Rainer W. (rawi)


Lesenswert?

Thomas F. schrieb:
> Schließe jetzt jeden Sensor so nach und nach ab. Und dann wieder nach
> und nach an. Dauert leider etwas, weil ich zwischendurch immer wieder
> warte, bis der Bus ausfällt.

Bei einer binären Suche müsstest du nur viermal warten, bis du den 
Übertäter ermittelt hast. Das setzt allerdings voraus, dass du die 
Maximalzeit kennst, nach der der Ausfall aufgetreten sein müsste. Bei 
deinem Einzelanklemmverfahren musst du die allerdings auch abwarten, 
bevor du den nächsten wieder dran hängst, um sicher zu sein, wer Schuld 
ist. Nur hast du mehr Redundanz.
Aber warum kannst du nach einem Ausfall nicht einfach nach und nach die 
Sensoren vom Bus nehmen, bis der Bus wieder funktioniert (Reset ohne 
Power-Cycle)?

p.s. Auch bei der Detektion von offenen Fenstern muss man allerdings 
nicht wirklich im Sekundenrhythmus abfragen, aber egal.

Thomas S. schrieb:
> Denn mit schnellem Auslesen verfälscht Du eh die Messwerte.

gelesen?

Thomas F. schrieb:
> tatsächlich nutze ich die Sensoren nicht um die Temperaturen zu messen,

: Bearbeitet durch User
von Falk B. (falk)


Lesenswert?

Thomas S. schrieb:
> Ich weiß ja nicht, in welchen Rhytmus Du die Sensoren quälst, ähm
> abfrägst. Sollten diese im Sekundenrhytmus sein, so wundert es mich
> nicht, dass die Teile warm werden. Steht auch im DaBla.

Welches du vielleicht gelesen, aber keine Sekunde verstanden hast.

 Gönne jedem
> Sensor ein Stück Alu, so 2cm x 1cm x 2mm, dass den Sensor etwas abkuhlt.

Unsinn. Selbst wenn man die im Sekundentakt auslesen würden, liegt die 
Erwärmung bei wenigen (1-2) Grad! Das Ding zieht maximal 1,5mA bei der 
Temperaturmessung, macht "sagenhafte" 7,5mW an 5V!

> Denn mit schnellem Auslesen verfälscht Du eh die Messwerte.

Die ihn gar nicht interssieren!

 Und dann
> nebenbei suchst Du Dich zu Tode, weil einer wegen Temp 'aussteigt'

Unsinn.

> Ich  habe an meinen ein stück Kupfer, oder Alu. Das stabilisiert auch
> nebenbei den Sensor mit der Temp.

Wollen wir wetten, daß du das falsch gemacht hast? Denn es bringt wenig 
bis nichts, das Gehäuse auf ein Stück Metall zu kleben, denn das 
isoliert thermisch recht gut. Nur der Massepin ist elektrisch wie 
thermisch sehr gut mit dem IC verbunden. DEN muss man an eine 
Kupferfläche löten, wenn man schneller auf Temperaturwechsel reagieren 
will. Aber mit der Stabilität hat das rein gar nichts zu tun.

von Svensson (svensson)


Lesenswert?

Hallo,
wir betreiben durchaus "Netze" mit vielen DS18B20 Sensoren. Und ich kann 
die Probleme des Fragestellers durchaus nachvollziehen, denn ich habe 
das selbst so erlebt.

Grundlegend sollte man sich klarmachen, daß es sich eigentlich um 
komplette Meßsysteme handelt und nicht um einfache Sensoren.
Die Form des Busses und die Anzahl der Sensoren scheint damit nicht 
kausal zusammenzuhängen. 100m und 60 Sensoren sind z.B. kein Problem an 
sich.

Tatsächlich treten diese Probleme unregelmäßig auf. Leider ist es nicht 
so, daß es einen einfach zu finden Schuldigen gibt. Es kann tagelang 
gutgehen, dann "hängt" plötzlich einer (vielleicht sind es auch 
mehrere). Ein Reset auf dem Bus bewirkt nichts, wohl aber das Abschalten 
und wieder Einschalten der Versorgungsspannung.
Alle Sensoren teste ich mit 1000 Messungen vorher, aber das ist leider 
auch keine Garantie, daß dann nicht doch wieder einer querschießt.

Was wir aber feststellen konnten ist, daß die Fälschungen/Nachbauten um 
Größenordnungen (!) häufigere Ausfallursachen haben. Insbesondere, wenn 
man viele Sensoren in einem System betreiben will, sollte man möglichst 
nur Originale verwenden.
Ein Problem ist, daß alle bisher gefundenen "wasserdichten" Sensoren in 
der Edelstahlhülse keine Originale sind, auch wenn der Verkäufer so 
anpreist - und das gilt leider auch für große Elektronikhändler.

Ich habe einen brauchbaren Workaround gefunden: Die Schaltung zählt die 
Anzahl der Sensoren auf dem Bus. Wenn die Antwort 0 lautet, dann wird 
die Versorgungsspannung vom MC für 10 Sekunden abgeschaltet. Und dann 
wird erneut gemessen.

von Thomas F. (thomasfischer25)


Lesenswert?

Εrnst B. schrieb:
> Thomas F. schrieb:
>> Es müsste sich hierbei auch um "nicht" originale Sensoren halten.
>> Weiß jemand anhand von welchen Daten ich erkennen kann, ob es ein
>> originaler Sensor ist oder nicht?
>
> Hier gibt's eine Übersicht über die verschiedenen Fälschungen, und wie
> man sie erkennt:
> https://github.com/cpetrich/counterfeit_DS18B20

Vielen Dank für den Link! Nachdem was da steht, habe ich keinen einzigen 
Originalen Sensor. Ich habe aber anscheinend bessere und schlechtere 
Fälschungen. Die von Aliexpress scheinen am schlechtesten zu sein. Ein 
paar andere habe ich von Az Delivery. Bei denen scheint es, soweit ich 
das von den Chargenbezeichnungen noch auseinanderhalten kann, keine 
Probleme zu geben. Nach dem oben genannten github Beitrag aber auch 
gefälscht.

Ich werde als nächstes mal welche von Reichelt bestellen, in der 
Hoffnung, dass diese dann echte originale sind.

Trotz alle dem läuft mein Bus jetzt seit mehr als 2 Tagen sehr stabil. 
Ich habe noch einen Sensor gefunden, der im Fehlerfall brühend heiß war, 
sodass ich mir sogar die Finger verbrannt habe. Der daneben liegende 
Sensor (ca. 1cm entfernt) war selbst nach ein paar Minuten noch durch 
den defekten auf 50°C aufgeheizt.

An ein paar Stellen habe ich 100nF Kondensatoren und 5,6V Z-Dioden 
hinzugefügt. An allen ging es auf die schnelle nicht, da ich nicht so 
viele Z-Dioden daheim hatte :-)

Bin jetzt jedenfalls ziemlich happy!

Vielen Dank an alle die mit wertvollen Beiträgen beigetragen haben! Ich 
war zu sehr auf meinen "schlechten" Bus fixiert und habe die 
Möglichkeit, dass es tatsächlich an der Qualität der Sensoren liegt gar 
nicht mehr in Betracht gezogen.

Meine Erfahrungen decken sich 1:1 mit denen von "von Svensson".
Das mit dem Zähler habe ich auch gemacht :-)

Habe jedenfalls viel daraus gelernt.

Vielen Dank!

von Svensson (svensson)


Lesenswert?

Die meisten der von mir untersuchten Sensoren waren keine Fälschungen, 
sondern Plagiate, die dann auch den Aufdruck "GX18B20" hatten.

Bei den beiden von Dir genannten Lieferanten habe ich auch die GX18B20 
erhalten - ich habe die Röhrchen aufgesägt. Aber vielleicht hast Du mehr 
Glück.

Tatsächlich haben wir uns dann Sensoren bauen lassen (in BW), da kommt 
man dann aber auf 18€ pro Sensor. Das sind dann wirklich Originale.

Bei uns sind die Probleme oft aber auch erst nach vielen Tagen 
aufgetreten. Wohlgemerkt das sind keine Defekte, die heiß werdenden 
defekten Sensoren kenne ich auch, sondern "irgendwie Störungen auf dem 
Bus". Nach dem Restart funktionieren die Sensoren dann wieder tage- oder 
wochenlang.
Inzwischen habe nicht wenige der GX18B20 schon 500.000 Messungen 
überstanden, d.h. die funktionieren an sich. Trotzdem kommt es 
gelegentlich zu diesen unerklärlichen Störungen.

Methodisch problematisch ist auch, daß die Störungen leider so selten 
sind und unregelmäßig auftreten. Da kann man schlecht mit dem Oszi 
messen und hoffen genau eine Störung zu sehen.

Ich dachte auch an EMV-Probleme (wäre bei uns in manchen Ecken auch 
wirklich denkbar). Aber m.E. spricht dagegen, daß die Kommunikation auf 
dem 1-Wire-Bus eine CRC Checksumme hat und solche Checksummenfehler 
extremst selten sind. Ich würde vermuten, daß EMV-Störungen sich dann 
auch in erhöhten Fehlerraten zeigen würden.

Übrigens finde ich Deinen Pullup von 1k zu klein. Bei 5V wären das 5mA, 
aber die Sensoren sind nur als Stromsenke für 4mA spezifiziert. Ich gehe 
nicht unter 2,2k.

: Bearbeitet durch User
von Rainer W. (rawi)


Lesenswert?

Svensson schrieb:
> Tatsächlich haben wir uns dann Sensoren bauen lassen (in BW), da kommt
> man dann aber auf 18€ pro Sensor. Das sind dann wirklich Originale.

Für einen originalen DS18B20 von Analog Devices Inc./Maxim Integrated 
brauchst du keine 18€ auszugeben.
https://www.digikey.de/de/products/detail/analog-devices-inc-maxim-integrated/DS18B20/956983
https://www.analog.com/en/products/ds18b20.html

von Svensson (svensson)


Lesenswert?

Für den "nackten" DS18B20 nicht, der kostet z.B. bei Mouser 4,69€ (ab 50 
Stk). Aber wir suchen halt gleich einen "wasserdichten Sensor", also 
DS18B20 in einer Tauchhülse montiert mit Anschlußkabel.
Kostet in einer einfachen Ausführung (1m PVC-Kabel) 8,40€ und in der von 
uns gewählten Ausführung (3m Silikonkabel, Edelstahlhülse und 
wasserdicht) eben 18€.

Allerdings bin ich auch von denen nicht 100% überzeugt, denn wasserdicht 
bedeutet offenbar IP65 und nicht IP68. Und leider lössen sich die 
Edelstahltauchhülsen in Salzwasser auf - im Extremfall Lochfraß 
innerhalb von drei Wochen!
Da stimmt wohl irgendwie die Stahlqualität nicht. Daher bin ich dabei 
auf  Tauchhülsen in V4A umzusteigen, die dann so lang sind, daß die 
Kabeleinführung oberhalb des Wasserspiegels liegt. Dann kann man auch 
wieder einfache Sensoren nehmen - könnte im Endeffekt auf nahezu den 
gleichen Preis hinauslaufen.

PS: Die haben auch einen guten Preissprung hingelegt, denn ich erinnere 
mich an Preise von unter 3€ pro Stück...

von Rainer W. (rawi)


Lesenswert?

Svensson schrieb:
> Für den "nackten" DS18B20 nicht, der kostet z.B. bei Mouser 4,69€ (ab 50
> Stk). Aber wir suchen halt gleich einen "wasserdichten Sensor", also
> DS18B20 in einer Tauchhülse montiert mit Anschlußkabel.

Der Preisunterschied zu den Originalteilen von Analog Devices Inc./Maxim 
sollte auch für "wasserdichten Sensor" nicht höher sein, als der 
Einzelpreis der Sensoren. Wenn ein wasserdicht verbauter Sensor 5€ 
kostet, darf ein Einzelstück mit einem garantierten Originalsensor nicht 
mehr als etwa 8€ kosten.
Das ist doch nicht wie bei den fair gehandelten Bananen in der 
Ladenkette mit der Liebe zu Lebensmitteln, wo der Erzeuger pro Kilogramm 
vielleicht 20ct mehr bekommt und im Laden die Dinger deswegen für 2€ pro 
Kilogramm mehr über die Theke gehen.

: Bearbeitet durch User
von Svensson (svensson)


Lesenswert?

Wie ich geschrieben habe, kostet ein einfacher Sensor "made in Germany" 
(1m PVC-Kabel, Tauchhülse, nicht wasserdicht) eben 8,40€. Und der 
hochwertigere Sensor (3m Silikon-Kabel, V2A-Hülse, wasserdicht) eben 
rund 18€.
Das kann man schon nachvollziehen. Tatsächlich hat der hochwertigere 
eine doppelte Crimpung, die auch noch anders aussieht (eher irgendwie 
gerollt als gecrimpt). Möglicherweise ist da auch noch eine Dichtung 
verbaut.

Und wir leben in einer Marktwirtschaft. Seit wann hat der Endpreis 
irgendetwas mit dem Materialpreis zu tun; man nimmt, was der Kunde 
bereit ist zu bezahlen - das haben schon die Venezianer so gemacht.

Selbst bei A.-D. kosten die inzwischen 3,10€. Vor zwei Jahren haben die 
noch unter 1€ gekostet. Da werden sich kaum die Rohstoffe um den Faktor 
3 verteuert haben.

: Bearbeitet durch User
von Sherlock 🕵🏽‍♂️ (rubbel-die-katz)


Lesenswert?

Thomas F. schrieb:
> Dabei ist der Datenpin
> über einen Reed kontakt an den "Bus" angeschlossen.

Wenn der Reed Kontakt geöffnet ist, hat der Daten-Pin dann einen 
definierten Pegel, damit er keine Radiowellen empfängt?

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.