賈佳
(西安航空職業技術學院 電子工程系,陜西 西安 710089)
信號發生器是一種常用的信號源,廣泛應用于通信、測量、科研等現代電子技術領域。信號發生器的核心技術是頻率合成技術,主要方法有:直接模擬頻率合成、鎖相環頻率合成(PLL)、直接數字合成技術(DDS)。DDS是開環系統,無反饋環節,輸出響應速度快,頻率穩定度高。因此直接數字頻率合成技術是目前頻率合成的主要技術之一。文中的主要內容是采用FPGA結合虛擬儀器技術,進行DDS信號發生器的開發[1-2]。
圖1是DDS基本結構框圖。以正弦波信號發生器為例,利用DDS技術可以根據要求產生不同頻率的正弦波。

圖1 基本DDS結構Fig.1 DDS structure diagram
DDS電路主要由相位累加器、相位調制器、正弦ROM查找表、DAC和低通濾波器構成。其中,相位累加器是整個DDS的核心,完成相位累加的功能。下面對相位累加器的輸入即相位增量進行分析。
對于正弦信號發生器,它的輸出可以用下式來描述:

其中Sout是指該信號發生器的輸出信號波形,fout指輸出信號對應的頻率。正弦信號的相位:θ=2πfoutt。在一個clk周期Tclk,相位θ的變化量為:

為了用數字化邏輯實現電路,必須對Δθ進行數字量化,把2π切割成2N份,由此每個clk周期的相位增量Δθ用量化值BΔθ來表述:

由此,可得:

顯然,信號發生器的輸出可描述為:

其中θk-1指前一個clk周期的相位值。
由上面的推導可以看出,只要對相位的量化值進行簡單的累加運算,就可以得到正弦信號的當前相位值,而用于累加的相位增量量化值BΔθ(也叫頻率控制字)決定了信號的輸出頻率fout,并呈現簡單的線性關系。直接數字合成器DDS就是根據上述原理而設計的數字控制頻率合成器[3]。
從本質上看,DDS是一個恒定高頻率運行的多位計數器。在溢出時,通過利用一個多位控制字來設置計數器步進的尺寸,允許計數器過零。計數器的高階位用來尋址存儲設備,該設備保持生成的一個波形周期的數字記錄。高頻時鐘每前進一單位,計數器便步進一次,存儲器也將生成一個新的地址字,而新的波形數據值將會發送到DAC。DDS主要有3個優點:1)輸出信號的頻率精度可以達到作為發生器參考信號使用的晶體控制振蕩器的水平;2)DDS發生器可以生成非常高的頻率精度;3)如果有RAM波形存儲器,那么DDS函數發生器可以重現幾乎任何波形。
由于餐廚垃圾的高含水率、高有機物等特點,決定了餐廚垃圾直接填埋的可行性較低。餐廚垃圾填埋處理技術在國內尚無應用的實例,其主要優缺點如下:優點是處理數量很大,運輸成本費用很低,處理工藝沒有什么科技含量,處理起來也方便、簡單。但同時也存在許多缺點,比如大量占用土地,增加成本投資,且填埋場空間有限,需要持續不斷新建,進一步增加土地資源的占用與投資成本。所以填埋處理雖然現在是一些經濟欠發達地區常用主要處理方法之一,但是會帶來嚴重的后遺癥和二次污染問題,隨著地區經濟的發展今后會杜絕這種處理方法。
該系統采用LabVIEW軟件完成上位機虛擬儀器的開發,生成正弦波、方波、三角波、手工繪制波形和公式波形等波形數據,實時顯示于前面板并通過VISA串口將波形數據傳送至FPGA存儲器。下位機采用Alter公司的FPGA芯片EP1C3T144C8開發,通過VHDL語言軟件式的硬件設計方法完成DDS模塊開發,根據頻率控制字數值讀取ROM中的波形數據送入D/A轉換器,最后通過低通濾波器完成平滑濾波輸出[4]。
通過圖形化的虛擬儀器開發工具LabVIEW完成上位機的設計,主要功能有波形預覽、參數設置、數據傳送及數據保存。
圖2為虛擬儀器上位機主面板,通過串口設置窗口選擇通信端口,采用cluster捆綁各操作類型并通過case結構判斷所選操作,選擇常規波形、公式波形及手繪波形會分別彈出對應的編輯窗口顯示波形數據。如圖3和圖4所示,為選擇常規波形和手繪波形彈出的波形參數設置對話框,設置完相應的波形后,單擊done按鈕確認。設置完波形后,可以點擊保存波形數據,把繪制好的波形以二進制文本形式進行保存[5-7]。

