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

          新聞中心

          EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計應(yīng)用 > 高精度便捷式全數(shù)字示波器設(shè)計

          高精度便捷式全數(shù)字示波器設(shè)計

          作者: 時間:2011-06-03 來源:網(wǎng)絡(luò) 收藏

          2 硬件設(shè)計

            系統(tǒng)硬件部分由信號輸入變換電路、采樣保持電路、主控制電路、智能終端設(shè)備等部分組成。

            2.1 信號輸入變換及采樣保持電路

            信號輸入變換電路主要用于實現(xiàn)信號的等效變換。設(shè)計中采用高速的OP37進(jìn)行信號變換、采樣保持,是數(shù)據(jù)采集系統(tǒng)的重要部件,對信號起隔離緩沖作用。如果要對變化速度高的模擬信號進(jìn)行A/D轉(zhuǎn)化,轉(zhuǎn)換精度要求比較高,為了防止A/D轉(zhuǎn)換過程中信號發(fā)生變化,就必須采用S/H電路。S/H電路和A/D配合,可以消除A/D的輸出脈動,并通過MUX實現(xiàn)多路采樣控制。

            在這里采用高性能單片采樣/保持器LF398,具有很高的直流精度、很快的采樣時間和很低的下降速度,器件的動態(tài)性能和保持性能可通過合適的外接保持電容達(dá)到最佳。信號調(diào)理電路如圖2所示。

            2.2 測頻電路

            示波器對信號的測頻是根據(jù)等精度頻率計的原理設(shè)計的。由可編程邏輯器件EPF10K50V完成,100 MHz的標(biāo)準(zhǔn)頻率信號直接進(jìn)入EPF10K50 V。器件采用信號輸入變換電路輸出的方波脈沖作為計數(shù)器的時鐘輸入信號,用標(biāo)準(zhǔn)的100 MHz進(jìn)行記數(shù),最后算出輸入信號的頻率。

            通過圖形法和VHDL語言對EPF10K50V編程,本設(shè)計中,CPLD完成對信號頻率的測量。頻率測量原理如下:在單位測量時間Tp中被測信號計數(shù)值為Nx,對標(biāo)準(zhǔn)信號的計數(shù)值為Ns,在已知標(biāo)準(zhǔn)頻率fs的基礎(chǔ)上,被測信號頻率值fx滿足:

            

          b.jpg

            2.3 幅度信號采集

            為了滿足對高頻率信號的采集,選用ADI公司推出的AD7667來實現(xiàn)對被測信號的幅值測量。AD7667是16位A/D轉(zhuǎn)換芯片,內(nèi)部2.5 V參考電壓,工作范圍為0~2.5 V,LSB小于±2 b,轉(zhuǎn)換速率為800 Kb/s,轉(zhuǎn)換時間小于1μs,采用單+5 V電源供電。由信號變換電路把被測信號轉(zhuǎn)化成工作范圍內(nèi)的有效值,進(jìn)行精確測量。

            2.4 人機(jī)交互部分設(shè)計

            示波器的顯示及指令輸入由智能終端設(shè)備LJD-ZN-3200K來實現(xiàn)。LJD-ZN-3200K是集輸入、輸出為一體的智能圖形化界面輸出設(shè)備分辨率為640×480,能滿足系統(tǒng)設(shè)計的要求。該設(shè)備終端通過串行接口與主控制器通信,完成數(shù)據(jù)傳輸。

            將設(shè)計好的圖形界面加載到智能終端存儲單元,然后按設(shè)定對坐標(biāo)值進(jìn)行識別,即可實現(xiàn)觸摸式控制輸入。示波器共有9個功能鍵,分別為:3個垂直區(qū)分度選擇按鈕,用于垂直靈敏度選擇;3個水平區(qū)分度選擇按鈕,用于水平掃描速度選擇;采樣方式切換按鈕,用于選擇實時采樣和等效采樣;波形存儲按鈕和波形調(diào)出按鈕,用于當(dāng)前的波形采集存儲及調(diào)出;單次觸發(fā)按鈕,能對滿足觸發(fā)條件的信號進(jìn)行單次采集與存儲。

            3 信號采集及處理分析

            3.1 信號采集原理

            對不同的頻率信號進(jìn)行測量時選取合理的采樣手段將直接影響系統(tǒng)的測量精度,在數(shù)字信號分析技術(shù)中,常用的信號采樣方法有兩種:實時采樣和等效采樣。

            實時采樣(Real Sampling)通常是等時間間隔的,其最高采樣頻率是奈奎斯特極限頻率,特點是,取樣一個波形所得脈沖序列的持續(xù)時間等于輸入信號實際經(jīng)歷的時間,所以取樣信號的頻譜比原信號還要寬。在本設(shè)計中采用A/D轉(zhuǎn)換器件頻率為400 kHz,根據(jù)采樣特性可計算出該能對不大于50 MHz的輸入信號進(jìn)行采樣輸出。

            等效采樣(Equivalent Sampling)是指針對周期信號的時域重復(fù)的特點,在不同的時間段進(jìn)行多次較低采樣率的采樣,然后將這些低采樣率的樣本復(fù)合成高采樣率的數(shù)據(jù)樣本,從而真實重構(gòu)出原始信號波形的數(shù)據(jù)采集方法。它利用信號的周期性,以增加采集時間為代價,降低對高速采樣電路的壓力,通過重組恢復(fù)原始信號。

            本文采用提取等效采樣時間采樣,它是用信號的重復(fù)頻率fi與采樣率fs的特殊關(guān)系,使等效的采樣率增加D倍。

            首先,適當(dāng)選取輸入信號的重復(fù)頻率fi,采樣D個周期的信號波形,然后把記錄的數(shù)據(jù)通過一個簡單的算法重新排列組合,以獲得一個完整的輸入信號波形,這樣等效采樣率是實際采樣率的D倍。

            實際實現(xiàn)時,D的選取取決于所需要的等效采樣率fe,使得fe=Dfs即可。而L是單個周期實際采樣點的個數(shù),L=int(M/D),M是記錄的采樣數(shù)據(jù)的總和。輸出信號的重復(fù)頻率為:

            

          c.jpg

            提取等效時間采樣的方法可以提高采樣率,但要求輸入信號的重復(fù)頻率fi要受到精確度的控制,而等效采樣率為Dfs,與輸入信號無關(guān),當(dāng)輸入信號的重復(fù)頻率偏離式(2)中所給的值,等效采樣度變最大時間偏差為:

            

          d.jpg

            等效于展寬了頻帶,此時頻帶的寬度與A/D轉(zhuǎn)換的速度和微處理器的速度幾乎無關(guān),用這種方法結(jié)合設(shè)計的,較容易地測量高頻信號的頻率和幅值。

            最后,把采樣得到的數(shù)據(jù)進(jìn)行存儲,然后進(jìn)行統(tǒng)一的分析,復(fù)現(xiàn)出信號的函數(shù)曲線,可計算得到幅值。

            由于在設(shè)計過程當(dāng)中對電壓信號采樣分析采用的是等效方式,采集到的是以時間為自變量的離散序列,這些采樣數(shù)據(jù)反映了被測參數(shù)的變化過程,但帶有一定程度的誤差,勢必會引起采集數(shù)據(jù)失真的現(xiàn)象。為了避免非誤差允許范圍內(nèi)的值對測量結(jié)果造成干擾,采用軟件對測量結(jié)果進(jìn)行曲線擬合的方式對數(shù)據(jù)進(jìn)行修正,以保證測量結(jié)果的相對精度。

            3.2 顯示分辨率計算

            設(shè)計的波形顯示窗口一共有354x446像元素,能滿足設(shè)計要求,統(tǒng)一分析采集的數(shù)據(jù),采用正弦內(nèi)插算法進(jìn)行處理,形成相應(yīng)的輸出,復(fù)現(xiàn)被測信號波形。



          關(guān)鍵詞: 高精度 數(shù)字示波器

          評論


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