ROS 分布式多机通信
一、前提条件
- 查询时间是否同步
date
- 安装
ssh
服务
sudo apt-get install openssh-server
二、修改 /etc/hosts 文件
hostname
查询名称
ifconfig
查询主机和从机的ip
地址
图片就不放了
- 修改主机和从机的
hosts
文件
- 输入命令
sudo vim /etc/hosts
- 修改内容(添加
从机的 ip 地址与其 hostname
)
127.0.0.1 localhost
127.0.1.1 ros1
# 添加在这里
192.168.1.133 XIAOMI
# The following lines are desirable for IPv6 capable hosts
::1 ip6-localhost ip6-loopback
fe00::0 ip6-localnet
ff00::0 ip6-mcastprefix
ff02::1 ip6-allnodes
ff02::2 ip6-allrouters
- 输入命令
sudo vim /etc/hosts
- 修改内容(添加主机的
ip 地址与其 hostname
)
127.0.0.1 localhost
127.0.1.1 XIAOMI
# 添加在这里
192.168.1.135 ros1
# The following lines are desirable for IPv6 capable hosts
::1 ip6-localhost ip6-loopback
fe00::0 ip6-localnet
ff00::0 ip6-mcastprefix
ff02::1 ip6-allnodes
ff02::2 ip6-allrouters
三、修改 .bashrc 或 .zshrc 文件
- 在主机(即工控机)的
.bashrc
或.zshrc
文件中加入
export ROS_HOSTNAME=ros1
export ROS_MASTER_URI=http://ros1:11311
- 在从机(即自己控制的PC端)的
.bashrc
或.zshrc
文件中加入
export ROS_HOSTNAME=XIAOMI
export ROS_MASTER_URI=http://ros1:11311
四、测试
在主机上运行 roscore
,在从机上运行 rviz
,如果成功打开即完成。