Ez csak a V5 Smart Motor (11W) 10-es fordulatára vonatkozik. További információért látogasson el rev10rma.vex.com oldalra
Milyen parancsokat kell védeni
Egy olyan problémát azonosítottunk, amely a motorok meghibásodását okozhatja. A probléma akkor jelentkezik, ha a motort 11 V-nál magasabb feszültségre utasítják, majd egy másik parancsot küldenek a motornak, hogy fordítsa az ellenkező irányba. Ez a parancssorozat feszültségcsúcsot okoz, amely károsítja a motor PC-kártyáján lévő alkatrészeket.
A legtöbb motorparancs a motor belső vezérlési logikáját használja, amely nem teszi lehetővé, hogy a motor elérje a 11 voltos kimeneti teljesítményt. Az olyan motorparancsok, mint a „motor.spinto(...)” és a „motor.spinfor(...)”, a PID-t használják a sebességek fenntartásához, és nem engedik, hogy a motor 11 volt felett működjön. Az egyetlen parancs, amellyel adott feszültségparancsot lehet küldeni a motornak, a „motor.spin(...)”. A motor.spin() több verziója létezik:
Példák a feszültség üzemmód parancsaira
A motor.spin() konkrét verziója, amely beállítja a motor feszültségét:
C++:
motor m1 = motor(PORT1, arány18_1, hamis);
m1.spin(előre, parancsoltVolt, volt);
Piton:
m1 = Motor (Portok.PORT1, GearSetting.RATIO_18_1, False)
m1.spin(ELŐRE, parancsoltVolt, VOLT)
Védőfeszültség üzemmód parancsok
A motor.spin() verziója, amely feszültségegységeket vesz fel, az egyetlen parancs, amely a motort 11 volton vagy afeletti feszültségen tudja elindítani. Győződjön meg arról, hogy csak 11,0-nál kisebb értékeket ad át ennek a függvénynek. Példa:
C++
if( parancsoltVolt >= 11,0) {
parancsoltVolt = 10,9;
}
else if( parancsoltVolt <= -11,0) {
parancsoltVolt = -10,9;
}
m1.spin(előre, parancsoltVolt, volt);
Python
, ha (commedVolts >= 11,0):
CommandVolts = 10,9
Elif (CommedVolts <= -11,0):
CommedVolts = -10,9
. pörgés (ELŐRE, parancsolt Volt, VOLT)
Ha a centrifugálási parancsban a feszültség mértékegységeitől eltérő mértékegységeket használ, akkor nem kell végrehajtania ezt a parancsolt értékellenőrzést. Győződjön meg arról, hogy a Rev 10 motorokat soha ne hajtsa 11 vagy több voltnál nagyobb feszültséggel, így elkerülheti a motorok meghibásodását.
C++ Command Reference
/**
* @brief Bekapcsolja a motort, és a megadott irányba forgatja.
* @paramdir A motor forgásának iránya.
*/
ürescentrifugálás( irány Típusdir );
/**
* @brief Bekapcsolja a motort, és meghatározott irányban és
sebességgel forgatja.
* @paramdir A motor forgásának iránya.
* @paramspeed Beállítja a sebesség mértékét.
* @paramunits A sebesség értékének mértékegysége.
*/
üres irányTípusdir, duplasebesség mértékegység ;
( dir, sebesség, <sebességMértékegységek>()
}
/**
* @brief Bekapcsolja a motort, és meghatározott irányba és
* meghatározott feszültséggel forgatja.
* @paramdir A motor forgásának iránya.
* @paramvoltage Beállítja a volt mértékét.
* @paramunits A feszültség értékének mértékegysége.
*/
ürescentrifugálás( irányTípusdupla
Python parancsreferencia
defspin(self, irány: DirectionType.DirectionType, *args,**wargs ):
'''### Forgassa meg a motort a megadott argumentumokkal
#### Érvek:
irány : A motor forgatási iránya, ELŐRE vagy VISSZA
sebesség (opcionális) : forgás Ha a motor ezt a sebességet használja, akkor a set_velocity által beállított alapértelmezett
sebesség kerül felhasználásra, ha nincs megadva.
egység (opcionális) : A megadott sebesség mértékegysége, alapértelmezett ford./perc
#### Visszatér:
Nincs
#### Példák:
# forog motor előrebeállítva a set_velocity-vel\\
motor1.spin(FORWARD)\n
# forgassa a motort előre 50 ford./perc
\\
motor1.spin(FORWARD),\n
# spin negatív sebességgel, pl. hátra\\
motor1.spin(FORWARD, -20)\n
# forgassa a motort előre 100%-os sebességgel\\
motor1.spin)(0FOR10,PEWARD,)\n
# forgás motor előre 50 ford./percnél\\
motor1.pörgés (ELŐRE, 50, RPM)\n119 116
előre 2 motor 2# 119 1 ps3 \\
motor1.pörgés (ELŐRE, 360.0, sebességegységek.DPS)
'''