CN108255152A - 车辆诊断方法、诊断盒和计算机可读存储介质 - Google Patents
车辆诊断方法、诊断盒和计算机可读存储介质 Download PDFInfo
- Publication number
- CN108255152A CN108255152A CN201711429099.7A CN201711429099A CN108255152A CN 108255152 A CN108255152 A CN 108255152A CN 201711429099 A CN201711429099 A CN 201711429099A CN 108255152 A CN108255152 A CN 108255152A
- Authority
- CN
- China
- Prior art keywords
- diagnostic
- instruction
- type
- diagnostic instruction
- interface
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Classifications
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B23/00—Testing or monitoring of control systems or parts thereof
- G05B23/02—Electric testing or monitoring
- G05B23/0205—Electric testing or monitoring by means of a monitoring system capable of detecting and responding to faults
- G05B23/0208—Electric testing or monitoring by means of a monitoring system capable of detecting and responding to faults characterized by the configuration of the monitoring system
- G05B23/0213—Modular or universal configuration of the monitoring system, e.g. monitoring system having modules that may be combined to build monitoring program; monitoring system that can be applied to legacy systems; adaptable monitoring system; using different communication protocols
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B2219/00—Program-control systems
- G05B2219/20—Pc systems
- G05B2219/24—Pc safety
- G05B2219/24065—Real time diagnostics
Landscapes
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Engineering & Computer Science (AREA)
- Automation & Control Theory (AREA)
- Test And Diagnosis Of Digital Computers (AREA)
Abstract
本发明属于车辆诊断技术领域,尤其涉及一种车辆诊断方法、诊断盒和计算机可读存储介质,其中,所述方法包括:获取上位机发送的诊断指令;解析所述诊断指令,获取所述诊断指令调用的接口函数类型;判断所述调用的接口函数类型与所述诊断盒支持的接口函数类型是否一致;若不一致,则将所述诊断指令转换为与所述诊断盒支持的接口函数类型一致的诊断指令;使得所述诊断盒能够兼容调用不同的接口函数类型的诊断指令,即同时支持基于不同接口函数开发的上位机,具有通用性好的优点。
Description
技术领域
本发明属于车辆诊断技术领域,尤其涉及一种车辆诊断方法、诊断盒和计算机可读存储介质。
背景技术
现有技术中,上位机通过诊断盒与车辆进行通信连接,获取车辆的诊断数据,该诊断数据包括车辆的故障信息,以便车辆维修人员根据所述故障信息准确的分析出车辆存在的故障。
但是现有技术中,不同厂商生产的上位机安装有基于不同函数接口开发的诊断软件,需使用与该诊断软件对应的诊断盒才能进行车辆故障的诊断,例如,当车厂的诊断软件是基于J2534接口函数开发的诊断软件,则需使用支持J2534接口函数的诊断盒,当车厂的诊断软件是基于D-PDU接口函数开发的诊断软件,则需使用支持D-PDU接口函数的诊断盒。可见,现有技术中的诊断盒之间存在通用性差,无法互相兼容的缺点。
发明内容
有鉴于此,本发明实施例提供一种车辆诊断方法、诊断盒和计算机可读存储介质,旨在解决现有技术中诊断盒通用性差的技术问题。
本发明实施例第一方面提供一种车辆诊断方法,应用于车辆诊断盒,所述方法包括:
获取上位机发送的诊断指令;
解析所述诊断指令,获取所述诊断指令调用的接口函数类型;
判断所述调用的接口函数类型与所述诊断盒支持的接口函数类型是否一致;
若不一致,则将所述诊断指令转换为与所述诊断盒支持的接口函数类型一致的诊断指令;并分析所述转换后的诊断指令,获取所述转换后的诊断指令携带的诊断任务;
根据所述诊断任务与车辆的电控***进行通信;接收所述电控***返回的诊断数据并发送给所述上位机。
可选地,所述将所述诊断指令转换为与所述诊断盒支持的接口函数类型一致的诊断指令包括:
若所述诊断盒为支持J2534函数接口的诊断盒,则在接收到D-PDU接口函数类型的诊断指令时,将所述D-PDU接口函数类型的诊断指令转换为J2534接口函数类型的诊断指令;
若所述诊断盒为支持D-PDU函数接口的诊断盒,则在接收到J2534接口函数类型的诊断指令时,将所述J2534接口函数类型的诊断指令转换为D-PDU接口函数类型的诊断指令。
可选地,所述将所述D-PDU接口函数类型的诊断指令转换为J2534接口函数类型的诊断指令包括:
根据所述D-PDU接口函数类型的诊断指令携带的诊断任务分解所述D-PDU接口函数类型的诊断指令,生成多个D-PDU类型的子诊断任务;
根据D-PDU接口函数与J2534接口函数的转换关系,将所述多个D-PDU类型的子诊断任务转换为多个J2534类型的子诊断任务;
利用J2534接口函数格式将所述多个J2534类型的子诊断任务转换成J2534接口函数类型的诊断指令。
可选地,在所述根据所述D-PDU接口函数类型的诊断指令携带的诊断任务分解所述D-PDU接口函数类型的诊断指令之前,还包括:
对所述D-PDU接口函数类型的诊断指令携带的诊断任务进行分类;
按所述诊断任务的类别分解所述D-PDU接口函数类型的诊断指令。
可选地,所述将所述J2534接口函数类型的诊断指令转换为D-PDU接口函数类型的诊断指令包括:
根据所述J2534接口函数类型的诊断指令携带的诊断任务分解所述J2534接口函数类型的诊断指令,生成多个J2534类型的子诊断任务;
根据J2534接口函数与D-PDU接口函数的转换关系,将所述多个J2534类型的子诊断任务转换为多个D-PDU类型的子诊断任务;
利用D-PDU接口函数格式将所述多个D-PDU类型的子诊断任务转换成D-PDU接口函数类型的诊断指令。
可选地,在所述根据所述J2534接口函数类型的诊断指令携带的诊断任务分解所述J2534接口函数类型的诊断指令之前,还包括:
对所述J2534接口函数类型的诊断指令携带的诊断任务进行分类;
按所述诊断任务的类别分解所述J2534接口函数类型的诊断指令。
可选地,在判断所述调用的接口函数类型与所述诊断盒支持的接口函数类型是否一致之后,还包括:
若所述诊断指令调用的接口函数类型与所述诊断盒支持的接口函数类型一致,则分析所述诊断指令,获取所述诊断指令携带的诊断任务。本发明实施例第二方面提供一种车辆诊断盒,包括:
数据传输模块,用于获取上位机发送的诊断指令;
指令解析模块,用于解析所述诊断指令,获取所述诊断指令调用的接口函数类型;
判断模块,用于判断所述调用的接口函数类型与所述诊断盒支持的接口函数类型是否一致;
转换与分析模块,用于在所述诊断指令调用的接口函数类型与所述诊断盒支持的接口函数类型不一致时,将所述诊断指令转换为与所述诊断盒支持的接口函数类型一致的诊断指令;并分析所述转换后的诊断指令,获取所述转换后的诊断指令携带的诊断任务;
执行模块,用于根据所述诊断任务与车辆的电控***进行通信;接收所述电控***返回的诊断数据并发送给所述上位机。
可选地,所述转换与分析模块,具体用于:
若所述诊断盒为支持J2534函数接口的诊断盒,则在接收到D-PDU接口函数类型的诊断指令时,将所述D-PDU接口函数类型的诊断指令转换为J2534接口函数类型的诊断指令;
若所述诊断盒为支持D-PDU函数接口的诊断盒,则在接收到J2534接口函数类型的诊断指令时,将所述J2534接口函数类型的诊断指令转换为D-PDU接口函数类型的诊断指令。
可选地,所述转换与分析模块,还具体用于:
根据所述D-PDU接口函数类型的诊断指令携带的诊断任务分解所述D-PDU接口函数类型的诊断指令,生成多个D-PDU类型的子诊断任务;
根据D-PDU接口函数与J2534接口函数的转换关系,将所述多个D-PDU类型的子诊断任务转换为多个J2534类型的子诊断任务;
利用J2534接口函数格式将所述多个J2534类型的子诊断任务转换成J2534接口函数类型的诊断指令。
可选地,所述转换与分析模块,还具体用于:
对所述D-PDU接口函数类型的诊断指令携带的诊断任务进行分类;
按所述诊断任务的类别分解所述D-PDU接口函数类型的诊断指令。
可选地,所述转换与分析模块,还具体用于:
根据所述J2534接口函数类型的诊断指令携带的诊断任务分解所述J2534接口函数类型的诊断指令,生成多个J2534类型的子诊断任务;
根据J2534接口函数与D-PDU接口函数的转换关系,将所述多个J2534类型的子诊断任务转换为多个D-PDU类型的子诊断任务;
利用D-PDU接口函数格式将所述多个D-PDU类型的子诊断任务转换成D-PDU接口函数类型的诊断指令。
可选地,所述转换与分析模块,还具体用于:
对所述J2534接口函数类型的诊断指令携带的诊断任务进行分类;
按所述诊断任务的类别分解所述J2534接口函数类型的诊断指令。
可选地,所述转换与分析模块,还具体用于:
若所述诊断指令调用的接口函数类型与所述诊断盒支持的接口函数类型一致,则分析所述诊断指令,获取所述诊断指令携带的诊断任务。
本发明实施例第三方面提供一种车辆诊断盒,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述所述方法的步骤。
本发明实施例第四方面提供一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现上述方法的步骤。
本发明实施例中,通过获取上位机发送的诊断指令;并解析所述诊断指令,获取所述诊断指令调用的接口函数类型;在所述接口函数类型与诊断盒支持的接口函数类型不一致时,将所述诊断指令转换为与所述诊断盒支持的接口函数类型一致的诊断指令;并解析所述转换后的诊断指令后,获取所述转换后的诊断指令携带的诊断任务;使得所述诊断盒能够兼容调用不同的接口函数类型的诊断指令,即同时支持基于不同接口函数开发的上位机,具有通用性好的优点。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本发明的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
图1是本发明实施例提供的一种车辆诊断的交互示意图;
图2是本发明实施例提供的一种车辆诊断方法的实现流程图;
图3是本发明实施例提供的一种车辆诊断方法的步骤S204的具体实现流程图;
图4是本发明实施例提供的一种车辆诊断方法的步骤S204的另一具体实现流程图;
图5是本发明实施例提供的一种车辆诊断盒的结构示意图;
图6是本发明实施例提供的一种车辆诊断盒的另一结构示意图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。同时,在本发明的描述中,术语“第一”、“第二”等仅用于区分描述,而不能理解为指示或暗示相对重要性。
图1示出了本发明实施例提供的一种车辆诊断的交互示意图,包括上位机101、102,诊断盒103和车辆的电控***104;上位机的操作***中安装有与用户进行信息交互的诊断软件,用户可以通过诊断软件向所述诊断盒下发诊断指令,所述诊断指令携带诊断任务,当所述诊断盒接收到用户通过诊断软件下发的诊断指令后,对所述诊断指令进行解析,获取所述诊断指令调用的接口函数类型;在所述诊断指令调用的接口函数类型与诊断盒支持的接口函数类型不一致时,将所述诊断指令转换为与所述诊断盒支持的接口函数类型一致的诊断指令;并解析所述转换后的诊断指令后,获取所述转换后的诊断指令携带的诊断任务;使得所述诊断盒能够兼容不同的接口函数类型的诊断指令,即同时支持基于不同接口函数开发的上位机,再根据所述诊断任务与车辆的电控***进行通信,获取所述电控***返回的诊断数据发送给所述上位机,由所述上位机显示所述诊断数据对应的诊断结果。
其中,所述车辆的电控***主要包括ECU(Electronic Control Unit)电子控制单元,由微处理器(CPU)、存储器(ROM、RAM)、输入/输出接口(I/O)、模数转换器(A/D)以及整形、驱动等大规模集成电路组成。汽车中ECU除了应用于发动机***上,还可应用于其它许多地方,例如防抱死制动***、四轮驱动***、主动悬架***、安全气囊***、空调***、仪表***等都可以配置有各自的ECU。ECU一般都具备故障自诊断和保护功能,当***产生故障时,可以在RAM中自动记录故障信息,用户利用诊断盒经由OBD连接线连接汽车OBD接口来读取ECU数据。具体地,OBD(On-Board Diagnostic,车载诊断***),与ECU连接,用于实时监控车辆的工作状态等,一旦发现有可能引起车辆故障的情况,会马上发出警示。例如当***出现故障时,故障灯或检查发动机警告灯亮。再通过标准的诊断仪器,如诊断盒,与所述OBD诊断接口连接,使得故障信息可以以故障码的形式读取,根据故障码的提示,维修人员能准确地确定故障的性质和部位。为车辆的监测和诊断提供了极大的便利。
图2为本发明实施例提供的一种车辆诊断方法的实现流程图,应用于车辆诊断盒,所述方法包括S201至S205;
在S201中,获取上位机发送的诊断指令。
在本发明的一些实施方式中,所述上位机可以是电脑、平板、智能手机等智能终端,该上位机上安装有车辆诊断软件。在所述诊断软件的用户交互界面上设有不同车系的不同车型对应的诊断功能,供用户选择。
例如,在进行车辆故障诊断时,首先,用户通过上位机的用户交互界面,选择要诊断的车系,又如,所述车系包括BENZ、BMW、VOLVO等,再选择所述车系下的车辆型号,如所述车辆型号包括BENZ\S350,BMW\325,再选择要诊断的功能,即诊断任务,如读取故障码,清除故障码,读取数据流等。此时诊断软件根据用户在所述用户交互界面上的选择操作生成相应的携带诊断任务的诊断指令。
具体地,所述诊断软件根据用户在所述用户交互界面上的选择操作生成所述诊断指令时,需要调用接口函数实现。例如,当用户选择的诊断任务为读取故障码时,该诊断任务包括设置***对应的通讯参数、进入***、读取***故障码、退出***等步骤,每个步骤都要调用接口库中的接口函数来实现。
在本发明实施例中,所述诊断软件包括基于J2534标准开发的J2534型诊断软件和基于D-PDU标准开发的D-PDU型诊断软件。其中,所述J2534标准是美国汽车工程师协会SAE制定的一套标准的诊断接口,D-PDU标准是国际标准化组织ISO制定的了一套ISO22900-D-PDUI的标准诊断接口,这两套接口相互之间不支持调用。J2534型诊断软件包含了J2534标准的所有函数接口,D-PDU型诊断软件包含了D-PDU标准的所有函数接口。
所述诊断软件调用接口库中的接口函数后,会将调用的接口函数信息和参数进行打包,按自定义的格式生成诊断指令发送给诊断盒。
其中,所述上位机与所述诊断盒可以通过USB数据线、RS232串口、无线局域网以及蓝牙等有线连接或无线连接的方式进行通讯。
在S202中,解析所述诊断指令,获取所述诊断指令调用的接口函数类型。
所述上位机将所述诊断指令下发至诊断盒,以便所述诊断盒解析所述诊断指令,并执行所述诊断指令携带的诊断任务,获取车辆的ECU回复的诊断数据,再由所述上位机显示所述诊断数据对应的诊断结果,完成车辆故障的诊断。
具体地,诊断盒在解析所述诊断指令时,首先需要获取所述诊断指令调用的接口函数类型,再根据所述诊断指令调用的接口函数类型,判断该接口函数类型是否与所述诊断盒支持的接口函数类型一致。若该接口函数类型与所述诊断盒支持的接口函数类型一致,则分析所述诊断指令,获取所述诊断指令携带的诊断任务,以便执行所述诊断任务。若该接口函数类型与所述诊断盒支持的接口函数类型不一致,则执行步骤S203。
在S203中,判断所述调用的接口函数类型与所述诊断盒支持的接口函数类型是否一致。
在S204中,若所述调用的接口函数类型与所述诊断盒支持的接口函数类型不一致,则将所述诊断指令转换为与所述诊断盒支持的接口函数类型一致的诊断指令;并分析所述转换后的诊断指令,获取所述转换后的诊断指令携带的诊断任务。使得所述诊断盒能够兼容所述接口函数类型与所述诊断盒支持的接口函数类型不一致的诊断软件,提高诊断盒的通用性。
在本发明的一些实施方式中,所述将所述诊断指令转换为与所述诊断盒支持的接口函数类型一致的诊断指令包括:若所述诊断盒为支持J2534函数接口的诊断盒,则在接收到D-PDU接口函数类型的诊断指令时,将所述D-PDU接口函数类型的诊断指令转换为J2534接口函数类型的诊断指令;若所述诊断盒为支持D-PDU函数接口的诊断盒,则在接收到J2534接口函数类型的诊断指令时,将所述J2534接口函数类型的诊断指令转换为D-PDU接口函数类型的诊断指令。
具体地,如图3所示,所述将所述D-PDU接口函数类型的诊断指令转换为J2534接口函数类型的诊断指令包括步骤S301至步骤S303。
在S301中,根据所述D-PDU接口函数类型的诊断指令携带的诊断任务分解所述D-PDU接口函数类型的诊断指令,生成多个D-PDU类型的子诊断任务。
例如,所述诊断任务包括设置***对应的通讯参数、进入***、读取***故障码和退出***。其中,所述***包括发动机***、防抱死制动***、四轮驱动***、主动悬架***、安全气囊***、空调***和仪表***,所述设置***的通讯参数的诊断任务包括设置通讯管脚、波特率、***ID和协议类型等子诊断任务,所述读取***故障码包括发送故障码读取命令和接收***返回的故障码信息等子诊断任务。
在S302中,根据D-PDU接口函数与J2534接口函数的转换关系,将所述多个D-PDU类型的子诊断任务转换为多个J2534类型的子诊断任务。
例如,在D-PDU接口函数中,代号03FF代表设置通讯管脚,在J2534接口函数中,代号05AA代表设置通讯管脚,那么根据这样的所述D-PDU类型的设置通讯管脚子诊断任务与所述J2534类型的设置通讯管脚子诊断任务的对应关系,将所述D-PDU类型的设置通讯管脚子诊断任务转换为J2534类型的设置通讯管脚子诊断任务时,需将通讯管脚的代号03FF转换成代号05AA。
在S303中,利用J2534接口函数格式将所述多个J2534类型的子诊断任务转换成J2534接口函数类型的诊断指令。也就是说,将步骤S302中的多个J2534类型的子诊断任务根据J2534接口函数格式组合成一个J2534类型的诊断任务。
在本发明的一些实施方式中,如图4所示,为了提高所述诊断指令的分解效率,在步骤S301之前,还包括步骤S300。
在S300中,对所述D-PDU接口函数类型的诊断指令携带的诊断任务进行分类;按所述诊断任务的类别分解所述D-PDU接口函数类型的诊断指令。
例如,将所述诊断任务按设置***的通讯参数、命令发送与接收和故障码获取等类别进行分类,并为每个类别的诊断任务设置相应的分解模式,使得在对所述J2534接口函数类型的诊断指令携带的诊断任务进行分类后;按所述分解模式分解所述诊断任务,提高所述诊断指令的分解效率。
同样地,在本发明的一些实施方式中,所述将所述J2534接口函数类型的诊断指令转换为D-PDU接口函数类型的诊断指令包括:根据所述J2534接口函数类型的诊断指令携带的诊断任务分解所述J2534接口函数类型的诊断指令,生成多个J2534类型的子诊断任务;根据J2534接口函数与D-PDU接口函数的转换关系,将所述多个J2534类型的子诊断任务转换为多个D-PDU类型的子诊断任务;利用D-PDU接口函数格式将所述多个D-PDU类型的子诊断任务转换成D-PDU接口函数类型的诊断指令。
其中,在所述根据所述J2534接口函数类型的诊断指令携带的诊断任务分解所述J2534接口函数类型的诊断指令之前,还包括:对所述J2534接口函数类型的诊断指令携带的诊断任务进行分类;按所述诊断任务的类别分解所述J2534接口函数类型的诊断指令。
需要说明的是,为描述的方便和简洁,上述描述的将所述J2534接口函数类型的诊断指令转换为D-PDU接口函数类型的诊断指令的具体工作过程,可以参考图3和图4所述方法进行类推,在此不再过多赘述。
在将所述诊断指令转换为与所述诊断盒支持的接口函数类型一致的诊断指令之后;需解析所述转换后的诊断指令,获取所述转换后的诊断指令携带的诊断任务,并执行步骤S205。
在S205中,根据所述诊断任务与车辆的电控***进行通信;将所述电控***返回的诊断数据发送给所述上位机,由所述上位机显示所述诊断数据对应的诊断结果。
具体地,所述根据所述诊断任务与车辆的电控***进行通信包括设置***的通讯参数。
由于所述***包括发动机***、防抱死制动***、四轮驱动***、主动悬架***、安全气囊***、空调***、仪表***等***,并且每个***的通讯参数有可能不一样,因此,在与车辆的ECU进行通信之前,需要调用所述诊断盒的执行器设置所述诊断任务对应的***的通讯参数,才能与车辆的电控***进行通信。所述***的通讯参数包括通讯管脚、波特率、***ID和协议类型。其中,***ID用于唯一标识所述车辆的各个ECU***。
在设置完成所述***的通讯参数后,若所述诊断任务为发送命令和接收命令,则通过诊断盒的总线收发器与车辆进行物理连接,进行数据的发送和接收。
例如,当所述诊断盒为支持J2534函数接口的诊断盒,则通过物理总线将所述诊断盒的J2354总线收发器与车辆的OBD连接,并根据预先设置的通讯管脚、波特率、***ID等***的通讯参数与车辆的ECU进行数据通讯。需要说明的是,所述诊断指令中包括***的通讯参数,也就是说,在用户选择相应的诊断功能,生成所述诊断指令的过程中,就已将所述***的通讯参数等参数选定好,并由所述诊断指令携带,所述诊断盒接收到所述诊断指令时,解析所述诊断指令即可获取所述诊断指令携带的诊断任务及需要设置和发送的参数。
在设置好***的通讯参数后,与车辆的电控***通讯,获取所述电控***返回的诊断数据。例如,当所述诊断任务为读取***故障码时,则接收所述电控***返回的***故障码。并将所述***故障码等诊断数据发送给上位机,由所述上位机对所述诊断数据进行格式化转换,转换成显示信息,比如故障码的编号和内容,数据流的值等,使得用户可以通过所述诊断软件的用户交互界面查看所述诊断数据对应的诊断结果。
如图5示出了本发明提供的一种车辆诊断盒500的结构示意图,包括:
数据传输模块501,用于获取上位机发送的诊断指令;
指令解析模块502,用于解析所述诊断指令,获取所述诊断指令调用的接口函数类型;
判断模块503,用于判断所述调用的接口函数类型与所述诊断盒支持的接口函数类型是否一致;
转换与分析模块504,用于在所述诊断指令调用的接口函数类型与所述诊断盒支持的接口函数类型不一致时,将所述诊断指令转换为与所述诊断盒支持的接口函数类型一致的诊断指令;并分析所述转换后的诊断指令,获取所述转换后的诊断指令携带的诊断任务;
执行模块505,用于根据所述诊断任务与车辆的电控***进行通信;接收所述电控***返回的诊断数据并发送给所述上位机。
进一步地,所述转换模块具体用于:若所述诊断盒为支持J2534函数接口的诊断盒,则在接收到D-PDU接口函数类型的诊断指令时,将所述D-PDU接口函数类型的诊断指令转换为J2534接口函数类型的诊断指令;若所述诊断盒为支持D-PDU函数接口的诊断盒,则在接收到J2534接口函数类型的诊断指令时,将所述J2534接口函数类型的诊断指令转换为D-PDU接口函数类型的诊断指令。
可选地,所述转换与分析模块,还具体用于:
根据所述D-PDU接口函数类型的诊断指令携带的诊断任务分解所述D-PDU接口函数类型的诊断指令,生成多个D-PDU类型的子诊断任务;
根据D-PDU接口函数与J2534接口函数的转换关系,将所述多个D-PDU类型的子诊断任务转换为多个J2534类型的子诊断任务;
利用J2534接口函数格式将所述多个J2534类型的子诊断任务转换成J2534接口函数类型的诊断指令。
可选地,所述转换与分析模块,还具体用于:
对所述D-PDU接口函数类型的诊断指令携带的诊断任务进行分类;
按所述诊断任务的类别分解所述D-PDU接口函数类型的诊断指令。
可选地,所述转换与分析模块,还具体用于:
根据所述J2534接口函数类型的诊断指令携带的诊断任务分解所述J2534接口函数类型的诊断指令,生成多个J2534类型的子诊断任务;
根据J2534接口函数与D-PDU接口函数的转换关系,将所述多个J2534类型的子诊断任务转换为多个D-PDU类型的子诊断任务;
利用D-PDU接口函数格式将所述多个D-PDU类型的子诊断任务转换成D-PDU接口函数类型的诊断指令。
可选地,所述转换与分析模块,还具体用于:
对所述J2534接口函数类型的诊断指令携带的诊断任务进行分类;
按所述诊断任务的类别分解所述J2534接口函数类型的诊断指令。
可选地,所述转换与分析模块,还具体用于:
若所述诊断指令调用的接口函数类型与所述诊断盒支持的接口函数类型一致,则分析所述诊断指令,获取所述诊断指令携带的诊断任务。
需要说明的是,为描述的方便和简洁,上述描述的诊断盒的具体工作过程,可以参考图2至图4所述方法的对应过程,在此不再过多赘述。
图6是本发明实施例提供的车辆诊断盒的另一结构示意图。如图6所示,该实施例的车辆诊断盒6包括:处理器60、存储器61以及存储在所述存储器61中并可在所述处理器60上运行的计算机程序62,例如移动电源租借程序。所述处理器60执行所述计算机程序62时实现上述各个车辆诊断方法实施例中的步骤,例如图2所示的步骤201至204,以及图4所示的步骤300至303。或者,所述处理器60执行所述计算机程序62时实现上述各装置实施例中各模块/单元的功能,例如图5所示模块501至505的功能。
示例性的,所述计算机程序62可以被分割成一个或多个模块/单元,所述一个或者多个模块/单元被存储在所述存储器61中,并由所述处理器60执行,以完成本发明。所述一个或多个模块/单元可以是能够完成特定功能的一系列计算机程序指令段,该指令段用于描述所述计算机程序62在所述车辆诊断盒6中的执行过程。例如,所述计算机程序62可以被分割成数据传输模块、指令解析模块、转换模块、执行模块。
所述车辆诊断盒可包括,但不仅限于,处理器60、存储器61。本领域技术人员可以理解,图6仅仅是车辆诊断盒6的示例,并不构成对车辆诊断盒6的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件,例如所述车辆诊断盒还可以包括输入输出设备、网络接入设备、总线等。
所称处理器60可以是中央处理单元(Central Processing Unit,CPU),还可以是其他通用处理器、数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现成可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
所述存储器61可以是所述车辆诊断盒6的内部存储单元,例如车辆诊断盒6的硬盘或内存。所述存储器61也可以是所述车辆诊断盒6的外部存储设备,例如所述车辆诊断盒6上配备的插接式硬盘,智能存储卡(Smart Media Card,SMC),安全数字(Secure Digital,SD)卡,闪存卡(Flash Card)等。进一步地,所述存储器61还可以既包括所述车辆诊断盒6的内部存储单元也包括外部存储设备。所述存储器61用于存储所述计算机程序以及所述车辆诊断盒所需的其他程序和数据。所述存储器61还可以用于暂时地存储已经输出或者将要输出的数据。
所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,仅以上述各功能单元、模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能单元、模块完成,即将所述装置的内部结构划分成不同的功能单元或模块,以完成以上描述的全部或者部分功能。实施例中的各功能单元、模块可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中,上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。另外,各功能单元、模块的具体名称也只是为了便于相互区分,并不用于限制本申请的保护范围。上述***中单元、模块的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述或记载的部分,可以参见其它实施例的相关描述。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
在本发明所提供的实施例中,应该理解到,所揭露的装置/终端设备和方法,可以通过其它的方式实现。例如,以上所描述的装置/终端设备实施例仅仅是示意性的,例如,所述模块或单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个***,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通讯连接可以是通过一些接口,装置或单元的间接耦合或通讯连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的模块/单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明实现上述实施例方法中的全部或部分流程,也可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一计算机可读存储介质中,该计算机程序在被处理器执行时,可实现上述各个方法实施例的步骤。。其中,所述计算机程序包括计算机程序代码,所述计算机程序代码可以为源代码形式、对象代码形式、可执行文件或某些中间形式等。所述计算机可读介质可以包括:能够携带所述计算机程序代码的任何实体或装置、记录介质、U盘、移动硬盘、磁碟、光盘、计算机存储器、只读存储器(Read-Only Memory,ROM)、随机存取存储器(RandomAccess Memory,RAM)、电载波信号、电信信号以及软件分发介质等。需要说明的是,所述计算机可读介质包含的内容可以根据司法管辖区内立法和专利实践的要求进行适当的增减,例如在某些司法管辖区,根据立法和专利实践,计算机可读介质不包括电载波信号和电信信号。
以上所述实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围,均应包含在本发明的保护范围之内。
Claims (10)
1.一种车辆诊断方法,其特征在于,应用于车辆诊断盒,所述方法包括:
获取上位机发送的诊断指令;
解析所述诊断指令,获取所述诊断指令调用的接口函数类型;
判断所述调用的接口函数类型与所述诊断盒支持的接口函数类型是否一致;
若不一致,则将所述诊断指令转换为与所述诊断盒支持的接口函数类型一致的诊断指令;并分析所述转换后的诊断指令,获取所述转换后的诊断指令携带的诊断任务;
根据所述诊断任务与车辆的电控***进行通信;接收所述电控***返回的诊断数据并发送给所述上位机。
2.如权利要求1所述的方法,其特征在于,所述将所述诊断指令转换为与所述诊断盒支持的接口函数类型一致的诊断指令包括:
若所述诊断盒为支持J2534函数接口的诊断盒,则在接收到D-PDU接口函数类型的诊断指令时,将所述D-PDU接口函数类型的诊断指令转换为J2534接口函数类型的诊断指令;
若所述诊断盒为支持D-PDU函数接口的诊断盒,则在接收到J2534接口函数类型的诊断指令时,将所述J2534接口函数类型的诊断指令转换为D-PDU接口函数类型的诊断指令。
3.如权利要求2所述的方法,其特征在于,所述将所述D-PDU接口函数类型的诊断指令转换为J2534接口函数类型的诊断指令包括:
根据所述D-PDU接口函数类型的诊断指令携带的诊断任务分解所述D-PDU接口函数类型的诊断指令,生成多个D-PDU类型的子诊断任务;
根据D-PDU接口函数与J2534接口函数的转换关系,将所述多个D-PDU类型的子诊断任务转换为多个J2534类型的子诊断任务;
利用J2534接口函数格式将所述多个J2534类型的子诊断任务转换成J2534接口函数类型的诊断指令。
4.如权利要求3所述的方法,其特征在于,在所述根据所述D-PDU接口函数类型的诊断指令携带的诊断任务分解所述D-PDU接口函数类型的诊断指令之前,还包括:
对所述D-PDU接口函数类型的诊断指令携带的诊断任务进行分类;
按所述诊断任务的类别分解所述D-PDU接口函数类型的诊断指令。
5.如权利要求2所述的方法,其特征在于,所述将所述J2534接口函数类型的诊断指令转换为D-PDU接口函数类型的诊断指令包括:
根据所述J2534接口函数类型的诊断指令携带的诊断任务分解所述J2534接口函数类型的诊断指令,生成多个J2534类型的子诊断任务;
根据J2534接口函数与D-PDU接口函数的转换关系,将所述多个J2534类型的子诊断任务转换为多个D-PDU类型的子诊断任务;
利用D-PDU接口函数格式将所述多个D-PDU类型的子诊断任务转换成D-PDU接口函数类型的诊断指令。
6.如权利要求5所述的方法,其特征在于,在所述根据所述J2534接口函数类型的诊断指令携带的诊断任务分解所述J2534接口函数类型的诊断指令之前,还包括:
对所述J2534接口函数类型的诊断指令携带的诊断任务进行分类;
按所述诊断任务的类别分解所述J2534接口函数类型的诊断指令。
7.如权利要求1所述的方法,其特征在于,在判断所述调用的接口函数类型与所述诊断盒支持的接口函数类型是否一致之后,还包括:
若所述诊断指令调用的接口函数类型与所述诊断盒支持的接口函数类型一致,则分析所述诊断指令,获取所述诊断指令携带的诊断任务。
8.一种车辆诊断盒,其特征在于,包括:
数据传输模块,用于获取上位机发送的诊断指令;
指令解析模块,用于解析所述诊断指令,获取所述诊断指令调用的接口函数类型;
判断模块,用于判断所述调用的接口函数类型与所述诊断盒支持的接口函数类型是否一致;
转换与分析模块,用于在所述诊断指令调用的接口函数类型与所述诊断盒支持的接口函数类型不一致时,将所述诊断指令转换为与所述诊断盒支持的接口函数类型一致的诊断指令;并分析所述转换后的诊断指令,获取所述转换后的诊断指令携带的诊断任务;
执行模块,用于根据所述诊断任务与车辆的电控***进行通信;接收所述电控***返回的诊断数据并发送给所述上位机。
9.一种车辆诊断盒,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现如权利要求1至7任一项所述方法的步骤。
10.一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至7任一项所述方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201711429099.7A CN108255152B (zh) | 2017-12-26 | 2017-12-26 | 车辆诊断方法、诊断盒和计算机可读存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201711429099.7A CN108255152B (zh) | 2017-12-26 | 2017-12-26 | 车辆诊断方法、诊断盒和计算机可读存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN108255152A true CN108255152A (zh) | 2018-07-06 |
CN108255152B CN108255152B (zh) | 2019-12-10 |
Family
ID=62722844
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201711429099.7A Active CN108255152B (zh) | 2017-12-26 | 2017-12-26 | 车辆诊断方法、诊断盒和计算机可读存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108255152B (zh) |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108958224A (zh) * | 2018-07-27 | 2018-12-07 | 深圳市元征科技股份有限公司 | 一种车辆诊断方法、诊断终端及诊断盒 |
CN109347965A (zh) * | 2018-10-31 | 2019-02-15 | 深圳市道通科技股份有限公司 | 一种通信方法、装置及相关设备 |
CN111474923A (zh) * | 2020-05-27 | 2020-07-31 | 深圳市元征科技股份有限公司 | 一种车辆诊断方法、装置、设备 |
CN111913472A (zh) * | 2020-07-30 | 2020-11-10 | 深圳市元征科技股份有限公司 | 车辆诊断设备的工作模式控制方法及相关设备 |
CN112147983A (zh) * | 2020-09-27 | 2020-12-29 | 深圳市元征科技股份有限公司 | 一种车辆诊断方法、装置、电子设备及存储介质 |
CN112558584A (zh) * | 2020-11-18 | 2021-03-26 | 深圳市元征科技股份有限公司 | 诊断数据获取方法、装置及诊断设备 |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101430557A (zh) * | 2008-12-05 | 2009-05-13 | 中国汽车技术研究中心 | 用于汽车故障诊断的多协议数据转换器及诊断处理方法 |
CN102780713A (zh) * | 2011-05-09 | 2012-11-14 | 上海通用汽车有限公司 | 车辆诊断***及方法 |
WO2015075342A1 (fr) * | 2013-11-21 | 2015-05-28 | Peugeot Citroen Automobiles Sa | Interface de communication virtuelle pour diagnostic de vehicule automobile |
CN104731082A (zh) * | 2015-01-27 | 2015-06-24 | 深圳市元征科技股份有限公司 | 一种接口转换装置及车载诊断*** |
CN105159272A (zh) * | 2015-07-28 | 2015-12-16 | 深圳市元征科技股份有限公司 | 一种汽车诊断功能切换方法及装置 |
US9264085B2 (en) * | 2010-01-22 | 2016-02-16 | Gentex Corporation | Universal wireless trainable transceiver unit with integrated bidirectional wireless interface for vehicles |
CN106161142A (zh) * | 2016-07-22 | 2016-11-23 | 广州众志诚信息科技有限公司 | 一种多类型车辆总线检测仪 |
CN106933218A (zh) * | 2017-04-25 | 2017-07-07 | 重庆市创锦程科技有限公司 | 适配obd接口的多协议诊断模块及其控制方法 |
-
2017
- 2017-12-26 CN CN201711429099.7A patent/CN108255152B/zh active Active
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101430557A (zh) * | 2008-12-05 | 2009-05-13 | 中国汽车技术研究中心 | 用于汽车故障诊断的多协议数据转换器及诊断处理方法 |
US9264085B2 (en) * | 2010-01-22 | 2016-02-16 | Gentex Corporation | Universal wireless trainable transceiver unit with integrated bidirectional wireless interface for vehicles |
CN102780713A (zh) * | 2011-05-09 | 2012-11-14 | 上海通用汽车有限公司 | 车辆诊断***及方法 |
WO2015075342A1 (fr) * | 2013-11-21 | 2015-05-28 | Peugeot Citroen Automobiles Sa | Interface de communication virtuelle pour diagnostic de vehicule automobile |
CN104731082A (zh) * | 2015-01-27 | 2015-06-24 | 深圳市元征科技股份有限公司 | 一种接口转换装置及车载诊断*** |
CN105159272A (zh) * | 2015-07-28 | 2015-12-16 | 深圳市元征科技股份有限公司 | 一种汽车诊断功能切换方法及装置 |
CN106161142A (zh) * | 2016-07-22 | 2016-11-23 | 广州众志诚信息科技有限公司 | 一种多类型车辆总线检测仪 |
CN106933218A (zh) * | 2017-04-25 | 2017-07-07 | 重庆市创锦程科技有限公司 | 适配obd接口的多协议诊断模块及其控制方法 |
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108958224A (zh) * | 2018-07-27 | 2018-12-07 | 深圳市元征科技股份有限公司 | 一种车辆诊断方法、诊断终端及诊断盒 |
CN108958224B (zh) * | 2018-07-27 | 2021-08-10 | 深圳市元征科技股份有限公司 | 一种车辆诊断方法、诊断终端及诊断盒 |
CN109347965A (zh) * | 2018-10-31 | 2019-02-15 | 深圳市道通科技股份有限公司 | 一种通信方法、装置及相关设备 |
CN109347965B (zh) * | 2018-10-31 | 2020-10-23 | 深圳市道通科技股份有限公司 | 一种通信方法、装置及相关设备 |
CN111474923A (zh) * | 2020-05-27 | 2020-07-31 | 深圳市元征科技股份有限公司 | 一种车辆诊断方法、装置、设备 |
CN111913472A (zh) * | 2020-07-30 | 2020-11-10 | 深圳市元征科技股份有限公司 | 车辆诊断设备的工作模式控制方法及相关设备 |
CN112147983A (zh) * | 2020-09-27 | 2020-12-29 | 深圳市元征科技股份有限公司 | 一种车辆诊断方法、装置、电子设备及存储介质 |
CN112147983B (zh) * | 2020-09-27 | 2022-01-04 | 深圳市元征科技股份有限公司 | 一种车辆诊断方法、装置、电子设备及存储介质 |
CN112558584A (zh) * | 2020-11-18 | 2021-03-26 | 深圳市元征科技股份有限公司 | 诊断数据获取方法、装置及诊断设备 |
Also Published As
Publication number | Publication date |
---|---|
CN108255152B (zh) | 2019-12-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108255152A (zh) | 车辆诊断方法、诊断盒和计算机可读存储介质 | |
CN108227675A (zh) | 车辆诊断方法、装置、终端和计算机可读存储介质 | |
CN111024405B (zh) | 汽车诊断方法、相关装置及*** | |
CN109039824A (zh) | 一种车载终端无线远程通信协议自动化测试***及方法 | |
CN103529821B (zh) | 一种基于can总线的诊断协议栈***的可配置化方法及装置 | |
CN108132663A (zh) | 车辆故障信息的解析方法、装置和*** | |
CN107428294A (zh) | 不正常检测规则更新方法、不正常检测电子控制单元以及车载网络*** | |
CN101947938B (zh) | 一种混合动力can网络通讯*** | |
CN107423492B (zh) | 一种基于模板的叉车诊断测试方法及*** | |
CN108491224A (zh) | 一种车载软件更新方法及*** | |
CN111538312B (zh) | 车辆远程诊断方法、***、设备连接器及车辆连接器 | |
CN101895394A (zh) | 与obd诊断座进行数据交换的实现方法及其装置 | |
US9779563B2 (en) | Transfer dongle for stored vehicle information | |
CN102780713A (zh) | 车辆诊断***及方法 | |
CN106596122A (zh) | 一种车辆诊断方法和装置 | |
CN208956067U (zh) | 一种车载终端无线远程通信协议自动化测试*** | |
CN106557085A (zh) | 数据处理方法和装置 | |
CN108390863A (zh) | 一种数据处理方法及装置 | |
CN102687086B (zh) | 用于机动车辆的远程诊断装置 | |
CN110493294A (zh) | 车载电路模块的更新方法、***、可读存储介质、及终端 | |
CN115016428A (zh) | 一种应用于特种车辆的立体化多级诊断***及方法 | |
US11893892B2 (en) | Utility or upfit vehicle using communication portal | |
CN113505056A (zh) | 车辆诊断方法、***、装置及存储介质 | |
CN113905461A (zh) | 一种集成网关的无线通讯模块 | |
CN111061237B (zh) | 车辆识别码刷写方法和车辆识别码刷写*** |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |