MATLAB Answers

How do I fix this error?

33 views (last 30 days)
clear all
clc
syms s
K=1;
Gnum=(50/3)*K;
Gden=sym2poly((s+5)*(s+(10/3))*(s+2));
G=tf(Gnum,Gden);
H=20/(s+20);
figure
rlocus(G*H*K);
T=feedback(G*K,H);
figure
step(T)
figure
rlocus(T)
Error using * (line 80)
Invalid operand. Variables of type "sym" cannot be combined with other models.
Error in rootlocusKanalysis (line 16)
rlocus(G*H*K);

  0 Comments

Sign in to comment.

Accepted Answer

Walter Roberson
Walter Roberson on 12 Jan 2021
You can never create a tf directly from something symbolic.
s = tf('s');
K=1;
Gnum=(50/3)*K;
Gden=(s+5)*(s+(10/3))*(s+2);
G=tf(Gnum,Gden);
H=20/(s+20);
figure
rlocus(G*H*K);
T=feedback(G*K,H);
figure
step(T)
figure
rlocus(T)

  3 Comments

Isyraf Izuddin
Isyraf Izuddin on 12 Jan 2021
I follow the coding from this YouTube video there no error when use his equation but when i try using our group equation there is error.
I am a student Please help me
and I also attach my assignment question
Walter Roberson
Walter Roberson on 12 Jan 2021
In that video, at no point does the speaker use a symbolic H.
clear all
clc
syms s
K=1;
Gnum=(50/3)*K;
Gden=sym2poly((s+5)*(s+(10/3))*(s+2));
G=tf(Gnum,Gden);
Hnum = 20;
Hden = sym2poly(s+20);
H=tf(Hnum,Hden)
H = 20 ------ s + 20 Continuous-time transfer function.
figure
rlocus(G*H*K);
T=feedback(G*K,H);
figure
step(T)
figure
rlocus(T)
Isyraf Izuddin
Isyraf Izuddin on 12 Jan 2021
Thank you very much... very appriciate your help... may Allah bless you...

Sign in to comment.

More Answers (0)

Community Treasure Hunt

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

Start Hunting!

Translated by