DS18 senzor

Vse v zvezi s senzorji, takimi ali drugačnimi,... tudi sw

DS18 senzor

OdgovorNapisal/-a lojzek » 09 Mar 2021, 13:07

Pozdravljeni,

naletel sem na eno težavo s tem senzorjem.
Imam regulacijo kolektorja in sanitarne vode. V sistem je vključenih 7 kosov DS18B20 senzorjev. Občasno, zelo poredko (mislim da sem v enem letu zasledil 3 - 4 take dogodke), se senzorju na strehi - v kolektorju zmeša.
Odčitki temperatur so napačni, previsoki, tudi ponoči recimo kaže nenormalno visoko temperaturo, ki tudi "skače". Pa takrat je bolj motena tudi vsa one wire komunikacija, z vsemi senzorji. Pogostnost napačnih odčitkov (CRC) je večja, pri vseh senzorjih.
Ko sem to nekoč zasledil na večer, sem zanalašč pustil tako, v stanju motnje. Do zjutraj se ni pobralo v normalno stanje. Pomaga samo odklop in ponovni vklop napajanja krmilnika.... :_think :_think Hmmm nisem pa še poskusil napraviti samo reset krmilnika. Da 100% izločim napako v programu... :_think Bom še to poskusil ob naslednji priložnosti. Ampak vseeno, samo ta senzor ne dela prav...

Sedaj pa zanimivo bistvo.
Ko napajanje krmilja po recimo 3 sekundah vključim nazaj, ima ta in samo ta senzor visoko temperaturo- recimo 70°C, ki potem relativno hitro pada do pričakovane vrednosti. Da je izmerjena (previsoka) temperatura resnična, je preverjeno s CRC preverbo rezultata.

Senzor se na en način zares greje.

Ali je že kdo drug to zasledil? :?: Kaj narediti, da do tega pojava nebi prihajalo? Zakaj bi se to lahko sploh dogajalo?

Še nekaj dejstev o krmilniku.
- Arduino, program pisan v C-ju.
- Senzorji kitajski. napajanje "navadno", ne parazitno.
- Temperatura vseh se prebere približno 1x na sekundo, tako da to prav gotovo ni prepogosto.
- Ker imam uporabljen watchdog timer vem, da se program krmilnika ne zapleza. Razen tega senzorja vse ostalo deluje b.p. No ja, ker izmeri previsoko temperaturo kolektorja, se vključi tudi črpalka, kar pa predvsem ponoči ni smiselno. Ampak glede na odčitek je to pravilno.
- glede na dejstvo, da je pred vsakim branjem potrebna inicializacija podatkovnega vodila... Torej tudi komunikacija s senzorji (dokaj) normalno poteka.

LP, Branko
lojzek
 
Prispevkov: 246
Pridružen: 25 Feb 2015, 14:18
Zahvalil se je: 7 krat
Prejel zahvalo: 62 krat
Uporabnika povabil: Proteus
Število neizkoriščenih povabil: 6

Re: DS18 senzor

OdgovorNapisal/-a zanka » 09 Mar 2021, 14:09

Branje senzorja brez sprožitve mertive pomeni 85 °C.
Uporabniški avatar
zanka
 
Prispevkov: 3105
Pridružen: 17 Mar 2016, 01:16
Kraj: SI-8000
Zahvalil se je: 120 krat
Prejel zahvalo: 360 krat
Uporabnika povabil: DusanK
Število neizkoriščenih povabil: 72

Re: DS18 senzor

OdgovorNapisal/-a int47 » 09 Mar 2021, 20:37

Latch-up?

Predvidevam, da je to najdaljša linija.
Poskusi dodat manjši RC filter na napajanje blizu senzorja. Recmo 10-50 Ohm in nekaj uF, ter dve 1n4148 od DQ proti GND in VDD.
Če ima kabel veliko kapacitivnost, lahko pri senzorju poskusiš dodat manjši (do nekaj 10 ohm) upor zaporedno z DQ.
Dodaj možnost izklopa napajanja senzorjev.
Kdor ni skregan, ni Slovenc.
Uporabniški avatar
int47
 
Prispevkov: 18
Pridružen: 18 Jan 2015, 16:47
Zahvalil se je: 1 krat
Prejel zahvalo: 6 krat
Uporabnika povabil: VolkD
Število neizkoriščenih povabil: 4

Re: DS18 senzor

OdgovorNapisal/-a lojzek » 10 Mar 2021, 13:58

@zanka, To dejstvo mi je poznano. prva meritev je vedno 85°C in jo je treba zanemarit.

@ int47: Da, domnevam, da se senzor sam vase nekam zacikla.
Da, najdaljša linija, cca 30 - 40m. UTP kabel.
Filter... ParalelnI RC člen? Ali R v plus vejo napajanja, potem pa C paralelno senzorju, torej nekako zaporedni RC člen?
Ostalo mi je razumljivo in bom predlog udejanil.
lojzek
 
Prispevkov: 246
Pridružen: 25 Feb 2015, 14:18
Zahvalil se je: 7 krat
Prejel zahvalo: 62 krat
Uporabnika povabil: Proteus
Število neizkoriščenih povabil: 6

Re: DS18 senzor

OdgovorNapisal/-a zanka » 10 Mar 2021, 17:57

Prvi rezultat meritev NI vedno 85 °C. Je samo, če je v prostoru 85 °C.
85 °C je vrednost "pomnilnika" senzorja po priklopu napajanja in tudi takrat je CRC pravilen. Če senzor dobi zahtevo za meritev in vmes zmanjka napajanja, se bo prebrala vrednost 85 °C. Če programska oprema gleda povprečje zadnjih nekaj meritev ali izvaja kakršno koli drugo računsko metodo, potem je vrednost okrog 70 °C možna.

Če ima kdo idejo, kako zaznati, ali je 85 °C rezultat meritve ali rezultat "pomnilnika" po priklopu napajanja, lahko napiše kakšno idejo, ker imam s tem največ sitnosti.
Uporabniški avatar
zanka
 
Prispevkov: 3105
Pridružen: 17 Mar 2016, 01:16
Kraj: SI-8000
Zahvalil se je: 120 krat
Prejel zahvalo: 360 krat
Uporabnika povabil: DusanK
Število neizkoriščenih povabil: 72

Re: DS18 senzor

OdgovorNapisal/-a tilz0R » 10 Mar 2021, 18:08

zanka je napisal/-a:Če ima kdo idejo, kako zaznati, ali je 85 °C rezultat meritve ali rezultat "pomnilnika" po priklopu napajanja, lahko napiše kakšno idejo, ker imam s tem največ sitnosti.


Spremljaj zgodovino. Zelo malo je verjetno, da bo šlo iz 25 na 85 in takoj nazaj na 25.
Knowledge sharing is people' caring., T. MAJERLE
Uporabniški avatar
tilz0R
 
Prispevkov: 1933
Pridružen: 18 Jan 2015, 00:12
Kraj: Črnomelj
Zahvalil se je: 236 krat
Prejel zahvalo: 556 krat
Uporabnika povabil: s56rga
Število neizkoriščenih povabil: 112

Re: DS18 senzor

OdgovorNapisal/-a VolkD » 10 Mar 2021, 18:49

V cilju doseganja bolj natančnih meritev sem jaz to delal tako, da sem 34 zaporednih meritev shranil v tabelo. Potem sem najvišjo in najnižjo vrednost izločil, naredil seštevek vrednosti ter malo pošiftal. 34 meritev minus dve jih je ravno 32. Zelo priročno za šiftanje, ki pomeni deljeno z 32.
No saj v resnici nisem imel tako velike tabele, ker je to potrata spomina. Imel sem samo seštevek, števec meritev, max in min vrednost. Lepo gre skozi.
Dokler bodo ljudje mislili, da živali ne čutijo bolečine, bodo živali čutile, da ljudje ne mislijowww.S5tech.net
Uporabniški avatar
VolkD
Administratorji strani
 
Prispevkov: 49521
Pridružen: 29 Dec 2014, 20:49
Kraj: Kačiče (Divača)
Zahvalil se je: 11810 krat
Prejel zahvalo: 6795 krat
Uporabnika povabil: Vrtni palček
Število neizkoriščenih povabil: 174

Re: DS18 senzor

OdgovorNapisal/-a gumby » 10 Mar 2021, 19:18

zanka je napisal/-a:85 °C je vrednost "pomnilnika" senzorja po priklopu napajanja in tudi takrat je CRC pravilen.

S tem si je nekdo zaslužil nobelovo nagrado za idiotizem. Kot da ni ostala nobena druga vrednost za POR...

Jaz enostavno ignoriram 85 stopinj. Saj ne moreš vedeti, če je dejansko toliko, ali se senzorju malo meša. Dejanska temperatura pa tudi ne bo dolgo 85.000°C, torej ni neke panike.

