我的项目是让地面电台“笔记本电脑”与多个树莓派和多个arduino进行通信...我可以运行多个roscore在多台机器上运行ROS以避免单点故障。
答案 0 :(得分:-1)
您可以查看ROS Network,因为我认为它完全符合您的需求。
例如,假设您有两台机器M1(IP1)
& M2(IP2)
正在运行ROS并且您希望它们彼此交换数据(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中所述。
干杯。