Hnací ústrojí#

Zavedení#

Třída drivetrain řídí, jak se robot řídí a zatáčí. Hnací ústrojí se skládá z motorů a kol, které spolupracují na pohybu robota.

Pohon drivetrain nepoužívá Gyro senzor ani Inerciální senzor pro zatáčení podle směru jízdy nebo rotace. Může jet dopředu nebo dozadu a zatáčet doleva nebo doprava, ale nemůže se otočit do určitého směru nebo rotace. Pro zatáčení podle směru jízdy a rotace použijte třídu smartdrive.

Tato stránka používá jako příklad názvu hnacího ústrojí myDrivetrain V případě potřeby jej nahraďte vlastním nakonfigurovaným názvem.

Odvozené třídy#

Třída drivetrain slouží jako základní třída pro následující odvozenou třídu:

  • smartdrive – Vytvoří hnací ústrojí s podporou gyroskopického nebo inerciálního senzoru.

Konstruktory tříd#

1 - Creates a drivetrain using existing motor_group objects for the left and right sides.

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

2 - Vytvoří hnací ústrojí s využitím existujících objektů motor pro levou a pravou stranu.

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

Destruktor tříd#

Zničí objekt drivetrain a uvolní související zdroje.

virtual ~drivetrain();

Parametry#

Parametr

Typ

Popis

&l / &r

motor_group / motor

Levý a pravý motor nebo skupiny motorů. Oba parametry musí používat stejný typ: buď dva objekty motor_group , nebo dva objekty motor.

wheelTravel

double

Obvod kol hnacího ústrojí. Výchozí hodnota je 320.

trackWidth

double

Vzdálenost mezi levým a pravým kolem. Výchozí hodnota je 320.

wheelBase

double

Vzdálenost mezi předními a zadními koly. Výchozí hodnota je 130.

unit

distanceUnits

Jednotka pro wheelTravel, trackWidtha wheelBase: mm (výchozí) nebo inches.

externalGearRatio

double

Převodový poměr použitý k úpravě ujeté vzdálenosti, pokud jsou použity převody. Výchozí hodnota je 1.0.

Příklad#

// 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

Členské funkce#

Třída drivetrain obsahuje následující členské funkce:

Akce - Pohyb a otáčení robota.

  • drive - Pohybuje robota vpřed nebo vzad natrvalo.

  • driveFor - Pohybuje robotem vpřed nebo vzad o určitou vzdálenost.

  • turn - Otočí robota doleva nebo doprava natrvalo.

  • turnFor - Otočí robota doleva nebo doprava o určitý počet stupňů nebo otáček.

  • stop - Zastaví pohyb robota.

Nastavení – Úprava nastavení hnacího ústrojí.

  • setDriveVelocity - Říká robotovi, jak rychle má jet.

  • setTurnVelocity - Říká robotovi, jak rychle se má otáčet.

  • setStopping - Určuje, jak se robot zastaví: brzděním, setrvačností nebo zastavením.

  • setTimeout - Nastavuje, jak dlouho se bude robot snažit dokončit pohyb.

Hodnoty – Zkontrolujte stav pohybu.

  • isDone - Vrací, zda robot dokončil pohyb, jako booleovskou hodnotu.

  • isMoving - Vrací hodnotu typu Boolean, která ukazuje, zda se robot pohybuje.

  • velocity - Vrátí, jak rychle se robot pohybuje.

  • current - Vrátí, kolik elektrického proudu spotřebovává hnací ústrojí.

  • power - Vrátí, jak rychle hnací ústrojí spotřebovává energii.

  • torque - Vrátí, kolik točivého momentu hnací ústrojí využívá.

  • efficiency – Vrací, jak efektivně hnací ústrojí využívá energii.

  • temperature - Vrátí teplotu hnacího ústrojí.

  • voltage - Vrací elektrické napětí hnacího ústrojí.

Před voláním jakékoli členské funkce drivetrain musí být vytvořen objekt drivetrain.

