请输入
菜单

EKF数据源选择与切换

EKF 数据源选择与切换

EKF(扩展卡尔曼滤波器)用于内部更新的位置和速度数据源可通过 EKx_SRCn_y 参数进行设置。对于 EKF3 的主数据源,相关参数如下:

  • EK3_SRC1_POSXY:水平位置数据源
  • EK3_SRC1_VELXY:水平速度数据源
  • EK3_SRC1_POSZ:垂直位置数据源
  • EK3_SRC1_VELZ:垂直速度数据源
  • EK3_SRC1_YAW:偏航角数据源

这些参数的选项通常易于理解,以下对部分选项进行详细说明:

EK3_SRC1_POSZ(垂直位置数据源)选项

  1. 气压计(Baro):默认选项,适用于大多数飞行器和场景。若同时配备 GPS,可通过将 EK3_OGN_HGT_MASK 参数设为 5(即 1:使用气压计高度时进行修正 + 4:对本地位置应用修正),配置 EKF 缓慢修正高度以匹配 GPS 数据。
  2. 测距仪(RangeFinder):几乎不建议使用。仅适用于室内、地面平坦且无地面杂物(如无椅子、箱子等)的场景。请注意,表面跟踪和地形跟随功能完全不需要 EKF 使用测距仪数据。
  3. GPS:仅推荐用于长时间飞行场景——此时气压可能发生显著变化,且飞行器需配备高质量 GPS(如 UBlox F9P 双频 GPS)。若 GPS 失效,EKF 将自动切换为使用气压计(若已配备)。
  4. 信标(Beacon):当使用信标替代 GPS 时可能适用。
  5. 外部导航(ExternalNav):当辅助设备提供位置估算数据时可使用。

EK3_SRC1_YAW(偏航角数据源)选项

  1. 指南针(Compass):常规默认选项。
  2. GPS:适用于可提供偏航角数据的 GPS(详见《GPS 偏航角(又名动态基线)》)。
  3. GPS 带指南针备用(GPS with compass fallback):与纯 GPS 选项功能一致,但在 GPS 偏航角可用时,会学习指南针偏移量,使指南针偏航角与 GPS 偏航角匹配。这意味着飞行中若丢失 GPS 偏航角数据,指南针可立即接管,实现从 GPS 偏航角到指南针偏航角的平滑过渡。
  4. 外部导航(ExternalNav):当辅助设备提供偏航角信息时使用。
  5. 高斯和滤波器(GSF,Gaussian Sum Filter):基于 GPS 速度和位置变化提供偏航角信息。在无指南针配置中,固定翼飞行器(Plane)会自动启用该功能,即使未手动选择;多旋翼飞行器(Copter)则需在此类配置中明确设置启用。

数据源切换

系统提供三组 EKF 位置和速度数据源参数,默认使用第一组(即 _SRC1 系列参数)。

  • 可通过遥控器辅助通道开关选择激活的数据源组(例如,将 RCx_OPTION 参数设为 “90” / “EKF 数据源组”)。
  • 地面站或辅助计算机可通过发送 MAV_CMD_SET_EKF_SOURCE_SET 消息指令设置数据源,但目前已知暂无地面站(GCS)实现该功能。
  • 该功能在 GPS/非 GPS 模式切换场景中尤为实用。

速度数据源融合

支持将所有速度数据源融合到 EKF 中。融合的速度数据来自 EK3_SRCx_VELXYEK3_SRCx_VELZ 定义的 XY 轴和 Z 轴数据源(其中 “x” 为数据源组编号 1-3)。需通过设置 EK3_SRC_OPTIONS 位掩码的第 1 位(最低位)启用该功能。

警告
启用此功能时,用户需确保提供给 EKF 的所有速度测量数据处于同一参考系/坐标系中。

外部导航(ExternalNAV)/光流(Optical Flow)模式切换

当 EKF3 的 XY 轴速度和/或位置数据源从光流切换至外部导航源(如 3D 相机)时,可设置 EK3_SRC_OPTIONS 位掩码的第 2 位(bit 1),使外部导航源与光流保持对齐,避免切换时出现位置/速度突变。

示例配置

可将 3D 相机设为外部位置和速度数据源:

  • EK3_SRC1_POSXY = 6(外部导航 XY 轴位置)
  • EK3_SRC1_VELXY = 6(外部导航 XY 轴速度)(假设相机支持输出速度数据)

将光流设为第二组数据源:

  • EK3_SRC2_POSXY = 0(无,使用光流时位置为相对位置)
  • EK3_SRC2_VELXY = 5(光流 XY 轴速度)

之后可通过遥控器辅助通道开关在两组数据源间切换。


参考文档:https://ardupilot.org/copter/docs/common-ekf-sources.html

上一个
内置定速器(RSC)
下一个
BLHeli/AM32 数字电调
最近修改: 2025-11-21Powered by