Inhoudsopgave:

Arduino DIY-lichtmeter met BH1750-sensor - Ajarnpa
Arduino DIY-lichtmeter met BH1750-sensor - Ajarnpa

Video: Arduino DIY-lichtmeter met BH1750-sensor - Ajarnpa

Video: Arduino DIY-lichtmeter met BH1750-sensor - Ajarnpa
Video: How to build an Arduino Light Sensor 2024, Juli-
Anonim
Image
Image
Arduino DIY-lichtmeter met BH1750-sensor
Arduino DIY-lichtmeter met BH1750-sensor

In deze Instructable laat ik je zien hoe je een lichtmeter bouwt met een groot Nokia 5110 LCD-scherm met Arduino.

Het bouwen van een lichtmeter is een geweldige leerervaring. Wanneer u klaar bent met het bouwen van dit project, begrijpt u beter hoe lichtmeters werken en gaat u in actie zien hoe krachtig het Arduino-platform kan zijn. Met dit project als basis en de opgedane ervaring kun je in de toekomst eenvoudig complexere projecten bouwen. U kunt dit project gebruiken om de lichtomstandigheden van uw werkomgeving, van uw planten enzovoort te bewaken. Laten we zonder verder oponthoud beginnen!

Stap 1: Verkrijg alle onderdelen

Krijg alle onderdelen
Krijg alle onderdelen

De onderdelen die nodig zijn om dit project te bouwen zijn deze:

  • Arduino Uno ▶
  • BH1750
  • Nokia 5110 LCD ▶
  • Kleine Breadboard ▶
  • Draden ▶

De kosten van het project bedragen ongeveer $ 12.

Stap 2: De BH1750-lichtsensor

De BH1750 lichtsensor
De BH1750 lichtsensor

De BH1750 lichtintensiteitssensor is een geweldige en zeer gebruiksvriendelijke sensor. Dit breakout-bord wordt geleverd met een ingebouwde 16-bits AD-converter die direct een digitaal signaal kan uitvoeren, er zijn geen ingewikkelde berekeningen nodig.

Dit bord is beter dan een LDR die alleen een spanning afgeeft. Met de BH1750 Lichtsensor kan de intensiteit direct worden gemeten door de luxmeter, zonder dat er berekeningen hoeven te worden gemaakt. De gegevens die door deze sensor worden uitgevoerd, worden direct weergegeven in Lux (Lx).

De sensor maakt gebruik van de I2C-interface, dus het is heel gemakkelijk te gebruiken met Arduino. Je hoeft maar 2 draden aan te sluiten.

Ook de prijs van de sensor is erg laag, het is ongeveer 2 $.

Je kunt het hier krijgen: ▶

Stap 3: Nokia 5110 LCD

Image
Image
De lichtmeter bouwen
De lichtmeter bouwen

De Nokia 5110 is mijn favoriete display voor mijn Arduino-projecten.

De Nokia 5110 is een eenvoudig grafisch LCD-scherm dat oorspronkelijk bedoeld was als scherm voor een mobiele telefoon. Het maakt gebruik van de PCD8544-controller, een CMOS LCD-controller/driver met laag vermogen. Hierdoor heeft dit beeldscherm een indrukwekkend stroomverbruik. Het gebruikt slechts 0,4 mA wanneer het is ingeschakeld, maar de achtergrondverlichting is uitgeschakeld. Het gebruikt minder dan 0,06 mA in de slaapstand! Dat is een van de redenen waarom dit scherm mijn favoriet is. De PCD8544 is gekoppeld aan microcontrollers via een seriële businterface. Dat maakt het display heel gemakkelijk te gebruiken met Arduino.

U hoeft slechts 8 draden aan te sluiten en de volgende bibliotheek te gebruiken:

Deze indrukwekkende bibliotheek is ontwikkeld door Henning Karlsen, die enorm veel moeite heeft gedaan om de Arduino-gemeenschap vooruit te helpen met zijn bibliotheken.

Ik heb een gedetailleerde zelfstudie voorbereid over het gebruik van het Nokia 5110 LCD-scherm met Arduino. Ik heb die video bijgevoegd in deze Instructable, deze zal mogelijk nuttige informatie over het scherm geven, dus ik moedig je aan om deze zorgvuldig te bekijken.

