在学习教程小强ROS机器人教程(8)___kinect1代 ROS驱动测试与安装 时,遇到了rviz的问题。

按照教程步骤操作打开rviz后,并没有显示出预期的图像,这之前对rviz没什么了解,以为按照教程步骤来就能显示成功,请教别人后才发现还有些选项操作。

运行launch文件后打开rviz后界面是这样的

接触rviz

可以看到有FIxed Frame的问题,请教大神后知道:可能是没用对rviz,应该在rviz里面订阅相关topic,同时设置好global fixed frame,有个技巧:看topic错误,一般是 xxx to yyy not exist之类,其中yyy如果是你现在设置的fixed frame,就把fixed frame 设成xxx

于是修改了相应的topic

接触rviz

可以看到出现了tranform的问题。

经过提示知道了,知识背景:在rviz里面,右侧显示区域的原点所在坐标系是由global fixed frame指定的,topic要显示就需要topic所在坐标系到global fixed frame的坐标变换关系。坐标变换关系就是tf关系,frame就是坐标系

再修改fixed frame选项

接触rviz

得到了目标效果。

这里记录一下解决方法:如果显示不了topic报frame 、transform之类错误,就有两个办法,1.把global fixed frame设成topic自己所在的坐标系,2.用tf包工具发布global fixed frame到topic所在坐标系的tf关系

这里是靠第一种方法解决的,但有时候必须进行坐标转换的话就得用第二种方法了,先记录于此。





相关文章: