首页> 中国专利> 用于控制和自动重启技术装置的方法

用于控制和自动重启技术装置的方法

摘要

本发明属于计算机技术领域。它描述安全自动化系统的架构和用于技术装置、例如技术设备(如机器人或车辆、尤其机动车)的安全、自主运行的方法。这里公开的架构解决了如下问题:在分布式实时计算机系统的复杂子系统之一中的任何可能的拜占庭错误,无论该错误是由硬件的意外故障、软件中的设计错误引起,还是由入侵引起,都必须被识别并如此支配,使得不发生安全相关的事件。该架构由四个在很大程度上独立的子系统组成,这些子系统按层级布置并且分别形成封装的故障遏制单元(FCU)。在层级结构的最上面位置的是安全子系统,即容错决策子系统,它在容错硬件上实施简单的软件。其他三个子系统是不安全的,因为它们包含在非容错硬件上执行的复杂软件。

著录项

  • 公开/公告号CN114791830A

    专利类型发明专利

  • 公开/公告日2022-07-26

    原文格式PDF

  • 申请/专利权人 TTTECH汽车股份公司;

    申请/专利号CN202210090926.9

  • 发明设计人 H·科佩茨;

    申请日2022-01-26

  • 分类号G06F9/4401;G06F11/30;

  • 代理机构中国专利代理(香港)有限公司;

  • 代理人韦橙阳;刘春元

  • 地址 奥地利维也纳

  • 入库时间 2023-06-19 16:06:26

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2022-07-26

    公开

    发明专利申请公布

说明书

技术领域

本发明涉及一种用于利用分布式实时计算机系统来控制和自动重启技术装置(例如技术设备,如机器人或车辆、尤其机动车)的方法,其中,实时计算机系统包括子系统,尤其多个子系统,其中,这些子系统按例如层级式地布置,并且其中,这些子系统关于全球时间同步,其方式例如为,存在优选地处在子系统的层级结构之外的时间服务器,其中,时间服务器周期性地向每个子系统发送同步消息,例如发送给每个子系统的时钟,用于同步这些子系统或这些子系统的时钟,以构建全球时间,并且其中,在使用该全球时间的情况下将时间轴划分为一系列的同步的时间片(或称为时隙,即Zeitscheibe)。

本发明还涉及一种实时计算机系统,尤其是分布式实时计算机系统,用于控制技术装置,例如技术设备,如机器人或车辆、尤其机动车,其中,实时计算机系统包括子系统,尤其多个子系统,其中,这些子系统按例如层级式地布置,并且其中,这些子系统关于全球时间同步,其方式例如为,存在优选地处在子系统的层级结构之外的时间服务器,其中,时间服务器被设定用于周期性地向每个子系统发送同步消息,例如发送给每个子系统的时钟,用于同步这些子系统或这些子系统的时钟,以构建全球时间,并且其中,在使用该全球时间的情况下将时间轴划分为一系列的同步的时间片。

本发明属于计算机技术领域。它描述了一种用于在技术装置(如机器人或车辆、尤其机动车)发生瞬态错误后安全、自主地运行和重新启动的方法,和一种用于控制这种技术装置的实时计算机系统。在该文献中,由技术装置和控制该装置的实时计算机系统组成的系统也称为信息物理系统(CPS)。

背景技术

技术装置例如技术设备(如机器人或车辆、尤其机动车)的自主运行需要实时计算机系统,该实时计算机系统使用传感器来观察技术装置(如设备)的环境,借助在实时计算机系统上实施的过程模型来评估传感器数据,并将算出的额定值传输给影响物理过程进展的执行器。例如,可以使用光学传感器(相机)、激光雷达、雷达传感器以及各种其他传感器来观察周围环境。传感器数据的评估、传感器数据的数据融合和必要环境模型的创建,以及轨迹的规划,都需要具有数百万条指令的复杂软件部件。

在许多信息物理系统中,例如在车辆的自主控制中,实时计算机系统中出现的错误可能具有严重影响。这种故障可能由子系统的硬件的暂时的或永久的故障触发,或由软件中的缺陷(设计错误)触发。在安全危急型应用中,系统层面的灾难性故障的平均无故障时间(MTTF)必须在10

但系统的错误行为也可能由入侵触发。如果发生入侵(侵入系统中),入侵者(侵入者)会绕过入侵检测机制并完全控制系统。然后入侵者可以使受感染的子系统产生拜占庭错误。“在信息技术中系统随意地发生错误行为的错误称为拜占庭错误”[WikIb]。因此,拜占庭错误是系统中可能发生的最恶意的错误。

