91欧美超碰AV自拍|国产成年人性爱视频免费看|亚洲 日韩 欧美一厂二区入|人人看人人爽人人操aV|丝袜美腿视频一区二区在线看|人人操人人爽人人爱|婷婷五月天超碰|97色色欧美亚州A√|另类A√无码精品一级av|欧美特级日韩特级

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

Vector工具支持Environmental Condition的編輯、代碼開發(fā)和測試

Vector維克多 ? 來源:Vector維克多 ? 2025-08-26 11:43 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

診斷規(guī)范中定義用來限制診斷服務(wù)執(zhí)行的先決條件稱作Environmental Condition,它依賴于車載數(shù)據(jù),如車輛內(nèi)部傳感器控制器實(shí)時(shí)生成或存儲的運(yùn)行參數(shù)(如速度、位置等),以及ECU特定的運(yùn)行模式、工況,如ECU根據(jù)不同駕駛場景(如運(yùn)動(dòng)模式)或外部條件(如高溫/高海拔)切換的工作狀態(tài)。

8aa65ad6-7e6e-11f0-a18e-92fbcf53809c.png

AUTOSAR定義了三類診斷訪問權(quán)限,限制診斷服務(wù)的執(zhí)行,分別是:Session、Security Level和Environmental Condition。對于Environmental Condition,AUTOSAR DCM(Diagnostic Communication Manager)管理需要的信息,并在某些環(huán)境條件成立時(shí)阻止服務(wù)的執(zhí)行。

ISO 14229-1(Unified Diagnostic Service,UDS)協(xié)議中,有多個(gè)NRC(Negative Response Code)定義ECU對不同的先決條件做出的否定響應(yīng)。

NRC 0x22(conditionsNotCorrect);

NRC 0x81-0x8D(例如:0x81/0x82:rpmTooHigh/Low;0x88/0x89:vehicleSpeedTooHigh/Low);

NRC 0x8F-0xFE(例如:0x92/0x93:voltageTooHigh/Low);

其中0x95-0xEF:reservedForSpecificConditionsNotCorrect;0xF0-0xFE:vehicleManufacturerSpecificConditionsNotCorrect。

本文以NRC 0x22為例,介紹關(guān)于Vector工具對于Environmental Condition的編輯、代碼開發(fā)和測試的支持。NRC 0x22定義如下圖:

8ac06a48-7e6e-11f0-a18e-92fbcf53809c.png

CANdelaStudio 16以上版本支持編輯ECU執(zhí)行請求的Environmental Condition,在CANdelaStudio中叫做Environmental Condition Groups。如下圖所示:

8acf4da6-7e6e-11f0-a18e-92fbcf53809c.png

在CDD中編輯好Environmental Condition Groups后,可以將CDD中編輯的Environmental Condition數(shù)據(jù)導(dǎo)入DaVinci Configurator Classic,也可以導(dǎo)出到DEXT(Diagnostic Extract Template)文件,還可以將CDD導(dǎo)入CANoe.DiVa,通過配置實(shí)現(xiàn)對診斷服務(wù)NRC的測試。

注:CANoe.DiVa版本要大于15 SP3。

CANdelaStudio如何編輯Environmental Condition Groups

CANdelaStudio中Environmental Condition Groups中有三個(gè)部分:Condition Groups、Dependencies和Defaults。

Condition Groups有車輛數(shù)據(jù)(Data)和ECU模式(Mode)。例如,當(dāng)客戶端執(zhí)行Write(0x2E)服務(wù)和IO Control(0x2F)服務(wù)修改ECU數(shù)據(jù)時(shí),出于保護(hù)硬件、避免功能浪費(fèi)的目的,會定義以下限制條件:發(fā)動(dòng)機(jī)轉(zhuǎn)速為0(Data),在正常電壓下(Mode)。用戶可以在如下圖紅框處,添加Data Condition和Mode Condition。

8adfff16-7e6e-11f0-a18e-92fbcf53809c.png

Data Condition

添加Data Condition后,首先編輯Name,默認(rèn)Negative Response Code(NRC)為0x22。當(dāng)不滿足條件時(shí),ECU將發(fā)送帶有此NRC的否定響應(yīng);

8afa7d64-7e6e-11f0-a18e-92fbcf53809c.png

然后,編輯Data Object:

undefined:沒有引用的數(shù)據(jù);

in document:選擇引用的Data Object來自于CDD文件中某個(gè)DID的Data Object,也被稱為Internal Data Object,此處定義的數(shù)據(jù)和選擇的Data Object的Data Types需要兼容,即有相同的Encoding/Length(目前支持的有Unsigned(1/2 Byte)和Signed(1/2/4 Byte))和Unit;

