ROS分布式通信配置

1 介绍

ROS是一个分布式计算环境。一个运行中的ROS系统可以包含分布在多台计算机上多个节点。根据系统的配置方式,任何节点可能随时需要与任何其他节点进行通信。

因此,ROS对网络配置有某些要求:

  • 所有端口上的所有机器之间必须有完整的双向连接。
  • 每台计算机必须通过所有其他计算机都可以解析的名称来公告自己。

2 配置步骤

第一步,先要保证不同计算机处于同一网络中,最好分别设置固定IP,如果为虚拟机,需要将网络适配器改为桥接模式。主机这里使用虚拟机,从机这里使用树莓派,让二者连接到同一个路由器下面,保证二者的网络在同一个网段。

主机ip地址:

从机IP地址:

 

第二步,修改配置文件:

分别修改不同计算机的 /etc/hosts 文件,在该文件中加入对方的IP地址和计算机名:

主机端:

从机的IP    从机计算机名

终端:sudo vim /etc/hosts

 

从机端:

主机的IP    主机计算机名

终端:sudo vim /etc/hosts

设置完毕,可以通过 ping 命令测试网络通信是否正常。

IP地址查看名: ifconfig

计算机名称查看: hostname

第三步,配置主机IP

配置主机的 IP 地址,向~/.bashrc 追加内容如下:

export ROS_MASTER_URI=http://主机IP:11311

export ROS_HOSTNAME=主机IP

 

第四步,配置从机IP

配置从机的 IP 地址,从机可以有多台,每台都做如下设置:向~/.bashrc 追加内容:

export ROS_MASTER_URI=http://主机IP:11311

export ROS_HOSTNAME=从机IP

 

3 测试


1.主机启动 roscore(必须)

2.主机启动订阅节点,从机启动发布节点,测试通信是否正常

3.反向测试,主机启动发布节点,从机启动订阅节点,测试通信是否正常

主机:

终端1:roscore

终端2:rosrun turtlesim turtlesim_node

从机:

终端:rosrun turtlesim turtle_teleop_key

 

 

 

  • 0
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值