Bode plot from transfer function looks wrong
19 次查看(过去 30 天)
显示 更早的评论
I'm trying to create a Bode plot for the transfer function for a Multiple Feedback Filter. It's a frequency sensitive filter.
The problem is, my bode plot does not have the correct resonant/midfrequency which should be 1000Hz.
I know my transfer function is right because it can be found elsewhere online and using online bode plotters spits out my own transfer function and the correct Bode plot.
My code:
% Bode plot for 1000Hz
R_1 = 1500;
R_2 = 3300;
R_3 = 12000;
C = .047*10^-6;
s_numerator = -1/(R_1*C);
s2_denom = 1;
s1_denom = 2/(R_3*C);
s0_denom = (1+(R_1/R_2))/(R_1*R_3*(C^2));
H1 = tf ([s_numerator 0],[s2_denom s1_denom s0_denom])% "tf' Creates object representing
bode(H1)
grid on
I know H1 gives me the right transfer function but then when I use the bode operation on H1 the plot is all messed up.
MATLAB transfer function and Bode plot:
As you can see, the Bode plot is not centered at as it should be.
Graphed online using OKAWA Electrical Design:
As you can see, the band pass is centered at 1kHz as it should be and its transfer function is nearly the same transfer function as MATLAB gave me:
What is wrong with my MATLAB code?
0 个评论
采纳的回答
Raj
2019-9-4
"What is wrong with my MATLAB code?" - Absolutely nothing!
Your Bode plot 'x' axis in in rad/sec and the online graph is in Hz. Right click on your bode plot go to property, under 'units' change frequency to Hz. Cheers!
更多回答(0 个)
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Get Started with Control System Toolbox 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!