admin管理员组文章数量:1355633
文章目录
- 0.前言
- 1.获取IP和计算机名
- 2.配置hosts文件
- 3.配置.bashrc文件
- 4.测试数据显示
0.前言
树莓派是小型计算机,可以作为移动机器人的控制器,随机器人运动,不便于外接显示屏,而不外接显示屏就会导致依赖显示屏的可视化工具RViz无法启动,无法实时查看设备(如:雷达、IMU)采集的数据情况。为了能实时观察设备数据采集情况,可以采用分布式通讯,即在树莓派启动roscore,并启动设备采集数据,处于同一局域网(即同一个wifi,更换wifi需要重新配置)的虚拟机启动RViz(该软件启动前必须启动roscore),这时就可以接收到树莓派的数据,从而进行实时显示。本文采用树莓派(ubuntu16.04.7),虚拟机(ubuntu18.04.6)进行分布式通信。
1.获取IP和计算机名
①获取树莓派IP和计算机名,输入命令:ifconfig
②获取虚拟机IP和计算机名,输入命令:ifconfig
2.配置hosts文件
①测试树莓派能否接收虚拟机数据;
②测试虚拟机能否接收树莓派数据;
③配置树莓派的hosts文件,输入命令:sudo vi /etc/hosts,在最后行加入虚拟机的IP和计算机名;
注:vi编辑中,初始是命令行模式,键入【i】进入插入模式,可以进行写入,当编辑完后,【esc】退出插入模式到命令行模式,【shift+;】即键入【:】可以进行键入命令,键入wq可以保存退出,键入q可以不保存退出,键入q!可以不保存强制退出。
④配置虚拟机的hosts文件,输入命令:sudo vi /etc/hosts,在最后行加入树莓派的IP和计算机名。
3.配置.bashrc文件
①配置树莓派.bashrc文件,输入命令:sudo vi ~/.bashrc,最后行加入以下代码:
export ROS_MASTER_URI=http://【树莓派IP】:11311
export ROS_HOSTNAME=【树莓派IP】
保存退出后,为使配置文件生效,需键入:
source ~/.bashrc
注:以上更改后,必须跟以下虚拟机或其他设备联网才能正常运行ros,若需要树莓派单机运行,可将以上两行代码更改为:
export ROS_MASTER_URI=http://localhost:11311
export ROS_HOSTNAME=localhost
②配置虚拟机.bashrc文件,输入命令:sudo vi ~/.bashrc,最后行加入以下代码:
export ROS_MASTER_URI=http://【树莓派IP】:11311
export ROS_HOSTNAME=【虚拟机IP】
保存退出后,为使配置文件生效,需键入:
source ~/.bashrc
4.测试数据显示
①测试RViz是否可行,在树莓派输入命令:roscore,然后在虚拟机输入命令:RViz,RViz正常启动,则成功进行通信;
②树莓派接入雷达在虚拟机RViz显示数据;
③树莓派接入IMU在虚拟机RViz显示数据。
参考资料:
[1] AGOLK. ROS中的分布式通讯(树莓派与虚拟机); 2022-07-06 [accessed 2023-03-28].
版权声明:本文标题:ROS开发之如何将树莓派采集的雷达、IMU数据在虚拟机rviz中显示? 内容由网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:http://www.betaflare.com/biancheng/1744043202a2581045.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论