数据提取与显示

2024-12-11

数据提取与显示(精选8篇)

数据提取与显示 篇1

摘要:大数据背景下人们的虚拟网络关系行为与现实关系行为颇具共性兴趣领域, 利用构建思维导图使用户对数据的抽象理解具象化, 通过人机交互的主动感知, 寻求用户主观兴趣模型, 增加交互式可视化界面, 同时对数据进行交互式聚类, 采用对原始数据粗聚类和对数据子类细聚类的方式实现, 从而动态地在用户自身所描绘的模糊信息内发现其共同感兴趣的领域, 实现数据图像化与显示。该大数据人机交互思维导图平台提供的分析, 为大数据分析与挖掘结果提供形象展示平台, 从而更好地为科学研究和生产生活决策提供服务。

关键词:数据,图像,函数,模糊聚类

数据图像化就是通过计算机技术巧妙地将枯燥的文字信息通过图像来呈现, 直观地将数据形像化地表达。这一技术在日常经济社会活动中已经被广泛地采用, 也越来越显示其直观、生动、形像的优点。本文试就数据图像化处理技术进行分析。

1 关键问题和解决方案

数据图像化的前提是获取足够多的数据, 数据形式是多样的, 包括数字、文字、图像、声音等。数据图像化就是要数据还原成对应坐标, 从而实现数据的可视化。主要解决方案利用一些非商业性质公开获取的用户兴趣数据作为初始数据, 读取搜集的用户兴趣信息数据, 找出某两列可以绘制成坐标的字段。

2 模块设计描述

方法一:void CKuan2View::On File Open () ;函数的功能是读取采集的用户感兴趣的数据, 先将窗体中显示坐标点的坐标轴画出来。 因为采集的用户兴趣数据的横坐标的取值范围在[20-130] 之间, 那么设置坐标轴的X坐标的起始位置是20, X轴的步长为10。纵坐标取值范围在[50-140] 之间, 设置Y轴坐标的起点为50, Y轴的步长也是10。设置C++中用户绘制窗体应用程序的画刷。 声明窗体CDC*p DC=Get DC () ;创建画刷, 并为画刷设置线条属性和线条的颜色CPen Pen (PS_DASH, 3, RGB (250, 0, 0) ) ;将创建的这个笔刷交给CPen *p Pen= p DC->Select Object (&Pen) ;如代码1所示。创建完画刷之后, 将读取的用户信息数据读取到内存单元中。

代码1 创建绘刷工具

进行方法二之前, 先将绘制的用户坐标系和坐标系上面的分割线绘制出来, 首先我们要在MFC的桌面端窗口中绘制一个方法一中说明的坐标系属性。X轴的坐标的起点为20, 步长为10, Y轴的坐标起始坐标为50, 增长的步长为10。设置坐标系、坐标点的代码如代码2 所示。

代码2打开目标文件的操作

方法二:void CKuan2View::OnD raw (CDC*p DC) , 该函数的功能建立坐标系、读取用户兴趣数据, 并且把用户兴趣数据转成坐标点呈现在坐标系中。FILE*fp=fopen ("c:\3.txt", "r") ;打开所要读取的用户兴趣数据。文件3.txt中存储采集的用户兴趣数据。循环读取文件3.txt中的数据存入声明的数组中pt Array, 其中ptA rray数据的数据结构是POINT类型的。将读取的用户兴趣数据的经度赋值给POINT的x坐标, 纬度赋值给POINT的y坐标。如代码3所示。这边要将3.txt文件中的所有数据读取出来, 并且用黑色的点在坐标系中显示出来, 即数据的可视化。

代码3建立可视化坐标系读取数据

3 功能实现说明

分析搜集到的用户兴趣数据, 循环读取出其中代表用户兴趣数据的经度、纬度, 将读取的经度和纬度的坐标赋值给声明的POINT数组中。其中经度坐标赋值给POINT类型数据变量的横坐标, 纬度坐标赋值给声明的POINT类型变量的纵坐标。在将这些点绘制出来之前首先需要创建这样的画刷, 设置画刷的一些相关属性, 包括画刷的颜色, 画刷的线条的类型等。

画刷创建并赋值属性之后, 需要将窗口界面的中用于显示这些数据的坐标系先画出来, 还要将坐标的标点和坐标的水平分割线表示出来。在画刷画完坐标系和坐标点后, 将数组中读取的用户感兴趣数据显示绘制在创建完的坐标系中, 系统界面如图1所示。

4 绘制多边形区域并保存区域内数据

如何记录绘制的多边形区域, 并将绘制的多边形区域中的用户兴趣数据保存起来?解决方案主要是在程序中实现了这样的功能, 在窗体的右上方事先设置多边形区域选择, 在保存多边形区域中选中数据的时候, 主要用到的算法是线性扫描算法。该模块设计中也包含两大主要功能, 首先是在利用鼠标手动选取多边形区域在窗体中显示。在窗体显示完之后可以对窗体中的多边形区域里面的数据进行遍历保存数据并输入到文本文件。系统界面如图2所示。同时监听鼠标的点击事件, 程序对用户的鼠标事件做出响应, 如代码4 所示。

代码4记录鼠标扫描轨迹

当确定多边形区域之后, 点击开始确定多边形内用户兴趣数据前, 首先介绍下扫描线算法的含义, 扫描线算法适用于图形的计算, 将多边形区域内的数据作为第一次模糊聚类的依据。扫描线算法的步骤分析:

(1) 计算扫描线与多边形的交点;

(2) 对第1步得到的交点按照其x值从小到大进行排序;

(3) 循环遍历将多边形区域内的点找出来;

(4) 能否实现多边形扫描?如果能就结束算法, 如果不能就变更扫描线, 然后转到第1步继续处理。第1步是决定算法能否完成的关键, 需要用尽可能少的计算量求出交点, 还要考虑到交点是线段端点的例外情况。

参考文献

[1]杨向天, 邬斌, 张君, 殷郊, 靳畅.六度分割理论下网络SNS模式发展对策研究[J].新西部 (理论版) , 2013 (05) :42-43.

[2]Jiawei Han, Micheline Kamber.范明, 译.数据挖掘概念与技术[M].北京机械工业出版社, 2001.

[3]Bjarne Stroustrup.C++程序设计原理与实践[M].机械工业出版社, 2010.

[4]秦晓薇.区域填充算法的研究[J].赤峰学院学报 (自然科学版) , 2011 (06) :47-49.

[5]庞淑敬, 彭建.一种改进的模糊C均值聚类算法[J].微计算机信息, 2012 (01) :161-162.

[6]张学敏.大数据时代的数据分析[J].电子世界, 2014 (16) :5-6.

数据提取与显示 篇2

基于红边位置提取验证成像与非成像高光谱数据的一致性

摘要:定量遥感是当前遥感发展的前沿,作物组分信息解析是农业定量遥感的研究热点,而成像高光谱技术为解决微观尺度的作物组分信息探测研究提供了强有力的手段.利用成像光谱仪( pushbroom imaging spectrometer,PIS)与地物光谱仪(FieldSpec ProFR2500,ASD)同步收集冬小麦、玉米不同生育期叶片的反射光谱,通过不同算法提取PIS与ASD数据的红边位置,验证成像光谱数据的精度.结果表明:(1)PIS与ASD原始光谱数据在红边区间(670~740nm)有很高的吻合度;(2)从室内光谱(玉米叶片)红边位置的提取结果看,两仪器提取的红边位置都集中在700~720nm;(3)从室外光谱(小麦叶片)红边位置的提取结果看,PIS与ASD数据提取结果有差异,PIS数据的红边位置在760nm处,而ASD数据的红边位置在720nm处,这种差异主要是成像光谱数据受氧气吸收的.影响较大所致;(4)PIS与ASD的红边变幅不同,但趋势相同.以上结论为成像光谱数据的深入应用提供了参考. 作者: 王大成[1]  张东彦[1]  赵晋陵[2]  李存军[2]  朱大洲[2]  黄文江[2]  李宇飞[3]  杨小冬[2] Author: WANG Da-cheng[1]  ZHANG Dong-yan[1]  ZHAO Jin-ling[2]  LI Cun-jun[2]  ZHU Da-zhou[2]  HUANG Wen-jiang[2]  LI Yu-fei[3]  YANG Xiao-dong[2] 作者单位: 国家农业信息化工程技术研究中心,北京100097; 浙江大学农业遥感与信息技术应用研究所,浙江杭州 310029国家农业信息化工程技术研究中心,北京,100097科学技术部中国农村技术开发中心星火与信息处,北京,100054 期 刊: 光谱学与光谱分析   ISTICEISCIPKU Journal: Spectroscopy and Spectral Analysis 年,卷(期): , 31(9) 分类号: S127 关键词: 红边位置    成像高光谱    玉米    冬小麦    叶片    机标分类号: TP3 S12 机标关键词: 红边位置    数据提取    验证    成像光谱数据    高光谱    数据的一致性    Data    imaging spectrometer    PIS    ASD    组分信息    结果    定量遥感    玉米叶片    地物光谱仪    成像光谱仪    不同生育期    作物    研究热点    信息解析 基金项目: 公益性行业(农业)科研专项项目,国家自然科学基金,北京市自然科学基金 基于红边位置提取验证成像与非成像高光谱数据的一致性[期刊论文]  光谱学与光谱分析 --2011, 31(9)王大成  张东彦  赵晋陵  李存军  朱大洲  黄文江  李宇飞  杨小冬定量遥感是当前遥感发展的前沿,作物组分信息解析是农业定量遥感的研究热点,而成像高光谱技术为解决微观尺度的作物组分信息探测研究提供了强有力的手段.利用成像光谱仪( pushbroom imaging spectrometer,PIS)与地物光谱...

数据提取与显示 篇3

Android平台使用Java语言进行开发,支持SQLite数据库、2D/3D图形加速、多媒体播放和摄像头等硬件设备,并设置了丰富的应用程序,如电子邮件客户端、闹钟、Web浏览器、计数器、通信录和MP3播放器等。Android采用了软件堆层(Software Stack)的架构,共分为4层:第一层是Linux内核,提供由操作系统内核管理的底层基础功能;第二层是中间件层,由函数库和Android运行时所需的虚拟机构成;第三层是应用程序框架层,提供了Android平台基本的管理功能和组件重用机制;第四层是应用程序层,提供了一系列核心应用程序[2]。数据信号的采集一般是通过USB、蓝牙、Wi Fi等方法,而本文是通过Android手机的麦克端来采集数字信号,从而实现了一种新型的数据采集的方法。

1 硬件系统设计

1.1 硬件结构

Android手机的麦克端不能接收任意频率的信号,只能接收频率在20 Hz~20 k Hz范围内(即达到音频信号的范围)的信号,因为只有音频信号才能被人耳听到,才能被麦克采集到。本文采集的信号是一电压信号,而电压信号不能直接被Android手机的麦克端接收。因此在硬件系统设计中,需要把电压信号转换成频率范围在20 Hz~20 k Hz之间的频率信号,即达到音频信号的标准。电压信号转换成频率信号的方法有很多,本文采用V/F转换器LM331实现把电压信号转换成频率在20 Hz~20 k Hz范围内的音频信号,其硬件框图如图1所示。

经调整电路后的频率信号就是标准的音频信号了,但信号并不能直接连接到送话器让Android手机的麦克端接收,因为不能保证周围绝对安静,误差会很大,而是要把音频信号与耳机中的送话器线相连,再把耳机与Android手机相连,这样就可以大大减少失真的程度。

1.2 V/F转换器LM331模块

LM331是美国NS公司生产的性价比较高的集成芯片,它是当前最简单的一种高精度V/F转换器,将电压信号转换成脉冲频率信号,输出频率严格正比于输入电压。LM331为双列直插式8引脚芯片,线性度好,最大非线性失真小于0.01%,工作频率为0.1 Hz时仍有较好的线性;变换精度高,分辨率可达16位;外接电路简单,只需接入几个外部元件就可方便地构成V/F转换器,并且容易保持转换精度。LM331在4.0 V的电压供电的情况下,就可在整个工作温度范围内高精度地工作[3]。V/F转换电路如图2所示。

2 音频格式

音频的格式有很多种,但在Android的API中与音频有关的包是android.media,其中有两个类是与音频采集有关的,分别是Media Recorder和Audio Record。用MediaRecorder采集的音频信号经过压缩编码后变成的声音数据为AMR格式。但因为数据是被压缩的,所以在读取数据时,要面临解压缩的问题。而用Audio Record采集音频可以直接获得无压缩的PCM数据,即可以直接读取音频数据,数据不再需要解压缩。基于Audio Record的方便性与实用性,本文采用Audio Record来采集音频信号。

脉冲编码调制PCM(Pulse Code Modulation)是将音频数字化的最好途径,声音经过麦克风,转换成一系列电压变化的信号。要将这样的信号转换成PCM格式,要使用声道数、采样位数和采样频率3个参数来表示声音:(1)声道数可分为单声道和立体声,单声道即用一个传声器拾取声音,用一个扬声器来播放声音;而立体声则是由两个传声器轮流拾取声音,用两个扬声器来播放声音。(2)采样位数即采样值,它是用来衡量声音动态波动变化的一个参数,其值越大,分辨率就越高,在Android提供的API中,所提供的分辨率有8 bit和16 bit两种。(3)采样频率(即取样频率)指的是每秒钟采得声音样本的次数,采样频率越高,声音的质量也就越好,声音的还原越真实,同时它占用的资源也比较多。通常选用的采样频率一般有11 025 Hz、22 050 Hz和44 100 Hz。11 025 Hz、8 bit的声音称为电话音质;22 050 Hz、16 bit的声音称为广播音质;44 100 Hz、16 bit已达到CD的音质了[4]。

3 Android平台下的软件系统设计

首先是建立Android工程(即Media PCM),其中包括主界面Main Activity,在主界面上有Media File和Recorder两个图标,分别代表音频文件列表和音频信号采集,如图3所示。

点击右边的Recorder,就会进入到音频采集界面(即RecordActivity),实现采集和播放音频的功能,同时要把采集到的音频打包成文件存放到SD卡指定的目录下;点击左边Media File,就会进入到音频文件显示列表界面(即List Activity),点击其中某一项文件,就会进入波形显示界面(即Wave Form Activity),就会把音频文件以二进制数据的形式显示在Android手机的界面上。软件系统的整体框架流程图如图4所示。

3.1 清单(Android Manifest)文件

在每一个Android项目中,都包含了一个清单(Android Manifest)文件,即Android Manifest.xml,它存储在项目层次中的最底层,用于在程序运行之前向Android系统声明程序的相关信息,这些信息包括应用程序需要的许可、程序运行的最低SDK版本、程序运行所需要的硬件支持和函数库等。由于本文要用到SD卡的操作和采集音频信号(即录音)的操作,所以要在Android Manifest.xml文件中加入以下两个权限:"android.permission.WRITE_EXTERNAL_STORAGE"和"android.permission.RECORD_AU-DIO",这样就可以访问SD卡和进行采集音频信号了。

3.2 音频的采集与播放

因为音频的采集需要使用Audio Record类,与之对应的音频的播放需要用到Audio Track类;要把声音转化成PCM格式,需要使用采样频率、声道数和采样位数这三个参数。因此在编写程序时,要对这三个参数进行初始化,即在本文中表示为frequence、channel Config和audio Encoding。本文采用的是采样频率为44 100 Hz、单声道16位进行采样。点击开始按钮(start Button)时,就会开始录音(即采集音频信号)。其核心代码如下:

其中,buffer Size是根据采样频率、声道和采样位数三个参数得到一个最小的缓冲区,并且Media Recorder.Audio Sou-rce.MIC声明了音频信号的来源是Android手机的麦克端。这样当调用record的start Recording()方法时就开始录音(即音频采集);当点击停止按钮(stop Button)时就会停止采集;点击播放按钮(play Button)时,就开始播放已经录制的音频;点击结束按钮(finish Button)就结束播放音频。至于播放音频这一项,对数据的采集并没有太大的影响。为了完善界面,在没有硬件电路的情况下,只用一个Android手机也能完成录音播放的功能。录音界面如图5所示。

3.3 打包音频文件

只采集音频信号是远远不够的,还要把采集到的音频信号打包成文件存放到SD卡指定的目录中,并把采集到的音频信号显示在音频文件显示界面上,在SD卡中的位置如图6所示。

本文把采集到的文件放在SD卡的Media File/File中,并根据当天的日期所建立的文件夹下(如本文的2012/1/12),确保把当天采集到的音频文件存放在一起,以便于查询。

在现实音频文件列表时,是根据日历的形式存储的,有内容的当天日期会有标记,点击标记日就会进入音频文件显示界面,如图7所示。

3.4 读取并显示音频文件

把音频数据文件保存到SD卡中,工作并没有结束,最终还要把音频文件以二进制数据的形式读出来输送到Android手机界面上。首先把音频文件以列表的形式显示出来(即显示在List Activity界面下),点击采集到的文件My File66315.pcm,即以读的形式打开文件,并把存在文件中的数据以二进制的形式输送到波形显示界面上(即本文的Wave Form Activity界面)。波形显示界面如图8所示。至此使用Android手机麦克端实现数据采集并显示的工作已经完成。

选择用手机的麦克端来采集数据主要是为了不仅仅只能通过USB、蓝牙等的数据采集方法,而开拓出一种新型的数据采集方法。使用手机的麦克端来采集数据,要通过硬件电路把所要采集的数据信号转换成音频信号,才能被麦克端采集到。使用Android手机平台,可以在界面的设计上下一番功夫,设计出自己喜好的界面,与一般的显示器相比,Android界面更加小巧美观,在未来,Android平台势必会在各行各业中发挥其巨大的作用。

参考文献

[1]李杨,冯刚,李亮,等.基于Android的多媒体开发与研究[J].计算机与现代化,2011(4):149-152.

[2]王向辉,张国印,沈洁.Android应用程序开发,第1版[M].北京:清华大学出版社,2010.

[3]刘金华,皮大能,程彩云.LM331与PIC16F73单片机实现数据采集[J].自动化技术与应用,2009,28(11):116-119.

数据提取与显示 篇4

1 设计需求

1.1 数据处理能力强、功耗低

在飞行过程中, 飞行显示器需要向飞行员显示飞行、驾驶、导航、动力装置等系统工作状态;同时根据不同飞行任务的特点, 还需要实现三维地图、视景增强等显示功能, 这就要求飞行显示器具有非常强的数据处理能力。同时, 小型通用飞机由于机身尺寸、发动机功率和成本等诸多因素的限制, 驾驶座舱一般没有空调系统, 所以飞行显示器还应具有功耗低、发热量小的特点。

1.2 机载设备接口丰富、扩展性强

小型通用飞机一般选择低成本航电系统, 各种机载设备 (如音频控制器、大气数据计算机、S模式应答机, 甚高频电台、气象雷达等) 分别通过RS422、RS485、ARINC429/702、ARINC708/453等接口直接与飞行显示器交联, 所以飞行显示器应具有丰富的机载设备接口。同时, 为适应不同航电系统架构的需求, 飞行显示器还需要具备一定的扩展性, 满足不同用户可定制的需求。

1.3 体积小、重量轻

小型通用飞机座舱尺寸较小, 机载设备安装空间有限。机身尺寸和重量的增加就需要增大发动机率, 同时直接导致飞机油耗的上升。飞行显示器在满足既定功能的前提下, 体积应尽量小, 重量应尽量轻, 10.4英寸LCD显示器是目前国外小型通用飞机航电系统的主流配置。

1.4 通用化、系列化、低成本

随着机载计算机技术的不断发展, 开放式航电系统架构在小型通用飞机中得以广泛应用。开放式的航电系统构型灵活, 易于升级, 安全性、可靠性更高, 维护性更好, 同时有更多的商用货架产品可选择。飞行显示器应采用统一的模块化、标准化设计技术, 满足统一开放的航电系统标准, 形成通用化、系列化的货架产品, 降低设计制造和后期维护的成本。

2 系统结构

小型通用飞机航电系统架构中, 飞行显示器与多个机载设备交联, 是航电系统的核心部件。飞行显示器系统结构按照功能定义, 供电单元负责为飞行显示器提供二次电源;数据处理单元实现飞行显示器的任务管理、数据处理和图像显示功能, 实时采集交联设备数据, 进行数据融合后, 将数据送到显示处理单元进行2D/3D硬件加速处理, 然后按照系统规范在LCD显示组件中进行显示。图1为小型通用飞机飞行显示器系统结构。

3 硬件设计

数据处理单元采用双处理器结构, 主处理器采用高性能嵌入式Power PC处理器, 完成数据处理、任务管理和图像显示功能;智能IO处理器采用高性能DSP处理器, 完成与机载设备的数据通信功能。双处理器之间通过大容量DPRAM (双口存储器) , 以共享内存的方式进行数据交换[2]。图2为数据处理单元硬件结构框图。

3.1 主处理器设计

高性能、低功耗的嵌入式处理器的选用能有效提高飞行显示器的能耗比。飞行显示器数据处理单元主处理器采用MPC8270。MPC8270是Freescale公司Power QUICCⅡ系列的一款高性能超标量嵌入式处理器, 主要由G2_LE内核、系统接口单元 (SIU) 和通信处理模块 (CPM) 组成[3]。

主处理器设计中, MPC8270时钟配置采用PCI host模式, CPU/CPM/BUS频率分别配置为400 MHz、200 MHz和100 MHz, 该配置下MPC8270典型功耗仅为2.1 W。在MPC8270的60X总线上配置了多种存储器, 其中NVSRAM用于飞行显示器故障数据的记录。

3.2 智能IO设计

飞行显示器与多个机载设备交联, 如果由主处理器直接管理外部接口, 频繁地响应外部接口事务, 会导致主处理器运行效率低下, 所以数据处理单元设计了一个智能IO处理器专门用于处理交联设备数据。飞行显示器智能IO处理器采用TMS320F2812。TMS320F2812是TI公司的32位高性能、低功耗DSP处理器, 采用先进的哈佛总线结构, 处理能力达150 MIPS[4]。

智能IO设计中, TMS320F2812主频配置为120 MHz, XINTF总线频率配置为30 MHz, 采用处理器内部集成的存储器作为接口处理软件的存储空间和运行空间。智能IO处理器负责完成所有外部接口的数据通信, 对接收到的数据进行解析处理, 将处理后的数据写到DPRAM中。主处理器根据飞行显示任务的需要, 随时通过DPRAM对外部接口进行访问, 这样就显著提高了主处理器的运行效率。

3.3 存储设备设计

飞行显示器配置了大容量的IDE电子盘和SD卡。IDE电子盘和SD卡均通过主处理器的PCI总线访问, 在FPGA中实现PCI总线到IDE接口和SD卡接口的桥接功能。两种存储设备均配置FAT32文件系统和支持数据加卸载。IDE电子盘的读访问采用PIO或DMA方式, 写访问采用PIO方式, IDE电子盘用于存放数字地图数据。SD卡作为移动存储设备, 读写访问均采用DMA方式, 用于在飞行任务结束后下载飞行显示器记录的发动机参数数据。

3.4 外部接口设计

数据处理单元提供丰富的外部接口, 用于与外部机载设备进行数据通信。数据处理单元外部接口设计包括以下4部分:

(1) PCI总线接口:数据处理单元通过PCI总线与显示处理单元通信, 显示处理单元采用高性能GPU处理器, 完成显示图像的2D/3D加速处理;

(2) 串行通信接口:数据处理单元提供6路RS422接口与14路ARINC429接口, 用于飞行显示器与各机载设备进行数据通信, 其中1路RS422接口用于数据处理单元与LCD显示组件的周边按键通信;

(3) 离散量接口:数据处理单元提供12路输入/输出离散量接口, 信号特性可配置, 用于与机载设备进行离散量通信;

(4) A/D转换接口:数据处理单元提供4路A/D转换接口, 用于在数字地图导航任务中实现X、Y方向坐标定位等类似功能。

3.5 可编程逻辑设计

数据处理单元需要在FPGA中实现大量的协议转换、总线桥接和接口控制功能, 要求选用的FPGA器件逻辑规模足够大, 引脚数量足够多。同时, 考虑到飞行显示器的设计需求, FPGA要选用低功耗、低成本器件, 并且在逻辑单元数量上应留有一定的余量, 以备后期进行功能升级。XC6SLX100是Xilinx公司Spartan-6 LX系列的FPGA, 该系列FPGA采用可靠的低功耗45 nm 9层金属布线双层氧化工艺技术生产, 比前一代Spartan系列功耗降低多达65%, 主要针对需要低功耗、低成本的产品应用[5]。

数据处理单元FPGA设计采用1片XC6SLX100芯片, 主要实现以下6部分功能:

(1) 时钟倍频功能:将外部晶振输入的25 MHz时钟4倍频到100 MHz, 提供给主处理器和SDRAM使用;

(2) 主处理器配置功能:实现主处理器的上电复位配置、看门狗控制、中断配置、内部状态寄存器等功能;

(3) 60X总线地址译码功能:实现主处理器的60X总线译码以及Flash、NVSRAM的访问控制等功能;

(4) 总线桥接功能:实现PCI总线到DPRAM接口、PCI总线到IDE接口和PCI总线到SD卡接口的总线桥接功能;

(5) XINTF总线地址译码功能:实现智能IO处理器的XINTF总线地址译码以及串行通信接口、离散量接口和A/D转换接口的访问控制功能;

(6) 协议转换功能:实现RS422接口、ARINC429接口的协议转换功能。

图3为数据处理单元可编程逻辑设计框图。

4 软件设计

飞行显示器数据处理单元软件架构包括三部分:地面支持软件、主处理器上运行的系统显示控制软件和智能IO处理器上运行的外部接口处理软件。图4为数据处理单元软件架构。

4.1 地面支持软件

地面支持软件包括在线编程工具、Tornado集成开发环境和CCS集成开发环境。这些软件均安装在软件开发设备中, 完成软件的编辑、编译、连接、加载、调试和固化等工作, 并通过集成的调试工具对数据处理单元的软硬件状态进行监控。

4.2 显示控制软件

显示控制软件包括主处理器板级支持软件、应用支持软件和应用软件。应用支持软件是位于板级支持软件与应用软件之间的中间层软件, 主要为应用程序提供多种开发支持, 如显示控制 (字体库、Open GL图形库等) 、地图导航、软件升级、数据加卸载等;应用软件根据系统功能需求, 负责完成飞行状态、参数的综合处理、显示与控制、显示器周边按键处理、网络通信、周期性自检、故障告警与异常处理功能以及数据加卸载、系统维护等辅助功能[6]。

4.3 接口处理软件

接口处理软件包括智能IO处理器板级支持软件和通信处理软件。通信处理软件完成RS422、ARINC429、离散量和A/D转换接口的数据通信, 并根据ICD (接口控制文件) 文件的要求, 完成对从各个机载设备接收到的数据包的解析处理和控制命令的发送工作。

4.4 板级支持软件

数据处理单元软件设计中, 板级支持软件是介于底层硬件与上层软件之间的底层软件开发包, 为上层应用提供统一的软件接口[7]。

主处理器板级支持软件主要包括处理器硬件初始化、操作系统引导、实时操作系统、必要的硬件BIT测试及提供相应设备的驱动软件。操作系统设计开发中, 对Vx Works 5.5内核进行功能剪裁, 实现的功能包括:快速实时响应、多任务调度、支持高速缓存、动态存储器管理、提供同步信号量和互斥信号量、消息队列管理、系统时钟和辅助时钟支持、用户API接口、C/C++运行环境、网络功能组件等。

智能IO处理器板级支持软件主要包括接口处理软件的自引导、处理器硬件初始化、必要的硬件BIT测试及提供外部接口的驱动软件。外部接口驱动软件的设计开发中, 在XINTF总线的大容量DPRAM空间按照功能划分为若干区域, 分别作为主处理器命令区、智能IO状态区、外部接口数据缓冲区、BIT测试结果保存区等。系统上电后, 主处理器通过DPRAM发送相应命令, 通知智能IO处理器完成外部接口的初始化、硬件BIT测试, 启动外部接口通信处理软件, 同时通过状态区监测智能IO的运行状态。

5 设计实现

数据处理单元在Vx Works 5.5操作系统下实现了Open GL图像库的移植, 通过典型的主飞行显示界面的实现来验证数据处理单元的功能。图5为典型的主飞行显示界面。

主飞行显示界面的上半部分为速度指示、高度指示和姿态指示;下半部分为罗盘指示。根据飞行员对显示器周边按键的操作或系统认定的重要度, 主飞行显示界面还可以显示升降速度、仪表着陆引导、电台频率、发动机参数、GPS导航、故障告警、机身状态、数字地图导航等信息。

针对小型通用飞机飞行显示器的设计需求, 本文创新地设计了飞行显示器数据处理单元的软硬件架构。数据处理单元基于双处理器架构, 采用模块化的设计思想, 选用高性能、低功耗处理器和大规模FPGA, 提供多路机载设备接口, 降低了研发和维护成本, 同时为以后功能升级提供了良好的基础。实现结果表明, 该飞行显示器数据处理单元在通用航空领域具有广泛的应用前景。

摘要:为了满足小型通用飞机对飞行显示器性能、功耗、体积、成本等多方面的要求, 实现了一种基于双处理器的飞行显示器数据处理单元。首先介绍了小型通用飞机对飞行显示器的设计需求, 其次详细描述了飞行显示器的系统结构和数据处理单元的软硬件实现, 最后通过典型主飞行显示界面的实现, 验证了数据处理单元的功能。验证结果表明, 该数据处理单元具有处理能力强、集成度高、功耗低和扩展性强的特点, 具有广泛的应用前景。

关键词:小型通用飞机,飞行显示器,数据处理单元,软硬件设计,主飞行显示界面

参考文献

[1]陈东林.航空概论[M].北京:国防工业出版社, 2008.

[2]李彦迪, 金伟正, 王丹.基于FPGA的HD-SDI编解码技术的研究和开发[J].电子技术应用, 2012, 38 (12) :48-50.

[3]Freescale Semiconductor Inc.MPC8280 PowerQUICCⅡfamily reference manual[EB/OL]. (2007) [2014].http://www.freescale.com.

[4]Texas Instruments Inc.TMS320F2812 digital signal processors data manual[EB/OL]. (2005) [2014].http://www.ti.com.

[5]Xilinx Inc.Spartan-6 family overview[EB/OL].http://www.xilinx.com, 2010.

[6]刘硕, 林荣超.综合座舱显示控制系统的设计与实现[J].现代电子技术, 2010 (15) :160-162.

数据提取与显示 篇5

关键词:飞行轨迹,空空导弹遥测,三维实时显示,虚拟场景

0 引 言

目前空空导弹遥测数据显示方式还处于二维显示模式,为了适应空空导弹遥测数据处理的发展要求,细致逼真地显示导弹的空中运动特征,迫切需要设计空空导弹遥测数据三维实时显示系统。三维实时显示系统从网络接收遥测数据,根据数据实时渲染高度逼真的三维虚拟场景,在模拟的三维环境中实时生动地显示载机、导弹和靶机的飞行轨迹、姿态、弹目交汇等特征。

1 设计要求

该系统中包含一系列三维仿真显示模块,可实现导弹姿态、舵面偏角、弹目距离等测试信息的三维实时显示,并具有实时模拟导弹、靶机等三维轨迹的功能。设计功能如下所述。

1.1 遥测数据接收

实时接收以太网络端口传送的遥测数据,获得三维数据并按照帧格式进行编排,作为实时显示模块的数据依据。

1.2 场景创建与配置

构建三维场景及景物目标的三维模型,创建VP的场景配置文件,运行时载入场景配置文件,实时绘制渲染相应三维场景[1]。

1.3 三维实时显示

三维实时显示系统由三维实时轨迹显示模块和三维实时姿态显示模块组成。实时轨迹显示模块实现三维导弹实验场虚拟场景和飞行器目标运行轨迹实时显示;实时姿态显示模块近距离显示飞行器目标整体以及详细的飞行器各个活动部位的动作响应,并通过一定特效设计,如烟火、爆炸、闪光等,提供给用户逼真生动的视觉效果。

1.4 用户交互操作

用户通过人机界面,对三维显示系统进行实时交互控制,包括:视窗显示内容选择,如场景位置及飞行器目标选择、视点参数设置、轨迹显示参数设置、弹目交汇显示设置等。

2 系统运行环境

2.1 硬件环境

三维实时显示系统的硬件平台选用专用可视化图形工作站,主要性能参数如下:

主机型号:DELL Precision 690MT;双CPU处理器:双核英特尔R 至强R 处理器5080 3.73 GHz/4 MB L2缓存;内存容量:4 GB(2×2 GB双通道DDR2);图形卡:NVIDA Quadro FX4500(512 MB)。

2.2 软件环境

软件环境为:Windows XP操作系统;三维可视化视景仿真开发系统软件环境:Vega Development Environment;VSG(Vega Scene Graph)高级跨平台场景渲染API。

3 系统设计

系统设计主要由三维几何建模与空间坐标系建立、三维实时显示系统软件两部分组成。

3.1 三维几何建模与空间坐标系建立

运用外部建模工具建立导弹和靶机等景物几何模型,生成相应的真实感贴图纹理图像,并根据模拟飞行三维空间场坐标建立地球空间直角坐标系,在此基础上利用导弹飞行弹道、载机与靶机的飞行轨迹等的实时遥测数据或模拟数据,将飞行器的飞行数据以三维可视化立体形式显示,解决以往导弹飞行轨迹仿真中以地图平面投影形式进行二维显示的局限性,具有很强的三维直观性和交互性[2]。

3.2 三维实时显示软件设计

三维实时显示系统软件主要由可视化系统用户主界面、三维场景模块、系统自己监控模块、驱动数据管理模块组成。组成框图如图1所示。

3.2.1 可视化系统用户主界面设计

可视化系统用户主界面设计是系统的核心所在,其它模块主要提供后台支持,主要由控制菜单、用户控制面板、三维视窗区三部分组成。三维实时显示系统的运行主界面如图2所示。

(1) 控制菜单。

可以实现用户对三维显示实时数据、视窗显示内容、视点视域参数、飞行器及场景显示设置等交互的参数设置控制功能,具体控制菜单内容根据三维实时姿态显示、三维轨迹显示而有所不同;运行时,用户通过菜单调出相应参数设置对话框,实时交互地对相关参数进行设定。

(2) 用户控制面板。

可以实现用户进行参数设置控制功能的快捷方式,控制面板上主要布置三维显示系统运行时最主要的实时控制参数集合,用户通过控制面板上的相应控件对三维显示视窗显示内容与属性进行实时调整设置,并能从三维视窗显示区实时观察到参数设置后的结果。用户控制面板的主要数据控制内容包括:显示目标设置、视窗设置、视点控制、轨迹参数设置、轨迹显示选择、弹目交汇切换控制等的设定、视景缩放控制、与姿态相关用户定制的数字信息显示、与轨迹相关用户定制的数字信息显示等。

(3) 三维视窗区。

能够实现实时三维场景显示,场景显示内容由实时三维数据驱动。对于三维实时姿态显示模块,采用单视口全屏或多视口分屏显示方式,根据实时三维数据,近距离显示飞行器目标整体空中姿态以及详细的飞行器各个活动部位的动作响应;对于三维实时轨迹显示模块,根据实时三维数据,实时显示三维导弹实验场虚拟场景和飞行器目标运行轨迹等。

3.2.2 三维场景模块设计

三维场景模块是三维实时显示系统的核心模块,根据获得的导弹和靶机等数据信息与相关控制信息,实时逼真绘制出导弹与靶机飞行与交汇等的三维真实感虚拟场景,并使用户能对虚拟的模拟场景进行交互操作。三维场景模块主要有三维实时姿态显示模块和三维实时轨迹显示模块。

(1) 三维实时姿态显示模块。

根据实时接收的三维数据与状态数据,包括导弹相关参数、用户控制操作等,逼真显示出飞行器目标(导弹、载机、靶机)的整体空中姿态以及详细的飞行器各个活动部位的实时动作响应,以及相应的烟火特效等视觉效果;动态展示弹目交汇过程,通过爆炸、燃烧、烟火、闪光等特效,增强导弹攻击目标时场景的视觉逼真感[3,4]。图3为多视口实时姿态显示场景。

姿态场景显示的主要功能包括:

① 动态显示导弹飞行姿态、活动部件的实时动作响应,实时绘制出导弹的各种姿态,如导弹的俯仰、偏航、滚转、发动机喷(熄)火、舵面/扰流舵/折叠翼姿态、模拟尾焰特效等;

② 动态展示弹目交汇过程及特效显示,模拟导弹击中靶机时的损伤特效,使用闪光、烟火、爆炸碎片及声音的表现形式,使参试者获得强烈的视觉效果。

③ 用户观察点管理,提供三种预设观察点方式:视点固定在导弹附近、视点固定在目标(靶机)附近和视点固定在导弹和目标之外的某个位置。

④ 实时动态交互地改变观察角度及观察者视角等参数[5]。

(2) 三维实时轨迹显示模块。

实时轨迹跟踪显示系统实时接收各种输入数据,如导弹、靶机相关参数、用户控制操作等,实时绘出真实感强的虚拟场景下的目标运动轨迹[6,7]。载机、靶机、导弹的运动状态、运动位置要与真实情况符合。该系统将构建一个虚拟的三维导弹实验场示意主场景,运行时,在三维视窗内,支持对4发导弹和靶机、载机的实时轨迹显示,用不同颜色相区别,颜色可编辑,能够调整显示区域,使多飞行器目标模型的轨迹实时显示在当前可视区域内[8]。使用户获得非常形象、直观的多目标空间运动位置关系。图4为实时轨迹显示场景。

3.2.3 驱动数据管理模块设计

驱动数据管理模块主要负责三维场景动态目标(导弹、靶机等)的驱动数据的管理,它对实时接收到的遥测数据进行存储、分配和调度等管理。数据接收采用UDP通信协议,保证了网络通信的实时性和高速要求。

3.2.4 系统自检监控模块

系统自检监控模块控制管理可视化系统运行,并对系统进行状态检查,运行监控,错误诊断与报警等处理。

4 结 语

经过某导弹数据测试,对于4个飞行器目标的情况(如:两路靶机、两路导弹),成功实现了三维VP场景中飞行器目标的轨迹和姿态模型的实时更新与绘制,速率可达100 f/s,满足系统设计要求。

参考文献

[1]张喜涛,姜昱明.可漫游的虚拟战场环境建模与实现[J].计算机仿真,2006,23(10):189-193.

[2]王乘,周均清,李利军.Creator可视化仿真建模技术[M].武汉:华中科技大学出版社,2005.

[3]李京伟,张利萍.基于虚拟现实技术的飞行视景仿真[J].计算机工程与设计,2005,26(7):1936-1937.

[4]殷宏,王志东,许继恒.基于Creator/Vega的战场视景仿真[J].解放军理工大学学报:自然科学版,2005(2):137-141.

[5]张德锋,王华兵,薛原,等.基于Vega Prime的视景仿真技术研究与应用[J].计算机仿真,2006,23(7):191-192.

[6]龚桌蓉.Vega程序设计[M].北京:国防工业出版社,2002.

[7]王乘,李利军,周均清,等.Vega实时三维视景仿真技术[M].武汉:华中科技大学出版社,2005.

数据提取与显示 篇6

随着数字图像技术发展的日渐成熟, 人们对图像的处理以及显示效果也要求越来越高。同时, 对于如何以更方便简捷的方式对图像系统进行调试也成为一个必要的发展趋势。本文研究的是基于VC++的图像数据采集与显示处理的研究。采用在线式网络接口进行数据传输, 利用C++语言灵活性与MFC中封装类的结合, 来构成设计的基础平台。在此基础上进行图像数据采集与数据处理的加工, 最后形成可调试参数的界面化显示输出。

