摘 要:討論了基于CAN總線技術的汽車分布式控制系統的組成結構和實現方案,介紹了系統通用模塊和數字化儀表的硬件設計,并選用基于磁耦隔離技術的ADUM1201來提高通信時的抗干擾能力。闡述了系統主控軟件、CAN收發數據軟件設計流程。模塊硬件的通用化設計和主控軟件可靈活升級的特點,使系統可適用于更多車型。
關鍵詞:CAN總線;控制系統;磁耦隔離;軟件設計
引言
隨著計算機技術、網絡通訊技術和集成電路技術的飛速發展,汽車網絡技術應運而生,為簡化汽車上電子控制單元(ECU)之間進行的復雜的信息傳遞和數據交換,已產生了多種網絡標準,如美國汽車工程協會(SAE)的J1850、國際標準化組織(ISO)的VAN和德國博世公司 (BOSCH)的CAN等[1]。其中,CAN總線是BOSCH為解決汽車中眾多的控制與測試儀器之間的數據交換而開發的一種通信協議,具有突出的可靠性、實時性和靈活性[2],近年來,基于CAN總線技術的分布式控制系統越來越廣泛地被應用到汽車上。汽車儀表也隨著電子技術和CAN總線技術的日趨完善而快速向數字化方向發展,并與其它節點組成整車控制網絡,對車輛狀態進行監控。而對位置分散的信號進行通用化監控處理,可使系統具有更靈活的適用性和更便捷的后期維護,適于批量生產。
1 車身控制系統組成結構
系統中數字化儀表和三個通用模塊單獨供電,它們通過雙絞線相連,組成多主CAN網絡,實現節點間數據的雙向傳送。車身系統的控制邏輯運算均由儀表模塊的處理器來完成,儀表模塊通過采集或者通過CAN總線從其它節點獲取車輛狀態信息后,經過邏輯運算,再將控制命令通過CAN總線發送給其它節點,實現對功率負載的控制,同時,儀表還按照SAE J1939協議接收尿素液位ECU和發動機ECU的狀態信息,并將車輛狀態通過點亮LED燈或驅動步進電機帶轉指針來指示,或者以字符或圖標在LCD顯示屏中來顯示,為駕駛員或維護人員實時提供信息。同時,還可通過按鍵進行狀態查詢和參數設置,實現人機互動。
2 車身控制系統硬件設計
2.1 通用模塊設計
為使系統適于分布式安裝,節省大量的線束和繼電器,將信號采集和功率控制節點設計為具有良好互換性的通用模塊。
通用模塊選用飛思卡爾的MC9S08DZ60為主控制芯片,實現對開關、模擬、脈沖信號的采集功能和對功率負載的控制功能,同時具備SPI和CAN通信功能以及通信地址的可配置功能。為實現開關信號、模擬量信號的采集和通信地址可配置,選用多路復用芯片MC33993,它通過SPI與MC9S08DZ60通信,可實現共22路開關信號的輸入,開關信號輸入引腳還可以作為模擬量信號的輸入引腳。當作為模擬信號輸入引腳時,通過SI寫入控制命令,在片選信號CS的上升沿時,將需要采集的模擬量信號接入到AMUX,并在下一個SO輸出數據中將對應引腳位的值置為0。AMUX將捕捉到的最高為VDD電壓的模擬信號接入到主控芯片,實現該信號的A/D轉換。
脈沖信號的采集處理,利用三極管的開關通斷特性,實現對脈沖信號的計數處理。功率負載的輸出控制選用芯片BTS840,它可提供單路12A電流和雙路24A電流,并具備過熱保護和短路、斷路診斷反饋功能,可實現對外接負載工作狀態的監控。
2.2 數字化儀表設計
儀表選用飛思卡爾的MC9S12D64為主控制芯片。該芯片為112腳封裝,有豐富的I/O資源和工業控制專用的通信模塊[4],特別適用于汽車。儀表作為系統主控單元,不必配置通信地址,故可將芯片MC33993的輸入引腳全部用作采集開關信號。為實時監控車輛狀態信息,在儀表上側布有30個LED指示燈陣列,由主控芯片根據對車輛狀態數據進行邏輯運算后,通過I/O引腳控制對應狀態指示燈。
對發動機轉速、車速、機油壓力、蓄電池電壓、發動機冷卻水溫、燃油量和前后橋氣壓等參數,采取驅動步進電機帶動指針來指示刻度表盤的實現方式。步進電機的驅動芯片選用MC33976,通過SPI與主控芯片通信,每個驅動芯片可驅動2個步進電機。
儀表采用240x120像素的LCD屏,在主頁面顯示LOGO、重要參數和報警信息,并可分頁顯示更多信息。儀表還設計有四個按鍵,主控芯片通過中斷方式接收按鍵信號,通過選擇不同按鍵,可實現LCD屏的分頁顯示信息,還可以設置日期、時間、主減速比和單圈脈沖數等參數。
2.3 CAN通信設計
2.4 CAN通信網絡組成
系統的軟件開發環境為Metrowerks公司的CodeWarrior。儀表將所有采集或通過總線接收到的狀態數據經過邏輯運算后,通過LED陣列、LCD屏和步進電機帶動指針顯示當前車輛狀態,并經過CAN總線將控制命令發送給相應模塊,實時控制功率負載的啟停。儀表主控制流程圖如圖3所示。
車身控制系統各個節點間通過CAN總線收發數據,各個節點的控制模塊在主程序中先對CAN控制器進行初始化,分別分配一段內存空間作為接收和發送數據的隊列,并通過中斷完成CAN總線數據的接收和發送,CAN數據的接收和發送流程圖分別如圖4、圖5所示。
4 結束語
本文設計了符合CAN通信協議的儀表和通用模塊,并與發動機ECU和尿素液位ECU通過CAN總線連接組成整車控制網絡,實現了對車輛狀態信息的實時監控。采用ADUM1201作為隔離器件,提高了CAN通信的抗干擾能力。信號和負載的通用處理和儀表的集中控制邏輯運算,使系統的售后維護變得更便捷、靈活。本系統已小批量裝車后運行數萬公里,具有良好的穩定性和可靠性。
參考文獻
[1]李錚,鮮繼清,鄧炳光等.基于CAN總線的汽車組合儀表[J].儀器儀表用戶,2006,13(5):152-153.
[2]王佳,蔡志標等.基于CAN總線純電動汽車整車控制器設計[A].見:孫力,郭淑英,田光宇.2007中國電動車車輛研究與開發[C].北京:北京理工大學出版社,2007:146.
[3]邵貝貝.單片機嵌入式應用的在線開發方法[M].北京:清華大學出版,2004.10:19.
[4]北京晶圓智通科技有限公司.雙通道數字隔離器-ADuM120x[DB/OL].北京:北京晶圓智通科技有限公司,2013.
作者簡介:廖吉春(1975-),男,工程師,碩士,主要研究方向:汽車電子控制系統。
嵇黎明(1978-),女,工程師,本科,主要研究方向:電動汽車動力系統電氣集成。