Cuprins:
- Pasul 1: obțineți toate părțile
- Pasul 2: senzorul de lumină BH1750
- Pasul 3: LCD Nokia 5110
- Pasul 4: Construirea contorului de lumină
- Pasul 5: Codul proiectului
- Pasul 6: Testarea proiectului
Video: Contor de lumină DIY Arduino cu senzor BH1750: 6 pași (cu imagini)
2024 Autor: John Day | [email protected]. Modificat ultima dată: 2024-01-30 11:45
În acest Instructable vă voi arăta cum să construiți un contor de lumină cu un ecran LCD mare Nokia 5110 folosind Arduino.
Construirea unui contor de lumină este o experiență excelentă de învățare. Când veți termina construirea acestui proiect, veți avea o mai bună înțelegere a modului în care funcționează contoarele de lumină și veți vedea în acțiune cât de puternică poate fi platforma Arduino. Având acest proiect ca bază și experiența acumulată, veți putea construi cu ușurință proiecte mai complexe în viitor. Puteți utiliza acest proiect pentru a monitoriza condițiile de iluminare din mediul dvs. de lucru, a plantelor dvs. și așa mai departe. Fără alte întârzieri, să începem!
Pasul 1: obțineți toate părțile
Părțile necesare pentru a construi acest proiect sunt următoarele:
- Arduino Uno ▶
- BH1750 ▶
- Nokia 5110 LCD ▶
- Small Breadboard ▶
- Sârme ▶
Costul proiectului este de aproximativ 12 USD.
Pasul 2: senzorul de lumină BH1750
Senzorul de intensitate a luminii BH1750 este un senzor excelent și foarte ușor de utilizat. Această placă de ieșire vine cu un convertor AD de 16 biți încorporat care poate emite direct un semnal digital, nu este nevoie de calcule complicate.
Această placă este mai bună decât un LDR care scoate doar o tensiune. Cu ajutorul senzorului de lumină BH1750, intensitatea senzorului poate fi măsurată direct de luxmetru, fără a fi nevoie să faceți calcule. Datele transmise de acest senzor sunt transmise direct în Lux (Lx).
Senzorul folosește interfața I2C, astfel încât este foarte ușor de utilizat cu Arduino. Trebuie doar să conectați 2 fire.
De asemenea, prețul senzorului este foarte mic, este în jur de 2 $.
O puteți obține aici: ▶
Pasul 3: LCD Nokia 5110
Nokia 5110 este ecranul meu preferat pentru proiectele mele Arduino.
Nokia 5110 este un ecran LCD grafic de bază care a fost inițial destinat ca ecran de telefon mobil. Folosește controlerul PCD8544, care este un controler / driver CMOS LCD de mică putere. Din această cauză, acest afișaj are un consum de energie impresionant. Folosește doar 0,4 mA când este pornit, dar iluminarea de fundal este dezactivată. Folosește mai puțin de 0,06mA în modul de repaus! Acesta este unul dintre motivele care fac din acest afiș preferatul meu. PCD8544 se interfață la microcontrolere printr-o interfață de magistrală serială. Acest lucru face ca afișajul să fie foarte ușor de utilizat cu Arduino.
Trebuie doar să conectați 8 fire și să utilizați următoarea bibliotecă:
Această impresionantă bibliotecă este dezvoltată de Henning Karlsen, care a depus un efort uriaș pentru a ajuta comunitatea Arduino să avanseze cu bibliotecile sale.
Am pregătit un tutorial detaliat despre modul de utilizare a ecranului LCD Nokia 5110 cu Arduino. Am atașat acel videoclip în acest instructabil, acesta va oferi informații utile despre afișaj, așa că vă încurajez să îl urmăriți cu atenție.
Costul afișajului este de aproximativ 4 USD.
O puteți obține aici: ▶
Pasul 4: Construirea contorului de lumină
Să conectăm acum toate părțile împreună.
La început conectăm modulul senzorului de lumină BH1750. Are doar 5 pini, dar vom conecta 4 dintre ei.
Conectarea senzorului de tensiune
Pinul Vcc merge la 5V al lui Arduino
GND Pin merge la GND-ul lui Arduino
Pinul SCL merge la pinul analogic 5 al Arduino Uno
Pinul SDA merge la pinul analogic 4 al Arduino Uno
PIN-ul adresei rămâne neconectat
Următorul pas este conectarea ecranului LCD Nokia 5110.
Conectarea ecranului LCD Nokia 5110
RST merge la pinul digital 12 al Arduino
CE merge la pinul digital 11 al Arduino
DC merge la pinul digital 10 al Arduino
DIN merge la pinul digital 9 al Arduino
CLK merge la pinul digital 8 al Arduino
VCC merge la Arduino 3.3V LIGHT merge la Arduino GND (iluminare de fundal activată)
GND merge la Arduino GND
Acum că am conectat toate părțile împreună, tot ce trebuie să facem este să încărcăm codul. Se afișează un ecran Splash pentru câteva secunde și apoi putem începe să măsurăm intensitatea luminii în timp real!
Pasul 5: Codul proiectului
Codul proiectului este format din 3 fișiere.
splash.cui.c
ui.c
BH1750LightMeter.ino
Cod - Imagine ecran Splash
În primul fișier splash.c, există valorile binare ale ecranului splash care este afișat pe ecranul LCD Nokia 5110 la pornirea proiectului. Vă rugăm să urmăriți videoclipul atașat pe care l-am pregătit pentru a vedea cum să încărcați grafica personalizată în Proiectul dvs. Arduino.
ui.c Code - Interfața cu utilizatorul
În fișierul ui.c, există valorile binare ale interfeței utilizator care apare după ce proiectul arată ecranul de pornire. Vă rugăm să urmăriți videoclipul atașat pe care l-am pregătit pentru a vedea cum să încărcați grafica personalizată în Proiectul dvs. Arduino.
Codul UVMeter.ino - Programul principal
Codul principal al proiectului este foarte simplu. Trebuie să includem biblioteca Nokia 5110. În continuare declarăm câteva variabile. Inițializăm afișajul și afișăm splash screen timp de 3 secunde. După aceea, imprimăm o singură dată pictograma ui și citim valoarea din senzor 150 milisecunde. Toată magia se întâmplă în funcția de buclă:
bucla void () {int stringLength = 0; uint16_t lux = lightSensor.readLightLevel (); // Citeste lumina senzorului = String (lux); // Conversie la String stringLength = light.length (); // Trebuie să cunoaștem lungimea șirului lcd.clrScr (); lcd.drawBitmap (0, 0, ui, 84, 48); printLight (stringLength); // Imprimați șirul pe ecran lcd.update (); întârziere (150); }
Am atașat codul la acest instructabil. Pentru a descărca cea mai recentă versiune a codului, puteți vizita pagina web a proiectului:
Pasul 6: Testarea proiectului
Acum, când codul este încărcat, putem testa Light Meter în interior și în exterior. Îl testez într-o zi însorită de primăvară aici, în Grecia. Rezultatul este fantastic. Putem măsura cu precizie intensitatea luminii cu un proiect ușor de construit.
După cum puteți vedea în fotografiile atașate, Light Meter funcționează bine. Acest proiect este o demonstrație excelentă a ceea ce este capabil de hardware și software open source. În câteva minute se poate construi un proiect atât de impresionant! Acest proiect este ideal pentru începători și așa cum am spus la început, acest proiect este o experiență excelentă de învățare. Mi-ar plăcea să vă aud părerea despre acest proiect. Vi se pare util? Există îmbunătățiri care pot fi puse în aplicare la acest proiect? Vă rugăm să postați comentariile sau ideile dvs. în secțiunea de comentarii de mai jos!
Recomandat:
FuseLight: Transformați lumina de tub vechi / topită în lumina de studio / petrecere: 3 pași (cu imagini)
FuseLight: Transformă vechiul / Fused Tubelight în Studio / Party Light: Aici am transformat un Fused Tubelight într-o lumină Studio / Part folosind câteva instrumente de bază, lumini RGB și imprimare 3D. Datorită benzilor cu LED RGB utilizate putem avea mai multe culori și nuanțe
Cum să conectați și să utilizați senzorul de lumină GY-30 BH1750 (GY30 / GY302) - Ușor - Proiect Arduino !: 7 pași
Cum să conectați și să utilizați senzorul de lumină GY-30 BH1750 (GY30 / GY302) - Easy - Arduino Project !: În acest tutorial vom învăța cum să utilizați rapid și ușor senzorul de intensitate a luminii GY-30 BH1750 cu Arduino
Lumină de bicicletă foarte strălucitoare folosind PCB-uri personalizate cu panou de lumină: 8 pași (cu imagini)
Lumină de bicicletă foarte strălucitoare folosind PCB-uri personalizate cu panou de lumină: dacă dețineți o bicicletă, atunci știți cât de neplăcute pot fi gropile pe anvelope și pe corp. M-am săturat să-mi suflu anvelopele, așa că am decis să-mi proiectez propriul panou led cu intenția de a-l folosi ca lumină pentru bicicletă. Unul care se concentrează pe a fi E
Trageți de lumină - Modul de lumină folosind comutatorul Neopixel & Pull Up: 6 pași (cu imagini)
Pull the Light - Modulul de lumină utilizând comutatorul Neopixel & Pull Up: Caracteristici ale modulului de lumină Arduino Uno Hardware & incintă achiziționată de pe internet Neopixel & Alimentare cu energie împrumutată de la Școala de Informatică & Proiectare produs Modul luminos controlat de sursa de alimentare Toate funcțiile controlate prin
Comutator de lumină activat prin mișcare cu senzor de lumină: 5 pași
Comutator de lumină activat prin mișcare cu senzor de lumină: Comutatorul de lumină activat prin mișcare are multe aplicații atât acasă, cât și la birou. Acest lucru, cu toate acestea, a adăugat un avantaj al încorporării unui senzor de lumină, astfel încât această lumină să poată fi declanșată numai noaptea