主要内容

导出ASAP2文件进行数据测量和校准

生成ASAP2和CDF校准文件(嵌入式编码)建议的方法生成ASAP2文件,因为它允许您生成ASAP2的最新版本文件按ASAM标准和提供了吗生成校准文件工具。

代ASAP2文件使用生成校准文件工具

打开生成校准文件的工具

  1. 打开模型。

  2. 开放的嵌入式编码应用程序。

  3. 为模型生成代码。

  4. C代码选项卡上,选择分享>生成校准文件

请注意

AUTOSAR模型,选择Autosar>分享>生成校准文件

使用这个工具,您可以生成A2L和cdfx一个模型文件在同一时间。您可以使用工具模型配置ERT-based, GRT-based,实时仿真软件,经典的AUTOSAR,或自适应AUTOSAR系统目标文件。万博1manbetx使用的工具还记得过去的设置,例如ASAP2的版本文件,包括或排除评论,关掉或ASAP2文件和提供文件的一代。万博1manbetx在MATLAB仿真软件保存这些设置首选项。设置将覆盖默认设置。

为自适应AUTOSAR和仿真软件实时系统目标文件,万博1manbetx您可以生成ASAP2 c++语言的文件。基于通和ERT系统目标文件,您可以生成一个ASAP2文件仅为C。

对于经典AUTOSAR模型,该工具允许您将包括或排除RTE元素为ASAP2文件使用包括AUTOSAR RTE元素选择。

ASAP2文件生成

ASAP2定义的描述格式ECU内部变量用于调优参数和测量信号数据作为应用程序执行。生成一个ASAP2文件:

  1. 默认情况下,生成ASAP2选择启用。如果没有启用,幻灯片生成ASAP2滑块位置,使A2L代。

  2. 改变A2L文件的名称文件名称字段中,指定名称。

  3. 默认情况下,代码生成器使用的建立文件夹的文件夹路径选择模型。如果你想指定一个不同的文件夹路径A2L文件,你可以做的文件夹的路径字段。

  4. 取代A2L ECU地址的文件,符号文件领域,提供一个与应用程序相关联的文件可执行的象征。否则,清楚地址更换字段。

    PDB工具支持一个万博1manbetx精灵,矮人,作为符号文件或可执行文件取代ECU的地址。

  5. 版本所需的版本的A2L文件生成。默认的版本是1.71。

  6. 排除评论A2L文件中,明确的包括评论

  7. 对于经典AUTOSAR模型,排除RTE元素A2L文件,清楚包括AUTOSAR RTE元素

  8. 点击生成

以编程方式生成A2L文件,使用coder.asap2.export函数。

代使用ASAP2Interface ASAP2文件参数

ASAP2Interface参数配置参数中不存在了。在即将发布的参数将被完全移除。你可以生成ASAP2文件使用生成校准文件工具,或coder.asap2.export(嵌入式编码)函数。有关更多信息,请参见生成ASAP2和CDF校准文件(嵌入式编码)

ASAM MCD-2 MC标准,也被称为ASAP2,是一个数据定义标准提出的自动化和标准化协会(ASAM)测量系统。ASAP2非面向对象描述的数据用于测量、校准、和诊断系统。有关ASAM的更多信息和ASAM MCD-2 MC (ASAP2)标准,看到ASAM网站www.asam.net

代码生成器可以导出一个ASAP2文件包含在代码生成过程中模型的信息。

万博1manbetx®编码器™万博1manbetx支持ASAP2 version-neutral文件生成。默认情况下,软件生成ASAP2 1.31版本格式,但生成的模型信息通常是与其他ASAP2版本兼容。ASAP2文件代也是中性的ASAP2测量和校准工具的特定需求。软件提供了自定义的api,您可以使用它们来生成定制ASAP2文件生成一个ASAP2版本和满足你的特定需求ASAP2工具。

你应该知道什么

利用ASAP2文件生成,您应该熟悉:

系统支持ASAP2目标文件万博1manbetx

你可以用不同的系统使用ASAP2文件生成目标文件配置。例如,通和ERT基础配置使您能够生成一个ASAP2文件作为代码生成的一部分,构建过程。

