本發明涉及車輛控制系統,特別是用于檢測車輛控制系統中的故障的方法和系統。
背景技術:
:現代車輛控制系統包括系統,子系統和控制器的網絡,它們相互作用以控制車輛的各種部件。例如,車輛控制系統可以包括與車輛的特征的域(domain)(例如車輛動力學)相關聯的子系統。這些子系統中的每一個都可以包括與該域的特征相關聯的一個或多個電子控制單元(ECUs),例如,車輛動力學子系統可以包括與制動相關的ECU。這些子系統還包括與各域子系統相關的功能單元。功能單元可以例如是制動致動傳感器。這些功能單元通常相互連接,這使得快速檢測和定位故障成為挑戰。對于包括許多子系統來針對車輛各個方面進行通信和控制的這些車輛控制系統,對大量電子控制系統進行測試和驗證是非常重要的。此外,車輛控制系統中特征數量的不斷增加繼而又增加了車輛生產成本中與控制系統相關的比例。如用于車輛控制系統的故障檢測方法和系統能夠在生產和研發期間高效且有效地檢測故障,則其會降低生產成本并提高車輛可靠性。技術實現要素:因此,通過提供按照下文所提出的獨立權利要求的方案,本發明優選是要單獨地或以任何組合的方式來減輕或消除本領域中的一個或多個上述缺陷,并至少解決上述問題。根據第一方面,提供了一種用于檢測車輛控制系統中的故障的方法,所述車輛控制系統包括功能單元,所述功能單元具有相關聯的唯一素數(primenumber)標簽。所述方法包括調用每個所述功能單元,所述調用包括一可讀且可更新的整數遍歷值(traversalvalue),在所述功能單元正常工作的情況下,將所述遍歷值更新為所述調用中的所述遍歷值與當前調用的功能單元的標簽的乘積,在有故障的情況下不更新所述遍歷值;以及,根據所述遍歷值,通過與預期遍歷值的比較,確定是否有功能單元有故障,并且,在所述遍歷值不等于所述預期遍歷值的情況下,通過唯一素因子分解算法(uniqueprimefactorizationalgorithm)確定哪個功能單元有故障。在一個實施例中,所述車輛控制系統包括兩個或更多個功能單元。可以按照從數字2開始的素數的升序來關聯所述唯一素數標簽。在一個實施例中,通過將所述遍歷值與預期遍歷值進行比較來檢測故障單元,如果存儲值不等于預期值,則通過唯一素因子分解算法來確定丟失的素因子(primefactor)。所述方法還可以包括訪問一列表,所述列表將一功能單元的描述符與一唯一素數標簽相關聯,以確定任何有故障的功能單元的所述描述符。在一個實施例中,所述車輛控制系統還包括與車輛硬件相關聯的子系統,其中,所述子系統包括所述功能單元,所述方法還包括將所述功能單元與包括其的所述子系統相關聯。在一個實施例中,可以從所述車輛控制系統所包括的所述功能單元中選擇一功能單元子集,使得僅測試該子集的相關或相關聯的功能單元。根據第二方面,提供了一種在車輛控制系統中用于檢測故障的控制器,所述車輛控制系統包括功能單元。所述車輛控制系統的每個所述功能單元分配有唯一素數標簽,所述唯一素數標簽是從數字2開始的素數的升序中選出。用于檢測故障的所述控制器包括:調用所述功能單元的裝置,其中,對所述功能單元的所述調用包括一可讀且可更新的整數遍歷值;用于在所述功能單元正常工作的情況下將所述遍歷值更新為所述調用中的所述遍歷值與當前被調用的功能單元的標簽的乘積以及在有故障的情況下不更新所述遍歷值的裝置;以及一處理單元,所述處理單元被編程為利用唯一素因子分解算法在有故障功能單元的情況下確定哪個功能單元有故障。在一個實施例中,所述處理單元被編程為通過將存儲在檢測信號中的所述乘積與一預期遍歷值進行比較來檢測任何故障功能單元,如果所存儲值不等于所述預期遍歷值,則通過唯一素因子分解算法確定丟失的素因子。根據第三方面,提供了一種方法,所述方法用于提供至少一個實施單元(implementedunit)。所述方法包括向一功能單元分配一唯一素數標簽,其中,所述唯一素數標簽是在從數字2開始的素數的升序中選出分配的。根據第四方面,提供了一種系統,所述系統包括車輛的硬件部件以及根據第三方面所述的控制器,所述車輛的硬件部件與一個或多個功能單元相關聯。附圖說明通過以下的詳細描述并參考附圖來呈現其他目的、特征和優點,其中:圖1是根據一個實施例的方法的示意圖;圖2是根據另一實施例的方法的示意圖;圖3是根據一個實施例的方法的框圖;圖4是根據示例1的方法的框圖;圖5是根據示例2的方法的框圖;圖6是根據示例3的方法的框圖。具體實施方式本發明的以下描述涉及用于檢測車輛控制系統中的故障的方法、控制器和系統,車輛控制系統包括功能單元,功能單元具有相關聯的唯一素數標簽。功能單元可以與車輛的具體部件相關聯。例如,功能單元可以與那些與車輛的運動直接相關的部件相關聯,例如制動致動傳感器。功能單元也可以與那些與車輛輔助方面相關的部件相關聯,例如座椅加熱控制器。通過所描述的方法、控制器和系統,可以高效且有效地檢測和定位一個或多個功能單元的故障。車輛控制系統可以包括一個或多個功能單元,例如兩個或更多個。功能單元可以是由軟件實現的。功能單元被分配唯一素數標簽以使之能夠被識別。該方法20總體上示出于圖2中。在運行期間或運行之前,并且優選在訪問功能單元之后22,可以將唯一素數標簽分配24給功能單元。唯一素數標簽在貫穿整個故障檢測方法中用作功能單元的標識符。分配唯一素數標簽的理想方法是從素數2開始的成升序的素數中來分配唯一素數標簽。也就是說,第一個功能單元的唯一素數標簽分配的是數字2,第二個功能單元的唯一素數標簽分配的是數字3,第三個功能單元的唯一素數標簽分配的是數字5,等等。素數1優選地不被用作功能單元的唯一素數標簽。在故障檢測方法中可以調用每個功能單元。圖1中示意性地示出了故障檢測方法10。對功能單元的該調用12包括一遍歷值。該遍歷值是一整數值,其可以由相應接收的功能單元進行讀取和更新。在故障檢測期間提供14給第一個功能單元的遍歷值是值1。在收到該調用時,在該接收功能單元正常工作的情況下,該接收功能單元可以將該遍歷值更新16成包含在該調用中的遍歷值與當前被調用的功能單元的唯一素數標簽的乘積。該乘法運算產生一整數乘積,該整數乘積是該接收功能單元的唯一素數標簽與所有之前被調用的且沒有出現故障的功能單元的乘積的乘積。然后將該遍歷值更新成等于該乘積。處于故障狀態下的故障功能單元不會更新該遍歷值。因此,有故障的功能單元不會改變該遍歷值。然后,該遍歷值在一調用中又傳遞至下一個功能單元。該下一個功能單元用其自身的唯一素數標簽來重復上述的乘法過程。為了確定是否有功能單元有故障,可以將該遍歷值與一預期的遍歷值進行比較。為了確定18有故障的功能單元而使用了唯一素因子分解算法。在該遍歷值被傳遞至一個或多個功能單元之后,將其與一預期的遍歷值進行比較。該預期遍歷值可以是要進行故障檢測的系統中的功能單元的所有唯一素數標簽的乘積。例如,如果該系統包括分別具有唯一素數標簽為2、3、5、7的功能單元,則該預期遍歷值是2×3×5×7=210。如果該遍歷值等于該預期遍歷值,則表示在該系統中未檢測到故障。如果該遍歷值不等于該預期遍歷值,則表示檢測到一個或多個故障功能單元。通過唯一素因子分解算法來確定有故障的功能單元。下面描述一種唯一素因子分解算法。該遍歷值首先除以該遍歷值的最小素因子(primefactor)。如果商不是素數,則隨后將該商除以下一個最小素因子。針對隨后的素因子重復該過程,直到該商是一個素數。如果該商在任一點處是一個素數了,則停止該過程,并且將素除數(primedivisors)的集合與預期的唯一素數標簽的集合進行比較。在素除數的集合中缺失的唯一素數標簽即是有故障的功能單元的唯一素數標簽。利用該方法,可以檢測單個功能單元中的故障,如示例2所述。也可以檢測多個功能單元中的故障。示例3中描述了檢測多個功能單元中的故障。該車輛控制系統還可以包括與車輛硬件相關聯的子系統。在這種情況下,這些子系統包括這些功能單元。例如,傳動系子系統可以包括與車輛的傳動系相關的組合硬件相關聯的多個功能單元。如果功能單元被包括在子系統中,則該故障檢測方法可以進一步包括將功能單元與包含其的子系統相關聯的步驟。用于車輛控制系統中的該故障檢測方法還可以包括確定哪個硬件部件與功能單元相關聯的步驟。該方法可以包括訪問一列表,該列表將硬件描述符與功能單元相關聯。該列表可以包括唯一素數標簽的序列,其是這些功能單元的唯一素數標簽。該列表還可以包括車輛硬件部件的基于文本或其它形式的描述符,每個唯一素數標簽與一描述符相關。該描述符可以是車輛硬件部件的任何的機器或人可讀的描述符或ID。本文還公開了一種在包括功能單元的車輛控制系統中用于檢測故障的控制器。為了進行識別,車輛控制系統的每個功能單元可以被分配一個唯一素數標簽,該唯一素數標簽是從2開始的素數的升序中選出。用于檢測故障的控制器還包括調用功能單元的裝置,其中,對該功能單元的調用包括一可讀和可更新的遍歷值,以便能夠識別哪個功能單元有故障。該控制器包括一裝置,該裝置在功能單元正常工作的情況下,將遍歷值更新為包含在該調用中的遍歷值與當前被調用的功能單元的唯一素數標簽的乘積,并且,在功能單元處于故障的情況下,不會更新該遍歷值。該控制器還檢測功能單元是否發生故障,這是由于該控制器提供了用于將遍歷值與一預期遍歷值進行比較的裝置,以及用于確定哪個功能單元有故障的的裝置。在遍歷值等于該預期遍歷值的情況下,則表示在車輛控制系統中沒有檢測到故障。在遍歷值不等于該預期遍歷值的情況下,則表示在車輛控制系統中控制器存在一個或多個故障。該控制器可以通過唯一素因子分解算法來確定哪個功能單元存在故障。一種車輛可以包括一種系統,該系統包括車輛的至少一個硬件部件以及上文描述的控制器,該至少一個硬件部件與一個或多個功能單元相關聯。例如,系統可以包括硬件部件(諸如制動致動傳感器)、如上所述的控制器以及至少一個功能單元。該系統還可以包括一列表,該列表將硬件描述符與功能單元相關聯。圖3中示出了根據一個實施例的方法和控制器的框圖表示30。該唯一素數標簽31標識一個功能單元32。還可以存在乘法器33,該乘法器用于將遍歷值與唯一素數標簽31相乘。存儲器單元34可存儲遍歷值和唯一素數標簽的乘積。可以存在多個功能單元35、36。故障比較器和唯一素因子分解單元37可以確定是否有功能單元有故障,以及如果有,則確定哪各功能單元有故障。這些功能單元可以是串聯連接。這些功能單元也可以是并聯連接。這些功能單元也可以是串聯和并聯的組合連接。在一個實施例中,這些功能單元可以是從車輛控制系統中所包含的功能單元中選出的一個子組(subgroup)。在該實施例中,該功能單元子組可以與車輛的一具體功能相關聯。在一個實施例中,該功能單元子組可以與車輛的多個相關功能相關聯。該功能單元子組的預期遍歷值是包含在功能單元子組中的每個功能單元的唯一素數標簽的乘積。處理單元負責該方法的整體工作和控制。該處理單元可以用任何已知的控制器技術來實現,包括但不限于處理器(PLC、CPU、DSP)、FPGA、ASIC或能夠執行預期功能的任何其它合適的數字和/或模擬電路。該處理單元構成了本文所述的該方法的一種實施方式。最后,該系統和控制器可以具有一存儲器,該存儲器可操作地連接到該處理單元。該存儲器可以通過任何已知的存儲器技術來實現,包括但不限于E(E)PROM、S(D)RAM和閃存,并且它還可以包括諸如磁盤或光盤的輔助存儲器。物理上,該存儲器可以由一個單元或多個單元組成,它們一起構成邏輯層面的存儲器。除了存儲通常可用的各種功能和應用的各種程序指令和數據之外,該存儲器還包括用于在該控制器、系統或處理單元中執行的控制軟件應用的程序指令和工作數據。各示例示例1——不存在故障車輛控制系統包括4個功能單元F1-4,這些功能單元按照從數字2開始的唯一素數的順序分配了下列唯一素數標簽。功能單元唯一素數標簽F12F23F35F47第一個功能單元F1以初始遍歷值1被調用。第一個功能單元F1沒有故障,并將遍歷值更新為等于1×2=2。然后,第二個功能單元F2以遍歷值2被調用。第二個功能單元F2沒有故障,并將遍歷值更新為等于2×3=6。然后用遍歷值為6調用第三個功能單元F3。第三個功能單元F3沒有故障,并將遍歷值更新為等于6x5=30。然后,以遍歷值30調用第四個功能單元F4。第四個功能單元F4沒有故障,并將遍歷值更新為等于30x7=210。然后將遍歷值與預期的遍歷值進行比較。在這種情況下,預期遍歷值為2x3x5x7=210。這兩個值相等,因此系統中未檢測到故障。該示例在圖4中以框圖表示。示例2——檢測到一個故障車輛控制系統包括4個功能單元F1-4,這些功能單元按照從數字2開始的唯一素數的順序分配了下列唯一素數標簽。功能單元唯一素數標簽F12F23F35F47第一個功能單元F1以初始遍歷值1被調用。第一個功能單元F1是有故障的,因此不更新遍歷值。然后使用遍歷值1,即未更新的遍歷值來調用第二個功能單元F2。第二個功能單元F2沒有故障,并將遍歷值更新為等于1×3=3。然后,以遍歷值3調用第三個功能單元F3。第三個功能單元F3沒有故障,并且將遍歷值更新為等于3×5=15。然后,以遍歷值15調用第四個功能單元F4。第四個功能單元F4沒有故障,并更新遍歷值等于15×7=105。然后將真實遍歷值與預期遍歷值進行比較。在這種情況下,預期遍歷值為2×3×5×7=210。這兩個值不相等,因此在車輛控制系統中存在故障。可以通過如上所述的素因子分解算法來確定有故障的功能單元。該真實遍歷值除以最小素因子。105的最小素因子是3,因此,105除以3得到商35。將因子3添加到真實遍歷值因子的集合中。然后將先前的商35除以下一個最小素因子5,得到商7。因子5被添加到該真實遍歷值因子的集合。然后將先前的商7除以下一個最小素因子7,得到商為1。將因子7添加到真實遍歷值因子的集合。由于先前的商是1,是素數,所以算法停止。然后將真實遍歷值因子的集合與預期的唯一素數標簽集合進行比較。真實遍歷值因子={3,5,7}預期的唯一素數標簽集合={2,3,5,7}在該示例中,缺失的因子是2。因此,具有標簽2的功能單元是有故障的。此后,具有標簽2的功能單元可以與一列表進行比較,該列表將功能單元與車輛的子系統和具體硬件部件相關聯。例如,具有唯一素數標簽2的該功能單元可以包含在與車輛動力學相關的子系統中并且與制動致動傳感器相關聯。該示例在圖5中以框圖表示。示例3——檢測到兩個故障車輛控制系統包括4個功能單元F1-4,這些功能單元按照從數字2開始的唯一素數的順序分配了下列唯一素數標簽。功能單元唯一素數標簽F12F23F35F47第一個功能單元F1以初始遍歷值為1被調用。第一個功能單元F1有故障,因此不更新遍歷值。然后,第二個功能單元F2被調用,遍歷值為1,即未更新的遍歷值。第二個功能單元F2沒有故障,并將遍歷值更新為等于1×3=3。然后使用遍歷值3來調用第三個功能單元F3。第三個功能單元F3有故障,因此不更新遍歷值。然后,以遍歷值3調用第四個功能單元F4。第四個功能單元F4沒有故障,并將遍歷值更新為等于3×7=21。然后比較真實遍歷值與預期遍歷值。在這種情況下,預期遍歷值為2×3×5×7=210。真實遍歷值為21,這兩個值不相等,因此在車輛控制系統中存在故障。可以通過如上所述的素因子分解算法來確定有故障的功能單元。該真實遍歷值除以最小素因子。21的最小素因子是3,因此,21除以3,得到商7。因子3被添加到真實遍歷值因子集合中。由于之前的商是7,是一個素數,算法停止。然后將真實遍歷值因子集合與預期的唯一素數標簽集合進行比較。真實遍歷值因子={3,7}預期的唯一素數標簽集合={2,3,5,7}在該示例中,存在兩個缺失因子2和5。因此,具有標簽2和5的功能單元是有故障的。此后,具有標簽2和5的功能單元可以與一列表進行比較,如上所述,該列表將功能單元與車輛的子系統和具體硬件部件相關聯。該示例在圖6中以框圖表示。當前第1頁1 2 3