ASAM MCD-2 MC标准,也被称为ASAP2,是一个数据定义标准提出的自动化和标准化协会(ASAM)测量系统。ASAP2非面向对象描述的数据用于测量、校准、和诊断系统。有关ASAM的更多信息和ASAM MCD-2 MC (ASAP2)标准,看到ASAM网站www.asam.net
。
代码生成器可以导出一个ASAP2文件包含在代码生成过程中模型的信息。
您可以运行一个互动ASAP2文件的示例。在MATLAB打开示例®命令提示符中,输入:
rtwdemo_asap
金宝app®编码器™金宝app支持ASAP2 version-neutral文件生成。默认情况下,软件生成ASAP2 1.31版本格式,但生成的模型信息通常是与其他ASAP2版本兼容。ASAP2文件代也是中性的ASAP2测量和校准工具的特定需求。软件提供了自定义的api,您可以使用它们来生成定制ASAP2文件生成一个ASAP2版本和满足你的特定需求ASAP2工具。
利用ASAP2文件生成,您应该熟悉:
ASAM ASAP2标准和术语。看到ASAM网站www.asam.net
。
配置为代码生成模型数据元素。看到代码映射编辑器。
信号和参数的存储和表示生成的代码。看到数据访问进行原型设计和调试。
如果你有嵌入式编码器®,请参阅数据表示和访问(嵌入式编码)。
你可以用不同的系统使用ASAP2文件生成目标文件配置。例如,通和ERT基础配置使您能够生成一个ASAP2文件作为代码生成的一部分,构建过程。
程序生成ASAP2文件通过系统目标文件配置,明白了生成一个ASAP2文件。
ASAP2文件生成过程需要的信息在您的模型中参数和信号。这些信息都包含在模型本身。使用仿真金宝app软件数据对象在一个工作区或数据字典完成ASAP2文件生成过程。在某些情况下,工作区对象的使用是可选的。
使用模型数据编辑器和内置模型数据对象提供信息,如使用金宝app金宝appSimulink.Signal
对象提供信息和测量金宝appSimulink.Parameter
对象提供特征信息。您可以使用数据对象的数据来源于类金宝appSimulink.Signal
和金宝appSimulink.Parameter
提供的信息。看到数据对象和通过使用模型数据编辑器配置数据属性。
此表包含所需的最小数据集属性ASAP2文件生成。一些数据模型中定义的属性。其他属性中提供的属性对象。中定义的属性金宝appSimulink.Signal
或金宝appSimulink.Parameter
对象,属性名相关联的表列出了。
数据属性 |
中定义的 |
属性名 |
---|---|---|
名称(标志) |
模型和数据对象 |
继承了处理数据对象的参数或信号名称解析 |
描述 |
数据对象 |
|
数据类型 |
模型或数据对象 |
|
扩展 |
模型或数据对象 |
数据类型 |
最低允许值 |
模型或数据对象 |
|
最大许用值 |
模型或数据对象 |
|
单位 |
模型或数据对象 |
|
内存地址(可选) |
模型或数据对象 |
|
如果内存地址属性未知代码生成之前,代码生成器插入ECU的地址
占位符文本生成ASAP2文件。你可以用一个实际的地址的占位符后处理生成的文件。例如,看到的文件
。matlabroot
/工具箱/ rtw /目标/ asap2 / asap2 /asap2post.masap2post.m
通过您提供的链接器的映射文件,解析和替换ECU的地址
在ASAP2占位符文件与实际的内存地址。因为链接器映射文件不同编译器来编译器,您可能需要修改正则表达式的代码asap2post.m
匹配的格式链接器使用的地图。
如果你有嵌入式编码器安装在您的系统上,如果你是生成可执行的和可链接格式(精灵)或程序数据库(PDB)文件为您的嵌入式目标,您可以使用rtw.asap2SetAddress
功能自动化ECU地址替换。有关更多信息,请参见自动ECU地址替代ASAP2文件(嵌入式编码)。
如果内存地址属性在代码生成,它可以定义数据项或数据对象。默认情况下,MemoryAddress_ASAP2
房地产不存在金宝appSimulink.Signal
或金宝appSimulink.Parameter
数据对象类。如果你想添加属性,添加一个属性MemoryAddress_ASAP2
一个自定义的类的一个子类金宝app
或ASAP2
类。子类化模型数据类的更多信息,请参阅金宝app定义数据类。
这个表显示的模型对象属性取代了ASAP2对象属性的金宝app先前版本。
ASAP2和之间的差异金宝app对象属性参数和信号
ASAP2对象属性(前) |
金宝app模型对象属性(当前) |
---|---|
LONGID_ASAP2 |
描述 |
PhysicalMin_ASAP2 |
最小值 |
PhysicalMax_ASAP2 |
马克斯 |
Units_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
金宝app仿真软件编码器软件为查找表生成ASAP2描述数据及其断点。软件将一维表数据表示为曲线
信息,二维表数据地图
信息,和断点AXIS_DESCR
和AXIS_PTS
信息。模型可以通过使用一个查找表下面的仿真软件查找表:金宝app
直接查找表(一天)- 1和2的尺寸
使用Prelookup - 1和二维插值
一维查找表
二维查找表
一天的查找表- 1和2维
该软件支持这些类型的查找表金宝app断点(轴点)。
断点的类型 | 信息生成 |
---|---|
可调,在多个表之间共享轴(常见的轴) |
|
固定和nontunable(固定轴) | 这些变体之一
|
可调而不是多个表之间共享(标准轴) |
|
当你的配置块ASAP2代码生成:
表数据,使用一个金宝appSimulink.Parameter
非数据对象汽车
存储类。
共享的可调断点数据在多个表轴(COM_AXIS
),用金宝appSimulink.Parameter
一个非数据对象汽车
存储类。
固定,nontunable断点数据(FIX_AXIS
),使用工作空间变量或数组中指定块参数对话框。断点必须在代码中存储为整数。内置的数据类型必须是一个整数类型(int8
,int16
,int32
,uint8
,uint16
,或uint32
)、定点数据类型或一个等价的别名类型。
可调断点数据不共享多个表(STD_AXIS):
创建一个金宝appSimulink.Bus
对象定义结构体
包装(的名称和顺序字段)。参数结构的字段必须对应查找表数据和查找表的每个轴块。例如,在一个一天的查找表二维块,结构必须只包含三个字段。这辆公共汽车对象描述查找的记录布局特点。
创建一个金宝appSimulink.Parameter
对象表示一个可调参数。
创建表和轴值。
可选地,指定单位,最低,最大参数对象的属性。
这里的一个例子一天的查找表生成记录到一个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结束
请注意
模型的例子rtwdemo_asap2
显示了查找表生成ASAP2文件块,包括可调(COM_AXIS)和固定(FIX_AXIS)查找表断点。
使用通用实时系统目标文件或嵌入式编码系统目标文件生成一个ASAP2文件作为代码生成的一部分和构建过程。
生成ASAP2文件通过使用系统内置ASAP2支持的目标文件。金宝app例如,看到ASAP2示例模型rtwdemo_asap2
。
生成ASAP2数据定义一个模型通过使用一个通用的实时(GRT)系统目标文件或嵌入式编码系统目标文件:
使用代码映射编辑器存储类应用于信号,块,和模型参数,如中描述界面元素C代码生成配置模型。
参数并不代表ASAP2文件中如果存在一个或多个下列条件:
应用存储类汽车
,FileScope
,结构体
,或默认的
(通过模型的默认
)。
应用存储类嵌入式编码字典
。
你申请一个存储类导致代码生成器来生成一个宏观或无法寻址变量。
使用属性检查器来配置剩余的每个数据元素的存储类属性。
设置模型配置参数系统目标文件基于GRT -或ERT系统目标文件。
选择模型配置参数ASAP2接口。
选择参数只生成代码。
点击应用。
生成的代码。
代码生成器将ASAP2文件写入建立文件夹。默认情况下,文件命名
,在那里模型
.a2l
是模型的名称。ASAP2设置文件控制ASAP2文件名。有关详细信息,请参见自定义生成的ASAP2文件。模型
构建过程可以产生ASAP2文件为每个引用的模型参考模型的层次结构。ASAP2文件生成,测量记录代表信号和状态里面引用的模型。
为参考模型,生成ASAP2文件顶部的选择ASAP2文件生成模型和为每个引用的模型引用层次结构。如果您使用的是通用嵌入式编码器实时目标或目标,遵循所描述的过程使用基于GRT -或ERT系统目标文件顶级模型和每个引用的模型。
使用功能rtw.asap2MergeMdlRefs
合并ASAP2文件生成的顶部和引用的模型。这种语法功能:
(地位、信息)= rtw.asap2MergeMdlRefs (topModelName,asap2FileName)
topModelName
是包含一个或多个引用模型的模型。
asap2FileName
是您指定的名称合并ASAP2文件。
可选:状态
返回false(逻辑0)如果合并完成,否则返回true(逻辑1)。
可选:信息
返回关于合并失败的额外信息状态
是真的。否则,它将返回一个空的特征向量。
考虑下面的例子。
(地位、信息)= rtw.asap2MergeMdlRefs (“myTopMdl”、“merged.a2l”)
myTopMdl
和它的模型文件中引用merged.a2l
。
模型的例子rtwdemo_asap2
包括合并ASAP2文件的一个示例。
这个表概述了ASAP2文件的基本结构和描述了目标语言编译器(TLC)函数和文件用于创建的每个部分文件:
静态部分ASAP2文件所示大胆的。
函数调用所示% ()< FunctionName >
。
文件部分 |
asap2main.tlc内容 |
TLC包含函数定义文件 |
---|---|---|
文件头 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
依赖于模式的 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
文件脚注/尾 |
|
|
这个模型显示了ASAP2数据导出。ASAP2协会提出的是一个数据定义标准的标准化自动化和测量系统(ASAM)。
打开示例模型
打开示例模型rtwdemo_asap2
。
open_system (“rtwdemo_asap2”);
ASAP2非面向对象描述的数据用于测量、校准、和诊断系统。ASAM和ASAP2标准的更多信息,参见ASAM网站:https://www.asam.net。
ASAP2数据定义与仿真软件实现®数据对象和测试点的信号。金宝app使用目标语言编译器(TLC),您可以创建高度定制的解决方案为您的应用程序。金宝搏官方网站看到仿真软件编码金宝app器®文档细节ASAP2文件生成。
您可以配置ASAP2文件代选择ASAP2接口在代码生成>界面面板的配置参数对话框。