运行在机器人上的叫主机master 开启roscore 远端的叫从机 host
第一步:
 分别在两台机器上使用 hostname 指令查看用户名
 
 第二步:分别在两台机器上使用 ifconfig 指令查看ip地址
第二步:分别在两台机器上使用 ifconfig 指令查看ip地址
  wlp3s0是我的pc的无线网卡,可以看到ip地址为10.10.40.84,同样方法查询到小车的ip地址为10.10.40.174。
wlp3s0是我的pc的无线网卡,可以看到ip地址为10.10.40.84,同样方法查询到小车的ip地址为10.10.40.174。
第三步:让主从机在网络上互相认识一下
 前两步我们获得的hostname与ip地址是机器在网络上的标识,就好像我们交朋友,我知道了你的名字和你家的地址,就可以去找你玩啦。
 在从机上使用vim或者其他编辑器修改 /etc/hosts 文件(此操作需要管理员权限,记得在指令前加sudo),在有注释的那一行上面加入主机的ip及hostname,如下图所示
 
同样的,在主机上修改 /etc/hosts 文件,加入从机的ip及hostname。
第四步:告诉ROS系统,谁才是老大!
 分别在主机和从机上使用vim或其他编辑器修改 ~/.bashrc 文件,在末尾加
 上
 export ROS_HOSTNAME=SLAM
 exprot ROS_MASTER_URI=http://10.10.40.174:11311
 此外主从机都应当加上export ROS_IP=192.168.3.10 (本机的IP) 

 其中,ROS_HOSTNAME分别对应主从机的hostname,ROS_MASTER_URI全部对应为主机的ip,你需要替换成自己的。
第五步:大功告成,重启网络和终端
 分别在主从机上使用 sudo /etc/init.d/networking restart 命令,重启网络使我们刚才的修改生效,并且重新打开终端,启动你主机上的roscore(从机上不用启动),使用 rostopic list 指令,就可以在从机上看到主机的消息啦。
 PS:也可以直接重启两台机器,一样的效果。
 我的目标达成,PC上启动rviz,直接可以看到小车建出来的地图了,耶!
 
PS:如果遇到主从机长时间无法连接后报错ERROR: Unable to communicate with master!
 请看我的另一篇,ros爬坑日记
 
                   
                   
                   
                   
                             本文详细介绍如何在两台机器间配置ROS系统,实现主从机间的通信。通过获取主机和从机的hostname与IP地址,修改/etc/hosts文件使双方在网络中互相识别。设置ROS环境变量,指定ROS_MASTER_URI,确保正确启动roscore,最终实现在从机上接收主机的ROS消息。
本文详细介绍如何在两台机器间配置ROS系统,实现主从机间的通信。通过获取主机和从机的hostname与IP地址,修改/etc/hosts文件使双方在网络中互相识别。设置ROS环境变量,指定ROS_MASTER_URI,确保正确启动roscore,最终实现在从机上接收主机的ROS消息。
           
       
           
                 
                 
                 
                 
                 
                
               
                 
                 
                 
                 
                
               
                 
                 扫一扫
扫一扫
                     
              
             
                   708
					708
					
 被折叠的  条评论
		 为什么被折叠?
被折叠的  条评论
		 为什么被折叠?
		 
		  到【灌水乐园】发言
到【灌水乐园】发言                                
		 
		 
    
   
    
   
             
            


 
            