王學(xué)士
(杭州浙大奧博汽車電器有限公司,浙江 杭州 310030)
隨著汽車電子技術(shù)的迅猛發(fā)展及對(duì)汽車性能要求的不斷提高,汽車上的電子裝置越來越多,如:發(fā)動(dòng)機(jī)電子控制裝置、ABS、自動(dòng)變速箱控制系統(tǒng)、自動(dòng)巡航控制系統(tǒng)以及車身上的自動(dòng)空調(diào)系統(tǒng)、電動(dòng)門窗、電動(dòng)后視鏡、自動(dòng)亮燈系統(tǒng)、電動(dòng)座椅等。這些電子裝置之間巨大的數(shù)據(jù)交換量,如果仍然采用傳統(tǒng)的數(shù)據(jù)交換的方法,即用導(dǎo)線進(jìn)行點(diǎn)對(duì)點(diǎn)連接的方式,將是難以想象的,而且,在傳統(tǒng)的汽車電器中,僅有開關(guān)和執(zhí)行器等這樣的簡(jiǎn)單設(shè)備,并且各個(gè)設(shè)備之間采用點(diǎn)到點(diǎn)的方式進(jìn)行連線。隨著汽車其它電器的增加,這種連接方式直接導(dǎo)致了汽車的線束越來越龐大,線束的體積、可靠性、重量已成為日益突出的問題。然而,總線技術(shù)的快速發(fā)展為解決此問題提供了可能。通過總線技術(shù),可以將汽車上的各電子裝置及設(shè)備連接起來,實(shí)現(xiàn)相互間的信息共享,這樣既減少了線束,又可更好的控制和協(xié)調(diào)汽車的各個(gè)系統(tǒng),使汽車的各項(xiàng)性能達(dá)到最佳效果。
CAN總線上的節(jié)點(diǎn)是指連接在CAN總線上的傳感器部件、執(zhí)行部件或控制器單元等。CAN總線是通過允許節(jié)點(diǎn)間對(duì)等的傳播數(shù)據(jù)來實(shí)現(xiàn)網(wǎng)絡(luò)之間的數(shù)據(jù)通訊。CAN總線節(jié)點(diǎn)之間的通訊,既可以是單向的,也可以是雙向的,這個(gè)視具體情況而定。
CAN節(jié)點(diǎn)的構(gòu)成是多種多樣的,但是由于受到總線收發(fā)器物理信號(hào)驅(qū)動(dòng)能力的限制,在一個(gè)CAN總線網(wǎng)絡(luò)上,最多可掛接110個(gè)節(jié)點(diǎn)設(shè)備。CAN節(jié)點(diǎn)設(shè)備的關(guān)鍵部分是CAN網(wǎng)絡(luò)控制器和CAN總線收發(fā)器,由它們來實(shí)現(xiàn)CAN總線的物理層和數(shù)據(jù)鏈路層之間的通訊協(xié)議。圖一是CAN總線節(jié)點(diǎn)常用的結(jié)構(gòu)示意圖,信息通過CAN控制器和CAN收發(fā)器發(fā)送到總線,并在另一個(gè)節(jié)點(diǎn)由收發(fā)器和控制器接收到單片機(jī)中。
圖1 CAN總線節(jié)點(diǎn)結(jié)構(gòu)示意圖
CAN總線的基本特性有多個(gè)方面。下面簡(jiǎn)要介紹幾個(gè)方面:報(bào)文:節(jié)點(diǎn)一次性要發(fā)送的數(shù)據(jù)塊。CAN總線上的信息以不同格式報(bào)文發(fā)送,但長度有限制。當(dāng)總線開放時(shí),任何連接單元都可以開始發(fā)送一個(gè)新的報(bào)文。位速率:CAN的數(shù)據(jù)傳輸率在不同系統(tǒng)中是可以各不相同的。但是,在一個(gè)給定系統(tǒng)中,數(shù)據(jù)傳輸速率是唯一的并且是固定的。優(yōu)先權(quán):在總線訪問期間,標(biāo)識(shí)符定義了一個(gè)報(bào)文靜態(tài)優(yōu)先權(quán)。當(dāng)多個(gè)節(jié)點(diǎn)同時(shí)發(fā)送數(shù)據(jù)時(shí),可以通過優(yōu)先權(quán)來決定占用總線的數(shù)據(jù)。
我們可以將汽車車身電器分為八組,每組由一個(gè)節(jié)點(diǎn)與CAN總線相連。這些節(jié)點(diǎn)分別為:開關(guān)控制節(jié)點(diǎn)、前照燈控制節(jié)點(diǎn)、后尾燈控制節(jié)點(diǎn)、左前門控制節(jié)點(diǎn)、左后門控制節(jié)點(diǎn)、右前門控制節(jié)點(diǎn)、右后門控制節(jié)點(diǎn)及雨刮器控制節(jié)點(diǎn)等。具體如圖2所示:
圖2 汽車車身電器控制系統(tǒng)節(jié)點(diǎn)分布
CAN總線各節(jié)點(diǎn)的硬件設(shè)計(jì)是重點(diǎn)。我們把汽車車身電器劃分的八個(gè)節(jié)點(diǎn),按照硬件組成分為三類:輸入節(jié)點(diǎn)、輸出節(jié)點(diǎn)、網(wǎng)關(guān)節(jié)點(diǎn)。我們采用S9S08DZ60單片機(jī)做為微處理器(此微處理器本身帶CAN模塊),收發(fā)器采用TJA1050,輸出接口使用功率芯片直接驅(qū)動(dòng)執(zhí)行器件,這樣就組成了CAN總線節(jié)點(diǎn)硬件電路。其電路結(jié)構(gòu)如圖3所示:
圖3 CAN總線節(jié)點(diǎn)硬件電路結(jié)構(gòu)
汽車車身電器各節(jié)點(diǎn)主程序的主要目的是監(jiān)控本節(jié)點(diǎn)中各電器的運(yùn)行狀態(tài),采用查詢方式編程。輸入節(jié)點(diǎn)的主程序主要查詢開關(guān)的閉合或斷開狀態(tài),并將查詢的狀態(tài)存入單片機(jī)的寄存器中。要注意的是,輸入節(jié)點(diǎn)中監(jiān)測(cè)開關(guān)信號(hào)時(shí),要加適當(dāng)?shù)难訒r(shí)以避免開關(guān)抖動(dòng)產(chǎn)生錯(cuò)誤判斷。輸出節(jié)點(diǎn)的主程序主要查詢CAN總線上的數(shù)據(jù)來控制相應(yīng)的電器。網(wǎng)關(guān)節(jié)點(diǎn)的主程序查詢總線所有總線上的數(shù)據(jù)并將遵照CAN協(xié)議的將數(shù)據(jù)轉(zhuǎn)換為符合標(biāo)準(zhǔn)的數(shù)據(jù)。下面簡(jiǎn)要介紹輸入節(jié)點(diǎn)程序流程圖,如圖4所示。
圖4 輸入節(jié)點(diǎn)程序流程圖
由于卓越的實(shí)時(shí)特性、極高的可靠性和獨(dú)特的性能,CAN總線己經(jīng)在汽車工業(yè)、航空工業(yè)、控制安全防護(hù)、嵌入式網(wǎng)絡(luò)和保安系統(tǒng)等領(lǐng)域得到了廣泛的應(yīng)用。隨著汽車車身電器技術(shù)的進(jìn)一步發(fā)展,就像在20世紀(jì)70年代引入集成電路,80年代引入微處理器一樣,CAN總線技術(shù)的引入也將是汽車車身電器技術(shù)發(fā)展的一個(gè)里程碑。
[1]陽憲惠.現(xiàn)場(chǎng)總線技術(shù)及應(yīng)用[M].北京:清華大學(xué)出版社,2000.
[2]史久根,張培仁,陳真勇.CAN現(xiàn)場(chǎng)總線系統(tǒng)設(shè)計(jì)技術(shù)[M].北京:國防工業(yè)出版社,2004:40-142.
[3]秦貴和.汽車網(wǎng)絡(luò)技術(shù)[M].北京:機(jī)械工業(yè)出版社,2003:31-38.
[4]汪宏杰.CAN、LIN總線在汽車車身網(wǎng)絡(luò)控制中的研究與應(yīng)用[D].上海:同濟(jì)大學(xué),2003.