用于can通信的错误诊断的方法

文档序号:7793954阅读:301来源:国知局
用于can通信的错误诊断的方法
【专利摘要】公开了一种用于CAN通信的错误诊断的方法。在该方法中,将存储在主电子控制设备和副电子控制设备中的滚动计数器值相互比较。当滚动计数器差值在预定的错误诊断保留范围内时,保留对于对应CAN通信的错误诊断的确定。当由于滚动计数器差值偏离了错误诊断保留范围而使错误诊断的累积数量达到用于错误诊断确定的预定数量时,确定CAN通信的错误发生。当主电子控制设备和副电子控制设备的滚动计数器值相互匹配时,确定用于CAN通信的错误诊断是正常的,在此情况下,即使在CAN通信中发生了暂时的信号延迟现象(即抖动),也能够有效地中断对于CAN通信的错误的有误诊断。
【专利说明】用于CAN通信的错误诊断的方法

【技术领域】
[0001]本公开涉及一种用于CAN通信的错误诊断的方法,并且更特别地,涉及一种方法,其中防止将暂时的信号延迟误判为CAN通信错误,该暂时的信号延迟能够发生于接收数据的主电子控制设备和传输数据的副电子控制设备之间的CAN通信中。

【背景技术】
[0002]如本领域中通常所知晓的,车辆中包括了很多电子部件和用于控制电子部件的多个电子控制设备。CAN通信主要用于在电子控制设备之间交换数据。
[0003]通过CAN通信传送的数据对应于在车辆操作中使用的数据,并且在车辆的安全操作中是重要的。相应地,有必要诊断是否发生了对于通过CAN通信传送的数据的错误。
[0004]根据相关领域,滚动计数器被安装在通过CAN通信接收数据的主电子控制设备(例如,引擎控制单元(EOT))和通过CAN通信传输数据的副电子控制设备(例如,传输控制单元CTCU))中,并且无论何时执行CAN通信,执行CAN通信的主电子控制设备和副电子控制设备的计数器将滚动计数器值增加值1。
[0005]在相关领域中,主电子控制设备和副电子控制设备的滚动计数器检验每个CAN通信中所累积的计数器值是否相互匹配,并且当通过检验结果识别出计数器值相互匹配时,确定CAN通信被正常地执行。
[0006]另一方面,当通过检验结果识别出计数器值不相互匹配时,确定在CAN通信中已经发生了错误。
[0007]在这种情况下,当确定在CAN通信中已经发生了错误时,用于经受确定的CAN消息的数据不是有效的,并且其存在不是安全的。
[0008]而且,暂时的信号延迟现象(例如,抖动)可能发生在CAN通信中,在这种情况下,当暂时的信号延迟现象(例如,抖动)发生时,即使CAN通信在车辆中的电子控制设备之间被正常地执行,也可能确定CAN通信的错误发生。
[0009]也就是说,尽管CAN通信实际上被正常地执行,但是得到的结论是发生了 CAN通信的错误,因而用于正常传送的CAN消息的数据不是有效的。


【发明内容】

[0010]相应地,已经做出本公开以解决发生在现有技术中的以上提及的问题,并且本公开的目的是提供一种用于CAN通信的错误诊断的方法,其中将存储在主电子控制设备和副电子控制设备中的滚动计数器值相互比较,当滚动计数器差值在预定错误诊断保留范围内时,保留对于对应CAN通信的错误诊断的确定,当由于滚动计数器差值偏离了错误诊断保留范围而使错误诊断的累积数量达到用于错误诊断确定的预定数量时,确定CAN通信的错误发生,并且,当主电子控制设备和副电子控制设备的滚动计数器值相互匹配时,确定用于CAN通信的错误诊断是正常的。
[0011]为了达到这一目的,提供一种用于基于主电子控制设备和副电子控制设备之间的滚动计数器差值的CAN通信错误诊断的方法,该方法包括:在错误诊断设备中比较主电子控制设备和副电子控制设备的滚动计数器值;以及通过从比较结果确定滚动计数器差值是否在预定的错误诊断保留范围内,来确定对于CAN消息的错误诊断的继续或者保留。
[0012]优选地,确定继续或者保留包括当滚动计数器差值在预定错误诊断保留范围内时,保留对于CAN消息的错误诊断的确定。
[0013]优选地,该方法进一步包括当滚动计数器差值偏离预定错误诊断保留范围时,增加和累积错误诊断的数量;以及基于错误诊断的累积数量,确定对于CAN消息的错误诊断的继续。
[0014]优选地,该方法进一步包括,当用于CAN通信的错误诊断的累积数量不高于或者等于用于错误诊断决定的预定数量时,将主电子控制设备的滚动计数器值与副电子控制设备的滚动计数器值进行匹配,并且在错误诊断设备中重复执行错误诊断的保留。
[0015]优选地,该方法进一步包括,当用于CAN通信的错误诊断的数量高于或者等于用于错误诊断决定的预定数量时,在错误诊断设备中确定对于CAN通信的错误发生。
[0016]优选地,该方法进一步包括,将主电子控制设备的滚动计数器值与副电子控制设备的滚动计数器值进行匹配,或者将相对方(counterpart)滚动计数器值更新为主电子控制设备和副电子控制设备的滚动计数器值中的任意一个,以及匹配该滚动计数器值。
[0017]根据本公开的实施例,将存储在主电子控制设备和副电子控制设备中的滚动计数器值相互比较,当滚动计数器差值在预定错误诊断保留范围内时,保留对于对应CAN通信的错误诊断的确定,当由于滚动计数器差值偏离错误诊断保留范围而使错误诊断的累积数量达到用于错误诊断确定的预定数量时,确定CAN通信的错误发生,并且,当主电子控制设备和副电子控制设备的滚动计数器值相互匹配时,确定用于CAN通信的错误诊断是正常的,由此,即使在CAN通信中发生了暂时的信号延迟现象(即,抖动),也能够有效地中断对于CAN通信的错误的有误诊断。

