从零打造无人机飞控:Hermes STM32 开源飞控完整方案

Hermes Flight Controller 是开源 DIY 无人机飞控,基于 STM32F405 设计,使用 KiCad 完成硬件开发,集成姿态传感器与电调驱动接口。硬件工程完全开放,可供爱好者学习飞控硬件设计、移植自主飞行控制算法。项目名称取自希腊神话信使赫尔墨斯,寓意飞行器信息调度中枢。

从零打造无人机飞控:Hermes STM32 开源飞控完整方案封面
oshw_hqzl2026-08-04 11:59:29MIT
140
Star

PCBA

设计文件

KiCad图标Hermes-FlightController-main.zip14.78MB(6次下载)

EDA查看器

复制嵌入代码

详细介绍

一、项目背景与开发目标

项目初衷

市面上商用飞控(Betaflight 硬件)高度集成,但原理图封闭,不利于底层学习。作者目标:

  1. 独立完成飞控硬件全流程设计(原理图→PCB 布线);

  2. 使用通用、易采购元器件;

  3. 搭建基础硬件平台,后续自主编写姿态解算、PID 飞行控制固件;

  4. 全部设计文件开源,供学习者复刻、修改。

当前开发状态

  • 硬件阶段:原理图、PCB 布局全部设计完成

  • 软件阶段:正在开展 PCB 打样测试 + 飞控固件开发

  • ⚠️ 仓库暂无可用成品固件,仅提供 KiCad 硬件源文件。

二、完整硬件规格

核心器件清单

模块

器件型号

功能说明

主控 MCU

STM32F405RGT6

Cortex-M4 内核,168MHz,内置硬件 FPU,适合姿态矩阵运算;FPV 飞控经典主流芯片

IMU 姿态传感器

MPU-6050 / ICM-20948(兼容)

MPU6050:6 轴(加速度计 + 陀螺仪);ICM20948:9 轴,额外集成磁力计

气压计

BMP280

I2C 接口,获取大气压强,用于相对高度估算

动力输出

4 路 PWM 通道

直接驱动无刷电调 ESC,适配标准四旋翼

通信外设

UART、I2C、USB

USB 用于上位机调试、固件烧录;UART 外接接收机 / GPS;I2C 挂载传感器

硬件电路分区(原理图结构)

  1. MCU 最小系统模块

    外部高速晶振、BOOT 启动电路、复位按键、程序下载调试接口 SWD,完整 STM32 基础电路。

  2. 电源与 USB 模块

    USB 供电通路、LDO 线性稳压、防反接保护、电源滤波电路;支持电脑 USB 调试供电与机载电池供电双模式。

  3. 传感器电路分区

    • 基础 6 轴 IMU 电路;

    • 预留 9 轴 IMU 扩展位;

    • BMP280 气压计独立 I2C 接口。

  4. 连接器外设

    ESC 动力输出插座、串口外设插座、指示灯引脚、外部传感器拓展端子。

三、PCB 设计细节

  1. 物理尺寸与安装

    方形双层 PCB,四角预留减震橡胶柱安装孔,符合穿越机通用安装标准;支持减震安装,降低振动对 IMU 采样噪声。

  2. 布线策略

    • 传感器区域集中布局,缩短 I2C 信号线长度,降低电磁干扰;

    • 电源走线与信号走线分区,强弱信号分离;

    • 顶层、底层分区域铺地,提升电磁兼容性能。

  3. KiCad 工程文件

    仓库PCB目录内包含 .kicad_sch(原理图)、.kicad_pcb(PCB 工程),可直接打开导出 Gerber 光绘文件用于工厂打板。

四、开源协议与使用权限

项目采用 MIT License

✅ 允许:个人学习、硬件复刻、商业用途、二次修改、二次分发;

✅ 仅要求:保留原始版权声明;

❌ 协议不提供任何担保,打板、试飞风险由使用者自行承担。

五、适用人群与应用场景

  1. 目标人群

    • 嵌入式 / 无人机在校学习者,想要完整实践飞控硬件开发;

    • DIY 航模玩家,想脱离成品飞控,自主搭建控制系统;

    • 想要研究飞控电源、传感器硬件底层设计的工程师。

  2. 预期搭载平台

    小型四旋翼无人机(2~5 寸穿越机、微型航拍四轴)。

六、优势与现存短板

优势

  1. 全开源硬件,原理图透明,便于学习调试;

  2. STM32F4 平台生态成熟,大量开源姿态算法可移植;

  3. 元器件通用,采购门槛低。

短板与注意事项 ⚠️

  1. 无官方配套固件:拿到 PCB 后,需要自行移植开源飞控代码(如移植简化版 Betaflight、自研 Mahony 互补滤波姿态解算);

  2. 默认兼容 MPU-6050,该传感器噪声相比现代 ICM42688 更大,试飞时必须做好减震与数字滤波;

  3. 双层 PCB,无集成电流检测、OSD 图传模块,功能相比商用飞控精简;

  4. 项目仍处于硬件验证阶段,未经过长期飞行实测,潜在硬件 BUG 需要复刻者自行验证。

七、项目地址

https://github.com/aadilnaji/Hermes-FlightController