TI杯四旋翼飞行器_第1页
TI杯四旋翼飞行器_第2页
TI杯四旋翼飞行器_第3页
已阅读5页,还剩14页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、2014年 TI 杯大学生电子设计竞赛报告A题:四旋翼飞行器摘要 : 小型四旋翼飞行器是一种通过对四个旋翼联合驱动而实现垂直起 降的无人飞行器,是一个模块化、具有较高硬件灵活性和较好操控性的平台装 置,这个平台装置能够为科学实验、工程监控、气象监测、灾害预警等提供很 好的应用平台。本文以自制小型电动四旋翼飞行器作为研究平台,通过对 MPU6O50专感器测得运动数据研究,实现对其空中运动姿态的数学描述,建立 完整的动力学模型,并针对姿态解算方法和飞行控制算法展开研究,最终完成 飞行器的稳定悬停等研究目标。关键词:四旋翼飞行器;MPU605专感器;运动姿态;动力学模型 ;稳定悬停目录一、系统设计要

2、求 . - 1 -1. 1 、任务 - 1 -1. 2 、设计相关要求 - 1 -1.2.1 、基本要求 . 错误! 未定义书签。1.2.2 、 发挥部分 . - 1 -二、系统方案论证与选择 . - 1 -2.1 、系统基本方案 - 2 -2.1.1 、处理器选取方案 . - 2 -2.1.2 、轨迹探测模块选取方案 . 错误! 未定义书签。2.1.3 、高度传感器选取方案 . - 3 -2.1.4 、平衡传感器选取方案 . 错误! 未定义书签。2.1.5 、电源模块选取方案 . - 4 -2.1.6 、电机驱动模块选取方案 . - 4 -2.1.7 、加速度模块选取方案 . 错误! 未定义

3、书签。2.2 、系统各模块的最终方案 - 5 -2.2.1 、方案描述 . - 5 -2.2.2 、具体方案 . - 5 -三、系统的硬件设计与实现 . - 7 -3.1 、系统硬件的基本组成部分 - 7 -3. 2 、主要单元电路的设计 - 7 -3.2.1 、控制电路 . - 7 -3.2.2 、摄像头循迹电路 . 错误! 未定义书签。3.2.3 、超声波测距电路 . 错误! 未定义书签。3.2.4 、电机驱动电路 . - 8 -四、系统软件设计 . - 9 -4.1 、基本要求流程图 - 9 -4.2 、超声波发送和接收模块流程图 - 9 -4.3. 软件流程图 . - 10 -4.4.

4、 主要算法程序代码 . - 11 -五、系统测试 . - 14 -5.1 、测试仪器 - 14 -5.2 、指标测试 - 14 -5.2.1 、测试方法和条件 . - 14 -5.2.2 、测试数据及测试结果分析 . - 14 -六、总结 . - 15 -参考文献 - 16 -、系统设计要求1. 1、任务(1) 设计制作一架能够自主飞行的四旋翼飞行器1.2、设计相关要求四旋翼飞行器能够完成以下飞行动作:(1) 飞行器能够根据起飞前预置的指令起飞,飞离地面高度应超过30cm, 飞行距离(水平)应超过60cm,然后飞行器应能平稳降落。(2) 飞行器能够根据指定(键盘设定)的飞行高度及降落地点(方向

5、及距离) 连续稳定地完成起飞、指定高度水平飞行、平稳降落等动作。(3) 飞行器能够根据起飞前预置的指令垂直起飞,起飞后能够在50cm以上 高度平稳悬停5s以上,然后再平稳缓慢降落到起飞地点;起飞与降落 地点水平距离不超过30cm。(4) 其他自主发挥设计的飞行动作。二、系统方案论证与选择根据题目要求,系统可以划分为电源部分、传感器部分、控制部分、电机驱 动部分;其中电源部分:3.7V1200mA锂电池。模块框图如图2所示。TT图2系统模块框图2.1、系统基本方案为比较方便和经济实惠和可行的实现各模块的功能,分别作以下几种不同的 设计方案并进行论证。2.1.1、处理器选取方案采用比较普及的c51

6、处理器,51单片机比较普及,价格低廉,学习资料 比较多,易于自主的学习与掌握,而且这方面的图书和教材比较多, 学习资料易 于获取。但是由于飞行器飞行时MCU需要高速的处理各个传感器发送来的数据 并及时的发出控制信号调节控制试飞行器能够平稳飞行,而C51在处理速度和运算能力上远远满足不了飞行器飞行时岁数据的处理需求。故舍去该方案。万案一、采用FPGA, FPGA是操控层次更低,所以自由度更大的芯片,对FPGA的编 程在编译后是转化为FPGA内的连线表,相当于FPGA内提供了大量的与非门、 或非门、触发器(可以用与非门形成)等基本数字器件,编程决定了有多少器件 被使用以及它们之间的连接。只要FPG

