esempio numero 07 – leggere un sensore di luce ed accendere un led quando si trova la luce
ESEMPIO 07 – LEGGERE UN SENSORE DI LUCE e SEGNALARE QUANDO LA
LUCE E’ TROVATA
Verrà letto il valore di un sensore di luce, esterno alla scheda Arduino, e verrà stampato il valore letto sul monitor. In più si deve accendere un Led quando viene trovata la luce.
Per realizzare questo esempio troviamo due difficoltà rispetto all’esempio precedente (il numero 6):
-
– spesso non si conosce a priori se il valore acquisito aumenterà o diminuirà alla variazione della luce.
-
– bisogna tarare in modo opportuno il valore della SOGLIA per la luce.
Il modo più comodo per risolvere il problema è quello pratico. Una volta che abbiamo finito l’esempio lo mandiamo in esecuzione e vediamo i valori acquisiti sul monitor. In questo caso, nelle condizioni di luce del test, avremo che con poca luce i valori sono intorno a 650 mentre con tanta luce avremo dei valori intorno a 300. l’ipotesi di partenza che la luce è trovata quando la luce letta è minore della soglia E’ CORRETTA e NON NECESSITA di aggiustamenti.
Successivamente poniamo l’illuminatore alla distanza voluta e leggiamo il valore sul monitor. Nelle stesse condizioni precedenti leggeremo il valore che oscilla intorno a 360. l’ipotesi di partenza che la luce è trovata quando la luce letta è uguale a 500 (valore mediano della scala) NON E’ CORRETTA e NECESSITA di essere aggiustata. La fissiamo al valore di 360 e ricarichiamo il programma sulla board Arduino (ovviamente il programma in modo automatico e ricompilato prima di essere caricato).
Per questo esempio è richiesto oltre alla board Arduino UNO un circuito con un sensore sensibile alla luce, un cavetto USB e un PC con istallato il programma Arduino.
Il programma:
/**************************************************************
* LEGGERE 1 SENSORI DI LUCE
*
* SCRIVERE IL VALORE DELLA LUCE SUL MONITOR
*
* ACCENDERE UN LED QUANDO SI TROVA LA LUCE
*
**************************************************************/
int val_luce;
int sensorPin = A4;
int led = 6;
int SOGLIA = 500;
void setup()
{
Serial.begin(9600);
pinMode (led,OUTPUT);
digitalWrite(led,LOW); // SPEGNI LED
delay(50);
}
void loop()
{
val_luce=analogRead(sensorPin); // leggere il sensore di luce
delay(5);
Serial.print(” Valore letto sensore di luce = “);
Serial.println(val_luce);
delay(300);
if (val_luce<=SOGLIA) // CERCO LA LUCE
{
digitalWrite(led,HIGH); // TROVATA LA LUCE
Serial.println(” TROVATA LUCE”);
delay(100);
}
else
{
digitalWrite(led,LOW); // NON TROVATA LA LUCE
Serial.println(” “);
delay(100);
}
}
con questo esempio il valore della luce sul sensore collegato al piedino analogico n° 4 viene letto e viene acceso il led quando si trova la luce sotto alla distanza minima fissata.
Dopo la corretta TARATURA, come descritta in precedenza, troviamo che se l’illuminatore è posto ad una distanza superiore a quella scelta il programma non trova la luce e di conseguenza non viene acceso il led (si vede in secondo piano il led verde quando viene acceso). Ricordiamo che il convertitore analogico digitale interno ad Arduino ci potrebbe fornire dei valori che possono in teoria andare da minimo di 0 ad un massimo di 1023.









(104)
Articolo in Evidenza
Le categorie
- .Dicono di NOI
- Album fotografici Francesco
- Album Fotografici Iduesarchiaponi
- Album Fotografici Paolo
- Alta Fotografia
- Altro
- Antichi eserciti ed armi
- Archeologia
- Archeologia1
- Archeologia2
- Archivio Robotica
- Circuiti per Robotica
- Città Fantasma
- Collaboratori
- Corso Robotica 19-20
- Didattica
- Didattica a distanza
- Esempi di Robotica
- Eventi
- Fotografia
- Francesco
- Francesco e Paolo
- Gallerie Fotografiche Francesco
- Gare di Robotica
- Gli Svaghi nel mondo Antico
- I Cibi Romani
- Il blog
- L'Italia che non ti aspetti
- Laboratorio Robotica
- Le sette Meraviglie del mondo
- Le Sette meraviglie del Mondo moderne
- Lezioni On-line
- Link Utili
- Miti e Leggende
- Mitologia Norena
- Notizie
- Paolo
- Per non dimenticare
- Popoli e Civiltà
- Robotica
- Roma Nascosta
- Scrittori e Poeti Antichi
- Scuola
- Si dice… Perchè
- Soluzioni didattica a distanza
- Storie e Personaggi Romani
- Teatro
- Viaggiando …..
- Viaggiare
- Video