第6章 鲁棒控制系统的计算机辅助设计与仿真

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

6.1.2 系统的分层数据结构表示
在MATLAB的鲁棒控制工具箱中使用了一种特殊 的数据结构, 即分层数据结构(Hierarchical Data Structure), 来表示所描述的系统对象。 这使得用 户可以用一个简单的变量来代表所要研究的系统并进 行相关的运算, 从而很大程度上方便了用户访问鲁棒控 制工具箱中函数的过程。 这个变量称为tree类型的变量。
(Robust stability problem)。 上述问题的求解涉及到Δ 的非凸优化问题, 它不能通过标准的非线性梯度下降方
法计算得到, 因为此时的算法收敛性无法保证。 然而由
于μ存在上界, 可以通过下式计算KM:
1 (Tyiui ) inf DTyiui D 1 K M (Tyiui )
I xx I xx I xx L ( L N) 2 I xx I xx I xx I xx I xx I xx I xx N (N L) 2 I xx I xx I xx I xx
6.2 鲁棒控制系统概述
6.2.1 奇异值、 H2和H∞范数 假设矩阵A∈Cm×n的秩为r, 将A*A的非负方根σi称 为矩阵A的特征值, 其排列次序为σ1≥σ2≥…≥σp, p=min(m,
n)。 如果r<p, 则矩阵A具有p-r个零奇异值, 即
r 1 r 2 p 0
′tss′);
第一行程序将代表系统状态方程的4个矩阵ag、 bg、 cg和dg统一用ssg来描述; 第二行将二输入输出系统
(A, B1, B2…)的状态方程封装到变量TSS中。 也可
以在mksys的最后参数中指定所要描述系统的类型。
2) branch
该函数的基本功能是获取封装在系统或tree变量中 的矩阵信息。 如 [D11, C2] = branch(TSS, ′d11, c2′); 从系统TSS中得到矩阵 D11和C2;
3) 鲁棒性系统综合
经典或现代鲁棒控制系统的设计人员通常采用回 路设计(LoopShaping)的系统设计方法来满足系统
的设计要求。 多变量系统的回路设计方法是通过奇异
值Bode图实现的。 鲁棒控制系统工具箱提供了各种 SISO或MIMO回路设计的方法, 诸如LQR、 LQG、 LQG/LTR、 H2和H∞等等。
( A) n
奇异值通常具有以下的性质
(1) ( A) max xC (2) ( A) min xC
Ax x Ax x
(6.2) (6.3)
(3) ( A) i ( A) ( A)
这里的λi代表矩阵A的第i个特征值。
1 (4) 如果 A 存在 , ( A) . 1 (A ) 1 1 (5)如果 A 存在, ( A) . 1 (A )
ag = branch(ssg, ′a′);
从系统状态方程ssg中获取矩阵 ag。 如果想一次得 到ssg中所有的矩阵, 可以输入 [ag, bg, cg, dg] = branch(ssg);
表 6.1 mksys命令的常见参数
3) tree
为用户提供了一个创建分层数据结构包括矩阵、 字符串甚至其它tree类型的一般工具。 例如, 如果希望同时保存二输入输出系统(A, B1, B2, …)、 控制器(af, bf, cf, df)、频率响应[w; sv] 以及 这个系统的名称Aircraft Design Data, 就可以输入 fr = tree(′w, sv′, w, sv); DesignData = tree(′plant, controller, freq, name′,
在Robust Control Toolbox的函数中, 如果输入参数
包含一个tree变量, 该函数能够自动检查该变量是否代 表某个系统。
如果是, 那么该函数将自动将该输入变量展开, 用
它代表的实际系统矩阵来替代原来的系统变量作为函 数的输入参数。 例如, 下面的两行程序实际上完成相同 的计算功能: hinf(TSS); hinf(A, B1, B2, C1, C2, D11, D12, D21, D22);
下面的M文件函数可以用来创建系统的tree变量:
1) mksys 该函数可以将代表系统对象的矩阵封装到单个 MATLAB变量中。 例如ssg = mksys(ag, bg, cg, dg); TSS = mksys(A, B1, B2, C1, C2, D11, D12, D21, D22,
第6章 鲁棒控制系统的计算机 辅助设计与仿真
6.1 鲁棒控制工具箱介绍 6.2 鲁棒控制系统概述 6.3 鲁棒控制系统的设计方法 6.4 鲁棒控制系统设计实例
6.1 鲁棒控制工具箱介绍
6.1.1 鲁棒控制工具箱简介 鲁棒控制理论是近年来现代控制理论研究的热点 和前沿课题。 我们知道, 在对控制系统进行分析和设计 前一般首先需要对被研究的对象进行建模, 系统控制器 的设计一般是在理想模型的情况下完成的。
借助鲁棒控制系统工具箱, 我们可以完成的工作包括:
1) 鲁棒多变量控制系统设计 鲁棒控制系统工具箱(Robost Control Toolbox)是 建立在控制系统工具箱(Control System Toolbox)的基 础上的, 为用户提供了更为先进的控制算法。 它在现代
控制理论与实际控制工程之间建立了一座桥梁。 该工具
1
(6) ( A) ( A) (7) ( A B) ( A) ( B) (8) i2 Trace( A* A)
i 1 n
其中属性1在鲁棒控制系统的分析和设计中很重要。
因为该属性反映了矩阵A的最大特征值与输入向量x在
所有可能方向上的矩阵增益的最大值之间的关系。 对 于稳定的Laplace变换矩阵G(s)∈Cm×n, p=min(m,n)。
6.2.4 鲁棒控制分析
鲁棒分析的目的是通过某种适当的非保守分析算法 来“观察”MSM矩阵。 换句话说, 我们将找出系统保 持稳定状态下不确定性的上界。 其基本步骤包括: (1) 定义不确定性模型。 (2) 将不确定输入(包括结构和非结构不确定性因 素)写成图6.4所示的M-Δ形式。
图 6.4
这个过程可以用图6.2来说明。
式(6.6)称为鲁棒条件。 KM称为最小不确定性Δ 的大小, 由每个频率对应的奇异值来度量。 函数KM又 称为对角扰动的多变量稳定裕度(MSM), 它的倒数 用μ表示, 即
KM
1

