汽车故障诊断方法、设备、存储介质及装置转让专利

申请号 : CN201911210512.X

文献号 : CN110825072B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 孙涛许东辉周沛泽李冬丽张晓龙张可可成金峰

申请人 : 安徽江淮汽车集团股份有限公司

摘要 :

本发明公开了一种汽车故障诊断方法、设备、存储介质及装置,该方法包括:每隔预设时间周期检测通讯报文状态,并根据所述通讯报文状态判断是否存在通讯故障,若存在通讯故障,则获取故障索引值,并在预设存储区中查找所述故障索引值对应的故障码以及时间戳,将所述故障码以及所述时间戳发送至预设客户端,以使所述预设客户端根据所述故障码以及时间戳进行汽车故障诊断;本发明通过在通讯故障时,获取故障索引值,根据故障索引值查找故障码以及时间戳,使得汽车故障诊断更加合理,提升用户体验。

权利要求 :

1.一种汽车故障诊断方法,其特征在于,所述汽车故障诊断方法包括以下步骤:每隔预设时间周期检测通讯报文状态,并根据所述通讯报文状态判断是否存在通讯故障;

当通讯报文出现丢失时,获取当前故障码以及上一帧通讯报文的目标时间戳,并设置故障索引值;

建立所述故障索引值、所述故障码以及目标时间戳之间的对应关系,并根据所述对应关系建立预设映射关系表;

当通讯报文出现丢失时,开始计时,并获得计时时段;

判断所述计时时段是否大于设定时段;

若所述计时时段大于所述设定时段,从所述设定时段中提取样本时段,并判断所述样本时段内是否出现通讯报文丢失;

若是,则将所述预设映射关系表存入第一存储区;

若存在通讯故障,则获取故障索引值,并在预设存储区中查找所述故障索引值对应的故障码以及时间戳,其中,所述预设存储区包括:第一存储区;

将所述故障码以及所述时间戳发送至预设客户端,以使所述预设客户端根据所述故障码以及时间戳进行汽车故障诊断。

2.如权利要求1所述的汽车故障诊断方法,其特征在于,所述每隔预设时间周期检测通讯报文状态,并根据所述通讯报文状态判断是否存在通讯故障的步骤之前,所述汽车故障诊断方法还包括:获取电子控制单元ECU供电电源状态、点火钥匙状态、电源指示报文以及车辆电源状态;

根据所述ECU供电电源状态、所述点火钥匙状态、所述电源指示报文以及所述车辆电源状态判断是否开启通讯故障诊断功能;

若是,则开启通讯故障诊断功能,并执行所述每隔预设时间周期检测通讯报文状态,并根据所述通讯报文状态判断是否存在通讯故障的步骤。

3.如权利要求2所述的汽车故障诊断方法,其特征在于,所述根据所述电子控制单元ECU供电电源状态、所述点火钥匙状态、所述电源指示报文以及所述车辆电源状态判断是否开启通讯故障诊断功能的步骤,具体包括:根据所述ECU供电电源状态以及所述点火钥匙状态确定ECU本地工作电源状态,并判断所述ECU本地工作状态是否为有效状态;

若是,则对所述电源指示报文进行有效性判断,获得判断结果;

若所述判断结果为有效,则根据所述车辆电源信息确定车辆电源状态;

判断所述车辆电源状态是否为预设电源状态,并根据判断结果确定是否开启通讯故障诊断功能。

4.如权利要求2所述的汽车故障诊断方法,其特征在于,所述每隔预设时间周期检测通讯报文状态,并根据所述通讯报文状态判断是否存在通讯故障的步骤,具体包括:每隔预设时间周期检测通讯报文是否出现丢失,并根据检测结果确定通讯报文状态;

根据所述通讯报文状态判断是否存在通讯故障。

5.如权利要求1所述的汽车故障诊断方法,其特征在于,所述预设存储区包括:第二存储区;

所述判断所述计时时段是否大于设定时段的步骤之后,所述汽车故障诊断方法还包括:若所述计时时段小于或等于所述设定时段,则将所述预设映射关系表存入第二存储区。

6.如权利要求5所述的汽车故障诊断方法,其特征在于,所述若所述计时时段大于设定时段,从所述设定时段中提取样本时段,并判断所述样本时段是否出现通讯报文丢失的步骤之后,所述汽车故障诊断方法还包括:若未出现通讯报文丢失,则将所述预设映射关系表存入所述第二存储区。

7.一种汽车故障诊断设备,其特征在于,所述汽车故障诊断设备包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的汽车故障诊断程序,所述汽车故障诊断程序被所述处理器执行时实现如权利要求1至6中任一项所述的汽车故障诊断方法的步骤。

8.一种存储介质,其特征在于,所述存储介质上存储有汽车故障诊断程序,所述汽车故障诊断程序被处理器执行时实现如权利要求1至6中任一项所述的汽车故障诊断方法的步骤。

9.一种汽车故障诊断装置,其特征在于,所述汽车故障诊断装置包括:判断模块、存储模块、查找模块和发送模块;

所述判断模块,用于每隔预设时间周期检测通讯报文状态,并根据所述通讯报文状态判断是否存在通讯故障;

所述查找模块,用于若存在通讯故障,则获取故障索引值,并在预设存储区中查找所述故障索引值对应的故障码以及时间戳;

所述存储模块,用于当通讯报文出现丢失时,获取当前故障码以及上一帧通讯报文的目标时间戳,并设置故障索引值,建立所述故障索引值、所述故障码以及目标时间戳之间的对应关系,并根据所述对应关系建立预设映射关系表,当通讯报文出现丢失时,开始计时,并获得计时时段,判断所述计时时段是否大于设定时段,若所述计时时段大于所述设定时段,从所述设定时段中提取样本时段,并判断所述样本时段内是否出现通讯报文丢失,若是,则将所述预设映射关系表存入第一存储区;

所述发送模块,用于将所述故障码以及所述时间戳发送至预设客户端,以使所述预设客户端根据所述故障码以及时间戳进行汽车故障诊断。

说明书 :

汽车故障诊断方法、设备、存储介质及装置

技术领域

[0001] 本发明涉及汽车检测技术领域,尤其涉及一种汽车故障诊断方法、设备、存储介质及装置。

背景技术

[0002] 目前,传统的通讯故障检测流程为:电子控制单元(Electronic Control Unit,ECU)底层协议单元从控制器局域网络(Controller Area Network,CAN)总线上获取通讯报文,ECU上层应用模块对获取的报文进行周期的监测,当监测到通讯报文丢失后,启动定时器模块开始计数,在规定的时间内,一般为10倍的报文发送周期,当一帧报文为50ms,所定义的时间阈值为500ms,连续未收到有效的报文,则向存储单元记录故障码,现有技术中,无法具体到定位到故障的时间点,仅保存故障被确认后的,特定数据流,针对偶发性故障无法进行有效的判断和排查。因此,如何对故障报文准确定位是亟待解决的技术问题。
[0003] 上述内容仅用于辅助理解本发明的技术方案,并不代表承认上述内容是现有技术。

发明内容

[0004] 本发明的主要目的在于提供一种汽车故障诊断方法、设备、存储介质及装置,旨在解决现有技术中如何对故障报文准确定位的技术问题。
[0005] 为实现上述目的,本发明提供一种汽车故障诊断方法,所述汽车故障诊断方法包括以下步骤:
[0006] 每隔预设时间周期检测通讯报文状态,并根据所述通讯报文状态判断是否存在通讯故障;
[0007] 若存在通讯故障,则获取故障索引值,并在预设存储区中查找所述故障索引值对应的故障码以及时间戳;
[0008] 将所述故障码以及所述时间戳发送至预设客户端,以使所述预设客户端根据所述故障码以及时间戳进行汽车故障诊断。
[0009] 优选地,所述每隔预设时间周期检测通讯报文状态,并根据所述通讯报文状态判断是否存在通讯故障之前,所述汽车故障诊断方法还包括:
[0010] 获取电子控制单元ECU供电电源状态、点火钥匙状态、电源指示报文以及车辆电源状态;
[0011] 根据所述ECU供电电源状态、所述点火钥匙状态、所述电源指示报文以及所述车辆电源状态判断是否开启通讯故障诊断功能。
[0012] 若是,则开启通讯故障诊断功能,并执行所述每隔预设时间周期检测通讯报文状态,并根据所述通讯报文状态判断是否存在通讯故障的步骤。
[0013] 优选地,所述根据所述电子控制单元ECU供电电源状态、所述点火钥匙状态、所述电源指示报文以及所述车辆电源状态判断是否开启通讯故障诊断功能,包括:
[0014] 根据所述ECU供电电源状态以及所述点火钥匙状态确定ECU本地工作电源状态,并判断所述ECU本地工作状态是否为有效状态;
[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] 图1是本发明实施例方案涉及的硬件运行环境的汽车故障诊断设备的结构示意图;
[0042] 图2为本发明汽车故障诊断方法第一实施例的流程示意图;
[0043] 图3为本发明汽车故障诊断方法第二实施例的流程示意图;
[0044] 图4为本发明汽车故障诊断方法第三实施例的流程示意图;
[0045] 图5为本发明汽车故障诊断装置第一实施例的结构框图。
[0046] 本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。

具体实施方式

