《MATLAB与Simulink基础.ppt》由会员分享,可在线阅读,更多相关《MATLAB与Simulink基础.ppt(36页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、 控制系统数字仿真与控制系统数字仿真与CADCADMATLAB与与SIMULINK基础基础主要内容主要内容流程控制流程控制MATLAB运用与简单运算运用与简单运算控制工具箱控制工具箱MATLAB绘图绘图数据处理数据处理SIMULINK基础基础MATLAB运用与简单运算运用与简单运算20世纪80年代,John Little与Clever Moler 建立Math Works公司在MATLAB基础上加入了SIMULINK等丰富实用的工具箱20世纪70年代,Clever Moler等编写了MATLAB(MATrix LABoratory)MATLAB是MATrix LABoratory(矩阵实验室)
2、的缩写,美国Math Works公司的软件产品,是一个高级的数值分析、处理与计算软件;SIMULINK是基于模型化图形组态的动态系统仿真软件,是MATLAB的一个工具箱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 MATLAB数据类型数据类型数据类型:数字、字符串、矩阵、单元型数据及结构型数据等。1、变量与常量、变量
3、与常量在MATLAB语言中变量的命名应遵循如下规则:变量名区分大小写;变量名长度不超过31位,第31个字符之后的字符将被MATLAB语言所忽略;变量名以字母开头,可以有字母、数字、下划线组成,但不能使用标点。MATLAB语言本身也具有一些预定义的变量,这些特殊的变量称为常量。定义变量时因避免与常量重复,以防改变这些常量的值,如果已改变了某外常量的值,可以通过“clear+常量名”命令恢复该常量的初始设定值(当然也可通过重新启动MATLAB系统实现)MATLAB运用与简单运算运用与简单运算2、变量与数值显示格式、变量与数值显示格式:数字变量运算对于简单的数字运算可以直接在命令窗口中一平常惯用的形
4、式输入:如1+2*3ans=7 这里“ans”是指当前的计算结果,若计算时用户没有对表达式设定变量,系统就自动赋当前结果给“ans”变量,也可以把计算结果赋给指定的变量。数值显示常用格式MATLAB语言中数值有多种显示形式,在默认情况下,若数据为整数,则以整数表示;若数据为实数,则以保留小数点后4位的精度近似表示,常用有:Long(16位)、bank(2个十进制位)、short(默认)、short e(5位加指数)、long e(16位加指数)MATLAB运用与简单运算运用与简单运算帮助功能:帮助功能:1.脚本文件M-文件 将部分程序或运算写成M-文件使得数据处理方便快捷2.在线帮助 灵活的使
5、用help、lookfor、find的帮助命令能给MATLAB使用带来很大帮助。3.超文本帮助4.MATLAB的pdf说明书MATLAB运用与简单运算运用与简单运算矩阵运算:矩阵运算:1.键盘输入2.语句生成3.从文件中读取简单矩阵输入:注意行、列的生成例如:a=1;b=2;c=3 x=5 b c;a*b a+c c/bX=5.0000 2.0000 3.000 2.0000 4.0000 1.5000 from:step:to 分别表示开始值、步长、结束值。还有 linespace、logspace例如a=1:2:10a=13 5 7 9a=linspace(1,10,5)表示开始值、结束值
6、、数据个数。MATLAB运用与简单运算运用与简单运算矩阵运算矩阵运算:转置矩阵运算:a=1 2;3 4 ;b=ab=1 3 2 4乘方 a=1 2;3 4 ;a2=71015 22表示矩阵乘方 a=1 2;3 4 ;a.2=表示元素对元素的乘方1 49 16MATLAB运用与简单运算运用与简单运算矩阵运算矩阵运算:关系运算矩阵运算:逻辑运算关系操作符、=、=、!=。a=1:9;b=a4b=0 0 0 0 1 1 1 1 1 c=a(a4)c=5 6 7 8 9逻辑操作符有&、。c=(a4)&(aa=1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16a(2:3,3:4)
7、ans=7 8 11 12主要内容主要内容流程控制流程控制MATLAB运用与简单运算运用与简单运算控制工具箱控制工具箱MATLAB绘图绘图数据处理数据处理SIMULINK基础基础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)MATLAB绘图绘图绘图:绘图:三维图形x=-4:0.1:4;y=x;x,y=meshgrid(x,y);z=3*(1-x).2.*e
8、xp(-(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)主要内容主要内容流程控制流程控制MATLAB运用与简单运算运用与简单运算控制工具箱控制工具箱MATLAB绘图绘图数据处理数据处理SIMULINK基础基础数据处理数据处理矩阵分解:矩阵分解:特征值分解三角分解奇异分解v,d=eig(a,b)v,d=eig(a)l,u,p=lu(a)u,s,v=svd(a)数据处理数据处理多项式处理:多项式处理:多项式表示p=1-12 0 25 116p=1 -12 0 25 116r=root
9、s(p)r=11.74728287082272 2.70282074384101 -1.22505180733187+1.46720800872890i-1.22505180733187-1.46720800872890ipp=poly(r)pp=1.0000 -12.0000 0 25.0000 116.0000多项式运算数据处理数据处理多项式处理:多项式处理: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 曲线拟合数据处理数据处理曲线拟合与插值:曲线拟合与插值:x=0
10、: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)极小化数据处理数据处理数据分析:数据分析: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=fzer
11、o(fx,2)xzero=1.57079632679490t,x=ode23(xfun,t0,tf x0,tol,trace)数据处理数据处理常微分方程数值解:常微分方程数值解: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的时域波形 主要内容主要内容流程控制流程控制MATLAB运用与简单运算运用与简单运算控制
12、工具箱控制工具箱MATLAB绘图绘图数据处理数据处理SIMULINK基础基础流程控制流程控制For循环for x=array commandendwhile循环for expression commandendIf-else-endif expression1 commands1ifelse expression2 commands2 -else commandsend主要内容主要内容流程控制流程控制MATLAB运用与简单运算运用与简单运算控制工具箱控制工具箱MATLAB绘图绘图数据处理数据处理SIMULINK基础基础控制工具箱控制工具箱状态空间系统建模:系统建模:传递函数零极点部分分式num
13、,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控制工具箱控制工具箱主要内容主要内容流程控制流程控制MATLAB运用与简单运算运用与简单运算控制工具箱控制工具箱MATLAB绘图绘图数据处理数据处
14、理SIMULINK基础基础Simulink的操作的操作SIMULINK基础基础数值仿真数值仿真SIMULINK基础基础系统分析系统分析SIMULINK基础基础例例3-2:已知某控制系统的动态结构图如下图所示,若试利用MATLAB/Simulink工具分析 值与输入幅值对系统输出性能的影响。plot(time,output)%绘制曲线grid on%显示格栅线xlabel(time/s)%标记横坐标轴 ylabel(output)%标记纵坐标轴title(Simulation result)%加图名系统分析系统分析SIMULINK基础基础系统分析系统分析SIMULINK基础基础(b)不同的a)=
15、1时图3-15 磁滞回环系统的阶跃响应系统分析系统分析SIMULINK基础基础图3-16输入幅值改变后仿真结果本章小结本章小结MATLAB是基于矩阵的工具包,注意应用MATLAB时思路的 转换。使用MATLAB编写算法时注意最好不超过50行,且尽量少用 for、while的语句。MATLAB里有充分的资源用来分析数据,在应用的同时注意数 据分析的基本原理。MATLA有丰富的工具箱可以对许多的系统进行建模、仿真、分析。在使用smulink时注意合理选择步长。MATLAB有许多的“帮助”资源,对学习和掌握MATLAB很重要,应该在自学中广为利用。作为一种软件工具,MATLAB需要我们在具体的应用中学习、体会与提高。The end