CN114844807B - ***检测方法、装置、设备、存储介质、车辆和云控平台 - Google Patents

***检测方法、装置、设备、存储介质、车辆和云控平台 Download PDF

Info

Publication number
CN114844807B
CN114844807B CN202210323322.4A CN202210323322A CN114844807B CN 114844807 B CN114844807 B CN 114844807B CN 202210323322 A CN202210323322 A CN 202210323322A CN 114844807 B CN114844807 B CN 114844807B
Authority
CN
China
Prior art keywords
frequency
message
control
network
heartbeat
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.)
Active
Application number
CN202210323322.4A
Other languages
English (en)
Other versions
CN114844807A (zh
Inventor
张伍召
陈博恺
殷其娟
杨凯
张磊
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Apollo Intelligent Technology Beijing Co Ltd
Original Assignee
Apollo Intelligent Technology Beijing Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Apollo Intelligent Technology Beijing Co Ltd filed Critical Apollo Intelligent Technology Beijing Co Ltd
Priority to CN202210323322.4A priority Critical patent/CN114844807B/zh
Publication of CN114844807A publication Critical patent/CN114844807A/zh
Application granted granted Critical
Publication of CN114844807B publication Critical patent/CN114844807B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/10Active monitoring, e.g. heartbeat, ping or trace-route
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/22Arrangements for detecting or preventing errors in the information received using redundant apparatus to increase reliability
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/06Management of faults, events, alarms or notifications
    • H04L41/069Management of faults, events, alarms or notifications using logs of notifications; Post-processing of notifications

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Health & Medical Sciences (AREA)
  • Cardiology (AREA)
  • General Health & Medical Sciences (AREA)
  • Hardware Redundancy (AREA)
  • Maintenance And Management Of Digital Transmission (AREA)

Abstract

本公开提供了一种***检测方法、装置、设备、存储介质、车辆和云控平台,涉及人工智能技术领域,尤其涉及自动驾驶、智能交通等领域。具体实现方案为:确定第一***接收网络心跳消息的网络心跳频率,网络心跳消息包括第二***通过网络链路向第一***发送的消息;确定第一***接收控制链路报文的控制报文频率,控制链路报文包括第二***通过控制控件向第一***发送的报文;控制控件用于控制第二***与被控制平台中部件的通信;基于网络心跳频率和控制报文频率,确定第二***是否失效。本公开能够提高***失效判断的准确性。

Description

***检测方法、装置、设备、存储介质、车辆和云控平台
技术领域
本公开涉及人工智能技术领域,尤其涉及自动驾驶、智能交通等领域。
背景技术
为了保证安全性,一般需要***间进行存活性检测。例如,为了保证无人驾驶过程中的安全性,往往需要热备冗余***来双重保障***的可靠性,即使用冗余***来作为主***的备份。在这种架构中,主***和冗余***实时的互相探测对方的存活性,也即进行***检测,以此用来判断在当前时刻应由哪个***控制车辆。
发明内容
本公开提供了一种***检测方法、装置、设备、存储介质、车辆和云控平台。
根据本公开的第一方面,提供了一种***检测方法,包括:
确定所述第一***接收网络心跳消息的网络心跳频率,所述网络心跳消息包括所述第二***通过网络链路向所述第一***发送的消息;
确定所述第一***接收控制链路报文的控制报文频率,所述控制链路报文包括所述第二***通过控制控件向所述第一***发送的报文;所述控制控件用于控制所述第二***与被控制平台中部件的通信;
基于所述网络心跳频率和所述控制报文频率,确定所述第二***是否失效。
根据本公开的第二方面,提供了一种***检测装置,包括:
网络心跳频率确定模块,用于确定所述第一***接收网络心跳消息的网络心跳频率,所述网络心跳消息包括所述第二***通过网络链路向所述第一***发送的消息;
控制报文频率确定模块,用于确定所述第一***接收控制链路报文的控制报文频率,所述控制链路报文包括所述第二***通过控制控件向所述第一***发送的报文;所述控制控件用于控制所述第二***与被控制平台中部件的通信;
有效性确定模块,用于基于所述网络心跳频率和所述控制报文频率,确定所述第二***是否失效。
根据本公开的第三方面,提供了一种电子设备,包括:
至少一个处理器;以及
与所述至少一个处理器通信连接的存储器;其中,
所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行第一方面所述的方法。
根据本公开的第四方面,提供了一种存储有计算机指令的非瞬时计算机可读存储介质,其中,所述计算机指令用于使所述计算机执行根据第一方面所述的方法。
根据本公开的第五方面,提供了一种计算机程序产品,包括计算机程序,所述计算机程序在被处理器执行时实现根据第一方面所述的方法。
根据本公开的第六方面,提供了一种车辆,包括:如第四方面所述的电子设备。
根据本公开的第七方面,提供了一种云控平台,包括如第四方面所述的电子设备。
本公开实施例中,结合网络心跳频率和控制报文频率确定第二***是否失效,能够避免仅通过网络链路发送报文来确定第二***是否失效过程中、由于网络本身的影响而造成的对***失效的错误判断,能够提高***失效判断的准确性。
应当理解,本部分所描述的内容并非旨在标识本公开的实施例的关键或重要特征,也不用于限制本公开的范围。本公开的其它特征将通过以下的说明书而变得容易理解。
附图说明
附图用于更好地理解本方案,不构成对本公开的限定。其中:
图1是本公开实施例提供的***检测方法的一种流程图;
图2是本公开实施例中确定第二***是否失效的流程图;
图3是本公开实施例提供的***检测方法的另一种流程图;
图4是本公开实施例中确定网络心跳频率的流程图;
图5是本公开实施例提供的***检测装置的一种结构示意图;
图6是本公开实施例提供的***检测装置的另一种结构示意图;
图7是用来实现本公开实施例的***检测方法的电子设备的框图。
具体实施方式
以下结合附图对本公开的示范性实施例做出说明,其中包括本公开实施例的各种细节以助于理解,应当将它们认为仅仅是示范性的。因此,本领域普通技术人员应当认识到,可以对这里描述的实施例做出各种改变和修改,而不会背离本公开的范围和精神。同样,为了清楚和简明,以下的描述中省略了对公知功能和结构的描述。
本公开实施例提供了一种***检测方法,可以包括:
确定第一***接收网络心跳消息的网络心跳频率,网络心跳消息包括第二***通过网络链路向第一***发送的消息;
确定第一***接收控制链路报文的控制报文频率,控制链路报文包括第二***通过控制控件向第一***发送的报文;控制控件用于控制第二***与被控制平台中部件的通信;
基于网络心跳频率和控制报文频率,确定第二***是否失效。
本公开实施例中,结合网络心跳频率和控制报文频率确定第二***是否失效,能够避免仅通过网络链路发送报文来确定第二***是否失效过程中、由于网络本身的影响而造成的对***失效的错误判断,能够提高***失效判断的准确性。进一步还能够提高***的可靠性。
本公开实施例提供的***检测方法可以应用于待与其他***互相探测存活性的***。可以是实现对被控制平台运行进行控制的主***或从***,主***和从***互相检测对方的有效性以确定由哪一个***来对被控制平台的运行进行控制。简单理解,可以应用于具有主***和从***的场景。具体地,主***检测从***是否失效,响应于主***检测从***失效,主***接替从***对被控制平台的控制,由主***对被控制平台的运行进行控制。同理,从***检测主***是否失效,响应于从***检测主***失效,从***接替主***对被控制平台的控制,由从***对被控制平台的运行进行控制。
其中,被控制平台可以是一电子设备,也可以多个电子设备构成的平台,也可以是电子设备和组件构成的平台,等等。
待与其他***互相探测存活性的***可以是控制车辆运行的***、控制服务器运行的***、控制信息管理平台运行的***,等等。
本公开实施例中以第一***为执行主体为例进行详细说明。同理,第二***也可以执行第一***类似地步骤,以确定第一***是否失效。第一***和第二***互相探测对方的有效性,也可以理解为互相探测对应的存活性。
图1是本公开实施例提供的***检测方法的流程图。参见图1,本公开实施例提供的***检测方法可以包括:
S101,确定第一***接收网络心跳消息的网络心跳频率。
网络心跳消息包括第二***通过网络链路向第一***发送的消息。
本公开实施例中,网络链路可以包括利用因特网网络的链路,例如,通过socket进行通信的网络,网络上的两个程序通过一个双向的通信连接实现数据的交换,这个连接的一端称为一个socket。例如,通过网络通信协议如传输控制协议(Transmission ControlProtocol,TCP)、用户数据报协议(User Datagram Protocol,UDP)等通信的链路。
网络心跳频率即第一***接收第二***发送的网络心跳消息的频率,可以理解为单位时间内第一***接收到网络心跳消息的数量。
一种可实现方式中,第一***可以周期性地检测第一时间周期内接收到的网络心跳消息的个数,计算该个数与该第一时间周期的比值,并将该个数与该第一时间周期的比值作为网络心跳频率。其中,第一时间周期可以理解为第二***发送网络心跳消息的间隔时间。例如,第二***每隔第一预设时间间隔向第一***发送网络心跳消息,该第一预设时间间隔即为第一时间周期。
S102,确定第一***接收控制链路报文的控制报文频率。
控制链路报文包括第二***通过控制控件向第一***发送的报文;控制控件用于控制第二***与被控制平台中部件的通信。
被控制平台即第一***或第二***控制所针对的对象,即第一***或第二***对该被控制平台的运行进行控制。
控制报文频率即第一***接收第二***发送的控制链路报文的频率,可以理解为单位时间内第一***接收到控制链路报文的数量。
控制报文频率的确定方式类似于网络心跳频率的确定方式。例如,一种可实现方式中,第一***可以周期性地检测第二时间周期接收到的控制链路报文的个数,计算该个数与该第二时间周期的比值,并将该个数与该第二时间周期的比值作为控制报文频率。其中,第二时间周期可以理解为第二***发送控制链路报文的间隔时间。例如,第二***每隔第二预设时间间隔向第一***发送控制链路报文,该第二预设时间间隔即为第二时间周期。
S103,基于网络心跳频率和控制报文频率,确定第二***是否失效。
第一***结合网络心跳频率和控制报文频率共同确定第二***是否失效。
第二***失效也可以理解为第二***出现故障。
第一***确定第二***失效,可以接管第二***对被控制平台的控制,由第一***对被控制平台进行控制,避免失效的第二***对被控制平台进行控制,进一步避免对被控制平台的正常运行造成影响。
一种可实现方式中,如图2所示,S103可以包括:
S201,基于网络心跳频率,确定网络心跳检测是否异常。
响应于网络心跳频率不满足第一条件,确定网络心跳检测异常;响应于网络心跳频率满足第一条件,确定网络心跳检测正常。
一种可实现方式中,响应于网络心跳频率不满足第一条件,可以标记网络通信机制心跳检测异常标识,响应于网络心跳频率满足第一条件,可以标记网络通信机制心跳检测正常标识。如此,可以通过检测标识信息,确定网络心跳检测是否异常,即当检测到网络通信机制心跳检测异常标识,确定网络心跳检测异常,当检测到网络通信机制心跳检测正常标识,确定网络心跳检测正常。也可以理解为,网络通信机制心跳检测异常标识用于表示网络心跳检测异常,网络通信机制心跳检测正常标识用于表示网络心跳检测正常。
第一条件包括网络心跳频率不小于第一预设频率,或者,网络心跳频率不小于***预设值与两倍的第一预设时间间隔的比值。
一种可实现方式中,第一条件可以包括网络包括网络心跳频率不小于第一预设频率。响应于网络心跳频率不小于第一预设频率,确定网络心跳检测正常;响应于网络心跳频率小于第一预设频率,确定网络心跳检测异常。
另一种可实现方式中,第一条件可以包括网络心跳频率不小于***预设值与两倍的第一预设时间间隔的比值,第一预设时间间隔表示第二***发送网络心跳消息的间隔时间。其中,***预设值即第一***的预设值,可以根据实际需求或者经验等确定。
通过判断是否满足第一条件以确定网络心跳检测是否异常,可以将第一条件作为基准,与该基准进行比较,即可确定网络心跳检测是否异常,能够更简便地确定网络心跳检测是否异常。
S202,基于控制报文频率,确定控制心跳检测是否异常。
一种情况下,控制报文频率包括第一频率,即第一***接收第一控制报文的频率。
这种情况下,基于第一频率确定控制心跳检测是否异常。具体地,可以判断第一频率是否满足第二条件,响应于第一频率频率不满足第二条件,确定控制心跳检测异常;响应于第一频率满足第二条件,确定控制心跳检测正常。
一种可实现方式中,响应于第一频率不满足第二条件,可以标记控制心跳检测异常标识,响应于第一频率满足第二条件,可以标记控制心跳检测正常标识。如此,可以通过检测标识信息,确定控制心跳检测是否异常,即当检测到控制心跳检测异常标识,确定控制心跳检测异常,当检测到控制心跳检测正常标识,确定控制心跳检测正常。也可以理解为,控制心跳检测异常标识用于表示控制心跳检测异常,控制心跳检测正常标识用于表示控制心跳检测正常。
第二条件包括第一频率不小于第二预设频率,或者,第一频率不小于***预设值与两倍的第二预设时间间隔的比值,第二预设时间间隔表示第二***向第一***发送第一控制报文的间隔时间。
一种可实现方式中,第二条件可以包括第一频率不小于第二预设频率。响应于第一频率不小于第二预设频率,确定控制心跳检测正常;响应于第一频率小于第二预设频率,确定控制心跳检测异常。
其中,第二预设频率的值可以与第二预设频率的值相同,也可以不同,类似于第一预设频率的值,第二预设频率的值可以根据实际需求或者经验来确定。
另一种可实现方式中,第二条件可以包括第一频率不小于***预设值与两倍的第二预设时间间隔的比值。
第一频率可以理解为单位时间内第一***接收到第一控制报文的数量。
确定第一频率的方式类似于网络心跳频率的确定方式,确定网络心跳频率在上述实施例中已经进行了说明,确定第一频率过程参照确定网络心跳频率的过程即可。
S203,响应于网络心跳检测异常且控制心跳检测异常,确定第二***失效。
当网络心跳检测和控制心跳检测中有一个正常,即当网络心跳检测异常,但控制心跳检测正常,或者,当控制心跳检测异常,但网络心跳检测正常,则确定第二***有效;当网络心跳检测和控制心跳检测均异常,确定第二***失效。
如此,通过网络心跳检测和控制心跳检测共同结合,也可以理解为协同检测,能够避免单独依据网络心跳检测确定***有效性过程中由于网路不稳定而造成的误判。例如,由于网络时延抖动影响,当网络情况不好时,心跳可能会卡住,从而导致了假阳性,即由于网络影响导致的心跳检测异常,而不是***自身失效,如此会导致误判;或者,单独依据网络心跳检测或控制心跳检测确定***有效性过程中由于控制链路报文丢失或者硬件传输延迟的影响而造成的误判;或,由于检查程序自身的影响,如当单独依据网络心跳检测,进行网络心跳检测的检查程序由于各种性能导致的问题卡顿或者程序死掉之后,会导致心跳问题的误报,当控制心跳检测,进行控制心跳检测的检查程序由于各种性能导致的问题卡顿或者程序死掉之后,会导致心跳问题的误报。本公开实施例中控制报文频率能够作为网络心跳频率的补充,共同用于确定***是否失效,相比较于单独依据网络心跳检测以确定***是否失效,能够提高对***失效判断的准确性。
如上,一种情况下,控制报文频率包括第一***接收第一控制报文的第一频率,基于第一频率确定控制心跳检测是否异常。
另一种可选地实施例中,在图1所示实施例基础上,控制报文频率包括第一***接收第一控制报文的第一频率和第一***接收第二控制报文的第二频率,基于第一频率和第二频率,确定控制心跳检测是否异常。
如图3所示,S102可以包括:
S301,确定第一频率,第一频率为第一***接收第一控制报文的频率。
第一控制报文包括第二***通过控制控件向第一***发送的报文。
S302,确定第二频率,第二频率为第一***接收第二控制报文的频率。
第二控制报文包括控制器向第一***发送的报文,控制器用于控制被控制平台中部件与第一***的通信。
第二频率即第一***接收控制器向第一***发送的第二控制报文的频率,可以理解为单位时间内第一***接收到第二控制报文的数量。
确定第二频率的方式类似于网络心跳频率的确定方式,确定网络心跳频率在上述实施例中已经进行了说明,确定第二频率过程参照确定网络心跳频率的过程即可。
本公开实施例中控制链路报文除了包括第一控制报文,即第二***通过控制控件向第一***发送的报文,还包括第二控制报文,即控制器向第一***发送的报文。
控制报文频率除了包括第一***接收第一控制报文的第一频率,还包括接收第二控制报文的第二频率。
S202可以包括:
S303:基于第一频率和第二频率,确定控制心跳检测是否异常。
这种情况下,可以判断第一频率是否满足第二条件,以及判断第二频率是否满足第三条件,响应于第一频率不满足第二条件且第二频率满足第三条件,确定控制心跳检测异常。
第三条件包括第二频率不小于第三预设频率,或者,第二频率不小于***预设值与两倍的第三预设时间间隔的比值,第三预设时间间隔表示控制器向第一***发送第二控制报文的间隔时间。
一种可实现方式中,类似于第一条件和第二条件,第三条件可以包括第二频率不小于第三预设频率。第三预设频率与第一预设频率或第二预设频率的值可以相同,也可以不同,第三预设频率的值可以根据实际需求或者经验来确定。
另一种可实现方式中,第三条件可以包括第二频率不小于***预设值与两倍的第三预设时间间隔的比值。
一种可实现方式中,第一频率不满足第二条件且第二频率满足第三条件,可以标记控制心跳检测异常标识。如此,可以通过检测标识信息,确定控制心跳检测是否异常,即当检测到控制心跳检测异常标识,确定控制心跳检测异常。
一种可实现方式中,第二条件包括第一频率不小于***预设值与两倍的第二预设时间间隔的比值,第二预设时间间隔表示第二***向第一***发送第一控制报文的间隔时间。第三条件包括第二频率不小于***预设值与两倍的第三预设时间间隔的比值,第三预设时间间隔表示控制器向第一***发送第二控制报文的间隔时间。响应于第一频率不满足第二条件且第二频率满足第三条件,确定控制心跳检测异常,即响应于第一频率小于***预设值与两倍的第二预设时间间隔的比值,第二频率不小于***预设值与两倍的第三预设时间间隔的比值,确定控制心跳检测异常。
第二条件、第三条件可以作为确定控制心跳检测异常过程中的基准,与该基准进行比较,即可确定控制心跳检测是否异常,使得确定控制心跳检测异常更加简便,且第二条件和第三条件的结合可以提高确定控制心跳检测是否异常的准确性。
如此,可以基于网络心跳频率,确定网络心跳检测是否异常,并基于第一频率和第二频率,确定控制心跳检测是否异常,响应于网络心跳检测异常且控制心跳检测异常,确定第二***失效。
基于网络心跳频率,确定网络心跳检测是否异常,以及响应于网络心跳检测异常且控制心跳检测异常,确定第二***失效的步骤在上述实施例中已经进行了详细说明,参照上述实施例即可。
第二频率表示的是第一***接收控制器向第一***发送的报文的频率,简单理解,可以通过第二频率表示第一***的控制链路是否正常。当第一***的控制链路异常,则有可能第一***接收控制链路报文失效,此时,第一***接收第二***发送控制链路报文,也即第一控制报文的频率出现异常,有可能是由第一***自身接收报文异常,而第二***发送第一控制报文是正常的,这种情况下,如果仅依据第一***接收第一控制报文的第一频率确定第二***是否失效有可能产生错误判断。本公开实施例中结合了第一***接收第二控制报文,即控制器向第一***发送的报文的第二频率,即在确定第二***是否失效的过程中考虑了第一***自身的控制链路的影响,通过这种方式,可以降低第一***控制链路异常对第二***有效性确定的影响,提高第二***有效性判断的准确性。
一种可实现方式中,第二***接收控制器向第一***发送的报文的频率异常,可以不再判断第二***的控制链路是否异常;当第一***的控制链路正常,而第二***的控制链路异常时,这种情况下,确定第二***的控制链路异常。第二***的控制链路即可以理解为第二***通过控制控件向第一***发送报文的链路。第一***的控制链路即可以理解为第一***接收控制器向第一***发送报文的链路。
一种可选地实施例中,还可以包括基于第二频率确定第一***是否失效。
可以判断第二频率是否满足第三条件,第二频率不满足第三条件,确定第一***失效。简单理解,判断控制器向第一***发送报文的频率异常,则确定第一***失效。
第一***不仅可以结合网络心跳频率、第一频率和第二频率,确定第二***是否失效,还可以基于第二频率,确定自身是否失效,如此为***确定自身是否失效提供了一种可选地方式,进一步还可以提高***自身的可靠性。
一种可实现方式中,还可以基于第一频率和第二频率确定第一***是否失效。具体地,可以判断第一频率是否满足第二条件,以及判断第二频率是否满足第三条件,响应于第一频率不满足第二条件且第二频率不满足第三条件,确定第一***失效;或者,响应于第一频率满足第二条件且第二频率不满足第三条件,确定第一***失效。
一种可实现方式中,第二条件包括第一频率不小于***预设值与两倍的第二预设时间间隔的比值。第三条件包括第二频率不小于***预设值与两倍的第三预设时间间隔的比值。响应于第一频率不满足第二条件且第二频率不满足第三条件,确定第一***失效;或者,响应于第一频率满足第二条件且第二频率不满足第三条件,确定第一***失效,即第一频率小于***预设值与两倍的第二预设时间间隔的比值且第二频率小于***预设值与两倍的第三预设时间间隔的比值,确定第一***失效;或者,第一频率不小于***预设值与两倍的第二预设时间间隔的比值且第二频率小于***预设值与两倍的第三预设时间间隔的比值,确定第一***失效。
类似于确定控制心跳检测异常过程,第二条件和第三条件可以作为确定第一***是否失效过程中的基准,与该基准进行比较,即可确定第一***是否失效,能够使得确定控制心跳检测异常更加简便,且第二条件和第三条件的结合可以提高确定第一***是否失效的准确性。
确定第一***失效后,可以发出报警信息,以提示第一***进行故障检查等等。
第一***不仅可以结合网络心跳频率、第一频率和第二频率,确定第二***是否失效,还可以基于第一频率和第二频率,确定自身是否失效,不仅为***确定自身是否失效提供了一种可选地方式,且第一频率和第二频率的结合还能够提高针对自身失效性确定的准确性,进一步还可以提高***自身的可靠性。
一种可选地实施例中,S101可以包括:
基于第一***的当前时间和网络心跳消息所包括的时间戳,确定网络心跳频率。
S102可以包括:
基于第一***的当前时间和控制链路报文所包括的时间戳,确定控制报文频率。
通过网络心跳消息包括的第二***的时间戳以及第一***的当前时间,可以更加方便、快捷地确定网络心跳频率。同理,通过控制链路报文包括第二***的时间戳和第一***的当前时间,可以更加方便、快捷地确定底盘链路报文频率。
一种可实现方式中,基于第一***的当前时间和网络心跳消息所包括的时间戳,确定网络心跳频率,可以包括:
按照各个网络心跳消息所包括的时间戳的时间先后顺序,比较第一***的当前时间和各个网络心跳消息所包括的时间戳;响应于第一***的当前时间与各个网络心跳消息所包括的时间戳中的一时间戳之间的时间差值满足预设消息接收要求,利用满足预设消息接收要求的时间差值与一时间戳,计算网络心跳频率,其中,预设消息接收要求表示心跳发送正常。
具体地,如图4所示,可以包括:
S401,按照各个网络心跳消息所包括的时间戳的时间先后顺序,将一网络心跳消息包括的时间戳作为计算时间戳,计算第一***的当前时间与计算时间戳的时间差值,并将已计算消息数量加1。
其中,各个网络心跳消息包括第二***按照第一预设时间间隔,通过网络链路向第一***发送的多个消息。
时间先后顺序可以包括按照从前往后的顺序,或者也可以按照从后往前的顺序。若按照时间从后往前的顺序,当已计算消息数量达到预设数量时可以结束计算,如此能够减少计算量。
S402,判断是否满足预设消息接收要求。
其中,预设消息接收要求表示心跳发送正常。
预设消息接收要求可以包括:当前时间戳对应的时间差值小于***值,或者当前时间戳对应的报文数量小于第一比值。
满足其中任一条件时可以确定目标报文数量与目标时间差值,相比较于遍历所有网络心跳消息中的时间戳进行计算,能够减少计算量。
***值可以根据实际需求或者经验等确定。第一比值为***值与第一预设时间间隔的比值,第一预设时间间隔表示第二***发送网络心跳消息的间隔时间。
响应于计算时间戳对应的时间差值不满足预设消息接收要求,返回执行S401;响应于计算时间戳对应的时间差值满足预设消息接收要求,执行S403。
S403,将计算时间戳对应的时间差值作为目标时间差值,并将已计算消息数量作为目标报文数量。
S404,计算目标报文数量与目标时间差值的第二比值,并将第二比值作为网络心跳频率。
利用第二***发送的多个网络心跳消息中携带的时间戳,选择出满足条件的目标时间差值以及目标报文数量,利用该满足条件的目标时间差值以及目标报文数量确定网络心跳频率,可以提高确定出的网络心跳频率的准确性。
如此,按照网络心跳消息所包括的时间戳的时间先后顺序对多个网络心跳消息包括的时间戳于第一***的当前时间进行计算,以在满足预设消息接收要求确定目标报文数量与目标时间差值,并计算得到网络心跳频率,可以对计算网络心跳频率的报文数量与时间差值进行选择,依据满足条件的目标报文数量与目标时间差值计算得到网络心跳频率,能够提高网络心跳频率的准确性。
一种可选地实施例中,各个网络心跳消息所包括的时间戳按照时间先后顺序存储在队列中。
按照各个网络心跳消息所包括的时间戳的时间先后顺序,比较第一***的当前时间和各个网络心跳消息所包括的时间戳,可以包括:
按照从队列的队尾到队首的顺序,比较第一***的当前时间与队列所包括的时间戳。
其中,预设消息接收要求包括:计算时间戳对应的时间差值不小于***预设值,已计算消息数量不小于第一比值,或者,队列到达队首。
其中,第一比值为***预设值与第一预设时间间隔的比值,已计算消息数量表示已与第一***的当前时间进行比较的时间戳的个数。
通过队列可以方便计算,且满足其中任一条件时可以确定目标报文数量与目标时间差值,相比较于遍历所有网络心跳消息中的时间戳进行计算,能够减少计算量。
一种可实现方式中,接收第二***按照第一预设时间间隔发送的多个网络心跳消息,针对每一网络心跳消息,网络心跳消息包括第二***;针对每个网络心跳消息,将网络心跳消息包括的时间戳存储至预设长度的队列。
如此,可以按照队列顺序,如从队尾到队首的顺序或者从队首到队尾的顺序,将存储在队列中的时间戳作为计算时间戳,更方便统计目标时间差值以及目标报文数量。
一个例子中,第一***维护一个***预设值QueueSize的队列,在接收到第二***发送的网络心跳消息之后,将该网络心跳消息中携带的第二***的时间戳放入队尾,查看队列是否已满,假如已满,将队首元素移除队列。例如,主***接收到冗余***发送的心跳消息Tslave之后,将当前的心跳消息Tslave放入队尾。
在确定网络心跳频率过程中,可以新建一个线程,获得第一***的当前时间Tcur,从队尾到队首依次检查队列中的元素[T0,T1,T2…Tn-1],如果满足以下任一条件就跳出检查:1)Tdiff=Tcur-Ti,Tdiff>TimeInterval,i-0,1,2,……,n-1,n为自然数,其中TimeInterval是***预设值;2)检查过的元素个数为N,N>=TimeInterval/SendPeriod;3)队列到达队首。
跳出检查时对应的队列中的元素可以理解为目标时间戳,跳出检查时对应的队列中的元素与第一***的当前时间的差值为目标时间差值,对应的N即为目标报文数量。
如此,计算目标报文数量与目标时间差值的第二比值,并将第二比值作为网络心跳频率。
基于第一***的当前时间和控制链路报文所包括的时间戳,确定控制报文频率的步骤,类似于基于第一***的当前时间和网络心跳消息包括的时间戳,确定网络心跳频率的步骤。在基于第一***的当前时间和网络心跳消息包括的时间戳,确定网络心跳频率步骤中,利用控制链路报文包括的时间戳,替换网络心跳消息包括的时间戳,即可实现基于第一***的当前时间和控制链路报文所包括的时间戳,确定控制报文频率的步骤。
确定控制报文频率类似于确定网络心跳频率的方式,参照上述实施例中确定心跳频率的过程即可完成确定控制报文频率。
一种可选地实施例中,控制控件包括用于控制第二***与车辆底盘通信的底盘驱动程序;控制器用于控制车辆底盘与第一***通信。
本公开实施例***检测方法可以应用于车辆控制***场景下,具体地本公开实施例***检测方法可以由控制车辆运行的***来执行,如第一***为主***,第二***为冗余***;或者,第一***为冗余***,第二***为主***。被控制平台为车辆,控制器为控制车辆底盘运行的控制器。该场景下,主***或冗余***控制车辆的运行,第二***通过控制第二***与车辆底盘通信的底盘驱动程序,向第一***发送第一控制报文。
第一***可以确定第一***接收网络心跳消息的网络心跳频率,网络心跳消息包括第二***通过网络链路向第一***发送的消息;确定第一***接收控制链路报文的控制报文频率,控制链路报文包括第二***通过底盘驱动程序向第一***发送的报文;控制控件用于控制第二***与车辆底盘的通信。这种情况下,控制链路报文也可以称之为底盘链路报文。
如此,可以实现结合网络心跳频率和控制报文频率确定第二***是否失效,能够避免仅通过网络链路发送报文来确定第二***是否失效过程中、由于网络本身的影响而造成的对***失效的错误判断,能够提高对车辆控制***失效判断的准确性。进一步还能够提高车辆控制***的可靠性。
一种可实现方式中,控制链路报文除了可以包括第二***通过底盘驱动程序向第一***发送的报文,还可以包括控制车辆底盘与第一***通信的控制器,向第一***发送的报文。第二***通过底盘驱动程序向第一***发送的报文即上述第一控制报文,控制器向第一***发送的报文即上述第二控制报文。
其中,通过底盘驱动程序向第一***发送的报文的通信链路可以理解为底盘链路,具体地,底盘链路可以包括控制器域网(Controller Area Network,CAN)链路。CAN链路属于总线式串行通信,CAN总线结构划分为两层:物理层和数据链路层。
可以实现,结合第一***接收第二***通过底盘驱动程序向第一***发送的报文的频率以及第一***接收控制器向第一***发送的报文,确定确定控制心跳检测是否异常,进而结合基于网络心跳频率,确定网络心跳检测是否异常,以共同确定第二***是否失效,可以实现在车辆控制场景下,进一步提高对车辆控制***有效性判断的准确性,提高车辆控制***的可靠性。
一种可选的实施例中,本公开实施例提供的***检测方法可以应用于自动驾驶场景。即上述车辆控制***场景中车辆为自动驾驶车辆。本公开实施例利用网络和底盘报文实现了一种心跳机制,可以在兼顾实时性的基础上,更加准确的进行存活性诊断,提高了自动驾驶的安全行以及行驶的连贯性。
自动驾驶过程中,主***和冗余***通过探测对方的存活性,也可以理解为有效性,以确定由哪个***控制车辆,***是否失效判断地更准确,则可以更加准确地、连贯地进行***间的切换,如此可以提高自动驾驶的安全性以及行驶的连贯性。
一个具体的例子中,首先根据主***和冗余***的网际协议地址(InternetProtocol Address,IP地址)和端口,在主***和安全***同时reader(读)和writer(写)功能,此时,主***和冗余***既是服务器又是客户端,互相给对方发送消息,同时互相接收对方发来的消息。
该例子中,以主***为执行主体为例进行详细说明。同理,冗余***也可以执行主***类似地步骤,以确定主***是否失效。主***和冗余***互相探测对方的有效性,也可以理解为互相探测对应的存活性。
冗余***以***预设值SendPeriod时间间隔(第一预设时间间隔),获得当前***,也即冗余***自身的时间戳,并且将这个时间戳封装成网络心跳消息,发送给主***。
主***维护一个***预设值QueueSize的队列,在接收到冗余***发送的网络心跳消息之后,将该网络心跳消息中携带的冗余***的时间戳放入队尾,查看队列是否已满,假如已满,将队首元素移除队列。例如,主***接收到冗余***发送的心跳消息Tslave之后,将当前的心跳消息Tslave放入队尾。
主***将冗余***发送的网络心跳信息存储至队列后,在确定网络心跳频率过程中可以基于队列中元素确定网络心跳频率。具体地基于队列中元素确定网络心跳频率的过程在上述实施例中已经进行了详细描述,这里不再赘述。
计算得到网络心跳频率,如得到主***接收心跳的频率F=N/Tcur-Ti,可以检查F>=TimeInterval/(2*SendPeriod)是否成立,假如成立,说明此时由网络通信机制进行的心跳检测没有异常,也即网络链路心跳检测正常;否则,也即F<TimeInterval/(2*SendPeriod),说明由网络通信机制进行的心跳检测出现了异常,也即网络链路心跳检测异常,可以记为UDP_ERR,也可以理解为,标记网络通信机制心跳检测异常标识UDP_ERR。
冗余***的底盘驱动程序以时间间隔Period向主***的底盘驱动程序发送报文消息,消息ID为IDslave
主***的底盘驱动程序会接收底盘上传的报文消息,报文ID分为两种,一种是车辆底盘自动发送的报文信息,也即底盘报文,ID为IDidle,另一种是冗余***驱动程序发送的报文,也即底盘链路报文,ID为IDslave,以计算网络心跳频率类似的机制分别统计IDidle和IDslave对应的频率。具体地IDidle对应的频率也即上述实施例中的底盘传输频率,IDslave对应的频率也即上述实施例中底盘链路报文频率。
假如IDslave和IDidle对应的频率都出现异常,那么说明主***的底盘链路出现问题,这种情况下,可以确定主***失效(也可以理解为出现故障),也即上述确定第一***失效,同时,在确定主***失效后,可以将出现的问题上报以进行警告。假如IDslave对应的频率正常,IDidle对应的频率出现异常,说明底盘报文出现了问题,这种情况下,也可以确定主***失效,同时,在确定主***失效后,也可以将出现的问题上报以进行警告;假如IDidle对应的频率正常,IDslave对应的频率异常,说明此时冗余***的CAN链路出现了问题,记为CAN_ERR。其中,IDslave对应的频率即第一频率,IDidle对应的频率即第二频率,IDslave对应的频率出现异常可以理解为IDslave对应的频率不满足第二条件,第二条件可以包括底盘链路报文频率不小于***预设值与两倍的第二预设时间间隔的比值,第二预设时间间隔表示第二***向第一***发送底盘链路报文的间隔时间。IDidle对应的频率出现异常可以理解为IDidle对应的频率不满足第三条件,第三条件可以包括底盘传输频率不小于***预设值与两倍的第三预设时间间隔的比值,第三预设时间间隔表示车辆底盘向第一***发送底盘报文的间隔时间。IDslave对应的频率不满足第二条件且IDidle对应的频率满足第三条件,则标记CAN_ERR,IDslave对应的频率不满足第二条件且IDidle对应的频率不满足第三条件,或者,IDslave对应的频率满足第二条件且IDidle对应的频率不满足第三条件,说明主***的底盘链路出现问题,可以确定主***失效。
假如CAN_ERR和UDP_ERR同时出现,那么判定此时冗余***出现了故障异常,即判定冗余***失效,也可以理解为心跳错误,这种情况下,主***进行紧急接管车辆。
同理,当冗余***检测到主***也发生这样的错误之后,即冗余***确定主***失效的情况下,冗余***也进行紧急接管车辆。
本公开实施例中基于网络和底盘报文的心态检测机制提升了***的可靠性,并且减少了由于网络、硬件、程序等引起的心跳误报问题。
对应于上述实施例提供的***检测方法,本公开实施例还提供了一种***检测装置,如图5所示,可以包括:
网络心跳频率确定模块501,用于确定第一***接收网络心跳消息的网络心跳频率,网络心跳消息包括第二***通过网络链路向第一***发送的消息;
控制报文频率确定模块502,用于确定第一***接收控制链路报文的控制报文频率,控制链路报文包括第二***通过控制控件向第一***发送的报文;控制控件用于控制第二***与被控制平台中部件的通信;
有效性确定模块503,用于基于网络心跳频率和控制报文频率,确定第二***是否失效。
可选地,有效性确定模块503,具体用于基于网络心跳频率,确定网络心跳检测是否异常;基于控制报文频率,确定控制心跳检测是否异常;响应于网络心跳检测异常且控制心跳检测异常,确定第二***失效。
可选地,有效性确定模块503,具体用于响应于网络心跳频率不满足第一条件,确定网络心跳检测异常;响应于网络心跳频率满足第一条件,确定网络心跳检测正常。
可选地,第一条件包括网络心跳频率不小于第一预设频率,或者,网络心跳频率不小于***预设值与两倍的第一预设时间间隔的比值。
可选地,控制报文频率确定模块502,具体用于确定第一频率,第一频率为第一***接收第一控制报文的频率,第一控制报文包括第二***通过控制控件向第一***发送的报文;确定第二频率,第二频率为第一***接收第二控制报文的频率,第二控制报文包括控制器向第一***发送的报文,控制器用于控制被控制平台中部件与第一***的通信;
有效性确定模块503,具体用于基于第一频率和第二频率,确定控制心跳检测是否异常。
可选地,有效性确定模块503,具体用于响应于第一频率不满足第二条件且第二频率满足第三条件,确定控制心跳检测异常。
可选地,如图6所示,装置还包括:
第一***故障确定模块601,用于基于第二频率确定第一***是否失效。
可选地,第一***故障确定模块601,具体用于响应于第一频率不满足第二条件且第二频率不满足第三条件,确定第一***失效;或者,响应于第一频率满足第二条件且第二频率不满足第三条件,确定第一***失效。
可选地,第二条件包括第一频率不小于第二预设频率,或者,第一频率不小于***预设值与两倍的第二预设时间间隔的比值;第三条件包括第二频率不小于第三预设频率,或者,第二频率不小于***预设值与两倍的第三预设时间间隔的比值。
可选地,网络心跳频率确定模块501,具体用于基于第一***的当前时间和网络心跳消息所包括的时间戳,确定网络心跳频率;
控制报文频率确定模块502,具体用于基于第一***的当前时间和控制链路报文所包括的时间戳,确定控制报文频率。
可选地,网络心跳频率确定模块501,具体用于按照各个网络心跳消息所包括的时间戳的时间先后顺序,比较第一***的当前时间和各个网络心跳消息所包括的时间戳;响应于第一***的当前时间与各个网络心跳消息所包括的时间戳中的一时间戳之间的时间差值满足预设消息接收要求,利用满足预设消息接收要求的时间差值与一时间戳,计算网络心跳频率,其中,预设消息接收要求表示心跳发送正常。
可选地,各个网络心跳消息所包括的时间戳按照时间先后顺序存储在队列中;
网络心跳频率确定模块501,具体用于按照从队列的队尾到队首的顺序,比较第一***的当前时间与队列所包括的时间戳;
预设消息接收要求包括:计算时间戳对应的时间差值不小于***预设值,已计算消息数量不小于第一比值,或者,队列到达队首,其中,第一比值为***预设值与第一预设时间间隔的比值,已计算消息数量表示已与第一***的当前时间进行比较的时间戳的个数。
可选地,控制控件包括用于控制第二***与车辆底盘通信的底盘驱动程序;控制器用于控制车辆底盘与第一***通信。
本公开的技术方案中,所涉及的用户个人信息的收集、存储、使用、加工、传输、提供和公开等处理,均符合相关法律法规的规定,且不违背公序良俗。
根据本公开的实施例,本公开还提供了一种电子设备、一种可读存储介质和一种计算机程序产品。
图7示出了可以用来实施本公开的实施例的示例电子设备700的示意性框图。电子设备旨在表示各种形式的数字计算机,诸如,膝上型计算机、台式计算机、工作台、个人数字助理、服务器、刀片式服务器、大型计算机、和其它适合的计算机。电子设备还可以表示各种形式的移动装置,诸如,个人数字处理、蜂窝电话、智能电话、可穿戴设备和其它类似的计算装置。本文所示的部件、它们的连接和关系、以及它们的功能仅仅作为示例,并且不意在限制本文中描述的和/或者要求的本公开的实现。
如图7所示,电子设备700包括计算单元701,其可以根据存储在只读存储器(ROM)702中的计算机程序或者从存储单元708加载到随机访问存储器(RAM)703中的计算机程序,来执行各种适当的动作和处理。在RAM 703中,还可存储设备700操作所需的各种程序和数据。计算单元701、ROM 702以及RAM 703通过总线704彼此相连。输入/输出(I/O)接口705也连接至总线704。
电子设备700中的多个部件连接至I/O接口705,包括:输入单元706,例如键盘、鼠标等;输出单元707,例如各种类型的显示器、扬声器等;存储单元708,例如磁盘、光盘等;以及通信单元709,例如网卡、调制解调器、无线通信收发机等。通信单元709允许设备700通过诸如因特网的计算机网络和/或各种电信网络与其他设备交换信息/数据。
计算单元701可以是各种具有处理和计算能力的通用和/或专用处理组件。计算单元701的一些示例包括但不限于中央处理单元(CPU)、图形处理单元(GPU)、各种专用的人工智能(AI)计算芯片、各种运行机器学习模型算法的计算单元、数字信号处理器(DSP)、以及任何适当的处理器、控制器、微控制器等。计算单元701执行上文所描述的各个方法和处理,例如***检测方法。例如,在一些实施例中,***检测方法可被实现为计算机软件程序,其被有形地包含于机器可读介质,例如存储单元708。在一些实施例中,计算机程序的部分或者全部可以经由ROM 702和/或通信单元709而被载入和/或安装到设备700上。当计算机程序加载到RAM 703并由计算单元701执行时,可以执行上文描述的***检测方法的一个或多个步骤。备选地,在其他实施例中,计算单元701可以通过其他任何适当的方式(例如,借助于固件)而被配置为执行***检测方法。
本文中以上描述的***和技术的各种实施方式可以在数字电子电路***、集成电路***、场可编程门阵列(FPGA)、专用集成电路(ASIC)、专用标准产品(ASSP)、芯片上***的***(SOC)、复杂可编程逻辑设备(CPLD)、计算机硬件、固件、软件、和/或它们的组合中实现。这些各种实施方式可以包括:实施在一个或者多个计算机程序中,该一个或者多个计算机程序可在包括至少一个可编程处理器的可编程***上执行和/或解释,该可编程处理器可以是专用或者通用可编程处理器,可以从存储***、至少一个输入装置、和至少一个输出装置接收数据和指令,并且将数据和指令传输至该存储***、该至少一个输入装置、和该至少一个输出装置。
用于实施本公开的方法的程序代码可以采用一个或多个编程语言的任何组合来编写。这些程序代码可以提供给通用计算机、专用计算机或其他可编程数据处理装置的处理器或控制器,使得程序代码当由处理器或控制器执行时使流程图和/或框图中所规定的功能/操作被实施。程序代码可以完全在机器上执行、部分地在机器上执行,作为独立软件包部分地在机器上执行且部分地在远程机器上执行或完全在远程机器或服务器上执行。
在本公开的上下文中,机器可读介质可以是有形的介质,其可以包含或存储以供指令执行***、装置或设备使用或与指令执行***、装置或设备结合地使用的程序。机器可读介质可以是机器可读信号介质或机器可读储存介质。机器可读介质可以包括但不限于电子的、磁性的、光学的、电磁的、红外的、或半导体***、装置或设备,或者上述内容的任何合适组合。机器可读存储介质的更具体示例会包括基于一个或多个线的电气连接、便携式计算机盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦除可编程只读存储器(EPROM或快闪存储器)、光纤、便捷式紧凑盘只读存储器(CD-ROM)、光学储存设备、磁储存设备、或上述内容的任何合适组合。
为了提供与用户的交互,可以在计算机上实施此处描述的***和技术,该计算机具有:用于向用户显示信息的显示装置(例如,CRT(阴极射线管)或者LCD(液晶显示器)监视器);以及键盘和指向装置(例如,鼠标或者轨迹球),用户可以通过该键盘和该指向装置来将输入提供给计算机。其它种类的装置还可以用于提供与用户的交互;例如,提供给用户的反馈可以是任何形式的传感反馈(例如,视觉反馈、听觉反馈、或者触觉反馈);并且可以用任何形式(包括声输入、语音输入或者、触觉输入)来接收来自用户的输入。
可以将此处描述的***和技术实施在包括后台部件的计算***(例如,作为数据服务器)、或者包括中间件部件的计算***(例如,应用服务器)、或者包括前端部件的计算***(例如,具有图形用户界面或者网络浏览器的用户计算机,用户可以通过该图形用户界面或者该网络浏览器来与此处描述的***和技术的实施方式交互)、或者包括这种后台部件、中间件部件、或者前端部件的任何组合的计算***中。可以通过任何形式或者介质的数字数据通信(例如,通信网络)来将***的部件相互连接。通信网络的示例包括:局域网(LAN)、广域网(WAN)和互联网。
计算机***可以包括客户端和服务器。客户端和服务器一般远离彼此并且通常通过通信网络进行交互。通过在相应的计算机上运行并且彼此具有客户端-服务器关系的计算机程序来产生客户端和服务器的关系。服务器可以是云服务器,也可以为分布式***的服务器,或者是结合了区块链的服务器。
本公开实施例还提供了一种车辆,包括:如图7实施例所示的电子设备。
车辆可以包括自动驾驶汽车等等。
本公开实施例还提供了一种云控平台,包括:如图7实施例所示的电子设备。
云控平台在云端执行处理,云控平台包括的电子设备可以获取车辆的数据,例如图片和视频等,从而进行图像视频处理和数据计算;云控平台也可以称为车路协同管理平台、边缘计算平台、云计算平台、中心***、云端服务器等。
应该理解,可以使用上面所示的各种形式的流程,重新排序、增加或删除步骤。例如,本公开中记载的各步骤可以并行地执行也可以顺序地执行也可以不同的次序执行,只要能够实现本公开公开的技术方案所期望的结果,本文在此不进行限制。
上述具体实施方式,并不构成对本公开保护范围的限制。本领域技术人员应该明白的是,根据设计要求和其他因素,可以进行各种修改、组合、子组合和替代。任何在本公开的精神和原则之内所作的修改、等同替换和改进等,均应包含在本公开保护范围之内。

