利用CANape進行基于CCP的汽車控制器的匹配標定的設計
CCP協(xié)議共定義了28條命令,每條命令在CCP driver中都對應一組相應的子函數,代表不同的功能,如EEPROM標定、DAQ工作模式等。用戶可根據實際需要,選擇實現其中部分或全部功能。每增加一個新的功能,必須在底層程序中添加開放該項功能的程序接口[3]。如對EEPROM標定,首先ECU應用程序中應包含EEPROM模塊子函數,同時還需實現命令處理器與EEPROM模塊之間的調用接口。
CANape[4]是德國Vector公司出品的一款基于ASAP標準的ECU測試和標定工具。它通過一個控制器硬件接口與ECU相連,兩者之間常用的物理連接是基于CCP協(xié)議的CAN總線。只有控制器的底層程序中有支持CCP協(xié)議的程序接口, CANape才能與控制器通信。
CANape提供了多種功能:在線數據評估、離線評估、數據管理、FLASH編程、參數標定及ASAP2數據編輯器等。此外,測試過程中由CAN總線上傳的數據還可以通過CANape在計算機顯示和保存,以進行離線標定和數據評估。
3.1 ASAP2控制器描述文件及ASAP2編輯器
CANape與控制器間的通信需要一個描述文件支持,這個文件稱為ASAP2控制器描述文件[4]。CANape對控制器的參數標定和數據測量都是基于這個文件,該文件記錄了控制器中各參數的詳細信息,如標定參數和測量變量在控制器中的存儲地址、存儲結構、數據類型和轉換公式等。在CANape中,每個標定參數和測量數據都會有一個變量名,如發(fā)動機溫度、冷卻水溫度。當CANape需要訪問某個變量,就在ASAP2描述文件中根據變量名,找到該變量在控制器中的存儲地址、數據長度等信息,然后進行操作,如圖5。

圖5 ASAP2控制器描述文件
為了方便用戶對ASAP2文件進行維護和修改,CANape集成了一個ASAP2數據庫編輯器,用以生成和修改ASAP2控制器描述文件。所有的信息都能通過對話框的形式進行設置和修改。該數據庫編輯器還能工作在獨立模式下,以生成一個ASAP2格式的控制器描述文件。
當ECU底層程序修改后,一些標定參數和測量數據的內存地址可能發(fā)生變動,CANape雖然仍能進行標定,但修改的已不是原來需要標定的參數,而是程序變動后原先地址下當前存放的某個新的未知數據。為了簡化手工修改地址的繁瑣,防止因為隨意修改某個數據而破壞程序的正常運行,CANape支持通過linker map文件自動更新ASAP2文件里的信息。Map文件是ECU底層程序在編譯時由編譯器生成的一種映射文件,通過Map文件可以自動更新ASAP2文件。
3.2 CANape使用配置
每個需要標定的ECU都要在CANape中進行配置。
CANape共定義了28條命令,用以實現不同的功能,在配置頁面里均有復選框與其對應??刂破鞯呐渲帽仨毰cCCP Driver在ECU底層程序的具體實現相匹配,只有對某個功能的程序接口已經開放,才能在CANape中選擇使用該項功能[2][5]。
3.3 CANape中的參數標定
在CANape中,需要標定的變量稱為標定參數,CANape將標定定義為修改駐扎在ECU內存中的變量的內容。CANape支持多種標定方法。這里標定方法指如何對標定參數所在的內存區(qū)域進行初始化、數據改寫及保存。根據標定參數所在不同地址空間(ROM、FLASH或EEPROM),CANape規(guī)定了不同的標定方法。
當標定參數需要存放在FLASH或ROM中時,在ECU上電初始化后,程序首先將標定參數的初始值復制到RAM中,在CANape中該段用來存放標定參數的RAM稱為Calibration RAM。標定過程中,CANape修改Calibration RAM中的參數值。標定全部結束后,再將該段RAM中的內容復制回FLASH或ROM中。
當標定參數存放在EEPROM中,有兩種標定方法。第一種與上述方法相同,首先將標定參數復制到RAM中,標定結束后再將RAM中的數據覆蓋到EEPROM。此外,也可對EEPROM中的參數直接進行改寫,實現這種方法需要對EEPROM進行頻繁擦寫操作,但不占用額外的RAM空間。
由于汽車電子網絡系統(tǒng)已開始得到廣泛的使用,基于網絡連接的電子控制單元的匹配標定和傳統(tǒng)的匹配標定方法已有了很大的不同,特別是基于CAN總線的匹配標定技術,目前已成為研究和應用的重點。
采用CANape進行基于CCP的匹配標定,實現了標定工具和內容的統(tǒng)一。根據這種方法能夠快速有效地進行汽車電子控制單元的匹配標定,在實際開發(fā)應用中取得了良好的效果。
pid控制器相關文章:pid控制器原理
評論