Una fotoresistenza è un particolare tipo di resistenza il cui valore (in Ohm) è in versamente proporzionale alla quantità di luce che la colpisce.

Ne deriva che la corrente che passa attraverso una fotoresistenza sia proporzionale alla sorgente luminosa che irradia la resistenza. Vi invito a leggere il seguente articolo per capire meglio il loro funzionamento

Risulta immediato pensare una sua applicazione, ad esempio, in interruttori crepuscolari.

Come prima applicazione vedremo come usare una fotoresistenza per leggere il valore di luminosità ambientale ed inviare tale valore al computer.

Occorrente:

  • Arduino
  • Breadboard (opzionale ma comoda)
  • Una Fotoresistenza
  • Una resistenza da 10KOhm (fondamentale per creare un partitore di tensione con la fotoresistenza)

Per prima cosa costruiamo il circuito (molto semplice) come riportato in figura

Arduino_fotoresistenza photocell_schem

Fatto ciò avviamo l’ambiente di sviluppo dell’arduino e carichiamo il seguente sketch che ci permetterà di avere una lettura, via seriale , del valore della luminosità:

int fotoresistenzaPin = 2; // Pin di collegamento del partitore

int fotoresistenzaValue; // Variavile che memorizzerà la lettura

void setup()

{

Serial.begin(9600); // Inizializzo la seriale

}

void loop()

{

int fotoresistenzaValue = analogRead(fotoresistenzaPin); // Leggo il valore della misurazione

Serial.print("Valore luminosità = ");

Serial.print(fotoresistenzaValue); //Stampo nella seriale il valore letto

delay(1000);

}

Un codice così scritto funziona bene, ma può essere reso più leggibile modificandolo un po’.

Per rendere la lettura della luminosità più gradevole e funzionale impostiamo qualche semplicissima regola.