CN112740122A - 用于监视安全关键过程的自动化*** - Google Patents
用于监视安全关键过程的自动化*** Download PDFInfo
- Publication number
- CN112740122A CN112740122A CN201980061218.9A CN201980061218A CN112740122A CN 112740122 A CN112740122 A CN 112740122A CN 201980061218 A CN201980061218 A CN 201980061218A CN 112740122 A CN112740122 A CN 112740122A
- Authority
- CN
- China
- Prior art keywords
- user program
- automation system
- secure
- platform
- runtime environment
- 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.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims abstract description 44
- 230000008569 process Effects 0.000 title claims abstract description 37
- 238000012544 monitoring process Methods 0.000 title claims abstract description 19
- 230000002093 peripheral effect Effects 0.000 claims abstract description 46
- 238000012360 testing method Methods 0.000 claims description 34
- 230000008878 coupling Effects 0.000 claims description 6
- 238000010168 coupling process Methods 0.000 claims description 6
- 238000005859 coupling reaction Methods 0.000 claims description 6
- 230000006870 function Effects 0.000 description 44
- 238000004891 communication Methods 0.000 description 33
- 238000012806 monitoring device Methods 0.000 description 32
- 238000013461 design Methods 0.000 description 8
- 238000012545 processing Methods 0.000 description 8
- 238000011161 development Methods 0.000 description 6
- 238000004364 calculation method Methods 0.000 description 5
- 238000010586 diagram Methods 0.000 description 5
- 230000000295 complement effect Effects 0.000 description 4
- 230000003993 interaction Effects 0.000 description 3
- 230000004044 response Effects 0.000 description 3
- 230000001960 triggered effect Effects 0.000 description 3
- 206010009944 Colon cancer Diseases 0.000 description 2
- 230000004913 activation Effects 0.000 description 2
- 239000008186 active pharmaceutical agent Substances 0.000 description 2
- 238000013459 approach Methods 0.000 description 2
- 238000000586 desensitisation Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 230000006872 improvement Effects 0.000 description 2
- 238000002347 injection Methods 0.000 description 2
- 239000007924 injection Substances 0.000 description 2
- 230000009257 reactivity Effects 0.000 description 2
- 238000004458 analytical method Methods 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 230000009849 deactivation Effects 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 230000009977 dual effect Effects 0.000 description 1
- 238000011156 evaluation Methods 0.000 description 1
- 238000000605 extraction Methods 0.000 description 1
- 238000009434 installation Methods 0.000 description 1
- 230000005012 migration Effects 0.000 description 1
- 238000013508 migration Methods 0.000 description 1
- 230000000737 periodic effect Effects 0.000 description 1
- 230000011664 signaling Effects 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 230000001052 transient effect Effects 0.000 description 1
- 230000007704 transition Effects 0.000 description 1
- 229940088594 vitamin Drugs 0.000 description 1
- 229930003231 vitamin Natural products 0.000 description 1
- 235000013343 vitamin Nutrition 0.000 description 1
- 239000011782 vitamin Substances 0.000 description 1
- 150000003722 vitamin derivatives Chemical class 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B19/00—Programme-control systems
- G05B19/02—Programme-control systems electric
- G05B19/04—Programme control other than numerical control, i.e. in sequence controllers or logic controllers
- G05B19/042—Programme control other than numerical control, i.e. in sequence controllers or logic controllers using digital processors
- G05B19/0423—Input/output
- G05B19/0425—Safety, monitoring
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B9/00—Safety arrangements
- G05B9/02—Safety arrangements electric
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B19/00—Programme-control systems
- G05B19/02—Programme-control systems electric
- G05B19/04—Programme control other than numerical control, i.e. in sequence controllers or logic controllers
- G05B19/05—Programmable logic controllers, e.g. simulating logic interconnections of signals according to ladder diagrams or function charts
- G05B19/058—Safety, monitoring
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/10—Program control for peripheral devices
- G06F13/12—Program control for peripheral devices using hardware independent of the central processor, e.g. channel or peripheral processor
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B2219/00—Program-control systems
- G05B2219/10—Plc systems
- G05B2219/14—Plc safety
- G05B2219/14012—Safety integrity level, safety integrated systems, SIL, SIS
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Automation & Control Theory (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Storage Device Security (AREA)
- Programmable Controllers (AREA)
- Hardware Redundancy (AREA)
- Debugging And Monitoring (AREA)
- Safety Devices In Control Systems (AREA)
Abstract
本发明涉及用于监视安全关键过程的自动化***(10),该自动化***(10)包括用于执行用户程序(24,26)的平台(12),并且包括故障安全***组件(20),安全关键过程可以经由该故障安全***组件(20)耦合至用户程序(24,26)。第一用户程序和与第一用户程序有多种冗余的第二用户程序一起产生安全功能(28)。自动化***(10)另外地具有安全运行时环境,该安全运行时环境独立于用户程序(24,26)在平台(12)上实现,并且自动化***(10)另外地被设计成独立于平台(12)向用户程序(24,26)提供安全资源(30)。
Description
本发明涉及用于监视安全关键过程的自动化***、相应的方法以及在平台上用于提供安全资源的安全运行时环境。
用于监视安全关键过程的自动化***用来减少由技术设备对人员和环境造成的风险。为此,实现安全功能,以在发生危险时将技术***或安全关键过程转换为安全状态。根据DIN EN ISO 13849-1和DIN EN ISO 12100,术语安全功能是指机器的与安全有关的控制功能,其将从机器产生的风险降低至可接受的水平。安全功能是例如在按下紧急停止按钮之后关闭机器。
最初,安全功能通过单独的安全组件例如通过具有继电器技术的安全开关装置的形式来实现,所述单独的安全组件独立于要被监视的设备的控制***而起作用。在进一步的发展中,安全开关装置然后在逻辑上彼此链接,以实现更复杂的安全功能。
如今,安全控制器用于甚至更复杂的任务。安全控制器主要源于期望能够通过与可编程逻辑控制器(PLC)类似的方式进行编程来互连安全性。因此,安全控制器在其实际功能中与PLC控制器仅略有不同。本质上,安全控制器对应于两个单独的PLC控制器,所述两个单独的PLC控制器并行地执行用户程序,使用输入/输出的相同过程图像,并且不断地彼此同步。
然而,在内部,为了实现与安全有关的要求,安全控制器的结构与PLC控制器有很大不同。因此,安全控制器通常与PLC控制器的不同之处在于安全控制器具有两个单独的通道、具有不同硬件的多样化结构、对输入和输出的连续测试、对用户数据的连续比较、电压和时间监视以及在故障或危险情况时的安全关闭。另外,安全功能中涉及的部件——尤其是CPU(中央处理单元)——必须是故障安全的。为了实现符合标准的安全性,特别是为了达到根据IEC 61508的安全完整性水平(SIL 3),因此最初冗余地使用CPU,即至少两个CPU彼此监视。
从EP 1 043 641 A2中已知一种基于标准CPU的故障安全自动化***。错误控制措施尽可能集成到用户程序中,并且包括:安全协议、临时程序流控制、逻辑程序和数据流控制、通过信息冗余进行的数据保护、多样化处理以及过程错误容忍时间内的自测试。在过程错误容忍时间内测试不能多样化地实现的命令。另外,为了检测在多个错误发生时间内的多个错误,由CPU的操作***执行背景测试。
根据EP 1 043 641 A2的安全性概念的一个缺点是,所提到的故障控制措施取决于处理器,并且因此,对于根据IEC 61508的SIL 3,必须确保处理器的故障安全性。然而,对于复杂的处理器,基于处理器的故障模式影响分析(FMEA)的至少99%的诊断覆盖率(DC)不再可行。另一方面,EP 1 043 641 A2中使用的处理器是一种直接处理所提供的代码的低复杂性的特殊ASIC。因此,可以利用合理的支出来执行处理器的故障安全性的证明。然而,当使用其他标准CPU时,不能直接执行相应代码,从而还必须分析根据相应代码创建机器代码的编译器。此外,针对多层故障的检测,需要与硬件有关的背景测试,这些与硬件有关的背景测试在标准CPU上无法实现或不能以足够的效率来实现,并且因此当使用标准CPU时必须单独地实现。
所谓的软件编码处理(SCP)追求一种独立于处理器的方法。由SCP扩展的***能够在运行时揭示瞬时错误、永久错误和***执行错误。另外,可以检测并显示不同程序(功能程序、中间件、操作***)之间的干扰。SCP的已知变型是所谓的AN编码,即其中程序的每个值乘以常数A特别是乘以素数的算术编码。***中所有不是A的倍数的值和状态随后都被视为无效状态。
Perrin,J.P.:Control,Computers,Communications in Transportation——选自IFAC/IFIP/IFORS研讨会的论文选集,英国佩加蒙,牛津,1990年,第79-84页(IFAC/IFIP/IFORS Symposium,Pergamon,Oxford,UK,1990,p.79-84)——中的Form,P.:"Vital codedmicroprocessor principles and application for various transit systems"描述了用于基于编码处理的故障安全***的初始方法。所描述的***包括对输入信号进行编码的故障安全输入模块和根据通过编码操作而编码的输入信号来计算状态和输出信号并在其上创建签名的标准CPU(编码的单处理器)。故障安全动态控制器检查由标准CPU计算得出的签名并在发生错误时关闭安全输出模块。因此,该方法将算术编码(与素数A相乘)与签名方法(静态签名、动态签名)结合,并且完全地实现对诊断覆盖率的计算确定,而不必执行CPU的复杂FMEA。
Martin Süβkraut and Kaienburg,"Safety critical smart systemswith software-coded processing"描述了基于SCP的故障安全***的实际实现方式。该实现方式基于相同安全功能的两个不同(多样化)执行(本机和编码的),并且由于该实现方式的特殊设计而支持诸如IEC 61508的行业标准。本机执行对应于安全功能的原始源代码的执行(本机程序),并且处理本机输入值和状态。因此,仅处理本机状态,并且本机执行的结果是本机输出。在编码后的执行中,执行原始安全功能的编码后的形式(编码后的程序)。这要求安全功能的原始源代码已经被预先转换和编码。然后,编码后的程序对编码后的输入值、编码后的状态进行操作,并且产生编码后的输出。本机程序和编码后的程序两者对相同的输出值进行操作,其中编码后的输入值是本机输入值的编码后的变型。这同样适用于状态和输出值。本机程序和编码后的程序由所谓的多样化框架执行和管理。通过利用适当的注释丰富源代码,从原始安全功能的源代码生成多样化框架。多样化框架协调两个程序(本机程序和编码后的程序)的并行执行,并且使用其在本机输出值和编码后的输出值之上构建的校验和来检查无错误的执行。此外,多样化框架可以通过使多样化框架集成控制流检查数据流使得任何控制流错误都会更改输出校验和来监视安全功能的控制流。
然而,上述基于SCP的方法的缺点在于,编码后的操作花费大量的运行时间并且代码生成昂贵且复杂,尤其是在还使用签名方法的情况下。例如,对于SPC,与本机变型相比,编码后的程序需要更多的位来存储和处理值。例如,如果本机程序使用32位数据类型,则编码后的程序必须至少使用可以存储A乘以32位数据类型的最大可能值的数据类型。因此,如果本机程序使用32位数据类型,则编码后的程序通常利用64位数据类型来实现。同样地,所有本机操作都将被相应的编码后的操作替换,所述相应的编码后的操作的执行比本机操作花费更多的运行时间并且需要相应的复杂工具链以进行所述相应的编码后的操作的执行的创建。
在这种背景技术下,本发明的目的是指定一种避免了上面的缺点的安全自动化***,其基于标准部件并且同时实现高安全类别的符合标准的安全功能的实现方式。此外,自动化***在使用中应当不复杂并且灵活。
根据本发明的一个方面,提供了一种用于监视安全关键过程的自动化***,该自动化***包括:用于执行用户程序的平台;故障安全***模块,安全关键过程可以经由该故障安全***模块耦合至用户程序;第一用户程序和第二用户程序,所述第一用户程序和所述第二用户程序一起实现安全功能,第二用户程序相对于第一用户程序是多样化的;以及安全运行时环境,该安全运行时环境独立于用户程序在平台上实现并且被配置成独立于平台向用户程序提供安全资源。
根据本发明的另一方面,提供了一种用于监视安全关键过程的相应方法,包括下述步骤:
提供用于执行用户程序的平台;
经由故障安全***模块将用户程序与安全关键过程耦合;
通过第一用户程序和第二用户程序实现安全功能,第二用户程序与第一用户程序不同;
提供独立于平台并通过独立于用户程序在平台上实现的安全运行时环境提供的安全资源;以及
使用安全资源在平台上执行第一用户程序和第二用户程序。
因此,本发明的构思是在安全运行时环境中封装安全自动化***的安全关键要求。安全运行时环境在执行平台与实现安全功能的用户程序之间形成软件层。安全功能由两个用户程序冗余且多样化地执行,并且由安全运行时环境进行监视。进而可以例如通过外部安全装置独立于用户程序监视安全运行时环境。因此,将安全关键要求从用户程序中移出到通常有效的安全运行时环境中。
该平台可以为用作开发和执行用户程序的基础的软件、硬件或虚拟平台。特别地,平台可以为非安全平台,例如诸如标准PC的单通道***。替选地,平台可以以云计算的形式来提供,特别地作为基础设施即服务(IaaS)或平台即服务(PaaS)来提供。平台即服务(PaaS)可能已经包括安全运行时环境。在该上下文中,非安全意指非安全平台本身不满足相关的安全要求,从而无法自行执行具有固有安全性的所需水平的安全功能。
根据实现方式,不必将平台设计成故障安全的,以实现整个自动化***的高度诊断覆盖率。这主要通过安全运行时环境来实现。安全运行时环境加载由应用程序员开发的程序并在平台上运行它们。安全运行时环境是针对相应平台实现的,并且因此安全运行时环境本身表示可以在其上构建程序的小型平台。安全运行时环境通常是有效的,并且独立于用户程序实现,并且因此也可以独立于用户程序移植到不同的平台。
通过使用安全运行时环境,如果安全功能由并行地运行且多样化的两个用户程序实现,则足以实现高度诊断覆盖率。在该上下文中,多样化意指第一用户程序和第二用户程序使用不同的计算装置来确定相同的结果。通过比较两个用户程序的结果,可以检测出由共同原因引起的错误。
然而,与SCP的意义上的编码后的程序版本相反,多样化程序版本更简单,并且可以从原始程序中用很少的努力来创建,这是由于特别是不使用编码操作,而仅使用现有操作的对应方法。与编码处理不同,多样化处理没有附加的冗余,这意指多样化程序不会比原始程序复杂得多,并且因此不需要更多的运行时间。同时,在SCP的意义上,用于创建多样化程序的工具链可以比用于创建编码程序版本的工具链简单。
可以用高级语言例如C以单通道方式编写第一用户程序,并且自动地生成多样化程序版本。因此,应用开发者可以仅关注安全功能的实现方式,而无需考虑安全执行的细节。特别地,由于不需要针对执行而创建附加执行框架(多样化框架),因此不需要开发者向本机程序添加附加注释,这是由于执行由安全运行时环境统一地协调。
安全运行时环境加载第一用户程序和根据第一用户程序生成的第二用户程序,执行它们,并且协调它们的交互。对于执行,安全运行时环境提供安全资源优选地为冗余资源和多样化资源,例如每个通道的过程数据、计时器或诸如安全校验和计算的基本功能。除了用于用户程序的安全功能模块之外,安全资源还可以包括运行时库,该运行时库可以接管测试功能并在运行时保护用户程序。因此,这些运行时库可以包括能够独立于用户程序与外部安全装置进行协调的服务。
因此,本发明的关键方面之一是使自动化***整体上安全而不关注单独部件的故障安全性。根据本发明的方面,安全自动化***的每个部件被设计成仅与它所需要的一样安全,以便与其他部件结合保证自动化***的高安全水平。以这种方式,可以在自动化***的所有水平上在安全性与实现方式努力之间实现足够的平衡。
在优选的改进中,平台为非安全平台。在该改进中,平台的至少一些部件为不具有安全应用所需的固有故障安全性的标准的非***件。然而,标准的现成部件较便宜,并且通常可以与相当的***件相比提供更多的计算能力。因此可以以特别成本有效的方式实现自动化***。
在另外的改进中,第二用户程序处理与第一用户程序相反的数据。以这种方式,可以特别容易地实现多样化处理。由于第二用户程序处理相反数据,因此该用户程序必须执行相应调整的操作。然而,这些操作通常可以通过公共操作的互补对应方式来实现,因此与第一用户程序相比,第二用户程序的复杂性没有显著地增加。
在另外的改进中,安全运行时环境向第一用户程序和第二用户程序冗余且多样化地提供安全资源。以这种方式,可以在不使用户程序更复杂的情况下进一步提高安全性。提供冗余且多样化的安全资源比在用户程序本身中实现相同的措施容易。此外,可以更容易地重新使用安全资源。
在另外的改进中,安全运行时环境被配置成在第一用户程序与第二用户程序之间执行交叉比较。在该改进中,安全运行时环境也实现了安全所必需的交叉比较。由于应用开发者不必担心设计和执行这些比较,因此可以进一步简化用户程序的开发。
在另外的改进中,安全运行时环境被配置成提供计时器作为安全资源,并且利用测试验证这些计时器。这种改进进一步简化了用户程序的开发,这是由于可以容易地包括安全资源而不必单独地检查它。
在另外的改进中,安全运行时环境可耦合至外部安全装置。在该改进中,可以由外部安全提供者连续地验证安全运行时环境。因此,可以在外部检查安全运行时环境提供的安全资源,而无需用户程序本身与外部实体进行通信。由于相关的安全功能被封装在安全运行环境中,因此这进一步简化了用户程序的开发。
在另外的改进中,安全运行时环境被配置成执行操纵器,该操纵器被配置成操纵第一用户程序、第二用户程序和/或安全资源的执行。因此,安全运行时环境可以执行进行目标篡改的服务,以模拟错误,从而在所述服务的真实位置处测试故障控制措施的功能。以这种方式,可以针对整个***实现特别高的安全水平。
操纵器可以由外部安全装置触发,并且可以被配置成使安全运行时环境对错误不敏感。以这种方式,可以在程序中的真实位置处测试***行为。
在另外的改进中,安全运行时环境具有特定于硬件的部件和非特定于硬件的部件。这种改进实现了安全运行时环境的特别有效的实现以及安全运行时环境到其他平台的容易的移植。当移植时,仅需要替换特定于硬件的部件,而非特定于硬件的部件则保持不变。由此,不仅安全运行时环境的灵活性提高了,而且安全运行时环境提供的安全性也提高了,这是由于不必每次都重新实现***件。
在另外的实施方式中,非特定于硬件的部件可以独立于特定于硬件的部件耦合至外部安全装置。在该改进中,安全运行时环境与外部安全提供者的耦合唯一地通过非特定于硬件的部件进行,使得耦合独立于平台实现。因此,可以特别容易地并且独立于平台来实现与外部安全装置的耦合。
应当理解,在不脱离本发明的范围的情况下,不仅可以在每种情况下指示的组合中使用上述特征以及下面将要说明的特征,而且可以以其他组合方式或单独地使用上述特征以及下面将要说明的特征。
在附图中示出了本发明的实施方式的示例,并且将在下面的描述中对其进行更详细的说明。
图1示出了根据第一实施方式的自动化***的示意性表示。
图2示出了根据另外的实施方式的自动化***的安全模型的示意性表示。
图3示出了自动化***的架构模型的示意性表示。
图4示出了根据实施方式的自动化***的错误例程的状态图。
图5示出了根据第二实施方式的自动化***的示意图。
图6示出了根据第二实施方式的两个变型。
图7示出了根据第二实施方式的自动化***的电路图。
在图1中,自动化***的第一实施方式其整体由附图标记10表示。在此,自动化***10包括一起形成安全自动化***的硬件部件和软件部件。在该上下文中,安全意指对于所实现的安全功能,由自动化***可以实现根据IEC 61508的安全完整性水平3。
自动化***包括用作数据处理装置和计算单元的平台12。平台12可以是专用硬件14、真实计算***或虚拟计算***16或者作为云服务提供的基础设施18。平台12还可以包括上述设备的组合。
平台12可以为非安全平台,或者可以至少部分地由非***件组成。在该上下文中,非安全意指平台12的部件不提供在相关安全标准的意义上足以自行实现安全***的固有安全性。因此,平台12可以由例如市售PC硬件组成,并且可以特别地包括标准处理器。类似地,在各种实施方式中,平台或平台的部件可以以云计算的形式提供。
平台12可以包括硬件部件和软件部件。例如,平台12可以为运行非安全实时操作***(RTOS)例如各种Linux衍生产品的非安全装置,例如PC或树莓派(RaspberryPi)。
自动化***10还包括至少一个故障安全(fail-safe,FS)***模块20,所述至少一个故障安全***模块20用于进行从过程的故障安全输入和到过程的故障安全输出。故障安全***模块20使得自动化***能够连接至过程。***模块20的故障安全以及***模块20与自动化***10之间的与安全有关的通信是通过安全技术领域中公知的原理来实现的,并且在本文中不再进一步赘述。
平台12和故障安全***模块20一起形成了安全自动化***10的基础和接口,而在平台上实现的安全运行时环境22连同用户程序24、26一起实现实际的安全功能28。
安全运行时环境22是设置在平台12与用户程序24、26之间的软件层,并且独立于平台12向用户程序24、26提供安全资源30。安全运行时环境22加载用户程序24、26,在平台上执行它们,并且协调它们的互连。因此,安全运行时环境22本身表示一个小平台,借助于该小平台执行用户程序24、26。
优选地,用户程序24、26特别地针对平台12而形成,即,以可以被转换为平台12的本机代码以用于执行的编程语言来编写。因此,安全运行时环境22不是用于执行用户程序24、26的“操作***”,而是仅封装用于用户程序24、26的安全资源30使得它们可以包括在用户程序24、26中而无需用户程序24、26来确保安全资源30的故障安全执行。安全运行时环境22可以进而被划分为特定于平台的部件和独立于平台的部件,其中特别地安全资源30由独立于平台的部件来实现使得安全运行时环境22可以容易地移植到不同的平台。
安全功能28可以是任何安全功能,例如紧急停止、双手控制或远程I/O。安全功能28因此是由自动化***实现的与安全有关的控制功能。可以由并行地执行的两个用户程序24、26来实现与安全有关的控制功能。除了冗余之外,用户程序可以具有多样化设计,即,用户程序24、26以不同的方式实现相同的结果。
如果验证了在计算中使用的处理器的各部分的互不反应或者处理器的相同部分的多样化使用的互不反应,则认为该计算是完全多样化的。这样的证明通常需要硬件测试,如果这些硬件测试可以通过附加测试和安全运行时环境的安全资源30来补偿并且可以进行外部验证,则可以在SCP的意义上在编码处理的情况下省略这些硬件测试并且在根据本公开内容的自动化***的情况下也可以省略这些硬件测试。
在优选实施方式中,第一用户程序24与第二用户程序26之间的多样化是通过第二用户程序26对与第一用户程序24有关的多样化数据进行操作并因此针对相同的计算步骤使用不同的指令来实现的。相反数据的使用不提供完全的多样化,但是相反数据的使用提供足够的多样化以使得与安全运行时环境22及其提供的测试31结合能够提供足够的故障安全。
根据定义的转换方案,可以容易地从本机程序版本自动地生成处理相反数据的程序版本(下面称为相反用户程序)。因此,可以以与本机用户程序相当的努力来执行相反用户程序。此外,与在SCP的意义上的编码后的用户程序不同,相反用户程序可以处理相同的数据类型并且依赖于相同的指令集,这是因为利用相反数据进行的计算基于相同的算法。因此,相反用户程序与基于算术编码例如AN编码的编码后的用户程序相比不那么复杂。另外,可以以较少的努力来实现用于从本机程序版本中创建相反程序版本的工具链。由于简化的工具链,因此可以快速移植到其他***或使用其他编程语言。因此可以增加整体灵活性。
因此,该概念尤其基于这样的假定:虽然根据SCP进行的编码后的处理可以比本文中提出的多样化处理更明确且更可靠地揭示应用程序中的执行错误,但是这样做所需要的努力是不合理的,这是由于始终需要将应用集成至安全模型中,以实现高安全分类。
因此,这是一个构思,替代增加单独部件的固有故障安全性例如通过SCP来增加用户程序的固有故障安全性,而是执行总体评估并使自动化***的单独部件尽可能必要地安全,使得创建一个总体上安全的自动化***,该总体上安全的自动化***可以根据高安全水平来执行安全功能。因此,本概念的一个焦点是使自动化***的单独部件即特别地用户程序24、26、安全运行时环境22和平台12尽可能简单且灵活,使得在自动化***的所有水平上都实现安全性、复杂性与移植性之间的平衡的取舍。
图2示出了根据优选实施方式的自动化***的安全模型的示意性表示。
在此,安全运行时环境22部署在具有非安全实时操作***34的非安全装置32上。非安全装置32和非安全实时操作***一起形成平台12。安全运行时环境22是软件层,该软件层一方面在资源层36中针对独立于平台12的用户程序24、26提供安全资源30,并且另一方面形成用于监视用户程序24、26和由用户程序24、26实现的安全功能的本地安全实例38。此外,用户程序24、26经由安全***模块20连接至要被监视的过程。
安全运行时环境22进而可以由安全装置监视。安全装置(下文也称为安全起搏器(SPM)40)可以是具有一个或更多个简单的微控制器例如PIC和/或AVR的简单的硬件加密狗,例如市售USB棒形式的简单的硬件加密狗。将理解的是,硬件加密狗不限于USB接口,而是SPM 40也可以经由以太网、RS232或其他通信接口连接。
SPM 40实现第二——优选地外部的——安全实例41。第二安全实例41通过选择性的错误注入来测试安全运行时环境22,特别是测试第一本地安全实例38。错误注入经由由外部安全实例41激活的安全运行时环境22的服务和操纵器发生。由此,可以检查安全运行时环境22的数据比较器、***时钟和计时器测试,并且可以公开用户程序24、26的执行中的错误,而不必在用户程序24、26的开发期间考虑和/或实施适当的测试。因此,可以以单通道方式编写第一用户程序24,而无需应用程序员考虑用户程序的故障安全性。可以通过适当的工具链自动地生成与第一用户程序不同的第二用户程序26。由此,应用开发者可以唯一地专注于实现实际的安全功能。
在优选实施方式中,SPM 40可以另外地提供安全时钟信号42,特别地以在故障安全***模块20处实现第二关闭路径。
图3示出了其中嵌入自动化***10的实施方式的架构模型。
该架构模型基本上包括三个部件。这些部件是自动化***10、外部安全单元例如上述SPM 40、以及在这两个部件之间的通信接口44。
所有三个部件可以包括非特定于硬件的层46和特定于硬件的层48。在自动化***10中,安全运行时环境22利用称为***提取层(SAL)的特定于硬件的部件将特定于硬件的层48与非特定于硬件的层46解耦。SAL50从操作***52和任何相关联的硬件54中提取安全运行时环境22。由操作***驱动器58寻址的专用硬件56可能由独立的SAL驱动器60提取。
在非特定于硬件的层46中,自动化***10实现资源层36。资源层36提供安全资源,并且如本文所示,资源层36优选地是冗余且多样化的。资源层36可以针对每个通道提供计时器以及过程数据。另外,资源层36可以提供与安全有关的功能,例如安全的CRC计算。
应用管理器62a、62b位于资源层36的顶部,优选地,针对每个用户程序24、26一个应用管理器。应用管理器检查两个应用程序24、26在启动时的一致性以及两个应用程序24、26的CRC的一致性。应用管理器62a、62b可以进一步负责循环地调用应用程序,监视应用程序的执行以及提供API。API可以包括用于设置输出的功能、用于读取输入的功能以及用于启动并读取应用计时器的功能。如本文所示,应用管理器62a、62b可以具有双重且多样化的设计。
自动化***10的安全运行时环境22还实现本地安全实例38。本地安全实例38可以执行必要的安全任务。安全任务可以包括RAM测试和ROM测试、周期和顺序监视以及计时器测试。此外,本地安全实例38可以执行用户程序24、26的过程数据的一致性检查。为此,本地安全实例38可以在***上仅运行一次并且可以经由SPM 40在外部进行检查。
SPM 40是具有例如由两个冗余处理器64a、64b形成的安全硬件的故障安全装置,所述两个冗余处理器64a、64b允许以本身已知的方式安全地执行应用。由于就自动化***10的用户程序而言,SPM不执行用于控制的用户程序,因此硬件可以具有简单的设计。特别地,可以将特殊安全CPU用于处理器64a、64b,这例如可以通过FMEA切实地确保故障安全性。
可以在SPM 40上执行第二安全实例41。可以以独立于硬件的方式来实现第二安全实例,并且可以通过提取层66将第二安全实例与硬件解耦。第二安全实例41可以经由通信接口44与自动化***10的第一安全实例38进行通信。
通信接口44可以是没有任何特殊安全设计的单通道通信接口。可以经由黑通道原则(Black-Channel-Principal)通过自动化***10的本地安全实例38与外部安全装置的第二安全实例41的交互来确保通信的故障安全。
在优选实施方式中,安全运行时环境22和SPM 40利用超时监视以固定周期彼此通信。当由SPM 40提示时,在某些点处故意地伪造数据(例如定时器值、序列控制等)。为此,安全运行时环境22具有可以由SPM 40激活的操纵器,例如,由SPM 40将操纵器的对应ID发送至安全运行时环境22来激活。SPM 40随后期望来自安全运行时环境22的适当的错误响应。换句话说,在已经发送了操纵器ID之后,SPM 40期望安全运行时环境22的某种行为。
安全运行时环境22可能由于操纵器而没有由用户可检测到的错误,或者由于有意篡改而关闭输出。因此,该错误必须由安全运行时环境22捕获。该概念使得可以在程序运行时实时测试***行为。
图4以状态图示出了在检查期间SPM 40和自动化***10可以采取的可能状态。
在正常状态A下,安全运行时环境22等待错误以对其作出响应。在这种状态下,如果安全运行时环境22从SPM 40接收到优选地包括定义的位掩码的操纵器ID,则相应的操纵器被激活。然后,安全运行时环境22转换为状态B,在状态B下,它对相应的错误不敏感。随后,执行该数据的操作以模拟错误。优选地,将数据与所接收到的位掩码进行异或,使得错误位位置可以由SPM 40滚动。
响应于该操作,安全运行时环境22必须生成SPM 40期望的适当错误响应。如果期望没有发生,则安全运行时环境22和/或SPM 40可以例如使用单独的第二关闭路径来触发安全关闭。在优选实施方式中,第二关闭路径可以通过SPM 40与安全***模块20的交互来实现。然而,不用说,其他关闭装置也是可想到的。
如果测试成功地完成,则安全运行时环境22返回正常状态A。如果在脱敏期间发生真正的错误,则将由脱敏捕获该错误,但是,该测试将会是不成功的并且未捕获的错误消息将被发送至SPM 40。
通过SPM 40的外部测试,可以单独地检查在本地安全实例中以单通道方式执行的所有测试。例如,外部测试可以验证以下单通道测试:输入数据比较、输出数据比较、RAM测试、ROM测试、计时器测试、周期监视、安全运行时环境到期监视22和用户程序到期监视24、26。
图5示出了根据第二实施方式的自动化***的示意性表示。
在此,根据第二实施方式的自动化***其整体由附图标记100表示。具有相同附图标记的部件表示与第一实施方式中相同的部件,并且将不再说明。
在此,自动化***100包括三个单独部件。
第一部件是自动化***10,该自动化***10构建在非安全平台12上。特别地,该自动化***被配置成借助于两个用户程序24、26来实现安全功能28。因此,第一部件可以包括如关于第一实施方式已经描述的自动化***。然而,将理解的是,第一部件不限于这样的实施方式,而是任何自动化***都适合作为第一部件。
第二部件和第三部件是监视装置70和故障安全***模块20。监视装置70可以是特别地上面已经用附图标记40描述的SPM。
监视装置70和故障安全***模块20经由第一通信接口72和第二通信接口74耦合至自动化***10。除了与自动化***的通信之外,第一通信接口72和第二通信接口74同样地使得能够在监视装置70与故障安全***模块20之间进行通信。换句话说,监视装置70可以经由平台12与故障安全***模块20进行通信。第一通信接口72和第二通信接口74可以是单通道设计的通信接口,例如市售USB接口。应当理解,其他通信接口例如以太网、RS232等也是可想到的。
监视装置70可以是被配置成提供故障安全服务76的独立硬件部件。故障安全服务76可以以软件或硬件来实现,其中通过适当的措施例如通过具有多通道冗余设计的服务或者在多通道冗余硬件上以本身已知的方式执行的服务来确保固有故障安全性,使得可以确保和测试服务76的故障安全操作。应当理解,故障安全设计不限于在此示出的形式,而是技术人员已知的用于获得固有故障安全性的其他措施也是可想到的。
故障安全服务76优选地是简单的服务,诸如例如计数器单元78和编码单元80。故障安全服务76因此可以在简单且具有低复杂性的硬件上实现。例如,监视装置70的硬件可以包括一个或更多个简单的微控制器、ASIC或类似的计算装置,或者可以由分立的电气部件组成。当使用微控制器时,其指令集应尽可能地受限制,使得可以以低成本进行关于固有故障安全性的认证。在优选实施方式中,监视装置70的硬件可以被限制为能够执行计数器单元78和编码单元80。
故障安全服务76与故障安全***模块20进行交互以确保即使在非安全平台12发生故障时也可以安全关闭,无论安全功能28的实现方式如何。
在优选实施方式中,监视装置70本身可以不具有用于此目的的任何另外的与安全有关的装置,即,监视装置可以不具有其可以控制为安全关键过程的关闭路径的其自身的专用安全输出。替代地,与安全关键过程的耦合可以仅经由故障安全***模块20来实现。
在特别优选的实施方式中,监视装置70还可以包括安全实例形式的测试装置82,该测试装置82与在平台12上实现的安全运行时环境22进行交互以针对用户程序24、26提供附加的测试设施。优选地,如先前结合第一实施方式所描述的,安全运行时环境22以非特定于用户程序的方式实现,并且对于不同的自动化***10是相同的。因此,可以使用统一的测试装置82来独立地测试不同平台12上的各种安全功能28的安全性,并且监视装置70本身可以与故障安全***模块一起用作最终版本,以将过程转换为安全状态。监视装置70因此可以在各种自动化***上使用,而无需附加的调整。此外,在发生故障的情况下,监视装置70可以简单地由另一监视装置替换。
因此,根据第二实施方式,有必要将安全控制***划分为不同的特别是非特定于硬件的部件。在这方面,第一部件的焦点是针对安全功能28的实现方式提供尽可能多的计算能力,并且使得相关联的用户程序24、26的开发能够容易。另一方面,第二部件和第三部件的焦点是尽可能简单地设计针对这些的硬件,使得可以可靠且成本有效地保证所提供服务76的故障安全性。
图6示出了根据第二实施方式的自动化***的两个变型。
在第一变型中(如上图所示),自动化***100的三个部件是独立的硬件部件。监视装置70和故障安全***模块20两者均被设置为硬件部件。第一通信接口72将监视装置70连接至自动化***10,并且第二通信接口74将故障安全***模块20连接至自动化***10。因此,监视装置70与故障安全***模块20之间的通信优选地唯一地经由自动化***10进行。
具有单独部件的变型具有下述优点:每个部件可以单独地制造和分配。因此,监视装置70可以与多个不同的***模块20结合使用。因此,自动化***100可以适应于相应的要求,其中仅***模块20必须被替换。
在第二变型中(如下图所示),监视装置70和故障安全模块20在公共硬件上实现。因此,本文通过与自动化***10的单个物理连接来实现第一逻辑通信接口72和第二逻辑通信接口74。尽管集成在公共硬件上,但是监视装置70与故障安全***模块20之间的通信可以经由自动化***10在第一通信接口72和第二通信接口74上路由。换句话说,尽管集成在公共硬件上,但是监视装置70和故障安全***模块20仍然被实现为两个独立的逻辑单元。
有利地,在该变型中,公共安全硬件基础可以用于监视装置70和故障安全模块20。例如,可以经由以多通道冗余方式进行操作的公共处理器来实现故障安全***模块以及监视装置70的功能。此外,在该变型中,一个物理通信接口足以实现第一通信接口和第二通信接口。由此,可以以特别有利的方式实现安全自动化***100。
图7示出了根据第二实施方式的自动化***的电路图。
在此,自动化***100包括监视装置70、自动化***10和故障安全***模块20,每个均作为独立的硬件部件。在该实施方式中,单独部件之间的通信经由USB接口进行。因此,第一通信接口72和第二通信接口74各自为USB连接。
监视装置70还包括用于实现故障安全服务76的计数器单元78和编码单元80。计数器单元78可以使内部计数器连续地递增,并且将计数器值C提供至编码单元80。此外,计数器值C可以经由通信接口72、74发送至故障安全***模块20。
编码单元80从自动化***10接收随机值R。随机值R由故障安全***模块20内的随机数发生器86生成。编码单元80根据随机值R和计数器值C生成密钥值S,并且经由自动化***10将该密钥值发送至故障安全***模块20。
监视装置70检查随机值——优选地由自动化***10周期性地发送的——是否随时间的推移而变化。由于密钥值S基于随机值R和连续计数器C两者,因此可以确保所有数字至少循环一次。因此,监视装置70不必检查生成随机值的随机值发生器是否实际上循环遍历所有值。在监视装置70的优选实施方式中,这样的估计将是计算上密集的,并且因此难以仅以有限的计算能力来执行。
故障安全***模块20具有与监视装置70中提供的那些单元互补的单元。这些互补单元可以被设计为专用单元或以软件模块的形式实现。
在此,故障安全***模块20包括作为互补单元的解码单元88和比较器单元90。解码单元88接收连续计数器值C和随机值R的副本,并且根据其生成比较器值S'。如果所接收到的密钥值S和所生成的比较值S'相同,则故障安全***模块20用信号通知安全状态。在优选实施方式中,解码方法仅对于故障安全***模块20的解码单元88是已知的,并且编码仅对于监视装置70的编码单元78是已知的。
在此所示的优选实施方式中,借助于具有第一单稳态触发器92的第一输出电路91和具有第二单稳态触发器94的第二输出电路93用信号通知安全状态。比较器90经由开关96以交替方式作用在两个输出电路91、93上即作用在单稳态触发器92、94上。当触发两个单稳态触发器92、94中至少之一时,故障安全***模块20指示安全状态。在正常操作中,当比较器90连续地提供信号时,即当密钥值S与所生成的中间值S'之间的比较连续地成功时,通常触发两个单稳态触发器92、94,即,其中新密钥被发送的周期时间相应地与单稳态触发器92、94的保持时间匹配。
为了测试故障安全***模块20是否正确地用信号通知了安全状态,监视装置70通过将正确密钥值S的一个位反转来生成不正确密钥值。因此,比较器90检测到密钥值S与所生成的中间值S'之间的不匹配,并且中断到开关96的信号。
因此,两个单稳态触发器中之一最初关闭,并且不再在输出端处提供信号。这可以由单稳态触发器下游的逻辑电路98检测到,随即生成超时信号102。超时信号102可以由监视装置70读回,从而使得能够确定作为密钥值S的不正确数值是否导致两个单稳态触发器中之一的预期下降。
由于在测试期间仅关闭了一个单稳态触发器,因此,如果通过正确的密钥值S以及时方式重新触发了关闭的单稳态触发器,则故障安全***模块继续用信号通知安全状态。如果未及时地执行重新触发,则第二单稳态触发器也关闭,并且故障安全***模块20将用信号通知非安全状态。在本实施方式中,用信号通知非安全状况将导致安全输出104被关闭。应当理解,具有单稳态触发器92、94的实施方式仅是输出电路91、93的一个可能的实施方式。两个支路也可以被不同地设计,并且仅必须是可激活的和可去激活的。优选地,输出电路被布置成在从激活开始的限定时间段之后使它们自己去激活。然而,替选地,从外部源去激活也是可想到的。
除了实现本文所示出的看门狗原理的部件之外,故障安全***模块20可以具有可以与看门狗保护组合的附加测试装置。例如,除了第一输入寄存器之外,可以提供两个另外的输入寄存器108、110,其包括先前值和后续值,通过该先前值和后续值可以检测地址损坏。此外,故障安全***模块20可以包括安全时钟发生器112,该安全时钟发生器112提供可用于各种与安全有关的应用的安全时钟信号。一个这样的应用可以是例如监视安全电源的电压监视装置114,并且可以作用在故障安全***模块20的安全输出104上。还可想到实现重新启动锁116,该重新启动锁116防止安全关键过程在发生错误时自行重新启动。
应当理解,本文所示出的实现方式仅是根据本发明可以如何实现自动化***100的一个示例。应当理解,在不脱离本公开内容的范围的情况下,其他变型也是可想到的。原则上,本申请的保护范围由权利要求书给出,并且不受说明书或附图中所示特征的限制。
Claims (13)
1.一种用于监视安全关键过程的自动化***(10),包括:
用于执行用户程序(24,26)的平台(12);
故障安全***模块(20),所述安全关键过程能够经由所述故障安全***模块(20)耦合至所述用户程序(24,26);
第一用户程序(24)和第二用户程序(26),所述第一用户程序(24)和所述第二用户程序(26)一起实现安全功能(28),所述第二用户程序(26)相对于所述第一用户程序是多样化的;以及
安全运行时环境(22),所述安全运行时环境(22)独立于所述用户程序(24,26)在所述平台上实现并且被配置成独立于所述平台(12)向所述用户程序(24,26)提供安全资源(30)。
2.根据权利要求1所述的自动化***,其中,所述平台(12)为非安全平台。
3.根据权利要求1或2中任一项所述的自动化***,其中,所述第二用户程序(26)处理与所述第一用户程序(24)相反的数据。
4.根据权利要求1至3中任一项所述的自动化***,其中,所述安全运行时环境(22)向所述第一用户程序(24)和所述第二用户程序(26)冗余且多样化地提供所述安全资源(30)。
5.根据权利要求1至4中任一项所述的自动化***,其中,所述安全运行时环境(22)被配置成独立于用户程序来执行所述第一用户程序(24)与所述第二用户程序(26)之间的交叉比较。
6.根据权利要求1至5中任一项所述的自动化***,其中,所述安全运行时环境(22)被配置成提供计时器作为安全资源(30)并执行测试以验证所述计时器。
7.根据权利要求1至6中任一项所述的自动化***,其中,所述安全运行时环境(22)能够耦合至外部安全装置(40)。
8.根据权利要求1至7中任一项所述的自动化***,其中,所述安全运行时环境(22)被配置成执行操纵器,所述操纵器被配置成操纵所述第一用户程序(24)、所述第二用户程序(26)和/或所述安全资源(30)的执行。
9.根据权利要求8所述的自动化***,其中,所述操纵器能够由外部安全装置(40)触发。
10.根据权利要求8或9中任一项所述的自动化***,其中,所述操纵器被配置成使所述安全运行时环境(22)对错误不敏感。
11.根据权利要求1至10中任一项所述的自动化***,其中,所述安全运行时环境包括特定于硬件的部件和非特定于硬件的部件。
12.根据权利要求11所述的自动化***,其中,仅所述非特定于硬件的部件能够耦合至外部安全装置(40)。
13.一种用于监视安全关键过程的方法,包括下述步骤:
提供用于执行用户程序(24,26)的平台(12);
经由故障安全***模块(20)将所述用户程序(24,26)与所述安全关键过程耦合;
通过第一用户程序(24)和第二用户程序(26)实现安全功能(28),所述第二用户程序(26)与所述第一用户程序不同;
提供独立于所述平台(12)并通过由独立于所述用户程序(24、26)在所述平台(12)上实现的安全运行时环境(22)提供的安全资源(30);以及
使用所述安全资源(30)在所述平台(12)上执行所述第一用户程序(24)和所述第二用户程序(26)。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE1020181203470 | 2018-08-21 | ||
DE102018120347.0A DE102018120347A1 (de) | 2018-08-21 | 2018-08-21 | Automatisierungssystem zur Überwachung eines sicherheitskritischen Prozesses |
PCT/EP2019/066170 WO2020038626A1 (de) | 2018-08-21 | 2019-06-19 | Automatisierungssystem zur überwachung eines sicherheitskritischen prozesses |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112740122A true CN112740122A (zh) | 2021-04-30 |
CN112740122B CN112740122B (zh) | 2024-03-15 |
Family
ID=67001787
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201980061218.9A Active CN112740122B (zh) | 2018-08-21 | 2019-06-19 | 用于监视安全关键过程的自动化*** |
Country Status (6)
Country | Link |
---|---|
US (1) | US11846923B2 (zh) |
EP (1) | EP3841438B1 (zh) |
JP (1) | JP7202448B2 (zh) |
CN (1) | CN112740122B (zh) |
DE (1) | DE102018120347A1 (zh) |
WO (1) | WO2020038626A1 (zh) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE102018120344A1 (de) * | 2018-08-21 | 2020-02-27 | Pilz Gmbh & Co. Kg | Automatisierungssystem zur Überwachung eines sicherheitskritischen Prozesses |
DE102019208813A1 (de) * | 2019-06-18 | 2020-12-24 | Robert Bosch Gmbh | Sicherheitsmodul für einen sicheren Betrieb einer Automatisierungssystembaugruppe |
DE102022205351A1 (de) | 2022-05-30 | 2023-11-30 | Robert Bosch Gesellschaft mit beschränkter Haftung | Verfahren zum Überprüfen einer technischen Vorrichtung |
EP4300221A1 (de) * | 2022-07-01 | 2024-01-03 | Siemens Aktiengesellschaft | Vorrichtung und verfahren zur steuerung einer prozessanlage sowie prozesssteuerungssystem |
Citations (41)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP0671030A1 (en) * | 1992-11-30 | 1995-09-13 | Base 10 Systems, Inc. | A safety critical processor and processing method for a data processing system |
EP1043641A2 (de) * | 1999-04-09 | 2000-10-11 | Siemens Aktiengesellschaft | Fehlersicheres Automatisierungssystem mit Standard-CPU und Verfahren für ein fehlersicheres Automatisierungssystem |
JP2002358106A (ja) * | 2001-05-31 | 2002-12-13 | Omron Corp | 安全コントローラ |
US20030125824A1 (en) * | 2001-11-28 | 2003-07-03 | Siemens Aktiengesellschaft | Method of generating and/or executing a diversified program flow |
DE10219501A1 (de) * | 2002-04-30 | 2003-11-27 | Siemens Ag | System und Verfahren zur Verbesserung von Fehlerbeherrschungsmassnahmen, insbesondere in Automatisierungssystemen |
DE10240584A1 (de) * | 2002-08-28 | 2004-03-11 | Pilz Gmbh & Co. | Sicherheitssteuerung zum fehlersicheren Steuern von sicherheitskritischen Prozessen sowie Verfahren zum Aufspielen eines neuen Betriebsprogrammes auf eine solche |
US20040064205A1 (en) * | 2001-02-20 | 2004-04-01 | Johannes Kloper | Method and device for programming a failsafe control system |
CN1609801A (zh) * | 2003-10-24 | 2005-04-27 | 微软公司 | 通过应用程序分解将高保证特征集成到应用程序中 |
US20050246582A1 (en) * | 2004-03-17 | 2005-11-03 | International Business Machines Corporation | System, method and program product for recovering from a failure |
CN1714331A (zh) * | 2002-11-27 | 2005-12-28 | 英特尔公司 | 在预引导环境中提供安全执行模式 |
CN1742247A (zh) * | 2003-02-03 | 2006-03-01 | 诺基亚有限公司 | 用于加密的应用程序安装的结构 |
US20060150015A1 (en) * | 2005-01-04 | 2006-07-06 | International Business Machines Corporation | Error monitoring of partitions in a computer system using partition status indicators |
CN1879087A (zh) * | 2003-11-13 | 2006-12-13 | 西门子公司 | 输入值的安全记录 |
CN101034378A (zh) * | 2007-04-27 | 2007-09-12 | 吴晓栋 | 一种实现处理器及其计算机***信息处理环境高度安全与可信的方法 |
EP1862893A2 (en) * | 2006-05-31 | 2007-12-05 | Hitachi, Ltd. | Storage control apparatus and method for controlling number of commands executed in storage control apparatus |
DE102007045398A1 (de) * | 2007-09-21 | 2009-04-02 | Continental Teves Ag & Co. Ohg | Integriertes Mikroprozessorsystem für sicherheitskritische Regelungen |
CN101533439A (zh) * | 2008-05-24 | 2009-09-16 | 威盛电子股份有限公司 | 提供安全执行环境的装置及其执行安全编码的方法 |
US20090240347A1 (en) * | 2007-08-22 | 2009-09-24 | Siemens Aktiengesellschaft | Operating method for a control device of a safety-oriented automation device for checking the reliability of an automation system |
DE102008060003A1 (de) * | 2008-11-25 | 2010-05-27 | Pilz Gmbh & Co. Kg | Verfahren und Vorrichtung zum Erstellen eines Anwenderprogramms für eine Sicherheitssteuerung |
CN101807074A (zh) * | 2003-01-28 | 2010-08-18 | 费舍-柔斯芒特***股份有限公司 | 用于过程装置的配置*** |
DE102009011679A1 (de) * | 2009-02-23 | 2010-08-26 | Pilz Gmbh & Co. Kg | Verfahren und Vorrichtung zum Erstellen eines Anwenderprogrammes für eine Sicherheitssteuerung |
US20100287563A1 (en) * | 2008-01-24 | 2010-11-11 | Autonetworks Technologies, Ltd. | Device control apparatus and device control program |
JP2010271759A (ja) * | 2009-05-19 | 2010-12-02 | Toyota Motor Corp | 安全制御装置および安全制御方法 |
CN101939713A (zh) * | 2008-02-05 | 2011-01-05 | 应用材料公司 | 运作电子装置制造***的方法与设备 |
CN102103671A (zh) * | 2002-03-29 | 2011-06-22 | 英特尔公司 | 用于执行安全环境起始指令的***和方法 |
CN102122327A (zh) * | 2009-12-31 | 2011-07-13 | 英特尔公司 | 使用多个认证代码模块进入安全计算环境 |
EP2422271A1 (de) * | 2009-04-20 | 2012-02-29 | Pilz GmbH & Co. KG | Verfahren und vorrichtung zum erstellen eines anwenderprogramms für eine sicherheitssteuerung |
CN102890504A (zh) * | 2003-04-01 | 2013-01-23 | 费舍-柔斯芒特***股份有限公司 | 集成到过程控制/安全***中的在线装置检测块 |
US20130141247A1 (en) * | 2011-11-16 | 2013-06-06 | Flextronics Ap, Llc | Method and system for maintaining and reporting vehicle occupant information |
DE102012012521A1 (de) * | 2012-06-26 | 2014-01-02 | Inter Control Hermann Köhler Elektrik GmbH & Co. KG | Vorrichtung und Verfahren für eine sicherheitskritische Anwendung |
CN104283688A (zh) * | 2014-10-11 | 2015-01-14 | 东软集团股份有限公司 | 一种USBKey安全认证***及安全认证方法 |
DE102013218814A1 (de) * | 2013-09-19 | 2015-03-19 | Siemens Aktiengesellschaft | Verfahren zum Betreiben eines sicherheitskritischen Systems |
US20150185708A1 (en) * | 2013-12-31 | 2015-07-02 | Rockwell Automation Technologies, Inc. | Safety relay configuration system with safety monitoring and safety output function blocks |
CN105094005A (zh) * | 2014-05-19 | 2015-11-25 | 洛克威尔自动控制技术股份有限公司 | 光学区域监测与工业机器控制的集成 |
CN105209982A (zh) * | 2013-04-04 | 2015-12-30 | Abb技术股份公司 | 用于控制自动化***中的物理单元的方法和设备 |
CN105683919A (zh) * | 2013-06-11 | 2016-06-15 | Abb 技术有限公司 | 用于安全关键软件应用的多核处理器故障检测 |
US20160283425A1 (en) * | 2015-03-27 | 2016-09-29 | Intel Corporation | Additional secured execution environment with sr-iov and xhci-iov |
US20170139411A1 (en) * | 2015-11-16 | 2017-05-18 | Polysync Technologies, Inc. | Autonomous Vehicle Platform and Safety Architecture |
DE102015120314A1 (de) * | 2015-11-24 | 2017-05-24 | Pilz Gmbh & Co. Kg | Verfahren zum Programmieren einer Sicherheitssteuerung |
CN108628692A (zh) * | 2017-03-17 | 2018-10-09 | Tttech电脑技术股份公司 | 用于控制自主受控对象的容错方法 |
WO2018206183A1 (de) * | 2017-05-09 | 2018-11-15 | Abb Ag | Steuerungssystem zum steuern von sicherheitskritischen und nichtsicherheitskritischen prozessen mit master-slave-funktionalität |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9918665B2 (en) * | 2002-03-11 | 2018-03-20 | Nitto Denko Corporation | Transdermal porator and patch system and method for using same |
DE102006046286A1 (de) | 2005-12-16 | 2007-06-21 | Siemens Ag | Bewegungsüberwachung |
JP5549665B2 (ja) | 2011-12-28 | 2014-07-16 | 株式会社デンソー | 車両制御装置及びソフトウェア部品 |
-
2018
- 2018-08-21 DE DE102018120347.0A patent/DE102018120347A1/de active Pending
-
2019
- 2019-06-19 JP JP2021509888A patent/JP7202448B2/ja active Active
- 2019-06-19 WO PCT/EP2019/066170 patent/WO2020038626A1/de unknown
- 2019-06-19 EP EP19732604.4A patent/EP3841438B1/de active Active
- 2019-06-19 CN CN201980061218.9A patent/CN112740122B/zh active Active
-
2021
- 2021-02-21 US US17/180,817 patent/US11846923B2/en active Active
Patent Citations (46)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP0671030A1 (en) * | 1992-11-30 | 1995-09-13 | Base 10 Systems, Inc. | A safety critical processor and processing method for a data processing system |
EP1043641A2 (de) * | 1999-04-09 | 2000-10-11 | Siemens Aktiengesellschaft | Fehlersicheres Automatisierungssystem mit Standard-CPU und Verfahren für ein fehlersicheres Automatisierungssystem |
US20040064205A1 (en) * | 2001-02-20 | 2004-04-01 | Johannes Kloper | Method and device for programming a failsafe control system |
JP2002358106A (ja) * | 2001-05-31 | 2002-12-13 | Omron Corp | 安全コントローラ |
US20030125824A1 (en) * | 2001-11-28 | 2003-07-03 | Siemens Aktiengesellschaft | Method of generating and/or executing a diversified program flow |
CN102103671A (zh) * | 2002-03-29 | 2011-06-22 | 英特尔公司 | 用于执行安全环境起始指令的***和方法 |
DE10219501A1 (de) * | 2002-04-30 | 2003-11-27 | Siemens Ag | System und Verfahren zur Verbesserung von Fehlerbeherrschungsmassnahmen, insbesondere in Automatisierungssystemen |
DE10240584A1 (de) * | 2002-08-28 | 2004-03-11 | Pilz Gmbh & Co. | Sicherheitssteuerung zum fehlersicheren Steuern von sicherheitskritischen Prozessen sowie Verfahren zum Aufspielen eines neuen Betriebsprogrammes auf eine solche |
CN1714331A (zh) * | 2002-11-27 | 2005-12-28 | 英特尔公司 | 在预引导环境中提供安全执行模式 |
CN101807074A (zh) * | 2003-01-28 | 2010-08-18 | 费舍-柔斯芒特***股份有限公司 | 用于过程装置的配置*** |
CN1742247A (zh) * | 2003-02-03 | 2006-03-01 | 诺基亚有限公司 | 用于加密的应用程序安装的结构 |
CN102890504A (zh) * | 2003-04-01 | 2013-01-23 | 费舍-柔斯芒特***股份有限公司 | 集成到过程控制/安全***中的在线装置检测块 |
CN1609801A (zh) * | 2003-10-24 | 2005-04-27 | 微软公司 | 通过应用程序分解将高保证特征集成到应用程序中 |
CN1879087A (zh) * | 2003-11-13 | 2006-12-13 | 西门子公司 | 输入值的安全记录 |
US20070185945A1 (en) * | 2003-11-13 | 2007-08-09 | Herbert Barthel | Reilible Recording of Input Values |
US20050246582A1 (en) * | 2004-03-17 | 2005-11-03 | International Business Machines Corporation | System, method and program product for recovering from a failure |
US20060150015A1 (en) * | 2005-01-04 | 2006-07-06 | International Business Machines Corporation | Error monitoring of partitions in a computer system using partition status indicators |
EP1862893A2 (en) * | 2006-05-31 | 2007-12-05 | Hitachi, Ltd. | Storage control apparatus and method for controlling number of commands executed in storage control apparatus |
CN101034378A (zh) * | 2007-04-27 | 2007-09-12 | 吴晓栋 | 一种实现处理器及其计算机***信息处理环境高度安全与可信的方法 |
US20090240347A1 (en) * | 2007-08-22 | 2009-09-24 | Siemens Aktiengesellschaft | Operating method for a control device of a safety-oriented automation device for checking the reliability of an automation system |
DE102007045398A1 (de) * | 2007-09-21 | 2009-04-02 | Continental Teves Ag & Co. Ohg | Integriertes Mikroprozessorsystem für sicherheitskritische Regelungen |
US20100287563A1 (en) * | 2008-01-24 | 2010-11-11 | Autonetworks Technologies, Ltd. | Device control apparatus and device control program |
CN101925489A (zh) * | 2008-01-24 | 2010-12-22 | 株式会社自动网络技术研究所 | 设备控制装置以及设备控制程序 |
CN101939713A (zh) * | 2008-02-05 | 2011-01-05 | 应用材料公司 | 运作电子装置制造***的方法与设备 |
CN101533439A (zh) * | 2008-05-24 | 2009-09-16 | 威盛电子股份有限公司 | 提供安全执行环境的装置及其执行安全编码的方法 |
DE102008060003A1 (de) * | 2008-11-25 | 2010-05-27 | Pilz Gmbh & Co. Kg | Verfahren und Vorrichtung zum Erstellen eines Anwenderprogramms für eine Sicherheitssteuerung |
DE102009011679A1 (de) * | 2009-02-23 | 2010-08-26 | Pilz Gmbh & Co. Kg | Verfahren und Vorrichtung zum Erstellen eines Anwenderprogrammes für eine Sicherheitssteuerung |
EP2422271A1 (de) * | 2009-04-20 | 2012-02-29 | Pilz GmbH & Co. KG | Verfahren und vorrichtung zum erstellen eines anwenderprogramms für eine sicherheitssteuerung |
JP2010271759A (ja) * | 2009-05-19 | 2010-12-02 | Toyota Motor Corp | 安全制御装置および安全制御方法 |
CN102122327A (zh) * | 2009-12-31 | 2011-07-13 | 英特尔公司 | 使用多个认证代码模块进入安全计算环境 |
US20130141247A1 (en) * | 2011-11-16 | 2013-06-06 | Flextronics Ap, Llc | Method and system for maintaining and reporting vehicle occupant information |
US20170093643A1 (en) * | 2011-11-16 | 2017-03-30 | Autoconnect Holdings Llc | Vehicle middleware |
CN104508578A (zh) * | 2012-06-26 | 2015-04-08 | 盈德克勒电控有限公司 | 用于安全关键的应用的设备和方法 |
DE102012012521A1 (de) * | 2012-06-26 | 2014-01-02 | Inter Control Hermann Köhler Elektrik GmbH & Co. KG | Vorrichtung und Verfahren für eine sicherheitskritische Anwendung |
CN105209982A (zh) * | 2013-04-04 | 2015-12-30 | Abb技术股份公司 | 用于控制自动化***中的物理单元的方法和设备 |
CN105683919A (zh) * | 2013-06-11 | 2016-06-15 | Abb 技术有限公司 | 用于安全关键软件应用的多核处理器故障检测 |
DE102013218814A1 (de) * | 2013-09-19 | 2015-03-19 | Siemens Aktiengesellschaft | Verfahren zum Betreiben eines sicherheitskritischen Systems |
US20150185708A1 (en) * | 2013-12-31 | 2015-07-02 | Rockwell Automation Technologies, Inc. | Safety relay configuration system with safety monitoring and safety output function blocks |
CN105094005A (zh) * | 2014-05-19 | 2015-11-25 | 洛克威尔自动控制技术股份有限公司 | 光学区域监测与工业机器控制的集成 |
US20160070991A1 (en) * | 2014-05-19 | 2016-03-10 | Rockwell Automation Technologies, Inc. | Integration of optical area monitoring with industrial machine control |
CN104283688A (zh) * | 2014-10-11 | 2015-01-14 | 东软集团股份有限公司 | 一种USBKey安全认证***及安全认证方法 |
US20160283425A1 (en) * | 2015-03-27 | 2016-09-29 | Intel Corporation | Additional secured execution environment with sr-iov and xhci-iov |
US20170139411A1 (en) * | 2015-11-16 | 2017-05-18 | Polysync Technologies, Inc. | Autonomous Vehicle Platform and Safety Architecture |
DE102015120314A1 (de) * | 2015-11-24 | 2017-05-24 | Pilz Gmbh & Co. Kg | Verfahren zum Programmieren einer Sicherheitssteuerung |
CN108628692A (zh) * | 2017-03-17 | 2018-10-09 | Tttech电脑技术股份公司 | 用于控制自主受控对象的容错方法 |
WO2018206183A1 (de) * | 2017-05-09 | 2018-11-15 | Abb Ag | Steuerungssystem zum steuern von sicherheitskritischen und nichtsicherheitskritischen prozessen mit master-slave-funktionalität |
Non-Patent Citations (7)
Title |
---|
C.Y. LESTER: "Incorporating Software Security into an Undergraduate Software Engineering Course", 2009 THIRD INTERNATIONAL CONFERENCE ON EMERGING SECURITY INFORMATION, SYSTEMS AND TECHNOLOGIES, pages 161 - 166 * |
MARTIN SUBKRAUT: "Sichere programmausfuhrung mit diversified encoding", SILISTRA SYSTEMS, pages 1 - 12 * |
N. SILVA: "Independent Assessment of Safety-Critical Systems: We Bring Data!", 2012 IEEE 23RD INTERNATIONAL SYMPOSIUM ON SOFTWARE RELIABILITY ENGINEERING WORKSHOPS, pages 84 - 84 * |
吴楠: "面向高端容错计算机的进程容错***设计与实现", 计算机应用与软件, pages 92 - 96 * |
周亮: "嵌入式应用软件安全性测试***设计与实现", 电子设计工程, pages 57 - 60 * |
朱奕: "应用***运行安全质量监控思路及技术", 计算机应用, pages 66 - 69 * |
杜乔瑞: "核安全级仪控***(FirmSys)平台软件设计技术研究与实现", 自动化博览, pages 66 - 71 * |
Also Published As
Publication number | Publication date |
---|---|
EP3841438B1 (de) | 2023-02-15 |
US11846923B2 (en) | 2023-12-19 |
WO2020038626A1 (de) | 2020-02-27 |
CN112740122B (zh) | 2024-03-15 |
JP7202448B2 (ja) | 2023-01-11 |
US20210278816A1 (en) | 2021-09-09 |
DE102018120347A1 (de) | 2020-02-27 |
JP2021534508A (ja) | 2021-12-09 |
EP3841438A1 (de) | 2021-06-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112740122B (zh) | 用于监视安全关键过程的自动化*** | |
Ulbrich et al. | Eliminating single points of failure in software-based redundancy | |
US9696692B2 (en) | Industrial automation control system | |
CN110663006B (zh) | 对可编程逻辑控制器执行故障转移并控制物理***的方法 | |
WO2014198464A1 (en) | Multicore processor fault detection for safety critical software applications | |
CN111264046A (zh) | 用于密码保护地监控设备或设施的至少一个组件的***和方法 | |
Larrucea et al. | A modular safety case for an IEC-61508 compliant generic hypervisor | |
Larrucea et al. | A modular safety case for an IEC 61508 compliant generic COTS processor | |
CN112740123B (zh) | 用于监视安全关键过程的自动化*** | |
Pop et al. | Methods and tools for reducing certification costs of mixed-criticality applications on multi-core platforms: the RECOMP approach | |
Arm et al. | Increasing safety and reliability of roll-back and roll-forward lockstep technique for use in real-time systems | |
Thomm et al. | Automated application of fault tolerance mechanisms in a component-based system | |
de C. Guerra et al. | A dependable architecture for cots-based software systems using protective wrappers | |
Süßkraut et al. | Safe program execution with diversified encoding | |
Raab et al. | Safe software processing by concurrent execution in a real-time operating system | |
Strunk et al. | Assured reconfiguration of fail-stop systems | |
EP3367242B1 (en) | Method of error detection in a microcontroller unit | |
Buckl et al. | Models for automatic generation of safety-critical real-time systems | |
Skeggs | Vivid: An Operating System Kernel for Radiation-Tolerant Flight Control Software | |
Kornecki et al. | Software development for real-time safety-critical applications | |
Hayek et al. | Minaturized safety plc on a chip for industrial control applications | |
Ahn et al. | Fault tolerant framework and techniques for component-based autonomous robot systems | |
Thiemann et al. | Concept for a safety-controller based on uncertified hardware | |
Sagardui | Increasing Dependability in Safety Critical CPSs Using Reflective Statecharts | |
Löser et al. | The benefits of middleware for safety-related systems-on-chip |
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 |