李鈞威,孫旭飛
(福州大學(xué)物理與信息工程學(xué)院,福建福州,350108)
隨著城市道路網(wǎng)絡(luò)不斷地擴大,交通擁擠所導(dǎo)致的時間與經(jīng)濟損失等問題,極大地破壞了城市發(fā)展。智能交通系統(tǒng)是解決交通擁擠的有效手段,交通信號機作為信號智能控制的終端設(shè)備,既要控制交叉口的交通信號,又要采集交通流信息,其中車輛信息的采集對系統(tǒng)起著基礎(chǔ)和關(guān)鍵性的作用[1]。目前,交通信號機仍采用有線網(wǎng)絡(luò)方式采集車檢信息,如:傳統(tǒng)的工業(yè)有線RS485傳輸系統(tǒng),其不僅布線距離較短,在總線上所掛載的通信設(shè)備數(shù)量也有限,還容易受到地理環(huán)境的限制;相比之下,若采取無線網(wǎng)絡(luò)進行通信,則可擺脫線纜的束縛,而且其具有造價低、施工安裝周期短及后期維護方便等優(yōu)點[2]。
目前無線通信技術(shù)種類繁多且適用于不同的應(yīng)用場景,WIFI、zigbee等作為短距離無線通信技術(shù)的代表,其通信距離短且抗干擾能力弱,不適用于車檢系統(tǒng)組網(wǎng);以NB-IOT為代表的移動蜂窩技術(shù)雖然在長距離通信表現(xiàn)出眾,但它處在收費的運營商頻段,從成本上考慮同樣不適合。近年來,LoRa(Long Range)是低功耗廣域網(wǎng)中發(fā)展較成熟的通信方案,具有鏈路預(yù)算高、覆蓋范圍廣、抗干擾能力強及成本低等優(yōu)點。在交叉路口,外露的天線造價高且易遭破壞,因此天線一般都裝在信號機箱內(nèi)部,相比之下,LoRa無線技術(shù)容易勝任[3]。雖然LoRa的傳輸速率較低,但實際的車檢數(shù)據(jù)量較少,對于系統(tǒng)的實時性是有保障的。因此本文選擇了LoRa無線技術(shù)進行系統(tǒng)組網(wǎng)設(shè)計。
在道路交叉路口的智能化交通信號控制中,交通信號機需要通過各類車輛檢測器獲取各個進口道上的交通流信息,每個進口道路上至少有一個或一個以上的交通流檢測地點,檢測到的交通流信息需要實時傳送到信號機,因此,對于十字路口來說,交叉口的數(shù)據(jù)通信網(wǎng)至少是一對四的星型網(wǎng)絡(luò),若一個進口道有多個檢測地點,則就是一對N的星型網(wǎng)絡(luò)。另外,還要考慮信號機與移動的特殊浮動車輛的通信。在交通信號控制中,斷面交通流信息有:在車狀態(tài)、在車時間、交通流量、占有時間以及占有率。其中,占有時間和占有率,在交通信號自適應(yīng)控制中是十分重要的參量之一,它的精準(zhǔn)度取決于每一輛車經(jīng)過檢測地點時,車輛在斷面上的停留時間,通常情況下,車輛檢測器只負(fù)責(zé)傳輸在車狀態(tài)(斷面上是否有車),信號機負(fù)責(zé)計算在車時間。對于城市道路來說,一般車輛的在車時間在300ms~1200ms的范圍,中間值為750ms,車輛狀態(tài)時間的計算誤差要求在100ms之內(nèi)。顯而易見,車輛檢測器從檢測到在車狀態(tài)的變化開始,必須在100ms之內(nèi)把信息傳輸出去。因此,道路交通數(shù)據(jù)的傳輸對通信網(wǎng)絡(luò)的實時性要求是很高的。
本文設(shè)計的無線車輛檢測系統(tǒng)主要通信設(shè)備包括位于信號機內(nèi)的集中器模塊(通信網(wǎng)的中心節(jié)點)、車輛檢測器(通信網(wǎng)的固定節(jié)點)和浮動車輛通信模塊(通信網(wǎng)的移動節(jié)點)。根據(jù)交叉路口的分布特征,系統(tǒng)采用四路口鏈路集聯(lián)的通信模式,每條路口都需要建立與信號機集中器模塊的通信網(wǎng)絡(luò),集中器模塊通過有線方式與信號機通信,以無線方式接收車檢信息,固定通信節(jié)點分布在各進口路上的固定位置檢測車輛,浮動車作為移動通信節(jié)點也存在于各條進口路(后稱鏈路)上。考慮到各鏈路上節(jié)點的實時通信問題,每條鏈路的第一個固定通信節(jié)點設(shè)計為路由節(jié)點,其具有中繼功能,負(fù)責(zé)收集整條鏈路的車檢數(shù)據(jù)并打包發(fā)給中心節(jié)點;鏈路上其余的固定通信節(jié)點稱為上游節(jié)點,上游節(jié)點負(fù)責(zé)將該節(jié)點的車檢數(shù)據(jù)上傳給路由節(jié)點。
本系統(tǒng)中的通信節(jié)點數(shù)量較多,通信網(wǎng)絡(luò)拓?fù)漭^復(fù)雜。集中器與固定通信節(jié)點、移動通信節(jié)點組成一對多的星型網(wǎng)絡(luò)拓?fù)洌摼W(wǎng)絡(luò)易于擴展及隔離故障,既滿足了各節(jié)點的通信控制策略,又能實現(xiàn)交叉路口的現(xiàn)場車輛數(shù)據(jù)采集和數(shù)據(jù)遠(yuǎn)程上報等功能[4-5]。系統(tǒng)網(wǎng)絡(luò)拓?fù)鋱D如圖1,通信示意圖如圖2。

