Arduino, la piattaforma di programmazione più conosciuta al mondo, ha bisogno di sensori per tradurre la realtà in bit.
Quali applicazioni utili con Arduino e le fotoresistenze LDR ?
Le fotoresistenze LDR (Light Dependent Resistor), ma in generale i sensori di luce, possono essere utilizzati con la scheda Arduino per:
– realizzare un circuito crepuscolare, che accende le luci di casa quando c’è buio
– misurare la luce in ufficio o in casa per regolare al meglio la luce delle lampadine alogene o a led (dimmer).
– dirigere il robot con piattaforma Arduino verso fonti di luce
– regolare la direzione dei pannelli fotovoltaici automaticamente per costruire un inseguitore solare con Arduino
– regolatore di volume audio
Come usare le fotoresistenze LDR con Arduino ?
Il mio amico Aldo mi ha chiesto una applicazione con le fotoresistenze da utilizzare nel suo grandioso progetto didattico dedicato all’automazione industriale.
Prima di utilizzare questo sensore di luce vediamo come funziona una fotoresistenza. Comprenderemo meglio come utilizzarla nei nostri progetti con Arduino.
Una foto-resistenza, come suggerisce il nome, è una resistenza che ha la capacità di cambiare il suo valore ohmmico in funzione della luce che la illumina.
Se la luce è forte allora la sua resistenza è piccola. Al contrario al buio la sua resistenza è molto alta. Si dice che la fotoresistenza varia il suo valore ohmmico in modo inversamente proporzionale alla luce incidente sulla sua superficie attiva.
E adesso che so tutto questo come la uso con Arduino?
La scheda Arduino (questo discorso vale per la scheda Arduino UNO, come per tutti gli altri modelli) può misurare solo le tensioni in ingresso ai suoi pin/input analogici. Questo significa che si deve utilizzare un “trucco” per misurare indirettamente il valore resistivo attraverso la misura diretta di una tensione.
Il trucco è utilizzare una seconda resistenza di valore noto e collegarla in serie alla fotoresistenza. Si collega il 5 Volt di Arduino ad un polo della fotoresistenza, si collegano l’altro polo della fotoresistenza ad un polo della resistenza R e finalmente si collega l’altro polo della resistenza R al pin di Arduino chiamato GND. In questo modo hai creato un partitore di tensione.
Collegando un pin analogico della scheda Arduino al punto in cui sono collegati un polo della resistenza R ed uno della fotoresistenza puoi misurare la tensione proporzionale alla luce che illumina la fotoresistenza.
Se vuoi che la tensione salga all’aumentare della luce allora devi collegare la fotoresistenza al pin 5 V di Arduino. Se vuoi che la tensione sale all’aumentare del buio allora devi collegare la fotoresistenza al pin GND di Arduino.
Riporto sia lo schema elettrico che quello pratico per collegare i pin di Arduino con la breadboard. In questo circuito la tensione sale all’aumentare della luce che illumina la parte sensibile del fotoresistore (la parte sensibile è quella che vedi nell’immagine che precede l’articolo).


