How do i implement (-s*exp(-0.1s) + 1 - exp(-0.1s))/(s + exp(-0.1*s) -1) as a transfer function in Simulink
8 vues (au cours des 30 derniers jours)
Afficher commentaires plus anciens
Sai dheeraj
le 5 Oct 2015
Réponse apportée : Vaibhav Awale
le 4 Nov 2015
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 commentaires
Réponse acceptée
Vaibhav Awale
le 4 Nov 2015
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 commentaires
Plus de réponses (0)
Voir également
Catégories
En savoir plus sur Nonlinear Operators dans Help Center et File Exchange
Produits
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!