Claims (26)

1.一种***检测方法,包括:
确定第一***接收网络心跳消息的网络心跳频率,所述网络心跳消息包括第二***通过网络链路向所述第一***发送的消息;
确定所述第一***接收控制链路报文的控制报文频率,所述控制链路报文包括所述第二***通过控制控件向所述第一***发送的报文;所述控制控件用于控制所述第二***与被控制平台中部件的通信;
基于所述网络心跳频率和所述控制报文频率,确定所述第二***是否失效;
其中,所述基于所述网络心跳频率和所述控制报文频率,确定所述第二***是否失效,包括:
基于所述网络心跳频率,确定网络心跳检测是否异常;
基于所述控制报文频率,确定控制心跳检测是否异常;
响应于所述网络心跳检测异常且所述控制心跳检测异常,确定所述第二***失效;
其中,所述确定所述第一***接收控制链路报文的控制报文频率,包括:
确定第一频率,所述第一频率为所述第一***接收第一控制报文的频率,所述第一控制报文包括所述第二***通过所述控制控件向所述第一***发送的报文;
确定第二频率,所述第二频率为所述第一***接收第二控制报文的频率,所述第二控制报文包括控制器向所述第一***发送的报文,所述控制器用于控制所述被控制平台中部件与所述第一***的通信;
所述基于所述控制报文频率,确定控制心跳检测是否异常,包括:
基于所述第一频率和所述第二频率,确定控制心跳检测是否异常。
2.根据权利要求1所述的方法,其中,所述基于所述网络心跳频率,确定网络心跳检测是否异常,包括:
响应于所述网络心跳频率不满足第一条件,确定网络心跳检测异常;
响应于所述网络心跳频率满足所述第一条件,确定网络心跳检测正常。
3.根据权利要求2所述的方法,其中,所述第一条件包括所述网络心跳频率不小于第一预设频率,或者,所述网络心跳频率不小于***预设值与两倍的第一预设时间间隔的比值。
4.根据权利要求1所述的方法,其中,所述基于所述第一频率和所述第二频率,确定控制心跳检测是否异常,包括:
响应于所述第一频率不满足第二条件且所述第二频率满足第三条件,确定控制心跳检测异常。
5.根据权利要求1所述的方法,所述方法还包括:
基于所述第二频率确定所述第一***是否失效。
6.根据权利要求5所述的方法,其中,所述基于所述第二频率确定所述第一***是否失效,包括:
响应于所述第一频率不满足第二条件且所述第二频率不满足第三条件,确定所述第一***失效;或者,响应于所述第一频率满足所述第二条件且所述第二频率不满足所述第三条件,确定所述第一***失效。
7.根据权利要求4或6所述的方法,其中,所述第二条件包括所述第一频率不小于第二预设频率,或者,所述第一频率不小于***预设值与两倍的第二预设时间间隔的比值;所述第三条件包括所述第二频率不小于第三预设频率,或者,所述第二频率不小于所述***预设值与两倍的第三预设时间间隔的比值。
8.根据权利要求1所述的方法,其中,所述确定所述第一***接收网络心跳消息的网络心跳频率,包括:
基于所述第一***的当前时间和所述网络心跳消息所包括的时间戳,确定网络心跳频率;
所述确定所述第一***接收控制链路报文的控制报文频率,包括:
基于所述第一***的当前时间和所述控制链路报文所包括的时间戳,确定控制报文频率。
9.根据权利要求8所述的方法,其中,所述基于所述第一***的当前时间和所述网络心跳消息所包括的时间戳,确定网络心跳频率,包括:
按照各个网络心跳消息所包括的时间戳的时间先后顺序,比较所述第一***的当前时间和各个网络心跳消息所包括的时间戳;
响应于所述第一***的当前时间与各个网络心跳消息所包括的时间戳中的一时间戳之间的时间差值满足预设消息接收要求,利用满足所述预设消息接收要求的所述时间差值与所述一时间戳,计算所述网络心跳频率,其中,所述预设消息接收要求表示心跳发送正常。
10.根据权利要求9所述的方法,其中,所述各个网络心跳消息所包括的时间戳按照时间先后顺序存储在队列中;
所述按照各个网络心跳消息所包括的时间戳的时间先后顺序,比较所述第一***的当前时间和各个网络心跳消息所包括的时间戳,包括:
按照从所述队列的队尾到队首的顺序,比较所述第一***的当前时间与所述队列所包括的时间戳;
所述预设消息接收要求包括:计算时间戳对应的所述时间差值不小于***预设值,已计算消息数量不小于第一比值,或者,所述队列到达队首,其中,所述第一比值为所述***预设值与第一预设时间间隔的比值,所述已计算消息数量表示已与所述第一***的当前时间进行比较的时间戳的个数。
11.根据权利要求1至6或8至10任一项所述的方法,其中,所述控制控件包括用于控制所述第二***与车辆底盘通信的底盘驱动程序;所述控制器用于控制所述车辆底盘与所述第一***通信。
12.一种***检测装置,包括:
网络心跳频率确定模块,用于确定第一***接收网络心跳消息的网络心跳频率,所述网络心跳消息包括第二***通过网络链路向所述第一***发送的消息;
控制报文频率确定模块,用于确定所述第一***接收控制链路报文的控制报文频率,所述控制链路报文包括所述第二***通过控制控件向所述第一***发送的报文;所述控制控件用于控制所述第二***与被控制平台中部件的通信;
有效性确定模块,用于基于所述网络心跳频率和所述控制报文频率,确定所述第二***是否失效;
其中,所述有效性确定模块,具体用于基于所述网络心跳频率,确定网络心跳检测是否异常;基于所述控制报文频率,确定控制心跳检测是否异常;响应于所述网络心跳检测异常且所述控制心跳检测异常,确定所述第二***失效;
其中,所述控制报文频率确定模块,具体用于确定第一频率,所述第一频率为所述第一***接收第一控制报文的频率,所述第一控制报文包括所述第二***通过所述控制控件向所述第一***发送的报文;确定第二频率,所述第二频率为所述第一***接收第二控制报文的频率,所述第二控制报文包括控制器向所述第一***发送的报文,所述控制器用于控制所述被控制平台中部件与所述第一***的通信;
有效性确定模块,具体用于基于所述第一频率和所述第二频率,确定控制心跳检测是否异常。
13.根据权利要求12所述的装置,其中,所述有效性确定模块,具体用于响应于所述网络心跳频率不满足第一条件,确定网络心跳检测异常;响应于所述网络心跳频率满足所述第一条件,确定网络心跳检测正常。
14.根据权利要求13所述的装置,其中,所述第一条件包括所述网络心跳频率不小于第一预设频率,或者,所述网络心跳频率不小于***预设值与两倍的第一预设时间间隔的比值。
15.根据权利要求12所述的装置,其中,所述有效性确定模块,具体用于响应于所述第一频率不满足第二条件且所述第二频率满足第三条件,确定控制心跳检测异常。
16.根据权利要求12所述的装置,其中,所述有效性确定模块,具体用于响应于所述第一频率不满足第二条件且所述第二频率满足第三条件,确定控制心跳检测异常。
17.根据权利要求16所述的装置,其中,所述第一***故障确定模块,具体用于响应于所述第一频率不满足第二条件且所述第二频率不满足第三条件,确定所述第一***失效;或者,响应于所述第一频率满足所述第二条件且所述第二频率不满足所述第三条件,确定所述第一***失效。
18.根据权利要求15或17所述的装置,其中,所述第二条件包括所述第一频率不小于第二预设频率,或者,所述第一频率不小于***预设值与两倍的第二预设时间间隔的比值;所述第三条件包括所述第二频率不小于第三预设频率,或者,所述第二频率不小于所述***预设值与两倍的第三预设时间间隔的比值。
19.根据权利要求12所述的装置,其中,所述网络心跳频率确定模块,具体用于基于所述第一***的当前时间和所述网络心跳消息所包括的时间戳,确定网络心跳频率;
所述控制报文频率确定模块,具体用于基于所述第一***的当前时间和所述控制链路报文所包括的时间戳,确定控制报文频率。
20.根据权利要求19所述的装置,其中,所述网络心跳频率确定模块,具体用于按照各个网络心跳消息所包括的时间戳的时间先后顺序,比较所述第一***的当前时间和各个网络心跳消息所包括的时间戳;响应于所述第一***的当前时间与各个网络心跳消息所包括的时间戳中的一时间戳之间的时间差值满足预设消息接收要求,利用满足所述预设消息接收要求的所述时间差值与所述一时间戳,计算所述网络心跳频率,其中,所述预设消息接收要求表示心跳发送正常。
21.根据权利要求20所述的装置,其中,所述各个网络心跳消息所包括的时间戳按照时间先后顺序存储在队列中;
所述网络心跳频率确定模块,具体用于按照从所述队列的队尾到队首的顺序,比较所述第一***的当前时间与所述队列所包括的时间戳;
所述预设消息接收要求包括:计算时间戳对应的所述时间差值不小于***预设值,已计算消息数量不小于第一比值,或者,所述队列到达队首,其中,所述第一比值为所述***预设值与第一预设时间间隔的比值,所述已计算消息数量表示已与所述第一***的当前时间进行比较的时间戳的个数。
22.根据权利要求12至17或19至21任一项所述的装置,其中,所述控制控件包括用于控制所述第二***与车辆底盘通信的底盘驱动程序;所述控制器用于控制所述车辆底盘与所述第一***通信。
23.一种电子设备,包括:
至少一个处理器;以及
与所述至少一个处理器通信连接的存储器;其中,
所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行权利要求1-11中任一项所述的方法。
24.一种存储有计算机指令的非瞬时计算机可读存储介质,其中,所述计算机指令用于使所述计算机执行根据权利要求1-11中任一项所述的方法。
25.一种车辆,包括:如权利要求23所述的电子设备。
26.一种云控平台,包括如权利要求23所述的电子设备。
CN202210323322.4A 2022-03-29 2022-03-29 ***检测方法、装置、设备、存储介质、车辆和云控平台 Active CN114844807B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202210323322.4A CN114844807B (zh) 2022-03-29 2022-03-29 ***检测方法、装置、设备、存储介质、车辆和云控平台

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210323322.4A CN114844807B (zh) 2022-03-29 2022-03-29 ***检测方法、装置、设备、存储介质、车辆和云控平台

Publications (2)

Publication Number Publication Date
CN114844807A CN114844807A (zh) 2022-08-02
CN114844807B true CN114844807B (zh) 2023-06-27

Family

ID=82564183

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210323322.4A Active CN114844807B (zh) 2022-03-29 2022-03-29 ***检测方法、装置、设备、存储介质、车辆和云控平台

Country Status (1)

Country Link
CN (1) CN114844807B (zh)

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108092853A (zh) * 2017-12-27 2018-05-29 珠海市君天电子科技有限公司 监控服务器链路状态的方法、装置、***、电子设备及存储介质
CN112637013A (zh) * 2020-12-21 2021-04-09 苏州三六零智能安全科技有限公司 Can总线报文异常检测方法及装置、设备、存储介质

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102013111453A1 (de) * 2012-10-19 2014-04-24 Ford Global Technologies, Llc System und Verfahren zum Steuern eines Fahrzeugs mit einem Eindrahtaktuator
US10084678B2 (en) * 2016-04-19 2018-09-25 International Business Machines Corporation Managing connections for data communications using heartbeat messaging
EP3323659B1 (en) * 2016-11-16 2019-06-26 Nio Nextev Limited Fault detection in electric vehicles
CN108881001B (zh) * 2017-05-16 2021-01-19 比亚迪股份有限公司 基于CANopen协议和以太网协议进行数据转换的网关和方法
CN108924195A (zh) * 2018-06-20 2018-11-30 郑州云海信息技术有限公司 一种单向心跳机制实现方法、装置、设备及***
US10785350B2 (en) * 2018-10-07 2020-09-22 Hewlett Packard Enterprise Development Lp Heartbeat in failover cluster
CN110083146B (zh) * 2019-05-17 2021-05-04 北京百度网讯科技有限公司 自动驾驶车辆的故障确定方法及装置、设备及存储介质
CN110320895A (zh) * 2019-08-01 2019-10-11 北京百度网讯科技有限公司 一种故障检测方法及装置、车辆
CN110488597B (zh) * 2019-08-18 2021-06-22 中车永济电机有限公司 机车主处理单元双冗余控制方法
CN110843857A (zh) * 2019-11-21 2020-02-28 南京恩瑞特实业有限公司 一种双机热备ato设备故障检测和切换***
CN113602281A (zh) * 2021-07-30 2021-11-05 爱思盟汽车科技(重庆)有限公司 一种用于无人驾驶车辆的冗余备份***
CN114153189B (zh) * 2021-10-27 2023-08-08 东风汽车集团股份有限公司 一种自动驾驶控制器安全诊断及保护方法、***及存储装置

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108092853A (zh) * 2017-12-27 2018-05-29 珠海市君天电子科技有限公司 监控服务器链路状态的方法、装置、***、电子设备及存储介质
CN112637013A (zh) * 2020-12-21 2021-04-09 苏州三六零智能安全科技有限公司 Can总线报文异常检测方法及装置、设备、存储介质

