《3、MATLAB与Simulink基础.ppt》由会员分享,可在线阅读,更多相关《3、MATLAB与Simulink基础.ppt(35页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、 Lab of PEEDLab of PEEDBring Ideas TogetherBring Ideas Together电力电子与电力传动实验室 控制系统数字仿真与控制系统数字仿真与CADCADMATLAB与与SIMULINK基础基础张晓华张晓华 教授教授教授教授 /博士生导师博士生导师博士生导师博士生导师E-E-E-E-mail:xh_mail:xh_mail:xh_mail:xh_ Lab of PEEDLab of PEEDBring Ideas TogetherBring Ideas Together电力电子与电力传动实验室主要内容主要内容流程控制流程控制MATLAB运用与简单运
2、算运用与简单运算控制工具箱控制工具箱MATLAB绘图绘图数据处理数据处理SIMULINK基础基础 Lab of PEEDLab of PEEDBring Ideas TogetherBring Ideas Together电力电子与电力传动实验室MATLAB运用与简单运算运用与简单运算20世纪80年代,John Little与Clever Moler 建立Math Works公司在MATLAB基础上加入了SIMULINK等丰富实用的工具箱20世纪70年代,Clever Moler等编写了MATLAB(MATrix LABoratory)MATLAB是美国Math Works公司的软件产品,是一
3、个高级的数值分析、处理与计算软件;SIMULINK是基于模型化图形组态的动态系统仿真软件,是MATLAB的一个工具箱 Lab of PEEDLab of PEEDBring Ideas TogetherBring Ideas Together电力电子与电力传动实验室MATLAB运用与简单运算运用与简单运算简单数学运算简单数学运算:购买80个单位为0.89元的电阻,16个单位为12.2元的运放,25个单价1.82元的电容,共需多少钱例子 80*0.89+16*12.2+25*1.82ans=331.900 或者 res=80*0.89+16*12.2+25*1.82res=331.900 Lab
4、 of PEEDLab of PEEDBring Ideas TogetherBring Ideas Together电力电子与电力传动实验室MATLAB运用与简单运算运用与简单运算变量与数值显示格式变量与数值显示格式:变量规则变量的名字必须以字母开头(不超过一定的字符),之后可以使任意的字母、数字和下划线。数值显示常用格式Long(16位)、bank(2个十进制位)、short(默认)、short e(5位加指数)、long e(16位加指数)Lab of PEEDLab of PEEDBring Ideas TogetherBring Ideas Together电力电子与电力传动实验室M
5、ATLAB运用与简单运算运用与简单运算帮助功能:帮助功能:1.脚本文件M-文件 将部分程序或运算写成M-文件使得数据处理方便快捷2.在线帮助 灵活的使用help、lookfor、find的帮助命令能给MATLAB使用带来很大帮助。3.超文本帮助4.MATLAB的pdf说明书 Lab of PEEDLab of PEEDBring Ideas TogetherBring Ideas Together电力电子与电力传动实验室MATLAB运用与简单运算运用与简单运算矩阵运算:矩阵运算:1.键盘输入2.语句生成3.从文件中读取简单矩阵输入:注意行、列的生成from:step:to、linespace、
6、logspace Lab of PEEDLab of PEEDBring Ideas TogetherBring Ideas Together电力电子与电力传动实验室MATLAB运用与简单运算运用与简单运算矩阵运算矩阵运算:转置矩阵运算:a=1 2;4 5 ;b=ab=1 4 2 5乘方 a=1 2;4 5 ;a2=710815 22 a=1 2;4 5 ;a.2=1 49 16 Lab of PEEDLab of PEEDBring Ideas TogetherBring Ideas Together电力电子与电力传动实验室MATLAB运用与简单运算运用与简单运算矩阵运算矩阵运算:关系运算矩
7、阵运算:逻辑运算a=1:9;b=a4b=0 0 0 0 1 1 1 1 1c=(a4)&(aa=1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 a(2:3,3:4)ans=7 8 11 12 Lab of PEEDLab of PEEDBring Ideas TogetherBring Ideas Together电力电子与电力传动实验室主要内容主要内容流程控制流程控制MATLAB运用与简单运算运用与简单运算控制工具箱控制工具箱MATLAB绘图绘图数据处理数据处理SIMULINK基础基础 Lab of PEEDLab of PEEDBring Ideas Toge
8、therBring Ideas Together电力电子与电力传动实验室MATLABMATLAB绘图绘图绘图:绘图:二维图形x=0:0.01:pi*3;y=sin(x);plot(x,y)title(First Figure Example)xlabel(Time(s)ylabel(Value(v)grid ongtext(sinx)legend(sinx)Lab of PEEDLab of PEEDBring Ideas TogetherBring Ideas Together电力电子与电力传动实验室MATLAB绘图绘图绘图:绘图:三维图形x=-4:0.1:4;y=x;x,y=meshgri
9、d(x,y);z=3*(1-x).2.*exp(-(x.2)-(y+1).2).-10*(x/5-x.3-y.5).*exp(-x.2-y.2).-1/3*exp(-(x+1).2-y.2);mesh(x,y,z)Lab of PEEDLab of PEEDBring Ideas TogetherBring Ideas Together电力电子与电力传动实验室主要内容主要内容流程控制流程控制MATLAB运用与简单运算运用与简单运算控制工具箱控制工具箱MATLAB绘图绘图数据处理数据处理SIMULINK基础基础 Lab of PEEDLab of PEEDBring Ideas Together
10、Bring Ideas Together电力电子与电力传动实验室数据处理数据处理矩阵分解:矩阵分解:特征值分解三角分解奇异分解v,d=eig(a,b)v,d=eig(a)l,u,p=lu(a)u,s,v=svd(a)Lab of PEEDLab of PEEDBring Ideas TogetherBring Ideas Together电力电子与电力传动实验室数据处理数据处理多项式处理:多项式处理:多项式表示p=1-12 0 25 116p=1 -12 0 25 116r=roots(p)r=11.74728287082272 2.70282074384101 -1.225051807331
11、87+1.46720800872890i-1.22505180733187-1.46720800872890ipp=poly(r)pp=1.0000 -12.0000 0 25.0000 116.0000 Lab of PEEDLab of PEEDBring Ideas TogetherBring Ideas Together电力电子与电力传动实验室多项式运算数据处理数据处理多项式处理:多项式处理:a=1 2 3;b=1 2;c=conv(a,b)%乘法c=1 4 7 6 q,r=deconv(c,b)%除法q=%商多项式 1 2 3r=%余数多项式 0 0 0 0 Lab of PEEDL
12、ab of PEEDBring Ideas TogetherBring Ideas Together电力电子与电力传动实验室曲线拟合数据处理数据处理曲线拟合与插值:曲线拟合与插值:x=0:0.1:1;y=-.447 1.978 3.28 6.16 7.08 7.34 7.66 9.56 9.48 9.30 11.2;p=polyfit(x,y,2);xi=0:0.01:1;yi=polyval(p,xi);plot(x,y,xi,yi)插值函数t=interpl(x,y,x0,method)Lab of PEEDLab of PEEDBring Ideas TogetherBring Idea
13、s Together电力电子与电力传动实验室极小化数据处理数据处理数据分析:数据分析:fx=10*exp(-x)*cos(x);fplot(fx,2,5)xmin=fmin(fx,2,5)xmin=2.35619746669214求零点xzero=fzero(fx,5)xzero=4.71238898038469xzero=fzero(fx,2)xzero=1.57079632679490 Lab of PEEDLab of PEEDBring Ideas TogetherBring Ideas Together电力电子与电力传动实验室t,x=ode23(xfun,t0,tf x0,tol,t
14、race)数据处理数据处理常微分方程数值解:常微分方程数值解:t,x=ode23(xfun,t0,tf x0,tol,trace)function yp=vdp(t,x)yp(1)=x(2);yp(2)=2*(1-x(1)2)*x(2)-x(1);%令u=2 在命令行求解这个方程:t,x=ode45(vdp,0,20,1;1);plot(t,x(:,1),t,x(:,2);%画出x和dx/dt的时域波形 Lab of PEEDLab of PEEDBring Ideas TogetherBring Ideas Together电力电子与电力传动实验室主要内容主要内容流程控制流程控制MATLAB
15、运用与简单运算运用与简单运算控制工具箱控制工具箱MATLAB绘图绘图数据处理数据处理SIMULINK基础基础 Lab of PEEDLab of PEEDBring Ideas TogetherBring Ideas Together电力电子与电力传动实验室流程控制流程控制For循环for x=array commandendwhile循环for expression commandendIf-else-endif expression1 commands1ifelse expression2 commands2 -else commandsend Lab of PEEDLab of PEED
16、Bring Ideas TogetherBring Ideas Together电力电子与电力传动实验室主要内容主要内容流程控制流程控制MATLAB运用与简单运算运用与简单运算控制工具箱控制工具箱MATLAB绘图绘图数据处理数据处理SIMULINK基础基础 Lab of PEEDLab of PEEDBring Ideas TogetherBring Ideas Together电力电子与电力传动实验室控制工具箱控制工具箱状态空间系统建模:系统建模:传递函数零极点部分分式 Lab of PEEDLab of PEEDBring Ideas TogetherBring Ideas Togethe
17、r电力电子与电力传动实验室num,den=ss2tf(a,b,c,d,iu)控制工具箱控制工具箱模型转换和降阶:模型转换和降阶:z,p,k=ss2zp(a,b,c,d,iu)ad,bd=c2d(a,b,Ts)a,b,Ts=c2d(ad,bd)例例3-1 绘制 的nyquist图和bode图。解解 MATLAB编程如下:num=10;den=1,1.2,10;w=logspace(-2,2,1000);nyquist(num,den,w)gridbode(num,den,w)grid Lab of PEEDLab of PEEDBring Ideas TogetherBring Ideas To
18、gether电力电子与电力传动实验室控制工具箱控制工具箱 Lab of PEEDLab of PEEDBring Ideas TogetherBring Ideas Together电力电子与电力传动实验室主要内容主要内容流程控制流程控制MATLAB运用与简单运算运用与简单运算控制工具箱控制工具箱MATLAB绘图绘图数据处理数据处理SIMULINK基础基础 Lab of PEEDLab of PEEDBring Ideas TogetherBring Ideas Together电力电子与电力传动实验室Simulink的操作的操作SIMULINK基础基础 Lab of PEEDLab of P
19、EEDBring Ideas TogetherBring Ideas Together电力电子与电力传动实验室数值仿真数值仿真SIMULINK基础基础 Lab of PEEDLab of PEEDBring Ideas TogetherBring Ideas Together电力电子与电力传动实验室系统分析系统分析SIMULINK基础基础例例3-2:已知某控制系统的动态结构图如下图所示,若试利用MATLAB/Simulink工具分析 值与输入幅值对系统输出性能的影响。Lab of PEEDLab of PEEDBring Ideas TogetherBring Ideas Together电力
20、电子与电力传动实验室plot(time,output)%绘制曲线grid on%显示格栅线xlabel(time/s)%标记横坐标轴 ylabel(output)%标记纵坐标轴title(Simulation result)%加图名系统分析系统分析SIMULINK基础基础 Lab of PEEDLab of PEEDBring Ideas TogetherBring Ideas Together电力电子与电力传动实验室系统分析系统分析SIMULINK基础基础(b)不同的a)=1时图3-15 磁滞回环系统的阶跃响应 Lab of PEEDLab of PEEDBring Ideas Togeth
21、erBring Ideas Together电力电子与电力传动实验室系统分析系统分析SIMULINK基础基础图3-16输入幅值改变后仿真结果 Lab of PEEDLab of PEEDBring Ideas TogetherBring Ideas Together电力电子与电力传动实验室本章小结本章小结MATLAB是基于矩阵的工具包,注意应用MATLAB时思路的 转换。使用MATLAB编写算法时注意最好不超过50行,且尽量少用 for、while的语句。MATLAB里有充分的资源用来分析数据,在应用的同时注意数 据分析的基本原理。MATLA有丰富的工具箱可以对许多的系统进行建模、仿真、分析。在使用smulink时注意合理选择步长。MATLAB有许多的“帮助”资源,对学习和掌握MATLAB很重要,应该在自学中广为利用。作为一种软件工具,MATLAB需要我们在具体的应用中学习、体会与提高。Lab of PEEDLab of PEEDBring Ideas TogetherBring Ideas Together电力电子与电力传动实验室The end