MATLABSimulink与控制系统仿真实验报告.docx

上传人:b****8 文档编号:10103907 上传时间:2023-02-08 格式:DOCX 页数:12 大小:20.56KB
下载 相关 举报
MATLABSimulink与控制系统仿真实验报告.docx_第1页
第1页 / 共12页
MATLABSimulink与控制系统仿真实验报告.docx_第2页
第2页 / 共12页
MATLABSimulink与控制系统仿真实验报告.docx_第3页
第3页 / 共12页
MATLABSimulink与控制系统仿真实验报告.docx_第4页
第4页 / 共12页
MATLABSimulink与控制系统仿真实验报告.docx_第5页
第5页 / 共12页
点击查看更多>>
下载资源
资源描述

MATLABSimulink与控制系统仿真实验报告.docx

《MATLABSimulink与控制系统仿真实验报告.docx》由会员分享,可在线阅读,更多相关《MATLABSimulink与控制系统仿真实验报告.docx(12页珍藏版)》请在冰豆网上搜索。

MATLABSimulink与控制系统仿真实验报告.docx

MATLABSimulink与控制系统仿真实验报告

MATLABSimulink与控制系统仿真实验报告

  

  MATLAB/Simulink与控制系统仿真实验报告

  姓名:

  喻彬彬  学号:

  K031541725  

  实验1、MATLAB/Simulink仿真基础及控制系统模型的建立

  一、实验目的

  1、掌握MATLAB/Simulink仿真的基本知识;2、熟练应用MATLAB软件建立控制系统模型。

二、实验设备

  电脑一台;MATLAB仿真软件一个三、实验内容

  1、熟悉MATLAB/Smulink仿真软件。

  2、一个单位负反馈二阶系统,其开环传递函数为G(s)10。

用Simulink建立该s23s控制系统模型,用示波器观察模型的阶跃响应曲线,并将阶跃响应曲线导入到MATLAB的工作空间中,在命令窗口绘制该模型的阶跃响应曲线。

  3、某控制系统的传递函数为

  Y(s)G(s)s50。

用Simulink建

  其中G(s)2X(s)1G(s)2s3s立该控制系统模型,用示波器观察模型的阶跃响应曲线,并将阶跃响应曲线导入到MATLAB的工作空间中,在命令窗口绘制该模型的阶跃响应曲线。

  4、一闭环系统结构如图所示,其中系统前向通道的传递函数为

  20,而且前向通道有一个[-,]的限幅环节,图中用N表G(s)s12s20s示,反馈通道的增益为,系统为负反馈,阶跃输入经倍的增益作用到系统。

用Simulink建立该控制系统模型,用示波器观察模型的阶跃响应曲线,并将阶跃响应曲线导入到MATLAB的工作空间中,在命令窗口绘制该模型的阶跃响应曲线。

  四、实验报告要求

  实验报告撰写应包括实验名称、实验内容、实验要求、实验步骤、实验结果及分析和实验体会。

五、实验思考题

  总结仿真模型构建及调试过程中的心得体会。

  1

  题1、

  利用Simulink的Library窗口中的【File】→【New】,打开一个新的模型窗口。

分别从信号源库、输出方式库、数学运算库、连续系统库中,用鼠标把阶跃信号发生器、示波器、传递函数和相加器4个标准功能模块选中,并将其拖至模型窗口。

  按要求先将前向通道连好,然后把相加器的另一个端口与传递函数和示波器的线段连好,形成闭环反馈。

双击传递函数。

打开其“模块参数设置”对话框,并将其中的numerator设置为“[10]”,denominator设置为“[130]”,将相加器设置为“+-”。

绘制成功后,如图1所示。

  对模型进行仿真,运行后双击示波器,得到系统的阶跃响应曲线如图2所示。

  图1

  图2

  题2:

  分别将SimulinkLibraryBrowser中的以下模块依次拖到untitled窗口中,连接后便得到整个控制系统的模型,如图3所示。

  2

  图3

  对模型进行仿真,运行后双击示波器,得到系统的阶跃响应曲线如图4所示。

  图4题3:

  在MATLAB中的SimulinkLibraryBrowser窗口下找到符合要求的模块,搭建模型,如图5所示。

  图5

  3

  修改各模块参数,运行仿真,单击“start”,点击示波器,得到如下结果,图6

  图6  

  4

  实验2MATLAB/Simulink在控制系统建模中的应用

  一、实验目的

  1、掌握MATLAB/Simulink在控制系统建模中的应用;二、实验设备

  电脑一台;MATLAB仿真软件一个三、实验内容

  1、给定RLC网络如图所示。

其中,ui(t)为输入变量,u0(t)为输出变量。

求解这个系统的传递函数模型,零极点增益模型以及状态空间模型。

  2、已知某双环调速的电流环系统的结构图如图所示。

试采用Simulink动态结构图求其线性模型。

  题1:

步骤1

  从数学上求出系统传递函数。

  根据电路基本定理,列出该电路的微分方程,如下:

  R1i1Ldi3u0uidti1i2i3

  同时还有uoi3R2

  i2C

  ddi3

  uoL

  dtdt

  整理以上方程,并在零初始条件下,取拉普拉斯变换,可得:

  5

  G(s)Uo(s)Ui(s)1LR1(R1Cs1)s1RR2212s2s2

  代入具体数值可得G(s)步骤2使用MATLAB程序代码如下。

  clearall;

  num=[0,1];den=[122];sys_tf=tf(num,den)[z,p,k]=tf2zp(num,den)sys_zpk=zpk(z,p,k)[A,B,C,D]=zp2ss(z,p,k);sys_ss=ss(A,B,C,D)step(sys_tf);

  [A,B,C,D]=linmod('Samples_4_12')

  [num,den]=ss2tf(A,B,C,D);printsys(num,den,'s');

  6

  四、实验报告要求

  实验报告撰写应包括实验名称、实验内容、实验要求、实验步骤、实验结果及分析和实验体会。

五、实验思考题

  总结仿真模型构建及调试过程中的心得体会。

  

  7

  实验3MATLAB/Simulink在时域分析法中的应用

  一、实验目的

  1、掌握时域分析中MATLAB/Simulink函数的应用;2、掌握MATLAB/Simulink在稳定性分析中的应用。

二、实验设备

  电脑一台;MATLAB仿真软件一个三、实验内容

  1、某随动系统的结构如图所示。

利用MATLAB完成如下工作:

对给定的随动系统建立数学模型;分析系统的稳定性,并且绘制阶跃响应曲线;计算系统的稳态误差;大致分析系统的总体性能,并给出理论上的解释。

  2、已知某二阶系统的传递函数为G(s)n,将自然频率固定为n1,2s22nsn分析变化时系统的单位阶跃响应;将阻尼比固定为,0,,...,1,2,3,5,分析自然频率n变化时系统的阶跃响应。

四、实验报告要求

  实验报告撰写应包括实验名称、实验内容、实验要求、实验步骤、实验结果及分析和实验体会。

五、实验思考题

  总结仿真模型构建及调试过程中的心得体会。

  题1:

  步骤1求取系统的传递函数。

  首先需要对系统框图进行化简。

不难看出,题中给出的系统包含两级反馈:

外环是单位负反馈;内环则是二阶系统与微分环节构成的负反馈。

可以利用MATLAB中的feedback函数计算出系统的传递函数,代码如下。

cic;

  clearaii;

  num1=[20];den1=[120];sys1=tf(num1,den1);

  8

  num2=[0];den2=[01];sys2=tf(num1,den2);

  sys_inner=feedback(sys1,sys2);sys_outer=feedback(sys_inner,1)程序运行结果为:

Transferfunction:

  20--------------s^2+4s+20

  这样就得到了系统的总传递函数,即G=  20  S^2+4s+20步骤2进行稳态分析。

  根据求得的传递函数,对系统进行稳态性分析,代码如下:

den=[1420];roots(den)

  pzmap(sys_outer);gridon;

  程序运行结果如下:

ans=-+  --

  系统的零极点分布图如图1所示

  Pole-ZeroAxis

  图1系统的零极点分布图

  步骤3求取阶跃响应

  计算系统的阶跃响应:

可以采用MATLAB编程实现,还可以利用simulink对系统进行建模,直接观察响应曲线。

MATLAB程序代码如下:

num=[20];den=[1420];=steo(num,den)plot(x,y);gridon;

  9

  程序运行结果如图2所示

  图2系统阶跃响应曲线

  采用simulink对系统进行建模,如图3所示

  图3利用Simulink对系统建模

  可以从scope中得到系统的不同响应曲线,如下图4,这与编程的结果完全相同的。

  图4系统阶跃响应曲线

  10

  步骤4分析系统的响应特性。

  在上面的语句=steo(num,den)执行之后,变量y中就存放了系统阶跃响应的具体数值。

从响应曲线中不难看出,系统的稳态值为1。

可以利用如下代码计算系统的超调量。

y_stable=1;

  max_response=max(y);

  sigma=(max_respomse-y_stable)/y_stable程序运行结果为sigma=  

  同时可看出,系统的稳态误差为0。

示波器error的波形显示如图5所示,可见,当阶跃输入作用系统2s后,输出就基本为1了。

  图5系统误差曲线

  还可以精确计算出系统的上升时间、峰值时间及调整时间。

如上所述,y中储存了系统阶跃响应的数据;同时,x中方存放了其中每个数据对应的时间,编写代码如下。

fori=1:

length(y)  Ify(i)>y_stable  break;  endendtr=x(i)

  [max_response,index]=max(y);tp=x(index)

  fori=1:

length(y)

  Ifmax(y(i:

length(y)))*y_stable  break  end  endendts=x(i)

  程序运次结果为tr=  tp=  ts=  

  11

  即上升时间为,峰值时间为,并且系统在经过后进入稳态。

题2

  利用MATLAB建立控制系统的数学模型,并且同时显示Wn=1,阻尼系数取不同值时系统的阶跃响应曲线,代码如下clc;clear;

  t=linspace(0,20,200)’;omega=1;

  omega2=omega^2;

  zuni=[0,,,,1,2,3,5];num=omega2;fork=1:

8

  den=[12*zuni(k)*omegaomega2];  sys=tf(num,den);  y(:

k)=step(sys,t);end

  figure

(1);

  plot(t,y);grid;

  gtext(‘zuni=0’);gtext(‘zuni=’);gtext(‘zuni=’);gtext(‘zuni=’);gtext(‘zuni=1’);gtext(‘zuni=2’);gtext(‘zuni=3’);gtext(‘zuni=5’);运行程序,结果如图6所示

  =0zuni====1zuni=2zuni=3zuni=52468101214161820

  图6固定自然频率,阻尼比变化时系统的阶跃响应曲线

  利用MATLAB在一幅图像的上绘制阻尼系数=,Wn从变化到1时系统的阶跃响应曲线,代码如下

  12

  clc;clear;

  t=linspace(0,20,200)’;zuni=;

  omega=[,,,,1];omega2=omega^2;fork=1:

5

  num=omega2(k);

  den=[12*zuni*omega(k)omega2(k)];  sys=tf(num,den);  y(:

k)=step(sys,t);end

  figure

(2);

  plot(t,y);grid;

  gtext(‘omega=’);gtext(‘omega=’);gtext(‘omega=’);gtext(‘omega=’);gtext(‘omega=’);运行代码,结果如图7所示

  =====

  图7固定阻尼系数,自然频率变化时系统的阶跃响应曲线

  13

  实验4MATLAB/Simulink在根轨迹分析法中应用

  一、实验目的

  1、掌握MATLAB/Simulink绘制根轨迹函数;2、掌握MATLAB/Simulink绘制根轨迹的方法。

二、实验设备

  电脑一台;MATLAB仿真软件一个三、实验内容

  1、已知单位负反馈控制系统的开环传递函数G(s)k(s1)。

画出这个

  s(s1)(s4)系统的根轨迹;确定使闭环系统稳定的增益值k;分析系统的阶跃响应性能;利用rltool对系统的性能进行分析。

实验代码1:

  clc;clear;num=[11];

  den=conv([10],conv([1-1],[14]));sys=tf(num,den)

  输出结果:

Transferfunction:

  s+1-----------------s^3+3s^2-4s

  实验代码2:

  rlocus(sys);gridon;

  title('ù1ì£í')

  输出结果:

  14

  图1

  步骤4:

设计系统的串联校正装置

  首先设计滞后环节,假定系统增益穿越频率为1,取零极点之比为10,系统响应曲线如图2

  图2

  相应代码如下:

  num_zhihou=[1];den_zhihou=[1];

  sys_zhihou=tf(num_zhihou,den_zhihou);sys_new=sys_open*sys_zhihoumargin(sys_new);

  再设计超前校正,系统响应曲线如图3

  20

  图3

  不难看出此时闭环系统的增益裕量为,相角裕量为,增益穿越频率为;各项参数均符合题设要求。

  相应代码如下:

  num_chaoqian=[1];den_chaoqian=[15];sys_chaoqian=tf(num_chaoqian,den_chaoqian);sys_new=sys_new*sys_chaoqian;margin(sys_new);

  对比校正前后系统的频率响应如图4

  图4

  代码如下:

  figure

(1);bode(sys_open);holdon;bode(sys_new);

  gtext('D£y°μ');gtext('D£yoóμ');gtext('D£y°μ');gtext('D£yoóμ');gridon

  综上所述,校正后的开环传递函数为

  20s^2+12s+1----------------------------------

  s^5+s^4+s^3+s^2+

  四、实验报告要求

  实验报告撰写应包括实验名称、实验内容、实验要求、实验步骤、实验结果及分析和实验体会。

五、实验思考题

  21

  总结仿真模型构建及调试过程中的心得体会。

  实验7MATLAB/Simulink在非线性系统中的应用

  一、实验目的

  1、掌握非线性系统阶跃响应的分析。

二、实验设备

  电脑一台;MATLAB仿真软件一个三、实验内容

  1、给定如图所示的单位负反馈系统。

在系统中分别引入不同的非线性环节,观察系统的阶跃响应,并且分析、比较不同的非线性环节对系统性能的影响。

  四、实验报告要求

  实验报告撰写应包括实验名称、实验内容、实验要求、实验步骤、实验结果及分析和实验体会。

五、实验思考题

  总结仿真模型构建及调试过程中的心得体会。

  步骤1利用MATLAB中的simulink工具箱,对题设控制系统进行建模,如下图1,没有任何非线性环节的系统,其阶跃响应曲线如下图2。

  图1  

  图2  

  22

  步骤2在系统中加入饱和非线性环节,系统框图3所示,其中,饱和非线性环节的输出上限为,输出下限为-;阶跃信号幅值为1

  图3

  利用simulink进行仿真,得到的阶跃响应曲线如图4

  图4

  为了比较饱和非线性环节的输出上下限变化时系统阶跃响应的不同,可以利用simulink中的ToWorkspace模块,将多次仿真的结果记录到工作空间的不同数组中,并且绘制在同以一幅图像上,此时,系统框图如图5。

  23

  图5

  设定饱和非线性环节输出上限为,输出下限为-,将仿真的结果记录到工作空间中的变量out1中;输出上限为输出下限为-时,仿真结果存放在out2中;输出上限为,输出下限为-时,仿真结果存放在out3中;输出上限为,输出下限为-时,仿真结果存放在out4中。

  将4种情况下系统的阶跃响应曲线绘制在同一幅图像中,代码如下。

  plot(tout1,out1);holdon;gridon;gtext('');plot(tout2,out2);gtext('');plot(tout3,out3);gtext('');plot(tout4,out4);gtext('');

  运行程序,结果如下图6:

  图6

  从图6中可以看出,当饱和非线性环节的输出范围较窄时,系统的阶跃响应速度较慢,上升时间长;同时,超调量较小,振荡不明显;随着输出范围的扩大,系统的响应速度加快,上升时间大大减少,同时伴有显著的振荡。

  这是因为饱和环节会对信号起到限幅作用。

不难想象,限制作用越强,系统的输出越不容易超调,响应也会越慢,这从图6中夜可以看出这一趋势。

  步骤3在系统中引入死区非线性环节,系统框图如图7所示。

其中,死区范围为[-,];阶跃信号幅值为1。

  24

  图7

  利用simulink进行仿真,得到的阶跃响应曲线如图7所示。

  同样,为了对比范围不同时系统的阶跃响应,采用Simulink中的ToWorkspace模块,将仿真的结果保存在工作空间的数组里。

绘制阶跃响应曲线的代码如下:

  plot(tout1,out1);holdon;gridon;gtext('’);plot(tout2,out2);gtext('’);plot(tout3,out3);gtext('’);plot(tout4,out4);gtext('’);

  运行程序,结果如图8:

  图8

  图中曲线上标注的、、、表示死区范围,不难看出,随着死区范围的增加,系统开始响应阶跃输入信号的时刻也逐渐推迟。

这是因为死区环节会将死区内的输入“忽略”,使得系统的响应变慢。

  25

  步骤4尝试在系统中同时加入死区单元和饱和单元,系统框图如图9所示。

  

  图9

  利用simulinh进行仿真,得到的阶跃响应曲线如图10所示:

  图10

  步骤5在系统中引入滞环非线性环节。

结果如下:

  26

  

  实验8MATLAB/Simulink在离散控制系统中的应用

  一、实验目的

  1、掌握

  2、了解采样周期对离散系统稳定性的影响。

二、实验设备

  电脑一台;MATLAB仿真软件一个三、实验内容

  1、建立题目中要求的数学模型,MATLAB代码如下。

  clc;clear;Ts=1;num=[1,1];den=[1,0,0];

  sys_continue=tf(num,den)

  sys_discrete=c2d(sys_continue,Ts,'zoh')sys_k=1;

  sys_open=sys_k*sys_discrete运行结果如下Transferfunction:

z--------------z^2-2z+1

  27

  Samplingtime:

1

  2、绘制系统的根轨迹。

代码如下

  figure

(1);rlocus(sys_discrete);

  运行结果如图1所示。

  图1

  从图中可以读到交点出的开环增益为K=0;也就是说,使闭环系统稳定的K的范围是0

为了验证这一结论,可以绘制系统幅频特性曲线和Nyquist曲线,代码如下

  sys_k=2;figure

(2);

  margin(sys_k*sys_discrete);figure(3);

  [dnum,dden]=tfdata(sys_k*sys_discrete,'v')dnyquist(dnum,dden,Ts)gridon;

  28

  系统幅频特性曲线

  Nyquist曲线

  从图中可以看出,K=2时,系统处于临界稳定状态,Nyquist曲线恰好穿过点。

可以确,系统稳定时,K的取值范围是。

  3、分析系统的阶跃响应。

给K赋予不同的值,代码如下。

  sys_k=1;figure(4);

  sys_close=feedback(sys_k*sys_discrete,1);[dnumc,ddenc]=tfdata(sys_close,'v');dstep(dnumc,ddenc,25);sys_k=2;figure(5);

  29

  sys_close=feedback(sys_k*sys_discrete,1);[dnumc,ddenc]=tfdata(sys_close,'v');dstep(dnumc,ddenc,25);sys_k=3;figure(6);

  sys_close=feedback(sys_k*sys_discrete,1);[dnumc,ddenc]=tfdata(sys_close,'v');dstep(dnumc,ddenc,25);

  运行结果如图所示

  30

  4、分析采样周期对系统稳定性的影响。

取TS=和TS=2,代码如下

  sys_k=2;figure(7);Ts=;

  sys_discrete=c2d(sys_continue,Ts,'zoh')sys_close=feedback(sys_k*sys_discrete,1);[dnumc,ddenc]=tfdata(sys_close,'v');dstep(dnumc,ddenc,25);sys_k=2;figure(8);Ts=2;

  sys_discrete=c2d(sys_continue,Ts,'zoh')sys_close=feedback(sys_k*sys_discrete,1);[dnumc,ddenc]=tfdata(sys_close,'v');dstep(dnumc,ddenc,25);

  结果如图所示

  31

  四、实验报告要求

  实验报告撰写应包括实验名称、实验内容、实验要求、实验步骤、实验结果及分析和实验体会。

五、实验思考题

  总结仿真模型构建及调试过程中的心得体会。

  32

  

  MATLAB/Simulink与控制系统仿真实验报告

  姓名:

  喻彬彬  学号:

  K031541725  

  实验1、MATLAB/Simulink仿真基础及控制系统模型的建立

  一、实验目的

  1、掌握MATLAB/Simulink仿真的基本知识;2、熟练应用MATLAB软件建立控制系统模型。

二、实验设备

  电脑一台;MATLAB仿真软件一个三、实验内容

  1、熟悉MATLA

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 党团工作 > 入党转正申请

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1