裴 勇,湯寶平,鄧 蕾,肖 鑫
(重慶大學機械傳動國家重點實驗室,重慶 400030)
基于信標時序補償的機械振動無線傳感器網絡同步觸發方法
裴 勇,湯寶平,鄧 蕾,肖 鑫
(重慶大學機械傳動國家重點實驗室,重慶 400030)
針對無線傳感器網絡(WSN)在實現機械振動同步采集過程中,采集節點應該同時觸發采集命令,同步觸發誤差應在一個采樣周期內的要求,設計了一種基于信標時序補償思想的WSN同步觸發協議STBTC_P(the Synchronization Trigger protocol based on Beacon Timing Compensation)。協議基于IEEE 802.15.4協議標準開發多跳樹狀網絡,以信標負載方式傳輸采集命令,在利用集中關聯信標分配法避免信標沖突并實現全網時鐘同步后,采用基于信標時序補償思想的同步觸發方法實現機械振動采集命令的多跳同步觸發,為最終提高機械振動同步采集精度創造使能條件。最后,在自研采集節點WSN-G2上運行STBTC_P協議,并驗證了其有效性。
無線傳感器網絡;機械振動;同步采集;IEEE 802.15.4
在使用無線傳感器網絡(WSN)進行機械振動監測時,為保證信號分析結果的準確性,需要對多測點振動信號進行同步采集[1-3]。然而,作為分布式采集系統,無線傳感器網絡對機械振動信號進行同步采集面臨諸多難題[3-4],其中一個重要問題就是要實現采集命令同步觸發。如果Sink節點發出采集命令后,各個采集節點觸發采集命令的時間差過大,將直接影響同步采集精度;往往同步觸發誤差控制在一個采樣周期內,可以為進一步采用重采樣法、同步截取等方法實現同步采集建立良好的基礎[4]。那么對于機械振動采集一般要求數kHz采樣頻率的情況,要使觸發誤差控制在一個采樣周期內就相當困難。另外,受節點發送功率和能耗等限制,節點單跳發送距離只有數十米,往往組成多跳網絡進行機械振動監測[5],那么在多跳網絡中實現采集命令同步觸發就更加艱難,并需要以各個采集節點實現時鐘同步為基礎[6]。
目前針對WSN全網時鐘同步方法的研究較多,且取得了一些成果[7-8],但是針對機械振動采集命令同步觸發方法的研究較少。針對這個問題,本文以IEEE 802.15.4協議[9]為底層基礎,提出了一種信標時序補償思想,并基于此思想設計實現了一種WSN同步觸發協議STBTC_P(the Synchronization Trigger protocol based on Beacon Timing Compensation)。協議采用集中關聯信標分配法解決多跳網絡信標沖突問題,實現全網時鐘同步,并提出基于信標時序補償思想的同步觸發方法,實現命令的多跳同步觸發,為最終提高機械振動同步采集精度創造使能條件。
STBTC_P協議采用TIMAC協議棧[10]作為底層基礎,負責物理層和MAC層功能;另外還包括網絡層模塊、應用層模塊、采集模塊和上位機模塊幾個上層部分,協議總體架構如圖1所示。

圖1 STBTC_P協議棧總體架構圖Fig.1 Overall architecture of STBTC_P
TIMAC協議棧是TI公司制定的IEEE802.15.4介質訪問控制層(MAC層)協議棧,它基于CC2430芯片[11]實現了IEEE802.15.4協議的物理層和MAC層功能。IEEE802.15.4協議標準[9]不僅具有低功耗,低成本等優點,而且在它的信標使能模式下,父節點能夠通過周期性發送信標實現與子節點之間的時鐘同步,為實現全網時鐘同步以及進一步實現各個采集命令同步觸發提供了基礎條件。
網絡層和應用層模塊作為STBTC_P協議的核心,對采集命令同步觸發功能的實現起到關鍵作用。首先,在組網過程中,為了避免多跳網絡中發生信標沖突并導致節點時鐘同步失敗,網絡層模塊采用集中關聯信標分配法,由Sink節點統一為各個路由器安排信標發送時序,解決信標沖突問題,并實現全網時鐘同步。然后,在應用層模塊中,STBTC_P協議在全網時鐘同步的基礎上,根據各個父節點信標發送時序,采用信標時序補償同步法達到機械振動采集命令多跳同步觸發的目的。
采集模塊作為采集命令的最終執行機構,采集命令在應用層模塊中經過相應的時序補償后下發到采集模塊,并由采集模塊同時觸發AD轉換器啟動振動數據采集。
下面將對STBTC_P協議的功能進行詳細描述。
開始進行信號采集前,STBTC_P協議以簇樹網絡作為基本拓撲結構組建網絡。除Sink節點外,網絡中每個子節點有且僅有一個父節點,采集命令由Sink節點依次通過父子鏈路傳送到各個采集節點,直至采集模塊觸發采集。要實現采集命令同步觸發,各個采集節點的采集模塊同時接收到命令是關鍵。
根據IEEE 802.15.4標準可知,在信標使能模式下,各個父節點不采用競爭機制發送信標,而是以廣播的形式發送。因此,在單跳命令傳輸過程中,采用信標負載的方式,把采集命令包含在信標中發送給子節點,可使每個子節點同時接收到命令,如果立即下發給采集模塊可達到同步觸發的目的,如圖2所示。

圖2 信標負載命令發送方式示意圖Fig.2 Beacons load mode of sending command
然而,在多跳簇樹網絡中,各個采集節點屬于不同的父節點,它們分別發送各自的信標,如果采用信標負載的方式發送采集命令,當網絡中多個設備同時發送信標時就有可能發生信標沖突,使得子節點無法正常接收到信標,導致采集命令丟失,系統同步采集失敗。如圖3所示的兩種情況,節點N1因信標沖突而無法接收信標[12]。

圖3 信標幀沖突示意圖Fig.3 Schematic diagram of beacon frame conflict
所以,在實現全網采集命令同步觸發之前,必須先解決網絡中信標沖突的問題。
2.1 避免信標沖突
IEEE 802.15.4標準引入了超幀結構,通過信標幀標定,把信道訪問的時間分為活動區間和非活動區間,設備在活動區間訪問信道,在其它時間處于低功耗休眠狀態,并分別通過兩個屬性BO和SO描述信標發送間隔BI以及活動區間長度SD[9]。
根據這一特點,STBTC_P協議采用時分復用的思想,安排所有父節點分別在不同的時間段發送信標,把它們訪問信道的活動區間區分開來,避免各個父節點的信標發生沖突。具體信標發送時序的安排方案如下所述:
首先,根據監測網絡規模和網絡中路由器的位置,在保證超幀結構的非活動區間能夠滿足所有其它鄰居設備安排各自活動區間的同時,以信道利用率最大化為原則,設置合適的屬性值SO和BO。然后,利用IEEE 802.15.4協議標準中超幀配置原語提供的參數“開始發送信標的時間”StartTime,由Sink節點采用集中關聯時序分配法統一給網絡中每個路由器分配合適的信標開始發送時間。StartTime是子路由器相對于其父節點信標發送時間的時間偏移。Sink節點采用集中關聯時序分配法為每個路由器分配的StartTime為:StartTime=(1+offset×numRouter)×(SD+GT)
公式中numRouter為同一深度中已入網的兄弟路由器個數;GT是為了保證父節點和子節點的超幀不沖突而添加的一段基本保護時間,取GT=SD/16;offset為每個兄弟路由器和它所有子孫路由器的信標發送時間偏移總量:其中:Rm為每個父設備最多允許關聯的路由器個數,Lm為網絡最大深度,參數d為申請路由器的深度。

最后,路由器獲得參數StartTime后,在其父節點發送完信標后,等待StartTime時間再開始發送信標,使得它的信標不和其它任何信標發生沖突,保證信標接收正常。信標發送具體過程如圖4所示。

圖4 路由器發送信標流程圖Fig.4 Schematic diagram of routers transmit beacon process
2.2 采集命令同步觸發
解決了信標沖突問題后,由Sink節點采用信標負載的方式發出采集命令,但是這樣只能保證網絡中同一父節點的幾個采集子節點同時接收到命令信標,而無法實現全網采集命令的同步觸發。因為在多跳網絡中,子節點只有在活動區間才能接收父節點的信標,采集命令信標必須經過父節點轉發才能到達采集子節點,而每個父節點都有自己獨立的信標發送時序,這就導致網絡中各個父節點的采集子節點接收到命令信標的時間各不相同,如果采集節點立即把命令下發到采集模塊,就無法達到各節點采集命令同步觸發的要求。如圖5(a)所示,三個采集節點分別在TA1、TA2和TA3開始采集。

圖5 信標時序補償同步觸發Fig.5 Beacon timing compensation synchronous trigger
考慮到采集子節點接收到命令信標的時間取決于其父節點發送信標的時序,STBTC_P協議根據信標時序分配的特點,采用信標時序補償的方法解決多跳網絡中采集命令同步觸發問題。其主要思想是各個采集子節點接收到命令信標之后,并不立即把命令下發到采集模塊去執行,而是分別根據各自父節點的信標發送時序等待相應的補償時間之后再發送,達到同步觸發的目的,因此此方法必須以全網節點時鐘同步為前提。
根據IEEE 802.15.4標準提供的子節點與父節點時鐘同步機制[9],在信標使能模式下,父節點周期性的發送帶有時間戳的信標。各個子節點成功加入網絡后,通過接收父節點信標、解析信標中的時間戳并記錄接收信標的時間實現和父節點間的時鐘同步。然后在多跳簇樹網絡中,各個父節點分別通過發送信標來同步子節點的時鐘,并依次和各自父節點的時鐘同步,最終實現全網節點時鐘同步。
全網時鐘實現同步后,可以使用信標時序補償方法來實現采集命令的同步觸發,為每個父節點的采集子節點安排合適的同步觸發補償時間。
根據監測網絡規模獲得網絡中所有信標發送設備的最大數目N=R0m+R1m+…+RLm-1m,那么節點N是最后一個發送信標的父節點,它的采集子節點接收到采集命令后立即下發到采集模塊,設置其補償時間backoff_N為0,而Sink節點作為第一個發送信標的父節點,它的采集子節點的補償時間backoff_0為:
backoff_0=(N-1)×(SD+GT)
網絡中第n個信標發送設備的采集子節點的補償時間backoff_n應為:
backoff_n=backoff_pn-StartTime_n
其中:backoff_pn為第n個信標發送設備的父節點的補償時間;StartTime_n為第n個信標發送設備相對于其父節點信標發送時間的時間偏移。
同步觸發補償時間由各個父節點設置好,和采集命令一起添加到信標負載中發送給采集子節點,采集子節點接收到父節點帶有命令和補償時間的信標后,解析信標負載獲得補償時間,并等待相應的補償時間之后把命令下發給采集模塊執行,達到同步觸發的目的,如圖5(b)所示,三個采集節點同時在時間TA開始采集。
為了驗證STBTC_P協議獲得的同步觸發精度,本文以WSN-G2節點搭建平臺進行驗證實驗。WSNG2節點是針對機械振動監測應用而設計的WSN采集/路由節點,它采用雙核心架構,核心1采用先進的STM32微控制器和獨立的高采樣率、高分辨率的A/D轉換器,負責振動信號的采集;核心2采用TI公司開發的CC2430射頻芯片[11],是STBTC_P協議的主要運行平臺,兩個核心通過串口通信,節點實物如圖6所示。
3.1 節點時鐘同步精度
為了測試網絡中父節點信標發送時序以及時鐘同步精度,組建一個三跳網絡,包含1個Sink節點、5個路由父節點和7個采集子節點,組網參數分別為:BO=7,SO=4,Cm=4,Rm=2,Lm=3。組成的三跳網絡的拓撲結構如圖7所示。

圖6 WSN-G2節點實物圖Fig.6 The prototype ofWSN-G2 node

圖7 三跳網絡拓撲圖Fig.7 The topology map of three-hop network
利用協議抓包工具Packet_Sniffer抓取網絡信道中所有信號包,包括每個信標發送設備加入網絡之后發送的所有周期的信標幀,圖8顯示了在其中任意選取的一個信標周期內抓取的所有信標幀。

圖8 信標發送時序圖Fig.8 The diagram of beacon transm ission timing
圖中深色框圈住的列依次是接收信標的時間間隔、發送節點地址以及信標發送StartTime值,依圖可知,在這個任意選取的信標周期中,各個設備都按照各自的發送時序發送信標,沒有發生信標碰撞,說明集中關聯時序分配法可以很好地避免多跳信標碰撞問題。
根據接收信標的間隔還可以獲得節點間的時鐘同步精度。節點1和節點E同為Sink節點0的子節點,它們的理論StartTime值分別為261 120μs和1 044 480 μs(0x3fc0和0xff00個符號周期,每個符號周期16μs[9]),而它們相對于父節點0的實際發送間隔分別為261 106μs和1 044 463μs,與理論值分別相差14和17μs;節點E與節點2間的信標間隔522246μs與理論值522 240μs((0xff00-0x3fc0-0x3 fc0)個符號周期)只相差6μs。依此方式依次比較,可獲得這個信標周期內最大偏差為17μs,最大時鐘同步誤差也就是17μs。
分別對其中20個信標周期中的最大偏差進行統計,計算它們的均值和方差,并重復組建十次相同的網絡進行相同的統計實驗,統計結果如圖9所示。從圖中可以看出,各個節點間的時鐘同步誤差平均在20μs內,相對于無線傳感器網絡中兩種常用的時鐘同步算法FTSP和TPSN分別達到的67μs[13]和50μs[14]時鐘同步精度具有較大的優勢。

圖9 多節點時鐘同步精度測試統計結果Fig.9 The synchronous accuracy of nodes’clock
3.2 命令同步觸發精度
測試同步觸發精度時,由Sink節點發送采集命令,用邏輯分析儀捕獲每個采集節點觸發采集時AD轉換器上引腳的變化時序來獲得節點的同步觸發誤差。如圖10所示,7個采集節點間命令觸發的最大時間誤差約為175μs。

圖10 同步觸發誤差測試Fig.10 The error test of synchronous trigger
為了測試同步觸發效果以及網絡跳數對精度的影響,本文分別組成單跳、雙跳和三跳網絡重復進行20次相同的實驗,統計各自的最大同步誤差,結果如圖11所示。