安全实时计算机系统的架构必须确保,实时计算机系统的复杂子系统之一中的任何可能的拜占庭错误,无论是由意外的硬件失效、软件中的设计错误引起,还是由入侵引起,都被识别到并如此支配,使得技术装置被引导至安全状态下。安全状态可以是静态的,即技术装置的运行停止,或者是动态的,即技术装置进入安全运行区域。

下面将区分暂时性的和永久性的错误原因。

如果错误的原因是暂时的,其尚未对尤其是实时计算机系统的计算机硬件或技术装置造成任何永久性损坏,则存在暂时性错误原因。针对暂时性错误的一个示例是由自然宇宙辐射触发的单事件翻转(SEU)[Con02],它导致计算机内存中的一次位翻转,但不会进一步损害存储器的未来的物理功能。

如果错误的原因是永久性的并且已导致计算机硬件或技术装置的永久性损坏,则存在永久性错误原因。针对永久性错误的一个示例是电线路断裂。

由于技术设备的硬件和计算机的硬件即使在发生暂时性错误后也能正常运行,因此原则上可行的事故,一旦因错误原因而损坏的数据结构获得修复,就可以恢复装置的正常运行。

发明内容

本发明的目的是公开一种方法和一种实时计算机系统,其在发生暂时性错误后自动恢复技术设备的正常运行。

该目的利用开头提到的方法由此来实现,即,根据本发明:

每个子系统,且如果存在时间服务器则还有时间服务器,相应地形成自己的故障遏制单元,并且其中,

子系统之一是决策子系统,即所谓的容错决策子系统FTDSS,它优选放置在层级结构的最高层面,其中,FTDSS被设定用于借助消息在每个时间片中将额定值传送至执行器,其中,容错决策子系统FTDSS是安全子系统,即它包含在容错硬件上实施的简单软件,并且其中,

设置至少三个或正好三个数据处理子系统,即一个正常处理子系统NPSS、一个监控子系统MSS和一个危急事件处理子系统CEHSS,它们优选地被放置在下一个较低的层级,其中,这至少三个或正好三个数据处理子系统被设定用于利用传感器来检测用传感器观察到的周围环境的传感器数据,并相互独立地评估这些传感器数据,其中,

数据处理子系统在时间片开始时分别观察周围环境,并在该时间片期间利用通过在时间片开始时对周围环境执行的观察而获得的传感器数据执行计算,并且其中,

i. 正常处理子系统NPSS在每个时间片中、优选在时间片的末端,将针对正常运行的一组额定值在消息中发送给容错决策子系统FTDSS,并且在消息中发送给监控子系统MSS,并且其中,

ii. 危急事件处理子系统CEHSS在每个时间片中、优选在时间片的末端,将针对异常运行的一组额定值在消息中发送给容错决策子系统FTDSS,并且其中,CEHSS在此消息中还向FTDSS通报技术装置是否处于安全状态,并且其中,

iii. 容错决策子系统FTDSS在每个时间片中、优选在时间片的末端,将针对正常运行的接收到的一组额定值在消息中发送给监控子系统MSS,并且其中,优选容错决策子系统FTDSS还在每个时间片中,优选在时间片的末端,将针对异常运行的接收到的一组额定值在消息中发送给监控子系统MSS,并且其中,

iv. 监控子系统MSS在每个时间片中执行检查:针对正常运行的额定值组是否与环境模型兼容,并确保在正常条件下安全地操纵技术装置,监控子系统在所述消息中从正常处理子系统NPSS获得额定值组,该环境模型由MSS基于MSS的传感器数据算出,此外,监控子系统MSS在每个时间片中检查针对正常运行的额定值组是否与相应的额定值组相同,监控子系统从正常处理子系统NPSS在所述消息中获得所述额定值组,所述相应的额定值组从正常处理子系统NPSS通过容错决策子系统FTDSS发送给监控子系统MSS,并且,

如果两个检查都是肯定的,则将正确性指示符(正确性指示符-1)设置为值TRUE,如果两个检查之一是否定的或两个检查都是否定的,则将正确性指示符-1设置为值FALSE,并将正确性指示符-1或将正确性指示符-1的值在每个时间片中在消息中发送给容错决策子系统FTDSS,并且其中,

容错决策子系统FTDSS在每个时间片中做出如下决定:在正确性指示符-1的值为TRUE的情况下,将针对正常运行的一组额定值例如在消息中传输给执行器,在正确性指示符-1的值为FALSE或由FTDSS预期的带有正确性指示符-1的消息缺失的情况下,把针对异常运行的额定值组例如在消息中传送给执行器,其中,在这种情况下,从这个时间点开始,在后续时间片中把针对异常运行的额定值传送给执行器,直到技术装置已达到安全状态,该安全状态由CEHSS优选在消息中通报给FTDSS,并且其中,

容错决策子系统FTDSS在每个时间片中将传送给执行器的额定值在消息中发送给NPSS和MSS,并且其中,

在NPSS和/或MSS基于对消息中包含的额定值的检查确认FTDSS已将针对异常运行的额定值传送给执行器的情况中,触发MSS和NPSS的重启,

其中,一旦

- FTDSS基于CEHSS的消息的内容确认设备处于安全状态,在该消息中,CEHSS报告技术装置是否处于安全状态,并且

- FTDSS在时间片中从NPSS例如在消息中接收一组针对正常运行的额定值,并且

FTDSS在该时间片中从MSS例如利用消息接收具有值TRUE的正确性指示符-1,

则重启结束,

并且其中,重启结束后,FTDSS再次将从NPSS获得的针对正常运行的额定值传送给执行器,从而又可以执行或将执行步骤i.-iv,

并且其中,两个数据处理子系统即NPSS和MSS的重启分别包括以下步骤:

a) 重置数据处理子系统的硬件;

b) 实施测试软件,以便确认数据处理子系统的完整性;

c) 重新初始化和重启数据处理子系统的软件;

d) 利用通过在时间片开始时对周围环境执行的观察而获得的传感器数据执行计算。

此外,该目的利用开头提到的实时计算机系统实现,其中,根据本发明:

每个子系统,且如果存在时间服务器则还有时间服务器,相应地形成自己的故障遏制单元,并且其中,

子系统之一是决策子系统,即所谓的容错决策子系统FTDSS,它优选放置在层级结构的最高层面,其中,FTDSS被设定用于借助消息在每个时间片中将额定值传送至执行器,其中,容错决策子系统FTDSS是安全子系统,即它包含在容错硬件上实施的简单软件,并且其中,

设置至少三个或正好三个数据处理子系统,即一个正常处理子系统NPSS、一个监控子系统MSS和一个危急事件处理子系统CEHSS,它们优选地被放置在下一个较低的层级,其中,这至少三个或正好三个数据处理子系统被设定用于利用传感器来检测用传感器观察到的周围环境的传感器数据,并相互独立地评估这些传感器数据,其中,

数据处理子系统在时间片开始时分别观察周围环境,并在该时间片期间使用传感器数据进行计算,这些传感器数据是通过在时间片开始时对周围环境执行的观察获得的,

i. 正常处理子系统NPSS被设定用于,在每个时间片中,优选在时间片的末端,将针对正常运行的一组额定值在消息中发送给容错决策子系统FTDSS,并且在消息中发送给监控子系统MSS,并且其中,

ii. 危急事件处理子系统CEHSS被设定用于,在每个时间片中,优选在时间片的末端,将针对异常运行的一组额定值在消息中发送给容错决策子系统FTDSS,并且,CEHSS被设定用于,优选在此消息中向FTDSS通报技术装置是否处于安全状态,并且其中,

iii. 容错决策子系统FTDSS被设定用于,在每个时间片中将针对正常运行的接收到的一组额定值在消息中发送给监控子系统MSS,并且其中,优选容错决策子系统FTDSS被设定用于,还在每个时间片中,优选在时间片的末端,将针对异常运行的接收到的一组额定值在消息中发送给监控子系统MSS,并且其中,

iv. 监控子系统MSS被设定用于,在每个时间片中检查针对正常运行的额定值组是否与环境模型兼容,并确保在正常条件下安全地操纵技术装置,监控子系统在所述消息中从正常处理子系统NPSS收到额定值组,该环境模型由MSS基于MSS的传感器数据算出,此外,监控子系统MSS被设定用于,在每个时间片中检查针对正常运行的额定值组是否与相应的额定值组相同,监控子系统从正常处理子系统NPSS在所述消息中已获得或获得所述额定值组,所述相应的额定值组由正常处理子系统NPSS通过容错决策子系统FTDSS发送给监控子系统MSS,并且,

如果两个检查都是肯定的,则将正确性指示符(正确性指示符-1)设置为值TRUE,如果两个检查之一是否定的或两个检查都是否定的,则将正确性指示符-1设置为值FALSE,并将正确性指示符-1或将正确性指示符-1的值在每个时间片中在消息中发送给容错决策子系统FTDSS,并且其中,

