Entwicklung einer Web-Oberfläche zur aufbereiteten Anzeige des Debug-Logs des Roboters.
Zusammenfassung
Zum einfachen Debugging unserer Roboter-Software können im Programmcode der Microcontroller Log-Nachrichten erzeugt werden, die per UART (serieller Schnittstelle) ausgegeben werden. Damit diese auch bei Testspielen ohne nervige Kabel zum Roboter verfolgt werden können, befindet sich auf den Robotern ein RaspberryPi Pi (der „Debugserver“), der unter anderem mit dem UART der Hauptplatine verbunden ist. Über eine Web-Anwendung soll der Log per WLAN anderen Computern mit Webbrowser zugänglich gemacht werden, wobei die Nachrichten in Echtzeit angezeigt und dabei grafisch aufbereitet werden sollen.
Geplante Features:
- Echtzeit-Anzeige der Log-Nachrichten (per Websocket oder AJAX-Polling)
- Grafische Aufbereitung der Log-Nachrichten nach bestimmten Mustern (z.B. angegebene Softwarekomponente)
- Modulare und dokumentierte Software zur einfachen Wartung und Erweiterung
- Ggf. Filtern des Logs nach bestimmten Mustern (z.B. Zeitpunkt, Softwarekomponente, RegEx)
- Aufzeichnung des Logs in eine Datei und Abruf alter Logs aus bestehenden Dateien
- Ggf. Framework zur inhaltlichen Interpretation und übersichtlichen Darstellung bestimmter Nachrichtenformate, z.B. Übergänge in Zustandsautomaten, Plots von aufgezeichneten Werten, …
- Ggf. Überwachung des Verbindungsstatus Browser → Debugserver, Debugserver → Microcontroller
- Ggf. Funktionen wie Neustart, Programmieren des Microcontroller
Tätigkeitsfelder und Technologien
- Dynamische Web-Entwicklung mit einfachem Server in Python oder Ruby oder NodeJS
- Entwicklung einer komplexen Singlepage-Anwendung in Javascript/ECMA-Script
- Kommunikation per SocketIO-Library o.ä.