Victor 883 发动机#
介绍#
The motor_victor class is used to control a Victor 883 Motor Controller connected to a 3-Wire Port. The Victor 883 Motor Controller sends a PWM signal from the V5 Brain to control compatible VEXpro or VEX EDR DC motors that cannot be connected directly to Smart Ports.
Victor 883 电机控制器无法在 VEXcode 中进行配置,必须手动在代码中构建才能使用。
类构造函数#
1 — Creates a
motor_victorobject for the Victor 883 Motor Controller connected to the specified 3-Wire Port.motor_victor( triport::port& port );
2 — Creates a
motor_victorobject on the specified 3-Wire Port and optionally reverses its direction.motor_victor( triport::port& port, bool reverse );
类析构函数#
Destroys the motor_victor object and releases associated resources.
~motor_victor();
参数#
范围 |
类型 |
描述 |
|---|---|---|
|
|
The 3-Wire Port that the Victor 883 Motor is connected to, written as |
|
|
Sets the positive direction of motor rotation:
|
例子#
// 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);
成员功能#
The motor_victor class includes the following member functions:
spin— Spins the motor in a specified direction.stop— Stops the motor.setVelocity— Sets the default velocity for the motor.setReversed— Sets the motor direction to be reversed or not.
Before calling any motor_victor member functions, a motor_victor instance must be created, as shown below:
/* 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#
使电机沿指定方向无限期旋转。
Available Functions1 — 使用当前配置的电机速度旋转电机。
void spin( directionType dir );
Parameters2 — 使电机以指定速度旋转。
void spin( directionType dir, double velocity, velocityUnits units );
范围 |
类型 |
描述 |
|---|---|---|
|
|
The direction in which the motor spins:
|
|
|
施加于电机的速度值。 |
|
|
The unit used to represent velocity:
|
此函数不返回值。
NotesThe motor will continue spinning until
stopis called or another movement function is executed.
// 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#
停止电机旋转。
Available Functionsvoid stop();
此函数不接受任何参数。
Return Values此函数不返回值。
NotesCalling
stopimmediately stops any current motor movement.
// Spin and then stop
victor.spin(forward);
wait(1, seconds);
victor.stop();
setVelocity#
设置 Victor 883 电机的默认速度。如果未指定具体速度,则后续调用任何电机函数时都将使用此速度设置。
Available Functionsvoid setVelocity(
double velocity,
percentUnits units );
范围 |
类型 |
描述 |
|---|---|---|
|
|
要施加于电机的速度值。 |
|
|
The unit used to represent
|
此函数不返回值。
NotesAny subsequent Victor 883 Motor movement function (such as
spin) that does not explicitly specify a velocity will use this value.
// Set velocity to 50%, then spin
victor.setVelocity(50, percent);
victor.spin(forward);
setReversed#
设置电机是否反转。
Available Functionsvoid setReversed( bool value );
范围 |
类型 |
描述 |
|---|---|---|
|
|
A boolean value to set the direction to reversed or not:
|
此函数不返回值。
NotesThis is the same as changing the
reverseparameter in the constructor.
// Reverse the motor direction
victor.setReversed(true);
victor.spin(forward); // Will actually spin in reverse