基于STM32的四旋翼无人机项目(一):基础知识篇

这篇具有很好参考价值的文章主要介绍了基于STM32的四旋翼无人机项目(一):基础知识篇。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

前言:本篇博客为飞控专栏的第一篇系统性概述文章,将对飞控系统进行详细讲解介绍。考虑到飞控项目具有一定工程复杂度,所以作者将整个项目进行分章节教学与讲解,希望可以给读者朋友带来更好地学习体验。项目将以 C-Quad 四轴无人机为工程样机,飞行器主控为 STM32F103C8T6,遥控为 STM32F103C6T6。项目代码为 HAL 库版本,该项目博客将把算法与硬件相结合,深入挖掘飞控的奥妙与原理。(代码开源!

硬件实物图:

基于STM32的四旋翼无人机项目(一):基础知识篇

基于STM32的四旋翼无人机项目(一):基础知识篇

效果图:

基于STM32的四旋翼无人机项目(一):基础知识篇

一、飞控概述

飞控即无人机飞行控制器,可理解为飞行器的大脑,其核心是微控制器MCU。微控制器基于外部传感器(如姿态传感器气压传感器GPS光流等)返回的数据,经过一系列处理与融合后,控制无人机的飞行姿态。飞控的种类有很多,常见的有:四旋翼、六旋翼和八旋翼无人机等(本项目专栏为四旋翼无人机项目)。

四旋翼无人机又叫做四轴飞行器,是一种小型的智能化产品。随着自动控制技术的更新换代以及人工智能广泛应用,使得无人机更加贴近人们的生活。其中,四旋翼无人机由于其价格低廉,结构稳定,性能优越,易于控制的特点而被广泛使用。

基于STM32的四旋翼无人机项目(一):基础知识篇

二、飞控相关知识点

2.1 pitch、yaw、roll角度

飞行器在飞行过程中有个重要的指标:飞行姿态。飞行姿态则涉及到如下欧拉角:pitch(俯仰角)、yaw(偏航角)、roll(横滚角)。

基于STM32的四旋翼无人机项目(一):基础知识篇

特别说明:飞机的坐标轴体系和AR眼镜是不一样的,指向机头的是X轴,指向右机翼的是Y轴,垂直向上的是Z轴(建议大家别人云亦云,多去参考正规性学术论文)。

pitch():俯仰,将物体绕Y轴旋转(localRotationY)

基于STM32的四旋翼无人机项目(一):基础知识篇

yaw():航向,将物体绕Z轴旋转(localRotationZ)

基于STM32的四旋翼无人机项目(一):基础知识篇

roll():横滚,将物体绕X轴旋转(localRotationX)

基于STM32的四旋翼无人机项目(一):基础知识篇

2.2 遥控知识点

基于STM32的四旋翼无人机项目(一):基础知识篇

飞行器通常都是需要设计配套遥控器的。当然,可以使用手机APP适配之后操作,也可以制作一个遥控手柄。本项目中四旋翼飞行器与遥控手柄通过 NRF24L01 2.4G 模块进行通讯。

油门:飞控的设计制作过程中,都会设计到一个关键词汇 “油门(throttle)” ,油门方向的遥感不具备自动回调的特性,通过油门方向的遥感控制飞行器的飞行高度。

解锁:高速旋转的机翼通常都具有一定的杀伤能力,为了防止简单误触造成飞行器意外起飞等情况。飞控的设计中存在锁门的这个概念,即:需要解锁操作,之后才能正常控制飞控。不同的遥控手柄的解锁方式往往不同,比较常见的解锁有: “外八字” 解锁和 “下上下” 油门解锁等。

上锁:飞行器飞行过程中难免可能出现意外情况,这个时候可以使用上锁操作强制锁定机翼转动。上锁方式同样根据实际情况设计。

三、四旋翼无人机飞行原理

四旋翼无人机主要分 “×” 型和 “+” 型两种,两种无人机的主要区别在于机头方向的选择。四旋翼无人机的简化结构如下图所示,无刷电机转动带动四个桨叶高速旋转产生向上的升力作用于无人机,当推动遥控器的油门使升力逐渐超过无人机自身重力时,四旋翼无人机便能够起飞升空,控制器发出的指令不断改变无人机的电机转速,就可以使无人机切换到不同的运动模式。考虑到“×” 型四旋翼无人机机动性更好,故本项目将采用 “×” 型四旋翼无人机设计。

基于STM32的四旋翼无人机项目(一):基础知识篇

本项目以 “×” 型飞行器为设计标准,故后续以 “×” 型飞行器的运动控制学进行分析,该类型飞行器结构图如下:

基于STM32的四旋翼无人机项目(一):基础知识篇

为了方便描述,将四旋翼无人机的四个电机分别编号为:Motor1、Motor3、Motor2、Motor4Motor1和 Motor3电机逆时针进行旋转,从而可以产生逆时针方向的扭矩,Motor2和 Motor4电机顺时针进行旋转,从而可以产生顺时针方向的扭矩。如此,四个旋翼旋转所产生的扭矩便可相互抵消。当四个旋翼具有相同的转速,产生的上升合力正好与自身重力相等,则飞行器将进入悬停状态!

3.1 垂直运动

基于STM32的四旋翼无人机项目(一):基础知识篇

如上图所示,在保证四旋翼无人机每个旋翼转速大小相同(产生的总扭矩为零),对每个旋翼增加/减小大小相同的转速,便可实现无人机的垂直上升/下降运动。

旋翼总升力>无人机重力,垂直上升;
旋翼总升力<无人机重力,垂直下降。

3.2 俯仰运动

基于STM32的四旋翼无人机项目(一):基础知识篇

将电机Motor1Motor4的转速减小或者将Motor2Motor3增加时,四旋翼会产生向前上方的力,使四旋翼向前飞行。反之,如果将Motor1Motor4的转速增加或者将Motor2Motor3减小时,四旋翼会产生向后上方的力,使四旋翼向后飞行。

3.3 滚转运动

基于STM32的四旋翼无人机项目(一):基础知识篇

将电机Motor1Motor2的转速增加或者将Motor3Motor4的转速减小时,四旋翼会产生向右上方的合力,使四旋翼向右飞行。反之,如果减小Motor1Motor2的转速或者增加Motor3Motor4的转速,四旋翼会产生向左上方的合力,使四旋翼向左飞行。

3.4 偏航运动

基于STM32的四旋翼无人机项目(一):基础知识篇

将电机Motor2Motor4的转速增加或者将Motor1Motor3的转速减小,四旋翼会向右旋转,实现向右偏航。反之,如果将Motor2Motor4的转速减小或者将Motor1Motor3的转速增加,四旋翼会向左旋转,实现向左偏航。

四、四旋翼飞行器控制结构

 一般情况下,四旋翼无人机由检测模块、控制模块、驱动模块以及电源模块四个部分组成。

基于STM32的四旋翼无人机项目(一):基础知识篇

检测模块:负责对无人机当前姿态进行量测,并对控制模块提供数据;

控制模块:负责对无人机当前姿态进行解算,优化控制,并对驱动模块产生相对应的控制量;

驱动模块:负责驱动4台电机进行旋转,从而使得无人机进行正常飞行;

电源模块:负责对整个系统进行供电,其中,分为控制供电与动力供电。

4.1 控制模块

飞控的控制模块即飞行器的微控制器MCU,现如今飞控多采用 STM32F4 系列的芯片,算力和成本都非常适宜。当然,本项目作者使用的 MCUSTM32F103C8T6 ,成本相对来说更低。当然,制作的飞控整体控制起来难度更大一点。MCU负责计算控制以及维持各个模块之间的通讯联动。

基于STM32的四旋翼无人机项目(一):基础知识篇

4.2 检测模块

检测模块则通常包括:惯性检测单元(MPU6050,磁力计等),气压计(MS5611等),电子罗盘(GPS等)。通过各类检测模块的运作,可以在一定程度上得到飞行器的位姿(位置和飞行姿态)。

惯性检测单元:惯性检测单元通常由姿态传感器 + 磁力计构成。航模新手的话仅使用六轴姿态传感器 MPU6050 作为惯性检测单元即可近似完成飞行器的姿态解算,得到飞行器的欧拉角度。本项目中的惯性检测单元仅使用 MPU6050。

基于STM32的四旋翼无人机项目(一):基础知识篇

问题:惯性检测单元为什么还需要磁力计的帮助?

欧拉3角:pitch(俯仰角)、yaw(偏航角)、roll(横滚角),其中的偏航角yaw,因为姿态解算算法的原因长期使用后会导致误差积累,故此需要使用磁力计的帮助进行校正。

气压计:气压计在飞行器中通常用来检测飞行器的飞行高度,帮助飞行器实现定高功能。常见的气压计为 MS5611 模块,MS5611 气压传感器是集合 SPI I²C (高达20 MHz)总线接口的高分辨率气压传感器,分辨率可达到 10 cm。内部有一个高线性度的压力传感器和一个超低功耗的 24 位AD。

基于STM32的四旋翼无人机项目(一):基础知识篇

4.3 驱动模块

本项目制作的为四旋翼飞行器,故需要驱动4个电机。飞行器的电机驱动需要设计专门的驱动电路或者使用电调装置。本项目使用如下驱动电路:

基于STM32的四旋翼无人机项目(一):基础知识篇

电路分析:

100Ω电阻:起到限流作用,在 MOS 开启瞬间时需要吃电流,如果电流过大,会导致瞬间开启,缩短 MOS 管的寿命。

10K 电阻:IC 在复位状态下,所有 IO 口都处于浮空输入状态,加 10K 下拉电阻就可以避免在单片机还没工作时,MOS 导通,电机疯狂旋转打伤人。

2302MOS:NMOS,高电平导通。通过 PWM 占空比控制 MOS 管的导通,从而控制电机的平均功率。2302 在门级开启电压 Vth=3.3V 下导通电流可达 3A,而最大的空心杯电机(8520)最大消耗电流>1A,如果按照瞬间导通的电流 2.5 倍计算,MOS 承受的电流应在 2.5A 左右。故 2302 符合使用条件。

电容:吸收电机产生的高频杂讯

4.4 电源模块

 飞行器的电源模块通常使用航模专用锂电池。由于四轴在飞行过程中,电量不断下降,当下降到一定程度后,可能会出现瞬间低于 3.3V,这样稳压就会无法正常工作,导致输出截断,所以配备升压。

升压:BL8530 升压 IC 需要 47uH 电感作为储能,内部集成类似 BOOST 升压电路,大家学过电路原理的都会学到 BOOST 升压电路。而这个肖特基二极管,在这里起到续流作用。

稳压:662K 3.3V 稳压 IC,稳压(LDO)这个很好理解。

基于STM32的四旋翼无人机项目(一):基础知识篇

航模的锂电池通常具有高电流的特性,保证有足够电流量去驱动电机转动。

基于STM32的四旋翼无人机项目(一):基础知识篇

五、本篇总结

本篇作为飞控专栏的第一篇文章,其主要目的为帮助读者朋友们了解飞控的基础原理和设计框架。后续作者将手把手教大家完成四旋翼飞行器的制作,项目的硬件原理图和程序代码将全部开源给大家。当然,飞控算是较为复杂的嵌入式设计,建议读者朋友除了参考本人的博客,还可以多借鉴“匿名者”等优秀的飞控设计。文章来源地址https://www.toymoban.com/news/detail-482918.html

到了这里,关于基于STM32的四旋翼无人机项目(一):基础知识篇的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 基于PID优化和矢量控制装置的四旋翼无人机(Matlab&Simulink实现)

     💥💥💞💞 欢迎来到本博客 ❤️❤️💥💥 🏆博主优势: 🌞🌞🌞 博客内容尽量做到思维缜密,逻辑清晰,为了方便读者。 ⛳️ 座右铭: 行百里者,半于九十。 📋📋📋 本文目录如下: 🎁🎁🎁 目录 💥1 概述 📚2 运行结果 2.1 PID优化 2.2 矢量控制装置  🎉3 参考

    2024年02月10日
    浏览(58)
  • 基于PID控制器的四旋翼无人机控制系统的simulink建模与仿真,并输出虚拟现实动画

    目录 1.课题概述 2.系统仿真结果 3.核心程序与模型 4.系统原理简介 4.1四旋翼无人机的动力学模型 4.2 PID控制器设计 4.3 姿态控制实现 4.4 VR虚拟现实动画展示 5.完整工程文件        基于PID控制器的四旋翼无人机控制系统的simulink建模与仿真,并输出vr虚拟现实动画,输出PID控制器

    2024年04月09日
    浏览(61)
  • 【无人机】基于 ode45实现四旋翼无人机姿态仿真附Matlab代码

     ✅作者简介:热爱科研的Matlab仿真开发者,修心和技术同步精进, 代码获取、论文复现及科研仿真合作可私信。 🍎个人主页:Matlab科研工作室 🍊个人信条:格物致知。 更多Matlab完整代码及仿真定制内容点击👇 智能优化算法       神经网络预测       雷达通信    

    2024年02月03日
    浏览(104)
  • 基于MiniFly魔改的共轴双旋翼无人机

    大学期间在实验室做的项目就跟MiniFly息息相关,因此我对MiniFly的基本结构有所了解,加之去年珠海航展的璇玑科技展出了衡系列无人机,勾起了我制作一台共轴双旋翼无人机的想法,当然,这也是我的毕业设计。废话不多说,先看看我的共轴双旋翼无人机。 共轴双旋翼无人

    2024年02月14日
    浏览(55)
  • 基于RRT算法的旋翼无人机安全和最小能量轨迹规划

    基于RRT算法的旋翼无人机安全和最小能量轨迹规划 概述: 无人机的轨迹规划是无人机自主飞行的关键问题之一。在飞行过程中,无人机需要在保证安全的前提下,以最小的能量消耗完成任务。本文将介绍如何使用RRT(Rapidly-exploring Random Tree)算法来实现旋翼无人机的安全轨迹

    2024年02月05日
    浏览(55)
  • 基于stm32的无人机控制系统设计

        在我国航空电子技术和通信技术的高速发展下,无人机应运而生[1]。对于人类来说,无人机无疑是一个伟大发明,它通过人工智能、信号处理以及自主驾驶等先进技术手段,实现了灵活的起降,低空循迹的自由飞翔等功能,同时具备了体积小、无人驾驶以及航程远等优点

    2023年04月08日
    浏览(99)
  • 基于Unity构建机器人的数字孪生平台系列2—四旋翼无人机三维模型

    系列2的主要内容是探讨如何自己构建一个模型并且导入Unity 。 3D仿真与其他类型仿真的一大区别是三维场景和三维模型。为了实现对某个对象的仿真,模型是必须的。当然,针对不同的仿真任务,需要描述对象也是不一样的。但是,一个可视化的三维模型是必须的。比如,通

    2024年02月06日
    浏览(99)
  • 无人机基础知识:多旋翼无人机各模式控制框图

    无人机(Unmanned Aerial Vehicle),指的是一种由动力驱动的、无线遥控或自主飞行、机上无人驾驶并可重复使用的飞行器,飞机通过机载的计算机系统自动对飞行的平衡进行有效的控制,并通过预先设定或飞机自动生成的复杂航线进行飞行,并在飞行过程中自动执行相关任务和

    2023年04月09日
    浏览(138)
  • 旋翼无人机常用仿真工具

    简单的质点(也可以加上动力学姿态),用urdf模型在rviz中显示无人机和飞行轨迹、地图等。配合ROS代码使用,轻量化适合多机。典型的比如浙大ego-planner的仿真: https://github.com/ZJU-FAST-Lab/ego-planner-swarm.git https://github.com/ethz-asl/rotors_simulator 利用gazebo仿真,提供gazebo中的简单四

    2024年02月07日
    浏览(50)
  • 多旋翼无人机调试问题分析

    一、电机和螺旋桨检查 在多旋翼无人机的调试过程中,首先需要检查电机和螺旋桨的状态。电机应转动灵活,无卡滞现象,且无明显磨损。螺旋桨应安装牢固,无松动现象,且桨叶完好无损。若发现问题,应及时更换或维修。 二、电池和充电器检查 电池是无人机飞行的能量

    2024年01月24日
    浏览(63)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包