Cảm biến con quay hồi chuyển#

Giới thiệu#

Bộ điều khiển gyro được sử dụng với cảm biến con quay hồi chuyển để đo chuyển động quay quanh một trục duy nhất. Nó có thể theo dõi hướng mà robot đang đối mặt và mức độ quay của robot.

Hàm tạo lớp#

gyro(
    int32_t index );

Lớp Destructor#

Hủy đối tượng gyro và giải phóng các tài nguyên liên quan.

virtual ~gyro();

Thông số#

Tham số

Kiểu

Sự miêu tả

index

int32_t

Cổng thông minh mà cảm biến con quay hồi chuyển được kết nối, được viết dưới dạng PORTx, trong đó x là số cổng (ví dụ: PORT1).

Ví dụ#

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

Chức năng thành viên#

Lớp gyro bao gồm các hàm thành viên sau:

  • calibrate — Hiệu chỉnh cảm biến con quay hồi chuyển.

  • setHeading — Đặt hướng hiện tại của Cảm biến Con quay hồi chuyển thành một giá trị hướng mới.

  • setRotation — Đặt góc quay hiện tại của Cảm biến Con quay hồi chuyển thành một giá trị góc quay mới.

  • heading — Trả về hướng mà Cảm biến Con quay hồi chuyển đang hướng tới.

  • rotation — Trả về mức độ quay của Cảm biến Con quay hồi chuyển.

  • rate — Trả về tốc độ quay của Cảm biến Con quay hồi chuyển.

Trước khi gọi bất kỳ hàm thành viên nào gyro , cần phải tạo một thể hiện gyro , như được hiển thị bên dưới:

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

Hiệu chỉnh cảm biến con quay hồi chuyển.

Available Functions
void calibrate();

Parameters

Hàm này không chấp nhận bất kỳ tham số nào.

Return Values

Hàm này không trả về giá trị nào.

Notes
  • Việc hiệu chuẩn giúp cảm biến con quay hồi chuyển đo lường các góc quay một cách chính xác. Giữ cảm biến cố định trong quá trình hiệu chuẩn. Nếu cảm biến di chuyển trong quá trình hiệu chuẩn, các giá trị hướng, độ quay và tốc độ có thể không đo lường các góc quay một cách chính xác.

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

setHeading#

Thiết lập hướng hiện tại của cảm biến con quay hồi chuyển thành một giá trị cụ thể.

Hướng (heading) là hướng mà cảm biến con quay hồi chuyển đang hướng tới, được đo từ 0 đến 359,99 độ. Việc thiết lập hướng sẽ thay đổi hướng tham chiếu hiện tại của cảm biến.

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

Thông số

Kiểu

Sự miêu tả

value

double

Giá trị cần sử dụng cho tiêu đề mới.

units

rotationUnits

Đơn vị biểu thị hướng quay:

  • degrees
  • turns

Return Values

Hàm này không trả về giá trị nào.

setRotation#

Thiết lập góc quay hiện tại của cảm biến con quay hồi chuyển thành một giá trị cụ thể.

Góc quay thể hiện mức độ xoay của cảm biến con quay hồi chuyển. Không giống như hướng, góc quay có thể tăng lên quá 359,99 độ hoặc giảm xuống dưới 0 độ.

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

Parameters

Thông số

Kiểu

Sự miêu tả

value

double

Giá trị cần sử dụng cho giá trị xoay mới.

units

rotationUnits

Đơn vị biểu thị giá trị quay:

  • degrees
  • turns

Return Values

Hàm này không trả về giá trị nào.

heading#

Trả về hướng hiện tại của cảm biến con quay hồi chuyển.

Hướng quay là hướng mà cảm biến con quay hồi chuyển đang hướng tới, được đo từ 0 đến 359,99 độ. Nếu cảm biến quay vượt quá 359,99 độ, hướng quay sẽ quay trở lại 0 độ.

Available Functions
double heading(
  rotationUnits units = degrees );

Parameters

Tham số

Kiểu

Sự miêu tả

units

rotationUnits

Đơn vị biểu thị hướng:

  • degrees (mặc định)
  • turns

Return Values

Trả về một double biểu thị hướng hiện tại của cảm biến con quay hồi chuyển theo đơn vị được chỉ định, mặc định là degrees.

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

rotation#

Trả về góc quay hiện tại của cảm biến con quay hồi chuyển.

Góc quay (rotation) thể hiện mức độ xoay của cảm biến con quay hồi chuyển. Không giống như hướng (heading), góc quay có thể tăng lên quá 359,99 độ hoặc giảm xuống dưới 0 độ. Ví dụ, quay hai vòng hoàn toàn sang phải sẽ cho góc quay là 720 độ. Quay một vòng hoàn toàn sang trái từ 0 độ sẽ cho góc quay là -360 độ.

Available Functions
double rotation(
  rotationUnits units = degrees );

Parameters

Tham số

Kiểu

Sự miêu tả

units

rotationUnits

Đơn vị biểu thị giá trị xoay:

  • degrees (mặc định)
  • turns

Return Values

Trả về double biểu thị giá trị xoay hiện tại của cảm biến con quay hồi chuyển theo đơn vị được chỉ định, mặc định là degrees.

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

rate#

Trả về tốc độ quay của cảm biến con quay hồi chuyển.

Tốc độ quay là tốc độ quay của cảm biến con quay hồi chuyển. Giá trị này có thể dương hoặc âm tùy thuộc vào hướng quay của cảm biến.

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

Parameters

Tham số

Kiểu

Sự miêu tả

units

rateUnits

Đơn vị biểu thị tốc độ:

  • rateUnits::dps (mặc định) — độ trên giây
  • rateUnits::rpm — vòng quay trên phút

Return Values

Trả về một giá double biểu thị tốc độ thay đổi hiện tại của Cảm biến Con quay hồi chuyển theo đơn vị được chỉ định, mặc định là rateUnits::dps.