容错决策子系统FTDSS在每个时间片中做出如下决定:在正确性指示符-1的值为TRUE的情况下,将针对正常运行的一组额定值例如在消息中传输给执行器,在正确性指示符-1的值为FALSE或由FTDSS预期的带有正确性指示符-1的消息缺失的情况下,把针对异常运行的额定值组例如在消息中传送给执行器,其中,在这种情况下,从这个时间点开始,在后续时间片中把针对异常运行的额定值传送给执行器,直到技术装置达到安全状态,该安全状态由CEHSS优选在消息中通报给FTDSS,并且其中,

容错决策子系统FTDSS被设定用于,在每个时间片中将传送给执行器的额定值在消息中发送给NPSS和MSS,并且其中,

在NPSS和/或MSS基于对消息中包含的额定值的检查确认FTDSS已将针对异常运行的额定值传送给执行器的情况中,触发MSS和NPSS的重启,其中,优选无论NPSS还是MSS都被设定置用于分别触发自己的重启,

其中,一旦

- FTDSS基于CEHSS的消息的内容确认设备处于安全状态,在该消息中,CEHSS报告技术装置是否处于安全状态,并且

- FTDSS在时间片中从NPSS例如在消息中接收一组针对正常运行的额定值,并且

- FTDSS在该时间片中从MSS例如利用消息接收具有值TRUE的正确性指示符-1,

则重启结束,

并且其中,重启结束后,FTDSS再次将从NPSS获得的针对正常运行的额定值传送给执行器,从而又可以执行或执行步骤i.-iv,

并且其中,两个数据处理子系统(即NPSS和MSS)的重启分别包括以下步骤:

a) 重置数据处理子系统的硬件;

b) 实施测试软件,以便确认数据处理子系统的完整性;

c) 重新初始化和重启数据处理子系统的软件;

d) 利用通过在时间片开始时对周围环境执行的观察而获得的传感器数据执行计算。

有关在汽车行业安全相关的应用中用于软件的开发、检测和验证的功能安全的ISO标准ISO 26262,引入了四个ASIL(汽车安全完整性等级)安全等级,即ASIL A(最低安全等级)、ASIL B、ASIL C和ASIL D(最高安全等级)。ASIL D描述了一个非常复杂的软件开发过程,它应该导致无错误的软件。NASA的经验表明[Dvo09],实际上无法消除在复杂软件系统中存在的全部设计错误,该软件系统是具有10,000多个指令的系统。

因此,我们将包含少于10,000条指令并根据ASIL D开发以消除所有设计错误的软件系统或软件称为简单软件系统/简单软件。假定根据ASIL D开发的简单软件系统/软件没有设计错误。

如果软件系统或软件不是简单的软件系统或简单的软件,则我们称其为复杂软件系统或复杂软件。复杂的软件系统或复杂的软件可能包含未识别到的设计错误,例如也包含比如由入侵触发的拜占庭错误。

根据本发明,这里公开的实时计算机系统由至少四个很大程度上独立的子系统组成,这些子系统优选地层级布置,并且其设计是多样的,使得这些子系统在很大程度上彼此独立并且可以相互检查。

术语“很大程度上独立”应表达:完全独立会将需要排除可能同时影响子系统的所有影响因素,如温度、宇宙辐射—其可能触发SEU(单事件翻转)、在事故情况下的延迟、供电等。由于实现完全独立的子系统在技术上是不可能的,因此该术语在很大程度上是独立引入的。

如果给定的任务由采用不同的算法使用不同的开发工具的独立开发团队完成,则两个冗余软件系统是不同的。多样化的软件最大限度地减小了在两个冗余的软件系统中在两个系统内同时发生软件错误的可能性[Avi85]。

如果至少在子系统中使用的软件是多样的,我们将两个冗余的子系统称为多样的。如果使用的硬件也不同,则实现更高程度的多样性。

另外在该架构中存在第五子系统,即时间服务器,其优选地在层级结构之外,并且周期性地向其他子系统发送时间信号,以便同步子系统的时钟并保持全球时间。使用这个全球时间,时间轴被划分为一系列同步的时间片。通常,在时间片开始时带有现有传感器的子系统观察周围环境。在一个时间片期间执行所设置的计算。在时间片的末端,借助消息把计算结果提供给其他子系统。

子系统优选形成独立的故障遏制单元(FCU),[Kop12,p.136-138]。如果所有内部错误原因的直接后果都被封装并且在表面处给出输出消息的定义的错误行为,则子系统是FCU。通过封装,实现使得两个FCU在最大程度上彼此独立。

设置有决策子系统(容错决策子系统-FTDSS),其优选位于层级结构的最顶部的位置。FTDSS包括在容错硬件上实施的简单软件。比如在[Kop12,p.155-157]中描述的容错硬件会屏蔽在硬件中发生的故障。

