丁亞林 朱云生 王 斌
(重慶郵電大學自動化學院,中國 重慶400065)
作為車聯網主要組成部分,車路協同技術已經成為當今國際智能交通領域的前沿技術,車路協同技術是解決道路交通安全、提高通行效率和減少交通污染的有效途徑。車路協同對車聯網的發展起到關鍵作用,而在車路協同系統開發過程中需要將各種針對其開發的算法應用到實車測試中。但由于開發出算法的穩定性、可靠性等存在的一系列問題以及實車測試時受到的各種客觀條件限制,比如車輛在高速路口時車流量較大,車輛在高速運行時車速過快等問題,使得實車測試難度增大,存在很大安全隱患。大多仿真系統只針對某一算法原理進行設計,開放性差;沒有將虛擬現實技術運用到車路協同仿真中,可視化效果差;仿真程序大都針對某一特定場景進行設計,不支持多場景仿真,通用性差等。因此,開發支持多場景、多算法的車路協同仿真與實驗系統具有重要意義。
根據車路協同的仿真與實驗系統的設計需求,該系統包括各個模塊間接口技術,與車輛通信技術以及仿真技術以及軟件設計相關技術等。
程序之間的通信有多種方式,例如動態鏈接庫、COM技術、API技術等。動態鏈接庫(Dynamic Link Library,DLL)是微軟公司在微軟視窗操作系統中實現共享函數庫概念的一種方式。與DLL相比,COM技術學習難點大,不容易掌握,而且COM組件可以被重用,一個程序升級COM組件可能導致別的程序都無法使用。DLL技術具有容易掌握、擴展了應用程序特性、可以用多種編程語言、節省內存、助于解決平臺差異等優點。選取DLL技術作為車路協同仿真與實驗系統與各個算法模塊間的接口技術,可以降低系統開發技術難度,節省開發時間以及滿足系統開放性和通用性的特點。
車路協同的仿真與試驗系統的通信主要是仿真與試驗系統通過無線廣播的形式采集數據,采用DSRC技術。車與車,車與路測設備之間用廣播通信的方式,通信協議就采用DSRC協議。DSRC即802.11p協議或WAVE(wireless access for vehicular environments)協議,DSRC通信協議依據開放系統互聯體系結構(OSI)七層協議模型提出的三層的簡單協議結構。
本系統包括多場景設計,因此軟件開發涉及到多文檔(Multiple Document Interface,MDI)技術和窗口之間的繼承技術。系統多窗口采用MDI設計模式,由一個主窗口和多個子窗口構成,每個場景對應相應的子窗口,子窗口與子窗口之間相互獨立。每個子窗口都從父類窗口中繼承產生。這種設計方式減少了大量重復性工作,提高了工作效率。
本系統涉及了多個仿真與實驗場景,每個場景都有自己的獨立特性,包括參數、報警方式等不同,同時,每個場景的整體框架基本相同,都包括運行場景、數據顯示和配置參數三個部分以及一個報警區和一個狀態顯示條。運行場景頁面顯示車輛實時運行狀態,數據顯示頁面顯示在運行場景下車輛WSU接收到的原始和解析后的數據,配置參數頁面用來在仿真模式時配置車輛信息,報警區包括威脅指數顯示條、報警指示燈、報警閃爍圖標等內容,報警時報警指示燈閃爍,報警圖標閃爍并發出聲音,狀態顯示條主要顯示本車和相鄰車輛的一些重要參數。
系統運行模式分為仿真模式和實驗模式,仿真模式用來對報警等算法進行仿真、調試。用戶可以在每個場景的配置參數頁面中對車輛初始狀態相應配置。仿真系統通過調用算法程序,手動配置或者從外界文件中讀取參數的方式將相關數據傳輸給算法程序,由算法程序計算出威脅指數,報警信息等參數,并反映在仿真界面上。車輛根據配置的參數在運行場景頁面的地圖上行駛。實驗模式主要應用于實際運行系統,獲取參數的方式與仿真模式不同:參數從車輛WSU獲得。程序將WSU獲取的信息進行解析并顯示,車輛根據解析后的數據(如經度、緯度、速度等信息)在實際地圖上行駛。多個威脅參數也是由算法程序計算得出。根據需求相關內容,
本軟件需要搭建多個場景的仿真與實驗平臺,包括是十字路口、隧道和超車換道場景等。此外,由于實際實驗場景非常復雜,為了解決這一問題,軟件設計了場景動態生成功能,用戶可以根據需求自己搭建仿真場景,匹配相應的仿真算法。動態生成仿真場景的配置窗口的數據保存在XML文件中,每次需要生成場景時,配置窗口的數據信息通過解析XML文件獲取。軟件架構采用了MDI設計模式,每個仿真場景都是主窗口的子窗口,減少開發程序時的重復性工作,是設計更加靈活。每個場景都有仿真模式和實驗模式。當場景選擇了運行模式(仿真或實驗模式)后就要對參數進行配置,參數配置方式可以有三種方式:手動配置、從文件中導入以及接受無線傳輸數據包。
本系統將仿真模式和試驗模式搭建到同一個軟件平臺上,減少很多重復性工作。系統在選擇場景之后就會選擇運行模式為仿真模式或者是實驗模式,當選擇仿真模式時,數據來源有兩種,一種是直接手動配置,一種是系統從外界表格中讀取相關數據。實驗模式的數據來源是通過無線通信和車載CAN總線獲取的。明確數據來源之后就要選擇相應的算法,軟件采用調用動態鏈接庫的方式調用車路協同相關算法,使得算法調用非常靈活,方便算法升級。算法輸入參數即為配置參數時設置的。算法可以自動選擇配置參數作為自身參數的輸入。仿真場景中車輛的運行軌跡參數由配置參數確定,車輛行駛時的威脅指數和抱緊參數由威脅評估算法計算產生。場景仿真結束后,仿真算法生成的數據保存在表格中,數據保存采用OLE技術,并對實驗結果數據進行分析,驗證算法有效性。
軟件運行場景可視化采用自己設計地圖和在線調用地圖(本軟件采用百度地圖)的方式實現。生成仿真場景后,用戶可以根據自己的需要選擇相應的仿真模式。仿真時,軟件從相應渠道采集數據,將數據輸入給仿真算法,仿真算法計算后將相應參數輸出,軟件根據車輛的位置、速度、轉向等相關信息把相應車輛標記在仿真地圖上,并實時更新。并將相鄰車輛中最具威脅的車輛信息顯示在軟件下方的工具條上,在數據顯示模塊詳細的顯示了附近車輛的實時的相關信息,并將該信息保存下來,為實驗分析提供仿真數據。

