In questo articolo vi spiegherò come ho realizzato il controllo della temperatura dell’acqua.
Il sensore
Il sensore che ho utilizzato è il DS18B20 un sensore 1 Wire che invia dei dati digitali relativi ai valori della temperatura, la sua installazione è decisamente semplice per attivare l’utilizzo del sensore basta semplicemente utilizzare questi 2 comandi dal sistema operativo :
sudo modprobe w1-gpio sudo modprobe w1-therm
Con questi comandi viene attivato il driver che crea ciclicamente un piccolo file dove viene memorizzata la temperatura monitorizzata, il sensore aggiorna i valori ogni 750millisecondi. Con un semplice codice da PHP si apre il file e si estrappolano i dati che ci interessano per essere visualizzi :
$file = “/sys/bus/w1/devices/28-0000071587d2/w1_slave” ;
$lines = file($file) ;
$temp = explode(“=”, $lines[1]);
$temperatura_acqua = number_format($temp[1] / 1000, 1, “.”,””);
Occorre fare attenzione al nome della cartella “28-0000071587d2” perchè questa cambia in quanto il numero visualizzato è il codice univoco del sensore che è sempre diverso per ogni sensore.
La variabile $temperatura_acqua conterrà il valore della temperatura che verrà visualizzata a video, ogni qualche volta che la pagina principale viene aggiornata automaticamente richiameremo questo codice che aggiorna automaticamente il valore della temperatura.
Schema elettrico
Questo è lo schema elettrico di collegamento del sensore al Raspberry deve essere connesso necessariamente al GPIO 4, è possibile, se si ha necessità di rilevare diverse temperature, collegare più sensori in parallelo in quanto ogni sensore ha un codice univoco e quindi è possibile interrogarli singolarmente.