减轻外部错误影响的体系结构

选择工具和技术来创建容错控制环境和网络。

通过Dave Denison, Emerson过程管理公司 2011年10月31日

在工厂自动化系统中遇到故障是不受欢迎的,通常是不可预测的事件。它对工厂运行的影响可能从几乎没有影响到造成潜在的生命损失、财产破坏或环境破坏的灾难。每个工厂必须建立精心设计的策略,以减轻故障对工厂运行的影响,并必须制定行动计划,以控制风险。一般来说,用户希望选择一个最先进的工厂自动化系统,该系统足够灵活以减轻潜在风险,同时仍然负担得起关键或非关键应用需求。

错误、失败和缺陷

故障只是一个组件或设备中的故障、缺陷或缺陷。在工厂自动化系统中,设备中的故障会导致设备发生故障,因此它不能提供预期或设计的功能。大多数过程自动化系统是基于处理器的,通常包括硬件和软件组件,这两者都可能发生故障。系统架构的健壮性将决定故障的影响。在一个设计良好的系统中,一个故障可能不会导致任何类型的故障。另一方面,设计不佳的系统中的同一个故障可能导致多个故障实例。

故障分为内部故障和外部故障。内部故障通常是由系统设计故障引起的,如硬件设计缺陷或软件缺陷和bug。对于给定的一组输入,这种错误通常是可重复的。设备中随机发生的内部故障通常是不可重复的,可能是由制造过程中引入的缺陷造成的。过程自动化系统的供应商通常通过严格的质量标准来减少这些故障。

外部故障和干扰产生于设备外部,但可能传播到设备内部,导致设备故障。外部故障的例子可能包括环境影响(电磁干扰、温度变化)、操作故障(操作人员错误)、意外损坏(电涌、网络设备物理损坏)和维护/安装故障(接地不当、短路)。

缓解策略可以最小化外部故障对系统功能的影响。在开发缓解策略时,重点选择过程自动化系统的战略组件,以合理的成本提供容错。

工厂自动化系统的体系结构

考虑一个典型的制造企业的三层层次结构。从底层开始,工厂自动化系统通常包括一个控制层,其中有现场设备和控制器,作为执行实时控制功能的基础。在中间,与控制层集成的是工厂操作层,提供操作员、监督和维护功能。制造过程由前两层中的各种组件自动化。

顶层是处理资源规划、会计和管理报告等任务的业务系统。工厂自动化系统还提供业务系统和工厂操作之间的实时集成。通常,在预定义的时间间隔内执行指定任务的重要性在业务系统层比在控制层要低。也就是说,与操作任务相比,控制任务必须在短得多的时间间隔内执行。然后,与面向业务事务的任务相比,操作任务以更短的时间间隔执行。

根据发生故障的设备的临界程度不同,故障对工厂运行的影响可能有很大差异。在控制层面,调节高压放热反应的多回路控制器的故障可能是灾难性的,因为故障可能导致生命损失、财产破坏或环境破坏。另一方面,在操作或业务系统级别,如果用于创建报告的打印设备出现故障,则可以将其视为本质上的非关键设备。考虑到这些关键程度上的差异,流程自动化系统的体系结构需要为用户提供灵活性,以便开发与潜在风险相匹配的缓解策略,并为每个应用程序提供各种容错解决方案的可负担性。

提高植物利用率

容错是指系统在出现故障时仍能正确执行其功能的能力。容错的目的是提高系统的可靠性和可用性,使其能够优雅地响应意外故障。故障条件下的优雅程度可以根据系统的可用性和系统功能的操作退化来衡量。最先进的体系结构将为用户提供高系统可用性和低水平的退化,而不会对系统的成本、性能和易用性产生负面影响。

容错架构使用三种技术来最小化错误的影响:

  • 故障恢复
  • 故障控制,以及
  • 冗余。

故障恢复技术使用故障检测机制和一系列步骤来恢复由于故障而失去的系统功能。示例包括错误纠正内存(ECC)、看门狗、软件检查点等。

故障遏制技术防止故障在系统内传播,以限制损坏的数量。可以使用诸如防火墙、本质安全I/O系统、微处理器内存管理单元等遏制屏障来划分或隔离损害。

高可用性应用程序的冗余

冗余可以定义为拥有比执行所需功能最低限度所需的数量更多的资源。用于减轻故障影响的基于冗余的技术通常使用组件的复制。如果其中一个组件发生故障,这些组件能够从另一个组件那里接管所需功能的执行。

冗余为广泛的故障提供了容错能力,几乎没有运行衰减。它还支持执行其他应用程序,如故障检测和在线升级。然而,使用组件冗余来提供容错架构可能会导致更高的成本、更大的占用空间以及内部系统复杂性的增加。这些缺点可以通过模块化增量设计、超大规模集成电路的使用以及从用户角度考虑的冗余透明性来克服。

控制、通信和电源转换功能的冗余方案包括:

  • 简单的重复
  • 不同的技术
  • 双机热备冗余
  • 锁步冗余。

简单复制使用至少两个组件彼此独立地执行相同的功能。由于它们的独立操作,组件之间不需要同步或协调。简单复制为大多数外部故障提供了高可用性,但用户有责任确保有足够的冗余。图1展示了四个操作员工作站,它们都被配置为执行相同的功能,演示了简单的复制。

不同的技术通过部署不同类型的重复组件来防止系统故障。例如,临界温度测量可以同时使用热电偶和RTD。作为另一个例子,现场输入和输出可以通过使用硬连线和无线技术连接到控制器。然而,这可能会增加用户配置、维护工作和生命周期成本。

灵活的系统架构

关键的过程控制应用,如高压或放热反应,通常需要高度保证控制这些过程的组件的故障不会影响过程的可用性。一些过程控制供应商为两个高度集成但独立的系统提供了一个通用的体系结构,用于实施要求多种工厂可用性的项目。

图1说明了用于过程自动化应用的分布式控制系统(DCS)和用于过程安全应用的安全仪表系统(SIS)(例如,SIL 3级以上)。这些系统使用相同的通信网络、共享工作站和其他组件进行集成。两者都提供了完全冗余架构,支持使用主/热备份冗余和lockstep冗余配置,以便在检测到故障时自动切换。

图2展示了主/热备份冗余配置中的一对控制器。在这种方法中,组件处于两种不同的操作状态。主控制器负责更新其备用备份并做出切换决策。角色的区分提供了不同的故障检测和对共因故障的时间阻力。主备/热备方法的一个缺点是,在冗余切换期间,备用服务器需要不断地过渡到主备状态,这段时间非常有限。此时,逻辑执行将暂时暂停,输出将保持其最后值。

图3展示了一种锁步冗余方案,该方案消除了前一种方法的时间切换窗口特征。在lockstep方法中,主冗余组件和备用冗余组件同时处于活动状态,并以lockstep方式操作,以确保没有切换延迟。在每个锁步冗余组件中,内部投票机制决定设备的健康状况和输出的状态。

在进程I/O接口级别上支持多层组件冗余,包括完全冗余的传统和HART I/O卡、通信链路和电源。此外,自适应无线网状网络在控制器和其配置的无线现场设备之间提供多个通信路径。这些多层冗余允许用户以可承受的成本选择所需级别的组件冗余。

业务系统级冗余

在操作和业务系统级别,可能非常希望选择冗余组件,以降低与中断生产和丢失产品相关的风险,或丢失重要数据(例如法规遵从性所需的工厂历史数据)。系统的结构设计支持高级控制功能的冗余。这可能包括在面向批的制造过程中批量和战役的生产,以及冗余数据服务器功能,如冗余OPC服务器,用于将流程数据与业务系统应用程序集成。使用冗余组件的标准好处,如自动切换、在线可升级性和无扰动转换,都内置于控制级冗余组件中,这些好处也可用于操作级。

核心冗余

自动化系统的容错能力对于满足关键工艺应用的要求是必不可少的。容错可以通过各种技术实现。每个工厂站点都需要定制工作,以平衡故障风险和每个容错解决方案的可承受性。最先进的流程自动化系统允许用户基于控制、操作和业务系统级别的容错组件选择缓解策略,以优化可靠性、降低成本并降低故障风险。

戴夫·丹尼森是软件工程经理艾默生过程管理