1 硬件组成与软件设计思想

1.1 硬件组成

在本次研究中, 对程序研发过程中的系统设计, 硬件部分采用CCD可见光摄像机进行图像采集, 以TCP/IP网络协议进行网络传输, 送入计算机控制中心。

1.2 软件设计框架

本文提出的一种通用的设计流程。主要是针对图像处理而开发的, 无论是动态图像数据处理还是静态图像数据处理, 都需要经过一个入口来接收它, 才可以进行处理与显示。由于图像数据处理过程中, 关键的是与原始图像进行对比, 所以不经过处理直接进行界面化显示, 以得到与原始图像对比效果。这样就会出现一个通道口两种显示处理方式。

2 数字图像数据采集模块设计

2.1 MFC简介

MFC库是开发Windows应用程序的C++接口。它提供了面向对象的框架, 程序开发人员可以基于这一框架开发Windows应用程序[1]。它同时还提供了基于图形封装类, 如CDC、Cpen等及用它的通用类[2]。最后, 则通过VC++函数库实现了应用程序顺序逻辑性。

2.2 数字图像数据采集模块设计

这部分设计是数据的接收口, 也是关键的第一步。建立好MFC项Dialog base模式后, 定义好“采集”功能按键后, 进行代码输入。

对于图像处理技术来说, 往往先是对静态图像进行调试验证, 那么想对动态图像进行数据保存, 就需要生成数据文件。相关代码如下:int len=153600;//定义生成二进制数据个数范围

这段程序代码是动态图像中所需的图像数据文件成生一个二进制数据文件进行保存。

2.3 分析说明

以上程序分别说明在图像处理软件编程中动态图像获取与静态图像获取的区别;以同一种方式从摄像机获取资源, 根据不同目的运用结构体定义。在第一段动态图像显示程序中, 它的结构体定义在动态链接库的头文件中。而在第二段静态图像保存中, 则很简单的应用了C++语言的类和对像的应用。这也给界面的完整性与美观性带来了很好的视觉效果。这样便形成了一个很好的抓图功能。

3 数字图像处理模块设计

对于一个图像处理软件的编译, 在这部分无论采用何种方法对数据进行采集, 都要从接收口的原始数据进行算法实验。

3.1 数据处理编程序方法分析

大多数图像处理都是基于与设备无关位图 (DIB) 来进行讨论的, 在其中封装必需要有有效的DIB数据成员和处理函数[3]。其实这样做会给编程人员带了很多麻烦。如果利用好MFC中的CDC类, 再通过指针对函数进传递。这样会减少一部分工作量。

从上面静态图像数据文件中获取数据进行算法插入的编译方法, 通过对8位数据运算编译进行演示。相关代码如下;

以上是对8位的图像数据进行输出显示的程序代码, 通过CDC类进行绘图的成员变量与成员函数的定义。由于没有对其进行算法的加入, 通过Set DIBits To Device进行8位数据处理的位图设置, 以达到的8位显示数据通过MFC封装类定义中的函数与句柄进行处理后直接反馈到屏幕上。

3.2 灰度算法插入方法

无论是8位、还是16位或是更高位的数据源, 对于算法的添加都应该是在原始数据接口处, 这样以保证数据显示的有效性。对于一个线性的灰度公式y=a×x+b[4]的算法添加, 我们利用上面的8位显示效果进行加入与编译。

当程序运行到m_p8Data Buf= (LPBYTE) lp Temp时, 视为原始数据未经过处理而直接显示输出。下进行对加入想要的相关算法, 就需要将原来的m_p8Data Buf= (LPBYTE) lp Temp;进行另一种线性算法运算, 其方法如下:m_p8Data Buf= (LPBYTE) ( (double) a*lp Temp+b) ;此时m_p8Data Buf= (LPBYTE) lp Temp语句已经改成了m_p8Data Buf= (LPBYTE) ( (double) a*lp Temp+b) 也就说明, 每个像素的灰度值进行了运算, 那么所生成了新的显示效果同样会通过下面的执行语句进行显示输出。

3.3界面化显示实现

在以上的数据采集与数据处理程序进行编译后, 最后可以实现界面化显示。在这个环节中对m_p8Data Buf直接执行输出显示的可视为动态进实图像, 而对静态处理图像则需要一个处理后的反馈输出显示。如图1, 8位灰度图像界面化显示界面平台。

4结论

本文是基于VC++提供的MFC类的应用, 在此基础上进行程序研究, 实现了以网络协义的传输方式进行图像采集与处理的编程分析, 充分应用了VC++的灵活性, 提出了简单有效的方法。使以最简单的方法, 加快了数据处理的运算速度, 最终形成使用便捷的界面化模式的显示输出。并且在图像处理的各种实验平台的设计与应用起到非常有应用价值现实意义。

摘要:基于VC++软件平台, 应用C++语言编程, 针对图像处理实际应用与图像数据采集与数据处理算法加入等功能平台而设计, 并且最终实现界面化显效果。

关键词:图像处理,数据算法,C++

参考文献

[1]孙鑫, 余安萍.VC++深入详解[M].北京:电子工业出版社, 2008, 4.

[2]任哲.MFC Windows应用程序设计[M].北京:清华大学出版社, 2004, 7.

[3]谭林秋.基于VC++的数字图像处理系统的开发及算法研究[D].硕士学位.西安:西安理工大学, 2008, 3.

数据提取与显示 篇7

关键词:FPGA+DSP,无线传输,数据采集处理,导航解算

随着惯性导航应用领域的不断拓展, 以通用或专用计算机为核心的惯性导航系统由于其体积、功耗、成本等因素, 不再适用于炮弹等微小体积的应用场合[1]。因此, 由MEMS惯性器件组成的惯性测量单元作为传感器, 以DSP+单片机和DSP+FPGA作为信号处理器的硬件导航平台得到了广泛应用。在实际选择时, 往往要在考虑导航计算速度、运算精度和数据传输方式等因素的基础上, 兼顾成本、功耗以及体积等[2,3]。

现设计了一种DSP+FPGA架构的导航数据采集处理与实时显示系统。该系统能实时采集处理惯性测量单元的信息, 并通过无线传输实时显示到PC机上。

1 系统总体设计

整个系统以DSP和FPGA为核心部件, 组成了主从式、紧耦合、双处理器体系结构的低功耗、低成本组合导航计算机[4]。系统总体框图如图1所示, MIMU模块是由中北大学自主研制, 该微惯性测试单元由3个ADI的单轴陀螺仪ADXRS624和3个Silicon Design的单轴加速度计Model1221L正交安装组成[5]。Xilinx的XC2S30控制系统时序, 它具有丰富的硬件资源和很高的编程灵活性, 可以实现系统相关逻辑的控制。32位浮点型数字信号处理器TMS320VC33作为运算处理器, 它强大的浮点运算功能能够实时、高精度地进行导航解算。

系统工作原理:微惯性测量单元的六路电压输出量经由信号调理电路进行稳压和滤波之后进行数模转换, 转换后的数据输入DSP进行解算处理, 处理的结果经由FPGA和蓝牙模块上传给PC机实时显示。

2 系统的硬件设计

2.1 电源供电系统

系统采用单一的外电源供电, 并通过电源转换为各个芯片提供稳定可靠的工作电压。本设计中电源稳压模块由REG104-5、MAX8882EUTAQ和MAX8882EUTA5为架构构成的。

REG104-5将单一电源的+7.4 V转换为+5 V输出, 供给电压转换芯片MAX8882EUTAQ、MAX8882EUTA5、ADS8365和微惯性测量单元。MAX8882EUTAQ的+3.3 V、+2.5 V双通道输出为Xilinx的FPGA提供工作电压。而DSP TM320VC33的工作所需的+3.3 V和+1.8 V电压则由MAX8882EUTA5芯片转换得到。

2.2 数据采集子系统

