www.elektronik.si
DS 18B20 senzor
Pojdi na stran 1, 2  Naslednja  :||:
www.elektronik.si -> Periferija

Avtor: lojzek PrispevekObjavljeno: Čet Nov 22, 2018 2:59 pm    Naslov sporočila:  DS 18B20 senzor
----------------------------------------------------------------------------
Pozdravljeni,

imam eno manjšo težavo pri uporabi teh senzorjev.
Pri centralni kurjavi sem izdelal lasten krmilnik na Atmelovi osnovi. Do sedaj sem imel za merjenje temperature KTY temperaturna tipala, sedaj pa sem to predelal na DS18B20 tipala.
Vse lepo in prav, ampak sedaj mi pa (vsaj moje mišljenje je tako) nagajajo zunanje motnje pri komunikaciji s senzorji in recimo izpad meritve ter vrednost temperature 0°C. Pri analognih sem izvedel povprečenje, tukaj mi pa tak postopek ni ravno uporaben. tako da sem uporabil programski princip pridobivanja primernega rezultata.

Ampak, rad bi rešil težave tudi hardversko, pri izvoru. Ker se tak izpad meritve dogaja (kar) pogosto in v naključnih časovnih razmakih. Da so motnje, mi nakazuje pojav motenj tudi pri recimo prižigu fluorescentne luči.
Kako imate vi rešen tak problem izogibanja motnjam?
Pa še to, senzorji so dokaj blizu en drugemu, motnje se pojavljajo na dveh od treh tipal. kabli so položeni poleg "energetskih" kablov za črpalke i.p.d., ampak se pojavljajo ne glede na obratovanje, mirovanje ali preklaplanje elementov (črpalk...).

Avtor: Peter123Kraj: Lj. PrispevekObjavljeno: Čet Nov 22, 2018 3:06 pm    Naslov sporočila:  
----------------------------------------------------------------------------
Kondenzator na obeh koncih napajalne žice.
Še najbolje je da imaš na kablu 12V pri samem senzorju pa 5V regulator s elektrolitom in keramiko.
Tudi pullup upor je najbolje imeti pri DS senzorju.
Lahko tudi probaš znižati vrednost pull up uporov/upora.
Imaš vse na en digitalni vhod ali vsak senzor na svoj pin od MCU?

Avtor: CaliforniaKraj: Hrastnik PrispevekObjavljeno: Čet Nov 22, 2018 3:22 pm    Naslov sporočila:  
----------------------------------------------------------------------------
Pozdravljen, sam imam podobno zadevo narejeno s PICom in dela brez problemov (motenj) že krepko preko 10 let. Za povezave sem uporabil mrežne kable z opletom, pullup upor je zraven vhoda krmilnika, parazitsko napajanje, vezava v seriji šest različnih merilnih mest, razdalja skupaj več kot 30m. Se pa spomnim, da sem imel na začetku tudi težave z "čudnimi" rezultati meritev zaradi navadnih kablov.

Lp, Vlado

Avtor: solomojsterKraj: NOVA GORICA PrispevekObjavljeno: Čet Nov 22, 2018 6:43 pm    Naslov sporočila:  
----------------------------------------------------------------------------
Tudi sam sem imel iste težave. Zato sem kable potegnil tako ,da se ne nahajajo blizu napajalnih kablov črpalk in druge elektronske šare. Sedaj deluje brez problemov. No tudi prej je lepo deloval, ko ni bilo kurilne sezone. Mr. Green

Avtor: lojzek PrispevekObjavljeno: Čet Nov 22, 2018 10:01 pm    Naslov sporočila:  
----------------------------------------------------------------------------
Nadaljevanje glede na pobude in debato:

@Peter123:
Če bi bilo potrebno narediti približno vse iz nasveta, bi bili ti senzorji praktično neuporabni.. - Dva kondenzatorja,12/5V regulator na senzor... raje grem nazaj na KTY..
Pullup sem že itaq zmanjšal iz 3,9kohm (po datasheetu bi zadoščal 4,7kohm) na 2,2kohm, ker mi drugače niso hoteli vsi trije komunicirat. Največ dva, ob priklopu tretjega so vsi trije utihnili, ne glede na uprabljeno kombinacijo. Upor je blizu MCU. Razdalje do senzorjev so po cca 4m, vsi so združeni pri MCU.
Vsi so seveda na enem MCU pinu, nimajo parazitnega napajanja ampak klasično. Parazitno napajanje mi nekako ni uspelo uporabit - usposobit do delujočega.

@California:
mrežni kabli... Ali ima vsak senzor svoj kabel do MCU? ali imaš (IN KJE? TER KAKO) ozemljen oplet posameznih kablov? ko sem pri ozemljitvi.. ali imaš kaj od napajanja - običajno GND - ozemljen? Pa še eno vprašanje, kolikšen imaš clock MCUja?

