目录
配置ros主从机的目的:
想让自己的电脑订阅另一台工控机或者机器人的ros信息,然后在自己的电脑上通过rviz观察工控机/机器人的运行情况。
何为主机:
机器人运行的控制器,如工控机/或TX2等嵌入式设备,但是需要安装ubuntu系统及ROS。
何为从机:
自己所用的电脑,台式机或笔记本均可,也需要安装ubuntu系统和ROS。
配置步骤:
1.掌握主机和从机hostname 和IP
hostname
在主机终端输入上述命令,得到主机hostname,在从机终端输入上述命令得到从机hostname
ifconfig
1)如果从机通过wifi与主机相连,那么就根据从机的wifi ip确定从机的IP:192.168.144.249
2)获取主机的hostname与IP。
我们假设192.168.144.249为从机的IP,192.168.144.100为主机IP
从机hostname为fang-2020, 主机hostname为ubuntu
2.全程需要修改每个机器人上以下两个文件:
(1)
主机: /etc/hosts
vi /etc/hosts
27.0.0.1 localhost
127.0.1.1 主机hostname
192.168.144.249 从机hostname
# 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
151.101.84.133 raw.githubusercontent.com
我们将从机IP192.168.144.249改为自己的从机IP和hostname
从机:/etc/hosts
27.0.0.1 localhost
127.0.1.1 fang-2020
192.168.144.100 主机hostname
# 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
151.101.84.133 raw.githubusercontent.com
将主机hostname改为你需要的,然后将 192.168.144.100替换为你的主机(机器人的控制器)IP
(2)
主机:~/.bashrc
vi ~/.bashrc
在末尾加上
export ROS_HOSTNAME=主机hostname
export ROS_MASTER_URI=http://192.168.144.110:11311
192.168.144.110替换为自己主机的IP, :11311不需要修改
source ~/.bashrc
从机:~/.bashrc
export ROS_HOSTNAME=从机hostname
export ROS_MASTER_URI=http://192.168.144.110:11311
注意,从机上面写的hostname是从机的,但下面的ROS_MASTER只有一个,那就是主机的IP。
source ~/.bashrc
最后也可以直接选择sudo reboot重启生效。
3.校验方法:
主从机能够相互ping通
且在主机(机器人控制器)上运行程序,在从机终端可以用rostopic list / echo 来查看