一种汽车诊断方法、装置以及相关设备与流程

文档序号:22755289发布日期:2020-10-31 09:51阅读:344来源:国知局
一种汽车诊断方法、装置以及相关设备与流程

本申请涉及车辆安全技术领域,特别涉及一种汽车诊断方法,还涉及一种汽车诊断装置、系统及计算机可读存储介质。



背景技术:

汽车诊断一般基于相应的诊断程序实现,诊断程序的核心就是根据诊断协议组织诊断指令,通过诊断指令的收发,来获取ecu信息。

传统诊断程序的诊断服务指令有两种方式进行配置,一种是通过厂家给的ecu诊断协议,将诊断服务命令提取出来,例如读vin码“22f190”,然后点击对应的诊断菜单并直接在代码处发送读vin码指令,但这种实现方式相当于将诊断服务指令写死在代码中,存在不易扩展的问题;另一种是通过配置文件的方式,将诊断指令配置好,例如读故障码的“19”服务,同一个读故障码功能可以是读当前故障、可以是读全部故障码,对应的服务指令也不一样,如“190208”是读当前故障码,“190a”是读全部故障码,因此,需要在配置文件中定义一个字段,配置读码指令,诊断程序每次点击读码菜单,都从配置文件该字段处获取读码指令,并发送给ecu,但是,该种实现方式需要人工进行二进制等位运算得到最终的指令,比较繁琐且容易出错,而且,对于比较复杂的特殊功能,一个特殊功能可能包含几十上百个诊断服务协作,实现起来更为困难。

因此,如何更为快速有效的实现诊断服务指令配置,完成更为准确的车辆诊断是本领域技术人员亟待解决的问题。



技术实现要素:

本申请的目的是提供一种汽车诊断方法,该汽车诊断方法可以更为快速有效的实现诊断服务指令的动态配置,完成更为准确的车辆诊断;本申请的另一目的是提供一种汽车诊断装置、系统及计算机可读存储介质,均具有上述有益效果。

为解决上述技术问题,本申请提供了一种汽车诊断方法,所述汽车诊断方法包括:

接收诊断请求,输出诊断服务列表;其中,所述诊断服务列表中的各诊断服务项基于车辆诊断协议数据和预定义参数结构体获得;

获取用户根据所述诊断服务列表输入的配置信息;

对所述配置信息进行字节位计算,生成诊断服务指令;

执行所述诊断服务指令。

优选的,所述诊断协议列表的生成过程包括:

获取所述预定义参数结构体;其中,所述预定义参数结构体包括参数名称、字节位置、位位值以及算法信息;

加载所述车辆诊断协议数据,对所述车辆诊断协议数据和所述预定义参数结构体进行封装,获得所述诊断服务项;

根据各所述诊断服务项生成所述诊断服务列表。

优选的,所述诊断服务列表为树状列表。

优选的,所述加载所述车辆诊断协议数据,包括:

从odx诊断数据库中加载所述车辆诊断协议数据。

优选的,所述对所述配置信息进行字节位计算,生成诊断服务指令,包括:

根据所述配置信息确定目标配置节点;

在所述目标配置节点对所述配置信息进行字节位计算,生成所述诊断服务指令。

优选的,所述在所述目标配置节点对所述配置信息进行字节位计算,生成所述诊断服务指令,包括:

根据所述配置信息确定目标参数项和目标算法;

利用目标算法计算获得各所述目标参数项的字节位值;

根据各所述目标参数项的字节位值生成所述诊断服务指令。

优选的,所述执行所述诊断服务指令,包括:

与目标车辆的ecu建立连接,并执行所述诊断服务指令。

为解决上述技术问题,本申请还提供了一种汽车诊断装置,所述汽车诊断装置包括:

列表输出模块,用于接收诊断请求,输出诊断服务列表;其中,所述诊断服务列表中的各诊断服务项基于车辆诊断协议数据和预定义参数结构体获得;

信息配置模块,用于获取用户根据所述诊断服务列表输入的配置信息;

指令生成模块,用于对所述配置信息进行字节位计算,生成诊断服务指令;

指令执行模块,用于执行所述诊断服务指令。

优选的,所述汽车诊断装置还包括列表生成模块,所述列表生成模块包括:

结构体获取单元,用于获取所述预定义参数结构体;其中,所述预定义参数结构体包括参数名称、字节位置、位位值以及算法信息;

数据加载单元,用于加载所述车辆诊断协议数据,对所述车辆诊断协议数据和所述预定义参数结构体进行封装,获得所述诊断服务项;

列表生成单元,用于根据各所述诊断服务项生成所述诊断服务列表。

优选的,所述诊断服务列表为树状列表。

优选的,所述数据加载单元具体用于从odx诊断数据库中加载所述车辆诊断协议数据,对所述车辆诊断协议数据和所述预定义参数结构体进行封装,获得所述诊断服务项。

优选的,所述指令生成模块包括:

节点确定单元,用于根据所述配置信息确定目标配置节点;

指令生成单元,用于在所述目标配置节点对所述配置信息进行字节位计算,生成所述诊断服务指令。

优选的,所述指令生成单元具体用于根据所述配置信息确定目标参数项和目标算法;利用目标算法计算获得各所述目标参数项的字节位值;根据各所述目标参数项的字节位值生成所述诊断服务指令。

优选的,所述指令执行模块具体用于与目标车辆的ecu建立连接,并执行所述诊断服务指令。

为解决上述技术问题,本申请还提供了一种汽车诊断设备,所述汽车诊断设备包括:

存储器,用于存储计算机程序;

处理器,用于执行所述计算机程序时实现以下步骤:

接收诊断请求,输出诊断服务列表;其中,所述诊断服务列表中的各诊断服务项基于车辆诊断协议数据和预定义参数结构体获得;获取用户根据所述诊断服务列表输入的配置信息;对所述配置信息进行字节位计算,生成诊断服务指令;执行所述诊断服务指令。

优选的,所述处理器执行所述存储器中保存的计算机程序时,还可以实现以下步骤:获取所述预定义参数结构体;其中,所述预定义参数结构体包括参数名称、字节位置、位位值以及算法信息;加载所述车辆诊断协议数据,对所述车辆诊断协议数据和所述预定义参数结构体进行封装,获得所述诊断服务项;根据各所述诊断服务项生成所述诊断服务列表。

优选的,所述处理器执行所述存储器中保存的计算机子程序时,具体可以实现以下步骤:从odx诊断数据库中加载所述车辆诊断协议数据。

优选的,所述处理器执行所述存储器中保存的计算机子程序时,具体可以实现以下步骤:根据所述配置信息确定目标配置节点;在所述目标配置节点对所述配置信息进行字节位计算,生成所述诊断服务指令。

优选的,所述处理器执行所述存储器中保存的计算机子程序时,具体可以实现以下步骤:根据所述配置信息确定目标参数项和目标算法;利用目标算法计算获得各所述目标参数项的字节位值;根据各所述目标参数项的字节位值生成所述诊断服务指令。

优选的,所述处理器执行所述存储器中保存的计算机子程序时,具体可以实现以下步骤:与目标车辆的ecu建立连接,并执行所述诊断服务指令。

为解决上述技术问题,本申请还提供了一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现以下步骤:

接收诊断请求,输出诊断服务列表;其中,所述诊断服务列表中的各诊断服务项基于车辆诊断协议数据和预定义参数结构体获得;获取用户根据所述诊断服务列表输入的配置信息;对所述配置信息进行字节位计算,生成诊断服务指令;执行所述诊断服务指令。

优选的,所述计算机可读存储介质中保存的计算机程序被处理器执行时,还可以实现以下步骤:获取所述预定义参数结构体;其中,所述预定义参数结构体包括参数名称、字节位置、位位值以及算法信息;加载所述车辆诊断协议数据,对所述车辆诊断协议数据和所述预定义参数结构体进行封装,获得所述诊断服务项;根据各所述诊断服务项生成所述诊断服务列表。