@solomojster:
tudi meni kurjava najbolje deluje, če jo ne potrebujem Smile Po opazovanju motnje inducirajo (tudi in večinoma) stvari, ki so "daleč" od peči. Tako da sam medsebojen odmik močnostnih in senzorskih kablov dvomim, da bi koristil?

Avtor: Jaka57Kraj: Grosuplje PrispevekObjavljeno: Pet Nov 23, 2018 1:19 am    Naslov sporočila:  
----------------------------------------------------------------------------
California je napisal/a:
........Za povezave sem uporabil mrežne kable z opletom, pullup upor je zraven vhoda krmilnika, parazitsko napajanje, vezava v seriji šest različnih merilnih mest, razdalja skupaj več kot 30m.
Lp, Vlado
Oziroma, enostavno rečeno, zelo pomembno je, kako in s čim (način) napajaš senzor!
Mislim, da enostavna telefonska parica (saj veste, tista belo modro zavita žica), zna rešiti veliko problemov.

Avtor: CaliforniaKraj: Hrastnik PrispevekObjavljeno: Pet Nov 23, 2018 1:50 pm    Naslov sporočila:  
----------------------------------------------------------------------------
Mrežni kabel: oznake ne vem, zunanja izolacija oranžne barve, noter štiri parice, vsaka od njih je zavita v nekakšno folijo in nato vse štiri še enkrat v enako folijo.
Senzorji so povezani na eno parico ki se začne pri krmilniku in konča pri najbolj oddaljenemu merilnemu mestu. Zvezdasta topologija mi ni delovala.
Oplet je ozemljen v omarici z krmilnikom.
Posamezni senzor ima če se ne motim + in - povezana na GND, medtem ko je data pin povezan na vhod krmilnika.
Minus pol od napajanja je ozemljen.
Pullup upor je odvisen od števila senzorjev, v mojem primeru mislim da je 1kOhm.
MCU dela na 18,432 MHz (zaradi RS485), lahko pa tudi kakšna druga frekvenca, nebi smelo biti problemov.

Lp, Vlado

Avtor: lojzek PrispevekObjavljeno: Pet Nov 23, 2018 2:28 pm    Naslov sporočila:  
----------------------------------------------------------------------------
@Vlado,

hvala za podrobne informacije, mi bo v pomoč pri reševanju motenj.
Torej si uporabil (najverjetneje) STP kabel, pa zvezdasta vezava (ki jo imam tudi jaz) ti ni delovala OK. Pa tudi ti si moral zmanjševati pullup.
Še toliko od ozemljitve: minus pol napajanja imaš torej povezan tudi na PE, hišno ozemljitev?

LP, Branko

Avtor: staneKraj: Rače PrispevekObjavljeno: Pet Nov 23, 2018 2:42 pm    Naslov sporočila:  
----------------------------------------------------------------------------
Imam dva DS-a. Eden meri temperaturo kotla, drugi meri temperaturo dvižnega voda.
Kabel je UTP do prvega DS-a in nato še dva metra navadnega kabla brez opleta.
UTP kabla je cca. 8m, DS-a sta na enem vhodu in upor na sponkah vhoda.
Zadeva deluje že več let brez težav.

Avtor: CaliforniaKraj: Hrastnik PrispevekObjavljeno: Pet Nov 23, 2018 3:26 pm    Naslov sporočila:  
----------------------------------------------------------------------------
Ja, minus pol napajanja je na ohišju, vklapljanje porabnikov je izvedeno preko optokoplerjev. po kakšnem letu delovanja sem še vedno (zelo redko) opazil napako pri čitanju senzorjev, vzrok jasno v motnjah ob vklopih oljnega gorilca ali zamrzovalne skrinje. Kasneje sem zaradi varnosti en izhod na krmilniku sprogramiral kot digitalni izhod z pulzi frkvence približno 1Hz, katere sem povezal na zunanje vezje z monostabilom, katerega izhod je odvisen od prisotnosti pulzov in krmili naprej preprosti preklop med avtomatskim režimom (krmilnik) in ročnim režimom (termostati). Zadeva sedaj dela že kakšnih 14 let bp.

Lp,

