高端數(shù)字萬用表在市電諧波分析中的應用
實現(xiàn)原理
此實驗需要數(shù)字萬用表具有高速采樣、高精度測量和寬的電壓測量范圍特性,而RIGOL DM3068正好具備以上全部性能。其中,它的最高測量速度達到了10kSa/s,直流電壓測量準確度可以達到±(讀數(shù)*0.0035%+量程*0.0005%),量程范圍為200mV~1000V。在測試環(huán)境準備完畢后,利用遠程命令對其進行設置,然后開始進行數(shù)據(jù)采集,可以方便的直接對市電信號進行多樣本采樣,同時,還可以將所采集數(shù)據(jù)傳輸?shù)诫娔X進行進一步分析。本文引用地址:http://2s4d.com/article/180370.htm
軟件環(huán)境
在http://joule.ni.com/nidu/cds/view/p/id/988/lang/en 下載并安裝Visa430full.exe,這個安裝包提供了各種VISA通信接口驅動,我們的采集程序需要借助此驅動程序通過USB接口從DM3068采集數(shù)據(jù)。安裝Visa430后,“C:WINDOWSsystem32”目錄下會有一個“visa32.dll”文件。“C:Program FilesIVI FoundationVISAWinNTlibmsc”目錄下包含了編譯時鏈接“visa32.dll”時所需的“visa32.lib”文件。在“C:Program FilesIVI FoundationVISAWinNTinclude”目錄下包含了我們所需的頭文件。可以通過設置VC 6.0的工程路徑包含上述文件,或直接將上述文件復制到程序存放的目錄即可。
安裝VC6.0以上環(huán)境,用于開發(fā)基于C/C++語言的測量控制程序。
安裝Matlab 2007以上版本,用于進行數(shù)據(jù)分析和圖形化分析結果。
利用Matlab生成FFT分析程序
數(shù)據(jù)分析直接利用Matlab進行,在Matlab中編輯好用于數(shù)據(jù)分析的源碼并寫成函數(shù),保存編輯好的源碼為“FFT.m”文件。假設使用“F: matlab”為當前工作目錄。源代碼如下:
function FFT_Tran()
load f:matlabdata.txt
Fs = 10000; % Sampling frequency
T = 1/Fs; % Sample time
L = 5000; % Length of signal
t = (0:L-1)*T; % Time vector
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('FFT translation')
xlabel('Frequency (Hz)')
ylabel('|Y(f)|')
end
其中“data.txt”為外部數(shù)據(jù)源文件。此數(shù)據(jù)源就是將來用C語言借助VISA驅動控制DM3068測量的數(shù)據(jù)保存為文本文件,每一個測量數(shù)據(jù)以文本方式保存為獨立的一行即可。
在Matlab交互窗口輸入命令“mbuild -setup”安裝C編譯器。如果已經(jīng)安裝了VC6.0,Matlab會自動查找到此編譯器,按照提示選擇VC 6.0編譯器。
接著輸入“mcc -m f:matlabFFT.m -d f:matlab”,Matlab將利用C編譯器編譯FFT.m文件,并將編譯結果輸出到f:matlab目錄。編譯完成后當前工作目錄下有幾個新的文件誕生,其中應該有一個名為FFT.exe的文件。這個文件可以直接運行或被C語言程序調用執(zhí)行。
電力信號測量與分析
利用VC 6.0和C語言,調用VISA驅動接口函數(shù)完成對DM3068的設置和數(shù)據(jù)采集。具體的接口函數(shù)及用法請參考隨visa430安裝的《NI-VISA HELP》文檔。數(shù)據(jù)采集與處理流程參見圖2處理流程圖。
圖2 數(shù)據(jù)采集與處理流程
晶振相關文章:晶振的作用—有用就是任性
評論