汽车远程诊断方法、系统、诊断仪及终端设备与流程



1.本技术属于车辆诊断领域,尤其涉及一种汽车远程诊断方法、系统、诊断仪及终端设备


背景技术:



2.目前,汽车诊断通常是利用车辆通信接口(vehicle communication interface,vci)设备将诊断仪和待诊断车辆进行一对一地通信连接来实现。但是,这样的诊断方式受限于所使用的汽车诊断标准(如sae j2534和iso 22900标准),无法实现汽车远程诊断。


技术实现要素:



3.有鉴于此,本技术提供了一种汽车远程诊断方法、诊断仪、终端设备及汽车远程诊断系统,可以使用不支持远程诊断的汽车诊断标准,实现诊断仪远程对车辆进行诊断,给用户带来了极大的便利。
4.第一方面,本技术提供了一种汽车远程诊断方法,应用于诊断仪,上述诊断仪安装有诊断软件和远端程序,上述远端程序包含第一应用程序编程接口(application programming interface,api),上述汽车远程诊断方法包括:
5.上述诊断软件向上述远端程序发送调用上述第一api的请求;
6.上述远端程序获取上述请求所包含的调用参数;
7.上述远端程序通过远程通讯将上述调用参数发送至终端设备上的近端程序,以指示上述近端程序使用上述调用参数调用第二api,上述终端设备通过上述第二api与vci设备通讯连接,上述vci设备与待诊断车辆通讯连接。
8.可选地,在上述远端程序通过远程通讯将上述调用参数发送至终端设备上的近端程序之后,上述汽车远程诊断方法还包括:
9.上述远端程序接收上述近端程序发送的响应数据,上述响应数据由上述终端设备执行诊断操作后得到;
10.上述远端程序将上述响应数据反馈至上述诊断软件。
11.可选地,上述第一api处于第一动态链接库(dynamic link library,dll)中,在上述远端程序获取上述请求所包含的调用参数之前,上述汽车远程诊断方法还包括:
12.上述诊断软件加载上述第一dll至内存;
13.上述诊断软件生成调用上述第一dll中的第一api的请求。
14.第二方面,本技术提供了一种汽车远程诊断方法,应用于终端设备,上述终端设备安装有近端程序和第二应用程序编程接口api,上述汽车远程诊断方法包括:
15.当上述近端程序通过远程通讯接收到诊断仪上的远端程序发送的针对第一api的调用参数时,上述近端程序使用上述调用参数调用上述第二api,上述终端设备通过上述第二api与vci设备通讯连接,上述vci设备与待诊断车辆通讯连接。
16.可选地,在上述近端程序使用上述调用参数调用第二api之后,上述汽车远程诊断
方法还包括:
17.上述近端程序获取执行诊断操作得到的响应数据;
18.上述近端程序将上述响应数据发送至上述远端程序。
19.可选地,上述第二api处于第二动态链接库dll中,在上述近端程序使用上述调用参数调用第二api之前,上述汽车远程诊断方法还包括:
20.上述近端程序加载上述第二dll至内存;
21.上述近端程序使用上述调用参数调用第二api,包括:
22.上述近端程序使用上述调用参数调用上述第二dll中的第二api。
23.第三方面,本技术提供了一种汽车远程诊断方法,应用于汽车远程诊断系统,上述汽车远程诊断系统包括诊断仪和终端设备,上述诊断仪安装有诊断软件和远端程序,上述远端程序包含第一应用程序编程接口api,上述终端设备安装有近端程序和第二api,上述汽车远程诊断方法包括:
24.上述诊断软件向上述远端程序发送调用上述第一api的请求;
25.上述远端程序获取上述请求所包含的调用参数;
26.上述远端程序通过远程通讯将上述调用参数发送至上述近端程序;
27.上述近端程序使用上述调用参数调用上述第二api,上述终端设备通过第二api与vci设备通讯连接,上述vci设备与待诊断车辆通讯连接。
28.第四方面,本技术提供了一种诊断仪,上述诊断仪包括存储器、处理器以及存储在上述存储器中并可在上述处理器上运行的计算机程序,上述处理器执行上述计算机程序时实现如上述第一方面的方法。
29.第五方面,本技术提供了一种终端设备,上述终端设备包括存储器、处理器以及存储在上述存储器中并可在上述处理器上运行的计算机程序,上述处理器执行上述计算机程序时实现如上述第二方面的方法。
30.第六方面,本技术提供了一种汽车远程诊断系统,包括:
31.车辆;
32.vci设备,与上述车辆连接;
33.如上述第五方面的终端设备,与上述vci设备连接;
34.如上述第四方面的诊断仪。
35.由上可见,本技术方案中,上述诊断软件向上述远端程序发送调用上述第一api的请求;上述远端程序获取上述请求所包含的调用参数;上述远端程序通过远程通讯将上述调用参数发送至终端设备上的近端程序,以指示上述近端程序使用上述调用参数调用第二api,上述终端设备通过上述第二api与vci设备通讯连接,上述vci设备与待诊断车辆通讯连接。通过在诊断仪安装远端程序,该远端程序包含第一api,在终端设备安装近端程序和第二api,通过远端程序和近端程序的远程通讯,诊断仪就可以调用第一api把调用参数远程传输至终端设备,由于终端设备通过vci设备连接车辆,即使第一api和第二api是基于不支持远程诊断的汽车诊断标准实现的,终端设备使用该调用参数调用第二api,依然可以与vci设备通讯,vci设备与待诊断车辆通讯,对待诊断车辆执行诊断操作,从而实现了诊断仪远程对车辆进行诊断,给用户带来了极大的便利。
36.可以理解的是,上述第二方面至第六方面的有益效果可以参见上述第一方面中的
相关描述,在此不再赘述。
附图说明
37.为了更清楚地说明本技术实施例中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
38.图1是本技术实施例提供的一种汽车远程诊断系统的示意图;
39.图2是本技术实施例提供的一种汽车远程诊断方法的实现流程图;
40.图3是本技术实施例提供的另一种汽车远程诊断方法的实现流程图;
41.图4是本技术实施例提供的交互流程图;
42.图5是本技术实施例提供的一种诊断仪的结构示意图;
43.图6是本技术实施例提供的一种终端设备的结构示意图。
具体实施方式
44.以下描述中,为了说明而不是为了限定,提出了诸如特定系统结构、技术之类的具体细节,以便透彻理解本技术实施例。然而,本领域的技术人员应当清楚,在没有这些具体细节的其它实施例中也可以实现本技术。在其它情况中,省略对众所周知的系统、装置、电路以及方法的详细说明,以免不必要的细节妨碍本技术的描述。
45.目前,诊断仪使用的比较主流的汽车诊断标准有sae j2534标准和iso 22900标准。但是,这两种标准只定义了本地诊断的实现,也即是说,使用这两种汽车诊断标准的诊断仪需要在待诊断车辆附近,通过线束与vci设备连接,然后,vci设备再与待诊断车辆的车载自诊断系统(on-board diagnostics,obd)接口连接。如此,诊断仪才可使用sae j2534标准的j2534 api或iso 22900标准的诊断协议数据单元(diagnostic protocol data unit,d-pdu)api对待诊断车辆进行短距离的本地诊断。然而,在越来越追求便捷的今天,用户对汽车远程诊断的需求越来越强烈,仅支持短距离本地诊断的诊断仪无法满足用户需求,给用户带来不便。基于此,本技术实施例提出了一种汽车远程诊断方法、系统、诊断仪及终端设备,上述诊断软件向上述远端程序发送调用上述第一api的请求;上述远端程序获取上述请求所包含的调用参数;上述远端程序通过远程通讯将上述调用参数发送至终端设备上的近端程序,以指示上述近端程序使用上述调用参数调用第二api,上述终端设备通过上述第二api与vci设备通讯连接,上述vci设备与待诊断车辆通讯连接。通过在诊断仪安装远端程序,该远端程序包含第一api,在终端设备安装近端程序和第二api,通过远端程序和近端程序的远程通讯,诊断仪就可以调用第一api把调用参数远程传输至终端设备,由于终端设备通过vci设备连接车辆,即使第一api和第二api是基于不支持远程诊断的汽车诊断标准实现的,终端设备使用该调用参数调用第二api,依然可以与vci设备通讯,vci设备与待诊断车辆通讯,对待诊断车辆执行诊断操作,从而实现了诊断仪远程对车辆进行诊断,给用户带来了极大的便利。为了说明本技术实施例所提出的技术方案,下面通过具体实施例来进行说明。
46.下面对本技术实施例提供的汽车远程诊断系统进行介绍。
47.请参阅图1,汽车远程诊断系统包括车辆、vci设备、终端设备和诊断仪。其中,图1中的实线表示有线连接,虚线表示无线连接。具体地,终端设备可以通过线束(即图1中连接线)连接到vci设备,比如该线束可以是以太网线或控制器局域网(controller area network,,can)线。vci设备与车辆的obd接口连接。诊断仪通过互联网与终端设备通信连接,可选地,诊断仪可以通过预设的服务器进行数据转发,从而实现与终端设备的相互通信,也可以通过p2p(peer to peer)技术与终端设备进行相互通信,此处不做限定。其中,诊断仪上安装有汽车诊断软件和远端程序,该远端程序包含有第一api。终端设备安装有近端程序和第二api。vci设备用于实现诊断协议的转换。用户通过与汽车诊断软件提供的界面进行交互,可以触发汽车诊断软件发起请求,以调用远端程序中的第一api。汽车诊断软件调用第一api时,可以将调用参数传递至第一api。远端程序与近端程序之间可以远程通讯,远端程序通过该远程通讯可以将调用参数发送至近端程序。近端程序接收到调用参数后,近端程序可以调用第二api,并在调用第二api时传递接收到的调用参数,以使第二api基于该调用参数与vci设备通信,从而实现对车辆的诊断。
48.下面对本技术实施例提供的一种汽车远程诊断方法进行描述。该汽车远程诊断方法可以应用于图1中的诊断仪,诊断仪安装有诊断软件和远端程序,远端程序包含第一api,请参阅图2,该汽车远程诊断方法包括:
49.步骤201,上述诊断软件向上述远端程序发送调用上述第一api的请求。
50.步骤202,上述远端程序获取上述请求所包含的调用参数。
51.步骤203,上述远端程序通过远程通讯将上述调用参数发送至终端设备上的近端程序,以指示上述近端程序使用上述调用参数调用第二api,上述终端设备通过上述第二api与vci设备通讯连接,上述vci设备与待诊断车辆通讯连接。
52.在本技术实施例中,诊断仪上可以安装汽车诊断软件和远端程序,该远端程序包含有第一api。汽车诊断软件可以向用户提供界面,用户通过与该界面进行交互,可以触发汽车诊断软件发起调用第一api的请求。应理解的是,汽车诊断软件在调用第一api时,可以将调用第一api所需的调用参数添加至请求中,然后将该请求发送至远端程序。远端程序可以与终端设备建立通信连接,从请求中提取调用参数后,将该调用参数发送至终端设备。可选地,终端设备可以安装近端程序和第二api。近端程序可以与远端程序通信,接收远端程序发送的调用参数,然后使用该调用参数调用第二api。
53.其中,第二api用于执行诊断操作。需要说明的是,第一api和第二api符合相同的汽车诊断标准。比如,第一api和第二api都是基于sae j2534标准或iso 22900标准开发的。具体地,第一api和第二api可以都是j2534 api,也可以都是d-pdu api。由于终端设备与vci设备通过线束连接,因此,终端设备通过调用j2534 api或d-pdu api,可以与vci设备建立通信连接,以实现对车辆的诊断。
54.应理解,虽然第一api和第二api符合相同的汽车诊断标准,但是两种api的内部实现可以不同。第一api用于供汽车诊断软件调用,接收汽车诊断软件传递的调用参数,然后将该调用参数发送至终端设备的近端程序。近端程序可以通过第二api与vci设备通讯连接,进而执行诊断操作,该诊断操作为汽车诊断标准规定的功能,此处不做具体描述。由于第一api和第二api符合相同的汽车诊断标准,因此调用第一api和调用第二api所需的调用参数是相同的。近端程序使用接收到的调用参数,即可调用第二api。
55.在一些实施例中,在步骤203之后,上述汽车远程诊断方法还包括:
56.上述远端程序接收上述近端程序发送的响应数据。
57.上述远端程序将上述响应数据反馈至上述诊断软件。
58.其中,响应数据是由近端程序调用第二api后,终端设备执行诊断操作后得到的。例如,响应数据是终端设备执行诊断操作后自己生成的参数,又例如,响应数据是终端设备执行诊断操作,通过vci设备与待诊断车辆交互后,由待诊断车辆反馈的参数。远端程序接收到近端程序发送的响应数据后,可以将该响应数据反馈至发起请求的诊断软件。
59.在一些实施例中,在步骤202之前,上述汽车远程诊断方法还包括:
60.上述诊断软件加载上述第一dll至内存。
61.上述诊断软件生成调用上述第一dll中的第一api的请求。
62.在本技术实施例中,第一dll可以存在于远端程序中,而第一api处于第一dll中,也即是说,第一api在第一dll文件中定义。汽车诊断软件运行后,可以将第一dll加载至内存中,以及生成调用第一dll中的第一api的请求。汽车诊断软件生成调用第一dll中的第一api的请求后,可以将该请求发送给远端程序。远端程序接收到请求后,可以调用第一api。
63.由上可见,通过在诊断仪安装远端程序,该远端程序包含第一api,在终端设备安装近端程序和第二api,诊断仪就可以调用第一api把调用参数远程传输至终端设备,由于终端设备通过vci设备连接车辆,即使第一api和第二api是基于不支持远程诊断的汽车诊断标准实现的,终端设备使用该调用参数调用第二api,依然可以与vci设备通讯,vci设备与待诊断车辆通讯,对待诊断车辆执行诊断操作,从而实现了诊断仪远程对车辆进行诊断,给用户带来了极大的便利。
64.下面对本技术实施例提供的另一种汽车远程诊断方法进行描述。该汽车远程诊断方法可以应用于图1中的终端设备,上述终端设备安装有近端程序和第二应用程序编程接口api,请参阅图3,该汽车远程诊断方法包括:
65.步骤301,当上述近端程序通过远程通讯接收到诊断仪上的远端程序发送的针对第一api的调用参数时,上述近端程序使用上述调用参数调用上述第二api,上述终端设备通过上述第二api与vci设备通讯连接,上述vci设备与待诊断车辆通讯连接。
66.在本技术实施例中,终端设备通过线束连接vci设备,vci设备连接待诊断车辆的obd接口。诊断仪上可以安装汽车诊断软件和远端程序,该远端程序包含有第一api。汽车诊断软件可以向用户提供界面,用户通过与该界面进行交互,可以触发汽车诊断软件发起调用第一api的请求。应理解的是,汽车诊断软件在调用第一api时,可以将调用第一api所需的调用参数添加至请求中,然后将该请求发送至远端程序。远端程序可以与终端设备上的近端程序建立远程通讯,从请求中提取调用参数后,将该调用参数通过远程通讯发送至终端设备上的近端程序。具体地,终端设备可以安装近端程序和第二api。近端程序可以与远端程序通信,接收远端程序发送的调用参数,然后使用该调用参数调用第二api。
67.其中,第二api用于与vci设备通讯连接,进而执行诊断操作。需要说明的是,第一api和第二api符合相同的汽车诊断标准。比如,第一api和第二api都是基于sae j2534标准或iso 22900标准开发的。具体地,第一api和第二api可以都是j2534 api,也可以都是d-pdu api。由于终端设备与vci设备通过线束连接,因此,终端设备通过调用j2534 api或d-pdu api,可以与vci设备建立通信连接,以实现对车辆的诊断。
68.应理解,虽然第一api和第二api符合相同的汽车诊断标准,但是两种api的内部实现可以不同。第一api用于供汽车诊断软件调用,接收汽车诊断软件传递的调用参数,然后将该调用参数发送至终端设备的近端程序。第二api用于与vci设备通讯,进而执行诊断操作,该诊断操作为汽车诊断标准规定的功能,此处不做具体描述。由于第一api和第二api符合相同的汽车诊断标准,因此调用第一api和调用第二api所需的调用参数是相同的。终端设备使用接收到的调用参数,即可调用第二api。
69.在一些实施例中,在步骤301之后,上述远程诊断方法还包括:
70.上述近端程序获取执行诊断操作得到的响应数据;
71.上述近端程序将上述响应数据发送至上述远端程序。
72.其中,响应数据是由近端程序调用第二api后,终端设备执行诊断操作后得到的。例如,响应数据是终端设备执行诊断操作后自己生成的参数,又例如,响应数据是终端设备执行诊断操作,通过vci设备与待诊断车辆交互后,由待诊断车辆反馈的参数。近端程序获取该响应数据后,可以将该响应数据发送至诊断仪上的远端程序。远端程序接收到近端程序发送的响应数据后,可以将该响应数据反馈至发起请求的发起程序,即诊断软件。诊断软件可以通过第一api接收到响应数据,然后利用该响应数据完成诊断。
73.在一些实施例中,终端设备可以存储至少两种第二api,各个第二api通过不同的方式实现,但是都用于与vci设备通讯连接,从而执行诊断操作。基于此,上述汽车远程诊断方法还包括:
74.上述近端程序将至少两种第二api中用户选择的第二api作为目标api。
75.上述步骤301包括:
76.上述近端程序使用上述调用参数调用上述目标api。
77.其中,至少两种第二api可以分别是不同厂家基于相同汽车诊断标准开发的。虽然各个第二api都是用于执行诊断操作,但是内部实现有所不同,各个第二api分别对应不同的vci设备。也即是说,第二api需要与对应的vci设备配合使用,才能执行诊断操作。比如,厂家a开发的第二api需要与厂家a开发的vci设备配合使用,才能执行诊断操作。本技术实施例为了实现兼容各个厂家的api和vci设备,可以在终端设备安装至少两种第二api。用户可以根据所使用的vci设备,在该至少两种第二api中选择与该vci设备对应的第二api作为目标api。然后,近端程序可以使用接收到的调用参数调用目标api,由于目标api是用户选择的与所使用的vci设备对应的第二api,因此,调用目标api可以有效驱动vci设备,实现对待诊断车辆的诊断。
78.在一些实施例中,在上述步骤301之前,上述远程诊断方法还包括:
79.上述近端程序加载上述第二dll至内存。
80.相应地,上述步骤301包括:
81.上述近端程序使用上述调用参数调用上述第二dll中的第二api。
82.在本技术实施例中,第二api处于第二dll中,也即是说,第二api在第二dll文件中定义。终端设备上的近端程序运行后,可以将第二dll加载至内存中。近端程序在接收到远端程序发送的调用参数后,即可立即使用该调用参数调用内存中的第二dll的第二api。
83.由上可见,本技术方案中,通过在诊断仪安装远端程序,该远端程序包含第一api,在终端设备安装近端程序和第二api,诊断仪就可以调用第一api把调用参数远程传输至终
端设备,由于终端设备通过vci设备连接车辆,即使第一api和第二api是基于不支持远程诊断的汽车诊断标准实现的,终端设备使用该调用参数调用第二api,依然可以与vci设备通讯,vci设备与待诊断车辆通讯,对待诊断车辆执行诊断操作,从而实现了诊断仪远程对车辆进行诊断,给用户带来了极大的便利。
84.为便于理解,下面结合图4对诊断仪和终端设备之间的交互流程进行说明。
85.步骤401,诊断仪运行汽车诊断软件和远端程序。
86.步骤402,终端设备运行近端程序。
87.步骤403,近端程序将第二dll加载至内存中,第二api处于第二dll中。
88.步骤404,远端程序与近端程序通过预设的通信协议建立通信连接。
89.步骤405,诊断软件将远端程序中的第一dll加载至内存中,第一api处于第一dll中。
90.步骤406,诊断软件生成请求,并将调用参数添加到请求中,该请求用于调用第一dll中的第一api,将该请求发送至远端程序。
91.步骤407,远端程序接收请求,提取请求中包含的调用参数。
92.步骤408,诊断仪(远端程序)将调用参数通过互联网发送至终端设备(近端程序)。
93.步骤409,近端程序接收诊断仪上的远端程序通过互联网发送的调用参数。
94.步骤410,近端程序使用接收到的调用参数调用第二dll中的第二api,以使第二api执行诊断操作。
95.由上可见,本技术方案中,通过在诊断仪安装远端程序,该远端程序包含第一api,在终端设备安装近端程序和第二api,诊断仪就可以调用第一api把调用参数远程传输至终端设备,由于终端设备通过vci设备连接车辆,即使第一api和第二api是基于不支持远程诊断的汽车诊断标准实现的,终端设备使用该调用参数调用第二api,依然可以与vci设备通讯,vci设备与待诊断车辆通讯,对待诊断车辆执行诊断操作,从而实现了诊断仪远程对车辆进行诊断,给用户带来了极大的便利。
96.对应于上文所提供的一种汽车远程诊断方法,本技术实施例还提供了一种诊断仪,请参阅图5,本技术实施例中的诊断仪5包括:存储器501,一个或多个处理器502(图5中仅示出一个)及存储在存储器501上并可在处理器上运行的计算机程序。其中:存储器501用于存储软件程序以及单元,处理器502通过运行存储在存储器501的软件程序以及单元,从而执行各种功能应用以及数据处理。具体地,处理器502通过运行存储在存储器501的上述计算机程序时实现以下步骤:
97.上述诊断软件向上述远端程序发送调用上述第一api的请求;
98.上述远端程序获取上述请求所包含的调用参数;
99.上述远端程序通过远程通讯将上述调用参数发送至终端设备上的近端程序,以指示上述近端程序使用上述调用参数调用第二api,上述终端设备通过上述第二api与vci设备通讯连接,上述vci设备与待诊断车辆通讯连接。
100.在上述第一种可能的实施方式作为基础而提供的第二种可能的实施方式中,在上述远端程序通过远程通讯将上述调用参数发送至终端设备上的近端程序之后,处理器502通过运行存储在存储器501的上述计算机程序时还实现以下步骤:
101.上述远端程序接收上述近端程序发送的响应数据,上述响应数据由上述终端设备
执行诊断操作后得到;
102.上述远端程序将上述响应数据反馈至上述诊断软件。
103.在上述第一种可能的实施方式作为基础而提供的第三种可能的实施方式中,上述第一api处于第一动态链接库dll中,在上述远端程序获取上述请求所包含的调用参数之前,处理器502通过运行存储在存储器501的上述计算机程序时还实现以下步骤:
104.上述诊断软件加载上述第一dll至内存;
105.上述诊断软件生成调用上述第一dll中的第一api的请求。
106.应当理解,在本技术实施例中,所称处理器502可以是中央处理单元(central processing unit,cpu),该处理器还可以是其他通用处理器、数字信号处理器(digital signal processor,dsp)、专用集成电路(application specific integrated circuit,asic)、现成可编程门阵列(field-programmable gate array,fpga)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
107.存储器501可以包括只读存储器和随机存取存储器,并向处理器502提供指令和数据。存储器501的一部分或全部还可以包括非易失性随机存取存储器。例如,存储器501还可以存储设备类别的信息。
108.对应于上文所提供的另一种汽车远程诊断方法,本技术实施例还提供了一种终端设备,该终端设备通过车辆通信接口vci设备连接待诊断车辆。请参阅图6,本技术实施例中的终端设备6包括:存储器601,一个或多个处理器602(图6中仅示出一个)及存储在存储器601上并可在处理器上运行的计算机程序。其中:存储器601用于存储软件程序以及单元,处理器602通过运行存储在存储器601的软件程序以及单元,从而执行各种功能应用以及数据处理。具体地,处理器602通过运行存储在存储器601的上述计算机程序时实现以下步骤:
109.当上述近端程序通过远程通讯接收到诊断仪上的远端程序发送的针对第一api的调用参数时,上述近端程序使用上述调用参数调用上述第二api,上述终端设备通过上述第二api与vci设备通讯连接,上述vci设备与待诊断车辆通讯连接。
110.在上述第一种可能的实施方式作为基础而提供的第二种可能的实施方式中,在上述近端程序使用上述调用参数调用第二api之后,处理器602通过运行存储在存储器601的上述计算机程序时还实现以下步骤:
111.上述近端程序获取执行诊断操作得到的响应数据;
112.上述近端程序将上述响应数据发送至上述远端程序。
113.在上述第一种可能的实施方式作为基础而提供的第三种可能的实施方式中,上述第二api处于第二动态链接库dll中,在上述近端程序使用上述调用参数调用第二api之前,处理器602通过运行存储在存储器601的上述计算机程序时还实现以下步骤:
114.上述近端程序加载上述第二dll至内存;
115.上述近端程序使用上述调用参数调用第二api,包括:
116.上述近端程序使用上述调用参数调用上述第二dll中的第二api。
117.应当理解,在本技术实施例中,所称处理器602可以是中央处理单元(central processing unit,cpu),该处理器还可以是其他通用处理器、数字信号处理器(digital signal processor,dsp)、专用集成电路(application specific integrated circuit,
asic)、现成可编程门阵列(field-programmable gate array,fpga)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
118.存储器601可以包括只读存储器和随机存取存储器,并向处理器602提供指令和数据。存储器601的一部分或全部还可以包括非易失性随机存取存储器。例如,存储器601还可以存储设备类别的信息。
119.所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,仅以上述各功能单元、模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能单元、模块完成,即将上述装置的内部结构划分成不同的功能单元或模块,以完成以上描述的全部或者部分功能。实施例中的各功能单元、模块可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中,上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。另外,各功能单元、模块的具体名称也只是为了便于相互区分,并不用于限制本技术的保护范围。上述系统中单元、模块的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
120.在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述或记载的部分,可以参见其它实施例的相关描述。
121.本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者外部设备软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本技术的范围。
122.在本技术所提供的实施例中,应该理解到,所揭露的装置和方法,可以通过其它的方式实现。例如,以上所描述的系统实施例仅仅是示意性的,例如,上述模块或单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通讯连接可以是通过一些接口,装置或单元的间接耦合或通讯连接,可以是电性,机械或其它的形式。
123.上述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
124.上述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读存储介质中。基于这样的理解,本技术实现上述实施例方法中的全部或部分流程,也可以通过计算机程序来指令相关联的硬件来完成,上述的计算机程序可存储于一计算机可读存储介质中,该计算机程序在被处理器执行时,可实现上述各个方法实施例的步骤。其中,上述计算机程序包括计算机程序代码,上述计算机程序代码可以为源代码形式、对象代码形式、可执行文件或某些中间形式等。上述计算机可读存储介质可以包括:能够携带上述计算机程序代码的任何实体或装置、记录介质、u盘、移动硬盘、磁碟、光盘、计算机可读存储器、只读存储器(rom,read-only memory)、随机存取存储器(ram,
random access memory)、电载波信号、电信信号以及软件分发介质等。需要说明的是,上述计算机可读存储介质包含的内容可以根据司法管辖区内立法和专利实践的要求进行适当的增减,例如在某些司法管辖区,根据立法和专利实践,计算机可读存储介质不包括是电载波信号和电信信号。
125.以上实施例仅用以说明本技术的技术方案,而非对其限制;尽管参照前述实施例对本技术进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本技术各实施例技术方案的精神和范围,均应包含在本技术的保护范围之内。

