《電子技術(shù)應(yīng)用》
您所在的位置:首頁 > MEMS|傳感技術(shù) > 設(shè)計應(yīng)用 > 兩軸模擬陀螺儀的空中鼠標(biāo)指針控制方法研究
兩軸模擬陀螺儀的空中鼠標(biāo)指針控制方法研究
來源:電子技術(shù)應(yīng)用2010年第11期
葛海江, 張雪娟, 沈海娟
杭州職業(yè)技術(shù)學(xué)院信電系, 浙江 杭州310018
摘要: 介紹了一種采用兩軸模擬MEMS陀螺儀實現(xiàn)低成本空中鼠標(biāo)指針的控制方法,詳細(xì)闡述了該方法的硬件設(shè)計、兩軸陀螺儀數(shù)據(jù)的模數(shù)轉(zhuǎn)換、靜態(tài)基準(zhǔn)點的捕捉、動態(tài)旋轉(zhuǎn)角度變化率的測量。針對陀螺儀受環(huán)境溫度變化等因素的影響會發(fā)生隨機(jī)零點漂移的問題,提出了一種動態(tài)自校正的算法對零點進(jìn)行自校正,取得了滿意的校正效果。目前該技術(shù)已成功移植到無線空中鼠標(biāo)中。
中圖分類號:TP212.9
文獻(xiàn)標(biāo)識碼:A
文章編號: 0258-7998(2010)10-0132-03
Research on control method of air mouse pointer based on two-axis analog gyroscope
GE Hai Jiang, ZHANG Xue Juan, SHEN Hai Juan
Department of Communication and Electron, Hangzhou Vocational and Technical College, Hangzhou 310018, China
Abstract: The control method of air mouse pointer using the low-cost two-axis analog gyroscope was put forward in this paper. The design of hardware, AD conversion of gyroscope, the measurement method for static reference point of gyroscope as well as the change rate calculation of the dynamic revolving angle were expounded in detail. Considering that the change of environmental temperature would cause the zero drift of two-axis gyroscope, a new algorithm for dynamic self-tuning was presented and satisfactory results were achieved. This technology has been integrated into wireless air mouse.
Key words : two-axis analog MEMS gyroscope; static reference point; revolving angle changing rate; zero drift; dynamic self-tuning

    陀螺儀可感應(yīng)空間的變化,與位置無關(guān),能夠檢測運動過程中每個軸上旋轉(zhuǎn)的角速度(角度/s) [1-2]。目前已有的無線空中鼠標(biāo)大多數(shù)所采用的技術(shù)有:Gyration公司的無線空中鼠標(biāo)GYM1100NA,采用傳統(tǒng)的微機(jī)械數(shù)字陀螺儀方式來實現(xiàn),其型號為MG1101BA,靈敏度達(dá)+/-500°/s,該數(shù)字陀螺儀的售價為8美元。然而隨著微機(jī)電系統(tǒng)(MEMS)技術(shù)的飛速發(fā)展和不斷成熟,MEMS的陀螺儀應(yīng)運而生,如羅技公司應(yīng)用了MEMS陀螺儀技術(shù)設(shè)計實現(xiàn)了無線空中鼠標(biāo)MX Air。它采用了應(yīng)美盛(INVENSENSE)公司的IXZ-500兩軸模擬陀螺儀來實現(xiàn),靈敏度達(dá)+/-500°/s,該模擬陀螺儀的售價約為3美元。但采用模擬陀螺儀,單片機(jī)內(nèi)部需要完成AD轉(zhuǎn)換,需要另外再增加0.5美元左右的單片機(jī)成本。因此,要實現(xiàn)數(shù)字陀螺儀同樣的功能,成本為3.5美元左右。由此可見,采用模擬陀螺儀加AD轉(zhuǎn)換的方案成本減少了4.5美元,同時傳統(tǒng)的微機(jī)械陀螺儀MG1101的體積為13.8 mm×14.75 mm×16 mm,而IXZ-500的MEMS陀螺儀的體積僅為4 mm×5 mm×1.2 mm。為了節(jié)省空中鼠標(biāo)的生產(chǎn)成本和縮小鼠標(biāo)的體積,本文采用兩軸MEMS模擬陀螺儀(IXZ-500)+AD轉(zhuǎn)換的方式來實現(xiàn)空中鼠標(biāo)指針空中姿態(tài)控制。

1 兩軸模擬陀螺儀的外圍硬件設(shè)計
    本文研究的兩軸模擬陀螺儀為INVENSENSE公司的IXZ-500陀螺儀,它的每軸靈敏度達(dá)+/-500°/s,兩路模擬輸出,工作電壓為3.0  V。采用該陀螺儀實現(xiàn)無線空中鼠標(biāo)的空中指針控制的外圍硬件設(shè)計如圖1所示。