优选地设置成,为了防止通过因特网侵入FTDSS,FTDSS不具有访问技术装置因特网的任何权限。由于在FTDSS中在容错硬件上实施简单的软件,并且如果无法访问因特网,则可以认为FTDSS是安全的子系统,其正常运行,并实现了低于10

此外,还设置三个子系统,它们优选位于层级结构的下一层:

•在正常运行中控制技术设备例如车辆的子系统—正常处理子系统NPSS。当NPSS的系统设计中关于实时计算机系统的功能及其外围环境即技术装置的机械结构和技术装置所在的环境的所有假设都获得满足时,存在正常运行。我们将违反这些假设之一的行为称为危急事件。不受NPSS管理的危急事件将导致异常运行。

•在异常运行中、即在发生不受NPSS控制的事件后承担对过程(例如车辆)的控制并将过程(车辆)置于安全状态下的子系统—即所谓的危急事件处理子系统CEHSS;

•监控子系统,即监控NPSS和CEHSS的功能的子系统。

这三个子系统中的每一个都是经封装和自主的,并使用多种软件评估传感器数据。由于这三个子系统中的每一个,或者在这些子系统上实施的软件,都包含远超过10,000条指令,所以这三个子系统很复杂。假定如下:复杂的软件系统根据ASIL B开发和验证,并且在运行中直至发生错误的平均时间(MTTF)是10

最坏的情况,即在任何时间点在复杂的子系统之一中发生拜占庭错误,都可以由所描述的架构来支配。这种拜占庭错误—无论错误的原因是硬件错误、软件错误还是入侵—都被所提出的架构识别和支配,尤其因为复杂的子系统形成故障遏制单元。

在从属权利要求中给出了根据本发明的方法和根据本发明的实时计算机系统的有利设计方案。尤其地,可以在根据本发明的方法和/或根据本发明的实时计算机系统中单独地或以任意组合实现以下特征:

•NPSS和/或MSS和/或CEHSS,优选所有这三个数据处理子系统,每个都有一个看门狗,其中,看门狗被设计用来触发相应的数据处理子系统的重启。例如在US 5,513,319中描述了看门狗。

•容错决策子系统FTDSS被设定用于在每个时间片中,优选在时间片的末端,在消息中将针对异常运行的所接收到的一组额定值发送给监控子系统MSS,并且监控子系统MSS在每个时间片中检查针对异常运行的额定值组是否与环境模型兼容,并确保在异常运行中安全地操纵技术装置,监控子系统由危急事件处理子系统CEHSS经由FTDSS尤其借助消息获得该额定值组,该环境模型基于MSS的传感器数据由MSS算出,如果这是这种情况,则将另一个正确性指示符(正确性指示符-2)设置为值TRUE,如果不是这种情况,或者如果在一个时间片内没有从CEHSS接收到针对异常运行的一组额定值,则将正确性指示符-2设置为值FALSE,并且其中,监控子系统MSS然后将正确性指示符-2发送给正常处理子系统NPSS,并且其中,正常处理子系统NPSS在每个时间片中检查从监控子系统MSS获得的正确性指示符-2是否具有值FALSE,如果这是这种情况,则中断技术装置的正常操作,并将技术装置引导至安全状态。

•正常处理子系统NPSS,除了传送针对正常运行的额定值组之外,还在每个时间片中例如在消息中传送针对正常运行的计划轨迹,在该消息中,正常处理子系统将针对正常运行的额定值组发送给监控子系统MSS。

•时间服务器是容错的。

•数据处理子系统是不安全的子系统,即它们包含在非容错硬件上实施的复杂软件。

•数据处理子系统包含多种软件,例如用于计算或检查针对执行器的额定值和/或用于计算一个环境模型或多个环境模型。

•数据处理子系统中的每个都具有自己的一组传感器。

•子系统中的每个都具有自己的供能部。

附图说明

在下文中,依据附图示例性地更详细地阐述本发明。

图1示出了分布式实时计算机系统的架构的概览;

图2示出了借助容错时间服务器实现时钟同步;和

图3示出了借助实时计算机系统的子系统实现时钟同步。

具体实施方式

下面,首先解释所用的术语:

本文档中使用的重要术语解释如下:

异常运行:(例如机动车的)信息物理系统(CPS)在偏离CPS规范及其环境的条件下的运行。

ASIL:汽车安全完整性等级—ISO标准ISO 26262中描述的安全等级。

拜占庭错误:在信息技术中系统随意地发生错误行为时的错误称为拜占庭错误[Wikib]。

危急事件处理子系统(CEHSS):在异常运行中计算针对执行器的额定值的子系统。

信息物理系统(CPS):一种系统,其包括技术装置和控制该装置的实时计算机系统。

多样化的软件:如果给定的任务是由独立开发团队使用不同开发工具,采用不同算法完成的,那么两个软件系统就是多样化的。多样化的软件最大限度地减少了在两个冗余的多样化软件系统中同时发生软件错误的可能性。

简单软件:包含少于10,000个指令并根据ASIL D开发以查找所有设计缺陷的软件。

故障沉默FCU:一种在发生错误时不产生任何输出消息的FCU。

故障遏制单元(FCU):一种子系统,它封装了所有内部错误原因的直接后果,并在表面上具有输出消息的设置的错误行为。通过封装,实现两个FCU在很大程度上彼此独立地发生故障。→故障沉默FCU。

容错决策子系统(FTDSS):一种包含在容错硬件上实施的简单软件的子系统,该子系统决定向执行器提供哪些额定值。

复杂软件:包含超过10,000个指令或未按照ASIL D开发的软件。在复杂的软件中可能含有设计缺陷。

正确性指示符:一种变量,其值可以是TRUE或FALSE,它报告要检查的结果是否正确。

临界事件:触发从正常运行到异常运行的转变的事件。

MTTF—平均故障时间:系统运行中出现故障的平均时间。

监控子系统(MSS):一种子系统,其检查正常处理子系统(NPSS)和危急事件处理子系统(CEHSS)的输出值是否保证安全运行。

正常处理子系统(NPSS):一种在正常运行中计算执行器的额定值的子系统。

正常运行:(例如机动车的)信息物理系统(CPS)的在CPS规范及其环境中包含的条件下的运行。

安全子系统:在容错硬件上实施简单软件的子系统。

子系统:CPS的分布式实时计算机系统的子系统。子系统是一个很大程度上独立的由硬件和软件组成的单元,该单元由输入数据和子系统的内部状态计算输出数据和新的内部状态。子系统通过交换消息与其他子系统进行通信。

轨迹:物体的路径或运动路线。

不安全的子系统:一种子系统,在其中执行复杂的软件或使用非容错的硬件。

子系统的重启:子系统的重启包括子系统的在子系统硬件复位时间点和恢复正常运行时间点之间的所有动作。

图1示出了用于控制技术装置、例如技术设备或机器、如机器人或车辆、尤其机动车的分布式实时计算机系统的结构。

如图1中所示,实时计算机系统包括子系统100、110、120、130,其中,每个子系统都是故障遏制单元,并且这些子系统优选按层级布置。此外在该示例中,实时计算机系统包括处于必要时实现的层级结构之外的时间服务器210。

在实时计算机系统中,以已知方式或借助时间服务器210实现全球时间,借助该全球时间使得子系统100、110、120、130在时间上同步。时间轴被划分为时间片,这些时间片是相同时长的优选直接彼此毗邻的时间段,其中,所有子系统的这些时间片关于全球时间相互同步,从而每个子系统的分别观察的时间片都在同一时间点开始和结束。

子系统之一,即所谓的决策子系统,容错决策子系统(FTDSS)100,其优选地位于层级结构的顶部,可以在每个时间片中借助消息101向执行器150传送额定值。

此外,子系统中的三个被构造为所谓的数据处理子系统,它们相对于FTDSS优选地位于下一个较低的层级。具体而言,这些数据处理子系统是正常处理子系统(NPSS)110、监控子系统(MSS)120和危急事件处理子系统(CEHSS)130。这三个数据处理子系统利用传感器160来检测周围环境的传感器数据,并且优选利用多种软件相互独立地评估这些传感器数据。

容错决策子系统(FTDSS)100是安全子系统,即它包含在容错硬件上实施的简单软件。假定安全子系统如开头时描述的那样根据具体应用满足给定的安全性要求。

数据处理子系统110、120、130可以是不安全的子系统,也就是说,它们可以包含在非容错硬件上实施的复杂软件。假设根据ASIL B开发和验证复杂的软件系统,并且在运行中发生错误的平均时间(MTTF)是10

正常处理子系统(NPSS)110在每个时间片开始时利用优选自己的传感器160观察周围环境,构建环境模型,并计算在正常运行中执行器150的一组额定值。在消息111中,子系统110已计算出的额定值被发送给容错决策子系统(FTDSS)100,并在消息112中被发送给监控子系统(MSS)120。在子系统110识别出违反关于正常运行的假设的情况下,它取消正在进行的过程,并将技术装置置于安全状态下。此外,操作员、例如机动车的驾驶员,可以被告知这一点,并且在必要时可以将控制权交给他。

危急事件处理子系统(CEHSS)130在每个时间片开始时利用优选它自己的传感器160观察周围环境,用多种软件构建自己的环境模型,并在异常运行中算出针对执行器150的一组额定值。它在消息131中将这些额定值发送给容错决策子系统(FTDSS)100。

容错决策子系统(FTDSS)100在每个时间片中接收含有针对正常运行和异常运行的额定值的消息111、131,并将这些额定值在消息102中发送给监控子系统(MSS)120。

监控子系统(MSS)120在每个时间片中检查针对正常运行的额定值组是否与环境模型兼容,并确保在正常条件下安全地操纵技术装置,监控子系统在消息112中直接从正常处理子系统(NPSS)110获得额定值组,该环境模型由MSS 120基于利用传感器160测定的传感器数据采用多种软件算出。

环境模型例如是一种数字数据结构,该数据结构在给定的时间点表示技术装置的环境的对于给定任务重要的特征的映射。针对环境模型的一个示例是对街道和在选定时间点位于街道上的对象的描述。

监控子系统(MSS)120还检查额定值组是否与相应的额定值组相同,监控子系统在消息112中直接从正常处理子系统(NPSS)110获得额定值组,相应的额定值组由正常处理子系统(NPSS)110经由容错决策子系统(FTDSS)100在消息102中发送给监控子系统(MSS)120。

这第二次检查是必要的,因为必须识别出正常处理子系统(NPSS)110的以下恶意的拜占庭错误:有故障的正常处理子系统(NPSS)110向监控子系统(MSS)120发送正确的额定值,向容错决策子系统(FTDSS)100发送有错误的额定值。

如果监控子系统(MSS)120执行的两个检查都是肯定的,则正确性指示符-1被设置为值TRUE。如果两个检查之一是否定的,则正确性指示符-1被设置为值FALSE。在检查之后,监控子系统(MSS)120在消息121中向容错决策子系统(FTDSS)100发送正确性指示符-1。

容错决策子系统(FTDSS)100在每个时间片中做出如下决策:如果正确性指示符-1包含值TRUE,则在消息101中将针对正常运行的额定值组发送给执行器150,在正确性指示符-1包含值FALSE或缺少具有正确性指示符-1的预期消息121的情况下,在消息101中将针对异常运行的额定值组传送给执行器150,并且从这个时间点起,在随后的时间片中只仍把针对异常运行的额定值传送给执行器150,直到技术装置处于安全状态下。不存在具有正确性指示符-1的预期消息121是针对监控子系统(MSS)120的故障沉默失灵的指示符。

容错决策子系统(FTDSS)100包含可以在没有操作系统支持的情况下实现的尤其非常简单的软件。如下这是有利的,因为经验表明操作系统是复杂的,并且并非没有设计错误[Cho01]。

监控子系统(MSS)120还必须在每个时间片中检查针对异常运行的额定值组是否与环境模型兼容,并确保在异常运行中对过程的可靠管理,监控子系统借助消息131、102从危急事件处理子系统(CEHSS)130获得额定值组,该环境模型由MSS基于MSS的传感器160的传感器数据算出。如果这是这种情况,则由监控子系统(MSS)120将另一个正确性指示符(正确性指示符-2)设置为值TRUE,如果不是这种情况,或者如果MSS 120在时间片中未从CEHSS130接收到消息,则把正确性指示符-2设置为值FALSE。需要经由FTDSS 100经由带有消息131、102的弯路来传输针对异常运行的额定值,以便排除危急事件处理子系统(CEHSS)130的拜占庭错误。

监控子系统(MSS)120利用消息122向正常处理子系统(NPSS)110发送正确性指示符-2的值或正确性指示符-2,从而可通知正常处理子系统(NPSS)110是否在危急事件处理子系统(CEHSS)130中发生错误,或者该子系统由于故障沉默错误而出现故障。正常处理子系统(NPSS)110在每个时间片中检查从监控子系统(MSS)120获得的正确性指示符-2是否采用值FALSE,如果这是这种情况,则技术装置由正常处理子系统(NPSS)110引导至安全状态下。

有利的是,数据处理子系统110、120、130中的每一个都借助多种软件执行对传感器数据的分析、对传感器160的传感器数据的融合和/或对轨迹的确定。由此降低在多个子系统中发生相同的软件错误的可能性。

轨迹例如是技术装置为了履行预先给定的任务而可随着时间的推移实施的路径。装置轨迹的特性取决于装置的构造、预先给定的任务和当前的环境条件。例如,车辆在预先给定的环境条件下为了到达其目的地而可以实施的可能路径称为轨迹。

轨迹也可以描述为额定值的时间顺序。