技术特征:


1.一种汽车远程诊断方法,其特征在于,应用于诊断仪,所述诊断仪安装有诊断软件和远端程序,所述远端程序包含第一应用程序编程接口api,所述汽车远程诊断方法包括:所述诊断软件向所述远端程序发送调用所述第一api的请求;所述远端程序获取所述请求所包含的调用参数;所述远端程序通过远程通讯将所述调用参数发送至终端设备上的近端程序,以指示所述近端程序使用所述调用参数调用第二api,所述终端设备通过所述第二api与vci设备通讯连接,所述vci设备与待诊断车辆通讯连接。2.如权利要求1所述的汽车远程诊断方法,其特征在于,在所述远端程序通过远程通讯将所述调用参数发送至终端设备上的近端程序之后,所述汽车远程诊断方法还包括:所述远端程序接收所述近端程序发送的响应数据,所述响应数据由所述终端设备执行诊断操作后得到;所述远端程序将所述响应数据反馈至所述诊断软件。3.如权利要求1所述的汽车远程诊断方法,其特征在于,所述第一api处于第一动态链接库dll中,在所述远端程序获取所述请求所包含的调用参数之前,所述汽车远程诊断方法还包括:所述诊断软件加载所述第一dll至内存;所述诊断软件生成调用所述第一dll中的第一api的请求。4.一种汽车远程诊断方法,其特征在于,应用于终端设备,所述终端设备安装有近端程序和第二应用程序编程接口api,所述汽车远程诊断方法包括:当所述近端程序通过远程通讯接收到诊断仪上的远端程序发送的针对第一api的调用参数时,所述近端程序使用所述调用参数调用所述第二api,所述终端设备通过所述第二api与vci设备通讯连接,所述vci设备与待诊断车辆通讯连接。5.如权利要求4所述的汽车远程诊断方法,其特征在于,在所述近端程序使用所述调用参数调用所述第二api之后,所述汽车远程诊断方法还包括:所述近端程序获取执行诊断操作得到的响应数据;所述近端程序将所述响应数据发送至所述远端程序。6.如权利要求4所述的汽车远程诊断方法,其特征在于,所述第二api处于第二动态链接库dll中,在所述近端程序使用所述调用参数调用所述第二api之前,所述汽车远程诊断方法还包括:所述近端程序加载所述第二dll至内存;所述近端程序使用所述调用参数调用所述第二api,包括:所述近端程序使用所述调用参数调用所述第二dll中的第二api。7.一种汽车远程诊断方法,其特征在于,应用于汽车远程诊断系统,所述汽车远程诊断系统包括诊断仪和终端设备,所述诊断仪安装有诊断软件和远端程序,所述远端程序包含第一应用程序编程接口api,所述终端设备安装有近端程序和第二api,所述汽车远程诊断方法包括:所述诊断软件向所述远端程序发送调用所述第一api的请求;所述远端程序获取所述请求所包含的调用参数;所述远端程序通过远程通讯将所述调用参数发送至所述近端程序;
所述近端程序使用所述调用参数调用所述第二api,所述终端设备通过所述第二api与vci设备通讯连接,所述vci设备与待诊断车辆通讯连接。8.一种诊断仪,其特征在于,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现如权利要求1至3任一项所述的方法。9.一种终端设备,其特征在于,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现如权利要求4至6任一项所述的方法。10.一种汽车远程诊断系统,其特征在于,包括:车辆;vci设备,与所述车辆连接;如权利要求9所述的终端设备,与所述vci设备连接;如权利要求8所述的诊断仪。

技术总结


本申请公开了一种汽车远程诊断方法、诊断仪、终端设备及汽车远程诊断系统。该方法应用于诊断仪,所述诊断仪安装有诊断软件和远端程序,所述远端程序包含第一应用程序编程接口API,该方法包括:所述诊断软件向所述远端程序发送调用所述第一API的请求;所述远端程序获取所述请求所包含的调用参数;所述远端程序通过远程通讯将所述调用参数发送至终端设备上的近端程序,以指示所述近端程序使用所述调用参数调用第二API,所述终端设备通过所述第二API与VCI设备通讯连接,所述VCI设备与待诊断车辆通讯连接。通过本申请方案,可以使用不支持远程诊断的汽车诊断标准,实现诊断仪远程对车辆进行诊断,给用户带来了极大的便利。给用户带来了极大的便利。给用户带来了极大的便利。


技术研发人员:

刘新 陈质健

受保护的技术使用者:

深圳市元征科技股份有限公司

技术研发日:

2022.08.16

技术公布日:

2022/11/22

本文发布于:2024-09-20 12:25:55,感谢您对本站的认可!

本文链接:https://www.17tex.com/tex/4/1781.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

标签:程序   终端设备   所述   远端
留言与评论(共有 0 条评论)
   
验证码:
Copyright ©2019-2024 Comsenz Inc.Powered by © 易纺专利技术学习网 豫ICP备2022007602号 豫公网安备41160202000603 站长QQ:729038198 关于我们 投诉建议