圖1 系統(tǒng)網(wǎng)絡(luò)拓?fù)鋱D

圖2 通信示意圖
根據(jù)車輛檢測系統(tǒng)的實時傳輸要求,需要確保時延在100ms之內(nèi),由于無線射頻通信的特性決定了系統(tǒng)組網(wǎng)只支持一發(fā)多收的傳輸模式,隨著節(jié)點數(shù)量的增多,多個通信網(wǎng)絡(luò)包在信道上的沖突概率會大大增加,傳統(tǒng)的主動輪詢方式因其耗時久已不能滿足系統(tǒng)需求,所以本文采用一種基于時分多址(TDMA)[6]的組網(wǎng)方式進行無沖突的主動上報。
2.2.1 時隙劃分
系統(tǒng)將整個信道傳輸數(shù)據(jù)的時間劃分成若干時隙,分配給每一個入網(wǎng)的節(jié)點使用,每個節(jié)點在自己分配的時隙進行主動上報,實現(xiàn)數(shù)據(jù)無碰撞的無線網(wǎng)絡(luò)通信[7]。為了方便定時且盡量減少時間同步誤差,而且要保證四條鏈路的車檢數(shù)據(jù)100ms為一個周期上傳一次,將節(jié)點總體時隙設(shè)置成1s為一個復(fù)幀,將這1s復(fù)幀平均分成10個100ms時隙幀,每一個時隙幀中都確保分配了四條鏈路的路由節(jié)點主動上報時隙。時隙的同步由集中器發(fā)送同步幀,各節(jié)點接收同步幀來實現(xiàn)。
根據(jù)LoRa傳輸時長的計算公式[8],以擴頻因子(SF)為7、帶寬(BW)為500kHz和編碼速率(CR)為4/5為例計算得出節(jié)點傳輸一次車檢數(shù)據(jù)(10字節(jié))所耗費的時間約為10ms,考慮到實際環(huán)境可能存在偏差,對時隙留有一定余量,暫且將固定節(jié)點的主動上報時隙長度設(shè)置為16ms;由于移動節(jié)點發(fā)送間隔為1s,所以,每一幀中剩余的36ms作為移動節(jié)點上報數(shù)據(jù)時隙,將1s復(fù)幀中第一個移動節(jié)點上報時隙作為移動節(jié)點的入網(wǎng)操作使用,則一個復(fù)幀最多可上報9個移動節(jié)點的車檢數(shù)據(jù),多余的數(shù)據(jù)則順延到下一個復(fù)幀上報,以此類推。復(fù)幀結(jié)構(gòu)如圖3所示。

圖3 時隙復(fù)幀結(jié)構(gòu)
如圖4為鏈路時隙分配圖,每一幀的時隙2~5為四條鏈路以100ms為一個周期的主動上報時隙,時隙后剩余的84ms則分配給其鏈路上的上游節(jié)點主動上報數(shù)據(jù),上游節(jié)點的一個發(fā)送時隙同樣為16ms,這樣保證每個節(jié)點都有獨立的發(fā)送時隙。

