- Požadované komponenty:
- Schéma zapojenia
- Termistor
- Výpočet teploty pomocou termistora:
- Kód termistora Arduino
- Meranie teploty pomocou termistora a Arduina:
Používanie termistora je jednoduchý a lacný spôsob snímania teploty. A na meranie presnej teploty pomocou termistora bude potrebný mikrokontrolér. Takže tu používame Arduino s termistorom na čítanie teploty a LCD na zobrazenie teploty. Je užitočný v rôznych projektoch, ako je vzdialená meteorologická stanica, domáca automatizácia a ochrana a riadenie priemyselných a elektronických zariadení.
V tomto výučbe sa chystáme prepojiť Thermistor s Arduinom a zobraziť teplotu na LCD. Pomocou termistoru môžete vytvárať rôzne projekty založené na elektronických obvodoch, niektoré z nich sú uvedené nižšie:
- Tepelne riadený jednosmerný ventilátor pomocou termistora
- Požiarna signalizácia pomocou termistora
Požadované komponenty:
- NTC termistor 10k
- Arduino (ľubovoľná verzia)
- Rezistor 10 k ohmov
- Pripojenie drôtov
Schéma zapojenia
Termistor poskytuje hodnotu teploty podľa zmeny elektrického odporu v ňom. V tomto obvode je analógový pin v Arduine prepojený s termistorom a môže poskytovať iba hodnoty ADC, takže elektrický odpor termistora sa nevypočítava priamo. Takže obvod je vyrobený ako obvod deliča napätia, ako je znázornené na obrázku vyššie, pripojením známeho odporu 10 kOhm do série s NTC. Pomocou tohto deliča napätia môžeme dostať napätie cez termistor a pomocou tohto napätia môžeme odvodiť odpor termistora v danom okamihu. A nakoniec môžeme získať hodnotu teploty vložením odporu termistora do Stein-Hartovej rovnice, ako je vysvetlené v nasledujúcich častiach.
Termistor
Kľúčovým komponentom v tomto obvode je termistor, ktorý sa používa na detekciu nárastu teploty. Termistor je teplotne citlivý odpor, ktorého odpor sa mení podľa teploty. Existujú dva typy termistorov NTC (negatívna teplotná účinnosť) a PTC (pozitívna teplotná účinnosť), používame termistor typu NTC. NTC termistor je odpor, ktorého odpor klesá so zvyšovaním teploty, zatiaľ čo v PTC zvyšuje odpor so zvyšovaním teploty.
Výpočet teploty pomocou termistora:
Z obvodu deliča napätia vieme, že:
V out = (V in * Rt) / (R + Rt)
Hodnota Rt bude teda:
Rt = R (Vin / Vout) - 1
Tu bude Rt odpor termistora a R bude odpor 10 kOhm. Hodnoty môžete tiež vypočítať z tejto kalkulačky rozdeľovača napätia.
Táto rovnica sa používa na výpočet odporu termistora z nameranej hodnoty výstupného napätia Vo. Hodnotu Voltage Vout môžeme získať z hodnoty ADC na pin A0 Arduina, ako je uvedené v Arduino kóde uvedenom nižšie.
Výpočet teploty z odporu termistora:
Matematicky možno odpor termistora vypočítať iba pomocou Stein-Hartovej rovnice.
T = 1 / (A + Bln (Rt) + Cln (Rt) 3)
Kde A, B a C sú konštanty, Rt je odpor termistora a ln predstavuje log.
Konštantná hodnota pre termistor použitý v projekte je A = 1,009249522 × 10 −3, B = 2,378405444 × 10 −4, C = 2,019202697 × 10 −7. Tieto konštantné hodnoty je možné tu získať z kalkulačky zadaním troch hodnôt odporu termistora pri troch rôznych teplotách. Tieto konštantné hodnoty môžete získať priamo z údajového listu termistora, alebo môžete získať tri hodnoty odporu pri rôznej teplote a hodnoty Konstanty získať pomocou danej kalkulačky.
Na výpočet teploty teda potrebujeme iba hodnotu odporu termistora. Po získaní hodnoty Rt z výpočtu uvedeného vyššie dajte hodnoty do Stein-Hartovej rovnice a dostaneme hodnotu teploty v jednotke kelvin. Pretože je tu malá zmena výstupného napätia, spôsobte zmenu teploty.
Kód termistora Arduino
Kompletný Arduino kód pre prepojenie termistora s Arduino je uvedený na konci tohto článku. Tu sme vysvetlili niekoľko jeho častí.
Na vykonanie matematickej operácie použijeme hlavičkový súbor „#include
LiquidCrystal lcd (44,46,40,52,50,48);
Pre nastavenie LCD v čase spustenia musíme napísať kód do časti neplatnosti nastavenia
Void setup () {lcd.begin (16,2); lcd.clear (); }
Pre výpočet teploty pomocou Stein-Hartovej rovnice pomocou elektrického odporu termistora vykonáme jednoduchú matematickú rovnicu v kóde, ako je vysvetlené pri výpočte vyššie:
float a = 1,009249522e-03, b = 2,378405444e-04, c = 2,019202697e-07; float T, logRt, Tf, Tc; plavákový termistor (int Vo) {logRt = log (10 000,0 * ((1024,0 / Vo-1)))); T = (1,0 / (A + B * logRt + C * logRt * logRt * logRt)); // Hodnotu teploty v Kelvinoch získame z tejto Stein-Hartovej rovnice Tc = T - 273,15; // Prevod Kelvinov na Celzia Tf = (Tc * 1,8) + 32,0; // Prevod Kelvinov na Fahrenheitov návrat T; }
V nasledujúcom kóde funkčný termistor sníma hodnotu z analógového kolíka Arduina, lcd.print ((termistor (analogRead (0))));
a táto hodnota sa vezme do nižšie uvedeného kódu a potom sa začne tlačiť výpočet
plavákový termistor (int Vo)
Meranie teploty pomocou termistora a Arduina:
Ako napájací zdroj pre Arduino ho môžete napájať cez USB na svoj laptop alebo pripojením 12V adaptéra. Displej LCD je prepojený s rozhraním Arduino na zobrazovanie hodnôt teploty a termistor je pripojený podľa schémy zapojenia. Analógový pin (A0) slúži na kontrolu napätia kolíka termistora v každom okamihu a po výpočte pomocou Stein-Hartovej rovnice prostredníctvom kódu Arduino dokážeme získať teplotu a zobraziť ju na LCD v stupňoch Celzia a Fahrenheita.