專利名稱:無存儲空間時故障代碼dtc的存儲方法
技術領域:
本發明屬于故障診斷技術領域,涉及一種存儲故障代碼的方法,尤其涉及一種在沒有存儲空間時存儲故障代碼的方法。
背景技術:
目前,為了能更好的解決車輛出現的問題,各主要控制器都做了相應的診斷,因此控制器都為診斷代碼(DTC)分配了相應的存儲空間,但各整車廠對各控制器的診斷服務要求不一樣,而且是隨著行業標準的提升而升級的。而為了用最小的成本實現所需的功能,零部件廠家會根據當前階段的情況來選擇存儲器。一旦整車廠在開發過程中需要增加診斷的功能,而剛好沒有足夠的存儲空間,零部件廠家往往要求整車廠支付一大筆費用用于硬件的重新開發,這會大大增加整個車輛的開發成本。
發明內容
本發明正是在車輛控制器未為故障代碼DTC留出足夠的存儲空間的基礎上為故障代碼DTC提供一種存儲方法,本發明的技術方案如下:一種無存儲空間時故障代碼的存儲方法,當存在需要故障診斷而自身沒有為故障代碼預留足夠存儲空間的第一模塊時,若所述第一模塊所在的總線上存在空余存儲空間等于或者大于所述第一模塊所述存儲空間的第二模塊,則將所述第一模塊的故障代碼存儲到所述第二模塊上。所述存儲方法將故障代碼以應用幀的形式發送到所述總線上,所述第二模塊從所述總線上接收到所述應用幀后,對所述應用幀的內容進行解析并存儲在所述第二模塊的存儲空間里。所述故障診斷代碼的存儲標識符為未被總線上其他模塊所使用的標識符。所述存儲方法還包括,讀取所述故障代碼時,通過尋找所述應用幀得到所述故障代碼。所述第二模塊還可以是雖然存儲空間不足但是增大存儲空間比第一模塊增大存儲空間所消耗的成本更低的模塊。本發明提供的在無存儲空間時故障代碼DTC的存儲方法,從整車的角度來考慮故障代碼DTC的存儲,在某個控制器沒有足夠的存儲空間時利用其總線上其他節點的存儲空間,便于整車廠對某零部件突然增加診斷功能而其本身存儲空間又不足的處理,避免了向供應商提供大量的重新開發該零部件的費用,降低了整車的成本,且加快了整車的研制進度。
圖1本發明實施例中車輛CAN總線及其上的控制器連接示意圖。
具體實施例方式下面結合附圖和具體實施例進一步闡述本發明的技術方案。本發明基于整車上某些控制器在研發初期由于沒有故障診斷的要求或者要求較低而未給故障代碼DTC預留出足夠的存儲空間,導致在后期需要整合更多的故障診斷功能時已經沒有足夠的存儲空間供新的故障代碼存儲用的問題,提出了一種在無存儲空間時故障代碼DTC的存儲方法。本發明的無存儲空間時故障代碼DTC的存儲方法為將沒有空間存儲診斷代碼DTC的模塊的診斷代碼存儲到與該模塊相連的總線上連接的其他的擁有足夠存儲空間的模塊上。如圖1所示為一車型整車CAN總線上連接的各控制器模塊,包括發動機管理系統(EMS)、防抱死制動系統(ABS)、儀表(I⑶)、安全氣囊控制器(A⑶)、車身控制模塊(BCM)和4輪驅動控制器(4WD)。在設計之初,整車廠沒有要求很高的安全標準,對4輪驅動控制器4WD不要求做通訊診斷,比如與發動機管理系統EMS的通訊丟失等。但是,在繼續開發的過程中,由于整車廠提高了整車的安全標準,需要對4輪驅動控制器4WD模塊做通訊診斷的功能,而此時4輪驅動控制器4WD模塊已經沒有存儲空間用來記錄故障代碼DTC 了。如果讓4輪驅動控制器4WD模塊重新開發硬件平臺,供應商則要求整車廠提供昂貴的開發費用。CAN總線是當前整車上最常用的總線。在整車CAN網絡中,除了 4輪驅動控制器4WD模塊之外還有其它的CAN節點,這些節點中對于存儲器的空間都是有預留的,比如車身控制模塊BCM和儀表ICU等重要節點,因此可以用這兩個節點來記錄4輪驅動控制器4WD的故障代碼DTC,本實施例中選擇用車身控制模塊BCM來記錄4輪驅動控制器4WD的故障代碼 DTC。當4輪驅動控制器4WD診斷到通訊故障的故障代碼DTC時,比如,與發動機管理系統EMS通訊丟失的故障代碼DTC。它將該故障代碼DTC以應用幀的形式發送到CAN總線上,其總線標識符CAN ID可以設置為OxlFO,當發動機管理系統BCM接收到CAN ID為OxlFO的信息時,就解析里面的內容存儲到自身的存儲空間中,這樣就完成了四輪驅動控制器4WD模塊通訊故障的存儲。如果CAN診斷ID0x7Fl沒有任何模塊使用,則可以約定0x7Fl作為診斷四輪驅動控制器4WD通訊故障的CAN ID。當用診斷儀發送出0x7Fl的CAN ID時,車身控制模塊BCM對該診斷命令進行反饋,將四輪驅動控制器模塊4WD的通訊故障代碼DTC反饋給診斷儀,這樣就完成了 4WD通訊故障診斷DTC碼的讀取。通過上面這個策略,在不改變四輪驅動控制器模塊4WD自身的硬件時,就能完成四輪驅動控制器模塊4WD通訊故障DTC碼的存儲和讀取。此外,如果CAN節點上的其他模塊的存儲空間同樣不足以存儲該故障DTC碼,則可以選擇增大存儲空間比四輪驅動控制器模塊4WD增大存儲空間所消耗的成本更小的模塊作為存儲該故障DTC碼的模塊。該方法只是針對在開發過程中出現的突發情況,為了節省整車廠開發成本的一個妥協的策略。如果在整車開發之初就確認有這個需求,則應該讓四輪驅動控制器模塊4WD預留出足夠的存儲空間來記錄自身的故障代碼DTC,以免給后續平臺化帶來困難。上述實施例只是以四輪驅動控制器模塊4WD作為例子來說明該發明的存儲方法,在整車的研發過程也可能會有其他節點會出現這種情況,如乘客側承重傳感器PLS(Passenger Load Sensor)、陽光雨量傳感器SRS (Sun-Rain Sensor)及方向盤轉角傳感器SAS (Steering angle sensor)等。除了上述傳感器外,當然還有其它一些傳感器和控制器等設備可能出現存儲空間不足的情形,均是由于這些設備相對簡單,其前期研發不一定會有故障診斷的要求,或對故障診斷的要求很簡單而使得他們一開始設計時沒有預留出足夠的存儲空間供故障代碼DTC存儲,當后期需要對其進行故障診斷時,均可采用本發明的方法利用相同總線上其他節點的存儲空間來存儲該模塊的故障代碼DTC。上述的對實施例的描述是為便于該技術領域的普通技術人員能理解和應用本發明。熟悉本領域技術的人員顯然可以容易地對這些實施例做出各種修改,并把在此說明的一般原理應用到其他實施例中而不必經過創造性的勞動。因此,本發明不限于這里的實施例,本領域技術人員根據本發明的揭示,不脫離本發明范疇所做出的改進和修改都應該在本發明的保護范圍之內。
權利要求
1.一種無存儲空間時故障代碼的存儲方法,其特征在于:當存在需要故障診斷而自身沒有為故障代碼預留足夠存儲空間的第一模塊時,若所述第一模塊所在的總線上存在空余存儲空間等于或者大于所述第一模塊所述存儲空間的第二模塊,則將所述第一模塊的故障代碼存儲到所述第二模塊上。
2.根據權利要求1所述的無存儲空間時故障代碼的存儲方法,其特征在于:所述存儲方法將故障代碼以應用幀的形式發送到所述總線上,所述第二模塊從所述總線上接收到所述應用幀后,對所述應用幀的內容進行解析并存儲在所述第二模塊的存儲空間里。
3.根據權利要求1所述的無存儲空間時故障代碼的存儲方法,其特征在于:所述故障代碼的存儲標識符為未被總線上其他模塊所使用的標識符。
4.根據權利要求2所述的無存儲空間時故障代碼的存儲方法,其特征在于:所述存儲方法還包括,讀取所述故障代碼時,通過尋找所述應用幀得到所述故障代碼。
5.根據權利要求1所述的無存儲空間時故障代碼的存儲方法,其特征在于:所述第二模塊是雖然存儲空間不足但是增大存儲空間比第一模塊增大存儲空間所需成本更低的模塊。
全文摘要
本發明公開了一種無存儲空間時故障代碼的存儲方法,屬于故障診斷技術領域。該方法將需要故障診斷而自身沒有為故障代碼預留存儲空間的第一模塊的故障代碼存儲到與第一模塊所在總線相連且能夠為所述故障代碼提供足夠存儲空間的第二模塊上,大大節省了重新研制具有足夠存儲空間的第一模塊所需的成本。
文檔編號G05B23/02GK103116352SQ20131001215
公開日2013年5月22日 申請日期2013年1月11日 優先權日2013年1月11日
發明者張方偉, 丁武俊, 路影, 陳文強, 韋興民, 趙福全 申請人:浙江吉利汽車研究院有限公司杭州分公司, 浙江吉利汽車研究院有限公司, 浙江吉利控股集團有限公司