2 兩軸模擬陀螺儀的數(shù)據(jù)處理及轉(zhuǎn)化
2.1 兩軸陀螺儀數(shù)據(jù)的模數(shù)轉(zhuǎn)換

    (1)帶AD功能的單片機(jī)選型
 因為兩軸陀螺儀輸出的是2路模擬信號,輸出后需要經(jīng)過AD轉(zhuǎn)換。因此在選擇主控單片機(jī)時,要選擇至少帶2路AD的單片機(jī)。為了提高采樣的精度,可選擇AD在10位以上、采樣速率在100 b/s以上的主控單片機(jī)。但采樣精度的提高會影響采樣速度,在采樣精度和速率選擇上,可以先通過理論分析,然后經(jīng)過實際性能的測試,選擇合適的采樣精度和速率,從而獲得一個較好的空中鼠標(biāo)姿態(tài)感知的靈敏度。本文選擇的是12位2路以上AD的單片機(jī),采樣速率可達(dá)480  b/s。
 (2)AD時鐘及采樣率設(shè)置
 設(shè)置單片機(jī)的CPU時鐘CPU_Clock為12 MHz,AD采樣的時鐘DataClock為8 MHz,采樣精度為12 bit。則:
 
    (3)IXZ-500工作原理及AD轉(zhuǎn)換的實現(xiàn)
 IXZ-500陀螺儀的工作靈敏度為+/-500°/s,當(dāng)陀螺儀在平面上發(fā)生旋轉(zhuǎn)時,每個軸上會輸出一個與旋轉(zhuǎn)角度相關(guān)的模擬電壓信號,在工作范圍之內(nèi),旋轉(zhuǎn)的角度大小與電壓變化大小成正比。設(shè)計中,通過單片機(jī)的AD轉(zhuǎn)換器來檢測電壓變化的大小以檢測平面上旋轉(zhuǎn)角度的變化大小,從而實現(xiàn)空中旋轉(zhuǎn)角度的檢測,即實現(xiàn)空中鼠標(biāo)在空中的旋轉(zhuǎn)角度檢測。
 當(dāng)IXZ-500陀螺儀開始通電工作后,陀螺儀保持靜止不動時,每個軸會輸出一個大小為1.25 V的靜態(tài)電壓值;當(dāng)陀螺儀發(fā)生旋轉(zhuǎn)后,電壓會在靜態(tài)電壓值的兩側(cè)發(fā)生變化。旋轉(zhuǎn)方向不同,電壓變化的方向也不同(增大或者減少),即1.25 V +/-?駐V。旋轉(zhuǎn)的角度與電壓變化大小關(guān)系為:2 mV/(°/s)。
 單片機(jī)啟動AD轉(zhuǎn)換后,完成對陀螺儀輸出電壓的轉(zhuǎn)換,AD完成1次電壓轉(zhuǎn)換需要約2 ms的時間。本設(shè)計設(shè)置為10 ms采樣一次,通過采用定時器10 ms的中斷方式進(jìn)行控制。
2.2 靜態(tài)基準(zhǔn)點的捕捉
 當(dāng)陀螺儀保持靜止不動時,芯片的數(shù)據(jù)手冊給出的參考靜態(tài)電壓值為1.25 V。然而在實際工作中,由于器件的差異性、外圍環(huán)境溫度變化等,都會使每個陀螺儀工作在靜止?fàn)顟B(tài)時,靜態(tài)電壓值并不一定是數(shù)據(jù)手冊給定的值[3]。因此需要對靜止?fàn)顟B(tài)下的輸出電壓進(jìn)行重新檢測,即靜態(tài)基準(zhǔn)點的捕捉。
 靜態(tài)基準(zhǔn)點的捕捉方法如下:
 (1)保持兩軸陀螺儀在靜止?fàn)顟B(tài),由單片機(jī)的AD轉(zhuǎn)換器采樣陀螺儀的輸出電壓并完成AD轉(zhuǎn)換。假設(shè)兩軸陀螺儀AD轉(zhuǎn)換后的值為:Current_x和Current_z。
 (2)由于陀螺儀本身存在噪聲的影響,需要屏蔽噪聲。這里Current_x和Current_z都為12 bit的數(shù)值,設(shè)計時將其最低2位數(shù)據(jù)屏蔽掉,即將Current_x和Current_z分別與0xffc位進(jìn)行“與”操作。
 (3)為了進(jìn)一步消除誤差,將上述的數(shù)據(jù)連續(xù)讀取兩次,求平均值。
 (4)因為兩軸陀螺儀在靜止?fàn)顟B(tài)下,輸出的電壓基本上不變化,所以可以連續(xù)檢測多次,然后進(jìn)行數(shù)據(jù)比較。如果連續(xù)檢測多次經(jīng)過屏蔽及平均之后的數(shù)據(jù)都相等,則表明兩軸陀螺儀是處在靜止?fàn)顟B(tài)。
 (5)分別記錄此時Current_x和Current_z的值。這兩個值即為靜態(tài)基準(zhǔn)點的值:Static_x和Static_z。
 (6)在實際應(yīng)用中,將Static_x和Static_z寫入主控器的EEPROM中,其目的是使得下次Static_x和Static_z的值可以直接從EEPROM中讀出,不必要每次都檢測靜態(tài)基準(zhǔn)點。
