您当前的位置:五五电子网电子知识单片机-工控设备嵌入式系统-技术GPS的定位测向系统的软件实现 正文
GPS的定位测向系统的软件实现

GPS的定位测向系统的软件实现

点击数:7166 次   录入时间:03-04 11:41:32   整理:http://www.55dianzi.com   嵌入式系统-技术
全球定位系统(GPS)是由美国国防部主要为满足军事部门对海、陆、空设施进行高精度导航和定位而研制的全球性被动式无线电的应用,探讨用VB实现GPS信息处理的方法仍是大家普遍关注的问题。在Windows环境下通过VB编程语言及其提供的专门用于串口通信的MSComm控件,实现GPS接收机与计算机的串口通信。将GPS接收机的小型化OEM板与计算机相结合,利用其输出的数据信息,配置相应的外围设备,即可方便、自主地实现基于GPS的卫星测量及无线电导航、定位和定时于一体的多功能系统。

1 NMEA-0183协议

1.1 协议简介

NEMA协议是为了在不同的GPS导航设备中建立统一的RTCM(海事无线电技术委员会)标准,由美国国家海洋电子协会(The National Marine EleCTRonICsAssociation,NMEA)制定的。目前大部分的GPS接收设备都遵循这一标准。该接口协议定义了在波特率为19 200的串口数据总线上传输电信号的需求、数据传输协议和时间以及详细的语句格式。

1.2 NMEA-0183语句格式

NMEA-0183语句格式一般为:“$”为语句起始标志;“,”为域分隔符;“*”为校验和识别符,其后面的两位数为校验和;“<CR>/<LF>”为终止符,表示回车、换行。本文以GPGGA信息语句为例,进行详细分析。

GPGGA:Global Positioning System Fix Data(GGA)(GPS定位信息)

$GPGGA,<1>,<2>,<3>,<4>,<5>,<6>,<7>,<8>,<9>,M,<10>,M,<11>,<12>*hh<CR><LF>

<1>UTC时间(世界协调时),hhmmss(时分秒);

<2>纬度:格式为度度分分、分分分分(ddmm.mmmm,前面的0也将被传输);

<3>纬度半球N(北半球)或者S(南半球);

<4>经度:格式为度度分分、分分分分(ddmm.mmmm,前面的0也将被传输);

<5>经度半球E(东经)或W(西经);

<6>GPS状态:0=未定位,1=非差分定位,2=差分定位,6=正在估算;

<7>正在使用解算位置的卫星数量(00~12)(前面的0也将被传输);

<8>HDOP水平精度因子(0.5~99.9);

<9>海拔高度(-9 999.9 m~99 999.9 m);

<10>地球椭球面相对大地水准面的高度;

<11>差分时间(从最近一次接收到差分信号开始的秒数,如果不是差分定位将为空);

<12>差分站ID号:0000~1023(前面的0也将被传输,如果不是差分定位将为空)。

2 MSComm控件的应用及数据采集

2.1 端口设置

由于GPS串行通讯参数是固定的“波特率=19200;无奇偶校验;数据位=8;停止位=1”,在编程时直接设置串口通讯参数便可以了。

主要程序段为:NMEA协议设置 MSComml.Settings=“19200,n,8,1”。

2.2 数据采集

MSComm控件提供两种处理通信的方式:事件驱动方式和查询方式

(1)事件驱动方式

On Comm事件被用于捕获Communications事件及错误。因此可在MSComm控件的On Comm事件中加入处理函数,以便在文本框区实时显示、数据采集。




本文关键字:软件  嵌入式系统-技术单片机-工控设备 - 嵌入式系统-技术