Temperaturgivare till Arduino och Pi – DS18B20 men bättre

PIC, AVR, Arduino, Raspberry Pi, Basic Stamp, PLC mm.
Användarvisningsbild
pi314
Inlägg: 5788
Blev medlem: 23 oktober 2021, 19:22:37
Ort: Stockholm

Temperaturgivare till Arduino och Pi – DS18B20 men bättre

Inlägg av pi314 »

Temperaturgivare till Arduino och Pi – DS18B20 men bättre
Jag har flera projekt på gång där jag behöver temeraturgivare. DS18B20 skulle vara bra, om jag bara kunde få felet att vara ca ±0,1°C i stället för ±0,5°C i området -10°C till +85°C, som anges i specen.
Jag har intrycket att DS18B20 kan vara betydlig bättre än spec. Min hypotes är att jag kan komma nära ±0,1°C med en eller två parametrar som korrigerar för individens fel. Figure 1 i specen från Maxim antyder att det räcker med en parameter.

Jag har köpt hem 25 st. för att testa.

Planen är:
1. Identifera alla individers unika nummer.
2. Mät alla individers fel vid t.ex. fyra temperaturer, t.ex. -18°C, 0°C, 20°C och +60°C.
3. Upprepa mätningarna ca tre gånger, med lite tid emellan.

Om hypotesen ser ut att stämma så kan jag spara mina DS18B20 i en plastlåda med numrerade fack och med numret på facket plocka fram korrigeringsparameter/parametrar för individen. Sedan kan jag sätta en märklapp intill individen i drift som visar vilken individ det är.

Jag ser en risk att jag blandar ihop individer. Finns det något sätt att märka en TO-92 med en märkning som följer med komponenten? Som helst inte gör den större och svårare att hantera.
221021_DS18B20.png
Dallas spec bifogas.

/Pi
Du har inte behörighet att öppna de filer som bifogats till detta inlägg.
FormerMazda
Inlägg: 6076
Blev medlem: 27 februari 2006, 14:59:36
Ort: Tranås (Jönköping)

Re: Temperaturgivare till Arduino och Pi – DS18B20 men bättre

Inlägg av FormerMazda »

Med nånting som kan skapa en väldigt liten märkning så får du ju rätt många ID-nummer med två HEX-siffror på kapseln.
Kanske laser? Otroligt fin vit märkpenna?

En liten OT-fråga: Hur ska du skapa dessa fyra temperaturer och veta exakt vilken temperatur det faktiskt är?
Wihelm
Inlägg: 591
Blev medlem: 18 juni 2019, 17:30:19
Ort: Nybro

Re: Temperaturgivare till Arduino och Pi – DS18B20 men bättre

Inlägg av Wihelm »

Färgmärkning typ resistor.
Användarvisningsbild
ffredrik
Inlägg: 341
Blev medlem: 20 oktober 2009, 17:52:18
Ort: Göinge

Re: Temperaturgivare till Arduino och Pi – DS18B20 men bättre

Inlägg av ffredrik »

DS18B20 har ett ROM där ett unikt serienummer är inbänt, använd det som ID. Kan enkelt läsas ut med en MCU.
Användarvisningsbild
pi314
Inlägg: 5788
Blev medlem: 23 oktober 2021, 19:22:37
Ort: Stockholm

Re: Temperaturgivare till Arduino och Pi – DS18B20 men bättre

Inlägg av pi314 »

FormerMazda skrev: 21 oktober 2022, 13:42:40 Med nånting som kan skapa en väldigt liten märkning så får du ju rätt många ID-nummer med två HEX-siffror på kapseln.
Kanske laser? Otroligt fin vit märkpenna?

En liten OT-fråga: Hur ska du skapa dessa fyra temperaturer och veta exakt vilken temperatur det faktiskt är?
Dom fyra temperaturerna tänkte jag i första hand välja som naturliga. T.ex, inne eller ute. Den högsta temperaturen får jag kanske skapa genom att tillföra värme.

