Bode form of a transfer function
45 Ansichten (letzte 30 Tage)
Ältere Kommentare anzeigen
Suppose I have the transfer function k*(s-z1)/((s - p1)*(s - p2)), i.e., in the form that comes from the zpk() function. This form is convenient in that I can see immediately the location of the poles and zeros, but in order to obtain the gain at s=0, I need to compute k*(-z1)*(-p1)*(-p2). Is there a way to instead have the transfer function displayed in Bode form: k2*(-s/z1 + 1)/((-s/p1 + 1)*(-s/p2 + 1)), so that k2 = (-z1)*(-p1)*(-p2), and this represents the gain at s=0? I find this much nicer because I can see the poles, zeros, and the gain at s=0 without having to do any calculations in my head.
Thanks, Luke
0 Kommentare
Akzeptierte Antwort
Arkadiy Turevskiy
am 27 Jun. 2013
>> sys=zpk(1,[2 3],4)
sys =
4 (s-1)
-----------
(s-2) (s-3)
Continuous-time zero/pole/gain model.
>> sys.DisplayFormat='frequency';
>> sys
sys =
-0.66667 (1-s)
---------------
(1-s/2) (1-s/3)
Continuous-time zero/pole/gain model.
Weitere Antworten (1)
David Sanchez
am 27 Jun. 2013
s=tf('s');
% dummy values for the parameters
k=1;
z1=1;
p1=1;
p2=1;
H=k*(s-z1)/((s - p1)*(s - p2));
k2= (-z1)*(-p1)*(-p2);
H2=k2*(-s/z1 + 1)/((-s/p1 + 1)*(-s/p2 + 1));
bode(H);
figure;
bode(H2);
1 Kommentar
Siehe auch
Kategorien
Mehr zu Get Started with Control System Toolbox finden Sie in Help Center und File Exchange
Produkte
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!