Motor és Motorcsoport#
Bevezetés#
A motorok és motorcsoportok szabályozzák a robot egyes részeinek mozgását. Egy motor objektum egy konfigurált IQ Smart Motort vezérel, míg egy motor_group objektum több konfigurált IQ Smart Motort vezérel együtt, így azok párhuzamosan mozognak. A motorok és motorcsoportok segítségével fel lehet emelni egy kart, el lehet forgatni egy karot, meg lehet forgatni egy kereket, vagy egy másik szerkezeti részt lehet mozgatni. Két motor együtt működhet hajtásláncként a teljes robot mozgatásához és forgatásához.
Minden motor vagy motorcsoport az Eszközök ablakban konfigurálható. A felépítéstől függően a motor- és motorcsoport-nevek változhatnak. Ez az oldal példaként Motor1 és MotorGroup1 neveket használja. Szükség szerint cserélje le őket a saját konfigurált neveire.
Alapértelmezés szerint forward az óramutató járásával ellentétes irányba forgatja a motort, reverse pedig az óramutató járásával megegyező irányba. Ha egy motor hátrafelé van beállítva, akkor ezek az irányok felcserélődnek.
Motor#
Class Constructors#
1 — Létrehoz egy
motorobjektumot az adott Smart Porthoz csatlakoztatott IQ Smart Motor számára. A motor automatikusan a detektált belsőgearSettinghasználja.motor( int32_t index );
2 — Létrehoz egy
motorobjektumot a megadott Smart Porton, és opcionálisan megfordítja a forgásirányát. A motor automatikusan a detektált belsőgearSettinghasználja.motor( int32_t index, bool reverse );
3 — Létrehoz egy
motorobjektumot a megadott Smart Porton a megadottgearSettingértékkel.motor( int32_t index, gearSetting gears );
4 — Létrehoz egy
motorobjektumot a megadott Smart Porton a megadottgearSettingértékkel és opcionálisan fordított iránnyal.motor( int32_t index, gearSetting gears, bool reverse );
Class Destructor#
Megsemmisíti a motor objektumot és felszabadítja a hozzá tartozó erőforrásokat.
~motor();
Parameters#
Paraméter |
Típus |
Leírás |
|---|---|---|
|
|
Az a Smart Port, amelyhez a motor csatlakozik, |
|
|
Beállítja, hogy a motor forgásiránya megforduljon-e:
|
|
|
Meghatározza a belső fogaskerék-áttételt.
|
Notes#
A sebességfokozat beállításának meg kell egyeznie a motorba szerelt fizikai patronnal.
Example#
// Create the motor instance in Smart Port 1
motor LeftMotor = motor(PORT1);
// Creates the motor instance with different settings
motor RightMotor = motor(
PORT2, // Smart Port 2
ratio2_1, // Gear ratio is 2:1
true);
Motorcsoport#
Class Constructors#
motor_group( motor &m1, Args&... m2 );
Class Destructor#
Megsemmisíti a motor_group objektumot és felszabadítja a hozzá tartozó erőforrásokat.
~motor_group();
Parameters#
Paraméter |
Típus |
Leírás |
|---|---|---|
|
|
Az első motor csatlakozott a csoporthoz. |
|
|
További motorok hozzáadva a csoporthoz. Egy motorcsoportban maximum négy motor lehet. |
Example#
// Create individual motor instances
motor LeftMotor = motor(PORT1);
motor RightMotor = motor(PORT2);
// Create a motor group with both motors
motor_group DriveMotors = motor_group(LeftMotor, RightMotor);
Tagfüggvények#
A motorok és motorcsoportok kódolásának számos módja van. Az alábbiakban felsoroljuk az összes motor és motor_group tagfüggvényt:
Műveletek — Motorok és motorcsoportok leállítása és megforgatása.
spin— Egy motort vagy motorcsoportot előre vagy hátra forgat örökké.spinFor— Megadott távolságig vagy ideig forgat egy motort vagy motorcsoportot.spinToPosition— Egy motort vagy motorcsoportot egy adott pozícióba forgat.stop— Leállítja a motor vagy motorcsoport forgását.
Mutátorok – Motoros és motoros csoportbeállítások módosítása.
setVelocity— Megadja egy motornak vagy motorcsoportnak a forgási sebességét.setMaxTorque— Beállítja, hogy egy motor vagy motorcsoport milyen erősen nyomhatja a motort forgás közben.setPosition— A motor vagy motorcsoport aktuális pozícióját új értékre módosítja.setStopping— Beállítja, hogy egy motor vagy motorcsoport hogyan álljon le: fékezéssel, szabadonfutással vagy tartással.setTimeout— Beállítja, hogy egy motor vagy motorcsoport mennyi idő alatt próbálja meg befejezni a mozgást.
Getterek – Motor és motorcsoport állapotának ellenőrzése.
isDone— Logikai értékként adja vissza, hogy a motor vagy motorcsoport mozgása befejeződött-e.isSpinning— Logikai értékként adja vissza, hogy a motor vagy a motorcsoport forog-e.position— Visszaadja a motor vagy motorcsoport aktuális pozícióját.velocity— Visszaadja a motor vagy motorcsoport forgási sebességét.current— Visszaadja, hogy mennyi elektromos áramot fogyaszt a motor vagy motorcsoport.power— Visszaadja, hogy mennyi energiát fogyaszt a motor vagy motorcsoport.torque— Visszaadja, hogy mennyi nyomatékot használ a motor vagy motorcsoport.efficiency— Visszaadja, hogy a motor vagy motorcsoport mennyire hatékonyan használja fel az energiát.temperature— Visszaadja a motor vagy motorcsoport hőmérsékletét.voltage— Visszaadja a motornak vagy motorcsoportnak szolgáltatott elektromos feszültséget.direction— Visszaadja a motor vagy motorcsoport forgási irányát.installed— Visszaadja, hogy a motor vagy a motorcsoport csatlakozik-e az agyhoz.count— Visszaadja a motorcsoportban lévő motorok számát.
Bármely motor vagy motor_group tagfüggvény meghívása előtt létre kell hozni egy példányt, az alábbiak szerint:
/* This constructor is required when using VS Code.
Motor and Motor Group configuration is generated automatically
in VEXcode using the Device Menu. Replace the values
as needed. */
// Create the motor instance in Smart Port 1
motor Motor1 = motor(PORT1);
Műveletek#
spin#
spin Egy motort vagy motorcsoportot előre vagy hátra forgat örökre. A motor vagy motorcsoport addig forog, amíg egy másik műveletet nem kap, például egy másik irányba forgatást vagy leállítást.
1 — A motort vagy motorcsoportot az aktuálisan konfigurált motorsebességgel forgatja.
void spin( directionType dir );
2 — A motort vagy motorcsoportot a megadott sebességgel forgatja.
void spin( directionType dir, double velocity, velocityUnits units );
Parameters3 — A megadott feszültséggel megforgatja a motort vagy motorcsoportot.
void spin( directionType dir, double voltage, voltageUnits units );
Paraméter |
Típus |
Leírás |
|---|---|---|
|
|
A motor vagy motorcsoport forgásiránya: |
|
|
A forgási sebesség 0%-tól 100%-ig |
|
|
A sebesség ábrázolására használt mértékegység:
|
|
|
A forgás feszültsége. A negatív érték az adott |
|
|
A feszültség ábrázolására használt mértékegység:
|
Ez a függvény nem ad vissza értéket.
NotesEz a függvény nem várakozik, és a projekt a hívás után azonnal folytatja a végrehajtást.
A motor vagy motorcsoport addig forog, amíg a
stopparancsot meg nem hívják, vagy egy másik mozgásfunkciót nem hajtanak végre.Az olyan függvények, mint a
isDoneés aisSpinningnem alkalmazhatók aspinfüggvényre, mivel az nem használ célpont-alapú mozgást (nincsrotationvagytimeparamétere).
// Spin forward, then stop
Motor1.spin(forward);
wait(1, seconds);
Motor1.stop();
spinFor#
spinFor Egy motort vagy motorcsoportot egy adott távolságig vagy ideig forgat. A forgatáson alapuló forgatás a motor vagy motorcsoport aktuális pozíciójához viszonyított. Alapértelmezés szerint a projekt megvárja, amíg a motor vagy motorcsoport befejezi a forgást, mielőtt a következő kódsor futna.
1 — Egy adott távolságot tesz meg a függvényhívásban megadott sebességgel.
bool spinFor( double rotation, rotationUnits units, double velocity, velocityUnits units_v, bool waitForCompletion = true );
2 — Elfogad egy irány paramétert, és egy adott távolságon keresztül forog a függvényhívásban megadott sebességgel.
bool spinFor( directionType dir, double rotation, rotationUnits units, double velocity, velocityUnits units_v, bool waitForCompletion = true );
3 — Egy adott távolságot tesz meg a jelenleg konfigurált motorsebesség használatával.
bool spinFor( double rotation, rotationUnits units, bool waitForCompletion = true );
4 — Elfogad egy irányparamétert, és egy adott távolságon keresztül forog a jelenleg konfigurált motorsebesség használatával.
bool spinFor( directionType dir, double rotation, rotationUnits units, bool waitForCompletion = true );
5 — Meghatározott ideig forog a függvényhívásban megadott sebességgel.
bool spinFor( double time, timeUnits units, double velocity, velocityUnits units_v );
6 — Elfogad egy irány paramétert, és egy meghatározott ideig forog a függvényhívásban megadott sebességgel.
bool spinFor( directionType dir, double time, timeUnits units, double velocity, velocityUnits units_v );
7 — Meghatározott ideig forog a jelenleg konfigurált motorsebesség használatával.
bool spinFor( double time, timeUnits units );
Parameters8 — Elfogad egy irányparamétert, és egy meghatározott ideig forog a jelenleg konfigurált motorsebesség használatával.
bool spinFor( directionType dir, double time, timeUnits units );
Paraméter |
Típus |
Leírás |
|---|---|---|
|
|
A motor vagy motorcsoport forgásiránya: |
|
|
A motor vagy motorcsoport által megpörgetett távolság. |
|
|
A forgási egység:
|
|
|
Az az időtartam, ameddig a motor vagy a motorcsoport forog. |
|
|
Az időegység:
|
|
|
A forgási sebesség 0%-tól 100%-ig |
|
|
A
|
|
|
|
Egy logikai értéket ad vissza, amely megmutatja, hogy a motor vagy a motorcsoport elérte-e a célértéket.
true— The motor or motor group reached the target value.false— The motor or motor group was not able to reach the target value orwaitForCompletionis set tofalse.
Egy másik motoros mozgásfunkció végrehajtása (például a
spinvagy astop)spinForfolyamatban lévő állapota közben megszakítja az aktuális mozgást.Mivel
spinForcél alapú (egyrotationvagytimeparamétert használ), az olyan függvények, mint aisDoneés aisSpinningspinFor-mal működnek.
// Spin 1 turn fast, then 1 turn slow
Motor1.spinFor(forward, 1, turns, true);
Motor1.spinFor(reverse, 1, turns, 20, velocityUnits::pct, true);
spinToPosition#
spinToPosition Egy motort vagy motorcsoportot egy adott pozícióba forgat.
Egy motor vagy motorcsoport pozíciója azt mutatja meg, hogy milyen messzire fordult el, degrees vagy turnsmérve. Egy fordulat 360 foknak felel meg. Egy projekt elején a motor vagy motorcsoport pozíciója 0 fokra van állítva. A motor vagy motorcsoport pozíciója a setPosition függvénnyel is beállítható.
A pozícióértékek abszolútak. Ez azt jelenti, hogy a forgás iránya a motor vagy motorcsoport aktuális pozíciójától függ.
Például, ha a motor vagy motorcsoport 0 fokról indul, és 720 fokos pozícióba forog, akkor két fordulatot előre fog forogni. Ha ezután 360 fokos pozícióba forog, akkor egy fordulatot vissza fog forogni, mivel a 360 fok kisebb, mint 720.
Available Functions1 — Egy adott pozícióba pörög a függvényhívásban megadott sebességgel.
bool spinToPosition( double rotation, rotationUnits units, double velocity, velocityUnits units_v, bool waitForCompletion = true );
Parameters2 — Egy adott pozícióba forog a jelenleg konfigurált motorsebesség használatával.
bool spinToPosition( double rotation, rotationUnits units, bool waitForCompletion = true );
Paraméter |
Típus |
Leírás |
|---|---|---|
|
|
A motor vagy motorcsoport forgási pozícióértéke. |
|
|
A forgási egység:
|
|
|
A forgási sebesség 0%-tól 100%-ig |
|
|
A
|
|
|
|
Egy logikai értéket ad vissza, amely megmutatja, hogy a motor vagy a motorcsoport indította-e el a kért célalapú mozgást.
true— The motor or motor group begins the requested target-based movement.false— The call fails orwaitForCompletionis set tofalse.
Egy másik motoros mozgásfunkció végrehajtása (például a
spinvagy aspinFor)spinToPositionfolyamatban lévő állapota alatt megszakítja az aktuális mozgást.Mivel
spinToPositioncél alapú (egyrotationparamétert használ), az olyan függvények, mint aisDoneés aisSpinningspinToPositionparaméterrel működnek.
// Spin forward, then go to 90°
Motor1.spin(forward);
wait(1, seconds);
Motor1.spinToPosition(90, degrees);
stop#
stop leállítja a motor vagy motorcsoport forgását.
1 — Leállítja a motort vagy motorcsoportot a jelenleg konfigurált fékezési mód használatával.
void stop();
Parameters2 — Leállítja a motort vagy motorcsoportot a függvényhívásban megadott fékezési móddal.
void stop( brakeType mode );
Paraméter |
Típus |
Leírás |
|---|---|---|
|
|
Opcionális. Hogyan áll le a motor vagy motorcsoport:
|
Ez a függvény nem ad vissza értéket.
NotesA
stopparancs meghívása azonnal leállítja a motor vagy motorcsoport aktuális mozgását.Ha nincs megadva fékezési mód, a motor vagy motorcsoport a jelenlegileg konfigurált fékezési módot használja.
stopmegszakít minden aktív, célpontalapú mozgást (példáulspinForvagyspinToPosition).
// Spin and coast to a stop
Motor1.setVelocity(100, percent);
Motor1.spin(forward);
wait(1, seconds);
Motor1.stop(coast);
Mutátorok#
setVelocity#
setVelocity megmondja a motornak vagy motorcsoportnak, hogy milyen gyorsan forogjon. Magasabb százalékos érték esetén a motor vagy motorcsoport gyorsabban, alacsonyabb százalékos érték esetén pedig lassabban forog.
Minden projekt úgy kezdődik, hogy minden motor vagy motorcsoport alapértelmezés szerint 50%-os sebességgel forog.
Megjegyzés: A nagyobb sebesség gyorsabban forogtatja a motort vagy a motorcsoportot, de kevésbé pontos lehet. Az alacsonyabb sebesség lassítja a motort vagy a motorcsoportot, de pontosabb lehet.
Available Functionsvoid setVelocity(
double velocity,
velocityUnits units );
Paraméter |
Típus |
Leírás |
|---|---|---|
|
|
A forgási sebesség 0%-tól 100%-ig |
|
|
A
|
Ez a függvény nem ad vissza értéket.
NotesBármely további motoros mozgásfüggvény (mint például a
spin,spinFor, vagyspinToPosition), amely nem ad meg explicit módon sebességet, ezt az értéket fogja használni.
// Try default, then slow, then fast
Motor1.spinFor(forward, 180, degrees);
wait(1, seconds);
Motor1.setVelocity(20, percent);
Motor1.spinFor(reverse, 180, degrees);
wait(1, seconds);
Motor1.setVelocity(100, percent);
Motor1.spinFor(forward, 180, degrees);
setMaxTorque#
A nyomaték megmutatja, hogy egy motor vagy motorcsoport milyen erősen tud nyomni vagy húzni forgás közben.
setMaxTorque beállítja a motor vagy motorcsoport által használható legnagyobb nyomatékot.
A magasabb százalékos érték lehetővé teszi a motor vagy motorcsoport erősebb tolását, például nehéz tárgy emelésekor. Az alacsonyabb százalékos érték korlátozza, hogy a motor vagy a motorcsoport milyen erősen tud tolni. Ez segíthet megvédeni a robotot, ha a motor vagy a motorcsoport elakad, vagy eléri a mozgási határát.
Minden projekt alapértelmezés szerint 50%-os nyomatékkal kezdődik.
Available Functions1 — Beállítja a maximális nyomatékot a motor vagy motorcsoport névleges nyomatékának százalékában.
void setMaxTorque( double value, percentUnits units );
2 — Beállítja a maximális nyomatékot fizikai nyomatékegységek használatával.
void setMaxTorque( double value, torqueUnits units );
Parameters3 — Beállítja a maximális nyomatékot a motoráram korlátozásával.
void setMaxTorque( double value, currentUnits units );
Paraméter |
Típus |
Leírás |
|---|---|---|
|
|
A motor vagy motorcsoport által használható maximális nyomaték. |
|
|
A nyomatékot százalékban adja meg: |
|
|
A nyomatékot fizikai mértékegységekben adja meg, például:
|
|
|
A nyomatékot a motoráram korlátozásával határozza meg:
|
Ez a függvény nem ad vissza értéket.
NotescurrentUnitshasználata esetén a nyomatékot a motor vagy motorcsoport által felhasználható elektromos áram mennyisége korlátozza.
setPosition#
Egy motor vagy motorcsoport pozíciója azt jelzi, hogy milyen messzire fordult el, degrees vagy turnsmérve. Egy fordulat 360 foknak felel meg. setPosition parancs a motor vagy motorcsoport aktuális pozícióját egy új értékre módosítja.
Például, ha egy motor vagy motorcsoport 180 fokra forgott, a pozíció 0 fokra állítása visszaállítja ezt a pozíciót 180-ról 0 fokra. Ezután a motor vagy motorcsoport az új érték alapján foroghat a pozíciókba.
Available Functionsvoid setPosition(
double value,
rotationUnits units );
Paraméter |
Típus |
Leírás |
|---|---|---|
|
|
A motorhoz vagy motorcsoporthoz beállítandó pozícióérték. |
|
|
A pozíció mértékegysége:
|
Ez a függvény nem ad vissza értéket.
NotesA
setPositionmeghívása után aspinToPositiontovábbi hívásai a frissített pozíciót fogják referenciaként használni.
setStopping#
setStopping paraméter beállítja, hogy egy motor vagy motorcsoport hogyan álljon le: fékezéssel, szabadon futással vagy tartással.
void setStopping(
brakeType mode );
Paraméter |
Típus |
Leírás |
|---|---|---|
|
|
Hogyan áll le a motor vagy motorcsoport:
|
Ez a függvény nem ad vissza értéket.
NotesA
stopfüggvény minden további, fékezési mód megadása nélküli hívása ezt az értéket fogja használni.
setTimeout#
setTimeout beállítja, hogy mennyi idő alatt próbáljon meg egy motor vagy motorcsoport befejezni egy mozgást. Ha a motor vagy motorcsoport nem tud befejezni ennyi idő alatt, akkor leállítja a próbálkozást, és a kód következő sorára ugrik. Ez megakadályozza, hogy a motor vagy motorcsoport elakadjon egy mozgásnál.
void setTimeout(
int32_t time,
timeUnits units );
Paraméter |
Típus |
Leírás |
|---|---|---|
|
|
Az az időtartam, ameddig a motor vagy motorcsoport megpróbálhat befejezni egy mozgást. Ennek pozitív egész számnak kell lennie. |
|
|
Az időegység:
|
Visszatérési értékek
Ez a függvény nem ad vissza értéket.
NotesA motor vagy motorcsoport időtúllépése arra szolgál, hogy megakadályozza a célpozíciójukat el nem érő mozgások végrehajtásának leállítását a veremben.
Ha a motor vagy motorcsoport nem éri el a célpozícióját az időkorlát lejárta előtt, akkor leállítja a próbálkozást, és a kód következő sorára ugrik.
Az időtúllépés olyan függvényekre vonatkozik, amelyeknek van célértékük, például a
spinForés aspinToPosition.
// Stop a long move after 1 second
Motor1.setTimeout(1, seconds);
Motor1.spinFor(forward, 2, turns);
Motor1.spinToPosition(0, degrees);
Getterek#
isDone#
isDone logikai értékként adja vissza, hogy a motor vagy motorcsoport mozgása befejeződött-e. Ez felhasználható más viselkedések időzítésének szabályozására a motor vagy motorcsoport mozgása alapján.
true— A motor vagy motorcsoport mozgása befejeződött.false— A motor vagy motorcsoport továbbra is mozog.
Ez a függvény a következő waitForCompletion paraméterrel rendelkező Motion függvényekkel működik együtt: spinFor és spinToPosition.
bool isDone();
Ez a függvény nem fogad el paramétereket.
Return ValuesLogikai értékként adja vissza, hogy a motor vagy motorcsoport mozgása befejeződött-e.
true— The motor or motor group is finished moving.false— The motor or motor group is still moving.
isDonea következő,waitForCompletionparaméterrel rendelkező Motion függvényekkel működik együtt:spinForésspinToPosition.
// Spin forward until the motor is done spinning
Motor1.spinFor(forward, 200, degrees, false);
while (true) {
if (Motor1.isDone()) {
Drivetrain.stop();
} else {
Drivetrain.drive(forward);
}
}
isSpinning#
isSpinning logikai értékként adja vissza, hogy a motor vagy a motorcsoport forog-e. Ez felhasználható más viselkedések időzítésének szabályozására a motor vagy motorcsoport mozgása alapján.
true— A motor vagy motorcsoport forog.false— A motor vagy motorcsoport nem forog.
Ez a függvény együtt működik a Motion mozgásfüggvényekkel, mint például a spin, spinFor és spinToPosition.
bool isSpinning();
Ez a függvény nem fogad el paramétereket.
Return ValuesLogikai értékként adja vissza, hogy a motor vagy a motorcsoport forog-e.
true— The motor or motor group is spinning.false— The motor or motor group is not spinning.
isSpinningolyan Motion mozgásfüggvényekkel működik, mint aspin,spinForésspinToPosition.
// Spin forward until the motor is done spinning
Motor1.spinFor(forward, 200, degrees, false);
while (true) {
if (Motor1.isSpinning()) {
Drivetrain.drive(forward);
} else {
Drivetrain.stop();
}
}
position#
Egy motor vagy motorcsoport pozíciója azt jelzi, hogy milyen messzire fordult el, degrees vagy turnsmérve. Egy fordulat 360 foknak felel meg. position a motor vagy motorcsoport aktuális pozícióját adja vissza.
Egy projekt elején a motor vagy motorcsoport pozíciója 0 fokra van állítva. Ha a motor vagy motorcsoport egy fordulatot előre forog, a pozíció 360 fok vagy 1 fordulat lesz. Ha a motor vagy motorcsoport az ellenkező irányba forog, a pozíció negatív lesz.
Available Functionsdouble position(
rotationUnits units );
Paraméter |
Típus |
Leírás |
|---|---|---|
|
|
A motor vagy motorcsoport pozícióját visszaadó egység:
|
Egy double értéket ad vissza, amely a motor vagy motorcsoport aktuális pozícióját jelöli a megadott mértékegységben.
A
setPositionfüggvény meghívása megváltoztatja az értékhez tartozó referenciapontot.A visszaadott érték a jeladó aktuális értékét tükrözi, és nem jelzi, hogy a motor vagy a motorcsoport aktívan mozog-e.
Amikor egy
motor_groupparaméterrel hívjuk meg, ez a függvény visszaadja a csoportban lévő első motor pozícióját.
// Spin, then show the final position
Motor1.spin(forward);
wait(1, seconds);
Motor1.stop();
Brain.Screen.print("Pos: %f", Motor1.position(degrees));
velocity#
velocity visszaadja, hogy milyen gyorsan forog a motor vagy motorcsoport.
A pozitív érték azt jelenti, hogy a motor vagy motorcsoport előre forog. A negatív érték azt jelenti, hogy hátrafelé forog.
Available Functionsdouble velocity(
velocityUnits units );
Paraméter |
Típus |
Leírás |
|---|---|---|
|
|
A sebesség ábrázolására használt mértékegység:
|
double értéket ad vissza, amely a motor vagy motorcsoport forgási sebességét jelöli a megadott egységekben.
Megjegyzések
Amikor egy
motor_groupértéken hívjuk meg, ez a függvény a csoportban lévő első motor sebességét adja vissza.
current#
current visszaadja, hogy mennyi elektromos áramot fogyaszt a motor vagy motorcsoport. Az áram a motoron vagy motorcsoporton átfolyó elektromos áram mennyisége. Amperben visszaadva az áram 0,0 és 1,2 A között van.
A magasabb áramérték azt jelenti, hogy a motor vagy motorcsoport több elektromos áramot fogyaszt. Ez akkor fordulhat elő, ha a motor vagy motorcsoport valami nehéz tárgyat emel, nekinyomódik egy tárgynak, vagy beragadt állapotban próbál elmozdulni.
Ez felhasználható annak ellenőrzésére, hogy a motor vagy motorcsoport mozgás közben nehézségekbe ütközik-e. Ha az áram magas marad, a motor felmelegedhet, vagy kevésbé hatékonyan használhatja fel az energiát.
Available Functions1 — Visszaadja a motor vagy motorcsoport elektromos áramát amperben.
double current( currentUnits units = amp );
Parameters2 — Visszaadja a motor vagy motorcsoport elektromos áramát a maximális névleges áram százalékában.
double current( percentUnits units );
Paraméter |
Típus |
Leírás |
|---|---|---|
|
|
Az áramerősség ábrázolására használt mértékegység: |
|
|
Az áramot a motor maximális névleges áramának százalékában adja meg: |
double értéket ad vissza, amely a motor vagy motorcsoport által felvett elektromos áram mennyiségét jelöli a megadott mértékegységben.
Megjegyzések
Amikor egy
motor_groupértékkel hívjuk meg, ez a függvény visszaadja a csoportban lévő összes motor teljes elektromos áramát.
power#
power Visszaadja, hogy mennyi energiát fogyaszt a motor vagy motorcsoport wattban. A Power megmutatja, hogy a motor vagy motorcsoport milyen gyorsan fogyasztja az energiát.
A magasabb teljesítményérték azt jelenti, hogy a motor vagy motorcsoport gyorsabban használja az energiát. Ez akkor fordulhat elő, ha a motor vagy motorcsoport valami nehéz tárgyat emel, nekinyomódik egy tárgynak, vagy elakadt állapotban próbál mozdulni.
Ez felhasználható a mozgások összehasonlítására, vagy annak ellenőrzésére, hogy a motor vagy a motorcsoport hibás-e. Ha a teljesítmény magas marad, a motor felmelegedhet, vagy kevésbé hatékonyan használhatja fel az energiát.
Available Functionsdouble power(
powerUnits units = watt );
Paraméterek
Paraméter |
Típus |
Leírás |
|---|---|---|
|
|
A motor teljesítményének ábrázolására használt mértékegység:
|
Visszatérési értékek
double értéket ad vissza, amely a motor vagy motorcsoport által felhasznált teljesítményt wattban adja meg.
Megjegyzések
Amikor egy
motor_groupparaméterrel hívjuk meg, ez a függvény a csoport első motorjának elektromos teljesítményét adja vissza.
torque#
A nyomaték megmutatja, hogy egy motor vagy motorcsoport milyen erősen csavarodik, nyom vagy húz forgás közben.
torque visszaadja, hogy mennyi nyomatékot használ a motor vagy motorcsoport.
A magasabb nyomatékérték azt jelenti, hogy a motor vagy motorcsoport erősebben nyom vagy húz. Ez akkor fordulhat elő, ha a motor vagy motorcsoport valami nehéz tárgyat emel, nekinyomódik egy tárgynak, vagy beragadt állapotban próbál mozdulni.
Ez felhasználható annak ellenőrzésére, hogy a motor vagy a motoros csoport küzd-e nehézségekkel, vagy annak összehasonlítására, hogy mennyi lökést igényelnek a különböző mozgások.
Egy motor vagy motorcsoport nyomatékának beállításához használja a setMaxTorque parancsot.
double torque(
torqueUnits units = Nm );
Paraméterek
Paraméter |
Típus |
Leírás |
|---|---|---|
|
|
A motor nyomatékának ábrázolására használt mértékegység:
|
Visszatérési értékek
double értéket ad vissza, amely azt jelöli, hogy a motor vagy motorcsoport mennyi nyomatékot használ a megadott mértékegységben.
Megjegyzések
Amikor egy
motor_groupcsoporton hívjuk meg, ez a függvény a csoportban lévő első motor mechanikai kimeneti nyomatékát adja vissza.
efficiency#
efficiency Visszaadja, hogy a motor vagy motorcsoport mennyire hatékonyan használja fel az energiát, 0% és 100% közötti százalékban.
A hatásfok megmutatja, hogy a motor vagy motorcsoport teljesítményének mekkora részét használják fel mozgásra. A magasabb hatásfok azt jelenti, hogy a motor vagy motorcsoport teljesítményének nagyobb részét használják fel mozgásra. Alacsonyabb hatásfok akkor fordulhat elő, ha a motor vagy motorcsoport keményen dolgozik, de nem mozog sokat, például amikor beragadt vagy egy tárgynak nyomódik.
Ez felhasználható mozgások összehasonlítására, vagy annak ellenőrzésére, hogy a motor vagy motorcsoport pazarolja-e az energiát a mozgásra való felhasználás helyett.
Available Functionsdouble efficiency(
percentUnits units = percent );
Paraméterek
Paraméter |
Típus |
Leírás |
|---|---|---|
|
|
A motor hatásfokának ábrázolására használt mértékegység:
|
Visszatérési értékek
double értéket ad vissza, amely azt jelzi, hogy a motor vagy motorcsoport mennyire hatékonyan használja fel az energiát százalékban.
Megjegyzések
Amikor egy
motor_groupértékre hívjuk meg, ez a függvény a csoportban lévő első motor hatásfokát adja vissza.
temperature#
temperature A motor vagy motorcsoport hőmérsékletét adja vissza.
A motor hőmérséklete megmutatja, mennyire meleg a motor vagy a motorcsoport. A magasabb hőmérséklet azt jelenti, hogy a motor vagy a motorcsoport működés közben melegszik. A motor hőmérsékletének 55°C alatt kell maradnia ahhoz, hogy teljes teljesítményen működjön.
Ha a motor vagy motorcsoport túlmelegszik, csökkenti a maximális áramát önmaga védelme érdekében. 70°Con a motor leáll, amíg le nem hűl.
Ez felhasználható annak ellenőrzésére, hogy a motor vagy a motorcsoport túlmelegszik-e ismételt mozgások, hosszú futások vagy tárgynak való nyomás során.
Available Functions1 — Visszaadja a motor vagy motorcsoport hőmérsékletét a maximális üzemi hőmérséklet százalékában.
double temperature( percentUnits units = percent );
2 — Visszaadja a motor vagy motorcsoport hőmérsékletét fizikai hőmérsékleti egységben.
double temperature( temperatureUnits units );
Paraméterek
Paraméter |
Típus |
Leírás |
|---|---|---|
|
|
A motor vagy motorcsoport hőmérsékletének százalékos ábrázolására használt mértékegység:
|
|
|
A motor vagy motorcsoport hőmérsékletének fokban kifejezett mértékegysége:
|
Visszatérési értékek
Egy double értéket ad vissza, amely a motor vagy motorcsoport hőmérsékletét jelöli a megadott mértékegységben.
Megjegyzések
The operating temperature range for the motor is approximately
20°C(68°F) to70°C(158°F).Amikor egy
motor_groupértékkel hívjuk meg, ez a függvény a csoport első motorjának hőmérsékletét adja vissza.
voltage#
A voltage visszaadja a motornak vagy motorcsoportnak adott elektromos feszültséget.
double voltage(
voltageUnits units = volt );
Paraméterek
Paraméter |
Típus |
Leírás |
|---|---|---|
|
|
A feszültséget ábrázoló mértékegység:
|
Visszatérési értékek
Egy double értéket ad vissza, amely a motornak vagy motorcsoportnak adott elektromos feszültséget jelöli a megadott mértékegységben.
Megjegyzések
Amikor egy
motor_groupértéken hívjuk meg, ez a függvény visszaadja a csoportban lévő első motor elektromos feszültségét.
direction#
direction visszaadja a motor vagy motorcsoport forgási irányát.
directionType direction();
Paraméterek
Ez a függvény nem fogad el paramétereket.
Visszatérési értékek
directionType értéket ad vissza, amely a motor vagy motorcsoport aktuális irányát jelzi:
forward— The motor or motor group is spinning forward.reverse— The motor or motor group is spinning in reverse.
installed#
installed visszaadja, hogy a motor vagy a motorcsoport csatlakozik-e az IQ (1. generációs) agyhoz.
bool installed();
Paraméterek
Ez a függvény nem fogad el paramétereket.
Visszatérési értékek
bool értéket ad vissza, amely jelzi, hogy a motor vagy a motorcsoport van-e csatlakoztatva.
true— The motor or motor group is connected.false— The motor or motor group is not connected.
count#
count visszaadja a motorcsoportban lévő motorok számát.
int32_t count();
Paraméterek
Ez a függvény nem fogad el paramétereket.
Visszatérési értékek
Egy int32_t értéket ad vissza, amely a motorcsoportban lévő motorok számát jelöli.