[学习记录]ROS,rviz摄像头仿真,image topic中没有东西

最近在学习ROS,跟着b站学到了ROS,rviz,gazebo虚拟仿真。

我尝试跟着做摄像头仿真的时候,发现我已经跟着教程制作(复制)了摄像头传感器信息,并将它与对应的连杆连接无误后,启动gazebo,rviz。

rviz中添加了camera之后,发现image topic里面什么都没有,而教程里面说的应当会自动提示摄像头传感器信息文件设置的话题。
这一项是空的
b站的弹幕也有很多人说跟着做到这一步也没有话题,说是没有保存。但是vscode是自带保存功能的。
经过排查,发现我在launch文件中加载了提前的保存的world文件include标签,加载了world文件
而当初保存这个world文件的时候,gazebo里面已经导入了机器人模型,因此当时的机器人数据也被一起保存到world文件了。

在启动这个launch文件的时候,world文件保存的机器人模型数据覆盖了xacro文件的数据。这就是为什么我新加了camera仿真文件,但是image topic里面没有话题了。因为保存world文件的时候机器人是没有摄像头传感器文件的,所以无论你怎么改xacro,都会被覆盖掉。

解决办法

launch文件中将引入的world文件去除,再重新启动gazebo与rviz,摄像头传感器文件里面的gazebo标签的reference属性与framename标签要设置为摄像头连杆的名字。

心得

制作world文件的时候不要引入机器人。

gazebo保存世界会连带机器人数据一起保存。

launch文件里引入的world文件中如果有当时gazebo中的机器人数据的话,会覆盖你的所有xacro文件数据,怎么改xacro文件都没用(都会被覆盖)

这个问题卡了我一周,网上到处找不到,记录一下,操

猜你喜欢

转载自blog.csdn.net/weixin_54435584/article/details/129432750
今日推荐