Bei Ihrem DS18B20-Temperatursensor handelt es sich wahrscheinlich um eine Fälschung, einen Klon …
...es sei denn, Sie haben die Chips direkt bei Analog Devices (oder Maxim Integrated, bevor Analog Devices sie erworben hat, oder früher bei Dallas Semiconductor), einem autorisierten Händler (DigiKey, RS, Farnell, Mouser usw.) oder einem großen Unternehmen gekauft Händler, oder Sie haben beim Kauf wasserdichter DS18B20-Sonden außerordentlich sorgfältig vorgegangen. Wir haben im Jahr 2019 über 1000 „wasserdichte“ Sonden oder Bare-Chips von mehr als 70 verschiedenen Anbietern bei eBay, AliExpress und in großen und kleinen Online-Shops gekauft. Alle bei eBay und AliExpress gekauften Sonden enthielten gefälschte DS18B20-Sensoren, und fast alle Auf diesen beiden Websites gekaufte Sensoren waren gefälscht.
Autor: Chris Petrich, 11. November 2024. Lizenz: CC BY. Quelle: https://github.com/cpetrich/counterfeit_DS18B20/
(Sensorinformationen, die auf Sensoren oder Sonden basieren, die weit nach 2019 bestellt wurden, werden entweder als solche gekennzeichnet oder mit dem Jahr der Ergänzung versehen, z. B. „ (2020) “.)
TLDR; Woher weiß ich das?
Wenn das ROM nicht dem Muster 28-xx-xx-xx-xx-00-00-xx folgt, handelt es sich beim DS18B20-Sensor um einen Klon [5].
Allerdings ist das ROM-Muster kein ausreichender Test für die Echtheit. Wenn das Muster beispielsweise 28-xx-xx-xx-00-00-00-xx lautet und die obere Markierung den C4
angibt, handelt es sich bei dem Sensor um einen Klon, da dieses ROM-Muster älter ist als der C4
-Chip, vgl. Diskussion 42. (2024)
Es gibt eine Arduino-Skizze zum Testen von DS18B20-Sensoren:
-
discover-classify_fake_DS18B20.ino
ist eine menügesteuerte Skizze, die harmlose Tests durchführt, die anzeigen, ob ein Sensor Abweichungen von Dallas/Maxim/Analog DS18B20 aufweist. Optional kann versucht werden, einen Sensor einer bestimmten Familie zuzuordnen (siehe unten), hauptsächlich basierend auf der Reaktion auf undokumentierte Funktionscodes (Nutzung dieser Funktion erfolgt auf eigene Gefahr). Die Skizze ist nicht für die Arbeit mit Parasitenkraft ausgelegt. (Zum 10.11.2024 wurden die beiden Sketches discover_fake_DS18B20.ino
und classify_fake_DS18B20.ino
aus dem Jahr 2019 entfernt, da sie veraltet sind.)
Nomenklatur: Das ROM 28-AA-BB-CC-DD-EE-FF-0C würde im Linux 1-Wire-Subsystem als 28-FFEEDDCCBBAA geschrieben.
Übersicht Stand 2024
Es gibt den originalen/authentischen DS18B20 (Familie A1), der den Test der Zeit bestanden hat, und dann gibt es Klone, die entweder in erster Linie darauf ausgelegt sind, authentisch zu wirken, oder die mit innovativen oder zumindest nützlichen Funktionen ausgestattet sind.
Zur ersten Gruppe gehören die Familien A2 (veraltet) und A3 (neu hinzugekommen), die offenbar als Fälschungen auf den Markt gebracht wurden, mit der Absicht, den Kunden zu täuschen. Familie A3 kopiert jeden Aspekt der Originale, auf die in den Arduino-Skizzen dieses Repositorys aus dem Jahr 2019 getestet wurde, und gleicht zusätzlich die Daten im Diagramm „Temperaturdaten“ ab, d. h. den Temperaturversatz bei 0 °C und die Konvertierungszeit (die, gehört übrigens zu den langsamsten aller Klone). Im Gegensatz zu Familie A2 (die älter ist als dieses Repository) hörten sie hier jedoch mit ihren Bemühungen auf, das Original zu reproduzieren (das Markenzeichen eines Studentenprojekts...). Ich fühle mich zwar geschmeichelt, dass jemand tatsächlich Mikrochips nach meinen Vorgaben entworfen und hergestellt hat, halte dies jedoch für eine Verschwendung von Entwicklerkompetenz und technologischem Fortschritt. Ebenfalls zur ersten Gruppe gehört die Familie B1v2, eine neuere Variante der Familie B1, bei der der 2-Byte-Benutzerspeicher entfernt wurde, damit sie sich eher wie ein authentischer DS18B20 verhält: ein etwas trauriger Entwicklungsverlauf; Familie G, die, soweit ich das beurteilen kann, nichts Wesentliches hinzufügt, aber Macken einführt, die entweder lustig sind (vgl. Byte 6) oder im Parasiten-Stromversorgungsmodus zu einem Systemausfall führen (z. B. das Herunterziehen der Datenleitung auf Low(! )); und Familie H, die ohne die Macken ein bisschen wie Familie G aussieht. Zugegeben, die Familien G und H führen 12-Bit-Temperaturkonvertierungen doppelt so schnell durch wie der authentische DS18B20, also verdienen sie vielleicht Anerkennung dafür.
Die zweite Gruppe von Klonen ist die positive Seite. Das sehen wir
- GXCAS (Familie B1 ohne B1v2), 7Q-Tek (Familie B2), Mysentech (Familie D) und Novosense (Familie E) haben ihren Klonen 2 oder 3 Byte Benutzerspeicher hinzugefügt (Familie E verfügt über dedizierte Funktionscodes zum Lesen, schreiben und im EEPROM speichern),
- Familie C, Mysentech (Familie D1) und Xinbole (Familie F) haben Klone eingeführt, die eine 12-Bit-Temperaturkonvertierung in weniger als 30 ms durchführen, also 5 % der garantierten Konvertierungszeit des authentischen DS18B20 (zugegeben, Familie D1 hat eine schlechte Temperaturleistung). ),
- Xinbole (Familie F) verfügt über einen erweiterten Temperaturmodus, der die Messung von Temperaturen bis zu 150 °C ermöglicht
- Mysentech (Familie D2) kann in einen 14-Bit-Modus mit einer Auflösung von 0,016 °C wechseln.
Ich schätze die verborgenen Schätze einiger Chips und die Bemühungen der dahinter stehenden Ingenieure sehr. Dies alles sollte jedoch nicht als Empfehlung verstanden werden, da ich nicht getestet habe, ob die Sensoren den Spezifikationen in ihren jeweiligen Datenblättern entsprechen , geschweige denn den Spezifikationen im Maxim/Analog-Datenblatt.
Warum sollte es mich interessieren?
Abgesehen von ethischen Bedenken funktionieren einige der gefälschten Sensoren tatsächlich nicht im parasitären Energiemodus, haben einen hohen Geräuschpegel, einen Temperaturunterschied außerhalb des angekündigten ±0,5 °C-Bandes, enthalten kein EEPROM, weisen Fehler und nicht spezifizierte Ausfallraten auf oder unterscheiden sich auf eine andere unbekannte Weise aus den Spezifikationen im Maxim-Datenblatt. Offensichtlich sind die Probleme nicht groß genug, um Leute davon abzuhalten, Sonden bei eBay zu kaufen, aber es kann hilfreich sein, die tatsächlichen Spezifikationen zu kennen, wenn die Daten wichtig sind oder die Messbedingungen schwierig sind.
Womit haben wir es zu tun?
Die Definitionen sind unterschiedlich, aber gemäß AIR6273 ist eine Fälschung eine nicht autorisierte Kopie, Nachahmung, ein Ersatz oder eine Modifikation, die fälschlicherweise als ein bestimmtes Originalprodukt eines autorisierten Herstellers dargestellt wird [13]. Das Hauptproblem sind seit 2019 Nachahmungen ( Klone ), die so gekennzeichnet sind, dass sie den ahnungslosen Käufer irreführen. Glücklicherweise sind DS18B20-Klone nahezu trivial leicht zu identifizieren: Markierung auf dem Chip gedruckt statt gelasert? Keine Markierung im hinteren Einzug? Wahrscheinlich eine Fälschung. Der Inhalt des „Notizbuchs“ entspricht nicht dem Datenblatt? Wahrscheinlich eine Fälschung. Verhält sich systematisch anders als bekannte authentische Chips? Wahrscheinlich eine Fälschung.
Wie sehen sie aus?
Oben sehen Sie ein Beispiel eines authentischen , von Maxim hergestellten DS18B20-Sensors im TO-92-Gehäuse.
- Zum Zeitpunkt des Schreibens (2019) ist die Spitzenmarkierung der Original-Maxim-Chips eher gelasert als gedruckt.
- Die ersten beiden Zeilen,
DALLAS 18B20
, geben an, dass es sich bei diesem Teil um einen DS18B20 handelt (Dallas Semiconductor ist der ursprüngliche Hersteller), parasitäre Nur-Strom-Chips tragen die Kennzeichnung DALLAS 18B20P
. - Das
+
in der 4. Zeile zeigt an, dass das Teil RoHS-konform ist ([1]). - Die 3. Zeile gibt das Produktionsjahr und die Wochennummer des Jahres (in diesem Fall Woche 32 von 2019) an
- Die letzten beiden Zeichen in Zeile 3 geben die Revision des Stempels an (derzeit
C4
). - In Zeile 4 ist die dreistellige Zahl gefolgt von zwei Zeichen eine Art Chargencode, der es Maxim ermöglicht, den Produktionsverlauf zurückzuverfolgen.
- In Chips, die 2016 oder später hergestellt wurden, sind mir nur die Zeichenkombinationen
AB
und AC
begegnet [5].
- Die Markierung in der Vertiefung auf der Rückseite des Gehäuses ist
-
P
(Philippinen?) auf allen Chips von 2016 bis 2019, auf den meisten Chips im Jahr 2020 (2020) und auf den meisten (?) Chips, die mindestens bis ins Jahr 2009 zurückreichen [5]. -
THAI <letter>
(Thailand?), wobei <letter>
einer von I
, J
, K
, L
, M
, N
, O
, S
, T
, U
, V
, W
, X
und möglicherweise anderen ist, zumindest auf einigen produzierten Chips im Jahr 2011 [5]. Der <letter>
verwendet eine andere Schriftart als die Buchstaben, aus denen THAI
besteht. - möglicherweise zusätzliche Markierungen oder keine Markierungen auf einigen Chips seit 2020 (vgl. Ausgabe 21, Ausgabe 22) (2020)
- Nach dem, was ich auf dem TO-92-Paket gesehen habe, gibt es genau einen Chargencode, der mit einem Datumscode für Chips verknüpft ist, die im Einzug
P
gekennzeichnet sind [5]. Dies gilt nicht für Chips, die im Gedankenstrich [5] mit THAI
gekennzeichnet sind.
Um Verwirrung zu vermeiden: Die relevante Maxim-Teilenummer der hier untersuchten Chips ist DS18B20+
, also TO-92-Gehäuse und RoHS-konform. Möglicherweise gilt nicht alles, was auf dieser Seite gesagt wird, für die DS18B20+PAR
-Variante mit parasitärer Stromversorgung (das kann ich nicht sagen, da ich mir nur eine Handvoll davon angesehen habe). Der Kürze halber werden die Chips im Datenblatt [1] als DS18B20
bezeichnet.
Woher weiß ich, ob ich betroffen bin?
Wenn der DS18B20 über eine kontrollierte Lieferkette bei autorisierten Händlern gekauft wurde und als von Maxim oder Analog Devices hergestellt gekennzeichnet ist, sind die Chips echt.
Ansonsten kann (I) man die Übereinstimmung mit dem Datenblatt testen. (Das sollte man eigentlich tun, da selbst Originalteile möglicherweise in einer nicht autorisierten Vertriebskette falsch gehandhabt wurden. Aber das ist noch ein anderes Problem.) Wenn ein Sensor einen dieser Tests nicht besteht, handelt es sich um eine Fälschung (es sei denn, die Implementierung von Maxim ist fehlerhaft [4]). (II) Man kann das Sensorverhalten mit dem Verhalten des von Maxim hergestellten DS18B20 vergleichen. Diese Tests basieren auf der Vermutung, dass sich alle von Maxim hergestellten DS18B20 gleich verhalten. Dies sollte zumindest für Sensoren der Fall sein, die einen gemeinsamen Chip-Code haben (seit mindestens 2009 C4
[5]) [5].
Bezüglich (I) Diskrepanz zwischen dem, was laut aktuellem Datenblatt passieren sollte, und dem, was die Sensoren enthalten [1,5]
- Familie B: Reservierte Bytes im Scratchpad-Register können überschrieben werden (indem Sie den Anweisungen im Datenblatt folgen)
- Familie C: Der Sensor ist im 12-Bit-Modus festgelegt (d. h. Byte 4 des Scratchpad-Registers ist immer
0x7f
) - Familie C: Die Anzahl der EEPROM-Schreibzyklen ist sehr gering (Größenordnung 10 statt >50.000)
- Familie B1, D1: ROM per Software veränderbar, also nicht gelasert
- Familie A2, B2, D1: erhebliche Anzahl von Sensoren mit Offsets außerhalb des ±0,5-C-Bereichs bei 0 °C
- Familie D: Sensor reagiert nicht im parasitären Modus (gilt für die meisten Sensoren der Familie D)
- Familie D: Die Temperaturanzeige direkt nach dem Einschalten beträgt 25 statt 85 °C
- Familie D: Der Sensor führt Temperaturkonvertierungen mit niedriger Auflösung nicht schneller durch
- Familie D: Die reservierten Bytes 5 und 7 des Scratchpad-Registers sind nicht
0xff
bzw. 0x10
- Familie D1: Behält Temperaturmessungen während des Ein- und Ausschaltens bei
- Familie E: verfügt über ein benutzerdefiniertes Notizblockregister
- Familie F: Abschluss der Temperaturumrechnung kann nicht abgefragt werden
- Familie F: kann Temperaturen bis 150 °C messen (statt 125 °C)
- Familie A3: Die Abfrage zum Abschluss der Temperaturumrechnung funktioniert erst mit einiger Verzögerung
Daher entsprach ab 2019 jeder verfügbare gefälschte Sensor in mindestens einer Hinsicht nicht dem Datenblatt. (Ab 2024 gilt dies nicht mehr für die Familien G oder H.)
Bezüglich (II) gibt es einen erbärmlich einfachen Test für Unterschiede zu den von Maxim hergestellten DS18B20-Sensoren, bei dem die meisten gefälschten Sensoren scheitern [5]:
- Es handelt sich um eine Fälschung, wenn seine ROM-Adresse nicht dem Muster 28-xx-xx-xx-xx-00-00-xx folgt [5]. (Der ROM ist im Wesentlichen ein 48-Bit-Zähler, wobei die höchstwertigen Bits immer noch 0 sind [5].) Nur die Familie A3 unternimmt Anstrengungen, diese Regel zu vereiteln, aber ab 2024 übertreiben sie es. Außerdem hat mit Ausnahme der seltenen Familie A2 und der Familien A3, B1v2 und H keiner der Klone das reservierte Byte 6 im Scratchpad-Register korrekt festgelegt. Nur die Klone der Familien A2 und A3 reagieren korrekt auf undokumentierte Funktionscodes bezüglich der Trim-Werte.
Neben offensichtlichen Implementierungsunterschieden, wie sie oben unter (I) und (II) aufgeführt sind, gibt es auch Seitenkanaldaten, die zur Trennung von Implementierungen verwendet werden können. Beispielsweise ist die für eine 12-Bit-Temperaturkonvertierung gemeldete Zeit (ermittelt durch Abfrage des Abschlusses nach Funktionscode 0x44 bei Raumtemperatur) charakteristisch für einzelne Chips (bei konstanter Temperatur deutlich besser als 1 % reproduzierbar) und liegt in bestimmten Bereichen bestimmt durch die Schaltkreisinterna [5]:
- 11 ms: Familie D1
- 21-23 ms: Familie E (2024)
- 28–30 ms: Familie C
- 226–320 ms: Familie G (2024)
- 325–505 ms: Familie A2
- 460–525 ms: Familie D2
- 580–615 ms: Familie A1
- 577–626 ms: Familie A3 (2024)
- 585–730 ms: Familie B
Daher wird es einige Grenzfälle zwischen den Familien A1, A3 und B geben, aber die einfache Messung der für die Temperaturumwandlung benötigten Zeit reicht oft aus, um festzustellen, ob ein Sensor gefälscht ist.
Ein wichtiger Aspekt für den Betrieb ist die Fähigkeit eines Sensors, die Datenleitung gegen den festen Pull-up-Widerstand auf Low zu ziehen. Es stellt sich heraus, dass dies möglicherweise von Familie zu Familie unterschiedlich ist. Das Datenblatt garantiert, dass ein Sensor bei jeder Temperatur bis 125 °C mindestens 4 mA bei 0,4 V aufnehmen kann [1]. Bei einem Strom von 4 mA (1,2 kOhm Pull-up-Widerstand gegen 5 V) wurden von den Sensoren bei Raumtemperatur folgende low
Spannungen erreicht (beachten Sie, dass pro Familie nur 5 bis 10 Sensoren gemessen wurden):
- Familie A1: 0,058 - 0,062 V
- Familie B2: 0,068 – 0,112 V (alle bis auf einen Sensor: 0,068 – 0,075 V)
- Familie C: 0,036 - 0,040 V
- Familie D2: 0,121 - 0,124 V
Alle Sensoren liegen bei Raumtemperatur gut innerhalb der Spezifikationen, es ist jedoch eine Häufung der Daten nach Familien erkennbar, was darauf hindeutet, dass die Hardware unabhängig entwickelt wurde. Es könnte interessant sein, diese Messungen oberhalb von 100 °C zu wiederholen.
Alternativ,
- Es handelt sich um eine Fälschung, wenn die auf dem Gehäuse des Sensors aufgedruckte Datum-Chargen-Kombination nicht in der Maxim-Datenbank enthalten ist (Sie müssen den technischen Support von Maxim fragen, um dies herauszufinden). (Beachten Sie, dass es Fälschungen gibt, die eine „authentische“ Kombination aus Datum und Charge verwenden. Vergessen Sie diese Option also vielleicht.)
Beachten Sie, dass keiner der oben genannten Punkte Gewissheit darüber gibt, dass es sich bei einem bestimmten DS18B20 um ein authentisches Maxim-Produkt handelt. Wenn jedoch einer der oben genannten Tests eine „Fälschung“ anzeigt, handelt es sich höchstwahrscheinlich um einen Klon [5].
Welche Familien von DS18B20-ähnlichen Chips kann ich erwarten?
Zusätzlich zu DS18B20, das ursprünglich von Dallas Semiconductor hergestellt und von Maxim Integrated nach der Übernahme von Dallas weitergeführt wurde (Familie A1, unten), gibt es seit 2019 TO-92-Klone, die unabhängig von mindestens fünf anderen Unternehmen hergestellt wurden (Familien B1, B2, C, D, E) [5]. Die Einteilung in Familien basiert auf Mustern in undokumentierten Funktionscodes, auf die die Chips reagieren, da Ähnlichkeiten auf dieser Ebene wahrscheinlich nicht zufällig sind [5]. Chips der Familie B1 scheinen von GXCAS hergestellt und von GXCAS und UMW unabhängig kalibriert und verkauft zu werden. Chips der Familie B2 werden von Beijing 7Q Technology (7Q-Tek) hergestellt. Sowohl UMW als auch 7Q-Tek haben entsprechende Datenblätter auf ihren jeweiligen Webseiten. Familie D1 scheint aus dem Blickfeld zu verschwinden, da sie durch Familie D2 ersetzt wurde. Chips der Familie A2 waren ein seltener Fund. Sie verhalten sich überraschend ähnlich wie authentische Chips, weisen jedoch eine schlechte Temperaturgenauigkeit auf. Chips der Familie E sind ab 2022 neu auf dieser Seite, und die Familien F, G, H, A3 und B1v2 wurden 2024 hinzugefügt.
Bei unseren eBay-Käufen wasserdichter DS18B20-Sonden aus China, Deutschland und Großbritannien im Jahr 2018/19 enthielten die meisten Lose Sensoren der Familie B1, während jeder dritte Kauf Sensoren der Familie D hatte. Keiner hatte Sensoren der Familie A1 oder C. Weder noch Herkunft und Preis waren Indikatoren für die Sensorfamilie. Beim Kauf von DS18B20-Chips im TO-92-Gehäuse dominierte Familie D2 eindeutig, gefolgt von Familie B2 an zweiter Stelle und einer geringen Wahrscheinlichkeit, Chips der Familien A1 oder C zu erhalten.
In den folgenden ROM-Mustern stehen tt und ss für sich schnell und langsam ändernde Werte innerhalb eines Produktionslaufs [5], und crc ist die im Datenblatt definierte CRC8-Prüfsumme [1].
Entkappung DS18B20
Diese Collage zeigt Fotos der Matrizen aller DS18B20-Familien, denen wir 2019 begegnet sind. Alle Fotos haben den gleichen Maßstab, ca. 1,4 mm breit. Wir brachen das TO-92-Gehäuse mit einer Zange auf, lösten den Chip durch Auskochen in Kolophonium vom Kunststoffgehäuse und entfernten das Kolophonium mit Aceton in einem Ultraschallbad. Die Fotos wurden mit einer ziemlich alten USB-Kamera aufgenommen.
Bei der Familie A1 handelt es sich um den authentischen, von Maxim hergestellten DS18B20 ( C4
-Chip). Alle anderen Familien sind Klone. Beachten Sie die Ähnlichkeiten zwischen den Stümpfen der Familien D1 und D2 (im Einklang mit ihrer Ähnlichkeit in der Software) und die erheblichen Unterschiede zwischen den Familien B1 und B2 (im Gegensatz zu ihrer Ähnlichkeit in der Software).
Familie A1: Authentischer DS18B20
Ich habe 2019 bei eBay oder AliExpress keine Sonden mit diesen Chips erhalten, habe aber 2019 Chips von einigen wenigen Anbietern erhalten
- ROM-Muster [5]: 28-tt-tt-ss-ss-00-00-crc
- Scratchpad-Register:
(<byte 0> + <byte 6>) & 0x0f == 0
nach allen erfolgreichen Temperaturkonvertierungen und 0x00 < <byte 6> <= 0x10
[2,3,5]. Dh, <byte 6> = 0x10 – (<byte 0> & 0x0f)
. - Laut aktuellem Verhalten [5] und frühen Datenblättern [9] ist der Einschaltzustand des reservierten
<byte 6>
im Scratchpad-Register 0x0c
. - Gibt die Werte „Trim1“ und „Trim2“ zurück, wenn sie mit den Funktionscodes 0x93 bzw. 0x68 abgefragt werden [4]. Die Bitmuster sind einander innerhalb eines Produktionslaufs sehr ähnlich [4]. Trim2 entspricht derzeit weniger wahrscheinlich 0xff als Trim1 [5]. Trim2 war seit mindestens 2009 0xDB oder 0xDC und seit Herbst 2016 0x73/0x74 (alle mit
C4
-Chip) [5]. (Bei parasitären Nur-Strom-Chips ist Trim2 ab 2020 0xDB oder 0xDC.)- Trim1 und Trim2 kodieren zwei Parameter [5]. Das Bitmuster von Trim1 sei
[t17, t16, t15, t14, t13, t12, t11, t10]
(MSB bis LSB) und Trim2 sei [t27, t26, t25, t24, t23, t22, t21, t20]
. Dann,- Offset-Parameter =
[t22, t21, t20, t10, t11, t12, t13, t14, t15, t16, t17]
(vorzeichenloser 11-Bit-Wert) [5] und - Kurvenparameter =
[t27, t26, t25, t24, t23]
(vorzeichenloser 5-Bit-Wert) [5].
- Innerhalb einer Charge scheint sich der Offset-Parameter über 20 bis 30 Einheiten zu verteilen, während alle Sensoren innerhalb der Charge denselben Kurvenparameter haben [5].
- Der Offset-Parameter verschiebt den Temperaturausgang über einen Bereich von ca. 100 °C (0,053 °C pro Einheit), während der Kurvenparameter die Temperatur zumindest in aktuellen Versionen des Chips in einem Bereich von 3,88 °C (0,12 °C pro Einheit) verschiebt [5]. Beispielwerte für 2019 sind
offset = 0x420
und curve = 0x0E
, d. h. sie liegen ziemlich zentral innerhalb ihrer jeweiligen Bereiche.
- Der Temperaturversatz der aktuellen Chargen (2019) ist wie auf der Maxim-FAQ-Seite angegeben, d. h. ca. +0,1 °C bei 0 °C [6] ( also nicht wie im Datenblatt dargestellt [1,9]. Die Darstellung im Datenblatt stammt aus Messungen zum Zeitpunkt der Einführung des Sensors vor mehr als 10 Jahren [5,10 ]. Sehr wenig oder gar kein Temperaturdiskretisierungsrauschen [5].
- Eine Abfrage nach Funktionscode 0x44 zeigt eine Spanne von 584–615 ms zwischen Sensoren für eine 12-Bit-Temperaturumrechnung bei Raumtemperatur [5]. Die Konvertierungszeit ist für einzelne Chips leicht wiederholbar. Niedrigere Auflösungen verkürzen die Zeit proportional, dh 11-Bit-Konvertierungen nehmen die Hälfte der Zeit in Anspruch. Die Trimmparameter beeinflussen die Konvertierungszeit.
- Gibt eine Einschalttemperatur von 85 °C zurück, wenn das Scratchpad-Register gelesen wird, bevor die Temperaturkonvertierung abgeschlossen ist (sowohl im normalen als auch im parasitären Energiemodus). [5].
- Es scheint, dass der Chip eine Temperatur von 127,94 °C (=0x07FF / 16,0) zurückgibt, wenn eine Temperaturkonvertierung nicht erfolgreich war [5] (z. B. aufgrund von Leistungsstabilitätsproblemen, die im „Parasitary Power“-Modus mit mehreren DS18B20 reproduzierbar auftreten, wenn Vcc schwebend gelassen wird Beachten Sie, dass im Datenblatt eindeutig angegeben ist, dass Vcc im parasitären Modus an GND gebunden werden soll.
- Beispiel-ROM: 28-13-9B-BB-0B -00-00- 1F
- Beispiel-ROM: 28-CA-D6-10-10 -00-00- FE (2024)
- Anfängliches Scratchpad: 50 / 05 /4B/46/ 7F / FF /0C/ 10 /1C
- Beispiel für die Topnote: DALLAS 18B20 1932C4 +786AB
- Beispiel-Topnote: DALLAS 18B20 2411C4 +852AD (2024)
- Einzugszeichen:
P
(Datumscodes 1150 bis 2019) - Einzugszeichen: evtl. Optionen außer
P
seit 2020 (vgl. Heft 21) (2020)
Familie A1-Fishy: Authentisch, aber gestohlen?
Im Jahr 2019 habe ich bei eBay oder AliExpress keine Sonden mit diesen Chips erhalten, im Jahr 2019 jedoch Chips von einem Anbieter
Wenn ich eine wilde Vermutung anstellen würde, würde ich sagen, dass diese Chips irgendwo am Ende der Maxim-Produktionspipeline abgezweigt (gestohlen?) wurden [5]. Interessante Tatsache: Der Anbieter bewarb diese Chips als QT18B20, es handelte sich also beim Verkauf tatsächlich um Fälschungen von DS18B20-Klonen. Diese Chips sind als in Thailand und nicht auf den Philippinen hergestellt gekennzeichnet.
- ROM-Muster [5]: 28-tt-tt-Cs-03-00-00-crc
Die Chips folgen der Beschreibung der Familie A1 oben mit den folgenden Ausnahmen [5]:
- Beide Alarmregister sind auf 0x00 gesetzt (Scratchpad-Bytes 2 und 3).
- Die Konvertierungsauflösung ist auf 9 Bit eingestellt (dh beide Konfigurationsbits sind 0).
- Beide Trimmwerte sind 0x00, was zu falschen Temperaturen (dh sehr niedrig) und Konvertierungszeiten im Bereich von 400 bis 500 ms führt.
- Sobald die Trimmwerte auf einen angemessenen Wert eingestellt sind, liegt die Zeit für die Temperaturumrechnung innerhalb des oben für Familie A1 angegebenen Bereichs.
- Beispiel-ROM: 28-9B-9E-CB-03 -00-00- 1F
- Anfängliches Scratchpad: 50 / 05 /00/00/ 1F / FF /0C/ 10 /74
- Beispiel-Topnote: DALLAS 18B20 1136C4 +957AE
- Beispiel-Topnote: DALLAS 18B20 1136C4 +957AF
- Beispiel-Topnote: DALLAS 18B20 1136C4 +152AE
- Beispiel-Topnote: DALLAS 18B20 1136C4 +152AF
- Beispiel-Topnote: DALLAS 18B20 1136C4 +152AG
- Beispiel-Topnote: DALLAS 18B20 1136C4 +152AI
- Einzugszeichen:
THAI <letter>
Familie A2: Gutes Exemplar mit schlechter Temperaturleistung
Im Jahr 2019 habe ich bei eBay oder AliExpress keine Sonden mit diesen Chips erhalten, im Jahr 2019 jedoch Chips von einem Anbieter
Diese Chips werden nicht von Maxim hergestellt.
- ROM-Muster [5]: 28-00-ss-00-tt-tt-tt-crc, 28-ss-00-ss-tt-tt-tt-crc, 28-ss-00-00-tt-tt- 00-crc
Die Chips folgen der Beschreibung der Familie A1 oben mit den folgenden Ausnahmen [5]:
- Das ROM-Muster ist nicht kompatibel mit dem, was Maxim produziert.
- Der Trim2-Wert ist
0xFB
oder 0xFC
, also nicht kompatibel mit einer bekannten [5] Maxim-Produktion, die durch den Datumscode vorgeschlagen wird. (Beachten Sie, dass dies bedeutet, dass der Kurvenparameter 0x1f ist, also der höchstmögliche (vorzeichenlose) Wert [5]. Außerdem erstreckt sich der Offset-Parameter über 200 Einheiten und nicht über einen für Familie A1 typischen Bereich [5].)- Der Kurvenparameter ist ein vorzeichenbehafteter 5-Bit-Wert, der die Temperatur über einen Bereich von 31 °C (1 °C pro Einheit) verschiebt [5]. Das heißt, ein Kurvenparameter von 0x1f (-1 in Dezimalzahl) liegt in der Mitte des Bereichs.
- Die Zeit für die Temperaturumwandlung erstreckt sich über einen bemerkenswert weiten Bereich von 325 bis 502 ms zwischen Chips [5]. Dieser Bereich bleibt groß und liegt außerhalb der Grenzen der Familie A1, selbst wenn neuere Trimmeinstellungen angewendet werden [5]. Die Umwandlungszeit nimmt mit der Temperatur deutlich zu (ca. 10 % über 100 °C) [5]. Eine Konvertierungszeit von <500 ms ist mit den Angaben im 7Q-Tek QT18B20-Datenblatt [12] kompatibel.
- Gibt keine Einschalttemperatur von 85 °C zurück, wenn das Scratchpad-Register gelesen wird, bevor die Temperaturkonvertierung im parasitären Strommodus abgeschlossen ist [5].
- Der typische Temperaturunterschied bei 0 °C beträgt -3,5 bis -1,8 °C [5]. (Anekdotisch: Der Fehler scheint bei höheren Temperaturen geringer zu sein [5].) Sehr wenig oder gar kein Temperaturdiskretisierungsrauschen [5].
- Alarmeinstellungen (z. B. Notizblockbytes 2 und 3) scheinen zufälligen Inhalt zu haben [5].
- Einige Chips behalten ihren Scratchpad-Inhalt über einen Einschaltzyklus von 100 ms hinweg [5].
- Ein getestetes Exemplar funktionierte im Parasitenmodus nicht richtig.
- Einige Chips haben Bitfehler im ROM, die zu CRC-Fehlern führen [5]. (2020)
- Die obere Markierung ist gedruckt und nicht gelasert, und im Einzug befindet sich keine Markierung.
- Beispiel-ROM: 28-19-00-00-B7-5B-00-41
- Anfängliches Scratchpad: 50 / 05 /xx/xx/ 7F / FF /0C/ 10 /xx
- Beispiel-Topnote: DALLAS 18B20 1808C4 +233AA
- Beispiel-Topnote: DALLAS 18B20 1838C4 +233AA (2020)
- Einzugsmarke: keine
Familie A3: Entwickelt, um zu täuschen
2019 weder Chips noch Sonden erhalten. 2024 Chips gekauft, auch in freier Wildbahn beobachtet (vgl. Diskussion 42)
Diese Familie wurde der Liste im Jahr 2024 hinzugefügt. Sie scheint darauf ausgelegt zu sein, alle Tests der Arduino-Skizzen von 2019 auf dieser Website zu bestehen.
- ROM-Muster [5]: 28-tt-tt-tt-00-00-00-crc
- Beachten Sie, dass Originalchips mit diesem ROM-Muster vor über 15 Jahren hergestellt wurden.
- Beachten Sie, dass ein ROM dieses Musters älter ist als der
C4
-Chip. Das heißt, ein Chip mit einem Topmark-DALLAS-18B20- und C4
Chip zusammen mit diesem ROM ist nicht echt.
- Scratchpad-Register
<byte 6> = 0x0C
beim Einschalten und <byte 6> = 0x10 – (<byte 0> & 0x0f)
nach der Temperaturkonvertierung, [5]. - Gibt Daten zum undokumentierten Funktionscode 0x68 („Trim2“) zurück, [5]. Gibt Daten zum undokumentierten Funktionscode 0x93 zurück, ist jedoch standardmäßig
0xFF
(„Trim1“), [5].- Der Kurvenparameter ist vorzeichenlos und beeinflusst den Temperaturmesswert in ähnlicher Größenordnung wie Familie A1. [5]
- „Trim2“ stimmt nicht mit den bekannten Werten der Familie A1 überein. [5]
- Der Offset-Parameter wird anders implementiert als in Familie A1. [5]
- Die Standardeinstellungen für Alarmregister unterscheiden sich von denen der Familie A1 (
0x7F
und 0x80
) [5]. - Eine Stichprobe von 20 Sensoren wies einen durchschnittlichen Temperaturunterschied von +0,11 °C bei 0 °C auf, wobei die Streuung mit der anderer Familien vergleichbar war [5]. Das Rauschen einzelner Sensoren war vergleichbar mit dem von Sensoren anderer Familien [5].
- Die Abfrage des Abschlusses der Temperaturkonvertierung liefert erst nach einer geringfügigen Verzögerung (≤ 1 ms) nach Beginn der Temperaturkonvertierung gültige Messwerte, [5]. Dies steht im Gegensatz zu allen anderen Sensoren der Familien AE und G, die diese Funktion implementieren.
- Verzögerte Abfrage nach Funktionscode 0x44 zeigt ca. an. 589–621 ms für eine 12-Bit-Temperaturkonvertierung und proportional weniger bei niedrigerer Auflösung [5].
- Der Sensor zeigt an, dass im parasitären Leistungsmodus die Temperaturumwandlung im parasitären Leistungsmodus funktioniert (basierend auf einem oberflächlichen Test) [5].
- Gibt eine Einschalttemperatur von 85 °C zurück, wenn das Scratchpad-Register gelesen wird, bevor die Temperaturkonvertierung im parasitären Leistungsmodus abgeschlossen ist. [5].
- Beispiel-ROM: 28-3E-43-87 -00-00-00- 18 (vgl. Diskussion 42)
- Beispiel-ROM: 28-CA-BA-61 -00-00-00- A3
- Beispiel-ROM: 28-06-64-2B -00-00-00- 46
- Erstes Scratchpad: 50/05/7F/80/7F/FF/0C/10/93
- Beispiel-Topnote: DALLAS 18B20 2402C4 +817AB (vgl. Diskussion 42)
- Beispiel-Topnote: HXY 18B20 2340
- Beispiel-Topnote: MSKSEMI 18B20 2420
Familie B1: GXCAS 18B20, passende Temperatur-Offset-Kurve im Datenblatt
Habe 2019 Sonden von einer Reihe von Anbietern erhalten, Chips von zwei Anbietern im Jahr 2019. Ein Anbieter schickte Chips mit der Aufschrift UMW statt DALLAS
- ROM-Muster [5]:
- 28-AA-tt-ss-ss-ss-ss-crc (GXCAS-Marke)
- 28-tt-tt-ss-ss-ss-ss-crc (UMW-Marke)
- Das Scratchpad-Register
<byte 6>
ändert sich nicht mit der gemessenen Temperatur (Standard 0x0c
) [5]. - DS18B20 Write Scratchpad-Bug (0x4E) / UMW Scratchpad [5,12,14]:
- Wenn 3 Datenbytes gesendet werden (gemäß DS18B20-Datenblatt, TH, TL, Config), ändert sich
<byte 6>
zum dritten gesendeten Byte. - Wenn 5 Datenbytes gesendet werden (gemäß UMW-Datenblatt, TH, TL, Config, User Byte 3, User Byte 4), überschreiben die letzten beiden Bytes
<byte 6>
bzw. <byte 7>
.
- Gibt keine Daten zum undokumentierten Funktionscode 0x68 [5] zurück. Gibt Daten von den Codes 0x90, 0x91, 0x92, 0x93, 0x95 und 0x97 zurück [5]. Der Rückgabewert als Antwort auf 0x97 ist
0x22
[5]. - Der ROM-Code kann in der Software mit der Befehlsfolge „96-Cx-Dx-94“ [5] geändert werden. (Das UMW-Datenblatt gibt an, dass der ROM-Code geändert werden kann, gibt jedoch nicht an, wie [14].) Der Familiencode (
0x28
) kann nicht geändert werden [5]. - Ersetzt
0x0c
für den tatsächlichen Wert von <byte 6>
, wenn das Scratchpad-Register gelesen wird, bevor die Temperaturkonvertierung im parasitären Leistungsmodus abgeschlossen ist. - Temperaturoffset gemäß Maxim-Datenblatt (-0,15 °C bei 0 °C) [6]. Sehr wenig oder gar kein Temperaturdiskretisierungsrauschen [5].
- Die Abfrage nach Funktionscode 0x44 zeigt ca. 589–728 ms für eine 12-Bit-Temperaturkonvertierung und proportional weniger bei niedrigerer Auflösung [5].
- Der Sensor zeigt an, dass im parasitären Leistungsmodus die Temperaturumwandlung im parasitären Leistungsmodus funktioniert (basierend auf einem oberflächlichen Test) [5].
- Gibt eine Einschalttemperatur von 85 °C zurück, wenn das Scratchpad-Register gelesen wird, bevor die Temperaturkonvertierung im parasitären Leistungsmodus abgeschlossen ist. [5].
- Auf dem Würfel steht „GXCAS“.
- Beispiel-ROM: 28 -AA- 3C-61-55-14-01-F0
- Beispiel-ROM: 28-AB-9C-B1 -33-14-01- 81
- Erstes Scratchpad: 50/05/4B/46/7F/FF/0C/10/1C
- Beispiel-Topnote: DALLAS 18B20 1626C4 +233AA
- Beispiel-Topnote: DALLAS 18B20 1804C4 +051AG
- Beispiel-Topnote: DALLAS 18B20 1810C4 +051AG
- Beispiel-Topnote: DALLAS 18B20 1921C4 +921AC (2020)
- Beispiel-Topnote: DALLAS 18B20 1926C4 +926AC (2020)
- Beispiel-Topnote: GXCAS 18B20E 1847D02
- Beispiel-Topnote: UMW 18B20 1935C4
- Einzugsmarke: keine
Familie B1v2: Warum dieses Update?
Im Jahr 2019 weder Chips noch Sonden erhalten. Im Jahr 2024 Chips erhalten, siehe auch Ausgabe 40
Diese Chips scheinen ca. auf dem Markt erschienen zu sein. 2024, wie in Ausgabe 40 berichtet. Während die undokumentierten Funktionen anscheinend mit denen der Familie B1 übereinstimmen, hat sich das Verhalten des Notizblockregisters geändert, um besser zu Familie A1 zu passen.
- ROM-Muster [5]: 28-tt-tt-ss-ss-ss-ss-crc
- Unterschiede zur Familie B1:
- Das Scratchpad-Register
<byte 6>
verhält sich wie Familie A1. Dh, <byte 6> = 0x10 – (<byte 0> & 0x0f)
, [5] und Problem 40. - Durch das Schreiben von Alarmregistern und Konfigurationsregistern werden andere Werte im Scratchpad-Register nicht verfälscht, [5] und Problem 40.
- Das Scratchpad-Register speichert keine Benutzerbytes, wenn 5 Datenbytes gesendet werden, dh
<byte 7>
ist auf 0x10
festgelegt. [5].
- Gibt keine Daten zum undokumentierten Funktionscode 0x68 [5] zurück. Gibt Daten von den Codes 0x90, 0x91, 0x92, 0x93, 0x95 und 0x97 zurück [5]. Der Rückgabewert als Antwort auf 0x97 ist
0x22
[5]. - Der ROM-Code kann in der Software mit der Befehlsfolge „96-Cx-Dx-94“ [5] geändert werden. Der Familiencode (
0x28
) kann nicht geändert werden [5]. - Temperaturoffset gemäß Maxim-Datenblatt (-0,15 °C bei 0 °C) [6]. Sehr wenig oder gar kein Temperaturdiskretisierungsrauschen [5].
- Die Abfrage nach dem Funktionscode 0x44 zeigt etwa 650 ms für eine 12-Bit-Temperaturkonvertierung und proportional weniger bei niedrigerer Auflösung [5].
- Der Sensor zeigt an, dass im parasitären Leistungsmodus die Temperaturumwandlung im parasitären Leistungsmodus funktioniert (basierend auf einem oberflächlichen Test) [5].
- Gibt eine Einschalttemperatur von 85 °C zurück, wenn das Scratchpad-Register gelesen wird, bevor die Temperaturkonvertierung im parasitären Leistungsmodus abgeschlossen ist. [5].
- Beispiel-ROM: 28-E4-FA-2F -57-23-0B- AF (vgl. Ausgabe 40)
- Beispiel-ROM: 28-0D-72-9A -20-23-07- C3
- Beispiel-ROM: 28-94-77-5F -33-23-09- 37
- Erstes Scratchpad: 50/05/4B/46/7F/FF/0C/10/1C
- Beispiel-Topnote: GXCAS 18B20T 2310006
- Beispiel-Topnote: XINBOLE DS18B20 2310C4 +3E1AC
- Einzugsmarke: keine
Familie B2: 7Q-Tek QT18B20 mit -0,5 °C Temperaturoffset bei 0 °C
Habe 2019 sowohl Sonden als auch Chips dieser Serie von einer Reihe von Anbietern bezogen. Drei Anbieter schickten Chips mit der Aufschrift 7Q-Tek statt DALLAS
- ROM-Muster [5]: 28-FF-tt-ss-ss-ss-ss-crc
- Das Scratchpad-Register
<byte 6>
ändert sich nicht mit der gemessenen Temperatur (Standard 0x0c
) [5]. - DS18B20 write Scratchpad-Bug (0x4E) / QT18B20 Scratchpad [5,12]:
- Wenn 3 Datenbytes gesendet werden (gemäß DS18B20-Datenblatt, TH, TL, Config), ändert sich
<byte 6>
zum dritten gesendeten Byte. - Wenn 5 Datenbytes gesendet werden (gemäß QT18B20-Datenblatt, TH, TL, Config, Benutzerbyte 3, Benutzerbyte 4), überschreiben die letzten beiden Bytes
<byte 6>
bzw. <byte 7>
.
- Gibt keine Daten zum undokumentierten Funktionscode 0x68 [5] zurück. Gibt Daten von den Codes 0x90, 0x91, 0x92, 0x93, 0x95 und 0x97 zurück [5]. Der Rückgabewert als Antwort auf 0x97 ist
0x31
[5]. - Der ROM-Code kann in der Software nicht mit der Befehlsfolge „96-Cx-Dx-94“ [5] geändert werden.
- Zumindest in einigen neueren Beispielen unterscheiden sich die Standardeinstellungen für Alarmregister von der Familie A1 (
0x55
und 0x00
) [5]. (2024) - Ersetzt
0x0c
für den tatsächlichen Wert von <byte 6>
, wenn das Scratchpad-Register gelesen wird, bevor die Temperaturkonvertierung im parasitären Leistungsmodus abgeschlossen ist. - Der typische Temperaturunterschied bei 0 °C beträgt -0,5 °C [6]. Sehr wenig oder gar kein Temperaturdiskretisierungsrauschen [5].
- Im Jahr 2024 wies eine Stichprobe von 10 Sensoren einen durchschnittlichen Temperaturunterschied von -0,24 °C bei 0 °C auf [5]. (2024)
- Die Abfrage nach Funktionscode 0x44 zeigt ca. 587–697 ms für eine 12-Bit-Temperaturkonvertierung und proportional weniger bei niedrigerer Auflösung [5].
- Der Sensor zeigt an, dass im parasitären Leistungsmodus die Temperaturumwandlung im parasitären Leistungsmodus funktioniert (basierend auf einem oberflächlichen Test) [5].
- Gibt eine Einschalttemperatur von 85 °C zurück, wenn das Scratchpad-Register gelesen wird, bevor die Temperaturkonvertierung im parasitären Leistungsmodus abgeschlossen ist. [5].
- Der Die-T-TEK hat "7Q-TEK" geschrieben (unter Verwendung des chinesischen Charakters für die Ziffer 7).
- Beispiel ROM: 28 -FF- 7C-5A-61-16-04-ee
- Beispiel ROM: 28 -FF- E8-E8-54-E2-1F-24 (2024)
- Erstes Scratchpad: 50/05/4b/46/7f/ff/0c/10/1c
- Erstes Scratchpad: 50/05/55/00/7f/ff/0c/10/21 (2024)
- Beispiel Topmark: Dallas 18b20 1626C4 +233AAA
- Beispiel Topmark: Dallas 18b20 1702C4 +233AAA
- Beispiel Topmark: Dallas 18b20 1810c4 +138ab
- Beispiel Topmark: Dallas 18b20 1829c4 +887ab
- Beispiel Topmark: Dallas 18b20 1832C4 +827AH
- Beispiel Topmark: Dallas 18b20 1833c4 +058aaa
- Beispiel Topmark: Dallas 18b20 1908c4 +887ab
- Beispiel Topmark: Dallas 18b20 1912C4 +001AC ( NB: Diese Datum/Stapel -Kombination wird auch für echte Chips verwendet [5] )
- Beispiel Topmark: Dallas 18b20 2012c4 +887ab (2020)
- Beispiel Topmark: 7Q-TEK 18B20 1861C02
- Beispiel Topmark: 18b20 2214 (2024)
- INTIP MARK: Keine
Familie C: Kleiner Versatz bei 0 ° C
Erhielt keine Sonden, sondern Chips von einigen Anbietern im Jahr 2019
- ROM-Muster [5]: 28-FF-64-SS-SS-TT-TT-CRC
- Scratchpad Register
<byte 6> == 0x0c
[5]. - Gibt keine Daten zum undokumentierten Funktionscode 0x68 oder einem anderen undokumentierten Funktionscode [5] zurück.
- Der typische Temperaturversatz bei 0 ° C beträgt +0,05 ° C [6]. Sehr wenig, wenn auch Temperaturdiskretisierungsrauschen [5].
- EEPROM hält nur etwa acht (8) Schreibzyklen (Funktionscode 0x48) [5].
- Der angegebene Power -Modus (parasitär/normal) als Antwort auf den Funktionscode 0xb4 kann falsch sein, abhängig vom Auftragsleistungspin und die Datenlinie werden betrieben (z. Der Chip wird weiterhin den parasitären Leistungsmodus melden) [5].
- Umfragen nach Funktionscode 0x44 zeigt 28-30 ms (dreißig) für eine 12-Bit-Temperaturumwandlung [5]. Die Temperaturumwandlung funktioniert auch im parasitären Leistungsmodus [5].
- Arbeitet nur im 12-Bit-Konvertierungsmodus (Konfigurationsbyte liest immer
0x7f
) [5]. - Die Einstellungen des Standardalarmregisters unterscheiden sich von der Familie A1 (
0x55
und 0x00
) [5].
- Beispiel ROM: 28 -FF- 64-1D-CD-96-F2-01
- Erstes Scratchpad: 50/05/55/00/7f/ff/0c/10/21
- Beispiel Topmark: Dallas 18b20 1331C4 +826AC
- Beispiel Topmark: Dallas 18b20 1810c4 +158ac
- Beispiel Topmark: Dallas 18b20 1924c4 +158ac
- INTIP MARK: Keine
Familie D1: Lauter Müll mit Big Cap
Obatinierte Sonden von zwei Anbietern Anfang 2019, die 2019 Chips von einem Anbieter erhalten haben
- ROM-Muster [5]: 28-TT-TT-77-91-SSS-SS-CRC und 28-TT-TT-46-92-SS-SS-CRC
- Scratchpad Register
<byte 7> == 0x66
, <byte 6> != 0x0c
und <byte 5> != 0xff
[5]. - Gibt keine Daten zum undokumentierten Funktionscode 0x68 [5] zurück. Reagiert mit Daten oder Statusinformationen nach Codes zurück
- 0x4d, 0x8b (8 Bytes), 0xba, 0xbb, 0xdd (5 Bytes), 0xee (5 Bytes) [5] oder oder
- 0x4d, 0x8b (8 Bytes), 0xba, 0xBB [5].
- Erstes Byte nach undokumentiertem Funktionscode 0x8b ist [5]
-
0x06
: Sensoren funktionieren nicht mit parasitärer Kraft . Sensoren lassen die Datenlinie in parasitärer Leistung schwebend [5]. -
0x02
: Sensoren arbeiten im parasitären Leistungsmodus (und berichten, ob sie parasitär angetrieben werden).
- Es ist möglich, willkürliche Inhalte als ROM -Code und für Bytes 5, 6 und 7 des Scratchpad -Registers nach undokumentierten Funktionscodes 0xa3 bzw. 0x66 zu senden [5]. Der Familiencode des Geräts kann geändert werden [5].
- Temperaturfehler bis zu 3 ° C bei 0 ° C [6]. Sehr laute Daten [5].
- Die Umfrage nach Funktionscode 0x44 zeigt ca. 11 ms (elf) zur Umwandlung unabhängig von der Messauflösung [5].
- Chips enthalten eher einen hochwertigen Kondensator als einen EEPROM, um Alarm- und Konfigurationseinstellungen zu halten [5]. Die letzte Temperaturmessung und Aktualisierungen der Alarmregister bleiben zwischen nicht zu langer Stromzyklen [5].
- Der Kondensator behält einige Minuten Speicher beibehalten, es sei denn, der VCC -Pin ist mit dem GND -Pin verbunden. In diesem Fall beträgt die Speicherretention 5 bis 30 Sekunden [5].
- Chips reagieren empfindlich auf die Art und Weise, wie Strom angewendet wird [5]. ZB, um von allen mit GND verbundenen Stiften zu steigern, scheint es eine gute Idee zu sein, Daten zu lassen und ein Bit (z. B. 100 ms) zu schweben, bevor sie tatsächlich eine Spannung auf den Power Pin und die Daten anwenden [5].
- Die anfängliche Temperaturablesung beträgt 25 ° C oder die letzte Lesung vor dem Einschalten [5]. Die Einstellungen des Standardalarmregisters unterscheiden sich von der Familie A1 (
0x55
und 0x05
) [5].
- Beispiel ROM: 28-48-1B-77 -91-17-02-55 (Arbeiter parasitärer Leistungsmodus)
- Beispiel ROM: 28-24-1D-77 -91-04-02 -CE (reagiert auf 0xdd und 0xee)
- Beispiel ROM: 28-B8-0E-77 -91-0E -02-D7
- Beispiel ROM: 28-21-6D-46 -92-0a -02-B7
- Erstes Scratchpad: 90/01/55/05/7f/7E/81/66/27
- Beispiel Topmark: Dallas 18b20 1807C4 +051AG
- Beispiel Topmark: Dallas 18b20 1813C4 +827AH (2020)
- Beispiel Topmark: Dallas 18b20 1827C4 +051AG
- INTIP MARK: Keine
Familie D2: Interessant, keine parasitäre Macht
Erhielt sowohl Sonden als auch Chips von einer großen Anzahl von Anbietern im Jahr 2019
- ROM-Muster [5]: 28-TT-TT-79-97-SS-SS-CRC, 28-TT-94-97-SS-SS-CRC, 28-TT-TT-79-A2-SS- SS-CRC, 28-TT-TT-16-A8-SS-SS-CRC, 28-TT-TT-56-B5-SS-SS-CRC (2020) , 28-TT-TT-07-D6-SSS-SS-CRC (2020)
- Scratchpad Register
<byte 7> == 0x66
, <byte 6> != 0x0c
und <byte 5> != 0xff
[5].-
<byte 7>
kann andere Werte haben, einschließlich 0xaa oder 0x00, [5] und Diskussion 36. (2024) - Scratchpad Register
<byte 5>
, <byte 6>
und <byte 7>
können mit Funktionscode 0x66 geschrieben werden [15]. (2024)
- Gibt keine Daten zum undokumentierten Funktionscode 0x68 [5] zurück. Reagiert mit Daten oder Statusinformationen nach Codes zurück
- 0x4d, 0x8b (9 Bytes), 0xba, 0xbb, 0xdd (3 Bytes), 0xee (3 Bytes) [5] oder oder
- 0x4d, 0x8b (9 Bytes), 0xba, 0xBB [5].
- Erstes Byte nach dem undokumentierten Funktionscode 0x8b ist
0x00
[5]. - Der undokumentierte Funktionscode 0x8b fragt ein undokumentiertes 9-Byte-Konfigurationsregister ab, wobei viele dieser Bytes den Temperaturwert beeinflussen [5]. Der undokumentierte Funktionscode 0xab wird verwendet, um die 9 Bytes dieses Konfigurationsregisters zu aktualisieren [5]. (2024)
- Ein 14-Bit-Temperaturmodus [15] kann aktiviert werden, indem
<bit 0>
von <byte 0>
im undokumentierten Konfigurationsregister [5] eingestellt wird. (2024) - Sensoren funktionieren nicht mit parasitärer Kraft . Sensoren zeichnen die Datenlinie niedrig , während sie parasitisch angetrieben werden [5].
- 2019: Temperaturfehler bis zu 3 ° C bei 0 ° C [6]. Daten lauter als echte Chips [5].
- Im Jahr 2024 hatte eine Probe von 10 Sensoren einen durchschnittlichen Temperaturversatz von -0,09 ° C bei 0 ° C mit einem Intersesensor von -0,25 bis +0,44 ° C, was im Vergleich zu anderen Familien eine große Ausbreitung ist [5]. Einzelne Sensoren waren jedoch nicht lauter als Sensoren anderer Familien. (2024)
- Die Umfrage nach Funktionscode 0x44 zeigt ca. 462-523 ms zur Umwandlung unabhängig von der Messauflösung [5]. Die Serie mit
97
und A2
/ A8
im ROM konvertiert in 494-523 ms bzw. 462-486 ms [5]. Chips mit A2
oder A8
in Byte 4 des ROM scheinen im Jahr 2019 zuerst erschienen zu sein. - Der anfängliche Temperaturwert beträgt 25 ° C [5]. Die Einstellungen des Standardalarmregisters unterscheiden sich von der Familie A1 (
0x55
und 0x05
) [5].- Die Einstellungen des Standardalarmregisters unterscheiden sich von der Familie A1 (
0x00
und 0x00
), [5] und der Diskussion 36. (2024)
- Beispiel ROM: 28-90-FE-79 -97- 00-03-20
- Beispiel ROM: 28-FD-58-94 -97- 14-03-05
- Beispiel ROM: 28-FB-10-79 -A2- 00-03-88
- Beispiel ROM: 28-29-7D-16 -A8- 01-3C-84
- Beispiel ROM: 28-DF-54-56 -B5- 01-3C-F5 (2020)
- Beispiel ROM: 28-AF-EC-07 -D6- 01-3C-0A (2020)
- Beispiel ROM: 28-75-02-80 -33-8B -06-DC (2024)
- Erstes Scratchpad: 90/01/55/05/7f/xx/xx/66/xx
- Erstes Scratchpad: 90/01/00/00/7f/xx/xx/xx/xx (2024)
- Beispiel Topmark: Dallas 18b20 1812C4 +051AG
- Beispiel Topmark: Dallas 18b20 1827C4 +051AG
- Beispiel Topmark: Dallas 18b20 1916C4 +051AG
- Beispiel Topmark: Dallas 18b20 1923C4 +051AG
- Beispiel Topmark: Dallas 18b20 1943C4 +051AG
- Beispiel Topmark: Dallas 18b20 1828C4 +233AAA
- Beispiel Topmark: Dallas 18b20 2008c4 +817ab (2020)
- Beispiel Topmark: SE18B20 2130 (2022)
- Beispiel Topmark: MY18B20 S380 (2024)
- INTIP MARK: Keine
Familie E: NovoSense NS18B20
Weder Chips noch Sonden im Jahr 2019 erhalten. Kaufte Chips im Jahr 2022 und 2024 die NS18B20 klar mit dem NS18B20.
Diese Familie wurde ab 2022 in die Liste hinzugefügt. Das Datenblatt scheint darauf hinzudeuten, dass die Chips 2019 mit der Produktion begonnen haben.
- ROM-Muster [5]: 28-00-TT-TT-SS-SS-SS-CRC
- Das Scratchpad-Register
<byte 6>
ist immer <byte 6> = 0x10 – (<byte 0> & 0x0f)
, dh im Gegensatz zu Familie A1 <byte 6> = 0x10
ist der Wert bei Power-up [5]. - Gibt zwei-Byte-benutzerdefinierte Scratchpad im Funktionscode 0xde zurück und signalisiert während des Schreibens an EEPROM im Funktionscode 0x28 [5], wie im NS18B20-Datenblatt [17] angegeben.
- Gibt keine Daten zu undokumentierten Funktionscodes 0x68 und 0x93, [5] zurück.
- Eine Probe von 10 Sensoren hatte einen durchschnittlichen Temperaturversatz von +0,02 ° C bei 0 ° C mit einer mit anderen Familien vergleichbaren Ausbreitung [5]. Das Rauschen einzelner Sensoren war vergleichbar mit Sensoren anderer Familien [5]. (2024)
- Die Temperaturumwandlung beträgt 20 bis 25 ms, unabhängig von der ausgewählten Auflösung [5]. (Das NS18B20 -Datenblatt gibt maximal 50 ms unabhängig von der Auflösung an.)
- Der Sensor gibt an, wenn im parasitären Leistungsmodus die Temperaturumwandlung im parasitären Leistungsmodus funktioniert (basierend auf dem flüchtigen Test) [5].
- Gibt eine Einschalttemperatur von 85 ° C zurück, wenn das Scratchpad-Register gelesen wird, bevor die Temperaturumwandlung im parasitären Leistungsmodus abgeschlossen ist. [5].
- Beispiel ROM: 28 -00- 74-28 -59-43- 0F-7A
- Beispiel ROM: 28 -00-2a -50 -0c-41-02 -DB
- Erstes Scratchpad: 50/05/4b/46/7f/ff/10/10/bd
- Beispiel Topmark: NS18B20 203B00
- Beispiel Topmark: NS18B20 412D01
- INTIP MARK: Keine
Familie F: Die Variante
Erhielt weder Chips noch Sonden im Jahr 2019. Kaufte Chips im Jahr 2024 Chips
Diese Familie wurde der Liste im Jahr 2024 hinzugefügt.
- ROM-Muster [5]: 28-TT-TT-SS-SS-SS-SS-CRC
- Scratchpad Register
<byte 6> = 0x0C
behoben, [5]. - Gibt drei Bytes auf undokumentierte Funktionscode 0x19, [5] zurück.
- Gibt keine Daten zu undokumentierten Funktionscodes 0x68 und 0x93, [5] zurück.
- Der erweiterte Temperaturmodus (bis zu 150 ° C) kann aktiviert werden, indem
<bit 7>
von <byte 4>
im Scratchpad -Register [5] [18] festgelegt wird. - EEPROM nicht umgesetzt, [18].
- Die Einstellungen des Standardalarmregisters unterscheiden sich von der Familie A1 (
0x55
und 0x00
) [5]. - Eine Probe von 10 Sensoren hatte einen durchschnittlichen Temperaturversatz von -0,11 ° C bei 0 ° C mit einer Ausbreitung, die mit anderen Familien vergleichbar ist [5]. Das Rauschen einzelner Sensoren war vergleichbar mit Sensoren anderer Familien [5]. (2024)
- Die Konversionsauflösung meldete sich immer als 12 -Bit [5].
- Der Abschluss der Temperaturumwandlung kann nicht befragt werden (Funktionalität nicht implementiert), [5], [18].
- Typische Konvertierungszeit 27 ms gemäß Datenblatt, [18].
- Der parasitäre Power -Modus funktioniert nicht mit VCC, der an GND gezogen wurde, [5]. Stattdessen funktioniert der parasitäre Power -Modus mit VCC Links -Floating [5] [18].
- Gibt eine Einschalttemperatur von 85 ° C zurück, wenn das Scratchpad-Register gelesen wird, bevor die Temperaturumwandlung im parasitären Leistungsmodus abgeschlossen ist. [5].
- Einige Sensoren lassen die Datenlinie schweben, wenn das Kratzerregister gelesen wird, bevor die Temperaturumwandlung im parasitären Leistungsmodus abgeschlossen ist, und schließlich auf eine Stromversorgung von 85 ° C zurückgesetzt. [5].
- Beispiel ROM: 28-03-60 -00-00-01-24 -D0
- Erstes Scratchpad: 50/05/55/00/7f/ff/0c/10/21
- Beispiel Topmark: Xinbole DS18B20T 2430C4 +4F3AC
- INTIP MARK: Keine
Familie G: Der Joker
Erhielt weder Chips noch Sonden im Jahr 2019. Kaufte Chips im Jahr 2024 Chips
Diese Familie wurde der Liste im Jahr 2024 hinzugefügt.
- ROM-Muster [5]: 28-TT-TT-TT-TT-TT-CRC (scheinbar zufällig)
- Scratchpad Register
<byte 6> = 0x0C
beim Ausschalten und <byte 6> = 0x20 – (<byte 0> & 0x0f)
nach der Temperaturumwandlung [5]. Ja, sie liegen wirklich 0x10
über der Familie A1. - Gibt ein Byte auf undokumentierte Funktionscode 0x8e, [5] zurück.
- Gibt keine Daten zu undokumentierten Funktionscodes 0x68 und 0x93, [5] zurück.
- Die Einstellungen des Standardalarmregisters unterscheiden sich von der Familie A1 (
0x55
und 0xAA
) [5]. - Enthält einen großen Pufferkondensator, so dass ein 100 -ms -Stromzyklus zu kurz ist, um das Scratchpad -Register zurückzusetzen [5].
- Eine Probe von 27 Sensoren hatte einen durchschnittlichen Temperaturversatz von -0,22 ° C bei 0 ° C mit einer mit anderen Familien vergleichbaren Ausbreitung [5]. Das Rauschen einzelner Sensoren war vergleichbar mit Sensoren anderer Familien [5].
- Die Umfrage nach Funktionscode 0x44 zeigt ca. 227-293 ms für eine 12-Bit-Temperaturumwandlung und proportional weniger bei niedrigerer Auflösung [5].
- Der Sensor gibt an, wenn im parasitären Leistungsmodus die Temperaturumwandlung im parasitären Leistungsmodus funktioniert (basierend auf dem flüchtigen Test) [5].
- Pulls Data Line Low (!) Wenn die Konvertierung durch das Lesen von Scratchpad -Register im Parasit -Power -Modus unterbrochen wird und schließlich wiederhergestellt wird, um die Konvertierung anschließend abzuschließen (bis zu> 1000 ms später). [5].
- Beispiel ROM: 28-C7-9E-A3-59-83-D9-74
- Beispiel ROM: 28-95-77-37-3F-4A-FB-1F
- Beispiel ROM: 28-CE-71-E6-6F-8C-E5-3C
- Erstes Scratchpad: 50/05/55/AA/7F/FF/0C/10/AF
- Beispiel Topmark: ZHHXDZ HX18B20 24+6
- Beispiel Topmark: JSMSEMI 18B20 3x31
- Beispiel Topmark: HT18B20 ARTZ #465142
- INTIP MARK: Keine
Familie H: verschiedene ADC
Erhielt weder Chips noch Sonden im Jahr 2019. Erhielt im Jahr 2024 einen einzelnen Chip
Diese Familie wurde 2024 in die Liste hinzugefügt. Die einzige Probe, die ich bekam, war Teil einer "Charge" von Sensoren, die mit HT18B20 gekennzeichnet waren: Sie waren Klebeband und Reel verpackt, und diese eine Sensoren war anders als die anderen. Wenn Sie also nicht wissen möchten, was Sie bekommen, fragen Sie nach einem HT18B20.
- ROM-Muster [5]: 28-TT-TT-TT-TT-TT-CRC (basierend auf einer Stichprobe schwer zu sagen)
- Scratchpad Register
<byte 6> = 0x0C
beim Ausschalten und <byte 6> = 0x10 – (<byte 0> & 0x0f)
nach der Temperaturumwandlung [5]. - Gibt keine Daten zu undokumentierten Funktionscodes 0x68 und 0x93 oder zu anderen Funktionscodes zurück [5].
- Die Einstellungen des Standardalarmregisters unterscheiden sich von der Familie A1 (
0x55
und 0xAA
) [5]. - Enthält einen großen Pufferkondensator, so dass ein 100 -ms -Stromzyklus zu kurz ist, um das Scratchpad -Register zurückzusetzen [5].
- Die untersuchte Probe hatte einen Temperaturversatz von -0,12 ° C bei 0 ° C [5]. Das Rauschen des Sensors war vergleichbar mit Sensoren anderer Familien [5].
- Umfragen nach Funktionscode 0x44 gibt 101 ms, 141 ms, 198 ms und 279 ms bei einer Auflösung von 9, 10, 11 und 12 Bit an, dh einen Faktor von 1,4 und nicht den Faktor 2 zwischen den Auflösungseinstellungen [ 5].
- Grundsätzlich gibt der Sensor an, wenn im parasitären Leistungsmodus die Temperaturumwandlung im parasitären Leistungsmodus funktioniert (basierend auf dem flüchtigen Test) [5].
- Hin und Her wechseln zwischen parasitärer Leistung und normaler Leistung werden vom Sensor nicht zuverlässig angezeigt [5].
- Blättere Datenlinie schweben Wenn die Konvertierung durch das Lesen von Scratchpad -Register im Parasit -Power -Modus unterbrochen wird und das Konvertierungsergebnis meldet, falls danach abgefragt wird. [5].
- Beispiel ROM: 28-0C-80-53-5C-AA-8E-A2
- Erstes Scratchpad: 50/05/55/AA/7F/FF/0C/10/AF
- Beispiel Topmark: HT18B20 ARTZ #465142
- INTIP MARK: Keine
Absolet ab 2019 veraltet
Erhielt weder Sonden noch Chips im Jahr 2019
ROM-Muster [5,7]: 28-TT-TT-SS-00-00-80-CRC
- Beispiel ROM: 28-9E-9C-1F -00-00-80-04
(Anscheinend immer noch an andere im Jahr 2019 verkauft (vgl. Ausgabe 17))
ROM-Muster [5,11]: 28-61-64-SS-SS-TT-TT-CRC
- Beispiel ROM: 28 -61-64-11-8d -F1-15-de
(scheinen Familie zu sein C.) (2022)
ROM-Muster [5]: 28-ee-tt-tt-SS-SS-SS-CRC
- Beispiel ROM: 28 -ee- 58-49-25-16-01-45 (2020)
- Beispiel Topmark: Dallas 18b20 1619C4 +827AH (2020)
- Beispiel Topmark: Dallas 18b20 1709C4 +827AH (2020)
(Erhielt ein paar Chips im Jahr 2020: Sie verhalten sich auf den ersten Blick wie Familie B2.)
Familie A1 mit den Versionen vor C4
(Einige ältere Chips (vor 2009) hatten fehlerhafte Hardware-Schaltkreise (sterben), am berühmtesten die B7
Sterbe [4], vgl. Ausgabe 19).
Lösung zum 85 ° C-Problem
Es gibt einen einfachen, undokumentierten Weg, zwischen dem Lesen von 85 ° C und einem echten Temperaturwert von 85 ° C in DS18B20 der Familie A und einigen anderen zu unterscheiden [5]: <byte 6>
des Scratchpad-Registers. Wenn es 0x0c
ist, ist das 85 ° C-Lesen ein Power-up-Wert, andernfalls ist es eine echte Temperaturmessung.
GXCAS 18B20
Der DS18B20 -Klon von Peking Zhongke Galaxy Core Technology Co., Ltd., der als GXCAS handelt, scheint unabhängig von GXCAS und UMW (Familie B1) verteilt zu werden. Laut ihrer Webseite gibt es GXCAs erst seit Januar 2018. Während GXCAS kein Datenblatt online hat, betont das Datenblatt auf der UMW-Webseite die Hinzufügung von zwei benutzerdefinierten Bytes im Scratchpad-Register und die Möglichkeit, sich zu ändern Die ROM -Adresse [14]. Einige dieser Chips tragen gefälschte DS18B20 Topmarks. GXCAS ist eindeutig stolz auf ihr Produkt, da sie ihren Firmennamen prominent auf die Würfel schreiben.
7q-tek qt18b20
Der QT18B20 ist ein DS18B20-Klon, der von Peking 7q Technology Inc, der als 7q-TEK handelt (Familie B2), entwickelt und verkauft wurde. Das Datenblatt des QT18B20 betont die Hinzufügung von zwei benutzerdefinierten Bytes im Scratchpad-Register [12]. Im Gegensatz zum Datenblatt des DS18B20 heißt es nicht, dass der ROM -Code lasiert ist. Eine große Anzahl dieser Chips ist gefälschte DS18B20 Topmarks. 7Q-TEK ist eindeutig stolz auf ihr Produkt, da sie ihren Firmennamen prominent auf die Würfel schreiben.
Während unklar ist, wer Chips of Family A2 entworfen oder produziert hat, scheint die Familie A2 eine Inspiration für die Familie B2 7Q-TEK QT18B20, basierend auf den folgenden Beobachtungen:
- Der QT18B20 -Datenblatt behauptet, dass eine Temperaturumwandlung <500 ms dauert [12]. Dies steht im Einklang mit dem tatsächlichen Verhalten der Familie A2. (Während das UMW -Datenblatt dasselbe behauptet [14], scheint eine der Datenblätter als Vorlage für die andere verwendet worden zu sein.)
- Gemäß dem Datentheet-Versionsverlauf hat die früheste Version des QT18B20-Datenblattes nicht benutzerdefinierte Bytes erwähnt [12]. Die Familie A2 verfügt über keine benutzerdefinierten Bytes im Scratchpad-Register.
- Der Die Ciruit der Familie A2 ähnelt dem Stil sowohl des Sterbers der Familie A1 (produziert von Maxim) als auch dem Stempel der Familie B2 (produziert von 7q-TEK). Die Größengröße unterscheidet sich erheblich von der Familie A1, daher ist sie kein Maximalproduzierter DS18B20.
MySentech My18e20
Der My18e20 -Klon der Minyuan -Sensing -Technologie, der als MySentech handelt, scheint der Sensor der Familie D2 zu sein. Familie D1 ist wahrscheinlich eine Variante, die auch von MySentech produziert wird. MySentech hat ein Datenblatt, das weitgehend mit dem Verhalten dieses Chips übereinstimmt [15], und sie haben technische FAQ -Seiten mit diesem Sensor (vom Dezember 2022) [16]. Anscheinend wurde MySentech 2017 gegründet. (2024)
Novosense NS18B20
Der NS18B20 ist ein DS18B20 -Klon von Suzhou NovoSense Microelectronics Co., Ltd. (Familie E). (2022)
Xinbole DS18B20T
Shenzhen Xinbole Electronics Co. (XBLW) verfügt über ein Datenblatt, das das etwas ungewöhnliche Verhalten des Sensors der Familie F. (2024) genau beschreibt
Max31820
Maxim integriert erzeugt auch den Temperatursensor max31820. Der MAX31820 ist ein DS18B20 mit begrenztem Versorgungsspannungsbereich (dh bis zu 3,7 V) und einem geringeren Temperaturbereich mit hoher Genauigkeit [1,8]. Wie der DS18B20 verwendet es einen Eindrahtfamiliencode 0x28 [1,8]. Vorläufige Untersuchungen haben (noch) einen Test zur Unterscheidung zwischen DS18B20 der Familie A1 und der maximalproduzierten MAX31820 in Software nicht ergeben [5].
Methoden
Nach der populären Anfrage (Ausgabe 11) soll dieser Abschnitt (einige) den obigen Ergebnissen und Schlussfolgerungen den Hintergrund geben. Ich werde es sehr langsam hinzufügen, wenn die Zeit zulässt.
Die Untersuchungen lagen eher auf DS18b20 als auf der DS18B20-Par-Variante oder der DS18S20. Wir haben nur eine Hand voller DS18B20-Par- und DS18S20-Sensoren, während wir Hunderte von DS18b20 haben. Außerdem waren alle Sensoren im Fall bis 92.
Probenbasis für die Analyse der Familie A1
Die obige Abbildung zeigt den Produktionsbereich und ROM -Codes (Seriennummern) der untersuchten Familien -A1 -Sensoren, die als Chips gekauft wurden. Ebenfalls enthalten ist eine einstellige Anzahl von Chips, die in Sonden enthalten sind, die wir geöffnet haben, um das obere Mark zu lesen. Das Produktionsdatum gemäß dem Datumscode liegt auf der X-Achse, die Seriennummer gemäß dem ROM befindet sich auf der Y-Achse, die Punkte sind die einzelnen Chips (n> 200, aber einzelne Chargen erscheinen als verschmierte Blobs). Die Grey Area Highlights 2019. Wir haben Chips von 2009 bis 2020 produziert und alle Chips haben einen C4
-Stempel, keine Chips haben Datumskodizes von 2010, 2014, oder 2015. (Die Seriennummer eines Chips mit ROM 28-13-9B-BB- 0B -00-00-1F ist 0x0bbbbb13 und würde somit zwischen 0x0b und 0x0c auf der y-Achse fallen.) Wir sehen, dass es lange gibt Begriffsbeziehung zwischen Seriennummer und Datumscode (gestrichelte Zeile): Die Seriennummer steigt um ca. 16.500.000 (dh ca. 2^24) pro Jahr. Diese Beziehung ist jedoch nur ein allgemeiner Leitfaden, der durch den Grad der Streuung um die Linie und in der Vergrößerung im Einschub gesehen werden kann: Von den im Jahr 2019 produzierten Sensoren, die wir gekauft haben eine frühere Seriennummer.
Wir scheinen eine der letzten 2016 produzierten Chargen mit TRIM2 -Kalibrierungskonstanten 0xDB oder 0xDC und einer der ersten Chargen mit TRIM2 -Kalibrierungskonstanten 0x73 oder 0x74 gekauft zu haben. Daher fand die Änderung wahrscheinlich zwischen den Wochen 32 und 47 von 2016 statt ( dies ist eine Erklärung über den DS18B20 und nicht über den DS18B20-Par. )
Temperaturdaten
Die obige Abbildung zeigt (a) den Temperaturwert, den wir von jedem Sensoren in einem Eiswasserbad bei 0 ° C erhalten haben, (b) die Rauschmenge in aufeinanderfolgenden Messwerten im Eiswasserbad und (c) Umwandlungszeit für die Temperatur Messungen bei nominell Raumtemperatur (Messungen wurden tatsächlich irgendwo zwischen 0 und 30 ° C durchgeführt). Eine hochauflösende Version der Abbildung ist bei Bildern/Sensor_Measurements_By_Family.png verfügbar. Daten für (a) und (b) basieren typischerweise auf 20 aufeinanderfolgenden Messungen, die alle 10 s nach dem Sensor in einem Eiswasserbad äquilibriert hatten. Die Daten in (c) basieren auf einer einzigen Messung pro Sensor, da in unserer Erfahrung die Umwandlung des Umwandlungszeitpunkts nicht verstreut ist.
Die Daten wurden bei +5 V gemessen (2024)
Die Daten werden entlang der x -Achse wie folgt gruppiert:
- A1: Familie A1, die vom offiziellen Distributor erhalten wird, dh sowohl die Authetik als auch die ordnungsgemäße Handhabung ist garantiert
- A1 (Distributor der Drittanbieter): Familie A1 von anderen Groß- oder Kleinhändlern erhalten, einschließlich derjenigen, die an eBay und Aliexpress verkauft werden, und einschließlich aller in Sonden enthaltenen Sensoren
- A2: Familie A2
- B1 (GXCAS): Familie B1, basierend auf ihrem ROM, das offenbar von GXCAS verteilt ist
- B1 (UMW): Familie B1, basierend auf ihrem ROM, das offenbar von UMW verteilt ist
- B2: Familie B2
- C: Familie c
- D1: Familie D1
- D2 ( XY ): Familie D2, wobei die Nummer XY in Klammern 5. Byte des ROM ist (dh Byte 4). Sensoren innerhalb jeder Gruppe sind in meiner Ansicht, dass sie annehme, dass sie die Herstellungsreihenfolge basiert, die hauptsächlich auf dem ROM basiert und durch die Bestellung, die wir gekauft haben, etwas bestätigt hat. Daten von Familien -A1 -Sensoren mit
0x00
-Trim -Werten werden nicht angezeigt.
Der maximal spezifizierte Temperaturfehler beträgt ± 0,5 ° C bei 0 ° C, und dieses Intervall ist im Diagramm (a) durch dünne gestrichelte Linien markiert. Wir sehen, dass Familien -A1 0 ° C (nicht genügend Datenpunkte, die Sie sicher sagen können), Familie D1 zwischen -1 und +1 ° C oder schlechter und Familie D2 -nun, es ist schwierig, aus den Daten zu sagen: Sie haben wirklich schlecht angefangen mit Die Leistung ähnlich der Familie D1 und kann sich verbessert haben oder auch nicht (müsste mehr Sensoren mit Sicherheit messen. Begrenzte Messungen im Jahr 2024 zeigten, dass sie viel besser sind als die Familie D1). Messungen wurden alle 10 Sekunden einmal ergriffen, um Artefakte durch Selbstheizung von Sensoren zu vermeiden, die in Sonden enthalten sind (dh wir fanden heraus, dass das Lesen nach einer Sekunde die Temperatur erhöht).
Ein idealer Sensoren zeigt nur Diskretisierungsrauschen, dh die Messwerte zwischen den beiden Werten, die die tatsächliche Temperatur umgeben, schwanken. Dieses Rauschen ist in Diagramm (b) als Standardabweichung ( std(T)
) von nominell 20 Temperaturmessungen dargestellt. Wenn alle Messungen gleich sind, ist std(T)
Null. Wenn genau eine Messung durch einen Diskretisierungsschritt (dh um 0,0625 ° C) von der anderen 19 unterscheidet, beträgt std(T)
0,014 ° C, als die untere gestrichelte Linie dargestellt. Wenn die Daten gleichmäßig zwischen zwei benachbarten Werten aufgeteilt werden, beträgt std(T)
0,031 ° C, als die obere gestrichelte Linie dargestellt. Datenpunkte zwischen 0 und die untere gestrichelte Linie zeigen, dass für diesen Sensor mehr als 20 Proben verwendet wurden, und Daten über der oberen Linie zeigen, dass Ablesungen über einen Bereich von mindestens 2 Diskretisierungsschritten schwankten. Wir sehen, dass Sensoren der Familien A, B und C im Wesentlichen nur Diskretisierungsgeräusche haben. Im Gegensatz dazu erzeugt die Familie D1 einen schockierend lauten Müll (dh die tatsächliche Messauflösung beträgt weniger als 12 Bit), und Sensoren der Familie D2 sind ebenfalls laut auf einem Niveau über dem Diskretisierungsrauschen.
Die Zeit, die für die Umwandlung von Temperaturdaten erforderlich ist, wird im Datenblatt als maximal 750 ms (12 -Bit -Konvertierung) angegeben. Die tatsächliche Zeit hat (bei einer bestimmten Temperatur) für jeden Sensor einen gut reproduzierbaren charakteristischen Wert. Diese Zeit ist in Diagramm (c) gezeigt. Die Familie A1 nimmt ungefähr 600 ms für eine Umstellung, während die Familien A2 und B eine vergleichsweise große Variabilität des Intersesensors aufweisen. Die Familien C und D1 sind mit 30 bzw. 11 ms schnell, während die Familie D2 etwa 500 ms bzw. etwas weniger dauert. Obwohl alle von uns gemessenen Sensoren bei Raumtemperatur schneller als 750 ms waren, näherten sich einige Sensoren der Familie B der Grenze.
Warnung
Das Senden von Funktionscodes ohne Papiere an einen DS18B20 -Sensor kann ihn dauerhaft nutzlos machen, beispielsweise wenn Temperaturkalibrierungskoeffizienten überschrieben werden [5]. Die empfohlene Methode zur Identifizierung von gefälschten Sensoren besteht darin, zu überprüfen, ob das ROM dem Muster 28-XX-XX-XX-XX-00-00-XX nicht folgt [5]. (Während das ROM in den Familien B1 und D1 überschrieben werden kann, um echte Sensoren nachzuahmen, sind wir nicht auf Sensoren mit gefälschten ROM gestoßen [5].)
( Informationen zu Chips der Familien A, B, C, D, E, F, G und H stammen aus meinen eigenen Untersuchungen von Sensoren in Verbindung mit den folgenden Referenzen, wie sie durch Referenznummer angegeben sind [1-6,8-10,12 -18] alle Tests wurden bei 5 V mit 1,2 KOHM-Klimmzügen durchgeführt. )
Quellen
Sensoren oder Sonden mit authentischem oder kloniertem DS18B20 wurden aus den Follwing -Quellen gekauft. Beachten Sie, dass nur Sensoren, die von offiziellen Maxim -Distributoren gekauft wurden, authentische Chips sind, die garantiert korrekt behandelt wurden. Kostenlose Muster, die von Maxim über ihr Online -Bestellsystem integriert wurden, werden dankbar anerkannt.
Official Distributors: Maxim Integrated, Digikey, Farnell, Mouser, RS Components ebay: 5hk1584, alice1101983, alphago-it, andnov73, areyourshop-003, b2cpowershop2010, bernard_netelectroshop, binggogo, careforyou123, cheaptronic24, christians-technik-shop, CZB6721960, D-9845, Deepenmind, Diy-Ardeuino, Diybox, Eckstein-Komponente, Enigma-Komponent-Shop, e*glänzend JK_PARTS, JustPro, kingelectronics15, london_shoppings_1, lovesell2013, lucas89-8, makershop, mecklenburg8, modul_technik, moore_estates, nouteclab, *orchid, polida2008, puretek-innovations, rammie_74, scuary1, sensesmart, sensus, sevenshop888, shenglongsi, sparco888, survy2014, tancredielettronica, umtmedia, worldchips, xiaolin4, xuan33_store, yantzlf AliExpress: All goods are free shipping Store, AOKIN DiyMaker, Cuiisw Module Store, Eiechip, Fantasy Electronic, FSXSEMI, Great-IT, Great Wall Electronics, HWA YEH, Liyuan Electronic, Mega -Halbleiter, rotgelbem Laden, Roarkit -Laden, Sensorwelt, Shengsun Sensor, Shenzhen High Qualitätsprodukte, Shop912692, Tenstar , Wavgat, Sieges Sieg. & Company, LCSC, Dongguan Nangudi Electronics, Questkomponenten, Shenzhen RBD -Sensor -Technologie, Reichelt Elektronik, Shenzhen Senstech Elektronische Technologie, Sparkfun, Tayda Electronics, Telmal, Dongguan Tianrui Electronics, YourDuino
Referenzen
- DS18B20 "DS18B20 Programmierbares Auflösung 1-Wire Digital Thermometer", Datenblatt 19-7487 Rev 6 7/19, Maxim integriert.
- DS18S20 "DS18S20 High Precision 1-Wire Digital Thermometer", Datenblatt, Maxim integriert.
- AN4377 "Vergleich der DS18B20- und DS18S20 1-Wire Digital Thermometer", Maxim integriert
- AN247 "DS18X20 EEPROM -Korruptionsproblem", Maxim integriert
- Eigene Untersuchungen 2019-2024, unveröffentlicht.
- Petrich, C., M. O'Sadnick, Ø. Kleven, I. Sæther (2019). Eine kostengünstige Küstenboje für Eis- und Metocean-Messungen. In Proceedings der 25. Internationalen Konferenz über Hafen und Ozean Engineering unter arktischen Bedingungen (POAC), Delft, Niederlande, 9.-13. Juni 2019, 6 S. (Link)
- Beitrag des Benutzer m_elias auf https://forum.arduino.cc/index.php?topic=544145.15
- MAX31820 "1-Wire-Umgebungstemperatursensor", Datenblatt, Maxim integriert.
- DS18B20 "DS18B20 Programmierbares Auflösung 1-Wire Digitales Thermometer", Datenblatt 043001, Dallas Semiconductor, 20pp.
- DS18B20 "DS18B20 Programmierbares Auflösung 1-Wire Digital Thermometer", Vorläufiger Datenblatt 050400, Dallas Semiconductor, 27pp. (Wayback -Maschine)
- Stück aus verschiedenen Blogs und Beiträgen.
- Qt18b20 "QT18B20 Programmierbare Auflösung 1-Wire Digital Thermometer", Datasheet Rev. 061713, 7Q-Technologie.
- AIR6273 "Begriffe, Definitionen und Akronyme gefälschte Materialien oder elektrische, elektronische und elektromechanische Teile", SAE Aerospace Information Report, Juli 2019.
- UMW DS18B20 UMW DS18B20 Datenblatt.
- My18e20 Mysentech Homepage (Englisch) mit Link zu Datenblättern.
- MY18E20 FAQ MYSENTECH FAQ (CHINESS).
- NS18B20 "Hochvorbereitete Single-Buus-Digital-Temperatursensor", NS18B20 Datasheet Rev. 1.0, NovoSense.
- DS18B20T -Datenblatt, Xinbole.