基于C8051F020的高精度超聲波測距系統(tǒng)設(shè)計(jì)
掃描二維碼
隨時(shí)隨地手機(jī)看文章
摘要:利用C8051F020單片機(jī)設(shè)計(jì)高精度非接觸式的超聲波測距。該系統(tǒng)利用4個(gè)HC-SR04超聲波測距模塊,四面測距,簡化電路,減少了其他電路對超聲波測距的干擾。在提高精度方面采用溫、濕度補(bǔ)償,電路使用DS18B20及濕敏電容器HS1101。系統(tǒng)測距范圍2~400 cm,精度1 cm,并采用LCD12864顯示溫、濕度和四面距離。該系統(tǒng)具有結(jié)構(gòu)簡單,工作可靠,精度高的優(yōu)點(diǎn),實(shí)時(shí)顯示四周障礙距離及溫、濕度,可置于小車上,用于避障,智能導(dǎo)航等。
關(guān)鍵詞:超聲波測距;智能導(dǎo)航;C8051F020;HC-SRO4
0 引言
超聲波是由壓電陶瓷的壓電效應(yīng)產(chǎn)生,這種壓電陶瓷傳感器有2塊壓電晶片和一塊共振板,當(dāng)給它的兩極加頻率等于晶片固有頻率的脈沖信號(hào)時(shí),壓電晶片就會(huì)發(fā)生共振,并帶動(dòng)共振板振動(dòng),從而產(chǎn)生超聲波。它的頻率高于20 kHz,具有方向性好,穿透能力強(qiáng),易于獲得較集中的聲能的優(yōu)點(diǎn),且對色彩,光照度,電磁場不敏感,不易受干擾。超聲波測距技術(shù)是基于無目視能力的生物(蝙蝠等)防御及捕捉獵物生存的原理,利用超聲波在空氣媒介中傳播,碰到障礙物反射回來的時(shí)間間隔長短及被反射波的強(qiáng)弱判斷障礙物的性質(zhì)和位置的方法。它是一種非接觸式檢測方式,它不受光照度、電磁場、被測物色彩等因素的影響,信息處理簡單,速度快,成本低。本文采用單片機(jī)模控制超聲波模塊發(fā)射接收,并結(jié)合溫濕度補(bǔ)償電路,實(shí)現(xiàn)高精度的四周距離檢測。
1 整體方案設(shè)計(jì)
方案的主要任務(wù)是實(shí)現(xiàn)控制電路對四周的精確測距。通過MCU端口產(chǎn)生40 kHz的方波信號(hào),發(fā)送至HC-SR04超聲波測距模塊的發(fā)射引腳,發(fā)射后定時(shí)器T1計(jì)數(shù),并等待接收引腳電平變低,將定時(shí)器T1關(guān)閉,讀出定時(shí)器的寄存器中的值,結(jié)合溫濕度電路的采集的信號(hào)轉(zhuǎn)化出實(shí)時(shí)的聲速和頻率,利用公式:
L=TV/2
式中:L為距離;T為定時(shí)器的計(jì)數(shù)值;V為相應(yīng)環(huán)境下的聲音在空氣中在空氣中傳播的速度。
2 硬件電路設(shè)計(jì)
2.1 硬件總體設(shè)計(jì)
整個(gè)系統(tǒng)主要由單片機(jī)控制電路,超聲波測距模塊,溫度采集電路,濕度采集電路,LCD顯示器和電源電路組成。其中單片機(jī)控制電路是用于控制超聲波產(chǎn)生和轉(zhuǎn)化外部采集數(shù)據(jù);溫度采集電路是用于采集當(dāng)前外部溫度,得出當(dāng)前聲速;濕度采集電路是用于采集當(dāng)前外部濕度得出當(dāng)前頻率;LCD顯示器是用于實(shí)時(shí)顯示環(huán)境溫度,濕度及電路所測四周的距離。電源電路是用于為系統(tǒng)各個(gè)模塊提供穩(wěn)定的電源,保證各部分正常工作。系統(tǒng)總體電路設(shè)計(jì)如圖1所示。
2.2 超聲波測距模塊
HC-SR04超聲波測距模塊可提供2~400 cm的非接觸式距離感測功能,模塊包括超聲波發(fā)射器、接收器與控制電路。
基本工作原理:
(1)給模塊的發(fā)射I/O口送入超聲波信號(hào),要求至少10μs的高電平信號(hào),本系統(tǒng)提供40 kHz信號(hào),高電平持續(xù)12.5μs。
(2)有信號(hào)返回,模塊的輸出I/O口輸出一個(gè)高電平,高電平持續(xù)時(shí)間就是超聲波從發(fā)射到返回的時(shí)間。測距距離=(高電平時(shí)間×聲速)/2。
(3)被測物體的面積不少于0.5 m2且平面盡量要求平整,否則影響測量的結(jié)果。
2.3 溫、濕度采集電路
環(huán)境溫度采集部分是提高超聲波測距精度的關(guān)鍵。采用Dallas公司的DS18B20 1-wire數(shù)字溫度傳感器,使用一根信號(hào)線實(shí)現(xiàn)信號(hào)的雙向傳輸,接口簡單,便于擴(kuò)展和維護(hù)。聲速和溫度的關(guān)系:溫度越高,聲速越大。
c=331.45+0.61T
式中331.45是溫度在0℃度時(shí)聲音在空氣中的速度。就是說在地面上溫度每升高1℃,聲速增加約0.61 m/s。本系統(tǒng)就是依據(jù)這一原理提高測距精度。
環(huán)境濕度采集部分主要由濕敏電容器HS1101,555定時(shí)器TLC555和其他外圍電路元件構(gòu)成。濕度測量電路本質(zhì)是濕敏電容器的電容值與相對濕度變化的關(guān)系構(gòu)成的振蕩電路。通過測量555的輸出頻率,即可根據(jù)頻率、濕度關(guān)系算出濕度。
2.4 數(shù)據(jù)顯示
數(shù)據(jù)顯示部分通過C8051F020的端口P2作為與LCD12864通信的8位數(shù)據(jù)線,主要完成通信數(shù)據(jù)和實(shí)時(shí)信息的顯示。
2.5 系統(tǒng)供電
系統(tǒng)正常工作需要+5 V和+3.3 V電壓供電。將市電220 V/50 Hz通過9 V/10 W變壓器降壓變換后,經(jīng)過電橋整流和濾波產(chǎn)生DC 9 V,通過LM7805,ASM1117—3.3穩(wěn)壓芯片輸出穩(wěn)定+5 V和+3.3 V給整個(gè)系統(tǒng)供電。由于系統(tǒng)正常工作下電流較大,LM7805需要加散熱片,以保持系統(tǒng)長時(shí)間穩(wěn)定工作。
3 軟件設(shè)計(jì)
系統(tǒng)的軟件部分主要完成以下功能:系統(tǒng)上電,初始化各模塊,然后讀取環(huán)境溫、濕度,將測量值轉(zhuǎn)化為顯示。啟動(dòng)測距模塊,讀取4個(gè)方向的定時(shí)器值,系統(tǒng)采用先后順序啟動(dòng)4個(gè)測距,將計(jì)數(shù)值都保存在定時(shí)器1上,為避免混淆,采用實(shí)時(shí)讀取顯示,下次測距時(shí),只需覆蓋定時(shí)器1上次的計(jì)數(shù)值。用12864顯示時(shí),由單片機(jī)根據(jù)當(dāng)前溫度,依據(jù)上面提到的公式轉(zhuǎn)化。
基于STC89C52的高精度超聲波測距系統(tǒng)控制過程如圖2所示。
4 結(jié)語
對于C8051F020構(gòu)成的超聲波高精度測距系統(tǒng)進(jìn)行功能驗(yàn)證,系統(tǒng)在2~400 cm范圍內(nèi),能完成對四周障礙距離數(shù)據(jù)實(shí)時(shí)測距,且測量誤差小于1 cm,溫濕度數(shù)據(jù)采集系統(tǒng)工作正常。系統(tǒng)人機(jī)界面友好,操作簡單、可移植性好,可置于小車上用于避障或智能導(dǎo)航,只需外加接口,方便用于商業(yè)用途。