CN110825561A - 控制***以及控制装置 - Google Patents

控制***以及控制装置 Download PDF

Info

Publication number
CN110825561A
CN110825561A CN201910731391.7A CN201910731391A CN110825561A CN 110825561 A CN110825561 A CN 110825561A CN 201910731391 A CN201910731391 A CN 201910731391A CN 110825561 A CN110825561 A CN 110825561A
Authority
CN
China
Prior art keywords
control system
controller
application
output
processing unit
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
Application number
CN201910731391.7A
Other languages
English (en)
Other versions
CN110825561B (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.)
Yokogawa Electric Corp
Original Assignee
Yokogawa Electric Corp
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 Yokogawa Electric Corp filed Critical Yokogawa Electric Corp
Publication of CN110825561A publication Critical patent/CN110825561A/zh
Application granted granted Critical
Publication of CN110825561B publication Critical patent/CN110825561B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/54Interprogram communication
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operation
    • G06F11/1479Generic software techniques for error detection or fault masking
    • G06F11/1482Generic software techniques for error detection or fault masking by means of middleware or OS functionality
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operation
    • G06F11/1479Generic software techniques for error detection or fault masking
    • G06F11/1482Generic software techniques for error detection or fault masking by means of middleware or OS functionality
    • G06F11/1484Generic software techniques for error detection or fault masking by means of middleware or OS functionality involving virtual machines

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Quality & Reliability (AREA)
  • Software Systems (AREA)
  • Safety Devices In Control Systems (AREA)
  • Programmable Controllers (AREA)

Abstract

控制***(2)具有:硬件(111);应用间防干涉处理部(119),其在硬件(111)上动作;多个控制器应用(114),它们在应用间防干涉处理部(119)上动作;以及选择处理部(115),控制器应用(114)分别针对输入值执行规定的运算,输出作为运算结果的运算值,选择处理部(115)基于从控制器应用(114)分别输出的运算值,选择1个输出值,将输出值输出。

Description

