Class EdgeKinematicsDiffDrive
Defined in File edge_kinematics.h
Inheritance Relationships
Base Type
public hateb_local_planner::BaseTebBinaryEdge< 2, double, VertexPose, VertexPose >(Template Class BaseTebBinaryEdge)
Class Documentation
-
class EdgeKinematicsDiffDrive : public hateb_local_planner::BaseTebBinaryEdge<2, double, VertexPose, VertexPose>
Edge defining the cost function for satisfying the non-holonomic kinematics of a differential drive mobile robot.
The edge depends on two vertices \( \mathbf{s}_i, \mathbf{s}_{ip1} \) and minimizes a geometric interpretation of the non-holonomic constraint:
C. Rösmann et al.: Trajectory modification considering dynamic constraints of autonomous robots, ROBOTIK, 2012.
The weight
can be set using setInformation(): Matrix element 1,1: (Choose a very high value: ~1000).
A second equation is implemented to penalize backward motions (second element of the error /cost vector).
The weightcan be set using setInformation(): Matrix element 2,2: (A value ~1 allows backward driving, but penalizes it slighly).
The dimension of the error / cost vector is 2: the first component represents the nonholonomic constraint cost, the second one backward-drive cost.
See also
TebOptimalPlanner::AddEdgesKinematics, EdgeKinematicsCarlike
Remark
Do not forget to call setHATebConfig()