




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
基于单片机的GPS全球定位系统设计--软件局部摘要GPS全球定位系统在实际生活中被广泛应用,是当今信息时代开展中的重要组成局部。因其具有性能好、精度高、应用广的特点,使其成为了迄今最好的导航定位系统。本文以北京精仪达盛科技提供的GSU-38A0GPS接收模块为例,介绍了GPS的通信协议。讨论了基于单片机的GPS接收系统设计,提出了对GPS全球定位系统定位信息的接收以及对各定位参数数据的提取方法,并给出了系统的硬件电路及软件流程图。通过本设计方法,本系统由单片机控制GPS模块较为精确地计算和显示日期、时间、经度、纬度等卫星信息。关键词GPS;GSU-38A0;单片机;MGLS-128641引言1.1GPS系统及其工作原理全球定位系统〔GlobalPositioningSystem简称GPS〕是美国第二代军用导航系统,可实现全球范围内的实时导航和定位。GPS由太空卫星、地面控制系统、用户设备三个局部组成。太空卫星共有27颗,24颗运行,3颗备用。24颗可操作的工作卫星以55°的倾角分布在地球上空20~200KM的6个轨道面上。这些卫星轨道上的分布状态使地球上的任何位置在任意时候都可以同时收到至少6颗卫星的定位信息,这些卫星那么不断地给全球用户发送位置和时间的播送数据。地面控制系统主要作用有:根据监控系统对GPS的观测数据计算出卫星的星历和卫星钟的改正参数等,并将这些数据注入到卫星中去;对卫星进行控制,对卫星进行发布指令;接收卫星信号,监测卫星状态等。用户设备用于接收GPS卫星所发出的信号,利用这些信号进行导航定位等工作。GPS系统的根本定位原理是:每颗GPS卫星时刻发布其位置和时间数据信号,用户接收机可以测量每颗卫星信号到接收机的时间延迟,根据信号传输的速度可以计算出接收机到不同卫星的距离。同时收集至少4颗卫星的数据时,就可以算出三维坐标、速度和时间。由于GPS具有全球覆盖以及精度高、定位速度快、实时性好、抗干扰能力强等特点,近年来在国内外得到了广泛的应用,在各个领域发挥了极大的作用,已成为了信息时代不可以或缺的一局部[1]。1.2本设计的主要工作本文的主要目的是在GPS和单片机的理论和知识上,选用Atmel公司的AT89S52提取GPS模块的接收数据并由12864液晶显示接收数据。在此设计过程中,主要熟悉GSU-38A0GPS模块各性能指标,学习NMEA封包并懂得使用NMEA输出命令,结合单片机串行通信知识能实现对GPS接收到的卫星信息进行提取,并在12864液晶显示平台上选择性的显示数据。2GSU-38A0GPS模块简介GSU-38A0GPS模块是北京精仪达盛科技的产品。其特点是体积小、接口简单、可靠性强,可用于DSP、ARM、单片机系统。,模块5V输入,由固定电源输出芯片LT1085输出3.3V电压给GSU-38A0芯片。GPS模块附有10米的接收天线[2]。2.1GPS接收模块主要性能指标GPS具有12个数据并行接收通道,包括了8个数据位、1个起始位、1个停止位、无校正位,输出电平为CMOS电平、电流为1mA。通信方式是采用异步串行通信,默认的通讯速率是4800baud,接收频率为1575.42±1.0MHzL1波段C/A码。GSU-38A0GPS接收模块可以提供经度、纬度、速度、高度、世界协调时间、频率和GPS卫星轨道信息等。它的最大特点是:低压3.3V供电;工作电流不高于50mA〔不含天线消耗〕;高灵敏度-145dBm;可以输出时间的最小单位为0.01秒。GPS的定位精度问题主要应归结于美国军方的军事策略〔SA〕。在无SA影响的情况下,当PDOP值小于等于3,并且相对被测点GPS卫星不在其轨道上所处位置良好时,得到的位置数据有95%的精度在10米以内;另外使用差分定位技术,其范围在2~3米左右。如果天线被遮挡或者GPS卫星所处位置不很理想时,PDOP值会降低,而且有局部定位数据的精度可能要超出10米的范围。对于第一次运行,本GPS模块需要花费50秒左右对接收到的卫星数据进行累计运算后,才能完成第一次定位〔即“冷启动〞〕。自冷启动后,每次定位所需要的时间小于12秒。在运行过程中定位信息大约每秒更新一次。如果收到了3颗以上符合PDOP和HDOP门限值的卫星信号可实现2维定位,收到4颗符合PDOP和HDOP门限值的卫星信号可实现3维定位。不需要初始状态输入和初始时刻输入。本GPS模块有8M的flash存储器,信息格式可以是NMEA-0183或Binary,采用ASCII代码。附带的天线中心频率为1575.42MHz,右螺旋偏振,增益大于等于-5dB,轴线比为3dB。2.2GSU-38A0接口说明表1引脚功能引脚符号I/O性能1VCCI主电源2RESETI复位3TXD1O数据发送口4RXD1I数据接收口51PPSO1PPS信号输出6TXD0O串行发送数据端口7GPIOI/O唤醒,中断输入8GNDGROUND电源地和信号地应当注意的是芯片正常工作时电源电压标称值是3.3V,允许的极限范围是3.0V~3.9V。超出了此范围将会造成不可修复性的破损。2.3输入数据格式GSU-38A0通过命令来修改定位参数、输出格式、通讯参数、选择语句和工作方式等。GSU-38A0支持NMEA、START、STOP、RESTORE、AUTOSTART、FLXRATE、DATUM、PWRDOWN等8条NMEA-0183格式的命令。2.4输出数据格式GSU-38A0GPS的通信波特率默认值为4800bps,1个起始位,8个数据位,1个停止位,无奇偶校验位。通常使用NMEA-0183格式输出,数据代码为ASCII码字符。NMEA-0183是美国海洋电子协会为海用电子设备制定的标准格式。由于该格式为ASCII码字符串,比拟直观和易于处理,在许多高级语言中都可以直接进行判别、别离,以提取用户所需要的数据。适用GSU-38A0的有6条输出语句:GPGLL:地理位置,经度及纬度;GPGGA:卫星定位后信息;GPVTG:对地方向及对地速度;GPRMG:最起码的GNSS信息;GPGSA:GNSSDOP,一种偏差信息,说明卫星定位讯号的优劣状态;GPASV:GNSS天空范围内的卫星。其中,RMC数据格式是最常见的,提供了最起码的GNSS信息,对一般用户来说,GPRMC提供的数据信息相对其他格式而言价值量更大些。下面便以RMC语句为例来介绍其数据格式,该语句包含了时间、纬度、经度等卫星信息。$GPRMC,hhmmss.dd,s,xxmm.dddd,<N/S>,yyymm.dddd,<E/W>,s.s,h.h,ddmmyy,d.d,<E/W>,M*hh<CR><LF>hhmmss.dd世界协调时间(UTC)hh:时;mm:分;ss:秒;dd:秒(小数局部)。S定位状态A:定位;V不定位。xxmm.dddd纬度xx:度;mm:分;dddd:分的小数局部。<N/S>:北纬N/南纬Syyymm.dddd经度yyy:度;mm:分;dddd:分的小数局部。<E/W>东经E/西经SS.S对地速度,单位:节。1节〔knot〕=1.852h.h方位角;真北方向为0°,顺时针方向计算,最大359.9°。ddmmyy日期dd:日;mm:月;yy:年;按日、月、年格式(年按两位)输出。d.d磁偏角<E/W>偏差,E:向东;W:向西M定位方式A:自动;N:手动*hhhh:校验<CR>/<LF>为终止符,表示回车、换行。3硬件设计3.1电源设计本系统选用的液晶显示器件是型号为MGLS-12864的LCD,需要负电源驱动。有必要设计一个±5V输出电压的双电源电路,如图1所示。图1电源电路3.2系统电路设计图2系统电路原理图系统采用11.0592MHz晶振,串口方式1接收GPS信息,P1口和P3口用于12864LED液晶显示接口,可以显示实时时间、纬度、经度及其它GPS数据信息[3]。本系统主要有两个硬件模块组成:GPS接收模块和液晶显示模块(实物图见附录图A)。GSU-38A0GPS模块用于接收GPS卫星的信号,并计算出模块测试点所在位置的卫星信息。采用的GPS模块由变频器、信号通道、微处理器、存储单元和接收天线组成。单片机主控制器的串行接收口连接GPS模块数据发送端接收卫星信息。液晶显示模块用于显示接收到的数据信息。12864数据连接单片机P1口,双电源供电。结束开始4软件设计结束开始显示数据液晶初始化显示数据液晶初始化处理数据串行口中断初始化处理数据串行口中断初始化数据正确?Y数据正确?开始接收数据N开始接收数据接收数据是否接收到数据帧N接收数据是否接收到数据帧Y图3系统程序流程图图3为GPS全球定位系统的主程序流程图。系统软件主要由初始化模块、数据接收处理模块组成。初始化模块完成开机上电后对单片机、液晶显示器和GPS模块的初始化工作。对单片机设置串口工作模式、设置波特率和中断工作模式;对液晶显示器设置开机画面和显示模式;完成对GPS模块串口的成功通信。数据接收处理模块负责处理从GPS接收到的数据。在单片机串口收到信息后,先判别是否为语句引导头“$〞,再接收信息内容,然后根据语句标识区分出信息类别以对收到ASCⅡ码进行处理显示。假设整个数据接收正确,便对数据进行处理;假设接收不正确,那么重新进行接收。本设计中,接收时主要提取并存储以下数据内容:当前日期、时间、定位状态、纬度、经度。如图4所示。特别注意的是GPS发送的时间是世界统一时,与我国的时区相差八个小时,所以还要将时间作转换。北京时间应在UTC时间上加上8小时才是准确的北京时,在超出24小时时应作减24小时处理。转换时间要考虑到年月日的变更。数据更新率为每秒一次。系统工作时GPS模块不断得到新的数据,单片机不断刷新RAM,处理完后的数据送液晶显示器显示[4]。数据接收处理程序流程图如下面图4所示。帧起始$帧起始$判断帧头帧头RMC判断数据分段提取数据分段提取有效性提取日期提取纬度信息提取时分秒提取经度信息提取有效性提取日期提取纬度信息提取时分秒提取经度信息提取数据处理、储存、显示数据处理、储存、显示结束结束图4数据接收处理程序流程图在串行中断接收GPS信号中,下面以时间提取为例,由判断帧头到数据的分段提取方法的程序如下:unsignedchardatadata_item=0/*全局变量声明*/unsignedintrece_num=0voidreceive()interrupt4/*串行中断:接收GPS信号*/{ unsignedchar temp; RI=0; temp=SBUF; rece_num++;switch(data_item) { case0: if(temp=='$'){data_item++;} break; case1: if(temp=='G'){data_item++;} else{data_item=0;} break; case2: if(temp=='P'){data_item++;} else{data_item=0;} break; case3: if(temp=='R'){data_item++;} else{data_item=0;} break; case4: if(temp=='M'){data_item++;} else{data_item=0;} break; case5: if(temp=='C'){data_item++;} else{data_item=0;} break; case6: if(temp==',') {data_item++; g_Ptr=0; g_Class=0; g_DataVari=1;} else{data_item=0;} break; case7: if(temp==',') {g_Ptr=0; g_Class++; break;} if(temp=='$') {data_item=1; break;} switch(g_Class) {case0: /*提取时间数据*/if(g_Ptr<6){g_DisTime[g_Ptr++]=temp;}break;}default: break;}}5调试与结果5.1软件调试在对GPS接收到的卫星信息进行处理时,碰到较为麻烦的问题是在对接收到的时间信息进行转换上。直接从卫星接收到的时间是UTC时间,北京时间应在UTC时间上加上8小时才是准确的北京时,在超出24小时时应作减24小时处理。刚开始将对时间转换的算法放在主函数中处理,程序如下:if(g_Ptr==2)//接收到正确的数据帧 { i=g_DisTime[0]-'0';//提取时间的小时位高位并转换码型 j=g_DisTime[1]-'0';//提取时间的小时位低位并转换码型 j=i*10+j+8;//在UTC时间上加上8个小时if(j>=24)//判断得到的时间是否超过24小时,超出变作减24处理{j-=24; }g_DisTime[0]=j/10+'0';//将北京时间高一位作码型变换并赋予高一位显示g_DisTime[1]=j%10+'0';//将北京时间高二位作码型变换并赋予高二位显示 }在调试中出现一个奇怪的问题,在作了以上的处理后时间的小时位数据并不完全正确,高位显示的与北京时间相同,但低位却与UTC时间相同。在做了各种尝试〔如在UTC时间上做加9处理、直接给六位时间g_DisTime[5]赋值等〕后总结出这样一个问题,以上的算法处理只对六位数据位的高一位处理有效,低五位的显示始终都是正确UTC时间。经过分析,初步认定上面的程序并没有被完全的执行。因GPS接收模块源源不断的传送数据给单片机处理,在运行过程中定位信息大约每秒钟更新一次,在主函数中对收到的时间进行处理时有可能会出现还没来得及处理完毕时便接收到下一帧数据,故时间的处理就可能会有只对高一位处理完成而没完成处理好低五位时又进入了串行口中断,那么液晶显示的结果就是经过处理的高一位(北京时间)和未经处理的低五位(UTC时间)。考虑到以上原因,将原放在主函数的时间转换处理程序放置在到中断时一收到UTC时间就对其进行转换处理。经过了调试,终于在液晶上显示出来正确的北京时间,证明了以上的分析、推断的正确性。5.2系统测试结果2007年5月22日下午2点4分钟左右在肇庆学院学生宿舍5区13栋进行测试,接收天线放置于户外接收信号,启动GPS220507140445此数据代表意义分别如下:220507:表示当天日期为2007年140445:表示测试时的当前时间为14时4分45秒;A:表示接收到的卫星信息为可用的资料;
11229.3980:表示测试地点的经度为112d29.3980分;E:表示测试地点为东经;2306.7840:表示测试地点的纬度是23d6.7840分;N:表示测试地点在北半球。6结束语本文中我们介绍了基于单片机开发的GPS接收机系统设计的方法。GPS应用越来越广泛,我们的设计只是应用的根底和开端。在实际应用中我们要结合各个领域的特殊情况和特定的技术需求,进行有针对性的处理和设计。GPS提供的定位信息包括了经度、纬度、海拔、速度、航向、磁场、时间、卫星个数及其编号等卫星信息,其接收数据方法类似,故本设计只是提取了其中的局部价值性较高的数据信息。GPS可通过NMEA输入命令对串行通讯参数进行设置,实现个性化显示格式,本设计只使用了其默认的设置参数。参考文献:[1]邱致和,王万义.GPS原理与应用[M].北京:电子工业出版社,2001:3~8.[2]电子电气综合实训系统使用说明书[M].北京:精仪达盛科技,2000:37~47.[3]胡健.单片机原理及接口技术[M].北京:机械工业出版社,2005:164~191.[4]戴佳,戴卫恒.51单片机C语言应用程序设计[M].北京:电子工业出版社2006:236~246.DesignofGlobalPositioningSystemBasedonSingleChipMicrocontroller--PartofSoftwareHaishengYeAbstract:TheGlobalPositioningSystemisanveryimporteantpartintheinformationtime,whichiswidelyimpliedinourpraticallife.It'sthecharacteristicofpe
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- GB/T 45199-2025家禽遗传资源濒危等级评定
- 包车旅游有合同范本
- 出售店铺合同范本
- 农村护栏转让合同范本
- 买卖协议车子合同范本
- 冰品购销合同范本
- 区块链认证合同范本
- 修建电站合同范本
- 企业合同范本清单
- 单位保密合同范本
- 桥梁钢筋制作安装施工方案
- 2025年语言文字工作计划
- 金融类竞聘主管
- 2024年3月天津第一次高考英语试卷真题答案解析(精校打印)
- 《国防动员准备》课件
- 2024年688个高考英语高频词汇
- 商标合资经营合同
- 第六讲当前就业形势与实施就业优先战略-2024年形势与政策
- 2024-2030年中国家政服务行业经营策略及投资规划分析报告
- 2025年护士资格证考核题库及答案
- 湖北省黄冈市2023-2024学年五年级上学期数学期中试卷(含答案)
评论
0/150
提交评论