Also Published As

Publication number Publication date
CN114844807A (zh) 2022-08-02

Similar Documents

Publication Publication Date Title
US10447561B2 (en) BFD method and apparatus
CN110601945A (zh) 一种双冗余can总线通信***和通信方法
CN114844807B (zh) ***检测方法、装置、设备、存储介质、车辆和云控平台
CN104243473B (zh) 一种数据传输的方法以及装置
CN105490837A (zh) 一种网络监控处理方法以及装置
CN111835578B (zh) 信息传输管理方法、信息传输管理装置及可读存储介质
CN105530110A (zh) 一种网络故障检测方法以及相关网元
CN114567536B (zh) 异常数据处理方法、装置、电子设备和存储介质
CN115817585A (zh) 基于车车通信的正线免筛方法、装置、设备以及存储介质
CN112217718A (zh) 一种业务处理方法、装置、设备及存储介质
CN116723111B (zh) 业务请求的处理方法、***及电子设备
CN117348010A (zh) 车辆中的雷达控制方法、装置、电子设备及存储介质
CN111169510A (zh) 一种列车通信***
CN116654049B (zh) 一种列车状态数据处理方法、装置、设备及存储介质
CN113630220B (zh) 一种双路冗余通讯方法、装置以及***
CN114513398B (zh) 网络设备告警处理方法、装置、设备及存储介质
CN117872873A (zh) 一种自动驾驶车辆安全控制方法、装置、设备及存储介质
CN115276710A (zh) 应答器传输***、应答器定位补偿方法、设备及介质
CN115550635A (zh) 视频分流故障的处理方法、装置、电子设备及存储介质
TWM608805U (zh) Rs485環狀網路的備援處理系統
CN117527545A (zh) 车载以太网的异常监控方法、装置、电子设备及存储介质
CN118041427A (zh) 卫星地面站监控软件***及其双机备份方法
CN116319420A (zh) 网络探测方法、装置、电子设备、存储介质及程序产品
CN118025210A (zh) 自动泊车过程中域控制器故障诊断***、方法、车辆和存储介质
CN117979348A (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