%先做个实验
fs=50*32; f=50.0;
N=32;
m = 21;
n=1:N;
t=(n-1)/fs;
Am=[220 0.4 10 3 6 1.5 3 1.3 2.1 0.8 1.1 0.7 0.65 0.15 1 0.06 0.4 0.02 0.03 0.003 0.01];
x=zeros(1,N);
p=1:21;
PH=p.*0.1;
for k=1 :m
x=x+Am(k)*cos(2*pi*f*k*t+PH(k));
end
y = fft(x);
stem(abs(y)*2/N)
然后看频谱图,理论上来说可以分析到15次谐波,和点数的关系其实体现在和采样频率的关系上,主频50Hz,每周波32点,也就是采样频率50*32=1600Hz,根据采样定理,最高能获得信号的频率为800Hz,800Hz相当于16次谐波,但是算上直流分量,就只能分析到15次;
以上是理论上的,实际上,由于其他因素,譬如,采样点数太少(即采样周波)会干扰计算结果的准确性,上例中实际信号有21次谐波,所以在整周期和同步采样下,较高次谐波依然不太准确,如果改成16次,那结果就是准确的;其次,整周期和同步采样也是FFT谐波分析的一大影响因素.
所以,实际谐波分析时,要考虑多种因素