安徽農業大學工學院 張文康 馬曉晴
基于CAN總線的電動汽車車燈控制系統研究
安徽農業大學工學院 張文康 馬曉晴
【摘要】CAN是德國博世公司于1980年開發的一種用于汽車的串行數據總線,滿足SAE對C類高速汽車網絡的要求,適合傳動動力和底座電子系統的信息傳輸,還應用在車載系統的信息傳輸。在車燈系統設計時,利用CAN總線,可以顯著提升汽車的應用性。本文提出了CAN總線設計車燈的方法:主節點通過CAN總線控制若干個從節點,進而達到對汽車上各種類型的燈的控制。實驗表明:這個方法對于車燈的控制具有實時性,準確性的特點,有效的降低了車內線路的復雜性,提高了車燈控制系統的使用性能和自動化性能。
【關鍵詞】CAN總線;電動汽車;車燈控制系統
車燈系統由照明,信號系統兩部分組成。包括前燈(遠視燈,近視燈),轉向燈,霧燈,制動燈(左,右制動等),倒車燈和警示燈等等,不同類型的燈功能也不一樣,安裝位置也不一樣。根據車燈的安裝位置可以分為主節點和從節點。
通過控制節點向其他節點發送控制指令,其他節點接到控制指令后,控制相應位置的車燈。CAN總線觸發協議是有優先級的,根據行駛過程中的安全程度,設定各節點的安全級。開關控制模塊起到發送指令的作用,因此需要很高的安全程度。左右后模塊起到制動與行駛的作用,因此,安全級稍微低于控制開關模塊。
本方案的自動化節點以單片機STC12C5A60S2和SJA1000 CAN總線控制器為核心。CAN控制器是PHILIPS公司最近的新產品功能上同時支持CAN2.0B 和CAN 2.0A。它與82C200的CAN控制器在硬件和軟件系統上的兼容性良好。
本方案的CAN總線的收發器SN65HVD230的電壓為3.3V,起到連接物理層總線的作用,這個部件可以在較寬的范圍內避免電磁波的干擾,對不同的速度傳輸的CAN總線的收發能力很好。硬件設計時,通過SN65HVD230和CAN總線之間的信息傳送,STC12C5A60S2對車燈繼電器具有驅動性。輸入比較器和STC12C5A60S2之間的信息交流是間斷的。
PCA82C250起到連接CAN控 制器和物理總線的作用,為汽車中的通訊而設計。這個部件可以實現對總線信息的發送和接收功能。PCA82C250主要的特點有,和ISO11898的兼容性良好,速度快,作用是抗干擾和保護總線。控制斜率的功能良好,對周圍環境的干擾很小,熱度過量的保護作用,總線與地線之間短路保護的作用,電流較小的保護作用。節點若未通電源則不會干擾總線,總線的連接節點數可達110個。
PCA82C250的8號引腳比較特殊,這個引腳的作用是可以選擇PCA82C250的工作方式。一共有三種工作方法:速度高,斜率控制性好和待機性好。
對于速度很快的工作方法,發送器的晶體管的輸出可以很快的開啟和關閉。在高速工作方式下,對上升和下降的斜率不做限制。這個時候,可以采用電纜屏蔽的方式來減少射頻的干擾性,通過將引腳8接地可以選擇高速的工作方式。對于速度較低的工作方式或比較短的總線的情況,通過使用非屏蔽雙絞線或平行線作為總線,為了降低射頻的干擾性,盡量控制上升和下降的速度。這個速度可以通過對引腳8到地線處的電阻控制,斜率隨著通過引腳8的電流增大而升高。
如果引腳8接高電壓,電路進入低電壓的休眠模式。在這種工作方式的作用下,發送器不工作,將接收器中的電流控制在低水平。檢測時如果發現顯性的電位(引腳4,接收數據的輸出)將轉化為低電壓。控制器通過引腳8將驅動器的狀態調為正常工作狀態以做出響應。
為了增強CAN總線節點抗周圍環境干擾的能力,P87C591和PCA82C259的RXD和TXD沒有直接相連,通過高速率光電耦合器6N137后和PCA82C250的連接,實現了總線上各個節點之間的電氣隔離。然而,需要強調的是,光耦部分電路所用到的兩個電源Vcc 和Vdd必須隔離完全,否則光耦將喪失使用的功能。
PCA82C250與CAN總線連接部分也具有安全性,抗干擾功能。PCA28C250的CANH和CANL上的引腳通過5歐姆的電阻連接CAN總線,電阻可以控制電流的大小,從而免于PCA82C250上的電流過大。CANH,CANL和地線之間并聯了兩個30pF的電容,從而可以控制總線上高頻率的電磁波干擾和輻射性。此外,在兩個CAN總線的輸入側和地線之間出現瞬時的電磁干擾時,防雷管的放電可以對它進行保護。
試驗臺采用整車車身電器,這種部件主要用于轎車,包括車燈,大燈的自動調節,收音機音響,后視鏡,中央門鎖等。
設計軟件的計算機程序采用C語言設計,程序結構為模塊結構,各部分的模塊的分工比較明確。對于STC12C5A60S2和CAN控制器SJA1000復位設計,對于中央節點和不同車燈上的節點設計不同的程序,中央節點的功能通過發送信號到CAN總線,車燈上的節點接收從CAN總線傳送過來的信號。
CAN 2.0B協議規定了CAN物理層與數據層之間的傳輸協議,在進行軟件設計的過程中,根據總線系統各節點的功能,確定總線系統上的節點功能不同,確定相互間交流的數據,根據各節點所需要的信息,制定CAN傳輸的信息,最后對CAN總線中傳導的信息進行分配和標識。優先級通過CAN協議中標示符的數值所確定。在確定ID時,應該先分析該信息的緊急程度,根據車燈的安裝位置和行駛過程中的安全性,最后確定標示符ID。
根據不同作用的軟件設計不同的程序,每個程序具有獨立性,完成各自不同的作用,包括初始化CAN節點,發送信息,接收。和處理數據等。同時,程序之間通過互相調用,分享數據,重復使用代碼,達到簡化代碼的目的。
CAN發送信號的流程如圖1所示,發送信號時只需要將未發送的數據按照指定格式組合成信息,然后送入SJA1000中發送。發送過程中要注意在向SJA1000中的緩存區發送信息的時候,首先要做一些判斷。發送程序分為發送遠程信息和數據信息兩種。
接收作用的節點可以對信息進行接收和處理其它的情況。CAN接收程序的流程圖如圖1所示。接收功能要比發送功能的實現復雜性大的多。節點接收信息時,要關閉總線,分析報警信息的正確性,超量接收等處理情況。SJA1000的接收方式有兩個:中斷和查詢的接收方法。這2個方法的編程思想大體相同。由于對通信的實時性要求不高,本文應用查詢接收的方式。

圖1 CAN總線發送和接收信號的程序
軟件的可靠性的設計在整個設計過程中發揮著重要的作用。如果軟件一旦失去作用,產生的后果將會非常嚴重。主要控制器的使用可靠性可以影響到整個電路控制系統的可靠性和汽車在運行時候的安全。合理的軟件設計可以減少開發所用的時間,提高工作效率,提高控制器的電磁兼容性和工作可靠性。
盡管硬件采取了抗干擾措施,由于干擾信號產生原因的復雜性和隨機性,很難保證系統不容外界環境的干擾。所以,在硬件抗干擾的基礎上,需要對軟件進行抗干擾設計,作為硬件抗干擾的補充。軟件抗干擾的方法簡單,操作靈活,硬件資源利用比較小。
參考文獻
[1]鄭榮良,胡永亮,俞方磊.基于CAN/LIN混合網絡的智能汽車前照燈系統(AFS)的設計[J].拖拉機與農用運輸車,2009(10)∶112-115.
[2]周慧.基于CAN的汽車車燈控制系統設計[J].自動化博覽,2007(4)∶80-82.
[3]饒運濤,鄒繼軍,鄭勇云.現場總線CAN原理與應用技術[M].北京∶北京航空航天大學出社,2003.
作者簡介:
張文康(1994—),男,安徽蚌埠人,大學本科,現就讀于安徽農業大學工學院,主要研究方向:汽車安全控制及新能源汽車。