<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > 51單片機(jī)設(shè)計(jì)的超聲波測距器

          51單片機(jī)設(shè)計(jì)的超聲波測距器

          作者: 時(shí)間:2012-06-07 來源:網(wǎng)絡(luò) 收藏

            3.檢測接受電路

            參考紅外轉(zhuǎn)化接收期刊的電路采用集成電路CX20106A,這是一款紅外線檢波接收的專用芯片,常用于電視機(jī)紅外遙控接收器??紤]到紅外遙控常用的載波頻率38KHz與測距頻率40KHz較為接近,可以利用它作為檢測電路。實(shí)驗(yàn)證明其具有很高的靈敏度和較強(qiáng)的抗干擾能力。適當(dāng)改變C4的大小,可改變接受電路的靈敏度和抗干擾能力。

          點(diǎn)擊在新窗口中瀏覽產(chǎn)品

          超聲波接收電路圖

            五、系統(tǒng)程序設(shè)計(jì)

            超聲波測距軟件設(shè)計(jì)主要由主程序,超聲波發(fā)射子程序,超聲波接受中斷程序及顯示子程序組成。下面對超聲波的算法,主程序,超聲波發(fā)射子程序和超聲波接受中斷程序逐一介紹。

            1.超聲波的算法設(shè)計(jì)

            下圖示意了超聲波測距的原理,即超聲波發(fā)生器T在某一時(shí)刻發(fā)出的一個(gè)超聲波信號,當(dāng)超聲波遇到被測物體后反射回來,就被超聲波接收器R所接受。這樣只要計(jì)算出發(fā)生信號到接受返回信號所用的時(shí)間,就可算出超聲波發(fā)生器與反射物體的距離。

            距離計(jì)算公式:d=s/2=(c*t)/2

            *d為被測物與的距離 ,s為聲波的來回路程,c為聲速,t為聲波來回所用的時(shí)間

          聲速c與溫度有關(guān),如溫度變化不大,則可認(rèn)為聲速是基本不變的。如果測距精度要求很高,則應(yīng)通過溫度補(bǔ)償?shù)姆椒右孕UB曀俅_定后,只要測得超聲波往返時(shí)間,即可求得距離。在系統(tǒng)加入溫度傳感器來監(jiān)測環(huán)境溫度,可進(jìn)行溫度被償。這里可以用DS18B20測量環(huán)境溫度,根據(jù)不同的環(huán)境溫度確定一聲速提高測距的穩(wěn)定性。為了增強(qiáng)系統(tǒng)的可靠性,應(yīng)在軟硬件上采用抗干擾措施。

             不同溫度下的超聲波聲速表
          點(diǎn)擊在新窗口中瀏覽產(chǎn)品

            
          2.主程序

            主程序首先對系統(tǒng)環(huán)境初始化,設(shè)置定時(shí)器T0工作模式為16位的定時(shí)計(jì)數(shù)器模式,置位總中斷允許位EA并給顯示端P0和P2清0。然后調(diào)用超聲波發(fā)生子程序送出一個(gè)超聲波脈沖,為避免超聲波從發(fā)射器直接傳送到接收器引起的直接波觸發(fā),需延遲0.1ms(這也就是測距器會有一個(gè)最小可測距離的原因)后,才打開外中斷0接收返回的超聲波信號。由于采用12MHz的晶振,機(jī)器周期為1us,當(dāng)主程序檢測到接收成功的標(biāo)志位后,將計(jì)數(shù)器T0中的數(shù)(即超聲波來回所用的時(shí)間)按下式計(jì)算即可測得被測物體與測距儀之間的距離,設(shè)計(jì)時(shí)取20℃時(shí)的聲速為344 m/s則有:

            d=(C*T0)/2 =172T0/10000cm(其中T0為計(jì)數(shù)器T0的計(jì)數(shù)值)

            測出距離后結(jié)果將以十進(jìn)制BCD碼方式LED,然后再發(fā)超聲波脈沖重復(fù)測量過程。主程序框圖如下

          點(diǎn)擊在新窗口中瀏覽產(chǎn)品


           
          3. 超聲波發(fā)生子程序和超聲波接收中斷程序

            超聲波發(fā)生子程序的作用是通過P1.0端口發(fā)送2個(gè)左右的超聲波信號頻率約40KHz的方波,脈沖寬度為12us左右,同時(shí)把計(jì)數(shù)器T0打開進(jìn)行計(jì)時(shí)。超聲波測距器主程序利用外中斷0檢測返回超聲波信號,一旦接收到返回超聲波信號(INT0引腳出現(xiàn)低電平),立即進(jìn)入中斷程序。進(jìn)入該中斷后就立即關(guān)閉計(jì)時(shí)器T0停止計(jì)時(shí),并將測距成功標(biāo)志字賦值1。如果當(dāng)計(jì)時(shí)器溢出時(shí)還未檢測到超聲波返回信號,則定時(shí)器T0溢出中斷將外中斷0關(guān)閉,并將測距成功標(biāo)志字賦值2以表示此次測距不成功。

          點(diǎn)擊在新窗口中瀏覽產(chǎn)品



          六、軟硬件調(diào)試及性能

            超聲波測距儀的制作和調(diào)試,其中超聲波發(fā)射和接收采用Φ15的超聲波換能器TCT40-10F1(T發(fā)射)和TCT40-10S1(R接收),中心頻率為40kHz,安裝時(shí)應(yīng)保持兩換能器中心軸線平行并相距4~8cm,其余元件無特殊要求。若能將超聲波接收電路用金屬殼屏蔽起來,則可提高抗干擾能力。根據(jù)測量范圍要求不同,可適當(dāng)調(diào)整與接收換能器并接的濾波電容C4的大小,以獲得合適的接收靈敏度和抗干擾能力。

            硬件電路制作完成并調(diào)試好后,便可將程序編譯好下載到單片機(jī)試運(yùn)行。根據(jù)實(shí)際情況可以修改超聲波發(fā)生子程序每次發(fā)送的脈沖寬度和兩次測量的間隔時(shí)間,以適應(yīng)不同距離的測量需要。根據(jù)所設(shè)計(jì)的電路參數(shù)和程序,測距儀能測的范圍為0.07~5.5m,測距儀最大誤差不超過1cm。系統(tǒng)調(diào)試完后應(yīng)對測量誤差和重復(fù)一致性進(jìn)行多次實(shí)驗(yàn)分析,不斷優(yōu)化系統(tǒng)使其達(dá)到實(shí)際使用的測量要求。

            后續(xù)工作需實(shí)驗(yàn)后才能驗(yàn)證

            根據(jù)參考電路和集成的電路器件測距范圍有限10m以內(nèi)為好。


          上一頁 1 2 下一頁

          關(guān)鍵詞: 51單片機(jī) 超聲波 測距器

          評論


          相關(guān)推薦

          技術(shù)專區(qū)

          關(guān)閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();