主要内容

柔性梁的鲁棒振动控制

这个例子展示了如何稳健地调整控制器以减少柔性梁的振动。这个例子改编自G. Goodwin, S. Graebe和M. Salgado的“控制系统设计”。

柔性梁的不确定模型

图1描述了柔性梁的主动振动控制系统。

图1:柔性梁主动控制

在这个设置中,传感器测量尖端的位置 y t 驱动器是一个压电片,用来发力 u t .我们可以从控制输入建立传递函数的模型 u 顶端位置 y 采用有限元分析。只保留前六种模式,我们就得到了该形式的植物模型

G 年代 1 6 α 年代 2 + 2 ζ ω 年代 + ω 2

用下列标称值表示振幅 α 和固有频率 ω

α 9 7 2 × 1 0 - 4 0 0 1 2 2 0 0 0 1 2 - 0 0 5 8 3. - 0 0 0 1 3. 0 1 1 9 9

ω 1 8 9 5 1 1 8 7 6 3. 3. 2 5 4 6 5 1 6 6 1 0 7 7 2 1 6 0 9 2

阻尼因子 ζ 通常不为人所知,并假定其范围在0.0002和0.02之间。同样地,固有频率只是近似已知的,我们假设其位置的不确定性为20%。为了建立柔性梁的不确定模型,使用尿素的对象指定阻尼和固有频率的不确定范围。为了简化,我们假设所有模式都有相同的阻尼因子 ζ

%阻尼因子Zeta = ureal(“ζ”, 0.002,“范围”[0.0002, 0.02]);%自然频率W1 = ureal(“w1”, 18.95,“百分比”, 20);W2 = ureal(“那”, 118.76,“百分比”, 20);W3 = ureal(w3的, 332.54,“百分比”, 20);W4 = ureal(“w4”, 651.66,“百分比”, 20);W5 = ureal(“w5”, 1077.2,“百分比”, 20);W6 = ureal(“将”, 1609.2,“百分比”, 20);

然后将这些不确定系数合并到表达式中 G 年代

Alpha = [9.72e-4 0.0122 0.0012 -0.0583 -0.0013 0.1199];G =特遣部队(α(1),(1 2 *ζ* w1 w1 ^ 2]) +特遣部队(α(2),(1 2 *ζ* w2 w2 ^ 2]) +...特遣部队(α(3),[1 2 *ζ* w3 w3 ^ 2]) +特遣部队(α(4),(1 2 *ζ* w4 w4 ^ 2]) +...特遣部队(α(5),[1 2 *ζ* w5 w5 ^ 2]) +特遣部队(α(6),[1 2 *ζ*将将^ 2]);G.InputName =uG的;G.OutputName =“y”

可视化不确定性对传递函数的影响 u y .的波德函数自动显示20个随机选择的不确定参数值的响应。

rng(0), bode(G,{1e0,1e4}), grid title(“不确定梁模型”

图中包含2个轴对象。标题为From: uG To: y的坐标轴对象1包含21个类型为line的对象。该对象表示G. Axes对象2包含21个line类型的对象。这个对象表示G。

鲁棒LQG控制

LQG控制是振动主动控制的天然配方。与systune,您不局限于全阶最优LQG控制器,并且可以调优任意阶控制器。例如,让我们调优一个六阶状态空间控制器(植物顺序的一半)。

C =不可调(“C”、6、1,1);

LQG控制设置如图2所示。的信号 d 而且 n 分别是过程噪声和测量噪声。

图2:LQG控制结构

构建图2中框图的闭环模型。

C.InputName =“yn”;C.OutputName =“u”;S1 = sumblk('yn = y + n');S2 = sumblk('uG = u + d');CL0 = connect(G,C,S1,S2,{' d '“n”}, {“y”“u”});

请注意,CL0这取决于两个可调控制器C不确定阻尼和固有频率。

CL0
CL0 =广义连续时间状态空间模型,2输出,2输入,18个状态,和以下块:C:可调1x1状态空间模型,6个状态,1次出现。w1:不确定真实,名义上= 18.9,变异性=[-20,20]%,3次出现w2:不确定真实,名义上= 119,变异性=[-20,20]%,3次出现w3:不确定真实,名义上= 333,变异性=[-20,20]%,3次出现w5:不确定真实,名义上= 1.08e+03,变异性=[-20,20]%,3次出现w6:不确定真实,名义上= 1.61e+03,变异性=[-20,20]%,3次出现zeta:不确定真实,标称= 0.002,范围=[0.0002,0.02],6次出现类型“ss(CL0)”查看当前值,“get(CL0)”查看所有属性,以及“CL0。Blocks”来与这些块进行交互。

使用LQG标准作为控制目标。这个调优目标允许您指定噪声协方差和性能变量的权重。

R =调谐目标。LQG ({' d '“n”}, {“y”“u”},诊断接头([1,1平台以及]),诊断接头(1 e-12 [1]));

现在调优控制器C使整个不确定性范围内的LQG成本最小化。

[CL,fSoft,~,Info] = systune(CL0,R);
软:[5.41e-05,0.000106],硬:[-Inf,-Inf],迭代= 156软:[6.7e-05,Inf],硬:[-Inf,Inf],迭代= 72软:[6.96e-05,7.39e-05],硬:[-Inf,-Inf],迭代= 52软:[7.21e-05,7.21e-05],硬:[-Inf,-Inf],迭代= 30 Final:软= 7.21e-05,硬= -Inf,迭代= 310

验证

比较开闭环波德响应 d y 20个随机选取的不确定参数值。注意控制器是如何剪辑波德响应中的前三个峰值的。

Tdy = getIOTransfer(CL,' d '“y”);波德(G,临时任务,{1 e0, 1 e4})标题(“从扰动到尖端位置的转移”)传说(“开环”“闭环”

图中包含2个轴对象。轴对象1,标题From: In(1) To: y包含42个类型为line的对象。这些对象代表开环、闭环。Axes对象2包含42个line类型的对象。这些对象代表开环、闭环。

接下来绘制对脉冲扰动的开环和闭环响应 d .为了可读性,开环响应仅为标称装置绘制。

冲动(getNominal (G),临时任务,5)标题(“对脉冲干扰的反应d”)传说(“开环”“闭环”

图中包含一个轴对象。标题为From: In(1) To: y的坐标轴对象包含22个类型为line的对象。这些对象代表开环、闭环。

最后,systune还提供了最坏情况下阻尼和固有频率值的组合。该信息在输出参数中可用信息

WCU = Info.wcPert
WCU =3×1包含字段的struct数组:W1 w2 w3 w4 w5 w6 zeta

用这些数据来绘制两种最坏情况下的脉冲响应。

冲动(usubs(临时任务,WCU), 5)标题('脉冲干扰的最坏情况反应d'

图中包含一个轴对象。标题为From: d To: y的axis对象包含3个类型为line的对象。该对象表示untitled1。

相关的例子

更多关于