本发明实施例涉及汽车技术领域,尤其涉及一种车辆远程诊断系统及方法。
背景技术:
随着车辆无线技术的发展,汽车电子系统越来越复杂,如何远程快速处理车辆问题是各整车厂面临的主要问题。传统的车辆诊断方式通过车辆的车载自动诊断系统(onboarddiagnostics,obd)接口连接外界设备进行车辆非实时诊断,无法有效及时地获取故障相关信息并快速处理。
相关技术中的车辆远程诊断方式可以基于与车辆的网络连接,快速获取车辆故障及故障相关信息并对车辆进行实时诊断。但是,相关技术在车辆处于无网络环境的情况下,不能对车辆进行远程诊断。
技术实现要素:
本发明实施例提供一种车辆远程诊断系统及方法,可以根据待诊断车辆的网络状态,完成待诊断车辆的实时远程诊断。
第一方面,本发明实施例提供了一种车辆远程诊断系统,包括:诊断云平台、远端诊断服务器、近场诊断设备以及待诊断车辆的车辆控制模块;
其中,所述诊断云平台,用于获取所述待诊断车辆的网络状态;在所述网络状态为正常网络状态时,将预设的车辆诊断文件和车辆诊断脚本发送至所述远端诊断服务器;在所述网络状态为无网络状态时,将所述预设的车辆诊断文件和车辆诊断脚本发送至所述近场诊断设备;
所述车辆诊断文件中包含与车辆中的各控制器对应的诊断请求报文、以及各所述诊断请求报文的通信协议,所述车辆诊断脚本中包含与车辆中的各控制器对应的诊断操作指令;
所述远端诊断服务器,用于在接收到所述预设的车辆诊断文件和车辆诊断脚本时,通过计算机网络建立与所述待诊断车辆的车辆控制模块的通讯连接;将所述预设的车辆诊断文件和车辆诊断脚本发送至所述待诊断车辆的车辆控制模块;根据接收到的与所述预设的车辆诊断文件对应的诊断响应报文和与所述预设的车辆诊断脚本对应的指令执行结果,生成所述待诊断车辆的诊断结果;
所述近场诊断设备,用于在接收到所述预设的车辆诊断文件和车辆诊断脚本时,通过所述近场诊断设备中的通讯模块建立与所述待诊断车辆的车辆控制模块的通讯连接;将所述预设的车辆诊断文件和车辆诊断脚本发送至所述待诊断车辆的车辆控制模块;将所述待诊断车辆的车辆控制模块发送的与所述预设的车辆诊断文件对应的诊断响应报文和与所述预设的车辆诊断脚本对应的指令执行结果发送至所述远端诊断服务器;
所述待诊断车辆的车辆控制模块,用于根据各所述诊断请求报文的通信协议,将所述预设的车辆诊断文件中的各所述诊断请求报文发送至对应的所述待诊断车辆中的控制器,以使所述待诊断车辆中的各控制器发送与各所述诊断请求报文对应的响应报文;将所述预设的车辆诊断脚本中的各诊断操作指令发送至对应的所述待诊断车辆中的控制器,以使所述待诊断车辆中的各控制器执行对应的诊断操作指令并反馈指令执行结果;获取所述待诊断车辆中的各控制器发送的响应报文和指令执行结果,作为与所述预设的车辆诊断文件对应的诊断响应报文和与所述预设的车辆诊断脚本对应的指令执行结果发送至所述远端诊断服务器或所述近场诊断设备。
第二方面,本发明实施例还提供了一种车辆远程诊断方法,应用于如第一方面所述的车辆远程诊断系统中的诊断云平台中,包括:
获取待诊断车辆的网络状态;
在所述网络状态为正常网络状态时,将预设的车辆诊断文件和车辆诊断脚本发送至远端诊断服务器;
在所述网络状态为无网络状态时,将所述预设的车辆诊断文件和车辆诊断脚本发送至近场诊断设备;
其中,所述车辆诊断文件中包含与车辆中的各控制器对应的诊断请求报文、以及各所述诊断请求报文的通信协议,所述车辆诊断脚本中包含与车辆中的各控制器对应的诊断操作指令。
第三方面,本发明实施例还提供了一种车辆远程诊断方法,应用于如第一方面所述的车辆远程诊断系统中的远端诊断服务器中,包括:
在接收到预设的车辆诊断文件和车辆诊断脚本时,通过计算机网络建立与待诊断车辆的车辆控制模块的通讯连接;
将所述预设的车辆诊断文件和车辆诊断脚本发送至所述待诊断车辆的车辆控制模块;
根据接收到的与所述预设的车辆诊断文件对应的诊断响应报文和与所述预设的车辆诊断脚本对应的指令执行结果,生成所述待诊断车辆的诊断结果。
第四方面,本发明实施例还提供了一种车辆远程诊断方法,应用于如第一方面所述的车辆远程诊断系统中的近场诊断设备中,包括:
在接收到预设的车辆诊断文件和车辆诊断脚本时,通过近场诊断设备中的通讯模块建立与待诊断车辆的车辆控制模块的通讯连接;
将所述预设的车辆诊断文件和车辆诊断脚本发送至所述待诊断车辆的车辆控制模块;
将所述待诊断车辆的车辆控制模块发送的与所述预设的车辆诊断文件对应的诊断响应报文和与所述预设的车辆诊断脚本对应的指令执行结果发送至远端诊断服务器,以使所述远端诊断服务器根据与所述预设的车辆诊断文件对应的诊断响应报文和与所述预设的车辆诊断脚本对应的指令执行结果,生成所述待诊断车辆的诊断结果。
第五方面,本发明实施例还提供了一种车辆远程诊断方法,应用于如第一方面所述的车辆远程诊断系统中的待诊断车辆的车辆控制模块中,包括:
根据各诊断请求报文的通信协议,将预设的车辆诊断文件中的各所述诊断请求报文发送至对应的待诊断车辆中的控制器,以使所述待诊断车辆中的各控制器发送与各所述诊断请求报文对应的响应报文;
将预设的车辆诊断脚本中的各诊断操作指令发送至对应的所述待诊断车辆中的控制器,以使所述待诊断车辆中的各控制器执行对应的诊断操作指令并反馈指令执行结果;
获取所述待诊断车辆中的各控制器发送的响应报文和指令执行结果,作为与所述预设的车辆诊断文件对应的诊断响应报文和与所述预设的车辆诊断脚本对应的指令执行结果发送至远端诊断服务器或近场诊断设备。
本发明实施例的技术方案,通过在待诊断车辆的网络状态为正常网络状态时,通过诊断云平台直接将车辆诊断文件和车辆诊断脚本发送至远端诊断服务器,以使远端诊断服务器通过计算机网络建立与待诊断车辆的车辆控制模块的通讯连接,将预设的车辆诊断文件和车辆诊断脚本发送至待诊断车辆的车辆控制模块,然后根据待诊断车辆的车辆控制模块发送诊断响应报文和指令执行结果生成待诊断车辆的诊断结果,完成对待诊断车辆的远程诊断;在待诊断车辆的网络状态为无网络状态时,通过诊断云平台将预设的车辆诊断文件和车辆诊断脚本发送至近场诊断设备,以使近场诊断设备通过自身的通讯模块建立与待诊断车辆的车辆控制模块的通讯连接,将预设的车辆诊断文件和车辆诊断脚本发送至待诊断车辆的车辆控制模块,然后将待诊断车辆的车辆控制模块发送的诊断响应报文和指令执行结果转发至远端诊断服务器,从而远端诊断服务器可以根据诊断响应报文和指令执行结果生成待诊断车辆的诊断结果,完成对待诊断车辆的远程诊断,避免了由于无网络条件不能实现远程诊断的情况,实现了根据待诊断车辆的网络状态,完成待诊断车辆的实时远程诊断。
附图说明
图1为本发明实施例一提供的一种车辆远程诊断系统的结构示意图。
图2为本发明实施例二提供的一种车辆远程诊断方法的流程图。
图3为本发明实施例三提供的一种车辆远程诊断方法的流程图。
图4为本发明实施例四提供的一种车辆远程诊断方法的流程图。
图5为本发明实施例五提供的一种车辆远程诊断方法的流程图。
具体实施方式
下面结合附图和实施例对本发明作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释本发明,而非对本发明的限定。
另外还需要说明的是,为了便于描述,附图中仅示出了与本发明相关的部分而非全部内容。在更加详细地讨论示例性实施例之前应当提到的是,一些示例性实施例被描述成作为流程图描绘的处理或方法。虽然流程图将各项操作(或步骤)描述成顺序的处理,但是其中的许多操作可以被并行地、并发地或者同时实施。此外,各项操作的顺序可以被重新安排。当其操作完成时所述处理可以被终止,但是还可以具有未包括在附图中的附加步骤。所述处理可以对应于方法、函数、规程、子例程、子程序等等。
实施例一
图1为本发明实施例一提供的一种车辆远程诊断系统的结构示意图。本实施例可适用于进行车辆远程诊断的情况。如图1所示,该车辆远程诊断系统具体可以包括:诊断云平台101、远端诊断服务器102、近场诊断设备103以及待诊断车辆的车辆控制模块104,下面对其结构和功能进行说明。
其中,所述诊断云平台101,用于获取所述待诊断车辆的网络状态;在所述网络状态为正常网络状态时,将预设的车辆诊断文件和车辆诊断脚本发送至所述远端诊断服务器102;在所述网络状态为无网络状态时,将所述预设的车辆诊断文件和车辆诊断脚本发送至所述近场诊断设备103。
所述车辆诊断文件中包含与车辆中的各控制器对应的诊断请求报文、以及各所述诊断请求报文的通信协议,所述车辆诊断脚本中包含与车辆中的各控制器对应的诊断操作指令。
所述远端诊断服务器102,用于在接收到所述预设的车辆诊断文件和车辆诊断脚本时,通过计算机网络建立与所述待诊断车辆的车辆控制模块104的通讯连接;将所述预设的车辆诊断文件和车辆诊断脚本发送至所述待诊断车辆的车辆控制模块104;根据接收到的与所述预设的车辆诊断文件对应的诊断响应报文和与所述预设的车辆诊断脚本对应的指令执行结果,生成所述待诊断车辆的诊断结果。
所述近场诊断设备103,用于在接收到所述预设的车辆诊断文件和车辆诊断脚本时,通过所述近场诊断设备103中的通讯模块建立与所述待诊断车辆的车辆控制模块104的通讯连接;将所述预设的车辆诊断文件和车辆诊断脚本发送至所述待诊断车辆的车辆控制模块104;将所述待诊断车辆的车辆控制模块104发送的与所述预设的车辆诊断文件对应的诊断响应报文和与所述预设的车辆诊断脚本对应的指令执行结果发送至所述远端诊断服务器102。
所述待诊断车辆的车辆控制模块104,用于根据各所述诊断请求报文的通信协议,将所述预设的车辆诊断文件中的各所述诊断请求报文发送至对应的所述待诊断车辆中的控制器,以使所述待诊断车辆中的各控制器发送与各所述诊断请求报文对应的响应报文;将所述预设的车辆诊断脚本中的各诊断操作指令发送至对应的所述待诊断车辆中的控制器,以使所述待诊断车辆中的各控制器执行对应的诊断操作指令并反馈指令执行结果;获取所述待诊断车辆中的各控制器发送的响应报文和指令执行结果,作为与所述预设的车辆诊断文件对应的诊断响应报文和与所述预设的车辆诊断脚本对应的指令执行结果发送至所述远端诊断服务器102或所述近场诊断设备103。
可选的,诊断云平台101是用于存储并管理预设的车辆诊断文件和车辆诊断脚本的云平台。
可选的,车辆诊断文件是用于获取与车辆中的各控制器对应的用于诊断控制器是否正常工作的参数数据的文件。车辆诊断文件中包含与车辆中的各控制器对应的诊断请求报文、以及各所述诊断请求报文的通信协议。诊断请求报文用于请求控制器发送用于诊断控制器是否正常工作的参数数据。诊断请求报文的通信协议是发送诊断请求报文和接收与诊断请求报文对应的响应报文时使用的通信协议。车辆诊断文件可以为具有标准的文件格式定义的包含与车辆中的各控制器对应的诊断请求报文、以及各所述诊断请求报文的通信协议的开放式诊断数据交换(opendiagnosticdataexchange,odx)文件。
可选的,诊断云平台101根据与待诊断车辆对应的车辆诊断协议,生成预设的车辆诊断文件。与待诊断车辆对应的车辆诊断协议可以为技术人员上传的针对待诊断车辆所属车辆类型的诊断规范和车辆诊断通信协议,包括与车辆中的各控制器对应的诊断请求报文的报文格式及内容、响应报文的格式及含义、发送诊断请求报文和接收与诊断请求报文对应的响应报文时使用的通信协议。
可选的,诊断云平台101根据与待诊断车辆对应的车辆诊断协议,生成具有标准的文件格式定义的包含与车辆中的各控制器对应的诊断请求报文、以及各所述诊断请求报文的通信协议的odx文件。
可选的,车辆诊断脚本是用于诊断车辆中的各控制器是否正常工作的脚本文件。车辆诊断脚本中包含与车辆中的各控制器对应的诊断操作指令。诊断操作指令是在诊断控制器是否正常工作的过程中,控制器需要执行的操作指令。车辆诊断脚本可以为包含与车辆中的各控制器对应的诊断操作指令的开放式测试序列交换格式(opentestsequenceexchangeformat,otx)文件。
可选的,诊断云平台101根据与待诊断车辆对应的诊断序列,生成预设的车辆诊断脚本。与待诊断车辆对应的诊断序列可以为技术人员上传的针对待诊断车辆所属车辆类型的诊断流程,包括在诊断车辆中的控制器是否正常工作的过程中,按照执行先后顺序排列的各控制器需要执行的诊断操作、以及与各诊断操作对应的诊断操作指令。
可选的,诊断云平台101根据与待诊断车辆对应的诊断序列,生成包含与车辆中的各控制器对应的诊断操作指令的otx文件。
可选的,诊断云平台101中存储了技术人员上传的待诊断车辆的相关信息。待诊断车辆的相关信息可以包括所述待诊断车辆的网络状态、以及其他车辆基本信息等。网络状态是用于指示待诊断车辆的车辆控制模块104是否可以通过计算机网络与其他设备进行通信的信息。网络状态包括正常网络状态和无网络状态。在待诊断车辆的车辆控制模块104可以通过计算机网络与其他设备建立通讯连接时,待诊断车辆的网络状态为正常网络状态;在待诊断车辆的车辆控制模块104不可以通过计算机网络与其他设备建立通讯连接时,待诊断车辆的网络状态为无网络状态。
可选的,诊断云平台101从存储的待诊断车辆的相关信息中获取待诊断车辆的网络状态;在所述网络状态为正常网络状态时,将预设的车辆诊断文件和车辆诊断脚本发送至所述远端诊断服务器102;在所述网络状态为无网络状态时,将所述预设的车辆诊断文件和车辆诊断脚本发送至所述近场诊断设备103。
可选的,远端诊断服务器102是用于对待诊断车辆进行远程诊断的服务器。远端诊断服务器102需要通过计算机网络与待诊断车辆的车辆控制模块104建立通讯连接。在待诊断车辆的车辆控制模块104可以通过计算机网络与其他设备建立通讯连接时,诊断云平台101直接将预设的车辆诊断文件和车辆诊断脚本发送至所述远端诊断服务器102,以使远端诊断服务器102通过计算机网络建立与所述待诊断车辆的车辆控制模块104的通讯连接,将所述预设的车辆诊断文件和车辆诊断脚本发送至所述待诊断车辆的车辆控制模块104,然后根据所述待诊断车辆的车辆控制模块104发送的与所述预设的车辆诊断文件对应的诊断响应报文和与所述预设的车辆诊断脚本对应的指令执行结果,生成所述待诊断车辆的诊断结果,完成对所述待诊断车辆的远程诊断。
可选的,远端诊断服务器102对诊断云平台101发送的预设的车辆诊断文件和车辆诊断脚本进行存储和管理,并通过超文本传输安全协议(hypertexttransferprotocoloversecuresocketlayer,https)或消息队列遥测传输(messagequeuingtelemetrytransport,mqtt)等无线协议通信协议,将所述预设的车辆诊断文件和车辆诊断脚本发送至所述待诊断车辆的车辆控制模块104。
可选的,在待诊断车辆的车辆控制模块104不可以通过计算机网络与其他设备建立通讯连接时,诊断云平台101将所述预设的车辆诊断文件和车辆诊断脚本发送至所述近场诊断设备103,以使所述近场诊断设备103通过自身的通讯模块建立与所述待诊断车辆的车辆控制模块104的通讯连接,将所述预设的车辆诊断文件和车辆诊断脚本发送至所述待诊断车辆的车辆控制模块104,然后将所述待诊断车辆的车辆控制模块104发送的与所述预设的车辆诊断文件对应的诊断响应报文和与所述预设的车辆诊断脚本对应的指令执行结果转发至所述远端诊断服务器102,从而远端诊断服务器102可以根据所述待诊断车辆的车辆控制模块104发送的与所述预设的车辆诊断文件对应的诊断响应报文和与所述预设的车辆诊断脚本对应的指令执行结果,生成所述待诊断车辆的诊断结果,完成对所述待诊断车辆的远程诊断。
可选的,近场诊断设备103是位于所述待诊断车辆附近,可以通过自身的通讯模块建立与所述待诊断车辆的车辆控制模块104的通讯连接的终端设备。
可选的,近场诊断设备103中的通讯模块包括:无线宽带(wirelessbroadband,wifi)单元、蓝牙通讯单元和/或有线通讯单元。近场诊断设备103在待诊断车辆的车辆控制模块104不可以通过计算机网络与其他设备建立通讯连接时,可以通过自身的wifi单元使用无线方式建立与所述待诊断车辆的车辆控制模块104的通讯连接,还可以通过自身的蓝牙通讯单元使用蓝牙方式建立与所述待诊断车辆的车辆控制模块104的通讯连接,或者可以通过自身的有线通讯单元使用有线方式建立与所述待诊断车辆的车辆控制模块104的通讯连接。
可选的,诊断云平台101通过无线通信方式将预设的车辆诊断文件和车辆诊断脚本发送至近场诊断设备103。近场诊断设备103对诊断云平台101发送的预设的车辆诊断文件和车辆诊断脚本进行存储和管理,并通过无线方式、蓝牙方式或者有线方式将所述预设的车辆诊断文件和车辆诊断脚本发送至所述待诊断车辆的车辆控制模块104。
可选的,待诊断车辆的车辆控制模块104是用于统一控制待诊断车辆中的各控制器的整车控制器。
可选的,所述待诊断车辆的车辆控制模块104解析预设的车辆诊断文件,根据预设的车辆诊断文件中的各所述诊断请求报文的通信协议,将所述预设的车辆诊断文件中的各所述诊断请求报文发送至对应的所述待诊断车辆中的控制器,以使所述待诊断车辆中的各控制器发送与各所述诊断请求报文对应的响应报文。各控制器发送的响应报文中包含用于诊断各控制器是否正常工作的参数数据。
可选的,所述待诊断车辆的车辆控制模块104解析预设的车辆诊断脚本,将所述预设的车辆诊断脚本中的各诊断操作指令发送至对应的所述待诊断车辆中的控制器,以使所述待诊断车辆中的各控制器执行对应的诊断操作指令并反馈指令执行结果。
可选的,所述待诊断车辆的车辆控制模块104获取所述待诊断车辆中的各控制器发送的响应报文作为与所述预设的车辆诊断文件对应的诊断响应报文,获取所述待诊断车辆中的各控制器发送的指令执行结果作为与所述预设的车辆诊断脚本对应的指令执行结果。
可选的,所述待诊断车辆的车辆控制模块104在与所述远端诊断服务器102建立通讯连接的情况下,将与所述预设的车辆诊断文件对应的诊断响应报文和与所述预设的车辆诊断脚本对应的指令执行结果发送至所述远端诊断服务器102;在与所述近场诊断设备103建立通讯连接的情况下,将与所述预设的车辆诊断文件对应的诊断响应报文和与所述预设的车辆诊断脚本对应的指令执行结果发送至所述近场诊断设备103。
可选的,所述车辆中的各控制器至少包括:控制器局域网络(controllerareanetwork,can)控制器和以太网控制器。
可选的,can控制器是用于管理所述待诊断车辆中的can总线的控制器。所述待诊断车辆的车辆控制模块104根据与所述待诊断车辆中的can控制器对应的诊断请求报文的通信协议,将预设的车辆诊断文件中的与所述待诊断车辆中的can控制器对应的诊断请求报文发送至所述待诊断车辆中的can控制器,以使所述待诊断车辆中的can控制器发送对应的响应报文。can控制器发送的响应报文中包含用于诊断can控制器是否正常工作的参数数据。所述待诊断车辆的车辆控制模块104将预设的车辆诊断脚本中的与所述待诊断车辆中的can控制器对应的诊断操作指令发送至所述待诊断车辆中的can控制器,以使所述待诊断车辆中的can控制器执行对应的诊断操作指令并反馈指令执行结果。
可选的,以太网控制器是用于管理所述待诊断车辆中的以太网总线的控制器。所述待诊断车辆的车辆控制模块104根据与所述待诊断车辆中的以太网控制器对应的诊断请求报文的通信协议,将预设的车辆诊断文件中的与所述待诊断车辆中的以太网控制器对应的诊断请求报文发送至所述待诊断车辆中的以太网控制器,以使所述待诊断车辆中的以太网控制器发送对应的响应报文。以太网控制器发送的响应报文中包含用于诊断以太网控制器是否正常工作的参数数据。所述待诊断车辆的车辆控制模块104将预设的车辆诊断脚本中的与所述待诊断车辆中的以太网控制器对应的诊断操作指令发送至所述待诊断车辆中的以太网控制器,以使所述待诊断车辆中的以太网控制器执行对应的诊断操作指令并反馈指令执行结果。
由此,可以对所述待诊断车辆中的can总线和以太网总线进行诊断。
可选的,远端诊断服务器102根据接收到的与所述预设的车辆诊断文件对应的诊断响应报文和与所述预设的车辆诊断脚本对应的指令执行结果,生成所述待诊断车辆的诊断结果,包括:远端诊断服务器102从与所述预设的车辆诊断文件对应的诊断响应报文中获取所述待诊断车辆中的各控制器发送的用于诊断各控制器是否正常工作的参数数据;远端诊断服务器102获取预先存储的各控制器在正常工作状态下的参数数据;远端诊断服务器102依次判断各控制器发送的用于诊断各控制器是否正常工作的参数数据与各控制器在正常工作状态下的参数数据是否一致,将数据一致的控制器的确定为所述待诊断车辆中的正常控制器,将数据不一致的控制器确定为所述待诊断车辆中的故障控制器。
可选的,远端诊断服务器102根据接收到的与所述预设的车辆诊断文件对应的诊断响应报文和与所述预设的车辆诊断脚本对应的指令执行结果,生成所述待诊断车辆的诊断结果,还包括:远端诊断服务器102从与所述预设的车辆诊断脚本对应的指令执行结果中获取所述待诊断车辆中的各控制器发送的指令执行结果;远端诊断服务器102获取预先存储的各控制器在正常工作状态下的指令执行结果;远端诊断服务器102依次判断各控制器发送的指令执行结果与各控制器在正常工作状态下的指令执行结果是否一致,将结果一致的控制器的确定为所述待诊断车辆中的正常控制器,将结果不一致的控制器确定为所述待诊断车辆中的故障控制器。
可选的,远端诊断服务器102根据所述待诊断车辆中的故障控制器,生成所述待诊断车辆的诊断结果,所述待诊断车辆的诊断结果中包含所述待诊断车辆中的故障控制器的标识信息。标识信息可以为控制器的名称或者编号。
本发明实施例提供了一种车辆远程诊断系统,通过在待诊断车辆的网络状态为正常网络状态时,通过诊断云平台直接将车辆诊断文件和车辆诊断脚本发送至远端诊断服务器,以使远端诊断服务器通过计算机网络建立与待诊断车辆的车辆控制模块的通讯连接,将预设的车辆诊断文件和车辆诊断脚本发送至待诊断车辆的车辆控制模块,然后根据待诊断车辆的车辆控制模块发送诊断响应报文和指令执行结果生成待诊断车辆的诊断结果,完成对待诊断车辆的远程诊断;在待诊断车辆的网络状态为无网络状态时,通过诊断云平台将预设的车辆诊断文件和车辆诊断脚本发送至近场诊断设备,以使近场诊断设备通过自身的通讯模块建立与待诊断车辆的车辆控制模块的通讯连接,将预设的车辆诊断文件和车辆诊断脚本发送至待诊断车辆的车辆控制模块,然后将待诊断车辆的车辆控制模块发送的诊断响应报文和指令执行结果转发至远端诊断服务器,从而远端诊断服务器可以根据诊断响应报文和指令执行结果生成待诊断车辆的诊断结果,完成对待诊断车辆的远程诊断,避免了由于无网络条件不能实现远程诊断的情况,实现了根据待诊断车辆的网络状态,完成待诊断车辆的实时远程诊断。
实施例二
图2为本发明实施例二提供的一种车辆远程诊断方法的流程图。本实施例可适用于进行车辆远程诊断的情况。该方法可以应用于本发明上述实施例提供的车辆远程诊断系统中的诊断云平台中。如图2所示,本实施例的方法具体包括:
步骤201、获取待诊断车辆的网络状态。
可选的,诊断云平台中存储了技术人员上传的待诊断车辆的相关信息。待诊断车辆的相关信息可以包括所述待诊断车辆的网络状态、以及其他车辆基本信息等。网络状态是用于指示待诊断车辆的车辆控制模块是否可以通过计算机网络与其他设备进行通信的信息。网络状态包括正常网络状态和无网络状态。在待诊断车辆的车辆控制模块可以通过计算机网络与其他设备建立通讯连接时,待诊断车辆的网络状态为正常网络状态;在待诊断车辆的车辆控制模块不可以通过计算机网络与其他设备建立通讯连接时,待诊断车辆的网络状态为无网络状态。
可选的,诊断云平台从存储的待诊断车辆的相关信息中获取待诊断车辆的网络状态。
步骤202、在所述网络状态为正常网络状态时,将预设的车辆诊断文件和车辆诊断脚本发送至远端诊断服务器。
其中,所述车辆诊断文件中包含与车辆中的各控制器对应的诊断请求报文、以及各所述诊断请求报文的通信协议,所述车辆诊断脚本中包含与车辆中的各控制器对应的诊断操作指令。
可选的,还包括:根据与待诊断车辆对应的车辆诊断协议,生成预设的车辆诊断文件;根据与待诊断车辆对应的诊断序列,生成预设的车辆诊断脚本。
可选的,在待诊断车辆的车辆控制模块可以通过计算机网络与其他设备建立通讯连接时,诊断云平台直接将预设的车辆诊断文件和车辆诊断脚本发送至所述远端诊断服务器,以使远端诊断服务器通过计算机网络建立与所述待诊断车辆的车辆控制模块的通讯连接,将所述预设的车辆诊断文件和车辆诊断脚本发送至所述待诊断车辆的车辆控制模块,然后根据所述待诊断车辆的车辆控制模块发送的与所述预设的车辆诊断文件对应的诊断响应报文和与所述预设的车辆诊断脚本对应的指令执行结果,生成所述待诊断车辆的诊断结果,完成对所述待诊断车辆的远程诊断。
步骤203、在所述网络状态为无网络状态时,将所述预设的车辆诊断文件和车辆诊断脚本发送至近场诊断设备。
可选的,在待诊断车辆的车辆控制模块不可以通过计算机网络与其他设备建立通讯连接时,诊断云平台将所述预设的车辆诊断文件和车辆诊断脚本发送至所述近场诊断设备,以使所述近场诊断设备通过自身的通讯模块建立与所述待诊断车辆的车辆控制模块的通讯连接,将所述预设的车辆诊断文件和车辆诊断脚本发送至所述待诊断车辆的车辆控制模块,然后将所述待诊断车辆的车辆控制模块发送的与所述预设的车辆诊断文件对应的诊断响应报文和与所述预设的车辆诊断脚本对应的指令执行结果转发至所述远端诊断服务器,从而远端诊断服务器可以根据所述待诊断车辆的车辆控制模块发送的与所述预设的车辆诊断文件对应的诊断响应报文和与所述预设的车辆诊断脚本对应的指令执行结果,生成所述待诊断车辆的诊断结果,完成对所述待诊断车辆的远程诊断。
本发明实施例提供了一种车辆远程诊断方法,通过在待诊断车辆的网络状态为正常网络状态时,直接将车辆诊断文件和车辆诊断脚本发送至远端诊断服务器,以使远端诊断服务器通过计算机网络建立与待诊断车辆的车辆控制模块的通讯连接,将预设的车辆诊断文件和车辆诊断脚本发送至待诊断车辆的车辆控制模块,然后根据待诊断车辆的车辆控制模块发送诊断响应报文和指令执行结果生成待诊断车辆的诊断结果,完成对待诊断车辆的远程诊断;在待诊断车辆的网络状态为无网络状态时,将预设的车辆诊断文件和车辆诊断脚本发送至近场诊断设备,以使近场诊断设备通过自身的通讯模块建立与待诊断车辆的车辆控制模块的通讯连接,将预设的车辆诊断文件和车辆诊断脚本发送至待诊断车辆的车辆控制模块,然后将待诊断车辆的车辆控制模块发送的诊断响应报文和指令执行结果转发至远端诊断服务器,从而远端诊断服务器可以根据诊断响应报文和指令执行结果生成待诊断车辆的诊断结果,完成对待诊断车辆的远程诊断,避免了由于无网络条件不能实现远程诊断的情况,实现了根据待诊断车辆的网络状态,完成待诊断车辆的实时远程诊断。
实施例三
图3为本发明实施例三提供的一种车辆远程诊断方法的流程图。本实施例可适用于进行车辆远程诊断的情况。该方法可以应用于本发明上述实施例提供的车辆远程诊断系统中的远端诊断服务器中。如图3所示,本实施例的方法具体包括:
步骤301、在接收到预设的车辆诊断文件和车辆诊断脚本时,通过计算机网络建立与待诊断车辆的车辆控制模块的通讯连接。
可选的,远端诊断服务器是用于对待诊断车辆进行远程诊断的服务器。远端诊断服务器需要通过计算机网络与待诊断车辆的车辆控制模块建立通讯连接。
步骤302、将所述预设的车辆诊断文件和车辆诊断脚本发送至所述待诊断车辆的车辆控制模块。
可选的,远端诊断服务器对诊断云平台发送的预设的车辆诊断文件和车辆诊断脚本进行存储和管理,并通过https或mqtt等无线协议通信协议,将所述预设的车辆诊断文件和车辆诊断脚本发送至所述待诊断车辆的车辆控制模块。
步骤303、根据接收到的与所述预设的车辆诊断文件对应的诊断响应报文和与所述预设的车辆诊断脚本对应的指令执行结果,生成所述待诊断车辆的诊断结果。
可选的,远端诊断服务器接收待诊断车辆的车辆控制模块或者近场诊断设备发送的与所述预设的车辆诊断文件对应的诊断响应报文和与所述预设的车辆诊断脚本对应的指令执行结果。
可选的,远端诊断服务器根据接收到的与所述预设的车辆诊断文件对应的诊断响应报文和与所述预设的车辆诊断脚本对应的指令执行结果,生成所述待诊断车辆的诊断结果,包括:远端诊断服务器从与所述预设的车辆诊断文件对应的诊断响应报文中获取所述待诊断车辆中的各控制器发送的用于诊断各控制器是否正常工作的参数数据;远端诊断服务器获取预先存储的各控制器在正常工作状态下的参数数据;远端诊断服务器依次判断各控制器发送的用于诊断各控制器是否正常工作的参数数据与各控制器在正常工作状态下的参数数据是否一致,将数据一致的控制器的确定为所述待诊断车辆中的正常控制器,将数据不一致的控制器确定为所述待诊断车辆中的故障控制器。
可选的,远端诊断服务器根据接收到的与所述预设的车辆诊断文件对应的诊断响应报文和与所述预设的车辆诊断脚本对应的指令执行结果,生成所述待诊断车辆的诊断结果,还包括:远端诊断服务器从与所述预设的车辆诊断脚本对应的指令执行结果中获取所述待诊断车辆中的各控制器发送的指令执行结果;远端诊断服务器获取预先存储的各控制器在正常工作状态下的指令执行结果;远端诊断服务器依次判断各控制器发送的指令执行结果与各控制器在正常工作状态下的指令执行结果是否一致,将结果一致的控制器的确定为所述待诊断车辆中的正常控制器,将结果不一致的控制器确定为所述待诊断车辆中的故障控制器。
可选的,远端诊断服务器根据所述待诊断车辆中的故障控制器,生成所述待诊断车辆的诊断结果,所述待诊断车辆的诊断结果中包含所述待诊断车辆中的故障控制器的标识信息。标识信息可以为控制器的名称或者编号。
本发明实施例提供了一种车辆远程诊断方法,通过远端诊断服务器接收待诊断车辆的车辆控制模块或者近场诊断设备发送的与预设的车辆诊断文件对应的诊断响应报文和与预设的车辆诊断脚本对应的指令执行结果,根据诊断响应报文和指令执行结果生成待诊断车辆的诊断结果,完成对待诊断车辆的远程诊断,避免了由于无网络条件不能实现远程诊断的情况,实现了根据待诊断车辆的网络状态,完成待诊断车辆的实时远程诊断。
实施例四
图4为本发明实施例四提供的一种车辆远程诊断方法的流程图。本实施例可适用于进行车辆远程诊断的情况。该方法可以应用于本发明上述实施例提供的车辆远程诊断系统中的近场诊断设备中。如图4所示,本实施例的方法具体包括:
步骤401、在接收到预设的车辆诊断文件和车辆诊断脚本时,通过近场诊断设备中的通讯模块建立与待诊断车辆的车辆控制模块的通讯连接。
可选的,近场诊断设备是位于所述待诊断车辆附近,可以通过自身的通讯模块建立与所述待诊断车辆的车辆控制模块的通讯连接的终端设备。
可选的,近场诊断设备中的通讯模块包括:无线宽带(wirelessbroadband,wifi)单元、蓝牙通讯单元和/或有线通讯单元。
近场诊断设备在待诊断车辆的车辆控制模块不可以通过计算机网络与其他设备建立通讯连接时,可以通过自身的wifi单元使用无线方式建立与所述待诊断车辆的车辆控制模块的通讯连接,还可以通过自身的蓝牙通讯单元使用蓝牙方式建立与所述待诊断车辆的车辆控制模块的通讯连接,或者可以通过自身的有线通讯单元使用有线方式建立与所述待诊断车辆的车辆控制模块的通讯连接。
步骤402、将所述预设的车辆诊断文件和车辆诊断脚本发送至所述待诊断车辆的车辆控制模块。
可选的,诊断云平台通过无线通信方式将预设的车辆诊断文件和车辆诊断脚本发送至近场诊断设备。近场诊断设备对诊断云平台发送的预设的车辆诊断文件和车辆诊断脚本进行存储和管理,并通过无线方式、蓝牙方式或者有线方式将所述预设的车辆诊断文件和车辆诊断脚本发送至所述待诊断车辆的车辆控制模块。
步骤403、将所述待诊断车辆的车辆控制模块发送的与所述预设的车辆诊断文件对应的诊断响应报文和与所述预设的车辆诊断脚本对应的指令执行结果发送至远端诊断服务器,以使所述远端诊断服务器根据与所述预设的车辆诊断文件对应的诊断响应报文和与所述预设的车辆诊断脚本对应的指令执行结果,生成所述待诊断车辆的诊断结果。
本发明实施例提供了一种车辆远程诊断方法,通过在待诊断车辆的网络状态为无网络状态时,通过近场诊断设备建立与待诊断车辆的车辆控制模块的通讯连接,将预设的车辆诊断文件和车辆诊断脚本发送至待诊断车辆的车辆控制模块,然后将待诊断车辆的车辆控制模块发送的诊断响应报文和指令执行结果转发至远端诊断服务器,从而远端诊断服务器可以根据诊断响应报文和指令执行结果生成待诊断车辆的诊断结果,完成对待诊断车辆的远程诊断,避免了由于无网络条件不能实现远程诊断的情况,实现了在待诊断车辆的车辆控制模块不可以通过计算机网络与其他设备建立通讯连接时,完成待诊断车辆的实时远程诊断。
实施例五
图5为本发明实施例五提供的一种车辆远程诊断方法的流程图。本实施例可适用于进行车辆远程诊断的情况。该方法可以应用于本发明上述实施例提供的待诊断车辆的车辆控制模块中。如图5所示,本实施例的方法具体包括:
步骤501、根据各诊断请求报文的通信协议,将预设的车辆诊断文件中的各所述诊断请求报文发送至对应的待诊断车辆中的控制器,以使所述待诊断车辆中的各控制器发送与各所述诊断请求报文对应的响应报文。
可选的,待诊断车辆的车辆控制模块是用于统一控制待诊断车辆中的各控制器的整车控制器。
可选的,所述待诊断车辆的车辆控制模块解析预设的车辆诊断文件,根据预设的车辆诊断文件中的各所述诊断请求报文的通信协议,将所述预设的车辆诊断文件中的各所述诊断请求报文发送至对应的所述待诊断车辆中的控制器,以使所述待诊断车辆中的各控制器发送与各所述诊断请求报文对应的响应报文。各控制器发送的响应报文中包含用于诊断各控制器是否正常工作的参数数据。
可选的,所述根据各诊断请求报文的通信协议,将预设的车辆诊断文件中的各所述诊断请求报文发送至对应的所述待诊断车辆中的控制器,以使所述待诊断车辆中的各控制器发送与各所述诊断请求报文对应的响应报文,包括:根据与所述待诊断车辆中的can控制器对应的诊断请求报文的通信协议,将预设的车辆诊断文件中的与所述待诊断车辆中的can控制器对应的诊断请求报文发送至所述待诊断车辆中的can控制器,以使所述待诊断车辆中的can控制器发送对应的响应报文;根据与所述待诊断车辆中的以太网控制器对应的诊断请求报文的通信协议,将预设的车辆诊断文件中的与所述待诊断车辆中的以太网控制器对应的诊断请求报文发送至所述待诊断车辆中的以太网控制器,以使所述待诊断车辆中的以太网控制器发送对应的响应报文。
可选的,can控制器是用于管理所述待诊断车辆中的can总线的控制器。can控制器发送的响应报文中包含用于诊断can控制器是否正常工作的参数数据。
可选的,以太网控制器是用于管理所述待诊断车辆中的以太网总线的控制器。以太网控制器发送的响应报文中包含用于诊断以太网控制器是否正常工作的参数数据。
步骤502、将预设的车辆诊断脚本中的各诊断操作指令发送至对应的所述待诊断车辆中的控制器,以使所述待诊断车辆中的各控制器执行对应的诊断操作指令并反馈指令执行结果。
可选的,所述待诊断车辆的车辆控制模块解析预设的车辆诊断脚本,将所述预设的车辆诊断脚本中的各诊断操作指令发送至对应的所述待诊断车辆中的控制器,以使所述待诊断车辆中的各控制器执行对应的诊断操作指令并反馈指令执行结果。
可选的,所述将预设的车辆诊断脚本中的各诊断操作指令发送至对应的所述待诊断车辆中的控制器,以使所述待诊断车辆中的各控制器执行对应的诊断操作指令并反馈指令执行结果,包括:将预设的车辆诊断脚本中的与所述待诊断车辆中的can控制器对应的诊断操作指令发送至所述待诊断车辆中的can控制器,以使所述待诊断车辆中的can控制器执行对应的诊断操作指令并反馈指令执行结果;将预设的车辆诊断脚本中的与所述待诊断车辆中的以太网控制器对应的诊断操作指令发送至所述待诊断车辆中的以太网控制器,以使所述待诊断车辆中的以太网控制器执行对应的诊断操作指令并反馈指令执行结果。
步骤503、获取所述待诊断车辆中的各控制器发送的响应报文和指令执行结果,作为与所述预设的车辆诊断文件对应的诊断响应报文和与所述预设的车辆诊断脚本对应的指令执行结果发送至远端诊断服务器或近场诊断设备。
可选的,所述待诊断车辆的车辆控制模块获取所述待诊断车辆中的各控制器发送的响应报文作为与所述预设的车辆诊断文件对应的诊断响应报文,获取所述待诊断车辆中的各控制器发送的指令执行结果作为与所述预设的车辆诊断脚本对应的指令执行结果。
可选的,所述待诊断车辆的车辆控制模块在与所述远端诊断服务器建立通讯连接的情况下,将与所述预设的车辆诊断文件对应的诊断响应报文和与所述预设的车辆诊断脚本对应的指令执行结果发送至所述远端诊断服务器;在与所述近场诊断设备建立通讯连接的情况下,将与所述预设的车辆诊断文件对应的诊断响应报文和与所述预设的车辆诊断脚本对应的指令执行结果发送至所述近场诊断设备。
本发明实施例提供了一种车辆远程诊断方法,通过待诊断车辆的车辆控制模块在与远端诊断服务器建立通讯连接的情况下,将与预设的车辆诊断文件对应的诊断响应报文和与预设的车辆诊断脚本对应的指令执行结果发送至远端诊断服务器,在与近场诊断设备建立通讯连接的情况下,将与预设的车辆诊断文件对应的诊断响应报文和与预设的车辆诊断脚本对应的指令执行结果发送至近场诊断设备,以使近场诊断设备将诊断响应报文和指令执行结果转发至远端诊断服务器,从而远端诊断服务器在不同网络条件下都可以根据诊断响应报文和指令执行结果生成待诊断车辆的诊断结果,完成对待诊断车辆的远程诊断,避免了由于无网络条件不能实现远程诊断的情况,实现了根据待诊断车辆的网络状态,完成待诊断车辆的实时远程诊断。
注意,上述仅为本发明的较佳实施例及所运用技术原理。本领域技术人员会理解,本发明不限于这里所述的特定实施例,对本领域技术人员来说能够进行各种明显的变化、重新调整和替代而不会脱离本发明的保护范围。因此,虽然通过以上实施例对本发明进行了较为详细的说明,但是本发明不仅仅限于以上实施例,在不脱离本发明构思的情况下,还可以包括更多其他等效实施例,而本发明的范围由所附的权利要求范围决定。