指定要线性化的模型部分
要线性化模型中的子系统、环路或模块,您可以使用分析点。您在模型中定义的每个分析点都可用于以下一个或多个目的:
输入 - 例如,软件在分析点注入加性输入信号,以模拟对被控对象输入端的扰动。
输出 - 例如,软件测量某一点处的信号值,以用于研究扰动对被控对象输出的影响。
环路开口 - 例如,软件解释信号流在某点处的中断,用于研究在被控对象输入端的开环响应。
要为系统的一部分计算线性模型,请在要线性化的模型部分的输入和输出信号上指定线性化输入点和输出点。要计算开环响应,请指定环路开口以中断信号流。您还可以通过定义多个输入点和输出点来计算 MIMO 线性模型。
分析点
您可以使用 Simulink® Control Design™ 软件指定以下类型的线性分析点。这些分析点是纯注释,不影响模型仿真。
分析点 | 描述 |
---|---|
输入扰动 | 指定添加到信号的输入 为了定义线性化系统的传递函数,您可以将输入扰动与输出测量或开环输出结合使用。 例如,要计算示例系统中的响应 G/(1+GK),请指定输入扰动 du 和输出测量 y,如图所示。 |
输出测量 | 对信号进行测量。 为了定义线性化系统的传递函数,您可以将输出测量与输入扰动或开环输入结合使用。 例如,要计算示例系统中的响应 -K/(1+KG),请指定输出测量点 u 和输入扰动 dy,如图所示。 |
环路中断 | 指定环路开口。 使用环路中断来计算环路的开环传递函数。通常,当您有嵌套环或要忽略某些环路的影响时,可以使用环路中断。 在示例系统中,环路中断在 u 处停止信号流。因此,从输入扰动 de 到输出测量 y 的传递函数为 0。 |
开环输入 | 指定一个后跟输入扰动的环路中断。 为了线性化被控对象或控制器,您可以将开环输入与输出测量或开环输出结合使用。 例如,要线性化示例系统中的被控对象,请在 G 前添加开环输入,在 G 后添加输出测量 y,如图所示。开环输入在 u 处中断信号流,并添加输入扰动 du。 |
开环输出 | 指定一个后跟环路中断的输出测量。 为了线性化被控对象或控制器,您可以将开环输出与输入扰动或开环输入结合使用。 例如,要计算示例系统中的响应 -K,请在 K 后添加开环输出,并在 G 后添加输入扰动 dy,如图所示。开环输出会中断信号流并添加输出测量 u。 |
环路传递函数 | 指定一个置于后跟输入扰动的环路中断前的输出测量 要计算环路的开环传递函数,请使用环路传递分析点。 例如,要计算示例系统中的 -KG,请指定环路传递分析点,如图所示。软件添加输出测量 u 中断信号流,并添加输入扰动 du。 |
灵敏度函数 | 指定一个后跟输出测量的输入扰动。 灵敏度函数测量信号对添加的扰动的灵敏程度。灵敏度是一种闭环测量。反馈会降低开环增益大于 例如,要计算在示例系统的被控对象输入端的灵敏度,请添加一个灵敏度函数分析点,如图所示。软件会添加一个后跟输出测量 u 的输入扰动 du。从 du 到 u 的闭环传递函数为 1/(1+KG)。 |
互补灵敏度函数 | 指定一个后跟输入扰动的输出测量。 某点处的互补灵敏度函数是从该点的加性扰动到同一点的测量的传递函数。与灵敏度函数相反,扰动是在测量后添加的。使用此分析点计算环路的闭环传递函数。 例如,要计算示例系统的闭环传递函数,请添加互补灵敏度函数分析点,如图所示。软件会添加一个后跟输入扰动 du 的输出测量 u。从 du 到 u 的闭环传递函数为 -KG/(1+KG)。 |
开环反馈环
如果您的模型包含一个或多个反馈环,您可以选择对开环或闭环系统进行线性化。
要消除反馈环的影响,可使用分析点来插入环路开口,而无需手动断开信号线。手动从非线性模型中删除反馈信号会更改模型工作点并产生不同的线性化模型。有关详细信息,请参阅How the Software Treats Loop Openings。
正确放置环路开口对于获得所需的线性模型非常重要。为了理解开环和闭环分析之间的区别,请参考以下单环控制系统。
假设您要线性化关于模型的均衡工作点的被控对象 P。
要仅线性化被控对象,您需要在模块 P 的输出端打开环路。如果不打开环路,则 U 和 Y 之间的线性化模型会包括反馈环的影响。
环路在 Y 处打开? | 从 U 到 Y 的传递函数 |
---|---|
是 |
|
否 |
|
环路开口不必位于与线性化输入或输出点相同的位置。例如,以下系统在外部反馈环上的增益后有一个环路开口,这就从环路中消除了此线性化的影响。因此,只有蓝色模块位于线性化路径中。
在此示例中,如果在与线性化输出点相同的位置放置环路开口,则内环的影响也将从线性化结果中消除。
指定要线性化的模型部分的方式
使用线性分析点定义要线性化的模型部分有几种方式。每种方式都有自己的优点,具体取决于您使用的线性化工具。有关选择线性化工具的详细信息,请参阅选择线性化工具。
指定模型部分... | 此方式适用于... | 有关详细信息,请参阅 |
---|---|---|
在 Simulink 模型中 | 您要将分析点直接保存在模型中,或以图形方式显示模型中的分析点。 | Specify Portion of Model to Linearize in Simulink Model |
使用模型线性化器 | 您要在不更改 Simulink 模型的情况下,使用模型线性化器以交互方式线性化您的模型。使用这种方法可以为模型指定多个开环或闭环传递函数。 | Specify Portion of Model to Linearize in Model Linearizer |
在命令行中使用 linio 命令 | 您要使用 linearize 命令线性化您的模型。使用 linio 不会更改 Simulink 模型。 | Specify Portion of Model to Linearize at Command Line |
使用 slLinearizer 接口 | 您要从线性化系统获得多个开环或闭环传递函数,而不重新编译模型。使用这种方法不会更改 Simulink 模型。 | Mark Signals of Interest for Batch Linearization |
使用 slTuner 接口 | 您要从调节后的控制系统获得多个开环或闭环传递函数,而不重新编译模型。使用这种方法不会更改 Simulink 模型。 | Mark Signals of Interest for Control System Analysis and Design |
作为特定模块或子系统 | 您要线性化特定模块或子系统,而不为所有模块输入和输出定义分析点。使用这种方法不会更改 Simulink 模型。 | Linearize Plant |
另请参阅
linio
| linearize
| slLinearizer
| slTuner