張擁軍
(北京經(jīng)濟管理職業(yè)學院, 人工智能學院, 北京 100102)
隨著我國經(jīng)濟的不斷發(fā)展,汽車的數(shù)量呈遞增趨勢上漲,對于汽車技術(shù)的要求也隨之增長。近年來,汽車技術(shù)不斷向上突破,形成汽車網(wǎng)聯(lián)技術(shù),智能網(wǎng)聯(lián)汽車已成為主要發(fā)展方向之一。但是該技術(shù)使汽車對外接口的數(shù)量增多,造成網(wǎng)絡攻擊成為影響汽車安全性的關(guān)鍵因素,為此本研究提出一種基于CAN總線的車載網(wǎng)絡通信系統(tǒng)設計方案,可使汽車網(wǎng)絡通信的安全性得到保證,對于汽車領(lǐng)域的發(fā)展具有重要意義。
對車載網(wǎng)絡通信系統(tǒng)進行設計時,其結(jié)構(gòu)組成主要由臺架、工控機等附件以及上位機軟件共同組成。臺架指全部硬件資源的統(tǒng)稱;工控機實際上是1臺通用的PC機,可輔助上位機管理軟件穩(wěn)定運行;上位機軟件可為人與機之間提供接口,實現(xiàn)測試工程師與系統(tǒng)之間的交互,在系統(tǒng)中主要負責對臺架硬件資源的合理利用。其中,工控機與上位機軟件可融合為一個整體,本研究將其統(tǒng)稱為上位機[1]。
車載網(wǎng)絡通信系統(tǒng)總體設計方案共分為兩部分:上位機和下位機。上位機具有輔助功能,可協(xié)助測試人員創(chuàng)建測試模型,對下位機進行控制與測試。下位機內(nèi)含48個ECU開發(fā)板,并集成了電源控制部件、CAN收發(fā)器模型等硬件設施的復雜系統(tǒng)。電源控制部件可為下位機的開發(fā)板及配置子板持續(xù)供應電源,實現(xiàn)下位機的穩(wěn)定運行;CAN收發(fā)器模型內(nèi)部主要包含CAN控制器及收發(fā)器模型,屬于一種可生成總線接口的模型庫,為驗證和模擬車載網(wǎng)絡通信系統(tǒng)的行為,可對CAN總線信號的電壓值、上升沿、下降沿等特性進行深入分析。CAN外圍電路模型可對共模濾波器模型進行開發(fā),搭建過程中主要利用CAN收發(fā)器模型完成基本操作。對線束模型進行搭建時,可任意設置線長、線徑等資源,以此實現(xiàn)線束模擬仿真[2]。
對車載網(wǎng)絡通信系統(tǒng)進行開發(fā)時,為最大限度地降低系統(tǒng)開發(fā)難度,本研究將該系統(tǒng)分為10個模塊進行說明。
(1) 上位機:該部分實際上是1臺PC機,屬于整個系統(tǒng)的核心模塊,在PC機上可實現(xiàn)對測試管理軟件、CANOE、LabView等輔助軟件的運行。其中,測試管理軟件可對控制目標進行仿真測試,同時可對網(wǎng)絡運行環(huán)境生成測試用例文檔。
(2) 電源管理:為實現(xiàn)車載網(wǎng)絡通信系統(tǒng)的電源管理,可將實際電源分配至系統(tǒng)內(nèi)部組件。
(3) 程控電源:該部分利用上位機軟件對車載網(wǎng)絡通信系統(tǒng)的實際工作電壓和電流進行仿真,可支持手動控制實際輸出電壓及電流的數(shù)值[3]。
(4) 控制器主板:對該部分設計時,應對控制器主板進行仿真。
(5) CAN收發(fā)器:為驗證和模擬車載網(wǎng)絡通信系統(tǒng)的行為,通過CAN物理層對電路仿真模型進行實現(xiàn),并對CAN總線信號的電壓值、上升沿、下降沿等特性進行分析。
(6) 配置子板:通過模型庫中的模型數(shù)據(jù),完成對CAN外圍電路的搭建。
(7) 控制器供電模塊:該部分可通過配置子板的方式為控制器的主板、CAN收發(fā)器持續(xù)供應電源。
(8) 故障注入模塊:該模塊可實現(xiàn)對車載網(wǎng)絡通信系統(tǒng)線路故障的仿真。
(9) 線束模型:為實現(xiàn)線束模擬仿真,可對線長、線徑等任意設置。
(10) 真實部件:該部件可在系統(tǒng)需要測試網(wǎng)絡使用情況時,將其接入仿真系統(tǒng)完成相關(guān)操作[4]。
車載網(wǎng)絡通信系統(tǒng)設計過程中,將下位機作為系統(tǒng)穩(wěn)定運行的基礎(chǔ),并將車載網(wǎng)絡通信系統(tǒng)下位機分為電源、ECU開發(fā)板、收發(fā)器模型以及外圍電路模型等模塊,下位機總體設計方案如圖1所示。
圖1 下位機總體設計方案示意圖
從圖1可知,下位機總體設計方案主要包括3部分:電源、ECU仿真、故障注入。其中,PC機指上位機管理軟件,該部分可實現(xiàn)上位機與下位機之間的交互作用,對上位機配置完成的信息,主要通過串口的方式將該信息發(fā)送至程控電源及ECU、BOB上。方案中的電源部分可維持整個車載網(wǎng)絡通信系統(tǒng)的電源供應,為實現(xiàn)對車載網(wǎng)絡通信系統(tǒng)的通斷控制、過載保護以及急停控制等操作,將該部分劃分為電源管理、程控電源、控制器供電3個模塊。仿真ECU對于下位機的穩(wěn)定運行具有重要促進作用,屬于下位機設計中的核心組成部分。對該部分進行設計時,應充分結(jié)合實際需求及使用情況,實現(xiàn)對不同收發(fā)器、外圍電路模型的任意組合測試。故障注入功能中最重要的部分為BOB,可實現(xiàn)對車載網(wǎng)絡通信系統(tǒng)運行過程中的任意故障進行模擬[5]。
通過上述分析可知,車載網(wǎng)絡通信系統(tǒng)電源主要包括電源管理、程控電源以及控制器供電3個模塊,可持續(xù)為系統(tǒng)的ECU及BOB提供電源。其中,電源管理模塊可對車載網(wǎng)絡通信系統(tǒng)電源部分進行通斷控制、過載保護等操作。為維持系統(tǒng)的穩(wěn)定發(fā)展,對電源設備進行選取時,應結(jié)合實際需求、成本、性能等方面因素進行綜合考慮,最終選擇市面上最普遍的旋鈕開關(guān)、急停開關(guān)作為系統(tǒng)主電源開關(guān),并以220 V的交流電輸入至車載網(wǎng)絡通信系統(tǒng)。程控電源模塊的電壓及電流可由上位機軟件進行配置,對于ECU實際工作過程中的電源具有模擬功能。為實現(xiàn)對電壓及電流的配置,可通過串口通信的方式與程控電源進行交互,也可通過手動配置的方式對電壓及電流數(shù)值進行輸出[6]。
該部件是車載網(wǎng)絡通信系統(tǒng)的核心部分,為實現(xiàn)對不同型號收發(fā)器及外圍電路模型進行測試,本研究將該部件分為ECU主板、CAN收發(fā)器子板及配置子板,根據(jù)系統(tǒng)的實際需求,使每個主板均支持六路CAN的配置。通過將仿真ECU設計成可自由插拔的形式,可實現(xiàn)不同型號子板和主板之間的自由組合,有利于將系統(tǒng)開發(fā)成本降至最低。
(1) ECU主板
該部分可執(zhí)行CAN總線的收發(fā)程序,在系統(tǒng)中主要負責下位機對上位機ECU配置的讀取,可維持車載網(wǎng)絡通信系統(tǒng)的正常運行,屬于該系統(tǒng)的核心部分。將ECU主板應用于實際測試環(huán)境時,應加強對數(shù)據(jù)處理、運算速度、精度等方面的要求,最終將TC234LX作為主控芯片。該芯片內(nèi)含32位微控制器,可充分滿足車載網(wǎng)絡通信系統(tǒng)對安全性能設置的標準,有利于提高系統(tǒng)應用性能,對于系統(tǒng)的開發(fā)成本、復雜性等部分具有降低作用,并且該芯片可支持6路CAN、2路LIN、CANFD及以太網(wǎng)接口。為實現(xiàn)ECU主板與上位機之間的交互,本研究采用RS485串口作為系統(tǒng)的通信接口,并為1路CAN通道預留了DB9接口,通過方式即可實現(xiàn)CAN網(wǎng)絡數(shù)據(jù)的采集和監(jiān)控[7]。
(2) CAN收發(fā)器子板
本研究對CAN收發(fā)器子板采用可插拔式設計,為保證車載網(wǎng)絡通信系統(tǒng)的可擴展性,開發(fā)出20多種CAN收發(fā)器子板模型,將CAN收發(fā)器子板模型安裝在系統(tǒng)主板上,即可實現(xiàn)該部分的正常功能。
(3) 配置子板
配置子板可實現(xiàn)對系統(tǒng)ECU外圍電路參數(shù)的配置,ECU外圍電路的參數(shù)主要包括晶振、共模濾波器、終端電阻、分裂電容、直線電阻等。對該部分進行設計時,同樣采用可插拔式設計,為實現(xiàn)對外圍電路的配置,可利用繼電器的通斷功能對子板進行配置。
車載網(wǎng)絡通信系統(tǒng)在運行過程中,其內(nèi)部輸入輸出信號可出現(xiàn)短路、斷路、開路等現(xiàn)象,對車載網(wǎng)絡通信系統(tǒng)進行仿真測試,可通過故障模擬實現(xiàn)。
該軟件主要由PC機、Windows操作系統(tǒng)以及輔助軟件CANOE等部分共同組成。系統(tǒng)測試人員通過上位機軟件可實現(xiàn)對車載網(wǎng)絡通信系統(tǒng)的操作,以此完成對車載網(wǎng)絡通信系統(tǒng)的各項測試,上位機軟件功能結(jié)構(gòu)[8]如圖2所示。
圖2 上位機軟件功能結(jié)構(gòu)圖
對上位機的功能結(jié)構(gòu)進行測試,將測試程序分為8個步驟。首先,在臺架上電前對網(wǎng)絡拓撲進行搭建;相關(guān)準備工作完成后給臺架上電;運行上位機管理軟件,實現(xiàn)對車載網(wǎng)絡通信系統(tǒng)的電源管理;為ECU持續(xù)供應電源;將CAN通信網(wǎng)絡的數(shù)據(jù)文件以*.dbc格式導入系統(tǒng)中,有利于ECU在配置過程中使用;配置CAN總線的節(jié)點;下載配置;生成測試用例文檔及報告文檔。
對主界面進行設計時將其分為3部分。其中,臺架參數(shù)設置主要對程控電源和IO設備進行操作,由于IO設備暫無應用,為其預留端口,程控電源的主要功能包括:打開和關(guān)閉輸出功能、提示輸出狀態(tài)及設置輸出電壓。數(shù)據(jù)庫部分可對DBC源數(shù)據(jù)進行導入及管理,有利于降低系統(tǒng)測試的復雜性。歷史配置參數(shù)部分可為系統(tǒng)測試保留配置數(shù)據(jù),通過對配置名稱進行設置、查詢歷史記錄、新建配置記錄、生成PDF文件等功能,有利于測試人員直接讀取上一次的配置數(shù)據(jù),為測試人員提供便捷性。
數(shù)據(jù)庫解析是上位機軟件運行的核心,將車載網(wǎng)絡通信系統(tǒng)的文獻解析為DBC形式,用來描述單個CAN網(wǎng)絡的通信。DBC文件可用于開發(fā)電子控制單元的通信軟件,本研究主要利用DBC文件格式對系統(tǒng)數(shù)據(jù)庫進行解析,為系統(tǒng)測試奠定基礎(chǔ)。其解析流程為首先將DBC文件讀入至數(shù)據(jù)庫中,數(shù)據(jù)庫可對文本內(nèi)容進行逐行讀取,以此判斷文件是否結(jié)束。在內(nèi)容不為空的狀態(tài)下,調(diào)用數(shù)據(jù)庫的解析程序,對DBC文件進行解析,解析完畢后,系統(tǒng)自動將結(jié)果保存至數(shù)據(jù)庫中。其中,數(shù)據(jù)庫的型號為MySQL,數(shù)據(jù)庫解析流程如圖3所示。
圖3 數(shù)據(jù)庫解析流程圖
本研究將數(shù)據(jù)庫接口分為3部分進行設計,其中ECU配置數(shù)據(jù)接口的CAN通道配置為CAN_Channel、初始化延遲發(fā)送時間配置為Init_Delay_Time、波特率配置為Baud_Rate、位定時設置Bit_Timing、CANFD波特率為CANFD_Baud_Rate、CANFD數(shù)據(jù)場設置為CANFD_Data_Field。ECU發(fā)送報文數(shù)據(jù)接口的CAN報文幀格式配置為Messaga_Type、報文ID為Messaga_ID、報文數(shù)據(jù)長度DLC、發(fā)送方式Send_Type。外圍電路配置數(shù)據(jù)接口的晶振參數(shù)Co_pa-rameter、共模濾波器參數(shù)Cmf_parameter、終端電阻參數(shù)Terminal_Resistance、分裂電容參數(shù)為Split_Apacitance、ESD電容參數(shù)為ESD_Apacitance、終端電阻參數(shù)TR_Position、外圍電路參數(shù)Peripheral_Circuit、支線電阻參數(shù)為Branch_Resistance。
為驗證車載網(wǎng)絡通信系統(tǒng)的有效性及合理性,本研究首先確保對ECU單節(jié)點的真實有效性。測試開始之前,分別對系統(tǒng)內(nèi)部真實部件及ECU單節(jié)點進行測試。對ECU單節(jié)點測試時,其中CANOE可在本次測試中充當CAN網(wǎng)絡的終端節(jié)點,在本次測試中用于檢測并解析CAN總線的報文數(shù)據(jù),而系統(tǒng)中CAN總線的波形數(shù)據(jù)可用示波器檢測,ECU可在測試中充當真實部件或仿真ECU節(jié)點,由于系統(tǒng)中的樣本數(shù)量較多,本研究將控制器的名稱用ECU1和ECU2表示。
測試流程:首先將節(jié)點與測試設備連接,ECU1的CAN收發(fā)器的型號為TJA1042,ECU2的CAN收發(fā)器的型號為TLE6251DS;連接完畢后,對測試系統(tǒng)上電,將輸出電壓設置為24 V,啟動電源運行上位機管理軟件;運行過程中將待測ECU及CAN數(shù)據(jù)庫文件導入測試系統(tǒng)中,將測試過程中產(chǎn)生的配置信息以PDF形式保存。選擇總線節(jié)點,并對外圍電路進行配置,其中ECU1的外圍電路參數(shù)為晶振參數(shù)0、終端電阻120 Ω、共模濾波器0uH、分裂電容1 nF、ESD電容為47 pF。ECU2的外圍電路參數(shù)為晶振參數(shù)0、終端電阻無、共模濾波器0uH、分裂電容4.7 nF、ESD電容為100 pF、支線電阻2.6 kΩ。對ECU配置進行下載,并將觀測結(jié)果生成測試報告。
由于測試環(huán)境存在干擾因素,本研究選取誤差較小的18個CAN波形參數(shù)。為保證車載網(wǎng)絡通信系統(tǒng)的穩(wěn)定運行,要求ECU單節(jié)點精度應小于20%,對本次測試結(jié)果進行分析可知,ECU單節(jié)點的精度符合預期值。
為了使汽車通信網(wǎng)絡信息的安全得到保證,本研究提出一種基于CAN總線的車載網(wǎng)絡通信系統(tǒng)設計方案,并將車載網(wǎng)絡通信系統(tǒng)分為兩部分進行設計,分別是上位機和下位機。上位機具有輔助功能,可協(xié)助測試人員創(chuàng)建測試模型,對下位機進行控制與測試;下位機內(nèi)含48個ECU開發(fā)板,并集成了電源控制部件、CAN收發(fā)器模型等硬件設施的復雜系統(tǒng)。為了驗證該系統(tǒng)的安全性及有效性,利用仿真測試對系統(tǒng)的ECU單節(jié)點進行測試,將該系統(tǒng)應用于汽車工業(yè)領(lǐng)域,對于汽車行業(yè)的發(fā)展具有重要意義。