智能汽車防撞報(bào)警器的設(shè)計(jì)開發(fā)
摘 要:設(shè)計(jì)并開發(fā)了應(yīng)用于汽車的防撞系統(tǒng)?;诔暡ㄔ恚雷蚕到y(tǒng)通過發(fā)射和接收超聲波信號(hào),測算出時(shí)間差,再利用控制系統(tǒng)換算成距離,判斷處理。該系統(tǒng)采用發(fā)生器電路、換能器、線性功率放大器。另外,系統(tǒng)采取了三個(gè)防干擾措施。由于防干擾措施的實(shí)施,使系統(tǒng)能在工業(yè)現(xiàn)場中有較小的穩(wěn)態(tài)誤差,有效防止了碰撞事故的發(fā)生。
關(guān)鍵詞:單片機(jī);超聲波測距;汽車防撞雷達(dá);軟件系統(tǒng)
0 引 言
汽車防撞報(bào)警器的核心部件是汽車防撞雷達(dá)。汽車防撞雷達(dá)(俗稱電子眼)之所以能實(shí)現(xiàn)防撞報(bào)警功能,主要有超聲波這把無形尺子,它測量最近障礙物的距離,并告知車主。超聲測距原理簡單:它發(fā)射超聲波并接收反射回波,通過單片機(jī)計(jì)數(shù)器獲得兩者時(shí)間差t,利用公式S=Ct/2計(jì)算距離(S為汽車與障礙物之間的距離;C為聲波在介質(zhì)中的傳播速度,C=331.4(1+θ/273);θ為攝氏溫度。本文介紹的超聲測距系統(tǒng)共有4只超聲波換能器(俗稱探頭),分別布置在汽車的前左、前右、后左、后右4個(gè)位置上。能檢測前進(jìn)和倒車方向障礙物的距離,通過后視鏡內(nèi)置的顯示單元顯示距離和方位,發(fā)出一定的聲響,起報(bào)警防撞作用。
1 天車防撞報(bào)警儀的總體方案設(shè)計(jì)
1.1 防撞報(bào)警儀的主要設(shè)計(jì)指標(biāo)
(1)報(bào)警距離:5~30 m,根據(jù)用戶的具體需要連續(xù)可調(diào);
(2)根據(jù)用戶的需要選用分檔:0.6 m,1.0 m,1.5 m,1.8m,2.4 m;
(3)電源:車載電瓶12 V;
(4)環(huán)境溫度:-20~+70℃;
(5)報(bào)警器尺寸:155 mm×155 mm×63 mm,重量:3.5 kg。
1.2 系統(tǒng)總體方案
汽車防撞報(bào)警儀采用由AT89C52單片機(jī)為核心組成的微機(jī)系統(tǒng),對(duì)儀器進(jìn)行控制,其硬件系統(tǒng)如圖1所示。
1.3 工作原理
本防撞裝置利用聲波作為檢測波,利用超聲波作為機(jī)械波,其頻率為20 kHz~20 MHz。隨著頻率的增加,檢測距離減小,使用頻率在15~40 kHz之間,檢測距離為0.5~3.0 m,由發(fā)射器、接收器、控制器和反射板組成。發(fā)射器、接收器和控制器安裝在防撞主體(指由產(chǎn)品控制能實(shí)現(xiàn)防撞功能的汽車面板)上。發(fā)射器發(fā)出檢測波,經(jīng)反射面反射給接收器,通過判斷處理后,發(fā)送控制器執(zhí)行規(guī)定的功能?;趩纹瑱C(jī)的天車防撞系統(tǒng)采用AT89C52單片機(jī)和專用芯片測量超聲波發(fā)射到反射回所需的時(shí)間t,由S=vt(v=314 m/s,計(jì)算時(shí)加入溫度補(bǔ)償)得到從聲波發(fā)射到反射面的距離。此距離隨時(shí)顯示在汽車駕駛室內(nèi),軟件可以設(shè)置幾級(jí)提示和報(bào)警,當(dāng)車障之間距離小于安全距離時(shí),設(shè)置在駕駛室的聲光報(bào)警儀即發(fā)出聲光信號(hào),通知駕駛員謹(jǐn)慎操作,從而有效地防止碰撞事故發(fā)生,保證人身及設(shè)備的安全。
2 硬件設(shè)計(jì)
2.1 固有頻率正反饋發(fā)生器電路
在硬件電路結(jié)構(gòu)上,很重要的一點(diǎn)是保證超聲波發(fā)射頻率與換能器固有頻率的一致和穩(wěn)定,不隨時(shí)間或因溫度而漂移,同時(shí)也有利于超聲波換能器發(fā)射能量的轉(zhuǎn)換。為達(dá)到這個(gè)目的,固有頻率正反饋發(fā)生器電路是措施之一。
2.2 換能器
只使用一個(gè)換能器也有利于達(dá)到這個(gè)目的,因?yàn)榉瓷浠氐穆暡ň褪撬旧戆l(fā)射的聲波,共振頻率相同,壓電效應(yīng)最佳。從電路結(jié)構(gòu)講,發(fā)射與接收切換器,使得一個(gè)換能器起到發(fā)射與接收的兩個(gè)作用。
2.3 線性電路
線性電路包括前置放大、噪音過濾、線性放大、整形電路。將微弱的聲發(fā)射和接收信號(hào)進(jìn)行處理,使之能與單片機(jī)部分的后續(xù)電路相匹配。
2.4 微機(jī)處理器(主AT89C52)
通過軟件編程,使之能控制系統(tǒng)的正常工作。具體功能如下:聲發(fā)射控制、報(bào)警距離級(jí)別選擇、聲光語音報(bào)警、車位距離顯示、汽車和串口中斷傳送數(shù)據(jù)。
2.5 顯示部分
顯示部分由從AT89C52和LED數(shù)碼管組成,能將主AT89C52傳過來的信號(hào)經(jīng)過驅(qū)動(dòng)傳送給位于駕駛室的從AT89C52的串口,再點(diǎn)亮LED數(shù)碼管,起提示作用。
以上電路(除位于駕駛室的顯示部分外)采用集成電路芯片,使之結(jié)構(gòu)緊湊,工作可靠。對(duì)超聲波進(jìn)行編碼和解碼,能完全克服各類頻譜的汽車光源和自然光源的干擾。因帶有單片機(jī)電路結(jié)構(gòu)的系統(tǒng)必須保證抗干擾,故在本儀器中,電源電路和相應(yīng)的抗干擾電路是不可少的,軟件程序編寫也要與硬件配合,同時(shí)解決抗電磁干擾問題。既然是利用聲波測量距離,就要考慮使用現(xiàn)場的聲波環(huán)境,因?yàn)樗鼈兺瑯幽鼙怀暡〒Q能器接收到。用于測量距離的超聲波換能器的固有頻率一般都在15~40 kHz,而路面的噪音頻率是十分豐富的,它們中的聲譜頻率有與使用的換能器的固有頻率相同的部分,則干擾回波測量。因此,在硬件電路上要解決這個(gè)問題,同時(shí)在軟件程序的編制上也要有抗干擾部分。報(bào)警距離級(jí)別選擇是為了用戶在不修改程序的情況下,根據(jù)用戶自己的意愿來選擇。
3 軟件設(shè)計(jì)
為了達(dá)到前述儀器的主要功能,程序采用C51的功能模塊逐一實(shí)現(xiàn)。程序分為主程序(chret.c)和另外三個(gè)模塊文件,即display.c,eraseint.a(chǎn)51,transplant.c。
3.1 主程序
主程序框圖如圖2所示。
本程序?qū)ぷ鬟^程分了8個(gè)狀態(tài):準(zhǔn)備狀態(tài)(t0~t1)、發(fā)射超聲波(t1~t2)、不接收信號(hào)時(shí)間(t2~t3)、等待聲波反射時(shí)間(t3~t4)、測反射的個(gè)數(shù)(t4~t5)、不計(jì)反射波個(gè)數(shù),間歇一段時(shí)間(t5~t6)、再測波的個(gè)數(shù)(t6~t7)、間歇時(shí)間(t7~t0)。為測得超聲波收發(fā)時(shí)間差t,換算成距離s和判斷是否報(bào)警,程序中使用了兩個(gè)函數(shù):
一個(gè)是void t0Interrupt(void)interTupt:1 using 1,它是t0計(jì)時(shí)中斷函數(shù),通過switch語句處理由工作過程分成的8種狀態(tài)。
另外一個(gè)是函數(shù)void intInterrupt(void)interrupt2 using 2,它處理反射回來的輸入信號(hào),發(fā)生在t3~r4階段,主要是由int1外部中斷來得出時(shí)間distanceIn-time,并啟動(dòng)T1計(jì)數(shù)器,它用來計(jì)算反射波個(gè)數(shù)。
通過以上兩個(gè)函數(shù)可獲得t,后面轉(zhuǎn)換成s和判斷是否報(bào)警便迎刃而解。Chret.c的函數(shù)組成:
主程序?qū)垢蓴_采取了3個(gè)措施(防止誤報(bào)警):
(1)t4~t5狀態(tài),給反射回來的波定個(gè)窗口,對(duì)于高于33.3 Hz或小于11.1 Hz的波不計(jì)數(shù);
(2)t6~t7狀態(tài),通過測10 ms來判斷:若是干擾在此時(shí)能測到;若是正常反射,此時(shí)應(yīng)根本測不到波;
(3)對(duì)報(bào)警判斷兩次(1.3 s會(huì)自動(dòng)清0一次)。
3.2 串口通信模塊——transplant.c
主要將主AT89C52的程序中chDis準(zhǔn)確無誤傳給顯示部分(位于駕駛室),設(shè)計(jì)一個(gè)通信協(xié)議,以保證不收亂碼,即在chDis這個(gè)數(shù)據(jù)前面添加一個(gè)報(bào)頭數(shù)據(jù)Head,而后面添加一個(gè)檢驗(yàn)數(shù)據(jù)check,這樣顯示部分就只在Head出現(xiàn)時(shí)才接收,且檢驗(yàn)正確才顯示。由于測t時(shí),程序的時(shí)序已經(jīng)固定,在此基礎(chǔ)上進(jìn)行串口通信,就只能夠采用中斷方式,而不能采用查詢方式,否則將出現(xiàn)“死機(jī)”現(xiàn)象。
對(duì)于display.c,eraseint.a(chǎn)51這兩個(gè)模塊,在主程序中調(diào)用即可,功能單一:一個(gè)用來顯示數(shù)據(jù);一個(gè)用來執(zhí)行iret指令。
4 結(jié) 語
本文設(shè)計(jì)的防撞裝置在結(jié)構(gòu)上采用微電腦技術(shù)和專用芯片設(shè)計(jì),具有結(jié)構(gòu)簡單,小型化的特點(diǎn),非常適合用于測控系統(tǒng);在軟件設(shè)計(jì)上,突出模塊的靈活性,并且C51語言簡潔,大大簡化了編寫程序的工作量。比較現(xiàn)在市場上已有的汽車防撞器,該系統(tǒng)結(jié)構(gòu)緊湊,成本低,可靠性好,通信能力強(qiáng),能有效地避免汽車相撞事故的發(fā)生,具有一定的市場價(jià)值。