![]() |
VEXcode IQ C++ Unofficial documentation for version 3.0.4.1
|
Use the motor class to control motor devices. More...
#include <vex_motor.h>
Public Member Functions | |
| motor (int32_t index) | |
| Creates a new motor object on the port specified. | |
| bool | installed () |
| int32_t | value () |
| motor (int32_t index, bool reverse) | |
| Creates a new motor object on the port specified and sets the reversed flag. | |
| motor (int32_t index, double gearRatio) | |
| Creates a new motor object on the port specified and sets the output gear ratio. | |
| motor (int32_t index, double gearRatio, bool reverse) | |
| Creates a new motor object on the port specified and sets the output gear ratio and reverse flag. | |
| void | setReversed (bool value) |
| Sets the motor mode to "reverse", which will make motor commands spin the motor in the opposite direction. | |
| void | setVelocity (double velocity, velocityUnits units) |
| Sets the velocity of the motor based on the parameters set in the command. This command will not run the motor. Any subsequent call that does not contain a specified motor velocity will use this value. | |
| void | setVelocity (double velocity, percentUnits units) |
| Sets the velocity of the motor based on the parameters set in the command. This command will not run the motor. Any subsequent call that does not contain a specified motor velocity will use this value. | |
| void | setBrake (brakeType mode) |
| void | setStopping (brakeType mode) |
| Sets the stopping mode of the motor by passing a brake mode as a parameter. | |
| void | resetPosition (void) |
| Resets the motor's encoder to the value of zero. | |
| void | setPosition (double value, rotationUnits units) |
| Sets the value of the motor's encoder to the value specified in the parameter. | |
| void | setTimeout (int32_t time, timeUnits units) |
| Sets the timeout for the motor. If the motor does not reach its' commanded position prior to the completion of the timeout, the motor will stop. | |
| void | spin (directionType dir) |
| Turns the motor on, and spins it in the specified direction. | |
| void | spin (directionType dir, double velocity, velocityUnits units) |
| Turns on the motor and spins it in a specified direction and a specified velocity. | |
| void | spin (directionType dir, double velocity, percentUnits units) |
| void | spin (directionType dir, double voltage, voltageUnits units) |
| Turns on the motor and spins it in a specified direction and a specified voltage. | |
| bool | spinTo (double rotation, rotationUnits units, double velocity, velocityUnits units_v, bool waitForCompletion=true) |
| Turns on the motor and spins it to an absolute target rotation value at a specified velocity. | |
| bool | spinToPosition (double rotation, rotationUnits units, double velocity, velocityUnits units_v, bool waitForCompletion=true) |
| bool | spinTo (double rotation, rotationUnits units, bool waitForCompletion=true) |
| Turns on the motor and spins it to an absolute target rotation value. | |
| bool | spinToPosition (double rotation, rotationUnits units, bool waitForCompletion=true) |
| bool | spinFor (double rotation, rotationUnits units, double velocity, velocityUnits units_v, bool waitForCompletion=true) |
| Turns on the motor and spins it to a relative target rotation value at a specified velocity. | |
| bool | spinFor (directionType dir, double rotation, rotationUnits units, double velocity, velocityUnits units_v, bool waitForCompletion=true) |
| bool | spinFor (double rotation, rotationUnits units, bool waitForCompletion=true) |
| Turns on the motor and spins it to a relative target rotation value. | |
| bool | spinFor (directionType dir, double rotation, rotationUnits units, bool waitForCompletion=true) |
| bool | spinFor (double time, timeUnits units, double velocity, velocityUnits units_v) |
| Turns on the motor and spins it to a relative target time value at a specified velocity. | |
| bool | spinFor (directionType dir, double time, timeUnits units, double velocity, velocityUnits units_v) |
| bool | spinFor (double time, timeUnits units) |
| Turns on the motor and spins it to a relative target time value. | |
| bool | spinFor (directionType dir, double time, timeUnits units) |
| bool | isSpinning (void) |
| Checks to see if the motor is rotating to a specific target. | |
| bool | isDone (void) |
| Checks to see if the motor is done rotating to a specific target. | |
| bool | isSpinningMode (void) |
| void | stop (void) |
| Stops the motor using the default brake mode. | |
| void | stop (brakeType mode) |
| Stops the motor using a specified brake mode. | |
| void | setMaxTorque (double value, percentUnits units) |
| Sets the max torque of the motor. | |
| void | setMaxTorque (double value, torqueUnits units) |
| Sets the max torque of the motor. | |
| void | setMaxTorque (double value, currentUnits units) |
| Sets the max torque of the motor. | |
| directionType | direction (void) |
| Gets which direction the motor is spinning. | |
| double | position (rotationUnits units) |
| Gets the current position of the motor's encoder. | |
| double | velocity (velocityUnits units) |
| Gets the current velocity of the motor. | |
| double | velocity (percentUnits units) |
| double | current (currentUnits units=currentUnits::amp) |
| Gets the electrical current of the motor. | |
| double | current (percentUnits units) |
| Gets the electrical current of the motor in percentage of maximum. | |
| double | voltage (voltageUnits units=voltageUnits::volt) |
| Gets the electrical voltage of the motor. | |
| double | power (powerUnits units=powerUnits::watt) |
| Gets the power of the motor. | |
| double | torque (torqueUnits units=torqueUnits::Nm) |
| Gets the torque of the motor. | |
| double | efficiency (percentUnits units=percentUnits::pct) |
| Gets the efficiency of the motor. | |
| double | temperature (percentUnits units=percentUnits::pct) |
| Gets the temperature of the motor. | |
| double | temperature (temperatureUnits units) |
| Gets the temperature of the motor. | |
Public Member Functions inherited from vex::device | |
| device (int32_t index) | |
| IQ_DeviceType | type () |
| int32_t | index () |
| void | init (int32_t index) |
| int32_t | readDigitalPin () |
| int32_t | readAnalogPin () |
Protected Member Functions | |
| int32_t | getTimeout () |
| double | getVelocity (velocityUnits units) |
Protected Member Functions inherited from vex::device | |
| void | setPollInterval (int32_t value) |
| bool | pollValid (bool bSave) |
Additional Inherited Members | |
Protected Attributes inherited from vex::device | |
| int16_t | _index |
Use the motor class to control motor devices.
Definition at line 34 of file vex_motor.h.
| vex::motor::motor | ( | int32_t | index | ) |
Creates a new motor object on the port specified.
| index | The port index for this motor. The index is zero-based. |
| vex::motor::motor | ( | int32_t | index, |
| bool | reverse ) |
Creates a new motor object on the port specified and sets the reversed flag.
| index | The port index for this motor. The index is zero-based. |
| reverse | Sets the reverse flag for the new motor object. |
| vex::motor::motor | ( | int32_t | index, |
| double | gearRatio ) |
Creates a new motor object on the port specified and sets the output gear ratio.
| index | The port index for this motor. The index is zero-based. |
| gearRatio | the theoretical gear ration of the motor. |
| vex::motor::motor | ( | int32_t | index, |
| double | gearRatio, | ||
| bool | reverse ) |
Creates a new motor object on the port specified and sets the output gear ratio and reverse flag.
| index | The port index for this motor. The index is zero-based. |
| gearRatio | the theoretical gear ration of the motor. |
| reverse | Sets the reverse flag for the new motor object. |
| double vex::motor::current | ( | currentUnits | units = currentUnits::amp | ) |
Gets the electrical current of the motor.
| units | The measurement unit for the current. |
| double vex::motor::current | ( | percentUnits | units | ) |
Gets the electrical current of the motor in percentage of maximum.
| units | The measurement unit for the current. |
| directionType vex::motor::direction | ( | void | ) |
Gets which direction the motor is spinning.
| double vex::motor::efficiency | ( | percentUnits | units = percentUnits::pct | ) |
Gets the efficiency of the motor.
| units | (Optional) The measurement unit for the efficiency. By default, this parameter is a percentage. |
|
virtual |
Reimplemented from vex::device.
| bool vex::motor::isDone | ( | void | ) |
Checks to see if the motor is done rotating to a specific target.
| bool vex::motor::isSpinning | ( | void | ) |
Checks to see if the motor is rotating to a specific target.
| double vex::motor::position | ( | rotationUnits | units | ) |
Gets the current position of the motor's encoder.
| units | The measurement unit for the position. |
| double vex::motor::power | ( | powerUnits | units = powerUnits::watt | ) |
Gets the power of the motor.
| units | The measurement unit for the power. |
| void vex::motor::setMaxTorque | ( | double | value, |
| currentUnits | units ) |
Sets the max torque of the motor.
| value | Sets the amount of torque. |
| units | The measurement unit for the torque value. |
| void vex::motor::setMaxTorque | ( | double | value, |
| percentUnits | units ) |
Sets the max torque of the motor.
| value | Sets the amount of torque. |
| units | The measurement unit for the torque value. |
| void vex::motor::setMaxTorque | ( | double | value, |
| torqueUnits | units ) |
Sets the max torque of the motor.
| value | Sets the amount of torque. |
| units | The measurement unit for the torque value. |
| void vex::motor::setPosition | ( | double | value, |
| rotationUnits | units ) |
Sets the value of the motor's encoder to the value specified in the parameter.
| value | Sets the current position of the motor. |
| units | The measurement unit for the position value. |
| void vex::motor::setReversed | ( | bool | value | ) |
Sets the motor mode to "reverse", which will make motor commands spin the motor in the opposite direction.
| value | If set to true, motor commands spin the motor in the opposite direction. |
| void vex::motor::setStopping | ( | brakeType | mode | ) |
Sets the stopping mode of the motor by passing a brake mode as a parameter.
| mode | The stopping mode can be set to coast, brake, or hold. |
| void vex::motor::setTimeout | ( | int32_t | time, |
| timeUnits | units ) |
Sets the timeout for the motor. If the motor does not reach its' commanded position prior to the completion of the timeout, the motor will stop.
| time | Sets the amount of time. |
| units | The measurement unit for the time value. |
|
inline |
Sets the velocity of the motor based on the parameters set in the command. This command will not run the motor. Any subsequent call that does not contain a specified motor velocity will use this value.
| velocity | Sets the amount of velocity. |
| units | The measurement unit for the velocity value. |
Definition at line 86 of file vex_motor.h.
| void vex::motor::setVelocity | ( | double | velocity, |
| velocityUnits | units ) |
Sets the velocity of the motor based on the parameters set in the command. This command will not run the motor. Any subsequent call that does not contain a specified motor velocity will use this value.
| velocity | Sets the amount of velocity. |
| units | The measurement unit for the velocity value. |
| void vex::motor::spin | ( | directionType | dir | ) |
Turns the motor on, and spins it in the specified direction.
| dir | The direction to spin the motor. |
|
inline |
Definition at line 134 of file vex_motor.h.
| void vex::motor::spin | ( | directionType | dir, |
| double | velocity, | ||
| velocityUnits | units ) |
Turns on the motor and spins it in a specified direction and a specified velocity.
| dir | The direction to spin the motor. |
| velocity | Sets the amount of velocity. |
| units | The measurement unit for the velocity value. |
| void vex::motor::spin | ( | directionType | dir, |
| double | voltage, | ||
| voltageUnits | units ) |
Turns on the motor and spins it in a specified direction and a specified voltage.
| dir | The direction to spin the motor. |
| voltage | Sets the amount of volts. |
| units | The measurement unit for the voltage value. |
| bool vex::motor::spinFor | ( | double | rotation, |
| rotationUnits | units, | ||
| bool | waitForCompletion = true ) |
Turns on the motor and spins it to a relative target rotation value.
| rotation | Sets the amount of rotation. |
| units | The measurement unit for the rotation value. |
| waitForCompletion | (Optional) If true, your program will wait until the motor reaches the target rotational value. If false, the program will continue after calling this function. By default, this parameter is true. |
| bool vex::motor::spinFor | ( | double | rotation, |
| rotationUnits | units, | ||
| double | velocity, | ||
| velocityUnits | units_v, | ||
| bool | waitForCompletion = true ) |
Turns on the motor and spins it to a relative target rotation value at a specified velocity.
| rotation | Sets the amount of rotation. |
| units | The measurement unit for the rotation value. |
| velocity | Sets the amount of velocity. |
| units_v | The measurement unit for the velocity value. |
| waitForCompletion | (Optional) If true, your program will wait until the motor reaches the target rotational value. If false, the program will continue after calling this function. By default, this parameter is true. |
| bool vex::motor::spinFor | ( | double | time, |
| timeUnits | units ) |
Turns on the motor and spins it to a relative target time value.
| time | Sets the amount of time. |
| units | The measurement unit for the time value. |
| bool vex::motor::spinFor | ( | double | time, |
| timeUnits | units, | ||
| double | velocity, | ||
| velocityUnits | units_v ) |
Turns on the motor and spins it to a relative target time value at a specified velocity.
| time | Sets the amount of time. |
| units | The measurement unit for the time value. |
| velocity | Sets the amount of velocity. |
| units_v | The measurement unit for the velocity value. |
| bool vex::motor::spinTo | ( | double | rotation, |
| rotationUnits | units, | ||
| bool | waitForCompletion = true ) |
Turns on the motor and spins it to an absolute target rotation value.
| rotation | Sets the amount of rotation. |
| units | The measurement unit for the rotation value. |
| waitForCompletion | (Optional) If true, your program will wait until the motor reaches the target rotational value. If false, the program will continue after calling this function. By default, this parameter is true. |
| bool vex::motor::spinTo | ( | double | rotation, |
| rotationUnits | units, | ||
| double | velocity, | ||
| velocityUnits | units_v, | ||
| bool | waitForCompletion = true ) |
Turns on the motor and spins it to an absolute target rotation value at a specified velocity.
| rotation | Sets the amount of rotation. |
| units | The measurement unit for the rotation value. |
| velocity | Sets the amount of velocity. |
| units_v | The measurement unit for the velocity value. |
| waitForCompletion | (Optional) If true, your program will wait until the motor reaches the target rotational value. If false, the program will continue after calling this function. By default, this parameter is true. |
| void vex::motor::stop | ( | brakeType | mode | ) |
Stops the motor using a specified brake mode.
| mode | The brake mode can be set to coast, brake, or hold. |
| double vex::motor::temperature | ( | percentUnits | units = percentUnits::pct | ) |
Gets the temperature of the motor.
| units | The measurement unit for the temperature. |
| double vex::motor::temperature | ( | temperatureUnits | units | ) |
Gets the temperature of the motor.
| units | The measurement unit for the temperature. |
| double vex::motor::torque | ( | torqueUnits | units = torqueUnits::Nm | ) |
Gets the torque of the motor.
| units | The measurement unit for the torque. |
|
virtual |
Reimplemented from vex::device.
|
inline |
Definition at line 284 of file vex_motor.h.
| double vex::motor::velocity | ( | velocityUnits | units | ) |
Gets the current velocity of the motor.
| units | The measurement unit for the velocity. |
| double vex::motor::voltage | ( | voltageUnits | units = voltageUnits::volt | ) |
Gets the electrical voltage of the motor.
| units | The measurement unit for the voltage. |