你的位置:首頁(yè) > 測(cè)試測(cè)量 > 正文

AUTO SARCAN診斷實(shí)現(xiàn)

發(fā)布時(shí)間:2010-10-14

中心議題:

  • 汽車(chē)診斷簡(jiǎn)介
  • AUTOSARCAN診斷實(shí)現(xiàn)


AUTOSAR是由全球汽車(chē)OEM和供應(yīng)商共同推出的一種汽車(chē)電子嵌入式軟體分層架構(gòu)。該分層架構(gòu)由微控制器抽象層、ECU抽象層、服務(wù)層、執(zhí)行時(shí)環(huán)境(RTE)和應(yīng)用層組成,前叁層被統(tǒng)稱(chēng)為基礎(chǔ)軟體(BSW)。

AUTOSAR各層軟體的通訊透過(guò)叁類(lèi)介面實(shí)現(xiàn),分別是標(biāo)準(zhǔn)介面、AUTOSAR介面和標(biāo)準(zhǔn)AUTOSAR介面。其中,標(biāo)準(zhǔn)介面用于BSW各個(gè)模組之間的通訊,已用C語(yǔ)言定義,如voidAdc_Init(constAdc_ConfigType*ConfigPtr)。AUTOSAR介面用于軟體構(gòu)件(SW-C)之間的通訊或者軟體構(gòu)件和ECU韌體(IO硬體抽象、復(fù)雜設(shè)備驅(qū)動(dòng))之間的通訊,這類(lèi)介面命名以‘Rte_’為前綴。標(biāo)準(zhǔn)AUTOSAR介面用于軟體構(gòu)件存取AUTOSAR服務(wù)。依賴(lài)這種分層架構(gòu)和介面定義,AUTOSR顯著提高了汽車(chē)電子嵌入式軟體的再使用性──層級(jí)越高者,再使用性越強(qiáng)。值得注意的是:

*微控制器抽象層層級(jí)最低,隨微控制器的更換而更換;
*RTE雖然層級(jí)僅低于應(yīng)用層,但由于它負(fù)責(zé)著應(yīng)用層和BSW之間的橋樑作用,和硬體的耦合性最高,不具有再使用性;
*應(yīng)用層(除感測(cè)器、執(zhí)行器相關(guān)的軟體構(gòu)件外)完全獨(dú)立于硬體,具有絕對(duì)的再使用性。


圖1AUTOSAR分層架構(gòu)

汽車(chē)診斷簡(jiǎn)介

目前,整車(chē)廠和供應(yīng)商採(cǎi)用在線診斷與離線診斷相結(jié)合的診斷方法。在線診斷透過(guò)ECU內(nèi)部軟硬體實(shí)現(xiàn)自診斷。在汽車(chē)執(zhí)行過(guò)程中,自診斷系統(tǒng)即時(shí)監(jiān)控電子控制系統(tǒng)各組成部份的工作狀態(tài),因而檢測(cè)電子控制系統(tǒng)中的故障。自診斷系統(tǒng)一方面將檢測(cè)出的故障透過(guò)一定的方式(比如警報(bào)指示燈)向駕駛員發(fā)出警告,另一方面將故障程式碼及相關(guān)數(shù)據(jù)存入ECU記憶體。離線診斷透過(guò)外部診斷設(shè)備讀取相應(yīng)的診斷資訊,實(shí)現(xiàn)診斷作業(yè)。實(shí)現(xiàn)離線診斷的關(guān)鍵在于如何實(shí)現(xiàn)診斷設(shè)備和ECU之間的通訊機(jī)制和診斷服務(wù),即診斷協(xié)議。

目前,診斷協(xié)議標(biāo)準(zhǔn)主要分為ISO和SAE兩種體系。美國(guó)使用SAE標(biāo)準(zhǔn)體系,包括中國(guó)在內(nèi)的多數(shù)國(guó)家使用ISO標(biāo)準(zhǔn)體系。在乘用車(chē)領(lǐng)域,OEM正從自定義診斷協(xié)議逐漸轉(zhuǎn)向ISO標(biāo)準(zhǔn)。在商用車(chē)領(lǐng)域,OEM沿用SAE診斷,歐洲OEM在此基礎(chǔ)上增加了ISO診斷。表1列出了部份ISO和SAE標(biāo)準(zhǔn)對(duì)照。

AUTOSARCAN診斷實(shí)現(xiàn)

1)診斷服務(wù)

目前,AUTOSARV3.1診斷部份支援9個(gè)OBD服務(wù)(如表2所示),14個(gè)UDS服務(wù)(如表3所示)。

依據(jù)表2和表3可知,AUTOSAR不支援OBD中的0x05服務(wù)(請(qǐng)求氧感測(cè)器監(jiān)測(cè)結(jié)果),塬因在于基于CAN線的0x05服務(wù)在0x06中實(shí)現(xiàn)。不支援UDS中的0x28(通訊控制)、0x34(程式下載)、0x35(程式上傳)、0x36(數(shù)據(jù)傳輸)和0x37(請(qǐng)求傳輸煺出)服務(wù),且0x10服務(wù)不支援編程會(huì)話和擴(kuò)展會(huì)話這兩種子功能。這些服務(wù)主要用于ECU重新編程,因此AUTOSAR不支援Bootloader。

圖2AUTOSARCAN診斷相關(guān)模組[page]

雖然AUTOSAR目前不支援上述服務(wù),但并未限制開(kāi)發(fā)者對(duì)其進(jìn)行擴(kuò)展。

2)軟體架構(gòu)

AUTOAR架構(gòu)中和診斷相關(guān)的模組如圖2所示。

FIM模組的作用是根據(jù)DEM(DiagnosticEventManager)報(bào)告的事件狀態(tài)使能或禁止軟體構(gòu)件內(nèi)部的功能實(shí)體。PDURouter(協(xié)議數(shù)據(jù)單元路由器)模組僅負(fù)責(zé)轉(zhuǎn)發(fā)DCM(DiagnosticCommunicationManager)和CANTP(CANTransportLayer)之間的I_PDU(交互層協(xié)議數(shù)據(jù)單元),不會(huì)對(duì)數(shù)據(jù)進(jìn)行任何修改。CANInterface模組、CANDriver模組和CANTransceiver模組負(fù)責(zé)L_PDU(數(shù)據(jù)鏈路層協(xié)議數(shù)據(jù)單元)的傳輸。

DEM、DCM和CANTP是AUTOSAR架構(gòu)中和診斷相關(guān)的核心模組。

3)DCM

DCM模組遵循ISO14229-1、ISO15031-5、ISO15765-4和SAEJ1979標(biāo)準(zhǔn),能直接處理0x10、0x27和0x3E服務(wù)。收到AUTOSAR支援的OBD服務(wù)或其他UDS服務(wù)時(shí),靠叫DEM、軟體構(gòu)件或者其他BSW模組提供的介面進(jìn)行響應(yīng)。

AUTOSAR建議用叁個(gè)功能模組組成DCM,分別是DSL(DiagnosticSessionLayer)、DSD(DiagnosticServiceDispatcher)和DSP(DiagnosticServiceProcessing)。其中DSL負(fù)責(zé)處理PDURouter傳來(lái)的診斷請(qǐng)求,管理會(huì)話層和應(yīng)用層定時(shí)參數(shù),處理會(huì)話狀態(tài)的切換等。DSD負(fù)責(zé)將DSL傳來(lái)的診斷請(qǐng)求轉(zhuǎn)發(fā)給DSP,同時(shí)將DSP傳來(lái)的診斷響應(yīng)報(bào)文傳給DSL。DSP負(fù)責(zé)分析接收到的診斷請(qǐng)求報(bào)文,檢查其報(bào)文格式以及其請(qǐng)求的子功能。只有在診斷請(qǐng)求報(bào)文的服務(wù)標(biāo)識(shí)符、子功能、報(bào)文格式等條件都滿足的情況下,DSP才會(huì)處理收到的請(qǐng)求報(bào)文,并將處理結(jié)果整理成診斷響應(yīng)報(bào)文發(fā)給PDURouter。

4)DEM

DCM模組遵循的標(biāo)準(zhǔn)與DCM相同,負(fù)責(zé)直接處理與DTC相關(guān)的服務(wù),如UDS中的0x19服務(wù)(響應(yīng)報(bào)文由DCM發(fā)送出去)。當(dāng)軟體構(gòu)件中的MonitorFunction檢測(cè)到故障或BSW模組檢測(cè)到故障時(shí),將通知DEM模組處理和儲(chǔ)存‘診斷事件’(由EventID進(jìn)行標(biāo)識(shí))。如果故障確診,唿叫NVRAMManager(非揮發(fā)性記憶體管理器)提供的介面將其存取到非揮發(fā)性記憶體中,同時(shí)通知應(yīng)用層進(jìn)行故障指示。DEM的狀態(tài)圖如圖3所示:
 


 圖3DEM狀態(tài)圖

5)CANTP模組

遵循ISO15765-2標(biāo)準(zhǔn)。負(fù)責(zé)診斷報(bào)文的尋址、拆包與打包,以及網(wǎng)路層定時(shí)參數(shù)的管理。所以,該模組向下傳輸?shù)氖荖_PDU(網(wǎng)路層協(xié)議數(shù)據(jù)單元)。

第一、由于嚴(yán)格分層,除了CANDriver和CANTransceiver模組要依賴(lài)于硬體,AUTOSAR與診斷相關(guān)的模組幾乎完全獨(dú)立于硬體。按照此架構(gòu)開(kāi)發(fā)完成的診斷程式碼能夠擺脫硬體的束縛,具有最大程度的再使用性。

第二、AUTOSAR目前不支援SAEJ1939。

第叁、暫時(shí)不能直接將AUTOSAR軟體架構(gòu)用于Bootloder程式的開(kāi)發(fā)。

綜上所述,AUTOSAR標(biāo)準(zhǔn)仍舊處于發(fā)展和完善階段,但隨著目前汽車(chē)ECU軟體開(kāi)發(fā)矛盾的加劇,開(kāi)發(fā)難度不斷增大,開(kāi)發(fā)週期卻不斷縮短,AUTOSAR將成為必然趨勢(shì)。
 

要采購(gòu)微控制器么,點(diǎn)這里了解一下價(jià)格!
特別推薦
技術(shù)文章更多>>
技術(shù)白皮書(shū)下載更多>>
熱門(mén)搜索
?

關(guān)閉

?

關(guān)閉