劉 虹,李昱坤,劉彥軍
(廈門理工學院光電與通信工程學院,福建 廈門 361024)
電流信號的諧波檢測可用于監(jiān)控各次諧波的參數(shù),諧波測量是處理諧波問題的基礎,可應用于多種實際系統(tǒng)[1]。目前,有大量的研究資料研究電力系統(tǒng)中電流的檢測與諧波分析[2-3],電力系統(tǒng)中的電流屬于高壓電流,由于電網(wǎng)中存在大量的非線性負載使得電網(wǎng)中的諧波污染嚴重,這將增加分析的難度與復雜度,而普通電路的電流指的是低壓電流,噪聲污染小,因而對普通電路中電流分析檢測裝置的設計可以更簡單、更有效。此外,目前利用微控制器對信號進行諧波分析多針對電壓信號[4-5],本文將這兩者相結合,著眼于非電力系統(tǒng)普通電路中電流的檢測與分析,不需要像分析電力系統(tǒng)的電流那樣復雜,采取簡單的方法制作一個簡易有效的電流信號檢測分析系統(tǒng)。
要能夠?qū)﹄娏餍盘柕闹C波進行分析檢測,首先要識別到待分析的電流信號,同時對識別到的電流信號進行流壓轉(zhuǎn)換,將電流信號轉(zhuǎn)換成相應的電壓信號,接著將電壓信號進行采樣及數(shù)模轉(zhuǎn)換,輸入微處理器進行快速傅里葉變換(fast fourier transform,F(xiàn)FT),分析得到諧波分量信息,最終顯示在TFT屏幕上。整體實現(xiàn)框圖如圖1所示。
圖1 系統(tǒng)整體框圖
諧波檢測算法的實現(xiàn)可采取專用數(shù)字信號處理器DSP,F(xiàn)PGA等高速芯片。但DSP、FPGA在頻譜分析系統(tǒng)中,專注于離散信號的算法處理,對輸入模擬信號的采集與系統(tǒng)任務的調(diào)度增加外圍電路設計與軟件編程的復雜度[6],本設計需要采樣的對象為10~200 Hz的模擬電流信號,STM32F103自帶的12位A/D轉(zhuǎn)換器,速率為1 MB,完全滿足需求,這大大降低了硬件復雜度。并且其整合了DSP指令與浮點運算單元,在實現(xiàn)算法上優(yōu)勢明顯,具有靈活的性能和豐富外設資源[7]。因此,設計選擇STM32實現(xiàn)對電流信號的諧波檢測。
圖2 非接觸式電流傳感器
電流信號接收電路采用非接觸式的電流傳感器,非接觸式電流傳感器的優(yōu)勢在于原有設備的電氣接線不用絲毫改動就可以測得電流的數(shù)值,在電流測量中具有廣泛的適用性。以漆包線繞制線圈制作電流傳感器以獲取電流信號,輸入端與輸出端匝數(shù)比L1∶L2=1∶200,輸入端負載為R=10 Ω。利用圖2的電路,待測電流信號由A端輸入,通過電流傳感器從C端輸出到后續(xù)電流檢測系統(tǒng)。
當接收到電流信號以后,需將電流信號轉(zhuǎn)換為電壓信號。采用運放模塊LM324將電流轉(zhuǎn)換為電壓,同時進行放大,如圖3所示,電阻R1=1 kΩ可調(diào),輸入Ii與輸出Vi之間的關系如式1所示。
圖3 電流-電壓轉(zhuǎn)換電路
(1)
流壓轉(zhuǎn)換后的電壓信號再經(jīng)過LM324運算放大器進行積分變換,以電壓的形式實現(xiàn)對所要測量的電流信號的采樣,如圖3所示,電容C1=100μF,電阻R2=100 kΩ,輸入電流與輸出電壓之間的關系如式2所示。
圖4 STM32核心處理框圖
(2)
圖4是STM32核心處理框圖。STM32集成的12位A/D是一種逐次逼近型模數(shù)轉(zhuǎn)換器,在保證采樣精度的前提下,最大采樣頻率可達14 MHz,符合設計的處理頻率要求,所以,選擇STM32內(nèi)部集成的A/D轉(zhuǎn)換器實現(xiàn)模數(shù)轉(zhuǎn)換,將轉(zhuǎn)換后的數(shù)據(jù)直接送入STM32內(nèi)部處理器進行諧波分析計算。為了能靈活地根據(jù)需要獲得A/D的采樣頻率,利用STM32中的定時器周期性地觸發(fā)A/D,通過控制定時器定時時間的長短來設置采樣頻率,從而不用受到系統(tǒng)時鐘的制約。
為了實現(xiàn)數(shù)據(jù)的實時處理,諧波分析算法采用FFT算法來實現(xiàn)。在頻譜分析中,采樣頻率、窗口類型及窗長、FFT點數(shù)都影響著頻譜分析的結果。諧波分析算法實現(xiàn)工作模塊如圖5所示。
圖5 諧波分析算法實現(xiàn)框圖
A/D采樣頻率的控制采用定時器控制法。配置STM32通用定時器為PWM輸出模式,產(chǎn)生周期為T的方波函數(shù),通過修改通用定時器的預分頻器寄存器的裝載值,可以改變周期T,利用方波信號的上升沿來啟動轉(zhuǎn)換,從而調(diào)節(jié)A/D采樣頻率,ωs=2π/T即為采樣頻率。
實際中的序列往往是非周期的,這就與離散周期信號的傅里葉級數(shù)的實質(zhì)互相矛盾,實際應用中必須對離散信號做截斷處理,進行擬周期化,這就造成了頻譜泄露,這是頻譜分析中最重要的誤差來源。如果直接截取數(shù)據(jù),就相當于加了矩形窗,而為了提高信號的分辨率,同時減少截斷效應,應盡量使用緩變性的窗函數(shù),同時加大截斷的窗長N,即提高了數(shù)據(jù)點N,以降低頻譜泄露。因此,采用哈明窗[8-9],窗的形式如下所示。
(3)
式(3)中:n為采樣點序號。模擬信號x(t)經(jīng)過采樣并加窗處理后,得到
xN(n)=x(n)·wN(n)。
(4)
x(n)為原序列第n點的值,N取1 024。為了提高運算速率,可以犧牲存儲空間,將哈明窗所需要的數(shù)據(jù)提前存放在STM32的數(shù)組中,加窗處理時,只需要將數(shù)組里的值取出,與AD轉(zhuǎn)換接收的數(shù)據(jù)取1 024點進行乘法相關,就可以得到相應的xN(n),前提是這兩組數(shù)據(jù)必須保持同步以得到正確的結果。
FFT點數(shù)采用1 024點,將加窗處理后的xN(n)進行基2-FFT運算。由于點數(shù)N滿足N=2m,故可將N點數(shù)按照奇偶性分成兩組。
(5)
式中:r為加窗后采樣點的序號;x(r)代表第r個采樣點加窗后的值,故
(6)
(7)
X(k)=DFT[x(n)]=X1(k)+WNkX2(k),
(8)
(9)
式(8)~(9)中:DFT表示離散傅里葉變換,可用專用的運算符號來表示,具體如圖6所示。
圖6 最基本頻率抽取的基2-FFT蝶形運算圖
整個FFT系統(tǒng)的核心是蝶形運算模塊,是為了計算機實現(xiàn)提出的一種逼近DFT的算法。系統(tǒng)對運算數(shù)據(jù)采用倒位序輸入,正序輸出的方式,對蝶形運算單元采取順序調(diào)用方式,采用1 024點,所以基2的蝶形運算有10級。每一級中都包含512個蝶形運算單元和512個旋轉(zhuǎn)因子[10]。經(jīng)過FFT運算后,輸出數(shù)據(jù)分為實部與虛部,存儲在相應的寄存器中。
FFT處理器輸出的數(shù)據(jù)為補碼,首先判斷補碼最高位的值,再根據(jù)補碼與真值之間的關系,將補碼轉(zhuǎn)換為數(shù)據(jù)的真值,再利用頻譜計算公式(10),完成幅度的計算。
(10)
頻譜計算流程如圖7所示。
圖7 頻譜計算流程圖
圖8 FFT頻譜仿真圖
利用Matlab進行仿真測試,當輸入信號的幅值為0.6 V,頻率為45 Hz的正弦波時,頻譜分析如圖8(a)所示。當輸入信號的幅值為2 V,基波頻率為10 Hz的方波時,頻譜分析如圖8(b)所示。從圖中可以看出,該諧波分析算法能夠準確地分析出信號的各次諧波。
根據(jù)電流傳感器匝數(shù)比以及流壓換算關系,可以將測得的電壓值轉(zhuǎn)換得到相應的電流幅值,在TFT屏上顯示出所檢測的電流的頻率、幅值以及前5次諧波分量,幅值為2 V,基波分別為10 Hz和200 Hz的電流信號實際測試結果如表1所示。通過測試,該諧波檢測系統(tǒng)檢測指標為電流幅度測量精度優(yōu)于5%,頻率測量精度優(yōu)于1%,諧波頻率測量精度優(yōu)于5%。
表1 電流諧波檢測實測結果
為測量非電力系統(tǒng)普通電路中電流信號諧波參數(shù)設計的檢測系統(tǒng),硬件電路是利用線圈設計了非接觸式傳感器獲取普通電路的電流信號,經(jīng)過運算放大器LM324N進行流壓轉(zhuǎn)換以及積分采樣,得到了對應的離散電壓量,經(jīng)A/D轉(zhuǎn)換器輸入STM32微處理器進行快速傅里葉變換,采用漢明窗對要變換的數(shù)據(jù)進行加窗處理,變換后的數(shù)據(jù)經(jīng)過頻譜計算,得到針對電流信號的諧波分析數(shù)據(jù)。對大量實測數(shù)據(jù)的分析結果表明,當被測電流的基波頻率范圍為10~200 Hz時,電流各諧波幅度測量精度優(yōu)于5%,頻率測量精度優(yōu)于1%,諧波頻率測量精度優(yōu)于5%,說明該系統(tǒng)能快速有效地檢測出普通電路里的電流信息。通過Matlab仿真驗證了系統(tǒng)所設計的核心算法在分析方波、三角波以及正弦波的前五次諧波特性的準確性。
在實際硬件測試數(shù)據(jù)中,有時會分析出不正確的諧波分量,但是在Matlab仿真中卻不會出現(xiàn)這一情況,說明實測試過程中出現(xiàn)不正確的諧波分量是信號被噪聲干擾所造成的。因此,為得到更好的諧波檢測效果,需要設計合適的濾波器以去除噪聲干擾,這有待于今后進一步完善。