CoreTalonFXSetControl(MotionMagicVoltage) Method
Requests Motion Magic® to target a final position using a motion
profile. Users can optionally provide a voltage feedforward.
Motion Magic® produces a motion profile in real-time while
attempting to honor the Cruise Velocity, Acceleration, and Jerk
value specified via the Motion Magic® configuration values.
Target position can be changed on-the-fly and Motion Magic® will
do its best to adjust the profile. This control mode is
voltage-based, so relevant closed-loop gains will use Volts for
the numerator.
MotionMagicVoltage Parameters
- Position – Position to drive toward in
rotations.
- EnableFOC – Set to true to use FOC commutation
(requires Phoenix Pro), which
increases peak power by ~15%. Set to
false to use trapezoidal commutation.
FOC improves motor performance by
leveraging torque (current) control.
However, this may be inconvenient for
applications that require specifying
duty cycle or voltage.
CTR-Electronics has developed a hybrid
method that combines the performances
gains of FOC while still allowing
applications to provide duty cycle or
voltage demand. This not to be
confused with simple sinusoidal
control or phase voltage control which
lacks the performance
gains.
- FeedForward – Feedforward to apply in
volts
- Slot – Select which gains are applied by selecting
the slot. Use the configuration api to set
the gain values for the selected slot
before enabling this feature. Slot must be
within [0,2].
- OverrideBrakeDurNeutral – Set to true to
static-brake the rotor
when output is zero (or
within deadband). Set
to false to use the
NeutralMode
configuration setting
(default). This flag
exists to provide the
fundamental behavior of
this control when output
is zero, which is to
provide 0V to the
motor.
Namespace: CTRE.Phoenix6.Hardware.CoreAssembly: Phoenix6 (in Phoenix6.dll) Version: 1.0.0
public StatusCode SetControl(
MotionMagicVoltage request
)
member SetControl :
request : MotionMagicVoltage -> StatusCode
- request MotionMagicVoltage
- Control object to request of the device
StatusCodeCode response of the request