Clear Filters
Clear Filters

How do I fix this error?

8 views (last 30 days)
Isyraf Izuddin
Isyraf Izuddin on 12 Jan 2021
Commented: Isyraf Izuddin on 12 Jan 2021
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);

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
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!