从系列:运行时软件建模
Teresa Hubscher-Younger MathWorks
使用导出功能建模风格对模型进行分区和调度,以轻松地将功能集成到您的软件环境中,并拥有从模型到代码的清晰映射。这种风格与基于利率的建模形成对比。
与导出功能,代码分离到可以集成到更大的系统的功能。分区调度和代码更容易整合的模式是两个使用这些功能运行时软件建模的主要原因。
导出功能造型风格可以让你从你的模型功能,轻松地集成到您的软件环境,并提供了从模型到代码的一个明确的映射。
为了演示这是如何工作的,我将从一个节气门控制系统的模型开始,在该模型中,所需的软件功能已经使用子系统建模。
在这个模型中,我们模拟踏板输入,进入一个油门控制,然后由一个节气门体作为植物中的模型来模拟。油门控制子系统内,我们有传感器和传感器管理,包括一个用于初级和次级油门传感器,并且所述传感器监视功能。我们也有一个控制器和执行器。
要了解导出函数建模的需要,让我们产生了这种模式的默认代码。虽然我已与子系统建模的所期望的功能,Simulink的优化代码和线的功能。万博1manbetx此外,函数的执行顺序是由Simulink中的内置的调度确定。万博1manbetx其结果是,该代码不能反映的功能的接口,并且不提供的能力控制的执行顺序。这可能不符合你的软件体系结构的需要。
让我们看看导出功能建模版本。现在模型的架构有所不同。首先,节流阀控制器子系统现在是一个具有固定步长离散求解器的模型块,而不是可变步长求解器,因为它是用于软件和集成的。
在模型块中,它们位于函数调用子系统中。导出函数允许您对接口建模,其中要集成到体系结构中的函数表示为函数触发器端口。如果我们看一下样本时间函数调用,我们可以看到,他们每5毫秒采样,除了油门位置传感器主要是在每10毫秒采样,和油门踏板位置传感器,它这将运行时触发一个事件。
使用导出函数,没有假定固有的调度程序,允许您更灵活地集成到自定义环境中。您可以选择通过端口或调度编辑器进行调度,以生成一个简单的测试装具。出于模拟的目的,软件调度器(在本例中)是日程编辑器。
计划编辑器发送到不同功能的事件调用基于当函数调用需要调用每5或10毫秒。加速踏板位置传感器是已安排命中倍明确的非周期性分区。如果你用Stateflow中做了运行时软件建模调度,您可以使用逻辑结构改变时,组件根据不同的情况下调用。
可以使用Simulink测试产品设置用于控制器单元测试的更广泛的测试工具。万博1manbetx
当我们为模型块生成代码时,我们得到了从函数调用端口的名称中分离出函数的代码,这使得软件更容易构建。更真实的建模与调度和更容易的代码集成是我们使用导出功能进行实时软件建模的两个主要原因。
您也可以从以下列表中选择一个网站:
选择中国网站(中文或英文)以获得最佳网站性能。其他MathWorks国家站点没有针对您所在位置的访问进行优化。