汽车诊断方法、装置、设备、系统和诊断连接设备转让专利

申请号 : CN201810016163.7

文献号 : CN108199942B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 赖辉强瞿松松

申请人 : 深圳市道通科技股份有限公司

摘要 :

本发明实施例涉及一种汽车诊断方法、装置、设备、系统和诊断连接设备,所述装置包括:第一界面接口模块,用于读取用户对界面的操作,并将所述操作转换成对应的诊断指令;第一协议转换模块,用于将所述诊断指令转换成所述诊断指令对应的标准传输数据;第一软件接口模块,用于通过所述第一通讯单元发送所述诊断指令对应的标准传输数据。本发明实施例通过将耗内存资源和处理器资源的物理层和数据链路层的协议转换全部或者部分放在汽车诊断设备上运行,使诊断连接设备只需运行部分物理层和数据链路层的协议转换或者不需要运行物理层和数据链路层的协议转换。降低了诊断连接设备对硬件性能的要求,节省了诊断连接设备的硬件成本。

权利要求 :

1.一种汽车诊断装置,用于汽车诊断设备,所述汽车诊断设备用于连接诊断连接设备,以通过所述诊断连接设备从汽车网络获取检测数据,所述汽车诊断设备包括第一通讯单元,其特征在于,所述诊断装置包括:第一界面接口模块,用于读取用户对界面的操作,并将所述操作转换成对应的诊断指令;

第一协议转换模块,用于利用诊断软件将所述诊断指令进行物理层和链路层协议转换,以转换成所述诊断指令对应的标准传输数据;

第一软件接口模块,用于通过所述第一通讯单元发送所述诊断指令对应的标准传输数据。

2.根据权利要求1所述的诊断装置,其特征在于,所述第一协议转换模块包括:第一控制器局域网络协议子模块,用于将所述诊断指令转换成所述诊断指令对应的控制器局域网络协议标准传输数据;

和/或,

第一通信总线协议子模块,用于将所述诊断指令转换成所述诊断指令对应的通信总线协议标准传输数据。

3.根据权利要求1或2所述的诊断装置,其特征在于,所述第一软件接口模块包括:同步发送模块,用于通过同步发送方式发送所述诊断指令对应的标准传输数据。

4.根据权利要求3所述的诊断装置,其特征在于,所述第一软件接口模块还包括:异步发送模块,用于通过异步发送方式发送所述诊断指令对应的标准传输数据。

5.根据权利要求4所述的诊断装置,其特征在于,所述标准传输数据包括两个以上的数据包;

所述异步发送模块具体用于:

注册发送回调函数,所述发送回调函数用于调用异步发送函数;

调用异步发送函数发送所述标准传输数据中的一个数据包,并返回,在所述数据包发送完毕后自动调用发送回调函数,以通过所述发送回调函数调用异步发送函数发送所述标准传输数据中的另一个数据包。

6.一种汽车诊断装置,用于汽车诊断设备,所述汽车诊断设备用于连接诊断连接设备,以通过所述诊断连接设备从汽车网络获取检测数据,所述汽车诊断设备包括第一通讯单元,其特征在于,所述诊断装置包括:第二软件接口模块,用于通过所述第一通讯单元接收汽车网络的检测数据对应的标准传输数据;

所述标准传输数据的链路层和物理层转换在诊断软件中进行;

第二协议转换模块,用于将所述检测数据对应的标准传输数据转换成检测数据。

7.根据权利要求6所述的诊断装置,其特征在于,所述装置还包括:第二界面接口模块,用于对所述检测数据进行解析,获得诊断结果。

8.根据权利要求6或7所述的诊断装置,其特征在于,所述第二协议转换模块包括:第二控制器局域网络协议子模块,用于将所述检测数据对应的控制器局域网络协议标准传输数据转换成检测数据;

和/或,

第二通信总线协议子模块,用于将所述检测数据对应的通信总线协议标准传输数据转换成检测数据。

9.根据权利要求6-8任意一项所述的诊断装置,其特征在于,所述第二软件接口模块包括:同步接收模块,用于通过同步接收方式接收汽车网络的检测数据对应的标准传输数据。

10.根据权利要求9所述的诊断装置,其特征在于,所述第二软件接口模块还包括:异步接收模块,用于通过异步接收方式接收汽车网络的检测数据对应的标准传输数据。

11.根据权利要求10所述的诊断装置,其特征在于,所述标准传输数据包括两个以上的数据包;

所述异步接收模块具体用于:

注册接收回调函数,所述接收回调函数用于调用异步接收函数;

收到所述标准传输数据中的数据包后自动调用接收回调函数,以通过所述接收回调函数调用异步接收函数接收所述数据包。

12.一种汽车诊断方法,用于汽车诊断设备,所述汽车诊断设备用于连接诊断连接设备,以通过所述诊断连接设备从汽车网络获取检测数据,其特征在于,所述诊断方法包括:读取用户对界面的操作,并将所述操作转换成对应的诊断指令;

将所述诊断指令转换成所述诊断指令对应的标准传输数据;

所述标准传输数据的链路层和物理层转换在诊断软件中进行;

发送所述诊断指令对应的标准传输数据。

13.根据权利要求12所述的诊断方法,其特征在于,所述将所述诊断指令转换成所述诊断指令对应的标准传输数据,包括:将所述诊断指令转换成所述诊断指令对应的控制器局域网络协议标准传输数据,和/或,将所述诊断指令转换成所述诊断指令对应的通信总线协议标准传输数据。

14.根据权利要求12或13所述的诊断方法,其特征在于,所述发送所述诊断指令对应的标准传输数据,包括:通过同步发送方式发送所述诊断指令对应的标准传输数据。

15.根据权利要求14所述的诊断方法,其特征在于,所述发送所述诊断指令对应的标准传输数据,还包括:通过异步发送方式发送所述诊断指令对应的标准传输数据。

16.根据权利要求15所述的诊断方法,其特征在于,所述标准传输数据包括两个以上的数据包;

