资源描述
,*,单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,系统辨识工具箱,功能概述,MATLAB,的辨识工具箱提供了进行系统模型辨识的有力工具,其主要功能包括:,(,1,) 各种模型类的建立和转换函数,(,2,) 非参数模型的辨识,(,3,) 参数模型的辨识,(,4,) 递推参数估计,(,5,) 模型验证工具,(,6,) 集成多种功能的图形用户界面,1.,系统辨识的基本原理和常用辨识模型,2.,系统辨识工具箱函数,3.,系统辨识工具箱图形界面,1.1,系统辨识的基本原理,1.2,常用的模型类,1.1,系统辨识的基本原理,1.,系统辨识的定义和基本要素,辨识三要素:数据、模型类和准则,辨识就是按照一个准则在一组模型类中选择一个与数据拟合的最好的模型。,2.,辨识的等价准则,等价准则也称为误差推则,是系统辨识问题中的基本要素之一,用来衡量模型接近实际过漫的标准,通常被表示为辨识模型与实际对象模型的误差的泛函。这里所说的误差可以是输出误差、输入误差或广义误差。,3.,辨识的内容和步骤,系统辨识的内容主要包括以下四个方面:,(1),实验设计;,系统辨识实验设计需要完成的工作包括选择和确定输入信号、采样时间、辨识时间和辨识的模式。,(2),模型结构辨识;,模型结构辨识包括模积类和模型结构参数的确定两部分内容。模型类的确定上要根据经验对实际对象的特性 进行一定程度上的假设 。在确定模型类之后,就可根据对象的输入输出数据,按照一定的辨识方法确定模型结构参数。,(3),模型参数辨识;最小二乘法及各种改进算法,(4),模型检验。,不同时间区间数据、数据交叉、数据长度、输出残差序列的白色型,1.2,常用的模型类,作为系统辨识的三个基本要素之一,模型类的选择往往决定能否有效地建立对象的辨识模型。在,Matlab,系统辨识工具箱中提供了对多种模型类的支持,包括非参数模型类中的脉冲响应模型、参数模型类中的,AM,模型、,ARMAx,模型、,BJ,模型和状态空间模型等。,非参数模型类,在非参数模型类中主要包括脉冲响应模型和频域描述模型。,如下图,假设系统为线性系统,,u,输入,,y,输出,,v,噪声,输入输出关系为,u,v,y,线性对象,其中,q,为时间平移算子,序列,g(k,),为对象的脉冲响应模型,,v(t,),是不可测量的噪声干扰。频谱表示为,参数模型类,参数模型类中的,AM,模型、,ARMAx,模型、,BJ,模型和状态空间模型等。,模型建立和转换的函数介绍,模型建立函数,函数名,功能,iddata,标准包含输入输出数据的对象,idmodel,基本的模型对象,综合了许多模型的公共特点,idarx,从,ARX,多项式建立,ARX,模型,idgrey,根据,M,文件定义,idgrey,模型,idpoly,构造基于输入输出模型的,idpoly,模型,idss,构造状态空间模型,idfrd,构造,idfrd,模型,init,设置模型的参数,1.,iddata,功能:,iddata,是工具箱中处理信号的一个最基本的对象,在以下很多函数中都要用到。,语法:,data=,iddata(y,u,);,data=iddata(y,u,Ts,P1,V1,.,PN,VN);,说明:,y,是一列向量或,N*,ny,的矩阵,,y,的列对应输出频道,,u,是一列向量或,N*,ny,的矩阵,,u,的列对应输入频道,,data=,iddata(y,u,Ts,)生成一个包含输入输出的,iddata,对象,,Ts,是采样区间。对于时间序列,,data=,iddata(y,)或令,u= ,。,2.,idmodel,idmodel,综合了所有模型如,idarx,idgrey,idpoly,和,idss,的公共特点,所有参数估计都返回,idmodel,对象。,3.,idarx,功能:从,ARX,多项式建立,ARX,模型,语法:,m =,idarx(A,B,Ts,),m =,idarx(A,B,Ts,Property,Value,.),说明:多输入输出的,ARX,模型形式,例,1,模拟一个,1,输入,2,输出的二阶,ARX,模型并使用模拟数据估计参数,A=zeros(2,2,3);,B=zeros(2,1,3);,A(:,:,1)=eye(2);,A(:,:,2)=-1.5 0.1;-0.2 1.5;,A(:,:,3)=0.7 -0.3; 0.1 0.7;,B(:,:,2)=1;-1;,B(:,:,3)=0.5;1.2;,m0=idarx(A,B,1);,u=iddata(,idinput(300);,e=iddata(,randn(300,2);,y=sim(m0,u,e);,m=arx(y,u,2 2;2 2,2;2,1;1);,4.,i,dgrey,功能:,根据,M,文件定义,idgrey,模型,语法:,M=,IDGREY(MfileName,ParameterVector,CDmfile,FileArgument,),M =,IDGREY(MfileName,ParameterVector,CDmfile,.,FileArgument,Ts,Property,Value,.),说明,:,MfileName,为,M,文件名,该文件描述了状态空间矩阵如何依赖于被估计的参数。,文件格式为,A,B,C,D,K,X0 =,MfileName(ParameterVector,Ts,FileArgument,),ParameterVector,:列向量,长度等于自由参数的个数,CDmfile,:,M,文件如何处理连续、离散时间模型,例,2,编写,M,文件如下,function A,B,C,D,K,x0 =,mynoise(par,T,aux,),R2 = aux(1); % Known measurement noise variance,A = par(1) par(2);1 0;,B = 1;0;,C = par(3) par(4);,D = 0;,R1 = par(5) 0;0 0;,est,K0 = kalman(ss(A,eye(2),C,0,T),R1,R2);,% Uses Control System Toolbox product,% u=,x0 = 0;0;,Minit,= idgrey(mynoise,0.1,-2,1,3,0.2,d,1);,Model =,pem(data,Minit,),5.,idpoly,功能:构造基于输入输出模型的,idpoly,模型,语法:,m =,idpoly(A,B,),m =,idpoly(A,B,C,D,F,NoiseVariance,Ts,),m=idpoly(A,B,C,D,F,NoiseVariance,Ts,Property1,Value1,. ,PropertyN,ValueN,),m =,idpoly(mi,),说明:多输入单输出的模型具有如下形式,例,3,A = 1 -1.5 0.7;B = 0 1 0.5;C = 1 -1 0.2;m0 =,idpoly(A,B,C,);,6.,idss,功能:构造状态空间模型,语法:,m =,idss(A,B,C,D,),m = idss(A,B,C,D,K,x0,Ts,Property1,Value1,. ,PropertyN,ValueN,),mss = idss(m1),说明:状态空间模型为,例,4,估计系统参数,A = -0.2, 0; 0, -0.3; B = 2;4; C=1, 1; D = 0 m0 =,idss(A,B,C,D,); m0.As = NaN,0;0,NaN; m0.Bs = ,NaN;NaN,; m0.Cs = 1,1; m0.Ts = 0; m = pem(z,m0);,m1 = n4sid(data,3); m1 = d2c(m1); m1.ss =can; m = pem(data,m1);,m = pem(data,3,ss,can,ts,0),7.,idfrd,功能:构造,idfrd,模型,语法:,h =,idfrd(Response,Freq,Ts,),h =,idfrd(Response,Freq,Ts,CovarianceData,Covariance, .,SpectrumData,Spec,NoiseCovariance,Speccov,P1, . V1,PN,VN),h =,idfrd(mod,),h =,idfrd(mod,Freqs,),说明,:,8. init,功能:设置模型参数。,语法:,m = init(m0),m = init(m0,R,pars,sp),说明:,模型转换和模型结构函数,函数,功能,c2d,将连续时间模型转换为离散时间模型,d2c,将离散时间模型转换为连续时间模型,tfdata,将模型转换为传递函数,zpkdata,计算模型的零点、极点和稳定增益,ssdata,将模型转换为状态空间模型,idmodred,对模型降阶(需要控制系统工具箱),arxdata,从模型中提取,APX,模型参数,freqresp,计算模型的频率函数,ss,tf,zpk,frd,将系统辨识工具箱中模型对象转换为控制工程工具箱中的,LTI,模型,1.c2d,功能:将连续时间模型转换为离散时间模型,语法:,md,= c2d(mc,T),md,= c2d(mc,T,method),md,G, = c2d(mc,T,method),说明:,例,5,mc = idpoly(1,1,1,1,1 1 0,Ts,0);,md,= c2d(mc,0.5);,pzmap(md,),结果:,2.d2c,功能:将连续时间模型转换为离散时间模型,语法:,mc = d2c(md),mc = d2c(md,method),mc = d2c(md,CovarianceMatrix,cov,InputDelay,inpd),说明:,
展开阅读全文