多台计算机之间的ROS通信

一、两台电脑通信前的准备工作

1.实现两台电脑的物理连接

(1)将两台电脑通过网线直连,也可通过路由器组成局域网,两台电脑连接同一个wifi也可以。
(2)将两台电脑的IP地址配置成一个网段。

2.查看两台电脑的ip信息和主机名hostname

(1)查看IP:使用命令 ifconfig,或者直接查看网络的连接信息。
(2)查看主机名hostname:使用命令 hostname。

二、修改配置文件

3.修改/etc文件夹下的hosts文件

修改hosts文件的目的是将两电脑的ip和主机名绑定,两台电脑之间通过hostname就能找到对方。没有这一步的时候,你直接去ping 对方主机名时,结果是无法解析对方主机名。
一般使用gksu进行修改:使用命令 gksu gedit /etc/hosts,打开并编辑hosts文件。
打开hosts后,你看到hosts文件内开头已经有了两行,我们从第三行开始插入你刚刚查到的两台电脑的ip地址和主机名hostname,形式如下:
your_ip your_hostname
中间用tab键隔开,不是空格。
例如:电脑A的hostname是userA,IP是192.168.6.1;电脑B的hostname是userB,IP是192.168.6.2,则写入的内容为:
userA 192.168.6.1
userB 192.168.6.2
修改保存完之后,可关闭hosts文件,并重启网络
sudo /etc/init.d/networking restart

4.修改.bashrc文件

假设用电脑A作为两台电脑的主机。
电脑A:
export ROS_HOSTNAME=userA
export ROS_MASTER_URI=http://userB:11311
电脑B:
export ROS_HOSTNAME=userB
export ROS_MASTER_URI=http://userB:11311

三、通信测试

5.实现两台电脑间通信

(1)在两台电脑上装上chrony包,用于实现同步:
sudo apt-get install chrony
(2)在两台电脑上都进行ssh服务器的安装:
sudo apt-get install openssh-server

6.正式开始通信

(1)互ping,测试连通:
电脑A:ping 192.168.2.2或ping userB。
电脑B:ping 192.168.2.1或ping userA。
(2)实现电脑B操控电脑A上的小乌龟:
电脑A:运行roscore;运行rosrun turtlesim turtlesim_node,出现小乌龟的窗口。
电脑B:运行rosrun turtlesim turtle_teleop_key,启动小乌龟控制节点。

此时就可以通过电脑B的键盘的四个方向键控制电脑A的小乌龟移动了。

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值