Only released in EOL distros:
Package Summary
Gateways provide a means for multiple ros systems to interact with each other.
- Author: Daniel Stonier, Jihoon Lee,
- License: BSD
- Source: git https://github.com/robotics-in-concert/rocon_multimaster.git (branch: fuerte)
Package Summary
A hub acts as a shared key-value store for multiple ros systems (primarily used by gateways).
- Maintainer status: developed
- Maintainer: Daniel Stonier <d.stonier AT gmail DOT com>, Jihoon Lee <jihoonlee.in AT gmail DOT com>, Piyush Khandelwal <piyushk AT gmail DOT com>
- Author: Daniel Stonier <d.stonier AT gmail DOT com>, Jihoon Lee <jihoonlee.in AT gmail DOT com>, Piyush Khandelwal <piyushk AT gmail DOT com>
- License: BSD
- Bug / feature tracker: https://github.com/robotics-in-concert/rocon_multimaster/issues
- Source: git https://github.com/robotics-in-concert/rocon_multimaster.git (branch: groovy-devel)
Package Summary
A hub acts as a shared key-value store for multiple ros systems (primarily used by gateways).
- Maintainer status: developed
- Maintainer: Daniel Stonier <d.stonier AT gmail DOT com>, Jihoon Lee <jihoonlee.in AT gmail DOT com>, Piyush Khandelwal <piyushk AT gmail DOT com>
- Author: Daniel Stonier <d.stonier AT gmail DOT com>, Jihoon Lee <jihoonlee.in AT gmail DOT com>, Piyush Khandelwal <piyushk AT gmail DOT com>
- License: BSD
- Bug / feature tracker: https://github.com/robotics-in-concert/rocon_multimaster/issues
- Source: git https://github.com/robotics-in-concert/rocon_multimaster.git (branch: hydro)
Package Summary
A hub acts as a shared key-value store for multiple ros systems (primarily used by gateways).
- Maintainer status: developed
- Maintainer: Daniel Stonier <d.stonier AT gmail DOT com>, Jihoon Lee <jihoonlee.in AT gmail DOT com>, Piyush Khandelwal <piyushk AT gmail DOT com>
- Author: Daniel Stonier <d.stonier AT gmail DOT com>, Jihoon Lee <jihoonlee.in AT gmail DOT com>, Piyush Khandelwal <piyushk AT gmail DOT com>
- License: BSD
- Bug / feature tracker: https://github.com/robotics-in-concert/rocon_multimaster/issues
- Source: git https://github.com/robotics-in-concert/rocon_multimaster.git (branch: release/0.7-indigo)
Package Summary
A hub acts as a shared key-value store for multiple ros systems (primarily used by gateways).
- Maintainer status: developed
- Maintainer: Daniel Stonier <d.stonier AT gmail DOT com>, Jihoon Lee <jihoonlee.in AT gmail DOT com>, Piyush Khandelwal <piyushk AT gmail DOT com>
- Author: Daniel Stonier <d.stonier AT gmail DOT com>, Jihoon Lee <jihoonlee.in AT gmail DOT com>, Piyush Khandelwal <piyushk AT gmail DOT com>
- License: BSD
- Bug / feature tracker: https://github.com/robotics-in-concert/rocon_multimaster/issues
- Source: git https://github.com/robotics-in-concert/rocon_multimaster.git (branch: release/0.8-kinetic)
The Gateway Model
The gateway model is based on the lan concept where a gateway stands inbetween your lan and the rest of the internet, controlling both what communications are allowed through, and what is sent out.
Gateways for ros systems are very similar conceptually. They interpose themselves between a ros system and other ros systems and are the co-ordinators of traffic going in and out of a ros system to remote ros systems.
Note that the gateways are not a point to point multimaster solution. They have been designed to be a convenient building block for a variety of more complete solutions on top. Some ideas for use cases.
Notes
Troubleshooting - some constraints to be aware of if building a system on top of the gateways.
Ros API
Parameters
~hub_whitelist (list of string, default: [])
- Use this to control which hubs you wish to work with.
- Use this to control which hubs you wish to not work with.
- How long the watcher should sleep inbetween checking if the system state needs synchronisation (secs).
- Used to block/permit remote gateway's from flipping to this gateway.
- Make everything (except the default_blacklist) publicly available for pulling.
- Connections that should never get advertised. Usually good to rosparam load this file as the default for your gateway.
- Connections to advertise by default (watched for from startup). Can use python regex patterns to full effect for these. See rocon_gateway/param/default.yaml for an example.
- Connections to flip by default (watched for from startup). Can use python regex patterns to full effect for these. See rocon_gateway/param/default.yaml for an example.
- Manage unique naming of multiple gateways yourself.
Services
~advertise (gateway_msgs/Advertise)
- Advertise a connection to be shared to other ros systems.
- Advertise all connections except the a specified blacklist.
- Specify manually the location of the hub to connect to.
- Flip the specified remote rule.
- Flip all connections except the specified blacklist.
- Current status and info about the local gateway.
- Pull rule from the specified remote gateway.
- Pull all except a specified blacklist from the remote gateway.
- Current status and info about currently connected remote gateways.
Utilities
These scripts are located in either the global bin directory or are rosrunnable from the rocon_gateway package (prefixing the latter with a ~ to distinguish them)
gateway_info : pretty prints local gateway info
remote_gateway_info : pretty prints remote gateway info
~flip : manual command line tool to flip connections (useful for debugging)
~advertise : manual command line tool to advertise connections (useful for *
~pull : manual command line tool to pull connections (useful for debugging)
Tutorials
An introduction to the tools and some explanatory examples about the gateways can be found in the Tutorials.