Podobna blesarija nastane, če prebereš same nule (vključno z CRC). Po principu garbage in, garbage out je takrat 0 stopinj.
my brain hurts
Uporabniški avatar
gumby
 
Prispevkov: 2731
Pridružen: 14 Jan 2015, 19:49
Kraj: Lendava
Zahvalil se je: 113 krat
Prejel zahvalo: 718 krat
Uporabnika povabil: Vrtni palček
Število neizkoriščenih povabil: 73

Re: DS18 senzor

OdgovorNapisal/-a lojzek » 21 Mar 2021, 15:26

Moja tema, moj kvak :)

Danes končno mi je uspelo udejanit filter. Sem prišel (ukradel) malo časa, ujel vreme in zmontiral. Filter iz 22E upora in :_think :_think 100uf kondija. Kakršnega sem pač našel v stari zalogi. Pa upor 47E v DQ linijo. Vse Iskrino, stara zaloga pač. :)
Diod nisem dodal. Po razmisleku sem ugotovil, da nisem 100% kako jih zasukat:) malo heca.

Pred montažo je po opazovanju v recimo pol ure enkrat, dvakrat prebralo 85°C (torej se je sesedel, resetiral?) sedaj gledam grafe in rešujem križanke 2 uri , vse izgleda OK.


@1nit47, hvala za nekaj novega.

LP Branko
lojzek
 
Prispevkov: 246
Pridružen: 25 Feb 2015, 14:18
Zahvalil se je: 7 krat
Prejel zahvalo: 62 krat
Uporabnika povabil: Proteus
Število neizkoriščenih povabil: 6

Re: DS18 senzor

OdgovorNapisal/-a lojzek » 21 Mar 2021, 15:33

gumby je napisal/-a:S tem si je nekdo zaslužil nobelovo nagrado za idiotizem. Kot da ni ostala nobena druga vrednost za POR...


Dobro bi bilo če bi Dallas (no ja, kitajci) ob prvem power-up senzorja imeli namenoma napačen CRC.
lojzek
 
Prispevkov: 246
Pridružen: 25 Feb 2015, 14:18
Zahvalil se je: 7 krat
Prejel zahvalo: 62 krat
Uporabnika povabil: Proteus
Število neizkoriščenih povabil: 6

Re: DS18 senzor

OdgovorNapisal/-a tilz0R » 21 Mar 2021, 17:08

Ignorirajte first read after power-up. Dallas je zaj, a rešitev je trivialna.
Knowledge sharing is people' caring., T. MAJERLE
Uporabniški avatar
tilz0R
 
Prispevkov: 1933
Pridružen: 18 Jan 2015, 00:12
Kraj: Črnomelj
Zahvalil se je: 236 krat
Prejel zahvalo: 556 krat
Uporabnika povabil: s56rga
Število neizkoriščenih povabil: 112

Re: DS18 senzor

OdgovorNapisal/-a forest70 » 21 Mar 2021, 17:11

Tudi jaz sem imel svoj čas 10 senzorjev, seveda kitajske.
Z do tremi senzorji je še delovalo, z več pa ne.
Zabasal sem jih v okrogel fascikel, kupil pri Moserju originalne in glej ga zlomka, nobenih težav z vsemi desetimi.
Toliko o kitajskih ponaredkih....
If you pay in bananas, you got monkeys.
Uporabniški avatar
forest70
 
Prispevkov: 2503
Pridružen: 14 Jan 2015, 01:11
Kraj: Koper
Zahvalil se je: 466 krat
Prejel zahvalo: 566 krat
Uporabnika povabil: Vrtni palček
Število neizkoriščenih povabil: 128

Re: DS18 senzor

OdgovorNapisal/-a lojzek » 22 Mar 2021, 13:17

tilz0R je napisal/-a:Ignorirajte first read after power-up. Dallas je zaj, a rešitev je trivialna.



To nujno. pri power upu krmilja s temi senzorji najprej program izvede init periferije, potem pa enkrat izda ukaz za branje temperature. Počakaš eno sekundo, da si 100% da so vsi senzorji pomerili.

Vse naslednje meritve pa so "praviloma" merodajne in pravilne.

Pri sebi pa sem opazil, da najbolj oddaljena sonda občasno prebere 85°C, naslednja meritev pa je spet normalna. To pove, da se je senzor ponovno zagnal. To je pa vgrajeni filter iz te teme kot vse kaže, uredil.

