feinstaubmessung
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
Sinner-dev cd7dd5639d add readme 1 year ago
.gitignore Initial commit 1 year ago
README.md add readme 1 year ago

README.md

Feinstaubstation

Projekt zur Auswertung der Daten einer Feinstaubmessstation.

Ist-Zustand

Die TBS1 misst die Feinstaubbelastung über einen Sensor, der von Schülern der TBS1 in Betrieb genommen wurde. Die Daten werden dem Projekt luftdaten.info zur Verfügung gestellt.

Auf dieser Karte werden die Sensorwerte für das Ruhrgebiet visualisiert.

Die Feinstaubmessstation an der E-Bike-Garage der TBS1 misst kontinuierlich die Feinstaubbelastung, die Temperatur und den Luftdruck. Die Daten werden regelmäßig als CSV-Dateien auf einem Server archiviert - unter den IDs 3659 (Feinstaubsensor vom Typ SDS01) und 3660 (Temperatur- und Luftdrucksensor vom Typ DHT22).

Der Feinstaubsensor kann zwei unterschiedliche Partikel größen von Feinstaub messen: P1 (PM10) und P2 (PM2,5).

Auftrag (Soll-Zustand)

Diese Daten sollen heruntergeladen und ausgewertet werden.

Verschiedene Python-Konsolenprogramme sollen die folgenden Aspekte umsetzen:

  1. DATENBESCHAFFUNG: Download der notwendigen Daten. (optional) Einmal heruntergeladene Daten sollen nicht erneut heruntergeladen werden.
  2. VALIDIERUNG: Einlesen der Daten in eine Datenstruktur. Validierung der Daten. Prüfung auf Vollständigkeit und Plausibilität: fehlen bestimmte Werte? gibt es unplausible Werte? Welche Werte sind sinnvoll bzw. typisch?
  3. DATENAUSWERTUNG:
    • Durchschnitts-, Höchst- und Tiefstwerte
    • der Temperatur-, Feuchtigkeits- und Feinstaubwerte
    • über unterschiedliche Zeiträume: Stunde, Tag, Woche, Monat, Jahr.
  4. AUSGABE: Die aggregierten Ergebnisse werden
    • als Rohdaten,
    • in einer Tabelle auf der Konsole und
    • (optional) grafisch in einem Graphen ausgegeben.

Für die Umsetzung sind Entwicklerteams aus 3-4 Personen vorgesehen.

Neben der Entwicklung sichten die Entwicklerteams auch die Ergebnisse der anderen Entwicklerteams.

Achtung! Ein Team darf den eigenen Code nicht in den master branch überführen!

Teams

  • Dev1: Schütte, Biniek, Riecks, Mattern

Initiales Setup

  1. Erstelle ein Team und darin ein Repository.
  2. Füge alle Mitglieder hinzu.
  3. Schütze den main-Branch des Repositories gegen push ("don't push to master").
  4. Ggf. Webhook einrichten, der Änderungen nach Teams veröffentlicht. Beitrittscode: XXXXXX

Issues

  1. Formuliere Meilensteine, die für die Umsetzung der o.a. Aspekte notwendig sind. Gehe möglichst kleinschrittig vor und teile die Aufgaben in Unteraufgaben auf. Brainstorming Dokument beachten.
  2. Teile die Meilensteine auf die Teams auf.
  3. Setze die Meilensteine um und sichte die Umsetzungen der anderen Teams.