摘 要: 針對低速PLC通信網絡MAC層數話同傳支持不足的問題,基于FlexRay靜態(tài)段定時觸發(fā)和動態(tài)段事件觸發(fā)思想提出一種用于構建低速PLC數話同傳網絡的應用層組網協議,詳細描述了網絡設備的軟件和硬件開發(fā)過程,并利用串型和星型拓撲研究了網絡性能。試驗結果表明該網絡通信距離長,業(yè)務響應時延小。
關鍵詞: 低速電力線通信; FlexRay協議; 數話同傳網絡; 開發(fā)與應用
中圖分類號: TN915.04?34; TP302 文獻標識碼: A 文章編號: 1004?373X(2016)17?0055?05
0 引 言
電力線通信(Power Line Communication,PLC)技術能利用現有的電力線設施構建通信網絡,早期應用于中低壓電力網絡的智能抄表、遠程控制及能源管理等方面,數據傳輸是網絡承載的主要業(yè)務[1]。隨著寬帶時代的到來,利用室內電力線傳輸數字話音、視頻和Internet數據的需求日益突出,研究電力線的高速接入及多媒體信息傳輸成為當前熱點[2]。
PLC技術可分為超窄帶(UNB)、低速(LDR)窄帶、高速(HDR)窄帶和寬帶(BB)四類[3?4]。近年來,高速窄帶和寬帶PLC技術在ITU?T G.hn和IEEE 1901兩大陣營的推動下得到了深入研究,前者致力于基于現有技術改進性能,后者采用革命性方法提升速率以滿足數據和話音綜合業(yè)務的應用需求[5]。而工作頻段在3~500 kHz的低速窄帶PLC技術因其數據傳輸速率低(Kb/s量級)、組網能力差的原因,在支持數話同傳的實用化網絡系統上應用研究不足。目前的通信網絡PLC產品中,基于頻分復用傳輸音頻的模擬型PLC數話同傳網絡存在話路數量受限、通話質量和保密性差等問題[6],音頻部分采用TDM+TCM(時分復接、網格編碼)技術的數字式PLC網絡,基于聲碼器實現話音壓縮傳輸,在多用戶沖突解決上主要依賴MAC層基于避讓算法的CSMA/CA信道接入機制。然而,退讓算法因不能保證信息傳輸時間的確定性難以滿足話音業(yè)務的QoS需求。MAC層基于分組優(yōu)先級的控制方法有利于保障數話同傳業(yè)務中話音流的QoS,但這種方法在早期的低速窄帶PLC的技術標準和產品中實現不足。為確保低速PLC能夠承載數字話音或VoIP,網絡使用的整個協議必須能夠滿足由于各種業(yè)務帶來的信息傳輸時間確定性的需求。為此,人們嘗試從低速窄帶PLC的PHY層、MAC層、應用層全面進行優(yōu)化改進。法國學者Xavier Carcelle和德國學者Halid Hrasnica等人認為:對于不能保證服務質量的早期PLC技術,必須在MAC之上的應用層來補償[7?8]。
本文基于美信半導體公司(Maxim)推出的業(yè)內首款OFDM電力線通信芯片組MAX299x設計硬件,運用FlexRay靜態(tài)段定時觸發(fā)和動態(tài)段事件觸發(fā)思想設計數話同傳組網協議,避免利用MAC層的退避機制實施信道的競爭訪問,保證數據和話音傳輸的確定性。該網絡支持串型、星型拓撲下任意兩個用戶在進行話音通信的同時,允許其他用戶之間進行數據通信,具有較小的用戶數據響應時延和較長的通信距離。
1 基于FlexRay的PLC數話同傳網絡開發(fā)
1.1 基于FlexRay的應用組網協議總體設計
FlexRay協議是FlexRay聯盟制定的適用于汽車高速網絡的新一代車載總線協議,其協議具有消息長度可配置、靜/動態(tài)消息傳輸部分的時間可定制、支持多種網絡拓撲結構等顯著的靈活性特點[9]。FlexRay的媒質訪問機制基于循環(huán)往復的通信周期,每個通信周期包括靜態(tài)段、動態(tài)段、符號窗口以及網絡空閑時間[10]。靜態(tài)段和動態(tài)段由時隙構成,通過時隙傳輸幀信息,時隙經固定的周期而重復。靜態(tài)段中采用時分多址(TDMA)技術實現定時觸發(fā)消息傳遞,動態(tài)段中采用柔性時分多路訪問(Flexible Time Division Multiple Access,FT?DMA)實現事件觸發(fā)的方式傳輸事件信息。此外, FlexRay允許用戶根據實際情況對靜態(tài)部分和動態(tài)部分的長度進行靈活配置。
Maxim公司推出的MAX299x芯片組支持包括 CENELEC A/B/C,ARIB,FCC規(guī)定的全部窄帶PLC頻段,能夠在10~490 kHz頻帶提供最高100 Kb/s的傳輸速率,MAC層支持CSMA/CA通道訪問仲裁和自動重傳請求(ARQ)功能。但在實際的項目開發(fā)時,一方面出于低功耗和EMC設計考慮,通常采用供電要求更低的32 Kb/s速率,此時不能完成64 Kb/s PCM數字化話音的傳輸;另一方面,MAX299x MAC層的沖突避讓算法不能保證信息傳輸時間的確定性。因此本文基于FlexRay靜態(tài)周期和動態(tài)周期可變長思想設計一種應用層組網協議,實現組網和數話同傳調度。該協議的核心內容為:
(1) 應用層將MAC子層所屬的數據鏈路層視為共享媒介,應用層基于硬件狀態(tài)信號對數據鏈路層LLC子層進行沖突檢測,從源頭上避免沖突發(fā)生;根據業(yè)務類型采用靜態(tài)和動態(tài)時隙傳輸數據,保證實時性;
(2) 在靜態(tài)段,時隙的數目是固定的,且不論有無靜態(tài)消息需要發(fā)送,各時隙的長度均保持不變且彼此相等。靜態(tài)段時隙的長度是由全網配置參數gStaticSlot規(guī)定的;
(3) 在動態(tài)段,引入了一個稱為最小時隙minSlot的概念。動態(tài)段的長度是由其所包含的minSlot的數目決定的,該數目用參數gMinslotsNum表示。在動態(tài)段,如果在某個時隙內沒有消息需要發(fā)送,那么該時隙的長度非常短(長度等于一個minSlot的長度,用參數gMiniSlot表示;反之,如果有消息需要發(fā)送,則時隙的長度等于發(fā)送整個消息所需的minSlot的數目;
(4) 在靜態(tài)段或動態(tài)段的某個時隙內部,僅有一個節(jié)點被允許向鏈路層發(fā)送數據,且接收節(jié)點標識符(NodeId)與接收消息中目的地址相等時,才允許主動發(fā)送數據。NodeId是在系統設計階段靜態(tài)地分配給各節(jié)點的,由于同一NodeId不允許被分配給不同的節(jié)點,可以確??偩€上不會發(fā)生媒質訪問沖突現象。
1.2 PLC數話同傳設備的硬件總體設計
為實現低速PLC數話同傳網絡的靈活構建,PLC數話同傳設備采用主機模塊和接入模塊相分離的原則進行設計,兩者通過數據接口、鏈路狀態(tài)接口通信。其中主機模塊的CPU采用PowerPC處理器,運行應用組網軟件,完成對接入模塊的信道控制和業(yè)務調度。接入模塊實現數據鏈路層協議和數字信號的數字化調制,提供電力線連接接口,其控制器采用MAX2990[11],模擬前端采用MAX2991[12]。硬件組成框圖如圖1所示。
1.3 硬件開發(fā)
1.3.1 接入模塊開發(fā)
接入模塊主要由微控制器MAX2990和模擬前端MAX2991等芯片電路組成。MAX2990在單個芯片內集成了物理層(PHY)和媒體訪問控制(MAC)層,以及 Maxim的16位RISC MAXQ微控制器,芯片內有32 KB閃存,用于運行MAC編碼和用戶定義的應用軟件,還帶有8 KB SRAM用于數據存儲。另外,MAX2990支持UART,SPI,I2C等串行接口。發(fā)送時,經MAX2990處理的數字信號由模擬前端芯片MAX2991進行DAC變換成模擬信號,經電力線耦合電路將信號送上電力線,完成信號的發(fā)送;接收時,電力線上的信號先通過低通濾波器濾波后,經模擬前端芯片MAX2991送到MAX2990進行處理。
在實際的硬件設計過程中,PLC接入模塊電路設計必須考慮以下幾個關鍵點:
(1) 電源電路的設計必須兼顧5 V和12 V兩種供電方式,并能切換,以滿足不同應用場合的需求。如在能耗要求嚴格的場合使用5 V供電,有利于降低PLC設備/裝置的整體功耗,此時傳輸速率為32 Kb/s;在能量許可的條件下,可使用12 V供電,此時傳輸速率可提高到100 Kb/s。
(2) 為了提高接入模塊的通用性,應引出UART,I2C和SPI三種數據接口,方便接入模塊以子卡方式內置于各種設備;鏈路狀態(tài)接口基于通用GPIO實現。
(3) 起耦合和隔離作用的變壓器對節(jié)點間通信距離和誤碼率影響很大,應根據CENELEC A/B/C,ARIB,FCC等工作模式和模擬前端(FAE)選擇合適的變壓器。PCB布線時應預留足夠的變壓器裝配空間。耦合部分電路如圖2所示。
耦合部分TB1為交流220 V AC端子,經過一個LC串聯諧振電路,進入到耦合變壓器。P6是模式選擇跳線,用來針對不同的頻段進行選頻,其中1和2連接表示選擇CENELEC A頻段,3和4連接表示選擇CENELEC B,C,FCC頻段。
耦合部分的主體是耦合變壓器,表1給出一組適合CENELEC A頻段的耦合變壓器參數。
1.3.2 主機模塊硬件設計
主機模塊主要包含電源管理單元電路,MPC8313處理器,FPGA,DSP AC481電路。電源管理單元負責整個模塊的電源處理,處理器利用自帶的UART,I2C接口與接入模塊通信,利用通用GPIO管腳實現鏈路狀態(tài)接口;FPGA模塊實現靈活的SPI數據接口,并將DSP采集的數字話音轉發(fā)給處理器。原理框圖如圖3所示。
圖3 主機模塊原理圖
1.4 軟件開發(fā)
1.4.1 應用組網協議實現
PLC數話同傳網絡采用半雙工方式通信,網絡中設置一個主站,主站和分站之間采用數據消息復用成控制消息方式進行交互,即主站依次向各分站發(fā)送查詢命令消息,目標站接收后發(fā)送應答消息。當無業(yè)務數據需發(fā)送時,查詢命令消息和應答消息攜帶網管包,且在靜態(tài)段發(fā)送;當有業(yè)務數據待發(fā)時,攜帶數據包和話音包,在動態(tài)段發(fā)送。一個網管型消息傳輸時間總是固定不變的,即構成靜態(tài)段時隙的長度,由全網配置參數gStaticSlot規(guī)定,默認為40 ms。業(yè)務型消息因數據流和話音流的長度可變,多個消息構成動態(tài)段。本文中動態(tài)段最小時隙長度minSlot為10 B的G.729話音生成時間,即10 ms。整個動態(tài)段時隙長度取決于數據和話音封包的時間間隔,默認取60 ms,因此參數gMinslotsNum=6。
網管型和業(yè)務型消息均由主機模塊作為源頭發(fā)起,接入模塊對消息中的網管包解析處理完成自身站點配置過程,對消息中數據包或話音包(含數話同傳包)做透明傳輸。網絡中每個站點均維持一個組網狀態(tài)機,狀態(tài)機中正常主動態(tài)是指主站作為發(fā)話方,此時主站負責發(fā)送查詢命令消息,從站接收該消息的狀態(tài)。正常被動態(tài)是指從站作為發(fā)話方,從站負責發(fā)送查詢命令消息,主站接收該消息的狀態(tài)。兩種狀態(tài)的跳變由網管消息中的呼叫信令觸發(fā)。組網狀態(tài)機如圖4所示。
1.4.2 接入模塊軟件實現
接入模塊軟件運行在Max2990上,采用C語言開發(fā)。集成開發(fā)環(huán)境為IAR Embedded Workbench for Maxim MAXQ[13]。主要完成UART數據接口/GPIO狀態(tài)接口初始化,PHY層初始化,MAC層初始化。核心代碼包括四個部分:PHY層收發(fā)包中斷處理;MAC層收發(fā)包中斷、CRC錯報包中斷處理;UART等數據接口包解析和PHY幀填充;線路空閑狀態(tài)檢測及鏈路狀態(tài)上報。
接入模塊軟件編程過程中必須注意char,short,int,long等數據類型的使用,因Max2990為16位微處理器,int數據類型為16 b,要使用32 b的變量必須用long類型定義。
1.4.3 主機模塊軟件實現
主機模塊軟件作為嵌入式Linux用戶空間程序運行在MPC8313處理器上,采用C語言開發(fā)。主要完成組網狀態(tài)機的管理,DSP話音包處理,UART等數據接口消息的封裝和解析。數據接口消息格式如圖5所示。
軟件編程的重點是數話同傳包的組裝和拆分。通話狀態(tài)下,定時器周期性從DSP讀取G.729數據,60 ms內生成60 B話音數據。如果定時周期結束時無應用數據需要發(fā)送,則消息的正文直接填充話音數據;如果有應用數據需發(fā)送,則應用數據填充到話音數據后,生成數話同傳包。
2 PLC數話同傳網絡應用分析
業(yè)務響應時延和通信距離是低速PLC數話同傳網絡的關鍵性能,分析該指標有利于開展網絡應用。利用前文所述方法研制的PLC數話同傳設備構建串型網絡或星型網絡,網絡拓撲如圖6所示。
首先分析業(yè)務響應時延,方法如下:
(1) 在主站點0和站點1的用戶計算機上分別運行專用數傳測試軟件TxTester收發(fā)數據,通過頭戴的PPT控制發(fā)話音。數傳測試軟件界面如圖7所示。
(2) 利用配置消息調整所有站點靜態(tài)段時隙gStaticSlot和動態(tài)段最小時隙數目gMinslotsNum,如取值為(40 ms,4),(50 ms,5),(60 ms, 6)等。通過數傳測試軟件控制用戶數據的發(fā)包間隔和包大小,如每隔10 ms發(fā)100 B,20 ms發(fā)300 B。數話同傳過程中,接收端收包間隔如圖8所示。
測試表明:數話同傳時,滿足話音清晰可懂且數據無丟包要求的最佳網絡參數為(40 ms,5),13個節(jié)點的串型或星型拓撲下能支持用戶數據發(fā)送間隔最小達60 ms(數據長度300 B),數話通信延時60.8 ms。
通信距離分析方法:在給定頻段下,網絡通信距離受電力線的輸入阻抗與接入模塊輸出阻抗匹配程度、傳輸的多徑效應、信號衰減等因素影響。本文首先選定CENELEC A頻段和理論參數最理想的變壓器;在網絡中相距最遠兩站點的應用層以及PHY?MAC傳接處兩個環(huán)節(jié)上進行報文收發(fā)統計;調整串行或星型拓撲下各站點的數量和距離;啟動各種長度的數話同傳,記錄和統計丟包率,曲線如圖9所示。
試驗結果表明:通信距離受線路輸入阻抗影響最大;13個站點組網時,串行拓撲下最遠兩個節(jié)點間數話同傳距離可達6 km(其他站點可位于該線路的任意位置),星型拓撲下中心站與分站之間數話同傳的通信距離可達10 km。
3 結 語
本文提出的基于FlexRay靜態(tài)段定時觸發(fā)和動態(tài)段事件觸發(fā)思想的組網協議,適用于低速PLC網絡的應用層,創(chuàng)新了低速PLC網絡實現可靠數話同傳業(yè)務的方法。以組網協議的設計和實現為基礎,詳細描述了基于Maxim芯片研制低速PLC網絡設備的軟件和硬件開發(fā)過程,總結出了具有現實指導意義的開發(fā)經驗。通過協議在32 Kb/s速率PLC數話同傳網絡的運行分析表明,基于該應用組網協議和Maxim芯片構建的低速PLC網絡能可靠地傳輸發(fā)送頻繁的用戶數據和清晰的話音,具有通信距離長和業(yè)務響應時延小的特點。
參考文獻
[1] FEEIRA H C, LAMPE L, NEWBURY J, et al. Power line communications: theory and application for narrowband and boradband communications over power lines [M]. New York: John Wiley Sons, 2010.
[2] YOUSUF M S, RIZVI S Z, EL?SHAFEI M. Power line communications: an overview?part I [C]// Proceedings of 2008 International Conference on Information and Communication Technologies: from Theory to Applications. Damascus: IEEE, 2008: 218?222.
[3] GALLI S, SCAGLIONE A, WANG Z. For the grid and through the grid: the role of power line communications in the smart grid [J]. Proceedings of the IEEE, 2011, 99(6): 998?1027.
[4] 劉二明.基于INT5200芯片的電力線載波通信裝置的設計[D].南京:南京理工大學,2006.
[5] RAHMAN M M, HONG C S, LEE S, et al. Medium access control for power line communications: an overview of the IEEE 1901 and ITU?T G.hn standards [J]. IEEE communications magazine, 2011, 49(6): 183?191.
[6] 湯春林.集成音視頻和監(jiān)控信號的電力線傳輸技術研究與應用[D].上海:同濟大學,2007.
[7] CARCELLE X.電力線通信技術與實踐[M].劉斌,崔曉曼,方箭,等譯.北京:機械工業(yè)出版社,2011.
[8] HRASNICA H.寬帶電力線通信網絡設計[M].宋健,趙丙鎮(zhèn),李曉,譯.北京:人民郵電出版社,2008.
[9] 紀光霽,萬茂松.汽車ECU通訊新平臺?FlexRay(V2.1)協議規(guī)范[J].汽車電器,2006(10):1?6.
[10] FlexRay Consortium. FlexRya portocol specification V2.1 Rev A [R]. Stuttgart: FlexRay Consortium, 2005.
[11] Maxim Integrated. MAX 2990 integrated power?line digital transceiver programming manual [EB/OL]. [2014?11?02]. http://pdfserv.maximintegrated.com/en/an/AN4729.pdf.
[12] Maxim Integrated. MAX2991: power?line communications (PLC) integrated analog front?end transceiver [EB/OL]. [2015?11?15]. http://www.maximintegrated.com/en/reliability/product/MAX2991.pdf.
[13] IAR Systems. IAR embedded workbench for MAXQ [EB/OL]. [2014?11?06]. http://www.iar. com/Service?Center/Downloads/.