线性化验证的频域使用FRESTIMATE

这个例子展示了如何使用频率响应估计验证块逐块分析结果的线性化。要运行这个例子,你需要航天模块库™软件。

打开模型

打开轻型飞机的Si万博1manbetxmulink模型。有关此模型的更多信息,请参见轻型飞机设计(航天Blockset)。

MDL ='scdskyhogg';open_system(MDL)

分析线性化模型

您可以从海拔指令信号线性化,轻量化飞机模型,AltCmd到感测到的高度,h_sensed。这些线性分析点在模型中已经指定。

IO = getlinio(MDL)
2 x1向量的线性化IOs: - - - - - - - - - - - - - - - - - - - - - - - - - - - - 1。线性化输入扰动位于以下信号:-块:scdskyhogg/Pilot/Add - Port: 1 -信号名称:AltCmd 2。线性化输出测量位于以下信号:-块:scdskyhogg/车辆系统模型/航空电子设备/自动驾驶仪/总线选择器1 -端口:1 -信号名称:< h_>

使用线性化模型线性化功能。该模型被预先配置使用利用模拟快照在t = 75获得的操作点。

SYS =线性化(MDL,IO);波特(SYS)

估计频率响应

要确定是否线性结果正确的非线性模型的捕获特性,如约6.28弧度/秒的反共振,则可以使用验证线性化的结果frestimate

创建sinestream输入信号。使用线性化结果作为输入参数传递给sinestream输入信号的自动设定的各种参数,如频率组以及对于每个频率周期,数基于线性系统上。

在= frest.Sinestream(SYS);in.Amplitude = 0.5
所述sinestream输入信号:频率:[0.0034142; 0.0054345; 0.0086502; 0.013768 ...](弧度/秒)振幅:0.5 SamplesPerPeriod:[110417; 69370; 43582; 27381 ...] NumPeriods:[4; 4; 4;4 ...] RampPeriods:0 FreqUnits(弧度/秒,赫兹):弧度/秒SettlingPeriods:[1; 1; 1; 1 ...] ApplyFilteringInFRESTIMATE(开/关):上SimulationOrder(顺序/ OneAtATime):顺序

该软件选择25次的频率处来计算响应。这些频率0.0034弧度/秒和14.5弧度之间变化/秒。被自动地选择集中在发生在哪里有趣动力学(例如在6.28弧度/秒的反谐振)的频率。周期,这将需要为系统达到稳定状态的数目,估计针对每个这些频率和1个周期(0.0034弧度/秒)和188个周期(14.5弧度/秒)之间变化。

估计使用本输入信号的频率响应。frestimate模拟输入信号,这可能需要在正常模拟模型长时间模型。为了加快仿真,配置为使用快速加速器模式的典范。

set_param(MDL,'SimulationMode''快速');

使用快速加速器模式可以显著增加模拟的速度。实际速度提高取决于你的电脑配置。

运行的频率响应估计使用下面的命令。

sysest = frestimate(MDL,在,IO);

在这个例子中,你可以加载MAT文件的估计结果。

负载scdskyhogg_frestresults.mat;

比较针对来自频率响应数据分析结果的线性化frestimate。频率响应数据和分析结果的线性匹配良好,验证所述频率1和10弧度之间反共振/ s的确实存在于实际非线性飞机模型。

博德(SYS,sysest,'R *'

关闭模型。

bdclose ('scdskyhogg'

也可以看看

相关的话题