0°C kan man nog skapa ganska exakt med isvatten.

Om dom 25 mätvärdena är ungefär normalfördelade så tror jag att sannolikheten är hög för att medelvärdet av dom 25 mätningarna är ett bra mått på temperaturen. Mer så om jag kan "stämma av" med isvatten, vid 0°C.

/Pi
Användarvisningsbild
pi314
Inlägg: 5788
Blev medlem: 23 oktober 2021, 19:22:37
Ort: Stockholm

Re: Temperaturgivare till Arduino och Pi – DS18B20 men bättre

Inlägg av pi314 »

ffredrik skrev: 21 oktober 2022, 14:17:30 DS18B20 har ett ROM där ett unikt serienummer är inbänt, använd det som ID. Kan enkelt läsas ut med en MCU.
Att jag tvekade att förlita mig på serienumret i alla lägen berodde på att jag kan ha ett antal DS18B20 kopplade på samma bus, till samma mätdator. Då vet man inte vilken som är vilken, om märkningen skulle blivit fel.

Men kanske är detta en lösning?

Jag gör en liten "fickmätare", en Arduino med en display, som visar serienumret. Då kan jag vid misstanke om att jag blandat ihop mina DS18B20, dra ur en och kolla serienumret.

/Pi
Användarvisningsbild
pi314
Inlägg: 5788
Blev medlem: 23 oktober 2021, 19:22:37
Ort: Stockholm

Re: Temperaturgivare till Arduino och Pi – DS18B20 men bättre

Inlägg av pi314 »

Wihelm skrev: 21 oktober 2022, 13:46:55 Färgmärkning typ resistor.
Ja, 3-4 "färgduttar" skulle ge 1000 eller 10000 kombinationer.

Men...

Om avvikelsen kan anges som ett tal, -0,99, -0,98, ... 0, ... +0,98, +0,99 så räcker det med tecken plus två siffror för att ange korrigeringen i "klartext" direkt på komponenten. Det vore väl det bästa?

/Pi
metric
Inlägg: 766
Blev medlem: 16 maj 2010, 11:04:52

Re: Temperaturgivare till Arduino och Pi – DS18B20 men bättre

Inlägg av metric »

Här är en kille som kalibrerat en DS1820

https://aip.scitation.org/doi/pdf/10.1063/1.5086553
Användarvisningsbild
pi314
Inlägg: 5788
Blev medlem: 23 oktober 2021, 19:22:37
Ort: Stockholm

Re: Temperaturgivare till Arduino och Pi – DS18B20 men bättre

Inlägg av pi314 »

metric:
Bra tips!
Jag sökte vidare på temat "vad har andra gjort?" och hittade bl.a. detta.

https://forum.arduino.cc/t/mass-calibra ... /882750/30

Jag kanske ska tillägga att jag inte primärt är ute efter absolut noggrannhet, utan snarare relativ noggrannhet. Jag ska mäta på olika punkter i system och vill veta skillnaderna så noggrant som möjligt.

/Pi
Användarvisningsbild
pi314
Inlägg: 5788
Blev medlem: 23 oktober 2021, 19:22:37
Ort: Stockholm

Re: Temperaturgivare till Arduino och Pi – DS18B20 men bättre

Inlägg av pi314 »

Hittade ännu ett förslag till märkning av DS18B20 via länken ovan.

En kort bit färgad, tunn, krympslang på var och en av de tre trådarna.

Ska bara se om jag har eller kan köpa tunn krympslang, helst med färgerna som används på motstånd.
0 - svart
1 - brun
2 - röd
3- orange
4 - gul
5 - grön
6 - blå
7 - violett
8 - grå
9 - vit

Skulle bara kolla om jag kom ihåg färgerna - det gjorde jag. :)

/Pi
kodar-holger
EF Sponsor
Inlägg: 920
Blev medlem: 26 maj 2014, 12:54:35
Ort: Karlskoga

Re: Temperaturgivare till Arduino och Pi – DS18B20 men bättre

Inlägg av kodar-holger »

