Howto: Charge Manager 2016
Dieses Dokument richtet sich an alle Entwickler, die das Ladegerät Charge Manager 2016 von VOLTCRAFT (vertrieben von Conrad) per USB-Schnittstelle auslesen möchten. Über die Schnittstelle lassen sich die vom Gerät gemessenen Daten z.B. zur geladenen Kapazität, Spannung etc. auslesen, eine aktive Steuerung des Geräts ist nicht möglich.
Das hier vorgestellte Datenformat wird z.B. als Grundlage der RS-232-Funktion der Battery Manager-Software eingesetzt. Dieses Werkzeug unterstützt neben dem Charge Manager 2016 weitere Ladegeräte, Barcode/RFID-Leser und andere Geräte mit serieller Schnittstelle.
Die hier dargestellten Informationen erheben keinen Anspruch auf Korrektheit oder Vollständigkeit, die Verwendung z.B. in eigenen Programmen erfolgt stets auf eigene Verantwortung (siehe Lizensierung).
Umweltschutz ist uns allen wichtig: leisten Sie jetzt einen effektiven Beitrag zur Vermeidung von Abfall. Durch den Einsatz wiederaufladbarer Akkus und moderner Ladegeräte sparen Sie zudem bares Geld, da der regelmäßige Kauf teurer Einmal-Batterien entfällt. |
Geräte-Steckbrief
Intern wird der USB-Anschluss per Treiber auf eine COM-Schnittstelle (RS-232) bei 19200 Baud abgebildet. Sie finden den passenden USB-Treiber für aktuelle Betriebssysteme unter
http://www.silabs.com/products/mcu/Pages/USBtoUARTBridgeVCPDrivers.aspx
Gerät | Charge Manager 2016 | |
Hersteller | Conrad Electronic SE (Deutschland) | |
Typ | Akku-Ladegerät | |
Anschluss | USB | |
Baud-Rate | 19200 | |
Daten-Bits | 8 | |
Stop-Bits | 1 | |
Parität | Keine | |
Flusskontrolle | Keine | |
Besonderheiten |
|
Beispieldaten
Die unten dargestellte Tabelle zeigt exemplarisch einen kompletten Datensatz für alle 6 Ladeschächte (jeweils eine Zeile pro Schacht), wie er vom Charge Manager 2016 mit der Battery Manager-Software empfangen wurde.
Gesendet werden einzelne Bytes im Bereich 0 bis 255, die in der Tabelle als Hexadezimalwerte stehen. Die Zeilen werden aufeinander folgend ohne Zeilentrenner gesendet, die Anzeige als Zeilen soll lediglich die Zusammengehörigkeit der Werte für die einzelnen Ladeschächte verdeutlichen.
Das Gerät sendet alle 2 Sekunden einen kompletten Datensatz mit 17 + 6 x 18 + 2 = 127 Bytes für alle Ladeschächte, wobei die ersten 17 Bytes eine Kennung für das Gerät enthalten und die letzten 2 Bytes wahrscheinlich eine Prüfziffer. Die Tabelle zeigt neben den Binärdaten rechts den entsprechenden ASCII-Text sowie die Anzahl der Zeichen pro Zeile.
43 4d 32 30 31 36 20 CM2016 [7] 01 02 00 00 01 eb 01 f3 00 2b .........+ [10] Slot 1 00 00 00 20 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ... .............. [18] Slot 2 01 02 02 03 04 01 b5 04 06 01 00 00 00 00 1c c9 01 00 .................. [18] Slot 3 00 00 00 20 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ... .............. [18] Slot 4 00 00 00 20 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ... .............. [18] Slot A 00 00 00 20 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ... .............. [18] Slot B 00 00 00 00 00 00 00 00 00 00 00 00 00 00 20 00 00 00 ... .............. [18] f6 6f .o [2] |
Exemplarischer Datensatz vom Charge Manager 2016
Anzeige der Live-Daten mit Battery Manager |
Datenformat
Jeder Teil-Datensatz zum Zustand eines einzelnen Ladeschachtes besteht aus 18 Bytes. Einzelne Werte wie z.B. die geladene Kapazität können aus bis zu 3 Bytes Hi1 (=High Byte 1) dann Hi2 (=High Byte 2) dann Lo (=Low Byte) bestehen.
Beim Charge Manager 2016 liegen die einzelnen Binärwerte in geordneter Reihenfolge vor, so dass leicht extrahiert werden kann.
Die folgende Tabelle zeigt die Bedeutung der einzelnen Byte-Werte. In für Programmierer typischer Schreibweise sind die Bytes als Feldindex im Bereich 00 bis 17 dargestellt. Alle Werte vom Ladegerät werden wie oben in hexadezimaler Schreibweise dargestellt, vom Gerät werden aber die nummerischen Werte 0 bis 255 gesendet.
Byte 00 01 02 03 04 05 06 07 08 09 10 11 12 13 14 15 16 17 Slot 2 01 02 02 03 04 01 b5 04 06 01 00 00 00 00 1c c9 01 00 .................. [18] |
Byte | Kurz | Beschreibung |
---|---|---|
00 | Aktiv | Status-Indikator: 01=Programm läuft, 00=Programm fertig |
01 | Programm | Programm: 01=CHA, 02=DIS, 03=CHK, 04=CYC, 05=ALV, 09=ERR |
02 | Schritt | Programmschritt: 01/03/05/07=Aufladen, 02/04/06=Entladen |
03 | Status |
20=leer, "00 xx xx 07" bzw. "00 xx xx 02"=RDY, "00 xx xx 21"=ERR, "01 xx xx 07"=TRI |
04 | Minuten | Abgelaufene Zeit im Programm: Minuten (Byte Lo -> zweites Byte von 2) |
05 | Minuten | Abgelaufene Zeit im Programm: Minuten (Byte Hi -> erstes Byte von 2) |
06 | Spannung | Spannung in mV (Byte Lo -> zweites Byte von 2) |
07 | Spannung | Spannung in mV (Byte Hi -> erstes Byte von 2) |
08 | Strom | Stromstärke in mA (10^-1 mA für A/B, Byte Lo -> zweites Byte von 2) |
09 | Strom | Stromstärke in mA (10^-1 mA für A/B, Byte Hi -> erstes Byte von 2) |
10 | CCap | Aufgeladene Kapazität in 10^-2 mAh (10^-3 mAh für A/B, Byte Lo -> drittes Byte von 3) |
11 | CCap | Aufgeladene Kapazität in 10^-2 mAh (10^-3 mAh für A/B, Byte Hi2 -> zweites Byte von 3) |
12 | CCap | Aufgeladene Kapazität in 10^-2 mAh (10^-3 mAh für A/B, Byte Hi1 -> erstes Byte von 3) |
13 | DCap | Entladene Kapazität in 10^-2 mAh (10^-3 mAh für A/B, Byte Lo -> drittes Byte von 3) |
14 | DCap | Entladene Kapazität in 10^-2 mAh (10^-3 mAh für A/B, Byte Hi2 -> zweites Byte von 3) |
15 | DCap | Entladene Kapazität in 10^-2 mAh (10^-3 mAh für A/B, Byte Hi1 -> erstes Byte von 3) |
16 | - | unbekannt |
17 | - | unbekannt |
Beschreibung der einzelnen Bytes vom Charge Manager 2016