林春景1,袁俐萍2 來源:微型機與應用2012年第23期 摘要: 為了避免誤把油門當剎車的操作,減少惡性交通事故發生,設計了基于車載CAN總線的智能剎車系統。該系統以PIC18F258單片機為核心,根據對油門踏板的上下限時間差,判斷出把油門當剎車的誤操作,通過車載CAN總線以報文的形式發送給車載網絡上的相關控制單元,使汽車自動剎車;并給出了系統的硬件電路和軟件設計流程。 汽車安全是汽車工業和用戶追求的首要目標之一。由于現在汽車上的剎車和油門都由右腳控制,一旦遇到突發事件,慌亂中“把油門誤當剎車”是經常發生的,駕駛員誤踩油門所引發的交通事故占重大交通事故中的12.6%[1]。為了防止誤踩油門事故的發生,汽車市場迫切需求一種用CAN總線將智能型剎車單元和制動單元組合為一體的剎車系統。本文設計了以PIC18F258單片機為核心的智能型剎車控制系統,使其與車載CAN網絡接軌,可以將智能剎車單元信息以報文形式發送給車載CAN總線上的其他控制單元,以實現其必要的功能。這樣,當駕駛員誤踩油門時,通過制動單元實現自動制動功能,保證車輛安全;CAN總線上的儀表控制單元接收信息后,可將其誤踩油門顯示出來。本設計對教練車的剎車改進有重大意義。 1 基于CAN總線的智能剎車系統框架 1.1 CAN總線 CAN總線是一種具有很高保密性的現場總線,是德國Bosch公司在20世紀80年代初為解決現代汽車中眾多的控制和測試儀器之間的數據交換而開發的一種有效支持分布式控制或實時控制的串行通信網絡。它具有以下特點:(1)總線以多主方式工作,系統柔性好,通信方式靈活,且不用占地址等單元信息;(2)CAN總線網絡上的單元信息分不同的優先級,可滿足不同的實時要求,所有信息發送都固定格式發送;(3)采用非破壞性總線仲裁技術,在網絡負載很重的情況下也不會出現網絡癱瘓狀況;(4)只通過報文濾波就可以實現點對點、一對多點及全局廣播等幾種方式接收傳送數據;(5)通信速率與距離成反比,5 kb/s以下速率直接通信距離可達10 km,40 m內通信最高速率可達1 Mb/s;(6)具有錯誤檢測功能、錯誤通知功能和錯誤恢復功能;(7)CAN總線單元在出現嚴重錯誤情況下會自動關閉輸出功能,以便總線上其他單元的操作不受影響;(8)CAN總線單元數取決于總線驅動電路,在標準幀(11位報文標識符)時,可達110個單元,而在擴展幀(29位報文標識符)時,單元數不受限[2-3]。 1.2 剎車智能系統的框架 由于CAN總線具有以上優點,現代汽車內部的各控制單元是靠CAN總線進行通信的,各控制單元發出的控制指令必須迅速、可靠、及時地得到響應,否則,輕則可能導致車輛局部控制失靈,重則可能發生車毀人亡的重大事故。若整輛汽車的所有控制單元都連接在一個CAN總線網絡上,所有的控制單元都通過一條CAN網絡進行通信,那么就很容易出現總線上工點過多,通信速率下降,系統實時響應速度下降,將導致關鍵控制部位的實時響應速度得不到保證。因此,在對汽車上各控制單元的實時性進行分析之后,根據各控制單元對實時性的不同要求,設計了高、低速兩個速率不同的CAN通信網絡。將實時性要求嚴格、可靠性要求高的發動機控制單元、智能剎車單元(本課題設計部分)、ABS控制單元以及自動變速器控制單元等組成高速CAN通信網絡;將實時性要求相對較低的中控門鎖控制單元、電動座椅調節單元、電動車窗控制單元、后視鏡控制單元、儀表控制單元和照明燈控制單元等組成低速CAN通信網絡;并配置中央控制器(網關)將這兩個速率不同的CAN通信網絡連接起來,實現全部單元之間的數據共享。高速CAN網絡的傳輸速率達到500 kb/s,低速CAN網絡的傳輸速率大約為10~125 kb/s[4]。汽車控制系統通信網絡如圖1所示。其中,總線兩端應接抑制反射的120 ?贅的終端匹配電阻,如果不接終端電阻,會使得數據通信的抗干擾性及可靠性大大降低,甚至無法通信。在這個系統中,智能剎車控制單元一旦檢測到誤踩油門信號,就會向發動機控制單元、ABS控制單元和自動變速器控制單元發出信息,這些單元根據信息作出相應動作,使汽車自動剎車。 2 智能剎車單元硬件設計 2.1 智能剎車單元的整體設計 智能剎車單元的結構如圖2所示。本設計中智能剎車單元以PIC18F258單片機為控制核心,當單片機檢測到誤踩剎車信號時,通過CAN總線以報文的形式發送到儀表單元并顯示,也可發送到音響單元進行語音報警,發送到發動機控制單元、ABS制動單元及自動變速箱控制單元自動剎車。 PIC18F258單片機有著先進的精簡指令集構架、增強型內核,32級堆棧和多種內部及外部中斷源,內部帶有CAN總線控制器,并采用了程序和數據空間完全分開的“哈佛”結構。這種單片機結構大大降低了總體成本,同時提高了運行效率和可靠性[5]。 CTM8251是一款帶隔離的通用CAN收發器模塊,該模塊內部集成了所有必需的CAN隔離及CAN收、發器件,這些都被集成在不到3 cm2的模塊上。該模塊的主要功能是將CAN控制器的邏輯電平轉換為CAN總線的差分電平,并具有DC 2 500 V的隔離功能。取代了CAN總線收發器及外圍電路,降低了成本和電路復雜程度,提高了電路可靠性[6]。 2.2 智能剎車單元電路設計 智能剎車單元電路主要用于檢測踩剎車和誤踩油門兩種不同速率的操作。根據對不同車型踩油門踏板和踩剎車踏板動作時間的調查(如表1所示),大多數車從起步加速到100 km/h,從油門踏板上限到油門踏板下限時間約1 s,一般也很少1 s內踩到底,而踩剎車踏板時間約在0.15 s以下,兩者存在著不是一個數量級的時間差別[1]。根據這一特點,單片機可以判別出是誤踩油門還是緊急剎車。 剎車檢測電路如圖3所示,該電路由油門踏板上限檢測電路和油門踏板下限檢測電路組成。其工作原理為:檢測到踏板速度的上限位時,光敏二極管SPD1沒有接收光二極管D1的光,比較器LM339輸出一個低電平給單片機PIC18F258的21(INT0)腳,單片機計時開始;檢測到踏板速度的下限位時,光敏二極管SPD2沒有接收光二極管D2的光,比較器LM339輸出一個低電平給單片機PIC18F258的22(INT1)腳,單片機計時停止,并且將該段測得時間與設定的限定時間進行比較,以此確定此時的油門踏板速度是否過快。若踏板速度過快,則啟動剎車系統;否則,不干預此次操作。 3 程序設計 程序設計框圖如圖4所示。先對單片機及CAN接口初始化,當油門位置處上限時,INT0輸入,開始計時,到油門位置處下限時,INT1輸入,停止計時。算出上下時間差,當時間差小于限定值時,發送剎車報文給CAN總線上相應單元,其他單元作出剎車動作。CAN總線上通信的軟件設計主要包括CAN單元初始化、報文發送和報文接收三部分。CAN接口的初始化程序設計是非常重要,如果設計得不好,系統將不能正常工作。PIC18F258單片機的CAN接口初始化首先要在配置模式下將控制寄存器、狀態寄存器、波特率寄存器、I/O控制寄存器、接收掩碼寄存器和幾個濾波寄存器按照系統要求設置好,以保證CAN總線的暢通。 本文應用PIC18F258單片機設計了基于車載CAN總線的智能剎車系統,使其成為車載CAN網絡的一個電氣單元。設計出了智能剎車系統的硬件電路、CAN總線接口電路及軟件設計。智能剎車單元主控芯片PIC18F258通過CAN總線能夠向其他單元發送報文數據,其他控制器經過判別而實現相關的報警、顯示及自動剎車等功能。該系統能夠對誤踩油門進行有效控制,這對減少和避免交通事故,保障行車安全具有非常重要的現實意義和應用價值。 參考文獻 [1] 陳松,張娜.基于AT89S52單片機的誤踩油門控制器的設計[J].西昌學院學報,2009(9):73-75. [2] 朱治高,黃春梅.基于CAN總線汽車儀表及顯示系統的實現[J].機電工程技術,2008,37(7):49-51. [3] 邱云峰,尹杰,王義,等.CAN總線技術在現代汽車網絡系統中的應用[J].貴州大學學報,2010(2):92-95. [4] 黃韜,芮曉艷,葛立峰.基于車載CAN總線的倒車雷達智能節點設計[J].自動化與儀表,2010(7):9-12. [5] Microchip PIC18FXX8 data sheet. 28/40-pin high-performance, enhanced flash microcontrollers with CAN module[Z]. [6] 宋曉東,王建.電子設計工程[J].CAN總線儀表研究,2010(4):35-37. |