北理工自动控制实验报告.docx
- 文档编号:2100073
- 上传时间:2022-10-26
- 格式:DOCX
- 页数:32
- 大小:425.08KB
北理工自动控制实验报告.docx
《北理工自动控制实验报告.docx》由会员分享,可在线阅读,更多相关《北理工自动控制实验报告.docx(32页珍藏版)》请在冰豆网上搜索。
北理工自动控制实验报告
北理工自动控制实验报告
本科实验报告
实验名称:
控制理论基础实验
课程名称:
实验时间:
任课教师:
实验地点:
实验教师:
实验类型:
□原理验证
■综合设计
□自主创新
学生姓名:
学号/班级:
组号:
学院:
同组搭档:
专业:
成绩:
实验1控制系统的模型建立
一、实验目的
1.掌握利用MATLAB建立控制系统模型的方法。
2.掌握系统的各种模型表述及相互之间的转换关系。
3.学习和掌握系统模型连接的等效变换。
二、实验原理
1.系统模型的MATLAB描述
系统的模型描述了系统的输入、输出变量以及内部各变量之间的关系,表征一个系统的模型有很多种,如微分方程、传递函数模型、状态空间模型等。
这里主要介绍系统传递函数(TF)模型、零极点增益(ZPK)模型和状态空间(SS)模型的MATLAB描述方法。
1)传递函数(TF)模型
传递函数是描述线性定常系统输入-输出关系的一种最常用的数学模型,其表达式一般为
在MATLAB中,直接使用分子分母多项式的行向量表示系统,即
num=[bm,bm-1,…b1,b]
den=[an,an-1,…a1,a0]
调用tf函数可以建立传递函数TF对象模型,调用格式如下:
Gtf=tf(num,den)Tfdata
函数可以从TF对象模型中提取分子分母多项式,调用格式如下:
[num,den]=tfdata(Gtf)返回cell类型的分子分母多项式系数
[num,den]=tfdata(Gtf,'v')返回向量形式的分子分母多项式系数
2)零极点增益(ZPK)模型
传递函数因式分解后可以写成
式中,称为传递函数的零点,⋯称为传递函的极点,k为传递系数(系统增益)。
在MATLAB中,直接用[z,p,k]矢量组表示系统,其中z,p,k分别表示系统的零极点及其增益,即:
z=[];
p=[];
k=[k];
调用zpk函数可以创建ZPK对象模型,调用格式如下:
同样,MATLAB提供了zpkdata命令用来提取系统的零极点及其增益,调用格式如下:
返回cell类型的零极点及增益
返回向量形式的零极点及增益
函数pzmap可用于求取系统的零极点或绘制系统得零极点图,调用格式如下:
在复平面内绘出系统模型的零极点图。
返回的系统零极点,不作图。
3)状态空间(SS)模型
由状态变量描述的系统模型称为状态空间模型,由状态方程和输出方程组成:
其中:
x为n维状态向量;u为r维输入向量;y为m维输出向量;A为n×n方阵,称为系统矩阵;B为n×r矩阵,称为输入矩阵或控制矩阵;C为m×n矩阵,称为输出矩阵;D为m×r矩阵,称为直接传输矩阵。
在MATLAB中,直接用矩阵组[A,B,C,D]表示系统,调用ss函数可以创建ZPK对象模型,调用格式如下:
Gss=ss(A,B,C,D)
同样,MATLAB提供了ssdata命令用来提取系统的A、B、C、D矩阵,调用格式如下:
[A,B,C,D]=ssdata(Gss)。
它返回系统模型的A、B、C、D矩阵。
4)三种模型之间的转换
上述三种模型之间可以互相转换,MATLAB实现方法如下
TF模型→ZPK模型:
zpk(SYS)或tf2zp(num,den)
TF模型→SS模型:
ss(SYS)或tf2ss(num,den)
ZPK模型→TF模型:
tf(SYS)或zp2tf(z,p,k)
ZPK模型→SS模型:
ss(SYS)或zp2ss(z,p,k)
SS模型→TF模型:
tf(SYS)或ss2tf(A,B,C,D)
SS模型→ZPK模型:
zpk(SYS)或ss2zp(A,B,C,D)
2.系统模型的连接
在实际应用中,整个控制系统是由多个单一的模型组合而成,基本的组合方式有串联连接、并联连接和反馈连接。
图1-2分别为串联连接、并联连接和反馈连接的结构框图和等效总传递函数。
在MATLAB中可以直接使用“*”运算符实现串联连接,使用“+”运算符实现并联连接。
反馈系统传递函数求解可以通过命令feedback实现,调用格式如下:
T=feedback(G,H)
T=feedback(G,H,sign)
其中,G为前向传递函数,H为反馈传递函数;当sign=+1时,GH为正反馈系统传递函数;当sign=-1时,GH为负反馈系统传递函数;默认值是负反馈系统。
三、实验内容
1.已知控制系统的传递函数如下
试用MATLAB建立系统的传递函数模型、零极点增益模型及系统的状态空间方程模型,并绘制系统零极点图。
代码:
num=[21840];
den=[1586];
Gtf=tf(num,den);
Gzpk=zpk(Gtf);
pzmap(Gzpk);
gridon;
Gss=ss(Gzpk);
实验结果:
零极点图:
2.已知控制系统的状态空间方程如下
试用MATLAB 建立系统的传递函数模型、零极点增益模型及系统的状态空间方程模型,并绘制系统零极点图。
代码:
A=[0100;0010;0001;-1-2-3-4];
B=[0;0;0;1];
C=[10200];
D=0;
Gss=ss(A,B,C,D);
Gtf=tf(Gss);
Gzpk=zpk(Gss);
pzmap(Gzpk);
gridon;
实验结果:
零极点图:
3已知三个系统的传递函数分别为
试用MATLAB求上述三个系统串联后的总传递函数。
代码:
num1=[265];
den1=[1452];
G1=tf(num1,den1);
num2=[141];
den2=[1980];
G2=tf(num2,den2);
num3=conv(conv([13],[17]),[05]);
den3=conv(conv([11],[14]),[16]);
G3=tf(num3,den3);
G=G1*G2*G3;
实验结果:
4.已知如图E2-1所示的系统框图
试用MATLAB求该系统的闭环传递函数。
代码:
num1=1;
den1=[11];
G1=tf(num1,den1);
num2=1;
den2=[0.51];
G2=tf(num2,den2);
num3=3;
den3=[10];
G3=tf(num3,den3);
G=(G1+G2)*G3;
T=feedback(G,G2);
U=G/(1+G2*G);
实验结果:
5.已知如图E2-2所示的系统框图
试用MATLAB求该系统的闭环传递函数。
代码:
num1=10;
den1=[11];
G1=tf(num1,den1);
num2=2;
den2=conv([10],[11]);
G2=tf(num2,den2);
num3=[13];
den3=[12];
H1=tf(num3,den3);
num4=[50];
den4=[168];
H2=tf(num4,den4);
T1=feedback(G2,H1,1);
G=G1*T1;
T=feedback(G,H2);
实验结果:
四.实验收获与心得
经过上学期的MATLAB实验,对MATLAB软件已经有一定的了解了。
这次比较简单的几个实验让我学到了怎么将传递函数通过MATLAB来表达,怎么画传递函数的零极点,怎么设置软件比较容易看。
倒腾了半天,最大的收获是知道了conv函数是怎么用的,以及有三个因式的该怎样书写。
实验2控制系统的暂态特性分析
一、实验目的
1.学习和掌握利用MATLAB进行系统时域响应求解和仿真的方法。
2.考察二阶系统的时间响应,研究二阶系统参数对系统暂态特性的影响。
二、实验原理
1.系统的暂态性能指标
控制系统的暂态性能指标常以一组时域量值的形式给出,这些指标通常由系统的单位阶跃响应定义出来,这些指标分别为:
(1)延迟时间td :
响应曲线首次到达稳态值的 50%所需的时间。
(2)上升时间tr :
响应曲线从稳态值的 10%上升到 90%所需要的时间长,对于欠阻尼系统,通常指响应曲线首次到达稳态值所需的时间。
(3)峰值时间tp :
响应曲线第一次到达最大值的时间。
(4)调整时间ts :
响应曲线开始进入并保持在允许的误差(±2%或±5%)范围内所需要的时间。
(5)超调量σ:
响应曲线的最大值和稳态值之差,通常用百分比表示
其中 y(t) 为响应曲线。
在 MATLAB 中求取单位阶跃响应的函数为 step,其使用方法如下
step(sys)在默认的时间范围内绘出系统响应的时域波形
step(sys,T)绘出系统在0– T范围内响应的时域波形
step(sys,ts:
tp:
te)绘出系统ts–te范围内,以tp为时间间隔取样的响应波形。
[y,t]=step(…)该调用格式不绘出响应波形,而是返回响应的数值向量及其对应的时间向量。
系统的暂态性能指标可以根据上述定义,在响应曲线上用鼠标读取关键点或通过搜索曲线对应的数值向量中关键点来确定。
2.LTIViewer工具
在MATLAB中提供了线性是不变系统仿真的工具LT Viewer,可以方便地观察系统的响应曲线和性能指标。
在命令窗口中键入litview即可启动LTIViewer。
这里简要介绍 LTI Viewer 工具。
1)【File】菜单
Import 选项:
可以从Workspace或文件中导入系统模型。
Export选项:
将当前窗口中的对象模型保存到Workspace或文件中。
Toolboxpreferences选项:
属性设置功能,可以设置控制系统中得各种属性值。
PageSetup选项:
页面设置功能,可以对打印输出和显示页面进行设置。
2)【Edit】菜单
PlotConfiguration选项:
对显示窗口及显示内容进行配置。
LineStyle选项:
线型设置功能,可以对输出响应曲线的线型进行设置。
ViewerPreferences选项:
对当前窗口的坐标、颜色、字体、响应曲线的特性参数等属性进行设置。
3)右键菜单
在运行界面上点击鼠标右键,将会弹出一个弹出式菜单,菜单上个选项的功能分别为:
PlotTypes:
选择绘制的系统曲线类型,可选的类型有单位阶跃响应、单位冲击响应、波特图、奈奎斯特图、零极点图等。
System:
选择需要仿真的系统。
Characteristic:
系统的性能指标选项。
Grid:
显示和关闭网格。
Normalize:
正常显示模式。
Full View:
满界面显示模式。
Properties:
性能编辑器选项,可以设置画面的标题、坐标标志、坐标范围、线型、颜色、性能指标等。
三、实验内容
1.已知单位负反馈系统前向通道的传递函数为
试用MATLAB绘制系统的单位阶跃响应曲线。
代码:
num1=80;
den1=[120];
G1=tf(num1,den1);
T=feedback(G1,1);
step(
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 北理工 自动控制 实验 报告