0
点赞
收藏
分享

微信扫一扫

利用 imu_utils 标定 imu

君心浅语 2022-04-23 阅读 81

前言

        记录利用 imu_utils 标定 imu,最近在使用imu做导航,要对imu进行标定,使用标定得到的加速度的噪声和加速度随机游走噪声以及角速度的噪声和角速度的随机游走噪声。


一、安装 imu_utils

1、安装依赖项

sudo apt-get install libdw-dev

2、安装ceres

        参考高博slam十四讲,安装ceres。

3、编译 code_utils

cd ~/imu_calib_ws/src
git clone https://github.com/gaowenliang/code_utils
cd imu_calib_ws
catkin_make

4、编译 imu_utils

cd ~/imu_calib_ws/src
git clone https://github.com/gaowenliang/imu_utils
cd imu_calib_ws
catkin_make

二、编译出现的错误

1、找到报错的文件 sumpixel_test.cpp 把 #include "backward.hpp" 改为 #include "code_utils/backward.hpp"。

2、关于 vector 的错误,同样找到报错的文件,在头文件中添加#include <vector>即可。

三、操作步骤

1、录制 imu 数据

rosbag record -o imu_calib_data/data/imu_data.bag your_imu_topic

大概要录制两个小时左右

2、编写 launch 文件

        在 imu_utils 下的 launch 文件夹中创建 imu_test.launch 。内容如下

<launch>
<node pkg="imu_utils" type="imu_an" name="imu_an" output="screen">
<param name="imu_topic" type="string" value= "/mobile_base/sensors/imu_data"/>//这里的value是你的imu的topic
<param name="imu_name" type="string" value= "wheeltec"/>//这里的value是你的imu名字自定义
<param name="data_save_path" type="string" value= "$(find imu_utils)/data/"/>
<param name="max_time_min" type="int" value= "120"/>//这里的value值是你录制的imu的数据包的时间长度,这个value值一定要小于你录制的imu数据包
<param name="max_cluster" type="int" value= "100"/>
</node>
</launch>

 

3、 运行 imu_test.launch 文件

cd ~/imu_utils_ws
source devel/setup.sh
roslaunch imu_utils imu_test.launch

 

4、播放bag包

rosbag play -r 100 imu_calib_data/data/imu_data.bag

四、结果

        实验结果如下图

 


 

 

 

 

总结

提示:这里对文章进行总结:
例如:以上就是今天要讲的内容,本文仅仅简单介绍了pandas的使用,而pandas提供了大量能使我们快速便捷地处理数据的函数和方法。

举报

相关推荐

0 条评论