vsomeip協定棧應用現狀
SOME/IP協定是現代車輛SOA架構下各服務之間的通信協定,是主流的車載通信協定之一。現如今業内有很多的SOME/IP實作版本,主要分為兩大類,一類是AUTOSAR CP标準接口的嵌入式SOME/IP協定棧,比較有代表性的是Vector公司的MICROSAR-SOME/IP,另一類是适用于SoC平台的開源協定棧,最常用的就是我們今天要談到的vsomeip。vsomeip 是 GENIVI 實作的開源 SOME/IP 協定棧,主要實作了 SOME/IP 的通信和服務發現功能,并在此基礎上增加了少許的安全機制。vsomeip最大的優勢是功能穩定及可執行好,可以移植到目前主流的各種作業系統中,如linux、QNX和Android。車載以太網測試規範OPEN Alliance TC8中明确制定了SOME/IP的測試要求,那麼內建了vsomeip的控制器,又該如何完成SOME/IP測試呢,請聽小編一一道來。
SOME/IP測試簡介
SOME/IP測試主要是測試SOME/IP協定棧的協定一緻性,及代碼實作效果與協定要求是否一緻。OPEN Alliance TC8裡面針對SOME/IP協定制定了兩類測試需求,分别是Server和ETS。
- Server測試主要測試被測件(Device Under Test)作為伺服器端的通信行為。雖然TC8測試用例裡對服務實作方式有一些細節上的要求,如Service及Service Instance的關聯關系,但是測試實踐通常是在被測件現有的應用中,挑選最能符合Server測試要求的服務來進行測試,大多數被測件無需做任何修改就可以執行Server測試;
- ETS是Enhanced Testability Service的縮寫,即增強型測試服務。這是一種特殊的服務,專用于跟測試儀進行測試互動,需按TC8的要求實作特定的method、field、event,用于全面驗證被測件的SOME/IP協定一緻性。
ETS測試的特殊之處就在于測試用例覆寫SOME/IP協定的全部内容。通常情況下,被測件現有服務無法滿足這樣的測試需求,是以往往需要按照TC8的要求,單獨配置ETS相關的Service,及對應的method、field、event group等内容。那麼vsomeip協定的ETS服務又該如何實作呢?
vsomeip ETS實作方案
ETS測試服務的實作依賴vsomeip庫檔案的正确部署。使用者可從github(https://github.com/GENIVI/vsomeip)上下載下傳vsomeip資源包,放在目标編譯環境中,如Ubuntu系統中,按照官方指導手冊進行vsomeip代碼編譯和動态庫生成,得到的動态庫如下:
- libvsomeip3.so
- libvsomeip3-cfg.so
- libvsomeip3-e2e.so
- libvsomeip3-sd.so
*注意:需根據目标被測件的軟硬體環境,選擇配套的交叉編譯工具進行動态庫生成。
除vsomeip編譯生成的動态庫之外,還需将vsomeip運作依賴的boost庫一同拷貝至被測件指定系統目錄。至此,vsomeip庫檔案就完成了部署。
接下來要做的就是編寫ETS功能代碼,實作TC8測試規範中明确規定的method、field、event group等内容。
vsomeip為上層應用功能提供了豐富的API,可以實作軟體初始化,method回調函數配置、時間訂閱回調函數配置、服務發現功能開關函數等諸多配置,如下圖所示:
利用vsomeip提供API,結合TC8裡定義的服務參數,可配置出符合ETS測試的功能函數。利用交叉編譯工具,引用vsomeip公共庫檔案,即可生成符合ETS測試需求的可執行檔案。
內建了ETS的被測件,結合外部測試儀,可以構成以下典型的測試系統框圖。測試儀通過SOME/IP request的形式,将測試指令發送給ETS, ETS解析測試指令,并且調用vsomeip API來操作被測件完成相應的測試動作,如回複response、擷取field值、執行訂閱操作等等。如此,便可以對內建了vsomeip協定棧的被測件執行ETS測試。
vsomeip ETS屬于一個獨立的應用程式,與被測件中實際的應用程式互不沖突,測試過程中隻啟動ETS,完成測試之後,可以将ETS程式從被測件檔案系統中删除,進而不會對被測件的功能産生任何影響。
CC:Control Channel,用于傳輸控制指令與回複響應的通道
LC:Lower Test Channel,vsomeip協定棧與外部測試儀直接互動的測試通道
UC: Upper Test Channel,vsomeip協定棧與ETS的API調用關系
我們能做什麼
東信創智擁有一支專業的以太網測試團隊,可提供從硬體層到應用層各個層級的專業測試。我們不僅擁有專業的測試裝置和豐富的測試經驗,還擁有一支軟體開發團隊,可以提供代碼級别的專業咨詢服務。我們自主研發的vsomeip ETS和AUTOSAR CP平台ETS已經被多家OEM、零部件供應商以及專業測試機構采用,成功在linux、Android作業系統上完成移植,并且獲得客戶的認可。
為了應對日漸增長的SOME/IP測試需求,東信創智可以提供以下三種服務模式:
- 樣件測試服務;
- AUTOSAR CP ETS或vsomeip ETS內建+測試服務;
- CANoe vTestStudio和Spirent測試裝置內建及測試教育訓練;
多樣化的服務模式,讓您面對車載以太網測試,永遠成竹在胸!
若您對我們的服務感興趣,或者還想了解更多關于以太網測試的内容,歡迎私信或者留言!