如果数据处理子系统110、120、130中的每一个都具有自己的一组传感器160,则是有利的。由此防止传感器中的故障可能导致多个子系统的相关失灵。

正常处理子系统(NPSS)110在每个时间片中除了发送额定值组之外,还可以在消息112中将针对正常运行的计划轨迹发送给监控子系统(MSS)120,以便给监控子系统(MSS)120提供检查计划轨迹的选项。

此外,容错决策子系统FTDSS 100在每个时间片中,将在消息401、402中传送给执行器150的额定值,也发送给NPSS 110和MSS 120。如果NPSS 110和/或MSS 120基于对在消息401、402中含有的额定值的检查,确认FTDSS 100已经将针对异常运行的额定值传送给执行器150,则触发MSS 120和NPSS 110的重启。

在消息131中,CEHSS 130通知FTDSS 100技术装置是否处于安全状态。

两个数据处理子系统(即NPSS 110和MSS 120)的重启,在此分别包括以下步骤:

a) 重置数据处理子系统的硬件;

b) 实施测试软件,以确认数据处理子系统的完整性;

c) 重新初始化和重启数据处理子系统的软件;

d) 利用通过在时间片开始时对周围环境进行的观察而获得的传感器数据执行计算。

一旦

- FTDSS 100基于CEHSS 130的消息131的内容确认设备处于安全状态,在该消息中,CEHSS 130报告技术装置是否处于安全状态,并且

- FTDSS 100在时间片中从NPSS 110例如在消息111中接收一组针对正常运行的额定值,并且

FTDSS 100在该时间片中从MSS 120例如利用消息121接收具有值TRUE的正确性指示符-1,

则重启结束。

重启结束后,FTDSS 100再次将从NPSS 110获得的针对正常运行的额定值传送给执行器。

优选地,无论NPSS 110还是MSS 120,都被设计用来触发它们本身的重启。例如,NPSS 110和MSS 120为此分别具有看门狗,该看门狗可以触发相应的数据处理子系统110、120的重启。优选地,CEHSS 130也具有可以触发CEHSS 130重启的看门狗。

图2示出了时间服务器210,如其示例性地在图1的实时计算机系统中可设置的那样,该时间服务器周期性地向子系统100、110、120、130发送同步消息211,以同步各子系统的时钟。有利的是,时间服务器210被实施为容错的。

由于四个子系统100、110、120、130是具有独立振荡器/时钟的自主FCU,因此也可以使用这四个子系统本身来实现容错的时钟同步,以形成全球时间。图3示出了与四个子系统100、110、120、130进行为了容错的时钟同步所需的消息交换,如[Kop12,第69-74页]中所述。为此,必须在每个同步周期中交换以下同步消息:

·从子系统100到子系统110的同步消息301

·从子系统110到子系统100的同步消息310

·从子系统100到子系统120的同步消息302

·从子系统120到子系统100的同步消息320

·从子系统100到子系统130的同步消息303

·从子系统130到子系统100的同步消息330

·从子系统110到子系统120的同步消息312

·从子系统120到子系统110的同步消息321

·从子系统120到子系统130的同步消息323

·从子系统130到子系统120的同步消息332

·从子系统110到子系统130的同步消息313

·从子系统130到子系统110的同步消息331

一般来说,为了能够防止中央电源的故障导致所有子系统100、110、120、130、210的故障,有利的是,子系统100、110、120、130、210中的每一个都具有独立的供能部(例如通过自己的电池)。

以下概述最终表明了如何识别和处理在子系统中发生的错误或入侵。

故障分析

引用的文献:

[Avi85]Avizienis,A. The N-Version Approach to Fault-Tolerant Systems.IEEE Trans. on Software Engineering. Vol. 11, No 12, pp. 1491-1501. 1985.

[Cho01]Chou,A.等,An Empirical Study of Operating System Errors. Proc.of the ACM SOPS 2001 pp. 73-88. 2001

关于功能安全的ISO标准ISO 26262。

[Dvo09] Dvorak, D.L. Editor. NASA Study on Flight SoftwareComplexity. Final Report. Jet Propulsion Laboratory, Pasadena, Cal. USA.2009.

[Kop11] Kopetz, H. Real-Time Systems—Design Principles forDistributed Embedded Applications. Springer Verlag(斯普林格出版社). 2011

[WikIb]维基百科,Definition von einem byzantinischen Fehler(拜占庭错误的定义)

网址:https://de.wikipedia.org/wiki/Byzantinischer_Fehler

[Con02] Constantinescu,C.. Impact of deep submicron technology ondependability of VLSI circuits. Proceedings International Conference onDependable Systems and Networks, Washington, DC, USA, pp. 205-209, 2002

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号