DHT11/22

27.07.2015
Først vil jeg starte med at sige tak til Daniel Perron fra Canada, for en superlet
vejledning, som jeg så har omskrevet til dansk her og hjalp mig, da jeg ikke
kunne finde rundt i det 🙂

First of all, a special tnx to Daniel Perron from Canada, for writing the english howto, which I could
translate into danish from and for helping me finding my way when i was lost 🙂

I denne vejledning vil jeg forklare hvordan man bruger en DHT11 til at få
udlæst dataen på en webside, længere nede i vejledningen finder du hvordan
du kan bruge en DHT22 i stedet for.

Husk at DHT11/22 virker ikke via en MCP23017

Min testside med nederstånde kan du finde her
http://home.darkgeej.dk

Links til ting som omhandler projected
Tråden som startet det goo.gl/3octo7
pigio http://abyz.co.uk/rpi/pigpio
r
rdtools http://oss.oetiker.ch/rrdtool/

 

Faq´s

 

Hvor svært er det at bygge ?

Det er relativt nemt hvis man følger alle punkterne, så
kører det med det samme, men det er at fortrække hvis man har prøvet
at rode lige rundt i sin pi i forvejen.

 

Hvad skal jeg bruge?

1x Raspberry pi Rev b+
Apache 2
GPIO installeret
1x DHT11
1x 4,7K Ω modstand

 

Forbind modulet og raspberry pi

dht11_bb

P1 = 3V
P5 = Stel
P15 = Gpio 22

 

Sådan kommer du igang
  1. Opdater din pi
  2. Installer apache2 ovs
  3. Hent pigio
  4. Sådan sætter du pigioservice op
  5. Hent Joan´s modificeret version af DHT22.py
  6. Tid til at teste DHT22.py
  7. Sæt en ramdisk op
  8. Test om ramdisken er loadet
  9. Link /webdata til /var/www/webdata
  10. Hent og lav databasen til rrdtools
  11. Prøv om du kan læse data fra din DHT11
  12. Sæt crontab til at køre din fil hver 5min
  13. Hent scriptet der viser din grafer for dig

Faqs

1, Start med at sikre dig at din pi er helt opdateret

sudo apt-get update

 

2, Installere apache+rrdtools+graph+java  værktøjet

cd ~
sudo apt-get install apache2
sudo apt-get install rrdtool
wget http://code.highcharts.com/zips/Highcharts-4.0.4.zip
sudo unzip Highcharts-4.0.4.zip -d /var/www/charts
sudo chown www-data.www-data -R /var/www/charts/*
echo “deb http://ppa.launchpad.net/webupd8team/java/ubuntu precise main” | tee -a /etc/apt/sources.list echo “deb-src http://ppa.launchpad.net/webupd8team/java/ubuntu precise main” | tee -a /etc/apt/sources.list apt-key adv –keyserver hkp://keyserver.ubuntu.com:80 –recv-keys EEA14886 apt-get updateapt-get install oracle-java7-installer

 

3, Hent pigpio

cd ~
wget abyz.co.uk/rpi/pigpio/pigpio.zip
unzip pigpio.zip
cd PIGPIO
make
sudo make install

(Note, kan let tage et par min før den reagere)

 

4, Sæt pigioserver op

cd /etc/init.d
sudo wget -O pigpiod \
https://googledrive.com/host/0B9H9nJFy3HJcWVhsY2xUel9uUk0
sudo chmod 755 /etc/init.d/pigpiod
apt-get update
apt-get upgrade
sudo update-rc.d pigpiod defaults 9

complete -W “$(ls /etc/init.d/)” service
sudo service pigpiod start

 

5, Hent Joan´s DHT22 der passer til DHT11

cd ~
wget https://www.dropbox.com/s/326si04qiheqfw1/DHT22.py

 

6. Tid til at teste om DHT22.py er sat rigtigt op

sudo python DHT22.py

Her skulle den gerne vise nogen om her
“1 40.6 24.1 0.19 0 0 0 0”

tallene er uden betydning ligenu, så længe den ikke skriver at den
ikke kan finde modulet.

 

7. Lav en ramdisk

sudo mkdir /webdata
sudo nano /etc/fstab

Her efter indsætter du følgende linie

tmpfs      /webdata   tmpfs   defaults,nosuid,uid=www-data,gid=www-data  0      0

Derefter genstarter du systemet
sudo reboot

 

8. Nu skal vi teste om den nye ramdisk er med commandoen

df

Nu skulle den gerne vise noget som det her
“tmpfs             223912      76     223836   1% /webdata”

 

9. link data fra /webdata/ til /var/www/webdata

cd /var/www
sudo ln -s /webdata webdata

Nu er kataloget /webdata linket til /var/www/webdata

 

10. Nu skal databasen til rrdtools laves

cd ~
wget https://dl.dropboxusercontent.com/u/48891705/rpi/DHT11Chart/create_rrdtool_data.sh
chmod +x create_rrdtool_data.sh
./create_rrdtool_data.sh

 

11. Nu skal du lave den fil der kan aflæse dataen fra din DHT11/DHT22

cd ~
wget https://dl.dropboxusercontent.com/u/48891705/rpi/DHT11Chart/readTemp.py
chmod +x readTemp.py

Når den er færdig skal du køre readTemp.py
sudo python readTemp.py

 

12. Nu skal det jo køre automtisk, så du skal ind i crontab

sudo crontab -e

Her sætter du denne linie ind, som kører dit script hver 5 min

*/5 * * * * /home/pi/readTemp.py

 

13. Nu skal der laves en fil så du kan se din graf

cd /var/www
sudo wget https://dl.dropboxusercontent.com/u/48891705/rpi/DHT11Chart/temperature.html

Nu skal du bare vente ca 15min, så har den 3 punkter, så kan den vise dine data.

 

 

Brug en DHT22 istedet for en DHT11

Her skal du lave et par små ændringer i følgende filer

DHT22.PY
DHT11=False

readTemp.py
ISDHT11=False

Forbindelserne er de samme, men i stedet for en 4.7K Ω skal der sidde en 10K Ω

 

Hvordan ændre jeg folderen hvor den gemmer “temperatures.rrd”?

Det er ikke nødvendigt at ændre noget, for filen bliver “skabt” når
du køre kommandoen

./create_rrdtool_data.sh

Så længe at readTemp.py ligger i samme folder, skal du ikke ændre noget.

 

Hvor ændre jeg folderen “webdata” fil en anden folder?

/home/pi/readTemp.py
Kik i linie 87 : webdata = “/var/www”   <– her sætter du din egen sti til foldern

“/var/www/temperature.html”
Linie 249 og 251, her er den relative plads /var/www/

return “stien til den nye placering”

Hvor vælger jeg hvad GPIO den bruger?

“readTemp.py”
Kik i linie 14 : SENSOR_GPIO = 22  <– her sætter du så den GPIO du vil bruge

 

Hvordan reseter jeg temperatures.rrd?

Slet “temperatures.rrd” filen og derefter genskaber
du filen igen, ved at gøre som punkt 9