news 2026/4/16 19:32:20

基于stm32的四旋翼无人机的设计——飞行控制系统软件设计

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
基于stm32的四旋翼无人机的设计——飞行控制系统软件设计

2 四旋翼无人机设计总体思路

确定无人机基本需求,主要包括无人机的功能、性能、成本、功耗、尺寸和重量等。确定这些之后,就可以针对这些需求进行硬件模块的选择以及软件的初步构思。
对无人机进行系统设计,把实际问题转变为工程问题,确定总体的系统结构,再分别确定硬件结构和软件结构并画出流程框架,其中的重点是软件硬件之间的划分,划分的结果将对开发进度有着较大的影响。
对无人机进行详细设计,设计和选择符合无人机系统的具体构件。既包括硬件模块比如cup6050,也包括软件模块比如一些可以直接调用的函数。在这一阶段,更多的是需要特定的设计,并尽可能使具体结构优化。
最后,进行系统的集成与测试,通过对无人机系统反复的测试,修正构件中的错误,最后把软件程序进行固化。
2.1 软件设计的思路
四旋翼无人机硬件的开发,解决了怎么飞行的问题,用什么器件控制的问题,以及如何检测当前无人机姿态的问题。飞行看起似乎近在咫尺,但实际上,每一个电机都有自己的特性,给它们相同的参数,也会不完全一致的转动。周围环境,比如微风等扰动,也会使其失去平衡,从而达到不可控。
为了解决这些问题,笔者在姿态控制上选择以PID算法进行控制,无人机相当于有了一个自动调节的大脑。但想要使用PID,就需要实际飞行姿态的参数,因此,程序还需要把MPU6050采集的数据进行处理,这就用到了四元数姿态解算,得到欧拉角。采集的数据由于传感器的客观原因也常常不够准确,这就需要了卡拉曼算法进行滤波。通过这3个算法的配合,基本可以对飞行姿态进行控制。同时,在程序编写上以模块的形式,方便检测更改程序的错误以及进行调试。

3 四旋翼无人机的结构与运动姿态

3.1 无人机的结构
一般而言,无人机的机体架构为X型或十字型,这取决于机头方向的定义,而它们的主要区别在于坐标系的位置是不一致的。对于X型无人机,它的机头方向为两个机翼的中间,十字型无人机则是以其中一个机翼为正方向。两种机体架构各有优劣,但总体而言,以X型为机架的无人机性能更好,主要是通过调查发现,选用X型作为机架的无人机常常表现的更为稳定且易于操作。因此,本次设计选用以X型为机身构造。
X型四旋翼无人机是一种由4个独立的电机驱动,以X型架构为机身的飞行器。它的具体结构如图3.1所示,4个电机共同为无人机提供向上的动力,并且每一个都是独立的,从结构上看,四个电机处于同一水平面并且每个电机到中心的距离是相等的。以顺时针转动的电机2、电机4称为正桨,以逆时针旋转的电机1、电机3称为反桨。由图可以看出4个旋翼可以分为2组,并以在同一对角线的为一组,而且同组电机的旋转方向是一致的,相邻的两个电机是反向的。在两个旋翼转速完全相同的情况下,两个旋翼产生的反扭力矩方向相反,大小相同,便可抵消力矩,从而达到达到平衡。

图3.1X型四旋翼无人机具体结构

4 飞行控制系统硬件设计

如图4.1所示四旋翼无人机的硬件电路由STM32最小系统、电源、传感器、LED、和接口六大部分组成。主控制器STM32F103C8T6负责解算传感器模块采集的信息,并利用采集的信息提供飞行任务指令,同时结合PID控制算法,PWM波信号输出使电机转速发生有规律的变化,从而实现飞行器的可控飞行。

图4.1四旋翼无人机的硬件电路

5 软件设计总体思路

软件使用 keil MDK 5.14 集成开发环境。飞行控制软件主要包括以下几个方面。 mpu6050传感器把初始数据传送给STM32 单片机,采用I2C通信方式;得到飞行器的实时姿态数据,并进行滤波;四元数姿态解算得到实际姿态; PID控制姿态,使无人机在无法达到理论值时依旧处于稳定状态; 通过占空比的改变,使PWM波信号控制电机。具体程序框图如图5.1所示

图5.1四旋翼无人机的软件程序设计框图

6 系统调试与飞行测试

