Sadržaj:

Arduino DIY svjetlomjer sa BH1750 senzorom: 6 koraka (sa slikama)
Arduino DIY svjetlomjer sa BH1750 senzorom: 6 koraka (sa slikama)

Video: Arduino DIY svjetlomjer sa BH1750 senzorom: 6 koraka (sa slikama)

Video: Arduino DIY svjetlomjer sa BH1750 senzorom: 6 koraka (sa slikama)
Video: Measuring Light With ChatGPT: A Guide To Build A Lux Meter With Arduino And LDR 2024, Juli
Anonim
Image
Image
Arduino DIY svjetlomjer sa BH1750 senzorom
Arduino DIY svjetlomjer sa BH1750 senzorom

U ovom uputstvu ću vam pokazati kako izgraditi svjetlomjer sa velikim Nokia 5110 LCD ekranom koristeći Arduino.

Izgradnja mjerača svjetlosti odlično je iskustvo učenja. Kad završite s izgradnjom ovog projekta, bolje ćete razumjeti kako funkcioniraju mjerači svjetlosti i vidjet ćete na djelu koliko Arduino platforma može biti moćna. S ovim projektom kao bazom i stečenim iskustvom moći ćete u budućnosti lako graditi složenije projekte. Ovaj projekt možete koristiti za nadziranje svjetlosnih uvjeta vašeg radnog okruženja, vaših biljaka itd. Bez daljnjeg odlaganja, počnimo!

Korak 1: Nabavite sve dijelove

Nabavite sve dijelove
Nabavite sve dijelove

Za izgradnju ovog projekta potrebni su sljedeći dijelovi:

  • Arduino Uno ▶
  • BH1750 ▶
  • Nokia 5110 LCD ▶
  • Mala Breadboard ▶
  • Žice ▶

Cijena projekta je oko 12 USD.

Korak 2: BH1750 svjetlosni senzor

Senzor svjetla BH1750
Senzor svjetla BH1750

Senzor intenziteta svjetla BH1750 je odličan i vrlo jednostavan za korištenje. Ova ploča za probijanje dolazi sa ugrađenim 16-bitnim AD pretvaračem koji može direktno izlaziti digitalni signal, nema potrebe za kompliciranim proračunima.

Ova ploča je bolja od LDR -a koji daje samo napon. S BH1750 svjetlosnim senzorom intenzitet se može izravno izmjeriti luxmetrom, bez potrebe za kalkulacijama. Podaci koje odašilje ovaj senzor izravno se ispisuju u luksima (Lx).

Senzor koristi I2C sučelje pa je vrlo jednostavan za upotrebu s Arduinom. Potrebno je samo spojiti 2 žice.

Takođe, cijena senzora je vrlo niska, kreće se oko 2 USD.

Možete ga dobiti ovdje: ▶

Korak 3: Nokia 5110 LCD

Image
Image
Izgradnja merača svetlosti
Izgradnja merača svetlosti

Nokia 5110 je moj omiljeni ekran za moje Arduino projekte.

Nokia 5110 je osnovni grafički LCD ekran koji je prvobitno bio zamišljen kao ekran mobilnog telefona. Koristi kontroler PCD8544 koji je CMOS LCD kontroler/upravljački program male snage. Zbog toga ovaj ekran ima impresivnu potrošnju energije. Kada je uključen, koristi samo 0,4 mA, ali je pozadinsko osvjetljenje onemogućeno. U stanju mirovanja koristi manje od 0,06 mA! To je jedan od razloga zbog kojih ovaj ekran postaje moj omiljeni. PCD8544 se povezuje sa mikrokontrolerima preko interfejsa serijske magistrale. To čini zaslon vrlo lakim za upotrebu s Arduinom.

Potrebno je samo spojiti 8 žica i koristiti sljedeću biblioteku:

Ovu impresivnu biblioteku razvio je Henning Karlsen koji je uložio veliki napor kako bi pomogao zajednici Arduino da nastavi sa svojim bibliotekama.

Pripremio sam detaljan vodič o tome kako koristiti Nokia 5110 LCD ekran s Arduinom. Priložio sam taj video zapis u ovaj Instructable, koji će pružiti korisne informacije o ekranu, pa vas ohrabrujem da ga pažljivo pogledate.

Cijena ekrana je oko 4 USD.

Možete ga dobiti ovdje: ▶