圖4 鏈路時隙分配
2.2.2 信道劃分
根據(jù)系統(tǒng)總體時隙劃分情況,將LoRa無線通信信道分為兩類,其一是數(shù)據(jù)主信道,其二是數(shù)據(jù)輔信道。其中,CH1是數(shù)據(jù)主信道,用作集中器與路由節(jié)點、移動節(jié)點通信的信道,其中包括了集中器廣播、移動節(jié)點入網(wǎng)以及路由節(jié)點主動上報等操作;CH2-CH5是數(shù)據(jù)輔信道,用作四條鏈路的上游節(jié)點主動上報數(shù)據(jù)信道,每條鏈路分配一條信道,避免各鏈路節(jié)點通信產(chǎn)生干擾。
CH1-CH5共5個信道需要劃分在不同的頻段。
系統(tǒng)主要通信動作有節(jié)點入網(wǎng)、廣播同步以及主動上報數(shù)據(jù)。系統(tǒng)通過集中器下發(fā)同步幀開始各項通信動作,節(jié)點收到時間同步幀后獲取主動上報時隙。根據(jù)信道劃分,主要包括集中器與路由節(jié)點、移動節(jié)點的通信時序,及路由節(jié)點與上游節(jié)點的通信時序。
集中器與路由節(jié)點、移動節(jié)點之間的通信在數(shù)據(jù)主信道CH1進行,集中器每隔1s發(fā)送時間同步廣播幀,在幀1的時隙1階段,路由節(jié)點收到同步幀后啟動1ms定時器,接著切回各自的鏈路信道,若有車檢數(shù)據(jù)需要發(fā)送,路由節(jié)點在主動上報時隙切回CH1信道發(fā)送數(shù)據(jù);同時移動節(jié)點收到同步幀后,若入網(wǎng)成功則在相應(yīng)時隙主動上報,否則進行入網(wǎng)申請,為避免多個移動節(jié)點同時申請入網(wǎng),因此在申請入網(wǎng)前先對無線CAD信道進行判斷是否空閑,空閑則發(fā)送入網(wǎng)數(shù)據(jù),否則隨機退避延時等待,超過退避時隙閾值則重新等待廣播數(shù)據(jù)[9]。
在每秒間隔開始前5ms,路由節(jié)點切回CH1信道等待接收時間同步幀,接收完數(shù)據(jù)切回各自的鏈路信道。通信時序如圖5所示。

圖5 集中器與路由節(jié)點、移動節(jié)點的通信時序
路由節(jié)點與上游節(jié)點之間的通信在數(shù)據(jù)輔信道CH2-CH5進行,圖6為通信時序,上游節(jié)點收到同步幀后開啟1ms定時器,為保證通信時隙不沖突,要求上游節(jié)點在路由節(jié)點主動上報時隙前10ms不允許發(fā)送數(shù)據(jù),確保路由節(jié)點不處于接收狀態(tài),上游節(jié)點主動上報時隙分配在路由節(jié)點主動上報時隙之后;在每秒間隔開始前5ms停止發(fā)送數(shù)據(jù),切回CH1信道等待接收時間同步幀。

圖6 路由節(jié)點與上游節(jié)點的通信時序
本文設(shè)計的系統(tǒng)對應(yīng)用層做了自定義的通信協(xié)議設(shè)計,通過對數(shù)據(jù)進行打包和解析操作實現(xiàn)集中器與各個節(jié)點之間的往返通信。其中,規(guī)定采用數(shù)據(jù)幀模式傳輸由二進制字節(jié)序列構(gòu)成的數(shù)據(jù)流,最后在數(shù)據(jù)的幀尾端加入了CRC校驗機制,確保數(shù)據(jù)傳輸無誤[10]。
3.2.1 集中器協(xié)議幀結(jié)構(gòu)
集中器下發(fā)的時間同步廣播幀結(jié)構(gòu)如表1所列,幀頭定義為0x5A,入網(wǎng)成功的移動節(jié)點數(shù)量占用1個字節(jié),移動節(jié)點車輛信息由序號及車輛標(biāo)識號組成兩個字節(jié)序列,根據(jù)實際入網(wǎng)情況進行廣播,最后是校驗和計算。

