Obsah:

Světelný měřič Arduino DIY se snímačem BH1750: 6 kroků (s obrázky)
Světelný měřič Arduino DIY se snímačem BH1750: 6 kroků (s obrázky)

Video: Světelný měřič Arduino DIY se snímačem BH1750: 6 kroků (s obrázky)

Video: Světelný měřič Arduino DIY se snímačem BH1750: 6 kroků (s obrázky)
Video: Arduino návody | Světelný senzor TEMT6000 2024, Červenec
Anonim
Image
Image
Světelný měřič Arduino DIY se senzorem BH1750
Světelný měřič Arduino DIY se senzorem BH1750

V tomto Instructable vám ukážu, jak vytvořit měřič světla s velkým LCD displejem Nokia 5110 pomocí Arduina.

Sestavení měřiče světla je skvělá zkušenost s učením. Když dokončíte stavbu tohoto projektu, budete lépe rozumět tomu, jak fungují měřiče světla, a uvidíte v akci, jak silná může být platforma Arduino. S tímto projektem jako základnou a získanými zkušenostmi budete moci v budoucnu snadno stavět složitější projekty. Tento projekt můžete použít ke sledování světelných podmínek vašeho pracovního prostředí, vašich rostlin atd. Bez dalšího zdržování, můžeme začít!

Krok 1: Získejte všechny díly

Získejte všechny díly
Získejte všechny díly

Díly potřebné k vybudování tohoto projektu jsou tyto:

  • Arduino Uno ▶
  • BH1750 ▶
  • LCD displej Nokia 5110 ▶
  • Malý prkénko ▶
  • Dráty ▶

Náklady na projekt se pohybují kolem 12 $.

Krok 2: Světelný senzor BH1750

Světelný senzor BH1750
Světelný senzor BH1750

Senzor intenzity světla BH1750 je skvělý a velmi snadno se používá. Tato odpočinková deska je dodávána s vestavěným 16bitovým AD převodníkem, který může přímo vysílat digitální signál, není třeba složitých výpočtů.

Tato deska je lepší než LDR, která vydává pouze napětí. S BH1750 lze intenzitu světelného senzoru měřit přímo luxmetrem, aniž byste museli provádět výpočty. Data, která jsou tímto senzorem vyvedena, jsou přímo vyvedena v Lux (Lx).

Senzor využívá rozhraní I2C, takže se s Arduinem velmi snadno používá. Stačí připojit 2 vodiče.

Také cena senzoru je velmi nízká, pohybuje se kolem 2 $.

Můžete ho získat zde: ▶

Krok 3: LCD displej Nokia 5110

Image
Image
Stavba měřiče světla
Stavba měřiče světla

Nokia 5110 je můj oblíbený displej pro mé projekty Arduino.

Nokia 5110 je základní grafický LCD displej, který byl původně určen jako displej mobilního telefonu. Používá řadič PCD8544, což je nízkoenergetický řadič/ovladač LCD CMOS. Díky tomu má tento displej působivou spotřebu energie. Když je zapnutý, využívá pouze 0,4 mA, ale podsvícení je vypnuté. V režimu spánku využívá méně než 0,06 mA! To je jeden z důvodů, proč je tento displej mým oblíbeným. PCD8544 je propojeno s mikrokontroléry prostřednictvím rozhraní sériové sběrnice. Díky tomu je použití displeje s Arduinem velmi snadné.

Stačí připojit 8 vodičů a použít následující knihovnu:

Tuto impozantní knihovnu vytvořil Henning Karlsen, který vynaložil obrovské úsilí, aby pomohl komunitě Arduino posunout se vpřed se svými knihovnami.

Připravil jsem podrobný návod, jak používat LCD displej Nokia 5110 s Arduinem. Připojil jsem to video v tomto Instructable, bude to poskytovat užitečné informace o displeji, takže vám doporučuji sledovat to pečlivě.

Cena displeje se pohybuje kolem 4 $.

Můžete ho získat zde: ▶

Krok 4: Sestavení měřiče světla

