자이로 센서#

소개#

gyro 클래스는 자이로 센서와 함께 사용하여 단일 축을 중심으로 한 회전 운동을 측정합니다. 로봇이 어느 방향을 향하고 있는지, 얼마나 회전했는지 추적할 수 있습니다.

클래스 생성자#

gyro(
    int32_t index );

클래스 소멸자#

gyro 객체를 파괴하고 관련 리소스를 해제합니다.

virtual ~gyro();

매개변수#

매개변수

유형

설명

index

int32_t

자이로 센서가 연결된 스마트 포트는 PORTx형식으로 표기되며, 여기서 x 포트 번호입니다(예: PORT1).

예#

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

회원 기능#

gyro 클래스는 다음과 같은 멤버 함수를 포함합니다.

  • calibrate — 자이로 센서를 보정합니다.

  • setHeading — 자이로 센서의 현재 방향을 새로운 방향 값으로 설정합니다.

  • setRotation — 자이로 센서의 현재 회전을 새로운 회전 값으로 설정합니다.

  • heading — 자이로 센서가 향하는 방향을 반환합니다.

  • rotation — 자이로 센서가 얼마나 회전했는지 반환합니다.

  • rate — 자이로 센서가 회전하는 속도를 반환합니다.

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 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

방향을 나타내는 단위:

  • degrees
  • turns

Return Values

이 함수는 값을 반환하지 않습니다.

setRotation#

자이로 센서의 현재 회전값을 특정 값으로 설정합니다.

회전은 자이로 센서가 얼마나 회전했는지를 나타냅니다. 방향과는 달리 회전은 359.99도를 초과하거나 0도 미만으로 감소할 수 있습니다.

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

Parameters

매개변수

유형

설명

value

double

새로운 회전 값으로 사용할 값입니다.

units

rotationUnits

회전 값을 나타내는 단위:

  • degrees
  • turns
회전

Return Values

이 함수는 값을 반환하지 않습니다.

heading#

자이로 센서의 현재 방향을 반환합니다.

헤딩은 자이로 센서가 향하는 방향을 나타내며, 0도에서 359.99도까지 측정됩니다. 센서가 359.99도를 넘어서 회전하면 헤딩은 0도로 되돌아갑니다.

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 = Gyro1.heading();
Brain.Screen.print(value);

rotation#

자이로 센서의 현재 회전 값을 반환합니다.

회전은 자이로 센서가 얼마나 회전했는지를 나타냅니다. 방향과는 달리 회전은 359.99도를 초과하거나 0도 미만으로 감소할 수 있습니다. 예를 들어, 오른쪽으로 두 바퀴를 완전히 돌면 720도가 회전합니다. 0도에서 왼쪽으로 한 바퀴를 완전히 돌면 -360도가 회전합니다.

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 = Gyro1.rotation();
Brain.Screen.print(value);

rate#

자이로 센서의 회전율을 반환합니다.

회전률은 자이로 센서가 회전하는 속도를 나타냅니다. 이 값은 센서가 회전하는 방향에 따라 양수 또는 음수가 될 수 있습니다.

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

Parameters

매개변수

유형

설명

units

rateUnits

속도를 나타내는 단위:

  • rateUnits::dps (기본값) — 초당 도
  • rateUnits::rpm — 분당 회전수

Return Values

지정된 단위로 자이로 센서의 현재 변화율을 나타내는 double 을 반환합니다. 기본값은 rateUnits::dps.