[摘要] 利用位差超聲波傳感器作為輪式教育機器人的雙眼, C51單片機作為輪式教育機器人的大腦,通過對超聲波的發(fā)送與接收來獲取前方物體的距離值,使輪式教育機器人能夠隨時監(jiān)控前方障礙物并作出不同的運動策略 。
[關(guān)鍵詞] 距離檢測;避障;導(dǎo)航;超聲波傳感器
doi : 10 . 3969 / j . issn . 1673 - 0194 . 2011 . 22. 026
[中圖分類號]TP242 [文獻標識碼]A [文章編號]1673 - 0194(2011)22- 0048- 02
近年來輪式教育機器人(智能玩具小車)作為單片機系統(tǒng)設(shè)計的教學(xué)案例,以其簡單實用,趣味性強的特點越來越受到各類學(xué)校歡迎;而各種傳感器夠成了智能玩具獲取外界數(shù)據(jù)的“感知系統(tǒng)”。本文介紹的超聲波傳感器是利用超聲波的特性研制而成的傳感器, 它是通過傳送一個超聲波(遠高于人的聽覺范圍)和提供一個對應(yīng)于爆裂回聲返回到傳感器所需時間的輸出脈沖來工作的。
1 硬件設(shè)計
1. 1位差超聲波距離傳感器基本原理
在主機微控制器發(fā)送的觸發(fā)脈沖的控制下,位差超聲波傳感器發(fā)出40 kHz的(超聲波)爆裂聲,此爆裂聲在空氣中以約344.42m/s的速度傳播,當(dāng)碰到物體時便反射回到傳感器,此時傳感器會產(chǎn)生一個輸出脈沖,向主機微控制器表示回波被探測,這個脈沖寬度就是對應(yīng)于爆裂回聲返回到傳感器所需時間(參見圖1)。
1.2硬件電路設(shè)計
系統(tǒng)采用“MCU+傳感器+顯示設(shè)備+執(zhí)行機構(gòu)”的總體設(shè)計方案,要求MCU對非接觸式傳感器獲取的外部距離信息進行計算轉(zhuǎn)換,將得出的輪式機器人與前方障礙物的距離值送到顯示設(shè)備顯示,并根據(jù)程序設(shè)定的距離閾值控制輪式機器人實現(xiàn)自動導(dǎo)航功能。
其中MCU采用目前性價比較高的AT89C51單片機;傳感器采用“位差超聲波傳感器”,以非接觸的形式測量前方物體的距離;顯示設(shè)備采用LCD 1602液晶顯示模塊;執(zhí)行機構(gòu)采用PARALLAX公司生產(chǎn)的連續(xù)旋轉(zhuǎn)伺服電機,其優(yōu)點是編程控制方便且不需額外增加驅(qū)動電路。系統(tǒng)總體框圖如圖2所示。
2軟件設(shè)計
2.1測距程序設(shè)計
測距子程序的基本設(shè)計思路如圖3所示。
程序設(shè)計思路主要分為兩步:
(1)先是根據(jù)位差超聲波傳感器的控制時序圖(如圖4所示),起動位差超聲波距離傳感器,即通過單片機編程,給超聲波傳感器的信號引腳提供一個持續(xù)時間為5μs的高電平,然后拉低信號引腳750μs,這樣位差超聲波傳感器就被啟動,發(fā)出超聲爆裂,與此同時,啟動單片機的定時器開始計數(shù),當(dāng)超聲波遇到物體時會立即反射回來,位差超聲波傳感器的接收器接到回波時,會自動拉低其信號引腳的電平,單片機查詢到此引腳的電平下降沿到來時停止定時器計數(shù),此時定時器計數(shù)值就間接反映了超聲波從發(fā)射到返回所經(jīng)歷的時間。
(2)然后讀出定時器的計數(shù)值除以2,便得到超聲波遇到被測物體后返回的時間,根據(jù):距離=速度×?xí)r間,就可以計算出前方物體的距離,因超聲波在常溫下的空氣介質(zhì)中傳播的速度大約為344m/s, 即29.034μs超聲波能傳播1cm,具體編程時在程序中用語句x=count/29.034來計算距離值,獲得被測距離值后,調(diào)用LCD顯示函數(shù)將距離值在LCD模塊上顯示出來。
2.2程序運行結(jié)果
編譯程序,將生成的HEX文件燒寫到控制板上的單片機程序存儲器,開機運行,智能玩具小車按程序設(shè)定運行模式前進,當(dāng)前方有物體時,在LCD顯示屏上實時準確地顯示出小車和前方物體之間的距離值,當(dāng)小車距前方物體小于程序設(shè)定的距離閾值時,小車掉轉(zhuǎn)方向繼續(xù)前進,經(jīng)反復(fù)實驗表明:位差超聲波距離傳感器在下列情況下不能精確地測量距離,如圖5所示。
(a)與物體距離大于3米。
(b)與物體的表面形成的反射角度太小,使聲音不能反射回到傳感器。
(c)物體太小導(dǎo)致沒有足夠強度的聲音返回到傳感器。
3 結(jié)語
超聲波傳感器在非接觸性測量方面的應(yīng)用非常廣泛,可用于如檢測液體水位(特別是具有腐蝕性的液體,如硫酸、硝酸等液體),汽車倒車防撞系統(tǒng),金屬/非金屬探傷,機器人感知系統(tǒng)設(shè)計等。本文介紹利用位差超聲波傳感器與51單片機構(gòu)成輪式教育機器人的“距離感知系統(tǒng)”,具有電路接口簡單,成本低廉,穩(wěn)定性好等特點,但其測量精度受到位差超聲波傳感器的最大測量距離以及與被測物體的反射角等因素限制。
主要參考文獻
[1]王曉明.電動機的單片機控制[M].北京:北京航空航天大學(xué)出版社,2002.
[2]曾喜良,趙歡.基于C8051F020的PWM調(diào)速控制[J].計算機與數(shù)字工程,2008,36(8):195-197.
[3]玄子玉,曹海波.基于單片機的直流電動機閉環(huán)調(diào)速系統(tǒng)的設(shè)計[J].煤炭技術(shù),2008,27(11):24-26.
[4]曹杰,史金飛,戴敏. 基于MEGA8單片機的無傳感器無刷直流電機控制系統(tǒng)設(shè)計[J]. 自動化儀表,2005,26(12):13-16.
[5]賈玉瑛,王臣. 基于單片機控制的PWM 直流調(diào)速系統(tǒng)[J]. 包頭鋼鐵學(xué)院學(xué)報,2005(4):334-337.
[6]鄭憲偉,趙玉林,陳廣大. 基于AVR單片機的直流電動機PWM 閉環(huán)調(diào)速系統(tǒng)的設(shè)計[J]. 煤礦機械,2008(1):120-122.