自动驾驶硬件系统- Inertial Measurement Unit (IMU)
附赠自动驾驶学习资料和量产经验:链接
惯性测量单元(Inertial measurement unit,简称 IMU),是测量物体三轴姿态角及加速度的装置。一般IMU包括三轴陀螺仪及三轴加速度计,部分IMU还包括三轴磁力计。IMU在小至手机、VR,大至航空、航天领域都得到了广泛的应用。手机中的微信运动记录步数使用了IMU;VR中随着头部姿态变换切换视野场景用到了IMU;在GPS之前,航运轮船跨海航行确认航向依赖IMU;Apollo登月中依赖IMU实现位置追踪和朝向确认等等。
IMU在Apollo登月和VR中的应用
在自动驾驶中,IMU同样不可或缺,它在其它传感器不可用的情况下,提供车辆位置和姿态信息。
IMU通常包含陀螺仪(Gyroscope)、加速度计(Accelermeters),有的还包含磁力计(Magnetometers)。陀螺仪用来测量三轴的角速度,加速度计用来测量三轴的加速度,磁力计提供朝向信息。
1.陀螺仪(Gyroscope)
陀螺仪历史悠久,它对于弹道导弹、飞机、无人驾驶飞机、火星探测器等所有航空航天设备至关重要。
V2火箭中的陀螺仪应用
现代的晶体管陀螺仪
现代的陀螺仪(MEMS)输出的是旋转变化率(Rotational Rate),而不是Rotation本身,所以需要对陀螺仪的输出对时间积分才能得到朝向信息,在积分的过程中,随着时间的积累,误差也会持续累积,最终使得朝向发生偏移(Drift)。
陀螺仪的测量模型(忽略地球旋转):
2.加速度计(Accelermeters)
加速度计的原理图
加速度计可以通过一个通俗易懂的盒子模型来理解,我们假设在失重环境下有一个球放在一个方盒子中,在没有收到任何其它外力的作用下,圆球漂浮在盒子的中央位置。
假设盒子的每个面都是压力敏感的,如果我们突然向左移动盒子(比如我们用加速度1g=9.8m/s^2加速它),球会撞到墙X-,然后我们测量球施加到墙壁上的压力,并在x轴上输出-1g的值。
在地球上,所有物体都要收到地球引力的作用。所以在地球上,球会落在Z型壁上,并在底部壁上施加1g的力,如下图所示:
作用于多轴的加速度计如下:
加速度计的测量模型(忽略地球旋转):
3.磁力计
简单来说磁力计就是一个指南针,它弥补了加速度计无法测量的水平方向的偏航角Heading(Yaw)的问题。它的缺点在于,容易受到金属、磁场扭曲的影响。
4. IMU在自动驾驶中的应用
严格来讲,IMU只提供相对定位信息,即自体从某时刻开始相对于某个起始位置的运动轨迹和姿态。然而,将IMU的相对定位与RTK GPS的绝对定位进行融合后,就产生了两个无可替代的优点:
1)IMU可以验证RTK GPS结果的自洽性,并对无法自洽的绝对定位数据进行滤波和修正;比如如果RTK GPS输出汽车的绝对位置在短时间内发生了很大的变化,这意味着汽车有很大的加速度,而此时IMU发现汽车并不具备这样的加速度,就表明RTK GPS的定位出了问题,应该由IMU来接管绝对定位系统;
2)IMU可以在RTK GPS失效后仍能提供持续若干秒的亚米级定位精度,为自动驾驶汽车争取宝贵的异常处理的时间。IMU可以在相对定位失效时,对相对定位的结果进行航迹推演,在一段时间内保持相对定位的精度,从而能够保障自动驾驶的安全行驶。
自动驾驶汽车驶入高楼林立的区域,失去了卫星信号,无法由GPS提供绝对定位,此时,IMU可以发挥其延续绝对定位的作用,在没有GPS信号的区域为汽车提供绝对定位信息,这些信息包括汽车的实时经纬度和海拔高度。
自动驾驶汽车通过车道线识别功能确保自身在道路中行驶,在遇到强烈太阳光照射的情况下,车道线识别功能失效。此时,IMU可以发挥其延续相对定位的作用,根据历史记录中的道路曲率与汽车相对于车道边界的历史位置,确保汽车在一段时间内继续行驶在车道中。
5.IMU是自动驾驶的最后一道防线
为什么IMU是自动驾驶系统在定位领域的最后一道防线呢?主要原因有三个:
第一,IMU对相对和绝对位置的推演没有任何外部依赖,是一个类似于黑匣子的完备系统;相比而言,基于GPS的绝对定位依赖于卫星信号的覆盖效果,基于高精地图的绝对定位依赖于感知的质量和算法的性能,而感知的质量与天气有关,都有一定的不确定性。
第二,同样是由于IMU不需要任何外部信号,它可以被安装在汽车底盘等不外露的区域,可以对抗外来的电子或机械攻击;相比而言,视觉、激光和毫米波在提供相对或绝对定位时必须接收来自汽车外部的电磁波或光波信号,这样就很容易被来自攻击者的电磁波或强光信号干扰而致盲,也容易被石子、刮蹭等意外情况损坏。
第三,IMU对角速度和加速度的测量值之间本就具有一定的冗余性,再加上轮速计和方向盘转角等冗余信息,使其输出结果的置信度远高于其它传感器提供的绝对或相对定位结果。
参考链接
1.http://stanford.edu/class/ee267/lectures/lecture9.pdf
2.http://www.starlino.com/imu_guide.html
3.State Estimation and Localization for Self-Driving Cars: The Inertial Measurement Unit (IMU)