当前位置:文档之家› MATLAB系统辨识工具箱在系统控制设计中的应用

MATLAB系统辨识工具箱在系统控制设计中的应用

MATLAB系统辨识工具箱在系统控制设计中的应用
MATLAB系统辨识工具箱在系统控制设计中的应用

第38卷第5期2010年10月

福州大学学报(自然科学版)

Journa l of F uzhou U n i versity(N a t ura l Sc i ence)

V o.l38No.5

O ct.2010

文章编号:1000-2243(2010)05-0703-05 MATLAB系统辨识工具箱在系统控制设计中的应用

郑剑翔

(福州大学现代教育技术中心,福建福州 350108)

摘要:以一个双输入单输出温度控制系统为例,详细叙述应用系统辨识工具箱进行建模、仿真和设计控制系统

的过程,包括控制对象的辨识数据采集、模型估算、控制器设计和系统仿真等.重点介绍了系统辨识工具箱图

形用户界面的使用方法.

关键词:系统辨识;建模仿真;M ATLA B;系统控制

中图分类号:TP271.2 文献标识码:A

The application of syste m identification toolbox

ofM ATLAB in syste m control design

ZHENG Jian-x i a ng

(M odern Education T echno logy Center of Fuzhou U n i versity,Fuzhou,Fu jian350108,Ch i na) Abstract:Th is article i n tr oduces t h e procedures o f using the syste m i d entificati o n toolbox ofMATLAB

i n con tro l syste m desi g n by an exa m ple o f the te mperature contro l p lantw hich has t w o inputs and one

output ports.It i n cludes preparing data for syste m i d entification,mode l esti m a te,con tro ll o r design and

si m ulation,usi n g the g raphical user i n terfaces(GU I)o f syste m identificati o n toolbox is the high light

of this artic le.

Keywords:syste m identification;si m u li n k m odels;MATLAB;syste m con tro l

在系统控制设计中,控制器参数的确定方法主要有工程方法和理论方法[1].工程方法不用建模,但存在调试困难、不容易得到最佳效果的缺点,真机调试还需要消耗资源,甚至可能损坏设备.理论方法可克服这些缺点,但在系统辨识工具出现以前建立数学模型是一件难事,限制了理论法的应用.所以,以前在实际中大多使用工程整定法.

系统辨识理论是通过考察输入输出数据来建立动态系统模型的科学技术,是联系控制理论和数学模型的抽象世界与实际应用的现实世界的接口[2].这一新兴的基础理论作为设计工具在控制领域获得应用只是近几年的事[3].MATLAB的系统辨识工具箱的出现,为这一理论的应用提供了有力工具.应用系统辨识工具不需要对系统作任何分析,只需要记录在人为输入作用下的输出响应,或正常运行时的输入输出记录的数据,就能建立动态系统的数学模型( 黑箱法).对于已知描述系统的数学方程形式(常微分或差分方程)的情况,也可以用此工具计算数学方程的各项系数,由此,确定系统模型( 灰箱法)[4].这使得建模工作变得简单易行[5].因此,理论法将成为今后控制工程设计的主导方法.

关于系统辨识理论的系统论述参见文献[6],本文主要从工程角度,结合用于消毒机的蒸气发生器(双输入单输出)温度稳定控制系统,详细叙述如何使用系统辨识工具箱实现其建模和控制器设计.区别于文献[5],本文主要介绍系统辨识工具箱图型界面(GU I)的使用.

1 使用系统辨识工具箱的步骤

1)辨识数据准备.根据设计要求选择时域或频域采集真实系统的运行数据.把数据导入MATLAB工作空间(W orkspace),用绘图指令(p l o t)将数据画成曲线,以观察了解系统的时域或频域特性,进而把数

收稿日期:2010-03-22

通讯作者:郑剑翔(1955-),助理研究员,E-m a i:l zj x fd@126.co m

福州大学学报(自然科学版)第38卷据导入系统辨识图形界面窗,对数据作预处理,如去除数据中的直流偏置和线性缓变信号(对于低频系统这些分量不能清除);组合或分割数据,分配工作数据和检验数据.

2)用辨识软件估算(Esti m ate)生成线性或非线性系统模型.系统辨识工具箱可以生成以下多种类型的模型:频率响应模型、冲击响应模型、低阶传输函数(过程模型)、输入输出多项式模型、状态空间方程模型、非线性(黑箱)模型、常微分或差分方程(灰箱)模型.用户可选择与真系统最符合的模型使用.

3)模型的仿真、检验及优化.用输入数据对获得的模型仿真运行,检测输出是否与真系统相符.如果结果不满意,可以用不同的模型结构,不同的阶数或不同的辨识算法再尝试.在某些情况下,加入噪声模型也可改善结果.做进一步估算模型时,可能需要对数据做必要的处理,例如,滤除数据中频率过高的噪声.生成的模型如果阶数太高,可用 ba lred 函数进行必要降阶.降阶后是否可行,可用 step 函数考察降阶前后的模型阶跃响应,以不发生模型退变为限.

2 辨识数据的准备

正确记录真实系统输入信号驱动下的输出响应数据是系统辨识的关键步骤.

关于驱动信号.可先做一个简易的控制器,让系统能初步运行,然后在各输入端加些扰动信号(用方波或随机噪声),使系统的动态特性得以充分显现.这些扰动信号的频率与幅值大小要适当.同时,注意正扰动和负扰动机会要均等,以免造成系统均值偏移.

关于数据采集.要专门编一段程序来记录和输出被控对象的输入和响应信号.通过通讯接口把数据传给上位计算机.采样频率的选取也直接影响到辨识精度.选择应遵循以下原则:!满足采样定理,f s ≧2f c (f s 为采样频率,f c 为信号频率);?与控制工程最终采用的采样频率保持一致;#T s ≦T 95/(5~15),其中:T s 为采样周期,T 95为控制对象阶跃响应上升到95%的时间;对于有延时T 0的控制对象,应取T s ≦0.9T 0.选取能满足上述所有条件最小频率值.

对于本例,蒸气发生器的工作过程是由加热电阻把蒸发器杯体加热到近150?,然后由水泵喷水到杯内,以获得定量蒸汽.控制的目标是杯体温度恒定.因此,该控制对象的输出量为杯体温度y ,输入量为喷水量u 1和加热量u 2.按照上述方法启动运行系统,获得了如图1所示的数据.图中曲线1为喷水量(0~100),2为加热量(最大值为255)、3为温度采样值(乘以0.2344即为摄氏温度值).分别在不同输入端加了方波扰动.横坐标为采样序号,每次间隔5s .为了提高辨识精度,可以反复做多次实验.本例有5组数据,命名为data1~data5

.

(a)输入端1加方波扰动(b)输入端2加方波扰动

图1 采样数据示图

F i g .1 Sa m ple da ta

将数据以文本形式保存到MATLAB 的当前工作目录内.数据格式为行列数组,每个输入(出)端为一列,每次采样为一行,数据间可以是逗号或空格相隔.用 l o ad datafile .txt 命令就可将它载入MATLAB 工作空间.如果要把这样的数组直接导入辨识工具用,还必须把输入与输出分离成两个变量.也可把它们转换成辨识工具的组合数据(data ob ject)形式后导入.转换命令为 x=iddata(y,u,T s ) ,其中y,u 分别为系统输出输入数组.如果有n 个输出(或输入)m 次采样则y (或u )为m 行n 列数组.T s 采样间隔时间.本例数据第3列为输出,1、2列为输入,在指令窗执行指令x1=i d data(data1(:,3),data1(:,1:2),5)就完成data1的转换.同理也把da ta2~data5转换成x2~x5.

%704%

第5期郑剑翔:MATLAB 系统辨识工具箱在系统控制设计中的应用3 系统辨识的实现

在命令行输入 i d ent 就启动了如图2的图形用户界面(GU

I).

图2 系统辨识图形用户界面

F ig .2 Syste m i den tificati on too l GU I

在数据导入(i m port data)的下拉列表中有: 时域数据 、 频域数据 、 组合数据 和 范例数据 的选项.选择 组合数据 .在弹出数据导入对话框中,数据格式选择 I DDATA ,组合数据名称处输入 x1 .点击 导入(i m port) 按钮,即完成数据导入.导入的数据在界面左边的方框中可见其图标和变量名.同理把x2~x5也导入其中.

在窗口的中间有两个操作下拉列表,上为对数据的预处理(Preprocess),下为模型估算(E sti m ate).预处理操作有如下菜单:通道选择、实验数据组选择、合并实验数据、数据区域选择、平均值去除、缓变值去除、滤波、重采样、频域/时域数据转换、快捷操作.这些操作根据设计需要,选择使用.

将x1~x4合并作为工作数据,x5作为检验数据.为此点击预处理操作中的 合并实验数据 (M er ge experi m ents),弹出合并实验数据小窗,用鼠标把x1~x4从原界面拖拽到小窗的白框内,合并后的数据名为 x1m ,点击插入(insert)按钮完成合并,处理后的数据同样出现在左边的方框中.把x1m 拖拽入工作数据区(W o r k i n g Data),把x5拖入检验数据区(Va lida ti o n Data).

模型估算操作列表中有如下选择:参数型(Linear para m etric)、过程型(Process)、非线性(Non li n ear)型、频谱型(Spectra l)、相关型(Corre lation)、快捷操作(Qu ick start).

选择 线性参数模型 ,可在弹出模型结构设定界面里指定模型结构、阶数、运算方法等.可选择的模型结构有:ARX 、ARMAX 、OE 、B J 、状态空间以及由已知的初始模型来决定生成模型的结构.

过程模型 典型的传输函数为G (s)=K exp(-T d s)/(1+sT p 1).在弹出的参数设定界面里可设定内容有:实数或复数极点(0~3个),零点(0~1个),是否有延时,是否有积分因子,由此指定生成的模型结构.还可指定已知的参数及初始条件等.

选择 快捷操作 ,便自动产生了4个结果:冲击响应模型(i m p),频域描述模型(spad),4阶多项式模型(arxqs),状态空间模型(n4s3).

在生成模型的同时,程序已自动完成了模型检验工作.给出了这些模型的模型的仿真输出值,并计算出模型仿真值与检验数据的吻合度,可以选择吻合度最高的模型使用.给出的还有各模型频率响应曲线,阶跃响应曲线等.

从图1可知被控对象是有延时的暂态过程系统,用 过程模型 作估算操作,产生了 P1D 模型,(P 代表过程模型,1表示一阶函数,D 表示有延时)其吻合度为96.42.符合本例要求.双击其图标,可看到模型表达式:%705%

福州大学学报(自然科学版)

第38卷

y =G 1(s)*u 1+G 2(s )*u 2其中传输函数表达式如

G x (s)=K x *

exp (-T d x *s)/(1+T p x *s) (x =1,2)

各参数分别为:K 1=-9.4898, T p1=166.92, T d1=7.5305

K 2=7.5448, T p2=166.1, T d2=11.847

用鼠标将P1D 模型拖到GU I 中的 to W orkspace 的方框内,此模型就送到MATLAB 工作空间,供仿真使用.拖到 to LTI V ie w er 框内,可查看模型的阶跃响应等特性.

4 控制器设计与系统仿真

生成的模型可用S i m ulink 软件实现仿真.打开Si m u li n k 库浏览器,在系统辨识子库中有 Idmode l 模块.把它拖到仿真窗口,双击可弹出参数设定框.在模型变量(Idm odelV ariab le)栏中输入变量名 P1D 并确定即可. Idm ode l 模块图标只画一个输入端口,对于多输入的模型需用总线生成模块(BusC reato r)连接多个输入口

.

图3 控制系统仿真图F i g .3 Contro l syste m si m uli nk d i agra m

图3为本例控制系统仿真图.图的上半部分

只是为产生喷水输入端模拟信号而设的.叠加方

波扰动,用以考察温度控制稳定效果.

图3的下半部分为控制系统.P1D 即为被控对

象模型,内含两个传输函数:G 1(s)是喷水输入端

的传输函数,G 2(s)是加热输入端的传输函数.由

于喷水量受制于消毒要求,不能用G 1(s)来控制杯

体温度.用G 2(s )与反馈控制器(Fc n)构成稳定温

度反馈闭环回路.为抵消喷水对杯体温度的影响,

通过补偿控制器(Fcn1)给加热端一个温度补偿量.

反馈控制器的设计工作可以使用M ath W o r ks

的多种产品完成,限于篇幅本文暂不涉及.用文

献[7]介绍的方法设计控制器.这里被控对象函数为G 2(s),其阶跃响应上升时间为166s ,延时时间11.8s .取期望的闭环响应上升时间为100s(根据仿真效果调整),延时11.8s .采样周期取10s .这是系统的工作采样频率.根据经验,除有第2节所述基本要求外,对于有T 0延时的控制对象,系统工作采样周期T s 应满足:

(k -0.33)%T 0/k 2≦T s ≦T 0/k

(k =1,2,3)

用以下命令就可求出反馈控制器的传输函数.

gps=tf([1],[166.1,1],&i n pu t d elay ?,11.8); %输入被控对象函数G 2(s).

ts=10;

%取采样时间为10s .gpz=c2d(gps ,ts ,&zoh ?);

%将G 2(s)离散化.

sys=tf([1],[100,1,1],&i n putde lay ?,11.8);%输入期望系统闭环响应函数sys .dsys=c2d(sys ,ts ,&zoh ?);%将 sys 离散化.

gcz=1/gpz *dsys/(1-dsys); %计算控制器函数(注:此句需用7.1版的MATLAB 运算,7.8以上版对含有延时因子z^(-n)的表达式作为除数不能通过,要算需先把z^(-n)写成1/z^(n)).

[num ,den]=tfda ta(gcz ,&v ?);

%分离出 gcz 的分子和分母系数数组以便仿真使用

在命令窗输入 gcz 便可看到其表达式:

gcz =z^(-1)0.07873z^7-0.1289z^6+0.03673z^5+0.014z^4

0.04817z^6-0.07691z^5+0.01708z^4+0.01023z^3+0.001279z^2+0.0001526z

(1)补偿控制器设计:设gcp(s )为补偿器的传输函数,要达到理想的补偿,必须满足gcp(s )%G 2(s)=%706%

第5期郑剑翔:MATLAB 系统辨识工具箱在系统控制设计中的应用-G 1(s ),即:gcp(s)=-G 1(s)/G 2(s).由于G 2(s)的延时时间比G 1(s)大,如果延时因子参与运算无法得到稳定的补偿控制器.所以,将去掉延时因子并离散化的表达式相除,得到相对理想的补偿控制器:

gcp(z)=0.5519z -0.5196

0.4408z -0.4152(2)

观察(2)式,分子分母阶数相同各系数比例相似.其阶跃响应曲线初值(1.252)与终值(1.2577)相差很小.因此,该补偿器可简化成增益为1.255的放大器.仿真结果证明与上式效果完全一样.

图4为仿真运行结果.图中1为喷水输入信号;2是有喷水有补偿时加热输入端的信号;3是不喷水无补偿控制器的闭环控制输出曲线;4为有喷水有补偿的输出曲线;5为有喷水无补偿控制器的输出曲线.

从图4中的曲线4可见系统的仿真输出达到了设计要求,上升沿在100s 之内,在喷水扰动下波动也很小.比较曲线4和曲线5可见补偿控制器对控制喷水引起的温度波动起到了良好的稳定作用.根据上述仿真结果,参照文献[7]介绍的方法设计控制器,实际运行后获得了图5所示的温度输出曲线.图5中1为喷水输入,2为加热输入,3为温度输出线.比较图4和图5,实际输出与仿真输出基本吻合,从而验证了系统辨识建模的准确性

.

图4 仿真结果输出(入)曲线

F i g .4 S i m u li nk resu lt

curves 图5 实际系统输出曲线 F i g .5 R ea l syste m output

参考文献:

[1]白金,韩俊伟.基于M ATLAB /S i m u link 环境下的P I D 参数整定[J].哈尔滨商业大学学报:自然科学版,2007,23(6):

673-676.

[2]L j ung L .Perspecti ve on syste m i den tificati on[C ]//P roceed i ng s o f the 17th I FAC W o rl d Congress 2008,Identifier :10.3182/

20080706-5-KR -1001.01215.

[3]G eve rs M.A persona l v ie w of the develop m ent o f system identifi cation[J].IEEE Con tro l Syste m sM agazi ne ,2006,26(6):93

-105.

[4]向晓燕,蒋效会.基于系统辨识的系统模型[J].电脑知识与技术,2008,2(16):1286-1288.

[5]齐晓慧,田庆民,董海瑞.基于M a tlab 系统辨识工具箱的系统建模[J].兵工自动化,2006,25(10):88-90.

[6]徐昕,李涛,伯晓晨,等.MATLAB 工具箱应用指南 控制工程篇[J].北京:电子工业出版社,2000.

[7]郑剑翔.一阶惯性延时系统的免分析建模法[J].福州大学学报:自然科学版,2007,35(1):64-69.

(责任编辑:杨青)%707%

MATLAB模型预测控制工具箱函数

MATLAB模型预测控制工具箱函数 8.2 系统模型建立与转换函数 前面读者论坛了利用系统输入/输出数据进行系统模型辨识的有关函数及使用方法,为时行模型预测控制器的设计,需要对系统模型进行进一步的处理和转换。MATLAB的模型预测控制工具箱中提供了一系列函数完成多种模型转换和复杂系统模型的建立功能。 在模型预测控制工具箱中使用了两种专用的系统模型格式,即MPC状态空间模型和MPC传递函数模型。这两种模型格式分别是状态空间模型和传递函数模型在模型预测控制工具箱中的特殊表达形式。这种模型格式化可以同时支持连续和离散系统模型的表达,在MPC传递函数模型中还增加了对纯时延的支持。表8-2列出了模型预测控制工具箱的模型建立与转换函数。 表8-2 模型建立与转换函数 8.2.1 模型转换 在MATLAB模型预测工具箱中支持多种系统模型格式。这些模型格式包括: ①通用状态空间模型; ②通用传递函数模型; ③MPC阶跃响应模型; ④MPC状态空间模型; ⑤MPC传递函数模型。

在上述5种模型格式中,前两种模型格式是MATLAB通用的模型格式,在其他控制类工具箱中,如控制系统工具箱、鲁棒控制工具等都予以支持;而后三种模型格式化则是模型预测控制工具箱特有的。其中,MPC状态空间模型和MPC传递函数模型是通用的状态空间模型和传递函数模型在模型预测控制工具箱中采用的增广格式。模型预测控制工具箱提供了若干函数,用于完成上述模型格式间的转换功能。下面对这些函数的用法加以介绍。 1.通用状态空间模型与MPC状态空间模型之间的转换 MPC状态空间模型在通用状态空间模型的基础上增加了对系统输入/输出扰动和采样周期的描述信息,函数ss2mod()和mod2ss()用于实现这两种模型格式之间的转换。 1)通用状态空间模型转换为MPC状态空间模型函数ss2mod() 该函数的调用格式为 pmod= ss2mod(A,B,C,D) pmod= ss2mod(A,B,C,D,minfo) pmod= ss2mod(A,B,C,D,minfo,x0,u0,y0,f0) 式中,A, B, C, D为通用状态空间矩阵; minfo为构成MPC状态空间模型的其他描述信息,为7个元素的向量,各元素分别定义为: ◆minfo(1)=dt,系统采样周期,默认值为1; ◆minfo(2)=n,系统阶次,默认值为系统矩阵A的阶次; ◆minfo(3)=nu,受控输入的个数,默认值为系统输入的维数; ◆minfo(4)=nd,测量扰的数目,默认值为0; ◆minfo(5)=nw,未测量扰动的数目,默认值为0; ◆minfo(6)=nym,测量输出的数目,默认值系统输出的维数; ◆minfo(7)=nyu,未测量输出的数目,默认值为0; 注:如果在输入参数中没有指定m i n f o,则取默认值。 x0, u0, y0, f0为线性化条件,默认值均为0; pmod为系统的MPC状态空间模型格式。 例8-5将如下以传递函数表示的系统模型转换为MPC状态空间模型。 解:MATLAB命令如下:

用matlab实现最小二乘递推算法辨识系统参数

用matlab实现最小二乘递推算法辨识系统参 数 自动化系统仿真实验室指导教师: 学生姓名班级计082-2 班学号撰写时间: 全文结束》》-3-1 成绩评定: 一.设计目的 1、学会用Matlab实现最小二乘法辨识系统参数。 2、进一步熟悉Matlab的界面及基本操作; 3、了解并掌握Matlab中一些函数的作用与使用;二.设计要求最小二乘递推算法辨识系统参数,利用matlab编程实现,设初始参数为零。z(k)-1、5*z(k-1)+0、7*z(k-2)=1*u(k-1)+0、5*u(k-2)+v(k); 选择如下形式的辨识模型:z(k)+a1*z(k- 1)+a2*z(k-2)=b1*u(k-1)+b2*u(k-2)+v(k);三.实验程序 m=3;N=100;uk=rand(1,N);for i=1:Nuk(i)=uk(i)*(-1)^(i-1);endyk=zeros(1,N); for k=3:N yk(k)=1、5*yk(k-1)-0、 7*yk(k-2)+uk(k-1)+0、5*uk(k-2); end%j=100;kn=0;%y=yk(m:j);%psi=[yk(m-1:j-1);yk(m-2:j-2);uk(m-1:j-1);uk(m-2:j- 2)];%pn=inv(psi*psi);%theta=(inv(psi*psi)*psi*y);theta=[0 ;0;0;0];pn=10^6*eye(4);for t=3:Nps=([yk(t-1);yk(t-

2);uk(t-1);uk(t-2)]);pn=pn- pn*ps*ps*pn*(inv(1+ps*pn*ps));theta=theta+pn*ps*(yk(t)-ps*theta);thet=theta;a1=thet(1);a2=thet(2);b1=thet(3);b2= thet(4); a1t(t)=a1;a2t(t)=a2;b1t(t)=b1;b2t(t)=b2;endt=1:N;plot(t,a 1t(t),t,a2t(t),t,b1t(t),t,b2t(t));text(20,1、 47,a1);text(20,-0、67,a2);text(20,0、97,b1);text(20,0、47,b2);四.设计实验结果及分析实验结果图:仿真结果表明,大约递推到第步时,参数辨识的结果基本到稳态状态,即a1=1、5999,b1=1,c1=0、5,d1=-0、7。五、设计感受这周的课程设计告一段落了,时间短暂,意义重大。通过这次次练习的机会,重新把matlab课本看了一遍,另外学习了系统辨识的有关内容,收获颇丰。对matlab的使用更加纯熟,也锻炼了自己在课本中搜索信息和知识的能力。在设计过程中虽然遇到了一些问题,但经过一次又一次的思考,一遍又一遍的检查终于找出了原因所在,也暴露出了前期我在这方面的知识欠缺和经验不足。同时我也进一步认识了matlab软件强大的功能。在以后的学习和工作中必定有很大的用处。

Matlab系统辨识尝试之详细过程1

Matlab系统辨识尝试之详细过程1 前面介绍了Matlab系统辨识工具箱的一些用法,这里拿一个直观的例子来尝试工具箱的具体用法。比较长,给个简单目录吧: 1.辨识的准备 2.辨识数据结构的构造 3.GUI辨识 4.辨识效果 5.对固有频率的辨识 6.结构化辨识 7.灰箱辨识 8.加入kalman滤波的灰箱辨识 1.辨识的准备 在辨识前,首先要根据自己辨识的情况,确定要辨识的状态空间模型的一些特点,如连续还是离散的;有无直通 分量(即从输入直通到输出的分量);输入延迟;初始状态等。了解了这些情况就可以更快速的配置辨识时的一些设 置选项。 2.辨识数据结构的构造 使用原始数据构造iddata结构: data=iddata(y,u,Ts); 这里以一个弹簧质量系统的仿真为例 代码如下,其中用到了函数MDOFSolve,这在之前的博文介绍过(https://www.doczj.com/doc/f113838651.html,/?p=183),拿来用即可。如果发现运行有错误,可以将MDOFSolve函数开头的一句 omega2=real(eval(omega2)); 注释掉。 %弹簧质量系统建模 clc clear close all m=200; k=980*1000;

c=1.5*1000; m1=1*m; m2=1.5*m; k1=1*k; k2=2*k; k3=k1; %%由振动力学知识求固有频率 M=[m10;0m2]; K=[k1+k2-k2;-k2k3+k2]; [omega,phi,phin]=MDOFSolve(M,K); fprintf('固有频率:%fHz\n',subs(omega/2/pi)); %%转化到状态空间 innum=2; outnum=2; statenum=4; A=[0100; -(k1+k2)/m10k2/m10; 0001; k2/m20-(k3+k2)/m20]; B=[00; 1/m10; 00; 01/m2]; C=[1000; 0010]; D=zeros(outnum,innum); K=zeros(statenum,innum); mcon=idss(A,B,C,D,K,'Ts',0);%连续时间模型 figure impulse(mcon) %%信号仿真,构造数据供辨识 n=511;%输入信号长度 Ts=0.001; t=0:Ts:(n-1)*Ts; u1=idinput(n,'prbs');%输入1为伪随机信号 u2=zeros(n,1);%输入2为空 u=[u1u2]; simdat=iddata([],u,Ts);%形成输入数据对象 e=randn(n,2)*1e-7; simopt=simOptions('AddNoise',true,'NoiseData',e);%添加噪声yn=sim(mcon,simdat,simopt);%加噪声仿真 y=sim(mcon,simdat);%无噪声仿真

MA AB模型预测控制工具箱函数

M A T L A B模型预测控制工具箱函数 8.2系统模型建立与转换函数 前面读者论坛了利用系统输入/输出数据进行系统模型辨识的有关函数及使用方法,为时行模型预测控制器的设计,需要对系统模型进行进一步的处理和转换。MATLAB的模型预测控制工具箱中提供了一系列函数完成多种模型转换和复杂系统模型的建立功能。 在模型预测控制工具箱中使用了两种专用的系统模型格式,即MPC状态空间模型和MPC传递函数模型。这两种模型格式分别是状态空间模型和传递函数模型在模型预测控制工具箱中的特殊表达形式。这种模型格式化可以同时支持连续和离散系统模型的表达,在MPC传递函数模型中还增加了对纯时延的支持。表8-2列出了模型预测控制工具箱的模型建立与转换函数。 表8-2模型建立与转换函数 8.2.1模型转换 在MATLAB模型预测工具箱中支持多种系统模型格式。这些模型格式包括: ①通用状态空间模型; ②通用传递函数模型; ③MPC阶跃响应模型; ④MPC状态空间模型;

⑤MPC传递函数模型。 在上述5种模型格式中,前两种模型格式是MATLAB通用的模型格式,在其他控制类工具箱中,如控制系统工具箱、鲁棒控制工具等都予以支持;而后三种模型格式化则是模型预测控制工具箱特有的。其中,MPC状态空间模型和MPC传递函数模型是通用的状态空间模型和传递函数模型在模型预测控制工具箱中采用的增广格式。模型预测控制工具箱提供了若干函数,用于完成上述模型格式间的转换功能。下面对这些函数的用法加以介绍。 1.通用状态空间模型与MPC状态空间模型之间的转换 MPC状态空间模型在通用状态空间模型的基础上增加了对系统输入/输出扰动 和采样周期的描述信息,函数ss2mod()和mod2ss()用于实现这两种模型格式之间的转换。 1)通用状态空间模型转换为MPC状态空间模型函数ss2mod() 该函数的调用格式为 pmod=ss2mod(A,B,C,D) pmod=ss2mod(A,B,C,D,minfo) pmod=ss2mod(A,B,C,D,minfo,x0,u0,y0,f0) 式中,A,B,C,D为通用状态空间矩阵; minfo为构成MPC状态空间模型的其他描述信息,为7个元素的向量,各元素分别定义为: ◆minfo(1)=dt,系统采样周期,默认值为1; ◆minfo(2)=n,系统阶次,默认值为系统矩阵A的阶次; ◆minfo(3)=nu,受控输入的个数,默认值为系统输入的维数; ◆minfo(4)=nd,测量扰的数目,默认值为0; ◆minfo(5)=nw,未测量扰动的数目,默认值为0; ◆minfo(6)=nym,测量输出的数目,默认值系统输出的维数; ◆minfo(7)=nyu,未测量输出的数目,默认值为0; 注:如果在输入参数中没有指定m i n f o,则取默认值。 x0,u0,y0,f0为线性化条件,默认值均为0; pmod为系统的MPC状态空间模型格式。 例8-5将如下以传递函数表示的系统模型转换为MPC状态空间模型。 解:MATLAB命令如下:

MATLAB常用工具箱

MATLAB有三十多个工具箱大致可分为两类:功能型工具箱和领域型工具箱. 功能型工具箱主要用来扩充MATLAB的符号计算功能、图形建模仿真功能、文字处理功能以及与硬件实时交互功能,能用于多种学科。而领域型工具箱是专业性很强的。如控制系统工具箱(Control System Toolbox)、信号处理工具箱(Signal Processing Toolbox)、财政金融工具箱(Financial Toolbox)等。 下面,将MATLAB工具箱内所包含的主要内容做简要介绍: 1)通讯工具箱(Communication Toolbox)。 令提供100多个函数和150多个SIMULINK模块用于通讯系统的仿真和分析 ——信号编码 ——调制解调 ——滤波器和均衡器设计 ——通道模型 ——同步 可由结构图直接生成可应用的C语言源代码。 2)控制系统工具箱(Control System Toolbox)。 鲁连续系统设计和离散系统设计 * 状态空间和传递函数 * 模型转换 * 频域响应:Bode图、Nyquist图、Nichols图 * 时域响应:冲击响应、阶跃响应、斜波响应等 * 根轨迹、极点配置、LQG 3)财政金融工具箱(FinancialTooLbox)。 * 成本、利润分析,市场灵敏度分析 * 业务量分析及优化 * 偏差分析 * 资金流量估算 * 财务报表 4)频率域系统辨识工具箱(Frequency Domain System ldentification Toolbox * 辨识具有未知延迟的连续和离散系统 * 计算幅值/相位、零点/极点的置信区间 * 设计周期激励信号、最小峰值、最优能量诺等 5)模糊逻辑工具箱(Fuzzy Logic Toolbox)。 * 友好的交互设计界面 * 自适应神经—模糊学习、聚类以及Sugeno推理 * 支持SIMULINK动态仿真 * 可生成C语言源代码用于实时应用

Matlab数理统计工具箱常用函数命令大全

Matlab数理统计工具箱应用简介 1.概述 Matlab的数理统计工具箱是Matlab工具箱中较为简单的一个,其牵扯的数学知识是大家都很熟悉的数理统计,因此在本文中,我们将不再对数理统计的知识进行重复,仅仅列出数理统计工具箱的一些函数,这些函数的意义都很明确,使用也很简单,为了进一步简明,本文也仅仅给出了函数的名称,没有列出函数的参数以及使用方法,大家只需简单的在Matlab工作空间中输入“help 函数名”,便可以得到这些函数详细的使用方法。 2.参数估计 betafit 区间 3.累积分布函数 betacdf β累积分布函数 binocdf 二项累积分布函数 cdf 计算选定的累积分布函数 chi2cdf 累积分布函数2χ expcdf 指数累积分布函数 fcdf F累积分布函数 gamcdf γ累积分布函数 geocdf 几何累积分布函数 hygecdf 超几何累积分布函数 logncdf 对数正态累积分布函数 nbincdf 负二项累积分布函数 ncfcdf 偏F累积分布函数 nctcdf 偏t累积分布函数 ncx2cdf 偏累积分布函数2χ normcdf 正态累积分布函数 poisscdf 泊松累积分布函数 raylcdf Reyleigh累积分布函数 tcdf t 累积分布函数 unidcdf 离散均匀分布累积分布函数 unifcdf 连续均匀分布累积分布函数 weibcdf Weibull累积分布函数 4.概率密度函数 betapdf β概率密度函数 binopdf 二项概率密度函数 chi2pdf 概率密度函数2χ

exppdf 指数概率密度函数 fpdf F概率密度函数 gampdf γ概率密度函数 geopdf 几何概率密度函数 hygepdf 超几何概率密度函数 lognpdf 对数正态概率密度函数 nbinpdf 负二项概率密度函数 ncfpdf 偏F概率密度函数 nctpdf 偏t概率密度函数 ncx2pdf 偏概率密度函数2χ normpdf 正态分布概率密度函数 pdf 指定分布的概率密度函数 poisspdf 泊松分布的概率密度函数 raylpdf Rayleigh概率密度函数 tpdf t概率密度函数 unidpdf 离散均匀分布概率密度函数unifpdf 连续均匀分布概率密度函数weibpdf Weibull概率密度函数5.逆累积分布函数 Betainv 逆β累积分布函数 binoinv 逆二项累积分布函数 chi2inv 逆累积分布函数2χ expinv 逆指数累积分布函数 finv 逆F累积分布函数 gaminv 逆γ累积分布函数 geoinv 逆几何累积分布函数 hygeinv 逆超几何累积分布函数 logninv 逆对数正态累积分布函数 nbininv 逆负二项累积分布函数 ncfinv 逆偏F累积分布函数 nctinv 逆偏t累积分布函数 ncx2inv 逆偏累积分布函数2χ norminv 逆正态累积分布函数 possinv 逆正态累积分布函数 raylinv 逆Rayleigh累积分布函数 tinv 逆t累积分布函数 unidinv 逆离散均匀累积分布函数 unifinv 逆连续均匀累积分布函数 weibinv 逆Weibull累积分布函数

Matlab_系统辨识_应用例子

例1、考虑仿真对象 )()2(5.0)1()2(7.0)1(5.1)(k v k u k u k z k z k z +-+-=-+-- 其中,)(k v 是服从正态分布的白噪声N )1,0(。输入信号采用4阶M 序列,幅度为1。选择如下形式的辨识模型 )()2()1()2()1()(2121k v k u b k u b k z a k z a k z +-+-=-+-+ 设输入信号的取值是从k =1到k =16的M 序列,则待辨识参数LS θ?为LS θ?=(T T -ΦΦΦ1)z 。其中,被辨识参数LS θ?、观测矩阵Φ的表达式为: ????? ???????=2121?b b a a LS θ (3)(4)(16)z z z ??????=???? ??z (2)(1)(2)((3)(2)(3)(2)(15)(14)(15)(14)z z u u z z u u z z u u --????--??Φ=????--?? 程序框图如图1所示。Matlab 仿真程序如下: %二阶系统的最小二乘一次完成算法辨识程序,文件名:LS.m

u=[-1,1,-1,1,1,1,1,-1,-1,-1,1,-1,-1,1,1]; %系统辨识的输入信号为一个周期的M序列 z=zeros(1,16); %定义输出观测值的长度 for k=3:16 z(k)=1.5*z(k-1)-0.7*z(k-2)+u(k-1)+0.5*u(k-2); %用理想输出值作为观测值 end subplot(3,1,1) %画三行一列图形窗口中的第一个图形 stem(u) %画输入信号u的径线图形 subplot(3,1,2) %画三行一列图形窗口中的第二个图形 i=1:1:16; %横坐标范围是1到16,步长为1 plot(i,z) %图形的横坐标是采样时刻i, 纵坐标是输出观测值z, 图形格式为连续曲线 subplot(3,1,3) %画三行一列图形窗口中的第三个图形 stem(z),grid on %画出输出观测值z的径线图形,并显示坐标网格u,z %显示输入信号和输出观测信号 %L=14 %数据长度 HL=[-z(2) -z(1) u(2) u(1);-z(3) -z(2) u(3) u(2);-z(4) -z(3) u(4) u(3);-z(5) -z(4) u(5) u(4);-z(6) -z(5) u(6) u(5);-z(7) -z(6) u(7) u(6);-z(8) -z(7) u(8) u(7);-z(9) -z(8) u(9) u(8);-z(10) -z(9) u(10) u(9);-z(11) -z(10) u(11) u(10);-z(12) -z(11) u(12) u(11);-z(13) -z(12) u(13) u(12);-z(14) -z(13) u(14) u(13);-z(15) -z(14) u(15) u(14)] %给样本矩阵 赋值

MATLAB工具箱介绍

MATLAB工具箱介绍 序号工具箱备注 数学、统计与优化 1Symbolic Math Toolbox符号数学工具箱 2Partial Differential Euqation Toolbox 偏微分方程工具箱 3Statistics Toolbox统计学工具箱4Curve Fitting Toolbox曲线拟合工具箱5Optimization Toolbox优化工具箱 6Global Optimization Toolbox 全局优化工具箱 7Neural Network Toolbox神经网络工具箱 8Model-Based Calibration Toolbox 基于模型矫正工具箱 信号处理与通信 9Signal Processing Toolbox 信号处理工具箱 10DSP System Toolbox DSP[size=+0]系统工具箱 11Communications System Toolbox 通信系统工具箱 12Wavelet Toolbox小波工具箱 13Fixed-Point Toolbox定点运算工具箱14RF Toolbox射频工具箱 15Phased Array System Toolbox 相控阵系统工具箱 控制系统设计与分析 16Control system Toolbox控制系统工具箱 17System Indentification Toolbox 系统辨识工具箱 18Fuzzy Logic Toolbox模糊逻辑工具箱19Robust Control Toolbox鲁棒控制工具箱 20Model Predictive Control Toolbox 模型预测控制工具箱 21Aerospace Toolbox航空航天工具箱

MATLAB中常用的工具箱

6.1.1MA TLAB中常用的工具箱 MA TLAB中常用的工具箱有: Matlab main toolbox——matlab主工具箱 Control system toolbox——控制系统工具箱Communication toolbox——通信工具箱 Financial toolbox——财政金融工具箱 System identification toolbox——系统辨识工具箱 Fuzzy logic toolbox ——模糊逻辑工具箱 Higher-order spectral analysis toolbox——高阶谱分析工具箱Image processing toolbox——图像处理工具箱 Lmi contral toolbox——线性矩阵不等式工具箱 Model predictive contral toolbox——模型预测控制工具箱 U-Analysis ang sysnthesis toolbox——u分析工具箱 Neural network toolbox——神经网络工具箱 Optimization toolbox——优化工具箱 Partial differential toolbox——偏微分奉承工具箱 Robust contral toolbox——鲁棒控制工具箱 Spline toolbox——样条工具箱 Signal processing toolbox——信号处理工具箱 Statisticst toolbox——符号数学工具箱 Symulink toolbox——动态仿真工具箱 System identification toolbox——系统辨识工具箱 Wavele toolbox——小波工具箱 6.2优化工具箱中的函数 1、最小化函数 2、最小二乘问题 3、方程求解函数

系统辨识及其matlab仿真(一些噪声和辨识算法)

【1】随机序列产生程序 【2】白噪声产生程序 【3】M序列产生程序 【4】二阶系统一次性完成最小二乘辨识程序 【5】实际压力系统的最小二乘辨识程序 【6】递推的最小二乘辨识程序 【7】增广的最小二乘辨识程序 【8】梯度校正的最小二乘辨识程序 【9】递推的极大似然辨识程序 【10】Bayes辨识程序 【11】改进的神经网络MBP算法对噪声系统辨识程序【12】多维非线性函数辨识程序的Matlab程序【13】模糊神经网络解耦Matlab程序 【14】F-检验法部分程序 【1】随机序列产生程序 A=6; x0=1;M=255; for k=1:100 x2=A*x0; x1=mod (x2,M); v1=x1/256; v(:,k)=v1; x0=x1; v0=v1; end v2=v k1=k; %grapher k=1:k1; plot(k,v,k,v,'r'); xlabel('k'), ylabel('v');title('(0,1)均匀分布的随机序列') 【2】白噪声产生程序 A=6; x0=1; M=255; f=2; N=100; for k=1:N x2=A*x0; x1=mod (x2,M); v1=x1/256; v(:,k)=(v1-0.5)*f; x0=x1;

v0=v1; end v2=v k1=k; %grapher k=1:k1; plot(k,v,k,v,'r'); xlabel('k'), ylabel('v');title('(-1,+1)均匀分布的白噪声') 【3】M序列产生程序 X1=1;X2=0;X3=1;X4=0; %移位寄存器输入Xi初T态(0101),Yi为移位寄存器各级输出m=60; %置M序列总长度 for i=1:m %1# Y4=X4; Y3=X3; Y2=X2; Y1=X1; X4=Y3; X3=Y2; X2=Y1; X1=xor(Y3,Y4); %异或运算 if Y4==0 U(i)=-1; else U(i)=Y4; end end M=U %绘图 i1=i k=1:1:i1; plot(k,U,k,U,'rx') xlabel('k') ylabel('M序列') title('移位寄存器产生的M序列') 【4】二阶系统一次性完成最小二乘辨识程序 %FLch3LSeg1 u=[-1,1,-1,1,1,1,1,-1,-1,-1,1,-1,-1,1,1]; %系统辨识的输入信号为一个周期的M序列 z=zeros(1,16); %定义输出观测值的长度 for k=3:16 z(k)=1.5*z(k-1)-0.7*z(k-2)+u(k-1)+0.5*u(k-2); %用理想输出值作为观测值 end subplot(3,1,1) %画三行一列图形窗口中的第一个图形 stem(u) %画出输入信号u的经线图形 subplot(3,1,2) %画三行一列图形窗口中的第二个图形 i=1:1:16; %横坐标范围是1到16,步长为1 plot(i,z) %图形的横坐标是采样时刻i, 纵坐标是输出观测值z, 图形格式为连续曲线

Matlab+Toolbox+工具箱1

Matlab Toolbox 工具箱 Matlab工具箱已经成为一个系列产品,Matlab主工具箱和各种工具箱(toolbox )。

工具箱介绍 Matlab包含两部分内容:基本部分和根据专门领域中的特殊需要而设计的各种可选工具箱。 Symbolic Math PDE Optimization Signal process Image Process Statistics Control System System Identification ……

一、工具箱简介 ?功能型工具箱——通用型 功能型工具箱主要用来扩充Matlab的数值计算、符号运算功能、图形建模仿真功能、文字处理功能以及与硬件实时交互功能,能够用于多种学科。

?领域型工具箱——专用型 领域型工具箱是学科专用工具箱,其专业性很强,比如控制系统工具箱(Control System Toolbox);信号处理工具箱(Signal Processing Toolbox);财政金融工具箱(Financial Toolbox)等等。只适用于本专业。

控制系统工具箱 Control System Toolbox ?连续系统设计和离散系统设计 ?状态空间和传递函数以及模型转换?时域响应(脉冲响应、阶跃响应、斜坡响应) ?频域响应(Bode图、Nyquist图) ?根轨迹、极点配置

Matlab常用工具箱 ?Matlab Main Toolbox——matlab主工具箱?Control System Toolbox——控制系统工具箱?Communication Toolbox——通讯工具箱?Financial Toolbox——财政金融工具箱?System Identification Toolbox——系统辨识工具箱 ?Fuzzy Logic Toolbox——模糊逻辑工具箱?Bioinformatics Toolbox——生物分析工具箱

MATLAB工具箱函数

表Ⅰ-11 线性模型函数 函数描述 anova1 单因子方差分析 anova2 双因子方差分析 anovan 多因子方差分析 aoctool 协方差分析交互工具 dummyvar 拟变量编码 friedman Friedman检验 glmfit 一般线性模型拟合 kruskalwallis Kruskalwallis检验 leverage 中心化杠杆值 lscov 已知协方差矩阵的最小二乘估计manova1 单因素多元方差分析manovacluster 多元聚类并用冰柱图表示multcompare 多元比较 多项式评价及误差区间估计 polyfit 最小二乘多项式拟合 polyval 多项式函数的预测值 polyconf 残差个案次序图 regress 多元线性回归 regstats 回归统计量诊断 续表 函数描述 Ridge 岭回归 rstool 多维响应面可视化 robustfit 稳健回归模型拟合 stepwise 逐步回归 x2fx 用于设计矩阵的因子设置矩阵 表Ⅰ-12 非线性回归函数 函数描述 nlinfit 非线性最小二乘数据拟合(牛顿法)nlintool 非线性模型拟合的交互式图形工具nlparci 参数的置信区间 nlpredci 预测值的置信区间 nnls 非负最小二乘 表Ⅰ-13 试验设计函数 函数描述 cordexch D-优化设计(列交换算法)daugment 递增D-优化设计 dcovary 固定协方差的D-优化设计ff2n 二水平完全析因设计 fracfact 二水平部分析因设计 fullfact 混合水平的完全析因设计hadamard Hadamard矩阵(正交数组)rowexch D-优化设计(行交换算法) 表Ⅰ-14 主成分分析函数 函数描述 barttest Barttest检验 pcacov 源于协方差矩阵的主成分pcares 源于主成分的方差 princomp 根据原始数据进行主成分分析 表Ⅰ-15 多元统计函数 函数描述 classify 聚类分析 mahal 马氏距离 manova1 单因素多元方差分析manovacluster 多元聚类分析 表Ⅰ-16 假设检验函数 函数描述 ranksum 秩和检验 signrank 符号秩检验 signtest 符号检验 ttest 单样本t检验 ttest2 双样本t检验 ztest z检验 表Ⅰ-17 分布检验函数 函数描述 jbtest 正态性的Jarque-Bera检验kstest 单样本Kolmogorov-Smirnov检验kstest2 双样本Kolmogorov-Smirnov检验lillietest 正态性的Lilliefors检验 表Ⅰ-18 非参数函数 函数描述 friedman Friedman检验 kruskalwallis Kruskalwallis检验ranksum 秩和检验 signrank 符号秩检验 signtest 符号检验

系统辨识MATLAB仿真

设一非线性系统如下所示: ()()() ()()111y k y k e u k k βαε--=-+-+ 0.75α= 0.35β=0.25γ=,()k ε是零均值,方差为0.01的噪声序列(均匀白噪声)。 (1)试设计一种激励信号能持续激励系统的各工作点(平衡点) (2)用适当的方法辨识出系统的等价模型(用另一组数据来检验模型的泛化性) 说明:下面讨论的都是离散系统,所以时间坐标均采用离散时间节点k 。 解: (1) 线性化处理寻找系统的合理输入信号 可以求得系统的平衡点为: ()0.75y k α== (1.1) 按题意要求最后系统必须收敛于平衡点附近,即: ()lim 0.75k y k →∞ = (1.2) 为了找出系统的合理输入信号,使得系统最终工作在平衡点附近,这里可以将系统线性化处理,将上述非线性系统进行泰勒展开得: ()()()()()()()2323111111112!3!! n n y k y k y k y k y k u k k n αβαβαβαβγε--+---++-=-+ 因为 ,后面()1y k -的高阶项都可以扔掉(只作为寻找输入信号使用), 所以系统可以化为下式: 此时不妨设系统输出()y k 的最后的极限为A , 从式1.2得0.75A =。 那么应该满足 ()()lim lim 1k k y k y k A →∞ →∞ =-= (1.5) 从而有 ()()()11A u k k αβγε-=-+ (1.6) 同时为了抵消系统的部分噪声,这里采用MA TLAB 软件编程产生另一服从同一分布的均匀噪声()1k ε,将式1.6变形得: ()()()0111 1u k u k k αβ εγ γ --= - (1.7) 式1.7中()0u k 是一个最后收敛于系统平衡点0.75的基本信号,这里可以采用一阶线性系统的阶跃响应曲线作为基本信号()0u k ,同时考虑系统的平衡点,即设计为: ()/00.75k T u k e -=- (1.8) T 是一阶线性系统对应的时间常数, 反应到输入基本信号()0u k 上就是过零点作()0u k 对应()()()()11y k y k u k k αβγε--=-+01αβ<(1.3) (1.4)

Matlab各工具箱功能简介(部分)

Toolbox工具箱序号工具箱备注一、数学、统计与优化 1 Symbolic Math Toolbox 符号数学工具箱Symbolic Math Toolbox?提供用于求解和推演符号运算表达式以及执行可变精度算术的函数。您可以通过分析执行微分、积分、化简、转换以及方程求解。另外,还可以利用符号运算表达式为 MATLAB、Simulink 和Simscape?生成代码。 Symbolic Math Toolbox 包含 MuPAD 语言,并已针对符号运算表达式的处理和执行进行优化。该工具箱备有 MuPAD 函数库,其中包括普通数学领域的微积分和线性代数,以及专业领域的数论和组合论。此外,还可以使用 MuPAD 语言编写自定义的符号函数和符号库。MuPAD 记事本支持使用嵌入式文本、图形和数学排版格式来记录符号运算推导。您可以采用 HTML 或 PDF 的格式分享带注释的推导。 2 Partial Differential Euqation Toolbox 偏微分方程工具箱偏微分方程工具箱?提供了用于在2D,3D求解偏微分方程(PDE)以及一次使用有限元分析。它可以让你指定和网格二维和三维几何形状和制定边界条件和公式。你能解决静态,时

域,频域和特征值问题在几何领域。功能进行后处理和绘图效果使您能够直观地探索解决方案。你可以用偏微分方程工具箱,以解决从标准问题,如扩散,传热学,结构力学,静电,静磁学,和AC电源电磁学,以及自定义,偏微分方程的耦合系统偏微分方程。 3 Statistics Toolbox 统计学工具箱Statistics and Machine Learning Toolbox 提供运用统计与机器学习来描述、分析数据和对数据建模的函数和应用程序。您可以使用用于探查数据分析的描述性统计和绘图,使用概率分布拟合数据,生成用于 Monte Carlo 仿真的随机数,以及执行假设检验。回归和分类算法用于依据数据执行推理并构建预测模型。 对于分析多维数据,Statistics and Machine Learning Toolbox 可让您通过序列特征选择、逐步回归、主成份分析、规则化和其他降维方法确定影响您的模型的主要变量或特征。该工具箱提供了受监督和不受监督机器学习算法,包括支持向量机(SVM)、促进式 (boosted) 和袋装 (bagged) 决策树、k-最近邻、k-均值、k-中心点、分层聚类、高斯混合模型和隐马尔可夫模型。 4 Curve Fitting Toolbox 曲线拟合工具箱Curve Fitting Toolbox?提供了用于拟合曲线和

Matlab常用工具箱及常用函数

Matlab常用工具箱 MATLAB包括拥有数百个内部函数的主包和三十几种工具包.工具包又可以分为功能性工具包和学科工具包.功能工具包用来扩充MATLAB的符号计算,可视化建模仿真,文字处理及实时控制等功能.学科工具包是专业性比较强的工具包,控制工具包,信号处理工具包,通信工具包等都属于此类. 开放性使MATLAB广受用户欢迎.除内部函数外,所有MATLAB主包文件和各种工具包都是可读可修改的文件,用户通过对源程序的修改或加入自己编写程序构造新的专用工具包. Matlab Main Toolbox——matlab主工具箱 Control System Toolbox——控制系统工具箱 Communication Toolbox——通讯工具箱 Financial Toolbox——财政金融工具箱 System Identification Toolbox——系统辨识工具箱 Fuzzy Logic Toolbox——模糊逻辑工具箱 Higher-Order Spectral Analysis Toolbox——高阶谱分析工具箱 Image Processing Toolbox——图象处理工具箱 LMI Control Toolbox——线性矩阵不等式工具箱 Model predictive Control Toolbox——模型预测控制工具箱 μ-Analysis and Synthesis Toolbox——μ分析工具箱 Neural Network Toolbox——神经网络工具箱 Optimization Toolbox——优化工具箱 Partial Differential Toolbox——偏微分方程工具箱 Robust Control Toolbox——鲁棒控制工具箱 Signal Processing Toolbox——信号处理工具箱 Spline Toolbox——样条工具箱 Statistics Toolbox——统计工具箱 Symbolic Math Toolbox——符号数学工具箱 Simulink Toolbox——动态仿真工具箱 Wavele Toolbox——小波工具箱 常用函数Matlab内部常数[3] eps:浮点相对精度 exp:自然对数的底数e i或j:基本虚数单位 inf或Inf:无限大, 例如1/0 nan或NaN:非数值(Not a number),例如0/0 pi:圆周率p(= 3.1415926...) realmax:系统所能表示的最大数值 realmin:系统所能表示的最小数值 nargin: 函数的输入引数个数 nargout: 函数的输出引数个数 lasterr:存放最新的错误信息 lastwarn:存放最新的警告信息 MATLAB常用基本数学函数 abs(x):纯量的绝对值或向量的长度 angle(z):复数z的相角(Phase angle)

MATLAB 主要工具箱简介

MATLAB 主要工具箱简介 1.控制系统工具箱 控制领域的计算机辅助设计自产生以来就一直受到控制界的重视。而MATLAB 正是控制领域进行计算及 辅助设计的一种非常好的工具语言。 MATLAB 的控制系统工具箱(Control System Toolbox)为用户提供了许多控制领域的专用函数,实际上, 这个工具箱就是一个关于控制系统的算法的集合。通过使用这些专用函数,月户可以方便地实现控制系统的部 分应用。此外,使用MATLAB 的控制系统工具箱还可以方便地进行模型间的转换。下面列出了该工具箱在控 制领域的主要应用: (1)连续系统设计和离散系统设计; (2)传递函数和状态空间; (3)模型转换; (4)频域响应; (5)时域响应; (6)根轨迹和极点配置。 2.小波工具箱 小波工具箱(Wavelet Toolbox)在信号处理领域的主要应用包括: (1)基于小波的分析和综合; (2)图形界面和命令行接口; (3)连续和离散小波变换及小波包; (4)一维、二维小波; (5)自适应去噪和压缩。 3.模糊逻辑工具箱 模糊逻辑工具箱(FuzzyLogicToolbox)是MATLAB 用于解决模糊逻辑问题的工具箱。其主要应用包括: (1)友好的交互设计界面; (2)自适应神经——模糊学习、聚类以及Sugeno 推理; (3)支持SIMULINK 动态仿真; (4)可生成C 语言源代码用于实时应用。 4.神经网络工具箱 神经网络工具箱(NeuralNetworkToolbox)的主要应用包括: (1)BP 网络; (2)Hopfield,Kohonen 网络: (3)径向基函数网络: (4)竞争、线性、Sigmoidal 等传递函数; (5)前馈、递归等网络结构; (6)性能分析及应用; (7)感知器: (8)自组织网络。 5.通信工具箱 通信工具箱(Communication Toolbox)提供了100 多个函数和150 多个SIMULINK 模块用于通信系统的仿 真和分析,其主要应用包括: (1)信号编码;

Matlab-并行计算工具箱函数基本情况介绍

Matlab 并行计算工具箱的使用 Matlab并行工具箱的产生一方面给大规模的数据分析带来了巨大的效益,另一方面且引入了分布式计算,借助matlab自身携带的MDCE,可以实现单机多核并行运行或者是同一个局域网络中的多台处理器组成的机群的并行运行。 个人以为后者是前者的拓展,并行计算的最初目的是为了解决串行计算速度不能满足某些复杂运算而产生的技术,能够借助较低配置的处理,协同工作处理同一个程序,但是他们之间是并不会交互的,仅仅是有核心主机—client进行大任务的分解,而后将它们分配给各个处理器,由处理器共同完成。所以说并行计算的实质还是主从结构的分布式计算。这里体现了数量的优势,同一个程序串行运行可能需要40个小时,但是若是由10台处理器同时跑,则有望将计算时间降低到接近4个小时的水平。而且这十台处理器可以是一个多个多核CPU组成,例如一个8核心CPU和1个2核心CPU。也可以是由5个2核心CPU组成,形式灵活。 而分布式计算在并行计算的基础上有功能上的扩展,一个很重要的方面就体现在,上述的十个处理器之间可以进行交互式通讯这是基于MPI(message passing interface)实现的,这对于大规模的分布式控制系统是很有需要的,也就是说,各个处理器之间要实现数据的实时传递,有时是共享某些信息,有时是lab1需要lab2的某些信息。相对于单纯的并行计算来说,后者将交互式通讯扩展到了labs之间,而不仅仅是lab和client之间。 Matlab 并行计算工具箱中的函数有: 1.Parfor (FOR循环的并行计算); 函数1:matlabpool 其作用是开启matlab并行计算池,单独的命令会以默认的配置开启并行计算环境。 函数2:parfor For循环的并行计算替代关键词,需要注意的是,parfor不能像for一样嵌套。 但是外部的parfor内部可以嵌套for循环。 函数3:batch 用于在worker上运行matlab脚本或者是matlab函数。 例如:batch(‘script.m’) 语句会根据默认并行配置文件定义的集群将script脚本文件运行在worker上。 2.批处理 函数1:batch,其语法有: j = batch('aScript') j = batch(myCluster,'aScript') j = batch(fcn,N,{x1, ..., xn}) j = batch(myCluster,fcn,N,{x1,...,xn}) j = batch(...,'p1',v1,'p2',v2,...) 其中的变量: J The batch job object. 'aScript'The script of MATLAB code to be evaluated by the MATLAB pool job. myClusterCluster object representing cluster compute resources. fcnFunction handle or string of function name to be evaluated by the MATLAB pool job.

相关主题
文本预览
相关文档 最新文档