Benutzer-Werkzeuge

Webseiten-Werkzeuge


elektrotechnik:open_source_firmware_java_tool

Für den einfachen Umgang mit der Firmware gibt es ein graphisches Tool auf Java-Basis.

In diesem Tool können alle relevanten Parameter eingestellt und auf den Controller geflasht werden.

Das Tool wird durch einen Doppelklick auf „OSEC Parameter Configurator.jar“ im Projektverzeichnis gestartet.

Zur ersten Verwendung eines neuen Controllers muß der Schreibschutz aufgehoben werden. Dazu einfach einmalig auf „Write Option Bytes“ drücken. Achtung! Wird diese Funktion angewählt, wird die original Kunteng-Firmware unwiederbringlich gelöscht!!! Bitte vor dem Löschen unbedingt die richtige Phasen- und Hallsensorzuordnung am Gesamtsystem mit der originalen Firmware herausfinden. Damit ist sichergestellt, das der Controller prinzipiell mit dem Motor harmoniert. Wenn der Motor nach dem Flashen der Custom Firmware nicht richtig anläuft (brummt und viel Strom zieht), nochmals durch ausprobieren die richtige Hallsensor- und Phasen- Kabelkombination herausfinden. Auch die weiteren Peripheriegeräte wie Gasgriff, PAS und Bremsgriff vorher auf korrekte Funktion am Gesamtsystem testen!

Zum Schreiben der Firmware in den aktuellen Einstellungen auf den Button „Write Configuration“ drücken. Dabei werden die Einstellungen im Ordner „experimental setting“ gespeichert und in dem Listenfenster des Tools angezeigt. Beim Start des Tools wird jeweils das letzte Setting geladen. Auf alte Stände kann man einfach durch Anklicken des Listeneintrags zurücksetzen.

Die grau dargestellten Parameter können in der BluOsec-App geändert werden, ohne neu flashen zu müssen.

Die Bedeutung der einzelnen Parameter:

Number of PAS-Magnets: Anzahl der Magnete in der PAS Scheibe. Wird zur richtigen Berechnung der Kadenz benötigt

Wheel circumference: Radumfang in Millimetern, wird zur Berechnung der Geschwindigkeit benötigt. Die Einstellung im Display wird ignoriert.

PAS Timeout: Zeit bis zum Motorstopp nachdem aufgehört wurde zu treten. Wert in 64µs. Rechenbeispiel: 3125*0,000064s = 0,2s

Speed Limit (km/h): Selbsterklärend

TQ calib: Faktor zur Berechnung der Unterstützung im Torquesensor-Mode. Hier werden Kalibrierfaktoren der Messkette zusammengefasst. Größerer Wert: Mehr Unterstützung bei gleicher menschlicher Leistung. Der Wert wird intern noch mit dem im Assist-Level definierten Prozentsatz verrechnet. Als Startwert kann 32*Anzahl PAS-Pulse pro Umdrehung genommen werden. Dann einfach Probefahren und ggf. noch mal anpassen.

Throttle min:: Ruhespannung des Gasgriffs bzw. Drehmomentsignals. Wird zum Anpassen des Gasgriffsignals an volle 8bit Auflösung des PWM-Wertes benötigt. Umrechnung: 0V entspricht 0, 5V entspricht 255 (8bit Auflösung des AD-Wandlers)

Throttle max: Spannung des Gasgriffs bei Vollgas bzw. Vollausschlag des Drehmomentsignals, Erklärung analog Throttle min

Battery Current max: maximaler Batteriestrom. Der Zahlenwert berechnet sich aus dem gewünschten Maximalstrom mal Battery Current cal a. Beispiel: gewünschter Maximalstrom 20A, Battery Current cal a = 10 –> 20*10=200.

Phase Current max: maximaler Phasenstrom. Berechung genauso wie beim Batteriestrom. Der Phasenstrom wird intern aus der Formel Phasenstrom = Batteriestrom / Tastverhältnis berechnet.

Regen Current max: maximaler Rekuperationsstrom. Berechnung analog Battery Current

Undervoltage limit: Wert für die Unterspannungsabschaltung. Berechnung: Wert in Volt mal 3,7. Beispiel: 34,3V * 3,7 = 127

Motor specific angle: mit diesem Wert kann das Timing der Motoransteuerung geändert werden. Dadurch können Fertigungsungenauigkeiten der Hallsensorpositionen im Motor ausgeglichen werden. Nur ändern, wenn der Motor schlecht anläuft.

Battery Current cal a: Wird zur internen Berechnung des Stromes aus dem 10bit ADC-Wert benötigt. Muss nur geändert werden, wenn die Kalibrierung mit den voreingestellten Werten offensichtlich nicht passt. Bei den 6-FETs ist cal a = 100, bei 12- und 18-FET Controller ist cal_a 50 (Hinweis von Xnyle)

