楊夢瑤 種陽 汪宇晴 張卓凡
摘要:為了跟蹤定位徒步行走人員的實(shí)時(shí)位置,設(shè)計(jì)了一種基于三條件零速檢測的行人定位導(dǎo)航系統(tǒng)。首先采集腳面的9軸數(shù)據(jù):三軸加速度、角速度、磁強(qiáng),然后利用卡爾曼濾波算法進(jìn)行濾波處理,對(duì)處理后的數(shù)據(jù)用三條件判斷的零速檢測算法判斷運(yùn)動(dòng)狀態(tài)零速時(shí)刻,運(yùn)用行人航跡推算算法進(jìn)行定位解算。經(jīng)過實(shí)驗(yàn)驗(yàn)證:該方法準(zhǔn)確度達(dá)到94.5%,滿足行人的導(dǎo)航定位的要求,并提高了導(dǎo)航定位的實(shí)時(shí)性與準(zhǔn)確性。
關(guān)鍵詞:導(dǎo)航;行人定位;行人航跡推算;零速檢測;卡爾曼濾波
中圖分類號(hào):TP212.1? ? ?文獻(xiàn)標(biāo)識(shí)碼:A
文章編號(hào):1009-3044(2019)26-0105-03
開放科學(xué)(資源服務(wù))標(biāo)識(shí)碼(OSID):
Abstract: In order to track and locate the real-time position of hikers, the paper designed a pedestrian positioning and navigation system based on three-condition zero-velocity detection. Firstly, sampling the 9-axis data of users foot, including tri-axial acceleration, angular velocity and magnetic intensity. Then, using the Kalman filter algorithm to filter ,using the zero-speed detection algorithm based on three-condition to judge the zero velocity moment. Last, using pedestrian-dead-reckoning to position the location. The experimental results show that the accuracy of the methods reaches 94.5%, which meets the requirements of pedestrian navigation and positioning, and improves the real-time and accuracy of navigation and positioning.
Key words: navigation; pedestrian position; pedestrian-dead-reckoning; zero velocity detection; kalman filtering
1 引言
捷聯(lián)慣導(dǎo)系統(tǒng)是一種完全自主導(dǎo)航系統(tǒng)[1],具有短時(shí)高精度和高穩(wěn)定性等特點(diǎn),在軍事及民用方面都有較廣泛的應(yīng)用前景[2]。在我國,對(duì)行人導(dǎo)航的研究起步較晚,目前市面上大多數(shù)個(gè)人導(dǎo)航系統(tǒng)主要依靠GPS定位[3]。在郁閉度較高的空間環(huán)境下,衛(wèi)星信號(hào)無法正常接收,常規(guī)的GPS衛(wèi)星定位系統(tǒng)不能正常工作[4],WIFI等無線網(wǎng)絡(luò)導(dǎo)航方式精度較高,但需要預(yù)設(shè)傳感器節(jié)點(diǎn),并標(biāo)定信號(hào)強(qiáng)度與地理位置的關(guān)系,成本高且不適于廣闊的場地[5]。慣性導(dǎo)航具有不怕干擾、隱蔽性好、完全自主等優(yōu)點(diǎn)[6],該定位方式應(yīng)用逐漸廣泛。行人航跡推算算法的定位精度取決于初始位置和姿態(tài)信息的精確性以及推算過程中速度的航向信息求解,包括航向、步頻和步長的估計(jì)。目前,常用的零速檢測算法是基于對(duì)傳感器輸出的加速度和角速度的模值、方差以及幅值的單一值與已設(shè)定的閾值進(jìn)行比較,提取出步態(tài)中的零速點(diǎn)。但這類算法易誤判零速區(qū)間導(dǎo)致丟失零速點(diǎn),導(dǎo)致行人的速度、位置誤差增加[7]。卡爾曼濾波算法在數(shù)據(jù)濾波和參數(shù)評(píng)估方面效果顯著[8]。原始數(shù)據(jù)波形圖中存在噪聲干擾,可通過卡爾曼濾波算法對(duì)其進(jìn)行去除。
本文采用一種基于三條件零速檢測[8]的行人定位導(dǎo)航系統(tǒng)。利用卡爾曼濾波算法進(jìn)行濾波處理,利用三條件判斷的零速檢測算法確定零速區(qū)間,使用行人航跡推算(PDR)算法解算行人的位置與姿態(tài)信息。提高了定位導(dǎo)航的實(shí)時(shí)性與準(zhǔn)確性。
2 系統(tǒng)結(jié)構(gòu)
本系統(tǒng)基于零速檢測,通過程序設(shè)計(jì)和誤差補(bǔ)償裝置來實(shí)現(xiàn)較為準(zhǔn)確的定位導(dǎo)航,并通過無線技術(shù)實(shí)現(xiàn)實(shí)時(shí)監(jiān)測。結(jié)構(gòu)流程如圖1所示。
2 系統(tǒng)設(shè)計(jì)
2.1 卡爾曼濾波算法的設(shè)計(jì)
根據(jù)設(shè)計(jì)內(nèi)容建立系統(tǒng)狀態(tài)方程:
其中,系統(tǒng)在[k]時(shí)刻的狀態(tài)為[Xk∈Rn],對(duì)應(yīng)狀態(tài)的觀測信號(hào)為[Yk∈Rm],[A]為系統(tǒng)的狀態(tài)轉(zhuǎn)移矩陣,[Γ]為噪聲驅(qū)動(dòng)矩陣,[w]為過程噪聲序列,[B]為觀測矩陣,[vk]為量測噪聲。進(jìn)而根據(jù)狀態(tài)一步預(yù)測方程、狀態(tài)估值計(jì)算方程、濾波增益計(jì)算方程、一步預(yù)測協(xié)方差方程和估計(jì)協(xié)方差方程,建立卡爾曼濾波器。
卡爾曼濾波器可以衰減數(shù)據(jù)中白噪聲干擾,優(yōu)化原始數(shù)據(jù),從而提高導(dǎo)航定位精度。
本設(shè)計(jì)中
2.2 零速檢測算法的設(shè)計(jì)
零速檢測法常用的方法為:加速度幅值檢測法、加速度方差檢測法和角速度幅值檢測法。使用其中任何一種方法得到的零速區(qū)間判斷準(zhǔn)確度都較差,故本文使用三條件法對(duì)零速點(diǎn)進(jìn)行檢測(本方法中,以“1”表示處于靜止?fàn)顟B(tài),以“0”表示處于運(yùn)動(dòng)狀態(tài))。
通過公式(3)對(duì)運(yùn)動(dòng)狀態(tài)進(jìn)行判斷:
式中[thamin]和[thamax]是給定的加速度閾值的上下限, [abk]表示三軸加速度的模值,[σ2abk]表示合成加速度的方差,[thσ2max]為給定方差閾值的上限值,? [ωbk]表示三相角速度的模值,[thωmax]是給定閾值的上限值。
以上三個(gè)條件進(jìn)行“與”邏輯運(yùn)算,即當(dāng)邏輯運(yùn)算結(jié)果為“1”時(shí),才能判斷此時(shí)運(yùn)動(dòng)狀態(tài)為靜止。
3 實(shí)驗(yàn)驗(yàn)證
本文設(shè)計(jì)嵌入式軟件與硬件系統(tǒng),并開發(fā)了一款基于高德地圖的手機(jī)APP,通過無線傳輸模塊接收硬件系統(tǒng)發(fā)送的數(shù)據(jù)并進(jìn)行處理,在地圖上顯示實(shí)驗(yàn)人員的實(shí)時(shí)位置,實(shí)現(xiàn)定位導(dǎo)航系統(tǒng)功能。其功能模塊主要分為四個(gè)部分。
1) 數(shù)據(jù)采集模塊:使用MPU9150,該模塊進(jìn)行三軸加速度、角速度、磁場強(qiáng)度數(shù)據(jù)采集;
2) 中央處理器模塊:CPU使用STM32F411,該模塊可以實(shí)現(xiàn)對(duì)數(shù)據(jù)信息的儲(chǔ)存和轉(zhuǎn)換;
3) 無線通信模塊:使用ESP8285WIFI模塊;
4) 供電模塊。
手機(jī)APP設(shè)計(jì)有主界面登陸與連接界面??赏ㄟ^WIFI連接界面進(jìn)行手機(jī)與測試模塊的連接并實(shí)現(xiàn)基本的計(jì)步功能,APP主界面如圖2所示。
測試模塊傳感器放置于實(shí)驗(yàn)人員腳部,手機(jī)APP獲取實(shí)時(shí)數(shù)據(jù)信息,在北京林業(yè)大學(xué)操場進(jìn)行實(shí)驗(yàn)測試,實(shí)驗(yàn)裝置如圖3所示。
3.1 零速檢測仿真實(shí)驗(yàn)
使用MPU9150對(duì)行人正常步行狀態(tài)下三軸加速度、角速度進(jìn)行采集,并運(yùn)用公式(3)進(jìn)行計(jì)算判定。采集結(jié)果如圖4(a)、圖4(b)所示。
由圖4(a)、圖4(b)中可以觀察到步態(tài)穩(wěn)定過程,但是圖中[3s-4s]處和[4s-5s]處存在噪聲干擾,對(duì)零速點(diǎn)的判別存在影響。
3.2 卡爾曼濾波實(shí)驗(yàn)
使用卡爾曼濾波算法對(duì)采集的加速度和角速度模值數(shù)據(jù)進(jìn)行處理。濾波效果如圖5(a)、(b)所示。
由圖5(a)、(b)可以得出,使用卡爾曼濾波后的波形減少了原始數(shù)據(jù)中的一部分噪聲干擾,數(shù)據(jù)可讀性更高,零速區(qū)間的判斷也更加準(zhǔn)確。
3.3 計(jì)步實(shí)驗(yàn)
采取零速檢測法進(jìn)行計(jì)步實(shí)驗(yàn),數(shù)據(jù)統(tǒng)計(jì)見表1。
由上表數(shù)據(jù)可知,數(shù)據(jù)經(jīng)過三條件法和卡爾曼濾波算法處理后,仍可以較為準(zhǔn)確地統(tǒng)計(jì)出行人行走的步數(shù),計(jì)步準(zhǔn)確率在98%以上。
3.4 行人航跡推算實(shí)驗(yàn)
數(shù)據(jù)統(tǒng)計(jì)見表2。
由上表數(shù)據(jù)可知,行走實(shí)際距離與探測距離相對(duì)誤差較小,最大誤差為5.5%,精確度達(dá)到94.5%,能夠滿足導(dǎo)航定位需求。
4 結(jié)論
本文設(shè)計(jì)了一種基于三條件零速檢測的行人定位系統(tǒng)。系統(tǒng)硬件包括數(shù)據(jù)采集模塊、主處理模塊、無線通信模塊、供電模塊。并開發(fā)軟件手機(jī)APP進(jìn)行地圖顯示。使用零速檢測法,卡爾曼濾波以及行人航跡推算算法實(shí)現(xiàn)計(jì)步、航跡追蹤等功能。其準(zhǔn)確度達(dá)到94.5%,滿足行人的導(dǎo)航定位的要求。
參考文獻(xiàn):
[1] CHO S Y,PARK C G.MEMS based pedestrian navigation system[J].Journalof Navigation,2006, 59(1):135- 153.
[2] 陳沖. 地磁輔助慣性導(dǎo)航系統(tǒng)研究[D]. 哈爾濱:哈爾濱工業(yè)大學(xué),2014.
[3] 朱素英.GNSS/DR組合導(dǎo)航系統(tǒng)中粒子濾波算法研究[J].電腦知識(shí)與技術(shù),2013,9(25):5790-5793.
[4] Jin-feng Li,Qing-hui Wang,Xiao-mei Liu,Shun Cao,F(xiàn)eng-long Liu. A Pedestrian Dead Reckoning System Integrating Low-Cost MEMS Inertial Sensors and GPS Receiver[J]. Journal of Engineering Science and Technology Review,2014,7(2).
[5] 李妍. 基于位置定位的消防員遇險(xiǎn)搜救系統(tǒng)的研究[D].天津:天津大學(xué),2014.
[6] 肖茜.便攜式移動(dòng)電子設(shè)備的步行者航位推算技術(shù)研究[D].成都:電子科技大學(xué),2014.
[7] 李劉頌,徐向波.基于慣性導(dǎo)航的步行者零速檢測算法[J].傳感器與微系統(tǒng),2019,38(3):154-156,160.
[8] 李宏成.基于捷聯(lián)慣性導(dǎo)航系統(tǒng)初始對(duì)準(zhǔn)的卡爾曼濾波技術(shù)研究[D].贛州:江西理工大學(xué),2016.
[9] 李超,蘇中,朱嘉林.可穿戴式自主定位技術(shù)的零速觸發(fā)算法研究[J].傳感技術(shù)學(xué)報(bào),2014,27(5):627-632.
【通聯(lián)編輯:梁書】