Cuprins:

Monitor de temperatură Arduino de putere redusă: 4 pași
Monitor de temperatură Arduino de putere redusă: 4 pași

Video: Monitor de temperatură Arduino de putere redusă: 4 pași

Video: Monitor de temperatură Arduino de putere redusă: 4 pași
Video: How to use 4 channel Relay to control AC load with Arduino code 2024, Iulie
Anonim
Image
Image
Obțineți piesele
Obțineți piesele

În acest Instructable construim încă un monitor de temperatură folosind un senzor de temperatură DS18B20. Dar acest proiect este diferit. Poate dura baterii timp de aproape 1,5 ani! Da! Folosind biblioteca Arduino cu consum redus de energie, putem avea acest proiect rulat mult timp. Continuați să citiți pentru a afla mai multe!

Pasul 1: Obțineți piesele

Părțile necesare pentru a construi acest proiect sunt următoarele:

ATMEGA328P ▶

Nokia 5110 LCD ▶

DS18B20 ▶

Fotorezistor ▶

Condensatoare ▶

Cristal de 16 MHz ▶

Rezistențe ▶

Multimetru Mastech 8268 ▶

Costul total al proiectului în momentul în care scriu acest instructabil este mai mic de 10 $

Pasul 2: Conectați toate piesele

Conectați toate piesele
Conectați toate piesele
Conectați toate piesele
Conectați toate piesele

Acum că aveți toate părțile, să le conectăm pe toate în conformitate cu diagrama schematică.

Cheia consumului redus de energie al acestui proiect este utilizarea unui cip ATMEGA gol în locul unei plăci Arduino. Deoarece plăcile Arduino folosesc un regulator de tensiune pentru a funcționa cu mai multe niveluri diferite de tensiune, au nevoie de mai multă energie. Nu avem nevoie de acest regulator, deoarece ne alimentăm proiectul cu baterii 3AA!

În acest proiect, folosesc ecranul LCD Nokia 5110, care este un afișaj excelent și are nevoie de doar 0,2 mA de curent atunci când lumina de fundal este oprită. Impresionant!

De asemenea, folosim un fotorezistor pentru a detecta lumina. Deci, dacă este noapte, dezactivăm afișajul LCD pentru a economisi energie.

Un alt mic secret este biblioteca LowPower. Când nu măsurăm temperatura, adormim Arduino folosind biblioteca LowPower. Atunci când un cip ATMEGA gol dorm, necesită doar 0,06mA de curent! Asta înseamnă că puteți avea un cip ATMEGA dormind peste 4 ani cu 3 baterii AA!

Așadar, cu un design inteligent al software-ului, obținem o durată bună de viață a bateriei. Cipul ATMEGA are nevoie de aproximativ 10mA de curent atunci când este treaz. Deci, scopul nostru este să-l dormim de cele mai multe ori. Din acest motiv, îl trezim doar atunci când trebuie să măsurăm temperatura, la fiecare două minute. Când trezim cipul ATMEGA, facem totul cât mai repede posibil și mergem imediat să dormim din nou.

Algoritmul

Proiectul se trezește la fiecare două minute. Primul lucru pe care îl face este să activeze fotorezistorul scriind HIGH pe pinul digital 6. Citește valoarea din fotorezistor și determină dacă este zi sau noapte. Apoi scrie LOW pe pinul digital 6 pentru a dezactiva fotorezistorul și a conserva porer. Dacă este noapte dezactivăm afișajul LCD dacă este aprins și mergem imediat să dormim timp de două minute fără să citim temperatura. Nu este necesar să faceți acest lucru, deoarece afișajul este oprit. Astfel conservăm și mai multă putere. Dacă este suficientă lumină, activăm afișajul LCD dacă a fost dezactivat, citim temperatura, o afișăm pe ecran și mergem să dormim două minute. Acea buclă continuă pentru totdeauna.

Pasul 3: măsurători

Măsurători
Măsurători
Măsurători
Măsurători
Măsurători
Măsurători
Măsurători
Măsurători

După cum puteți vedea din imagini, atunci când proiectul este în repaus și afișajul este aprins, are nevoie de 0.26mA de curent, care este foarte scăzut dacă luați în considerare faptul că avem un afișaj!

Când proiectul măsoară temperatura și se actualizează, afișajul are nevoie de aproximativ 11,5mA

În cele din urmă, când este întuneric și ldr-ul a dezactivat afișajul LCD Nokia 5110, avem nevoie doar de 0,07 mA, ceea ce este minunat!

Durata de viata a bateriei

Pentru a calcula durata de viață a bateriei proiectului, am creat un fișier Excel simplu. Am introdus măsurătorile din multimetru și, după cum puteți vedea, obținem o durată de viață a bateriei mai mare de 500 de zile dacă măsurăm temperatura la fiecare 2 minute! Acest lucru este cu utilizarea bateriilor 3AA cu o capacitate de 2.500mAs. Desigur, dacă utilizați baterii mai bune, cum ar fi o baterie Li-Ion 3.400 mAh, puteți avea proiectul în funcțiune mai mult de 2 ani!

Puteți descărca fișierul Excel de pe acest link.

Pasul 4: Codul proiectului

Codul proiectului
Codul proiectului
Codul proiectului
Codul proiectului

Codul proiectului este foarte simplu. Folosim câteva biblioteci în această bucată de cod. Bibliotecile pe care le folosim sunt următoarele:

  • Biblioteca de consum redus:
  • Biblioteca senzorului de temperatură DS18B20:
  • Biblioteca LCD Nokia 5110:

Codul proiectului este format din două fișiere. În primul fișier există codul care rulează pe Arduino. Următorul fișier conține câteva date binare pentru pictogramele afișate de programul principal. Trebuie să puneți ambele fișiere în folderul proiectului pentru a codifica corect pentru a compila.

Codul este foarte simplu. O puteți găsi mai jos. Toată magia se întâmplă la funcția sleepForTwoMinutes. La această funcție, Arduino a adormit profund. Problema este că folosiți cronometrul câinelui de supraveghere, timpul maxim pe care îl putem pune pe Arduino în somn este de 8 sec. Deci, îl inserăm într-o buclă de 15 ori și obținem intervalul de două minute pe care îl dorim

Sper că v-a plăcut acest proiect. Ne vedem în curând!

Recomandat: