文章目录
前言
在ROS2的环境下,进行无人机仿真的过程中,有时需要调取无人机的相机图像信息,但是使用rqt,却发现相机图像无法显示。
提示:注意PX4以及Gazebo的版本
PX4需要在1.16以下,Gazebo需要Gazebo sim7
一、问题展示

二、解决方法:
1.下载对应版本的PX4
按 Ctrl + Alt + T,打开终端,输入以下代码,安装1.15.3版本的PX4版本。
c
git clone --branch v1.15.3 --recursive https://github.com/PX4/PX4-Autopilot.git
bash ./PX4-Autopilot/Tools/setup/ubuntu.sh
详细情况可以参考这篇文章:
《如何查询已安装的PX4版本,如何下载指定版本的PX4,PX4未下载完全怎么处理》
2.下载对应版本的Gazebo
按 Ctrl + Alt + T,打开终端,输入以下代码,查看已安装的gazebo版本。
c
gazebo --version
如果不是Gazebo sim7,卸载它。(如何卸载几天后更新)
输入以下代码,下载对应版本的Gazebo。
c
sudo apt install ros-humble-ros-gzgarden
3.启动
按 Ctrl + Alt + T,打开第一个终端,输入以下代码,打开带相机的无人机仿真。
c
cd ~/PX4-Autopilot
make px4_sitl gz_x500_depth
按 Ctrl + Alt + T,打开第二个终端,输入以下代码:
c
ros2 run ros_gz_image image_bridge /camera
按 Ctrl + Alt + T,打开第三个终端,输入以下代码:
c
ros2 run rqt_image_view rqt_image_view
我们可以发现无人机相机图像可以正常显示了。

总结
以上就是今天要讲的内容,希望对大家有所帮助,接下来,我还会分享更多的文章,希望可以帮助到大家。