A PROS library for programming VEX robots.
ChassisControllerFactory
replaced with ChassisControllerBuilder
(#279).AsyncControllerFactory
replaced with AsyncMotionProfileControllerBuilder
, AsyncPosControllerBuilder
, and AsyncVelControllerBuilder
(#281).AsyncMotionProfileController
can follow paths backwards without mirroring them (#290).ChassisControllerPID
voltage mode (#338).ChassisControllerPID::setGains
and ChassisControllerPID::getGains
to update gains at runtime (#346).10
milliseconds (#362).AbstractMotor::getPositionError
and AbstractMotor::getVelocityError
(#364).Motor
reversing in the motor (without vexOS calls).ChassisController::isSettled
(#386).moveDistance
and turnAngle
overloads to moveRaw
and turnRaw
to avoid confusion (#395).IterativeVelPIDController::controllerSet
(#291).Motor
instances overriding the gearset passed to a ChassisController
(#296).IterativePosPIDController
derivative term (#298).ThreeEncoderSkidSteerModel
(#306).ChassisControllerPID
using the same Rate
instance in multiple places (#332).IterativePosPIDController::setGains
(#333).buttonArray
(#357).AsyncMotionProfileController
or AsyncLinearMotionProfileController
path while it was running (#360).AsyncMotionProfileController
and AsyncLinearMotionProfileController
destructors (#377).Vision
export (#405).Thanks to @theol0403, @juliaschatz, @vexcat, @acetousk, @aDotInTheVoid for their contributions to this release.
+-1000
and skips a cycle if they are notClosedLoopController::getProcessValue()
ChassisModel
and Odometry
ChassisScales
Odometry
not getting enough members in the tick diff data structureOdometry
task to start running in DefaultOdomChassisController
AbstractRate::delay(int)
. Use delayUntil
instead.ChassisControllerBuilder
sometimes computing TPR incorrectlyOdometry
movements when using ADI encoders and ChassisControllerIntegrated
moveDistance(double)
to moveRaw(double)
, etc. to make the double
vs. unitful method distinctions clearerThreeEncoderOdometry
uses the middleWheelDistance
correctly now (if you had to double it, then change it back to the real measurement)ChassisControllerBuilder
got a withClosedLoopControllerTimeUtil
method to simplify using custom SettledUtil
parametersparentedToCurrentTask
/notParentedToCurrentTask
methods to control whether they will register a deletion notification from the current task to the internal task(s)ConfigurableTimeUtilFactory