external:引用的Data Object沒有定義在CDD文件中,也被稱為External Data Object,目前支持的Data Type有五種,如下圖所示:

8b1ec99e-7e6e-11f0-a18e-92fbcf53809c.png

最后,編輯Data Conditions的具體數(shù)值和操作符(有< ≤ ≠ = ≥ >六種);

8b327840-7e6e-11f0-a18e-92fbcf53809c.png

注:上圖中的“Referenced”下置為“yes”或“no”是不需要編輯的。當(dāng)在“Dependencies”下,選擇服務(wù)對應(yīng)的“Condition”,“Referenced”下會置為“yes”,反之為“no”。

Mode Condition

添加Mode Condition后,首先編輯Name,再添加Mode;

8b4b3d30-7e6e-11f0-a18e-92fbcf53809c.png

注:上圖中的“Referenced”下置為“yes”或“no”是不需要編輯的,當(dāng)在“Dependencies”下,選擇服務(wù)對應(yīng)的“Condition”,“Referenced”下會置為“yes”,反之為“no”。

Dependencies

當(dāng)Data Condition、Mode Condition編輯完成后,依據(jù)需求編輯服務(wù)與Data/Mode Condition的依賴關(guān)系。

8b5c159c-7e6e-11f0-a18e-92fbcf53809c.png

Environmental Condition在AUTOSAR中的應(yīng)用

MICROSAR Classic支持Mode Condition,可以將CDD文件中定義的Mode Condition導(dǎo)入DaVinci Configurator Classic,也可以將Mode Condition的定義導(dǎo)出到DEXT文件中。如需將CDD中定義的Mode Condition導(dǎo)入DaVinci Configurator Classic或?qū)С龅紻EXT文件中,需要在CDD文件中對Mode Condition添加相應(yīng)的Attributes Value。添加方法:

首先,通過Expert View打開CDD文件,打開方式如下圖所示:

8b6c98e0-7e6e-11f0-a18e-92fbcf53809c.png

在Default Attributes下Mode Conditions中添加Attribute “ASR SWC ModeDeclaration Ref”,如下圖所示:

注:先查看文件中是否已添加此Attribute,如果已添加就不用再添加了。

8b7f9f62-7e6e-11f0-a18e-92fbcf53809c.png

然后,在已有的Mode Conditions中,如下圖處,添加、編輯Attributes Value(注:需要CANdelaStudio 17以上版本):

8b96b684-7e6e-11f0-a18e-92fbcf53809c.png

Attributes Value示例如下(本例中為了可讀性而使用換行符,實(shí)際使用時(shí)要用空格替代換行符):

CRCR:/COM/VECTOR/CFG/WORKFLOW/SYSDESC/SYNC/SYSTEM/COMPOSITIONTYPE

CCR:/COM/VECTOR/CFG/WORKFLOW/SYSDESC/SYNC/COMPOSITIONTYPE/SwcDiagApp

CPRP:/ComponentTypes/SwcDiagApp/SwcDiagApp_ProcessingCondition_CodingVoltageMode

MDG:/PortInterfaces/SwcDiagApp_CodingVoltageMode/CodingVoltageMode

TM:/ModeDclrGroups/SwcDiagApp_CodingVoltageMode/DEFAULT

注:如果CDD文件中有Data Conditions,對于Referenced的Internal Data Object(即在“Dependencies”下,選擇對應(yīng)的“Condition”),也可以導(dǎo)出到DEXT文件中;

對于Referenced的External Data Object(即在“Dependencies”下,選擇對應(yīng)的“Condition”),需要編輯Attributes Value,也可以導(dǎo)出到DEXT文件中,如下圖所示:

8ba678c6-7e6e-11f0-a18e-92fbcf53809c.png

Attributes Value示例如下:CRCR:/RootSwc CCR:/Swc1 CPRP:/Port1 TDPR:/Data2

將帶有以上Attributes Value的CDD文件導(dǎo)入DaVinci Configurator Classic,在工具中自動(dòng)創(chuàng)建了DcmProcessingConditions,如下圖所示:

8bc1af56-7e6e-11f0-a18e-92fbcf53809c.png

將帶有以上Attributes Value的CDD文件導(dǎo)出為DEXT文件,導(dǎo)出的DEXT文件中帶有Mode的部分如下圖:

8bdc7b7e-7e6e-11f0-a18e-92fbcf53809c.png

生成的代碼如下圖所示:

8bebfa90-7e6e-11f0-a18e-92fbcf53809c.png

CANoe.DiVa如何生成合法或非法條件下執(zhí)行診斷服務(wù)的測試用例

