how to convert tranfer function into a polynomial function?

27 visualizzazioni (ultimi 30 giorni)
I have got an transfer function which is having a relative degree of 4 or higher. I want to find out the gain for root locus based design for a given dominant pole. for the Transfer function I have got i need to substitute the value of s. for that i need to convert Transfer function into a polynomial so that i can use substitution operation.
  3 Commenti
H
H il 12 Mar 2023
also is there a way to convert transfer function to polynomial or symbolic?
H
H il 12 Mar 2023
i have an open loop transfer function C*P= 1.656e09 s^4 + 2.751e12 s^3 + 1.196e15 s^2 + 4.445e16 s + 4.433e15
------------------------------------------------------------------------------------
25 s^7 + 75982 s^6 + 8.552e07 s^5 + 4.409e10 s^4 + 1.057e13 s^3 + 1.049e15 s^2
+ 2.797e16 s
i am finding the closed loop Transfer function =CP/(1+CP) but the matlab is not solving it properly
like I am getting 4.14e10 s^11 + 1.946e14 s^10 + 3.805e17 s^9 + 4.003e20 s^8 + 2.445e23 s^7
+ 8.735e25 s^6 + 1.754e28 s^5 + 1.802e30 s^4 + 8.014e31 s^3 + 1.248e33 s^2
+ 1.24e32 s
---------------------------------------------------------------------------------------
625 s^14 + 3.799e06 s^13 + 1.005e10 s^12 + 1.524e13 s^11 + 1.474e16 s^10 + 9.58e18 s^9
+ 4.313e21 s^8 + 1.36e24 s^7 + 2.964e26 s^6 + 4.218e28 s^5 + 3.494e30 s^4
+ 1.388e32 s^3 + 2.031e33 s^2 + 1.24e32 s
instead of 1.656e09 s^4 + 2.751e12 s^3 + 1.196e15 s^2 + 4.445e16 s + 4.433e15
-----------------------------------------------------------------------------------
25 s^7 + 75982 s^6 + 8.552e07 s^5 + 4.574e10 s^4 + 1.332e13 s^3 + 2.245e15 s^2
+ 7.243e16 s + 4.433e15.??

Accedi per commentare.

Risposte (1)

Sam Chak
Sam Chak il 12 Mar 2023
Hi @H
I think you use the minreal() and tfdata() function.
s = tf('s');
ncp = 1.656e09*s^4 + 2.751e12*s^3 + 1.196e15*s^2 + 4.445e16*s + 4.433e15;
dcp = 25*s^7 + 75982*s^6 + 8.552e07*s^5 + 4.409e10*s^4 + 1.057e13*s^3 + 1.049e15*s^2 + 2.797e16*s;
G = ncp/dcp;
Gcl = feedback(G, 1)
Gcl = 1.656e09 s^4 + 2.751e12 s^3 + 1.196e15 s^2 + 4.445e16 s + 4.433e15 ------------------------------------------------------------------------------------------------------ 25 s^7 + 75982 s^6 + 8.552e07 s^5 + 4.575e10 s^4 + 1.332e13 s^3 + 2.245e15 s^2 + 7.242e16 s + 4.433e15 Continuous-time transfer function.
Gcl = minreal(Gcl)
Gcl = 6.624e07 s^4 + 1.1e11 s^3 + 4.784e13 s^2 + 1.778e15 s + 1.773e14 ------------------------------------------------------------------------------------------------ s^7 + 3039 s^6 + 3.421e06 s^5 + 1.83e09 s^4 + 5.328e11 s^3 + 8.98e13 s^2 + 2.897e15 s + 1.773e14 Continuous-time transfer function.
[num,den] = tfdata(Gcl, 'v')
num = 1×8
1.0e+15 * 0 0 0 0.0000 0.0001 0.0478 1.7780 0.1773
den = 1×8
1.0e+15 * 0.0000 0.0000 0.0000 0.0000 0.0005 0.0898 2.8968 0.1773

Community Treasure Hunt

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

Start Hunting!

Translated by