Control System Toolbox For Use with MATLAB' Computation Visualization Programming The MATH WORKS Getting Started Inc. Version 5
Computation Visualization Programming For Use with MATLAB® Getting Started Version 5 Control System Toolbox
Contents Introduction What Is the Control System Toolbox? 1-2 Installation Using the Documentation Related Products Typographic Conventions Building models Introduction Linear models 2-3 Linear Model Representations SISO Example: the DC Motor 2-4 Constructing SISO Models Discrete Time Systems 2-10 Adding Delays to Linear Models 2-11 LTI Object 2-11 MIMO Models 2-13 MIMO Example: Jet Transport Aircraft 2-13 Constructing MIMO Transfer Functions 2-15 Accessing I/O Pairs in MIMO Systems 2-17 Arrays of Linear models 2-18 Model characteristics 2-21
i Contents 1 Introduction What Is the Control System Toolbox? ................... 1-2 Installation ........................................... 1-3 Using the Documentation .............................. 1-4 Related Products ..................................... 1-6 Typographic Conventions ............................. 1-8 2 Building Models Introduction ......................................... 2-2 Linear Models ........................................ 2-3 Linear Model Representations . . . . . . . . . . . . . . . . . . . . . . . . . . 2-3 SISO Example: the DC Motor . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-4 Constructing SISO Models . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-6 Discrete Time Systems . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-10 Adding Delays to Linear Models . . . . . . . . . . . . . . . . . . . . . . . . 2-11 LTI Objects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-11 MIMO Models ....................................... 2-13 MIMO Example: Jet Transport Aircraft ................. 2-13 Constructing MIMO Transfer Functions . . . . . . . . . . . . . . . . . 2-15 Accessing I/O Pairs in MIMO Systems . . . . . . . . . . . . . . . . . . 2-17 Arrays of Linear Models .............................. 2-18 Model Characteristics ................................ 2-21
Interconnecting Linear Models Feedback Interconnection ContinuousDiscrete conversions 2-24 Discrete dc motor model 2-24 Model Order reduction 2-26 Example: Gasifier Model Analyzing models 3 Introduction 3-2 LTI Viewer 3-4 Example: Time and Frequency Response f the Dc motor Right-Click Menus 3-6 Displaying Response Characteristics on a Plot 3-8 Changing Plot Type 3-11 Showing Multiple Response Types 3-13 Comparing Multiple Models 3-14 Functions for Time and Frequency Response 3-18 Time and Frequency Responses 3-18 Plotting MIMO Model Responses 3-20 Data markers 3-23 Plotting and Comparing Multiple Systems Creating Custom Plots .......3-27 Simulink lti viewer Using the Simulink LTI Viewer 3-30 Comparing Linear and Nonlinear Models Bode plots of linearized models Specifying Operating Conditions 1 Contents
ii Contents Interconnecting Linear Models ........................ 2-22 Feedback Interconnection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-23 Continuous/Discrete Conversions ..................... 2-24 Discrete DC Motor Model . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-24 Model Order Reduction ............................... 2-26 Example: Gasifier Model . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-26 3 Analyzing Models Introduction .......................................... 3-2 LTI Viewer ........................................... 3-4 Example: Time and Frequency Responses of the DC Motor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-4 Right-Click Menus . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-6 Displaying Response Characteristics on a Plot . . . . . . . . . . . . . 3-8 Changing Plot Type . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-11 Showing Multiple Response Types . . . . . . . . . . . . . . . . . . . . . . 3-13 Comparing Multiple Models . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-14 Functions for Time and Frequency Response ........... 3-18 Time and Frequency Responses . . . . . . . . . . . . . . . . . . . . . . . . 3-18 Plotting MIMO Model Responses . . . . . . . . . . . . . . . . . . . . . . . 3-20 Data Markers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-23 Plotting and Comparing Multiple Systems . . . . . . . . . . . . . . . 3-24 Creating Custom Plots . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-27 Simulink LTI Viewer ................................. 3-30 Using the Simulink LTI Viewer . . . . . . . . . . . . . . . . . . . . . . . . 3-30 Comparing Linear and Nonlinear Models . . . . . . . . . . . . . . . . 3-31 Bode Plots of Linearized Models . . . . . . . . . . . . . . . . . . . . . . . . 3-38 Specifying Operating Conditions . . . . . . . . . . . . . . . . . . . . . . . 3-43
Designing Compensators 4 Introduction 4-2 The SIsO Design Tool Opening the SISO Design Tool 3 Importing Models into the SISO Design Tool 4-5 Feedback Structure 4-6 Bode Diagram Design 4-8 Example: DC Motor 4-8 Adjusting the Compensator gain Right-Click Menus 4-9 djusting the Bandwidth 4-9 Adding an Integra 4-12 Adding a Lead Network 4-14 Moving Compensator Poles and Zeros Changing Units on a Plot 4-19 Adding a Notch Filter 4-20 Root Locus Design 4-24 Example: Electrohydraulic Servomechanism 4-25 Changing the Compensator Gain Adding Poles and Zeros to the Compensator 4-31 Editing Compensator Pole and Zero Locations Exporting the Compensator and Models 439 Storing and Retrieving Intermediate Designs 4-40 Functions For Compensator Design Root Locus design 4-42 ceme 4-42 Linear-Quadratic-Gaussian (LQG) Design......... 4-46 Example: LQG Design 4-51 Example: LQG Design for Set Point Tracking 4-55
iii 4 Designing Compensators Introduction .......................................... 4-2 The SISO Design Tool ................................. 4-3 Opening the SISO Design Tool . . . . . . . . . . . . . . . . . . . . . . . . . . 4-3 Importing Models into the SISO Design Tool . . . . . . . . . . . . . . . 4-5 Feedback Structure . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-6 Loop Responses . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-7 Bode Diagram Design ................................. 4-8 Example: DC Motor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-8 Adjusting the Compensator Gain . . . . . . . . . . . . . . . . . . . . . . . . 4-8 Right-Click Menus . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-9 Adjusting the Bandwidth . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-9 Adding an Integrator . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-12 Adding a Lead Network . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-14 Moving Compensator Poles and Zeros . . . . . . . . . . . . . . . . . . . 4-17 Changing Units on a Plot . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-19 Adding a Notch Filter . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-20 Root Locus Design ................................... 4-24 Example: Electrohydraulic Servomechanism . . . . . . . . . . . . . . 4-25 Changing the Compensator Gain . . . . . . . . . . . . . . . . . . . . . . . 4-30 Adding Poles and Zeros to the Compensator . . . . . . . . . . . . . . 4-31 Editing Compensator Pole and Zero Locations . . . . . . . . . . . . 4-36 Exporting the Compensator and Models . . . . . . . . . . . . . . . . . 4-39 Storing and Retrieving Intermediate Designs . . . . . . . . . . . . . 4-40 Functions For Compensator Design ................... 4-42 Root Locus Design . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-42 Pole Placement . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-42 Linear-Quadratic-Gaussian (LQG) Design . . . . . . . . . . . . . . . . 4-46 Example: LQG Design . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-51 Example: LQG Design for Set Point Tracking . . . . . . . . . . . . . 4-55
Learning More 5「 Demos Online Help Setting Plot Preferences and Properties 223 The mathWorks Online Contents
iv Contents 5 Learning More Demos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-2 Online Help . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-2 Setting Plot Preferences and Properties . . . . . . . . . . . . . . . . . . . 5-3 The MathWorks Online . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-4
Introduction What Is the Control System Toolbox? 1-2 Installation 1 Using the Documentation Related Products 1-6 Typographic Conventions 1-8
1 Introduction What Is the Control System Toolbox? . . . . . . . . . 1-2 Installation . . . . . . . . . . . . . . . . . . . . 1-3 Using the Documentation . . . . . . . . . . . . . . 1-4 Related Products . . . . . . . . . . . . . . . . . . 1-6 Typographic Conventions . . . . . . . . . . . . . . 1-8
1 Introduction What Is the Control system Toolbox? MaTLAB has a rich collection of functions immediately useful to the control engineer or system theorist. Complex arithmetic, eigenvalues, root-findssat matrix inversion, and FFTs are just a few examples of MATLAB's importa numerical tools. More generally, MATLABs linear algebra, matrix computation, and numerical analysis capabilities provide a reliable foundation for control system engineering as well as many other disciplines. The Control System Toolbox builds on the foundations of matlAb to provide functions designed for control engineering. The Control System Toolbox is a collection of algorithms, written mostly as M-files, that implements common control system design, analysis, and modeling techniques. Convenient graphical user interfaces(GUIs)simplify typical control engineering tasks Control systems can be modeled as transfer functions, in zero-pole-gain, or state-space form, allowing you to use both classical and modern control techniques. You can manipulate both continuous-time and discrete-time ystems Conversions between various model representations are provided Time responses, frequency responses, and root loci can be computed and graphed. Other functions allow pole placement, optimal control, and estimation. Finally, the Control System Toolbox is open and extensible. You can create custom M-files to suit your particular application 1-2
1 Introduction 1-2 What Is the Control System Toolbox? MATLAB® has a rich collection of functions immediately useful to the control engineer or system theorist. Complex arithmetic, eigenvalues, root-finding, matrix inversion, and FFTs are just a few examples of MATLAB’s important numerical tools. More generally, MATLAB’s linear algebra, matrix computation, and numerical analysis capabilities provide a reliable foundation for control system engineering as well as many other disciplines. The Control System Toolbox builds on the foundations of MATLAB to provide functions designed for control engineering. The Control System Toolbox is a collection of algorithms, written mostly as M-files, that implements common control system design, analysis, and modeling techniques. Convenient graphical user interfaces (GUI’s) simplify typical control engineering tasks. Control systems can be modeled as transfer functions, in zero-pole-gain, or state-space form, allowing you to use both classical and modern control techniques. You can manipulate both continuous-time and discrete-time systems. Conversions between various model representations are provided. Time responses, frequency responses, and root loci can be computed and graphed. Other functions allow pole placement, optimal control, and estimation. Finally, the Control System Toolbox is open and extensible. You can create custom M-files to suit your particular application
Installation Instructions for installing the Control System Toolbox can be found in the MATLAB Installation Guide for your platform. We recommend that you store the files from this toolbox in a directory named control off the main matl ab directory. To determine if the Control System Toolbox is already installed on your system, check for a subdirectory named control within the main toolbox directory or fole The Control System Toolbox provides demonstration files that show how to use he toolbox to perform control design tasks in various settings. To launch these at the MAtLAB prompt and select"Control System Toolbox" under the " Toolboxes"heading. In addition, "Design Case Studies"in the online documentation contains detailed examples of various design problems
Installation 1-3 Installation Instructions for installing the Control System Toolbox can be found in the MATLAB Installation Guide for your platform. We recommend that you store the files from this toolbox in a directory named control off the main matlab directory. To determine if the Control System Toolbox is already installed on your system, check for a subdirectory named control within the main toolbox directory or folder. The Control System Toolbox provides demonstration files that show how to use the toolbox to perform control design tasks in various settings. To launch these demos, type demo at the MATLAB prompt and select “Control System Toolbox” under the “Toolboxes” heading. In addition, “Design Case Studies” in the online documentation contains detailed examples of various design problems
1 Introduction Using the Documentation If you are a new user, this manual, Getting Started with the Control System Toolbox, is written for you. Specifically, you will learn: How to build and manipulate linear time-invariant models of dynamical How to analyze such models and plot their time and frequency responses How to design compensators using root locus and pole placement techniques In addition, this guide discusses model order reduction, linear quadratic Gaussian (LQG)techniques and presents examples that show how to use these techniques This guide is available online under"Control System Toolbox. The rest of the toolbox documentation is also available online; click"Control System Toolbox to open its product page which is a road map with links to the Control System Toolbox documentation online and to pdf versions of the same documentation If you are an experienced toolbox user, see the online documentation for detailed discussions of control system design topics, including the following ·“ Release notes"→ For details on the latest release "Creating and Manipulating Models"-In-depth information on how to create and manipulate linear models and LTI (linear time-invariant)arrays, which are data objects that you can use to store collections of linear models Customization"-Setting plot properties, including how to set preferences that persist from session to session Design Case Studies"-Worked examples, including Kalman filtering and MIMO design Reliable Computations"-Numerical stability and accuracy issues GUI Reference"-Complete descriptions of the LtI Viewer and SIso Design Tool, which are graphical user interfaces (GUIs) that you can use to and design SISo All toolbox users should use the online"Control System Toolbox Function Reference"for reference information on functions and tools. For functions reference descriptions include a synopsis of the function,s syntax, as well as a
1 Introduction 1-4 Using the Documentation If you are a new user, this manual, Getting Started with the Control System Toolbox, is written for you. Specifically, you will learn: • How to build and manipulate linear time-invariant models of dynamical systems • How to analyze such models and plot their time and frequency responses • How to design compensators using root locus and pole placement techniques In addition, this guide discusses model order reduction, linear quadratic Gaussian (LQG) techniques and presents examples that show how to use these techniques. This guide is available online under “Control System Toolbox.” The rest of the toolbox documentation is also available online; click “Control System Toolbox” to open its product page, which is a road map with links to the Control System Toolbox documentation online and to PDF versions of the same documentation. If you are an experienced toolbox user, see the online documentation for detailed discussions of control system design topics, including the following: • “Release Notes” — For details on the latest release • “Creating and Manipulating Models” — In-depth information on how to create and manipulate linear models and LTI (linear time-invariant) arrays, which are data objects that you can use to store collections of linear models in one variable • “Customization” — Setting plot properties, including how to set preferences that persist from session to session • “Design Case Studies” — Worked examples, including Kalman filtering and MIMO design • “Reliable Computations” — Numerical stability and accuracy issues • “GUI Reference” — Complete descriptions of the LTI Viewer and SISO Design Tool, which are graphical user interfaces (GUI’s) that you can use to analyze systems and design SISO compensators All toolbox users should use the online “Control System Toolbox Function Reference” for reference information on functions and tools. For functions, reference descriptions include a synopsis of the function’s syntax, as well as a
Using the Documentation complete explanation of options and operation. Many reference descriptions also include helpful examples, a description of the function,s algorithm, and references to additional reading material. For gUI-based tools. the descriptions include options for invoking the tool
Using the Documentation 1-5 complete explanation of options and operation. Many reference descriptions also include helpful examples, a description of the function’s algorithm, and references to additional reading material. For GUI-based tools, the descriptions include options for invoking the tool