摘 要: 針對(duì)汽車控制系統(tǒng)減少線束和較低成本的要求,提出了以集成CAN控制器的PIC18F258單片機(jī)為核心設(shè)計(jì)而成的汽車電動(dòng)車窗控制系統(tǒng),,給出了系統(tǒng)主要硬件結(jié)構(gòu)和軟件設(shè)計(jì)流程,。相對(duì)于傳統(tǒng)的點(diǎn)對(duì)點(diǎn)控制方式,不僅減少了車內(nèi)的線束,、降低了成本,,而且控制靈活、實(shí)時(shí)性強(qiáng),。試驗(yàn)表明,,該系統(tǒng)工作正常、性能可靠,,具有低成本,、低功耗和易于維修等優(yōu)點(diǎn),。
關(guān)鍵詞: 汽車網(wǎng)絡(luò); CAN總線,; PIC18F258,; 電子控制單元
隨著汽車電子技術(shù)的發(fā)展,越來(lái)越多的電子產(chǎn)品裝載到汽車上,,極大地提高了汽車的動(dòng)力性和舒適性,,同時(shí)也增加了車內(nèi)布線的難度和成本。CAN(Controller Area Network)作為一種串行數(shù)據(jù)通信總線,,由于具有良好的可靠性,、實(shí)時(shí)性及靈活性,已經(jīng)成為國(guó)際標(biāo)準(zhǔn)(ISO11898)[1],,在汽車電子系統(tǒng)中得到了廣泛的應(yīng)用,。
目前,在CAN系統(tǒng)設(shè)計(jì)中,,使用最多的是單片機(jī)外掛獨(dú)立的CAN控制器,,如Philips公司的PCA82C200、SJA1000以及Intel公司的82526,、82527等芯片,。但是采用此類芯片的設(shè)計(jì)方案不利于系統(tǒng)集成化。本文以Microchip公司內(nèi)部集成的CAN模塊PIC18F258單片機(jī)為核心,,介紹CAN總線電動(dòng)車窗控制系統(tǒng)的硬件電路結(jié)構(gòu)及軟件設(shè)計(jì)流程,。由于PIC18F258單片機(jī)對(duì)CAN收發(fā)器PCA82C250進(jìn)行數(shù)據(jù)操作時(shí)只需要TXD、RXD兩條數(shù)據(jù)線,,這樣就大大簡(jiǎn)化了硬件電路的設(shè)計(jì),,提高了系統(tǒng)的可靠性。
1 電動(dòng)車窗控制系統(tǒng)通信網(wǎng)絡(luò)的構(gòu)成
電動(dòng)車窗控制系統(tǒng)通信網(wǎng)絡(luò)共有4個(gè)CAN節(jié)點(diǎn)電子控制器,,分別是:左前門主控制器、右前門子控制器,、左后門子控制器,、右后門子控制器。采用CAN總線通信技術(shù)可以實(shí)現(xiàn)4個(gè)車門控制器之間的通信,如圖1所示,。
操作主控制器除了可以控制駕駛員的車窗玻璃升降外,,還可以通過(guò)CAN總線控制其余乘客車窗玻璃的升降,同時(shí)子控制器也可控制各自位置車窗玻璃的升降,。主控制器由Microchip公司的內(nèi)部集成了CAN模塊的PIC18F258單片機(jī),、6N137高速光電耦合器、PCA82C250總線收發(fā)器等三個(gè)主要部分組成,??紤]到設(shè)計(jì)成本和軟件編程的方便性,,子控制器選用了與主控制器相同的芯片,且具有相同的硬件電路結(jié)構(gòu),。
2 功率驅(qū)動(dòng)芯片及其應(yīng)用電路
Motorola公司的功率驅(qū)動(dòng)芯片MC33486以其強(qiáng)大的功能和優(yōu)異的性能在汽車電子中得到了廣泛的應(yīng)用,。此芯片的應(yīng)用模式為橋式結(jié)構(gòu)[2],芯片內(nèi)部有2個(gè)高端MOSFET驅(qū)動(dòng)管MOS1、MOS2,,外接2個(gè)低端MOSFET驅(qū)動(dòng)管MOS3,、MOS4組成一個(gè)完整的H橋,實(shí)現(xiàn)車窗電機(jī)的正,、反向控制,。同時(shí),利用Cur R端的電流鏡像功能可方便地實(shí)現(xiàn)過(guò)流保護(hù)和車窗的防夾功能,,如圖2所示,。
OUT1和OUT2是MC33486的兩個(gè)高端輸出引腳,直接驅(qū)動(dòng)車窗電機(jī)M,。IN1和IN2受微控制器的控制,。當(dāng)IN1為高電平‘1’,IN2為低電平‘0’時(shí),,相應(yīng)的GLS1輸出低電平,,GLS2輸出高電平,此時(shí)MOS1,、MOS4導(dǎo)通,,MOS2、MOS3截止,。OUT1輸出正電壓而OUT2接地,,車窗電機(jī)朝某一個(gè)方向運(yùn)轉(zhuǎn)。反之,,當(dāng)IN1為低電平‘0’,,IN2為高電平‘1’時(shí),相應(yīng)的GLS2輸出低電平,,GLS1輸出高電平,,此時(shí)MOS2、MOS3導(dǎo)通,,MOS1,、MOS4截止。OUT2輸出為正,,OUT1接地,,車窗電機(jī)反轉(zhuǎn),達(dá)到升降車窗玻璃的目的,。此外,,MC33486在待機(jī)模式下有非常低的靜態(tài)電流,,在正常工作時(shí)的輸出電流為10 A,最大峰值電流為35 A,,直流輸入電壓的范圍較寬,,可達(dá)8 V~28 V。當(dāng)電壓高于28 V時(shí)芯片具有過(guò)壓保護(hù)功能,。由于該器件性能完善,,因而可減小電動(dòng)車窗控制器的體積,提高EMS(電磁兼容)特性,。
3 CAN控制器硬件電路設(shè)計(jì)
對(duì)電動(dòng)車窗控制器硬件電路設(shè)計(jì)的總體要求是系統(tǒng)簡(jiǎn)單,、容易實(shí)現(xiàn)、性能穩(wěn)定可靠,,在滿足要求的情況下盡量降低成本,。
CAN通信系統(tǒng)硬件電路主要由三部分組成[3]:PIC18F258單片機(jī)、6N137高速光電耦合器,、PCA82C250總線收發(fā)器,。電路原理如圖3所示。
PIC18F258是美國(guó)Microchip公司生產(chǎn)的內(nèi)部嵌有CAN總線控制器的高性能PIC系列單片機(jī),,由于其超小型,、低功耗、低成本,、多品種的特點(diǎn),,其應(yīng)用范圍十分廣泛。PIC18F258是集成了CAN模塊的微控制器,有著先進(jìn)的精簡(jiǎn)指令集構(gòu)架,、增強(qiáng)型內(nèi)核,、32級(jí)堆棧,片內(nèi)具有Flash程序存儲(chǔ)器,、EEROM數(shù)據(jù)存儲(chǔ)器,、自編程功能、在線調(diào)試器(ICD)和多種內(nèi)部,、外部中斷源,,并采用了程序和數(shù)據(jù)空間完全分開(kāi)的“哈佛”結(jié)構(gòu)。這種結(jié)構(gòu)大大降低了PIC微控制器的總體成本,,同時(shí)提高了運(yùn)行效率,。在電路中,,PIC18F258單片機(jī)是CAN總線接口電路的核心,,主要完成CAN總線上數(shù)據(jù)的發(fā)送和接收,實(shí)現(xiàn)串行數(shù)據(jù)的分解及組合,,保證通信的正常暢通,。
PCA82C250是Philips公司的CAN總線接口芯片,,是CAN控制器與物理總線之間的接口,提供對(duì)總線的差分發(fā)送和接收的功能,它與ISO11898標(biāo)準(zhǔn)完全兼容,,有三種不同的工作方式,即高速,、斜率控制和待機(jī),可以根據(jù)實(shí)際情況加以選擇,,在本方案中選擇高速工作方式,。該芯片引腳少,使用簡(jiǎn)單,。CAN總線采用PCA82C250芯片作為與總線之間的接口,,PCA82C250的CANH、CANL引腳各自通過(guò)一個(gè)電阻與CAN總線相連,,電阻可以起到一定的限流作用,,保護(hù)PCA82C250免受過(guò)流的沖擊。另外,,CANH和CANL與地之間并聯(lián)兩個(gè)小電容,,可以濾除總線上的高頻干擾和防電磁輻射。光電耦合器采用General Instrument公司生產(chǎn)的高速邏輯門輸出光電耦合器6N137,,它的最大傳輸延遲時(shí)間是75 ns,,典型值是46 ns,采用6N137高速光電耦合電路可以很好地實(shí)現(xiàn)總線上節(jié)點(diǎn)之間的電氣隔離,同時(shí)可提高系統(tǒng)的抗干擾能力和傳輸信號(hào)的能力,。使用時(shí),,光電耦合器的兩個(gè)電源VCC和V′CC必須采用電源隔離電路進(jìn)行完全隔離。
4 CAN通信系統(tǒng)軟件設(shè)計(jì)流程
軟件設(shè)計(jì)是系統(tǒng)設(shè)計(jì)的關(guān)鍵,。使用開(kāi)發(fā)軟件MPLAB IDE,、仿真器ICD 2,以及靈活簡(jiǎn)便的C語(yǔ)言,。為了提高可靠性和可理解性[4],,內(nèi)部軟件設(shè)計(jì)采用了模塊結(jié)構(gòu),主要包括主程序,、系統(tǒng)初始化子程序,、數(shù)據(jù)發(fā)送子程序、數(shù)據(jù)接收子程序和電機(jī)控制子程序,。此外,,還應(yīng)有中斷服務(wù)子程序、A/D采樣子程序,、故障診斷子程序和終端子程序等,。這里主要對(duì)系統(tǒng)初始化子程序和電機(jī)控制子程序進(jìn)行探討。
系統(tǒng)初始化子程序是系統(tǒng)設(shè)計(jì)工作中極為重要的部分,,它是CAN總線系統(tǒng)正常工作的前提,,關(guān)系到整個(gè)CAN系統(tǒng)能否正常工作,。因此,初始化設(shè)計(jì)是一個(gè)重點(diǎn),,主要包括CAN模塊工作方式的配置,、接收濾波器的設(shè)置、接收屏蔽寄存器設(shè)置,、波特率參數(shù)設(shè)置,、發(fā)送優(yōu)先級(jí)設(shè)置和中斷允許寄存器設(shè)置等。初始化子程序流程如圖4所示,。
對(duì)電動(dòng)車窗的控制可分為軟啟動(dòng),、滿PWM輸出、續(xù)流和停止4個(gè)階段,。其中包括對(duì)電動(dòng)車窗“手動(dòng)/自動(dòng)”控制的判斷和處理,、車窗上升到頂或下降到底的判斷和處理、車窗防夾的判斷和處理等[5],,其工作流程如圖5所示,。程序初始化完成后,在按鍵端口掃描到有上升或下降按鍵輸入的控制命令后,,主程序調(diào)用電機(jī)控制子程序,,車窗電機(jī)進(jìn)入PWM軟啟動(dòng)階段。PWM軟啟動(dòng)分為10步,,每步20 ms,,占空比從10%逐漸增加到100%。隨后電機(jī)進(jìn)入上升或下降的工作狀態(tài)[6],。電動(dòng)車窗采用PWM控制方式后,,啟動(dòng)較為平穩(wěn),啟動(dòng)快速性好,。
車窗的防夾功能是利用功率芯片MC33486的Cur R輸出端所具有的負(fù)載電流線性鏡像功能實(shí)現(xiàn)的,。Cur R端能夠輸出與車窗電機(jī)負(fù)載電流Iload成比例的監(jiān)控電流ICur R,有如下數(shù)學(xué)關(guān)系:
將此電流轉(zhuǎn)化為電壓輸入到PIC單片機(jī)的A/D采樣端,,能夠完成對(duì)車窗電機(jī)的控制,,實(shí)現(xiàn)電動(dòng)車窗的防夾功能。
網(wǎng)絡(luò)化控制是現(xiàn)代汽車電子控制的發(fā)展趨勢(shì),。相對(duì)于傳統(tǒng)的控制方式,,采用CAN總線的電動(dòng)車窗控制系統(tǒng)可以減少車內(nèi)的線束。同時(shí)可以通過(guò)軟件編程在不改變?cè)芯W(wǎng)絡(luò)硬件結(jié)構(gòu)的前提下,增加許多功能,。PIC18F258單片機(jī)內(nèi)部集成了CAN控制器,,可以在線編程。用該芯片設(shè)計(jì)而成的電動(dòng)車窗控制系統(tǒng)性能穩(wěn)定、工作可靠,,經(jīng)實(shí)際裝車試驗(yàn),系統(tǒng)的各項(xiàng)功能都得到了很好的實(shí)現(xiàn),,為系統(tǒng)的產(chǎn)業(yè)化實(shí)施奠定了基礎(chǔ),。
參考文獻(xiàn)
[1] 饒運(yùn)濤,鄒繼軍,,王進(jìn)宏,,等.現(xiàn)場(chǎng)總線CAN原理與應(yīng)用技術(shù)(第二版)[M].北京:北京航空 航天大學(xué)出版社,2007.
[2] 杜琳,,姜久春,,潘磊.雙高端開(kāi)關(guān)器件MC33486在車身電控系統(tǒng)中的應(yīng)用[J].電氣應(yīng)用,2005,24(7):122-124.
[3] 王軼,,張凡.CAN總線技術(shù)在智能汽車系統(tǒng)中的應(yīng)用[J].微計(jì)算機(jī)信息,2005,21(7):48-50.
[4] 肖朝暉,譚進(jìn),李山.混合動(dòng)力汽車中CAN總線技術(shù)的應(yīng)用[J].重慶大學(xué)學(xué)報(bào)(自然科學(xué)版),
2005,28(6):68-70.
[5] 趙鵬,,王旭東.基于CAN總線的車門控制系統(tǒng)設(shè)計(jì)[J]. 哈爾濱理工大學(xué)學(xué)報(bào),2008,,13(2):77-85.
[6] 吳志紅,,陸科,朱元.一種高性價(jià)比的電動(dòng)車窗控制器設(shè)計(jì)[J].單片機(jī)與嵌入式系統(tǒng)設(shè)計(jì).2009(1):43-45.