主要内容

命令行平衡截断的近似模型

这个例子展示了如何使用balred在MATLAB®命令行中计算模型的降阶近似。

balred移除对整体模型行为贡献最低能量的状态。因此,使用balred,你可以从研究模型状态的能量贡献开始。您可以根据对整个模型行为有重要贡献的状态的数量来选择近似顺序。

对于本例,加载一个高阶模型。hplant是一个23阶SISO模型。

负载ltiexampleshplant订单(hplant)
Ans = 23

检查每个状态的相对能量量hplant使用汉克尔奇异值(HSV)图。

hsvplot (hplant)

图中包含一个轴对象。标题为Hankel奇异值和近似误差的坐标轴对象包含3个类型为bar, line的对象。这些对象表示不稳定模式,稳定模式,绝对误差界限。

小汉克尔奇异值表明相关状态对系统行为的贡献很小。图中显示,两个状态占据了系统的大部分能量。因此,试着将模型简化为一阶或二阶。

opts = balredOptions(“StateElimMethod”“截断”);Hplant1 = balred(hplant,1,opts);Hplant2 = balred(hplant,2,opts);

第二个参数balred指定目标的近似顺序,这样hplant1一阶近似和hplant2是二阶近似吗hplant.默认情况下,balred丢弃Hankel奇异值最小的状态,并改变其余状态以保持系统的直流增益。设置StateElimMethod选项截断原因balred放弃低能态而不改变剩余的状态。

当使用降阶模型时,重要的是要验证近似不会在对应用程序重要的频率上引入不准确性。因此,比较原始系统和近似系统的频率响应。对于MIMO系统,使用sigmaplot命令。对于这个SISO系统,检查一个波德图。

bodeplot (hplant hplant2 hplant1)传说(“原始”二阶的“一阶”

图中包含2个轴对象。轴对象1的标题从:Robot Arm/Demux1(第2页)到:Motorized Spindle1(第1页)包含3个类型为line的对象。这些物体代表原始,二阶,一阶。坐标轴对象2包含3个line类型的对象。这些物体代表原始,二阶,一阶。

二阶近似hplant2和原来的23阶系统匹配得很好,尤其是在低频的时候。一阶系统也不匹配。

一般来说,当你降低近似模型的阶数时,近似模型的频率响应开始与原始模型不同。选择一个在对你重要的波段上足够准确的近似值。例如,在控制系统中,您可能希望控制带宽内具有良好的精度。在远高于控制带宽的频率上的精度,在那里增益迅速滚掉,可能不那么重要。

你也可以在时域中验证近似。例如,研究原始系统和降阶系统的阶跃响应。

stepplot (hplant hplant2,“r——”hplant1,“g——”)传说(“原始”二阶的“一阶”“位置”“东南”

图中包含一个轴对象。标题为From: Robot Arm/Demux1(第2页)到:Motorized Spindle1(第1页)的坐标轴对象包含3个类型为line的对象。这些物体代表原始,二阶,一阶。

这个结果证实了二阶近似与原来的23阶系统是很好的匹配。

另请参阅

功能

实时编辑任务

相关的话题