朱琳
【摘? 要】CAN網絡通信能夠大大提升汽車上各控制器之間的交互通信速率,在保證通信可靠性的前提下大大精簡整車布線。而實現CAN網絡通信前,需要先建立好整車CAN網絡通信數據庫。本文將以某輕卡CAN網絡通信數據庫的建立過程為例,介紹如何使用當下主流通信數據庫建立工具CANdb++ Editor,來進行CAN網絡通信數據庫的建立。
【關鍵詞】CAN網絡通信數據庫;建立過程;數據庫建立工具
中圖分類號:U463.6? ? 文獻標志碼:A? ? 文章編號:1003-8639( 2023 )06-0068-03
Establishing Method of CAN Network Communication Database on a Certain Light Truck
ZHU Lin
(Anhui Jianghuai Automobile Group Co.,Ltd.,Hefei 230601,China)
【Abstract】CAN network communication can greatly improve the interactive communication rate between controllers on the vehicle and greatly simplify the vehicle wiring on the premise of ensuring the reliability of communication. Before the realization of CAN network communication,it is necessary to establish the vehicle CAN network communication database. This paper will take a light truck CAN network communication database establishment process as an example,introduce how to use the current mainstream communication database establishment tool CANdb++ Editor,to establish CAN network communication database.
【Key words】CAN network communication database;establishing process;database establishment tool
1? 技術背景
隨著社會的進步和技術的發展,中國汽車行業正在快速蓬勃發展,汽車用戶對于汽車產品的關注點已經不再局限于動力性、經濟性、可靠性和安全性,而是越來越側重于汽車的駕乘舒適性和智能化的人際交互。為滿足市場需求,各大車企也在不斷進行技術升級,越來越多的控制器被配置到汽車上。過多控制器的交互,會增加整車線束的復雜性,降低汽車維修方便性和可靠性,由此,CAN網絡通信正在逐步取代原有的硬線通信。
CAN網絡通信設計的首要步驟,是建立數據庫。CAN網絡通信數據庫描述了整車CAN網絡的構成,包含了CAN網絡節點、信息幀、信號內容、收發情況和屬性等。當前主流的CAN網絡通信數據庫建立工具有很多,其中被各大主機廠應用較為普遍的工具是CANdb++ Editor,它由Vector公司開發,可對數據庫中Node、Massage、Signal進行定義和修改。
2? 技術方案詳細闡述
以表1中的CAN信號矩陣為例,逐步介紹使用CANdb++ Editor建立CAN網絡通信數據庫的方法。
2.1? 新建一個數據庫文件
首先啟動CANoe軟件,在Tools中選擇CANdb++ Editor,見圖1。
彈出Vector CANdb++ Editor窗口,在File中選擇Create Database…后,彈出Template窗口,見圖2。以本輕卡項目為例,因為CAN信號ID是以SAE J1939協議為模板的擴展幀,所以選擇J1939Template.dbc作為模版,創建一個新的擴展幀數據庫,根據需求輸入數據庫文件的名稱,選擇保存位置,見圖3。
2.2? 根據CAN信號矩陣,創建信號
在Overall View窗口,右鍵Signals,選擇New,在彈出對話框的Definition頁設置信號BCM_APMCmd_2U的名稱、長度、系數、偏移量、最大最小值等信息,見圖4。
2.3? 根據CAN信號矩陣,創建信息幀
在Overall View窗口,右鍵Messages,選擇New,在彈出的對話框的Definition頁設置信息幀BCMWindowControl的名稱、類型、ID、DLC,見圖5;在Attributes頁GenMsgCycleTime中,設置該信息幀循環周期,見圖6。
2.4? 根據CAN信號矩陣,創建節點
在Overall View窗口,右鍵Network Nodes,選擇New,在彈出的對話框的Definition頁,設置BCM節點的名稱、源地址,見圖7。
2.5? 根據CAN信號矩陣,創建數值表
在View中選擇Value Talbes,在彈出的Value Talbe對話框中,右鍵空白處,選擇New…見圖8。
在彈出的Value Talbe對話框Definition頁中設置數值表名稱,在Value Descriptions頁中,按照CAN信號矩陣輸入BCM_APMCmd_2U信號中每個數值的定義,見圖9。
2.6? 建立數值表與信號的關聯
在Overall View窗口中雙擊信號BCM_APMCmd_2U,在彈出對話框的Definition頁的Value Talbe中選擇對應的數值表,信號APM_WinsSts與數值表的關聯同理,見圖10。
2.7? 建立信號與信息幀,信息幀與節點的關聯
在Overall View窗口中雙擊信息幀BCMWindow Control,在彈出對話框的Signals頁,添加信號BCM_ APMCmd_2U,見圖11;在Layout頁,調整該信號起始位為0,見圖12。
在Transmitters頁,選擇信號BCM_APMCmd_2U的發送節點為BCM,見圖13;在Receivers頁,選擇信號BCM_APMCmd_2U的接收節點為APM,見圖14;信號APM_WinsSts與信息幀APM_Alarmstatus、節點APM的關聯同理。完成后在Overall View窗口中檢查數值表、信號、信息幀、節點的關聯是否準確,見圖15。
2.8? 建立信號矩陣
在View中選擇Communication Matrix…,選擇剛剛建立的數據庫文件,可看到完成后的信號矩陣,見圖16,對照信號列表逐條校核無誤后保存。
3? 結束語
CAN網絡通信數據庫的建立是整車CAN網絡通信設計的基礎,由于信號、節點較多,需要研發人員在產品開發過程中,合理分配各節點信號的收發情況,盡可能減少不必要的信號負載,在建立數據庫的過程中,充分討論數據分配的合理性,使整車CAN網絡通信更加簡潔高效。
參考文獻:
[1] 楊金升,張可晨,唐新宇. CANoe開發從入門到精通[M]. 北京:清華大學出版社,2019.
[2] 牛躍聽. CAN總線嵌入式開發——從入門到實踐(第3版)[M]. 北京:北京航空航天大學出版社,2020.
[3] 羅峰,孫澤昌. 汽車CAN總線系統原理、設計與應用[M]. 北京:電子工業出版社,2010.
(編輯? 楊凱麟)