APP下载

基于DSP+FPGA的高精度北斗导航接收机设计

2019-10-21吕俊杰董浩宸张海东

现代信息科技 2019年20期
关键词:高精度

吕俊杰 董浩宸 张海东

摘  要:针对当前北斗导航定位接收机在高动态和复杂电磁环境下定位精度不高的问题,本文在了解卫星导航原理的基础上,介绍了一种基于DSP+FPGA的嵌入式北斗导航接收机的设计,以满足在高动态和复杂电磁环境下无人机、单兵、机器人等高精度导航定位的要求。本文详细介绍了接收机的硬件架构:接收机的射频前端采用MAX2769芯片,基带及信号处理部分采用TI公司的高性能浮点系列的TMS320C6747芯片和现场可编程逻辑门阵列芯片EP4CE115F23C8N。并基于测试实验结果,说明该款接收机体积小、功耗低、高精度的特点。

关键词:北斗导航接收机;高精度;DSP;FPGA

中图分类号:TN967.1       文献标识码:A 文章编号:2096-4706(2019)20-0054-05

Abstract:Aiming at the problem that the positioning accuracy of Beidou navigation and positioning receiver is not high in high dynamic and complex electromagnetic environment,this paper introduces the design of an embedded Beidou navigation receiver based on DSP + FPGA to meet the requirements of high-precision navigation and positioning of UAV,individual soldier and robot in high dynamic and complex electromagnetic environment. This paper introduces the hardware architecture of the receiver in detail:the RF front-end of the receiver uses MAX2769 chip,the baseband and signal processing part uses TI companys high-performance floating-point series of TMS320C6747 chip and field programmable logic gate array chip EP4CE115F23C8N. Based on the test results,it demonstrates that the receiver has the characteristics of small size,low power consumption and high precision.

Keywords:Beidou navigation receiver;high precision;DSP;FPGA

0  引  言

全球衛星导航系统,俗称GNSS系统。发展至今,常见的较为成熟的系统包括美国的GPS系统、俄罗斯的GLONASS系统、欧盟的GALILEO系统以及如今迅速发展的中国的BDS系统。北斗导航系统是我国独立发展、自主运行的全球卫星导航系统,是国家中长期科技发展纲要确定的16个重大专项投资中最大的专项之一。2018年12月,北斗三号基本系统完成建设,标志着北斗卫星导航正式步入全球时代。然而基于在高动态及复杂电磁环境下导航定位精度不高的问题。本文提出了一种高动态嵌入式北斗接收机的设计方案,应用性较强,且经过实验测试,验证了本款接收机适用于一些恶劣环境条件下。

1  接收机总体组成及系统架构

北斗导航接收机主要由三大部分组成,分别为:天线及射频前端模块、基带信号处理模块、定位导航解算模块。简单来说,导航接收机内部需要完成四个过程:

(1)自主接收卫星射频信号。

(2)对信号进行分析,获取密钥,恢复数据。

(3)测量接收机与卫星之间的距离。

(4)利用上述过程所得信息计算位置。

具体硬件实现的流程为:导航信号经由卫星天线发射后,经过电离层、对流层到达终端(接收机)的射频天线前端,此时接收机接收到的是微弱的电信号,需经过低噪声前置放大器进行信号的放大,然后输入到射频前端的信号经过滤波、下变频和模拟/数字信号转换单元得到数字信号,因此射频前端模块得到的是数字中频信号。

接下来,在基带信号处理模块,采用专用的可编程逻辑门阵列(Field Programmable Gate Array,FPGA)对所得中频信号进行捕获,得到卫星的星号、初始码相位偏移量以及对应的含多普勒频移的信号频率等观测量。接着将上述所得参数送入跟踪模块,估计出每颗卫星精确的码相位偏移量和含多普勒频移的信号频率。

数字信号处理器芯片对各种观测量进行快速的运算解调,利用导航电文的前导码找到解调后数据的同步头,由同步后的数据解算出导航电文,并结合码相位偏移量计算出伪距值,最后利用伪距值计算出用户接收机所在位置、速度、时间信息,为用户提供PNT服务。

其系统整体组成图如图1所示。

2  硬件架构

2.1  射频前端模块设计

