李雪梅
(安徽江淮汽車集團股份有限公司,安徽 合肥 230601)
CAN總線最初是由德國Bosch公司開發的,當時消費者對汽車性能的要求越來越高,而提升汽車性能的這些控制功能都離不開大量電子裝置的運用,這就使得所有電子裝置之間的連接和通訊會變得越來越復雜,為了解決現代汽車中眾多的控制與測試儀器之間的數據交換,在1986年,Bosch公司開發了面向汽車的 CAN通訊協議,它是一種多主方式的串行數據通信協議,它能夠極大的解決汽車中各種電子部件之間的通訊問題,減少信號線的使用。在1993年,CAN已成為國際標準總線,ISO11898和ISO11519分別對應著高速應用和低速應用。CAN總線被設計為具有較強的抗電磁干擾性,并具備較好的錯誤檢測功能,其通信介質可以是雙絞線、同軸電纜或光導纖維,即使當信號傳輸距離達到10公里時,CAN的數據傳輸率也能夠達到5Kbit/s;當傳輸距離小于40m時,CAN的傳輸速率高達1Mbit/s。
相對于一般的通訊總線而言,CAN總線的設計中運用了全新的設計和技術,其數據傳輸具有突出的實時性、可靠性和靈活性。其特點主要有以下幾點:
(1)具有靈活的通訊方式,CAN為多主工作方式,網絡節點不分主從。(2)CAN網絡的節點信息具有優先級和總線仲裁技術。根據信息優先級的高低可以很快的確定需要發送的信息,從而節省總線沖突仲裁的時間。(3)CAN只需要通過報文濾波即可實現點對點、點對多及全局廣播等幾種方式的數據傳輸,從而不需要單獨的進行報文調度。(4)CAN網絡采用差分傳輸技術,最大傳輸距離可達 10km,此時的傳輸速率為 5kbps;最高速率達到 1Mbps,此時傳輸的最大距離為40m。(5)CAN的標準幀節點數目前可以達到110個,擴展幀的節點不受限制。同時,CAN報文標識符種類較多。(6)CAN的數據通信采用短幀格式,每幀信息都有CRC校驗及其他的檢測措施。(CRC即循環冗余校驗碼:是數據通信領域中最常用的一種查錯校驗碼,其特征是信息字段和校驗字段的長度可以任意選定。循環冗余檢查(CRC)是一種數據傳輸檢錯功能,對數據進行多項式計算,并將得到的結果附在幀的后面,接收設備也執行類似的算法,以保證數據傳輸的正確性和完整性。)(7)CAN總線的通訊接口中包含了 CAN協議的物理層和數據鏈路層,可以完成對通訊數據的幀處理工作。(8)CAN具備較為靈活的通訊介質,其傳輸介質可以為同軸電纜、雙絞線或者光纖。(9)在傳輸過程中若發生嚴重錯誤,CAN節點具有自動關閉輸出的功能,以保證總線上的其他節點的操作不受影響。開放系統互聯模型(Open System Interconnect)是由國際標準化組織和國際電話電報咨詢委員會建立的計算機網絡體系結構,總共有7層,CAN協議也是建立在該模型之上的。CAN的網絡模型只選取了OSI底層的物理層、數據鏈路層和應用層,主要原因是因為 CAN的數據結構相對簡單,應用層可以直接從數據鏈路層中讀或者寫數據,去掉中間層使系統結構層次減少,這樣有利于系統中實時信號的傳送。
汽車儀表的設計理念,就是給與駕駛員清晰、方便、穩定、人性化的一種顯示平臺,盡可能的滿足用戶使用的需求,為駕駛員提供行車駕駛時的整車和外部環境參數,讓駕駛員能夠及時做出準確的判斷,保證駕駛的安全性、舒適性、穩定性。
基于上述要求,本次設計的基于 CAN總線汽車組合儀表應用于微型轎車上,方案設計要切身考慮到駕駛員的感受,并且結合汽車電器技術以及總線技術方面的優勢,進行整體系統結合設計,并提出該汽車組合儀表的整體設計方案。本次設計的汽車組合儀表要遵循以下幾方面的原則:
不能出現信息的滯后,并且對實時變化參數,如車速、轉速、機油壓力、蓄電池等信息能夠實時反映到駕駛員的視線范圍內。
由于汽車行駛在各種路況、天氣環境中,該汽車組合儀表顯示內容應該是穩定可靠的。
采用微控制器的汽車組合儀表應該實時的對控制器的控制技術進行信息更新,要有系統預留升級空間,及時滿足系統升級空間需求。
做到人性化的用戶操作界面,并且要考慮到所選用的各種零部件的經濟性和耐久性,保證使用有限的資金創造更加實用美觀經濟的儀表。
汽車儀表盤電控單元應快速、精確地接收各種傳感器信號,且顯示的控制信號準確可靠并抗干擾。因此在設計中從以下幾個方面進行:
(1)A/D信號采集模塊。燃油消耗傳感器、環境溫度傳感器和蒸發器溫度傳感器的電流信號經過硬件電路的濾波,輸入到MCU中。考慮到整車電壓的不穩定性和傳感器額定電流的限制,這3個傳感器的電源由系統提供。圖1中,R11和R12起限流作用,保證傳感器的電流不超過限定值;C4和C5是去除系統運行產生的高頻噪聲的去耦電容。

