1、什么是BMS

BMS(Battery Management System)全称电池管理系统,是新能源汽车的核心系统之一。新能源汽车与传统燃油车存在很大的不同,以纯电动汽车为例,它是以电池包为动力来源的,那么电池包的状态对纯电动汽车就尤为重要。而电池管理系统就是对电池组的运行状态进行实时监控,精确预估电池剩余容量,对出现的故障及时报警,以便最大限度的延长电池的循环寿命,使电池工作在最佳状态。BMS的主要功能如下图所示:

BMS主要功能图

2、什么是HiL?

HiL(Hardware-in-the-Loop)硬件在环是计算机专业术语,也即是硬件在回路。通过使用“硬件在环”(HiL) ,可以显著降低开发时间和成本。在过去,开发电气机械元件或系统时,使用计算机仿真和实际的实验就已经彼此独立开来。然而通过使用硬件在环的方式,这两个过程可以结合并展示出效率的极大提升。

硬件在环:即硬件在回路(HiL),首先看一下下面三种情况的区别(如果将实际控制器的仿真称为虚拟控制器,实际对象的仿真称为虚拟对象,可得到控制系统仿真的3种形式:)

1)虚拟控制器+虚拟对象=动态仿真系统,是纯粹的软件系统仿真;

2)虚拟控制器+实际对象=快速控制原型(RCP)仿真系统,是系统的一种半实物仿真;

3)实际控制器+虚拟对象=硬件在回路(HiL)仿真系统,是系统的另一种半实物仿真 。

HiL目前主要有三大硬件平台,包含NI平台、Dspace平台、ETAS平台(已宣布退出HiL业务),下面方案主要以NI平台进行介绍。下面主要介绍BMS HiL系统方案。

3、HiL系统方案架构:

HiL测试系统整体架构如下图所示,主要包含三层内容,第一层次为HiL测试系统软硬件架构,主要包括HiL测试系统的硬件设备、实验管理软件、被测控制器等;第二层次为HiL测试系统开发,在第一层次软硬件架构的基础上进行被测对象仿真模型开发、实时I/O接口匹配、硬线信号匹配及实验定义等;第三层次为HiL测试,主要指在第一、二层次的基础上进行HiL测试,主要包括测试序列开发、激励生成加载、模型参数调试、故障模拟实现及测试分析与评估等。

HiL测试系统架构示意图

3.1、BMS HiL系统架构:

BMS HiL测试系统主要包括:上位机(PC)、PXI机箱、处理器板卡、数据采集板卡、CAN卡、电池模拟器、高压电源、低压电源等,BMS HiL测试系统提供与BMS控制器硬件IO信号相对应的资源及与BMS控制器控制策略相对应的整车模型、电池模型。BMS系统一般包括主板、从板及高压采集模块,BMS HiL测试系统原理如下图所示:

BMS HiL测试系统原理示意图

BMS HiL测试系统中上位机电脑安装Veristand、Teststand软件用于测试过程管理和测试序列编辑,通过以太网与PXI机箱中的实时处理器进行连接,实时处理器中运行实时系统(Real Time)并安装Veristand终端引擎,通过与上位机数据传输,将仿真模型部署到实时系统中并控制运行状态;PXI机箱中配置有多种类型的板卡,为系统提供不同类型的信号模拟和采集功能,通过PXI总线与实时处理器进行数据传输。

3.2、主要功能:

BMS HiL测试系统主要功能包括:

  • 提供电池单体电压模拟;
  • 提供电池单体温度传感器阻值信号模拟;
  • 支持电池单体故障注入,包括单体电压/温度的采样线断路、采样线短路、超阈值、单体极性反接等故障;
  • 提供多通道高压信号模拟;
  • 提供绝缘电阻模拟;
  • 提供电流传感器信号模拟;
  • 提供总线通讯信号模拟;
  • 提供BMS系统其他输入信号模拟;
  • 提供BMS系统各种输出信号采集;
  • 支持低压I/O信号故障注入;
  • 集成动态仿真模型,实现被测控制器的实时闭环测试;
  • 支持模型变量在上位机界面实时修改,无需重新编译模型;
  • 支持上位机界面通道配置及参数设置,实现被测控制器手动测试;
  • 支持测试用例编辑,实现自动化测试,自动生成测试报告;
  • 支持NEDC等标准工况测试及自定义工况测试;
  • 支持上位机界面实时查看所有通道数据,包括硬线、总线和模型数据;
  • 支持BMS的功能测试,主要包括单体采集、高压采集、电流采集、继电器控制、单体均衡、SOC估算、热管理及国标交直流充电功能验证;

3.3、系统组成

BMS HiL测试系统主要有硬件平台、软件平台、控制模型三部分组成。

HiL系统组成图

3.3.1硬件平台:

BMS HiL测试系统采用分布式设计模式,上位机作为整个系统的控制核心,主要负责软硬件配置和流程管理;下位机以PXI机箱、实时处理器及I/O板卡为核心,主要负责序列执行与设备调用。系统硬件平台由PXI机箱、实时处理器、I/O板卡、通讯板卡、电源管理模块、故障注入板卡、高压可编程电源、低压可编程电源、电池模拟器、信号调理模块、机柜及上位机电脑等组成。

HiL 测试系统下位机实时系统参考图

3.3.2软件平台

软件平台包括实验管理软件和自动化测试软件,实现试验管理、故障注入、测试用例编辑及自动化测试等功能。

软件平台界面参考图

本方案试验管理软件基于NI VeriStand 软件平台,实现系统配置管理和测试管理。试验管理软件是一款基于配置的专业实时测试与仿真软件,无需编程即可创建测试应用,快速将硬件I/O与多种环境下开发的仿真模型相集成,同时可以通过NI LabVIEW及其他软件添加自定义与其他自动化测试功能,在兼具灵活性与开放性的同时,降低系统开发难度,缩短开发时间。

本方案自动化测试软件基于NI TestStand软件平台,自动化测试软件是一款可立即执行的测试管理软件,它可以帮助用户更快地开发自动测试和验证系统。自动化测试软件主要功能包括:

➢ 可视化测试序列编辑环境

➢ 测试管理功能

➢ 测试执行

➢ 多线程并行测试

➢ 用户管理

➢ 测试报告管理

➢ 可自定义的操作员界面

➢ 源代码控制整合

➢ 数据库记录

3.3.3仿真模型

仿真模型为HiL系统提供完整的虚拟环境,与被测ECU相应的I/O信号和CAN信号通过硬件板卡进行匹配,实现控制对象仿真模型与控制器输入输出信号之间的无缝连接,从而形成闭环测试环境。

BMS HiL测试系统仿真模型主要包括电池模型、整车模型、国标充电桩模型、I/O模型、UDS模型等。

1) 模型满足电动汽车BMS功能测试要求;

2) 基于MATLAB/Simulink开发,能实现模型模块化、参数化设置,模型精度高;

3) 支持以图形用户界面输入数据;

4) 模型中各模块所用参数可以实时在线修改,不需重新编译下载模型;

5) 支持在MATLAB下离线仿真和在线仿真;

6) 满足新能源硬件在环测试系统实时性要求,整个仿真模型运行于实时系统,模型整体解算步长≤1ms;

7) 所有模型均开源、规范、易读,可进行模型的二次开发,每个模块有详细的模型说明,方便用户修改模型参数。

BMS HiL测试系统仿真模型参考图

对于BMS HiL测试,需要建立动力电池仿真模型,目的是根据车辆动力学模型得到的电池电流激励来仿真电池电压的响应情况。电池模型充分考虑了电池动态特性,同时考虑到实际应用中的电池单体存在不一致性的情况。

电池仿真模型支持三元、磷酸铁锂等各种类型锂电池,包括电池单体模型及串联电池组模型。

整车模型主要用于提供BMS HiL测试所需的整车信号,包括驾驶员 、车辆动力学模型、电机模型、主减速器模型、道路及环境模型及虚拟控制器模型,为BMS测试提供虚拟整车环境。

充电桩模型包括快充模型和慢充模型,充电模型主要是实现充电枪、充电参数控制逻辑及故障模式设置等,模拟正常及故障状态下的预充功能。在充电模式下,根据插枪动作识别快慢充模式,自动发出握手参数,并输出相应充电电压、电流等参数,根据国标要求可以设置相应的故障类型完成故障模拟测试。

UDS模型主要是按照UDS协议实现被测控制器的参数标定。能够依据甲方提供的DID标定协议在自动化测试工步中完成参数标定(如SOC写入到BMS,并读取BMS的SOC)。

I/O模型实现车辆仿真模型与被测控制器的信号连接。I/O模型包括传感器信号输出接口、执行器信号采集接口、通信接口等。

4、HiL测试流程

HiL测试流程包含测试准备、测试用例开发、测试工程搭建、测试调试、测试总结。

HiL测试流程图

4.1、测试准备

测试准备包含:被测控制器接口分析、HiL设备硬件资源分配、控制器线束设计、被测件功能分析、测试计划安排;

4.2、测试用例开发

测试用例开发方法研究是测试的关键点之一。采用合理的测试方法开发出合理有效的测试用例,不仅可以增加测试的覆盖度而减少冗余重复的测试,也可以大大减小测试的时间而提高测试的效率。

测试用例开发包含:测试用例定义、测试用例开发方法(黑盒测试、白盒测试、基于经验测试)、自动化测试用例开发;

4.3、测试工程搭建

测试工程搭建主要是测试工程师是基于实验管理软件和自动化测试软件进行测试工程的搭建,包含:软硬件工程配置、测试界面搭建、模型配置、通讯配置等等;

4.4、测试调试

1)冒烟测试:测试工程搭建完成后,连接被测控制器,需要对被测控制器和HiL测试设备做冒烟测试,验证设备连接与原件是否有基本的问题。冒烟测试有测试人员和开发人员共同完成,在测试过程中发现问题,测试人员找到了一个Bug,然后开发人员会来修复这个Bug,冒烟测试是否通过决定了下一轮系统测试是否可以执行。

2)接口测试:接口测试是只有被测控制器,没有和整车仿真模型形成闭环的测试,属于开环测试。接口测试通过人为赋值模拟VCU、MCU等外部控制器与被测控制器之间的数据交互,验证被测控制器数据交互是否正常,侧重信号交互验证。一般接口测试如果有测试程序,可以自动测试,如果没有测试程序,可手动测试。

3)自动化测试:被测控制器和整车仿真模型形成闭环的测试,属于闭环测试。闭环测试通过模拟操作驾驶室变量,使整车模型与被测控制器自动数据交互,验证被测控制器软件策略,侧重功能和性能验证。

4)测试报告:通过HiL测试管理软件加载测试序列,执行测试,输出测试报告。

4.5、测试总结

测试完成,在被测功能达到测试通过标准后,需要对HiL测试工作进行总结和整理,并生成及编制HiL测试总结。HiL测试总结主要包括以下内容:HiL测试环境、测试周期、测试人员及测试内容等、测试过程中的问题统计与分析,并对测试遗留问题进行记录、测试结束后检查所做的测试工作及完成情况,提交工作成果,包括:测试用例说明文档,测试矩阵文档,可执行文件及生成的测试报告等。

5、总结

硬件在环仿真测试系统是以实时处理器运行仿真模型来模拟受控对象的运行状态,通过I/O接口与被测的ECU连接,对被测ECU进行全方面的、系统的测试。从安全性、可行性和合理的成本上考虑,HiL硬件在环仿真测试已经成为ECU开发流程中非常重要的一环,减少了实车路试的次数,缩短开发时间和降低成本的同时提高ECU的软件质量,降低汽车厂的风险。在新能源汽车领域中,HiL硬件在环仿真测试对于核心电控系统:整车控制系统、BMS电池管理系统、MCU电机控制器、车身系统、底盘悬架、ADAS辅助驾驶等都极为重要。

近年来随着资本对汽车行业的密集投入,新能源汽车HiL测试工程师岗位需求量大,薪资也在不断增加,目前工程师薪资已到达20K-50K,从长远的职业规划角度来考虑HiL测试工程师是一个可持续发展的岗位。大家可以一起交流学习新能源汽车相关知识。