Saj včasih pade komunikacija s katerim od senzorjev. Ali pa je CRC napačen. Ali pa se pravi senzor ni oglasil. Karkoli. Tako meritev pa seveda ignoriram, označim napako senzorja na LCDju in upoštevam zadnji pravilni odčitek. Če pa je teh napak več oz na LCDju stalno gori napaka neke sonde, pa je to znak da je treba nekaj ukrenit.

Takšen je moj princip.
lojzek
 
Prispevkov: 246
Pridružen: 25 Feb 2015, 14:18
Zahvalil se je: 7 krat
Prejel zahvalo: 62 krat
Uporabnika povabil: Proteus
Število neizkoriščenih povabil: 6

Re: DS18 senzor

OdgovorNapisal/-a lojzek » 23 Mar 2021, 11:41

Pozdrav,

Nadaljevanje zgodbe:

Filter je sicer izboljšal situacijo, sem pa včeraj zasledil, da se je senzor zaciklal. Morebiti je filter še toliko pomagal, da ni bilo vpliva na druge in je bil samo ta v "out-u".

Tokrat sem pa 100%, da ni to programska napaka. Reset programa ni pomagal.
Ko sem izključil in nazaj vključil napajanje, se je pobral. Pa spet je imel višjo lastno temperaturo od pričakovane. Namesto pričakovanih 5°C je imel čez 30, temperatura je v cca 10 sekundah upadla na pričakovano.

- > Menjati moram senzor.
lojzek
 
Prispevkov: 246
Pridružen: 25 Feb 2015, 14:18
Zahvalil se je: 7 krat
Prejel zahvalo: 62 krat
Uporabnika povabil: Proteus
Število neizkoriščenih povabil: 6

Re: DS18 senzor

OdgovorNapisal/-a forest70 » 23 Mar 2021, 14:51

lojzek je napisal/-a:Pozdrav,

Nadaljevanje zgodbe:

Filter je sicer izboljšal situacijo, sem pa včeraj zasledil, da se je senzor zaciklal. Morebiti je filter še toliko pomagal, da ni bilo vpliva na druge in je bil samo ta v "out-u".

Tokrat sem pa 100%, da ni to programska napaka. Reset programa ni pomagal.
Ko sem izključil in nazaj vključil napajanje, se je pobral. Pa spet je imel višjo lastno temperaturo od pričakovane. Namesto pričakovanih 5°C je imel čez 30, temperatura je v cca 10 sekundah upadla na pričakovano.

- > Menjati moram senzor.

Povej, so senzorji original, oziroma kupljeni pri priznanem trgovcu ali pa so Kitajske izdelave.
If you pay in bananas, you got monkeys.
Uporabniški avatar
forest70
 
Prispevkov: 2503
Pridružen: 14 Jan 2015, 01:11
Kraj: Koper
Zahvalil se je: 466 krat
Prejel zahvalo: 566 krat
Uporabnika povabil: Vrtni palček
Število neizkoriščenih povabil: 128

Re: DS18 senzor

OdgovorNapisal/-a zanka » 23 Mar 2021, 17:41

Če kdo rabi originalne DS18B20, naj mi piše. Cena 1,3 evra. In tudi ti imajo vrednost 85°C ob vklopu.
Ideja, da se prva meritev preskoči drži ob predpostavki, da tipala ne izgubljajo napajanja.
Uporabniški avatar
zanka
 
Prispevkov: 3105
Pridružen: 17 Mar 2016, 01:16
Kraj: SI-8000
Zahvalil se je: 120 krat
Prejel zahvalo: 360 krat
Uporabnika povabil: DusanK
Število neizkoriščenih povabil: 72

Re: DS18 senzor

OdgovorNapisal/-a lojzek » 23 Mar 2021, 19:44

@ forest: original Kitajci :) Iz Ebaya. Zato po tvojem prejšnjem postu vem - menjaj - !! Imam jih (iz raznih časovnih obdobij) več, tako upam, da bo naslednji iz druge serije / drug copy paste,... Da ima ta trenutni samo smolo... :( Novi so vsi kako leto dve mlajši...

@ zanka, prvič probam z drugim, drugače te pocukam za rokav. Jih imam namreč kar nekaj. Tvoja ponudba je za original fajna.
lojzek
 
Prispevkov: 246
Pridružen: 25 Feb 2015, 14:18
Zahvalil se je: 7 krat
Prejel zahvalo: 62 krat
Uporabnika povabil: Proteus
Število neizkoriščenih povabil: 6


Vrni se na Senzorji

Kdo je na strani

Po forumu brska: 0 registriranih uporabnikov in 1 gost