基于NI VeriStand的AMESIM生成DLL文件实时仿真流程

1 篇文章 0 订阅
1 篇文章 0 订阅

基于NI VeriStand的AMESIM实时仿真流程

一、环境要求

  • 1.1编译器选择

Amesim生成的dll文件只支持veristand2020及以前的版本进行加载模型。下面以AMESIM 2020与veristand2020版本为例。

  (注意!!amesim2020版的编译器必须用Amesim自带的32bitGNU GCC进行编译)

        1.2其它版本兼容性

AMESIM与VeriStand的版本兼容测试结果,如下表所示:

 二、创建模型

第一步:首先搭建完成仿真模型,在没有仿真接口的情况下验证模型的正确性。模型无错误后回到草图模型,创建接口选择veristand接口(接口工具栏→创建接口),接口数量根据需求选择,接口名称自定义(这里名称最好不要用空格和非标准符号)。点击确认。

 

 

第二步:将模型与VeriStand接口模块连接。这里需要注意接口模块不能有未连接的端口。

 

  1. 三、测量和标定变量的设置

在草图模式下将模型创建好之后,通过子系统模式对模型中所有模块选择子系统。然后进入参数模式。在参数模式下,所有需要在实时仿真过程中进行调整的参数都必须设置成“全局变量”,否则在试验过程中将无法改变。如下图所示:

 当全局参数较多的时候,可以通过CTRL或SHIFT进行多选,然后采用数表拖拽的方式放到全局参数变量对话框中。

        这里需要注意的是:只有数值型的参数才可以作为全局变量,其他参数类型(下拉菜单/文件路径等)不可以作为全局变量。

把变量设置成观测变量,导入到veristand中可对其值进行显示观测(仿真模式下设置)。

 

  1. 四、仿真参数设置

完成参数设置后,进入仿真模式。如下图所示:

在“运行参数”页中,进行如下设置。

打印间隔:计算结果输出的时间步长。此参数是AMESIM的计算结果与VeriStand进行交互的时间步长。

仿真类型:因为是实时仿真,所以这里必须选择单次运行.

积分器类型:这里的积分求解器形式必须选择定步长求解,即固定步长积分器。

 在“固定步长积分器”页中,进行如下设置:

使用的步长:仿真模型的计算步长,这里建议与“打印间隔”设置成一致。

其他参数建议可自行设置。

 

  1. 五、编译设置

仿真参数设置完成之后,选择“写仿真文件”。注意这一步很重要不可以忽略。

该步的目的是将所有参数设置的写入最终实时文件生成的缓存中,以备后续生成实时文件使用。如果不进行该步操作,后续下载到VeriStand中将无法运行。

 

在仿真模式下选择(接口→生成实时文件)。该步对应生成VeriStand所需的模型下载文件。该操作将导致模型重新编译。

选择veristand接口,然后点击生成会显示一下信息,最后点击关闭。

 

 

生成的模型下载文件可以在模型所在目录下找到,命名规则为“模型名称.dll”。

需要注意:在工程目录下有还有一个文件为“模型名称“_.dll”,该文件为AMESIM模型的工程文件,不是给VeriStand用的。这两个文件不要混淆。

 

  1. 六、VeriStand设置

在VeriStand中创建工程,打开veristand2020新建工程,并到AMESIM的工程目录下加载相应的dll模型文件。

  在左侧Controller中,将Operating System设置为Pharlap,填写实时机的IP地址。Target Rate设置为和AMESIM中Print interval相对应的频率,此频率为控制器实际计算速率。

 

 在左侧树状结构中选择下载的模型,这里为QuarterCar,确保右侧的Decimation数值1该数值为模型计算步长与CPU运行步长之间的比例,在没有特殊要求下设为1即可。表示CPU每计算一次,对应模型的一个新输出结果。

两者时间关系如下:

 

至此设置完成,模型中所有的输入变量都可以在Inports中找到,所有输出变量可以在Outputs通道中找到。两者需要在VeriStand中和硬件板卡对应的I/O通道继续进行关联。模型中所有的标定参数都可以在Parameters中找到,所有的观测变量都可以在Signals中找到。两者需要和面板控件进行关联。

设置完成点击保存,部署下载到实时机中运行。

  • 3
    点赞
  • 15
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值