-
Notifications
You must be signed in to change notification settings - Fork 48
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
reading tmap from rosparam/topic #361
Comments
I have a question before I can give you a fully informed opinion, are the robots not going to have a local MongoDB? |
Thanks! |
AH, Ok I understand now! Better solution: Modify (or create a simplified) map_manger to use pymongo and get the map and tags and content from central DB (probably map modification services are not needed). |
Does the
Wouldn't it be useful to run this node, but run it on the coordinator server, and publish its map topic (which one is it?) globally? Also, some of its services can be exposed globally as required via rosduct?
I can't see why this is better? Where would you run it? I don't want clients to connect directly to the mongodb, as it requires another port to be somehow made accessible over a potentially unreliable and firewalled connection (e.g. a 4G network). Hence my proposal to use the rosduct websocket, which works almost everywhere, if in environments where IPs change frequently, etc. |
Yes it is published in a topic and it is the the topic that is used by navigation.
Yes part of my plan was to run the map manager on the central system. I should have clarified (replying from a geography training so trying to avoid type too much).
I was going to write "more complicated" rather than better but opted for better meaning "better", I wasn't aware you could expose services, in that case is more complicated AND worse. |
To simplify, the topological map is published in a topic, and it is used by navigation, however there a few specific things in navigation (e.g. no go nodes) that also need access to the tags in the meta information of each node on the MongoDB, this is done via a rosservice that is also provided by the map manager. |
OK, cool, so agreement is as follows:
|
Yes, perfect will do so. |
/cc @bfalacerda |
In many cases (in particular robot fleets), having the tmap on mongodb is both inconvenient and complicated. Have we considered simply storing the map as YAML in a rosparam, like it is done for
/robot_description
? Or sharing it as a latched topic? To be specific, in RASberry project, ideally the central coordinator managed the tmap and deploys it to all robots. Either via a topic (probably more workable) or by rosparam. In my view, a latched topic, in the same way as map_server works is the best option, with topological_navigation listening on that topic, and resetting everything if a new map is published. What do you think @Jailander ? Also this might be interesting for @gpdasThe text was updated successfully, but these errors were encountered: