电池管理系统标准DBC接口自动化测试系统及方法与流程

文档序号:12061707阅读:2526来源:国知局
电池管理系统标准DBC接口自动化测试系统及方法与流程

本发明涉及BMS系统测试技术领域,特别涉及一种电池管理系统标准DBC接口自动化测试系统及方法。



背景技术:

随着新能源电动汽车的迅速发展,电动汽车所使用的的电池材料的不稳定性以及电动汽车动力电池续航里程短、使用寿命短的问题受到了消费者的日益关注。为了保证电动汽车电池使用的稳定性、提高电池的续航里程以及使用寿命,目前的商用电池一般需要配备电池管理系统(Battery Managenemt System,BMS),而在实际应用过程中,需要对BMS的功能及性能进行测试,以确保BMS可以投入使用。

但是随着BMS越来越多的被应用在新能源汽车领域,而各个整车厂家对BMS技术协议的要求不一致,导致BMS的测试接口无法统一。现有技术中一般是通过人工测试或者借助第三方测试工具进行对BMS的功能进行测试。但是现有的BMS测试过程中存在较为明显的缺陷:一是,由于市场上BMS技术协议的版本更换频繁且没有统一的BMS技术协议规范,不同版本的BMS技术协议增加了测试人员的工作难度,因此需要投入较高的人力成本来完成测试。二是,现有的测试过程效率较低,特别是报文测试、解析的速度较慢,尤其是在BMS输入信号条件较为复杂的时候,现有的测试效率难以满足有限的工期要求。三是,由于人工测试过程中容易遗漏测试用例,导致测试覆盖率和测试结果的准确率均较低。



技术实现要素:

本发明的目的在于提供电池管理系统标准DBC接口自动化测试系统及方法,以解决现有的BMS测试效率以及准确率低的问题。

为实现以上目的,本发明采用的技术方案为:第一方面,提供一种电池管理系统标准DBC接口自动化测试系统,该系统包括:

BMS、测试执行器、模拟控制器、BMS配置文件、DBC文件库以及测试用例库;

模拟控制器与测试执行器连接以根据测试执行器发出的模拟数据控制指令产生测试信号量;

模拟控制器通过内网CAN通信与BMS连接以将产生的测试信号量发送至BMS;

BMS配置文件与BMS连接以为BMS提供BMS技术协议需求的配置信息;

BMS基于测试信号量和BMS技术协议需求的配置信息,生成CAN通信数据;

测试执行器分别与BMS、DBC文件库以及测试用例库连接以分别获取CAN通信数据、DBC文件以及调用所需的测试用例;

测试执行器根据CAN通信数据和DBC文件生成测试所需信息,并将测试所需信息与调用的测试用例的期望结果进行比较,生成测试结果。

第二方面,提供一种电池管理系统标准DBC接口自动化测试方法,该方法包括:

在测试执行器中加载当前需要的测试用例以及DBC文件;

测试执行器运行测试用例以产生模拟数据控制命令,并将产生的模拟数据控制命令发送至模拟控制器;

模拟控制器根据接收的模拟数据控制命令生成测试信号量,并输出至BMS;

BMS基于BMS配置文件提供的BMS技术协议需求的配置信息以及测试信号量,生成CAN通信数据;

测试执行器根据BMS提供的CAN通信数据和DBC文件库提供的DBC文件生成测试所需信息;

测试执行器将测试所需与测试用例的期望结果进行比较,生成测试结果。

与现有技术相比,本发明存在以下技术效果:本发明通过将不同的BMS技术协议规范转化为统一的DBC文件形式,提高了测试人员的测试效率。测试执行器通过调用测试用例库中的测试用例,并运行测试用例输出模拟信号控制命令以控制模拟控制器产生测试信号量,对BMS进行测试,整个过程实现自动化的测试,避免了人工测试过程中出现的测试用例遗漏、BMS测试条件调试复杂等问题,极大的节省了人力成本。

附图说明

图1是本发明一实施例中电池管理系统标准DBC接口自动化测试系统的结构示意图;

图2是本发明一实施例中是电池管理系统标准DBC接口自动化测试系统的应用过程示意图;

图3是本发明一实施例中电池管理系统标准DBC接口自动化测试方法的流程示意图。

具体实施方式

下面结合图1至图3所示,对本发明做进一步详细叙述。

如图1所示,本实施例公开了一种电池管理系统标准DBC接口自动化测试系统,该系统包括:

BMS10、测试执行器20、模拟控制器30、BMS配置文件40、DBC文件库50以及测试用例库60;

模拟控制器30与测试执行器20连接以根据测试执行器30发出的模拟数据控制指令产生测试信号量;

模拟控制器30通过内网CAN通信与BMS10连接以将产生的测试信号量发送至BMS10;

BMS配置文件40与BMS10连接以为BMS10提供BMS技术协议需求的配置信息;

BMS10基于测试信号量和BMS技术协议需求的配置信息,生成CAN通信数据;

测试执行器20分别与BMS10、DBC文件库50以及测试用例库60连接以分别获取CAN通信数据、DBC文件以及调用所需的测试用例;

测试执行器20根据BMS的CAN通信数据和DBC文件生成测试所需信息,并将测试所需信息与调用的测试用例的期望结果进行比较,生成测试结果。

需要说明的是,本实施例中的系统是基于Vector定义的标准CAN DBC文件,在系统运行时,标准CAN DBC文件可用于将CAN通信数据转化为DBC形式的测试信息。测试人员可以利用统一的测试接口进行测试工作,减少人为的协议解析、功能实现的判断工作,提高了测试效率。

