我的项目是使地面站“笔记本电脑”与多个树莓派和多个arduino通信…我是否可以在多台机器上运行多个roscore来运行ROS,以避免单点故障。
发布于 2016-03-21 01:26:55
你可以看看ROS Network,因为我认为它做的正是你所需要的。
例如,假设您有两台运行ROS的机器M1(IP1)和M2(IP2),您希望它们交换数据(ROS msg,srv...)彼此之间的关系。首先确保they are reachable and are pinging each other successfully。其次,假设您需要M1 to be the ROS master,因此可以按如下方式配置机器:
in M1 : $export ROS_MASTER_URI=http://IP1:11311
in M2 : $export ROS_MASTER_URI=http://IP1:11311要确保网络配置良好,请使用start ROS master ($roscore) in M1和($rostopic list) in M2命令,您应该会看到across the network (in M1 & M2)发布的主题。
有时,会观察到同步问题(模拟包、大数据、连接速度慢...),然后您可以使用ntp来同步互连的机器。
sudo apt-get install ntp正如在此thread中所讨论的。
干杯。
https://stackoverflow.com/questions/35467009
复制相似问题