1. 课程导入

当无人机飞入城市峡谷、室内厂房、隧道、密林或强电磁干扰区域时,卫星导航信号会因遮挡、多径、欺骗或压制而失效,这就是GNSS拒止(GNSS-denied)环境。此时,仅依赖卫星定位的飞控会迅速失去位置、速度与航向基准,轻则悬停漂移,重则失控坠机。本课程的目标,是建立一套从感知、估计、规划到控制的完整工程方法,使无人机在卫星不可用时仍能安全、连续、可解释地完成自主导航任务。

学习目标与能力地图

完成本课程后,学习者应能独立完成以下工程任务:

  • 识别GNSS拒止的典型成因与失效模式,判断系统是否进入拒止状态;
  • 搭建多传感器融合架构,将IMU、视觉、激光雷达、气压计、磁力计与轮式里程计统一到同一状态估计框架;
  • 实现视觉惯性里程计(VIO)、激光惯性里程计(LIO)与SLAM后端优化;
  • 在无全局定位条件下完成局部地图构建、路径规划与轨迹跟踪;
  • 设计降级策略、失效检测与安全返航逻辑,并完成仿真与实机验证。

核心概念:从“定位”到“状态估计”

GNSS拒止导航的本质,不是简单“换一个传感器”,而是把问题从绝对定位转为相对状态估计。GNSS提供的是全局绝对位置,而拒止环境下系统只能依靠自身运动约束与环境观测,递推估计位姿、速度和零偏。核心概念包括:

  • 惯性递推:IMU以高频输出角速度与加速度,短时精度高,但积分会漂移;
  • 视觉/激光观测:通过特征点、点云配准提供相对约束,抑制漂移;
  • 因子图优化:将IMU预积分、视觉重投影、回环检测统一为最小二乘问题;
  • 坐标系与时间同步:机体、相机、雷达、世界坐标系之间的外参与时间戳对齐,是工程成败的关键;
  • 可观测性:在匀速直线、纯旋转等退化运动下,尺度与航向可能不可观,需要外部约束或运动激励。

工程判断准则:当GNSS卫星数低于阈值、水平精度因子(HDOP)超限或接收机报出欺骗告警时,飞控应在一个控制周期内切换至拒止导航模式,并保持状态估计器连续输出,避免位置跳变。

整体框架:感知—估计—规划—控制闭环

本课程采用分层架构组织知识。感知层负责采集IMU、图像、点云与气压数据;估计层完成时间同步、外参标定与多源融合;规划层在局部地图上生成安全轨迹;控制层将轨迹转化为姿态与推力指令;安全层持续监测健康度并触发降级或返航。下图给出该闭环的整体关系。

GNSS拒止自主导航闭环框架 感知层 IMU / 相机 / 激光雷达 气压计 / 磁力计 / 轮速 时间同步与外参标定 估计层 VIO / LIO / SLAM 因子图优化与回环 位姿 / 速度 / 零偏 规划层 局部地图与代价地图 A* / 采样规划 / 走廊 轨迹平滑与避障 控制层 位置/速度 姿态控制 电机推力 安全与降级层 健康度监测 · 失效检测 · 悬停/返航 · 地理围栏 GNSS拒止判定与模式切换 仿真验证 → 实机飞行 → 数据复盘 Gazebo / PX4 SITL / ROS 2 / 日志回放

典型应用场景

拒止导航并非实验室概念,而是大量真实任务的刚需。下表列出典型场景及其主导传感器组合。

场景 拒止原因 主导传感器 关键挑战
城市峡谷物流 高楼遮挡、多径 视觉惯性 + 气压 纹理重复、动态遮挡
室内巡检 无卫星信号 激光雷达 + IMU 几何退化、长走廊
隧道/管廊 完全遮蔽 LIO + 轮式里程计 尺度漂移、无回环
强电磁对抗 压制或欺骗 视觉 + 抗干扰IMU 欺骗检测、快速切换
密林搜救 树冠遮挡 视觉 + 激光 + 气压 弱纹理、光照变化

方法流程与最小可运行链路

工程落地建议遵循“先仿真、后实机,先单源、后融合”的路径。一个最小可运行链路如下:

# 1. 启动仿真环境与飞控
ros2 launch px4_gazebo gnss_denied_world.launch.py

# 2. 启动VIO估计节点
ros2 run vins_estimator vins_node config/px4_stereo_imu.yaml

# 3. 启动局部规划与控制
ros2 launch ego_planner single_uav.launch.py

# 4. 记录日志用于复盘
ros2 bag record /camera/image_raw /imu/data /lidar/points /mavros/local_position/pose

提示:首次调试时,先关闭GNSS输入,仅用VIO悬停,观察10分钟内位置漂移量。若漂移超过0.5米,优先检查相机与IMU的时间同步和外参标定,而不是急于更换算法。

常见误区与复盘要点

  • 误区一:把VIO当作绝对定位。VIO输出的是相对位姿,长时间运行必然漂移,必须配合回环或先验地图;
  • 误区二:忽视时间同步。相机与IMU时间戳偏差超过5毫秒,就会在快速旋转时产生显著估计误差;
  • 误区三:在退化场景强行依赖单一传感器。长走廊、纯旋转、匀速直线都会导致可观测性下降,需要引入轮速、气压或外部约束;
  • 误区四:只关注算法精度,忽略安全降级。工程系统必须定义健康度指标、切换阈值与返航策略,否则一次估计发散就可能导致坠机。

复盘要点:每次飞行后,至少对比三组数据——估计轨迹与真值、IMU零偏收敛曲线、GNSS拒止切换时刻的状态跳变。只有把“何时失效、为何失效、如何恢复”讲清楚,才算真正掌握拒止导航。