根据微惯性测量单元的6路输出, 选用TI公司的6路输入、16位高精度输出的模数转换芯片ADS8365[6]。数据采集子系统的控制逻辑时序信号由Xilinx的XC2S30和DSP TMS320VC33共同控制实现。系统中, ADS8365的时钟信号和启动转换的/HOLD信号由DSP的定时器产生;片选信号/CS由DSP的高位地址线A23—A21经FPGA编码后产生;ADS8365的读信号由DSP的R/W和/STRB经FPGA组合产生;转化结束后产生的/EOC信号, 通过FPGA判断后触发DSP中断进行读取以及量化数据时处理。此外, ADS8365的工作模式是设定在FIFO模式下, 通道数据转换完成后DSP会对ADS8365的信息进行一次性地读取, 而不用经过片外FIFO, 保证了数据读取的实时性。

2.3 蓝牙数据传输系统

设计中选用BTM0604C2P蓝牙模块进行无线数据传输。由于TMS320VC33只具有高速同步串口, 不能进行异步通信, 无法与蓝牙模块直接相连。该子系统中, DSP将解算得到的惯性参数信息传给FPGA, 并编写帧格式, 再通过蓝牙将数据传给上位机。

设计中蓝牙数据传输采用了图5所示的数据帧格式。串行总线在空闲时, 保持逻辑“1”状态, 当需要传输数据时, 先给一个低电平的起始位, 表示数据开始发送, 完成一个字节发送后给出停止位。按照这种传输帧格式依次将加速度、速度、位置和角速度、姿态信息传输给上位机实时显示。

3 系统的软件设计流程

3.1 FPGA软件设计

FPGA设计采用VHDL编程, 为防止系统误启动, AD、DSP的复位均通过FPGA程序延迟启动。FPGA按照以下步骤, 执行操作。

(1) 选通ADS8365片选信号, 在接收到FPGA的启动转换信号后完成一次ADC采样, 同时, 转换结束的/EOC信号有效。

(2) 开启DSP中断。

(3) DSP的STRB和R/W信号经过FPGA编译后, 读取ADC转换数据。

(4) 接收DSP导航解算后的信息。

(5) 通过蓝牙模块将数据传给上位机实时显示解算结果。

3.2 DSP数据处理系统

3.2.1 DSP数据处理

DSP数据处理主要包括初始参数装定、加速度与角速度的信息提取、姿态信息的提取以及速度信息、位置信息等的计算。数据在TM320VC33中的解算流程如图3所示。DSP将惯性坐标系下的初始参数转化到载体坐标系下, 并将ADC转换后的电压信号还原为载体坐标系下的加速度值和角速度值;角速度信息经过四元数的三子样运算, 得到载体坐标系下的更新四元素, 再经过坐标转换得到惯性坐标系下的姿态信息;加速度信息通过速度方程与位置方程, 计算得到速度信息和位置信息[7,8]。

3.2.2 DSP软件设计

该模块的任务是完成ADC电压信息到惯性参量的转换和三维运动姿态信息的计算, DSP导航解算的软件设计流程如图6所示。

4 实验验证

将本系统固定于三轴速率位置转台上进行试验验证。经采集MIMU数据后, 通过DSP导航解算, 将载体的三维运动姿态信息实时显示在上位机上, 如图8所示。上位机软件实时显示了MIMU的三维运动姿态信息, 验证了该系统所设计的功能, 为进一步的导航解算搭建了初步的系统平台。

5 结束语

系统以DSP TMS320VC33做导航运算处理, FPGA XC2S30做时序逻辑控制, 完成了对载体惯性参数的采集、导航信息解算和处理以及信息上位机实时显示。该系统在保证解算精度的同时具有设计简洁、实时性好、功耗小及体积小的特点, 具有较强的适用性与可扩展性和良好的工程应用前景。

参考文献

[1] 陈文蓉, 李杰, 蒋窍.基于FPGA和DSP的嵌入式导航计算的设计.计算机测量与控制, 2012;20 (12) :3374—3376Chen W R, Li J, Jiang Q.Design of Embedded Navigation Computer Based on FPGA and DSP.Computer Measurement&Control, 2012;20 (12) :3374—3376

[2] 孙华, 单志明, 杨培科.基于DSP和FPGA的组合导航系统设计.计算机应用, 2009;29 (12) :325—327Sun H, Shan Z M, Yang P K.Design of integrated navigation system based on DSP and FPGA.Journal of Computer Applications, 2009;29 (12) :325—327

[3] 龚柏春, 李岁劳, 颜开思, 等.基于DSP和ARM的车载组合导航计算机设计.测控技术, 2011;30 (07) :101—103Gong B C, Li S L, Yan K S, et al.Design of Vehicle Integrated Navigation Computer Based on DSP and ARM.Measurement&Control Technology, 2011;30 (07) :101—103

[4] 范振洋, 郝顺义, 翁大庆, 等.基于DSP/FPGA的光纤捷联航姿态系统设计.计算机测量与控制, 2012;20 (3) :764—766Fan Z Y, Hao S Y, Weng D Q, et al.Design of FOG strap-down attitude and heading reference system apparatus based on DSP and FPGA.Computer Measurement&Control, 2012;20 (3) :764—766

[5] 田晓春, 李杰, 范玉宝, 等.一种微惯性测量单元标定补偿方法.传感技术学报, 2012;25 (10) :1411—1415Tian X C, Li J, Fan Y B, et al.A calibration-compensation method for micro inertial measurement unit.Chinese Journal of Sensors and Actuators, 2012;25 (10) :1411—1415

[6] 宋鹏飞, 王厚军, 曾浩.高速深存储数据采集系统研究与设计.仪器仪表学报, 2012;33 (01) :42—48Song P F, Wang H J, Zeng G.Research and Implementation on highspeed and Deep-storage data acquisition system.Chinese Journal of Scientific Instrument, 2012;33 (01) :42—48

[7] 蒋窍, 李杰, 刘俊, 等.基于单片机的GPS/MEMS陀螺仪航向角实时测量系统.传感技术学报, 2011;28 (06) :920—922Jiang Q, Li J, Liu J, et al.GPS and MEMS gyroscope real-time heading angle measurement system based on SCM.Chinese Journal of Sensors and Actuators, 2011;28 (06) :920—922

数据提取与显示 篇8

船载天地超短波通信系统在设计时就加入了对主要设备的监控功能,并将监控数据记录到数据库中。监控数据包括设备状态和外部数据两部分,前者记录了设备各分系统的电压、频率和状态指示等数据;后者记录了外部引导数据和监控中心指令等数据[1]。但是系统的操作软件在查询相关数据时只以简单的表格形式显示,由于数据量巨大(单项数据每个圈次大约150条记录),使用者根据监控数据难以迅速地判断出设备的工作状态,同时,监控所记录的数据为设备的原始数据,缺乏对数据的进一步处理,使用者必须自行对数据进行分析判断,效率低下,对使用者的工作经验也提出了较高的要求;另一方面,由于监控数据记录在VHF通信系统的监控计算机上,查询时也只能在该计算机上执行,查询时较为不便。

1改造思路

目前VHF系统监控功能的不足,使其无法发挥出数据监控应有的作用,因此,需要加强数据查询功能,增加对数据的处理功能,有必要建立一套能够有效利用设备监控数据的系统,帮助岗位人员了解设备状态,做出正确的判断。

项目主要需要实现以下几个目标:① 实现设备相关监控数据的网络化查询;② 依据指标监视设备参数状态,出现异常则发出告警;③ 实现监控数据的图形化显示;④ 为日后接入试验任务IP网,预留通信接口;⑤ 具有较强的通用性,易于扩展,方便移植;⑥ 有效地利用网络带宽。

该系统的建立将有效地帮助岗位人员全面地掌握设备情况,迅速判断出VHF通信系统所处状态,并且能够实现对天地超短波通信系统设备状态的远程监视,便于技术专家远程监视设备状态,发现安全隐患,并根据状态参数做出诊断。系统所预留的通信接口也为其日后接入基地试验任务IP网打下了基础。

2实现方案

2.1系统连接关系

