基于STM32 MPU6050的小型四旋冀无人机设计

来源 :电脑知识与技术 | 被引量 : 0次 | 上传用户:wondercn
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
  摘要:设计了一款基于STM32微控制器和六轴运动处理传感器的小型四旋翼无人机。它采用STM32F103C8作为微控制器,利用MPU6050感应无人机的实时加速度和角速度信息,通过Wi-Fi通信获得遥控指令,并结合串级PID控制算法,对姿态信息进行解算,最终生成并输出控制电机转速所需的PWM波,使无人机稳定飞行。
  关键词:四旋翼无人机;STM32;飞行控制
  中图分类号:TP311 文献标识码:A
  文章编号:1009-3044(2020)19-0213-02
  开放科学(资源服务)标识码(0SID):
  随着信息技术、传感器技术和微机电技术的迅猛发展,无人机技术的研究已成当今的研究热点之一。若以外形结构来分类,无人机可分为固定翼无人机、无人直升机和多旋翼无人机等类型。而多旋翼无人机具有系统安全性好、可靠性高、负载能力强等特点,具有非常广阔的应用前景,其中,四旋翼无人机以其结构简单,操控方便等优点,被广泛应用于军事和民用领域,其应用场景包括如航空测量、航空施药、空中摄影、环境监测、货物投送、灾害现场搜救、电力石油基础设施巡检等领域。
  1 总体方案設计
  根据机翼与飞行方向的相对布局方式的不同,四旋翼无人机可分为十字型和X型两种模式。十字型无人机的机头方向指向某个旋翼,而X型无人机的机头方向则指向两个旋翼的正中间。十字型无人机因其机头方向明确,飞行控制相对简单;X型无人机三轴的姿态调整至少需要操控两个电机,因此操作更为快速灵活,适合特技飞行,也便于扩展功能。因此,本文采用X型四旋翼无人机方案。
  无人机系统由无人机和遥控器两部分组成,用户利用手机APP通过Wi-Fi无线通信实现对无人机的远程控制,无须配备专用遥控器,在Wi-Fi网络环境下,打开智能手机上的专用遥控APP,可对无人机进行遥控。Wi-Fi和蓝牙技术一样,同属于短距离无线技术,与蓝牙技术相比,它具备更高的传输速率,更远的传播距离,已经广泛应用于笔记本、手机、汽车等广大领域中,因此,相对于蓝牙通信,利用Wi-Fi无线通信遥控无人机,具有更快的响应速度和更远的控制距离。无人机系统的研发主要包括智能手机遥控APP软件和无人机软硬件研发,而无人机的飞控系统的研发是本文的研究重点。
  2 无人机硬件设计
  无人机的硬件由STM32微控制器、直流电机、六轴运动处理传感器MPU6050.Wi-Fi模块ATK-ESP8266和锂电池及其电源管理模块等硬件组成,其基本硬件架构(略去电源管理模块)如图1所示。
  作为飞控系统的核心处理器,基于ARM Cortex M3内核的32位微控制器STM32F103C8的工作主频高达72MHz,可满足快速解算四旋翼无人机姿态和位置信息的功能需求。其自带多个nc、SPI和UART高速通信接口,方便与其他模块进行通信,并集成多个时钟定时器,能输出多路PWM波便于控制四个电机的转速。
  MPU6050为6轴运动处理传感器,它集成了3轴MEMS陀螺仪和3轴加速度计,用于采集无人机姿态信息,微控制器通过nc接口与MPU6050进行信息交互。四旋翼无人机具有6个自由度,包括沿3个坐标轴方向的线运动和沿3个坐标轴方向的角运动,这些姿态信息可通过MPU6050采集得到。陀螺仪通过测量无人机的角速率、积分得到飞行姿态角来描述无人机的角运动。加速度计通过测量无人机轴向受力得到无人机3个轴向的加速度,通过积分得到飞行速度与距离来描述无人机的运动。
  有刷电机具有启动快、制动及时、扭矩大、控制电路相对简单等优点,而无刷电机多用于尺寸偏大的飞机,它无法单独使用,需经无刷直流电调驱动后,才能通过控制PWM波占空比来调节电机转速。空心杯电机常用在尺寸非常小的飞机上,或者用于打舵的舵机上,因本文设计的无人机要求体积小重量轻,所以采用了规格为720的空心杯有刷电机,配备55mm叶片。
  3 软件设计
  3.1 串口通信模块
  系统使用了两个串口:一是利用USART1作为微控制器与PC端调试用的串口;二是利用USART2作为微控制器通过Wi-Fi模块与手机端的通信接口,实现智能手机上遥控APP与无人机之间的信息交互。
  首先将两个串口的初始化,配置相应的GPIO引脚。再实现以下3个函数:
  uint16_t USART_ReceiveData(USART_TypeDef* USARTx),用来从指定的串口中接收一个字节的数据,并通过返回值返回。
  void USART_SendData(USART_TypeDef* USARTx, uint16_tData),用来向指定串口发送1个字节的数据,USARTx指定串口编号,Data为要发送的字节数据。
  void USART_OUT(USART_TypeDef* USARTx, char *Data-Addr),用来实现一连串字符的发送,USARTx指定串口编号,DataAddr为要发送的字节数据地址。
  利用一是3个函数即可实现串口通信中的数据收发。
  3.2 PWM模块
  PWM模块实现通过控制定时器输出PWM信号来控制4个电机的转速。PWM输出相关的定时器配置步骤如下:
  (1)配置定时器输出通道对应的CPIO引脚。
  (2)配置定时器的时基单元。
  (3)配置定时器的输出比较器。
  (4)使能自动重载计数和自动重载比较值。
  (5)开启定时器。
  最后编写函数void Motor_SetPwm(int16_t PWMI,int16_tPWM2,int16_t PWM3,int16_t PWM4),用来将PWM信号传送给电机。   3.3 PID控制
  四旋翼无人机是一个欠驱动、强耦合的非线性系统。想要改变其飞行动作,只需改变电机转速差即可,而要改变无人机的位置,则需要改变电机的总升力与无人机的姿态才能实现。因此将飞行控制系统分成姿态控制系统与位置控制系统。角度单环PID控制算法仅仅考虑了飞行器的角度信息,如果想增加飞行器的稳定性并提高控制精度,必须控制其角速度,于是就形成了角度/角速度串级PID控制算法,如图2所示。
  期望角度来自遥控器,反馈角度来自传感器,二者的偏差作为角度环的输入,角度环PID输出角速度的期望值;角速度期望值减去传感器反馈的角速度得到角速度偏差值,该值作为角速度环的输入,角速度环PID输出姿态控制量,并将其转换为4路PWM波,去控制四个电机,从而控制无人机的四轴。
  3.4飞控系统主程序
  系统启动与硬件初始化完成后,首先获取实时的三轴加速度和三轴角速度,然后从遥控器接收期望值,并通过PID算法得出各个电机的调整量,将调整量转换成PWM信号传送给四个电机,调整它们的转速来实现控制整个系统的飞行姿态。
  本文的微控制器STM32F103C8為裸机工作模式,具体主程序工作流程如图3所示。当系统启动后,无人机的LED指示灯开始闪烁,锂电池为无人机续航提供动力。STM32F103C8获取来自MPU6050传感器的值,结合通过遥控器发送过来的期望值,再通过相关算法计算出控制电机所需的PWM信号控制电机的转速,实现无人机位置和姿态的变化。此外,主程序要单独开启一个线程,用来读取从MPU6050传感器上获得的实时姿态数据和通过Wi-Fi接收的遥控指令。
  4 结论
  设计了一款基于STM32微控制器和运动处理传感器的X型小型四旋翼无人机。硬件部分包括微控制器STM32F103C8、6轴运动处理传感器MPU6050、Wi-Fi模块ATK-ESP8266、720规格空心杯有刷电机、锂电池及电源管理模块等。软件设计方面,STM32F103C8采用裸机工作模式,程序主要由主程序、串口通信模块、PIC控制模块、nc通信模块和PWM模块等部分组成。实验结果表明,该无人机能通过手机APP遥控使其较稳定飞行。但是由于受到电池容量和所采用无线通信技术等因素的影响,无人机的飞行高度和飞行距离受到了较大限制,因此,增加无人机载荷能力使其功能更强,飞得更高更远将是设计团队下一步的工作目标。
  参考文献:
  [1]尹艺臻,张立华,邢玉鹏.基于STM32F405RGT6四旋翼无人机设计[J].电子技术,2018,512(08):16,57-59.
  [2]王照兵,石佩玉,李凯,等.基于嵌入式开发的小型四旋翼无人机系统设计[J].通讯世界,2019,026(009):210-211.
  【通联编辑:朱宝贵】
  收稿日期:2020-03-25
  作者简介:何枫(1991-),男,湖南常德人,工程师,本科,研究方向为智能电网、智能家居。