/* 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

Akce#

řídit#

drive pohybuje robotem vpřed nebo vzad navždy. Robot se bude pohybovat, dokud nedostane další akci, například otočení nebo zastavení.

Available Functions

1 - Pohon využívá aktuální rychlost pohonu.

void drive(
    directionType dir );

2 - Jede zadanou rychlostí.

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

Parameters

Parametr

Typ

Popis

dir

directionType

Směr pohybu robota: forward nebo reverse.

velocity

double

Rychlost, s níž se má robot pohybovat, od 0 % do 100 % při použití velocityUnits::pct, od 0 do 120 ot/min při použití rpmnebo od 0 do 720 stupňů za sekundu při použití dps. Pokud není zadána žádná rychlost, robot se pohybuje aktuální rychlostí pohonu.

units

velocityUnits

Jednotka rychlosti: velocityUnits::pct (procenta), rpm (otáčky za minutu) nebo dps (stupně za sekundu).

Return Values

Tato funkce nevrací hodnotu.

Notes
  • drive nečeká. Projekt ihned spustí další řádek kódu.

  • Robot se bude pohybovat dál, dokud nebude volána funkce stop nebo dokud nebude spuštěna jiná funkce pro pohyb hnacího ústrojí.

  • isDone a isMoving se nepoužívají s drive , protože drive nemá cílovou vzdálenost.

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

pohonPro#

driveFor pohybuje robotem vpřed nebo vzad o určitou vzdálenost. Projekt počká, dokud se robot nedokončí s pohybem, než se spustí další řádek kódu.

Available Functions

1 - Pojezd se provádí v zadaném směru na vzdálenost s využitím aktuální rychlosti pohonu.

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

2 - Pohybuje se ve směru na základě hodnoty vzdálenosti s využitím aktuální rychlosti pohonu.

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

3 - Jede ve směru na základě hodnoty vzdálenosti při zadané rychlosti.

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

4 - Jede v zadaném směru na vzdálenost zadanou rychlostí.

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

Parameters

Parametr

Typ

Popis

dir

directionType

Směr pohybu robota: forward nebo reverse.

distance

double

Vzdálenost, kterou robot urazí.

units

distanceUnits

Jednotka vzdálenosti: mm (milimetry), inchesnebo cm (centimetry).

velocity

double

Rychlost, s níž se má robot pohybovat, od 0 % do 100 % při použití velocityUnits::pct, od 0 do 120 ot/min při použití rpmnebo od 0 do 720 stupňů za sekundu při použití dps. Pokud není zadána žádná rychlost, robot se pohybuje aktuální rychlostí pohonu.

units_v

velocityUnits

Jednotka rychlosti: velocityUnits::pct (procenta), rpm (otáčky za minutu) nebo dps (stupně za sekundu).

waitForCompletion

bool

true (výchozí) způsobí, že projekt počká, dokud se robot nedokončí s pohybem, než se spustí další řádek kódu. false způsobí, že se další řádek kódu spustí okamžitě.

Return Values

Vrací, zda robot dosáhl cílové vzdálenosti, jako booleovskou hodnotu.

  • true - Robot dosáhl cílové vzdálenosti.

  • false - Robot nedokončil pohyb nebo funkce vrátila hodnotu před dokončením pohybu, protože waitForCompletion byla nastavena na false.

Notes
  • Spuštění jiné funkce pohybu hnacího ústrojí, zatímco běží driveFor , přeruší aktuální pohyb.

  • driveFor používá cílovou vzdálenost, takže s ní lze použít funkce isDone a isMoving.

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

otočit#

turn otáčí robota doleva nebo doprava navždy. Robot se bude otáčet, dokud nedostane další akci, například jízdu nebo zastavení.

Available Functions

1 - Zatáčí s využitím aktuální rychlosti otáčení.

void turn(
    turnType dir );

2 - Otáčí se zadanou rychlostí.

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

Parameters

Parametr

Typ

Popis

dir

turnType

Směr otáčení robota: left nebo right.

velocity

double

Rychlost otáčení od 0 % do 100 % při použití velocityUnits::pct, od 0 do 120 ot/min při použití rpmnebo od 0 do 720 stupňů za sekundu při použití dps. Pokud není zadána žádná rychlost, robot se otáčí aktuální rychlostí otáčení.

units

velocityUnits

Jednotka rychlosti: velocityUnits::pct (procenta), rpm (otáčky za minutu) nebo dps (stupně za sekundu).

Return Values

Tato funkce nevrací hodnotu.

Notes
  • turn nečeká. Projekt ihned spustí další řádek kódu.

  • Robot se bude otáčet, dokud nebude volána funkce stop nebo dokud nebude spuštěna jiná funkce pohybu hnacího ústrojí.

  • isDone a isMoving se nepoužívají s turn protože turn nemá cílový úhel.

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

otočitPro#

turnFor otočí robota doleva nebo doprava o určitý počet stupňů, otáček nebo jednotek. Otočení je relativní vzhledem k aktuální poloze robota. Projekt počká, dokud robot nedokončí otáčení, než se spustí další řádek kódu.

Available Functions

1 - Otočí se o zadaný úhel s využitím aktuální rychlosti otáčení.

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

2 - Otočí se v zadaném směru o úhel s využitím aktuální rychlosti otáčení.

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

3 - Otočí se o zadaný úhel při zadané rychlosti.

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

4 - Otočí se v zadaném směru o úhel při zadané rychlosti.

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

Parameters

Parametr

Typ

Popis

dir

turnType

Směr otáčení robota: left nebo right.

angle

double

Míra, o kterou se robot otočí.

units

rotationUnits

Jednotka otáčení: deg (stupně), rev (otáčky) nebo raw (jednotky). Jedna otáčka se rovná 360 stupňům.

velocity

double

Rychlost otáčení od 0 % do 100 % při použití velocityUnits::pct, od 0 do 120 ot/min při použití rpmnebo od 0 do 720 stupňů za sekundu při použití dps. Pokud není zadána žádná rychlost, robot se otáčí aktuální rychlostí otáčení.

units_v

velocityUnits

Jednotka rychlosti: velocityUnits::pct (procenta), rpm (otáčky za minutu) nebo dps (stupně za sekundu).

waitForCompletion

bool

true (výchozí) způsobí, že projekt počká, dokud se robot nedotočí, než se spustí další řádek kódu. false způsobí, že se další řádek kódu spustí okamžitě.

Return Values

Vrací, zda robot dosáhl cílového úhlu, jako booleovskou hodnotu.

  • true - Robot dosáhl cílového úhlu.

  • false - Robot nedokončil kolo nebo funkce vrátila hodnotu před dokončením kola, protože waitForCompletion byla nastavena na false.

Notes
  • Spuštění jiné funkce pohybu hnacího ústrojí během běhu funkce turnFor přeruší aktuální pohyb.

  • turnFor používá cílový úhel, takže s ním lze použít isDone a isMoving.

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

zastávka#

stop zastaví pohyb robota. Pokud je k dispozici režim zastavení, řídí, jak se robot při volání této funkce zastaví.

Available Functions

1 - Zastaví hnací ústrojí s použitím aktuálního režimu zastavení.

void stop();

2 - Zastaví hnací ústrojí pomocí zadaného režimu zastavení.

void stop(
    brakeType mode );

Parameters

Parametr

Typ

Popis

mode

brakeType

Jak robot zastaví:

  • brake - Okamžitě zastaví.
  • coast - Zpomalí až do úplného zastavení.
  • hold - Okamžitě zastaví a udrží kola v poloze.

Return Values

Tato funkce nevrací hodnotu.

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

Mutátory#

setDriveVelocity#

setDriveVelocity říká robotovi, jak rychle má jet. Vyšší procento způsobí, že robot jede rychleji, a nižší procento způsobí, že robot jede pomaleji.

Každý projekt začíná s robotem, který se standardně pohybuje rychlostí 50 %.

Poznámka: Vyšší rychlost zrychluje pohyb robota, ale může být méně přesný. Nižší rychlost zpomaluje pohyb robota, ale může být přesnější.

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

Parameters

Parametr

Typ

Popis

velocity

double

Rychlost, s níž se má jezdit, od 0 % do 100 % při použití velocityUnits::pct, od 0 do 120 otáček za minutu při použití rpm, nebo od 0 do 720 stupňů za sekundu při použití dps.

units

velocityUnits

Jednotka rychlosti: velocityUnits::pct (procenta), rpm (otáčky za minutu) nebo dps (stupně za sekundu).

Return Values

Tato funkce nevrací hodnotu.

Notes
  • Rychlost pohonu je používána pozdějšími funkcemi pro pohyb hnacího ústrojí, pokud není ve volání funkce zadána konkrétní rychlost.

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

nastavitRychlostOtočení#

setTurnVelocity říká robotovi, jak rychle se má otáčet. Vyšší procento způsobí, že se robot bude otáčet rychleji, a nižší procento způsobí, že se robot bude otáčet pomaleji.

Každý projekt začíná s robotem, který se standardně otáčí rychlostí 50 %.

Poznámka: Vyšší rychlost způsobí, že se robot otáčí rychleji, ale může být méně přesný. Nižší rychlost způsobí, že se robot otáčí pomaleji, ale může být přesnější.

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

Parameters

Parametr

Typ

Popis

velocity

double

Rychlost otáčení od 0 % do 100 % při použití velocityUnits::pct, od 0 do 120 ot/min při použití rpm, nebo od 0 do 720 stupňů za sekundu při použití dps.

units

velocityUnits

Jednotka rychlosti: velocityUnits::pct (procenta), rpm (otáčky za minutu) nebo dps (stupně za sekundu).

Return Values

Tato funkce nevrací hodnotu.

Notes
  • Rychlost otáčení je používána pozdějšími funkcemi otáčení hnacího ústrojí, pokud není ve volání funkce zadána konkrétní rychlost.

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

setStopping#

setStopping nastavuje, jak se robot zastaví: brzděním, doběhem nebo zastavením.

Available Functions
void setStopping(
  brakeType mode );

Parameters

Parametr

Typ

Popis

mode

brakeType

Jak robot zastaví:

  • brake - Okamžitě zastaví.
  • coast - Zpomalí až do úplného zastavení.
  • hold - Okamžitě zastaví a udrží kola v poloze.

Return Values

Tato funkce nevrací hodnotu.

Notes
  • Režim zastavení se používá pozdějšími voláními funkce stop, pokud není ve volání funkce uveden specifický režim zastavení.

  • Pokud se tato funkce nepoužije, robot při zastavení použije brzdu brake.

nastavitČasový limit#

setTimeout nastavuje, jak dlouho se bude robot snažit dokončit pohyb. Pokud robot nedokončí pohyb v tomto čase, přestane se snažit a přesune se na další řádek kódu. Tím se zabrání tomu, aby se robot zasekl na pohybu.

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

Parameters

Parametr

Typ

Popis

time

int32_t

Doba, po kterou se robot může pokusit dokončit pohyb. Mělo by to být kladné celé číslo.

units

timeUnits

Jednotka času: sec (sekundy) nebo msec (milisekundy).

Return Values

Tato funkce nevrací hodnotu.

Notes
  • Časový limit se vztahuje pouze na funkce hnacího ústrojí, které se pohybují k cíli, jako například driveFor a turnFor.

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

Gettery#

jeHotovo#

isDone vrací hodnotu, zda robot dokončil pohyb, jako booleovskou hodnotu. Tuto hodnotu lze použít k řízení načasování dalších chování na základě pohybu robota.

Available Functions
bool isDone( void );

Parameters

Tato funkce nepřijímá žádné parametry.

Return Values
  • true - Robot dokončil pohyb.

  • false - Robot se stále pohybuje.

Notes
  • isDone pracuje s funkcemi pohybu hnacího ústrojí založenými na cíli, jako například driveFor a turnFor.

  • Funkce isDone se nepoužívá s drive nebo turn, protože tyto funkce se nepohybují k cíli.

se pohybuje#

isMoving vrací booleovskou hodnotu, zda se robot pohybuje. Tuto hodnotu lze použít k řízení načasování dalších chování na základě pohybu robota.

Available Functions
virtual bool isMoving( void );

Parameters

Tato funkce nepřijímá žádné parametry.

Return Values
  • true - Robot se pohybuje.

  • false - Robot se nepohybuje.

Notes
  • Funkce isMoving pracuje s funkcemi pohybu hnacího ústrojí založenými na cíli, jako například driveFor a turnFor.

  • Funkce isMoving se nepoužívá s funkcemi drive nebo turn, protože tyto funkce se nepohybují k cíli.

rychlost#

velocity vrací, jak rychle se robot pohybuje.

Může vracet rychlost v procentech, v rpmnebo ve dpsKladná hodnota znamená, že robot jede vpřed. Záporná hodnota znamená, že robot jede vzad.

Available Functions
double velocity(
  velocityUnits units );

Parameters

Parametr

Typ

Popis

units

velocityUnits

Jednotka pro vrácení rychlosti v: percent, pct, rpmnebo dps.

Return Values

Vrátí rychlost hnacího ústrojí jako double ve vybrané jednotce.

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

proud#

current vrací množství elektrického proudu spotřebovaného hnacím ústrojím. Proud je množství elektřiny protékající hnacím ústrojím. Může být udáván v ampérech nebo v procentech, v závislosti na jednotce.

Vyšší hodnota proudu znamená, že pohon spotřebovává více elektrického proudu. K tomu může dojít, když robot tlačí na nějaký předmět nebo se snaží pohnout, když je zaseknutý.

Toto lze použít ke kontrole, zda se během pohybu nevyskytují problémy s pohonem. Pokud proud zůstává vysoký, hnací ústrojí se může zahřívat nebo méně efektivně využívat energii.

Available Functions

1 - Vrací elektrický proud hnacího ústrojí v ampérech.

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

2 - Vrátí elektrický proud hnacího ústrojí v procentech.

double current(
    percentUnits units );

Parameters

Parametr

Typ

Popis

units

currentUnits

Jednotka pro vrácení proudu: amp.

units

percentUnits

Jednotka pro vrácení proudu: percent nebo pct procenta.

Return Values

Vrátí proud hnacího ústrojí jako double ve vybrané jednotce.

moc#

power vrací množství energie spotřebované hnacím ústrojím, měřené ve wattech. Výkon ukazuje, jak rychle hnací ústrojí energii spotřebovává.

Vyšší hodnota výkonu znamená, že hnací ústrojí spotřebovává energii rychleji. K tomu může dojít, když robot tlačí na nějaký předmět nebo se snaží pohnout, když je zaseknutý.

Toto lze použít k porovnání pohybů nebo ke kontrole, zda hnací ústrojí nemá problémy. Pokud výkon zůstává vysoký, hnací ústrojí se může zahřívat nebo méně efektivně využívat energii.

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

Parameters

Parametr

Typ

Popis

units

powerUnits

Napájecí jednotka: watt

Return Values

Vrací výkon hnacího ústrojí jako double ve wattech.

točivý moment#

Točivý moment ukazuje, jak silně může hnací ústrojí tlačit nebo táhnout, zatímco se kola protáčejí.

torque vrací hodnotu momentu, který hnací ústrojí využívá, měřenou v newtonmetrech (Nm) nebo palcích v librách (InLb).

Vyšší hodnota točivého momentu znamená, že hnací ústrojí tlačí nebo táhne silněji. K tomu může dojít, když robot tlačí na nějaký předmět nebo se snaží pohnout, když je zaseknutý.

To lze použít ke kontrole, zda má hnací ústrojí problémy, nebo k porovnání, kolik tlaku potřebují různé pohyby.

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

Parameters

Parametr

Typ

Popis

units

torqueUnits

Jednotka pro návrat točivého momentu v: Nm (newtonmetry, výchozí nastavení) nebo InLb (palce-libry).

Return Values

Vrátí točivý moment hnacího ústrojí jako double ve vybrané jednotce.

účinnost#

efficiency vrací, jak efektivně hnací ústrojí využívá výkon, v procentech od 0 % do 100 %.

Účinnost ukazuje, kolik výkonu hnacího ústrojí se využívá k pohybu. Vyšší hodnota účinnosti znamená, že se k pohybu využívá více výkonu hnacího ústrojí. Nižší hodnota účinnosti může nastat, když hnací ústrojí pracuje intenzivně, ale moc se nepohybuje, například když je robot zaseknutý nebo tlačí na nějaký předmět.

To lze použít k porovnání pohybů nebo ke kontrole, zda hnací ústrojí plýtvá výkonem, místo aby jej využívalo k pohybu.

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

Parameters

Parametr

Typ

Popis

units

percentUnits

Jednotka pro vyjádření účinnosti: percent nebo pct.

Return Values

Vrátí účinnost hnacího ústrojí jako double ve vybrané jednotce.

teplota#

temperature vrací průměrnou teplotu hnacího ústrojí v procentech od 0 % do 100 %.

Teplota ukazuje, jak jsou motory hnacího ústrojí zahřáté. Vyšší teplota znamená, že se motory během provozu zahřívají. Aby motory fungovaly na plný výkon, měly by se teplota motorů udržovat pod 55 °C.

Pokud se motory příliš zahřejí, sníží svůj maximální proud, aby se chránily. Při 70 °C se motory zastaví, dokud nevychladnou.

Toto lze použít ke kontrole, zda se hnací ústrojí příliš nezahřívá během opakovaných pohybů, dlouhých běhů nebo když tlačí na nějaký předmět.

Available Functions
double temperature(
  percentUnits units );

Parameters

Parametr

Typ

Popis

units

percentUnits

Jednotka pro měření teploty vratné vody: percent nebo pct.

Return Values

Vrátí průměrnou teplotu hnacího ústrojí jako double ve vybrané jednotce.

Notes
  • Vrácená hodnota 50% znamená, že průměrná teplota motoru je přibližně 45°C (113°F).

  • Typický rozsah provozních teplot pro hnací ústrojí je přibližně 20°C (68°F) až 70°C (158°F).

napětí#

voltage vrací elektrické napětí hnacího ústrojí.

Napětí je elektrický tlak dodávaný do motorů hnacího ústrojí. Toto napětí lze použít spolu s hodnotami proudu a výkonu k pochopení toho, jak hnací ústrojí využívá elektrickou energii.

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

Parameters

Parametr

Typ

Popis

units

voltageUnits

Jednotka pro vrácení napětí: volt (výchozí) nebo voltageUnits::mV voltageUnits::mV znamená milivolty.

Return Values

Vrací napětí hnacího ústrojí jako double ve vybrané jednotce.