Stavba měřiče světla
Stavba měřiče světla

Pojďme nyní spojit všechny části dohromady.

Nejprve připojíme modul světelného senzoru BH1750. Má pouze 5 pinů, ale připojíme 4 z nich.

Připojení snímače napětí

Vcc Pin jde do 5V Arduina

GND Pin jde do GND Arduina

Pin SCL jde do analogového pinu 5 Arduino Uno

SDA Pin jde na Analog Pin 4 Arduino Uno

Adresní pin zůstane nepřipojený

Dalším krokem je připojení LCD displeje Nokia 5110.

Připojení LCD displeje Nokia 5110

RST jde na Digital Pin 12 Arduina

CE jde do Digital Pin 11 Arduina

DC jde na Digital Pin 10 Arduina

DIN jde na Digital Pin 9 Arduina

CLK jde na Digital Pin 8 Arduina

VCC přejde na Arduino 3.3V LIGHT přejde na Arduino GND (podsvícení zapnuto)

GND jde do Arduino GND

Nyní, když jsme spojili všechny části dohromady, nezbývá než načíst kód. Na několik sekund se zobrazí úvodní obrazovka a poté můžeme začít měřit intenzitu světla v reálném čase!

Krok 5: Kód projektu

Image
Image
Testování projektu
Testování projektu

Kód projektu se skládá ze 3 souborů.

splash.cui.c

ui.c

BH1750LightMeter.ino

Kód - úvodní obrázek

V prvním souboru splash.c jsou binární hodnoty úvodní obrazovky, která se při spuštění projektu zobrazí na LCD displeji Nokia 5110. Podívejte se na přiložené video, které jsem připravil, abyste zjistili, jak načíst vlastní grafiku do vašeho projektu Arduino.

ui.c Code - uživatelské rozhraní

V souboru ui.c jsou binární hodnoty uživatelského rozhraní, které se zobrazí poté, co projekt zobrazí úvodní obrazovku. Podívejte se na přiložené video, které jsem připravil, abyste zjistili, jak načíst vlastní grafiku do vašeho projektu Arduino.

Kód UVMeter.ino - hlavní program

Hlavní kód projektu je velmi jednoduchý. Musíme zahrnout knihovnu Nokia 5110. Dále deklarujeme některé proměnné. Inicializujeme zobrazení a na 3 sekundy zobrazujeme úvodní obrazovku. Poté jednou vytiskneme ikonu ui a odečteme hodnotu ze senzoru 150 milisekund. Všechna kouzla se dějí ve funkci smyčky:

void loop () {int stringLength = 0; uint16_t lux = lightSensor.readLightLevel (); // Přečíst světlo senzoru = String (lux); // Převod na řetězec stringLength = light.length (); // Potřebujeme znát délku řetězce lcd.clrScr (); lcd.drawBitmap (0, 0, ui, 84, 48); printLight (stringLength); // Vytiskněte řetězec na displeji lcd.update (); zpoždění (150); }

Připojil jsem kód k tomuto Instructable. Chcete-li si stáhnout nejnovější verzi kódu, můžete navštívit webovou stránku projektu:

Krok 6: Testování projektu

Testování projektu
Testování projektu
Testování projektu
Testování projektu

Nyní, když je kód načten, můžeme testovat světelný měřič uvnitř i venku. Testuji to za slunečného jarního dne tady v Řecku. Výsledek, je -li fantastický. Můžeme přesně měřit intenzitu světla pomocí snadno sestavitelného projektu.

Jak vidíte na přiložených fotografiích, měřič světla funguje dobře. Tento projekt je skvělou ukázkou toho, čeho je open source hardware a software schopen. Během několika minut lze postavit tak působivý projekt! Tento projekt je ideální pro začátečníky a jak jsem řekl na začátku, tento projekt je skvělá zkušenost s učením. Rád bych slyšel váš názor na tento projekt. Považujete to za užitečné? Lze do tohoto projektu implementovat nějaká vylepšení? Napište prosím své komentáře nebo nápady do sekce komentářů níže!

Doporučuje: