Professional Documents
Culture Documents
TO ACCOMPANY
AUTOMATIC CONTROL SYSTEMS
EIGHTH EDITION
BY
BENJAMIN C. KUO
FARID GOLNARAGHI
APPENDIX
K
ACSYS 2002: Description
of the Software
This Appendix introduces and describes the various components of the Automatic Control Systems (ACSYS) toolbox.
(Please note that if you use another folder name, the preceding and following directions
should be modified accordingly.)
To run ACSYS2002, simply start MATLAB R12 or higher (version 6.0 or higher)1.
(Note: Screen resolution of 800 by 600 pixels or higher is recommended for best graphics quality), and at the MATLAB prompt, type
cd C:\ACSYS2002
You may also use the MATLAB Directory Browser to move to the ACSYS2002 folder.
See MATLAB documentation for instructions. Next, in the MATLAB command window,
at the prompt (W) type
acsys 1or ACSYS2
Figure K-1 should appear. Upon clicking any button, the corresponding toolbox
appears.
1
At the time of publication of this book, there was an issue of compatibility between MATLAB version 6.0
(R12), the student version of MATLAB (R12) and MATLAB version 6.1 (R12.1), and Windows XP.
At the final stages of publishing this book, Mathworks Inc. provided the authors with the prerelease R13 (version 6.5) of MATLAB, which has resolved this compatibility issue. The ACSYS software is fully compatible
with the prerelease of MATLAB.
See Preface for more information.
K-1
The ACSYS components or toolboxes may also be called directly by typing their names
at the MATLAB prompt.
K-2-1
tfcal
The Transfer Function Calculator Tool may be used by clicking the appropriate button in
the ACSYS window or by typing tfcal in the MATLAB command window. This tool is
used to find a system transfer function and its poles and zeros. Figure K-2 shows the
Transfer Function Calculator Window. Press the Help for 1st Time User for instructions.
The resulting MATLAB help dialog is shown in Figure K-3.
As suggested in the help dialog, press any desired button, and move to the MATLAB
command window to continue with the rest of operation. The first action button is the
Transfer Function Calculator, which is used to find the transfer function poles and zeros, and converts the system from transfer function form into the state space form (see
Chapter 5 for more details). You may use the other buttons to calculate the transfer functions of simple systems as shown in Figure K-4 and described in Chapter 3.
R(s)
G1 (s)
Y(s)
G2 (s)
(a)
G1 (s)
+
R(s)
Y(s)
+
G2 (s)
(b)
R(s)
G(s)
Y(s)
H(s)
(c)
K-2-2
tfsym
If you have access to the MATLAB Symbolics Tool, you may use the ACSYS Transfer
Function Symbolic Tool by pressing the appropriate pushbutton in the ACSYS window,
or by typing in tfsym in the MATLAB command window. The Symbolic Tool window is
shown in Figure K-5. Click in the Help for the 1st Time User button to see the instructions on how to use the toolbox. The instructions appear on help dialog window as
shown in Figure K-6. As instructed, you must run this program within the MATLAB command window after clicking the desired buttons.
For description of the Transfer Function and Inverse Laplace button, refer to Chapter 2 and for the state space applications see Chapter 5.
K-2-3
tftool
The Transfer Function Analysis Tool can be invoked either from the MATLAB command line by simply typing tftool or from the Automatic Control Systems launch applet
(ACSYS) by clicking on the appropriate pushbutton. The steps involved in setting up
and then solving a given problem are as follows.
Specify the type of input preference, that is, polynomial or pole, zero, gain formats.
Enter the transfer function values.
Convert the transfer function from polynomial form to poles and zeros or vice versa.
Find the partial-fraction representation of the system.
Use the Inverse Laplace Command (user must have access to the MATLAB
Symbolic Tool for this task).
Generate a hard copy if desired.
The reader is referred to Chapter 2 for a detailed discussion of tftool.
K-2-4
statetool
The State Space Analysis Tool (statetool) consists of a number of m-files and GUIs for
the analysis of state-space systems. The statetool can be invoked either from the MATLAB command line by simply typing statetool or from the Automatic Control Systems
launch applet (ACSYS) by clicking on the appropriate button. This program may be used
for problems in Chapters 5 and 10, and it allows the user to do the following tasks:
Enter the state matrices.
Find the system characteristic polynomial, eigenvalues, and eigenvectors.
K-2-5
stabtool
The Stability Analysis Tool (stabtool), may be used for finding a transfer function poles
and zeros and to conduct Routh-Hurwitz stability tests. The stabtool can be invoked either from the MATLAB command line by typing stabtool or clicking the Routh-Hurwitz
button from the Automatic Control Systems launch applet (ACSYS). The steps involved
in setting up and then solving a given stability problem using stabtool are as follows.
Specify the transfer function configuration, that is, polynomial or pole, zero, gain
formats.
Enter the transfer function values.
Convert the transfer function from polynomial form to poles and zeros or vice
versa.
Find the transfer function poles and zeros.
Form the Routh table and conduct the Routh-Hurwitz stability test.
For a better illustration of stabtool, please refer to Chapter 6.
K-2-6
timetool
The Time Response Analysis Tool (timetool) consists of a number of m-files and GUIs
for the time and root-locus analysis of control engineering transfer functions. The timetool can be invoked either from the MATLAB command line by simply typing timetool
or from the Automatic Control Systems launch applet (ACSYS) by clicking the appropriate button. This software allows the user to be able to conduct the following tasks:
Enter the transfer function values in polynomial form (user must use the tftool to
convert the transfer function from pole, zero, gain form into the polynomial form).
Obtain the step, impulse, parabolic, and ramp time responses.
Investigate the effect of poles on the time response by relating the s-plane and the
system root-locus to the system time response.
Understand the effect of adding zeros and poles to the closed-loop or open-loop
transfer functions.
K-2-7
freqtool
The Frequency Response Analysis Tool (freqtool) consists of a number of m-files and
GUIs for the frequency analysis of simple control engineering transfer functions. The freqtool can be invoked either from the MATLAB command line by simply typing freqtool
or from the Automatic Control Systems launch applet (ACSYS) by clicking on the appropriate button. This software allows the user to be able to conduct the following tasks:
Enter the transfer function values in polynomial form (user must use the tftool to
convert the transfer function from pole, zero, gain form into the polynomial form).
Obtain the closed-loop magnitude and phase response.
Obtain the relative stability using the transfer function loop phase and gain margin Bode plots.
Plot the Nyquist plot of the loop transfer function.
Understand the effect of adding zeros and poles to the closed-loop or open-loop
transfer functions.
Compare higher-order transfer functions to their approximation.
Study position- and speed-control problems.
Refer to Chapter 9 for a detailed discussion of the program.
K-2-8
controls
The Controller Design Tool (controls) consists of a number of m-files and GUIs for time and
frequency analyses and the design of simple control systems using transfer functions. The
controls tool can be invoked either from the MATLAB command line by simply typing controls or from the Automatic Control Systems launch applet (ACSYS) by clicking on the appropriate button. The controls tool is the main component of ACSYS, and it combines most
tools you have used throughout this book. This comprehensive tool essentially incorporates
the functionality of tftime and freqtool to create a controller design tool. It is a powerful tool
used to solve most controller design problems (except for state-space examples) discussed in
this book. This software allows the user to be able to conduct the following tasks:
Enter the transfer function values in polynomial form (user must use the tftool to
convert the transfer function from pole, zero, gain form into the polynomial form).
Obtain the step, impulse, parabolic, ramp, or other types of input time responses.
Obtain the closed-loop frequency plots.
Obtain the phase and gain margin Bode plots and the polar plot of the loop transfer functions (in a single feedback loop configuration).
Understand the effect of adding zeros and poles to the closed-loop or open-loop
transfer functions.
Design and compare various controllers including PID, lead, and lag compensators.
The reader can find a detailed discussion of this program in Chapter 10.
K-2-9
REFERENCES
1. M. F. Golnaraghi, D. Boulahbal, and R. L. Leask, Solving Engineering Mechanics Problems with Matlab,
[book and software package] ISBN 0-13-021537-6, Prentice Hall, Englewood Cliffs, NJ, 1999.
http://www.mathworks.com/products