-
Notifications
You must be signed in to change notification settings - Fork 10
Acceleration FeedForward
Freyja supports feed-forward accelerations from the trajectory (in world/Cartesian space) in order to improve tracking. This is applicable only to trajectories that are continuous up to (at least) 2nd order, i.e., the velocity curve has no corners.
Note that feed-forward is useful for "pre-shaping" the controller's response to a trajectory, and is different from applying acceleration constraints. The resultant behaviour can be unexpected if not handled correctly, and thus this feature should be used carefully (= test/simulate first!).
-
Controller parameter(s):
enable_flatness_ff
: bool
true
enables the controller to accept acceleration feedfoward data from a trajectory.
false
makes the controller reject acceleration data even if provided by user. -
Topic:
/reference_state
:freyja_msgs/ReferenceState
The elementsan, ae, ad
correspond to acceleration feed-forward from the differentially flat output space of a 3D trajectory. These must be the 2nd derivatives of the position elements in the reference. These are zero by default (ROS constructor).Providing acceleration in your trajectory is not sufficient to enable this feature. See the parameter in (1) above.
The 2nd derivative must be "in sync" with the position and velocity references.
(c) aj, Nimbus Lab, 2020