Sadržaj:
Video: Uradi sam senzor temperature pomoću jedne diode: 3 koraka
2024 Autor: John Day | [email protected]. Zadnja izmjena: 2024-01-30 08:04
Dakle, kao jedna od činjenica o PN-spojevima je to što se njihov pad napona prema naprijed mijenja ovisno o prolaznoj struji i temperaturi spoja, upotrijebit ćemo ovo za izradu jednostavnog jeftinog temperaturnog senzora.
Ova postavka se obično koristi u mnogim integriranim krugovima za mjerenje unutarnje temperature i mnogih temperaturnih senzora kao poznati LM35 koji se temelji na ovom svojstvu.
Jednostavno, pad napona naprijed diode (koji je jedan PN-spoj) mijenja se s promjenom količine struje koja prolazi kroz nju, kao i s promjenom temperature diode, pad napona će se promijeniti (Kako se temperatura povećava, pad se smanjuje za vrijednost (1,0 milivolta na 2,0 milivolta za silicijeve diode i 2,5 milivolta za germanijeve diode).
Dakle, prolaskom konstantne struje kroz diodu, pad napona prema naprijed sada bi trebao varirati samo ovisno o temperaturi diode. Sada samo trebamo izmjeriti napon diode naprijed, primijeniti neke jednostavne jednadžbe i eto vam senzor temperature !!!
Supplies
1 - 1n4007 dioda #12 - 1 Kohm otpornik #13 - Arduino ploča
Korak 1: Dijagram kola
Kao što možete vidjeti na shemi, vrlo je jednostavno. serijskim spajanjem diode s otpornikom za ograničavanje struje i stabilnim izvorom napona možemo dobiti sirovi izvor konstantne struje, pa će izmjereni napon na diodi varirati samo zbog promjene temperature. Uvjerite se da vrijednost otpornika nije prenisko da kroz diodu prolazi velika struja i čini zamjetno samozagrijavanje diode, također nije jako visok otpor pa prolaz struje nije dovoljan za održavanje linearnog odnosa između napona prema naprijed i temperature.
Otpornik od 1 kilo ohma s napajanjem od 5 V trebao bi rezultirati strujom diode od 4 miliampera koja je dovoljna vrijednost za tu svrhu. I (dioda) = VCC / (Rserija + Rdioda)
Korak 2: Kodiranje
Moramo imati na umu da postoje neke vrijednosti koje treba prilagoditi u kodu kako bi se dobili bolji rezultati, poput:
1 - VCC_Voltage: budući da vrijednost analogRead () ovisi o VCC -u ATmega čipa, tada ga moramo dodati jednadžbi nakon što smo ga izmjerili na arduino ploči.
2 - V_OLD_0_C: prednji pad napona korištene diode pri struji od 4 mA i temperaturi od 0 Celzijusa
3 - Temperatura_koeficijent: temperaturni gradijent vaše diode (bolje je preuzeti iz lista s podacima) ili ga možete izmjeriti pomoću ove jednadžbe: Vnew - Vold = K (Tnew - Told)
gdje:
Vnew = novo izmjereni pad napona nakon zagrijavanja diode
Vold = izmjereni pad napona na nekoj sobnoj temperaturi
Tnew = temperatura na kojoj je dioda zagrijana
Rečeno = stara sobna temperatura na kojoj je izmjeren Vold
K = Temperaturni_koeficijent (negativna vrijednost varira između -1,0 do -2,5 miliVolti) Konačno sada možete učitati kôd i dobiti rezultate temperature.
#define Sens_Pin A0 // PA0 za ploču STM32F103C8
dvostruko V_OLD_0_C = 690,0; // 690 mV Napredni napon pri 0 Celzijusa pri 4 mA ispitne struje
dvostruki V_NEW = 0; // Novi napon naprijed na sobnoj temperaturi pri 4 mA ispitna struja dvostruka Temperatura = 0,0; // Sobna izračunata temperatura dvostruka Temperature_Coefficient = -1,6; //-1,6 mV promjena po stepenu Celzijusa (-2,5 za germanijeve diode), bolje uzeti iz lista sa podacima o diodama dvostruki VCC_Voltage = 5010,0; // Napon prisutan na 5V šini arduina u miliVoltima (potrebno za bolju točnost) (3300.0 za stm32)
void setup () {
// ovdje postavite svoj kôd za postavljanje, da biste ga jednom pokrenuli: pinMode (Sens_Pin, INPUT); Serial.begin (9600); }
void loop () {{100} {101}
// ovdje unesite svoj glavni kôd, za ponavljanje: V_NEW = analogRead (Sens_Pin)*VCC_Voltage/1024.0; // podijelite sa 4,0 ako koristite 12 -bitnu temperaturu ADC -a = ((V_NEW - V_OLD_0_C)/Temperature_Coefficient);
Serial.print ("Temp =");
Serial.print (Temperatura); Serial.println ("C");
kašnjenje (500);
}
Korak 3: Dobijanje boljih vrijednosti
Mislim da je poželjno imati uz sebe pouzdani uređaj za mjerenje temperature prilikom izvođenja ovog projekta.
možete vidjeti da postoji primjetna greška u očitanjima koja mogu doseći 3 ili 4 stepena Celzijusa, pa odakle dolazi ta greška?
1 - možda ćete morati prilagoditi varijable navedene u prethodnom koraku
2 - ADC rezolucija arduina niža je od one koja nam je potrebna za otkrivanje male razlike napona
3 - referentni napon arduina (5V) je previsok za ovu malu promjenu napona na diodi
Dakle, ako ćete koristiti ovu postavku kao temperaturni senzor, trebali biste biti svjesni da, iako je jeftino i zgodno, nije točno, ali vam može dati vrlo dobru ideju o temperaturi vašeg sistema, bilo da je na PCB ili montiran na motor koji radi itd …
Ova instrukcija namijenjena je korištenju što je moguće manje komponenti, ali ako želite dobiti što preciznije rezultate iz ove ideje, možete napraviti neke promjene:
1 - dodajte neka pojačanja i stupnjeve filtriranja pomoću op -pojačala kao na ovoj poveznici 2 - koristite niži interni analogni referentni kontroler kao ploče STM32F103C8 s analognim referentnim naponom od 3,3 V (vidi točku 4) 3 - upotrijebite internu 1,1 V analognu referencu u arduino, ali imajte na umu da ne možete spojiti više od 1,1 V na bilo koji od arduino analognih pinova.
ovaj redak možete dodati u funkciju postavljanja:
analogReference (INTERNAL);
4 - Upotrijebite mikrokontroler koji ima ADC veće rezolucije kao STM32F103C8 koji ima 12 -bitnu ADC rezoluciju. Ukratko, ova postavka zasnovana na arduinu može dati lijep pregled temperature vašeg sistema, ali ne tako točne rezultate (približno 4,88 mV/očitanje)
postavka STM32F103C8 dala bi vam prilično precizan rezultat jer ima viši 12-bitni ADC i nižu analognu referentnu vrijednost od 3,3 V (približno 0,8 mV/čitanje)
Pa to je to !!: D
Preporučuje se:
Uradi sam Prikaz temperature na LCD ekranu pomoću Arduina: 10 koraka
Napravite sami prikaz temperature na LCD ekranu pomoću Arduina: U ovom projektu ćemo napraviti krug koristeći neke komponente kao što su Arduino, temperaturni senzor itd. U ovom krugu stupanj će se kontinuirano gledati na LCD -u, ima kašnjenje od 100 milisekundi između pogleda na novi stepen na
„Uradi sam“senzor vrata za sigurnost pomoću ESP8266: 3 koraka
„Uradi sam“senzor vrata za sigurnost pomoću ESP8266: Osigurajte svoj dom pomoću pametnog senzora vrata potpuno dizajniranog koristeći tehnologije otvorenog koda. U ovom videu napravit ćemo uređaj koji će otkriti jesu li vrata otvorena ili zatvorena i osjetiti informacije na vašem pametnom telefonu pomoću BLYNK server, w
Nadogradite "uradi sam" lonac za zalijevanje sa WiFi -em u alarmni uređaj za otkrivanje kretnji za otkrivanje pokreta "Uradi sam": 17 koraka
Nadogradite "uradi sam" lonac za zalijevanje sa WiFi -jem u aparat za alarme za otkrivanje kretnji za otkrivanje pokreta "Uradi sam": U ovom članku pokazat ćemo vam kako nadograditi svoj lonac za samolijevanje s vlastitim WiFi -jem u DIY lonac za samolijevanje s WiFi -jem i alarmom za detekciju kretanja. niste pročitali članak o tome kako izgraditi lonac za samostalno zalijevanje s WiFi -jem, možete fin
Sigurnosni senzor "Uradi sam" pomoću Arduina: 5 koraka
Sigurnosni senzor „uradi sam“pomoću Arduina: Naučite kako na jednostavan način zaštititi svoju kuću od pljački
Uradi sam senzor temperature pomoću Arduina i LM 35 Jednostavno: 5 koraka
Uradi sam senzor temperature pomoću Arduina i LM 35 Jednostavno: Zdravo prijatelji, Danas ćemo izgraditi krug senzora za mjerenje temperature oko Arduino UNO mikrokontrolera pomoću senzora LM35. Dakle, bez gubljenja vremena, počnimo