此示例显示如何使用计划编辑器查看和编辑导出功能模型中的函数调用顺序。与所有导出函数模型一样,所需的功能被建模为函数调用子系统。这些函数调用子系统定义了计划编辑器计划的分区。
使用计划编辑器,您可以轻松查看和编辑函数调用的计划。系统的行为取决于这些分区的顺序。在此示例中,我们通过模拟模型来更改订单并观察其对系统行为的影响。要查看编辑计划对模拟时的影响,我们可以在计划之前和之后进行比较模型模拟。
要查看和编辑导出功能模型的计划,请参考模型。
Open_System('trottlepositioncontroltop.slx');
trottlepositionControl.
是引用的导出功能模型。默认情况下,每个函数都有一个输入端口,可用于触发这些功能。计划编辑器会自动处理这些端口。要使用计划编辑器,请使用参数设置计划速率以计划编辑器。
set_param('trottlepositioncontroltop / throttlecontrol'那'Schedulerateswith'那'计划编辑');
要观察调度对模型行为的影响,请通过在编辑计划之前模拟模型来建立基线。模拟模型。
SIM('trottlepositioncontroltop');
要打开计划编辑器,请单击计划编辑器在里面设计部分造型标签。在“计划编辑器”中,模型的不同组件表示为分区。更新图表以查看分区。分区是模型中的入口点。计划编辑器显示这些分区的顺序和数据通信。箭头是显示数据流的分区之间的数据连接。虚线表示存在延迟,因为源在目的地之后运行。实线表示源在目的地之前运行时不会延迟。
订单窗格显示分区在给定时间步骤中运行的顺序。假设分区的顺序处于不完美状态。在这种情况下,要删除延迟,您想要运行throttlecontrol.actuatorrun5ms.
分区后throttlecontrol.controllerrun5ms.
划分。
拖throttlecontrol.actuatorrun5ms.
之后throttlecontrol.controllerrun5ms.
在订单窗格中。观察到之间的延迟throttlecontrol.controllerrun5ms.
和throttlecontrol.actuatorrun5ms.
分区更改为依赖项。观察到现在的执行之间没有延迟throttlecontrol.controllerrun5ms.
和throttlecontrol.actuatorrun5ms.
。
导出函数模型包含一个不受约束的分区,AccelerationPedalPositionSensor.
。假设您要安排一个不受约束的分区来模拟,就像它是离散的一样。日程throttlecontrol.appsnsrrun.
分区以[0:0.02:100]运行,以观察其在不同的时间实例中的行为。单击“无限制的分区”,然后在“属性”检查器中输入[(1:5000)* .02]。
现在,使用更改的时间表模拟模型。
打开模拟数据检查器。选择两个运行并比较。您可以看到更改计划如何影响模型行为。
版权所有2018-2019 Mathworks,Inc。