VHF数据综合显示系统主要用于对VHF天地超短波通信系统的伺服参数、设备状态数据等的远程监视。VHF天地超短波通信系统将监控数据发送到综合显示系统。综合显示系统对接收到的监控数据进行选择、处理,将其转化为XML数据,同时将实际数据与相应的指标进行对比,判断设备状态是否正常,若异常则发出告警。远程监控终端通过局域网访问综合显示系统,从而在其浏览器上通过柱状图、饼图、线图来监视VHF设备的状态。从而实现了对VHF天地超短波通信系统进行远程监视,提高了对设备的远程监视和诊断的能力,具体连接关系如图1所示。

2.2系统结构组成

VHF数据综合显示系统分为数据源、中间层和显示层3个层次。数据源包含了VHF通信系统监控分系统所记录的设备监控数据;中间层主要完成对所需数据的选择和处理,生成符合规范的XML数据,其中的通信接口负责与外界进行通信[2,3](如上报重要设备信息等);显示层包含了2个部分:用户界面和图形化显示,其中,图形化显示是本系统的重点和难点。系统层次结构如图2所示。

2.2.1 数据源

数据源层包括:伺服、发射机、接收机、保密机、复分接器和设备频率的监控数据,这些数据反映了VHF天地超短波通信系统的工作状态。各状态具体意义如下:

① 伺服状态:伺服在各时间点的方位角、俯仰角、伺服操作方式(程序引导、数字引导、模拟引导、手动跟踪)和设备自检状态。

② 发射机状态:发射机在各时间点的发射功率、反射功率、基带电平状态。

③ 接收机状态:接收机在各时间点的解扩锁定状态、解调锁定状态、中频放大电压值。

④ 保密机状态:保密机在各时间点的明话/密话状态、同步状态、主备用情况。

⑤ 复分接器状态:复分接器在各时间点的同步状态、飞船同步状态、主备用情况,一机和二机的工作状态。

⑥ 频率:各时间点的发射频率和本振频率。

数据源层负责根据用户的需求将相关的数据从数据库中提取出来。系统在实际使用中通过不同的参数进行数据的选择,主要参数包括:需要检查的设备、检查的项目和圈次。系统由这些参数生成对应的数据库查询语句,数据库查询语句在数据库执行后即返回对应的数据。

2.2.2 中间层

中间层负责将从数据源获得的数据进行处理,并按照制定好的格式填写到XML文件中,完成之后发往终端用户[4,5,6]。中间层使用了Ajax技术,Ajax全称为“Asynchronous JavaScript and XML”(异步JavaScript和XML),是一种创建交互式网页应用的网页开发技术[7],是传统WEB应用程序的一个转变,Ajax应用可以仅向服务器发送并取回必需的数据,使得在服务器和浏览器之间交换的数据大量减少,结果就能使响应更加迅速,从而能够有效地节约网络带宽,在系统的数据传输过程中,所传内容主要是参数和XML数据,在获取数据之后,页面也仅对需要更新的部分进行更新,确保了数据交互的高效率。

中间层主要分为数据选择模块、数据处理模块、XML转换模块和通信接口模块。

① 数据选择模块依据用户要求查看的设备,将相应的监控数据从数据源中选出,传递给数据处理模块。

② 数据处理模块从数据选择模块接收相应的数据,并对数据进行处理,使其符合系统的要求,处理完毕后进行XML转换;数据处理模块还负责将实际监控数据与设备指标进行比对,以判断设备工作是否正常。

③ XML转换模块。将处理后的数据依照事先制定的XML文档格式进行组织,使其符合XML文档的标准结构,处理完毕的XML数据即可在网络上正常传递。

④ 通信接口模块。通信接口用于本系统与外界进行通信,同样采用XML形式收发信息,信息可以根据需要进行定义,例如在设备参数发生异常时上报、接收文字消息等。

2.2.3 显示层

显示层用于完成通过Javascript代码按照XML文档内的设置将文档内的数据进行图形渲染,生成最终用户所需的PNG图像[8]。Javascript代码首先读取XML文档的选项部分,对图表初始化,之后依照数据部分的监控数据将图表内的点逐个在图表上描出,再将所有各点连接成曲线,形成最终的图像。

显示层包括用户界面模块和数据显示模块。

① 用户界面模块是连接用户与系统的纽带,用于根据用户需求向上层功能模块发出相应的指令,例如查看某一设备状态。

② 数据显示模块是本系统的开发重点,负责读取从中间层传递来的XML数据,并以图形的方式将其中的数据显示出来;数据显示模块还负责显示告警信息,以文字形式显示。

本系统采用B/S模式,图形编程在浏览器上通过Javascript来实现。Javascript代码通过操作<canvas>对象实现图形渲染,<canvas>是一个新的HTML元素,已经在HTML5.0标准中获得确认,主要用于矢量图绘制[9]。该对象可以渲染四边形、扇形和任意的多边形,因此显示层所做的就是将所要呈现的图像分解成以上这3种基本的图形。显示层需要显示3种图形:柱状图、饼图和线图。柱状图可分解为四边形,饼图分解为扇形,而线图实际为多边形,由此实现监控数据的图形化显示[10]。

2.3系统实现过程

系统工作流程如图3所示。用户通过点击对应的按钮选择需要显示的设备监控数据,显示层的用户界面部分将相应的参数发往综合显示系统。综合显示系统将收到的参数进行处理,形成数据库查询语句,发往数据库。数据库将相应的数据返回给综合显示系统,并对这些数据进行处理。综合显示系统将处理完毕的数据按照事先编写的XML文档格式填写到XML文件中。将XML文件发送到用户计算机,交由浏览器解析。浏览器通过Javascript代码按照文档内的设置将XML文档内的数据进行图形渲染,生成最终用户所需的PNG图像。

3系统使用结果分析

图4显示了伺服系统方位角、俯仰角的实际变化情况,以及数据引导方位角、俯仰角的变化情况,可以看到伺服的实际工作情况与引导数据之间仅存在微小差别,说明伺服系统工作正常。

由伺服曲线图可知,伺服在开始跟踪和结束跟踪时角度变化缓慢,而在最高仰角时角度变化最为迅速,而仅通过表格形式是很难迅速做出这样的判断的。中放电压是体现接收机工作状态的一项重要指标,图5(a)显示了中放的电压值,图5(b)显示了对应时间中放电压以2 V为基准的电压值。在实战任务中,中放电压存在短时间的突跳,但持续时间很短,不影响系统的正常工作。若持续时间过长,则应对设备进行检修。

4结束语

将设备监控数据以图形的方式通过浏览器显示,利用网络的便利性,使得用户能够在网络内任意节点直观迅速地了解系统内设备的工作状态,具有很强的实用价值,是岗位人员检测设备状态十分有效的手段。同时本系统具有很强的可移植性,应用领域不仅限于VHF系统,其他系统在经过适当改造之后也能够采用。 

参考文献

[1]张兵山.天地超短波通信培训教材[M].北京:2007:25-37.

[2]陈曦.基于Ajax构建Web应用程序的研究[J].古林化工学院学报,2009,24(2):51-52.

[3]张琳,张国平.XML数据岛结合AJAX实现Web的异步刷新[J].电子设计工程,2012,16(20):39-41.

[4]李为健,卞艺杰.基于DWR和EXT的Ajax应用研究与实现[J].计算机与现代化,2010,1(4):66-67.

[5]张龙,肖琬蓉.集群数据库内容管理系统的设计与实现[J].情报杂志,2012(2):15-17.

[6]杨振东,何宏,丁勇.基于Web的机场油料供应管理系统的设计[J].计算机应用与软件,2012,29(6):69-71.

[7]JACOBS S.Beginning XML with DOM and Ajax[M].Berkly Apress,2005:24-40.

[8]杨秀梅,罗显刚,杨秀红.基于WebGIS云南滑坡灾害气象预警分析模型[J].地理信息世界,2012,8(4):36-40.

[9]FLANAGAN D.JavaScript:The Definitive Guide 5th Edi-tion[M].Foster O'Reilly,2006:94-102.

上一篇:无害化防治下一篇:数字微波传输系统