Transfer function with transfer function numerator greater than denominator
102 views (last 30 days)
Show older comments
How can I make a linearized transfer functions with the numerator greater than denominator as below
0 Comments
Answers (1)
Sam Chak
on 23 Jun 2022
Edited: Sam Chak
on 24 Jun 2022
Not sure how to answer this. Evaluating from the mathematical perspective, you can probably understand the following and implement that in your work. I'll start with a general improper rational function:
which can be rewritten as follow:
.
I'll go with first and perform the long division to obtain
.
Next, perform the same procedure on
.
Now, they can summed up and simplified as
where
Example:
a = 7;
b = 5;
c = 3;
p = 2;
q = 1;
s = tf('s');
G1 = (7*s^2 + 5*s + 3)/(2*s + 1)
kp = b/p - a*q/p^2; % p-gain
kf = (a*q^2)/p^2 - b*q/p + c; % f-gain
kd = a/p; % d-gain
G2 = kp + kf/(p*s + q) + kd*s
In this form, , you isolate them and know what each term does.
Edit: If you want to implement this improper transfer function in Simulink, then this is one of the ways to do it.
a = 7;
b = 5;
c = 3;
p = 2;
q = 1;
kp = b/p - a*q/p^2; % p-gain
kf = (a*q^2)/p^2 - b*q/p + c; % f-gain
kd = a/p; % d-gain
8 Comments
Sam Chak
on 24 Jun 2022
Edited: Sam Chak
on 24 Jun 2022
I have edited the Answer to demo how to implement the improper transfer function in Simulink using basic blocks. By the way, if you find the mini tutorial and Simulink model are helpful, please consider accepting ✔ and voting 👍 the Answer. Thanks!
Walter is right that Simulink cannot accept improper transfer function where the degree of the numerator is greater than the degree of the denominator.
Paul is right that another way to implement the improper transfer function in Simulink is to use the Descriptor State-Space. In fact, the improper transfer function is also similar to the ideal PID Controller. But I think it maybe a little advanced to explain that at this stage, if you haven't grasped the basic theory about state-space modeling.
Edit: Paul is also correct about replacing the ideal Derivative block with the Filtered Derivative for practical reasons.
Paul
on 24 Jun 2022
I did not know about that Descriptor State Space block, thanks for pointing it out. For singular E it looks like it implements a differential-algebraic equation (DAE). I've used Simulink in the past for DAE systems and it worked fine, albeit a bit more slowly, Having said that, I would avoid it if possible: Algebraic Loop Concepts.
There are other strategies for dealing with an improper transfer function in Simulink that may be applicable depending on the model. I'm pretty sure that there is a doc page that discusses this issue, but as usual can't find it when I need to, or maybe I'm imagining it.
See Also
Categories
Find more on General Applications in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!