Rohdaten Auswertung

von xlsx/csv Datein mit python

Aufgabe

Automatisierte Auswertung der Rohdaten zur Bestätigung der gleichmäßigen beschleunigten Bewegung im Physik Praktikum in zwei Phasen.
Erste Phase: Extrahierung der Zeit-Datenreihe aus Datenbereich (DataFrame) und Speicherung als Text-Datei.
Zweite Phase: Auswertung als Diagrammdarstellung mit s, v und a von t.

Projektumfeld

Vor einigen Wochen nahmen wir in Physik an einem wissenschaftlichen Praktikum teil. In diesem Praktikum führten wir ein Experiment zum Nachweiß gleichmäßiger beschleunigter Bewegung durch. Zur Auswertung und Datenaufnahme wurde Microsoft Excel auf einem iPad verwendet. In den letzten Jahren wurde dieses Praktikum nur spezifisch in Physik durchgeführt und ausgewertet. Dieses Jahr ist es nun fächerübergreifend gestaltet. Kombiniert wurde das Experiment mit dem Fach Informatiksysteme (IS). Die Übertragene Aufgabe in IS ist die Erstellung eines Programms, welches eine automatische Auswertung der Rohdaten ermöglicht. Für die komplexe Ausarbeitung wurden Gruppen gebildet, die gemeinsam eine Lösung des Problems erarbeiteten.

Team

Julius
Weißleder

Felix
Wendt

Konstantin
Pfeil

Christoph
Trischler

Plannung/ Organisation

Trello

Um unsere einzelnen Aufgaben in Meilensteine zu unterteilen nutzten wir das KANBAN-System. Dieses beschreibt die Methode der Einteilung in die Bereiche To-Do, Doing und Done. Somit kann jeder die Übersicht über unser Projekt behalten und sieht auf Anhieb den Fortschritt der Gruppe. Zur perfekten Umsetzung von diesem System haben wir uns für die Website Trello entschieden.

Trello

GitHub

Um unsere Fortschritte zu speichern und für alle aus dem Team erreichbar zu machen, nutzen wir GitHub. GitHub ist ein webbasierter Filehosting-Service für Softwareentwicklung. Dieser ermöglicht es uns zudem gemeinsam von unseren privaten Computern an dem selben Projekt zu arbeiten und den jeweiligen Code sehr einfach zwischeneinander auszutauschen bzw. zu kombinieren.

GitHub

Soll-Ist Vergleich

File Open

Unser Programm soll eine neue Datei einlesen können um diese als Input zu nutzen.
Dieses Ziel wurde erfolgreich erreicht. Bei Betätigung von "open" öffnet sich der Dateimanager (Explorer/Finder) zur Auswahl von .xlxs oder .csv Dateien.

Automatische Auslesung

Anschließend soll das entwickelte Programm die importierten .csv oder .xlxs Dateien auslesen können, um die ermittelten Messwerte im Mainwindow in Form von Diagrammen auswerten zu können.

CodeAuslese

Berechnung der Diagramme

Um die automatisch ausgelesenen Daten in Diagrammen darstellen zu können, müssen wir zunächst die Geschwindigkeit, die Beschleunigung sowie die durchschnittliche Beschleunigung ermitteln.
Der folgende Code realisiert diese Berechnung:

Diagramme direkt in FormUI

Unser Ziel war nicht nur, dass die Daten in Diagrammen angezeigt werden, sondern dass diese zudem direkt in der FormUI integriert sind. Dies war etwas komplexer umzusetzen aber wir haben es dennoch nach unseren Wünschen implementiert.
Dieser Code gestaltet eine vereinfachte Interaktion mit den Widgets:

CodeDiagramme

finale Ausgabe:

FormUIDiagramme

Variable Darstellung der Diagramme

Außerdem haben wir uns die Variabilität der Diagramme als Ziel der Ausarbeitung gesetzt. Diese beschreibt die optionale Einblendung jedes einzelnen Diagrammes, sowie die Möglichkeit ein Grid (Raster) im Hintergrund der Diagramme anzeigen zu lassen. Zudem werden aus den Rohdaten die jeweiligen Graphen ermittelt und diese können mithilfe einer weiteren Checkbox in allen drei Diagrammen eingeblendet werden.

varibleCharts

Gruppenreflektion

Zur Arbeitsweise kann man in unserer Gruppe sagen, dass wir relativ selbstständig vorgegangen sind und jeder selbst Entscheidungen getroffen hat, welche relevant für die jeweiligen Unteraufgaben waren. Dennoch haben wir gerade die Zeit in den Unterrichtsstunden genutzt, um unsere Fortschritte intern zu präsentieren, größere Entscheidungen abzuwägen, sowie zu reflektieren.
Zur Aufgabenverteilung haben wir explizit die Stärken des Einzelnen ausgenutzt. Somit sind durch die individuellen Vorkenntnisse wenige Schwierigkeiten bei der Entwicklung aufgetreten. Schlussfolgernd kann man den Ablauf als Reibungslos bezeichnen.
Gerade weil wir hauptsächlich zu Hause separat gearbeitet und den individuellen Fortschritt nur via GitHub ausgetauscht haben, kamen wir schnell mit unserem Projekt voran, sodass wir schon weit vor der Deadline nahezu fertig waren.
Zusammenfassend kann man sagen, dass wir sehr zufrieden mit der Umsetzung, der Gruppenarbeit und dem Endergebnis sind. Zudem haben wir alle unser Wissen/Vorkenntnisse vertieft und oder ergänzt.