JP7264098B2 - 制御システム - Google Patents

制御システム Download PDF

Info

Publication number
JP7264098B2
JP7264098B2 JP2020055915A JP2020055915A JP7264098B2 JP 7264098 B2 JP7264098 B2 JP 7264098B2 JP 2020055915 A JP2020055915 A JP 2020055915A JP 2020055915 A JP2020055915 A JP 2020055915A JP 7264098 B2 JP7264098 B2 JP 7264098B2
Authority
JP
Japan
Prior art keywords
control
field device
input
access
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.)
Active
Application number
JP2020055915A
Other languages
English (en)
Other versions
JP2021157392A (ja
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
Priority to JP2020055915A priority Critical patent/JP7264098B2/ja
Priority to US17/166,492 priority patent/US11449038B2/en
Priority to CN202110182654.0A priority patent/CN113448290B/zh
Publication of JP2021157392A publication Critical patent/JP2021157392A/ja
Priority to US17/887,912 priority patent/US11874646B2/en
Application granted granted Critical
Publication of JP7264098B2 publication Critical patent/JP7264098B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/12Protocols specially adapted for proprietary or special-purpose networking environments, e.g. medical networks, sensor networks, networks in vehicles or remote metering networks
    • H04L67/125Protocols specially adapted for proprietary or special-purpose networking environments, e.g. medical networks, sensor networks, networks in vehicles or remote metering networks involving control of end-device applications over a network
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/418Total factory control, i.e. centrally controlling a plurality of machines, e.g. direct or distributed numerical control [DNC], flexible manufacturing systems [FMS], integrated manufacturing systems [IMS] or computer integrated manufacturing [CIM]
    • G05B19/4183Total factory control, i.e. centrally controlling a plurality of machines, e.g. direct or distributed numerical control [DNC], flexible manufacturing systems [FMS], integrated manufacturing systems [IMS] or computer integrated manufacturing [CIM] characterised by data acquisition, e.g. workpiece identification
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/418Total factory control, i.e. centrally controlling a plurality of machines, e.g. direct or distributed numerical control [DNC], flexible manufacturing systems [FMS], integrated manufacturing systems [IMS] or computer integrated manufacturing [CIM]
    • G05B19/41845Total factory control, i.e. centrally controlling a plurality of machines, e.g. direct or distributed numerical control [DNC], flexible manufacturing systems [FMS], integrated manufacturing systems [IMS] or computer integrated manufacturing [CIM] characterised by system universality, reconfigurability, modularity
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/56Provisioning of proxy services
    • H04L67/568Storing data temporarily at an intermediate stage, e.g. caching
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/418Total factory control, i.e. centrally controlling a plurality of machines, e.g. direct or distributed numerical control [DNC], flexible manufacturing systems [FMS], integrated manufacturing systems [IMS] or computer integrated manufacturing [CIM]
    • G05B19/4185Total factory control, i.e. centrally controlling a plurality of machines, e.g. direct or distributed numerical control [DNC], flexible manufacturing systems [FMS], integrated manufacturing systems [IMS] or computer integrated manufacturing [CIM] characterised by the network communication
    • G05B19/41855Total factory control, i.e. centrally controlling a plurality of machines, e.g. direct or distributed numerical control [DNC], flexible manufacturing systems [FMS], integrated manufacturing systems [IMS] or computer integrated manufacturing [CIM] characterised by the network communication by local area network [LAN], network structure
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/33Director till display
    • G05B2219/33273DCS distributed, decentralised controlsystem, multiprocessor
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02PCLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS
    • Y02P90/00Enabling technologies with a potential contribution to greenhouse gas [GHG] emissions mitigation
    • Y02P90/02Total factory control, e.g. smart factories, flexible manufacturing systems [FMS] or integrated manufacturing systems [IMS]

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Manufacturing & Machinery (AREA)
  • Quality & Reliability (AREA)
  • General Physics & Mathematics (AREA)
  • Automation & Control Theory (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Health & Medical Sciences (AREA)
  • Computing Systems (AREA)
  • General Health & Medical Sciences (AREA)
  • Medical Informatics (AREA)
  • Programmable Controllers (AREA)

Description

本開示は、制御システムに関する。
プラント又は工場等におけるプロセス制御システムでは、センサ及びアクチュエータ等のフィールド機器が直接コントローラに接続された構成が一般的である。本開示において、フィールド機器が直接接続され、他のコントローラとのインタフェースとして機能するコントローラをIOノードと呼ぶ。
コントローラ上で動作する制御アプリケーションは、センサから読み取ったプロセスデータを用いて制御演算を行い、演算結果をアクチュエータに出力してプラントの制御を行う。従来、フィールド機器又はIOノードは、決められたコントローラに搭載された制御アプリケーションと論理的に繋がっており、フィールド機器、IOノード、コントローラ、及び、制御アプリケーションの組み合わせを変更して動作することができない。しかしながら、この方法では、制御アプリケーションが動作中のコントローラのハードウェアを交換する場合等において、システムを止める必要が生じる。このため、システムを止めることなくコントローラのハードウェアを交換する方法が提案されている(例えば、特許文献1及び2参照)。
特許第5561298号明細書 米国特許出願公開第2018/0321662号明細書
しかしながら、従来技術には、改善すべき点がある。本開示は、フィールド機器が接続された制御装置の処理負荷を分散させることが可能な制御システムを提供することを目的とする。
本開示は、それぞれが協働して動作するアクセス経路制御部を有する制御装置を含む制御システムに関するものである。
幾つかの実施形態に係る制御システムは、プラントの制御のためのデータの取得、及び、前記プラントの操作の少なくとも一方を行う一つ以上のフィールド機器と、前記一つ以上のフィールド機器に含まれる第1のフィールド機器が直接接続され、前記第1のフィールド機器を制御可能な第1の制御アプリケーション、及び、第1のアクセス経路制御部を含む、第1の制御装置と、前記第1のフィールド機器を制御可能な第2の制御アプリケーション、及び、第2のアクセス経路制御部を含む、少なくとも一つの第2の制御装置と、前記一つ以上のフィールド機器に対する入出力データを記憶する記憶部、及び、第3のアクセス経路制御部を含むキャッシュサーバと、前記第1の制御装置、前記第2の制御装置及び前記キャッシュサーバを通信可能に接続するネットワークと、を備える。前記第1のアクセス経路制御部は、前記第3のアクセス経路制御部に、前記第1のフィールド機器に対する入出力データを送信することを可能に構成される。前記第3のアクセス経路制御部は前記第1のアクセス経路制御部から受信した入出力データを前記記憶部に記憶させることを可能に構成される。前記第1のアクセス経路制御部、前記第2のアクセス経路制御部、及び、前記第3のアクセス経路制御部は、協働して、前記第1の制御アプリケーション及び前記第2の制御アプリケーションのそれぞれからの、前記第1のフィールド機器への入出力の経路を制御するとともに、前記第2の制御アプリケーションから前記第1のフィールド機器への入出力指示を、前記キャッシュサーバに転送することを可能に構成される。このように、キャッシュサーバを設け、第1のフィールド機器に対する入出力データを記憶部に記憶させ、第2の制御アプリケーションから第1のフィールド機器への入出力指示をキャッシュサーバに転送できるようにすれば、第1のフィールド機器が接続された第1の制御装置の処理負荷を、キャッシュサーバが時間的に分散させることが可能になる。
一実施形態において、前記第1のアクセス経路制御部、前記第2のアクセス経路制御部、及び、前記第3のアクセス経路制御部は、前記第1の制御装置の負荷が所定の条件を満たす場合、前記第2の制御アプリケーションから前記第1のフィールド機器への入出力指示を、前記キャッシュサーバに転送するように構成されてよい。このように、第1の制御装置の負荷が所定の条件を満たす場合、第2の制御アプリケーションから第1のフィールド機器への入出力指示を、キャッシュサーバに転送すれば、第1の制御装置の負荷が高いとき、第1の制御装置の負荷を低減させることが可能になる。
一実施形態において、前記第1のアクセス経路制御部、前記第2のアクセス経路制御部、及び、前記第3のアクセス経路制御部は、前記第2の制御アプリケーションによる前記第1のフィールド機器への制御の種類に応じて、前記第2の制御アプリケーションから前記第1のフィールド機器への入出力指示を、前記キャッシュサーバに転送するように構成されてよい。このように、第2の制御アプリケーションによる第1のフィールド機器への制御の種類に応じて、第2の制御アプリケーションから第1のフィールド機器への入出力指示を、キャッシュサーバに転送すれば、第1のフィールド機器への制御の種類(例えば、監視又は制御、および機器管理等)に応じた最適なアクセス方法を自動的に選択することが可能になる。
一実施形態において、前記第1の制御装置を交換する場合において、前記第1のアクセス経路制御部は、前記第1のフィールド機器に対する入出力データを前記第3のアクセス経路制御部に送信し、前記第3のアクセス経路制御部は、前記記憶部に前記第1のフィールド機器に対する前記入出力データを記憶して固定し、前記第2の制御アプリケーションの前記第1のフィールド機器に対する入出力指示は、前記キャッシュサーバに転送されるように構成されてよい。このように、第1のフィールド機器に対する入出力データを、キャッシュサーバの記憶部に記憶して固定し、第2の制御アプリケーションの第1のフィールド機器に対する入出力指示が、キャッシュサーバに転送されるようにすれば、第2の制御装置を停止することなく、第1の制御装置を交換することができる。
一実施形態において、前記制御システムは、前記一つ以上のフィールド機器に含まれる、前記ネットワークに直接接続された第2のフィールド機器をさらに備え、前記第3のアクセス経路制御部は、前記第2のフィールド機器に入出力可能に構成され、前記第1のアクセス経路制御部及び前記第2のアクセス経路制御部は、前記第1の制御アプリケーション及び第2の制御アプリケーションのから前記第2のフィールド機器への入出力指示を、前記キャッシュサーバに転送することを可能に構成されてよい。このように、第3のアクセス経路制御部が、第2のフィールド機器に入出力可能に構成され、第1のアクセス経路制御部、及び、第2のアクセス経路制御部が、第1の制御アプリケーション及び第2の制御アプリケーションから前記第2のフィールド機器への入出力指示を、前記キャッシュサーバに転送することを可能に構成されるようにすれば、第2のフィールド機器を制御システムに取り込んで制御することが可能になることに加え、第2のフィールド機器と第1の制御装置又は第2の制御装置との間でプロトコル変換等の通信処理をする必要がない。
一実施形態において、前記第1の制御装置は、判定部を備え、前記第1の制御アプリケーション及び前記第2の制御アプリケーションの少なくとも何れかを含む複数の制御アプリケーションが、前記第1のフィールド機器からの出力値に基づいて、同一の制御演算を行い前記第1のフィールド機器への入力値を算出し、前記判定部は前記複数の制御アプリケーションにより算出された複数の前記入力値に基づいて、前記第1のフィールド機器への入力値を決定するように構成されてよい。このように、第1の制御装置が判定部を備え、複数の制御アプリケーションにより算出された複数の入力値に基づいて、第1のフィールド機器への入力値を決定するようにすれば、制御システムの制御の信頼性を高めることができる。
本開示によれば、フィールド機器が接続された制御装置の処理負荷を分散させることができる。
参考形態に係る制御システムの一例を示す概略図である。 図1の制御システムの要部の構成例を示すブロック図である。 制御アプリケーションから入出力指示を受けたIOアクセスルーティング部が実行する処理の一例を示すフローチャートである。 通信部から入出力指示を受けたIOアクセスルーティング部が実行する処理の一例を示すフローチャートである。 制御アプリケーションをIOノードからコントローラへ移動する手順の一例を示すフローチャートである。 制御アプリケーションをコントローラからIOノードへ移動する手順の一例を示すフローチャートである。 第1実施形態に係る制御システムの一例を示す概略図である。 図7の制御システムの要部の構成例を示すブロック図である。 IOノードを交換する手順の一例を示すフローチャートである。 第2実施形態に係る制御システムの一例を示す概略図である。 第3実施形態に係る制御システムの要部の構成例を示すブロック図である。 判定部を有するIOノードの一例を示すブロック図である。
本開示に係る実施形態について説明する前に、従来技術に基づく比較例について説明する。
[比較例]
特許文献1は、制御アプリケーションがフィールド機器の接続されていないコントローラ上の仮想ハードウェアで動作し、フィールド機器が接続された冗長化IOノードとコントローラとがネットワークを介して接続する構成のプロセス制御システムを提案している。このプロセス制御システムによれば、冗長化IOノードは、フィールド機器で入出力される信号と、ネットワークを介してコントローラと通信される信号との変換を行う。これにより、制御アプリケーションは任意のコントローラ上で動作し、また任意のフィールド機器と接続することができる。このプロセス制御システムによれば、制御アプリケーションとコントローラとの組み合わせを一時的に変更することで、システムを止めることなくコントローラのハードウェアを交換することができる。しかしながら、特許文献1の制御システムでは、冗長化IOノードは制御アプリケーションを搭載せず、フィールド機器はコントローラのみから制御された。このため、フィールド機器へのアクセス方法には改良の余地があった。
特許文献2には、特許文献1と同様に、フィールド機器が接続されたIOノードとコントローラとがネットワークを介して接続された制御システムが開示されている。特許文献2に記載されるIOノードは、IOノードに接続されたフィールド機器を制御する制御アプリケーションが動作可能に構成される。また、特許文献2のフィールド機器に接続されていないコントローラ上の制御アプリケーションは、ネットワークを経由して、IOノードに接続されたフィールド機器にアクセス可能に構成される。コントローラとIOノードとの通信のため、例えば、OPC UA(OPC Unified Architecture)のような通信プロトコルが使用される。特許文献2の制御システムでは、コントローラの制御アプリケーションが別のコントローラに移動しても、制御アプリケーションは、ネットワークを経由して同じフィールド機器にアクセスすることができる。
特許文献2に開示されるような制御システムでは、IOノードに接続されたフィールド機器にアクセスするため、コントローラ上で稼働する制御アプリケーションは、ネットワーク経由でフィールド機器にアクセスする手順を実行する。自装置に接続されたフィールド機器を制御するIOノード上で稼働する制御アプリケーションは、フィールド機器の入出力のために割り当てられた特定のメモリアドレスに直接アクセスして情報の入出力を行う。このため、コントローラ上で稼働する制御アプリケーションを、IOノードに搭載すると、フィールド機器へのアクセスは、ネットワーク経由のアクセスとなる。この場合、メモリアドレスを直接指定してフィールド機器に入出力をする場合に比べ、余計な通信負荷又は処理負荷が生じる。また、IOノード上で稼働する制御アプリケーションは、ネットワーク経由でのフィールド機器へのアクセスを前提としていないので、コントローラに搭載することができない。システムを止めることなくハードウェアの交換又はソフトウェアの更新を行うためには、コントローラ上かIOノード上かに関わらず、制御アプリケーションはフィールド機器に適切な方法で入出力を行うことが好ましい。
そこで、本開示は、制御アプリケーションの位置に依らずフィールド機器に適切な方法で入出力を行うことができる制御システム、制御装置、及び、フィールド機器へのアクセス方法を提案する。また、本開示は、制御装置の交換及び負荷分散を容易に行うことができる制御システムを提案する。以下、本開示の実施形態について、図面を参照して説明する。
[参考形態]
図1は、参考形態に係る制御システム1の一例を示す概略図である。制御システム1は、それぞれ一つ以上のフィールド機器10、IOノード20、及び、コントローラ30、並びに、ネットワーク40を含む。制御システム1は、さらに、監視装置45を含んでよい。フィールド機器10は、第1のフィールド機器である。IOノード20は、第1の制御装置である。コントローラ30は第2の制御装置である。
フィールド機器10は、プラントの制御のためのデータの取得、及び、前記プラントの操作の少なくとも一方を行う。フィールド機器10は、例えば、温度センサ又は流量計等のセンサ11、若しくは、バルブ機器、ファン又はモータ等のアクチュエータ12である。
IOノード20は、フィールド機器10が直接接続され、且つ、制御アプリケーション21(図2参照)が動作する装置である。IOノード20は、フィールド機器10とコントローラ30とのインタフェースとしても使用される。以下の説明では、IOノード20が複数ある場合に、いずれもIOノード20と表記する場合がある。説明のため必要な場合、複数のIOノード20の一つをIOノード20Aとして特定のIOノード20と区別する。また、IOノード20Aに接続されるフィールド機器をフィールド機器10A(センサ11A及びアクチュエータ12A)とすることがある。
本参考形態のコントローラ30は、フィールド機器10が直接接続されておらず、制御アプリケーション31(図2参照)が動作する装置である。本参考形態では、コントローラにフィールド機器10が直接接続された機器は、IOノード20とする。コントローラ30は、ネットワーク40を経由して、IOノード20と通信可能に構成される。コントローラ30は、制御アプリケーション31に従って、IOノード20を経由して、フィールド機器10にアクセスすることができる。コントローラ30は、IOノード20に接続された複数のフィールド機器10の入出力をすることが可能である。
ネットワーク40は、プラント内のIOノード20、コントローラ30、監視装置45等の情報機器を接続可能なプラント内専用の通信ネットワークである。ネットワーク40は、有線又は無線の構内通信網(LAN:Local Area Network)を含んでよい。有線の構内通信網は、例えば、イーサネットを含む。無線の構内通信網は、例えばWi-Fi(登録商標)及びWiMAX(登録商標)等の無線通信規格に準拠した無線ネットワークを含む。さらにOPC UAやPROFINETのような標準化されたプロトコルを使用する通信ネットワークを用いてもよい。
監視装置45は、プラント全体の動作状況を監視するために使用される装置である。監視装置45には、それぞれのIOノード20及びコントローラ30から、アプリケーションの動作状態が送信されてよい。アプリケーションの動作状態には、稼働、停止、アイドル、エラー等を含む。監視装置45は、表示手段及び入力手段を有する。監視装置45は、運転員の指示に従って、又は、プログラムされた手順に従って、IOノード20及びコントローラ30を制御する。監視装置45は、制御アプリケーション21、31を停止させたり、アプリケーションの動作を調整したりするために使用される。
次に、図2を参照して、制御システム1の要部の構成例についてさらに説明する。
IOノード20は、制御アプリケーション21、IOアクセスルーティング部22、IOアクセス部23及び通信部24を含んで構成されうる。制御アプリケーション21は、第1の制御アプリケーションである。IOアクセスルーティング部22は、第1のアクセス経路制御部である。なお、図1に示したIOノード20Aも、IOノード20と同様の構成要素を有する。以下において、IOノード20Aの構成要素に対し、IOノード20の構成要素と同じ参照符号を付して説明する場合がある。
制御アプリケーション21は、IOノード20に接続されたフィールド機器10を制御することができる。制御アプリケーション21は、他のIOノード20Aに接続されたフィールド機器10Aを制御してもよい。制御アプリケーション21は、オペレーティングシステム上で動作してよい。制御アプリケーション21は、プロセス制御を行う上で必要なフィールド機器10の制御(例えば、フィールド機器10からの測定データの収集及びフィールド機器10に対する制御データの送信等)を行う。
IOアクセスルーティング部22は、制御アプリケーション21に対して抽象化されたIOアクセス方法を提供する。IOアクセスルーティング部22は、IOアクセスルーティング部22が搭載されたIOノード20とフィールド機器10との物理的な関係に合わせてアクセス方法を適応的に変更する。ハードウェアを抽象化するため、IOアクセスルーティング部22は、IOノード20内の仮想化部25に含まれてよい。仮想化部25は、IOノード20のハードウェア上でハードウェアの代わりとして仮想的に動作する。仮想化部25は、制御アプリケーション21を変更することなくIOノード20のハードウェアの交換を可能にするために設けられる。しかし、IOアクセスルーティング部22の機能を提供するために、仮想化部25は必須ではない。仮想化部25が無くとも、IOアクセスルーティング部22を実装することは可能である。
IOアクセス部23は、IOノード20に接続されたフィールド機器10との間で、データの入出力処理を行う。IOアクセス部23は、IOアクセス用のポート及び回路等を含んでよい。
通信部24は、ネットワーク40を介して他のIOノード20A及びコントローラ30と通信を行う。通信部24は、ネットワーク40の種類に応じて必要な通信処理を行う。通信部24は、ネットワーク40と接続するための物理インタフェース、及び、プロトコル処理等を行う回路等を含んでよい。
コントローラ30は、制御アプリケーション31、IOアクセスルーティング部32、及び通信部33を含んで構成される。制御アプリケーション31は、第2の制御アプリケーションである。IOアクセスルーティング部32は、第2のアクセス経路制御部である。制御アプリケーション31、IOアクセスルーティング部32、及び、通信部33は、それぞれ、IOノード20の制御アプリケーション21、IOアクセスルーティング部22、及び通信部24と同一又は類似の機能を有するので、説明を省略する。
IOアクセスルーティング部22及びIOアクセスルーティング部32は、協働して、制御アプリケーション21及び制御アプリケーション31のそれぞれからの、フィールド機器10への入出力の経路を制御するように構成される。本開示において、「協働する」とは、例えば、各装置のIOアクセスルーティング部が、お互いの存在および通知先を知っており、自らに接続されている制御アプリケーションの有無(有の場合は、その情報や状態等)、および、自らに接続されているフィールド機器の有無(有の場合は、その情報や状態等)を、適宜、他装置のIOアクセスルーティング部と情報交換可能となっている状態を示す。したがって、監視装置などから、指示があった際には、適切な相手先(他装置のIOアクセスルーティング部)に対し、処理を実行もしくは実行依頼することが可能となる。IOアクセスルーティング部22及びIOアクセスルーティング部32は、フィールド機器10との物理的な位置関係に応じて、例えば、以下のようにアクセス方法を決定する。IOアクセスルーティング部22及びIOアクセスルーティング部32が提供する機能を、IOアクセスルーティング機能と呼ぶ。
(1)メモリアドレス指定:
フィールド機器10の入出力単位は、通常IOノード20のメモリ領域に割り当てられる。IOノード20の制御アプリケーション21が、IOノード20に直接つながっているフィールド機器10にアクセスする場合、IOアクセスルーティング部22は、制御アプリケーション21がI/O名で示したフィールド機器10の入出力単位に対応したメモリ領域のアドレスを指定して、フィールド機器10にアクセスする。
(2)ネットワーク経由:
コントローラ30の制御アプリケーション31がネットワーク40でつながっているIOノード20に接続されたフィールド機器10にアクセスする場合、IOアクセスルーティング部32は、制御アプリケーション31からI/O名とともに示された入出力指示を、ネットワーク40を経由してIOノード20に転送する。コントローラ30から入出力指示を受けたIOノード20のIOアクセスルーティング部22は、フィールド機器10の入出力に対応したメモリアドレスを指定してフィールド機器10にアクセスする。IOノード20の制御アプリケーション21がネットワーク40でつながっている他のIOノード20Aに接続されたフィールド機器10Aにアクセスする場合も、IOアクセスルーティング部22は、制御アプリケーション21からの入出力指示を、ネットワークを経由してIOノード20Aに転送する。
入出力単位とは、フィールド機器10に対して一回にデータの入出力を行う単位を意味する。例えば、フィールド機器10が温度を計測するセンサ11の場合、フィールド機器10から出力される温度情報は、入出力単位となりうる。例えば、フィールド機器10がヒーター(アクチュエータ12)であり、温度を所定の設定値に上昇させる指示をフィールド機器10に送信する場合、フィールド機器10に出力されるヒーターの稼働指示及び設定温度を示す情報は、入出力単位となりうる。フィールド機器10には、一つ又は複数の入出力単位でアクセス可能である。フィールド機器10のそれぞれの入出力単位の情報の入出力先をI/Oと呼ぶ。I/Oは、例えば、メモリアドレスである。
(IOアクセスルーティング部の処理)
図3及び図4を参照して、IOアクセスルーティング部22、32の実行する処理の例を説明する。図3は、制御アプリケーション21、31から指示を受けて、IOアクセスルーティング部22、32が実行する処理を示す。図4は、IOノード20の通信部24が、ネットワーク40を経由して他のIOノード20A又はコントローラ30からの入出力指示を受け、通信部24からこの入出力指示を受けてIOアクセスルーティング部22が実行する処理を示す。
まず、図3において、IOアクセスルーティング部22、32は、制御アプリケーション21、31からフィールド機器10のI/Oを抽象化した固有の名称とともにフィールド機器10への入出力指示を受ける(ステップS101)。固有の名称としては、システム内で唯一となるように定義された名称を使用することができる。I/Oの固有の名称を以下にI/O名と呼ぶ。制御アプリケーション21、31は、フィールド機器10の物理的な位置、又は、フィールド機器10が接続されたIOノード20のIPアドレスを指定するのではなく、I/Oに割り当てたI/O名を指定してアクセスする。これにより、制御アプリケーション21、31は、フィールド機器10との物理的位置関係又は接続関係に依らず、入出力をするフィールド機器10のI/Oを同じ方法で特定することができる。
次に、IOアクセスルーティング部22、32は、制御アプリケーション21、31から受け取ったI/O名に基づいて、対応するフィールド機器10の位置情報を特定する(ステップS102)。フィールド機器10の位置情報とは、フィールド機器10に繋がる経路と言い換えることができる。フィールド機器10の位置情報は、フィールド機器10が接続されるIOノード20の情報を含む。I/O名に対応するフィールド機器10及びその位置情報の特定は、種々の方法により行うことができる。例えば、各IOアクセスルーティング部22、32に、I/O名とフィールド機器10及びその位置情報との対応関係を示す変換テーブルを持たせることができる。或いは、ネットワーク40上に、I/O名とフィールド機器10及びその位置情報との対応を記憶する管理サーバを設けることができる。管理サーバは、I/O名を用いたIOアクセスルーティング部22、32からの問い合わせに対してフィールド機器10の位置情報を返すようにすることができる。
IOアクセスルーティング部22、32は、I/O名に基づいて対応するフィールド機器10の位置情報を特定すると、そのフィールド機器10が自装置に接続されているか否かを判断する(ステップS103)。
ステップS103において、I/O名に対応するフィールド機器10が自装置に接続されている場合(ステップS103:Yes)、IOアクセスルーティング部22、32は、ステップS104に進む。この場合、自装置は、IOノード20である。IOアクセスルーティング部22は、I/O名に対応するメモリアドレスを指定してI/Oにアクセスし、データの入出力を行う(ステップS104)。
ステップS103において、I/O名に対応するフィールド機器10が自装置に接続されていない場合(ステップS103:No)、IOアクセスルーティング部22、32は、ステップS105に進む。以下では、I/O名に対応するフィールド機器10が図1のフィールド機器10Aであったとする。この場合、IOアクセスルーティング部22、32は、I/O名に対応するフィールド機器10Aが接続されている他のIOノード20AのIOアクセスルーティング部22へ、制御アプリケーション21、31からのデータの入出力指示を転送する(ステップS105)。言い換えれば、IOアクセスルーティング部22、32は、制御アプリケーション21、31からの入出力を、I/O名に対応するフィールド機器10Aが接続されたIOノード20Aに振り向けるように経路を制御する。
I/Oへのアクセスは、入出力指示を受けた他のIOノード20Aにおいて、通信部24から受信した指示によりIOアクセスルーティング部22が実行する(図4参照)。自装置であるIOノード20又はコントローラ30のIOアクセスルーティング部22、32は、I/O名に対応するフィールド機器10Aが接続されている他のIOノード20AのIOアクセスルーティング部22から、データの入出力結果を取得する(ステップS106)。
ステップS104又はステップS106が終了した後、IOアクセスルーティング部22、32は、データの入出力結果を制御アプリケーション21、31に送信する(ステップS107)。
次に、図4に基づいて、通信部24から受信した指示によりIOアクセスルーティング部22が実行する処理について説明する。IOノード20の通信部24が、他のIOノード20又はコントローラ30から入出力指示を受信すると、IOノード20のIOアクセスルーティング部22は、通信部24からデータの入出力指示を受ける(ステップS201)。通信部24から入出力指示を受けたIOアクセスルーティング部22は、当該入出力指示が、自装置に接続されたフィールド機器10への入出力指示であることを確認する(ステップS202)。
次に、通信部24から入出力指示を受けたIOアクセスルーティング部22は、メモリアドレスを指定してI/Oにアクセスしてデータの入出力を行う(ステップS203)。ステップS203の後、IOアクセスルーティング部22は、通信部24を介して、データの入出力結果を、入出力指示を送信したコントローラ30又はIOノード20のIOアクセスルーティング部22、32に送信する(ステップS204)。
例えば、図3のステップS105に対応して、図1のIOノード20AがIOノード20からフィールド機器10Aに対する入出力指示を受けた場合、IOノード20Aの通信部24から受信した指示により、IOノード20AのIOアクセスルーティング部22が、メモリアドレスを指定してデータの入出力を行う。IOノード20AのIOアクセスルーティング部22は、IOノード20Aの通信部24を介して、データの入出力結果を、入出力指示を送信したIOノード20のIOアクセスルーティング部22に送信する。
以上のようにすることによって、制御アプリケーション21、31は、フィールド機器10の位置情報又は接続されているIOノード20を特定することなく、抽象化されたI/O名によりI/Oにアクセスすることが可能になる。これにより、制御アプリケーションは、搭載されるIOノード20又はコントローラ30と、フィールド機器10との物理的位置関係に依らず、同じ方法でI/Oにアクセスすることが可能になる。
(制御アプリケーションの移動)
次に、図5のフローチャートを参照して、制御アプリケーション21を制御対象のフィールド機器10が接続されたIOノード20からコントローラ30に移動させる場合の処理を説明する。この場合、I/Oへのアクセス方法が、メモリアドレス指定からネットワーク経由に変更される。制御アプリケーション21の移動自体は、一般的なライブマイグレーションの仕組みを利用することができる。移動の対象は制御アプリケーション21のみである。仮想化部25及びIOアクセスルーティング部22は移動しない。
まず、IOノード20上の制御アプリケーション21に移動が指示される(ステップS301)。移動の指示には、制御システム1の運転員が監視装置45から指示する場合、又は、制御システム1の何れかの装置の何らかの動作をトリガーとして、監視装置45から自動的に指示が発せられる場合等が含まれる。移動の指示は、例えば、IOノード20の仮想化部25に対して発せられる。以下の各装置の処理は、監視装置45の制御のもとに行われてよい。
移動の指示を受けたIOノード20の仮想化部25は、制御アプリケーション21の動作を一時的に停止させ、稼働を再開するために必要なデータを移動先のコントローラ30にコピーする(ステップS302)。
IOノード20のIOアクセスルーティング部22は、フィールド機器10にアクセスする制御アプリケーション31の位置を、移動先のコントローラ30に設定し、ネットワーク経由でアクセスできるようにする(ステップS303)。制御アプリケーション31は、コントローラ30で制御アプリケーション21と同じ処理を実行する。ステップS303は、ステップS302と並行して実行されてよい。
必要なデータが移動先のコントローラ30にコピーされると、制御アプリケーション31が処理を再開する(ステップS304)。制御アプリケーション31は、I/O名とともに示された入出力指示を、IOアクセスルーティング部32に対して行う。
IOアクセスルーティング部32は、制御アプリケーション31の指定するI/O名に基づいてフィールド機器10を制御するためのアクセス先を自動的に判断する(ステップS305)。例えば、I/O名とフィールド機器10の位置情報との対応は、変換テーブルにより予めIOアクセスルーティング部32に記憶されている。このため、ステップS305では、人手により又は専用に作られたプログラムにより、設定変更等を行う必要はない。
次に、図6のフローチャートを参照して、制御アプリケーション31をコントローラ30から制御対象のフィールド機器10が接続されたIOノード20に移動させる場合の処理を説明する。この場合、I/Oへのアクセス方法が、ネットワーク経由からメモリアドレス指定に変更される。以下の説明で、図5のフローチャートの説明と共通する点については省略する。
まず、コントローラ30上の制御アプリケーション31に移動が指示される(ステップS401)。
移動の指示を受けたコントローラ30の仮想化部34は、制御アプリケーション31の動作を一時的に停止させ、稼働を再開するために必要なデータを移動先のIOノード20にコピーする(ステップS402)。
必要なデータが移動先のIOノード20にコピーされると、IOノード20で制御アプリケーション31と同じ処理を実行する制御アプリケーション21が処理を再開する(ステップS403)。
IOノード20の制御アプリケーション21が処理を再開すると、IOノード20のIOアクセスルーティング部22が、制御アプリケーション21の指定するI/O名に基づいて、アクセス先を自装置に接続されたフィールド機器10であると判断する。IOアクセスルーティング部22は、制御アプリケーション21のアクセス先を自装置に接続されたフィールド機器10に設定する(ステップS404)。この後、IOアクセスルーティング部22は、制御アプリケーション21からI/O名とともに受信した入出力指示を、フィールド機器10に接続されたメモリアドレスに対し入出力する。
このように、制御システム1では、制御アプリケーション21が、フィールド機器10にアクセスする状態(第1の状態)と、制御アプリケーション31が、フィールド機器10にアクセスする状態(第2の状態)とを切り替えることができる。このようにすることによって、異なるIOノード20及びコントローラ30間で、制御アプリケーション21、31の位置の変更を意識することなく、制御アプリケーション21、31を切り替えることが可能になる。また、制御アプリケーションの切り替えは、IOノード20とコントローラ30との間に限られない。異なるIOノード20どうし、又は、異なるコントローラ30どうしで、稼働する制御アプリケーションを切り替えることができる。
(フォーシング)
一般に、フィールド機器を交換する際、IOノードから対象の入出力単位の情報にアクセスすることができなくなるため、IOノード内のI/Oにより取得される情報の値を指定した値に書き換えて固定し、実際のI/Oに対応する入出力単位の情報の値とは切り離す機能が知られている。このような機能は、フォーシング又はI/Oロック等と呼ばれる。制御アプリケーションはフィールド機器の交換中もI/Oへのアクセスをしているかのように動作を継続する。
制御システム1では、このフォーシング機能をIOノード20のIOアクセスルーティング部22に持たせることによって、コントローラ30とIOノード20とがネットワーク40でつながっているシステム構成においても、同様の機能を実現することができる。具体的には、フィールド機器10を交換する場合において、IOアクセスルーティング部22は、フィールド機器10の入出力単位に対応する、IOノード20のI/Oのメモリ領域に記憶される入出力データを固定する。
以上説明したように、本参考形態によれば、制御アプリケーション21、31は、制御アプリケーション21、31自身の位置及びフィールド機器10へのアクセス方法を気にすることなく、I/O名を指示することによって、I/Oに適切な方法でアクセスすることができる。また、フィールド機器10を制御する制御アプリケーション21、31は、任意のコントローラ30又は他のIOノード20Aに移動、又は、切り替えても、フィールド機器10へのアクセスを継続することができる。さらに、IOアクセスルーティング部22、32が協働することにより、I/Oへのアクセスのために最適な方法が選択される。これによって、制御アプリケーション21、31の移動などにより不要な処理負荷又は通信負荷を生じることもない。
[第1実施形態]
第1実施形態に係る制御システム1Aは、参考形態の制御システム1の構成に加え、図7に示すようにネットワーク40に接続されたキャッシュサーバ50を備える。キャッシュサーバ50は、過去にアクセスした入出力データのキャッシュ機能を有する。ネットワーク40に接続されたコントローラ30は、キャッシュサーバ50を経由して、フィールド機器10にアクセスすることができる。
図8は、制御システム1Aの要部の構成例を示す。IOノード20とコントローラ30とについては、図2で示した参考形態のIOノード20及びコントローラ30と同じであるから、参考形態と同一の符号を付して説明を省略する。
キャッシュサーバ50は、キャッシュデータベース51、IOアクセスルーティング部52、通信部53を含む。IOアクセスルーティング部52は、仮想化部54に含まれてよい。キャッシュデータベース51は、記憶部である。IOアクセスルーティング部52は、第3のアクセス経路制御部である。
キャッシュデータベース51は、一つ以上のフィールド機器10の入出力単位に対応するI/Oに対する入出力データを記憶することができる。入出力データは、現在及び過去のデータを含んでよい。キャッシュデータベース51は、大容量のデータを記憶可能な、半導体メモリ、磁気記憶装置及び光磁気記憶装置等を含んでよい。
IOアクセスルーティング部52は、他の装置のIOアクセスルーティング部22、32と協働して、IOノード20へのアクセスの全部または一部をキャッシュサーバ50に振り向けるように、I/Oに対する入出力の経路を制御する。例えば、IOアクセスルーティング部22は、IOアクセスルーティング部52に、フィールド機器10に対する入出力データを送信する。IOアクセスルーティング部52は、IOアクセスルーティング部22から受信した入出力データをキャッシュデータベース51に記憶させる。IOアクセスルーティング部22、32、52は、協働して、制御アプリケーション31からフィールド機器10への入出力指示を、キャッシュサーバ50に転送する。
フィールド機器10又はIOノード20はコントローラ30に比べて処理能力が高くない場合がある。そのため複数の制御アプリケーション21、31からの大量アクセスを捌くことができない場合がある。このような場合、IOノード20のIOアクセスルーティング部22は、キャッシュサーバ50とのみデータをやり取りする。また、他のコントローラ30はキャッシュサーバ50に対して入出力を行うようにする。キャッシュサーバ50には、処理能力が高く大量のアクセスがあっても問題なく捌くことができるハードウェアを採用することができる。
通信部53は、通信部24及び通信部33と同一又は類似に構成される。
キャッシュサーバ50は、例えば、次のような態様で利用される。
1.I/Oへのアクセス負荷に基づくキャッシュサーバの利用
IOノード20のIOアクセスルーティング部22は、接続されたフィールド機器10への入出力負荷を監視する。IOノード20のIOアクセスルーティング部22は、IOノード20の負荷が所定の条件を満たす場合、フィールド機器10への入出力指示を、キャッシュサーバ50に振り向けてよい。特定のIOノード20に複数の制御アプリケーション21、31からの入出力が集中した場合、IOノード20は、処理負荷が高くなりリアルタイムに応答できなくなる可能性がある。このような場合、IOアクセスルーティング部22は、他のIOノード20A及びコントローラ30に対しアクセス方法をキャッシュサーバ50経由に変更するように指示する。以降の処理において、IOノード20は、入出力データをキャッシュサーバ50に転送し、他のIOノード20A及びコントローラ30とは通信をしない。
IOノード20はキャッシュサーバ50とのみ通信を行い、IOノード20が処理可能な範囲で対応するため処理負荷が増えずリアルタイムな応答を維持することができる。キャッシュサーバ50には各制御アプリケーション21、31からのアクセスが集中するが、キャッシュされたデータを使用することでIOノード20との間の通信負荷を下げることができる。なお、キャッシュデータサーバにデータを記憶する際、予め定めた優先順位を付与することにより、IOノード20は、優先順位の高いデータから取り込むようにしてもよい。
2.I/Oへのアクセス用途に基づくアクセスの分散
IOノード20のIOアクセスルーティング部22は、I/Oへの入出力のアクセス用途に基づいて、入出力を分散させることができる。例えば、I/Oを制御に使う場合、制御アプリケーション21、31は、フィールド機器10の接続されたIOノード20を介して、フィールド機器10に直接入出力を行うように設定されうる。I/Oを監視用途に使用する場合、制御アプリケーション21、31は、キャッシュサーバ50に格納されたデータを参照するように設定されうる。
I/Oを制御に使う場合、特に操作のためにI/Oにデータの入力又は書き換え等を行う場合、リアルタイム性が必要である一方、アクセスがあまり集中しない。このようなことから、制御アプリケーション21、31は、IOノード20に対してキャッシュサーバ50を経由せず、直接アクセスすることができるとよい。I/Oの出力データを監視装置45などで監視用に使用する場合、リアルタイム性はあまり必要とされない一方、多くの装置からの同一のIOノード20にアクセスが集中することがある。このようなことから、制御アプリケーション21、31は、キャッシュサーバ50を経由してI/Oの出力データにアクセスさせることができるとよい。
(フォーシング)
本実施形態に係る制御システム1Aでは、IOノード20を交換する場合のフォーシング機能を、キャッシュサーバ50に持たせることができる。図9を参照して、制御システム1Aにおいて、IOノード20を交換する手順を説明する。
まず、コントローラ30もしくは監視装置45から、交換対象のIOノード20に接続されたフィールド機器10のI/Oへのアクセス方法を、IOアクセスルーティング部22から、キャッシュサーバ50経由に変更するよう、他のIOアクセスルーティング部に通知する(ステップS501)。IOノード20のIOアクセスルーティング部22は、I/Oから取得される入出力単位の情報の値をキャッシュサーバ50に順次転送する。これにより、制御アプリケーション31からI/Oへのアクセスはキャッシュサーバ50に振り向けられる。制御アプリケーション31は、キャッシュサーバ50のキャッシュデータベース51を介して、IOノード20のフィールド機器10のI/Oにアクセスする。
次に、キャッシュサーバ50上で、交換対象のIOノード20に接続されるフィールド機器10の入出力単位の情報の値がロックされる(ステップS502)。つまり、キャッシュサーバ50上の入出力単位の情報の値(入出力データ)はI/Oから取得される実際の入出力単位の情報の値とは切り離され、ロックを解除するまで固定された値を制御アプリケーション31に提供する。
制御システム1Aの運転者、または、他の作業者が、交換対象のIOノード20を交換する(ステップS503)。
IOノード20の交換が完了すると、運転者又は作業者の入力により、又は、制御システム1Aが交換作業の完了を検出して、キャッシュサーバ50上のI/Oのロックが解除される(ステップS504)。
キャッシュサーバ50上のI/Oのロックが解除された後、IOアクセスルーティング部32において、フィールド機器10の入出力単位に対応するI/Oへのアクセス方法が元に戻される(ステップS505)。これにより、コントローラ30の制御アプリケーション31は、ネットワーク40を経由してIOノード20にアクセスすることが可能になる。
以上のようにすることによって、第1実施形態に係る制御システム1Aでは、フィールド機器10が接続されたIOノード20の処理負荷を、時間的に、及び/又は、アクセス用途に応じて分散させることができる。また、第1実施形態に係る制御システム1Aでは、全体のシステムを停止することなく、IOノード20を交換することができる。
[第2実施形態]
図10には、第2実施形態に係る制御システム1Bが示される。この制御システム1Bでは、参考形態に係る制御システム1の構成要素に加え、フィールド機器10B(センサ11B、アクチュエータ12B)が、ネットワーク40に直接接続されている。さらに、制御システム1Bは、第1実施形態と同様にキャッシュサーバ50を備えてよい。フィールド機器10Bは、第2のフィールド機器である。フィールド機器10Bとしては、IoT(Internet of Things)センサ等が想定される。この場合、安価な汎用機器を使うことが考えられるので、フィールド機器10B自体にIOアクセスルーティング機能を持たせることはできないと想定する。
このような場合、IOノード20上のIOアクセスルーティング部22又はコントローラ30上のIOアクセスルーティング部32の何れかが、フィールド機器10Bに対し、フィールド機器10Bが通信可能な通信プロトコルでアクセスし入出力可能なように構成されてよい。フィールド機器10Bが通信可能な通信プロトコルは、例えば、OPC UA、PROFINET、Modbus/TCP、MQTT、及び、HTTP等を含む。さらに、IOアクセスルーティング部22、32は、制御アプリケーション21、31からフィールド機器10Bへ入出力が可能なように、入出力の経路を制御可能に構成される。例えば、フィールド機器10に入出力可能でないコントローラ30のIOアクセスルーティング部32は、制御アプリケーション31からの入出力指示を、フィールド機器10Bに入出力可能なIOノード20のIOアクセスルーティング部22に転送してよい。このようにすることによって、ネットワーク40に直接接続されるIoT機器等のフィールド機器10Bを、本開示の制御システム1Bに取り込んで制御することが可能になる。
制御システム1Bが、キャッシュサーバ50を含む場合、キャッシュサーバ50のIOアクセスルーティング部55が、フィールド機器10Bにアクセスしてもよい。IOノード20又はコントローラ30は、キャッシュサーバ50経由でフィールド機器10Bに入出力を行う。この場合、フィールド機器10Bとキャッシュサーバ50間のみ上記の通信プロトコルで通信すればよいため、プロトコル変換等の処理は、各IOノード20及びコントローラ30で行われる必要がない。
[第3実施形態]
図11に示すように、第3実施形態に係る制御システム1Cにおいて、各装置のIOアクセスルーティング部22、32、52は、アプリケーションフレームワーク26、35、55上に構築される。制御システム1Cは、第1実施形態に係る制御システム1Aにおいて、仮想化部25、34、54にIOアクセスルーティング部22、32、52が含まれていた構成とは異なる。
アプリケーションフレームワーク26、35、55は、アプリケーションの標準構造を実装するのに使われるライブラリの集まりである。制御アプリケーション21、31及びキャッシュデータベース51は、アプリケーションフレームワーク26、35、55が提供するAPIを使用して、抽象化されたI/Oに対して入出力をすることができる。アプリケーションフレームワーク26、35、55は、実際のフィールド機器10の位置情報に応じてアクセス方法を変更する。制御アプリケーション21、31はフィールド機器10へのアクセス方法を意識する必要がない。
仮想化部25、34、54に代えて、アプリケーションフレームワーク26、35、55を用いることによって、仮想化部を使用した場合と同様の効果が得られる。また、アプリケーションフレームワーク26、35、55はライブラリであるから、システムの修正、変更が容易である。
(複数の演算結果に基づく出力値の決定)
上記各実施形態において、IOアクセスルーティング部22、32、52は、互いに連携して、制御アプリケーション21、31からのI/Oへの入出力指示に対して、入出力の経路を制御し、適切な装置に振り向ける動作を行った。IOアクセスルーティング部22、32、52には、複数の制御アプリケーション21、31からの演算結果に基づいて、フィールド機器10に対する制御内容を決定する機能を持たせることもできる。
例えば、上記各実施形態において、図12に示すようにIOノード20のIOアクセスルーティング部22に、判定部27を設けることができる。例えば、センサ11の出力に基づいて、制御アプリケーション21及び31の少なくとも何れかを含む複数の制御アプリケーションが、同じ制御演算を行い算出した入力値でのアクチュエータ12への入力を指示するものとする。判定部27は、複数の制御アプリケーションが算出した複数の入力値を比較して、又は、複数の入力値を統計処理して、最終的な入力値を決定する。例えば、判定部27は、複数の出力値の平均値を入力値として決定してよい。あるいは、判定部27は、3以上の制御アプリケーションがある場合、複数の入力値から最も多い入力値を採用してよい。
このようにすることによって、制御システム1、1A,1Bによる制御の信頼性を高めることができる。
なお、判定部27は、IOアクセスルーティング部22に含まれるのではなく、IOアクセスルーティング部22とフィールド機器10との間に位置してもよい。
本開示に係る実施形態について、諸図面及び実施例に基づき説明してきたが、当業者であれば本開示に基づき種々の変形又は修正を行うことが容易である。従って、本発明の具体的構成は本開示の実施形態に限られるものではなく、本発明の趣旨を逸脱しない範囲において種々の変形又は修正を含むことに留意されたい。
1、1A、1B、1C 制御システム
10、10A フィールド機器(第1のフィールド機器)
10B フィールド機器(第2のフィールド機器)
11、11A、11B センサ
12、12A、12B アクチュエータ
20、20A IOノード(第1の制御装置)
21 制御アプリケーション(第1の制御アプリケーション)
22 IOアクセスルーティング部(第1のアクセス経路制御部)
23 IOアクセス部
24 通信部
25 仮想化部
26 アプリケーションフレームワーク
27 判定部
30 コントローラ(第2の制御装置)
31 制御アプリケーション(第2の制御アプリケーション)
32 IOアクセスルーティング部(第2のアクセス経路制御部)
33 通信部
34 仮想化部
35 アプリケーションフレームワーク
40 ネットワーク
45 監視装置
50 キャッシュサーバ
51 キャッシュデータベース(記憶部)
52 IOアクセスルーティング部(第3のアクセス経路制御部)
53 通信部
54 仮想化部
55 アプリケーションフレームワーク

Claims (6)

  1. プラントの制御のためのデータの取得、及び、前記プラントの操作の少なくとも一方を行う一つ以上のフィールド機器と、
    前記一つ以上のフィールド機器に含まれる第1のフィールド機器が直接接続され、前記第1のフィールド機器を制御可能な第1の制御アプリケーション、及び、第1のアクセス経路制御部を含む、第1の制御装置と、
    前記第1のフィールド機器を制御可能な第2の制御アプリケーション、及び、第2のアクセス経路制御部を含む、少なくとも一つの第2の制御装置と、
    前記一つ以上のフィールド機器に対する入出力データを記憶する記憶部、及び、第3のアクセス経路制御部を含むキャッシュサーバと、
    前記第1の制御装置、前記第2の制御装置及び前記キャッシュサーバを通信可能に接続するネットワークと
    を備え、
    前記第1のアクセス経路制御部は、前記第3のアクセス経路制御部に、前記第1のフィールド機器に対する入出力データを送信することを可能に構成され、
    前記第3のアクセス経路制御部は前記第1のアクセス経路制御部から受信した入出力データを前記記憶部に記憶させることを可能に構成され、
    前記第1のアクセス経路制御部、前記第2のアクセス経路制御部、及び、前記第3のアクセス経路制御部は、協働して、前記第1の制御アプリケーション及び前記第2の制御アプリケーションのそれぞれから、前記第1のフィールド機器への入出力の経路を制御するとともに、前記第2の制御アプリケーションから前記第1のフィールド機器への入出力指示を、前記キャッシュサーバに転送することを可能に構成される、制御システム。
  2. 前記第1のアクセス経路制御部、前記第2のアクセス経路制御部、及び、前記第3のアクセス経路制御部は、前記第1の制御装置の負荷が所定の条件を満たす場合、前記第2の制御アプリケーションから前記第1のフィールド機器への入出力指示を、前記キャッシュサーバに転送するように構成される、請求項1に記載の制御システム。
  3. 前記第1のアクセス経路制御部、前記第2のアクセス経路制御部、及び、前記第3のアクセス経路制御部は、前記第2の制御アプリケーションによる前記第1のフィールド機器への制御の種類に応じて、前記第2の制御アプリケーションから前記第1のフィールド機器への入出力指示を、前記キャッシュサーバに転送するように構成される、請求項1に記載の制御システム。
  4. 前記第1の制御装置を交換する場合において、前記第1のアクセス経路制御部は、前記第1のフィールド機器に対する入出力データを前記第3のアクセス経路制御部に送信し、前記第3のアクセス経路制御部は、前記記憶部に前記第1のフィールド機器に対する前記入出力データを記憶して固定し、前記第2の制御アプリケーションの前記第1のフィールド機器に対する入出力指示は、前記キャッシュサーバに転送されるように構成される、請求項1から3の何れか一項に記載の制御システム。
  5. 前記一つ以上のフィールド機器に含まれる、前記ネットワークに直接接続された第2のフィールド機器をさらに備え、前記第3のアクセス経路制御部は、前記第2のフィールド機器に入出力可能に構成され、
    前記第1のアクセス経路制御部及び前記第2のアクセス経路制御部は、前記第1の制御アプリケーション及び第2の制御アプリケーションから前記第2のフィールド機器への入出力指示を、前記キャッシュサーバに転送することを可能に構成される、請求項1から4の何れか一項に記載の制御システム。
  6. 前記第1の制御装置は、判定部を備え、
    前記第1の制御アプリケーション及び前記第2の制御アプリケーションの少なくとも何れかを含む複数の制御アプリケーションが、前記第1のフィールド機器からの出力値に基づいて、同一の制御演算を行い前記第1のフィールド機器への入力値を算出し、
    前記判定部は前記複数の制御アプリケーションにより算出された複数の前記入力値に基づいて、前記第1のフィールド機器への入力値を決定するように構成される、請求項1から5の何れか一項に記載の制御システム。
JP2020055915A 2020-03-26 2020-03-26 制御システム Active JP7264098B2 (ja)

Priority Applications (4)

Application Number Priority Date Filing Date Title
JP2020055915A JP7264098B2 (ja) 2020-03-26 2020-03-26 制御システム
US17/166,492 US11449038B2 (en) 2020-03-26 2021-02-03 Automatically replacing hardware controller in a control system
CN202110182654.0A CN113448290B (zh) 2020-03-26 2021-02-08 控制系统
US17/887,912 US11874646B2 (en) 2020-03-26 2022-08-15 Automatically replacing hardware controller in a control system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2020055915A JP7264098B2 (ja) 2020-03-26 2020-03-26 制御システム

Publications (2)

Publication Number Publication Date
JP2021157392A JP2021157392A (ja) 2021-10-07
JP7264098B2 true JP7264098B2 (ja) 2023-04-25

Family

ID=77808820

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2020055915A Active JP7264098B2 (ja) 2020-03-26 2020-03-26 制御システム

Country Status (3)

Country Link
US (2) US11449038B2 (ja)
JP (1) JP7264098B2 (ja)
CN (1) CN113448290B (ja)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7294517B1 (ja) * 2022-12-27 2023-06-20 横河電機株式会社 制御システム、制御システムの制御方法、及び、ネットワークスイッチ
JP7311015B1 (ja) * 2022-12-27 2023-07-19 横河電機株式会社 制御システム、制御システムの制御方法、及び、コントローラ

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001005684A (ja) 1999-06-17 2001-01-12 Mitsubishi Electric Corp 制御装置およびそれを用いた制御システム
US20090292996A1 (en) 2008-05-20 2009-11-26 Honeywell International Inc. System and method for accessing and presenting health information for field devices in a process control system
JP2009284119A (ja) 2008-05-21 2009-12-03 Yokogawa Electric Corp フィールドバス通信システム及びデータ管理装置
JP2014078253A (ja) 2008-03-05 2014-05-01 Rosemount Inc ネットワーク上のフィールド機器の構成
WO2015114821A1 (ja) 2014-01-31 2015-08-06 三菱電機株式会社 監視制御システム及び制御装置
JP6168138B2 (ja) 2013-02-22 2017-07-26 株式会社Gsユアサ 液式鉛蓄電池
JP2020027434A (ja) 2018-08-10 2020-02-20 横河電機株式会社 制御システム及び制御装置

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3297099B2 (ja) * 1992-11-30 2002-07-02 株式会社東芝 入出力信号割付装置
JP3771050B2 (ja) * 1997-06-20 2006-04-26 東京エレクトロン株式会社 制御システム
US6788980B1 (en) * 1999-06-11 2004-09-07 Invensys Systems, Inc. Methods and apparatus for control using control devices that provide a virtual machine environment and that communicate via an IP network
US7568000B2 (en) * 2001-08-21 2009-07-28 Rosemount Analytical Shared-use data processing for process control systems
US8448065B2 (en) * 2006-06-07 2013-05-21 Siemens Industry, Inc. System and method for the editing and accessing real-time OPC data with text-based tags
JP5561298B2 (ja) * 2012-03-23 2014-07-30 横河電機株式会社 プロセス制御システム
US9558220B2 (en) * 2013-03-04 2017-01-31 Fisher-Rosemount Systems, Inc. Big data in process control systems
CN105519050B (zh) * 2015-02-12 2018-09-04 富士电机株式会社 控制系统以及中继装置
US10462261B2 (en) * 2015-06-24 2019-10-29 Yokogawa Electric Corporation System and method for configuring a data access system
US20170257782A1 (en) * 2016-03-01 2017-09-07 Honeywell International Inc. Remote resolution of customer issues enabled by integrating multiple communication technologies using a handheld configurator
GB2575758B (en) * 2017-05-01 2023-04-12 Fisher Rosemount Systems Inc Open architecture industrial control system
US11846934B2 (en) * 2019-09-23 2023-12-19 Fisher-Rosemount Systems, Inc. Industrial control system hyperconverged architecture
JP7287325B2 (ja) * 2020-03-26 2023-06-06 横河電機株式会社 制御システム、制御装置、及び、フィールド機器へのアクセス方法

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001005684A (ja) 1999-06-17 2001-01-12 Mitsubishi Electric Corp 制御装置およびそれを用いた制御システム
JP2014078253A (ja) 2008-03-05 2014-05-01 Rosemount Inc ネットワーク上のフィールド機器の構成
US20090292996A1 (en) 2008-05-20 2009-11-26 Honeywell International Inc. System and method for accessing and presenting health information for field devices in a process control system
JP2009284119A (ja) 2008-05-21 2009-12-03 Yokogawa Electric Corp フィールドバス通信システム及びデータ管理装置
JP6168138B2 (ja) 2013-02-22 2017-07-26 株式会社Gsユアサ 液式鉛蓄電池
WO2015114821A1 (ja) 2014-01-31 2015-08-06 三菱電機株式会社 監視制御システム及び制御装置
JP2020027434A (ja) 2018-08-10 2020-02-20 横河電機株式会社 制御システム及び制御装置

Also Published As

Publication number Publication date
CN113448290A (zh) 2021-09-28
US20210302943A1 (en) 2021-09-30
CN113448290B (zh) 2023-12-01
JP2021157392A (ja) 2021-10-07
US11874646B2 (en) 2024-01-16
US11449038B2 (en) 2022-09-20
US20220390926A1 (en) 2022-12-08

Similar Documents

Publication Publication Date Title
JP2023100999A (ja) 装置、フィールド機器へのアクセス方法、及び、プログラム
JP7264098B2 (ja) 制御システム
CN110320793B (zh) 用于构建冗余通信连接的方法和故障安全的控制单元
US20150081043A1 (en) System for Control Logic Management
EP2783260B1 (en) Dynamically adapting to changes in control system topology
JP7073624B2 (ja) 通信システム、通信装置および通信方法
KR101815202B1 (ko) 제어 시스템 및 중계장치
JP4964666B2 (ja) 冗長化された通信経路を切り替える計算機、プログラム及び方法
KR20150094239A (ko) 시간 확정적으로 대용량 경로를 전환하는 데이터 처리 시스템 및 데이터 처리 시스템의 동작 방법
JPWO2020090032A1 (ja) 通信システム、通信装置及びプログラム
JP5546500B2 (ja) Fpga搭載装置の遠隔保守システム
KR102260876B1 (ko) 제어기 클러스터 및 제어기 클러스터를 동작시키기 위한 방법
WO2020075699A1 (ja) 制御システムおよび制御方法
JP2012208706A (ja) 冗長コントローラ
JP2011048452A (ja) エンドポイント代理アクセス装置、共有システム、代理アクセス方法および代理アクセスプログラム
JP2001325010A (ja) プログラマブルコントローラシステム
TWI806106B (zh) 自主移動機器人及點對點交互管理系統
JPH0787088A (ja) ネットワーク監視形態決定装置
JP2003198590A (ja) マルチプロトコルゲートウェイ、及びマルチプロトコルコントローラ
JP2001229136A (ja) 制御装置及び制御システム並びにデータ転送装置
JP6674272B2 (ja) 情報処理方法および制御方法
KR20150059703A (ko) 소프트웨어 정의 네트워크의 제어기와 스위치간 연결 방법
JP2006350580A (ja) 分散アプリケーションシステムにおける装置
KR20170066030A (ko) 트랜스포트 네트워크 제어를 위한 컨트롤러 클러스터 연동 장치 및 그 방법
JP2004133741A (ja) 監視制御システム構成設定方法および機構

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20220302

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20230209

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20230314

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20230327

R150 Certificate of patent or registration of utility model

Ref document number: 7264098

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150