【专利附图】

【附图说明】
[0018]本公开的以上或者其他目的、特征及优点将根据结合附图进行的以下详细描述而更加显而易见,其中:
[0019]图1是示出根据本公开的实施例的用于CAN通信的错误诊断的系统的方框图;以及
[0020]图2是示出操作图1中所示的用于CAN通信的错误诊断的系统的过程的流程图。

【具体实施方式】
[0021]下文中,将参照附图更具体地描述根据本公开的实施例的用于CAN通信的错误诊断的系统。在以下描述和附图中,使用相同的附图标记以指代相同或者相似的部件,并且因而将省略对于相同或者相似部件的描述的重复。
[0022]图1是示出根据本公开的实施例的用于CAN通信的错误诊断的系统的方框图。如在图1中仅仅作为示例所示出的,用于CAN通信的错误诊断的系统可以被配置为包括诸如引擎控制单元(ECU)的主电子控制设备100,以及副电子控制设备200,其诸如是被配置为执行与主电子控制设备100的CAN通信以传输相关数据的传输控制单元(TCU)。
[0023]这里,用于CAN通信的错误诊断的错误诊断设备300可以通过主电子控制设备100,或者不同于主电子控制设备100和一个或多个副电子控制设备的单独的设备来实现。
[0024]在图1中示出的实施例中,将描述错误诊断设备300,该错误诊断设备300通过不同于主电子控制设备100和一个或多个副电子控制设备的单独的设备来实现。
[0025]当开始主电子控制设备100和副电子控制设备200之间的CAN通信的错误诊断时,可以向错误诊断设备300提供滚动计数器值,以用于来自主电子控制设备100和副电子控制设备200的对应CAN消息的传输和接收。
[0026]鉴于车辆应当通过在电子控制设备之间通过CAN通信交换相关数据来操作的事实,可以将开始CAN通信的错误诊断的时间点设置为车辆发动的时间点。
[0027]而且,错误诊断设备300被配置为比较从电子控制设备100和200提供的滚动计数器值,以及优选地被配置为当主电子控制设备100和副电子控制设备200的滚动计数器值之间的滚动计数器差值在所比较的结果中处于预定错误诊断保留范围内时,保留对于对应CAN通信的错误诊断的确定。
[0028]用于计数器差值的错误诊断保留范围可以被设置为特定的数值范围(例如,1至3)或者特定的单个数值(例如,1)。
[0029]例如,当将用于计数器差值的错误诊断保留范围设置为特定的单个数值1时,尽管副电子控制设备200应当被配置为在生成特定CAN消息并且向主电子控制设备100传输该特定CAN消息的同时,将用于该特定CAN消息的传输的计数器值增加1,以及主电子控制设备100应当被配置为在接收副电子控制设备200已经传输的特定CAN消息的同时,将用于该特定CAN消息的接收的计数器值增加1,但是,CAN通信的暂时的信号延迟现象(即,抖动)发生,使得副电子控制设备200已经传输的特定CAN消息的接收可能被延迟。
[0030]此时,由于副电子控制设备200已经传输的特定CAN消息的接收被延迟,因此主电子控制设备100未能将用于副电子控制设备200已经传输的特定CAN消息的接收的计数器值增加1。
[0031]也就是说,因为向错误诊断设备300提供用于副电子控制设备200的计数器值1、以及用于主电子控制设备100的计数器值0,所以能够看出当比较计数器值时,计数器差值对应于值1。
[0032]因为在上述的实施例中,已经将用于计数器差值的错误诊断保留范围设置为特定的单个数值1,所以当识别出计数器差值对应于值1时,可以确定计数器差值在错误诊断保留范围内。
[0033]当确定计数器差值在用于对应CAN通信的错误诊断保留范围内时,优选地,错误诊断设备300被配置为将对于对应CAN通信的错误诊断确定保留一次,并且进一步被配置为识别下一 CAN通信,以确定错误诊断。
[0034]这里,当甚至在下一 CAN通信中主电子控制设备100的计数器值和副电子控制设备200的计数器值之间的计数器差值被维持为值1时,错误诊断设备300可以被配置为识别主电子控制设备100的计数器值被正常地增加1,并且识别副电子控制设备200的计数器值也被正常地增加1,以及可以被配置为确定主电子控制设备100和副电子控制设备200之间的对应CAN通信被正常地执行。
[0035]另一方面,当主电子控制设备100的计数器值和副电子控制设备200的计数器值之间的计数器差值未被维持为值1,并且在下一 CAN通信中被增加到值2时,由于计数器差值偏离错误诊断保留范围,错误诊断设备300可以被配置为确定存在错误的可能性。
[0036]此时,在计数器差值偏离错误诊断保留范围的情况下,错误诊断设备300可以被配置为确切地诊断出错误已经发生,并且,在错误诊断设备300想要更准确地执行错误诊断的情况下,无论何时计数器差值偏离错误诊断保留范围,错误诊断设备300另外被配置为对错误诊断的数量进行计数,并且如果错误诊断的数量高于或等于用于错误诊断的确定的预定数量,则错误诊断设备300可以被配置为确定错误已经首次发生。
[0037]而且,当识别出主电子控制设备100的计数器值和副电子控制设备200的计数器值之间的计数器差值高于或等于限制计数器差值时,由此将错误诊断的数量增加1,优选地,错误诊断设备300被配置为匹配主电子控制设备100和副电子控制设备200的计数器值,该主电子控制设备100和副电子控制设备200被配置为执行CAN通信,并且然后连续性地被配置为执行对于下一 CAN通信的错误诊断。
[0038]这里,错误诊断设备300为何已经匹配主电子控制设备100和副电子控制设备200的计数器值的原因是因为对确定值的初始化,该确定值是通过执行先前错误诊断以便偏离其中正在执行错误诊断的确定循环所累积的,更准确地是执行将在下一轮中进行的错误诊断所累积的,其中,该主电子控制设备100和副电子控制设备200被配置为执行CAN通信。
[0039]也就是说,配置为执行CAN通信的主电子控制设备100和副电子控制设备200的滚动计数器值可以被重置以相互匹配,并且,可以将配置为执行CAN通信的主电子控制设备100和副电子控制设备200的滚动计数器值中的任意一个更新为相对方电子控制设备的滚动计数器值以相互匹配。
[0040]图2是示出操作图1中所示的用于CAN通信的错误诊断的系统的过程的流程图。如在图2中仅仅作为示例所示出的,在用于CAN通信的错误诊断的方法中,当在错误诊断设备300被配置为开始CAN通信的错误诊断之后,在主电子控制设备100和副电子控制设备200之间执行CAN通信时,可以向错误诊断设备300提供来自主电子控制设备100的滚动计数器的主电子控制设备100的滚动计数器值,以及可以向错误诊断设备300提供来自副电子控制设备200的滚动计数器的副电子控制设备200的滚动计数器值(S100和S102)。
[0041]在错误诊断设备300被配置为开始CAN通信的错误诊断之后,确定主电子控制设备100和副电子控制设备200之间传送的CAN消息是否对应于第一传送消息(S104)。
[0042]当在步骤S104中确定CAN消息对应于第一传送消息时,因为确信计数器差值在错误诊断保留范围内,因此错误诊断设备300被配置为保留对错误诊断的确定,并且被配置为执行更新以使得主电子控制设备100的滚动计数器值和副电子控制设备200的滚动计数器值被配置为相互匹配为相同值(S106)。
[0043]当在步骤S104中确定CAN消息不对应于第一传送消息时,错误诊断设备300被配置为执行将主电子控制设备100的滚动计数器值与副电子控制设备200的滚动计数器值进行比较的确定过程(S108)。
[0044]当在步骤S108中确定主电子控制设备100的滚动计数器值和副电子控制设备200的滚动计数器值相互匹配时,错误诊断设备300被配置为确定对应的CAN通信被正常地接收(S110)o
[0045]当在步骤S108中确定主电子控制设备100的滚动计数器值和副电子控制设备200的滚动计数器值不相互匹配时,错误诊断设备300被配置为确定计数器差值是否在预定错误诊断保留范围内(S112)。
[0046]当在步骤S112中确定计数器差值在预定错误诊断保留范围内时,错误诊断设备300被配置为保留对于对应CAN通信的错误诊断的确定,并且然后,另外被配置为检查将在下一轮中进行的错误诊断,以确定错误是否发生(S 114)。
[0047]当在步骤S112中确定计数器差值偏离预定的错误诊断保留范围以高于或等于限制计数器差值时,错误诊断设备300被配置为确定存在错误诊断的可能性,将错误诊断的数量增加一次(S116) ο
[0048]此后,优选地确定错误诊断的增加后的数量是否高于或者等于用于错误诊断确定的预定数量(S118)。
[0049]当在步骤S118中确定错误诊断的数量不高于或者等于用于错误诊断决定的预定数量时,因为还没有肯定错误发生,所以当另外执行下一轮错误诊断时,错误诊断设备300被配置为执行更新,使得主电子控制设备100的滚动计数器值和副电子控制设备200的滚动计数器值相互匹配(S120)。
[0050]当在步骤S118中确定错误诊断的数量高于或等于用于错误诊断决定的预定数量时,错误诊断设备300确切地被配置为确定错误已经发生,输出关于这点的错误诊断结果(S122 和 S124)。
[0051]此外,当在步骤S106、步骤S110、步骤S114或者步骤S120之后连续执行CAN通信时,错误诊断设备300被配置为通过将在下一轮执行的用于CAN通信的以上提及的过程来重复执行错误诊断(S126)。
[0052]尽管已经如上所示地描述了本公开的示例性实施例,但是,将理解的是,在不脱离以下权利要求中描述的本公开的精神或者范围的情况下,本公开所属领域的技术人员能够做出各种修改和变化。
[0053]如上所示,在用于CAN通信的错误诊断的方法中,将存储在主电子控制设备和副电子控制设备中的滚动计数器值相互比较,当滚动计数器差值在预定错误诊断保留范围内时,对于对应CAN通信的错误诊断的确定被保留,当由于滚动计数器差值偏离错误诊断保留范围而使错误诊断的累积数量达到用于错误诊断确定的预定数量时,确定CAN通信的错误发生,以及当主电子控制设备和副电子控制设备的滚动计数器值相互匹配时,确定用于CAN通信的错误诊断是正常的,由此,即使在CAN通信中发生了暂时的信号延迟现象(S卩,抖动),也能够有效地中断对于CAN通信的错误的有误诊断。在将用于CAN通信的错误诊断的方法应用于车辆的情况下,在CAN通信的错误诊断方面能够做出非常大的进步,能够存在所应用车辆的市场营销和商业的良好机会,并且该方法实际上能够以巨大的工业可用性来明确地执行。
【权利要求】
1.一种用于基于主电子控制设备和副电子控制设备的滚动计数器值之间的滚动计数器差值的CAN通信的错误诊断的方法,该方法包括: 在错误诊断设备中比较所述主电子控制设备和所述副电子控制设备的滚动计数器值;以及 通过从比较结果确定所述滚动计数器差值是否在预定的错误诊断保留范围内,来确定用于CAN消息的错误诊断的继续或者保留。
2.如权利要求1中要求保护的方法,其中确定所述继续或者保留包括当所述滚动计数器差值在所述预定的错误诊断保留范围内时,保留用于所述CAN消息的错误诊断的确定。
3.如权利要求1或2中要求保护的方法,进一步包括: 当所述滚动计数器差值偏离所述预定的错误诊断保留范围时,增加和累积所述错误诊断的数量;以及 基于所述错误诊断的累积数量,确定用于所述CAN消息的错误诊断的继续。
4.如权利要求3中要求保护的方法,进一步包括: 当用于所述CAN通信的错误诊断的累积数量不高于或者等于用于错误诊断决定的预定数量时,将所述主电子控制设备的滚动计数器值与所述副电子控制设备的滚动计数器值相匹配,并且在所述错误诊断设备中重复执行所述错误诊断的保留。
5.如权利要求3中要求保护的方法,进一步包括: 当用于所述CAN通信的错误诊断的数量高于或者等于用于错误诊断决定的预定数量时,在所述错误诊断设备中确定对于所述CAN通信的错误发生。
6.如权利要求4中要求保护的方法,进一步包括: 将所述主电子控制设备的滚动计数器值与所述副电子控制设备的滚动计数器值相匹配,或者 将相对方滚动计数器值更新为所述主电子控制设备和所述副电子控制设备的滚动计数器值中的任意一个,并且匹配所述滚动计数器值。
【文档编号】H04L12/26GK104509035SQ201380035549
【公开日】2015年4月8日 申请日期:2013年6月27日 优先权日:2012年7月3日
【发明者】金现硕 申请人:大陆汽车有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1