Gyrosensor#

Introduktion#

Gyroklassen gyro används för att mäta robotens kurs och rotationsrörelse, vilket möjliggör spårning av orientering över tid.

Klasskonstruktor#

gyro(
  triport::port &port);

Klassförstörare#

Förstör gyro objektet och frigör tillhörande resurser.

virtual ~gyro();

Parametrar#

Parameter

Typ

Beskrivning

port

triport::port &

Den 3-trådsport som gyrosensorn är ansluten till, skriven som Brain.ThreeWirePort.X eller ExpanderName.X, där X är portbokstaven (till exempel Brain.ThreeWirePort.A eller Expander1.A).

Exempel#

// Create a gyro instance in Port A
gyro GyroA = gyro(Brain.ThreeWirePort.A);

Medlemsfunktioner#

Gyroklassen gyro inkluderar följande medlemsfunktioner:

  • calibrate — Kalibrerar gyrot för stabil kursspårning.

  • setHeading — Ställer in gyrots kurs.

  • setRotation — Ställer in gyrots aktuella rotationsvärde.

  • heading — Returnerar gyrots kurs.

  • rotation — Returnerar gyrots rotation.

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 A
gyro GyroA = gyro(Brain.ThreeWirePort.A);

calibrate#

Kalibrerar gyrosensorn.

Available Functions
void calibrate(
  int32_t value = 0 );

Parameters

Parametrar

Typ

Beskrivning

value

int32_t

Tiden i sekunder som det tar att kalibrera. Standardvärdet är 0.

Return Values

Den här funktionen returnerar inget värde.

Notes
  • calibrate bör endast anropas när sensorn inte rör sig.

Examples
// Start calibration with the calibration time set to 3 seconds.
GyroA.calibrate(3);

setHeading#

Ställer in gyrosensorns kurs till ett specifikt värde.

Available Functions
void setHeading(
  double        value,
  rotationUnits units );

Parametrar

Typ

Beskrivning

value

double

Värdet som ska användas för den nya rubriken.

units

rotationUnits

Enheten som representerar kursen:

  • degrees
  • turns
Return Values

Den här funktionen returnerar inget värde.

setRotation#

Ställer in gyrosensorns rotation till ett specifikt värde.

Available Functions
void setRotation(
  double        value,
  rotationUnits units );

Parameters

Parametrar

Typ

Beskrivning

value

double

Värdet som ska användas för det nya rotationsvärdet.

units

rotationUnits

Enheten som representerar rotationsvärdet:

  • degrees
  • turns
Return Values

Den här funktionen returnerar inget värde.

heading#

Returnerar gyrosensorns aktuella kurs.

Available Functions
double heading(
  rotationUnits units = degrees );

Parameters

Parameter

Typ

Beskrivning

units

rotationUnits

Enheten som representerar kursen:

  • degrees (standard)
  • turns
Return Values

Returnerar double som representerar gyrosensorns aktuella riktning i de angivna enheterna, med standardvärdet degrees.

Examples
// Get the current heading for the Gyro.
double value = GyroA.heading();
Brain.Screen.print(value);

rotation#

Returnerar gyrosensorns aktuella rotation.

Available Functions
double rotation(
  rotationUnits units = degrees );

Parameters

Parameter

Typ

Beskrivning

units

rotationUnits

Enheten som representerar rotationsvärdet:

  • degrees (standard)
  • turns
Return Values

Returnerar double som representerar gyrosensorns aktuella rotationsvärde i de angivna enheterna, med standardvärdet degrees.

Examples
// Get the current rotation for the Gyro.
double value = GyroA.rotation();
Brain.Screen.print(value);