王紅霞,苗青,馮慧娟,王鐵成
(1.天津工業大學工程教學實習訓練中心,天津 300387;2.河北工業大學,天津 300401)
WANG Hong-xia1,MIAO Qing2,FENG Hui-juan2,WANG Tie-cheng2
(1.Engineering Practice and Teaching Training Center,Tianjin Polytechnic University,Tianjin 300387;2.Engineering Training Center,Hebei University of Technology,Tianjin 300040)
基于CANoe和CANScope的CAN總線故障診斷及分析應用
王紅霞1,苗青2,馮慧娟2,王鐵成2
(1.天津工業大學工程教學實習訓練中心,天津 300387;2.河北工業大學,天津 300401)
隨著汽車電子技術的發展,更多的電子控制單元(ECU)應用到汽車上。電子控制單元在汽車上需要共享和傳遞大量信息,CAN總線網絡具有非破壞性的網絡機制、比較高的通信速率,越來越多的汽車、電池管理系統等制造商把CAN總線應用于汽車控制方面。CAN總線網絡可將各個模塊電子控制單元連接起來,實現數據共享,完成復雜的智能控制和故障診斷,這樣就大大提高整車的性能[1]。
由于汽車電控系統日益復雜,在CAN總線網絡的開發流程中,需要提前對設計結果進行仿真評價和故障分析,以確定所設計的總線網絡是否完善、設計的協議是否能夠符合要求。CANoe和CANScope是總線仿真和故障分析的工具,可以幫助設計人員進行完整的各項總線網絡的系統仿真和故障分析,從而確保CAN總線網絡達到更好效果[2-3]。
1.1CANoe、CANScope 簡介
CANoe是由德國Vector公司開發并行的總線工具,它除具有網絡監測和分析兩項功能外,還可以實現系統仿真的功能。CANoe自身帶數據管理工具CAN-db++,通過CANdb++可以創建和修改數據庫。由于CANoe偏重的是一個仿真和監控CAN總線狀態的工具,如果子網LECU出現故障時,它就不能對故障進行分析,這時要借助CANScope來分析[4]。
CANScope是分析、記錄和評估CAN總線上的電壓值的測量儀器??梢酝ㄟ^CANScope分析影響CAN總線的一些因,還可以通過設置各種觸發條件顯示記錄總線的CAN-H、CAN-L及差壓電壓的波形,觀察CAN信號的瞬變情況,分析噪聲的特性,從而對具體模塊進行調試[4]。
1.2測試系統平臺的構建
整個測試系統主要由電池管理系統的BMU及LECU電路板、CANoe軟硬件模塊、穩壓電源和PC機等組成,其中CANoe的硬件模塊CANcaseXL支持兩路CAN通道一路與電池管理系統的BMU(高速CAN)網絡接口相連,另一路則與電池管理系統的LECU的中速CAN網絡接口相連。
接入CANoe環境的可以是虛擬的仿真節點,也可以是實際的物理節點。經過系統分析和網絡設計的建模仿真階段后,可以將部分仿真節點用已有的物理節點代替,進行系統測試的半實物仿真階段,最后進入完全由物理節點組成的實物仿真階段。
在CANoe集成操作環境中 建立子網Local CAN總線的構成 (圖1),其中是由9個LECU節點和1個BMU節點,以及1個CANoe的監控節點構成[5];

圖1 Local CAN總線的構成
在對圖1采用CANoe監控過程中,出現的故障現象描述:①LocalCAN總線偶爾出現故障幀;②在上電過程或者下電后再上電過程中,1個或數個模塊丟失CAN總線數據,但采用BMU睡眠和喚醒指令的模式下,原有的CAN信息不丟失;
2.1子網出現故障幀分析
使用CANScope,對Local CAN總線偶爾出現故障幀進行分析。在通過反復上電,保證所有CAN節點都能發出信息的狀態下,利用CANScope抓取完整的一幀CAN信息,如圖2所示:

