APP下载

基于TMS320F28335的小型无人旋翼机数据采集系统①

2020-04-24强志鹏齐明思张纪平姬天田孙起帆薛洋洋

计算机系统应用 2020年4期
关键词:空速旋翼机气压

强志鹏,齐明思,张纪平,姬天田,孙起帆,薛洋洋

(中北大学 机械工程学院,太原 030051)

引言

近些年随着航空技术的不断发展,国内外学者针对无人机数据采集的研究成果层出不穷,但是对无人旋翼机的研究较为少见.小型无人旋翼机的旋翼不支持动力旋转,所以其故障率远低于一般无人机,相对而言经济性和可靠性也比较高[1],因此无论是在农业植保方面,还是科研方面,都具有极其巨大的应用潜力和研究价值.由于小型无人旋翼机自身的特性,只使用一套数据采集装置所采集的数据将会出现重大的误差,为了满足小型无人旋翼机对大气数据采集系统体积小,功耗低,测量精准度高,抗干扰能力强,数据实时性强等要求[2],在分析了大气数据采集原理以及小型无人旋翼机飞行特点的基础上,设计出了基于MEMS 数字型差压传感器和F28335 芯片的一种小型双采集装置大气数据采集系统,并对系统的设计进行了一定的分析和研究,使系统能够更加契合小型无人旋翼机[3].

1 测量原理

大气数据采集系统,是指通过传感器采集测量飞行器周围多种大气参数及经过解算后输出多种飞行器所需参数的多输入多输出的机载综合测量系统[4].由于小型无人旋翼机的一些特点,现有的大气数据采集系统在使用环境、成本、体积等方面受到了限制,针对这些特点设计的大气数据采集系统选取了大气静压以及大气动压两个参数作为主要输入参数,输出气压高度值、指示空速、真实空速[5],其系统原理图如图1所示.

图1 大气数据采集系统原理框图

1.1 气压高度测量的计算原理

小型无人旋翼机的飞行高度较低(小于11 km),飞行速度比较慢,一般在对流层下层进行飞行,因此利用大气压力与飞行器高度变化密切相关的特性来测量飞行高度是一种可行的方法.可以按照以下的计算公式对气压高度进行计算[6].

当0≤H≤11 km 时,大气压力和高度的关系可表示为:

式中,Hp代表气压高度,单位为m;PH代表小型无人旋翼机所在高度的大气静压,单位为kPa;大气静压P0=101.325 kPa(标准大气状态下海平面处);温度T0=288.15 K(标准大气下海平面处);气温垂直递减率τ =-6.5×10-3K/m;标准自由落体加速度g=9.8 m/s2;空气专用气体常数R=287.052 87 m2/s2·K.

把查资料所得的标准大气数据代入式(1)得:

由式(2)可以看出如果我们直接在F28335 中利用这个公式对气压高度值进行计算显得比较复杂,会拖慢系统的运算速度,不利于系统数据传输的实时性,所以在本系统中将采用线性插值的方法对其进行处理.

1.2 指示空速和真实空速的测量原理

通过小型无人旋翼机飞行时大气数据采集系统测量得到的动压Pd经过式(3)解算得到指示空速.

式中,vi为指示空速,单位为km/h;Pd为动压,单位为kPa.

在操控小型无人旋翼机时飞行的高度不同,小型无人旋翼机周围的环境具有较大的差异,大气数据采集系统测得的指示空速并不能完全代表小型无人旋翼机的实际速度,所以通过式(4)对指示空速进行一定的换算修正得到真实空速.

式中,vH为真实空速,单位为km/h.

由式(3)和式(4)可知指示空速和真实空速的解算公式一样比较复杂,直接运算会占用较多的系统资源,同理,将对其采用线性插值的方法进行处理.

2 系统的硬件设计

