使用​LabVIEW、 NI VeriStand 和​INERTIA 开发​基于​模型​的​测​功​机,​实现​整​车​仿真

Miguel Allende Marcos, Tecnalia Research & Innovation

"我们​使用​NI VeriStand​来​配置​我们​的​测试​系统,​无​需​从头开始​开发​测试​架构,​因此​显著​地​减少​了​开发​时间。" ​

- Miguel Allende Marcos, Tecnalia Research & Innovation

挑战:

开发​一个​易​于​配置​的​模​块​化​车辆​模型​和​测试​系统,​应用​于​基于​模型​的​测​功​机,​并​快速​地​部署​车辆​控制​系统。 ​ ​ ​

解决​方案:

使用​NI LabVIEW​作为​仿真​软件,​并​使用​NI Veristand​软件​和​INERTIA​插​件,​开发​一个​综合​测试​系统,​实现​激励​生成、​数据​记录​和​报表​生成。 ​

作者:

Miguel Allende Marcos - Tecnalia Research & Innovation
​Iñaki Iglesias - Tecnalia Research & Innovation
​Adrian Martin - Tecnalia Research & Innovation
​Alberto Peña - Tecnalia Research & Innovation

 

 

Tecnalia​是​欧洲​最大​的​私有​研究、​开发​和​创新​公司​之一,​需要​开发​一套​可以​实现​如下​功能​的​工具:

1,​在​嵌入式​软件​开发​过程​中,​能够​从​设计​阶段​顺利​过渡​至​快速​控制​原型​阶段;

2,​实现​针对​整​车​动力​总​成​的​高级​控制​策略​测试;

 

我们​首先​开发​了​一套​嵌入​在​实​时​系统​中的“虚拟​汽车”,​能够​准确​地​计算​汽车​在​实际​行驶​过程​中的​各种​变量。​(参见​图​1)

我们​决定​将​车辆​模型​划分为​多个​子​系统,​如:​发动​机、​传​动、​车轮、​底盘​和​制动​子​系统。​这种​划分​方式​有​几个​非常​重要​的​优点:​我们​为​每​个​模型​子​系统​的​分配​至​对​其​最​熟悉​的​开发​人员,​并且​可以​在​每​个​新的​子​系统​完成​时​分​阶段​更新​模型。​采用​这种​模​块​化​的​方法,​当​某​个​真实​的​组​件​开发​完成后,​我们​可以​很​容易​地​以其​替换​仿真​的​组​件;​而且​用户​还​可以​切换​至​我们​在​其它​环境​中​开发​出​的​子​系统。

我们​的​测试​软件​需要​如下​能力:

  • 能够​集成​各种​子​系统​模型,​开发​一个​与​实​时​系统​兼容​的​系统​模型
  • 能​在​各种​编​程​语言​环境​中​编写​子​系统​模型
  • 能够​很​容易​地​替换​系统​中的​模型
  • 能够​很​容易​地​使用​真实​的​组​件​(开发​完成后)​替换​子​系统​模型
  • 能够​进行​数据​记录​和​报表​生成

 

我们​选择了 NI VeriStand 作为​测试​软件,​因为​它​能够​满足​所有​上述​需求,​并且​是​现成​可用​的。​我们​使用​NI VeriStand​来​配置​我们​的​测试​系统,​无​需​从头开始​开发​测试​架构,​因此​显著​地​减少​了​开发​时间。​而且,​我们​可以​将​更多​的​时间​用于​测试​和​改进​模型。​图​2​示​为​系统​根据​上述​概念​运行​的​概要​图。

 

应用​案例

此​项目​的​目标​是​更新​一个​现有​的​测试​平台,​此​平台​中​包括​完整​的​动力​总​成,​含有​电力​牵引​传​动​系统,​通过​一个​差动​系统​和​两​个​传​动​轴​连接​至​两​个​车轮。​我们​使用​Dynacar​软件​开发​了​一个​实​时​的“车辆​在​环”和“人​在​环”仿真​系统。​这些​仿真​系统​为​车辆​的​机械​组​件​仿真​车辆​在​真实​道路​上​行驶​时​的​速度​和​受到​的​应力,​从而​帮助​我们​在​试验​室内​精确​地​测试​嵌入式​软件,​减少​了​道路​测试​的​时间。

 

