《電子技術(shù)應(yīng)用》
您所在的位置:首頁 > 嵌入式技術(shù) > 設(shè)計(jì)應(yīng)用 > 基于車載CAN總線的智能剎車系統(tǒng)設(shè)計(jì)
基于車載CAN總線的智能剎車系統(tǒng)設(shè)計(jì)
來源:微型機(jī)與應(yīng)用2012年第23期
林春景1,袁俐萍2
(1.廣東白云學(xué)院 電氣與信息工程學(xué)院,廣東 廣州 510450; 2.華南理工大學(xué)廣州學(xué)院 計(jì)算機(jī)
摘要: 為了避免誤把油門當(dāng)剎車的操作,減少惡性交通事故發(fā)生,設(shè)計(jì)了基于車載CAN總線的智能剎車系統(tǒng)。該系統(tǒng)以PIC18F258單片機(jī)為核心,根據(jù)對油門踏板的上下限時(shí)間差,判斷出把油門當(dāng)剎車的誤操作,通過車載CAN總線以報(bào)文的形式發(fā)送給車載網(wǎng)絡(luò)上的相關(guān)控制單元,使汽車自動(dòng)剎車;并給出了系統(tǒng)的硬件電路和軟件設(shè)計(jì)流程。
Abstract:
Key words :

摘  要: 為了避免誤把油門當(dāng)剎車的操作,減少惡性交通事故發(fā)生,設(shè)計(jì)了基于車載CAN總線智能剎車系統(tǒng)。該系統(tǒng)以PIC18F258單片機(jī)為核心,根據(jù)對油門踏板的上下限時(shí)間差,判斷出把油門當(dāng)剎車的誤操作,通過車載CAN總線以報(bào)文的形式發(fā)送給車載網(wǎng)絡(luò)上的相關(guān)控制單元,使汽車自動(dòng)剎車;并給出了系統(tǒng)的硬件電路和軟件設(shè)計(jì)流程。
關(guān)鍵詞: CAN總線;智能剎車系統(tǒng);PIC18F258;報(bào)文

 汽車安全是汽車工業(yè)和用戶追求的首要目標(biāo)之一。由于現(xiàn)在汽車上的剎車和油門都由右腳控制,一旦遇到突發(fā)事件,慌亂中“把油門誤當(dāng)剎車”是經(jīng)常發(fā)生的,駕駛員誤踩油門所引發(fā)的交通事故占重大交通事故中的12.6%[1]。為了防止誤踩油門事故的發(fā)生,汽車市場迫切需求一種用CAN總線將智能型剎車單元和制動(dòng)單元組合為一體的剎車系統(tǒng)。本文設(shè)計(jì)了以PIC18F258單片機(jī)為核心的智能型剎車控制系統(tǒng),使其與車載CAN網(wǎng)絡(luò)接軌,可以將智能剎車單元信息以報(bào)文形式發(fā)送給車載CAN總線上的其他控制單元,以實(shí)現(xiàn)其必要的功能。這樣,當(dāng)駕駛員誤踩油門時(shí),通過制動(dòng)單元實(shí)現(xiàn)自動(dòng)制動(dòng)功能,保證車輛安全;CAN總線上的儀表控制單元接收信息后,可將其誤踩油門顯示出來。本設(shè)計(jì)對教練車的剎車改進(jìn)有重大意義。
1 基于CAN總線的智能剎車系統(tǒng)框架
1.1 CAN總線

 CAN總線是一種具有很高保密性的現(xiàn)場總線,是德國Bosch公司在20世紀(jì)80年代初為解決現(xiàn)代汽車中眾多的控制和測試儀器之間的數(shù)據(jù)交換而開發(fā)的一種有效支持分布式控制或?qū)崟r(shí)控制的串行通信網(wǎng)絡(luò)。它具有以下特點(diǎn):(1)總線以多主方式工作,系統(tǒng)柔性好,通信方式靈活,且不用占地址等單元信息;(2)CAN總線網(wǎng)絡(luò)上的單元信息分不同的優(yōu)先級(jí),可滿足不同的實(shí)時(shí)要求,所有信息發(fā)送都固定格式發(fā)送;(3)采用非破壞性總線仲裁技術(shù),在網(wǎng)絡(luò)負(fù)載很重的情況下也不會(huì)出現(xiàn)網(wǎng)絡(luò)癱瘓狀況;(4)只通過報(bào)文濾波就可以實(shí)現(xiàn)點(diǎn)對點(diǎn)、一對多點(diǎn)及全局廣播等幾種方式接收傳送數(shù)據(jù);(5)通信速率與距離成反比,5 kb/s以下速率直接通信距離可達(dá)10 km,40 m內(nèi)通信最高速率可達(dá)1 Mb/s;(6)具有錯(cuò)誤檢測功能、錯(cuò)誤通知功能和錯(cuò)誤恢復(fù)功能;(7)CAN總線單元在出現(xiàn)嚴(yán)重錯(cuò)誤情況下會(huì)自動(dòng)關(guān)閉輸出功能,以便總線上其他單元的操作不受影響;(8)CAN總線單元數(shù)取決于總線驅(qū)動(dòng)電路,在標(biāo)準(zhǔn)幀(11位報(bào)文標(biāo)識(shí)符)時(shí),可達(dá)110個(gè)單元,而在擴(kuò)展幀(29位報(bào)文標(biāo)識(shí)符)時(shí),單元數(shù)不受限[2-3]。
