




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
PAGEPAGE9目录实验一Matlab语言编程 1一. 实验目的 1二. 具体实验内容、步骤、要求: 1实验二数值积分算法及函数调用练习 3一. 实验目的 3二. 实验实例介绍: 3实验三控制工具箱与SIMULINK软件应用 9一. 实验目的 9二. 实验预习要求: 9三. 学会调出、运行已由SIMULINK建立的仿真模型。 9四. 实验设计题目与要求: 10
实验一Matlab语言编程实验目的熟悉Matlab语言及其编程环境,掌握编程方法要求认真听取实验指导老师讲解与演示具体实验内容、步骤、要求:运行交互式学习软件,学习Matlab语言在Matlab的命令窗口下输入如下命令:INTRO,然后根据显示出来的幻灯片右面按钮进行操作,可按START—>NEXT—>NEXT按钮,一步步运行,观察。自编程序并完成上机编辑、调试、运行,存盘。(1).用Matlab命令完成矩阵的各种运算,例如:求出下列运算结果,并上机验证。A(:,1),A(2,:),A(1:2,2:3),A(2:3,2:3),A(:,1:2),A(2:3),A(:),A(:,:),ones(2,2),eye(2)
(2).绘制数学函数图形t=0:0.1:8;y=1-2*t.*sin(t);plot(t,y)理解命令文件和函数文件的区别,并自编函数文件并调用。学会通过Help,熟悉Matlab中为用户提供的功能各异的命令和函数。
实验二数值积分算法及函数调用练习实验目的理解数值积分算法,熟练掌握Matlab的函数调用。实验实例介绍:1.用Euler法求初值问题的数值解。设方程如下:(2-1式)t=[0,1]取步长h=0.1,名为FZSYZ1.M上机用如下程序名FZSYZ1.M可求出数值解。t0=0;t0=0;tf=1;x0=1;h1=0.1;t=[t0:h1:tf];n=length(t);u=x0;uu(1)=u;fori=2:ndu=u-2*t(i-1)/u;u=du*h1+u;uu(i)=u;endplot(t,uu,'b-')2.在Matlab中提供了现成的数值积分的函数,如ode1,ode23,ode45求解微分方程组,下面介绍ode23它为二阶/三阶的RKF法在MATLAB的ToolBox文件夹的MATLAB/funfun下的M文件,在此介绍其调用方法与应用例子如下:其中,系统函数名为描述系统状态方程的M函数的名称,该函数名在调用时应该用引号括起来(文件名字串)T0,tf为起始和终止时间X0系统初始状态变量的值(列向量)T01:控制解的精度。(缺省值为在ode23中)Trace:输出形式控制变量,非零则程序运行的每步都显示出来。T:输出参数返回积分的时间离散值(列向量)X0:输出参量,返回每个时间点值的解的列向量注意:系统函数的编写格式为固定的。Functionxdot=系统函数名(t,x)例如:若MATLAB求解初值问题的解,其方程如下:(2-2式);x(0)=1;t=[03]第一步:编写如下程序:functionxdot=fun22(t,x)xdot=x-2*t/x并以fun21.m存盘第二步:编写如下程序并以fzsy22.m存盘t0=0;tf=1;tol=1e-6x0=1;trace=1;[t,x]=ode23('fun22',t0,tf,x0,tol,trace)plot(t,x,'g-.')第三步:在命令窗口中运行fzsy22即可求出x的解,并画出曲线,如下:图2-1Euler方程和ode23算法求解的解曲线3.实验具体内容、步骤、要求:运行交互式软件中函数调用,学习程序;试将(2-2)方程改为用Euler方程求解是比较用ode23求解结果。Euler法程序:t0=0;t0=0;tf=3;x0=1;h1=0.1;t=[t0:h1:tf];n=length(t);u=x0;uu(1)=u;fori=2:ndu=u-t(i-1).^2;u=du*h1+u;uu(i)=u;endplot(t,uu,'b-')图形如2-1所示试将(2-1)方程改为用ode23算法调用函数求解,并试比较结果。FFun22.m文件functionxdot=fun22(t,x)xdot=x-2*t/xFun22_.m文件t0=0;tf=1;tol=1e-6x0=1;trace=1;[t,x]=ode23('fun22',t0,tf,x0,tol,trace)plot(t,x,'g-.')图2-2Euler方程和ode23算法求解的解曲线利用ode23和ode45求解线性时不变系统微分方程并绘出y(t)的曲线。式中程序和解曲线分别如下:FF4.m文件functiondy=fun4(t,y)dy=[-0.5*y(1)+y(2);-y(1)-0.5*y(2)];f4_.m文件[t,y]=ode23('fun4',0,4,[1;1])plot(t,y,'b-')Fu.m文件functiondy=fu(t,y)A=[-0.51;-1-0.5];dy=A*[y(1);y(2)]fu_.m文件[t,y]=ode45(@fu,[04],[0;1]);plot(t,y,'g-.')用Ode23求解用Ode45求解图2-3分别用ode23和ode45求解的曲线5.求出与的单位阶跃响应,并分别求出状态空间模型。程序和图形分别如下:b=[002]b=[002]a=[121]gs=tf(b,a)step(gs)holdon[A,B,C,D]=tf2ss(b,a)b1=[0001]a1=[2331]gs1=tf(b1,a1)step(gs1)[A1,B1,C1,D1]=tf2ss(b1,a1);;;;;图2-4G1(S)和G2(S)的单位阶跃响应曲线选做题一:已知系统传递函数为求对应的零极点模型,绘制系统阶跃响应。程序如下:a=200*[12]a=200*[12]poly2str(a,'s')b=conv([11],[11042])poly2str(b,'s')[z,p,k]=tf2zp(a,b)gs=zpk(z,p,k)gs1=tf(a,b)step(gs1)z=-2p=-5.0000+4.1231i-5.0000-4.1231i-1.0000k=200图形如2-5所示图2-5G(S)的单位阶跃响应曲线
实验三控制工具箱与SIMULINK软件应用实验目的熟悉工具箱及使用,进行系统仿真分析,通过仿真对系统进行校正校验。实验预习要求:必须先复习教材及上课介绍的有关控制工具箱命令与SIMULINK仿真工具的使用,并对实验题目做好准备。学会调出、运行已由SIMULINK建立的仿真模型。在打开MATLAB的窗口下,(1)输入SIMULINK或双击命令窗口工具栏左起第二个按钮(NEWSIMULINKMODEL)将会打开LibrarySIMULINK然后指向FILE菜单下拉菜单open调出fzsy31.mdl文件,然后再fzsy3.mdl文件的菜单观察并记录有关设置参数,然后指向Start下拉菜单单击一次观察输出图形。该仿真模型如下:图3-1模型一(2)按照下图修改上述仿真模型,观察分析系统输出。图3-2模型二图3-3模型一和二的系统响应曲线实验设计题目与要求:(1)参见题目要求,建立仿真模型,进行仿真试验与分析。然后,回答题目提出的问题。本习题介绍了滞后于超前补偿器在不稳定系统中的补偿作用。以双积分器为例:其补偿器有如下三种:Ⅰ、比例补偿器:Ⅱ、超前补偿器:Ⅲ、滞后补偿器:初步分析:绘制系统根轨迹图,并回答下列问题。①在第Ⅰ种情况下,系统能够稳定吗?增加的作用是什么?答:临界稳定,增加增加系统动态响应性能。②在第Ⅱ种情况下,系统能够稳定吗?增加的作用是什么?答:能稳定,增加减小系统超调,减小调节时间,增加系统快速性。③在第Ⅲ种情况下,系统能够稳定吗?增加的作用是什么?答:不能稳定,增加,系统发散,震荡频率和赋值增大。根轨迹图分别如下:图3-4第Ⅰ种情况下的系统根轨迹图图3-5第Ⅱ种情况下的系统根轨迹图图3-6第Ⅲ种情况下的系统根轨迹图上机实验:④设={0.1,0.5,1},对上述每一种情况进行仿真,求得其阶跃响应。要求将这三种情况的闭环阶跃响应绘制在一张图中。分析该图,证明在初步分析过程中所得到的结论。每种情况中,仿真时间可为{10,50,5}。图3-4采用比例补偿器的系统阶跃响应图3-5采用超前补偿器的系统阶跃响应图3-6采用滞后补偿器的系统阶跃
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
评论
0/150
提交评论