其他文献
摘要:基于移动平台的课堂教学模式将借助移动平台打破现有教学模式,实现课前监督,课中解决重点、难点,课后强化练习,任何一个环节都能有效监控学生的学习状态,并有效改进教学模式。  关键词:数字化教学资源;移动学习;评价体系  中图分类号:TP311文献标识码:A  文章编号:1009-3044(2020)25-0140-02  1引言  数据库原理与应用是计算机及其相关专业比较重要的一门专业基础课程,
摘要:本文使用LoadRunner 对开发的银行系统进行相应的性能测试。从性能需求分析出发,设计相应的测试用例,录制测试脚本并对脚本进行相应的二次开发,实现模拟真实多用户并发操作,设计场景并对场景进行合理配置,最后对测试运行结果进行整理并分析,得出系统性能指标的满足情况以及系统的瓶颈。  关键词:LoadRunner;脚本;性能测试  中图分类号:TP311 文獻标识码:A  文章编号:10
摘要:地方性石油文化作为中国传统石油文化的重要组成部分,在对其地域文化的利用与传承,当地石油产业的开发与推广等多方面开展中起到了关键性作用,通过以大庆地域为例的石油地域背景进行分析与探索,提出了地方性特色石油文化数据库的共建理念,为发展石油文化及地域性石油文化提供自己的建议与新想法。  关键词:石油文化;数据库;大庆;地域性  中图分类号:TP311 文献标识码:A  文章编号:1009-3044
摘要:在常规的程序设计教学中,递归算法能在运行过程中实现自我调用,能将大问题层层转化为小规模相似问题来进行求解,虽然其理解上抽象难懂但却能够轻巧地解决很多复杂问题,是结构化程序教学上重点和难点。通过对递归算法原理的分析,提出抓住三个要点及构造递归表达式的学习方法。结合Scratch简洁的编程风格,通过举例提出基于Scratch的递归算法教学引导思路,并分析探讨更有效的递归教学方法。  关键词:递归
摘要:随着智能终端的普及,移动互联技术蓬勃发展,将移动终端引入课堂以优化教学成了教育领域的一个热门话题,项目组成员将雨课堂智慧教学平台成功引入c程序设计课程教学,在基于雨课堂教学数据采集和分析的基础上,本文对混合式教学的效果进行了评价和分析。  关键词:移动终端;雨课堂;c程序设计  中图分类号:TP311 文献标识码:A  文章编号:1009-3044(2019)30-0149-03  1研究背
摘要:目前Office套件中的Excel和Access组件在职場中都是应用很广的办公软件,它们各自都有自己擅长的领域。在实际学习和使用过程中它们大多是被作为独立的学习对象进行的,本文利用实际案例来说明将Excel和Access结合起来解决问题,充分利用它们各自的长处,能够更好地解决问题、提高工作效率。  关键词:Excel;Access;数据处理;查询  中图分类号: TP311 文献标识码
摘要:线上线下混合式教学模式已经是高校目前教学流行趋势,而应用型高校更加注重学生动手能力,为使学生充分地利用在校时间自主学习,增强他们的实践能力,提高学习效果,以《C语言程序设计》课程为例,探讨基于微课的模块化教学设计,在模块化教学内容的基础上,设计录制相应的微课视频,运用现代教育技术实现线上线下混合式教学。  关键词:微课;模块化;C语言  中图分类号:TP311 文献标识码:A   文章
摘要:当前的计算机程序应用大都以嵌入式系统为主,且是以DSP核心构建而成的。这一系统的应用与开发模式主要是采用了C语言汇编的方法,依托DSP系统的存在周期和开发周期对其进行移植性的调整与提升,进而降低嵌入式系统的缺陷,提升嵌入式系统的稳定性。所以,很多DSP开发人员对于C语言的应用较为广泛,且开发的系统稳定性和运算与命令执行效率较高。研究将针对当前C语言在DSP嵌入式系统中的开发模式和应用方法展开
摘要:本文从“互联网 ”所处现状出发,了解关于“互联网 ”近几年的发展情况,同时结合各项资料了解现下各所高校对“互联网 ”竞赛的开展情况,针对这一情况,分析出“互联网 ”竞赛为所处阶段不同的计算机专业学生创新能力所产生的重要影响。  关键词:互联网 ;计算机专业;创新能力  中图分类号:TP311 文献标识码:A  文章编号:1009-3044(2020)12-0153-02  1引言  有关“互
摘要:进入21世纪以来,信息技术重构着现代社会的生产力和生产关系。陈国良院士指出实证思维、逻辑思维和计算思维这三种思维模式组成了人类认识世界和改造世界的基本科学思维内容。我国近十年也有不少学者致力于计算思维教育的深度研究。本文运用CiteSpace软件绘制作者、机构、关键词等知识图谱,对我国在中国学术网络出版总库(CNKI)刊载的计算思维教育高水平研究性文献进行分析并予以述评。研究发现:2019年