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á Inerciální senzor, Gyro senzor ani GPS senzor pro otáčení podle směru jízdy nebo rotace. Může jet dopředu nebo dozadu a otáčet se doleva nebo doprava, ale nemůže se otáčet do určitého směru nebo rotace. Pro otáčení podle směru jízdy a rotace použijte třídu smartdrive.

Odvozené třídy#

Třída drivetrain slouží jako základní třída pro následující odvozené třídy:

  • smartdrive – Tato třída přidává podporu pro inerciální senzory, GPS senzory nebo gyroskopické senzory, které umožňují otáčení na základě směru jízdy a rotace.

Konstruktory tříd#

1 - Creates a drivetrain using existing motor_group objects for the left (&l) and right (&r) 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 (&l) a pravou (&r) 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 (milimetry, 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 object
    rightMotor, // right motor object
    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ňů.

  • 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 - Nastaví, kolik sekund 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í rychlost, s jakou 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í dodávané do hnacího ústrojí.

Před voláním jakékoli členské funkce drivetrain musí být vytvořen objekt drivetrain , jak je znázorněno níže:

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

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í. U otáček za minutu nebo DPS se limit mění převodovým poměrem hnacího ústrojí.

Available Functions

1 - Pohony používají aktuálně nakonfigurovanou 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 600 ot/min při použití rpm, nebo od 0 do 3600 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 bude pokračovat v provádění dalšího řádku kódu ihned po volání.

  • Pohon se bude pohybovat, dokud nebude volána funkce stop nebo dokud nebude provedena jiná funkce pro pohyb pohonu (například driveFor nebo turn).

  • Functions such as isDone and isMoving are not applicable to drive, since it does not use target-based movement (doesn’t have a distance parameter).

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 ve výchozím nastavení počká, dokud se robot nedokončí s pohybem, než se spustí další řádek kódu. Pro RPM nebo DPS se limit mění převodovým poměrem hnacího ústrojí.

Available Functions

1 - Pojede v zadaném směru na vzdálenost s použitím aktuálně nakonfigurované rychlosti pohonu.

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

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

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

3 - Jede ve směru závislém na vzdálenosti zadanou rychlostí.

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 600 ot/min při použití rpm, nebo od 0 do 3600 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
  • Provedení jiné funkce pohybu hnacího ústrojí (například drive nebo turnFor) během probíhající funkce driveFor přeruší aktuální pohyb.

  • Protože driveFor je založeno na cíli (používá parametr distance ), funkce jako isDone a isMoving fungují s driveFor.

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 natrvalo. Robot se bude otáčet, dokud nedostane další akci, například jízdu nebo zastavení. U otáček za minutu nebo DPS se limit mění převodovým poměrem hnacího ústrojí.

Available Functions

1 - Zatáčí s aktuálně nastavenou rychlostí 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 600 ot/min při použití rpm, nebo od 0 do 3600 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 This function does not return a value. Notes
  • turn nečeká; projekt bude pokračovat v provádění dalšího řádku kódu ihned po volání.

  • Pohon se bude otáčet, dokud nebude volána funkce stop nebo dokud nebude provedena jiná funkce pro pohyb pohonu (například turnFor nebo drive).

  • Funkce jako isDone a isMoving nejsou použitelné pro turn, protože nepoužívá pohyb založený na cíli (nemá parametr angle).

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ňů. Otočení je relativní vzhledem k aktuální poloze robota. Projekt standardně počká, dokud se robot neotáčí, než se spustí další řádek kódu. Pro RPM nebo DPS se limit mění převodovým poměrem hnacího ústrojí.

Available Functions

1 - Otočí se o zadaný úhel s použitím aktuálně nakonfigurované 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ě nakonfigurované 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

Úhel, o který 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 600 ot/min při použití rpm, nebo od 0 do 3600 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
  • Provedení jiné funkce pohybu hnacího ústrojí (například turn nebo drive) během probíhající funkce turnFor přeruší aktuální pohyb.

  • Protože turnFor je založeno na cíli (používá parametr angle ), funkce jako isDone a isMoving fungují s turnFor.

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ě nakonfigurovaného režimu zastavení.

void stop();

2 - Zastaví hnací ústrojí pomocí zadaného režimu brzdění.

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 ho zpomalí. U otáček za minutu se limit mění převodovým poměrem hnacího ústrojí.

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, je od 0 % do 100 % při použití velocityUnits::pct, od 0 do 600 ot/min při použití rpm, nebo od 0 do 3600 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 se vztahuje na všechny následující funkce pohybu hnacího ústrojí (jako například drive a driveFor), pokud není ve volání funkce zadána specifická 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 600 ot/min při použití rpm, nebo od 0 do 3600 stupňů za sekundu při použití dps.

units

velocityUnits

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

Return Values

Tato funkce nevrací hodnotu.

Notes
  • Rychlost otáčení se vztahuje na všechny následující funkce otáčení hnacího ústrojí (jako například turn a turnFor), pokud není ve volání funkce zadána specifická 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žije na všechna následující volání funkce stop, pokud není ve volání funkce uveden specifický režim zastavení.

nastavitČasový limit#

setTimeout nastavuje, po kolik sekund se robot bude 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 pohybu hnacího ústrojí založené na cíli (jako například driveFor a turnFor).

Examples
// Start turning if driving takes too long
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
  • Funkce isDone je kompatibilní s pohyby hnacího ústrojí založenými na cíli (funkce, které se pohybují k cíli, například driveFor a turnFor).

  • Funkce isDone není kompatibilní s funkcemi jako drive a turn, protože nepoužívají pohyb založený na 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 je kompatibilní s pohyby hnacího ústrojí založenými na cíli (funkce, které se pohybují k cíli, jako například driveFor a turnFor).

  • isMoving není kompatibilní s funkcemi jako drive a turn, protože nepoužívají pohyb založený na cíli.

rychlost#

velocity vrací, jak rychle se robot pohybuje.

Kladná 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 rychlosti: percent nebo pct (procenta), rpm (otáčky za minutu) nebo dps (stupně za sekundu).

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 - Vrací elektrický proud hnacího ústrojí v procentech z maxima.

double current(
    percentUnits units );

Parameters

Parametr

Typ

Popis

units

currentUnits

Jednotka pro vrácení proudu: amp (výchozí hodnota jsou ampéry).

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 (wattů, výchozí).

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 (výchozí).

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í dodávané do 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 (volty, výchozí) nebo voltageUnits::mV (milivolty).

Return Values

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