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

          新聞中心

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

          基于單片機的超聲波測距系統(tǒng)的設(shè)計

          作者: 時間:2010-11-09 來源:網(wǎng)絡(luò) 收藏

          摘要:基于超聲波實現(xiàn)無接觸式測距原理,介紹了一種基于控制的超聲波測距系統(tǒng)的設(shè)計方法。由軟件產(chǎn)生40kHz超聲波,并測量回波時間,可精確到us級。為提高測距精度,采取了溫度補償、角度補償措施。實驗表明系統(tǒng)具有較高的測量精度和實用價值。
          關(guān)鍵詞:起聲波;測距;

          本文引用地址:http://www.ex-cimer.com/article/173154.htm

          O 引言
          超聲波是指頻率大于20 kHz的在彈性介質(zhì)中產(chǎn)生的機械震蕩波。由于超聲波頻率較高,穿透力強,指向性強,傳輸過程中衰減少,能量消耗緩慢,在介質(zhì)中傳播的距離較遠,遇到雜質(zhì)或分界面時會產(chǎn)生反射波,因此常被用于非接觸式測距。并且超聲波對光線、色彩和電磁場不敏感,因此超聲波測距對環(huán)境有較好的適應(yīng)能力。廣泛應(yīng)用于汽車倒車、機器人避障、工業(yè)測井、水庫液位測量、管道長度測量等需要自動進行非接觸測距的場合。

          1 超聲波測距原理
          Pellarn和Galt于1946年提出了脈沖回波法,其工作原理是:用超聲脈沖激勵超聲探頭向外輻射超聲波,同時接收從被測物體反射回來的超聲波(簡稱回波),通過檢測或估計從發(fā)射超聲波至接收回波所經(jīng)歷的射程時間ToF(Time of Flight),按下式計算超聲波探頭與被測物體之間的距離d,即
          a.JPG
          其中。c為聲波在空氣介質(zhì)中的傳播速度。

          2 系統(tǒng)構(gòu)成
          本系統(tǒng)硬件電路由單片機、超聲波發(fā)射電路、超聲波接收電路、測溫電路、顯示電路、報警電路等構(gòu)成,如圖1所示。

          b.JPG

          3 系統(tǒng)程序設(shè)計
          3.1 主程序
          主程序首先對系統(tǒng)環(huán)境初始化,設(shè)置定時器TO工作模式為16位定時/計數(shù)器模式,總中斷允許位置1并給顯示端口清0;然后調(diào)用超聲波發(fā)生子程序送出若干個超聲波脈沖,為了避免超聲波從發(fā)射器直接傳送到接收器引起直射渡觸發(fā),從發(fā)射開始一直到“虛假反射波”結(jié)束這段時間內(nèi),不開放外部中斷(INTO)申請,便可有效躲避干擾,但同時也會造成測試“盲區(qū)”。假設(shè)延時約0.1 ms后,才打開外部中斷接收返回的超聲波信號,當(dāng)溫度為20℃,測量盲區(qū)為d=1×10-2×344=1.72 cm。
          3.2 超聲波發(fā)生子程序和接收子程序
          超聲波發(fā)生子程序的作用是通過P1.0端口發(fā)送超聲波換能器所需的40kHz的方波信號(脈沖寬度為12μs左右),同時把計數(shù)器TO打開進行計時。超聲波發(fā)生子程序較簡單,但要求程序運行準確,所以采用匯編語言編程。


          上一頁 1 2 下一頁

          關(guān)鍵詞: 單片機

          評論


          相關(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); })();