# GPS & 指南针

PX4 支持全球导航卫星系统 (GNSS)(包括 GPS、GLONASS、Galileo、BeiDou、QZSS 和 SBAS),使用通过 u-blox、MTK Ashtech 或 Emlid 协议或通过 UAVCAN 进行通信的接收器。它还支持 实时运动学(RTK) 后处理运动学 (PPK) 全球定位系统接收器,将全球定位系统的精度提高到厘米级。

PX4 可与下列罗盘部件(磁力计)配合使用:博世 BMM 150 MEMS(通过 I2C 总线)、HMC5883 / HMC5983(I2C 或 SPI)、IST8310(I2C)和 LIS3MDL(I2C 或 SPI)。最多可连接 4 个内部或外部磁力计,但实际上只有一个用作航向源。

系统会自动选择最佳指南针。 优先权 (外部磁力计的优先级高于内部磁力计)。如果主罗盘在飞行过程中发生故障,则会切换到下一个罗盘。如果在飞行前出现故障,则将拒绝上膛。

GPS + 指南针

TIP

使用时 Pixhawk 系列 飞行控制器,我们建议使用 组合式 GPS + 指南针 安装时应尽可能远离发动机/ ESC 电源线 - 通常是安装在基座或机翼上(固定翼飞机)。内部指南针 可以 在大型飞行器(如 VTOL)上,Pixhawk 可以安装在远离电源线的地方,从而减少电磁干扰。在小型飞行器上,几乎总是需要外部指南针。

# 支持全球导航卫星系统和/或指南针

PX4 可与任何通过 u-blox、MTK Ashtech 或 Emlid 协议或 UAVCAN 进行通信的装置配合使用。此列表包含经过 PX4 开发团队测试的或在 PX4 社区广受欢迎的 GNSS/Compass 装置。

设备 全球定位系统 指南针 RTK GPS 偏航输出 双 F9P GPS 方位 PPK
ARK GPS (打开新窗口) M9N ICM42688p
ARK RTK GPS (打开新窗口) F9P ICM42688p
航空电子设备匿名 UAVCAN 全球导航卫星系统/磁场 (打开新窗口) SAM-M8Q MMC5983MA
航空电子设备匿名 UAVCAN 磁强计 (打开新窗口)
CUAV C-RTK GPS M8P/M8N
CUAV C-RTK 9Ps GPS F9P RM3100
CUAV C-RTK2 PPK/RTK GNSS F9P RM3100
CubePilot Here2 全球导航卫星系统 GPS(M8N) M8N ICM20948
CubePilot Here+ RTK GPS M8P HMC5983
CubePilot Here3 CAN GNSS GPS(M8N) (打开新窗口) M8P ICM20948
Drotek DP0804 (打开新窗口) (及其他 Drotek u-blox GPS/指南针 (打开新窗口)) M9N LIS3MDL
Drotek SIRIUS RTK GNSS ROVER (F9P) (打开新窗口) F9P RM3100
Drotek XL RTK GPS M8U LIS3MDL
Emlid Reach M+ (打开新窗口) - PX4 模块仅支持普通 GPS。预计不久的将来将支持 RTK。
Femtones MINI2 接收器 FB672、FB6A0
Freefly RTK GPS F9P IST8310
Holybro Micro M8N GPS (打开新窗口) M8N IST8310
Holybro Nano Ublox M8 5883 GPS (打开新窗口) UBX-M8030 QMC5883
Holybro M8N GPS (打开新窗口) M8N IST8310
Holybro M9N GPS (打开新窗口) M9N IST8310
Holybro H-RTK F9P 螺旋或底座 F9P IST8310
Holybro H-RTK F9P 轻型UGV无人车 F9P IST8310
Holybro H-RTK M8P 全球导航卫星系统 M8P IST8310
Hobbyking u-blox Neo-M8N GPS(带指南针 (打开新窗口) M8N
LOCOSYS Hawk A1 全球导航卫星系统接收器 MC-1612-V2b 可选的
mRo GPS u-blox Neo-M8N 双罗盘 (打开新窗口) M8N LIS3MDL、IST8308
mRo u-blox ZED-F9 RTK L1/L2 GPS (打开新窗口) F9P
SparkFun GPS-RTK2 板 - ZED-F9P (打开新窗口) F9P
Trimble MB-Two F9P
Zubax GNSS 2 (打开新窗口) MAX-M8Q LIS3MDL

备注

  • ✓或特定部件编号表示支持某个功能,而✗或空则表示不支持该功能。"?"表示"未知"。
  • 在可能和相关的情况下,使用部件名称(即 GPS 一栏中的✓表示存在 GPS 模块,但部件不详)。
  • 航空电子设备匿名 UAVCAN 磁强计 (打开新窗口) 是指南针(不是 GPS)。
  • 有些 RTK 模块只能用于特定用途(基地或漫游车),而其他 RTK 模块则可以互换使用。
  • 列表中可能会遗漏一些已停产但仍受支持的硬件。例如 CubePilot Here+ RTK GPS 已停止使用,可能会在今后的版本中从列表中删除。原来的 这里 已被删除。如果此处未提及已停用的模块,请查看早期版本。

# 硬件设置

制造商通常会提供连接 GPS(和指南针,如果有的话)的说明(至少对于较常见的 GPS 和指南针来说是这样)。 自动驾驶仪硬件).

Pixhawk 系列 控制器通常有一个标示清晰的端口用于连接 GPS,而罗盘则连接到 I2C 或 SPI 端口/总线(取决于设备)。

ARK GPS, ARK RTK GPS, Zubax GNSS 2 (打开新窗口), CUAV C-RTK2, CubePilot Here3 CAN GNSS GPS(M8N) (打开新窗口)航空电子设备匿名 GNSS/磁 (打开新窗口) 也可通过 UAVCAN.

警告

连接 GPS 模块时要注意引脚排列。虽然这些软件都是兼容的,但有几种不同的引脚顺序。

# 全球导航卫星系统配置

下面是 GPS 的标准配置。PX4 或制造商的设备文档中可能会提供其他特定设备的配置(如 Trimble MB-Two > 配置).

警告

PX4 预期的 GPS 协议默认为 u-blox(默认情况下不会检测到其他 GPS 类型,如 Trimble、Emlid 和 MTK)。 GPS_x_PROTOCOL.

# 配置主 GPS

Pixhawk上的GPS配置对用户而言是透明的,只需将GPS模块连接到标有 "GPS "的端口即可。 全球定位系统 一切正常。

备注

默认值 串行端口配置 适用于大多数设备。如果您使用的是 Trimble MB-Two 您需要修改配置,将速率明确设置为 115200 波特。

# 配置辅助 GPS(双 GPS 系统)

要使用辅助 GPS,请将其连接到任意空闲端口,然后执行 串行端口配置 分配 GPS_2_CONFIG 到所选端口。

下面的步骤展示了如何在 电话 2 端口在 QGroundControl:

  1. 查找和设置 参数 GPS_2_CONFIG电话 2.
    • 开放 QGroundControl 并导航至 载具设置 > 参数 节。
    • 选择 全球定位系统 选项卡 (1),然后打开 GPS_2_CONFIG 参数 (2) 并选择 电话 2 从下拉列表中选择 (3)。 QGC 串行示例
  2. 重新启动载具,使其他参数可见。
  3. 选择 串行 选项卡,并打开 SER_TEL2_BAUD 参数电话 2 端口波特率):设置为 汽车. QGC 串行波特率示例

设置第二个 GPS 端口后:

  1. 配置 ECL/EKF2 估计器,以混合来自两个 GPS 系统的数据。详细说明见 使用 ECL EKF > 双接收器.

# 将 GPS 配置为偏航/航向源

在使用以下模块时,GPS 可用作偏航融合源 设备支持偏航输出 例如 Trimble MB-Two)或使用某些 使用双 u-blox F9P 进行 RTK GPS 设置.

使用 GPS 进行偏航融合时,需要配置以下参数:

参数 设置
GPS_YAW_OFFSET 的角度 底线 (两个 GPS 天线之间的连线)相对于载具 x 轴(前后轴,如图所示 这里).
EKF2_AID_MASK 将第 7 位 "GPS 偏航融合 "设置为 1 (即在参数值上添加 128)。

TIP

如果使用该功能,所有其他配置都应按正常设置(例如 RTK 定位).

# 指南针配置

指南针校准的内容包括 指南针配置.该过程非常简单,而且会自动检测、 设置默认旋转对所有连接的磁强计进行校准和优先排序。

一般不需要进一步配置指南针。

备注

默认情况下,所有外部罗盘的优先级相同,高于所有内部罗盘共享的优先级。

# 禁用指南针

如上所述,一般无需进一步配置。

不过,如果需要,开发人员可以使用指南针参数禁用内部指南针。这些参数前缀为 CAL_MAGx_ (其中 x=0-3).

要禁用内部指南针:

  • 使用 CAL_MAGn_ROT 来确定哪些罗盘是内部的。在以下情况下,罗盘为内部罗盘 CAL_MAGn_ROT==1.
  • 然后使用 CAL_MAGx_PRIO 来禁用罗盘。这也可用于更改罗盘的相对优先级。

# 开发商信息