Eine Internet of Things - Bienenstockwaage.
- Zyklisches Messen unterschiedlicher Größen
- Spannung an der angeschlossenen Messbrücke => Gewicht auf der Waage
- Temperatur des A/D-Wandlers
- Temperatur des angeschlossenen 1-Wire-Temperatursensors
- Versenden der Daten per HTTP-GET-Request an eine Datenbank
- Grafische Aufbereitung der Daten im Backend (Beispiel, auf Grund der laufenden Entwicklung nicht mit echten Daten)
- Open Source Soft- und Hardware!
- Hauptprozessor, WLAN: Espressif ESP8266
- A/D-Wandler: Intersil ISL26102
- Tiefsetzer (3V3, 5V0): Linear Technology LTC3622-23/5
- Wägezelle: Bosche H40A
- Temperatursensor: Maxim DS18B20
- ESP8266-Firmware: C++ (Greift mit einigen Funktionen auf die ESP8266-Arduino-Portierung zurück und wird mit dieser Kompiliert)
- Backend: PHP7 (sollte auch mit niedrigeren Versionen funktionieren)
- Darstellung: nvd3
- Datenbank: MySQL
Dieses Projekt ist im Rahmen der Vorlesung Systems Engineering I an der Hochschule für angewandte Wissenschaften Augsburg entstanden. In dieser Vorlesung sucht sich eine Gruppe von Studenten ein Projekt, das sie ein Semester lang zu entwickeln versuchen. Unser Ansatz zielt explizit darauf ab, nachgebaut und weiterentwickelt zu werden. Da einige Software-Features nicht rechtzeitig fertiggestellt werden konnten, werden diese sukzessive nachgereicht.
- Verwendung der SPIFFS-Bibliothek zum Abspeichern der Konfiguration sowie der Messdaten
- Daten nur alle paar Messzyklen übertragen (und im SPIFFS zwischenspeichern)
- Server kann dem Client eine geänderte Zykluszeit vorgeben
- Kleinere Verbesserungen am Webinterface
- firmware war nicht kompilierbar, korrigiert
- Webinterface: Geräteverwaltung integriert, per Login gesichert
- Anzeigen von Daten wie: Letztes Sendedatum, Firmwareversion
- Erstellen von Geräteklassen
- Einstellen von: Firmwareupdate, Geräteklasse
- Upload von neuen Firmware-Versionen
- Erste öffentliche Version
- firmware/main.cpp: Instruktionen hinzugefügt, wie die Einstellungs-Datei settings.h beschaffen sein muss. Außerdem Option hinzugefügt, das folgende Feature (z.B. aus Speicherplatzgründen) wieder deaktivieren zu können.
- Alle nötigen Funktionen hinzugefügt, die Firmware über das Internet zu aktualisieren:
- backend/ota_update.php: Liefert die Firmware-Datei auf dem Server aus (momentan noch keine Kontrolle, ob Firmware überhaupt aktualisiert werden muss).
- Neue Firmware-Klasse Updater: Prüft auf neues Update (ist an dieser Stelle bereits darauf vorbereitet, vom Server die Antwort "nicht aktualisieren" zu bekommen).
- firmware/main.cpp: Neue Befehle autoUpdate (Prüft auf neues Update und aktualisiert falls der Server dazu anweist) und update (erzwingt ein Update) hinzugefügt.
- Mehrere kleinere Änderungen und Verbesserungen, Refactoring
- An der HSA präsentierte und so auch zur Bewertung abgegebene Version