Aandrijving#

Invoering#

De aandrijflijn (klasse drivetrain bepaalt hoe een robot rijdt en stuurt. Een aandrijflijn bestaat uit motoren en wielen die samenwerken om de robot te bewegen.

Een drivetrain gebruikt geen gyroscoopsensor of traagheidssensor voor bochten op basis van richting of rotatie. Hij kan vooruit of achteruit rijden en naar links of rechts draaien, maar hij kan niet naar een specifieke richting of rotatie draaien. Voor bochten op basis van richting en rotatie, gebruik de smartdrive klasse.

Op deze pagina wordt myDrivetrain als voorbeeld van een aandrijflijnnaam gebruikt. Vervang dit door uw eigen geconfigureerde naam indien nodig.

Afgeleide klassen#

De klasse drivetrain dient als basisklasse voor de volgende afgeleide klasse:

  • smartdrive - Creëert een aandrijflijn met ondersteuning voor gyroscoopsensor of traagheidssensor.

Klasseconstructors#

1 - Creëert een aandrijflijn met behulp van bestaande motor_group objecten voor de linker- en rechterkant.

drivetrain(
    motor_group      &l,
    motor_group      &r,
    double           wheelTravel = 320,
    double           trackWidth = 320,
    double           wheelBase = 130,
    distanceUnits    unit = mm,
    double           externalGearRatio = 1.0 );

2 - Creëert een aandrijflijn met behulp van bestaande motor objecten voor de linker- en rechterkant.

drivetrain(
    motor            &l,
    motor            &r,
    double           wheelTravel = 320,
    double           trackWidth = 320,
    double           wheelBase = 130,
    distanceUnits    unit = mm,
    double           externalGearRatio = 1.0 );

Klasse-destructor#

Vernietigt het drivetrain object en geeft de bijbehorende resources vrij.

virtual ~drivetrain();

Parameters#

Parameter

Type

Beschrijving

&l / &r

motor_group / motor

De linker- en rechtermotor of motorgroepen. Beide parameters moeten van hetzelfde type zijn: ofwel twee motor_group objecten of twee motor -objecten.

wheelTravel

double

De omtrek van de aandrijfwielen. De standaardwaarde is 320.

trackWidth

double

De afstand tussen het linker- en rechterwiel. De standaardwaarde is 320.

wheelBase

double

De afstand tussen de voor- en achterwielen. De standaardwaarde is 130.

unit

distanceUnits

De eenheid voor wheelTravel, trackWidthen wheelBase: mm (standaard) of inches.

externalGearRatio

double

De overbrengingsverhouding die wordt gebruikt om de aandrijfafstand aan te passen als er versnellingen worden gebruikt. De standaardwaarde is 1.0.

Voorbeeld#

// 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
    rightMotor, // right motor
    259.34,     // wheelTravel
    320,        // trackWidth
    40,         // wheelBase
    mm,         // unit
    1.0 );      // externalGearRatio

Lidfuncties#

De klasse drivetrain omvat de volgende lidfuncties:

Acties - Beweeg en draai de robot.

  • drive - Laat de robot oneindig vooruit of achteruit bewegen.

  • driveFor - Verplaatst de robot vooruit of achteruit over een bepaalde afstand.

  • turn - Draait de robot permanent naar links of rechts.

  • turnFor - Draait de robot naar links of rechts voor een specifiek aantal graden of omwentelingen.

  • stop - Stopt de beweging van de robot.

Instellingen - Aandrijfinstellingen aanpassen.

  • setDriveVelocity - Vertelt de robot hoe snel hij moet rijden.

  • setTurnVelocity - Vertelt de robot hoe snel hij moet draaien.

  • setStopping - Geeft aan hoe de robot stopt met bewegen: door te remmen, uit te rollen of te wachten.

  • setTimeout - Stelt in hoe lang de robot erover doet om een ​​beweging te voltooien.

