說(shuō)起CANoe,大家一定不會(huì)覺得陌生;CANoe(CAN open environment)是Vector公司推出的一款總線開發(fā)工具,它作為全球汽車電子設(shè)計(jì)的利器,主要為汽車總線的開發(fā)、仿真、測(cè)試、診斷和分析而誕生。它強(qiáng)大豐富的功能,在汽車行業(yè)可謂家喻戶曉。CANoe不僅自身武藝超群,它還有許多得力干將。
今天我們就來(lái)聊一聊其中一位猛士——Option AMD/XCP模塊,為CANoe開拓了讀寫ECU內(nèi)部參數(shù)的新世界。它擴(kuò)展了CANoe的功能領(lǐng)域,使其具備快速加載A2L文件,并通過(guò)ASMA官方定義的標(biāo)準(zhǔn)協(xié)議XCP/CCP來(lái)訪問(wèn)以及修改ECU內(nèi)存參數(shù)的能力。在該模塊的加持之下,我們可以對(duì)參數(shù)修改后系統(tǒng)的響應(yīng)結(jié)果進(jìn)行監(jiān)測(cè);以實(shí)現(xiàn)總線信號(hào)和ECU內(nèi)部參數(shù)同時(shí)分析的功能。
1、基本概念
在正式使用該功能前,我們先來(lái)看看相關(guān)基本概念。
- AMD(AUTOSAR Measurement and Debugging):基于AUTOSAR架構(gòu)測(cè)量和調(diào)試
- AUTOSAR(Automotive Open System Architecture):汽車開放式系統(tǒng)架構(gòu)
- ASAM(Association for Standardization of Automation and Measuring Systems):自動(dòng)化及測(cè)量系統(tǒng)標(biāo)準(zhǔn)化協(xié)會(huì)
- XCP協(xié)議(eXtended Calibration Protocol):應(yīng)用在CAN、Ethernet、Flexray、LIN 、etc.
- CCP協(xié)議(CAN Calibration Protocol):應(yīng)用在CAN總線上
- A2L文件:ECU描述文件,包含內(nèi)部數(shù)據(jù)對(duì)象信息
- Seed&key文件:ECU訪問(wèn)保護(hù)文件
圖1訪問(wèn)機(jī)制
2、功能窗口
說(shuō)了這么多,讓我們進(jìn)入正題一起操作。
首先,我們?cè)谑褂脮r(shí)需要license,并在軟件中激活該功能模塊,方可顯示此功能圖標(biāo)(以CANoe14為例)。
圖2模塊激活
正確激活后,會(huì)在CANoe上方菜單功能頁(yè)Diagnostics&XCP中添加XCP/CCP功能模塊。
圖3功能圖標(biāo)
打開XCP/CCP窗口,我們可以方便地添加A2L文件,查看并修改設(shè)備中的詳細(xì)信息。如果ECU被寫保護(hù),我們需要添加相應(yīng)的Seed&Key文件來(lái)確保正確通訊。
圖4設(shè)備配置
在Measurement Groupe窗口中可以根據(jù)需要配置不同的變量,及其讀取方式。激活Configuration的變量后,在CANoe中的Environment\System Variables會(huì)自動(dòng)創(chuàng)建相應(yīng)的系統(tǒng)變量。A2L中變量名包含的“.”“()”等會(huì)用“_”代替。其中,Maps和Curves類型變量會(huì)以Structs類型變量顯示。
圖5變量配置
圖6系統(tǒng)變量
在我們與ECU正常建立起通訊后,啟動(dòng)工程,便可以讀取ECU的數(shù)據(jù)。對(duì)于ECU內(nèi)部定義的標(biāo)定量可以對(duì)其進(jìn)行修改,對(duì)測(cè)量量可以讀取相應(yīng)的數(shù)值。
圖7變量信息
3、變量調(diào)用
被激活的變量會(huì)自動(dòng)生成CANoe工程中的系統(tǒng)變量,我們可以基于此進(jìn)行變量調(diào)用。
1)在觀測(cè)窗口中調(diào)用
例如我們?cè)贒ata Window,右鍵選擇變量,添加A2L文件中被激活的信號(hào)。
圖8 Data窗口
圖9添加變量
當(dāng)然我們也可以在不同窗口中進(jìn)行觀測(cè),如Graphic窗口。
圖10 Graphic窗口
對(duì)于所添加的系統(tǒng)變量,可以通過(guò)鼠標(biāo)右鍵選擇Change Value,即可在值的區(qū)間內(nèi)進(jìn)行修改,并同時(shí)進(jìn)行觀測(cè)。
圖11面板調(diào)用
2)在CAPL中調(diào)用
作為系統(tǒng)變量,我們也能在CAPL腳本中對(duì)我們的信號(hào)調(diào)用。
例如:
- 讀取:sysGetVariableInt/sysGetVariableFloat
- 賦值:sysSetVariableInt/sysSetVariableFloat
- 讀取、賦值也可以使用:@Namespace::Variable
示例:
- intValue = @Namespace1::Parameter2; //取值
- @Debug::MotorValues::EngineSpeed = $EngineSpeed; //賦值
總結(jié)
CANoe軟件有了Option AMD/XCP功能模塊的加持后如虎添翼,能夠?qū)CU內(nèi)存參數(shù)進(jìn)行讀寫。但在面對(duì)專業(yè)的標(biāo)定應(yīng)用場(chǎng)景時(shí),例如:需要快速保存參數(shù)集文件、標(biāo)定數(shù)據(jù)集管理、MAP/Curve數(shù)組標(biāo)定等,則會(huì)顯得吃力。此時(shí)我們就需要將重心轉(zhuǎn)移到另一款強(qiáng)大的測(cè)量和標(biāo)定工具——CANape上了。針對(duì)標(biāo)定,您或許還有更多疑問(wèn):如果系統(tǒng)與ECU通訊需要大量的數(shù)據(jù)吞吐?需要快速的信息交互?或者CANape標(biāo)定功能強(qiáng)大在哪里?
北匯信息作為Vector中國(guó)合作伙伴,不僅提供相應(yīng)的工具、技術(shù)支持服務(wù)及培訓(xùn),還針對(duì)不同的應(yīng)用場(chǎng)景提供專業(yè)的解決方案。歡迎聯(lián)系北匯信息,為您答疑解惑!
-
CANoe
+關(guān)注
關(guān)注
4文章
66瀏覽量
8679
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論