Die folgenden Diagramme zeigen die mit AirPi v1.4 und Raspberry Pi ermittelten Umweltdaten wie Temperatur (°C), Relative Luftfeuchtigkeit (%), Luftdruck (hPa), Kohlenstoffmonoxid (CO), Stickstoffdioxid (NO2), Beleuchtungsstärke (Lux) und Lärm. Die folgenden PNG-Grafiken werden aus den Sensor-Daten dynamisch über die API von Xively.com generiert.
AirPi Wetterdaten Salzburg (PNG) weiterlesenArchiv der Kategorie: Rasperry Pi
AirPi-Daemon Startscript
Der AirPi-Daemon „airpi.py“ von Tom Hartley (siehe https://github.com/tomhartley/AirPi) lässt sich mit folgendem Shell-Script leichter starten und stoppen. Das Script startet airpi.py im Hintergrund und leitet alle stderr und stdout Ausgaben in ein Logfile um.
Start und Stop des AirPi-Daemons:
airpid.sh start airpid.sh stop
airpid.sh
#!/bin/bash ### BEGIN INIT INFO # Provides: airpid.sh # Required-Start: $remote_fs $syslog # Required-Stop: $remote_fs $syslog # Default-Start: 2 3 4 5 # Default-Stop: 0 1 6 # Short-Description: AirPi Weather Station Daemon # Description: This service is used to read sensor data from AirPi and upload to Xively.com ### END INIT INFO case "$1" in start) echo "Starting AirPi Daemon" ## cd into airpi directory to make sure all files are found cd /home/pi/workspace/AirPi; ## start airpi.py using script for unbuffered output and redirect output to logfile script -c "sudo python airpi.py" >> airpi.log 2>&1 & ;; stop) echo "Stopping AirPi Daemon" ## serach for airpi.py process and stop it using kill sudo kill `pgrep -f airpi.py` ;; *) echo "Usage: /etc/init.d/airpi.sh start|stop" exit 1 ;; esac exit 0
Wichtig ist, dass airpi.py mit sudo unter Root laufen muss!
Ein Blick in das laufende Logfile von airpi.py lässt zB: tail -f sensor.log zu:
tail -f sensor.log Success: Loaded sensor plugin BMP085-temp Success: Loaded sensor plugin BMP085-pres Success: Loaded sensor plugin BMP085-alt Success: Loaded sensor plugin MCP3008 Success: Loaded sensor plugin DHT22 Success: Loaded sensor plugin DHT22-temp Success: Loaded sensor plugin LDR Success: Loaded sensor plugin LDR_LUX Success: Loaded sensor plugin TGS2600 Success: Loaded sensor plugin MiCS-2710 Success: Loaded sensor plugin MiCS-5525 Success: Loaded sensor plugin Mic Success: Loaded output plugin Print Success: Loaded output plugin Xively ...
Autostart vom AirPi-Daemon
sudo nano /etc/rc.local
Durch Hinzufügen folgender Zeile, wird der AirPi-Daemon nach jedem Reboot automatisch gestartet:
/home/pi/workspace/AirPi/airpid.sh
Liniendiagramm aus Xively-Daten mit Highcharts
Liniendiagramm 1
<script src="http//ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js"></script> <script src="http://code.highcharts.com/stock/highstock.js"></script> <div id="chart1" style="height: 300px;"></div> <script> jQuery(function() { feedid = '******'; key = '******'; channel = 'Air_Temperature'; interval = 900; days = 7; start_date = new Date(); start_date.setHours(start_date.getHours() - 24*days); // load data from xively feed jQuery.getJSON('http://api.xively.com/v2/feeds/'+feedid+'/datastreams/'+channel+'.json?start='+start_date+'&interval='+interval+'?key='+key, function(data) { var xively_datapoints = data.datapoints; var chartdata = []; // convert data format from xively to highcharts for (i = 0; i < xively_datapoints.length; i++) { chartdata.push([ Date.parse(xively_datapoints[i].at), parseFloat(xively_datapoints[i].value) ]); } // create the chart using highcharts line diagram jQuery('#chart1').highcharts('StockChart', { rangeSelector : { selected : 1 }, exporting: { chartOptions:{ yAxis: { labels: { style: { color: '#000', fontSize: '14px'} } } } }, series : [{ name : channel, data : chartdata, tooltip: { valueDecimals: 2 } }] }); }); }); </script>
Liniendiagramm 2
<script src="http//ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js"></script> <script src="http://code.highcharts.com/stock/highstock.js"></script> <div id="chart2" style="height: 300px;"></div> <script> jQuery(function() { feedid = '******'; key = '*****'; channel = 'Air_Temperature'; interval = 900; days = 7; start_date = new Date(); start_date.setHours(start_date.getHours() - 24*days); // load data from xively feed jQuery.getJSON('http://api.xively.com/v2/feeds/'+feedid+'/datastreams/'+channel+'.json?start='+start_date+'&interval='+interval+'?key='+key, function(data) { var xively_datapoints = data.datapoints; var chartdata = []; // convert data format from xively to highcharts for (i = 0; i < xively_datapoints.length; i++) { chartdata.push([ Date.parse(xively_datapoints[i].at), parseFloat(xively_datapoints[i].value) ]); } // create the chart using highcharts line diagram jQuery('#chart2').highcharts({ title: { text: 'Aktuelle Temperatur', x: -20 }, subtitle: { text: 'Quelle: Xively.com', x: -20 }, xAxis: { type: 'datetime', }, yAxis: { title: { text: 'Temperatur (C)', }, plotLines: [{ value: 0, width: 1, color: '#808080', }] }, tooltip: { valueSuffix: 'C', }, series: [{ name: channel, data: chartdata, tooltip: { valueDecimals: 2 }, }], }); }); });
AirPi Wetterwerte Salzburg Stadt
Die obigen Diagramme zeigen die mit AirPi v1.4 und Raspberry Pi ermittelten Umweltdaten wie Temperatur (°C), Relative Luftfeuchtigkeit (%), Luftdruck (hPa), Kohlenstoffmonoxid (CO), Stickstoffdioxid (NO2), und Rauchgase sowie die Beleuchtungsstärke (Lux) und der Umgebungslärm. Die Grafiken werden aus den Sensor-Daten dynamisch über die API von Xively.com mit Hilfe der JavaScript-Library Highcharts generiert.
Die dargestellten Werte der Gas-Sensoren wurden nicht mit der vorherrschenden Temperatur korrigiert – auch die Umrechnung „ppm“ erfolgte nur mit geschätzten Werten! Zeiträume in denen keine Daten zur Verfügung stehen, werden als durchgehende Linien dargestellt.
Diagramm-Beispiele:
AirPi v1.4 mit Raspberry Pi (Model B) Wetterstation
Standort: Salzburg Stadt, Österreich
Latitude: 47.7672099412293
Longitude: 13.0753720089843
Höhe: 430 m ü. d. Meer, 7 m ü. d. Boden
AirPi Wetterstation mit Raspberry Pi
„AirPi v1.4“ ist eine mit Umwelt-Sensoren bestückte Zusatzplatine, für den Raspberry Pi, der so zu einer Wetterstation erweitert wird, oder zur Raumklima-Überwachung verwendet werden kann. AirPi wurde von Alyssa Dayan und Tom Hartley aus England im Rahmen eines Projektes an der Westminster School entwickelt. Die offizielle Projekt-Webseite ist: http://airpi.es/
Der Beitrag beschreibt den Zusammebau des AirPi-Bausatzes und die Einrichtung eines Raspberry Pi als unabhängige Wetterstation, die Anbindung an Xively.com zur Messdaten Dokumentation und die Auswertung und grafische Darstellung der Messwerte im Web.
Raspberry Pi Webcam: An der Salzach
Raspberry Pi – Webcam
Raspberry Pi (Model B+)
Kameramodul v1.3: 5-MPixel-Sensor (2592 x 1944 Pixel)
Aktualisierung: ~10min
Standort: Salzburg-Süd/Elsbethen, an der Salzach
Blickrichtung: SW, Richtung Untersberg
Raspberry Pi Webcam
Die Raspberry Pi Webcam ist eine kleine 5M Pixel HD-Kamera, die auf einer kleinen Zusatzplatine geliefert wird und über ein Flachbandkabel an die CSI Schnittstelle des Raspberry Pi angeschlossen wird.
Technische Daten
- 5MP Omnivision 5647 Camera Modul
- Kompatibilität zu Raspberry Pi Model A und Model B
- Fotoauflösung: 2592 x 1944 p
- 1080p HD Videoaufnahme @ 30fps, 720p @ 60fps und 640x480p @60/90
- Anschluss: 15-pin MIPI Camera Serial Interface (CSI)
- Abmessungen: 12,2 x 9,4 x 3 cm
- Gewicht: 18 g
- Preis: ca 20,- EUR (Pi-Cam bei Amazon*)
- Alternative: NoIR Pi-Cam ohne IR-Filter für Nachtaufnahmen (NoIR-Cam bei Amazon*)
Raspberry Pi Display
Von Watterott ist ein kleines 2.83″ Farb-Touch-Display erhältlich, das einfachen auf den GPIO-Port eines Raspberry Pi’s aufgesteckt werden kann. Das Display verwendet weder den HDMI-Port noch muss es extra programmiert werden – es verwendet den Raspberry PI Framebuffer und kann daher die Konsole oder auch X darstellen. Die X-Öberfläche lässt sich auch mit der Touch-Oberfläche bedienen.
Technische Daten des RPi Display von Watterott
- Revision: 1.0
- Größe: 2.83″ (43.2 x 57.6mm)
- Typ: TFT Transmission
- Auflösung: 320×240 Pixel
- Farben: 262 K
- Hintergrundbeleuchtung: 4 LED (dimmbar, PWM)
- Touch Controller: TI ADS7846
- Schnittstelle: SPI (Touch Controller + Display)
- Stromversorgung: 3.3-5V (über GPIO)
- Abmessungen: 50.2 x 69.3mm
- Preis: ca 30,- EUR (RPi-Display bei Amazon.de*)
Webseite: http://www.watterott.com/de/RPi-Display
GIT-Repository: http://github.com/watterott/RPi-Display
Raspberry Pi
Der Raspberry Pi ist ein sehr einfach aufgebauer kleiner und sehr günstiger Einplatinencomputer. Die Platine ist mit einem 700 MHz (übertacktbar bis 1 GHz) ARM11 Prozessor, 512 MByte Arbeitsspeicher (bei Model B) bestückt. Dieser Beitrag beschreibt die Installation von Raspbian und Konfiguration von WLAN, SSH, VNC, Webserver usw. für den Betrieb.
Technische Daten des Raspberry Pi
- SoC: Broadcom BCM2835
- CPU: ARM1176JZF-S (700 MHz)
- GPU: Broadcom VideoCore IV
- Arbeitsspeicher (SDRAM): 256 MB bei Model A und 512 MB Model B
- USB-2.0-Anschlüsse: 2
- Videoausgabe: FBAS Chinch-Anschluss, HDMI
- Tonausgabe: 3,5-mm-Klinkenstecker (analog), HDMI (digital)
- Nicht-flüchtiger Speicher: SD-Kartenlesser für SDHC und SDXC/MMC/SDIO
- Netzwerk: 10/100-MBit-Ethernet-Controller
- Schnittstellen: Bis zu 17 GPIO-Pins, SPI, I²C, UART, EGL
- Leistungsaufnahme: 5 V, 700 mA (3,5 Watt)
- Stromversorgung: 5-V-Micro-USB-Anschluss (Micro-B) oder 4 × AA-Batterien
- Größe: 85,60 mm × 56 mm × 21 mm
- Preis: ab 35,- EUR (Raspberry Pi bei Amazon*)