Habe mehrfach versucht dir eine PN zu schicken...
Ahoi!
hatte meinerseits auf eine Notation vom Forum gewartet... nix gekommen.
Naja - was solls.
Ich mach das öffentlich solange es nicht in den Code reinfummelt - das wäre dann für viele sicher langweilig.
Wie funktionierts...
Ich nutze die ganz normale MBB Zugangsfunktion über die Serielle Schnittstelle.
Ist man erst mal "online" hat man eine Menge an Möglichkeiten mit verschiedensten Befehlen
auf welche die ZERO dann antwortet.
Das heißt ich sende eine Befehl, z.B. "BMS" an die Zero und die erzählt daraufhin eine Geschichte:
****************************************
* BMS Data *
****************************************
************* BMS #0 ***************
- BMS Board Rev : 02
- BMS Firmware Rev : 38 (531 banka)
- BMS Serial Number : SJ3819ZER0542
- Battery Serial Number : 19lb0885
- CAN Rx in last second : 132
- Pack SOC : 50%
- Fuel Gauge : 48%
- Age of SOC Data : 119 ms
- Model Year : 2019
- Pack Capacity : 57 AH
- Pack Capacity Remaining : 16 AH
- Total Energy Used : 256 KWH
- Number Of Bricks : 2
- Pack Discharge Current : 1 A
- Pack Sum Voltage : 102.193 V
- Sag-Adj Pack Sum Voltage : 102.260 V
usw...
Die notwendigen Werte habe ich für mich identifiziert, hier z.B.
- Fuel Gauge UND Pack Sum Voltage
Jetzt gehts nurmehr darum mit dem ARDUINO und C++ die
Werte in der betreffenden Zeile zu finden und im Programm weiter zu verarbeiten.
Für die Überwinterung "schaut" der Arduino einmal alle 24h nach wie es um die Werte steht.
Dazu ist es notwendig die ZERO an die Netzspannung zu schalten. Zündschlüssel kann aus bleiben.
Ist der Ladestand zu niedrig wird nachgeladen bis passt.
(Wieder einfach das Netz an die ZERO schalten über den eingebauten Charger)
Die anderen Modi (Vollladen, Laden bis xx% am tt.mm.yyyy um hh:mm oder Cellbalance)
funktionieren auf selber Basis unter Einbezug einer RTC.
Parallel dazu läuft eine Bat- Heizung. Dazu verwende ich die interne Batterietemperaturmessung
und eine zusätzlich aufgebaute Messung. Da ich nicht in kurzen Abständen das Moped aktivieren möchte
um die BatTemp aus dem MBB zu erfahren. Ein Software PID- Regler hält alles unter Kontrolle.
Der große Aufwand ist die grafische Aufbereitung unter Einbindung eines Touchscreen
und die Entwicklung der Elektronik.
Greez
Bernardo