1.2 剎車智能系統(tǒng)的框架
 由于CAN總線具有以上優(yōu)點(diǎn),現(xiàn)代汽車內(nèi)部的各控制單元是靠CAN總線進(jìn)行通信的,各控制單元發(fā)出的控制指令必須迅速、可靠、及時(shí)地得到響應(yīng),否則,輕則可能導(dǎo)致車輛局部控制失靈,重則可能發(fā)生車毀人亡的重大事故。若整輛汽車的所有控制單元都連接在一個(gè)CAN總線網(wǎng)絡(luò)上,所有的控制單元都通過一條CAN網(wǎng)絡(luò)進(jìn)行通信,那么就很容易出現(xiàn)總線上工點(diǎn)過多,通信速率下降,系統(tǒng)實(shí)時(shí)響應(yīng)速度下降,將導(dǎo)致關(guān)鍵控制部位的實(shí)時(shí)響應(yīng)速度得不到保證。因此,在對汽車上各控制單元的實(shí)時(shí)性進(jìn)行分析之后,根據(jù)各控制單元對實(shí)時(shí)性的不同要求,設(shè)計(jì)了高、低速兩個(gè)速率不同的CAN通信網(wǎng)絡(luò)。將實(shí)時(shí)性要求嚴(yán)格、可靠性要求高的發(fā)動(dòng)機(jī)控制單元、智能剎車單元(本課題設(shè)計(jì)部分)、ABS控制單元以及自動(dòng)變速器控制單元等組成高速CAN通信網(wǎng)絡(luò);將實(shí)時(shí)性要求相對較低的中控門鎖控制單元、電動(dòng)座椅調(diào)節(jié)單元、電動(dòng)車窗控制單元、后視鏡控制單元、儀表控制單元和照明燈控制單元等組成低速CAN通信網(wǎng)絡(luò);并配置中央控制器(網(wǎng)關(guān))將這兩個(gè)速率不同的CAN通信網(wǎng)絡(luò)連接起來,實(shí)現(xiàn)全部單元之間的數(shù)據(jù)共享。高速CAN網(wǎng)絡(luò)的傳輸速率達(dá)到500 kb/s,低速CAN網(wǎng)絡(luò)的傳輸速率大約為10~125 kb/s[4]。汽車控制系統(tǒng)通信網(wǎng)絡(luò)如圖1所示。其中,總線兩端應(yīng)接抑制反射的120 ?贅的終端匹配電阻,如果不接終端電阻,會(huì)使得數(shù)據(jù)通信的抗干擾性及可靠性大大降低,甚至無法通信。在這個(gè)系統(tǒng)中,智能剎車控制單元一旦檢測到誤踩油門信號(hào),就會(huì)向發(fā)動(dòng)機(jī)控制單元、ABS控制單元和自動(dòng)變速器控制單元發(fā)出信息,這些單元根據(jù)信息作出相應(yīng)動(dòng)作,使汽車自動(dòng)剎車。

2  智能剎車單元硬件設(shè)計(jì)
2.1 智能剎車單元的整體設(shè)計(jì)

 智能剎車單元的結(jié)構(gòu)如圖2所示。本設(shè)計(jì)中智能剎車單元以PIC18F258單片機(jī)為控制核心,當(dāng)單片機(jī)檢測到誤踩剎車信號(hào)時(shí),通過CAN總線以報(bào)文的形式發(fā)送到儀表單元并顯示,也可發(fā)送到音響單元進(jìn)行語音報(bào)警,發(fā)送到發(fā)動(dòng)機(jī)控制單元、ABS制動(dòng)單元及自動(dòng)變速箱控制單元自動(dòng)剎車。

 PIC18F258單片機(jī)有著先進(jìn)的精簡指令集構(gòu)架、增強(qiáng)型內(nèi)核,32級(jí)堆棧和多種內(nèi)部及外部中斷源,內(nèi)部帶有CAN總線控制器,并采用了程序和數(shù)據(jù)空間完全分開的“哈佛”結(jié)構(gòu)。這種單片機(jī)結(jié)構(gòu)大大降低了總體成本,同時(shí)提高了運(yùn)行效率和可靠性[5]。
 CTM8251是一款帶隔離的通用CAN收發(fā)器模塊,該模塊內(nèi)部集成了所有必需的CAN隔離及CAN收、發(fā)器件,這些都被集成在不到3 cm2的模塊上。該模塊的主要功能是將CAN控制器的邏輯電平轉(zhuǎn)換為CAN總線的差分電平,并具有DC 2 500 V的隔離功能。取代了CAN總線收發(fā)器及外圍電路,降低了成本和電路復(fù)雜程度,提高了電路可靠性[6]。
