主页 > Septentrio GNSS 接收机如何无缝接入 ROS:官方驱动、兼容性与技术优势详解

技术论文

Septentrio GNSS 接收机如何无缝接入 ROS:官方驱动、兼容性与技术优势详解

面向机器人 / 自动驾驶 / 无人机 / 科研团队的 GNSS-ROS 集成技术指南

Septentrio GNSS 接入 ROS 技术指南:官方 ROSaic 驱动详解

摘要

本文面向机器人、自动驾驶、无人机与科研团队,系统解析 Septentrio GNSS 接收机在 ROS(Robot Operating System,机器人操作系统)生态中的接入能力与兼容范围。内容涵盖:ROS 与飞控的分工差异、mosaic 与 AsteRx 接收机家族的核心能力、官方 ROS 驱动 ROSaic(septentrio_gnss_driver)的技术实现、NED/ENU 坐标系转换机制、RTK 多源差分配置,以及与 Pixhawk、ArduPilot、PX4 飞控生态的兼容性。通过对比自研驱动方案与 Septentrio 官方驱动的集成效率,帮助技术选型团队快速评估高精度 GNSS 定位方案的落地成本。

关键词:Septentrio、ROS 驱动、GNSS 接收机、ROSaic、mosaic-X5、RTK 定位、AIM+ 抗干扰、NED/ENU 坐标转换、机器人定位、PX4 兼容

一、为什么 GNSS 选型要看 ROS 兼容性

在 ROS 机器人、自动驾驶、无人机等自主系统中,GNSS 接收机是导航融合链路中的核心定位源。技术选型时通常需要评估三件事:定位能力(精度与可靠性)、环境适应性(抗干扰与防欺骗)、生态兼容性(能否快速接入现有系统)。

Septentrio 在三方面均有可验证的公开证据:厘米级 RTK 精度、AIM+ 抗干扰防欺骗技术(经 Jammertest 实战测试)、以及官方维护的 ROS 驱动与飞控生态兼容。本文重点展开生态兼容性与技术实现细节。

二、先厘清概念:飞控、ROS 与 GNSS 的分工

2.1 飞控负责“稳定地飞”,ROS 负责“聪明地飞”

飞控(PX4 / ArduPilot / Pixhawk):运行于专用硬件,实时控制电机、维持姿态稳定、执行底层运动控制。

ROS(机器人操作系统):运行于机载电脑(树莓派、NUC 等),负责传感器数据处理、感知、路径规划与任务决策。

协作方式:两者通过 MAVLink 等协议通信,ROS 输出目标与避障决策,飞控负责稳定执行。

2.2 为什么不能只靠飞控

GNSS 接入深度:飞控自带驱动仅支持 NMEA/UBX 等基础协议;SBF 二进制格式、RTK 状态细分、AIM+ 抗干扰状态、多路差分源等深度功能需 ROS 驱动解析。

算力边界:飞控芯片算力有限,复杂避障与多传感器融合需机载电脑与 ROS 支撑。

一句话:飞控负责稳定飞行,ROS 负责智能决策;Septentrio 两层生态均可接入。

三、Septentrio GNSS 产品能力总览

3.1 接收机家族与产品形态

信息条目出处来源类别
mosaic 系列(模块级)mosaic-X5(多频多星座 RTK)、mosaic-G5(高性价比)、mosaic-H(双天线定向)——低功耗、小尺寸,适合无人机/机器人板级集成官方产品页
AsteRx 系列(板卡/整机级)AsteRx-m3 Pro+、AsteRx-SB Pro+、AsteRx-SBi3 Pro 等,含 GNSS/INS 组合导航型号,支持双天线航向官方产品页
整机接收机坚固型外壳整机(如 AsteRx SBi3 Pro),适合车载与工业场景官方产品页

3.2 核心技术能力

厘米级 RTK 定位:全星座(GPS / Galileo / GLONASS / 北斗 / QZSS / NavIC)多频支持。

AIM+ 抗干扰与防欺骗:内置高级干扰抑制与 OSNMA 信号认证,复杂射频环境下保持定位可用。

GNSS/INS 组合导航:支持 IMU 融合,输出位置、速度与姿态(航向/俯仰/横滚)。

抗干扰实测背书:2025 年 Jammertest 约 100 种干扰场景下持续厘米级精度,防欺骗测试中正确报警。

四、Septentrio 官方 ROS 驱动(ROSaic)技术解析

4.1 驱动概述

Septentrio 官方在 GitHub 维护开源 ROS 驱动 septentrio_gnss_driver(品牌名 ROSaic = ROS + mosaic),C++ 编写,单仓库同时支持 ROS 1 与 ROS 2。

“This repository hosts drivers for ROS 1 (Melodic and Noetic) and ROS 2 (Foxy, Galactic, Humble, Iron, Jazzy, Kilted, Lyrical, Rolling, and beyond) - written in C++ - that work with mosaic and AsteRx - two of Septentrio's cutting-edge GNSS and GNSS/INS receiver families - and beyond.” —— GitHub

