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

          新聞中心

          EEPW首頁 > 測試測量 > 設計應用 > 基于單片機的超聲波測距系統(tǒng)設計

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

          作者: 時間:2011-09-28 來源:網(wǎng)絡 收藏

            接收部分的電路由放大電路,帶通濾波電路以及信號變換電路組成。放大電路和帶通濾波電路如圖4所示。由于超聲波信號在空氣中傳播時受到很大程度的衰減,所以反射回的超聲波信號非常的微弱,不能直接送到后級電路進行處理,必須將信號放大到足夠的幅度,才能使后級電路對它進行正確的處理。前置放大電路是由集成運放組成的自舉式同相交流放大電路,具有很高的輸入阻抗,C5,C6,C7為隔直電容,R5,R6,R7為偏置電阻,用來設置放大器的靜態(tài)工作點。帶通濾波器采用二階RC有源濾波器,用于消除超聲波傳播過程中受到的干擾信號的影響。該電路為二階壓控電壓源帶通濾波電路,圖中RW,C10組成低通濾波網(wǎng)絡,C9和R12組成高通濾波網(wǎng)絡,兩者串聯(lián)組成了帶通濾波電路。集成運放和電阻R9,RlO一起組成同相比例放大器,為了使電路能夠穩(wěn)定工作,必須保證同相比例放大器的增益AV3,帶通濾波器的中心頻率ω0=40kHz,電路參數(shù)可通過AV=1+R9/R10和ω0=1/R12C2(1/RW+1/R13)確定。經(jīng)過帶通濾波后的信號經(jīng)專用儀表放大器AD620進行放大,然后送到信號變換電路,信號變換電路主要將接收到的包絡信號變換成的中斷觸發(fā)信號。由包絡檢波電路,電壓比較器和RS觸發(fā)器組成。包絡檢波電路由二極管D3,電阻R19,和電容C13組成。經(jīng)過包絡檢波得到的信號如圖6中的V2所示。電壓比較器由集成運放和電容電阻組成,為了消除發(fā)送探頭的干擾信號,我們將P1.2輸出的信號加到電壓比較器的同相端,它的波形是250μs的高電平,和29750μs低電平的方波,通過二極管D3將P1.2和比較器的正向端隔離。當P1.2輸出高電平時,通過二極管對電容C14充電,由于二極管是正向?qū)ǖ?,所以充電很快,當P1.2輸出為低電平時,二極管反向截止,電容通過電阻RW和R21放電,由于總電阻比較大,所以放電很緩慢,波形如圖6中V3所示,從圖中可看出,在沒有收到返回信號時,比較器輸出高電平,如果收到返回信號,比較器便輸出低電平,輸出波形如圖6中Vo所示,通過這種方法就可以消除發(fā)射探頭對反射回的信號的干擾。

          帶通濾波電路

          信號變換電路

          電壓比較

            電壓比較器的輸出信號送到基本RS觸發(fā)器用于產(chǎn)生所需的中斷信號?;綬S觸發(fā)器由與非門組成,同時由單片機進行控制,如圖6所示。在發(fā)送端發(fā)送超聲波信號時,P1.2輸出高電平,經(jīng)過反相器后,變?yōu)榈碗娖郊拥接|發(fā)器的R端,因為沒收到反射信號之前,電壓比較器輸出為高電平,所以基本RS觸發(fā)器的輸入分別為,R=O,S=l,為0態(tài),即Q=0,Q=1,Q的信號加到單片機的中斷輸入端,因為單片機的中斷為下降沿觸發(fā),輸入為高電平,不產(chǎn)生中斷。當發(fā)送完畢時,P1.2輸出低電平,經(jīng)反相器,變?yōu)楦唠娖剿偷接|發(fā)器的R端,沒有收到反射回的信號時,電壓比較器輸出仍為高電平,所以基本RS觸發(fā)器的 R="1",S=1,為保持狀態(tài),即Q=1,Q=0,也不產(chǎn)生中斷。當接收到反射回的信號時,電壓比較器輸出低電平,因此,基本RS觸發(fā)器的輸入端 R="1",S=0,觸發(fā)器工作在0態(tài),即Q=O,Q=1。單片機的中斷輸入端的電平由高電平變?yōu)榈碗娖剑瑥亩箚纹瑱C產(chǎn)生中斷。



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