当前位置:萝卜系统 > 网络技术教程 > 详细页面

【干货】分布式多机通信的设置步骤及步骤详细说明

【干货】分布式多机通信的设置步骤及步骤详细说明

更新时间:2023-08-16 文章作者:未知 信息来源:网络 阅读次数:

网络故障(network failure)是指由于硬件的问题、软件的漏洞、病毒的侵入等引起网络无法提供正常服务或降低服务质量的状态。

因为我们在使用ROS进行机器人开发的时候,比如调试智能汽车的时候,当硬件资源有限或者不能直接进行开发计算时,经常会配置主从机。

节点可以运行在不同的计算平台上,但在 ROS 中只允许一个 Master。在多机系统中,Master只能运行在一台机器上,其他机器需要通过SSH与Master取得联系。

以两台电脑为例介绍分布式多机通信的配置步骤:(主机:ucar_mini,从机:xiaolong-Inspiron-5580)

一、设置IP地址

1. 首先需要确保ROS多机系统中的所有计算机都在同一个网络上。

ifconfig 查看主机地址:

在这里插入图片描述

ifconfig 查看从机地址:

ros路由器_ros软路由设置_ros软路由安装

在这里插入图片描述

2.在主机系统/etc目录下的hosts文件中添加从机的IP地址和对应的计算机名:

在这里插入图片描述

在从系统/etc目录下的hosts文件中添加主机的IP地址和对应的计算机名:

在这里插入图片描述

3.设置好后,在两台电脑上用ping命令测试网络是否连通。

下图显示双向网络畅通无阻,说明底层网络通信没有问题。 (可以ping后加IP或名字)

在这里插入图片描述

在这里插入图片描述

二、设置 ROS_MASTER_URI

因为系统中只能有一个Master,所以Slave需要知道Master的位置。

在slave隐藏的.bashrc文件(ctrl+h打开)中添加如下内容:

ROS_HOSTNAME 添加从机地址; ROS_MASTER_URI 添加主机地址。

三、多机通信测试

1.我们可以通过ssh切换到host端来控制slave上的host。

ros软路由设置_ros路由器_ros软路由安装

在这里插入图片描述

2.在host端启动master和小龟节点,在slave端启动keyboard节点进行控制。 (这时候你可能会因为电脑性能的影响,发现数据传输慢或者控制效果差)

在这里插入图片描述

在这里插入图片描述

四、expansion

当我们汽车主板的计算资源不是很好的时候,我们可以用这个ssh在主机上启动master,在slave上进行各种计算,rviz可视化等(当然我们的multi -计算机通信不限于两台计算机设备)。同时,我们还可以通过NFS和VNC进行远程调试。

参考本文内容:

《ROS机器人开发实践》-胡春旭

如有错误或不足,欢迎留言指正!


本文来自本站,转载请注明本文网址:
http://www.pc-fly.com/a/tongxingongju/article-381378-1.html


当今,越来越多的业务应用运行于网络架构之上,保障网络的持续、高效、安全的运行,成为网络管理者面临的巨大挑战。

温馨提示:喜欢本站的话,请收藏一下本站!

本类教程下载

系统下载排行

网站地图xml | 网站地图html