控制***以及控制装置
本申请要求日本专利申请2018-151885号(在2018年8月10日申请)的优先权,此处为了参照而引入该申请的全部公开。
技术领域
本发明涉及进行过程控制的控制***以及控制装置。
背景技术
对于控制***,要求确保与控制对象相应的可靠性。在不要求高可靠性的情况下,采用使用1台控制装置的***,另一方面,在需要高可靠性的情况下,采用具备2台控制装置的冗余化结构的***。例如,在专利文献1中,公开了使用被称作计算机的2台控制装置的待机冗余型的双重化计算器***。
控制装置的功能通常由CPU(Central Processing Unit:中央处理装置)、存储器等硬件以及控制器应用的软件构成。无论该硬件、软件的哪个发生故障都会导致控制装置的动作出现故障。因此,专利文献1所示的控制装置设为将硬件以及软件这两者冗余化后的结构。因硬件的原因而使得***整体陷入故障的概率由于设为硬件冗余化结构而大幅降低。同样地,因软件的原因而使得***整体陷入故障的概率由于设为软件冗余化结构而大幅降低。
专利文献1:日本特开昭57-86970号公报
在具备使用了2台控制装置的冗余化结构的***中,与仅使用1台控制装置的***的情况相比,具有可靠性大幅提高的优点,但相反存在如下缺点,即,装置数量倍增,并且需要用于进行控制装置间的数据库等值化的通信路径等。具备使用如专利文献1所示的2台控制装置的冗余化结构的***的***成本通常大于或等于使用1台控制装置的***的2倍。从可靠性和成本的折衷的观点来讲,在具备使用2台控制装置的冗余化结构的***和仅使用1台控制装置的***之间,有很大的差别,未能提供中间的***。
发明内容
本发明能够实现缩小该差距、提高可靠性且抑制成本的控制***以及控制装置。
本发明涉及在一台硬件上通过冗余结构使多个控制器应用进行动作的控制***以及控制装置。
几个实施方式涉及的控制***具有:硬件;应用间防干涉处理部,其在硬件上动作;多个控制器应用(下面,简称为控制器),其在应用间防干涉处理部上动作;以及选择处理部,控制器分别针对输入值执行规定的运算,输出作为运算结果的运算值,选择处理部基于从控制器分别输出的运算值,选择1个输出值,将输出值输出。根据具有这种结构的控制***,只要选择处理部选择正确的运算值,即使在发生了多个控制器的一部分停止或计算出异常的运算值等错误的情况下,也能从控制***持续得到正常的输出。即,作为控制***整体,能够进行正常的控制动作。
在一个实施方式中,可以是,控制***具有大于或等于3个控制器,选择处理部将从控制器分别输出的运算值中的、相同的值最多的运算值、或者从控制器分别输出的运算值中的、相同的值达到过半数的运算值,选择为输出值。
在一个实施方式中,可以是,控制器的个数能够设定。
在一个实施方式中,可以是,输入值从输入装置输入至控制器,输出值从选择处理部输出至输出装置。
在一个实施方式中,可以是,选择处理部在与供应用间防干涉处理部动作的硬件不同的硬件上构成。
在一个实施方式中,可以是,控制***对输出了值与输出值不同的运算值的控制器进行确定。
在一个实施方式中,可以是,控制***执行对确定出的控制器进行再启动的处理。
在一个实施方式中,可以是,再启动的处理是基于来自外部的操作输入而执行的。
在一个实施方式中,可以是,控制***执行将确定出的控制器替换为预备的控制器的处理。
在一个实施方式中,可以是,替换的处理包含使与确定出的控制器相关的信息反映至预备的控制器的处理。
在一个实施方式中,控制***将与确定出的控制器相关的信息或者与针对确定出的控制器而执行的处理相关的信息,输出至外部的装置或者显示于显示部。
在一个实施方式中,可以是,控制***在输出了与确定出的控制器相关的错误信息的情况下,执行错误信息的保存和/或错误信息的分析。
在一个实施方式中,可以是,将分配给控制器的资源设定为不同的值。
在一个实施方式中,可以是,应用间防干涉处理部通过在硬件上动作的OS和在OS上动作的至少大于或等于3个客户OS,使控制器进行动作,或者通过至少大于或等于3个虚拟硬件使控制器在硬件上动作。
在一个实施方式中,可以是,应用间防干涉处理部通过在硬件上动作的OS和在OS上动作的至少大于或等于3个容器,使控制器动作。
几个实施方式涉及的控制装置具有:硬件;应用间防干涉处理部,其在硬件上动作;多个控制器应用,其在应用间防干涉处理部上动作;以及选择处理部,控制器应用分别针对输入值而执行规定的运算,输出作为运算结果的运算值,选择处理部基于从控制器应用分别输出的运算值,选择1个输出值,将输出值输出。
发明的效果
根据本发明,能够提供提高可靠性且抑制成本的控制***以及控制装置。
附图说明
图1是表示控制***的一个例子的概略图。
图2是表示本发明涉及的控制***的概念图。
图3是表示第1实施方式涉及的控制***的概略图。
图4是表示第2实施方式涉及的控制***的概略图。
图5是表示第1实施方式涉及的控制***的一个变形例的概略图。
图6是表示第1实施方式涉及的控制***的另一个变形例的概略图。
图7是表示第1实施方式涉及的控制***的又一个变形例的概略图。
标号的说明
1、2、3、4、5、6、7 控制***
10、110、210、310、410、510、610 控制装置
20、120 传感器
21、121 输入装置
30、130 驱动装置
31、131 输出装置
111 硬件
112 OS
113 客户OS
114 控制器应用
115 选择处理部
116 容器
117 虚拟硬件
118 应用组
119 应用间防干涉处理部
320 选择处理装置
421 输入部
431 输出部
具体实施方式
下面,参照附图对本发明的一个实施方式进行说明。
图1是表示控制***的一个例子的概略图。图1所示的控制***1具备控制装置10、输入装置21、输出装置31。控制***1例如用于车间的工业过程的控制等。在本说明书中,车间包含化学等工业车间、对气田或者油田等钻井或者其周边进行管理控制的车间、对水力·火力·核能等的发电进行管理控制的车间、对太阳能、风力等环境发电进行管理控制的车间、以及对给排水、水坝等进行管理控制的车间等。
控制装置10与网络连接。传感器20针对工业过程而设置,测定对象的物理量作为测定信号而从输入装置21经由网络输入至控制装置10。控制装置10基于所输入的测定信号,例如进行规定的运算处理,经由网络将与运算结果相应的控制信号输出至输出装置31。驱动装置30如果从输出装置31接收到控制信号的输入,则根据控制信号对工业过程进行驱动。在本说明书中,传感器例如是压力计、流量计以及温度传感器等传感器仪器、对车间内的异响等进行收集的麦克风、对各仪器的位置信息进行输出的位置检测仪器、对车间内的状况、对象物进行拍摄的照相机、摄像机等拍摄仪器,驱动装置包含流量控制阀、开闭阀等阀仪器、风扇、电动机等的操作端、发出警报声等的扬声器等音响仪器、以及其他仪器。
控制装置10例如由计算机装置构成。构成为,在硬件上使OS(Operating System:操作***)动作,在OS上使作为控制应用的控制器应用动作。针对所输入的测定信号,以规定的算法进行运算处理,生成控制信号。
控制装置的功能由CPU、存储器等硬件以及控制器应用的软件构成。由于无论哪个陷入动作不完全,控制装置都变为动作不完全,因此控制装置的故障发生率通过将硬件的故障的发生率和软件的故障的发生率的相加而决定。另外,硬件的故障大多由于偶发故障等而发生,软件的故障大多由于发现潜在错误等而发生。
近年来,有如下倾向,软件的复杂度的增加大幅地大于硬件的复杂度的增加,由软件的错误等导致发生故障的概率高于由硬件的故障导致发生故障的概率。因此,如果避开由软件导致的故障的发生,则对于确保控制装置整体的可靠性是有效的。
为了使得软件的动作可靠,有时会采用如下对策,即,将OS的功能限制得简易,对软件的制作方施加制约。然而,由于这样的对策,有时会制约控制***的功能,或者新功能等的追加会延迟。
作为不同的方法而假定如下结构,即,在一台硬件上通过冗余结构使多个控制器应用进行动作。
在使多个应用在一个硬件上动作的情况下,通常导入OS。然而,仅通过在OS上使相同的应用多次进行动作,不会实现冗余化。其原因在于OS所提供的应用之间的干涉排除是不完全的。
在OS上动作的多个应用中大于或等于1个应用由于某种理由而不必要地浪费大的计算资源的情况属于该情况。例如,有时由于应用存在程序性的错误,从而异常地大量花费CPU的处理时间而其他应用的执行变得迟缓。
另外,例如有时由于应用存在程序性的错误而发生反复进行在向OS发出了存储器区域取得请求之后未执行该存储器的释放的动作的被称作内存泄漏的现象。在发生内存泄漏时,OS所具有的存储资源枯竭,OS和在该OS上动作的全部应用的动作变得不稳定。
通过完全地进行在OS上安装的控制器应用的设计以及验证而能够避免内存泄漏这样的问题的发生。实际上,在创建控制器应用时,会花费大量的时间、工时而进行详细的设计和验证。
但是,在OS上动作的应用不限定于控制器应用。控制装置10有时被安装控制器以外的应用而执行动作。作为控制器以外的应用的一个例子,举出对传感器、驱动装置、工业过程自身的信息进行收集而判定是否发生了劣化、异常的诊断功能等的应用等。针对在控制装置10上动作的诊断应用等全部实施与控制器应用等同的严谨的设计以及验证,这从相对投资的效果的观点来看是困难的。
并且,还有时由OS自身导致控制器应用的动作滞后。例如,在进行用于改善OS自身的脆弱性的批处理、更新的情况下,有时OS的动作暂时性停滞,有时要求OS的再启动。即,单纯地导入OS而在其上使多个控制器应用进行动作,无法充分地解决课题。
因此,在本发明中,对提高可靠性、且抑制成本的控制***进行说明。
图2是本发明涉及的控制***的概念图。如图2所示,控制***2具备1台控制装置110、输入装置121以及输出装置131。控制***2例如用于车间的工业过程的控制等。
控制装置110例如由计算机装置构成。控制装置110具备硬件111。硬件111例如由CPU、存储器等构成。
控制装置110具备在硬件111上动作的应用间防干涉处理部119、选择处理部115。控制装置110具有在应用间防干涉处理部119上动作的多个控制器114-1至114-n。n可以为大于或等于2的整数。另外,在图2中,作为在应用间防干涉处理部119上动作的控制器以外的应用而记载有APP-A、APP-B、...APP-Z。控制器以外的应用即APP-A、APP-B、...APP-Z不是要求高可靠性的用途的应用,而是与控制器相比动作验证有可能不充分的应用。APP-A、APP-B、...APP-Z汇总多个而将118-1、118-2、...118-n记载为应用组。
控制装置110通过应用间防干涉处理部119和选择处理部115,从而即使在发生了控制器的故障的情况下,也能够进行正常的控制动作。应用间防干涉处理部119能够以各种方式实现。应用间防干涉处理部119例如可以通过在硬件上动作的OS和在OS上动作的客户OS使控制器应用动作。应用间防干涉处理部119例如也可以在硬件上通过虚拟硬件使控制器应用动作。应用间防干涉处理部119例如也可以通过在硬件上动作的OS、和在OS上动作的容器(container)而使控制器应用动作。上述客户OS、虚拟硬件、以及容器的数量可以适当设定,例如可以如以下实施方式中说明的那样,在通过多数决定而选择输出值的情况下,也可以大于或等于3个。下面,还包含应用间防干涉处理部119的具体方式而对本发明涉及的控制***的实施方式进行说明。
(第1实施方式)
图3是表示第1实施方式涉及的控制***的概略图。第1实施方式涉及的控制***3具备1台控制装置210、输入装置121以及输出装置131。控制***3例如用于车间的工业过程的控制等。
控制装置210与网络连接。传感器120针对工业过程而设置,测定对象的物理量作为测定信号而从输入装置121经由网络向控制装置210输入。控制装置210基于所输入的测定信号,进行例如规定的运算处理,经由网络将与运算结果相应的控制信号输出至输出装置131。驱动装置130如果从输出装置131接收到控制信号的输入,则根据控制信号而驱动工业过程。
控制装置210例如由计算机装置构成。控制装置210具备硬件111。硬件111例如由CPU、存储器等构成。
控制装置210具有:OS 112,其在硬件111上动作;多个客户OS113-1至113-n,它们在OS 112上动作;以及多个控制器114-1至114-n,它们在多个客户OS 113-1至113-n上分别动作。另外,在图3中,作为在客户OS上动作的控制器以外的应用而记载有APP-A、APP-B、...APP-Z。此外,APP-A、APP-B、...APP-Z也可以对控制器114-1至114-n输出通过运算而计算出的值的定时进行控制。OS 112作为多个客户OS 113-1至113-n的主机OS起作用。下面,在本说明书中,在不对各个客户OS进行区别的情况下,汇总记载为客户OS 113。同样地,在本说明书中,在不对各个控制器进行区别的情况下,汇总记载为控制器114。同样地,在本说明书中,在不对各个应用组进行区别的情况下,汇总记载为应用组118。
各控制器114基于所输入的测定信号,针对驱动装置130而计算出应当采用的值。各控制器114例如基于所输入的测定信号,以规定的算法进行运算处理,输出运算结果。
控制装置210还具有在硬件111上动作的选择处理部115。此外,在本说明书中,说明了选择控制部115在硬件111上动作,但选择控制部115也可以在OS 112上动作。在本实施方式中,选择处理部115由软件构成。在该情况下,选择处理部115例如可以通过专用的固件构建。选择处理部115基于各控制器114所计算出的运算值,选择1个输出值。即,通过各控制器114而计算出的运算值被输入至选择处理部115。选择处理部115基于从各控制器114输出的运算值,选择1个输出值,输出该输出值。控制装置210输出基于输出值的控制信号。控制信号从输出装置131输入至驱动装置130。驱动装置130根据控制信号而对过程进行操作。
选择处理部115可以通过任意适当的方法选择1个输出值。选择处理部115例如能够选择从各控制器114输入的运算值的任1个作为输出值。
选择处理部115可以构成为,基于从各控制器114输出的运算值,通过多数决定而选择输出值。在该情况下,选择处理部115选择从各控制器114输出的运算值中的、输出得最多的相同的值的运算值作为输出值。或者,选择处理部115也可以选择从多个控制器114输出的运算值中的、相同的值大于或等于半数的从控制器114输出的运算值作为输出值。即,选择处理部也可以将从多个控制器114输出的运算值中的、相同的值达到过半数的运算值选择为输出值。
在选择处理部115构成为通过多数决定而选择输出值的情况下,控制装置210可以具有大于或等于3个控制器114以及客户OS 113。例如,在控制装置210具有3个控制器114-1、114-2以及114-3的情况下,选择处理部115取得从3个控制器114-1、114-2以及114-3分别输出的运算值。选择处理部115例如在任意2个控制器输出相同的运算值、另1个控制器输出其他运算值的情况下,2个控制器所输出的运算值为输出得最多的运算值,因此,将该运算值选择为输出值。
例如,传感器120设为对流量进行测定的传感器。另外,选择处理部115构成为,通过多数决定而选择输出值。另外,驱动装置130由致动器构成,该致动器配置于配管,对控制在该配管流动的流体的流量的阀的开度进行调整。在该情况下,与由传感器120测定的流量相关的信息的信号被输入至控制装置210。在控制装置210中,多个控制器114分别基于所取得的与流量相关的信息,针对致动器而对应当输出的值进行运算,将运算结果作为运算值而输出。选择处理部115将所输出的运算值中的、相同值最多的运算值选择为输出值。控制装置210将由选择处理部115选择出的输出值作为控制信号而输出。驱动装置130如果接收到控制信号,则基于输出值对在配管流动的流体的流量进行调整。
由此,控制装置210在选择处理部115中基于从各控制器114输入的运算值而选择1个输出值,由此即使在例如多个客户OS 113的一部分或者多个控制器114的一部分发生了错误的情况下,也能够持续输出正常的输出值。例如,选择处理部115在构成为通过多数决定而选择输出值的情况下,能将从未发生错误的控制器114输出的运算值选择为输出值。因此,即使在多个控制器114的一部分发生了错误,也能够从控制装置210持续进行正常的输出,正常地驱动驱动装置130。
另外,根据控制装置210,即使在由于控制器114、应用组118的故障而导致一部分的控制器114、一部分的客户OS 113的动作变得不稳定的情况下,也不会由于OS的动作而在动作方面影响其他客户OS。
另外,对于本实施方式涉及的控制***3,在控制装置210内的多个控制器114中计算出运算值,由选择处理部115基于运算值而选择输出值。换言之,在控制***3中,能够通过1台控制装置210实现控制器应用的冗余化。因此,控制***3与在专利文献1中公开的***不同,不是为了冗余化而需要多个控制装置的***。因此,根据控制***3,与专利文献1相比,在能够减少控制装置这一硬件的数量的方面,能够减低成本。
这里,作为成本的决定要因,控制装置的台数是支配性的。例如,即使将控制装置所具有的运算能力、存储容量设为n倍,其成本也未达到n倍,而是成为1至n之间接近1倍的值。另外,如果不需要支付许可费用等,则即使多次向一个控制装置安装相同的控制器应用,其成本也不会增加。因此,根据本实施方式涉及的控制***3,与使用多个控制装置进行冗余化的情况相比,能够以低成本实现冗余化。
另外,本实施方式涉及的控制***3构成为在1台硬件111上具有多个控制器114,因此能够将从输入装置121输入至控制装置210的测定信号均匀地输入至全部的控制器114。换言之,例如,与传感器120在某个时间测定出的值相关的测定信号在从传感器120输入至控制装置210的情况下,被输入至1台控制装置210,因此,与网络的延迟等无关地,相同的测定信号被输入至1台硬件111上的控制器114。
另外,本实施方式涉及的控制***3构成为在1台硬件111上具有多个控制器114。因此,与具有例如在网络上分散地配置有多个控制装置的结构的***相比,能够降低网络的数据通信量。换言之,例如,在将来自输入装置121的测定信号发送至控制装置的情况下,在具有在网络上分散地配置有多个控制装置的结构的***中,针对多个控制装置,经由网络而发送各个测定信号。与此相对,在本实施方式涉及的控制***3中,只要向1台控制装置210发送测定信号即可。由此,在本实施方式涉及的控制***3中,能够降低通信量。其结果,能够防止由网络的拥塞引起的信号的收发的延迟,因此,控制***3有利于重视实时性的体系结构环境中的控制***的实现。
(第2实施方式)
图4是表示第2实施方式涉及的控制***的概略图。第2实施方式涉及的控制***4具备1台控制装置310、输入装置121、输出装置131以及选择处理装置320。控制***4例如用于车间的工业过程的控制等。在图4中,对于控制***4具备的各功能部中具有与图3所示的控制***3具备的功能部相同的结构以及功能的功能部,标注相同的标号。下面,对于与第1实施方式相同的点,适当省略说明,以不同的点为中心进行说明。
如图4所示,在第2实施方式涉及的控制***4中,选择处理装置320作为相对于控制装置310独立的其他装置而构成。选择处理装置320与网络连接。在本实施方式中,控制装置310从各控制器114输出作为运算结果的运算值。选择处理装置320经由网络而取得被输出的运算值。选择处理装置320基于从各控制器114输出的运算值,选择1个输出值。选择处理装置320输出基于输出值的控制信号。控制信号被从输出装置131输入至驱动装置130。驱动装置130相应于控制信号而进行驱动。在该情况下,根据与上述第1实施方式涉及的控制***3相同的理由,即使在由一部分的控制器114、应用组118的故障导致一部分的客户OS113的动作变得不稳定的情况下,也能够进行正常的控制动作。另外,在本实施方式中,能够减轻硬件111的处理负荷。
此外,选择处理装置320可以在输出装置131内构成。
上述各实施方式的控制装置只要具有大于或等于2台控制器114即可。在选择处理部115以及选择处理装置320构成为通过多数决定而选择输出值的情况下,控制装置210及310只要具有大于或等于3个控制器114以及客户OS 113即可。控制器114的个数越多,则即使发生了故障的控制器114的个数增加,也变得容易从控制装置持续输出正常的输出值,因此可靠性提高。控制器114的个数越多,则能够进一步延长从一部分的控制器114发生错误起至构建恢复措施为止的时间上的宽限。这样,控制器114的个数越多,对于控制***的用户以及管理者等而言,便利性越高。
例如,选择处理部115构成为通过多数决定而选择输出值,将从多个控制器114输出的运算值中的、相同的值大于或等于半数的从控制器114输出的运算值选择为输出值。在该情况下,至构建恢复措施为止的时间成为至多个控制器114整体的个数的一半发生错误为止的时间。在该时间内,能够执行将相同的值大于或等于半数的从控制器114输出的运算值选择为输出值的处理,因此,控制***的用户或者管理者等只要在该时间内构建恢复措施即可。因此,至该时间为止,即使一部分的控制器114发生错误,也能够使控制***持续运转。
控制装置210及310所具有的控制器114的个数可以适当规定。控制装置210及310所具有的控制器114的个数例如可以根据基于控制***3及4的用户的输入操作等、来自外部的输入而适当规定。这样,例如用户等可以根据应用控制***3或4的工业过程的使用条件(例如要求的可靠性)等而对控制器114的个数进行变更。
在上述各实施方式中,在选择处理部115或者选择处理装置320选择输出值时,也可以不对输出了值与该输出值不同的运算值的控制器114进行确定。输出了值与输出值不同的运算值的控制器114存在发生错误的可能性,因此通过进行以该方式确定的处理,从而能够对可能发生错误的控制器114进行确定。
OS 112也可以执行对以上述方式确定出的控制器114进行再启动的处理。通过对确定出的控制器114进行再启动,从而能够消除在控制器114中发生的错误。由此,错误的消除能够通过再启动之类的软件方面的处理而实现。
即使在控制器114未发生错误的状态下,也可以有意地进行停止、再启动。在控制器程序的更新、针对客户OS的安全补丁的应用、更新等中,通常控制器的动作会滞后,需要进行再启动。通过针对小于过半数的控制器程序、客户OS而按顺序进行更新作业,从而能够作为控制***整体而维持动作。
再启动的处理也可以基于来自外部的操作输入而执行。换言之,例如用户或者管理者等针对控制装置210或310、或者其他装置而进行用于使确定出的控制器114再启动的操作输入,控制器114或者客户OS 113基于该操作输入而执行再启动的处理。例如,用户或者管理者可以针对以可通信的方式与控制装置210或310连接的其他装置,进行用于使控制器114再启动的操作输入,由此执行再启动。例如,在控制装置210或310处于与用户或者管理者等常驻的位置分离的位置、而该其他装置处于该用户或者管理者等常驻的位置的情况下,用户或者管理者也能实际上不抵达控制装置210或310的设置位置,而是通过经由位于远程的其他装置的通信将错误的故障消除。因此,对于用户或者管理者等而言,便利性提高。
OS 112可以执行将以上述方式确定的控制器114分别替换为预备的控制器的处理。这里,预备的控制器是指多个控制器114中未使用的控制器。例如,控制装置210或310具备在多个控制器114中任意控制器114都未发生错误的情况下未使用的(即,未执行信息处理的)控制器。在由于在任意的控制器114发生错误而该控制器114通过上述处理被确定出的情况下,OS 112可以将该确定出的控制器114替换为预备的控制器。通过进行替换,从而取代存在发生错误的可能性的控制器114而使用预备的控制器,因此,变得容易维持从控制装置210或310输出的输出值的准确性。因此,能够提高可靠性。
OS 112在执行将确定出的控制器114分别替换为预备的控制器的处理的情况下,可以将与确定出的控制器114相关的信息分别反映至作为替换目标的预备的控制器。在该情况下,也可以在将控制器应用以外的应用安装于客户OS 113上的情况下,还反映与该控制器应用以外的应用相关的信息。例如,在控制装置210或310进行用于控制工业过程的处理的过程中,有时将在控制器114所执行的处理中使用的参数或者设定值等与控制器114相关的信息相对于初始值进行变更。在该情况下,通过将与确定出的控制器114相关的信息即变更后的信息反映至作为替换目标的预备的控制器,从而能够继承给预备的控制器。这样,能够在控制器114的替换前后以相同的条件持续进行处理。其结果,能够提高可靠性。与这样确定出的控制器114相关的信息可以不存在于控制器114,在控制***3或者4中可以储存于任意位置。
在针对控制器114执行再启动、替换为预备的控制器等规定的处理的情况下,与作为该处理的对象的控制器相关的信息或者与该执行的处理相关的信息可以显示于控制装置210或310具备的显示部。与作为该处理的对象的控制器相关的信息或者与该执行的处理相关的信息也可以显示于经由网络以可通信的方式与控制装置210或310连接的外部的装置所具备的显示部。由此,在显示与作为该处理的对象的控制器相关的信息或者与执行的处理相关的信息的情况下,用户或者管理者等通过确认该显示,从而能够获知与作为处理的对象的控制器114相关的信息或者针对控制器114而执行的处理。
OS 112在从确定出的控制器114输出与错误的发生相关的信息(下面,简称为“错误信息”)的情况下,对该错误信息进行保存,或者使用该错误信息而进行各种处理。错误信息可以包含例如表示错误的发生的信息、以及表示错误发生时的控制器114的设定的信息等。OS 112可以将错误信息保存至例如控制装置210或310内的存储区域。OS 112也可以将错误信息保存至例如控制装置210或310的外部的装置。通过保存错误信息,从而能够对过去的错误信息进行累积。另外,OS 112能够使用错误信息而进行各种处理。OS 112可以进行例如对错误信息进行分析的处理。具体而言,OS 112例如可以对控制器114所执行的运算处理等进行分析。这样,可以对发生错误的原因或者状况等进行调查。分析的结果的信息也可以在上述控制器114的替换时反映至作为替换目标的预备的控制器。即,分析的结果的信息也可以继承给预备的控制器。预备的控制器可以参照继承来的信息执行运算处理以使得不发生同样的错误。
在上述各实施方式中,说明了如下情况,即,控制装置210及310经由输入装置121取得由传感器120输出的测定信号,经由输出装置131将控制信号输出至驱动装置130。然而,控制装置的信号的输入输出并非一定由输入装置121以及输出装置131进行。
例如,控制***3及4也可以取代输入装置121以及输出装置131而具备具有输入装置121以及输出装置131这两者的功能的输入输出装置。在该情况下,经由该输入输出装置将测定信号输入至控制装置210或310,经由该输入输出装置将控制信号从控制装置210或310输出至驱动装置130。
另外,例如控制***并非一定具备输入装置121以及输出装置131。例如如图5中作为一个例子而概略所示,控制***5具备经由网络而彼此以可通信的方式连接的控制装置410、传感器120、驱动装置130。在图5所示的控制***5中,控制装置410在OS 112上具有执行信号的输入处理的输入部421以及执行信号的输出处理的输出部431。控制装置410经由输入部421而接收从传感器120输出的测定信号的输入,经由输出部431而将来自控制装置410的控制信号输出至驱动装置130。
另外,例如控制***并非一定具有多个客户OS 113。例如,如图6中作为一个例子而概略所示,控制***6具备经由网络而彼此以可通信的方式连接的控制装置510、传感器120、驱动装置130。图6所示的控制装置510具有在硬件111上动作的OS 112以及选择处理部115。图6所示的控制装置510与第1实施方式涉及的控制装置210不同,通过容器技术而具有在OS 112上构成的多个容器116-1至116-n。在本说明书中,在不对容器进行区别的情况下,汇总记载为容器116。各容器116-1至116-n分别具有控制器114-1至114-n。控制器114在作为专用区域而设置的容器116内,与第1实施方式中所说明的情况相同地,基于所输入的测定信号,针对驱动装置130而计算出应当采用的值,输出作为运算结果的运算值。而且,选择处理部115基于从各控制器114输出的运算值而选择1个输出值,输出该输出值。这样,在控制***6中,即使在一部分的控制器114发生了故障的情况下,也能够进行正常的控制动作。
此外,在图6所示的控制***6中,控制装置510在OS 112上还具备与容器116不同的其他容器,在该其他容器上,可以使控制器以外的应用(换言之,上述APP-A、APP-B、...APP-Z)动作。在该情况下,其他容器的每一者可以与控制器以外的应用的每一者一一对应。换言之,可以在控制装置510的OS 112上设置与控制器以外的应用相同数量的其他容器。
另外,例如如图7中作为一个例子而概略所示,控制***7具备经由网络而彼此以可通信的方式连接的控制装置610、传感器120、驱动装置130。图7所示的控制装置610与第1实施方式涉及的控制装置210不同,在硬件111上构成多个虚拟硬件117-1至117-n。在本说明书中,在不对虚拟硬件进行区别的情况下,汇总记载为虚拟硬件117。控制装置610具有:在各虚拟硬件117上动作的多个客户OS 113-1至113-n;以及在多个客户OS 113-1至113-n上分别动作的多个控制器114-1至114-n。控制器114与第1实施方式中说明的情况同样地,基于所输入的测定信号,针对驱动装置130而计算出应当采用的值,输出作为运算结果的运算值。而且,选择处理部115基于从各控制器114输出的运算值而选择1个输出值,输出该输出值。这样,在控制***7中,即使在一部分的控制器114发生了故障的情况下,也能够进行正常的控制动作。
在上述各实施方式以及变形例中,OS 112、容器116以及虚拟硬件117分配给在其上动作的客户OS 113、控制器114或者应用组118的资源可以设定为不同的值。这样,即使在发生内存泄漏的情况下,也能够使由内存泄漏引起的故障发生的定时错开。例如,相对于客户OS 113-1而分配客户OS 113-2为1.1倍、OS 113-3为1.3倍、OS 113-4为1.7倍等的存储器容量,则即使由于因控制器引起的内存泄漏而使得各客户OS的存储器资源以相同的步调浪费掉,各个客户OS的存储器资源枯竭而变得不能动作、再启动的定时也不重复。即,能期待作为控制***整体的动作持续。
以上,参照附图对本发明的实施方式进行了说明,但具体的结构并不限定于该实施方式,还包含在不脱离本发明的主旨的范围进行的各种变更。

