基于STM32的四轴飞行器设计.docVIP

  1. 1、本文档共3页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
基于STM32的四轴飞行器设计

精品论文 参考文献 基于STM32的四轴飞行器设计 安徽师范大学物理与电子信息学院 安徽 芜湖 241000 摘 要:四轴飞行器具有结构简单、体积小、单位体积能产生更大升力等优点,在军用、民用等领域应用广泛。本设计采用STM32微处理器作为主控芯片,通过MPU6050惯性传感器扩展磁力计HMC5883输出9轴运动数据,利用2.4G模块进行遥控,并最终通过PID算法实现了飞行器的自主稳定飞行。 关键词:四轴飞行器 惯性传感器 PID算法 一、引言 四轴飞行器是无人飞行器的一种,飞行器的动力由四个旋翼式的飞行引擎提供。由于四轴飞行器具有结构简单、体积小、单位体积能产生更大升力等优点,使得四轴飞行器的应用范围越来越广泛,从军用到民用、商用领域都有涉及。近十几年来,随着微系统、传感器以及控制理论等技术的发展,四轴飞行器的研究取得了极大的进步。四轴飞行器的发展也更趋于小型化、多样化。本设计采用STM32微控制器作为运算处理单元,通过IIC总线读取惯性传感器数据,通过四元数算法和卡尔曼滤波算法进行融合后进行姿态解算,从而得到当前飞行器姿态角度。微控制器利用当前得到的姿态角度与期望的姿态角度作对比,得到偏差角度输入到PID控制算法,算法的输出控制四个电机的转动,从而实现飞行器自主稳定飞行。 二、系统结构 整个系统由主控单元、数据采集电路、通信电路、电机驱动电路和电源电路几部分组成。基本工作原理是:微控制器采集九轴运动传感器数据,通过算法解算出飞行器姿态,然后通过PID算法调节各个电机转速,实现飞行器的稳定飞行;通信模块接收遥控器发送的信号并传递微控制器,之后微控制器根据接收到的命令控制飞行器调整飞行姿态。系统结构框图如图1所示。  图1. 四轴飞行器结构框图 1.主控单元。主控单元采用意法半导体公司生产的STM32F103T8U6。芯片基于ARM crotex-M3内核,工作频率能达到72MHz,具有64KB的片内程序存储器,20KB的SRAM,1个SPI接口,1个IIC接口,2个USART接口以及2个10通道的ADC,足够满足系统要求。并且芯片具有VFQFPN36封装,大小仅为6mm*6mm,极大地节省了电路板上的空间。 2.数据采集电路。数据采集电路采用的是MPU6050惯性传感器、HMC5883磁力计和MS5611气压传感器。MPU6050惯性传感器内部集成3轴陀螺仪,3轴加速度计,通过芯片自带的从IIC接口扩展磁力计HMC5883后,可构成一个9轴的姿态输出模组。另外,芯片内自带一个数字运动处理器DMP,可以直接输出四元数,大大减少了CPU的运算时间。MS5611气压传感器是由MEAS(瑞士)推出的一款SPI和I2C总线接口的新一代高分辨率气压传感器,分辨率可达到10cm,可以准确地实现四轴飞行器的定高飞行。 3.通信电路。通信电路采用工作在2.4~2.5GHz通用ISM频段的无线收发芯片nRF24L01作为无线控制。无线收发器包括:频率发生器、增强型SchockBurstTM模式控制器、功率放大器、晶体振荡器、调制器、解调器。微控制器通过SPI总线控制24L01接收遥控器发送的信号,并相应改变飞行姿态。遥控器采用带有功率放大的无线模块,具有六个通道,可以实现飞行器的上下、左右、前后运动,并具有旋转控制和油门控制,能实现飞行器的灵活稳定飞行。 4.电机驱动电路。系统采用4个十字对称分布的直流电机提供升力,电机驱动电路由N沟道增强型场效应管搭建,通过STM32引脚输出的PWM信号控制电机的转速。 三、程序设计 ??统上电后首先进行硬件的初始化,包括初始化时钟、定时器、IIC总线、SPI总线以及各种外部芯片等等。初始化完成后系统进入主循环。定时器每隔1ms中断一次,在中断程序中将全局变量count加1,当count等于100的时候清零。所以程序每隔10ms进行一次姿态解算,并经过PID算法控制4个电机的转速,调节飞行器姿态。每隔20ms接收无线遥控数据,并对指令进行解析,根据指令控制飞行器的各种动作。每隔100ms检查一次电池电量,当检测到电量不足时向遥控端发出提醒信号。 参考文献 [1]程学功 四轴飞行器的研究与设计[D].杭州:杭州电子科技大学,2012。 [2]陈振兴 基于STM32的微型四轴飞行器研究与设计[D].天津:河北工业大学,2013。 [3]STMicroelectronics STM32 Reference manual[R].,2010。 [4]蒙博宇 STM32自学笔记[M].北京:北京航空航天大学出版社,2012。 [5]NORDIC

文档评论(0)

xyz118 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档