專利名稱:利用鞋子代替鍵盤(pán)鼠標(biāo)作為計(jì)算機(jī)外設(shè)的方法及實(shí)現(xiàn)裝置的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及一種基于傳感器與電子通訊技術(shù)的新型鞋子,屬于自動(dòng)化、電子通訊以及計(jì)算機(jī)接口技術(shù)領(lǐng)域。特別地,涉及一種在鞋子底部處植入傳感器從而精確還原出腳部運(yùn)動(dòng)數(shù)據(jù),進(jìn)而通過(guò)計(jì)算機(jī)接口技術(shù)實(shí)現(xiàn)腳步運(yùn)動(dòng)代替鍵盤(pán)按鍵以及鼠標(biāo)移動(dòng)的方法。
背景技術(shù):
隨著信息科學(xué)的發(fā)展,體感運(yùn)動(dòng)的興起讓越來(lái)越多的人機(jī)交互產(chǎn)品具有了體感的特征。如聯(lián)想公司的3D體感控制器鼠標(biāo),任天堂的wii游戲主機(jī),微軟的XBOX Kinect等。這些設(shè)備通過(guò)內(nèi)置傳感器或者外置攝像頭的方式,來(lái)獲得人體的運(yùn)動(dòng)數(shù)據(jù)從而實(shí)現(xiàn)人機(jī)交互。其中聯(lián)想公司的3D體感控制鼠標(biāo),是一種利用無(wú)線通訊技術(shù),通過(guò)采集使用者手的揮動(dòng)動(dòng)作,從而將揮動(dòng)信息傳輸?shù)絇C端的無(wú)線接收模塊,從而代替鍵盤(pán)上某個(gè)按鍵輸入,可以進(jìn)行PC游戲的控制;同時(shí)也可以感應(yīng)鼠標(biāo)在空置的移動(dòng),實(shí)現(xiàn)對(duì)鼠標(biāo)的代替控制。但是在制鞋領(lǐng)域,尚未出現(xiàn)通過(guò)檢測(cè)人體腳部的運(yùn)動(dòng),利用無(wú)線連接的方式,進(jìn)而代替鍵盤(pán)或者鼠標(biāo)的發(fā)明出現(xiàn)。
發(fā)明內(nèi)容
本發(fā)明利用了一種可以檢測(cè)出人體腳部移動(dòng)的無(wú)線傳感綜合模塊,并將其輕量化小型化,便于放入鞋子內(nèi),通過(guò)無(wú)線傳輸模塊,將人體的腳部移動(dòng)信息傳輸?shù)絇C機(jī)等智能終端。PC機(jī)終端的智能設(shè)備數(shù)據(jù)接收通過(guò)一個(gè)USB 口的上位機(jī)接收模塊實(shí)現(xiàn),上位機(jī)接收模塊內(nèi)部由單片機(jī)控制無(wú)線傳輸模塊接收人體腳部移動(dòng)信息,并轉(zhuǎn)換為標(biāo)準(zhǔn)的鍵盤(pán)或鼠標(biāo)掃描碼,再轉(zhuǎn)換為USB標(biāo)準(zhǔn)信號(hào)輸出給PC機(jī)的USB 口,觸發(fā)BIOS 09H硬件中斷,通知PC機(jī)有按鍵按下,進(jìn)而將預(yù)先映射完成的鍵盤(pán)掃描碼送到內(nèi)存BIOS數(shù)據(jù)區(qū)的鍵盤(pán)緩沖區(qū),從而實(shí)現(xiàn)了用鞋子的移動(dòng)代替鍵盤(pán)輸入的功能;此外,對(duì)于代替鼠標(biāo),則可利用單片機(jī)控制無(wú)線傳輸模塊接收人體腳部移動(dòng)信息,通過(guò)一定的邏輯映射關(guān)系,將腳部在地平面上移動(dòng)數(shù)據(jù)映射為鼠標(biāo)在屏幕上的位置,以及用戶腳步的動(dòng)作映射為鼠標(biāo)按鍵,并通過(guò)觸發(fā)硬件INT33H中斷,讀取鼠標(biāo)的位置與鼠標(biāo)按鍵的狀態(tài)。本發(fā)明完成了一個(gè)無(wú)線鍵盤(pán)和無(wú)線鼠標(biāo)的功能,并將傳統(tǒng)的鼠標(biāo)和鍵盤(pán)的按鍵輸入引發(fā)硬件中斷,變成了感應(yīng)人體腳部的移動(dòng)引發(fā)硬件中斷,完成了類似于無(wú)線鍵盤(pán)和無(wú)線鼠標(biāo)的功能。此外,本發(fā)明還提供了一種基于系統(tǒng)底層API函數(shù),將用戶腳部動(dòng)作映射為鍵盤(pán)按鍵和鼠標(biāo)移動(dòng)等消息的方法。本發(fā)明提供了一種利用鞋子代替鍵盤(pán)鼠標(biāo)作為計(jì)算機(jī)外設(shè)的方法及實(shí)現(xiàn)裝置,所述的實(shí)現(xiàn)裝置主要包括一個(gè)采用無(wú)線技術(shù)的上位機(jī)接收模塊和設(shè)置在鞋子上(本發(fā)明中嵌入在鞋底)的無(wú)線傳感綜合模塊。所述的無(wú)線傳感綜合模塊用于采集用戶腳部移動(dòng)時(shí),鞋子底部所嵌入的無(wú)線傳感綜合模塊的六自由度的運(yùn)動(dòng)數(shù)據(jù),并將運(yùn)動(dòng)數(shù)據(jù)以無(wú)線方式傳輸給上位機(jī)接收模塊。所述的無(wú)線傳感綜合模塊包括加速度傳感器、角度傳感器、磁阻傳感器、信號(hào)調(diào)理單元、基于ARM的中央處理單元、無(wú)線傳輸模塊和電源單元。所述的上位機(jī)接收模塊包括無(wú)線傳輸模塊、單片機(jī)、USB/UART接口轉(zhuǎn)換芯片、電源芯片以及USB接口,可實(shí)現(xiàn)即、插即用。所述無(wú)線傳感綜合模塊設(shè)計(jì)上以小型化、輕量化為核心理念,采用集成度較高的ARM芯片,以減小無(wú)線傳感綜合模塊電路板的大小和重量,使其可以方便的嵌入鞋子底部。本發(fā)明設(shè)計(jì)為無(wú)線傳感綜合模塊與鞋子可分離式,可分離式設(shè)計(jì)也便于給無(wú)線傳感綜合模塊充電。本發(fā)明包括兩種工作模式,即鍵盤(pán)模式和鼠標(biāo)模式,可通過(guò)PC端的軟件進(jìn)行設(shè)置,在設(shè)備初始上電時(shí)刻,通過(guò)上位機(jī)將工作模式以及相關(guān)參數(shù)以無(wú)線傳輸模式傳輸給下位機(jī),以實(shí)現(xiàn)人體腳部移動(dòng)代替鍵盤(pán)鼠標(biāo)輸入的不同功能。無(wú)線傳感綜合模塊作為采集用戶腳部動(dòng)作信息的核心模塊,其包括以下關(guān)鍵子模塊(I)基于三軸加速度計(jì)的三自由度的加速度傳感器;(2)基于數(shù)字陀螺的旋轉(zhuǎn)角度傳感器;(3)磁阻傳感器;(4)基于ARM的中央處理單元;(5)基于無(wú)線通訊模塊的信號(hào) 發(fā)送和接收單元;(6)獨(dú)立供電的可充放電電源單元。加速度傳感器采集腳部在三維空間內(nèi)的三個(gè)軸上的位移信息,旋轉(zhuǎn)角度傳感器采集鞋子的轉(zhuǎn)動(dòng)角度信息,磁阻傳感器采集地磁場(chǎng)強(qiáng)度信息,位移信息與地磁場(chǎng)強(qiáng)度信息經(jīng)過(guò)信號(hào)調(diào)理單元調(diào)理后,與轉(zhuǎn)動(dòng)角度信息一起通過(guò)以ARM作為核心的中央處理單元,最后將經(jīng)過(guò)處理的信息利用無(wú)線傳輸模塊的信號(hào)發(fā)送單元以無(wú)線信號(hào)的方式發(fā)送出去給上位機(jī)接收模塊。中央處理單元選用自帶高精度AD采集以及看門狗的ARM芯片。AD采集用于獲得經(jīng)過(guò)信號(hào)調(diào)理單元調(diào)理的加速度傳感器單元 的電壓輸出,并還原為加速度信息,經(jīng)過(guò)對(duì)時(shí)間的一次積分得到速度信息,經(jīng)過(guò)對(duì)時(shí)間的第二次積分得到位移數(shù)據(jù)??撮T狗用于當(dāng)處理器程序跑飛或者處于死機(jī)狀態(tài)時(shí),看門狗將從硬件上對(duì)處理器進(jìn)行強(qiáng)制復(fù)位,使處理器重新進(jìn)入正常工作模式。其中無(wú)線傳感綜合模塊內(nèi)部設(shè)置有ROM用于存儲(chǔ)出廠時(shí)的唯一標(biāo)識(shí)SN號(hào)和左右鞋標(biāo)識(shí)ID號(hào),即每一塊成品的模塊都是依靠燒寫(xiě)進(jìn)ROM的不同信息進(jìn)行區(qū)分的,類似于產(chǎn)品的出廠序列號(hào)。上位機(jī)接收模塊,作為接收和處理鞋子中無(wú)線傳感綜合模塊所發(fā)送信息的模塊,其核心在于通過(guò)無(wú)線通訊協(xié)議,與無(wú)線傳感綜合模塊建立連接并接收相關(guān)數(shù)據(jù),并按照初始化時(shí)刻的工作模式以及工作參數(shù),將用戶腳部的運(yùn)動(dòng)信息映射為鍵盤(pán)和鼠標(biāo)的輸入,得到鍵盤(pán)掃描碼或者鼠標(biāo)移動(dòng)信息和按鍵信息,并將輸入信息轉(zhuǎn)換為標(biāo)準(zhǔn)的USB外設(shè)信號(hào), 觸發(fā)相應(yīng)的硬件中斷,將鍵盤(pán)掃描碼或者鼠標(biāo)移動(dòng)和按鍵信息傳輸給BIOS的緩沖區(qū)。本發(fā)明提供的一種鞋子代替鍵盤(pán)鼠標(biāo)作為計(jì)算機(jī)外設(shè)的方法的一般工作流程包括以下步驟(I)開(kāi)啟鞋子電源,選擇工作模式鼠標(biāo)或者鍵盤(pán)模式,下位機(jī)初始化,并為無(wú)線傳感綜合模塊上電;(2)開(kāi)啟上位機(jī)接收模塊,進(jìn)行無(wú)線搜索,匹配周圍的存在無(wú)線傳感綜合模塊,開(kāi)始自組網(wǎng)工作。若搜索到符合協(xié)議的設(shè)備,則自動(dòng)進(jìn)行連接;如果超過(guò)閾值時(shí)間T秒(可設(shè)),仍然沒(méi)有搜索到可匹配的相應(yīng)設(shè)備,則自動(dòng)轉(zhuǎn)入連接失敗處理程序;如果搜索到可匹配的下位機(jī)無(wú)線傳感綜合模塊,自動(dòng)進(jìn)行連接,實(shí)現(xiàn)子節(jié)點(diǎn)的自動(dòng)入網(wǎng),并建立通訊連接。(3)自組網(wǎng)成功并且通訊建立完畢后,上位機(jī)通過(guò)PC端軟件的預(yù)先設(shè)置,將預(yù)設(shè)的工作模式發(fā)送給下位機(jī);完成工作模式以及工作參數(shù)設(shè)置后上位機(jī)向下位機(jī)發(fā)送開(kāi)始采集指令,同時(shí)通過(guò)上位機(jī)的軟件應(yīng)用提示用戶可自由移動(dòng);
(4)中央處理單元按照預(yù)設(shè)的時(shí)鐘周期對(duì)采集到的數(shù)據(jù)進(jìn)行解算,還原出位移及其角度信息,并作為腳部運(yùn)動(dòng)信息數(shù)據(jù)存儲(chǔ)于緩存中,具體為加速度傳感器獲得鞋子的三個(gè)坐標(biāo)軸方向上的加速度,分別記作ax,ay,az,利用兩次積分運(yùn)算獲得鞋子局部坐標(biāo)系XbYbZb三個(gè)軸向上的位移Axb,Ayb, Azb;利用數(shù)字陀螺,檢測(cè)出鞋子繞局部坐標(biāo)系軸向的轉(zhuǎn)動(dòng)角度,記作θχ,θγ, θζ;利用磁阻傳感器,測(cè)量出鞋子局部坐標(biāo)系XbYbZb三個(gè)軸向上的地磁場(chǎng)強(qiáng)度,記做mx, my, mz。(5)中央處理單元基于捷聯(lián)慣導(dǎo)系統(tǒng)的公知方法,由加速度計(jì)和數(shù)字陀螺所測(cè)量得到的AXb,Ayb, Azb, θχ, θγ, θζ,計(jì)算得到鞋子局部坐標(biāo)系相對(duì)于世界坐標(biāo)系的位置 (xn, yn, zn)和姿態(tài)角(θ,γ , ψ);當(dāng)鞋子處于靜止或低速平穩(wěn)運(yùn)動(dòng)時(shí),使用根據(jù)加速度計(jì)和磁阻傳感器計(jì)算得到的姿態(tài)角對(duì)根據(jù)捷聯(lián)慣導(dǎo)算法計(jì)算得到的姿態(tài)信息進(jìn)行修正,具體使用三軸加速度信息計(jì)算出俯仰角Θ和橫滾角Y ;結(jié)合姿態(tài)角信息和磁阻傳感器測(cè)量到的地磁場(chǎng)強(qiáng)度信息計(jì)算得到磁航向,磁航向加上當(dāng)?shù)卮牌堑玫降乩砗较蚪铅贰?,得到最終的鞋子的位置(xn, yn, Zn)和修正后的姿態(tài)角(Θ,γ,V),作為鞋子的六自由度運(yùn)動(dòng)數(shù)據(jù)發(fā)送至上位機(jī);(6)上位機(jī)接收模塊按照設(shè)定的周期,定時(shí)接收鞋子中的無(wú)線傳輸模塊發(fā)送的鞋子運(yùn)動(dòng)信息。上位機(jī)中的單片機(jī)將人體腳部的移動(dòng)信息映射為鍵盤(pán)和鼠標(biāo)輸入,并觸發(fā)硬件中斷,分別根據(jù)兩種工作模式,觸發(fā)鍵盤(pán)中斷或鼠標(biāo)中斷,將所映射的鍵盤(pán)掃描碼或鼠標(biāo)位置等信息傳輸?shù)紹IOS數(shù)據(jù)緩沖區(qū),以備系統(tǒng)調(diào)用;(7)如果上位機(jī)直接控制發(fā)送結(jié)束指令,則采集與通訊工作流停止,并退出本次應(yīng)用;(8)重新選擇工作模式,轉(zhuǎn)入步驟I ;或直接退出程序并關(guān)閉鞋子電源。本發(fā)明利用鞋子的運(yùn)動(dòng)信息代替鍵盤(pán)或鼠標(biāo),作為計(jì)算機(jī)的一種外設(shè)。本發(fā)明采用了無(wú)線通訊技術(shù),實(shí)現(xiàn)了無(wú)線鍵盤(pán)和鼠標(biāo)的功能,更便于用戶使用,所采用無(wú)線模塊可以基于藍(lán)牙,Zigbee等;此外還提供了一種基于操作系統(tǒng)底層API實(shí)現(xiàn)腳部動(dòng)作到鍵盤(pán)鼠標(biāo)按鍵映射的方法,從軟件層面上給出了代替鍵盤(pán)鼠標(biāo)的解決方案。本發(fā)明實(shí)現(xiàn)了一種新穎的計(jì)算機(jī)控制方式,可以作為一種新型的人機(jī)交互式,同時(shí)可以為殘疾人(沒(méi)有手或手部有殘疾的人)來(lái)控制計(jì)算機(jī)使用,還可以用于電子游戲娛樂(lè),完成人體腳部移動(dòng)對(duì)游戲人物移動(dòng)的控制。此外用戶可以在兩只腳上分別安裝無(wú)線傳感綜合模塊,以擴(kuò)展出更多的動(dòng)作,從而進(jìn)行更多的鍵盤(pán)和鼠標(biāo)操作映射。本發(fā)明的創(chuàng)新性和優(yōu)點(diǎn)在于I、設(shè)計(jì)了一種相當(dāng)于無(wú)線鼠標(biāo)和無(wú)線鍵盤(pán)的計(jì)算機(jī)外設(shè)的鞋子。提出了一種腳部動(dòng)作控制鍵盤(pán)和鼠標(biāo)的新方法,填補(bǔ)了該領(lǐng)域的空白;2、采用了底層的計(jì)算機(jī)接口技術(shù),參考標(biāo)準(zhǔn)鍵盤(pán)和鼠標(biāo)的設(shè)計(jì)原理,由單片機(jī)將接收到的運(yùn)動(dòng)數(shù)據(jù)映射為鍵盤(pán)掃描碼或鼠標(biāo)移動(dòng)信息,利用硬件中斷,實(shí)現(xiàn)BIOS級(jí)的鼠標(biāo)和鍵盤(pán)代替,是一種真正的計(jì)算機(jī)外設(shè);3、設(shè)計(jì)了一種靈活的映射關(guān)系,將人體腳部的動(dòng)作與鍵盤(pán)和鼠標(biāo)輸入建立一個(gè)可變化的映射表,靈活多變適應(yīng)范圍廣。在PC機(jī)終端,通過(guò)軟件可以對(duì)人體運(yùn)動(dòng)信息和鍵盤(pán)動(dòng)作直接做一個(gè)映射,比如,人體往前移動(dòng),可以映射為“向上”按鍵,也可以映射為“W”按鍵。只需要通過(guò)軟件對(duì)上位機(jī)進(jìn)行工作參數(shù)的設(shè)置即可,也即傳輸一個(gè)映射表;
4、給出了一種基于操作系統(tǒng)底層API函數(shù)實(shí)現(xiàn)腳部動(dòng)作到鍵盤(pán)鼠標(biāo)按鍵的映射方法,從軟件層面上代替鍵盤(pán)鼠標(biāo)輸入,方式更為靈活;5、可以作為手部有殘疾的人士專用的無(wú)線計(jì)算機(jī)外設(shè),用以操作計(jì)算機(jī),實(shí)現(xiàn)人機(jī)交互;6、該方法具有可擴(kuò)展性,用戶可以一只腳安放無(wú)線傳感綜合模塊,也可以雙腳同時(shí)安放無(wú)線傳感綜合模塊,實(shí)現(xiàn)更多的按鍵輸入和鼠標(biāo)操作;7、采用陀螺儀 ,加速度計(jì),磁阻傳感器組成的小型航向姿態(tài)測(cè)量系統(tǒng),采用基于多傳感器數(shù)據(jù)融合技術(shù),對(duì)陀螺儀計(jì)算的姿態(tài)角進(jìn)行實(shí)時(shí)修正,提高姿態(tài)信息的計(jì)算精度,有效降低因陀螺儀漂移,精度低帶來(lái)了姿態(tài)誤差;8、采用的角度傳感器,磁阻傳感器,中央處理單元,無(wú)線傳輸模塊等各個(gè)器件和模塊具有體積小,重量輕,低成本,功耗小的特點(diǎn),可以實(shí)現(xiàn)低成本條件下長(zhǎng)時(shí)間具有較高精度的運(yùn)動(dòng)數(shù)據(jù)測(cè)量和解算。
圖I為設(shè)置有無(wú)線傳感綜合模塊的鞋子結(jié)構(gòu)示意圖;圖2為鞋子上局部坐標(biāo)系示意圖;圖3為本發(fā)明中的無(wú)線傳感綜合模塊與上位機(jī)接收模塊的結(jié)構(gòu)示意圖;圖4為無(wú)線傳感綜合模塊采集運(yùn)動(dòng)信息的工作流程圖;圖5為本發(fā)明中的子節(jié)點(diǎn)入網(wǎng)流程圖;圖6為本發(fā)明中運(yùn)動(dòng)信息的采集和傳輸過(guò)程流程圖;圖7為上位機(jī)接收模塊的硬件組成結(jié)構(gòu)示意圖;圖8為本發(fā)明中鞋子局部坐標(biāo)系和世界坐標(biāo)系之間的關(guān)系圖;圖9為XmOmYm與世界坐標(biāo)系XnOnYn的旋轉(zhuǎn)關(guān)系圖。
具體實(shí)施例方式下面將結(jié)合附圖和實(shí)施例對(duì)本發(fā)明作進(jìn)一步的詳細(xì)說(shuō)明。本發(fā)明所述的一種可以代替鍵盤(pán)和鼠標(biāo)作為計(jì)算機(jī)外設(shè)的方法及裝置,如圖I所示,所述的裝置中,在鞋子I底部設(shè)置有無(wú)線傳感綜合模塊2,所述的無(wú)線傳感綜合模塊2與上位機(jī)接收模塊3之間基于無(wú)線通訊進(jìn)行連接,本發(fā)明采用在無(wú)線傳感綜合模塊2和上位機(jī)接收模塊3中分別設(shè)置無(wú)線傳輸模塊的發(fā)送端和接收端的方式實(shí)現(xiàn)數(shù)據(jù)信息傳輸,也可以分別在無(wú)線傳感綜合模塊2和上位機(jī)接收模塊3中各設(shè)置一個(gè)無(wú)線傳輸模塊。上位機(jī)接收模塊3直接與PC機(jī)等終端設(shè)備連接,本發(fā)明中采用USB端口連接。所述的無(wú)線傳感綜合模塊2與上位機(jī)接收模塊3進(jìn)行通信,上位機(jī)接收模塊3用于接收鞋子I的運(yùn)動(dòng)信息。無(wú)線傳感綜合模塊2上采用高效的ARM處理器芯片,腳部六自由度運(yùn)動(dòng)數(shù)據(jù)的解算過(guò)程全部在無(wú)線傳感綜合模塊2內(nèi)部完成,實(shí)現(xiàn)了更高的集成度。所述的無(wú)線傳感綜合模塊2安置在鞋子底部。所述的裝置的硬件系統(tǒng)總體結(jié)構(gòu)實(shí)現(xiàn)如附圖3所示,包括無(wú)線傳感綜合模塊和上位機(jī)接收模塊,所述的無(wú)線傳感綜合模塊含加速度傳感器、角度傳感器、磁阻傳感器、信號(hào)調(diào)理單元、中央處理單元、無(wú)線傳輸模塊和電源單元,所述的電源單元用于為加速度傳感器、角度傳感器、磁阻傳感器、信號(hào)調(diào)理單元、中央處理單元、無(wú)線傳輸模塊供電;所述的加速度傳感器采集鞋子加速度運(yùn)動(dòng)信息并經(jīng)過(guò)信號(hào)調(diào)理單元調(diào)理為可用信號(hào)后,與角度傳感器采集的鞋子角度信息以及磁阻傳感器的地磁場(chǎng)強(qiáng)度信息一起發(fā)送到中央處理單元,經(jīng)過(guò)解算還原出鞋子在世界坐標(biāo)系下的運(yùn)動(dòng)信息,并將鞋子的運(yùn)動(dòng)信息經(jīng)過(guò)無(wú)線傳輸模塊的發(fā)送端發(fā)送給上位機(jī)接收模塊;上位機(jī)接收模塊含無(wú)線傳輸模塊或無(wú)線傳輸模塊的接收端、單片機(jī)、USB/UART接口轉(zhuǎn)換芯片、電源芯片以及USB接口,所述的無(wú)線傳輸模塊的接收端接收無(wú)線傳感綜合模塊2中的無(wú)線傳輸模塊上發(fā)送端的數(shù)據(jù),并通過(guò)接口轉(zhuǎn)換后,轉(zhuǎn)換為可傳輸?shù)母袷健K龅募铀俣葌鞲衅鳛槿S加速度計(jì),采用KXR94加速度計(jì)芯片,KXR94是Kionix公司生產(chǎn)的三軸加速度計(jì)。該加速度計(jì)內(nèi)部已經(jīng)對(duì)溫度和電壓波動(dòng)引起的偏差進(jìn)行了設(shè)計(jì)補(bǔ)償,因此由于電壓和溫度引起的偏差較小。該器件測(cè)量范圍為±2g,靈敏度系數(shù)為560mV/g,非線性度為O. I %,工作電壓為2. 8 3. 3V ;該加速度計(jì)功耗很低,靜態(tài)電流約
I.1mA,可以滿足整體設(shè)計(jì)的低功耗要求。KXR94三路輸出分別代表X軸輸出、Y軸輸出、Z軸輸出,提供給后續(xù)信號(hào)調(diào)理單元之后最終被中央處理單元的ARM的AD采集。
所述的角度傳感器采用ST公司的L3G4200D數(shù)字輸出陀螺儀。該陀螺儀具有I2C/SPI數(shù)字輸出接口,16比特率值的數(shù)據(jù)輸出,2. 4V 3. 6V的寬電源工作電壓,嵌入式power-down和睡眠模式,高抗撞擊能力,可以滿足設(shè)計(jì)的低功耗防撞擊的要求。L3G4200D獲得的角度信號(hào)可以直接傳給中央處理單元中的ARM使用。所述的磁阻傳感器為霍尼韋爾公司的HMC5843,HMC5843是一款三軸磁阻傳感器,具有12-bitADC,低電壓運(yùn)行(2. 5-3. 3V)。HMC5843采用霍尼韋爾的各向異性磁阻(AMR)技術(shù),主要特點(diǎn)在于軸向高靈敏度和線性、固相結(jié)構(gòu)、垂直軸間低靈敏度,用于測(cè)量地球磁場(chǎng)的方向和磁力,從十萬(wàn)分之幾高斯到6高斯(gauss)。所述的中央處理單元是ARM7 LPC1769。該芯片采用Cortex_M3微處理器,主頻最高可達(dá)到120MHz,可以滿足對(duì)傳感器信息實(shí)時(shí)采集并且在線計(jì)算得到姿態(tài)信息,位移信息的要求,LPC1769具有體積小,成本低,價(jià)格便宜的特點(diǎn),可以有效實(shí)現(xiàn)本發(fā)明集成度高、低功耗、低成本的嵌入式應(yīng)用。LPC1769包含高達(dá)512KB的flash存儲(chǔ)器、64KB的數(shù)據(jù)存儲(chǔ)器、以太網(wǎng)接口、8通道DMA控制器、4個(gè)UART、2條CAN通道、2個(gè)SSP控制器、SPI接口、3個(gè)IIC接口、8通道的12位ADC、10位DAC、電機(jī)控制PWM等,接口豐富,操作簡(jiǎn)單。ARM處理器通過(guò)自帶AD采集三路加速度計(jì)信息和三路磁阻傳感器信息,通過(guò)SPI接口讀取陀螺儀信息,得到全部傳感器的數(shù)字信號(hào)后通過(guò)姿態(tài)航向解算算法在線得到姿態(tài)信息,將最終結(jié)果通過(guò)無(wú)線傳輸模塊傳送至外部設(shè)備。工作過(guò)程如附圖6所示ARM初始化后開(kāi)始采集加速度、角度、磁阻傳感器信息,采集完畢后,進(jìn)入數(shù)據(jù)解算程序,即將加速度解算為鞋子的位移并解算得到鞋子相對(duì)于世界坐標(biāo)系的姿態(tài)角,作為鞋子的運(yùn)動(dòng)信息存入片上緩沖區(qū),并將鞋子運(yùn)動(dòng)信息向上位機(jī)接收模塊發(fā)送。無(wú)線傳輸模塊采用ZigBee模塊。ZigBee無(wú)線通信技術(shù)是一種低速率、低功耗、低復(fù)雜度、低成本的雙向無(wú)線通信網(wǎng)絡(luò)技術(shù),可廣泛應(yīng)用于工業(yè)監(jiān)控、安全系統(tǒng)、傳感器網(wǎng)絡(luò)、 智能家居等領(lǐng)域。ZigBee的優(yōu)勢(shì)在于低功耗,相較藍(lán)牙或者WiFi待機(jī)時(shí)間可提高幾十倍;低成本,降低了對(duì)通訊控制器的要求,而且協(xié)議專利免費(fèi);高容量,一個(gè)主節(jié)點(diǎn)可以管理多個(gè)子節(jié)點(diǎn),最多可達(dá)254個(gè)子節(jié)點(diǎn);此外還具有短時(shí)延,高安全,免執(zhí)照頻段等優(yōu)勢(shì)。Zigbee模塊可以滿足設(shè)計(jì)應(yīng)用的要求。無(wú)線傳輸模塊包括發(fā)送和接收兩部分,分別安裝在無(wú)線傳感綜合模塊以及上位機(jī)接收模塊中,用于數(shù)據(jù)通信。電源單元采用鋰電池供電,并加入AMS1117-3.3作為電源穩(wěn)壓芯片,使電源單元輸出穩(wěn)定為3. 3V,可以為ARM、三軸加速度計(jì)、數(shù)字陀螺儀、及無(wú)線傳輸模塊供電。AMSl117-3. 3芯片輸入電壓范圍4. 75 12V,輸出電壓3. 267 3. 333V,輸出電流1A,工作溫度-40 125°C。電池采用可充電鋰電池·,工作電壓6V,充放電次數(shù)可達(dá)500次,即使使用很頻繁也可以保證至少一年的使用時(shí)間。上位機(jī)接收模塊主要包括了無(wú)線傳輸模塊、單片機(jī)、USB/UART接口轉(zhuǎn)換芯片、電源芯片以及USB接口。如附圖7所示。無(wú)線傳輸模塊主要用于接收無(wú)線傳感綜合模塊發(fā)送過(guò)來(lái)的鞋子的運(yùn)動(dòng)信息數(shù)據(jù)。而信號(hào)類型轉(zhuǎn)換芯片為FT232R,F(xiàn)T232R為USB/UART轉(zhuǎn)換芯片,其主要功能是在內(nèi)部硬件邏輯作用下實(shí)現(xiàn)USB和一步串行數(shù)據(jù)傳輸接口的轉(zhuǎn)換。芯片內(nèi)部繼承了 1024位的EEPROM和多頻率時(shí)鐘發(fā)生器(6MHz,12MHz,24MHz,48MHz)。電源芯片采用上文提到的AMSl117-3. 3,提供3. 3V輸出為FT232R和Zigbee模塊供電。USB接口用于與終端設(shè)備如PC機(jī)相連,完成數(shù)據(jù)傳輸以及電源供電功能。如附圖4所示,采用上述的無(wú)線傳感綜合模塊采集運(yùn)動(dòng)數(shù)據(jù)的工作流程可以描述為I.打開(kāi)電源并選擇工作模式鼠標(biāo)或鍵盤(pán)工作模式。2.在上位機(jī)接收模塊已經(jīng)插入PC機(jī),且上位機(jī)軟件打開(kāi)的情況下,打開(kāi)無(wú)線傳輸綜合模塊電源;中央處理單元的ARM、加速度計(jì)、數(shù)字陀螺、磁阻傳感器、信號(hào)調(diào)理單元以及電源單元進(jìn)行上電和初始化;3.無(wú)線傳輸模塊開(kāi)始自組網(wǎng)工作,子節(jié)點(diǎn)的入網(wǎng)流程如附圖5所示,具體為(A)需接入的節(jié)點(diǎn)上電電并初始化,延時(shí)后,判斷子節(jié)點(diǎn)是否收到信標(biāo)幀,如果沒(méi)有收到,則認(rèn)為子結(jié)點(diǎn)入網(wǎng)失敗;如果收到,則轉(zhuǎn)(B);(B)監(jiān)聽(tīng)信標(biāo)幀選擇主節(jié)點(diǎn);(C)下位機(jī)無(wú)線傳輸模塊發(fā)送入網(wǎng)請(qǐng)求給上位機(jī)接收模塊,如果下位機(jī)接收到主節(jié)點(diǎn)的回復(fù),則轉(zhuǎn)(D);如果下位機(jī)沒(méi)有接收到主節(jié)點(diǎn)回復(fù),則轉(zhuǎn)(E);(D)分配短地址給子節(jié)點(diǎn),此時(shí)子節(jié)點(diǎn)入網(wǎng)成功;(E)判斷是否存在主節(jié)點(diǎn),如果沒(méi)有主節(jié)點(diǎn)則認(rèn)為子結(jié)點(diǎn)入網(wǎng)失敗,如果存在主節(jié)點(diǎn),則返回(B);4.組網(wǎng)成功后上位機(jī)接收模塊發(fā)送鞋子數(shù)據(jù)采集指令,中央處理單元開(kāi)始采集加速度傳感器、角度傳感器、磁阻傳感器的數(shù)據(jù);5.加速度傳感器采集鞋子加速度運(yùn)動(dòng)信息并經(jīng)過(guò)信號(hào)調(diào)理單元調(diào)理為可用信號(hào)后,與角度傳感器采集的鞋子角度信息以及磁阻傳感器的地磁場(chǎng)強(qiáng)度信息一起發(fā)送到中央處理單元進(jìn)行解算,得到鞋子的運(yùn)動(dòng)信息,包括鞋子的位置信息和角度信息;6.將緩存中運(yùn)動(dòng)信息數(shù)據(jù)通過(guò)無(wú)線傳輸模塊進(jìn)行傳輸,傳輸給上位機(jī)接收模塊;7.上位機(jī)接收模塊接收運(yùn)動(dòng)信息數(shù)據(jù),后通過(guò)USB直接連接PC機(jī)。上位機(jī)中的單片機(jī)將人體腳部的移動(dòng)信息映射為鍵盤(pán)和鼠標(biāo)輸入,并觸發(fā)硬件中斷,分別根據(jù)兩種工作模式,觸發(fā)鍵盤(pán)中斷或鼠標(biāo)中斷,將所映射的鍵盤(pán)掃描碼或鼠標(biāo)位置等信息傳輸?shù)紹IOS數(shù)據(jù)緩沖區(qū),以備操作系統(tǒng)調(diào)用。
8.如果上位機(jī)直接控制發(fā)送結(jié)束指令,則采集與通訊工作流停止,并退本次應(yīng)用;9.重新選擇工作模式,轉(zhuǎn)入步驟I ;或直接退出程序并關(guān)閉鞋子電源。其中人體腳部運(yùn)動(dòng)信息解算采用捷聯(lián)慣導(dǎo)算法,鞋子處于運(yùn)動(dòng)狀態(tài)時(shí),使用陀螺儀測(cè)量的所在軸向的旋轉(zhuǎn)角速率代入捷聯(lián)慣導(dǎo)算法中計(jì)算得到鞋子的姿態(tài)角。在計(jì)算姿態(tài)角之前,先需對(duì)計(jì)算過(guò)程中使用到的坐標(biāo)系進(jìn)行具體定義。I、鞋子局部坐標(biāo)系原點(diǎn)為本發(fā)明完成的姿態(tài)航向測(cè)量參考系統(tǒng)(鞋子上的無(wú)線傳感綜合模塊)的幾何中心,Xb, yb, Zb軸分別指向鞋子的橫軸、縱軸和豎軸向上,如圖2。2、世界坐標(biāo)系 原點(diǎn)為初始狀態(tài)下鞋子局部坐標(biāo)系的原點(diǎn),xn,yn, Zn三軸分別指地理東向、北向、天向。姿態(tài)角實(shí)際上是世界坐標(biāo)系O-ENU東北天與鞋子局部坐標(biāo)系之間的方位關(guān)系,設(shè)Ψ為航向角,Θ為俯仰角,Y為橫滾角,各角度取繞鞋子局部坐標(biāo)系坐標(biāo)軸逆時(shí)針旋轉(zhuǎn)為正,即航向角鞋子北偏西為正,俯仰角鞋子抬頭為正,橫滾角鞋子右側(cè)向下為正。世界坐標(biāo)系繞Zn軸轉(zhuǎn)Ψ角,繞Xn軸轉(zhuǎn)Θ角,再繞yn軸轉(zhuǎn)角Y,則得鞋子局部坐標(biāo)系和世界坐標(biāo)系之間的關(guān)系如附圖8所示。完成坐標(biāo)系的定義和坐標(biāo)系之間轉(zhuǎn)換關(guān)系的定義后,即可使用捷聯(lián)慣導(dǎo)算法利用陀螺儀測(cè)量所在軸向旋轉(zhuǎn)角速率實(shí)時(shí)更新姿態(tài)矩陣,解算出姿態(tài)角,本發(fā)明使用四元數(shù)法更新姿態(tài)矩陣,并采用四階龍格庫(kù)塔法解算微分方程。具體的解算步驟如下I、確定姿態(tài)矩陣由世界坐標(biāo)系和鞋子局部坐標(biāo)系之間的角度變換關(guān)系航向Yaw(F)—俯仰Pitch (Θ )一橫滾Roll ( Y ),可得姿態(tài)轉(zhuǎn)移矩陣
^cosf O -sinfVI O O V cos ^ sin ψ O)Cbn= O I O O cos0 sin ^ -sin ^ cos ψ 0
^sinγ 0 cos;/人0 -sin沒(méi) cos6^、 0 0 IJ f cos;/ cos y/ - sin γ sin <9 sin cos;/ sin ψ + sin γ sin Θ cos ψ -sin;/ cos Θ、=—cos沒(méi)sin ψcos(9cosy/sin θ
vsin y cos ψ + cos γ sin θ sin ψ sin γ sin ψ - cos γ sin θ cos ψ cos γ cos Θ )2、使用四元數(shù)表示姿態(tài)矩陣
9o +2(仏~C11 C12 C13Cbn = 2( ~q0q}) ql -q; +ql~ql 2(q2q3+q0ql) = C21 C22 C23
、2( + H) 2( _ ^0 ) ~Ql —《2 +《3 y C32 ^33 J此處,q0, q1; q2, q3表示四元數(shù)。3、更新四元數(shù)微分方程使用四階龍格庫(kù)塔法解四元數(shù)微分方程更新四元數(shù)
權(quán)利要求
1.一種利用鞋子代替鍵盤(pán)鼠標(biāo)作為計(jì)算機(jī)外設(shè)的方法,其特征在于所述的方法首先通過(guò)設(shè)置在鞋子內(nèi)的無(wú)線傳感綜合模塊采集和確定鞋子的運(yùn)動(dòng)信息,然后通過(guò)無(wú)線傳輸模塊將鞋子的運(yùn)動(dòng)信息傳送至上位機(jī)接收模塊,上位機(jī)接收模塊通過(guò)USB直接連接PC機(jī),在上位機(jī)接收模塊或PC機(jī)中,將鞋子的運(yùn)動(dòng)信息根據(jù)當(dāng)前鍵盤(pán)模式或鼠標(biāo)模式轉(zhuǎn)換為相應(yīng)的鍵盤(pán)掃描碼或者鼠標(biāo)移動(dòng)信息和按鍵信息,達(dá)到利用鞋子的運(yùn)動(dòng)信息代替鍵盤(pán)或鼠標(biāo)的作用;所述的鞋子的運(yùn)動(dòng)信息包括鞋子的位移變化和姿態(tài)角變化信息。
2.根據(jù)權(quán)利要求I所述的一種利用鞋子代替鍵盤(pán)鼠標(biāo)作為計(jì)算機(jī)外設(shè)的方法,其特征在于所述的確定鞋子的位置和姿態(tài)角是通過(guò)無(wú)線傳感綜合模塊中的基于ARM的中央處理單元實(shí)現(xiàn)的,根據(jù)捷聯(lián)慣導(dǎo)系統(tǒng)中加速度計(jì)和數(shù)字陀螺測(cè)量的信息,計(jì)算得到鞋子局部坐標(biāo)系相對(duì)于世界坐標(biāo)系的位置和姿態(tài)角; 當(dāng)鞋子處于靜止或低速平穩(wěn)運(yùn)動(dòng)時(shí),使用根據(jù)加速度計(jì)和磁阻傳感器計(jì)算得到的姿態(tài)角對(duì)根據(jù)捷聯(lián)慣導(dǎo)算法計(jì)算得到的姿態(tài)信息進(jìn)行修正,具體為使用三軸加速度信息計(jì)算出俯仰角Θ和橫滾角Y ;結(jié)合姿態(tài)角信息和磁阻傳感器測(cè)量到的地磁場(chǎng)強(qiáng)度信息計(jì)算得到磁航向,磁航向加上當(dāng)?shù)卮牌堑玫降乩砗较蚪铅贰?,得到最終的鞋子的位置(xn,yn,zn)和修正后的姿態(tài)角(θ,γ, Ψ),作為鞋子的六自由度運(yùn)動(dòng)數(shù)據(jù)發(fā)送至上位機(jī)。
3.根據(jù)權(quán)利要求I所述的一種利用鞋子代替鍵盤(pán)鼠標(biāo)作為計(jì)算機(jī)外設(shè)的方法,其特征在于所述的上位機(jī)接收模塊的具體工作過(guò)程為上位機(jī)接收模塊中的單片機(jī)將鞋子的運(yùn)動(dòng)信息通過(guò)映射表映射為鍵盤(pán)或鼠標(biāo)輸入,得到鍵盤(pán)掃描碼或者鼠標(biāo)移動(dòng)信息和按鍵信息,并將輸入信息轉(zhuǎn)換為標(biāo)準(zhǔn)的USB外設(shè)信號(hào),觸發(fā)相應(yīng)的硬件中斷,將鍵盤(pán)掃描碼或者鼠標(biāo)移動(dòng)和按鍵信息傳輸給BIOS的緩沖區(qū),以備系統(tǒng)調(diào)用。
4.根據(jù)權(quán)利要求I所述的一種利用鞋子代替鍵盤(pán)鼠標(biāo)作為計(jì)算機(jī)外設(shè)的方法,其特征在于所述的PC機(jī)接收上位機(jī)接收模塊的運(yùn)動(dòng)信息后,基于所述的映射表和Windows API函數(shù),將所采集到的運(yùn)動(dòng)信息映射為鍵盤(pán)掃描碼或虛擬按鍵值,或者映射為鼠標(biāo)按鍵消息,模擬系統(tǒng)輸入,實(shí)現(xiàn)鞋子運(yùn)動(dòng)信息映射為鍵盤(pán)按鍵和鼠標(biāo)移動(dòng)消息。
5.一種利用鞋子代替鍵盤(pán)鼠標(biāo)作為計(jì)算機(jī)外設(shè)的裝置,其特征在于所述的裝置包括設(shè)置在鞋子上的無(wú)線傳感綜合模塊和設(shè)置在PC機(jī)終端的上位機(jī)接收模塊,所述的無(wú)線傳感綜合模塊與上位機(jī)接收模塊之間通過(guò)無(wú)線傳輸方式實(shí)現(xiàn)運(yùn)動(dòng)信息的傳輸;所述的無(wú)線傳感綜合模塊包括加速度傳感器、角度傳感器、磁阻傳感器、信號(hào)調(diào)理單元、中央處理單元、無(wú)線傳輸模塊和電源單元,所述的電源單元用于為加速度傳感器、角度傳感器、磁阻傳感器、信號(hào)調(diào)理單元、中央處理單元和無(wú)線傳輸模塊供電;所述的加速度傳感器采集鞋子加速度運(yùn)動(dòng)信息,與磁阻傳感器的地磁場(chǎng)強(qiáng)度信息一起經(jīng)過(guò)信號(hào)調(diào)理單元調(diào)理為可用信號(hào)后,與角度傳感器采集的鞋子角度信息一起發(fā)送到中央處理單元,中央處理器單元采用基于ARM的芯片,對(duì)上述的加速度、角速度和地磁場(chǎng)強(qiáng)度信息進(jìn)行解算,還原出鞋子在世界坐標(biāo)系下的運(yùn)動(dòng)信息,并將鞋子的運(yùn)動(dòng)信息經(jīng)過(guò)無(wú)線傳輸模塊的發(fā)送端發(fā)送給上位機(jī)接收模塊;上位機(jī)接收模塊主要包括無(wú)線傳輸模塊、單片機(jī)、USB/UART接口轉(zhuǎn)換芯片、電源芯片以及USB接口,所述的無(wú)線傳輸模塊用于接收無(wú)線傳感綜合模塊的運(yùn)動(dòng)信息,并通過(guò)USB/UART接口轉(zhuǎn)換芯片轉(zhuǎn)換后,成為可傳輸?shù)母袷剑琔SB接口用于連接PC機(jī)終端;所述的電源芯片用于為無(wú)線傳輸模塊、USB/UART接口轉(zhuǎn)換芯片以及USB接口提供穩(wěn)定電源。
6.根據(jù)權(quán)利要求5所述一種利用鞋子代替鍵盤(pán)鼠標(biāo)作為計(jì)算機(jī)外設(shè)的裝置,其特征在于上位機(jī)接收模塊中的單片機(jī)的工作過(guò)程為將鞋子的運(yùn)動(dòng)信息通過(guò)映射表映射為鍵盤(pán)或鼠標(biāo)輸入,得到鍵盤(pán)掃描碼或者鼠標(biāo)移動(dòng)信息和按鍵信息,并將輸入信息轉(zhuǎn)換為標(biāo)準(zhǔn)的 USB外設(shè)信號(hào),觸發(fā)相應(yīng)的硬件中斷,將鍵盤(pán)掃描碼或者鼠標(biāo)移動(dòng)和按鍵信息傳輸給BIOS的緩沖區(qū),以備系統(tǒng)調(diào)用。
全文摘要
本發(fā)明公開(kāi)了一種利用鞋子代替鍵盤(pán)鼠標(biāo)作為計(jì)算機(jī)外設(shè)的方法及其實(shí)現(xiàn)裝置,屬于自動(dòng)化、電子通訊以及計(jì)算機(jī)接口技術(shù)領(lǐng)域。本發(fā)明通過(guò)設(shè)置在鞋子內(nèi)的無(wú)線傳感綜合模塊采集和確定鞋子的運(yùn)動(dòng)信息,然后將鞋子的運(yùn)動(dòng)信息根據(jù)當(dāng)前鍵盤(pán)模式或鼠標(biāo)模式轉(zhuǎn)換為相應(yīng)的鍵盤(pán)掃描碼或者鼠標(biāo)移動(dòng)信息和按鍵信息,達(dá)到利用鞋子的運(yùn)動(dòng)信息代替鍵盤(pán)或鼠標(biāo)的作用。本發(fā)明將鞋子的運(yùn)動(dòng)信息與鍵盤(pán)和鼠標(biāo)輸入建立一個(gè)可變化的映射表,作為一種新型的人機(jī)交互式,既可以為殘疾人控制計(jì)算機(jī)使用,還可以用于電子游戲娛樂(lè),完成人體腳部移動(dòng)對(duì)游戲人物移動(dòng)的控制,控制方式靈活多變適應(yīng)范圍廣。
文檔編號(hào)G06F3/01GK102722248SQ201210181309
公開(kāi)日2012年10月10日 申請(qǐng)日期2012年6月4日 優(yōu)先權(quán)日2012年6月4日
發(fā)明者劉高峰, 呂建勛, 宋子健 申請(qǐng)人:劉高峰, 宋子健