AUTOSAR目标和模型自适应实时目标,您可以生成c++语言的A万博1manbetxSAP2文件。GRT ERT和目标,你只能生成ASAP2文件语言不支持C语言和c++。万博1manbetx

程序生成ASAP2文件通过系统目标文件配置,明白了ASAP2接口

定义ASAP2信息

定义ASAP2信息参数和信号。ASAP2文件生成过程需要的信息在您的模型中参数和信号。这些信息都包含在模型本身。使用仿真万博1manbetx软件数据对象在一个工作区或数据字典完成ASAP2文件生成过程。在某些情况下,工作区对象的使用是可选的。

使用模型数据编辑器和内置模型数据对象提供信息,如使用万博1manbetx万博1manbetxSimulink.Signal对象提供信息和测量万博1manbetxSimulink.Parameter对象提供特征信息。您可以使用数据对象的数据来源于类万博1manbetxSimulink.Signal万博1manbetxSimulink.Parameter提供的信息。看到数据对象模型数据编辑器

此表包含所需的最小数据集属性ASAP2文件生成。一些数据模型中定义的属性。其他属性中提供的属性对象。中定义的属性万博1manbetxSimulink.Signal万博1manbetxSimulink.Parameter对象,属性名相关联的表列出了。

数据属性

中定义的

属性名

名称(标志)

模型和数据对象

继承了处理数据对象的参数或信号名称解析

描述

数据对象

描述

数据类型

模型或数据对象

数据类型

扩展
(如果定点数据类型)

模型或数据对象

数据类型

最低允许值

模型或数据对象

最小值

最大许用值

模型或数据对象

马克斯

单位

模型或数据对象

单位

内存地址(可选)

模型或数据对象

MemoryAddress_ASAP2

内存地址属性。如果内存地址属性未知代码生成之前,代码生成器插入ECU的地址占位符文本生成ASAP2文件。你可以用一个实际的地址的占位符后处理生成的文件。例如,看到的文件matlabroot/工具箱/ rtw /目标/ asap2 / asap2 /asap2post.masap2post.m通过您提供的链接器的映射文件,解析和替换ECU的地址在ASAP2占位符文件与实际的内存地址。因为链接器映射文件不同编译器来编译器,您可能需要修改正则表达式的代码asap2post.m匹配的格式链接器使用的地图。

如果你有嵌入式编码器安装在您的系统上,如果你是生成可执行的和可链接格式(精灵)或程序数据库(PDB)文件为您的嵌入式目标,您可以使用rtw.asap2SetAddress功能自动化ECU地址替换。有关更多信息,请参见自动ECU地址替代ASAP2文件(嵌入式编码)(嵌入式编码)

如果内存地址属性在代码生成,它可以定义数据项或数据对象。默认情况下,MemoryAddress_ASAP2房地产不存在万博1manbetxSimulink.Signal万博1manbetxSimulink.Parameter数据对象类。如果你想添加属性,添加一个属性MemoryAddress_ASAP2一个自定义的类的一个子类万博1manbetxASAP2类。子类化模型数据类的更多信息,请参阅万博1manbetx定义数据类

这个表显示的模型对象属性取代了ASAP2对象属性的万博1manbetx先前版本。

ASAP2和之间的差异万博1manbetx对象属性参数和信号

ASAP2对象属性(前)

万博1manbetx模型对象属性(当前)

LONGID_ASAP2

描述

PhysicalMin_ASAP2

最小值

PhysicalMax_ASAP2

马克斯

Units_ASAP2

单位

自动ECU地址替代ASAP2文件(嵌入式编码器)。如果你有嵌入式编码器安装在您的系统上,如果你是生成可执行的和可链接格式(精灵)或程序数据库(PDB)文件为您的嵌入式目标,您可以使用rtw.asap2SetAddress函数自动更换ECU的地址占位符内存地址与实际地址值在生成ASAP2文件。

如果内存地址属性未知代码生成之前,代码生成器插入ECU的地址占位符文本生成ASAP2文件,如图所示

/特点/ *姓名* / Ki / *开始长标识符* /”“/ *类型* /价值/ * ECU地址* /0 x0000/ * @ECU_Address@Ki@ * /