2.2 智能剎車單元電路設(shè)計(jì)
 智能剎車單元電路主要用于檢測踩剎車和誤踩油門兩種不同速率的操作。根據(jù)對不同車型踩油門踏板和踩剎車踏板動(dòng)作時(shí)間的調(diào)查(如表1所示),大多數(shù)車從起步加速到100 km/h,從油門踏板上限到油門踏板下限時(shí)間約1 s,一般也很少1 s內(nèi)踩到底,而踩剎車踏板時(shí)間約在0.15 s以下,兩者存在著不是一個(gè)數(shù)量級(jí)的時(shí)間差別[1]。根據(jù)這一特點(diǎn),單片機(jī)可以判別出是誤踩油門還是緊急剎車。
 剎車檢測電路如圖3所示,該電路由油門踏板上限檢測電路和油門踏板下限檢測電路組成。其工作原理為:檢測到踏板速度的上限位時(shí),光敏二極管SPD1沒有接收光二極管D1的光,比較器LM339輸出一個(gè)低電平給單片機(jī)PIC18F258的21(INT0)腳,單片機(jī)計(jì)時(shí)開始;檢測到踏板速度的下限位時(shí),光敏二極管SPD2沒有接收光二極管D2的光,比較器LM339輸出一個(gè)低電平給單片機(jī)PIC18F258的22(INT1)腳,單片機(jī)計(jì)時(shí)停止,并且將該段測得時(shí)間與設(shè)定的限定時(shí)間進(jìn)行比較,以此確定此時(shí)的油門踏板速度是否過快。若踏板速度過快,則啟動(dòng)剎車系統(tǒng);否則,不干預(yù)此次操作。

3 程序設(shè)計(jì)
 程序設(shè)計(jì)框圖如圖4所示。先對單片機(jī)及CAN接口初始化,當(dāng)油門位置處上限時(shí),INT0輸入,開始計(jì)時(shí),到油門位置處下限時(shí),INT1輸入,停止計(jì)時(shí)。算出上下時(shí)間差,當(dāng)時(shí)間差小于限定值時(shí),發(fā)送剎車報(bào)文給CAN總線上相應(yīng)單元,其他單元作出剎車動(dòng)作。CAN總線上通信的軟件設(shè)計(jì)主要包括CAN單元初始化、報(bào)文發(fā)送和報(bào)文接收三部分。CAN接口的初始化程序設(shè)計(jì)是非常重要,如果設(shè)計(jì)得不好,系統(tǒng)將不能正常工作。PIC18F258單片機(jī)的CAN接口初始化首先要在配置模式下將控制寄存器、狀態(tài)寄存器、波特率寄存器、I/O控制寄存器、接收掩碼寄存器和幾個(gè)濾波寄存器按照系統(tǒng)要求設(shè)置好,以保證CAN總線的暢通。

 

 

 本文應(yīng)用PIC18F258單片機(jī)設(shè)計(jì)了基于車載CAN總線的智能剎車系統(tǒng),使其成為車載CAN網(wǎng)絡(luò)的一個(gè)電氣單元。設(shè)計(jì)出了智能剎車系統(tǒng)的硬件電路、CAN總線接口電路及軟件設(shè)計(jì)。智能剎車單元主控芯片PIC18F258通過CAN總線能夠向其他單元發(fā)送報(bào)文數(shù)據(jù),其他控制器經(jīng)過判別而實(shí)現(xiàn)相關(guān)的報(bào)警、顯示及自動(dòng)剎車等功能。該系統(tǒng)能夠?qū)φ`踩油門進(jìn)行有效控制,這對減少和避免交通事故,保障行車安全具有非常重要的現(xiàn)實(shí)意義和應(yīng)用價(jià)值。
參考文獻(xiàn)
[1] 陳松,張娜.基于AT89S52單片機(jī)的誤踩油門控制器的設(shè)計(jì)[J].西昌學(xué)院學(xué)報(bào),2009(9):73-75.
[2] 朱治高,黃春梅.基于CAN總線汽車儀表及顯示系統(tǒng)的實(shí)現(xiàn)[J].機(jī)電工程技術(shù),2008,37(7):49-51.
[3] 邱云峰,尹杰,王義,等.CAN總線技術(shù)在現(xiàn)代汽車網(wǎng)絡(luò)系統(tǒng)中的應(yīng)用[J].貴州大學(xué)學(xué)報(bào),2010(2):92-95.
[4] 黃韜,芮曉艷,葛立峰.基于車載CAN總線的倒車?yán)走_(dá)智能節(jié)點(diǎn)設(shè)計(jì)[J].自動(dòng)化與儀表,2010(7):9-12.
[5] Microchip PIC18FXX8 data sheet. 28/40-pin high-performance, enhanced flash microcontrollers with CAN module[Z].
[6] 宋曉東,王建.電子設(shè)計(jì)工程[J].CAN總線儀表研究,2010(4):35-37.

此內(nèi)容為AET網(wǎng)站原創(chuàng),未經(jīng)授權(quán)禁止轉(zhuǎn)載。