Simulink上的Guy

Simulink &基于模型的设计

为AUTOSAR配置Simulink模型

今天我很高兴欢迎客座博主Sai Ram Anumula介绍如何配置Simulink模型以生成符合AUTOSAR的代码。

不久前,我的同事Shwetha发表了一AUTOSAR简介文章中,她概述了AUTOSAR标准和Simulink的功能AUTOSAR Blockset开发AUTOSAR经典应用程序。今天,我们将逐步介绍如何将一个简单的Simulink模型转换为AUTOSAR模型,从而生成符合AUTOSAR的代码。

对于这个翻译或转换的过程,AUTOSAR Blockset可以通过两种方式为您做魔术:

  • 自顶向下的流程:您从存储在AUTOSAR XML文件中的软件组件或组合描述开始,并将其导入为Simulink AUTOSAR组件/组合模型或架构模型
  • 自底向上的工作流程:您从一个Simulink模型或一个体系结构模型(使用系统的作曲家,请参阅这个例子),为AUTOSAR配置它,然后导出ARXML文件以用于AUTOSAR工具链的其余部分。

AUTOSAR工作流

在这篇文章中,我们将演示自底向上的工作流。

快速开始使用AUTOSAR组件设计器

首先,您可以打开AUTOSAR组件设计器应用程序并按照步骤将Simulink模型映射到AUTOSAR软件组件。下面是一个简短的动画,通过这些步骤:

AUTOSAR快速入门
点击这里查看大图

在“快速开始”菜单中配置完所有选项后,将代码映射编辑器而且属性检查器将打开,提供模型的AUTOSAR透视图,并允许您进一步配置软件组件。

为AUTOSAR配置Simulink模型

配置Simulink-AUTOSAR代码映射

代码映射编辑器有助于将模型配置为AUTOSAR软件组件。下面是Simulink特性和AUTOSAR元素之间的映射列表:

  • 入口点函数<-> AUTOSAR可运行程序
  • 输入和输出端口<-> AUTOSAR发送-接收端口
  • 模型工作区参数<-> AUTOSAR组件参数
  • 数据存储<-> AUTOSAR变量
  • Block Signals/States <-> AUTOSAR变量
  • 数据传输<-> AUTOSAR可运行变量
  • 函数调用者<-> AUTOSAR客户端-服务器端口和操作

下面是一个显示速率转换块映射到隐式Inter-Runnable变量的示例:

代码映射编辑器

此外,您还可以利用与基本软件服务相对应的块,这些块可以根据AUTOSAR标准为您轻松配置,用于代码生成和模拟这些服务。例如,你可以使用NvMServiceCaller块调用AUTOSAR NvM服务接口并从中生成代码。你也可以使用NVRAM业务组件块在系统级和组合级模拟中模拟AUTOSAR NvM服务调用。

AUTOSAR图书馆

一旦你完全开发了一个软件组件,在尝试代码生成之前,是时候验证AUTOSAR属性和映射了:

AUTOSAR验证

检查生成的AUTOSAR代码

验证成功后,您可以生成代码并检查C代码和XML软件描述,以确认它们符合AUTOSAR规范:

AUTOSAR生成的代码

现在轮到你了

探索AUTOSAR块集登陆页面以了解更多它如何帮助您在短短几个步骤中从Simulink模型生成符合AUTOSAR的C/ c++代码。

如果您已经安装了该块集,我建议您浏览所找到的各种示例在这里

|

评论

如欲留言,请点击在这里登录您的MathWorks帐户或创建一个新帐户。

Baidu
map