赞
踩
点击上方“3D视觉工坊”,选择“星标”
干货第一时间送达
作者丨蘅芜君@知乎
来源丨https://zhuanlan.zhihu.com/p/433625159
编辑丨计算机视觉life
MEMS IMU的型号多种多样,如何给自己的机器人选择一个合适的IMU至关重要。本文从IMU常用参数,选型需要测试哪些IMU特性,以及如何对IMU数据进行处理这三部分进行介绍。
IMU常用参数
这里列出常用的几款消费级MEMS IMU参数对比,IMU分别是BMI055(Realsense T265 D455使用),BMI088(小觅彩色版和傲览Avia使用),TDK ICM-42686,TDK ICM-42688(高通RB3,RB5计算平台使用)。
1.最大量程 (Range)
ICM-42686的加速度计量程最大是32g,陀螺仪的最大量程是4000°/s,BMI088的加速度计量程是32g, BMI055,ICM-42688都是16g。这里需要根据机器人的应用场景选择合适的量程,量程越大其灵敏度会随之下降,量程太小可能会有超量程情况。
2.ADC位数 (ADC Word Length)
BMI055的加速度计ADC位数最小是12bit,分辨率最差。BMI088、ICM-42686和ICM-42688都是16bit,分辨率一致。
3.灵敏度 (Sensitivity)
BMI088、ICM-42686和ICM-42688的加速度计灵敏度都是2048 LSB/g,BMI055的加速度计灵敏度最低是128 LSB/g。LSB是指传感器输出数字量的最低有效位。例如,BMI088的ADC位数是16位,能表示的最大数字是65536,其在16g量程时的灵敏度就是65536/32=2048 LSB/g,即加速度是1g时ADC输出的数值就是2048,数值越大代表了灵敏度越高,以上可以看出灵敏度与ADC的位数和量程有关。陀螺仪同理。
4.零偏 (Zero-g Offset/Zero-rate Offset)
BMI088和ICM-42688的加速度计零偏都是20mg,BMI055的零偏最大是70mg,TDK的陀螺仪零偏比BMI稍微小一点。
5.零偏温漂系数 (Zero-g Offset Temperature Drift/Zero-rate Offset Change over Temperature)
零偏温漂系数反映了加速度和陀螺仪零偏的温度敏感性,从手册上看BMI088、ICM-42686和ICM-42688相差不大,有条件最好实际测试对比。
6.非线性 (Nonlinearity)
理想情况下,我们认为IMU的数据是线性的,但是实际环境中,IMU的数据是非线性的,特别是越靠近量程最大值,非线性就越差。
7.零偏加速度敏感性 (G-sensitivity)
理想情况下,陀螺仪的输出应该对加速度不敏感,由于机械设计不对称和/或微加工不够精确,造成陀螺仪的测量可能会受到外部加速度的影响。BMI055和BMI088的g敏感度不差,都是0.1°/s/g 或 360°/h/g,需要注意的是大多数陀螺仪的g敏感度会随振动频率变化而变化,因此补偿方案将变得复杂,要求根据频率改变敏感度。
8.非正交误差 (Cross Axis Sensitivity)
理想情况下,加速度计和陀螺仪的X,Y和Z轴是完全正交的,即各轴的两两夹角为90度,但是由于结构的加工误差,很难做到完全正交。Cross-Axis Sensitivity为1%表示: 假设X轴的加速度为1g,理想情况下Y轴是无分量的。但是实际有1%的分量耦合到Y轴: 1g*1%=0.01g=10mg。
IMU特性测试
1.零偏重复性
全称是零偏逐次上电重复性,理想情况下,IMU在相同外界条件下每次上电的零偏不变,但是实际环境中,在相同的外界条件下IMU每次上电的零偏会有差别。测量方法是在工作温度下将IMU多次上电,记录每次上电以后的零偏大小,然后统计其差异。以BMI088为例,其加速度零偏重复性如下。
2.零偏温漂特性
对于高精度IMU模块,厂家会对每个IMU模块进行温漂矫正,而对于低端MEMS IMU芯片,不可能每个都做温漂标定和补偿,因此厂家往往给个零偏温漂系数。测量方法是将IMU芯片加热,记录整个温度区间内的零偏大小,拟合零偏温度特性曲线,观察零偏在某个温度范围内是否存在异常情况。测试结果可以参考零偏温度滞回特性。
3.零偏温度滞回特性
零偏温度滞回特性指的是IMU在温度上升阶段和温度下降阶段对应的零偏可能会不一致。测量方法是将IMU芯片加热然后降温,然后再加热降温,多测几次,观察IMU数据在对应温度的零偏是否一致。以BMI088为例,将其来回加热降温三次,其陀螺仪零偏温度滞回特性如下。
4.振动特性
振动特性指在振动情况下,零偏随振动频率的变化特性。有些IMU芯片在高频振动下,频率特性会出现异常,对于无人机场景,一般要做振动特性的测试,如果IMU出现异常频率特性,可以考虑加减震装置。
5.应力特性
应力特性是指IMU芯片贴到PCB板上以后,PCB板会对IMU施加应力,从而造成IMU零偏发生变化。如果IMU受到应力后零偏变化较大,则需要将IMU贴到PCB板上以后再次矫正零偏。以BMI088为例,测试IMU模块贴到PCB板前后的零偏变化如下。
IMU数据处理
前面已经介绍过机器人引起的振动会对IMU数据造成影响,需要对IMU模块做一定的减震处理,如果结构无法做减震,则需要对IMU数据进行处理。本文取一段无人车(差速转向,振动较大)在水泥地行驶时的IMU数据进行分析,IMU数据以200hz的采样率采集,参考飞控使用截止频率为15hz的巴特沃斯低通滤波器进行滤波。加速度Y轴数据波形如下:
图中可以看出红色滤波后的数据少了很多毛刺。对加速度数据进行FFT:
上图可以看到原始数据在20hz以后一直有高频噪声干扰,滤波后的频谱表明高频噪声干扰已经基本被去除,而且低频段的频谱没有失真。
参考文献
程序便利店的博客_dshxxxxxxx_CSDN博客-C++,Sensor领域博主
本文仅做学术分享,如有侵权,请联系删文。
3D视觉精品课程推荐:
2.面向自动驾驶领域的3D点云目标检测全栈学习路线!(单模态+多模态/数据+代码)
3.彻底搞透视觉三维重建:原理剖析、代码讲解、及优化改进
4.国内首个面向工业级实战的点云处理课程
5.激光-视觉-IMU-GPS融合SLAM算法梳理和代码讲解
6.彻底搞懂视觉-惯性SLAM:基于VINS-Fusion正式开课啦
7.彻底搞懂基于LOAM框架的3D激光SLAM: 源码剖析到算法优化
8.彻底剖析室内、室外激光SLAM关键算法原理、代码和实战(cartographer+LOAM +LIO-SAM)
重磅!3DCVer-学术论文写作投稿 交流群已成立
扫码添加小助手微信,可申请加入3D视觉工坊-学术论文写作与投稿 微信交流群,旨在交流顶会、顶刊、SCI、EI等写作与投稿事宜。
同时也可申请加入我们的细分方向交流群,目前主要有3D视觉、CV&深度学习、SLAM、三维重建、点云后处理、自动驾驶、多传感器融合、CV入门、三维测量、VR/AR、3D人脸识别、医疗影像、缺陷检测、行人重识别、目标跟踪、视觉产品落地、视觉竞赛、车牌识别、硬件选型、学术交流、求职交流、ORB-SLAM系列源码交流、深度估计等微信群。
一定要备注:研究方向+学校/公司+昵称,例如:”3D视觉 + 上海交大 + 静静“。请按照格式备注,可快速被通过且邀请进群。原创投稿也请联系。
▲长按加微信群或投稿
▲长按关注公众号
3D视觉从入门到精通知识星球:针对3D视觉领域的视频课程(三维重建系列、三维点云系列、结构光系列、手眼标定、相机标定、激光/视觉SLAM、自动驾驶等)、知识点汇总、入门进阶学习路线、最新paper分享、疑问解答五个方面进行深耕,更有各类大厂的算法工程人员进行技术指导。与此同时,星球将联合知名企业发布3D视觉相关算法开发岗位以及项目对接信息,打造成集技术与就业为一体的铁杆粉丝聚集区,近4000星球成员为创造更好的AI世界共同进步,知识星球入口:
学习3D视觉核心技术,扫描查看介绍,3天内无条件退款
圈里有高质量教程资料、答疑解惑、助你高效解决问题
觉得有用,麻烦给个赞和在看~
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。