Multiple node system registration using same service/topic??

asked 2019-04-17 08:58:22 -0500

CCGreg gravatar image

Hi,

In my multiple node system, I am trying to develop a new way for nodes to advertise their capabilities to the rest of the system. I have a management node that would need to get these capabilities, but from one system to the next there can be any number of different nodes present to advertise their capabilities. I think they'd all either publish the same topic or provide the same service. The management node would subscribe to this single topic/service, and would get the same message from any nodes that are started from the launch file. Each node would provide the same topic/service but with its unique information defined.

I am trying to do this so I do not have to modify the system each time I add a new node. I want to have a generic way for the system to see new nodes and manage them, without having to change the manager every time a new node is supported.

In initial development, we did provide a service where a node would provide its capabilities, and the manager would act as a service client to query this info. There were multiple nodes that would be the serviceServer, but only one could be loaded in the system. I am trying to expand on that to allow a manager who does not know about new nodes to have a single path to get their capabilities.

Any thoughts on the best way to do this, (using Kinetic Kame)?

Thanks

edit retag flag offensive close merge delete

Comments

Have you seen wiki/capabilities?

gvdhoorn gravatar image gvdhoorn  ( 2019-04-17 09:24:23 -0500 )edit

That concept of capabilities sounds good and could be useful for my system, especially if it gets opened up for 3rd party nodes. Is it a problem if multiple nodes publish the same topic, with different internal data so other nodes can tell what the publishing node was?

CCGreg gravatar image CCGreg  ( 2019-04-17 16:07:47 -0500 )edit

especially if it gets opened up for 3rd party nodes

I'm not sure I understand: it's all open-source, so you can just take what is there and adapt/extend for your system.

Is it a problem if multiple nodes publish the same topic, with different internal data so other nodes can tell what the publishing node was?

I believe the capabilities system was not fully implemented / finished by @William, so I'm not sure what the status is.

My comment was intended to provide you with some related work available in the ROS community. There may be others, but this is what your post reminded me of.

gvdhoorn gravatar image gvdhoorn  ( 2019-04-18 01:28:57 -0500 )edit