《電子技術(shù)應(yīng)用》
您所在的位置:首頁(yè) > 嵌入式技術(shù) > 設(shè)計(jì)應(yīng)用 > 柴油機(jī)SCR系統(tǒng)中OBD模塊的開(kāi)發(fā)
柴油機(jī)SCR系統(tǒng)中OBD模塊的開(kāi)發(fā)
2014年電子技術(shù)應(yīng)用第9期
劉 軍1,熊明路1,,李 敏2
1.江蘇大學(xué) 汽車(chē)與交通工程學(xué)院,,江蘇 鎮(zhèn)江212013,; 2.濰柴動(dòng)力股份有限公司,,山東 濰坊261000
摘要: 依據(jù)OBD技術(shù)標(biāo)準(zhǔn)的要求,,制定了OBD診斷策略,,并對(duì)OBD進(jìn)行了整體設(shè)計(jì),然后通過(guò)飛思卡爾MC9S12XET256單片機(jī)對(duì)OBD模塊進(jìn)行了程序設(shè)計(jì),,最后建立了CANoe和MATLAB/Simulink的仿真模型,,對(duì)開(kāi)發(fā)的OBD模塊進(jìn)行了仿真驗(yàn)證,仿真結(jié)果驗(yàn)證了制定的OBD診斷策略及程序設(shè)計(jì)的正確性,,并根據(jù)仿真結(jié)果完善了程序設(shè)計(jì),。
中圖分類(lèi)號(hào): TK421.5
文獻(xiàn)標(biāo)識(shí)碼: A
文章編號(hào): 0258-7998(2014)09-0014-03
Development of OBD module of SCR system of diesel engine
Liu Jun1,Xiong Minglu1,,Li Min2
1.School of Automotive and Traffic Engineering,,Jiangsu University, Zhenjiang 212013,China,;2.Weichai power co.,Ltd.,,Weifang 261000,China
Abstract: Referencing to the standard requirements of OBD technology,,the OBD diagnosis strategy is made,,and the programming for OBD module is given based on freescale MC9S12XET256. Finally, the simulation models of CANoe and MATLAB/Simulink are established, the emulation is carried on the OBD module. The result verifies the correctness of the diagnosis strategy and the programming. And the programming is improved based on simulation results.
Key words : SCR;OBD,;diagnosis strategy,;freescale MCU;co-simulation

  目前,,針對(duì)中重型車(chē)用柴油機(jī)尾氣的排放,,主要有兩種技術(shù)路線,一是EGR(廢氣再循環(huán))+DPF(柴油顆粒捕捉)或DOC(氧化催化轉(zhuǎn)化),;二是優(yōu)化燃燒+SCR(選擇催化還原),。SCR技術(shù)具有對(duì)硫不敏感,、油耗低,、技術(shù)可持續(xù)性好等優(yōu)點(diǎn)[1],我國(guó)普遍采用的是SCR技術(shù),。為了及時(shí)發(fā)現(xiàn)SCR系統(tǒng)存在的故障并提醒駕駛員,,根據(jù)國(guó)家法規(guī)HJ437中規(guī)定,滿(mǎn)足國(guó)IV階段排放要求的車(chē)輛必須配備OBD(車(chē)載診斷)系統(tǒng),,所以對(duì)OBD系統(tǒng)的研究具有實(shí)際應(yīng)用價(jià)值,。

1 OBD診斷策略制定

    汽車(chē)正常運(yùn)行時(shí),ECU的輸入,、輸出信號(hào)的電壓值都有一定的變化范圍,。當(dāng)某一信號(hào)超出了這一范圍,并且這一現(xiàn)象在一段時(shí)間內(nèi)不會(huì)消失時(shí),,ECU便判斷為這一部分出現(xiàn)故障[2],。本文設(shè)計(jì)的OBD模塊主要監(jiān)測(cè)對(duì)象有傳感器,、執(zhí)行器、CAN通訊及NOX排放監(jiān)測(cè)等,。

