摘 要: 在電力系統(tǒng)諧波分析中,模數(shù)轉(zhuǎn)換(ADC)電路是影響系統(tǒng)檢測性能的主要環(huán)節(jié)之一?;?a class="innerlink" href="http://theprogrammingfactory.com/tags/NiosII" title="NiosII" target="_blank">NiosII的諧波分析系統(tǒng)具有邏輯控制能力強、信號處理實時性高、系統(tǒng)抗干擾能力強等特點。以Altera公司的DE2開發(fā)板為平臺,實現(xiàn)了采樣電路的硬件設計;在Quartus II 中用Verilog HDL語言完成了與FPGA的接口設計,并最終實現(xiàn)VGA顯示。
關(guān)鍵詞: ADC;NiosII;FPGA;諧波分析;VGA
諧波是電力系統(tǒng)的一大公害,消除諧波污染,把諧波含量控制在允許范圍內(nèi),已經(jīng)成為主管部門和用電單位的共同奮斗目標。而要消除電網(wǎng)中的諧波,首先就要對諧波進行準確測量,諧波測量工作已經(jīng)越來越引起人們的關(guān)注[1]。A/D轉(zhuǎn)換電路是電力系統(tǒng)諧波測量中必不可少的一個重要環(huán)節(jié),是電力系統(tǒng)諧波測量系統(tǒng)前端的核心。
FPGA因具有強大的邏輯控制能力、高速的運算能力、靈活的可編程性,已經(jīng)越來越多的被用于各種數(shù)字系統(tǒng)。在FPGA內(nèi)部一般都內(nèi)嵌有可配置的高速RAM、PLL、LVDS、LVTTL以及硬件乘法累加器等DSP模塊。用FPGA模塊來實現(xiàn)數(shù)字信號處理可以很好地解決并行和順序性的矛盾,直至速度問題,而且其靈活的可配置性,使得FPGA構(gòu)成的DSP系統(tǒng)非常易于修改,易于測試及硬件升級。在QuartusII開發(fā)軟件中用Verilog HDL硬件描述語言能夠很容易進行邏輯電路設計,并且在FPGA中可以實現(xiàn)用硬件進行配置,可有效降低軟件運行時間和軟件設計復雜程度[2]。因此,F(xiàn)PGA非常適合在電力系統(tǒng)諧波測量系統(tǒng)中作為核心器件。
本文中采樣電路選用AD73360,在QuartusII中用Verilog HDL硬件描述語言實現(xiàn)了AD73360及VGA與FPGA的接口設計,最后通過實驗驗證了設計的正確性。
1 系統(tǒng)總體方案
系統(tǒng)以Altera公司的DE2開發(fā)板為平臺,系統(tǒng)框圖如圖1所示。信號采集單元核心器件為電壓、電流互感器?;ジ衅鲗⒋郎y高壓、大電流信號線性轉(zhuǎn)換為合適的微弱電壓信號,該微弱電壓信號經(jīng)信號調(diào)理電路放大為合適的電壓信號,經(jīng)低通濾波電路濾除高于2 500 Hz的高頻噪聲,然后送到A/D轉(zhuǎn)換單元進行A/D轉(zhuǎn)換,轉(zhuǎn)換后形成數(shù)字信號存儲到存儲器中,再送到FFT處理單元進行快速傅里葉變換,變換后得到的數(shù)據(jù)再儲存到存儲器中,再進行一系列相關(guān)運算,如:諧波電壓含有量、諧波電流含有量、各次諧波電壓含有率、各次諧波電流含有率等,最后經(jīng)VGA進行顯示出波形和相關(guān)數(shù)據(jù)。
2 AD73360的配置[3]
2.1 A/D電路設計
A/D電路如圖2所示。A/D電路可分為以下三個部分。
(1)電源部分。AD73360有5 V和3 V兩種工作模式,為了能夠與FPGA實現(xiàn)直接連接,采用3 V供電(FPGA接口電平為3.3 V左右),這樣無需外加電平轉(zhuǎn)換電路,可以簡化電路設計、降低系統(tǒng)功耗、節(jié)約成本。
(2)模擬輸入部分。AD73360有6個通道,每個通道又分為正端VINP和負端VINN,每個通道都可以由AD73360內(nèi)部控制寄存器配置為差分輸入和單端輸入兩種方式,本設計采用單端交流耦合輸入方式。
(3)與FPGA接口部分。AD73360采用六線制串行接口,能很方便與外部電路實現(xiàn)接口連接,為了實現(xiàn)AD73360與FPGA的連接,就需要在FPGA中設計一個控制器,在Quartus II中設計的A/D控制器AD_controller如圖3所示。
2.2 AD73360的配置
AD73360為可編程A/D轉(zhuǎn)換器,每次啟動系統(tǒng)都要對其進行配置。對AD73360的配置有兩種方式,一種方法是用程序來實現(xiàn),另外一種方法是利用FPGA具有很強的邏輯控制能力,用硬件實現(xiàn)對AD73360的配置,后者雖然會占用一些硬件資源,但是這樣可以大大簡化系統(tǒng)程序設計,節(jié)約軟件運行時間,因此本設計采用后者。系統(tǒng)上電或者手動復位后,AD73360被復位,在復位狀態(tài)下,AD73360的八個控制字寄存器被初始化為00H,同時AD_controller也被復位到初始狀態(tài),SE被置1,從而AD73360串口進入工作狀態(tài)。當復位信號變?yōu)楦邥r,AD73360進入編程模式,該模式下,AD73360數(shù)字端接口時序如圖4所示。在編程模式下,AD73360的SDOFS引腳以主時鐘頻率的1/2048的頻率產(chǎn)生輸出數(shù)據(jù)標志信號,當控制寄存器被正確配置后,將產(chǎn)生與設定采樣頻率同頻的SDOFS標志信號,每個輸出標志信號以后SDO引腳將連續(xù)輸出16位隨機數(shù)據(jù),這時候的數(shù)據(jù)是隨機產(chǎn)生的,不是有效的A/D轉(zhuǎn)換數(shù)據(jù)。與此同時,在SCLK時鐘的下降沿,若SDIFS標志位有效,則AD73360于下一個SCLK下降沿開始讀取SDI引腳數(shù)據(jù),并存到AD73360中的串行寄存器。
撤銷復位信號后,AD_controller開始對AD73360進行配置,配置過程如圖4所示。系統(tǒng)復位后標志信號GO被置1,經(jīng)過三個SCLK時鐘周期后GO被置0,此時把第一個配置數(shù)據(jù)賦給SD,標志信號GO保持一個SCLK時鐘周期后,又被置1。當標志信號GO=0時,AD_controller進入下一狀態(tài)檢測SDOFS,當檢測到SDOFS由1變?yōu)?時,進入寫數(shù)據(jù)狀態(tài),從SD最高位開始由高到低逐位往SDI端口寫數(shù)據(jù),每個SCLK時鐘周期寫一位,直到寫完16位數(shù)據(jù),AD73360根據(jù)這16位數(shù)據(jù)的前8位數(shù)據(jù)針對把后8位數(shù)據(jù)寫入相應AD73360的相應控制寄存器,寫完16位數(shù)據(jù)后,系統(tǒng)把SDIFS引腳設為高阻狀態(tài),并產(chǎn)生一個SCLK周期的END(對END置1)信號,作為一個控制字配置完成的標志。系統(tǒng)檢測到END標志信號后,在未對所有控制字進行有效配置的情況下,把下一個控制字賦給PDATA,并產(chǎn)生一個SCLK周期的GO(把GO置0)標志信號,系統(tǒng)檢測到GO標志信號后,再檢測SDOFS,在SDOFS為1的下一個SCLK開始通過SDI端口向AD73360寫下一個控制字,直到8個控制字都被寫入AD73360,配置完成后,AD73360進入數(shù)據(jù)模式,開始進行A/D轉(zhuǎn)換。完成配置任務后AD_controller結(jié)束配置狀態(tài),把SDI設為高阻狀態(tài),并開始接收SDO引腳的數(shù)據(jù),并把接收到的串行數(shù)據(jù)轉(zhuǎn)換成16位并行數(shù)據(jù)[4]。
在QuartusII開發(fā)工具中,用Verilog HDL語言完成了對AD73360的配置,并進行了功能仿真,功能仿真結(jié)果如圖5所示。
3 VGA顯示
VGA(Video Graphics Array)是IBM在1987年隨PS/2機一起推出的一種視頻傳輸標準,具有分辨率高、顯示速率快、顏色豐富等優(yōu)點,在彩色顯示器領域得到了廣泛的應用。隨著電子技術(shù)的發(fā)展,VGA接口出現(xiàn)在很多嵌入式平臺上,用于圖像信息的實時顯示等。Altera公司提供的DE2開發(fā)板上有一個VGA接口,極大地方便了利用VGA實時顯示。
3.1 VGA顯示原理及時序
通用VGA顯示卡系統(tǒng)主要由控制電路、顯示緩存區(qū)和視頻BIOS程序三個部分組成??刂齐娐分饕瓿蓵r序發(fā)生、顯示緩沖區(qū)數(shù)據(jù)操作、主時鐘選擇和D/A轉(zhuǎn)換等功能;顯示緩沖區(qū)提供顯示數(shù)據(jù)緩存空間;視頻BIOS作為控制程序固化在顯示卡的ROM中。VGA接口為顯示器提供兩類信號,一類是數(shù)據(jù)信號,一類是控制信號。數(shù)據(jù)信號包括紅、綠、藍信號,簡稱RGB信號,控制信號包括水平同步信號和垂直同步信號。輸出不同分辨率時,水平同步信號和垂直同步信號的頻率也不同。
要實現(xiàn)VGA顯示就要解決數(shù)據(jù)來源、數(shù)據(jù)存儲、時序?qū)崿F(xiàn)等問題,其中關(guān)鍵還是如何實現(xiàn)VGA時序。VGA的標準參考顯示時序如圖6所示。行時序和幀時序都需要產(chǎn)生同步脈沖、顯示后沿、顯示時序段和顯示前沿四個部分。幾種常用模式的時序參數(shù)如表1所示。
本系統(tǒng)集成了前端采集、中間處理和后續(xù)顯示功能模塊,充分利用了FPGA的邏輯資源和NiosII處理器的強大功能,較好地實現(xiàn)了預期目標。與同類系統(tǒng)相比,具有開發(fā)時間短、程序可移植性強和成本低等優(yōu)勢。該系統(tǒng)作為電力系統(tǒng)諧波分析系統(tǒng)的一部分,在數(shù)據(jù)采集及預處理方面已經(jīng)取得較好的效果,后期將進一步研究基于FPGA內(nèi)部邏輯結(jié)構(gòu)的FFT實用算法。
參考文獻
[1] 肖雁鴻,毛筱,等.電力系統(tǒng)諧波測量方法綜述[J].電網(wǎng)技術(shù),2002,26(6):61-64.
[2] 吳茂存.基于FPGA的電力系統(tǒng)諧波檢測[D].濟南:山東科技大學,2002.
[3] Analog Devices,Inc.AD73360 Data Sheet.1999.
[4] 孫國銀.AD73360在電量測量系統(tǒng)中的應用[J].中國測試技術(shù),2007,23(2):70-73.
[5] 潘松.SOPC技術(shù)實用教程[M].北京:清華大學出版社2005.
[6] 張志剛.FPGA與SOPC設計教程[M].西安:西安電子科技大學出版社,2007