Package com.ctre.phoenix.motion
Class TrajectoryPoint
java.lang.Object
com.ctre.phoenix.motion.TrajectoryPoint
public class TrajectoryPoint extends Object
Motion Profile Trajectory Point This is simply a data transfer object.
-
Field Summary
Fields Modifier and Type Field Description double
arbFeedFwd
Added to the output of PID[0], should be within [-1,+1] where 0.01 = 1%.double
auxiliaryArbFeedFwd
Added to the output of PID[1], should be within [-1,+1] where 0.01 = 1%.double
auxiliaryPos
The position for auxiliary PID[1] to target (in sensor units).double
auxiliaryVel
The velocity for auxiliary PID[1] to target.double
headingDeg
Not used.boolean
isLastPoint
Set to true to signal Talon that this is the final point, so do not attempt to pop another trajectory point from out of the Talon buffer.double
position
The position to servo to (in sensor units).int
profileSlotSelect0
Which slot to get PIDF gains.int
profileSlotSelect1
Which slot to get PIDF gains for auxiliary PId.int
timeDur
Duration (ms) to apply this trajectory pt.boolean
useAuxPID
If using MotionProfileArc, this flag must be true on all points.double
velocity
The velocity to feed-forward (in sensor-units per 100ms).boolean
zeroPos
Set to true to signal Talon to zero the selected sensor. -
Constructor Summary
Constructors Constructor Description TrajectoryPoint()
-
Method Summary
-
Field Details
-
position
The position to servo to (in sensor units). -
velocity
The velocity to feed-forward (in sensor-units per 100ms). -
arbFeedFwd
Added to the output of PID[0], should be within [-1,+1] where 0.01 = 1%. -
headingDeg
Not used. Use auxiliaryPos instead. @see auxiliaryPos -
auxiliaryPos
The position for auxiliary PID[1] to target (in sensor units). -
auxiliaryVel
The velocity for auxiliary PID[1] to target. (in sensor-units per 100ms). -
auxiliaryArbFeedFwd
Added to the output of PID[1], should be within [-1,+1] where 0.01 = 1%. -
profileSlotSelect0
Which slot to get PIDF gains. PID is used for position servo. F is used as the Kv constant for velocity feed-forward. Typically this is hard-coded to a particular slot, but you are free to gain schedule if need be. Choose from [0,3] -
profileSlotSelect1
Which slot to get PIDF gains for auxiliary PId. This only has impact during MotionProfileArc Control mode. Choose from [0,3]. -
isLastPoint
Set to true to signal Talon that this is the final point, so do not attempt to pop another trajectory point from out of the Talon buffer. Instead continue processing this way point. Typically the velocity member variable should be zero so that the motor doesn't spin indefinitely. -
zeroPos
Set to true to signal Talon to zero the selected sensor. When generating MPs, one simple method is to make the first target position zero, and the final target position the target distance from the current position. Then when you fire the MP, the current position gets set to zero. If this is the intent, you can set zeroPos on the first trajectory point. Otherwise you can leave this false for all points, and offset the positions of all trajectory points so they are correct. If using multiple sensor sources (Arc modes) we recommend you manually set sensor positions before arming MP, instead of using this feature. -
timeDur
Duration (ms) to apply this trajectory pt. This time unit is ADDED to the existing base time set by ConfigMotionProfileTrajectoryPeriod(). -
useAuxPID
If using MotionProfileArc, this flag must be true on all points. If using MotionProfile, this flag must be false on all points.
-
-
Constructor Details
-
TrajectoryPoint
public TrajectoryPoint()
-