Mathworks Matlab7 - Toolbox - System Identification Toolbox User's Guide

Download Mathworks Matlab7 - Toolbox - System Identification Toolbox User's Guide

Post on 28-Mar-2015

166 views

Category:

Documents

4 download

Embed Size (px)

DESCRIPTION

Mathworks Matlab7 - Toolbox - System Identification Toolbox User's Guide

TRANSCRIPT

<p>System Identification Toolbox 7 Users Guide</p> <p>Lennart Ljung</p> <p>How to Contact MathWorks</p> <p>Web Newsgroup www.mathworks.com/contact_TS.html Technical Supportwww.mathworks.com comp.soft-sys.matlab suggest@mathworks.com bugs@mathworks.com doc@mathworks.com service@mathworks.com info@mathworks.com</p> <p>Product enhancement suggestions Bug reports Documentation error reports Order status, license renewals, passcodes Sales, pricing, and general information</p> <p>508-647-7000 (Phone) 508-647-7001 (Fax) The MathWorks, Inc. 3 Apple Hill Drive Natick, MA 01760-2098For contact information about worldwide offices, see the MathWorks Web site. System Identification Toolbox Users Guide COPYRIGHT 19882010 by The MathWorks, Inc.The software described in this document is furnished under a license agreement. The software may be used or copied only under the terms of the license agreement. No part of this manual may be photocopied or reproduced in any form without prior written consent from The MathWorks, Inc. FEDERAL ACQUISITION: This provision applies to all acquisitions of the Program and Documentation by, for, or through the federal government of the United States. By accepting delivery of the Program or Documentation, the government hereby agrees that this software or documentation qualifies as commercial computer software or commercial computer software documentation as such terms are used or defined in FAR 12.212, DFARS Part 227.72, and DFARS 252.227-7014. Accordingly, the terms and conditions of this Agreement and only those rights specified in this Agreement, shall pertain to and govern the use, modification, reproduction, release, performance, display, and disclosure of the Program and Documentation by the federal government (or other entity acquiring for or through the federal government) and shall supersede any conflicting contractual terms or conditions. If this License fails to meet the governments needs or is inconsistent in any respect with federal procurement law, the government agrees to return the Program and Documentation, unused, to The MathWorks, Inc.</p> <p>Trademarks</p> <p>MATLAB and Simulink are registered trademarks of The MathWorks, Inc. See www.mathworks.com/trademarks for a list of additional trademarks. Other product or brand names may be trademarks or registered trademarks of their respective holders.Patents</p> <p>MathWorks products are protected by one or more U.S. patents. Please see www.mathworks.com/patents for more information.</p> <p>Revision History</p> <p>April 1988 July 1991 May 1995 November 2000 April 2001 July 2002 June 2004 March 2005 September 2005 March 2006 September 2006 March 2007 September 2007 March 2008 October 2008 March 2009 September 2009 March 2010 September 2010</p> <p>First printing Second printing Third printing Fourth printing Fifth printing Online only Sixth printing Online only Seventh printing Online only Online only Online only Online only Online only Online only Online only Online only Online only Online only</p> <p>Revised for Version 5.0 (Release 12) Revised for Version 5.0.2 (Release 13) Revised for Version 6.0.1 (Release 14) Revised for Version 6.1.1 (Release 14SP2) Revised for Version 6.1.2 (Release 14SP3) Revised for Version 6.1.3 (Release 2006a) Revised for Version 6.2 (Release 2006b) Revised for Version 7.0 (Release 2007a) Revised for Version 7.1 (Release 2007b) Revised for Version 7.2 (Release 2008a) Revised for Version 7.2.1 (Release 2008b) Revised for Version 7.3 (Release 2009a) Revised for Version 7.3.1 (Release 2009b) Revised for Version 7.4 (Release 2010a) Revised for Version 7.4.1 (Release 2010b)</p> <p>About the Developers</p> <p>About the DevelopersSystem Identification Toolbox software is developed in association with the following leading researchers in the system identification field: Lennart Ljung. Professor Lennart Ljung is with the Department of Electrical Engineering at Linkping University in Sweden. He is a recognized leader in system identification and has published numerous papers and books in this area. Qinghua Zhang. Dr. Qinghua Zhang is a researcher at Institut National de Recherche en Informatique et en Automatique (INRIA) and at Institut de Recherche en Informatique et Systmes Alatoires (IRISA), both in Rennes, France. He conducts research in the areas of nonlinear system identification, fault diagnosis, and signal processing with applications in the fields of energy, automotive, and biomedical systems. Peter Lindskog. Dr. Peter Lindskog is employed by NIRA Dynamics AB, Sweden. He conducts research in the areas of system identification, signal processing, and automatic control with a focus on vehicle industry applications. Anatoli Juditsky. Professor Anatoli Juditsky is with the Laboratoire Jean Kuntzmann at the Universit Joseph Fourier, Grenoble, France. He conducts research in the areas of nonparametric statistics, system identification, and stochastic optimization.</p> <p>About the Developers</p> <p>ContentsChoosing Your System Identification Approach</p> <p>1Linear Model Structures . . . . . . . . . . . . . . . . . . . . . . . . . . . Nonlinear Model Structures . . . . . . . . . . . . . . . . . . . . . . . . Recommended Model Estimation Sequence . . . . . . . . . . Supported Models for Time- and Frequency-Domain Data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Supported Models for Time-Domain Data . . . . . . . . . . . . . . Supported Models for Frequency-Domain Data . . . . . . . . . Supported Continuous-Time and Discrete-Time Models . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Commands for Model Estimation . . . . . . . . . . . . . . . . . . . . Creating Model Structures at the Command Line . . . . . About System Identification Toolbox Model Objects . . . . . . When to Construct a Model Structure Independently of Estimation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Commands for Constructing Model Structures . . . . . . . . . . Model Properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . See Also . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Modeling Multiple-Output Systems . . . . . . . . . . . . . . . . . . About Modeling Multiple-Output Systems . . . . . . . . . . . . . Modeling Multiple Outputs Directly . . . . . . . . . . . . . . . . . . Modeling Multiple Outputs as a Combination of Single-Output Models . . . . . . . . . . . . . . . . . . . . . . . . . . . . Improving Multiple-Output Estimation Results by Weighing Outputs During Estimation . . . . . . . . . . . . . . 1-2 1-4 1-5</p> <p>1-7 1-7 1-8</p> <p>1-10 1-12 1-14 1-14 1-15 1-16 1-17 1-23 1-24 1-24 1-25 1-25 1-26</p> <p>vii</p> <p>Data Import and Processing</p> <p>2Types of Data You Can Model . . . . . . . . . . . . . . . . . . . . . . . Ways to Process Data for System Identification . . . . . . Requirements on Data Sampling . . . . . . . . . . . . . . . . . . . . Importing Data into the MATLAB Workspace . . . . . . . . Importing Time-Domain Data into MATLAB . . . . . . . . . . . Importing Time-Series Data into MATLAB . . . . . . . . . . . . Importing Frequency-Domain Data into MATLAB . . . . . . Importing Frequency-Response Data into MATLAB . . . . . Importing Data into the GUI . . . . . . . . . . . . . . . . . . . . . . . . Types of Data You Can Import into the GUI . . . . . . . . . . . . Importing Time-Domain Data into the GUI . . . . . . . . . . . . Importing Frequency-Domain Data into the GUI . . . . . . . . Importing Frequency-Response Data into the GUI . . . . . . Importing Data Objects into the GUI . . . . . . . . . . . . . . . . . Specifying the Data Sampling Interval . . . . . . . . . . . . . . . . Specifying Estimation and Validation Data . . . . . . . . . . . . Preprocessing Data Using Quick Start . . . . . . . . . . . . . . . . Creating Data Sets from a Subset of Signal Channels . . . . Creating Multiexperiment Data Sets in the GUI . . . . . . . . Viewing Data Properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . Renaming Data and Changing Display Color . . . . . . . . . . . Distinguishing Data Types in the GUI . . . . . . . . . . . . . . . . Organizing Data Icons . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Deleting Data Sets in the GUI . . . . . . . . . . . . . . . . . . . . . . . Exporting Data from the GUI to the MATLAB Workspace . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Representing Time- and Frequency-Domain Data Using iddata Objects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . iddata Constructor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . iddata Properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Creating Multiexperiment Data at the Command Line . . . Subreferencing iddata Objects . . . . . . . . . . . . . . . . . . . . . . . Modifying Time and Frequency Vectors . . . . . . . . . . . . . . . 2-2 2-4 2-6 2-7 2-7 2-8 2-9 2-11 2-14 2-14 2-16 2-19 2-22 2-26 2-30 2-31 2-32 2-33 2-35 2-42 2-43 2-45 2-45 2-46 2-47</p> <p>2-49 2-49 2-52 2-55 2-57 2-61</p> <p>viii</p> <p>Contents</p> <p>Naming, Adding, and Removing Data Channels . . . . . . . . . Concatenating iddata Objects . . . . . . . . . . . . . . . . . . . . . . . Representing Frequency-Response Data Using idfrd Objects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . idfrd Constructor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . idfrd Properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Subreferencing idfrd Objects . . . . . . . . . . . . . . . . . . . . . . . . Concatenating idfrd Objects . . . . . . . . . . . . . . . . . . . . . . . . . See Also . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Analyzing Data Quality . . . . . . . . . . . . . . . . . . . . . . . . . . . . Is Your Data Ready for Modeling? . . . . . . . . . . . . . . . . . . . . Plotting Data in the GUI Versus at the Command Line . . How to Plot Data in the GUI . . . . . . . . . . . . . . . . . . . . . . . . How to Plot Data at the Command Line . . . . . . . . . . . . . . . How to Analyze Data Using the advice Command . . . . . . . Selecting Subsets of Data . . . . . . . . . . . . . . . . . . . . . . . . . . . Why Select Subsets of Data? . . . . . . . . . . . . . . . . . . . . . . . . Selecting Data Using the GUI . . . . . . . . . . . . . . . . . . . . . . . Selecting Data at the Command Line . . . . . . . . . . . . . . . . . Handling Missing Data and Outliers . . . . . . . . . . . . . . . . . Handling Missing Data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Handling Outliers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Example Extracting and Modeling Specific Data Segments . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . See Also . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .</p> <p>2-64 2-66</p> <p>2-69 2-69 2-70 2-72 2-73 2-76 2-78 2-78 2-79 2-79 2-85 2-87 2-89 2-89 2-90 2-92 2-93 2-93 2-94 2-95 2-96</p> <p>Handling Offsets and Trends in Data . . . . . . . . . . . . . . . . 2-97 When to Detrend Data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-97 Alternatives for Detrending Data in GUI or at the Command-Line . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-98 How to Detrend Data Using the GUI . . . . . . . . . . . . . . . . . . 2-99 How to Detrend Data at the Command Line . . . . . . . . . . . . 2-99 Next Steps After Detrending . . . . . . . . . . . . . . . . . . . . . . . . 2-101 Resampling Data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-102 What Is Resampling? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-102 Resampling Data Using the GUI . . . . . . . . . . . . . . . . . . . . . 2-103</p> <p>ix</p> <p>Resampling Data at the Command Line . . . . . . . . . . . . . . . 2-103 Resampling Data Without Aliasing Effects . . . . . . . . . . . . . 2-105 See Also . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-108 Filtering Data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Supported Filters . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Choosing to Prefilter Your Data . . . . . . . . . . . . . . . . . . . . . . How to Filter Data Using the GUI . . . . . . . . . . . . . . . . . . . . How to Filter Data at the Command Line . . . . . . . . . . . . . . See Also . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Generating Data Using Simulation . . . . . . . . . . . . . . . . . . Commands for Generating and Simulating Data . . . . . . . . Example Creating Data with Periodic Inputs . . . . . . . . . Example Generating Data Using Simulation . . . . . . . . . . Simulating Data Using Other MathWorks Products . . . . . 2-109 2-109 2-109 2-110 2-113 2-116 2-117 2-117 2-118 2-119 2-120</p> <p>Transforming Between Time- and Frequency-Domain Data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-121 Transforming Data Domain in the GUI . . . . . . . . . . . . . . . . 2-121 Transforming Data Domain at the Command Line . . . . . . 2-128 Manipulating Complex-Valued Data . . . . . . . . . . . . . . . . . 2-133 Supported Operations for Complex Data . . . . . . . . . . . . . . . 2-133 Processing Complex iddata Signals at the Command Line . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-133</p> <p>Linear Model Identification</p> <p>3Identifying Frequency-Response Models . . . . . . . . . . . . . What Is a Frequency-Response Model? . . . . . . . . . . . . . . . . Data Supported by Frequency-Response Models . . . . . . . . How to Estimate Frequency-Response Models in the GUI . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . How to Estimate Frequency-Response Models at the Command Line . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Options for Computing Spectral Models . . . . . . . . . . . . . . . Options for Frequency Resolution . . . . . . . . . . . . . . . . . . . . 3-2 3-2 3-3 3-3 3-5 3-5 3-6</p> <p>x</p> <p>Contents</p> <p>Spectrum Normalization . . . . . . . . . . . . . . . . . . . . . . . . . . . . Identifying Impulse-Response Models . . . . . . . . . . . . . . . What Is Time-Domain Correlation Analysis? . . . . . . . . . . . Data Supported by Correlation Analysis . . . . . . . . . . . . . . . How to Estimate Impulse and Step Response Models Using the GUI . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . How to Estimate Impulse and Step Response Models at the Command Line . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . How to Compute Response Values . . . . . . . . . . . . . . . . . . . . How to Identify Delay Using Transient-Response Plots . . . Algorithm for Correlation Analysis . . . . . . . . . . . . . . . . . ....</p>