为了满足小型无人旋翼机大气数据采集系统的体积小,功耗低,抗干扰能力强等要求,设计出的大气数据采集系统的原理框图如图2 所示.传感器将采集到的模拟信号经过放大电路放大调理之后进行AD 转换,将模拟信号转换为数字信号,传入到DSP 的解算模块中,求其平均值并利用线性插值算法解算出设定好的参数值,滤波之后通过串口通讯将解算得到的参数值进行输出.

图2 大气数据采集系统硬件框图

2.1 数据采集模块

根据小型无人旋翼机的飞行需求,对小型无人旋翼机所需要参数计算原理进行析,本大气数据采集系统需要两个绝压传感器以及两个差压传感器.根据大气数据采集系统的设计和实际需求,绝压传感器选取了基于高度集成的MS5803 高分辨率数字式气压传感器[7],该传感器包括高线性度的压力传感元件和超低功耗的24 位模数转换电路,具有体积小,价格低,功耗低(1 μA),分辨率高(10 cm)等优点,带有SPI 和I2C 两种接口,通讯协议较为简单,在实际应用中可以根据情况的不同选择不同的工作模式.MS5803 传感器的内部结构如图3 所示.

图3 MS5803 传感器内部结构图

差压传感器采用了具有高精度,低成本,低功耗等优点的4525DO 数字式压力传感器[8],该传感器内部采用了最新的CMOS 传感器调节回路,且支持SPI 和I2C 两种通信方式,可选侧面或正面引压,有多种贴装方式,具有完全校准和温度补偿功能,工作电压较小(直流恒压3.3 V 或者5 V),其精度总误差带为0.25%,内部结构如图4 所示.

图4 4525DO 传感器内部结构图

2.2 中央处理器

TMS320F28335[9]实物如图5 所示,集成了DSP 和微控制器的长处,具有强大的数字信号处理功能,且具有丰富的外设模块,具有精度高、功耗低等优点,价格较为低廉,适用于低成本的小型无人旋翼机.高性能的静态CMOS 技术使得F28335 的主频最高能达到150 MHz(6.67 ns 时钟周期),CPU 具有IEEE-754 单精度浮点单元,能够快速中断响应保护关键的寄存器和处理外部异步事件,支持动态锁相环比率变化,低功耗模式和省电模式能够极大的节省系统的资源,能够适应较为严苛的运行环境.

2.3 电源模块

本系统采用AC-DC 降压稳压电源模块,将220 V电源转换为5 V(±0.2 V)为F28335 进行供电.鉴于本系统选择的芯片是浮点型DSP,所以为了实现系统的稳定运行,需要选择一款功率大且驱动负载能力强的非线性电源芯片,根据T I 公司的手册选择TPS767D301,5 V 的电压输入,3.3 V 和1.9 V 同时产生,3.3 V 供给IO,1.9 V 供给内核[10].

图5 F28335 实物图

3 系统的软件设计

系统的软件设计主要包含对系统的初始化,数据的采集,A/D 转换,数据的处理以及串口通信的设计.系统的初始化包括对F28335 芯片的各个端口,时钟,串口以及寄存器进行初始化;数据的采集是对小型无人旋翼机所在高度的气压进行采集转换成模拟信号,A/D 转换是将模拟信号转换为数字信号;数据的处理是对采集的数据进行压力补偿、小型无人旋翼机所需参数的计算[11]和数据滤波[12-14].主程序流程图如图6所示.

3.1 系统的工作流程

TMS320F28335 和传感器之间通过I2C 总线进行同步通信.当进行数据传输时,每个连接到I2C 总线的器件都具有唯一的识别地址且可以实现发送或接收功能.当SCL 为高电平时,SDA 信号由高电平转为低电平,主机输出START 信号,表示数据传输开始;当SCL 为高电平时,SDA 信号由低电平转为高电平,主机输出STOP 信号,表示数据传输结束.

图6 主程序流程图