圖1 溫度、燃油信號采集電路
(2)開關信號采集模塊。空調開關和空調壓縮機開關的開關信號,經光耦隔離后,提高了抗干擾能力,保證了輸入信號的準確,如圖2所示。

圖2 開關信號采集電路
(3)脈沖信號采集模塊。速度傳感器信號產生的脈沖信號經放大、調理電路后,輸入到單片機的I/O口。圖4中,C1和C2用來濾除R2和R5產生的熱噪聲電壓和電源的干擾電壓,U1A用來將速度傳感器的脈沖信號進行放大,然后傳入MCU的I/O口中。在速度傳感器信號的輸入端和輸出到MCU引腳的一端均加了上拉電阻, 用來提高驅動能力。

圖3 速度信號采集電路

圖4 汽車儀表盤電控單元信號處理軟件流程圖
信號處理軟件由初始化模塊、傳感器信息采集模塊和數據處理模塊組成。數據處理軟件設計有如下要點:①車速顯示。通過車速傳感器監測的汽車行駛速度信號,輸入到微控制器進行處理,包括整形、計數和存儲等,計算得到汽車時速,發出車速表顯示控制信號。②轉速顯示。將來自 CAN總線上發動機電控單元的PWM信號,輸入到微處理器中,檢測其觸發脈沖的上升沿,獲得發動機轉速,發出轉速表顯示控制信號。③油量顯示。油箱液位通過燃油消耗傳感器經A/D轉換器輸入到微處理器,微處理器進行必要的處理,獲得汽車剩余油量,發出油量表顯示控制信號。④水溫顯示。來自 CAN總線上的水溫傳感器信號,輸入到微處理器,發出水溫表顯示控制信號。⑤空調開關狀態顯示。電控單元接收開關量信號,顯示開關狀態。具體流程圖如圖4所示。
總之,以 CAN總線為通信基礎,接收和處理各種外圍傳感器信號,輸出信號通過驅動步進電機進而控制機械指針的旋轉,能夠完成汽車儀表盤的準確顯示,因此進一步加強對其的研究非常有必要。
參考文獻
[1] 邱鑫.基于CAN總線的汽車LCD智能儀表研究與開發[D].重慶交通大學,2014.
[2] 張璐.汽車組合儀表檢測系統電控單元的研究[D].哈爾濱工業大學,2010.
[3] 鄭中華.基于車載總線的節點控制單元的設計與實現[D].吉林大學,2012.