Claims (16)

1.一种控制***,其具有:
硬件;
应用间防干涉处理部,其在所述硬件上进行动作;
多个控制器应用,其在所述应用间防干涉处理部上进行动作;以及
选择处理部,
所述控制器应用分别针对输入值执行规定的运算,输出作为运算结果的运算值,
所述选择处理部基于从所述控制器应用分别输出的运算值,选择1个输出值,输出所述输出值。
2.根据权利要求1所述的控制***,其中,
具有大于或等于3个所述控制器应用,
所述选择处理部将在从所述控制器应用分别输出的运算值中的、相同的值最多的运算值、或者在从所述控制器应用分别输出的运算值中的、相同的值达到过半数的运算值,选择为所述输出值。
3.根据权利要求1或2所述的控制***,其中,
所述控制器应用的个数能够设定。
4.根据权利要求1至3中任一项所述的控制***,其中,
所述输入值从输入装置输入至所述控制器应用,所述输出值从所述选择处理部输出至输出装置。
5.根据权利要求1至4中任一项所述的控制***,其中,
所述选择处理部在与供所述应用间防干涉处理部动作的硬件不同的硬件上构成。
6.根据权利要求1至5中任一项所述的控制***,其中,
所述控制***对输出了值与所述输出值不同的运算值的控制器应用进行确定。
7.根据权利要求6所述的控制***,其中,
所述控制***执行对所述确定出的控制器应用进行再启动的处理。
8.根据权利要求7所述的控制***,其中,
所述再启动的处理是基于来自外部的操作输入而执行的。
9.根据权利要求6所述的控制***,其中,
所述控制***执行将所述确定出的控制器应用替换为预备的控制器应用的处理。
10.根据权利要求9所述的控制***,其中,
所述替换的处理包含使与所述确定出的控制器应用相关的信息反映至所述预备的控制器应用的处理。
11.根据权利要求6至10中任一项所述的控制***,其中,
所述控制***将与所述确定出的控制器应用相关的信息或者与针对所述确定出的控制器应用而执行的处理相关的信息,输出至外部的装置或者显示于显示部。
12.根据权利要求6至11中任一项所述的控制***,其中,
所述控制***在输出了与所述确定出的控制器应用相关的错误信息的情况下,执行所述错误信息的保存和/或所述错误信息的分析。
13.根据权利要求1至12中任一项所述的控制***,其中,
所述控制***将分配给所述控制器应用的资源设定为不同的值。
14.根据权利要求1至13中任一项所述的控制***,其中,
所述应用间防干涉处理部通过在所述硬件上动作的OS和在所述OS上动作的至少大于或等于3个客户OS,使所述控制器应用进行动作,或者通过至少大于或等于3个虚拟硬件使所述控制器应用在所述硬件上动作。
15.根据权利要求1至13中任一项所述的控制***,其中,
所述应用间防干涉处理部通过在所述硬件上动作的OS和在所述OS上动作的至少大于或等于3个容器,使所述控制器应用进行动作。
16.一种控制装置,其具有:
硬件;
应用间防干涉处理部,其在所述硬件上动作;
多个控制器应用,其在所述应用间防干涉处理部上进行动作;以及
选择处理部,
所述控制器应用分别针对输入值而执行规定的运算,输出作为运算结果的运算值,
所述选择处理部基于从所述控制器应用分别输出的运算值,选择1个输出值,输出所述输出值。
CN201910731391.7A 2018-08-10 2019-08-08 控制***以及控制装置 Active CN110825561B (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2018151885A JP7056460B2 (ja) 2018-08-10 2018-08-10 制御システム及び制御装置
JP2018-151885 2018-08-10

Publications (2)

Publication Number Publication Date
CN110825561A true CN110825561A (zh) 2020-02-21
CN110825561B CN110825561B (zh) 2023-07-28

Family

ID=67658629

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910731391.7A Active CN110825561B (zh) 2018-08-10 2019-08-08 控制***以及控制装置

Country Status (4)

Country Link
US (1) US11048565B2 (zh)
EP (1) EP3608784B1 (zh)
JP (1) JP7056460B2 (zh)
CN (1) CN110825561B (zh)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7287325B2 (ja) * 2020-03-26 2023-06-06 横河電機株式会社 制御システム、制御装置、及び、フィールド機器へのアクセス方法
JP7264098B2 (ja) * 2020-03-26 2023-04-25 横河電機株式会社 制御システム
JP2024009696A (ja) 2022-07-11 2024-01-23 横河電機株式会社 制御装置、制御システム、制御方法、及び制御プログラム

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1505269A (zh) * 2002-10-21 2004-06-16 ������������ʽ���� 数据记录/再现装置
CN101398851A (zh) * 2007-09-25 2009-04-01 株式会社东芝 影像显示装置及方法
CN102891655A (zh) * 2011-02-25 2013-01-23 马克西姆综合产品公司 具有瞬时辅助电路的vcom放大器
JP2015026279A (ja) * 2013-07-26 2015-02-05 株式会社東芝 プラント監視制御装置及びプログラム

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5786970A (en) 1980-11-19 1982-05-31 Yokogawa Hokushin Electric Corp Doubled computer system
JPH1185713A (ja) * 1997-09-09 1999-03-30 Nec Corp マルチコンピュータシステム
US6163817A (en) * 1998-06-30 2000-12-19 U.S. Philips Corporation Dynamically disabling and enabling of devices in consumer system with multiple communication protocols
JP2002032244A (ja) * 2000-07-17 2002-01-31 Nec Corp 仮想計算機及びそれのダンプ採取方法
US7606838B2 (en) * 2006-02-22 2009-10-20 Microsoft Corporation Distributed conflict resolution for replicated databases
JP2009238068A (ja) * 2008-03-28 2009-10-15 Fujitsu Ltd 通信制御装置、通信制御方法
US8938736B2 (en) 2009-07-07 2015-01-20 Dell Products L.P. System and method for providing redundancy for management controller
JP5335150B2 (ja) * 2010-11-22 2013-11-06 三菱電機株式会社 計算機装置及びプログラム
JP5561298B2 (ja) * 2012-03-23 2014-07-30 横河電機株式会社 プロセス制御システム
US9696692B2 (en) * 2012-04-13 2017-07-04 Rockwell Automation Technologies, Inc. Industrial automation control system
JP6056488B2 (ja) * 2013-01-15 2017-01-11 富士通株式会社 消費電力量推定装置、及び消費電力量推定方法
JP5855724B1 (ja) * 2014-09-16 2016-02-09 日本電信電話株式会社 仮想機器管理装置、仮想機器管理方法及び仮想機器管理プログラム
JP6600698B2 (ja) * 2016-08-10 2019-10-30 株式会社日立製作所 計算機システム

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1505269A (zh) * 2002-10-21 2004-06-16 ������������ʽ���� 数据记录/再现装置
CN101398851A (zh) * 2007-09-25 2009-04-01 株式会社东芝 影像显示装置及方法
CN102891655A (zh) * 2011-02-25 2013-01-23 马克西姆综合产品公司 具有瞬时辅助电路的vcom放大器
JP2015026279A (ja) * 2013-07-26 2015-02-05 株式会社東芝 プラント監視制御装置及びプログラム

Also Published As

Publication number Publication date
JP2020027434A (ja) 2020-02-20
US20200050499A1 (en) 2020-02-13
US11048565B2 (en) 2021-06-29
EP3608784A1 (en) 2020-02-12
CN110825561B (zh) 2023-07-28
JP7056460B2 (ja) 2022-04-19
EP3608784B1 (en) 2022-11-23

Similar Documents

Publication Publication Date Title
US11119874B2 (en) Memory fault detection
US9734015B2 (en) Pre-boot self-healing and adaptive fault isolation
CN110825561B (zh) 控制***以及控制装置
CN104636221B (zh) 一种计算机***故障处理方法和装置
US8689187B2 (en) Predictive run testing
US20070006048A1 (en) Method and apparatus for predicting memory failure in a memory system
JP2012113466A (ja) メモリコントローラ及び情報処理システム
US10564636B2 (en) Method and arrangement for operating two redundant systems
US9798625B2 (en) Agentless and/or pre-boot support, and field replaceable unit (FRU) isolation
US8799608B1 (en) Techniques involving flaky path detection
JP6504610B2 (ja) 処理装置、方法及びプログラム
JP5056396B2 (ja) ソフトウェア動作監視装置、プログラム
KR102030461B1 (ko) 복수의 프로세서 오류 감지 시스템 및 그 방법
US11119669B2 (en) External indicators for adaptive in-field recalibration
WO2020109252A1 (en) Test system and method for data analytics
US9176806B2 (en) Computer and memory inspection method
JP6096397B1 (ja) 分析システム、及び、分析方法
CN117519052B (zh) 基于电子气体生产制造***的故障分析方法及***
US20240012391A1 (en) Control device, control system, control method, and computer-readable recording medium
JP7389877B2 (ja) ネットワークの最適なブートパスの方法及びシステム
US20060230196A1 (en) Monitoring system and method using system management interrupt
CN108415788B (zh) 用于对无响应处理电路作出响应的数据处理设备和方法
US20220414207A1 (en) Electronic device and attack detection method of electronic device
CN107451035B (zh) 用于计算机装置的错误状态数据提供方法
KR101491290B1 (ko) 시그널을 사용한 디바이스 드라이버 오류 진단 방법

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