Avtor: SilvoKraj: Koroška-okolica Dravograda PrispevekObjavljeno: Pet Nov 23, 2018 6:16 pm    Naslov sporočila:  
----------------------------------------------------------------------------
DS18XXX so kar težavni. Imam občutek, da se uporabljajo zgolj za hobi aplikacije. V neki resni industrijski aplikaciji ga še nisem videl... no ja, mnogo let nazaj sem razvil regulator za hladilnico mleka za eno slo podjejte. Želja naročnika je bila, da se uporabi nek senzor katerega ni treba kalibrirati. Takrat sem izbral DS1820.Narejenih je bilo kar precejšno število teh regulatorjev. (mislim, da jih izdeljuejo še danes) Takrat sem same senzorje kar dosti testiral. Ker ni bilo potrebe po večjem število senzorjev, sem senzorje dajal vsakega na svojo vodilo. V tem primeru ni bilo nobenih težav s komunikacijo. Uporabljal sem terminalski kabel. (kabel z opletom, katerega sem na strani vezja ozemljil.) Dogajale pa so se čudne stvari, ko sem dal več senzorjev na eno vodilo. Spomnim se, da je na dveh popolnoma enakih testnih aplikacijah z 3 ali 4 senzorji na vodilu, eno vodilo obviselo - naključno po kakem dnevu tednu ali mesecu. (zdi se mi, da sem o tem celo pisal na forumu) Z drugim ni bilo nikoli težav. Ko sem zamenjal vodila med seboj se je to zgodilo na drugem hardweru. Nisem več iskal vzroka, a očitno je bil kriv en senzor. Takrat sem se odločil, da z DS-ji ne delam več.
Po tem sem naredil še kar nekaj zadev, kjer sem meril temperaturo. V koliko je šlo za pozitivne temperature do 100°C sem uporabil LM35. Glede na natančnost je vsaj koliko sem ga testiral, vsaj toliko natančen kot DS1820. Delo z njim je enostavnejše. V koliko ne gre za neke zelo dolge povezave tudi kabli niso problematični.

Avtor: robertKraj: Tolmin PrispevekObjavljeno: Pet Nov 23, 2018 6:55 pm    Naslov sporočila:  
----------------------------------------------------------------------------
UTP (STP,f*p,...) je že OK, če je pravilno priključen.
Minus in data morata biti na isti parici (modra-belomodra).

V mojemu hišnemu sistemu je (bilo) cca. 25 senzorjev parazitno napajanih na navadnih UTP (cat.5) vezanih po nekaj na linij in v treh zvezdiščih. Žice so bile na roke pomotane v forbox sponkah. Bral sem jih z kitajskim adaptorjem USB9097. Po prostih paricah so bili priključeni še drugi senzorji.
Tisti "bilo" zgoraj je posledica strele Confused

Poigrati se je bilo treba samo z timingom - na to so izredno občutljivi !

Avtor: SilvoKraj: Koroška-okolica Dravograda PrispevekObjavljeno: Pet Nov 23, 2018 7:35 pm    Naslov sporočila:  
----------------------------------------------------------------------------
Naj dodam še tole. Sam senzor je izredno počasen. Če ga sprašuješ po ID-ju, pa preverjaš CRC verjetno rabiš pol sekunde, da dobiš kaj iz njega. Tukaj pa postane problem, če ti mikrokontroler še multipleksira displej. V koliko boš komunikacijo nekontrolirano prekinjal bo nastala štala. V koliko pa boš celotno komunikacijo izvedel v enem kosu pa zmanjka procesorskega časa za multiplex in displej bo nezaželeno utripnil. Sam sem za zgoraj opisano "industrisko" aplikacijo uporabil prav multiplex. Program sem pisal v assemblerju. Kodo komunikacije pa sem razdelil na dele, kjer sem jo lahko prekinil, ter jo izvajal v prekinitveni rutini, ki je multipleksirala displej.

Avtor: stursc PrispevekObjavljeno: Pet Nov 23, 2018 7:36 pm    Naslov sporočila:  
----------------------------------------------------------------------------
robert je napisal/a:
UTP (STP,f*p,...) je že OK, če je pravilno priključen.
Minus in data morata biti na isti parici (modra-belomodra).


To je zelo pomemben podatek !
Ob tem sem dodal v napajalno vejo vsakega senzorja RC filter (47E/100n).
Tudi na DATA pin sem dal 47E upor, vse vhode in izhode pa v sami krmilni enoti
pa preko optospojnikov.
Zaenkrat zadovoljen (12let)

LP, stursc

Avtor: CaliforniaKraj: Hrastnik PrispevekObjavljeno: Pet Nov 23, 2018 7:37 pm    Naslov sporočila:  
----------------------------------------------------------------------------
robert je napisal/a:
UTP (STP,f*p,...) je že OK, če je pravilno priključen.
Minus in data morata biti na isti parici (modra-belomodra).
Poigrati se je bilo treba samo z timingom - na to so izredno občutljivi !


Absolutno točno kar se parice tiče. Ravno tako pa tudi glede tajminga.
Jaz imam v programu 750ms za konverzijo. Crknil mi je v tem času eden in sicer na sončnih kolektorjih (zanimivo da je šel rakom žvižgat pozimi).

Lp Vlado

Stran 1 od 2

Powered by phpBB © 2001,2002 phpBB Group