Động cơ Victor 883#
Giới thiệu#
Lớp motor_victor được sử dụng để điều khiển Bộ điều khiển động cơ Victor 883 được kết nối với Cổng 3 dây. Bộ điều khiển động cơ Victor 883 gửi tín hiệu PWM từ Bộ xử lý V5 để điều khiển các động cơ DC VEXpro hoặc VEX EDR tương thích mà không thể kết nối trực tiếp với Cổng thông minh.
Bộ điều khiển động cơ Victor 883 không thể được cấu hình trong VEXcode và phải được xây dựng thủ công trong mã lập trình để có thể sử dụng được.
Hàm tạo lớp#
1 — Tạo một đối tượng
motor_victorcho Bộ điều khiển động cơ Victor 883 được kết nối với Cổng 3 dây được chỉ định.motor_victor( triport::port& port );
2 — Tạo một đối tượng
motor_victortrên Cổng 3 dây được chỉ định và tùy chọn đảo chiều của nó.motor_victor( triport::port& port, bool reverse );
Lớp Destructor#
Hủy đối tượng motor_victor và giải phóng các tài nguyên liên quan.
~motor_victor();
Thông số#
Tham số |
Kiểu |
Sự miêu tả |
|---|---|---|
|
|
Cổng 3 dây mà động cơ Victor 883 được kết nối, được viết là |
|
|
Thiết lập xem hướng quay của động cơ có bị đảo ngược hay không:
|
Ví dụ#
// Create the motor_victor instance on 3-Wire Port A
motor_victor victor = motor_victor(Brain.ThreeWirePort.A);
// Create the motor_victor instance with reversed direction
motor_victor victor2 = motor_victor(Brain.ThreeWirePort.B, true);
Chức năng thành viên#
Lớp motor_victor bao gồm các hàm thành viên sau:
spin— Quay động cơ theo hướng được chỉ định.stop— Dừng động cơ.setVelocity— Cho động cơ biết tốc độ quay.setReversed— Đặt hướng quay của động cơ có bị đảo ngược hay không.
Trước khi gọi bất kỳ hàm thành viên nào của motor_victor , cần phải tạo một thể hiện motor_victor , như được hiển thị bên dưới:
/* This constructor is required to use a
Victor 883 Motor. Replace the values
as needed. */
// Create the motor_victor instance on 3-Wire Port A
motor_victor victor = motor_victor(Brain.ThreeWirePort.A);
spin#
Làm cho động cơ quay theo hướng đã chỉ định mãi mãi.
Available Functions1 — Quay động cơ bằng tốc độ động cơ hiện đang được cấu hình.
void spin( directionType dir );
Parameters2 — Quay động cơ với vận tốc đã chỉ định.
void spin( directionType dir, double velocity, velocityUnits units );
Tham số |
Kiểu |
Sự miêu tả |
|---|---|---|
|
|
Hướng quay của động cơ: |
|
|
Tốc độ quay từ 0% đến 100% khi sử dụng |
|
|
Đơn vị vận tốc:
|
Hàm này không trả về giá trị nào.
NotesĐộng cơ sẽ tiếp tục quay cho đến khi
stopđược gọi hoặc một chức năng chuyển động khác được thực thi.
// Spin forward, then stop
victor.spin(forward);
wait(1, seconds);
victor.stop();
// Spin forward at 100 rpm
victor.spin(forward, 100, rpm);
wait(1, seconds);
victor.stop();
stop#
Ngăn động cơ quay.
Available Functionsvoid stop();
Hàm này không chấp nhận bất kỳ tham số nào.
Return ValuesHàm này không trả về giá trị nào.
NotesGọi lệnh
stopsẽ ngay lập tức dừng mọi chuyển động hiện tại của động cơ.
// Spin and then stop
victor.spin(forward);
wait(1, seconds);
victor.stop();
setVelocity#
Thông số này cho biết tốc độ quay của động cơ. Tỷ lệ phần trăm càng cao thì động cơ càng quay nhanh, tỷ lệ phần trăm càng thấp thì động cơ càng quay chậm.
Mỗi dự án đều bắt đầu với việc mỗi động cơ được kết nối quay ở tốc độ 50% theo mặc định.
Available Functionsvoid setVelocity(
double velocity,
percentUnits units );
Tham số |
Kiểu |
Sự miêu tả |
|---|---|---|
|
|
Tốc độ quay từ 0% đến 100% khi sử dụng |
|
|
Đơn vị vận tốc: |
Hàm này không trả về giá trị nào.
NotesBất kỳ chức năng chuyển động nào tiếp theo của Động cơ Victor 883 (chẳng hạn như
spin) mà không chỉ định rõ vận tốc sẽ sử dụng giá trị này.
// Set velocity to 50%, then spin
victor.setVelocity(50, percent);
victor.spin(forward);
setReversed#
Thiết lập hướng quay của động cơ, có thể đảo chiều hoặc không.
Available Functionsvoid setReversed( bool value );
Tham số |
Kiểu |
Sự miêu tả |
|---|---|---|
|
|
Liệu hướng quay của động cơ có bị đảo ngược hay không:
|
Hàm này không trả về giá trị nào.
NotesĐiều này tương đương với việc thay đổi tham số
reversetrong hàm tạo.
// Reverse the motor direction
victor.setReversed(true);
victor.spin(forward); // Will actually spin in reverse