1.1 傳感器的診斷策略

    傳感器包括尿素箱溫度及液位傳感器,、添藍(lán)計(jì)量泵蓄壓腔和混合腔壓力傳感器、催化器前后溫度傳感器,、NOX傳感器,。

    當(dāng)尿素箱內(nèi)的溫度低于-11 ℃,需對(duì)尿素進(jìn)行加熱化冰處理,。在OBD診斷過(guò)程中,,若循環(huán)監(jiān)測(cè)傳感器輸出的電壓信號(hào)超出標(biāo)定的上限值,報(bào)告溫度傳感器對(duì)電源短路故障,;反之,,報(bào)告對(duì)地短路故障。若兩次輸出的電壓信號(hào)差值大于標(biāo)定值時(shí),,認(rèn)為溫度傳感器存在信號(hào)不可信故障,。

    液位傳感器與溫度傳感器的診斷策略相似,不同之處在于若液位傳感器兩次輸出的電壓信號(hào)相等時(shí),,報(bào)告液位傳感器存在停滯故障,。同時(shí)液位傳感器在OBD診斷過(guò)程中還要監(jiān)測(cè)尿素存量,當(dāng)液位低于10%時(shí),,點(diǎn)亮MIL(故障指示燈),,發(fā)出尿素存量不足警告。

    壓力傳感器用于監(jiān)測(cè)蓄壓腔和混合腔內(nèi)的壓力變化,。催化器前后溫度傳感器用來(lái)測(cè)定催化器前后兩端溫度,,確保催化器的反應(yīng)始終保持在合適的溫度范圍內(nèi)。其診斷策略跟尿素溫度傳感器類(lèi)似,,不再贅述,。

    NOX傳感器同樣安裝在催化器前后,主要用來(lái)測(cè)定排放的NOX濃度是否超過(guò)排放限值,,也可以作為催化器是否老化,,是否需要拆除的依據(jù)。本文所使用的NOX傳感器帶有自診斷的功能, NOX傳感器的故障都是通過(guò)CAN總線傳來(lái)的報(bào)文信息來(lái)辨別的,。OBD系統(tǒng)對(duì)NOX傳感器的信號(hào)不合理故障的檢測(cè)貫穿于整個(gè)加熱過(guò)程中,。在NOX傳感器自檢并確定無(wú)故障后,DCU便發(fā)送對(duì)NOX傳感器加熱的指令。在加熱的過(guò)程中,,若沒(méi)有收到溫度信號(hào)但是已經(jīng)超過(guò)了加熱的最大時(shí)間限值,,則報(bào)告NOX傳感器加熱信號(hào)不合理故障。

1.2 執(zhí)行器的診斷策略

    執(zhí)行器包括尿素噴射閥和冷卻液加熱控制閥,。

    SCR系統(tǒng)在進(jìn)行初始化后,,計(jì)量泵進(jìn)行建壓,,若一段時(shí)間后檢測(cè)的壓力仍達(dá)不到標(biāo)定值,需重復(fù)建壓,,當(dāng)重建次數(shù)超過(guò)最大標(biāo)定值,,壓力仍達(dá)不到,則報(bào)告尿素噴射閥有常開(kāi)故障,。若壓力正常建立后,,則噴射閥的占空比為標(biāo)定值,若一段時(shí)間后監(jiān)測(cè)到壓力值高于標(biāo)定值,,則報(bào)告噴射閥有常閉故障,。

    化冰處理加熱至7℃停止,加熱過(guò)程中,,若在標(biāo)定時(shí)間內(nèi)檢測(cè)溫度仍低于下限溫度,,則報(bào)告冷卻水加熱控制閥有常開(kāi)故障;若加熱一段時(shí)間后溫度持續(xù)高于上限溫度,,則報(bào)告冷卻水加熱控制閥有常閉故障,。

1.3 CAN通訊診斷及NOX排放監(jiān)測(cè)診斷策略

    OBD模塊實(shí)時(shí)檢測(cè)CAN總線通訊故障,若發(fā)生故障,,則由CAN總線的硬件報(bào)出,。OBD模塊還會(huì)周期性地檢測(cè)EEC1(發(fā)動(dòng)機(jī)電控信息1)和AMB(環(huán)境狀態(tài))等相關(guān)的CAN總線信息,一旦檢測(cè)到錯(cuò)誤,,系統(tǒng)就會(huì)自動(dòng)報(bào)錯(cuò),。

    OBD法規(guī)要求,與排放控制有關(guān)的發(fā)動(dòng)機(jī)系統(tǒng)異常運(yùn)轉(zhuǎn)應(yīng)通過(guò)對(duì)NOX排放水平進(jìn)行監(jiān)測(cè)來(lái)確定,。根據(jù)要求,,NOX排放控制的限值分別為5.0 g/kwh和7.0 g/kwh。當(dāng)NOX排放量超過(guò)5.0 g/kwh時(shí),,激活MIL,;當(dāng)NOX排放量超過(guò)7.0 g/kwh時(shí),扭矩限制器起作用,。