CANoe.DiVa 15 SP3以上版本支持測試CDD里定義的Environmental Condition。

第一步,將定義了Environmental Condition的CDD文件導(dǎo)入CANoe.DiVa,CANoe.DiVa會自動(dòng)將Environmental Condition生成System Conditions,如下圖所示:

8c082e2c-7e6e-11f0-a18e-92fbcf53809c.png

第二步,對CDD中定義的診斷服務(wù)執(zhí)行需要的Valid Condition或Invalid Condition進(jìn)行配置,如下圖所示:添加一個(gè)或多個(gè)Step,例如對于External Data Object,可以由工程中添加的DBC文件設(shè)置Bus Signal的值;

8c197d4e-7e6e-11f0-a18e-92fbcf53809c.png

第三步,對于在CDD文件中編輯的服務(wù)與Data/Mode Condition的依賴關(guān)系,在CANoe.DiVa中會自動(dòng)生成Invalid Condition下服務(wù)的測試用例,如下圖:

8c3026b6-7e6e-11f0-a18e-92fbcf53809c.png

如果要生成Valid Condition下服務(wù)的測試用例,需要對診斷Service或Job添加Valid Condition,選擇一個(gè)Condition作為“System Precondition”;

8c41364a-7e6e-11f0-a18e-92fbcf53809c.png

8c56baa6-7e6e-11f0-a18e-92fbcf53809c.png

最后,工程設(shè)置編輯完成后,點(diǎn)擊“Generate”按鈕,生成CANoe.DiVa測試工程,再將工程文件導(dǎo)入CANoe執(zhí)行測試用例。如下圖所示:

8c6e68a4-7e6e-11f0-a18e-92fbcf53809c.png

生成的測試用例部分CAPL代碼如下圖所示:

8c90a16c-7e6e-11f0-a18e-92fbcf53809c.png

8ca3b888-7e6e-11f0-a18e-92fbcf53809c.png

總結(jié)

Environmental Condition定義了診斷服務(wù)執(zhí)行的限制條件,在代碼實(shí)現(xiàn)和測試中都很重要。Vector工具鏈提供從診斷需求定義到代碼實(shí)現(xiàn)到診斷測試的完整解決方案。

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報(bào)投訴
  • 傳感器
    +關(guān)注

    關(guān)注

    2576

    文章

    55056

    瀏覽量

    791485
  • ecu
    ecu
    +關(guān)注

    關(guān)注

    14

    文章

    983

    瀏覽量

    57287
  • 代碼
    +關(guān)注

    關(guān)注

    30

    文章

    4968

    瀏覽量

    73999
  • Vector
    +關(guān)注

    關(guān)注

    3

    文章

    99

    瀏覽量

    10036

原文標(biāo)題:Vector工具支持Environmental Condition的編輯、代碼開發(fā)和測試

