Prof. J. Walter - Informationstechnik, Mikrocomputertechnik, Digitale Medien Softwaredoku
Hochschule Karlsruhe Logo F&E Projekt
Last Mile Solution
Sommersemester 2019
Josy Laier | Janik Streicher | Fabian Becker

Software Dokumentation

Die Aufgaben der Software bestehen aus dem Einlesen der Gas- und Bremspedalstellung, der entsprechenden Ansteuerung des Motors, sowie der Bereitstellung verschiedener Sicherheitseinrichtungen. All diese Softwarefunktionen werden von dem ausgewählten Motorregler, im folgenden "VESC" genannt, bereitgestellt, welcher auf einer Open-Source-Firmware basiert (vgl. https://vesc-project.com/). Die systemspezifischen Anpassungen der Softwareparameter erfolgen dabei durch das benutzerfreundliche VESC-Tool. Hier wurde die Version 0.95 verwendet, da diese für die gelieferten VESC´s empfohlen wird. Nachfolgend werden wichtige gewählte Einstellungen und Parameter erläutert.
 
Abb. 3.8: VESC-Motorregler

Motoransteuerung und Motorparameter

Datenstand Motor Settings

Bei dem anzusteuernden Motor handelt es sich um einen Drehstrom-Motor. Um den Motor in Bewegung zu versetzen müssen die einzelnen Phasen (insgesamt 3 Stück) je nach aktueller Motorposition durch ein sogenanntes Drehfeld angesteuert werden. Dabei gibt es mehrere Möglichkeiten die Phasen zu bestromen:

BLCD Anteuerung (vereinfacht) FOC Ansteuerung (Feldorientierte Regelung)

Abb. 3.9: BLDC Ansteuerung

Abb. 3.10: FOC Ansteuerung
Bei der klassischen BLDC-Anteuerung werden jeweils zwei der Drei Phasen gleichzeitig bestromt. Insgesamt sind dadurch 6 verschiedene Schaltzustände möglich. Bei der feldorientierten Regelung wird zu jeder Rotorposition die ideale Bestromung der Phasen berechnet. Dies macht diese Ansteuerung besonders effizient und verbessert das Anlaufverhalten, setzt allerdings einen geeigneten Sensor zur Positionsbestimmung des Motors voraus.



Abb. 3.11: Dremomentdiagramm BLDC vs. FOC

Vergleicht man das Drehmomentdiagramm dieser beiden Ansteuerungsarten versteht man, warum die Geräuschentwicklung bei Ansteuerung über FOC deutlich geringer ist. BLDC bietet dagegen eine etwas höhere Ausgangsleistung und damit eine höhere Endgeschwindigkeit. Da unser Motor einen Hall-Sensor zur Positionsbestimmung besitzt und eine höhere Effizienz und ein geringer Geräuschpegel beim Fahren wichtiger sind, entschieden wir uns für die Ansteuerungoption FOC. Die Motorparameter wurden dabei durch den Setup Assistenten eingelernt (vgl. Anleitung im VESC-Tool).

 
Abb. 3.12: Motorparameter aus Setup Assistent
 
Abb. 3.13: Motordaten Hall-Sensoren


APP-Einstellung (Steuersignale Gas & Motorbremse)

Datenstand App Settings

Das Steuersignal bezüglich gewünschter Beschleunigung und Verzögerung durch die Motorbremse und damit verbundener Rekuperation, erfolgt durch zwei getrennte Potentiometer. Diese werden vom Motorregler mit einer Spannung von 3,3 Volt versorgt und geben je nach Betätigung eine Spannung zwischen 0,9 V und 2,6 V an den Motorrelger zurück. Diese Steuerspannung wird über die beiden ADC-Kanäle des Motorreglers eingelesen. Die jeweilige Minimal- und Maximalspannung wurde für jeden Kanal eingetragen und entspricht damit 0 % bzw. 100 % Gas/Bremse. Um die Dosierbarkeit des Gashebels und damit die Fahrbarkeit bei geringen Geschwindigkeiten zu verbessern, wurde die Kennlinie um einen exponentiellen Anteil ergänzt. Damit eine entsprechende Ansteuerung des Motors, wie eben beschrieben, erfolgt, muss bei der Einstellung AppSettings->General->ControlType die Option "Current No Reverse Brake ADC2" ausgewählt werden.


Abb. 3.14: Steuerspannungen ADC1 und ADC 2

Abb. 3.15: Beschleunigungs-Kennlinie


Sonstige Parameter


Im Bereich Motor Settings - General:
Motor Current Max  20 A  Hier wird der maximal zulässige Strom des Radnabenmotors eingestellt. Herstellerseitig wird häufig nur eine Dauerbelastbarkeit angegeben, die maximale Peakbelastbarkeit liegt meist deutlich über dieser Angabe. Da in unserem Fall keine Motorkenndaten gegeben waren, mussten wir dies Stromgrenze langsam erhöhen, bis eine ähnliche Beschleunigung wie im Original-Roller erreicht wurde, ohne dass der Motor überhitzt. 
Motor Current Max Brake  -30 A  Stellt ein, wie stark der Motor abgebremst wird.
Battery Current Max  16,5 A  Einstellung der maximal möglichen Energieabgabe der Batterie. Da keine Kennwerte der 5 AH großen Batterie angegeben waren, wurde der maximale Strom im Originalroller gemessen und hier übernommen. 
Battery Current Max Regen  -10 A  Maximaler Ladestrom der Batterie durch Rekuperation. Hier wurde eine maximale Laderate von 2C angenommen.
Maximum Wattage  600 W  Um den Motor nicht zu überlasten, wurde außerdem eine Grenze der maximalen Antriebsleistung von 600 W festgesetzt, was den Angaben des Rollerherstellers enstpricht.

Im Bereich Motor Settings - FOC
Switching Frequency  30 kHz  Um die geforderten Schaltzustände der einzelnen Phasen zu realisieren, schaltet der Motorregler die Ausgänge nach dem Prinzip der PWM. Die Schaltfrequenz kann hier varriert werden. Um störende Pfeifgeräusche im hörbaren Frequenzbereich zu eliminieren, wird hier eine Schaltfrequenz von 30 kHz (reale 15 kHz) eingestellt.


  Mit Unterstützung von Prof. J. Walter Sommersemester 2019