Måste det vara krympslang? Du kan ju skala av snuttar från en regnbågsfärgad flatkabel.
Användarvisningsbild
pi314
Inlägg: 5788
Blev medlem: 23 oktober 2021, 19:22:37
Ort: Stockholm

Re: Temperaturgivare till Arduino och Pi – DS18B20 men bättre

Inlägg av pi314 »

kodar-holger:
Nej, det går väl med vilken färgad, tunn, avskalad isolering som helst.
Om den är tillräckligt tunn så ramlar den inte av. Annars kan man väl fästa den med en "dutt" smältlim.

Den flatkabel jag hittat är grå, men jag letar vidare...

/Pi
Användarvisningsbild
mrfrenzy
Co Admin
Inlägg: 14850
Blev medlem: 16 april 2006, 17:04:10

Re: Temperaturgivare till Arduino och Pi – DS18B20 men bättre

Inlägg av mrfrenzy »

Ett annat bra sätt att identifiera nummer med färg är just att använda färgerna som är standard för telefoni.
https://www.pbxmechanic.com/rj21-amphenol-pinout.html
Det finns också förstås att köpa ledare med dessa färger.
Användarvisningsbild
Oltronix
Inlägg: 408
Blev medlem: 10 december 2011, 21:24:38
Ort: Nynäs

Re: Temperaturgivare till Arduino och Pi – DS18B20 men bättre

Inlägg av Oltronix »

Jag har en sån här.
IMG_4215.JPG
1. Om du kollar av varje ds1820s ID med lämplig kod och har placerat ut dem i en matris eller en struktur som du väljer och använder matrisen som förvaringplats så vet du vilken vilken ds1820 som finns var. Detta kräver viss ordning och reda. Dock är det lätt att återställa om oordning uppstått. Till detta behövs förståss något dokument tex i Excel eller någon lämplig grafik som är en bild av den fysiska matrisen och motsvarande ds1820 ID. Jag har ett 1-wire-nät, Och tänker ev lägga till ett nät för att kolla upp enskilda ds1820s ID. Mer raffinerat är förståss att ett 1-wire-nät för varje ds1820. Då har man full kontroll och behöver inte var så ordningsam. Dock blir det mer ledningsdragning. Det går kanske att göra något smart med en multiplexer.

2. Nogrannheten hos ds1820. Om man har matrisen och lägger den i en liten låda, för att säkra samma temp, och mäter alla ds1820 samtidigt vid olika temperaturer borde man med sannolik- och statistikteori få bra värde på väntevärdet och variansen/standaravikelsen. Jag får leta upp mina gamla böcker av Gunnar Blom. I databladet för ds1820 fig 1. så vet man tyvärr inte mätuppställning. Hur många termometrar har man använt mm. 3sigma ger i alla fall att 99% faller imellan +/- 3sigma-kurvorna.

Här är data från 8 ds1020 som sitter bredvid varandra. b'[24.5, 24.75, 24.4375, 24.3125, 24.6875, 24.375, 24.0625, 24.375]' Vilket ger ett "maxfel" från medelvärdet +/- 0,3C som är bättre än +/- 0,5C. Obs detta var endast ett mättillfälle.
Du har inte behörighet att öppna de filer som bifogats till detta inlägg.
Användarvisningsbild
TomasL
EF Sponsor
Inlägg: 45270
Blev medlem: 23 september 2006, 23:54:55
Ort: Borås
Kontakt:

Re: Temperaturgivare till Arduino och Pi – DS18B20 men bättre

Inlägg av TomasL »

En onoggrannhet på 0,1K skall du glömma, det går inte att göra praktiskt, framförallt inte med den typen av givare, möjligtvis med PT100 och 24-bitars AD och en synnerligen noggrann konstruktion.
Nästa grej, vad skall du använda som referens vid kalibrering, isbad, tja, redan där är du kanske +/-2K, sedan måste du ju ha en termometer som dessutom är bättre, vilket också skapar problem, de tenderar att vara ruskigt dyra.
Skriv svar