NI VeriStand 2010 使用手册

更新时间:2023-11-27 04:46:01 阅读量: 教育文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

Real-Time Testing and Simulation Software

NI VeriStand 2010使用手册

Document Version 1.0

By 慕慕 316395914

NI VeriStand 2010使用手册

目录

1. 2.

概述 ........................................................................................................................................... 3 创建软件模型 ............................................................................................................................ 4 2.1. 2.2. 3. 4.

创建被控对象模型 ................................................................................................................. 4 创建控制器模型 ..................................................................................................................... 9

创建MIL测试环境 .................................................................................................................. 11 创建测试激励信号 .................................................................................................................. 20 4.1. 4.2.

使用 STIMULUS PROFILE EDITOR .................................................................................................. 20 使用TMDS FILE VIEWER ........................................................................................................... 26

5. VERISTAND高级功能 ............................................................................................................... 28 5.1. 5.2.

使用USER CHANNELS、PROCEDURES、ALARMS ........................................................................... 28 使用CALCULATED CHANNELS ...................................................................................................... 33

6. 创建HIL测试系统 ................................................................................................................... 39 6.1. 6.2. 6.3. 6.4. 6.5. 6.6. 6.7. 6.8. 6.9.

添加实时目标机 ................................................................................................................... 39 添加NI DAQ设备 .................................................................................................................. 41 添加NI R系列设备 ............................................................................................................... 43 添加NI故障注入模块 .......................................................................................................... 44 添加NI COMPACT RIO 硬件..................................................................................................... 47 添加NI XNET硬件................................................................................................................. 48 添加TDK-LAMBDA可编程电源 .............................................................................................. 53 更改软硬件端口映射 ........................................................................................................... 57 更改模型运行设置 ............................................................................................................... 58

2 / 59

NI VeriStand 2010使用手册

1. 概述

VeriStand 2010是美国 National Instruments公司专门针对HiL仿真测试系统而开发出的软件环境。

VeriStand 2010是一种基于配置的软件环境,它简单易用,无需编程就完成实时测试系统的创建,实现HiL测试中所需的各种功能。NI VeriStand 2010能够配置模拟、数字和基于FPGA的硬件I/O接口;能够配置激励生成、记录数据、计算通道和事件警报;能够从NI LabVIEW和MathWorks Simulink?等建模环境中导入控制算法和仿真模型;能够利用操作界面实时在线监控运行任务并与之交互。

本文档介绍了NI Veristand 2010各项主要功能的使用方法,并按照通用的开发测试顺序编写,主要内容包括:

? 创建软件模型; ? 创建MiL测试系统;

? 实现自动化测试、记录数据; ? 创建HiL测试系统。

3 / 59

NI VeriStand 2010使用手册

2. 创建软件模型

NI VeriStand 2010可以利用*.dll文件导入由Matlab/Simulink/Stateflow创建的算法或仿真模型,下图所示为Simulink模型导入NI VeriStand的过程:

The MathWorks, Inc.Simulink在Simulink环境中创建模型The MathWorks, Inc.Real-Time Workshop利用Matlab RTW, 将Simulink模型编译为C代码Compiler利用VC,将C代码编译为Model_name.dll在NI VeriStand中,直接添加*.dll文件NI VeriStand

注意:NI VeriStand 支持的编译器包括Microsoft Visual C++ 6.0, .NET 2003, 2005 (Professional or Express), or 2008 (Professional or Express).

在本章中具体介绍了上述过程的操作步骤,将一个在Matlab/Simulink环境下创建的 *.mdl文件转换为NI VeriStand所支持的 *.dll文件。

下面用到的仿真模型来自Matlab / Simulink的Demos:

? 发动机Engine模型:Modeling Engine Timing Using Triggered Subsystems ? 控制器ECU模型:Engine Timing Model with Closed Loop Control

2.1. 创建被控对象模型

下面过程将演示如何将Simulink中的发动机Engine模型,转换为VeriStand可用的被控对象模型。

1. 打开Simulink模型: Modeling Engine Timing Using Triggered Subsystem

另存到新建工作目录中,例如 D:\\NIVS_HandsOn,为避免和原有模型冲突,重命名为Engine.mdl

4 / 59

NI VeriStand 2010使用手册

该发动机模型要求的输入信号为 ? Throttle Angle 节气门开度

? Drag Torque 拖拽扭矩(负载扭矩) 输出信号为

? Engine Speed 发动机转速

关于该模型的具体信息,请参考Simulink帮助文档。

5 / 59

NI VeriStand 2010使用手册

运行后结果如下所示,上图为发动机模型所需输入信号,黄色曲线为负载扭矩,紫色曲线为节气门开度;下图中为发动机模型计算的输出信号,黄色曲线为发动机转速。

1) 0~5s,节气门开度不变,负载扭矩在2s时,由25 Nm 下降到20 Nm,发动机转速

因负载扭矩变小而提高;

2) 5s时,节气门开度增加,负载不变时,发动机转速快速升高; 3) 8s时,负载扭矩再次增加,节气门开度不变,转速下降。

2. 正确安装VeriStand后,在Simulink Library Browser 中会自动添加 NI VeriStand Blocks,

如下图所示:

6 / 59

NI VeriStand 2010使用手册

3. 修改模型

1) 将模型中需要做映射的端口,用相应的NIVeriStand In 和NIVeriStand Out 替代; 2) 在Simulink模型最上层中添加Block NIVeriStandSignalProbe,添加后下层所有模块

的参数也都可以通过VeriStand观测或者修改;

3) 取消原Simulink模型中Signal Properties下有关data logging的选项。

4) 完成修改后的发动机模型如下所示:

4. 设置编译环境并编译

1) 打开Simulink模型的Configuration Parameters (快捷键:Ctrl+E), 2) 在Real-Time Workshop中,指定System target file为NIVeriStand.tlc,点击OK确认。 注意:如果实时目标机为cRIO系列,此处要选择NIVeriStand_VxWorks.tlc

7 / 59

NI VeriStand 2010使用手册

3) 回到Solver页面,选择定步长求解器:fixed step-size ordinary differential equation

(ODE) solver

注意:NI VeriStand只支持使用定步长的常微分方程求解器

4) 指定步长:Fixed-step size (fundamental sample time)为0.001,也就是1kHz

注意:步长越小仿真模型计算越准确,但相应的会消耗更多技术资源。修改完步长后,要再次运行仿真模型,观察结果,既要避免因步长选择过大,出现如无法收敛,计算精度无法满足要求,又要避免过小的步长造成cpu运算负担过大,影响实时性。

5) 点击Incremental Build图标或者Ctrl + B,开始编译

6) 编译成功后,Matlab的Command Windows中出现下列提示,

### Successful completion of Real-Time Workshop build procedure for model: ModelName,

并生成与Engine.mdl同名的Engine.dll文件,保存在新生成的 Engine_niVeriStand_rtw文件夹内。

8 / 59

NI VeriStand 2010使用手册

2.2. 创建控制器模型

在Simulink提供的Demo Engine Timing Model with Closed Loop Control中包含了控制器ECU的算法。我们需要把其中的控制器(Controller)算法从闭环模型中分割出来,建立单独的ECU模型,并编译为对应的 *.dll文件。

Controller采用PI控制算法,可根据目标发动机转速,结合发动机模型中的负载扭矩,计算出节气门开度,最终使发动机实际转速与目标转速一致。

下图中黄色曲线为发动机负载曲线,紫色曲线为控制器输出的节气门开度 1) 2s时,由25 Nm变为20 Nm 2) 8s时,由20 Nm变为25 Nm

下图中黄色曲线为目标转速(Speed Setpoint),在5s时由2000 rpm跳变为3000 rpm,紫色曲线为实际转速。

9 / 59

NI VeriStand 2010使用手册

1. 分割、修改ECU模型

1) 打开所需的Demo:Engine Timing Model with Closed Loop Control

2) 提取模型中的Controller子模块

3) 添加NIVeriStand In、NIVeriStand Out和NIVeriStandSignalProbe,另存为Ecu.mdl。

修改后的ECU模型如下所示:

2. 设置编译环境并编译,最终生成所需的Ecu.dll文件。具体配置过程请参考发动机模型

转换部分。

10 / 59

NI VeriStand 2010使用手册

3. 创建MiL测试环境

在上一章中,我们准备好了Engine和Ecu的软件模型,在本章中,我们会将其导入到NI VeriStand 2010中,创建一个MiL (Model-in-the-Loop) 测试环境,并介绍如何在Work Space中添加控件,控制和观察Engine、Ecu的行为。

1. 运行 NI VeriStand

Start ? Program Files ? National Instruments ? NI VeriStand 2010 ? NI VeriStand. 2. 新建一个项目(Create a new project).

1) 选择 File ? New Project.

2) 在Project Name中输入项目名称:ecu hil hands on.

3) 指定项目根目录 Project Root Folder 到 \\National

Instruments\\NI VeriStand 2010\\Projects 4) 勾选Create folder for project. 5) 点击OK确认.

3. 点击 Configure Project, 打开项目浏览器Project Explorer.

项目浏览器(Project Explorer) 用于配置测试所需的全部设置。通过Project Explorer可以部署(Deploy)和运行(Run)系统定义文件。项目浏览器包括所有运行和自动化测试所需关键的参数,同时也可以添加定制文件。

11 / 59

NI VeriStand 2010使用手册

4. 展开 System Definition File 节点.

5. 鼠标右键单击 .nivssdf 文件,选择 Launch System Explorer.

系统浏览器 (System Explorer) 用于创建NI Veristand系统定义文件。系统定义文件是一个配置NI Veristand引擎特性的文件。通过添加,删除和修改位于系统浏览器左部的各项配置可以定义各种属性,包括NI VeriStand引擎的执行方式、硬件端口、计算通道、对仿真模型的控制、报警,执行顺序以及管理通道之间的映射关系。完成系统定义文件的设置后,它将被部署到NI VeriStand 引擎并开始运行。

6. 添加发动机Engine模型

1) 展开Targets ? Controller,点击Simulation Models; 2) 添加模型 Add Simulation Model.

12 / 59

NI VeriStand 2010使用手册

3) 将目录转换到Engine.dll所在目录

4) 选择Engine.dll,单击 OK.确认

发动机模型有2个输入 (节气门开度和负载扭矩) 和1个输出(发动机输出)。

7. 添加控制器ECU模型

1) 点击 Simulation Models,添加仿真模型 Add Simulation Model; 2) 选择Ecu.dll,单击 OK 确认。

控制器模型包含2个输入(目标转速rpm和实际转速 rad/s)和1个输出(节气门位置)。目标转速由上位机给定、实际转速来自于发动机模型,ECU计算出的节气门位置再传递给发动机模型。

8. 调整发动机模型和控制器模型的运行顺序

1) 在System Explorer左侧的树状结构中选择Execution Order; 2) 将发动机模型的色条由Group1拖到Group2

13 / 59

NI VeriStand 2010使用手册

9. 现在需要将发动机和控制器模型的输入输出端口映射到一起

1) 从菜单中选择Tools ? Edit Mappings

2) 从Sources 来源窗口中选择Simulation Models ? Models ? Ecu ? Outports ? throttle

angle setpoint

3) 从Destinations目标窗口中选择Simulation Models ? Models ? Engine ? Inports ?

Throttle Angle. 4) 点击Connect,完成两个信号的相互映射

14 / 59

NI VeriStand 2010使用手册

10. NI VeriStand中也可以实现批量导入导出映射配置文件

1) 在System Mapping的工具条上点击Open.

2) 选择文件映射文件 \\National Instruments\\NI VeriStand

2010\\Projects\\ecu hil hands on\\ecu hil mapping.txt. 3) 点击Import,导入剩余的映射配置到VeriStand中.

4) 点击Exit,所有的映射关系会在Mappings的列表中显示出来

11. 添加标定参数,实现在线标定功能

1) 展开 Models ? Ecu ? Parameters,里面包含了Simulink模型中所有Block的参数 2) 双击 Source窗口中的 Proportional Gain,添加PI控制器的比例系数 3) 双击 Source窗口中的 Integral Gain,添加PI控制器的积分系数

15 / 59

NI VeriStand 2010使用手册

Imported中会出现在Source窗口中双击选定的参数,这些参数可以进行在线的调整参数。

添加完毕后,保存,如果出现下列错误提示。直接选择Continue即可,不会影响后续操作。

12. 在System Explorer的树状节点中选择 Controller

13. 改变目标速率Target Rate 为1000 Hz (1 kHz).

16 / 59

NI VeriStand 2010使用手册

14. 保存并且关闭系统浏览器System Explorer

至此我们已经导入了所需的模型并且将端口映射到了一起,下面就可以将系统定义文件部署到计算机中并开始运行。通过在Workspace中添加相应控件,可以设定发动机目标转速,然后观察控制器是如何通过调整节气门开度,使发动机达到指定转速的。

15. 选择Operate ? Run, 部署和执行系统定义文件

16. 点击Screen ? Screen Properties…从中可以修改页面(screen)名称

1) Name the screen:MIL. 2) 选择 OK.

17. 切换到编辑模式,可以添加控件。选择 Screen ? Edit Mode or CTRL+M.

18. 从左侧的Workspace Controls栏中,拖拽一个图形控件Graph(Simple)

1) 名称Graph Title: Engine Speed 2) 选择通道Channel:

Controller ? Simulation Models ? Models ? Engine ? Outports ? Engine Speed

3) 点击 4) 5) 6) 7)

将Engine Speed添加到Graph中

选择Format & Precision 标签

修改Y轴的显示范围最大值Maximum: 5000 和最小值Minimum: 0 修改Y轴坐标名称scale Label: rpm 修改X轴坐标名称scale label: time

17 / 59

NI VeriStand 2010使用手册

19. 从左侧的Workspace Controls栏中,拖拽一个数字控件Numeric Control (Medium)

? 选择通道Channel: Controller ? Simulation Models ? Models ? Ecu

? Inports ? rpm Setpoint

? 填写控件名称Control Label: rpm Setpoint

20. 从左侧的Workspace Controls栏中,拖拽一个数字控件Numeric Control (Medium)

? 选择通道Channel: Controller ? Simulation Models ? Models ?

Engine ? Inports ? Load Torque

? 填写控件名称Control Label:

Load Torque

21. 退出编辑模式,选择 Screen ? Edit Mode (Ctrl + M).

22. 添加对Engine模型运行的控制,从左侧的Workspace Controls栏中,拖拽一个模型控件

Model (Model Control)

? Model : Controller / Ecu

23. 添加对Ecu模型运行的控制,从左侧的Workspace Controls栏中,拖拽一个模型控件

Model (Model Control)

? Model : Controller / Engine

24. 修改Ecu控制器中的I参数,从左侧的Workspace Controls栏中,拖拽一个模型标定控

件Model Calibration Control (Medium)

? 需要标定的通道名称Calibration:ECU/Controller/Integral Gain/Gain ? 填写控件名称Control Label: I 参数

25. 修改Ecu控制器中的P参数,从左侧的Workspace Controls栏中,拖拽一个模型标定控

件Model Calibration Control (Medium)

? 需要标定的通道名称Calibration: ECU/Controller/Proportional Gain/Gain ? 填写控件名称Control Label: P 参数

18 / 59

NI VeriStand 2010使用手册

26. 至此基本的MiL测试环境创建完成,可以改变目标转速和负载,验证Ecu控制器中的算

法是否满足要求,也就是实际转速能否快速、稳定的跟随目标转速。并能通过修改P、I参数,优化Ecu的控制效果,并确定出最佳数值。

19 / 59

NI VeriStand 2010使用手册

4. 创建测试激励信号

在第3章中我们学习了如何用NI VeriStand 2010的Workspace建立基本的用户界面。在本章中将介绍如何使用Stimulus Profile Editor创建测试激励信号,用于自动化测试。NI VeriStand 中还集成了有许多其他工具,包括警报监控,信号错误管理,TDMS File 观测器等,我们将在后面的章节继续介绍。

4.1. 使用 Stimulus Profile Editor

使用NI VeriStand 2010下的激励信号编辑器 Stimulus Profile Editor可以创建激励信号,常用的如正弦波、方波、三角波、阶跃信号等可直接拖拽、配置。

1. 在Project Explorer浏览器中,右键单击Profiles,选择Add ? New Stimulus Profile…

1) 保存到 \\National Instruments\\NI VeriStand 2010\\Projects\\ecu

hil hands on\\Stimulus Profiles 文件夹

2. Header标签栏用于指定所记录数据的存放位置Data File Path,可设置分组存放文件夹

Group folder和指定测试样本编号Sample Number。

20 / 59

本文来源:https://www.bwwdw.com/article/giqt.html

Top