[模型生成]如何生成Veristand使用的动态文件模型

软件信息:Matlab 2016b
Veristand 2017

1 本文的目的

记录使用Simulink建模生成动态连接库的需要注意的地方及遇到问题的解决方法。

2 检查步骤

2.1 环境搭建

具体请看另一章节的内容,详细介绍了软件版本及安装过程

2.2 模型建好后,按照一下的步骤进行逐项检查

2.2.1 模型解算器
Veristand中只能运行离散型模型,故需将解算器设置为固定步长(Fixed-step)
2.2.2 模型运行速率
根据模型需求设定合适的运行速率
2.2.3 代码生成中 目标程序生成文件选择
System target file选择NIVeriStand.tlc,语言选择C
2.2.4 目标代码编译标准数学运算库
首先,可先获取当前模型的参数值。(一般编译出现问题都是此参数配置有问题导致)
get_param(ModelName,Pre_get_param)
%ModelName:需要配置的模型名称,如'test'
Pre_get_param: 获取变量名,'TargetLangStandard'
其中通过查询Simulink中help文档,获知TargetLangStandard是Standard Math Library的配置,表格如下
Library NameLanguage SupportStandard
C89/C90 (ANSI)C, C++ISO®/IEC 9899:1990
C99 (ISO)C, C++ISO/IEC 9899:1999
C++03 (ISO)C++ISO/IEC 14882:2003

    同时帮助文档中提到修改此参数有两种:

To change the library:

  1. In the project build settings, on the Custom Code tab, set the Standard math library parameter.
  2. In a code configuration object, set the TargetLangStandard parameter.

    Verify that your compiler supports the library that you want to use. If you select a library that your compiler does not support, compiler errors can occur.

其中第一种方法在模型设置中未找到,第二种即本文提到的设定方式

————————————————————————————————————————————————

注:Simulink在进行适合Veristand动态链接库生成时,会调用标准运算库函数,猜测可能是由于tlc文件中不支持C99(ISO)的数学库,导致编译出错,目前的现象是,通过修改此参数的数值,可以让模型正常编译
注:目前通过Simulink生成Veristand只能使用C89/C90(ANSI),且此变量无法通过模型设定界面进行设定

2.3 生成代码并导入

总结

暂时遇到生成dll文件的问题都解决了,如后期遇到新的问题,会同步更新到文中。
                                                                        -20180917
asap2userlib.tlc 是一种文件扩展名,通常用于与Automotive Systems Architecture and Protocol (ASAP) 相关的用户库。ASAP是一种通信协议,主要用于汽车电子控制单元(ECU)之间的数据传输和交流。 asap2userlib.tlc 文件包含了一些用户自定义的函数和库,用来处理ASAP2文件格式的数据。ASAP2是一种用于描述ECU的参数和特性的标准格式。通过读取和解析.asap2文件,可以获取ECU的硬件和软件信息,例如信号名称、检测范围、单位和校准值等。asap2userlib.tlc 文件中的函数和库可以帮助开发人员更方便地处理和解释这些数据。 通过使用asap2userlib.tlc 可以实现以下功能: 1. 解析和读取ASAP2文件:将.asap2文件中的信息提取出来,方便对ECU的参数和特性进行分析和处理。 2. 数据校准和校验:asap2userlib.tlc 中的函数可以根据ASAP2文件中定义的校准值和范围,对传感器和执行器的数据进行校准和校验,确保其准确性和稳定性。 3. 数据转换和处理:开发人员可以使用asap2userlib.tlc 文件中的函数和库,对ASAP2文件中的数据进行转换和处理,方便后续算法的开发和实现。 总而言之,asap2userlib.tlc 是一个用于处理ASAP2文件格式的用户库,它提供了一些函数和库,方便开发人员对ECU参数和特性进行解析、校准和处理。它在汽车电子控制系统的开发和调试过程中扮演着重要的角色。
评论 6
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值