所述通过异步发送方式发送所述诊断指令对应的标准传输数据,包括:注册发送回调函数,所述发送回调函数用于调用异步发送函数;

调用异步发送函数发送所述标准传输数据中的一个数据包,并返回,在所述数据包发送完毕后自动调用发送回调函数,以通过所述发送回调函数调用异步发送函数发送所述标准传输数据中的另一个数据包。

17.一种汽车诊断方法,用于汽车诊断设备,所述汽车诊断设备用于连接诊断连接设备,以通过所述诊断连接设备从汽车网络获取检测数据,其特征在于,所述诊断方法包括:接收汽车网络的检测数据对应的标准传输数据;

所述标准传输数据的链路层和物理层转换在诊断软件中进行;

将所述检测数据对应的标准传输数据转换成检测数据。

18.根据权利要求17所述的诊断方法,其特征在于,所述方法还包括:对所述检测数据进行解析,获得诊断结果。

19.根据权利要求17或18所述的诊断方法,其特征在于,所述将所述检测数据对应的标准传输数据转换成检测数据,包括:将所述检测数据对应的控制器局域网络协议标准传输数据转换成检测数据,和/或,将所述检测数据对应的通信总线协议标准传输数据转换成检测数据。

20.根据权利要求17-19任意一项所述的诊断方法,其特征在于,所述接收汽车网络的检测数据对应的标准传输数据,包括:通过同步接收方式接收汽车网络的检测数据对应的标准传输数据。

21.根据权利要求20所述的诊断方法,其特征在于,所述接收汽车网络的检测数据对应的标准传输数据,还包括:通过异步接收方式接收汽车网络的检测数据对应的标准传输数据。

22.根据权利要求21所述的诊断方法,其特征在于,所述标准传输数据包括两个以上的数据包;

所述通过异步接收方式接收汽车网络的检测数据对应的标准传输数据,包括:注册接收回调函数,所述接收回调函数用于调用异步接收函数;

收到所述标准传输数据中的数据包后自动调用接收回调函数,以通过所述接收回调函数调用异步接收函数接收所述数据包。

23.一种汽车诊断方法,用于诊断连接设备,所述诊断连接设备用于连接汽车诊断设备和汽车网络,其特征在于,所述方法包括:接收汽车诊断设备发送的诊断指令对应的标准传输数据;

所述标准传输数据的链路层和物理层转换在诊断软件中进行;

将所述诊断指令对应的标准传输数据发送给所述汽车网络;

接收汽车网络发送的检测数据对应的标准传输数据;

将所述检测数据对应的标准传输数据发送给所述汽车诊断设备。

24.一种汽车诊断装置,用于诊断连接设备,所述诊断连接设备用于连接汽车诊断设备和汽车网络,其特征在于,所述装置包括:第一接收模块,用于接收汽车诊断设备发送的诊断指令对应的标准传输数据;

所述标准传输数据的链路层和物理层转换在诊断软件中进行;

第一发送模块,用于将所述诊断指令对应的标准传输数据发送给所述汽车网络;

第二接收模块,用于接收汽车网络发送的检测数据对应的标准传输数据;

第二发送模块,用于将所述检测数据对应的标准传输数据发送给所述汽车诊断设备。

25.一种汽车诊断设备,其特征在于,包括:显示屏幕;

第一通讯单元,用于发送和接收数据;

至少一个处理器;以及,

与所述至少一个处理器通信连接的存储器;其中,所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行权利要求12-22任一项所述的方法。

26.一种诊断连接设备,其特征在于,包括:第二通讯单元,用于发送和接收数据;

至少一个通讯控制器:与所述第二通讯单元相连,用于控制总线传输数据;

至少一个总线:与所述通讯控制器相连,用于传输数据;

诊断接口:与所述总线相连,用于连接汽车网络;

所述通讯控制器包括:

至少一个处理器;以及,

与所述至少一个处理器通信连接的存储器;其中,所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行权利要求23所述的方法。

27.一种汽车诊断系统,其特征在于,所述诊断系统包括:权利要求25所述的汽车诊断设备和权利要求26所述的诊断连接设备。

28.一种非易失性计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有计算机可执行指令,当所述计算机可执行指令被汽车诊断设备执行时,使所述汽车诊断设备执行权利要求12-22的任一项所述的方法。

说明书 :

汽车诊断方法、装置、设备、系统和诊断连接设备

技术领域

[0001] 本发明实施例涉及汽车技术领域,特别涉及一种汽车诊断方法、装置、设备、系统和诊断连接设备。

背景技术

[0002] 汽车作为一种重要的交通工具,极大的提高了人类的生活质量,随着汽车在人类生活中的重要性越来越高,对汽车的性能提出了更高的要求。目前检测汽车故障和性能的汽车诊断系统的应用越来越广泛,其主要通过诊断连接设备,例如VCI设备(Vehicle Connection Interface),连接汽车网络和PC端诊断软件来实现。
[0003] 实现本发明过程中,发明人发现相关技术中至少存在如下问题:由于诊断连接设备中需要设置链路协议栈来实现链路层和物理层数据的转换,对汽车诊断设备中主芯片资源消耗大,因此对主芯片的性能要求较高,造成诊断连接设备硬件成本高。

发明内容

[0004] 本发明实施例的目的是提供一种汽车诊断方法、装置、设备、系统和诊断连接设备,能降低诊断连接设备的硬件成本。
[0005] 第一方面,本发明实施例提供了一种汽车诊断装置,用于汽车诊断设备,所述汽车诊断设备用于连接诊断连接设备,以通过所述诊断连接设备从汽车网络获取检测数据,所述汽车诊断设备包括第一通讯单元,所述诊断装置包括:
[0006] 第一界面接口模块,用于读取用户对界面的操作,并将所述操作转换成对应的诊断指令;
[0007] 第一协议转换模块,用于将所述诊断指令转换成所述诊断指令对应的标准传输数据;
[0008] 第一软件接口模块,用于通过所述第一通讯单元发送所述诊断指令对应的标准传输数据。
[0009] 可选的,所述第一协议转换模块包括:
[0010] 第一控制器局域网络协议子模块,用于将所述诊断指令转换成所述诊断指令对应的控制器局域网络协议标准传输数据;
[0011] 和/或,
[0012] 第一通信总线协议子模块,用于将所述诊断指令转换成所述诊断指令对应的通信总线协议标准传输数据。
[0013] 可选的,所述第一软件接口模块包括:
[0014] 同步发送模块,用于通过同步发送方式发送所述诊断指令对应的标准传输数据。
[0015] 可选的,所述第一软件接口模块还包括:
[0016] 异步发送模块,用于通过异步发送方式发送所述诊断指令对应的标准传输数据。
[0017] 可选的,所述标准传输数据包括两个以上的数据包;
[0018] 所述异步发送模块具体用于:
[0019] 注册发送回调函数,所述发送回调函数用于调用异步发送函数;
[0020] 调用异步发送函数发送所述标准传输数据中的一个数据包,并返回,在所述数据包发送完毕后自动调用发送回调函数,以通过所述发送回调函数调用异步发送函数发送所述标准传输数据中的另一个数据包。
[0021] 第二方面,本发明实施例提供了一种汽车诊断装置,用于汽车诊断设备,所述汽车诊断设备用于连接诊断连接设备,以通过所述诊断连接设备从汽车网络获取检测数据,所述汽车诊断设备包括第一通讯单元,所述诊断装置包括:
[0022] 第二软件接口模块,用于通过所述第一通讯单元接收汽车网络的检测数据对应的标准传输数据;
[0023] 第二协议转换模块,用于将所述检测数据对应的标准传输数据转换成检测数据。
[0024] 可选的,所述装置还包括:
[0025] 第二界面接口模块,用于对所述检测数据进行解析,获得诊断结果。
[0026] 可选的,所述第二协议转换模块包括:
[0027] 第二控制器局域网络协议子模块,用于将所述检测数据对应的控制器局域网络协议标准传输数据转换成检测数据;
[0028] 和/或,
[0029] 第二通信总线协议子模块,用于将所述检测数据对应的通信总线协议标准传输数据转换成检测数据。
[0030] 可选的,所述第二软件接口模块包括:
[0031] 同步接收模块,用于通过同步接收方式接收汽车网络的检测数据对应的标准传输数据。
[0032] 可选的,所述第二软件接口模块还包括:
[0033] 异步接收模块,用于通过异步接收方式接收汽车网络的检测数据对应的标准传输数据。
[0034] 可选的,所述标准传输数据包括两个以上的数据包;
[0035] 所述异步接收模块具体用于:
[0036] 注册接收回调函数,所述接收回调函数用于调用异步接收函数;
[0037] 收到所述标准传输数据中的数据包后自动调用接收回调函数,以通过所述接收回调函数调用异步接收函数接收所述数据包。
[0038] 第三方面,本发明实施例提供了一种汽车诊断方法,用于汽车诊断设备,所述汽车诊断设备用于连接诊断连接设备,以通过所述诊断连接设备从汽车网络获取检测数据,所述诊断方法包括:
[0039] 读取用户对界面的操作,并将所述操作转换成对应的诊断指令;
[0040] 将所述诊断指令转换成所述诊断指令对应的标准传输数据;
[0041] 发送所述诊断指令对应的标准传输数据。
[0042] 可选的,所述将所述诊断指令转换成所述诊断指令对应的标准传输数据,包括:
[0043] 将所述诊断指令转换成所述诊断指令对应的控制器局域网络协议标准传输数据,和/或,将所述诊断指令转换成所述诊断指令对应的通信总线协议标准传输数据。
[0044] 可选的,所述发送所述诊断指令对应的标准传输数据,包括:
[0045] 通过同步发送方式发送所述诊断指令对应的标准传输数据。
[0046] 可选的,所述发送所述诊断指令对应的标准传输数据,还包括:
[0047] 通过异步发送方式发送所述诊断指令对应的标准传输数据。
[0048] 可选的,所述标准传输数据包括两个以上的数据包;
[0049] 所述通过异步发送方式发送所述诊断指令对应的标准传输数据,包括:
[0050] 注册发送回调函数,所述发送回调函数用于调用异步发送函数;调用异步发送函数发送所述标准传输数据中的一个数据包,并返回,在所述数据包发送完毕后自动调用发送回调函数,以通过所述发送回调函数调用异步发送函数发送所述标准传输数据中的另一个数据包。
[0051] 第四方面,本发明实施例提供了一种汽车诊断方法,用于汽车诊断设备,所述汽车诊断设备用于连接诊断连接设备,以通过所述诊断连接设备从汽车网络获取检测数据,所述诊断方法包括:
[0052] 接收汽车网络的检测数据对应的标准传输数据;
[0053] 将所述检测数据对应的标准传输数据转换成检测数据。
[0054] 可选的,所述方法还包括:
[0055] 对所述检测数据进行解析,获得诊断结果。
[0056] 可选的,所述将所述检测数据对应的标准传输数据转换成检测数据,包括:
[0057] 将所述检测数据对应的控制器局域网络协议标准传输数据转换成检测数据,和/或,将所述检测数据对应的通信总线协议标准传输数据转换成检测数据。
[0058] 可选的,所述接收汽车网络的检测数据对应的标准传输数据,包括:
[0059] 通过同步接收方式接收汽车网络的检测数据对应的标准传输数据。
[0060] 可选的,所述接收汽车网络的检测数据对应的标准传输数据,还包括:
[0061] 通过异步接收方式接收汽车网络的检测数据对应的标准传输数据。
[0062] 可选的,所述标准传输数据包括两个以上的数据包;
[0063] 所述通过异步接收方式接收汽车网络的检测数据对应的标准传输数据,包括:
[0064] 注册接收回调函数,所述接收回调函数用于调用异步接收函数;
[0065] 收到所述标准传输数据中的数据包后自动调用接收回调函数,以通过所述接收回调函数调用异步接收函数接收所述数据包。
[0066] 第五方面,本发明实施例提供了一种汽车诊断方法,用于诊断连接设备,所述诊断连接设备用于连接汽车诊断设备和汽车网络,所述方法包括:
[0067] 接收汽车诊断设备发送的诊断指令对应的标准传输数据;
[0068] 将所述诊断指令对应的标准传输数据发送给所述汽车网络;
[0069] 接收汽车网络发送的检测数据对应的标准传输数据;
[0070] 将所述检测数据对应的标准传输数据发送给所述汽车诊断设备。
[0071] 第六方面,本发明实施例提供了一种汽车诊断装置,用于诊断连接设备,所述诊断连接设备用于连接汽车诊断设备和汽车网络,所述装置包括:
[0072] 第一接收模块,用于接收汽车诊断设备发送的诊断指令对应的标准传输数据;
[0073] 第一发送模块,用于将所述诊断指令对应的标准传输数据发送给所述汽车网络;
[0074] 第二接收模块,用于接收汽车网络发送的检测数据对应的标准传输数据;
[0075] 第二发送模块,用于将所述检测数据对应的标准传输数据发送给所述汽车诊断设备。
[0076] 第七方面,本发明实施例提供了一种汽车诊断设备,包括:
[0077] 显示屏幕;
[0078] 第一通讯单元,用于发送和接收数据;
[0079] 至少一个处理器;以及,
[0080] 与所述至少一个处理器通信连接的存储器;其中,
[0081] 所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行第三方面和第四方面中任一项所述的方法。
[0082] 第八方面,本发明实施例提供了一种诊断连接设备,包括:
[0083] 第二通讯单元,用于发送和接收数据;
[0084] 至少一个通讯控制器:与所述第二通讯单元相连,用于控制总线传输数据;
[0085] 至少一个总线:与所述通讯控制器相连,用于传输数据;
[0086] 诊断接口:与所述总线相连,用于连接汽车网络;
[0087] 所述通讯控制器包括:
[0088] 至少一个处理器;以及,
[0089] 与所述至少一个处理器通信连接的存储器;其中,
[0090] 所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行第五方面中任一项所述的方法。
[0091] 第九方面,本发明实施例提供了一种汽车诊断系统,所述诊断系统包括:
[0092] 上述的汽车诊断设备和上述的诊断连接设备。
[0093] 第十方面,本发明实施例提供了一种非易失性计算机可读存储介质,所述计算机可读存储介质存储有计算机可执行指令,当所述计算机可执行指令被汽车诊断设备执行时,使所述汽车诊断设备执行第三方面和第四方面中任一项所述的方法。
[0094] 第十一方面,本发明实施例提供了一种计算机程序产品,所述计算机程序产品包括存储在非易失性计算机可读存储介质上的计算机程序,所述计算机程序包括程序指令,当所述程序指令被汽车诊断设备执行时,使所述汽车诊断设备执行第三方面和第四方面中任一项所述的方法。
[0095] 本发明实施例的有益效果是:本发明实施例通过将耗内存资源和处理器资源的物理层和数据链路层的协议转换全部或者部分放在汽车诊断设备上运行,使诊断连接设备只需运行部分物理层和数据链路层的协议转换或者不需要运行物理层和数据链路层的协议转换。降低了诊断连接设备对硬件性能的要求,节省了诊断连接设备的硬件成本。