圖11 多節點命令同步觸發精度測試結果Fig.11 The synchronous accuracy of nodes triggering command
從圖中可以看出,單跳網絡中命令觸發最大誤差低于100μs,可以保證在10 kHz采樣速率下,各個采集節點采集第一個信號點的最大時間差低于一個采樣周期,可以為10 kHz同步采樣建立同步觸發基礎;而雙跳和三跳網絡低于300μs的最大誤差也能達到3 kHz采樣速率的同步觸發要求,滿足一般機械振動同步采集要求。
從圖11中還可以看出,多跳網絡的同步觸發誤差相對于單跳網絡增大明顯,但是三跳網絡相對于雙跳網絡并沒有明顯的增大。通過實驗分析發現其中一個主要原因就是因為STBTC_P協議的底層基礎TIMAC采用了一種非搶占型多任務OS操作系統,在單跳網絡中,采集節點接收到采集命令后立即開始采集,不需要時間補償;而在多跳網絡中,采集節點需要等待相應的補償時間后才能開始采集,而每個節點的時間補償是通過OS操作系統來完成的,這在一定程度上增大了同步誤差。為了進一步提高多跳同步觸發精度,下一步將嘗試直接采用芯片上的硬件定時器來提供補償時間,并引入實時操作系統,改進完善底層協議。
針對機械振動信號同步采集應用中需要各個采集節點采集命令同步觸發的要求,設計了一種無線傳感器網絡機械振動采集命令多跳同步觸發協議,采用集中關聯信標分配法解決了多跳網絡中信標沖突問題,并提出了信標時序補償法實現采集命令的多跳同步觸發。
在本文基礎上,我們的后續工作將嘗試直接采用芯片上的硬件定時器來提供補償時間,并引入實時操作系統,改進完善底層協議,提高命令同步觸發精度,并進一步研究重采樣法和同步截取法等同步采集方法,提高同步采集精度。
[1]Xiao H,Lu C,Ogai H.A multi-hop low cost time synchronization algorithm forwireless sensor network in bridge health diagnosis system[C]//Embedded and Real-Time Computing Systems and Applications(RTCSA),2012 IEEE 18 th International Conference on.IEEE,2012:392-395.
[2]Krishnamurthy V,Fowler K,Sazonov E.The effect of time synchronization of wireless sensors on the modal analysis of structures[J].Smart Materials and Structures,2008,17(5):1-13.
[3]湯寶平,曹小佳,張國壘.機械振動監測中的無線傳感器網絡時間同步研究[J].中國機械工程,2010,21(10):1190-1194.
TANG Bao-ping,CAO Xiao-jia,ZHANG Guo-lei.Time synchronization of wireless sensor networks for mechanical vibration monitoring[J].Chinese Journal of Mechanical Engineering,2010,21(10):1190-1194.
[4]Rice J A,Billie F S J.Flexible smart sensor framework for autonomous full-scale structural health monitoring[R].Newmark Structural Engineering Laboratory Report Series 018,2009.
[5]湯寶平,賀 超,曹小佳.面向機械振動監測的無線傳感器網絡結構[J].振動、測試與診斷,2010,30(4):357-361.
TANG Bao-ping,HE Chao,CAO Xiao-jia.Topology of wireless sensor networks for mechanical vibration monitoring[J].Journal of Vibration,Measurement&Diagnosis,2010,30(4):357-361.
[6]Hu X Y,Wang BW,JiH.A wireless sensor network-based structural health monitoring system for highway bridges[J].Computer-Aided Civil and Infrastructure Engineering,2013, 28(3):193-209.
[7]Maróti M,Kusy B,Simon G,et al.The flooding time synchronization protocol[C]//Proceedings of the 2nd International Conference on Embedded Networked Sensor Systems.ACM,2004:39-49.
[8]Elson J,Girod L,Estrin D.Fine-grained network time synchronization using reference broadcasts[J].ACMSIGOPS Operating Systems Review,2002,36(SI):147-163.
[9]IEEE 802.15.4.Wireless Medium Access Control(MAC)and Physical Layer(PHY)Specification for Low-Rate WireLess Personal Area Networks(LR-WPANs)[S].New York:IEEE Standard Committee,2006.
[10]Texas Instruments.802.15.4 MAC User’s Guide For CC2430.2009.
[11]Texas Instruments.CC2430 Datasheet[EB/OL].http://focus.ti.com/docs/prod/folders/print/cc2430.htm l.
[12]Koubaa A,Cunha A,Alves M.A time division beacon schedulingmechanism for IEEE 802.15.4/Zigbee cluster-tree wireless sensor networks[C]//19th Euromicro Conference on Date of Conference.Pisa:2007:125-135.
[13]Kim S,Pakzad S,Culler D,et al.Healthmonitoring of civil infrastructures using wireless sensor networks[C]//Information Processing in Sensor Networks,2007.IPSN 2007,6th International Symposium on.IEEE,2007:254-263.
[14]Ganeriwal S,Kumar R,Srivastava MB.Timing-sync protocol for sensor networks[C]//Proceedings of the 1st International Conference on Embedded Networked Sensor Systems.ACM,2003:138-149.
AWSN mechanical vibration synchronous acquisition trigger protocol based on beacon tim ing com pensation
PEIYong,TANG Bao-ping,DENG Lei,XIAO Xin
(The State Key Laboratory of Mechanical Transmission,Chongqing University,Chongqing 400030,China)
Aiming at the requirement that the sample commands of all the nodes should be triggered synchronously and the synchronization error should be less than one sampling period in the process ofmechanical vibration synchronous acquisition using a wireless sensor net(WSN),a WSN synchronization trigger protocol based on beacon timing compensation was designed.The protocol was developed based on IEEE 802.15.4 Standard,the acquisition commands were transmitted with beacon.A good foundation for synchronization acquisition by effectively avoiding beacon conflicts with the centralized associated beacons allocationmethod firstly and then achieving trigger synchronization with the beacon timing compensation method for a multi-hop network was established.Finally,the proposed protocalran on the selfdesigned acquisition nodeWSN-G2 and its effectivenesswas verified.
wireless sensor network(WSN);mechanical vibration;synchronous acquisition;IEEE 802.15.4
TP393.1;TH17
A
國家自然科學基金資助項目(51375514);高等學校博士學科點專項科研基金資助(20130191130001);機械傳動國家重點實驗室科研業務費(SKLMT-ZZKT-2012 MS 09)資助
2012-12-17 修改稿收到日期:2013-03-11
裴 勇男,碩士生,1988年4月生
湯寶平男,博士,教授,博士生導師,1971年9月生