本發(fā)明涉及ECU行車記錄采集領(lǐng)域,尤其涉及一種基于CCP協(xié)議的ECU行車記錄采集裝置及方法。
背景技術(shù):
隨著國四、國五排放法規(guī)的實(shí)施,越來越多的節(jié)能減排技術(shù)被應(yīng)用于柴油車上,相應(yīng)地帶來傳感器、執(zhí)行器的增加,從而使控制參數(shù)及標(biāo)定工作量增加。目前在整車標(biāo)定過程中,至少需要2名人員即駕駛員和標(biāo)定工程師,工程師主要借助ETAS工具與ECU進(jìn)行通訊,利用INCA監(jiān)測發(fā)動(dòng)機(jī)及整車參數(shù)并實(shí)時(shí)標(biāo)定。但是,某些情況下在整車路試中,僅僅需要獲取發(fā)動(dòng)機(jī)和整車運(yùn)行參數(shù),而無需標(biāo)定。基于CAN的汽車網(wǎng)絡(luò)總線被廣泛用于發(fā)動(dòng)機(jī)管理系統(tǒng)、變速箱控制器、車身電子通信以及故障診斷等方面,而CCP協(xié)議是基于CAN總線的ECU標(biāo)定協(xié)議規(guī)范,目前國內(nèi)大多數(shù)采用的BOSCH ECU均采用了CCP協(xié)議。在整車標(biāo)定過程中,工程師借助ETAS工具和INCA軟件來監(jiān)測并實(shí)時(shí)標(biāo)定相關(guān)參數(shù)。如果整車道路測試中,缺少工程師或者相關(guān)標(biāo)定工具則無法進(jìn)行整車相關(guān)參數(shù)的獲??;即使具有工程師或標(biāo)定工具,用INCA獲取整車相關(guān)參數(shù)的方案增加了試驗(yàn)人員和設(shè)施成本。
技術(shù)實(shí)現(xiàn)要素:
本發(fā)明的目的在于通過一種基于CCP協(xié)議的ECU行車記錄采集裝置及方法,來解決以上背景技術(shù)部分提到的問題。
為達(dá)此目的,本發(fā)明采用以下技術(shù)方案:
一種基于CCP協(xié)議的ECU行車記錄采集裝置,其包括單片機(jī)模塊、電源模塊、CAN模塊、SD卡模塊以及操作按鍵組;所述CAN模塊的一端連接待采集ECU,另一端連接單片機(jī)模塊;所述電源模塊、SD卡模塊以及操作按鍵組與單片機(jī)模塊電性連接。
特別地,所述單片機(jī)模塊選用XS128單片機(jī)。
特別地,所述電源模塊采用型號為LM2576-CT5.0、LM2940-CT5.0的任一穩(wěn)壓芯片給單片機(jī)模塊5V供電,采用AMS1117-3.3芯片給SD卡模塊供電。
特別地,所述CAN模塊采用TJA1050收發(fā)器芯片驅(qū)動(dòng)單片機(jī)模塊與待采集ECU完成CAN通信。
本發(fā)明還公開了一種基于CCP協(xié)議的ECU行車記錄采集方法,其包括如下步驟:
S101、開關(guān)按鈕是否按下,若按下則執(zhí)行步驟S102,否則結(jié)束;
S102、對總線時(shí)鐘、I/O模塊、CAN模塊、SPI模塊及文件系統(tǒng)進(jìn)行初始化;
S103、判斷ECU是否重新上電,若ECU上電,進(jìn)行DAQ設(shè)置,開始創(chuàng)建txt格式的文件;
S104、向SD卡存儲變量;
S105、檢測ECU是否斷電,若未斷電,則返回執(zhí)行步驟S104,若已斷電,則關(guān)閉文件。
特別地,所述步驟S103中進(jìn)行DAQ設(shè)置,具體包括:向ECU發(fā)送序列CRO命令進(jìn)行初始化配置,根據(jù)ECU型號及其對應(yīng)的A2L文件,找到對應(yīng)的ECU的站地址、ID及各個(gè)變量存儲地址,進(jìn)行DAQ模式配置。
特別地,所述CRO命令進(jìn)行初始化配置的具體步驟如下:一、CONNECT:主機(jī)與ECU建立邏輯連接;二、EXCHANGE_ID:交換ID,獲取ECU的CAL、DAQ、PGM是否可用以及是否設(shè)置了密鑰;三、SET_S_STATUS:設(shè)置DAQ、CAL等是否初始化完成;四、GET_DAQ_SIZE:獲取某DAQ列表(#0、#1、#2…)的ODT列表數(shù)和該DAQ列表的第一個(gè)PID序號;五、SET_DAQ_PTR:對DAQ列表下的ODT進(jìn)行配置,以便后續(xù)將數(shù)據(jù)存放至ODT;六、WRITE_DAQ:發(fā)送要上傳的數(shù)據(jù)的信息,該信息包括字節(jié)大小、地址及偏移量;七、SET_S_STATUS:設(shè)置DAQ、CAL初始化完成;八、START_STOP:準(zhǔn)備DAQ列表的上傳;九、START_STOP_ALL:開始同步數(shù)據(jù)傳輸。
特別地,所述步驟S104具體包括:ECU內(nèi)部集成了CAN驅(qū)動(dòng)與CCP驅(qū)動(dòng)程序,接收到單片機(jī)的CRO指令后,將按配置好的10ms或100ms周期自動(dòng)發(fā)送給單片機(jī);單片機(jī)接收到中斷,判斷所屬變量并按照自定義數(shù)據(jù)格式存入SD卡。
特別地,所述步驟S105還包括:一旦ECU重新上電將重新創(chuàng)建新的文件,保證不將原數(shù)據(jù)給覆蓋。
本發(fā)明提出的基于CCP協(xié)議的ECU行車記錄采集裝置及方法適用于任何采用CCP協(xié)議的ECU,且采集的參數(shù)種類和采集周期具有很大的配置自由度;8G的SD卡模塊所能支持連續(xù)采集的時(shí)間長達(dá)多個(gè)小時(shí);支持掉電又上電后數(shù)據(jù)的重新存儲不覆蓋,滿足工程師所需整車路試過程中獲取需求參數(shù)的要求。本發(fā)明作為整車標(biāo)定過程中的輔助工具,直接與ECU建立通信,能充分滿足工程師在只需獲取某些重要參數(shù)無需標(biāo)定場合的需求,操作便捷,節(jié)省人力和設(shè)備成本。本發(fā)明體積小,便于攜帶與操作,行車過程中一名駕駛員就能夠完成路試工作,所采集的發(fā)動(dòng)機(jī)及整車數(shù)據(jù)最后通過SD卡實(shí)時(shí)存儲下來。
附圖說明
圖1為本發(fā)明實(shí)施例提供的基于CCP協(xié)議的ECU行車記錄采集裝置結(jié)構(gòu)圖;
圖2A、2B為本發(fā)明實(shí)施例提供的電源模塊電路結(jié)構(gòu)圖;
圖3為本發(fā)明實(shí)施例提供的基于CCP協(xié)議的ECU行車記錄采集方法流程圖。
具體實(shí)施方式
下面結(jié)合附圖和實(shí)施例對本發(fā)明作進(jìn)一步說明??梢岳斫獾氖?,此處所描述的具體實(shí)施例僅僅用于解釋本發(fā)明,而非對本發(fā)明的限定。另外還需要說明的是,為了便于描述,附圖中僅示出了與本發(fā)明相關(guān)的部分而非全部內(nèi)容,除非另有定義,本文所使用的所有技術(shù)和科學(xué)術(shù)語與屬于本發(fā)明的技術(shù)領(lǐng)域的技術(shù)人員通常理解的含義相同。本文中所使用的術(shù)語只是為了描述具體的實(shí)施例,不是旨在于限制本發(fā)明。
請參照圖1所示,圖1為本發(fā)明實(shí)施例提供的基于CCP協(xié)議的ECU行車記錄采集裝置結(jié)構(gòu)圖。
本實(shí)施例中基于CCP協(xié)議的ECU行車記錄采集裝置100具體包括單片機(jī)模塊101、電源模塊102、CAN模塊103、SD卡模塊104以及操作按鍵組105;所述CAN模塊103的一端連接待采集ECU106,另一端連接單片機(jī)模塊101;所述電源模塊102、SD卡模塊104以及操作按鍵組105與單片機(jī)模塊101電性連接。
在本實(shí)施例中所述單片機(jī)模塊101選用XS128單片機(jī)。如圖2A、2B所示,所述電源模塊102采用型號為LM2576-CT5.0、LM2940-CT5.0的任一穩(wěn)壓芯片給單片機(jī)模塊5V供電,采用AMS1117-3.3芯片給SD卡模塊104供電。所述CAN模塊103采用TJA1050收發(fā)器芯片驅(qū)動(dòng)單片機(jī)模塊101與待采集ECU106完成CAN通信。
如圖3所示,圖3為本發(fā)明實(shí)施例提供的基于CCP協(xié)議的ECU行車記錄采集方法流程圖。
基于上述采集裝置,本實(shí)施例還公開了一種基于CCP協(xié)議的ECU行車記錄采集方法,該方法具體包括如下步驟:
S101、開關(guān)按鈕是否按下,若按下則執(zhí)行步驟S102,否則結(jié)束。
S102、對總線時(shí)鐘、I/O模塊、CAN模塊、SPI模塊及文件系統(tǒng)進(jìn)行初始化。
S103、判斷ECU是否重新上電,若ECU上電,進(jìn)行DAQ設(shè)置,開始創(chuàng)建txt格式的文件。其中,進(jìn)行DAQ設(shè)置具體包括:向ECU發(fā)送序列CRO命令進(jìn)行初始化配置,根據(jù)ECU型號及其對應(yīng)的A2L文件,找到對應(yīng)的ECU的站地址、ID及各個(gè)變量存儲地址,進(jìn)行DAQ模式配置。
S104、向SD卡存儲變量。ECU內(nèi)部集成了CAN驅(qū)動(dòng)與CCP驅(qū)動(dòng)程序,接收到單片機(jī)的CRO指令后,將按配置好的10ms或100ms周期自動(dòng)發(fā)送給單片機(jī);單片機(jī)接收到中斷,判斷所屬變量并按照自定義數(shù)據(jù)格式存入SD卡。
S105、檢測ECU是否斷電,若未斷電,則返回執(zhí)行步驟S104,若已斷電,則關(guān)閉文件。需要說明的是,一旦ECU重新上電將重新創(chuàng)建新的文件,保證不將原數(shù)據(jù)給覆蓋。
下面針對CRO命令進(jìn)行初始化配置重點(diǎn)說明如下:
CCP協(xié)議中MCD與ECU的通信方式可分為Polling模式和DAQ模式,因DAQ模式中從設(shè)備脫離主機(jī)控制,按一定通信周期自主向主設(shè)備上傳數(shù)據(jù),上傳效率高。故本發(fā)明采用DAQ模式實(shí)現(xiàn)ECU內(nèi)部數(shù)據(jù)的自動(dòng)上傳。為實(shí)現(xiàn)DAQ模式,向ECU發(fā)送序列CRO命令進(jìn)行初始化配置。根據(jù)ECU型號及其對應(yīng)的A2L文件,找到對應(yīng)的ECU的站地址、ID及各個(gè)變量存儲地址,進(jìn)行DAQ模式配置。
所述CRO命令進(jìn)行初始化配置的具體步驟如下:一、CONNECT:主機(jī)與ECU建立邏輯連接;二、EXCHANGE_ID:交換ID,獲取ECU的CAL(標(biāo)定)、DAQ(DAQ通信模式)、PGM(內(nèi)存燒寫)是否可用以及是否設(shè)置了密鑰;三、SET_S_STATUS:設(shè)置DAQ、CAL等是否初始化完成;四、GET_DAQ_SIZE:獲取某DAQ列表(#0、#1、#2…)的ODT列表數(shù)和該DAQ列表的第一個(gè)PID序號;五、SET_DAQ_PTR:對DAQ列表下的ODT進(jìn)行配置,以便后續(xù)將數(shù)據(jù)存放至ODT;六、WRITE_DAQ:發(fā)送要上傳的數(shù)據(jù)的信息,該信息包括字節(jié)大小、地址及偏移量;七、SET_S_STATUS:設(shè)置DAQ、CAL初始化完成;八、START_STOP:準(zhǔn)備DAQ列表的上傳;九、START_STOP_ALL:開始同步數(shù)據(jù)傳輸。
本發(fā)明的技術(shù)方案適用于任何采用CCP協(xié)議的ECU,且采集的參數(shù)種類和采集周期具有很大的配置自由度;8G的SD卡模塊所能支持連續(xù)采集的時(shí)間長達(dá)多個(gè)小時(shí);支持掉電又上電后數(shù)據(jù)的重新存儲不覆蓋,滿足工程師所需整車路試過程中獲取需求參數(shù)的要求。本發(fā)明作為整車標(biāo)定過程中的輔助工具,直接與ECU建立通信,能充分滿足工程師在只需獲取某些重要參數(shù)無需標(biāo)定場合的需求,操作便捷,節(jié)省人力和設(shè)備成本。本發(fā)明體積小,便于攜帶與操作,行車過程中一名駕駛員就能夠完成路試工作,所采集的發(fā)動(dòng)機(jī)及整車數(shù)據(jù)最后通過SD卡實(shí)時(shí)存儲下來。
注意,上述僅為本發(fā)明的較佳實(shí)施例及所運(yùn)用技術(shù)原理。本領(lǐng)域技術(shù)人員會理解,本發(fā)明不限于這里所述的特定實(shí)施例,對本領(lǐng)域技術(shù)人員來說能夠進(jìn)行各種明顯的變化、重新調(diào)整和替代而不會脫離本發(fā)明的保護(hù)范圍。因此,雖然通過以上實(shí)施例對本發(fā)明進(jìn)行了較為詳細(xì)的說明,但是本發(fā)明不僅僅限于以上實(shí)施例,在不脫離本發(fā)明構(gòu)思的情況下,還可以包括更多其他等效實(shí)施例,而本發(fā)明的范圍由所附的權(quán)利要求范圍決定。
以上結(jié)合具體實(shí)施例描述了本發(fā)明的技術(shù)原理。這些描述只是為了解釋本發(fā)明的原理,而不能以任何方式解釋為對本發(fā)明保護(hù)范圍的限制?;诖颂幍慕忉?,本領(lǐng)域的技術(shù)人員不需要付出創(chuàng)造性的勞動(dòng)即可聯(lián)想到本發(fā)明的其它具體實(shí)施方式,這些方式都將落入本發(fā)明的保護(hù)范圍之內(nèi)。