何立仁 , 王 義 ,2
(1.貴州大學(xué) 理學(xué)院,貴州 貴陽(yáng) 550025;2.貴州師范大學(xué) 物理與電子科學(xué)學(xué)院,貴州 貴陽(yáng) 550025)
隨著科學(xué)技術(shù)的發(fā)展,人們對(duì)汽車操控性、舒適性以及可靠性要求的越來(lái)越高。而傳統(tǒng)的汽車電子技術(shù)多采用“點(diǎn)對(duì)點(diǎn)”的控制方式對(duì)汽車中某些部件進(jìn)行電子控制,過(guò)程簡(jiǎn)單、設(shè)備復(fù)雜、技術(shù)落后,已遠(yuǎn)不能滿足汽車電子技術(shù)發(fā)展的要求。這就促進(jìn)了現(xiàn)代的汽車電子技術(shù)的進(jìn)一步發(fā)展。目前,汽車電子技術(shù)已經(jīng)向車身整體集成電子化、網(wǎng)絡(luò)化、智能化和模塊化的方向發(fā)展,汽車網(wǎng)絡(luò)總線以及無(wú)觸點(diǎn)開(kāi)關(guān)控制是汽車電子技術(shù)的一個(gè)重要發(fā)展方向。
現(xiàn)場(chǎng)總線是20世紀(jì)80年代中期發(fā)展起來(lái)的,是當(dāng)今自動(dòng)化領(lǐng)域技術(shù)發(fā)展的主要方向之一,它的出現(xiàn)極大地推動(dòng)了現(xiàn)代汽車電子技術(shù)的發(fā)展??刂破骶钟蚓W(wǎng) (Controller Area Network,CAN)總線屬于現(xiàn)場(chǎng)總線中比較典型的一種,已廣泛應(yīng)用于汽車控制與通信系統(tǒng),同時(shí)也在其他工業(yè)領(lǐng)域得到廣泛的應(yīng)用。文中提出了一種采用CAN總線技術(shù)和霍爾開(kāi)關(guān)的汽車車燈控制系統(tǒng),其優(yōu)點(diǎn)是無(wú)機(jī)械磨損、可靠性高、實(shí)用壽命長(zhǎng),能夠滿足未來(lái)汽車車燈控制系統(tǒng)發(fā)展的需要。通過(guò)對(duì)車燈控制系統(tǒng)進(jìn)行了硬件設(shè)計(jì)和軟件編程,實(shí)現(xiàn)了無(wú)觸點(diǎn)開(kāi)關(guān)控制的汽車CAN總線燈光控制系統(tǒng),有一定的實(shí)用價(jià)值。
飛思卡爾S08D系列8位微控制器功能強(qiáng)大,它在一個(gè)單芯片上提供了更多的存儲(chǔ)器和組件。S08DZ系列是S08D系統(tǒng)中的旗艦號(hào),提供了飛思卡爾內(nèi)嵌CAN微控制器,并且將內(nèi)嵌CAN、內(nèi)嵌EPROM和片上仿真/調(diào)試模塊組合在一起,在單片上集成了所有的功能,方便設(shè)計(jì)人員進(jìn)行設(shè)計(jì)。
MC9S08DZ60單片機(jī)提供 60KB的片上可讀取/編程/擦除的Flash存儲(chǔ)器、有2KB的EEPROM在線可編程內(nèi)存、最大4KB的RAM,具有實(shí)時(shí)時(shí)鐘計(jì)數(shù)器(RTC)、串行外設(shè)接口(SPI)、 串 行 通 信 接 口 (SCI)、 飛 思 卡 爾 控 制 器 局 域 網(wǎng)(MSCAN)、數(shù)/模轉(zhuǎn)換器(ADC)等外圍設(shè)備,內(nèi)核集成了中央處理器(CPU)、后臺(tái)調(diào)試控制器(BDC)、看門狗定時(shí)器(COP)等設(shè)備。具有良好的擴(kuò)充性和易用性,其獨(dú)特的片上仿真/調(diào)試模塊(BDG)能夠大大簡(jiǎn)化設(shè)計(jì),從而確保了MC9S08DZ60在汽車和工控的應(yīng)用[1]。
霍爾效應(yīng)是指通過(guò)電流的半導(dǎo)體在垂直電流方向下的磁場(chǎng)作用下,在與電流和磁場(chǎng)垂直的方向上形成電荷累積和出現(xiàn)電勢(shì)差的現(xiàn)象。在一定的工作電流IH下,霍爾電壓UH與外磁場(chǎng)磁感應(yīng)強(qiáng)度成正比,這就是霍爾效應(yīng)檢測(cè)磁場(chǎng)的原理。
在一定的外磁場(chǎng)中,霍爾電壓UH與通過(guò)霍爾片的電流強(qiáng)度IH(工作電流)成正比,這就是霍爾效應(yīng)檢測(cè)電流的原理。
霍爾開(kāi)關(guān)屬于有源磁電轉(zhuǎn)換器件,它是在霍爾效應(yīng)原理的基礎(chǔ)上,利用集成封裝和組裝工藝制作而成,可方便的把磁輸入信號(hào)轉(zhuǎn)換成實(shí)際應(yīng)用中的電信號(hào),同時(shí)又具備實(shí)用、易操作和可靠性的性能。其內(nèi)部結(jié)構(gòu)圖如圖1所示,磁電轉(zhuǎn)換效應(yīng)原理如圖2所示。
圖1 內(nèi)部結(jié)構(gòu)圖Fig.1 The internal structure of hall switch
圖2 磁電轉(zhuǎn)換效應(yīng)Fig.2 Magnetic switching effect
霍爾開(kāi)關(guān)具有無(wú)觸點(diǎn)、功耗低、使用壽命長(zhǎng)、響應(yīng)頻率高等優(yōu)點(diǎn),內(nèi)部采用環(huán)氧樹脂封灌成一體,能夠在各類惡劣環(huán)境下可靠的工作。霍爾開(kāi)關(guān)作為一種新型的電器配件,可應(yīng)用于接近開(kāi)關(guān),壓力開(kāi)關(guān),里程表開(kāi)關(guān)等。
CAN是控制器局域網(wǎng)絡(luò) (Controller Area Network,CAN)的簡(jiǎn)稱,是由研發(fā)和生產(chǎn)汽車電子產(chǎn)品著稱的德國(guó)BOSCH公司開(kāi)發(fā)了的,并最終成為國(guó)際標(biāo)準(zhǔn)(ISO11898),是國(guó)際上應(yīng)用最廣泛的現(xiàn)場(chǎng)總線之一。通常CAN總線采用屏蔽或非屏蔽的雙絞線,總線接口能適應(yīng)極其惡劣的工作環(huán)境。和其他通信總線相比,CAN總線在其實(shí)時(shí)性、可靠性及靈活性等方面都有突出的優(yōu)勢(shì),使得其在汽車工業(yè)得到了廣泛的應(yīng)用[2]。
CAN總線的應(yīng)用層協(xié)議,采用了SAE J1939通信協(xié)議,它以CAN2.0B協(xié)議為基礎(chǔ),波特率可達(dá)250 kb/s,是一種傳輸速率較高的C類通信網(wǎng)絡(luò)協(xié)議,支持分布式控制,在整個(gè)汽車電子控制系統(tǒng)中,實(shí)施閉環(huán)控制及其通信。在CAN總線進(jìn)行數(shù)據(jù)通信的過(guò)程中,SAE J1939協(xié)議的數(shù)據(jù)鏈路層定義了信息幀的數(shù)據(jù)結(jié)構(gòu)、編碼規(guī)則,它負(fù)責(zé)將CAN擴(kuò)展幀的29位標(biāo)識(shí)符重新分組定義,使報(bào)文的標(biāo)識(shí)符就能夠描述報(bào)文的全部特征,包括目標(biāo)地址、源地址等。
CAN總線框架不僅提供發(fā)送端和接收端之間明確的地址,同時(shí)向在總線上的各類型的接收端發(fā)送消息幀[3]。CAN總線的消息幀結(jié)構(gòu)如圖3所示,在幀起始處都會(huì)有11位的標(biāo)識(shí)符(或19位擴(kuò)展),用來(lái)標(biāo)記消息幀。
圖3 CAN消息幀結(jié)構(gòu)Fig.3 CAN message frame structure
當(dāng)發(fā)現(xiàn)總線空閑時(shí),如果存在有2個(gè)或更多的總線單元需要進(jìn)行CAN通信時(shí),可利用CSMA/CD以及“非破壞性的逐位仲裁”方法來(lái)避免消息沖突。
系統(tǒng)總體硬件設(shè)計(jì)的目的是實(shí)現(xiàn)高效、可靠的車燈控制系統(tǒng)。該系統(tǒng)主要由總控制盒、前燈模塊和后燈模塊組成??偪刂坪兄饕杉魻栭_(kāi)關(guān)輸出的信號(hào),同時(shí)對(duì)信號(hào)進(jìn)行編碼處理,并將得出的數(shù)據(jù)發(fā)送到CAN總線上,以供各個(gè)分節(jié)點(diǎn)識(shí)別接收。前燈模塊和后燈模塊根據(jù)用戶定義的標(biāo)識(shí)符選擇接收CAN總線上傳輸?shù)臄?shù)據(jù),對(duì)接收到的數(shù)據(jù)進(jìn)行分解處理,然后對(duì)相應(yīng)的驅(qū)動(dòng)設(shè)備發(fā)送控制信號(hào),實(shí)現(xiàn)對(duì)車燈的控制。
本設(shè)計(jì)總控制盒包括以下幾個(gè)部分:核心控制器、組合開(kāi)關(guān)輸入、儀表指示燈輸出、電源穩(wěn)壓電路和CAN控制驅(qū)動(dòng)電路。系統(tǒng)總體框圖如圖4所示。
圖4 總控制盒框圖Fig.4 Control box diagram
核心控制器采用飛思卡爾8位單片機(jī)MC9S08DZ60,其提供了內(nèi)嵌的CAN控制器,使得系統(tǒng)的設(shè)計(jì)大大簡(jiǎn)化,同時(shí)也提高了系統(tǒng)可靠性和抗干擾性。MC9S08DZ60主要負(fù)責(zé)采集開(kāi)關(guān)量信號(hào),同時(shí)進(jìn)行處理,對(duì)不同的開(kāi)關(guān)信號(hào)可由用戶自定義的地址進(jìn)行賦值,最后將數(shù)據(jù)通過(guò)CAN控制器發(fā)送到總線上。
組合開(kāi)關(guān)輸入部分主要包含車燈組合霍爾開(kāi)關(guān)以及各個(gè)開(kāi)關(guān)量的輸入接口電路。其中霍爾開(kāi)關(guān)用于提供開(kāi)關(guān)量控制信號(hào),AH11系列是單磁極工作的霍爾開(kāi)關(guān),適合于矩形或者柱形磁體下工作。當(dāng)磁鋼靠近霍爾開(kāi)關(guān)時(shí),磁感應(yīng)強(qiáng)度增大到其工作點(diǎn)時(shí),輸出低電平;反之,當(dāng)磁感應(yīng)強(qiáng)度減小到釋放點(diǎn)時(shí),輸出高電平。這種開(kāi)關(guān)形式類似于晶體管集電極的開(kāi)路。接入電路時(shí)應(yīng)將霍爾開(kāi)關(guān)的輸入端上拉至5 V,再直接接到控制器的端口。
至于CAN通信電路,由于MC9S08DZ60內(nèi)嵌CAN控制模塊,本系統(tǒng)中只需外接CAN收發(fā)器TJA1050即可,TJA1050是一款高速CAN收發(fā)器,與以往CAN通信系統(tǒng)中采用的PCA82C250/251引腳相兼容,TJA1050還提供不上電環(huán)境下理想的無(wú)源特性[4]。核心控制器的TXCAN和RXCAN分別與收發(fā)器的TXD和RXD連接,同時(shí)在CANH和CANL之間接入TDKZJS-2,能夠很好的保護(hù)CAN總線通信免受電磁干擾,并且又不影響總線的正常通信[5]。總控制盒電路圖如圖5所示。
圖5 總控制盒電路圖Fig.5 Control box circuit diagram
燈光控制盒方案包括:燈光總成、驅(qū)動(dòng)電路陣列、控制核心單元、電源穩(wěn)壓電路和CAN總線驅(qū)動(dòng)電路等。系統(tǒng)總體框圖如圖6所示。
圖6 燈光控制盒框圖Fig.6 Light control box block diagram
控制核心采用飛思卡爾單片機(jī)MC9S08DZ60,其外圍電路以及電源穩(wěn)壓和CAN總線驅(qū)動(dòng)與總控制盒相同。車燈驅(qū)動(dòng)電路陣列采用飛思卡爾的功率驅(qū)動(dòng)芯片MC33286,其輸入與TTL電平相兼容,可以由微控制器直接進(jìn)行控制,共有四路輸出,OUT1由IN1控制,OUT2由IN2控制。CAN收發(fā)器接收CAN總線上傳輸?shù)臄?shù)據(jù),送給微控制器進(jìn)行識(shí)別,若與之匹配則選擇接收信息,并進(jìn)行處理,往驅(qū)動(dòng)陣列發(fā)送控制信號(hào),進(jìn)而控制車燈。
前燈組合和后燈組合的設(shè)計(jì)類似,其中前燈包括近光燈、遠(yuǎn)光燈、前霧燈、示寬燈、轉(zhuǎn)向燈,所有燈光均連接處一個(gè)公共端,燈光組合與驅(qū)動(dòng)板之間只需一個(gè)8芯接插件連接。后燈包括轉(zhuǎn)向燈、尾燈、剎車燈、霧燈和倒車燈。前燈組合電路如圖7所示。
文中采用模塊化程序設(shè)計(jì)思想設(shè)計(jì)軟件,按照功能分成不同的程序模塊,各模塊間相對(duì)獨(dú)立以完成特定的功能[6]。主要包括CAN初始化模塊、報(bào)文發(fā)送與接收、開(kāi)關(guān)量信號(hào)采集、數(shù)據(jù)處理模塊等。其設(shè)計(jì)思想為:系統(tǒng)啟動(dòng)后,首先對(duì)微控制器MC9S08DZ60以及內(nèi)嵌的CAN控制器進(jìn)行初始化,再對(duì)主控節(jié)點(diǎn)和各個(gè)從節(jié)點(diǎn)進(jìn)行設(shè)計(jì):1)主控節(jié)點(diǎn)首先要采集霍爾開(kāi)關(guān)上的開(kāi)關(guān)量信號(hào),并對(duì)這些信號(hào)進(jìn)行處理,形成符合CAN通信協(xié)議SAEJ1939的數(shù)據(jù)格式,再向CAN控制器發(fā)送信號(hào),進(jìn)入CAN收發(fā)器發(fā)送數(shù)據(jù)程序(數(shù)據(jù)的發(fā)送采用查詢方式),將處理完畢的數(shù)據(jù)發(fā)送到CAN總線上,供從節(jié)點(diǎn)進(jìn)行接收,其流程圖如圖8所示。2)采用查詢方式接收數(shù)據(jù),首先從節(jié)點(diǎn)上的CAN控制器通過(guò)比較29位標(biāo)識(shí)符是否匹配,來(lái)決定能否接收?qǐng)?bào)文,在處理接收到的數(shù)據(jù)時(shí),判斷是開(kāi)關(guān)量信號(hào)是對(duì)應(yīng)哪些燈的,發(fā)出相應(yīng)的控制信號(hào)來(lái)驅(qū)動(dòng)車燈的亮滅,其流程圖如圖9所示。
文中以飛思卡爾公司的S08D系列單片機(jī)中的MC9S08 DZ60為核心,利用霍爾元件結(jié)合CAN總線技術(shù),設(shè)計(jì)了無(wú)觸點(diǎn)汽車CAN總線燈光控制系統(tǒng),給出了整體設(shè)計(jì)方案和軟件流程圖。系統(tǒng)實(shí)現(xiàn)了開(kāi)關(guān)量信號(hào)的采集,通過(guò)CAN總線的通信以及對(duì)各個(gè)從節(jié)點(diǎn)車燈的控制,驗(yàn)證了方案的可行性和可靠性。試驗(yàn)證明,文中介紹的CAN總線的通信在汽車電子控制方面有較強(qiáng)的優(yōu)勢(shì),在現(xiàn)代汽車電子領(lǐng)域有著廣泛的應(yīng)用前景。
圖7 從節(jié)點(diǎn)電路圖Fig.7 Sub-node schematic
圖8 主控節(jié)點(diǎn)系統(tǒng)流程圖Fig.8 Master node system flow chart
圖9 從節(jié)點(diǎn)系統(tǒng)流程圖Fig.9 Sub-node system flow chart
[1]Freescale Semiconductor.MC9S08DZ60 Data Sheet[EB/OL].(2008).http://www.freesacle.com/files/microcontrollers/doc/data_sheet/MC9S08DZ60.pdf.
[2]郭亞利,吳欽木,王紅蕾.基于CAN的無(wú)觸點(diǎn)車燈開(kāi)關(guān)控制系統(tǒng)研究與實(shí)現(xiàn)[J].開(kāi)發(fā)研究,2011(7):14-17.
GUO Ya-li,WU Qin-mu,WANG Hong-lei.Research and realization of contactless switch system in car light control based on CAN bus[J].Developing Research,2011(7):14-17.
[3]Herpel T,Kloiber B,German R.Assessing the CAN communication startup behavior of automotive ECUs by prototype measurements[C]//Singapore International Instrumentation and Measurement Technology Conference,2009:928-932.
[4]袁洪芳,金鑫.基于MC9S08DZ60的CAN總線振動(dòng)傳感器設(shè)計(jì)[J].電子設(shè)計(jì)工程,2009,17(7):23-25.
YUAN Hong-fang,JIN Xin.Design of CAN bus vibration sensor based on MC9S08DZ60[J].Electronic Design Engineering,2011,17(7):23-25.
[5]RUAN Fang-ming,SUN Si-yang,ZHANG Ling.Some consideration on electromagnetic compatibility in CAN bus design of automobile[C]//Beijing,2010 Asia-Pacific International Symposium on Electromagnetic Compatibility,2010:1431-1434.
[6]高菲菲,王蕓.基于CAN總線的車燈控制系統(tǒng)設(shè)計(jì)[J].機(jī)械工程與自動(dòng)化,2008,4:152-154.
GAO Fei-fei,WANG Yun.Design of car lamp control system based on CAN bus[J].Mechanical Engineering&Automation,2008,4:152-154.