Modern Control Engineering

(Chris Devlin) #1
476 Chapter 7 / Control Systems Analysis and Design by the Frequency-Response Method

MATLAB Approach to Get Resonant Peak, Resonant Frequency, and Band-


width. The resonant peak is the value of the maximum magnitude (in decibels) of the


closed-loop frequency response. The resonant frequency is the frequency that yields the


maximum magnitude. MATLAB commands to be used for obtaining the resonant peak


and resonant frequency are as follows:


[mag,phase,w] = bode(num,den,w); or [mag,phase,w] = bode(sys,w);


[Mp,k] = max(mag);


resonant_peak = 20*log10(Mp);


resonant_frequency = w(k)


The bandwidth can be obtained by entering the following lines in the program:


n = 1;


while 20*log10(mag(n)) > = -3; n = n + 1;


end


bandwidth = w(n)


For a detailed MATLAB program, see Example 7–23.


EXAMPLE 7–23 Consider the system shown in Figure 7–78. Using MATLAB, obtain a Bode diagram for the closed-


loop transfer function. Obtain also the resonant peak, resonant frequency, and bandwidth.
MATLAB Program 7–12 produces a Bode diagram for the closed-loop system as well as the
resonant peak, resonant frequency, and bandwidth. The resulting Bode diagram is shown in

MATLAB Program 7–12


nump = [1];


denp = [0.5 1.5 1 0];


sysp = tf(nump,denp);


sys = feedback(sysp,1);


w = logspace(-1,1);


bode(sys,w)


[mag,phase,w] = bode(sys,w);


[Mp,k] = max(mag);


resonant_peak = 20*log10(Mp)


resonant_peak =


5.2388


resonant_frequency = w(k)


resonant_frequency =


0.7906


n = 1;


while 20*log(mag(n))> = -3; n = n + 1;


end


bandwidth = w(n)


bandwidth =


1.2649


Openmirrors.com

Free download pdf