收藏 分享(赏)

2015全国大学生电子设计大赛作品报告.doc

上传人:精品资料 文档编号:9168429 上传时间:2019-07-26 格式:DOC 页数:13 大小:454.89KB
下载 相关 举报
2015全国大学生电子设计大赛作品报告.doc_第1页
第1页 / 共13页
2015全国大学生电子设计大赛作品报告.doc_第2页
第2页 / 共13页
2015全国大学生电子设计大赛作品报告.doc_第3页
第3页 / 共13页
2015全国大学生电子设计大赛作品报告.doc_第4页
第4页 / 共13页
2015全国大学生电子设计大赛作品报告.doc_第5页
第5页 / 共13页
点击查看更多>>
资源描述

1、1 2015 年全国大学生电子设计竞赛 多旋翼自主飞行器(c 题)2015 年 8 月 15 日 2 摘 要旋多翼自主飞行器由 RL78/G13MCU板(芯片型号 R5F100 LEA),STM32 单片机模块(加 SD卡),CMOS 摄像头,A2212/13T 新西达电机。STM32 单片机输入信号到 RL78/G13MCU板,启动飞行器和 CMOS摄像模块,RL78/G13MCU 飞控模块矫正飞行器在空中的姿态,实现悬停,前进,后退等功能,CMOS 模块将拍摄的视频内容存储在 STM32模块内置的 SD卡里。当飞行到目的地时各模块自动停止工作。飞行器能一键式启动,并开始航拍,从 A 点起飞

2、,飞向 B 区,在 B 区降落,但不是中心,当飞行结束后,拔掉 SD 卡,能顺利的通过 P0 机回放,在飞行过程中,始终在电子示高线 H1 和 H2 的区间内。3 目 录目录1. 方案论证与比较 .41.1 四旋翼算法方案 .41.2 STM32 控制方案 .51.3 CMOS 视频模块方案 .51.4 四旋翼飞行器结构与原理理论 .52理论分析与计算 62.1 四旋翼飞控算法误析 .62.2 PID 算法误差分析 .73.测试方案 .83.1 测试仪器 83.2 测试环境 .84.测试结果 .84.1.基本要求测试数据 84.2.综合性能分析结论 84.3 心得体会: 9参考文献 .9附录一

3、、总体电路原理图 9附录二、主要软件程序 .104 1. 方案论证与比较 1.1 四旋翼算法方案 方案一:采用欧拉角法欧拉角法静止状态,或者总加速度只是稍微大于 g 时,由加计算出的值比较准确。使用欧拉角表示姿态,令 , 和 代表 ZYX 欧拉角,分别称为偏航角、俯仰角和横滚角 。 载体坐标系下的 加 速 度(axB,ayB,azB)和参考坐标系下的加速度(axN, ayN, azN)之间的关系可表示为(1) 。其中 c 和 s 分别代表 cos 和 sin。axB,ayB,azB 就是 mpu 读出来的三个值。这个矩阵就是三个旋转矩阵相乘得到的,因为矩阵的乘法可以表示旋转。(1)axBccs

4、saxNys cyz z 飞行器处于静止状态,此时参考系下的加速度等于重力加速度,即(2)0xNyzag把(2)代入(1)可以解:(3)2()xByzarctg(4)yBzarct5 即为初始俯仰角和横滚角,通过加速度计得到载体坐标系下的加速度即可将其解出,偏航角可以通过电子罗盘求出。方案二:四元数法(通过处理单位采样时间内的角增量(mpu 的陀螺仪得到的就是角增量) ,为了避免噪声的微分放大,应该直接用角增量-抄的书)本项目采用的是方案一。1.2 STM32 控制方案 方案一: 直接激活飞控模块(RL78/G13MCU) ,可以很好的与飞控进行协调,实现飞控模块的启动与停止。方案二:使用 S

