2011-09-06 63 views
1

我一直在玩ROS(ros.org)一段时间了,但我一直在两台机器上开发 - 主机和从机。现在我已经提出了另一台机器,我开始遇到在两个从机之间发布数据的问题。基本上,我在主站上启动的任何节点都可以发布任何一个从站都可以接收的数据。由从节点发布的任何通道只能将数据传递到同一个从节点上的另一个节点,甚至不能在主节点上传递数据。ROS多机出版

我使用的是SVN,代码在机器之间是一样的。每个从站和主站之间的通信肯定存在,所以环境配置正确。

我已经写了教程代码从http://www.ros.org/wiki/ROS/Tutorials/WritingPublisherSubscriber(c%2B%2B)到一对夫妇节点只是为了使测试尽可能基本。这些节点之间的通信如上所述。

总之 - ,其中A为Master:

  • A> B(工程)
  • A> C(工程)
  • B> A(失败)
  • C> A(失败)
  • B> C(失败)
  • A> A(工程)
  • B> B(工程)
  • C> C(Works)
+0

此前,我已将教程代码添加到现有代码中。我现在已经从教程中完全复制并粘贴,以创建另外两个节点。我遇到了同样的问题,如上所述。此外,没有防火墙,防病毒等... – mnygns

回答

1

我的奴隶的主机名未解析。在主机文件中放入每个条目解决了这个问题。

1

您的问题可能是您的网络设置。 ROS/NetworkSetup页面讨论如何正确配置您的网络。

通常的问题是,ROS节点使用您的计算机报告的主机名向其他节点宣传自己。但是,如果计算机没有配置完全合格的域,这可能会导致部分连接的系统。