主要内容

配置AUTOSAR可运行执行顺序

对于包含多个可运行程序的AUTOSAR经典平台软件组件,AUTOSAR定时扩展规范定义了执行顺序约束。这些约束指定了组件中可运行实体的执行顺序。您可以在组件级别查看和操作约束,或者在AUTOSAR体系结构模型中,在虚拟功能总线(VFB)级别查看和操作约束。

在仿真金宝app软件®,你可以:

  • 从ARXML文件导入组件级和vfb级执行顺序约束。

  • 打开AUTOSAR组件或体系结构模型,并使用Schedule Editor修改可运行对象的执行顺序。

  • 将组件级和vfb级执行顺序约束导出到ARXML文件。

  • 在组件模型中,通过导入ARXML更改来更新执行顺序约束。

在AUTOSAR软件组件模型中,使用Schedule Editor来调度和指定属于该组件的可运行程序的执行顺序。Schedule Editor显示模型中的分区、它们之间的数据连接以及这些分区的顺序。在AUTOSAR组件模型中,分区对应于独立执行的可运行实体。在编辑器中,您可以:

  • 在AUTOSAR组件中查看作为分区的可运行程序的图形表示。

  • 创建分区并将其映射到AUTOSAR可运行程序。

  • 直接指定可运行程序的执行顺序。

Schedule Editor支持多种建金宝app模风格,包括基于速率的建模和导出函数建模。有关更多信息,请参见使用日程编辑器而且创建分区.您还可以在AUTOSAR架构建模中使用Schedule Editor。看到配置AUTOSAR调度和仿真

在独立的AUTOSAR组件模型中,要打开“日程编辑器”,请打开建模选项卡,选择时间表编辑器.对于AUTOSAR组件模型中的可运行程序,Schedule Editor最初会显示基于组件建模风格创建的隐式分区。您可以查看和配置隐式分区,也可以创建显式分区,并将它们映射到新的或现有的AUTOSAR可运行程序。

查看和配置隐式分区:

  1. 打开AUTOSAR示例模型autosar_swc_expfcns,它使用Simulink导金宝app出函数对AUTOSAR可运行程序进行建模。

  2. 打开建模选项卡,选择时间表编辑器.Schedule Editor将定期导出的函数显示为隐式分区,这些函数映射到AUTOSAR可运行程序。

    使用编辑器控件重新排列分区。例如,在Order部分中,单击方向箭头或拖动表项。

要在AUTOSAR软件组件中创建一个显式分区:

  1. 打开AUTOSAR示例模型matlabroot/ /帮助/工具箱/ autosar /例子mAutosarMultitasking.slx该模型对具有多个采样率的周期性可运行对象进行建模。

    最初,从Schedule Editor的角度来看,模型包含隐式分区D1、D2、D3和D4。

  2. 要创建分区,请打开SS1子系统的块参数对话框。与将其视为原子单位选中,设置参数计划是周期性的分区.指定分区名称(例如P1)和采样时间1。点击应用.更新模型图。

  3. 打开建模选项卡,选择时间表编辑器.Schedule Editor在模型中显示显式的周期性分区。

  4. 在模型窗口中,打开Code Mappings编辑器并选择功能选项卡。将P1分区函数映射到一个AUTOSAR可运行对象。

    1. 如果配置中不包含要映射的AUTOSAR可运行对象,则添加一个可运行对象。打开AUTOSAR Dictionary、Runnables视图,并单击添加按钮.对于本例,创建runnableRunnable_P1.然后选择可运行文件并创建计时事件。

    2. 功能,将P1映射到Runnable_P1

构建包含执行顺序约束的AUTOSAR模型可以导出组件定时信息。如果您设置AUTOSAR字典XML选项导出XML文件打包模块化时,定时信息被导出到文件中modelname_timing.arxml.这段ARXML代码显示了为中可运行程序导出的执行顺序约束mAutosarMultitasking,根据Schedule Editor配置。

< SWC-TIMING UUID = "……" > <字>mAutosarMultitasking  <EXECUTION-ORDER-CONSTRAINTUUID = "……"> < short-name > eoc  < ordered-elements > < eoc - executable - entity - ref uuid ="…"> <字>Runnable_Step  /pkg/swc/mAutosarMultitasking/IB/Runnable_Step  < success - refs > < success - ref DEST="EOC- executable - entity - ref "> /Timing/mAutosarMultitasking/EOC/Runnable_P1     <字>Runnable_P1  /pkg/swc/mAutosarMultitasking/IB/Runnable_P1  < success - refs > < success - ref DEST="EOC- executable - entity - ref "> /Timing/mAutosarMultitasking/EOC/Runnable_Step1     <字>Runnable_Step1  /pkg/swc/mAutosarMultitasking/IB/Runnable_Step1  < success - refs > < success - ref DEST="EOC- executable - entity - ref "> /Timing/mAutosarMultitasking/EOC/Runnable_Step2     <字>Runnable_Step2  /pkg/swc/mAutosarMultitasking/IB/Runnable_Step2  < success - refs > < success - ref DEST="EOC- executable - entity - ref "> /Timing/mAutosarMultitasking/EOC/Runnable_Step3     <字>Runnable_Step3  /pkg/swc/mAutosarMultitasking/IB/Runnable_Step3       /pkg/swc/mAutosarMultitasking/IB  

另请参阅

相关的例子

更多关于