Arduino Nano - LDR Module

De LDR lichtsensor module kan het licht in zijn omgeving waarnemen en meten. Het heeft twee outputs: één digitale output die laag (LOW) of hoog (HIGH) kan zijn, en één analoge output.

Deze handleiding laat u zien hoe u een Arduino Nano en een LDR lichtsensor module kunt gebruiken om het licht te detecteren en de hoeveelheid licht te meten. We behandelen het volgende:

LDR Light Sensor Module
image source: diyables.io

Later kunt u de code aanpassen zodat bij het detecteren van licht een LED of een lampje wordt ingeschakeld via een relais.

Als u liever een lichtsensor in zijn ruwe vorm gebruikt, raad ik aan de tutorial over de Arduino Nano - Light Sensor te bekijken.

Hardware Benodigd

1×Official Arduino Nano
1×Alternatief: DIYables ATMEGA328P Nano Development Board
1×USB A naar Mini-B USB-kabel
1×LDR Lichtsensor Module
1×Jumperdraden (man-vrouw)
1×(Aanbevolen) Schroefklem Uitbreidingsboard voor Arduino Nano
1×(Aanbevolen) Breakout Uitbreidingsboard voor Arduino Nano
1×(Aanbevolen) Stromsplitter voor Arduino Nano

Of u kunt de volgende kits kopen:

1×DIYables Sensorkit (30 sensoren/displays)
1×DIYables Sensorkit (18 sensoren/displays)
Openbaarmaking: Sommige van de links in deze sectie zijn Amazon-affiliate links. We kunnen een commissie ontvangen voor aankopen die via deze links worden gedaan, zonder extra kosten voor u. We waarderen uw steun.

Over de LDR Lichtsensor Module

De LDR lichtsensor module kan worden gebruikt om te detecteren of er licht is, of om te meten hoeveel licht aanwezig is in de omgeving. Hij biedt twee mogelijkheden via een digitale output pin en een analoge output pin.

Pinout

De LDR lichtsensor module heeft vier pinnen met specifieke functies:

  • VCC pin: Sluit deze pin aan op een voedingsbron (tussen 3,3V en 5V).
  • GND pin: Sluit deze pin aan op de aarde (0V) van de voedingsbron.
  • DO pin: Dit is een digitale output pin. Wanneer het donker is, is de output HIGH, en wanneer het licht is, is de output LOW. U kunt de drempelwaarde voor donker/licht afstellen met een ingebouwde potentiometer.
  • AO pin: Dit is een analoge output pin. De uitgangswaarde daalt wanneer het licht feller wordt en stijgt wanneer het donkerder wordt.
LDR Light Sensor Module Pinout
image source: diyables.io

Bovendien bevat de LDR lichtsensor module twee LED-indicatoren:

  • De PWR-LED geeft de stroomstatus aan.
  • De DO-LED geeft de lichtstatus van de DO pin weer: deze gaat aan bij licht en uit bij donker.

Hoe Werkt Het

Betreffende de DO pin:

  • De module heeft een ingebouwde potentiometer waarmee u de gevoeligheid of lichtdrempel kunt instellen.
  • Wanneer de lichtintensiteit in de omgeving hoger is dan de drempelwaarde (beschouwd als licht), wordt de uitgangspin van de sensor LOW en gaat de DO-LED branden.
  • Wanneer de lichtintensiteit lager is dan de drempelwaarde (beschouwd als donker), wordt de uitgangspin HIGH en gaat de DO-LED uit.

Betreffende de AO pin:

  • De uitgelezen waarde van de AO pin daalt naarmate de lichtintensiteit toeneemt (meer licht).
  • De uitgelezen waarde van de AO pin stijgt naarmate de lichtintensiteit afneemt (minder licht).

Let op: het afstellen van de potentiometer heeft geen invloed op de waarde die wordt uitgelezen van de AO pin.

Bedradingsschema

Aangezien de lichtsensor module twee outputs heeft, kunt u ervoor kiezen er één of beide te gebruiken, afhankelijk van uw behoefte.

  • Het bedradingsschema tussen Arduino Nano en de LDR lichtsensor module bij gebruik van alleen DO pin.
Arduino Nano LDR Light Sensor Module wiring diagram

