Advertisement

GPS从入门到放弃(八) --- GPS卫星速度解算

阅读量:

GPS从入门到放弃(八) — GPS卫星速度解算

请在观看这一篇文章之前访问GPS卫星位置解算

为了计算卫星速度,需要对卫星的位置求导。

计算各参量的时间导数如下:
\dot{M}_k = n
\dot{E}_k = \frac{\dot{M}_k}{1 - e\cos E_k}
\dot{\nu}_k = \frac{\sqrt{1 - e^2}\,\dot{E}_k}{1 - e\cos E_k}
\dot{\Phi}_k = \dot{\nu}_k
\delta\,\dot{u}_k = 2\,\dot{\Phi}_k (C_{us}\cos 2\Phi_k - C_{uc}\sin 2\Phi_k)
\delta\,\dot{r}_k = 2\,\dot{\Phi}_k (C_{rs}\cos 2\Phi_k - C_{rc}\sin 2\Phi_k)
\delta\,\dot{i}_k = 2\,\dot{\Phi}_k (C_{is}\cos 2\Phi_k - C_{ic}\sin 2\Phi_k)
\dot{\Omega}_k = \dot{\Omega} - \dot{\Omega}_{e}
\dot{i}_{k} = \,\cdot i + \delta\,\cdot i_{_K}
\,\cdot r_{_K} = A e \cdot E_k \sin E_k + \delta r_{_K}
\cdot u_{_K} = \cdot \phi_K + \delta u_{_K}

卫星在轨道平面内的速度与WGS-84坐标系中的速度具体阐述如下:

在之前的解算位置阶段中,我们已经通过上述计算过程和相关公式推导获得了大量中间变量数据。基于这些计算结果和数学模型理论分析的基础上,可以得到卫星运行的速度参数信息。

复制代码
    M_k_Dot = n
    E_k_Dot = M_k_Dot/(1-e*math.cos(E_k))
    nu_k_Dot = math.sqrt(1-e**2)*E_k_Dot/(1-e*math.cos(E_k))
    Phi_k_Dot = nu_k_Dot
    delta_u_k_Dot = 2*Phi_k_Dot*(Cus*math.cos(2*Phi_k) - Cuc*math.sin(2*Phi_k))
    delta_r_k_Dot = 2*Phi_k_Dot*(Crs*math.cos(2*Phi_k) - Crc*math.sin(2*Phi_k))
    delta_i_k_Dot = 2*Phi_k_Dot*(Cis*math.cos(2*Phi_k) - Cic*math.sin(2*Phi_k))
    Omega_k_Dot = Omega_Dot - Omega_e_Dot
    i_k_Dot = i_Dot + delta_i_k_Dot
    r_k_Dot = A*e*E_k_Dot*math.sin(E_k) + delta_r_k_Dot
    u_k_Dot = Phi_k_Dot + delta_u_k_Dot
    
    
    x_p_k_Dot = r_k_Dot*math.cos(u_k) - r_k*u_k_Dot*math.sin(u_k)
    y_p_k_Dot = r_k_Dot*math.sin(u_k) + r_k*u_k_Dot*math.cos(u_k)
    
    x_k_Dot = -y_k*Omega_k_Dot - (y_p_k_Dot*math.cos(i_k) - z_k*i_k_Dot)*math.sin(Omega_k) + x_p_k_Dot*math.cos(Omega_k)
    y_k_Dot = x_k*Omega_k_Dot + (y_p_k_Dot*math.cos(i_k) - z_k*i_k_Dot)*math.cos(Omega_k) + x_p_k_Dot*math.sin(Omega_k)
    z_k_Dot = y_p_k_Dot*math.sin(i_k) + y_p_k*i_k_Dot*math.cos(i_k)
    
    print("x_k_Dot={}".format(x_k_Dot))
    print("y_k_Dot={}".format(y_k_Dot))
    print("z_k_Dot={}".format(z_k_Dot))

基于该方法的数据进行解算后可得该卫星在WGS-84坐标系下的速度矢量为

全部评论 (0)

还没有任何评论哟~