How to find time constants from given 2+ order transfer function?
34 次查看(过去 30 天)
显示 更早的评论
I have a transfer function let us take for e.g k/(100*s^2+20*s+1).In this TF I want to access the denominator as k/(10*s+1)(10*s+1) in such a way that algorithm will return tau1=10,tau2=10.How to get it?
0 个评论
回答(1 个)
David Wilson
2020-8-26
If you just want to display the transfer function in time-constant form, you can do the following:
s = tf('s');
k = 45; % anyhting
G = k/(100*s^2+20*s+1) % expanded polynomial form
[z,p,k] = zpkdata(G)
G1 = zpk(z,p,k,'DisplayFormat','timeconstant')
If you want access to the time constants, use damp.m
damp(G)
[w, zeta, p] = damp(G)
tau = 1./w
I',m assuming you have a stable TF. Check with isstable.
1 个评论
Gerard Nagle
2023-4-29
编辑:Gerard Nagle
2023-4-29
Was trying for hours to get a nice format and do this using my own code. Should have read the documentation closer. Thanks for the answer
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Dynamic System Models 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!