Pavarų dėžė#

Įvadas#

drivetrain klasė kontroliuoja, kaip robotas važiuoja ir sukasi. Pavaros sistemą sudaro varikliai ir ratai, kurie kartu judina robotą.

drivetrain nenaudoja inercinio jutiklio arba giroskopinio jutiklio posūkiams pagal kryptį arba sukimąsi. Jis gali važiuoti pirmyn arba atgal ir pasukti į kairę arba į dešinę, bet negali pasukti į konkrečią kryptį ar sukimąsi. Posūkiams pagal kryptį ir sukimąsi naudokite smartdrive klasę.

Išvestinės klasės#

drivetrain klasė naudojama kaip bazinė klasė šioms išvestinėms klasėms:

  • smartdrive – Ši klasė prideda inercinio jutiklio arba giroskopinio jutiklio palaikymą, kad būtų galima atlikti posūkius pagal kryptį ir sukimąsi.

Klasės konstruktoriai#

1 - Sukuria transmisiją naudodamas esamus motor_group objektus kairei (&l) ir dešinei (&r) pusėms.

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

2 - Sukuria transmisiją naudodamas esamus motor objektus kairei (&l) ir dešinei (&r) pusėms.

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

Klasės destruktorius#

Sunaikina drivetrain objektą ir išlaisvina susijusius išteklius.

virtual ~drivetrain();

Parametrai#

Parametras

Tipas

Aprašymas

&l / &r

motor_group / motor

Kairysis ir dešinysis varikliai arba variklių grupės. Abu parametrai turi būti to paties tipo: du motor_group objektai arba du motor “ objektai.

wheelTravel

double

Varančiosios ašies ratų apimtis. Numatytoji reikšmė yra 320.

trackWidth

double

Atstumas tarp kairiojo ir dešiniojo ratų. Numatytoji reikšmė yra 320.

wheelBase

double

Atstumas tarp priekinių ir galinių ratų. Numatytoji reikšmė yra 130.

unit

distanceUnits

wheelTravel, trackWidthir wheelBasematavimo vienetas: mm (milimetrai, numatytoji reikšmė) arba inches.

externalGearRatio

double

Pavarų perdavimo skaičius, naudojamas važiavimo atstumams reguliuoti, jei naudojamos pavaros. Numatytoji reikšmė yra 1.0.

Pavyzdys#

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

Narių funkcijos#

Yra daug būdų koduoti pavaros sistemą. Žemiau pateikiamas visų drivetrain nario funkcijų sąrašas:

Veiksmai – roboto judinimas ir pasukimas.

  • drive – Robotas nuolat juda pirmyn arba atgal.

  • driveFor – Robotas judinamas pirmyn arba atgal tam tikru atstumu.

  • turn – Robotas visam laikui pasukamas į kairę arba į dešinę.

  • turnFor – Robotas pasukamas į kairę arba į dešinę tam tikru laipsnių skaičiumi.

  • stop – Sustabdo roboto judėjimą.

Mutatoriai – pavaros sistemos nustatymų reguliavimas.

  • setDriveVelocity – Nurodo robotui, kokiu greičiu važiuoti.

  • setTurnVelocity – Nurodo robotui, kaip greitai suktis.

  • setStopping – Nurodo, kaip robotas nustos judėti: stabdydamas, riedėdamas iš vietos ar palaikydamas.

  • setTimeout – Nustato, kiek sekundžių robotas bandys užbaigti judesį.

Getteriai – judėjimo būsenos patikrinimas

  • isDone – Grąžina, ar robotas baigė judėti, kaip loginę reikšmę.

  • isMoving – Grąžina, ar robotas juda, kaip loginę reikšmę.

  • velocity – Grąžina roboto važiavimo greitį.

  • current – Grąžina, kiek elektros srovės naudoja pavaros sistema.

  • power – Grąžina, kaip greitai pavaros sistema eikvoja energiją.

  • torque – Grąžina, kiek sukimo momento naudoja pavaros sistema.

  • efficiency – Grąžina, kaip efektyviai pavaros sistema naudoja galią.

  • temperature – Grąžina pavaros sistemos įšilimo rodiklį.

  • voltage – Grąžina pavaros sistemai tiekiamą elektros įtampą.

Prieš iškviečiant bet kokias drivetrain narių funkcijas, reikia sukurti drivetrain objektą, kaip parodyta žemiau:

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

