导言
斗极卫星导航体系(BDS)是我国正在施行的自主建造、独立运转的全球卫星导航体系。有着集定位、授时、短报文通讯及用户检测于一体的优势,但是现在斗极卫星导航体系的实践运用并不抱负,用户终端设备价格偏高且研制滞后,运用规划不大。特别在帆海范畴,许多与卫星导航有关的先进设备、先进技术(如电子海图导航体系)暂不支撑斗极卫星导航服务,现在船载卫星导航体系中运用最遍及的仍是GPS体系。
本文使用现有的电子海图导航体系,在其根底之上一起加载斗极及GPS导航定位信息,选用权威微电子科技有限公司推出的支撑BD2/GPS的双模授时定位模组完结斗极/GPS卫星导航信息的接纳,选用具有双串口的一款单片机担任体系的操控、信息收集、传输,终究完结电子海图导航体系与斗极卫星导航体系的对接,对斗极卫星在帆海范畴的民用推行有必定含义。
1 整体结构与功用
本体系将导航信息进行解析转化,经过串口传递给上位机,终究在电子海图显现体系中显现定位导航。依照功用要求,可将体系分为单片机操控模块、BD/GPS双模接纳模块、串口通讯模块、存储体系、电源模块等,如图1所示。
2 硬件规划
2.1 斗极/GPS双模接纳模块
TD3017芯片是斗极/GPS双模接纳模块的中心,它是一款支撑BD2 B1/GPS L1的双模授时定位模组,内部整合了双模基带芯片和高性能可装备的双模双通道射频芯片,供给高精度、高灵敏度、低功耗、低成本的BD2/GPS双模导航、授时服务,且具有天线状况检测及天线短路维护功用,支撑休眠作业形式,支撑软件晋级等功用。
通常情况下,斗极/GPS双模接纳模块经过外接BD2B1/GPS L1有源天线,可接纳到斗极B1频段(即1561.098±2.046 MHz)及GPS的L1频段(即1575.42±1.023MHz)内的卫星导航信号。有源天线接纳到高频卫星信号后,经过TD3017A模组内射频芯片完结对信号的扩大、变频得到中频模拟信号;再经滤波、解调、A/D转化等操作,完结弱小射频信号到数字中频信号的转化;然后再经过TD3017A模组内基带芯片进行捕获和盯梢、定位结算等一系列算法处理后,解译出斗极以及GPS的导航电文;最终输出NMEA格局的定位数据和1PPS授时信号。
模块上电完结初始自检后,主动接纳来自天线的射频信号,解分出导航电文,最终由串口输出NMEA-0831数据。TD3017的串口引脚经过MA X232电平转化芯片,可直接与上位机串口衔接通讯,也能够经过简略的跳线衔接与单片机体系进行串口通讯,硬件电路图如图2所示。
2.2 串口通讯模块
STC12C5A60S2单片机是一款低功耗、高性能、抗干扰能力强、价格低廉、操作简略、实用性强的CMOS 8位微操控器,指令代码彻底兼容传统8051,片上集成1280字节RAM,具有串口1(RxD/P3.0及TxD/P3.1和串口2(RxD2/P1.2,可经过寄存器设置到P4.2;TxD2/P1.3可经过寄存器设置到P4.3)双串口。
单片机与上位机可经过电平转化电路完结RS232格局通讯;单片机与BD/GPS信号接纳模块间,可经由MAX232进行电平转化完结RS232通讯,也能够经过简略的跳线链接进行串口通讯。
2.3 电源模块
电源部分电路如图3所示,其间AS1117—3.3是一款低压差线性稳压器,它能供给完善的过流维护和过热维护功用,保证芯片和电源体系的稳定性。
3 体系程序规划
上位机的电子海图体系选用OpenCPN,它是一个开源代码的简练电子海图导航软件,支撑GPS/GPDS定位信息输入、BSB栅格图表显现、S57 Vector ENChart Display、AIS输入解码、Waypoint Autopilot Navigation等功用。单片机将从斗极/GPS信号接纳模块中接纳到的BD2或GPS报文进行解析、转化后,得到NMEA规范格局的“$GPRMC”定位报文,经过串口传递给电子海图加以显现定位。整个程序可分为几个部分,即主控程序、BD2/GPS定位解析程序、串口通讯程序。
3.1 NMEA数据协议简略介绍
TD3017模块输出的音讯句子契合NMEA—0183通讯规范格局,根本格局界说如下:
$
IDsss是句子类型标识,它由两部分组成:ID为句子标识符,SSS为句子格局符。句子标识符有BD、GP、GN、CC、P,别离代表BD2体系、GPS体系、GNSS体系、Computer Control句子、专用句子;而句子格局符分为输入句子格局符(用于对TD3017模组进行作业形式等的切换设置),以及输出句子格局符(有GGA、GLL、GSA、GSV、RMC、TXT,除了TXT是段文本信息的传送,用于输出天线检测状况或许输出一些操控指令的呼应以外,其他的与规范NMEA~0831协议共同)。
类型标识符后为数据体,由若干数据字段(d1,d2,…,dn)组成;校验和的计算是从$到*之间的一切字符;
$BDRMC,084300.00,A,2434.90608,N,11806.83229,E,0.067,,151014,,,A*77
本试验中使用卫星接纳模块接纳到其间一条信息一$BDRMC为帧头,标明该句子为斗极RNC格局定位信息;字段1(084300.00)为UTC时刻,hhmmss.sss为时分秒格局,即UTC时刻8时43分0秒(北京时刻16时43分0秒);字段2(A)标明状况,A=定位,V=未定位;字段3(2434.90608)为纬度ddmm.mmmm,度分格局;字段4(N)标明N(北纬)或S(南纬);字段5(11805.83229)为经度dddmm.mmmm,度分格局;字段6(E)标明E(东经)或W(西经);字段7(0.067)为速度,单位为节,Knots;字段9(151014)为UTC日期,DDMMYY格局,即14年10月15日。
3.2 斗极定位模块程序规划
斗极/GPS信号接纳模块上电后会主动不停地将接纳到的数据经过串口发送出去,单片机体系由串口2接纳这些数据,因此,在串口初始化(串口1及串口2都要初始化)后,等候串口2接纳终端标志方位1,在串口2终端程序中,判别串口2的接纳缓冲寄存器S2BUF中的字符是否为“$”,若是则将其存入table[]数组中,并持续将接下来接纳到的字符逐一存入table[]数组中,直到接纳满63个字符,即一条NMEA信息中除“*”及回车换行以外的其他字符的总个数。暂时封闭串口2中止,等候接下来的判别,不然,从头判别下一个接纳到的字符是否为“$”。
回到主程序中判别table[4]是否为“M”,若是则阐明该条信息是一条RMC格局的信息,不然丢掉该条信息从头开始接纳。接着判别table[17]为“A”,若是则阐明该条信息定位有用,不然丢掉该条信息从头开始接纳。
将table[]数组中的数据前3位修改为“$GP”后,将该数组中数据逐一发送给串口1的发送缓冲寄存器SBUF,由串口1发送给上位机电子海图体系。程序流程如图4所示。
3.3 串口通讯子程序
串口通讯包括两部分:串口2从斗极/GPS信号接纳模块中接纳卫星信号,再经过串口l将解析后的数据发送给上位机。源程序如下:
4 试验成果
体系各模块衔接正确后,串口通讯指示灯闪耀。图5为上位机收到的斗极模块直接输出的ASCII信息,模块默许接纳GNSS,即斗极与GPS混合定位信息,图6为单片机传递给上位机的ASCII信息,图7为电子海图体系中显现的定位信息。
结语
我国斗极导航体系起步较晚,特别海上民用中许多与卫星导航有关的先进设备、先进技术暂不供给斗极卫星导航服务。本文使用简略的单片机体系成功完结在现有电子海图中显现斗极卫星的船只导航定位信息,对活跃推行斗极卫星导航体系在各种民用帆海范畴的运用有着必定含义。在项目规划中,经过需求剖析选用适宜类型的单片机体系,拟定合理的软、硬件功用区分,完结了所需的功用。