GPS 定位技术与应用实验
——GPS 用户位置求解 Matlab 仿真
一、定位原理
GPS 用户对卫星 j 进行伪距测量,产生观测方程:
222
()()()
jjujujuu
xyyzzc
(1)
其中(x
j
, y
j
, z
j
)表示第 j 颗卫星的位置坐标;(x
u
, y
u
, z
u
)是用户的位置坐标,
u
是用户接收机
钟与 GPS 系统时钟的相对误差。设一共观测到 N 颗卫星,则得到方程组:
222
11 1 1
222
22 2 2
222
()()()
()()()
()()()
uuuu
uuuu
NNuNuNuu
xx yy zz c
xyyzzc
xyyzzc
(2)
定位的目的就是计算(x
u
, y
u
, z
u
)和
u
。
直接求解上述非线性方程组十分困难。可以采用牛顿迭代法这种常用的数值计算方
法,其中的关键思想是线性化及最小二乘法。具体过程如下:
对用户位置进行估计,得到估计位置坐标(x
0
, y
0
, z
0
),用(x, y, z)表示估计位置与
真实位置的偏移量,即
0
0
0
u
u
u
xx
yy
zz z
(3)
设
222
(, ,) ( ) ( ) ( )
uuu j u j u j u
xyz x x y y z z,并把它在(x
0
, y
0
, z
0
)做一阶泰勒级数展
开得:
000 000 000
000
000
000
000
000 000 000
(, ,)
(,,) (,,) (,,)
(,,)
(,,)
(,,) (,,) (, ,)
uuu
jjj
fx y z
fxyz fxyz fxyz
xyz x y z
xyz
xx yy zz
xyz x y z
fx y z fx y z fx y z
(4)
因此,把对卫星 j 的观测方程线性化后得到:
000
000
000 000 000
(,,)
(, ,) (,,) (, ,)
jjj
j u
xx yy zz
xyz x y zc
fxyz fxyz fxyz
(5)