GPS模块使用手册.docx
《GPS模块使用手册.docx》由会员分享,可在线阅读,更多相关《GPS模块使用手册.docx(11页珍藏版)》请在冰豆网上搜索。
GPS模块使用手册
GPS模块使用手册
GPS模块使用手册
一、GPS模块的几个重要指标
1.卫星轨迹
全球有24颗GPS卫星沿6条轨道绕地球运行(每4个一组),GPS接收模块就是靠接收这些卫星来进行定位的。
但一般在地球的同一边不会超过12颗卫星,因此一般选择能够跟踪12颗卫星以下的器件就能够了。
当然,所能跟踪的卫星数越多,性能越好。
大多数GPS接收器能够追踪8~12颗卫星。
计算2维坐标至少需要3颗卫星,4颗卫星能够计算3维坐标。
2.并行通道
由于最多可能有12颗卫星是可见的,GPS接收器必须按顺序访问每一颗卫星来获取每颗卫星的信息,因此市面上的GPS接收器大多数是12并行通道型的,这允许它们连续追踪每一颗卫星的信息。
12通道接收器的优点包括快速冷启动和初始化卫星的信息,而且在森林地区能够有更好的接收效果。
一般12通道接收器不需要外置天线,除非是在封闭的空间,如船舱或车厢中。
3.定位时间
定位时间是指重启GPS接收器时,确定现在位置所需的时间。
对于12通道接收器,冷启动时的定位时间一般为3~5min,热启动时为15~30s。
4.定位精度
普通GPS接收器的水平位置定位精度在5~10m内。
5.DGPS功能
DGPS是一个固定的GPS接收器,用于接收卫星的信号。
DGPS能够准确地计算出理论上卫星信号传送到的精确时间,然后将它与实际传送时间相比较,并计算出差值。
DGPS将这个差值发送出去,其它GPS接收器就能够利用这个差值得到一个更精确的位置读数(5~10m或者更少的误差)。
许多GPS设备提供商在一些地区设置了DGPS发送机,供客户免费使用,只要客户所购买的GPS接收器有DGPS功能即可。
6.信号干扰
要获得一个很好的定位信号,GPS接收器必须至少能接收到3~5颗卫星。
如果是在峡谷中或两边高楼林立的街道上,或者是在茂密的丛林里,有可能接收不到足够的卫星,无法定位或者只能得到二维坐标。
同样,如果在一个建筑里面,有可能无法更新位置。
一些GPS接收器有单独的天线能够贴在挡风玻璃上,或者将一个外置天线放在车顶上,这有助于接收器收到更多的卫星信号。
二、HOLUXM-89GPS模块特性
我们选用的是台湾生产的HOLUXM-89GPS模块,并为其配备了PCB板,以方便与单片机进行连接,下面与反面如下图所示,
HOLUXM-89GPS接收卫星信号时一般还需要配备天线,如下图所示:
HOLUXM-89GPS模块主要特性如下:
产品特征
通 道:
并行32通道
频 率:
L11575.42MHz
C/A码(1.023MHZ码片速率)
跟踪灵敏度:
-159dB
动态性能
速 度:
515米/秒
加速度:
4g
颠 簸:
20米/秒
捕获时间
重获取时间:
0.1秒
热启动时间:
1秒
温启动时间:
33秒
冷启动时间:
36秒
精度
定位:
10米(2DRMS)1-5米(DGPS)
速度:
0.1米/秒
时间:
1ms
数据特性
I/O信息:
1个全双工串行TTL接口
数据传输速率:
4800~38400(标准:
9600)
格式:
SiRF二进制和NMEA-0183(v3.01)——GGA,GLL,GSA,GSV,RMC,VTG
DGPS协议:
RTCMSC-104,类型1,2和9
脉冲延时:
100ms
电气特性
输入电压:
3.3~5VDC
后备电源:
直流3V
输入电流:
80mA
物理特性
尺寸:
25.4mm(D)×25.4mm(W)×3mm(H)
重量:
7g
环境特性
操作温度:
-30~+85℃
存贮范围:
-40~+85℃
三、12864显示GPS数据实验
1.HOLUXM-89GPS模块与DD-900实验开发板的连接
HOLUXM-89GPS模块安装在一块PCB板上,板上引出有6针间距为2.54mm的插针,可方便地与顶顶电子开发的DD-900实验开发板进行连接,各插针管脚功能及其与DD-900实验开发板的连接方法如下:
1脚:
指示灯,通电常亮,接收到卫星开始闪烁,模块板上带有LED灯,实验时可不接。
2脚:
外部复位输入,模块内部有复位电路,实验时可不接。
3脚:
模块串口数据输出。
接DD-900实验开发板MCU的RXD脚(P30脚)。
4脚:
模块串口数据输入。
接DD-900实验开发板MCU的TXD脚(P31脚)。
5脚:
GND。
接DD-900实验开发板的地端。
6脚:
电源输入,电压范围:
3.3-5V,接DD-900实验开发板的3.3V或5V端。
2.GPS源程序实验步骤
(1)打开STC下载软件,将“12864液晶屏显示GPS数据C51源程序”中的“GPS_12864.hex”目标文件下载到DD-900实验开发板上。
(2)取一只12864液晶显示屏,将其插到DD-900实验开发板上。
(3)将GPS模块与天线连接好。
(4)找四根杜邦线,将GPS模块与DD-900实验开发板的连接好。
断开232与单片机的短接插针。
使单片机只能与GPS模块进行通信。
(5)打开DD-900实验开发板电源,约几十秒后,在12864液晶屏上即可显示出经度、纬度、时间、海拔高度等信息,如下图所示:
以上信息的意思为:
东经120度23.7285分,北纬36度17.3538分,时间为15点10分52秒,海拔高度为145.6米。
需要注意的是,实验时,要将GPS模块和天线放置在室外,以便接收到卫星信号,另外,GPS启动时需要一定的启动时间,GPS启动后才能接收到并计算出正确的数据。
另外,如果你没有采用DD-900实验开发板,而是采用其它实验板,需要将单片机晶振频率设置为11.0592MHz,以保证GPS模块与单片机按照9600的波特率进行通信。
四、用串口调试助手查看GPS数据
1.GPS模块与DD-900的连接
(1)GPS模块经过DD-900实验开发板串口,能够方便地与PC机进行连接,连接方法如下:
(2)GPS模块的3脚(模块串口数据输出)接DD-900实验开发板MCU的TXD脚(P31脚),注意,与上个实验不同。
(3)GPS模块的4脚(模块串口数据输入)接DD-900实验开发板MCU的RXD脚(P30脚),注意,与上个实验不同。
(4)GPS模块5脚(GND)接DD-900实验开发板的地端。
(5)GPS模块6脚(电源输入)接DD-900实验开发板的3.3V或5V端。
(6)取下DD-900的MCU。
2.实验方法
连接完成后,打开顶顶串口调试助手,选择好串口(一般为串口1,如果采用USB转串口,要选择虚拟串口号,本例采用的是USB转串口,虚拟串口号为COM5)。
波特率选择为9600,校验位为NINE,数据位为8,停止位为1。
以上设置完成后,打开串口,即可在接收窗口中接收到有关的GPS数据,如图所示:
五、其它
1.GPS模块与PC机的通信
模组能够直接采用电平转换电路MAX232,将GPS模块的串口和PC机的串口连接,用串口调试工具和GPS模块调试软件监控模块输出的数据,注意:
模块的默认波特率为9600,PC机串口波特率必须设置成9600。
如果没有接GPS天线或收不到卫星信号。
模组上的LED灯一直常亮,如果收到有效的卫星信号LED开始闪烁。
2.GPS的数据协议
GPS数据格式支持NMEA0183V3.01数据协议。
格式NMEA0183V3.01:
GPGGA(1次/1秒)、GPGSA(1次/5秒)、GPGSV(1次/5秒)、GPRMC(1次/1秒)、GPVTG(1次/1秒)。
下面是调试模组用串口监控到的数据:
无卫星状态:
$GPGGA,000355.026,8960.0000,N,00000.0000,E,0,0,,137.0,M,13.0,M,,*44
$GPGSA,A,1,,,,,,,,,,,,,,,*1E
$GPGSV,1,1,00*79
$GPRMC,000355.026,V,8960.0000,N,00000.0000,E,0.00,0.00,060180,,,N*79
$GPVTG,0.00,T,,M,0.00,N,0.00,K,N*32
$GPGGA,000356.026,8960.0000,N,00000.0000,E,0,0,,137.0,M,13.0,M,,*47
$GPRMC,000356.026,V,8960.0000,N,00000.0000,E,0.00,0.00,060180,,,N*7A
$GPVTG,0.00,T,,M,0.00,N,0.00,K,N*32
$GPGGA,000357.026,8960.0000,N,00000.0000,E,0,0,,137.0,M,13.0,M,,*46
$GPRMC,000357.026,V,8960.0000,N,00000.0000,E,0.00,0.00,060180,,,N*7B
$GPVTG,0.00,T,,M,0.00,N,0.00,K,N*32
$GPGGA,000358.026,8960.0000,N,00000.0000,E,0,0,,137.0,M,13.0,M,,*49
$GPRMC,000358.026,V,8960.0000,N,00000.0000,E,0.00,0.00,060180,,,N*74
$GPVTG,0.00,T,,M,0.00,N,0.00,K,N*32
$GPGGA,000359.026,8960.0000,N,00000.0000,E,0,0,,137.0,M,13.0,M,,*48
$GPRMC,000359.026,V,8960.0000,N,00000.0000,E,0.00,0.00,060180,,,N*75
$GPVTG,0.00,T,,M,0.00,N,0.00,K,N*32
$GPGGA,000400.026,8960.0000,N,00000.0000,E,0,0,,137.0,M,13.0,M,,*43
$GPGSA,A,1,,,,,,,,,,,,,,,*1E
$GPGSV,1,1,00*79
$GPRMC,000400.026,V,8960.0000,N,00000.0000,E,0.00,0.00,060180,,,N*7E
$GPVTG,0.00,T,,M,0.00,N,0.00,K,N*32
$GPGGA,000401.026,8960.0000,N,00000.0000,E,0,0,,137.0,M,13.0,M,,*42
$GPRMC,000401.026,V,8960.0000,N,00000.0000,E,0.00,0.00,060180,,,N*7F
$GPVTG,0.00,T,,M,0.00,N,0.00,K,N*32
$GPGGA,000402.026,8960.0000,N,00000.0000,E,0,0,,137.0,M,13.0,M,,*41
$GPRMC,000402.026,V,8960.0000,N,00000.0000,E,0.00,0.00,060180,,,N*7C
$GPVTG,0.00,T,,M,0.00,N,0.00,K,N*32
$GPGGA,000403.026,8960.0000,N,00000.0000,E,0,0,,137.0,M,13.0,M,,*40
$GPRMC,000403.026,V,8960.0000,N,00000.0000,E,0.00,0.00,060180,,,N*7D
$GPVTG,0.00,T,,M,0.00,N,0.00,K,N*32
$GPGGA,000404.026,8960.0000,N,00000.0000,E,0,0,,137.0,M,13.0,M,,*47
$GPRMC,000404.026,V,8960.0000,N,00000.0000,E,0.00,0.00,060180,,,N*7A
$GPVTG,0.00,T,,M,0.00,N,0.00,K,N*32
$GPGGA,000405.026,8960.0000,N,00000.0000,E,0,0,,137.0,M,13.0,M,,*46
$GPGSA,A,1,,,,,,,,,,,,,,,*1E
有卫星状态:
$GPGGA,090113.000,3958.2847,N,11616.6454,E,1,8,1.00,67.6,M,-6.7,M,,*78
$GPRMC,090113.000,A,3958.2847,N,11616.6454,E,0.00,0.00,080110,,,A*60
$GPVTG,0.00,T,,M,0.00,N,0.00,K,A*3D
$GPGGA,090114.000,3958.2847,N,11616.6456,E,1,8,1.00,67.7,M,-6.7,M,,*7C
$GPRMC,090114.000,A,3958.2847,N,11616.6456,E,0.00,0.00,080110,,,A*65
$GPVTG,0.00,T,,M,0.00,N,0.00,K,A*3D
$GPGGA,090115.000,3958.2846,N,11616.6456,E,1,8,1.00,67.7,M,-6.7,M,,*7C
$GPRMC,090115.000,A,3958.2846,N,11616.6456,E,0.00,0.00,080110,,,A*65
$GPVTG,0.00,T,,M,0.00,N,0.00,K,A*3D
$GPGGA,090116.000,3958.2846,N,11616.6456,E,1,8,1.00,67.8,M,-6.7,M,,*70
$GPRMC,090116.000,A,3958.2846,N,11616.6456,E,0.00,0.00,080110,,,A*66
$GPVTG,0.00,T,,M,0.00,N,0.00,K,A*3D
$GPGGA,090117.000,3958.2845,N,11616.6457,E,1,8,1.00,67.8,M,-6.7,M,,*73
$GPGSA,A,3,29,15,10,18,09,21,24,27,,,,,1.28,1.00,0.79*08
$GPGSV,3,1,10,24,78,302,38,15,77,207,42,29,36,238,48,10,33,073,24*76
$GPGSV,3,2,10,21,29,310,39,08,22,054,,18,15,276,42,27,14,167,36*7D
$GPGSV,3,3,10,09,05,175,35,40,,,*45
$GPRMC,090117.000,A,3958.2845,N,11616.6457,E,0.00,0.00,080110,,,A*65
$GPVTG,0.00,T,,M,0.00,N,0.00,K,A*3D
$GPGGA,090118.000,3958.2846,N,11616.6457,E,1,8,1.00,67.8,M,-6.7,M,,*7F
$GPRMC,090118.000,A,3958.2846,N,11616.6457,E,0.00,0.00,080110,,,A*69
$GPVTG,0.00,T,,M,0.00,N,0.00,K,A*3D
$GPGGA,090119.000,3958.2846,N,11616.6458,E,1,9,0.85,67.8,M,-6.7,M,,*7C
$GPRMC,090119.000,A,3958.2846,N,11616.6458,E,0.00,0.00,080110,,,A*67
$GPVTG,0.00,T,,M,0.00,N,0.00,K,A*3D
$GPGGA,090120.000,3958.2847,N,11616.6459,E,1,9,0.85,67.8,M,-6.7,M,,*76
$GPRMC,090120.000,A,3958.2847,N,11616.6459,E,0.00,0.00,080110,,,A*6D
$GPVTG,0.00,T,,M,0.00,N,0.00,K,A*3D
$GPGGA,090121.000,3958.2847,N,11616.6460,E,1,9,0.85,67.8,M,-6.7,M,,*7D
$GPRMC,090121.000,A,3958.2847,N,11616.6460,E,0.00,0.00,080110,,,A*66
$GPVTG,0.00,T,,M,0.00,N,0.00,K,A*3D
$GPGGA,090122.000,3958.2847,N,11616.6461,E,1,9,0.85,67.8,M,-6.7,M,,*7F
$GPGSA,A,3,29,15,10,18,09,21,24,08,27,,,,1.14,0.85,0.77*0D
$GPGSV,3,1,10,24,78,302,38,15,77,207,42,29,36,238,48,10,33,073,22*70
$GPGSV,3,2,10,21,29,310,39,08,22,054,21,18,15,276,42,27,14,167,36*7E
$GPGSV,3,3,10,09,05,175,35,43,,,*46
$GPRMC,090122.000,A,3958.2847,N,11616.6461,E,0.00,0.00,080110,,,A*64
$GPVTG,0.00,T,,M,0.00,N,0.00,K,A*3D
$GPGGA,090123.000,3958.2848,N,11616.6462,E,1,9,0.85,67.8,M,-6.7,M,,*72
$GPRMC,090123.000,A,3958.2848,N,11616.6462,E,0.00,0.00,080110,,,A*69
$GPVTG,0.00,T,,M,0.00,N,0.00,K,A*3D
2.GPS语句数据格式
GPS模块能够输出多种数据格式输出语句,这样,在源程序中,我们经过对这些输出语句进行解析,就能够得到GPS的定位数据。
下面重点介绍GPRMC和GPGGA输出语句:
(1)GPRMC输出语句
其标准格式为:
$GPRMC,<1>,<2>,<3>,<4>,<5>,<6>,<7>,<8>,<9>,<10>,<11>,<12>A*hh
例如:
$GPRMC,024813.640,A,3158.4608,N,11848.3737,E,10.05,324.27,150706,,,A*50
<1>标准定位时间(UTCtime)格式:
时时分分秒秒.秒秒秒(hhmmss.sss)。
<2>定位状态,A=数据可用,V=数据不可用。
<3>纬度,格式:
度度分分.分分分分(ddmm.mmmm)。
<4>纬度区分,北半球(N)或南半球(S)。
<5>经度,格式:
度度分分.分分分分。
<6>经度区分,东(E)半球或西(W)半球。
<7>相对位移速度,0.0至1851.8knots(节)
<8>相对位移方向,000.0至359.9度。
实际值。
<9>日期,格式:
日日月月年年(ddmmyy)。
<10>磁偏角,(000-180)度,前导位数不足则补0。
<11>磁偏角方向,E=东W=西。
A*语句结束标志符。
hh从$开始的所有ASCII码校验和。
回车换行。
(2)GPGGA输出语句
这是一帧GPS定位的主要数据,也是使用最广的数据。
为了便于理解,下面举例说明$GPGGA语句各部分的含义。
其标准格式为:
$GPGGA,<1>,<2>,<3>,<4>,<5>,<6>,<7>,<8>,<9>,M,<10>,M,<11><12>*hh
传送的信息说明如下:
$GPGGA:
起始引导符及语句格式说明(本句为GPS定位数据)。
<1>UTC时间,时时分分秒秒格式。
<2>纬度,度度分分.分分分分格式(第1位是0也将传送)。
<3>纬度半球,N或S(北纬或南纬)。
<4>经度,度度度分分.分分分分格式(第1位0也将传送)。
<5>经度半球,E或W(东经或西经)。
<6>GPS质量指示,0:
方位无法使用,1=非差分GPS获得方位,2=差分方式获得方位(DGPS),6=估计获得。
<7>使用卫星数量,从00到12(第1位是0也将传送)。
<8>水平精确度,0.5~99.9。
<9>天线离海平面的高度,-9999.9~9999.9m。
M指单位米。
<10>大地水准面高度,-999.9~9999.9m。
M指单位米。
<11>差分GPS数据期限(RTCMSC-104),最后设立RTCM传送的秒数量(例如无DGPS为0)。
<12>差分参考基站标号,从0000~1023,实时DGPS时无。
*语句结束标志符。
hh从$开始的所有ASCII码校验和。
回车换行。
例如,假如实时收到的一条“$GPGGA”语句如下:
$GPGGA,114641,3002.3232,N,12206.1157,E,1,03,12.9,53.2,M,11.6,M,,*4A
这是一条GPS定位数据信息语句,其含义是:
UTC时间为11时46分41秒,位置在北纬30度2.3232分,东经122度6.1157分,普通GPS定位方式,接收到3颗卫星,水平精度为12.9m,天线离海平面高度为53.2m,所在地离地平面高度为11.6m,校验和为4AH。
由于GPS模块发送的不止是一条语句,要完整的接收这条“$GPGGA”语句,就必须判断这条语句的头。
也就是“$GPGGA,”这7个字符,当完整的收到这7个字符后,才能保证是所需要的数据。