北斗卫星导航系统B1频点信号的频率为1561.098MHz,采用CDMA工作方式。由于芯片处理低频率的信号较为容易,故射频前端所要实现的主要内容是下变频和模数转换功能,但由于有源天线接收到的卫星信号十分微弱,故在进入射频前端处理前,需经过滤波放大环节。因为基带信号处理模块需要处理中频信号,所以射频前端的设计会直接影响整个导航接收机性能的优劣。根据所要满足的要求,射频前端的设计应该要保证高增益、非线性失真等条件。考虑到上述因素,选用Maxim公司生产的一款低中频结构的能处理GNSS信号的射频前端芯片。它采用了业界领先的SiGe BiCMOS工艺,集成了一个双输入的LNA及混频器、镜像频率抑制滤波器、可控增益放大器、频率综合器、晶体振荡器和多比特A/D转换器。射频前端拓扑图如图2所示。

采用低中频结构设计的射频前端具有的优势在于具有超外差结构的高性能和零中频结构易于集成的特点。在此设计中,MAX2769作为处理信号的主芯片,外加一级LNA,提高了接收机的灵敏度。由于北斗系统采用的是伪码扩频调制通讯体制,且存在路径传输、大气噪声等干扰,故卫星接收端接收到的信号常常淹没在接收机的热噪声中,但通过解扩,可以将卫星信号从噪声信号中提取出来,这就需要对接收机各部分增益、非线性失真、噪声等指标做好综合规划。MAX2769芯片有两种工作方式:预置模式和SPI配置模式。在本设计中,芯片工作于SPI配置模式以实现其功能,但需要对其时序进行配置。

2.2  基带信号处理模块设计

基带信号处理模块承担着承上启下的重要作用,肩负着对射频前端输入的数据进行预处理,以及在DSP的控制下进行信号的捕获、跟踪、解扩解调等任务。在模块中需要实现的几个关键技术是信号捕获以及载波跟踪和码跟踪。

首先是信号捕获过程,我们采用改进的并行码搜索法,流程(如图3所示)如下:

(1)首先产生一个初相位为0的本地伪码,进行FFT变换后取其共轭,结果记为Fk。

(2)然后生成本地载波,并给其一个多普勒频移的初值,这时数据开始输入,由于数据为正交信号,将本地载波与其进行90度相移后的值分别进行点乘,结果相加并进行FFT变换,结果记为Rk。将Fk与Rk进行点乘后求取逆变换,并取其模值的平方。

(3)改变多普勒频移的值,重复步骤(2),直至所有可能的多普勒频移值搜索完成。

(4)择其最大值进行判决。

载波跟踪与码跟踪也是在高动态环境下对定位信息实现精确计算的主要难点。因为在高动态环境下,载波会产生多普勒频移,一般的载波跟踪环就无法实现对载波的持续跟踪,因此就要加宽环路带宽,而这会引来新的环路噪声问题,一旦超过工作的门限噪声,就会使载波环产生失锁,解调数据无法恢复。而码跟踪环也会因为伪随机码的频移发生失锁,无法得到伪距测量值,加长了重捕获时间。为此,本设计采用了由Intel公司生产的FPGA芯片EP4CE115F23C8N,采用JTAG方式配置。

当数字中频信号进入FPGA模块,首先需要实现信号解调,通过载波跟踪环复制的载波信号以混频的形式将其从卫星信号中完全剥离,使其从中频下变频到基带,C/A码的剥离也同样如此。然后进行解扩,需要将解调后的数据与码发生器产生的C/A码进行相关运算,以得到基带信号。主要设计单元包括了载波数控振荡器NCO、码振荡器NCO、码发生器、积分清零单元等核心单元以及相应的协调单元。相关器通道的数目决定了接收机一次可以处理多少颗可见卫星发来的信号,所以本设计拥有12个相关器通道,每个通道的处理电路都相对独立,接收机跟踪环路设计如图4所示。

具体工作流程為:数字中频信号进入相关器之后,分为同相(I)和正交(Q)支路,分别与本地载波NCO所产生的本振相乘,进行载波剥离。然后其I支路和Q支路分别与超前、即时、滞后三路本地C/A码相乘,进行扩频码剥离。本地产生的三路C/A码是由在码NCO控制下的码发生器产生,随后经过移位寄存器输出,移位寄存器时钟标称速率为码发生器的2倍,即2.046MHz。积分部分的积分控制模块包含若干子模块。利用FPGA来实现对数字信号的处理的最大优点便是可编程性,因此对信号处理的方式和功能就视程序内容而定,避免了专用集成电路灵活性不高,一旦电路设计完成后,无法对其再进行开发的缺陷。

2.3  定位导航解算模块

在基带数字信号处理模块处理完数字中频信号后,各个通道分别输出其所跟踪的卫星信号的伪距、多普勒频移和载波相位等测量值以及信号上解调出来的导航电文,而定位导航解算模块需要处理的便是这些卫星测量值和导航电文中的星历参数等信息,本接收机采用双频伪距单点定位算法,将从双频得到的伪距进行一定的差分运算,得到组合观测值,可以有效地修正电离层延时。而在解算过程中涉及到大量的数值运算,尤其是比较多的浮点数运算,故选用了TI公司的高性能浮点DSP芯片TMS320C6747作为系统的主处理芯片。

由于在整个接收机硬件中,FPGA是主设备,DSP是从设备,对这个接收机的编程即对二者编程的整体程序框图如图5所示。

上电后,DSP首先启动,控制FPGA完成配置和初始化工作,同时自己也完成初始化工作。之后从FPGA读出相关值,利用捕获算法和跟踪算法对信号进行捕获和跟踪,等到稳定跟踪后,通过码相位值计算出伪距,并通过相关值解调出电文信息,将电文信息通过一系列算法进行定位解算,最后通过串口输出结果。

3  接收机测试

在接收机完成后对其进行了测试,测试结果非常成功。根据测试结果,发现高动态北斗接收机可以完成预计功能,包括测试过程中对卫星的跟踪和捕获,定位精度和测速精度达到要求。在此,选取测试过程中的一段数据进行分析。根据接收机的位置和速度信息分析得到误差信息如图6所示。

通过分析误差信息可以得到:在ECEF坐标系下,高精度北斗接收机的性能指标可以达到定位误差≤10m,测速误差≤0.2m/s。

通过图7可以看出,北斗接收机在大部分时刻都保持着4颗以上的收星数,保证了接收机具有较快的定位速度和较高的定位精度。

4  结  论

本文介绍了一种基于DSP+FPGA的北斗接收机设计方案。本文首先介绍了北斗接收机的整体组成及架构,然后分部分介绍了接收机各个模块的硬件设计,以信号处理部分作为重点,针对信号捕获上的难点,采用了改进的并行码搜索算法,提高了捕获精度,为后续的跟踪与解算做好铺垫。最后经过实际测试,证实该接收机可以正常工作并能够达到预定性能指标。

参考文献:

[1] 谢钢.GPS原理与接收机设计 [M].北京:电子工业出版社,2009.

[2] 胡锐,薛晓中,孙瑞胜,等.基于FPGA+DSP的嵌入式GPS数字接收机系统设计 [J].中国惯性技术学报,2009,17(2):187-190.

[3] 杨树伟,张冰,胡锐.基于FPGA与DSP的嵌入式GNSS接收机设计 [J].科学技术与工程,2011,11(27):6643-6647+6655.

[4] 唐康华,何晓峰,吴美平,等.面向嵌入式应用领域的GPS接收机设计 [J].仪器仪表学报,2007(8):1497-1501.

[5] 林艳.卫星导航系统并高动态跟踪研究.[D].南京:东南大学,2013.

[6] 魏秀启,郑维广,隋绍勇.北斗导航定位接收机的原理及硬件实现 [J].电子元器件应用,2009,11(4):37-39+43.

[7] 刘竞超,邓中亮.基于ARM+FPGA北斗接收机设计 [J].软件,2012,33(12):38-40.

[8] 陈可,朱常其,何燕.基于MAX2769的射频前端的设计和实现 [J].国外电子测量技术,2014,33(1):58-61.

[9] 张学良.基于TMS320C6747的弹载GPS接收机研究 [D].南京:南京理工大学,2009.

[10] DOBERSTEIN D.Fundamentals of GPS Receivers [M].New York:Springer,2011.

作者简介:吕俊杰(1998-),男,汉族,江苏宝应人,本科,研究方向:电气工程及其自动化;董浩宸(1997-),男,汉族,河北唐山人,本科,研究方向:电气工程及其自动化;张海东(1997-),男,汉族,江苏淮安人,本科,研究方向:自动化。

猜你喜欢

高精度
关于高精度磁测在构造解释方面的应用分析
基于5G的高精度室内定位方法研究
高精度PWM式DAC开发与设计
高精度PWM式DAC开发与设计
鲁格公司新型6.5mm口径高精度狙击步枪