附图说明

[0096] 一个或多个实施例通过与之对应的附图中的图片进行示例性说明,这些示例性说明并不构成对实施例的限定,附图中具有相同参考数字标号的元件表示为类似的元件,除非有特别申明,附图中的图不构成比例限制。
[0097] 图1是本发明实施例提供的汽车诊断方法和装置的应用场景示意图;
[0098] 图2A是本发明用于汽车诊断设备侧的汽车诊断方法的一个实施例的流程示意图;
[0099] 图2B是本发明用于汽车诊断设备侧的汽车诊断方法的一个实施例的流程示意图;
[0100] 图3是本发明用于汽车诊断设备侧的汽车诊断方法的一个实施例中通过异步发送方式发送数据的流程示意图;
[0101] 图4是本发明用于汽车诊断设备侧的汽车诊断方法的一个实施例中通过异步接收方式接收数据的流程示意图;
[0102] 图5是本发明用于汽车诊断设备侧的汽车诊断装置的一个实施例的结构示意图;
[0103] 图6是本发明用于汽车诊断设备侧的汽车诊断装置的一个实施例的结构示意图;
[0104] 图7是本发明用于诊断连接设备侧的汽车诊断方法的一个实施例的流程示意图;
[0105] 图8是本发明用于诊断连接设备侧的汽车诊断装置的一个实施例的结构示意图;
[0106] 图9是本发明实施例提供的汽车诊断设备的硬件结构示意图;
[0107] 图10是本发明实施例提供的诊断连接设备的硬件结构示意图;
[0108] 图11是本发明实施例提供的汽车诊断系统的硬件结构示意图。

具体实施方式

[0109] 为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
[0110] 本发明实施例提供的汽车诊断方法和装置适用于如图1所示的应用场景。所述应用场景包括汽车诊断设备10、诊断连接设备20和汽车网络30。汽车网络30是被检测对象,其包括汽车的电控模块,可以检测汽车各部分的运行数据和故障码等检测数据。诊断连接设备20例如VCI(Vehicle Connection Interface)设备,其是汽车诊断设备10中诊断软件和汽车网络30通信的桥梁,负责将汽车诊断设备10的诊断指令传送给汽车网络30,以及将汽车网络30返回的检测数据传送给汽车诊断设备10。汽车诊断设备10和诊断连接设备20之间可以通过通信串口、USB接口等有线方式连接,也可以通过蓝牙、WIFI等无线方式连接,诊断连接设备20与汽车网络30之间通过诊断接口例如OBD(On-Board Diagnostic)接口相连。
[0111] 汽车诊断设备10是能够运行诊断软件的设备,例如个人计算机、智能手机等,或者专门提供的诊断设备。在实际应用中,汽车诊断设备10和诊断连接设备20可以搭配出售,诊断连接设备20也可以单独出售,与个人计算机、智能手机等汽车诊断设备配合使用,对汽车网络进行诊断。所述诊断软件提供人机交互界面,通过操作该界面用户可以选择诊断功能,诊断软件将用户选择的诊断功能转换成诊断指令,并将该诊断指令通过诊断连接设备20发送给汽车网络30。汽车网络30根据该诊断指令获得该诊断指令对应的检测数据,并将所述检测数据通过诊断连接设备20发送给汽车诊断设备10。汽车诊断设备10的诊断软件对汽车网络30反馈的检测数据进行解析,获得诊断结果,并将诊断结果向用户展示。
[0112] 图2A为本发明实施例提供的一种汽车诊断方法的流程示意图,所述方法可以由图1中的汽车诊断设备10执行,如图2所示,所述诊断方法包括:
[0113] 101:读取用户对界面的操作,并将所述操作转换成对应的诊断指令。
[0114] 在实际应用中,所述汽车诊断方法可以通过汽车诊断软件的形式来实现,该汽车诊断软件具有人机交互界面,该人机交互界面可在汽车诊断设备10的显示屏幕上显示。用户可以通过按键和显示屏幕对该诊断软件进行操作,例如选择总线类型、总线控制器类型、诊断功能,以及进行诊断连接设备20的参数设置等,汽车网络30包括多个电控模块的场合,还可以对电控模块进行选择。汽车诊断设备10将用户对界面的操作转换成诊断指令。
[0115] 102:将所述诊断指令转换成所述诊断指令对应的标准传输数据。
[0116] 因为所述诊断指令需要通过总线传输给汽车网络30,所以该诊断指令需要转换成物理层的总线传输数据协议格式,即进行数据链路层和物理层协议转换。在汽车网络包括控制器局域网络(Controller Area Network,CAN)总线、通讯(Kommunikation,K)总线等的场合,诊断指令可以转换成CAN总线数据协议格式、K总线数据协议格式等。
[0117] 目前的诊断方法中,上述数据链路层和物理层的转换是在诊断连接设备20中进行的,由于该转换对诊断连接设备20中主芯片资源消耗大,对主芯片的性能要求较高,造成诊断连接设备20硬件成本高。本实施例将链路层与物理层的协议转换放在诊断软件中,即放在汽车诊断设备10中,因为个人计算机、智能手机等汽车诊断设备10本身性能较高,能胜任大多数软件运行,因此将协议转换在汽车诊断设备10端运行在不增加汽车诊断设备10的硬件成本的基础上,降低了诊断连接设备20的硬件成本。
[0118] 其中,可选的,可以将全部协议转换全在汽车诊断设备10上运行,也可以将部分协议转换在汽车诊断设备10上运行。例如诊断指令到CAN总线协议标准传输数据的转换和诊断指令到K总线协议标准传输数据的转换都在汽车诊断设备10侧运行,或者仅诊断指令到CAN总线协议标准传输数据的转换在汽车诊断设备10侧运行,而诊断指令到K总线协议标准传输数据的转换在诊断连接设备20侧运行。
[0119] 103:发送所述诊断指令对应的标准传输数据。
[0120] 在实际应用中,可以通过汽车诊断设备10的通讯单元将诊断指令对应的标准传输数据发送给诊断连接设备20,其中,通讯单元例如串口通讯单元、USB通讯单元、蓝牙通讯单元和WIFI通讯单元等。
[0121] 通过如上101、102和103,汽车诊断设备10将诊断指令通过诊断连接设备20发送给汽车网络30。汽车网络30接收到汽车诊断设备10发送的诊断指令后,根据该诊断指令对汽车的电控模块进行检测,并获得对应的检测数据。汽车网络30将所述检测数据转换成符合总线传输标准的标准传输数据,通过诊断连接设备20发送给汽车诊断设备10。汽车诊断设备10接收到该检测数据对应的标准传输数据后进行处理,请参照图2B,具体如下:
[0122] 104:接收汽车网络的检测数据对应的标准传输数据。
[0123] 105:将所述检测数据对应的标准传输数据转换成检测数据。
[0124] 汽车诊断设备10将检测数据对应的标准传输数据进行物理层和数据链路层协议转换,获得检测数据。可选的,针对该检测数据的协议转换可以全部在汽车诊断设备10上运行,也可以部分在汽车诊断设备10上运行。例如CAN总线协议标准传输数据到检测数据的转换和K总线协议标准传输数据到检测数据的转换都在汽车诊断设备10侧运行,或者仅CAN总线协议标准传输数据到检测数据的转换在汽车诊断设备10侧运行,而K总线协议标准传输数据到检测数据的转换在诊断连接设备20侧运行。
[0125] 106:对所述检测数据进行解析,获得诊断结果。
[0126] 汽车诊断设备10对所述检测数据进行解析,获得汽车网络30的诊断结果。
[0127] 本发明实施例通过将耗内存资源和处理器资源的物理层和数据链路层的协议转换全部或者部分放在汽车诊断设备10上运行,使诊断连接设备20只需运行部分物理层和数据链路层的协议转换或者不需要运行物理层和数据链路层的协议转换。降低了诊断连接设备20对硬件性能的要求,节省了诊断连接设备20的硬件成本。
[0128] 可选的,汽车诊断设备10将诊断指令对应的标准传输数据发送给诊断连接设备20,可以通过同步发送的方式,也可以通过异步发送的方式。汽车诊断设备10接收诊断连接设备20发送的检测数据对应的标准传输数据,可以通过同步接收的方式也可以通过异步接收的方式。上述汽车诊断设备10进行的向诊断连接设备20发送数据和从诊断连接设备20接收数据,可以通过在汽车诊断设备10上设置访问诊断连接设备20的软件接口函数来实现,即设置同步发送函数、同步接收函数,和/或,发送回调函数、接收回调函数、异步发送函数和异步接收函数。
[0129] 具体的,汽车诊断设备10通过异步发送方式发送诊断指令对应的标准传输数据,如图3所示,包括:
[0130] 1031:注册发送回调函数,所述发送回调函数用于调用异步发送函数。
[0131] 注册发送回调函数前,需要先打开控制器设备,例如如果用户选择CAN总线类型,则需要打开CAN总线的通讯控制器和CAN总线。
[0132] 1032:调用异步发送函数发送所述标准传输数据中的一个数据包,并返回,在所述数据包发送完毕后自动调用发送回调函数,以通过所述发送回调函数调用异步发送函数发送所述标准传输数据中的另一个数据包。
[0133] 所述标准传输数据包括多个数据包,调用异步发送函数顺序发送标准传输数据包括的多个数据包。汽车诊断设备10首先调用异步发送函数发送其中一个数据包,之后函数返回,在该数据包发送完毕后自动调用发送回调函数,发送回调函数会再次调用异步发送函数来传输下一个数据包,直至该标准传输数据发送完毕。
[0134] 汽车诊断设备10通过异步接收方式接收汽车网络30的检测数据对应的标准传输数据,如图4所示,具体包括:
[0135] 1041:注册接收回调函数,所述接收回调函数用于调用异步接收函数。
[0136] 1042:收到所述标准传输数据中的数据包后自动调用接收回调函数,以通过所述接收回调函数调用异步接收函数接收所述数据包。
[0137] 汽车诊断设备10接收到标准传输数据中的数据包后自动调用接收回调函数,接收回调函数调用异步接收函数接收标准传输数据中的数据包。
[0138] 提供异步通讯软件接口,可以实现支持多个相同协议或不相同协议的逻辑链路对象同时访问软件接口函数,数据传输效率高。
[0139] 相应的,本发明实施例还提供了一种汽车诊断装置,用于图1中的汽车诊断设备10,所述汽车诊断设备10包括第一通讯单元,请参照图5,诊断装置500包括:
[0140] 第一界面接口模块501,用于读取用户对界面的操作,并将所述操作转换成对应的诊断指令;
[0141] 第一协议转换模块502,用于将所述诊断指令转换成所述诊断指令对应的标准传输数据;
[0142] 第一软件接口模块503,用于通过所述第一通讯单元发送所述诊断指令对应的标准传输数据。
[0143] 本发明实施例通过将耗内存资源和处理器资源的物理层和数据链路层的协议转换全部或者部分放在汽车诊断设备10上运行,使诊断连接设备20只需运行部分物理层和数据链路层的协议转换或者不需要运行物理层和数据链路层的协议转换。降低了诊断连接设备20对硬件性能的要求,节省了诊断连接设备20的硬件成本。
[0144] 可选的,在所述诊断装置500的某些实施例中,请参照图6,第一协议转换模块502包括:
[0145] 第一控制器局域网络协议子模块5021,用于将所述诊断指令转换成所述诊断指令对应的控制器局域网络协议标准传输数据;
[0146] 和/或,
[0147] 第一通信总线协议子模块5022,用于将所述诊断指令转换成所述诊断指令对应的通信总线协议标准传输数据。
[0148] 可选的,在所述诊断装置500的某些实施例中,请参照图6,第一软件接口模块503包括:
[0149] 同步发送模块5031,用于通过同步发送方式发送所述诊断指令对应的标准传输数据。
[0150] 可选的,在所述诊断装置500的某些实施例中,请参照图6,第一软件接口模块503还包括:
[0151] 异步发送模块5032,用于通过异步发送方式发送所述诊断指令对应的标准传输数据。
[0152] 可选的,在所述诊断装置500的某些实施例中,所述标准传输数据包括两个以上的数据包;
[0153] 异步发送模块5032具体用于:
[0154] 注册发送回调函数,所述发送回调函数用于调用异步发送函数;
[0155] 调用异步发送函数发送所述标准传输数据中的一个数据包,并返回,在所述数据包发送完毕后自动调用发送回调函数,以通过所述发送回调函数调用异步发送函数发送所述标准传输数据中的另一个数据包。
[0156] 需要说明的是,上述汽车诊断装置可执行本申请实施例所提供的汽车诊断方法,具备执行汽车诊断方法相应的功能模块和有益效果。未在装置实施例中详尽描述的技术细节,可参见本申请实施例所提供的汽车诊断方法。
[0157] 本发明实施例还提供了一种汽车诊断装置,用于图1中的汽车诊断设备10,所述汽车诊断设备10包括第一通讯单元,请参照图5,诊断装置500包括:
[0158] 第二软件接口模块504,用于通过所述第一通讯单元接收汽车网络的检测数据对应的标准传输数据;
[0159] 第二协议转换模块505,用于将所述检测数据对应的标准传输数据转换成检测数据。
[0160] 本发明实施例通过将耗内存资源和处理器资源的物理层和数据链路层的协议转换全部或者部分放在汽车诊断设备10上运行,使诊断连接设备20只需运行部分物理层和数据链路层的协议转换或者不需要运行物理层和数据链路层的协议转换。降低了诊断连接设备20对硬件性能的要求,节省了诊断连接设备20的硬件成本。
[0161] 可选的,在所述诊断装置500的其他实施例中,请参照图5,诊断装置500还包括:
[0162] 第二界面接口模块506,用于对所述检测数据进行解析,获得诊断结果。
[0163] 可选的,在所述诊断装置500的某些实施例中,请参照图6,第二协议转换模块505包括:
[0164] 第二控制器局域网络协议子模块5051,用于将所述检测数据对应的控制器局域网络协议标准传输数据转换成检测数据;
[0165] 和/或,
[0166] 第二通信总线协议子模块5052,用于将所述检测数据对应的通信总线协议标准传输数据转换成检测数据。
[0167] 可选的,在所述诊断装置500的某些实施例中,请参照图6,所述第二软件接口模块504包括:
[0168] 同步接收模块5041,用于通过同步接收方式接收汽车网络的检测数据对应的标准传输数据。
[0169] 可选的,在所述诊断装置500的某些实施例中,请参照图6,第二软件接口模块504还包括:
[0170] 异步接收模块5042,用于通过异步接收方式接收汽车网络的检测数据对应的标准传输数据。
[0171] 可选的,在所述诊断装置500的某些实施例中,所述标准传输数据包括两个以上的数据包;
[0172] 异步接收模块5042具体用于:
[0173] 注册接收回调函数,所述接收回调函数用于调用异步接收函数;
[0174] 收到所述标准传输数据中的数据包后自动调用接收回调函数,以通过所述接收回调函数调用异步接收函数接收所述数据包。
[0175] 需要说明的是,上述汽车诊断装置可执行本申请实施例所提供的汽车诊断方法,具备执行汽车诊断方法相应的功能模块和有益效果。未在装置实施例中详尽描述的技术细节,可参见本申请实施例所提供的汽车诊断方法。
[0176] 本发明实施例还提供了一种汽车诊断方法,用于图1中的诊断连接设备20,请参照图7,所述方法包括:
[0177] 201:接收汽车诊断设备发送的诊断指令对应的标准传输数据。
[0178] 202:将所述诊断指令对应的标准传输数据发送给所述汽车网络。
[0179] 诊断连接设备20通过通讯单元接收到诊断指令对应的标准传输数据后,利用用户选择的通讯控制器控制对应的总线将该标准传输数据发送出去。
[0180] 203:接收汽车网络发送的检测数据对应的标准传输数据。
[0181] 204:将所述检测数据对应的标准传输数据发送给所述汽车诊断设备。
[0182] 诊断连接设备20接收到总线传输的汽车网络30反馈的检测数据对应的标准传输数据后,通过通讯单元将该标准传输数据发送给汽车诊断设备10。
[0183] 本发明实施例通过将耗内存资源和处理器资源的物理层和数据链路层的协议转换放在汽车诊断设备10上运行,诊断连接设备20不需运行物理层和数据链路层的协议转换。降低了诊断连接设备20对硬件性能的要求,节省了诊断连接设备20的硬件成本。
[0184] 相应的,本发明实施例还提供了一种汽车诊断装置,用于图1中的诊断连接设备20,如图8所示,所述诊断装置600包括:
[0185] 第一接收模块601,用于接收汽车诊断设备发送的诊断指令对应的标准传输数据;
[0186] 第一发送模块602,用于将所述诊断指令对应的标准传输数据发送给所述汽车网络;
[0187] 第二接收模块603,用于接收汽车网络发送的检测数据对应的标准传输数据;
[0188] 第二发送模块604,用于将所述检测数据对应的标准传输数据发送给所述汽车诊断设备。
[0189] 本发明实施例通过将耗内存资源和处理器资源的物理层和数据链路层的协议转换放在汽车诊断设备10上运行,诊断连接设备20不需运行物理层和数据链路层的协议转换。降低了诊断连接设备20对硬件性能的要求,节省了诊断连接设备20的硬件成本。
[0190] 图9是本发明实施例提供的汽车诊断设备10的硬件结构示意图,如图9所示,汽车诊断设备10包括:
[0191] 显示屏幕13和第一通讯单元14,其中,第一通讯单元14用于接收和发送数据,第一通讯单元14例如串口通讯单元、USB通讯单元、蓝牙通讯单元和WIFI通讯单元等。
[0192] 一个或多个处理器11以及存储器12,图9中以一个处理器11为例。处理器11和存储器12可以通过总线或者其他方式连接。
[0193] 存储器12作为一种非易失性计算机可读存储介质,可用于存储非易失性软件程序、非易失性计算机可执行程序以及模块,如本发明实施例中的诊断方法对应的程序指令/单元(例如,附图5所示的第一界面接口模块501、第一协议转换模块502、第一软件接口模块503、第二软件接口模块504、第二协议转换模块505和第二界面接口模块506)。处理器11通过运行存储在存储器12中的非易失性软件程序、指令以及单元,从而执行汽车诊断设备10的各种功能应用以及数据处理,即实现上述方法实施例的诊断方法。
[0194] 存储器12可以包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需要的应用程序;存储数据区可存储根据汽车诊断设备10使用所创建的数据等。此外,存储器12可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他非易失性固态存储器件。在一些实施例中,存储器12可选包括相对于处理器11远程设置的存储器,这些远程存储器可以通过网络连接至汽车诊断设备10。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
[0195] 所述一个或者多个单元存储在所述存储器12中,当被所述一个或者多个处理器11执行时,执行上述任意方法实施例中的诊断方法,例如,执行以上描述的图2A中的方法步骤101-103,图2B中的方法步骤104-106,图3中的方法步骤1031-1032,图4中的方法步骤1041-
1042,实现图5所示的模块501-506、图6中的模块501-506、子模块5021-5022、子模块5031-
5032、子模块5051-5052的功能。
[0196] 上述汽车诊断设备10可执行本发明实施例所提供的汽车诊断方法,具备执行方法相应的功能模块和有益效果。未在汽车诊断设备10实施例中详尽描述的技术细节,可参见本发明实施例所提供的方法。
[0197] 本发明实施例的汽车诊断设备10以多种形式存在,包括但不限于:
[0198] (1)移动通信设备:这类设备的特点是具备移动通信功能,并且以提供话音、数据通信为主要目标。这类终端包括:智能手机(例如iPhone)、多媒体手机、功能性手机,以及低端手机等。
[0199] (2)超移动个人计算机设备:这类设备属于个人计算机的范畴,有计算和处理功能,一般也具备移动上网特性。这类终端包括:PDA、MID和UMPC设备等,例如iPad。
[0200] (3)便携式娱乐设备:这类设备可以显示和播放多媒体内容。该类设备包括:音频、视频播放器(例如iPod),掌上游戏机,电子书,以及智能玩具和便携式车载导航设备。
[0201] (4)服务器:提供计算服务的设备,服务器的构成包括处理器、硬盘、内存、系统总线等,服务器和通用的计算机架构类似,但是由于需要提供高可靠的服务,因此在处理能力、稳定性、可靠性、安全性、可扩展性、可管理性等方面要求较高。
[0202] 本发明实施例还提供了一种非易失性计算机可读存储介质,所述计算机可读存储介质存储有计算机可执行指令,该计算机可执行指令被一个或多个处理器执行,例如,执行上述任意方法实施例中的诊断方法,例如,执行以上描述的图2A中的方法步骤101-103,图2B中的方法步骤104-106,,图3中的方法步骤1031-1032,图4中的方法步骤1041-1042,实现图5所示的模块501-506、图6中的模块501-506、子模块5021-5022、子模块5031-5032、子模块5051-5052的功能。
[0203] 图10是本发明实施例提供的诊断连接设备20的硬件结构示意图,如图10所示,该诊断连接设备20包括:
[0204] 第二通讯单元21、至少一个通讯控制器22、至少一个总线23(图10中以一个通讯控制器22和一个总线23为例说明)和诊断接口24。其中,第二通讯单元21依次通过通讯控制器22、总线23和诊断接口24相连。第二通讯单元21用于发送和接收数据,通讯控制器22用于控制总线23传输数据,总线23用于传输数据,诊断接口24,用于连接汽车网络。
[0205] 其中,第二通讯单元21例如串口通讯单元、USB通讯单元、蓝牙通讯单元和WIFI通讯单元等,通讯控制器22例如CAN总线控制器、K总线控制器,总线23例如CAN总线、K总线等,诊断接口24例如OBD接口。
[0206] 通讯控制器22包括一个或多个处理器25以及存储器26,图10中以一个处理器25为例。处理器25和存储器26可以通过总线或者其他方式连接。
[0207] 存储器26作为一种非易失性计算机可读存储介质,可用于存储非易失性软件程序、非易失性计算机可执行程序以及模块,如本发明实施例中的诊断方法对应的程序指令/单元(例如,附图8所示的第一接收模块601、第一发送模块602、第二接收模块603和第二发送模块604)。处理器25通过运行存储在存储器26中的非易失性软件程序、指令以及单元,从而执行诊断连接设备20的各种功能应用以及数据处理,即实现上述方法实施例的诊断方法。
[0208] 存储器26可以包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需要的应用程序;存储数据区可存储根据诊断连接设备20使用所创建的数据等。此外,存储器26可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他非易失性固态存储器件。在一些实施例中,存储器26可选包括相对于处理器25远程设置的存储器,这些远程存储器可以通过网络连接至诊断连接设备20。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
[0209] 所述一个或者多个单元存储在所述存储器26中,当被所述一个或者多个处理器25执行时,执行上述任意方法实施例中的诊断方法,例如,执行以上描述的图7中的方法步骤201-204,实现图8所示的模块601-604的功能。
[0210] 上述诊断连接设备20可执行本发明实施例所提供的汽车诊断方法,具备执行方法相应的功能模块和有益效果。未在诊断连接设备20实施例中详尽描述的技术细节,可参见本发明实施例所提供的方法。
[0211] 本发明实施例还提供了一种非易失性计算机可读存储介质,所述计算机可读存储介质存储有计算机可执行指令,该计算机可执行指令被一个或多个处理器执行,例如,执行上述任意方法实施例中的诊断方法,例如,例如,执行以上描述的图7中的方法步骤201-204,实现图8所示的模块601-604的功能。
[0212] 本发明实施例通过将耗内存资源和处理器资源的物理层和数据链路层的协议转换全部放在汽车诊断设备10上运行,诊断连接设备20不需要运行物理层和数据链路层的协议转换。降低了诊断连接设备20对硬件性能的要求,节省了诊断连接设备20的硬件成本。
[0213] 可选的,在诊断连接设备20的其他实施例中,在物理层和数据链路层的协议转换部分放在汽车诊断设备10上运行的场合,诊断连接设备20需要部分执行物理层和数据链路层的协议转换。例如CAN总线协议数据转换在汽车诊断设备10执行,K总线协议数据转换在诊断连接设备20执行。诊断连接设备20可以通过处理器25执行上述的协议转换,例如,在CAN总线协议数据转换在汽车诊断设备10运行的场合,处理器25还能执行(其硬件结构图请参见图10):
[0214] 将所述诊断指令转换成所述诊断指令对应的标准传输数据;
[0215] 将所述检测数据对应的标准传输数据转换成检测数据;
[0216] 所述标准传输数据为K总线协议标准传输数据。
[0217] 即如果K总线协议转换在诊断连接设备20上运行,当用户选择通过K总线传输数据时,汽车诊断设备10直接将诊断指令通过第一通讯单元14发送给诊断连接设备20。诊断连接设备20通过第二通讯单元21接收该诊断指令,然后将诊断指令转换成符合K总线传输标准的标准传输数据。通讯控制器22控制K总线将该标准传输数据通过诊断接口24传送给汽车网络30。同理,诊断连接设备20通过通讯控制器22控制K总线经过诊断接口24接收到汽车网络30的检测数据对应的标准传输数据,并将该标准传输数据转换成检测数据,然后通过第二通讯单元21将该检测数据发送给汽车诊断设备10。
[0218] 本发明实施例还提供了一种汽车诊断系统,如图11所示,汽车诊断系统1包括上述的汽车诊断设备10和诊断连接设备20,汽车诊断设备10和汽车诊断设备20可以通过通信串口、USB接口等有线方式连接,也可以通过蓝牙、WIFI等无线方式连接。其中,汽车诊断设备10和诊断连接设备20的具体技术细节请参照上面汽车诊断设备10和诊断连接设备20实施例中的描述,在此不再赘述。
[0219] 以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。
[0220] 通过以上的实施例的描述,本领域普通技术人员可以清楚地了解到各实施例可借助软件加通用硬件平台的方式来实现,当然也可以通过硬件。本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,所述的存储介质可为磁碟、光盘、只读存储记忆体(Read-Only Memory,ROM)或随机存储记忆体(RandomAccessMemory,RAM)等。
[0221] 最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;在本发明的思路下,以上实施例或者不同实施例中的技术特征之间也可以进行组合,步骤可以以任意顺序实现,并存在如上所述的本发明的不同方面的许多其它变化,为了简明,它们没有在细节中提供;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的范围。