本系列文章是笔者总结多年工作经验,结合理论与实践进行整理备忘的笔记。希望能在帮助自己温习整理避免遗忘的同时,也能帮助其他需要参考的朋友。笔者会不定期进行查漏补缺。如有谬误,欢迎大家进行指正。
一、设计要点
1.IMU的贴片位置远离大电流路径、射频信号,通信信号走线避免环绕IMU;
2.IMU供电需要尽量降低纹波,纹波频谱应尽可能平坦,一般传感器建议用LDO独立供电;
3.IMU的贴片位置远离装配固定点,如螺丝孔点胶点等,也避免在两个螺丝孔的连线之上;
4.IMU的贴片炉温曲线应该按照规格书要求执行以避免焊锡冷却不均匀带来的应力;
5.如有可能对IMU所在的区域进行孤岛设计,需要注意PCB的板厚和刚度,经验数据是1.2mm(取决于算法要求)以上板厚零偏和噪声都较优;
6.IMU上避免点凝固胶;避免强风直吹飞控IMU,避免线材装配干涉IMU部件;
7.IMU板完成贴片后分板时尽可能采用激光切割,如果采用铣刀分板转速不超过25000rpm,走刀速度不超过10mm/s;
8.IMU板转移过程中注意轻拿慢放,避免出现跌落;
9.图像Sensor板/模组上如果集成有IMU,在进行Sensor板/模组清洁时应避免超声波水洗;
10.如果对IMU进行加热,加热应保持均匀避免单方向变形;如果不做加热,IMU应远离热源;
11.保持IMU与其他MEMS器件(包括另一个IMU)之间足够的距离避免互相谐振干扰,经验数据是至少5mm间距,IMU附近应避免出现悬空的金属件;
针对无人机/无人车/无人船等场景的IMU设计要点
1.固定IMU的部件需要采用减震球或者柔性泡棉滤除高频振动;
2.IMU上可以贴配重块或者打阻尼脂来增强振动模态一致性;如有可能可以安装在减震盒之中并灌满阻尼脂/导热脂;
3.采用刚度尽可能大厚度也尽可能大的PCB板材/金属基板来减少PCB自身的模态振幅;
4.IMU远离结构装配间隙;
二、要点说明
消费级的IMU器件通常采用MEMS工艺制造,MEMS传感器内部采用质量块,在运动过程中质量块产生运动,通过测量质量块和参考面之间的电容特性,就可以计算出线性加速度或者转动的角速率。主控通过对线加速度和角速度积分可以得到三轴速度和姿态角。
1.MEMS IMU中加速度计的工作原理
IMU中的加速度计其实是一个由弹簧质量块组成的阻尼系统,当质量块由于惯性作用压缩弹簧的时候会产生弹性力,该弹性力符合胡克定律F=KX,K是弹簧的弹性系数,X是弹簧压缩或者伸长的距离。我们知道力是改变物体运动状态的原因,符合牛顿第二定律F=Ma,M是质量块的质量,a是产生的加速度。这样的话通过联立KX=Ma可推导出加速度a=KX/M,这样我们只要知道X值就可以得出加速度a,这里K和M是定值。
加速度计内部质量块结构都带有伸出来的手指对(finger sets),在移动过程中,手指对与固定极板可形成可变的电容,加速度计就是通过检测该电容值变化来反馈移动距离的。因此完整的加速度计结构是由微机械系统,电容转电压电路和调理输出电路组成,然后三个轴工作原理类似,X/Y轴是差分结构,Z轴由于加速度计结构的问题只能做一侧的弹簧,因此不具有差分结构,Z轴的噪声和精度相对于X/Y轴要差一些。
1.MEMS IMU中陀螺仪的工作原理
MEMS IMU中的陀螺仪对角速度的测量基于科里利奥效应。对MEMS内部施加一个X方向的激励信号,当质量块相对于震荡的系统产生Z轴方向的旋转运动时,质量块就产生Y方向的运动,通过计算质量块手指与固定极板之间电容的变化,就可以计算出对应的角速度值。这种在转动参考系中观察到的运动物体(由于转动参考系中各点的线速度不同而产生)的加速现象即为科里奥利效应,产生此效应的虚拟的惯性力叫科里奥利力。
3.IMU的关键参数
打开ICM40608的Datasheet(立创商城可以下载到),关于陀螺仪和加速度计列出的参数如下。
这些参数包括:量程、字长(ADC精度)、灵敏度、灵敏度初始偏差、灵敏度温漂、非线性度、交叉轴敏感度、零偏、零偏温漂、噪声谱密度、噪声(均方值)、数据刷新率(ODR)。部分IMU针对陀螺仪还有加速度敏感度这个参数,表示加速度计对陀螺仪的干扰。
这些参数中,选型时关注较多的一般是量程、灵敏度、噪声和零偏温漂。
4.IMU的应用注意事项
IMU应用上最需要注意的就是安装的应力问题。IMU的载板(PCB,FPC+钢片补强)一般为弹性材料,装配时螺丝孔的预紧、胶水的粘合等带来的安装应力通常为弹性力,随着时间推移弹性力逐渐释放,IMU处受到的应力可能发生变化。由于零偏的存在,算法上应用IMU数据需要先减掉零偏,零偏通常在出厂时就通过校准测试进行测量和校准。这里的零偏除了IMU自身的零偏外,还有弹性力施加到IMU带来的零偏,而安装应力的变化可能使得出厂对零偏的校准失效。故IMU的装配应远离一切应力集中的地方。如果是在无人机、无人车等载具上应用IMU进行惯性测量,则需要注意IMU的工作环境变化可能非常复杂,包括载具自身的振动,装配应力变化,电磁干扰,环境温度变化等,在设计和生产过程中都需要采取相应的措施进行应对。这类载具在工作过程中可能有很多干扰姿态判断的高频振动,来源包括气流扰动、结构模态振动、螺旋桨、装配间隙振动、云台转动、MEMS器件谐振等,通常在装配上要进行减震设计,因为大部分振动相对机身姿态而言只是噪声。无论是对IMU所在的设备进行整体减震还是对IMU单体进行减震,都可以有效滤掉这些噪声,对算法设计更加友好。
因为零偏温漂的存在,温度变化是我们在应用IMU的时候需要克服的另一个难题,可以采用两种方案进行处理。一是开机后直接加热IMU到某个恒定温度,这样无论外部环境温度如何变化IMU的温度都是固定的,则只要对目标温度下的参数漂移进行标定即可得到正确的参数,这种方案存在的一个问题是,IMU加热到目标温度需要一定的时间,这一段时间内不可避免存在未能标定的参数漂移,需要软件算法能进行处理,控制误差范围。另一种方案是对于IMU在产品声明温度范围内设置若干梯度,每个温度梯度都进行参数标定,这样实际工作时就直接根据测到的温度进行插值解算。显然梯度设置得越密标定效果越好,而这又不可避免带来生产工时和成本的增加,需要平衡好成本与性能。一般而言无人机/无人车等载具上的运控IMU需要在一段时间内独立解算参数,故对IMU精度要求较高,需要详细评估这些措施,而云台IMU只需要获取较短时间的位移、速度、角度信息,同时还存在电机辅助反馈角度,可以接受温漂稍大的缺陷,设计时也尽量预留加热措施。
如果采用加热方案,需要注意加热功率采用多少合适,一组经验数据是,预留给IMU和加热电路的(单层铜皮)面积不超过400平方毫米,在做好PCB上隔热(大面积开槽或通板挖铜)的前提下,要想在足够短的时间内加热上来,需要的加热功率大概在1~2W。加热系统还需要注意是否需要采取额外的保温隔热措施,例如打胶或者装在封闭腔体之中。
DJI的产品上有较多IMU的总体布局示例,可以作为参考。
IMU作为MEMS器件,内部存在较多的活动结构,受到较大应力时极其容易损坏。贴片分板时尽可能采用激光焊接,如果采用铣刀分板对转速和走刀速度都有相应要求,转移过程中注意轻拿慢放,避免出现跌落;对于图像Sensor板/模组上的IMU,在进行清洁时应该避免采用超声波水洗工艺。
大电流、强射频信号可能使得MEMS内部组件受电磁场波动干扰产生异常移动,故IMU也需要远离这些干扰源,温度的影响前面已经进行了说明,如果不做加热,IMU应远离热源以减小不确定的零偏温漂的影响。
在无人机/无人车等载具上,IMU直接测量的数据为线加速度和角速度,进而积分计算出速度和角度,再对速度积分计算得到位移。然而,IMU的解算和MCU的采样都是间隔一定时间的,得到的结果并不是一条真正连续的模拟曲线,而是一系列散列的采样值,对于采样点之间的参数只能采用数学插值进行估算,这样在积分计算时不可避免与实际曲线产生累积误差;另一方面,标定时一般也只能标定若干个姿态的参数漂移,对于这些姿态之间的参数也采用数学插值进行估算。而从加速度到位移需要经过两次积分,误差会相对时间以二次方累积,角速度到角度也需要一次积分,导致时间稍长从IMU解算的位置数据误差会偏离很大,采用姿态模式(纯IMU采样控制)控制无人机时,悬停状态下很容易出现无人机向某个方向慢慢飘去就与此有关。即便是当今几万美元价位的高端IMU,一分钟的位置误差计算下来也会达到米级别。