劉通 張良 王祥 楊金新
摘要:國內(nèi)汽車電子領(lǐng)域研發(fā)工具國產(chǎn)化替代趨勢近年來變得愈來愈明顯。通過分析國內(nèi)外標定工具的發(fā)展現(xiàn)狀,基于標定工具的基本特點和功能需求,采用業(yè)界ASAM-MCD標準和XCP標定協(xié)議,使用CAN總線進行數(shù)據(jù)傳輸,設計并實現(xiàn)了一種基于XCP協(xié)議的ECU標定工具。該工具使用C#圖形化編程語言開發(fā),實現(xiàn)了上位機進行系統(tǒng)配置、A2L參數(shù)管理、數(shù)據(jù)監(jiān)測以及參數(shù)標定的功能。首先驗證了上下位機之間的正常通信功能,其次導入相應數(shù)據(jù)文件驗證了A2L文件解析功能,最后選擇監(jiān)控量和標定量進行了參數(shù)監(jiān)控,并成功實現(xiàn)了不同類型變量標定的功能。試驗結(jié)果表明,所研發(fā)的標定工具能夠穩(wěn)定地運行,各項功能模塊均能夠滿足測量和標定的使用要求。
關(guān)鍵詞:ECU標定;測量與標定;CAN總線;XCP協(xié)議
中圖分類號:U463? 收稿日期:2023-04-18
DOI:10.19999/j.cnki.1004-0226.2023.08.027
1 前言
現(xiàn)代汽車發(fā)動機是汽車的核心部件,其性能的好壞對整車的動力性、經(jīng)濟性和排放性有著直接的影響。為了確保發(fā)動機性能的滿足要求,現(xiàn)代發(fā)動機通常采用電子控制單元(ECU)對電氣參數(shù)進行標定。通過修改控制系統(tǒng)的參數(shù),我們可以實現(xiàn)發(fā)動機的精準控制和管理。
隨著電控系統(tǒng)數(shù)量的不斷增加,標定工作量也隨之急劇增加,導致標定成本大幅提高。因此,一款操作便捷、高效的標定工具對于標定來說至關(guān)重要。使用標定工具可以大幅降低標定成本,提高標定效率,從而實現(xiàn)更快速、更準確的電控系統(tǒng)標定。標定工具可以監(jiān)控發(fā)動機運行時參數(shù)的變化,包括電氣參數(shù)和機械參數(shù)等,了解發(fā)動機的實時狀況,為發(fā)動機的優(yōu)化控制提供精準的依據(jù)。使用標定工具,可以在線修改ECU內(nèi)的控制參數(shù),對發(fā)動機的控制策略進行優(yōu)化,使其以最優(yōu)性能進行工作。通過這種方式,能夠大幅提高發(fā)動機的駕駛體驗,同時減少了排放和油耗,最大程度地提高了發(fā)動機的性能和可靠性。
在汽車電控領(lǐng)域,外國標定工具已有成熟的商業(yè)產(chǎn)品。這些標定工具可以使用不同的通信協(xié)議進行標定,如基于CAN總線的KWP2000或CCP或XCP協(xié)議、基于K線或FlexRay協(xié)議等,這使得它們具有多功能性、靈活性、可擴展性和易用性等特點。但是,它們大部分只支持特定的通信設備硬件,并且需要專門的培訓進行使用和維護,其中一些商業(yè)軟件集成了標定部分,價格較高,可能并不適合個人用戶或小型企業(yè)使用。
近年來,我國在發(fā)動機標定系統(tǒng)的研究方面主要集中在研究所和高校[1-6]。為了縮小與發(fā)達國家在汽車電控技術(shù)方面的差距,國家科技項目近年來不斷支持和推進國內(nèi)汽車電控技術(shù)的新發(fā)展,發(fā)動機標定系統(tǒng)作為一個重要的研究方向受到了越來越多的重視。國內(nèi)開始不斷出現(xiàn)商業(yè)化標定工具,它們通過消化吸收國外成熟產(chǎn)品的理念進行設計研發(fā),并逐漸成為了汽車電控技術(shù)的重要組成部分。
總體而言,基于CAN總線的CCP協(xié)議是當前車載ECU標定技術(shù)所使用的主要標定協(xié)議。標定系統(tǒng)應著重關(guān)注其通用性和移植性,以提高標定和開發(fā)效率。研究和開發(fā)符合國際主流標準的標定工具可以提高汽車產(chǎn)品的競爭力,推動我國在汽車電子領(lǐng)域的創(chuàng)新和技術(shù)升級。
2 關(guān)鍵技術(shù)研究
2.1 ASAM標準
隨著電控系統(tǒng)數(shù)量的增加和復雜度的提高,標定工作量也會急劇增加,導致產(chǎn)品開發(fā)的時間成本和人力成本的大幅提高。因此,如何提高標定效率和準確性是當前電控系統(tǒng)研發(fā)領(lǐng)域面臨的重要問題。為了解決這個問題,自動化及測量系統(tǒng)標準協(xié)會(Association for Standardization of Automation and Measuring system,ASAM)制定和推廣了MCD系統(tǒng)標準[7]。MCD標準的主要目標是自動化測量、標定和診斷系統(tǒng),以提高效率并確保標定的一致性和精度。ASAM-MCD標準對ECU開發(fā)過程中的軟件接口、參數(shù)描述格式和通信協(xié)議進行標準化,為標定工具的開發(fā)提供了標準化的基礎。ASAM-MCD標準規(guī)定的測量與標定系統(tǒng)三層結(jié)構(gòu)如圖1所示。
其中,ASAM MCD-1MC定義了ECU與應用系統(tǒng)之間的物理和邏輯接口標準,確保不同系統(tǒng)之間的兼容性; ASAM MCD-2MC定義了電子控制單元內(nèi)部數(shù)據(jù)描述文件的規(guī)范,即A2L文件格式,為標定工具提供了重要的參數(shù)描述信息;ASAM MCD-3MC定義了標定系統(tǒng)與自動化系統(tǒng)的接口規(guī)范,可用于遠程臺架自動化測試和標定。
2.2 標定協(xié)議
標定協(xié)議通過對ECU與PC標定工具的接口進行標準化,實現(xiàn)了測量、標定等服務的標準化。在標定協(xié)議中,CCP協(xié)議是最早根據(jù)標準定義的標定協(xié)議[8-10]。在CCP協(xié)議下,標定工具通過CAN總線與ECU進行通信,進行數(shù)據(jù)讀取、寫入及校準等操作,為標定工程師提供了一種快速高效地進行標定工作的途徑。XCP協(xié)議是在ASAM標準體系中的ASAP MCD-1MC標準中,由CCP2.1版本發(fā)展而來的標定協(xié)議。與CCP協(xié)議相比,XCP協(xié)議最大的特點在于可以同時支持多種傳輸層作為標定系統(tǒng)上位機和ECU之間的傳輸介質(zhì)。傳輸層可以是CAN、USB、SxI、FlexRay和Ethernet等多種不同的物理層[11-13],這使得XCP協(xié)議極大地提高了標定過程的靈活性和可擴展性。
2.3 CAN驅(qū)動通信
在基于標定協(xié)議的測量與標定系統(tǒng)中,采用XCP數(shù)據(jù)包進行上位機與下位機之間的實際數(shù)據(jù)通信,XCP數(shù)據(jù)包可以通過CAN數(shù)據(jù)包進行傳輸。在整個測量與標定系統(tǒng)中,CAN驅(qū)動模塊是其基礎通信模塊之一,用于實現(xiàn)上位機與下位機之間數(shù)字信號的傳輸。PC端標定工具與ECU間的CAN接口進行通信,需要借助CANUSB轉(zhuǎn)接設備。本文選用CANUSB接口卡支持Win7/10等操作系統(tǒng),可以基于二次開發(fā)函數(shù)庫編寫軟件,該設備接口庫以基于Windows系統(tǒng)的動態(tài)鏈接庫(DLL)的方式提供,可實現(xiàn)設備打開、配置、報文收發(fā)、關(guān)閉等功能,主要開發(fā)流程如圖2所示。
2.4 XCP協(xié)議棧
XCP協(xié)議作為實現(xiàn)測量與標定系統(tǒng)中標定協(xié)議的重要一環(huán),可以完成XCP數(shù)據(jù)包的封裝和解析,實現(xiàn)在線修改ECU中控制參數(shù)和獲取運行數(shù)據(jù),從而減少標定工程師的重復性工作。
XCP協(xié)議傳輸?shù)臄?shù)據(jù)主要分為兩大類:運行狀態(tài)數(shù)據(jù)和系統(tǒng)控制命令參數(shù)及配置參數(shù)。這些數(shù)據(jù)需要按照XCP協(xié)議規(guī)定的格式和協(xié)議進行封裝和傳輸。在XCP協(xié)議層中,CAN數(shù)據(jù)幀被用來傳輸XCP數(shù)據(jù)包,通過傳輸控制字符和數(shù)據(jù)控制字符的正確設置,確保數(shù)據(jù)的完整性和準確性。
XCP協(xié)議的相關(guān)命令主要分為邏輯連接與斷開、數(shù)據(jù)監(jiān)測和參數(shù)標定三大模塊。邏輯連接與斷開模塊主要用于建立和斷開上下位機之間的連接,數(shù)據(jù)監(jiān)測模塊即DAQ功能模塊,完成下位機數(shù)據(jù)的周期性上傳和監(jiān)測。參數(shù)標定模塊的主要功能是完成對下位機應用程序中重要控制參數(shù)的修改,在實際操作中,它還可以分為參數(shù)下載和在線編程兩個階段。
2.5 A2L解析
ASAM MCD-2MC標準是一種對ECU中參數(shù)信息及其邏輯關(guān)系進行規(guī)范化描述的標準[14]。在測量與標定過程中,工程師需要對ECU中的參數(shù)信息進行調(diào)整和修改。為了方便管理和使用這些參數(shù)信息,A2L文件被廣泛應用于測量與標定系統(tǒng)中。A2L文件是一份包含了ECU中所有參數(shù)及其相關(guān)邏輯關(guān)系的文本文件,采用規(guī)范化的方式描述參數(shù)信息,在A2L文件中,參數(shù)信息和邏輯關(guān)系都會被以關(guān)鍵字的形式進行描述,這樣就可以方便地解析和管理參數(shù)信息。A2L文件的解析模塊主要負責對規(guī)范化的A2L文件進行解析,生成參數(shù)列表,供工程師在測量與標定過程中使用,從而使工程師的工作更加高效和準確。圖3所示為文件組織結(jié)構(gòu)與模塊描述。
3 系統(tǒng)設計與實現(xiàn)
3.1 標定工作流程
標定系統(tǒng)的整體工作流程如圖4所示。首先由PC標定工具對標定過程中的發(fā)動機轉(zhuǎn)速、供油時間、噴油壓力、點火時間等參數(shù)進行采集,然后送至ECU進行計算,再由ECU把計算結(jié)果以控制信號的形式發(fā)送至 CAN總線網(wǎng)絡上,由CAN總線把計算結(jié)果發(fā)送給PC標定工具,對傳感器輸出的數(shù)據(jù)進行實時采集和存儲。通過PC標定工具對標定過程中的各種參數(shù)進行實時監(jiān)測和控制,可以通過總線將故障信息實時反饋給操作人員,以便操作人員及時了解發(fā)動機運行情況,并根據(jù)故障信息調(diào)整標定參數(shù)。
3.2 標定系統(tǒng)架構(gòu)設計
標定系統(tǒng)的設計需考慮到系統(tǒng)的可靠性、可擴展性和易用性等方面。標定系統(tǒng)需將PC端上位機、ECU端下位機、通信轉(zhuǎn)換設備CANUSB和A2L數(shù)據(jù)庫文件等組成部分(圖5)進行合理地組合和管理,以便實現(xiàn)標定參數(shù)的讀取、修改和保存等功能。標定系統(tǒng)的設計原則是盡量保證各功能單元模塊化、層次化,降低各功能模塊間的耦合度,方便后續(xù)對軟件的升級和針對不同平臺進行移植。為實現(xiàn)這一目標,標定系統(tǒng)需采用統(tǒng)一的通信協(xié)議和數(shù)據(jù)格式,以實現(xiàn)標定工具和ECU之間的統(tǒng)一管理和控制,使標定系統(tǒng)更加易用、可靠和有效。
在具體實現(xiàn)時,標定系統(tǒng)的各個功能單元需要采用模塊化和層次化的設計,以便實現(xiàn)各個單元之間的信息共享和功能拓展。對于不同的應用場景和不同的平臺,標定系統(tǒng)的設計也應該具備一定的靈活性和可移植性。通過采用通用的接口和協(xié)議,方便地移植到不同的硬件設備上,實現(xiàn)對不同的標定工具和ECU類型的支持,從而滿足不同用戶的需求。
3.3 標定工具功能實現(xiàn)
標定工具一般運行在PC機上,能夠通過上下位機之間的通信介質(zhì)與發(fā)動機ECU實現(xiàn)數(shù)據(jù)信息交互,它主要實現(xiàn)的模塊及功能如圖6所示。
a.用戶界面功能模塊。主要包括系統(tǒng)配置、參數(shù)管理、數(shù)據(jù)采集、數(shù)據(jù)存儲、參數(shù)標定和其他輔助功能。這些功能模塊為用戶提供了一個集成化的平臺,實現(xiàn)ECU和PC機之間的數(shù)據(jù)信息交互。
該模塊所包含的具體功能如下:
①系統(tǒng)配置。標定工具可配置的內(nèi)容包括系統(tǒng)參數(shù)、總線參數(shù)、通信參數(shù)設置、硬件信息以及其他系統(tǒng)環(huán)境參數(shù)等。在標定工作過程中,可通過標定工具對系統(tǒng)參數(shù)進行配置,以實現(xiàn)對整個系統(tǒng)的管理和調(diào)節(jié)。所有可配置的內(nèi)容都可以被讀取、保存并重新載入使用,以實現(xiàn)系統(tǒng)的運行靈活性。
②參數(shù)管理。標定系統(tǒng)通過解析A2L文件獲取所需標定的參數(shù)信息,此解析過程需要標定系統(tǒng)具備高度的規(guī)范化。只有系統(tǒng)解析A2L文件的過程準確無誤,才能保證ECU參數(shù)標定的準確性和可靠性。
③數(shù)據(jù)采集。標定工程師需通過對ECU運行過程中的各種信號進行采集和分析,來實現(xiàn)精準的控制策略和參數(shù)優(yōu)化調(diào)節(jié)。因此,具備實時采集ECU信號的系統(tǒng)和上位機軟件交互界面成為了標定工作必不可少的重要組成部分。這套系統(tǒng)可以實現(xiàn)實時采集ECU運行的各種信號,并在上位機軟件的交互界面上予以同步顯示。這樣的設計方便標定工程師對比ECU控制策略中涉及的各個參數(shù)的具體數(shù)值和控制效果之間的關(guān)系。此外系統(tǒng)中需提供多種不同的形式來顯示這些參數(shù),如數(shù)值窗口、曲線窗口、三維圖窗口等,不同的顯示形式能夠滿足不同標定工程師的需求,以便在實時控制策略調(diào)整時更加方便地進行參數(shù)分析。
④數(shù)據(jù)存儲。該系統(tǒng)需動態(tài)記錄測量監(jiān)測數(shù)據(jù)并保存記錄,保存修改完成的標定數(shù)據(jù),同時具備導入導出功能,實現(xiàn)文件存儲和能夠從磁盤文件中加載讀取數(shù)據(jù)至當前試驗窗口中,提供可靠的數(shù)據(jù)源和高效的數(shù)據(jù)管理工具。
⑤參數(shù)標定。在線修改處于連接狀態(tài)的ECU特定控制參數(shù),能夠方便地進行參數(shù)優(yōu)化和性能調(diào)整,而不必刷寫整個ECU控制程序。這種方法最大的優(yōu)點之一是可以在不中斷ECU連接的情況下進行參數(shù)優(yōu)化。因此,標定工程師可以直接對比控制參數(shù)修改前后系統(tǒng)各項性能指標所受到的影響,并快速優(yōu)化參數(shù)。這種方法可以在線修改處于連接狀態(tài)的ECU特定控制參數(shù),同時避免對整個ECU控制程序的刷寫。它能方便工程師對比修改前后的系統(tǒng)性能指標影響,進行參數(shù)快速優(yōu)化。
b.通信及標定協(xié)議模塊。包括XCP協(xié)議棧和CAN通信驅(qū)動模塊。XCP協(xié)議棧負責完成將人機交互界面數(shù)據(jù)封裝并生成XCP數(shù)據(jù)包,同時按照具體傳輸層要求生成XCP數(shù)據(jù)包。CAN通信驅(qū)動模塊進一步封裝符合CAN傳輸層格式的XCP數(shù)據(jù)包,并生成對應的CAN數(shù)據(jù)幀。最后,利用CANUSB通信轉(zhuǎn)換裝置將標定命令或數(shù)據(jù)從上位機傳輸?shù)紺AN總線上。通過這種方式,可以實現(xiàn)與ECU的通信,以便標定工程師進行參數(shù)優(yōu)化和性能調(diào)整。
4 功能驗證
4.1 上下位機通信
首先需驗證CAN驅(qū)動程序的正確性,以確保ECU能夠通過CAN總線與上位機的標定工具進行通信。在通信過程中,需要對ECU反饋的報文進行分析,以驗證返回的數(shù)據(jù)域內(nèi)容是否符合XCP協(xié)議棧的報文格式。本文使用致遠電子提供的配套總線分析軟件ZCANPRO監(jiān)測CAN通信狀態(tài)。通過手動編寫包含命令碼和數(shù)據(jù)包,封裝到CAN數(shù)據(jù)幀中發(fā)送到ECU。在接收到ECU反饋的CAN報文后,分析其是否符合規(guī)定的XCP報文ID。分別進行了CONNECT、GET_STATUS以及DISCONNECT命令的測試,測試的結(jié)果如圖7所示。試驗表明,ECU反饋的報文ID為0XFF開頭,符合XCP協(xié)議規(guī)定要求。
4.2 參數(shù)管理
對上位機功能進行驗證時,首先需要驗證A2L文件解析功能的正確性,確保上位機標定工具能正確解析A2L文件,生成對應的標定量和監(jiān)控量解析列表。首先,在上位機標定工具界面點擊數(shù)據(jù)庫,在文件選擇窗口中添加A2L文件,確定后解析A2L文件,將其中的參數(shù)和預先的標定量取出并存儲到數(shù)據(jù)庫中。對于標定量還需要能按照VALUE、CURVE和MAP等不同類別進行篩選,方便根據(jù)數(shù)據(jù)類型找到所需要的參數(shù),解析測試參數(shù)列表如圖8所示。試驗結(jié)果表明,標定工具可以正常進行不同類型變量解析。
4.3 數(shù)據(jù)采集和參數(shù)標定
在標定工具圖形用戶界面,選擇相應的監(jiān)控量后,點擊確定,該監(jiān)控量便可以在試驗窗口進行顯示,如圖9所示。建立上位機和下位機成功通信后,標定工具便可以發(fā)送封裝SET_MTA命令的數(shù)據(jù)包,指定選擇的監(jiān)控量在ECU中存放的地址,在獲取ECU反饋后,再繼續(xù)發(fā)送封裝了UPLOAD命令的數(shù)據(jù)包,從而獲取ECU內(nèi)部對應地址上的數(shù)值。為了滿足實時數(shù)據(jù)監(jiān)測的功能,需要采用DAQ通信模式,選擇監(jiān)控參數(shù),配置DAQ列表,設置DAQ列表的定時上傳周期,實現(xiàn)連續(xù)數(shù)據(jù)監(jiān)測。采用DAQ通信模式后的CAN報文交換過程如圖10所示,試驗表明,本文設計的標定工具中的數(shù)據(jù)監(jiān)測模塊能準確完成對選定參數(shù)的讀取和上傳功能。
測試人員在標定工具界面選擇需要標定的參數(shù)作為標定對象,顯示界面如圖11所示。標定主要進行獲取標定頁、設置數(shù)據(jù)操作地址和下載數(shù)據(jù)操作,該過程CAN報文交換如圖12所示。試驗結(jié)果表明,該程序能夠?qū)崿F(xiàn)對ECU控制參數(shù)進行在線修改,并改變控制對象的工作狀態(tài)。為了實現(xiàn)控制參數(shù)的標定匹配,可以結(jié)合數(shù)據(jù)監(jiān)測窗口反饋的數(shù)據(jù)進行分析和調(diào)整。
5 結(jié)語
本文研究了國內(nèi)外標定工具的發(fā)展現(xiàn)狀,并總結(jié)了標定工具的基本特點和功能需求。本文采用ASAM-MCD標準和XCP標定協(xié)議,并利用CAN總線進行數(shù)據(jù)傳輸,設計并實現(xiàn)了一種基于CAN總線和XCP協(xié)議的ECU標定系統(tǒng),其中PC端標定工具使用C#語言進行圖形化界面開發(fā)。該系統(tǒng)實現(xiàn)了數(shù)據(jù)監(jiān)測與參數(shù)標定模塊、XCP協(xié)議棧模塊、CAN通信模塊和A2L文件解析模塊,并且可以通過界面進行參數(shù)設置、參數(shù)管理、數(shù)據(jù)監(jiān)控、數(shù)據(jù)存儲、參數(shù)標定等多項功能。本文最后對該標定工具進行了測試驗證,驗證了上位機與ECU間的正常通信、數(shù)據(jù)監(jiān)控、不同類型變量標定的功能。實驗結(jié)果表明,該標定工具可以穩(wěn)定可靠地運行,滿足日常測量與標定工作的使用要求。
參考文獻:
[1]杜江,戴海峰,魏學哲.基于CAN總線的HCS12汽車ECU在線標定系統(tǒng)設計[C]//2007年APC聯(lián)合學術(shù)年會論文集,2007:353-357.
[2]溫泉,張廣秀,張建.基于ASAM標準的汽車電控系統(tǒng)匹配標定系統(tǒng)設計[J].汽車實用技術(shù),2012(5):40-46.
[3]謝江浩.符合AUTOSAR架構(gòu)的XCP標定系統(tǒng)研究與實現(xiàn)[D].成都:西華大學,2017.
[4]倪春燕.基于CCP協(xié)議的測量標定系統(tǒng)研究與實現(xiàn)[D].武漢:武漢理工大學,2017.
[5]陳鵬.基于CCP協(xié)議發(fā)動機標定系統(tǒng)應用研究[D].武漢:武漢理工大學,2014.
[6]劉運瀟.基于CCP的通用型ECU標定系統(tǒng)研究和設計[D].上海:上海交通大學,2013.
[7]李計融,鐘再敏.車載控制器匹配標定ASAP標準綜述[J].汽車技術(shù),2004(10):1-4.
[8]李麗,董昌興,尹欣欣.基于CCP協(xié)議的ECU標定系統(tǒng)上位機設計[J].汽車電器,2021(11):54-56.
[9]侯翔.CCP協(xié)議通用標定系統(tǒng)在防爆柴油機開發(fā)中的應用[J].山東煤炭科技,2021,39(8):142-145.
[10]蔡燕飛.基于CCP協(xié)議的ECU標定系統(tǒng)上位機設計[J].汽車工程師,2012(8):53-55+59.
[11]熊婉儀,吳志紅,朱元.基于CAN總線的XCP標定協(xié)議研究[J].信息通信,2015(9):19-20.
[12]馮占軍,丁鋒,譚啟寅.基于XCP協(xié)議的ECU控制器標定系統(tǒng)開發(fā)[J].上海汽車,2013(11):16-18.
[13]段延喜,彭宇,朱青.基于XCP協(xié)議的通用型ECU標定軟件的開發(fā)[J].微計算機信息,2012,28(5):69-71.
[14]宋維群,楊世春,李明,等.基于ASAM標準的標定數(shù)據(jù)庫邏輯分析與編程實現(xiàn)[J].汽車技術(shù),2012(1):10-13.
作者簡介:
劉通,男,1995年生,碩士,研究方向為汽車網(wǎng)聯(lián)系統(tǒng)。