ElevatorFeedforward
- class wpimath.controller.ElevatorFeedforward(kS: wpimath.units.volts, kG: wpimath.units.volts, kV: wpimath.units.volt_seconds_per_meter, kA: wpimath.units.volt_seconds_squared_per_meter = 0.0)
Bases:
pybind11_object
A helper class that computes feedforward outputs for a simple elevator (modeled as a motor acting against the force of gravity).
Creates a new ElevatorFeedforward with the specified gains.
- Parameters:
kS – The static gain, in volts.
kG – The gravity gain, in volts.
kV – The velocity gain, in volt seconds per distance.
kA – The acceleration gain, in volt seconds² per distance.
- WPIStruct = <capsule object "WPyStruct">
- calculate(*args, **kwargs)
Overloaded function.
calculate(self: wpimath._controls._controls.controller.ElevatorFeedforward, velocity: wpimath.units.meters_per_second, acceleration: wpimath.units.meters_per_second_squared = 0.0) -> wpimath.units.volts
Calculates the feedforward from the gains and setpoints.
- Parameters:
velocity – The velocity setpoint, in distance per second.
acceleration – The acceleration setpoint, in distance per second².
- Returns:
The computed feedforward, in volts.
calculate(self: wpimath._controls._controls.controller.ElevatorFeedforward, currentVelocity: wpimath.units.meters_per_second, nextVelocity: wpimath.units.meters_per_second, dt: wpimath.units.seconds) -> wpimath.units.volts
Calculates the feedforward from the gains and setpoints.
- Parameters:
currentVelocity – The current velocity setpoint, in distance per second.
nextVelocity – The next velocity setpoint, in distance per second.
dt – Time between velocity setpoints in seconds.
- Returns:
The computed feedforward, in volts.
- property kA wpimath.units.volt_seconds_squared_per_meter
The acceleration gain.
- property kG wpimath.units.volts
The gravity gain.
- property kS wpimath.units.volts
The static gain.
- property kV wpimath.units.volt_seconds_per_meter
The velocity gain.
- maxAchievableAcceleration(maxVoltage: wpimath.units.volts, velocity: wpimath.units.meters_per_second) wpimath.units.meters_per_second_squared
Calculates the maximum achievable acceleration given a maximum voltage supply and a velocity. Useful for ensuring that velocity and acceleration constraints for a trapezoidal profile are simultaneously achievable - enter the velocity constraint, and this will give you a simultaneously-achievable acceleration constraint.
- Parameters:
maxVoltage – The maximum voltage that can be supplied to the elevator.
velocity – The velocity of the elevator.
- Returns:
The maximum possible acceleration at the given velocity.
- maxAchievableVelocity(maxVoltage: wpimath.units.volts, acceleration: wpimath.units.meters_per_second_squared) wpimath.units.meters_per_second
Calculates the maximum achievable velocity given a maximum voltage supply and an acceleration. Useful for ensuring that velocity and acceleration constraints for a trapezoidal profile are simultaneously achievable - enter the acceleration constraint, and this will give you a simultaneously-achievable velocity constraint.
- Parameters:
maxVoltage – The maximum voltage that can be supplied to the elevator.
acceleration – The acceleration of the elevator.
- Returns:
The maximum possible velocity at the given acceleration.
- minAchievableAcceleration(maxVoltage: wpimath.units.volts, velocity: wpimath.units.meters_per_second) wpimath.units.meters_per_second_squared
Calculates the minimum achievable acceleration given a maximum voltage supply and a velocity. Useful for ensuring that velocity and acceleration constraints for a trapezoidal profile are simultaneously achievable - enter the velocity constraint, and this will give you a simultaneously-achievable acceleration constraint.
- Parameters:
maxVoltage – The maximum voltage that can be supplied to the elevator.
velocity – The velocity of the elevator.
- Returns:
The minimum possible acceleration at the given velocity.
- minAchievableVelocity(maxVoltage: wpimath.units.volts, acceleration: wpimath.units.meters_per_second_squared) wpimath.units.meters_per_second
Calculates the minimum achievable velocity given a maximum voltage supply and an acceleration. Useful for ensuring that velocity and acceleration constraints for a trapezoidal profile are simultaneously achievable - enter the acceleration constraint, and this will give you a simultaneously-achievable velocity constraint.
- Parameters:
maxVoltage – The maximum voltage that can be supplied to the elevator.
acceleration – The acceleration of the elevator.
- Returns:
The minimum possible velocity at the given acceleration.