Гироскопический датчик#

Введение#

Гироскоп класса gyro используется для измерения направления и вращательного движения робота, что позволяет отслеживать его ориентацию во времени.

Конструктор класса#

gyro(
  triport::port &port);

Деструктор класса#

Уничтожает объект gyro и освобождает связанные с ним ресурсы.

virtual ~gyro();

Параметры#

Параметр

Тип

Описание

port

triport::port &

3-проводной порт, к которому подключен гироскопический датчик, обозначается как Brain.ThreeWirePort.X или ExpanderName.X, где X — буква порта (например, Brain.ThreeWirePort.A или Expander1.A).

Пример#

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

Функции участников#

Класс gyro включает следующие функции-члены:

  • calibrate — Калибрует гироскоп для стабильного отслеживания курса.

  • setHeading — Устанавливает направление гироскопа.

  • setRotation — Устанавливает текущее значение вращения гироскопа.

  • heading — Возвращает заголовок гироскопа.

  • rotation — Возвращает угол поворота гироскопа.

Перед вызовом любых функций-членов gyro необходимо создать экземпляр gyro , как показано ниже:

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

Выполняет калибровку гироскопического датчика.

Available Functions
void calibrate(
  int32_t value = 0 );

Parameters

Параметры

Тип

Описание

value

int32_t

Время в секундах, необходимое для калибровки. Значение по умолчанию: 0.

Return Values

Эта функция не возвращает значения.

Notes
  • Функцию calibrate следует вызывать только тогда, когда датчик неподвижен.

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

setHeading#

Устанавливает направление движения гироскопического датчика на определенное значение.

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

Параметры

Тип

Описание

value

double

Значение, которое будет использоваться для нового заголовка.

units

rotationUnits

Единица измерения, обозначающая направление:

  • degrees
  • turns
Return Values

Эта функция не возвращает значения.

setRotation#

Устанавливает угол поворота гироскопического датчика на заданное значение.

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

Parameters

Параметры

Тип

Описание

value

double

Значение, которое следует использовать в качестве нового значения поворота.

units

rotationUnits

Единица измерения величины поворота:

  • degrees
  • turns
Return Values

Эта функция не возвращает значения.

heading#

Возвращает текущее положение гиродатчика.

Available Functions
double heading(
  rotationUnits units = degrees );

Parameters

Параметр

Тип

Описание

units

rotationUnits

Единица измерения, обозначающая направление:

  • degrees (по умолчанию)
  • turns
Return Values

Возвращает значение double представляющее текущий курс гиродатчика в указанных единицах, по умолчанию degrees.

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

rotation#

Возвращает текущее значение угла поворота гироскопического датчика.

Available Functions
double rotation(
  rotationUnits units = degrees );

Parameters

Параметр

Тип

Описание

units

rotationUnits

Единица измерения значения поворота:

  • degrees (по умолчанию)
  • turns
Return Values

Возвращает значение типа double представляющее текущее значение поворота гироскопического датчика в указанных единицах, по умолчанию — degrees

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