图​3​展示​了​此​项目​中​组​件​的​基本​架构。​EM3​代表​系统​的​牵引​驱动,​EM1​和​EM2​代表​用于​模拟​阻力​(轮胎​与​路面​之间​的​接触​导致)​的​电机,​牵引​驱动​需要​根据​驱动​和​环境​参数​克服​阻力。

 

如下所示​为此​测试​系统​的​要求:

执行​车辆​模型​软件 (Dynacar) 更新​速率:​1 ms
通过​控制器​局​域​网络​(CAN)​通信​控制​三​个​电机 更新​速率:​5 ms
实现​辅助​逻辑​控制 更新​速率:​100 ms
管理​关键​报警 更新​速率:​1 ms
生成​激励​用于​自动​测试 更新​速率:​10 ms
报表​生成 无​更新​速率​要求

 

我们​使用​NI VeriStan​作为​测试​平台,​因为​它​自身​支持​多核​执行。​例如:​使用​NI VeriStand,​我们​可以​同时​使用​三​个​内​核​执行​模型,​从而​确保​1ms​的​更新​速率,​而​第四​个​内​核可​用于​执行​其它​功能,​如​报警​管理​和​激励​生成​等。​将​这些​数据​处理​任务​独立​出来,​可以​确保​系统​的​实​时​性能。

 

通信​与​测试

我们​通过​CAN​总​线​实现​与​三​个​驱动​器​的​通信,​选择PXI-8512/2 模​块​作为​我们​的​I/​O​设备,​传输​CAN​消息。​这个​模​块​使用​NI-​XNET​协议,​包含​直观​的​API,​可​扩展​至​自​定义​的​消息。

 

我们​的​测试​系统​可​用于​实现​手​动​的​测试,​并​能够​实现​自动​的​实​时​测试。​进行​手​动​测试​时,​操作​者​在​虚拟​环境​中​驾驶​车辆,​根据​操作​者​的​驾驶​习惯,​在​各种​场景​中​测试​系统​的​响应;​进行​自动​测试​时,​模型​通过​虚拟​驾驶​员​进行​导航,​遵从​预先​定义​好的​驾驶​模式。​两​种​类型​的​测试​都可以​让​工程​师​测试​特定​的​操作​点,​这​在​实际​道路​测试​中​是​很​难​甚至​无法​实现​的。

 

设置​参数

我们​使用LabVIEW 开发​了​一个​GUI(图​4)。​使用​GUI,​根据​测试​的​具体​需要,​配置​模型​参数。​此​模型​包含​多​达​150​个​可​配置​的​参数,​这样​可以​仿真​一系列​的​车辆、​布置​驾驶​场景,​并​实现​自动​化​的​驾驶​循环。

 

 

结论

Tecnalia 选择 LabVIEW 和 NI VeriStand​作为​开发​环境,​开发​车辆​模型​并​在​最终​的​测试​系统​中​实现。​这​一​开发​环境​能够​很​容易​地​对​硬件​编​程​和​交互,​内​置​多种​协议​支持。​NI VeriStand​具有​运行​时​可​编辑​的​UI,​可以​让​用户​添加​输入​控​件、​显示​控​件​和​图表,​并​实​时​记录​数据,​无​需​停止​运行于PXI控制器​的​发动​机​模型。​将​Dynacar​和​NI​工具​相​结合,​帮助​我们​实现​了​最​先进​的​系统,​用于​开发​和​验证​车辆​的​组​件​和​控制器。

 

作者​信息:

Miguel Allende Marcos
Tecnalia Research & Innovation
​Spain
miguel.allende@tecnalia.com

图​1: ​ ​图​1:Dynacar​技术​具有​可​配置​性​极​高​的​动画​环境,​让​工程​师​的​操作​变得​可​视​化​且​身临​其​境。 ​
图​2: ​ ​利用​NI VeriStand​开发​的​Dynacar​系统​应用​框​图 ​
图​3: ​ ​测试​平台​控制​框​图 ​
图​4: ​ ​配置​GUI ​
图​5: ​ ​Dynacar,​获得​了​2011​年度​CAE​创新​奖 ​