基于iNEMO模塊的姿態(tài)檢測(cè)及數(shù)據(jù)傳輸系統(tǒng)設(shè)計(jì)
掃描二維碼
隨時(shí)隨地手機(jī)看文章
近年來(lái),MEMS技術(shù)的發(fā)展開(kāi)辟了一個(gè)全新的技術(shù)領(lǐng)域和產(chǎn)業(yè),采用MEMS技術(shù)制作的微傳感器、微執(zhí)行器、電力電子器件等在航空、航天、汽車、生物醫(yī)學(xué)、軍事等領(lǐng)域中都有著十分廣闊的應(yīng)用前景,同時(shí)人體姿態(tài)檢測(cè)和信息融合技術(shù)在人體醫(yī)學(xué)工程、健康監(jiān)護(hù)等領(lǐng)域的研究也逐漸開(kāi)展起來(lái)。
目前人體姿態(tài)檢測(cè)的主要手段有圖像分析和加速度分析兩種,圖像分析的算法通過(guò)攝像捕捉人體運(yùn)動(dòng)姿態(tài),經(jīng)過(guò)一定的圖像處理技術(shù)確定人體的姿態(tài),該方法需要在人體運(yùn)動(dòng)的區(qū)域安裝攝像頭,價(jià)格昂貴、具有一定的局限性;傳統(tǒng)的加速度算法采用SVM (Support Vector Machine) 算法對(duì)數(shù)據(jù)進(jìn)行預(yù)處理,然后用KFD(Kernel Fisher Discriminant)算法和k-NN(Nearest Neighbour)算法進(jìn)行精確判定,該方法計(jì)算量大、編程復(fù)雜。
本系統(tǒng)提出的算法主要是在加速度計(jì)、陀螺儀、磁力計(jì)采集人體運(yùn)動(dòng)姿態(tài)信息的基礎(chǔ)上,運(yùn)用擴(kuò)展卡爾曼濾波將數(shù)據(jù)進(jìn)行融合,得到人體腰部和腿部的角度信息,然后通過(guò)大量實(shí)驗(yàn)建立與姿態(tài)的對(duì)應(yīng)關(guān)系,采用這種方式可以利用加速度計(jì)與磁力計(jì)克服單獨(dú)采用陀螺儀引起的姿態(tài)角發(fā)散,另外利用陀螺儀可以克服由于振動(dòng)對(duì)于加速度計(jì)的影響與由于軟硬鐵磁對(duì)于磁力計(jì)的影響。
1 系統(tǒng)整體設(shè)計(jì)方案
系統(tǒng)分為上位機(jī)子系統(tǒng)和下位機(jī)子系統(tǒng),下位機(jī)子系統(tǒng)由電源模塊、2個(gè)iNEMO模塊、GPRS模塊和主控板組成,其中電源模塊給整個(gè)系統(tǒng)提供3.3V和5V的工作電壓,兩個(gè)iNEMO模塊分別固定在人體的腰部和腿部,完成對(duì)加速度計(jì)、磁力計(jì)、陀螺儀的信息采集,然后通過(guò)串口發(fā)送到主控板,主控板進(jìn)行卡爾曼濾波融合出腰部和腿部的角度,然后根據(jù)腰部和腿部的角度值完成姿態(tài)的檢測(cè),最后GPRS模塊通過(guò)socket協(xié)議將姿態(tài)信息打包傳送到上位機(jī),上位機(jī)實(shí)現(xiàn)遠(yuǎn)程監(jiān)控。
圖1 系統(tǒng)整體設(shè)計(jì)方案
2 數(shù)據(jù)融合原理
在慣性導(dǎo)航領(lǐng)域,求取姿態(tài)角的數(shù)學(xué)表達(dá)式叫做方向余弦矩陣,用于表示方向余弦矩陣有兩種方式:歐拉角與四元數(shù)。歐拉角的優(yōu)點(diǎn)是比較直觀,缺點(diǎn)是在俯仰角為正負(fù)90°時(shí)系統(tǒng)存在不穩(wěn)定奇點(diǎn)。四元數(shù)的優(yōu)點(diǎn)是當(dāng)俯仰角為正負(fù)90°時(shí)系統(tǒng)不受影響,缺點(diǎn)是不直觀,下面是它們之間的相互轉(zhuǎn)換公式。
歐拉角轉(zhuǎn)換成四元數(shù)
四元數(shù)轉(zhuǎn)換成歐拉角
在程序中使用的是四元數(shù),由于四元數(shù)不能直觀的表示輸出的角度,所以首先根據(jù)陀螺儀求取四元數(shù),再將四元數(shù)轉(zhuǎn)換成姿態(tài)角。根據(jù)運(yùn)動(dòng)體安裝的三軸陀螺儀,可以得到在運(yùn)動(dòng)體坐標(biāo)系下的三軸角速度( wx,wy,wz),用三軸角速度更新四元數(shù)
然后利用加速度計(jì)的信息,采用卡爾曼濾波的方法來(lái)對(duì)四元數(shù)進(jìn)行修正,設(shè)系統(tǒng)的狀態(tài)空間方程為
其中,X(k)是k時(shí)刻的系統(tǒng)狀態(tài),U(k)是k時(shí)刻對(duì)系統(tǒng)的控制量。A和B是系統(tǒng)參數(shù)。Z(k)是k時(shí)刻的測(cè)量值,H是測(cè)量系統(tǒng)的參數(shù)。W(k)和V(k)分別表示過(guò)程和測(cè)量的噪聲。
為了提高慣性導(dǎo)航儀的啟動(dòng)速度,需要利用歐拉角求取初始的四元數(shù),首先根據(jù)運(yùn)動(dòng)體上三軸加速度計(jì)輸出的三軸加速度( fx,fy,fz),求取俯仰角θ與橫滾角φ
隨后讀取磁力計(jì)輸出的三軸磁場(chǎng)強(qiáng)度
,然后用加速度計(jì)對(duì)磁力計(jì)進(jìn)行傾斜補(bǔ)償
根據(jù)傾斜補(bǔ)償后的磁力計(jì)輸出,可以求得偏航角為
利用公式(3-5)和(3-7)可以完成對(duì)四元數(shù)的初始化工作。