ubuntu20使用gazebo9无人机仿真降落

ubuntu20可以装gazebo11,在别的环节仿真都没问题,但是换飞机模型时会有很多问题,所以使用gazebo9进行。这里已经下载好,可以直接编译运行。

Autoland_ws编译

代码链接:

编译由于有自定义msg,先把px4_com里的cmakelist的这两行注释调在编译,编译完成后加回来再编译一次。

add_executable(cy_trak src/Application/cy_trak.cpp)
target_link_libraries(cy_trak ${catkin_LIBRARIES} ${OpenCV_INCLUDE_DIRS} ${OpenCV_LIBRARIES}) 
cd Autoland_ws 
catkin_make
source devel/setup.sh
cd Firmware
make px4_sitl_default gazebo

编译完有地面和标,还缺少带相机的无人机。

Ros上运行

cd Autoland_ws 
source source_px4gazebo.sh
sudo chmod 777 sim.sh
./sim.sh

后续只需要输入最后一行就可以。

在qgc上使用takeoff起飞先试试3m,在最后一个终端使用777开始运行程序, 然后qgc上把飞行模式切到offboard,等待降落完成。

 无人机模型修改

mavros_posix_sitl.launch文件里有vehicle,改成想要的就行。已有的模型在Autoland_ws/Firmware/Tools/sitl_gazebo/models里面。

可以根据格式自行添加其他的模型。

地标修改

搜索文件夹landing_place文件夹,把textures里的照片换了即可

地面环境修改

搜索文件夹lawn_plane文件夹,把textures里的照片换了即可

<think>嗯,用户想了解如何搭建PX4在Gazebo中的仿真环境。首先,我需要回忆一下相关的配置步骤。根据之前的引用内容,配置过程可能涉及安装Ubuntu、ROS、PX4源码、Gazebo以及Mavros这些组件。 首先,用户可能需要安装Ubuntu 20.04,因为引用[3]提到的是Ubuntu20.04和ROS Noetic。接下来是ROS Noetic的安装,因为这是对应Ubuntu 20.04的ROS版本。然后,Gazebo也是必须的,但引用[3]提到的是Gazebo11,需要注意版本兼容性。 接下来,PX4的源码克隆和编译是关键步骤。引用[2]提到要进入PX4-Autopilot文件夹执行make命令,所以需要确保用户正确克隆了PX4的仓库,并且安装了必要的依赖项。可能还需要运行安装脚本,如引用[3]中的bootstrap.sh和install-dependencies.sh。 然后,Mavros的安装也是必要的,因为它用于ROS和PX4之间的通信。引用[3]提到了Mavros的安装教程,可能需要通过apt-get安装相关包。 环境变量配置可能容易被忽略,比如设置ROS的环境变量和PX4的工作空间到bashrc文件中,这样每次启动终端时环境变量都正确加载。 测试运行时,用户需要启动PX4 SITL和Gazebo,可能还需要运行Mavros节点。引用[2]中的命令make px4_sitl_default gazebo是启动仿真的关键步骤,而引用[3]提到无人机起飞和降落,说明可能需要运行预先写好的脚本或ROS命令来测试。 另外,用户可能遇到的问题包括虚拟机与WSL2的选择。引用[4]建议使用虚拟机,因为WSL2可能无法显示Gazebo的图形界面,这点需要注意。 还要考虑依赖项安装是否完整,比如是否有遗漏的库导致编译失败。可能需要指导用户检查错误信息,安装缺失的依赖。 最后,生成相关问题时,需要考虑用户可能遇到的后续疑问,比如如何添加自定义模型、处理通信问题或优化仿真性能。这些都是用户在基础配置完成后可能想进一步了解的。</think>### 分步配置 PX4-Gazebo 仿真环境 以下是基于 Ubuntu 20.04 的配置流程(关键步骤参考官方文档和教程[^3][^4]): 1. **安装依赖环境** - **Ubuntu 20.04**:建议使用虚拟机(如VMware/VirtualBox),避免WSL2图形化兼容问题[^4] - **ROS Noetic**:安装完整版ROS桌面环境 ```bash sudo apt install ros-noetic-desktop-full ``` - **Gazebo 11**:通常随ROS Noetic自动安装 2. **获取PX4源码** ```bash git clone https://github.com/PX4/PX4-Autopilot.git --recursive cd PX4-Autopilot git checkout v1.13.0 # 指定版本 bash ./Tools/setup/ubuntu.sh # 安装依赖项 ``` 3. **编译PX4固件** ```bash make px4_sitl_default # 编译默认仿真固件 ``` 4. **配置Mavros通信** ```bash sudo apt install ros-noetic-mavros ros-noetic-mavros-extras wget https://raw.githubusercontent.com/mavlink/mavros/master/mavros/scripts/install_geographiclib_datasets.sh sudo bash ./install_geographiclib_datasets.sh # 地理数据工具 ``` 5. **启动仿真环境** ```bash source ~/.bashrc # 确保环境变量生效 make px4_sitl_default gazebo # 启动PX4与Gazebo联合仿真[^2] # 新终端中运行Mavros节点 roslaunch mavros px4.launch fcu_url:="udp://:14540@127.0.0.1:14557" ``` 6. **验证仿真** - 在QGroundControl中连接无人机 - 通过Gazebo观察无人机模型,或通过ROS话题发送控制指令: ```bash rostopic pub /mavros/setpoint_position/local geometry_msgs/PoseStamped "header: seq: 0 stamp: secs: 0 nsecs: 0 frame_id: &#39;map&#39; pose: position: x: 0.0 y: 0.0 z: 5.0 # 设置目标高度 orientation: x: 0.0 y: 0.0 z: 0.0 w: 1.0" -r 10 ``` ### 常见问题解决 - **Gazebo黑屏或无模型**:检查显卡驱动是否支持OpenGL加速,虚拟机需启用3D加速[^4] - **MAVLink通信失败**:确认`fcu_url`参数与PX4启动时的端口一致[^3] - **依赖项缺失**:重新运行`ubuntu.sh`脚本安装工具链
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值