5、TM32 直接控制飞行器飞行。在植入的程序里包含对四旋翼的控制算法和自启动和自停止,还有视频模块的处理,但太过复杂。 本项目组结合本题相关要求。对模块之间的协调和信号的传输进行处理,决定采用项目一。1.3 CMOS 视频模块方案通过图像传感器对实时图像的采集,得到道路的信息,对当前采集到的图像信息做出判断,从而得到道路的情况,之后通过进一步控制实现循迹功能。 本例程利用 OV7620 CMOS 摄像头模块成像 1 米外路径图像(白底一条黑线) ,将一帧数据转换成“0”“1” 镜像到 MCU RL78/G13 的 RAM 中。如图 1.1图像二值化存储示例。图 1.1 1.3 总体方案描述:如图

6、 1.3 6 图 1.3 1.4 四旋翼飞行器结构与原理理论1.4.1 飞行器结构旋翼对称分布在机体的前后、左右四个方向,四个旋翼处于同一高度平面,且四个旋翼的结构和半径都相同,四个电机对称的安装在飞行器的支架端,支架中间空间安放飞行控制计算机和外部设备。结构形式如图 1.1 所示。1.4.2. 工作原理四旋翼飞行器通过调节四个电机转速来改变旋翼转速,实现升力的变化,从而控制飞行器的姿态和位置。四旋翼飞行器是一种六自由度的垂直升降机,但只有四个输入力,同时却有六个状态输出,所以它又是一种欠驱动系统。图 1.4 飞行器的结构形式2理论分析与计算 2.1 四旋翼飞控算法误析vx = 2*(q1q3

7、 - q0q2); /四元素中 xyz 的 vy = 2*(q0q1 + q2q3);vz = q0q0 - q1q1 - q2q2 + q3q3 ;/ error is sum of cross product between reference direction of fields and direction measured by sensors7 ex = (ay*vz - az*vy) ; /向量外积在相减得到差分就是误差ey = (az*vx - ax*vz) ;ez = (ax*vy - ay*vx) ;exInt = exInt + ex * Ki;/对误差进行积分eyInt

8、 = eyInt + ey * Ki;ezInt = ezInt + ez * Ki;/ adjusted gyroscope measurementsgx = gx + Kp*ex + exInt;/将误差 PI 后补偿到陀螺仪,即补偿零点漂移gy = gy + Kp*ey + eyInt;gz = gz + Kp*ez + ezInt;/这里的 gz 由于没有观测者进行矫正会产生漂移,表现出来的就是积分自增或自减2.2 PID 算法误差分析直接使用陀螺仪测量得到的角速度作为微分项。由于角度的微分即角速度,因此直接使用陀螺仪测得的角速度值最为直观简便,且由于没有引入期望值进行微分,因此,在期

9、望值进行切换时不会对系统产生较大的干扰。然而,陀螺仪的零点飘移却是一个不可忽视的问题。随着时间,系统运动状态的改变,陀螺仪的零点可能随之改变,因而从理论上讲,应当对陀螺仪的零点进行动态修正,以保证微分项的准确性。 (1) 使用本次角度偏差与上一时刻的角度偏差的差值作为微分项。由于对期望值进行了微分,因此在期望值进行切换时,存在较大扰动,若使用该方法,可对微分项进行一阶惯性滤波,使微分项较为平滑。 (2) 使用微分先行 PID 算法,将角度期望进行分离,直接针对当前时刻姿态解算得到的姿态角进行微分,与上一种方法相比,在期望值进行切换时,不会对系统产生较大的扰动。与第一种方法相比,由于在姿态解算时

10、,通过加速度计与陀螺仪进行融合得到较为准确的姿态角,因此,将其用于微分项在理论上较为合理。 8 然而,经过大量的实验经验发现,第一种方法的控制效果最好。仔细推敲之后不难发现,由于第三种方法所使用的姿态解算得到的姿态角并非时刻接近真实值,在动态过程中,该现象尤为明显。当真实值进行切换时,估计值从上一时刻逼近这一时刻的真实值需要一定的过渡时间,因此,可以认为第三种方法得到的微分项是滞后的,微分项的作用体现在对未来的预测,而使用一个“过去” 的控制量对“未来”进行预测控制,这显然是不合理的。在实验中则体现为系统抵抗外力的反作用力较小。因此,使用第三种方法的前提为,具备响应极快的姿态解算算法且控制频率

11、较高。3.测试方案3.1 测试仪器 电子示高装置,产生示高线 h1,h2,位于同一垂直水平线,飞行器触碰 h1,h2线时该装置可产生声光报警。PC 机一台,将拍摄的视频文件借助 PC 机播放,以验证视频模块能否正常工作。两个直径不同的同心圆,内圆为黑色外圆为白色,直径分别为 25CM 和75CM。秒表一个,要求在规定的时间内完成规定的动作。3.2 测试环境 在空旷的实验室中,确保实验室的长度,高度,宽度均符合条件要求, ,并能保证实验人员的安全要求。基本要求一:测量飞行器起始的位置与目的地之间的线性距离,使它们之间的距离超过题目要求的最小距离,使其从 A 点出发至 B 点结束,测试系统工作情况

12、。 基本要求二:测试飞行器从 A 点出发以飞行高度不低于 30CM 的要求按逆时针做矩形运动。 基本要求三:要求测试环境有电子示高装置, 并可在现场产生激光示高线,其高度可调,调整范围为 30CM120CM。发挥部分要求一:使用的小铁板 M1 的重量不得低于规定重量的 95%,并为单独实物。9 4.测试结果4.1.基本要求测试数据飞行器能一键式启动,并开始航拍,从 A 点起飞,飞向 B 区,在 B 区降落,但不是中心,当飞行结束后,拔掉 SD 卡,能顺利的通过 P0 机回放,在飞行过程中,始终在电子示高线 H1 和 H2 的区间内。4.2.综合性能分析结论飞行器在 A 区能一键式启动,飞行器起

13、飞,沿矩阵 CDEF 逆时针飞行一圈,并在 A 区着陆并停机;飞行高度不低于 30CM;飞行时间不大于 45S但是各个部件的协调做的不是太好,具体是:有的时候不能正常启动,还有对 CMOS 摄像模块的控制以及录得文件的存储,并不能更好的工作,希望以后可以继续改进。4.3 心得体会:通过单片机来控制飞控模块的确是个难题,在代码的设计上出现了很大难题,我和我的团队更是在单片机与飞控的通信问题上费了好大功夫。飞控始终是一个大难题,我们团队采用的是欧拉角方法,我们的姿态扭正算法是在万方数据库里的论文找的,千辛万苦始到金。另一个难题是摄像模块的处理,摄像模块如何与单片机的通信以及如何把所拍摄文件传输到

14、SD 卡里并能通过 PC 机回放,我们在单片机的代码里也考虑到这个问题,最终还是得到好的结果。炎炎夏日,在如此紧张的时间内完成如此大的工程,的确对我们的耐力和知识提出了挑战,有团队的合作,有老师的支持是我们参与此次大赛的初始勇气。希望下次我们能做到更好。参考文献 10 1黄智伟.全国大学生电子设计竞赛系统设计(第二版).北京:北京航空航天大学出版社 2011 年 2 月 3 程程, 洪龙. 一种实用的红外通信装置设计及实现.电力自动化设备. 第 29 卷第 9 期 2009 年 9 月 P2629 4Paul scherz.发明者电子设计宝典 .蔡声镇,林佑达,吴允平等译.福建:福建科学出版社

15、.2004 年 1 月 5陈永真,陈之勃.全国大学生电子设计竞赛硬件电路设计精讲.北京:电子工业出版社.2011 年 5 月 附录一、总体电路原理图 11 附录二、主要软件程序 #include“stc12c5a60s2.h“sbit p1=P10; /副翼sbit p2=P11; /升降sbit p3=P12; /油门sbit p4=P13; /方向 unsigned char flag=0;/int init_kk=4000;/激活标志 4000周期为2秒/int pwm=0;void delay()int i,j;for(i=0;iflag)/方向2msp4=1;else12 p4=0;if(10flag)/油门1msp3=1 ;elsep3=0;delay();while(1)if(flag=200)flag=0;if(15=flag) /方向p1=0;p2=0;p4=1;elsep1=0;p2=0;p4=0;if(13=flag) /油门p3=1;/ if(pwm=6000)/ / pwm=0;/ i+;/ if(i=20)/ i=0;/ elsep3=0;13 void tm() interrupt 1TH0=185/256; /0.1msTL0=185%256;init_kk-;flag+;/pwm+;TR0=1;

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 企业管理 > 管理学资料

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报