how to convert tranfer function into a polynomial function?

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 comentarios

Hi H,
You have a transfer an open-loop transfer function G(s) of relative degree 4 (or higher). You also have a value, s0, that you know for a fact is a closed loop pole. And you'd like to find the value of K such that 1 + K*G(s0) = 0. Am I correctly understanding the problem?
Can you include an example problem and show how you'd try to solve it? Is you question about the math or how to implement the math in Matlab.
H
H el 12 de Mzo. de 2023
also is there a way to convert transfer function to polynomial or symbolic?
H
H el 12 de Mzo. de 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.??

Iniciar sesión para comentar.

Respuestas (1)

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

Categorías

Más información sobre Dynamic System Models en Centro de ayuda y File Exchange.

Preguntada:

H
H
el 12 de Mzo. de 2023

Respondida:

el 12 de Mzo. de 2023

Community Treasure Hunt

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

Start Hunting!

Translated by