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