局域网下ROS多机通信的网络连接配置
作者:互联网
1. 在路由器设置中固定各机器IP地址
在浏览器中输入路由器的IP地址,例如TP-LINK路由器的IP为:
192.168.1.1 |
进入登录页面后,输入用户名和密码登录,用户名一般为admin,密码为自定义。
在“基本设置->LAN设置->静态地址分配”路径下,可以为连接在该路由器下的所有计算机分配固定的局域IP地址(local IP)。此处我们将桌面计算机IP固定为:192.168.1.90,将ridgeback机器人的IP固定为:192.168.1.110。
2. 查看IP地址
在桌面计算机上打开终端,输入如下命令查看本机IP地址:
$ ifconfig |
可以看到本机IP地址为固定后的192.168.1.90。
3. ssh远程登录机器人计算机
在桌面计算机中输入如下ssh命令,远程登录机器人计算机:
$ ssh administrator@192.168.1.110 |
输入密码后,即可远程登录。其中administrator为用户名,192.168.1.110为机器人计算机的局域IP地址。
4. 设置环境变量ROS_MASTER_URI和ROS_IP
(1) 在ROS master所在计算机下(此处即机器人计算机,可以通过ssh远程登录),打开.bashrc文件:
$ sudo vim .bashrc |
在该文件最后添加如下两句环境变量设置语句:
#设置ROSMaster为机器人IP export ROS_MASTER_URI=http://192.168.1.110:11311 #设置本机局域网IP(也为机器人IP) export ROS_IP=192.168.1.110 |
(2) 在桌面计算机下,同样打开.bashrc文件,添加如下两句环境变量设置语句:
#设置ROSMaster为机器人IP export ROS_MASTER_URI=http://192.168.1.110:11311 #设置本机局域网IP(此处为桌面计算机IP) export ROS_IP=192.168.1.90 |
5. 修改/etc/hosts文件
若没有这一步,则在桌面计算机上使用rostopic list命令可以看见master发布的话题列表,但是无法接收话题消息数据。
(1) 使用ssh远程登录ROS master所在计算机后,打开/etc/hosts文件:
$ sudo vim /etc/hosts |
添加如下一行桌面计算机的IP和主机名:
192.168.1.90 desktop-hostname |
(2) 同样,在桌面计算机下,打开/etc/hosts文件:
$ sudo vim /etc/hosts |
添加如下一行机器人计算机的IP和主机名:
192.168.110 robot-hostname |
修改完hosts文件后,重启网路即可在桌面计算上读取机器人计算机发布的话题消息了,例如使用rostopic echo命令查看话题/rosout发布的消息:
$ rostopic echo /rosout |
标签:桌面,计算机,IP,机器人,192.168,多机,网络连接,ROS 来源: https://blog.csdn.net/Spacegene/article/details/86499467