一种车辆ECU识别方法、装置及相关设备与流程

文档序号:33622985发布日期:2023-03-25 13:25阅读:50来源:国知局
一种车辆ECU识别方法、装置及相关设备与流程
一种车辆ecu识别方法、装置及相关设备
技术领域
1.本技术涉及车辆安全技术领域,特别涉及一种车辆ecu识别方法,还涉及一种车辆ecu识别装置、系统及计算机可读存储介质。


背景技术:

2.当前网联车往往存在安全问题,但是安全介入现状都比较迟缓,因此出现大量网联汽车黑盒测试的需求。对于任意一台新的网联车,三方安全厂商并不清楚车辆内部结构。因此,如何方便快速的黑盒识别出车内ecu的拓扑结构是本领域技术人员亟待解决的问题。


技术实现要素:

3.本技术的目的是提供一种车辆ecu识别方法,该车辆ecu识别方法可以方便快速的黑盒识别出车内ecu的拓扑结构;本技术的另一目的是提供一种车辆ecu识别装置、系统及计算机可读存储介质,均具有上述有益效果。
4.第一方面,本技术提供了一种车辆ecu识别方法,包括:
5.当获取到识别指令时,根据所述识别指令向指定的can总线发送数据包;
6.记录发送所述数据包时所述can总线的电压值;
7.利用预设聚类算法对所有所述电压值进行聚类处理,获得各类聚簇;
8.利用各所述聚簇绘制生成ecu拓扑图。
9.优选的,获取所述识别指令,包括:
10.当感应到obd接口连接信息时,自动响应所述识别指令。
11.优选的,所述根据所述识别指令向指定的can总线发送数据包,包括:
12.根据所述识别指令向can id为0x000至0x7ff的所有can总线发送数据包。
13.优选的,所述记录发送所述数据包时所述can总线的电压值,包括:
14.按照预设时间间隔记录发送所述数据包时所述can总线的电压值。
15.优选的,所述利用预设聚类算法对所有所述电压值进行聚类处理,获得各类聚簇,包括:
16.利用k-means聚类算法对所有所述电压值进行聚类处理,获得所述各类聚簇。
17.优选的,所述利用k-means聚类算法对所有所述电压值进行聚类处理,获得所述各类聚簇,包括:
18.按照预设比例对所有所述电压值进行划分,获得第一样本数据和第二样本数据;
19.对所述第一样本数据进行层次聚类,并通过类型识别确定各聚簇类别;
20.基于各所述聚簇类别,对所述第二样本数据进行k-means运算,获得所述各类聚簇;其中,所述k取值为所述聚簇类别的数量。
21.优选的,所述通过类型识别确定各聚簇类别,包括:
22.按照关键字频率进行类型识别,获得各所述聚簇类别。
23.第二方面,本技术还公开了一种车辆ecu识别装置,包括:
24.数据包发送模块,用于当获取到识别指令时,根据所述识别指令向指定的can总线发送数据包;
25.电压记录模块,用于记录发送所述数据包时所述can总线的电压值;
26.聚类模块,用于利用预设聚类算法对所有所述电压值进行聚类处理,获得各类聚簇;
27.拓扑图绘制模块,用于利用各所述聚簇绘制生成ecu拓扑图。
28.第三方面,本技术还公开了一种车辆ecu识别系统,包括:
29.存储器,用于存储计算机程序;
30.处理器,用于执行所述计算机程序时实现如上所述的任一种车辆ecu识别方法的步骤。
31.第四方面,本技术还公开了一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如上所述的任一种车辆ecu识别方法的步骤。
32.本技术所提供的一种车辆ecu识别方法,包括当获取到识别指令时,根据所述识别指令向指定的can总线发送数据包;记录发送所述数据包时所述can总线的电压值;利用预设聚类算法对所有所述电压值进行聚类处理,获得各类聚簇;利用各所述聚簇绘制生成ecu拓扑图。
33.应用本技术所提供的技术方案,基于不同ecu(electronic control unit,电子控制单元)对应不同电压,以及一个ecu对应多个can(controller area network,控制器局域网络)总线的特性,通过向can总线发送数据包的形式记录各can总线的电压值,然后通过聚类算法对所有的电压值进行聚类处理,生成各类聚簇,此时,每一个聚簇对应于同一个ecu的can总线,因此,只需要知道一个聚簇中一个can总线对应的ecu名称,即可获悉该聚簇中其他所有can总线对应的ecu名称,从而黑盒识别出车辆ecu的拓扑结构。
34.本技术所提供的一种车辆ecu识别装置、系统及计算机可读存储介质,均具有上述有益效果,在此不再赘述。
附图说明
35.为了更清楚地说明现有技术和本技术实施例中的技术方案,下面将对现有技术和本技术实施例描述中需要使用的附图作简要的介绍。当然,下面有关本技术实施例的附图描述的仅仅是本技术中的一部分实施例,对于本领域普通技术人员来说,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图,所获得的其他附图也属于本技术的保护范围。
36.图1为本技术所提供的一种车辆ecu识别方法的流程示意图;
37.图2为本技术所提供的另一种车辆ecu识别方法的流程示意图;
38.图3为本技术所提供的一种车辆ecu识别装置的结构示意图;
39.图4为本技术所提供的一种车辆ecu识别系统的结构示意图。
具体实施方式
40.本技术的核心是提供一种车辆ecu识别方法,该车辆ecu识别方法可以方便快速的
黑盒识别出车内ecu的拓扑结构;本技术的另一核心是提供一种车辆ecu识别装置、系统及计算机可读存储介质,也具有上述有益效果。
41.为了对本技术实施例中的技术方案进行更加清楚、完整地描述,下面将结合本技术实施例中的附图,对本技术实施例中的技术方案进行介绍。显然,所描述的实施例仅仅是本技术一部分实施例,而不是全部的实施例。基于本技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本技术保护的范围。
42.当前网联车往往存在安全问题,但是安全介入现状都比较迟缓,因此出现大量网联汽车黑盒测试的需求。对于任意一台新的网联车,三方安全厂商并不清楚车辆内部结构。因此,如何方便快速的黑盒识别出车内ecu的拓扑结构是本领域技术人员亟待解决的问题。
43.为解决上述技术问题,本技术提供了一种车辆ecu识别方法,该车辆ecu识别方法基于不同ecu对应不同电压,以及一个ecu对应多个can总线的特性,通过向can总线发送数据包的形式记录各can总线的电压值,然后通过聚类算法对所有的电压值进行聚类处理,生成各类聚簇,此时,每一个聚簇对应于同一个ecu的can总线,因此,只需要知道一个聚簇中一个can总线对应的ecu名称,即可获悉该聚簇中其他所有can总线对应的ecu名称,从而黑盒识别出车辆ecu的拓扑结构。
44.本技术实施例提供了一种车辆ecu识别方法。
45.请参考图1,图1为本技术所提供的一种车辆ecu识别方法的流程示意图,该车辆ecu识别方法可包括:
46.s101:当获取到识别指令时,根据识别指令向指定的can总线发送数据包;
47.本步骤旨在向车辆内指定的can总线发送数据包,以便实现数据包发送过程中的电压值记录,进而根据记录的电压值实现车辆ecu识别。具体而言,当获取到识别指令时,即可基于该识别指令向指定的can总线发送数据包,当然,由于本技术旨在通过向can总线发送数据包实现电压值记录,因此,数据包的具体内容并不影响本技术方案的实施,由技术人员进行自定义设置即可,本技术对此不做限定。
48.其中,识别指令的获取方式并不唯一,例如,可以由技术人员通过前段设备直接输入,也可以预设触发条件,并在满足该预设触发条件自动响应,本技术对此同样不做限定。
49.此外,为实现更为准确的车辆ecu识别,指定的can总线最好可以为车辆内的所有can总线。
50.s102:记录发送数据包时can总线的电压值;
51.本步骤旨在实现数据包发送过程中can总线的电压值记录。具体而言,在向每一个can总线发送数据包时,可对can总线的相关引脚进行电压值记录,获得相应的电压值。在此基础上,为进一步保证ecu识别结果的准确性,还可以通过多次发包记录多个电压值的方式,实现更多数量的电压值记录。
52.s103:利用预设聚类算法对所有电压值进行聚类处理,获得各类聚簇;
53.本步骤旨在实现对所有电压值数据的聚类处理,以获得各类聚簇。具体而言,在记录得到所有的电压值之后,即可利用预先设定的聚类算法对所有的电压值进行聚类处理,得到各类聚簇。可以想到的是,此时得到的每一个聚簇,对应于同一个ecu的can总线,因此,只需要知道一个聚簇中一个can总线对应的ecu名称,即可获悉该聚簇中其他所有can总线对应的ecu名称,从而实现车辆ecu识别。
54.其中,预设聚类算法的具体类型并不影响本技术方案的实施,可实现电压值的聚类处理即可,本技术对此不做限定。
55.s104:利用各聚簇绘制生成ecu拓扑图。
56.本步骤旨在实现ecu拓扑图的生成。具体而言,在通过聚类处理得到各聚簇之后,即可利用各聚簇进行ecu拓扑图的绘制,得到对应车辆的ecu拓扑图,基于该ecu拓扑图,技术人员可以更为直观清晰的了解车辆内部结构。
57.可见,本技术所提供的车辆ecu识别方法,基于不同ecu对应不同电压,以及一个ecu对应多个can总线的特性,通过向can总线发送数据包的形式记录各can总线的电压值,然后通过聚类算法对所有的电压值进行聚类处理,生成各类聚簇,此时,每一个聚簇对应于同一个ecu的can总线,因此,只需要知道一个聚簇中一个can总线对应的ecu名称,即可获悉该聚簇中其他所有can总线对应的ecu名称,从而黑盒识别出车辆ecu的拓扑结构。
58.在本技术的一个实施例中,获取识别指令,可以包括:当感应到obd(on-board diagnostic,车载诊断系统)接口连接信息时,自动响应识别指令。
59.本优选实施例提供了一种识别指令的获取方法,即基于预设触发条件自动响应,该预设触发条件即为obd接口连接信息。具体而言,当需要对车辆进行ecu识别时,可通过车载开放的obd接口与车辆建立连接,由此,识别装置即可感应到obd接口连接信息,此时,基于该obd接口连接信息自动响应识别指令即可。
60.在本技术的一个实施例中,上述根据识别指令向指定的can总线发送数据包,可以包括:根据识别指令向can id为0x000至0x7ff的所有can总线发送数据包。
61.如上所述,为实现更为准确的车辆ecu识别,指定的can总线最好可以为车辆内的所有can总线,在此基础上,本技术实施例提供了具体的can总线,即根据识别指令向can id为0x000至0x7ff的所有can总线发送数据包,以便实现相应的电压值记录。
62.在本技术的一个实施例中,上述记录发送数据包时can总线的电压值,可以包括:按照预设时间间隔记录发送数据包时can总线的电压值。
63.如上所述,为进一步保证ecu识别结果的准确性,还可以通过多次发包记录多个电压值的方式,实现更多数量的电压值记录,在此基础上,可以按照预设时间间隔进行电压值记录,以便得到更多数量的电压值。其中,预设时间间隔的具体取值并不影响本技术方案的实施,由技术人员根据实际情况进行设置即可,本技术对此不做限定。
64.在本技术的一个实施例中,上述利用预设聚类算法对所有电压值进行聚类处理,获得各类聚簇,可以包括:利用k-means聚类算法对所有电压值进行聚类处理,获得各类聚簇。
65.本技术实施例提供了一种具体类型的预设聚类算法,即k-means聚类算法,以实现电压值的聚类处理,获得各类聚簇。当然,k-means聚类算法仅为本技术实施例所提供的一种实现方式,并不唯一,还可以采用其他类型的聚类算法。
66.在本技术的一个实施例中,上述利用k-means聚类算法对所有电压值进行聚类处理,获得各类聚簇,可以包括:按照预设比例对所有电压值进行划分,获得第一样本数据和第二样本数据;对第一样本数据进行层次聚类(cluster.hierarchy),并通过类型识别确定各聚簇类别;基于各聚簇类别,对第二样本数据进行k-means运算,获得各类聚簇;其中,k取值为聚簇类别的数量。
67.本技术实施例提供了基于k-means聚类算法对所有电压值进行聚类处理的具体实现过程。具体而言,可以先按照预设比例将所有的电压值划分为第一样本数据和第二样本数据,其中,第一样本数据用于实现聚簇类别确定,第二样本数据用于实现聚簇类别划分。在此基础上,可以先对第一样本数据进行层次聚类,并对聚类得到的各个聚簇进行类型识别,确定各聚簇的聚簇类别;进一步,基于各聚簇类别,对第二样本数据进行k-means运算,即可得到各类已知类别的聚簇,当然,k取值即为聚簇类别的数量。也就是说,该实现过程相当于通过第一样本数据生成分类标签,再利用分类标签对第二样本数据进行标签匹配,从而实现聚簇类型划分。
68.需要说明的是,上述预设比例的取值并不影响本技术方案的实施,由技术人员根据实际情况进行设定即可,本技术对此不做限定。一般而言,第一样本数据的数量低于第二样本数据的数量。
69.在本技术的一个实施例中,上述通过类型识别确定各聚簇类别,可以包括:按照关键字频率进行类型识别,获得各聚簇类别。
70.本技术实施例提供了一种聚簇类型的识别方法,即根据关键字出现的频率进行识别,可以理解的是,不同的ecu对应于不同的电压值,因此,可以根据电压值具体取值的出现频率,实现聚簇类别的确定。当然,对于无法自动化识别的聚簇,也可以直接输出,由技术人员根据技术经验进行人工识别。
71.在上述各实施实例的基础上:
72.请参考图2,图2为本技术所提供的另一种车辆ecu识别方法的流程示意图,其具体实现流程可以包括:
73.步骤一、通过车载开放的obd接口连接车辆;
74.步骤二、遍历can总线id,确定can id为0x000-0x7ff的can总线,并进行数据包发送;
75.步骤三、通过自动化脚本开始对所有can总线进行低频率扫描;
76.步骤四、扫描周期可以设置为300ms一次,并自动记录每个can id扫描过程中的电压值;
77.步骤五、自动运行kmeans聚类算法,先对30%的电压值数据进行层次聚类,得出聚簇中心,并根据关键字的出现频率进行类别自动化定义,实现聚簇类型确定,此外,对于无法判别类别的聚簇,可以进行人工识别;进一步,对剩余的70%的电压值进行k均值聚类运算(k-means聚类运算),其中,k即为聚簇中心的聚类个数,也即聚簇的分类数量;
78.步骤六、生成聚簇,每一个聚簇即为同一个ecu的can id;
79.步骤七、根据生成的聚簇绘制图表,即可以直观的观察到有多少个聚簇,每个聚簇中有多少id;
80.步骤把八、技术人员根据生成的图表即可直观的、不破解汽车的情况下,获得ecu的拓扑结构。
81.可见,本技术实施例所提供的车辆ecu识别方法,基于不同ecu对应不同电压,以及一个ecu对应多个can总线的特性,通过向can总线发送数据包的形式记录各can总线的电压值,然后通过聚类算法对所有的电压值进行聚类处理,生成各类聚簇,此时,每一个聚簇对应于同一个ecu的can总线,因此,只需要知道一个聚簇中一个can总线对应的ecu名称,即可
获悉该聚簇中其他所有can总线对应的ecu名称,从而黑盒识别出车辆ecu的拓扑结构。
82.本技术实施例提供了一种车辆ecu识别装置。
83.请参考图3,图3为本技术所提供的一种车辆ecu识别装置的结构示意图,该车辆ecu识别装置可包括:
84.数据包发送模块1,用于当获取到识别指令时,根据识别指令向指定的can总线发送数据包;
85.电压记录模块2,用于记录发送数据包时can总线的电压值;
86.聚类模块3,用于利用预设聚类算法对所有电压值进行聚类处理,获得各类聚簇;
87.拓扑图绘制模块4,用于利用各聚簇绘制生成ecu拓扑图。
88.可见,本技术实施例所提供的车辆ecu识别装置,基于不同ecu对应不同电压,以及一个ecu对应多个can总线的特性,通过向can总线发送数据包的形式记录各can总线的电压值,然后通过聚类算法对所有的电压值进行聚类处理,生成各类聚簇,此时,每一个聚簇对应于同一个ecu的can总线,因此,只需要知道一个聚簇中一个can总线对应的ecu名称,即可获悉该聚簇中其他所有can总线对应的ecu名称,从而黑盒识别出车辆ecu的拓扑结构。
89.在本技术的一个实施例中,该车辆ecu识别装置还可包括识别指令获取模块,用于当感应到obd接口连接信息时,自动响应识别指令。
90.在本技术的一个实施例中,上述数据包发送模块1可具体用于根据识别指令向can id为0x000至0x7ff的所有can总线发送数据包。
91.在本技术的一个实施例中,上述电压记录模块2可具体用于按照预设时间间隔记录发送数据包时can总线的电压值。
92.在本技术的一个实施例中,上述聚类模块3可具体用于利用k-means聚类算法对所有电压值进行聚类处理,获得各类聚簇。
93.在本技术的一个实施例中,上述聚类模块3可包括:
94.数据划分单元,用于按照预设比例对所有电压值进行划分,获得第一样本数据和第二样本数据;
95.类型识别单元,用于对第一样本数据进行层次聚类,并通过类型识别确定各聚簇类别;
96.聚簇生成单元,用于基于各聚簇类别,对第二样本数据进行k-means运算,获得各类聚簇;其中,k取值为聚簇类别的数量。
97.在本技术的一个实施例中,上述类型识别单元可具体用于按照关键字频率进行类型识别,获得各聚簇类别。
98.对于本技术提供的装置的介绍请参照上述方法实施例,本技术在此不做赘述。
99.本技术实施例提供了一种车辆ecu识别系统。
100.请参考图4,图4为本技术所提供的一种车辆ecu识别系统的结构示意图,该车辆ecu识别系统可包括:
101.存储器,用于存储计算机程序;
102.处理器,用于执行计算机程序时可实现如上述任意一种车辆ecu识别方法的步骤。
103.如图4所示,为车辆ecu识别系统的组成结构示意图,车辆ecu识别系统可以包括:处理器10、存储器11、通信接口12和通信总线13。处理器10、存储器11、通信接口12均通过通
信总线13完成相互间的通信。
104.在本技术实施例中,处理器10可以为中央处理器(central processing unit,cpu)、特定应用集成电路、数字信号处理器、现场可编程门阵列或者其他可编程逻辑器件等。
105.处理器10可以调用存储器11中存储的程序,具体的,处理器10可以执行车辆ecu识别方法的实施例中的操作。
106.存储器11中用于存放一个或者一个以上程序,程序可以包括程序代码,程序代码包括计算机操作指令,在本技术实施例中,存储器11中至少存储有用于实现以下功能的程序:
107.当获取到识别指令时,根据识别指令向指定的can总线发送数据包;
108.记录发送数据包时can总线的电压值;
109.利用预设聚类算法对所有电压值进行聚类处理,获得各类聚簇;
110.利用各聚簇绘制生成ecu拓扑图。
111.在一种可能的实现方式中,存储器11可包括存储程序区和存储数据区,其中,存储程序区可存储操作系统,以及至少一个功能所需的应用程序等;存储数据区可存储使用过程中所创建的数据。
112.此外,存储器11可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件或其他易失性固态存储器件。
113.通信接口12可以为通信模块的接口,用于与其他设备或者系统连接。
114.当然,需要说明的是,图4所示的结构并不构成对本技术实施例中车辆ecu识别系统的限定,在实际应用中车辆ecu识别系统可以包括比图4所示的更多或更少的部件,或者组合某些部件。
115.本技术实施例提供了一种计算机可读存储介质,该计算机可读存储介质上存储有计算机程序,计算机程序被处理器执行时可实现如上述任意一种车辆ecu识别方法的步骤。
116.该计算机可读存储介质可以包括:u盘、移动硬盘、只读存储器(read-only memory,rom)、随机存取存储器(random access memory,ram)、磁碟或者光盘等各种可以存储程序代码的介质。
117.对于本技术提供的计算机可读存储介质的介绍请参照上述方法实施例,本技术在此不做赘述。
118.说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的装置而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。
119.专业人员还可以进一步意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本技术的范围。
120.结合本文中所公开的实施例描述的方法或算法的步骤可以直接用硬件、处理器执行的软件模块,或者二者的结合来实施。软件模块可以置于随机存储器(ram)、内存、只读存储器(rom)、电可编程rom、电可擦除可编程rom、寄存器、硬盘、可移动磁盘、cd-rom或技术领域内所公知的任意其它形式的存储介质中。
121.以上对本技术所提供的技术方案进行了详细介绍。本文中应用了具体个例对本技术的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本技术的方法及其核心思想。应当指出,对于本技术领域的普通技术人员来说,在不脱离本技术原理的前提下,还可以对本技术进行若干改进和修饰,这些改进和修饰也落入本技术的保护范围内。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1