基于CCP協議的汽車ECU標定系統DAQ模式的實現
一、前言
隨著汽車電子技術的發展,電子控制單元(ECU)的標定已成為汽車電子控制裝置開發的一個重要環節。大多數ECU都需要經過匹配標定的過程,從而確定其運行參數和控制參數。目前國內還沒有成熟的基于CCP的ECU標定系統,已有的一些系統主要是采用Vector提供的freeCCPDriver,或者基于MATLAB的相關工具包,在此基礎上作自己的應用軟件,并沒有獨立的CCP驅動;國外的產品功能強大,但價格昂貴。因此,研究、掌握CCP的核心技術,開發針對不同用戶需求提供不同的定制功能,并能適應PCI、USB等不同主機接口的ECU標定軟件就具有非常重要的意義。
二、CCP協議簡介
(一)CCP協議的通信方式
基于CCP協議的ECU標定采用主-從通信方式,主設備通過CAN總線與多個從設備相連,如圖1所示。其中主設備測量標定系統MCS(Measurement Calibration System),從設備是需要標定的ECU。根據CCP協議,主設備首先與其中一個從設備建立邏輯連接。建立邏輯連接后,主、從機之間所有的數據傳遞均由主機控制,從機執行主機命令后返回包含命令響應值或錯誤代碼等信息的報文。任何一個從機都可以定時地根據由主機通過控制命令所設置的列表來傳遞內部的數據。所以說數據的傳遞是由主機初始化,由從機來執行,并且是由固定的循環采樣頻率或事件觸發的。
圖1CCP通信結構
CCP協議定義了兩種工作模式:一種是Polling(查詢)模式,另一種是DAQ(數據采集)模式。在本文所設計的標定系統中,根據實際需求情況,采用了DAQ模式。
(二)CCP協議的通信數據對象
CCP協議只采用了兩個CAN報文對象,且每個對象根據其數據流向,都有一個唯一的ID標識符進行標識:
1.命令接收對象(主機一從機):簡稱CRO。CRO用于傳遞指令代碼和內部功能碼或主、從機之間交換的存儲區數據。
2.數據傳輸對象(從機一主機):簡稱DTO。DTO指由從設備反饋的報文。
根據報文PID的不同,DTO又可以分為三種形式:
命令返回消息CRM(PID=255):由從設備發送,針對CRO的反饋報文。
事件消息(PID=254):當從設備檢測到內部發生錯誤機制時,由從設備自行向主設備發送,報告其當前的運行狀態,并請求主設備暫停當前工作進程以處理發生的錯誤。
DAQ-DTO(0≤PID≤254):用在DAQ模式中,由從設備組織,定期向主設備發送。
三、基于CCP的ECU標定系統實現
(一)標定系統工作原理
基于CCP的ECU標定系統工作原理如圖2所示,對部分控制參數進行調整后,通過一個USB轉CAN的驅動模塊就可以將數據送到發動機ECU當中,ECU收到控制信號后,通過內部處理又會由驅動模塊返回ECU內部重要的數據到平臺上顯示,標定軟件與發動機ECU的通信符合CCP標定協議。
圖2標定系統工作原理圖
CCP通信部分調用CCPDriver,為標定軟件實現與ECU的通信,包括將用戶指定的標定參數下載到ECU、接收ECU的測量數據供數據顯示子窗口使用。
(二)標定系統的數據采集機制
評論