CN104137008B - 具有冗余控制装置的过程控制系统的防故障运行方法 - Google Patents
具有冗余控制装置的过程控制系统的防故障运行方法 Download PDFInfo
- Publication number
- CN104137008B CN104137008B CN201380010187.7A CN201380010187A CN104137008B CN 104137008 B CN104137008 B CN 104137008B CN 201380010187 A CN201380010187 A CN 201380010187A CN 104137008 B CN104137008 B CN 104137008B
- Authority
- CN
- China
- Prior art keywords
- opc
- control unit
- main control
- control device
- status information
- 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
Links
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
-
- 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
- G05B15/00—Systems controlled by a computer
- G05B15/02—Systems controlled by a computer 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/042—Programme control other than numerical control, i.e. in sequence controllers or logic controllers using digital processors
- G05B19/0428—Safety, monitoring
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/16—Error detection or correction of the data by redundancy in hardware
- G06F11/1629—Error detection by comparing the output of redundant processing systems
- G06F11/1633—Error detection by comparing the output of redundant processing systems using mutual exchange of the output between the redundant processing components
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/16—Error detection or correction of the data by redundancy in hardware
- G06F11/1629—Error detection by comparing the output of redundant processing systems
- G06F11/165—Error detection by comparing the output of redundant processing systems with continued operation after detection of the error
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/16—Error detection or correction of the data by redundancy in hardware
- G06F11/1629—Error detection by comparing the output of redundant processing systems
- G06F11/1654—Error detection by comparing the output of redundant processing systems where the output of only one of the redundant processing components can drive the attached hardware, e.g. memory or I/O
-
- 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/20—Pc systems
- G05B2219/24—Pc safety
- G05B2219/24175—Redundant communication channel, if one fails use the other
-
- 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/20—Pc systems
- G05B2219/24—Pc safety
- G05B2219/24182—Redundancy
-
- 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/20—Pc systems
- G05B2219/24—Pc safety
- G05B2219/24184—Redundant I-O, software comparison of both channels
-
- 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/20—Pc systems
- G05B2219/24—Pc safety
- G05B2219/24215—Scada supervisory control and data acquisition
-
- 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/20—Pc systems
- G05B2219/25—Pc structure of the system
- G05B2219/25032—CAN, canbus, controller area network bus
-
- 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/20—Pc systems
- G05B2219/25—Pc structure of the system
- G05B2219/25369—Control of states, real time
-
- 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/30—Nc systems
- G05B2219/34—Director, elements to supervisory
- G05B2219/34263—OLE object linking and embedding, OPC ole for process control
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/16—Error detection or correction of the data by redundancy in hardware
- G06F11/1695—Error detection or correction of the data by redundancy in hardware which are operating with time diversity
Abstract
本发明涉及一种过程控制系统(5),其具有至少一个OPC客户端(22)和OPC服务器(30),二者通过标准化的OPC接口(31)通信。过程控制系统(5)还具有至少两个冗余运行的控制装置(40、45),其分别通过耦合装置(33、34)与OPC服务器(30)通信。每个控制装置用于提供过程变量和状态信息。状态信息包含各个控制装置(40、45)的当前角色,即是主控制装置或副控制装置。OPC服务器(30)根据对至少其中一个控制装置的状态信息的响应来识别主控制装置(40)、在主控制装置(40)上注册由OPC客户端(22)所产生的变量列表和/或仅将由主控制装置(40)提供的过程变量传输给OPC客户端(22)。
Description
技术领域
本发明涉及一种用于过程控制系统、特别是SCADA系统的防故障运行的方法、一种相应的过程控制系统以及安装在这种过程控制系统的计算机上的计算机程序。
背景技术
SCADA系统(SCADA:Supervision,Control and Data Acquisition数据采集与监视控制系统)是普遍已知的。这些系统基于传统的客户端-服务器应用并且对此具有所谓的OPC客户端和OPC服务器。OPC客户端和OPC服务器实现了标准化以及开放式的数据通信,从而例如获得了基础数据源的过程数据的入口,该过程数据也称为过程变量。OPC是OLE forProcess Control(用于过程控制的OLE)的简称。OPC服务器的任务尤其是在读取过程变量、更改过程变量和监督过程变量的过程中支持OPC客户端。OPC服务器通常根据OPC客户端的请求执行这些任务。这种SCADA系统例如在专业书籍“Automatisieren mit SPS-Theorieund Praxis(借助SPS理论与实践的自动化),作者G.Wellenreuther等,Vieweg+Teubner出版社,第4版,2009年”中进行了描述。
为了能够确保过程控制系统特别是在监督危急情况时、例如在监督公路隧道时可靠并且防故障地工作,冗余地形成了某些系统组件。
由US 2005/0097165 A1已知一种冗余的过程控制系统,该过程控制系统具有一个OPC客户端、多个OPC服务器和多个和OPC服务器相连的数据源。为了能够冗余运行,OPC客户端具有冗余管理器,该冗余管理器接收并且评估多个不同的数据源的过程数据。将数据传输给OPC客户端的数据源通过一个或多个OPC服务器与OPC客户端相连。在另一个已知的冗余过程控制系统中,至少一个数据源通过两个冗余运行的OPC服务器与OPC客户端相连。而由OPC客户端的冗余管理器选择合适的OPC服务器。
由US 7,451,215,B2已知一种类似的系统。已知的过程控制系统具有两个冗余运行的OPC服务器,这两个服务器作为主OPC服务器以及辅OPC服务器起作用。两个OPC服务器都和为OPC客户端提供过程变量的数据源相连。OPC客户端决定哪个OPC服务器作为主OPC服务器。
已知的过程控制系统具有下述缺点,在OPC客户端中所进行的冗余组件之间的转换识别以及新过程变量的提供可能持续几秒钟。在这段时间里过程控制系统不能运行待执行的过程。
发明内容
因此本发明的目的在于提供一种计算机程序、一种过程控制系统以及一种过程控制系统的防故障运行方法,和已知的过程控制装置相比,借助该计算机程序、该过程控制系统以及该方法能够使冗余系统组件之间的切换时间缩短以及使切换之后再次接收过程控制的时间缩短。另一目的在于提供冗余的过程控制系统,该冗余的过程控制系统能够更简单且更快速地实现和维护。
本发明的核心思想在于可以不由OPC客户端而是由OPC服务器执行控制装置的冗余管理。由此能够在过程控制系统中仅使用唯一的OPC服务器,从而能够提供冗余形式的过程变量。
上述技术问题通过所提供的过程控制系统的防故障运行方法得以解决,该过程控制系统具有至少一个OPC客户端和一个OPC服务器以及至少两个冗余运行的控制装置,该OPC客户端和OPC服务器通过标准化的OPC接口通信。控制装置分别通过耦合装置与OPC服务器通信。耦合装置通常是制造商专用接口。
首先确定控制装置的角色,其中一个控制装置作为主控制装置工作并且另一个控制装置作为副控制装置工作。主控制装置是主导过程的控制装置,而副控制装置例如以“热备”形式共同进行。
例如能够在过程控制开始时由使用者确定角色或者通过采用预先规定的算法在控制装置之间直接自动协商。每个控制装置都提供给OPC服务器一个状态信息,该状态信息包含各个控制装置的当前角色。通过对至少其中一个控制装置的状态信息的响应由OPC服务器识别出主控制装置。由OPC客户端产生的变量列表通过OPC服务器的控制或协调在主控制装置上注册。
“注册变量列表”的特征例如可以按下述理解:
-OPC客户端请求OPC服务器从主控制装置读取在变量列表中所述的过程变量或者过程数据并且传输给该OPC客户端。或者
-OPC客户端请求OPC服务器使主控制装置更改在基础的E/A设备中的经注册的变量列表中的过程变量或过程数据或者将其写入E/A设备。
只将由主控制装置提供的过程变量通过OPC服务器的控制或协调传输给OPC客户端。
OPC服务器以有利的方式、优选在能够调节的时间点仅询问副控制装置的状态信息从而不需要提高安装有OPC服务器的计算机的运算能力。在这种情况下通过对副控制装置的状态信息的响应由OPC服务器识别出主控制装置。此外,以这种方式确保,即使主控制装置发生故障,OPC服务器也能够识别出从目前的主控制装置到新的主控制装置上的切换。
根据可预先规定的事件交换控制装置的角色是有利的。这种事件可以是识别出当前的主控制装置发生故障。导致角色交换的其他事件例如可以由使用者自己定义。这些事件例如可以是对时间的规定。
为了能够在控制装置之间快速切换,OPC服务器以有利的方式使两个控制装置上的由OPC客户端所产生的变量列表相同。因此,通过OPC服务器的控制对OPC客户端所产生的变量列表进行复制并随后注册到副控制装置上。
根据过程控制系统的执行,由OPC客户端所产生的变量列表以时间顺序以适宜的方式首先注册到主控制装置然后注册到副控制装置上。此外,可以考虑有足够运算能力时才将变量列表注册到副控制装置上。
为了在控制装置之间实现快速而可靠地切换,通过同步连接使控制装置在过程变量和/或状态信息上进行同步也是有利的。因此,状态信息也可以包含关于在控制装置之间是否存在同步连接的信息。
为了在控制装置之间切换之后、即控制装置调换角色之后能够迅速地提供当前的过程变量,在运行过程中通过OPC服务器的控制从主控制装置和副控制装置上读取并且暂时存储由OPC客户端要求的过程变量。因此,OPC服务器在切换过程之后能够迅速为OPC客户端提供新的主控制装置的过程变量。
为了确保即使在控制装置之间的同步连接故障时也能够提供使过程进行的主控制装置,OPC服务器能够在可调节的时间段中n次识别出角色调换时选出其中一个控制装置作为主控制装置。这种策略预先防备由于控制装置之间的同步连接的中断而造成系统故障,即,在两个控制装置相对于OPC服务器都冒充成主控制装置时。
上述技术问题还通过一种过程控制系统得以解决。
因此,提供具有至少一个OPC客户端和一个OPC服务器的过程控制系统,该OPC客户端和OPC服务器通过标准化的OPC接口进行通信。此外,过程控制系统具有至少两个冗余运行的控制装置,这两个控制装置分别通过耦合装置与OPC服务器进行通信。每个控制装置都用于提供过程变量和状态信息。状态信息包含各个控制装置的当前角色,其中当前角色或者是主控制装置或者是副控制装置。OPC服务器用于通过对至少其中一个控制装置的状态信息的响应来识别主控制装置、在主控制装置上注册由OPC客户端所产生的变量列表和/或只是将由主控制装置提供的过程变量传输给OPC客户端。
OPC客户端和OPC服务器能够安装在共同的计算机上或者分别安装在单独的计算机上。
上述技术问题还通过提供一种用于安装在具有冗余的控制装置的过程控制系统的计算机上的计算机程序得以解决。该计算机程序包含用于控制计算机的指令,以根据对至少其中一个控制装置的状态信息的响应来识别主控制装置、在主控制装置上注册由OPC客户端所产生的变量列表,和/或只是将由主控制装置提供的过程变量传输给OPC客户端。
附图说明
下面根据结合附图的实施例阐述本发明。
附图示出了示例性的过程控制系统5,该过程控制系统能够形成为SCADA系统。过程控制系统5优选用于监督、控制和/或调整技术过程以及过程变量的交换。
具体实施方式
示例性的过程控制系统5具有PC10,该PC能够包括显示器15和至少一个存储器70。在PC10上安装有OPC功能的应用程序20,该应用程序包含传统的OPC客户端22。应用程序20例如是可视化软件。PC10上还安装有OPC软件组件30,根据客户端-服务器应用该OPC软件组件支持OPC客户端22。这种软件组件称为OPC服务器。OPC服务器30具有标准化的OPC接口31,该接口也称为OPC服务器内核,OPC客户端22和OPC服务器30通过该接口能够以标准化的形式交换数据。这里需要注意,OPC通信是专业人员已知的,因此这里仅针对其对本发明的意义进行阐述。OPC客户端22和OPC接口31之间的通信连接在附图中用附图标记80表示。这里需要注意,具有OPC客户端22的应用程序20和OPC服务器30能够分别安装在单独的计算机上。在这种情况下,例如通过用户的基于TCP/IP协议的内部互联网进行OPC客户端22和OPC服务器30之间的OPC通信。
现在回到附图中。OPC服务器30还包括称作切换逻辑32的软件模块,如下面进一步详细描述,该软件模块执行过程控制系统5的冗余管理和冗余控制。切换逻辑32能够通过OPC服务器30的OPC接口31和应用程序20的OPC客户端22通信。如图所示,应用程序20将待可视化的数据传输给显示器15。
OPC服务器30能够具有两个耦合模块33和34,OPC服务器30通过耦合模块能够与第一控制装置40和第二控制装置45通信。耦合接口33对应于第一控制装置40,并且耦合接口34对应于第二控制装置45。耦合模块或者耦合接口优选是制造商专用的通信接口,该通信接口将来自控制装置40或45的数据转换成OPC格式。
可以由使用者来设置作为第一控制装置和第二控制装置的控制装置并且在整个过程控制期间保持这种设置。可以通过基于TCP/IP协议的工业通信网络90进行控制装置40和45在PC10上的物理耦合。
需要注意的是,OPC服务器30也能够与多于所示的两个冗余控制装置40和45进行通信。在过程控制系统5中冗余运行的两个控制装置40和45在本实施例中为了更简单地进行阐述仅和E/A设备60相连。E/A设备60可以是传感器或执行器。E/A设备60可以通过基于TCP/IP协议的网络50、例如Profinet50与控制装置40和45通信。在两个控制装置40和45之间可以构造同步连接100,通过该同步连接两个控制装置相互交换和调整数据,例如过程变量和状态信息。为OPC服务器30配置存储器70,例如控制装置40和45所要求的过程变量和状态信息能够保存在该存储器中。
下面详细描述过程控制系统5的工作原理,特别是扩展出冗余管理的OPC服务器30的工作原理。
如上所述,这样配置两个控制装置40和45,即,在过程控制系统5中将控制装置40定义为第一控制装置并且将控制装置45定义为第二控制装置。通常在整个过程执行期间都保持这种配置。
此外假设,两个控制装置40和45在过程控制系统5开始工作之前就已经通过同步连接100协议其角色。例如已经达成协议,控制装置40应该作用为主控制装置并且控制装置45应该作用为副控制装置。执行过程的控制装置称为主控制装置,如下面进一步详细描述,该执行过程的控制装置控制E/A设备60并且通过OPC服务器与OPC客户端22通信。副控制装置是冗余的共同运行的控制装置,该冗余的共同运行的控制装置也能够称为备用控制装置或替代控制装置。
还假设,E/A设备60是温度传感器,该温度传感器在能够调节的时间点将其过程数据、即温度值传输给两个控制装置40和45。
两个控制装置40和45用来形成状态信息。这些状态信息特别是包含各个控制装置的当前角色以及关于同步连接100是否处于控制装置40和45之间这样的信息。在本实施例中,控制装置40的状态信息包含下列说明:“主控制装置”和“存在同步连接”。
控制装置45产生下列状态信息:“副控制装置”和“存在同步连接”。
替代性地在过程控制系统5开始工作之前通过使用者手动地将角色分配给控制装置是可以考虑的。
重要的是需要指出,在附图所示的过程控制系统5中OPC客户端22从仅有唯一的控制装置的情况下开始。即,OPC客户端22不知道它是具有冗余运行的控制装置的冗余过程控制系统的一部分。
根据过程控制系统5的一个优选实施方式,首先OPC服务器30读取控制装置40和45的状态信息。通过对至少一个所读取的状态信息的响应,切换逻辑32识别出控制装置40当前是主控制装置,而控制装置45当前是副控制装置。由于这种识别,OPC服务器30的切换逻辑32这时仅还周期性地读取副控制装置45的状态信息并且将该状态信息例如存储在存储器70中。
这时假设,应用程序20想要通过OPC服务器30要求E/A设备60的当前过程数据。对此,应用程序产生相应的变量列表,该变量列表通过OPC客户端22传输给OPC服务器30。通过变量列表的接收从而请求OPC服务器30从E/A设备60读取相应的过程数据。对此,OPC服务器将变量列表注册在两个控制装置40和45上。
随着由OPC客户端22所接收的变量列表通过OPC服务器内核31传递给切换逻辑32,开始将变量列表注册在控制装置上,该切换逻辑复制OPC客户端22的变量列表。然后通过切换逻辑32的控制或切换经复制的变量列表经由耦合接口33和34和通信网络90传输给主控制装置40和副控制装置45并随之在那里注册。
为了能够在主控制装置40和OPC客户端22之间快速交换数据,可以根据首先将变量列表传输给主控制装置40并且然后通过所谓的后台任务进行控制这样的实施方式在时间上延迟地传递给副控制装置45。主控制装置40和副控制装置45然后从E/A设备60读取所要求的过程数据。
根据一个示例性的实施方式,主控制装置40和副控制装置45同时或者在时间上交错地将所读取的、E/A设备60的过程数据传输给OPC服务器30的切换逻辑32。表示E/A设备60的温度值的过程数据优选以TCP/IP数据包的形式从主控制装置40和副控制装置45传输给切换逻辑32。每个数据包包含主控制装置40以及副控制装置45的地址或其他标识。OPC服务器30的切换逻辑32以这种方式识别主控制装置40已经传输了哪些过程数据。
这样编程切换逻辑32,即,该切换逻辑仅将由主控制装置40接收的过程数据通过OPC服务器内核31传输给OPC客户端22。OPC客户端22将接收的过程数据转交给应用程序20,该应用程序可以使所要求的过程数据相应地显示在显示器15上。由控制装置40和45所传输的过程数据可以暂时存储在存储器70的查询表中。以这种方式确保即使控制装置的角色互换之后仍然能够快速地将新的主控制装置的过程数据提供给应用程序。
根据另一个示例性的实施方式,OPC服务器30的切换逻辑32仅从主控制装置40要求E/A设备60的过程数据也是可以考虑的。
还需要注意,OPC客户端22可以在能够调节的时间点以上述方式从OPC服务器30要求过程数据。
这时假设,OPC客户端22请求OPC服务器30使其在E/A设备中更改过程变量。因此,由应用程序20产生相应的变量列表并且通过OPC服务器30的OPC服务器内核31传输给切换逻辑32。而变量列表在切换逻辑32中进行复制并随后通过两个耦合接口33和34传输给主控制装置40以及副控制装置45。然后仅仅主控制装置40将新的过程变量写入E/A设备60中。
在过程控制期间,在预先给定的时间点使两个控制装置40和45进行同步,由此调整状态信息和由E/A设备60接收的过程数据以及来自OPC客户端22的变量列表。由此确保始终有唯一的角色对应并且在角色变换时新的主控制装置能够几乎立刻接收过程进程。
这时假设,在主控制装置40中出现故障,通过同步连接100将该故障通知给副控制装置45。通过对故障信息的响应,控制装置45产生状态信息,该状态信息证实控制装置45这时作为主控制装置。因为OPC服务器30周期性地、例如每100毫秒从当前的副控制装置45读取状态信息,所以该OPC服务器最迟在100毫秒之后通过之前的副控制装置45的状态信息获得信息,之前的副控制装置45这时是主控制装置。因此可以在短时的切换时间之后继续过程控制系统5的过程进程。这时通过切换逻辑32的控制在OPC客户端22和新的主控制装置45之间进行数据交换。这意味着在OPC服务器30的切换逻辑32中复制来自OPC客户端22的变量列表并且该变量列表被传输给新的主控制装置45,而不管之前的主控制装置40是否能够工作。如果控制装置40不再能够工作,那么切换逻辑32也不再能够询问控制装置40的状态信息。对此,切换逻辑32仅将由新的主控制装置45从E/A设备60读取的过程数据传递给OPC客户端22。
因此,即使有故障的控制装置40完全停止工作也能够快速地进行过程进程。
一旦有故障的控制装置40已经进行了更换或修理,根据实施例使用者或者过程控制系统5就能够使控制装置40产生其标志为副控制装置的状态信息。然后在询问周期的过程中由控制装置40将该状态信息传输给切换逻辑32,该切换逻辑通过对所接收的状态信息的响应识别出控制装置40又能够作为副控制装置工作。从这个时间点开始切换逻辑32再次周期性地仅还是从新的或经修理的副控制装置40读取状态信息。然后,OPC服务器30以及特别是OPC服务器30的切换逻辑32再次将由OPC客户端22提供的变量列表传输给两个控制装置40和45,而不管哪个控制装置作用为主控制装置。
这时需要注意特别的故障情况,在该故障情况下停止或中断控制装置40和45之间的同步连接100。因为这时两个控制装置40和45不再能够相互调整其状态信息和过程变量,所以可能出现两个控制装置都定义为主控制装置的情况。
如上所述,根据一个有利的实施方式,因为OPC服务器30周期性地仅读取副控制装置的状态信息,所以切换逻辑32在第一周期中识别出,副控制装置40传输了目前其作为主控制装置的状态信息。因此,切换逻辑32会在下一个周期中就状态信息询问显然应该作用为副控制装置45的控制装置。然而,由于同步连接的停止,而该控制装置同样希望作用为主控制装置,所以切换逻辑32从控制装置45接收到表示该控制装置这时也是主控制装置的状态信息。接下来,切换逻辑32在下一个询问周期中,就从控制装置45处接收的状态信息之外的状态信息询问控制装置40,而控制装置40这时将是副控制装置。为了避免这样因无限地切换而发生系统故障,切换逻辑32在能够调整的时间空档中仅切换n次(例如两次),随后根据实施方式选择出两个控制装置中的其中一个作为主控制装置。然后如上所述使过程控制系统5进行工作。
应用程序20、OPC客户端22以及OPC服务器30在所述实施例中安装在计算机10中。也可以考虑将具有OPC客户端22的应用程序20安装在计算机10上并且将OPC服务器30安装在单独的计算机上。在这种情况下,两个单独的计算机例如通过使用者的内部互联网相互连接,通过该内部互联网也可以在OPC客户端22和OPC服务器30之间进行OPC通信。
OPC服务器30是软件组件,该软件组件包含普通的、标准化的OPC模块,例如OPC服务器内核31。OPC服务器扩展有切换逻辑32,该切换逻辑这样运行计算机10,OPC服务器30通过对控制装置40和45中的至少一个的状态信息的响应能够识别出主控制装置,由OPC客户端22产生的变量列表能够注册在主控制装置上,和/或只能够将由主控制装置提供的控制变量传输给OPC客户端22。由此能够从一个控制装置快速切换到另一个控制装置上。
Claims (12)
1.一种过程控制系统(5)的防故障运行方法,其中所述过程控制系统(5)具有至少一个OPC客户端(22)和一个OPC服务器(30)以及至少两个冗余运行的控制装置(40、45),所述OPC服务器(30)包括执行所述过程控制系统(5)的冗余管理和冗余控制的切换逻辑(32),所述OPC客户端和OPC服务器通过标准化的OPC接口(31)通信,所述控制装置分别通过耦合装置(33、34)与OPC服务器(30)通信,所述方法在于,
a)确定所述控制装置(40、45)的角色,其中一个控制装置(40)作为主控制装置工作并且另一个控制装置(45)作为副控制装置工作;
b)由每个控制装置(40、45)为OPC服务器(30)提供状态信息,所述状态信息包含各个控制装置的当前角色;
c)由OPC服务器(30)根据对至少其中一个控制装置(40、45)的状态信息的响应来识别主控制装置(40),所述OPC服务器(30)的切换逻辑(32)这时还周期性地读取副控制装置(45)的状态信息;
d)通过OPC服务器(30)的切换逻辑(32)的控制在主控制装置(40)上注册由OPC客户端(22)所产生的变量列表;以及
e)通过OPC服务器(30)的切换逻辑(32)的控制只是将由主控制装置(40)提供的过程变量传输给OPC客户端(22)。
2.根据权利要求1所述的方法,其特征在于,根据步骤b),OPC服务器(30)在能够调节的时间点仅询问副控制装置(45)的状态信息,其中根据步骤c)由OPC服务器(30)根据对副控制装置(45)的状态信息的响应识别主控制装置(40)。
3.根据权利要求1所述的方法,其特征在于,根据步骤a),根据所出现的事件交换控制装置(40、45)的角色。
4.根据权利要求1所述的方法,其特征在于,根据步骤d),通过OPC服务器(30)的切换逻辑(32)的控制将OPC客户端(22)所产生的变量列表也注册在副控制装置(45)上。
5.根据权利要求4所述的方法,其特征在于,首先在主控制装置(40)上注册变量列表。
6.根据权利要求1所述的方法,其特征在于,通过同步连接(100)使控制装置(40、45)在过程变量和/或状态信息上进行同步,其中状态信息包含关于是否存在同步连接(100)的信息。
7.根据权利要求1所述的方法,其特征在于,根据步骤e),通过OPC服务器(30)的控制从主控制装置和副控制装置上读取并且暂时存储由OPC客户端要求的过程变量。
8.根据权利要求1所述的方法,其特征在于,在步骤a)中,通过采用预先规定的算法在控制装置(40、45)之间协商所述控制装置(40、45)的角色。
9.根据权利要求1所述的方法,其特征在于,OPC服务器(30)在可调节的时间段中n次识别出角色调换时选出其中一个控制装置(40、45)作为主控制装置。
10.具有至少一个OPC客户端(22)和一个OPC服务器(30)以及至少两个冗余运行的控制装置(40、45)的过程控制系统(5),所述OPC客户端和OPC服务器通过标准化的OPC接口(31)进行通信,所述控制装置分别通过耦合装置(33、34)与OPC服务器(30)通信,其中每个控制装置(40、45)用于提供过程变量和状态信息,状态信息包含各个控制装置的当前角色,其中当前角色或者是主控制装置或者是副控制装置,并且OPC服务器(3)的切换逻辑(32)用于通过对至少其中一个控制装置(40、45)的状态信息的响应来识别主控制装置(40)、在主控制装置(40)上注册由OPC客户端(22)所产生的变量列表和/或只是将由主控制装置(40)提供的过程变量传输给OPC客户端(22),所述OPC服务器(30)的切换逻辑(32)这时还周期性地读取副控制装置(45)的状态信息。
11.根据权利要求10所述的过程控制系统,其特征在于,OPC客户端(22)和OPC服务器(30)能够安装在共同的计算机(10)上或者分别安装在单独的计算机上。
12.一种根据权利要求10或11所述过程控制系统(5)的计算机(10),其中,在所述计算机(10)中安装一种计算机程序,所述计算机程序包含用于控制计算机(10)的指令,以根据对至少其中一个控制装置(40、45)的状态信息的响应来识别主控制装置、在主控制装置(40)上注册由OPC客户端(22)所产生的变量列表和/或只是将由主控制装置(40)提供的过程变量传输给OPC客户端(22)。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE102012003242A DE102012003242A1 (de) | 2012-02-20 | 2012-02-20 | Verfahren zum ausfallsicheren Betreiben eines Prozesssteuersystems mit redundanten Steuereinrichtungen |
DE102012003242.0 | 2012-02-20 | ||
PCT/EP2013/053269 WO2013124268A1 (de) | 2012-02-20 | 2013-02-19 | Verfahren zum ausfallsicheren betreiben eines prozesssteuersystems mit redundanten steuereinrichtungen |
Publications (2)
Publication Number | Publication Date |
---|---|
CN104137008A CN104137008A (zh) | 2014-11-05 |
CN104137008B true CN104137008B (zh) | 2016-10-12 |
Family
ID=47780035
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201380010187.7A Active CN104137008B (zh) | 2012-02-20 | 2013-02-19 | 具有冗余控制装置的过程控制系统的防故障运行方法 |
Country Status (5)
Country | Link |
---|---|
US (1) | US10372095B2 (zh) |
EP (1) | EP2817682B1 (zh) |
CN (1) | CN104137008B (zh) |
DE (1) | DE102012003242A1 (zh) |
WO (1) | WO2013124268A1 (zh) |
Families Citing this family (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE102013106954A1 (de) * | 2013-07-02 | 2015-01-08 | Phoenix Contact Gmbh & Co. Kg | Verfahren zur Fehlerüberwachung, Steuer- und Datenübertragungsanlage und Steuereinrichtung |
US10002091B2 (en) * | 2015-03-26 | 2018-06-19 | Honeywell International Inc. | Master/slave management for redundant process controller modules |
US10514173B2 (en) * | 2015-05-18 | 2019-12-24 | The Gsi Group, Llc | Animal house environment control system with multiple levels of redundancy |
CN105159034B (zh) * | 2015-09-21 | 2017-08-25 | 中国科学院长春光学精密机械与物理研究所 | 光刻投影物镜容错控制装置 |
CN106873565B (zh) * | 2015-12-14 | 2019-05-21 | 中国航空工业第六一八研究所 | 一种多余度飞控计算机换件后故障信息同步方法 |
EP3214512B1 (de) * | 2016-03-02 | 2018-04-25 | Siemens Aktiengesellschaft | Redundantes steuersystem für einen aktor und verfahren zu seiner redundanten steuerung |
KR102009139B1 (ko) * | 2017-04-18 | 2019-08-08 | 미쓰비시덴키 가부시키가이샤 | 데이터 서버 유닛 및 통신 시스템 |
EP3611579A1 (de) * | 2018-08-13 | 2020-02-19 | Siemens Aktiengesellschaft | Echtzeit-automatisierungseinrichtung mit einem echtzeit-datenbus |
DE102018120344A1 (de) * | 2018-08-21 | 2020-02-27 | Pilz Gmbh & Co. Kg | Automatisierungssystem zur Überwachung eines sicherheitskritischen Prozesses |
US11360694B2 (en) | 2019-05-08 | 2022-06-14 | Distech Controls Inc. | Method providing resilient execution of a service on a computing device |
US11379249B2 (en) * | 2019-05-08 | 2022-07-05 | Distech Controls Inc. | Computing device providing fail-safe execution of a service |
DE102019123271A1 (de) * | 2019-08-30 | 2021-03-04 | Phoenix Contact Gmbh & Co. Kg | Verfahren und industrielle Steuerung zum sychronisierten Aufrufen eines Funktionsbausteins in einem Steuerungsprogamm mit OPC UA |
EP4312418A1 (en) * | 2022-07-29 | 2024-01-31 | Abb Schweiz Ag | Method for automatic selection of servers |
CN116980231B (zh) * | 2023-09-19 | 2023-11-28 | 成都交大光芒科技股份有限公司 | 一种双链路冗余安全通信方法和装置 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1232556A (zh) * | 1996-10-04 | 1999-10-20 | 费希尔控制国际公司 | 带有冗余的现场设备和总线的过程控制网络 |
CN1527169A (zh) * | 2003-01-02 | 2004-09-08 | ����-��˹â��ϵͳ�ɷ�����˾ | 用于过程控制系统的冗余应用站 |
CN101004587A (zh) * | 2006-01-13 | 2007-07-25 | 艾默生过程管理电力和水力解决方案有限公司 | 用于正常和失配状况期间无缝切换的冗余控制器同步方法 |
Family Cites Families (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6415418B1 (en) | 1999-08-27 | 2002-07-02 | Honeywell Inc. | System and method for disseminating functional blocks to an on-line redundant controller |
US7998746B2 (en) | 2000-08-24 | 2011-08-16 | Robert Otillar | Systems and methods for localizing and analyzing samples on a bio-sensor chip |
US6742136B2 (en) * | 2000-12-05 | 2004-05-25 | Fisher-Rosemount Systems Inc. | Redundant devices in a process control system |
US8856345B2 (en) | 2002-03-11 | 2014-10-07 | Metso Automation Oy | Redundancy in process control system |
US7496668B2 (en) | 2002-06-28 | 2009-02-24 | Honeywell International Inc. | OPC server redirection manager |
EP1860564A1 (de) * | 2006-05-26 | 2007-11-28 | Siemens Aktiengesellschaft | Verfahren und Vorrichtung zum Austausch von Daten auf Basis des OPC-Kommunikationsprotokolls zwischen redundanten Prozessautomatisierungskomponenten |
US8234384B2 (en) | 2006-11-13 | 2012-07-31 | Jemmac Software Limited | Computer systems and methods for process control environments |
DE102008020507B4 (de) * | 2008-04-23 | 2016-08-04 | Endress + Hauser Process Solutions Ag | Verfahren zum Übersenden eines Telegramms |
-
2012
- 2012-02-20 DE DE102012003242A patent/DE102012003242A1/de not_active Withdrawn
-
2013
- 2013-02-19 US US14/379,414 patent/US10372095B2/en active Active
- 2013-02-19 CN CN201380010187.7A patent/CN104137008B/zh active Active
- 2013-02-19 WO PCT/EP2013/053269 patent/WO2013124268A1/de active Application Filing
- 2013-02-19 EP EP13707134.6A patent/EP2817682B1/de active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1232556A (zh) * | 1996-10-04 | 1999-10-20 | 费希尔控制国际公司 | 带有冗余的现场设备和总线的过程控制网络 |
CN1527169A (zh) * | 2003-01-02 | 2004-09-08 | ����-��˹â��ϵͳ�ɷ�����˾ | 用于过程控制系统的冗余应用站 |
CN101004587A (zh) * | 2006-01-13 | 2007-07-25 | 艾默生过程管理电力和水力解决方案有限公司 | 用于正常和失配状况期间无缝切换的冗余控制器同步方法 |
Also Published As
Publication number | Publication date |
---|---|
US20150018980A1 (en) | 2015-01-15 |
WO2013124268A1 (de) | 2013-08-29 |
EP2817682A1 (de) | 2014-12-31 |
EP2817682B1 (de) | 2020-04-29 |
DE102012003242A8 (de) | 2013-11-28 |
CN104137008A (zh) | 2014-11-05 |
US10372095B2 (en) | 2019-08-06 |
DE102012003242A1 (de) | 2013-08-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104137008B (zh) | 具有冗余控制装置的过程控制系统的防故障运行方法 | |
JP6806727B2 (ja) | 制御冗長性を提供するための方法および第1の現存構成部分とアップグレードモジュールとを備える装置 | |
JP5243384B2 (ja) | アプリケーションステーションで利用される冗長マネージャ | |
CN105974879B (zh) | 数字仪控系统中的冗余控制设备、系统及控制方法 | |
CN103246213B (zh) | 冗余控制装置之间的备用同步连接 | |
CN108023809B (zh) | 在过程控制系统中启用对设备的控制的系统和方法 | |
US7069112B2 (en) | Method and apparatus for controlling handling devices | |
CN101609421B (zh) | 运算处理装置的多重控制系统及多重控制方法 | |
US11281190B2 (en) | Method for setting up a redundant communication connection, and failsafe control unit | |
CA2396658A1 (en) | A method and apparatus for an active standby control system on a network | |
CN109923483B (zh) | 仿真装置以及仿真方法 | |
EP3561694B1 (en) | Management method, system, and device for master and standby databases | |
CN113867129A (zh) | 一种冗余控制方法、装置、系统、计算机设备及存储介质 | |
CN107864230A (zh) | 基于拓扑的互联网协议(ip)寻址 | |
CN107864231A (zh) | 使用工业控制程序的因特网协议寻址方法和系统 | |
CN106302700A (zh) | 基于paxos算法的分布式系统一致性更新方法及系统 | |
EP3073380A1 (en) | Redundant pc system | |
US8510402B2 (en) | Management of redundant addresses in standby systems | |
US10890901B2 (en) | Control unit and method for operating an industrial automation system communication network comprising a plurality of communication devices | |
CN103048920B (zh) | 一种用于集装箱冷水机组的双机热备冗余控制方法及系统 | |
JP5989288B1 (ja) | 冗長化システム及び通信ユニット | |
JP2006318394A (ja) | ネットワークシステムの無停電電源装置の管理方法 | |
KR20230005045A (ko) | 자동 운영 유지관리를 위한 방법들 및 장치들 | |
CN105306256B (zh) | 一种基于VxWorks设备的双机热备实现方法 | |
TWI647553B (zh) | Multi-machine synchronous cooperative control method and system |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant |