文獻(xiàn)標(biāo)識(shí)碼: A
文章編號(hào): 0258-7998(2010)09-0108-04
在現(xiàn)代社會(huì)中,隨著汽車(chē)的增多和停車(chē)位日趨緊張,泊車(chē)成為很多車(chē)主頭痛的問(wèn)題,這時(shí)倒車(chē)?yán)走_(dá)就成了汽車(chē)的好助手。倒車(chē)?yán)走_(dá)是汽車(chē)泊車(chē)安全輔助裝置,能以聲音或者更為直觀的顯示告知駕駛員周?chē)系K物的情況,解除了駕駛員泊車(chē)時(shí)前后左右探視所引起的困擾,并幫助駕駛員掃除了視野死角和視線(xiàn)模糊的缺陷,提高了倒車(chē)的安全性。本文以ATmega16作為核心處理器,采用超聲波原理測(cè)量出障礙物距車(chē)尾的垂直距離。系統(tǒng)電路設(shè)計(jì)合理,工作穩(wěn)定,性能良好,精度高,實(shí)時(shí)檢測(cè)速度快,在未來(lái)市場(chǎng)上將有一定的實(shí)用價(jià)值。
1 超聲波測(cè)距原理
超聲測(cè)距的原理較簡(jiǎn)單,一般采用渡越時(shí)間法,將超聲傳感器安裝在汽車(chē)尾部,則障礙物距車(chē)尾的垂直距離為:
為了提高測(cè)距精度,本系統(tǒng)通過(guò)溫度補(bǔ)償?shù)姆椒▽?duì)傳播速度加以校正。因此只要測(cè)量超聲發(fā)射到超聲返回的時(shí)間間隔△t及環(huán)境溫度T,然后根據(jù)式(1)、式(2)即可計(jì)算出距離S。
2 系統(tǒng)硬件設(shè)計(jì)
本系統(tǒng)采用ATmega16 AVR為控制核心,外圍電路由超聲波發(fā)射電路、超聲波接收電路、溫度采集模塊、聲光報(bào)警電路、液晶顯示電路、接口電路及電源電路等部分組成。系統(tǒng)框圖如圖1所示。
2.1 核心控制模塊
Atmega16是Atmel公司近幾年才推向市場(chǎng)的新一代高性能、低功耗、高集成化的8位CMOS微控制器。由于其先進(jìn)的指令集以及單時(shí)鐘周期指令執(zhí)行時(shí)間,加上片內(nèi)32 個(gè)通用工作寄存器都直接與算術(shù)邏輯單元(ALU) 相連接,使得一條指令可以在一個(gè)時(shí)鐘周期內(nèi)同時(shí)訪問(wèn)兩個(gè)獨(dú)立的寄存器,大大提高了代碼效率,運(yùn)行速度比AT89C51高出10倍。用于邊界掃描的JTAG接口,可以對(duì)片上16 KB閃存Flash在線(xiàn)編程和調(diào)試,非常方便軟件的升級(jí)。內(nèi)部集成了較大容量的存儲(chǔ)器和豐富強(qiáng)大的硬件接口電路,如定時(shí)/計(jì)數(shù)器、實(shí)時(shí)時(shí)鐘、快速PWM通道、A/D轉(zhuǎn)換器、I2C的串行接口、可編程的串行USART接口、SPI串行接口和帶片內(nèi)晶振的可編程看門(mén)狗定時(shí)器以及片內(nèi)的模擬比較器等,除傳感器外幾乎可以不需要其他任何元件即可構(gòu)成系統(tǒng),從而為本設(shè)計(jì)提供了靈活而低成本的解決方案。其主控電路如圖2所示。
2.2 超聲波發(fā)射模塊
超聲波發(fā)射電路原理圖如圖3所示。發(fā)射電路主要由施密特反向觸發(fā)器CD40106和超聲波發(fā)射換能器TCT40-10-T構(gòu)成,PD6的端口輸出兩路40 kHz脈沖信號(hào),一路經(jīng)一級(jí)反向器后送到超聲波換能器的一個(gè)電極;另一路經(jīng)兩級(jí)反向器后送到超聲波換能器的另一個(gè)電極。用這種推挽形式將脈沖信號(hào)加到超聲波換能器兩端,可以提高超聲波的發(fā)射強(qiáng)度。輸出端采用兩個(gè)反向器并聯(lián),用以提高驅(qū)動(dòng)能力,所得到的波形比其他方式效果更理想。
2.3 超聲波接收模塊
超聲波接收模塊的作用是將反射的超聲波轉(zhuǎn)換成電壓信號(hào)并放大處理成標(biāo)準(zhǔn)的數(shù)字信號(hào),然后輸出給下一級(jí)電路。集成電路CX20106是一款紅外線(xiàn)檢波接收的專(zhuān)用芯片,它由前置放大器、限幅放大器、帶通濾波器、檢波器、積分器和整型電路組成。CX20106常用于電視機(jī)紅外遙控接收器??紤]到紅外遙控常用的載波頻率38 kHz與測(cè)距的超聲波頻率40 kHz較為接近,可以利用它制作超聲波檢測(cè)接收電路。如圖4所示,超聲波接收探頭TCT40-10-R將接收到的反射超聲波轉(zhuǎn)換成毫伏級(jí)電壓信號(hào),送入CX20106的1腳,CX20106的總放大增益約為80 dB,實(shí)際增益由2腳外接電阻R2和電容C1來(lái)決定,電阻R2越小或電容C1越大,增益越高,但取值過(guò)大易造成頻率響應(yīng)變差,本系統(tǒng)取電容為1 μF。C2為外接峰值檢波電容,C13為外接積分電容,調(diào)整RP電位器使內(nèi)置帶通濾波器的中心頻率為40 kHz,當(dāng)接收到與濾波器中心頻率相符的信號(hào)時(shí),其7腳輸出一個(gè)低電平直接接到ATmega16的INT0上,以觸發(fā)中斷。
2.4 溫度檢測(cè)模塊
為了提高本方案精度,引入了溫度采集并在軟件算法中增加了溫度自動(dòng)校正功能。溫度傳感器采用了DALLAS公司生產(chǎn)的一線(xiàn)式數(shù)字溫度傳感器DS18B20,其溫度測(cè)量范圍為-55 ℃~+125 ℃,可編程為9 bit~12 bitA/D轉(zhuǎn)換精度,測(cè)溫分辨率可達(dá)0.062 5 ℃,被測(cè)溫度用符號(hào)擴(kuò)展的16位數(shù)字量方式串行輸出。其工作電源既可在遠(yuǎn)端引入,也可采用寄生電源方式產(chǎn)生。本系統(tǒng)采取了寄生電源的方式,如圖5所示,通過(guò)一個(gè)MOSFET把CPU的I/O口直接拉到電源大小。這種接法優(yōu)點(diǎn)是雙重的:(1)VDD接地,無(wú)需本地電源;(2)缺少正常電源的條件下也可讀ROM。
2.5 人機(jī)交互模塊
人機(jī)交互模塊由液晶顯示電路和鍵盤(pán)電路兩部分組成。液晶顯示器件采用TC1602E字符型LCD模塊,該模塊具有體積小、功耗低、顯示內(nèi)容豐富等特點(diǎn)。TC1602E可以顯示2行16個(gè)字符,有8 bit數(shù)據(jù)總線(xiàn)D0~D7,RS、R/W、EN三個(gè)控制端口,工作電壓為5 V,并且?guī)в凶址麑?duì)比度調(diào)節(jié)和背光顯示。第一行顯示倒車(chē)?yán)走_(dá)測(cè)量距離,第二行顯示環(huán)境溫度,液晶顯示模塊電路如圖6所示。
2.6 電源模塊[3]
倒車(chē)?yán)走_(dá)是安裝在汽車(chē)的尾部,其電源應(yīng)是便攜式的,以方便安裝更換。本系統(tǒng)選用ATmega16,其電源電壓是5 V。可以使用開(kāi)關(guān)電源產(chǎn)生的5 V直接供電,但這樣最好把開(kāi)關(guān)電源做在主控板上,傳感器等需要另配電源。因此可以選用9 V疊層電池通過(guò)低功耗、可調(diào)、低壓差穩(wěn)壓器MAX667線(xiàn)性穩(wěn)壓至5 V(VCC)后給系統(tǒng)供電,轉(zhuǎn)換電路如圖7所示。
2.7 聲光報(bào)警模塊
報(bào)警電路模塊如圖8所示,主要作用是在汽車(chē)尾部與障礙物距離較近時(shí)進(jìn)行報(bào)警。根據(jù)實(shí)際情況,當(dāng)汽車(chē)尾部與障礙物距離大于5 m時(shí),可認(rèn)為是安全狀態(tài),液晶顯示“――”標(biāo)志;在5 m和1 m之間時(shí)認(rèn)為是正常的,顯示實(shí)測(cè)距離;小于1 m時(shí),應(yīng)提醒司機(jī)注意,系統(tǒng)發(fā)出聲音報(bào)警功能,單片機(jī)向其端口發(fā)出PWM脈沖,隨著距離的減小,通過(guò)控制PWM脈沖的占空比使蜂鳴的頻率加劇;小于0.5 m時(shí),要求聲光同時(shí)報(bào)警,由于閃光頻率不能過(guò)高,通過(guò)單片機(jī)另一個(gè)端口控制其閃亮。
3 系統(tǒng)軟件設(shè)計(jì)[3-4]
系統(tǒng)的軟件設(shè)計(jì)采取模塊化設(shè)計(jì),C語(yǔ)言編程,這樣便于閱讀與功能擴(kuò)展。程序主要由主程序、測(cè)距子程序、測(cè)溫子程序、延時(shí)子程序、液晶顯示子程序等幾個(gè)部分構(gòu)成。雷達(dá)測(cè)距開(kāi)始由汽車(chē)倒車(chē)控制,一旦倒車(chē)開(kāi)始,即啟動(dòng)ATmega16片內(nèi)的T1連續(xù)發(fā)射40 kHz的PWM,計(jì)數(shù)器開(kāi)始計(jì)數(shù)。考慮到實(shí)際倒車(chē)環(huán)境有遠(yuǎn)有近,為防止其他干擾可能引起的誤測(cè),以最長(zhǎng)距離5 m計(jì)算,超聲波發(fā)送到返回的時(shí)間△t至少為5/340≈15 ms。這樣持續(xù)發(fā)送PWM直至接收到超聲波時(shí)停止發(fā)送,這個(gè)過(guò)程大約需要15 ms以上,所以不管所測(cè)距離遠(yuǎn)近,一律每25 ms發(fā)送一次超聲波。由于超聲波會(huì)受到被測(cè)物體不平整、反射角度、環(huán)境風(fēng)速、溫度以及多次反射的影響,可能會(huì)帶來(lái)測(cè)量數(shù)據(jù)誤差增大。為了提高測(cè)量的準(zhǔn)確性,要求連續(xù)檢測(cè)5次時(shí)間,去掉最大和最小的測(cè)量值,然后對(duì)剩下3個(gè)測(cè)量值求平均值。
4 軟硬件調(diào)試及實(shí)驗(yàn)數(shù)分析
硬件制作時(shí)主要需保證發(fā)送和接收兩個(gè)換能器中心軸線(xiàn)平行并相距6 cm,根據(jù)測(cè)量范圍要求不同,可適當(dāng)調(diào)整與接收換能器并接的濾波電容C12的大小,以獲得合適的接收靈敏度和抗干擾能力。然后通過(guò)JTAG口在線(xiàn)調(diào)試下載程序并運(yùn)行。以300 cm2硬紙板(實(shí)際中障礙物要比這個(gè)面積大)為障礙物對(duì)倒車(chē)?yán)走_(dá)進(jìn)行了實(shí)測(cè)。為了檢驗(yàn)倒車(chē)?yán)走_(dá)的性能,對(duì)同組數(shù)據(jù)進(jìn)行了三次循環(huán)測(cè)量,發(fā)現(xiàn)在500 cm以上時(shí)測(cè)量誤差在2 cm左右,在500 cm以?xún)?nèi)時(shí)倒車(chē)?yán)走_(dá)最大誤差不超過(guò)1 cm。倒車(chē)?yán)走_(dá)有效范圍為0.05~5.7 m,這足以實(shí)際泊車(chē)需要。表1列出了汽車(chē)倒車(chē)?yán)走_(dá)在5 m以?xún)?nèi)的測(cè)量值與對(duì)應(yīng)的實(shí)際值。
本文給出了一種倒車(chē)?yán)走_(dá)的設(shè)計(jì)方案,該方案可以達(dá)到很高的采集速率和測(cè)量精度,并且具有溫度自動(dòng)校正功能。同時(shí),汽車(chē)倒車(chē)時(shí)可以通過(guò)液晶屏清晰地顯示障礙物與車(chē)尾的距離,幫助司機(jī)克服了后視鏡小,視野窄的缺點(diǎn)。當(dāng)車(chē)至危險(xiǎn)區(qū)域時(shí),通過(guò)聲光報(bào)警提醒司機(jī),消除了倒車(chē)造成的事故隱患。實(shí)驗(yàn)已經(jīng)驗(yàn)證了汽車(chē)倒車(chē)?yán)走_(dá)的有效性、可靠性。同時(shí)系統(tǒng)還預(yù)留部分接口,為系統(tǒng)升級(jí)和數(shù)據(jù)通信帶來(lái)方便。
參考文獻(xiàn)
[1] 符艷輝,李?lèi)?ài)琴.基于單片機(jī)的控制的超聲波測(cè)距儀的設(shè)計(jì)[J].農(nóng)業(yè)與技術(shù),2008,28(1):171-173.
[2] 微雪電子有限公司.ATmega16中文技術(shù)資料[S]. http://www.waveshare.net/datasheet_pdf/atmega16-pdf.html,2010-03-12.
[3] 周興華. AVR單片機(jī)C語(yǔ)言高級(jí)程序設(shè)計(jì)[M]. 北京:中國(guó)電力出版社,2008:88-113,267-278.
[4] 崔海朋. 基于MSP430F2274單片機(jī)的倒車(chē)?yán)走_(dá)設(shè)計(jì)[J]. 今日電子,2008(9):81-83.