Eccomi di nuovo online!
Stasera ci occuperemo di collegare una comunissima fotoresistenza ad Arduino e in base alla luce presente si accenderà un Led. Sembra difficile? Non lo è per niente. 
Per realizzare tutto ciò, in primis, diamo un’ occhiata ai collegamenti fisici da fare tra i vari componenti. La fotoresistenza e una resistenza da 1kOhm vanno collegati in serie. Fatto questo colleghiamo al piedino lontano dalla resitenza della fotoresistenza (scusate ma sembra un gioco di parole-.-) la 5V di Arduino e dal lato della resistenza colleghiamo il GND. Dopodichè dove il piedino della fotoresistenza è collegato alla resistenza, esattamente lì, colleghiamo al pin digitale 1. Poi ovviamente collegate un Led al pin 13 di Arduino. Posto il pdf di uno schemino fatto da me. Magari si capisce meglio va.
Schemino collegamenti
E adesso veniamo al codice che spiegherò subito dopo:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 | int light; int ledPin = 13; int photoresistor = 1; void setup() { Serial.begin(9600); pinMode(ledPin, OUTPUT); } void loop() { light = analogRead(photoresistor); light = constrain(light, 970, 1023); //<-- il 970 potete cambiarlo light = map(light, 970, 1023, 0, 255); //in base alle vostre "condizioni" analogWrite(ledPin, light); Serial.println(light); } |
In pratica tutto questo funziona così. La fotoresistenza, dalla “lettura analogica”, prende un valore tra 0 e 1023. Giocando con la quantità luce di che c’ era in stanza ho realizzato che avrei voluto che il Led si accendesse a 970. La funzione constrain è utilizzata in modo tale che solo i valori tra 970 e 1023 vengano presi in considerazione. In pratica se sono presenti altri valori non compresi in quel range la funzione resitituisce 0. La funzione map è usata per mappare questo valore (che sceglierete voi) ad un valore di PWN (che va da 0 a 255) in modo tale da far accendere il Led.
Benissimo provateci anche voi e per ogni dubbio o osservazione o quello che vi pare non esitate a contattarmi. Vi lascio con un video dimostrativo di tutto ciò.
Alla prossimaaaaaa

















