PROJECT · 工程档案 · 更新于 2026年8月10日

室内无人机自主飞行控制系统

使用 ROS 2、PX4 和 Gazebo 搭建室内无人机控制、仿真验证与飞控联调链路。

ROS2PX4MAVLinkGazeboC++STM32
返回项目
项目状态
已公开
时间范围
2025.03—至今
作者角色
嵌入式软件开发 / ROS 2 开发
硬件平台
无人机平台、飞控、STM32
软件环境
ROS 2 Foxy、PX4、Gazebo、QGroundControl、Linux
技术栈
ROS2-Foxy · C++ · PX4 · MAVLink · px4_msgs · Gazebo · QGroundControl · STM32
核心结果
完成 ROS 2 功能包、基础 Gazebo/PX4 仿真与飞控接入流程,并沉淀可复用的通信和模式切换排障链路。
验证方式
通过 colcon 构建、ROS 2 Topic 数据检查、Gazebo 仿真、QGroundControl 参数检查和 PX4 Offboard 链路联调验证当前阶段。
当前限制
当前公开材料仅确认仿真环境、飞控接入和调试流程,不宣称尚未提供证据的真机自主飞行指标。
下一步
补充真机测试条件、飞行任务、成功率和异常记录,在证据完整后公开量化结果。

目标

围绕室内无人机自主飞行建立从 ROS 2 控制节点、PX4 Offboard 模式、Gazebo 仿真到真机联调的可复用开发与排障流程。

本人职责

  • 使用 ROS 2 C++ 编写和维护功能包,组织节点、Topic、参数与 launch 启动流程。
  • 完成 PX4、MAVLink、px4_msgs、Gazebo 和 QGroundControl 的环境配置与链路联调。
  • 针对依赖缺失、编译失败、话题无数据和模式切换异常进行日志分析与命令行排查。

系统架构

  1. ROS 2 节点订阅飞控状态和任务相关数据。
  2. 控制节点按照 Offboard 要求持续发布控制模式与设定值。
  3. px4_msgs 与 MAVLink 链路将 ROS 2 指令传递给 PX4。
  4. Gazebo 用于仿真验证,QGroundControl 用于飞控状态、模式和参数检查。
  5. 真机阶段通过飞控与 STM32 等嵌入式模块完成系统接入和调试。

硬件与软件环境

  • **硬件:**无人机平台、飞控、STM32。
  • **机器人软件:**ROS 2 Foxy、PX4、px4_msgs、Gazebo、QGroundControl。
  • **开发环境:**Linux、C++、ament_cmake、colcon、Git。

关键实现

  • 使用 ament_cmake/colcon 管理 ROS 2 工程构建和依赖。
  • 通过 Topic 完成飞控状态订阅、控制指令发布和节点间数据流转。
  • 使用 launch 文件统一管理节点启动和参数配置。
  • 围绕 PX4 Offboard 流程检查控制模式、设定值发布频率、飞控状态和 MAVLink 通信链路。

问题与排查

  • 对依赖缺失和编译失败,结合构建日志、包依赖和工作空间环境逐项定位。
  • 对话题无数据,检查节点状态、Topic 名称、消息类型、QoS 和桥接链路。
  • 对 Offboard 模式无法进入或保持,检查设定值发布、飞控解锁条件、模式参数和 QGroundControl 状态。
  • 将排查步骤整理为“仿真验证—参数配置—通信检查—真机排障”的顺序,减少跨层问题定位成本。

测试方法

  • 使用 colcon 完成功能包构建并确认节点可启动。
  • 在 Gazebo 中检查仿真模型、飞控状态和控制链路。
  • 使用 ROS 2 命令行工具检查节点、Topic、频率和消息内容。
  • 使用 QGroundControl 检查 PX4 模式、参数和连接状态。

验证结果

  • 已完成 ROS 2 功能包编译和基础仿真环境搭建。
  • 已完成飞控接入、状态订阅、指令发布和 Offboard 调试流程的阶段性验证。
  • 已形成覆盖构建、仿真、参数、通信和模式切换的可复用排障链路。

当前限制

  • 当前公开材料没有完整的真机自主飞行测试条件、任务成功率和稳定运行数据。
  • 因此项目页只陈述已验证的构建、仿真、飞控接入和调试流程,不扩展为未被证据支持的飞行成果。
  • ROS 2 Foxy 与 Gazebo Classic 已结束官方支持。它们在此作为已验证项目环境记录保留,不代表新项目的推荐版本;新环境需按 PX4 与 ROS 2 官方兼容矩阵重新选择。

下一步

  • 明确真机测试场景、任务流程和安全边界。
  • 记录飞行成功率、模式切换异常、通信状态和恢复过程。
  • 整理可公开的视频、飞行日志和系统照片后补充量化结果。

SEARCH / QUICK JUMP

搜索工程档案

↑↓ 选择 · Enter 打开 · Esc 关闭