表1 集中器協(xié)議幀結(jié)構(gòu)
3.2.2 固定通信節(jié)點協(xié)議幀結(jié)構(gòu)
固定節(jié)點主動上報數(shù)據(jù)幀格式如表2所示,共包含10字節(jié)內(nèi)容,幀頭為0x6A,每個節(jié)點的唯一標(biāo)識即鏈路地址占用1個字節(jié),鏈路地址由硬件上的撥碼開關(guān)獲取;車檢數(shù)據(jù)包括有無故障狀態(tài)、有無車輛狀態(tài)以及速度等參數(shù)信息。有無故障狀態(tài)和有無車輛狀態(tài)用二進制0/1表示,用兩個字節(jié)16位來表示狀態(tài),則每一條鏈路最多可接入16個車輛檢測器。

表2 固定通信節(jié)點協(xié)議幀結(jié)構(gòu)
3.2.3 移動通信節(jié)點協(xié)議幀結(jié)構(gòu)
移動通信節(jié)點到達路口后對集中器進行入網(wǎng)申請,集中器會在廣播幀中告知入網(wǎng)成功的移動節(jié)點信息,移動節(jié)點離開路口后則會斷開連接,把位置留給新的節(jié)點。
移動通信節(jié)點協(xié)議幀包括移動節(jié)點入網(wǎng)申請數(shù)據(jù)幀以及主動上報數(shù)據(jù)幀。入網(wǎng)申請數(shù)據(jù)幀結(jié)構(gòu)如表3所示,幀頭為0x7B,信息類型分為聯(lián)網(wǎng)(0x21)與脫網(wǎng)(0x31)兩種,加入了車輛唯一標(biāo)識是為了區(qū)分不同的車輛。

表3 移動節(jié)點入網(wǎng)申請數(shù)據(jù)幀結(jié)構(gòu)
移動節(jié)點主動上報數(shù)據(jù)幀結(jié)構(gòu)如表4所示,幀頭為0x7A,信息類型為0x51,同時預(yù)留五個字節(jié)存放車檢數(shù)據(jù),共計10個字節(jié)。

表4 移動節(jié)點主動上報數(shù)據(jù)幀結(jié)構(gòu)
集中器模塊微處理器采用 STM32系列處理器STM-32F103VCT6,該芯片在保持了低功耗的基礎(chǔ)上,采用32位ARM Cortex-M內(nèi)核,具有較快的處理速度。集中器模塊同時與各檢測器模塊和信號機主板通信,因此集中器模塊的UART2串口通過有線RS232連接信號機主板,SPI1接口與LoRa模塊相連接,本系統(tǒng)選擇基于SX1268芯片的LoRa模塊來實現(xiàn)無線通信功能,使用的是南京仁玨科技研發(fā)的LoRa模組,型號為M-XL6,采用SPI接口,其具有結(jié)構(gòu)緊湊、低功耗、通信距離遠(yuǎn)等優(yōu)點。另外提供了SWD接口的設(shè)計方便程序下載調(diào)試,預(yù)留了485總線用于接入其他設(shè)備使用。圖7為集中器的電路結(jié)構(gòu)圖。

圖7 集中器電路結(jié)構(gòu)圖
檢測器主板的MCU用到了微處理器STM32F103RET6,通過接入不同類型的車輛檢測器獲取車檢數(shù)據(jù)。為了完成與集中器模塊的數(shù)據(jù)交換,檢測器主板通過SPI3接口接入LoRa無線模塊,型號同集中器模塊。同樣設(shè)計了程序下載調(diào)試接口,UART2與PC機相連方便觀察檢測器工作狀態(tài),以及預(yù)留485總線用于連接其他設(shè)備。圖8為檢測器的電路結(jié)構(gòu)圖。

圖8 檢測器電路結(jié)構(gòu)圖
本文根據(jù)系統(tǒng)架構(gòu)設(shè)計,搭建系統(tǒng)集中器與檢測器的硬件平臺,并對各接口進行了調(diào)試,驗證了系統(tǒng)的硬件設(shè)計合理可行,之后根據(jù)本文設(shè)計的通信協(xié)議,進行了簡單的發(fā)包測試,確認(rèn)了各節(jié)點之間數(shù)據(jù)能夠正常交互,驗證了本文研究的路口交通流數(shù)據(jù)無線通信的可行性。但由于時間有限,目前無線車輛檢測系統(tǒng)還未運用到實際環(huán)境中搭建測試,今后還需要進一步研究并不斷改進完善。