圖1 仿真軟件主界面及相應場景
系統測試驗證分為仿真模式測試和試驗模式測試,主要包括調用算法模塊測試、通信模塊測試和整體功能測試。
軟件是在windows操作系統下,使用C++builder集成開發環境開發的,經測試,仿真模式與實驗模式地圖調用正確,算法調用正確,數據保存正確,車輛顯示正確,報警信息顯示正確。各場景都能正常運行,動態生成場景運行正確,總體實現了車路協同仿真與實驗軟件開發的所有功能。本分測試如圖1所示。
大多仿真系統只針對某一算法原理進行設計,開放性差;沒有將虛擬現實技術運用到車路協同仿真中,可視化效果差;仿真程序大都針對某一特定場景進行設計,不支持多場景仿真,通用性差等。本文針對以上問題開發了車路協同仿真與實驗系統軟件,解決了多場景多算法仿真問題。
[1]褚彤宇,王家川,陳智宏.車聯網技術初探[J].交通工程,2011.
[2]董力偉.淺談中國Telematics產業鏈核心環節的發展選擇[J].汽車導航,2011.
[3]鄧志東,余士良,程振波.通用分布式虛擬現實軟件開發平臺的研究[J].系統仿真學報,2008,20(12).
[4]張含,蔡伯根,上官偉,李四輝.基于多分辨率建模的車路協同系統仿真場景設計與實現[J].系統仿真技術,2013,9(1).
[5]梁忠杰,思敏,李婷.COM技術和動態鏈接庫技術的應用研究[J].微計算機應用,2006,27(6).