Hi,
I am using the navigation stack on ros kinetic (Ubuntu 16.04) and wanted to create regions of lower preference for the robot.
Basically what I am looking for, is having a path/zone, that remains accessible to the bot(holonomic), but is only chosen as a last resort for navigation...something like a very high cost path, that would only be better than a 'no path' scenario.
I have tried biasing the costs of the cells in the static costmap of this zone to different values (cost<=251) or (cost = 252).
When cost<=251 is set, the navigation stack returns returns a path around this 'zone' only if the path through is of comparable length. However, if the path around is way longer than the path through this zone, it still picks the through path. I understand that the cost through still turns out lower than along the much longer route.
When I set 252, in no case does it plan through the zone and shows failure if for example the goal lies within this zone.
Hence, neither of these cases meet my requirement of 'last resort path'.
Alternatively, I could mark these zones as 'prohibited zones' (cost > 251) and switch them off in a recovery behaviour (and toggle back on once planned through..). However, I was wondering if anyone could guide me to something less 'hacky' in this regard.
P.S.: Please let me know in case I am missing crucial specifics on the question.
↧