how to convert a Laplace transform into a transfer function value

>> A= tf([1 0],[1 1])
A =
s
-----
s + 1
Continuous-time transfer function.
>> p= feedback(A,1)
p =
s
-------
2 s + 1
Continuous-time transfer function.
>> laplace(t)
ans =
1/s^2
>> p= feedback(ans,1)
Error using feedback
Not enough input arguments.

1 个评论

a = [2];
b = [1 0 0];
f= tf(a,b)
f = 2 --- s^2 Continuous-time transfer function.
syms t;
d= laplace(2*t)
d = 
S= feedback(f,1)
S = 2 ------- s^2 + 2 Continuous-time transfer function.
D= feedback(d,1)
Error using feedback
Not enough input arguments.
So, why the laplace tranform is not considered as a transfer function ???? If I have a time domain system, then how we can calculate the transfer function of that system.

请先登录,再进行评论。

回答(1 个)

The ‘d’ expression currently exists as a symbolic object. It needs to be transformed into a double value and then to a system object to work here —
a = [2];
b = [1 0 0];
f= tf(a,b)
f = 2 --- s^2 Continuous-time transfer function.
syms t;
d= laplace(2*t) % Symbolic Object
d = 
[dn,dd] = numden(d) % Get Numerator & Denominator
dn = 
2
dd = 
dnp = double(sym2poly(dn)) % Convert To Polynomial Vectors & 'double' Values (From Symbolic Variables)
dnp = 2
ddp = double(sym2poly(dd)) % Convert To Polynomial Vectors & 'double' Values (From Symbolic Variables)
ddp = 1×3
1 0 0
dtf = tf(dnp, ddp) % Create AS Control System Toolbos 'system' Object
dtf = 2 --- s^2 Continuous-time transfer function.
S= feedback(f,1)
S = 2 ------- s^2 + 2 Continuous-time transfer function.
D= feedback(dtf,1)
D = 2 ------- s^2 + 2 Continuous-time transfer function.
.
See the documentation on the relevant Symbolic Toolbox functions numden, sym2poly, and double for details.
.

类别

帮助中心File Exchange 中查找有关 Dynamic System Models 的更多信息

Community Treasure Hunt

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

Start Hunting!

Translated by