虛擬儀器的高精度波形發(fā)生器
摘要:一種用于虛擬儀器的高精度數字式的波形發(fā)生器。采用了折線(xiàn)近似逼近方法和三角分解實(shí)現方法,給出了硬件電路結構。
本文引用地址:http://dyxdggzs.com/article/255626.htm關(guān)鍵詞:虛擬儀器 波形發(fā)生器 函數發(fā)生器 折線(xiàn)近似 三角分解 乘法DAC
隨著(zhù)計算機軟硬件技術(shù)的迅速發(fā)展,20世紀90年代以來(lái)出現的虛擬儀器技術(shù)正日益成為現代電子測試儀器的主流?;赑C總線(xiàn)的虛擬儀器的出現,使得使用者可以按自己的需要設計和構建各種測試分析儀器和系統?,F代電子測試儀器進(jìn)入了使用者也能設計、開(kāi)發(fā)和構建的個(gè)人儀器時(shí)代。
虛擬儀器的通用硬件模塊主要有:高速數據采集卡、信號發(fā)生卡和邏輯分析采集卡等。本文主要討論虛擬儀器信號發(fā)生卡中(任意)波形產(chǎn)生的技術(shù)。
采用數字方法或計算機技術(shù)逼近任意波形的原理如下:DAC將數據發(fā)生器送出的數據轉換為模擬信號(電池或電壓),掃描頻率發(fā)生器控制數據發(fā)生器送出數據的步長(cháng)。數據發(fā)生器大致分為兩類(lèi):存儲式和實(shí)時(shí)運算式。存儲式是將預先計算的波形采樣數據放在存儲器中,這種方式適用于周期性的或者預定的波形發(fā)生,可以達到很高的重復頻率。實(shí)時(shí)運算式則由計算機或微處理器實(shí)時(shí)計算波形采樣數據,這種方式適用于非周期性的或者無(wú)法預定的波形發(fā)生。掃描頻率發(fā)生器通常用數字鎖相環(huán)或者數字頻率合成器構成。
所產(chǎn)生的模擬波形的失真度主要取決于逼近波形的方法、數據點(diǎn)步長(cháng)(掃描頻率、采樣周期或數據點(diǎn)密度)、數據的分辨率(DAC的分辨率)。
改善產(chǎn)生波形的失真度的一個(gè)途徑是采用高階的波形逼近方法。本文主要介紹采用折線(xiàn)近似逼近任意波形的方法(一階波形逼近方法)及其實(shí)現。
1 折線(xiàn)近似逼近任意波形方法的原理
連續的時(shí)間函數f(t)可以用函數空間的基函數的線(xiàn)性組合逼近:
函數空間的基函數選為自然基組{1,t,t 2,…},則有:
采用計算機技術(shù)實(shí)現連續時(shí)間函數f(t)的逼近時(shí),采用等間隔T(等采樣周期)給出數據點(diǎn)的方法,即:
實(shí)現時(shí),在(3)式中只能取有限項來(lái)逼近。實(shí)際上,階梯波逼近方法只取了零次項,即:
fo(t)→f(t),f0(t)=f(k),kT≤t(k+1)T (4)
近線(xiàn)近似逼近方法取了零次項和一次項,即:
f1(t)→f1(t),f1=f(k)+[f(k+1)-f(k)/T](t-kT),
kT≤t(k+1)T (5)
因此階梯波逼近方法可以稱(chēng)為零階逼近方法,折線(xiàn)近似逼近方法可以和為一階逼近方法。當然還可以構造二階、三階逼近方法,達到更高的精度和失真度。但是高階逼近方法需要更復雜的電路結構,實(shí)現起來(lái)也更困難。
從原理從,一階逼近方法比零階逼近方法有更好的精度和失真度,如圖2所示。顯然,用折線(xiàn)f1(1)逼近所需波形f(t)比用階梯波f0(t)逼近所需波形有更好的失真度。但折線(xiàn)f1(t)不能直接實(shí)現,常用的方法是分解為矩形和斜坡(對應(5)式中的零次項和一次項)f10(t)和f11(t),分別由階梯波發(fā)生器和鋸齒波發(fā)生器產(chǎn)生,再合成為折線(xiàn)逼近波形f1(t)。這種方法在每一時(shí)鐘分點(diǎn)(采樣點(diǎn))需要兩個(gè)數據,實(shí)際電路中容易在采樣點(diǎn)出現波形銜接間斷的現象。
曾經(jīng)提出過(guò)一種如圖3所示的鋸齒分解方法來(lái)實(shí)現折線(xiàn)逼近波形,將每一采樣周期的波形分解為兩個(gè)直角三角形(鋸齒波),分別由兩個(gè)齒波發(fā)生器產(chǎn)生再合成為折線(xiàn)逼近波形。由于需要其中一個(gè)鋸齒波發(fā)生器產(chǎn)生倒鋸齒波,涉及到積分器的初值問(wèn)題,電路實(shí)現存在困難。這種方法至今未見(jiàn)實(shí)際應用。
本文提出一種新的三角分解和實(shí)現方法來(lái)實(shí)現任意波形的折線(xiàn)近似逼近。該方法簡(jiǎn)述如下:首先用等距分點(diǎn)的折線(xiàn)逼近所需波形,將每一采樣周期內的梯形分解為兩個(gè)三解形;然后用兩個(gè)峰值分別為所需波形奇數分點(diǎn)值和偶數分點(diǎn)值的三角波f11(t)和f12(t)疊加形成折線(xiàn)逼近波形f1(t)。兩個(gè)三角波分別由數字式三角波發(fā)生器產(chǎn)生。由于在每一時(shí)間分點(diǎn)上只需輸入一個(gè)新數據,因此該方法即可用于存儲式數字波形發(fā)生器又可用于實(shí)時(shí)運算式數字式波形發(fā)生器。由圖4可見(jiàn)該方法的正確性,本文不再作繁瑣的數字推導和證明了。
該方法具有以下明顯的優(yōu)點(diǎn):
(1)數據量小,每一時(shí)間分點(diǎn)只需一個(gè)數據。矩形一斜坡法則需要兩個(gè)數據。
(2)數字噪聲小,一般無(wú)需后接濾波器。
2 折線(xiàn)近似逼近任意波形的實(shí)現
本文實(shí)現折線(xiàn)近似逼近的波形發(fā)生器電路結構如圖5所示。圖5中DAC1、OP1、CMP1與CMP2、RS觸發(fā)器、模擬開(kāi)關(guān)MS1構成一個(gè)可編程重復頻率的等幅三角波發(fā)生器,所產(chǎn)生的等幅三角波(幅度為VREF)與經(jīng)倒相器OP2產(chǎn)生的倒相等幅三角波分別供給DAC3和DAC2作為參考電壓。波形發(fā)生器的采樣頻率是等幅三角波重復頻率的兩倍,DAC1的編程數據就是波形發(fā)生器的采樣頻率數據,RS觸發(fā)器產(chǎn)生的同頻率方波供給時(shí)序邏輯控制單元作為參考信號以產(chǎn)生波形發(fā)生器所需要的各個(gè)控制脈沖。乘法DAC3和DAC2(Multiplying DAC)分別產(chǎn)生前述的奇數分點(diǎn)值三角波和偶數分點(diǎn)值三角波,輸出三角波的幅值由其編程數據決定,它們分別在奇數采樣點(diǎn)和偶數采樣點(diǎn)更新編程數據。兩三角波經(jīng)加法器OP3疊加后形成所需波形。輸出波形的幅度最終由后接數字編程增益放大器(DPGA)(圖中未畫(huà)出)的編程數據決定。
圖5中DAC3和DAC2采用兩級數據鎖存以減小采樣時(shí)刻數據轉換所產(chǎn)生的數字噪聲。
波形發(fā)生器的實(shí)現應當注意一個(gè)重要問(wèn)題:時(shí)間比例尺設置和幅度比例尺設置的獨立性和分離性,即二者的設置(或編程)應當不相關(guān)聯(lián)。階梯波逼近方法中不存在這個(gè)問(wèn)題,而在折線(xiàn)近似逼近方法中,由于產(chǎn)生波形在兩個(gè)采樣數據點(diǎn)間的幅度與實(shí)際時(shí)間相關(guān)(見(jiàn)(5)式),需要采用比較特殊的電路解決這個(gè)問(wèn)題。本文折線(xiàn)近似逼年的電路比較好解決了時(shí)間比例尺和幅度比例尺設置(編程)的獨立性問(wèn)題。時(shí)間比例尺由DAC1的編程數據決定。幅度比例尺由后接數字編程增益放大器的編程數據決定。DAC3和DAC2的編程數據只依賴(lài)于所需波形的標化數據(波形各采樣點(diǎn)幅值的相對比值),而與時(shí)間比例尺和幅度比例尺無(wú)關(guān)。加法器輸出的合成波形是標化波形。
本文提出的采用新的三角分解方法實(shí)現任意波形的折線(xiàn)近似逼近及其電路結構已在所研制的虛擬儀器通用信號發(fā)生卡中得到應用。樣機測試結果表明,基于該方法的波形發(fā)生器具有較高的精度和良好的噪聲性能。
linux操作系統文章專(zhuān)題:linux操作系統詳解(linux不再難懂)
評論