百科.dev
全部条目AI 编程趋势榜开源项目技术资讯提交条目
登录
< 返回工具列表
I

imu_tools

> 编程语言
开源

用于 IMU 设备的 ROS 工具

1.1K stars0 点赞0 次浏览
访问官网GitHub

工具介绍

用于 IMU 设备的 ROS 工具

IMU tools for ROS

Overview

IMU-related filters and visualizers. The repository contains:

  • imu_filter_madgwick: a filter which fuses angular velocities, accelerations, and (optionally) magnetic readings from a generic IMU device into an orientation. Based on the work of 1.

  • imu_complementary_filter: a filter which fuses angular velocities, accelerations, and (optionally) magnetic readings from a generic IMU device into an orientation quaternion using a novel approach based on a complementary fusion. Based on the work of 2.

  • rviz_imu_plugin a plugin for rviz which displays sensor_msgs::Imu messages

Installing

From binaries

This repo has been released into all current ROS1 and ROS2 distros. To install, simply:

sudo apt-get install ros--imu-tools

From source (ROS1)

Create a catkin workspace (e.g., ~/catkin_ws/) and source the devel/setup.bash file.

Make sure you have git installed:

sudo apt-get install git

Clone this repository into your catkin workspace (e.g., ~/catin_ws/src; use the proper branch for your distro, e.g., melodic, noetic, ...):

git clone -b  https://github.com/CCNYRoboticsLab/imu_tools.git

Install any dependencies using rosdep.

rosdep install imu_tools

Compile the stack:

cd ~/catkin_ws
catkin_make

From source (ROS2)

Follow the steps from the ROS2 Creating a workspace documentation, but instead of cloning the sample repo, clone the proper branch of this repo instead:

git clone -b  https://github.com/CCNYRoboticsLab/imu_tools.git

More info

All nodes, topics and parameters are documented on this repo's ROS wiki page.

What's next after filtering your IMU?

Once you have a filtered orientation from imu_filter_madgwick or imu_complementary_filter, a common next step is fusing it with wheel odometry (and optionally GPS) to produce a full odom -> base_link state estimate. Two ROS 2 packages that do this:

  • robot_localization: well-established EKF/UKF state estimator, widely used across the ROS ecosystem.

  • FusionCore: UKF with online gyro bias estimation (yaw drift compounds slower over long runs), native GPS fusion for outdoor robots, and a numerically stable filter that handles aggressive maneuvers without diverging. Available on apt for Jazzy and Humble (ros-jazzy-fusioncore).

Both take a filtered IMU topic as input.

pre-commit formatting checks

This repo has a pre-commit check that runs in CI. You can use this locally and set it up to run automatically before you commit something. To install, use apt:

sudo apt install pre-commit

To run over all the files in the repo manually:

pre-commit run -a

To run pre-commit automatically before committing in the local repo, install the git hooks:

pre-commit install

License

  • imu_filter_madgwick: currently licensed as GPL, following the original implementation

  • imu_complementary_filter: BSD

  • rviz_imu_plugin: BSD

Issues· 0 开放

查看全部 Issues在 GitHub 打开

暂无开放 Issues,或尚未同步最近议题。

> 标签

C++

暂无评论,来聊聊你的看法吧

> 工具信息

发布日期2026年8月1日
最后更新2026年9月17日
分类编程语言
定价开源

> 相关工具

T
TypeScript
JavaScript 的超集,为前端与全栈提供静态类型
P
Python
通用编程语言,广泛用于 Web、数据与 AI
G
Go
Google 推出的简洁高效系统语言