基于stm32的无人机控制系统设计

这篇具有很好参考价值的文章主要介绍了基于stm32的无人机控制系统设计。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

整篇文章有两万字左右,字数太多了,实在是懒得全部放在这上面来,太废时间了。需要完整论文可主页联系


第一章 前言

1.1项目背景和意义

    在我国航空电子技术和通信技术的高速发展下,无人机应运而生[1]。对于人类来说,无人机无疑是一个伟大发明,它通过人工智能、信号处理以及自主驾驶等先进技术手段,实现了灵活的起降,低空循迹的自由飞翔等功能,同时具备了体积小、无人驾驶以及航程远等优点,帮助人们完成高难度和高风险任务,在民用和军用两个方面都发挥着重要作用,在民用领域,如农林业的调查与监管、玩具航模、航拍、气象探测、卫生公共安全等;在军事领域方面如维护我国领土安全、军事侦察等,各个领域都涉及到无人机的应用[2]。随着无人机技术的成熟和应用的需求,无人机的性能不断提高,新一类的无人机产品——多旋翼无人机成功面世,它在固定翼及单翼无人机的基础上提高了稳定性,可操作性和机动性都进一步得到加强,并且成本较低[3],可以实现垂直起降及自主悬停,低空飞行时可以灵活迅速地改变机身方向,能够轻松完成复杂空中飞行任务和负载任务。多旋翼无人机涉及到的飞行原理技术非常广泛,需要多种技术共同结合才可使其组成完整的飞行控制系统,从简单的外部机架结构设计到内部稳定性控制的系统设计,都有较强的原理性,同时需要强大的理论知识支撑。虽然它的飞行原理复杂程度不高,但涉及到的各个层面都需要非常高的技术指标和要求[4]。从面世到当前,无人机的发展非常迅速,在各个领域都运用到无人机,应用前景非常广泛。
    如今,研究无人机成为当下的热点,在当今的社会种不断涌现出大量的无人机研究成果,慢慢的渗入人们的日常生活当中,它所带来的便利正在改变人们的生活方式,产生了极其重要的影响,在社会生活方面都可起到一定的作用,它可作为一种新的交通方式,给人们提供了一个穿越糟糕道路的途径;它在农业作业方面采用一种新型高效率的农作产量方式,以较低的生产成本来提高农业耕作效率[5];它可为城市的规划与建设提供一种测量地理位置的途径,根据无人机监测所返回的信息数据可以提高地理信息的获取率,更好的促进城市建设[6]。但这些民用无人机不同于军用及商用无人机,其飞行姿态容易受到气流的干扰,如何实现姿态控制响应快是多旋翼无人机系统设计的关键,相信随着技术的不断成熟,无人机所存在的关键性问题都能得以解决,将为以后无人机的普及提供强有力的帮助,由此可见,多旋翼无人机在如今的社会生活方面占据重要的地位,发展潜力巨大,因此研究无人机姿态控制系统具有极大的实际意义。