圖2 9個模塊的Local_CAN波形
由圖2的波形看出CAN-L出現負電平尖峰,CANH的高電平被拉低到約1V,偏低;造成這種波形的典型原因有兩種,一種是CAN節點過多,另一種是硬件設計不規范;
為了確定造成故障的具體原因,做了如下幾個實驗:
(1)首先確定是否是CAN節點過多引起的故障,這樣將第6、7、8號模塊在線從CAN總線上移出,然后采用CANScope抓取同一禎的完整CAN信息,CAN總線狀態如圖3所示:

圖3 去除模塊6、7、8號后的Local_CAN波形
從圖3的波形可以看出,此時CAN總線狀態非常好,這樣初步推斷可能是掛入的模塊過多造成的通訊故障。
(2)此時,應該確定再掛入多少模塊,就會產生故障,這樣將把7號模塊在線接入CAN總線,此時共7個模塊,采用CANScope抓取同一禎的完整CAN信息,CAN總線狀態也如圖3所示,接著再把8號模塊也在線接入CAN總線,用CANScope抓取的CAN總線狀態也如圖3所示,沒有問題,最后將6號模塊在線接入CAN總線,采用CANScope抓取同一禎的完整CAN信息時,CAN總線狀態又變化為如圖2所示的波形,故障再次出現。
(3)由于在接入6號模塊之后,故障波形再次出現,從而可以推斷出或者是6號模塊的硬件設計有問題或者是超過10個節點會導致CAN總線狀態失常;為了確認故障是否發生在6號模塊,又做了如下實驗:把1~5、7~9這8個模塊從總線上移出,單獨分析第6個模塊的波形;采用CANScope抓取同一禎的完整CAN信息,CAN總線狀態如圖4所示:

圖4 第6個模塊的單獨CAN波形
從圖4可以確認,確實是第6個模塊的硬件出現了故障,造成CAN總線狀態失常。
更換第6個模塊的LECU,仍就單獨分析第6個模塊的波形,得到的波形如圖5所示;從圖5可以看出,更換后的LECU硬件無問題

圖5 更換LECU后的第6個模塊單獨CAN波形
(4)在保證所有電控部分的硬件無問題后,將Local CAN恢復成初始狀態,來驗證是否CAN總線超過10個節點會失常,采用CANScope抓取同一禎的完整CAN信息,CAN總線狀態如圖3所示,此時CAN總線狀態正常,再利用CANoe工具監控總線信息一段時間,不再出現故障禎。至此,Local CAN總線偶爾出現故障禎的問題得到解決。
2.2上下電CAN信息丟失分析
在把子網Local CAN總線偶爾出現故障禎后,開始分析在上電過程或者下電后再上電過程中,1個或數個模塊丟失CAN總線數據的原因。初步認為是該模塊的MCU未能正常工作造成的;而在上下電過程中,造成MCU未能正常工作的原因一般是復位電路的上電延時不夠或下電的延時太長;在出現該故障狀態的情況下,將出現該故障MCU的復位管腳與0電平短路再移除,發現此時該MCU能夠正常工作;再對照設計的復位電路如下圖七進行分析;發現該MCU的上電復位電路R值太小,才51歐姆,一般該R的設定值為2K~4.7K,所以判斷確實是上電復位延時太短造成了MCU不能正常工作;解決的方法是將該R值更換成2K的電阻后,反復頻繁的上電,不再出現上電MCU不工作的情況;

圖6 MCU的復位電路
但從圖6可以看出,如果電阻改為2K后,該電路在下電時,MCU的復位管腳下電延時太長導致重啟,使MCU也不能正常工作;典型的MCU復位電路如圖八所示;通過在VCC和MCU/REST間跨接一個二極管,可以保證下電時,電容上的電量通過二極管快速瀉放掉;

