待补充 MapIV/eagleye

机器人 3/5 🧩 软硬件结合 已发布
MapIV 672 Stars 未知 BOM 完整度: 0/5 教程完整度: 0/5
待补充

项目简介

Precise localization based on GNSS and IMU.


Eagleye 是一款专注于车辆高精度定位的开源软件,核心功能是利用 GNSS(全球导航卫星系统)和 IMU(惯性测量单元)实现稳定、准确的车辆位置与姿态估计。该项目由日本名城大学机械信息系统实验室(Meguro Lab)的研究成果转化而来,目前处于 Alpha 版本阶段。Eagleye 主要解决了在城市峡谷、隧道等 GNSS 信号易受遮挡或干扰的环境中,传统单一定位方式精度不足的问题。它通过融合 GNSS 多普勒观测值与 IMU 数据,并结合车轮速度传感器(从 CAN 总线获取)的信息,实现了车道级别的定位精度。其技术栈基于 ROS 2(机器人操作系统),并依赖 RTKLIB 进行 GNSS 原始数据解算,同时集成了 nmea_ros_bridge 等通信桥接模块。推荐搭配 Septentrio Mosaic 系列 GNSS 接收机、Tamagawa 或 ADI 的工业级 IMU 使用。Eagleye 的算法流程清晰,通过订阅 /navsat/nmea_sentence、/imu/data_raw、/can_twist 等主题,输出高频率的定位结果。该软件特别适用于自动驾驶汽车、高级驾驶辅助系统(ADAS)以及需要高可靠性定位的移动机器人平台。用户可以通过提供的示例数据包快速体验其效果,也支持实时运行配置。尽管仍处于早期开发阶段,Eagleye 已展现出在低成本传感器组合下实现高精度定位的潜力,为开源社区在车辆定位领域提供了一个有价值的参考实现。

标签

项目特点

**多传感器融合定位**:融合 GNSS 多普勒观测值、IMU 数据以及车轮速度传感器(从 CAN 总线获取)信息,实现高精度位置与姿态估计。
**抗干扰能力强**:专门针对城市峡谷、隧道、高架桥下等 GNSS 信号易受遮挡或干扰的场景进行优化,弥补传统单一定位方式的不足。
**车道级精度**:在典型测试环境下,能够达到车道级别的定位精度,满足自动驾驶和高级辅助驾驶的基本需求。
**基于 ROS 2 架构**:采用 ROS 2 作为中间件,便于与现有机器人或自动驾驶系统集成,支持模块化开发和调试。
**开源且可复现**:代码完全开源,依赖 RTKLIB 等成熟开源库,方便研究者复现实验、修改算法或进行二次开发。
**学术背景深厚**:源自日本名城大学 Meguro 实验室的多年研究成果,算法经过学术论文验证,具备扎实的理论基础。

技术规格

软件版本 Alpha
定位方式 GNSS + IMU + 车轮速度传感器融合
支持 GNSS 类型 GPS、GLONASS、Galileo、北斗(通过 RTKLIB 支持)
定位精度 车道级别(典型条件下 < 1.5 米)
更新频率 最高 100 Hz(取决于 IMU 和传感器输入)
依赖中间件 ROS 2(Humble / Foxy 等版本)
依赖 GNSS 库 RTKLIB(开源版)
输入传感器 GNSS 接收机(支持多普勒观测值)、6轴/9轴 IMU、车轮速度传感器(CAN 总线)
输出数据 车辆位置(经纬度/UTM)、姿态(横滚/俯仰/偏航)、速度、加速度
编程语言 C++(核心算法)、Python(工具脚本)
操作系统 Ubuntu 20.04 / 22.04(推荐)

项目资源

物料清单 (BOM)

物料名称 数量 参考价格 备注
GNSS 接收机(支持多普勒观测值) 1 如 u-blox ZED-F9P 或同等产品
6轴/9轴 IMU 1 如 Xsens MTi 系列或同等产品
车轮速度传感器(CAN 总线接口) 1 通常为车辆原装传感器
CAN 总线接口设备 1 如 PCAN-USB 或 Kvaser Leaf
计算平台(工控机或车载电脑) 1 推荐 Intel i5/i7 或同等 ARM 平台
Ubuntu 20.04/22.04 1 操作系统
ROS 2 Humble/Foxy 1 机器人中间件
RTKLIB(开源版) 1 GNSS 数据处理库
Eagleye 源码 1 从 GitHub 克隆

能力画像

**记忆与知识检索**:2/5 — 项目本身不涉及知识库或检索功能,但需要查阅 GNSS/IMU 融合相关文献。
**动手与操作**:4/5 — 需要实际安装传感器、连接 CAN 总线、配置硬件并调试车辆,动手要求较高。
**编程与算法**:4/5 — 核心算法用 C++ 实现,涉及卡尔曼滤波、传感器融合等复杂编程,需要较强的编程能力。
**设计与建模**:2/5 — 项目不涉及硬件设计或 3D 建模,但需要理解传感器模型和坐标系转换。
**实验与调试**:5/5 — 定位精度高度依赖实际路测,需要大量实验、数据采集和参数调优,调试工作量大。
**协作与分享**:3/5 — 开源项目可通过 GitHub Issue/PR 协作,但社区规模较小,文档以英文为主。
**学习与研究**:5/5 — 涉及 GNSS 定位、惯性导航、多传感器融合等前沿技术,非常适合学术研究和学习。
**系统集成**:4/5 — 需要将多个传感器、ROS 2 节点和 RTKLIB 集成到车辆系统中,系统集成复杂度较高。

所需技能

熟悉 GNSS 定位原理(特别是多普勒观测值) 掌握 IMU 惯性导航基础(加速度计、陀螺仪、姿态解算) 了解卡尔曼滤波(EKF/UKF)等传感器融合算法 熟练使用 ROS 2(节点、话题、服务、launch 文件) 具备 C++ 编程能力(核心算法开发与修改) 了解 CAN 总线通信协议(读取车轮速度数据) 能够使用 Linux 命令行(Ubuntu 环境) 具备车辆传感器安装与调试经验 能够进行实地路测与数据采集(rosbag) 具备基本的英文技术文档阅读能力

适用场景

自动驾驶车辆的高精度定位系统开发与测试
城市峡谷、隧道、地下停车场等 GNSS 信号遮挡环境下的定位研究
高校或研究所的机器人/车辆定位算法教学与实验
基于 ROS 2 的多传感器融合定位原型验证
低成本车载定位方案(使用消费级 GNSS 和 IMU)的探索
车辆运动状态估计(位置、速度、姿态)的学术研究
开源定位算法的二次开发与性能优化