一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

车辆功能单元测试方法、装置、电子设备及存储介质与流程

2022-02-26 00:13:46 来源:中国专利 TAG:


1.本技术涉及通信技术领域,尤其涉及一种车辆功能单元测试方法、装置、电子设备及存储介质。


背景技术:

2.控制器局域网络(controller area network, can)通信是目前汽车电子行业中最常用的网络通信方式,车辆中设置的各种功能单元通过can网络实现与车辆电子控制单元(electronic control unit,ecu)之间的信号交互。随着汽车电子电器化和智能化程度的不断加深,车内can通信网络中的节点数量和ecu节点间交互的信号数量也不断增加。
3.在车辆的设计阶段,车辆上所设置的各类功能单元需要进行的系统的测试,以保证各类功能单元的实际性能够满足设计要求,在此项测试过程中,需要功能单元与ecu之间基于can网络进行信息交互。由于各类功能单元的功能存在巨大差异,因此,现有技术中,需要为该功能单元手工编写对应的嵌入式代码,来实现功能单元输出与ecu之间的信号的编解码,从而实现功能单元与ecu之间的信息传输。
4.然而,在实际的测试过程中,由于待测功能单元的数量庞大,现有技术中通过手工编写嵌入式代码的方式,导致了测试效率低、测试准确性差等问题。


技术实现要素:

5.本技术提供一种车辆功能单元测试方法、装置、电子设备及存储介质,用以解决车辆的功能单元测试过程中由于需要单独开发信号编解码代码而导致的测试效率低的问题。
6.第一方面,本技术提供了一种车辆功能单元测试方法,包括:获取第一测试信息,所述第一测试信息用于指示目标车辆的待测功能单元;根据所述第一测试信息,获取控制器局域网络数据库文件,其中,所述控制器局域网络数据库文件用于表征所述目标车辆的控制器局域网络中,目标网络节点对应的通信规则,所述目标网络节点为所述待测功能单元对应的网络节点;基于所述控制器局域网络数据库文件,对控制器局域网络总线数据进行解码,生成目标数据,并根据所述目标数据得到所述待测功能单元的功能测试结果,其中,所述控制器局域网络总线数据是所述目标网络节点通过所述控制器局域网络发送的数据,所述目标数据表征所述待测功能单元的功能数据。
7.在一种可能的实现方式中,基于所述控制器局域网络数据库文件,对控制器局域网络总线数据进行解码,生成目标数据,包括:根据所述控制器局域网络数据库文件,生成转换代码文件,其中,所述转换代码文件用于将所述控制器局域网络总线数据转换为目标数据;运行所述转换代码文件,生成所述控制器局域网络总线数据对应的目标数据。
8.在一种可能的实现方式中,所述控制器局域网络数据库文件中包括报文信息,所述报文信息表征所述控制器局域网络总线数据的数据结构;所述根据所述控制器局域网络数据库文件,生成转换代码文件,包括:根据所述报文信息,确定所述控制器局域网络总线数据中的信号字段,所述信号字段用于承载所述测功能单元的功能数据;针对所述信号字
段的信号信息,确定转换信息,所述转换信息用于表征对所述信号字段进行转换的规则;根据所述转换信息,生成对应的转换代码文件。
9.在一种可能的实现方式中,所述控制器局域网络总线数据中还包括参数字段信息,所述参数字段信息表征发送所述控制器局域网络总线数据的目标网络节点标识。
10.在一种可能的实现方式中,所述转换代码文件包括声明文件和定义文件,所述声明文件表征解析函数的调用方法,所述定义文件表征解析函数的实现方法;运行所述转换代码文件,生成所述控制器局域网络总线数据对应的目标数据,包括:基于所述声明文件,调用解析函数,所述解析函数表征所述控制器局域网络总线数据与所述目标数据的映射关系;基于所述定义文件,执行所述解析函数的定义,将所述控制器局域网络总线数据转化为所述目标数据。
11.在一种可能的实现方式中,所述控制器局域网络总线数据中包括信号字段,所述信号字段用于承载所述待测功能单元的功能数据,所述解析函数的定义包括对所述信号字段进行转换的规则,所述基于所述定义文件,执行所述解析函数的定义,将所述控制器局域网络总线数据转化为所述目标数据,包括:基于所述解析函数的定义,提取所述信号字段的多个子字段的字段值,并对各所述子字段的字段值进行转换,生成各所述子字段对应的解析数据;对各所述解析数据进行组合,生成所述目标数据。
12.在一种可能的实现方式中,根据所述目标数据得到所述待测功能单元的功能测试结果,包括:确定所述目标数据对应的目标应用;基于所述目标数据运行所述目标应用,得到所述待测功能单元的功能测试结果。
13.在一种可能的实现方式中,所述目标数据中包括信号名称标识;确定所述目标数据对应的目标应用,包括:根据预设的映射关系,确定所述信号名称标识对应的目标应用。
14.在一种可能的实现方式中,所述根据所述第一测试信息,获取控制器局域网络数据库文件,包括:根据所述第一测试信息,获得数据格式信息,所述数据格式信息表征运行目标应用所需的所述待测功能单元的功能数据的数据格式;根据所述数据格式信息,生成所述控制器局域网络数据库文件。
15.第二方面,本技术提供了一种车辆功能单元测试装置,包括:第一获取模块,用于获取第一测试信息,所述第一测试信息用于指示目标车辆的待测功能单元;第二获取模块,用于根据所述第一测试信息,获取控制器局域网络数据库文件,其中,所述控制器局域网络数据库文件用于表征所述目标车辆的控制器局域网络中,目标网络节点对应的通信规则,所述目标网络节点为所述待测功能单元对应的网络节点;编解码模块,用于基于所述控制器局域网络数据库文件,对控制器局域网络总线数据进行解码,生成目标数据,并根据所述目标数据得到所述待测功能单元的功能测试结果,其中,所述控制器局域网络总线数据是所述目标网络节点通过所述控制器局域网络发送的数据,所述目标数据表征所述待测功能单元的功能数据。
16.在一种可能的实现方式中,所述编解码模块在基于所述控制器局域网络数据库文件,对控制器局域网络总线数据进行解码,生成目标数据时,具体用于:根据所述控制器局域网络数据库文件,生成转换代码文件,其中,所述转换代码文件用于将所述控制器局域网络总线数据转换为目标数据;运行所述转换代码文件,生成所述控制器局域网络总线数据
对应的目标数据。
17.在一种可能的实现方式中,所述控制器局域网络数据库文件中包括报文信息,所述报文信息表征所述控制器局域网络总线数据的数据结构;所述编解码模块在根据所述控制器局域网络数据库文件,生成转换代码文件时,具体用于:根据所述报文信息,确定所述控制器局域网络总线数据中的信号字段,所述信号字段用于承载所述测功能单元的功能数据;针对所述信号字段的信号信息,确定转换信息,所述转换信息用于表征对所述信号字段进行转换的规则;根据所述转换信息,生成对应的转换代码文件。
18.在一种可能的实现方式中,所述控制器局域网络总线数据中还包括参数字段信息,所述参数字段信息表征发送所述控制器局域网络总线数据的目标网络节点标识。
19.在一种可能的实现方式中,所述转换代码文件包括声明文件和定义文件,所述声明文件表征解析函数的调用方法,所述定义文件表征解析函数的实现方法;所述编解码模块在运行所述转换代码文件,生成所述控制器局域网络总线数据对应的目标数据时,具体用于:基于所述声明文件,调用解析函数,所述解析函数表征所述控制器局域网络总线数据与所述目标数据的映射关系;基于所述定义文件,执行所述解析函数的定义,将所述控制器局域网络总线数据转化为所述目标数据。
20.在一种可能的实现方式中,所述控制器局域网络总线数据中包括信号字段,所述信号字段用于承载所述待测功能单元的功能数据,所述解析函数的定义包括对所述信号字段进行转换的规则,所述编解码模块在基于所述定义文件,执行所述解析函数的定义,将所述控制器局域网络总线数据转化为所述目标数据时,具体用于:基于所述解析函数的定义,提取所述信号字段的多个子字段的字段值,并对各所述子字段的字段值进行转换,生成各所述子字段对应的解析数据;对各所述解析数据进行组合,生成所述目标数据。
21.在一种可能的实现方式中,所述编解码模块在根据所述目标数据得到所述待测功能单元的功能测试结果时,具体用于:确定所述目标数据对应的目标应用;基于所述目标数据运行所述目标应用,得到所述待测功能单元的功能测试结果。
22.在一种可能的实现方式中,所述目标数据中包括信号名称标识;所述编解码模块在确定所述目标数据对应的目标应用时,具体用于:根据预设的映射关系,确定所述信号名称标识对应的目标应用。
23.在一种可能的实现方式中,所述第二获取模块,具体用于:根据所述第一测试信息,获得数据格式信息,所述数据格式信息表征运行目标应用所需的所述待测功能单元的功能数据的数据格式;根据所述数据格式信息,生成所述控制器局域网络数据库文件。
24.第三方面,本技术提供了一种电子设备,包括:处理器,以及与所述处理器通信连接的存储器;所述存储器存储计算机执行指令;所述处理器执行所述存储器存储的计算机执行指令,以实现如本技术实施例第一方面任一项所述的车辆功能单元测试方法。
25.第四方面,本技术提供了一种计算机可读存储介质,所述计算机可读存储介质中存储有计算机执行指令,所述计算机执行指令被处理器执行时用于实现如本技术实施例第一方面任一项所述的车辆功能单元测试方法。
26.根据本技术实施例的第五方面,本技术提供了一种计算机程序产品,包括计算机
程序,该计算机程序被处理器执行时实现如上第一方面任一项所述的车辆功能单元测试方法。
27.本技术提供的车辆功能单元测试方法、装置、电子设备及存储介质,通过获取第一测试信息,所述第一测试信息用于指示目标车辆的待测功能单元;根据所述第一测试信息,获取控制器局域网络数据库文件,其中,所述控制器局域网络数据库文件用于表征所述目标车辆的控制器局域网络中,目标网络节点对应的通信规则,所述目标网络节点为所述待测功能单元对应的网络节点;基于所述控制器局域网络数据库文件,对控制器局域网络总线数据进行解码,生成目标数据,并根据所述目标数据得到所述待测功能单元的功能测试结果,其中,所述控制器局域网络总线数据是所述目标网络节点通过所述控制器局域网络发送的数据,所述目标数据表征所述待测功能单元的功能数据。由于通过第一测试指令获取对应的控制器局域网络数据库文件,并基于控制器局域网络数据库文件完成对待测功能单元的测试过程,避免了针对待测功能单元手段编写嵌入式代码造成的耗时问题,提高了测试效率和测试准确性。
附图说明
28.此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本技术的实施例,并与说明书一起用于解释本技术的原理。
29.图1为本技术实施例提供的车辆功能单元测试的一种应用场景图;图2为本技术一个实施例提供的车辆功能单元测试方法的流程图;图3为图2所示实施例中步骤s102的具体实现步骤示意图;图4为根据目标数据得到待测功能单元的功能测试结果的具体实现步骤示意图;图5为本技术另一个实施例提供的车辆功能单元测试方法的流程图;图6为图5所示实施例中步骤s203的具体实现步骤示意图;图7为本技术实施例提供的一种报文信息的示意图;图8为图5所示实施例中步骤s204的具体实现步骤示意图;图9为本技术一个实施例提供的车辆功能单元测试的结构示意图;图10为本技术一个实施例提供的电子设备的示意图;图11是本技术一个示例性实施例示出的一种终端设备的框图。
30.通过上述附图,已示出本技术明确的实施例,后文中将有更详细的描述。这些附图和文字描述并不是为了通过任何方式限制本技术构思的范围,而是通过参考特定实施例为本领域技术人员说明本技术的概念。
具体实施方式
31.这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本技术相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本技术的一些方面相一致的装置和方法的例子。
32.首先对本技术所涉及的名词进行解释:控制器局域网络数据库文件:即database can文件(简称dbc文件),dbc文件是用
来描述can网络节点间数据通讯的一种文件,包含了can总线协议中协议数据及其所代表的具体意义,具体而言,dbc文件描述了在can网络上有哪些报文,这些报文上又携带了何种信息;以及该报文的发出节点、接收节点等信息,can网络的通讯就是依据dbc文件的描述进行的。
33.下面对本技术实施例的应用场景进行解释:图1为本技术实施例提供的车辆功能单元测试的一种应用场景图,本技术实施例提供的车辆功能单元测试可以应用于车辆的功能单元的选型测试、模块测试、系统测试等场景下,示例性地,如图1所示,本技术实施例提供的方法的执行主体可以为设置于目标车辆内的车机设备,车机设备一方面通过车机系统内的can网络,与车辆上设置的功能单元通信连接,其中,更具体地,功能单元例如为车辆上设置的图像传感器、激光雷达传感器、触摸显示屏等。另一方面,车机设备与终端设备通信连接,并通过有线或无线通信的方式,与终端设备进行数据交互,更具体地,车机设备可以接收终端设备发送的测试指令并进行响应,获取待测功能单元对应的目标数据进行测试,生成测试结果,并将测试结果发生会终端设备,使终端设备一侧的测试人员能够经通过输入用于指示待测功能单元的测试指令,即可完成针对待测功能单元的测试,并获得测试结果。
34.当前,在车辆的设计阶段,车辆上所设置的各类功能单元需要进行的系统的测试,以保证各类功能单元的实际性能够满足设计要求,在此项测试过程中,需要功能单元与ecu之间基于can网络进行信息交互。由于各类功能单元的功能和发送的报文中的内容在巨大差异,例如发送节点、接收节点、报文长度以及报文中具体的信息内容均可能不相同,因此,需要对各功能单元所发送的报文设置独立的编解码程序,从而实现信息的有效传递。现有技术中,需要为该功能单元手工编写对应的嵌入式代码,来实现功能单元输出与ecu之间的信号的编解码,从而实现功能单元与ecu之间的信息传输。然而,在实际的测试过程中,由于待测功能单元的数量庞大,现有技术中通过手工编写嵌入式代码的方式,导致了测试效率低、测试准确性差等问题。
35.下面以具体地实施例对本技术的技术方案以及本技术的技术方案如何解决上述技术问题进行详细说明。下面这几个具体的实施例可以相互结合,对于相同或相似的概念或过程可能在某些实施例中不再赘述。下面将结合附图,对本技术的实施例进行描述。
36.图2为本技术一个实施例提供的车辆功能单元测试方法的流程图,如图2所示,本实施例提供的车辆功能单元测试方法的执行主体可以为ecu、车机设备或者车辆,示例性地,本实施例以车机设备作为本实施例方法的执行主体进行说明,本实施例方法包括以下几个步骤:步骤s101,获取第一测试信息,第一测试信息用于指示目标车辆的待测功能单元。
37.示例性地,第一测试信息是对车辆内设置的待测功能单元进行测试时的参数信息,即通过第一测试信息可以确定目标车辆的待测功能单元,例如图像传感器、激光雷达传感器、触摸显示屏等通过can网络进行控制的功能单元。其中,在一种可能的实现方式中,第一测试信息可以是测试人员通过目标车辆上设置的交互界面输入的信息,例如测试人员通过车机系统的测试功能界面,点选预设的测试列表中的测试项,每一测试项对应一个待测功能单元,从而使车机设备获得第一测试信息。在另一种可能的实现方式中,参考图1所示的应用场景图,车机设备与终端设备通信连接,测试人员通过终端设备向车机设备发送包
括第一测试信息的测试指令,从而使测试设备获得该第一测试信息,并基于第一测试信息所指示的待测功能单元,对其进行后续的测试步骤。
38.步骤s102,根据第一测试信息,获取控制器局域网络数据库文件,其中,控制器局域网络数据库文件用于表征目标车辆的控制器局域网络中,目标网络节点对应的通信规则,目标网络节点为待测功能单元对应的网络节点。
39.示例性地,控制器局域网络数据库文件(即database can文件,以下简称dbc文件)是一种标准的控制器局域网络(即controller area network,以下简称can)数据库文件,这里面定义了完整的can通信网络的信息,且这些信息均按照规范的格式呈现在文件中。对于开发can通信的解包/组包部分的代码,所需要的信息均可以通过dbc来获取。在本实施例中,dbc文件用于描述can网络中,待测功能单元对应的目标网络节点的通信规则,例如该目标网络节点发送的报文标识、报文长度以及接收该报文的网络节点等。dbc文件具有预设的格式和语法规则,通过dbc文件中的预设关键字、符合等内容,可以实现对通信规则的表达,dbc文件的具体原理及格式方式为本领域技术人员所知晓的现有技术,此处不再赘述。
40.进一步地,目标车辆中设置不同的待测功能单元,对应使用不同的dbc文件,也即,当待测功能单元不同时,can网络所使用的dbc文件也会随之变化。在一种可能的实现方式中,目标车辆的待测功能单元与目标网络节点具有一一对应关系,因此,基于第一测试信息所指示的待测功能单元,可以确定一个对应的目标网络节点,进而确定一个与包括该目标网络节点的can网络对应的dbc文件,其中,dbc文件可以是预存在车机设备本地的,通过待测功能单元的标识与dbc文件标识之间预设的映射关系,可以从车机设备本地获取第一测试信息对应的dbc文件。具体地,例如,当第一测试信息为a时,指示的待测功能单元为图像传感器#01,此时,根据待测功能单元的标识dbc文件标识之间预设的映射关系,确定dbc文件为dbc_001;当第一测试信息为b时,指示的待测功能单元为激光传感器#03,此时,根据待测功能单元的标识dbc文件标识之间预设的映射关系,确定dbc文件为dbc_005。
41.在另一种可能的实现方式中,dbc文件不预存在车机设备本地,而是车机设备在获得第一测试信息后,基于具体的第一测试信息生成的。示例性地,如图3所示,步骤s102的具体实现步骤包括:步骤s1021,根据第一测试信息,获得数据格式信息,数据格式信息表征运行目标应用所需的待测功能单元的功能数据的数据格式。
42.步骤s1022,根据数据格式信息,生成dbc文件。
43.示例性地,对于第一测试信息所指示的待测功能单元,其通过can网络发送的数据,在经过解码后,被对应的上层应用(目标应用)获得并进行处理,从而实现对应的功能,其中,被目标应用使用的数据,即为功能数据。也即,待测功能单元所发送的数据中的功能数据,是根据需要(即目标应用)确定的,对于同一个待测功能单元,当对应的目标应用不同时,待测功能单元发送的功能数据的数据格式可能不同,因此确定解析该功能数据的规则的dbc文件,也不同。例如,对于同一个待测试单元a,当对应目标应用app1时,待测试单元a发送的报文中包括{a、b、c}三个数值,当对应目标应用app2时,待测试单元a发送的报文中包括{a、b}两个数值。因此,示例性地,根据第一测试信息,可以通过映射关系得到一种表征运行目标应用所需的功能数据的数据格式的信息,即数据格式信息,进而根据数据格式信息,以及dbc文件的预设的格式和语法规则,生成能够解析此数据类型的功能数据(即数据
格式信息对应的功能数据)的dbc文件。
44.本实施例中,通过第一测试信息以及使用待测功能单元的功能数据目标应用,获得匹配的数据格式信息,进而基于数据格式信息生成dbc文件,由于生成的dbc文件考虑到了功能数据的实际消费方式,即目标应用的特征,因此可以保证在后续基于目标应用进行测试时,得到的测试结果的准确性,实现基于待测功能单元基于目标应用的精准测试。
45.步骤s103,基于dbc文件,对can总线数据进行解码,生成目标数据,并根据目标数据得到待测功能单元的功能测试结果,其中,can总线数据是目标网络节点通过can发送的数据,目标数据表征待测功能单元的功能数据。
46.示例性地,待测功能单元对应的网络节点通过can网络向车机设备发送的数据,为can总线数据,车机设备在获得can总线数据后,根据dbc文件所表征的通信规则,对can总线数据进行解码,从而获得解压后的,能够表征待测功能单元的功能数据的目标数据。进而,对目标数据进行测试,得到目标结果。其中,dbc文件所表征的通信规则,需要通过程序实现,因此,可以基于dbc文件的格式以及具体的can网络通信协议,将dbc文件自动转化为能够实现该通信规则的程序代码,来实现对can总线数据的处理。
47.在一种可能的实现方式中,如图4所示,根据目标数据得到待测功能单元的功能测试结果的实现方式包括:步骤s1031,确定目标数据对应的目标应用。
48.步骤s1032,基于目标数据运行目标应用,得到待测功能单元的功能测试结果。
49.示例性地,目标应用时用于消费待测功能单元输出的功能数据的程序,目标应用输出的结果是否正确,决定了待测试功能单元的性能、兼容性是否与目标车辆匹配。因此,根据目标应用对目标数据进行处理,得到目标应用的运行结果,即待测功能单元的功能测试结果。具体地,例如,目标数据表征的功能数据为图像传感器数据,目标应用为障碍物检测的应用。目标应用根据目标数据进行处理后,基于内置的障碍物检测算法进行运行,从而得到一个检测结果,例如障碍物的平面轮廓坐标或三维空间坐标,此时,功能测试结果为正常,即待测试功能单元能正常工作。反之,若目标应用报错,或者检测结果为未检测到障碍物,则功能测试结果为异常,即待测试功能单元不能正常工作。其中,在一种可能的实现方式中,目标数据中包括信号名称标识,信号名称标识表征功能数据的内容,因此信号名称标识与消费功能数据的目标应用具有对应关系。示例性地,确定目标数据对应的目标应用的具体方式包括:根据预设的映射关系,确定信号名称标识对应的目标应用。
50.本实施例提供的方式,是应用于车辆的功能单元测试的场景下,更具体地,例如选型测试的场景下。因此,对于待测试功能单元是否能够通过测试,取决于该待测试功能是否能够与车机设备、ecu等之间通过can网络通信,还取决于待测试功能单元输出的数据在被解析后,能否满足具体的目标应用的要求,而得到一个理想的结果。本实施例提供的方法,在对can总线数据进行解码,生成目标数据后,再基于对应的目标应用对其进行测试,从而获得待测功能单元的功能测试结果,实现了对待测功能单元的全流程自动化测试,大幅提高了在车辆的功能单元在选型测试、系统测试场景下,对功能单元进行测试的效率和准确性。
51.本实施例中,通过获取第一测试信息,第一测试信息用于指示目标车辆的待测功能单元;根据第一测试信息,获取dbc文件,其中,dbc文件用于表征目标车辆的can网络中,
目标网络节点对应的通信规则,目标网络节点为待测功能单元对应的网络节点;基于dbc文件,对can总线数据进行解码,生成目标数据,并根据目标数据得到待测功能单元的功能测试结果,其中,can总线数据是目标网络节点通过can网络发送的数据,目标数据表征待测功能单元的功能数据。由于通过第一测试指令获取对应的dbc文件,并基于dbc文件完成对待测功能单元的测试过程,避免了针对待测功能单元手段编写嵌入式代码造成的耗时问题,提高了测试效率和测试准确性。
52.图5为本技术另一个实施例提供的车辆功能单元测试方法的流程图,如图5所示,本实施例提供的车辆功能单元测试方法在图2所示实施例提供的车辆功能单元测试方法的基础上,对步骤s103进一步细化,则本实施例提供的车辆功能单元测试方法包括以下几个步骤:步骤s201,获取第一测试信息,第一测试信息用于指示目标车辆的待测功能单元。
53.步骤s202,根据第一测试信息,获取dbc文件,其中,dbc文件用于表征目标车辆的can网络中,目标网络节点对应的通信规则,目标网络节点为待测功能单元对应的网络节点。
54.步骤s203,根据dbc文件,生成转换代码文件,其中,转换代码文件用于将can总线数据转换为目标数据。
55.示例性地,目标网络节点发送或接收的can总线数据,需要进行编/解码后,才能实现信息的交互,对can总线数据进行编/解码的过程,需要通过对dbc文件进行解析,并提取其中的信息转换为代码脚本后,通过执行代码脚本实现。其中,承载代码脚本的即转换代码文件。通过执行转换代码文件,可以将can总线数据解析为目标数据。
56.示例性地,dbc文件中包括报文信息,报文信息表征can总线数据的数据结构,如图6所示,步骤s203的具体实现步骤包括:步骤s2031,根据报文信息,确定can总线数据中的信号字段,信号字段用于承载测功能单元的功能数据。
57.步骤s2032,针对信号字段的信号信息,确定转换信息,转换信息用于表征对信号字段进行转换的规则。
58.步骤s2033,根据转换信息,生成对应的转换代码文件。
59.示例性地,报文信息是表征can总线数据的数据结构的信息,其中,can总线数据的具体实现形式可以包括报文,报文中包括信号字段和参考字段,其中,信号字段承载测功能单元的功能数据。而参考字段用于承载表征报文发送、接收、解析时所需的参数。其中,可选地,参数字段中包括表征发送can总线数据的目标网络节点标识,即发送节点。通过目标网络节点标识,可以使车机设备确定发送该报文的目标网络节点所对应的待测试设备,从而在后续步骤中确定相应的目标应用。
60.进一步地,根据报文信息所表征的数据结构,确定can总线数据中的信号字段,针对信号字段的字段结构,确定对应的转换规则。由于不同的待测功能单元的实现功能不同,因此,不同的待测功能单元对应的目标网络节点所发送的can总线数据中,信号字段对应的字段结构也不同,该字段结构可通过dbc文件中的报文信息和报文信息中的信号信息来确定。图7为本技术实施例提供的一种报文信息的示意图, 如图7所示,报文信息中记录了can总线数据的报文id、报文名称、报文长度、发送节点,还记录了can总线数据的信号字段的信
号信息,包括:信号名称、信号复用信息、起始位、信号长度、字节序、信号数值符号类型、信号factor值、信号offset值、信号的接收节点等信息,根据上述信号信息,确定对信号字段的转换规则,即转换信息,基于预设的语法规则,生成能够实现上述转换规则的代码文件,即转换代码文件。通过编程语法实现转换规则的方法为本领域技术人员执行的现有技术,此处不再赘述。
61.步骤s204,运行转换代码文件,生成can总线数据对应的目标数据。
62.具体地,在得到转换代码文件后,通过运行转换代码文件对can总线数据(即报文)进行传输和解析,即可得到用于运行目标应用的目标数据。示例性地,转换代码文件包括声明文件和定义文件,声明文件表征解析函数的调用方法,定义文件表征解析函数的实现方法,如图8所示,步骤s204的具体实现步骤包括:步骤s2041,基于声明文件,调用解析函数,解析函数表征can总线数据与目标数据的映射关系;步骤s2042,基于定义文件,执行解析函数的定义,将can总线数据转化为目标数据。
63.具体地,声明文件例如为*.h文件,定义文件例如为*.c文件。其中,声明文件中定义了解析函数的调用方法,通过引用声明文件,可实现解析函数的调用入口;而定义文件则定义了解析函数的具体实现逻辑,通过引用定义文件,并调用解析函数,来执行解析函数具体的实现逻辑,从而将can总线数据转化为目标数据。
64.其中,在一种可能的实现方式中,can总线数据中包括信号字段,信号字段用于承载待测功能单元的功能数据,解析函数的定义包括对信号字段进行转换的规则,基于定义文件,执行解析函数的定义,将can总线数据转化为目标数据,包括:基于解析函数的定义,提取信号字段的多个子字段的字段值,并对各子字段的字段值进行转换,生成各子字段对应的解析数据;对各解析数据进行组合,生成目标数据。
65.示例性地,基于解析函数的定义所表征的对信号字段进行转换的规则,对信号字段的多个子字段的字段值进行提取和转换,得到后续用于执行目标应用的信号值,即解析数据。在通过对多个解析数据进行组合,即可生成目标数据。
66.本实施例中,通过获得的dbc文件,生成为用于将can数据转换为目标数据转换代码文件,并通过执行转换代码文件,获得目标数据,完成了对待测功能单元发送的can数据的自动转换,并生成可以直接被目标应用调用的目标数据,从而实现了针对目标应用的自动can网络数据转换,进而实现对待测功能单元的快速、准确测试,提高测试效率。
67.步骤s205,确定目标数据对应的目标应用。
68.步骤s206,基于目标数据运行目标应用,得到待测功能单元的功能测试结果。
69.本实施例中,步骤s201-步骤s202的实现方式与本技术图2所示实施例中的步骤s101-步骤s102的实现方式相同,步骤s205-步骤s206的实现方式在图2所示实施例的步骤s103中进行了详细介绍,在此不再一一赘述。
70.需要说明的是,本实施例提供的方法仅介绍了对待测功能单元发送的数据进行解码的过程,在一些情况下,还存在将车机设备发送的数据进行相应的编码,从而发送至待测功能单元的过程,其具体实现原理类似,此处不再进行赘述。
71.图9为本技术一个实施例提供的车辆功能单元测试装置的结构示意图,如图9所
示,本实施例提供的车辆功能单元测试装置3包括:第一获取模块31,用于获取第一测试信息,第一测试信息用于指示目标车辆的待测功能单元;第二获取模块32,用于根据第一测试信息,获取控制器局域网络数据库文件,其中,控制器局域网络数据库文件用于表征目标车辆的控制器局域网络中,目标网络节点对应的通信规则,目标网络节点为待测功能单元对应的网络节点;编解码模块33,用于基于控制器局域网络数据库文件,对控制器局域网络总线数据进行解码,生成目标数据,并根据目标数据得到待测功能单元的功能测试结果,其中,控制器局域网络总线数据是目标网络节点通过控制器局域网络发送的数据,目标数据表征待测功能单元的功能数据。
72.在一种可能的实现方式中,编解码模块33在基于控制器局域网络数据库文件,对控制器局域网络总线数据进行解码,生成目标数据时,具体用于:根据控制器局域网络数据库文件,生成转换代码文件,其中,转换代码文件用于将控制器局域网络总线数据转换为目标数据;运行转换代码文件,生成控制器局域网络总线数据对应的目标数据。
73.在一种可能的实现方式中,控制器局域网络数据库文件中包括报文信息,报文信息表征控制器局域网络总线数据的数据结构;编解码模块33在根据控制器局域网络数据库文件,生成转换代码文件时,具体用于:根据报文信息,确定控制器局域网络总线数据中的信号字段,信号字段用于承载测功能单元的功能数据;针对信号字段的信号信息,确定转换信息,转换信息用于表征对信号字段进行转换的规则;根据转换信息,生成对应的转换代码文件。
74.在一种可能的实现方式中,控制器局域网络总线数据中还包括参数字段信息,参数字段信息表征发送控制器局域网络总线数据的目标网络节点标识。
75.在一种可能的实现方式中,转换代码文件包括声明文件和定义文件,声明文件表征解析函数的调用方法,定义文件表征解析函数的实现方法;编解码模块33在运行转换代码文件,生成控制器局域网络总线数据对应的目标数据时,具体用于:基于声明文件,调用解析函数,解析函数表征控制器局域网络总线数据与目标数据的映射关系;基于定义文件,执行解析函数的定义,将控制器局域网络总线数据转化为目标数据。
76.在一种可能的实现方式中,控制器局域网络总线数据中包括信号字段,信号字段用于承载待测功能单元的功能数据,解析函数的定义包括对信号字段进行转换的规则,编解码模块33在基于定义文件,执行解析函数的定义,将控制器局域网络总线数据转化为目标数据时,具体用于:基于解析函数的定义,提取信号字段的多个子字段的字段值,并对各子字段的字段值进行转换,生成各子字段对应的解析数据;对各解析数据进行组合,生成目标数据。
77.在一种可能的实现方式中,编解码模块33在根据目标数据得到待测功能单元的功能测试结果时,具体用于:确定目标数据对应的目标应用;基于目标数据运行目标应用,得到待测功能单元的功能测试结果。
78.在一种可能的实现方式中,目标数据中包括信号名称标识;编解码模块33在确定目标数据对应的目标应用时,具体用于:根据预设的映射关系,确定信号名称标识对应的目标应用。
79.在一种可能的实现方式中,第二获取模块32,具体用于:根据第一测试信息,获得数据格式信息,数据格式信息表征运行目标应用所需的待测功能单元的功能数据的数据格式;根据数据格式信息,生成控制器局域网络数据库文件。
80.其中,第一获取模块31、第二获取模块32和编解码模块33依次连接。本实施例提供的车辆功能单元测试方法可以执行如图2-图8任一所示的方法实施例的技术方案,其实现原理和技术效果类似,此处不再赘述。
81.图10为本技术一个实施例提供的电子设备的示意图,如图10所示,本实施例提供的电子设备4包括:处理器41,以及与处理器41通信连接的存储器42。
82.其中,存储器42存储计算机执行指令;处理器41执行存储器42存储的计算机执行指令,以实现本技术图2-图8所对应的实施例中任一实施例提供的车辆功能单元测试方法。
83.其中,存储器41和处理器42通过总线43连接。
84.相关说明可以对应参见图2-图8所对应的实施例中的步骤所对应的相关描述和效果进行理解,此处不做过多赘述。
85.本技术一个实施例提供一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行以实现本技术图2-图8所对应的实施例中任一实施例提供的车辆功能单元测试方法。
86.其中,计算机可读存储介质可以是rom、随机存取存储器(ram)、cd-rom、磁带、软盘和光数据存储设备等。
87.本技术一个实施例提供一种计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现本技术图2-图8所对应的实施例中任一实施例提供的车辆功能单元测试方法。
88.图11是本技术一个示例性实施例示出的一种终端设备的框图,该终端设备800可以是本实施例中的车机设备,或者其他与目标车辆的can网络连接的设备,例如计算机,数字广播终端,消息收发设备,游戏控制台,平板设备,医疗设备,健身设备,个人数字助理等。
89.终端设备800可以包括以下一个或多个组件:处理组件802,存储器804,电源组件806,多媒体组件808,音频组件810,输入/输出(i/ o)接口812,传感器组件814,以及通信组件816。
90.处理组件802通常控制终端设备800的整体操作,诸如与显示,电话呼叫,数据通信,相机操作和记录操作相关联的操作。处理组件802可以包括一个或多个处理器820来执行指令,以完成上述的方法的全部或部分步骤。此外,处理组件802可以包括一个或多个模块,便于处理组件802和其他组件之间的交互。例如,处理组件802可以包括多媒体模块,以方便多媒体组件808和处理组件802之间的交互。
91.存储器804被配置为存储各种类型的数据以支持在终端设备800的操作。这些数据的示例包括用于在终端设备800上操作的任何应用程序或方法的指令,联系人数据,电话簿数据,消息,图片,视频等。存储器804可以由任何类型的易失性或非易失性存储设备或者它们的组合实现,如静态随机存取存储器(sram),电可擦除可编程只读存储器(eeprom),可擦除可编程只读存储器(eprom),可编程只读存储器(prom),只读存储器(rom),磁存储器,快闪存储器,磁盘或光盘。
92.电源组件806为终端设备800的各种组件提供电力。电源组件806可以包括电源管理系统,一个或多个电源,及其他与为终端设备800生成、管理和分配电力相关联的组件。
93.多媒体组件808包括在终端设备800和用户之间的提供一个输出接口的屏幕。在一些实施例中,屏幕可以包括液晶显示器(lcd)和触摸面板(tp)。如果屏幕包括触摸面板,屏幕可以被实现为触摸屏,以接收来自用户的输入信号。触摸面板包括一个或多个触摸传感器以感测触摸、滑动和触摸面板上的手势。触摸传感器可以不仅感测触摸或滑动动作的边界,而且还检测与触摸或滑动操作相关的持续时间和压力。在一些实施例中,多媒体组件808包括一个前置摄像头和/或后置摄像头。当终端设备800处于操作模式,如拍摄模式或视频模式时,前置摄像头和/或后置摄像头可以接收外部的多媒体数据。每个前置摄像头和后置摄像头可以是一个固定的光学透镜系统或具有焦距和光学变焦能力。
94.音频组件810被配置为输出和/或输入音频信号。例如,音频组件810包括一个麦克风(mic),当终端设备800处于操作模式,如呼叫模式、记录模式和语音识别模式时,麦克风被配置为接收外部音频信号。所接收的音频信号可以被进一步存储在存储器804或经由通信组件816发送。在一些实施例中,音频组件810还包括一个扬声器,用于输出音频信号。
95.i/ o接口812为处理组件802和外围接口模块之间提供接口,上述外围接口模块可以是键盘,点击轮,按钮等。这些按钮可包括但不限于:主页按钮、音量按钮、启动按钮和锁定按钮。
96.传感器组件814包括一个或多个传感器,用于为终端设备800提供各个方面的状态评估。例如,传感器组件814可以检测到终端设备800的打开/关闭状态,组件的相对定位,例如组件为终端设备800的显示器和小键盘,传感器组件814还可以检测终端设备800或终端设备800一个组件的位置改变,用户与终端设备800接触的存在或不存在,终端设备800方位或加速/减速和终端设备800的温度变化。传感器组件814可以包括接近传感器,被配置用来在没有任何的物理接触时检测附近物体的存在。传感器组件814还可以包括光传感器,如cmos或ccd图像传感器,用于在成像应用中使用。在一些实施例中,该传感器组件814还可以包括加速度传感器,陀螺仪传感器,磁传感器,压力传感器或温度传感器。
97.通信组件816被配置为便于终端设备800和其他设备之间有线或无线方式的通信。终端设备800可以接入基于通信标准的无线网络,如wifi,3g、4g、5g或其他标准通信网络,或它们的组合。在一个示例性实施例中,通信组件816经由广播信道接收来自外部广播管理系统的广播信号或广播相关信息。在一个示例性实施例中,通信组件816还包括近场通信(nfc)模块,以促进短程通信。例如,在nfc模块可基于射频识别(rfid)技术,红外数据协会(irda)技术,超宽带(uwb)技术,蓝牙(bt)技术和其他技术来实现。
98.在示例性实施例中,终端设备800可以被一个或多个应用专用集成电路(asic)、数字信号处理器(dsp)、数字信号处理设备(dspd)、可编程逻辑器件(pld)、现场可编程门阵列(fpga)、控制器、微控制器、微处理器或其他电子元件实现,用于执行上述本技术图2-图8所对应的实施例中任一实施例提供的方法。
99.在示例性实施例中,还提供了一种包括指令的非临时性计算机可读存储介质,例如包括指令的存储器804,上述指令可由终端设备800的处理器820执行以完成上述方法。例如,非临时性计算机可读存储介质可以是rom、随机存取存储器(ram)、cd-rom、磁带、软盘和光数据存储设备等。
100.本技术实施例还提供了一种非临时性计算机可读存储介质,当该存储介质中的指令由终端设备的处理器执行时,使得终端设备800能够执行上述本技术图2-图8所对应的实施例中任一实施例提供的方法。
101.在本技术所提供的几个实施例中,应该理解到,所揭露的装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,模块的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个模块或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或模块的间接耦合或通信连接,可以是电性,机械或其它的形式。
102.本领域技术人员在考虑说明书及实践这里公开的申请后,将容易想到本技术的其它实施方案。本技术旨在涵盖本技术的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本技术的一般性原理并包括本技术未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本技术的真正范围和精神由下面的权利要求书指出。
103.应当理解的是,本技术并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本技术的范围仅由所附的权利要求书来限制。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献