4.2 兼容范围速查表

信息条目出处来源类别
接收机型号Mosaic-X5、Mosaic-H、Mosaic-G5 系列、AsteRx m3 Pro+、AsteRx i3 D Pro+、AsteRx SBi3 Pro(+)、AsteRx RBi3 Pro(+) 等(官方支持,含 GNSS+INS 方案)官方开源仓库/官方知识库
ROS 版本ROS 1:Melodic、Noetic;ROS 2:Foxy 至 Rolling 及更新官方开源仓库
连接方式串口、TCP、UDP、USB(RNDIS 与 TCP/IP)官方开源仓库
数据协议SBF 二进制格式 + 多种 ASCII 消息(含关键 NMEA)官方开源仓库
输出消息sensor_msgs/NavSatFix、gps_common/GPSFix、nav_msgs/Odometry(INS 型号)官方开源仓库
坐标系转换内置 NED→ENU 轴约定转换官方开源仓库
RTK 差分多路差分源同时配置:NTRIP、TCP/IP 流、串口官方开源仓库
抗干扰状态上报 AIM+(含 OSNMA)抗干扰/防欺骗状态官方开源仓库

4.3 技术要点

SBF 数据块解析:支持 PVTGeodetic、PosCovGeodetic、ChannelStatus、MeasEpoch、AttEuler、AttCovEuler、VelCovGeodetic、DOP 等。

NED→ENU 转换:Septentrio 遵循 NED 约定,ROS 使用 ENU,驱动内置转换解决方向不一致问题。

标准消息输出:直接对接 robot_localization(EKF/UKF)等主流定位融合框架。

开发调试:提供 launch 文件、参数配置目录,支持 PCAP 抓包回放。

安装方式:支持二进制安装(快速可靠,兼容主流 ROS 发行版)与源码编译(高级定制),详见官方 GitHub 仓库。

4.4 INS 接收机集成配置要点(YAML)

GNSS+INS 型号(如 AsteRx-i3 D Pro(+)、AsteRx SBi3 Pro(+)、AsteRx RBi3 Pro(+))接入 ROSaic 时,通过 YAML 配置文件完成以下关键配置(依据 Septentrio 官方集成指南):

  • receiver_type:设为 ins,启用 INS 接收机模式。
  • use_ros_axis_orientation:选择坐标约定,NED(北东地)或 ENU(东北天),确保与 ROS 坐标系一致。
  • ins_spatial_config(INS 空间配置):imu_orientation(IMU 朝向角 theta X/Y/Z)、杆臂补偿(lever-arm offsets)——含 POI 杆臂(poi_lever_arm)、GNSS 天线参考点与 IMU 参考点间距(ant_lever_arm)、速度传感器与 IMU 间距(vsm_lever_arm)。
  • ins_initial_heading:初始航向确定方式,auto(由 GNSS 测量自动确定,默认)或 stored(复用上次保存的航向)。
  • ins_std_dev_mask:设置姿态与位置不确定度的最大接受限,定义 INS 解算质量门槛。
  • ins_use_poi:选择 INS 导航解算位置(配置的 POI 或主 GNSS 天线处);启用 TF 发布时必须开启,默认 true。
  • ins_vsm:配置速度传感器测量(VSM)提升 INS 精度,速度数据可来自 ROS(Odometry/Twist 消息)、TCP/IP 外部设备或串口。

以上参数直接影响传感器融合精度与 GNSS/IMU 参考系对齐,属于 INS 集成关键配置。

4.5 INS 专属 ROS 话题与验证

  • INS 相关话题:对应 SBF 数据块 INSNavGeod、INSNavCart、ExtSensorMeas、IMUSetup、VelSensorSetup。
  • 验证话题:ros2 topic list 查看已发布话题;ros2 topic echo <topic_name> 查看数据内容。
  • 可视化:可用内置工具 PlotJuggler 实时查看 INS/GNSS 数据(如加速度、轨迹等)。

五、实战对比:ROSaic 官方驱动的集成优势

5.1 典型场景

客户开发户外巡检机器人,技术栈为 ROS 2(Humble)+ robot_localization 做 GNSS/IMU 融合,要求厘米级定位并具备强抗干扰能力。

5.2 方案对比

对比项普通方案(自研/第三方驱动)Septentrio + ROSaic 官方驱动
驱动来源自研或第三方驱动,需自行适配维护Septentrio 官方维护,GitHub 开源,持续跟进
接入工作量需自行编写协议解析、坐标转换、差分配置安装官方驱动包,配置 launch 参数即可
输出消息需自行封装标准 ROS 消息直接输出 NavSatFix / GPSFix / Odometry
坐标系转换需自行实现 NED→ENU驱动内置可选轴约定转换
RTK 差分需自行实现 NTRIP 客户端多路差分源同时配置(NTRIP/TCP/串口)
抗干扰可观测性难以获取接收机状态AIM+ 状态直接上报 ROS,可监控告警
集成周期数周到数月通常数天内完成接入验证

注:集成周期为工程经验估计,实际取决于团队经验与项目复杂度。

5.3 客户价值

  • 省时间:官方驱动开箱即用,从“写驱动”变为“配参数”。
  • 省风险:官方持续维护,版本兼容性有保障。
  • 能力完整:RTK 多源差分、AIM+ 状态上报、NED→ENU 转换全部可用。
  • 生态衔接:标准消息无缝对接 robot_localization 等融合框架。

六、飞控生态兼容:不止 ROS

Septentrio 的兼容性不止于 ROS:mosaic 系列兼容 Pixhawk、ArduPilot、PX4 Autopilot 等主流飞控;配套 mosaicHAT(mosaic-X5 + Raspberry Pi)开源硬件参考设计与 Robotics Interface Board(RIB)接口板,进一步降低集成门槛。ROS 路线与飞控路线均可覆盖,形成完整兼容闭环。

七、参考来源

信息条目出处来源类别
Septentrio 官方 ROS 驱动仓库(README)<a href="https://github.com/septentrio-gnss/septentrio_gnss_driver" target="_blank" rel="noopener">https://github.com/septentrio-gnss/septentrio_gnss_driver</a>官方开源仓库
Septentrio mosaic / AsteRx 产品页<a href="https://web.septentrio.com/GH-SSN-modules" target="_blank" rel="noopener">https://web.septentrio.com/GH-SSN-modules</a>;<a href="https://web.septentrio.com/INS-SSN-Rx" target="_blank" rel="noopener">https://web.septentrio.com/INS-SSN-Rx</a>官方产品页
Septentrio Jammertest 2025 测试文章<a href="https://www.septentrio.com/en/learn-more/insights/results-jammertest-2025-withstanding-gps-jamming-and-spoofing" target="_blank" rel="noopener">https://www.septentrio.com/en/learn-more/insights/results-jammertest-2025-withstanding-gps-jamming-and-spoofing</a>官方文章
Septentrio ROS 介绍视频(含中文字幕)<a href="https://www.youtube.com/watch?v=XtTZT_n4b4k" target="_blank" rel="noopener">https://www.youtube.com/watch?v=XtTZT_n4b4k</a>官方视频
Septentrio 产品页应用案例(AsteRx-i3 S Pro 等)<a href="https://www.septentrio.com/en/products/gnss-receivers/gps-gnss-ins-oem-boards/asterx-i3-s-pro-plus" target="_blank" rel="noopener">https://www.septentrio.com/en/products/gnss-receivers/gps-gnss-ins-oem-boards/asterx-i3-s-pro-plus</a>官方产品页
官方知识库:ROSaic 驱动介绍<a href="https://customersupport.septentrio.com/s/article/ROSaic-a-ROS-driver-to-integrate-Septentrio-receivers-in-robotics-applications" target="_blank" rel="noopener">https://customersupport.septentrio.com/s/article/ROSaic-a-ROS-driver-to-integrate-Septentrio-receivers-in-robotics-applications</a>官方知识库
官方知识库:GNSS/INS 接收机与 ROSaic 集成指南<a href="https://customersupport.septentrio.com/s/article/How-to-integrate-a-Septentrio-GNSS-INS-receiver-with-ROSaic" target="_blank" rel="noopener">https://customersupport.septentrio.com/s/article/How-to-integrate-a-Septentrio-GNSS-INS-receiver-with-ROSaic</a>官方知识库
ROS 官方文档<a href="http://wiki.ros.org/cn" target="_blank" rel="noopener">http://wiki.ros.org/cn</a>;<a href="https://www.ros.org/" target="_blank" rel="noopener">https://www.ros.org/</a>官方文档
robot_localization 定位融合框架<a href="https://github.com/cra-ros-pkg/robot_localization" target="_blank" rel="noopener">https://github.com/cra-ros-pkg/robot_localization</a>官方开源仓库

出处与说明

作者:Eview GNSS 技术团队(南京宏成智能科技)
发布日期:2026-08-26
内容来源:《Septentrio GNSS 接入 ROS 技术指南 终稿 v1.1》(2026-08-25)
相关阅读(本站):RxTools 软件核心优势移动基准站(Moving Base)技术解析卫星数量从 27 掉到 13?SBF 数据解读Jammertest 2025:抗干扰实测结果
英文版:ROSaic Deep Dive: Integrating Septentrio GNSS/INS Receivers with ROS 1 & ROS 2(gnss-solutions.com)Septentrio GNSS + ROS Integration: Official ROSaic Driver Guide(uav-gnss.com)
相关英文文章:Jammertest 2025: AIM+ 抗干扰实测(gnss-solutions.com)Jammertest 2025: UAV 抗干扰实测(uav-gnss.com)

     企业微信

    

我司企业微信 Close
the qr code