模塊,用于通過(guò)數(shù)據(jù)采集卡接收電子控制器反饋的第一測(cè)量標(biāo)定變量的測(cè)量標(biāo)定數(shù)據(jù)。
[0084]輸出模塊,用于輸出測(cè)量標(biāo)定數(shù)據(jù)。
[0085]其中,數(shù)據(jù)采集卡通過(guò)控制器局域網(wǎng)CAN總線進(jìn)行測(cè)量標(biāo)定請(qǐng)求和測(cè)量標(biāo)定數(shù)據(jù)的傳輸,數(shù)據(jù)采集卡為控制器局域網(wǎng)PCAN。
[0086]采用本發(fā)明實(shí)施例,USB數(shù)據(jù)采集卡為PCAN,用于連接測(cè)量標(biāo)定子系統(tǒng)和電子控制器,實(shí)現(xiàn)CAN總線數(shù)據(jù)的傳輸,由于PCAN價(jià)格便宜,并且可以提供二次開發(fā)的API接口,其性能完全滿足測(cè)量標(biāo)定系統(tǒng)的數(shù)據(jù)傳輸,并且價(jià)格低廉,解決了現(xiàn)有技術(shù)中測(cè)量標(biāo)定系統(tǒng)的成本高的問(wèn)題,實(shí)現(xiàn)了低成本實(shí)現(xiàn)對(duì)汽車的測(cè)量標(biāo)定的效果。
[0087]在本發(fā)明的上述實(shí)施例中,輸出模塊還用于將測(cè)量標(biāo)定數(shù)據(jù)生成顯示器可識(shí)別的文件(例如:MDF文件),并輸出該可識(shí)別的文件。
[0088]PCAN:又叫做PCAN-USB,也叫作PCAN,是一個(gè)CAN轉(zhuǎn)USB接口,可以將CAN網(wǎng)絡(luò)上的報(bào)文通過(guò)USB接口傳輸?shù)絇C (即個(gè)人電腦)上,通過(guò)相關(guān)的軟件來(lái)產(chǎn)看CAN報(bào)文。
[0089]上述實(shí)施例中的MDF (Measurement Data Format)文件為數(shù)據(jù)測(cè)量文件,是用于汽車行業(yè)記錄數(shù)據(jù)、數(shù)據(jù)交換以及數(shù)據(jù)分析的數(shù)據(jù)格式,是汽車領(lǐng)域測(cè)量數(shù)據(jù)的通用標(biāo)準(zhǔn)。工程師利用MDF格式文件,可以方便的對(duì)系統(tǒng)在一段時(shí)間內(nèi)的運(yùn)行狀態(tài),參數(shù)的值進(jìn)行詳細(xì)的分析,從而準(zhǔn)確找出問(wèn)題所在。
[0090]根據(jù)本發(fā)明的上述實(shí)施例,測(cè)量標(biāo)定裝置可以包括:解析模塊,用于在生成測(cè)量標(biāo)定請(qǐng)求之前,對(duì)指定的A2L文件進(jìn)行文件解析,以獲取A2L文件中各個(gè)字段的字段信息;保存模塊,用于將字段信息保存入對(duì)應(yīng)的預(yù)設(shè)結(jié)構(gòu)體中;提取模塊,用于從多個(gè)預(yù)設(shè)結(jié)構(gòu)體中提取請(qǐng)求測(cè)量標(biāo)定的參數(shù)得到第一測(cè)量標(biāo)定變量和第一測(cè)量標(biāo)定變量的第一屬性信息,其中,第一屬性信息包括第一測(cè)量標(biāo)定變量在電子控制器中的存儲(chǔ)地址和數(shù)據(jù)長(zhǎng)度。
[0091]其中,A2L文件是標(biāo)定數(shù)據(jù)庫(kù)文件,它可以包括標(biāo)定變量的類型、地址、物理轉(zhuǎn)化方式以及單位等。
[0092]具體地,解析模塊可以包括:解析子模塊,用于按照ASAP2標(biāo)準(zhǔn)按照關(guān)鍵字和格式逐行匹配得到字段信息;將字段信息保存入動(dòng)態(tài)數(shù)組類型的全局變量中,其中,字段信息包括電子控制器的第二測(cè)量標(biāo)定變量和第二測(cè)量標(biāo)定變量的第二屬性信息;測(cè)量標(biāo)定裝置還包括:變量顯示模塊,用于在從多個(gè)預(yù)設(shè)結(jié)構(gòu)體中提取請(qǐng)求測(cè)量標(biāo)定的參數(shù)得到第一測(cè)量標(biāo)定變量和第一測(cè)量標(biāo)定變量的第一屬性信息之后,使用變量列表顯示第二測(cè)量標(biāo)定變量的變量名稱;以及變量選擇模塊,用于通過(guò)選定變量列表中的變量名稱確定第一測(cè)量標(biāo)定變量;其中,A2L文件為標(biāo)定數(shù)據(jù)庫(kù)文件;第二屬性信息包括第二測(cè)量標(biāo)定變量在電子控制器中的存儲(chǔ)地址和數(shù)據(jù)長(zhǎng)度。
[0093]在本發(fā)明實(shí)施例中,客戶端(如用戶)可以在測(cè)量標(biāo)定裝置的界面中指定A2L文件,然后測(cè)量標(biāo)定子系統(tǒng)中的應(yīng)用程序會(huì)打開這個(gè)文件并該A2L文件進(jìn)行解析,解析出A2L文件中各字段的字段信息,供測(cè)量標(biāo)定時(shí)使用??蛇x地,可以為A2L文件中每一個(gè)需要解析的字段定義一個(gè)預(yù)設(shè)結(jié)構(gòu)體,解析每個(gè)字段時(shí)得到的字段信息存入相應(yīng)的預(yù)設(shè)結(jié)構(gòu)體中。
[0094]具體地,解析子模塊可以按照ASAP2標(biāo)準(zhǔn)按照關(guān)鍵字和格式逐行匹配,根據(jù)ASAP2標(biāo)準(zhǔn)的規(guī)定,A2L文件中的各字段都以/begin和/end標(biāo)記開始和結(jié)束。因此按照關(guān)鍵字進(jìn)行逐行匹配,每個(gè)字段內(nèi)的信息也按規(guī)定的順序進(jìn)行匹配,保存在事先定義好的數(shù)據(jù)結(jié)構(gòu)(即上述實(shí)施例中的預(yù)設(shè)結(jié)構(gòu)體)中。
[0095]進(jìn)一步地,本發(fā)明實(shí)施例使用ArrayList (即動(dòng)態(tài)數(shù)組)類型的全局變量保存所有A2L文件解析后的字段信息。
[0096]測(cè)量標(biāo)定裝置對(duì)電子控制器參數(shù)標(biāo)定和數(shù)據(jù)測(cè)量都是基于上述的全局變量,該全局變量中記錄了電子控制器中各個(gè)參數(shù)(即各個(gè)變量,包括測(cè)量變量和標(biāo)定變量)的詳細(xì)信息,如標(biāo)定變量和測(cè)量變量在ECU中的存儲(chǔ)地址、存儲(chǔ)結(jié)構(gòu)、數(shù)據(jù)類型和轉(zhuǎn)換公式等。當(dāng)測(cè)量標(biāo)定裝置需要訪問(wèn)某個(gè)變量時(shí),通過(guò)變量的名稱在Arraylist中搜索,找到該變量在E⑶中的存儲(chǔ)地址、數(shù)據(jù)長(zhǎng)度等信息。
[0097]如圖5所示的實(shí)施例,該裝置還可以包括:A2L解析模塊80 (即上述實(shí)施例中的解析模塊),變量選擇模塊90,控制模塊100,CCP通訊模塊110以及MDF文件生成模塊120,該裝置還可以包括IEEE754雙精度浮點(diǎn)數(shù)轉(zhuǎn)換模塊(圖中未示出)。
[0098]通過(guò)本發(fā)明上述實(shí)施例,測(cè)量標(biāo)定子系統(tǒng)中的測(cè)量標(biāo)定軟件可以使用VisualStud1 2005開發(fā)平臺(tái)使用VB.Net和C語(yǔ)言進(jìn)行開發(fā),通過(guò)該測(cè)量標(biāo)定軟件能夠?qū)崿F(xiàn)對(duì)汽車電子控制器進(jìn)行實(shí)時(shí)測(cè)量和標(biāo)定,并可以保存測(cè)試結(jié)果。
[0099]上述實(shí)施例中的CCP協(xié)議:CCP (CAN Calibrat1n Protocol)是一種基于CAN總線的ECU (Electronic Control Unit)標(biāo)定協(xié)議,采用CCP協(xié)議可以快速而有效地實(shí)現(xiàn)對(duì)汽車電子控制器的標(biāo)定。
[0100]具體地,可以通過(guò)Treeview(即樹視圖)控件顯示第二測(cè)量標(biāo)定變量的變量名稱。其中,變量選擇模塊90可以使用變量列表顯示變量名稱,變量列表可以包括一個(gè)索引表,該索引表可以包括:根節(jié)點(diǎn)索引和子節(jié)點(diǎn)索引,其中,根節(jié)點(diǎn)中包括全部變量,子節(jié)點(diǎn)分為標(biāo)定變量和測(cè)量變量。
[0101]客戶端可以通過(guò)選擇相應(yīng)的節(jié)點(diǎn)在變量中可以顯示不同變量的列表,比如選擇測(cè)量變量節(jié)點(diǎn)時(shí),變量列表中就只顯示測(cè)量變量。其中,變量選擇模塊在初次載入第二測(cè)量標(biāo)定變量的信息時(shí),索引表默認(rèn)選擇根節(jié)點(diǎn),把A2L文件解析單元中的全局變量中的變量名稱加入到變量列表中并顯示出來(lái)。
[0102]可選地,變量選擇模塊還可以包括:檢索模塊,用于通過(guò)接收到的檢索關(guān)鍵字在變量列表中進(jìn)行檢索,得到檢索結(jié)果,并顯示該檢索結(jié)果。
[0103]由于A2L文件中的測(cè)量變量和標(biāo)定變量往往數(shù)量龐大,在變量列表中不容易查找,還可以通過(guò)檢索模塊(該模塊可以包括一個(gè)文本框),通過(guò)檢索模塊提供的關(guān)鍵字檢索功能,用戶可以在文本框中輸入需要測(cè)量或標(biāo)定的變量名稱,變量列表中會(huì)自動(dòng)檢索到以輸入的關(guān)鍵字開頭的變量,方便用戶快速的查找該變量。
[0104]根據(jù)本發(fā)明的上述實(shí)施例,第一生成模塊可以包括:第一接收子模塊,用于接收客戶端選定的第一測(cè)量標(biāo)定變量;封裝模塊,用于在生成啟動(dòng)信號(hào)之后,將第一測(cè)量標(biāo)定變量封裝成測(cè)量標(biāo)定請(qǐng)求。
[0105]上述實(shí)施例中的封裝模塊可以設(shè)置在CCP通訊模塊中。該CCP通信模塊,把CCP協(xié)議的指令進(jìn)行了封裝,在發(fā)送CCP指令的時(shí)候只需調(diào)用相應(yīng)指令的函數(shù)并傳遞必要的參數(shù)即可。
[0106]需要進(jìn)一步說(shuō)明的是,接收模塊可以包括:第二接收子模塊,用于通過(guò)數(shù)據(jù)采集卡周期性地接收測(cè)量標(biāo)定數(shù)據(jù);解包模塊,用于周期性地將測(cè)量標(biāo)定數(shù)據(jù)進(jìn)行解包處理得到解包數(shù)據(jù);顯示子模塊,用于周期性地顯示解包數(shù)據(jù)。
[0107]上述實(shí)施例中的接收模塊可以設(shè)置在控制模塊100中。
[0108]在確定第一測(cè)量標(biāo)定變量之后,將該變量的變量信息作為接口數(shù)據(jù)傳遞到控制模塊??刂颇K中有開始,暫停,停止和MDF數(shù)據(jù)保存四個(gè)按鈕,控制模塊中還設(shè)置有兩個(gè)timer (計(jì)時(shí)器,即第一計(jì)時(shí)器和第二計(jì)時(shí)器),第一計(jì)時(shí)器以1ms為周期采集DAQ數(shù)據(jù)(即數(shù)據(jù)采集),第二計(jì)時(shí)器以10ms為周期將采集到的測(cè)量標(biāo)定數(shù)據(jù)顯示在畫面中。開始,暫停和停止按鈕用于控制數(shù)據(jù)測(cè)量,點(diǎn)擊開始即向電子控制器發(fā)送DAQ指令(即上述實(shí)施例中的測(cè)量標(biāo)定請(qǐng)求)啟動(dòng)數(shù)據(jù)測(cè)量,并同時(shí)使能兩個(gè)timer,按照1ms周期對(duì)收到的DAQ數(shù)據(jù)包(即上述實(shí)施例中的測(cè)量標(biāo)定數(shù)據(jù))進(jìn)行解包處理,解包時(shí)根據(jù)ODT的分配情況,按每個(gè)變量的字節(jié)數(shù)解包,然后每10ms把這些解包后的數(shù)據(jù)顯示在畫面中。點(diǎn)擊停止按鈕時(shí),上位機(jī)發(fā)送START_ST0P/START_ST0P_ALL指令(停止指令)停止數(shù)據(jù)上傳,并同時(shí)停止兩個(gè) timer。
[0109]從以上的描述中,可以看出,本發(fā)明實(shí)現(xiàn)了如下技術(shù)效果:
[0110]采用本發(fā)明實(shí)施例,USB數(shù)據(jù)采集卡為PCAN,用于連接測(cè)量標(biāo)定子系統(tǒng)和電子控制器,實(shí)現(xiàn)CAN總線數(shù)據(jù)的傳輸,由于PCAN價(jià)格便宜,并且可以提供二次開發(fā)的API接口,其性能完全滿足測(cè)量標(biāo)定系統(tǒng)的數(shù)據(jù)傳輸,并且價(jià)格低廉,解決了現(xiàn)有技術(shù)中測(cè)量標(biāo)定系統(tǒng)的成本高的問(wèn)題,實(shí)現(xiàn)了低成本實(shí)現(xiàn)對(duì)汽車的測(cè)量標(biāo)定的效果。
[0111]顯然,本領(lǐng)域的技