Indholdsfortegnelse:

Arduino -temperaturmonitor med lav effekt: 4 trin
Arduino -temperaturmonitor med lav effekt: 4 trin

Video: Arduino -temperaturmonitor med lav effekt: 4 trin

Video: Arduino -temperaturmonitor med lav effekt: 4 trin
Video: Amazing arduino project 2024, Juli
Anonim
Image
Image
Få delene
Få delene

I denne Instructable bygger vi endnu en temperaturmonitor ved hjælp af en DS18B20 temperatursensor. Men dette projekt er anderledes. Det kan holde på batterier i næsten 1,5 år! Ja! Ved hjælp af Arduino low power -biblioteket kan vi have dette projekt kørende i lang tid. Fortsæt med at læse for at finde ud af mere!

Trin 1: Få delene

De dele, der er nødvendige for at bygge dette projekt, er disse:

ATMEGA328P ▶

Nokia 5110 LCD ▶

DS18B20 ▶

Fotoresistor ▶

Kondensatorer ▶

16MHz krystal ▶

Modstande ▶

Multimeter Mastech 8268 ▶

De samlede omkostninger ved projektet på det tidspunkt, jeg skriver denne Instructable, er mindre end 10 $

Trin 2: Tilslut alle delene

Tilslut alle delene
Tilslut alle delene
Tilslut alle delene
Tilslut alle delene

Nu hvor du har alle delene, lad os forbinde dem alle sammen i henhold til det skematiske diagram.

Nøglen til dette projekts lave strømforbrug er brugen af en bar ATMEGA -chip i stedet for et Arduino -kort. Da Arduino -plader bruger en spændingsregulator for at arbejde med mange forskellige spændingsniveauer, har de brug for mere strøm. Vi har ikke brug for denne regulator, da vi driver vores projekt fra 3AA batterier!

I dette projekt bruger jeg Nokia 5110 LCD -skærmen, som er en fantastisk skærm, og den behøver kun 0,2mA strøm, når baggrundslyset er slukket. Imponerende!

Vi bruger også en fotoresistor for at registrere lys. Så hvis det er nat, deaktiverer vi LCD -skærmen for at spare strøm.

En anden lille hemmelighed er LowPower -biblioteket. Når vi ikke måler temperaturen, sætter vi Arduino i dvale ved hjælp af LowPower -biblioteket. Når en bar ATMEGA -chip sover, kræver den kun 0,06mA strøm! Det betyder, at du kan have en ATMEGA -chip, der sover i over 4 år på 3 AA -batterier!

Så med et smart softwaredesign opnår vi en god batterilevetid. ATMEGA -chippen har brug for omkring 10 mA strøm, når den er vågen. Så vores mål er at få det til at sove det meste af tiden. Af den grund vågner vi den først, når vi skal måle temperaturen hvert andet minut. Når vi vækker ATMEGA -chippen op, gør vi alt så hurtigt som muligt, og vi går straks i søvn igen.

Algoritmen

Projektet vågner hvert andet minut. Den første ting, den gør, er at aktivere fotoresistoren ved at skrive HIGH til digital pin 6. Den læser værdien fra fotoresistoren, og den afgør, om den er dag eller nat. Derefter skriver den LOW til digital pin 6 for at deaktivere fotoresistoren og spare porer. Hvis det er nat, deaktiverer vi LCD -displayet, hvis det er ON, og vi går straks i dvale i to minutter uden at aflæse temperaturen. Det er ikke nødvendigt at gøre det, da displayet er slukket. På den måde sparer vi endnu mere strøm. Hvis der er nok lys, aktiverer vi LCD -displayet, hvis det var deaktiveret, vi læser temperaturen, vi viser det på skærmen, og vi går i dvale i to minutter. Den loop fortsætter for altid.

Trin 3: Målinger

Målinger
Målinger
Målinger
Målinger
Målinger
Målinger
Målinger
Målinger

Som du kan se på billederne, når projektet sover og displayet er TIL, har det brug for 0,26mA strøm, hvilket er meget lavt, hvis du overvejer, at vi har et display!

Når projektet måler temperaturen og opdaterer, har displayet brug for omkring 11,5 mA

Endelig, når det er mørkt, og ldr'en har deaktiveret Nokia 5110 LCD -display, har vi kun brug for 0,07mA, hvilket er fantastisk!

Batteri liv

For at beregne projektets batterilevetid lavede jeg en simpel Excel -fil. Jeg indtastede målingerne fra multimeteret, og som du kan se, får vi en batterilevetid på mere end 500 dage, hvis vi måler temperaruren hvert 2. minut! Det er ved brug af 3AA batterier med en kapacitet på 2.500mA. Selvfølgelig, hvis du bruger bedre batterier som et Li-Ion 3.400 mAh batteri, kan du have dit projekt i gang i mere end 2 år!

Du kan downloade Excel -filen fra dette link.

Trin 4: Projektets kode

Projektets kode
Projektets kode
Projektets kode
Projektets kode

Koden for projektet er meget enkel. Vi bruger nogle biblioteker i dette stykke kode. De biblioteker, vi bruger, er følgende:

  • Low Power Library:
  • DS18B20 temperaturfølerbibliotek:
  • Nokia 5110 LCD -bibliotek:

Projektkoden består af to filer. I den første fil er der koden, der kører på Arduino. Den næste fil indeholder nogle binære data for de ikoner, som hovedprogrammet viser. Du skal lægge begge filer i projektmappen for at kode kan kompilere korrekt.

Koden er meget enkel. Du kan finde det herunder. Al magien sker ved sleepForTwoMinutes -funktionen. Ved denne funktion satte vi Arduino i dyb søvn. Problemet er at bruge vagthundstimeren, den maksimale tid, vi kan få Arduino til at sove, er 8 sekunder. Så vi indsætter det i en loop i 15 gange, og vi får det interval på to minutter, vi ønsker

Jeg håber, at du nød dette projekt. Vi ses snart!

Anbefalede: