Turinys:

Mažos galios „Arduino“temperatūros monitorius: 4 žingsniai
Mažos galios „Arduino“temperatūros monitorius: 4 žingsniai

Video: Mažos galios „Arduino“temperatūros monitorius: 4 žingsniai

Video: Mažos galios „Arduino“temperatūros monitorius: 4 žingsniai
Video: Как использовать 4-канальное реле для управления нагрузкой переменного тока с помощью кода Arduino 2024, Liepa
Anonim
Image
Image
Gaukite dalis
Gaukite dalis

Šioje instrukcijoje mes sukuriame dar vieną temperatūros monitorių, naudojant DS18B20 temperatūros jutiklį. Tačiau šis projektas yra kitoks. Jis gali tarnauti su baterijomis beveik 1,5 metų! Taip! Naudodami „Arduino“mažos galios biblioteką, galime šį projektą vykdyti ilgą laiką. Skaitykite toliau, kad sužinotumėte daugiau!

1 žingsnis: gaukite dalis

Šiam projektui sukurti reikalingos šios dalys:

ATMEGA328P ▶

„Nokia 5110“LCD ▶

DS18B20 ▶

Fotorezistorius ▶

Kondensatoriai ▶

16MHz kristalas ▶

Rezistoriai ▶

Multimetras Mastech 8268 ▶

Bendros projekto išlaidos tuo metu, kai rašau šią instrukciją, yra mažesnės nei 10 USD

2 žingsnis: prijunkite visas dalis

Prijunkite visas dalis
Prijunkite visas dalis
Prijunkite visas dalis
Prijunkite visas dalis

Dabar, kai turite visas dalis, sujungsime jas visas pagal schemą.

Šio projekto mažo energijos suvartojimo raktas yra pliko ATMEGA lusto naudojimas vietoj „Arduino“plokštės. Kadangi „Arduino“plokštės naudoja įtampos reguliatorių, kad galėtų dirbti su daugeliu skirtingų įtampos lygių, joms reikia daugiau galios. Šio reguliatoriaus mums nereikia, nes mes maitiname savo projektą iš 3AA baterijų!

Šiame projekte aš naudoju „Nokia 5110“LCD ekraną, kuris yra puikus ekranas ir jam reikia tik 0,2 mA srovės, kai foninis apšvietimas yra išjungtas. Įspūdinga!

Šviesai aptikti taip pat naudojame fotorezistorių. Taigi, jei naktis, norėdami taupyti energiją, išjungiame LCD ekraną.

Kita maža paslaptis yra „LowPower“biblioteka. Kai nematuojame temperatūros, „Arduino“užmigdome naudodami „LowPower“biblioteką. Kai plikas ATMEGA lustas miega, jam reikia tik 0,06 mA srovės! Tai reiškia, kad jūs galite turėti ATMEGA lustą, miegantį daugiau nei 4 metus su 3 AA baterijomis!

Taigi, sumaniai kurdami programinę įrangą, mes pasiekiame gerą baterijos veikimo laiką. Kai ATMEGA lustas turi būti budrus, jam reikia apie 10 mA srovės. Taigi, mūsų tikslas yra, kad jis miegotų didžiąją laiko dalį. Dėl šios priežasties mes jį pažadiname tik tada, kai reikia matuoti temperatūrą, kas dvi minutes. Kai pažadiname ATMEGA lustą, viską darome kuo greičiau ir iškart vėl einame miegoti.

Algoritmas

Projektas atsibunda kas dvi minutes. Pirmas dalykas, kurį jis daro, yra įgalinti fotorezistorių, užrašant HIGH į skaitmeninį kaištį 6. Jis nuskaito fotorezistoriaus vertę ir nustato, ar yra diena, ar naktis. Tada jis įrašo LOW į skaitmeninį kaištį 6, kad išjungtų fotorezistorių ir išsaugotų poras. Jei naktis, išjungiame skystųjų kristalų ekraną, jei jis įjungtas, ir iškart einame miegoti dvi minutes, neskaitydami temperatūros. To daryti nereikia, nes ekranas išjungtas. Taip sutaupome dar daugiau galios. Jei yra pakankamai šviesos, įjungiame LCD ekraną, jei jis buvo išjungtas, skaitome temperatūrą, rodome ją ekrane ir einame miegoti dvi minutes. Ta kilpa tęsiasi amžinai.

3 žingsnis: matavimai

Matavimai
Matavimai
Matavimai
Matavimai
Matavimai
Matavimai
Matavimai
Matavimai

Kaip matote iš nuotraukų, kai projektas miega ir ekranas įjungtas, jam reikia 0,26 mA srovės, kuri yra labai maža, jei atsižvelgsite į tai, kad turime ekraną!

Kai projektas matuoja temperatūrą ir atnaujina, ekranui reikia apie 11,5 mA

Galiausiai, kai tamsu ir ldr išjungė „Nokia 5110“LCD ekraną, mums reikia tik 0,07 mA, o tai puiku!

Baterijos tarnavimo laikas

Norėdami apskaičiuoti projekto baterijos veikimo laiką, sukūriau paprastą „Excel“failą. Įvedžiau matavimus iš multimetro ir, kaip matote, mes matuojame daugiau nei 500 dienų bateriją, jei matuojame temperatūrą kas 2 minutes! Taip yra naudojant 3AA baterijas, kurių talpa yra 2 500 mA. Žinoma, jei naudojate geresnes baterijas, tokias kaip Li-Ion 3.400 mAh baterija, galite pradėti savo projektą veikti ilgiau nei 2 metus!

„Excel“failą galite atsisiųsti iš šios nuorodos.

4 žingsnis: projekto kodas

Projekto kodeksas
Projekto kodeksas
Projekto kodeksas
Projekto kodeksas

Projekto kodas yra labai paprastas. Šiame kodekse naudojame kai kurias bibliotekas. Mūsų naudojamos bibliotekos yra šios:

  • Mažos galios biblioteka:
  • DS18B20 temperatūros jutiklių biblioteka:
  • „Nokia 5110“LCD biblioteka:

Projekto kodą sudaro du failai. Pirmajame faile yra kodas, kuris veikia „Arduino“. Kitame faile yra keletas dvejetainių duomenų apie piktogramas, kurias rodo pagrindinė programa. Turite įdėti abu failus į projekto aplanką, kad būtų galima tinkamai koduoti.

Kodas yra labai paprastas. Jį rasite žemiau. Visa magija vyksta naudojant „sleepForTwoMinutes“funkciją. Atlikdami šią funkciją, „Arduino“užmigdome. Problema ta, kad naudojant laikrodžio laikmatį maksimalus laikas, kurį galime užmigdyti „Arduino“, yra 8 sek. Taigi, mes įterpiame tai į kilpą 15 kartų ir gauname norimą dviejų minučių intervalą

Tikiuosi, kad jums patiko šis projektas. Greitai pasimatysime!

Rekomenduojamas: