贲 星,宋茂忠,熊 骏
(1. 南京航空航天大学 电子信息工程学院,江苏 南京 211106;2.南京航空航天大学 自动化学院,江苏 南京 211106)
由俄罗斯开发维护的全球轨道卫星导航系统格洛纳斯(Global Orbiting Navigation Satellite System, GLONASS)作为当前世界第二大卫星导航系统,打破了GPS的垄断,同时又可以增加可见星数量,以及与GPS联合定位提高定位精度,在全球卫星导航系统中占有重要地位,引起了各国科研人员的重视[1-2]。
GLONASS卫星导航模拟信号可用于GLONASS系统的仿真实验,为系统方案提供依据,也可以在偏远山区等气候地形条件恶劣、架设天线不便的复杂环境中模拟真实信号,降低天线的架设成本和维护费用。因此GLONASS信号模拟技术研究很有应用价值[3]。
本文实现了基于C++软件平台的中频信号软件仿真的设计方案,相比于国内已经提出的硬件模拟和采集回放模拟方案具有成本低的优点,同时可以实现用户任意位置、轨迹等设置,具有一定的动态性能。
GLONASS信号由伪随机码(也叫测距码)、导航电文和载波组成。
GLONASS有L1(民用)与 L2(军用)两个频段信号,本文以L1频段的信号为研究对象。不同于GPS系统,GLONASS系统采取频分多址技术,即多颗卫星使用相同的伪随机码,以不同的频率播发卫星信号。GLONASS伪随机码分为C/A码(民用)和p码(军用),由移位寄存器产生,信号通过高速率的伪随机码进行扩频调制,拓宽带宽,可靠性更高,抗干扰能力更强。GLONASS导航电文以串为最基本的结构单元。一个字符串由导航数据与明德码模二加得到,15串为一帧,5帧为一超帧,每个超帧2.5 min。一超帧包含完整的卫星信息。
GLONASS信号将导航电文和C/A码进行模二加,再通过二进制相移键控调制方式调制至L1频段的载波上,那么在t时刻第i颗GLONASS卫星信号表达式为[4]:
(1)
从卫星发射到被接收机接收的整个过程中存在传播误差的多颗卫星导航信号可以表示为:
(2)
式中,τi表示第i颗卫星信号的传播延时,Δf表示多普勒频移,n(t)表示噪声。如果τi过大,会导致系统误差大,定位精度低;如果Δf过大,会导致卫星信号载波环路失锁,无法捕获跟踪。由此可见,信号延时和多普勒频移影响信号的性能,是整个模拟源设计的重点。
卫星信号经过空间传播后,由于卫星与接收机之间时钟不同步引入的卫星钟差以及经过对流层和电离层时产生的误差,其伪码、载波与卫星发射时刻相比发生了延时,测量出的真实距离并非卫星到接收机的直线长度。将实际测量出的距离称为伪距[5]。
伪距ρ(t)定义为用户接收时间tu(t)与信号发射时间tT之差与光速c的乘积,即:
ρ(t)=c(tu(t)-tT(t-τ))
(3)
其中,t由接收机获得,tT由接收机对信号中C/A码的码相位的解算中获得。
当接收机在t时刻接收到第i颗GLONASS卫星在tT时刻发送的卫星信号时,其信号传播时延表示为:
(4)
式中,ΔtT表示卫星钟差,Δtr表示运动相对论效应产生的误差,Δτion表示电离层误差,Δτtrop表示对流层折射误差,Δτch表示硬件通道内的延迟。转换上式可得到以卫星发射时刻为参考的模拟信号发射时刻,即:
(5)
式中,R表示为卫星与接收机之间的距离,由卫星和接收机的位置坐标计算可得。
由式(5)可知,发射时刻tT与几何距离R之间存在线性关系,所以可以通过对tT不断地收敛迭代获得一定精度的发射时刻。
(6)
当|Ri-Ri-1|<ξ时,即可完成迭代,获得符合精度要求的模拟源信号发射时刻,生成精确伪距。
在卫星的传播过程中,卫星与接收机之间存在相对运动,产生多普勒频移fd,这就使得接收端接收到的频率fr偏离了原始发送的频率f。
在模拟信号的设计中,为了精确地模拟多普勒频移的非线性变化,可以模拟传播时延的三阶变化率,计算出每个时间点的精确时延,最终通过载波传播时延实现时变的多普勒频移,信号生成中的载波模拟即可表示为:
carrieri(t)=cos(2×π×(fi×t-fL1×tc)
(7)
其中,t为以采样时间为间隔的采样序列,fi为第i颗卫星的中频频率,fL1为L1频段的射频频率,tc是含有传播时延的载波传播时间。
将ρ(t)用麦克劳林展开式展开,设ρ(t)在t=0处n阶连续可导,则:
(8)
其中ρ0为初始伪距,ρ′,ρ″,ρ‴,…,ρ(n)为伪距的各阶导数,分别代表伪距的各阶变化率,Rn(t)代表tn的高阶无穷小。
由于用户位置设置为静止状态,采用三阶多项式来描述伪距,即式中低阶项,将卫星与用户接收机之间的相对运动描述为下式:
(9)
设t1=0,则t2=Δt,t3=2Δt,t4=3Δt,步长Δt越小精度越高,一般Δt取1 s就可以保证参数的平稳变化。
对式(9)进行转换并用矩阵表示可以得到:
(10)
其中,ρ0、υ、a、a′分别为t1时刻的伪距、相对运动速度、加速度以及加加速度;ρ1、ρ2、ρ3、ρ4为相邻时刻的伪距。
伪距值对应相应的时延,经2.1节计算出信号精确的发射时刻后,由上式拟合可以计算任何时刻的时延,将时延代入式(7)即可模拟多普勒频移[6-7]。
GLONASS系统与GPS系统还有一个区别就是,GPS由导航电文中给出卫星运行轨道的开普勒参数来计算位置,而GLONASS的卫星位置是由星历给出,卫星在PZ-90坐标系中的坐标、速度以及日月摄动加速度,通过受力模型积分而来。
(11)
四阶龙格-库塔法的计算方法为:
(12)
(13)
式中,h为积分步长;k1,k2,k3,k4为方程的中间变量;vi,vi+1为每次积分前后的结果。
积分步长和积分时长在很大程度上影响了龙格-库塔算法的计算精度,因此,需要综合考量积分步长和积分长度来选择合适的参数进行轨道积分。卫星信号模拟源的设计允许一定的误差,并不要求积分出的卫星位置和实际位置完全相同,只要保证各卫星的相对位置符合卫星星座设计要求即可[8-10]。本设计中采用步长为1 s、积分时长为30 min。
本设计中将GLONASS信号的参数设置如下:
(1)载波中频4.5 MHz,采样率20 MHz;
(2)用户位置为东经118.79°,北纬31.94°;
(3)用户时间为2017年7月20日,此时可见星有1,5,6,7,10,11,13,14号,即-7,-3,-2,-1,2,3,5,6八个频道的卫星;
(4)模拟时长为180 s。
中频信号生成步骤主要包括C/A码、导航电文生成,卫星位置计算,传播时延计算,中频信号合成。
首先输入生成信号所需参数;第二步通过移位寄存器生成C/A码序列;第三步由OEMStar 接收机采集导航数据,提取导航数据中的有用信息,根据相应格式进行编码成帧,生成导航电文; 第四步计算卫星位置、传播时延、模拟多普勒频移,最后将导航电文、C /A 码按照时序调制到对应载波上,合成多颗卫星的中频信号,将其进行 8 bit 量化后写入DAT格式的信号文件。
用MATLAB对生成的信号文件进行功率谱分析,如图1所示,可以看到信号中包含的可见星在GLONASS的L1频段的分布情况。
图1 GLONASS信号功率谱
GLONASS软件接收机操作方便,调试简单,是验证GLOASS信号可靠性的重要工具。本文中使用的GLONASS软件接收机是基于俄罗斯在Scilab平台上研发的开源接收机SoftGNSS改写的,分析数据方便,灵活度高。
软件接收机处理导航信号是对信号的逆结算过程,主要分为信号捕获跟踪、导航电文解算、伪距计算、卫星位置计算与定位5步。首先,软件接收机对输入的中频信号基于快速傅里叶变换快速相关进行粗略捕获,获得可见卫星频道,然后精确捕获出载波频率和码相位偏移;根据精捕的结果对信号进行跟踪;对每个可见星通道数据进行位同步,码剥离,帧同步,提取出导航电文;最后根据导航电文解算导航数据,计算伪距,根据导航电文中的卫星位置积分推算出可见星的实时位置,最终用最小二乘法解算出用户坐标。
MATLAB平台上的软件接收机可以通过修改参数设置适应不同的射频前端,灵活性强,升级简单,算法改动方便,具有很强的适应性和通用性[11]。
将生成的模拟信号输入软件接收机进行分析,可以得到图2~图4的捕获结果、定位结果和卫星星座图。
图2 软件接收机捕获结果
图3 卫星定位图
图4 卫星星座图
由图2可以看到捕获到的卫星号、频率、多普勒偏移、码偏移。根据图1、图2可以看到模拟信号的可见卫星与软件接收机捕获跟踪到的卫星是一致的,软件接收机解调校验出正确格式的导航电文,由导航电文解算出了星历和历书参数,进行位置解算,实现定位,且定位坐标与初始设定坐标基本一致。
本文设计的GLONASS卫星导航软件模拟产生的GLONASS中频信号可以实现正确捕获跟踪、电文解算与用户定位,并且开发了基于MATLAB平台的软件接收机进行了验证。该设计信号生成方式灵活,成本低,精度较高,可以模拟真实信号,为导航信号接收机提供便捷的测试环境,有一定的应用价值。
[1] 侯博, 谢杰, 范志良,等. 多模卫星信号模拟器设计与实现[J]. 计算机测量与控制, 2012, 20(1): 170-172.
[2] 刘芬, 张晓培. GLONASS中频信号软件模拟器设计[J]. 福建电脑, 2012, 28(12): 122-124.
[3] 林静然, 高鹏, 周渭民,等. 多通道GPS模拟信号源[J]. 数据采集与处理, 2012, 27(6): 677-683.
[4] 工业信息化部.SJ/T11418-2010 GLONASS ICD[S].北京:中国电子技术标准化研究所,2011.
[5] Hu Yan, Li Hong, Lu Mingquan, et al. Design and implementation of a high fidelity GLONASS signal simulator[C]. IEEE 2012 Spring Congress on Engineering and Technology, Xi′an, 2012: 1-4.
[6] 张威,张更新,尹冉冉,等.基于卫星星历的多普勒频移研究[J]. 军事通信技术, 2011, 32(3): 45-49.
[7] 宋媛媛, 曾大治, 曾涛.基于三阶DDS的卫星信号多普勒模拟方法[J]. 北京理工大学学报,2010, 30(10): 1213-1216.
[8] Zhang Bo, Liu Guangbin, Jiao Wei, et al. High-order DDFS applied in simulated high-dynamic GNSS signal synthesis[C]. International Conference on Electronic Measurement & Instruments. IEEE, 2009: 4102-4106.
[9] 柯福阳, 王庆, 潘树国. 自动积分步长的GLONASS卫星轨道龙格库塔积分法[J]. 东南大学学报(自然科学版), 2010, 40(4): 755-759.
[10] 谢钢.全球导航卫星系统原理-GPS、格格纳斯和伽利略系统[M].北京:电子工业出版社, 2013.
[11] 祖秉法. “北斗二号”民用软件接收机关键技术研究[D]. 哈尔滨:哈尔滨工程大学, 2010.