Küsimus:
Minu DS18B20 lugemine on kõrge. Kuidas ma saan selle õige temperatuuri tagastamiseks?
Mark Booth
2014-03-18 05:21:03 UTC
view on stackexchange narkive permalink

Töötan oma kodu kütteseadmete juhtimissüsteemi kallal, kuid mul on probleeme temperatuurianduri näiduga, mis on oodatust kõrgem.

Mul on 5 V Arduino Mini Pro kloon ühendatud relee mooduli külge, HD47780 ekraan ja Tiny RTC moodul, mille külge on kinnitatud DS18B20.

DS18B20 on varustatud Tiny RTC moodulile rakendatud 5v Vcc-ga, selle asemel, et kasutada DQ-liinil parasiitjõudu (nagu ma ei olnud pole kindel, kas Onewire'i teegid toetavad seda töörežiimi) ja DS18B20 andmeleht ütleb, et Vcc võib olla vahemikus 3,0v kuni 5,5v. Mõõtsin reguleeritud võimsuse Mini Pro 5,2v pinge järgi.

Võrdlen DS-i temperatuuri olemasoleva toatermostaadiga (bi-metallic), kahe anduriga RS töölaua temperatuurimonitoriga, väike 'termohügromeeter' ja kahemetalliline külmiku termomeeter (selle temperatuurivahemiku ülemises veerandis) . Näidik DS-ist on alati umbes 1-2 kraadi kõrgem kui teiste andurite näidud, mis asuvad üksteise ulatuses.

† Mitte tegelik, vaid midagi sarnast.

Erinevaid foorumeid lugedes olen kuulnud, et need andurid on üsna täpsed, kuid võivad kannatada nende läheduses paiknevate komponentide lokaliseeritud kuumutamise tõttu. Liigutasin anduri 20 cm kaablile ja asetasin selle kaugele muu elektroonika. See ei teinud vahet.

Seejärel lugesin, et DS võib isekuumeneda, kui seda tarnitakse liiga kõrge Vcc pingega, nii et lisasin 1,7 V langusega punase LED-i ja mõõtsin uue pinge üle DS kui 3,5 v, kuid jällegi, pärast ootamist, kuni temperatuurid veel kord stabiliseeruvad, ei olnud sellel vahet.

Kas keegi oskab soovitada, miks DS võib olla kõrge ja mida ma saan selle ära hoida?

Kui kindel olete, et teie toatermostaat ei näita mitte ainult 1-2 kraadi * madalat *? Peaksite hankima kolmanda termomeetri ja võrdlema, et teha kindlaks, kust teie nihe ** pärineb **. Kuna RS-termomeeter kasutab tõenäoliselt mõlema anduri jaoks sama lugemiselektroonikat, pole see tõenäoliselt kasulik kahe erineva kalibreerimisviidena.
Viis vastused:
#1
+9
Cybergibbons
2014-03-18 13:48:54 UTC
view on stackexchange narkive permalink

Olen nüüd paljudesse andurisõlmedesse paigutanud palju DS18B20 andureid - võib-olla umbes 50. Olen natuke õppinud neilt tagastatud lugemiste kohta. Ma tean, et olete mõned neist isoleerinud, kuna see pole põhjus, kuid on hea kinnitada, et need on probleemid.

Ma ei tea, kas te kasutate Celsiust või Fahrenheiti, nii et probleem pole selge.

Lokaliseeritud küte

Ma ei arva Arduinot kui "kuuma" kiipi, vaid panen DS18B20 korpuse sisse Arduino ja LCD-ekraaniga nägin, et näidud olid 2–3 ° C oodatust kõrgemad.

Selle eemaldamine korpusest väljapoole parandas.

Kütmine kõrgelt Vcc / sage teisendused

Kui varustate kiipi suure Vcc-ga ja teete sageli teisendusi (st nii tihti kui võimalik), kiip soojeneb. Olen seda näidust suurendanud 1-2 ° C võrra.

Ma pole näinud probleemi ainult kõrge Vcc-ga, kuid töötan enamikku DS18B20 parasiitrežiimis ja konverteerin maksimaalselt üks kord iga 10 s järel. Aktiivrežiimis töötavatel on vool välja lülitatud, kui neid ei kasutata.

OneWire ja DallasTemperature toetavad parasiitrežiimi.

Kõiki temperatuuriandureid pole loodud võrdseks

Enne DS18B20-ga mängima asumist oli mul mitu temperatuuriandurit. Peaaegu eranditult on need alaealised. Enamik neist põhineb termistoridel ja kalibreerimine on halb. Arvasin, et DS18B20 on lugemisest üle, kuid kui kasutasin head termopaari ja arvestit, võisin kinnitada, et need on õiged.

See oli DS18B20 usaldamise õppimine.

Kuumusega juhtiv soojus

Kui andurid on juhtmel, juhib traat üllatavalt palju soojust. See võib olla probleem juhtmete juhtimisel mööda torusid.

Võlts DS18B20

Need andurid on väga populaarsed ja see näib olevat põhjustanud võltsinguid. Mul on partii roostevabast terasest veekindlaid andureid, mida loeti üle ja ajastus oli väljas. Nad töötasid koos OneWire'i teegiga, kuid mitte DS2482 OneWire'i meistriga. Olen kuulnud, et ka tavalised TO-92 ümbrised on võltsitud.

Plaaditarkvara suures tarkuses pole mul lubatud sellele küsimusele vastata, seega lisan siia kommentaari. Nagu sain teada raskest viisist aadressil https://github.com/PaulStoffregen/OneWire/issues/91, peate 3.3V kiibi kasutamisel asendama 4.7k takisti 2.7k takistiga või on mõned andurid tagastab valed väärtused.
#2
+2
Jordan Sitkin
2016-02-03 01:28:12 UTC
view on stackexchange narkive permalink

Minu puhul oli mu uC ja anduri vaheline juhtmestik liiga lühike ja see edastas veidi soojust. Arvasin, et esialgu ei saa see nii olla, kuna teine ​​tempeandur teatas täpselt samal kaugusel olevast tempost. Teisaldasin selle tahvlile teise kohta ja voila!

#3
+1
Kingsley
2016-01-28 08:53:55 UTC
view on stackexchange narkive permalink

Võib-olla võiksite oma anduri kalibreerida.

Mida loeb see keevasse vette sukeldatuna (eeldades merepinda)? 102,5 Celsiuse järgi? See annaks teile kõrge temperatuuriga kalibreerimise -2,5 ° C.

Ilmselt on parem kalibreerida nende temperatuuride ümber, mida te minu arvates eeldate. See tähendab mõne mõõteseadme usaldamist (või keskmistamist?) Ja selle järgi kalibreerimist.

#4
+1
NiKiZe
2017-05-27 18:52:06 UTC
view on stackexchange narkive permalink

Olen näinud mitme kraadi C nihkeid, kui kasutasin DS18B20 3,3 V siinil, lülitusin stabiilsele 5,0 V siinile ja sain mõistlikumad väärtused. (testitud parasiitjõuga ja ilma)

See on huvitav, tänu ja vastupidine sellele, mida mõned inimesed on teatanud. Huvitav, kas see on veel üks võltsitud DS18B20 probleem.
#5
  0
Michal.S
2019-10-01 00:09:32 UTC
view on stackexchange narkive permalink

Olen teinud mõningaid katseid. Kui DS18B20 oli lühikese kaabli <1cm ja minu Arduino Pro Micro vahel, olid näidud 5 kraadi rohkem kui keskkond. Kaabli pikkusel> 10 cm arduino plaadist ja olenemata sellest, kuhu takisti paigaldati (arduino lähedal või DS18B20 lähedal), olid näidud korras.



See küsimus ja vastus tõlgiti automaatselt inglise keelest.Algne sisu on saadaval stackexchange-is, mida täname cc by-sa 3.0-litsentsi eest, mille all seda levitatakse.
Loading...