Open stonier opened 10 years ago
Some discussion of this issue at https://github.com/yujinrobot/yujin_ocs/issues/33.
Zero'ing is certainly probably one cause of problems here if the navigation engine modifies it's command rate, however a more likely problem is the rotate in place velocities aren't big enough. Waiterbot can't really do anything less than 0.2 rad/s reliably.
Note also - dwa planner doesn't seem to have a min_in_place_vel_theta
parameter like the TrajectoryPlanner does.
This particular line is the magic for dwa.
if ((limits_->min_trans_vel >= 0 && vmag + eps < limits_->min_trans_vel) &&
(limits_->min_rot_vel >= 0 && fabs(sample_target_vel[2]) + eps < limits_->min_rot_vel)) {
return false;
}
A min_trans_vel
of zero automatically passes this check and allows trajectories of negligible rotational velocity.
By the velocity smoother?
Note - the navigation is pumping out small rotational velocities. Either
End result is, when the robot is faced with a wall of obstacles in front and the goal is behind and no local path planning possible, it should start rotating till it can generate local paths. It doesn't.