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

          新聞中心

          EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計應(yīng)用 > 超聲波倒車防撞系統(tǒng)

          超聲波倒車防撞系統(tǒng)

          作者: 時間:2012-05-10 來源:網(wǎng)絡(luò) 收藏

            3.4 聲光報警報警電路

            如圖4 所示,聲報警電路選用壓電式蜂鳴器,它大約需要10 mA 的驅(qū)動電流。當(dāng)單片機(jī)輸出低電平時,三極管導(dǎo)通,蜂鳴器報警。光報警電路如圖5 所示,當(dāng)單片機(jī)p2.5 口輸出低電平時,二極管導(dǎo)通,燈亮發(fā)出光報警信號。

          超聲波倒車防撞系統(tǒng)   
          圖4 聲報警電路

           超聲波倒車防撞系統(tǒng)  
          圖5 光報警電路

            4 系統(tǒng)軟件設(shè)計

            首先,微處理器AT89C51 先把P1.0 置0,通過軟件編程產(chǎn)生方波,送給傳感器,通過壓電陶瓷晶片發(fā)射(40 kHz 方波),延時300 us 左右(或者大于這個時間,這個延時是為了避免直接對反射過來的波的干擾,它決定了盲區(qū)的大小,延時時間越長,盲區(qū)越大,300 us 延時大概是10 cm 的盲區(qū))抑制輸出干擾,同時啟動內(nèi)部定時器T0 開始計時。當(dāng)超聲波信號碰到障礙物時信號立即返回,而微處理器在不斷的掃描INT0 引腳,如果INT0 接收到的信號由高電平變?yōu)榈碗娖剑砻餍盘栆呀?jīng)返回,微處理器進(jìn)入中斷處理程序,同時關(guān)閉定時器T0。再把定時器中的數(shù)據(jù)經(jīng)過處理就可以得出超聲波傳感器與障礙物之間的距離,顯示在LED 數(shù)碼管上。然后再根據(jù)相應(yīng)的情況判斷是否要進(jìn)行聲光報警。

            程序啟動時,首先進(jìn)行初始化,接著是一個不斷發(fā)射方波的過程,即調(diào)用發(fā)射子程序幾遍,而且每次發(fā)射周期結(jié)束后都會在延時等待的過程中判斷是否發(fā)生了中斷,即是否有反射回波產(chǎn)生,當(dāng)有反射回波產(chǎn)生時,進(jìn)入中斷服務(wù)程序,首先是關(guān)閉中斷,讀取定時器的時間t,根據(jù)時間,用超聲波測距公式S=340×t/2,就可以得到障礙物到超聲波發(fā)射器之間的距離,根據(jù)計算的結(jié)果,將距離顯示到LED 數(shù)碼管上。

            同時判斷距離是否小于0.5 m,如果小于0.5 m,就進(jìn)行聲光報警。程序流程圖如圖6 所示。

            超聲波倒車防撞系統(tǒng)
          圖6 程序流程圖

            5 結(jié)語

            該系統(tǒng)利用51 系列單片機(jī)設(shè)計,設(shè)計簡單,操作方便。經(jīng)實(shí)驗(yàn)測試證明,該系統(tǒng)工作穩(wěn)定,能滿足倒車防撞的要求,且成本較低,具有良好的性價比??梢詰?yīng)用到汽車倒車場合。由于超聲波受外界環(huán)境的影響,所以該系統(tǒng)存在一定的誤差,可以進(jìn)行溫度補(bǔ)償,減小誤差,增強(qiáng)系統(tǒng)性能。


          上一頁 1 2 下一頁

          評論


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