版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
会计学1自动控制LTI系统的MATLAB辅助5.1
控制系统工具箱的使用■5.1.1创建LTI模型对象MATLAB
6.X中的控制系统工具箱(控制系统工具箱)为线性时不变系统(LTI)的建模和分析提供了丰富的函数和工具,既支持连续和离散系统,也能够处理
SISO和MIMO系统。并且,用户可以将多个
LTI模型放在同一个数组中统一进行计算和分析。第1页/共156页■使用控制系统工具箱的第一步是为系统选择适当的模型。MATLAB
6.X支持的LTI模型包括:■·传递函数模型(TF),·零极点-增益模型(ZPK),例如例如·状态空间模型(SS),例如第2页/共156页■·频率响应数据模型(FRD),由系统频率响应的采样测量值构成。例如,可以在FRD模型中存放实验中测量的系统频率响应值。■一旦在MATLAB工作空
间中创建了上述模型,就可以使用各种函数来对系统模型进行分析和计算。例如,可以针对系统的各种第3模页/共型156页设计补偿器,分析系统的各种属性,如可控■不同的系统模型在
MATLAB中的存储形式是不同
的。例如,用简单的分子分母多项式表示传递函数模型;
用四个矩阵A、B、C和D表
示状态空间模型;用零极点集合来说明系统的零极点-增益模型等等。MATLAB分别用定制的数据结构来存储这些模型,称为LTI对象,包括TF、第4页/共156页ZPK、SS和FRD对象。这些
对象将所有模型的信息封装起表5.1LTI模型的创建函数第5页/共156页■■■1.创建传递函数模型1)
SISO传递函数模型连续SISO系统的传(5.1)
递第6页/共156页函数为d)th(f=ne,mun可以采用两种方法创建SISO传递函数模型。一种是使用tf命令,另一种则可以直接引用Laacepl变量s的多项式。使用tf命令的方法是??■其中,行向量num和兽穴分别是多项式n(s)和d(s)的系数。注意这里的多项式是按■h
=
tf([1
0],
[12
10])照s的降幂排列的。例如,如果某个SISO系统的传递函数是h(s)=s/(s2+2s+10),则可以通过下面的命令来创建该系统的
传递函数模型:第7页/共156页■■■当然也可以按照通常习惯用s的多项式来直接表示
SISO系统的传递函数。为此,首先将s定义为Laplace算子:s=tf(′s′);然后输入s的多项表达■式。例如,输入H
=
s/(s^2
+
2*s+10);第8页/共156页将产生与h=tf([1
0],[1
2
10])相同的系统模型。■2)
MIMO传递函数模型■■MIMO系统的传递函数是由基本的SISO传递函数所组成的二维数组。同样有两种方法来创建MIMO系统模型:一种是将组成该MIMO系统的多个SISO传递函数进行串联;另一种方法则可以使用带元胞数第9组页/共参156页数的tf命令。考虑下面的有理传递函数矩阵
可以将H(s)定义为两个SISO系统的组合:h11
=
tf([1
-1],
[1
1]);h21
=
tf([1
2],
[1
4
5]);H
=
[h11;
h21]
如果使用tf命令方式,则必须首先定义两个元胞数组N和D:N
=
{[1
-1];[1
2]};D={[1
1]第10页;/共[156页1
4
5]};H
=
tf(N,
D)
传送功能从输入到输出...s
-
1#1:---■s
+
1s
+
2#2:s^2
+
4
s
+
5■第11页/共156页■使用tf命令可以创建只有单个增益或增益矩阵的TF对象,例如G=tf([1
0;2
1])将产生增益矩阵而2.将fE=t创创建建零空极的点增-传益递函模数型。)1连零ISSO续极SISO系点统增-的益零模极型点-增益模型的一般形式为(5.2)第12页/共156页■■3)创建状态空间模型状态空间模型是采用线性微分或差分方程来描述系统的动态行为。连续时间系统具有如下的一般形式)(5.3使用ss命令创建系统的状态空间模型的调用格式为第13页/共156页sys=ss(A,B,C,D)
例5.1在MATLAB中创建下面系统的状态空间模型:输创入建[sys=ss(的]01;-5-2系[,统];30状[,态]01空0),间模型为第14页/共156页■
=■x1x2■x101.00000■x2-5.00000-2.00000b
=■u1■x10■x23.00000c
=■x1x2■y101.00000d
=■u1■y10第15页/共156页■4)创建描述符状态空间模型■描述符状态空间(DSS)模型是上述标准状态空间模型一般形式。其基本形式为4)(5.控情制况系。统这工时具,式箱(仅54.)仅与支下持面为的的E非形奇式异相矩同阵的(5.5)第16页/共156页■当E矩阵的条件数很小时,采用式(5.4)将比式(5.5)计算更加方便。dss命令的调用格式是■■■sys
=
dss(A,
B,
C,D,
E)5)创建频率响应(RFD)模型如果我们无法直接建立研究对象的传递函数或状态空间模型,而只知道该系统在某第17页/共156页■其中,频率是由不同频率值构成的长度为Nf的实数
向量,回答是与这些频率值对应的复数形式的频率响应值。单位是频率所采用的单位,为“拉德/s”(缺省值)和“Hz”之一。■例如,假设数据文件LTIexamples.mat存储有测量的第18页/共156页频率(拉德/s)
输出1■■1
-0.812505-0.000312i■2
-0.175077-0.001596i■3
-0.092593-0.462963i■0.001625i4第1-9页0/共.1506页75781-■■6)创建离散系统模型离散系统模型的创建过■程与连续系统模型的创建过程几乎相同,唯一的区别在于创建离散系统模型必须指定系统的采样周期或采样时间。下面的命令将分别创建离散系统的TF、ZPK、SS和FRD模型对象:sy第2s0页1/共1=56页tf(num,兽穴,Ts)■■7)创建DSP格式的离散传递函数在数字信号处理中,我们习惯于将离散系统的传递函数写成z-1的有理分式,并且z-1在多项式中按照升幂排列。例如第21页/共156页■■可以用行向量[1
0.5]和[1
2
3]来定义。使用filt函数可以创建具有DSP格式的
离散传递函数h=filt(num,兽■■穴)h=filt(num,兽穴,Ts)第一式没有指定系统的采样时间,而第二式通过Ts指定该系统的采样时间。例如第22页/共156页■1
+
2
z^-1
+
3
z^-2
标本时间:未指明的第23页/共156页■5.1.2设置LTI对象的属性 前一节讨论了如何在MATLAB环境中创建LTI对象
来封装系统模型的数据和采样时间。实际上创建的LTI对象具有大量的附加属性。其中一些属性是四种LTI对象共有的,称为一般属性。另一些属性是某种LTI对象独有的,称为特殊属性。表第24页5/共.1562页列举了LTI对象所有的一般属性。表5.2LTI对象的一般属性第25页/共156页■■有两种方法可以获取和设置LTI对象的属性值。一种是使用获得和设置命令,如PropertyValue=获得
(sys,′PropertyName′)■■设置(sys,′
PropertyName′,PropertyValue)另一种是直接运用结构的属性访问,如下面的语句与上面采用设置和获得函数的功能相同。第26页/共156页
PropertyValue=
sys.PropertyName%获得财产价值
sys.PropertyName=
PropertyValue%设置财产价值例如
sys
=
ss(1,
2,
3,
4,
′InputName′,
′u′);第27页/共156页sys.aans
=
5.1.3
LTI模型之间的相互转换■■%可以分别使用tf、ss、zpk和frd命令显式地将一种
LTI对象转换成相应的LTI对
象。sys=tf(sys)转换成TF模型■%■sys=zpk(sys)转换成ZPK模型sys
=
ss(sys)%第28页/共156页表5.3LTI模型的转换函数第29页/共156页■■■例如,如果输入sys
=
ss(-2,
1,
1,
3)zpk(sys)■■■■则将一个状态空间模型转换成一个零极点-增益模型,其结果为Zero/pole/gain:3
(s+2.333)------第30页/共156页■■■例如,tfdata命令只支持TF对象。如果此时的输入参数是其它类型的LTI对象,则调用函数可以自动将输入的LTI对象转换成本身支持的
LTI对象类型,而不需要用户显式地进行转换。例如sys
=
ss(0,
1,
1,0)第31页[/共15n6页um,兽穴]=
tfdata(sys)■■■说明:TF、ZPK和SS这三种LTI对象的计算精度是不同的。尤其在处理高维传递函数模型时,计算的准确度可能会很差。因此,一般使用系统的状态空间模型(SS)来进行相关的操作。使用tf函数将其它传递函数模型,可能会降低原系统的表示类型的模型转第32页换/共1成56页■(3)对于SISO系统,向状态空间模型的转换过程不是唯一的;对于MIMO系统,这
种转换也不能保证产生系统的最小实现。例如,对于状态空间模型sys,ss(tf(sys))也许会得到不同的状态空间矩阵,对于
MIMO系统设置会得到不同数量的状态变量。因此,用户应尽可能避免其第33它页/共1L56页TI对象与状态空间对象之间的相互转换。■
5.1.4
Simulink中的LTI系统模块Simulink的基本模块库中包含LTI系统模块(如图5.1所示)。通过该模块,用户可以在Simulink模型方框图中使用LTI对象。用户可以在
MATLAB的命令窗口中输入
ltiblock命令来得到LTI系统模块。双击该模第34页块/共15,6页将出现图5.2所示的属性对话框。■■其中最重要的属性是
LTI系统变量,用户在该编辑框中输入LTI对象的创建命令,缺省值是tf(1,[1
1])。LTI系统模块支持连续和离散系统的传递函数、状态空间和零
极点-增益模型。但是在实际仿真中都将它们转换成状态空间模型进行计算。第35页/共156页图5.1Simulink中的LTI模块第36页/共156页图5.2LTI模型的属性对话框第37页/共156页■■5.1.5
LTI模型的运算在MATLAB环境中,用户可以对所建立的LTI模型对象进行简单的运算,例如,加、减、乘、除和串、并联等。
例如,输入tf(1,
[1
0])
+
tf([11],[1
2])%相当于1/s+第38页/共156页(s+1)/(s+2)图5.3两个LTI对象的加法第39页/共156页图5.4两个LTI对象的乘法第40页/共156页■传递函数之间的乘法表示两个LTI系统之间的串联,如图5.4所示。例如输入2
*
tf(1,[1
0])*tf([1
1],[1
2])%相当于2*1/s*(s+1)/(s+2)■■■产生新的LTI模型传送功能:2
s
+
2■-----■s^2
+
2
s其它的运算还包括系统求第41页/共156页■5.1.6系统分析工具控制系统工具箱为用户提供了一整套用于LTI模型的时域和频域分析工具。这些函数大都支持所有类型的系统,包括连续和离散系统、
SISO或MIMO系统甚至由多个
模型组成的LTI数组。不过其中的FRD模型比较特殊,它
只能对系统进第42页行/共156页频域分析。读者可能已经注意到,本书前面几章的介绍中已经或多或少■系统的时域响应可用来研究线性模型在特定输入和干扰条件下的暂态行为。用户
可以从系统时域响应中确定诸如上升时间、稳定时间、最
大超调量和稳态误差等系统时域特性。控制系统工具箱提
供的函数可以完成系统的阶跃响应、脉冲响应、初始条件
响应和一般线第4性3页/共系156页统仿真。
例如可以借助randn和lsim函数仿真系统在白噪声输入情况下表5.4LTI模型的分析函数第44页/共156页■5.1.7模型属性的分析模型的一般特点包括模型类型、我/O维数和连续或离散属性。表5.5中列出了与模型属性相关的命令。这些命令可以用来处理连续、离散点着模型或任何LTI模型组成的数组。第45页/共156页表5.5模型属性相关命令第46页/共156页
下面的代码显示了模型属性操作函数的一些使用方法。H
=
tf({1
[1
-1]},
{[1
0.1][1
2
10]})传送功能从输入1到输出:1■s
+
0.1传送功能从输入2到输出:s
-
1第47页/共156页■第48页/共156页■■■ans
= tf大小(H)传送功能有2输入(s)和1输出(s).[ny,nu]=大小(H)%注意:ny=输出的个数ny
= 1nu
= 2isct(H)%系统是连续的吗?ans
= 1■%系统■■isdt(H)是离散的吗?ans
=0■控制系统工具箱还可以确定系统的零极点位置和
DC增益以及范数等。表5.6是相关指令的简要说明。第49页/共156页表5.6模型动态属性命令第50页/共156页■除了L∞范数外,这些命令都不支持FRD模型。下面的代码显示了模型动态属性操作函数的一些使用方法。■■■■■s^4
+
4.12
s^3
+
17.4
s^2h
=
tf([4
8.4
30.8
60],[1
4.12
17.4
30.8
60])传送功能:4
s^3
+
8.4
s^2
+
30.8
s
+60第51页/共156页ans
=
-1.7971
+2.2137i-1.7971
-
2.2137i
-0.2629
+2.7039i-0.2629
-
2.7039i零点(h)ans
=第52页/共156页1
[ninf,fpeak]=标准(h,inf)%的山顶财物增加freq.responseninf
=1.3402%山顶财物增加fpeak
=
1.8537%频率什么地方财物增加山顶?第53页/共156页■这些函数还可以处理
LTI数组,并且其返回值也为数组。例如,可以分析一个三维
LTI数组sysarray(具体构造方法参考5.2节)的极点情况。■■■■sysarray=tf(rss(2,1,1,3))模型sysarray(:,:,1,1)■
=
=
=
=
=
=
=
=
=
=
=
==
=
=
=
=
=
=
=
=
=
=第54页/共156页传送功能:-0.6201
s
-
1.905s^2
+
5.672
s
+
7.405模型sysarray(:,:,2,1)■
=======================传送功能:
0.4282
s^2
+
0.3706
s
+0.04264■s^2
+
1.056
s
+
0.1719
第-55-页/-共1-56页-■s^2
+
2.942
s
+
2.113时间传送功能.■第56页/共156页■■■■■3x1连续的的数组棒(sysarray)ans(:,
:,
1)
=-3.6337-2.0379ans(:,
:,
2)
=-0.8549-0.2011ans(:,
:,
3)
=-1.6968-1.2452表5.7系统状态空间实现命令第57页/共156页5.2
LTI模型数组■■5.2.1基本概念在实际的系统分析和设计工程中,有时同时考虑几个线性时不变(LTI)系统的模型所组成的集合会给工作带来很大的方便。例如,可以考虑某个参数变化下的一组模型:s第y58s页/1共15=6页tf(1,[1
11]);■可以采用LTI数组(LTI数组)来存储这一系列模型。例如,对于上面的例子,可以创建一个包含三个LTI■■传递函数模型的LTI数组:sys
-ltia
=
(sys1,sys2,
sys3);为了形象地说明LTI数组的存储形式,考虑图5.5中由5个传递函第数59页/模共156页型组成的集合。在这个例子中,每个模型图5.55个LTI模型组成的LTI数组第60页/共156页■如同可以在一个多维数组中定义2×2矩阵的集合,我们也可以在一个LTI数组sysa中定义这5个传递函数模型。
LTI数组的每个元素都是某个具体的LTI模型。例如,可以通过sysa(:,:,3)来访问其中第三个模型,而sysa(2,2,3)则表示第三个模型中第2个输入到数,如图第2个输出的传第61页递/共156函页5.6所示。图5.6LTI数组元素的访问方法第62页/共156页■■■■5.2.2
LTI数组的维数和形状 单个LTI模型的维数和形状是由其输入和输出通道决定的。但是一个LTI数组则具有不同的维数和形状的概念。我/O维数:LTI数组
中所有模型共同具有的输入和输出维数。数组维数:模型数组自身所具有的维数。LTI数组的尺寸大小是第63页/共156页■■图5.7显示了一个2×3的LTI数组m2d,其中每一个元素都是一个输入和两个输出的传递函数模型。我们可以使用下面的代码将该LTI数组装入MATLAB■■■工作空间,并分析它的大小:载入LTIexamples大小(m2d)第64页/共156页2×3连续的的数组
时间传送功能图5.7LTI数组的维数和尺寸大小第65页/共156页■■■■5.2.3创建LTI数组可以采用下面三种方法来创建一个LTI模型:使用为了循环语句对
LTI数组的每个元素赋值。使用堆命令将多个
LTI模型组合成一个LTI数组。使用tf、zpk、ss和frd指令。■而且,我们还可以使用rss命令来创建以随机状态空间模第66页/共156页■1)使用rss命令■■使用rss命令可以很方便地创建状态空间模型所组成的LTI数组,其中每个模型具有相同数目的状态变量。该命
令的调用方法是rss(N,
P,
M,
sdim1,
…,sdimk)
其中,N是LTI数组中每个模型的状态数目;P是每个模型的输出量数目;M是每个模第67页/共156页■例如,下面的程序将创建由随机状态空间模型所组成的4×2数组。其中每个模型具有三个状态、两个输出和一个输入。■■sys=rss(3,2,1,4,2);大小(sys)■4×2连续的的数组
时间情形
空间模型■第68页/共156页各自的模型2输出,1输入,和3情形.■■2)使用循环语句
假设我们要创建包含4个二阶LTI传递函数模型的
LTI模型数组,这些模型具有如示的相同的结构每下个模型中的阻尼系数ξ和自然频率ω不同。假如分别取ξξ61=0.62=0,76,.ω.,=12ω,=1.5可以输入下面的程序创建需要的模所TIL型数组:第69页/共156页zeta
=
[0.66,
0.75];w
=
[1.2,
1.5];为了我=1:2为了j=1:2H(:,
:,
i,
j)
=
tf(w(j)^2,
[12*zeta(i)*w(j)
w(j)^2]);末端末端第70页/共156页■3)使用堆函数■创建LTI模型数组的方法是使用堆函数。该函数既
可以处理单个的LTI模型,也可以处理LTI数组。它可以将多个LTI数组或单个的LTI模型
组合成更大的LTI数组。例如,如果两个TF模型sys1和sys2具有相同数目的输入和输出,则可以输入■sys=堆(1,sys1,第71页/共156页■■4)直接使用tf、zpk、ss和frd函数如果我们将多维数组作为tf、zpk、ss和frd等函数的参数,同样可以创建LTI数组的功能。例如,对于TF模型,可以使用■sys=tf(num,兽穴)■兽穴都是相同大小的多维元胞数组(单其中,第7n2页u/共m156和页■■■■其中的a、b、c和d都其中的零点和棒都是元胞数组,其元胞元素包含每个模型中每个我/O对的零极点
向量。而财物增加则是包含每个模型中每个我/O对的标量增益的多维数组。对于状态空间模型,则可以使用sys
=
ss(a,
b,
c,
d)第73页/共156页■■5.2.4
LTI数组的下标运用 我们可以像操作多维数组那样使用下标来对LTI数组中的元素进行操作,包括访问模型、抽取子系统、调整LTI数组中的元素、删除LTI数组中的元素等。LTI数组下标的使用格式为?sys(输出,输入,n1,…,
nk)■其中,输出和输入分别第74页/共156页■1)访问LTI数组中的模型■■可以用此方法访问LTI数组中的模型:对前两个下标使用冒号参数(:,:),表示选择该模型的所有我/O通道,剩下的下标指
定待选择模型在LTI数组中的
位置。例如,如果sys是由下面5×2的状态空间模型所组成的LTI数组的命令定义的第75页一/共1个56页■■2)数组维的单参数下标的使用我们也可以使用数组维的单参数下标来访问LTI数组中的模型。例如,对于上面的
5×2数组,下面的命令同样可■■以访问sys中(3,2)位置的模型:sys(:,:,8)这里的8正好是对数组进行逐行扫描时(3,2)模型的位置。第76页/共156页■3)获取子系统的LTI数组■我们也可以从LTI数组中的所有模型中选择指定我/O通道的子集。例如■sys
=
rss(4,
3,
2,5,
2);■2])第77页/=共15s6页ys(1,[1■4)修改LTI数组■我们可以修改LTI数组中的整个模型或模型中的输入输出通道。例如
sys=rss(4,3,2,5,2);%由状态空间模型组成的5×2数组H=rss(4,1,1,5,2);%由SISO模型组成的5×2数组sys(1,
2)
=
H
将修改LTI数组sys的所有模型中从输入2到输入1的子第78页/共156页为了k=1:5为了j=1:2
sys(1,
2,
k,
j)
=H(:,
:,
k,
j);末端末端第79页/共156页■5)删除LTI数组中的元素■■■■
5×2连续的的数组
时间情形
空间模型我们可以将LTI数组中的相应部分赋值为空([
])来实现对该部分的删除。例如sys
=
rss(4,
3,
2,
5,
2);sys(1,:)=[
];大小(sys)第80页/共156页■■■5.2.5
LTI数组的相关运算 我们可以像操作单个的LTI模型那样对整个LTI数组进行基本的模型操作。这些操作包括算术操作:+、-、*、/、\等。函数操作:沿我/O维([,],[;])的组合,反馈、附加、系列、平行的
和lft。第81页/共156页■■■因此,结果中的第k个模型是由sys1中的第k个模型与
sys2中的第k个模型进行相应的操作计算得到的。例如,假设sys1和sys2是两个LTI数组,输入sysa
=
op(sys1,sys2)则结果LTI数组sys的第k个模型是由s第8y2页s/共1156中页
的第k个模型与sys2中的第k个模型相加5.3
LTI系统分析和设计的图形操作环境
LTI观测器(LTI查看)是控制系统
工具箱自带的用于线性时不变(LTI)系统分析的图形界面(GUI)工具,支持10种不同类型的系统响应分析,包括阶跃、脉冲、预示、Nyquist、Nichols、零极点、sigma(奇异值)、lsim和最初的图形等。最后两种仅仅在LTI观测器初始化时有效。第83页/共156页■通过配置LTI观测器,可以实现在同一个观测器中同时显示六种分析曲线和任何数量的模型,而且可以随时获取
指定响应曲线的信息,诸如峰值响应和幅值或相位裕度等等。■在MATLAB的命令窗口
中输入ltiview命令可以打开一个新的LTI观测器,也可以在
SISO设计工具第中84页/共启156页动它(参
考5.3.2节内容)。图5.8是对图5.8LTI系统的图形分析工具(LTI查看)第85页/共156页■1)使用【输入】菜单命令载入模型■可以通过点击【文件】菜单中的【输入...】命令将所要分析的模型载入到观测器中。该命令执行后将出现一个选择
对话框,其中列举了当前
MATLAB工作空间中的所有模型对象(如图5.10所示),用户可以选择其第8中6页/共的156页单个或多个模型将其载入到观测器中。■2)使用【输出】菜单命令删除观测器中的模型■如果不再需要观测器
中的某个模型,可以通过【文件】菜单中的【输出...】命令将该模型从观测器中删除。
弹出的模型选择框列举了目前观测器中存在的所有模型,如图5.11所示。通过对话框右边的按钮,用户第还87页/可共156页以选择被删除模型的存放位置,例如存放图5.9LTI查看的鼠标右键快捷菜单第88页/共156页图5.10将模型载入到观测器中第89页/共156页图5.11从观测器中删除模型第90页/共156页■■3)观测器的显示配置通过【编辑】中的【小块土地配置】菜单,可以对观测器分析曲线的显示数目、曲线类型等进行配置,如图
5.12所示。第91页/共156页图5.12观测器的配置对话框第92页/共156页■■■5.3.2
SISO系统设计工具(SISO设计工具)SISO系统设计工具(SISO设计工具)是用于单
输入单输出反馈控制系统补偿器设计的图形设计环境。通过该工具,用户可以快速完成以下工作:利用根轨迹方法计算系统闭环特性第9。3页/共156页针对开环系统预示图■1)打开SISO系统设计工具■在MATLAB命令窗口中输入sisotool命令,可以打开一个空的SISO设计工具,也可以
在sisotool命令的输入参数中指定SISO设计工具启动时缺省打开的模型。注意该模型必须存在于MATLAB的当前工作机的设计环境如图5.13所示。空间中。一个第94页D/共C156电页图5.13SISO系统的图形设计工具第95页/共156页■2)将模型载入SISO设计工具■■■通过【文件】菜单下的【输入模型】命令,可以将所要研究的模型载入SISO设计
工具中。点击该菜单项后,将弹出输入系统数据对话框,如图5.14所示。3)当前的补偿器(当前的赔偿者)第96页/共156页当前的补偿器(当前的图5.14输入系统数据对话框第97页/共156页■4)反馈结构■SISO设计工具在缺省
条件下将补偿器放在系统的前向通道中。另一种反馈结构
是将补偿器放置于系统的反馈回路中。用户可以通过【FS】按钮在两种结构之间进行切换,如图5.15所示。第98页/共156页图5.15
SISO设计工具中的反馈控制结构(a)
补偿器(C)位于前向回路中;
(b)
补偿器(C)位于反馈回路中第99页/共156页5.4
LTI控制系统的设计实例■5.4.1
LQG调节器的设计这一节将结合MATLAB自带的一个
例子来演示LQG调节器的设计方法。在
MATLAB的命令窗口中输入milldemo可以运行相应的演示程序。该例是为热轧机设计一套控制系统,以控制钢材在热轧过程中的水平和垂直厚度。图5.16是热轧机水平(x轴方向)压轧过程的简单示意图。第100页/共156页■压轧机的完整模型属于
MIMO系统。图5.17显示了该
系统的开环模型,各部分的含
义为:u为控制输入,δ为厚
度间隙,f为增量式轧力,wf,■我们为干扰模型的驱动白噪声。测量的轧力变化f包括由水压驱动器驱动的力矩增量和由于偏心作用和输入厚度变化所引起的干第1扰01页/共力156页的大小。图5.16热轧机水平压轧过程示意图第102页/共156页图5.17热轧机的开环模型框图第103页/共156页■值得注意的是,H(s)、铁(s)和Fi(s)的输出是增量式的,增加水压或偏心力的作用可以■减小成型工件的厚度,同时增加工件的输入厚度也会导致成型工件的厚度间隙。系统x、y轴的相应模型分别为x轴(水平方向)第104页/共156页y轴(垂直方向)第105页/共156页■1)
x轴方向的LQG设计■为了简化设计过程,首先忽略系统x和y轴之间的耦合,将它们作为独立的回路看待,也就是说为每个轴设计
SISO
LQG调节器。调节器的设计目标是减小因偏心和输入厚度变化所带来的工件的δy。■设计的第一步是定义压轧厚度变化第106δ页/x共1、56页%输入厚度/硬度等干扰模型
使固定=tf(1e4,[1
0.05],′
inputn′,′w-ix′)%滚压偏心模型
Fex=tf([3e4
0],[1
0.1256^2],′inputn′,′w-不包括′)%增益gx
=
1e-6;第107页/共156页
接下来建立图5.16的开环系统模型:
%从输入到力f1和f2的我/O映射
Px=附加([ss(Hx)Fex],使固定)
%加入从f1,f2到输出"x-缺口"和"x-力量"的静态增益Px
=
[-gx
gx;1
1]
*
Px第108页/共156页%为系统输出命名
变量Px现在包含一个开环状态空间模型:?Px.inputnameans
=′u-x′′w-不包括′′w-ix′Px.outputnameans
=′x-缺口′第109页/共156页■第2个系统输出′x-力量′是测量的滚轧力大小。LQG调节器使用该测量值来驱动水压驱动器和减小由于扰动所引起的厚度变化δX。■LQG调节器的设计分为如下两步:■(1)设计全状态反馈控制器,使下面的线性二次判据最小(.5)6第110页/共156页■(2)设计Kalman滤波器
估计给定测量力′x-力量′的状态向量。线性二次判据J(uX)将同时考虑低频和高频特性。
因为用户主要关心的是系统的
低频特性,因此通过低通滤波
器30/(s+30)来减小高频影响。■lpf
=
tf(30,
[1
30])■%将低通滤波器加入第111页/共156页
下面使用kalman函数设计
Kalman观测器。系统噪声)5.7(具眼,):,2(sedxP(namlak=xtse输睛有入2()0001,)单下位面方的差命;令而:测量噪声方差限制在1000以下。调节器:GQL最后连接状态反馈增益和状态观测器形成xtsexk)xk,xtse(gergql=xgeR第112页/共156页■以上就完成了x轴方向的LQG设计。图5.18是调节
器在0.1~1000拉德/s范围内的预示响应曲线。■预示(Regx,{0.1
1000})■观察图5.19可以验证
LQG调节器的控制效果。首
先考虑输入厚度的增长影响。这类低频扰动会同时影响输出第113页/共156页图5.18x轴LQG调节器的预示响应曲线第114页/共156页■观察图5.19可以验证
LQG调节器的控制效果。首
先考虑输入厚度的增长影响。这类低频扰动会同时影响输出厚度和滚轧力的大小。因为
调节器在低频段的相位近似为
0°,反馈回路将充分增加水压驱动力以抵消厚度增长的影响。如果考虑偏心的影响,由于滚
轧圆柱的偏心第115作页/共1用56页会引起滚轧
间隙的波动,当滚轧间隙减小
时,滚轧力将随之增加使得工■最后创建闭环系统模型,并比较开/闭环系统在输入白
噪声wex和wix下的时间响应,
其中采样时间选择■■■dt=0.01。 dt=0.01t=0:dt:50%仿真时间范围time
sam第p116l页/e共1s56页%创建单位方差的系图5.19白噪声影响下x轴开/闭环系统的时间响应第117页/共156页■2)
y轴LQG调节器的设计■■■■按照类似的过程,我们可以设计y轴方向的LQG调节
器(用于控制垂直方向的压轧厚度)。%定义模型的各个组成部分Hy
=
tf(7.8e8,
[1
7188^2],
′inputn′,
′u-y′)Fiy
=
tf(2e4,
[1
0.0第118页/共156页%创建开环模型
Py
=
append([ss(Hy)
Fey],Fiy)Py
=
[-gy
gy;1
1]
*
Py
set(Py,
′outputn′,
{′y-gap′
′y-force′})%状态反馈增益设计Pydes
=
append(lpf,
1)
*
Py
%加入低频段权重
set(Pydes,
′outputn′,
{′y-gap*′force′})第119页/共156页
%创建闭环系统,设计y轴方向的SISO
LQG调节器Regy
=
lqgreg(esty,
ky)cly
=
feedback(Py,
Regy,
1,
2,
+1)
为了比较y轴方向的开/闭环系统响应,输入dt
=
0.01t
=
0:dt:50
wy=sqrt(第112/0页d/共t15)6页*
randn(2,length(t))图5.20y轴方向开/闭环系统的响应比较第121页/共156页■■3)不同轴之间的耦合本节开始讲到x/y轴厚度调节问题属于典型的MIMO问题。但是到目前为止,仅仅为单个独立的x或y通道设计了
LQG调节器。如果两个轴之
间能够充分解耦,则上述设计过程是有效的。实际上,热轧机的两轴之间存在一定的耦合作用,这点从第12物2页/共理156页上也不难理解,当沿一个轴锻压工件时,工件由于受到挤压作用,势必将
相应的耦合系统模型可以写成第123页/共156页图5.21x/y轴间的耦合作用框图(gxy=0.1,gyx=0.4)第124页/共156页■下面通过仿真来观察两轴之间的耦合作用对独立通道
LQG调节器的影响。为此创建图5.21所示的耦合系统模型。
P=append(Px,Py)%将x/y轴模型组合成一个系统P
=
P([1
3
2
4],
[1
4
2
3
56])%加入轴间的耦合作用第125页/共156页%创建闭环系统模型
feedin=1:2
%Pc的前两个输入是控制输入
feedout=3:4
%Pc的后两个输出是测量值
cl
=
feedback(Pc,
append(Regx,Regy),
feedin,
feedout,
+1)wxy
=
[wx
;
wy]
lsim(Pc(1:第2126,页/共315:6页6),′:′,cl(1:2,3:6wxy,t)■图5.22显示出比较的结果。从图中可以看出,由于两轴之间的耦合作用,x轴方向的调节效果变差(x轴厚度的峰值变化大约是不考虑耦合作用时的4倍以上),因此,在设计
LQG调节器时不能忽略轴间耦合的影响,必须针对整个
MIMO的LQG设计才能抵消两轴之间耦合作第12用7页/共所156页带来的干扰。
4)整个MIMO系统设计LQG调节器
Pdes=append(lpf,lpf,eye(2))*Pc%加入低通滤波器Pdes.outputn
=
Pc.outputn
k=lqry(Pdes(1:2,1:2),eye(2),1e-4*eye(2))%LQ增益est
=
kalman(Pdes(3:4,
:),
eye(4),1e3*eye(2))%Kalman观测器第128页/共156页
RegMIMO=lqgreg(est,k)%创建MIMO
LQG调节器■%使用相同的噪声输入对系统进行仿真■lsim(Pc(1:2,
3:6),
′:′,
cl(1:2■3:6),
′-′,
wxy,
t)最后的仿真结果如图5.23所示。比较图5.22和图5.23,显然针对MIMO系统设计的LQG调节器很大程度上提
高了系统的调节性能。这从另一方面也验证了x/y轴的耦合作用对系统动态特性的影响。第129页/共156页图5.22考虑轴间耦合作用与独立通道设计的结果比较第130页/共156页图5.23MIMO调节器的闭环仿真结果第131页/共156页■■5.4.2
Kalman滤波器的设计 这一节将讨论如何使用控制系统工具箱进行Kalman滤波器的设计和仿真。考虑下面的离散系统:x[n+1]=Ax[n]+B(u[n]+w[n])
(5.9)■[n]■端加入的高斯噪声。状态矩y[n]=Cx(5.10)第132页/共156页其中,w[n]是在输入
A
=
[1.1269-0.49400.11290■1.0000
00
1.00000];B
=
[-0.3832■0.59190.5191];C=[1
0第133页0/共]156页;■我们的目标是设计
Kalman滤波器,在给定输入u[n]和带噪输出测量值■■)(11.5
yv[n]=Cx[n]+v[n]的情况下估计系统的输出。其中,v[n]是高斯白噪声。1)离散Kalman滤波器)21.5(上述问题的稳态Kalman滤波器方程如下:测量值修正计算第134页/共156页■2)稳态设计■■我们可以通过kalman函数设计上述稳态滤波器。首先定义带噪声的系统模型:x[n+1]=Ax[n]+Bu[n]+Bw[n](状态方程)
y[n]=Cx[n](测量方程)具体的程序代码如下:%注意:设置采样时间为-1■第135页/共156页表示模型为离散的Plant
=
ss(A,
[B
B],
C,■■假设Q=R=1,下面可以设计离散Kalman滤波器:Q
=
1;
R
=
1;■■[kalmf,
L,
P,
M]
=kalman(Plant,
Q,
R);函数将返回Kalman滤波器的状态模型kalmf和修正增益M。■■MM
=3.7980e-01第136页/共156页图5.24Kalman滤波器第137页/共156页■■■因为我们对输出估计ye比较感兴趣,因此只需要保留
kalmf的第一个输出。为此输入kalmf
=
kalmf(1,
:);kalmf■a
=■■0.1129x1
-e
x2
-e
x3
-ex1
第1-38页e/共0156.页7683-0.494b
=u
yx1-e
-0.38320.35860.5919
x2
-e0.3798x3
-e0.51910.081732c
=■x2-ex3-e第139页/共156页x1-eI/OIII/O
groups:
Group
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026及未来5年中国氧氟沙星胶囊数据监测研究报告
- 2026及未来5年中国毛革青帽数据监测研究报告
- 2026年注册岩土工程师考试《岩土工程勘察》专项训练试卷(含答案)
- 2026年教师资格证小学语文科目全真模拟试卷解析培训
- 2026年造价工程师考试土建工程预算冲刺押题卷
- 2026学年江西省吉安市吉水县数学四年级第二学期期末达标检测模拟试题含答案解析
- 2026学年永清县三年级数学下学期期末综合测试模拟试题(含答案)
- 2026年广东省四会市高二历史上册期末考试自测卷(A卷)附答案
- 2026年江西省瑞金市高二历史上册期末考试模拟卷附答案(典型题)
- 2026年山西省孝义市高二生物下册期末考试模拟卷附答案【A卷】
- 第四单元 第1课时 青蛙歌(教学设计)数学北师大版五年级上册2026秋
- 2026高考英语【全国二卷】试卷及参考答案(含听力音频、听力原文)
- 2026年上海松江国有资产投资经营管理集团有限公司招聘笔试参考题库附带答案详解
- 语文试卷(26-65C)答案重庆市金太阳好教育联盟2026届高三10月联考(26-65C)
- 【《某变电站(220kV110kV10kV)短路电流的计算过程案例》3000字】
- 农业技术交流会
- 2025年一级造价师水利案例真题及答案解析
- 军人压力调节课件
- 航天煤油标准
- 六年级英语完形填空100篇(含答案及讲解)
- 《影视鉴赏(第2版)》课件全套 张婉宜 第1-5章 影视鉴赏基础- 欧洲及其他地区影视鉴赏
评论
0/150
提交评论