Class GyroSwerveTracker
java.lang.Object
me.wobblyyyy.pathfinder.tracking.swerve.SwerveChassisTracker
me.wobblyyyy.pathfinder.tracking.swerve.GyroSwerveTracker
public class GyroSwerveTracker extends SwerveChassisTracker
A combination of a gyroscopic tracker and a swerve chassis tracker!
In order to actually use the gyroscope, you need to pass it as a parameter to one of the two constructors for this class. It doesn't matter how the gyroscope is initialized - so long as it gets a (fairly accurate) heading for the robot, it should be all good.
- Since:
- 0.1.0
- Author:
- Colin Robertson
-
Field Summary
Fields inherited from class me.wobblyyyy.pathfinder.tracking.swerve.SwerveChassisTracker
gapX, gapY, wheelDiameter
-
Constructor Summary
Constructors Constructor Description GyroSwerveTracker(Encoder frTurn, Encoder frDrive, Encoder flTurn, Encoder flDrive, Encoder brTurn, Encoder brDrive, Encoder blTurn, Encoder blDrive, double wheelDiameter, double gapX, double gapY, Gyroscope gyroscope)
Create a new gyroscope-enabled swerve chassis tracker.GyroSwerveTracker(SwerveModuleTracker fr, SwerveModuleTracker fl, SwerveModuleTracker br, SwerveModuleTracker bl, Gyroscope gyroscope)
Create a new gyroscope-enabled swerve chassis tracker. -
Method Summary
Modifier and Type Method Description HeadingPoint
getPos()
Get the position of the chassis.Methods inherited from class me.wobblyyyy.pathfinder.tracking.swerve.SwerveChassisTracker
getBlPos, getBrPos, getFlPos, getFrPos, update
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Field Details
-
gyroscope
-
-
Constructor Details
-
GyroSwerveTracker
public GyroSwerveTracker(Encoder frTurn, Encoder frDrive, Encoder flTurn, Encoder flDrive, Encoder brTurn, Encoder brDrive, Encoder blTurn, Encoder blDrive, double wheelDiameter, double gapX, double gapY, Gyroscope gyroscope)Create a new gyroscope-enabled swerve chassis tracker.- Parameters:
frTurn
- FR turn encoderfrDrive
- FR drive encoderflTurn
- FL turn encoderflDrive
- FL drive encoderbrTurn
- BR turn encoderbrDrive
- BR drive encoderblTurn
- BL turn encoderblDrive
- BL drive encoderwheelDiameter
- see:SwerveChassisTracker.wheelDiameter
gapX
- see:SwerveChassisTracker.gapX
gapY
- see:SwerveChassisTracker.gapY
gyroscope
- the gyroscope interface used for updating the angle/heading of the swerve tracker.
-
GyroSwerveTracker
public GyroSwerveTracker(SwerveModuleTracker fr, SwerveModuleTracker fl, SwerveModuleTracker br, SwerveModuleTracker bl, Gyroscope gyroscope)Create a new gyroscope-enabled swerve chassis tracker.- Parameters:
fr
- front-right tracker.fl
- front-left tracker.br
- back-right tracker.bl
- back-left tracker.gyroscope
- the gyroscope interface used for updating the angle/heading of the swerve tracker.
-
-
Method Details
-
getPos
Get the position of the chassis.The heading component of this HeadingPoint is determined exclusively based on the gyroscope's reported angle. If this angle is at all off, so will this heading.
- Specified by:
getPos
in interfaceOdometry
- Overrides:
getPos
in classSwerveChassisTracker
- Returns:
- the chassis's position and heading.
- See Also:
SwerveChassisTracker.getHeadlessPoint()
-