Obsah:

Svetelný merač Arduino DIY so snímačom BH1750: 6 krokov (s obrázkami)
Svetelný merač Arduino DIY so snímačom BH1750: 6 krokov (s obrázkami)

Video: Svetelný merač Arduino DIY so snímačom BH1750: 6 krokov (s obrázkami)

Video: Svetelný merač Arduino DIY so snímačom BH1750: 6 krokov (s obrázkami)
Video: How to Make a Temperature Gauge with Arduino and DS18B20 Sensor 🤯😍 2024, November
Anonim
Image
Image
Svetelný merač Arduino DIY so snímačom BH1750
Svetelný merač Arduino DIY so snímačom BH1750

V tomto návode vám ukážem, ako vytvoriť merač svetla s veľkým LCD displejom Nokia 5110 pomocou Arduina.

Budovanie svetelného merača je skvelá učebná skúsenosť. Po dokončení stavby tohto projektu lepšie porozumiete fungovaniu meračov svetla a v praxi uvidíte, aká silná môže byť platforma Arduino. Vďaka tomuto projektu ako základu a získaným skúsenostiam budete môcť v budúcnosti ľahko stavať komplexnejšie projekty. Tento projekt môžete použiť na monitorovanie svetelných podmienok vášho pracovného prostredia, vašich rastlín a podobne. Bez ďalšieho zdržania začnime!

Krok 1: Získajte všetky diely

Získajte všetky diely
Získajte všetky diely

Časti potrebné na výstavbu tohto projektu sú tieto:

  • Arduino Uno ▶
  • BH1750 ▶
  • LCD displej Nokia 5110 ▶
  • Malá doska na chlieb ▶
  • Drôty ▶

Náklady na projekt sa pohybujú okolo 12 dolárov.

Krok 2: Svetelný senzor BH1750

Svetelný senzor BH1750
Svetelný senzor BH1750

Senzor intenzity svetla BH1750 je skvelý a veľmi ľahko sa používa. Táto odpočinková doska je vybavená vstavaným 16-bitovým prevodníkom AD, ktorý môže priamo vydávať digitálny signál, nie sú potrebné žiadne komplikované výpočty.

Táto doska je lepšia ako LDR, ktorá vydáva iba napätie. S BH1750 je možné intenzitu svetelného senzora merať priamo luxmetrom bez toho, aby ste museli vykonávať výpočty. Dáta, ktoré sú prenášané týmto snímačom, sú priamo vysielané v Lux (Lx).

Senzor používa rozhranie I2C, takže použitie s Arduino je veľmi jednoduché. Potrebujete pripojiť iba 2 vodiče.

Tiež cena senzora je veľmi nízka, pohybuje sa okolo 2 $.

Môžete ho získať tu: ▶

Krok 3: LCD displej Nokia 5110

Image
Image
Budovanie merača svetla
Budovanie merača svetla

Nokia 5110 je môj obľúbený displej pre moje projekty Arduino.

Nokia 5110 je základný grafický LCD displej, ktorý bol pôvodne určený ako displej mobilného telefónu. Používa ovládač PCD8544, ktorý je nízkoenergetickým ovládačom/ovládačom CMOS LCD. Vďaka tomu má tento displej pôsobivú spotrebu energie. Keď je zapnutý, používa iba 0,4 mA, ale podsvietenie je vypnuté. V režime spánku spotrebuje menej ako 0,06 mA! To je jeden z dôvodov, prečo je tento displej mojim obľúbeným. PCD8544 je prepojený s mikrokontrolérmi prostredníctvom rozhrania sériovej zbernice. Vďaka tomu je použitie displeja s Arduino veľmi jednoduché.

Stačí pripojiť 8 káblov a použiť nasledujúcu knižnicu:

Túto pôsobivú knižnicu vyvinul Henning Karlsen, ktorý vynaložil obrovské množstvo úsilia, aby pomohol komunite Arduino napredovať vo svojich knižniciach.

Pripravil som podrobný návod, ako používať LCD displej Nokia 5110 s Arduino. Pripojil som to video v tomto návode, bude poskytovať užitočné informácie o displeji, preto vám odporúčam, aby ste si ho pozorne pozreli.

Cena displeja sa pohybuje okolo 4 dolárov.

Môžete ho získať tu: ▶

Krok 4: Zostavenie merača svetla

