版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、Your Name | Presentation Title | Date1MATLAB基础培训洪小聪2015年9月21日Your Name | Presentation Title | Date2主要内容1.MATLAB简介2.MATLAB运用领域3.MATLAB编程,符号运算4.MATLAB画图5.控制系统matlab分析方法6.Simulink简介及基本操作7.simulink control design8.simulink在光伏逆变器中运用Your Name | Presentation Title | Date31.MATLAB简介MATLAB是由美国mathworks公司发布的主
2、要面对科学计算、可视化以及交互式程序设计的高科技计算环境。它将数值分析、矩阵计算、科学数据可视化以及非线性动态系统的建模和仿真等诸多强大功能集成在一个易于使用的视窗环境中,为科学研究、工程设计以及必须进行有效数值计算的众多科学领域提供了一种全面的解决方案,并在很大程度上摆脱了传统非交互式程序设计语言(如C、Fortran)的编辑模式,代表了当今国际科学计算软件的先进水平MATLABMATLAB和Mathematica、Maple、MathCAD并称为四大数学软件。它在数学类科技应用软件中在数值计算方面首屈一指。MATLAB可以进行矩阵运算、绘制函数和数据、实现算法、创建用户界面、连 matla
3、b开发工作界面接其他编程语言的程序等,主要应用于工程计算、控制设计、信号处理与通讯、图像处理、信号检测、金融建模设计与分析等领域。Your Name | Presentation Title | Date4 MATLAB的基本数据单位是矩阵,它的指令表达式与数学、工程中常用的形式十分相似,故用MATLAB来解算问题要比用C,FORTRAN等语言完成相同的事情简捷得多,并且MATLAB也吸收了像Maple等软件的优点,使MATLAB成为一个强大的数学软件。在新的版本中也加入了对C,FORTRAN,C+,JAVA的支持。可以直接调用,用户也可以将自己编写的实用程序导入到MATLAB函数库中方便自己
4、以后调用,此外许多的MATLAB爱好者都编写了一些经典的程序,用户可以直接进行下载就可以用。Your Name | Presentation Title | Date5 发展历程 20世纪70年代,美国新墨西哥大学计算机科学系主任Cleve Moler为了减轻学生编程的负担,用FORTRAN编写了最早的MATLAB。1984年由Little、Moler、Steve Bangert合作成立了的MathWorks公司正式把MATLAB推向市场。到20世纪90年代,MATLAB已成为国际控制界的标准计算软件。现在最新版本的是MATLAB8.0(R2012b)Your Name | Presentat
5、ion Title | Date6MATLAB产品家族Your Name | Presentation Title | Date7Simulink产品家族Your Name | Presentation Title | Date82、matlab运用领域 科学计算 嵌入式系统,FPGA设计 图像视频处理,通信系统 数学教学,特别是线性代数 数值分析和科学计算方面的教学与研究 电子学、控制理论和物理学等工程和科学 学科方面的教学与研究 经济学、化学和生物学等计算问题的所有其他领域中的教学与研究Your Name | Presentation Title | Date9 3.MATLAB 简单语法
6、,符号运算 3.1 MATLAB 简单语法 3.2 符号运算Your Name | Presentation Title | Date10 3.1MATLAB简单语法3.1.1关系运算,=,等于=,不等于=3.1.2逻辑运算& 与运算;| 或运算; 非运算;X or 异或运算;Your Name | Presentation Title | Date11 3.1.3 3.1.3 条件和循环语句条件和循环语句 MATLAB的流控制语句主要有4个: i f s w i t c h w h i l e f o r 它们都用end结束Your Name | Presentation Title
7、 | Date12if 语句语句 1) 单分支if语句: if 条件 语句组 end 2)双分支if语句: if 条件 语句组1 else 语句组2 end 3) 多分支if语句(如果-那么-否则) if 条件1 语句组1 elseif 条件2 语句组2 elseif 条件m 语句组m else 语句组n end if ( x = 0 ) y = 0 elseif ( x=1 ) y = x; else y = 1; endYour Name | Presentation Title | Date13SwitchSwitch语句语句Switch case value1 case value2
8、otherwise end 与c不同的是,在switch结构中如果第一个case条件满足,那么执行完对应的语句体后直接执行end后的语句,而不再判断其它case。 function y = f (x , n)switch ncase 1 y = 32*x3 - 56*x2 + 24*x - 3; case 2 y=x3 - 11.1*x2 + 38.8*x - 41.77; case 3 y=(x-1)3*(x+3)2*(x-5); case 4 y = (x-1)3 * ( sin(x) )2; otherwise y=32*x3-56*x2+24*x+8; end Your Name |
9、Presentation Title | Date14 forfor语句语句 for =: end for j = 1 : m for p = 1 : m a( j , p ) = 1 / ( j+ p -1) end end format rat a Your Name | Presentation Title | Date15 WhileWhile语句语句 while enda=1;b=2;k=0;while( a b s ( b a ) 0.0005 ) x = (a+b)/2; if ( f(x) * f(a) ex1(2,4)ans = 0.8268用用functionfunctio
10、n定义的定义的M M文件的变量文件的变量为局部变量,如果需要定义为局部变量,如果需要定义全局变量则需要加全局变量则需要加globalglobal关关键字键字输出输入Your Name | Presentation Title | Date M函数文件的相关概念(1)局部变量 局部变量只存在于单个函数工作空间,它产生于该函数的运行过程当中,与其它函数是隔离的。(2)全局变量 用 global 指令,就可以把一个变量定义为几个不同函数和基本工作空间共享的同一个变量,即全局变量。如果在当前工作空间已经存在了相同的变量, 系统会出现警告。习惯上讲全局变量定义为大写字母, 如:glob
11、al A B C 全局变量存在整个workspace工作空间,所有的函数都可以对其进行调用和修改。 可以在若干函数中把某一变量定义为全局变量,那么这些函数将公用这个变量,所有函数都可以对其存取和修改。 函数文件的内部变量是局部的,而命令文件的内部变量是全局变量。 全局变量的作用域,即全程有效。因此是整个工作区间函数之间传递数据的一个方式。Your Name | Presentation Title | Date24 3.2 符号运算 符号表达式、符号矩阵的创建 符号线性代数 因式分解、展开和简化 符号代数方程求解 符号微积分 符号微分方程Your Name | Presentation Tit
12、le | Date253.2.1 什么是符号运算与数值运算的区别 数值运算中必须先对变量赋值,然后才能参与运算。 符号运算无须事先对独立变量赋值,运算结果以标准的符号形式表达。Your Name | Presentation Title | Date26 3.2.2 符号变量与符号表达式f = sin(x)+5xf 符号变量名sin(x)+5x 符号表达式 符号标识v 符号表达式一定要用 单引 号括起来matlab才能识别。 的内容可以是符号表达式,也可以是符号方程。例: f1=ax2+bx+c 二次三项式 f2= ax2+bx+c=0 方程 f3=Dy+y2=1 微分方程符号表达式或符号方程
13、可以赋给符号变量,以后调用方便;也可以不赋给符号变量直接参与运算Your Name | Presentation Title | Date27 3.2.3 符号运算符号矩阵运算 数值运算中,所有矩阵运算操作指令都比较直观、简单。例如:a=b+c; a=a*b ;A=2*a2+3*a-5等。 而符号运算就不同了,所有涉及符号运算的操作都有专用函数来进行符号矩阵运算的函数:symadd(a,d) 符号矩阵的加symsub(a,b) 符号矩阵的减symmul(a,b) 符号矩阵的乘symdiv(a,b) 符号矩阵的除sympow(a,b) 符号矩阵的幂运算symop(a,b) 符号矩阵
14、的综合运算Your Name | Presentation Title | Date28例1:f= 2*x2+3*x-5; g= x2+x-7;h= symadd(f,g)h= 3*x2+4*x-12例2:f=cos(x);g= sin(2*x);symop(f,/,g,+,f,*,g) ans =cos(x)/sin(2*x)+cos(x)*sin(2*x)例1:f= 2*x2+3*x-5; g= x2+x-7; syms x f=2*x2+3*x-5; g= x2+x-7; h=f+gh = 3*x2+4*x-12例2:f=cos(x);g= sin(2*x); syms x f=cos(
15、x);g=sin(2*x); f/g+f*gans =cos(x)/sin(x)+cos(x)*sin(x) Your Name | Presentation Title | Date29符号运算函数:symsize 求符号矩阵维数charploy 特征多项式determ 符号矩阵行列式的值eigensys 特征值和特征向量inverse 逆矩阵transpose 矩阵的转置jordan 约当标准型simple 符号矩阵简化Your Name | Presentation Title | Date30 3.2.4符号微积分与积分变换 diff(f) 对缺省变量求微分 diff(f,v) 对指定
16、变量v求微分 diff(f,v,n) 对指定变量v求n阶微分 int(f) 对f表达式的缺省变量求积分 int(f,v) 对f表达式的v变量求积分 int(f,v,a,b) 对f表达式的v变量在(a,b) 区间求定积分 int(被积表达式,积分变量,积分上限, 积分下限) 定积分Your Name | Presentation Title | Date31 mtaylor(f,n) 泰勒级数展开 ztrans(f) Z变换 Invztrans(f) 反Z变换 Laplace(f) 拉氏变换 Invlaplace(f) 反拉氏变换 fourier(f) 付氏变换 Invfourier(f) 反付
17、氏变换Your Name | Presentation Title | Date32例1.计算 f=x*exp(-x*10)的Z变换 F=ztrans(f) F= z*exp(-10)/(z-exp(-10)2 syms x f=x*exp(-x*10); F=ztrans(f) F=ztrans(x*exp(-x*10);F =z*exp(-10)/(z-exp(-10)2Your Name | Presentation Title | Date33 3.2.5符号代数方程求解 matlab符号运算能够解一般的线性方程、非线性方程及一般的代数方程、代数方程组。当方程组不存在符号解时,又无其他
18、自由参数,则给出数值解。 命令格式: solve(f) 求一个方程的解 Solve(f1,f2, fn) 求n个方程的解Your Name | Presentation Title | Date34例1. f = ax2+bx+c 求解f=a*x2+b*x+c; solve(f) 对缺省变量x求解ans =1/2/a*(-b+(b2-4*a*c)(1/2)1/2/a*(-b-(b2-4*a*c)(1/2)solve(f , b ) 对指定变量b求解ans =-(a*x2+c)/xYour Name | Presentation Title | Date35例2. 符号方程cos(x)=sin(
19、x) tan(2*x)=sin(x)求解f1=solve(cos(x)=sin(x),f1 =1/4*pif2=solve(tan(2*x)=sin(x)f2 = 0acos(1/2+1/2*3(1/2)acos(1/2 -1/2*3(1/2)numeric(f2)ans = 0 0 + 0.8314i 1.9455 Your Name | Presentation Title | Date36例3. 解方程组 x+y+z=1 x-y+z=2 2x-y-z=1g1=x+y+z=1,g2=x-y+z=2,g3=2*x-y-z=1f=solve(g1,g2,g3)f=solve(x+y+z=1,x
20、-y+z=2,2*x-y-z=1)f =z = 5/6, y = -1/2, x = 2/3Your Name | Presentation Title | Date373.2.6 符号微分方程求解用一个函数可以方便地得到微分方程的符号解符号微分方程求解指令:dsolve命令格式:dsolve(f,g) f 微分方程,可多至12个微分方程的求解;g为初始条件 默认自变量为 x,可任意指定自变量t, u等 微分方程的各阶导数项以大写字母D表示Your Name | Presentation Title | Date38y的一阶导数 Dy或dtdydxdy22dtyd或22dxydy的二阶导数 D
21、2ynndtyd或nndxydy的 n 阶导数 Dnyy1,y2=dsolve(x1,x2,xn) 返回 微分方程的解Your Name | Presentation Title | Date39一阶微分方程dsolve(Dx=y,Dy=x,x(0)=0,y(0)=1)ans =x(t) = sin(t), y(t) = cos(t)二阶微分方程dsolve(D2y=-a2*y,y(0)=1,Dy(pi/a)=0)ans =cos(a*x)Your Name | Presentation Title | Date40 例3. 求该方程的解22dxyddxdy202y,1)0(y00 )(dxd
22、yy=dsolve(D2y+2*Dy+2*y=0,y(0)=1,Dy(0)=0)ans =exp(-x)*cos(x)+exp(-x)*sin(x)Your Name | Presentation Title | Date41 3.3 maple函数符号运算的扩展maple是专门进行数学运算的软件工具, 具有超强的符号运算能力,提供了 几乎包括所有数学领域的专用函数matlab依赖于maple的内核与函数库,扩 展了自己的符号运算功能。 matlab还设计了对maple库函数的调用功能使得已有的maple数学功能,可以扩充matlab中,作为自身符号运算能力的扩展。Your Name | Pr
23、esentation Title | Date42 3.3.1 maple 的调用格式maple(表达式) 将表达式送至maple内核,返回符号表达式结果。maple (函数,变量1,变量2) 调用maple函数,传递给定变量。Your Name | Presentation Title | Date43 例1. 化简三角函数式sin2x+cos2x a=maple(simplify(sin(x)2+cos(x)2);) a = 1 例4. 求f(t)=e-3tsint的拉式变换 f=maple(laplace(exp(-3*t)*sin(t),t,s);) f = 1/(s+3)2+1)Yo
24、ur Name | Presentation Title | Date444 matlab 画图基本绘图函数plot 二维线性图subplot 绘制子图figure() 创建一个图的窗口titel 图的标题xlabel x坐标ylabel y坐标grid 图显示网格hold 保持当前图形clf 清除图形和属性mesh 三维网线图plot3 三维图形surf 三维表面图Your Name | Presentation Title | Date45 4.1.2 基本绘图例子 二维图形Your Name | Presentation Title | Date46 结果Your Name
25、 | Presentation Title | Date47 三维图形 z=peaks(25); surf(z); colormap(hsv) surfc(z);Your Name | Presentation Title | Date48 5.控制系统matlab分析方法 5.1控制系统时域分析 5.2控制系统频域分析Your Name | Presentation Title | Date49 时域分析的一般方法 一个动态系统的性能常用典型输入作用下的响应来描述。响应是指零初始值条件下某种典型的输入函数作用下对象的响应,控制系统常用的输入函数为单位阶跃函数和脉冲激励函数(即
26、冲激函数)。在MATLAB的控制系统工具箱中提供了求取这两种输入下系统响应的函数q 求取系统单位阶跃响应:step()q 求取系统的冲激响应:impulse()Your Name | Presentation Title | Date50step()函数的用法q y=step(num,den,t):其中num和den分别为系统传递函数描述中的分子和分母多项式系数,t为选定的仿真时间向量,一般可以由t=0:step:end等步长地产生出来。该函数返回值y为系统在仿真时刻各个输出所组成的矩阵。q y,x,t=step(num,den):此时时间向量t由系统模型的特性自动生成, 状态变量x返回为空矩
27、阵。q y,x,t=step(A,B,C,D,iu):其中A,B,C,D为系统的状态空间描述矩阵,iu用来指明输入变量的序号。x为系统返回的状态轨迹。q 如果对具体的响应值不感兴趣,而只想绘制系统的阶跃响应曲线,可调用以下的格式: step(num,den);step(num,den,t);step(A,B,C,D,iu,t);step(A,B,C,D,iu);Your Name | Presentation Title | Date51 利用step函数画传递函数1/ (s2+0.5s+1)的阶跃响应 num=1; den=1,0.5,1; step(num,den)Your Name |
28、Presentation Title | Date52 练习:求G(S)=1/s*(s+1)离散域传递函数 num=1; den=1,1,0; T=1;%采样时间 numZ,denZ=c2dm(num,den,T,zoh); printsys(numZ,denZ)Your Name | Presentation Title | Date53impulse()函数的用法 求取脉冲激励响应的调用方法与step()函数基本一致。 y=impulse(num,den,t); y,x,t=impulse(num,den); y,x,t=impulse(A,B,C,D,iu,t) impulse(num,
29、den);impulse(num,den,t) impulse(A,B,C,D,iu);impulse(A,B,C,D,iu,t)Your Name | Presentation Title | Date54q 频率响应是指系统对正弦输入信号的稳态响应,从频率响应中可以得出带宽、增益、转折频率、闭环稳定性等系统特征。q 频率特性是指系统在正弦信号作用下,稳态输出与输入之比对频率的关系特性。频率特性函数与传递函数有直接的关系,记为:为相频特性为幅频特性其中)()()()()()()()()()()(wwwwXwXwAewAjwXjwXjwGioiowjioYour Name | Presenta
30、tion Title | Date55q 频域分析法是应用频率特性研究控制系统的一种典型方法。采用这种方法可直观地表达出系统的频率特性,分析方法比较简单,物理概念比较明确,对于诸如防止结构谐振、抑制噪声、改善系统稳定性和暂态性能等问题,都可以从系统的频率特性上明确地看出其物理实质和解决途经。通常将频率特性用曲线的形式进行表示,包括对数频率特性曲线和幅相频率特性曲线简称幅相曲线,MATLAB提供了绘制这两种曲线的函数。q 求取系统对数频率特性图(波特图):bode()q 求取系统奈奎斯特图(幅相曲线图或极坐标图):nyquist()Your Name | Presentation Title |
31、 Date56对数频率特性图(波特图)MATLAB提供了函数bode()来绘制系统的波特图,其用法如下:q bode(a,b,c,d):自动绘制出系统的一组Bode图,它们是针对连续状态空间系统a,b,c,d的每个输入的Bode图。其中频率范围由函数自动选取,而且在响应快速变化的位置会自动采用更多取样点。q bode(a,b,c,d,iu):可得到从系统第iu个输入到所有输出的波特图。q bode(num,den):可绘制出以连续时间多项式传递函数表示的系统的波特图。q bode(a,b,c,d,iu,w)或bode(num,den,w):可利用指定的角频率矢量绘制出系统的波特图。q 当带输出
32、变量mag,pha,w或mag,pha引用函数时,可得到系统波特图相应的幅值mag、相角pha及角频率点w矢量或只是返回幅值与相角。相角以度为单位,幅值可转换为分贝单位:magdb=20log10(mag)Your Name | Presentation Title | Date57margin()函数margin函数可以从频率响应数据中计算出幅值裕度、相角裕度以及对应的频率。幅值裕度和相角裕度是针对开环SISO系统而言,它指示出系统闭环时的相对稳定性。当不带输出变量引用时,margin可在当前图形窗口中绘制出带有裕量及相应频率显示的Bode图,其中幅值裕度以分贝为单位。q 幅值裕度是在相角为
33、-180度处使开环增益为1的增益量,如在-180度相频处的开环增益为g,则幅值裕度为1/g;若用分贝值表示幅值裕度,则等于:-20*log10(g)。类似地,相角裕度是当开环增益为1.0时,相应的相角与180度角的和。q margin(mag,phase,w):由bode指令得到的幅值mag(不是以dB为单位) 、相角phase及角频率w矢量绘制出带有裕量及相应频率显示的bode图。q margin(num,den) :可计算出连续系统传递函数表示的幅值裕度和相角裕度并绘制相应波特图。类似,margin(a,b,c,d)可以计算出连续状态空间系统表示的幅值裕度和相角裕度并绘制相应波特图。q g
34、m,pm,wcg,wcp=margin(mag,phase,w):由幅值mag(不是以dB为单位) 、相角phase及角频率w矢量计算出系统幅值裕度和相角裕度及相应的相角交界频率wcg、截止频率wcp,而不直接绘出Bode图曲线。Your Name | Presentation Title | Date58 5.2 Bode图 在自动控制系统中,我们经常会使用Bode的幅度裕度与 相位裕度来判断控制系统是否稳定。 例:利用matlab判断传递函数为(60 s + 30)/(0.52 s4 + 7.82 s3 + 26.3 s2 + s)的开环系统稳定性 num=60 30; den=13/25
35、 391/50 263/10 1 0; f=tf(num,den) bode(f) S= allmargin(f) margin(f)Your Name | Presentation Title | Date59Your Name | Presentation Title | Date60利用bode判断该传递函数(s + 2)/(3 s3 + 7 s2 + 5 s + 50)的系统是否稳定? num=1,2; den=3,7,5,50; s=tf(num,den); bode(s) margin(s)Your Name | Presentation Title | Date61奈奎斯特图(幅
36、相频率特性图)对于频率特性函数G(jw),给出w从负无穷到正无穷的一系列数值,分别求出Im(G(jw)和Re(G(jw)。以Re(G(jw) 为横坐标, Im(G(jw) 为纵坐标绘制成为极坐标频率特性图。q nyquist(a,b,c,d):绘制出系统的一组Nyquist曲线,每条曲线相应于连续状态空间系统a,b,c,d的输入/输出组合对。其中频率范围由函数自动选取,而且在响应快速变化的位置会自动采用更多取样点。q nyquist(a,b,c,d,iu):可得到从系统第iu个输入到所有输出的极坐标图。q nyquist(num,den):可绘制出以连续时间多项式传递函数表示的系统的极坐标图。
37、q nyquist(a,b,c,d,iu,w)或nyquist(num,den,w):可利用指定的角频率矢量绘制出系统的极坐标图。q 当不带返回参数时,直接在屏幕上绘制出系统的极坐标图(图上用箭头表示w的变化方向,负无穷到正无穷) 。当带输出变量re,im,w引用函数时,可得到系统频率特性函数的实部re和虚部im及角频率点w矢量(为正的部分)。可以用plot(re,im)绘制出对应w从负无穷到零变化的部分。Your Name | Presentation Title | Date62 利用matlab画(60 s + 30)/(0.52 s4 + 7.82 s3 + 26.3 s2 + s)
38、nyquist图 num=60 30; den=13/25 391/50 263/10 1 0; f=tf(num,den) nyquist(num,den)Your Name | Presentation Title | Date63 6. simulink 6.1简介及功能 6.2启动及基本操作Your Name | Presentation Title | Date646.1简介及功能Simulink是MATLAB最重要的组件之一,它提供一个动态系统建模、仿真和综合分析的集成环境。在该环境中,无需大量书写程序,而只需要通过简单直观的鼠标操作,就可构造出复杂的系统。Simulink具有适应
39、面广、结构和流程清晰及仿真精细、贴近实际、效率高、灵活等优点,并基于以上优点Simulink已被广泛应用于控制理论和数字信号处理的复杂仿真和设计。同时有大量的第三方软件和硬件可应用于或被要求应用于Simulink。Simulink是MATLAB中的一种可视化仿真工具, 是一种基于MATLAB的框图设计环境,是实现动态系统建模、仿真和分析的一个软件包,被广泛应用于线性系统、非线性系统、数字控制及数字信号处理的建模和仿真中。Simulink可以用连续采样时间、离散采样时间或两种混合的采样时间进行建模,它也支持多速率系统,也就是系统中的不同部分具有不同的采样速率。为了创建动态系统模型,Simulin
40、k提供了一个建立模型方块图的图形用户接口(GUI) ,这个创建过程只需单击和拖动鼠标操作就能完成,它提供了一种更快捷、直接明了的方式,而且用户可以立即看到系统的仿真结果。Simulink是用于动态系统和嵌入式系统的多领域仿真和基于模型的设计工具。对各种时变系统,包括通讯、控制、信号处理、视频处理和图像处理系统,Simulink提供了交互式图形化环境和可定制模块库来对其进行设计、仿真、执行和测试。.构架在Simulink基础之上的其他产品扩展了Simulink多领域建模功能,也提供了用于设计、执行、验证和确认任务的相应工具。Simulink与MATLAB紧密集成,可以直接访问MATLAB大量的工
41、具来进行算法研发、仿真的分析和可视化、批处理脚本的创建、建模环境的定制以及信号参数和测试数据的定义。Your Name | Presentation Title | Date65 6.2simulink启动及基本操作 在matlab命令窗口输入simulink回车。Your Name | Presentation Title | Date667 simulink control design7.1Triming and linearzing simulink models7.2 Automatic PID Tuning7.3 Design and analysis of control sys
42、tems in simulinkYour Name | Presentation Title | Date67 简介简介 Simulink中的Control System Toolbox 为系统地分析、设计和调节线性控制系统提供行业标准算法和工具。您可以将您的系统指定为传递函数、状态空间、零极点增益或频率响应模型。通过交互式工具和命令行函数(如阶跃响应图和波特图),您可以实现时域和频域中系统行为的可视化效果。可以使用自动 PID 控制器调节、波特回路整形、根轨迹方法、LQR/LQG 设计及其他交互式和自动化方法来调节补偿器参数。您可以通过校验上升时间、超调量、稳定时间、增益和相位裕度及其他要求
43、来验证您的设计。Your Name | Presentation Title | Date68主要功能主要功能线性系统的传递函数、状态空间、零极点增益和频率响应模型线性模型的串联、并联、反馈连接和一般框图连接用于分析稳定性和性能指标的阶跃响应、奈奎斯特图以及其他时域和频域工具根轨迹图、波特图、LQR、LQG 及其他经典工具和状态空间控制系统设计方法自动 PID 控制器调节模型表示方式转换、连续时间模型离散化和高阶系统的低阶近似计算开环系统稳定裕度,分析系统闭环稳定性等Control and Estimation Tools Manager(顶部)是一个基于工作流的 GUI,用来交互地分析、设计
44、和调节控制器。可用的工具包括根轨迹图、波特图和阶跃响应图(底部)。Your Name | Presentation Title | Date69 我们将通过以下几个例子利用simulink design control 来设计控制系统 1)控制系统开环响应的稳定裕度分析 2)Simulink model bode 响应Your Name | Presentation Title | Date707.1 控制系统开环响应的稳定裕度分析通过watertank例子展示如何利用线性分析工具来分析系统的开环响应步骤:1)打开simulink model sys=watertank; open_syste
45、m(sys)2) 打开线性化分析工具 Analysis Control Design Linear Analysis.3) 在simulink界面定义模型线性分析端口 右击PID Controller block 输入信号(Sum block输出).选择Linearization Points Input Point. 右击Water-Tank System 输出信号, 选择Linearization Points Output Point. 右击the Water-Tank System 输出信号选择 Linearization Points Open Loop.Your Name | Pr
46、esentation Title | Date71Your Name | Presentation Title | Date72 4)在Plot Result list of the Linear Analysis Tool, 选择 New Bode. 5)点击Linearize 6) 右击plot和选择Characteristics Minimum Stability Margins.计算最低稳定裕度Your Name | Presentation Title | Date73 4)在Plot Result list of the Linear Analysis Tool, 选择 New B
47、ode. 5)点击Linearize 6) 右击plot和选择Characteristics Minimum Stability Margins.计算最低稳定裕度Your Name | Presentation Title | Date74 7.2 simulink mode bode 响应 步骤: 1)打开simulink model sys=watertank; open_system(sys) 2) 打开线性化分析工具 Analysis Control Design Linear Analysis. 3) 在simulink界面定义模型线性分析端口 右击PID Controller bl
48、ock 输入信号(Sum block输出).选择Linearization Points Input Point. 右击Water-Tank System 输出信号, 选择Linearization Points Output Point. 右击the Water-Tank System 输出信号选择 Linearization Points Open Loop.Your Name | Presentation Title | Date75Your Name | Presentation Title | Date76 4)在Plot Result list of the Linear Anal
49、ysis Tool, 选择 New Bode. 5)点击LinearizeYour Name | Presentation Title | Date77 7.2 PID控制设计 PID Tuner 提供快速广泛的PID设计方法。通过该方法可以得到所需的系统设计需求。 使用PID Tuner设计步骤 1)打开PID Tuner 2)调整PID参数 3)导出PID设计参数Your Name | Presentation Title | Date78 7.2.1 设计实例 设计PID控制器,使被控制系统满足以下要求: 1)系统调整时间5s 2)零稳态误差Your Name | Presentatio
50、n Title | Date79 7.2.2设计步骤 1)打开模型 open_system(scdspeedctrlpidblock); 2) 打开the PID TunerYour Name | Presentation Title | Date80 3)调整PID参数 4)我们也可以通过选择extend 模式来选择系统带宽和相位裕度。 5)为了使调整时间为2s,通过调整带宽为1.23rad/s,相位裕度为72deg 6)点击Apply将调整好的参数写入到PID block 7)查看系统仿真结果是否满足要求。Your Name | Presentation Title | Date81 实践
51、题:利用PID tuner使watertank系统满足以下几点: 1)上升时间15s 2)调整时间50s 3)超调量60degYour Name | Presentation Title | Date82Your Name | Presentation Title | Date83 7.3 使用Automated Tuning 和 Bode graphical design设计控制器 通过以下实例,您将学到如何使用Simulink Control Design GUI 来设计单环反馈系统控制器。 设计需求: a) 超调量小于5% b) 上升时间小于5s 通过以下实例,我们将完成以下任务: 1)配置设计模型和GUI 2)使用robust-response-time tuning算法和Bode gr
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 《皮肤性病学湿疹》课件
- 行政后勤财务报销审核
- 母亲节 营销新视角
- 体育行业话务员工作总结
- 餐饮行业服务员的服务宗旨
- 体育场馆的卫生清洁
- 2023-2024年企业主要负责人安全培训考试题考题
- 2023-2024安全培训考试题及答案(新)
- 函授专科毕业自我鉴定15篇
- 课题研究报告
- 供应商可持续发展计划
- 生姜的产地分布
- 普通高中学业水平合格性考试(会考)语文试题(附答案)
- 统编语文八上文言文过关小测验-《愚公移山》
- 12、口腔科诊疗指南及技术操作规范
- 医药电商行业发展趋势报告
- 2020年10月自考00020高等数学一高数一试题及答案含评分标准
- 劳务派遣方案
- 电费异常问题筛选及处理途径
- 幼儿园中班语言绘本《三只蝴蝶》课件
- 高中英语校本教材《英语美文阅读与欣赏》
评论
0/150
提交评论