APP下载

利用模拟源伪卫星的隧道内虚拟中继定位算法

2022-12-01宋茂忠

计算机测量与控制 2022年11期
关键词:伪距接收机偏差

严 峰,宋茂忠

(南京航空航天大学 电子信息工程学院,南京 211106)

0 引言

随着全球卫星组网的建立和完善,室外的定位需求基本满足,人们进一步对室内、隧道这些卫星导航信号无法传播到的地方实现定位导航的需求日愈强烈,特别是近年来,我国城市地铁、公路隧道发展迅速,这些地下工程是城市交通的重要组成部分,给人们带来便利的同时带来了较大安全隐患。由于地下工程的地形复杂,施工和使用时具有风险,一旦发生灾害、交通事故,如不能及时展开合理、高效的救援,对于施工人员或者隧道内行驶车辆危害极大。因此,对于地铁隧道,精准的人员与设备定位管理系统能够为岗位的调度和日常安全管理带来保障;同时,隧道定位对隧道内行驶车辆的安全运营至关重要。

目前可用于隧道空间的定位技术有:WIFI定位[1]、蓝牙定位[2]、超宽带定位[3]、ZigBee定位[4]、射频识别定位[5]、可见光定位[6]等,它们都要指纹和数据库辅助。卫星导航定位虽然在隧道外定位十分普及,但隧道内无法定位,解决隧道内卫星导航定位问题,目前仍很困难。文献[7]专利公开了一种基于全球卫星定位导航系统的隧道定位方法,利用雷达测距,并驱动模拟器产生接收机处的卫星导航信号,模拟器信号覆盖区域位置一致;文献[8]中的基于伪卫星的隧道内定位方法将隧道划分为不同的定位小区,调整不同小区伪卫星信号上载波的多普勒频率,使每个定位小区形成不同的信号指纹,接收机根据信号指纹判断所处位置,但用户接收机在每个小区内定位坐标不变。

目前大部分伪卫星都只发射不包含伪距和多普勒变化的静态伪码和载波信号,一般接收机只能接收相对载波相位观测值,不能伪距定位。

本文采用模拟源伪卫星,动态模拟天线发射点到卫星的电波传播特性,接收机能直接伪距定位,并在发射端对虚拟星座设计和接收端定位算法做出改进,利用虚拟轨道伪卫星布局可控并能维持更长时间的特点,避免了短时间内星座布局形变较大导致定位偏差上升的缺陷;同时,接收端设计的虚拟中继定位算法更符合隧道地形下的定位模型,接收机定位精度更高。

1 模拟源伪卫星隧道内定位原理

实现的隧道定位系统如图1所示,整个系统由上位机、卫星导航信号模拟源、同轴泄露电缆、接收机四部分组成。上位机生成与隧道几何构型匹配的四颗卫星导航电文,将其传输给卫星导航信号模拟源中的数字信号处理器(DSP,digital signal processing),DSP的主要工作是通过串口接收上位机发送的卫星导航电文,从中获取星历以及历书等参数,结合隧道场景下设定的初始参数、场景文件计算出模拟伪卫星到达隧道口泄漏电缆激励处所需的信号时延、多普勒频偏等参数,与现场可编程阵列(FPGA,field programmable gate array)高速通信。FPGA则接收DSP传输的各项参数和导航电文调制生成四颗卫星的中频信号,将四颗卫星中频信号两两叠加,通过两个通道发出。两个通道的卫星信号都需要经过射频调制模块进行上变频,最终输出GPS的L1频段的卫星信号,分别激励隧道内同轴泄漏电缆两端,向隧道内辐射,由接收机接收卫星信号定位。

接收机在隧道中接收泄漏电缆辐射出的信号,解算出卫星信号中的星历参数及其伪距信息等解算定位。此时,其解析出的伪距信息大致可以分为两部分,一部分是卫星导航信号模拟源中模拟的伪卫星到达发射端口的伪距SiPj,这段距离是通过DSP调整信号时延实现的,一部分则是射频信号在漏缆中传输的距离PjU。信号的传播路径可以视为SiPj+PjU,而接收机期望观测的是卫星与接收机之间的距离为SiU。显然,从信号中测得伪距总会大于期望观测的卫星与接收机之间的距离,这是由于卫星与泄漏电缆不在一条直线上引起的,本文称其为折线误差。

图1 隧道定位系统

折线误差和图1中所示∠αn的大小成负相关,∠αn越大,折线误差越小。对于隧道这种狭长的室内情形,要使折线误差尽可能小,就要设计出如图1所示的卫星布局,4颗卫星分布于隧道两侧,且其仰角尽可能低,使∠αn尽可能大。但在实际观测范围内,低仰角的卫星太少,无法挑出四颗符合隧道方向,且都是低仰角卫星形成星座布局。

另外,全球导航卫星系统(GNSS,global navigation satellite system)中用于定位的基本是中轨道地球卫星(MEO,medium earth orbit),通过多颗卫星组网能实现全球卫星定位信号的覆盖。由于中轨道卫星的角速度较快,所以同一组卫星在一定区域内的可见时间很短,无法长时间保持一个特定的卫星星座布局。如果对隧道内中继转发真实GNSS信号,一段时间之后便会因为其中某颗卫星在当前区域不可见而无法定位。而如果根据特定的卫星布局不断更新中继转发的卫星信号,一是中继转发需要浪费时间挑选卫星,此过程中该卫星不一定还处于卫星布局需要的位置,其次接收机需要不停捕获新的卫星,增加了用户的定位难度。

2 虚拟卫星轨道参数设计

由于全球四大卫星定位系统在经过长距离的传输到达地面的强度仅为-160 dBW左右,又被隧道外壁阻挡,所以隧道内来自外面的卫星信号强度几乎可以忽略,此时模拟源伪卫星发出的卫星信号可以不受外部真实导航卫星信号的影响,所以可以设计出符合隧道地形下的卫星布局,使用户接收机完全接收模拟源伪卫星信号进行定位。

为构造出与隧道方向匹配的卫星定位布局,且使星座布局维持更长时间,本文在信号发射端做出改进,模拟出一组虚拟轨道卫星作为卫星信号播发,虚拟轨道卫星有滞留时间长,仰角和方位角可控的优点。

MEO卫星轨道略低,对地运行的角速度快,能保持匹配星座的时间短,本文选取倾斜轨道同步卫星(IGSO,inclined geo synchronous orbit),该类卫星属于高轨道卫星,对地运行的角速度不快,若同时模拟出合适位置的四颗及以上该类卫星,能维持一个更长时间的卫星星座。

若立足于赤道(0°N,118°47′30″E)处,倾斜同步轨道卫星在一天中任意时间都可以被观测到,卫星的星下点轨迹可由以下公式得到:

λ=Ωk+arctan(cosik·tanuk)-ωet

(1)

φ=arcsin(sinik·sinuk)

(2)

式中,λ为经度,φ为纬度,ik为轨道倾角,uk为升交距角,ωe为地球自转速度,t为观测时刻。

其轨迹如图2(a)所示,呈8字型,可以观察到8字型轨迹的上下两端运行点更密集,这说明这颗卫星在运行到天空图上下两端位置时变化不大,即在此段时间内,在地球该点观察到的卫星于此处滞留时间较长。若能调整8字型,使其轨迹密集点处在定位系统卫星所需的位置,即可解决定位系统的其中一个难点,使卫星布局维持更长时间。

其实现方式需要对导航电文做出修改,导航电文中影响模拟出的卫星轨道的参数主要有轨道倾角i0、偏心率e以及升交点经度Ω0。

经Matlab仿真可知,i0可以影响8字型的大小,e可以影响其轨迹的偏向,而Ω0会改变星下点轨迹的东西走向,所以调整以上3个参数,即可实现卫星轨道的调整,将卫星运行轨迹的密集点处调整到定位系统所需位置。如图2(b)所示,将i0改为40°,e改为0.04,Ω0基础上减去0.08,就将轨道整体向西扭曲,且其密集点8-9-10-11也已经搬移到西北方向。

实现了卫星轨道的调整,还需要挑选轨迹中合适的模拟时刻,图中密集点起始的8时刻。因为导航需要四颗卫星,所以需要调整4个不同位置的卫星轨迹,最后将四颗卫星统一到同一个星历参考时刻TOE。

图2 虚拟卫星轨道设计

而接收机解算卫星位置时,卫星运行轨迹是恒定的,其对应星历参考时刻toe的卫星位置即一定的,所以计算当前卫星位置的大部分参数就需要归化时间tk,即为信号发射时刻和导航电文中toe的差值,有了相对于toe的偏差,再结合toe的卫星位置即可以解算当前卫星位置。但是解算升交点赤经时,需要的不仅仅是归化时间tk还有原始轨迹时的星历参考时刻toe。但是本系统导航电文中对应的星历参考时刻变成了TOE,和toe存在一定差异,这会导致计算出的升交点赤经发生偏差,所以要对这偏差做如下修正:

(3)

(4)

虚拟轨道卫星的导航电文制作流程如下:

图3 虚拟轨道卫星导航电文生成

本文设计的虚拟轨道卫星星座布局如图4(a)所示,两端各模拟出两颗卫星,符合隧道这种狭长的地形。为验证本系统设计的虚拟卫星布局相对于真实卫星能维持更长时间,选取了一组真实卫星的星历数据,与设计的虚拟轨道卫星进行对比仿真,观察随时间推移,星座布局变化程度。观察图4可以发现,经过1 840秒后,虚拟轨道卫星的星座布局由(a)~(b),其构型几乎不变,而真实卫星的布局由(c)~(d),形变严重,甚至已经不能构成隧道两端各两颗卫星的构型。验证了虚拟轨道卫星星座布局能维持更长时间。

图4 星座布局

3 考虑到折线误差的定位算法

对于定位系统中的折线误差,本文提出了一种虚拟中继定位算法用于接收端的定位解算。此算法在接收机接收到伪距信息后,解算出模拟源伪卫星位置,结合已知的隧道两端坐标,可以利用其向量求得向量夹角∠αn。进而在三角形SiPjU中由余弦定理求得模拟出的卫星和接收机之间的距离SiU,以此修正伪距。

考虑到信号在泄露电缆中的传输速度v相对于信号在空气中的传播速度c会有差异,而伪距是由信号传输时间推算的距离信息,所以这份差异会对伪距造成影响[10]。因此在式(10)中,增加了(c/v-1)因子,以补偿速度差异造成的伪距测量误差。

虚拟中继定位算法原理如下:根据伪距位置理论,伪距基础观测方程表示为:

ρ(n)=r(n)+δtu-δt(n)+I(n)+T(n)+ερ(n)

(5)

式中,r(n)是卫星n到接收机的几何距离;δtu为接收机钟差对应的空间距离;δt(n)为卫星n钟差对应的空间距离;I(n)为电离层造成的信号传输时延;T(n)为对流层造成的信号传输时延;ερ(n)为伪距观测误差;

如果不考虑未知的伪距测量误差量ερ(n),校正卫星钟差、电离层、对流层时延后的伪距观测方程式:

r(n)+δtu=ρc(n),1≤n≤4

(6)

式中,ρc(n)为接收机接收到的伪距信息。

因此,需要引入空间夹角∠αn,求得r(n):

(7)

此时,卫星与接收机之间直线距离r(n)与信号传输距离d(n)以及接收机接收的伪距信息关系满足:

(8)

将式(8)写成对应式(6)的变式为:

(9)

式中,X(n)=[x(n),y(n),z(n)]Γ为卫星n的位置坐标向量;X=[x,y,z]Γ为接收机的位置坐标向量;

等式右边即为在伪距中对于折线误差的修正,但是式(9)中存在5个未知量,为接收机的位置坐标向量(x,y,z)、δtu,以及用户接收机距离隧道口的距离P1U。

而伪距针对泄漏电缆传输信号造成的误差进行如下修正:

(10)

最后得到本方案中接收端解算用户位置的方程组:

(11)

将式(11)线性化后的矩阵形式为:

(12)

GuXu=AuS+LX(P1)-P

(13)

其最小二乘法解为:

(14)

式(17)是GPS伪距定位的方程,以此可解算出用户的三维坐标和用户钟差对应的空间距离。其解算过程需要若干次的迭代解算,直至第n+1次解算的Xu和第n次解算的Xu之间的差值达到一个额定值,以此作为解算结果。

4 系统测试验证

本方案选用建筑物走廊模拟隧道环境,建筑物走廊无法接收到外部卫星信号,且与隧道一样都属于狭长的地形。卫星导航信号模拟源的两个射频输出模块分别位于走廊两端,相距100米,模拟器P1的设定坐标为(31°56′22.0524″N,118°47′30″E),P2为(31°56′22.0524″N,118°47′33.774″E)。两个射频模块用同轴泄露电缆连接。先后播发两组卫星导航信号,一组为设计的虚拟轨道伪卫星的信号,一组为真实卫星的信号,进行接收对比实验。

为验证本方案的可行性,将从单点定位和行走轨迹两方面进行实验。分别分析两种状态下的定位精度,以评估本方案的可行性。

对于单点定位,将随机选取隧道内的一个定点,在实验开始时需要提前测量该定点与隧道口的距离以便分析最终解算结果的定位偏差以及精度时有衡量标准。采用UTREAK210接收机在定点处先后接收两组信号并解析输出中频信号,将其导入SDR210软件解析得到星历、历书、原始观测量等,然后在MATLAB中进行定位解算,将用户接收机的定位结果与该定点位置对比,分析其定位性能。

当接收机位于距离隧道口68 m处,在此处采集两组信号的数据,将其导入MATLAB中分别进行三次定位解算:其一为模拟源播发真实卫星的星历数据及其伪距信息,在MATLAB中采用标准全球导航卫星系统解算过程进行解算定位;其二为模拟源播发虚拟轨道伪卫星的星历数据及其伪距信息,同样采用标准全球导航定位系统解算过程进行定位解算;其三为模拟源播发虚拟轨道伪卫星的星历参数及其伪距信息,但在MATLAB中做定位解算时,将标准的全球卫星导航系统解算过程换为改进后的虚拟中继定位算法。因为隧道这种狭长的地带在地图中往往可以视为一维的线段,接收机与隧道口的距离更能衡量用户的位置,所以本文将解算出的定位结果转化为定位点与隧道口的几何距离,将其与68 m这一距离比较,衡量其定位偏差。三次定位结果与实际距离的偏差如图5所示。

图5 68m处定位偏差

由图5可知,用户接收机开始接收到两种卫星导航信号时,真实卫星和虚拟轨道伪卫星的星座构型基本相似,但观察其定位结果,当接收真实卫星信号进行定位时,其定位偏差在0~18 m范围内,波动较大,且随着时间的推移,真实卫星的星座布局产生一定程度的形变,使定位偏差持续增加,有一个变大的趋势;当采用虚拟轨道伪卫星信号进行定位时,其定位结果比较稳定,定位偏差维持在7~11 m,起伏不大,且随着时间推移,模拟源伪卫星的星座布局形变不大,定位偏差仍维持在一个平稳的状态;当采用虚拟中继算法处理接收到的虚拟轨道伪卫星的数据后,可明显发现定位精度大大提高,偏差基本可以维持在1 m以下,且偏差的起伏波动更小,定位结果更稳定。

后又对三组定位结果进行定量分析,如表1所示。

表1 定位测试点定位误差统计数据

统计表1中的定位误差数据,可以看到:

1)对于采用真实卫星导航信号并用标准全球导航卫星系统解算过程解算的定位结果,代表定位偏差的误差平均值较大,且表示定位结果集中程度的误差标准差同样较大,说明其定位精度较差;而对于采用虚拟轨道伪卫星导航信号并用标准全球导航卫星系统解算过程解算的定位结果,其误差均值为9.35 m,偏差仍然较大,而误差标准差为0.913,说明其定位结果集中,精度有所提升;最后将虚拟轨道伪卫星的数据用虚拟中继定位算法解算,误差均值降为0.526 m,定位偏差大大减小,且其误差标准差为0.33,表明定位性能进一步得到改善。

2)对于代表定位结果集中程度和精度的误差标准差而言,同样采用标准全球导航卫星系统解算流程进行定位解算,虚拟轨道伪卫星相对于真实卫星的定位结果误差标准差降低了81%,表明本方案中设计的虚拟轨道伪卫星布局及其长时间维持的特性对定位结果的精度和集中程度有很大的提升。而对于同样采用虚拟轨道伪卫星导航信号,虚拟中继定位算法处理过的定位结果又相对于标准全球导航卫星系统解算过程的定位结果,在标准差上降低了64%,提高了定位结果置信度。

3)在代表定位偏差的误差均值方面,采用标准全球卫星系统解算流程处理虚拟轨道伪卫星的数据和处理真实卫星的数据得到的两次定位结果对比,其误差均值降低了1.6%,偏差减小不显著。而对比采用不同算法处理虚拟轨道伪卫星的数据得到的两次定位结果,虚拟中继定位算法在这方面处理的可以更好,其误差均值降低了94%,定位偏差明显减小。

对于动态运行轨迹的实验流程:卫星导航信号模拟源播发虚拟轨道伪卫星信号,测试人员携带UTREAK210接收机从距离隧道口20 m处走向隧道末端,并在采集到结果后于MATLAB中采用虚拟中继定位算法进行解算,观察定位结果的轨迹点是否符合实际行走轨迹,并分析其定位结果随时间推移距离隧道口的距离是否符合随时间变化,测试人员实际行进的距离。其定位轨迹如图6所示。

图6 隧道内动态轨迹

图7 定位结果距隧道口距离

如图6所示,解算出来的定位点轨迹符合从20 m向隧道末端的行进路线,与预设场景一致。本文将隧道视为一维的线段,并将行进轨迹点的二维坐标转换为定位点距离隧道口的距离这一一维标量,衡量测试人员于隧道中行进轨迹的变化,其轨迹变化如图7(a),轨迹偏差如图7(b)所示。

如图7(a),理论上,该轨迹的定位结果应由20 m处匀速上升,是线性的过程,但是接收人员的移速不能保证是绝对匀速的,且有误差存在,所以结果有所偏离,但是轨迹整体走势是沿着理论上的轨迹变化线性攀升的。运动轨迹的实际结果与理论距离的偏差如图7(b)所示,最大偏差不超过2.5 m,且定量分析后,发现其误差均值为0.735 m,定位精度也能达到1 m以下。

5 结束语

本文提出了一种隧道内虚拟轨道伪卫星的用户定位方法。该方法相对于直接中继隧道外部真实导航卫星信号实现定位的方法,能更稳定更持久的实现定位,且本文基于隧道场景下在接收端设计了新的定位解算过程,可以进一步提高定位精度。本文利用硬件系统在真实环境下对理论部分分别进行了单点定位和动态轨迹定位的测试。在单点定位方面,本方案最终定位效果对比中继真实卫星信号,定位结果的集中程度,稳定性更好,定位精度提升94%;在动态轨迹定位方面,其定位精度也达到了1 m以下,验证了本方案的可行性。

猜你喜欢

伪距接收机偏差
BDS-3载波相位平滑伪距单点定位性能分析
功率放大器技术结构及在雷达接收机中的应用
50种认知性偏差
GNSS接收机FLASHADC中比较器的设计
BDS 三频数据周跳探测与修复方法研究
BDS-2三频伪距单点定位精度分析
星间频间伪距定位模型的精度分析及程序实现*
如何走出文章立意偏差的误区
一种宽带低功耗四合一接收机设计
一种面向ADS-B的RNSS/RDSS双模接收机设计