2 OBD模塊的整體設(shè)計(jì)

    本文開(kāi)發(fā)的OBD模塊是基于飛思卡爾MC9S12XET256單片機(jī)開(kāi)發(fā)平臺(tái)[3],,編程軟件采用的是Code Warrior IDE軟件,。所設(shè)計(jì)的OBD模塊是嵌入到SCR電控單元(DCU)中的,,其與發(fā)動(dòng)機(jī)控制單元(ECU)上的OBD模塊分別控制各自的故障診斷。DCU將診斷的結(jié)果通過(guò)CAN總線廣播到網(wǎng)絡(luò)里,,ECU根據(jù)接收到的故障情況和發(fā)動(dòng)機(jī)實(shí)際運(yùn)行狀況綜合判斷,,來(lái)控制MIL或者扭矩限制器的激活與否[4]。OBD總體方案設(shè)計(jì)如圖1所示,。

qrs4-t1.gif

    OBD模塊在SCR系統(tǒng)中完成的主要功能有信息采集,、信息轉(zhuǎn)換,、故障診斷、故障碼存儲(chǔ)及故障碼傳送,。OBD模塊的基本框架如圖2所示,。

qrs4-t2.gif

圖2  OBD模塊的基本框架圖

3 基于CAN總線OBD模塊程序設(shè)計(jì)

    根據(jù)J1939協(xié)議的規(guī)定,CAN報(bào)文信息主要在數(shù)據(jù)幀中,,OBD監(jiān)測(cè)到系統(tǒng)出現(xiàn)故障要及時(shí)向CAN總線發(fā)送當(dāng)前故障信息,,以通知總線上其他節(jié)點(diǎn),故障信息都包含在DM1(當(dāng)前故障診斷代碼)中[5],。DM1包含的故障診斷信息僅僅是當(dāng)前情況下處于激活狀態(tài)并且可以改變故障指示燈狀態(tài)的故障代碼,,所以DM1被傳輸?shù)那疤峋褪且蠨TC(故障診斷碼)成為激活的故障碼。每個(gè)DM1的更新周期為1 s,,如果故障激活的時(shí)間大于1 s,,然后又變?yōu)椴患せ顮顟B(tài),則應(yīng)傳輸DM1消息來(lái)反應(yīng)這種狀態(tài)的改變,,DM1的SPN為0xFECA,。

    DTC由四部分組成:SPN,可疑參數(shù)編號(hào),,是用以識(shí)別特定的元素組件或與ECU相關(guān)的參數(shù),;FMI,故障模式標(biāo)志,,定義了為SPN所識(shí)別的子系統(tǒng)中發(fā)現(xiàn)的故障類(lèi)型,;OC,發(fā)生次數(shù),,包括了一個(gè)故障從先前激活狀態(tài)到激活狀態(tài)的變化次數(shù),,最大值為126;CM,,SPN的轉(zhuǎn)化方式,,一般來(lái)說(shuō),CM=0,。

    本文針對(duì)監(jiān)測(cè)對(duì)象定義了以下故障信息,,如表1所示,現(xiàn)舉例說(shuō)明DM1的組成,。假設(shè)一個(gè)尿素箱溫度傳感器發(fā)生對(duì)地短路故障,,在表1中可以看出SPN=3031,F(xiàn)MI=4,;此時(shí)假設(shè)故障發(fā)生了一次,,則OC=1,CM=0,,點(diǎn)亮故障指示燈為0x40,,則根據(jù)表2可得DTC=0xD70B0401,,DM1報(bào)文內(nèi)容則為0x4000D70B0401FFFF。

qrs4-b1.gif

    若需發(fā)送的故障信息小于8 B,,則DM1在一幀CAN數(shù)據(jù)中傳送時(shí)采用單包模式,,更新周期為1 s,若需要發(fā)送包含兩個(gè)以上故障的當(dāng)前故障信息時(shí),,單幀CAN報(bào)文就不足以容納全部的信息了,,此時(shí)需要采用多包發(fā)送模式。

    當(dāng)使用多包模式發(fā)送DM1時(shí),,就不能像單幀DM1那樣發(fā)送,,而需要遵循J1939協(xié)議[6]。按照規(guī)定的傳輸協(xié)議進(jìn)行發(fā)送,,發(fā)送分為兩個(gè)步驟:

    (1)發(fā)送一條連接管理消息(PGN=0xEC00),,公告要發(fā)送一條廣播消息(BAM),目標(biāo)地址為全局目標(biāo)地址,,作為一個(gè)長(zhǎng)消息預(yù)告發(fā)送給網(wǎng)絡(luò)上的節(jié)點(diǎn),。BAM消息包含了即將廣播的長(zhǎng)消息的參數(shù)組編號(hào)、消息大小和它被拆裝的數(shù)據(jù)包的數(shù)目,,具體格式如表2所示,。