Veiksmai#

vairuoti#

drive robotą judina pirmyn arba atgal amžinai. Robotas judės tol, kol jam bus duotas kitas veiksmas, pvz., pasisukimas arba sustojimas. RPM arba DPS atveju ribą keičia pavaros perdavimo skaičius.

Available Functions

1 - Pavaros naudoja šiuo metu konfigūruotą pavaros greitį.

void drive(
    directionType dir );

2 - Važiuoja nurodytu greičiu.

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

Parameters

Parametras

Tipas

Aprašymas

dir

directionType

Roboto judėjimo kryptis: forward arba reverse.

velocity

double

Važiavimo greitis nuo 0 % iki 100 %, kai naudojama velocityUnits::pct, nuo 0 iki 600 aps./min., kai naudojama rpm, arba nuo 0 iki 3600 laipsnių per sekundę, kai naudojama dpsJei greitis nenurodytas, robotas važiuoja dabartiniu važiavimo greičiu.

units

velocityUnits

Greičio vienetas: velocityUnits::pct (procentai), rpm (apsisukimai per minutę) arba dps (laipsniai per sekundę).

Return Values

Ši funkcija negrąžina reikšmės.

Notes
  • drive diskas nelaukia; projektas tęs kitos kodo eilutės vykdymą iškart po iškvietimo.

  • Pavarų dėžė judės tol, kol bus iškviesta stop arba bus įvykdyta kita pavarų dėžės judėjimo funkcija (pvz., driveFor arba turn).

  • Tokios funkcijos kaip isDone ir isMoving netaikomos drive, nes ji nenaudoja judėjimo pagal taikinį (neturi distance parametro).

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

driveFor#

driveFor robotą judina pirmyn arba atgal tam tikru atstumu. Pagal numatytuosius nustatymus projektas lauks, kol robotas baigs judėti, prieš paleidžiant kitą kodo eilutę. RPM arba DPS atveju riba keičiama pagal pavaros perdavimo skaičių.

Available Functions

1 - Važiuoja nurodyta kryptimi tam tikrą atstumą, naudodamas šiuo metu konfigūruotą važiavimo greitį.

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

2 - Važiuoja kryptimi, priklausančia nuo atstumo, naudodamas šiuo metu konfigūruotą pavaros greitį.

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

3 - Važiuoja kryptimi, priklausančia nuo atstumo, nurodytu greičiu.

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

4 - Važiuoja nurodyta kryptimi tam tikru atstumu nurodytu greičiu.

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

Parameters

Parametras

Tipas

Aprašymas

dir

directionType

Roboto judėjimo kryptis: forward arba reverse.

distance

double

Atstumas, kurį nuvažiuoja robotas.

units

distanceUnits

Atstumo vienetas: mm (milimetrai), inchesarba cm (centimetrai).

velocity

double

Važiavimo greitis nuo 0 % iki 100 %, kai naudojama velocityUnits::pct, nuo 0 iki 600 aps./min., kai naudojama rpm, arba nuo 0 iki 3600 laipsnių per sekundę, kai naudojama dpsJei greitis nenurodytas, robotas važiuoja dabartiniu važiavimo greičiu.

units_v

velocityUnits

Greičio vienetas: velocityUnits::pct (procentai), rpm (apsisukimai per minutę) arba dps (laipsniai per sekundę).

waitForCompletion

bool

true (numatytasis) priverčia projektą palaukti, kol robotas baigs judėti, prieš paleidžiant kitą kodo eilutę. false priverčia kitą kodo eilutę paleisti iš karto.

Return Values

Grąžina, ar robotas pasiekė tikslinį atstumą, kaip loginę reikšmę.

  • true – Robotas pasiekė tikslinį atstumą.

  • false – Robotas nebaigė judėjimo arba funkcija grąžino rezultatą prieš judėjimo pabaigą, nes waitForCompletion buvo nustatytas į false.

Notes
  • Vykdant kitą transmisijos judėjimo funkciją (pvz., drive arba turnFor), kol vyksta driveFor dabartinis judėjimas bus nutrauktas.

  • Kadangi driveFor yra pagrįstas taikiniu (naudoja distance parametrą), tokios funkcijos kaip isDone ir isMoving veikia su driveFor.

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

posūkis#

