本文所述主題的實施例通常涉及車輛診斷系統(tǒng)。更具體地,本主題的實施例涉及一種用于定位與電子設(shè)備(如車輛的電子控制單元)相關(guān)聯(lián)的接地偏移的方法。
背景技術(shù):
現(xiàn)代汽車有眾多的電子控制單元(ECU),被配置用來控制各種車輛子系統(tǒng),如發(fā)動機、變速器、安全氣囊、防抱死制動、巡航控制、電動助力轉(zhuǎn)向、音響系統(tǒng)、窗、門和反射鏡調(diào)整等。這些子系統(tǒng)中的一些是獨立的,而另一些需要在車輛的正常操作期間在其之間交換數(shù)據(jù)。當ECU發(fā)生故障或運行錯誤時,車輛可以表現(xiàn)出性能差或完全無法使用。
車載的ECU可能受到接地偏移條件的困擾。接地偏移是指ECU的期望基準電壓(例如零伏)發(fā)生偏移。因此,如果相對于不同的基準電壓測定出了相同的信號電壓,則將獲得不同的測量值。在理想的ECU網(wǎng)絡(luò)中,所有的基準電壓都是相同的,使得所有信號電壓的測量值互相一致。車輛ECU的接地偏移由于改變電氣負載可導(dǎo)致不一致的車輛運行。此外,接地偏移趨于隨時間變得更糟(也許使被擊中的ECU無法運行)。
因此,期望有一種車載系統(tǒng)和/或診斷工具,可以檢查主車輛上的ECU的接地完整性。另外,需要有用于標識和定位ECU網(wǎng)絡(luò)中接地偏移源的有效自動化方法。此外,結(jié)合附圖和前述的技術(shù)領(lǐng)域與背景技術(shù),其它期望的特征和特性將在隨后的具體實施方式和所附權(quán)利要求書中變得顯而易見。
技術(shù)實現(xiàn)要素:
本文提出了一種定位通過通信總線互連的電子設(shè)備網(wǎng)絡(luò)中的接地偏移源的方法。該方法檢測指示接地偏移條件的通信總線上的信號電壓,并保存檢測到的信號電壓的電壓時間戳。相應(yīng)地,每個檢測到的信號電壓都具有與其相關(guān)聯(lián)的各自電壓時間戳。該方法繼續(xù)向通信總線上的消息添加消息時間戳,使得每個消息都具有與其相關(guān)聯(lián)的各自消息時間戳。將該消息時間戳與電壓時間戳進行比較,以將電子設(shè)備中的至少一者標識為接地偏移源。
本文還提出了一種用于診斷主車輛上的控制器局域網(wǎng)(CAN)的系統(tǒng)。CAN包括多個通過CAN通信總線互連的電子控制單元(ECU)。該系統(tǒng)包括處理器設(shè)備和與該處理器設(shè)備相關(guān)聯(lián)的存儲介質(zhì)。該存儲介質(zhì)存儲處理器可執(zhí)行指令,當由處理器設(shè)備執(zhí)行時,這些指令能夠執(zhí)行定位CAN中接地偏移源的方法。
本文還提出了一種有形的非暫態(tài)計算機可讀存儲介質(zhì),其上存儲了可執(zhí)行指令,這些指令在由處理器設(shè)備執(zhí)行時,能夠執(zhí)行定位接地偏移源的方法。
提供本發(fā)明內(nèi)容部分是為了以簡化形式引入概念的選擇,在以下的具體實施方式中將進一步描述。本發(fā)明內(nèi)容部分并不旨在確定所要求保護的主題的關(guān)鍵特征或基本特征,也并不旨在用于幫助確定所要求保護的主題的范圍。
附圖說明
通過參照具體實施方式和權(quán)利要求,并結(jié)合下列的附圖考慮時,可獲得對本主題更全面的了解,其中圖中同樣的附圖標記指的是類似的元件。
圖1是表示ECU網(wǎng)絡(luò)和診斷系統(tǒng)的簡化示意圖;
圖2是表示圖1所示的診斷系統(tǒng)的簡化示意圖;
圖3是示出了健康ECU網(wǎng)絡(luò)的信號電壓特性的視圖;
圖4是示出了具有接地偏移條件的ECU網(wǎng)絡(luò)的信號電壓特性的視圖;
圖5是示出了總線電壓監(jiān)視方法的示例性實施例的流程圖;以及
圖6是示出了消息時間戳和分析過程的示例性實施例的流程圖。
具體實施方式
以下具體實施方式僅僅是說明的性質(zhì),并不旨在限制本主題的實施例或這些實施例的應(yīng)用和用途。如本文中所用的,詞“示例性”的意思是“充當示例、實例或例證”。本文所述為示例性的任何實施方式不一定理解為優(yōu)于或勝過其它實施方式。此外,就前述的技術(shù)領(lǐng)域、背景技術(shù)、發(fā)明內(nèi)容或者下列具體實施方式中提出的任何明示或暗示的理論,并不帶有任何意圖。
本文可能描述功能和/或邏輯塊部件方面的工藝和技術(shù),并參考可由各種計算部件或設(shè)備執(zhí)行的操作、進程任務(wù)和功能的符號表示。此類操作、任務(wù)和功能有時被稱為計算機執(zhí)行的、計算機化的、軟件實現(xiàn)的或計算機實現(xiàn)的。應(yīng)當理解,圖中所示的各種塊部件可由任何數(shù)目的被配置成用來執(zhí)行指定功能的硬件、軟件和/或固件部件來實現(xiàn)。例如,系統(tǒng)或部件的實施例可采用各種集成電路部件,例如存儲器元件、數(shù)字信號處理元件、邏輯元件、查找表等,其可在一個或多個微處理器或其它控制設(shè)備的控制下執(zhí)行各種功能。
當在軟件中實施時,本文所述的系統(tǒng)的各種元件基本上是執(zhí)行各種任務(wù)的代碼段或計算機可讀指令。在某些實施例中,程序或代碼段存儲在有形的處理器可讀介質(zhì)中,其可包括能存儲或傳送信息的任何介質(zhì)。非暫態(tài)處理器可讀介質(zhì)的示例包括電子電路、微控制器、專用集成電路(ASIC)、半導(dǎo)體存儲裝置、ROM、閃存、可擦除ROM(EROM)、軟盤、CD-ROM、光盤、硬盤等。
下文描述的系統(tǒng)和方法可以用于定位通過諸如車載車輛通信網(wǎng)絡(luò)的通信總線互連的電子設(shè)備網(wǎng)絡(luò)中的接地偏移。接地偏移定位技術(shù)依賴于總線電壓測量值和電壓測量值的時間戳。雖然方法和方法在下文相對于車輛通信進行描述,但本領(lǐng)域的普通技術(shù)人員意識到車輛應(yīng)用僅僅是示例性的,并且本文所公開的概念也可應(yīng)用于任何其它合適的通信系統(tǒng),例如通用工業(yè)自動化應(yīng)用和游戲等。
本文所述的術(shù)語“車輛”也被廣義地解釋成不僅包括乘用車,而且包括任何其它車輛,其包括但不限于摩托車、卡車、運動型多用途車(SUV)、休閑車(RV)、船舶以及飛行器。本文所述的系統(tǒng)和方法可在主車輛上的上實施(例如,在ECU或者任何車載處理模塊中實施),或者在非車載診斷工具、裝置或者可以使用合適構(gòu)造的接口耦合到車輛網(wǎng)絡(luò)上的部件上實施。換言之,本文所述的方法可在維護工具而非在ECU或網(wǎng)關(guān)模塊上實施。另外,雖然下文描述了容納設(shè)置成控制器局域網(wǎng)(CAN)的ECU的通信系統(tǒng),但本領(lǐng)域的普通技術(shù)人員意識到本文所公開的方法等同地適用于應(yīng)用非隔離多點分支總線的任何通信系統(tǒng)。
現(xiàn)在參照附圖,圖1是表示電子設(shè)備的網(wǎng)絡(luò)的簡化示意圖。雖然并不總是需要,但是本文描述的示例性實施例包括主車輛(未示出)車載ECU102的網(wǎng)絡(luò)。ECU可包括以下通用模塊,但不限于:發(fā)動機控制模塊;變速器控制模塊;車身控制模塊;遠程通信系統(tǒng)控制模塊;后差動器控制模塊;電子停車制動器模塊;人機接口模塊;以及電子制動器控制模塊。圖1還示出了診斷系統(tǒng)104,其可被實現(xiàn)為任何以下部件,但不限于:車載模塊(例如另一個ECU);車載中央網(wǎng)關(guān)模塊,其與多個不同的車輛車載網(wǎng)絡(luò)通信;非車載或外部診斷工具、設(shè)備或子系統(tǒng);或者任何合適配置并且兼容的計算機設(shè)備。ECU 102通過通信總線106互連。圖1將通信總線106描述成單線線路。然而,在實踐中,通信總線106可以被實現(xiàn)為雙線總線,例如用在雙線CAN總線中的雙線總線。為了簡明和便于描述,圖1示出具有三個ECU的CAN。然而,在實踐中,車輛可以包括遠遠多于三個的ECU(具有30或更多個ECU是常見的)。應(yīng)意識到,主車輛可包括多個不同的CAN,并且任何給定的ECU 102可是一個或多個CAN的元件。
在車輛中,最廣泛建立的網(wǎng)絡(luò)總線協(xié)議是CAN,其是設(shè)計成允許微控制器和設(shè)備能在主車輛內(nèi)彼此通信的多主機廣播串行總線標準。本文用作一個合適示例的CAN協(xié)議中的最常用物理層標準是由ISO-11898-2所限定的雙線平衡信令方案(稱為高速CAN)。該標準指定雙線差動總線,其中節(jié)點的數(shù)量由電氣總線負載限制。兩個總線標識為CAN高和CAN低,且作為CAN的元件的每個ECU連接于這兩個總線線路。在某些示例性非限制實施例中,通用模式的電壓范圍從CAN低位上的2.0伏至CAN高位的7.0伏。更具體地,CAN低位上的電壓通常在約1.5至2.5伏的范圍內(nèi),而CAN高位上的電壓通常在約2.5至3.5伏的范圍內(nèi)。
通信總線106上的每個節(jié)點(即,ECU102)都能夠發(fā)送和接收消息,但并不是同時的。每個消息(也稱為CAN幀)都包括數(shù)據(jù)以及根據(jù)需要可以讀取和解釋的一些標識信息。標識信息在消息的判優(yōu)字段中傳送。該判優(yōu)字段也用作表示消息優(yōu)先級的優(yōu)先級標識符,其中具有較低優(yōu)先級標識符數(shù)值的消息比具有較高的優(yōu)先級標識符數(shù)值具有較高的優(yōu)先級,并且因此首先傳送。優(yōu)先級標識符必須唯一地分配給僅僅一個ECU,另外兩個不同的ECU會同時贏得判優(yōu),這會引起總線誤差。因此,優(yōu)先級標識符也用作源標識符,其唯一地映射至一個并且僅僅一個ECU(也就是說,給定的ECU可以具有多于一個的唯一映射到其上的源標識符)。
CAN協(xié)議指定了兩種邏輯狀態(tài):隱性和顯性。差動電壓用于表示隱性和顯性狀態(tài)(即比特)。在隱性狀態(tài)(邏輯1),CAN高位和CAN低位上的差動電壓低于最小閾值。在顯性狀態(tài)(邏輯0),CAN高位和CAN低位上的差動電壓大于最小閾值。CAN網(wǎng)絡(luò)中的數(shù)據(jù)通過消息進行傳輸,其更普遍地被稱為幀。給定CAN幀通過稱為幀間間隔的比特字段(其包括至少三個連續(xù)的隱性比特)與前一幀隔開。在這些連續(xù)隱性比特之后,如果檢測到顯性比特,該比特被視為用于下一個幀的“幀的開始”比特。
每個ECU102通常都包括處理器設(shè)備或微控制器、適當配置的存儲器或存儲設(shè)備、CAN控制器和收發(fā)器。ECU微控制器控制消息的中繼并常常連接到傳感器、致動器和控制設(shè)備上。CAN控制器常常是微處理器的組成部分,并被配置成存儲來自通信總線106的所接收串行比特,直至整個消息是可用的,其然后可以由ECU微控制器獲取。CAN控制器還可被配置成接收由微處理器傳輸?shù)南?,其然后可串行地作為比特傳輸?shù)酵ㄐ趴偩€106上。收發(fā)器將數(shù)據(jù)流從CAN所利用的水平轉(zhuǎn)換成CAN控制器可以處理的水平,反之亦然。
診斷系統(tǒng)104表示用于診斷主車輛上的CAN以定位接地偏移源的系統(tǒng)的實施例。圖2是表示診斷系統(tǒng)104的簡化示意圖。如前面所提及,診斷系統(tǒng)104可以被實現(xiàn)為車載部件、子系統(tǒng)或模塊,或者根據(jù)需要其可以實現(xiàn)為耦合到通信總線106上的非車載設(shè)備或部件,以執(zhí)行下面更詳細描述的功能。相應(yīng)地,圖2描述了表示不管實施診斷系統(tǒng)104的方式如何而應(yīng)用的診斷系統(tǒng)104的極度簡化示意圖。在一些實施例中,診斷系統(tǒng)104被實現(xiàn)為(或在主車輛上的中央網(wǎng)關(guān)模塊中實施)主車輛上的中央網(wǎng)關(guān)模塊,其中該中央網(wǎng)關(guān)模塊經(jīng)由通信總線106耦合到ECU 102上。中央網(wǎng)關(guān)模塊還可用作與多個不同主車輛上的CAN通信的集中式接口。因此,中央網(wǎng)關(guān)模塊可以對多于一個的車輛車載CAN執(zhí)行診斷程序(包括接地偏移檢測)。在其它實施例中,診斷系統(tǒng)104被實現(xiàn)為(或在主車輛外部的診斷工具中實施)主車輛外部的診斷工具(即,非車載工具)。診斷工具包括適當配置的與通信總線106建立通信的接口,如圖1所示。例如,診斷工具可以被實現(xiàn)為具有連接電纜的計算機系統(tǒng)(例如,筆記本電腦、平板電腦或移動設(shè)備),該連接電纜與主車輛上的插頭、插口或接口兼容。
診斷系統(tǒng)104通常包括但不限于至少一個處理器設(shè)備110和與處理器設(shè)備110相關(guān)聯(lián)的至少一個存儲介質(zhì)112。在一些實施例中,處理器設(shè)備110和存儲介質(zhì)112在諸如微控制器或ASIC的單個集成電路部件中實現(xiàn)。診斷系統(tǒng)104還可包括某些輸入/輸出(I/O)特征114。實際上,診斷系統(tǒng)104可以包括或與附加元件、設(shè)備、部件或特征(其支持附加功能或者支持本文所述的技術(shù)和方法)協(xié)作。
存儲介質(zhì)112(或另一個存儲設(shè)備或部件)可以表示具有存儲在其上的處理器可執(zhí)行指令的有形非暫態(tài)電子存儲介質(zhì)。當這些指令由包括至少一個處理器設(shè)備(比如,處理器設(shè)備110)的處理器體系結(jié)構(gòu)執(zhí)行時,這些指令能夠執(zhí)行本文更詳細描述的各種方法、流程和功能。更具體地,處理器設(shè)備110執(zhí)行存儲在存儲介質(zhì)112中的指令,以執(zhí)行將接地偏移源定位在電子設(shè)備(例如,基于車輛的CAN)的網(wǎng)絡(luò)中的方法。就此而言,診斷系統(tǒng)104可被編程成執(zhí)行指令,這些指令有效地將可為通用計算平臺的部件轉(zhuǎn)換成支持本文呈現(xiàn)的工藝、技術(shù)和方法的專用裝置。這特別適用于可利用計算機設(shè)備的外部非車載實施方式。
I/O特征114可以用于發(fā)起或控制診斷系統(tǒng)104的功能和/或根據(jù)需要生成適當格式的輸出。在實踐中,I/O特征114可包括例如CAN收發(fā)器、模數(shù)轉(zhuǎn)換器等。就此而言,I/O特征114可以將ECU中的一個或多個標識為接地偏移的電勢源。在某些實施例中,I/O特征114可以生成診斷故障代碼,這些診斷故障代碼表示由診斷系統(tǒng)104檢測的接地偏移條件。在一些實施例中,I/O特征114用于發(fā)出警報或警告消息,生成診斷報告,顯示測試結(jié)果等。按照需要以及根據(jù)特定實施例,這些和其它報告功能可以由診斷系統(tǒng)104支持。
診斷系統(tǒng)104執(zhí)行計算機可讀指令來監(jiān)測通信總線106上的消息的電壓特性,以標識具有接地偏移的ECU。就此而言,圖3是示出了具有多個ECU的正常CAN的信號電壓特性的圖。在圖3中,電壓信號的上“半部分”對應(yīng)于CAN高位,電壓信號的下“半部分”對應(yīng)于CAN低位(其與CAN高位相反)。圖3示出了所有ECU接地都處于正常狀態(tài)中時的典型的預(yù)期CAN電壓信號,其中平均幀和幀間電壓約為2.5伏。
圖3示出了四種CAN消息的電壓信號特性:第一消息202;第二消息204;第三消息206;以及第四消息208。各消息的末尾通過電壓信號中的尖峰進行標記,其由其它確認該幀的ECU引起,且其先于在下一消息前出現(xiàn)的幀間間隔。值得注意的是,四種消息中的每一種中的峰值幀內(nèi)電壓在約為3.5伏的CAN高位及約為2.5伏的CAN低位時相對穩(wěn)定和一致。而且,每一消息的平均幀電壓在約2.5伏時相對穩(wěn)定和一致。這些特性表明了適當接地的ECU。換言之,產(chǎn)生圖3所示的四種消息的ECU中的任何一個都不存在接地偏移。
對于本文所述的示例性實施例而言,CAN消息以500kBd的速率進行傳輸。然而,在其它實施例中,可以利用不同的速率,例如92.5kBd、125kBd和250kBd。系統(tǒng)實際利用的速率可隨應(yīng)用的不同而變化。而且,ECU產(chǎn)生的CAN消息可不必長度相同。相反,根據(jù)需要傳輸?shù)臄?shù)據(jù)的量,CAN消息的長度可在0~8個字節(jié)之間變化。這可在圖3中觀察到。速率為500kBd時,總共由128個比特組成的、包含8個使用標準尋址的數(shù)據(jù)字節(jié)的CAN幀的傳輸需要花費216微秒??偣灿?08個比特組成的、包含8個使用擴展尋址的數(shù)據(jù)字節(jié)的CAN幀的傳輸需要花費256微秒。本文呈現(xiàn)的示例性實施例假設(shè)能夠在250微秒或更少的時間內(nèi)傳輸CAN消息。在實踐中,本文所述的系統(tǒng)所處理的CAN消息至少有88微秒長。
為了便于理解,圖3緊接著示出了四種消息。在實踐中,CAN中不同的ECU根據(jù)不同的時間表來傳輸其各自的消息。此外,消息傳輸速率可以隨ECU的不同而變化。例如,給定的ECU每25、50、100或250毫秒就可傳輸一次給定的消息。這些傳輸周期僅僅是示例性的,且如果需要的話,系統(tǒng)的實施例可以利用不同的周期。相應(yīng)地,一些ECU產(chǎn)生較高百分比的在CAN上傳輸?shù)南ⅲ渌麰CU則產(chǎn)生較低量的消息流量。
與圖3所示的內(nèi)容相反,圖4是示出了指示接地偏移條件的信號電壓特性的視圖。在本文中,第一消息212、第三消息216和第四消息218表示適當?shù)慕拥氐臈l件(其類似于圖3中所示的正常電壓特性)。然而,第二消息214具有指示接地偏移條件的電壓特性。就該示例而言,產(chǎn)生消息214的ECU使其接地電壓被提升(其接地電壓大于零)。該接地偏移在錯誤ECU傳輸消息時使得CAN高位和CAN低位都被提升。接地偏移條件致使第二消息214相對于其它消息的級別向上偏移。就該特定示例而言,第二消息214的峰值幀內(nèi)電壓在CAN高位處約為4.0伏(與正常級別為3.5伏相比),其在CAN低位處為3.0伏(與正常級別為2.5伏相比)。第二消息214的平均幀內(nèi)電壓也向上偏移了約0.5伏,幾乎達到3.0伏。
雖然圖4所示的接地偏移在整個信號電壓都被示出的情況下容易以可視化的方式進行檢測,但是使用合算和實用的硬件和軟件來以自動化的方式進行檢測可能是非常困難的。本文呈現(xiàn)的方法表示實用的解決方案,其中該解決方案可以通過在合理的頻率下對CAN總線電壓進行取樣來檢測和標識車輛車載CAN中的接地偏移源(位置)。就此而言,圖5是示出了總線電壓監(jiān)測過程500的示例性實施例的流程圖,圖6是示出了消息時間戳和分析過程600的示例性實施例的流程圖。執(zhí)行的各種與示出的過程相關(guān)的任務(wù)可由軟件、硬件、固件或其任意組合來執(zhí)行。出于說明的目的,過程500和600的以下描述可指上述與圖1至圖4相關(guān)的元件。應(yīng)意識到,示出的過程可包括任何數(shù)量的附加或替代任務(wù),圖中所示的任務(wù)不必以示出的順序進行執(zhí)行,并且示出的過程可納入到具有未在本文詳細所述的附加功能的更復(fù)雜的程序或過程中。而且,只要預(yù)期的整體功能保持完整無缺,就可從所述過程的實施例中省去一個或多個任務(wù)。
在某些示例性實施例中,過程500和600獨立地且彼此并行地執(zhí)行(假設(shè)已經(jīng)啟動過程600)。就此而言,與過程500相關(guān)聯(lián)的任務(wù)可以由第一處理例程或線程來執(zhí)行,而與過程600相關(guān)聯(lián)的任務(wù)可以由第二處理例程或線程來執(zhí)行,其中,兩個例程/線程以同時且并行的方式獨立地執(zhí)行。過程500對CAN總線上存在的信號電壓進行取樣,檢查用于表示接地偏移狀態(tài)的測量電壓以及保存表示接地偏移的電壓測量值的時間戳。過程600對消息進行時間戳標記,將消息時間戳與所保存的電壓時間戳進行比較以及嘗試將“異?!彪妷簻y量值與特定消息和引起該特定消息的ECU相互關(guān)聯(lián)。
參照圖5,總線電壓監(jiān)測過程500測量通信總線上存在的信號電壓(任務(wù)502)并且在測量電壓被讀取時對其進行時間戳標記(任務(wù)504)。時間戳標記利用可以由診斷系統(tǒng)104或主車輛上的模塊進行維持的基準時鐘。任務(wù)504中獲得的電壓時間戳標識測量電壓被讀取的時間。過程500繼續(xù)檢查測量信號電壓是否表示接地偏移條件、狀態(tài)或特征(查詢?nèi)蝿?wù)506)。對于本具體實施例,過程500將測量信號電壓與預(yù)定閾值電壓進行比較。超過規(guī)定的閾值電壓的測量信號電壓假設(shè)是由接地偏移引起。對于圖4所示的情形,3.7伏特的閾值電壓用于CAN高位,而2.8伏特的閾值電壓用于CAN低位,以便捕獲偏移消息。
如果測量信號電壓大于閾值電壓(查詢?nèi)蝿?wù)506的“是”分支),則過程500假設(shè)所檢測到的信號電壓表示接地偏移條件。過程500可檢查所檢測到的接地偏移條件是否是“初始”檢測(查詢?nèi)蝿?wù)508)。如果是(查詢?nèi)蝿?wù)508的“是”分支),則可以啟動消息時間戳標記和分析過程600(任務(wù)510),并且過程500繼續(xù)到任務(wù)512。如果不是(查詢?nèi)蝿?wù)508的“否”分支),則過程500繞過任務(wù)510并行進到任務(wù)512。應(yīng)意識到,任務(wù)510(其是可選的)用作開始過程600的觸發(fā)器。這種觸發(fā)器最好是能夠在所有測量信號電壓正常時,在正常工作條件下節(jié)省處理資源和內(nèi)存。因此,過程600僅在需要時執(zhí)行,即,僅在已經(jīng)檢測到偏移信號電壓時執(zhí)行。
本示例假設(shè)信號電壓測量值超過閾值,并且由此,過程500繼續(xù)標識信號電壓測量值并將其對應(yīng)的時間戳(本文稱為“電壓時間戳”)保存至緩沖器或任何合適的存儲器結(jié)構(gòu)(任務(wù)512)。緩沖器可以根據(jù)需要進行管理,以便維持任意所需數(shù)量的電壓時間戳。盡管沒有作出要求,但是,信號電壓測量值還可以與其各自的電壓時間戳相關(guān)聯(lián)地進行保存,從而使得測量信號電壓記錄為表示接地偏移條件。
過程500以正在進行的且重復(fù)的方式進行,直到完成診斷操作。相應(yīng)地,圖5示出了返回到任務(wù)502的任務(wù)512,任務(wù)502再次在下一個取樣時間測量信號電壓。因此,過程500可以重復(fù)進行來收集多個電壓時間戳,該多個電壓時間戳與表示接地偏移狀態(tài)的所檢測到的信號電壓相對應(yīng)。值得注意的是,過程500無需嘗試對出現(xiàn)在總線上的每一個消息進行取樣。盡管這樣做是有可能,但是,測量所有消息的信號電壓并不切合實際或者經(jīng)濟。根據(jù)某些實施例,任務(wù)502以小于消息傳輸平均速率約4倍或5倍的速率進行。如果過程500在足夠長的時段(例如,若干分鐘)內(nèi)重復(fù)進行,則檢測到接地偏移的可能性非常地高,即使在該時段內(nèi)將不會對所有消息進行取樣。換言之,任務(wù)502將最終捕獲偏移信號電壓,這是因為ECU中的接地偏移將保持持久存在或者隨著時間變得更糟。
現(xiàn)在參照圖6,消息時間戳標記和分析過程600可通過如下操作開始:讀取總線上的消息并將各自的時間戳(本文稱為“消息時間戳”)添加至消息(任務(wù)602)。在任務(wù)602中進行的時間戳標記利用了也用于電壓時間戳的基準時鐘和/或與基準時鐘同步的時鐘。在任務(wù)602中添加的消息時間戳標識接收相關(guān)聯(lián)消息的時間。對于本文所述的實施例,消息時間戳與消息的末尾對齊。參照圖3,各消息的末尾在由確認該消息的其它ECU所引起的信號電壓尖峰之后立即出現(xiàn)。在可替代實施例中,消息時間戳可以相對于消息的持續(xù)時間添加來與任意便利位置相對應(yīng),只要該位置是已知和/或一致的。
任務(wù)602導(dǎo)致一個或多個消息具有與其相關(guān)聯(lián)的各自消息時間戳。過程600繼續(xù)將所保存的電壓時間戳與消息時間戳進行比較(任務(wù)604)。如上文結(jié)合過程500所述,緩沖的電壓時間戳與可能由具有接地偏移的ECU所引起的偏移電壓讀數(shù)相對應(yīng)。相應(yīng)地,任務(wù)604通過包含電壓時間戳的緩沖器進行迭代,以將所保存的電壓時間戳與特定的消息時間戳進行比較??蛇x地,過程600可以通過多個不同的消息時間戳進行迭代,以將不同的消息時間戳與特定的電壓時間戳進行比較。無論時間戳進行比較的方式如何,過程600都搜索對應(yīng)的時間戳(查詢?nèi)蝿?wù)606)。
對于本示例,查詢?nèi)蝿?wù)606確定特定消息的消息時間戳與保存的電壓時間戳的差值是否小于預(yù)定閾值。基于期望的精確性、處理時間和效率、消息傳輸速率、平均消息長度等選擇閾值。本文呈現(xiàn)的實施例針對500kBd的CAN利用250微秒的閾值,但是可以利用更大的閾值獲得有效且精確的結(jié)果。閾值表示指示兩個時間戳在時間上是否足夠近的“時間戳窗”,用于將偏移電壓測量值與特定消息相關(guān)聯(lián)。因此,如果消息時間戳與電壓時間戳的差值小于250微秒,則過程600假設(shè)所述時間戳對應(yīng)于相同的消息?;蛘?,過程600假設(shè)所述時間戳對應(yīng)于不同的消息。
如果時間戳不對應(yīng)(查詢?nèi)蝿?wù)606的“否”分支),則過程600檢查電壓時間戳的齡期。如果電壓時間戳太早(查詢?nèi)蝿?wù)607的“是”分支),則將相應(yīng)的電壓時間戳條目從緩沖存儲器中移除(任務(wù)608),并且過程600返回到任務(wù)602以繼續(xù)讀取消息并對消息進行時間戳標記。如果電壓時間戳還未到期(查詢?nèi)蝿?wù)607的“否”分支),則維持其緩沖條目并且過程600返回到任務(wù)602以繼續(xù)讀取消息并對消息進行時間戳標記。在某些實施例中,電壓時間戳保留在緩沖器中僅800微秒。因此,時間戳緩沖器在任何給定時間很少含有五個至十個以上的條目。應(yīng)意識到,800微秒限制僅僅是示例性的,并且如果需要的話,可以使用其它時間限制。
本描述假設(shè)過程600發(fā)現(xiàn)了在時間上與消息時間戳接近對準的保存的電壓時間戳(查詢?nèi)蝿?wù)606的“是”分支)。當這種情況發(fā)生時,對相關(guān)聯(lián)的消息(即具有特定消息時間戳的消息)進行分析,以獲得標識符(任務(wù)610)。如上文所述,每個消息都包括被唯一映射到僅一個起始源(ECU)的標識符。因此,任務(wù)610查看消息的內(nèi)容并且提取適當?shù)臉俗R符。過程600繼續(xù)將獲得的標識符映射到其對應(yīng)的電子設(shè)備,對于本示例,所述電子設(shè)備為車載ECU的一個特定電子設(shè)備(任務(wù)612)。
該系統(tǒng)針對每個ECU都維持接地偏移計數(shù)器,其可以為接地偏移的潛在來源。針對在任務(wù)612被標識的ECU,過程600將計數(shù)器值遞增。對于每次“點擊”,可以把計數(shù)器值遞增任意量,但是優(yōu)選地每一點擊經(jīng)過一個計數(shù)。在診斷檢查的期限內(nèi),給定計數(shù)器可響應(yīng)于接地偏移的精確探測而遞增,或者其可能由于噪音、定時問題、同步問題、傳輸延時等而被錯誤地遞增。但是,花費至少幾分鐘的診斷檢查在收集精確的統(tǒng)計數(shù)字(每個ECU的計數(shù)器值)方面應(yīng)該是有效的,所述精確的統(tǒng)計數(shù)字可以被解釋為正確地指示哪些ECU(如果有的話)具有接地偏移。
過程600可以將至少一個ECU標識為接地偏移源(任務(wù)616)。這種標識基于時間戳的比較,并且其可以基于計數(shù)器值的統(tǒng)計分析。另外,過程600可以制備、創(chuàng)建和產(chǎn)生標識哪個ECU具有接地偏移的適當格式的輸出(任務(wù)618)。根據(jù)診斷系統(tǒng)的特定實施方式,任務(wù)618可產(chǎn)生以下各項中的一個或多個,但是并不限于:對所述發(fā)現(xiàn)進行匯總的報告;指示接地偏移條件的診斷故障代碼;包括結(jié)果的顯示器,所述結(jié)果可包括書面概述、計數(shù)器值或圖形;以及報警通知或消息。
雖然在前面的詳細描述中呈現(xiàn)了至少一個示例性實施例,但是應(yīng)意識到存在極大數(shù)量的變形。還應(yīng)意識到,本文所述的一個示例性實施例或多個示例性實施例并不旨在以任以任何方式限制所要求保護的主題的范圍、適用性或者構(gòu)型。相反,前面的詳細描述將提供給本領(lǐng)域技術(shù)人員實現(xiàn)所述的一個實施例或多個實施例的便捷路線圖。應(yīng)當理解,在元件的功能和配置方面可以作出多種改變而不偏離由權(quán)利要求所限定的范圍,此范圍包括在提出本專利申請時已知的等價物和可預(yù)見的等價物。