1.2国内外发展现状

    相比于国内,国外更早开始研究无人机,在1907年,Breguet兄弟是最先开展四旋翼式飞机试验的研究者,由此实验产生了国内外的第一架多旋翼飞行器,无人机的概念由此而来[7]。但由于当时技术水平的限制,惯性导航系统重量较大,对飞行器的载荷要求较高,大大限制了多旋翼飞行器的发展,导致多旋翼飞行器体积庞大、笨重,且电子自动控制系统不成熟,无法满足人们的期望,在之后的很长一段时间里都无法解决当时的关键技术问题,改变现状。直到微机电系统技术[8]的出现,由该技术所制造的传感器成本较低,可使用时间较长,功率损耗很低,因其体积相对较小多被运用于小型多旋翼无人[9],增强了多旋翼无人机的实用性,为后来的无人机发展打下基础。但是其传感器噪声很大,于是人们又花了很长时间来研究设计降噪和姿态控制算法[10]。要进行姿态控制就先要做到姿态解算,它是控制无人机状态的基础条件,姿态分析数据越准确,无人机所获取到的姿态数据就越靠近于无人机的真实控制状态,对于促进其他算法的改进提供了帮助[11]。有研究者提出采用模糊PID控制来对小型无人机进行姿态解算,利用传感器信息融合技术,将多种传感器所采集到的数据进行整合优化,从而能获得与被测目标相接近的信息分析或描述,能加强无人机在高距离中飞行的精度和稳定性,从而提供可靠的飞行条件[12]。也有研究者提出了采用互补滤波算法来解决无人机姿态解算的问题[13],互补滤波算法虽然可以通过改变滤波增益,从而使传感器误差对姿态解算产生的影响得到进一步的降低,但是却无法进行计算陀螺零偏漂移的误差,为此研究者进一步提出了采用卡尔曼滤波方法估算载体的姿态[14],利用陀螺仪、加速度计和磁阻传感器进行组合,产生各种各类的线性或者非线性滤波算法估算陀螺零偏误差,以及使用神经网络的方法进行姿态融合[15]。直到2005年,通过不断的进行算法改进,稳定性较高的多旋翼飞行控制器产生了,即使这个多旋巽飞行器所用到的传感器设备并不是当下所用的高科技设备,也不能实现在空中自由飞行,但这是在飞行器领域当中取得历史性的一个技术突破,从此打开了多旋翼飞行器领域的大门。
    相比于国外开展多旋翼无人飞行器的研究,国内对多旋翼无人机的研究起步比较迟,早期带头研究的机构较少,最早开始相关工作研究的是高校与研究院,其中作为代表的哈尔滨工业大学设计了系统鲁棒控制器、天津大学研究多旋翼故障重构技术、南京航空航天大学设计一个微型机载视觉系统,使用视觉同步和映射算法来实现飞行轨迹跟踪能力等,尽管所有的研究成果都取得了不错的成绩,但研究仍处于理论算法与仿真验证阶段,能实现遥控操纵使飞行器在空中悬停的高校或研究院非常少,还无法实现自主飞行[16]。直到2012年,大疆研发出多旋翼航拍无人机,自此航拍逐渐出现在日常生活中,因能较稳定的飞行、操作简单,体积较小同时可装载摄像头用于画面传输而深受各个领域的广泛使用。同时不断出现研发无人机的国内企业,使得研究多旋翼无人机的相关机构将目光从国外转移到了国内。近年来,尽管我国在无人机领域发展较为迅速,但因起步较晚,同时缺乏相关的核心技术,与其他发达国家存在的差距还是较大的,但随着无人技术不断成熟进步,相信在以后将会变得更加智能化,实用化,在未来的现代化城市中能发挥非常重要的作用[17],在各个领域能帮助解决某些关键性问题,实现全方位运用,也能普及到日常生活中,提高人们的生活水平质量。

1.3本文研究的主要内容

    本设计的主要研究内容是设计一款基于STM32单片机的多旋翼无人机系统,通过编写相关模块程序,完成稳定飞行测试,在此该系统上,作一些姿态检测算法及系统仿真,本文设计要求如下:
   (1)搭建四轴飞行器机械结构。完成四轴飞行硬件结构设计。
   (2)建立四轴飞行器系统模型。对飞行器控制原理进行分析及介绍。
   (3)硬件模块设计。对飞行器控制系统进行PCB硬件模块设计。
   (4)姿态检测系统设计,通过姿态检测融合算法,对传感器的数据进行采集,并对姿态融合算法下的姿态数据进行分析。
   (5)控制算法的设计,运用并设计PID算法对飞行器进行控制,对飞行器多次加入干扰,从稳定性,快速性,准确性上进行分析及比较。
   (6)四轴飞行器程序设计。通过keil5软件进行程序编程,完成飞行器的程序设计。
   (7)飞行效果测试及调试。将编写完成的程序下载到四轴飞行器中进行测试及调试,并对实验结果进行分析。