[0047] 应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
[0048] 参照图1,图1为本发明实施例方案涉及的硬件运行环境的汽车故障诊断设备结构示意图。
[0049] 如图1所示,该汽车故障诊断设备可以包括:处理器1001,例如中央处理器(Central Processing Unit,CPU),通信总线1002、用户接口1003,网络接口1004,存储器1005。其中,通信总线1002用于实现这些组件之间的连接通信。用户接口1003可以包括显示屏(Display),可选用户接口1003还可以包括标准的有线接口、无线接口,对于用户接口
1003的有线接口在本发明中可为USB接口。网络接口1004可选的可以包括标准的有线接口、无线接口(如无线保真(WIreless-FIdelity,WI-FI)接口)。存储器1005可以是高速的随机存取存储器(Random Access Memory,RAM)存储器,也可以是稳定的存储器(Non-volatile Memory,NVM),例如磁盘存储器。存储器1005可选的还可以是独立于前述处理器1001的存储装置。
[0050] 本领域技术人员可以理解,图1中示出的结构并不构成对汽车故障诊断设备的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。
[0051] 如图1所示,认定为一种计算机存储介质的存储器1005中可以包括操作系统、网络通信模块、用户接口模块以及汽车故障诊断程序。
[0052] 在图1所示的汽车故障诊断设备中,网络接口1004主要用于连接后台服务器,与所述后台服务器进行数据通信;用户接口1003主要用于连接用户设备;所述汽车故障诊断设备通过处理器1001调用存储器1005中存储的汽车故障诊断程序,并执行本发明实施例提供的汽车故障诊断方法。
[0053] 基于上述硬件结构,提出本发明汽车故障诊断方法的实施例。
[0054] 参照图2,图2为本发明汽车故障诊断方法第一实施例的流程示意图,提出本发明汽车故障诊断方法第一实施例。
[0055] 在第一实施例中,所述汽车故障诊断方法包括以下步骤:
[0056] 步骤S10:每隔预设时间周期检测通讯报文状态,并根据所述通讯报文状态判断是否存在通讯故障。
[0057] 应理解的是,本实施例的执行主体是所述汽车故障诊断设备,其中,所述汽车故障诊断设备可为安装在目标车辆上的电子控制单元(Electronic Control Unit,ECU)等电子设备。
[0058] 预设时间周期可以是50ms,也可以是由厂家出厂时设置,检测通讯报文状态可以是检测通讯报文是否出现丢失,根据检测结果可以确定通讯报文状态,通讯报文状态可以分为出现丢失以及为丢失两种。
[0059] 步骤S20:若存在通讯故障,则获取故障索引值,并在预设存储区中查找所述故障索引值对应的故障码以及时间戳。
[0060] 可理解的是,故障索引值可以是根据故障码以及时间戳设置的对应的故障索引值,预设存储区可以是外部带电可擦可编程只读存储器(Electrically Erasable Programmable read only memory,EEPROM)以及随机存取存储器Random Access Memory,RAM)等,在预设存储区中查找所述故障索引值对应的故障码以及时间戳可以是根据故障码的种类不同,存储在不同的存储区中。
[0061] 步骤S30:将所述故障码以及所述时间戳发送至预设客户端,以使所述预设客户端根据所述故障码以及时间戳进行汽车故障诊断。
[0062] 需要说明的是,预设客户端可以是用户或厂家等将所述故障码以及所述时间戳发送至预设客户端可以根据故障种类不同,发送故障码以及时间戳值不同的客户端。
[0063] 在第一实施例中,每隔预设时间周期检测通讯报文状态,并根据所述通讯报文状态判断是否存在通讯故障,若存在通讯故障,则获取故障索引值,并在预设存储区中查找所述故障索引值对应的故障码以及时间戳,将所述故障码以及所述时间戳发送至预设客户端,以使所述预设客户端根据所述故障码以及时间戳进行汽车故障诊断;本实施例通过在通讯故障时,获取故障索引值,根据故障索引值查找故障码以及时间戳,使得汽车故障诊断更加合理,提升用户体验。
[0064] 参照图3,图3为本发明汽车故障诊断方法第二实施例的流程示意图,基于上述图2所示的第一实施例,提出本发明汽车故障诊断方法的第二实施例。
[0065] 在第二实施例中,所述步骤S10之前,包括:
[0066] 步骤S01:获取电子控制单元ECU供电电源状态、点火钥匙状态、电源指示报文以及车辆电源状态。
[0067] 可理解的是,ECU供电电源状态可以是常电或IGN电等状态,点火钥匙状态可以是ON档等,电源指示报文可以是有效状态,车辆电源状态可以是电源OFF模式、ACC模式、ON模式、启动过程、启动后运行模式等。
[0068] 步骤S02:根据所述ECU供电电源状态、所述点火钥匙状态、所述电源指示报文以及所述车辆电源状态判断是否开启通讯故障诊断功能。
[0069] 应理解的是,当ECU供电电源状态为IGN电状态、点火钥匙状态为ON档、电源指示报文为有效状态以及车辆电源状态为ON模式或启动后运行模式时可以开启通讯故障诊断功能。
[0070] 步骤S03:若是,则开启通讯故障诊断功能,并执行所述每隔预设时间周期检测通讯报文状态,并根据所述通讯报文状态判断是否存在通讯故障的步骤。
[0071] 在第二实施例中,所述步骤S10,包括:
[0072] 步骤S101:每隔预设时间周期检测通讯报文是否出现丢失,并根据检测结果确定通讯报文状态。
[0073] 可理解的是,预设时间周期可以是50ms,也可以是由厂家出厂时设置,检测通讯报文状态可以是检测通讯报文是否出现丢失,根据检测结果可以确定通讯报文状态,通讯报文状态可以分为出现丢失以及为丢失两种。
[0074] 步骤S102:根据所述通讯报文状态判断是否存在通讯故障。
[0075] 需要说明的是,可以在通讯状态为出现丢失则判断存在通讯故障。
[0076] 在第二实施例中,获取电子控制单元ECU供电电源状态、点火钥匙状态、电源指示报文以及车辆电源状态,根据所述ECU供电电源状态、所述点火钥匙状态、所述电源指示报文以及所述车辆电源状态判断是否开启通讯故障诊断功能,若是,则开启通讯故障诊断功能,并执行所述每隔预设时间周期检测通讯报文状态,并根据所述通讯报文状态判断是否存在通讯故障的步骤,每隔预设时间周期检测通讯报文是否出现丢失,并根据检测结果确定通讯报文状态,根据所述通讯报文状态判断是否存在通讯故障,若存在通讯故障,则获取故障索引值,并在预设存储区中查找所述故障索引值对应的故障码以及时间戳,将所述故障码以及所述时间戳发送至预设客户端,以使所述预设客户端根据所述故障码以及时间戳进行汽车故障诊断;本实施例通过检测ECU供电电源状态、点火钥匙状态、电源指示报文以及车辆电源状态来判断是否开启通讯故障诊断功能,从而能够避免因电源模式差异或启动过程造成的故障码误报的问题,提高用户体验。
[0077] 参照图4,图4为本发明汽车故障诊断方法第三实施例的流程示意图,基于上述图2所示的第一实施例,提出本发明汽车故障诊断方法的第三实施例。
[0078] 在第三实施例中,所述步骤S20之前,还包括:
[0079] 步骤S201:当通讯报文出现丢失时,获取当前故障码以及上一帧通讯报文的目标时间戳,并设置故障索引值。
[0080] 需要说明的是,当通讯报文出现丢失时,可以向底层协议单元请求上一帧通讯报文的目标时间戳,获取故障码,并设置故障索引值。
[0081] 步骤S202:建立所述故障索引值、所述故障码以及目标时间戳之间的对应关系,并根据所述对应关系建立预设映射关系表;
[0082] 步骤S203:当通讯报文出现丢失时,开始计时,并获得计时时段;
[0083] 应理解的是,当通讯报文出现丢失时,开启故障确认计时器,并获得及时时段。
[0084] 步骤S204:判断所述计时时段是否大于设定时段;
[0085] 需要说明的是,判断故障确认定时器计时到设定时段,是否仍监测到该报文丢失。
[0086] 步骤S205:若所述计时时段大于所述设定时段,从所述设定时段中提取样本时段,并判断所述样本时段内是否出现通讯报文丢失;
[0087] 可理解的是,进一步检测设定时段内的一个窗口内,是否通讯故障丢失,若通讯丢失,则设置通讯故障有效标志位。
[0088] 步骤S206:若是,则将所述预设映射关系表存入第一存储区。
[0089] 需要说明的是,将预设映射关系表写到外部EEPROM或片内FLASH中,保证下电后不会擦除。
[0090] 进一步地,所述步骤S204之后,还包括:
[0091] 若所述计时时段小于或等于所述设定时段,则将所述预设映射关系表存入第二存储区。
[0092] 需要说明的是,若所述计时时段小于或等于所述设定时段,则将预设映射关系表写到内部随机存储器RAM分配的固定区域上,所述存储器RAM分配的固定区域可以是,上电后,ECU在RAM中分配的固定大小的存储区,用于临时存储偶发性通讯故障码及时间戳,在所述固定存储区,能够存放16个故障码及时间戳信息,存储超过16个信息,新增信息自动覆盖先存入的故障信息。
[0093] 进一步地,所述步骤S205之后,还包括:
[0094] 若未出现通讯报文丢失,则将所述预设映射关系表存入所述第二存储区。
[0095] 在第三实施例中,所述步骤S02,包括:
[0096] 步骤S021:根据所述ECU供电电源状态以及所述点火钥匙状态确定ECU本地工作电源状态,并判断所述ECU本地工作状态是否为有效状态。
[0097] 需要说明的是,ECU供电电源状态可以是常电或IGN电等状态,点火钥匙状态可以是ON档等,若ECU供电电源状态为IGN电状态,点火钥匙状态为ON档,则ECU本地工作状态为有效状态。
[0098] 步骤S022:若是,则对所述电源指示报文进行有效性判断,获得判断结果。
[0099] 需要说明的是,判断总线上的电源状态指示报文有效,该报文一般由车身控制器发出。
[0100] 步骤S023:若所述判断结果为有效,则根据所述车辆电源信息确定车辆电源状态。
[0101] 应理解的是,检测车辆电源状态的信息,当处于ON模式或启动后运行模式时,此时开启通讯诊断故障检测功能。
[0102] 步骤S024:判断所述车辆电源状态是否为预设电源状态,并根据判断结果确定是否开启通讯故障诊断功能。
[0103] 需要说明的是,检测车辆电源状态的信息,当处于ON模式或启动后运行模式时,此时开启通讯诊断故障检测功能。
[0104] 在第三实施例中,获取电子控制单元ECU供电电源状态、点火钥匙状态、电源指示报文以及车辆电源状态,根据所述ECU供电电源状态以及所述点火钥匙状态确定ECU本地工作电源状态,并判断所述ECU本地工作状态是否为有效状态,若是,则对所述电源指示报文进行有效性判断,获得判断结果,若所述判断结果为有效,则根据所述车辆电源信息确定车辆电源状态,判断所述车辆电源状态是否为预设电源状态,并根据判断结果确定是否开启通讯故障诊断功能,若是,则开启通讯故障诊断功能,并执行所述每隔预设时间周期检测通讯报文状态,并根据所述通讯报文状态判断是否存在通讯故障的步骤,每隔预设时间周期检测通讯报文状态,并根据所述通讯报文状态判断是否存在通讯故障,当通讯报文出现丢失时,获取当前故障码以及上一帧通讯报文的目标时间戳,并设置故障索引值,建立所述故障索引值、所述故障码以及目标时间戳之间的对应关系,并根据所述对应关系建立预设映射关系表,当通讯报文出现丢失时,开始计时,并获得计时时段,判断所述计时时段是否大于设定时段,若所述计时时段大于所述设定时段,从所述设定时段中提取样本时段,并判断所述样本时段内是否出现通讯报文丢失,若是,则将所述预设映射关系表存入第一存储区,若存在通讯故障,则获取故障索引值,并在预设存储区中查找所述故障索引值对应的故障码以及时间戳,将所述故障码以及所述时间戳发送至预设客户端,以使所述预设客户端根据所述故障码以及时间戳进行汽车故障诊断;本实施例通过判断所述计时时段是否大于设定时段以及判断所述样本时段内是否出现通讯报文丢失,从而能够对故障进行分类存储,确认后的故障设置在非擦除区,偶发性故障设置在RAM的固定的区域,提高用户体验。
[0105] 此外,本发明实施例还提出一种存储介质,所述存储介质上存储有汽车故障诊断程序,所述汽车故障诊断程序被处理器执行时实现如上文所述的汽车故障诊断方法的步骤。
[0106] 此外,参照图5,本发明实施例还提出一种汽车故障诊断装置,所述汽车故障诊断装置包括:判断模块10、查找模块20和发送模块30;;
[0107] 所述判断模块10,用于每隔预设时间周期检测通讯报文状态,并根据所述通讯报文状态判断是否存在通讯故障。
[0108] 应理解的是,本实施例的执行主体是所述汽车故障诊断设备,其中,所述汽车故障诊断设备可为安装在目标车辆上的电子控制单元(Electronic Control Unit,ECU)等电子设备。
[0109] 预设时间周期可以是50ms,也可以是由厂家出厂时设置,检测通讯报文状态可以是检测通讯报文是否出现丢失,根据检测结果可以确定通讯报文状态,通讯报文状态可以分为出现丢失以及为丢失两种。
[0110] 所述查找模块20,用于若存在通讯故障,则获取故障索引值,并在预设存储区中查找所述故障索引值对应的故障码以及时间戳。
[0111] 可理解的是,故障索引值可以是根据故障码以及时间戳设置的对应的故障索引值,预设存储区可以是外部带电可擦可编程只读存储器(Electrically Erasable Programmable read only memory,EEPROM)以及随机存取存储器Random Access Memory,RAM)等,在预设存储区中查找所述故障索引值对应的故障码以及时间戳可以是根据故障码的种类不同,存储在不同的存储区中。
[0112] 所述发送模块30,用于将所述故障码以及所述时间戳发送至预设客户端,以使所述预设客户端根据所述故障码以及时间戳进行汽车故障诊断。
[0113] 需要说明的是,预设客户端可以是用户或厂家等将所述故障码以及所述时间戳发送至预设客户端可以根据故障种类不同,发送故障码以及时间戳值不同的客户端。
[0114] 在本实施例中,每隔预设时间周期检测通讯报文状态,并根据所述通讯报文状态判断是否存在通讯故障,若存在通讯故障,则获取故障索引值,并在预设存储区中查找所述故障索引值对应的故障码以及时间戳,将所述故障码以及所述时间戳发送至预设客户端,以使所述预设客户端根据所述故障码以及时间戳进行汽车故障诊断;本实施例通过在通讯故障时,获取故障索引值,根据故障索引值查找故障码以及时间戳,使得汽车故障诊断更加合理,提升用户体验。
[0115] 在一实施例中,所述汽车故障诊断装置还包括:开启判断模块;
[0116] 所述开启判断模块,用于获取电子控制单元ECU供电电源状态、点火钥匙状态、电源指示报文以及车辆电源状态,根据所述ECU供电电源状态、所述点火钥匙状态、所述电源指示报文以及所述车辆电源状态判断是否开启通讯故障诊断功能,若是,则开启通讯故障诊断功能,并执行所述每隔预设时间周期检测通讯报文状态,并根据所述通讯报文状态判断是否存在通讯故障的步骤;
[0117] 在一实施例中,所述开启判断模块,还用于根据所述ECU供电电源状态以及所述点火钥匙状态确定ECU本地工作电源状态,并判断所述ECU本地工作状态是否为有效状态,若是,则对所述电源指示报文进行有效性判断,获得判断结果,若所述判断结果为有效,则根据所述车辆电源信息确定车辆电源状态,判断所述车辆电源状态是否为预设电源状态,并根据判断结果确定是否开启通讯故障诊断功能;
[0118] 在一实施例中,所述判断模块,还用于每隔预设时间周期检测通讯报文是否出现丢失,并根据检测结果确定通讯报文状态,根据所述通讯报文状态判断是否存在通讯故障;
[0119] 在一实施例中,所述汽车故障诊断装置还包括:存储模块;
[0120] 所述存储模块,用于当通讯报文出现丢失时,获取当前故障码以及上一帧通讯报文的目标时间戳,并设置故障索引值,建立所述故障索引值、所述故障码以及目标时间戳之间的对应关系,并根据所述对应关系建立预设映射关系表,当通讯报文出现丢失时,开始计时,并获得计时时段,判断所述计时时段是否大于设定时段,若所述计时时段大于所述设定时段,从所述设定时段中提取样本时段,并判断所述样本时段内是否出现通讯报文丢失,若是,则将所述预设映射关系表存入第一存储区;
[0121] 在一实施例中,所述存储模块,还用于若所述计时时段小于或等于所述设定时段,则将所述预设映射关系表存入第二存储区;
[0122] 在一实施例中,所述存储模块,还用于若未出现通讯报文丢失,则将所述预设映射关系表存入所述第二存储区。
[0123] 本发明所述汽车故障诊断装置的其他实施例或具体实现方式可参照上述各方法实施例,此处不再赘述。
[0124] 需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者系统不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者系统所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者系统中还存在另外的相同要素。
[0125] 上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。在列举了若干装置的单元权利要求中,这些装置中的若干个可以是通过同一个硬件项来具体体现。词语第一、第二、以及第三等的使用不表示任何顺序,可将这些词语解释为名称。
[0126] 通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如只读存储器镜像(Read Only Memory image,ROM)/随机存取存储器(Random Access Memory,RAM)、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,空调器,或者网络设备等)执行本发明各个实施例所述的方法。
[0127] 以上仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。