- Potrebne komponente:
- Shema vezja
- Termistor
- Izračun temperature s pomočjo termistorja:
- Koda termistorja Arduino
- Merjenje temperature s termistorjem in Arduinom:
Uporaba termistorja je preprost in poceni način za zaznavanje temperature. Za natančno merjenje temperature s termistorjem bo potreben mikrokrmilnik. Tukaj torej uporabljamo Arduino s termistorjem za odčitavanje temperature in LCD za prikaz temperature. Uporaben je pri različnih projektih, kot so oddaljena vremenska postaja, avtomatizacija doma ter zaščita in nadzor industrijske in elektronske opreme.
V tej vadnici bomo povezali termistor z Arduino in prikazali temperaturo na LCD-ju. Z uporabo termistorja lahko izdelate različne projekte na osnovi elektronskih vezij, nekateri izmed njih so navedeni spodaj:
- Ventilator z enosmernim tokom s temperaturnim nadzorom
- Požarni alarm z uporabo termistorja
Potrebne komponente:
- NTC termistor 10k
- Arduino (katera koli različica)
- 10k ohmski upor
- Povezovanje žic
Shema vezja
Termistor zagotavlja vrednost temperature glede na spremembo električnega upora v njem. V tem vezju je analogni zatič v Arduinu povezan s termistorjem in lahko zagotavlja samo vrednosti ADC, zato se električni upor termistorja ne izračuna neposredno. Torej je vezje narejeno tako, da je podobno vezju delilnika napetosti, kot je prikazano na zgornji sliki, tako da v NTC zaporedno povežemo znani upor 10k ohmov. S pomočjo tega delilnika napetosti lahko dobimo napetost na termistorju in s to napetostjo lahko ugotovimo upor termistorja v tistem trenutku. In končno lahko dobimo temperaturno vrednost tako, da upor termistorja damo v Stein-Hartovo enačbo, kot je razloženo v spodnjih oddelkih.
Termistor
Ključna komponenta tega vezja je termistor, ki je bil uporabljen za zaznavanje povišanja temperature. Termistor je temperaturno občutljiv upor, katerega upor se spreminja glede na temperaturo. Obstajata dve vrsti termistorja NTC (negativni temperaturni koeficient) in PTC (pozitivno temperaturni koeficient), uporabljamo termistor tipa NTC. NTC termistor je upor, katerega upor se z naraščanjem temperature zmanjšuje, medtem ko v PTC povečuje upor, ko narašča temperatura.
Izračun temperature s pomočjo termistorja:
Iz vezja delilnika napetosti vemo, da:
V izhod = (V v * Rt) / (R + Rt)
Vrednost Rt bo torej:
Rt = R (Vin / Vout) - 1
Tu bo Rt upor termistorja, R pa 10k ohmski upor. Vrednosti lahko izračunate tudi iz tega kalkulatorja delilnika napetosti.
Ta enačba se uporablja za izračun upornosti termistorja iz izmerjene vrednosti izhodne napetosti Vo. Vrednost Voltage Vout lahko dobimo iz vrednosti ADC na zatiču A0 Arduina, kot je prikazano v spodnji Arduino kodi.
Izračun temperature iz upora termistorja:
Matematično je mogoče upor termistorja izračunati le s pomočjo Stein-Hartove enačbe.
T = 1 / (A + Bln (Rt) + Cln (Rt) 3)
Kjer so A, B in C konstante, Rt je upor termistorja in ln predstavlja log.
Konstantna vrednost termistorja, uporabljenega v projektu, je A = 1.009249522 × 10 −3, B = 2.378405444 × 10 −4, C = 2.019202697 × 10 −7. Te konstantne vrednosti lahko dobimo iz kalkulatorja tukaj, tako da vnesemo tri vrednosti upora termistorja pri treh različnih temperaturah. Te konstantne vrednosti lahko dobite neposredno iz podatkovnega lista termistorja ali pa dobite tri vrednosti upora pri različnih temperaturah in dobite vrednosti konstant s pomočjo danega kalkulatorja.
Torej, za izračun temperature potrebujemo samo vrednost upornosti termistorja. Ko dobimo vrednost Rt iz zgornjega izračuna, vstavimo vrednosti v Stein-Hartovo enačbo in dobili bomo vrednost temperature v enoti kelvin. Ker pride do manjših sprememb v izhodni napetosti, se povzroči sprememba temperature.
Koda termistorja Arduino
Popolna koda Arduino za povezovanje termistorja z Arduino je podana na koncu tega članka. Tu smo razložili nekaj njegovih delov.
Za izvajanje matematične operacije uporabljamo datoteko z glavo »#include
LCD LiquidCrystal (44,46,40,52,50,48);
Za nastavitev LCD-ja ob zagonu moramo v del za praznino vnesti kodo
Nastavitev praznine () {lcd.begin (16,2); lcd.clear (); }
Za izračun temperature po Stein-Hartovi enačbi z uporabo električnega upora termistorja izvedemo nekaj preprostih matematičnih enačb v kodi, kot je pojasnjeno v zgornjem izračunu:
float a = 1.009249522e-03, b = 2.378405444e-04, c = 2.019202697e-07; float T, logRt, Tf, Tc; plavajoči termistor (int Vo) {logRt = log (10000,0 * ((1024,0 / Vo-1))); T = (1,0 / (A + B * logRt + C * logRt * logRt * logRt)); // // Vrednost temperature v Kelvinu dobimo iz te Stein-Hartove enačbe Tc = T - 273,15; // Pretvorba Kelvina v Celzija Tf = (Tc * 1,8) + 32,0; // Pretvorba Kelvina v Fahrenheitov povratni T; }
V spodnji kodi funkcijski termistor bere vrednost z analognega zatiča Arduino, lcd.print ((termistor (analogRead (0))));
in ta vrednost se vzame v spodnji kodi, nato pa se izračun začne tiskati
plavajoči termistor (int Vo)
Merjenje temperature s termistorjem in Arduinom:
Za oskrbo z Arduinom ga lahko prek USB-ja napajate v prenosni računalnik ali priključite 12v adapter. LCD je povezan z Arduino za prikaz temperaturnih vrednosti, termistor pa je povezan v skladu s shemo vezja. Analogni zatič (A0) se uporablja za preverjanje napetosti termistorskega zatiča v vsakem trenutku in po izračunu z uporabo Stein-Hartove enačbe skozi kodo Arduino lahko dobimo temperaturo in jo prikažemo na LCD-ju v Celziju in Fahrenheitu.