abstract class Drive
Abstraction for generic robot drive motion and localization. Robot poses are specified in a coordinate system with positive x pointing forward, positive y pointing left, and positive heading measured counter-clockwise from the x-axis.
Drive()
Abstraction for generic robot drive motion and localization. Robot poses are specified in a coordinate system with positive x pointing forward, positive y pointing left, and positive heading measured counter-clockwise from the x-axis. |
var externalHeading: Double
The robot's heading in radians as measured by an external sensor (e.g., IMU, gyroscope). |
|
abstract var localizer: Localizer
Localizer used to determine the evolution of poseEstimate. |
|
var poseEstimate: Pose2d
The robot's current pose estimate. |
|
abstract val rawExternalHeading: Double
The raw heading used for computing externalHeading. Not affected by externalHeading setter. |
abstract fun setDrivePower(drivePower: Pose2d): Unit
Sets the current commanded drive state of the robot. Feedforward is not applied to drivePower. |
|
abstract fun setDriveSignal(driveSignal: DriveSignal): Unit
Sets the current commanded drive state of the robot. Feedforward is applied to driveSignal before it reaches the motors. |
|
fun updatePoseEstimate(): Unit
Updates poseEstimate with the most recent positional change. |
abstract class MecanumDrive : Drive
This class provides the basic functionality of a mecanum drive using MecanumKinematics. |
|
abstract class SwerveDrive : Drive
This class provides the basic functionality of a swerve drive using SwerveKinematics. |
|
abstract class TankDrive : Drive
This class provides the basic functionality of a tank/differential drive using TankKinematics. |