Come calcolare la resistenza di partitore con le fotoresistenze LDR ?
Partiamo col dire che dobbiamo conoscere le caratteristiche della fotoresistenza che stiamo utilizzando. I fotoresistori principalmente si differenziano per la resistenza che misurano quando li si sottopone ad una certa quantità di luce nota. Ci sono alcuni parametri per esempio:
– R10 definisce la resistenza minima e massima che potresti misurare ai poli della fotoresistenza quando viene illuminata da una luce con quantità 10 lux
– R100 definisce la resistenza tipica che potresti misurare ai poli della fotoresistenza quando viene illuminata da una luce con quantità 100 lux
– R05 definisce la resistenza dopo che è stata messa al buio per almeno 5 secondi
La quantità di luce viene misurata in lux, ma per fare degli esempi pratici la luce della luna ha 1 lux, in un ufficio ben illuminato puoi misurare 500 lux, la luce del sole può variare dai 32’000 (cielo nuvoloso) ai 100’000 lux (cielo azzurro).
Questi parametri sono molto importanti e la fotoresistenza va acquistata in base a quanta luce dobbiamo misurare, cioè qual’è la sua applicazione finale. Se mettiamo il sensore di luce in un ufficio per accendere le lampadine solo quando la luce del sole è calata a sufficienza, allora il parametro R100 ci guiderà nella scelta del valore di resistenza da mettere nel partitore di tensione. In alternativa devi misurare la resistenza del sensore quando viene illuminato dalla luce di riferimento (quella a cui prevedi lavorerà il sensore).
Esempio pratico: misura di luce in ufficio/casa per crepuscolare
Ho un sensore fotoresistenza con un parametro R10 con 10 lux di luce, che varia dai 20 ai 50 kohm, ed un parametro R05 con buio completo che è maggiore di 10 Mohm. Se penso di utilizzarlo per misurare la luce di un ufficio o casa metterò una resistenza nel circuito del partitore di tensione uguale ad un valore compreso tra 20 e 50 kΩ. Mettiamo che per semplicità mettiamo una resistenza che ha un valore medio tra il minimo ed il massimo per cui una 39 kΩ. Se misuro la tensione nel punto dove collego il pin analogico di Arduino dovrei misurare una tensione che può variare tra un minimo di 2,2 Volt ed un massimo di 3,3 Volt. Ricordati di non mettere la mano davanti al sensore fotoresistenza quando fai le misure per non fare ombra alla fotoresistenza stessa.
ESEMPIO pratico: accendere un relè con una fotoresistenza LDR
Voglio accendere un relè miniatura da 5 Volt. La resistenza della bobina di eccitazione del relè può variare a seconda della potenza del relè tra i 35 e i 2000Ω. Nel nostro caso pratico abbiamo la bobina del relè che ha una resistenza di 125Ω. Il relè si accende quando lo alimento con un minimo di 4 Volt. Il che significa che se voglio accenderlo devo fornirgli una corrente minima di 32 mA. La fotoresistenza, quando illuminata, deve far passare all’interno di se la corrente che serve al relè per eccitarsi, cioè accendersi. Calcolando con la legge di Ohm la resistenza minima che deve avere la fotoresistenza, con una caduta di potenziale ai suoi poli di 1 Volt, si ottiene 31Ω. Guardando il grafico dell’andamento della resistenza del sensore di luce rispetto alla luce incidente possiamo vedere come un valore così basso di resistenza lo si ottiene esponendo la fotoresistenza solo alla luce del sole.

Il grafico ci dice anche che è molto difficile, se non impossibile, eccitare un relè direttamente con una fotoresistenza. In nostro aiuto ci viene l’elettronica. Utilizzando un transistor NPN possiamo aumentare la corrente, o meglio diminuire la quantità di luce che deve illuminare la fotoresistenza. Vediamo il circuito elettrico nell’immagine che segue. Quello a sinistra attiva il relè quando la fotoresistenza è in presenza di luce. Quello a destra in presenza di buio.

Come tarare il circuito elettrico con fotoresistenza
Si deve esporre il sensore di luce, la fotoresistenza, ad una quantità di luce che riteniamo quella che deve esserci per eccitare il relè. Questa quantità di luce varia a seconda della vostra applicazione, per cui è una quantità che devi scegliere tu. Girare il trimmer fino a che il relè si eccita/accende. Quando la bobina del relè si eccita produce un clack sonoro.
Aldo mi ha chiesto una cosa veloce per cui vi rimando ad un altro tutorial di programmazione Arduino fatto dall’amico Mauro Alfieri.
Qui trovi il datasheet dei sensori LDR tipicamente utilizzati con Arduino.
Se hai idee su come migliorare questo articolo scrivimi.
Pubblicità