还剩7页未读,继续阅读
文本内容:
复习MATLAB、实现符号函数1l,x0,y=sgnx=0,x=0,-l,x0运算功能的函数文献为mfunction y=sgnxifx0yi=-i;elseif x==0yi=o;elseyi=i;endy=yl;、求满足的最大正整数的程序为:2l+2+3+...n100n MATLABsum=0;n=0;while sum100n=n+l;sum=sum+n;end sum=sum-n;n=n-l;n,sum
3、m文献有两种形式,一种称为命令文献(Script File),另一种称为函数文献(Function)两种文献的扩展名都是File,m、反馈控制系统品质规定稳定性、精确性、迅速性
4、按不一样系统的特性方程式,可将自动控制系统分为线性系统和非线性系统
5、控制有关的工具箱6MATLAB
(1)控制系统工具箱()系统辨识工具箱2
(3)模型预测控制工具箱
(4)鲁棒控制工具箱()神经网络工具箱
5、系统的构成7MATLAB
(1)开发环境
(2)[学函数库
(3)MATLAB语言
(4)图形处理系统
(5)
8、常用工具箱应用程序接口()控制类工具箱()应用数学类工具箱()信号处理类123工具箱()其他4常用工具箱、语句形式变量=体现式9MATLAB、常用命令10MATLAB关闭quit MATLAB关闭exit MATLAB清除命令窗口中的所有显示内容clc MATLAB清除工作空间中保留的所有变量clear、基本数据类型双精度数组、字符串数组、元胞数组、构造数组11MATLAB、矩阵的创立12直接输入法通过数据文献创立矩阵通过文献创立矩阵123m4通过函数创立矩阵冒号法
5、冒号法13冒号法构造向量
[1]冒号体现式的一般格式为向量名=初值步长终值冒号法构造矩阵
[2]一般格式为:表达矩阵的第列;A:J:A j表达矩阵的第行A1:A i』表达取矩阵的第行第列交叉位置的元素、矩阵的运算Ai Ai j14/矩阵的右除或\矩阵的左除A-1=invA矩阵的逆、求下面方程组的根15%列向量»B=[5;5;16];»X=A\B、矩阵的大小测度16行数m=sizeA4列数n=sizeA,2测行数和列数d=sizeA、矩阵的元素操作17A2,3找出元素A3,5=・l赋值、符号变量和符号体现式18
①用函数建立符号变量、符号体现式和符号矩阵sym调用格式为变量体现式=sym
②用函数建立符号变量、符号体现式和符号矩阵syms调用格式为Syms varlvar2var
3...、符号微积分19求体现式当时的极限limitf,x,a fx—a求体现式对缺省变量的微分difff f求体现式对缺省变量求阶微分difff,n fn求体现式对变量的微分difff v f v9求体现式对变量的阶微分difff,v,n fv n求体现式对缺省变量的积分intf f求体现式对变量的积分intf,vfv求体现式在区间上对变量的定积分intf,v,a,b fa,b v
20、已知fx=ax2+bx+c,求fx的微分和积分解»syms ab cx人»f=syma*x2+b*x+c f=八a*x2+b*x+c»difff,a ans=xA2int⑴ans=l/3*a*x八3+l/2*b*x八2+c*x»intf x,02ans=998/3*a+2*b+2*c、绘图命令21MATLAB例在]用红线画用绿圈画[0,2sinx,cos x.等分x=linspace0,2^pi,30;%%30y=sinx;z=cosx;plotx,y,T,x,z,go符号函数显函数、隐函数和参数方程画图ezplot命令lezplot6fx\[a,bj表达在绘制显函数的函数图.axb kfx2ezplot6fx,y\[xmin xmax,ymiii ymax]55表达在区间和绘制隐函数的函数图.xminxxmax yminyymaxfx,y=0,⑴3ezplot xTytJtmin,tmaxD表达在区间绘制参数方程的函数图.tminttmax x=xt,y=yt例在[上画隐函数山的图.・2,
0.5],[0,2]6“+$D=0解输入命令ezplot,expx+sinx*y\[-2,
0.5,0,2]例在上画、+的图形.[-1,2]y=e2sin3x2解先建文献M myfunl.mfunction Y=myfunlx.八Y=exp2*x+sin3*x2再输入命令fplot6myfun1\[-1,2]处理图形1加格栅在目前图上删除格栅GRID ON:GRID OFF:2二在目前图形的轴上加图例hh xlabelstring:x string在目前图形的轴上加图例hh=ylabelstring:y string在目前图形的轴上加图例hh=zlabelstring:z string在目前图形的顶端上加图例hh=titlestring:string3保持目前图形,以便继续画图到目前图上hold on释放目前图形窗口hold off仿真实例22Simulink例题、使用创立系统,求解非线性微分方程其初始值为方1Simulink3x-2//—4x=4氯绘制函数的波形.0=0,0=2,例题、力.质量系统,要拉动一种箱子拉力箱子质量为箱2f=lN,Mlkg,子与地面存在摩擦力[]淇大小与车子的速度成正比b=
0.4N/m/s质量M―拉力/bx—►M~T地面•具有摩擦力其运动方程式为f-bx=Mx拉力作用时间为建构的模型为2s,Gainl例题、力.弹簧■阻尼系统,假设箱子与地面无摩擦存在,箱子质量为3箱子与墙壁间有线性弹簧与阻尼器阻尼器重要用来吸Mlkg,k=lN/m b=
0.3N/m5取系统的能量,吸取系统的能量转变成热能而消耗掉现将箱子拉离静止状态2cm后放开,试求箱子的运动轨迹弹簧与阻尼器—W/—熔质后F——3——M地面运动方程式为Mx+kx+bx=
0、控制系统数学模型
23、传递函数模型1Transfer FunctionTF在中,控制系统的分子多项式系数和分母多项式系数分别用向量MATLAB num和表达,即denb,〃a,a]num=,den=[,,Qm-\n01m01n-
1、零极点增益模型2Zero-Pole-Gain ZPK在中,控制系统的零点和极点分别用向量和表达,即MATLAB ZP,,P=,〃〃]Z=[zi,Z2,・・・Zm][pi,・・・、传递函数模型3生成传递函数模型sys=tf num,den sys直接生成传递函数模型在命令窗口中输入MATLAB»sys=tf
[132],
[1573]、零极点增益模型4%建立持续系统的零极点增益模型分别对sys=zpk z,p,k sysz,p,k应系统的零点向量,极点向量和增益%将零极点增益模型转换为传递函数模型sys2=tf sys【例已知控制系统的传递函数为,用建立其数学模型
2.1]MATLABGs=【解】生成持续传递函数模型在命令窗口中输入:1MATLAB;»num=
[132];»den=
[1573]»sys=tf num,dens+
0.ls+
0.2Gs=【例】系统的零极点增益模型为
2.3s+
0.3『—建立其传递函数模型MATLAB【解】在命令窗口中输入MATLAB;;;»z=[-
0.L-
0.2]p=[-
0.3,-
0.3]k=1%建立系统的零极点增益模型»sys=zpk z,p,k、模型连接5串联连接1格式sys=series sysl,sys2并联连接2格式sys=parallel sysl,sys2反馈连接3格式sys=feedback sysl,sys2,sign、时域分析
24、峰值时间1%求出的峰值及对应的时间%[Y,k]=maxy y获得峰值时间timetopeak=tk时域响应性能指标求取、超调量2%求取系统的终值C=dcgainG%求出的峰值及对应的时间[Y,k]=maxy y%计算超调量percentovershoot=100*Y-C/C、上升时间3C=dcgainG n=l whileynC n=n+l endm=l;risetime=tn、调整时间4C=dcgainGi=lengthtwhile y⑴
0.98*CyivL02*Ci=i-lend※※例1已知二阶系统传递函数为Gs=,编程求取系统的5+1-305+1+30Settingtime=ti性能指标G=zpk[],[・l+3*i,・l-3*i],3;%计算最大峰值时间和它对应的超调量C=dcgainG[y,t]=stepG;plott,y grid[Y,k]=maxy;%获得最大峰值时间timeopeak=tk%计算超调量percentovershoot=100^Y-C/C%计算上升时间n=lwhile ynCn=n+l endrisetime=tn%计算稳态响应时间i=lengtht;whileyi
0.98*Cyi
1.02^Ci=i-l;endsettingtime=ti2例已知单位负反馈系统,其开环传递函数为,其中血2Gs=—%—COn=l,ss+2试绘制分别为』.』.时其单位负反馈系统的单位阶跃响应曲线C0024,
0.6,
0.925wn=lsigma=[0,
0.2,
0.4,
0.6,
0.9J.2J.5]figurel;hold oniHim=wn*wnt=linspace0,20,200,%将t在0到20之间均等提成200份for i=sigmaden=conv[l,0],[l,2*wn*i];sl=tfnum,densys=feedbacksl4stepsys,tgridend经典二阶系统取不一样阻尼比时的单位阶跃响应,titledhold ongtext,sigma=0,;gtext,sigma=
0.2,;gtext,sigma=
0.4,;gtexttsigma=.6,;gtextfsigma=
0.9,;gtext,sigma=
1.2,;gtext,sigma=
1.5,;例已知单位负反馈的二阶系统,其开环传函为一,其中试绘3Gs=--T=l,575+1制分别为时,其单位负反馈系统的单位阶跃响应曲线k
0.1,
0.2,
0.5,
0.8,
1.0,
2.4T=1k=[
0.1,
0.2,
0.5,
0.
84.0,
2.4]t=linspace020,200f num=l;den=conv[l,0],[T4]for j=l:69sl=tfnum^kj,den sys=feedbacksl,l y:J=stepsys,t;end plott,y:,l:6;grid经典二阶系统取不一样开环增益时的单位阶跃响应,titlegtext,k=
0.1,;gtext,k=
0.2,;gtext,k=
0.51;gtext,k=
0.8,;gtext,k=
1.0,;gtext,k=
2.4,;例已知单位负反馈的二阶系统,其中试绘制分别为4T=l,K=l,0,
0.05,
0.2,
0.5,
1.0,
2.4时,其单位负反馈系统的单位阶跃响应曲线T=1k=l tou=[0,
0.05,
0.2,
0.5J.0,
2.4]t=linspace0,20,200,num=l forj=l:6den=conv[l,0]JT4+touj]sl=tfnum^k,den sys=feedbacksl,l y:J=stepsys,t;endplott,y46;grid经典二阶系统采用输出微分反馈时的单位阶跃响应,titlegtextftou=0,;gtext,tou=
0.05,;gtext,tou=
0.2,;gtextltou=
0.5,;gtext,tou=
1.0,;gtext,tou=
2.4,;、生成特定的鼓励信号的函数25gensig格式[u,t]=gensigtype,tau功能按指定的类型和周期生成特定类型的鼓励信号其中变元可type tauu type取字符为,正弦、,方波、,脉冲sin squarepulse、单位冲激响应函数26impulse格式impulsesys例系统传递函数为=一:——4Gs s+s+4求脉冲响应程序如下MATLAB%生成传递函数模型sys=tf4Jl14];%计算并绘制系统的单位冲激响应impulsesys;脉冲响应,;title、任意输入的响应函数27lsim格式Isimsys,u,T功能计算和绘制模型在任意输入、持续时间的作用下的输出不返LTI sysu Ty,回数据,只返回图形C+I※※例求系统Gs=—9s2+2s+5的方波响应,其中方波周期为秒,持续时间秒,采样周期为秒
6120.1程序为MATLAB[u,t]=gensig,square\642,
0.1;%生成方波信号plotLu;・」;hokl on;%绘制鼓励信号%生成传递函数模型sys=tf
[14]J1^5];%系统对方波鼓励信号的响应lsimsys,u,t;、阶跃响应函数格式27step stepsys、图绘制与图绘制28Bode Nyquist图绘制Bode bodesys图绘制Nyqusit nyquistsys例试绘制开环系统的曲线,判断闭环系统的稳定性,并求出闭环系Hs Nyquist统的单位冲激响应其中〃s=----------------s+5s—2程序为MATLABk=50;z=[];p=[-5,2];sys=zpkz,p,k;figurel;nyquistsys;titlefNyquist曲线图;figure2;sb=feedbacksys,l;单位冲激响应,;impulsesb;titleC、常用操作界面包括命令窗口、工作空间窗口浏览器、命令历史窗29MATLAB口、目前目录窗口、内存数组编辑器、文献编辑/调试器、协助导航/浏览器、M图形窗口等、中用于清除图形窗、用于清除指令窗中显示内容、用于30MATLAB elfclc clear清除工作空间中保留的变量MATLAB、为了使两个的图形在同一种坐标显示,可以用命令进行图形保持,31plot holdon一种图形窗口上绘制多种图形可以用函数进行分割窗可以使用subploK□o grid命令为图形添加网格on、求可逆矩阵的逆矩阵的指令是_32A invA、文献包括_脚本—文献和函数—文献.33M M_M、在一种元胞数组中寻访第行第列元胞元素用;寻访数组第行第34A23A2,32列元胞中的内容用⑵}3A
3、“左除”与“右除”有什么区别?35在一般状况下,左除是的解,右除是的解,一般状况下,x=a\b a*x=b x=b/a x*a=ba\bwb/a。
个人认证
优秀文档
获得点赞 0