2.3 動態(tài)旋轉(zhuǎn)角度變化率的測量
 當(dāng)兩軸陀螺儀發(fā)生旋轉(zhuǎn)時,每個軸的輸出電壓會發(fā)生變化,即在靜態(tài)基準(zhǔn)電壓的兩側(cè)變化。
 (1)兩軸陀螺儀發(fā)生旋轉(zhuǎn)時,計算兩維方向上的旋轉(zhuǎn)角度變化率:
  
式中,Current_x表示x軸上的輸出量,Static_x表示x軸上的沒有發(fā)生旋轉(zhuǎn)時輸出量;q為陀螺儀的靈敏度系數(shù)(系數(shù)的大小可根據(jù)實際的需要進(jìn)行設(shè)置,要提高靈敏度則可以減小系數(shù)的大小)。z軸上旋轉(zhuǎn)角度變化率的計算方法同x軸。
 當(dāng)物體發(fā)生旋轉(zhuǎn)時,陀螺儀也跟著旋轉(zhuǎn),通過對旋轉(zhuǎn)角度變化率的測量,就能測量出陀螺儀在平面上旋轉(zhuǎn)角度的變化,從而得知物體在空中的旋轉(zhuǎn)變化。
 (2)在空中鼠標(biāo)的應(yīng)用中,本文將陀螺儀的靈敏度系數(shù)q的值設(shè)置為20,經(jīng)過實際鼠標(biāo)的測試,已能滿足鼠標(biāo)指針在空中的位移控制需要。
3 無線空中鼠標(biāo)指針控制流程
 無線空中鼠標(biāo)指針的空中旋轉(zhuǎn)控制流程如圖2所示。對于2.4 GHz的無線通信部分,可以參考文獻(xiàn)[4]。

4 兩軸陀螺儀的參數(shù)動態(tài)自校正
 由于兩軸陀螺儀在環(huán)境溫度變化或工作電壓下降后,兩軸陀螺儀靜態(tài)的基準(zhǔn)點會發(fā)生改變即發(fā)生零點漂移[5],使得Static_x和Static_z的值發(fā)生改變。因此需要對靜態(tài)的基準(zhǔn)點進(jìn)行校正,即重新捕捉Static_x和Static_z的值。為此本文提出一種動態(tài)自校正的算法,對相應(yīng)的Static_x和Static_z參數(shù)進(jìn)行自校正,取得較好的校正效果。
 動態(tài)自校正的算法引用靜態(tài)基準(zhǔn)點的捕捉方法進(jìn)行控制,控制過程如圖3所示。

 對于參數(shù)i、j用戶可以根據(jù)具體不同的實際需要進(jìn)行調(diào)整,i、j增大會增加校正的時間,但可以增加靜態(tài)捕捉點的精度。本文i、j的設(shè)置是根據(jù)空中鼠標(biāo)實際性能的測試后得出的。通過對鼠標(biāo)的實際測試,該控制方法校正時間小于2 s。
    本文通過對傳統(tǒng)的微機(jī)械陀螺儀、數(shù)字陀螺儀及MEMS陀螺儀進(jìn)行了比較研究,提出了一種采用兩軸模擬陀螺儀技術(shù)實現(xiàn)低成本的空中鼠標(biāo)指針的控制方法。該方法目前已成功應(yīng)用于無線空中鼠標(biāo)中,在空中可以檢測旋轉(zhuǎn)角度范圍為+/-500°/s,實現(xiàn)了空中鼠標(biāo)指針在空中的自由控制,已獲得實用新型專利一項[6]。此外,該方法還可應(yīng)用于人體動作跟蹤、游戲控制器、機(jī)器人及自動導(dǎo)航等人機(jī)輸入設(shè)備中。
參考文獻(xiàn)
[1]  董煜茜,高鐘毓,張嶸. 微機(jī)械陀螺儀的性能分析[J]. 清華大學(xué)學(xué)報<自然科學(xué)版>,1998, 38(11):1-3.
[2]  谷慶紅. 微機(jī)械陀螺儀的研制現(xiàn)狀[J]. 中國慣性技術(shù)學(xué)報, 2003,11(5):67-72.
[3]  葛海江, 陶姍. 姿態(tài)感知鼠標(biāo)指針的控制方法[J]. 機(jī)電工程. 2009,26(3):105-107.
[4]  葛海江, 陶姍, 吳弋旻,等. 2.4GHz無線鼠標(biāo)多信道控制方法研究[J]. 計算機(jī)工程與應(yīng)用. 2009,45(9):77-79.
[5]  金光明,張國良,陳林鵬,等. MEMS陀螺儀靜態(tài)漂移模型與濾波方法研究[J]. 傳感器與微系統(tǒng), 2007,26(11):48-50.
[6]  戴國駿, 葛海江,姜若林,等. 一種多功能無線鼠標(biāo)裝置: 中國, 專利申請?zhí)?200710164504.7.2008-05-14.

此內(nèi)容為AET網(wǎng)站原創(chuàng),未經(jīng)授權(quán)禁止轉(zhuǎn)載。