• 實操教程:CANoe在CAN總線測試中的應用

    上一篇 / 下一篇  2023-10-23 14:24:11 / 個人分類:車載測試

      隨著新能源、智能網聯等概念發展,車載CAN總線環境變得復雜且紊亂,CAN節點質量不穩定會給主機廠帶來極大威脅,所以CAN總線測試已成為保證CAN網絡安全運行的重要手段。
      而CANoe作為一款支持多種總線網絡仿真、測試、診斷、和分析的工具,其豐富多樣的功能和配置選項被全球90%以上的OEM和供應商所應用。今天,我們就來跟大家聊一聊,CANoe在CAN總線測試中的應用。
      CANoe功能介紹
      在CANoe中,Test作為其主要功能之一,單獨占有一個功能區,由Test Units和Test Modules兩種測量組件組成。
      Test Units需要在Test Configuration窗口中定義,配合vTESTStudio使用,利用其圖形化界面創建測試用例,同時可以配合CAPL或者C#代碼實現自動化測試,本文中我們不做過多介紹。
      Test Modules則需在Test Setup for Test Module窗口中定義。CANoe支持三種不同語言格式的測試模塊:CAPL、XML和.NET。用戶可以根據自身需求選擇自己熟悉的語言來編輯測試模塊。
      Test Modules是用于測試的執行單元。測試模塊從測試執行到測試結果產生,最終可以由一個測試報告來呈現出來。測試模塊包括若干個測試用例(Test Case),測試用例是測試的核心內容,包含所有的測試活動。這些測試活動由測試步驟(Test Step)組成,測試步驟是測試模塊中相對小的測試塊,用來表明測試序列當前執行到的測試點。
      CANoe操作流程
      下面我們以CAPL Test Module為例簡單介紹一下測試工程的創建過程。
      在CANoe 主界面中選擇【Test】→【Test Setup】, 打開TestSetup for Test Modules窗口,可以配置一個自定義的測試模塊。
      在Test Setup for Test Modules窗口,在空白處單擊鼠標右鍵并在菜單中選擇【New Test Environment】,可以創建一個新測試環境。
      鼠標右鍵單擊【Test Environment】,選擇【Insert CAPL Test Module】來插入一個CAPL測試模塊,默認的測試模塊名稱為Test 1。
      鼠標右鍵單擊新建的測試模塊Test 1,選擇【Configuration】,打開CAPL Test Module Configuration 對話框。在Common選項卡中,可以修改【Module name】,并在【Test script】中添加編寫好的.can文件。
      至此,測試模塊已經配置完畢,雙擊測試模塊即可打開CAPL測試模塊的窗口。
      測試工程的配置還是比較簡單的,但是自動化測試工程的重點在于添加的.can文件如何編寫。
      .can文件是用CAPL語言編寫的,CAPL是Vector公司專門為CANoe開發環境設計的編程語言,在語法和概念上與C語言類似。對于CAN總線測試而言,和CANoe配套,Vector公司提供了較為全面的、專業的ECU測試工具,包括物理層和數據鏈路層測試等。如可以使用CANscope和VH6501等工具來驗證節點在電路設計、物理電平方面的性能,以及通信參數的一致性等。
      CANoe在CAN中應用
      接下來我們簡單介紹一下我們在CAN總線測試中會執行的部分用例。
      01物理層測試
      在CAN總線的物理層測試中,我們一般會測試終端電阻、高低壓通信范圍、顯隱性電壓等。而測試終端電阻和高低壓通信范圍,我們會用到萬用表和程控電源。
      CANoe提供了RS232通信相關的API,因此我們可以配合萬用表和程控電源的使用說明,開發一套CANoe,它能通過一系列函數,實現終端電阻的測量以及高低供電電壓的自動化設置,從而達到自動化測試的目的。而對于顯隱性電壓的測試,我們會用到CANscope。CANoe為其定制化了一系列控制和測量的API,能夠直接測量出顯隱性電壓。
      更多的物理層相關測試就不一一介紹了,圖片里截取的是help文檔中的一些API可供大家參考。
      02數據鏈路層測試
      對于數據鏈路層測試,我們一般會測試位時間、采樣點及報文DLC和ID等。
      位時間同樣是利用Scope來完成,采樣點則是利用VH6501來完成。我們在之前的文章中有具體介紹過如何進行采樣點的測試,在自動化測試腳本的編寫過程中,其實是引用了CANoe的示例工程里面的腳本,感興趣的讀者可以再看一下之前的文章總線干擾神器——VH6501,或者從CANoe的示例工程里面查看腳本邏輯。CANoe同樣為VH6501集成了一系列API,可從help文檔查看。
      03自動化測試
      至于CANoe的自動化測試系統,就不得不介紹它的兩大功能,Test Feature Set(TFS)和Test Service Library(TSL)。
      TFS是CANoe擴展出來的一系列測試功能函數,包括約束和條件設置函數、信號測試函數、等待指示函數、測試控制函數、測試報告函數等等。
      而TSL是在TFS基本函數的基礎上,提供一些特殊函數,例如檢測函數、狀態報告函數、以及檢測控制函數等等,可以高效地解決某些特殊的測試問題,例如上文提到的報文ID和DLC的測試。這兩大功能類別函數均可通過help文檔查看其包含的具體函數的用法。
      在CAPL Test Module中,.can文件里的測試用例編寫完成后,需要構造一個測試執行函數,CANoe實際運行測試工程時,就按照測試執行函數里的內容及順序進行測試,并生成相應的測試報告。
      測試執行完畢后,CANoe會自動生成測試報告,通過單擊測試模塊窗口左下的【OpenTest Report】按鈕來查閱報告。CANoe的測試模塊生成的測試報告格式有以下兩種。
      1. CANoe Test Report Viewer(推薦格式):使用CANoe測試報表查看器可以更加直觀地查看和搜索測試報告的內容。它提供了濾波器、分組、導航以及用戶定義視圖等功能,查看測試報告更加便捷,分析測試結果更加專業;
      2. XML/HTML格式(以前的格式):該格式比較通用,即使沒有安裝CANoe的用戶也可以直接查看,所以該格式具有較強的通用性。
      用戶可以在CANoe主界面中選擇【File】→【Options】進入Options對話框,通過【General】→【Test Feature Set】→【Reporting File Format】選擇合適的報告格式。
      測試執行完成后,用戶通過查看保存的log數據,就可以驗證測試結果的正確性了。

    TAG: 車載測試

     

    評分:0

    我來說兩句

    Open Toolbar
    久久97久久97精品免视_欧洲国产伦久久久久久_91麻豆精品国产自产在线观_伊人久久大香线蕉综合av