Upload files to ''

This commit is contained in:
Walter Gussmann 2018-06-30 10:56:36 +02:00
parent 89d4df5524
commit 3ab2ae2ddc

104
README.md
View File

@ -1,74 +1,30 @@
# Wetterdaten mit dem Raspberry Pi messen
**Ziel:** Mit zwei Sensoren und einem Raspberry Pi soll die Temperatur,
Luftdruck und Luftfeuchtigkeit an zwei Stellen (outdoor/indoor9 gemessen werden.
## Hardware
- Raspberry Pi 3 (geht auch mit älteren Modellen + WLAN-Modul)
- BOSCH BME280 (Bezugsquelle: watterott.com)
- Adafruit BMP280 (Versuchsweise, ohne Luftfeuchtigkeit)
![Sensor BME280](../img/bme280.png)
## Anschluss der Sensoren
```
Sensor Raspberry Pi
GND ------- GND
NC -------
VCC ------- +3.3V
SCL/SCK ------- SCL
SDA/SDI ------- SDA
SD0 ------- *
CS -------
```
Mit SD0 kann die I2C-Adresse geändert werden. Standardmäißg besitzt der Chip
die Adresse 0x77. Wird SD0 auf HIGH gelegt, so ändert sich die Adresse zu 0x76.
## Software
Über Adafruit kann eine Bibliothek zu diesem Chip installiert werden. Diese
Bibliothek setzt die Installation von Adafruit_GPIO voraus. Weitere
Informationen über https://github.com/adafruit.
Mit dieser Bibliothek können die Messdaten einfach eingelesen werden:
```
#!/usr/bin/python
# -*- coding: utf-8 -*-
from Adafruit_BME280 import *
import time
import urllib
sensor = BME280(mode=BME280_OSAMPLE_8)
degrees = sensor.read_temperature()
pascals = sensor.read_pressure()
hectopascals = pascals / 100
humidity = sensor.read_humidity()
print ("Temperatur (in C) = {0:0.3f} C".format(degrees))
print ("Luftdruck (in hPa) = {0:0.2f} hPa".format(hectopascals))
print ("Luftfeuchtigkeit = {0:0.2f} %".format(humidity))
```
## Speicherung der Messdaten auf (externer) Datenbank
Die gemessenen Werten sollen in einer Datenbank gespeichert werden, die sich
irgendwo auf einem Server befindet. Dazu wird auf diesem Server eine
upload-php-Seite angelegt, über die mit angehängten Parametern die Speicherung
erfolgt (näheres unter mysql).
Ergänzungen des Pythonprogramms:
```
import urllib
url = "http://<server>/upload.php?m=outdoor&t=" +str(round(degrees, 2)) + "&p=" +str(round(hectopascals, 2)) + "&f=" + str(round(humidity, 2))
urllib.urlopen(url)
```
# Wetterstation
Aufbau einer Wetterstation mit Raspberry Pi und mehreren Sensoren - Programmiersprache: Python
## Bauteile:
Raspberry Pi 3 (funktioniert auch mit Version 2)
BME280 - Sensor zur Erfassung von Temperatur, Druck, Luftfeuchtigkeit (Bezug: Watterott.com)
BMP280 - Sensor zur Erfassung von Temperatur, Druck (Bezugs: Adafruit)
Die Sensoren gibt es auch sehr preisgünstig über ebay aus China
## Messung
Die Wetterdaten werden alle 15 Minuten gemessen und in einer externen MySQL-Datenbank gespeichert. Ein Webserver liest diese Daten aus und stellt die Daten grafisch dar.
Beispiel: https://gussmann-berlin.de/wetter/wetterhome.php
![Example](img/wetter.png)
## Ergänzungen
1. Über einen kleinen OLED-Screen sollen auf Tastendruck die aktuellen Werte
angezeigt werden.
2. Ergänzung um einen Feinstaubsensor
3. Ergänzung um den günstigeren Chip BMP280 mit angepasster Bibliothek