Korak 4: Izgradnja mjerača svjetlosti

Izgradnja merača svetlosti
Izgradnja merača svetlosti

Spojimo sada sve dijelove zajedno.

Prvo povezujemo modul svjetlosnog senzora BH1750. Ima samo 5 pinova, ali spojit ćemo 4 od njih.

Priključivanje osjetnika napona

Vcc Pin ide na Arduino 5V

GND Pin ide na Arduino GND

SCL pin ide na analogni pin 5 Arduino Uno

SDA pin ide na analogni pin 4 Arduino Uno

Pin za adresu ostaje nepovezan

Sledeći korak je povezivanje Nokia 5110 LCD ekrana.

Povezivanje Nokia 5110 LCD ekrana

RST ide na digitalni pin 12 Arduina

CE ide na Digital Pin 11 Arduina

DC ide na digitalni pin 10 Arduina

DIN ide na digitalni pin 9 Arduina

CLK ide na digitalni pin 8 Arduina

VCC ide na Arduino 3.3V LIGHT ide na Arduino GND (pozadinsko osvjetljenje uključeno)

GND ide Arduinu GND

Sada kada smo povezali sve dijelove zajedno, sve što trebamo učiniti je učitati kôd. Ekran za prskanje se prikazuje na nekoliko sekundi, a zatim možemo početi mjeriti intenzitet svjetla u stvarnom vremenu!

Korak 5: Kôd projekta

Image
Image
Testiranje projekta
Testiranje projekta

Kod projekta sastoji se od 3 datoteke.

splash.cui.c

ui.c

BH1750LightMeter.ino

Kôd - slika prskajućeg ekrana

U prvoj datoteci splash.c nalaze se binarne vrednosti ekrana za prskanje koji se prikazuje na Nokia 5110 LCD ekranu kada se projekat pokrene. Pogledajte priloženi video koji sam pripremio kako biste vidjeli kako učitati prilagođenu grafiku na vaš Arduino projekt.

ui.c Code - Korisničko sučelje

U datoteci ui.c nalaze se binarne vrijednosti korisničkog sučelja koje se pojavljuju nakon što projekt prikaže splash screen. Pogledajte priloženi video koji sam pripremio kako biste vidjeli kako učitati prilagođenu grafiku na vaš Arduino projekt.

UVMeter.ino kôd - glavni program

Glavni kod projekta je vrlo jednostavan. Moramo uključiti biblioteku Nokije 5110. Zatim deklariramo neke varijable. Pokrećemo zaslon i prikazujemo splash screen 3 sekunde. Nakon toga, jednom ispisujemo ikonu korisničkog interfejsa i očitavamo vrijednost sa senzora 150 milisekundi. Sva se čarolija događa u funkciji petlje:

void loop () {int stringLength = 0; uint16_t lux = lightSensor.readLightLevel (); // Očitavanje svjetla senzora = String (lux); // Konverzija u String stringLength = light.length (); // Moramo znati String Length lcd.clrScr (); lcd.drawBitmap (0, 0, ui, 84, 48); printLight (stringLength); // Štampa niz na ekranu lcd.update (); kašnjenje (150); }

Priložio sam kôd ovom uputstvu. Da biste preuzeli najnoviju verziju koda, možete posjetiti web stranicu projekta:

Korak 6: Testiranje projekta

Testiranje projekta
Testiranje projekta
Testiranje projekta
Testiranje projekta

Sada kada je kod učitan, možemo testirati svjetlomjer u zatvorenom i na otvorenom. Testiram ga u sunčanom proljetnom danu ovdje u Grčkoj. Rezultat ako je fantastičan. Možemo precizno izmjeriti intenzitet svjetla pomoću projekta koji se lako izrađuje.

Kao što možete vidjeti na priloženim fotografijama, svjetlomjer radi dobro. Ovaj projekt je sjajna demonstracija onoga što hardver i softver otvorenog koda mogu. U roku od nekoliko minuta može se izgraditi tako impresivan projekt! Ovaj projekt je idealan za početnike i kao što sam rekao na početku, ovaj projekt je veliko iskustvo učenja. Volio bih čuti vaše mišljenje o ovom projektu. Smatrate li to korisnim? Postoje li poboljšanja koja se mogu implementirati u ovaj projekt? Molimo vas da svoje komentare ili ideje objavite u odjeljku za komentare ispod!

Preporučuje se: