This is a parametric smoother that modifies the timestamps of a trajectory to respect velocity and acceleration constraints. More...
#include <iterative_smoother.h>

Public Member Functions | |
| virtual bool | configure () |
| Configures the filter. | |
| IterativeParabolicSmoother () | |
| virtual bool | smooth (const T &trajectory_in, T &trajectory_out) const |
| Calculates a smooth trajectory by iteratively incrementing the time between points that exceed the velocity or acceleration bounds. | |
| ~IterativeParabolicSmoother () | |
Private Member Functions | |
| void | applyAccelerationConstraints (const T &trajectory, std::vector< double > &time_diff) const |
| void | applyVelocityConstraints (T &trajectory, std::vector< double > &time_diff) const |
| maximum allowed time change per iteration in seconds | |
| double | findT1 (const double d1, const double d2, double t1, const double t2, const double a_max) const |
| double | findT2 (const double d1, const double d2, const double t1, double t2, const double a_max) const |
| void | printPoint (const trajectory_msgs::JointTrajectoryPoint &point, unsigned int i) const |
| void | printStats (const T &trajectory) const |
Private Attributes | |
| int | max_iterations_ |
| double | max_time_change_per_it_ |
| maximum number of iterations to find solution | |
This is a parametric smoother that modifies the timestamps of a trajectory to respect velocity and acceleration constraints.
Definition at line 49 of file iterative_smoother.h.
| IterativeParabolicSmoother::IterativeParabolicSmoother | ( | ) |
Definition at line 49 of file iterative_smoother.cpp.
| IterativeParabolicSmoother::~IterativeParabolicSmoother | ( | ) |
Definition at line 55 of file iterative_smoother.cpp.
| void IterativeParabolicSmoother::applyAccelerationConstraints | ( | const T & | trajectory, |
| std::vector< double > & | time_diff | ||
| ) | const [private] |
Definition at line 298 of file iterative_smoother.cpp.
| void IterativeParabolicSmoother::applyVelocityConstraints | ( | T & | trajectory, |
| std::vector< double > & | time_diff | ||
| ) | const [private] |
maximum allowed time change per iteration in seconds
Definition at line 124 of file iterative_smoother.cpp.
| bool IterativeParabolicSmoother::configure | ( | void | ) | [virtual] |
Configures the filter.
Reimplemented from spline_smoother::SplineSmoother< T >.
Definition at line 59 of file iterative_smoother.cpp.
| double IterativeParabolicSmoother::findT1 | ( | const double | d1, |
| const double | d2, | ||
| double | t1, | ||
| const double | t2, | ||
| const double | a_max | ||
| ) | const [private] |
Definition at line 173 of file iterative_smoother.cpp.
| double IterativeParabolicSmoother::findT2 | ( | const double | d1, |
| const double | d2, | ||
| const double | t1, | ||
| double | t2, | ||
| const double | a_max | ||
| ) | const [private] |
Definition at line 192 of file iterative_smoother.cpp.
| void IterativeParabolicSmoother::printPoint | ( | const trajectory_msgs::JointTrajectoryPoint & | point, |
| unsigned int | i | ||
| ) | const [private] |
Definition at line 79 of file iterative_smoother.cpp.
| void IterativeParabolicSmoother::printStats | ( | const T & | trajectory | ) | const [private] |
Definition at line 100 of file iterative_smoother.cpp.
| bool IterativeParabolicSmoother::smooth | ( | const T & | trajectory_in, |
| T & | trajectory_out | ||
| ) | const [virtual] |
Calculates a smooth trajectory by iteratively incrementing the time between points that exceed the velocity or acceleration bounds.
Implements spline_smoother::SplineSmoother< T >.
Definition at line 403 of file iterative_smoother.cpp.
int constraint_aware_spline_smoother::IterativeParabolicSmoother< T >::max_iterations_ [private] |
Definition at line 63 of file iterative_smoother.h.
double constraint_aware_spline_smoother::IterativeParabolicSmoother< T >::max_time_change_per_it_ [private] |
maximum number of iterations to find solution
Definition at line 64 of file iterative_smoother.h.