方式一:不用管hosts文件。直接修改.bashrc
关键两点:
在.bashrc中添加:
机器A(运行roscore,多机通讯只需要一个机器运行master):
export ROS_IP=机器A的ip
export ROS_MASTER_URI=http://启动master的IP地址:11311
机器b:
export ROS_IP=机器B的ip
export ROS_MASTER_URI=http://启动master的IP地址:11311 (此处还是机器A的ip地址)
注意:ROS_MASTER_URI所有机器的地址都是一样的,也就是你启动master的机器 A的地址。
hosts文件说明:该文件可以理解成一个记载IP与主机名的地方,平时上网用的网址都会有对应的ip,这样我们电脑才能找到准确网址。所以如果我们在ROS_MASTER_URI地方直接用ip地址也是可以的。当然如果就要用主机名,那么就需要在hosts写明 你的主机名与对应的ip地址,这样ROS_MASTER_URI这句命令就变成如下:
export ROS_MASTER_URI=http://启动master的主机名:11311
(利用电脑远程操控工控机,ssh host_name@IP_target
)