Gear Ratio: Verhältnis zwischen elektrischen Umdrehungen und Radumdrehungen, der Wert ist genau halb so groß wie der Wert P1 bei den Kunteng-Displays, da bei P1 die Anzahl der Magnete eingeht und bei Gear Ratio die Anzahl der Polpaare. Wirkt nur auf die Abregelgeschwindigkeit, die angezeigte Geschwindigkeit kommt aus dem Speedsensor-Signal.

Battery Voltage Calibration: Wird zur internen Berechnung der Spannung aus dem 8bit ADC-Wert benötigt. Muss nur geändert werden, wenn die Kalibrierung mit den voreingestellten Werten offensichtlich nicht passt.

Assist Level 1: Unterstützungsfaktor Stufe 1 im Torquesensor- und Torque-Simulation-Modus. Wird als Prozentanteil mit dem Assist factor verrechnet

Assist Level 2 bis Assist Level 5: siehe Assist Level 1

Morse-time 1: Ist die erste Zeit des „Morsecodes“ in 1/50s. Der Wert 50 bedeutet also eine Sekunde. Der Cheat funktioniert so: Bremshebel für Cheat-time 1 halten, dann für Dauer von Cheat-time 2 loslassen, dann wieder für Cheat-time 3 ziehen, dann wieder loslassen. Dabei gilt jeweils eine Karenz von einer halben Sekunde, dh. für Schritt 1 mit Wert 50 wird das Loslassen des Bremsgriffs im Zeitraum von 1 bis 1,5 Sekunden nach dem Ziehen als gültig erkannt und mit Schritt 2 fortgefahren. Wird der Hebel zu früh oder zu spät losgelassen wird die komplette Prozedur zurückgesetzt und man muss von vorn beginnen. Das LCD3 zeigt zur Bestätigung der Aktivierung kurz eine sehr hohe Geschwindigkeit an, in der BluOSEC App ändert sich zur Bestätigung das Farbschema.

Morse-time 2 und Morse-time 3: siehe Morse-time 1

Ramp start maximale Zeit, die noch in die Berechnung eingespeist wird (dies beeinflusst, wie schnell das Anlaufverhalten nach einem Stillstand ist).

Ramp end Zeitdauer zwischen zwei PAS Pulsen in 64µs die zur gewünschten Grenzkandenz im Torque-Simulation Mode gehört. Wert = 60/((Wunschkadenz in 1/min)*Number of PAS-Magnets*64µs). Beispielrechnung für eine Grenzkadenz von 60/min: 60/(60*16*0,000064)=977. In Torquesensor-Mode ist diese Option deaktiviert.

GAIN P: Proportional-Faktor des PI-Reglers. Je höher der Wert gewählt wird, um so schneller reagiert der Regler, bei zu hohen Werten schwingt sich die Regelung auf.

GAIN I: Integral-Faktor des PI-Reglers. Je kleiner der Wert gewählt wird, um so sanfter läuft die Regelung in den Sollwert. Beide Gain-Werte müssen mit einem Punkt als Dezimaltrennzeichen geschrieben werden.

Serial cells: Anzahl der in Serie geschalteten Batteriezellen. Für 36V Systeme in der Regel „10“, für 24V Systeme „7“, wird für die korrekte Anzeige der „Balken“ im LCD3-Display benötigt.

PAS threshold: Schwelle für die Richtungserkennung aus dem PAS-Signal. Der Wert sollte das arithmetische Mittel vom Kehrwert des Tastverhältnisses bei Vorwärts und bei Rückwärtsdrehen sein. Der passende Wert kann durch Ausprobieren herausgefunden werden, oder durch die Anzeige bei vorwärts- und rückwärts-Drehen im „Diagnostics“-Modus. Die Voreingestellten 1.7 wurden für einen einfachen PAS mit 8 Magneten ermittelt.

Speed Limit without PAS (km/h): Maximale Geschwindigkeit ohne zu pedalieren.

Speed Limit with throttle override (km/h): Maximale Geschwindigkeit mit Daumengas im Offroad-Modus.

Torquesensor: Aktivieren des Torquesensor-Modes, Ramp End ist nicht mehr pflegbar, dafür aber der TQ Calib Faktor

Assist Lvl. affects Throttle: Der Gasgriff gibt normalerweise den als maximalen Batteriestrom definierten Strom frei. Mit aktivieren dieser Funktion wir der maximale Strom mit der Stufe verrechnet.

Offroad Enabled: Mit dieser Option wird die Möglichkeit in den Offroad-Mode zu schalten aktiviert.

Brake Disables Offroad: Offroad Mode durch betätigen des Bremshebels für länger als 5s abschaltbar.

Regen Digital: Es gibt zwei Möglichkeiten, Regeneration zu beeinflussen mit Throttle an X4, oder Digital. Digital ist ohne App immer der im Tool definierte Regen current max aktiv. In der App kann man in 5 Stufen hoch und runter schalten.

Speed influences Regen Rate: Zusätzliche Möglichkeit, Regeneration zu beeinflussen: 100% beim Speedlimit oder darüber, 0% bei 0km/h

