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