This class defines a common interface for classes which control velocity and position of a motor controlled by a JMotorDriver.
More...
|
virtual bool | setPosTarget (float _posTarget, bool _run=true)=0 |
| set target position (motor drives towards position, following acceleration profile)
|
|
virtual bool | setPosSetpoint (float _posSetpoint, bool _run=true)=0 |
| set position for motor to drive towards position as fast as possible (setpoint for control loop if available)
|
|
virtual bool | setPosDelta (float _posDelta, bool _run=true, bool _resetPos=false)=0 |
| alternative method for setting velocity that uses setPosSetpoint
|
|
virtual float | getPosTarget ()=0 |
| get position set as target (for smoothed position setting mode)
|
|
virtual float | getPosSetpoint ()=0 |
| get position controller is currently trying to get to
|
|
virtual float | getPos ()=0 |
| get what position the motor is currently at
|
|
virtual float | resetPos ()=0 |
| reset what position the controller thinks it's in
|
|
virtual void | setVelLimit (float _velLimit)=0 |
| set maximum motor speed
|
|
virtual bool | isPosModeNotVelocity ()=0 |
| true if controller is in position target mode, false if in velocity mode
|
|
virtual void | setAccelLimit (float _accelLimit)=0 |
| set maximum rate that motor speed can be changed at
|
|
virtual void | setVel (float vel, bool _run=true)=0 |
| set velocity for controller
|
|
virtual void | setVelTarget (float vel, bool _run=true)=0 |
| set target velocity for controller (acceleration limited)
|
|
virtual float | getVelTarget ()=0 |
| get target velocity for controller
|
|
virtual float | getVel ()=0 |
| get current velocity of motor
|
|
virtual float | getDriverSetVal ()=0 |
| returns the value the motor driver is being set to
|
|
virtual void | run ()=0 |
| update driver
|
|
virtual bool | setEnable (bool _enable)=0 |
| change whether motor controller is enabled
|
|
virtual bool | isDriverInRange ()=0 |
| true if motor driver is being set to within its range, false if driver is at a maximum
|
|
virtual bool | enable ()=0 |
| enable motor controller
|
|
virtual bool | disable ()=0 |
| disable motor controller
|
|
virtual float | getDriverMinRange ()=0 |
| if getDriverSetVal goes below this, isDriverInRange will go false
|
|
virtual float | getDriverMaxRange ()=0 |
| if getDriverSetVal exceeds this, isDriverInRange will go false
|
|
virtual bool | getEnable ()=0 |
| is the controller enabled
|
|
virtual float | getMaxVel ()=0 |
| How fast of a motor speed setting would get adjusted to full motor power.
|
|
virtual float | getMinVel ()=0 |
| slowest speed motor can go
|
|
virtual void | setMaxDriverRangeAmount (float _driverRangeAmount)=0 |
| set what fraction of driverRange can be used
|
|
virtual float | getAccelLimit ()=0 |
| returns value of accelLimit
|
|
virtual float | getVelLimit ()=0 |
| returns value of velLimit
|
|
This class defines a common interface for classes which control velocity and position of a motor controlled by a JMotorDriver.