第二章 设计方案论证与选择

2.1 方案论证与选择

    本设计主要以STM32单片机为主控芯片,通过接收遥控器的指令从而控制无人机的资态,主控制板包括姿态传感器、无线发射接收模块、电子调速模块以及降压模块等;采用成品遥控器及接收机相互通信的方式进行无线遥控。结合本系统的研究内容及方案设计,通过对无人机所需电路设计的进行选择论证,确定合适的方案完成电路设计。

2.1.1 主控制器的选择与论证

    控制器是无人机控制器的核心部分,对四轴无人机 的控制实现起着至关重要的作用,在四轴无人机控制系统中,传感器的数据采集及融合,以及传感器数据的运算都通过微控制器处理芯片实现。在飞行控制器进行姿态解算算法与控制算法运算时,会涉及到大量的数学计算,所以在控制器芯片选择方案上应考虑计算特性强、计算迅速的控制器芯片。同样,无人机控制器中的各类软件模块必须有多样化的接口技术与外设实现采样,如姿态传感器的采集必须使用IIC总线协议或者SPI总线协议实现数据通信,所以选择控制器芯片应具备多样化的外设以及简单的电路设计,进一步提高硬件系统工作稳定性。在综合考虑成本,技术要求及功耗的前提下,且符合飞行控制系统性能要求,控制器芯片的选用应考虑效率高、低功耗、外设多样化的新型高性能嵌入式单片机[18]。本设计经过对半导体公司意法半导体所研发的STM32系列的单片机设计进行分析对比,给出以下几种方案进行选择。
    方案一:选择STM32F1系列的单片机,STM32F1系列的单片机是基于M3内核框架设计,最高主频可达72Mhz,内部SRAM最大64K字节,拥有5个串口,21个ADC采集通道,8个16位定时器。
    方案二:选择STM32F4系列的单片机,STM32F4系列的单片机是基于M4内核框架设计,最高主频可达168Mhz,内部SRAM最大192K字节,支持单精度浮点运算,拥有6个串口,24个ADC采集通道,12个16位定时器和2个32位定时器。
    综上所述对比,本设计选用STM32F4系列的单片机作为核心控制系统,综合外设需求与程序容量,最终选择STM32F4系列下的STM32F407VET6单片机,该单片机型号为100脚LQFP封装,片上内存FLASH为512K字节,SRAM为192K字节,且支持硬件FPU。

2.1.2 姿态传感器的选择与论证

    无人机控制器上通过姿态传感器进行无人机姿态与位置的测量。其中,无人机的姿态测量通过采集陀螺仪三轴角速度,加速度计三轴重力加速度以及磁力计三轴磁力强度的数据进行算法融合得到,高度测量通过采集气压计的数据经过数字滤波融合得出无人机飞行高度。选择适合无人机工作环境的传感器对于无人机控制设计是尤为重要的,精度高,性能好的传感器能够准确无误的感知出无人机的姿态与位置。同时考虑成本、功耗以及电路设计,本文经过部分惯导传感器进行分析对比,给出以下几种方案进行选择。
1、 三轴重力加速度计,三轴角速度计方案选择对比:
    方案一:使用ICM20602六轴传感器来获取三轴重力加速度以及三轴角速度的数据。ICM20602是一个六轴运动跟踪装置,内部结合了一个三轴角速度计以及一个三轴重力加速度计。同时内部包含一个1KB的数据缓冲器,能够减小串行总线接口数据通信量,可透过允许系统处理设备突然读写传感器数据信息,并且加入低功耗运行模型来减低耗电量。其角速度计的可编程满量程及重力加速度计可编程满量程有四种模式,其中角速度计的敏度误差为±1%,重力加速度计噪声为100μg/Hz。
    方案二:使用MPU6050六轴传感器来获取三轴重力加速度以及三轴角速度的数据。MPU6050是一款九轴姿态处理感应器。它里面整合了一套三轴旋转陀螺仪和一套三轴加速度计,还有一套可扩充的数字运动信息处理器,利用IIC总线端口连通一套第三方的数字感应器,例如磁力计。扩展之后就能够使用其IIC端口提供一个九轴的信号。陀螺仪可测范围及加速度计可测范围有四种模式。内部包含一个1KB的数据缓冲器,可有助于降低系统功耗。
    通过对比ICM20602和MPU6050,ICM20602虽然性能上较为优秀,但其价格也相对较高,参考资料也较少,考虑到硬件成本问题以及资料参考方面,本文选择方案二,以MPU6050作为三轴加速度,三轴角速度的数据采集。