This image is created using Fritzing. Click to enlarge image

  • Het bedradingsschema tussen Arduino Nano en de LDR lichtsensor module bij gebruik van alleen AO pin.
Arduino Nano LDR Module wiring diagram

This image is created using Fritzing. Click to enlarge image

  • Het bedradingsschema tussen Arduino Nano en de LDR lichtsensor module bij gebruik van zowel AO als DO.
Arduino Nano Light Sensor Module wiring diagram

This image is created using Fritzing. Click to enlarge image

Arduino Nano Code - Waarde uitlezen van DO pin

/* * Deze Arduino Nano code is ontwikkeld door newbiely.nl * Deze Arduino Nano code wordt zonder enige beperking aan het publiek beschikbaar gesteld. * Voor volledige instructies en schema's, bezoek: * https://newbiely.nl/tutorials/arduino-nano/arduino-nano-ldr-module */ #define DO_PIN 2 // Arduino Nano's pin connected to DO pin of the ldr module void setup() { // Initialize the Serial to communicate with the Serial Monitor. Serial.begin(9600); // initialize the Arduino Nano's pin as an input pinMode(DO_PIN, INPUT); } void loop() { int light_state = digitalRead(DO_PIN); if (light_state == HIGH) Serial.println("The light is NOT present"); else Serial.println("The light is present"); }

Snelle Stappen

  • Kopieer bovenstaande code en open deze met de Arduino IDE
  • Klik op de Upload knop in de Arduino IDE om de code te uploaden naar de Arduino Nano
  • Bedek en ontbedek de LDR lichtsensor module met uw hand of een voorwerp
  • Bekijk het resultaat in de Seriële Monitor.
COM6
Send
The light is present The light is present The light is NOT present The light is NOT present The light is NOT present The light is present The light is present The light is present
Autoscroll Show timestamp
Clear output
9600 baud  
Newline  

Als u merkt dat de LED-status constant aan of uit blijft, ongeacht de hoeveelheid licht, kunt u de potentiometer aanpassen. Hiermee stelt u de lichtgevoeligheid van de sensor nauwkeurig af.

Daarnaast kunt u de code aanpassen zodat er een LED of lampje aangaat wanneer er licht wordt gedetecteerd. U kunt ook een servo motor laten draaien. Raadpleeg voor gedetailleerde instructies de tutorials onderaan deze handleiding.

Arduino Nano Code - Waarde uitlezen van AO pin

/* * Deze Arduino Nano code is ontwikkeld door newbiely.nl * Deze Arduino Nano code wordt zonder enige beperking aan het publiek beschikbaar gesteld. * Voor volledige instructies en schema's, bezoek: * https://newbiely.nl/tutorials/arduino-nano/arduino-nano-ldr-module */ #define AO_PIN A0 // Arduino Nano's pin connected to AO pin of the ldr module void setup() { // Initialize the Serial to communicate with the Serial Monitor. Serial.begin(9600); } void loop() { int light_value = analogRead(AO_PIN); Serial.print("AO value: "); Serial.println(light_value); }

Snelle Stappen

  • Kopieer bovenstaande code en open deze met de Arduino IDE
  • Klik op de Upload knop in de Arduino IDE om de code te uploaden naar de Arduino Nano
  • Bedek en ontbedek de LDR lichtsensor module met uw hand of een voorwerp
  • Bekijk het resultaat in de Seriële Monitor.
COM6
Send
AO value: 145 AO value: 146 AO value: 146 AO value: 572 AO value: 678 AO value: 945 AO value: 956 AO value: 1001 AO value: 1002 AO value: 1012 AO value: 1013 AO value: 645 AO value: 546 AO value: 346 AO value: 172
Autoscroll Show timestamp
Clear output
9600 baud  
Newline  

Video Tutorial

We overwegen het maken van videotutorials. Als u videotutorials belangrijk vindt, abonneer u dan op ons YouTube-kanaal om ons te motiveren de video's te maken.

※ ONZE BERICHTEN

  • U bent welkom om de link naar deze tutorial te delen. Gebruik onze inhoud echter niet op andere websites. We hebben veel moeite en tijd gestoken in het maken van de inhoud, respecteer alstublieft ons werk!