无人机航姿数据采集与存储系统设计
第20期2016年7月No.20July ,2016
无人机航姿数据采集与存储系统设计
马玉猛
(中国民用航空飞行学院航空工程学院,四川广汉618370)
摘要:航姿数据是一项很重要的飞行数据,也是无人机进行自动控制必不可少的一项数据。文章针对
目前无人机存在现状,提出了一种基于微惯性传感器的航姿数据采集思路,完成系统所需要的硬件选择以及板卡的硬件电路设计,成功地将飞行过程中的航姿原始数据进行实时采集并保存。关键词:无人机;航姿数据;采集;存储江苏科技信息
Jiangsu Science &Technology Information 基金项目:中国民用航空飞行学院研究生创新项目;项目名称:无人直升机定向飞行控制系统设计与仿真;项目编号:X2013-16。作者简介:马玉猛(1990—),男,山东滨州,硕士;研究方向:航空电子。
0引言
近几年来,无人机事业发展迅速,从传统的军事用途,发展到民用,应用领域越来越广,现在已经出现了无人机送快递,伴随着无人机应用领域的变广,对无人机的控制要求也越来越高。无人机的控制离不开航姿数据,但现在有很多无人机人们无法获得其飞行过程中的航姿数据,严重阻碍了无人机的发展,针对这一问题,文章设计了一种航姿数据采集系统,能够将无人机飞行过程中的航姿数据进行保存,从而方便
人们后期进行分析以及对飞机进行改进[1]
。1设计思路
无人机航姿数据采集存储电路设计思路从图1系统电路图中可以看出,系统主要由3部分组成,数据采集传感器模块、单片机模块和数据存储模块。3个模块都位于一个底板上,底板上面还有非常多的数据接口,比如以太网接口、USB 接口、2.4G 无线接口等,这也方便后期对系统进行扩展,整个系统板卡不与飞机发生交联,不用过多考虑适航问题(如图1所示)。
2硬件选择2.1核心单片机
单片机负责连接前端传感器和后期数据的存储,
负责硬件间的通信,是系统的核心部分,必须选择高
性能的单片机以满足人们的设计需要,首先要有较高的运算能力,实时性高,其次要适应严酷的环境,由于系统要装备飞机,这就要求系统能适应多变的环境,同时还要求系统低功耗,因为要长时间在飞机上工作。基于以上考虑选择了stm32f103zet6型单片机。
Stm32系列单片机是由ST (意法半导体)公司研制生产,该公司于2007年6月发布了第一款stm32单片机,至今该系列已发布了上百个型号的单片机。stm32f103zet6具有丰富的外设资源和数据总线接口,有144个引脚,包括3个SPI 数据总线接口,2个I2S 总线接口,2个IIC 总线接口。3个12位的ADC 。4个通用的16位定时器和2个PWM 定时器,1个USB 接口,1个CAN 总线接口,1个SDIO 接口和5个USART 接口。丰富的外设接口可方便人们连接多种不同的传感器,也方便人们后期扩展更多的传感器和
功能[2]
。
2.2数据采集传感器
传感器主要负责数据的采集,捷联式惯性导航系统的主要数据就是三轴加速度和三轴角速度,传感器必须能够实时准确地采集这些数据,而且还要求抗干扰能力强,能够适应复杂的工作环境。
根据以上要求选择了InvenSense 公司生产的全球首个集成型的6轴加速度运动和角速度运动数据运行组件处理组件MPU6050,它集成了3轴MEMS (微机电系统)陀螺仪,3轴MEMS 加速度计,可数字输出三轴加速度和角速度,量程可编程控制。MPU6050也可以通过其I2C 接口连接非惯性的数字
传感器,比如压力传感器[3]
。2.3数据存储介质
数据存储模块主要是在飞行过程中将数据进行
图1航姿数据采集电路原理
56--
第20期2016年7月
No.20 July,2016
实时存储,根据实际需要数据存储模块应该具备以下功能:
(1)具有充足的存储容量。由于飞机需要长时间飞行,不可能也没必要每次飞行任务结束后都要对数据进行拷贝,这就需要存储设备能连续不断的存储数据,因此存储设备必须有足够的存储空间。
(2)拷贝方便。数据进行存储后,地面人员必须能方便地对其进行拷贝,以便后期做数据分析,因此最好选择可插拔式的通用存储设备[4]。
根据以上介绍和系统需求分析,选择SD卡非常适合系统需求。
3功能实现
3.1I2C通信协议
传感器与主机的通信采用IIC的通信方式,I2C (Inter-Integrated Circuit)协议是由Philips公司开发的,由于它具备引脚少、硬件实现简单、可扩展性强、不需要如USART、CAN的外部收发设备等特点,现在被广泛地使用在系统内多个集成电路(IC)间的通信。它只使用两条总线线路:一条双向串行数据线(SDA),一条串行时钟线(SCL),每个连接到总线的设备都有一个独立的地址,主机可以通过这个唯一的地址对器件进行操作。多主机同时使用总线时,为了防止数据冲突,会利用仲裁方式决定由哪个设备占用总线。
3.2SDIO驱动编写
SD卡由9个引脚与外部通信,支持SPI和SDIO 两种模式,人们采用SDIO方式与单片机通信。SDIO 接口包含CLK、CMD及4条DAT[3∶0]信号线。这6条信号线都是公用的总线,即新加入的设备可以并联接入到SDIO接口。SDIO主机是通过命令和SD从设备的响应来寻址的,所以不需要片选信号线。
CLK是卡的时钟信号线,由主机产生时钟信号,SD卡和SDIO卡的时钟频率可为0-25MHz。在命令和数据线上,每个时钟周期传输1位命令或数据。CMD为命令信号线,SDIO的所有由主机发出的命令及从机对命令的响应,都是在这个信号线上传输的。SDIO协议规定了非常多的命令,把这些命令分类别来整理,都有11种之多,包括基本命令、块读取命令、块写入命令、写保护命令、擦除命令、卡上锁命令、应用指定命令、I/O模式命令、功能选择命令及特殊的应用命令ACMD。DAT[3∶0]表示4条数据线,主机和从机的数据信号在这4条线上传输。
3.3文件系统移植
FATFS文件系统是常见的一种文件系统,主要应用于常见的单片机系统,分为FAT12,FAT32,FAT16三种格式,FATFS文件系统的头文件是独立进行编写的,由C语言的32个关键字构成。兼容性强,独立性
高,可方便地移植到其他嵌入式系统以及单片机上,比如51,ARM,AVR等,不需要作专门的修改,只需要将文件系统相关的头文件和代码移植到工程中,进行一些简单的配置,就可以实现文件的读写以及管理。
FATFS文件系统主要由3个模块构成:(1)底层接口。主要和底层存储设备打交道,比如光盘、SD卡、U 盘等。要根据不同的存储介质编写移植代码,通过接口函数对存储设备进行配置。(2)中间层FATFS模块。主要和存储设备建立联系,实现操作协议。FATFS模块提供头文件ff.c和ff.h,一般不需要修改。(3)顶层应用层。调用API接口函数通过中间层直接对文件进行操作,如f_open,f_write,f_read和f_close等,实现对SD卡数据的操作[5]。
3.4数据存储结果
首先用f_mount(0,&fs)程序在SD卡里注册一个工作区间,命名为0。然后用f_open(&fnew,″0:飞行数据.csv″,FA_OPEN_EXISTING|FA_WRITE)程序,该语句的功能是首先在SD卡注册的空间0里查找是否有一个名字为“飞行数据”的CSV文件,如果有则数据将保存在该文件中,如果没有则会新建一个CSV 文件,并命名为“飞行数据”。
这一步完成后就要进行航姿数据的写入,程序f_write(&fnew,&write_buf,sizeof(write_buf),&bw)实现了将write_buf里面的字符存入到地址为fnew的文件里面,上一条语句,人们已经将文件地 …… 此处隐藏:3104字,全部文档内容请下载后查看。喜欢就下载吧 ……
- 基于PLC控制的航空电镀生产线自动输送
- 中考预测课内外文言文对比阅读2
- 2018-2023年中国商业智能(BI)产业市场
- 中国金融体制改革研究2011new
- 外窗淋水试验方案
- 精益生产(Lean Production)
- 学校安全事故处置和信息报送制度
- Chapter 5 Human Resources Management
- 【小学数学】人教版小学六年级上册数学
- 初中数学解题方法与技巧
- 山东省创伤中心建设与管理指导原则(试
- 函数与数列的极限的强化练习题答案
- 10分钟淋巴按摩消脂
- 网络应急演练预案
- 服装设计入门基础知识
- 初二数学分式计算题练习
- (人教新课标)高二数学必修5第二章 数列
- 最新自主创业项目
- 北京大学 无机化学课件 4第4章 配合物
- 贸易公司业务管理制度




