Grensesnitt LDR -sensor med Arduino nano

Grensesnitt LDR -sensor med Arduino nano

Lysavhengig motstand har en enorm anvendelse i lysavhengige prosjekter. Ved hjelp av en mikrokontroller som Arduino Nano, kan LDR brukes til å kontrollere forskjellige enheter basert på lysintensitetsnivået. Denne guiden dekker grunnleggende om LDR og dens applikasjoner med Arduino Nano.

Dette artikkelinnholdet inkluderer:

1: Introduksjon til LDR -sensor

2: Applikasjoner av LDR med Arduino Nano

3: grensesnitt LDR med Arduino nano

    • 1: Skjematisk
    • 2: Kode
    • 3: Utgang under svakt lys
    • 4: Utgang under sterkt lys

Konklusjon

1: Introduksjon til LDR -sensor

EN Light DEpendent REsistor (LDR) er en type motstand som endrer dens motstand basert på lysintensiteten den blir utsatt for. I mørket er motstanden veldig høy, mens den i sterkt lys er motstanden veldig lav. Denne endringen i motstand gjør det best for lysfølende prosjekter.


LDR gir analog spenningsutgang som vil bli lest av Arduino ADC ved analoge pinner. Den analoge inngangspinnen på Arduino bruker en ADC for å konvertere den analoge spenningen fra LDR til en digital verdi. ADC har et område fra 0 til 1023, med 0 som representerer 0V og 1023 som representerer maksimal inngangsspenning (vanligvis 5V for Arduino).

Arduino vil lese de analoge verdiene ved å bruke Analogread () Funksjon i koden din. Analogread () -funksjonen tar det analoge inngangsnummeret som et argument og returnerer den digitale verdien.


Fotoner eller lette partikler spiller en avgjørende rolle i driften av LDR -er. Når lys faller på overflaten av en LDR, blir fotoner absorbert av materialet, som deretter frigjør elektroner i materialet. Antall gratis elektroner er direkte proporsjonalt med lysintensiteten, og jo mer elektroner som er frigjort, jo lavere blir LDR -motstanden.

2: Applikasjoner av LDR med Arduino Nano

Følgende er listen over noen vanlige applikasjoner av LDR med Arduino:

    • Automatisk belysningskontroll
    • Lysaktivert bryter
    • Lysnivåindikator
    • Nattmodus i enheter
    • Lysbaserte sikkerhetssystemer

3: grensesnitt LDR med Arduino nano

For å bruke en LDR med Arduino Nano, må det opprettes en enkel krets. Kretsen består av LDR, en motstand og Arduino nano. LDR og motstanden er koblet i serie, med LDR koblet til den analoge inngangspinnen til Arduino nano. En LED vil bli lagt til kretsen som kan teste LDR -fungerer.

1: Skjematisk

Følgende bilde er det skjemaet til Arduino nano med LDR -sensor.

2: Kode

Når kretsen er satt opp, er neste trinn å skrive koden for Arduino Nano. Koden vil lese den analoge inngangen fra LDR og bruke den til å kontrollere en LED eller annen enhet basert på forskjellige lysnivåer.

int ldr_val = 0; /*Variabel for å lagre fotoresistorverdi*/
int sensor = A0; /*Analog pinne for fotoresistor*/
int LED = 12; /*LED -utgangspinne*/
void setup ()
Serie.Begynn (9600); /*Baudfrekvens for seriell kommunikasjon*/
pinmode (LED, output); / *LED -pinne satt som utgang */

void loop ()
LDR_VAL = Analogread (sensor); /*Analog Les LDR -verdi*/
Serie.Print ("LDR Output Value:");
Serie.Println (LDR_VAL); /*Vis LDR -utgang VAL på seriell skjerm*/
if (ldr_val> 100) /*Hvis lysintensiteten er høy* /
Serie.println ("høy intensitet");
DigitalWrite (LED, lav); /*LED forblir av*/

annet
/*Annet hvis lysintensiteten er lav LED vil forbli på*/
Serie.println ("lav intensitet");
digitalwrite (LED, høy); /* LED Slå på LDR -verdien er mindre enn 100*/

forsinkelse (1000); /*Leser verdi etter hver 1 sek*/


I koden over bruker vi en LDR med Arduino Nano som vil kontrollere LED ved hjelp av den analoge inngangen fra LDR.

De tre første kodelinjene erklærer variabler for å lagre Fotoresistorverdi, de Analog pin for fotoresistoren, og Led Utgangsnål.

I oppsett () Funksjon, seriekommunikasjonen initieres med en baudfrekvens på 9600 og LED -pinne D12 er satt som utgang.

I Løkke() funksjon, fotoresistorverdien blir lest ved bruk av analograad () -funksjonen, som er lagret i LDR_VAL variabel. Fotoresistorverdien vises deretter på seriemonitoren ved bruk av serien.println () funksjon.

An If-Else Uttalelse brukes til å kontrollere LED -en basert på lysintensiteten oppdaget av fotoresistoren. Hvis fotoresistorverdien er større enn 100, betyr det at lysintensiteten er høy, og LED forblir av. Imidlertid, hvis fotoresistorverdien er mindre enn eller lik 100, betyr det at lysintensiteten er lav, og at lysdioden slås på.

Til slutt venter programmet på 1 sekund ved å bruke forsinkelsen () -funksjonen før du leser fotoresistorverdien igjen. Denne syklusen gjentar seg på ubestemt tid, slik at LED slår av og på basert på lysintensiteten oppdaget av fotoresistoren.

3: Utgang under svakt lys

Lysintensiteten er mindre enn 100 så LED vil forbli på.

4: Utgang under sterkt lys

Når lysintensiteten øker vil LDR -verdien øke og LDR -motstanden vil avta slik at LED vil slå seg av.

Konklusjon

LDR kan kobles sammen med Arduino Nano ved hjelp av en analog pinne. LDR -utgangen kan kontrollere lysfølelse i forskjellige applikasjoner. Enten det brukes til automatisk belysningskontroll, lysbaserte sikkerhetssystemer, eller bare en indikator for lysnivå, kan LDR og Arduino Nano kobles til for å lage prosjekter som reagerer på endringer i lysintensitet.