How do i implement (-s*exp(-0.1s) + 1 - exp(-0.1s))/(s + exp(-0.1*s) -1) as a transfer function in Simulink
조회 수: 4 (최근 30일)
이전 댓글 표시
I have read other questions suggesting the function to be divided into transport delays and transfer functions and then put them in series. But I havent been able to divide this function into two forms.
댓글 수: 0
채택된 답변
Vaibhav Awale
2015년 11월 4일
This is an irrational transfer function. The best way to implement it would be to create a MATLAB function with 's', the complex frequency as input argument and output the numeric value of transfer function.
Something like the following would do:
function out = Gfcn(s)
out = (-s*exp(-0.1*s) + 1 - exp(-0.1*s))/(s + exp(-0.1*s) - 1);
end
This function can then be called repeatedly for obtaining the required system characteristics.
Else you can create a transfer function by using pade approximation for transport delays. One simple way will be the following:
s = tf('s');
G = (-s*exp(-0.1*s) + 1 - exp(-0.1*s))/(s + exp(-0.1*s) - 1); % This creates a state space model for your system
Ga = pade(G,2); % Make a rational system using pade approximation for transport delay
[den, num] = ss2tf(Ga.a, Ga.b, Ga.c, Ga.d); % Obtain numerator and denominator of pade approximated system
Gtf = tf(num, den) %Transfer function of system with time delays approximated using pade approximation
댓글 수: 0
추가 답변 (0개)
참고 항목
카테고리
Help Center 및 File Exchange에서 Nonlinear Operators에 대해 자세히 알아보기
제품
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!