来代替实际的地址ECU的地址占位符,生成的ASAP2文件使用过程rtw.asap2SetAddress函数。的语法是:

rtw.asap2SetAddress (ASAP2File,InfoFile)

参数特征向量生成指定的名称ASAP2文件和生成的可执行的ELF文件的名称,从微软工具链,PDB文件或矮调试信息文件的模型。当它被调用时,rtw.asap2SetAddress从指定的精灵,提取实际的ECU地址PDB,或矮ASAP2文件中的文件并替换占位符的实际地址,例如:

/特点/ *姓名* / Ki / *开始长标识符* /”“/ *类型* /价值/ * ECU地址* /0 x40009e60

定义ASAP2查找表的信息。万博1manbetx仿真软件编码器软件为查找表生成ASAP2描述数据及其断点。软件将一维表数据表示为曲线信息,二维表数据地图信息,和断点AXIS_DESCRAXIS_PTS信息。模型可以通过使用一个查找表下面的仿真软件查找表:万博1manbetx

  • 使用Prelookup - 1和二维插值

  • 一维查找表

  • 二维查找表

  • 一天的查找表- 1和2维

该软件支持这些类型的查找表万博1manbetx断点(轴点)。

断点的类型 信息生成
可调,在多个表之间共享轴(常见的轴)

COM_AXIS

固定和nontunable(固定轴)

这些变体之一FIX_AXIS:

  • FIX_AXIS_PAR如果断点是整数与等距间隔和等距间隔是2的幂

  • FIX_AXIS_PAR_DIST如果断点与等距间隔的整数

  • FIX_AXIS_PAR_LIST如果断点与non-equidistant间距的整数

可调而不是多个表之间共享(标准轴)

STD_AXIS

当你的配置块ASAP2代码生成:

  • 表数据,使用一个万博1manbetxSimulink.Parameter非数据对象汽车存储类。

  • 共享的可调断点数据在多个表轴(COM_AXIS),用万博1manbetxSimulink.Parameter一个非数据对象汽车存储类。

  • 固定,nontunable断点数据(FIX_AXIS),使用工作空间变量或数组中指定块参数对话框。断点必须在代码中存储为整数。内置的数据类型必须是一个整数类型(int8,int16,int32,uint8,uint16,或uint32)、定点数据类型或一个等价的别名类型。

  • 可调断点数据不共享多个表(STD_AXIS):

    1. 创建一个万博1manbetxSimulink.Bus对象定义结构体包装(的名称和顺序字段)。参数结构的字段必须对应查找表数据和查找表的每个轴块。例如,在一个一天的查找表二维块,结构必须只包含三个字段。这辆公共汽车对象描述查找的记录布局特点。

    2. 创建一个万博1manbetxSimulink.Parameter对象表示一个可调参数。

    3. 创建表和轴值。

    4. 可选地,指定单位,最低,最大参数对象的属性。

这里的一个例子一天的查找表生成记录到一个ASAP2文件在标准轴格式:

* / / / *开始特点的名字STDAxisParam…/ *记录* /布局Lookup1D_X_WORD_Y_FLOAT32_IEEE…开始AXIS_DESCR / * * /轴点的描述/ * * / STD_AXIS轴类型…开始/结束AXIS_DESCR /结束特性/ RECORD_LAYOUT Lookup1D_X_WORD_Y_FLOAT32_IEEE AXIS_PTS_X 1字INDEX_INCR直接FNC_VALUES 2 FLOAT32_IEEE COLUMN_DIR直接/ RECORD_LAYOUT结束

生成一个ASAP2文件

生成ASAP2文件。使用通用实时系统目标文件或嵌入式编码系统目标文件生成一个ASAP2文件作为代码生成的一部分和构建过程。

生成ASAP2文件通过使用系统内置ASAP2支持的目标文件。万博1manbetx

