胡愛華 鄧中亮 張耀
摘 要: 給出一種基于改進TPSN和卡爾曼濾波提高TDOA定位中時間同步精度的方法。TDOA定位中,信號接收設(shè)備之間的時間不一致性,最終將反映到定位解算方程中的距離測量上,因此,信號接收設(shè)備之間的精確時間同步成為基于TDOA定位的核心技術(shù)之一。在比較了多種網(wǎng)絡(luò)同步協(xié)議的基礎(chǔ)上,改進主從節(jié)點間的TPSN同步協(xié)議。另外,針對定位系統(tǒng)中各時鐘存在時鐘偏移和時鐘偏移率的缺陷問題,結(jié)合時鐘偏移和時鐘偏移率的分布特性,利用卡爾曼濾波算法進行時間同步誤差的糾正。仿真結(jié)果表明,該算法能明顯降低主從時鐘之間的時間偏差。
關(guān)鍵詞: 時間同步; TDOA; 時鐘偏移; TPSN; 卡爾曼濾波; 同步精度
中圖分類號: TN92?34 文獻標識碼: A 文章編號: 1004?373X(2018)13?0005?05
Abstract: A method based on improved TPSN and Kalman filtering is presented to improve the time synchronization accuracy in TDOA location. Time inconsistency between signal receiving devices will ultimately influence on the range measurement in positioning resolving equation, so the precise time synchronization between signal receiving devices becomes one of the core technologies based on TDOA location. On the basis of comparing several network synchronous protocols, the TPSN synchronous protocol between master and slave nodes was improved. The method of estimating the clock skew and clock drift rate is studied to overcome the defects existing in each clock in location system. The Kalman filtering algorithm is used to correct the time synchronization error in combination with the distribution characteristics of clock skew and clock drift rate. The simulation results show that the proposed algorithm can obviously reduce the time deviation between master and slave clocks.
Keywords: time synchronization; TDOA; clock skew; TPSN; Kalman filtering; synchronization precision
基于目標輻射源的無線通信定位系統(tǒng)是由空間獨立的信號接收設(shè)備(實現(xiàn)三維定位至少需要4臺接收設(shè)備)、實現(xiàn)定位解算的中心控制系統(tǒng)和實現(xiàn)各接收設(shè)備之間通信的無線通信單元。其總體架構(gòu)如圖1所示。為實現(xiàn)移動通信用戶的定位,必須實現(xiàn)以下幾部分的技術(shù)研究:高靈敏度信號接收技術(shù)、接收設(shè)備之間的高精度同步技術(shù)和TDOA(Time Difference of Arrival)位置估計解算技術(shù)。基于TDOA的定位精度一方面取決于參考點的位置檢測可靠性,另一方面取決于信號到達接收設(shè)備時間的測量精度。如果一個基于TDOA的無線定位系統(tǒng)不能實現(xiàn)各個接收設(shè)備之間的高精度時間同步,就不可能獲得準確的由各接收設(shè)備發(fā)送的用于TDOA解算的到達時間值,也就不能獲得準確的被測目標的位置解算。信號接收設(shè)備之間的時間不一致性最終將反映到定位解算方程中的距離測量上。信號接收設(shè)備之間的精確時間同步成為基于TDOA定位的核心技術(shù)之一,各信號接收設(shè)備間的低成本ns級的時間同步是高精度定位的難點之一。
傳統(tǒng)的時間同步方法有自由同步和分布式同步兩種。自由同步一般采用原子鐘,具有高精度、不受干擾的優(yōu)點,但是設(shè)備復(fù)雜、價格昂貴。分布式同步又可分為主從同步和轉(zhuǎn)發(fā)同步[1]。主從同步是主設(shè)備發(fā)射信號,從設(shè)備收到主設(shè)備信號后發(fā)射帶有接收發(fā)射時間信息的信號,采用鎖相環(huán)等技術(shù),具有一定的抗干擾能力。轉(zhuǎn)發(fā)同步是從設(shè)備直接轉(zhuǎn)發(fā)主設(shè)備發(fā)射的信號,受傳播路徑的影響較嚴重。本文研究的系統(tǒng)采用主從同步方式。
時間同步的本質(zhì)是通過犧牲通信帶寬和計算功耗來提高時間精度。由于通信帶寬產(chǎn)生通信延遲抖動,CPU(Central Processing Unit)處理能力決定時間戳精度,因此,基于時間信息包交換的時間同步精度主要由兩個方面決定:有偏差的物理時鐘和時間信息交換協(xié)議(即時間同步算法)[2?3]。
1.1 無線分布式網(wǎng)絡(luò)的時間同步
基于有線網(wǎng)絡(luò)的傳統(tǒng)時間同步技術(shù)在不改變其低功耗等特征時很難應(yīng)用到無線網(wǎng)絡(luò)[4?6]。關(guān)于無線通信網(wǎng)絡(luò)時間同步已有多種協(xié)議得到廣泛應(yīng)用,主要可分為以下幾類:
1) 基于發(fā)送者?接收者的雙向同步,典型算法如TPSN(Timing?Sync Protocol for Sensor Networks)算法[2,4,7?8]。
2) 基于發(fā)送者?接收者的單向時間同步,如FTSP (Flooding Time Synchronization Protocol)算法[9]和DMTS(Delay Measurement Time Synchronization)時間同步算法[10]。
3) 基于接收者?接收者的同步算法,如RBS(Reference Broadcast Synchronization)算法[2]。但它們未能在能效和精度上進行充分的優(yōu)化。
對于無線網(wǎng)絡(luò)環(huán)境的時間同步需要考慮如下幾個問題:
1) 用于處理無線通信的資源;
2) 無線網(wǎng)絡(luò)的擴展;
3) 無線網(wǎng)絡(luò)的時間同步基礎(chǔ)設(shè)施;
4) 無線網(wǎng)絡(luò)的節(jié)點集合。
1.2 TPSN同步算法
TPSN同步算法屬于發(fā)送者?接收者同步機制算法[4,8,11]。時間同步從根節(jié)點開始,構(gòu)建分層次等級的網(wǎng)絡(luò)結(jié)構(gòu)。通過與高一級的節(jié)點交換時間戳來檢查同步情況,通過計算偏移量和交換延遲矯正傾斜角。其時間同步過程如圖2所示。
設(shè)A為從節(jié)點,B為主節(jié)點,無線傳播時間為[d],兩節(jié)點時鐘的時間偏差為[δ]。同步過程由主節(jié)點B在[T1]時刻廣播同步開始信息,其包含信息([T1]);從節(jié)點A在[T2]時刻接收到同步信息,并記錄接收時間[7][T2]:
從式(3),式(4)可以看出,只需一組數(shù)據(jù)就可以計算出主從節(jié)點之間的時間偏差。在傳播過程中,如果這組數(shù)據(jù)信息受到多徑延遲或噪聲的影響,那么得到的接收時間就有可能不正確,但是通過利用多組數(shù)據(jù)來計算可以減小數(shù)據(jù)干擾。
融合北斗與基站的定位采用TDOA定位方法,要求計算被定位終端信號到達各節(jié)點的時間差,時間差的準確度取決于各節(jié)點之間的同步精度。為使TDOA定位系統(tǒng)中獨立節(jié)點之間同步誤差盡量小,可以利用衛(wèi)星時鐘同步和基于時鐘誤差矯正的雙向數(shù)據(jù)通信鏈路達到高精度同步的目的。
2.1 同步系統(tǒng)結(jié)構(gòu)
本文中設(shè)定的基于TDOA的移動通信用戶定位系統(tǒng)采用主從同步模式[8]。系統(tǒng)結(jié)構(gòu)如圖3所示。
在主、從節(jié)點中使用的時鐘發(fā)生器主要由衛(wèi)星信號接收機、DPLL(Digital Phase Lock Loop,數(shù)字鎖相環(huán))、OCXO(Oven?controlled Crystal Oscillator,恒溫晶體振蕩器)、振蕩器漂移補償算法組成。DPLL用來實現(xiàn)OXCO與衛(wèi)星接收機提供的1 pps信號的同步,生成具有高頻率穩(wěn)定的系統(tǒng)時鐘。然而對于衛(wèi)星接收機輸入DPLL的1 pps信號有短時的抖動,這是由于信號反射、電磁波通過電離層、多徑接收等原因產(chǎn)生的。由于通過衛(wèi)星的原子鐘生成的信號具有高穩(wěn)定性,所以可以通過DPLL環(huán)路濾波器的濾波降低抖動。
2.2 雙向通信鏈路
為達到各接收端(節(jié)點)之間的精確同步,采用雙向通信鏈路[5,8]。這種方法在兩個通信鏈路上使用時間戳消息,當(dāng)傳送時鐘脈沖的路徑相同時,在主從節(jié)點之間延時是相互抵消的。因此兩個接收機之間時鐘差的估計是可行的。為了使時間戳信息在雙向鏈路上的傳輸延時相同,需要將所有的處理都在硬件中實現(xiàn),從而使時延不會發(fā)生改變。最好是讓時間戳的生成位置在與傳輸介質(zhì)最近的物理層。
當(dāng)在物理層使用時間戳?xí)r,在傳輸和接收的過程中不確定因素是傳播時間。當(dāng)主從節(jié)點之間是視距傳播時,則雙向傳輸?shù)碾姴▊鞑r延差就很小,因此可以準確地估計兩個節(jié)點之間的時鐘差。為此,本文研究的時間同步系統(tǒng)時間戳在物理層生成。無線信號的處理采用SDR(Software Define Radio)實現(xiàn),CPU使用TI公司的DSP芯片,它結(jié)合FPGA實現(xiàn)無線信號的調(diào)制解調(diào)和處理。以這種方式實現(xiàn)時間戳可以使雙向鏈路的時間延遲最小化。
2.3 時間同步協(xié)議和誤差矯正
針對一主三從4個終端的TDOA定位系統(tǒng),設(shè)計如圖4所示的TPSN同步協(xié)議。對TPSN協(xié)議做了改進[8,12],對于時間戳的需求數(shù)量相對于TPSN大大減少。它可以降低無線數(shù)據(jù)鏈路的壓力,縮短時間同步實現(xiàn)的時間。
圖4中TPSN協(xié)議的運行順序描述如下:
1) 首先發(fā)送用于首次同步的同步廣播消息。
2) 各從節(jié)點接收到同步信息后,保存[T2]時間信息;每個從節(jié)點依次發(fā)送同步脈沖消息后,保存[T3]時間信息;在第一階段沒有接收到3個同步脈沖時請求重傳。
3) 同步應(yīng)答消息廣播包括時間信息[T1]和[T4]。
4) 在接收到應(yīng)答消息后,利用[T1],[T2],[T3]和[T4]校正[θ],[θ=(T2-T1)-(T4-T3)2]。
2.4 基于卡爾曼濾波的時鐘誤差校正
如果獲取的時間戳信息是精確可靠的,從節(jié)點的本地時鐘校正可以直接利用時鐘偏移和時鐘偏移率實現(xiàn),從而達到主節(jié)點與從節(jié)點間的時間同步。在同步協(xié)議已建立的前提下,信息包交換過程中還存在測量噪聲和傳輸時延等不確定性因素導(dǎo)致得到的時間信息不精確。所以在這里采用濾波器對其進行預(yù)處理。在本文研究的帶有時鐘偏移的同步系統(tǒng)中,通過卡爾曼濾波器(Kalman Filter,KF)對時鐘偏移和偏移率進行估計,實現(xiàn)時間同步誤差校正[13?16]。
2.4.1 時鐘校正原理和Kalman算法
TPSN算法采用的發(fā)送/接收模型如圖5所示,針對主節(jié)點和其中任何一個從節(jié)點運用直接雙向同步算法,可以計算從節(jié)點的本地時鐘的漂移率和時鐘偏移。
定義從節(jié)點在[t]時刻(主節(jié)點時間)的時間為[H(t)],[H(t)]與參考時間[t]的時間偏差為從節(jié)點的時鐘偏差[θ(t)],定義[t]時刻時鐘漂移[α(t)],時鐘漂移變化率為[β(t)],其中[α(t)]是[θ(t)]的時間導(dǎo)數(shù),[β(t)]是[α(t)]的時間導(dǎo)數(shù)。
由于晶體振蕩器存在老化問題,而且受環(huán)境溫度的影響,時鐘漂移不是恒定不變的。從時鐘與主時鐘具有非線性關(guān)系,在本文中,定義時鐘模型[14]如下:
2.4.2 仿真分析
利用Matlab軟件進行時鐘校正,仿真實驗中,主從時鐘的工作頻率設(shè)置為80 MHz,從時鐘相對于主時鐘的時鐘漂移為2[×]10-10 s,時鐘漂移率為1[×]10-11 s,同步周期選擇1 s,觀察卡爾曼濾波前后時間偏差情況,如圖6所示。
由圖6可見,進行卡爾曼濾波前、后時鐘偏差是隨機變化的,對仿真數(shù)據(jù)進行統(tǒng)計分析,計算濾波前后的時鐘偏差的均值和方差得到的結(jié)果如表1所示。
通過卡爾曼濾波估計得到狀態(tài)的估計值,使從時鐘的偏差得到補償,并對時鐘模型進行修正,最終實現(xiàn)從時鐘與主時鐘的同步。從圖6可見卡爾曼濾波算法可以明顯減小主從時鐘之間的時間偏差。由圖7,圖8可知,經(jīng)過卡爾曼濾波后從時鐘的漂移情況得到了改善,時鐘漂移率隨著時間的收斂效果明顯。
基于TDOA的無線定位系統(tǒng)中,時間同步是整個系統(tǒng)提高定位精度的重要方面,主從同步中的TPSN同步方式一方面可以提高時間精度,另外,還可以降低能量消耗。本文研究的一主三從定位系統(tǒng)采用改進的TPSN方法,對于時間戳的需求數(shù)量相對于TPSN大大減少。利用基于卡爾曼濾波的雙向同步算法,不僅時鐘偏差的測量噪聲被有效消除,而且實現(xiàn)了對時鐘漂移以及時鐘漂移變化率的估計。另外,在對時鐘偏差進行補償?shù)耐瑫r,修正從時鐘系統(tǒng)時間,從而提高無線定位系統(tǒng)的TDOA定位精度,仿真結(jié)果表明,卡爾曼濾波器能明顯減小主從時鐘的偏差,并且在對時鐘偏差進行補償?shù)耐瑫r,修正從時鐘系統(tǒng)時間,從而降低無線定位系統(tǒng)的TDOA定位時鐘的偏差。
[1] MASNE V, BADHIYE S, SAMBHE N, et al. Clock synchroniza?tion in distributed area [J]. International journal of computing and technology 2014, 1(3): 114?120.
[2] 葉玲,李太華,代學(xué)武.無線傳感器網(wǎng)絡(luò)環(huán)境下基于卡爾曼濾波的PTP協(xié)議[J].智能系統(tǒng)學(xué)報,2012,7(6):518?524.
YE L, LI T H, DAI X W. Kalman filtering based precision time protocol (PTP) in wireless sensor networks [J]. Transactions on intelligent systems, 2012, 7(6): 518?524.
[3] LIU D, ZHENG Z, YUAN Z, et al. An improved TPSN algorithm for time synchronization in wireless sensor network [C]// 2012 the 32nd International Conference on Distributed Computing Systems Workshops. Macao, China: IEEE, 2012: 279?284.
[4] 陶志勇,胡明.無線傳感器網(wǎng)絡(luò)中基于層次結(jié)構(gòu)的時間同步算法[J].計算機應(yīng)用,2012,32(6):1513?1515.
TAO Z Y, HU M. Time synchronization algorithm based on hierarchical structure in wireless sensor network [J]. Computer applications, 2012, 32(6): 1513?1515.
[5] IWAMURA M, UCHINO T. Mobile communication method of requesting synchronization [P]. 2015?08?09.
[6] MANITA A. Clock synchronization in symmetric stochastic net?works [J]. Queueing systems, 2014, 76(2): 149?180.
[7] GANERIWAL S, KUMAR R, SRIVASTAVA M B. Timing?sync protocol for sensor networks [C]// 2003 International Conference on Embedded Networked Sensor Systems. [S.l.]: ACM, 2003: 138?149.
[8] YOON J Y, KIM J W, LEE W H, et al. A DoA?based localiza?tion using precise time?synchronization [J]. Animal feed science & technology, 2012, 71(S1/S2): 1266?1271.
[9] ELSON J, GIROD L, ESTRIN D. Fine?grained network time synchronization using reference broadcasts [J]. ACM SIGOPS operating systems review, 2002, 36(1): 147?163.
[10] 康冠林,王福豹,段渭軍.無線傳感器網(wǎng)絡(luò)時間同步綜述[J].計算機測量與控制,2005,13(10):1021?1023.
KANG G L, WANG F B, DUAN W J. Survey on time synchroni?zation for wireless sensor networks [J]. Computer measurement and control, 2005, 13(10): 1021?1023.
[11] 張白樺.基于TPSN的時間同步改進算法[J].計算機工程,2010,36(9):109?110.
ZHANG B H. Improved tine synchronization algorithm based on TPSN [J]. Computer engineering, 2010, 36(9): 109?110.
[12] GARONE E, GASPARRI A, LAMONACA F. Clock synchroni?zation protocol for wireless sensor networks with bounded communication delays [J]. Automatica, 2015, 59(C): 60?72.
[13] 莊曉燕,王厚軍.基于卡爾曼濾波器的IEEE 1588時鐘同步算法[J].電子測量與儀器學(xué)報,2012,26(9):747?751.
ZHUANG X Y, WANG H J. IEEE 1588 clock synchronization algorithm based on Kalman filter [J]. Journal of electronic measurement and instrument, 2012, 26(9): 747?751.
[14] KIM K S, LEE B G. KALP: a Kalman filter?based adaptive clock method with low?pass prefiltering for packet networks use [J]. IEEE transactions on communications, 2000, 48(7): 1217?1225.
[15] WELCH G, BISHOP G. An introduction to the Kalman filter [J]. Course notes of ACM siggraph, 1995, 8(7): 127?132.
[16] WANG T, GUO D, CAI C Y, et al. Clock synchronization in wireless sensor networks: analysis and design of error precision based on lossy networked control perspective [J]. Mathematical problems in engineering, 2015(2): 1?17.