本发明公开了一种基于两步卡尔曼滤波的非视距水下航行器定位方法,该方法首先利用第一步卡尔曼滤波对测量值进行状态预测并利用卡尔曼滤波新息去识别当前测量值是否受到非视距(NLOS)误差干扰,如测量值不受NLOS误差干扰则继续第一步卡尔曼滤波得到状态估计;对于受到NLOS误差干扰的测量值,利用第一步卡尔曼滤波的预测结果对NLOS误差进行估计,然后对NLOS误差估计值进行第二步卡尔曼滤波并将滤波结果带入第一步卡尔曼滤波更新步进行状态估计;最后使用CHAN氏算法进行位置求解;本发明不需要NLOS误差的先验统计知识即可对连续NLOS误差进行实时消除,能够明显提高水下环境中水下航行器的定位精度。