Kazalo:

Nadzor temperature Arduino z nizko porabo: 4 koraki
Nadzor temperature Arduino z nizko porabo: 4 koraki

Video: Nadzor temperature Arduino z nizko porabo: 4 koraki

Video: Nadzor temperature Arduino z nizko porabo: 4 koraki
Video: #15 HC 05 Bluetooth Modbus Android HMI | Внешний ПЛК Arduino 2024, Julij
Anonim
Image
Image
Pridobite dele
Pridobite dele

V tem navodilu zgradimo še en temperaturni monitor s temperaturnim senzorjem DS18B20. Toda ta projekt je drugačen. Na baterijah lahko zdrži skoraj 1,5 leta! Ja! Z uporabo knjižnice z nizko porabo energije Arduino lahko ta projekt deluje dlje časa. Nadaljujte z branjem, če želite izvedeti več!

1. korak: Pridobite dele

Za izdelavo tega projekta so potrebni naslednji deli:

ATMEGA328P ▶

Nokia 5110 LCD ▶

DS18B20 ▶

Fotootpornik ▶

Kondenzatorji ▶

16MHz kristal ▶

Upori ▶

Multimeter Mastech 8268 ▶

Skupni stroški projekta v času, ko pišem to navodilo, so manjši od 10 USD

Korak: Povežite vse dele

Povežite vse dele
Povežite vse dele
Povežite vse dele
Povežite vse dele

Zdaj, ko imate vse dele, jih povežite v skladu s shematskim diagramom.

Ključ do nizke porabe energije tega projekta je uporaba golega čipa ATMEGA namesto Arduino plošče. Ker plošče Arduino uporabljajo regulator napetosti za delo z različnimi napetostnimi stopnjami, potrebujejo več energije. Tega regulatorja ne potrebujemo, saj naš projekt napajamo iz baterij 3AA!

V tem projektu uporabljam LCD zaslon Nokia 5110, ki je odličen in potrebuje le 0,2 mA toka, ko je osvetlitev ozadja izklopljena. Impresivno!

Za zaznavanje svetlobe uporabljamo tudi fotorezistor. Torej, če je noč, onemogočimo LCD zaslon, da prihranimo moč.

Druga majhna skrivnost je knjižnica LowPower. Ko ne merimo temperature, zaspimo Arduino s knjižnico LowPower. Ko goli ATMEGA čip spi, potrebuje le 0,06 mA toka! To pomeni, da lahko čip ATMEGA spi več kot 4 leta na 3 baterijah AA!

Tako s pametno zasnovo programske opreme dosežemo dobro življenjsko dobo baterije. Čip ATMEGA potrebuje približno 10 mA toka, ko je buden. Naš cilj je torej, da večino časa spi. Iz tega razloga ga prebudimo le, ko moramo izmeriti temperaturo, vsaki dve minuti. Ko prebudimo ATMEGA čip, naredimo vse čim hitreje in takoj spet zaspimo.

Algoritem

Projekt se prebuja vsaki dve minuti. Prva stvar, ki jo naredi, je, da fotorezistor omogoči tako, da na digitalni pin 6. zapiše HIGH. Odčita foto vrednost od fotoistorja in ugotovi, ali je dan ali noč. Nato na digitalni pin 6 napiše LOW, da onemogoči fotorezistor in ohrani pore. Če je noč, onemogočimo LCD zaslon, če je vklopljen, in takoj zaspimo dve minuti, ne da bi odčitali temperaturo. To ni potrebno, ker je zaslon izklopljen. Tako prihranimo še več energije. Če je dovolj svetlobe, omogočimo LCD zaslon, če je bil onemogočen, odčitamo temperaturo, jo prikažemo na zaslonu in gremo spat za dve minuti. Ta zanka traja za vedno.

3. korak: Meritve

Meritve
Meritve
Meritve
Meritve
Meritve
Meritve
Meritve
Meritve

Kot lahko vidite na slikah, ko projekt spi in je zaslon VKLOPLJEN, potrebuje 0,26 mA toka, kar je zelo nizko, če upoštevate dejstvo, da imamo zaslon!

Ko projekt meri temperaturo in se posodobi, potrebuje zaslon približno 11,5 mA

Nazadnje, ko je temno in je ldr onemogočil LCD zaslon Nokia 5110, potrebujemo le 0,07 mA, kar je super!

Življenjska doba baterije

Za izračun življenjske dobe baterije projekta sem ustvaril preprosto Excelovo datoteko. Meritve sem vnesel z multimetra in kot vidite, dobimo življenjsko dobo baterije več kot 500 dni, če merimo temperaturo vsake 2 minuti! To je z uporabo 3AA baterij s kapaciteto 2.500mAs. Seveda, če uporabljate boljše baterije, kot je Li-Ion baterija 3.400 mAh, lahko vaš projekt deluje več kot 2 leti!

Datoteko Excel lahko prenesete s te povezave.

4. korak: Koda projekta

Kodeks projekta
Kodeks projekta
Kodeks projekta
Kodeks projekta

Koda projekta je zelo preprosta. V tem kodu uporabljamo nekaj knjižnic. Knjižnice, ki jih uporabljamo, so naslednje:

  • Knjižnica z nizko porabo energije:
  • Knjižnica temperaturnih senzorjev DS18B20:
  • Knjižnica LCD zaslona Nokia 5110:

Koda projekta je sestavljena iz dveh datotek. V prvi datoteki je koda, ki deluje na Arduinu. Naslednja datoteka vsebuje nekaj binarnih podatkov za ikone, ki jih prikaže glavni program. Obe datoteki morate vstaviti v mapo projekta, če želite pravilno kodirati.

Koda je zelo preprosta. Najdete ga spodaj. Vsa čarovnija se zgodi pri funkciji sleepForTwoMinutes. Pri tej funkciji Arduino globoko spimo. Težava je v uporabi časovnika za nadzor, največji čas, ko lahko Arduino uspavamo, je 8 sekund. Torej, to 15 -krat vstavimo v zanko in dobimo želeni interval dveh minut

Upam, da ste uživali v tem projektu. Se vidiva kmalu!

Priporočena: