Mohyeldin Aboualam, Scott Bunting, Felix Crowther, Benedict Greenberg, Josephine Latreille, Cao An Le, Leah Pattison
Fakultät für Elektrotechnik und Elektronik & Dyson School of Design Engineering, Imperial College London
Sensa ist ein mobiles Gesundheitsüberwachungssystem, das darauf abzielt, eine Mischung aus selbst gemeldeten Messungen und physiologischer Signalanalyse zu nutzen, um Stress zu erkennen und Benutzer anzuleiten, ihren Zustand mithilfe personalisierter Übungen zu verbessern.
Das Hardwareverzeichnis wurde für die Firmware-Entwicklung des M5Stack Fire verwendet. Weitere Informationen finden Sie in der README-Datei.
Das App-Verzeichnis wurde für die App-Entwicklung (mit Unity) für iOS/Android verwendet. Weitere Informationen finden Sie in der README-Datei.
Das Serververzeichnis wurde für Backend-Servercode wie die API (vor der Datenbank) und maschinelle Lernelemente verwendet. Weitere Informationen finden Sie in der README-Datei.
Wir haben uns in unserem gesamten Code bemüht, gegebenenfalls nützliche Kommentare und README-Dateien zu hinterlassen. Um unsere plattformübergreifende Entwicklung innerhalb des Teams zu unterstützen, haben wir uns außerdem an projektweite Spezifikationen gehalten.
Die BLE-Spezifikation definiert die vereinbarte Implementierung des Bluetooth Low Energy-Servers (auf dem M5Stack).
Die Datenspezifikation definiert die vereinbarte Nutzung, Art und Struktur der Daten im gesamten System.
Die API-Spezifikation definiert die vereinbarte Implementierung und Nutzung der API (für den Zugriff auf Datenbank und ML).
Hinweis: Dies ist eine „Light“-Version der Projektstruktur. Weitere Informationen zu Dateien finden Sie im entsprechenden Unterverzeichnis README.
MHML/ ├─ .github/ GitHub configuration files ├─ docs/API_Specification.md Documentation on API usage ├─ docs/BLE_Specification.md Documentation on BLE configuration and usage ├─ docs/Data_Specification.md Documentation on cross platform data usage │ ├─ app/ Unity app development is stored │ ├─ Assets/Scripts/ │ │ ├─ Main.cs Main app logic │ │ ├─ Wifi/ │ │ │ └─ Networking.cs Networking logic for communicating with API │ │ └─ Bluetooth/ │ │ └─ controller.cs BLE client logic for receiving from hardware │ └─ README.md App specific readme │ ├─ hardware/ Firmware development for M5Stack Fire │ ├─ lib/ Custom and 3rd party libraries │ ├─ src/ble.h BLE server logic │ ├─ src/data.h Definition of central data structure │ ├─ src/gsr.h GSR sensor development │ ├─ src/main.cpp Main firmware runtime │ ├─ src/ppg.h PPG sensor development │ └─ README.md Hardware specific readme │ ├─ server/ │ ├─ api/ Flask application for server API │ ├─ ml/ Development of machine learning models │ └─ main.py │ ├─ LICENSE └─ README.md
Schon in den frühen Phasen des Projekts haben wir vorhergesehen, wie die Entwicklungsabteilung funktionieren sollte, um unsere Modularität zu maximieren und gegenseitige Abhängigkeiten zu reduzieren. Dies machte die Integration in späteren Phasen wesentlich effizienter. Unten finden Sie eine einfache Grafik des Prozesses.
Unser Quellcode ist unter der GNU General Public License v3.0 lizenziert
Dieses Werk ist unter der Creative Commons Attribution-ShareAlike 4.0 International License lizenziert.