Sadržaj:
- Korak 1: Teorija
- Korak 2: Prikupite materijale
- Korak 3: Lemite svoje kondenzatore
- Korak 4: Izolirajte senzore
- Korak 5: Postavite otpornik i spojite senzor
- Korak 6: Napišite softver
- Korak 7: Izvršite kalibraciju
- Korak 8: Softverski krug 2
- Korak 9: Sažetak projekta - prednosti i nedostaci
Video: Koristite kondenzatore za mjerenje temperature: 9 koraka
2024 Autor: John Day | [email protected]. Zadnja promjena: 2024-01-30 09:36
Ovaj je projekt nastao jer sam kupio komplet kondenzatora s uglavnom X7R (dobre kvalitete) kondenzatore, ali neke od većih vrijednosti 100nF i više bile su jeftiniji i manje stabilan Y5V dielektrik, koji pokazuju veliku promjenu temperature i radnog napona. Obično ne bih koristio Y5V u proizvodu koji dizajniram, pa sam pokušao pronaći alternativnu primjenu umjesto da ih pustim da zauvijek sjede na polici.
Htio sam vidjeti može li se promjena temperature iskoristiti za izradu korisnog i vrlo jeftinog senzora, a kao što ćete vidjeti na sljedećih nekoliko stranica to je bilo prilično jednostavno, sa samo još jednom potrebnom komponentom.
Korak 1: Teorija
Prvo pomaže da se sazna malo o tome kako su konstruirani kondenzatori, te o dostupnim vrstama. Keramički kondenzatori sastoje se od nekoliko metalnih limova ili „ploča“odvojenih izolatorom, poznatim kao dielektrik. Karakteristike ovog materijala (debljina, vrsta keramike, broj slojeva) daju kondenzatoru njegova svojstva kao što su radni napon, kapacitet, temperaturni koeficijent (promjena kapaciteta s temperaturom) i raspon radne temperature. Dostupno je dosta dielektrika, ali najpopularniji su prikazani na grafikonu.
NP0 (koji se naziva i C0G) - oni su najbolji, praktički bez promjene temperature, ali su dostupni samo za niske vrijednosti kapaciteta u rasponu picoFarad i niski nanoFarad.
X7R - oni su razumni, s malim postotkom promjene u radnom rasponu.
Y5V - kao što vidite ovo su najstrmije krivulje na grafikonu, s vrhom oko 10C. To donekle ograničava korisnost učinka, jer ako senzor ima mogućnost da ikada padne ispod 10 stupnjeva, bit će nemoguće odrediti s koje je strane vrha.
Ostali dielektrici prikazani na grafikonu su međukoraci između tri gore opisana najpopularnija.
Pa kako to možemo izmjeriti? Mikrokontroler ima logičku razinu na kojoj se njegovi ulazi smatraju visokim. Ako kondenzator punimo preko otpornika (za kontrolu vremena punjenja), vrijeme za postizanje visoke razine bit će proporcionalno vrijednosti kapacitivnosti.
Korak 2: Prikupite materijale
Trebat će vam:
- Y5V kondenzatori, koristio sam veličinu 100nF 0805.
- Mali komadići ploče za izradu prototipa za postavljanje kondenzatora.
- Hladnjak za izolaciju senzora. Alternativno, možete ih umočiti u epoksid ili upotrijebiti izolacijsku traku.
- Mrežni kabel koji se može skinuti kako bi se dobila 4 upletena para. Upotreba upletenih parova nije obavezna, ali uvijanje pomaže smanjiti električnu buku.
- Mikrokontroler - Koristio sam Arduino, ali bilo koji će uspjeti
- Otpornici - Koristio sam 68 k, ali to ovisi o veličini vašeg kondenzatora i o tome koliko želite da mjerenje bude točno.
Alati:
- Lemilica.
- Ploča za izradu prototipa za montažu mikrokontrolera/Arduino.
- Toplinski pištolj za hladnjak. Upaljač za cigarete može se koristiti i s nešto lošijim rezultatima.
- Infracrveni termometar ili termoelement za kalibraciju senzora.
- Pinceta.
Korak 3: Lemite svoje kondenzatore
Ovdje nije potrebno nikakvo objašnjenje - samo ih postavite na svoje ploče pomoću željene metode lemljenja i pričvrstite dvije žice.
Korak 4: Izolirajte senzore
Postavite cijev hladnjaka odgovarajuće veličine na senzore pazeći da joj krajevi nisu izloženi i skupite je vrućim zrakom.
Korak 5: Postavite otpornik i spojite senzor
Odabrao sam sljedeći pinout.
PIN3: Izlaz
PIN2: Ulaz
Korak 6: Napišite softver
Osnovna tehnika mjerenja prikazana je gore. Da biste objasnili kako to funkcionira, pomoću naredbe millis () vraća se broj milisekundi od uključivanja Arduina. Ako očitate na početku i na kraju mjerenja i oduzmete početnu vrijednost od kraja, dobivate vrijeme u milisekundama za punjenje kondenzatora.
Nakon mjerenja, vrlo je važno da postavite niski izlazni pin za pražnjenje kondenzatora i pričekate odgovarajuće vrijeme prije nego što ponovite mjerenje tako da se kondenzator potpuno isprazni. U mom slučaju sekunda je bila dovoljna.
Zatim sam izbacio rezultate iz serijskog porta kako bih ih mogao promatrati. U početku sam otkrio da milisekunde nisu dovoljno točne (dajući samo jednu vrijednost), pa sam je promijenio tako da pomoću naredbe micros () dobijem rezultat u mikrosekundama, što je, kako ste očekivali, oko 1000x prethodne vrijednosti. Vrijednost okoline na oko 5000 značajno je varirala, pa sam radi lakšeg čitanja podijelio s 10.
Korak 7: Izvršite kalibraciju
Uzeo sam očitanja na 27,5 ° C (sobna temperatura - ovdje je vruće za Veliku Britaniju!), A zatim snop senzora stavio u hladnjak i ostavio da se ohladi na približno 10 ° C, provjeravajući infracrvenim termometrom. Uzeo sam drugi set očitanja, zatim ih stavio u pećnicu na postavku odmrzavanja, neprestano ih kontrolirajući termometrom dok nisu bili spremni za snimanje na 50 ° C.
Kao što možete vidjeti iz gornjih grafikona, rezultati su bili prilično linearni i dosljedni na sva 4 senzora.
Korak 8: Softverski krug 2
Sada sam izmijenio svoj softver pomoću funkcije karte Arduino, kako bih gornje i donje prosječno očitanje preslikao s grafikona na 10C odnosno 50C.
Sve radi prema planu, obavio sam nekoliko provjera u temperaturnom rasponu.
Korak 9: Sažetak projekta - prednosti i nedostaci
Dakle, tu je, senzor temperature za manje od 0,01 GBP u komponentama.
Pa, zašto to ne biste htjeli učiniti u svom projektu?
- Kapacitet se mijenja s naponom napajanja, stoga morate koristiti regulirano napajanje (ne može se izravno napajati iz baterije), a ako odlučite promijeniti napajanje, morate ponovno kalibrirati senzore.
- Kapacitet nije jedino što se mijenja s temperaturom - uzmite u obzir da se vaš visoki ulazni prag na vašem mikrokontroleru može promijeniti s temperaturom i obično nije definiran u podatkovnoj tablici s bilo kojom preciznošću.
- Iako su svi moji 4 kondenzatora bili prilično dosljedni, bili su iz iste serije i istog sastavnog koluta, a ja iskreno nemam pojma koliko bi varijacija između serija bila loša.
- Ako želite mjeriti samo niske temperature (ispod 10C) ili visoke temperature (iznad 10C), samo je ovo u redu, ali relativno beskorisno ako trebate mjeriti oboje.
- Mjerenje je sporo! Prije ponovnog mjerenja morate potpuno isprazniti kondenzator.
Nadam se da vam je ovaj projekt dao neke ideje i možda vas inspirirao da koristite druge komponente za druge namjene.
Preporučeni:
Mjerenje temperature: 7 koraka
Mjerenje temperature: هو قياس درجه الحراره باستخدام الكاميرا االحراريه
Arduino sustav za mjerenje temperature i vlažnosti - Tehnički Joe: 3 koraka
Arduino sustav za mjerenje temperature i vlažnosti | Tehnički Joe: Nakon što sam sa Arduinom napravio dvije beskorisne igre i izgubio vrijeme igrajući ih, želio sam stvoriti nešto korisno s Arduinom. Došao sam na ideju o sustavu za mjerenje temperature i vlažnosti zraka za biljke. Da bi projekt bio malo mo
Mjerenje temperature pomoću XinaBox -a i termistora: 8 koraka
Mjerenje temperature pomoću XinaBox -a i termistora: Izmjerite temperaturu tekućine pomoću analognog ulaza xChip iz XinaBox -a i termistorske sonde
Mjerenje temperature pomoću AD7416ARZ i Raspberry Pi: 4 koraka
Mjerenje temperature pomoću AD7416ARZ i Raspberry Pi: AD7416ARZ je 10-bitni temperaturni senzor s četiri jednokanalna analogno-digitalna pretvarača i ugrađenim osjetnikom temperature. Senzoru temperature na dijelovima može se pristupiti putem kanala multipleksera. Ova temperatura visoke preciznosti
Mjerenje temperature pomoću STS21 i Arduino Nano: 4 koraka
Mjerenje temperature pomoću STS21 i Arduino Nano: digitalni temperaturni senzor STS21 nudi vrhunske performanse i otisak koji štedi prostor. Pruža kalibrirane, linearizirane signale u digitalnom, I2C formatu. Izrada ovog senzora temelji se na CMOSens tehnologiji, što pripisuje vrhunskom