Open aswinthomas opened 10 years ago
I tried solving this problem earlier by trying to repair the band. I never tried what you've suggested. Can you report back on whether it works or not? Have you tested this on a robot?
On Jun 9, 2014 2:40 AM, "aswinthomas" notifications@github.com wrote:
Hi, The planner often makes move_base abort since the robot footprint is in an obstacle at some point in the global plan. I understand that work needs to be done in convertPlanToBand to repair the band. But in the meantime, would it be best if we break out of the loop as long as there is some part of the band that can be achieved by the robot? This also allows the robot to wait for dynamic obstacles to pass and then continue, rather than aborting.
For example, rather than returning false on distance<=0.0, we could use: if(band.size()) break; else return false;
— Reply to this email directly or view it on GitHub.
Hi Piyush, Here is a video which shows that eband can reach the goal despite a new obstacle in path. Without the patch above, it aborts move_base. https://dl.dropboxusercontent.com/u/8948006/ebandSucess.ogv
However sometimes it does not reach the goal as in the case below. Is it because the goal is close? My rotation_correction_threshold = 1.0. But the goal seems to be 2.5m away. https://dl.dropboxusercontent.com/u/8948006/ebandFailedToReachGoal.ogv
Hi, The planner often makes move_base abort since the robot footprint is in an obstacle at some point in the global plan. I understand that work needs to be done in convertPlanToBand to repair the band. But in the meantime, would it be best if we break out of the loop as long as there is some part of the band that can be achieved by the robot? This also allows the robot to wait for dynamic obstacles to pass and then continue, rather than aborting.
For example, rather than returning false on distance<=0.0, we could use: if(band.size()) break; else return false;