当发出START 信号I2C 模块开始数据传输时,I2CMDR 中的主模式位(MST)和START 条件位(STT)必须置1.当发出STOP 信号I2C 模块结束数据传输时,STOP 条件位(STP)必须置1.当I2CSTR 总线繁忙标志位(BB)和SST 位都设置为1 时,产生重复START 操作.

3.2 数据处理算法

利用软件和硬件的紧密配合,一方面可以降低系统对硬件的要求,另一方面可以提高系统的灵活性以及稳定性.由上述的式(2)和式(3)可以看出,小型无人旋翼机所需要的参数都是利用传感器所采集数据的单值函数,但是其函数结构比较复杂,如果直接用F28335 进行计算的话,会出现程序比较繁琐,运算量较大等问题,不利于系统对数据的实时解算,因此为了提升系统的实时性,在系统可以接受的误差范围内对原函数利用线性插值算法进行处理,用一个较为简便的函数代替原来的函数,如式(5):

式中,yi代表第i 个插值气压高度的值(或指示空速的值);xi代表第i 个插值点大气静压的值(或动压的值);ki代表插值线段的斜率.而插值点的个数则可以由式(6)线性插值法的误差公式确定:

根据测量需要,在确定所需要插值点个数之后,可以得出各个插值点相对应的yi值和xi值以及插值方程线段的斜率ki,然后存放到F28335 的ROM 中,当采集转换的两组数据输入DSP 时,先将采集得到的数据求平均值,然后与存储的数据进行比较,确定其大致所在的分段,然后将该分段对应的yi、xi、ki提取出来带入式(5)中计算,得出一组数值进行滤波后输出,输出的数值即为小型无人旋翼机所需要的数据.

4 实验结果分析

由于实验条件的限制,采用模拟实验的方式对设计的数据采集系统进行验证.

对某教学楼1 层到8 层各楼层的气压高度值进行了测量,测量综合结果如表1 所示.

表1 各层气压高度值(单位:m)

从表1 中可知测量的气压高度值和实际高度的误差不超过0.2 m,符合无人旋翼机的操控要求.

空速利用风扇档数以及距离远近的调节来进行模拟测量,同时使用GM8901+风速计测量风速作为参考数据,该风速计的技术指标如表2 所示.

表2 GM8901+风速计技术指标

空速和温度测量得到的结果如图7、图8 和图9所示.

经过多次测量,在图7 中测量得到的空速为7.5~8.5 m/s,风速计测量的到的风速为7.1~7.3 m/s;图8 中测量得到的空速为9.6~10.4 m/s,风速计测量的到的风速为9.3~9.6 m/s;图9 中测量得到的温度为25.43~25.45 ℃,温度计测量到的温度为27.03~27.07 ℃.可以看出测量得到的数据和实际的误差较小,能够满足无人旋翼机的操控要求.

图7 一档模拟飞行的空速测量数值

图8 二档模拟飞行的空速测量数值

图9 温度测量数值

5 结语

在分析了小型无人旋翼机需求的基础上,基于TMS320F28335 和MEMS 传感器设计的小型双采集装置大气数据采集系统测量高度误差在0.2 m 以内,空速误差在1.5 m/s 以内,温度误差在2 ℃以内,基本能够满足小型无人旋翼机的操控要求,并具有体积小,功耗低等优点,为小型无人旋翼机大气数据采集系统在实际中的应用做了一定的理论工作.

猜你喜欢

空速旋翼机气压
一种新型多通道可扩展气压控制器设计
看不见的气压
高速旋翼机典型构型发展与对比分析研究
基于增益调度与光滑切换的倾转旋翼机最优控制
倾转旋翼机巡航状态旋翼滑流影响
气压差减重步行康复训练系统设计
三维超声波测风仪在低空低动态飞艇上的应用
737NG空速管加温故障分析和预防措施研究
誉高航空集团携旋翼机亮相法库航展
马赫/空速警告失效及排除方法简析