使用基于GRT -或ERT系统目标文件。生成ASAP2数据定义一个模型通过使用一个通用的实时(GRT)系统目标文件或嵌入式编码系统目标文件:

  1. 使用映射编辑器- C代码存储类应用于信号,块,和模型参数,如中描述界面元素C代码生成配置模型

    参数并不代表ASAP2文件中如果存在一个或多个下列条件:

    • 应用存储类汽车,FileScope,结构体,或默认的(通过模型的默认)。

    • 应用存储类嵌入式编码字典

    • 你申请一个存储类导致代码生成器来生成一个宏观或无法寻址变量。

  2. 使用属性检查器来配置剩余的每个数据元素的存储类属性。

  3. 设置模型配置参数系统目标文件基于GRT -或ERT系统目标文件。

  4. 使配置参数ASAP2接口使用命令

    set_param (‘model_Name’,‘GenerateASAP2’,真正的);

    请注意

    你可以不再让代ASAP2文件从模型配置参数对话框。作为生成ASAP2和CDF校准文件描述,使用生成校准文件工具,或者使用命令行模式配置参数GenerateASAP2

  5. 选择参数只生成代码

  6. 点击应用

  7. 生成的代码。

    代码生成器将ASAP2文件写入建立文件夹。默认情况下,文件命名模型.a2l,在那里模型是模型的名称。ASAP2设置文件控制ASAP2文件名。有关详细信息,请参见自定义生成的ASAP2文件

生成ASAP2文件引用的模型。构建过程可以产生ASAP2文件为每个引用的模型参考模型的层次结构。ASAP2文件生成,测量记录代表信号和状态里面引用的模型。

为参考模型,生成ASAP2文件顶部的选择ASAP2文件生成模型和为每个引用的模型引用层次结构。

合并ASAP2文件和引用的模型。使用功能rtw.asap2MergeMdlRefs合并ASAP2文件生成的顶部和引用的模型。这种语法功能:

(地位、信息)= rtw.asap2MergeMdlRefs (topModelName,asap2FileName)

  • topModelName是包含一个或多个引用模型的模型。

  • asap2FileName是您指定的名称合并ASAP2文件。

  • 可选:状态返回false(逻辑0)如果合并完成,否则返回true(逻辑1)。

  • 可选:信息返回关于合并失败的额外信息状态是真的。否则,它将返回一个空的特征向量。

考虑下面的例子。

(地位、信息)= rtw.asap2MergeMdlRefs (“myTopMdl”、“merged.a2l”)
这个命令合并ASAP2文件生成的模型myTopMdl和它的模型文件中引用merged.a2l

ASAP2文件结构

这个表概述了ASAP2文件的基本结构和描述了目标语言编译器(TLC)函数和文件用于创建的每个部分文件:

  • 静态部分ASAP2文件所示大胆的

  • 函数调用所示% ()< FunctionName >

文件部分

asap2main.tlc内容

TLC包含函数定义文件

文件头

% < ASAP2UserFcnWriteFileHead () >

asap2userlib.tlc

/开始项目”“

/开始项目“% < ASAP2ProjectName >”

asap2setup.tlc

/开始头”“
内容

/开始头“% < ASAP2HeaderName >”
% < ASAP2UserFcnWriteHeader () >

asap2setup.tlc
asap2userlib.tlc

/结束头

/结束头

asap2userlib.tlc

/开始模块”“
模块内容:

/开始模块“% < ASAP2ModuleName >”}

asap2setup.tlc
asap2userlib.tlc

——A2ML
——MOD_PAR
——MOD_COMMON

% < ASAP2UserFcnWriteHardwareInterface () >

asap2userlib.tlc

依赖于模式的模块内容:

% < SLibASAP2WriteDynamicContents () >
调用用户定义函数:

asap2lib.tlc

——RECORD_LAYOUT
- - - - - -特点
——ParameterGroups
——ModelParameters

…WriteRecordLayout_TemplateName ()

…WriteCharacteristic_TemplateName ()
…WriteCharacteristic_Scalar ()

用户/模板/……

——测量
——ExternalInputs
——BlockOutputs

…WriteMeasurement ()

asap2userlib.tlc

——COMPU_METHOD

…WriteCompuMethod ()

asap2userlib.tlc

/终端模块

/终端模块

文件脚注/尾

% < ASAP2UserFcnWriteFileTail () >

asap2userlib.tlc

相关的话题