李 健 魯業頻 潘高生
(巢湖學院電子工程與電氣自動化學院,安徽 巢湖 238000)
峰值檢測電路作為一種檢測信號波形峰值的基本電路在數據采樣方面應用很廣[1]。比如:在軸承生產行業中,軸承振動噪聲的峰值檢測是一項重要的指標[2];數字存儲示波器及數據采集卡中用來實現波形的毛刺捕捉或高占空比的信號的檢測[3];建筑行業中檢測某建筑物中梁的最大承受力,檢測一根鋼絲的最大允許拉力等[4]。

圖1 峰值檢測原理
本文介紹了一種峰值檢測系統的設計與仿真,采用AT89C51單片機作為核心控制器,實現模擬信號峰值的保持、采樣和顯示,編寫了軟件代碼并通過仿真加以驗證,達到了一定頻率范圍內的信號峰值檢測的目的。
峰值檢測電路(PKD,Peak Detector)的作用是儲存輸入信號的峰值,并輸出 Vo=Vpeak,為了實現這樣的功能,電路輸出值會一直保持,等到一個新的峰值出現或電路復位[5]。它的時域波形如圖1所示。
如圖2所示,待檢測的信號接入采樣保持電路,保持的信號峰值經單片機啟動模數轉換器轉換為數字量,再送入單片機進行換算并由顯示電路顯示出相應的模擬電壓值。當新的峰值到來前,單片機發送放電脈沖,使保持電路放電后能充電達到新的峰值,再重復模數轉換和顯示。

圖2 設計方案

圖3 峰值采樣保持電路
峰值采樣保持電路如圖3所示,其工作原理為:電路采用了兩級運放,待測信號輸入前級運放的同相端,當 Vi>Vo時(Vi為輸入信號,Vo為輸出端電壓), Vi大于二極管導通電壓,使 D1、D2、D3導通后對電容C1進行充電,此時前級運放相當一個電壓跟隨器;當信號電壓下降Vi C1保持的峰值電壓經后級運放的跟隨作用再送給模數轉換器ADC0804的模擬電壓輸入引腳。三極管Q1和Q2的基極接至單片機的P3.0引腳,由單片機發送的放電脈沖控制三極管的通斷。當檢測完當前的電壓值后,為了迎接新的峰值,要將之前電容電壓釋放,只要單片機送一個高電平,使兩個三極管導通,電容就會放電,為檢測新的峰值做好充電準備。放電脈沖由單片機給出,通過編程使P3.0輸出占空比為1:14的脈沖信號,周期為0.2s,可根據需要進行修改。 如圖4左下所示,保持的峰值送入ADC0804的正輸入引腳VIN+,ADC0804是8位的模數轉換器,轉換速度快,其讀寫引腳(RD、WR)、轉換完結束引腳(INTR)以及轉換后的8位數據都與單片機相連。 圖4 模數轉換、單片機和顯示電路 系統的核心控制器采用的是AT89C51單片機,圖4中間部分為單片機最小系統,包括單片機和單片機正常工作需要的晶振電路和復位電路。另外,P0口接了上拉電阻,與顯示部分數碼管的8段相連;P1口與ADC0804的數字量輸出口相連;P2口的低四位控制四位數碼管的位選。其他的引腳接線見圖上標號所示。 檢測的結果要顯示出來,本系統采用了四位數碼管動態顯示,如圖4上方所示,各引腳接法見單片機最小系統部分敘述。 軟件程序流程如圖5:首先對單片機進行初始化,設置計時器初始值;再啟動ADC采集儲存在電容上的模擬信號電壓,轉換結束后將數字量送給單片機;同時單片機通過計數器判斷時間是否達到脈沖發射周期,如果沒有,則單片機將數字量輸出到數碼管進行顯示,如果達到脈沖發射周期,輸出固定時間的+5V脈沖將使BJT導通,雙BJT與電容形成回路,電容放電結束,然后脈沖消失,BJT斷開,電容又重新充電記錄下一個峰值。 將上述各電路模塊整合到一起,組成一個檢測系統。采用Keil編寫好程序無誤后,在Proteus中進行電路仿真。輸入幅值4V、頻率為20Hz的正弦波信號,仿真結果如圖6所示。從中可以看出,結果有一定的誤差,這主要是ADC采集量化造成的。如果在采樣保持電路前加上放大電路,系統還可以實現微弱信號的峰值檢測。 圖5 程序流程圖 圖6 仿真結果 [1]李凌,虞禮貞.電壓幅值可達毫伏數量級的小信號峰值檢測電路的設計[J].南昌大學學報(理科版),2003,(4). [2]李暉英,王宗俠,常曉明,等.基于C8051F206的軸承噪聲信號峰值檢測方法[J].電子測量與儀器學報,2008,(S2). [3]胡理,師奕兵,黃建國,等.峰值檢測技術在數據采集卡中的應用[J].儀器儀表學報,2004,(S1). [4]曹吉花,王洪艷.信號峰值檢測儀的設計與應用[J].宿州學院學報,2006,(2). [5]峰值檢測電路總匯.百度文庫 http://wenku.baidu.com/view/fff9b983d4d8d15abe234efb.html3.2 模數轉換電路

3.3 單片機最小系統
3.4 數碼管顯示電路
4 軟件設計
5 仿真結果與分析

