CONTENUTO ►
In questa rassegna prenderemo in considerazione il collegamento di una fotoresistenza alle porte analogiche del microcontrollore Arduino. Capiremo come collegare una fotoresistenza ad Arduino, il principio dei dispositivi a semiconduttore e il dispositivo del fotoresistenza / LDR (Light Dependent Resistor). Costruiremo un circuito della lampada con accensione automatica e con cambio automatico della luminosità dei LED in base all’illuminazione della stanza.
Per questa attività sono necessari:
- Arduino Uno / Arduino Nano / Arduino Mega
- photoresistor LDR MLG5516B
- LED e resistenza
- breadboard
- cavi di collegamento
Come funziona fotoresistenza Arduino (datasheet)
Che cos’è unafotoresistenza in Arduino? Una fotoresistenza (LDR MLG5516B) è un dispositivo semiconduttore che riduce la resistenza elettrica quando viene esposto alla luce (alcuni tipi di fotoresistenza possono ridurre la resistenza di due o tre ordini di grandezza). La parte principale di una fotoresistenza è un elemento semiconduttore (ad esempio solfuro di piombo o solfuro di cadmio) disposto in modo da essere esposto alla luce.
Caratteristiche del fotoresistenza (LDR MLG5516B):
- Tensione di alimentazione: max 150 V
- Consumo di energia: 100 mW
- Temperatura di esercizio: da -30°C a +70°C
- Resistenza all’illuminazione di 10 Lux: 5-10 kΩ
Il fenomeno della fotoconduttività è un aumento della conduttività elettrica di un semiconduttore sotto l’influenza della radiazione elettromagnetica. Il principio di funzionamento di una fotoresistenza MLG5516B si basa sulla comparsa di portatori di carica mobili (elettroni) in seguito all’assorbimento dell’energia luminosa da parte del semiconduttore, che ne riduce la resistenza, ossia la conducibilità elettrica aggiuntiva.
Collegamento fotoresistenza LDR ad Arduino
Assemblate il circuito sulla breadboard come mostrato nell’immagine qui sopra. Il principio del circuito è che la resistenza nel circuito cambierà a seconda della luce nella stanza, il che significa che i dati sull’ingresso analogico del microcontrollore cambieranno. Dopo aver assemblato lo schema del circuito con il fotoresistore, collegare la scheda Arduino al computer e caricare il seguente programma con il sensore di luce nel microcontrollore.
Programma Arduino per misurare la luminosità con fotoresistenza
#define LDR A1 // photoresistor sul pin A1 unsigned int value; void setup() { Serial.begin(9600); pinMode(LDR, INPUT); } void loop() { // misurare la tensione su pin A1 value = analogRead(LDR); Serial.println(value); delay(200); }
Spiegazione del codice per misurare la luminosità con fotoresistenza Arduino:
- per comodità, nella prima riga del programma abbiamo assegnato il nome LDR all’ingresso analogico A1 utilizzando la funzione #define;
- le informazioni provenienti dal LDR vengono inviate al monitor di Arduino IDE.
Nell’esempio seguente utilizzeremo una fotoresistenza per accendere automaticamente il LED collegato alla scheda Arduino. I dati del sensore di luce (fotoresistore) saranno trasmessi al monitor IDE di Arduino. A seconda del livello di luce e dei dati del sensore, il LED si accenderà. I parametri possono essere modificati nel programma cambiando il valore nell’istruzione condizionale if. Lo schema del circuito rimane lo stesso della prima figura.
Programma Arduino per illuminazione automatico con fotoresistenza
#define LDR A1 // photoresistor sul pin A1 #define LED 9 // LED sul pin 9 unsigned int value; void setup() { Serial.begin(9600); pinMode(LED, OUTPUT); pinMode(LDR, INPUT); } void loop() { // misurare la tensione su pin A1 value = analogRead(LDR); Serial.println(value); // accende il LED if (value<500) digitalWrite(LED, HIGH); // disattiva il LED if (value>500) digitalWrite(LED, LOW); delay(200); }
Spiegazione del codice per illuminazione automatico con fotoresistenza Arduino:
- abbiamo utilizzato il pin 9 della scheda Arduino come uscita analogica che modifica la luminosità del LED in base al valore della luce;
- il tipo di dati unsigned int specifica che un valore può assumere solo un numero intero positivo e che il valore iniziale del valore è zero.
Conclusioni. Il principio di funzionamento dei fotoresistori è il più semplice possibile, pertanto questi dispositivi a semiconduttore sono ampiamente utilizzati in molti settori della scienza e della tecnologia. Ciò è dovuto all’elevata sensibilità dei fotoresistori (Arduino LDR), alle dimensioni ridotte e alla semplicità di progettazione del dispositivo, alla durata del funzionamento e alla capacità di fornire misure e controlli senza contatto.
Lascia un commento