DIY编程器网
标题: 大热的四轴飞行器设计,提供软硬件参考方案 [打印本页]
作者: admin 时间: 2015-4-28 14:54
标题: 大热的四轴飞行器设计,提供软硬件参考方案
一、项目概述
1.1 项目摘要
四轴飞行器具有不稳定,非线性特性,姿态控制为四轴飞行器控制系统的核心。机械部分搭建四个具有对称结构的螺旋桨叶和驱动电机。电气部分则采用STM32为控制核心的惯性参考模块作为姿态控制板,通过四轴飞行器的飞行原理,建立数学模型,设计四轴飞行器的姿态控制系统。陀螺仪,加速度,地磁计分别采集运动轨迹数据,姿态修正,进行航向控制,采用PI算法进行姿态角的闭环控制。另外运用一块STM32作为自主飞行控制板,两块主控芯片通过无线串口进行数据传送,当姿态控制板受到来自飞行控制板的控制信号时,姿态控制板通过数字控制总线控制四个电调,电调再把控制信号转化为电机转速控制电机运行,达到飞行效果。
1.2 项目背景/选题动机
四轴飞行器有着其他类型航模无可比拟的优势,悬停稳定,不需要占用很大的面积空间;机械结构简单,维护方便,飞行损耗成本低;可扩展性好,在四轴飞行器上能搭载摄像头,或者其他传感器,应用前景广泛,可用于军事,救援等特殊使命。而四轴飞行器的控制核心是姿态控制,而iNEMO模块则为四轴飞行器搭建了基础的控制硬件平台。
二、需求分析
2.1 功能要求
(1) 传感器要求能够检测四轴飞行器的航向,姿态信息。
(2) 主控器能快速获得各个传感器的数据,并进行数据处理。
(3) 各个电机要能进行实时调速,实现稳定飞行。
(4) 飞行控制板与姿态控制板进行一定距离实时通讯,并能控制飞行器的快速调速以实现飞行控制。
(5) 通过无线通讯获取地磁模块地磁与加速度原始数据,通过飞行控制板进行处理并显示航向。
(6) 通过对电源模块的电压AD采样,获取电池电量信息并在飞行控制板上显示
2.2 性能标准
(1) 水平原地连续旋转
悬停在空中1米左右,偏航测试,四轴就开始原地连续旋转起来。这个飞行主要用于测试飞控姿态预测算法的能力。好的飞行控制算法应该是尽量保持飞行器机身水平,不会漂移太多。
(2) 单边挂重物实验
悬停在空中,瞬间给飞行器四轴中一个轴臂上挂一个重物,对这样冲击力,观察飞行器能不能快速做出反应,时间越短越好
(3) 加速上升或者下降
在飞行器处于悬停状态,加速上升或者加速下降,观察机身是否激烈抖动,抖动小或不抖动抗风能力强
三、方案设计
3.1 系统功能实现原理
四轴飞行器飞行原理:
当四个旋翼的转速相等且产生的升力之和等于飞行器自身的重力时,飞行器处于悬停状态;在悬停的基础上,飞行器的任意一组旋翼转速等量的增加或减少,而另一组飞行速度不变,将产生偏航的效果;同时等量增加或减少飞行器4个旋翼速度时,将使飞行器上升或下降;当其中飞行器的其中一个旋翼速度增加或减少,处于对角线上的旋翼速度减小或增加,飞行器将会向一个方向倾斜,产生俯仰运动或滚俯运动。如图1所示。
图1
四轴飞行器的飞行控制系统包括主控制模块,各个传感器模块,飞行控制板,通讯模块,电机调速模块,电池模块。主控制模块与传感器模块合成一个模块,使用的是意法半导体公司的iNEMO模块惯性测量模块,该模块之间通过采用I2C通讯模式进行数据传输,并将控制信号发送给电调;飞行控制板与主控制器采用无线串口进行数据收发和命令控制;电源模块为各个传感器和控制芯片提供电源,并为电调和电机提供动力。四轴飞行器的系统总体设计框图如图2所示。
图2
3.2 硬件资源配置
主控制器
系统主控制器采用意法半导体公司32位微处理器STM30f103系列为主控制器,它是专门为控制系统,工业控制系统和无线网络等对功耗和成本敏感的嵌入式应用领域而设计的。STM32系列32位闪存微控制器基于为嵌入式应用开发的具有突破性的ARM Cortex –TM内核,高速指令处理能力,支持浮点数运算,有强大的数据处理能力;拥有USB,USART,SPI,I2C等多个外设接口,12位精度的ADC,采集更精确的数据,减小数据误差;STM32开发完整的固件库,完善的开发工具为用户大大缩短开发周期,节约开发成本;
惯性参考单元
STEVAL-MKI062V2开发套件,这款iNEMO模块集成了5个意法半导体传感器:双轴滚转-俯仰陀螺仪(LPR430AL),单轴偏航陀螺仪(LY330ALH),6轴地磁测量模块(LSM303DLH),压力传感器(LPS001DL)和温度传感器(STLM75)。
无线射频模块
用于收发数据命令采用CC1101无线通信模块,串口通讯方式,低功耗工作,传输距离可达到200m,提供3种用户可选波特率,可传输字节为30的数据帧,且有大数据的缓冲区。
电源模块
电源模块为主控制器,各个传感器和电机供电,锂电池供电,由ASM1117转换为5V为惯性测量模块和电调供电。
显示部分
显示部分为无线发送回来数据进行处理显示和对发送控制命令的显示,具有辅助调节作用,该部分采用2.4寸TFT显示。
图3
3.3系统软件架构
姿态检测算法
将陀螺仪和加速度计的初始测量值减去常值误差,获得角速度和加速度,并对加速度进行积分。然后对角加速度积分和加速度积分数值融合处理。融合目的包括两个方面:一个对角速度的飘移进行估算,加入到角度值里面。另一个对陀螺仪的常值数值进行修正。
控制算法
算法的核心是对角速度做PI计算,P的作用是使四轴飞行器能够产生对于外界干扰的抵抗力矩,I的作用是让四轴飞行器产生一个与角度成正比的抵抗力。对角速度做I预算实际得到的是角度值,如果四轴有一个倾斜角度,那么四轴飞行器就会自己进行调整,直到倾角为零。它所产生的抵抗力与角度成正比,但是如果只有I的话,四轴飞行器会马上进行震荡,PI必须结合起来使用。
控制系统框架图
3.4 系统软件流程
四轴飞行器姿态控制程序运行流程图如图5所示,系统上电以后进行系统初始化,包括时钟配置,端口初始化,液晶界面初始化。由控制器发出控制指令,如果四轴飞行器上姿态调整板能接受并产生应答信号,则进行传感器校准,系统电量检测,电量充足则等待无线指令,当接收到无线指令后,由姿态控制板就行姿态检测,数据采集进行算法处理,并通过IIC把控制命令传递给电调进行电机转速控制,以进行飞行控制。在整个过程中采用ADC采集电源模块输出电压,以进行电量检测,如果电量不足,则飞行器落停或者不起飞。
程序运行流程图
欢迎光临 DIY编程器网 (http://diybcq.com/) |
Powered by Discuz! X3.2 |