基於Xilinx FPGA 實現FFT算法的電力諧波檢測的設計方案詳解

2020-11-24 電子發燒友

基於Xilinx FPGA 實現FFT算法的電力諧波檢測的設計方案詳解

工程師青青 發表於 2018-07-16 18:22:00

基於FFT算法的電力系統諧波檢測裝置,大多採用DSP晶片設計。DSP晶片是採用哈佛結構設計的一種CPU,運算能力很強,速度很快;但是其順序執行的模式限制了其進行FFT運算的速度。而現場可編程邏輯門陣列(Field Programmable Gate Array, FPGA)在近年來獲得了突飛猛進的發展,目前已成為實現數字系統的主流平臺之一。與DSP相比,FPGA最大的優勢就是可以進行並行計算。在進行FFT這類並行運算為主的算法時,採用FPGA的優勢不言而喻。用FPGA實現FFT算法進行諧波檢測成為了一大熱點。

以往FPGA的設計主要依靠硬體描述語言來完成。Xilinx公司推出了專門針對實現DSP的設計軟體—System Generator。在使用FPGA為原型平臺運行算法時,它不僅能夠對硬體的真實情況進行仿真,還能夠自動生成硬體實現所需要的硬體描述語言代碼。與語言設計相比,使用System Generator有三大優勢:第一,圖形化操作,簡單易用;第二,實現的算法能確保與仿真結果相符;第三,無需為仿真和實現建立不同的模型。因此,利用System Generator可以大幅度減少用FPGA設計DSP的工作量,縮短開發周期[1,2]。

1 基於FPGA的諧波檢測模型的設計[3-5]

系統總體結構如圖1所示。

(1)採樣電路部分:包括互感器及濾波電路、鎖相倍頻電路和A/D轉換電路。

待測電壓、電流信號經互感器調理電路轉化成便於採樣的低壓信號,經濾波器濾除檢測範圍外的高次諧波、高頻幹擾信號和噪聲;然後進入A/D轉換電路,電壓、電流的模擬信號轉換成可以用於計算的數位訊號。鎖相倍頻電路用於跟蹤待測信號的頻率變化,以實現對信號的整周期採樣。

(2)如圖1所示,虛線框內部分由FPGA實現。最主要部分就是控制單元和FFT模塊。控制單元主要由狀態機的形式實現,當接收到鎖相倍頻電路送來的倍頻信號時,驅動A/D轉換器進行採樣。A/D轉換器完成一次採樣,先將數據送入到FIFO模塊暫存,當數據達到進行FFT計算所需點數後,狀態機控制FIFO模塊將數據送入FFT模塊進行計算。為保證數據由A/D轉換電路進入FPGA時的同步,A/D轉換電路中的時鐘由FPGA對開發板上的時鐘分頻後提供。

FPGA部分採用模塊化的設計方法。在Simulink環境下搭建仿真模型,如圖2所示。模型的核心部分是FFT計算模塊(FFT v4_1),圍繞它設計了數據輸入子系統data_in、數據輸出子系統(data_out)和控制單元模塊(st_ctr)。用simulink中的信號模塊模擬出電壓u(t)、電流信號i(t),考慮到後續數據輸出控制的設計,預留了中斷信號輸入INT(signal 3),為便於仿真,其間隔時間與採樣時間同步。數據輸入子系統主要用於對採樣數據的轉換和暫存, 數據輸入子系統的主要包括scale模塊、convert模塊和FIFO模塊。數據輸出子系統用於對FFT計算所得的結果進行處理,計算出電壓、電流基波及各次諧波的幅值和相位。

然後,搭建三相的電壓、電流諧波檢測模型(圖3),其中包括了控制模塊(ST_MA、da_out_ctr)和三個子系統A、B、C,每個子系統內均有一個單相諧波檢測模型。控制模塊ST_MA實現對整個模型運行時序的控制以及對硬體採樣電路的控制;da_out_ctr用於控制數據的輸出。

2 系統硬體電路設計

如圖4所示,系統硬體由兩大部分組成,分別是虛線框內的採樣電路部分和開發板部分[6-7]。本文採用的Spartan-3A DSP 入門級開發板是Xilinx公司出品的基於Spartan-3A DSP FPGA設計的一個開發平臺。採樣電路實現對三相電壓、電流的整周期同步採樣,其設計尺寸與Spartan-3A DSP開發板相同,通過EXP接口實現與開發板的通信。它包括:電壓、電流互感器、調理電路、低通濾波電路、鎖相倍頻電路、AD轉換器及電平轉換電路。

3 硬體聯合仿真與結果分析

3.1 硬體聯合仿真

由於實驗條件所限,本文採用的是單相220V的市電為檢測對象。接入額定電壓220V,標稱功率800W的電加熱器為負載。首先用FLUKE434型電能質量分析儀檢測出該負載上的電壓、電流的各次諧波參數,如表1所列,其電壓總諧波畸變率THDV=4.9%,電流總諧波畸變率THDI=4.8%。

經採樣後得到的數位訊號量在0~5V之間,依照給定參數分別乘係數J、K,利用Simulink中模塊生成一組表徵電壓、電流的數位訊號作為系統的輸入信號。如圖5所示。

將FFT模塊中的採樣點數分別設置成為128、256、512、1024,並設置相應的採樣頻率,然後運行硬體聯合仿真模型;將計算結果再乘係數1/J、1/K,得到表2~表5所示結果。

3.2 仿真結果分析

由各表中可以看出,計算出的幅值以及根據幅值計算所得總諧波畸變率的誤差都比較小。隨著採樣點數的增加,計算所得基波和較低次數的諧波幅值的誤差和總諧波畸變率的誤差並沒有明顯減小,而次數較高的諧波誤差減小較明顯。究其原因,N點FFT計算可以分解出0~N/2-1次諧波,N=128時就可以分解出63次以內的諧波了。而對於次數較高的諧波,採樣點數的增加對其幅值誤差的改善還是比較明顯的。硬體實現時,在計算精度滿足要求的情況下,考慮到實時性的要求,可選用256點FFT進行計算。

此外,計算所得相位出現了很大的偏差;原本設想通過改變待測信號參數,分析仿真結果來推導出相位偏差的規律,但是隨著數值的改變,相位偏差規律並不明顯,並未達到預期目的。然而,在改變信號參數的分析過程中發現,相位的改變對諧波幅值和總諧波畸變率的計算並沒有太大影響,計算精度基本滿足要求。因此,實際硬體實現時,捨棄掉相位計算,只計算出各次諧波的幅值及總諧波畸變率。

4 結束語

本文提出了一種採用基於Xilinx FPGA 實現FFT算法的電壓、電流諧波檢測的模塊化的設計方法。使用System Generator設計了諧波檢測的模型及前端採樣電路,並以Spartan-3A DSP開發板為平臺進行了硬體聯合仿真驗證。

打開APP閱讀更多精彩內容

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容圖片侵權或者其他問題,請聯繫本站作侵刪。 侵權投訴

相關焦點

  • 用FPGA實現FFT算法(圖)
    當n較大時,因計算量太大,直接用dft算法進行譜分析和信號的實時處理是不切實際的。快速傅立葉變換(fast fourier transformation,簡稱fft)使dft運算效率提高1~2個數量級。其原因是當n較大時,對dft進行了基4和基2分解運算。fft算法除了必需的數據存儲器ram和旋轉因子rom外,仍需較複雜的運算和控制電路單元,即使現在,實現長點數的fft仍然是很困難。
  • 基於MSP430系列微控制器的FFT算法實現
    摘要:傅立葉變換算法在供電質量監測系統中被用來進行諧波分析,如何加快分析速度和降低系統成本是當前這種監測系統設計關注的主要問題。
  • 用FPGA實現FFT算法
    當N較大時,因計算量太大,直接用DFT算法進行譜分析和信號的實時處理是不切實際的。快速傅立葉變換(Fast Fourier Transformation,簡稱FFT)使DFT運算效率提高1~2個數量級。其原因是當N較大時,對DFT進行了基4和基2分解運算。FFT算法除了必需的數據存儲器ram和旋轉因子rom外,仍需較複雜的運算和控制電路單元,即使現在,實現長點數的FFT仍然是很困難。
  • 基於FPGA IP核的FFT實現
    0 引 言 數位訊號處理領域中FFT算法有著廣泛的應用。目前現有的文獻大多致力於研究利用FFT算法做有關信號處理、參數估計、F+FT蝶形運算單元與地址單元設計、不同算法的FFT實現以及FFT模型優化等方面。
  • 電力系統諧波檢測方法綜述
    福州大學電氣工程與自動化學院、國網福建省電力有限公司、國網福建省電力有限公司電力科學研究院的研究人員陳和洋、吳文宣、鄭文迪、晁武傑、唐志軍,在2019年第9期《電氣技術》雜誌上撰文指出,電力系統諧波檢測為諧波治理提供了方向,同時也是諧波監測系統的核心。
  • 基於FPGA高精度浮點運算器的FFT設計與仿真
    摘要 基於IEEE浮點表示格式及FFT算法,提出一種基2FFT的FPGA方法,完成了基於FPGA高精度浮點運算器的FFT的設計。利用VHDL語言描述了蝶形運算過程及地址產生單元,其仿真波形基本能正確的表示輸出結果。
  • 基於高速定點FFT算法的FPGA設計方案
    在高速數位訊號處理領域,如雷達信號處理,FFT的處理速度往往是整個系統設計性能的關鍵所在。 針對高速實時信號處理的要求,軟體實現方法顯然滿足不了其需要。近年來現場可編程門陣列(FPGA)以其高性能、高靈活性、友好的開發環境、在線可編程等特點,使得基於FPGA的設計可以滿足實時數位訊號處理的要求,在市場競爭中具有很大的優勢。 在FFT算法中,數據的寬度通常都是固定的寬度。
  • 基於DSP和FPGA的機器人聲控系統設計與實現
    2 系統硬體總體設計 系統的硬體功能是實現語音指令的採集和步進電機的驅動控制,為系統軟體提供開發和調試平臺。如圖1所示。 3.3 語音識別程序模塊的設計 為了實現機器人對非特定人語音指令的識別,系統採用非特定人的孤立詞識別系統。非特定人的語音識別是指語音模型由不同年齡、不同性別、不同口音的人進行訓練,在識別時不需要訓練就可以識別說話人的語音[2]。系統分為預加重和加窗,短點檢測,特徵提取,與語音庫的模式匹配和訓練幾個部分。
  • 一種基於FPGA的全光纖電流互感器控制電路設計
    本文引用地址:http://www.eepw.com.cn/article/262432.htm  目前檢測和控制電路實現主要有兩種方案,一種是以數位訊號處理晶片(DSP)為核心,由於DSP的速度越來越快,使得DSP成為很多數據處理和信號檢測方案的首選,但在時序控制方面是其瓶頸,由於時序控制精度和速度直接影響光纖電流互感器的檢測精度
  • 基於TMS32OLF24O7的FFT算法的實現
    信號的一些特性在時域總是表現得不明顯,通過傅立葉算法,將其變換到頻域,其特性就一目了然。例如,來自供電系統的幹擾在時域上總是不易識別,但是在頻域上就可以很清晰地看到50~60 Hz的離散諧波。在計算機系統中,實際上是以離散傅立葉變換(DFT)的方式處理數據。由於DFT的運算量比較大,並不適用於嵌入式控制系統,所以實際應用中常使用DFT 的快速算法一快速傅立葉變換(FFT)。
  • 基於FPGA的FFT算法硬體實現
    基於FPGA的FFT算法硬體實現
  • 基於FPGA的無損圖像壓縮系統設計
    編者按:  摘要:本文簡要介紹了圖像壓縮的重要性和常用的無損圖像壓縮算法,分析了快速高效無損圖像壓縮算法(FELICS)的優勢,隨後詳細分析了該算法的編碼步驟和硬體實現方案,最後公布了基於該方案的FPGA性能指標。
  • 基於TMS320LF2407的FFT算法的實現及應用
    信號的一些特性在時域總是表現得不明顯,通過傅立葉算法,將其變換到頻域,其特性就一目了然。例如,來自供電系統的幹擾在時域上總是不易識別,但是在頻域上就可以很清晰地看到50~60 Hz的離散諧波。 在計算機系統中,實際上是以離散傅立葉變換(DFT)的方式處理數據。由於DFT的運算量比較大,並不適用於嵌入式控制系統,所以實際應用中常使用DFT 的快速算法一快速傅立葉變換(FFT)。
  • 基於Cyclone II FPGA開發平臺實現語音識別算法程序的設計
    基於Cyclone II FPGA開發平臺實現語音識別算法程序的設計 瀋陽;馮良;洪誠 發表於 2021-01-12 10:21:38 SOPC可編程片上系統是一種獨特的嵌入式微處理系統。
  • 基於FPGA的高速流水線FFT算法實現
    FFT(快速傅立葉變換)算法是作為DFT的快速算法提出,它將長序列的DFT分解為短序列的DFT,大大減少了運算量,使得DFT算法在頻譜分析、濾波器設計等領域得到了廣泛的應用。  FPGA(現場可編程門陣列)是一種具有大規模可編程門陣列的器件,不僅具有專用集成電路(ASIC)快速的特點,更具有很好的系統實現的靈活性。FPGA可通過開發工具實現在線編程。
  • 基於FPGA的複數浮點協方差矩陣實現
    最終導致FPGA器件資源枯竭,無法實現設計。為了保證算法的實現,必須對中間運算數據進行截斷,將每次累加的結果除2(可以通過移位運算來實現),以避免溢出。 此外,在應用MUSIC算法時,各種計算都是複數運算。
  • 一種基於FPGA的帶死區的SPWM波形產生的設計與實現詳解
    打開APP 一種基於FPGA的帶死區的SPWM波形產生的設計與實現詳解 電子發燒友 發表於 2018-12-21 15:36:08
  • 電力系統的諧波檢測和治理
    摘要:目前電力系統諧波危害已經引起了各個部門的關注,為了整個供電系統的供電質量,必須對諧波進行有效的檢測和治理。關鍵字:電力諧波 檢測 治理前言隨著我國工業化進程的迅猛發展,電網裝機容量不斷加大,電網中電力電子元件的使用也越來越多,致使大量的諧波電流注入電網,造成正弦波畸變,電能質量下降,不但對電力系統的一些重要設備產生重大影響,對廣大用戶也產生了嚴重危害。
  • 基於RCP的混合型電力濾波器設計
    基於RCP的混合型電力濾波器設計 葉子 發表於 2012-01-26 14:33:11   本文基於Simulink軟體對混合型有源電力濾波器(Hvbrid Active Power Filter,HAPF)
  • 一種諧波與無功電流檢測方法的探討
    有源電力濾波器(APF)作為一種有效的諧波治理裝置,同時能補償無功功率。能否準確快速獲得諧波及無功電流指令信號對於APF的治理效果具有直接的影響。研究了一種諧波和無功電流檢測方法,分析並設計了其中起關鍵作用的低通濾波器和三相鎖相環。