文章出處:【微信號:VectorChina,微信公眾號:Vector維克多】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關(guān)推薦
    熱點(diǎn)推薦

    HarmonyOS應(yīng)用開發(fā)-代碼編輯

    編輯器使用技巧DevEco Studio支持多種語言進(jìn)行HarmonyOS應(yīng)用的開發(fā),包括Java、JS和C/C++。在編寫應(yīng)用階段,您可以通過掌握各種代碼編寫的各種常用技巧,來提升編
    發(fā)表于 09-18 16:56

    RISC-V MCU開發(fā) (三):代碼編輯

    】MRS支持工具欄按鈕或代碼編輯區(qū)右鍵菜單”Source->ShiftLeft/Right”實(shí)現(xiàn)對選中代碼的縮進(jìn)調(diào)整?!?/div>
    發(fā)表于 09-26 16:31

    編輯音頻剪輯、聲音設(shè)計(jì)、控制、錄音軟件工具

    編輯音頻剪輯、聲音設(shè)計(jì)、控制、錄音軟件工具(支持wav等mp3格式文件):一個(gè)免費(fèi)的音頻編輯工具.可以
    發(fā)表于 06-17 13:29 ?236次下載
    <b class='flag-5'>編輯</b>音頻剪輯、聲音設(shè)計(jì)、控制、錄音軟件<b class='flag-5'>工具</b>

    應(yīng)對CAN總線系統(tǒng)設(shè)計(jì)開發(fā)Vector總線技術(shù)研討會即將開

    應(yīng)對CAN總線系統(tǒng)設(shè)計(jì)開發(fā),Vector總線技術(shù)研討會即將開演 德國Vector Informatik公司推出的CANoe等一系列軟硬件工具,被應(yīng)用在CAN總線系統(tǒng)的設(shè)計(jì)、建模、仿真
    發(fā)表于 08-27 10:40 ?823次閱讀

    滲透測試工具開發(fā)

    滲透測試工具開發(fā)
    發(fā)表于 09-07 10:30 ?18次下載
    滲透<b class='flag-5'>測試工具</b><b class='flag-5'>開發(fā)</b>

    Stellaris開發(fā)和評估工具代碼編輯器的詳細(xì)資料概述

    Stellaris開發(fā)和評估工具包提供了一種低成本的方法來開始使用StalARIS微控制器使用德克薩斯儀器的代碼編寫器Studio開發(fā)工具設(shè)計(jì)。評估板可以作為一個(gè)完整的評估目標(biāo)或者作為
    發(fā)表于 05-09 15:13 ?2次下載
    Stellaris<b class='flag-5'>開發(fā)</b>和評估<b class='flag-5'>工具</b>包<b class='flag-5'>代碼</b><b class='flag-5'>編輯</b>器的詳細(xì)資料概述

    Vector看板管理工具Squore助力敏捷開發(fā)

    JIRA是一款集項(xiàng)目管理、缺陷跟蹤、團(tuán)隊(duì)協(xié)作、服務(wù)管理、敏捷規(guī)劃于一體的優(yōu)秀商業(yè)軟件,目前已被廣泛應(yīng)用到敏捷開發(fā)當(dāng)中。來自Vector的看板管理工具Squore,具備強(qiáng)大的接口管理功能,通過預(yù)設(shè)配置
    的頭像 發(fā)表于 09-26 09:29 ?3001次閱讀

    c語言代碼自動(dòng)生成工具,MCU代碼自動(dòng)生成工具介紹

    MCU代碼自動(dòng)生成工具介紹文檔編輯原標(biāo)題:GoKit3二次開發(fā)-代碼自動(dòng)生成工具介紹前文需知1.
    發(fā)表于 10-28 17:36 ?8次下載
    c語言<b class='flag-5'>代碼</b>自動(dòng)生成<b class='flag-5'>工具</b>,MCU<b class='flag-5'>代碼</b>自動(dòng)生成<b class='flag-5'>工具</b>介紹

    RISC-V MCU開發(fā) (三):代碼編輯

    RISC-V MCU開發(fā) (三):代碼編輯對于一款集成開發(fā)環(huán)境來說,代碼編輯既是最基礎(chǔ)的必需功能
    發(fā)表于 12-08 14:06 ?12次下載
    RISC-V MCU<b class='flag-5'>開發(fā)</b> (三):<b class='flag-5'>代碼</b><b class='flag-5'>編輯</b>

    如何快速修改keil軟件的代碼編輯界面

    大家好,我是小麥,最近的文章都在介紹相關(guān)工具推薦和使用,這次給大家?guī)砣绾慰焖傩薷膋eil軟件的代碼編輯界面的主題。
    的頭像 發(fā)表于 06-14 09:00 ?6694次閱讀

    如何實(shí)現(xiàn)Linux環(huán)境和CANoe工具之間的數(shù)據(jù)交互

    Vector提供的CANoe軟件是進(jìn)行網(wǎng)絡(luò)/總線和ECU開發(fā)、測試和分析的全面工具,支持總線網(wǎng)絡(luò)開發(fā)
    的頭像 發(fā)表于 11-14 16:52 ?5655次閱讀

    語言智能在代碼編輯器中是如何工作的

    程序員和開發(fā)者經(jīng)常使用代碼編輯器寫代碼。代碼編輯器這種工具
    的頭像 發(fā)表于 11-21 09:40 ?1551次閱讀

    2024年十款熱門云端開發(fā)工具推薦

    2024年十款熱門云端開發(fā)工具推薦:代碼編輯(VSCode、Cloud9、Codenvy)、版本控制(Git、GitHub)、容器化(Docker)、自動(dòng)化部署(Jenkins)、設(shè)計(jì)協(xié)作
    的頭像 發(fā)表于 11-23 16:26 ?1527次閱讀

    Vector推出一套基于Visual Studio Code的免費(fèi)插件

    在汽車軟件開發(fā)過程中,除使用MATLAB開發(fā)算法外,專業(yè)開發(fā)者也偏向使用Visual Studio Code來開發(fā)代碼,其中軟件
    的頭像 發(fā)表于 11-24 14:15 ?3732次閱讀
    <b class='flag-5'>Vector</b>推出一套基于Visual Studio Code的免費(fèi)插件

    云端AI開發(fā)工具怎么用

    云端AI開發(fā)工具通常包括代碼編輯器、模型訓(xùn)練平臺、自動(dòng)化測試工具、代碼管理
    的頭像 發(fā)表于 12-05 13:31 ?1124次閱讀