turn suka robotą į kairę arba į dešinę amžinai. Robotas suksis tol, kol jam bus duotas kitas veiksmas, pvz., važiuoti arba sustoti. RPM arba DPS atveju riba keičiama pagal pavaros perdavimo skaičių.

Available Functions

1 - Posūkiai naudojant šiuo metu konfigūruotą posūkio greitį.

void turn(
    turnType dir );

2 - Sukasi nurodytu greičiu.

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

Parameters

Parametras

Tipas

Aprašymas

dir

turnType

Roboto sukimosi kryptis: left arba right.

velocity

double

Sukimosi greitis nuo 0% iki 100%, kai naudojama velocityUnits::pct, nuo 0 iki 600 aps./min., kai naudojama rpm, arba nuo 0 iki 3600 laipsnių per sekundę, kai naudojama dpsJei greitis nenurodytas, robotas sukasi dabartiniu posūkio greičiu.

units

velocityUnits

Greičio vienetas: velocityUnits::pct (procentai), rpm (apsisukimai per minutę) arba dps (laipsniai per sekundę).

Return Values This function does not return a value. Notes
  • turn nelaukia; projektas tęs kitos kodo eilutės vykdymą iškart po iškvietimo.

  • Pavaros mechanizmas suksis tol, kol bus iškviesta stop arba bus įvykdyta kita pavaros mechanizmo judėjimo funkcija (pvz., turnFor arba drive).

  • Tokios funkcijos kaip isDone ir isMoving netaikomos funkcijai turn, nes ji nenaudoja judėjimo pagal taikinį (neturi angle parametro).

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

posūkis#

turnFor pasuka robotą į kairę arba į dešinę tam tikru laipsnių skaičiumi. Posūkis yra santykinis su dabartine roboto padėtimi. Pagal numatytuosius nustatymus projektas lauks, kol robotas baigs pasisukti, prieš paleidžiant kitą kodo eilutę. RPM arba DPS atveju riba keičiama pagal pavaros perdavimo skaičių.

Available Functions

1 - Pasisuka nurodytu kampu, naudodamas šiuo metu konfigūruotą posūkio greitį.

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

2 - Sukasi nurodyta kryptimi kampu, naudojant šiuo metu konfigūruotą posūkio greitį.

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

3 - Pasisuka nurodytu kampu nurodytu greičiu.

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

4 - Sukasi nurodyta kryptimi kampu nurodytu greičiu.

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

Parameters

Parametras

Tipas

Aprašymas

dir

turnType

Roboto sukimosi kryptis: left arba right.

angle

double

Roboto posūkio kampas.

units

rotationUnits

Posūkio vienetas: deg (laipsniai), rev (apsisukimai) arba raw (neapdoroti). Vienas apsisukimas lygus 360 laipsnių.

velocity

double

Sukimosi greitis nuo 0% iki 100%, kai naudojama velocityUnits::pct, nuo 0 iki 600 aps./min., kai naudojama rpm, arba nuo 0 iki 3600 laipsnių per sekundę, kai naudojama dpsJei greitis nenurodytas, robotas sukasi dabartiniu posūkio greičiu.

units_v

velocityUnits

Greičio vienetas: velocityUnits::pct (procentai), rpm (apsisukimai per minutę) arba dps (laipsniai per sekundę).

waitForCompletion

bool

true (numatytasis) priverčia projektą palaukti, kol robotas baigs suktis, prieš paleidžiant kitą kodo eilutę. false priverčia kitą kodo eilutę paleisti iš karto.

Return Values

Grąžina, ar robotas pasiekė tikslinį kampą, kaip loginę reikšmę.

  • true – Robotas pasiekė tikslinį kampą.

  • false – Robotas nebaigė posūkio arba funkcija grąžino rezultatą prieš jam pasibaigiant, nes waitForCompletion buvo nustatytas į false.

Notes
  • Vykdant kitą pavaros judėjimo funkciją (pvz., turn arba drive), kol vyksta turnFor dabartinis judėjimas bus nutrauktas.

  • Kadangi turnFor yra pagrįstas taikiniu (naudoja angle parametrą), tokios funkcijos kaip isDone ir isMoving veikia su turnFor.

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

sustoti#

stop sustabdo roboto judėjimą. Jei nurodytas stabdymo režimas, jis kontroliuoja, kaip robotas sustoja šio funkcijos iškvietimo metu.

Available Functions

