Only released in EOL distros:
This stack contains a set of filters to work with joint trajectories. It also contains a trajectory filter server which is a ROS node that exposes a ROS service interface to a chain of filters.
- Author: Maintained by Sachin Chitta
- License: BSD
- Source: svn https://code.ros.org/svn/wg-ros-pkg/stacks/trajectory_filters/trunk
The trajectory filters stack contains a bunch of packages that help with trajectory smoothing. All these packages currently act on polynomial splines. The packages included in this stack are:
spline_smoother - A library that implements a filter chain in addition to a bunch of spline smoothers. It includes methods that can take input in the form of a trajectory_msgs/JointTrajectory message and returns a parameterized spline that can be used for further sampling. The methods in this package can be used to impose joint velocity and acceleration limits.
constraint_aware_spline_smoother - This package is built on top of the spline_smoother package and allows you to create collision free splines that follow a given input trajectory. It can also handle path constraints of the same form that both move_arm and the motion_planner take in the form of a motion_planning_msgs/Constraints message.
trajectory_filter_server - A ROS node interface to the spline_smoother library. This spawns a node that implements a service that takes a JointTrajectory as input and outputs a filtered joint trajectory.
joint_normalization_filters - This set of filters deal with continuous joints and either wrap or unwrap them to the correct values.
For more information, look at the documentation for each individual package.
To see how to use the ROS API to call the trajectory filter node, check out this set of tutorials.