
Premessa
In questo tutorial cercheremo di realizzare tramite una fotoresistenza un controllo che ci permetterà di accendere un led quando ci troviamo in una stanza buia e viceversa spengere un led quando la stanza è illuminata. Potete immaginare i mille utilizzi di questo semplice sistema che permette il controllo di questo led tramite i fasci luminosi che “sbattono” sulla fotoresistenza. Il nostro scopo sarà quello di leggere questi valori e creare una soglia che ci fa capire quando dobbiamo accendere o no la luce. La Raspberry Pi permette di impostare il valore ricevuto in ingresso dalla fotoresistenza e calcolare il suo valore se high o low e a sua volta tramite un programma python scriveremo il codice che ci permetterà di costruire il nostro sistema crepuscolare.
LISTA DEI MATERIALI:
- Fotoresistenza
- Raspberry Pi
- Micro SD
- Breadboard
- Jumper Maschio Femmina
- Led
- 1 Resistenza (330 ohm) e un altra 550 ohm circa
(Potete usarne piu di una in serie per raggiungere il valore ohmico)
Svolgimento

L’immagine sopra riportata è molto semplice e facile da intuire. Abbiamo collegato il Pin 26 (GPIO 7) a una resistenza da 330 ohm e poi al led e il negativo del led alla GND. Poi abbiamo collegato il pin 6 quindi la GND a una resistenza all incirca da 550 ohm (potete scegliere voi il valore ohmico da inserire nel progetto e rendere la fotoresistenza più “sensibile”) a sua volta collegata alla fotoresistenza e infine al pin 1 cioè i 3,3 volt della Raspberry Pi. Collegando una fotoresistenza a una resistenza avremo la possibilità di leggere il valore in volt a seconda del buio o della luce a disposizione nella stanza. Quindi manderemo in INPUT nel Pin 24 (GPIO 8) il valore che assume la fotoresistenza e in base alla luce a disposizione la nostra porta GPIO assumerà valore HIGH o LOW. Quando la fotoresistenza assumerà un valore maggiore di 1,5 volt lo stato della porta sarà high e quando sarà inferiore avremo lo stato LOW.
Codice:
#*-* coding:utf-8 *-*
import RPi.GPIO as GPIO
import time
GPIO.setmode(GPIO.BCM)
GPIO.setup(7, GPIO.OUT)
GPIO.setup(8, GPIO.IN)
while True:
a=GPIO.input(8)
if a==1:
GPIO.output(7, True)
if a==0:
GPIO.output(7, False)
Il programma legge il valore in input della fotoresistenza tramite il GPIO 8 e assegna il valore letto a una variabile denominata a successivamente itera un ciclo che indica se a è uguale 1 quindi abbiamo la stanza buia accende il LED. Se a è uguale a 0 viceversa.
Buon Progetto




