Γυροσκοπικός αισθητήρας#

Εισαγωγή#

The gyro class is used with a Gyro Sensor to measure rotational movement around a single axis. It can track which direction the robot is facing and how far the robot has turned.

Κατασκευαστής κλάσης#

gyro(
    int32_t index );

Καταστροφέας κλάσης#

Destroys the gyro object and releases associated resources.

virtual ~gyro();

Παράμετροι#

Παράμετρος

Τύπος

Περιγραφή

index

int32_t

The Smart Port that the Gyro Sensor is connected to, written as PORTx, where x is the port number (for example, PORT1).

Παράδειγμα#

// Create a gyro instance in Port 1
gyro Gyro1 = gyro(PORT1);

Συναρτήσεις Μελών#

The gyro class includes the following member functions:

  • calibrate — Calibrates the Gyro Sensor.

  • setHeading — Sets the Gyro Sensor’s current heading to a new heading value.

  • setRotation — Sets the Gyro Sensor’s current rotation to a new rotation value.

  • heading — Returns the direction the Gyro Sensor is facing.

  • rotation — Returns how far the Gyro Sensor has turned.

  • rate — Returns how fast the Gyro Sensor is rotating.

Before calling any gyro member functions, a gyro instance must be created, as shown below:

/* 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#

Βαθμονομεί τον γυροσκοπικό αισθητήρα.

Available Functions
void calibrate();

Parameters

Αυτή η συνάρτηση δεν δέχεται καμία παράμετρο.

Return Values

Αυτή η συνάρτηση δεν επιστρέφει τιμή.

Notes
  • Η βαθμονόμηση βοηθά τον γυροσκοπικό αισθητήρα να μετρά σωστά τις στροφές. Κρατήστε τον αισθητήρα ακίνητο κατά τη βαθμονόμηση. Εάν ο αισθητήρας κινηθεί κατά τη βαθμονόμηση, οι τιμές κατεύθυνσης, περιστροφής και ρυθμού ενδέχεται να μην μετρούν σωστά τις στροφές.

Examples
// Calibrate the Gyro Sensor before turning.
Gyro1.calibrate();

setHeading#

Ορίζει την τρέχουσα κατεύθυνση του γυροσκοπικού αισθητήρα σε μια συγκεκριμένη τιμή.

Μια κατεύθυνση είναι η κατεύθυνση προς την οποία είναι στραμμένος ο γυροσκοπικός αισθητήρας, μετρούμενη από 0 έως 359,99 μοίρες. Η ρύθμιση της κατεύθυνσης αλλάζει την τρέχουσα αναφορά κατεύθυνσης του αισθητήρα.

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

Παράμετροι

Τύπος

Περιγραφή

value

double

Η τιμή που θα χρησιμοποιηθεί για τη νέα επικεφαλίδα.

units

rotationUnits

The unit that represents the heading:

  • degrees
  • turns

Return Values

Αυτή η συνάρτηση δεν επιστρέφει τιμή.

setRotation#

Ορίζει την τρέχουσα περιστροφή του γυροσκοπικού αισθητήρα σε μια συγκεκριμένη τιμή.

Η περιστροφή είναι η περιστροφή του γυροσκοπίου. Σε αντίθεση με την κατεύθυνση, η περιστροφή μπορεί να αυξηθεί πέραν των 359,99 μοιρών ή να μειωθεί κάτω από τις 0 μοίρες.

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

Parameters

Παράμετροι

Τύπος

Περιγραφή

value

double

Η τιμή που θα χρησιμοποιηθεί για τη νέα τιμή περιστροφής.

units

rotationUnits

The unit that represents the rotation value:

  • degrees
  • turns

Return Values

Αυτή η συνάρτηση δεν επιστρέφει τιμή.

heading#

Επιστρέφει την τρέχουσα κατεύθυνση του γυροσκοπικού αισθητήρα.

Μια κατεύθυνση είναι η κατεύθυνση προς την οποία είναι στραμμένος ο γυροσκοπικός αισθητήρας, μετρούμενη από 0 έως 359,99 μοίρες. Εάν ο αισθητήρας περιστραφεί πέρα ​​από τις 359,99 μοίρες, η κατεύθυνση επιστρέφει στις 0 μοίρες.

Available Functions
double heading(
  rotationUnits units = degrees );

Parameters

Παράμετρος

Τύπος

Περιγραφή

units

rotationUnits

The unit that represents the heading:

  • degrees (default)
  • turns

Return Values

Returns a double representing the current heading of the Gyro Sensor in the specified units, defaulting to degrees.

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

rotation#

Επιστρέφει την τρέχουσα περιστροφή του γυροσκοπικού αισθητήρα.

Η περιστροφή είναι η περιστροφή του γυροσκοπίου. Σε αντίθεση με την κατεύθυνση, η περιστροφή μπορεί να αυξηθεί πέραν των 359,99 μοιρών ή να μειωθεί κάτω από τις 0 μοίρες. Για παράδειγμα, κάνοντας δύο πλήρεις στροφές προς τα δεξιά επιστρέφει μια περιστροφή 720 μοιρών. Στρέφοντας μία πλήρη στροφή προς τα αριστερά από τις 0 μοίρες επιστρέφει μια περιστροφή -360 μοιρών.

Available Functions
double rotation(
  rotationUnits units = degrees );

Parameters

Παράμετρος

Τύπος

Περιγραφή

units

rotationUnits

The unit that represents the rotation value:

  • degrees (default)
  • turns

Return Values

Returns a double representing the current rotation value of the Gyro Sensor in the specified units, defaulting to degrees.

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

rate#

Επιστρέφει τον ρυθμό περιστροφής του γυροσκοπικού αισθητήρα.

Ο ρυθμός περιστροφής είναι η ταχύτητα με την οποία περιστρέφεται ο γυροσκοπικός αισθητήρας. Η τιμή μπορεί να είναι θετική ή αρνητική ανάλογα με την κατεύθυνση περιστροφής του αισθητήρα.

Available Functions
double rate(
  rateUnits units = rateUnits::dps );

Parameters

Παράμετρος

Τύπος

Περιγραφή

units

rateUnits

The unit that represents the rate:

  • rateUnits::dps (default) — degrees per second
  • rateUnits::rpm — rotations per minute

Return Values

Returns a double representing the current rate of change of the Gyro Sensor in the specified units, defaulting to rateUnits::dps.