一篇文章带你了解新能源汽车电池管理系统BMS 硬件在环(HiL)仿真测试相关推荐

  1. 一篇文章带你了解新能源汽车整车控制器VCU 硬件在环(HiL)仿真测试方案

    1.HiL的定义: HiL(Hardware-in-the-Loop)硬件在环是计算机专业术语,也即是硬件在回路.通过使用"硬件在环"(HiL) ,可以显著降低开发时间和成本.在过 ...

  2. 新能源汽车电池管理系统BMS电控开发测试实验室方案

    方案简介 动力电池技术是新能源汽车核心"三电"技术之一,电池管理系统(BMS)的功能和性能直接影响着整车的行车安全和动力性能.电池BMS仿真实验室配备电池管理系统开发台和整套HiL ...

  3. WAF是什么?一篇文章带你全面了解WAF

    WAF是什么?一篇文章带你全面了解WAF 文章目录 WAF是什么?一篇文章带你全面了解WAF WAF是什么? 一.WAF的工作原理 二.WAF的分类 三.WAF的特点 四.如何选择和部署WAF WAF ...

  4. 一篇文章带你了解大数据生态圈---大数据组件图谱

    小编一篇文章带你了解大数据生态圈-大数据组件图谱 转载地址:http://blog.csdn.net/u010039929/article/details/70157376 文章目录 小编一篇文章带你 ...

  5. 一篇文章带你了解Flannel

    from: http://dockone.io/article/618 DockOne技术分享(十八):一篇文章带你了解Flannel [编者的话]Flannel是 CoreOS 团队针对 Kuber ...

  6. 一篇文章带你详解 TCP/IP 协议(下)

    前面的第一二三章已在上篇讲解,还没看过的可以先看看:一篇文章带你详解 TCP/IP 协议(上) 本文继续讲解第四章. 四.网络层中的 IP 协议 IP(IPv4.IPv6)相当于 OSI 参考模型中的 ...

  7. 一篇文章带你详解 HTTP 协议(下)

    文章目录,方便阅读: 一.概述(已讲) 二.HTTP 工作过程(已讲) 三.HTTP 协议基础(已讲) 四.HTTP 协议报文结构(已讲) 五.HTTP 报文首部之请求行.状态行(已讲) 六.HTTP ...

  8. 一篇文章带你快速理解JVM运行时数据区 、程序计数器详解 (手画详图)值得收藏!!!

    受多种情况的影响,又开始看JVM 方面的知识. 1.Java 实在过于内卷,没法不往深了学. 2.面试题问的多,被迫学习. 3.纯粹的好奇. 很喜欢一句话:"八小时内谋生活,八小时外谋发展. ...

  9. java 不重启部署_一篇文章带你搞定SpringBoot不重启项目实现修改静态资源

    一.通过配置文件控制静态资源的热部署 在配置文件 application.properties 中添加: #表示从这个默认不触发重启的目录中除去static目录 spring.devtools.res ...

最新文章

  1. poj2155(二维树状数组)
  2. 机洗内裤容易得暗病?这个锅我们袜子不背!
  3. Go get 下载的包在哪里?
  4. mysql my.cnf 配置建议
  5. hadoop记录topk
  6. 掌握 Linux 调试技术
  7. 吴恩达机器学习 逻辑回归 作业2(芯片预测) Python实现 代码详细解释
  8. bootstrap4 左侧导航栏 优秀 大气_Bootstrap4从入门到精通视频教程
  9. 樊登读书赋能读后感_一场人均4万元的知识盛宴,樊登直播首秀到底讲了什么?...
  10. oracle odi 目标数据存储: 临时目标数据存储未与连接关联,ODI知识模块--IKM Oracle Incremental Update...
  11. Mac下如何修改IDEA的背景颜色
  12. 微软同步工具之synctoy
  13. iOS AVCaptureDevice介绍
  14. 现有16张牌:红桃A、Q、4;黑桃J、8、4、2、7、3;草花K、Q、5、4、6;方块A、5.抽出其中一张告诉甲点数,告诉乙花色。甲说,我不知道这张牌,乙说,我知道你不知道
  15. 重学 statistics, Cha10 Inference About Means and Proportions with Two Populations
  16. C#控件的事件(鼠标单击等)没反应?
  17. 易捷行云EasyStack携手北联国芯,共筑鲲鹏生态
  18. 容器亲和、反亲和、污点、容忍以及驱逐的介绍
  19. 手游平台搭建技术对接文档
  20. Fastjson1.2.47反序列化漏洞复现

热门文章

  1. 如何区分SEO、SEM和网站优化
  2. Android中的sdio配置备忘
  3. 开关磁阻电机控制仿真 开关磁阻电机传统控制:电流斩波控制、电压PWM控制、角度位置控制
  4. 数据结构——线性表知识思维导图
  5. 5个Excel快速查找,解决删除重复值技巧
  6. 2年工作经验的Java程序员面试经历
  7. 模板技术-freemarker与velocity
  8. Bytebase数据库 Schema 变更管理工具
  9. Anaconda3安装pytorch未添加环境变量如何运行xxx.sh脚本
  10. 在职读研是理想还是情怀?你想要的都将在社科大能源管理硕士项目实现