Dies ist eine alte Version des Dokuments!
Feuchte-und Temperatur-Sensor - DHT22 am Raspberry Pi betreiben
- 1. Schritt
Sensor anschließen. Dieser benötigt an PIN2 ein Pull up (4,7k - 10k) Wiederstand nach 3,3V (Pin1) und Pin4 Masse. Pin2 wird mit einem beliebigen GPIO verbunden.
- 2. Schritt
Benötigte Software installieren
apt-get install git-core git clone git://git.drogon.net/wiringPi cd wiringPi ./build cd .. git clone https://github.com/technion/lol_dht22 cd lol_dht22 ./configure make
- 3. Schritt
Software starten mit Name des Programms plus Pin nummer, in diesem Fall Pin 4
sudo ./loldht 4 Raspberry Pi wiringPi DHT22 reader www.lolware.net Data not good, skip Humidity = 57.60 % Temperature = 20.40 *C
- 4. Schritt
Kanäle in der Middelware einbinden. Hierzu in der Middelware auf Kanal Hinzufügen und anschließend Kanal erstellen klicken. es wird 1 Kanal für die Temperatur und 1 Kanal für die Luftfeucht benötigt. IDs merken!
- 5. Schritt
Script erstellen
nano /root/dht22script.sh
mit folgendem inhalt
#!/bin/bash WERTE=$( /root/lol_dht22/loldht 4 | grep Humidity) d=`date +%Y-%m-%d-%H-%M` echo "$d ergebnis $WERTE" >> /root/log_vom_dht22.log Hum=$(echo $WERTE | awk {'print $3'}) Temp=$(echo $WERTE | awk {'print $7'}) if [ "$(echo $Hum| sed 's/\.//g')" -gt "0" ] && [ "$(echo $Hum | sed 's/\.//g')" -lt "10000" ];then echo "Humidity: $Hum" wget -O /dev/null "http://<URL der Middelware>/volkszaehler.org/htdocs/middleware.php/data/<ID vom Sensor>.json?operation=add&value=$Hum" fi echo "Temperature: $Temp" if [ "$(echo $Temp | sed 's/\.//g')" -gt "-2000" ] && [ "$(echo $Temp | sed 's/\.//g')" -lt "5000" ];then wget -O /dev/null "http://<URL der Middelware>/volkszaehler.org/htdocs/middleware.php/data/<ID vom Sensor>.json?operation=add&value=$Temp" fi
Script ausführbar machen
chmod +x /root/dht22script.sh
Script testen
/root/dht22script.sh
wenn alles funktioniert müssten nun in der Middelware messwerte erscheinen
- 6. Schritt
cronjob erstellen
crontab -e
folgende Zeite hinzufügen, in diesem Fall wird das Script 1 mal pro stunde ausgeführt
0 * * * * /root/dht22script.sh