龔 暉,謝 甦,夏永強,趙能卿,劉 婷,涂將輝,胡鵬飛
(江鈴汽車股份有限公司,江西 南昌 330001)
整車CAN總線技術已經提出有30多年,CAN總線技術因其具有可靠性、實時性、靈活性等諸多優點應用廣泛且日漸成熟,CAN是一種串行通信方式實現整車通信[1]。常用的高速CAN波特率為500 kb/s,一般具有通信速率高、實時性要求高以及安全等級高等特點,負載率的定義為實際數據傳輸速率和理論上能達到的數據傳輸速率的比值[2]。實際上負載率的含義為在時間上資源被使用的情況。負載率過高,容易產生網絡擁堵、信號傳輸延遲、報文傳輸丟失等情況[3]。因此,負載率過高,嚴重影響了整車節點模塊之間的通信,會導致通信失敗的情況。本文對某車型開發的總線網絡的總線負載率進行仿真測試,基于CANoe在實車上測試網絡通信的穩定性。根據測試結果對問題逐個分析,并提出因負載率引起的問題解決方案。
某輕型商用汽車的網絡拓撲設計,結合了整車網絡節點功能需求、速度需求、子系統劃分的原則。建立以獨立網關為核心的4網段網絡拓撲結構,設計的汽車整體網絡節點拓撲如圖1所示。這4路CAN分別為車身CAN、動力CAN、底盤CAN、TBOX CAN。基于功能和網絡要求設計整車網絡信號矩陣。根據已經開發好的信號矩陣,利用信號矩陣工具生成DBC文件。
圖1 網絡拓撲圖
使用網絡負載率仿真軟件CANoe創建仿真環境,將各個節點模塊的信號加載到仿真平臺中,分別建立各路網段的網絡負載率平臺,虛擬節點可以模擬發出對應真實節點的報文。圖2為車身CAN的仿真環境,圖3為動力CAN的仿真環境,圖4為TBOX CAN的仿真環境,圖5為底盤 CAN的仿真環境。
圖2 車身CAN的仿真環境
圖3 動力CAN的仿真環境
分別仿真每個網段的網絡負載率,得到如表1的各個網段的網絡負載率,并利用CANoe采集實車的網絡信號數據,得到整車實際的負載率。
圖4 TBOX CAN的仿真環境
圖5 底盤 CAN的仿真環境
表1 整車負載率仿真統計與實車負載率統計
根據上述仿真分析得到的網絡數據結果表明:①仿真結果和實車測試結果基本吻合,仿真的負載率略低于整車實際的負載率;②車身CAN、TBOX CAN、底盤CAN的總線負載率較低,滿足整車的通信要求;③設計的動力CAN負載率高于50%,根據經驗,負載率較高,正常負載率應控制在50%以內,負載率高于50%存在報文傳輸延遲、丟幀等通信不穩定的情況出現。因此,此網絡設計需要優化。
在整車網絡開發階段,網絡測試是必不可少的一部分,其中動態網絡測試很容易測試出網絡的通信問題,為整車網絡開發提供有效的測試驗證[4]。負載率過高容易導致報文傳輸延遲、丟幀等通信不穩定的情況出現,為了驗證當前負載率對整車網絡通信穩定性的影響,動態網絡測試可測試車輛行駛過程中勻速行駛過程、加速/制動過程、大功率負載動作過程、射頻裝置工作過程、高環路面、FCPA路面、高速、特殊路面、壞路、平路、起伏路等各種環境下的測試,監控網絡發送周期與整車網絡開發要求是否一致,同時也能檢驗出網絡通信是否穩定。基于以上工況,分別進行各種工況為期2h的路試測試,并基于CANoe工具監控4路網段的報文發送周期是否與整車設計網絡周期一致。
利用CANoe軟件建立工程進行自動監控報文并實時跟蹤報文周期,建立的工程自動識別信號矩陣中的模塊信號。CANoe軟件監控總線發送報文周期是否超出10%,超出這個范圍則記錄下來,網絡報文周期一致性測試模型如圖6所示,根據數據統計得到表2中的問題。
圖6 網絡報文周期一致性測試模型
表2 報文周期一致性測試問題統計
從目前測試結果分析:有很多報文周期延時的情況,如動力CAN上的0x142、0x281等報文出現延時,延時超過10%以上;另外網關轉發的0x111、0x213、0x321、0x270、0x325等報文有時間延遲出現。經確認,介于動力CAN總線負載率平均值在50%以上,導致報文周期延時,比如以0x325為例,PEPS發送的325報文,EMS需要接收PEPS發送的0x325報文,會影響到EMS節點的RC校驗,因為EMS采集的當前值有可能是上個周期的值,這樣就會造成循環對比錯誤。
基于動力CAN負載率過高導致網絡通信延時的問題,目前唯一的解決辦法就是優化網絡,使得網絡負載率盡可能低。目前優化負載率的方法有很多,如降低報文占用時間、報文周期調整、網絡拓撲結構的優化、網絡類型調整等方式[5]。后面兩種方式均能有效降低總線負載,但是從工程角度來說,考慮到這兩種方式成本較高,主要采用降低報文占用時間、調整周期這兩種方法。具體實施方法有如下幾種。
1)考慮到很多報文通過網關轉發,其所占的時間累加較多,但一整幀報文轉發并非所有的信號都需要,因此將多幀轉發報文合并成一幀報文,另外還有兩幀報文存在設計冗余,可以取消報文轉發。這樣大大降低報文轉發。
2)對逐個信號進行分析,調整過多占用位數的精度信號,盡量將信號排布在一幀報文中,避免出現空余位未填充的情況。
3)對逐個報文周期進行分析,調整信號發送周期,適當將周期時間延長。
4)對優先級比較重要的信號重點關注,功能等級要求低的信號偶爾出現延遲不影響功能使用信號適當調低報文優先級。
基于上述的幾種方法,降低動力CAN的負載率,優化之前實車測試負載率數據為56.95%,當前實車測試的負載率有47.04%左右。同時路試跟蹤整車網絡的穩定性,之前出現的問題基本解決,未出現上一節中描述的問題。說明負載率過高導致的報文周期一致性問題得到有效改善,網絡優化方案效果明顯。如圖7所示。
圖7 動力CAN總線負載率實車測試
隨著整車功能的豐富、主被動安全技術的應用、排放升級等整車功能需求增加,整車的電子電器模塊節點也越來越多,所以對整車網絡負載率的研究愈發重要?;陂_發的網絡分別進行網絡負載率仿真,實車測試每一路CAN的負載率。同時,通過整車路試測試進行網絡通信報文周期一致性分析,結果表明:負載率過高,容易產生實際報文周期與設計周期相比有延遲的情況。根據實際工程需求,采取行之有效的措施降低動力CAN的總線負載率,對比優化前后的網絡負載率以及網絡通信情況,負載率降低能增加網絡通信穩定性。