- Būtini komponentai:
- Grandinės schema
- Termistorius
- Temperatūros apskaičiavimas naudojant termistorių:
- „Arduino“ termistoriaus kodas
- Temperatūros matavimas naudojant termistorių ir „Arduino“:
Termistoriaus naudojimas yra lengvas ir pigus būdas pajusti temperatūrą. Norint tiksliai išmatuoti temperatūrą termistoriumi, reikės mikrovaldiklio. Taigi čia mes naudojame „ Arduino“ su „Thermistor“ temperatūros nuskaitymui ir LCD ekraną temperatūros rodymui. Tai naudinga įvairiuose projektuose, tokiuose kaip nuotolinė meteorologinė stotis, namų automatizavimas, pramoninės ir elektroninės įrangos apsauga ir valdymas.
Šioje pamokoje mes sąsajos termistorius su „Arduino“ ir rodysime temperatūrą LCD ekrane. Naudodami termistorių galite kurti įvairius elektroninės grandinės projektus, kai kurie iš jų yra išvardyti žemiau:
- Temperatūros valdomas nuolatinės srovės ventiliatorius naudojant termistorių
- Priešgaisrinė signalizacija naudojant termistorių
Būtini komponentai:
- NTC termistorius 10k
- „Arduino“ (bet kokia versija)
- 10k omų rezistorius
- Laidų sujungimas
Grandinės schema
Termistorius pateikia temperatūros vertę, atsižvelgiant į jame esančios elektrinės varžos pokytį. Šioje grandinėje „Arduino“ analoginis kaištis yra sujungtas su termistoriumi ir gali pateikti tik ADC vertes, todėl termistoriaus elektrinė varža nėra tiesiogiai apskaičiuojama. Taigi grandinė yra panaši į įtampos skirstytuvo grandinę, kaip parodyta aukščiau esančiame paveikslėlyje, nuosekliai sujungiant žinomą 10 k omų varžą su NTC. Naudodami šį įtampos daliklį, galime gauti įtampą per termistorių ir su ta įtampa galime išgauti termistoriaus varžą tuo momentu. Galiausiai galime gauti temperatūros vertę, įtraukdami termistoriaus varžą į Stein-Hart lygtį, kaip paaiškinta tolesniuose skyriuose.
Termistorius
Pagrindinis šios grandinės komponentas yra termistorius, kuris buvo naudojamas temperatūros kilimui nustatyti. Termistorius yra temperatūrai jautrus rezistorius, kurio varža kinta priklausomai nuo temperatūros. Yra dviejų tipų termistoriai NTC (neigiamos temperatūros efektyvumas) ir PTC (teigiamos temperatūros efektyvumas), mes naudojame NTC tipo termistorius. NTC termistorius yra rezistorius, kurio pasipriešinimas mažėja kylant temperatūrai, o PTC - atsparumą didėjant temperatūrai.
Temperatūros apskaičiavimas naudojant termistorių:
Iš įtampos skirstytuvo grandinės žinome, kad:
V išėjimas = (V į * Rt) / (R + Rt)
Taigi Rt vertė bus:
Rt = R (Vin / Vout) - 1
Čia Rt bus termistoriaus varža, o R - 10 k omų rezistorius. Taip pat galite apskaičiuoti vertes iš šio įtampos daliklio skaičiuoklės.
Ši lygtis naudojama termistoriaus varžai apskaičiuoti pagal išmatuotą išėjimo įtampos vertę Vo. „Voltage Vout“ vertę galime gauti iš „ADC“ vertės, esančios „Arduino“ kaiščio A0, kaip parodyta toliau pateiktame „Arduino“ kode.
Temperatūros apskaičiavimas pagal termistoriaus varžą:
Matematiškai termistoriaus varžą galima apskaičiuoti tik naudojant Steino-Harto lygtį.
T = 1 / (A + Bln (Rt) + Cln (Rt) 3)
Kur A, B ir C yra konstantos, Rt yra termistoriaus varža ir ln reiškia log.
Projekte naudojamo termistoriaus pastovi vertė yra A = 1,009249522 × 10 −3, B = 2,378405444 × 10 −4, C = 2,019202697 × 10 −7. Šias pastovias vertes galima gauti iš čia esančios skaičiuoklės, įvedant tris termistoriaus varžos vertes trijose skirtingose temperatūrose. Šias pastovias vertes galite gauti tiesiogiai iš termistoriaus duomenų lapo arba galite gauti tris pasipriešinimo reikšmes skirtingoje temperatūroje ir gauti „Constants“ vertes naudodami pateiktą skaičiuoklę.
Taigi, norint apskaičiuoti temperatūrą, mums reikia tik termistoriaus varžos vertės. Gavę Rt vertę iš aukščiau pateikto skaičiavimo, reikšmes įtraukite į Steino-Harto lygtį, o temperatūros reikšmę gausime kelvino vienetu. Nedidelis išėjimo įtampos pokytis sukelia temperatūros pokyčius.
„Arduino“ termistoriaus kodas
Pilnas „Arduino“ termistoriaus sąsajos kodas su „Arduino“ pateikiamas šio straipsnio pabaigoje. Čia mes paaiškinome keletą jo dalių.
Matematinėms operacijoms atlikti naudojame antraštės failą „#include
„LiquidCrystal“ lcd (44,46,40,52,50,48);
Norėdami nustatyti LCD ekraną paleidimo metu, turime įrašyti kodą tuščios sąrankos dalyje
Panaikinti sąranką () {lcd.begin (16,2); lcd.clear (); }
Norėdami apskaičiuoti temperatūrą pagal Stein-Hart lygtį, naudodami termistoriaus elektrinę varžą, mes atliekame keletą paprastų matematinių lygčių kodais, kaip paaiškinta aukščiau pateiktame skaičiavime:
plūdė a = 1,009249522e-03, b = 2,378405444e-04, c = 2,019202697e-07; plūdė T, logRt, Tf, Tc; plūduriuojantis termistorius (int Vo) {logRt = log (10000.0 * ((1024.0 / Vo-1))); T = (1,0 / (A + B * logRt + C * logRt * logRt * logRt)); // Temperatūros reikšmę Kelvine gauname iš šios Stein-Hart lygties Tc = T - 273,15; // Konvertuokite Kelviną į Celsijaus laipsnius Tf = (Tc * 1,8) + 32,0; // Konvertuokite Kelviną į Farenheito grąžą T; }
Žemiau pateiktame kode funkcinis termistorius nuskaito vertę iš „Arduino“ analoginio kaiščio, lcd.print ((termistorius (analogRead (0))));
ir ši vertė paimama žemiau esančiame kode, tada skaičiavimas pradedamas spausdinti
plūduriuojantis termistorius (int Vo)
Temperatūros matavimas naudojant termistorių ir „Arduino“:
Norėdami tiekti „Arduino“, galite jį maitinti per USB prie nešiojamojo kompiuterio arba prijungdami 12v adapterį. Skystųjų kristalų ekranas yra susietas su „Arduino“, kad būtų rodomos temperatūros vertės, o termistorius prijungtas pagal grandinės schemą. Analoginis kaištis (A0) naudojamas tikrinti termistoriaus kaiščio įtampą kiekvieną akimirką, o atlikę skaičiavimą naudodami Steino-Harto lygtį per „Arduino“ kodą, galime gauti temperatūrą ir ją rodyti LCD ekrane Celsijaus ir Farenheito laipsniais.