Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Support multi-story buildings #1226

Open
2 tasks
crdelsey opened this issue Oct 11, 2019 · 6 comments
Open
2 tasks

Support multi-story buildings #1226

crdelsey opened this issue Oct 11, 2019 · 6 comments

Comments

@crdelsey
Copy link
Contributor

Support navigation in multi-story buildings. This involves:

  • Making a planner work across multiple maps
  • Breaking the navigate mission into multiple sub-navigations. ie. nav to elevator, summon elevator, nav into elevator, select next floor, nav to final goal
@crdelsey crdelsey mentioned this issue Oct 11, 2019
16 tasks
@SteveMacenski
Copy link
Member

@crdelsey I see this ticket really just asking for2 things:

  • ability to change maps in map server
  • ability to annotate points with tags in the map

changing maps lets you change floor by a higher level schema. Annotating points lets you say "staging point" and "on elevator" point for each floor map.

As this is a really user specific application, I think those 2 capabilities are what need to be actually introduced and then have sufficient re-usability for other items. With those 2 things implementing this would be trivial + elevator APIs

@SteveMacenski
Copy link
Member

Also #547 and #392 cover this topic

@jwallace42
Copy link
Contributor

Closing ticket,

The ability to change maps in in the map server. Annotating the map is current open in #1595.

@SteveMacenski
Copy link
Member

That's not the same as having a solution that's well supported to handle planning and tasks involving multiple floors

@SteveMacenski SteveMacenski reopened this Nov 14, 2022
@jwallace42
Copy link
Contributor

That's not the same as having a solution that's well supported to handle planning and tasks involving multiple floors

I think that the open rmf traffic editor supports this ability. Is there something different from this that you had in mind?

@SteveMacenski
Copy link
Member

SteveMacenski commented Nov 14, 2022

This is not high on my current list of things to work on or think about (unless there was contributors looking to help out and I would to design if they had the time to implement) so I can't answer in specificity. But until there's a well thought out and fully developed integration with Nav2 and multi-floor navigation, this should stay open.


One possible solution using BTs

  • The user gives a goal to the robot in any floor
  • The robot checks if the given goal is on the same floor, if it is, then it proceeds to send that goal to nav2
  • If however the goal is in a different floor, the package sends the robot the goal of getting inside the elevator (Literally publish the x,y coordinates of inside the elevator to the goal_pose topic), the package then sends the elevator gazebo plugin the command to rise/lower to the desired floor
  • Once the floor has been reached, the elevator sends a notification to the BT that it has reached the desired floor, the package/- BT then loads the map of this new floor to the map server and publishes the initial goal given by the user to nav2.
  • The robot successfully navigates to the goal.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants