这个例子展示了如何使用鲁棒控制工具箱中的不确定对象来建模不确定系统,并使用鲁棒分析工具评估鲁棒稳定性和鲁棒性能。
鲁棒控制工具箱允许您创建不确定的元素,例如其值不确定的物理参数,并将这些元素组合成不确定的模型。然后,您可以轻松地分析不确定性对控制系统性能的影响。
例如,考虑一个植物模型
在哪里γ
可以在区间[3,5]和τ
平均值为0.5,变异性为30%。你可以创建一个不确定的P(s)模型,就像下面这个例子:
γ=尿素的(“伽马”4“范围”[3 - 5]);τ=尿素的(“τ”5,“比例”, 30);P = tf(gamma,[tau 1])
P =一个输出,一个输入,一个状态的不确定连续时间状态空间模型。模型不确定性包含以下模块:伽马:不确定真实,名义= 4,范围=[3,5],1出现τ:不确定真实,名义= 0.5,差异=(-30,30)%,1事件类型“P.NominalValue”的名义价值,“把(P)”所有属性,和“P.Uncertainty”与不确定的交互元素。
假设你设计了一个积分控制器C
对于标称植物(γ
= 4,τ
= 0.5)。来找出γ
和τ
影响装置和闭环性能,形成闭环系统中电控股
从C
和P
.
KI = 1 / (2 * tau.Nominal * gamma.Nominal);C = tf(KI,[1 0]);CLP =反馈(P * C, 1)
CLP =一个输出,一个输入,两个状态的不确定连续时间状态空间模型。模型不确定性由以下几个块组成:gamma:不确定实数,标称= 4,范围=[3,5],1次出现tau:不确定实数,标称= 0.5,可变性=[-30,30]%,1次出现类型“CLP”。NominalValue“查看名义值”,get(CLP)“查看所有属性”,以及“CLP。“不确定性”与不确定因素相互作用。
绘制工厂和闭环系统的阶跃响应。的一步
命令自动生成20个不确定参数的随机样本γ
和τ
并绘制相应的阶跃响应。
次要情节(2,1,1);步骤(P)、标题(“植物反应(20个样本)”次要情节(2,1,2);步骤(CLP)、标题(“闭环响应(20个样本)”)
图1:工厂的阶跃响应和闭环模型
下面的图表明,闭环系统是合理的鲁棒性,尽管在工厂直流增益的显著波动。这是一个合理设计的反馈系统所需要的共同特征。
本示例以示例为基础参数变化的直流电动机参考跟踪通过加入参数不确定性和未建模动力学,研究伺服控制器对这些不确定性的鲁棒性。
直流电动机的公称模型由电阻来定义R
,电感l
,电动势常数Kb
电枢常数公里
,粘性摩擦的线性近似Kf
惯性载荷J
.这些组件中的每一个都在特定的值范围内变化。电阻和电感常数在其标称值的±40%范围内。使用尿素的
构造这些不确定参数。
R =尿素的(“R”,2,“比例”, 40);L =尿素的(“L”, 0.5,“比例”, 40);
由于物理原因Kf
和Kb
是一样的,即使它们是不确定的。在本例中,标称值是0.015,范围在0.012到0.019之间。
K =尿素的(“K”, 0.015,“范围”[0.012 - 0.019]);公里= K;Kb = K;
粘滞摩擦,Kf
,其标称值为0.2,其值有50%的变化。
Kf =尿素的(Kf的, 0.2,“比例”, 50);
电路中的电流和施加到转子上的转矩可以用施加的电压和角速度来表示。创建传递函数H
把这些变量联系起来,使AngularSpeed
一个输出的H
以备后用。
H =[1、0公里]*特遣部队(1 (L R)) * [1 kb] + [0 0; 0 1; 0 kf);H.InputName = {“AppliedVoltage”;“AngularSpeed”};H.OutputName = {“当前”;“AngularSpeed”;“RotorTorque”};
电机通常驱动一个惯性,其动态特性与施加的扭矩角速度的变化率有关。对于刚体,这个值是常数。一个更现实但不确定的模型可能包含未知的阻尼共振。使用ultidyn
对象建模不确定线性时不变动力学。将刚体惯性的标称值设为0.02,我们将15%的动态不确定性以乘法形式包含进来。
J = 0.02*(1 + ultidyn)“Jlti”[1],“类型”,“GainBounded”,“约束”, 0.15,...“SampleStateDim”4));
这是一件简单的事AngularSpeed
的输入RotorTorque
通过不确定惯性的输出,J
,使用融通
命令。的AngularSpeed
输入=RotorTorque / (J * s)
.因此,使用从第三次输出到第二次输入的“正”反馈H
建立联系。这种连接导致系统只有一个输入(AppliedVoltage
)及两个输出(当前的
和AngularSpeed
).
Pall = lft(H,tf(1,[1 0])/J);
只选择了AngularSpeed
控制分析的其余部分的输出。
: P =笼罩(2)
P =不确定连续时间状态空间模型,1输出,1输入,2状态。模型不确定性包含以下模块:Jlti:不确定1 x1 LTI,峰值增益= 0.15,1出现K:不确定真实,名义= 0.015,=[0.012,0.019],2出现Kf:不确定真实,名义= 0.2,差异=(-50年,50)%,1出现L:不确定真实,名义= 0.5,差异=(-40,40)%,1出现R:输入“P. nominalvalue”可以看到名义值,“get(P)”可以看到所有属性,“P. uncertainty”可以与不确定元素相互作用。
P
为直流电机的单输入单输出不确定模型。为了便于分析,请使用以下控制器。
租=特遣部队(84 *(。233 1],[。0357 1 0]);
首先,将公称直流电动机的阶跃响应与15个不确定直流电动机模型样本进行比较。使用usample
显式地指定随机样本的数目。
clf步骤(usample (P, 15), P.NominalValue, 3)传说(“样本”,“名义”)
图2:植物的阶跃响应
同样,比较直流电机的标称(红色)和采样(蓝色)不确定模型的波德响应。
波德(usample (P, 15), P.NominalValue);传奇(“样本”,“名义”)
图3:植物预示反应
本节分析了直流电机控制器的鲁棒性。闭环系统的标称分析表明,反馈回路具有22 dB增益裕度和66 deg相位裕度,非常鲁棒。
保证金(P.NominalValue *续)
图4:闭环鲁棒性分析
的diskmargin
函数计算基于磁盘的增益和相位裕度。通过在所有频率和所有反馈回路中建模增益和相位变化,磁盘裕度倾向于更准确地估计鲁棒性,特别是在多回路控制系统中。计算直流电机回路的基于磁盘的裕度。
DM = diskmargin (P.NominalValue *续)
DM =结构体字段:GainMargin: [0.2792 3.5822] phasmargin: [-58.8054 58.8054] DiskMargin: 1.1271 LowerBound: 1.1271 UpperBound: 1.1271 Frequency: 5.0062 worst扰动:[1x1 ss]
虽然小于经典的增益和相位裕度,但基于磁盘的裕度基本上证实了标称反馈环路是非常稳健的。现在,回想一下直流电机的工厂是不确定的。模型中的不确定性如何影响这些稳定性边际?为快速洞察,绘制基于磁盘的增益和相位裕度为20个不确定的开环响应样本。
diskmarginplot (P *续,P.NominalValue *续)传说(“样本”,“名义”)
一些工厂的不确定性导致利润率下降。该图只显示了一小部分样本。用最坏情况分析来找出边际到底有多糟糕。的wcdiskmargin
函数直接计算模型不确定性的最坏情况增益和相位裕度。
wcDM = wcdiskmargin (P *续,“输出”)
wcDM =结构体字段:GainMargin: [0.8729 1.1457] phasmargin: [-7.7671 7.7671] DiskMargin: 0.1358 LowerBound: 0.1358 UpperBound: 0.1361 CriticalFrequency: 4.9831 worst扰动:[1x1 ss]
mag2db (wcDM.GainMargin)
ans =1×2-1.1811 - 1.1811
在这里,最坏情况的边际只有1.2分贝和7.8度,这表明闭环对于一些不确定元素的组合几乎是不稳定的。
灵敏度函数是反馈系统闭环性能的标准度量。计算不确定灵敏度函数年代
比较标称不确定灵敏度函数和采样不确定灵敏度函数的波德幅度图。
S =反馈(1 *续页);bodemag(年代,S.Nominal)传说(“样本”,“名义”)
图5:灵敏度函数S的大小。
在时域中,灵敏度函数表示阶跃扰动被拒绝的程度。绘制其阶跃响应图,以查看干扰抑制特性的变异性(标称显示为红色)。
步骤(年代,S.Nominal)标题(“抗干扰”)传说(“样本”,“名义”)
图6:抑制阶跃扰动。
使用wcgain
函数来计算灵敏度函数的峰值增益的最坏情况值。
[maxgain, worstuncertainty] = wcgain(年代);maxgain
maxgain =结构体字段:LowerBound: 7.5196 UpperBound: 7.5355 CriticalFrequency: 4.9973
与usubs
函数,可以将不确定元素的最坏情况值代入不确定灵敏度函数年代
.这给出了最坏情况的灵敏度函数Sworst
在整个不确定范围内。的峰值增益Sworst
匹配所计算的下界wcgain
.
Sworst = usubs(年代,worstuncertainty);规范(Sworst正)
ans = 7.5196
maxgain。lowerBound
ans = 7.5196
现在比较名义灵敏度和最坏情况灵敏度的阶跃响应。
步骤(Sworst S.NominalValue 6);标题(“抗干扰”)传说(“最坏的”,“名义”)
图7:阶跃扰动的标称和最坏情况抑制
显然,一些不确定元素的组合会显著降低控制器快速排除扰动的能力。最后,绘制灵敏度函数的标称值和最坏值的幅值。观察…的峰值Sworst
发生的频率maxgain。CriticalFrequency
:
bodemag (Sworst S.NominalValue)传说(“最坏的”,“名义”)举行在semilogx (maxgain.CriticalFrequency, 20 * log10 (maxgain.LowerBound),“g *”)
图8:标称灵敏度和最坏情况灵敏度的大小