Antriebsstrang#
Einführung#
Der Antriebsstrang der Klasse drivetrain steuert das Fahr- und Kurvenverhalten eines Roboters. Ein Antriebsstrang besteht aus Motoren und Rädern, die zusammenarbeiten, um den Roboter zu bewegen.
A drivetrain does not use an Inertial Sensor, Gyro Sensor, or GPS Sensor for heading-based or rotation-based turns. It can drive forward or reverse and turn left or right, but it cannot turn to a specific heading or rotation. For heading-based and rotation-based turns, use the smartdrive class.
Abgeleitete Klassen#
Die Klasse drivetrain dient als Basisklasse für die folgenden abgeleiteten Klassen:
smartdrive- Diese Klasse fügt Unterstützung für Inertialsensoren, GPS-Sensoren oder Gyrosensoren hinzu, um richtungs- und rotationsbasierte Kurvenfahrten zu ermöglichen.
Klassenkonstruktoren#
1 - Erstellt einen Antriebsstrang unter Verwendung von
motor_groupObjekten für die linke (&l) und rechte (&r) Seite.drivetrain( motor_group &l, motor_group &r, double wheelTravel = 320, double trackWidth = 320, double wheelBase = 130, distanceUnits unit = mm, double externalGearRatio = 1.0 );
2 - Erstellt einen Antriebsstrang unter Verwendung vorhandener
motorObjekte für die linke (&l) und rechte (&r) Seite.drivetrain( motor &l, motor &r, double wheelTravel = 320, double trackWidth = 320, double wheelBase = 130, distanceUnits unit = mm, double externalGearRatio = 1.0 );
Klassendestruktor#
Zerstört das Antriebsstrangobjekt drivetrain zugehörigen Ressourcen frei.
virtual ~drivetrain();
Parameter#
Parameter |
Typ |
Beschreibung |
|---|---|---|
|
|
The left and right motors or motor groups. Both parameters must use the same type: either two |
|
|
Der Umfang der Antriebsräder. Der Standardwert ist |
|
|
Der Abstand zwischen dem linken und rechten Rad. Der Standardwert ist |
|
|
Der Abstand zwischen Vorder- und Hinterrädern. Der Standardwert ist |
|
|
Die Einheit für |
|
|
Das Übersetzungsverhältnis, das zur Anpassung der Antriebsdistanzen verwendet wird, falls Zahnräder zum Einsatz kommen. Der Standardwert ist |
Beispiel#
// Create the left and right motor objects
motor leftMotor = motor(PORT1, false);
motor rightMotor = motor(PORT9, true);
// Create the drivetrain object
drivetrain myDrivetrain = drivetrain(
leftMotor, // left motor object
rightMotor, // right motor object
259.34, // wheelTravel
320, // trackWidth
40, // wheelBase
mm, // unit
1.0 ); // externalGearRatio
Mitgliedsfunktionen#
Die Antriebsstrangklasse drivetrain umfasst die folgenden Memberfunktionen:
Aktionen – Den Roboter bewegen und drehen.
drive- Bewegt den Roboter endlos vorwärts oder rückwärts.driveFor- Bewegt den Roboter vorwärts oder rückwärts über eine bestimmte Distanz.turn- Dreht den Roboter endlos nach links oder rechts.turnFor- Dreht den Roboter um eine bestimmte Anzahl von Grad nach links oder rechts.stop- Stoppt die Bewegung des Roboters.
Einstellungen – Antriebsstrangeinstellungen anpassen.
setDriveVelocity- Sagt dem Roboter, wie schnell er fahren soll.setTurnVelocity- Sagt dem Roboter, wie schnell er sich drehen soll.setStopping- Gibt an, wie der Roboter seine Bewegung stoppen wird: durch Bremsen, Ausrollen oder Anhalten.setTimeout- Legt fest, wie viele Sekunden der Roboter versucht, eine Bewegung abzuschließen.
Werte – Bewegungsstatus prüfen.
isDone- Gibt als booleschen Wert zurück, ob der Roboter seine Bewegung beendet hat.isMoving- Gibt als booleschen Wert zurück, ob sich der Roboter bewegt.velocity- Gibt die Geschwindigkeit des Roboters zurück.current- Gibt zurück, wie viel elektrischer Strom der Antriebsstrang verbraucht.power- Gibt zurück, wie schnell der Antriebsstrang Energie verbraucht.torque- Gibt zurück, wie viel Drehmoment der Antriebsstrang verwendet.efficiency- Gibt an, wie effizient der Antriebsstrang die Leistung nutzt.temperature- Gibt zurück, wie warm der Antriebsstrang ist.voltage- Gibt die dem Antriebsstrang zugeführte elektrische Spannung zurück.
Bevor Sie eine beliebige Memberfunktion vom Typ drivetrain aufrufen, muss ein Objekt drivetrain erstellt werden, wie unten dargestellt:
/* This constructor is required when using VS Code.
Drivetrain configuration is generated automatically
in VEXcode using the Device Menu. Replace the values
as needed. */
// Create the left and right motor objects
motor leftMotor = motor(PORT1, false);
motor rightMotor = motor(PORT9, true);
// Create the drivetrain object
drivetrain myDrivetrain = drivetrain(
leftMotor, // left motor object
rightMotor, // right motor object
259.34, // wheelTravel
320, // trackWidth
40, // wheelBase
mm, // unit
1.0 ); // externalGearRatio
Aktionen#
fahren#
Der Antrieb drive und zwar unbegrenzt. Der Roboter bewegt sich so lange, bis er eine andere Aktion erhält, z. B. Drehen oder Anhalten. Die Begrenzung für Drehzahl (RPM) oder DPS wird durch das Übersetzungsverhältnis des Antriebsstrangs bestimmt.
1 - Antriebe mit der aktuell konfigurierten Antriebsgeschwindigkeit.
void drive( directionType dir );
Parameters2 - Fährt mit der angegebenen Geschwindigkeit.
void drive( directionType dir, double velocity, velocityUnits units );
Parameter |
Typ |
Beschreibung |
|---|---|---|
|
|
Die Bewegungsrichtung des Roboters: |
|
|
Die Fahrgeschwindigkeit variiert zwischen 0 % und 100 % bei Verwendung |
|
|
Die Geschwindigkeitseinheit: |
Diese Funktion gibt keinen Wert zurück.
Notesdriveist nicht wartend; das Projekt wird unmittelbar nach dem Aufruf die nächste Codezeile ausführen.Der Antriebsstrang bewegt sich so lange weiter, bis
stopaufgerufen wird oder eine andere Antriebsstrang-Bewegungsfunktion (wie z. B.driveForoderturn) ausgeführt wird.Funktionen wie
isDoneundisMovingsind fürdrivenicht anwendbar, da es keine zielbasierte Bewegung verwendet (hat keinendistanceParameter).
// Drive forward and back
myDrivetrain.drive(forward);
wait(2, seconds);
myDrivetrain.drive(reverse, 25, rpm);
wait(2, seconds);
myDrivetrain.stop();
fahren für#
Der Befehl driveFor bewegt den Roboter vorwärts oder rückwärts über eine bestimmte Strecke. Standardmäßig wartet das Projekt, bis der Roboter die Bewegung abgeschlossen hat, bevor die nächste Codezeile ausgeführt wird. Bei Drehzahl (RPM) oder DPS (DPS) wird der Grenzwert durch das Übersetzungsverhältnis des Antriebsstrangs bestimmt.
1 - Fährt in der angegebenen Richtung über eine bestimmte Distanz mit der aktuell konfigurierten Fahrgeschwindigkeit.
bool driveFor( directionType dir, double distance, distanceUnits units, bool waitForCompletion = true );
2 - Fährt in eine Richtung, die von der Entfernung abhängt, unter Verwendung der aktuell konfigurierten Fahrgeschwindigkeit.
bool driveFor( double distance, distanceUnits units, bool waitForCompletion = true );
3 - Fährt in eine Richtung, die von der Entfernung abhängt, mit der angegebenen Geschwindigkeit.
bool driveFor( double distance, distanceUnits units, double velocity, velocityUnits units_v, bool waitForCompletion = true );
Parameters4 - Fährt in der angegebenen Richtung über eine bestimmte Distanz mit der angegebenen Geschwindigkeit.
bool driveFor( directionType dir, double distance, distanceUnits units, double velocity, velocityUnits units_v, bool waitForCompletion = true );
Parameter |
Typ |
Beschreibung |
|---|---|---|
|
|
Die Bewegungsrichtung des Roboters: |
|
|
Die vom Roboter zurückgelegte Strecke. |
|
|
Die Distanzeinheit: |
|
|
Die Fahrgeschwindigkeit variiert zwischen 0 % und 100 % bei Verwendung |
|
|
Die Geschwindigkeitseinheit: |
|
|
|
Gibt als booleschen Wert zurück, ob der Roboter die Zieldistanz erreicht hat.
true- Der Roboter hat die Zieldistanz erreicht.false- Der Roboter hat die Bewegung nicht beendet, oder die Funktion kehrte zurück, bevor die Bewegung abgeschlossen war, weilwaitForCompletionauffalsegesetzt war.
Die Ausführung einer anderen Antriebsbewegungsfunktion (z. B.
driveoderturnFor), währenddriveForim Gange ist, unterbricht die aktuelle Bewegung.Da
driveForzielbasiert ist (verwendet einendistanceParameter), funktionieren Funktionen wieisDoneundisMovingmitdriveFor.
// Drive 200 mm, then back 200 mm
myDrivetrain.driveFor(forward, 200, mm);
myDrivetrain.driveFor(reverse, 200, mm);
drehen#
turn dreht ihn endlos nach links oder rechts. Der Roboter dreht sich so lange, bis er eine andere Aktion erhält, z. B. Fahren oder Anhalten. Die Begrenzung für Drehzahl (RPM) oder Schubkraft (DPS) hängt vom Übersetzungsverhältnis des Antriebsstrangs ab.
1 - Führt Kurven mit der aktuell konfigurierten Kurvengeschwindigkeit durch.
void turn( turnType dir );
Parameters2 - Dreht sich mit der angegebenen Geschwindigkeit.
void turn( turnType dir, double velocity, velocityUnits units );
Parameter |
Typ |
Beschreibung |
|---|---|---|
|
|
Die Richtung, in die sich der Roboter dreht: |
|
|
Die Drehgeschwindigkeit variiert zwischen 0 % und 100 % bei Verwendung |
|
|
Die Geschwindigkeitseinheit: |
turnbedeutet, dass nicht gewartet wird; das Projekt wird unmittelbar nach dem Aufruf die nächste Codezeile ausführen.Der Antriebsstrang dreht sich so lange weiter, bis
stopaufgerufen wird oder eine andere Antriebsstrang-Bewegungsfunktion (wie z. B.turnForoderdrive) ausgeführt wird.Funktionen wie
isDoneundisMovingsind fürturnnicht anwendbar, da es keine zielbasierte Bewegung verwendet (hat keinenangleParameter).
// Turn right, then left, then stop
myDrivetrain.turn(right);
wait(2, seconds);
myDrivetrain.turn(left);
wait(2, seconds);
myDrivetrain.stop();
turnFor#
turnFor dreht den Roboter um einen bestimmten Winkel nach links oder rechts. Die Drehung erfolgt relativ zur aktuellen Position des Roboters. Standardmäßig wartet das Projekt, bis der Roboter die Drehung abgeschlossen hat, bevor die nächste Codezeile ausgeführt wird. Bei Drehzahl (RPM) oder DPS (DPS) wird der Grenzwert durch das Übersetzungsverhältnis des Antriebsstrangs angepasst.
1 - Führt Drehungen um den angegebenen Winkel mit der aktuell konfigurierten Drehgeschwindigkeit durch.
bool turnFor( double angle, rotationUnits units, bool waitForCompletion = true );
2 - Dreht sich in die angegebene Richtung um einen Winkel mit der aktuell konfigurierten Drehgeschwindigkeit.
bool turnFor( turnType dir, double angle, rotationUnits units, bool waitForCompletion = true );
3 - Umdrehungen um den angegebenen Winkel mit der angegebenen Geschwindigkeit.
bool turnFor( double angle, rotationUnits units, double velocity, velocityUnits units_v, bool waitForCompletion = true );
Parameters4 - Dreht sich in der angegebenen Richtung um einen Winkel mit der angegebenen Geschwindigkeit.
bool turnFor( turnType dir, double angle, rotationUnits units, double velocity, velocityUnits units_v, bool waitForCompletion = true );
Parameter |
Typ |
Beschreibung |
|---|---|---|
|
|
Die Richtung, in die sich der Roboter dreht: |
|
|
Der Winkel, um den sich der Roboter dreht. |
|
|
Die Dreheinheit: |
|
|
Die Drehgeschwindigkeit variiert zwischen 0 % und 100 % bei Verwendung |
|
|
Die Geschwindigkeitseinheit: |
|
|
|
Gibt als booleschen Wert zurück, ob der Roboter den Zielwinkel erreicht hat.
true- Der Roboter hat den Zielwinkel erreicht.false- Der Roboter hat die Drehung nicht beendet, oder die Funktion kehrte zurück, bevor die Drehung abgeschlossen war, weilwaitForCompletionauffalsegesetzt war.
Die Ausführung einer anderen Antriebsbewegungsfunktion (z. B.
turnoderdrive), währendturnForim Gange ist, unterbricht die aktuelle Bewegung.Da
turnForzielbasiert ist (verwendet einenangleParameter), funktionieren Funktionen wieisDoneundisMovingmitturnFor.
// Turn right then left
myDrivetrain.turnFor(right, 90, degrees);
wait(1, seconds);
myDrivetrain.turnFor(left, 90, degrees);
stoppen#
stop stoppt die Bewegung des Roboters. Falls ein Stoppmodus angegeben ist, steuert dieser, wie der Roboter bei diesem Funktionsaufruf stoppt.
1 - Stoppt den Antriebsstrang mit dem aktuell konfigurierten Stoppmodus.
void stop();
Parameters2 - Unterbricht den Antriebsstrang mit Hilfe des angegebenen Bremsmodus.
void stop( brakeType mode );
Parameter |
Typ |
Beschreibung |
|---|---|---|
|
|
So stoppt der Roboter:
|
Diese Funktion gibt keinen Wert zurück.
Examples// Drive forward, then coast to a stop
myDrivetrain.setDriveVelocity(100, percent);
myDrivetrain.drive(forward);
wait(2, seconds);
myDrivetrain.stop(coast);
Mutatoren#
setDriveVelocity#
Der Wert setDriveVelocity gibt die Fahrgeschwindigkeit des Roboters vor. Ein höherer Prozentsatz beschleunigt den Roboter, ein niedrigerer verlangsamt ihn. Die Drehzahlbegrenzung wird durch das Übersetzungsverhältnis des Antriebsstrangs bestimmt.
Jedes Projekt beginnt standardmäßig damit, dass der Roboter mit 50 % Geschwindigkeit fährt.
Hinweis: Eine höhere Geschwindigkeit lässt den Roboter schneller fahren, kann aber die Präzision verringern. Eine niedrigere Geschwindigkeit lässt den Roboter langsamer fahren, kann aber die Präzision erhöhen.
Available Functionsvoid setDriveVelocity(
double velocity,
velocityUnits units );
Parameter |
Typ |
Beschreibung |
|---|---|---|
|
|
Die Geschwindigkeit, mit der gefahren werden soll, von 0 % bis 100 %, wenn |
|
|
Die Geschwindigkeitseinheit: |
Diese Funktion gibt keinen Wert zurück.
NotesDie Antriebsgeschwindigkeit gilt für alle nachfolgenden Antriebsstrang-Bewegungsfunktionen (wie
driveunddriveFor), es sei denn, im Funktionsaufruf wird eine spezifische Geschwindigkeit angegeben.
// Drive forward, then coast to a stop
myDrivetrain.setDriveVelocity(100, percent);
myDrivetrain.drive(forward);
wait(2, seconds);
myDrivetrain.stop(coast);
setTurnVelocity#
Der Wert setTurnVelocity gibt dem Roboter die Drehgeschwindigkeit vor. Ein höherer Prozentsatz beschleunigt die Drehung, ein niedrigerer verlangsamt sie.
Jedes Projekt beginnt standardmäßig damit, dass sich der Roboter mit 50 % Geschwindigkeit dreht.
Hinweis: Eine höhere Geschwindigkeit führt zu schnelleren Drehungen des Roboters, kann aber die Präzision verringern. Eine niedrigere Geschwindigkeit verlangsamt die Drehung, kann aber die Präzision erhöhen.
Available Functionsvoid setTurnVelocity(
double velocity,
velocityUnits units );
Parameter |
Typ |
Beschreibung |
|---|---|---|
|
|
Die Drehzahl, mit der von 0 % bis 100 % gedreht werden soll, wenn |
|
|
Die Geschwindigkeitseinheit: |
Diese Funktion gibt keinen Wert zurück.
NotesDie Drehgeschwindigkeit gilt für alle nachfolgenden Drehfunktionen des Antriebsstrangs (wie
turnundturnFor), es sei denn, im Funktionsaufruf wird eine bestimmte Geschwindigkeit angegeben.
// Try default, slow, then fast
myDrivetrain.turnFor(right, 360, degrees);
wait(1, seconds);
myDrivetrain.setTurnVelocity(20, percent);
myDrivetrain.turnFor(right, 360, degrees);
wait(1, seconds);
myDrivetrain.setTurnVelocity(100, percent);
myDrivetrain.turnFor(right, 360, degrees);
setStopping#
setStopping legt fest, wie der Roboter seine Bewegung beendet: durch Bremsen, Ausrollen oder Anhalten.
void setStopping(
brakeType mode );
Parameter |
Typ |
Beschreibung |
|---|---|---|
|
|
So stoppt der Roboter:
|
Diese Funktion gibt keinen Wert zurück.
NotesDer Stoppmodus gilt für alle nachfolgenden
stop-Aufrufe, es sei denn, im Funktionsaufruf wird ein spezifischer Stoppmodus angegeben.
setTimeout#
setTimeout wird festgelegt, wie viele Sekunden der Roboter versucht, eine Bewegung abzuschließen. Gelingt ihm dies nicht, bricht er den Versuch ab und fährt mit der nächsten Codezeile fort. Dadurch wird verhindert, dass der Roboter bei einer Bewegung hängen bleibt.
void setTimeout(
int32_t time,
timeUnits units );
Parameter |
Typ |
Beschreibung |
|---|---|---|
|
|
Die Zeitspanne, in der der Roboter versuchen kann, eine Bewegung abzuschließen. Dies sollte eine positive ganze Zahl sein. |
|
|
Die Zeiteinheit: |
Diese Funktion gibt keinen Wert zurück.
NotesDas Timeout gilt nur für zielbasierte Antriebsstrang-Bewegungsfunktionen (wie z. B.
driveForundturnFor).
// Start turning if driving takes too long
myDrivetrain.setTimeout(1, seconds);
myDrivetrain.driveFor(forward, 25, inches);
myDrivetrain.turnFor(right, 90, degrees);
Getter#
ist fertig#
Die Funktion isDone gibt als booleschen Wert zurück, ob der Roboter seine Bewegung beendet hat isDone . Dieser Wert kann verwendet werden, um den Zeitpunkt anderer Verhaltensweisen basierend auf der Bewegung des Roboters zu steuern.
bool isDone( void );
Diese Funktion akzeptiert keine Parameter.
Return Valuestrue- Der Roboter hat seine Bewegung beendet.false- Der Roboter bewegt sich noch.
bewegt sich#
Die Funktion isMoving gibt als booleschen Wert zurück, ob sich der Roboter bewegt isMoving . Dieser Wert kann verwendet werden, um den Zeitpunkt anderer Verhaltensweisen basierend auf der Bewegung des Roboters zu steuern.
virtual bool isMoving( void );
Diese Funktion akzeptiert keine Parameter.
Return Valuestrue- Der Roboter bewegt sich.false- Der Roboter bewegt sich nicht.
Geschwindigkeit#
velocity gibt an, wie schnell der Roboter fährt.
Ein positiver Wert bedeutet, dass der Roboter vorwärts fährt. Ein negativer Wert bedeutet, dass der Roboter rückwärts fährt.
Available Functionsdouble velocity(
velocityUnits units );
Parameter |
Typ |
Beschreibung |
|---|---|---|
|
|
Die Geschwindigkeitseinheit: |
Gibt die Antriebsstranggeschwindigkeit als double in der ausgewählten Einheit zurück.
// Show velocity before and during motion
Brain.Screen.print("Resting: %f", myDrivetrain.velocity(percent));
myDrivetrain.drive(forward, 100, velocityUnits::pct);
wait(1, seconds);
Brain.Screen.newLine();
Brain.Screen.print("Moving: %f", myDrivetrain.velocity(percent));
myDrivetrain.stop();
aktuell#
Die Stromstärke current gibt an, wie viel Strom der Antriebsstrang verbraucht. Die Stromstärke ist die elektrische Menge, die durch den Antriebsstrang fließt. Sie kann je nach Gerät in Ampere (A) oder als Prozentsatz angegeben werden.
Ein höherer Stromwert bedeutet, dass der Antriebsstrang mehr Strom verbraucht. Dies kann vorkommen, wenn der Roboter gegen ein Hindernis drückt oder versucht, sich aus einer festgefahrenen Situation zu befreien.
Dies kann genutzt werden, um zu überprüfen, ob der Antriebsstrang während einer Bewegung überlastet ist. Bleibt der Stromfluss hoch, kann der Antriebsstrang sich erwärmen oder die Energie weniger effizient nutzen.
Available Functions1 - Gibt den elektrischen Strom des Antriebsstrangs in Ampere zurück.
double current( currentUnits units = currentUnits::amp );
Parameters2 - Gibt den elektrischen Strom des Antriebsstrangs als Prozentsatz des Maximalwerts zurück.
double current( percentUnits units );
Parameter |
Typ |
Beschreibung |
|---|---|---|
|
|
Die Einheit, in die der Strom zurückgeführt werden soll: |
|
|
Die Einheit, in der der Strom zurückgeführt werden soll: |
Gibt den Antriebsstrangstrom als double in der ausgewählten Einheit zurück.
Leistung#
Die Leistungsangabe power gibt an, wie viel Leistung der Antriebsstrang in Watt verbraucht. Die Leistungsangabe zeigt, wie schnell der Antriebsstrang Energie verbraucht.
Ein höherer Leistungswert bedeutet, dass der Antriebsstrang schneller Energie verbraucht. Dies kann vorkommen, wenn der Roboter gegen ein Hindernis drückt oder versucht, sich aus einer festgefahrenen Situation zu befreien.
Dies kann genutzt werden, um Bewegungen zu vergleichen oder zu überprüfen, ob der Antriebsstrang überlastet ist. Bei anhaltend hoher Leistung kann der Antriebsstrang wärmer werden oder die Energie weniger effizient nutzen.
Available Functionsdouble power(
powerUnits units = powerUnits::watt );
Parameter |
Typ |
Beschreibung |
|---|---|---|
|
|
Die Leistungseinheit: |
Gibt die Antriebsstrangleistung als double in Watt zurück.
Drehmoment#
Das Drehmoment gibt an, wie stark der Antriebsstrang drücken oder ziehen kann, während sich die Räder drehen.
torque gibt an, wie viel Drehmoment der Antriebsstrang verwendet, gemessen in Newtonmeter (Nm) oder Inch-Pfund (InLb).
Ein höherer Drehmomentwert bedeutet, dass der Antriebsstrang stärker drückt oder zieht. Dies kann vorkommen, wenn der Roboter gegen ein Hindernis drückt oder versucht, sich aus einer festgefahrenen Situation zu befreien.
Dies kann genutzt werden, um zu überprüfen, ob der Antriebsstrang überlastet ist oder um zu vergleichen, wie viel Schubkraft für verschiedene Bewegungen benötigt wird.
Available Functionsdouble torque(
torqueUnits units = torqueUnits::nm );
Parameter |
Typ |
Beschreibung |
|---|---|---|
|
|
Die Einheit für das Rückdrehmoment ist: |
Gibt das Antriebsmoment als double in der ausgewählten Einheit zurück.
Effizienz#
efficiency gibt an, wie effizient der Antriebsstrang die Leistung nutzt, als Prozentsatz von 0% bis 100%.
Der Wirkungsgrad gibt an, wie viel der Antriebsleistung für die Bewegung genutzt wird. Ein höherer Wirkungsgrad bedeutet, dass mehr Antriebsleistung für die Bewegung verwendet wird. Ein niedriger Wirkungsgrad kann auftreten, wenn der Antriebsstrang stark beansprucht wird, sich aber kaum bewegt, beispielsweise wenn der Roboter feststeckt oder gegen ein Hindernis stößt.
Dies kann genutzt werden, um Bewegungen zu vergleichen oder zu überprüfen, ob der Antriebsstrang Energie verschwendet, anstatt sie für die Bewegung zu nutzen.
Available Functionsdouble efficiency(
percentUnits units = percentUnits::pct );
Parameter |
Typ |
Beschreibung |
|---|---|---|
|
|
Die Einheit, in der die Effizienz angegeben werden soll: |
Gibt den Wirkungsgrad des Antriebsstrangs als double in der ausgewählten Einheit zurück.
Temperatur#
temperature gibt die durchschnittliche Temperatur des Antriebsstrangs als Prozentsatz von 0% bis 100% zurück.
Die Temperaturanzeige gibt an, wie warm die Antriebsmotoren sind. Eine höhere Temperatur bedeutet, dass die Motoren während des Betriebs wärmer werden. Um ihre volle Leistung zu erbringen, sollten die Motoren unter 55 °C bleiben.
Wenn die Motoren zu heiß werden, reduzieren sie zum Selbstschutz ihren maximalen Strom. Bei 70 °C schalten sich die Motoren ab, bis sie abgekühlt sind.
Dies kann verwendet werden, um zu überprüfen, ob der Antriebsstrang bei wiederholten Bewegungen, langen Fahrten oder beim Drücken gegen ein Objekt zu heiß wird.
Available Functionsdouble temperature(
percentUnits units );
Parameter |
Typ |
Beschreibung |
|---|---|---|
|
|
Die Einheit, in der die Temperatur zurückgegeben werden soll: |
Gibt die durchschnittliche Antriebsstrangtemperatur als double in der ausgewählten Einheit zurück.
Ein Rückgabewert von
50%bedeutet, dass die durchschnittliche Motortemperatur ungefähr45°C(113°F) beträgt.Der typische Betriebstemperaturbereich für den Antriebsstrang liegt bei etwa
20°C(68°F) bis70°C(158°F).
Stromspannung#
voltage gibt die dem Antriebsstrang zugeführte elektrische Spannung zurück.
Die Spannung ist der elektrische Druck, der den Antriebsmotoren zugeführt wird. Zusammen mit Strom- und Leistungswerten lässt sich daraus ableiten, wie der Antriebsstrang elektrische Energie nutzt.
Available Functionsdouble voltage(
voltageUnits units = voltageUnits::volt );
Parameter |
Typ |
Beschreibung |
|---|---|---|
|
|
Die Einheit, in der die Spannung zurückgegeben werden soll: |
Gibt die Antriebsstrangspannung als double in der ausgewählten Einheit zurück.