0.說在最前面的話
在閱讀論文《A Robust and Easy to Implement Method for IMU Calibration without External Equipments》的時(shí)候了解到,IMU-TK 這個(gè)開源工具是基于此論文為理論依據(jù)開發(fā)的。IMU-TK 這個(gè)工具用來標(biāo)定確定性誤差(系統(tǒng)誤差),是一個(gè)基于C++的開源IMU數(shù)據(jù)處理庫,用于處理慣性測量單元(IMU)數(shù)據(jù),包括加速度計(jì)、陀螺儀和磁力計(jì)等傳感器。該庫提供了一組API,可以用于讀取IMU數(shù)據(jù)、進(jìn)行校準(zhǔn)、等操作。
1.算法思想
加速度計(jì)的標(biāo)定利用了加速度計(jì)在靜止?fàn)顟B(tài)下的三軸數(shù)據(jù)模值等于重力加速度這一條件,采集加速度計(jì)在不同狀態(tài)的靜止數(shù)據(jù)(測量值),通過測量值與真實(shí)值,構(gòu)建最小二乘法問題,LM求解,即可求出標(biāo)定參數(shù)。
陀螺儀的標(biāo)定需要加速度計(jì)數(shù)據(jù)的參與,所以需要先標(biāo)定好加速度計(jì)。在標(biāo)定陀螺儀時(shí),IMU從靜止?fàn)顟B(tài)A,通過一段時(shí)間,到了靜止?fàn)顟B(tài)B,通過陀螺儀可以算出來A到B的旋轉(zhuǎn)矩陣,而通過加速度數(shù)據(jù)也可以算出來A到B的旋轉(zhuǎn)矩陣,最小化這一差異即可實(shí)現(xiàn)優(yōu)化求解。
2.誤差模型
論文中詳細(xì)的推到了誤差模型的方程,這里直接給出整理過的誤差模型方程


在網(wǎng)絡(luò)上可以找到大量的對此論文的詳解和學(xué)習(xí)筆記,我推薦查閱作者為:聲時(shí)刻 的博文。作者不僅對文中提到的論文有深厚的理解,而且還自己發(fā)布了一篇 《Low-Cost Inertial Measurement Unit Calibration With Nonlinear Scale Factors》并且利用 matlab 自己寫了一個(gè)類似ICRA2014論文的算法。
3.校準(zhǔn)流程
為了避免標(biāo)定參數(shù)估計(jì)中的不可觀察性,至少需要收集IMU9個(gè)不同姿態(tài)的數(shù)據(jù),姿態(tài)數(shù)越多,標(biāo)定結(jié)果越準(zhǔn)確。
初始化時(shí)間 T一般取 50s,旋轉(zhuǎn)后保持靜態(tài)時(shí)間t 取1~4s,旋轉(zhuǎn)次數(shù) N 取36~50次。

4.生成標(biāo)定參數(shù)
生成兩個(gè)標(biāo)定文件test_imu_acc.calib、test_imu_gyro.calib ,分別為陀螺儀和加速度計(jì)的 旋轉(zhuǎn)矩陣(misalignment matrix),刻度因數(shù)(scale matrix)和零偏(bias),格式如下:
general case:
[ 1 -mis_yz mis_zy ]
T = [ mis_xz 1 -mis_zx ]
[ -mis_xy mis_yx 1 ]
"body" frame spacial case:
[ 1 -mis_yz mis_zy ]
T = [ 0 1 -mis_zx ]
[ 0 0 1 ]
Scale matrix:
[ s_x 0 0 ]
K = [ 0 s_y 0 ]
[ 0 0 s_z ]
Bias vector:
[ b_x ]
B = [ b_y ]
[ b_z ]
給定原始傳感器讀數(shù)X(例如加速度),計(jì)算校準(zhǔn)的"無偏"讀數(shù) X'

審核編輯:湯梓紅
-
傳感器
+關(guān)注
關(guān)注
2576文章
55047瀏覽量
791392 -
開源
+關(guān)注
關(guān)注
3文章
4207瀏覽量
46152 -
加速度計(jì)
+關(guān)注
關(guān)注
6文章
812瀏覽量
48174 -
模型
+關(guān)注
關(guān)注
1文章
3752瀏覽量
52114 -
IMU
+關(guān)注
關(guān)注
6文章
417瀏覽量
47879
原文標(biāo)題:論文閱讀 | 《一種魯棒且易于實(shí)現(xiàn)的無外部設(shè)備IMU校準(zhǔn)方法》_筆
文章出處:【微信號(hào):SmartHWFW,微信公眾號(hào):SmartHWFW】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。
發(fā)布評論請先 登錄
I2C控制外部設(shè)備
IMU的工作原理是什么?怎樣去搭建一種IMU誤差模型?精選資料分享
如何連接Arduino和外部設(shè)備?
如何利用USART串口輸出實(shí)現(xiàn)外部設(shè)備與處理器的通信
無傳感器BLDCM位置檢測的一種單片機(jī)軟件實(shí)現(xiàn)方法
μClinux下實(shí)時(shí)任務(wù)的一種實(shí)現(xiàn)方法
一種易于實(shí)現(xiàn)的多級(jí)Doherty功放
適合于片上PWM模塊的一種易于實(shí)現(xiàn)中心對齊SVPWM的方法詳細(xì)概述
單片機(jī)和外部設(shè)備的通信方式
無需外部設(shè)備就能重新配置微波光子的濾波器
一種無透鏡成像的新方法
一種易于實(shí)現(xiàn)的無外部設(shè)備IMU校準(zhǔn)方法
評論