2000字范文,分享全网优秀范文,学习好帮手!
2000字范文 > AutoSAR软件组件开发的两类工作流程(Matlab/Simulink)

AutoSAR软件组件开发的两类工作流程(Matlab/Simulink)

时间:2019-01-08 02:00:37

相关推荐

AutoSAR软件组件开发的两类工作流程(Matlab/Simulink)

目录

前面

自顶向下

导入arxml文件

生成模型框架

搭建算法模型

生成代码

自下向上

前面

如何在Matlab进行AutoSAR软件组件SWC的开发?也就是下图红框标识出来的部分。

常规的有两种方式自顶向下自下而上

从上往下:从软件组件描述文件起步从下往上:从Simulink已有模型起步

自顶向下

首先,你需要在AutoSAR的架构设计工具中,比如Davinci DEV中设计好你需要的SWC,以及这个SWC的里有哪些Runnable,Interface,Port……然后导出arxml 文件

然后,把上一步生成的arxml 文件导入到Matlab中,Matlab会自己识别,生成模型的框架,我们只需要在这个框架里开发我们的算法,生成符合AutoSAR代码,最后在编译环境中集成。

具体操作如下:

导入arxml文件

这里借用一个大佬的例子(ID:Qingniao_Avalon)

导入指令:

arObj = arxml.importer('SWC1.arxml')

这是第一步,已经导入了arxml文件,可以看到反馈,下一步是根据这个文件生成模型框架。

生成模型框架

输入指令

arObj.createComponentAsModel("/Components/SWC1", //上面导入文件后,生成的组件名字"ModelPeriodicRunnablesAs", //添加一个周期性的运行实体"FunctionCallSubsystem", //回调函数"DataDictionary",//数据字典"SWC_Data.sldd")//sldd

生成模型:

在10ms运行实体里可以看到,只有输入输出port,具体的内容是需要我们去搭建的。

打开AutoSAR工具箱

这里注意两个东西:AUTOSAR Dictionary 和 Code Mapping

AUTOSAR Dictionary是你这个SWC的所有信息:Runnable,interface,Port,Compu Method……

Code Mapping顾名思义,就是把你模型里的各种Port、subsystem与AUTOSAR Dictionary中你定义好的AUTOSAR组件联合起来。

搭建算法模型

如何搭建?其实就是在Runnable中把输入输出,按照自己的需要连起来。

比如我们这里先把他们都加起来,再求OR:

生成代码

Ctrl+B或者

自下向上

从Simulink已有模型起步。

首先,我们要搞清楚simulink组件到autosar组件的映射,可以看一下我这篇笔记,里面有详细的介绍;

基于Matlab/Simulink的软件组件开发 · 语雀

然后,在simulink中搭建模型(要与autosar组件能映射上);

其次,在autosar工具箱中里,也就是AUTOSAR Dictionary中定义你需要的autosar组件;

再次,在Code Mapping里把两者映射起来;

最后,生成代码,生成arxml文件,导入到autosar配置工具中,把一些端口该连接的连接起来,生成 RTE代码。

关于直接在Matlab中搭建AUTOSAR的步骤,内容较多故放在下一篇博客里讲解。

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。