利用藍(lán)牙技術(shù)和遠(yuǎn)程信息控制單元實(shí)現(xiàn)汽車(chē)診斷
掃描二維碼
隨時(shí)隨地手機(jī)看文章
隨著汽車(chē)中多媒體設(shè)備的增加,如CD/DVD播放器、數(shù)字電視等,連接這些設(shè)備的車(chē)內(nèi)網(wǎng)包括:藍(lán)牙、CAN、D2B、FireWire、MOST、移動(dòng)媒介鏈路(MML)、LIN和ZigBee等等,本文介紹一種基于藍(lán)牙技術(shù)的、用于遙控診斷接口的架構(gòu),它使測(cè)試工程師無(wú)論處在車(chē)內(nèi)或車(chē)外的任何位置,都可以監(jiān)控和操作汽車(chē)的傳感器及控制單元完成測(cè)試任務(wù)。
未來(lái)的遠(yuǎn)程診斷系統(tǒng)將為汽車(chē)的動(dòng)力控制器提供前所未有的訪問(wèn)途徑,無(wú)論這輛汽車(chē)是在維修店還是在道路上。藍(lán)牙等無(wú)線技術(shù)提供了在汽車(chē)技術(shù)人員的便攜式電腦和車(chē)內(nèi)網(wǎng)絡(luò)之間進(jìn)行短程無(wú)線通信所需的特性,從而使技術(shù)人員無(wú)論處在車(chē)內(nèi)或車(chē)外的任何位置,都可以監(jiān)控和操作汽車(chē)的傳感器及控制單元。
從汽車(chē)技術(shù)人員的角度看來(lái),這個(gè)網(wǎng)絡(luò)的前端是一個(gè)遠(yuǎn)程信息控制單元(TCU),它把與集成聯(lián)網(wǎng)汽車(chē)(INV)互聯(lián)的各種網(wǎng)絡(luò)連接在一起。目前汽車(chē)行業(yè)有一種明顯的趨勢(shì),欲為INV開(kāi)發(fā)一種集中式服務(wù)網(wǎng)關(guān)模型,而藍(lán)牙技術(shù)則為該網(wǎng)絡(luò)中的許多鏈接提供了一種連接方案。通過(guò)提供無(wú)線連接和hoc聯(lián)網(wǎng),它與已有的CAN (控制器區(qū)域網(wǎng)絡(luò))總線互為補(bǔ)充。其他通信媒介也有自己的優(yōu)勢(shì),如MOST(面向媒介的系統(tǒng)傳輸)和IEEE1394,它們?yōu)橄M(fèi)電子產(chǎn)品和娛樂(lè)系統(tǒng)提供了高帶寬音頻/視頻通信。
這種新技術(shù)使用CAN總線,在對(duì)汽車(chē)性能和安全性具有影響的各系統(tǒng)之間實(shí)現(xiàn)高可靠性的通信。高速 CAN網(wǎng)絡(luò)用來(lái)連接引擎控制單元(ECU)、防鎖死剎車(chē)系統(tǒng)(ABS)及其他關(guān)鍵性的系統(tǒng)。低速CAN網(wǎng)絡(luò)則常用于實(shí)現(xiàn)多路連接,在這個(gè)網(wǎng)絡(luò)中,多燈照明器、電源窗口和電源座椅等等都是作為CAN總線上的節(jié)點(diǎn),而不是使用大型、昂貴的電纜束通過(guò)傳統(tǒng)的點(diǎn)對(duì)點(diǎn)連線來(lái)進(jìn)行連接。
本文介紹了一種基于藍(lán)牙技術(shù)的用于遠(yuǎn)程訪問(wèn)診斷接口的架構(gòu),在這種架構(gòu)中使用藍(lán)牙聯(lián)網(wǎng)協(xié)議為一個(gè)HTTP-CAN網(wǎng)關(guān)提供底層的傳輸(物理)媒介。 借助運(yùn)行在TCU上的嵌入式HTTP服務(wù)器的幫助,服務(wù)技術(shù)人員可以從啟動(dòng)藍(lán)牙功能的便攜式電腦的網(wǎng)絡(luò)瀏覽器上來(lái)監(jiān)視和控制INV上的各個(gè)節(jié)點(diǎn)。這個(gè)無(wú)線 接口提供了方便的訪問(wèn)途徑,從車(chē)底、發(fā)動(dòng)機(jī)蓋下或乘客廂內(nèi)都可進(jìn)行訪問(wèn)。本文介紹的系統(tǒng)使用了藍(lán)牙的撥號(hào)聯(lián)網(wǎng)(DUN)特性來(lái)模擬一個(gè)外部調(diào)制解調(diào)器,以 便支持一個(gè)“撥號(hào)”到汽車(chē)CAN網(wǎng)絡(luò)的網(wǎng)絡(luò)瀏覽器。通過(guò)使用TCP/IP等標(biāo)準(zhǔn)通信協(xié)議,并將汽車(chē)的相應(yīng)軟件嵌入HTTP服務(wù)器,技術(shù)人員的硬件和軟件相 對(duì)于汽車(chē)設(shè)計(jì)具有完全的可伸縮性,即使不同制造商、車(chē)型和型年的汽車(chē)其維護(hù)和修理過(guò)程全然不同。
對(duì)車(chē)內(nèi)網(wǎng)絡(luò)進(jìn)行診斷訪問(wèn)
圖1:網(wǎng)絡(luò)架構(gòu)和遠(yuǎn)程診斷接口
圖1 顯示了使用基于藍(lán)牙的診斷系統(tǒng)進(jìn)行訪問(wèn)的車(chē)內(nèi)網(wǎng)的網(wǎng)絡(luò)架構(gòu)。具有藍(lán)牙功能的常規(guī)筆記本電腦上的網(wǎng)絡(luò)瀏覽器是用來(lái)訪問(wèn)TCU的,它提供了一個(gè)訪問(wèn)汽車(chē)網(wǎng)絡(luò)的 用戶(hù)接口。通過(guò)在汽車(chē)自身嵌入診斷接口,制造商可以定制數(shù)據(jù)的描述形式和提交給技術(shù)人員的過(guò)程。還可以根據(jù)特定汽車(chē)內(nèi)的選件安裝情況來(lái)提供診斷程序。除了 消費(fèi)者挑選的諸如空調(diào)、ABS等選件之外,通常還有一些其它的部件差異是消費(fèi)者所看不見(jiàn)的。例如,在1個(gè)型年內(nèi)可能使用2~3個(gè)水泵。把所有這些差異都考 慮進(jìn)去之后,可能會(huì)出現(xiàn)幾十種組合情況。對(duì)特定汽車(chē)定制專(zhuān)門(mén)的診斷接口降低了導(dǎo)致技術(shù)人員陷入迷惘和使用不正確診斷程序的可能性。
這個(gè)接口可用來(lái)訪問(wèn)汽車(chē)行駛期間的實(shí)時(shí)工作數(shù)據(jù)和來(lái)自控制器并記錄有異常事件(如引擎點(diǎn)火失敗,超程傳感器數(shù)據(jù)等)日志的歷史數(shù)據(jù)??刂破鬟€可用來(lái)操控汽車(chē)傳感器進(jìn)行測(cè)試,如驗(yàn)證噴射控制裝置是否能對(duì)傳感器的輸入進(jìn)行正確響應(yīng)。
該 診斷系統(tǒng)還可為汽車(chē)制造商恢復(fù)數(shù)據(jù),以開(kāi)發(fā)故障發(fā)生前的指示器模型。通過(guò)上載閃存中的數(shù)據(jù)日志,并將其與技術(shù)人員所提供的故障報(bào)告關(guān)聯(lián)起來(lái),便可以利用學(xué) 習(xí)算法來(lái)優(yōu)化自動(dòng)診斷工具。維護(hù)和維修設(shè)備提供這些信息的目的在于為汽車(chē)的診斷起到輔助作用。在診斷汽車(chē)所發(fā)生的問(wèn)題時(shí),第一個(gè)步驟應(yīng)該是上載閃存數(shù)據(jù), 因?yàn)槠刚?qǐng)熟練技術(shù)人員的成本比較昂貴,而利用汽車(chē)制造商的軟件工具常常就能夠診斷出問(wèn)題所在(或提供有用的建議)。
網(wǎng)際網(wǎng)模型
由于系統(tǒng)需要具有不同可靠性和帶寬的網(wǎng)絡(luò),未來(lái)的車(chē)內(nèi)網(wǎng)將用到多種網(wǎng)絡(luò)類(lèi)型。分層協(xié)議和中央網(wǎng)關(guān)處理器相結(jié)合,可實(shí)現(xiàn)不同組網(wǎng)技術(shù)之間的透明通信。
伴 隨汽車(chē)電子產(chǎn)品結(jié)構(gòu)正在發(fā)生的革命,出現(xiàn)了許多新興的網(wǎng)絡(luò)。汽車(chē)中的多媒體設(shè)備,如CD/DVD播放器、數(shù)字電視等,都要求具有較大同步帶寬的網(wǎng)絡(luò);而另 外一些應(yīng)用則需要無(wú)線網(wǎng)絡(luò)或其他配置。為滿(mǎn)足對(duì)這些廣泛的、日益增長(zhǎng)的汽車(chē)網(wǎng)絡(luò)應(yīng)用的需求,研究人員正在開(kāi)發(fā)許多專(zhuān)用的網(wǎng)絡(luò)協(xié)議。未來(lái)的車(chē)內(nèi)網(wǎng)很可能包 括:
* 藍(lán)牙微微網(wǎng)(Piconet):中等帶寬的無(wú)線網(wǎng)絡(luò),已成為與蜂窩電話和便攜式計(jì)算機(jī)通信的標(biāo)準(zhǔn)。
* CAN網(wǎng)絡(luò):中等帶寬、高可靠性的有線網(wǎng)絡(luò),已經(jīng)是汽車(chē)行業(yè)中的標(biāo)準(zhǔn)。
* 音頻/視頻網(wǎng)絡(luò):用于娛樂(lè)媒介的高帶寬有線網(wǎng)絡(luò)。目前在這個(gè)應(yīng)用領(lǐng)域中存在幾個(gè)相互競(jìng)爭(zhēng)的協(xié)議,包括內(nèi)部數(shù)據(jù)總線(D2B)、火線(FireWire,IEEE 1394)、 面向媒介的系統(tǒng)傳輸 (MOST)和移動(dòng)媒介鏈路(MML)。
* 低開(kāi)銷(xiāo)有線網(wǎng)絡(luò):基于UART的有線網(wǎng)絡(luò)(LIN)和芯片-芯片總線,如I2C、SPI和Microwire,支持到按鍵板、顯示屏和傳感器等的低成本接口。
* 低開(kāi)銷(xiāo)無(wú)線網(wǎng)絡(luò):基于ZigBee或?qū)S镁W(wǎng)的低帶寬無(wú)線網(wǎng)絡(luò),用于輪胎壓力傳感器、報(bào)警器和門(mén)鎖的射頻遠(yuǎn)程鑰匙以及需要無(wú)線接口和最低成本的其他應(yīng)用。
未 來(lái)的車(chē)內(nèi)網(wǎng)通常會(huì)包含多個(gè)CAN網(wǎng)絡(luò):低速網(wǎng)絡(luò)用于門(mén)鎖、尾燈等設(shè)備,它可以減少走線;高速網(wǎng)絡(luò)用于動(dòng)力控制等關(guān)鍵高性能功能。在7系列寶馬汽車(chē)中,使用 了三個(gè)CAN網(wǎng)絡(luò)。其中,CAN動(dòng)力網(wǎng)絡(luò)和CAN車(chē)體網(wǎng)絡(luò)連接到中央網(wǎng)關(guān)模塊,后者再連接到Byteflight星型網(wǎng)絡(luò)。Byteflight星型連接 器是安全關(guān)鍵控制和信息模塊。第三個(gè)CAN網(wǎng)絡(luò)將CAS(汽車(chē)訪問(wèn)系統(tǒng))連接到門(mén)控單元和座位控制單元(最多11個(gè)單元)。CAS還提供到CAN車(chē)體網(wǎng)絡(luò) 的接口,后者包括多達(dá)20個(gè)節(jié)點(diǎn)。
網(wǎng)絡(luò)軟件結(jié)構(gòu)
TCU和遠(yuǎn)程診斷系統(tǒng)的軟件結(jié)構(gòu)如圖2所示。
圖2:TCU和診斷系統(tǒng)的軟件結(jié)構(gòu)。
診斷系統(tǒng)運(yùn)行通用的網(wǎng)絡(luò)瀏覽器,以便查看TCU上的網(wǎng)絡(luò)服務(wù)器所提供的信息。通過(guò)在TCU上執(zhí)行網(wǎng)絡(luò)服務(wù)器,汽車(chē)制造商可以提供一個(gè)無(wú)需事先知道實(shí)現(xiàn)細(xì)節(jié)(它即使在同一個(gè)型年內(nèi)也有可能發(fā)生變化)就可進(jìn)行訪問(wèn)的診斷接口,
各CAN節(jié)點(diǎn)中的高級(jí)驅(qū)動(dòng)器執(zhí)行應(yīng)用特定的協(xié)議來(lái)響應(yīng)從網(wǎng)絡(luò)服務(wù)器收到的請(qǐng)求。該驅(qū)動(dòng)器負(fù)責(zé)分析和解碼PDU(協(xié)議數(shù)據(jù)單元),并產(chǎn)生滿(mǎn)足PDU所需行為的各項(xiàng)本地任務(wù)。一旦本地任務(wù)結(jié)束之后,這些任務(wù)所產(chǎn)生的任何結(jié)果都會(huì)被格式化并通過(guò)CAN總線返回給網(wǎng)絡(luò)服務(wù)器。
DNC (動(dòng)態(tài)節(jié)點(diǎn)配置)服務(wù)器維護(hù)一個(gè)活動(dòng)節(jié)點(diǎn)列表。當(dāng)某個(gè)節(jié)點(diǎn)被添加(可以是“熱添加”或“冷添加”)到CAN網(wǎng)絡(luò)時(shí),它立即開(kāi)始向運(yùn)行在TCU上的DNC服 務(wù)器廣播配置請(qǐng)求。由于采用許多計(jì)算機(jī)所用的動(dòng)態(tài)主機(jī)配置協(xié)議(DHCP)來(lái)建模,以便自動(dòng)獲取網(wǎng)絡(luò)配置,因此可以利用一種類(lèi)似的(簡(jiǎn)化的)協(xié)議來(lái)允許 CAN節(jié)點(diǎn)獲得某些需要的網(wǎng)絡(luò)配置數(shù)據(jù)。通過(guò)這種機(jī)制,節(jié)點(diǎn)可以用與計(jì)算機(jī)中即插即用類(lèi)似的方式來(lái)進(jìn)行增加或刪除。CAN節(jié)點(diǎn)使用DNC請(qǐng)求來(lái)發(fā)布它們隨 機(jī)產(chǎn)生的節(jié)點(diǎn)ID號(hào),即希望在CAN網(wǎng)絡(luò)上用來(lái)作為其名稱(chēng)或“地址”的“別名”(不要將其與基于消息的過(guò)濾或CAN網(wǎng)絡(luò)上使用的ID號(hào)混淆)。
當(dāng)TCU 的DNC服務(wù)器接收到一個(gè)DNC請(qǐng)求時(shí),它首先檢查節(jié)點(diǎn)所請(qǐng)求的ID號(hào)是有效的,并且不與當(dāng)前網(wǎng)絡(luò)上的任何其他節(jié)點(diǎn)相沖突。然后,服務(wù)器檢查它具有足夠的 存儲(chǔ)空間來(lái)將該節(jié)點(diǎn)的配置表增加到它的活動(dòng)節(jié)點(diǎn)列表中去。最后,如果上述檢查通過(guò),DNC服務(wù)器將接受這個(gè)請(qǐng)求,并為該節(jié)點(diǎn)分配一個(gè)唯一的數(shù)字作為其活動(dòng) 期間的名字。同時(shí),該節(jié)點(diǎn)的ID號(hào)也將被添加到服務(wù)器的活動(dòng)節(jié)點(diǎn)列表中。以后所有指向該節(jié)點(diǎn)的通信都將使用這個(gè)協(xié)議ID。如果所請(qǐng)求的ID號(hào)無(wú)效,TCU 將拒絕這個(gè)請(qǐng)求,從而提示該節(jié)點(diǎn)請(qǐng)求另外一個(gè)ID號(hào),直到這個(gè)ID號(hào)可以接受為止。
TCU擔(dān)當(dāng)CAN網(wǎng)絡(luò)的主機(jī),因?yàn)镃AN節(jié)點(diǎn)本身并不運(yùn)行基于TCP/IP的協(xié)議堆棧。當(dāng)網(wǎng)絡(luò)瀏覽器需要訪問(wèn)一個(gè)CAN節(jié)點(diǎn)時(shí),它與網(wǎng)絡(luò)服務(wù)器進(jìn)行通信。網(wǎng)絡(luò)服務(wù)器解釋瀏覽器所請(qǐng)求的動(dòng)作,并在CAN網(wǎng)絡(luò)上產(chǎn)生通信,以執(zhí)行該動(dòng)作。
TCU處理器的一個(gè)例子是國(guó)家半導(dǎo)體公司的CP3BT26,該處理器屬于CP3000系列連接性處理器。它具有以下特征:
* 24MHz 16位RISC CPU,含32位擴(kuò)展;
* 256K字節(jié)片內(nèi)閃存;
* 8K字節(jié)數(shù)據(jù)閃存(從256K閃存中執(zhí)行時(shí)可寫(xiě));
* 32K字節(jié)靜態(tài)存儲(chǔ)器;
* 藍(lán)牙基帶控制器;
* 帶目標(biāo)存儲(chǔ)的雙CAN 2.0B活動(dòng)控制器(稱(chēng)為fullCAN);
* USB 1.1全速節(jié)點(diǎn);
* ACCESS.bus、SPI、Microwire/Plus低開(kāi)銷(xiāo)芯片-芯片總線;
* 四UART;
* AAI編解碼器接口(與SSI接口兼容);
* 8 通道12位AD轉(zhuǎn)換器;
* 54個(gè)通用I/O端口引腳;
* 通用定時(shí)器;
* 看門(mén)狗定時(shí)器;
* 低電壓模式;
該器件具有完全的藍(lán)牙和TCP/IP協(xié)議堆棧,其支持包括一套經(jīng)過(guò)預(yù)測(cè)試的軟件開(kāi)發(fā)工具、外設(shè)驅(qū)動(dòng)器和實(shí)時(shí)操作系統(tǒng)。