故障诊断方法、系统、设备及介质与流程
未命名
10-21
阅读:77
评论:0
1.本发明涉及车辆技术领域,尤其涉及一种故障诊断方法、系统、设备及介质。
背景技术:
2.随着互联网与传统车辆企业的整合,越来越多的整车厂需要对车辆进行远程诊断和刷新。
3.汽车远程诊断是指在车辆不需要开回车辆实体店的情况下,依靠车辆具备的移动通讯能力(wifi/4g/5g)完成主机厂后台(或手机端app)对车辆进行远程控制及诊断操作的一种诊断技术。远程ota刷新属于远程诊断应用的一种场景。此外,远程诊断技术通过与物联网、大数据和云计算等前沿技术融合后,还可为主机厂在研发试验、产线电检和售后诊断等领域提供重要支撑。
4.首先,远程诊断可以在线采集数据,降低开发周期及成本。研发阶段车辆需要进行大量道路试验、耐久试验,而试验车配备的数据采集设备有限,通过远程诊断,试验过程中出现的车辆故障现象可以及时反馈给研发人员分析和仿真,快速协助解决故障问题。其次,远程诊断可以在产线电检跨工位实现初始化及功能检测和产线ota刷新,实现汽车软件定制化生产,满足车主定制化需求。最后,远程诊断可以周期性监控车辆状态,实时诊断车辆健康,结合大数据统计分析进行车辆故障预警,通过后台推送给厂家售后车辆实体店进行车辆保养及维修指导建议。
5.但诊断数据库预置在车端,云端直接下发诊断序列文件给到车端,车端解析诊断序列文件,然后根据诊断序列从诊断数据库中获取对应的数据合成诊断指令进行诊断。由于需要根据诊断序列频繁的从诊断数据库中获取数据,因此车端主节点的资源开销会比较大和运行效率较低。并且,所有的诊断任务都需要从云端下发诊断序列文件,车端再根据诊断序列从诊断数据库中获取数据合成诊断指令进行诊断,导致诊断效率较低。
技术实现要素:
6.本发明提供了一种故障诊断方法、系统、设备及介质,以解决现有技术中资源开销大、运行效率低和诊断效率低的技术问题。
7.根据本发明的一方面,提供了一种故障诊断方法,应用于远程诊断客户端,包括:
8.接收远程诊断服务端发送的车辆诊断推送消息;其中,所述车辆诊断推送消息中至少包括下述之一:诊断任务类型和诊断脚本信息;
9.根据所述诊断任务类型和/或所述诊断脚本信息获取对应的目标诊断脚本文件和对应的目标诊断条件;其中,所述目标诊断脚本文件由诊断数据库和诊断序列转换得到,并且,所述目标诊断脚本文件为解释性语言文件;
10.按照所述目标诊断条件和所述目标诊断脚本文件对目标车辆进行故障诊断。
11.根据本发明的另一方面,提供了一种故障诊断装置,应用于远程诊断客户端,包括:
12.接收模块,用于接收远程诊断服务端发送的车辆诊断推送消息;其中,所述车辆诊断推送消息中至少包括下述之一:诊断任务类型和诊断脚本信息;
13.获取模块,用于根据所述诊断任务类型和/或所述诊断脚本信息获取对应的目标诊断脚本文件和对应的目标诊断条件;其中,所述目标诊断脚本文件由诊断数据库和诊断序列转换得到,并且,所述目标诊断脚本文件为解释性语言文件;
14.诊断模块,用于按照所述目标诊断条件和所述目标诊断脚本文件对目标车辆进行故障诊断。
15.根据本发明的另一方面,提供了一种故障诊断系统,包括:远程诊断服务端和远程诊断客户端;其中,所述远程诊断服务端包括:诊断管理平台、推送服务器和内容分发网络;所述远程诊断客户端包括:诊断客户端和诊断脚本引擎;
16.通过所述诊断管理平台将诊断数据库和对应的诊断序列合成为对应的诊断脚本文件;在诊断客户端接收到推送服务器发送的携带诊断任务类型和/或诊断脚本信息的车辆诊断推送消息的情况下,所述诊断客户端基于所述诊断任务类型和/或所述诊断脚本信息接收内容分发网络下发的对应目标诊断脚本文件和对应的目标诊断条件,并将所述目标诊断脚本文件发送至所述诊断脚本引擎,以使所述诊断脚本引擎解析所述目标诊断脚本文件,并按照所述目标诊断条件和所述目标诊断脚本文件对目标车辆进行故障诊断;其中,所述目标诊断脚本文件通过所述诊断管理平台将诊断数据库和对应的诊断序列转换得到,并且,所述目标诊断脚本文件为解释性语言文件。
17.根据本发明的另一方面,提供了一种故障诊断设备,所述故障诊断设备包括:
18.至少一个处理器;以及
19.与所述至少一个处理器通信连接的存储器;其中,
20.所述存储器存储有可被所述至少一个处理器执行的计算机程序,所述计算机程序被所述至少一个处理器执行,以使所述至少一个处理器能够执行本发明任一实施例所述的故障诊断方法。
21.根据本发明的另一方面,提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机指令,所述计算机指令用于使处理器执行时实现本发明任一实施例所述的故障诊断方法。
22.本发明实施例的技术方案,通过远程诊断服务端将诊断数据库和诊断序列转换为更适合远程诊断客户端运行的基于解释性语言的诊断脚本文件,并发送至远程诊断客户端,省去了远程诊断客户端解析诊断序列并频繁地读取诊断数据库的操作,减轻了远程诊断客户端的负荷,提升了诊断任务的运行效率;同时对诊断任务类型进行分区,以便于从根据诊断任务类型从不同的数据库获取对应的目标诊断脚本文件,进而提升诊断效率。
23.应当理解,本部分所描述的内容并非旨在标识本发明的实施例的关键或重要特征,也不用于限制本发明的范围。本发明的其它特征将通过以下的说明书而变得容易理解。
附图说明
24.为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他
的附图。
25.图1是本发明实施例提供的一种故障诊断系统的结构框图;
26.图2是本发明实施例提供的一种故障诊断方法的流程图;
27.图3是本发明实施例提供的一种诊断脚本文件的数据结构的配置示意图;
28.图4是本发明实施例提供的另一种故障诊断方法的流程图;
29.图5是本发明实施例提供的又一种故障诊断方法的流程图;
30.图6是本发明实施例提供的再一种故障诊断方法的流程图;
31.图7是本发明实施例提供的再一种故障诊断方法的流程图;
32.图8是本发明实施例提供的再一种故障诊断方法的流程图;
33.图9是本发明实施例提供的另一种故障诊断系统的结构框图;
34.图10是本发明实施例提供的一种故障诊断装置的结构示意图;
35.图11是本发明实施例提供的一种故障诊断设备的结构框图。
具体实施方式
36.为了使本技术领域的人员更好地理解本发明方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分的实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本发明保护的范围。
37.需要说明的是,本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本发明的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
38.在一实施例中,图1是本发明实施例提供的一种故障诊断系统的结构框图。本发明实施例提供的故障诊断方法由故障诊断系统中的远程诊断客户端执行。如图1所示,本技术实施例中的故障诊断系统包括:远程诊断服务端10和远程诊断客户端20;其中,远程诊断服务端10包括:诊断管理平台101、推送服务器102和内容分发网络103;远程诊断客户端20包括:诊断客户端201和诊断脚本引擎202;
39.通过诊断管理平台101将诊断数据库和对应的诊断序列合成为对应的诊断脚本文件;在诊断客户端201接收到推送服务器201发送的携带诊断任务类型和/或诊断脚本信息的车辆诊断推送消息的情况下,诊断客户端201基于诊断任务类型和/或诊断脚本信息接收内容分发网络103下发的对应目标诊断脚本文件和对应的目标诊断条件,并将目标诊断脚本文件发送至诊断脚本引擎202,以使诊断脚本引擎202解析目标诊断脚本文件,并按照目标诊断条件和目标诊断脚本文件对目标车辆进行故障诊断;其中,目标诊断脚本文件通过诊断管理平台101将诊断数据库和对应的诊断序列转换得到,并且,目标诊断脚本文件为解释性语言文件。
40.在一实施例中,图2是本发明实施例提供的一种故障诊断方法的流程图,本实施例可适用于简单便捷地对车辆进行故障诊断的情况,该方法可以由故障诊断装置来执行,该故障诊断装置可以采用硬件和/或软件的形式实现,该故障诊断装置可配置于故障诊断设备中。其中,故障诊断设备可以为远程诊断客户端。如图2所示,该方法包括:
41.s210、接收远程诊断服务端发送的车辆诊断推送消息。
42.其中,车辆诊断推送消息中至少包括下述之一:诊断任务类型和诊断脚本信息。远程诊断服务端也可以称为远程诊断服务器,或者远程诊断云端(简称为云端)。车辆诊断推送消息指的是向远程诊断客户端推送诊断任务的相关信息,车辆诊断推送消息可以包括:诊断任务类型和/或诊断脚本信息。其中,诊断任务类型用于表征不同类型的诊断任务,诊断任务类型可以包括基础诊断和脚本诊断。基础诊断指的是对目标车辆在一次诊断过程中所必需的诊断任务,比如,基础诊断可以包括但不限于:对目标车辆中温度传感器进行故障诊断;对目标车辆中电压传感器进行故障诊断;对目标车辆中发送机的转速进行故障诊断。脚本诊断指的是在基础诊断完成之后,对目标车辆中的某一个ecu作进一步检查的诊断任务,比如,脚本诊断可以包括:在目标车辆中发动机的水温过高,需要进一步地检查散热设备或温控设备的参数是否正常。在一示例中,可以采用不同的字段表征不同的诊断任务类型,比如,00表征基础诊断;01表示脚本诊断。
43.诊断脚本信息指的是诊断脚本文件的相关属性信息。示例性地,诊断脚本信息包括但不限于:诊断脚本文件的大小,诊断脚本文件的下载路径,诊断脚本文件的校验值。
44.在实施例中,远程诊断服务端中的诊断管理平台向远程诊断客户端中的诊断客户端发送包含诊断任务的车辆诊断推送消息,并在车辆诊断推送消息中至少包括诊断任务类型和/或诊断脚本信息。
45.s220、根据诊断任务类型和/或诊断脚本信息获取对应的目标诊断脚本文件和对应的目标诊断条件。
46.其中,目标诊断脚本文件由诊断数据库和诊断序列转换得到,并且,目标诊断脚本文件为解释性语言文件。诊断数据库可以为odx/excel等格式;诊断序列可以为otx或自定义的格式。
47.在一实施例中,诊断脚本文件的数据结构可以根据具体采用的解释性语言的特性进行配置。图3是本发明实施例提供的一种诊断脚本文件的数据结构的配置示意图。如图3所示,诊断脚本文件包括:诊断通讯信息和诊断数据信息;其中,诊断通讯信息至少包括:待诊断的电子控制单元ecu的访问信息;诊断数据信息至少包括:指令执行顺序、诊断数据和运行结果处理。待诊断的ecu的访问信息,可以理解为需要诊断的ecu的连接信息,比如,访问信息可以为逻辑地址等。诊断数据信息即诊断步骤集,诊断步骤集为整个诊断步骤的集合,并一个诊断步骤包括:执行执行顺序、诊断数据和运行结果处理三部分。其中,运行结果用于描述对诊断泛会所护具的分析处理逻辑,比如,可以包括:数据解析格式、后续指令执行顺序、异常重试次数、时间间隔和提示信息。其中,数据解析格式指的是对返回数据进行提取的格式,比如,提取数据中的哪些数据需要返回至远程诊断服务端;后续指令执行顺序指的是根据返回数据下一步的步骤编号;异常重试次数指的是本条指令出现异常的情况下重试的次数;时间间隔指的是本条指令与下条指令之间的时间间隔;提示信息指的是若本条指令出现异常需要给用户的提示信息等。
48.诊断数据库包含诊断通讯信息和诊断数据信息中的诊断数据;诊断数据信息中的指令执行顺序和运行结果均为诊断序列。
49.在实施例中,目标诊断脚本文件指的是与本次的诊断任务相匹配的诊断脚本;目标诊断条件指的是执行目标诊断脚本文件时,目标车辆所需要维持的运行状态。可以理解为,诊断脚本文件和诊断条件是一一对应的,即一个目标诊断脚本文件对应一个目标诊断条件。可以根据诊断任务类型和/或诊断脚本信息从不同的数据库获取对应的目标诊断脚本文件和对应的目标诊断条件。
50.s230、按照目标诊断条件和目标诊断脚本文件对目标车辆进行故障诊断。
51.在实施例中,在目标车辆的当前运行状态满足目标诊断条件的情况下,基于目标诊断脚本文件对目标车辆中的一个或多个ecu进行故障诊断。
52.本实施例的技术方案,通过远程诊断服务端将诊断数据库和诊断序列转换为更适合远程诊断客户端运行的基于解释性语言的诊断脚本文件,并发送至远程诊断客户端,省去了远程诊断客户端解析诊断序列并频繁地读取诊断数据库的操作,减轻了远程诊断客户端的负荷,提升了诊断任务的运行效率;同时对诊断任务类型进行分区,以便于从根据诊断任务类型从不同的数据库获取对应的目标诊断脚本文件,进而提升诊断效率。
53.在一实施例中,图4是本发明实施例提供的另一种故障诊断方法的流程图,本实施例是在上述实施例的基础上,对诊断任务类型为基础诊断时,故障诊断的过程进行说明。如图4所示,该方法包括:
54.s410、接收远程诊断服务端发送的车辆诊断推送消息。
55.其中,车辆诊断推送消息中至少包括下述之一:诊断任务类型和诊断脚本信息。
56.s420、在诊断任务类型为基础诊断的情况下,直接从远程诊断客户端的本地数据库中获取预先存储的诊断脚本文件和对应的诊断条件。
57.其中,诊断任务类型为基础诊断的情况下,远程诊断客户端中的诊断客户端可以直接从本地数据库中获取预先存储的诊断脚本文件和对应的诊断条件。
58.s430、将预先存储的诊断脚本文件和对应的诊断条件分别作为对应的目标诊断脚本文件和对应的目标诊断条件。
59.通过远程诊断客户端中的诊断客户端将预先存储的诊断脚本文件作为对应的目标诊断脚本文件,以及与目标诊断脚本文件对应的诊断条件作为目标诊断条件。
60.s440、根据目标诊断脚本文件对应的诊断脚本逻辑调用对应的目标诊断协议栈。
61.其中,目标诊断协议栈指的是可以满足远程诊断客户端执行目标诊断脚本文件的诊断协议栈。示例性地,目标诊断协议栈可以包括但不限于:uds或doip协议栈。
62.s450、在目标车辆的当前运行状态满足目标诊断条件的情况下,采用目标诊断协议栈,并基于目标诊断脚本文件对目标车辆进行故障诊断。
63.在目标车辆的当前运行状态满足目标诊断条件的情况下,通过远程诊断客户端中的诊断脚本引擎调用目标诊断协议栈执行目标诊断脚本文件,以对目标车辆进行故障诊断。
64.本实施例中的技术方案,通过将使用比较频繁的基础诊断对应的目标诊断脚本文件和目标诊断条件预先存储在远程诊断客户端中,避免频繁地从远程诊断服务端中获取目标诊断脚本文件,从而提升了诊断效率。
65.在一实施例中,图5是本发明实施例提供的又一种故障诊断方法的流程图,本实施例是在上述实施例的基础上,对诊断任务类型为基础诊断时,故障诊断的过程进行说明。如图5所示,该方法包括:
66.s510、接收远程诊断服务端发送的车辆诊断推送消息。
67.其中,车辆诊断推送消息中至少包括下述之一:诊断任务类型和诊断脚本信息;
68.s520、在诊断任务类型为基础诊断的情况下,根据诊断脚本信息确定远程诊断客户端的本地数据库中预先存储的诊断脚本文件的待更新情况。
69.其中,待更新情况用于表征本地数据库中预先存储的诊断脚本文件与诊断脚本信息之间的匹配情况。在本地数据库中预先存储的诊断脚本文件与诊断脚本相匹配,则无需对本地数据库中预先存储的诊断脚本文件进行更新;在本地数据库中预先存储的诊断脚本文件与诊断脚本未匹配,则需要对本地数据库中预先存储的诊断脚本文件进行更新。
70.s530、在待更新情况为需要更新的情况下,将目标车辆的车辆属性信息上报至远程诊断服务端。
71.其中,车辆属性信息指的是目标车辆自身所具备的属性信息。示例性地,车辆属性信息可以包括但不限于:车辆标识和车辆ecu标识等。针对本地数据库中预先存储的诊断脚本文件与诊断脚本未匹配的情况,则需要对地数据库中预先存储的诊断脚本文件进行更新,此时需要通过远程诊断客户端将目标车辆的车辆属性信息上报至远程诊断服务端。
72.s540、接收远程诊断服务端下发的与车辆属性信息相匹配的最新诊断脚本文件和对应的最新诊断条件,并将最新诊断脚本文件和对应的最新诊断条件作为目标诊断脚本文件和对应的目标诊断条件。
73.在远程诊断服务端接收到远程诊断客户端上报的目标车辆的车辆属性信息之后,远程诊断服务端根据车辆属性信息,判断是否存在对应的诊断脚本文件可以下发;若存在,则向远程诊断客户端下发与车辆属性信息相匹配的最新诊断脚本文件和对应的最新诊断条件,并将最新诊断脚本文件作为对应的目标诊断脚本文件,以及将最新诊断脚本文件对应的最新诊断条件作为对应的目标诊断条件。
74.s550、在待更新情况为无需更新的情况下,直接从远程诊断客户端的本地数据库中获取预先存储的诊断脚本文件和对应的诊断条件。
75.针对本地数据库中预先存储的诊断脚本文件与诊断脚本相匹配的情况,则无需对本地数据库中预先存储的诊断脚本文件进行更新,可以直接从远程诊断客户端的本地数据库中获取预先存储的诊断脚本文件和对应的诊断条件。
76.s560、将预先存储的诊断脚本文件和对应的诊断条件分别作为对应的目标诊断脚本文件和对应的目标诊断条件。
77.通过远程诊断客户端中的诊断客户端将预先存储的诊断脚本文件作为对应的目标诊断脚本文件,以及与目标诊断脚本文件对应的诊断条件作为目标诊断条件。
78.s570、根据目标诊断脚本文件对应的诊断脚本逻辑调用对应的目标诊断协议栈。
79.s580、在目标车辆的当前运行状态满足目标诊断条件的情况下,采用目标诊断协议栈,并基于目标诊断脚本文件对目标车辆进行故障诊断。
80.需要说明的是,对s570-s580的解释,可参见上述实施例中s440-s450的对应描述,在此不再赘述。
81.本实施例的技术方案,在远程诊断客户端的本地数据库中预先存储的诊断脚本文件需要更新的情况下,才从远程诊断服务端获取对应的诊断脚本文件和诊断条件;否则,直接从远程诊断客户端的本地数据库中获取预先存储的诊断脚本文件和对应的诊断条件,避免频繁地从远程诊断服务端中获取目标诊断脚本文件,从而提升了诊断效率。
82.在一实施例中,图6是本发明实施例提供的再一种故障诊断方法的流程图,本实施例是在上述实施例的基础上,对诊断任务类型为脚本诊断时,故障诊断的过程进行说明。如图6所示,该方法包括:
83.s610、接收远程诊断服务端发送的车辆诊断推送消息。
84.其中,车辆诊断推送消息中至少包括下述之一:诊断任务类型和诊断脚本信息。
85.s620、在诊断任务类型为脚本诊断的情况下,将目标车辆的车辆属性信息上报至远程诊断服务端。
86.s630、接收远程诊断服务端下发的与车辆属性信息相匹配的最新诊断脚本文件和和对应的最新诊断条件,并将最新诊断脚本文件和对应的最新诊断条件作为目标诊断脚本文件和对应的目标诊断条件。
87.s640、根据目标诊断脚本文件对应的诊断脚本逻辑调用对应的目标诊断协议栈。
88.s650、在目标车辆的当前运行状态满足目标诊断条件的情况下,采用目标诊断协议栈,并基于目标诊断脚本文件对目标车辆进行故障诊断。
89.需要说明的是,在诊断任务类型为脚本诊断的情况下,需要远程诊断客户端将目标车辆的车辆属性信息上报至远程诊断服务端,并接收远程诊断服务端下发的与车辆属性信息相匹配的最新诊断脚本文件和和对应的最新诊断条件,并按照最新诊断脚本文件和和对应的最新诊断条件进行故障诊断。
90.需要说明的是,s620中将目标车辆的车辆属性信息上报至远程诊断服务端,以及s630中接收最新断脚本文件和和对应的最新诊断条件的过程,可参见上述实施例s530-s540的描述,并且,s640-s650的解释,可参见上述实施例中的描述,在此不再赘述。
91.在一实施例中,在按照目标诊断条件和目标诊断脚本文件对目标车辆进行故障诊断之后,还包括:获取目标诊断脚本文件中每个诊断指令对应的运行结果;基于目标诊断脚本文件中与诊断指令相匹配的数据解析格式对运行结果进行解析,得到对应的诊断结果;将诊断结果和运行结果上报至远程诊断服务端。其中,数据解析格式指的是对运行结果进行解析的格式。比如,按照数据解析格式将运行结果中的某个数据解析为对应的含义。可以理解为,诊断指令与数据解析格式是一一对应的。在实施例中,远程诊断客户端获取目标诊断脚本文件中每个诊断指令的运行结果,并基于对应的数据解析格式对运行结果进行解析,得到对应的诊断结果;然后对运行结果和对应的诊断结果进行缓存;在等待整个目标诊断脚本文件中的所有诊断指令完成运行之后,将目标诊断脚本文件中所有诊断指令对应的运行结果以及对应的诊断结果上报至远程诊断服务端。
92.在一实施例中,图7是本发明实施例提供的再一种故障诊断方法的流程图。本实施例作为优选实施例,对车辆的故障诊断过程进行说明。如图7所示,本实施例中的故障诊断方法包括如下步骤:
93.s710、诊断管理平台通过推送服务器发送车辆诊断推送消息。
94.s720、是否为基础诊断,若是,则执行s730;若否,则执行s750。
95.s730、预先存储的诊断脚本文件是否需要更新,若是,则执行s750;若否,则执行s740。
96.s740、获取预先存储的诊断脚本文件和诊断条件。
97.s750、远程诊断客户端将车辆属性信息上报至远程诊断服务端。
98.s760、远程诊断服务端根据车辆属性信息判断是否存在对应的诊断脚本文件,若是,则执行s770;若否,则结束。
99.s770、诊断管理平台下发最新诊断脚本文件和对应的最新诊断条件。
100.s780、目标车辆的当前运行状态是否满足最新诊断条件,若是,则执行s7100;若否,则执行s790。
101.s790、监测目标车辆的当前运行状态的变化情况。
102.s7100、通过诊断脚本引擎执行诊断脚本文件。
103.s7110、将诊断结果和运行结果上报至远程诊断服务端。
104.在一实施例中,图8是本发明实施例提供的再一种故障诊断方法的流程图。本实施例作为优选实施例,对车辆的故障诊断过程进行说明。如图8所示,本实施例中的故障诊断方法包括如下步骤:
105.s810、诊断管理平台通过推送服务器发送车辆诊断推送消息。
106.s820、是否为基础诊断,若是,则执行s830;若否,则执行s840。
107.s830、获取预先存储的诊断脚本文件和诊断条件。
108.s840、远程诊断客户端将车辆属性信息上报至远程诊断服务端。
109.s850、远程诊断服务端根据车辆属性信息判断是否存在对应的诊断脚本文件,若是,则执行s860;若否,则结束。
110.s860、诊断管理平台下发最新诊断脚本文件和对应的最新诊断条件。
111.s870、目标车辆的当前运行状态是否满足最新诊断条件,若是,则执行s890;若否,则执行s880。
112.s880、监测目标车辆的当前运行状态的变化情况。
113.s890、通过诊断脚本引擎执行诊断脚本文件。
114.s8100、将诊断结果和运行结果上报至远程诊断服务端。
115.需要说明的是,如图8所示的故障诊断过程,与如图7所示的故障诊断过程的区别是:对于基础诊断,无需检查本地数据库中预先存储的诊断脚本是否需要更新。对于需要更新基础诊断脚本的情况,都走脚本诊断的流程。
116.在一实施例中,图9是本发明实施例提供的另一种故障诊断系统的结构框图。如图9所示,本实施例中的故障诊断系统包括如下结构:
117.诊断管理平台101(云端)主要是将诊断数据库(odx/excel等格式)和对应的诊断序列(otx或自定义的格式)合成为诊断脚本文件,并下发给车端位于主节点(通常为tbox,根据实际项目的具体情况,可以调整)的诊断客户端201,诊断客户端201将该诊断脚本发给诊断脚本引擎202,诊断脚本引擎202负责解析诊断脚本并根据诊断脚本的内容对相关ecu进行诊断。诊断脚本采用解释性语言(lua/js等)进行编写,诊断脚本引擎202内集成了对应的虚拟机,保证解释性语言的代码能被执行并与下层的诊断协议栈(uds/doip)203进行交互。可以在不改变车端诊断应用代码的情况下,通过不同的诊断脚本逻辑,以实现不同的诊
断功能。
118.在一实施例中,图10是本发明实施例提供的一种故障诊断装置的结构示意图。如图10所示,该装置包括:接收模块1010、第一获取模块1020和诊断模块1030。
119.其中,接收模块1010,用于接收远程诊断服务端发送的车辆诊断推送消息;其中,车辆诊断推送消息中至少包括下述之一:诊断任务类型和诊断脚本信息;
120.第一获取模块1020,用于根据诊断任务类型和/或诊断脚本信息获取对应的目标诊断脚本文件和对应的目标诊断条件;其中,目标诊断脚本文件由诊断数据库和诊断序列转换得到,并且,目标诊断脚本文件为解释性语言文件;
121.诊断模块1030,用于按照目标诊断条件和目标诊断脚本文件对目标车辆进行故障诊断。
122.在一实施例中,获取模块,包括:
123.第一获取单元,用于在诊断任务类型为基础诊断的情况下,直接从远程诊断客户端的本地数据库中获取预先存储的诊断脚本文件和对应的诊断条件;
124.第二获取单元,用于将预先存储的诊断脚本文件和对应的诊断条件分别作为对应的目标诊断脚本文件和对应的目标诊断条件。
125.在一实施例中,获取模块,包括:
126.第一确定单元,用于在诊断任务类型为基础诊断的情况下,根据诊断脚本信息确定远程诊断客户端的本地数据库中预先存储的诊断脚本文件的待更新情况;
127.第一上报单元,用于在待更新情况为需要更新的情况下,将目标车辆的车辆属性信息上报至远程诊断服务端;
128.第一接收单元,用于接收远程诊断服务端下发的与车辆属性信息相匹配的最新诊断脚本文件和对应的最新诊断条件,并将最新诊断脚本文件和对应的最新诊断条件作为目标诊断脚本文件和对应的目标诊断条件。
129.在一实施例中,获取模块,包括:
130.第二上报单元,用于在诊断任务类型为脚本诊断的情况下,将目标车辆的车辆属性信息上报至远程诊断服务端;
131.第二接收单元,用于接收远程诊断服务端下发的与车辆属性信息相匹配的最新诊断脚本文件和和对应的最新诊断条件,并将最新诊断脚本文件和对应的最新诊断条件作为目标诊断脚本文件和对应的目标诊断条件。
132.在一实施例中,诊断模块,包括:
133.调用单元,用于根据目标诊断脚本文件对应的诊断脚本逻辑调用对应的目标诊断协议栈;
134.诊断单元,用于在目标车辆的当前运行状态满足目标诊断条件的情况下,采用目标诊断协议栈,并基于目标诊断脚本文件对目标车辆进行故障诊断。
135.在一实施例中,在按照目标诊断条件和目标诊断脚本文件对目标车辆进行故障诊断之后,故障诊断装置,还包括:
136.第二获取模块,用于获取目标诊断脚本文件中每个诊断指令对应的运行结果;
137.解析模块,用于基于目标诊断脚本文件中与诊断指令相匹配的数据解析格式对运行结果进行解析,得到对应的诊断结果;
138.上报模块,用于将诊断结果和运行结果上报至远程诊断服务端。
139.在一实施例中,在诊断脚本信息为空的情况下,确定诊断任务类型为基础诊断;
140.在诊断脚本信息为非空的情况下,确定诊断任务类型为脚本诊断。
141.在一实施例中,车辆诊断脚本文件包括:诊断通讯信息和诊断数据信息;
142.其中,诊断通讯信息至少包括:待诊断的电子控制单元ecu的访问信息;
143.诊断数据信息至少包括:指令执行顺序、诊断数据和运行结果处理。
144.本发明实施例所提供的故障诊断装置可执行本发明任意实施例所提供的故障诊断方法,具备执行方法相应的功能模块和有益效果。
145.在一实施例中,图11是本发明实施例提供的一种故障诊断设备的结构框图,如图11所示,示出了可以用来实施本发明的实施例的故障诊断设备10的结构示意图。故障诊断设备旨在表示各种形式的数字计算机,诸如,膝上型计算机、台式计算机、工作台、个人数字助理、服务器、刀片式服务器、大型计算机、和其它适合的计算机。故障诊断设备还可以表示各种形式的移动装置,诸如,个人数字处理、蜂窝电话、智能电话、可穿戴设备(如头盔、眼镜、手表等)和其它类似的计算装置。本文所示的部件、它们的连接和关系、以及它们的功能仅仅作为示例,并且不意在限制本文中描述的和/或者要求的本发明的实现。
146.如图11所示,故障诊断设备10包括至少一个处理器11,以及与至少一个处理器11通信连接的存储器,如只读存储器(rom)12、随机访问存储器(ram)13等,其中,存储器存储有可被至少一个处理器执行的计算机程序,处理器11可以根据存储在只读存储器(rom)12中的计算机程序或者从存储单元18加载到随机访问存储器(ram)13中的计算机程序,来执行各种适当的动作和处理。在ram 13中,还可存储故障诊断设备10操作所需的各种程序和数据。处理器11、rom 12以及ram 13通过总线14彼此相连。输入/输出(i/o)接口15也连接至总线14。
147.故障诊断设备10中的多个部件连接至i/o接口15,包括:输入单元16,例如键盘、鼠标等;输出单元17,例如各种类型的显示器、扬声器等;存储单元18,例如磁盘、光盘等;以及通信单元19,例如网卡、调制解调器、无线通信收发机等。通信单元19允许故障诊断设备10通过诸如因特网的计算机网络和/或各种电信网络与其他设备交换信息/数据。
148.处理器11可以是各种具有处理和计算能力的通用和/或专用处理组件。处理器11的一些示例包括但不限于中央处理单元(cpu)、图形处理单元(gpu)、各种专用的人工智能(ai)计算芯片、各种运行机器学习模型算法的处理器、数字信号处理器(dsp)、以及任何适当的处理器、控制器、微控制器等。处理器11执行上文所描述的各个方法和处理,例如故障诊断方法。
149.在一些实施例中,故障诊断方法可被实现为计算机程序,其被有形地包含于计算机可读存储介质,例如存储单元18。在一些实施例中,计算机程序的部分或者全部可以经由rom 12和/或通信单元19而被载入和/或安装到故障诊断设备10上。当计算机程序加载到ram 13并由处理器11执行时,可以执行上文描述的故障诊断方法的一个或多个步骤。备选地,在其他实施例中,处理器11可以通过其他任何适当的方式(例如,借助于固件)而被配置为执行故障诊断方法。
150.本文中以上描述的系统和技术的各种实施方式可以在数字电子电路系统、集成电路系统、场可编程门阵列(fpga)、专用集成电路(asic)、专用标准产品(assp)、芯片上系统
的系统(soc)、负载可编程逻辑设备(cpld)、计算机硬件、固件、软件、和/或它们的组合中实现。这些各种实施方式可以包括:实施在一个或者多个计算机程序中,该一个或者多个计算机程序可在包括至少一个可编程处理器的可编程系统上执行和/或解释,该可编程处理器可以是专用或者通用可编程处理器,可以从存储系统、至少一个输入装置、和至少一个输出装置接收数据和指令,并且将数据和指令传输至该存储系统、该至少一个输入装置、和该至少一个输出装置。
151.用于实施本发明的方法的计算机程序可以采用一个或多个编程语言的任何组合来编写。这些计算机程序可以提供给通用计算机、专用计算机或其他可编程数据处理装置的处理器,使得计算机程序当由处理器执行时使流程图和/或框图中所规定的功能/操作被实施。计算机程序可以完全在机器上执行、部分地在机器上执行,作为独立软件包部分地在机器上执行且部分地在远程机器上执行或完全在远程机器或服务器上执行。
152.在本发明的上下文中,计算机可读存储介质可以是有形的介质,其可以包含或存储以供指令执行系统、装置或设备使用或与指令执行系统、装置或设备结合地使用的计算机程序。计算机可读存储介质可以包括但不限于电子的、磁性的、光学的、电磁的、红外的、或半导体系统、装置或设备,或者上述内容的任何合适组合。备选地,计算机可读存储介质可以是机器可读信号介质。机器可读存储介质的更具体示例会包括基于一个或多个线的电气连接、便携式计算机盘、硬盘、随机存取存储器(ram)、只读存储器(rom)、可擦除可编程只读存储器(eprom或快闪存储器)、光纤、便捷式紧凑盘只读存储器(cd-rom)、光学储存设备、磁储存设备、或上述内容的任何合适组合。
153.为了提供与用户的交互,可以在故障诊断设备上实施此处描述的系统和技术,该故障诊断设备具有:用于向用户显示信息的显示装置(例如,crt(阴极射线管)或者lcd(液晶显示器)监视器);以及键盘和指向装置(例如,鼠标或者轨迹球),用户可以通过该键盘和该指向装置来将输入提供给故障诊断设备。其它种类的装置还可以用于提供与用户的交互;例如,提供给用户的反馈可以是任何形式的传感反馈(例如,视觉反馈、听觉反馈、或者触觉反馈);并且可以用任何形式(包括声输入、语音输入或者、触觉输入)来接收来自用户的输入。
154.可以将此处描述的系统和技术实施在包括后台部件的计算系统(例如,作为数据服务器)、或者包括中间件部件的计算系统(例如,应用服务器)、或者包括前端部件的计算系统(例如,具有图形用户界面或者网络浏览器的用户计算机,用户可以通过该图形用户界面或者该网络浏览器来与此处描述的系统和技术的实施方式交互)、或者包括这种后台部件、中间件部件、或者前端部件的任何组合的计算系统中。可以通过任何形式或者介质的数字数据通信(例如,通信网络)来将系统的部件相互连接。通信网络的示例包括:局域网(lan)、广域网(wan)、区块链网络和互联网。
155.计算系统可以包括客户端和服务器。客户端和服务器一般远离彼此并且通常通过通信网络进行交互。通过在相应的计算机上运行并且彼此具有客户端-服务器关系的计算机程序来产生客户端和服务器的关系。服务器可以是云服务器,又称为云计算服务器或云主机,是云计算服务体系中的一项主机产品,以解决了传统物理主机与vps服务中,存在的管理难度大,业务扩展性弱的缺陷。
156.应该理解,可以使用上面所示的各种形式的流程,重新排序、增加或删除步骤。例
如,本发明中记载的各步骤可以并行地执行也可以顺序地执行也可以不同的次序执行,只要能够实现本发明的技术方案所期望的结果,本文在此不进行限制。
157.上述具体实施方式,并不构成对本发明保护范围的限制。本领域技术人员应该明白的是,根据设计要求和其他因素,可以进行各种修改、组合、子组合和替代。任何在本发明的精神和原则之内所作的修改、等同替换和改进等,均应包含在本发明保护范围之内。
技术特征:
1.一种故障诊断方法,其特征在于,应用于远程诊断客户端,包括:接收远程诊断服务端发送的车辆诊断推送消息;其中,所述车辆诊断推送消息中至少包括下述之一:诊断任务类型和诊断脚本信息;根据所述诊断任务类型和/或所述诊断脚本信息获取对应的目标诊断脚本文件和对应的目标诊断条件;其中,所述目标诊断脚本文件由诊断数据库和诊断序列转换得到,并且,所述目标诊断脚本文件为解释性语言文件;按照所述目标诊断条件和所述目标诊断脚本文件对目标车辆进行故障诊断。2.根据权利要求1所述的方法,其特征在于,所述根据所述诊断任务类型获取对应的目标诊断脚本文件和对应的目标诊断条件,包括:在所述诊断任务类型为基础诊断的情况下,直接从所述远程诊断客户端的本地数据库中获取预先存储的诊断脚本文件和对应的诊断条件;将所述预先存储的诊断脚本文件和对应的诊断条件分别作为对应的目标诊断脚本文件和对应的目标诊断条件。3.根据权利要求1所述的方法,其特征在于,所述根据所述诊断任务类型和所述诊断脚本信息获取对应的目标诊断脚本文件和对应的目标诊断条件,包括:在所述诊断任务类型为基础诊断的情况下,根据所述诊断脚本信息确定所述远程诊断客户端的本地数据库中预先存储的诊断脚本文件的待更新情况;在所述待更新情况为需要更新的情况下,将所述目标车辆的车辆属性信息上报至所述远程诊断服务端;接收所述远程诊断服务端下发的与所述车辆属性信息相匹配的最新诊断脚本文件和对应的最新诊断条件,并将所述最新诊断脚本文件和对应的最新诊断条件作为目标诊断脚本文件和对应的目标诊断条件。4.根据权利要求1所述的方法,其特征在于,所述根据所述诊断任务类型和所述诊断脚本信息获取对应的目标诊断脚本文件和对应的目标诊断条件,包括:在所述诊断任务类型为脚本诊断的情况下,将所述目标车辆的车辆属性信息上报至所述远程诊断服务端;接收所述远程诊断服务端下发的与所述车辆属性信息相匹配的最新诊断脚本文件和和对应的最新诊断条件,并将所述最新诊断脚本文件和对应的最新诊断条件作为目标诊断脚本文件和对应的目标诊断条件。5.根据权利要求1所述的方法,其特征在于,所述按照所述目标诊断条件和所述目标诊断脚本文件对目标车辆进行故障诊断,包括:根据所述目标诊断脚本文件对应的诊断脚本逻辑调用对应的目标诊断协议栈;在所述目标车辆的当前运行状态满足所述目标诊断条件的情况下,采用所述目标诊断协议栈,并基于所述目标诊断脚本文件对目标车辆进行故障诊断。6.根据权利要求1-5中任一项所述的方法,其特征在于,在所述按照所述目标诊断条件和所述目标诊断脚本文件对目标车辆进行故障诊断之后,还包括:获取所述目标诊断脚本文件中每个诊断指令对应的运行结果;基于所述目标诊断脚本文件中与所述诊断指令相匹配的数据解析格式对所述运行结果进行解析,得到对应的诊断结果;
将所述诊断结果和所述运行结果上报至所述远程诊断服务端。7.根据权利要求1-5中任一项所述的方法,其特征在于,在所述诊断脚本信息为空的情况下,确定所述诊断任务类型为基础诊断;在所述诊断脚本信息为非空的情况下,确定所述诊断任务类型为脚本诊断。8.根据权利要求1-5中任一项所述的方法,其特征在于,所述诊断脚本文件包括:诊断通讯信息和诊断数据信息;其中,所述诊断通讯信息至少包括:待诊断的电子控制单元ecu的访问信息;所述诊断数据信息至少包括:指令执行顺序、诊断数据和运行结果处理。9.一种故障诊断系统,其特征在于,包括:远程诊断服务端和远程诊断客户端;其中,所述远程诊断服务端包括:诊断管理平台、推送服务器和内容分发网络;所述远程诊断客户端包括:诊断客户端和诊断脚本引擎;通过所述诊断管理平台将诊断数据库和对应的诊断序列合成为对应的诊断脚本文件;在诊断客户端接收到推送服务器发送的携带诊断任务类型和/或诊断脚本信息的车辆诊断推送消息的情况下,所述诊断客户端基于所述诊断任务类型和/或所述诊断脚本信息接收内容分发网络下发的对应目标诊断脚本文件和对应的目标诊断条件,并将所述目标诊断脚本文件发送至所述诊断脚本引擎,以使所述诊断脚本引擎解析所述目标诊断脚本文件,并按照所述目标诊断条件和所述目标诊断脚本文件对目标车辆进行故障诊断;其中,所述目标诊断脚本文件通过所述诊断管理平台将诊断数据库和对应的诊断序列转换得到,并且,所述目标诊断脚本文件为解释性语言文件。10.一种故障诊断设备,其特征在于,所述故障诊断设备包括:至少一个处理器;以及与所述至少一个处理器通信连接的存储器;其中,所述存储器存储有可被所述至少一个处理器执行的计算机程序,所述计算机程序被所述至少一个处理器执行,以使所述至少一个处理器能够执行权利要求1-8中任一项所述的故障诊断方法。11.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有计算机指令,所述计算机指令用于使处理器执行时实现权利要求1-8中任一项所述的故障诊断方法。
技术总结
本发明公开了一种故障诊断方法、系统、设备及介质。该方法包括:接收远程诊断服务端发送的车辆诊断推送消息;其中,车辆诊断推送消息中至少包括下述之一:诊断任务类型和诊断脚本信息;根据诊断任务类型和/或诊断脚本信息获取对应的目标诊断脚本文件和对应的目标诊断条件;其中,目标诊断脚本文件由诊断数据库和诊断序列转换得到,并且,目标诊断脚本文件为解释性语言文件;按照目标诊断条件和目标诊断脚本文件对目标车辆进行故障诊断。本发明省去了远程诊断客户端解析诊断序列并频繁地读取诊断数据库的操作,减轻了远程诊断客户端的负荷,提升了诊断任务的运行效率;同时对诊断任务类型进行分区,提升了诊断效率。提升了诊断效率。提升了诊断效率。
技术研发人员:陈禧
受保护的技术使用者:成都市卡蛙科技有限公司
技术研发日:2023.08.29
技术公布日:2023/10/19
版权声明
本文仅代表作者观点,不代表航家之家立场。
本文系作者授权航家号发表,未经原创作者书面授权,任何单位或个人不得引用、复制、转载、摘编、链接或以其他任何方式复制发表。任何单位或个人在获得书面授权使用航空之家内容时,须注明作者及来源 “航空之家”。如非法使用航空之家的部分或全部内容的,航空之家将依法追究其法律责任。(航空之家官方QQ:2926969996)
航空之家 https://www.aerohome.com.cn/
航空商城 https://mall.aerohome.com.cn/
航空资讯 https://news.aerohome.com.cn/