HIL测试工作步骤详谈
2023-1-28 18:5:4 Author: 谈思实验室(查看原文) 阅读量:27 收藏

点击上方蓝字谈思实验室

获取更多汽车网络安全资讯

前一段时间做了一个VCU的HIL测试工作,最近在整理整个的调试过程,写了一份总结,在这里和大家分享一下。这里声明一下,这里的内容不做为指导性内容,只是详细讲述一下测试过程和心得体会,供大家讨论交流!下面步入正题:

Speedgoat公司:

本人工作中使用的机柜为Speedgoat提供的,这里也简单介绍下这个公司。

  1. Mathworks联营公司,于2006由MathWorks前员工成立

  2. 总部位于瑞士伯尔尼,分部门位于Natick(美国波士顿)和德国汉诺威

  3. 致力提供专门针对Simulink环境的实时系统

  4. 在Mathworks和Speedgoat内,核心团队(仅实时仿真和测试部门)约100人

可能可能 会问,为什么不选择dspace的产品?当然是公司没钱啦。业内有一个调侃:一个公司如果购买HIL设备要走招标流程,那dspace就不来了。。。。。因此他的设备基本上都是比较贵的,招标他肯定没戏。

机柜介绍

机柜的组成如下图:

1) 电源分配箱:将进入的电力分配给各个模块;

2) 程控电源:提供可控的电力;

3) 信号调理电源:为信号调理提供电力

4) 低压负载测试箱:提供负载电阻

5) 调试CAN口:可进行信号采集和标定

6) 上下接插件:连通机柜与VCU之间的信号交互

7) DIO调理板卡:调理作用

8) 低压故障注入箱:提供故障注入

9) 实时系统:目标机

图1 Speedgoat VCU机柜

对机柜有大致的了解之后就要开始对VCU收发的信号进行定义了,这里需要明白的是,机柜发出和接收信号,都是通过板卡来实现的。我们可以把板卡看作是一个重要的中转,它可以接收到VCU发出来的信号,并通过驱动的配置将其发给目标机,目标机再根据其中的模型执行相应的动作;他也可以将目标机中发出的指令转换成信号发给VCU,从而实现VCU和机柜的信号交互。这里就需要对板卡的资源进行分配和定义。

  • I/O接口定义和资源分配

板卡中包含IO133、IO144等多个型号,在模型中使用板卡时,需要利用驱动对其进行管理调配,具体步骤如下:

1.打开Speedgoat提供各板卡的IO驱动库:

方法1:在Simulink库中直接找到该库,可右键打开

方法2:在Matlab窗口输入speedgoatlib

图2 speedgoat提供的模型库

2.板卡驱动的使用

步骤1:将实时目标机具备的IO硬件的驱动模块拖拽到模型中;

步骤2:将算法与IO硬件的驱动模块链接

步骤3:通过对话界面配置IO通道和通讯协议;

步骤4:从Simulink模型自动的创建,并在实时机上运行你的应用

图3 驱动板卡的使用

3.以IO133板卡为例(仅举例,用户需使用自己系统中有的板卡):

步骤1:将setup模块首先拖到模型中,并打开做相应配置,如使用系统中第几块IO133,模拟通道激活那几路(输入方式如[1 2],或[1:4],或[1:3 5]),每路的电压范围(不同板卡有不同设定)。数字通道的方向等(具体可参见setup模块的help说明)

图4 IO133板卡使用

步骤2:将要使用的通道如ADC,DAC模块添加到模型(如果模块的接口没有依据setup的设定自动调整,可Ctrl+D更新一下),并将模块与模型连接即可。

图5 IO板卡添加到模型中

4.接口定义分配

在收到VCU引脚定义后,需对引脚信号进行分类,其收发的信号通常包括Digital Input、Digital Output、Analog Input、Analog Output、PWM Input、PWM Output等类型,因此需要根据各板卡的特性,对各接口进行定义。这里据一个例子进行说明。

板卡的使用电机水泵电源控制,为Digital Output,则需要在板卡里找到Digital Input的接口,将其对应的接插件管脚记录下来,并在驱动中完成配置,完成接口定义。如果为Analog Input,还需进行电压等其他配置。

图2 IO133板卡接口

经过DIO的为可自定义的接口,因此若在资源分配中发现某一类型的接口不够用,可以在Digital Input/Output之间相互转换,以便对板卡进行资源分配。