Stavba merača svetla
Stavba merača svetla

Teraz spojme všetky diely dohromady.

Najprv pripojíme modul svetelného senzora BH1750. Má iba 5 pinov, ale spojíme 4 z nich.

Pripojenie snímača napätia

Vcc Pin ide do 5V Arduina

GND Pin ide do GND Arduina

Pin SCL prechádza na analógový kolík 5 Arduino Uno

Pin SDA ide do analógového pinu 4 Arduino Uno

Adresa PIN zostane nepripojená

Ďalším krokom je pripojenie LCD displeja Nokia 5110.

Pripojenie LCD displeja Nokia 5110

RST ide na Digital Pin 12 Arduina

CE ide na Digital Pin 11 Arduina

DC ide na Digital Pin 10 Arduina

DIN ide na digitálny kolík 9 Arduina

CLK ide na Digital Pin 8 Arduina

VCC ide na Arduino 3.3V LIGHT ide na Arduino GND (podsvietenie zapnuté)

GND ide do Arduino GND

Teraz, keď sme spojili všetky časti dohromady, stačí načítať kód. Na niekoľko sekúnd sa zobrazí úvodná obrazovka a potom môžeme začať merať intenzitu svetla v reálnom čase!

Krok 5: Kód projektu

Image
Image
Testovanie projektu
Testovanie projektu

Kód projektu pozostáva z 3 súborov.

splash.cui.c

ui.c

BH1750LightMeter.ino

Kód - obrázok úvodnej obrazovky

V prvom súbore splash.c sú binárne hodnoty úvodnej obrazovky, ktoré sa pri spustení projektu zobrazia na LCD displeji Nokia 5110. Pozrite si priložené video, ktoré som pripravil, aby ste zistili, ako načítať vlastnú grafiku do vášho projektu Arduino.

ui.c Code - Používateľské rozhranie

V súbore ui.c sú binárne hodnoty používateľského rozhrania, ktoré sa zobrazia po tom, ako projekt zobrazí úvodnú obrazovku. Pozrite si priložené video, ktoré som pripravil, aby ste zistili, ako načítať vlastnú grafiku do vášho projektu Arduino.

Kód UVMeter.ino - hlavný program

Hlavný kód projektu je veľmi jednoduchý. Musíme zahrnúť knižnicu Nokia 5110. Ďalej deklarujeme niektoré premenné. Inicializujeme zobrazenie a na 3 sekundy zobrazujeme úvodnú obrazovku. Potom jedenkrát vytlačíme ikonu ui a zo senzora odčítame hodnotu 150 milisekúnd. Všetky kúzla sa dejú vo funkcii slučky:

void loop () {int stringLength = 0; uint16_t lux = lightSensor.readLightLevel (); // Prečítajte si svetlo senzora = String (lux); // Konverzia na reťazec stringLength = light.length (); // Potrebujeme poznať dĺžku reťazca lcd.clrScr (); lcd.drawBitmap (0, 0, ui, 84, 48); printLight (stringLength); // Vytlačte reťazec na displeji lcd.update (); oneskorenie (150); }

K tomuto pokynu som priložil kód. Ak si chcete stiahnuť najnovšiu verziu kódu, môžete navštíviť webovú stránku projektu:

Krok 6: Testovanie projektu

Testovanie projektu
Testovanie projektu
Testovanie projektu
Testovanie projektu

Teraz, keď je kód načítaný, môžeme testovať merač svetla v interiéri aj exteriéri. Testujem to za slnečného jarného dňa tu v Grécku. Výsledok, ak je fantastický. Ľahko zostaviteľný projekt dokážeme presne zmerať intenzitu svetla.

Ako vidíte na priložených fotografiách, merač svetla funguje dobre. Tento projekt je skvelou ukážkou toho, čo je hardvér a softvér s otvoreným zdrojovým kódom schopný. V priebehu niekoľkých minút je možné postaviť taký pôsobivý projekt! Tento projekt je ideálny pre začiatočníkov a ako som už povedal na začiatku, tento projekt je skvelým vzdelávacím zážitkom. Rád by som počul váš názor na tento projekt. Považujete to za užitočné? Existujú nejaké vylepšenia, ktoré je možné implementovať do tohto projektu? Napíšte svoje pripomienky alebo nápady v sekcii komentárov nižšie!

Odporúča: