使用VeriStand搭建MIL测试环境

描述

MIL(Model In The Loop)模型在环仿真测试用于在实际系统搭建完成之前进行模型测试,使用VeriStand搭建MIL测试环境,可以在不需要硬件资源的情况下测试控制模型。

下面小编将带领大家完成一个简单的练习,在VeriStand中调用Matlab模型,实现公式Y=((A+B-D)*C)/D的运算,在此过程中熟悉VeriStand项目的开发流程,为学习搭建HIL(Hardware In The Loop)测试系统打下基础。

本文教程:

VeriStand创建MIL测试环境

一、软件环境

VeriStand2020

MATLABR2019a

GCC编译器(安装教程参考:教程 | VeriStand硬件在环仿真测试第一章)

若想使用其他版本的软件,可以参考NI官方提供的软件兼容性列表

二、创建Simulink模型

打开MATLAB 2019a,先修改预览文件夹,选择文件保存位置;若未修改文件浏览文件夹,编译Simulink文件时可能会遇到报错。

模型

启动Simulink。

模型

创建空白Simulink模型,将模型保存到文件夹,文件名不能包含非法字符(小编实测不允许出现空格,建议用下划线分隔字符)。

模型

模型

1. 构建加法器模型

模型

模型

输入输出接口选择NI VeriStand Blocks里的两个控件,拖到面板上进行重命名并连线,小编建议命名逻辑清晰一些,方便后续编辑端口映射。

模型

若调用了其他Simulink模型,注意模块之间连线的属性,不能勾选LogSignal和Test Point。

2. 配置模型参数

点击Model Configuration Parameters或按快捷键Ctrl+E,设置模型参数。

模型

模型

步长越短模型模拟越精确,也相应地带来了更高的计算量;求解器用于计算常微分方程,根据模型情况选择合适的求解器可以提高执行效率。

Window模式下选择可变步长或固定步长都可以,推荐使用Auto自动选择求解器;模型部署在实时系统时只能选择固定步长,求解器推荐使用ODE4。

模型

如上图中所示,在Code Generation中设置TargetFile和Toolchain参数,完成参数配置后点击OK。

3. 模型编译

点击Build Model或按快捷键Ctrl+B对模型进行编译,在预览文件夹可以看到生成的.Dll文件,该文件可供VeriStand调用;其余的减法、乘法、除法模型制作方式同理。

模型

模型

二、 在VeriStand中调用模型 :

1. 加载模型

新建VeriStand工程,点击Configure进入设置。

模型

右键Simulation Models选择Add Simulation添加模型。

模型

点击文件夹图标,找到并选择先前Simulink模型生成的.Dll文件,点击确定。

模型

在模型下方可以看到其输入输出接口,将剩余需要加载的模型按照同样的方法加载进来,下一步开始配置端口映射。

2. 配置端口映射

点击Configure Mappings编辑映射关系。

模型

模型

模型

根据公式的计算顺序,其余的接口映射,依图中箭头所代表的关系设置。

3. 设置模型执行顺序

点击Execution Order,在模型栏拖动橙色条纹规定模型执行顺序,Group 0~3会依次执行,橙色条纹对应的模型即是本组需要执行的模型,上图为依据计算公式设置的执行顺序,完成后保存返回主界面。

模型

4. 编辑Workspace面板

双击Workspace。

模型

选择Screen中的Edit Mode。

模型

点击Workspace Controls。

模型

在菜单中选中Numeric Control下的Medium,拖到网格区域。

模型

在弹出的属性配置界面中选择映射到的端口。

模型

在第二栏的Format & Precision属性中设置数值显示精度。

模型

模型

5. 运行部署

选择右上角的Idle中的Deploy部署执行程序。

模型

打开Workspace查看执行结果,符合公式Y=((A+B-D)*C)/D。

模型

至此,我们成功搭建并验证了一个简单的MIL测试系统,万变不离其宗,对于更复杂的MIL、HIL测试系统,区别是调用了更加复杂的模型、配合更复杂的硬件连接方式,其总体上的搭建过程与本文所描述的流程相似。

三、内容总结

1.创建Simulink模型,生成.DLL文件。

2.在VeriStand中调用Simulink模型。

3.配置端口映射。

4.编辑Workspace面板。

审核编辑:汤梓红

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分