Deriving the transfer function from a data set that has magnitude,phase and omega

16 visualizzazioni (ultimi 30 giorni)
Hello,
I have this dataset that contains magnitude, phase and omega of a transfer function. I can bodeplot it but I need to derive the transfer function from it. Please help.
Thanks

Risposte (1)

Paul
Paul il 16 Set 2022
Hi George,
I plotted the data and it looks like the data comes from a transfer function where the degree of the denominator is two more than the degree of the numerator.
First, store the data in an frd object. Then try using tfest to find the transfer function that fits the data. It should work very well.
If you have any trouble, feel free to come back, show your code, and and ask more questions.
  14 Commenti
George Isaac
George Isaac il 17 Set 2022
Modificato: George Isaac il 17 Set 2022
Mr=6.59;
Wr=4.464;
Kdc=0.06667;
zeta_vec= roots([4 0 -4 0 (Kdc/Mr)^2]);
zeta_vec;
yes but isn't the peak value of Mr=6.5948 the one that should be used in the formula.. This would come out with zeta not being 0.22
zeta_vec =
-1.0000
1.0000
-0.0051
0.0051
Paul
Paul il 17 Set 2022
Strictly speaking, the formula only applies for a second order system. For example, with zeta = 0.2 and Kdc = 1, we would expect to have
Kdc = 1;
zeta = 0.2;
Mr = 1/2/zeta/sqrt(1-zeta^2)
Mr = 2.5516
20*log10(Mr)
ans = 8.1361
And we do
bode(tf(1,[1 2*zeta*1 1]),tf(Mr))
If the transfer function is not second order, the formula might still be a very good approximation if the additional poles and zeros are at higher frequency than that of the dominant second order poles. For example, let's add a zero at s= -10 and a pole at s = -20, which don't have much impact on the low-frequency response and don't really affect the Mr
bode(tf([1/10 1],conv([1/20 1],[1 2*zeta*1 1])),tf(Mr),logspace(-1,1,500))
In your transfer function, the dominant second order poles are at ~4.45 rad/sec, but the transfer function has a zero at s = -0.1, which is smaller than the frequency of the dominant poles. That zero has a sigificant impact on the low frequency portion of the Bode plot (and the overshoot of the step response as illuatrated above by @Sam Chak), so the formula doesn't apply.

Accedi per commentare.

Categorie

Scopri di più su Get Started with Control System Toolbox in Help Center e File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by