Interfacciamento del sensore LDR con Arduino Nano

Interfacciamento Del Sensore Ldr Con Arduino Nano



Il resistore dipendente dalla luce ha una vasta applicazione nei progetti dipendenti dalla luce. Con l'aiuto di un microcontrollore come Arduino Nano, l'LDR può essere utilizzato per controllare vari dispositivi in ​​base al livello di intensità della luce. Questa guida copre le basi di LDR e le sue applicazioni con Arduino Nano.

Il contenuto di questo articolo include:







1: Introduzione al sensore LDR



2: Applicazioni di LDR con Arduino Nano



3: Interfacciamento di LDR con Arduino Nano





Conclusione

1: Introduzione al sensore LDR

UN l notte D dipendente R esistore (LDR) è un tipo di resistore che cambia la sua resistenza in base all'intensità della luce a cui è esposto. Al buio, la sua resistenza è molto alta, mentre in piena luce la sua resistenza è molto bassa. Questo cambiamento di resistenza lo rende ideale per i progetti di rilevamento della luce.




LDR fornisce un'uscita di tensione analogica che verrà letta da Arduino ADC sui pin analogici. Il pin di ingresso analogico su Arduino utilizza un ADC per convertire la tensione analogica dall'LDR in un valore digitale. L'ADC ha un intervallo da 0 a 1023, dove 0 rappresenta 0 V e 1023 rappresenta la massima tensione di ingresso (solitamente 5 V per Arduino).

Arduino leggerà i valori analogici usando il file analogRead() funzione nel tuo codice. La funzione analogRead() accetta il numero del pin di input analogico come argomento e restituisce il valore digitale.


I fotoni o particelle di luce svolgono un ruolo cruciale nel funzionamento degli LDR. Quando la luce cade sulla superficie di un LDR, i fotoni vengono assorbiti dal materiale, che quindi libera elettroni nel materiale. Il numero di elettroni liberi è direttamente proporzionale all'intensità della luce, e più elettroni vengono liberati, minore diventa la resistenza dell'LDR.

2: Applicazioni di LDR con Arduino Nano

Di seguito è riportato l'elenco di alcune applicazioni comuni di LDR con Arduino:

    • Controllo automatico dell'illuminazione
    • Interruttore attivato dalla luce
    • Indicatore di livello luminoso
    • Modalità notturna nei dispositivi
    • Sistemi di sicurezza basati sulla luce

3: Interfacciamento di LDR con Arduino Nano

Per utilizzare un LDR con Arduino Nano, è necessario creare un semplice circuito. Il circuito è costituito da LDR, un resistore e Arduino Nano. L'LDR e il resistore sono collegati in serie, con l'LDR collegato al pin di ingresso analogico di Arduino Nano. Verrà aggiunto un LED al circuito in grado di testare il funzionamento di LDR.

3.1: Schema

L'immagine seguente è lo schema di Arduino Nano con sensore LDR.

3.2: Codice

Una volta impostato il circuito, il passo successivo è scrivere il codice per Arduino Nano. Il codice leggerà l'ingresso analogico dall'LDR e lo utilizzerà per controllare un LED o un altro dispositivo basato su diversi livelli di luce.

int LDR_Val = 0 ; /* Variabile per memorizzare il valore della fotoresistenza */
sensore int =A0; /* Perno analogico per fotoresistenza */
int guidato = 12 ; /* Pin di uscita LED */
configurazione nulla ( ) {
Inizio.seriale ( 9600 ) ; /* Velocità di trasmissione per comunicazione seriale */
    modalità pin ( led, USCITA ) ; /* Perno LED impostato COME produzione */
}
anello vuoto ( ) {
LDR_Val = lettura analogica ( sensore ) ; /* Analogico Leggere Valore LDR */
Stampa.seriale ( 'Valore uscita LDR: ' ) ;
Serial.println ( LDR_Val ) ; /* Visualizza LDR Output Val sul monitor seriale */
Se ( LDR_Val > 100 ) { /* Se l'intensità della luce è ALTA */
Serial.println ( ' Alta intensità ' ) ;
digitalWrite ( led, BASSO ) ; /* Il LED rimane spento */
}
altro {
/* Altro Se L'intensità della luce è BASSA Il LED rimarrà acceso */
Serial.println ( 'Bassa intensità ' ) ;
digitalWrite ( led, ALTO ) ; /* LED Acceso Il valore LDR è meno di 100 */
}
ritardo ( 1000 ) ; /* Legge il valore dopo ogni 1 sec */
}


Nel codice sopra usiamo un LDR con Arduino Nano che controllerà il LED usando l'ingresso analogico proveniente da LDR.

Le prime tre righe di codice dichiarano le variabili per memorizzare il file valore della fotoresistenza , IL perno analogico per la fotoresistenza, e il GUIDATO perno di uscita.

Nel impostare() funzione, la comunicazione seriale viene avviata con un baud rate di 9600 e il LED pin D12 viene impostato come uscita.

Nel ciclo continuo() funzione, il valore della fotoresistenza viene letto utilizzando la funzione analogRead(), che è memorizzata nel file LDR_Val variabile. Il valore della fotoresistenza viene quindi visualizzato sul monitor seriale utilizzando la funzione Serial.println().

UN se altro statement viene utilizzato per controllare il LED in base all'intensità luminosa rilevata dalla fotoresistenza. Se il valore della fotoresistenza è maggiore di 100, significa che l'intensità della luce è ALTA e il LED rimane SPENTO. Tuttavia, se il valore della fotoresistenza è inferiore o uguale a 100, significa che l'intensità della luce è BASSA e il LED si accende.

Infine, il programma attende 1 secondo utilizzando la funzione delay() prima di leggere nuovamente il valore della fotoresistenza. Questo ciclo si ripete all'infinito, facendo accendere e spegnere il LED in base all'intensità luminosa rilevata dalla fotoresistenza.

3.3: Uscita in condizioni di luce fioca

L'intensità della luce è inferiore a 100, quindi il LED rimarrà acceso.

3.4: Uscita in condizioni di luce intensa

All'aumentare dell'intensità della luce, il valore LDR aumenterà e la resistenza LDR diminuirà, quindi il LED si spegnerà.

Conclusione

L'LDR può essere interfacciato con Arduino Nano utilizzando un pin analogico. L'uscita LDR può controllare il rilevamento della luce in varie applicazioni. Indipendentemente dal fatto che venga utilizzato per il controllo automatico dell'illuminazione, sistemi di sicurezza basati sulla luce o semplicemente un indicatore del livello di luce, LDR e Arduino Nano possono essere interfacciati per creare progetti che rispondono ai cambiamenti nell'intensità della luce.