如何结合建模风格与可调度组件在Simulink
从系列:运行时软件建模
使用可调度组件,可以对所有类型的建模风格进行分区和调度,这意味着不需要转换到不同的建模风格,并且可以组合不同的建模风格。基于速率的建模样式可以使用此特性直接分区和使用导出函数调度,允许您在不同时间交错触发不同组件。这可以帮助您将不同的组件组合成更大的系统。
可调度组件允许您采用两种非常不同的建模风格,基于速率的建模和导出函数建模,将它们组合起来,并将它们调度到同一个模型中,帮助您在组合不同组件时尽早发现问题,从而节省时间。
这种建模风格给您带来了两大好处。这使您可以完全控制调度模型组件,而不是让Simulink调度组件。而且不需要处理组件之间的数据依赖问题,因为只有数据传输。
让我向您展示一个激发对可调度组件需求的示例。在这个模型中,我们有两种不同的建模风格。在顶层,我们有模拟踏板输入,进入油门传感器和监测模型块。传感器数据将进入油门位置控制器和执行器模型块。这个系统然后被模拟的一个模型的节气门体作为植物。在油门位置控制器和执行器模型块内,有两个输出功能组件-一个用于控制器,另一个用于执行器
在内部,油门传感器和监视器模型块,有基于速率的子系统的传感器和监视器。其中三个运行在5毫秒-油门位置传感器主要和次要,以及监视器。其中一个运行速度是10毫秒-加速踏板位置传感器。
我想让控制器在传感器之前运行。我必须重新构建模型,以交错调度这些不同的建模风格。为此,我可以配置Throttle Sensors和Monitor模型块,通过定期事件端口调度模型的基于速率的组件。现在在Throttle Sensors和Monitor模型块内部,所有子系统都由来自模型块外部的两个事件触发。它们被标记为D1和D2。
对于导出函数和可调度组件,没有固有的调度器,允许您更灵活地集成到自定义环境中。
因此,我们可以使用Schedule Editor在顶层调度这两种类型的组件。在本例中,我们交错调用导出函数和可调度组件。ControllerRun5ms和ActuatorRun5ms事件控制油门位置控制器和执行器模型块中的函数调用。D1和D2控制可调度组件。
但是我们希望在执行顺序中首先执行控制器,因此在本例中,我们只需将其拖放到我们希望它运行的位置。
当你从不同的地方获得不同的IP和不同的建模风格时,这种明确的组合调度和交错是非常有用的。
您也可以从以下列表中选择网站:
如何获得最佳的网站性能
选择中国网站(中文或英文)以获得最佳的网站表现。其他MathWorks国家网站没有针对从您的位置访问进行优化。