1 前言 隨著城市化和工業化的進一步發展,越來越多的電力電子設備在電網中廣泛使用,產生了大量的電力諧波注入到電網,這種不受控的電力諧波成為電力系統的一大公害。對市電進行電力諧波分析就可以分析出其附近區域內電網工作狀況,從而為電網安全狀態提供依據。 由于市電電壓在120~380V范圍內,峰值電壓小于1000V,臺式萬用表即可方便測量,并且可以反映出大多數設備工作的電壓環境。 本文以RIGOL高精度臺式萬用表DM3068為例,利用DM3068的DCV擋的1000V量程和10kSa/s采樣速度對市電信號采集,利用USB接口上傳采集的數據,借助C語言和VISA驅動實現對電力信號的全自動采集和存儲,再借助C和Matlab的良好接口能力和Matlab的強大運算能力對數據進行分析,從而得到諧波分析結果。整個測試系統可以做到全自動運行。 2 電力諧波的危害 電力諧波對電力傳輸和使用都會造成很大的危害,通常表現在以下幾個方面: ①電力諧波會引起電網的諧振,對系統構成重大威脅,特別是對電容器和與之串聯的電抗器件,電網諧振常會使之燒毀。 ②諧波會使公用電網中的電力設備產生附加的損耗,降低了發電、輸電及用電設備的效率。 ③電力諧波會造成電力設備過熱或電力損耗,會對使用電源工作的電子設備造成干擾,導致設備工作不穩定,驗證時可能損壞設備。 動態實時的監控和測量電力網絡中的諧波,對電力安全有很重要的意義。 3 電力信號測量分析環境準備 3.1 硬件環境 RIGOLDM3068一臺、普通電腦一臺。硬件上只需要用USB線連接數字萬用表和電腦即可開始工作。硬件連接示意圖如圖1所示。 圖1硬件連接示意圖 3.2 實現原理 此實驗需要數字萬用表具有高速采樣、高精度測量和寬的電壓測量范圍特性,而RIGOLDM3068正好具備以上全部性能。其中,它的最高測量速度達到了10kSa/s,直流電壓測量準確度可以達到±(讀數*0.0035%+量程*0.0005%),量程范圍為200mV~1000V。在測試環境準備完畢后,利用遠程命令對其進行設置,然后開始進行數據采集,可以方便的直接對市電信號進行多樣本采樣,同時,還可以將所采集數據傳輸到電腦進行進一步分析。 3.3 軟件環境 在http://joule.ni.com/nidu/cds/view/p/id/988/lang/en下載并安裝Visa430full.exe,這個安裝包提供了各種VISA通信接口驅動,我們的采集程序需要借助此驅動程序通過USB接口從DM3068采集數據。安裝Visa430后,“C:\WINDOWS\system32”目錄下會有一個“visa32.dll”文件。“C:\ProgramFiles\IVIFoundation\VISA\WinNT\lib\msc”目錄下包含了編譯時鏈接“visa32.dll”時所需的“visa32.lib”文件。在“C:\ProgramFiles\IVIFoundation\VISA\WinNT\include”目錄下包含了我們所需的頭文件。可以通過設置VC6.0的工程路徑包含上述文件,或直接將上述文件復制到程序存放的目錄即可。 安裝VC6.0以上環境,用于開發基于C/C++語言的測量控制程序。 安裝Matlab2007以上版本,用于進行數據分析和圖形化分析結果。 3.4 利用Matlab生成FFT分析程序 數據分析直接利用Matlab進行,在Matlab中編輯好用于數據分析的源碼并寫成函數,保存編輯好的源碼為“FFT.m”文件。假設使用“F:\matlab”為當前工作目錄。源代碼如下: functionFFT_Tran() loadf:\matlab\data.txt Fs=10000;%Samplingfrequency T=1/Fs;%Sampletime L=5000;%Lengthofsignal t=(0:L-1)*T;%Timevector NFFT=2^nextpow2(L); Y=fft(x,NFFT)/L; f=Fs/2*linspace(0,1,NFFT/2); figure; Py=2*abs(Y(1:NFFT/2)) plot(f,Py) title('FFTtranslation') xlabel('Frequency(Hz)') ylabel('|Y(f)|') end 其中“data.txt”為外部數據源文件。此數據源就是將來用C語言借助VISA驅動控制DM3068測量的數據保存為文本文件,每一個測量數據以文本方式保存為獨立的一行即可。 在Matlab交互窗口輸入命令“mbuild-setup”安裝C編譯器。如果已經安裝了VC6.0,Matlab會自動查找到此編譯器,按照提示選擇VC6.0編譯器。 接著輸入“mcc-mf:\matlab\FFT.m-df:\matlab”,Matlab將利用C編譯器編譯FFT.m文件,并將編譯結果輸出到"f:\matlab"目錄。編譯完成后當前工作目錄下有幾個新的文件誕生,其中應該有一個名為FFT.exe的文件。這個文件可以直接運行或被C語言程序調用執行。 4 電力信號測量與分析 利用VC6.0和C語言,調用VISA驅動接口函數完成對DM3068的設置和數據采集。具體的接口函數及用法請參考隨visa430安裝的《NI-VISAHELP》文檔。數據采集與處理流程參見圖2處理流程圖。 圖2數據采集與處理流程 進行數據集前,在DM3068Utility按鍵的命令集菜單下,設置選擇Agilent兼容命令集,然后使用如下SCPI命令序列,通過USB口發送到DM3068即可完成設置: CONF:VOLT:DC1000,0.006 VOLT:DC:ZERO:AUTOOFF TRIG:SOURIMM TRIG:DELAY0 TRIG:COUN1 SAMP:COUN5000 設置完成后,使用下面一條即可命令啟動測量,并獲取測量結果。 READ? 接收到的測量結果是以文本方式返回,各個測量結果以逗號分隔,只需要將測量結果直接以字符方式輸出到data.txt文件中,以準備被Matlab生成的FFT.exe程序調用。在C程序中使用“system("F:\\matlab\\FFT.exe");”語句,即可直接運行之前生成的FFT.exe程序,對data.txt保存的數據進行處理,并繪制頻譜分析圖。 5 結論 如圖3所示軟件運行界面,如圖4所示的分析結果,利用上述方法,對某市電網絡進行分析得到的頻譜曲線,從中可以看出主要功率集中在50Hz分量上,電力網絡狀況良好。 圖3軟件運行界面 圖4對某市電采集分析結果 利用RIGOLDM3068的DCV擋的1000V量程和10kSa/s采樣速度對市電信號采集分析,按照采樣定律,可以有效分析出5kHz以下的信號狀況,足以滿足普通電力的監測應用。 利用C語言靈活性和Matlab強大計算能力,再結合VISA驅動和DM3068的高速、高精度測量能力以及靈活的通信接口,可以很方便地對電力網絡進行實時分析,并實時繪制分析結果,以監測電力網絡的狀況。整個系統簡單靈活,具有很大的實用價值。 |