How to get best spectral plot

13 views (last 30 days)
Andreas Askvik
Andreas Askvik on 21 Nov 2017
Commented: Birdman on 24 Nov 2017
Hi, I want to get a plot from the frequency domain from the stator current in a induction motor model. The current is illustrated in figure
I want it in the same "format" as this
but I can't seem to get close, this is my best attempt using pwelch
does anyone have a comment on how to proceed? Thanks in advance.

Accepted Answer

Birdman
Birdman on 21 Nov 2017
How did you set your pwelch's options? If you set them correctly, then you should obtain a very accurate plot. For instance:
h1=spectrum.welch;
set(h1,'Windowname','Hann');
Fs=1000;
set(h1,'OverlapPercent',66.7);
set(h1,'SegmentLength',512);
The lines above make the necessary settings for your pwelch function.
myPsd=psd(h1,X(:,1)-mean(X(:,1)),'Fs',Fs)
semilogx(myPsd.Frequencies,myPsd.Data);grid on
Imagine that your data is X, if you run the two lines above, then you should obtain the same result in a better way.
Please enter OverlapPercent and SegmentLength carefully, according to your data. Hope this helps.
  6 Comments
Birdman
Birdman on 24 Nov 2017
Use this:
myPsd=psd(h1,X(:,1)-mean(X(:,1)),'Fs',Fs)
semilogx(myPsd.Frequencies,myPsd.Data);grid on
set(gca,'XLim',[0.01 100])

Sign in to comment.

More Answers (0)

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!