人在仿真软件金宝app

金宝app仿真软件和基于模型的设计

导出功能模型

我开始写这篇文章的目的,讨论新初始化函数,重置功能终止函数块,以及密切相关国家的读者国家的作家引入R2016b块。

然而我很快就意识到,这些新特性非常密切相关的一种模型架构在这个博客上我几乎从未讨论过:导出功能模型

生成代码

让我们用以下模型为例。它包含一个偏见和单元延迟块执行0.001和数学功能块执行0.01年代。

简单的示例模型

大家可能都知道,使用嵌入式程序员可以从模型生成C代码模型。金宝app使用默认的嵌入式编码系统目标文件,你会得到的代码将看起来像:

从简单的例子模型生成的代码

正如您可以看到的,是由一个初始化函数的代码,和一个阶跃函数。阶跃函数设计被称为模型基准利率,在我们的案例中是0.001秒。完美的执行单一任务上下文中的代码。

如果你喜欢,你可以要求仿真软件金宝app对待每个离散率作为一个单独的任务

多任务

在这种情况下,生成的代码将一个函数组成的标准样品。然后您可以执行调度器和打电话给每一个你所希望的方式。

多任务的代码

导出功能

每率有一个函数是有用的,但是如果你想要更多的控制的执行代码?例如,您可能希望一个速度分为多个任务,并分配不同的优先级。

因此,嵌入式编码器提供了可能性导出功能。导出功能提供了直接控制生成的函数和模拟他们的调度和优先级的能力。

是兼容的概念导出功能,您的模型建在一个特定的方式:系统的顶层,你想出口函数必须只包含函数调用子系统,港口和外港。这样,每个子系统将生成一个函数。

对于我们的示例模型,我们可以这样排列:

导出功能子系统

调度的模拟,必须显式地完成不同的任务,例如使用Stateflow如上图。当时间来生成代码,您可以右键单击子系统和导出功能:

导出功能子系统模型

代码将看起来像下面的:

导出功能子系统的代码

和你将能够包含这个代码在你的手写的调度器。正如上面提到的,这将允许您将一个率为多个函数,或任务。

导出功能模型

对于大型项目,也可以创建导出功能模型

在这种情况下,模型将用于模拟,顶部,您将生成代码的子模型。金宝app仿真软件会自动识别模型设计导出功能,和代码将类似于上面产生的子系统。

导出功能模型

接下来是什么?

下周,我们将看到如何初始化函数,重置功能终止函数块可以使用导出功能模型来模拟内部函数的关闭和重新启动或任务。

|

评论

要发表评论,请点击此处登录到您的MathWorks帐户或创建一个新帐户。