前言:想要寫出一篇引人入勝的文章?我們特意為您整理了三維定位系統(tǒng)設(shè)計范文,希望能給你帶來靈感和參考,敬請閱讀。
摘要:針對消防室內(nèi)定位技術(shù)的需求,搭建了基于慣性測量元件的室內(nèi)三維定位系統(tǒng)。首先,利用微機電系統(tǒng)(MEMS)慣性傳感器獲取行人運動過程中的必要參數(shù)。然后基于行人航跡推算(PDR)算法,實時計算出行人行走的步數(shù)和步長;通過氣壓傳感器實時采集行人所處位置的高度。最后,利用無線數(shù)傳模塊結(jié)合服務(wù)器端處理,實現(xiàn)行人的室內(nèi)三維定位。測試表明:系統(tǒng)在正常行走的情況下,可以滿足行人的室內(nèi)三維定位要求。
關(guān)鍵詞:室內(nèi)三維定位;微機電系統(tǒng)(MEMS)慣性傳感器;行人航跡推算;氣壓傳感器
0引言
在城市化進程中,大型建筑物已成為人們棲身立業(yè)的主要場所。實現(xiàn)室內(nèi)三維定位,可以更好地進行人群行動規(guī)劃,出現(xiàn)火災(zāi)等意外時也可以更好保障人員財產(chǎn)安全,所以室內(nèi)定位問題具有重要研究價值。本文設(shè)計了以慣性元件為基礎(chǔ)的室內(nèi)三維定位系統(tǒng),系統(tǒng)使用STM32F103單片機,從低成本的微機電系統(tǒng)(micro-electro-mechanicalsystem,MEMS)慣性傳感器LPMS-ME1獲取行人行走時的慣性參量,從帶溫度補償?shù)臍鈮簜鞲衅髂KBMP180獲取高度信息,經(jīng)預(yù)處理后,通過無線數(shù)傳模塊CC1101將預(yù)處理結(jié)果傳輸至服務(wù)器,經(jīng)服務(wù)器再處理實現(xiàn)行人的室內(nèi)三維定位。
1利用慣性測量元件進行三維定位的理論研究
本文利用慣性傳感器陀螺儀來測量運載體本身的慣性參量,然后利用積分等數(shù)學(xué)運算得到運載體的運動速度、相對距離等信息,從而實現(xiàn)對運動目標的定位[1,2]。
導(dǎo)航坐標系記作OnXnYnZn。選取北東地地理坐標系,即導(dǎo)航坐標系的原點On位于運載體的重心,Xn,Yn,Zn分別指向北方、東方、大地方向,符合右手定律。載體坐標系記作ObXbYbZb。原點Ob位于運載體的重心,Xb,Yb,Zb分別指向運載體的前方、右方、下方,符合右手定律。載體坐標系(Xb軸為前進正方向)繞Xb,Yb,Zb軸旋轉(zhuǎn)的角度分別記為γ,θ,ψ。通過導(dǎo)航坐標系(n系)到載體坐標系(b系)的旋轉(zhuǎn)矩陣可求出載體的翻滾角、俯仰角以及航向角。
基于慣性傳感器的行人航位推算一般用于行人的二維定位,利用基于過零點檢測法來計算行人步數(shù)。一般行人正常的行走的步幅范圍為45~85cm,并且同一個人在正常行走時的步幅變化不大[4]。擬合一種線性步長估計模型[5]。行人的航向角可以由慣性傳感器輸出的歐拉角來獲得。由于本系統(tǒng)的慣性傳感器件將佩戴于行人腰間,且Zb軸平行于水平面指向行人的前方,所以,慣性傳感器的翻滾角即為行人的航向角。本文擬采用高度測量按鍵初始化的方法,人為地設(shè)定參考平面,即先采集初始位置的大氣壓值p'0作為參考大氣壓,再根據(jù)當前的大氣壓來計算相對高度。
本系統(tǒng)數(shù)據(jù)采集終端由STM32F103單片機、9軸慣性傳感器模塊LPMS—ME1、帶溫度補償?shù)臍鈮簜鞲衅髂KBMP180以及工作頻段為433MHz的無線數(shù)傳模塊CC1101組成;服務(wù)器端由STM8L101單片機最小系統(tǒng)板、工作頻段為433MHz的無線數(shù)傳模塊CC1101以及PC機組成。
3軟件系統(tǒng)設(shè)計
數(shù)據(jù)采集終端的主要任務(wù)是對行人運動時的部分數(shù)據(jù)進行采樣與初步處理,該部分的軟件設(shè)計基于STM32F103ZET6的最小系統(tǒng)板,通過I2C和SPI通信協(xié)議分別與慣性傳感器、大氣壓傳感器和無線數(shù)據(jù)傳輸?shù)陌l(fā)送模塊進行數(shù)據(jù)交換。無線通信的數(shù)據(jù)傳輸率為250kBaud/s,每一包數(shù)據(jù)包含7個有效字節(jié),分別是設(shè)備編號(1個字節(jié))、數(shù)據(jù)類型代碼(1個字節(jié))、數(shù)據(jù)(4個字節(jié))、校驗和(1個字節(jié))。
3.1服務(wù)器端軟件設(shè)計
服務(wù)器端的主要任務(wù)是對數(shù)據(jù)采集終端采集的數(shù)據(jù)進行接收與再處理,并將行人的定位結(jié)果顯示出來。STM8L101單片機最小系統(tǒng)板通過SPI接口與無線數(shù)傳的接收模塊進行數(shù)據(jù)交換,將接收到的數(shù)據(jù)發(fā)送到PC機的串口,使用Python中的serial模塊讀取串口數(shù)據(jù)便可以實現(xiàn)對定位數(shù)據(jù)的接收與再處理。
3.2基于慣性傳感器的行人航位推算算法
為減小定位誤差,將采用硬件復(fù)位,軟件計算校正的方法。由于本系統(tǒng)中的慣性傳感器佩戴在行人的腰間,且Zb軸平行于水平面指向行人的前方,所以,讀取本慣性傳感器的翻滾角即為行人的航向角。將數(shù)據(jù)采集終端固定在行人的腰部,行人行走一段距離,將傳感器采集到的加速度數(shù)據(jù)通過無線模塊傳輸?shù)椒?wù)器端,并繪制接收數(shù)據(jù)的二維圖像。
本文初步選用X軸方向的加速度值來計算步數(shù),Y軸、Z軸方方向的加速度值可用來輔助計算步長。當行人并沒有走動或正常走動的過程中身體有抖動時,加速度計可能會將Z軸的波動計算在內(nèi)而進行計步。為了避免這種情況的發(fā)生,設(shè)置一個Δt,表示檢測到的兩步的時間間隔。當行人正常行走時,一般1s內(nèi)行走步數(shù)少于3步[7],因此本文Δt=0.25s。行人正常行走的過程中,采集行人的運動數(shù)據(jù),使用Excel對采集到的運動數(shù)據(jù)進行回歸計算,求得步長模型SLk=0.3288×Fk+0.4377×As-0.1320(3)相關(guān)系數(shù)R2≈0.91,表明數(shù)學(xué)模型較好的符合原始數(shù)據(jù)。
4測試結(jié)果與分析
4.1結(jié)果展示
將傳感器固定于行人腰部,對步長估計模型的準確度進行測試。當行人正常行走時,將傳感器佩戴于測試人員腰部,進行變高測試。行人從一樓走上四樓,觀察服務(wù)器端行人高度信息的變化。由于該大氣壓傳感器的高度信息波動較大,所以,對原始的高度數(shù)據(jù)進行均值濾波。為了驗證本系統(tǒng)可以正常的完成基于慣性測量元件的室內(nèi)三維定位,將傳感器固定于行人腰部,行人在三樓初始化本系統(tǒng)之后,走到一樓,在服務(wù)器端對行人進行三維定位測試。
4.2結(jié)果分析
由上述測試的結(jié)果可知,在行人身體沒有太大抖動的前提下,計步算法的準確度達到了95%以上,初步實現(xiàn)了對行人的步數(shù)計算功能,且誤差在可以接受的范圍之內(nèi);在行人正常行走的過程中,步長估計模型的步長估計準確度達到了90%以上,實現(xiàn)了對行人的步長估計;由于氣壓容易受到外界的干擾,所以高度數(shù)據(jù)有較大波動,上下波動的范圍在可接受的1m以內(nèi)。
5結(jié)論
本文研究的內(nèi)容主要是基于慣性測量元件的三維定位,分別從硬件和軟件兩個方面闡述了利用慣性測量元件進行三維定位的系統(tǒng)設(shè)計方案,介紹了各個模塊的基本原理及無線通信防碰撞的實現(xiàn)方法,定義了無線通信協(xié)議,實現(xiàn)了基于慣性傳感器的行人航位推算以及空間高度信息獲取。經(jīng)過軟硬件調(diào)試和實際測試結(jié)果得知:行人正常行走100m,定位誤差在1.5m以內(nèi),完成了利用慣性測量元件進行三維定位系統(tǒng)的設(shè)計。
參考文獻:
[1]陳瑩超.基于MEMS慣性傳感器的行人三維自主定位系統(tǒng)研究[D].太原:中北大學(xué),2017.
[2]李倩.基于ARM的捷聯(lián)慣性導(dǎo)航測量系統(tǒng)設(shè)計[D].南京:南京信息工程大學(xué),2015.
[3]王克己.室內(nèi)定位系統(tǒng)中的行人航跡推算研究[D].北京:北京郵電大學(xué),2015.
[4]劉雷,慕艷艷,劉睿鑫.基于三軸加速度傳感器的步長估算模型研究[J].傳感器與微系統(tǒng),2017,36(8):22-24.
[5]童亞欽,紀春國.基于CC1101的分布式節(jié)能測控網(wǎng)絡(luò)設(shè)計[J].單片機與嵌入式系統(tǒng)應(yīng)用,2010,10(12):43-46.
[6]李世銀,王銓,張楠.基于MEMS慣性傳感器的井下人員定位系統(tǒng)[J].煤礦安全,2017,48(4):111-114.
作者:靜宜 曾祥燁 蘇彥莽 倪立強 高東奇 白夢帥 單位:河北工業(yè)大學(xué) 電子信息工程學(xué)院 天津市電子材料與器件重點實驗室