ImageVerifierCode 换一换
格式:DOCX , 页数:14 ,大小:21.63KB ,
资源ID:20326440      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/20326440.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(电赛设计报告更改docWord文件下载.docx)为本站会员(b****5)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

电赛设计报告更改docWord文件下载.docx

1、飞行高度控制 1小车与飞行器联动设计 2参数的计算 2飞行稳定的 PID 计算 2高度控制的 PID 计算 2声光联动的参数设定 23 电路与程序设计 2电路的设计 2系统总体框图设计 2控制系统框图 3飞控系统框图 3电源的选用 4程序的设计 4程序功能描述与设计思路 4程序流程图 44 测试方案与测试结果 4测试方案 5测试结果及改进 5附录 1:电路原理图 6附录 2:源程序 7四旋翼自主飞行器探测跟踪系统( C 题)1系统方案本系统主要由总控制模块、飞行控制模块、超声波测距模块、无线信号发射接收模块、电源模块组成,下面分别论证这几个模块的选择。控制系统的选择按照本次赛题要求,控制系统芯

2、片选用瑞萨 RX23T MCU 板(芯片型号为 R5F523T5ADFM) 作为主控芯片来采集信号以及控制飞行器飞行姿态与方向。飞行姿态控制的论证与选择方案一:瑞萨芯片将从 MPU-6050 中读取出来的飞行原始数据进行 PID 算法运算,得到当前飞行器的四元数,单片机再将数据融合,并对电调发出相应指令,从而达到控制飞行器的飞行姿态的目的。 但四元数法需要进行大量的运算, 且运算复杂。而且比赛时间紧迫,调试程序复杂且困难。方案二:采用市面上现有的 QQ、KK 等商用飞控板进行飞行姿态稳定的控制,再由瑞萨芯片给与干预来达到想要的飞行方案。 但由于这些飞控不开源且干预所需要的波形复杂不可模仿,对设

3、计和调试都是巨大的挑战,且稳定性较差。方案三:采用市面上现有的飞控中的传感器集成部分与比较熟悉的 STM32 单片机最小系统相结合,利用飞控传感器模块的多面性和 STM32 强大的抗干扰性与兼容性自制飞控模块,再利用瑞萨芯片对 STM32 进行干预来实现比较稳定简便的飞行控制。综合以上三种方案,选择方案三。高度测量模块的论证与选择采用 bmp085 气压传感器测量大气压并转换为海拔高度,把当前的海拔测量值减去起飞时的海拔值即得飞机的离地高度。 但此次竞赛飞行高度相对比较低, 芯片价格较贵,误差较大,调试较为困难。采用 HC-SR04 超声波传感器测量飞行器当前的飞行高度。这种传感器在较近距离测

4、距误差较小,算法较易且价格便宜。综合以上两种方案,选择方案二。电机及调速方案的论证与选择要确定调速方案首先要确定电机型号的选择。采用有刷电机。有刷电机采用机械转向,寿命短,噪声大,产生电火花,效率低。它长期使用碳刷磨损严重,较易损坏,同时磨损产生了大量的碳粉尘,这些粉尘落轴承中,使轴承油加速干涸,电机噪声进一步增大。有刷电机连续使用一定时间就需更换电机内碳刷。采用无刷电机。无刷电机以电子转向取代机械转向。无机械摩擦,无摩擦,无电火花,免维护且能做到更加密封等特点所以技术上要优于有刷电机。综合以上两种方案,选择使用方案二无刷电机。考虑到经济型实用性等方面, 我们选用新西达 A2212 无刷电机。

5、而且由于本四旋翼飞行器选用的是无刷电机,所以电调只能选用无刷电机的电调,对于新手来说自己做电调需要的时间长,而且可能不稳定,危险性较大,所以直接用的是成品电调,我们选用电机配套的新西达 A2212 电调。由此确定调速方案。无线信号发射与接收模块的论证与选择采用蓝牙模块来进行无线配对通信, 将两个配对完成的蓝牙模块分别接在小车与飞行器的单片机上进行数据配对传输,但是蓝牙模块抗干扰性较差,传输速度略慢,传输信息量大,编辑代码较为复杂,调试麻烦。采用超外差 RF 无线编码模块 TX118SA 来进行无线信号发射,利用 RX480E 通用解码芯片进行信号接收,这两个传感器不仅价格低廉,且在近距离信号传

6、输时抗干扰性较强,对码等调试较为简易。综合两种方案我们选用第二种进行小车与飞行器之间的配对与信号传输。2系统理论分析与计算控制方案的设计与分析飞行器起飞及悬停方案设计由于题目中要求起飞悬停降落都要控制在一个直径为 75CM 的圆圈内,且本次材料清单中没有关于红外避障或寻迹传感器的选用, 因此只能在客观条件允许的条件下尽量保证飞机能稳定起飞稳定降落, 因而我们决定在超声波传感器测定与地面距离小于时瑞萨芯片会将信号传递给 STM32 飞控来使得调速四个电机加速启动让飞机得以起飞,且起飞过程中截取飞控传感器模块中的 MPU6050 会将姿态角传给 STM32 飞控中,飞控会自动调整 PWM 输出的占

7、空比达到调速使得起飞过程尽可能平稳,在超声波传感器测得飞行高度达到至之间时瑞萨发出 PWM 波使得飞控开始让电机减速,在加速度传感器输出趋近于 0 时飞机基本实现平稳悬停。飞行姿态控制设计飞行器在悬停的时, MPU6050 会不断将现有姿态角数据传输给 STM32 飞控中,飞控会自动代入 PID 调试公式来确定现有的飞行姿态并给予调整来尽量保证飞机姿态的稳定。飞行高度控制飞行高度的采集采用超声波模块来实现,通过超声波发出时开始计时,收到返回信号时停止计时, 瑞萨单片机利用声音在空气中的传播速度 (粗记为 340m/s)与时间的数学关系来计算出飞行器距地面的时间,从而控制飞行器的飞行高度达到我们

8、所需的高度。小车与飞行器联动设计小车与飞行器之间采用 TX118SA 无线信号发射接收传感器来进行通讯连接,位于飞行器上的接收端可以接收到来自小车上发射端的信号来进行平面定位操作, 再由瑞萨芯片发出指令来控制飞行器和小车控制在一定距离从而达到跟随。参数的计算飞行稳定的 PID 计算STM32最小系统板从飞控传感器模块中的 MPU-6050芯片获取的数据是飞行器的三轴角速度和三轴角加速度, MCU对数据进行 PID 算法处理可以得到飞行器当前的飞行姿态。PID 是比例、积分、微分的缩写。比例调节是按比例反应系统的偏差 , 系统一旦出现了偏差 , 比例调节立即产生调节作用用以减少偏差。比例作用大

9、, 可以加快调节 , 减少误差 , 但是过大的比例 , 使系统的稳定性下降 , 甚至造成系统的不稳定。积分调节是使系统消除稳态误差 , 提高无差度。因为有误差 , 积分调节就进行 , 直至无差 , 积分调节停止 , 积分调节输出一常值。 积分作用的强弱取决与积分时间常数 Ti,Ti 越小 , 积分作用就越强。反之 Ti 大则积分作用弱 , 加入积分调节可使系统稳定性下降 , 动态响应变慢。积分作用常与另两种调节规律结合 , 组成 PI 调节器或 PID 调节器。几者结合从而保持飞行姿态稳定。高度控制的 PID 计算超声波测距传感器能测量出发出声波到接收到声波之间的时间长度,设这个值为 X ,则

10、 X/340/2 即为所测量距离的长度,将这个经计算所得的值与所需要的高度进行对比,在对 STM32 进行反馈从而实现调速定高,来达到控制飞行高度的目的。声光联动的参数设定TX118SA 发射器和接收器之间信号传输时间为声波在两者之间传递时间,与声速相除可测出之间距离,在距离到达所要求 之间时,二极管所在端口输出高电平达到让二极管发光,同时扬声器所在端口输出高频 PWM 波以达到让扬声器发出尖锐声音的效果从而达到声光联动。3电路与程序设计电路的设计系统总体框图设计系统总体框图如图 1 所示,超声波传感器小车扬瑞萨飞控飞 行 器声RX32T姿 态 变器化电源图 1 系统总体框图控制系统框图 控制

11、系统框图二极管瑞萨STM3MPU电机RX322F1036050扬声器TVET6二极管发光超 声 波上单传感器扬声器发声片机图 2 控制系统框图飞控系统框图飞机姿态STM32F10 MPU6050 电机3图 3 飞控系统框图电源的选用电源由变压部分、滤波部分、稳压部分组成。为整个系统提供 5V 或者 12V 电压,确保电路的正常稳定工作。这部分电路比较简单,都采用三端稳压管实现,故不作详述。程序的设计程序功能描述与设计思路1、程序功能描述首先一键启动飞行器,起飞后悬停, 5S 后降落;其次手持飞机靠近小车飞机和小车发出声光互响;再次一键启动飞机向前寻找小车,寻到后降落;然后启动飞机沿直线追寻小车

12、;最后飞机沿不同方向追寻小车。2、程序设计思路先设计出每种功能中相同的程序部分方便在各个步骤中调用,再设计出各个步骤中特有的部分加上之前的公共部分进而完成整个步骤。程序流程图开始飞控检测MCU 瑞萨输出 PWM驱动电机超声波检测悬停、追踪图 4 程序流程图4测试方案与测试结果测试方案对程序进行分块测试, 先公共部分后独立部分, 测试均无误后针对要求的需要进行测试。分模块测试完毕后, 在实验室自主搭建安全网空间进行整体测试, 包括一键起飞、悬停定高、声光指示、定向飞行、追踪等,在队员安全与符合国家相关飞行器政策要求前提下完成所有测试。测试结果及改进经过测试,将不稳定区间过大的部分进行了多次优化,

13、 使其能高效稳定地完成每步的运作。尤其对 PWM 信号控制电机转速这一方面做了较大改进,在不断的调试中,使飞行器飞行更加稳定、准确,减小了许多外界因素造成的干扰。综上所述,本设计达到要求。电路原理图源程序#include /* Start user code for include. Do not edit comment generated here */* End user code. Do not edit comment generated here */*Global variables and functions*/* Start user code for global. Do

14、not edit comment generated here */void delay_m ( uint32_t m)for (;m0;m-);void R_MAIN_UserInit ( void );*Function Name: main*Description : This function implements main function.*Arguments : None*Return Value :void main ( void )R_MAIN_UserInit();/* Start user code. Do not edit comment generated here

15、*/delay_m(0x5ffffff);=_01_Pm0_OUTPUT_1 | _02_Pm1_OUTPUT_1; |= _01_Pm0_HIDRV_ON | _00_Pm1_HIDRV_OFF;=_01_Pm0_MODE_OUTPUT | _02_Pm1_MODE_OUTPUT; R_MTU3_C0_Start();R_MTU3_C2_Start();R_MTU3_C3_Start();while (1U);static void ADV ANCE_TIM_GPIO_Config(void)GPIO_InitTypeDef GPIO_InitStructure;/输出比较通道 GPIO 初

16、始化RCC_APB2PeriphClockCmd(ADV ANCE_TIM_CH1_GPIO_CLK, ENABLE);=ADV ANCE_TIM_CH1_PIN;=GPIO_Mode_AF_PP;=GPIO_Speed_50MHz;GPIO_Init(ADV ANCE_TIM_CH1_PORT, &GPIO_InitStructure);/输出比较通道互补通道 GPIO 初始化RCC_APB2PeriphClockCmd(ADV ANCE_TIM_CH1N_GPIO_CLK, ENABLE);=ADV ANCE_TIM_CH1N_PIN;GPIO_Init(ADV ANCE_TIM_CH1N

17、_PORT, &/输出比较通道刹车通道 GPIO 初始化RCC_APB2PeriphClockCmd(ADV ANCE_TIM_BKIN_GPIO_CLK, ENABLE);=ADV ANCE_TIM_BKIN_PIN;GPIO_Init(ADV ANCE_TIM_BKIN_PORT, &/BKIN 引脚默认先输出低电平GPIO_ResetBits(ADV ANCE_TIM_BKIN_PORT,ADV ANCE_TIM_BKIN_PIN);static void ADV ANCE_TIM_Mode_Config(void)/开启定时器时钟 ,即内部时钟 CK_INT=72MADV ANCE_T

18、IM_APBxClock_FUN(ADV ANCE_TIM_CLK,ENABLE);/*-时基结构体初始化-*/TIM_TimeBaseInitTypeDef TIM_TimeBaseStructure;/自动重装载寄存器的值,累计 TIM_Period+1 个频率后产生一个更新或者中断=ADV ANCE_TIM_PERIOD;/ 驱动 CNT 计数器的时钟 = Fck_int/(psc+1)= ADV ANCE_TIM_PSC;/时钟分频因子 ,配置死区时间时需要用到=TIM_CKD_DIV1;/计数器计数模式,设置为向上计数=TIM_CounterMode_Up;/重复计数器的值,没用到不

19、用管=0;/初始化定时器TIM_TimeBaseInit(ADV ANCE_TIM, &TIM_TimeBaseStructure);/*- 输出比较结构体初始化 -*/TIM_OCInitTypeDef TIM_OCInitStructure;/配置为 PWM 模式 1=TIM_OCMode_PWM1;/输出使能=TIM_OutputState_Enable;/互补输出使能=TIM_OutputNState_Enable;/设置占空比大小=ADV ANCE_TIM_PULSE;/输出通道电平极性配置=TIM_OCPolarity_High;/互补输出通道电平极性配置= TIM_OCNPola

20、rity_Low ; /TIM_OCNPolarity_Low TIM_OCNPolarity_High/输出通道空闲电平极性配置=TIM_OCIdleState_Set;/互补输出通道空闲电平极性配置=TIM_OCNIdleState_Set;/*- 刹车和死区结构体初始化 -*/ 有关刹车和死区结构体的成员具体可参考 BDTR 寄存器的描述TIM_BDTRInitTypeDef TIM_BDTRInitStructure;=TIM_OSSRState_Enable;=TIM_OSSIState_Enable;=TIM_LOCKLevel_1;/ 输出比较信号死区时间配置,具体如何计算可参考 BDTR:UTG7:0 的描述/这里配置的死区时间为 152ns=11;=TIM_Break_Enable;/当 BKIN 引脚检测到高电平的时候,输出比较信号被禁止,就好像是刹车一样=TIM_BreakPolarity_High;=TIM_AutomaticOutput_Enable;TIM_BDTRConfig(ADV ANCE_TIM, &TIM_BDTRInitStructure);/使能计数器TIM_Cmd(ADV ANCE_TIM, ENABLE);/主输出使能,当使用的是通用定时器时,这句不需要TIM_CtrlPWMOutputs(ADV ANCE_TIM, ENABLE);

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1