优选的,所述计算机可读存储介质中保存的计算机子程序被处理器执行时,具体可以实现以下步骤:从odx诊断数据库中加载所述车辆诊断协议数据。

优选的,所述计算机可读存储介质中保存的计算机子程序被处理器执行时,具体可以实现以下步骤:根据所述配置信息确定目标配置节点;在所述目标配置节点对所述配置信息进行字节位计算,生成所述诊断服务指令。

优选的,所述计算机可读存储介质中保存的计算机子程序被处理器执行时,具体可以实现以下步骤:根据所述配置信息确定目标参数项和目标算法;利用目标算法计算获得各所述目标参数项的字节位值;根据各所述目标参数项的字节位值生成所述诊断服务指令。

优选的,所述计算机可读存储介质中保存的计算机子程序被处理器执行时,具体可以实现以下步骤:与目标车辆的ecu建立连接,并执行所述诊断服务指令。

可见,本申请所提供的技术方案,利用车辆诊断协议数据和预定义参数结构体构建诊断服务项,进而生成诊断服务列表,通过在前端显示列表的方式方便用户根据实际需求进行参数配置,最后对用户配置信息进行处理生成相应的诊断服务指令,完成车辆诊断服务,由此可见,通过动态选择诊断服务参数项即可实现诊断服务指令的动态配置,方便快捷,进一步提高了车辆诊断效率,实现了更为准确的车辆诊断。

本申请所提供的一种汽车诊断装置、系统及计算机可读存储介质,均具有上述有益效果,在此不再赘述。

附图说明

为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍。

图1为本申请所提供的一种汽车诊断方法的流程示意图;

图2为本申请所提供的一种诊断服务列表生成方法的流程示意图;

图3为本申请所提供的另一种汽车诊断方法的流程示意图;

图4为本申请所提供的一种参数配置与读码指令的关系图;

图5为本申请所提供的一种汽车诊断装置的结构示意图;

图6为本申请所提供的一种汽车诊断系统的结构示意图。

具体实施方式

本申请的核心是提供一种汽车诊断方法,该汽车诊断方法可以更为快速有效的实现诊断服务指令的动态配置,完成更为准确的车辆诊断;本申请的另一核心是提供一种汽车诊断装置、系统、系统及计算机可读存储介质,均具有上述有益效果。

为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述。

请参考图1,图1为本申请所提供的第一种汽车诊断方法的流程示意图,该汽车诊断方法可以包括:

s101:接收诊断请求,输出诊断服务列表;其中,本申请实施例中诊断服务列表的各诊断服务项优选基于odx(opendiagnosticdataexchange,开放式的诊断数据格式)协议数据和预定义参数结构体获得;

本步骤旨在实现诊断服务列表的输出,该诊断服务列表中包括有多种诊断服务项,以供用户选择和配置进而实现相应的诊断服务。具体的,用户可基于系统前端发起诊断请求,系统则会根据该诊断请求将诊断服务列表反馈至前端界面进行显示,方便用户选择所需的诊断服务项并进行相应的参数配置。

进一步,诊断服务列表中的各个诊断服务项都是基于车辆诊断协议数据和预定义参数结构体构建获得,其中,odx是一种开放式的诊断数据格式,用以描述汽车诊断相关数据,可实现整车生命周期中诊断数据的交互,由于odx数据具有开源和标准化的属性,从而使得在整车诊断过程中使用odx作为数据交换格式,整个流程会更容易、更快速、出错机率更低。预定义参数结构体是一种预先自定义的关于诊断服务参数的递归的结构体,对于诊断服务而言,每个服务都包含请求和应答,请求和应答结构类似,都包含多个参数,而被参数引用的结构本身也包含了参数,因此,参数是一个自包含的结构,每个预定义参数结构体对应于一类参数,以便实现参数配置和计算。

s102:获取用户根据诊断服务列表输入的配置信息;

本步骤旨在实现配置信息的获取,该配置信息即为用户基于诊断服务列表输入的配置信息,当诊断服务列表显示于前端界面时,用户即可在前端界面进行诊断服务项选择和参数配置,完成配置信息的输入。

s103:对配置信息进行字节位计算,生成诊断服务指令;

本步骤旨在实现诊断服务指令的生成,在获得配置信息后,对其进行字节位计算,获得对应参数各个字节位的取值,例如,若参数选择为yes,则取值01,若参数选择为no,则取值00,进一步,根据各个字节位的取值即可生成最终的诊断服务指令。

s104:执行诊断服务指令。

本步骤旨在实现诊断服务指令的指令,通过执行诊断服务指令即可完成相应的诊断服务。

作为一种优选实施例,上述执行诊断服务指令,可以包括:与目标车辆的ecu(electroniccontrolunit,电子控制单元/车载电脑)建立连接,并执行诊断服务指令。

具体的,由于诊断服务用于实现车辆诊断,因此,在执行服务指令之前,需要与目标车辆,即被诊断的车辆建立连接关系,具体诊断系统为与目标车辆的ecu建立连接,进而执行诊断服务指令,实现通讯并完成车辆诊断。

本申请所提供的汽车诊断方法,利用车辆诊断协议数据和预定义参数结构体构建诊断服务项,进而生成诊断服务列表,通过在前端显示列表的方式方便用户根据实际需求进行参数配置,最后对用户配置信息进行处理生成相应的诊断服务指令,完成车辆诊断服务,由此可见,通过动态选择诊断服务参数项即可实现诊断服务指令的动态配置,方便快捷,进一步提高了车辆诊断效率,实现了更为准确的车辆诊断。

下面通过另一具体实施方式对本申请所提供的汽车诊断方法进行进一步阐述,参照图2,图2为本申请所提供的一种诊断服务列表生成方法的流程示意图,该诊断服务列表生成方法可包括:

s201:获取预定义参数结构体;其中,预定义参数结构体包括参数名称、字节位置、位位值以及算法信息;

s202:加载车辆诊断协议数据,对车辆诊断协议数据和预定义参数结构体进行封装,获得诊断服务项;

s203:根据各诊断服务项生成诊断服务列表。

本申请实施例提供了一种较为具体的诊断服务列表的生成方法。首先,获取预定义参数结构体,该预定义参数结构体由技术人员进行自定义获得,每个预定义参数结构体包括但不限于参数名称、字节位置、位位值以及算法信息等,其中,算法信息用于实现配置信息的字节位计算;进一步,加载获取车辆诊断协议数据,并对车辆诊断协议数据和预定义参数结构体进行封装获得诊断服务结构体,也即上述诊断服务项,对诊断服务结构体进行存储,由此,当诊断系统接收诊断请求时,即可将存储信息以列表的形式显示于前端界面,以供用户选择和配置。

作为一种优选实施例,上述诊断服务列表可以为树状列表。

具体的,诊断服务列表具体为树状列表,因为参数可以包含结构,结构可以包含参数,即参数是一个自包含的结构,因此,为便于用户查看和选择,可将诊断服务列表设定为树状列表的形式。

作为一种优选实施例,上述加载车辆诊断协议数据,可以包括:从odx诊断数据库中加载车辆诊断协议数据。

本优选实施例提供了一种较为具体的车辆诊断协议数据的加载方法,即从odx诊断数据库中进行加载,odx诊断数据库中存储有各种用于描述车辆诊断服务的相关数据,可以有效保证诊断服务数据的完整性和全面性。

本申请实施例所提供的汽车诊断方法,通过列表的形式对各类诊断服务项进行显示,更加方便用户进行诊断服务选择和对应参数的配置,保证了用户体验。

下面通过另一具体实施方式对本申请所提供的汽车诊断方法进行进一步阐述,参照图3,图3为本申请所提供的另一种汽车诊断方法的流程示意图,该汽车诊断方法可包括:

s301:接收诊断请求,输出诊断服务列表;其中,诊断服务列表中的各诊断服务项基于车辆诊断协议数据和预定义参数结构体获得;

s302:获取用户根据诊断服务列表输入的配置信息;

s303:根据配置信息确定目标配置节点;

s304:在目标配置节点对配置信息进行字节位计算,生成诊断服务指令;

本优选实施例对诊断服务指令的生成过程进行了详细介绍,即以节点的方式位置各项诊断服务指令,具体而言,每个诊断服务对应于一个节点,因此,在基于用户配置信息生成诊断服务指令时,可首先根据配置信息确定目标配置节点,进而在该目标配置节点对各类配置信息进行字节位计算,生成相应的诊断服务指令。可以理解的是,上述目标配置节点的数量并不唯一,具体可根据功能需求确定,因为汽车诊断分为基本功能和特殊功能,基本功能通常比较简单,往往一个诊断服务就能完成,但是一个特殊功能一般需要包含多个诊断服务,因此,一个特殊功能流程会包含多个功能节点。

作为一种优选实施例,上述在目标配置节点对配置信息进行字节位计算,生成诊断服务指令,可以包括:根据配置信息确定目标参数项和目标算法;利用目标算法计算获得各目标参数项的字节位值;根据各目标参数项的字节位值生成诊断服务指令。

本优选实施例提供了较为具体的字节位计算方法,即通过预定义结构体中的参数算法实现,具体而言,每个预定义结构体均包含参数信息,因此,诊断系统在获得配置信息后,首先可根据该配置信息确定目标参数项和目标算法,该目标参数项即为被配置的参数,目标算法即为用于对当前配置信息进行字节位计算的参数算法,由此,即可利用该目标算法计算各目标参数项的字节位值,最后对各个目标参数项的字节位值进行组合获得一个诊断服务总值,该诊断服务总值即为最终生成的诊断服务指令。

s305:执行诊断服务指令。

关于上述步骤s301、s302以及s305的具体实施过程可参照前述实施例的内容,在此不再进行赘述。

在上述各个实施例的基础上,本申请实施例提供了一种更为具体的汽车诊断方法,其具体实现流程如下:

1、诊断服务项定义流程:

(1)对于车辆诊断服务而言,每项服务都包含请求和应答,请求(request)和应答(responses)结构类似,都包含多个参数(parameter),而被参数引用的结构(struct)本身也包含了参数,即parameter可以包含struct,struct又可以包含parameter,因此,parameter是一个自包含的结构。基于此,可定义一个递归的paramter结构体,每个结构体包含paramter的名称、byteposition(字节位置)、bitposition(位位置)、算法信息;

(2)在odx诊断数据库中加载车辆诊断协议数据,与paramter结构体进行封装,获得诊断服务结构并进行存储,每项诊断服务结构包括一个paramter结构体。

2、汽车诊断流程:

(1)对于每个诊断服务项,均可在诊断节点配置程序中显示列出,供用户选择;

(2)用户配置各诊断服务节点;

(3)执行各诊断服务节点,确定被配置的parameter项和参数算法,进而实现当前诊断服务各字节位置取值的计算;

(4)利用各字节位置的值组合获得递归顶层parameter结构体的值,该值即为诊断服务指令;

(5)利用诊断服务指令和ecu进行通讯,完成车辆诊断。

进一步,以读码服务为例,请参考图4,图4为本申请所提供的一种参数配置与读码指令的关系图:

在service_readdtcinformation_reportdtcbystatusmask诊断服务请求命令中,包含sid、subfunction以及dtcstatusmask,其中,parametersid占一个字节,取值为19,subfunction占一个字节,取值为02,dtcstatusmask包含8个子paramter,则可根据用户配置确定其取值。具体的,对于dtcstatusmask,在用户配置完成后执行对应的诊断服务节点,诊断程序会根据用户配置参数项的路径(parameter名称层级),在递归的parameter结构体中查找被配置的parameter项,然后根据其中的算法获取对应bit位的值,例如,若parameter为“yes”,则对应bit位取值01,若parameter为“no”,则对应bit位取值00,假设用户配置dtcstatusmask的bit2为“yes”,则dtcstatusmask取值00000100,转换为16进制为0x04,与sid、subfunction进行组合,获得诊断服务指令190204,假设用户配置dtcstatusmask的bit2和bit3为“yes”,则dtcstatusmask取值00001100,转换为16进制为0x0c,与sid、subfunction进行组合,获得诊断服务指令19020c。

可见,本实施例所提供的汽车诊断方法,利用车辆诊断协议数据和预定义参数结构体构建诊断服务项,进而生成诊断服务列表,通过在前端显示列表的方式方便用户根据实际需求进行参数配置,最后对用户配置信息进行处理生成相应的诊断服务指令,完成车辆诊断服务,由此可见,通过动态选择诊断服务参数项即可实现诊断服务指令的动态配置,方便快捷,进一步提高了车辆诊断效率,实现了更为准确的车辆诊断。

下面对本申请实施例提供的汽车诊断装置进行介绍,下文描述的汽车诊断装置与上文描述的汽车诊断方法可相互对应参照。

请参考图5,图5为本申请所提供的一种汽车诊断装置的结构示意图,该汽车诊断装置可以包括:

列表输出模块100,用于接收诊断请求,输出诊断服务列表;其中,诊断服务列表中的各诊断服务项基于车辆诊断协议数据和预定义参数结构体获得;

信息配置模块200,用于获取用户根据诊断服务列表输入的配置信息;

指令生成模块300,用于对配置信息进行字节位计算,生成诊断服务指令;

指令执行模块400,用于执行诊断服务指令。

本申请所提供的汽车诊断装置,利用车辆诊断协议数据和预定义参数结构体构建诊断服务项,进而生成诊断服务列表,通过在前端显示列表的方式方便用户根据实际需求进行参数配置,最后对用户配置信息进行处理生成相应的诊断服务指令,完成车辆诊断服务,由此可见,通过动态选择诊断服务参数项即可实现诊断服务指令的动态配置,方便快捷,进一步提高了车辆诊断效率,实现了更为准确的车辆诊断。

在一些具体的实施例中,该汽车诊断装置还可包括列表生成模块,该列表生成模块可包括:

结构体获取单元,用于获取预定义参数结构体;其中,预定义参数结构体包括参数名称、字节位置、位位值以及算法信息;

数据加载单元,用于加载车辆诊断协议数据,对车辆诊断协议数据和预定义参数结构体进行封装,获得诊断服务项;

列表生成单元,用于根据各诊断服务项生成诊断服务列表。

在一些具体的实施例中,上述数据加载单元可具体用于从odx诊断数据库中加载车辆诊断协议数据,对车辆诊断协议数据和预定义参数结构体进行封装,获得诊断服务项。

在一些具体的实施例中,上述指令生成模块可包括:

节点确定单元,用于根据配置信息确定目标配置节点;

指令生成单元,用于在目标配置节点对配置信息进行字节位计算,生成诊断服务指令。

在一些具体的实施例中,上述指令生成单元可具体用于根据配置信息确定目标参数项和目标算法;利用目标算法计算获得各目标参数项的字节位值;根据各目标参数项的字节位值生成诊断服务指令。

在一些具体的实施例中,上述指令执行模块可具体用于与目标车辆的ecu建立连接,并执行诊断服务指令。

下面对本申请实施例提供的汽车诊断系统进行介绍,下文描述的汽车诊断系统与上文描述的汽车诊断方法可相互对应参照。

请参考图6,图6为本申请所提供的一种汽车诊断系统的结构示意图,该汽车诊断系统可以包括:

存储器11,用于存储计算机程序;

处理器12,用于执行上述存储器11存储的计算机程序时可实现如下步骤:

接收诊断请求,输出诊断服务列表;其中,诊断服务列表中的各诊断服务项基于车辆诊断协议数据和预定义参数结构体获得;获取用户根据诊断服务列表输入的配置信息;对配置信息进行字节位计算,生成诊断服务指令;执行诊断服务指令。

在一些具体的实施例中,处理器12执行存储器11中保存的计算机程序时,还可以实现以下步骤:获取预定义参数结构体;其中,预定义参数结构体包括参数名称、字节位置、位位值以及算法信息;加载车辆诊断协议数据,对车辆诊断协议数据和预定义参数结构体进行封装,获得诊断服务项;根据各诊断服务项生成诊断服务列表。

在一些具体的实施例中,处理器12执行存储器11中保存的计算机子程序时,具体可以实现以下步骤:从odx诊断数据库中加载车辆诊断协议数据。

在一些具体的实施例中,处理器12执行存储器11中保存的计算机子程序时,具体可以实现以下步骤:根据配置信息确定目标配置节点;在目标配置节点对配置信息进行字节位计算,生成诊断服务指令。

在一些具体的实施例中,处理器12执行存储器11中保存的计算机子程序时,具体可以实现以下步骤:根据配置信息确定目标参数项和目标算法;利用目标算法计算获得各目标参数项的字节位值;根据各目标参数项的字节位值生成诊断服务指令。

在一些具体的实施例中,处理器12执行存储器11中保存的计算机子程序时,具体可以实现以下步骤:与目标车辆的ecu建立连接,并执行诊断服务指令。

进一步的,本申请实施例还公开了一种计算机可读存储介质,用于存储计算机程序,其中,计算机程序被处理器执行时可实现如下步骤:

接收诊断请求,输出诊断服务列表;其中,诊断服务列表中的各诊断服务项基于车辆诊断协议数据和预定义参数结构体获得;获取用户根据诊断服务列表输入的配置信息;对配置信息进行字节位计算,生成诊断服务指令;执行诊断服务指令。

在一些具体的实施例中,计算机可读存储介质中保存的计算机程序被处理器执行时,还可以实现以下步骤:获取预定义参数结构体;其中,预定义参数结构体包括参数名称、字节位置、位位值以及算法信息;加载车辆诊断协议数据,对车辆诊断协议数据和预定义参数结构体进行封装,获得诊断服务项;根据各诊断服务项生成诊断服务列表。

在一些具体的实施例中,计算机可读存储介质中保存的计算机子程序被处理器执行时,具体可以实现以下步骤:从odx诊断数据库中加载车辆诊断协议数据。

在一些具体的实施例中,计算机可读存储介质中保存的计算机子程序被处理器执行时,具体可以实现以下步骤:根据配置信息确定目标配置节点;在目标配置节点对配置信息进行字节位计算,生成诊断服务指令。

在一些具体的实施例中,计算机可读存储介质中保存的计算机子程序被处理器执行时,具体可以实现以下步骤:根据配置信息确定目标参数项和目标算法;利用目标算法计算获得各目标参数项的字节位值;根据各目标参数项的字节位值生成诊断服务指令。

在一些具体的实施例中,计算机可读存储介质中保存的计算机子程序被处理器执行时,具体可以实现以下步骤:与目标车辆的ecu建立连接,并执行诊断服务指令。

该计算机可读存储介质可以包括:u盘、移动硬盘、只读存储器(read-onlymemory,rom)、随机存取存储器(randomaccessmemory,ram)、磁碟或者光盘等各种可以存储程序代码的介质。

对于本申请提供的计算机可读存储介质的具体介绍请参照上述方法实施例,本申请在此不做赘述。

说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的装置而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。

专业人员还可以进一步意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。

结合本文中所公开的实施例描述的方法或算法的步骤可以直接用硬件、处理器执行的软件模块,或者二者的结合来实施。软件模块可以置于随机存储器(ram)、内存、只读存储器(rom)、电可编程rom、电可擦除可编程rom、寄存器、硬盘、可移动磁盘、cd-rom、或技术领域内所公知的任意其它形式的存储介质中。

最后,还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。

以上对本申请所提供的汽车诊断方法、装置、系统及计算机可读存储介质进行了详细介绍。本文中应用了具体个例对本申请的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本申请的方法及其核心思想。应当指出,对于本技术领域的普通技术人员来说,在不脱离本申请原理的前提下,还可以对本申请进行若干改进和修饰,这些改进和修饰也落入本申请权利要求的保护范围要素。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1