1 - Sustabdo pavaros sistemą naudodama šiuo metu sukonfigūruotą stabdymo režimą.

void stop();

2 - Sustabdo pavaros sistemą naudodamas nurodytą stabdymo režimą.

void stop(
    brakeType mode );

Parameters

Parametras

Tipas

Aprašymas

mode

brakeType

Kaip robotas sustos:

  • brake - Nedelsiant sustoja.
  • coast - Lėtėja iki pilno sustojimo.
  • hold - Nedelsiant sustoja ir išlaiko ratų padėtį.

Return Values

Ši funkcija negrąžina reikšmės.

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

Mutatoriai#

setDriveVolicity#

setDriveVelocity nurodo robotui, kokiu greičiu važiuoti. Didesnis procentas leidžia robotui važiuoti greičiau, o mažesnis – lėčiau. RPM arba DPS atveju riba keičiama pagal pavaros perdavimo skaičių.

Kiekvienas projektas prasideda nuo to, kad robotas pagal numatytuosius nustatymus važiuoja 50 % greičiu.

Pastaba: Didesnis greitis leidžia robotui važiuoti greičiau, bet gali būti mažiau tikslus. Mažesnis greitis leidžia robotui važiuoti lėčiau, bet gali būti tiksliau.

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

Parameters

Parametras

Tipas

Aprašymas

velocity

double

Važiavimo greitis nuo 0 % iki 100 %, kai naudojama velocityUnits::pct, nuo 0 iki 600 aps./min., kai naudojama rpm, arba nuo 0 iki 3600 laipsnių per sekundę, kai naudojama dps.

units

velocityUnits

Greičio vienetas: velocityUnits::pct (procentai), rpm (apsisukimai per minutę) arba dps (laipsniai per sekundę).

Return Values

Ši funkcija negrąžina reikšmės.

Notes
  • Pavaros greitis taikomas visoms vėlesnėms pavaros judėjimo funkcijoms (pvz., drive ir driveFor), nebent funkcijos iškvietime būtų nurodytas konkretus greitis.

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

nustatyti posūkio greitį#

setTurnVelocity nurodo robotui, kaip greitai suktis. Didesnis procentas leidžia robotui suktis greičiau, o mažesnis – lėčiau. RPM arba DPS atveju riba keičiama pagal pavaros perdavimo skaičių.

Kiekvienas projektas prasideda nuo to, kad robotas pagal numatytuosius nustatymus sukasi 50 % greičiu.

Pastaba: Didesnis greitis leidžia robotui sukasi greičiau, bet gali būti mažiau tikslus. Mažesnis greitis leidžia robotui sukasi lėčiau, bet gali būti tiksliau.

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

Parameters

Parametras

Tipas

Aprašymas

velocity

double

Sukimosi greitis nuo 0% iki 100%, kai naudojama velocityUnits::pct, nuo 0 iki 600 aps./min., kai naudojama rpm, arba nuo 0 iki 3600 laipsnių per sekundę, kai naudojama dps.

units

velocityUnits

Greičio vienetas: percent arba pct (procentai), rpm (apsisukimai per minutę) arba dps (laipsniai per sekundę).

Return Values

Ši funkcija negrąžina reikšmės.

Notes
  • Sukimosi greitis taikomas visoms vėlesnėms pavaros sukimo funkcijoms (pvz., turn ir turnFor), nebent funkcijos iškvietime būtų nurodytas konkretus greitis.

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 nustato, kaip robotas sustabdys judėjimą: stabdydamas, riedėdamas iš vietos arba palaikydamas.

Available Functions
void setStopping(
  brakeType mode );

Parameters

Parametras

Tipas

Aprašymas

mode

brakeType

Kaip robotas sustos:

  • brake - Nedelsiant sustoja.
  • coast - Lėtėja iki pilno sustojimo.
  • hold - Nedelsiant sustoja ir išlaiko ratų padėtį.

Return Values

Ši funkcija negrąžina reikšmės.

Notes
  • Stabdymo režimas taikomas visiems vėlesniems stop iškvietimams, nebent funkcijos iškvietime būtų nurodytas konkretus stabdymo režimas.

setTimeout#

setTimeout nustato, kiek sekundžių robotas bandys užbaigti judesį. Jei robotas negali užbaigti per tą laiką, jis nustos bandyti ir pereis prie kitos kodo eilutės. Tai neleidžia robotui užstrigti ties judesiu.

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

