基于STM32F4的四轴航拍飞行器
,直至满足要求。
(5)最终调试好的标准应该是,PID输出曲线在有一个阶跃响应来是,响应一大一小两个波,小波是大波的四分之一。
四轴飞行器的PID整定,我们首先四轴固定在单轴平衡平台上,让飞行器完成单轴平衡,主要观察姿态角的(1)稳定性,能否平衡在期望角度;(2)响应性,当操纵命令改变时,四轴能否即时的响应期望的变化;(3)操纵性,由操纵员感受四轴的姿态是否已与操纵,会不会产生响应过冲。
在参数调整时,先调P,将I,D给0,先给一个小值P1,如果飞行器不能稳定在一个角度,则P1给小了,下一次给一个较大值P2,如果飞行器产生震荡则证明P2给大了,那么合适的P在P1-P2之间,反复试验几次可找到P震荡的临界点P0,然后保持P0不变按照调P的方法来调D,D是用来消除误差的,当抖动差不多被消除时,此时我们有较合适的P0,D0,在这两个值附近再试几组参数,观察效果得到最优参数。调好P,D后此时四轴的稳定状态与期望状态间也学会有静差,接下来加入I,参数有小到大,当静差差不多被消除时,我们再对P,I,D三组参数在小范围内联调。最后确定恰当的积分限幅值,完成整个PID参数的整定。
5.系统创新
- 采用STM32F407这样一款高性能芯片作为控制核心,计算快速,扩展空间大。
- 云台飞控一体化设计,既能完成飞行任务也能实现云台稳定。
- 姿态算法采用基于四元数的互补滤波,姿态角无奇点,比起卡尔曼李春波等高端算法有着计算量小的特点且能投入使用,大大节约了cpu计算时间,也降低了对cpu的性能要求。
- 利用四轴作为云台载体有着灵活机动,可让摄像头获得比较好的视野,且云台能消除四轴机体抖动。
- 方便改装用于执行其他任务。
6.评测与结论
6.1.四轴飞行器的调试
6.1.1电源调试
将电路板焊接完成后,为电路板供电,用万用表测得个供电芯片电压如下
表6-1各电源芯片电压值
元件名 | 输入电压(V) | 输出电压(V) |
LM2940 | 12.4 | 5.01 |
LM1117 | 5.01 | 3.42 |
由表中数据可知电源管理部分可满足系统供电要求。
6.1.2 姿态角调试
在完成控制器底层的硬件驱动后,开始姿态角算法的调试。利用蓝牙模块将解算出的姿态角数据发回上位机,摇动四轴机体,观察上位机数据曲线与姿态演示立方块。

图6-1 姿态角数据对比曲线
图6-1中黄色和蓝色为直接由加速度计算出的俯仰与横滚角,红色和青色为姿态解算后的姿态角,可明显看出直接由加速度计算出的姿态角噪声大,不平滑,不能真实反映姿态角的变化。而由四元数算法解算后的姿态角反应快,噪声小,足以满足控制要求。光观察曲线并不直观,还可以观察上位机中的立方块,当小立方块的姿态与四轴机体能够保持一致变化时说明姿态解算良好。通过以上手段可知姿态角解算满足需求。

6.1.3 控制电机调试
在第五章,已经针对四轴飞行器进行了PID的控制设计,但为了得到实际使用的PID控制参数我们还需要通过反复试验来整定出最优参数。为了方便参数的调试,在本设计过程中才用了先调平衡一个方向,再调另一个方向,最后联达到平衡的效果。为此设计了如下图所示试试验平台:

图6-3 四轴单轴平衡试验
在调试过程中,为了避免频繁的下载程序带来的不变,采用串口蓝牙发送参数的做法,大大提高了调试效率。当俯仰与横滚两个轴都能够独立的平衡时,可以脱离单轴平台开始在空中进行航向角的稳定性调试。
6.2.四轴飞行器的试飞
当前面的各项调试都完成了之后,就准备要进行试飞实验。飞行试验是对控制系统的功能和技术指标进行验证的最终手段,也是衡量四轴设计是否成功的重要标志。
试飞前要确保系统各部分工作正常,稳定。检查各个接口连接是否正确,各部件安装是否牢固,电池电量是否充足。打开电源前检查遥控器油门是否在最低位置,起飞前先轻推油门确保电机工作正常。一切准备就绪,即可进行试飞。将四种飞行器放在水平地面上,开始启动姿态初始化程序,听到电调提示音后,缓慢增加油门,螺旋桨转速上升,将飞机拉离地面。由实际情况可看出当姿态发生倾斜时,姿态解算及PID控制能够及时调整电机转速,稳定飞行姿态。飞行器还能根据遥控指令的变化完成相应的动作。本此设计的四轴飞行器可实现垂直升降的要求,能保持姿态的稳定,机体晃动小,在微风的干扰下能够自动调整姿态,确保平稳飞行,且系统响应快,续航时间大概在8分钟。因此本次的设计是有效的。
附录



部分代码
void IMUupdate(float gx, float gy, float gz, float ax, float ay, float az)
{
static float q0 = 1.0f, q1 = 0.0f, q2 = 0.0f, q3 = 0.0f;
float delta_2=0;
const static float FACTOR = 0.002;
float norm=0.0f;
STM32F4四轴航拍飞行 相关文章:
- Windows CE 进程、线程和内存管理(11-09)
- RedHatLinux新手入门教程(5)(11-12)
- uClinux介绍(11-09)
- openwebmailV1.60安装教学(11-12)
- Linux嵌入式系统开发平台选型探讨(11-09)
- Windows CE 进程、线程和内存管理(二)(11-09)