2、三轴磁力计方案选择对比:
    方案一:使用HMC5883L作为三轴磁力计的数据输出。HMC5883L 是一款高集成磁力计模块,内部带有数字接口弱磁传感器芯片,可应用于多种磁场检测领域。使用IIC数字接口,内置自检功能,12位ADC,能在强磁场环境中输出高精度的航行角度,误差可达1度左右,带有三种驱动器,用于消磁、自测和偏移补偿,分别为置位、复位和偏置驱动器。最大输出频率可达160hz。
    方案二:使用AK8975作为三轴磁力计的数据输出。AK8975适用于罗盘应用的三轴磁力计装置,内置A/D转换器,用于磁力计的数据输出。输出分辨率为13Bit(0.3uT/LSB),测量范围为±1200µT,采用IIC总线接口,同时还支持四线SPI总线接口。带有内部自检功能,拥有四种不同的工作模式,分别为断电模式、单测量模式、自测试模式和熔断器接入模式。
    通过对比HMC5883L和AK8975,AK8975输出的分辨率更高,因此本文选择AK8975测量三轴磁力计的数据。
3、气压传感器方案选择对比:
    方案一:选择MS5611测量无人机飞行高度。MS5611是一款高分辨率气压高度传感器,具有SPI和IIC总线接口,其高度分辨率可达10CM,该传感器能够输出24位的气压值和温度值,功耗低,仅1uA,其工作电压可选择1.8V或3.6V。
    方案二:选择SPL06测量无人机飞行高度。SPL06是一款具有高精度,功耗低等特点的小型数字气压传感器,支持IIC总线接口和SPI总线接口,高精度模式下可达到±5cm的误差,带有FIFO,可存储最新的32个温度测量值或者气压测量值,工作电压为1.2V-3.6V。内部信号处理器可将气压和温度传感器的输出转换为24位结果。
    通过对比MS5611和SPL06,SPL06精度更高,且价格相对比MS5611而言,价格更低,因此,本文选择SPL06来测量无人机的飞行高度。
    综上选择,本文选择六轴传感器MPU6050,三轴磁力计传感器AK8975以及气压传感器SPL06来获取无人机的姿态与位置数据。

2.1.3 显示模块的选择与论证

    为了更好的展示无人机的飞行轨迹及状态,通常在无人机控制系统上增加一些显示模块,本文对几种显示模块进行分析对比,给出以下几种方案进行选择:
    方案一:通过0.96寸OLED屏模块来显示无人机的飞行数据及飞行状态。0.96寸OLED屏模块采用SSD1306作为驱动芯片,支持IIC总线接口以及SPI总线接口,具有多个指令,可以通过指令修改OLED的工作模式,具有多种功能,可以显示汉字、字符及图案等数据信息。
    方案二:通过全彩RGB灯珠混搭出不同颜色来对应出无人机不同的飞行状态。全彩RGB灯珠是大功率LED灯源的一种,由三原色灯芯片构成,相比较同等亮度的灯珠,耗电量更少,使用寿命更长,其响应速度快,可实现色彩的动态变化及数字化控制。通过对三原色灯芯片的控制,可达到全彩渐变的变色效果。运用空间大,可用于多种场面和环境中。
    综上选择,本文选择全彩RGB灯珠来对无人机的状态进行显示。在夜间或者光线不明的环境中能够更好的显示出无人机当前的状态,相对于OLED屏幕模块,在处理一些复杂的任务过程中可能会造成OLED屏模块的损坏及掉落,则全彩RGB灯珠不会造成损坏及脱落,反而能更好的显示无人机当前的状态,方便地面人员的操作。

