一种车辆诊断方法、系统、电子设备及可读存储介质与流程

文档序号:31605857发布日期:2022-09-21 10:37阅读:177来源:国知局
一种车辆诊断方法、系统、电子设备及可读存储介质与流程

1.本技术涉及车辆技术领域,具体涉及一种车辆诊断方法、系统、电子设备及可读存储介质。


背景技术:

2.随着汽车智能化程度越来越高、汽车上电子控制单元的逐渐增多以及汽车架构的迭代更新,主机厂也就提供了更多可对车操作的方式,除去传统的本地操作,还可以对汽车进行远程诊断、远程控车以及ota(over-the-air technology,空中下载技术,简称ota)等。在传统的维修场景中,当出现车辆出现故障时,用户开车进站,维修工程师只能在现场通过obd(on-board diagnostics,车载自诊断系统,简称obd)诊断接口用本地诊断仪对车辆进行诊断,不存在功能干扰的情况。但是随着上述可支持的操作方式的增多,就可能存在本地诊断、远程诊断、远程控车以及ota同时发生的场景,若不能进行有效规划,会严重影响各项业务的正常运行。
3.此外,当前汽车行业内针对诊断冲突的管理是根据诊断优先级进行划分的。例如当远程诊断与传统的本地诊断之间产生冲突时,部分现有技术是以本地诊断为主,发送指令及时断开或关闭远程诊断的通信模块,禁止远程诊断的执行。但这样的解决方案过于一刀切了,没有考虑到真正需要使用远程诊断功能,obd接口被占用的情况。即现有技术通过设置优先级来控制本地诊断和远程诊断的执行顺序,同时本地诊断的优先级始终是高于远程诊断的,当本地诊断obd接口一直在使用时,远程诊断是无法执行的。
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.本技术首先接收外部终端设备发出的车辆诊断请求,然后基于车辆诊断请求获取待诊断车辆中区域控制器的接口状态;再根据区域控制器的接口状态,建立外部终端设备与待诊断车辆的连接,以对待诊断车辆进行本地诊断或远程诊断;或者,根据区域控制器的接口状态,拒绝外部终端设备接入待诊断车辆。其中,区域控制器的接口状态包括:区域控制器的诊断接口状态、区域控制器的升级刷写接口状态。由此可知,本技术在进行车辆诊断时,不再进行本地诊断与远程诊断的优先级区分,而是将本地诊断与远程诊断置于相同的优先级。同时,在相同优先级下,本技术就可以按照接收车辆诊断请求的时间先后顺序来对
待诊断车辆进行对应的诊断,从而可以避免本地诊断obd接口被占用但未进行本地诊断时,远程诊断无法执行的问题。所以,通过本技术记载的车辆诊断方案,后期主机厂的产品工程师、售后专家可以直接在线远程诊断,不仅可以提高对问题车辆的解决效率,而且还可以减少用户的投诉抱怨,增加用户的使用满意度。
29.应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本技术。
附图说明
30.此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本技术的实施例,并与说明书一起用于解释本技术的原理。显而易见地,下面描述中的附图仅仅是本技术的一些实施例,对于本领域普通技术者来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。在附图中:
31.图1为应用本技术中一个或多个实施例中技术方案的示例性系统架构的示意图;
32.图2为本技术中一实施例提供的车辆诊断方法的流程示意图;
33.图3为本技术中一实施例提供的车辆诊断方法的架构示意图;
34.图4为本技术中一实施例提供的车辆诊断系统的硬件结构示意图;
35.图5为适用于实现本技术中一个或多个实施例的电子设备的硬件结构示意图。
具体实施方式
36.以下将参照附图和优选实施例来说明本发明的实施方式,本领域技术人员可由本说明书中所揭露的内容轻易地了解本发明的其他优点与功效。本发明还可以通过另外不同的具体实施方式加以实施或应用,本说明书中的各项细节也可以基于不同观点与应用,在没有背离本发明的精神下进行各种修饰或改变。应当理解,优选实施例仅为了说明本发明,而不是为了限制本发明的保护范围。
37.需要说明的是,以下实施例中所提供的图示仅以示意方式说明本发明的基本构想,遂图式中仅显示与本发明中有关的组件而非按照实际实施时的组件数目、形状及尺寸绘制,其实际实施时各组件的型态、数量及比例可为一种随意的改变,且其组件布局型态也可能更为复杂。
38.在下文描述中,探讨了大量细节,以提供对本发明实施例的更透彻的解释,然而,对本领域技术人员来说,可以在没有这些具体细节的情况下实施本发明的实施例是显而易见的,在其他实施例中,以方框图的形式而不是以细节的形式来示出公知的结构和设备,以避免使本发明的实施例难以理解。
39.图1示出了一种可以应用本技术中一个或多个实施例中技术方案的示例性系统架构的示意图。如图1所示,系统架构100可以包括终端设备110、网络120和服务器130。终端设备110可以包括智能手机、平板电脑、笔记本电脑、台式电脑等各种电子设备。服务器130可以是独立的物理服务器,也可以是多个物理服务器构成的服务器集群或者分布式系统,还可以是提供云计算服务的云服务器。网络120可以是能够在终端设备110和服务器130之间提供通信链路的各种连接类型的通信介质,例如可以是有线通信链路或者无线通信链路。
40.根据实现需要,本技术实施例中的系统架构可以具有任意数目的终端设备、网络
和服务器。例如,服务器130可以是由多个服务器设备组成的服务器群组。另外,本技术实施例提供的技术方案可以应用于终端设备110,也可以应用于服务器130,或者可以由终端设备110和服务器130共同实施,本技术对此不做特殊限定。
41.在本技术的一个实施例中,本技术的终端设备110或服务器130可以首先接收外部终端设备发出的车辆诊断请求,然后基于车辆诊断请求获取待诊断车辆中区域控制器的接口状态;再根据区域控制器的接口状态,建立外部终端设备与待诊断车辆的连接,以对待诊断车辆进行本地诊断或远程诊断;或者,根据区域控制器的接口状态,拒绝外部终端设备接入待诊断车辆。利用终端设备110或服务器130执行车辆诊断方法,可以在进行车辆诊断时,不再进行本地诊断与远程诊断的优先级区分,而是将本地诊断与远程诊断置于相同的优先级。同时,在相同优先级下,可以按照接收车辆诊断请求的时间先后顺序来对待诊断车辆进行对应的诊断,从而可以避免本地诊断obd接口被占用但未进行本地诊断时,远程诊断无法执行的问题。所以,通过执行车辆诊断方案,后期主机厂的产品工程师、售后专家可以直接在线远程诊断,不仅可以提高对问题车辆的解决效率,而且还可以减少用户的投诉抱怨,增加用户的使用满意度。
42.以上部分介绍了应用本技术技术方案的示例性系统架构的内容,接下来继续介绍本技术的车辆诊断方法。
43.图2示出了本技术一实施例提供的车辆诊断方法流程示意图。具体地,在一示例性实施例中,如图2所示,本实施例提供一种车辆诊断方法,该方法包括以下步骤:
44.s210,接收外部终端设备发出的车辆诊断请求。作为示例,本实施例中的车辆诊断请求可以包括:对待诊断车辆进行本地诊断的请求,记为车辆本地诊断请求;以及,对待诊断车辆进行远程诊断的请求,记为车辆远程诊断请求。其中,本实施例中的待诊断车辆包括但不限于:全自动驾驶车辆、半自动驾驶车辆、普通机动驾驶车辆。
45.s220,基于所述车辆诊断请求获取待诊断车辆中区域控制器的接口状态;其中,所述区域控制器的接口状态包括:所述区域控制器的诊断接口状态、所述区域控制器的升级刷写接口状态。作为示例,本实施例中区域控制器的诊断接口包括本地诊断接口和远程诊断接口。
46.s230,根据所述区域控制器的接口状态,建立所述外部终端设备与所述待诊断车辆的连接,以对所述待诊断车辆进行本地诊断或远程诊断;或者,根据所述区域控制器的接口状态,拒绝所述外部终端设备接入所述待诊断车辆。
47.由此可知,本实施例在进行车辆诊断时,不再进行本地诊断与远程诊断的优先级区分,而是将本地诊断与远程诊断置于相同的优先级。同时,在相同优先级下,本实施例就可以按照接收车辆诊断请求的时间先后顺序来对待诊断车辆进行对应的诊断,从而可以避免本地诊断obd接口被占用但未进行本地诊断时,远程诊断无法执行的问题。所以,通过本实施例记载的车辆诊断方案,后期主机厂的产品工程师、售后专家可以直接在线远程诊断,不仅可以提高对问题车辆的解决效率,而且还可以减少用户的投诉抱怨,增加用户的使用满意度。
48.在一示例性实施例中,基于所述车辆诊断请求获取待诊断车辆中区域控制器的接口状态后,所述方法还包括:
49.获取所述区域控制器的诊断报文接收状态;
50.若所述区域控制器在预设时间段内未接收到诊断报文,则标记所述待诊断车辆的诊断状态为诊断结束,并基于标记结果调整所述区域控制器的接口状态,以使调整后所述区域控制器的接口状态与调整前所述区域控制器的接口状态处于相反工作状态;
51.若所述区域控制器在预设时间段内持续接收到诊断报文,则标记所述待诊断车辆的诊断状态为正在诊断,并基于标记结果维持所述区域控制器的接口状态。
52.作为示例,具体地,在获取到待诊断车辆中区域控制器的接口状态后,继续获取所述区域控制器的诊断报文接收状态,并判断区域控制器在预设时间段内是否接收到诊断报文。如果区域控制器在预设时间段内未接收到诊断报文,则说明此时待诊断车辆未处于诊断状态,此时就可以标记待诊断车辆的诊断状态为诊断结束,从而方便根据后续接收的车辆诊断请求来让对应的外部设备接入待诊断车辆,并进行对应的诊断操作。如果区域控制器在预设时间段内持续接收到诊断报文,则说明此时待诊断车辆处于诊断状态,此时就需要拒绝后续接收到的车辆诊断请求,从而保证车辆始终处于一种诊断状态。相当于本实施例设置了诊断冲突管理原则,在同一时刻仅允许一种诊断功能执行,即在某一种诊断相关功能执行过程中不允许其他类型诊断功能执行。例如在执行本地诊断时,若接收车辆远程诊断请求,则此时直接拒绝车辆远程诊断请求,仍然维持本地诊断。其中,本实施例中的预设时间段可以根据实际情况进行设定,本实施例不做具体数值限定。例如,可以将预设时间段设置为5秒。
53.根据上述记载,在一示例性实施例中,当所述区域控制器的诊断接口状态为关闭状态以及所述升级刷写接口状态为关闭状态时,建立所述外部终端设备与所述待诊断车辆的连接,以对所述待诊断车辆进行本地诊断或远程诊断。或者,当所述区域控制器的诊断接口状态为开启状态时,拒绝所述外部终端设备接入所述待诊断车辆。或者,当所述区域控制器的升级刷写接口状态为开启状态时,拒绝所述外部终端设备接入所述待诊断车辆。其中,本实施例可以将关闭状态用数值0表示,开启状态用数值1表示。在初始状态下,区域控制器的诊断接口状态和升级刷写接口状态均为关闭状态,即在初始状态下,区域控制器的本地诊断接口状态为数值0,区域控制器的远程诊断接口状态为数值0,区域控制器的升级刷写接口状态为数值0。
54.具体地,作为一示例,在某个时刻下,若此时区域控制器接收到外部设备发出的车辆本地诊断请求,则区域控制器会先判别本地诊断接口状态、远程诊断接口状态和升级刷写接口状态在当前时刻的数值状态,如果此时区域控制器的本地诊断接口状态为数值0,区域控制器的远程诊断接口状态为数值0,区域控制器的升级刷写接口状态为数值0;那么此时就需要建立外部终端设备与待诊断车辆的通信连接,从而方便外部终端设备对待诊断车辆进行本地诊断。同时,区域控制器会将本地诊断接口状态由数值0变成数值1。在外部终端设备对待诊断车辆进行本地诊断过程中,区域控制器还会持续接收外部终端设备发出的车辆诊断请求,并同时会记录区域控制器自身接收的诊断报文,如果在5秒内没有收到任何诊断报文,则标记本地诊断结束,并将本地诊断接口状态由数值1变成数值0。
55.作为另一示例,在某个时刻下,若此时区域控制器接收到外部设备发出的车辆本地诊断请求,则区域控制器会先判别本地诊断接口状态、远程诊断接口状态和升级刷写接口状态在当前时刻的数值状态,如果此时区域控制器的本地诊断接口状态为数值0,区域控制器的远程诊断接口状态为数值1,区域控制器的升级刷写接口状态为数值0;那么此时就
需要拒绝外部终端设备接入待诊断车辆,从而保证待诊断车辆始终处于一种诊断状态。同时,区域控制器还会持续接收外部终端设备发出的车辆诊断请求,并同时会记录区域控制器自身接收的诊断报文,如果在5秒内没有收到任何诊断报文,则标记本地诊断结束,并将远程诊断接口状态由数值1变成数值0。
56.在本技术一示例性实施例中,图3示出了一种实施车辆诊断方法的架构示意图。在图3中,整车诊断方法有四种诊断相关功能:(1)本地obd口诊断;(2)远程诊断;(3)ota读取软件版本信息;(4)ota刷写。并且整个诊断冲突管理原则是同一时刻仅允许一种诊断相关功能执行,即在某一种诊断相关功能执行过程中不允许其他类型诊断功能执行;例如本地诊断执行时,若收到远程诊断请求,则将拒绝远程诊断。同时,诊断冲突管理规则需要由区域控制器viu_fl、车载通讯基础终端t_box和体验驱动计算机edc共同配合完成。具体配合规则如下:
57.(1)区域控制器viu_fl统一管理本地诊断、远程诊断、ota读取软件版本信息、ota刷写间的冲突,车载通讯基础终端t_box在执行远程诊断前,或体验驱动计算机edc在执行ota读取软件版本信息/刷写前,需要向区域控制器viu_fl确认当前状态是否可执行对应操作。
58.(2)车载通讯基础终端t_box、体验驱动计算机edc通过调用dds_rpc方法与区域控制器viu_fl确认上述可执行操作的状态。dds_rpc方法,是指dds中的rpc方法,dds(data distribution service,),是指数据分发服务,简称dds。
59.(3)在区域控制器viu_fl中部署一个管理模块,定义本地诊断接口状态、远程诊断接口状态和升级刷写接口状态这三个接口状态,从而来显示本地诊断或远程诊断(ota读版本信息)或ota刷写进行状态,车载通讯基础终端t_box以及体验驱动计算机edc通过数据分发服务dds来请求执行。
60.根据上述记载,本实施例提供的车辆诊断方法包括以下步骤:
61.1)区域控制器viu_fl统一判别本地诊断接口、远程诊断接口和ota刷写接口(或升级刷写接口)的接口状态,其中,0代表接口关闭,标识不能执行当前诊断场景;1代表接口打开,标识可以执行当前诊断场景。
62.2)车载通讯基础终端t_box和体验驱动计算机edc进行远程诊断或ota刷写之前,需要通过数据分发服务dds(data distribution service,数据分发服务,简称dds)向区域控制器viu_fl请求执行批准,区域控制器viu_fl根据当前三个接口状态判别是否批准执行。其中,只要有一个接口状态值为1,那么就把其他的执行请求否决。
63.3)区域控制器viu_f、体验驱动计算机edc和车载通讯基础终端t_box在5s以内没有收到或者发出任何诊断报文,默认当前诊断已经结束,把对应的接口状态值通过数据分发服务dds请求复位成数值0。
64.作为示例,例如本地诊断接口状态、远程诊断接口状态和升级刷写接口状态这三个诊断接口的初始值都是数值0,本地诊断介入,那么区域控制器viu_fl会先判别三个接口的初始状态,如果都是数值0,那么会把本地诊断接口状态置成数值1,本地诊断报文开始发送。在本地诊断进行期间,远程诊断介入,车载通讯基础终端t_box需要向区域控制器viu_fl请求执行批准,区域控制器viu_fl判别三个接口状态,本地诊断的接口状态为数值1,拒绝远程诊断执行并且反馈给车载通讯基础终端t_box相关信息。当区域控制器viu_fl在5秒
内没有收到任何诊断报文,默认为本地诊断结束,本地诊断接口状态置为数值0;下一个诊断场景就可以请求批准进行。
65.综上所述,本技术提供一种车辆诊断方法,首先接收外部终端设备发出的车辆诊断请求,然后基于车辆诊断请求获取待诊断车辆中区域控制器的接口状态;再根据区域控制器的接口状态,建立外部终端设备与待诊断车辆的连接,以对待诊断车辆进行本地诊断或远程诊断;或者,根据区域控制器的接口状态,拒绝外部终端设备接入待诊断车辆。其中,区域控制器的接口状态包括:区域控制器的诊断接口状态、区域控制器的升级刷写接口状态。由此可知,本方法在进行车辆诊断时,不再进行本地诊断与远程诊断的优先级区分,而是将本地诊断与远程诊断置于相同的优先级。同时,在相同优先级下,本方法就可以按照接收车辆诊断请求的时间先后顺序来对待诊断车辆进行对应的诊断,从而可以避免本地诊断obd接口被占用但未进行本地诊断时,远程诊断无法执行的问题。所以,通过本方法记载的车辆诊断方案,后期主机厂的产品工程师、售后专家可以直接在线远程诊断,不仅可以提高对问题车辆的解决效率,而且还可以减少用户的投诉抱怨,增加用户的使用满意度。
66.如图4所示,在一示例性实施例中,本技术还提供一种车辆诊断系统,所述系统包括有:
67.诊断请求模块410,用于接收外部终端设备发出的车辆诊断请求。作为示例,本实施例中的车辆诊断请求可以包括:对待诊断车辆进行本地诊断的请求,记为车辆本地诊断请求;以及,对待诊断车辆进行远程诊断的请求,记为车辆远程诊断请求。其中,本实施例中的待诊断车辆包括但不限于:全自动驾驶车辆、半自动驾驶车辆、普通机动驾驶车辆。
68.接口状态模块420,用于根据所述车辆诊断请求获取待诊断车辆中区域控制器的接口状态;其中,所述区域控制器的接口状态包括:所述区域控制器的诊断接口状态、所述区域控制器的升级刷写接口状态。作为示例,本实施例中区域控制器的诊断接口包括本地诊断接口和远程诊断接口。
69.车辆诊断模块430,用于根据所述区域控制器的接口状态,建立所述外部终端设备与所述待诊断车辆的连接,以对所述待诊断车辆进行本地诊断或远程诊断;或者,根据所述区域控制器的接口状态,拒绝所述外部终端设备接入所述待诊断车辆。
70.由此可知,本实施例在进行车辆诊断时,不再进行本地诊断与远程诊断的优先级区分,而是将本地诊断与远程诊断置于相同的优先级。同时,在相同优先级下,本实施例就可以按照接收车辆诊断请求的时间先后顺序来对待诊断车辆进行对应的诊断,从而可以避免本地诊断obd接口被占用但未进行本地诊断时,远程诊断无法执行的问题。所以,通过本实施例记载的车辆诊断方案,后期主机厂的产品工程师、售后专家可以直接在线远程诊断,不仅可以提高对问题车辆的解决效率,而且还可以减少用户的投诉抱怨,增加用户的使用满意度。
71.在一示例性实施例中,基于所述车辆诊断请求获取待诊断车辆中区域控制器的接口状态后,所述系统还包括:
72.获取所述区域控制器的诊断报文接收状态;
73.若所述区域控制器在预设时间段内未接收到诊断报文,则标记所述待诊断车辆的诊断状态为诊断结束,并基于标记结果调整所述区域控制器的接口状态,以使调整后所述区域控制器的接口状态与调整前所述区域控制器的接口状态处于相反工作状态;
74.若所述区域控制器在预设时间段内持续接收到诊断报文,则标记所述待诊断车辆的诊断状态为正在诊断,并基于标记结果维持所述区域控制器的接口状态。
75.作为示例,具体地,在获取到待诊断车辆中区域控制器的接口状态后,继续获取所述区域控制器的诊断报文接收状态,并判断区域控制器在预设时间段内是否接收到诊断报文。如果区域控制器在预设时间段内未接收到诊断报文,则说明此时待诊断车辆未处于诊断状态,此时就可以标记待诊断车辆的诊断状态为诊断结束,从而方便根据后续接收的车辆诊断请求来让对应的外部设备接入待诊断车辆,并进行对应的诊断操作。如果区域控制器在预设时间段内持续接收到诊断报文,则说明此时待诊断车辆处于诊断状态,此时就需要拒绝后续接收到的车辆诊断请求,从而保证车辆始终处于一种诊断状态。相当于本实施例设置了诊断冲突管理原则,在同一时刻仅允许一种诊断功能执行,即在某一种诊断相关功能执行过程中不允许其他类型诊断功能执行。例如在执行本地诊断时,若接收车辆远程诊断请求,则此时直接拒绝车辆远程诊断请求,仍然维持本地诊断。其中,本实施例中的预设时间段可以根据实际情况进行设定,本实施例不做具体数值限定。例如,可以将预设时间段设置为5秒。
76.根据上述记载,在一示例性实施例中,当所述区域控制器的诊断接口状态为关闭状态以及所述升级刷写接口状态为关闭状态时,建立所述外部终端设备与所述待诊断车辆的连接,以对所述待诊断车辆进行本地诊断或远程诊断。或者,当所述区域控制器的诊断接口状态为开启状态时,拒绝所述外部终端设备接入所述待诊断车辆。或者,当所述区域控制器的升级刷写接口状态为开启状态时,拒绝所述外部终端设备接入所述待诊断车辆。其中,本实施例可以将关闭状态用数值0表示,开启状态用数值1表示。在初始状态下,区域控制器的诊断接口状态和升级刷写接口状态均为关闭状态,即在初始状态下,区域控制器的本地诊断接口状态为数值0,区域控制器的远程诊断接口状态为数值0,区域控制器的升级刷写接口状态为数值0。
77.具体地,作为一示例,在某个时刻下,若此时区域控制器接收到外部设备发出的车辆本地诊断请求,则区域控制器会先判别本地诊断接口状态、远程诊断接口状态和升级刷写接口状态在当前时刻的数值状态,如果此时区域控制器的本地诊断接口状态为数值0,区域控制器的远程诊断接口状态为数值0,区域控制器的升级刷写接口状态为数值0;那么此时就需要建立外部终端设备与待诊断车辆的通信连接,从而方便外部终端设备对待诊断车辆进行本地诊断。同时,区域控制器会将本地诊断接口状态由数值0变成数值1。在外部终端设备对待诊断车辆进行本地诊断过程中,区域控制器还会持续接收外部终端设备发出的车辆诊断请求,并同时会记录区域控制器自身接收的诊断报文,如果在5秒内没有收到任何诊断报文,则标记本地诊断结束,并将本地诊断接口状态由数值1变成数值0。
78.作为另一示例,在某个时刻下,若此时区域控制器接收到外部设备发出的车辆本地诊断请求,则区域控制器会先判别本地诊断接口状态、远程诊断接口状态和升级刷写接口状态在当前时刻的数值状态,如果此时区域控制器的本地诊断接口状态为数值0,区域控制器的远程诊断接口状态为数值1,区域控制器的升级刷写接口状态为数值0;那么此时就需要拒绝外部终端设备接入待诊断车辆,从而保证待诊断车辆始终处于一种诊断状态。同时,区域控制器还会持续接收外部终端设备发出的车辆诊断请求,并同时会记录区域控制器自身接收的诊断报文,如果在5秒内没有收到任何诊断报文,则标记本地诊断结束,并将
远程诊断接口状态由数值1变成数值0。
79.在本技术一示例性实施例中,还提供一种车辆诊断系统,该整车诊断系统有四种诊断相关功能:(1)本地obd口诊断;(2)远程诊断;(3)ota读取软件版本信息;(4)ota刷写。并且整个诊断冲突管理原则是同一时刻仅允许一种诊断相关功能执行,即在某一种诊断相关功能执行过程中不允许其他类型诊断功能执行;例如本地诊断执行时,若收到远程诊断请求,则将拒绝远程诊断。同时,诊断冲突管理规则需要由区域控制器viu_fl、车载通讯基础终端t_box和体验驱动计算机edc共同配合完成。具体配合规则如下:
80.(1)区域控制器viu_fl统一管理本地诊断、远程诊断、ota读取软件版本信息、ota刷写间的冲突,车载通讯基础终端t_box在执行远程诊断前,或体验驱动计算机edc在执行ota读取软件版本信息/刷写前,需要向区域控制器viu_fl确认当前状态是否可执行对应操作。
81.(2)车载通讯基础终端t_box、体验驱动计算机edc通过调用dds_rpc方法与区域控制器viu_fl确认上述可执行操作的状态。dds_rpc方法,是指dds中的rpc方法,dds(data distribution service,),是指数据分发服务,简称dds。
82.(3)在区域控制器viu_fl中部署一个管理模块,定义本地诊断接口状态、远程诊断接口状态和升级刷写接口状态这三个接口状态,从而来显示本地诊断或远程诊断(ota读版本信息)或ota刷写进行状态,车载通讯基础终端t_box以及体验驱动计算机edc通过数据分发服务dds来请求执行。
83.根据上述记载,本实施例提供的车辆诊断系统可以执行以下步骤:
84.1)区域控制器viu_fl统一判别本地诊断接口、远程诊断接口和ota刷写接口(或升级刷写接口)的接口状态,其中,0代表接口关闭,标识不能执行当前诊断场景;1代表接口打开,标识可以执行当前诊断场景。
85.2)车载通讯基础终端t_box和体验驱动计算机edc进行远程诊断或ota刷写之前,需要通过数据分发服务dds(data distribution service,数据分发服务,简称dds)向区域控制器viu_fl请求执行批准,区域控制器viu_fl根据当前三个接口状态判别是否批准执行。其中,只要有一个接口状态值为1,那么就把其他的执行请求否决。
86.3)区域控制器viu_f、体验驱动计算机edc和车载通讯基础终端t_box在5s以内没有收到或者发出任何诊断报文,默认当前诊断已经结束,把对应的接口状态值通过数据分发服务dds请求复位成数值0。
87.作为示例,例如本地诊断接口状态、远程诊断接口状态和升级刷写接口状态这三个诊断接口的初始值都是数值0,本地诊断介入,那么区域控制器viu_fl会先判别三个接口的初始状态,如果都是数值0,那么会把本地诊断接口状态置成数值1,本地诊断报文开始发送。在本地诊断进行期间,远程诊断介入,车载通讯基础终端t_box需要向区域控制器viu_fl请求执行批准,区域控制器viu_fl判别三个接口状态,本地诊断的接口状态为数值1,拒绝远程诊断执行并且反馈给车载通讯基础终端t_box相关信息。当区域控制器viu_fl在5秒内没有收到任何诊断报文,默认为本地诊断结束,本地诊断接口状态置为数值0;下一个诊断场景就可以请求批准进行。
88.综上所述,本技术提供一种车辆诊断系统,首先接收外部终端设备发出的车辆诊断请求,然后基于车辆诊断请求获取待诊断车辆中区域控制器的接口状态;再根据区域控
制器的接口状态,建立外部终端设备与待诊断车辆的连接,以对待诊断车辆进行本地诊断或远程诊断;或者,根据区域控制器的接口状态,拒绝外部终端设备接入待诊断车辆。其中,区域控制器的接口状态包括:区域控制器的诊断接口状态、区域控制器的升级刷写接口状态。由此可知,本系统在进行车辆诊断时,不再进行本地诊断与远程诊断的优先级区分,而是将本地诊断与远程诊断置于相同的优先级。同时,在相同优先级下,本系统就可以按照接收车辆诊断请求的时间先后顺序来对待诊断车辆进行对应的诊断,从而可以避免本地诊断obd接口被占用但未进行本地诊断时,远程诊断无法执行的问题。所以,通过本系统记载的车辆诊断方案,后期主机厂的产品工程师、售后专家可以直接在线远程诊断,不仅可以提高对问题车辆的解决效率,而且还可以减少用户的投诉抱怨,增加用户的使用满意度。
89.需要说明的是,上述实施例所提供车辆诊断系统与上述实施例所提供的车辆诊断方法属于同一构思,其中各个模块和单元执行操作的具体方式已经在方法实施例中进行了详细描述,此处不再赘述。上述实施例所提供的车辆诊断系统在实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将系统的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能,本处也不对此进行限制。
90.本技术的实施例还提供了一种电子设备,包括:一个或多个处理器;存储装置,用于存储一个或多个程序,当所述一个或多个程序被所述一个或多个处理器执行时,使得所述电子设备实现上述各个实施例中提供的车辆诊断方法。
91.图5示出了适于用来实现本技术实施例的电子设备的计算机系统的结构示意图。需要说明的是,图5示出的电子设备的计算机系统500仅是一个示例,不应对本技术实施例的功能和使用范围带来任何限制。
92.如图5所示,计算机系统500包括中央处理单元(central processing unit,cpu)501,其可以根据存储在只读存储器(read-only memory,rom)502中的程序或者从储存部分508加载到随机访问存储器(random access memory,ram)503中的程序而执行各种适当的动作和处理,例如执行上述实施例中所述的方法。在ram 503中,还存储有系统操作所需的各种程序和数据。cpu 501、rom 502以及ram 503通过总线504彼此相连。输入/输出(input/output,i/o)接口505也连接至总线504。
93.以下部件连接至i/o接口505:包括键盘、鼠标等的输入部分506;包括诸如阴极射线管(cathode ray tube,crt)、液晶显示器(liquid crystal display,lcd)等以及扬声器等的输出部分507;包括硬盘等的储存部分508;以及包括诸如lan(local area network,局域网)卡、调制解调器等的网络接口卡的通信部分509。通信部分509经由诸如因特网的网络执行通信处理。驱动器510也根据需要连接至i/o接口505。可拆卸介质511,诸如磁盘、光盘、磁光盘、半导体存储器等等,根据需要安装在驱动器510上,以便于从其上读出的计算机程序根据需要被安装入储存部分508。
94.特别地,根据本技术的实施例,上文参考流程图描述的过程可以被实现为计算机软件程序。例如,本技术的实施例包括一种计算机程序产品,其包括承载在计算机可读介质上的计算机程序,该计算机程序包含用于执行流程图所示的方法的计算机程序。在这样的实施例中,该计算机程序可以通过通信部分509从网络上被下载和安装,和/或从可拆卸介质511被安装。在该计算机程序被中央处理单元(cpu)501执行时,执行本技术的系统中限定的各种功能。
95.需要说明的是,本技术实施例所示的计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质或者是上述两者的任意组合。计算机可读存储介质例如可以是电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子可以包括但不限于:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机访问存储器(ram)、只读存储器(rom)、可擦式可编程只读存储器(erasable programmable read only memory,eprom)、闪存、光纤、便携式紧凑磁盘只读存储器(compact disc read-only memory,cd-rom)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本技术中,计算机可读的信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的计算机程序。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。计算机可读介质上包含的计算机程序可以用任何适当的介质传输,包括但不限于:无线、有线等等,或者上述的任意合适的组合。
96.附图中的流程图和框图,图示了按照本技术各种实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。其中,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,上述模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图或流程图中的每个方框、以及框图或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
97.描述于本技术实施例中所涉及到的单元可以通过软件的方式实现,也可以通过硬件的方式来实现,所描述的单元也可以设置在处理器中。其中,这些单元的名称在某种情况下并不构成对该单元本身的限定。
98.本技术的另一方面还提供了一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被计算机的处理器执行时,使计算机执行如前所述的车辆诊断方法。该计算机可读存储介质可以是上述实施例中描述的电子设备中所包含的,也可以是单独存在,而未装配入该电子设备中。
99.本技术的另一方面还提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行上述各个实施例中提供的车辆诊断方法。
100.上述实施例仅示例性说明本技术的原理及其功效,而非用于限制本技术。任何熟悉此技术的人士皆可在不违背本技术的精神及范畴下,对上述实施例进行修饰或改变。因此,但凡所属技术领域中具有通常知识者在未脱离本技术所揭示的精神与技术思想下所完成的一切等效修饰或改变,仍应由本技术的权利要求所涵盖。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1