基于SCM芯片的简易四旋翼飞行器设计与实现
无人机在现在生活中是个非常热的词汇,它在方方面面都有应用,比如农业中的植保无人机、摄影中的航拍无人机等等。我所设计的四旋翼飞行器,主要是轻量化无人机,它可以在低风速,或者室内进行飞行,航模爱好者可以使用它进行一些精彩的飞行表演。
此次设计基于SCM单片机进行实现,设计中完成了四旋翼飞行器的系统设计、硬件和程序设计。其中主芯片采用STM32f103单片机,通过MPU6050陀螺仪产生横滚轴和俯仰轴的姿态信息,陀螺仪将获取的信号传送给STM32f103单片机。此飞行器主要是通过C语言进行单片机的代码实现,通过Keil32通过卡尔曼滤波函数算法、PID控制算法和PWM更新算法实现对四个电机的转数控制,从而实现平稳飞行,通过NRF24L01通信模块实现对飞行器的控制。
第1章 绪
论........................................................................................ 1
1.1 论文研究的意义与目的........................................................................... 1
1.2 系统可行性分析...................................................................................... 1
1.3预期目标.................................................................................................. 2
1.4 论文研究主要内容及整体结构................................................................ 2
第2章 关键技术.................................................................................... 3
2.1 STM32介绍........................................................................................... 3
2.2 AD版图软件介绍.................................................................................. 3
2.3 MPU6050陀螺仪介绍........................................................................... 3
2.4 NRF24LO1模拟通讯模块介绍.............................................................. 3
第3章 系统分析.................................................................................... 5
3.1 飞控系统组成........................................................................................ 5
3.2 遥控器系统组成.................................................................................... 6
第4章 系统设计.................................................................................... 7
4.1 设计中运用的主要器件........................................................................... 7
4.1.1 单片机的选择........................................................................................................ 7
4.1.2 MPU6050陀螺仪.................................................................................................. 8
4.1.3 NRF24L01模拟通讯模块..................................................................................... 8
4.2系统硬件电路设计................................................................................... 9
4.2.1 飞控最小系统设计................................................................................................ 9
4.2.2 MPU6050最小系统设计...................................................................................... 9
4.2.3 电机驱动电路设计.............................................................................................. 10
4.2.4 LED电路设计..................................................................................................... 10
4.2.5 下载串口设计...................................................................................................... 11
4.2.6 供电电路设计...................................................................................................... 11
4.3 遥控器电路设计..................................................................................... 11
4.3.1 遥控器最小系统.................................................................................................. 11
4.3.2 供电电路设计...................................................................................................... 12
4.3.3 摇杆电路设计...................................................................................................... 12
4.3.4 串口电路设计...................................................................................................... 13
4.3.5 按钮电路设计...................................................................................................... 13
4.3.6 蜂鸣器电路设计.................................................................................................. 13
第5章 飞行器的实现.......................................................................... 15
5.1 软件流程图.......................................................................................... 15
5.2 系统主要程序....................................................................................... 16
5.2.1 IIC通讯协议........................................................................................................ 16
5.2.2 mpu6050模块...................................................................................................... 17
5.2.3 卡尔曼滤波算法.................................................................................................. 18
5.2.4 四元函数算法...................................................................................................... 18
5.2.5 PID控制............................................................................................................... 20
5.2.6 PWM更新............................................................................................................ 20
5.3 PCB整体版图与实物........................................................................... 21
5.3.1 飞控整体版图...................................................................................................... 21
5.3.2 遥控器整体版图.................................................................................................. 22
第6章 系统运行与调试...................................................................... 23
6.1 飞系统焊接.......................................................................................... 23
6.2 初次调试.............................................................................................. 23
6.2 上位机调试.......................................................................................... 24
6.2 调试完成.............................................................................................. 24
飞行器控制系统的原理图如图所示。四旋翼的飞行器其电机抗拒选择扭矩有两种方式,分别为十字型摆放与X型摆放。其中m1和m3空心杯电机的转动方向相同,m2和m4电机转动方向正好与m1,m3相反。电机转数不同主要是为了抵消电机转动的横向扭力。横滚操作基本原理:左转,m2和m4电机转数降低使逆时针转动扭力大于正时针转动扭力实现左转,同理向右转相反。俯仰操作基本原理:前俯仰,m1和m2电机转数不变,m3和m4电机增加转数,使飞行器前低后高,此时飞行器气流升力等于重力且有斜向前的推力使得飞行器向前移动。
电机驱动电路中各个部分设计考虑的东西比较多需要分步骤讲解。其中100欧姆的电阻主要起到限流的作用,当MOS管开启时会需要电流,瞬间电流过大会影响MOS管的使用寿命。电路中10k的电阻主要起到的是下拉的作用,当IO口复位以后为了防止MOS管误导通,导致电机旋转打伤人,从而使用10k电阻下拉MOS管电压。电路中NMOS管主要是高电平导通,通过控制PWM信号的空占比然后控制NMOS管的导通,从而控制电机的转动数度,也就输出功率。为什么选2302,因为它的VTH=3.3V时,它的最大可负载的电流为3A,而电机的最大瞬态电流为2.5A。可以满足需要。在电路中因为电路电流为波动的所以电路中电容的作用主要是滤波,减小电流拨动对电机的干扰。电机驱动电路如图
- 微信
- 赶快加我聊天吧
- 开发交流群
- 海纳百川,大家来水