现代移动及车载终端包含越来越多的传感器,陀螺仪、加速计、磁力计、感光器等等,从原理上讲,这些传感器的本质都是相同的,都是把外部环境变化转化为通信系统可理解的电信号的过程。像温度计、光感器等传感器,因为功能单一非常容易理解,而陀螺仪、加速计和磁力计则因为原理及结构复杂,导致实际功能出现重叠,但又各有特点和局限性,在实际应用中很容易对其应用边界产生混淆。
一 陀螺仪
陀螺仪(Gyroscope、GYRO-Sensor)也叫地感器,传统结构是内部有个陀螺,如下图所示(三轴陀螺),三轴陀螺仪的工作原理是通过测量三维坐标系内陀螺转子的垂直轴与设备之间的夹角,并计算角速度,通过夹角和角速度来判别物体在三维空间的运动状态。三轴陀螺仪可以同时测定上、下、左、右、前、后等6个方向(合成方向同样可分解为三轴坐标),最终可判断出设备的移动轨迹和加速度。
也就是说陀螺仪通过测量自身的旋转状态,判断出设备当前运动状态,是向前、向后、向上、向下、向左还是向右呢,是加速(角速度)还是减速(角速度)呢,都可以实现,但是要判断出设备的方位(东西南北),陀螺仪就没有办法。
传统的陀螺仪属于机械式的,随技术发展,还有出现了振动式陀螺仪、激光陀螺仪、微机电机械陀螺仪等,无论是在体积微型化、测量精度和易用性上都有大大提高。
二 加速计
加速计(Accelerometer、G-Sensor)也叫重力感应器,实际上是可以感知任意方向上的加速度(重力加速度则只是地表垂直方向加速度),加速计通过测量组件在某个轴向的受力情况来得到结果,表现形式为轴向的加速度大小和方向(XYZ),这一点又有点类似于陀螺仪,但陀螺仪的更多关注自身旋转情况(原位运动),加速计则主要是测量设备的受力情况,也就是三轴运动情况,尽管加速计也可能在某个小范围换算出角速度的可能,但设计原理决定似乎更适合于空间运动判断。
三 加速度计和陀螺仪区别
两者看起来很接近,不过加速度计只能侦测物体的移动行为,并不具备精确侦测物体角度改变的能力,陀螺仪可以侦测物体水平改变的状态,但无法计算物体移动的激烈程度。
用简单的例子就是eeeStick(Wii:对不起我没有陀螺仪),例如玩平衡木游戏,当游戏杆向前倾斜时,陀螺仪用来计算游戏杆倾斜的角度,三轴加速度计可以侦测游戏杆晃动的剧烈程度以及游戏杆是否持续朝斜下方。
加速度计用于测量加速度。借助一个三轴加速度计可以测得一个固定平台相对地球表面的运动方向,但是一旦平台运动起来,情况就会变得复杂的多。如果平台做自由落体,加速度计测得的加速度值为零。如果平台朝某个方向做加速度运动,各个轴向加速度值会含有重力产生的加速度值,使得无法获得真正的加速度值。例如,安装在60度横滚角飞机上的三轴加速度计会测得2G的垂直加速度值,而事实上飞机相对地区表面是60度的倾角。因此,单独使用加速度计无法使飞机保持一个固定的航向。
陀螺仪测量机体围绕某个轴向的旋转角速率值。使用陀螺仪测量飞机机体轴向的旋转角速率时,如果飞机在旋转,测得的值为非零值,飞机不旋转时,测量的值为零。因此,在60度横滚角的飞机上的陀螺仪测得的横滚角速率值为零,同样在飞机做水平直线飞行时,角速率值为零。可以通过角速率值的时间积分来估计当前的横滚角度,前提是没有误差的累积。陀螺仪测量的值会随时间漂移,经过几分钟甚至几秒钟定会累积出额外的误差来,而最终会导致对飞机当前相对水平面横滚角度完全错误的认知。因此,单独使用陀螺仪也无法保持飞机的特定航向。
一言以蔽之,加速度计在较长时间的测量值(确定飞机航向)是正确的,而在较短时间内由于信号噪声的存在,而有误差。陀螺仪在较短时间内则比较准确而较长时间则会有与漂移而存有误差。因此,需要两者(相互调整)来确保航向的正确。
即使使用了两者,也只可以用于测得飞机的俯仰和横滚角度。对于偏航角度,由于偏航角和重力方向正交,无法用加速度计测量得到,因此还需要采用其他设备来校准测量偏航角度的陀螺仪的漂移值。校准的设备可以使用磁罗盘计(电子磁罗盘,对磁场变化和惯性力敏感)或者GPS。
GPS数据更新较慢(1Hz到10Hz),并且短时间内存在误差。可以只用GPS就可在地磁平稳的时间内,在地面跟踪较为稳定和慢速的飞行器。
惯性导航单元(IMU)组合(融合)来自两个或以上的传感器(例如陀螺仪、加速度计、磁场计和/或GPS)信息用于飞机相对地球的航向矢量和速度矢量。这种融合算法相当复杂,同时还需要对这些电子器件固有的测量噪声进行特殊滤波,因此市场上具有还算过得去的参数,“廉价”的IMU的价格也要 1000至5000美元。