qrs4-b2.gif

    (2)將數(shù)據(jù)拆分打包,并通過(guò)數(shù)條數(shù)據(jù)傳送消息(PGN=0xEB00)發(fā)送,,發(fā)送周期為50 ms,。每一數(shù)據(jù)包的第一字節(jié)內(nèi)容為數(shù)據(jù)包序列號(hào)和燈的狀態(tài)信息,所有的DTC依次排列在后續(xù)的字節(jié)當(dāng)中,。當(dāng)最后一個(gè)數(shù)據(jù)包不足8 B數(shù)據(jù)時(shí),,沒(méi)使用的字節(jié)均以0xFF填充,多包DM1中DTC解析方法與單包DM1一致,。

4 CANoe-MATLAB/Simulink聯(lián)合仿真驗(yàn)證

    為了驗(yàn)證所開(kāi)發(fā)的OBD模塊是否滿(mǎn)足要求并完善OBD模塊的程序設(shè)計(jì),,必須進(jìn)行試驗(yàn)驗(yàn)證。而一般的試驗(yàn)驗(yàn)證不可能人為地制造出所有的故障,,因?yàn)橛行﹤鞲衅魇羌稍谟?jì)量泵內(nèi)部的,,如果加以破壞,勢(shì)必影響計(jì)量泵本身的性能,,而且增加了試驗(yàn)成本,。針對(duì)這種情況,本文設(shè)計(jì)了基于CANoe-MATLAB/Simulink聯(lián)合仿真驗(yàn)證[7],,充分結(jié)合了CANoe中的總線仿真優(yōu)勢(shì)和MATLAB/Simulink構(gòu)建復(fù)雜功能模型的優(yōu)勢(shì),。

4.1 仿真模型建立

    利用CANoe建立總線網(wǎng)絡(luò),,并在總線網(wǎng)絡(luò)上建立相關(guān)的節(jié)點(diǎn),。為了配合所設(shè)計(jì)的OBD模塊仿真,,本文建立了EMS(發(fā)動(dòng)機(jī)控制單元)、UDS(計(jì)量泵單元),、DCU(SCR電子控制單元),、Control Panel(監(jiān)控面板)4個(gè)節(jié)點(diǎn),如圖3所示,。

qrs4-t3.gif

    建立完網(wǎng)絡(luò)節(jié)點(diǎn)后,,利用CANdb++進(jìn)行整個(gè)系統(tǒng)數(shù)據(jù)庫(kù)的建立,包括信號(hào),、環(huán)境變量,、報(bào)文的建立等并關(guān)聯(lián)。然后利用PanelEditor對(duì)控制面板進(jìn)行設(shè)計(jì),,并和剛剛創(chuàng)建的數(shù)據(jù)庫(kù)進(jìn)行關(guān)聯(lián),。創(chuàng)建的OBD控制面板如圖4所示。之后用CAPL語(yǔ)言對(duì)節(jié)點(diǎn)和測(cè)試環(huán)境進(jìn)行編程設(shè)計(jì),,用來(lái)控制節(jié)點(diǎn)動(dòng)作,。最后根據(jù)仿真需要修改系統(tǒng)參數(shù)。

qrs4-t4.gif

4.2 OBD仿真分析

    故障分單個(gè)故障和多個(gè)故障,,基于CANoe的Diagnostic和DTC Monitor工具跟蹤和觀察了發(fā)生單個(gè)和多個(gè)故障時(shí)的情形,。圖5為單個(gè)故障發(fā)生的仿真過(guò)程。單擊OBD控制面板上溫度傳感器短路后的OK鍵,,單個(gè)故障發(fā)生,,從DTC Monitor上可以看出UDS節(jié)點(diǎn)上出現(xiàn)了紅點(diǎn)閃爍,UDS節(jié)點(diǎn)向CAN總線發(fā)送單包故障信息DM1(PGN=0xFECA),,通知其他節(jié)點(diǎn)發(fā)生故障的節(jié)點(diǎn)及類(lèi)型,。下面列出出現(xiàn)錯(cuò)誤的節(jié)點(diǎn)為UDS:SPN=0x7F5FD、OC=1,、FMI為“Voltage below normal(電壓低于正常值)”故障,。此時(shí),車(chē)上的OBD系統(tǒng)監(jiān)測(cè)到有故障發(fā)生,,點(diǎn)亮MIL,。

qrs4-t5.gif

    圖6為多個(gè)故障的仿真過(guò)程,依次點(diǎn)擊OBD控制面板上液位傳感器開(kāi)路和催化器后溫度后的OK鍵,,同時(shí)產(chǎn)生兩個(gè)故障,,DCU和UDS節(jié)點(diǎn)同時(shí)出現(xiàn)紅點(diǎn)閃爍。兩個(gè)節(jié)點(diǎn)向CAN總線發(fā)送多包故障信息,,首先發(fā)送一條連接管理消息(PGN=0xEC00),,公告要發(fā)送一條廣播消息(BAM),預(yù)告其他的節(jié)點(diǎn)。然后將數(shù)據(jù)拆分打包,,分多條消息進(jìn)行傳送(PGN=0xEB00),。然后通知其他節(jié)點(diǎn)發(fā)生故障的節(jié)點(diǎn)及類(lèi)型,車(chē)上的OBD系統(tǒng)監(jiān)測(cè)到故障,,點(diǎn)亮MIL,。

qrs4-t6.gif

   由以上的仿真過(guò)程可以看出,該模型很好地模擬了OBD的診斷過(guò)程,,從而說(shuō)明了制定的OBD診斷策略及設(shè)計(jì)的程序的正確性,,可以對(duì)SCR系統(tǒng)中所出現(xiàn)的故障進(jìn)行診斷并能及時(shí)地把診斷的結(jié)果通過(guò)CAN總線發(fā)給DCU,控制點(diǎn)亮MIL,。該仿真結(jié)果對(duì)程序設(shè)計(jì)的完善也具有指導(dǎo)意義,。

    對(duì)OBD模塊制定了診斷策略并進(jìn)行了總體的設(shè)計(jì),基于飛思卡爾MC9S12XET256單片機(jī)對(duì)OBD進(jìn)行了程序設(shè)計(jì),,為了驗(yàn)證制定的診斷策略及程序設(shè)計(jì)的合理性,,基于Simulink建立了OBD仿真模型,對(duì)SCR系統(tǒng)中OBD的工作過(guò)程進(jìn)行了聯(lián)合仿真,,結(jié)果表明建立的模型可以模擬OBD診斷過(guò)程,,驗(yàn)證了制定的OBD診斷策略及程序設(shè)計(jì)的正確性,并根據(jù)仿真結(jié)果完善了程序設(shè)計(jì),。

參考文獻(xiàn)

[1] SITSHEBO S,,TSOLAKIS A,THEINNOI K.Promoting hydrocarbon-SCR of NOx in diesel engine exhaust by hydrogen and fuel reforming[J].International Journal of Hydrogen Energy,,2009,,34(18):7842-7850.

[2] 戴耀輝,于建國(guó).汽車(chē)檢測(cè)與故障診斷[M].北京:機(jī)械工業(yè)出版社,,2007.

[3] MC9S12XET256開(kāi)發(fā)平臺(tái)實(shí)驗(yàn)指導(dǎo)手冊(cè)[EB/OL](2011-10)[2014-05].http://fxfreefly.taobao.com.

[4] 張偉,,徐正飛,鄧成林,,等.柴油機(jī)SCR系統(tǒng)OBD功能的診斷策略研究[J].汽車(chē)工程,,2011,33(1):23-25.

[5] 代妮娜,,蔡黎,,邱剛,等.一種新型汽車(chē)OBD信息無(wú)線發(fā)射機(jī)設(shè)計(jì)[J].電子技術(shù)應(yīng)用,,2012,,38(11):97-99.

[6] SAE J1939/73,SAE J1939 protocol part 7-3:application layer-diagnostics[S].2006,,9.

[7] 李頂根,,曹晶,張杰.基于CANoe_Matlab的車(chē)輛CAN總線的聯(lián)合仿真[J].計(jì)算機(jī)原理,2009(11):57-61.

此內(nèi)容為AET網(wǎng)站原創(chuàng),,未經(jīng)授權(quán)禁止轉(zhuǎn)載,。