Giroszkóp#
Bevezetés#
A giroszkóp egy mozgásérzékelő, amely egyetlen tengely körüli forgást érzékel. Mérni tudja, hogy a robot mennyit fordult el, lehetővé téve a tájékozódás és az irány követését.
Ez az oldal drivetrain_gyro értéket használja példaként a giroszkóp érzékelő nevére. Szükség szerint cserélje ki a saját konfigurált névre.
Az alábbiakban felsoroljuk az összes elérhető módszert:
Műveletek — A giroszkóp irányának és forgásának kalibrálása vagy beállítása.
calibrate— Kalibrálja a giroszkópot a stabil iránykövetés érdekében.set_heading— Beállítja a giroszkóp érzékelő irányát egy megadott értékre.set_rotation— Beállítja a giroszkóp forgatási értékét.reset_heading— A giroszkóp érzékelő irányát 0-ra állítja.reset_rotation— A giroszkóp érzékelő forgását 0-ra állítja.
Getterek – Olvassák le a giroszkóp irányát, forgását és állapotát.
heading— Visszaadja az aktuális címsort.rotation— Visszaadja az összesített forgatást.rate— Visszaadja az x, y vagy z tengely körüli szögsebességet.is_calibrating— Visszaadja, hogy a giroszkóp kalibrál-e vagy sem.installed— Visszaadja, hogy van-e giroszkóp az agyhoz csatlakoztatva.
Visszahívás — Kód futtatása, amikor a giroszkóp mozgást vagy változást érzékel.
changed— Regisztrál egy függvényt, amelyet akkor hív meg, amikor a giroszkóp változást észlel.
Konstruktorok – Giroszkóp manuális inicializálása és konfigurálása.
Gyro— Giroszkóp érzékelőt hoz létre.
Műveletek#
calibrate#
calibrate kalibrálja a giroszkópot. Az összes további sor a kalibrálás befejezésére vár a végrehajtás előtt. A kalibrálás egy belső eljárás, amely egy meghatározott időszakon belül méri és kompenzálja az érzékelő zaját és sodródását. Ez idő alatt a giroszkópnak teljesen mozdulatlanul kell maradnia (azaz stabil felületen, külső mozgás nélkül). A kalibrálás közbeni mozgás pontatlan eredményeket eredményez.
Usage:
calibrate()
Paraméter |
Leírás |
|---|---|
Ennek a metódusnak nincsenek paraméterei. |
# Start Gyro Sensor calibration
drivetrain_gyro.calibrate()
# Print after calibration
while drivetrain_gyro.is_calibrating():
wait(0.1, SECONDS)
brain.screen.print("Done!")
set_heading#
set_heading A giroszkóp érzékelőjének irányát egy adott értékre állítja be.
Usage:
set_heading(value, units)
Paraméterek |
Leírás |
|---|---|
érték |
A beállítandó címsorérték. |
egységek |
Opcionális. Az új irány ábrázolására használt mértékegység:
|
# Turn the robot around
drivetrain_gyro.set_heading(180)
drivetrain.turn_to_heading(0)
set_rotation#
set_rotation A giroszkóp érzékelő forgását egy adott értékre állítja be.
Usage:
set_rotation(value, units)
Paraméterek |
Leírás |
|---|---|
|
A beállítandó címsorérték. |
|
Opcionális. Az új forgatási érték ábrázolására használt mértékegység:
|
# Turn the robot around
drivetrain_gyro.set_rotation(-180)
drivetrain.turn_to_rotation(0)
reset_heading#
reset_heading visszaállítja a giroszkóp érzékelő irányát 0-ra.
Usage:
reset_heading()
Paraméterek |
Leírás |
|---|---|
Ennek a metódusnak nincsenek paraméterei. |
# Turn the robot before and after resetting the heading
drivetrain.turn_to_heading(90, DEGREES)
wait(0.5,SECONDS)
drivetrain_gyro.reset_heading()
drivetrain.turn_to_heading(90, DEGREES)
reset_rotation#
reset_rotation visszaállítja a giroszkóp érzékelő forgását 0-ra.
Usage:
reset_rotation()
Paraméterek |
Leírás |
|---|---|
Ennek a metódusnak nincsenek paraméterei. |
# Turn the robot before and after resetting the rotation
drivetrain.turn_to_rotation(-90, DEGREES)
wait(0.5,SECONDS)
drivetrain_gyro.reset_rotation()
drivetrain.turn_to_rotation(-90, DEGREES)
Getterek#
heading#
heading visszaadja a giroszkóp aktuális irányát.
Usage:
heading(units)
Paraméterek |
Leírás |
|---|---|
|
Opcionális. A haladási irány ábrázolására használt mértékegység:
|
# Display the heading after turning
drivetrain.turn_for(RIGHT, 450, DEGREES)
brain.screen.print(drivetrain_gyro.heading())
rotation#
rotation visszaadja a giroszkóp aktuális forgását.
Usage:
rotation(units)
Paraméterek |
Leírás |
|---|---|
|
Opcionális. A forgatás ábrázolására használt mértékegység:
|
# Display the rotation after turning
drivetrain.turn_for(RIGHT, 450, DEGREES)
brain.screen.print(drivetrain_gyro.rotation())
rate#
rate A giroszkóp forgásának aktuális változási sebességét adja vissza a megadott egységekben.
Usage:
rate(units)
Paraméterek |
Leírás |
|---|---|
|
Opcionális. A giroszkóp fordulatszámának ábrázolására használt mértékegység:
|
# Display the rate of change of
# rotation while turning
drivetrain.turn(RIGHT)
wait(1, SECONDS)
brain.screen.print(drivetrain_gyro.rate())
drivetrain.stop()
is_calibrating#
is_calibrating ellenőrzi, hogy a giroszkóp kalibrálása folyamatban van-e.
True— A giroszkóp kalibrálás alatt áll.False— A giroszkóp nem kalibrál.
Usage:
is_calibrating()
Paraméter |
Leírás |
|---|---|
Ennek a metódusnak nincsenek paraméterei. |
# Start Gyro Sensor calibration.
drivetrain_gyro.calibrate()
# Print after calibration
while drivetrain_gyro.is_calibrating():
wait(0.1, SECONDS)
brain.screen.print("Done!")
installed#
installed egy logikai értéket ad vissza, amely azt jelzi, hogy a giroszkóp csatlakoztatva van-e az agyhoz.
True— A giroszkóp az agyhoz van csatlakoztatva.False— A giroszkóp nincs csatlakoztatva az agyhoz.
Usage:
installed()
Paraméterek |
Leírás |
|---|---|
Ennek a metódusnak nincsenek paraméterei. |
# Display a message if the Gyro Sensor is
# installed.
if drivetrain_gyro.installed():
brain.screen.print("Installed!")
Visszahívás#
changed#
changed egy visszahívó függvényt regisztrál, amely jelzi, ha a giroszkóp érzékelő iránya megváltozik.
Usage:
changed(callback, arg)
Paraméterek |
Leírás |
|---|---|
|
A giroszkóp érzékelőjének fejlécének megváltozásakor meghívandó visszahívó függvény. |
|
Opcionális. A visszahívó függvénynek átadandó argumentumok tuple-je. |
def gyro_changed():
brain.screen.clear_screen()
brain.screen.set_cursor(1, 1)
brain.screen.print("Heading: ")
brain.screen.print(drivetrain_gyro.heading())
# Display the heading when the gyro detects a change
drivetrain.turn_for(RIGHT, 90, DEGREES, wait=False)
drivetrain_gyro.changed(gyro_changed)
Konstruktorok#
A konstruktorokat Gyro objektumok manuális létrehozására használjuk, amelyek szükségesek egy Gyro érzékelő VEXcode-on kívüli konfigurálásához.
Gyro#
Gyro létrehoz egy giroszkópot.
Usage:
Gyro(smartport)
Paraméter |
Leírás |
|---|---|
|
Az az intelligens port, amelyhez a giroszkóp csatlakozik, PORTx-ként írva, ahol x a port száma. |
# Create the Brain
brain = Brain()
# When constructing Gyro Sensor "drivetrain_gyro" with a
# SmartDrive "drivetrain"
drivetrain_gyro = Gyro(Ports.PORT1)
drivetrain = SmartDrive(left_drive_smart, right_drive_smart, drivetrain_gyro, 200)
drivetrain_gyro.set_heading(180)
drivetrain.turn_to_heading(0)