matlab的自动控制原理实现

上传人:xzh****18 文档编号:50596084 上传时间:2018-08-09 格式:PPT 页数:30 大小:579KB
返回 下载 相关 举报
matlab的自动控制原理实现_第1页
第1页 / 共30页
matlab的自动控制原理实现_第2页
第2页 / 共30页
matlab的自动控制原理实现_第3页
第3页 / 共30页
matlab的自动控制原理实现_第4页
第4页 / 共30页
matlab的自动控制原理实现_第5页
第5页 / 共30页
点击查看更多>>
资源描述

《matlab的自动控制原理实现》由会员分享,可在线阅读,更多相关《matlab的自动控制原理实现(30页珍藏版)》请在金锄头文库上搜索。

1、第 5 章 MATLAB在自动控制原理中的应用 第5章 MATLAB在自动控制原理的应用 5.1 控制系统模型5.2 控制系统的时域分析 5.3 控制系统的根轨迹 5.4 控制系统的频域分析5.5 系统的状态空间分析函数5.6 极点配置和观测器设置5.7 最优控制系统设计 第 5 章 MATLAB在自动控制原理中的应用 5.1 控制系统模型5.1.1 控制系统的描述与LTI对象1控制系统的模型及转换线性控制系统是一般线性系统的子系统。在MATLAB中,对自动控制系统的 描述采用三种模型:状态空间模型(ss)、传递函数模型(tf)以及零极点增益模型 (zpk)。模型转换函数:ss2tf,ss2z

2、p,tf2ss,tf2zp,zp2ss和zp2tf。2LTI对象为了对系统的调用和计算带来方便。根据软件工程中面向对象的思想, MATLAB通过建立专用的数据结构类型,把线性时不变系统(LTI)的各种模型封装 成为统一的LTI对象。MATLAB控制系统工具箱中规定的LTI对象包含了三种子对象:ss对象、tf对 象和zpk对象。每个对象都具有其属性和方法,通过对象方法可以存取或者设置对象的属性值。在MATLAB的Control System Toolbox(控制系统工具箱)中提供了许多仿真函数 与模块,用于对控制系统的仿真和分析。 第 5 章 MATLAB在自动控制原理中的应用 属性说明:(1)

3、当系统为离散系统时,给出了系统的采样周期Ts。Ts0或缺省时 表示系统为连续时间系统;Ts=-1表示系统是离散系统,但它的采样周期未定。(2) 输入时延Td仅对连续时间系统有效,其值为由每个输入通道的输入时延 组成的时延数组,缺省表示无输入时延。(3)输入变量名InputName和输出变量名OutputName允许用户定义系统输入输 出的名称,其值为一字符串单元数组,分别与输入输出有相同的维数,可缺省。(4)Notes和用户数据Userdata用以存储模型的其它信息,常用于给出描述模型 的文本信息,也可以包含用户需要的任意其它数据,可缺省。第 5 章 MATLAB在自动控制原理中的应用 对象名

4、称属性名称意 义属性值的变量类型 tf对对象 (传递传递 函数)den传递函数分母系数由行数组组成的单元阵列num传递函数分子系数由行数组组成的单元阵列 variable传递函数变量s、z、p、k、z-1中之一 zpk对对象 (零极点增益 )k增益二维矩阵 p极点由行数组组成的单元阵列variable零极点增益模型变量s、z、p、k、z-1中之一 z零点由行数组组成的单元阵列 ss对对象 (状态态空间间)a系数矩阵二维矩阵 b系数矩阵二维矩阵 c系数矩阵二维矩阵 d系数矩阵二维矩阵 e系数矩阵二维矩阵StateName状态变量名字符串单元向量第 5 章 MATLAB在自动控制原理中的应用 5.

5、1.2 LTI模型的建立及转换函数在MATLAB的控制系统工具箱中,各种LTI对象模型的生成和模型间的转换都可以 通过一个相应函数来实现。函数名称及基本格式功 能dss(a, b, c, d, )生成(或将其它模型转换为 )描述状态空间模型filt(num, den, )生成(或将其它模型转换为 )DSP形式的离散传递函数ss(a, b, c, d, )生成(或将其它模型转换为 )状态空间模型tf(num, den, )生成(或将其它模型转换为 )传递函数模型zpk(z, p, k, )生成(或将其它模型转换为 )零极点增益模型表5.3 生成LTI模型的函数第 5 章 MATLAB在自动控制原

6、理中的应用 例5-4 生成离散系统的零极点模型。MATLAB源程序为: z= ,-0.5; p=0.3,0.1+2i,0.2-2i; k=2,3; s6=zpk(z,p,k,-1) 运行结果为:Zero/pole/gain from input 1 to output: 从第1输入端口至输出的零极点增益2 - (z-0.3)Zero/pole/gain from input 2 to output: 从第2输入端口至输出的零极点增益3 (z+0.5) - (z-(0.1+2i) (z-(0.2-2i)Sampling time: unspecified 表明该系统为双输入单输出的离散系统。第

7、5 章 MATLAB在自动控制原理中的应用 5.1.3 LTI对象属性的设置与转换1LTI对象属性的获取与设置函数名称及基本 格式功 能get(sys, PropertyNa me, 数值值, )获得LTI对象的属 性set(sys, PropertyNa me, 数值值, )设置和修改LTI对 象的属性ssdata, dssdata(sys)获得变换后的状 态空间模型参 数 tfdata(sys)获得变换后的传 递函数模型参 数 zpkdata(sys)获得变换后的零 极点增益模型 参数 class模型类型的检测表5.4 对象属性的获取和修改函数 第 5 章 MATLAB在自动控制原理中的应

8、用 2LTI模型的转换函数表5.5 模型检测函数 函数名及 调用格式功 能isct(sys)判断LTI对象sys是否为连续时间 系统。若是,返回1; 否则返回0 isdt(sys)判断LTI对象sys是否为离散时间系统。若是,返回1; 否则返回0 isempty(sys)判断LTI对象sys是否为空。若是,返回1;否则返回0 isproper判断LTI对象sys是否为特定类型对象。若是,返回1; 否则返回0 issiso(sys)判断LTI对象sys是否为SISO系统。若是,返回1;否则 返回0 size(sys)返回系统sys的维数第 5 章 MATLAB在自动控制原理中的应用 5.1.4

9、典型系统的生成1随机生成N阶稳定的连续状态空间模型函数rss( ) 格式:sys = rss(N,P,M) 功能:随机生成N阶稳定的连续状态空间模型,该系统具有M个输入,P个输出。 缺省是P=M=1,即sys=rss(N)。2. 随机生成N阶稳定的连续线性模型系数函数rmodel( ) 格式:num,den=rmodel(N,P) 功能:生成一个N阶连续的传递函数模型系统,该系统具有P个输出。3离散时间N阶稳定随机系统生成函数drss( )和drmodel( ) drss和drmodel函数的用法与rss和rmodel函数的用法相仿,不同点仅仅在于它生 成的是离散系统。4二阶系统生成函数ord

10、2 格式:A,B,C,D = ord2(Wn, Z) 功能:生成固有频率为Wn,阻尼系数为Z的连续二阶的状态空间模型系统。 5系统时间延迟的Pade近似函数pade( ) 格式:sysx = pade(sys,N) 功能:对连续系统sys产生N阶Pade近似的延时后,生成新的系统sysx。第 5 章 MATLAB在自动控制原理中的应用 5.1.5 LTI模型的简单组合与复杂模型组合1LTI模型的简单组合(1)若假定两环节均为单输入单输出的系统SA和SB。两个环节级联:sysseries(SA,SB)两个环节并联:sys=parallel(SA,SB)A环节前向,B环节反馈:S=feedback

11、(SA,SB)(2)当在多输入多输出系统中,必须增加输入变量和输出变量的编号:级联:sys=series(SA,SB,outputA, inputB)并联:sys=parallel(SA,SB,InputA,InputB,OutputA,OutputB)反馈: sys=feedback(SA,SB,feedout,feedin,sign)第 5 章 MATLAB在自动控制原理中的应用 例5-14 计算图5.1所示的系统的传递函数。MATLAB源程序为: s1=tf(2,5,1,1,2,3) %系统s1的传递函数模型 s2=zpk(-2,-10,5) %系统s2的零极点增益模型 sys=feed

12、back(s1,s2) % s1环节前向,s2环节反馈5(s+2)/(s+10) 程序运行结果为: Transfer function: 系统s1的传递函数模型 2 s2 + 5 s + 1 -s2 + 2 s + 3 Zero/pole/gain: 系统s2的零极点增益模型 5 (s+2) - (s+10) Zero/pole/gain: 系统s1、s2的反馈零极点增益模型 0.18182 (s+10) (s+2.281) (s+0.2192) -(s+3.419) (s2 + 1.763s + 1.064)第 5 章 MATLAB在自动控制原理中的应用 2LTI模型的复杂模型组合 对复杂系

13、统的任意组合,在MATLAB中,则采用集成的软件包,让机器自动去完 成复杂的组合,人们只要输入各环节的LTI模型和相应的联接矩阵与输入矩阵,指定输出变量,软件包会自动判别输入的模型表述方式,作出相应的运算并最后给出组 合后系统的状态方程。在求解过程中,主要涉及append( )函数和connect( )函数。通常,由以下五个步骤来完成:对方框图中的各个环节进行编号,建立它们的对象模型。 利用append函数命令建立无连接的状态空间模型。sap=append(s1,s2,sm) 按规定写出系统的互联接矩阵q 互联矩阵q中的每一行由组合系统的一个输入编号和构成该输入的其它输出编号 组成,其中该行的

14、第一个元素为该输入的编号,接下来的元素则由构成该输入的其 它子框的输出编号组成,如果为负反馈,则编号应取负号。 选择组合系统中需保留的对外的输入和输出端的编号并列出。Inputs=i1,i2, outputs=j1, j2, 用connect命令生成组合后的系统。第 5 章 MATLAB在自动控制原理中的应用 5.1.6 连续系统与采样系统之间的转换若连续系统的状态方程为:则对应的采样系统状态方程为:其中,Ts为采样周期。 、反之,采样系统到连续系统的转换关系为上式的逆过程:、1. 转换原理第 5 章 MATLAB在自动控制原理中的应用 2. 连续系统与采样系统之间的转换函数函数名功 能调用格

15、式 c2d连续系统转换为 采样系 统sysd = c2d(sysc,Ts,method) d2c采样系统转换为连续 系 统sysc = d2c(sysd,method) d2d采样系统改变采样频率sys = d2d(sys,Ts) 例5-17 系统的传递函数为:输入延时Td=0.35秒,试用一阶保持法对连续系统进行离散,采样周期Ts=0.1s。 MATLAB程序为: sys=tf(2,5,1,1,2,3,td,0.5); %生成连续系统的传递函数模型 sysd=c2d(sys,0.1,foh) %形成采样系统 程序运行结果为: Transfer function:2.036 z2 - 3.628 z + 1.584 z(-5) * -z2 - 1.792 z + 0.8187 Sampling time: 0.1第 5 章 MATLAB在自动控制原理中的应用 5.2 控制系统的时域分析时域分析是一种直接在时间域中对系统进行分析的方法,具有直观和准确的优点。它是根据控制系统输入与输出之间的时域表达式,分析

展开阅读全文
相关资源
相关搜索

当前位置:首页 > IT计算机/网络 > 计算机原理

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号