曾勇
【摘 要】STC89C52是STC系列單片機里應(yīng)用比較廣泛的一款,在自動化控制領(lǐng)域里享有很高的價值,以其易用性和多功能性受到了廣大電子設(shè)計愛好者的好評。本次設(shè)計的超聲波報警系統(tǒng)主要是圍繞STC89C52單片機、超聲波傳感器來完成測距報警系統(tǒng)的制作,以STC89C52為主控芯片,利用超聲波對距離的檢測,將與前方物體的距離探測出來,然后由STC89C52單片機處理運算,并與預(yù)先設(shè)定的報警距離值進行比較判斷,當(dāng)測得距離小于設(shè)定值時,STC89C52發(fā)出指令控制蜂鳴器報警。
【關(guān)鍵詞】超聲波傳感器;STC89C5
由于超聲測距是一種非接觸檢測技術(shù),不受光線、被測對象顏色等的影響,較其它儀器更衛(wèi)生,同時也更耐潮濕、粉塵、高溫、腐蝕氣體等惡劣環(huán)境,具有少維護、不污染、高可靠、長壽命等特點。因此可廣泛應(yīng)用于紙業(yè)、礦業(yè)、電廠、化工業(yè)、水處理廠、污水處理廠、農(nóng)業(yè)用水、環(huán)保檢測、食品(酒業(yè)、飲料業(yè)、添加劑、食用油、奶制品)、防汛、水文、明渠、空間定位、公路限高等行業(yè)中??稍诓煌h(huán)境中進行距離準(zhǔn)確度在線標(biāo)定,可直接用于水、酒、糖、飲料等液位控制,可進行差值設(shè)定,直接顯示各種液位罐的液位、料位高度。因此,超聲測距在特殊環(huán)境下有較廣泛的應(yīng)用。利用超聲波檢測往往比較迅速、方便、計算簡單、易于實現(xiàn)實時控制,并且在測量精度方面能達到工業(yè)實用的指標(biāo)要求,因此為了使移動機器人能夠自動躲避障礙物行走,就必須裝備測距系統(tǒng),以使其及時獲取距障礙物的位置信息(距離以及方向)。所以,超聲波測距在移動機器人的研究上得到了廣泛的應(yīng)用。同時由于超聲波測距系統(tǒng)具有以上的這些優(yōu)點,在汽車倒車?yán)走_的研制方面也得到了廣泛的應(yīng)用。
1 設(shè)計方案
本超聲波報警系統(tǒng)采用STC89C52單片機作為核心控制單元。硬件電路結(jié)構(gòu)由單片機最小系統(tǒng)、超聲波傳感器、蜂鳴器、1602液晶顯示器等組成。軟件劃分為主程序和數(shù)據(jù)采集、按鍵控制、液晶顯示、報警等子程序。正常情況下,將測量的距離在1602顯示器顯示出來。當(dāng)測得的距離小于設(shè)定距離時,主控芯片將測得的數(shù)值與設(shè)定值進行比較處理,然后控制蜂鳴器報警。
2 系統(tǒng)硬件電路圖
硬件電路設(shè)計如圖1所示,由STC89C52、超聲波傳感器、按鍵、液晶顯示器、蜂鳴器等一些電路組成。其中D1為電源指示燈。電路中用到4個按鍵:一個是設(shè)定鍵S4、一個加鍵S3、一個減鍵S2以及一個復(fù)位鍵S1。
圖1 硬件電路圖
2.1 超聲波測試模塊
超聲波模塊采用現(xiàn)成的HC-SR04超聲波模塊,該模塊可提供2cm~400cm的非接觸式距離感測功能,測距精度可達高到3mm。模塊包括超聲波發(fā)射器、接收器與控制電路。其中,VCC為電源端,GND為接地端,TRIG為觸發(fā)控制信號輸入端,ECHO為回響信號輸出端。超聲波模塊實物如圖2所示。
圖2 超聲波模塊實物圖
超聲波探測模塊HC-SR04的基本工作原理:IO口觸發(fā),給TRIG口至少10us的高電平,啟動測量;模塊自動發(fā)送8個40KHz的方波,自動檢測是否有信號返回;有信號返回,通過IO口ECHO輸出一個高電平,高電平持續(xù)的時間就是超聲波從發(fā)射到返回的時間,測試距離=(高電平時間*340)/2,單位為m。程序中測試功能主要由兩個函數(shù)完成。
2.2 顯示模塊
本次設(shè)計中的顯示模塊采用LCD1602液晶顯示,其接口電路如圖3所示。
圖3 LCD1602顯示電路 圖4 聲音報警電路圖
2.3 聲音報警電路
如圖4所示,用一個蜂鳴器、三極管和電阻接到單片機的P13引腳上,構(gòu)成聲音報警電路。
2.4 按鍵電路
本次設(shè)計的基于單片機的超聲波報警系統(tǒng)由四個按鍵來實現(xiàn)所需相關(guān)功能,分別為S1系統(tǒng)手動復(fù)位按鍵、S2系統(tǒng)報警距離減小設(shè)置按鍵(每按一次減小0.01m)、S3系統(tǒng)報警距離增大設(shè)置按鍵(每按一次增大0.01m)、S4系統(tǒng)報警距離設(shè)置/確認(rèn)按鍵。
3 系統(tǒng)軟件
軟件分為主程序和數(shù)據(jù)采集、按鍵控制、液晶顯示、報警等子程序。
4 工作過程
按下電源開關(guān),系統(tǒng)啟動,將測量的距離在1602顯示器顯示出來。
若需要將報警距離縮小,則先按下S4進入系統(tǒng)報警距離設(shè)置狀態(tài),再按下S2將距離調(diào)整至所需報警距離,最后,再次按下S4確認(rèn)設(shè)置即可。
若需要將報警距離增大,則先按下S4進入系統(tǒng)報警距離設(shè)置狀態(tài),再按下S3將距離調(diào)整至所需報警距離,最后,再次按下S4確認(rèn)設(shè)置即可。
【參考文獻】
[1]李廣弟,朱月秀,冷祖祁.單片機基礎(chǔ)[M].北京航空航天大學(xué)出版社,2007第三版.
[2]薛均義,張彥斌.MCS-51系列單片微型計算機及其應(yīng)用[M].西安交通大學(xué)出版社,2005.
[3]王倢婷.傳感器及應(yīng)用[M].中國勞動社會保障出版社,2007第一版.
[責(zé)任編輯:王楠]