最新消息:雨落星辰是一个专注网站SEO优化、网站SEO诊断、搜索引擎研究、网络营销推广、网站策划运营及站长类的自媒体原创博客

ROS开发之如何将树莓派采集的雷达、IMU数据在虚拟机rviz中显示?

运维笔记admin0浏览0评论

文章目录

  • 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].

发布评论

评论列表(0)

  1. 暂无评论