摘 要: 超寬帶技術(shù)由于功耗低、抗多徑干擾能力強(qiáng)、系統(tǒng)復(fù)雜度低、定位精度高等優(yōu)點(diǎn),已經(jīng)成為室內(nèi)無線定位技術(shù)中極具潛力的技術(shù)?;诘竭_(dá)時(shí)間差(TDOA)定位技術(shù),提出了一種基于Taylor算法和Chan算法的定位方法,并對三種不同算法進(jìn)行了比較,完成了室內(nèi)超寬帶無線定位算法的仿真。在FPGA開發(fā)平臺(tái)上完成了對室內(nèi)超寬帶無線定位系統(tǒng)的設(shè)計(jì)。著重介紹了基帶信號的幀結(jié)構(gòu)、擴(kuò)頻碼的選擇、脈沖的生成和擴(kuò)頻碼的同步捕獲。對各個(gè)模塊的功能和設(shè)計(jì)原理進(jìn)行了描述,通過Verilog語言對室內(nèi)超寬帶無線定位系統(tǒng)的各部分模塊進(jìn)行設(shè)計(jì)與仿真。
關(guān)鍵詞: 室內(nèi)定位;超寬帶;FPGA;TDOA
0 引言
定位是一種對未知物體的位置進(jìn)行預(yù)判的技術(shù)。超寬帶定位系統(tǒng)可以提供的定位精度較高,尤其適用于室內(nèi)定位系統(tǒng)中[1]。TDOA定位技術(shù)只要求接收機(jī)時(shí)間精確同步,不要求測量接收機(jī)與發(fā)射機(jī)之間的絕對時(shí)間同步,所以,其時(shí)鐘的精準(zhǔn)度相對于基于到達(dá)時(shí)間定位方法更易于實(shí)現(xiàn)。與基于達(dá)到強(qiáng)度和基于到達(dá)角度定位方法相比,這種方法可以更好地適應(yīng)復(fù)雜的室內(nèi)環(huán)境,定位精度高[2]。本文針對TDOA定位算法,提出一種Taylor算法和Chan算法相結(jié)合的定位算法,以提高定位精度。而在超寬帶通信系統(tǒng)中,窄帶脈沖持續(xù)時(shí)間極短,帶寬很寬,時(shí)間分辨率良好,抗多徑能力強(qiáng)。本文的室內(nèi)超寬帶定位系統(tǒng)在FPGA平臺(tái)下完成,將基帶信號擴(kuò)頻后采用脈沖無線電方式發(fā)射,在接收端解擴(kuò)、解調(diào)后得出TDOA測量值,再將其帶入到解算算法中,實(shí)現(xiàn)定位。這種方式無需載波調(diào)制,系統(tǒng)復(fù)雜度低,實(shí)現(xiàn)簡單。
1 系統(tǒng)的定位算法設(shè)計(jì)
常用的TDOA定位算法有Taylor算法和Chan算法。Taylor算法采用遞歸的方式,對定位系統(tǒng)的待測目標(biāo)位置求解,其特點(diǎn)是計(jì)算量大,定位精度較高。但是,如果不能很好地對Taylor算法的初始位置進(jìn)行選擇,算法的收斂性會(huì)受到影響。在室內(nèi)環(huán)境的應(yīng)用中,初始位置不易確定,所以Taylor算法的定位精度受到了限制。Chan算法是一種具有解析表達(dá)式的非遞歸算法,其特點(diǎn)是計(jì)算量小,受到室內(nèi)環(huán)境的影響,定位精度較差。但是,該算法可以整合到其他計(jì)算量較大的算法中,在不影響運(yùn)算結(jié)果的前提下,可以減少計(jì)算量[3]。
為了利用Taylor算法定位精度高的優(yōu)勢,可以在保證初始估計(jì)位置和實(shí)際位置較接近的情況下,再使用Taylor算法進(jìn)行計(jì)算,所以,在此之前要找到一種算法可以較好地確定初始位置。Chan算法剛好可以保證定位的準(zhǔn)確度,而且該算法的計(jì)算量小于其他計(jì)算復(fù)雜的算法,可以更好地提高系統(tǒng)的計(jì)算效率。因此,用Chan算法與Taylor算法相結(jié)合來進(jìn)一步提高Taylor算法的收斂性,實(shí)現(xiàn)精確定位。改進(jìn)算法的流程如圖1所示。
首先,將已知的接收機(jī)的坐標(biāo)和測量得到的TDOA值代入到Chan算法中,再通過該算法的結(jié)果計(jì)算出加權(quán)系數(shù),同時(shí),將Chan算法得到的結(jié)果作為Taylor算法的初始值,進(jìn)行Taylor級數(shù)展開。在一些情況下,Taylor算法的結(jié)果是發(fā)散的,為避免這個(gè)問題的出現(xiàn),采用加權(quán)系數(shù)的估算,估算對象為Taylor級數(shù)展開后的結(jié)果、通過Chan算法得到的加權(quán)系數(shù)和Chan算法的計(jì)算結(jié)果。通過這種方式對兩種定位算法的結(jié)果進(jìn)行優(yōu)化,并得到最終結(jié)果,獲得定位坐標(biāo),完成定位過程。
2 室內(nèi)超寬帶定位系統(tǒng)的設(shè)計(jì)
2.1 基帶信號幀結(jié)構(gòu)
系統(tǒng)中基帶信號的定位信息幀由幀頭、定位信息和保護(hù)間隔三部分組成,其格式示意圖如圖2所示。
其中,幀頭的作用是便于接收端實(shí)現(xiàn)碼元同步的捕獲和跟蹤,因此不需要通過幀頭來傳遞定位信息。在本系統(tǒng)中,幀頭均用符號“1”來實(shí)現(xiàn)。定位信息可以用于TDOA定位測量時(shí),同時(shí)可以實(shí)現(xiàn)在定位過程中與基站的通信功能,通過定位信息可以判斷出該信息是由哪一個(gè)參考基站發(fā)送出來的。為了區(qū)分幀頭和定位信息,第一個(gè)定位信息在傳送信息前插入獨(dú)特碼。每個(gè)參考站根據(jù)時(shí)間順序依次發(fā)送定位信息,在兩個(gè)定位信息之間添加保護(hù)間隔。第一個(gè)參考基站在定位信息之前先發(fā)送幀頭。
在接收端的擴(kuò)頻碼同步捕獲過程中,系統(tǒng)不能自行判斷幀頭與定位信息的位置,即便可以找到幀頭,也不能判斷此處為幀頭的第幾位,因此也不能正確地捕獲定位信息,這樣整個(gè)捕獲過程不能進(jìn)行。所以,在幀頭與定位信息之間插入一段獨(dú)特碼。由于巴克碼的相關(guān)特性較好,因此用作這里的獨(dú)特碼。這里的獨(dú)特碼僅由第一個(gè)參考基站發(fā)送,其他接收機(jī)無需對信號進(jìn)行這樣的處理。接收機(jī)在成功匹配獨(dú)特碼后,就可以確定幀頭的位置,并確定后續(xù)的接收數(shù)據(jù),如果不能匹配,就認(rèn)為捕獲失敗。這種方法可以消除誤捕獲,避免定位錯(cuò)誤,提高定位精度。
保護(hù)間隔作為不同定位信息之間的保護(hù),并作為測量時(shí)間差的基準(zhǔn)值。在發(fā)射端,使用一個(gè)固定的保護(hù)間隔。當(dāng)發(fā)送的信號到達(dá)接收端時(shí),這個(gè)保護(hù)間隔會(huì)根據(jù)傳輸距離的不同而有所改變,這個(gè)變化就是所要測量的時(shí)間差。要想確定待測目標(biāo)的位置,需要3組時(shí)間差。測量到的時(shí)間差在統(tǒng)計(jì)上是相互獨(dú)立的,將測量時(shí)間差帶入到解算算法中,就可以求出待測目標(biāo)的位置,從而實(shí)現(xiàn)定位。
通過接收端和發(fā)射端測量出的TDOA值的示意圖如圖3所示。
2.2 擴(kuò)頻碼的選擇
本文選用直擴(kuò)系統(tǒng),在擴(kuò)頻碼的選擇上,選取M序列作為擴(kuò)頻碼,原因有兩點(diǎn):其一,與長度為63的m序列相比,長度為64的M序列的擴(kuò)頻倍數(shù)為2的整數(shù)倍,這樣給FPGA的基帶信號處理及其他后續(xù)信號的處理帶來了方便;其二,M序列優(yōu)選對的條數(shù)比m序列要多,這樣就有利于多用戶的碼分多址[4]。對于64位的M序列,其相應(yīng)的移位寄存器為6級,通過查找表得到其反饋系數(shù)103,其對應(yīng)的特征多項(xiàng)式為:
f(x)=x6+x+1(1)
由反饋系數(shù)原理可知,在第1級和第6級需要進(jìn)行反饋,移位寄存器反饋原理圖如圖4所示。
2.3 脈沖信號的產(chǎn)生
為了避免多徑干擾,需要對擴(kuò)頻碼序列的占空比進(jìn)行調(diào)整,這樣在擴(kuò)頻的基礎(chǔ)上又對頻譜展寬,產(chǎn)生窄帶脈沖信號。這種方式就避免了載波調(diào)制,簡化了接收機(jī)的結(jié)構(gòu)。
2.4 擴(kuò)頻碼同步捕獲
本文采用基帶控制信號線性步進(jìn)串行搜索捕獲的方法來完成系統(tǒng)同步[5],設(shè)計(jì)框圖如圖5所示。
捕獲過程的實(shí)現(xiàn)方法如下:積分器對輸入的超寬帶信號進(jìn)行積分,輸出積分值,系統(tǒng)將該積分值與預(yù)先設(shè)定好的閾值做比較,完成判別過程。當(dāng)積分值超過閾值時(shí),系統(tǒng)輸出一個(gè)脈沖信號到FPGA中,F(xiàn)PGA在設(shè)定的時(shí)間內(nèi)對這種脈沖信號進(jìn)行統(tǒng)計(jì)計(jì)數(shù),對計(jì)數(shù)的結(jié)果做判決,如果大于一個(gè)規(guī)定的值,那么,此時(shí)認(rèn)為系統(tǒng)捕獲成功,收發(fā)兩端的擴(kuò)頻碼碼片的相位差在一個(gè)碼片寬度以內(nèi),這時(shí)的時(shí)鐘即為接收端的同步時(shí)鐘,繼續(xù)進(jìn)入跟蹤環(huán)路。如果FPGA的計(jì)數(shù)值沒有滿足要求,F(xiàn)PGA會(huì)輸出一個(gè)反饋到控制單元,控制單元會(huì)輸出一個(gè)信號來控制相位信號進(jìn)行一個(gè)單位的步進(jìn),這個(gè)步進(jìn)后的相位信號最終作用在積分器上。在該信號的下降沿,積分器進(jìn)行正常的積分運(yùn)算,在信號的上升沿,對積分器進(jìn)行清零,從而實(shí)現(xiàn)對積分器的控制作用。重復(fù)以上過程,直到FPGA的計(jì)數(shù)值滿足系統(tǒng)要求。如果在完成一幀的搜索后仍無法滿足以上要求,那么將FPGA中計(jì)數(shù)值的最大結(jié)果對應(yīng)的時(shí)鐘信號近似為系統(tǒng)接收端的同步信號,進(jìn)入后續(xù)跟蹤環(huán)路。
在系統(tǒng)同步的過程中,當(dāng)脈沖的計(jì)數(shù)值超過了系統(tǒng)所設(shè)定的閾值后,系統(tǒng)認(rèn)為同步,此時(shí)的時(shí)鐘信號可以作為系統(tǒng)解調(diào)過程中的時(shí)鐘信號,對于已經(jīng)解擴(kuò)的信號再進(jìn)行解調(diào)過程。在解調(diào)過程中,在時(shí)鐘的上升沿對解擴(kuò)信號進(jìn)行采樣,若采樣信號為高電平,相應(yīng)地輸出高電平;當(dāng)采樣信號為低電平時(shí),相應(yīng)地輸出低電平,這樣,就完成了解調(diào)過程。將解調(diào)后的基帶信號再進(jìn)行拆幀處理,這樣就可以得到TDOA的測量值,再帶入到第2節(jié)中提出的算法中即可。
3 算法性能比較
在第1節(jié)設(shè)計(jì)的定位算法的基礎(chǔ)上,對各個(gè)算法進(jìn)行比較。TDOA測量標(biāo)準(zhǔn)差對定位結(jié)果的影響如圖6所示。在各種算法中,均方根誤差與TDOA的測量值標(biāo)準(zhǔn)差成近似正比的關(guān)系?;谡鎸?shí)值的Taylor級數(shù)展開算法的性能最佳,基于Chan算法與Taylor算法的協(xié)同算法次之,非常接近于真實(shí)值的估算結(jié)果,比Chan算法單獨(dú)使用時(shí)性能要高很多。
4 仿真結(jié)果及分析
4.1 M序列生成模塊
6級M序列發(fā)生器可產(chǎn)生周期為64的擴(kuò)頻碼序列,先構(gòu)造周期為63的m序列,并在一個(gè)適當(dāng)?shù)奈恢貌迦胍粋€(gè)全零狀態(tài),即可得到64位M擴(kuò)頻碼序列,擴(kuò)頻碼仿真圖如圖7所示。其中,out為通過移位寄存器生成的M序列,temp為移位寄存器的狀態(tài),由圖可以看出,在0X20與0X01之間插入了0X00狀態(tài)。
4.2 脈沖生成模塊
擴(kuò)頻調(diào)制后的擴(kuò)頻碼序列的信號占空比為100%,在本模塊中,將原來的1個(gè)擴(kuò)頻碼碼片在時(shí)間上分成16份,即對擴(kuò)頻碼的時(shí)鐘信號進(jìn)行16倍頻,并調(diào)整其占空比,只將16份中的第一份設(shè)置為高,而其余的15份均為0,這樣就對波形占空比進(jìn)行了調(diào)整,形成窄帶脈沖。脈沖發(fā)生器仿真圖如圖8所示。
4.3 擴(kuò)頻碼序列的同步捕獲
接收端,同步捕獲模塊的時(shí)序仿真波形圖如圖9所示。圖中,en表示系統(tǒng)的使能端,當(dāng)其為高電平時(shí),系統(tǒng)可以進(jìn)行同步捕獲;為低電平時(shí),系統(tǒng)不能工作。rst_n是系統(tǒng)復(fù)位信號,低電平有效,此時(shí)系統(tǒng)各種寄存器清零。clk是系統(tǒng)基準(zhǔn)時(shí)鐘,data_in表示輸入到該模塊的脈沖結(jié)果,flag為同步捕獲標(biāo)志位,step為步進(jìn)次數(shù)。
該模塊完成系統(tǒng)同步捕獲的數(shù)字化處理,對輸入的脈沖進(jìn)行采樣計(jì)數(shù),每隔16個(gè)時(shí)鐘周期對信號的計(jì)數(shù)值進(jìn)行判斷。設(shè)置系統(tǒng)的計(jì)數(shù)閾值為14,當(dāng)計(jì)數(shù)值超過閾值時(shí),認(rèn)為系統(tǒng)捕獲成功,同步捕獲標(biāo)志位flag置高電平;否則,系統(tǒng)的同步捕獲標(biāo)志位flag置低電平,同時(shí),步進(jìn)次數(shù)step加1,相位控制信號步進(jìn)一次。當(dāng)復(fù)位信號為高電平有效時(shí),系統(tǒng)重新開始搜索同步捕獲。
5 結(jié)論
本文選取了室內(nèi)超寬帶定位系統(tǒng)最佳定位方法:TDOA定位方法。在現(xiàn)有TDOA算法的基礎(chǔ)上,提出了一種將Chan算法與Taylor算法的相結(jié)合定位算法。仿真驗(yàn)證的結(jié)果表明,該算法可以對Chan算法和Taylor算法的不足進(jìn)行彌補(bǔ)。為簡化接收機(jī)的結(jié)構(gòu),本文結(jié)合擴(kuò)頻通信方法,設(shè)計(jì)了一種采用窄帶脈沖發(fā)射的室內(nèi)超寬帶無線定位系統(tǒng)。通過對基帶信號的幀結(jié)構(gòu)設(shè)計(jì),接收端的信號在完成解擴(kuò)、解調(diào)后,可以直接得出TDOA測量值,再經(jīng)過解算算法就可以方便地求出待測目標(biāo)的位置,實(shí)現(xiàn)定位功能。對系統(tǒng)中各模塊的原理進(jìn)行了介紹,并使用Verilog語言建模,完成了系統(tǒng)仿真。
參考文獻(xiàn)
[1] 施長寶,李瑾.基于超寬帶技術(shù)的室內(nèi)無線定位的研究[J].科技信息,2012(7):171,146.
[2] DIBENEDETO A G, GIANCOLA G. Understanding ultra wide band radio fundamentals[M]. New Jersey: Prentice Hall Professional Technical Reference, 2004.
[3] 龐艷.UWB精確定位算法研究[D].北京:北京交通大學(xué),2006.
[4] 田日才.擴(kuò)頻通信[M].北京:清華大學(xué)出版社,2007.
[5] 王偉,焦健,蔡鶴皋,等.基于FPGA的擴(kuò)頻信號快速捕獲電路設(shè)計(jì)與實(shí)現(xiàn)[J].彈箭與制導(dǎo)學(xué)報(bào),2009,29(5):227-231,238.