绪 论
全球卫星定位系统简称GPS系统,是美国国防部历时二十年,耗资200多亿美元建立起来的可以全天候高精度的定位系统,通过定位卫星网络向全球各地全天候地提供三维位置、三维速度等信息的一种无线电导航定位系统。接收机通过对接收到的每颗卫星的定位信息的解算,便可确定该接收机的位置,从而提供高精度的三维(经度、纬度、高度)定位导航及授时系统。由于刚开始GPS只限于军事用途,民用受到人为精度的限制(SA)。直到2000年5月1日起美国政府取消SA限制后,大大地促进了民用普遍化,现已逐步演变为一种世界性高技术产业,成为目前世界上发展最快的三大信息产业之一。
GPS用户接收系统主要由以无线电传感和计算机技术支撑的GPS卫星接收机和GPS数据处理软件构成。GPS卫星接收机的基本结构是天线单元和接收单元两部分。天线单元的主要作用是:当GPS卫星从地平线上升起时,能捕获、跟踪卫星,接收放大GPS信号。接收单元的主要作用是:记录GPS信号并对信号进行解调和滤波处理,还原出GPS卫星发送的导航电文,解求信号在站星间的传播时间和载波相位差,实时地获得导航定位数据或采用测后处理的方式,获得定位、测速、定时等数据。微处理器是GPS接收机的核心,承担整个系统的管理、控制和实时数据处理。目前,国际上已推出几十种测量用GPS接收机,各厂商的产品朝着实用、轻便、易于操作、美观价廉的方向发展。GPS数据处理软件是GPS用户系统的重要部分,其主要功能是对GPS接收机获取的卫星测量记录数据进行“粗加工”、“预处理”,并对处理结果进行平差计算、坐标转换及分析综合处理。解得测站的三维坐标,测体的坐标、运动速度、方向及精确时刻。GPS定位技术是正在发展中的高新技术,数据处理技术也处在不断更新之中,各系列GPS接收机制造厂家研制的处理软件也各具特色。GPS 接收机是被动式全天候系统,只收不发信号,故不受卫星系统和地面控制系统的控制。用户数量也不受限制。GPS接收机的性能因机种不同而有差异。 接收机根据用户不同的使用需要又可分为大地型GPS接收机和导航型GPS接收机两类。
1 GPS系统基本原理
1.1 GPS系统介绍
GPS卫星定位系统由三部分构成,一是地面控制部分,由主控站、地面天线、滥测站及通讯辅助系统组成。二是空间部分,由24颗卫星组成,分布在6个轨道平面。三是用户装置部分,由GPS接收机和卫星天线组成。地面主控站实施对GPS卫星的轨道控制及参数修正。GPS卫星网向地面发射两个频率的定位导航信息,其中包括两个定位码信号:即C/A码(供世界范围内的民用)及P码( 只供美国军方使用)。GPS接收机接收GPS卫星信号进行解算,即可确定GPS接收机的位置。
图 1
1.2 NMEA-0183数据格式
1.2.1 GPRMC(建议使用最小GPS数据格式)
GPS定位的数据格式为NMEA-0183数据格式。NMEA-0183是美国国家海洋电子协会为海用电子设备制定的标准格式。它是在过去海用电子设备的标准格式0180和0182的基础上,增加了GPS接收机输出的内容而完成的。目前广泛采用的是Ver 2.00版本。现在除少数GPS接收机外,几乎所有的接收机均采用了这一格式。为了有效地开发GPS-OEM芯片,必须熟练掌握这一格式。因此,下面介绍两种最常用的GN-77N输出语句格式。
a.GPS固定数据输出语句($GPGGA)这是一帧GPS定位的主要数据,也是使用最广的数据。
b. GPS推荐定位信息输出语句($GPRMC)。本实验是对此信号进行提取定位信息的,故对其格式列出如下:
Recommended Minimum Specific GPS/TRANSIT Data(RMC)推荐定位信息。
$GPRMC,<1>,<2>,<3>,<4>,<5>,<6>,<7>,<8>,<9>,<10>,<11>,<12>*hh<CR><LF>
<1> UTC 时间,hhmmss(时分秒)格式
<2> 定位状态,A=有效定位,V=无效定位
<3> 纬度ddmm.mmmm(度分)格式(前面的0 也将被传输)
<4> 纬度半球N(北半球)或S(南半球)
<5> 经度dddmm.mmmm(度分)格式(前面的0 也将被传输)
<6> 经度半球E(东经)或W(西经)
<7> 地面速率(000.0-999.9 节,前面的0 也将被传输)
<8> 地面航向(000.0-359.9 度,以真北为参考基准,前面的0 也将被传输)
<9> UTC 日期,ddmmyy(日月年)格式
<10> 磁偏角(000.0-180.0 度,前面的0 也将被传输)
<11> 磁偏角方向,E(东)或W(西)
<12> 模式指示(仅NMEA0183 3.00 版本输出,A=自主定位,D=差分,E=估算,N=数据无效)
1.2.2 GPGGA
$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> 经度dddmm.mmmm(度分)格式(前面的0 也将被传输)
<5> 经度半球E(东经)或W(西经)
<6> GPS 状态:0=未定位,1=非差分定位,2=差分定位,6=正在估算
<7> 正在使用解算位置的卫星数量(00-12)(前面的0 也将被传输)
<8> HDOP水平精度因子(0.5-99.9)
<9> 海拔高度(-9999.9-99999.9)
<10> 地球椭球面相对大地水准面的高度
<11> 差分时间(从最近一次接收到差分信号开始的秒数,如果不是差分定位将为空)
<12> 差分站ID 号0000-1023(前面的0 也将被传输,如果不是差分定位将为空)
2系统总体设计
2.1 DSP介绍
数字信号处理(Digital Signal Processing, DSP), 就是对信号的数字处理。它是利用数字计算机或专用数字硬件,对数字信号进行的一切变换或按预定规则进行的一切加工处理的运算就称为数字信号处理。DSP狭义理解为Digital Signal Processor数字信号处理器,广义理解可为数字信号处理技术。
2.2异步通信接口芯片TL16CTL16C550C
UART只是一个串行的异步接口它负责对要发送的数据进行格式化和对收到的数据进行译码。它对数据是打包发送和接收的,每一包数据前有一个起始位,末有一个或多个停止位。数据包里的数据是从低位到高位逐位进行发送的。为了对数据进行校验,有时还可以在数据里加上校验位。在没有数据发送或接收时,该数据线总是处于高电平。它有如下的一些特点:
(1)数据的长度可变,可以是 5位,6位,7位或 8位;
(2)波特率可变,位传输的速率可以通过编程来实现,在UART中有一个寄存器可以对主频时钟进行分频来产生相应的波特率;
(3)校验位的产生和检测,在发送一个字符的时候,UART在发送时在数据位的末尾上附加一个校验位,当接收这个字符的时候,就可以利用这个校验位来来检查在接收过程中有没有发生错误;
(4)可以设置中断,通过软件可以模拟当异步串口发送0的个数超过数据包的长度的时候(表明发送异常),可通过设置中断处理事件。
串行通信的流程图如图2所示。
图 2
下面对TMS32F240和PC机通信有关的寄存器做一些简单介绍。
表1 TL16CTL16C550C的寄存器
寄存器 |
DLAB |
A2 |
A1 |
A0 |
地址 |
操作 |
接收缓冲器RBR |
0 |
0 |
0 |
0 |