(Biblioteka Baidu.7)
图 6.2 标准鲁棒控制问题的方框图
如果Δn不存在, 该问题又被称为鲁棒镇定问题
箱包括一系列有关鲁棒多变量控制设计方法的实现算法, 其研究的重点为多变量频率响应的奇异值和多变量Bode
图的分析和绘制。
2) 鲁棒性分析
系统的不确定性因素具体有外界噪声/干扰信号、 传递函数的建模误差以及未建模的非线性动态特性。 鲁棒控制系统工具箱可以让用户找到系统在这些不确 定性条件下的多变量稳定裕度的度量。 使用的方法包 括: 最优对角缩放、 Perron特征向量对角缩放和奇异 值方法等。

D pTyiui D p 1

其中, Dp∈D为Perron最优增益矩阵。
D={diag|(d1I, …, dnI)|dj>0}, 显然‖Tyi ui ‖∞也是1/KM 的上界。 如果这些上界都满足鲁棒条件约束, 那么可以
充分保证μ和KM也满足鲁棒条件约束。
6.2.3 结构与非结构不确定性
1
M ( s ) F ( I FG ) 1 M ( s ) GF ( I GF ) 1
图 6.5 加法和乘法表示的不确定性的Bode图
例 6.2 结构不确定性的建模。
下面将讨论如何从状态空间的A和B矩阵中提取系 统的结构不确定。 假定飞机的状态空间模型表示为:
其中, (p, r, β, δa, δr)的初始导数定义为
4) 鲁棒模型简化
有时根据鲁棒控制理论设计出来的鲁棒控制器的阶 数很高以至于难于实现, 这时通常需要进行控制器的简 化。 其它模型简化的场合还包括系统模型简化以及大 规模系统仿真等等。 一个良好的模型简化算法应该同 时具有数值鲁棒性和保持闭环系统鲁棒性的能力。 鲁 棒控制系统工具箱提供的模型简化算法可以满足这些 要求。
例 6.1 对非结构不确定性进行建模。 下面的传递函数代表某架飞机的动态特性。 1 G( s) 2 2 s ( s 2) 如果正常的模型为 G ( s ) 1/ s , 则
2
s2 1 A G G 2 2 s ( s 2) s2 1 M (G G )G 2 s 2
对于任何矩阵A, 有
A U
r V U 0
*
0 * V 0
(6.1)
其中, Σr=diag(σ1, σ2, …, σr)。 式(6.1)称为矩阵A
的奇异值分解(SVD), 其中A的最大奇异值定义为
( A) 1
如果矩阵A是n×n的方阵, 则它的第n个奇异值, 也就 是最小的奇异值, 定义为
TSS, ssf, fr, ′Aircraft... Design Data′);
图6.1显示了tree变量DesignData的层次结构。
图 6.1 Design Data的层次结构
为了得到tree变量DesignData第一层中的name的变
量值, 可以输入 name = branch(DesignData, ′name′) ans = Aircraft Design Data
MATLAB 提 供 的 鲁 棒 控 制 系 统 工 具 箱 ( Robost
Control Toolbox)提供了多变量线性鲁棒控制系统分析 和设计的函数和工具。 研究对象包括存在建模误差、 系统参数不确定或动态特性不能完全确定的系统。 工 具箱提供的功能强大的算法函数可以帮助用户快速完 成鲁棒控制系统(主要是线性系统)的复杂计算和设 计工作。
鲁棒控制系统设计问题的一般描述如下:
假定一个多变量系统P(s), 寻找某个稳定的控制器 F(s), 使得闭环系统的传递函数 Ty u 满足下面的关系:
i i
1 K M (Tyiui ( j ))
1
(6.6)
K M (Tyiui ) inf{ ( ) | det( I Tyiui ) ) 0} diag ( 1 ,, n )
实际上每一个Δi(i=1, …, n)自身都是矩阵并且代表不 同种类的物理不确定性因素。 在鲁棒控制中, 这些不确 定因素分为结构不确定性和非结构不确定性。非结构 不确定性代表与系统频率无关的项。 例如, 驱动器的饱 和特性、高频段的非建模误差或者低频段的系统扰动 等等。 它们与正常系统模型的关系可以表示为
定义G(jω)的与频率相关的H2和H∞范数如下:
H2范数
G 2 [
H∞范数


( i (G( j )))2 d ]
1 2
(6.4)
G

sup (G ( j ))

(6.5)
6.2.2 标准的鲁棒控制问题
鲁棒多变量反馈控制系统的设计问题可以简单地 描述为: 为系统设计的控制规律使得系统在环境或系 统本身的不确定性影响下仍然具有指定容许误差范围 内的系统响应和系统误差。 这里的不确定性包括很多 方面, 但其中最重要的是指系统的外界干扰(噪声)信 号和系统传递函数的建模误差。 鲁棒控制系统设计将 采用H∞范数作为这类不确定性因素的度量。
G G A
或者写成相乘的形式
(6.8) (6.9)
G ( I M )G
图 6.3 非结构不确定性的加法与乘法表示
结构不确定性代表系统模型中的参数变化, 例如系
统传递函数中零极点位置的变化, 系统状态矩阵中系 统矩阵的变化, 以及指定回路增益的变化等等。 MATLAB的鲁棒控制系统工具箱允许用户对结构 和非结构不确定性进行建模, 并将它们考虑进控制器的 设计过程中。 提供的各种函数和工具可以完成系统的 鲁棒分析和鲁棒控制器的设计。
相关文档
最新文档