|
汽車倒車中使用的倒車?yán)走_(dá)防撞報(bào)警系統(tǒng)即是俗稱的倒車?yán)走_(dá),在汽車倒車時(shí),超聲波倒車?yán)撞捎贸暡y(cè)距原理探測(cè)汽車尾部離障礙物的距離,是汽車泊車輔助裝置。倒車時(shí),當(dāng)汽車尾部探測(cè)到障礙物時(shí),倒車?yán)走_(dá)就實(shí)時(shí)動(dòng)態(tài)顯示離障礙物的距離,達(dá)到設(shè)定的安全警告值時(shí),倒車?yán)走_(dá)立即發(fā)出報(bào)警聲,以警示駕駛員,輔助駕駛員安全倒車。現(xiàn)在大多數(shù)都配置有倒車?yán)走_(dá)。倒車?yán)走_(dá)電路種類較多,本文介紹基于單片機(jī)控制的倒車?yán)走_(dá)系統(tǒng),該系統(tǒng)采用通用型單片機(jī)作為控制電路,方便系統(tǒng)功能擴(kuò)展。系統(tǒng)電路主要采用集成器件構(gòu)成,外圍元件少,電路簡(jiǎn)潔、調(diào)試方便、成本低,利于商品化生產(chǎn)。
1超聲波倒車?yán)紫到y(tǒng)組成及工作原理 倒車防撞預(yù)警系統(tǒng)由四路收發(fā)一體封閉(防水)型超聲波傳感器及其超聲波發(fā)射與回波接收電路、超聲波電信號(hào)放大電路、單片機(jī)控制電路、LED數(shù)碼管顯示電路和蜂鳴器聲音報(bào)警電路組成。系統(tǒng)組成框圖如圖1所示。
當(dāng)汽車倒車時(shí)由倒車換擋裝置自動(dòng)接通超聲波倒車?yán)紫到y(tǒng)電源,系統(tǒng)上電復(fù)位,進(jìn)入工作狀態(tài)。單片機(jī)編程產(chǎn)生一串40kHz的矩形脈沖電壓,經(jīng)四選一模擬開(kāi)關(guān)加到超聲波發(fā)射與回波接收電路,經(jīng)放大驅(qū)動(dòng)超聲波傳感器發(fā)射出超聲波,同時(shí)單片機(jī)開(kāi)始計(jì)時(shí)。發(fā)射出的超聲波碰到障礙物后形成反射波,部分反射波返回作用于超聲波傳感器,經(jīng)超聲波傳感器的聲/電轉(zhuǎn)換,變成微弱的電信號(hào),該微弱的電信號(hào)經(jīng)放大、整形產(chǎn)生負(fù)跳變電壓,向單片機(jī)發(fā)出中斷申請(qǐng)。單片機(jī)收到中斷申請(qǐng)的信號(hào)后,立即響應(yīng)中斷,執(zhí)行外部中斷服務(wù)程序,停止計(jì)時(shí),得到超聲波發(fā)送和返回的時(shí)間T,計(jì)算出發(fā)射點(diǎn)離障礙物的距離S,即:S=(C·T)/2。C是超聲波在空氣中的傳播速度,在常溫25℃時(shí),C約為346m/s。若發(fā)射出的超聲波在測(cè)距范圍內(nèi)未遇到障礙物,直到單片機(jī)定時(shí)中斷產(chǎn)生,執(zhí)行定時(shí)中斷服務(wù)程序,選擇下一路,依次按后左路、后左中路、后右中路、后右路的順序繼續(xù)發(fā)射和接收超聲波,并經(jīng)過(guò)計(jì)算處理。四路探測(cè)處理完畢,選擇四路中測(cè)出的最小距離值通過(guò)LED數(shù)碼管顯示出來(lái)。當(dāng)最小距離值小于預(yù)先設(shè)定的報(bào)警距離時(shí),單片機(jī)接通蜂鳴器的電源,蜂鳴器發(fā)出報(bào)警聲。若四路探測(cè)無(wú)回波中斷申請(qǐng),則顯示“-.--”,表明在安全距離內(nèi)沒(méi)有障礙物,再繼續(xù)下一輪的循環(huán)探測(cè)處理。
2超聲波倒車?yán)紫到y(tǒng)硬件電路的設(shè)計(jì)
2.1超聲波發(fā)射與回波接收電路
超聲波發(fā)射與回波接收電路的主要作用是提高驅(qū)動(dòng)超聲波傳感器的脈沖電壓幅值,有效地進(jìn)行電/聲轉(zhuǎn)換,增大超聲波的發(fā)射距離,并通過(guò)收發(fā)一體的超聲波傳感器將返回的超聲波轉(zhuǎn)變成微弱的電信號(hào)。超聲波發(fā)射與回波接收電路如圖2所示(畫(huà)出一路,其他三路與該路一樣)。
EFR40RS是收發(fā)一體封閉(防水)型超聲波傳感器,其中心頻率f0=(40.0±1.0)kHz,-3 dB帶寬1kHz。驅(qū)動(dòng)電壓峰一峰值要求60~150V。CD4052是雙路四選一模擬開(kāi)關(guān),單片機(jī)的P3.4和P3.5端口輸出選通信號(hào),單片機(jī)的P3.3端口輸出一串40kHz的脈沖電壓,通過(guò)CD4052的X路加到選通的開(kāi)關(guān)三極管Q1基極,經(jīng)脈沖變壓器T1升壓至100VP-P左右,驅(qū)動(dòng)超聲波傳感器EFR40RS發(fā)射超聲波。發(fā)射時(shí)的脈沖電壓幅值大小直接影響測(cè)距的遠(yuǎn)近,應(yīng)采用超聲波專用的脈沖變壓器。反射回的超聲波經(jīng)原收發(fā)一體封閉型超聲波傳感器變成毫伏級(jí)的一串脈沖電信號(hào)。由于回波電信號(hào)的幅值小,VD3和VD4二極管截止,該信號(hào)不會(huì)通過(guò)T1變壓器副邊線圈形成短路。VD1和VD2二極管也截止,所以回波電信號(hào)經(jīng)R1和C1,通過(guò)CD4052的Y路送到超聲波電信號(hào)放大與整形電路。R1和VD1,VD2組成雙向限幅電路,避免發(fā)射時(shí)的大信號(hào)造成超聲波放大與整形電路阻塞,甚至損壞電路。
2.2超聲波電信號(hào)放大電路
超聲波電信號(hào)放大電路采用集成電路CX20106A構(gòu)成。CX20106A是日本索尼公司生產(chǎn)的紅外遙控信號(hào)接收集成電路。通過(guò)外部所接電阻,將其內(nèi)部帶通濾波電路的中心頻率f0設(shè)置為40kHz,就可以接收放大超聲波電信號(hào),并整形輸出負(fù)脈沖電壓。
超聲波測(cè)距應(yīng)用電路圖如圖3所示。1腳是超聲波電信號(hào)輸入端,2腳與地之間連接RC串聯(lián)網(wǎng)絡(luò),是內(nèi)部前置放大電路負(fù)反饋網(wǎng)絡(luò)的組成部分。電阻R5的數(shù)值確定前置放大電路的增益。R5電阻值減小,負(fù)反饋減弱,放大倍數(shù)增大;反之,則放大倍數(shù)減小。3腳與地之間連接檢波電容C3,適當(dāng)改變電容C3的大小,可以改變超聲波電信號(hào)放大和整形電路的靈敏度和抗干擾能力。C3電容量大,靈敏度低,抗干擾能力強(qiáng);C3容量小,靈敏度高,抗干擾能力弱,易造成誤動(dòng)作。5腳與電源間接入一個(gè)電阻,用以設(shè)置內(nèi)部帶通濾波電路的中心頻率f0。
當(dāng)R6=200 kΩ時(shí),f0=40 kHz。6腳與地之間接一個(gè)積分電容,標(biāo)準(zhǔn)值為330pF。如果該電容值取得太大,會(huì)使探測(cè)距離變短。7腳是電路集電極開(kāi)路輸出端,R7是該引腳的上拉電阻。集成電路CX20106A無(wú)信號(hào)輸入時(shí),7腳輸出高電平,當(dāng)輸入的超聲波電信號(hào)經(jīng)放大、整形后,7腳輸出一個(gè)負(fù)脈沖電壓。
2.3單片機(jī)控制電路和顯示、報(bào)警電路
電路圖如圖4所示。由于系統(tǒng)用到單片機(jī)的輸入/輸出端口不多,在不考慮功能擴(kuò)展時(shí),從功能夠用和低成本的角度考慮,采用AT89C2051單片機(jī)作為控制電路的核心器件。AT89C2051單片機(jī)共有20個(gè)引腳,其中有15個(gè)I/O端口(P3.6無(wú)引出腳)。兩個(gè)16位定時(shí)器/計(jì)數(shù)器,其體積小、價(jià)格低。采用12MHz高精度的晶振,以獲得較穩(wěn)定的時(shí)鐘頻率,減小測(cè)量誤差。單片機(jī)的P3.3端口周期性的輸出一串40kHz的矩形脈沖,通過(guò)雙路四選一模擬開(kāi)關(guān)CD4052周期性地加到四路超聲波發(fā)射與回波接收電路。單片機(jī)的P3.4和P3.5端口輸出雙路四選一模擬開(kāi)關(guān)CD4052的選通信號(hào)。單片機(jī)的P3.2端口為外部中斷0中斷申請(qǐng)信號(hào)輸入端。三位LED數(shù)碼管采用動(dòng)態(tài)掃描顯示。U4的小數(shù)點(diǎn)常亮,U4的單位為m,U5的單位為dm,U6的單位為cm。采用有源蜂鳴器作為報(bào)警發(fā)音器件,一是器件成本低,二是便于動(dòng)態(tài)掃描顯示的軟件編程。
3系統(tǒng)軟件的設(shè)計(jì)
系統(tǒng)軟件采用模塊化設(shè)計(jì),方便擴(kuò)展移植。采用匯編語(yǔ)言編程。主要有主程序、T0中斷服務(wù)程序、外部中斷0服務(wù)程序、超聲波發(fā)生子程序。
3.1主程序
本系統(tǒng)有四路測(cè)距通道,采用分時(shí)工作,按后左一后左中一后右中一后右順序循環(huán)測(cè)距。每一路發(fā)射超聲波后的等待外部中斷時(shí)間應(yīng)大于超聲波在最大有效探測(cè)距離內(nèi)往返時(shí)間。所以按最大有效探測(cè)距離可以估算出最短的循環(huán)間隔時(shí)間。因?yàn)槌暡ㄔ诳諝庵袀鞑ツ芰繒?huì)不斷衰減,所以超聲波測(cè)距存在最大有效探測(cè)距離。這最大有效探測(cè)距離與多種因數(shù)有關(guān):
與超聲波傳感器性能的好壞、與驅(qū)動(dòng)超聲波傳感器的脈沖電壓幅值(功率)的大小、障礙物大小和形狀、障礙物吸波特性以及反射波與入射波之間的夾角、與超聲波放大和整形電路的靈敏度等有關(guān)。設(shè)定最大有效探測(cè)距離為8m(收發(fā)一體封閉型超聲波傳感器比較難達(dá)到,實(shí)際上也沒(méi)有必要探測(cè)很遠(yuǎn)的障礙物,只是設(shè)計(jì)留有裕量。由于顯示位數(shù)有限,也必須對(duì)最大探測(cè)距離做限制),則循環(huán)工作的間隔時(shí)間Tm=2S/C=2×8/346ms,加上避免接收超聲波傳感器余振的延時(shí)和程序執(zhí)行時(shí)間,留足裕量,設(shè)定Tm△56 ms。
主程序流程圖如圖5所示。首先是對(duì)系統(tǒng)初始化。端口p1.0、P3.3置0;設(shè)置堆棧,中斷允許總控制位EA允許中斷(EA=1);允許外部中斷0中斷(EX0=1),采用邊沿觸發(fā)方式(IT0=1);設(shè)置定時(shí)器T0允許中斷(ET0=1),以16位工作方式定時(shí)約56ms;設(shè)置定時(shí)器T1以16位工作方式定時(shí)/計(jì)數(shù),計(jì)數(shù)初值0000H,然后啟動(dòng)T0定時(shí)。設(shè)置顯示數(shù)據(jù)初值為三位BCD碼999(cm),對(duì)應(yīng)字形段碼顯示“---”。四路探測(cè)處理完畢后,將四組數(shù)據(jù)中的最小值送入顯示緩沖區(qū),通過(guò)LED數(shù)碼管顯示。同時(shí)該值與設(shè)定的100cm值比較,若四組數(shù)據(jù)中的最小值小于100 ,P3.7端口置0,Q2三極管導(dǎo)通,有源蜂鳴器得電發(fā)出報(bào)警聲。
由于單片機(jī)采用12MHz的晶振,1個(gè)機(jī)器周期為1μs,所以計(jì)數(shù)器每計(jì)一個(gè)數(shù)就是1μs,定時(shí)器T1工作模式設(shè)置為16位定時(shí)/計(jì)數(shù)器模式,則其最大定時(shí)65.536ms。由于定時(shí)器T0每56ms產(chǎn)生中斷,執(zhí)行T0中斷服務(wù)程序時(shí)停止T1計(jì)時(shí),所以T1計(jì)時(shí)不會(huì)產(chǎn)生溢出中斷。一輪四路探測(cè)處理完畢所用時(shí)間大約是56ms×4=224 ms,用時(shí)很短,而倒車速度又比較慢,所以可以做到實(shí)時(shí)動(dòng)態(tài)顯示。
3.2T0中斷服務(wù)程序
T0中斷服務(wù)程序流程圖如圖6所示。每隔56ms分別按后左→后左中→后右中→后右順序選通下一路超聲波發(fā)射與回波接收電路,調(diào)用超聲波發(fā)生子程序,送出10kHz的超聲波脈沖電壓,定時(shí)器T1開(kāi)始計(jì)時(shí),定時(shí)器T0開(kāi)始定時(shí)56 ms,使每路工作56 ms。
為了避免接收到超聲波傳感器余振的直射波產(chǎn)生的中斷申請(qǐng),延時(shí)2.8ms后,才允許外部中斷0中斷,等待接收返回的超聲波信號(hào)。所以,最小探測(cè)距離(盲區(qū))Smin=Ct/2=346×0.0028/2△0.48m。四路探測(cè)處理完畢,將四路中最小值送入顯示緩沖區(qū)。若在四路探測(cè)中有些路在有效探測(cè)范圍內(nèi)發(fā)射的超聲波未遇障礙物,無(wú)返回波,外部中斷0不產(chǎn)生中斷申請(qǐng)信號(hào),或者是進(jìn)入探測(cè)盲區(qū),外部中斷0產(chǎn)生的中斷申請(qǐng)不被受理,則定時(shí)器T1計(jì)時(shí)到定時(shí)器T0產(chǎn)生中斷,在T0中斷服務(wù)程序中,用三位BCD碼999(三位十進(jìn)制數(shù)最大值999cm)置夠四組數(shù)據(jù)。若顯示緩沖區(qū)的四組數(shù)據(jù)都是999時(shí),則對(duì)應(yīng)字形段碼顯示“---”。倒車伊始,LED數(shù)碼顯示器就顯示“-.--”,表明在安全距離內(nèi)沒(méi)有障礙物;若發(fā)出報(bào)警聲后,又顯示“-.--”,表明進(jìn)入了探測(cè)盲區(qū)。
3.3外部中斷0服務(wù)程序
外部中斷O服務(wù)程序流程圖如圖7所示。單片機(jī)一旦接收到返回超聲波信號(hào)(即INT0引腳由高電平跳變?yōu)榈碗娖?,立即進(jìn)入外部中斷0服務(wù)程序。首先停止定時(shí)器T1計(jì)時(shí),禁止外部中斷0中斷。然后將定時(shí)器T1中的數(shù)N,也即將超聲波往返所用的時(shí)間N(單位:μs),按式S=CT/2=(346x N×10-6)/2=173×N÷10000計(jì)算,即得被測(cè)物的距離(單位:cm),將計(jì)算結(jié)果以百位十位、個(gè)位BCD碼方式送入比較大小的緩沖區(qū),以備比較大小使用。然后等待定時(shí)器T0定時(shí)56ms中斷的產(chǎn)生,繼續(xù)下一路的探測(cè)處理。
3.4超聲波發(fā)生子程序
超聲波發(fā)生子程序通過(guò)P3.3端口發(fā)送16個(gè)周期是25μs(即頻率40 kHz,1個(gè)周期內(nèi)高電平持續(xù)13μs、低電平持續(xù)12μs)的矩形脈沖電壓。脈沖串個(gè)數(shù)在10~20個(gè)比較合適。脈沖個(gè)數(shù)太少,發(fā)射強(qiáng)度小,探測(cè)距離短;脈沖個(gè)數(shù)太多,發(fā)射持續(xù)時(shí)間長(zhǎng),在離障礙物距離近時(shí),脈沖串尚未發(fā)射完畢,先發(fā)射出去的脈沖產(chǎn)生的回波就到達(dá)接收端,影響測(cè)距結(jié)果,造成測(cè)距盲區(qū)增大。
4實(shí)現(xiàn)應(yīng)用分析
本系統(tǒng)在實(shí)驗(yàn)室條件下進(jìn)行了可行性的研究設(shè)計(jì),要實(shí)際應(yīng)用中就必須考慮測(cè)量精度和工作穩(wěn)定性的問(wèn)題。因此,本系統(tǒng)可采取幾項(xiàng)措施來(lái)提高測(cè)量精度和工作穩(wěn)定性。
(1)超聲波的傳播速度與溫度有關(guān)。為了適應(yīng)不同環(huán)境溫度下的測(cè)距需要,提高測(cè)量精度,硬件電路上可增加檢測(cè)車外環(huán)境溫度的環(huán)節(jié)。單片機(jī)根據(jù)實(shí)測(cè)的溫度值,再計(jì)算確定超聲波的傳播速度,即C=331.4+0.6lt。t是環(huán)境溫度。或者在不增加硬件成本情況下,可考慮通過(guò)實(shí)驗(yàn)數(shù)據(jù)分析,找到測(cè)量值與實(shí)際值偏差特點(diǎn)和規(guī)律,通過(guò)軟件編程對(duì)測(cè)量數(shù)據(jù)進(jìn)行校正處理。
(2)軟件設(shè)計(jì)中采用數(shù)字濾波中的算術(shù)平均濾波程序?qū)γ總(gè)測(cè)距點(diǎn)進(jìn)行連續(xù)多次測(cè)量,取平均值作為該測(cè)距點(diǎn)的測(cè)量數(shù)據(jù),以提高數(shù)據(jù)采樣的可靠性。要盡量減小探測(cè)盲區(qū),所設(shè)定的延時(shí)時(shí)間可根據(jù)實(shí)際所用超聲波傳感器余振時(shí)間而定,可在實(shí)際調(diào)試中確定最小延時(shí)時(shí)間。
(3)倒車?yán)走_(dá)安裝在車上,倒車?yán)走_(dá)的工作環(huán)境非常惡劣,汽車倒車工作時(shí),高壓點(diǎn)火產(chǎn)生很強(qiáng)的電磁輻射,會(huì)影響電路正常工作。所以在硬件及軟件方面要考慮采取抗干擾措施,提高系統(tǒng)工作的可靠性。如用金屬殼屏蔽電路,采用屏蔽線連接超聲波傳感器;在滿足測(cè)量距離的情況下,可適當(dāng)調(diào)大超聲波電信號(hào)放大和整形電路中檢波電容C3的容量。硬件上可增加“看門(mén)狗”電路,軟件設(shè)計(jì)添加指令冗余軟件陷阱、或設(shè)置軟件“看門(mén)狗”,防止程序“跑飛”或者進(jìn)入死循環(huán)。對(duì)于駕駛員來(lái)說(shuō),倒車時(shí)主要關(guān)心的是車后方有無(wú)障礙物、以及障礙物離車大約有多遠(yuǎn)等問(wèn)題。由于車子制動(dòng)時(shí)存在慣性,倒車遇到障礙物時(shí),駕駛員總要提前制動(dòng)。考慮性價(jià)比,倒車?yán)走_(dá)測(cè)量精度不必很高。但從倒車安全考慮,此時(shí)的測(cè)量顯示值寧大勿小。
5 結(jié) 語(yǔ)
本系統(tǒng)充分利用了單片機(jī)的內(nèi)部資源,用軟件編程產(chǎn)生超聲波矩形脈沖,代替硬件的超聲波發(fā)生電路,節(jié)省了硬件成本。采用一塊集成器件實(shí)現(xiàn)超聲波接收放大和整形,避免了采用多級(jí)集成運(yùn)放組成高增益放大電路易產(chǎn)生自激等問(wèn)題。實(shí)驗(yàn)表明設(shè)計(jì)可行。在不增加硬件成本時(shí),通過(guò)完善軟件設(shè)計(jì),可提高系統(tǒng)測(cè)量精度和工作的可靠性,能夠滿足使用要求。在考慮功能擴(kuò)展時(shí),可以采用帶“看門(mén)狗”的AT89S52單片機(jī),以增加擴(kuò)展端口。在超聲波測(cè)距的基礎(chǔ)上,如可增加防盜報(bào)警功能、車載蓄電池電壓檢測(cè)功能等,若增加微型攝像頭和小型液晶顯示器,便成為可直接觀察車后方的可視倒車?yán)走_(dá)。本系統(tǒng)實(shí)用性強(qiáng),性價(jià)比高。
|
|