Temperaturerfassung mit Raspberry Pi und DS1820
(→Ergebnis) |
(→Konfiguration) |
||
(4 dazwischenliegende Versionen von einem Benutzer werden nicht angezeigt) | |||
Zeile 147: | Zeile 147: | ||
Raspbian Wheezy hat schon fast alles installiert, was man braucht. Die folgenden Pakete müssen nachinstalliert werden: |
Raspbian Wheezy hat schon fast alles installiert, was man braucht. Die folgenden Pakete müssen nachinstalliert werden: |
||
− | apt-get install python-rrdtool rrdtool lighttpd php5-common php5-cgi php5 php5-cli python2.7-dev python-openssl |
+ | apt-get install python-rrdtool rrdtool lighttpd php5-common php5-cgi \ |
− | + | php5 php5-cli python2.7-dev python-openssl |
|
− | Für den DHT11 Sensor wird eine Bibliothek von Adafruit benutzt: |
||
− | |||
− | git clone https://github.com/adafruit/Adafruit_Python_DHT.git |
||
− | cd Adafruit_Python_DHT |
||
− | python setup.py install |
||
− | |||
− | Anschließend kann man den Sensor testen: |
||
− | |||
− | /examples/AdafruitDHT.py 11 17 |
||
− | Temp=38.0*C Humidity=29.0% |
||
* pro Sensor eine rrd anlegen. |
* pro Sensor eine rrd anlegen. |
||
Zeile 222: | Zeile 222: | ||
* [https://learn.adafruit.com/dht-humidity-sensing-on-raspberry-pi-with-gdocs-logging?view=all DHT Humidity Sensing on Raspberry Pi or Beaglebone Black with GDocs Logging] |
* [https://learn.adafruit.com/dht-humidity-sensing-on-raspberry-pi-with-gdocs-logging?view=all DHT Humidity Sensing on Raspberry Pi or Beaglebone Black with GDocs Logging] |
||
* [https://www.raspberrypi.org/documentation/remote-access/ssh/passwordless.md SSH ohne Passwort] |
* [https://www.raspberrypi.org/documentation/remote-access/ssh/passwordless.md SSH ohne Passwort] |
||
+ | * [https://blog.bartbania.com/raspberry_pi/temperature-log-howto/ Temperature Log | HowTo] |
||
+ | * [http://blog.bubux.de/stabiler-247-betrieb-des-raspberry-netzwerk-neu-starten/ Stabiler 24/7 Betrieb des Raspberry] |
||
+ | * [http://elinux.org/R-Pi_Troubleshooting#Crashes_occur_with_high_network_load Crashes occur with high network load] |
Aktuelle Version vom 10. Oktober 2015, 17:00 Uhr
Hier entsteht die Dokumentation einer Server- / 19"-Rack Temperaturüberwachung mit einem Raspberry Pi und mehreren DS1820 1-Wire Sensoren sowie einem DHT-11 Sensor für Temperatur und Luftfeuchtigkeit. Basierend auf einer Raspbian Wheezy Installation wird ein lighthttp Webserver aufgesetzt, der mittels PHP eine handvoll Webseiten ausliefert um den Zustand eines Serverracks zu zeigen. Die Temperaturwerte werden in eine RRD geschrieben und mittels rrd graph visualisiert. Ein konfigurierter Schwellwert soll die Administratoren informieren, wenn die Temperaturen zu hoch sind.
Inhaltsverzeichnis |
[Bearbeiten] Stückliste / Alternativen
Nachfolgend die benötigten Bauteile:
- Raspberry Pi 2 Modell B
- Stromversorgung 5V 1,2A min. Micro-USB
- Speicherkarte microSD mind. 4 GB (Class 4 oder besser)
- gew. Anzahl Temperatursensoren DS1820 (oder DS18B20), bedrahtet. Die Sensoren können mit einer 2-adrigen Leitung hintereinander geschaltet werden.
- Sensor für Luftfeuchtigkeit (DHT11)
- Platine zum Aufstecken auf den Raspberry Pi (Prototypen-Board, Lochraster o.ä.)
- div. Schrauben, Muttern, Kabel, Schrumpfschläuche
Anzahl | Bezeichnung | Watterott | vorhanden |
---|---|---|---|
1 | Raspberry Pi 2 Modell B | 38,95 € | |
1 | Micro SD Karte | 10,00 € | |
1 | Steckernetzteil Micro-USB | 5,89 € | |
6 | Temperatursensoren | 12,00 € | |
1 | Platine / Proto-Hat | 4,95 € | |
1 | Temperatur / Luftfeuchtigkeits Sensor | 5,31 € | - € |
2 | Käfigmuttern M6 | - € | |
2 | Schrauben M6 x 20 | - € | |
8 | Schrauben M2,5 x 8 | - € | |
4 | Muttern M2,5 | - € | |
2 | Widerstand 4,7 kΩ | - € | |
diverse | Kabel, Schrumpfschläuche | - € | |
1 | Lochraster Platine | - € | |
1 | Raspberry Pi 2 Modell B 19" Rackmount Winkel | - € | |
Versandkosten | 3,50 € | - € | |
Summe | 80,60 € |
[Bearbeiten] Elektronik
[Bearbeiten] Boot Image
- Raspbian Debian Wheezy von Raspberry Pi Foundation (990 MB).
- In raspi-config das Dateisystem erweitern, den Hostnamen setzen und die Ländereinstellungen vornehmen
- In /boot/config.txt Aktivierung des Device Tree Overlay für 1-wire ergänzen:
- dtoverlay=w1-gpio,gpiopin=4,pullup=on
- In /etc/modules das Laden der nötigen Module ergänzen:
- wire
- w1-gpio pullup=1
- w1-therm
- Prüfen, ob die Sensoren in /sys/bus/w1/devices auftauchen:
- ls /sys/bus/w1/devices/
- 10-00080198fe85 10-00080199088f 10-000801993025 w1_bus_master1
- System aktualisieren:
- apt-get update
- apt-get upgrade
- rpi-update
[Bearbeiten] Konfiguration
Raspbian Wheezy hat schon fast alles installiert, was man braucht. Die folgenden Pakete müssen nachinstalliert werden:
apt-get install python-rrdtool rrdtool lighttpd php5-common php5-cgi \ php5 php5-cli python2.7-dev python-openssl
- pro Sensor eine rrd anlegen.
#!/bin/bash # # Anlegen einer RRD zur Speicherung von Temperaturmessdaten # rrdtool create $1 --step 60 \ DS:temperature:GAUGE:120:U:U \ RRA:AVERAGE:0.5:1:2160 \ RRA:AVERAGE:0.5:5:2016 \ RRA:AVERAGE:0.5:15:2880 \ RRA:AVERAGE:0.5:60:8760 \ RRA:MIN:0.5:1:2160 \ RRA:MIN:0.5:5:2016 \ RRA:MIN:0.5:15:2880 \ RRA:MAX:0.5:1:2160 \ RRA:MAX:0.5:5:2016 \ RRA:MAX:0.5:15:2880
#!/bin/bash # # Anlegen einer RRD zur Speicherung von Luftfeuchtigkeitsmessdaten # rrdtool create $1 --step 60 \ DS:luftfeuchtigkeit:GAUGE:120:U:U \ RRA:AVERAGE:0.5:1:2160 \ RRA:AVERAGE:0.5:5:2016 \ RRA:AVERAGE:0.5:15:2880 \ RRA:AVERAGE:0.5:60:8760 \ RRA:MIN:0.5:1:2160 \ RRA:MIN:0.5:5:2016 \ RRA:MIN:0.5:15:2880 \ RRA:MAX:0.5:1:2160 \ RRA:MAX:0.5:5:2016 \ RRA:MAX:0.5:15:2880
[Bearbeiten] 19" Rackmount
Da kein 3D-Drucker mit einem Bauraum von 19" zur Verfügung steht, genügt hier eine Verschraubung auf nur einer Seite.