yujin_ocs
yujin_ocs copied to clipboard
Redesign yocs_waypoints_navi
Instead of standalone package which parses waypoints from yaml and request move_base to navigate around, redesign it to utilise yocs_waypoint_manager to parse waypoints from yaml, and only controls move_base.
Just started reading about those two packages as well and find the naming confusing. The current manager doesn't seem to do much managing - just storage and visualisation.
Also, the feature of storing of waypoints seems to be duplicated in both the manager and navigator.
Questions:
- Could we merge both?
- Rename
yocs_waypoint_manager
toyocs_waypoint_visualizer
? - other idea?
After discussing this matter and the broader picture with @jihoonl, we decided to move forward with the following.
- rename
yocs_waypoint_manager
toyocs_waypoint_provider
- move RViz and yaml waypoint input from
yocs_waypoints_navi
toyocs_waypoint_provider
- create a Trajectory message in
yocs_msgs
, which consits of a name and a list of waypoints - Make
yocs_waypoints_navi
listen to waypoint and trajectory messages
And later as part of a bigger re-design effort of the navigation-related yocs tools, we will think about merging yocs_waypoints_navi
and yocs_navigator
developed for the waiterbot.
@jihoonl and I sat down to discuss the next step in this redesign. Here are the TODOs:
- [ ] Merge
yocs_waypoint_navi
intoyocs_navigator
- [ ] Connect
yocs_waypoint_provider
with the navigator, therefore replacingyocs_msgs/Table
input withTrajectories
andWaypoints
input - [ ] Add
yocs_msgs/Approach
to allow specifying how a specific waypoint should be approached - [ ] In
yocs_msgs/NavigateTo.action
replacecommand
withapproach
array allowing to specifyDEFAULT
,ON
,NEAR
,FAR
approach setting either for each waypoint (# approaches = # waypoints) or for one setting for all (# approaches == 1) - [ ] Allow storage of waypoints, trajectories, approaches in the world canvas, then drop
yocs_waypoint_provider
(long-term goal)
Jihoon, did I forget anything?
I DOWNLOAD the package(yocs_waypoints_navi),but i don't know how to use it . could u help me solve the problem?
We don't actually use/support this package any longer as we have since moved to another solution. Consider it deprecated, but feel free to pick it up and use it yourself.
Hi, can i ask to which solution you've moved ? I tried to run navi node and provider with move_base but the first goal is never published in the move_base/goal topic ...
We've been using behaviour trees for quite some time. They're far more flexible and let you stitch complicated chains of behaviour together to do your waypoint style navigation with as much variety as you please.
We just open sourced the behaviour trees, but it's not yet all documented/ready for a release. Certainly usable though and you can play around with what is there. The scenarios which do the waypoints however are closed.