网络诊断功能的控制方法、装置及相关产品与流程

文档序号:23795469发布日期:2021-02-02 08:55阅读:86来源:国知局
网络诊断功能的控制方法、装置及相关产品与流程

[0001]
本申请涉及汽车技术领域,特别是涉及一种网络诊断功能的控制方法、装置及相关产品。


背景技术:

[0002]
随着汽车技术的快速发展,汽车的故障诊断作为汽车最基本的功能之一,能够实现在不解体或仅卸下个别零件的情况下,确定汽车的技术状况,查明故障部位及故障原因。
[0003]
目前,由于自动驾驶技术的飞速发展,汽车上的电子控制单元(electronic control unit,简称ecu)数量的不断增加,需要传输的数据量也随之增长。因特网诊断协议(diagnostic over internet protocol,简称doip)诊断通过使用以太网作为传输通道,大大提升了数据传输速率,能够满足数据量的传输需求。
[0004]
然而,传统采用doip诊断式对汽车进行故障诊断的方法,需要通过激活线来激活故障诊断功能,其应用场景单一。


技术实现要素:

[0005]
基于此,有必要针对上述技术问题,提供一种能够灵活应用在多种场景下的网络诊断功能的控制方法、装置、系统、计算机设备和存储介质。
[0006]
第一方面,本申请实施例提供一种网络诊断功能的控制方法,所述方法包括:
[0007]
接收激活通路的状态指示信号;所述状态指示信号用于指示激活通路的工作状态是否正常;
[0008]
若根据所述状态指示信号判断所述激活通路的工作状态为正常状态,则根据接收到的外部设备通过所述激活通路发送的控制信号,控制所述网络诊断功能的状态;
[0009]
若根据所述状态指示信号判断所述激活通路的工作状态为异常状态,则根据接收到的所述外部设备通过控制器局域网络(controller area network,简称can)发送的激活报文,控制所述网络诊断功能的状态。
[0010]
在其中一个实施例中,所述控制信号包括控制电压;所述根据接收到的外部设备通过所述激活通路发送的控制信号,控制所述网络诊断功能的状态,包括:
[0011]
当所述控制电压高于或等于预设的激活阈值时,则开启所述网络诊断功能;
[0012]
当所述控制电压低于所述激活阈值时,则关闭所述网络诊断功能。
[0013]
在其中一个实施例中,所述根据接收到的所述外部设备通过控制器局域网络can发送的激活报文,控制所述网络诊断功能的状态,包括:
[0014]
获取所述外部设备通过所述can发送的所述激活报文;所述激活报文中携带所述外部设备的设备信息;
[0015]
根据所述设备信息判断所述外部设备是否为诊断设备;
[0016]
若是,则向所述外部设备返回激活应答报文,并开启所述网络诊断功能;
[0017]
若否,则关闭所述网络诊断功能。
[0018]
在其中一个实施例中,当所述网络诊断功能为开启状态时,所述方法还包括:
[0019]
当接收到所述网络诊断功能的关闭指令时,关闭所述网络诊断功能。
[0020]
在其中一个实施例中,所述关闭指令包括:所述外部设备发送的关闭报文、预设的时段内未接收到所述外部设备发送的报文和网络下线信号中的任意一个。
[0021]
第二方面,本申请实施例提供一种网络诊断功能的控制方法,所述方法包括:
[0022]
发送激活通路的状态指示信号;所述状态指示信号用于指示激活通路的工作状态是否正常;
[0023]
若所述激活通路的工作状态为正常状态,则通过所述激活通路向所述电子控制单元ecu发送控制信号,所述控制信号用于控制所述网络诊断功能的状态;
[0024]
若所述激活通路的工作状态为异常状态,则通过控制器局域网络can向所述ecu发送激活报文,所述激活报文用于控制所述网络诊断功能的状态。
[0025]
在其中一个实施例中,所述控制信号包括控制电压;所述通过所述激活通路向所述电子控制单元ecu发送控制信号,包括:
[0026]
通过所述激活通路向所述ecu发送控制电压;
[0027]
当所述控制电压高于或等于预设的激活阈值时,所述控制电压用于开启所述网络诊断功能;
[0028]
当所述控制电压低于所述激活阈值时,所述控制电压用于关闭所述网络诊断功能;
[0029]
在其中一个实施例中,所述通过can向所述ecu发送激活报文,包括:
[0030]
通过所述can向所述ecu循环发送所述激活报文;
[0031]
若循环次数小于或等于预设的次数阈值,且接收到所述ecu返回的激活应答报文,则所述激活报文用于开启所述网络诊断功能;
[0032]
若所述循环次数大于所述次数阈值,或者未接收到所述激活应答报文,则所述激活报文用于关闭所述网络诊断功能。
[0033]
在其中一个实施例中,当所述网络诊断功能为开启状态时,所述方法还包括:
[0034]
通过所述can向所述ecu发送关闭报文,所述关闭报文用于关闭所述网络诊断功能。
[0035]
第三方面,本申请实施例提供一种网络诊断功能的控制装置,所述装置包括:
[0036]
车辆端接收模块,用于接收激活通路的状态指示信号;所述状态指示信号用于指示激活通路的工作状态是否正常:
[0037]
车辆端处理模块,用于当根据所述状态指示信号判断所述激活通路的工作状态为正常状态时,则根据接收到的外部设备通过所述激活通路发送的控制信号,控制所述网络诊断功能的状态;以及当根据所述状态指示信号判断所述激活通路的工作状态为异常状态时,则根据接收到的所述外部设备通过控制器局域网络can发送的激活报文,控制所述网络诊断功能的状态。
[0038]
第四方面,本申请实施例提供一种网络诊断功能的控制装置,所述装置包括:
[0039]
设备端发送模块,用于发送激活通路的状态指示信号;所述状态指示信号用于指示激活通路的工作状态是否正常:
[0040]
设备端处理模块,用于当所述激活通路的工作状态为正常状态时,则通过所述激
活通路向所述ecu发送控制信号;以及当所述激活通路的工作状态为异常状态时,则通过can向所述ecu发送激活报文;
[0041]
其中,所述控制信号用于控制所述网络诊断功能的状态,所述激活报文用于控制所述网络诊断功能的状态。
[0042]
第五方面,本申请实施例提供一种网络诊断功能的控制系统,包括ecu和外部设备,所述ecu和所述外部设备通信连接;
[0043]
所述ecu用于执行上述第一方面的实施例所述的方法,所述外部设备用于执行上述第二方面实施例所述的方法。
[0044]
第六方面,本申请实施例提供一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现以下步骤:
[0045]
接收所述激活通路的状态指示信号;所述状态指示信号用于指示所述激活通路的工作状态是否正常;
[0046]
若所述激活通路的工作状态为正常状态,则根据外部设备通过所述激活通路发送的控制信号控制所述网络诊断功能的状态;
[0047]
若所述激活通路的工作状态为异常状态,则根据所述外部设备通过can发送的激活报文控制所述网络诊断功能的状态。
[0048]
第七方面,本申请实施例提供一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现以下步骤:
[0049]
发送激活通路的状态指示信号;所述状态指示信号用于指示所述激活通路的工作状态是否正常;
[0050]
若所述激活通路的工作状态为正常状态,则通过所述激活通路向所述电子控制单元ecu发送控制信号,所述控制信号用于控制所述网络诊断功能的状态;
[0051]
若所述激活通路的工作状态为异常状态,则通过can向所述ecu发送激活报文,所述激活报文用于控制所述网络诊断功能的状态。
[0052]
第八方面,本申请实施例提供一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现以下步骤:
[0053]
接收所述激活通路的状态指示信号;所述状态指示信号用于指示所述激活通路的工作状态是否正常;
[0054]
若所述激活通路的工作状态为正常状态,则根据外部设备通过所述激活通路发送的控制信号控制所述网络诊断功能的状态;
[0055]
若所述激活通路的工作状态为异常状态,则根据所述外部设备通过can发送的激活报文控制所述网络诊断功能的状态。
[0056]
第九方面,本申请实施例提供一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现以下步骤:
[0057]
发送激活通路的状态指示信号;所述状态指示信号用于指示所述激活通路的工作状态是否正常;
[0058]
若所述激活通路的工作状态为正常状态,则通过所述激活通路向所述电子控制单元ecu发送控制信号,所述控制信号用于控制所述网络诊断功能的状态;
[0059]
若所述激活通路的工作状态为异常状态,则通过can向所述ecu发送激活报文,所
述激活报文用于控制所述网络诊断功能的状态。
[0060]
上述网络诊断功能的控制方法、装置、系统、计算机设备和存储介质,通过ecu能够接收激活通路的状态指示信号,并且在激活通路的工作状态为正常状态的时候,根据外部设备通过激活通路所发送的控制信号来控制网络诊断功能的状态,以及在激活通路的工作状态为异常状态的情况下,根据外部设备通过can所发送的激活报文来控制网络诊断功能的状态,从而实现根据需要控制网络诊断功能的开关。采用该方法,避免了传统技术仅能使用在具有激活线的电路中所导致的应用场景单一的问题。由于ecu能够在激活通路的工作状态为正常状态的时候,根据外部设备通过激活通路所发送的控制信号来控制网络诊断功能的状态,以及在激活通路的工作状态为异常状态的情况下,根据外部设备通过can所发送的激活报文来控制网络诊断功能的状态,从而使得网络功能诊断功能的控制不局限于单独一种电路中,能够根据电路和网络的设置进行灵活选择,进而使得其适用范围更广,应用场景更为灵活和丰富。
附图说明
[0061]
图1为一个实施例中网络诊断功能的控制系统的架构图;
[0062]
图2为一个实施例提供的网络诊断功能的控制系统的等效电路图;
[0063]
图3为一个实施例提供的计算机设备的内部结构图;
[0064]
图4为一个实施例提供的网络诊断功能的控制方法的流程示意图;
[0065]
图5为一个实施例提供的车辆与外部设备实现网络诊断功能的控制方法时的连接示意图;
[0066]
图6为一个实施例提供的obd接口的管脚定义示意图;
[0067]
图7为又一个实施例提供的obd接口的管脚定义示意图;
[0068]
图8为另一个实施例提供的网络诊断功能的控制方法的流程示意图;
[0069]
图9为一个实施例提供的网络诊断功能的控制方法的交互示意图;
[0070]
图10为又一个实施例提供的网络诊断功能的控制方法的流程示意图;
[0071]
图11为又一个实施例提供的网络诊断功能的控制方法的流程示意图;
[0072]
图12为一个实施例提供的网络诊断功能的控制装置的结构示意图;
[0073]
图13为又一个实施例提供的网络诊断功能的控制装置的结构示意图。
具体实施方式
[0074]
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
[0075]
本申请实施例提供的网络诊断功能的控制方法,可以适用于图1所示的网络诊断功能的控制系统,如图1所示,该系统包括车辆100和外部设备200,其中车辆100中包括若干个ecu110,图1中的ecu个数仅为一种示例,其并不会对该系统造成限定。该系统的等效电路图可以参见图2所示,车辆110和外部设备200之间采用以太网进行通信。可选地,上述ecu110和外部设备200可以分别作为计算机设备或者计算机设备的一部分。该计算机设备的内部结构图可以参见图3所示,包括通过系统总线连接的处理器、存储器、网络接口、显示
屏和输入装置。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统、计算机程序和数据库。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的网络接口可以用于与外部的其他设备通过网络连接通信。可选的,该计算机设备可以是服务器,可以是台式机,可以是个人数字助理,还可以是其他的终端设备,例如平板电脑、手机等等,还可以是云端或者远程服务器,本申请实施例对计算机设备的具体形式并不做限定。该计算机设备的显示屏可以是液晶显示屏或者电子墨水显示屏,该计算机设备的输入装置可以是显示屏上覆盖的触摸层,也可以是计算机设备外壳上设置的按键、轨迹球或触控板,还可以是外接的键盘、触控板或鼠标等。当然,输入装置和显示屏也可以不属于计算机设备的一部分,可以是计算机设备的外接设备。
[0076]
本领域技术人员可以理解,图1-图3中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
[0077]
为了更好的理解本发明的方案,在此首先对其与现有技术的区别进行概念的说明。现有技术即传统的做法是按照iso 13400使用激活线进行唤醒。现有技术中需要激活线的原因在于:以太网目前不具备唤醒功能,而在车辆处于睡眠状态时,具备doip诊断功能的设备无法激活车辆,从而不能进行诊断;但是,若车内ecu的以太网通讯模块一直处于开启状态,则可能引发电磁兼容问题,并且带来功耗较高的问题;所以,需要使用一根单独的激活线,用于控制车辆内部ecu(诊断功能的ecu)的以太网通讯模块的开启和关闭。现有技术中,外部诊断设备需要重新开发才能适应上述的传统的激活方法。
[0078]
而本发明采用的方案是:1)、若诊断ecu端具备通过激活线唤醒ecu并激活诊断功能的能力,则诊断设备可以通过该线进行唤醒并激活车内ecu的诊断功能。2)、若诊断ecu端具备通过激活线唤醒ecu并激活诊断功能的能力,但诊断设备不具备通过该线激活的能力,则诊断设备需要通过can进行激活。3)、若诊断ecu端没有激活线,则无论诊断设备端是否具备通过激活线激活车内ecu诊断功能的能力,诊断设备都需要通过can报文进行激活。
[0079]
采用本发明方案丰富了应用场景。使得新旧设备都能使用。即具备激活线或不具备激活线,只需要修改软件流程,都能使用。
[0080]
下面以具体的实施例对本申请的技术方案以及本申请的技术方案如何解决上述技术问题进行详细说明。下面这几个具体的实施例可以相互结合,对于相同或相似的概念或过程可能在某些实施例中不再赘述。下面将结合附图,对本申请的实施例进行描述。
[0081]
需要说明的是,下述方法实施例的执行主体可以是网络诊断功能的控制装置,该装置可以通过软件、硬件或者软硬件结合的方式实现成为外部设备或车辆的部分或者全部。下述方法实施例分别以执行主体为外部设备和车辆的ecu为例进行说明。
[0082]
图4为一个实施例提供的网络诊断功能的控制方法的流程示意图。本实施例涉及的是ecu根据激活通路的工作状态对网络诊断功能进行控制的具体过程。如图4所示,该方法可以包括:
[0083]
s101、接收激活通路的状态指示信号;所述状态指示信号用于指示激活通路的工作状态是否正常。
[0084]
具体的,ecu接收外部设备发送的激活通路的状态指示信号,该状态指示信号能够表征ecu和外部设备之间的激活通路的工作状态是否正常,包括激活通路的硬件通路是否连通,以及激活通路的驱动功能是否开启。可选地,该状态指示信号的获取方式可以是外部设备通过激活通路向ecu发送通信请求,当激活通路连通且激活通路的驱动功能开启时,ecu可以接收到外部设备发送的通信请求,然后通过ecu和外部设备之间的通信链路,向外部设备进行响应,例如返回激活通路的状态指示信号,因此外部设备就能够确定激活通路的工作状态为正常状态。当激活通路没有连通,或者激活通路的驱动功能未被开启时,外部设备通过激活通路向ecu发送的通信请求则无法到达ecu,因此外部设备也就无法接收到ecu的响应,此时外部设备在一段预设的时间内未能接收到ecu的响应时,则确定激活通路的工作状态为异常状态。外部设备基于其所确定的激活通路的工作状态,生成状态指示信号并发送至ecu,以使得ecu接收到该状态指示信号,并获知激活通路的工作状态并不正常。可选地,该激活通路可以为通常电路中所使用的激活信号线(activation line)。当外部设备需要对车辆进行诊断时,与车辆的ecu进行通信连接,可以向ecu发送上述状态指示信号。
[0085]
s102a、若根据所述状态指示信号判断所述激活通路的工作状态为正常状态,则根据接收到的外部设备通过所述激活通路发送的控制信号,控制所述网络诊断功能的状态。
[0086]
具体的,当ecu接收到状态指示信号,并判断上述激活通路的工作状态为正常状态的时候,即激活通路的通路连通以及激活通路的驱动功能开启,此时ecu根据外部设备通过激活通路发送的控制信号,来对网络诊断功能的状态进行控制。可选地,该控制信号可以为控制电压,也可以为控制电流,其可以为脉冲信号,也可以为直流信号,对此本实施例不做限定,只要是能够分别控制网络诊断功能的不同状态即可。
[0087]
s102b、若根据所述状态指示信号判断所述激活通路的工作状态为异常状态,则根据接收到的所述外部设备通过can发送的激活报文,控制所述网络诊断功能的状态。
[0088]
具体的,当ecu接收到状态指示信号,并判断上述激活通路的工作状态为异常状态,即激活通路的通路不连通,或者激活通路的驱动功能未开启,此时ecu无法通过该激活通路接收控制信号,则可以通过can接收外部设备发送的报文。当该报文为激活报文的时候,ecu就可以基于该激活报文,控制网络诊断功能的状态。例如,其可以通过激活报文中携带的信息确定是否需要开启或者关闭网络诊断功能。
[0089]
可选地,该方法所应用的连接示意图可以参见图5所示,需要说明的是,图5中的连接线为obd连接线仅为一种示例,其并不对本申请造成限定。
[0090]
本实施例中,ecu能够接收激活通路的状态指示信号,并且根据状态指示信号判断激活通路的工作状态为正常状态的时候,根据接收到的外部设备通过激活通路所发送的控制信号来控制网络诊断功能的状态,以及判断激活通路的工作状态为异常状态的情况下,根据接收到的外部设备通过can所发送的激活报文来控制网络诊断功能的状态,从而实现根据需要控制网络诊断功能的开关。采用该方法,避免了传统技术仅能使用在具有激活线的电路中所导致的应用场景单一的问题。由于ecu能够在激活通路的工作状态为正常状态的时候,根据外部设备通过激活通路所发送的控制信号来控制网络诊断功能的状态,以及在激活通路的工作状态为异常状态的情况下,根据外部设备通过can所发送的激活报文来控制网络诊断功能的状态,从而使得网络功能诊断功能的控制不局限于单独一种电路中,能够根据电路和网络的设置进行灵活选择,进而使得其适用范围更广,应用场景更为灵活
和丰富。
[0091]
需要说明的是,车辆的ecu和外部设备之间的以太网连接通过预设的车载诊断系统(on-board diagnostic,简称obd)接口进行通信,其可以按照iso13400中定义的两种类型的接口进行通信,具体可以参见图6或图7所示。图6中的管脚3、11、12、13为以太网连接管脚,图7中的管脚1、9、12、13为以太网连接管脚。
[0092]
可选地,上述控制信号可以包括控制电压,此时,上述s102a中“根据接收到的外部设备通过所述激活通路发送的控制信号,控制所述网络诊断功能的状态”,可以包括:当所述控制电压高于或等于预设的激活阈值时,则开启所述网络诊断功能;当所述控制电压低于所述激活阈值时,则关闭所述网络诊断功能。
[0093]
具体的,当外部设备通过激活通路发送的控制电压高于或者等于预设的激活阈值时,则认为此时需要对车辆进行诊断,因此ecu开启网络诊断功能,当外部设备通过激活通路所发送的控制电压低于上述激活阈值的时候,则认为此时不需要对车辆进行诊断,因此ecu关闭网络诊断功能。需要说明的是,上述激活阈值可以为一个电压值,例如5v,即当上述控制电压大于等于5v时,如为5v时,ecu开启网络诊断功能;当控制电压小于5v时,如为0.5v时,ecu关闭网络诊断功能。可选地,当上述控制信号为控制电流的时候,上述激活阈值可以为一个具体的电流值,对此本实施例并不做具体限定。
[0094]
在一个实施例中,通过激活通路对网络诊断功能进行激活的连接示意图可以参见图8所示,图8中以网络诊断方式为doip诊断为例示出。
[0095]
本实施例中,ecu能够在控制电压高于或等于预设的激活阈值的时候,开启网络诊断功能,并且在控制电压低于激活阈值的时候,关闭网络诊断功能,从而实现根据控制电压与激活阈值的大小关系对网络诊断功能进行开关控制,该方法能够使得网络诊断功能的开关状态控制得更为精准,进一步使得车辆的电源分配更为精准和合理,提高了资源利用率。
[0096]
可选地,上述s102b中“根据接收到的所述外部设备通过can发送的激活报文,控制所述网络诊断功能的状态”还可以如图9所示,包括:
[0097]
s201、获取所述外部设备通过所述can发送的所述激活报文;所述激活报文中携带所述外部设备的设备信息。
[0098]
具体的,ecu能够通过can接收外部设备所发送的报文,该报文可以为激活报文,该激活报文中可以携带外部设备的设备信息。可选地,该设备信息可以包括但不限于外部设备的种类,型号,厂家、所支持的插件以及特定的标识中的至少一个。
[0099]
s202、根据所述设备信息判断所述外部设备是否为诊断设备;若是,则执行s203a;可选地,若否,则或s203b。
[0100]
具体的,ecu能够通过接收到的激活报文中所携带的设备信息,判断该外部设备是否为诊断设备。例如,设备信息包括外部设备的种类的时候,ecu可以在其预先设置的诊断设备种类列表中查询,并根据查询结果判断其是否为诊断设备的类型。当上述种类别表中存在这个外部设备的种类时,则确定该外部设备为诊断设备,当种类列表中不存在这个外部设备的种类时,则确定该外部设备并非诊断设备;当设备信息包括外部设备的型号时,ecu也可以通过在预先设置的诊断设备的型号列表中查询,并根据查询结果判断其是否为诊断设备的型号,当上述型号列表中存在这个外部设备的型号时,则确定其为诊断设备,当型号列表中不存在这个外部设备的种类时,则确定其并非诊断设备。当然,ecu还可以通过
其他设备信息对外部设备是否为诊断设备进行判断,对此本实施例并不做限定。
[0101]
s203a、向所述外部设备返回激活应答报文,并开启所述网络诊断功能。
[0102]
s203b、关闭所述网络诊断功能。
[0103]
具体的,当上述外部设备为诊断设备,此时ecu认为可以开始进行车辆的诊断,因此开启网络诊断功能,并同时向外部设备发送激活应答报文以知会外部设备可以开始进行诊断。可选地,当上述外部设备不是诊断设备的时候,此时无法实现网络诊断功能,因此,ecu关闭网络诊断功能,从而减少功耗和避免产生不必要的电磁干扰。
[0104]
在一个实施例中,通过can对网络诊断功能进行控制的交互示意图可以参见图9所示。
[0105]
本实施例中,ecu获取外部设备通过can所发送的激活报文,由于激活报文中携带外部设备的设备信息,因此ecu能够根据设备信息判断出外部设备是否为诊断设备,当外部设备为诊断设备的时候,ecu确定此时需要进行车辆的诊断,因此向外部设备返回激活应答报文,同时开启网络诊断功能以实现车辆的诊断;可选地,当外部设备不是诊断设备的时候,ecu确定此时并非是需要进行车辆的诊断,因此关闭网络诊断功能,采用该方法,ecu能够根据激活报文所携带的设备信息,对此时是否需要执行车辆诊断进行判断,进而使得网络诊断功能的状态的控制更为合理和准确。
[0106]
可选地,在上述实施例的基础上,当网络诊断功能为开启状态的时候,ecu接收到网络诊断功能的关闭指令时,并基于该关闭指令,ecu关闭网络诊断功能。具体的,当网络诊断功能为开启的状态时,如果存在需要关闭该网络诊断功能的情况,例如诊断完成,此时ecu可以接收其他设备发送的关闭指令,并基于该关闭指令,关闭网络诊断功能。本实施例中,在网络诊断功能未开启状态的时候,ecu通过接收到的关闭指令对网络诊断功能进行关闭,从而能够在无需进行网络诊断的情况下,及时且合理的关闭网络诊断功能,进而尽可能的降低了车辆的功耗,以及尽可能的减少了电磁干扰。
[0107]
可选地,上述关闭指令可以包括外部设备发送的关闭报文、预设的时段内无报文的空闲信号和网络下线信号中的任意一个。当关闭指令为外部设备发送的关闭报文时,其可以为当外部设备完成了车辆的诊断或者外部设备此时发生异常无法继续工作时,因此通过向ecu发送关闭报文,从而关闭网络诊断功能;当关闭指令为空闲信号时,即预设的时段内未接收到外部设备发送的报文,其状态为空闲状态,则ecu生成空闲信号,则可以基于该控线信号关闭网络诊断功能;当关闭指令为网络下线时,即ecu接收到以太网检测的link down信号时,则认为此时ecu无需与外部设备通过以太网进行通信,因此无需检测,进而关闭网络诊断功能。采用上述外部设备发送的关闭报文、控线信号和网络下线信号中的任意一个作为关闭指令,其能够实现多场景下对网络诊断功能的开关需求,从而能够在多种无需进行网络诊断的情况下,及时且合理的关闭网络诊断功能,进而尽可能的降低了车辆的功耗,以及尽可能的减少了电磁干扰。
[0108]
上述实施例以车辆端的ecu作为执行主体对本申请的发明构思进行了说明,下面将以外部设备作为执行主体对本申请的发明构思进行说明。
[0109]
图10为又一个实施例提供的网络诊断功能的控制方法地流程示意图。本实施例涉及的是外部设备根据激活通路的工作状态向ecu发送信号,以控制网络诊断功能的具体过程。如图10所示,该方法可以包括:
[0110]
s301、发送激活通路的状态指示信号;所述状态指示信号用于指示激活通路的工作状态是否正常;
[0111]
s302a、若所述激活信号通路为正常状态,则通过所述激活通路向所述电子控制单元ecu发送控制信号,所述控制信号用于控制所述网络诊断功能的状态;
[0112]
s302b、若所述激活信号通路为异常状态,则通过控制器局域网络can向所述ecu发送激活报文,所述激活报文用于控制所述网络诊断功能的状态。
[0113]
本实施例中的技术细节和有益效果可以参见前述图8所示的实施例中的具体描述,此处不再赘述。
[0114]
可选地,控制信号可以包括控制电压;上述实施例中的s302a中“通过所述激活通路向所述电子控制单元ecu发送控制信号”,可以包括:通过所述激活通路向所述ecu发送控制电压;当所述控制电压高于或等于预设的激活阈值时,所述控制电压用于开启所述网络诊断功能;当所述控制电压低于所述激活阈值时,所述控制电压用于关闭所述网络诊断功能。本实施例中的技术细节和有益效果可以参见前述ecu根据外部设备通过激活通路发送的控制信号控制所述网络诊断功能的状态中的具体描述,此处不再赘述。
[0115]
上述实施例中的s302b中“通过can向所述ecu发送激活报文”还可以如图11所示,包括:
[0116]
s401、通过所述can向所述ecu循环发送所述激活报文。
[0117]
具体的,外部设备可以通过can向ecu循环发送激活报文,其可以是间隔预设的时间间隔循环发送,本实施例对循环发送的时间间隔不做限定。可选地,激活报文中可以携带外部设备的设备信息,该设备信息用于判断外部设备是否为诊断设备,其详细描述可以参见前文所述。
[0118]
s402、若循环次数小于或等于预设的次数阈值,且接收到所述ecu返回的激活应答报文,则所述激活报文用于开启所述网络诊断功能;若所述循环次数大于所述次数阈值,或者未接收到所述激活应答报文,则所述激活报文用于关闭所述网络诊断功能。
[0119]
具体的,外部设备会对发送激活报文的循环次数进行统计,如果循环次数小于或者等于预设的次数阈值,例如次数阈值可以设置为3次,则ecu向外部设备返回激活应答报文,并开启网络诊断功能。如果循环次数大于上述次数阈值,则有可能存在ecu未准备就绪的情况,其无法在正常的周期内向外部设备返回激活应答报文,因此基于上述循环次数大于预设次数阈值的激活报文,ecu关闭网络诊断功能。
[0120]
本实施例中,外部设备能够通过can向ecu循环发送激活报文,并且在循环次数小于或等于预设的次数阈值的时候,ecu开启网络诊断功能并向外部设备返回激活应答报文以知会外部设备其状态准备就绪,能够进行诊断。当循环次数大于次数阈值的时候,可能存在ecu状态未准备就绪的情况,其无法在正常的周期内向外部设备返回激活应答报文,因此基于上述循环次数大于次数阈值的激活报文,ecu关闭网络诊断功能。采用该方法,外部设备能够通过can向ecu发送激活报文,使得ecu依据该激活报文的循环次数与次数阈值之间的大小关系确定当前是否准备就绪能够进行诊断,从而合理地控制网络诊断功能的状态,进而提高了资源分配的合理性和资源利用率。
[0121]
可选地,在上述各个实施例的基础上,所述方法还可以包括:通过所述can向所述ecu发送关闭报文,所述关闭报文用于关闭所述网络诊断功能。具体的,外部设备还可以通
过can向ecu发送关闭报文,当ecu接收到关闭报文的时候,可以确认是外部设备停止诊断,例如已经诊断完成,则ecu关闭网络诊断功能。从而实现基于外部设备的关闭报文关闭网络诊断功能,进一步提高了资源分配的合理性和资源利用率。、
[0122]
应该理解的是,虽然图8-11的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,图8-11中的至少一部分步骤可以包括多个子步骤或者多个阶段,这些子步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些子步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤的子步骤或者阶段的至少一部分轮流或者交替地执行。
[0123]
在一个实施例中,如图12所示,提供了一种网络诊断功能的控制装置,该装置设置在车辆端,包括:
[0124]
车辆端接收模块300,用于接收激活通路的状态指示信号;所述状态指示信号用于指示激活通路的工作状态是否正常:
[0125]
车辆端处理模块400,用于当根据所述状态指示信号判断所述激活通路的工作状态为正常状态时,则根据接收到的外部设备通过所述激活通路发送的控制信号,控制所述网络诊断功能的状态;以及当根据所述状态指示信号判断所述激活通路的工作状态为异常状态时,则根据接收到的所述外部设备通过控制器局域网络can发送的激活报文,控制所述网络诊断功能的状态。
[0126]
在一个实施例中,所述控制信号包括控制电压;车辆端处理模块400,具体可以用于在所述控制电压高于或等于预设的激活阈值时,则开启所述网络诊断功能;以及在所述控制电压低于所述激活阈值时,则关闭所述网络诊断功能。
[0127]
在一个实施例中,车辆端处理模块400,具体可以用于获取所述外部设备通过所述can发送的所述激活报文;所述激活报文中携带所述外部设备的设备信息;根据所述设备信息判断所述外部设备是否为诊断设备;若是,则向所述外部设备返回激活应答报文,并开启所述网络诊断功能;若否,则关闭所述网络诊断功能。
[0128]
在一个实施例中,当所述网络诊断功能为开启状态时,车辆端处理模块400,具体可以用于当接收到所述网络诊断功能的关闭指令时,关闭所述网络诊断功能。
[0129]
在一个实施例中,所述关闭指令包括:所述外部设备发送的关闭报文、预设的时段内无报文的空闲信号和网络下线信号中的任意一个。
[0130]
在一个实施例中,如图13所示,提供了一种网络诊断功能的控制装置,该装置设置在外部设备端,包括:
[0131]
设备端发送模块500,用于发送激活通路的状态指示信号;所述状态指示信号用于指示所述激活通路的工作状态是否正常:
[0132]
设备端处理模块600,用于当所述激活信号通路为正常状态时,则通过所述激活通路向所述电子控制单元ecu发送控制信号;以及当所述激活信号通路为异常状态时,则通过控制器局域网络can向所述ecu发送激活报文;
[0133]
其中,所述控制信号用于控制所述网络诊断功能的状态,所述激活报文用于控制所述网络诊断功能的状态。
[0134]
在一个实施例中,所述控制信号包括控制电压;设备端处理模块600,具体可以用于通过所述激活通路向所述ecu发送控制电压;当所述控制电压高于或等于预设的激活阈值时,所述控制电压用于开启所述网络诊断功能;当所述控制电压低于所述激活阈值时,所述控制电压用于关闭所述网络诊断功能;
[0135]
在一个实施例中,设备端处理模块600,具体可以用于通过所述can向所述ecu循环发送所述激活报文;若循环次数小于或等于预设的次数阈值,且接收到所述ecu返回的激活应答报文,则所述激活报文用于开启所述网络诊断功能;所述循环次数大于所述次数阈值,或者未接收到所述激活应答报文,则所述激活报文用于关闭所述网络诊断功能。
[0136]
关于网络诊断功能的控制装置的具体限定可以参见上文中对于网络诊断功能的控制方法的限定,在此不再赘述。上述网络诊断功能的控制装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
[0137]
在一个实施例中,还提供了一个网络诊断功能的控制系统,参见如图1所示,包括ecu110和外部设备200,所述ecu和外部设备通信连接;所述ecu用于执行上述实施例中ecu控制网络诊断功能状态的方法,所述外部设备用于执行上述实施例中外部设备向ecu发送控制信号或者激活报文,以控制网络诊断功能状态的方法。
[0138]
在一个实施例中,提供了一种计算机设备,包括存储器和处理器,存储器中存储有计算机程序,该处理器执行计算机程序时实现以下步骤:接收激活通路的状态指示信号;所述状态指示信号用于指示激活通路的工作状态是否正常;若根据所述状态指示信号判断所述激活通路的工作状态为正常状态,则根据接收到的外部设备通过所述激活通路发送的控制信号,控制所述网络诊断功能的状态;若根据所述状态指示信号判断所述激活通路的工作状态为异常状态,则根据接收到的所述外部设备通过控制器局域网络can发送的激活报文,控制所述网络诊断功能的状态。
[0139]
在一个实施例中,所述控制信号包括控制电压;处理器执行计算机程序时还实现以下步骤:当所述控制电压高于或等于预设的激活阈值时,则开启所述网络诊断功能;当所述控制电压低于所述激活阈值时,则关闭所述网络诊断功能。
[0140]
在一个实施例中,处理器执行计算机程序时还实现以下步骤:获取所述外部设备通过所述can发送的所述激活报文;所述激活报文中携带所述外部设备的设备信息;根据所述设备信息判断所述外部设备是否为诊断设备;若是,则向所述外部设备返回激活应答报文,并开启所述网络诊断功能;若否,则关闭所述网络诊断功能。
[0141]
在一个实施例中,当所述网络诊断功能为开启状态时,处理器执行计算机程序时还实现以下步骤:当接收到所述网络诊断功能的关闭指令时,关闭所述网络诊断功能。
[0142]
在一个实施例中,所述关闭指令包括:所述外部设备发送的关闭报文、预设的时段内无报文的控线信号和网络下线信号中的任意一个。
[0143]
应当清楚的是,本申请实施例中处理器执行计算机程序的过程,与上述方法中各个步骤的执行过程一致,具体可参见上文中的描述。
[0144]
在一个实施例中,提供了一种计算机设备,包括存储器和处理器,存储器中存储有计算机程序,该处理器执行计算机程序时实现以下步骤:发送激活通路的状态指示信号;所
述状态指示信号用于指示激活通路的工作状态是否正常;若所述激活通路的工作状态为正常状态,则通过所述激活通路向所述电子控制单元ecu发送控制信号,所述控制信号用于控制所述网络诊断功能的状态;若所述激活通路的工作状态为异常状态,则通过控制器局域网络can向所述ecu发送激活报文,所述激活报文用于控制所述网络诊断功能的状态。
[0145]
在一个实施例中,所述控制信号包括控制电压;处理器执行计算机程序时还实现以下步骤:通过所述激活通路向所述ecu发送控制电压;当所述控制电压高于或等于预设的激活阈值时,所述控制电压用于开启所述网络诊断功能;当所述控制电压低于所述激活阈值时,所述控制电压用于关闭所述网络诊断功能;
[0146]
在一个实施例中,处理器执行计算机程序时还实现以下步骤:通过所述can向所述ecu循环发送所述激活报文;若循环次数小于或等于预设的次数阈值,且接收到所述ecu返回的激活应答报文,则所述激活报文用于开启所述网络诊断功能;若所述循环次数大于所述次数阈值,或者未接收到所述激活应答报文,则所述激活报文用于关闭所述网络诊断功能。
[0147]
在一个实施例中,当所述网络诊断功能为开启状态时,处理器执行计算机程序时还实现以下步骤:通过所述can向所述ecu发送关闭报文,所述关闭报文用于关闭所述网络诊断功能。
[0148]
应当清楚的是,本申请实施例中处理器执行计算机程序的过程,与上述方法中各个步骤的执行过程一致,具体可参见上文中的描述。
[0149]
在一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现以下步骤:接收激活通路的状态指示信号;所述状态指示信号用于指示激活通路的工作状态是否正常;若根据所述状态指示信号判断所述激活通路的工作状态为正常状态,则根据接收到的外部设备通过所述激活通路发送的控制信号,控制所述网络诊断功能的状态;若根据所述状态指示信号判断所述激活通路的工作状态为异常状态,则根据接收到的所述外部设备通过控制器局域网络can发送的激活报文,控制所述网络诊断功能的状态。
[0150]
在一个实施例中,所述控制信号包括控制电压;计算机程序被处理器执行时还实现以下步骤:当所述控制电压高于或等于预设的激活阈值时,则开启所述网络诊断功能;当所述控制电压低于所述激活阈值时,则关闭所述网络诊断功能。
[0151]
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:获取所述外部设备通过所述can发送的所述激活报文;所述激活报文中携带所述外部设备的设备信息;根据所述设备信息判断所述外部设备是否为诊断设备;若是,则向所述外部设备返回激活应答报文,并开启所述网络诊断功能;若否,则关闭所述网络诊断功能。
[0152]
在一个实施例中,当所述网络诊断功能为开启状态时,计算机程序被处理器执行时还实现以下步骤:当接收到所述网络诊断功能的关闭指令时,关闭所述网络诊断功能。
[0153]
在一个实施例中,所述关闭指令包括:所述外部设备发送的关闭报文、预设的时段内无报文的空闲和网络下线信号中的任意一个。
[0154]
应当清楚的是,本申请实施例中处理器执行计算机程序的过程,与上述方法中各个步骤的执行过程一致,具体可参见上文中的描述。
[0155]
在一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,计算
机程序被处理器执行时实现以下步骤:发送激活通路的状态指示信号;所述状态指示信号用于指示激活通路的工作状态是否正常;若所述激活通路的工作状态为正常状态,则通过所述激活通路向所述电子控制单元ecu发送控制信号,所述控制信号用于控制所述网络诊断功能的状态;若所述激活通路的工作状态为异常状态,则通过can向所述ecu发送激活报文,所述激活报文用于控制所述网络诊断功能的状态。
[0156]
在一个实施例中,所述控制信号包括控制电压;计算机程序被处理器执行时还实现以下步骤:通过所述激活通路向所述ecu发送控制电压;当所述控制电压高于或等于预设的激活阈值时,所述控制电压用于开启所述网络诊断功能;当所述控制电压低于所述激活阈值时,所述控制电压用于关闭所述网络诊断功能;
[0157]
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:通过所述can向所述ecu循环发送所述激活报文;若循环次数小于或等于预设的次数阈值,且接收到所述ecu返回的激活应答报文,则所述激活报文用于开启所述网络诊断功能;若所述循环次数大于所述次数阈值,或者未接收到所述激活应答报文,则所述激活报文用于关闭所述网络诊断功能。
[0158]
在一个实施例中,当所述网络诊断功能为开启状态时,计算机程序被处理器执行时还实现以下步骤:通过所述can向所述ecu发送关闭报文,所述关闭报文用于关闭所述网络诊断功能。
[0159]
应当清楚的是,本申请实施例中处理器执行计算机程序的过程,与上述方法中各个步骤的执行过程一致,具体可参见上文中的描述。
[0160]
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可包括只读存储器(rom)、可编程rom(prom)、电可编程rom(eprom)、电可擦除可编程rom(eeprom)或闪存。易失性存储器可包括随机存取存储器(ram)或者外部高速缓冲存储器。作为说明而非局限,ram以多种形式可得,诸如静态ram(sram)、动态ram(dram)、同步dram(sdram)、双数据率sdram(ddrsdram)、增强型sdram(esdram)、同步链路(synchlink)dram(sldram)、存储器总线(rambus)直接ram(rdram)、直接存储器总线动态ram(drdram)、以及存储器总线动态ram(rdram)等。
[0161]
以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
[0162]
以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请专利的保护范围应以所附权利要求为准。
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1