主要内容

柔性梁的鲁棒振动控制

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

柔性梁的不确定性模型

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

图1:柔性梁的主动控制

在此设置中,传感器测量叶尖位置 Y ( T ) 而驱动器是一个压电贴片,传递一个力 U ( T ) .我们可以根据控制输入对传递函数进行建模 U 倾斜位置 Y 使用有限元分析。只保留前六种模式,我们得到了该形式的植物模型

G ( s ) = = 1. 6. α s 2. + 2. ζ ω s + ω 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%。若要构建柔性梁的不确定性模型,请使用尿素的目的指定阻尼和固有频率的不确定度范围。为了简化,我们假设所有模态具有相同的阻尼系数 ζ

%阻尼因子ζ=尿素的(“ζ”,0.002,“范围”[0.0002, 0.02]);%固有频率w1=尿素(“w1”, 18.95,“百分比”,20);w2=尿素(“那”, 118.76,“百分比”, 20);w3 =尿素的(w3的, 332.54,“百分比”, 20);w4 =尿素的(“w4”, 651.66,“百分比”,20);w5=尿素(“w5”,1077.2,“百分比”, 20);将=尿素的(“将”,1609.2,“百分比”, 20);

接下来,将这些不确定系数组合到 G ( s )

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}),网格标题(“不确定梁模型”)

图中包含2个轴对象。标题从:uG到:y的轴对象1包含21个line类型的对象。此对象表示G。轴对象2包含21个line类型的对象。此对象表示G。

健壮的LQG控制

LQG控制是一种自然的主动振动控制方法。与系统,您不局限于一个全阶最优LQG控制器,可以调优任何阶的控制器。例如,让我们调优一个6阶状态空间控制器(工厂订单的一半)。

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

LQG控制设置如图2所示。信号 D N 分别是过程噪声和测量噪声。

图2:LQG控制结构

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

C.输入名称=“伊恩”;C.OutputName =“你”;S1=sumblk(‘yn=y+n’);S2=sumblk('uG = u + d');CL0=连接(G、C、S1、S2、{“d”,“n”},{“y”,“你”});

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

CL0
C:可调1x1状态空间模型,6个状态,1次出现。w1:不确定真实,名义= 18.9,可变性=[-20,20]%,3个事件w2:不确定真实,名义= 119,可变性=[-20,20]%,3个事件w3:不确定真实,名义= 333,可变性=[-20,20]%,3个事件w4:不确定真实,名义= 652,可变性=[-20,20]%,3个事件w5:w6:不确定实数,名义= 1.61e+03,可变性=[-20,20]%,3次出现zeta:不确定实数,名义= 0.002,范围=[0.0002,0.02],6次出现ss(CL0)类型查看当前值,“得到(CL0)”查看所有属性,“CL0.”与积木互动。

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

R = TuningGoal。LQG ({“d”,“n”},{“y”,“你”},诊断接头([1,1平台以及]),诊断接头(1 e-12 [1]));

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

[~, CL, fSoft信息]= systune (CL0, R);
软:[5.63e-05,Inf],硬:[-Inf,Inf],迭代次数=72软:[6.13e-05,Inf],硬:[-Inf,Inf],迭代次数=97软:[6.47e-05,Inf],硬:[-Inf,Inf],迭代次数=65软:[7.76e-05,Inf],硬:[-Inf,Inf],迭代次数=88软:[:-7.76e-05,Inf],硬:[-Inf,Inf],迭代次数=43软:[7.77e-05,Inf],硬:[-Inf,Inf],迭代次数=79软:[7.8e-05,8.46e-05],硬:[-Inf,-Inf],迭代次数=38软:[8.02e-05,8.85e-05],硬:[-Inf,-Inf],迭代次数=117软:[8.22e-05,8.24e-05],硬:[-Inf,-],迭代次数=40软:[-8.22e-05,8.22e-05],硬:[-Inf],迭代次数=25次最终:软=8.22e-05,硬=Inf,迭代次数=750

验证

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

Tdy=getIOTransfer(CL,“d”,“y”);博德(G,Tdy,{1e0,1e4})头衔(“从扰动位置转移到尖端位置”)传奇(“开环”,“闭环”)

图中包含2个轴对象。标题从:In(1)到:y的轴对象1包含42个line类型的对象。这些对象表示开环、闭环。轴对象2包含42个line类型的对象。这些对象表示开环、闭环。

接下来绘制脉冲扰动的开环和闭环响应 D .为便于阅读,只绘制了标称装置的开环响应。

脉冲(额定(G),Tdy,5)标题(“对脉冲干扰的响应d”)传奇(“开环”,“闭环”)

图中包含一个Axis对象。标题为:In(1)到:y的Axis对象包含22个line类型的对象。这些对象表示开环和闭环。

最后系统还提供了深入了解阻尼和固有频率值的最坏情况组合。这个信息可以在输出参数中找到信息

WCU=Info.wcPert
WCU=10×1带有字段的结构数组:W1 w2 w3 w4 w5 w6 zeta

使用此数据绘制两种最坏情况下的脉冲响应。

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

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

相关实例

更多关于