logo资料库

论文研究-GPS系统C/A码的产生与捕获算法的仿真与研究 .pdf

第1页 / 共6页
第2页 / 共6页
第3页 / 共6页
第4页 / 共6页
第5页 / 共6页
第6页 / 共6页
资料共6页,全文预览结束
中国科技论文在线 http://www.paper.edu.cn GPS 系统 C/A 码的产生与捕获算法的仿真与研究 何 兴 武汉理工大学信息工程学院,武汉(430070) E-mail:foryou.2001@163.com 摘 要:GPS 卫星发射 BPSK 调相的伪随机噪声序列 C/A 码,可以通过 C/A 码的捕获来测 距定位。本文介绍了 C/A 码的产生原理和循环相关捕获算法,在 Matlab 仿真环境下实现了 C/A 码的产生,并对捕获算法进行了仿真验证,成功的解算出 C/A 码起始点和载波频率, 试验证明循环相关算法可实现 GPS 信号的捕获,是一种适合 GPS 软件接收机工程实现的算 法。 关键词:GPS 导航;C/A 码;循环相关;捕获算法;Matlab 仿真 1 引言 GPS 导航定位系统是目前最先进、应用最广的卫星导航定位系统,近年来,软件 GPS 接收机正成为一个活跃的技术发展方向,软件接收机成本低,开发速度快,具有高度的可配 置性,在系统改进和新算法检验方面具有优势,对于新一代导航接收机的开发有着重要意义。 GPS 卫星向广大用户发送的用于导航定位的信号,是利用伪随机噪声码传送导航电文的 BPSK 调相信号。为了跟踪和解码 GPS 信号,首先要捕获到 GPS 信号,捕获过程就是要获 得输入信号的 C/A 码起始点和载波频率,然后传递给跟踪过程。本文基于软件方法,研究 GPS 卫星的 C/A 码的产生过程和循环相关捕获算法,并在 Matlab 仿真环境下实现 C/A 码的 产生和捕获。 2 C/A 码的产生 C/A 码是用于粗测距和捕获卫星信号的伪随机码,GPS 的 C/A 码由两个 10 级反馈移位 寄存器组合产生,其产生原理如图所示[1]。 图 1 C/A 码发生器 两个移位寄存器于每星期日子夜零时,在置 1 脉冲作用下处于全 1 状态,同时在频率为 f1=1.023MHz 的时钟脉冲驱动下,两个移位寄存器分别产生码长为 N=210-1=1023,周期为 1ms 的两个 m 序列 G1(t)和 G2(t)。这时 G2(t)序列的输出选择两个存储单元进行二进制相加后 输出,再将其与 G1(t)进行模二相加,将可能产生 1023 种不同结构的戈尔德序列 C/A 码。 - 1 -
中国科技论文在线 3 C/A 码捕获算法 http://www.paper.edu.cn 为了跟踪并解码 GPS 信号,必须使用捕获算法来搜索信号的出现,一旦信号被搜索到, 可以获取必要的参数并转入跟踪程序。有两个重要参数必须被测量:即 C/A 码周期的起始 点,以及输入信号的载波频率。一个采集到的数据集通常包括几颗卫星的信号,每个信号包 含具有不同起始时间的不同 C/A 码,以及不同的 Doppler 频率。针对某个特定的卫星信号, 捕获方法是找到 C/A 码的起始点,并使用这一信息解扩 C/A 码的频谱, 一旦频谱被解扩, 输出将成为连续波信号,它的载波频率也因此可以找到。 3.1 循环相关的捕获方法 捕获的目的就是检查输入信号和本地码的相关性,循环相关算法适用于软件接收机,由 于输入数据并非是连续的,因而这种算法十分适合数据块[2]。其主要思想是利用频域的乘法 特性代替时域的卷积运算,其结果只有 N 个点,其运算量远远小于 2N-1 个点计算量。 长度为 N 的输入序列 )(nx 的离散傅立叶变换为[3]: kX )( = 1 N ∑− n = 0 jenx )( − Nk 2 π / (1—1) 射频信号是复数,表示为 e π2 ,本地码信号由射频与 C/A 码乘积获得,捕获过程以 j tf i 1kHz 的步长搜索 fI ± 10kHz 的频率范围,总共有 21 个频率分量,本地码可表示为: l si = eC s j tf π2 i i=1,2,…,21 (1—2) 两个长度相同的输入序列 )(nx 和本地码 )(nlsi 的互相关运算为: nz )( = 1 N ∑− m = 0 mnlmx ( + ( ) si ) 互相关 )(nz 的 DFT 变换为: kZ )( = N 1 − N 1 − ∑∑ = 0 m = 0 n 1 − N emnlmx ( ) + ( ) si − j Nkn 2 π / = = km 2 π j emx ) ( ∑ m 0 = kLkX )( ∗ )( si / N N 1 − ∑ n = 0 emnl ) si + ( − j Nmnk 2 ( π /) + (1—3) (1—4) kZ )( = ∗ kLkX )( )( si = LkX )( ∗ k )( si (1—5) 本地码信号与输入信号进行相关,如果它包含正确的 C/A 码和正确的频率分量,当达 到正确的码相位时,输出将形成峰值[4]。频域相关后,通过反傅立叶变换就可以得到时域结 果。 3.2 捕获算法的步骤 (1)对一长度的输入电文 )(tx 进行 FFT 变换,转换为频域 (2)只取前一半数据量的 ; )(kX ,并生成复共轭 ∗)(kX )(kX ; - 2 -
中国科技论文在线 http://www.paper.edu.cn (3)产生 if =下变频中心频率 10± kHz 的 21 个频率分量,并与本地码相乘,获得多普 j tf π2 i = eC s l si )(kLsi ,也只取前一半数量的 ; )(kLsi ; 勒频移步进搜索本地相关信号,其生成公式为 )(nlsi 进行 FFT 频域变换,得到 ∗)(kX (4)对 (5)将 (6)对 )(kZ 进行反傅立叶变换,并求出其时域的绝对值,若最大值大于门限即为期望 )(kLsi 点对点相乘,结果为 )(kZ ; 与 值,第 i 个频率就是载波频率,第 n 位就是 C/A 码的起始点[5]。 4 仿真试验结果及分析 根据图 1 原理图,用 Matlab 仿真产生的第 21 号卫星的 C/A 码如下【6】。 21号卫星的C/A码 1 0.8 0.6 0.4 0.2 0 -0.2 0 20 40 60 80 100 120 140 160 180 图 2 第 21 号卫星产生的 C/A 码 在 Matlab 仿 真 环 境 下 , 采 用 16MHz 的 采 样 频 率 , 4.123968MHz 的 数 字 中 频 , 4.123968MHz 的信号的中心频率,取 1ms 的电文数据进行处理即 16000 个数据点,对 21 号 卫星的 C/A 码进行捕获,输入信号的频谱如图 3 所示,射频与 C/A 码相乘得到的本地码频 谱如图 4 所示,相关捕获得到的结果在图 5 中可找到 C/A 码的起始点为 8486,表明初始相 位偏离了原 C/A 码 8486 个采样间隔,即可以计算出初始相位。21 号卫星的展开信号的频率 分量如图 6 所示,最大值发生在 K=4 处,其频率为 4.117575625686117MHz。 - 3 -
中国科技论文在线 http://www.paper.edu.cn x 104 21卫星输入信号频谱 5 4.5 4 3.5 3 2.5 2 1.5 1 0.5 2000 4000 6000 8000 10000 12000 14000 16000 图 3 输入信号的频谱图 21号卫星本地匹配信号频谱 0 0 1200 1000 800 600 400 200 0 0 2000 4000 6000 8000 10000 12000 14000 16000 图 4 本地生成码频谱图 - 4 -
中国科技论文在线 http://www.paper.edu.cn x 104 4 GPS=21max at8486 3.5 3 2.5 2 1.5 1 0.5 0 0 x 104 4 3.5 3 2.5 2 1.5 1 0.5 0 0 2000 4000 6000 8000 10000 12000 14000 16000 图 5 相关捕获的结果 GPS=21Freq=4117575.6257 5 10 15 20 25 图 6 卫星 21 的各个频率分量 5 结束语 随着软件无线电技术的发展以及 DSP 和 FPGA 芯片运算速度的提高,软件 GPS 接收 机彻底摆脱传统硬件方法的进程正逐步加快,在软件接收机新的设计概念下,我们可以不断 进行算法改进的研究和试验。本文着重研究了 C/A 码的产生和循环相关捕获及其在 Matlab 环境下的实现,循环相关算法能够为软件 GPS 接收机提供快速捕获能力 ,同时不损失搜索 到信号的灵敏度.初步的研究表明 ,对于多数卫星信号 ,循环相关算法仅使用 1ms 数据即可 实现捕获 ,从而为软件 GPS 接收机 ,提供了一种适用而高效的捕获方法. - 5 -
中国科技论文在线 http://www.paper.edu.cn 参考文献 [1] 杨俊,武奇生.GPS 基本原理及其 Matlab 仿真[M] .西安:西安电子科技大学出版社,2006. [2] Tsui J B.Fundamentals of global positioning system receivers:a software approach[M] .NewYork: Wiley,2000. [3] 郑君里, 应启珩, 杨为理.信号与系统[M] .北京:高等教育出版社,2000. [4] Sophia Y Zheng.Signal Acquisition and Tracking for A Software GPS Receiver[D] .Blacksburg Virginia, 2005. [5] PeterRinder, NicolajBertelsen . Design of A SINGLE FREQUENCY GPS SOFTWARE RECEIVER[D] .Aalborg University ,2004. [6] 李南南, 吴清, 曹辉林.MATLAB 7 简明教程[M] .北京:清华大学出版社,2006. Simulation and Study on the Generation and Acquisition Algorithm of C/A Code in GPS System School of Information Engineering, Wuhan University of Technology, Wuhan, China (430070) He Xing Abstract The C/A code transmitted from the GPS Satellites is a bi-phase modulated pseudo random noise code ,we can use the C/A code to find the user location. In this paper,the generation principle and the circular correlation acquisition algorithm of C/A code are introduced.The generation of C/A code is implemented in the Matlab simulation environment,and simulation experiments is implemented to test the function of the acquisition algorithm , in which the initial phase and carrier frequency of C/A code is calculated successfully. The results prove the circular correlation acquisition algorithm is suitable for soft ware GPS receiver. Key words:GPS navigation; C/A code; circular correlation; acquisition algorithm; Matlab simulation - 6 -
分享到:
收藏