How to find step response for variable transfer function?
이전 댓글 표시
the coefficients of a transfer function are varying, how to find the step response to all the possible transfer functions. transfer function :

step response:

the above figure shows the varying transfer function and step response. I don't know how to get the step response shown in the above diagram for the varying system given. In matlab simulink.
답변 (1개)
Sebastian Castro
2016년 1월 6일
Well, first off let's do this with an individual parameter.
% Parameters
K = 1;
T = 1;
L = 1;
% Create the system
s = tf('s');
sys = (K/(T*s + 1))*exp(-L*s)
% Step response
step(sys)
You can instead place this in a big loop for different parameter values. For example:
% Parameters
K = [0.5,1.0,1.5];
T = [0.5,1.0,1.5];
L = [0.5,1.0,1.5];
% Initialize the loop counter
count = 1;
for ii = 1:numel(K)
for jj = 1:numel(T)
for kk = 1:numel(L)
% Create the system (use 3rd dimension to concatenate)
sys(:,:,count) = (K(ii)/(T(jj)*s + 1))*exp(-L(kk)*s);
count = count + 1;
end
end
end
% Step response
step(sys)
By the way, there is a way more elegant/efficient way of expressing parameter variations shown in this documentation link. However, it didn't seem to work because of the exponential portion, which can't accept a realp tunable parameter.
If you want to pursue the above, you may need to do a Pade approximation of that exponential time delay piece first.
- Sebastian
카테고리
도움말 센터 및 File Exchange에서 Time and Frequency Domain Analysis에 대해 자세히 알아보기
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!