2.1.4 电源模块的选择与论证

    四轴无人机通常采用大容量,大电流的3S航模锂电池进行供电,而无人机控制器中的各种元件均有特定的工作电压范围,为了能让无人机主控制板各个元器件在合适的电压下稳定工作,需要将3S航模锂电池电压降压到5V,由于姿态与位置传感器的工作电压均在3.3V,所以需要将5V电压降到3.3V供给传感器。本文针对几种降压电源模块进行分析对下,给出以下几种方案进行选择:
1、5V降压电源模块方案选择:
    方案一:采用开关电源芯片LM2596配合一些外围电子元器件构成稳压电路。LM2596系列是一款能提供3A电流保护的降压开关电源型集成化稳定晶片,里面包含多种防护集成电路,分别电流控制电路、电压防护电路以及热关断集成电路等,设计简单方便,可通过少部分外围元件构成稳定工作降压电路。
    方案二:采用稳压集成电路芯片LM7805搭建直流稳压电源。LM7805是一款常用的三端稳压性元件,输出电压为5V,内部带有多种电路,输出电流最大可达1.5A。
    考虑到四轴无人机要接入的外设传感器过多,所需的电流过大,本文采用开关电源芯片LM2596配合一些外围电子元器件构成5V直流稳压电路。
2、3.3V降压电源模块方案选择:
    方案一:选用RT9193稳压器为传感器进行供电。RT9193是专门为无线和射频电路等苛刻性能及空间要求设计的一款便携式设备芯片,内部具有多种保护功能,如温度、过流等。拥有超快速响应及宽工作电压范围(2.5V-5.5V)等特性。
    方案二:选用AMS-1117稳压器为传感器进行供电。AMS-1117是一款正向低压降线性稳压器,片内具有过载、过热保护电路,输出电流为1A,适用于小型电源管理设备电池供电的仪器。
    根据芯片手册,本文选择AMS-1117芯片为传感器进行供电,一是价格相比于RT9193价格低,二是容易焊接,三是所需外围元器件少。

2.1.4 数据存储模块的选择与论证

    由于四轴无人机的惯导传感器在出厂时会有误差,为了减去四轴无人机开机校准传感器误差步骤,会将误差值数据存储在一些存储芯片中,在四轴无人机开机时即可直接读取传感器误差值数据。本文给出以下几种数据存储方案进行选择:
    方案一:选用W25QXX系列的存储芯片。W25QXX是一款采用SPI总线接口串行Flash存储器,带有多种写保护,有多种系列存储器可供选择,比普通的串行存储器性能高,数据保存时间长打20年。
    方案二:选用AT24C02存储器。AT24C02是一款串行存储器,内部存储量2KB,采用IIC总线接口通信,内部带有一个8字节的页写缓冲器以及专门的写保护功能,数据保存可长达100年之久,掉电数据不会丢失。
   文章来源地址https://www.toymoban.com/news/detail-402039.html

到了这里,关于基于stm32的无人机控制系统设计的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

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

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

