Servo Motor#
Introduction#
The servo class is used to control and configure a V5 3-Wire Servo Motor. The V5 3-Wire Servo Motor provides position-based control within a fixed range of motion.
Class Constructors#
servo( triport::port& port );
Class Destructor#
Destroys the servo object and releases associated resources.
~servo();
Parameters#
Parameter |
Type |
Description |
|---|---|---|
|
|
The 3-Wire Port that the Servo Motor is connected to, written as |
Notes#
A Brain or 3-Wire Expander must be created first before they can be used to create an object with the
servoclass constructor.
Example#
// Create the servo instance on 3-Wire Port A
servo Servo = servo(Brain.ThreeWirePort.A);
Member Functions#
The servo class includes the following member functions:
setPosition— Sets the position of the servo motor.
Before calling any servo member functions, a servo instance must be created, as shown below:
/* This constructor is required when using VS Code.
Servo configuration is generated automatically
in VEXcode using the Device Menu. Replace the values
as needed. */
// Create the servo instance on 3-Wire Port A
servo Servo = servo(Brain.ThreeWirePort.A);
setPosition#
Sets the position of the servo motor to a specified value.
Available Functions1 — Sets the servo position using a percentage value.
void setPosition( int32_t value, percentUnits units );
Parameters2 — Sets the servo position using rotation units.
void setPosition( double value, rotationUnits units );
Parameter |
Type |
Description |
|---|---|---|
|
|
An integer value for the servo position when using percentage units. |
|
|
A double value for the servo position when using rotation units. |
|
|
The unit used to represent position as percentage:
|
|
|
The unit used to represent
|
This function does not return a value.
NotesWhen using percentage units, the valid range is 0 – 100%.
When using rotation units, the servo will move to the absolute position specified.
// Set the servo position to 10 percent
Servo.setPosition(10, percent);
// Set the servo position to 45.5 degrees
Servo.setPosition(45.5, degrees);
// Set the servo position to 90 degrees
Servo.setPosition(90, degrees);