此示例显示如何使用鲁棒控制工具箱™命令Ucover.
将一个LTI响应的模拟作为一个不确定的系统。该命令可用于将不确定的模型适合一组频率响应,代表系统可变性,或者降低现有不确定模型的复杂性以便于促进鲁棒控制器的合成musyn
.
在第一个例子中,我们有一系列的模型来描述工厂在各种运行条件下的行为。标称对象模型是一个一阶不稳定系统。
Pnom = tf(2,[1 -2])
PNOM = 2 ----- S-2连续时间传递函数。
其他的模型是PNOM.
.它们都有一个不稳定的极点,但这个极点的位置可能随操作条件而变化。
p1 = Pnom *特遣部队(1,。06年1]);%额外滞后p2 = Pnom *特遣部队([-。02 1]、[。02 1]);%时间延迟P3 = PNOM * TF(50 ^ 2,[1 2 * .1 * 50 50 50 ^ 2]);高频谐振%p4 = Pnom*tf(70^2,[1 2*。2 * 70 70 ^ 2]);高频谐振%P5 = tf(2.4,[1 -2.2]);%极/增益迁移p6 = tf(1.6,[1 -1.8]);%极/增益迁移
为了应用鲁棒控制工具,我们可以用一个单一的不确定对象模型来替代这组模型,其行为范围包括p1
通过p6
.这是该命令的一种用法Ucover.
.此命令采用阵列LTI模型Parray
还有一个名义模型PNOM.
并对差异进行建模Parray-Pnom
作为系统动态的乘法不确定性。
因为Ucover.
期望一个模型数组,使用堆
命令收集工厂模型p1
通过p6
到一个数组中。
Parray =堆栈(1,p1, p2, p3, p4, p5, p6);
下一步,使用Ucover.
“覆盖”行为范围Parray
具有不确定的形式模型
P = Pnom * (1 + Wt * Delta)
所有的不确定性都集中在“未建模动力学”中三角洲
(一种ultidyn
对象)。因为三角洲
在所有频率上均为1,一个“成形”滤波器Wt
用来捕捉不确定性的相对数量是如何随频率变化的。这个过滤器也被称为不确定性加权函数。
尝试第4次过滤器Wt
对于这个示例:
orderWt = 4;Parrayg =朋友(Parray logspace(1、3、60));[P,信息]= ucover (Parrayg、Pnom orderWt,“InputMult”);
由此产生的模型P.
是一个具有标称值的单输入单输出不确定状态空间(USS)对象吗PNOM.
.
P.
P =具有1个输出的不确定连续时间状态空间模型,1个输入,5个状态。模型不确定性由以下块组成:parrayg_inputmultdelta:不确定的1x1 lti,峰值增益= 1,1次出现“p.nominalvalue”,以查看标称值,“get(p)”查看所有属性,以及“p.containty“与不确定的元素互动。
特遣部队(P.NominalValue)
ans = 2 ----- s- 2连续时间传递函数。
凸型幅度绘图确认成形过滤器Wt
“涵盖”植物行为的相对变异。作为频率的函数,不确定度在5 rad/sec (-10dB = 0.3)时为30%,在10 rad/sec时为50%,超过29 rad/sec时为100%。
Wt = Info.W1;bodemag ((Pnom-Parray) / Pnom,“b——”,wt,'r');网格标题(“相对差距与Wt的大小”)
您现在可以使用不确定的模型P.
为原始的植物模型家族设计一个鲁棒控制器,请参见使用鲁棒控制同时稳定有关详细信息。
在第二个例子中,我们从工厂的一个详细的不确定模型开始。该模型由增益和时间常数不确定的一阶动力学组成,具有轻微欠阻尼共振和显著的未建模动力学。该模型使用尿尿
和ultidyn
指定不确定变量的命令:
γ=尿素的('伽玛'2,'perc',30);%不确定性增加tau =尿尿('tau',1,'perc',30);%不确定时间常数wn = 50;xi = 0.25;P = TF(γ,[TAU 1])* TF(Wn ^ 2,[1 2 * xi * wn wn ^ 2]);%添加未建模的动态,并设置SampleStateDim为5以获得代表性不确定模型p的%样本值pδ= ultidyn ('三角洲'[1],“SampleStateDim”5,“约束”,1);W =制造(0.1,20,10);p = p *(1 + w * delta)
P = 1输出1输入4状态的不确定连续时间状态空间模型。模型不确定性由以下块组成:delta:不确定1x1 LTI,峰值增益= 1,1发生gamma:不确定实数,标称= 2,变异性=[-30,30]%,1发生tau:输入“P. nominalvalue”可以查看名义值,“get(P)”可以查看所有属性,“P. uncertainty”可以与不确定元素交互。
阶跃反应的集合说明了植物的可变性。
步骤(P, 4)标题(“对不确定系统的抽样步骤响应”)
不确定植物模型P.
包含3个不确定因素。为了控制设计的目的,通常需要简化这个不确定性模型,同时近似地保留它的整体可变性。这是该命令的另一种用法Ucover.
.
使用Ucover.
在这种情况下,首先映射不确定的模型P.
使用的LTI模型数组usample.
.该命令对不确定系统中的不确定元素进行采样,并返回相应的LTI模型,每个模型表示不确定系统的一种可能行为。在本例中,示例P.
在60点(随机数生成器被播种为可重复性):
rng (0,'twister');Parray = usample (P、60);
下一步,使用Ucover.
涵盖所有的行为Parray
通过一个简单的不确定性模型忙
.选择标称值P.
作为覆盖的中心,并使用一个二阶滤波器来模拟未建模动力学的频率分布。
orderWt = 2;Parrayg =朋友(Parray logspace(3、3、60));[忙,信息]= ucover (Parrayg, P。NominalValue orderWt,“InputMult”);
波德幅值图显示了滤波器幅值(红色部分)“覆盖”植物频率响应的相对变异性(用蓝色表示)。
Wt = Info.W1;Bodemag((p.nominalvalue-parray)/p.nominalvalue,“b——”,wt,'r')标题(“相对间隙(蓝色)vs.整形滤镜大小(红色)”)
现在可以使用简化的不确定性模型忙
为原始工厂设计一个强大的控制器,请参阅首先削减鲁棒设计有关详细信息。
在第三个例子中,我们从40输入的2输出系统开始40个频率响应。在各种操作条件下,已通过频率分析仪收集此数据。两个状态标称模型适用于最典型的响应:
a = [-5 10; -10 -10 -5];b = [1 0; 0 1];c = [1 10; -10 1];d = 0;pnom = ss(a,b,c,d);
频率响应数据加载到40×1的FRD模型中:
加载Ucover_demo.尺寸(pdata)
40x1 FRD模型阵列。每个型号有2个输出,2个输入,120个频率点。
绘制此数据并叠加标称模型。
BODE(PDATA,“b——”,pnom,'r',{1。1 e3}),网格传奇(的频率响应数据那“名义模型”那“位置”那“东北”)
由于响应变异性不大,请尝试使用该形式的附加不确定性模型来建模此频率响应族
P = Pnom + w * Delta
在哪里三角洲
是一个2×2ultidyn
对象表示未建模的动态和W.
是反映不确定性的频率分布的标量加权函数(PDATA中的变异性)。
从一阶滤波器开始W.
比较的大小W.
以每个频率所需的最小不确定性:
[P1, InfoS1] = ucover (Pdata Pnom 1,'添加剂');w = InfoS1.W1;bodemag (w,'r', InfoS1。W1opt,‘g’,{1e-1 1e3})标题('标量添加剂不确定性模型')传说(“一阶w”那分钟不确定性量的那“位置”那“西南”)
的大小W.
应与最低不确定性相匹配。很明显,一阶拟合过于保守,并在大多数频率下超过该最小金额。再次尝试使用三阶过滤器W.
.为了提高速度,重用数据infos1.
为了避免在每个频率上重新计算最优的不确定性。
[P3, InfoS3] = ucover (Pnom InfoS1 3,'添加剂');w = InfoS3.W1;bodemag (w,'r',infos3.w1opt,‘g’,{1e-1 1e3})标题('标量添加剂不确定性模型')传说('三阶W'那分钟不确定性量的那“位置”那“西南”)
的大小W.
与最小不确定性值非常接近。在附加不确定性模型中,P3
提供了对Pdata
.请注意,P3
总共有8个状态(2个来自名义部分,6个来自W.
)。
P3
P3 =不确定连续时间2输出2输入8状态的状态空间模型。Pdata_AddDelta:不确定2x2 LTI,峰值增益= 1,1个事件类型“P3”。NominalValue“查看名义值”,“get(P3)”查看所有属性,以及“P3。“不确定性”与不确定因素相互作用。
例如,您可以使用非标量不确定性加权函数来细化这个附加的不确定性模型
P = Pnom + W1*Delta*W2
在哪里W1
和W2
是2乘2的对角滤波器。在这个例子中,限制使用W2 = 1
并且允许W1的两个对角线元素都是三阶的。
[点,马上通知]= ucover (Pdata Pnom, [3; 3], [],'添加剂');
比较的两个条目W1
提前计算的最低不确定性金额。请注意,在所有频率下,其中一个对角线条目W1
具有比标量过滤器小得多的幅度W.
.这表明,对角线加权不确定性模型产生了一个较少保守的覆盖的频率响应族。
Bodemag(Infos1.w1opt,“g *”那...InfoM.W1opt (1, 1),“r——”,Infomw1(1,1),'r'那...InfoM.W1opt (2, 2),“b——”InfoM.W1 (2,2)“b”,{1e-1 1e3});标题('对角线添加剂不确定性模型')传说(“标量最佳体重”那...'W1(1,1),点亮最佳'那...“W1 (1,1), 3 rd-order适合那...“W1(2, 2),逐点的最优的那...“W1 (2, 2), 3 rd-order适合那...“位置”那“西南”)
一个覆盖层相对于另一个覆盖层的保守程度可以通过考虑两个频率相关的量来部分量化:
Fs2d = norm(inv(W1)*w), Fs2d = norm(W1/w)
这些量是通过一个不确定性模型需要缩放多少来覆盖另一个不确定性模型来衡量的。例如,不确定性模型Pnom + W1 *δ
需要放大一倍Fd2s
包括由不确定模型所代表的所有模型Pnom + w *δ
.
阴谋Fd2s
和FS2D.
作为频率的函数。
Fd2s = fnorm (InfoS1.W1opt *发票(InfoM.W1opt));Fs2d = fnorm (InfoM.W1opt *发票(InfoS1.W1opt));semilogx (fnorm (Fd2s),“b”fnorm (Fs2d),'r'),网格轴([0.1 1000 0.5 2.6])xlabel(“频率(rad / s)”),Ylabel('震级')标题(“不同封面的规模因素”)传说('对角线标量因子'那...“标量到对角因子”那“位置”那“西南”);
这张图显示:
FS2D = 1
在很大的频率范围内是这样的Pnom + w *δ
包含所建模的所有行为Pnom + W1 *δ
在相同的频率范围内,Pnom + W1 *δ
不包括所建模的所有行为Pnom + w *δ
事实上,需要扩大1.2和2.6之间的一个因素,以便这样做。
在频率范围[110]中,不确定性模型都没有包含另一个,但在所有频率下,制作Pnom + W1 *δ
封面Pnom + w *δ
需要比交谈更小的缩放系数。
这表明Pnom + W1 *δ
模型提供了较少保守的频率响应数据封面Pdata
.