Waarden - Controleer de bewegingsstatus.

  • isDone - Geeft als Booleaanse waarde aan of de robot klaar is met bewegen.

  • isMoving - Geeft als Booleaanse waarde weer of de robot beweegt.

  • velocity - Geeft aan hoe snel de robot rijdt.

  • current - Geeft aan hoeveel elektrische stroom de aandrijflijn gebruikt.

  • power - Geeft aan hoe snel de aandrijving energie verbruikt.

  • torque - Geeft aan hoeveel koppel de aandrijflijn gebruikt.

  • efficiency - Geeft aan hoe efficiënt de aandrijflijn energie gebruikt.

  • temperature - Geeft aan hoe warm de aandrijflijn is.

  • voltage - Geeft de elektrische spanning van de aandrijflijn terug.

Voordat er lidfuncties van drivetrain kunnen worden aangeroepen, moet er een drivetrain object worden aangemaakt.

/* 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
    rightMotor, // right motor
    259.34,     // wheelTravel
    320,        // trackWidth
    40,         // wheelBase
    mm,         // unit
    1.0 );      // externalGearRatio

Acties#

drijfveer#

drive de robot beweegt oneindig vooruit of achteruit. De robot blijft bewegen totdat er een andere actie wordt gegeven, zoals draaien of stoppen.

Available Functions

1 - Aandrijvingen met behulp van de huidige aandrijfsnelheid.

void drive(
    directionType dir );

2 - Rijdt met de opgegeven snelheid.

void drive(
    directionType dir,
    double        velocity,
    velocityUnits units );

Parameters

Parameter

Type

Beschrijving

dir

directionType

De richting waarin de robot beweegt: forward of reverse.

velocity

double

De snelheid waarmee gereden wordt, varieert van 0% tot 100% bij gebruik van velocityUnits::pct, van 0 tot 120 rpm bij gebruik van rpm, of van 0 tot 720 graden per seconde bij gebruik van dpsAls er geen snelheid wordt opgegeven, rijdt de robot met de huidige aandrijfsnelheid.

units

velocityUnits

De snelheidseenheid: velocityUnits::pct (procent), rpm (rotaties per minuut), of dps (graden per seconde).

Return Values

Deze functie retourneert geen waarde.

Notes
  • drive is non-waiting. Het project zal de volgende regel code direct uitvoeren.

  • De robot blijft bewegen totdat stop wordt aangeroepen of een andere aandrijfbewegingsfunctie wordt uitgevoerd.

  • isDone en isMoving worden niet gebruikt met drive omdat drive geen doelafstand heeft.

Examples
// Drive forward and back.
myDrivetrain.drive(forward);
wait(2, seconds);
myDrivetrain.drive(reverse, 25, rpm);
wait(2, seconds);
myDrivetrain.stop();

driveFor#

driveFor verplaatst de robot vooruit of achteruit over een bepaalde afstand. Het project wacht tot de robot klaar is met bewegen voordat de volgende regel code wordt uitgevoerd.

Available Functions

1 - Rijdt in de aangegeven richting over een afstand met de huidige rijsnelheid.

bool driveFor(
    directionType dir,
    double        distance,
    distanceUnits units,
    bool          waitForCompletion = true );

2 - Rijdt in een richting op basis van de afstandswaarde met behulp van de huidige rijsnelheid.

bool driveFor(
    double        distance,
    distanceUnits units,
    bool          waitForCompletion = true );

3 - Rijdt in een richting op basis van de afstandswaarde met de opgegeven snelheid.

bool driveFor(
    double        distance,
    distanceUnits units,
    double        velocity,
    velocityUnits units_v,
    bool          waitForCompletion = true );

4 - Rijdt in de aangegeven richting over een bepaalde afstand met de aangegeven snelheid.

bool driveFor(
    directionType dir,
    double        distance,
    distanceUnits units,
    double        velocity,
    velocityUnits units_v,
    bool          waitForCompletion = true );

Parameters

Parameter

Type

Beschrijving

dir

directionType

De richting waarin de robot beweegt: forward of reverse.

distance

double

De afstand die de robot aflegt.

units

distanceUnits

De afstandseenheid: mm (millimeter), inchesof cm (centimeter).

velocity

double

De snelheid waarmee gereden wordt, varieert van 0% tot 100% bij gebruik van velocityUnits::pct, van 0 tot 120 rpm bij gebruik van rpm, of van 0 tot 720 graden per seconde bij gebruik van dpsAls er geen snelheid wordt opgegeven, rijdt de robot met de huidige aandrijfsnelheid.

units_v

velocityUnits

De snelheidseenheid: velocityUnits::pct (procent), rpm (rotaties per minuut), of dps (graden per seconde).

waitForCompletion

bool

true (standaard) zorgt ervoor dat het project wacht totdat de robot klaar is met bewegen voordat de volgende regel code wordt uitgevoerd. false zorgt ervoor dat de volgende regel code direct wordt uitgevoerd.

Return Values

Geeft als Booleaanse waarde terug of de robot de beoogde afstand heeft bereikt.

  • true - De robot heeft de beoogde afstand bereikt.

  • false - De robot heeft de beweging niet voltooid, of de functie is teruggekeerd voordat de beweging was voltooid omdat waitForCompletion was ingesteld op false.

Notes
  • Het uitvoeren van een andere aandrijfbewegingsfunctie terwijl driveFor actief is, onderbreekt de huidige beweging.

  • driveFor gebruikt een doelafstand, dus isDone en isMoving kunnen ermee gebruikt worden.

Examples
// Drive 200 mm, then back 200 mm.
myDrivetrain.driveFor(forward, 200, mm);
myDrivetrain.driveFor(reverse, 200, mm);

draai#

turn de robot draait oneindig naar links of rechts. De robot blijft draaien totdat er een andere actie wordt uitgevoerd, zoals rijden of stoppen.

Available Functions

1 - Draait met behulp van de huidige draaisnelheid.

void turn(
    turnType dir );

2 - Draait met de aangegeven snelheid.

void turn(
    turnType     dir,
    double       velocity,
    velocityUnits units );

Parameters

Parameter

Type

Beschrijving

dir

turnType

De richting waarin de robot draait: left of right.

velocity

double

De draaisnelheid varieert van 0% tot 100% bij gebruik van velocityUnits::pct, van 0 tot 120 rpm bij gebruik van rpm, of van 0 tot 720 graden per seconde bij gebruik van dpsAls er geen snelheid wordt opgegeven, draait de robot met de huidige draaisnelheid.

units

velocityUnits

De snelheidseenheid: velocityUnits::pct (procent), rpm (rotaties per minuut), of dps (graden per seconde).

Return Values

Deze functie retourneert geen waarde.

Notes
  • turn betekent dat er geen wachttijd is. Het project voert de volgende regel code direct uit.

  • De robot blijft draaien totdat stop wordt aangeroepen of een andere aandrijfbewegingsfunctie wordt uitgevoerd.

  • isDone en isMoving worden niet gebruikt met turn omdat turn geen doelhoek heeft.

Examples
// Turn right, then left, then stop.
myDrivetrain.turn(right);
wait(2, seconds);
myDrivetrain.turn(left);
wait(2, seconds);
myDrivetrain.stop();

draaiVoor#

turnFor draait de robot naar links of rechts over een specifiek aantal graden, omwentelingen of eenheden. De draai is relatief ten opzichte van de huidige positie van de robot. Het project wacht tot de robot klaar is met draaien voordat de volgende regel code wordt uitgevoerd.

Available Functions

1 - Draait voor de opgegeven hoek met behulp van de huidige draaisnelheid.

bool turnFor(
    double        angle,
    rotationUnits units,
    bool          waitForCompletion = true );

2 - Draait in de aangegeven richting over een hoek met behulp van de huidige draaisnelheid.

bool turnFor(
    turnType      dir,
    double        angle,
    rotationUnits units,
    bool          waitForCompletion = true );

3 - Draait voor de opgegeven hoek bij de opgegeven snelheid.

bool turnFor(
    double        angle,
    rotationUnits units,
    double        velocity,
    velocityUnits units_v,
    bool          waitForCompletion = true );

4 - Draait in de aangegeven richting over een bepaalde hoek met de aangegeven snelheid.

bool turnFor(
    turnType      dir,
    double        angle,
    rotationUnits units,
    double        velocity,
    velocityUnits units_v,
    bool          waitForCompletion = true );

Parameters

Parameter

Type

Beschrijving

dir

turnType

De richting waarin de robot draait: left of right.

angle

double

De mate waarin de robot draait.

units

rotationUnits

De eenheid voor een omwenteling is: deg , rev of raw . Eén omwenteling is gelijk aan 360 graden.

velocity

double

De draaisnelheid varieert van 0% tot 100% bij gebruik van velocityUnits::pct, van 0 tot 120 rpm bij gebruik van rpm, of van 0 tot 720 graden per seconde bij gebruik van dpsAls er geen snelheid wordt opgegeven, draait de robot met de huidige draaisnelheid.

units_v

velocityUnits

De snelheidseenheid: velocityUnits::pct (procent), rpm (rotaties per minuut), of dps (graden per seconde).

waitForCompletion

bool

true (standaard) zorgt ervoor dat het project wacht tot de robot klaar is met draaien voordat de volgende regel code wordt uitgevoerd. false zorgt ervoor dat de volgende regel code direct wordt uitgevoerd.

Return Values

Geeft als Booleaanse waarde terug of de robot de beoogde hoek heeft bereikt.

  • true - De robot heeft de doelhoek bereikt.

  • false - De robot heeft de beurt niet afgemaakt, of de functie is teruggekeerd voordat de beurt was voltooid omdat waitForCompletion was ingesteld op false.

Notes
  • Het uitvoeren van een andere aandrijfbeweging terwijl turnFor actief is, onderbreekt de huidige beweging.

  • turnFor gebruikt een doelhoek, dus isDone en isMoving kunnen ermee gebruikt worden.

Examples
// Turn right, then left.
myDrivetrain.turnFor(right, 90, degrees);
wait(1, seconds);
myDrivetrain.turnFor(left, 90, degrees);

stop#

stop stopt de beweging van de robot. Indien een stopmodus is opgegeven, bepaalt deze hoe de robot stopt voor deze functieaanroep.

Available Functions

1 - Stopt de aandrijving met behulp van de huidige stopmodus.

void stop();

2 - Stopt de aandrijving met behulp van de opgegeven stopmodus.

void stop(
    brakeType mode );

Parameters

Parameter

Type

Beschrijving

mode

brakeType

Hoe de robot stopt:

  • brake - Stopt onmiddellijk.
  • coast - Vertraagt ​​tot stilstand.
  • hold - Stopt onmiddellijk en houdt de wielen op hun plaats.

Return Values

Deze functie retourneert geen waarde.

Examples
// Drive forward, then coast to a stop.
myDrivetrain.setDriveVelocity(100, percent);
myDrivetrain.drive(forward);
wait(2, seconds);
myDrivetrain.stop(coast);

Mutators#

setDriveVelocity#

setDriveVelocity vertelt de robot hoe snel hij moet rijden. Een hoger percentage zorgt ervoor dat de robot sneller rijdt en een lager percentage zorgt ervoor dat de robot langzamer rijdt.

Elk project begint standaard met de robot die op 50% van zijn maximale snelheid rijdt.

Let op: Een hogere snelheid zorgt ervoor dat de robot sneller rijdt, maar mogelijk minder nauwkeurig. Een lagere snelheid zorgt ervoor dat de robot langzamer rijdt, maar mogelijk nauwkeuriger.

Available Functions
void setDriveVelocity(
  double velocity,
  velocityUnits units );

Parameters

Parameter

Type

Beschrijving

velocity

double

De snelheid waarmee gereden wordt, varieert van 0% tot 100% bij gebruik van velocityUnits::pct, van 0 tot 120 rpm bij gebruik van rpm, of van 0 tot 720 graden per seconde bij gebruik van dps.

units

velocityUnits

De snelheidseenheid: velocityUnits::pct (procent), rpm (rotaties per minuut), of dps (graden per seconde).

Return Values

Deze functie retourneert geen waarde.

Notes
  • De aandrijfsnelheid wordt gebruikt door latere functies voor de beweging van de aandrijflijn, tenzij een specifieke snelheid wordt opgegeven in de functieaanroep.

Examples
// Drive forward, then coast to a stop.
myDrivetrain.setDriveVelocity(100, percent);
myDrivetrain.drive(forward);
wait(2, seconds);
myDrivetrain.stop(coast);

setTurnVelocity#

setTurnVelocity vertelt de robot hoe snel hij moet draaien. Een hoger percentage zorgt ervoor dat de robot sneller draait en een lager percentage zorgt ervoor dat de robot langzamer draait.

Elk project begint standaard met de robot die met 50% snelheid draait.

Let op: Een hogere snelheid zorgt ervoor dat de robot sneller draait, maar mogelijk minder nauwkeurig. Een lagere snelheid zorgt ervoor dat de robot langzamer draait, maar mogelijk nauwkeuriger.

Available Functions
void setTurnVelocity(
  double velocity,
  velocityUnits units );

Parameters

Parameter

Type

Beschrijving

velocity

double

De draaisnelheid varieert van 0% tot 100% bij gebruik van velocityUnits::pct, van 0 tot 120 rpm bij gebruik van rpm, of van 0 tot 720 graden per seconde bij gebruik van dps.

units

velocityUnits

De snelheidseenheid: velocityUnits::pct (procent), rpm (rotaties per minuut), of dps (graden per seconde).

Return Values

Deze functie retourneert geen waarde.

Notes
  • De draaisnelheid wordt gebruikt door latere stuurfuncties van de aandrijflijn, tenzij een specifieke snelheid wordt opgegeven in de functieaanroep.

Examples
// 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);

stoppen#

setStopping stelt in hoe de robot stopt met bewegen: door te remmen, uit te rollen of stil te staan.

Available Functions
void setStopping(
  brakeType mode );

Parameters

Parameter

Type

Beschrijving

mode

brakeType

Hoe de robot stopt:

  • brake - Stopt onmiddellijk.
  • coast - Vertraagt ​​tot stilstand.
  • hold - Stopt onmiddellijk en houdt de wielen op hun plaats.

Return Values

Deze functie retourneert geen waarde.

Notes
  • De stopmodus wordt gebruikt door latere stop aanroepen, tenzij een specifieke stopmodus is opgegeven in de functieaanroep.

  • Als deze functie niet wordt gebruikt, zal de robot remmen met stand brake bij het stoppen.

setTimeout#

setTimeout bepaalt hoe lang de robot erover doet om een ​​beweging te voltooien. Als de robot de beweging niet binnen die tijd kan voltooien, stopt hij met proberen en gaat hij verder met de volgende regel code. Dit voorkomt dat de robot vastloopt tijdens een beweging.

Available Functions
void setTimeout(
  int32_t time,
  timeUnits units );

Parameters

Parameter

Type

Beschrijving

time

int32_t

De maximale tijd die de robot heeft om een ​​beweging te voltooien. Dit moet een positief geheel getal zijn.

units

timeUnits

De tijdseenheid: sec (seconden) of msec (milliseconden).

Return Values

Deze functie retourneert geen waarde.

Notes
  • De time-out is alleen van toepassing op aandrijffuncties die naar een doel bewegen, zoals driveFor en turnFor.

Examples
// Turn right after driving forward.
myDrivetrain.setTimeout(1, seconds);
myDrivetrain.driveFor(forward, 25, inches);
myDrivetrain.turnFor(right, 90, degrees);

Getters#

isKlaar#

isDone geeft als Booleaanse waarde aan of de robot klaar is met bewegen. Dit kan worden gebruikt om de timing van andere acties te regelen op basis van de beweging van de robot.

Available Functions
bool isDone( void );

Parameters

Deze functie accepteert geen parameters.

Return Values
  • true - De robot is klaar met bewegen.

  • false - De robot beweegt nog steeds.

Notes
  • isDone werkt met op doelen gebaseerde aandrijfbewegingsfuncties, zoals driveFor en turnFor.

  • isDone wordt niet gebruikt met drive of turn, aangezien die functies niet naar een doel bewegen.

isVerhuizen#

isMoving geeft als Booleaanse waarde aan of de robot beweegt. Dit kan worden gebruikt om de timing van andere gedragingen te regelen op basis van de beweging van de robot.

Available Functions
virtual bool isMoving( void );

Parameters

Deze functie accepteert geen parameters.

Return Values
  • true - De robot beweegt.

  • false - De robot beweegt niet.

Notes
  • isMoving werkt met op doelen gebaseerde aandrijflijnbewegingsfuncties, zoals driveFor en turnFor.

  • isMoving wordt niet gebruikt met drive of turn, aangezien die functies niet naar een doel bewegen.

snelheid#

velocity geeft aan hoe snel de robot rijdt.

Het kan de snelheid weergeven als een percentage, in rpmof in dpsEen positieve waarde betekent dat de robot vooruit rijdt. Een negatieve waarde betekent dat de robot achteruit rijdt.

Available Functions
double velocity(
  velocityUnits units );

Parameters

Parameter

Type

Beschrijving

units

velocityUnits

De eenheid waarin de snelheid moet worden teruggegeven: percent, pct, rpmof dps.

Return Values

Geeft de aandrijfsnelheid terug als een double in de geselecteerde eenheid.

Examples
// 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();

huidig#

current geeft aan hoeveel elektrische stroom de aandrijflijn verbruikt. Stroomsterkte is de hoeveelheid elektriciteit die door de aandrijflijn stroomt. Deze kan worden weergegeven in ampère (ampère) of als een percentage, afhankelijk van de eenheid.

Een hogere stroomwaarde betekent dat de aandrijving meer elektrische stroom verbruikt. Dit kan gebeuren wanneer de robot tegen een object duwt of probeert te bewegen terwijl hij vastzit.

Hiermee kunt u controleren of de aandrijving tijdens een beweging moeite heeft. Als de stroomsterkte hoog blijft, kan de aandrijving warmer worden of minder efficiënt met energie omgaan.

Available Functions

1 - Geeft de elektrische stroom van de aandrijflijn in ampère weer.

double current(
    currentUnits units = currentUnits::amp );

2 - Geeft de elektrische stroom van de aandrijflijn weer als een percentage.

double current(
    percentUnits units );

Parameters

Parameter

Type

Beschrijving

units

currentUnits

De eenheid die stroom retourneert: amp.

units

percentUnits

De eenheid waarin de stroom moet worden geretourneerd: percent of pct.

Return Values

Geeft de aandrijfstroom terug als een double in de geselecteerde eenheid.

stroom#

power geeft aan hoeveel vermogen de aandrijving verbruikt, gemeten in watt. Vermogen laat zien hoe snel de aandrijving energie verbruikt.

Een hogere vermogenswaarde betekent dat de aandrijving sneller energie verbruikt. Dit kan gebeuren wanneer de robot tegen een object duwt of probeert te bewegen terwijl hij vastzit.

Dit kan worden gebruikt om bewegingen te vergelijken of te controleren of de aandrijving het moeilijk heeft. Als het vermogen constant hoog blijft, kan de aandrijving warmer worden of minder efficiënt met energie omgaan.

Available Functions
double power(
  powerUnits units = powerUnits::watt );

Parameters

Parameter

Type

Beschrijving

units

powerUnits

De vermogenseenheid: watt.

Return Values

Geeft het aandrijfvermogen weer als een double in watt.

koppel#

Het koppel geeft aan hoeveel kracht de aandrijving kan uitoefenen terwijl de wielen draaien.

torque geeft aan hoeveel koppel de aandrijflijn gebruikt, gemeten in Newtonmeter (Nm) of inch-pounds (InLb).

Een hogere koppelwaarde betekent dat de aandrijving harder duwt of trekt. Dit kan gebeuren wanneer de robot tegen een object duwt of probeert te bewegen terwijl hij vastzit.

Dit kan worden gebruikt om te controleren of de aandrijving moeite heeft of om te vergelijken hoeveel kracht verschillende bewegingen vereisen.

Available Functions
double torque(
  torqueUnits units = torqueUnits::nm );

Parameters

Parameter

Type

Beschrijving

units

torqueUnits

De eenheid waarin het koppel moet worden weergegeven: Nm (newtonmeter, standaard) of InLb (inch-pond).

Return Values

Geeft het aandrijfkoppel terug als een double in de geselecteerde eenheid.

efficiëntie#

efficiency geeft aan hoe efficiënt de aandrijflijn het vermogen gebruikt, als een percentage van 0% tot 100%.

Het rendement geeft aan hoeveel van het vermogen van de aandrijving wordt gebruikt voor beweging. Een hogere efficiëntiewaarde betekent dat er meer vermogen van de aandrijving wordt gebruikt om te bewegen. Een lagere efficiëntiewaarde kan voorkomen wanneer de aandrijving hard werkt maar weinig beweging genereert, bijvoorbeeld wanneer de robot vastzit of tegen een object aan duwt.

Dit kan worden gebruikt om bewegingen te vergelijken of te controleren of de aandrijving energie verspilt in plaats van deze te gebruiken voor beweging.

Available Functions
double efficiency(
  percentUnits units = percentUnits::pct );

Parameters

Parameter

Type

Beschrijving

units

percentUnits

De eenheid waarin het rendement wordt weergegeven: percent of pct.

Return Values

Geeft de aandrijflijnefficiëntie weer als een double in de geselecteerde eenheid.

temperatuur#

temperature geeft de gemiddelde temperatuur van de aandrijflijn weer als een percentage van 0% tot 100%.

De temperatuur geeft aan hoe warm de motoren van de aandrijflijn zijn. Een hogere temperatuur betekent dat de motoren warmer worden tijdens het gebruik. De motoren moeten onder de 55 °C blijven om optimaal te blijven presteren.

Als de motoren te heet worden, verlagen ze hun maximale stroomsterkte ter bescherming. Bij 70 °C stoppen de motoren met draaien totdat ze zijn afgekoeld.

Hiermee kan worden gecontroleerd of de aandrijving te heet wordt tijdens herhaalde bewegingen, lange ritten of wanneer deze tegen een object aan duwt.

Available Functions
double temperature(
  percentUnits units );

Parameters

Parameter

Type

Beschrijving

units

percentUnits

De eenheid waarin de temperatuur moet worden weergegeven: percent of pct.

Return Values

Geeft de gemiddelde temperatuur van de aandrijflijn weer als een double in de geselecteerde eenheid.

Notes
  • Een geretourneerde waarde van 50% betekent dat de gemiddelde motortemperatuur ongeveer 45°C (113°F ) is.

  • Het typische bedrijfstemperatuurbereik voor de aandrijflijn ligt tussen ongeveer 20°C (68°F) en 70°C (158°F).

spanning#

voltage geeft de elektrische spanning van de aandrijflijn terug.

Spanning is de elektrische druk die aan de aandrijfmotoren wordt geleverd. Deze kan, samen met stroom- en vermogenswaarden, inzicht geven in hoe de aandrijflijn elektrische energie verbruikt.

Available Functions
double voltage(
  voltageUnits units = voltageUnits::volt );

Parameters

Parameter

Type

Beschrijving

units

voltageUnits

De eenheid waarin de spanning wordt weergegeven: volt (standaard) of voltageUnits::mV. voltageUnits::mV betekent millivolt.

Return Values

Geeft de aandrijfspanning terug als een double in de geselecteerde eenheid.