圖2 主程序前面板Fig.2 Main program front panel

圖3 常規波形編輯窗口Fig.3 Conventional waveform editor window

圖4 任意波形編輯窗口Fig.4 Arbitrary waveform editor window
下位機主要完成DDS數字合成器的功能,采用Altera公司的EP1C3T144C8芯片,它具有104個可供用戶自行配置的I/O端口,使用VHDL語言在QuartusⅡ開發工具中實現。
直接數字合成器由3部分組成,如圖5所示。

圖5 DDS數字合成器頂層原理圖文件Fig.5 DDS top layer schematic document
其中:
2)REG32B作為32位移位寄存器,與ADDER32B一起組成累加器,將接收到的32位數據反饋到ADDER32B完成以外部端口F為鍵控頻率字(即上文提到的)的步進;
3)ROM作為讀取存儲器波形數據,根據步進地址讀取存儲器中的10位長度的波形數據[8],送入DA轉換器。
圖6為仿真波形,可以看到,對于不同的頻率控制字F給出的不同值,對應每一個時鐘輸出的采樣點的步幅變化不同。圖7為采用QuartusⅡ自帶的測試工具SignalTapⅡ(嵌入式邏輯分析儀)對設計結果進行分析,如圖7所示為F鍵控頻率字設為16H時生成的正弦信號。圖8是在示波器上觀察的由DAC產生經低通濾波器處理后的真實波形。

圖6 仿真波形Fig.6 Simulation waveform

圖7 SignalTapⅡ測試結果Fig.7 SignalTapⅡtest results

圖8 示波器觀察波形Fig.8 Oscilloscope waveform
文中采用LabVIEW虛擬儀器技術結合FPGA技術實現的DDS信號發生器,通過利用計算機的強大功能,把傳統儀器的設計、編輯都放到計算機上完成,并通過通訊接口傳輸數據,實現不同波形的輸出。通過對系統仿真和實際測試,結果表明該DDS信號發生器不僅能產生理想的輸出信號,還具有集成度高。穩定性好和擴展性強等優點。
[1]余勇,鄭小林.基于FPGA的DDS正弦信號發生器的設計[J].電子器件,2005,28(3):296-299.
YU Yong,ZHENG Xiao-lin.Design and implementation of direct digital frequency synthesis sine wave generator based on FPGA[J].Chinese Journal of Electron Devices,2005,28(3):296-299.
[2]牟濤,魏金成.基于LabVIEW和SOPC技術的信號發生系統[J].西華大學學報,2009,28(2):21-24.
MU Tao,WEI Jin-cheng.Design of arbitrary waveform generator based on LabVIEW and SOPC[J].Journal of Xihua University,2009,28(2):21-24.
[3]潘松,黃繼業.EDA技術與VHDL[M].2版.北京:清華大學出版社,2007.
[4]王水魚,沈航,高軍芳.基于FPGA和LabVIEW的任意波形發生器設計[J].計算機測量與控制,2009,17(4):800-802.
WANG Shui-yu,SHEN Hang,GAO Jun-fang.Arbitrary waveform generatorbasedonFPGA[J].ComputerMeasurement&Control,2009,17(4):800-802.
[5]雷振山.LabVIEW8.2基礎教程[M].北京:中國鐵道出版社,2010.
[6]汪敏生.LabVIEW 基礎教程[M].北京:電子工業出版社,2002.
[7]閻世棟.在虛擬儀器LabVIEW平臺中串行通信模塊的應用[J].國外電子測量技術,2004(增刊):39-40.
YAN Shi-dong.Application of series communication module in visual instruments LabVIEW platform[J].Foreign Electronic Measurement Technology,2004(Supplement):39-40.
[8]李婉娉,李鵬,劉承佳,等.基于HHT的微網中諧波與間諧波的檢測與分析[J].陜西電力,2012(4):20-24.
LI Wan-ping,LI Peng,LIU Cheng-jia,et al.HHT-based harmonic and inter-harmonic detection and analysis in microgrid[J].Shaanxi Electric Power,2012(4):20-24.