How to plot Bode diagram from input and output data
显示 更早的评论
I want to plot bode diagram from input and output data. Also, I should able to change frequency range and amplitude should be in dB.
Thank you,
采纳的回答
更多回答(2 个)
Naty Shemer
2017-2-6
Hey, I have attempted what you've suggested to get the Bode plot right. Something' doesn't seems right with my bode plot. Any idea what I am doing wrong?
L=length(Cmd);
n = 2^nextpow2(L);
Fs=100;
f=Fs*(0:(n/2)-1)/n;
CmdFFT=fft(Cmd,n);
FdbckFFT=fft(Fdbck,n);
H=FdbckFFT./CmdFFT;
HH=H(1:end/2);
HMag=abs(HH);
HPh=(angle(HH));
figure;
ax1=subplot(2,1,1);
semilogx(f*2*pi,20*log10(HMag));
grid on
ax2=subplot(2,1,2);
semilogx(f*2*pi,HPh*57.3);
grid on
linkaxes([ax1 ax2],'x')
Hamidreza Hoshyarmanesh
2019-8-21
0 个投票
This is a bit late responding this post, however I thought a quick response could be useful for those who might face the same problem in the future.
When calling semilogx(f*2*pi,HPh*57.3) to plot the phase digram, Matlab ignores the imaginary part of the HH (due to HMag=abs(HH);) and you will get zero as the output.
1 个评论
Sumit Swain
2021-4-14
Consider having the input and output data from experiment in sine wave form. How to plot the bodeplot in matlab from the input and the output data?
类别
在 帮助中心 和 File Exchange 中查找有关 Uncertainty Analysis 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!