整车环境模型架构

整车环境模型的搭建是一个庞大的工程,里面涉及到车上的各个模块逻辑和相关功能,还需考虑到各模块之间的通讯、信号观测和自动化测试等诸多因素,因此在搭建模型是建议参照如下原则。

独立性:将CAN信号、IO信号、控制ECU、硬件模型、环境模型划分模块搭建,混在一起会导致模块混乱、通用性差;

可观测性:提前了解操作平台的可观测属性和可标定属性,在搭建模型时需要有意识的将重要模块的输入信号做Override,输出信号做成可观测量;

适用性:及时了解自动化测试所使用的工具和相关属性,例如TPT只可控制Subsystem的最外层接口,因此需要将集成后的模型再打包成子模型;

便捷性:模块的输出信号和输入信号的顺序,要按照DBC的顺序进行统一,方便后面的修改替换;

检测顺序:

模型搭完后需对模型的正确性、信号收发的正确性和面板控制的正确性等方面进行检测,此过程中的检测步骤如下:

1. 总线检测:通过万用表测量VCU接插件端到机柜板卡端的通断,确保总线的正确性;

2. 板卡功能定义检测:检测板卡的输入信号解析和输出信号发送是否符合板卡定义,例如数字信号定义、模拟信号定义、PWM波信号定义等;

3. 驾驶员控制面板的检测:检测驾驶员控制操作,如油门、踏板、KeyON/Start等;

调试顺序:

检测工作完成后就进入了具体的调试阶段了,在功能测试中慢慢发现问题,完善环境模型。在此过程中需遵循从简单基础功能开始测试的原则,逐渐覆盖全功能,具体调试顺序可参考如下:

1. 信号收发调试:完善信号收发必备的LIVECOUNTER 和CHECKSUM的计算;

2. 信号发送的正确性校验:通过CANalyzer或CANape观测报文,并校验信号发送是否正确;

3. 上下电功能调试:根据设计要求,调试上下电功能;

4. 睡眠唤醒调试:根据设计要求,调试睡眠唤醒功能;

5. 充电功能调试:根据设计要求,调试充电功能;

车辆可以正常行驶后,开始对各个功能进行调试,在测试中发现问题,不断优化模型。

:汽车ECU开发

码上报名

WISS 2023 第四届世界物联网安全及数据安全治理峰会火热报名中,3月9-10日,上海

码上报名

AutoSec 7周年年会暨中国汽车网络安全及数据安全合规峰会,5月10-11日,上海

更多文章

智能网联汽车信息安全综述

软件如何「吞噬」汽车?

汽车信息安全 TARA 分析方法实例简介

汽车FOTA信息安全规范及方法研究

联合国WP.29车辆网络安全法规正式发布

滴滴下架,我却看到数据安全的曙光

从特斯拉被约谈到车辆远程升级(OTA)技术的合规

如何通过CAN破解汽

会员权益: (点击可进入)谈思实验室VIP会员

END

微信入群

谈思实验室专注智能汽车信息安全、预期功能安全、自动驾驶、以太网等汽车创新技术,为汽车行业提供最优质的学习交流服务,并依托强大的产业及专家资源,致力于打造汽车产业一流高效的商务平台。

每年谈思实验室举办数十场线上线下品牌活动,拥有数十个智能汽车创新技术的精品专题社群,覆盖BMW、Daimler、PSA、Audi、Volvo、Nissan、广汽、一汽、上汽、蔚来等近百家国内国际领先的汽车厂商专家,已经服务上万名智能汽车行业上下游产业链从业者。专属社群有:信息安全功能安全自动驾驶TARA渗透测试SOTIFWP.29以太网物联网安全等,现专题社群仍然开放,入满即止。

扫描二维码添加微信,根据提示,可以进入有意向的专题交流群,享受最新资讯及与业内专家互动机会。

谈思实验室,为汽车科技赋能,推动产业创新发展!


文章来源: http://mp.weixin.qq.com/s?__biz=MzIzOTc2OTAxMg==&mid=2247518164&idx=1&sn=ae86cb319fd2f3df4b3ce9f619ddb39b&chksm=e927c30fde504a192d47133fcb9934d21f56e1df422626de8e5d4abaabd55877783166501f47#rd
如有侵权请联系:admin#unsafe.sh