开始使用AUTOSAR标准的嵌入式编码器支持包金宝app
生成符合AUTOSAR的C代码,并从Simulink®模型导出AUTOSAR XML (ARXML)描述。金宝app
嵌入式Coder®软件支持汽车开放系统体系结构(A金宝appUTOSAR),这是一种开放的标准化汽车软件体系结构。汽车制造商、供应商和工具开发商共同开发AUTOSAR组件。要在Simulink中开发AUTOSAR组件,请遵循以下通用工作流金宝app:
创建AUTOSAR金宝app组件的Simulink表示。
通过细化AUTOSAR配置和创建算法模型内容来开发组件。
生成ARXML描述和算法C代码,用于在Simulink中测试或集成到AUTOSAR运行时环境(RTE)中。金宝app
先决条件
使用本例中的模型需要AUTOSAR标准金宝app的嵌入式编码器支持包。
金宝app支持包安装(MATLAB)
为代码生成准备模型
要了解生成符合AUTOSAR的C代码和从AUTOSAR模型导出ARXML描述的步骤,请使用示例模型rtwdemo_autosar_swc
。
打开模型
rtwdemo_autosar_swc
。打开“配置参数”对话框。单击代码菜单和选择C / c++代码>代码生成选项。
选择AUTOSAR作为代码生成目标。在代码生成窗格,更改系统目标文件来
autosar.tlc
。指定用于ARXML文件导出的AUTOSAR模式版本。去代码生成>AUTOSAR代码生成选项窗格,并选择的值为模式版本生成XML。本例使用该值
4.0
。为软件在循环(SIL)测试配置硬件设置,并将它们用于本例中的两个模型构建。去代码生成>验证窗格并选择启用可移植的单词大小。去硬件实现窗格并选择金宝app支持很久很久。
点击应用。
为代码生成准备模型的另一种方法是执行这些命令。
%模型定义modelName =“rtwdemo_autosar_swc”;打开模型open_system (modelName);以编程方式设置系统目标文件和AUTOSAR模式版本set_param (modelName“SystemTargetFile”,“autosar.tlc”);set_param (modelName“AutosarSchemaVersion”,“4.0”);用于软件在环模拟的硬件设置set_param (modelName“PortableWordSizes”,“上”);增加对生产设备Intel x86金宝app-64 (Windows64)的长长支持set_param (modelName“ProdLongLongMode”,“上”);
配置AUTOSAR软金宝app件组件的Simulink表示
AUTOSAR模型提供了AUTOSAR软件组件的映射配置。AUTOSAR组件由AUTOSAR标准中定义的元素组成,比如端口、可运行实体和事件。映射的配置描述了AUTOSAR组件,并提供了Simulink模型元素和AUTOSAR组件元素之间的映射。金宝app
若要配置AUTOSAR属性并将Simulink模型元素映射到AUTOSAR组件元金宝app素,请使用“配置AUTOSAR接口”对话框。
单击代码菜单和选择C / c++代码>将模型配置为AUTOSAR组件。
选择AUTOSAR属性。在AUTOSAR属性资源管理器中,您可以为组件配置AUTOSAR端口、可运行对象、事件、可跨运行变量、参数、接口、计算方法和XML选项。
选择金宝appSimulink-AUTOSAR映射。在Simuli金宝appnk-AUTOSAR映射资源管理器中,可以配置Simulink输入、输出、入口点函数、数据传输和查找表到AUTOSAR元素的映射。
要确认AUTOSAR接口配置符合验证要求,请单击验证(选中标记)按钮。
另一种配置AUTOSAR属性并将Simulink模型元素映射到AUTOSAR组件元素的方法是使用AUTOSAR属性和映射函数金宝app。要获得属性和映射函数的列表,请执行这些命令。
帮助autosar.api.getAUTOSARProperties;帮助autosar.api.get金宝appSimulinkMapping;
autosar.api.getAUTOSARProperties API类。DATAOBJ = AUTOSAR .api. getautosarproperties (MDLNAME)创建一个对象DATAOBJ,可用于查询和设置Simulink模型MDLNAME的AUTOSAR属性。金宝appgetAUTOSARProperties方法:——添加一个属性添加到一个AUTOSAR元素addPackageableElement——一个AUTOSAR元素添加到一个AUTOSAR包删除,删除一个AUTOSAR元素找到-找到AUTOSAR元素获取AUTOSAR元素的属性设置-设置deleteUnmappedComponents AUTOSAR的属性元素删除所有未映射组件参见autosar.api.create autosar.api.getSimulinkMapping参考页文档中心医生autosar.api.getAUTOSARProperties autosar.api.getSimulinkMapping API类。金宝appMAPPINGOBJ = autosar.api.get金宝appSimulinkMapping(MDLNAME)创建一个对象MAPPINGOBJ,可用于查询和设置Simulink模型MDLNAME getSimulinkMapping方法的Simulink映射:getDataTransfer——得到模型的映射信息数据传输线路getFunction——得到一个动态仿金宝app真模块的入口点函数的映射信息getInport——得到的映射信息模型尺寸getOutport——得到模型的映射信息外港getFunctionCaller——得到一个模型函数调用者的映射信息块getLookupTable——得到模型的映射信息查找表getDataDefaults——内存类型配置信号或离散状态mapDataTransfer -地图模型数据传输线路mapFunction映射模型入口金宝app点函数mapInport——地图轮廓尺寸mapOutport——地图外港mapFunctionCaller -映射函数调用者mapLookupTable地图一个查找表mapDataDefaults -映射内存类型信号或离散状态参见autosar.api.syncModel autosar.api.create autosar.api.getAUTOSARProperties Doc autosar.api.getSimulinkMapping参考页面文档中心
生成C代码和ARXML描述
构建模型生成符合autosar的C代码并导出ARXML描述。单击代码菜单和选择C / c++代码>构建模型。
要查看模型构建的结果,请检查代码生成报告。
另一种生成符合autosar的C代码并从模型导出ARXML描述的方法是按Ctrl + B,或执行该命令。
rtwbuild (modelName);
##开始模型的构建过程:rtwdemo_autosar_swc为模型生成XML文件描述:rtwdemo_autosar_swc成功完成模型的代码生成:rtwdemo_autosar_swc
用软件在环测试验证AUTOSAR代码
AUTOSAR模型开发和代码生成的最终目标是将生成的C代码和ARXML描述集成到AUTOSAR运行时环境(RTE)中的汽车应用程序中。RTE集成的中间步骤是使用软件在环(SIL)仿真在Simulink中验证生成的C代码。金宝app当您为AUTOSAR模型配置和运行SIL模拟时,AUTOSAR目标会自动配置生成的代码,以使用AUTOSAR RTE API调用路由模拟数据。
配置SIL仿真模型。单击模拟菜单和选择模式>Software-in-the-Loop(银)。
要重新构建模型并运行SIL仿真,请单击运行(右箭头)按钮。
打开诊断查看器以查看AUTOSAR模型构建和模拟的日志消息。
配置和运行SIL模拟的另一种方法是执行这些命令。
为软件在环仿真配置模型。set_param (modelName“SimulationMode”,“Software-in-the-loop”);%运行模拟silOut = sim(modelName,“ReturnWorkspaceOutputs”,“上”);
##开始模型的构建过程:rtwdemo_autosar_swc ##为模型生成XML文件描述:rtwdemo_autosar_swc ###成功完成模型的构建过程:rtwdemo_autosar_swc ###准备开始SIL模拟…使用“gcc”构建。MEX完成成功。###用SIL文件更新代码生成报告…##停止组件的SIL模拟:rtwdemo_autosar_swc