试验一Matlab和Simulink中传递函数的建立

  • 格式:doc
  • 大小:2.27 MB
  • 文档页数:35

目录实验一Matlab和Simulink中传递函数的建立 (2)实验二Matlab和Simulink中控制系统时域分析 (15)实验三转速反馈控制直流调速系统的仿真 (23)实验四转速、电流反馈控制直流调速系统的仿真 (31)实验一 Matlab 和Simulink 中传递函数的建立一. 实验目的1. 掌握在Matlab 中建立系统传递函数的方法。

2. 掌握在Simulink 中建立系统的传递函数及结构图的方法。

二.实验设备及仪器计算机、Matlab 软件三.实验内容Matlab 是由美国Mathworks 推出的一个科技应用软件,已经发展成为一个适用于多学科多工作平台的大型软件。

它涉及领域广泛,在本课程的实验中主要使用该软件的控制系统工具箱,以加深对控制理论及其应用的理解。

Simulink 是该公司专门为Matlab 设计提供的结构图编程与系统仿真的专用软件工具,该仿真环境下的用户程序其外观就是系统的结构图,使得系统仿真变得简便直观。

1. Matlab 中建立系统传递函数Matlab 启动后的用户界面如图1-1所示,工作空间窗口可以显示Matlab 中的各个变量。

命令窗口可以输入各种命令,这也是输入系统传递函数的窗口。

图1-1 Matlab 启动界面(1). Matlab 中求解微分方程求解微分方程所用的命令为dslove(“方程1”, “方程2”,…),该函数最多可同时求解12个方程。

方程中的各阶导数项以大写的D 表示,后面跟阶数,在接变量名,例如:D2y 代表22dx yd 。

例1:在Matlab 中求解下列微分方程,变量初始值为0)0(=c ,0)0(=c td 22222=++c dtdc dt cd 解:在命令窗口中键入命令如图1-2所示。

可见方程的解)cos(*22t y +-=,通过ezplot 命令可以绘制该微分方程解的曲线如图1-3所示。

图1-2 Matlab 中输入微分方程图1-3 ezplot 命令绘制图形(2). Matlab 中输入传递函数常用的命令有:tf ,printsys ,zpk 。

命令tf ,prinfsys 可以输入多项式形式的传递函数,首先根据传递函数写出分子多项式的系数向量num ,分母多项式的系数向量den 。

然后输入命令tf(num ,den )或printsys(num,den,’s ’)即可得到传递函数。

例2:在Matlab 中输入如下系统传递函数642392)(234+++++=s s s s s s G解:在Matlab 中输入如下命令,注意多项式系数输入时最高项系数在前,然后空格,次高项系数,直到常数项,如果某一项系数为零,在输入系数向量时补零。

在Matlab 中输入如下命令。

可以看到 tf 和 prinfsys 的执行结果是相同的。

图1-4 输入多项式传递函数例3:在Matlab 中输入如下传递函数 )10)(3)(2()5)(1(5)(+++++=s s s s s s s G 解:使用zpk 命令可以输入零极点式传递函数。

命令输入方法及结果如1-5图。

参数第一项为零点向量,第二项为极点向量,第三项为增益。

图1-5 输入零极点式传递函数(3)Matlab 中结构图的建立前面讨论了如何输入系统传递函数,下一步是如何将各个模块连接起来形成系统的结构图,Matlab 中有如下用于搭建系统结构图的命令:● conv :用于求两个多项式的卷积。

当需要两个多项式相乘时,使用该函数。

例如:(s+1)*(s+2)。

在Matlab 中输入num1=[1 1],num2=[1 2],num=conv(num1,num2),得到num=[1 3 2]。

Num 为乘积后的多项式系数向量。

● series: 用于将两个传递函数串联。

具体形式为series(num1,den1,num2,den2),num1,den1为第一个模块的分子,分母多项式系数向量。

num2,den2为第二个模块的分子,分母多项式系数向量。

或者series(sys1,sys2),sys 为使用tf 命令生成的传递函数。

● parallel: 用于将两个传递函数并联。

使用方法可采用分子分母多项式向量输入或传递函数输入,parallel(num1,den1,num2,den2)或parallel(sys1,sys2)。

● cloop: 用于求单位反馈系统的传递函数。

使用方法为cloop(num,den,sign),或cloop(sys,sign),Sign=1是正反馈Sign=-1是负反馈。

● feedback :用于求一般反馈系统传递函数。

使用方法为feedback(num1,den1,num2,den2,sign)或者feedback(sys1,sys2,sign)。

Sys2为反馈环节传递函数。

例4:系统结构图如图1-6所示。

使用Matlab 求如下系统的传递函数。

其中,101)(1+=s s G ,325)(22+++=s s s s G ,s s H 211)(+=图1-6 例4系统结构图解:步骤1,输入各环节传递函数如图1-7所示:图1-7 输入个环节传递函数步骤2,求)(1s G 和)(2s G 串联后的传递函数如图1-8所示:图1-8 串联G 1和G 2步骤3,求反馈后的传递函数如图1-9所示:图1-9 反馈后传递函数例5:求1-10图中的传递函数。

图1-10 例5系统结构图解:在Matlab中输入如下命令,步骤1,求取内环部分传递函数如图1-11:图1-11 例5内环部分传递函数步骤2,求系统传递函数如图1-12所示。

图1-12 例5系统传递函数2. Simulink 中建立系统结构图在Matlab工具栏中点击simulink选项,即可启动Simulink。

如图1-13所示。

图1-13 启动simulinkSimulink启动后的界面如图1-14所示,可以看到simulink包括许多用于不同领域仿真的功能模块组。

本课程实验中常用的功能有Continuous,Sources,Sinks,control system toolbox。

Continous包括用于连续系统仿真的功能模块,用来建立系统的结构图。

Sinks包括用于显示输出结果的功能模块。

Sources包括各种信号源,可以为系统提供输入信号。

Control system toolbox中的input point和output point在系统性能分析时经常用到。

图1-14 simulink启动界面在Simulink中点击Create new model项,出现建立系统模型窗口。

在continous组中用鼠标左键选择Transfer Fcn项,按住鼠标左键不放将其拖到系统模型建立窗口,在模型建立窗口中可以建立一个环节的方框图,如图1-15所示。

图1-15 在simulink中输入环节方框图双击该方框图,可以输入该方框图的分子分母多项式系数向量,设置该环节的参数,如图1-16所示。

图1-16 输入传递函数系数向量方框图的两边有用于连线的端子,可以将方框图连接起来组成复杂的系统。

例6:在simulink中构造图1-17所示的系统结构图。

图1-17 例6系统结构图解:在continous 功能模块组中选择Tansfer fcn 输入5.0210+s ,1101+s 。

选择Integrator 输入s1,选择Derivative 输入s 。

在Math Operations 选择Sum 进行信号的反馈求和运算,选择gain 输入增益0.2。

在Sources 中选择Step 阶越信号,作为系统的输入信号。

Sinks 中选择scope 示波器显示系统输出。

将所有模块用线连接起来组成系统结构图,如图1-18所示:图1-18 在simulink 中输入系统结构图虽然,该结构图与图1-17有些差别,但是表示的系统是相同的。

将模块拖到窗口中时,有时需要改变模块的方向,可以选中该模块,点击鼠标左键,选择Rotate block 可以旋转该模块。

如图1-19所示。

图1-19 simulink 中旋转方框图命令四.实验总结与练习1.在Matlab 中输入传递函数的方法都有那些,分别使用何种命令? 2.练习在Matlab 中用多种方法输入下面的传递函数,并写出相应命令。

64239)(231++++=s s s s s G )10)(3)(2()1(10)(2++++=s s s s s s G 3.练习在Simulink 中输入下面系统的结构框图。

图1-20 控制系统框图实验二 Matlab 和Simulink 中控制系统时域分析一. 实验目的1. 掌握在Matlab 中控制系统的时域分析方法。

2. 掌握在Simulink 中控制系统的时域分析方法。

二.实验设备及仪器计算机、Matlab 软件三.实验内容1.Matlab 中控制系统时域分析Matlab 中可以通过Step ,impulse 命令分析控制系统的阶越响应,脉冲响应。

使用方法为Step(num,den),impulse(num ,den)。

应用lsim 可以求任意输入函数下系统的响应,使用方法为lsim(num ,den ,u ,t)。

例1:应用Matlab 分析如下一阶系统的阶越响应,脉冲响应,输入为正弦信号时系统的响应。

11)(+=Φs s 解:1)输入命令如图2-1所示。

图2-1 时域分析命令输入可以看到一阶系统的阶越响应波形如图2-2,脉冲响应波形如图2-3。

图2-2 一阶系统阶越响应波形图2-3 一阶系统脉冲响应波形2)输入为正弦信号时的波形,输入命令如图2-4所示:图2-4 输入为正弦信号时的时域分析命令输入可以看到输出波形如图2-5所示。

例2:二阶系统传递函数2222)(nn ns s s ωξωω++=Φ 设2=n ω,求1.0=ξ,0.5,707.0,0.9,2.0时系统的阶越响应。

解:Matlab 命令窗口中,输入命令如图2-6所示。

步骤1,输入传递函数系数向量图2-5 输入为正弦信号时一阶系统响应波形图2-6 输入传递函数系数向量步骤2,计算阶越响应如图2-7所示。

图2-7 计算阶跃响应不同ξ时,二阶系统阶越响应如图2-8所示,阶越响应的调节时间和超调量差别较大,当ξ时响应调节时间最短,超调量最小。

=.0707例3:比较如下一型系统如图2-9和二型系统如图2-10在跟踪速度信号时的差别。

图2-9 一型系统图 图2-10 二型系统图解:对一型系统进行速度信号响应分析,在Matlab 中输入命令如图2-11所示。

图2-11 一型系统速度响应分析命令输入)2(2+s s )2()1(22++s s s 图2-8 二阶系统阶越响应波形求得一型系统跟踪速度信号的波形如图2-12所示。