Parameters

Parametras

Tipas

Aprašymas

time

int32_t

Laikas, per kurį robotas gali bandyti užbaigti judesį. Tai turėtų būti teigiamas sveikasis skaičius.

units

timeUnits

Laiko vienetas: sec (sekundės) arba msec (milisekundės).

Return Values

Ši funkcija negrąžina reikšmės.

Notes
  • Laiko apribojimas taikomas tik tikslinėms pavaros judėjimo funkcijoms (pvz., driveFor ir turnFor).

Examples
// Start turning if driving takes too long
myDrivetrain.setTimeout(1, seconds);
myDrivetrain.driveFor(forward, 25, inches);
myDrivetrain.turnFor(right, 90, degrees);

Getteriai#

Atlikta#

isDone grąžina, ar robotas baigė judėti, kaip loginę reikšmę. Tai gali būti naudojama kitų veiksmų, pagrįstų roboto judėjimu, laikui valdyti.

Available Functions
bool isDone( void );

Parameters

Ši funkcija nepriima jokių parametrų.

Return Values
  • true – Robotas baigė judėti.

  • false – Robotas vis dar juda.

Notes
  • isDone suderinamas su taikiniu pagrįstomis pavaros judesiais (funkcijomis, kurios juda į taikinį, pvz., driveFor ir turnFor).

  • isDone nesuderinama su tokiomis funkcijomis kaip drive ir turn, nes jos nenaudoja judėjimo pagal taikinį.

Juda#

isMoving grąžina, ar robotas juda, kaip loginę reikšmę. Tai gali būti naudojama kitų veiksmų, pagrįstų roboto judėjimu, laikui valdyti.

Available Functions
virtual bool isMoving( void );

Parameters

Ši funkcija nepriima jokių parametrų.

Return Values
  • true – Robotas juda.

  • false – Robotas nejuda.

Notes
  • isMoving suderinama su taikiniu pagrįstomis pavaros judesiais (funkcijomis, kurios juda į taikinį, pvz., driveFor ir turnFor).

  • isMoving nesuderinama su tokiomis funkcijomis kaip drive ir turn, nes jos nenaudoja judėjimo pagal taikinį.

greitis#

velocity grąžina roboto važiavimo greitį.

Teigiama reikšmė reiškia, kad robotas važiuoja į priekį. Neigiama reikšmė reiškia, kad robotas važiuoja atbuline eiga.

Available Functions
double velocity(
  velocityUnits units );

Parameters

Parametras

Tipas

Aprašymas

units

velocityUnits

Greičio vienetas: percent arba pct (procentai), rpm (apsisukimai per minutę) arba dps (laipsniai per sekundę).

Return Values

Grąžina transmisijos greitį kaip double pasirinktu vienetu.

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

srovė#

current grąžina, kiek elektros srovės sunaudoja pavaros sistema. Srovė yra elektros energijos kiekis, tekantis per pavaros sistemą. Ji gali būti grąžinta amperais arba procentais, priklausomai nuo matavimo vieneto.

Didesnė srovės vertė reiškia, kad pavaros sistema naudoja daugiau elektros srovės. Taip gali nutikti, kai robotas stumia objektą arba bando pajudėti, kai yra užstrigęs.

Tai gali būti naudojama norint patikrinti, ar pavaros sistemai kyla problemų judesio metu. Jei srovė išlieka didelė, pavaros sistema gali įkaisti arba ne taip efektyviai naudoti energiją.

Available Functions

1 - Grąžina pavaros sistemos elektros srovę amperais.

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

2 - Grąžina pavaros grandinės elektros srovę, išreikštą maksimalios srovės procentine dalimi.

double current(
    percentUnits units );

Parameters

Parametras

Tipas

Aprašymas

units

currentUnits

Srovės grąžinimo vienetas: amp (amperai, numatytoji reikšmė).

units

percentUnits

Grąžinamos srovės vienetas: percent arba pct.

Return Values

Grąžina pavaros srovę kaip double pasirinktame vienete.

galia#

power grąžina pavaros sunaudojamą galią, matuojamą vatais. Galia rodo, kaip greitai pavara eikvoja energiją.

Didesnė galios vertė reiškia, kad pavaros sistema energiją naudoja greičiau. Tai gali nutikti, kai robotas stumia objektą arba bando pajudėti, kai yra įstrigęs.