圖7 典型的MCU復位電路
將復位電路改成圖7所示電路后,重復給MCU上下電,發現仍然出現掉電再上電,MCU工作不正常;再分析VCC端的電路,發現VCC端的電容量太大,造成0.1uF電容上的電量瀉放時間被VCC端的電解電容電量瀉放時間限定;VCC端的電容量如圖8所示;

圖8 D和R的兩端電容示意圖
因此在VCC對地端并聯了120歐姆/1W的電阻,重復該試驗,電阻并聯如圖9所示;再重復上下電,MCU不再出現不工作的故障情況;但考慮在硬件電路已經做好的情況下,外接120歐姆/1W的電阻如果不用開關電路控制,會造成電路的功耗增大,所以最終的解決方法是在BMU中設定LECU斷電再上電的延時時間,將該延時時間設定在500ms,BMU控制LECU的電源重復通斷電,通過CANOE監控LECU的信息是否丟失;發現LECU在試驗過程中信息完整,至此,在上下電過程中數據丟失的故障排除。

圖9 并聯電阻示意圖
在電池管理系統中,子網LECU采集數據必須要準確,否則影響BMU數據,影響SOC的估算等。當汽車跑車、充電過程中,子網出現故障導致采集數據不準確時,如果把LECU板子換下來測試板子問題,這樣需要的時間會比較長,而采用CANoe和CANScope進行仿真測試時可以有效的縮短故障處理時間,并能有效地指導工程師對系統進行修改和完善,以保證系統的開發質量與進度,同時也保證了在對整車性能進行測試時,使整個系統安全、穩定高效地運行。
[1]王旭芳.基于SAEJ1939協議的汽車CAN總線控制系統的設計與測試[D].重慶郵電大學,2008.6.
[2]張宏,詹德凱.基于CAN總線的汽車故障診斷系統研究與設計[J].汽車工程,2008,30(10):934-937.
[3]李頂根,曹晶.基于CANoe-MATLAB的車輛CAN總線的聯合仿真[J].計算機應用,2009,11,10(6):57-61.
[4]Vector Informatik GmbH.CANoe Installation Guide,CANoe User Guide,CANdb++User Guide[M].Eb-erdingen:SATZTEAM Fotosatz &NeueMedienGm-bh,2002
[5]南金瑞,孫逢春,王建群.純電動汽車電池管理系統的設計及應用[J].清華大學學報(自然科學版),2007,47(22):l831-1834.
WANG Hong-xia1,MIAO Qing2,FENG Hui-juan2,WANG Tie-cheng2
(1.Engineering Practice and Teaching Training Center,Tianjin Polytechnic University,Tianjin 300387;2.Engineering Training Center,Hebei University of Technology,Tianjin 300040)
CANoe;CANScope;Simulation Test;Fault Analysis
Fault Diagnose and Analysis of CAN Bus Based on CANoe and CANScope
1007-1423(2015)31-0061-05
10.3969/j.issn.1007-1423.2015.31.016
2015-10-20
2015-11-02
利用CAN總線分析工具CANoe構建CAN系統測試平臺,在集成環境中建立子網LocalCAN總線的模擬網絡節點,通過CANoe提供的總線接口硬件對真實網絡和CANoe模擬的虛擬網絡節點進行聯網調試,在調試過程中用CANoe監控總線的故障,用CANScope記錄故障數據進行采集和分析,并利用分析結果對CAN總線進行重新修正和完善,以達到更好的效果。
CANoe;CANScope;仿真測試;故障分析
The CAN bus analysis tools CANoe is used to construct the CAN system test platform.The subnet LocalCAN bus simulation network nodes are established in this integrated environment.This platform is debugging on the real network and virtual network nodes,its bus interface hardware is provided by the CANoe.The CANoe monitors the bus fault in the debugging process.The fault data is recorded by the CANScope,it is also collected for analysis by the CANScope.Then uses the collection results to correct and revamp the CAN bus for achieving a better effect.