Stație meteo cu senzorul BME280 (V)

Posted by

Și încet am ajuns la varianta 5, și ultima (cred!) a statiei mele meteo.
Deoarece variantele inițiale măsurau cu o eroare prea mare, am schimbat libraria pt. BME280 si secventa de cod pentru masură. Altitudinea fiind calculată functie de presiunea atmosferică masurată, ea variază tot timpul cu presiunea măsurată de parca tot urc și cobor pe dealuri J , asfel ca am renuntat la ea si am adaugat un modul de ceas DS1307 cu reglaj din encoder rotativ. Ceasul este un ceas astronomic, functie de latitudine si longitudine calculeaza ora rasaritului si apusului de soare. Partea de ceas este preluata de pe andydoz.blogspot.com respectiv http://nicuflorica.blogspot.com.

Reglajul ceasului se efectuează din encoderul rotativ. La o apăsare scurtă se afișează orele astronomice, respectiv ora la care răsare soarele și ora la care apune soarele, ore calculate automat în funcție de longitudinea si latitudinea locației. În cazul meu:

Latitudine = 460 33” N

Longitudine = 240 34” E

cof

La o apăsare lungă (peste 3 secunde) se intră în mediul de setare al ceasului,

 meniul 1 – setarea anului

meniul 2 – setarea lunii

meniul 3 – setarea zilei

meniul 4 – setarea orei

meniul 5 – setarea minutului

După fiecare setare a unui meniu se apasă scurt switchul encoderului.

La partea de afișaj a presiunii atmosferice am adăugat afișarea a două săgeți orientate în jos dacă presiunea coboară sub cea normală și orientate în sus dacă presiunea crește peste cea normală.

Testele le-am efectuat cu o placă Arduino Uno iar variant finală l-am ”încărcat” pe o placa Arduino Nano.

cof

În final o avertizare: modulul de ceas DS1307 are pe plăcuță un circuit de încărcare a bateriei, de aceea nu utilizați baterii CR2032 (pot exploda) ci utilizați o baterie reîncărcabilă LIR2032 de 3,6V..

Codul este meteo_bme280_v5.ino si poate fi descărcat de aici.

Spor.

Please follow and like us:

Leave a Reply

Adresa ta de email nu va fi publicată. Câmpurile obligatorii sunt marcate cu *