Die erforderliche Hardware ist im Prinzip schon aufgebaut. Im Inneren ist ein Raspberry Pi Zero W (mit Bluetooth), ein GPRS HAT für den Internet Zugang (SIM Karte von 1&1) sowie ein GPS Modul. Benötigt wird dann noch ein OBD2 Bluetooth Dongle. Ich dachte an diesen hier: https://www.amazon.de/Vgate-Bluetooth-F ... B071D8SYXN Der Raspi soll in das „Handschuhfach“ in einem der USB Ports dauerhaft angesteckt werden. Der OBD2 Dongle soll ebenfalls dauerhaft stecken bleiben.
Hier das „Lastenheft“ meines Winterprojekts:
Alle 30 Sekunden wird während der Fahrt sowie während des Ladens über das OBD2 Modul mittels Code von Hans – siehe https://hans2183.hcpl.be/2023/01/29/hea ... assistant/ - folgende Daten ausgelesen:
Speed, ambientTemp, ODO (km Zähler), SOC, SOH, low battery temp, high battery temp, voltage, current, charge state
Über das GPS Modul wird noch zusätzlich
Timestamp, latitude, longitude, altitude, gps speed
Ermittelt. Diese Daten werden in eine lokale mysql Datenbank auf dem Raspberry Pi gespeichert.
Ein zweiter Prozess liest regelmässig die Datenbank aus und kopiert den Inhalt auf einen Webspace von 1&1, den ich mir für 1€ pro Monat eingerichtet habe. Dieser Webspace ist klein, aber da ja nur ich darauf zugreife völlig ausreichend. Ich muss mir auch keine Gedanken über Datenschutz usw machen. Ich bin der einzige Nutzer von meinen eigenen Daten. Den Webspace erreiche ich über einen Browser mittels PHP Scripte.
Ausserdem kann der Raspberry Pi auch direkt weitere Schnittstellen mit Daten versorgen. Geplant habe ich hier: ev-monitor.com, abetterrouteplanner.com sowie spritmonitor.de.
Wozu ist das ganze gut? Hier die von mir geplanten Szenarien:
• Grafische Darstellung des aktuellen Ladevorgangs (SOC, aktueller Ladespeed in KW, Akku Temp, AC oder DC). Im Falle von DC ausserdem eine Grafik der aktuellen Ladekurve (von Start des Ladevorgangs bis jetzt).
• Übersicht sämtlicher Ladevorgänge (Historie) mit km Stand, Ort, aufgenommene Strommenge, geladen von SOC, geladen bis SOC. Zu jedem Ladevorgang ein Link mit der Karte des Orts sowie der exakten Ladekurve inklusive Akku Temperatur (bei DC). In der Übersicht dann die Gesamtmenge an geladenem Strom (aufgeteilt nach AC zuhause, AC fremdladen und DC), der daraus resultierende Verbrauch, die Kosten (basierend auf festen Werten für Zuhause, AC und DC) sowie auch die durch Rekuperation gewonnen Energiemenge.
• Übersicht sämtlicher Touren mit GPX Track, Startort der Route, Fahrdauer, Strecke in km. Darstellung jeder einzelnen Route in Kurviger.de. Verbrauch sowie ggf durch Rekuperation gewonnene Energiemenge
• Grafische Darstellung des Verbrauchs des Motorrads bei konstanter Fahrt (Verbrauch / Geschwindigkeit). Die Daten werden automatisch ermittelt und über die GPS Höheninfo korrigiert. Idealerweise weiss ich so bei welchem Autobahntempo ich den besten Reiseschnitt bekomme.
• Ermittlung des Einfluß der Akkutemperatur auf Batteriekapazität und Ladegeschwindigkeit.
• Darstellung des SOH über die Zeit. Konstante Abnahme oder Schwankungen?
Bei den externen Schnittstellen habe ich mir folgendes vorgestellt. Hinweis: Hierzu ist kein Webspace nötig.
Ev-monitor.com: Während der Fahrt alle 30 Sekunden ein Datensatz mit GPS Lokation, SOC, Batterie Temp. Die Daten können dann über das Web Interface von ev-monitor abgerufen werden.
Abetterrouteplanner.com: Während der Fahrt und während des Ladens ein Datensatz alle 60 Sekunden. Die Verbindung erfolgt über die Live API. SOC, Ladespeed, Außentemperatur, Standort und Höhe sind über die ABRP App oder Webseite abrufbar und werden in der Routenplanung berücksichtigt.
Spritmonitor.de: Nach jedem abgeschlossenen Ladevorgang wird dieser über die API hochgeladen. KM Stand, km seit letztem Ladevorgang, aufgenommene Strommenge, resultierender Verbrauch, Kosten, Ort, durchschnittliche Geschwindigkeit (siehe auch https://api.spritmonitor.de/doc)
Bei meiner Zero habe ich ja einige dieser Daten genauso ausgelesen und dargestellt. Ich kann da sicher 90% des Codes wiederverwenden. Die grafische Darstellung der Daten im Webspace erfolgt über Google Charts
Habt Ihr noch Verbesserungsvorschläge bzgl. der Usecases?
Bei allgemeinem Interesse könnte ich eine Beschreibung der nötigen Schritte anfertigen um das Projekt zu kopieren. Neben den HW Kosten ist außerdem eine SIM Karte erforderlich (Ich habe für meinen vorhandenen Datenvertrag einfach eine 2. SIM Karte bestellt) sowie ein Webspace anzulegen. Der Webspace ist nicht nur eine Frage der Kosten. Ich habe hier bei https://www.ionos.de/server/vps#packages den „VPS Linux XS“ gebucht. Lider ist hier auch noch einiges an Konfigurationsarbeit nötig. Der Standard Backup frisst auf Dauer den Speicher und muss abgeschaltet werden. Die Datenbank ist ja auch auf dem Raspberry PI und die PHP Scripte können problemlos neu aufgespielt werden. Ausserdem ist die mysql Datenbank einzurichten (mit Fernzugriff) und ssh ist zu aktivieren. Da ich diese Schritte bei mir nicht dokumentiert habe müsste man hier selbst schauen wie man das hinbekommt. Aber da gibt es genügend tutorials auf youtube oder so. Für das anlegen des Tabellenschemas der Datenbank sowie das überspielen der PHP Scripte habe ich shell Skripte.
Abschliessen kann ich das Projekt natürlich erst wenn ich die Energica habe, also im nächsten Jahr. Aber bei Interesse würde ich die Schritte jetzt schon entsprechend dokumentieren.