7、A规模够大,这些数字器件理论上能形成 一切数字系统,包括单片机甚至 CPU。FPGA在抗干扰,速度上有很大优势。但 是FPGA的价格较贵,电路设计比较难且其引脚密集,不利于焊接。故舍弃去该采用ARM公司的STM32F103C8T6处理器进行数据处理,STM32F103处理 器系列STM32F103C8T6,核心处理器:ARM32位Cortex-M3 CPU,芯体尺寸: 32-位 速度:72MHz ;连通性:2个IIC接口,5个USART接口(,3个SPI接 口( 18 Mbit/s ),两个和 IIS 复用,CAN 接口,USB 2.0 全速接口,SDIO 接口, 外围设备:定时器,ADC,D

8、AC,SPI,IIC和UART ;程序存储器容量:64KB ;程序存储器类型:32-512KB的Flash存储器;6-64KB的SRAM存储器;电压-电源(Vcc/Vdd) : 2.0-3.6V,用ARM处理器可比较方便简单的操作。在处理数 据的速度能力上也能够满足飞行器在飞行时对数据处理的要求。综合考虑方案三更符合实际情况相对易于实现,故采用第三套方案。2.1.2、传感器模块选取方案万案一只采用三轴加速度传感器,三轴加速度传感器具有体积小和重量轻特点,可 以测量空间加速度,能够全面准确反映物体的运动性质,在航空航天、机器人、 汽车和医学等领域得到广泛的应用。三轴加速度传感器的好处就是在预先不

9、知道 物体运动方向的场合下,只有应用三维加速度传感器来检测加速度信号。 但是采 用三轴加速度传感器,须将采集到的信号进行计算,由于飞行器在飞行过程中, 当三个方向上的加速度为零时,根据牛顿第二定律飞行器有可能处于匀速延某一 方向运动或静止状态,无法有效的判断飞行器具体是那种状态,会产生不可预定 的情况。另外单凭三轴加速度传感器无法保持飞行器的平衡,无法实现飞行器的原地悬停及飞行过程中的平衡调整,而且需要的计算量会很大,故舍去该方案。采用MPU6050 9轴运动处理传感器,它集成了 3轴MEMS陀螺仪,3轴 MEMS加速度计,以及一个可扩展的数字运动处理器 DMP,可用I2C接口连接 一个第三方

10、的数字传感器,比如磁力计。MPU6050对陀螺仪和加速度计分别用 了三个16位的ADC,将其测量的模拟量转化为可输出的数字量。为了精确跟踪 快速和慢速的运动,传感器的范围都是用户可控的。一个片上1024字节的FIFO 有助于降低系统功耗。陀螺仪是一种空间相角传感器,主要检测空间某些相位的 倾角变化、位置变化,主要用于空间物理领域,特别在航空、航海方面有较多的 用途,如:飞机上的陀螺仪,当飞机在做360°翻转的时候,陀螺仪将会保持原始的基准状态不变。陀螺仪传感器最主要的特性是它的稳定性和进动性,可以测出飞行器行进方向及进行平衡调整,可以实现飞行器的悬停,以及姿态调整。由 于本系统是四旋

11、翼飞行器,所以需要较高的稳定性,因此采用此传感器。综合考虑方案二更利于实现,故采用第二套方案2.1.5、电源模块选取方案采用四节电池供电,经三端稳压器 7805稳压后送给MCU和光电对管等需 要5V供电的部分,驱动四个电机。该方案简单,但是电池在用一段后会有一个 管压降,使得电路得到的电压不稳定,不利于PWM调速。而且,电池的重量过大,容量小,飞行时间过短,内阻会随使用时间增大,驱动电机的电流变小甚 至不稳定,不利于飞行器的飞行,此外,废旧电池会对环境造成污染,不利于环 保。采用高性能聚合物锂离子电池,可以提供 3.7V以上的电压,经过整流滤波 之后供给MCU、传感器、直流电机等直接使用。该方

12、案解决了电池重量的影响, 此电池电容量大,足以让飞行器工作数十分钟,不存在电压不足而导致飞行器不 稳定的情况,可以充电循环利用,有利于环境保护,且达到本系统的基本设计要 求。故采用此方案。综合考虑方案二更利于实现,故采用第二套方案。2.1.6、电机驱动模块选取方案万案一采用S8050三极管为驱动元件构成驱动电路,8050是非常常见的NPN型晶 体三极管,在各种放大电路中经常看到它,应用范围很广,主要用于高频放大。 也可用作开关电路。但是S8050内有一定大小阻值,会减小通过电机的电流,这 样就减小了飞行器的最大升力。可能导致飞行器无法起飞,故舍去此方案。采用场效应管管SI2300为驱动元件构成

13、驱动电路,SI2300是一种MOS 管,其广泛应用于广泛应用于电池充电器,普通电源,智能开关电源,灯具,功率开 关,LED,车载,玩具,电动车,电脑主板等方面,使用该场效应管内阻值相比 NPN型三极管8050低,可降少功耗,且其具有开关作用,适合小于500mA的电流通电,符合该电路设计,故选取此方案。综合考虑方案二更利于实现,故采用第二套方案。2.2、系统各模块的最终方案经过仔细分析和论证,决定了系统各模块的最终方案如下:221、方案描述四翼飞行器本身是围绕 MCU组织起来的。MCU的任务是读取物理传感器 (MPU605传感器)的测量结果,给出控制信号控制电机,让飞行器起飞,通过 一个控制反馈

14、回路,CPU对电机发送调节转速的指令使飞行器平稳飞行并保持一 疋咼度。控制程序向四翼飞行器发送飞行命令。我们也有调节飞行器上控制参数的程 序模块,并且会记录下传感器的测量结果,方便调整控制回路。2.2.2、具体方案(1) 控制模块:采用 ARM公司的STM32F103C8T6为主控芯片。(2) 传感器模块:MPU605传感器。(3) 电源模块:采用3.7v1200mah锂电池电源直接供电。(4) 电机模块:采用空心杯直流电机。(5) 电机驱动元件:SI2300等。2.2.3、控制算法介绍(1)电机速度控制算法PWM脉冲宽度调制(PWM)是英文“ Pulse Width Modulation ”

15、的缩写,简称脉 宽调制,是利用微处理器的数字输出来对模拟电路进行控制的一种非常有效的技 术,广泛应用在从测量、通信到功率控制与变换的许多领域中。脉宽调制(PWM基本原理:控制方式就是对逆变电路开关器件的通断进行 控制,使输出端得到一系列幅值相等的脉冲, 用这些脉冲来代替正弦波或所需要 的波形。也就是在输出波形的半个周期中产生多个脉冲,使各脉冲的等值电压为正弦波形,所获得的输出平滑且低次谐波少。按一定的规则对各脉冲的宽度进行 调制,即可改变逆变电路输出电压的大小,也可改变输出频率。PW啲一个优点是从处理器到被控系统信号都是数字形式的,无需进行数模 转换。让信号保持为数字形式可将噪声影响降到最小。

16、噪声只有在强到足以将逻 辑1改变为逻辑0或将逻辑0改变为逻辑1时,也才能对数字信号产生影响。在程序设计中,PWMR用4组定时器实现,在一个周期内,由高电平翻转为 低电平,高电平占的时间越长,电机的转速越快。假设一个周期为固定值T,高电平占用时间为m (m<T),则定时器定时为m时I/O输出为高电平,定时为T-m 时间内为低电平。频率越高对控制的性能越好,过渡越平滑,电机的震动感越小。(2)平衡控制PID算法在过程控制中,按偏差的比例(P)、积分(I)和微分(D)进行控制的PID 算法是应用最为广泛的一种自动算法。它具有原理简单,易于实现,适用面广, 控制参数相互独立,参数的选定比较简单等

17、优点;对于过程控制的典型对象 “一阶滞后+纯滞后”与“二阶滞后+纯滞后”的控制对象,PID算法是一种 最优控制。PID调节规律是连续系统动态品质校正的一种有效方法,它的参数整 定方式简便,结构改变灵活。三、系统的硬件设计与实现3.1、系统硬件的基本组成部分本设计是一个图像、机、电一体的综合设计,在设计中运用了检测技术、自 动控制技术和电子技术。系统可分为传感器检测部分和智能控制部分。传感部分 包括图像循迹模块、超声波测距模块,智能控制部分包括系统中控制器件根据由 传感器变换输出的电信号进行逻辑判断, 控制飞行器的电机,完成了飞行器的直 线飞行,升高,降落,起飞等各项任务。控制部分包括五个主要单

18、元电路:瑞萨 控制电路、电机驱动电路、平衡模块、测距模块、循迹模块。系统硬件原理框图如图3所示。飞荷器聊L5¥,比啲區H块图3原理框图3. 2、主要单元电路的设计3.2.1、控制电路用ARM公司的STM32F103C8T6作为主控芯片,其控制电路原理图如下:图8超声波测距原理图324、电机驱动电路利用三极管SI2300、10K电阻和二极管构成一个驱动电路,其工作原理图 如下所示:四、系统软件设计4.1、基本要求流程图图a发送模块流程图图b接收模块流程图图13超声波发送和接收模块流程图43软件流程图44主要算法程序代码#in clude"r_cg_macrodriver.h&

19、quot;#in clude"r_cg_cgc.h"#in clude"r_cgn tc.h"#in clude"r_cg_serial.h"#in clude"r_cg_userdefi ne.h"#in clude"mytype.h"exter n float faccx,faccy,faccz,fgyrox,fgyroy,fgyroz;exter n void task_mpu6050(/oid);exter n U8 get_mpu6050_modeVoid);extern void a

20、tttitude_calculate(unsignedint timer_us,float gx,float gy,float gz);exter n void q4_to_euler_rpy(Q4 *dat,RPY* ang);extern void curatt_init(void);exter n Q4 curattX;exter n RPY currrpy;void R_MAIN_Userlnit( void);void mai n(void)R_MAIN_UserI nit();curatt_i nit();while (1U)task_mpu6050();if(0K=get_mpu

21、6050_mode() 一 一 atttitude_calculate(4000,fgyrox,fgyroy,fgyroz); q4_to_euler_rpy(&curattX, &currrpy);void R_MAIN_UserInit( void) 一 一EI();#include "mytype.h" #include "math.h"Q4 curattX=1,0,0,0;RPY currrpy=0,0,0;float math_rsqrt(float nu mber)long i; float x2, y;x2 = nu mbe

22、r * 0.5F;y = nu mber;i = * ( long * ) &y;i = 0x5f3759df - ( i >> 1 );y = * ( float * ) &i;y = y * ( 1.5F - ( x2 * y * y );return y; voidcuratt_i nit(void)curattX.w = 1;curattX.x = 0;curattX.y = 0;curattX.z = 0;void atttitude_calculate(u nsig nedi nt timer_us,float gx,float gy,float gz)

23、 float a_rsqrt;float qa,qb,qc;float timesec=timer_us*0.000001;gx *= (0.5f * timesec);gy *= (0.5f * timesec);gz *= (0.5f * timesec);qa = curattX.w;qb = curattX.x;qc = curattX.y;curattX.w += (-qb * gx qc * gy - curattX.z * gz); curattX.x += (qa * gx + qc * gz - curattX.z * gy); curattX.y += (qa * gy -

24、 qb * gz + curattX.z * gx); curattX.z += (qa * gz + qb * gy - qc * gx);a_rsqrt = math_rsqrt(curattX.w*curattX.w + curattX.x*curattX.x +curattX.y*curattX.y + curattX.z*curattX.z); curattX.w *= a_rsqrt; curattX.x *= a_rsqrt;curattX.y *= a_rsqrt;curattX.z *= a_rsqrt;void q4_to_euler_rpy(Q4 *dat,RPY* an

25、g) float gx, gy, gz,x_2,w_2;gx = 2 * (dat->x*dat->z - dat->w*dat->y);gy = 2 * (dat->w*dat->x + dat->y*dat->z);x_2 = dat->x*dat->x;w_2 = dat->w*dat->w;gz = w_2 -x_2- dat->y*dat->y + dat->z*dat->z;gz*= gz;an g->yaw = -1*ata n2(2*dat->x*dat->y -

26、2*dat->w*dat-> z, 2*w_2 + 2*x_2 - 1); an g->roll =-1* ata n( gx* math_rsqrt(gy*gy + gz);an g->pitch = ata n( gy* math_rsqrt(gx*gx + gz);五、系统测试5.1、测试仪器表2测试使用的仪器设备序号名称、型号、规格数量备注1UNI-T数字万用表1胜利公司2直流电压源DF1731SC2A1宁波中策电子有限公司3秒表精度0.01s14米尺15示波器16安全框15.2、指标测试5.2.1、测试方法和条件在硬件电路设计时用万用表测试元件的阻值,电压,电

27、流等。用示波器看 电路上产生的信号以及信号的特征值。 秒表测试飞行器起飞和飞行时间是否达到 要求。米尺在做安全框时测量尺寸和飞机飞行的高度。在整个测量过程中始终要 有安全框来保护测量人员的安全, 但是安全框不能影响观察的视线, 直到测量结 束才能撤去。5.2.2、测试数据及测试结果分析计时精度分析由于飞行器在空中的难控制性和题目要求决定测量时间只要能大于一定是 的值即可并不需要精确到固定的值, 飞行的高度只要大于一米小于两米即可, 左 右摆动不得超过一米五,并且飞行过程中以不碰到安全框为原则。飞行时间完全符合要求。(2)超声波测距分析安全框内的最大高度测量距离为两米,超声波在空气中的速度以300M/S计算其误差非常小完全符合飞行器的飞行高度要求。(3)摄像头定位测试在测试之前把A区和B区的图像信息存储在 MCI中,飞行器在飞行过程中只 要检测到飞行在A区或者B区上方则控制电机转速缓慢降落在指定区域内,在实际测试中虽然不能降落在正中心但是还是降落在指定区域内即能符合要求。六、总结本系统以瑞萨RL78/G13芯片为核心控制部件,配合以陀螺

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论