两轴模拟陀螺仪的空中鼠标指针控制方法研究.doc
文本预览下载声明
两轴模拟陀螺仪的空中鼠标指针控制方法研究
葛海江, 张雪娟, 沈海娟 时间:2011年01月13日 来源:电子技术应用2010年第11期
字 体: 大 中 小
关键词:两轴模拟MEMS陀螺仪静态基准点旋转角度变化率零点漂移动态自校正
摘? 要: 介绍了一种采用两轴模拟MEMS陀螺仪实现低成本空中鼠标指针的控制方法,详细阐述了该方法的硬件设计、两轴陀螺仪数据的模数转换、静态基准点的捕捉、动态旋转角度变化率的测量。针对陀螺仪受环境温度变化等因素的影响会发生随机零点漂移的问题,提出了一种动态自校正的算法对零点进行自校正,取得了满意的校正效果。目前该技术已成功移植到无线空中鼠标中。关键词: 两轴模拟MEMS陀螺仪; 静态基准点; 旋转角度变化率; 零点漂移; 动态自校正
??? 陀螺仪可感应空间的变化,与位置无关,能够检测运动过程中每个轴上旋转的角速度(角度/s) [1-2]。目前已有的无线空中鼠标大多数所采用的技术有:Gyration公司的无线空中鼠标GYM1100NA,采用传统的微机械数字陀螺仪方式来实现,其型号为MG1101BA,灵敏度达+/-500°/s,该数字陀螺仪的售价为8美元。然而随着微机电系统(MEMS)技术的飞速发展和不断成熟,MEMS的陀螺仪应运而生,如罗技公司应用了MEMS陀螺仪技术设计实现了无线空中鼠标MX Air。它采用了应美盛(INVENSENSE)公司的IXZ-500两轴模拟陀螺仪来实现,灵敏度达+/-500°/s,该模拟陀螺仪的售价约为3美元。但采用模拟陀螺仪,单片机内部需要完成AD转换,需要另外再增加0.5美元左右的单片机成本。因此,要实现数字陀螺仪同样的功能,成本为3.5美元左右。由此可见,采用模拟陀螺仪加AD转换的方案成本减少了4.5美元,同时传统的微机械陀螺仪MG1101的体积为13.8 mm×14.75 mm×16 mm,而IXZ-500的MEMS陀螺仪的体积仅为4 mm×5 mm×1.2 mm。为了节省空中鼠标的生产成本和缩小鼠标的体积,本文采用两轴MEMS模拟陀螺仪(IXZ-500)+AD转换的方式来实现空中鼠标指针空中姿态控制。1 两轴模拟陀螺仪的外围硬件设计?? ?本文研究的两轴模拟陀螺仪为INVENSENSE公司的IXZ-500陀螺仪,它的每轴灵敏度达+/-500°/s,两路模拟输出,工作电压为3.0? V。采用该陀螺仪实现无线空中鼠标的空中指针控制的外围硬件设计如图1所示。
2 两轴模拟陀螺仪的数据处理及转化2.1 两轴陀螺仪数据的模数转换? ? (1)带AD功能的单片机选型 因为两轴陀螺仪输出的是2路模拟信号,输出后需要经过AD转换。因此在选择主控单片机时,要选择至少带2路AD的单片机。为了提高采样的精度,可选择AD在10位以上、采样速率在100 b/s以上的主控单片机。但采样精度的提高会影响采样速度,在采样精度和速率选择上,可以先通过理论分析,然后经过实际性能的测试,选择合适的采样精度和速率,从而获得一个较好的空中鼠标姿态感知的灵敏度。本文选择的是12位2路以上AD的单片机,采样速率可达480? b/s。 (2)AD时钟及采样率设置 设置单片机的CPU时钟CPU_Clock为12 MHz,AD采样的时钟DataClock为8 MHz,采样精度为12 bit。则:???? (3)IXZ-500工作原理及AD转换的实现 IXZ-500陀螺仪的工作灵敏度为+/-500°/s,当陀螺仪在平面上发生旋转时,每个轴上会输出一个与旋转角度相关的模拟电压信号,在工作范围之内,旋转的角度大小与电压变化大小成正比。设计中,通过单片机的AD转换器来检测电压变化的大小以检测平面上旋转角度的变化大小,从而实现空中旋转角度的检测,即实现空中鼠标在空中的旋转角度检测。 当IXZ-500陀螺仪开始通电工作后,陀螺仪保持静止不动时,每个轴会输出一个大小为1.25 V的静态电压值;当陀螺仪发生旋转后,电压会在静态电压值的两侧发生变化。旋转方向不同,电压变化的方向也不同(增大或者减少),即1.25 V +/-?驻V。旋转的角度与电压变化大小关系为:2 mV/(°/s)。 单片机启动AD转换后,完成对陀螺仪输出电压的转换,AD完成1次电压转换需要约2 ms的时间。本设计设置为10 ms采样一次,通过采用定时器10 ms的中断方式进行控制。2.2 静态基准点的捕捉 当陀螺仪保持静止不动时,芯片的数据手册给出的参考静态电压值为1.25 V。然而在实际工作中,由于器件的差异性、外围环境温度变化等,都会使每个陀螺仪工作在静止状态时,静态电压值并不一定是数据手册给定的值[3]。因此需要对静止状态下的输出电压进行重新检测,即静态基准点的捕捉。 静态基准点的捕捉方法如下: (1)保持两轴陀
显示全部