0 引言
電源的信號測控部分由DDS信號發(fā)生和信號測量組成。DDS 在電源設(shè)計(jì)中的應(yīng)用早已存在。在早期的DDS 設(shè)計(jì)中,硬件組成由計(jì)數(shù)器、觸發(fā)器等多種多個(gè)分立邏輯元件組成; 而在出現(xiàn)可編程邏輯器件CPLD、FPGA 后,DDS 的硬件構(gòu)成簡化了許多。電源的信號測量,分為頻率、幅值及相位的測量。頻率的測量采用脈沖填充法; 幅值測量則隨著A/D 轉(zhuǎn)換器的采樣速度及處理器速度的提高,由原來的有較大延遲的真有效值轉(zhuǎn)換發(fā)展為周期實(shí)時(shí)采樣計(jì)算;相位測量則在幅值測量的基礎(chǔ)上,由原來的間相脈沖填充法發(fā)展為乘法器矢量測量。
DSP 的高速處理能力,使其可以實(shí)現(xiàn)DDS 中的CPLD 或FPGA 及測量電路中的模擬數(shù)字混合乘法器的功能,從而使電源的信號發(fā)生及測量的硬件設(shè)計(jì)更簡單。
1 設(shè)計(jì)方案
方案設(shè)計(jì)如圖1 所示。DSP 以等時(shí)間間隔快速、連續(xù)讀取擴(kuò)展程序存儲(chǔ)器中的波形數(shù)據(jù),送入并行高速D/A,并行高速D/A 即可輸出預(yù)設(shè)信號波形。
輸出信號幅值的調(diào)整不如波形數(shù)據(jù)讀取操作那么頻繁,且對操作完成時(shí)間的長短、精度要求也不如波形數(shù)據(jù)讀取高,所以選擇串行多通道D/A.這樣既可以降低成本,又可以簡化部分硬件設(shè)計(jì)。以N 個(gè)波形讀取時(shí)間間隔為計(jì)時(shí)基礎(chǔ),DSP 通過并行高速A/D 對經(jīng)信號處理后的被測信號進(jìn)行連續(xù)采樣,通過計(jì)算,可得出被測信號有效值及相位。
2 DDS 的DSP 實(shí)現(xiàn)
2.1 DDS 原理
DDS 是利用相位累加原理直接合成所需波形的一種頻率合成技術(shù),典型的DDS 模型由W 位相位累加器、移相加法器、波形存儲(chǔ)器ROM 查找表( LUT) 、D/A 轉(zhuǎn)換器( DAC) 以及低通濾波器( LPF) 構(gòu)成。其中相位累加器由W 位加法器與W 位累加寄存器級聯(lián)構(gòu)成。
DDS 工作時(shí),每來一個(gè)時(shí)鐘脈沖p,加法器將相位步進(jìn)值Δθ 與累加寄存器輸出的累加相位數(shù)據(jù)相加,把相加后的結(jié)果送至累加寄存器的數(shù)據(jù)輸入端。
累加寄存器將加法器在上一個(gè)時(shí)鐘脈沖作用后所產(chǎn)生的新相位數(shù)據(jù)反饋到加法器的輸入端,以使加法器在下一個(gè)時(shí)鐘脈沖的作用下繼續(xù)與頻率控制字相加。相位累加器輸出的數(shù)據(jù)作為查表地址,從波形存儲(chǔ)器( ROM) 中提取對應(yīng)的波形抽樣值( 二進(jìn)制編碼) ,送入D/A 轉(zhuǎn)換器C 中。在相位累加器的數(shù)據(jù)輸出范圍0 ~ 2W – 1,與波形存儲(chǔ)器中一個(gè)完整周期波形的地址,按照特定的函數(shù)關(guān)系對應(yīng)起來的前提下,相位累加器的每次溢出,DDS 就相應(yīng)的輸出了一個(gè)周期的波形。因此,相位累加器的溢出頻率就是DDS 輸出的信號頻率。由此可推導(dǎo)出DDS 輸出的信號頻率公式:fout = fclk × Δθ /2W
式中fout為DDS 輸出頻率; fclk為標(biāo)準(zhǔn)時(shí)鐘脈沖,固定值; Δθ 為相位步進(jìn)值,無符號整數(shù),無單位; W 為相位累加器寬度。
從公式( 1) 可以看出,在相位累加器寬度W 為定值、相位步進(jìn)值Δθ 為1 時(shí),可得出DDS 的最小輸出頻率,即DDS 的頻率分辨率fr.因此,只需要調(diào)整相位步進(jìn)值Δθ,就可以使DDS 的頻率以fr的整數(shù)倍輸出。
2. 2 DDS 工作模式選擇
根據(jù)公式( 1) 可以看出,在相位累加器寬度W 為定值的前提下,DDS 的輸出頻率,取決于Δθ 和fclk.
Δθ 取值為DDS 的相位分辨率時(shí),DDS 輸出信號的每個(gè)周期由固定點(diǎn)數(shù)組成,此時(shí)fout與fclk成比例關(guān)系,DDS 為調(diào)頻模式; fclk為定值時(shí),DDS 輸出信號在單位時(shí)間內(nèi)由固定點(diǎn)數(shù)組成,此時(shí)fout與Δθ 成比例關(guān)系,DDS 為調(diào)相模式。
調(diào)頻模式,其關(guān)鍵點(diǎn)為采用鎖相環(huán)技術(shù)對預(yù)置輸出頻率進(jìn)行倍頻[3 - 4].與調(diào)相模式相比,調(diào)頻模式不僅要多出鎖相環(huán)及相應(yīng)倍頻邏輯電路的設(shè)計(jì),且在進(jìn)行頻率調(diào)整時(shí),信號會(huì)有短時(shí)間的失鎖,造成輸出信號的振蕩。因此,調(diào)相模式是本設(shè)計(jì)中DDS 的最佳選擇。
2. 3 DSP 實(shí)現(xiàn)DDS 的優(yōu)勢
無論是用分立邏輯器件還是CPLD 或FPGA 設(shè)計(jì)DDS,其目的都是為了將相位累加器的累加、輸出、波形數(shù)據(jù)查表等這些運(yùn)算處理通過硬件電路高速實(shí)現(xiàn)。唯一的區(qū)別就是應(yīng)用CPLD 或FPGA 設(shè)計(jì)DDS,可以將諸多分立器件實(shí)現(xiàn)的邏輯電路,通過VHDL 等編程語言編程固化在單一芯片上,從而達(dá)到簡化硬件電路設(shè)計(jì)目的。而采用DSP 設(shè)計(jì)DDS,則完全可以利用其高速運(yùn)算能力,通過軟件編程來完成相位累加器的累加、輸出、波形數(shù)據(jù)查表等運(yùn)算。因此,相比于采用CPLD 或FPGA,采用DSP設(shè)計(jì)DDS 更靈活高效。
2. 4 基于DSP 的DDS 的參數(shù)設(shè)計(jì)
2. 4. 1 標(biāo)準(zhǔn)時(shí)鐘脈沖fclk
的設(shè)計(jì)從公式( 1) 可以看出,在相位累加器寬度W 為定值、相位步進(jìn)值Δθ 為1 時(shí),可得出DDS 的最小輸出頻率,即DDS 的頻率分辨率fr.因此,只需要調(diào)整相位步進(jìn)值Δθ,就可以使DDS 的頻率以fr的整數(shù)倍輸出。
P = 2W ÷ Δθ
式中P 為DDS 輸出信號的每個(gè)周期的組成點(diǎn)數(shù)。
將式( 2) 代入式( 1) ,可得:
fclk = fout × P
在P 足夠多且每點(diǎn)波形數(shù)據(jù)分辨率與P 匹配的前提下,即可忽略DDS 信號輸出的高頻諧波含量,從而省略硬件設(shè)計(jì)中的濾波器環(huán)節(jié),避免了由濾波器產(chǎn)生的相位偏移。當(dāng)P = 10000 時(shí),完全可以滿足要求。如設(shè)計(jì)最大輸出頻率65Hz,可得fclk = 0. 65MHz.
fclk可利用DSP 計(jì)數(shù)器的中斷產(chǎn)生??紤]到DSP 的工作頻率均為MHz 的整數(shù)倍,所以fclk取值1MHz,更加便于中斷的準(zhǔn)確產(chǎn)生。
2. 4. 2 相位累加器寬度W 的選取
P = 10000 時(shí),W 取值27 即可滿足設(shè)計(jì)頻率調(diào)節(jié)細(xì)度≤0. 01Hz 的要求。但相位累加值θ 在DSP 中定義為4 字節(jié)的操作數(shù),W 取值27 時(shí),DSP 需對相位累加值進(jìn)行上限判斷處理后再提取波形數(shù)據(jù),從而產(chǎn)生細(xì)小的波形畸變并增加一定的運(yùn)算量??紤]到可利用操作數(shù)的自然溢出來減少DSP 的判斷及運(yùn)算操作,所以W 取值32.
2. 4. 3 周期波形點(diǎn)數(shù)P 的選取
在不考慮四舍五入取值的前提下,相位累加器的輸出值與波形數(shù)據(jù)表數(shù)組下標(biāo)的函數(shù)關(guān)系如下:
A = P × θ ÷ 2W
式中A 為波形數(shù)據(jù)數(shù)組下標(biāo); P 為波形數(shù)據(jù)點(diǎn)數(shù); θ為相位累加器輸出值。
由于DSP 中沒有現(xiàn)成的除法指令,除法是靠被除數(shù)與除數(shù)之間的移位相減來實(shí)現(xiàn)的,采用該函數(shù)的算法將增加DSP 的運(yùn)算量。因此,可以通過事先將P ÷ 2W 作為系數(shù),減少求數(shù)組下標(biāo)運(yùn)算步驟。但P ÷ 2W 可能為小數(shù),如果取整計(jì)算,將使下標(biāo)出現(xiàn)跳躍性變化,導(dǎo)致輸出波形畸變增大。不取整計(jì)算時(shí),如使用定點(diǎn)DSP,雖然價(jià)格便宜且運(yùn)算速度較快,但會(huì)增加系統(tǒng)運(yùn)算量。而使用浮點(diǎn)DSP,運(yùn)算速度較慢且硬件費(fèi)用會(huì)有相對提高??紤]到DSP 要進(jìn)行多線程的任務(wù)工作,需要較快的運(yùn)算速度,因此選用定點(diǎn)DSP,并對波形數(shù)據(jù)數(shù)組下標(biāo)的算法進(jìn)行進(jìn)一步的改進(jìn)。
將公式( 4) 中P 的點(diǎn)數(shù)由相位調(diào)節(jié)細(xì)度要求的最低點(diǎn)數(shù)Pmin調(diào)整至大于Pmin的最小的2 的X 次冪。
將P 代入公式( 4) ,簡化得:
A = θ /2W-X
在DSP 中,所有的值都用二進(jìn)制來表示。所以,在公式( 5) 里所有變量的取值均為無符號整數(shù)的前提下,A 的獲得就簡化成了對θ 進(jìn)行( W – X) 次的右移。
從而大大降低DSP 的運(yùn)算量。以相位分辨率≤0. 03°為例,P 取值16384 =214,A 的表達(dá)式即簡化為θ /218.
3 信號測量
信號需要測量頻率、有效值、相位三個(gè)參量。信號處理電路采用傳統(tǒng)的互感器采樣加低通濾波。電壓信號處理電路比電流信號處理電路,多設(shè)置一過零比較的波形變換功能單元,其作用是將電壓被測信號由正弦波變換為方波,為信號測量提供周期信號。
3. 1 頻率測量
頻率測量相對簡單,采用傳統(tǒng)的脈沖填充法,即DSP 利用周期方波作為中斷信號,用DSP 的計(jì)數(shù)脈沖的頻率除以中斷間隔內(nèi)計(jì)數(shù)器的計(jì)數(shù)脈沖數(shù),就可獲得輸出信號的頻率。
3. 2 有效值測量
有效值測量即對被測信號進(jìn)行區(qū)域內(nèi)積分后取平均值。通過RC 電路實(shí)現(xiàn)硬件積分,響應(yīng)速度慢,且增加相應(yīng)的硬件開銷。而利用DSP 的高速計(jì)算能力,通過相應(yīng)計(jì)算即可得出有效值,可提高相應(yīng)速度,節(jié)省硬件開銷。
正弦波有效值的計(jì)算公式:
式中Vm為有效值; T 為采樣周期; Um為被測正弦波峰值;ω 為被測正弦波角頻率; φ 為被測正弦波初始相位。
積分的計(jì)算過程,等價(jià)于在積分區(qū)間內(nèi)對被測信號進(jìn)行足夠多的、等間隔采樣,并進(jìn)行累加求和計(jì)算。因此,公式( 6) 可變換為:
式中N 為測量周期內(nèi)的采樣次數(shù); Un為采樣值。
為保證測量值的準(zhǔn)確,被測信號每個(gè)周期內(nèi)的采樣次數(shù)應(yīng)≥100.因此,在以標(biāo)準(zhǔn)時(shí)鐘脈沖fclk( 1MHz) 為計(jì)時(shí)基準(zhǔn)、被測信號最高頻率65Hz 時(shí),每次采樣間隔應(yīng)≤153 個(gè)標(biāo)準(zhǔn)時(shí)鐘脈沖。
3. 3 相位測量
相位的測量,借鑒了模擬數(shù)字混合乘法器進(jìn)行矢量測量的原理。模擬數(shù)字混合乘法器進(jìn)行矢量測量的原理如下:
對于正弦信號,矢量測量就是測量相對于標(biāo)準(zhǔn)正弦信號的相位和幅值。如圖2 所示,設(shè)被測信號V( t) = U( t) sin( ωt + φ) ,兩片Rom 中分別存有正弦和余弦函數(shù)表,鎖相環(huán)實(shí)現(xiàn)數(shù)字sin^( ωt) ,cos^( ωt) 與V( t) 同頻同步。模擬信號V( t) 輸入到乘法型D/A 的參考電壓端,與數(shù)字量sin^( ωt) ,cos^( ωt) 在D/A 轉(zhuǎn)換器實(shí)現(xiàn)模擬數(shù)字混合乘法運(yùn)算,低通濾波器完成積分求平均值運(yùn)算,低通濾波輸出的是直流信號。
被測信號的幅值和相角分別為:
綜上所述,模擬數(shù)字混合乘法器矢量測量的原理可簡述為,將被測信號幅值與標(biāo)準(zhǔn)正弦、余弦分別相乘并計(jì)算其有效值,然后通過對兩有效值進(jìn)行反正切運(yùn)算即可獲得被測信號與標(biāo)準(zhǔn)信號的相位差。
從公式( 8) 、( 9) 可以看出,被測信號的采樣值,在相位測量中可被重復(fù)利用。因此相位測量也可以采用與有效值測量相同的時(shí)鐘脈沖及采樣間隔。從圖2 中可以看出,被測信號與標(biāo)準(zhǔn)正弦D/A、余弦D/A 的相乘,其實(shí)質(zhì)是被測信號采樣值與標(biāo)準(zhǔn)正弦、余弦查表值相乘。由于相位測量的采樣以標(biāo)準(zhǔn)時(shí)鐘脈沖fclk為計(jì)時(shí)基準(zhǔn),每次采樣前必有一個(gè)剛被查表取出的電壓正弦波數(shù)據(jù)值被送至D/A 輸出,該數(shù)據(jù)值對應(yīng)相位累加器輸出值θ .根據(jù)正弦與余弦的函數(shù)關(guān)系式cosa =sin( a + 90°) ,將θ 偏移2W-2 ( 此操作等價(jià)于移相90°后查表獲得余弦數(shù)據(jù)值。因此,模擬數(shù)字混合乘法器矢量測量相位,完全可以通過DDS 的查表功能與有效值測量功能相結(jié)合,利用軟件來實(shí)現(xiàn)。
4 結(jié)束語
通過對DDS 和模擬數(shù)字混合乘法器矢量測量原理的分析,提出了以DSP 嵌入式系統(tǒng)為硬件基礎(chǔ),利用軟件編程實(shí)現(xiàn)DDS 相位邏輯運(yùn)算、積分運(yùn)算、矢量的模擬數(shù)字混合乘法的設(shè)計(jì)思路。采用該設(shè)計(jì)思路進(jìn)行電源,可大大簡化硬件設(shè)計(jì),節(jié)省硬件成本,縮短開發(fā)時(shí)間。