基于WinCE的GPS数据采集系统设计
摘要:由于数据采集设备利用Windows桌面系统在户外易受环境影响以及携带不方便等不足,设计采用ARM11处理器和WinCE6.0操作系统作为硬件开发平台,设计出一种基于ARM-WinCE6.0的便携式GPS数据采集系统,控制GPS模块接收数据信息,实现对数据进行采集、提取、显示、存储。这对深入理解嵌入式系统应用和GPS在导航组合中应用具有一定的实用价值,有利于提高工作效率并为定位性能的评定提供依据。
关键词:ARM11处理器;WinCE6.0操作系统;GPS数据采集系统;导航组位
0 引言
GPS(Global Positioning System,全球卫星定位系统)以其高精度、全天候、全天时的特点,在定位、导航、测距、授时遥感等领域广泛应用,并得到了快速的发展。对于在低功耗、高便携性和高性能设备上实现GPS数据采集和分析技术也显得越发重要。传统的Windows桌面系统体积大,占用系统资源较多,也不利于野外作业,而基于嵌入式系统的ARM硬件平台则具有体积小、功耗低、性能高等特点。WinCE系统作为嵌入式系统的一种类型,相对于Linux和Andriod系统,其开发难度要比后两种系统要低,软件调试也比较容易、灵活,并且WinCE系统类似桌面系统在软件开发方面也较为便利。因此,在未来高性能的便携式设备领域,WinCE系统的应用空间将十分巨大。
本文根据GPS信号接收原理及嵌入式技术,并遵循NMEA-0183协议,接收并解析GPS模块的原始数据报文,设计出友好的人机界面环境,将系统所处的经度、纬度、高度、速度、日期时间等信息显示出来,解决了人工记录数据的不足,提高了工作效率,并为车辆运动参数估计提供了依据。
1 系统总体设计
GPS数据采集界面的设计采用面向对象的可编程技术,在Visual Studio 2005(VS 2005)编程环境下,运用C#语言实现。本设计采用飞凌公司研发的OK6410开发板,该开发板以ARM11内核架构为核心,并内嵌WinCE 6.0操作系统,硬件性能上能够满足对数据采集的需求。通过USB同步,完成PC机与ARM开发板之间的硬件平台搭建,这样就可以在PC机上进行应用程序的设计。
在VS 2005环境下,对设计完成的GPS数据采集应用程序进行编译,并将编译后生成的应用程序通过USB同步植入到ARM开发板的NAND FLA SH里。再通过串口扩展电路将ARM开发板与GPS模块进行连接完成通信,然后运行NAND FLASH里GPS数据采集的应用程序,对GPS模块接收来的数据进行采集、解析后送至外接的液晶,显示其需要的信息,从而完成WinCE 6.0环境下GPS数据采集系统的设计。GPS数据采集系统总体框图如图1所示,GPS数据采集开发系统如图2所示。
2 GPS协议分析及GPS数据数据格式
GPS数据遵循NMEA-0183协议,该数据标准是美国国家海洋电子协会(National Marine Electronics Association)所指定的标准规格。GPS接收机根据NMEA-0183协议的标准规范,将位置、速度等信息通过串口传送到PC机、PDA等设备。NMEA-0183协议采用统一标准格式,输出采用ASCII码,数据传输以“语句”方式进行,每个语句均以“$”开头,然后是两个字母的“识别符”和三个字母的“语句名”,接着是以逗号分隔的数据体,语句末尾为校验和,整条语句以回车换行符结束。
NMEA-0183的数据信息种类较多,而一组正常的GPS数据则包括$GPGGA,$GPRMC,$GPVTG,$GPGLL。$GPGGA输出的是GPS的定位信息,$GPR MC则输出GPS推荐的最短数据信息,$GPVTG输出的是地面速度信息,$GPGLL输出的是大地坐标信息。现以最常见的$GPRMC为例分析其数据格式格式如下:
$GPRMC,1>,2>,3>,4>,5>,6>,7>,8>,9>,10>,11>,12>*hhCR>LF>
1>为UTC时间,格式:hhmmss(时分秒);2>为定位状态,A=数据可用,V=数据不可用;3>为纬度,格式:ddmm.mmmm(度分);4>为纬度区分,北半球(N)或南半球(S);5>为经度,格式:ddmm.mmmm(度分);6>为经度区分,东半球(E)或西半球(W);7>为地面速率(000.0~999.9节);8>为地面航向(000.0°~359.9°,以正北为参考基准);9>为UTC日期,格式:ddmmyy(年月日);10>为磁偏角(000.0°~180.0°);11>为磁偏角方向,E(东)或W(西);12>为模式指示。
评论