虽然程序经过较为严格的论证,并对每段程序进行了检查,但实际环境常常是多变的,比如信号传输可能被干扰,空气流动造成的扰动等,操作手法也可能造成飞行的不稳定,所以制作出的实物,需要根据实际情况进行微调。
在进行飞行测试时,笔者通过与团队的讨论,选择在宽阔的室内试飞,主要考量在于室内墙壁可以反射信号,无人机不容易失控,其次是测试阶段,选择扰动量小的地方,发现问题便于分析,从而便于整体的修改。
测试的内容主要包括无人机的飞行移动和悬停。图为四旋翼无人机飞行时的图片。动态性能良好,在飞行的测试中,四旋翼无人机能够按照遥控控制的方向进行前进、倒退、向上、向下、左移、右移倾角误差在±4°以内,飞行的姿态较为平稳。控制命令发送后,四旋翼无人机的响应时间在2s左右,系统响应实时性较好。不足之处在于,降落时需要缓慢下降,否则电源瞬间切断,直接掉落下来可能造成一些危险。总的来说,测试的结果达到了预期的设计要求。

7 总结

这次的毕业设计,我回顾了许多在大学期间所学知识,有高数、线代、控制理论、嵌入式、单片机等课程。回顾期间,一方面感受到自己深深不足,一方面又因为自己学过而不至于寸步难行。在面对一些未曾学习过的知识的时候,按照老师所教授的自学技巧,比如书看皮,文献看目录来找自己真正需要的东西,又如对于原理解释,理解数学解释对后续学习起到了事半功倍的效果。整体而言,这次的毕业设计使我受益良多。现对本次毕业设计总结如下
现对本次毕业设计进行总结,本文从四旋翼无人机的发展入手,对无人机飞行原理,以及飞行姿态控制进行了简单的描述,之后又对整个硬件的模块进行简单的介绍。有了这两个铺垫,软件内容的出现不会显的突兀,读者也能快速简单的了解整个四旋翼无人机,进而对软件部分的大致思路有个对实际的把握。
本文对软件部分进行了详细的论述,主要是对卡尔曼滤波、四元数姿态解算、PID这三个算法进行了浅薄的理解和详细的论述,在参考大量程序后,进而写出对应的程序。整体而言,本文对算法的论述占较大的篇幅,并且以较为通俗易懂的话写了出来,相对应的可以给初次接触该领域的读者一点参考。

文章底部可以获取博主的联系方式,获取源码、查看详细的视频演示,或者了解其他版本的信息。
所有项目都经过了严格的测试和完善。对于本系统,我们提供全方位的支持,包括修改时间和标题,以及完整的安装、部署、运行和调试服务,确保系统能在你的电脑上顺利运行。

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/4/16 14:28:59

无线LED照明系统

摘 要 本次毕业设计的题目是无线LED照明系统(Zigbee)的设计与实现。本论文就毕业设计的内容,选用Atmega16单片机作主控制器,系统地阐述了整个由Zigbee协议支持的无线LED照明系统的功能及实现。在指导老师的帮助下设计并实现了从底…

作者头像 李华
网站建设 2026/4/16 10:57:32

11个AI论文工具,支持LaTeX排版与多维度内容优化

工具对比排名 工具名称 核心优势 支持LaTeX 适用场景 aibiye AIGC率降个位数,兼容知网规则 是 AI痕迹强处理 aicheck 学术改写优化,语义保留佳 是 格式统一化 askpaper 降重降AI一体,20分钟快速响应 是 初稿优化 秒篇 人类特…

作者头像 李华
网站建设 2026/4/15 15:16:16

11种AI论文创作助手,提供LaTeX排版与语义优化双重支持

工具对比排名 工具名称 核心优势 支持LaTeX 适用场景 aibiye AIGC率降个位数,兼容知网规则 是 AI痕迹强处理 aicheck 学术改写优化,语义保留佳 是 格式统一化 askpaper 降重降AI一体,20分钟快速响应 是 初稿优化 秒篇 人类特…

作者头像 李华
网站建设 2026/4/16 12:22:48

智能化的11类论文辅助工具,兼容LaTeX并实现高效内容升级

工具对比排名 工具名称 核心优势 支持LaTeX 适用场景 aibiye AIGC率降个位数,兼容知网规则 是 AI痕迹强处理 aicheck 学术改写优化,语义保留佳 是 格式统一化 askpaper 降重降AI一体,20分钟快速响应 是 初稿优化 秒篇 人类特…

作者头像 李华
网站建设 2026/4/16 12:28:51

一种基于STM32的智能门锁系统的设计

第二章 整体方案设计 2.1 需求分析 搭建简单的智能门锁系统作品,需要相应的硬件与软件结合,本设计基于STM32的智能门锁系统主要实现的功能要求有: (1)显示屏显示操作界面; (2)使用者可以通过设置按键进入管理界面,可以…

作者头像 李华
网站建设 2026/4/16 12:21:41

解决AI生成重复内容问题:十大工具深度分析及实用改进方案

核心工具对比速览 工具名称 核心功能 适用场景 处理速度 特色优势 aibiye 降AIGC率查重 学术论文优化 20分钟 适配知网/格子达/维普规则 aicheck AIGC检测 风险区域识别 实时 可视化热力图报告 askpaper 学术内容优化 论文降重 20分钟 保留专业术语 秒篇 …

作者头像 李华