具体地,DBC文件库50包括:内网标准DBC文件、充电机DBC文件以及整车DBC文件。

需要说明的是,内网标准DBC文件以及内网通信CAN数据可以提供BMS10所有的状态信息,无需根据BMS技术协议的变更,即可供测试用例执行使用;充电机DBC文件可以提供充电CAN通信数据对应的解析文件;整车DBC文件可以提供整车CAN通信数据对应的解析文件。

如图2所示,本实施例中的基于标准的CAN DBC的BMS系统自动化测试方系统的应用流程如下:

(1)根据BMS配置文件40和技术协议修改需要修改测试用例库60中部分的测试用例;

(2)搭建BMS运行平台,即通过CAN通信连接BMS与模拟控制器;

(3)在测试执行器中加载本次测试需要的测试用例及DBC文件;

(4)测试执行器20运行测试用例,输出模拟数据控制命令修改模拟控制器30的模拟数据,使测试用例条件满足;

(5)模拟控制器30根据模拟信号控制命令产生测试信号量,输出至BMS10,BMS10根据BMS技术协议及配置信息生成CAN通信数据;

(6)测试执行器20根据CAN通信数据和DBC文件生成测试所需信息,并将测试所需信息与测试用例期望结果对比,确认测试是否通过;

(7)重复步骤(4)直到测试用例库60中的测试用例全部被调用完;

(8)查看及分析测试结果;如果有问题,对BMS10进行修改后直接从步骤(4)开始运行即可。

如图3所示,本实施例公开了一种电池管理系统标准DBC接口自动化测试方法,该方法包括如下步骤S1至S7:

S1、测试执行器20加载当前需要的测试用例以及DBC文件;

具体地,测试执行器20从测试用例库60中根据实际情况调用所需的测试用例并加载。

S2、测试执行器20运行测试用例以产生模拟数据控制命令,并将产生的模拟数据控制命令发送至模拟控制器30;

S3、模拟控制器30根据接收的模拟数据控制命令生成测试信号量,并输出至BMS10;

需要说明的是,产生的测试信号量包括电池电压、温度、电流等所有对BMS系统输入的信号量。

S4、BMS10基于BMS配置文件40及BMS技术协议提供的信息,生成CAN通信数据;

需要说明的是,BMS技术协议需求的配置信息包括电池电压/温度报警参数、BMS系统配置参数以及高压系统配置参数等。

S5、测试执行器20根据BMS10提供的CAN通信数据和DBC文件库50提供的DBC文件生成测试所需信息;

S6、测试执行器(20)将测试所需信息与测试用例的期望结果进行比较,生成测试结果。

需要说明的是,本实施例提供的方法是基于Vector定义的标准CAN DBC文件,标准CAN DBC文件可用于将CAN通信数据转化为DBC形式的测试信息。

具体地,在步骤S1之前,还包括如下步骤:

根据BMS配置文件40和BMS技术协议对测试用例库60中的测试用例进行修改。

通过对测试用例库60中的测试用例进行修改,测试用例库60中的测试用例满足当前BMS测试的需求,提高了测试的准确率。进一步的,本实施例中在BMS配置文件40中的配置信息满足修改测试用例的需要时,仅通过BMS配置文件40对测试用例进行修改,而无需通过修改程序。在BMS配置文件40无法满足修改测试用例的需要时,结合BMS技术协议一起对测试用例进行修改。

具体地,上述的步骤S5中DBC文件库50提供的DBC文件包括:内网标准DBC文件、充电机DBC文件以及整车DBC文件。

这里需要说明的是,内网标准DBC文件结合CAN通信数据可以提供BMS系统所有的状态信息,无须根据技术协议变更,即可供测试用例执行使用。充电机DBC文件是与BMS技术协议定义的充电CAN通信数据对应的解析文件。整车DBC文件是与BMS技术协议定义的整车CAN通信数据对应的解析文件。

具体地,在步骤S7之后,还包括如下步骤:

测试执行器20判断测试用例库60中的测试用例是否全部调用完;

如果是,则测试过程结束;

如果否,则重新执行步骤S2。

需要说明的是,在该过程中,测试执行器20逐一的从测试用例库60中调用测试用例并运行调用的测试用例,当测试执行器20将测试用例库60中的测试用例全部调用之后,则整个测试过程结束。该过程保证了测试的覆盖率,避免了人工调用测试用例出现的测试用例遗漏的现象,提高了测试的准确率。

具体地,在步骤S7之后还包括如下步骤:

测试执行器20判断测试结果是否正确,如果不正确,则对BMS10进行修改后执行步骤S2。

还需要说明的是,本实施例在测试结束后,根据测试结果生成测试报告。

需要说明的是,以对电池电压进行测试为例,测试执行器20调用的测试用例对电池电压进行测试,测试执行器20运行测试用例,输出模拟信号控制命令以控制模拟控制器30输出的测试电池电压为3.81V,测试执行器20根据充电机DBC文件和CAN通信数据解析得到测试所需信息,测试执行器20根据测试所需信息判断有无进行电压过高报警,如果进行报警,则和测试用例的期望结果一致,则测试结果正确;如果不进行报警,则说明与测试用例的期望结果不相符,则测试结果不正确。

本实施例公开的方法通过采用测试用例驱动模拟控制器产生测试信号量,测试执行器利用DBC文件解析BMS中产生的CAN通信数据,来作为测试判断的依据进行测试。整个过程是由BMS、测试执行器、模拟控制器、DBC文件以及测试用例组成的在环自动测试方法。与传统的人工测试相比,提高了测试效率,降低了人力成本,通过复用测试用例,提高了测试覆盖率并且降低了Bug的遗漏率。

以上所述仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1