高級(jí)駕駛輔助系統(tǒng)(ADAS)在汽車中的應(yīng)用日益增長(zhǎng),為了滿足工程師對(duì)于ADAS的分析、仿真和測(cè)試等功能的需求,CANoe從15.0版本開始提供ADAS Feature Set(ADAS功能集,簡(jiǎn)稱AFS)。AFS作為CANoe基礎(chǔ)功能的一部分,不需要購(gòu)買額外的Option即可使用。同時(shí),CANoe本身的強(qiáng)大功能和開放接口使得結(jié)合總線通信,集成第三方工具,實(shí)現(xiàn)SIL/HIL等都變得更輕松。
功能概述
>
集成基于ASAM OSI規(guī)范的ADAS數(shù)據(jù)模型,可以通過(guò)CAPL/C#代碼輕松地訪問(wèn)ADAS對(duì)象的信息,并實(shí)現(xiàn)與總線數(shù)據(jù)的交互;
>
能與第三方仿真環(huán)境通過(guò)MATLAB、C-API或FMU實(shí)現(xiàn)ASAM OSI數(shù)據(jù)流交互;
>
可通過(guò)Trace、Scene等分析窗口對(duì)ADAS對(duì)象進(jìn)行可視化分析。
>
配合CANoe自帶的場(chǎng)景編輯器Scenario Editor可進(jìn)行簡(jiǎn)單場(chǎng)景仿真,也可以集成DYNA4或其他第三方工具用于更細(xì)致的場(chǎng)景仿真和車輛動(dòng)力學(xué)仿真。
>
結(jié)合Communication Setup中的應(yīng)用模型(基于CAPL/C#)以及測(cè)試API可實(shí)現(xiàn)閉環(huán)HIL系統(tǒng)驗(yàn)證。
>
可根據(jù)被測(cè)應(yīng)用的接口生成SIL Adapter,實(shí)現(xiàn)對(duì)純軟件級(jí)別的被測(cè)系統(tǒng)的訪問(wèn)和數(shù)據(jù)交換,以便直接在開發(fā)環(huán)境中測(cè)試ADAS算法。
窗口介紹
1.
Communication Setup窗口
CANoe中ADAS對(duì)象是在Simulation -> Communication Setup窗口中通過(guò)vCDL(Vector Communication Description Language)文件添加的。在vCDL中使用語(yǔ)句導(dǎo)入ADAS模塊后,即可按需定義ADAS對(duì)象。之后可在Application Models或是測(cè)試模塊中通過(guò)CAPL、C#等編程語(yǔ)言訪問(wèn)這些對(duì)象,以便進(jìn)行分析、仿真或測(cè)試。

2.
Scene窗口
Scene窗口是一個(gè)可以顯示傳感器、檢測(cè)對(duì)象、真實(shí)目標(biāo)等ADAS對(duì)象的可視化窗口。CANoe運(yùn)行過(guò)程中,ADAS對(duì)象的位置、大小等信息會(huì)以三維圖像的形式被繪制在窗口中,并與左側(cè)列表中的對(duì)象通過(guò)顏色進(jìn)行對(duì)應(yīng),以便更直觀地觀測(cè)ADAS對(duì)象。
3.
Trace窗口
Trace窗口是CANoe用戶較為熟悉的一個(gè)分析窗口。針對(duì)ADAS應(yīng)用,Trace窗口也擴(kuò)展了數(shù)據(jù)分析功能。選擇Layout為ADAS后,即可通過(guò)DO(Distributed Object)的方式顯示和解析傳感器和檢測(cè)對(duì)象的相關(guān)參數(shù)。
應(yīng)用舉例
1.
CAPL訪問(wèn)ADAS對(duì)象
通過(guò)vCDL定義ADAS對(duì)象后,可以通過(guò)CAPL編程的方式來(lái)對(duì)其進(jìn)行操作。
最常用的傳感器對(duì)象的成員通過(guò)接口ISensor描述,ISensor接口中包含Data和Methods,如圖所示:
Data中主要包含sensor_info,其中sensor_view_configuration和sensor_data主要是傳感器本身的一些信息(例如id、檢測(cè)范圍、安裝位置等),detected_objects則是傳感器檢測(cè)到的對(duì)象的列表;Methods中包含Create/Get/Set/Update/Remove等方法,可用于對(duì)檢測(cè)對(duì)象進(jìn)行創(chuàng)建/獲取/設(shè)置/更新/移除等操作。
在使用CAPL設(shè)置ADAS對(duì)象時(shí),通常情況下首先需要設(shè)置傳感器自身參數(shù),例如range表示檢測(cè)的距離,field_of_view_horizontal表示水平方向上檢測(cè)的角度,這些都可以在Scene窗口中直觀顯示出來(lái)。
然后,可使用GetOrCreateDetectedObject方法來(lái)添加指定trackingId的檢測(cè)對(duì)象或是獲取已有trackingId的檢測(cè)對(duì)象的信息,例如:
檢測(cè)對(duì)象根據(jù)定義可以是如下之一:
GetOrCreateDetectedObject方法的返回值為檢測(cè)對(duì)象對(duì)應(yīng)的名稱,為該名稱添加前綴后,可通過(guò)lookupDistObj在指定的檢測(cè)對(duì)象類型中查找,并最終返回具體的某個(gè)對(duì)象,例如:
之后,即可用類似訪問(wèn)總線信號(hào)的方式,直接通過(guò)$符號(hào)來(lái)訪問(wèn)對(duì)象中的數(shù)據(jù),例如:
2.
總線數(shù)據(jù)轉(zhuǎn)換
CANoe本身具有強(qiáng)大的總線數(shù)據(jù)處理的功能,可以非常便捷地獲取CAN/Ethernet等總線報(bào)文中包含的傳感器數(shù)據(jù),然后通過(guò)CAPL編程的方式將報(bào)文中的數(shù)據(jù)映射到ADAS對(duì)象上,以便更直觀地分析,或是進(jìn)行進(jìn)一步的測(cè)試等。
對(duì)于CAN總線上的數(shù)據(jù),可以通過(guò)事件捕獲目標(biāo)報(bào)文,在事件中使用讀取當(dāng)前報(bào)文中的信號(hào),并將值賦給目標(biāo)ADAS對(duì)象,即可實(shí)現(xiàn)傳感器或檢測(cè)對(duì)象的數(shù)據(jù)從CAN報(bào)文到ADAS對(duì)象的轉(zhuǎn)換。這里需要注意的是,由于單個(gè)CAN報(bào)文的數(shù)據(jù)長(zhǎng)度較小,同一對(duì)象的數(shù)據(jù)可能分散在多個(gè)報(bào)文中,無(wú)法在一個(gè)事件中完成賦值。這種情況可以通過(guò)ISensor接口的BeginUpdate()、SetDetectedObjectCompleted()以及Update()方法實(shí)現(xiàn)等待所有數(shù)據(jù)都賦值完成后才更新并發(fā)送ADAS對(duì)象信息。
對(duì)于Ethernet中的數(shù)據(jù),同樣可以通過(guò)、或是對(duì)于SOME/IP數(shù)據(jù)的OnSomeipProcessRxMessage()等事件/函數(shù)獲取所需的目標(biāo)數(shù)據(jù),以便賦值給ADAS對(duì)象用于后續(xù)分析、測(cè)試等。
3.
基于Scenario Editor的場(chǎng)景仿真
CANoe中自帶一個(gè)簡(jiǎn)單的場(chǎng)景仿真工具Scenario Editor,可以通過(guò)圖形界面創(chuàng)建場(chǎng)景,實(shí)現(xiàn)加載地圖、定義車輛及行駛軌跡、定義傳感器等功能。場(chǎng)景中的車輛、傳感器可與vCDL中定義的ADAS對(duì)象直接對(duì)應(yīng),配合編程語(yǔ)言便于仿真一些簡(jiǎn)單的測(cè)試場(chǎng)景。
場(chǎng)景中的車輛與vCDL中的IGeoObject接口對(duì)象直接通過(guò)名稱關(guān)聯(lián),如下圖黃色高亮所示,車輛上的傳感器則通過(guò)SensorID與ISensor接口對(duì)象關(guān)聯(lián),如下圖中紅框所示。完成映射后,ADAS對(duì)象會(huì)按照?qǐng)鼍爸性O(shè)定的路徑、時(shí)間軸執(zhí)行相應(yīng)動(dòng)作。
對(duì)于場(chǎng)景中的傳感器在場(chǎng)景中檢測(cè)到的對(duì)象,可以通過(guò)ISensor接口的GetDetectedObjects()方法直接獲取,與案例1類似,通過(guò)lookupDistObj()找到對(duì)應(yīng)的檢測(cè)對(duì)象后,即可通過(guò)<$>訪問(wèn)檢測(cè)對(duì)象的屬性例如尺寸、速度等,用于后續(xù)的測(cè)試。
總結(jié)
CANoe中的AFS為用戶提供了ADAS分析、仿真、測(cè)試所需要的窗口、對(duì)象、接口等。除文中介紹的內(nèi)容外,還提供與其他工具交互、在虛擬環(huán)境中使用等功能,并且隨著CANoe版本的不斷更新還會(huì)添加新的功能并完善已有功能。
-
adas
+關(guān)注
關(guān)注
310文章
2257瀏覽量
210205 -
CANoe
+關(guān)注
關(guān)注
4文章
75瀏覽量
9189 -
駕駛輔助系統(tǒng)
+關(guān)注
關(guān)注
0文章
115瀏覽量
17022
發(fā)布評(píng)論請(qǐng)先 登錄

CANoe:網(wǎng)絡(luò)和ECU開發(fā)、測(cè)試和分析的專業(yè)工具
評(píng)估板EVAL-ADAS1000SDZ用于演示用于醫(yī)療儀器的ADAS1000集成ECG設(shè)備
ADAS技術(shù)介紹
ADAS最全功能介紹

CANOE教程之CANOE的使用手冊(cè)免費(fèi)下載

CANoe軟件的介紹

使用Python訪問(wèn)CANoe COM接口實(shí)踐

淺談CANoe實(shí)現(xiàn)SOA仿真測(cè)試

期待已久的ADAS終于能在CANoe15.0中實(shí)現(xiàn)了,看看15.0還有哪些新變化

CANoe進(jìn)階功能:Multi CANoe

CANoe集成解決方案

新功能發(fā)布 | TSMaster新增CANoe自動(dòng)化控制模塊,歡迎下載體驗(yàn)!

Python與CANoe/CANoe4SW

CANoe仿真HTTP節(jié)點(diǎn)的實(shí)戰(zhàn)秘籍大公開

評(píng)論