主要内容

使用模型线性器根据规格计算工作点

可以计算Simulink的稳态工作点万博1manbetx®通过指定模型状态、输出和输入上的约束,并找到满足这些约束的模型运行条件来建立模型。有关稳态工作点的更多信息,请参见关于操作要点而且计算稳态工作点

控件来为您的Simulink模型寻找操作点,您可以交互地修剪您的模型万博1manbetx模型线性化电路,如本例所示。

或者,你可以修剪你的模型:

在本例中,计算一个工作点以满足状态规范。使用类似的方法,可以定义输出或输入规范。此外,您还可以定义状态、输出和输入规范的组合;也就是说,您不必只使用状态规范。

有关调整模型以满足规格的详细信息,请参见根据规格计算稳态工作点

开放模型线性化电路

打开Simulin万博1manbetxk模型。

sys =“scdspeed”;open_system(系统)

打开模型线性化电路,在Simulin万博1manbetxk模型窗口中,在应用程序画廊,点击模型线性化电路

定义工作点规格

模型线性化电路,在线性分析选项卡,在操作点下拉列表,选择调整模型

在“修剪模型”对话框中,在规范选项卡,您可以为模型状态、输入和输出定义规范。对于本例,单击选项卡。

默认情况下,在选项卡时,软件指定两种模型状态均处于平衡状态,如图中的复选标记所示稳定状态列。这两个状态也被指定为未知值;也就是说,它们的稳态值在修整过程中计算,初始猜测在价值列。

改变第二种状态,即发动机角速度,使其为已知值。在已知的列中,选择相应的行和价值列,将值设置为180

您还可以在修整过程中指定模型状态的边界。对于本例,将第一个状态约束为between0.5而且0.7.方法中输入这些值最低而且最大分别列。

调整模型

单击,计算满足规格的工作点开始削减

该软件使用优化搜索来找到符合您的规格的操作点。

Trim进度查看器显示优化进度以及优化算法成功终止。的(最大误差)列显示每次迭代中最大的约束违反情况。的列显示约束违反应用于的块。

修剪后的工作点,op_trim1,出现在线性分析工作区

若要评估结果工作点值是否符合规范,请使用线性分析工作区,双击op_trim1

在“编辑”对话框中,在状态选项卡,实际价值因为第一个状态属于期望值边界,实际角速度是180,如指定。

实际dx列显示在工作点的状态值的变化率。由于这些值接近于零,状态没有变化,表明工作点处于稳定状态。

约束态导数

当您调整模型以满足状态规范时,您还可以约束非稳态状态的导数。使用这样的约束,您可以将导数调整为已知的非零值,或者为不能达到稳态的状态指定导数公差。

例如,假设你想要找到发动机角速度为180 rad/s,角加速度为的工作条件50rad /秒2.为此,首先打开修剪模型对话框。在模型线性化电路,在操作点下拉列表,选择调整模型

稳定状态列时,清除相应行中的选择。然后,在dx最低而且dx最大列,将两个状态导数边界设为50

单击,计算工作点开始削减

模型线性化电路,在线性分析工作区,双击op_trim2

在“编辑”对话框的第二行中实际dx列匹配想要的dx列。因此,工作点满足指定的状态导数约束。

修剪模型后,你可以:

另请参阅

相关的话题