Speed influences Tq Sensor: Im Torquesensor Mode wird die Motorleistung proportional zur menschlichen Leistung geregelt (Faktor*Drehmoment*Kadenz) Mit Speed influences Tq Sensor wir zusätzlich die Geschwindigkeit linear mit eingerechnet, um den erhöhten Leistungsbedarf durch den Luftwiderstand zu kompensieren.

Bypass PI controll regen @low speed: Verbessert die Reku-Ausbeute bei niedriger Geschwindigkeit. Erfordert eine motorspezifische Konstante. Derzeit hardgecodet.

Offroad enabled: Offroad-Modus über Morsecode aktivierbar

Brake disables Offroad: Offroad-Modus wird durch langes (5 Sekunden) betätigen des Bremshebels deaktiviert.

digital regen: Reku wird durch Bremshebel aktiviert.

Pas inverted: Muß aktiviert werden, wenn der Motor nur beim Rückwärtstreten läuft.

Motor Speed –> Normal: PWM-Frequenz 15,625 kHZ, für Direktläufer und die meisten Naben- und Mittelmotoren ausreichend.

Motor Speed –> High: PWM-Frequenz 20,833 kHz, für sehr schnell drehende Motoren

Dynamic Assist Level: Die Benutzung des Gasgriffs für eine längere Zeit erhöht automatisch die Unterstütungsstufe. Nach dem Loslassen des Gasgriffs wird die Unterstützung langsam wieder herunter geregelt.

PWM off @freeride: noch nicht implementiert.

Enable rotor angle correction: Die automatische Anpassung des advance angle wird aktiviert. Bei Verwendung eines ZWS-Typs muß die Option deaktiviert bleiben. Der Controller wird dann nicht im Effizienzoptimum laufen und unnötige Wärme erzeugen.

Display Type –> None: Keine Displayunterstützung. Der Controller wird durch Brücken von Rot auf Blau am Display-Anschluß eingeschaltet und läuft dann mit den im Tool eingestellten Grundeinstellungen. Ohne Display ist die Unterstützungsstufe 3 voreingestellt. Rx sollte mit GND verbunden werden (gelb mit schwarz).

Display Type –> Kingmeter J-LCD: Unterstützung des Kingmeter J-LCD und der Lishui Forerider-App. Es funktioniert derzeit nur der normale Betriebsmodus, der Programmiermodus des Displays und der App wird nicht unterstützt.

Display Type –> KT-LCD3: Unterstützung des Kunteng LCD3. Aus der Displayeinstellung wird nur die Fahrstufe und die Radgröße verwendet. Alle anderen Einstellungen sind derzeit ohne Funktion.

Display Type –> BlueOsec-App: Die BluOsec-App wird als Display verwendet. siehe BluOsec

Display Type –> Diagnostics: Es werden (derzeit fest im Code) vorgegebene Parameter an einen Laptop oder über ein Bluetoothmodul ans Smartphone gesendet werden. Für die Änderung der ausgegebenen Parameter siehe open_source_firmware_eclipse.

Speed sensor –> Internal: Geschwindigkeit wird aus der Motorkommutierung errechnet. Hier wird bei Motoren mit Freilauf bei Motorstillstand keine Geschwindigkeit angezeigt.

Speed sensor –> External: Geschwindigkeit wird aus externem Sensorsignal errechnet. Hier wird die Geschwindigkeit auch bei Motorstillstand und bei Mittelmotoren immer korrekt angezeigt.

Schaltfläche Write Configuration: Die eingestellten Paramter werden in die Datei „config.h“ geschrieben und die Compilierung des Codes sowie anschließend der Flashvorgang gestartet. Dazu muß der Controller mit dem STLink-V2 verbunden sein. Das Flashen kann durch das Blinken der LED im STLink-V2 beobachtet werden.

Schaltfläche Write Option Bytes: Aufheben des Schreibschutzes eines neuen Controllers. Achtung, diese Funktion löscht die originale Firmware von Kunteng und kann nicht rückgängig gemacht werden! Diese Funktion muß nur ein mal pro Controller ausgeführt werden.

Experten-Settings, diese Werte bitte nur ändern, wenn ihr wisst was ihr tut!

Hall Angle 4: Definiert den Rotorwinkel der dem Hallmuster 4 zugeordnet ist. Muß in der Regel nicht geändert werden. Hiermit können Fertigungsungenauigkeiten der Hallsensorpositionierung ausgeglichen werden, die sich z.B. durch geräuschvollen Lauf oder Vibrationen äußern können. In der BluOsec App werden in der Phasenstromdarstellung Hinweise gegeben, in welche Richtung der Winkel verändert werden muß, um einen ruhigeren Lauf zu erreichen.

Hall Angle 1 … 6: analog Hall Angle 4

Correction Angle: Ist der Winkel an dem die automatische Anpassung des Advance-Angle erfolgt. Im Zweifelsfall auf 127 stellen!

zurück zur Hauptseite

elektrotechnik/open_source_firmware_java_tool.txt · Zuletzt geändert: 2019/05/02 18:36 (Externe Bearbeitung)