Tai galima naudoti judesiams palyginti arba patikrinti, ar pavaros sistema veikia sunkiai. Jei galia išlieka didelė, pavaros sistema gali įkaisti arba ne taip efektyviai naudoti energiją.

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

Parameters

Parametras

Tipas

Aprašymas

units

powerUnits

Maitinimo vienetas: watt (vatai, numatytasis).

Return Values

Grąžina pavaros galią kaip double vatais.

sukimo momentas#

Sukimo momentas parodo, kaip stipriai transmisija gali stumti arba traukti, kai ratai sukasi.

torque grąžina pavaros naudojamą sukimo momentą, matuojamą niutonmetrais (Nm) arba coliais-svarais (InLb).

Didesnė sukimo momento vertė reiškia, kad pavaros sistema stumia arba traukia stipriau. Tai gali nutikti, kai robotas stumia objektą arba bando pajudėti, kai yra užstrigęs.

Tai galima naudoti norint patikrinti, ar pavaros sistema veikia sunkiai, arba palyginti, kiek stūmimo reikia skirtingiems judesiams.

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

Parameters

Parametras

Tipas

Aprašymas

units

torqueUnits

Sukimo momento grąžinimo vienetas: Nm (niutonmetrai, numatytoji reikšmė) arba InLb (coliai svarai).

Return Values

Grąžina pavaros sukimo momentą kaip double pasirinktu vienetu.

efektyvumas#

efficiency grąžina, kaip efektyviai pavaros sistema naudoja energiją, procentais nuo 0 % iki 100 %.

Efektyvumas rodo, kiek pavaros galios sunaudojama judėjimui. Didesnė efektyvumo vertė reiškia, kad daugiau pavaros galios sunaudojama judėjimui. Mažesnė efektyvumo vertė gali būti, kai pavara dirba intensyviai, bet juda mažai, pavyzdžiui, kai robotas užstringa arba stumia į objektą.

Tai gali būti naudojama judesiams palyginti arba patikrinti, ar pavarų sistema nešvaisto energijos, užuot ją naudojusi judėjimui.

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

Parameters

Parametras

Tipas

Aprašymas

units

percentUnits

Vienetas, kuriuo reikia pateikti efektyvumą: percent arba pct (numatytoji reikšmė).

Return Values

Grąžina pavaros efektyvumą kaip double pasirinktame vienete.

temperatūra#

temperature grąžina vidutinę pavaros agregato temperatūrą procentais nuo 0 % iki 100 %.

Temperatūra rodo, kiek įkaitę pavaros varikliai. Aukštesnė temperatūra reiškia, kad varikliai darbo metu įkaista. Kad varikliai veiktų visu našumu, jų temperatūra turi būti žemesnė nei 55 °C.

Jei varikliai per daug įkaista, jie sumažina maksimalią srovę, kad apsisaugotų. Esant 70 °C temperatūrai, varikliai nustos veikti, kol atvės.

Tai gali būti naudojama norint patikrinti, ar pavarų dėžė neperkaista pasikartojančių judesių, ilgų važiavimų metu arba kai ji spaudžia objektą.

Available Functions
double temperature(
  percentUnits units );

Parameters

Parametras

Tipas

Aprašymas

units

percentUnits

Grąžinamos temperatūros matavimo vienetas: percent arba pct.

Return Values

Grąžina vidutinę transmisijos temperatūrą kaip double pasirinktais vienetais.

Notes
  • Grąžinta 50% reikšmė rodo, kad vidutinė variklio temperatūra yra maždaug 45°C (113°F).

  • Įprasta pavaros sistemos darbinė temperatūra yra maždaug nuo 20°C (68°Fiki 70°C (158°F).

įtampa#

voltage grąžina pavaros sistemai tiekiamą elektros įtampą.

Įtampa yra pavaros varikliams tiekiamas elektrinis slėgis. Ją galima naudoti kartu su srovės ir galios vertėmis, siekiant suprasti, kaip pavara naudoja elektros energiją.

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

Parameters

Parametras

Tipas

Aprašymas

units

voltageUnits

Įtampos grąžinimo vienetas: volt (voltai, numatytoji reikšmė) arba voltageUnits::mV (milivoltai).

Return Values

Grąžina pavaros įtampą kaip double pasirinktais vienetais.