相关文章

  • 无人机原理::(一)模型框架与控制系统框架详解

    上图为PX4固件框架总览,蓝色方块是指飞控系统中的各个模块。 下面分别介绍各个模块的作用: Mavlink模块最为常用,可以调整为off_board模式以配合机载电脑,机载电脑可以将控制信息与飞控的姿态信息打包成MAVLink消息传给飞控 对于图中的位置控制与姿态控制模块,主要关

    2024年02月10日
    浏览(54)
  • 基于STM32的四旋翼无人机项目(一):基础知识篇

    前言: 本篇博客为飞控专栏的第一篇系统性概述文章,将对飞控系统进行详细讲解介绍。考虑到飞控项目具有一定工程复杂度,所以作者将整个项目进行分章节教学与讲解,希望可以给读者朋友带来更好地学习体验。项目将以  C-Quad 四轴无人机为工程样机,飞行器主控为

    2024年02月08日
    浏览(95)
  • 基于STM32的四旋翼无人机项目(二):MPU6050姿态解算(含上位机3D姿态显示教学)

    前言: 本文为手把手教学飞控核心知识点之一的 姿态解算 —— MPU6050 姿态解算 (飞控专栏第2篇)。项目中飞行器使用 MPU6050 传感器对飞行器的姿态进行解算( 四元数方法 ),搭配设计的 卡尔曼滤波器 与一阶低通滤波器进行数据滤波。当然,本篇博客也将为读者朋友教学

    2024年02月10日
    浏览(53)
  • stm32无人机-飞行力学原理

    惯性导航,是一种无源导航,不需要向外部辐射或接收信号源,就能自主进行确定自己在什么地方的一种导航方法。 惯性导航主要由惯性器件计算实现,惯性器件包括陀螺仪和加速度计。一般来说,惯性器件与导航物体固连,加速度计测量物体运动的加速度,已知初始状态

    2024年02月07日
    浏览(41)
  • 【无人机控制】基于模型预测控制MPC无人机实现轨迹跟踪附Matlab代码

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

    2024年04月28日
    浏览(37)
  • 基于simulink的无人机姿态飞行控制仿真

    目录 1.算法描述 2.仿真效果预览 3.MATLAB核心程序 4.完整MATLAB         无人机是无人驾驶飞机的简称(Unmanned Aerial Vehicle),是利用无线电遥控设备和自备的程序控制装置的不载人飞机,包括无人直升机、固定翼机、多旋翼飞行器、无人飞艇、无人伞翼机。广义地看也包括临近

    2024年02月02日
    浏览(63)
  • 基于STM32楼梯层控制系统

    项目目标意义: 随着社会的发展、 科技的进步以及人们生活水平的逐步提高, 各种方便于生活的遥控系统开始进入了人们的生活。 电梯的发展是由于需要从山坡上运输包括煤和材在内的原材料而引发的,而到了今日,电梯的已经遍布于各种写字楼,住宅,工厂,医院等。其

    2024年02月02日
    浏览(44)
  • 基于STM32的温度控制系统

    提示:记录毕设 基于STM32的温度控制系统,主控使用STM32F103ZET6,在正点原子的精英板上开发(本人也在野火板子上测试成功)。 1.1设计(研究)目标: 我们研究一种基于STM32的智能温度控制系统。该系统以STM32F103作为主控芯片﹐配备了PTC加热器、测温模块﹑等一系列模块。本文

    2024年02月03日
    浏览(56)
  • m基于PID控制算法的四旋翼无人机飞行控制simulink仿真

    目录 1.算法描述 2.仿真效果预览 3.MATLAB核心程序 4.完整MATLAB   无人机采用常见的四旋翼无人飞行器,如图1所示。       PID 控制器,即控制器的控制方式为 P 比例调整, I 积分调整以及 D 微分调整三个部分构成, PID 控制器是目前为止应用最为广泛的控制方式。 PID 控制器具

    2023年04月22日
    浏览(79)
  • 基于一致性的多无人机协同编队控制——(1)研究现状

            随着现代化社会的快速发展,智能体编队在军事、航空领域都呈现出了巨大的应用发展前景,多智能体编队也逐渐成为了自动控制领域的研发热门。无人机编队控制是多智能体系统自主协同控制的重要部分,无人机编队从初始位置出发,采用一定的控制算法,通过

    2024年02月05日
    浏览(55)

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

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

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

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

二维码1

领取红包

二维码2

领红包