亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        基于VSPY的整車CAN總線節(jié)點仿真測試

        2018-10-22 08:39:24楊艷馮烙烙羅鵬飛蔣濤喻尚
        汽車實用技術 2018年19期
        關鍵詞:控件報文面板

        楊艷,馮烙烙,羅鵬飛,蔣濤,喻尚

        (陜西重型汽車有限公司,陜西 西安 710200)

        前言

        隨著商用車整車CAN網絡電子控制單元增多,CAN已成為整車不可或缺的一部分,支持 CAN總線協(xié)議已成為整車電子控制器的基礎功能。而通過 CAN總線收發(fā)工具,實現對各個 CAN總線控制器節(jié)點的仿真測試,已成為測試人員的必備技能。Vehicle Spy(VSPY)是一款能進行節(jié)點仿真的CAN總線收發(fā)工具,本文即以VSPY為基礎,實現CAN總線節(jié)點的仿真,完成仿真環(huán)境的搭建,并將其應用到實際測試中。本文以控制器A為例,實現CAN總線節(jié)點的仿真,并在車載終端的測試中進行應用,完成對應功能的仿真測試。

        1 控制器A仿真搭建

        1.1 仿真概述

        控制器A的仿真,是依賴于VSPY中各個功能部件進行搭建的,包括報文編輯、圖形面板、Function Block、C Code Interface幾部分。其中報文編輯將創(chuàng)建控制器A的所有收發(fā)報文;圖形面板用于控制報文收發(fā)及修改報文值,在信號集中測試中非常實用;Function Block用于實現簡單邏輯處理;C Code Interface完成邏輯較復雜的功能仿真。

        1.2 仿真搭建具體過程

        1.2.1 CAN報文編輯

        在 VSPY 中建立并進入仿真平臺“Test”,通過 Spy Networks-->Messages Editor進入Messages Editor,在HS CAN(可根據需要自由選擇網段)上創(chuàng)建控制器A的所有收發(fā)報文。例如創(chuàng)建發(fā)送報文TCO1,單擊Transmit按鈕,點擊on Network下拉框旁邊的“+”號,出現報文編輯界面。在Description描述框中填入報文名字TCO1,CAN Type中選擇“Xtd 29 bit”(可根據需要選擇標準幀或擴展幀),在仲裁地址框填入報文 ID:CFE6C10(默認情況下就是 16進制),在DLC報文長度欄填入8,默認周期處填寫為50ms。在信號編輯區(qū)域點擊加號,添加車速信號,信號名為“Tachograph vehicle speed”,點擊信號編輯區(qū)域右上方fx Edit按鈕,輸入報文長度16bits,選擇intel格式,在Scalling標簽頁選擇線性mx+b 輸入分辨率為1/256 km/h per bit,偏移量為0,單位km/h,確認OK后,這樣一個報文的一個信號就創(chuàng)建完成了。重復上述步驟,創(chuàng)建其他發(fā)送報文。點擊Receive,進入接收報文編輯界面,同前面步驟創(chuàng)建所有的接收報文。

        創(chuàng)建完所有報文后,在Tx Pannel界面將需要周期發(fā)送的報文設置發(fā)送周期和開始發(fā)送條件即可。在仿真運行測試時,即可仿真所有周期報文的發(fā)送。

        1.2.2 Graphical Panels

        在仿真過程中,可通過 Graphical Panels實時更改信號值。通過在VSPY軟件中建立圖形面板,使得仿真測試變得簡單易行。在整個仿真過程中,將需要通過圖形面板控制的信號篩選出來(如車速、大氣壓力、轉速、里程、扭矩、發(fā)動機冷卻液溫度等),并創(chuàng)建對應控件,方便仿真時控制信號值。下面以TCO1報文以及車速、左轉向燈信號為例簡單說明圖形面板的創(chuàng)建。

        1.2.2.1 對報文進行關聯設置

        通過 Measurement-->Graphical Panels打開圖形面板界面,放置TX控件到主界面合適位置后,界面右側區(qū)域出現了該控件屬性對話框。在參數 TransmitMessage下拉框選擇要關聯的報文TCO1報文,參數TxType選擇1-Periodic On/Off Button,即點擊后報文周期發(fā)送,再次點擊報文停止發(fā)送。注意要實現報文周期發(fā)送,需先在Tx Pannel報文發(fā)送面板中,將該報文定義成周期報文,同時配置有發(fā)送周期。

        1.2.2.2 對車速信號進行關聯設置

        選擇Meter控件放置在主界面對應位置,在Meter控件屬性界面 Signal屬性下拉框選擇 Tx Messages ->HS CAN->TCO1->Tachograph vehicle speed信號,即車速信號,點擊右上角OK確認即可;在屬性菜單中修改最大值250、最小值0;車速指示控件即設置完成。

        選擇Text Entry控件放置在主界面合適位置,在其Signal屬性下拉框選擇車速信號,點擊右上角OK確認即可,車速編輯控件制作完成。

        1.2.2.3 對左轉向燈進行關聯設置

        選擇 LED控件放置在主界面合適位置,在其屬性界面Signal屬性下拉框選擇左轉向燈信號,點擊右上角OK確認即可;如對LED On Color選擇紅色,LED Off Color選擇綠色,則當信號為1狀態(tài)時顯示紅色,信號為0時顯示綠色。

        On Off Button控件對0、1狀態(tài)進行控制,在圖形面板主界面放置該控件,在屬性框中將該控件關聯到左轉向燈信號,在OnOffType屬性框中選擇1-Toggle Button,方便信號狀態(tài)的保持。

        Drop Down List對有多個狀態(tài)的信號非常適用,該控件可通過下拉框設置關聯信號的信號值。同樣,放置完該控件后,關聯到左轉向信號,在該控件List屬性中將左轉向信號值表編輯進去,即0對應關閉、1對應開啟,2對應錯誤,3對應無效。完成后就可實現該信號值的下拉選擇。

        1.2.2.4 運行圖形面板

        可直接在圖形面板編輯界面將當前面板設置為 Lock狀態(tài)、或在Measurement-->Floating Panels選擇要運行的圖形面板名稱。在VSPY軟件運行后,即可通過圖形面板上對報文發(fā)送、信號值修改進行控制,也可通過對應控件查看對應信號當前值。

        圖1 圖形面板效果圖

        1.2.3 Function Blocks

        Function Blocks中有腳本模式方便模擬簡單邏輯報文收發(fā)控制,在仿真過程中,通過Function Blocks模擬事件報文。此處以模擬發(fā)送載重事件報文說明仿真過程。我們按照每小時發(fā)送一次,每次發(fā)送三幀,每幀間隔 50ms對載重數據進行發(fā)送。

        通過 Scripting and Automation-->Function Blocks進入Function Blocks界面,點擊左上角的“+”號,選擇Script模式,同時在界面下半部分出現腳本編輯窗口,在Script界面我們按照順序編輯腳本命令,選擇行2的Description列雙擊,出現命令下拉窗口,選擇Transmit命令,在Valve列選擇CVW報文;同樣在行3選擇Wait For命令,寫入0.05s,即實現CVW 報文發(fā)送后等待 50ms;重復上面的操作,實現 CVW報文發(fā)送3次,在最后一行,等待時間設置為3600s,見圖2。在腳本編輯界面的Start標簽頁,可選擇腳本運行機制,此處采用VSPY運行后立即執(zhí)行,到此事件報文的發(fā)送腳本就創(chuàng)建完成了。

        圖2 載重腳本編輯界面

        需要注意腳本運行本身就是一個循環(huán),在點擊開始運行后,會重復執(zhí)行該循環(huán)。若需要腳本自動運行結束,需要添加stop語句,腳本運行到stop后停止。

        1.2.4 C代碼接口

        C代碼是仿真中的重點,可通過C代碼實現仿真節(jié)點的各種交互過程,比如網絡管理、UDS診斷、交互認證等功能。下面以實現控制器A與終端之間UDS中27服務安全等級1的校驗交互過程仿真為例說明C代碼接口在仿真中的使用??刂破鰽與終端交互過程均是以CAN報文為載體,在CAN總線上進行的交互。詳細過程見圖3。

        圖3 控制器A與終端認證交互過程

        通過Scripting and Automation-->C Code Interface進入C代碼接口界面,新建工程名稱為SecurityAccess,點擊ok后會自動建好對應工程,并直接跳轉到VS軟件中。在VS中邏輯編寫的工作主要在 SpyCCode.c中,自動生產的 vspy.c和vspy.h是對報文初始化、報文發(fā)送等函數以及VSPY工程中所有的報文、以及需要使用到變量、結構體等進行定義和聲明。

        在SpyCCode.c中,首先創(chuàng)建報文Dig_A和Dig_B結構變量(在 vspy.h中有定義),并對其進行初始化操作,然后添加報文事件,在C Code Interface界面SecurityAccess工程前面方框打勾,然后點擊上方的Edit,彈出C Code Module setup 窗口,點擊Message Events標簽,選擇Rx Messages,在下方左側窗口出現HS CAN網絡Dig_B報文,雙擊Dig_B報文,在右側已選擇報文窗口,就出現Dig_B報文,然后點擊標簽頁Event Hander Code,復制接收Dig_B報文事件函數,然后點擊ok按鈕完成配置。隨后將復制的Dig_B報文事件函數體,粘貼到SpyCCode.c。

        新建應用信號Dig_AControl對控制器A發(fā)送交互請求進行控制,通過Scripting and Automation-->Application Signals進入應用報文編輯界面,點擊右上角“+”添加應用信號,設置成數字信號類型。在圖形面板添加該應用信號的控制后,在C Code Interface中設置應用信號事件,過程同報文事件設置過程,同時將應用信號事件函數復制到CSpyCCode.c。隨后在該應用信號事件函數中添加對應功能代碼,實現在圖形面板設置Dig_AControl的值為1時,則設置Dig_A報文的內容為02 27 01,并將Dig_A報文發(fā)送出去。

        在接收Dig_B報文事件中,檢測到Dig_B的報文值前三個字節(jié)為04 67 01,則提取Dig_B攜帶的seed,提取出seed后按照算法獲得key,填充到Dig_A中,即報文內容為04 27 02 key,最后將Dig_A發(fā)送出去;當檢測到Dig_B的報文值前三個字節(jié)為02 67 02時,即終端判斷收到的key與內部計算的key一致,則打印認證成功字樣。其中seed和key都是16位變量。

        1.2.5 仿真驗證

        將VSPY運行在仿真狀態(tài),通過發(fā)送面板將所有周期報文進行發(fā)送,通過messages界面檢查需周期發(fā)送報文是否均能按照正確周期進行發(fā)送;各個周期報文正確發(fā)送后,運行圖形面板,通過圖形面板控制報文的收發(fā)、信號值的更改,通過messages界面觀察報文是否能正??刂剖瞻l(fā),及報文值更改;圖形面板執(zhí)行都正確后,運行Function Block腳本,查看是否按照預期進行執(zhí)行;執(zhí)行成功后,運行C代碼部分,由于該部分為交互過程,需要終端本身與仿真的控制器A進行交互,來驗證C代碼的正確性。若上述各過程驗證未通過,需找出失敗原因后進行修改,重新驗證,直至成功。

        2 仿真測試

        2.1 環(huán)境搭建

        以終端為被測件,調用仿真節(jié)點控制器A,完成終端如信號采集、交互認證、網絡管理、UDS診斷等功能。按照圖4進行環(huán)境搭建。圖4中neoVI RED為VSPY硬件,電腦運行VSPY軟件。

        圖4 測試環(huán)境搭建圖

        2.2 測試執(zhí)行

        確認CAN線能正常通訊后,打開VSPY軟件,進入到測試平臺,對neoVI RED上電,軟件運行正常后,給終端供電。通過操作圖形面板,改變信號值,觀察終端對接收報文的響應,判定終端是否功能正常;運行Function Block以及C Code Interface去實現請求或事件型、使能型、事件周期型等報文,以及交互認證過程、網絡管理、UDS功能等功能仿真,測試功能是否正確。

        經驗證VSPY仿真的控制器A均能滿足預期要求,完成對終端的測試,在后期測試過程中,均可通過該仿真平臺模擬控制器A,完成所有與控制器A進行的交互節(jié)點的測試,方便后期測試執(zhí)行。

        3 結論

        為解決車載ECU整車CAN總線測試問題,可通過VSPY軟件的圖形面板、Function Block、C Code Interface等模塊實現對整車CAN總線控制器仿真來模擬整車CAN網絡環(huán)境,完成如終端的測試以及測試平臺的搭建等工作。通過該方法不僅可實現單個控制器的測試仿真,同時可結合VSPY中自帶的節(jié)點仿真功能,模擬整車所有CAN網絡節(jié)點,實現對整車CAN網絡的仿真測試。這不僅利于在設計初發(fā)現整車CAN網絡問題,還能輕松仿真整車CAN網絡環(huán)境,復測CAN網絡的實際問題,提高測試效率及復用率,節(jié)約資源。

        猜你喜歡
        控件報文面板
        基于J1939 協(xié)議多包報文的時序研究及應用
        汽車電器(2022年9期)2022-11-07 02:16:24
        面板燈設計開發(fā)與應用
        CTCS-2級報文數據管理需求分析和實現
        淺析反駁類報文要點
        中國外匯(2019年11期)2019-08-27 02:06:30
        MasterCAM在面板類零件造型及加工中的應用
        模具制造(2019年4期)2019-06-24 03:36:50
        關于.net控件數組的探討
        軟件(2018年7期)2018-08-13 09:44:42
        Photoshop CC圖庫面板的正確打開方法
        ATS與列車通信報文分析
        高世代TFT-LCD面板生產線的產能評估
        就這樣玩會VBA中常見的自定義控件
        電腦迷(2012年24期)2012-04-29 00:44:03
        男女在线免费视频网站| 亚洲午夜精品久久久久久人妖| 国产精品视频一区国模私拍| 欧美日韩国产乱了伦| 婷婷久久亚洲中文字幕| 亚洲欧美综合精品成人网站| 国产福利酱国产一区二区| 亚洲成a人片在线播放观看国产| 亚洲第一页在线观看视频网站| av大全亚洲一区二区三区| 老妇女性较大毛片| 无遮挡十八禁在线视频国产制服网站| 国产精品国产三级国产专区51区 | 我揉搓少妇好久没做高潮| 中文精品久久久久人妻不卡| 无码精品a∨在线观看十八禁 | 女人张开腿让男桶喷水高潮 | 日韩人妻无码中文字幕一区| 亚洲一区二区三区在线视频| 欧美人妻aⅴ中文字幕| 国产精品后入内射日本在线观看| baoyu网址国产最新| 人妖一区二区三区在线| 日韩放荡少妇无码视频| 久久久久久久久久久熟女AV| 久久久精品国产亚洲av网| 婷婷久久国产综合精品| 少妇性l交大片| 亚洲中文字幕av天堂| 国产3p一区二区三区精品 | 国产97在线 | 免费| 2020国产精品久久久久| 亚洲国产一区二区中文字幕| 成人av鲁丝片一区二区免费| 久久夜色撩人精品国产小说| 女同同成片av免费观看| 夫妻免费无码v看片| 内射中出无码护士在线| 国产一区二区内射最近人| 国产亚洲成人精品久久| 久久精品免视看国产成人|