Gyrosensor#
Introduktion#
Gyro gyro används med en gyrosensor för att mäta rotationsrörelser runt en enda axel. Den kan spåra vilken riktning roboten är vänd i och hur långt roboten har vridit.
Klasskonstruktor#
gyro(
int32_t index );
Klassförstörare#
Förstör gyro objektet och frigör tillhörande resurser.
virtual ~gyro();
Parametrar#
Parameter |
Typ |
Beskrivning |
|---|---|---|
|
|
Den smarta porten som gyrosensorn är ansluten till, skriven som |
Exempel#
// Create a gyro instance in Port 1
gyro Gyro1 = gyro(PORT1);
Medlemsfunktioner#
Gyroklassen gyro inkluderar följande medlemsfunktioner:
calibrate— Kalibrerar gyrosensorn.setHeading— Ställer in gyrosensorns aktuella kurs till ett nytt kursvärde.setRotation— Ställer in gyrosensorns aktuella rotation till ett nytt rotationsvärde.heading— Returnerar riktningen som gyrosensorn är vänd mot.rotation— Returnerar hur långt gyrosensorn har vridit sig.rate— Returnerar hur snabbt gyrosensorn roterar.
Innan några gyro medlemsfunktioner anropas måste en gyro instans skapas, som visas nedan:
/* This constructor is required when using VS Code.
Gyro Sensor configuration is generated automatically
in VEXcode using the Device Menu. Replace the values
as needed. */
// Create a gyro instance in Port 1
gyro Gyro1 = gyro(PORT1);
calibrate#
Kalibrerar gyrosensorn.
Available Functionsvoid calibrate();
Den här funktionen accepterar inga parametrar.
Return ValuesDen här funktionen returnerar inget värde.
NotesKalibrering hjälper gyrosensorn att mäta svängar korrekt. Håll sensorn stilla under kalibreringen. Om sensorn rör sig under kalibreringen kan kurs-, rotations- och hastighetsvärdena inte mäta svängar korrekt.
// Calibrate the Gyro Sensor before turning.
Gyro1.calibrate();
setHeading#
Ställer in gyrosensorns aktuella kurs till ett specifikt värde.
En kurs är den riktning gyrosensorn är vänd mot, mätt från 0 till 359,99 grader. Genom att ställa in kursen ändras sensorns aktuella riktningsreferens.
Available Functionsvoid setHeading(
double value,
rotationUnits units );
Parametrar |
Typ |
Beskrivning |
|---|---|---|
|
|
Värdet som ska användas för den nya rubriken. |
|
|
Enheten som representerar kursen:
|
Den här funktionen returnerar inget värde.
setRotation#
Ställer in gyrosensorns aktuella rotation till ett specifikt värde.
Rotation är hur mycket gyrosensorn har vridit sig. Till skillnad från kurs kan rotationen öka över 359,99 grader eller minska under 0 grader.
Available Functionsvoid setRotation(
double value,
rotationUnits units );
Parametrar |
Typ |
Beskrivning |
|---|---|---|
|
|
Värdet som ska användas för det nya rotationsvärdet. |
|
|
Enheten som representerar rotationsvärdet:
|
Den här funktionen returnerar inget värde.
heading#
Returnerar gyrosensorns aktuella kurs.
En kurs är den riktning gyrosensorn är vänd mot, mätt från 0 till 359,99 grader. Om sensorn vrider sig förbi 359,99 grader, återgår kursen till 0 grader.
Available Functionsdouble heading(
rotationUnits units = degrees );
Parameter |
Typ |
Beskrivning |
|---|---|---|
|
|
Enheten som representerar kursen:
|
Returnerar double som representerar gyrosensorns aktuella riktning i de angivna enheterna, med standardvärdet degrees.
// Get the current heading for the Gyro.
double value = Gyro1.heading();
Brain.Screen.print(value);
rotation#
Returnerar gyrosensorns aktuella rotation.
Rotation är hur mycket gyrosensorn har vridit sig. Till skillnad från kurs kan rotationen öka över 359,99 grader eller minska under 0 grader. Om man till exempel gör två hela varv åt höger returneras en rotation på 720 grader. Om man vrider ett helt varv åt vänster från 0 grader returneras en rotation på -360 grader.
Available Functionsdouble rotation(
rotationUnits units = degrees );
Parameter |
Typ |
Beskrivning |
|---|---|---|
|
|
Enheten som representerar rotationsvärdet:
|
Returnerar double som representerar gyrosensorns aktuella rotationsvärde i de angivna enheterna, med standardvärdet degrees.
// Get the current rotation for the Gyro.
double value = Gyro1.rotation();
Brain.Screen.print(value);
rate#
Returnerar gyrosensorns rotationshastighet.
Rotationshastigheten är hur snabbt gyrosensorn roterar. Värdet kan vara positivt eller negativt beroende på i vilken riktning sensorn roterar.
Available Functionsdouble rate(
rateUnits units = rateUnits::dps );
Parameter |
Typ |
Beskrivning |
|---|---|---|
|
|
Enheten som representerar hastigheten:
|
Returnerar double som representerar den aktuella förändringshastigheten för gyrosensorn i de angivna enheterna, med standardvärdet rateUnits::dps.