De kosten van het scherm zijn ongeveer $ 4.

Je kunt het hier krijgen: ▶

Stap 4: De lichtmeter bouwen

De lichtmeter bouwen
De lichtmeter bouwen

Laten we nu alle onderdelen met elkaar verbinden.

Eerst sluiten we de BH1750 Lichtsensormodule aan. Het heeft slechts 5 pinnen, maar we zullen er 4 verbinden.

De spanningssensor aansluiten

Vcc Pin gaat naar Arduino's 5V

GND Pin gaat naar Arduino's GND

SCL Pin gaat naar analoge pin 5 van de Arduino Uno

SDA-pin gaat naar analoge pin 4 van de Arduino Uno

Adres pin blijft niet verbonden

De volgende stap is het aansluiten van het Nokia 5110 LCD-scherm.

Het Nokia 5110 LCD-scherm aansluiten

RST gaat naar digitale pin 12 van de Arduino

CE gaat naar digitale pin 11 van de Arduino

DC gaat naar digitale pin 10 van de Arduino

DIN gaat naar digitale pin 9 van de Arduino

CLK gaat naar digitale pin 8 van de Arduino

VCC gaat naar Arduino 3.3V LICHT gaat naar Arduino GND (achtergrondverlichting aan)

GND gaat naar Arduino GND

Nu we alle onderdelen met elkaar hebben verbonden, hoeven we alleen nog maar de code te laden. Er wordt een paar seconden een Splash-scherm weergegeven en dan kunnen we de lichtintensiteit in realtime gaan meten!

Stap 5: De code van het project

Image
Image
Het project testen
Het project testen

De code van het project bestaat uit 3 bestanden.

splash.cui.c

ui.c

BH1750LightMeter.ino

Code - Afbeelding startscherm

In het eerste bestand splash.c staan de binaire waarden van het opstartscherm dat wordt weergegeven op het LCD-scherm van de Nokia 5110 wanneer het project opstart. Bekijk de bijgevoegde video die ik heb voorbereid om te zien hoe u uw aangepaste afbeeldingen in uw Arduino-project kunt laden.

ui.c-code - De gebruikersinterface

In het bestand ui.c zijn er de binaire waarden van de gebruikersinterface die verschijnen nadat het project het opstartscherm toont. Bekijk de bijgevoegde video die ik heb voorbereid om te zien hoe u uw aangepaste afbeeldingen in uw Arduino-project kunt laden.

UVMeter.ino Code - Hoofdprogramma

De hoofdcode van het project is heel eenvoudig. We moeten de Nokia 5110-bibliotheek opnemen. Vervolgens declareren we enkele variabelen. We initialiseren het display en we geven het opstartscherm 3 seconden weer. Daarna printen we het ui-pictogram één keer en lezen we de waarde van de sensor 150 millisseconden. Alle magie gebeurt in de loop-functie:

void loop() {int stringLength=0; uint16_t lux = lightSensor.readLightLevel(); // Lees het sensorlicht = String (lux); //Conversie naar String stringLength = light.length(); //We moeten de String Length lcd.clrScr() weten; lcd.drawBitmap (0, 0, ui, 84, 48); printLight(stringLength); // Druk de tekenreeks af op het scherm lcd.update(); vertraging (150); }

Ik heb de code aan dit Instructable gehecht. Om de nieuwste versie van de code te downloaden, kunt u de webpagina van het project bezoeken:

Stap 6: het project testen

Het project testen
Het project testen
Het project testen
Het project testen

Nu de code is geladen kunnen we de Light Meter binnen en buiten testen. Ik test het op een zonnige lentedag hier in Griekenland. Het resultaat is fantastisch. We kunnen de lichtintensiteit nauwkeurig meten met een eenvoudig te bouwen project.

Zoals je op de bijgevoegde foto's kunt zien, werkt de Light Meter prima. Dit project is een geweldige demonstratie van waartoe open source hardware en software in staat is. Binnen een paar minuten kan men zo'n indrukwekkend project bouwen! Dit project is ideaal voor beginners en zoals ik in het begin al zei, is dit project een geweldige leerervaring. Ik hoor graag uw mening over dit project. Vind je het handig? Zijn er verbeteringen mogelijk in dit project? Plaats uw opmerkingen of ideeën in de opmerkingen hieronder!

Aanbevolen: