论文部分内容阅读
北斗卫星导航系统(Bei Dou Navigation System,BDS)是我国自主发展、独立运行的全球卫星导航系统,服务范围已覆盖亚太地区。截止到2016年6月,在轨工作的北斗卫星共有20颗。根据各方的检测表明,BDS的定位精度在水平、高程、测速方面分别达到了10m、15m、0.2 m/s。BDS在民用和军事上均有着重要作用,其相关产品已被运用在交通运输、电力系统等诸多领域,有着广泛的社会和经济效益。因此,进一步增强BDS的优势、提高BDS定位精度和稳定性具有重要的意义。在BDS定位导航中,存在多种误差因素影响着卫星观测量。测量随机误差是影响BDS定位精度的重要因素,需要通过相应的滤波算法进行消除。鉴于测量方程的非线性,导航研究中常采用的算法有扩展卡尔曼滤波(Extended Kalman Filter,EKF)和平淡卡尔曼滤波(Unscented Kalman Filter,UKF)。但EKF和UKF都存在着各自的不足。本文将平方根平淡卡尔曼滤波算法(Square-Root UKF,SRUKF)应用于BDS定位模型,在滤波器迭代递推过程中采用状态量协方差矩阵的平方根形式,使协方差矩阵保持正定,有效地减小舍入误差带来的影响,解决传统卡尔曼滤波器因为协方差矩阵失去正定性而导致发散的问题,比传统滤波器具有更大的优越性。考虑到应用SRUKF时需预先假设BDS定位模型中的噪声协方差,若假定的噪声协方差矩阵不能反映出真实的模型,将降低SRUKF定位估计的可靠性。为了更加准确地计算噪声协方差,本文将粒子群优化算法(Particle Swarm Optimization,PSO)加入到SRUKF算法中,提出一种基于粒子群算法和平方根平淡卡尔曼滤波的BDS定位估计算法(PSO_SRUKF),进一步改善SRUKF的滤波效果。实验结果表明,PSO_SRUKF算法有效地提高了BDS定位精度和稳定性,而且定位精度随粒子群体增大和迭代次数增大而提高,验证了该算法在北斗定位估计方面的有效性和优越性。随着BDS两个ICD文件(《北斗系统公开服务性能规范(1.0版)》和《北斗系统空间信号接口控制文件(2.0版)》)的相继公开,用户可以接收B1频段和B2频段的数据进行定位。本文在PSO_SRUKF算法的基础上,提出双频条件下的BDS定位模型,选择适当的融合方法,将两个频段进行融合定位。由于北斗卫星接收双频信号时存在不稳定性,在有些时刻有些卫星只能接收到单频段信号,这种不稳定性会造成定位结果出现误差。本研究针对这种情况,制定了相应的卫星筛选策略。通过实验验证可得,该融合方法能得到更高精度的定位结果。本研究可为北斗系统导航定位方法提供理论基础,为更好地应用于未来多频段融合定位提供技术参考。