JP2023525764A - 物理モデル生成装置、制御方法、及びプログラム - Google Patents

物理モデル生成装置、制御方法、及びプログラム Download PDF

Info

Publication number
JP2023525764A
JP2023525764A JP2022567897A JP2022567897A JP2023525764A JP 2023525764 A JP2023525764 A JP 2023525764A JP 2022567897 A JP2022567897 A JP 2022567897A JP 2022567897 A JP2022567897 A JP 2022567897A JP 2023525764 A JP2023525764 A JP 2023525764A
Authority
JP
Japan
Prior art keywords
information
component
physical
control system
plant architecture
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
JP2022567897A
Other languages
English (en)
Other versions
JP7347693B2 (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.)
NEC Corp
Original Assignee
NEC 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 NEC Corp filed Critical NEC Corp
Publication of JP2023525764A publication Critical patent/JP2023525764A/ja
Application granted granted Critical
Publication of JP7347693B2 publication Critical patent/JP7347693B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/10Geometric CAD
    • G06F30/13Architectural design, e.g. computer-aided architectural design [CAAD] related to design of buildings, bridges, landscapes, production plants or roads
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/10Geometric CAD
    • G06F30/18Network design, e.g. design based on topological or interconnect aspects of utility systems, piping, heating ventilation air conditioning [HVAC] or cabling
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/20Design optimisation, verification or simulation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2113/00Details relating to the application field
    • G06F2113/14Pipes

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Geometry (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Evolutionary Computation (AREA)
  • General Engineering & Computer Science (AREA)
  • Pure & Applied Mathematics (AREA)
  • Computational Mathematics (AREA)
  • Mathematical Analysis (AREA)
  • Mathematical Optimization (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Architecture (AREA)
  • Civil Engineering (AREA)
  • Structural Engineering (AREA)
  • Testing And Monitoring For Control Systems (AREA)
  • Stored Programmes (AREA)

Abstract

物理モデル生成装置(2)は、対象制御システムの設計情報を取得し、その設計情報からプラントアーキテクチャ情報を生成する。プラントアーキテクチャ情報は、対象制御システムに含まれる物理コンポーネントとそれらの間のコネクションを示す。物理モデル生成装置(2)は、プラントアーキテクチャ情報に示されている各物理コンポーネントについて、とりうる状態が示されるコンポーネント状態情報を生成する。物理モデル生成装置(2)は、物理コンポーネントのタイプごとに一般化挙動が示される一般化挙動情報を取得する。物理モデル生成装置(2)は、プラントアーキテクチャ情報、コンポーネント状態情報、及び一般化挙動情報に基づいて、対象制御システムの物理モデルを生成する。【選択図】図1

Description

本開示は、全体として、制御システムのセキュリティリスク評価に関し、特に、セキュリティリスク評価の実施を要する物理モデルに関する。
制御システムのセキュリティリスク評価は、作成対象の制御システムの物理モデルを要する。制御システムは、1つ以上のセンサ、アクチュエータ、コントローラ、及びその他の装置を含む複数の物理コンポーネントで構成される。制御システムにおいて可能性のある攻撃パスを評価するために、様々なシミュレーションが物理モデル上で実行される。
特許文献1は、有限状態機械(FSM:Finite State Machine)から自動的にデジタルコントローラ/デバイスドライバを生成する方法を開示している。この方法は、実行されるべきタスクの仕様の生成を含む。特許文献1の発明は、この仕様を生成するために、物理マシンの記述とモデルのライブラリとを、入力として利用する。
米国特許出願公開第5831853号明細書
制御システムの配管計装図(P&ID:Piping Instrumentation Diagram)などの設計情報を理解して、人手で物理モデルを生成することは、たとえ少数の物理コンポーネントで構成される場合であっても、技術者にとって非常に時間がかかることである。特許文献1は、物理モデルの生成を容易にする技術を開示していない。
本開示の目的は、制御システムの物理モデルの生成を容易にする技術を提供することである。
本開示は、少なくとも1つのプロセッサと、インストラクションが格納されているメモリとを有するモデル生成装置を提供する。前記少なくとも1つのプロセッサは、前記インストラクションを実行することにより、対象制御システムの設計情報を取得し、前記対象制御システムに含まれる物理コンポーネントとそれらの間のコネクションが示されるプラントアーキテクチャ情報を前記設計情報から生成し、前記プラントアーキテクチャ情報に示されている各物理コンポーネントがとりうる状態が示されているコンポーネント状態情報を生成し、物理コンポーネントの各タイプについての一般化挙動が示されている一般化挙動情報を取得し、前記プラントアーキテクチャ情報、前記コンポーネント状態情報、及び前記一般化挙動情報に基づいて、前記対象制御システムの物理モデルを生成するように構成されている、物理モデル生成装置。
本開示は、コンピュータによって実行される制御方法を提供する。前記制御方法は、対象制御システムの設計情報を取得し、前記対象制御システムに含まれる物理コンポーネントとそれらの間のコネクションが示されるプラントアーキテクチャ情報を前記設計情報から生成し、前記プラントアーキテクチャ情報に示されている各物理コンポーネントがとりうる状態が示されているコンポーネント状態情報を生成し、物理コンポーネントの各タイプについての一般化挙動が示されている一般化挙動情報を取得し、前記プラントアーキテクチャ情報、前記コンポーネント状態情報、及び前記一般化挙動情報に基づいて、前記対象制御システムの物理モデルを生成することを含む。
本開示が提供する非一時的なコンピュータ可読記憶媒体は、上記の制御方法の各ステップをコンピュータに実行させるプログラムを格納している。
本開示によれば、制御システムの物理モデルの生成を容易にする技術が開示される。
実施形態1の物理モデル生成装置2の機能構成を表すブロック図である。 物理モデル生成装置を実現するコンピュータのハードウエア構成の例を表すブロック図である。 実施形態1の物理モデル生成装置によって実行される処理の流れを表すフローチャートである。 対象制御システムの例の P&ID を表す図である。 図4に示される対象制御システムの P&ID を XML 形式で示されている設計情報の例を表す図である。 図4に示される対象制御システムの P&ID を XML 形式で示されている設計情報の例を表す図である。 図4に示される対象制御システムの P&ID を XML 形式で示されている設計情報の例を表す図である。 図4に示される対象制御システムの P&ID を XML 形式で示されている設計情報の例を表す図である。 図4に示される対象制御システムの P&ID を XML 形式で示されている設計情報の例を表す図である。 プラントアーキテクチャ生成部3によって実行される処理の流れを表すフローチャートである。 例示のケースについて、第1対象要素と第2対象要素への XPath を表す図である。 例示のケースにおいて生成される COMPONENT_LIST を表す。 例示のケースにおいて生成される CONNECTION_LIST を表す。 例示のケースにおいて生成される SORTING_LIST を表す。 置換後の CONNECTION_LIST を表す。 プラントアーキテクチャ生成部によって生成されるプラントアーキテクチャ情報を表す。 パイプ部の P&ID を表す。 タプルの置換前の CONNECTION_LIST を表す。 ソート前の SORTING_LIST を表す。 置換後の CONNECTION_LIST を表す。 タイプ状態情報の例を表す。 コントローラプログラムの例を表す。 入出力設定情報の例を表す。 状態抽出部によって生成されるコンポーネント状態情報の例を表す。 一般化挙動情報の例を表す。 一般化挙動情報の例を表す。 一般化挙動情報の例を表す。 キーワードテーブルを表す。 挙動集計部によって実行される処理の流れを表すフローチャートである。 ON-states と OFF-statesを表す図である。 例示のケースにおいて生成される物理モデルを表す図である。 例示のケースにおいて生成される物理モデルを表す図である。 例示のケースにおいて生成される物理モデルを表す図である。 例示のケースにおいて生成される物理モデルを表す図である。 実施形態2の物理モデル生成装置の機能構成を表す図である。 実施形態2の物理モデル生成装置によって実行される処理の流れを表すフローチャートである。 例示の動作のS405の詳細を表すフローチャートである。
以下では、本開示の実施形態について、図面を参照しながら詳細に説明する。各図面において、同一又は対応する要素には同一の符号が付されており、説明の明確化のため、必要に応じて重複説明は省略される。
実施形態1
図1は、実施形態1の物理モデル生成装置の機能構成を表すブロック図である。物理モデル生成装置2は、生成すべき制御システム(以下、対象制御システム)の設計情報を取得し、取得した設計情報に基づいて、対象制御システムの物理モデルを生成する。この目的を達成するために、物理モデル生成装置2は、プラントアーキテクチャ生成部3、状態抽出部4、及び挙動集計部6を有する。
プラントアーキテクチャ生成部3は、設計情報を取得して、プラントアーキテクチャ情報を生成する。設計情報は、対象制御システムに含まれる物理コンポーネントを表す。物理コンポーネントは、1つ以上のセンサ、アクチュエータ、コントローラ、及びその他の装置を含みうる。センサは、水位インジケータ、フローインジケータ、速度インジケータ、圧力計、及び温度計などを含みうる。アクチュエータは、例えば、モーターバルブ、ポンプ、及びヒーターなどを含む。コントローラは、例えば、対象制御システムの物理コンポーネントの監視及び制御を行うプログラマブルロジックコントローラ(PLC: Programmable Logic Controller)や分散型制御システム(DCS: Distributed Control System)を含む。装置は、タンク、パイプ部、熱交換器などを含む。
設計情報は、対象制御システムの P&ID を表す XML ドキュメントでありうる。しかしながら、設計情報のフォーマットは XML に限定されない。さらに、制御システムの設計を記述する具体的な方法は、P&ID の利用に限定されない。
プラントアーキテクチャ生成部3によって生成されるプラントアーキテクチャ情報は、対象制御システムにおける複数の物理コンポーネントとそれらのコネクションの全体的な記述である。具体的には、プラントアーキテクチャ情報はコンポーネントアイテムを含む。コンポーネントアイテムは、対象制御システムに含まれる、対応物理コンポーネントの記述である。例えばコンポーネントアイテムは、識別子、名称、タイプ、及びコネクションアイテムのリストを含みうる。コンポーネントアイテムは、対応物理コンポーネントの位置及びサイズをさらに含みうる。各コネクションアイテムは、ポート、接続されるコンポーネントの名称、及び接続方向を含みうる。
状態抽出部4は、プラントアーキテクチャ情報を取得し、コンポーネント状態情報を生成する。コンポーネント状態情報は、プラントアーキテクチャ情報に示されている各コンポーネントについて、とりうる状態を表す。
挙動集計部6は、プラントアーキテクチャ情報、コンポーネント状態情報、及び一般化挙動情報を取得して、対象制御システムの物理モデルを生成する。一般化挙動情報は、各タイプの物理コンポーネントについて、全般的な挙動を示す。
<作用効果の例>
実施形態1の物理モデル生成装置2によれば、対象制御システムの設計情報から、対象制御システムの物理モデルが生成される。そのためユーザは、自身で設計情報を理解して、対象制御システムの物理モデルを人手で生成しなければならない場合と比較し、対象制御システムの物理モデルを容易に得ることができる。
以下、実施形態1の物理モデル生成装置2の詳細について説明する。
<ハードウエア構成の例>
物理モデル生成装置2は、1つ以上のコンピュータで実現される。この1つ以上のコンピュータのそれぞれは、物理モデル生成装置2の実装のために作られた専用コンピュータであってもよいし、PC(Personal computer)、サーバマシン、又はモバイルデバイスなどの汎用コンピュータであってもよい。
物理モデル生成装置2は、コンピュータにアプリケーションをインストールすることで実現されうる。このアプリケーションは、コンピュータを物理モデル生成装置2として機能させるプログラムで実装される。言い換えれば、このプログラムは、物理モデル生成装置2の機能構成部を実装したものである。
図2は、物理モデル生成装置2を実現するコンピュータ1000のハードウエア構成の例を表すブロック図である。図2において、コンピュータ1000は、バス1020、プロセッサ1040、メモリ1060、ストレージデバイス1080、入出力インタフェース1100、及びネットワークインタフェース1120を含む。
バス1020は、プロセッサ1040、メモリ1060、ストレージデバイス1080、入出力インタフェース1100、及びネットワークインタフェース1120が、相互にデータを送受信するためのデータ伝送路である。ただし、プロセッサ1040などを互いに接続する方法は、バス接続に限定されない。プロセッサ1040は、CPU(Central Processing Unit)、GPU(Graphics Processing Unit)、又は FPGA(Field-Programmable Gate Array)などのプロセッサである。メモリ1060は、RAM(Random Access Memory)や ROM(Read Only Memory)などといった主記憶装置である。ストレージデバイス1080は、ハードディスク、SSD(Solid State Drive)、又はメモリカードなどといった補助記憶装置である。入出力インタフェース1100は、コンピュータ1000と入出力デバイス(キーボード、マウス、又はディスプレイデバイスなど)とを接続するためのインタフェースであるネットワークインタフェース1120は、コンピュータ1000とネットワークとの間のインタフェースである。ネットワークインタフェース1120は、コンピュータ1000をネットワークに接続するためのインタフェースである。このネットワークは、LAN(Local Area Network)であってもよいし、WAN(Wide Area Network)であってもよい。
ストレージデバイス1080は、前述したプログラムを格納しうる。プロセッサ1040は、このプログラムを実行することで、物理モデル生成装置2の各機能構成部を実現する。さらに、ストレージデバイス1080は、設計情報及び一般化挙動情報を格納しうる。しかしながら、物理モデル生成装置2は、これらの情報の1つ以上を、コンピュータ1000の外部に設けられている1つ以上のストレージデバイスから取得してもよい。
コンピュータ1000のハードウエア構成は、図2で示されている構成に限定されない。例えば前述したように、物理モデル生成装置2は、複数のコンピュータによって実現されうる。この場合、これらのコンピュータは、ネットワークを介して接続されうる。
<処理の流れ>
図3は、実施形態1の物理モデル生成装置2によって実行される処理の流れを表すフローチャートである。プラントアーキテクチャ生成部3は設計情報を取得する(S001)。プラントアーキテクチャ生成部3は、設計情報に基づいて、プラントアーキテクチャ情報を生成する(S002)。状態抽出部4は、プラントアーキテクチャ情報に基づいて、コンポーネント状態情報を生成する(S003)。挙動集計部6は、一般化挙動情報を取得する(S004)。挙動集計部6は、プラントアーキテクチャ情報、コンポーネント状態情報、及び一般化挙動情報を用いて、物理モデルを生成する(S005)。
<設計情報の例>
前述したように、設計情報は、対象制御システムに含まれる複数の物理コンポーネント、及び物理コンポーネント間のコネクションを示す。以下、例示のケースとして、XML 形式で対象制御システムの P&ID を表す設計情報が示される。
図4は、対象制御システムの例の P&ID を表す。この対象制御システムは、モーターバルブ MV001、レベルセンサ LS001、2つのノズルを有するポンプ P001、及び3つのノズルを有する水タンク WT001 を含む。
水インレットパイプが WT001 に取り付けられており、これらの間に MV001 が設けられている。VM001 が開いている間、水インレットパイプとノズル N1 を通じて、WT001 へ水が入る。P001 が動作している間、ノズル N2 と水アウトレットパイプを通じて、WT001 から水が排出される。LS001 が WT001 に設けられている。LS001 は、ノズル N3 を介して、WT001 内の水位を検出する。信号線が LS001 と WT001 の間に敷かれている。
P&ID に記述されているコンポーネントは、PLC などのコントローラと接続されうる。例えば、図4の例において、3つの信号線が、PLC と MV001 の間、PLC と P001 の間、及び PLC とLS001 に敷かれている(図4に示さず)。PLC は、信号線を介して電気信号を送信することにより、MV001 の開閉、P001 の動作若しくは停止、又は LS001 からの WT001 の水位の受信をそれぞれ行う。PLC は、WT001 の水位に応じて、MV001 と P001 を制御する。これらを制御するための条件及び手順は、ST に記述されているプログラムで定義されている。
図5は、図4に示される対象制御システムの P&ID が XML 形式で示されている設計情報の例を表す。この例において、設計情報は、Proteus XML と呼ばれる(以前は XMpLant と呼ばれていた)特定の XML スキーマ定義に従う。
WT001 と P001 は、Equipment XML 要素で記述されている。これらに取り付けられているノズルは、Equipment XML 要素の子として、Nozzle XML 要素で記述されている。水インレットパイプ及び水アウトレットパイプは、PipingNetworkSegment XML 要素で記述されている。MV001 は、PipingNetworkSegment XML 要素の子として、PipingComponent XML で記述されている。LS001 は、ProcessInstrumentationFunction XML 要素で記述されている。WT001 と LT001 の間に敷かれている信号線は、ProcessInstrumentationFunction XML 要素の子として、InformationFlow XML 要素で記述されている。
<設計情報の取得:S001>
プラントアーキテクチャ生成部3は設計情報を取得する(S001)。設計情報の取得方法は様々である。例えば、プラントアーキテクチャ生成部3がアクセス可能な記憶装置の中に予め、プラントアーキテクチャ生成部3によって取得される設計情報が格納されている。この場合、プラントアーキテクチャ生成部3は、この記憶装置から設計情報を読み出す。その他にも例えば、プラントアーキテクチャ生成部3は、任意の装置によって送信された設計情報を受信してもよい。その他にも例えば、設計情報はユーザによって人手で物理モデル生成装置2に入力され、プラントアーキテクチャ生成部3はユーザによって入力された設計情報を取得する。
<プラントアーキテクチャ情報の生成:S002>
プラントアーキテクチャ生成部3は、設計情報に基づいてプラントアーキテクチャ情報を生成する(S002)。以下は、図5に示されている対象制御システムの P&ID がXML 形式で記述されている設計情報から、プラントアーキテクチャ情報を生成する方法の例である。
まず、プラントアーキテクチャ生成部3は、設計情報の中にある第1対象 XML 要素を検索する。第1対象 XML 要素及びその子孫は、物理コンポーネントの情報を示す。プラントアーキテクチャ生成部3は、第1対象 XML 要素へのロケーションパスを示す XPath をメモリに保持し、その XPath を上記の検索に利用する。
プラントアーキテクチャ生成部3は、上記の検索によって見つかった各第1対象 XML 要素から、物理コンポーネントの識別子、名称、及びタイプのそれぞれとして、ID 属性値、TagName 属性値、及び ComponentClass 属性値を抽出する。各第1対象 XML 要素について、プラントアーキテクチャ生成部3は、上述の識別子、名称、及びタイプを含むタプルを生成する。
物理コンポーネントC1に対応する第1対象 XML 要素が、物理コンポーネントC0に対応する他の第1対象 XML 要素の子孫である場合、物理コンポーネントC0の識別子が、親として、物理コンポーネントC1のタプルに加えられる。
さらに、プラントアーキテクチャ生成部3は、物理コンポーネントの位置として、その第1対象 XML 要素及びその子孫から、座標(位置)を抽出してもよい。プラントアーキテクチャ生成部3は、第1対象 XML 要素及びその子孫から座標を抽出し、物理コンポーネントのサイズとして幅と高さを算出してもよい。位置及びサイズは、前述したタプルに加えられる。
プラントアーキテクチャ生成部3は、COMPONENT_LIST と呼ばれるリストをメモリに保持し、前述のタプルを COMPONENT_LIST に加える。
第2に、プラントアーキテクチャ生成部3は、設計情報から、第2対象 XML 要素を検索する。第2対象 XML 要素及びその子孫は、2つの物理コンポーネント間のコネクションを表すコネクションアイテムを含む。プラントアーキテクチャ生成部3は、第2対象 XML 要素へのロケーションパスを示す XPath をメモリに保持し、その XPath を上記の検索に利用する。
プラントアーキテクチャ生成部3は、上記の検索で見つかった各第2対象 XML 要素から、コネクションのタイプとして、ComponentClass 属性値を抽出する。プラントアーキテクチャ生成部3は、上記のタイプを含むタプルを、各第2対象 XML 要素について生成する。
プラントアーキテクチャ生成部3は、前述の第2対象 XML 要素が親である Connection XML 要素から、スタート識別子として FromID 属性値を抽出し、エンド識別子として ToID 属性値を抽出する。スタート識別子が、そこからコネクションが開始する物理コンポーネントの識別子である一方、エンド識別子は、そこでコネクションが終了する物理コンポーネントの識別子である。プラントアーキテクチャ生成部3は、それらの識別子を前述したタプルに加える。
プラントアーキテクチャ生成部3は、CONNECTION_LIST と呼ばれるリストをメモリに保持し、そのタプルを CONNECTION_LIST に加える。
前述のコネクションの間に何らかの物理コンポーネントが取り付けられた場合、プラントアーキテクチャ生成部3は、前述の第2対象 XML 要素の子孫にある第1 XML 要素を検索する。プラントアーキテクチャ生成部3は、上記検索によって見つかった各第1対象 XML 要素から、その ID 属性値を、そのコネクションに取り付けられた物理コンポーネントの識別子として抽出する。前述の各第1対象 XML 要素について、プラントアーキテクチャ生成部3は、前述の識別子を含むタプルを生成する。
さらに、プラントアーキテクチャ生成部3は、物理コンポーネントの位置として、前述の第1対象 XML 要素及びその子孫から、座標を抽出し、その位置を前述のタプルに加えてもよい。
プラントアーキテクチャ生成部3は、前述した各コネクションについて、SORTING_LIST と呼ばれるリストをメモリに保持し、前述のタプルを SORTING_LIST に加える。
次にプラントアーキテクチャ生成部3は、以下のように、SORTING_LIST に従って、CONNECTION_LIST 内のタプルを1つ以上のタプルに置き換える。
プラントアーキテクチャ生成部3は、前述の置換の結果を一時的に格納するために、NEW_CONNECTION_LIST と呼ばれる空のリストをメモリ内に生成する。CONNECTION_LIST 内の各タプルについて、プラントアーキテクチャ生成部3は、対応する SORTING_LIST を特定する。
特定された SORTING_LIST が何らかのコンテンツを持つ場合、プラントアーキテクチャ生成部3は、そのタプルから、スタート識別子、エンド識別子、及びコネクションタイプを取得する。
特定した SORTLING_LIST に含まれる各タプルについて、プラントアーキテクチャ生成部3は、ミドル識別子として、そのタプルから識別子を取得し;前述のスタート識別子と、エンド識別子としてそのミドル識別子と、コネクションタイプとを含むタプルを生成し;生成したタプルを NEW_CONNECTION_LIST に加え;ミドル識別子としてスタート識別子を設定する。
SORTING_LIST に含まれる全てのタプルをパースした後、プラントアーキテクチャ生成部3は、前述のスタート識別子と前述のエンド識別子とを比較する。これらが異なる場合、プラントアーキテクチャ生成部3は、前述のスタート識別子、エンド識別子、及びコネクションタイプが含まれるタプルを生成し、生成したタプルを NEW_CONNECTION_LIST に加える。
特定された SORTING_LIST に中身がない場合、プラントアーキテクチャ生成部3は、CONNECTION_LIST の中のタプルのコピーを生成し、生成したタプルを NEW_CONNECTION_LIST に加える。
CONNECTOIN_LIST に含まれる全てのタプルをパースした後、プラントアーキテクチャ生成部3は、CONNECTION_LIST を生成し、全てのタプルを NEW_CONNECTION_LIST から CONNECTION_LIST へ移す。
最後に、プラントアーキテクチャ生成部3は、COMPONENT_LIST と CONNECTION_LIST に含まれる情報を用いて、以下のようにプラントアーキテクチャを生成する。
プラントアーキテクチャ生成部3は、COMPONENT_LIST から、親を含まないコンポーネントタプルを検索し;識別子、名称、及びタイプを、上記検索によって見つかった各コンポーネントタプルから取得する。コンポーネントタプルに位置とサイズが含まれている場合、プラントアーキテクチャ生成部3は、コンポーネントタプルから位置及びサイズを取得してもよい。各コンポーネントタプルについて、プラントアーキテクチャ生成部3は、前述の識別子、名称、及びタイプを含む新たなコンポーネントアイテムを生成する。プラントアーキテクチャ生成部3は、コネクションアイテムの空リストを生成し、前述のコンポーネントアイテムに追加する。プラントアーキテクチャ生成部3は、前述の位置及びサイズを前述のコンポーネントアイテムに追加してもよい。
CONNECTION_LIST に含まれる各コネクションタプルについて、プラントアーキテクチャ生成部3は、ポートと方向(これらはメモリに一時的に割り当てられる変数である)にそれぞれ「OUT」と「flow-out」を設定し、コネクション生成プロセスを呼び出し、ポートと方向をそれぞれ「IN」と「flow-in」に設定し、コネクション生成プロセスを呼び出す。
以下、コネクション生成プロセスの詳細が説明される。プラントアーキテクチャ生成部3は、COMPONENT_LIST の中から、前述のコネクションタプルのスタート識別子と同一の識別子を持つコンポーネントタプルを検索する。そのコンポーネントタプルに親がある場合、プラントアーキテクチャ生成部3は、そのコンポーネントタプルの名称として前述のポートを設定し、その親と同一の識別子を持つ他のコンポーネントタプルを COMPONENT_LIST から検索する。プラントアーキテクチャ生成部3は、対象のコンポーネント識別子(それはメモリに一時的に割り当てられる変数である)を、最後の検索において見つかったコンポーネントタプルの識別子に設定する。
プラントアーキテクチャ生成部3は、前述のコネクションタプルのエンド識別子と同一の識別子を持つコンポーネントタプルを、COMPONENT_LIST から検索する。そのコンポーネントタプルに親がある場合、プラントアーキテクチャ生成部3は、その親と同じ識別子を持つ他のコンポーネントタプルを COMPONENT_LIST から検索する。プラントアーキテクチャ生成部3は、接続コンポーネント名(これはメモリ内に一時的に割り当てられる変数である)を、最後の検索で見つかった前述のコンポーネントタプルの名称として設定する。
プラントアーキテクチャ生成部3は、前述のポート、接続コンポーネント名、及び方向が含まれるコネクションアイテムを生成する。プラントアーキテクチャ生成部3は、前述の対象のコンポーネント識別子と同じ識別子を持つコンポーネントアイテムを、プラントアーキテクチャ情報から検索し、そのコネクションアイテムを、前述の検索で見つかったコンポーネントアイテムに含まれるコネクションアイテムのリストに加える。
図6は、プラントアーキテクチャ生成部3によって実行される処理の流れを表すフローチャートである。プラントアーキテクチャ生成部3は、設計情報から第1対象 XML 要素を検索し、各第1対象 XML 要素についてコンポーネントタプルを生成し、そのコンポーネントタプルをコンポーネントリストに加える(S101)。プラントアーキテクチャ生成部3は、設計情報から第2対象 XML 要素を検索する(S102)。プラントアーキテクチャ生成部3は、全ての第2対象 XML 要素について処理が行われたか否かを判定する(S103)。全ての第2対象 XML 要素について処理が行われた場合、ステップS106が実行される。そうでない場合、ステップS104が実行される。
プラントアーキテクチャ生成部3は、第2対象 XML 要素及びその子孫からコネクションタプルを生成し、そのコネクションタプルを CONNECTION_LIST に加える(S104)。プラントアーキテクチャ生成部3は、第2対象 XML 要素の子孫から第1対象 XML 要素を検索し、各第1対象 XML 要素についてタプルを生成し、生成したタプルを SORTING_LIST に加える(S105)。そして、ステップS103が再度実行される。
プラントアーキテクチャ生成部3は、SORTING_LIST に従って、CONNECTION_LIST に含まれるコネクションタプルを1つ以上のタプルで置換する(S106)。プラントアーキテクチャ生成部3は、COMPONENT_LIST 内の各コンポーネントタプルからコンポーネントアイテムを生成し、そのコンポーネントアイテムをプラントアーキテクチャ情報に加える(S107)。
プラントアーキテクチャ生成部3は、CONNECTION_LIST 内の各コネクションタプルからコネクションアイテムを生成し、そのコネクションアイテムを、プラントアーキテクチャ情報内の対応するコンポーネントアイテムに含まれるコネクションアイテムのリストに加える(S108)。
<<プラントアーキテクチャの生成の例>>
以下、図面を参照しながら、プラントアーキテクチャの生成の例について説明する。
図7は、例示のケースについて、第1対象要素と第2対象要素への XPath を表す。プラントアーキテクチャ生成部3は、第1対象要素へのロケーションパスを指定する、図7の上段のボックス内の XPath を保持する。例えば「/PlantModel/Equipment」は、PlantModel XML 要素の子である Equipment XML 要素を示し、その PlantModel XML 要素が設計情報のルートノードであることを示す。
S101において、プラントアーキテクチャ生成部3は、前述の XPath を利用して、設計情報から以下の第1対象 XML 要素を見つける:3行目及び44行目における Equipment XML 要素;13行目、23行目、33行目、54行目、及び64行目における Nozzle XML 要素;112行目における PipingComponent XML 要素;及び126行目における ProcessInstrumentationFunction XML 要素。プラントアーキテクチャ生成部3は、それらの第1対象 XML 要素からコンポーネントタプルを生成し、COMPONENT_LIST に加える。図8は、例示のケースにおける COMPONENT_LIST を表す。
プラントアーキテクチャ生成部3は、第2対象要素へのロケーションパスを示す、図7の下段のボックスに示される XPath を保持する。例えば、「/PlantModel/PipingNetworkSystem/PipingNetworkSegment」は、PipingNetworkSystem XML 要素 の子である PipingNetworkSegment XML 要素を示し、その PipingNetworkSystem XML 要素は PlantModel XML 要素の子であることを示し、その PlantModel XML 要素は設計情報のルートノードであることを示す。
S102において、プラントアーキテクチャ生成部3は、前述の XPath を利用して、設計情報に含まれる以下の第2対象 XML 要素を見つける:76行目と96行目における PipingNetworkSegment XML 要素;及び137行目における InformationFlow XML 要素。
S104において、プラントアーキテクチャ生成部3は、前述の第2対象 XML 要素からコネクションタプルを生成し、それらを CONNECTION_LIST に加える。図9は、例示のケースにおいて生成される CONNECTION_LIST を表す。
S105において、プラントアーキテクチャ生成部3は、前述の XPath を用いて、以下の第1対象 XML 要素を見つける:96行目の PipingNetworkSegment XML 要素の子孫である、112行目の PipingComponent XML 要素。プラントアーキテクチャ生成部3は、タプルを生成して SORTING_LIST に加える。
図10は、例示のケースにおける SORTING_LIST を表す。図10において、3つの SORTING_LIST が存在する。最上部の SORTING_LIST は、CONNECTION LIST の1行目に対応する。中央の SORTING_LIST は、CONNECTION LIST の2行目に対応する。最下部の SORTING_LIST は、CONNECTION LIST の3行目に対応する。
S106において、プラントアーキテクチャ生成部3は、SORTING_LIST に従って、CONNECTION_LIST のコネクションタプルを1つ以上のタプルで置換する。
CONNECTION_LIST の ["None", "XMP_2", "Physical"] というタプルについて、プラントアーキテクチャ生成部3は、このタプルに対応する、図10の最上部の SORTING_LIST を特定し、スタート識別子「None」と、エンド識別子「XMP_2」と、コネクションタイプ「Physical」とをそのタプルから取得する。
特定された SORTING_LIST の ["XMP_11", (260, 120)] というタプルから、プラントアーキテクチャ生成部3は、ミドル識別子「XMP_11」を取得し、["None", "XMP_11", "Physical"] というタプルを生成し、この生成されたタプルを NEW_CONNECTION_LIST に加え、スタート識別子を「XMP_11」に設定する。
プラントアーキテクチャ生成部3は、["XMP_11", "XMP_2", "Physical"] というタプルを生成し、生成されたタプルを NEW_CONNECTION_LIST に加える。
CONNECTION_LIST 内の ["XMP_3", "XMP_5", "Physical"] というタプルについて、プラントアーキテクチャ生成部3は、このタプルに対応する、図10の真ん中の SORTING_LIST を特定する。この SORTING_LIST は中身を持たないため、プラントアーキテクチャ生成部3は、そのタプルのコピーを生成し、NEW_CONNECTION_LIST に加える。
CONNECTION_LIST 内の ["XMP_12", "XMP_13", "Signal"] というタプルについて、プラントアーキテクチャ生成部3は、このタプルに対応する、図10の最下部の SORTING_LIST を特定する。この SORTING_LIST は中身を持たないため、プラントアーキテクチャ生成部3は、そのタプルのコピーを生成し、NEW_CONNECTION_LIST に加える。
図11は、上述した置換後の CONNECTION_LIST を表す。
S107及びS108において、プラントアーキテクチャ生成部3は、前述の COMPONENT_LIST 及び CONNECTION_LIST から、プラントアーキテクチャ情報を生成する。図12は、プラントアーキテクチャ生成部3によって生成される上述のプラントアーキテクチャ情報を表す。プラントアーキテクチャ情報は4つのコンポーネントアイテムを有する。第1のコンポーネントアイテムは、識別子「XMP_1」、名称「WT001」、及びタイプ「WaterTank」を含む。このコンポーネントアイテムは、コネクションとして、3つのコネクションアイテムを含む。第1のコネクションアイテムは、ポート「N1」、接続コンポーネント名「MV001」、及び方向「flow-in」を含む。第2のコネクションアイテムは、ポート「N2」、接続コンポーネント名「P001」、及び方向「flow-out」を含む。第3のコネクションアイテムは、ポート「N3」、接続コンポーネント名「LS001」、及び方向「signal-out」を含む。そのコンポーネントアイテムは、位置(570, 180)及びサイズ(215, 200)を含む。
<<プラントアーキテクチャ情報のもう一つの生成例>>
タプルの順番がコネクションの方向に従っていない場合、SORTING_LIST は、CONNECTION_LIST の置換に利用される前にソートされる必要がある。具体的には、そのような場合、プラントアーキテクチャ生成部3は、コネクションが開始される物理コンポーネントの位置と、コネクションが終了される物理コンポーネントの位置とを用いて、コネクションの順序を特定し、特定した方向に従って、SORTING_LIST 内のタプルをソートする。
以下、図を参照しながら、上述したソートについて説明する。図13は、パイプ部の P&ID を表す。図14は、置換前の CONNECTION_LIST を表す。図15は、ソート前の SORTING_LIST を表す。
プラントアーキテクチャ生成部3は、CONNECTION_LIST に格納されているコネクションアイテムから、スタート識別子 XMP_44 と、エンド識別子 XMP_17 を取得する。プラントアーキテクチャ生成部3は、識別子が XMP_44 であるタプルを COMPONENT_LIST から見つけ、そのタプルから座標(300, 130)を取得し、識別子が XMP_17 であるタプルを COMPONENT_LIST から見つけ、その座標(420, 130)を取得する。
プラントアーキテクチャ生成部3は、X軸の差分として、420から300を引いた120を算出し、Y軸の差分として、130から130を引いた残り0を算出し、各軸について以下のように方向を特定する:(1)前述の差分が0より大きければ順方向、(2)前述した差分が0であれば方向無し、及び(3)前述した差分が0より小さければ逆方向。この例におけるコネクションの方向は、X軸に関して算出された差分は0より大きいため、X軸に関しては順方向であり、Y軸に関しては方向無しである。プラントアーキテクチャ生成部3は、X軸の順方向で、SORTING_LIST 内のタプルをソートする。
SORTING_LIST のソート後、プラントアーキテクチャ生成部3は、CONNECTION_LIST の置換を実行する。図16は、置換後の CONNECTION_LIST を表す。
<コンポーネント状態情報の生成:S003>
状態抽出部4は、プラントアーキテクチャ生成部3によって生成されたプラントアーキテクチャ情報に基づいて、コンポーネント状態情報を生成する(S003)。例えば、タイプ状態情報がコンポーネント状態情報の生成に利用される。タイプ状態情報は予め定められている情報であり、コンポーネントのタイプ(ポンプなど)ごとに、とりうる状態を示す。タイプ状態情報を利用したコンポーネント状態情報の生成について、以下に詳細を説明する。
状態抽出部4は、タイプ状態情報に示されている、物理コンポーネントの各タイプごとに予め定められたコンポーネント状態を、メモリに保持する。物理コンポーネントの或るタイプについてのコンポーネント状態は、そのタイプに分類される物理コンポーネントが取り得る既定義の状態である。
図17は、タイプ状態情報の例を表す。この例において、コンポーネント状態 ["Stopped", "Running"] がタイプ「Pump」について定められており、["Closed", "Open"] がタイプ「MotorValve」について定められている。
抽出の初めに、状態抽出部4は、空のコンポーネント状態情報を生成する。そして、プラントアーキテクチャ情報に含まれる各コンポーネントアイテムについて、状態抽出部4は、そのコンポーネントアイテムから名称とタイプを取得し、メモリから(すなわち、タイプ状態情報から)そのタイプについてのコンポーネント状態を取得し、その名称と共にそのコンポーネント状態をコンポーネント状態情報に加える。その結果、対象制御システム内の各物理コンポーネントが取り得る状態を示すコンポーネント状態情報が生成される。
ここで、タイプ状態情報を取得する方法は様々である。例えば、状態抽出部4によって取得されるタイプ状態情報は、状態抽出部4からアクセス可能な記憶装置に予め格納されている。この場合、状態抽出部4は、タイプ状態情報をその記憶装置から読み出す。その他にも例えば、状態抽出部4は、任意の装置から送信されるタイプ状態情報を受信してもよい。その他にも例えば、状態抽出部4は、物理モデル生成装置2のユーザによって人手で入力されるタイプ状態情報を取得してもよい。
タイプ状態情報の代わりに、状態抽出部4は、コントローラプログラムと入出力設定情報をコンポーネント状態情報の生成に利用してもよい。コントローラプログラムは、コントローラに接続されている物理コンポーネントの監視と制御のためのロジックを含む。例えば、コントローラプログラムは、インストラクションリスト(IL: Instruction List)、ストラクチャードテキスト(ST: Structured Text)、ラダー図(LD: Ladder Diagram)、ファンクションブロックダイアグラム(FBD: Function Block Diagram)、及びシーケンシャルファンクションチャート(SFC: Sequential Function Chart)という5つのプログラミング言語で記述される。前述の抽出の例を以下で説明する。
図18は、コントローラプログラムの例を表す。このコントローラプログラムは ST で記述されている。2行目において、変数 AI2 の値が変数 LS001_LEVEL に設定される。変数 LS001_LEVEL の値が「H」又は「HH」である場合、4行目から8行目において、変数 P001_START に値「Running」が設定され、かつ、変数 MV001_OPEN に値「Closed」が設定される。変数 LS001_LEVEL の値が「L」又は「LL」である場合、9行目から13行目において、変数 P001_START に値「Stopped」が設定され、かつ、変数 MV001_OPEN に値「Open」が設定される。15行目において、変数 D03 に変数 MV001_OPEN の値が設定される。16行目において、変数 D04 に変数 P001_START の値が設定される。
入出力設定情報は、コントローラプログラムに含まれる変数、タグ、又は装置と、対応する物理コンポーネントを示す。その物理コンポーネントは、対応する変数、タグ、又は装置の値で制御されるものであってもよいし、それらの変数、タグ、又は装置に設定される値を送信するものであってもよい。
図19は、入出力設定情報の例を表す。第1のアイテムは物理コンポーネントとして MV001 を含み、変数として D03 を含む。第2のアイテムは、物理コンポーネントとして P001 を含み、変数として D04 を含む。第3のアイテムは、物理コンポーネントとして LS001 を含み、変数として AI2 を含む。
状態抽出部4が、前述のプラントアーキテクチャ情報の第2のコンポーネントから、名称「P001」及びタイプ「Pump」を取得する場合、状態抽出部4は、P001 の制御に用いられる変数として、入出力設定情報の第2のアイテムに含まれる D04 を特定し、D04 に設定されるべき値を持つ変数として、前述のコントローラプログラムの16行目の変数 P001_START を特定し、P001_START に設定されるべき値として、コントローラプログラムの6行目の値「Running」と11行目の値「Stopped」を特定し、前述の名称「P001」と共に、特定した値 ["Running", "Stopped"] をコンポーネント状態情報に加える。同様に、状態抽出部4は、MV001 の制御に利用される値を特定する。
コントローラプログラムと入出力設定情報に基づいて、状態抽出部4は、タイプは同じであるものの実際の制御に利用される状態が互いに異なる物理コンポーネントについて、物理モデルを生成することができる。
なお、コントローラプログラムと入出力設定情報は、タイプ状態情報を取得する方法と同様の方法で取得されうる。
<<コンポーネント状態情報の生成の例>>
以下、図面を参照しながら、コンポーネント状態情報の生成について、例示のケースを説明する。この例において、図5で表される設計情報と図17で表されるタイプ状態情報が物理モデル生成装置2によって取得されるとする。そのため、プラントアーキテクチャ情報は、図12で表されるものとなる。
抽出の最初において、状態抽出部4は、空のコンポーネント状態情報を生成する。その後、状態抽出部4は、名称「WT001」とタイプ「WaterTank」を、プラントアーキテクチャ情報の最初のコンポーネントアイテムから取得する。しかしながら、状態定義情報において、タイプ「WaterTank」についてのコンポーネント状態は定義されていないため、状態抽出部4は、コンポーネント状態情報を更新しない。
状態抽出部4は、名称「P001」とタイプ「Pump」を、プラントアーキテクチャ情報の第2のコンポーネントアイテムから取得し、前述したタイプについてのコンポーネント状態 ["Stopped", "Running"] をメモリから取得し、そのコンポーネント状態を、前述の名称と共にコンポーネント状態情報に追加する。
同様に、状態抽出部4は、プラントアーキテクチャ情報に含まれる残りの各コンポーネントアイテムについて、コンポーネント状態情報を更新する。
図20は、状態抽出部4によって生成されるコンポーネント状態情報の例を表す。コンポーネント状態情報は、物理コンポーネント「P001」について状態 ["Stopped", "Running"] を有し、物理コンポーネント「MV001」について状態 ["Closed", "Open"] を有する。
<一般化挙動情報の取得:S004>
挙動集計部6は、一般化挙動情報を取得する(S004)。一般化挙動情報は、物理コンポーネントの各タイプについての一般化挙動を表す。例えば、一般化挙動は、そのタイプの物理コンポーネントに共通する挙動が形式的仕様記述言語で記述されたコードスニペットでありうる。一般化挙動は、特定の値で置換されるべきキーワードを含むことができる。
一般化挙動情報は、2つの列で構成されうる。第1の列には、物理コンポーネントのタイプが格納され、第2の列には、対応する一般化挙動が格納される。
図21は、一般化挙動情報の例を表す。図21A及び図21Bは、タイプ「WaterTank」と共に格納されている、水タンクに共通の挙動を示す。図21Cの1行目の一般化挙動は、タイプ「MotorValve」と共に格納されている、モーターバルブに共通の挙動を示す。図21Cの2行目の一般化挙動は、タイプ「Pump」と共に格納されている、ポンプに共通の挙動を示す。図21Cの3行目の一般化挙動は、タイプ「LevelSensor」と共に格納されている、レベルセンサに共通の挙動を示す。
なお、一般化挙動情報を取得する方法は様々である。例えば、挙動集計部6によって取得されるべき一般化挙動情報は、挙動集計部6からアクセス可能な記憶装置に予め格納されている。この場合、挙動集計部6は、この記憶装置から胃パン挙動情報を読み出す。その他にも例えば、挙動集計部6は、任意の装置によって送信された一般化挙動情報を受信してもよい。その他にも例えば、挙動集計部6は、ユーザ入力によって示される一般化挙動情報を受信してもよい。
<物理モデルの生成:S005>
挙動集計部6は、プラントアーキテクチャ生成部3によって生成されたプラントアーキテクチャ情報と、状態抽出部4によって生成されたコンポーネント状態情報をさらに取得する。そして、挙動集計部6は、取得した情報に基づいて、物理モデルを生成する(S005)。以下、物理モデルの生成について詳細に説明する。
第一に、挙動集計部6は、以下のように、プラントアーキテクチャ情報内の各コンポーネントアイテムについて、具体的な値を取得する。
挙動集計部6は、名称、タイプ、及びコネクションアイテムのリストを、前述のコンポーネントアイテムから取得し、Comp_Name と呼ばれる具体値としてその名称をメモリに格納し、Comp_Type と呼ばれる具体値としてそのタイプをメモリに格納する。
挙動集計部6は、前述のコネクションアイテムのリストから、方向が「flow-in」であるコネクションアイテムを探す。そのようなコネクションアイテムが見つかった場合、挙動集計部6は、そのコネクションアイテムから接続コンポーネント名を取得し、それを Input_Comp と呼ばれる具体値としてメモリに格納する。挙動集計部6は、前述のコネクションアイテムのリストから、方向が「flow-out」であるコネクションアイテムを探す。そのようなコネクションアイテムが見つかった場合、挙動集計部6は、そのコネクションアイテムから接続コンポーネント名を取得し、それを Output_Comp と呼ばれる具体値としてメモリに格納する。
挙動集計部6は、前述のコネクションアイテムのリストから、方向が「signal-in」であるコネクションアイテムを探す。そのようなコネクションアイテムが見つかった場合、挙動集計部6は、そのコネクションアイテムから接続コンポーネント名を取得し、Signal_Input_Comp と呼ばれる具体値としてメモリに格納する。挙動集計部6は、前述のコネクションアイテムのリストから、方向が「signal-out」であるコネクションアイテムを探す。そのようなコネクションアイテムが見つかった場合、挙動集計部6は、そのコネクションアイテムから接続コンポーネント名を取得し、Signal_Output_Comp と呼ばれる具体値としてメモリに格納する。
挙動集計部6は、予め定義された、ON-states と OFF-states と呼ばれる状態のリストを、メモリに保持する。ON-states に含まれる各状態は、対応する物理コンポーネントについて、アクティブである、他の物理コンポーネントに対して影響を持つ、又は他の物理コンポーネントの状態を検出しているということを示しうる。OFF-states に含まれる各状態は、対応する物理コンポーネントについて、アクティブでない、他の物理コンポーネントに対して影響を持たない、又は他の物理コンポーネントの状態を検出していないということを示しうる。
挙動集計部6は、前述のコンポーネント状態情報から、Input_Comp によって指定される状態のリストを取得する。挙動集計部6は、そのリストから、ON-states 内の状態とマッチする状態を探す。そのような状態が見つかったら、挙動集計部6は、その状態を、Input_ON と呼ばれる具体値としてメモリに格納する。挙動集計部6は、前述のリストから、OFF-states 内の状態とマッチする状態を探す。そのような状態が見つかったら、挙動集計部6は、その状態を、Input_OFF と呼ばれる具体値としてメモリに格納する。
同様に、挙動集計部6は、前述のコンポーネント状態情報から、Output_Comp で指定される状態のリストを取得する。挙動集計部6は、そのリストから、ON-states 内の状態とマッチする状態を探す。そのような状態が見つかったら、挙動集計部6は、その状態を、Output_ON と呼ばれる具体値としてメモリに格納する。挙動集計部6は、前述のリストから、OFF-states 内の状態とマッチする状態を探す。そのような状態が見つかったら、挙動集計部6は、その状態を、Output_OFF と呼ばれる具体値としてメモリに格納する。
第二に、挙動集計部6は、以下のように、プラントアーキテクチャ情報内の各コンポーネントアイテムについて、特定挙動を生成する。
挙動集計部6は、一般化挙動情報から、対応するタイプが Comp_Type と同一である一般化挙動のコピーを取得する。挙動集計部6は、キーワードテーブルと呼ばれるテーブルをメモリに保持し、それは、列「Keyword」にキーワードを有し、列「Name」に対応する具体値の名称を有する。図22は、キーワードテーブルを表す。挙動集計部6は、キーワードテーブルの列「Keyword」で定義されているキーワードを、一般化挙動のコピーから探索する。その探索において見つかった各キーワードについて、挙動集計部6は、そのキーワードと同一のキーワードでキーワードテーブルの「Keyword」列を検索し、具体値の名称についての「Name」列を参照することにより、そのキーワードに対応する具体値の名称を特定し、一般化挙動に含まれるそのキーワードを、特定した具体値の名称によって示される具体値で置き換える。
最後に、挙動集計部6は、前述の特定挙動のリストが含まれる物理モデルを生成し、生成した物理モデルを任意の方法で出力する例えば挙動集計部6は、前述の物理モデルが記述されたプレーンテキストファイルを記憶装置に格納する。その他にも例えば、挙動集計部6は、プレーンテキスト又はグラフィカルデータとして、前述の物理モデルをディスプレイ装置に送ることで、それがディスプレイ装置に表示されるようにする。
図23は、挙動集計部6によって実行される処理の流れを表すフローチャートである。挙動集計部6は、プラントアーキテクチャ情報に含まれる全てのコンポーネントアイテムについて処理が行われたか否かをチェックする(S201)。全てのコンポーネントアイテムについて処理が行われた場合、S206が実行される。そうでない場合、S202が実行される。
挙動集計部6は、プラントアーキテクチャ情報からコンポーネントアイテムを取得し、そのコンポーネントアイテムから具体値を収集するなどする(S202)。挙動集計部6は、一般化挙動情報から、具体値 Comp_Type に対応するタイプを持つ一般化挙動のコピーを取得する(S203)。
挙動集計部6は、コピーされた一般化挙動から、キーワードテーブルに定められているキーワードを探す(S204)。
挙動集計部6は、一般化挙動に含まれる各キーワードを、そのキーワードに対応する具体値で置き換え(S205)、S201を実行する。
挙動集計部6は、特定挙動のリストが含まれる物理モデルを生成し、その物理モデルを出力する(S206)。
<<物理モデルの生成の例示のケース>>
図面を参照しながら、挙動集計部6の動作の例について説明する。この例では、図5で表される設計情報、図17で表されるタイプ状態情報、及び図21で表される一般化挙動情報が、物理モデル生成装置2によって取得されると仮定される。そのため、プラントアーキテクチャ情報及びコンポーネント状態情報はそれぞれ、図12と図20で表されるものとなる。
コンポーネント状態情報が生成された後、挙動集計部6は、図12で表される前述のプラントアーキテクチャ情報、図20で表される前述のコンポーネント状態情報、及び図21で表される前述の一般化挙動情報を参照して、物理モデルを生成する。以下、このステップの詳細について説明する。
図24は、Input_ON、Input_OFF、Output_ON、及び Output_OFF の具体値を特定するために挙動集計部6によってメモリに保持される、ON-states と OFF-states を表す。ON-states は「On」、「Open」、及び「Running」を含む。OFF-states は「OFF」、「Closed」、「Stopped」を含む。
S202において、挙動集計部6は、プラントアーキテクチャ情報から第1のコンポーネントアイテムを取得し、そのコンポーネントアイテムについて、以下の具体値を収集する:Comp_Name について「WT001」、Comp_Type について「WaterTank」、Input_Comp について「MV001」、Output_Comp について「P001」、Signal_Output_Comp について「LS001」、Input_ON について「Open」、Input_OFF について「Closed」、Output_ON について「Running」、Output_OFF について「Stopped」。
S203において、挙動集計部6は、一般化挙動情報から、対応するタイプが「WaterTank」である一般化挙動のコピーを取得する。
S204からS205において、挙動集計部6は、コピーされた一般化挙動からキーワードを見つけることで特定挙動を生成し、そのキーワードを対応する具体値で次のように置き換える:1行目から15行目の「Name」が「WT001」で置換され、1行目の「Type」が「WaterTank」で置換され、2行目から15行目の「INPUT」が「MV001」で置換され、2行目から15行目の「OUTPUT」が「P001」で置換され、4行目から9行目の「Input-ON-state」が「Open」で置換され、10行目から15行目の「Input-OFF-state」が「Closed」で置換され、4行目から9行目の「Output-ON-state」が「Running」で置換され、10行目から15行目の「Output-OFF-state」が「Stopped」で置換される。
同様に、挙動集計部6は、残りの各コンポーネントアイテムについて、S202からS205を実行する。
S206において、挙動集計部6は、生成された特定挙動のリストが含まれる物理モデルを生成する。図25は、例示のケースにおいて生成される物理モデルを表す。図25A及びBは、コンポーネント WT001 に関する物理モデルを示す。図25Cは、コンポーネント P001 及び MV001 に関する物理モデルを示す。図25Dは、コンポーネント LS001 に関する物理モデルを示す。
実施形態2
図26は、実施形態2の物理モデル生成装置2の機能構成を表す。この実施形態の物理モデル生成装置2は、一般化挙動情報において、或るタイプの物理コンポーネントについての一般化挙動が無いケースをサポートする。物理モデル生成装置2は、コンポーネントチェック部7を挙動集計部6の中に有する。
プラントアーキテクチャ情報内の各コンポーネントアイテムについて、コンポーネントチェック部7は、そのコンポーネントアイテムからタイプを取得し、対応するタイプがそのタイプと一致する一般化挙動について一般化挙動情報をチェックする。一般化挙動情報の中にその一般化挙動がない場合、コンポーネントチェック部7は、そのタイプを MISSING_COMPONENT_LIST と呼ばれるリストに加える。
コンポーネントチェック部7は、ユーザ(例えば、プラントオペレータ)に対して、MISSING_COMPONENT_LIST に含まれるタイプの一般化挙動を入力するように求めるために、ディスプレイなどの出力装置(図示せず)に対して MISSING_COMPONENT_LIST を送信し、MISSING_COMPONENT_LIST に含まれるタイプの一般化挙動について、一般化挙動情報を繰り返しチェックする。
ユーザが、入力装置(図示せず)を介して、MISSING_COMPONENT_LIST に含まれるタイプの一般化挙動の入力を終え、かつ、コンポーネントチェック部7が、MISSING_COMPONENT_LIST に含まれる各タイプの全ての一般化挙動が一般化挙動情報内に存在していると検出した場合、コンポーネントチェック部7は、プラントアーキテクチャ情報内の全ての物理コンポーネントの一般化挙動が一般化挙動情報に含まれると、挙動集計部6に通知する。
<ハードウエア構成の例>
実施形態2の物理モデル生成装置2のハードウエア構成は、実施形態1の物理モデル生成装置2のそれと同様に、図2で表されうる。しかしながら、実施形態2のストレージデバイス1080は、実施形態2の物理モデル生成装置2の機能を実現するプログラムを格納している。
<処理の流れ>
図27は、実施形態2の物理モデル生成装置2によって実行される処理の流れを表すフローチャートである。プラントアーキテクチャ生成部3は、設計情報を取得する(S401)。プラントアーキテクチャ生成部3は、設計情報に基づいて、プラントアーキテクチャ情報を生成する(S402)。状態抽出部4は、プラントアーキテクチャ情報に基づいて、コンポーネント状態情報を生成する(S403)。挙動集計部6は、一般化挙動情報を取得する(S404)。コンポーネントチェック部7は、一般化挙動情報において何れかの一般化挙動が不足しているか否かをチェックし、不足している一般化挙動がある場合には、ユーザ入力を介して、不足している一般化挙動を取得する(S405)。挙動集計部6は、プラントアーキテクチャ情報、コンポーネント状態情報、及び一般化挙動情報に基づいて、物理モデルを生成する(S406)。
図28は、S405における動作の例が詳細に表されるフローチャートである。コンポーネントチェック部7は、プラントアーキテクチャ情報に含まれる全てのコンポーネントタイプの一般化挙動が、一般化挙動情報に含まれるか否かをチェックする(S501)。Yes の場合、S504が実行される。
コンポーネントチェック部7は、不足している物理コンポーネントタイプの一般化挙動を取得する(S502)。例えば、コンポーネントチェック部7は、不足している物理コンポーネントタイプの一般化挙動の入力をユーザに求めるために、不足している物理コンポーネントタイプのリストを、出力装置へ送信する。
コンポーネントチェック部7は、一般化挙動情報の中の、不足している物理コンポーネントタイプの一般化挙動について、繰り返しチェックする(S503)。全ての不足している物理コンポーネントタイプの一般化挙動をコンポーネントチェック部7が見つけない場合、S504が実行される。一方、コンポーネントチェック部7が、不足している一般化挙度を見つける場合、S502が再度実行される。
コンポーネントチェック部7は、プラントアーキテクチャ情報に含まれる全ての物理コンポーネントの一般化挙動が一般化挙動情報に含まれることを、挙動集計部6に通知する(S504)。
上述の例において、プログラムは、様々なタイプの非一時的なコンピュータ可読媒体(non-transitory computer readable medium)を用いて格納され、コンピュータに提供することができる。非一時的なコンピュータ可読媒体は、様々なタイプの実体のある記録媒体(tangible storage medium)を含む。非一時的なコンピュータ可読媒体の例は、磁気記録媒体(例えば、フレキシブルディスク、磁気テープ、ハードディスクドライブ)、光磁気記録媒体(例えば、光磁気ディスク)、CD-ROM、CD-R、CD-R/W、半導体メモリ(例えば、マスク ROM、PROM(Programmable ROM)、EPROM(Erasable PROM)、フラッシュROM、RAM)を含む。プログラムは、様々なタイプの一時的なコンピュータ可読媒体(transitory computer readable medium)によってコンピュータに提供されてもよい。一時的なコンピュータ可読媒体の例は、電気信号、光信号、及び電磁波を含む。一時的なコンピュータ可読媒体は、電線及び光ファイバ等の有線通信路、又は無線通信路を介して、プログラムをコンピュータに供給できる。
実施の形態を参照して本開示を説明したが、本開示は上記実施形態に限定されものではない。本開示の構成や詳細には、本開示のスコープ内で当業者が理解し得る様々な変更をすることができる。
なお、本開示は前述した実施形態には限定されず、スコープ及び精神から逸脱しない範囲で、適切な変更が可能である。
<付記>
(付記1)
少なくとも1つのプロセッサと、インストラクションが格納されているメモリとを有し、
前記少なくとも1つのプロセッサは、前記インストラクションを実行することにより、
対象制御システムの設計情報を取得し、
前記対象制御システムに含まれる物理コンポーネントとそれらの間のコネクションが示されるプラントアーキテクチャ情報を前記設計情報から生成し、
前記プラントアーキテクチャ情報に示されている各物理コンポーネントがとりうる状態が示されているコンポーネント状態情報を生成し、
物理コンポーネントの各タイプについての一般化挙動が示されている一般化挙動情報を取得し、
前記プラントアーキテクチャ情報、前記コンポーネント状態情報、及び前記一般化挙動情報に基づいて、前記対象制御システムの物理モデルを生成するように構成されている、物理モデル生成装置。
(付記2)
前記物理モデルの生成は、
前記対象制御システムに含まれる各物理コンポーネントの名称を前記プラントアーキテクチャ情報から抽出し、
前記対象制御システムに含まれる各物理コンポーネントの状態を前記コンポーネント状態情報から抽出し、
前記対象制御システムに含まれる各物理コンポーネントの前記抽出された名称及び状態を用いて、前記一般化挙動情報に示されている前記一般化挙動を、前記対象制御システムに含まれる各物理コンポーネントの特定の挙動に変換し、
前記対象制御システムに含まれる各物理コンポーネントの前記特定の挙動が示されている前記物理モデルを生成することを含む、付記1に記載の物理モデル生成装置。
(付記3)
前記設計情報は、前記対象制御システムの配管計装図が示されている XML ドキュメントであり、
前記プラントアーキテクチャ情報の生成は、前記 XML ドキュメントから前記物理コンポーネント及びそれらのコネクションに関する情報を抽出することを含む、付記1又は2に記載の物理モデル生成装置。
(付記4)
前記コンポーネント状態情報の生成は、
前記物理コンポーネントの各タイプについて、とりうる状態が示されているタイプ状態情報を取得し、
前記プラントアーキテクチャ情報に含まれる各物理コンポーネントについて、その物理コンポーネントの前記タイプに対応するとりうる状態を、前記タイプ状態情報から取得し、
前記タイプ状態情報から取得された前記とりうる状態が示される前記コンポーネント状態情報を生成することを含む、付記1から3いずれか一項に記載の物理モデル生成装置。
(付記5)
前記コンポーネント状態情報の生成は、
前記対象制御システムの前記物理コンポーネントの監視又は制御のためのロジックが含まれるコントローラプログラムを取得し、
前記コントローラプログラムから、前記プラントアーキテクチャ情報に含まれる各物理コンポーネントがとりうる状態を抽出し、
前記コントローラプログラムから抽出された前記とりうる状態が示される前記コンポーネント状態情報を生成することを含む、付記1から3何れか一項に記載の物理モデル生成装置。
(付記6)
前記物理モデルの生成は、
前記プラントアーキテクチャ情報に含まれる前記物理モデルの各タイプについて、前記物理モデルのそのタイプに対応する一般化挙動が前記一般化挙動情報の中に存在するかを判定し、
対応する一般化挙動が前記一般化挙動情報の中に存在しない前記物理モデルの各タイプについて、前記物理モデルのそのタイプに対応する一般化挙動が指定されたユーザ入力を取得することを含む、付記1から5何れか一項に記載の物理モデル生成装置。
(付記7)
対象制御システムの設計情報を取得し、
前記対象制御システムに含まれる物理コンポーネントとそれらの間のコネクションが示されるプラントアーキテクチャ情報を前記設計情報から生成し、
前記プラントアーキテクチャ情報に示されている各物理コンポーネントがとりうる状態が示されているコンポーネント状態情報を生成し、
物理コンポーネントの各タイプについての一般化挙動が示されている一般化挙動情報を取得し、
前記プラントアーキテクチャ情報、前記コンポーネント状態情報、及び前記一般化挙動情報に基づいて、前記対象制御システムの物理モデルを生成することが含まれる、コンピュータによって実行される制御方法。
(付記8)
前記物理モデルの生成は、
前記対象制御システムに含まれる各物理コンポーネントの名称を前記プラントアーキテクチャ情報から抽出し、
前記対象制御システムに含まれる各物理コンポーネントの状態を前記コンポーネント状態情報から抽出し、
前記対象制御システムに含まれる各物理コンポーネントの前記抽出された名称及び状態を用いて、前記一般化挙動情報に示されている前記一般化挙動を、前記対象制御システムに含まれる各物理コンポーネントの特定の挙動に変換し、
前記対象制御システムに含まれる各物理コンポーネントの前記特定の挙動が示されている前記物理モデルを生成することを含む、付記7に記載の制御方法。
(付記9)
前記設計情報は、前記対象制御システムの配管計装図が示されている XML ドキュメントであり、
前記プラントアーキテクチャ情報の生成は、前記 XML ドキュメントから前記物理コンポーネント及びそれらのコネクションに関する情報を抽出することを含む、付記7又は8に記載の制御方法。
(付記10)
前記コンポーネント状態情報の生成は、
前記物理コンポーネントの各タイプについて、とりうる状態が示されているタイプ状態情報を取得し、
前記プラントアーキテクチャ情報に含まれる各物理コンポーネントについて、その物理コンポーネントの前記タイプに対応するとりうる状態を、前記タイプ状態情報から取得し、
前記タイプ状態情報から取得された前記とりうる状態が示される前記コンポーネント状態情報を生成することを含む、付記7から9何れか一項に記載の制御方法。
(付記11)
前記コンポーネント状態情報の生成は、
前記対象制御システムの前記物理コンポーネントの監視又は制御のためのロジックが含まれるコントローラプログラムを取得し、
前記コントローラプログラムから、前記プラントアーキテクチャ情報に含まれる各物理コンポーネントがとりうる状態を抽出し、
前記コントローラプログラムから抽出された前記とりうる状態が示される前記コンポーネント状態情報を生成することを含む、付記7から9何れか一項に記載の制御方法。
(付記12)
前記物理モデルの生成は、
前記プラントアーキテクチャ情報に含まれる前記物理モデルの各タイプについて、前記物理モデルのそのタイプに対応する一般化挙動が前記一般化挙動情報の中に存在するかを判定し、
対応する一般化挙動が前記一般化挙動情報の中に存在しない前記物理モデルの各タイプについて、前記物理モデルのそのタイプに対応する一般化挙動が指定されたユーザ入力を取得することを含む、付記7から11何れか一項に記載の制御方法。
(付記13)
対象制御システムの設計情報を取得し、
前記対象制御システムに含まれる物理コンポーネントとそれらの間のコネクションが示されるプラントアーキテクチャ情報を前記設計情報から生成し、
前記プラントアーキテクチャ情報に示されている各物理コンポーネントがとりうる状態が示されているコンポーネント状態情報を生成し、
物理コンポーネントの各タイプについての一般化挙動が示されている一般化挙動情報を取得し、
前記プラントアーキテクチャ情報、前記コンポーネント状態情報、及び前記一般化挙動情報に基づいて、前記対象制御システムの物理モデルを生成すること、をコンピュータに実行させるプログラムが格納されている、非一時的なコンピュータ可読記憶媒体。
(付記14)
前記物理モデルの生成は、
前記対象制御システムに含まれる各物理コンポーネントの名称を前記プラントアーキテクチャ情報から抽出し、
前記対象制御システムに含まれる各物理コンポーネントの状態を前記コンポーネント状態情報から抽出し、
前記対象制御システムに含まれる各物理コンポーネントの前記抽出された名称及び状態を用いて、前記一般化挙動情報に示されている前記一般化挙動を、前記対象制御システムに含まれる各物理コンポーネントの特定の挙動に変換し、
前記対象制御システムに含まれる各物理コンポーネントの前記特定の挙動が示されている前記物理モデルを生成することを含む、付記13に記載の記憶媒体。
(付記15)
前記設計情報は、前記対象制御システムの配管計装図が示されている XML ドキュメントであり、
前記プラントアーキテクチャ情報の生成は、前記 XML ドキュメントから前記物理コンポーネント及びそれらのコネクションに関する情報を抽出することを含む、付記13又は14に記載の記憶媒体。
(付記16)
前記コンポーネント状態情報の生成は、
前記物理コンポーネントの各タイプについて、とりうる状態が示されているタイプ状態情報を取得し、
前記プラントアーキテクチャ情報に含まれる各物理コンポーネントについて、その物理コンポーネントの前記タイプに対応するとりうる状態を、前記タイプ状態情報から取得し、
前記タイプ状態情報から取得された前記とりうる状態が示される前記コンポーネント状態情報を生成することを含む、付記13から15何れか一項に記載の記憶媒体。
(付記17)
前記コンポーネント状態情報の生成は、
前記対象制御システムの前記物理コンポーネントの監視又は制御のためのロジックが含まれるコントローラプログラムを取得し、
前記コントローラプログラムから、前記プラントアーキテクチャ情報に含まれる各物理コンポーネントがとりうる状態を抽出し、
前記コントローラプログラムから抽出された前記とりうる状態が示される前記コンポーネント状態情報を生成することを含む、付記13から15何れか一項に記載の記憶媒体。
(付記18)
前記物理モデルの生成は、
前記プラントアーキテクチャ情報に含まれる前記物理モデルの各タイプについて、前記物理モデルのそのタイプに対応する一般化挙動が前記一般化挙動情報の中に存在するかを判定し、
対応する一般化挙動が前記一般化挙動情報の中に存在しない前記物理モデルの各タイプについて、前記物理モデルのそのタイプに対応する一般化挙動が指定されたユーザ入力を取得することを含む、付記13から17何れか一項に記載の記憶媒体。
2 物理モデル生成装置
3 プラントアーキテクチャ生成部
4 状態抽出部
6 挙動集計部
7 コンポーネントチェック部
1000 コンピュータ
1020 バス
1040 プロセッサ
1060 メモリ
1080 ストレージデバイス
1100 入出力インタフェース
1120 ネットワークインタフェース

Claims (18)

  1. 少なくとも1つのプロセッサと、インストラクションが格納されているメモリとを有し、
    前記少なくとも1つのプロセッサは、前記インストラクションを実行することにより、
    対象制御システムの設計情報を取得し、
    前記対象制御システムに含まれる物理コンポーネントとそれらの間のコネクションが示されるプラントアーキテクチャ情報を前記設計情報から生成し、
    前記プラントアーキテクチャ情報に示されている各物理コンポーネントがとりうる状態が示されているコンポーネント状態情報を生成し、
    物理コンポーネントの各タイプについての一般化挙動が示されている一般化挙動情報を取得し、
    前記プラントアーキテクチャ情報、前記コンポーネント状態情報、及び前記一般化挙動情報に基づいて、前記対象制御システムの物理モデルを生成するように構成されている、物理モデル生成装置。
  2. 前記物理モデルの生成は、
    前記対象制御システムに含まれる各物理コンポーネントの名称を前記プラントアーキテクチャ情報から抽出し、
    前記対象制御システムに含まれる各物理コンポーネントの状態を前記コンポーネント状態情報から抽出し、
    前記対象制御システムに含まれる各物理コンポーネントの前記抽出された名称及び状態を用いて、前記一般化挙動情報に示されている前記一般化挙動を、前記対象制御システムに含まれる各物理コンポーネントの特定の挙動に変換し、
    前記対象制御システムに含まれる各物理コンポーネントの前記特定の挙動が示されている前記物理モデルを生成することを含む、請求項1に記載の物理モデル生成装置。
  3. 前記設計情報は、前記対象制御システムの配管計装図が示されている XML ドキュメントであり、
    前記プラントアーキテクチャ情報の生成は、前記 XML ドキュメントから前記物理コンポーネント及びそれらのコネクションに関する情報を抽出することを含む、請求項1又は2に記載の物理モデル生成装置。
  4. 前記コンポーネント状態情報の生成は、
    前記物理コンポーネントの各タイプについて、とりうる状態が示されているタイプ状態情報を取得し、
    前記プラントアーキテクチャ情報に含まれる各物理コンポーネントについて、その物理コンポーネントの前記タイプに対応するとりうる状態を、前記タイプ状態情報から取得し、
    前記タイプ状態情報から取得された前記とりうる状態が示される前記コンポーネント状態情報を生成することを含む、請求項1から3いずれか一項に記載の物理モデル生成装置。
  5. 前記コンポーネント状態情報の生成は、
    前記対象制御システムの前記物理コンポーネントの監視又は制御のためのロジックが含まれるコントローラプログラムを取得し、
    前記コントローラプログラムから、前記プラントアーキテクチャ情報に含まれる各物理コンポーネントがとりうる状態を抽出し、
    前記コントローラプログラムから抽出された前記とりうる状態が示される前記コンポーネント状態情報を生成することを含む、請求項1から3何れか一項に記載の物理モデル生成装置。
  6. 前記物理モデルの生成は、
    前記プラントアーキテクチャ情報に含まれる前記物理モデルの各タイプについて、前記物理モデルのそのタイプに対応する一般化挙動が前記一般化挙動情報の中に存在するかを判定し、
    対応する一般化挙動が前記一般化挙動情報の中に存在しない前記物理モデルの各タイプについて、前記物理モデルのそのタイプに対応する一般化挙動が指定されたユーザ入力を取得することを含む、請求項1から5何れか一項に記載の物理モデル生成装置。
  7. 対象制御システムの設計情報を取得し、
    前記対象制御システムに含まれる物理コンポーネントとそれらの間のコネクションが示されるプラントアーキテクチャ情報を前記設計情報から生成し、
    前記プラントアーキテクチャ情報に示されている各物理コンポーネントがとりうる状態が示されているコンポーネント状態情報を生成し、
    物理コンポーネントの各タイプについての一般化挙動が示されている一般化挙動情報を取得し、
    前記プラントアーキテクチャ情報、前記コンポーネント状態情報、及び前記一般化挙動情報に基づいて、前記対象制御システムの物理モデルを生成することが含まれる、コンピュータによって実行される制御方法。
  8. 前記物理モデルの生成は、
    前記対象制御システムに含まれる各物理コンポーネントの名称を前記プラントアーキテクチャ情報から抽出し、
    前記対象制御システムに含まれる各物理コンポーネントの状態を前記コンポーネント状態情報から抽出し、
    前記対象制御システムに含まれる各物理コンポーネントの前記抽出された名称及び状態を用いて、前記一般化挙動情報に示されている前記一般化挙動を、前記対象制御システムに含まれる各物理コンポーネントの特定の挙動に変換し、
    前記対象制御システムに含まれる各物理コンポーネントの前記特定の挙動が示されている前記物理モデルを生成することを含む、請求項7に記載の制御方法。
  9. 前記設計情報は、前記対象制御システムの配管計装図が示されている XML ドキュメントであり、
    前記プラントアーキテクチャ情報の生成は、前記 XML ドキュメントから前記物理コンポーネント及びそれらのコネクションに関する情報を抽出することを含む、請求項7又は8に記載の制御方法。
  10. 前記コンポーネント状態情報の生成は、
    前記物理コンポーネントの各タイプについて、とりうる状態が示されているタイプ状態情報を取得し、
    前記プラントアーキテクチャ情報に含まれる各物理コンポーネントについて、その物理コンポーネントの前記タイプに対応するとりうる状態を、前記タイプ状態情報から取得し、
    前記タイプ状態情報から取得された前記とりうる状態が示される前記コンポーネント状態情報を生成することを含む、請求項7から9何れか一項に記載の制御方法。
  11. 前記コンポーネント状態情報の生成は、
    前記対象制御システムの前記物理コンポーネントの監視又は制御のためのロジックが含まれるコントローラプログラムを取得し、
    前記コントローラプログラムから、前記プラントアーキテクチャ情報に含まれる各物理コンポーネントがとりうる状態を抽出し、
    前記コントローラプログラムから抽出された前記とりうる状態が示される前記コンポーネント状態情報を生成することを含む、請求項7から9何れか一項に記載の制御方法。
  12. 前記物理モデルの生成は、
    前記プラントアーキテクチャ情報に含まれる前記物理モデルの各タイプについて、前記物理モデルのそのタイプに対応する一般化挙動が前記一般化挙動情報の中に存在するかを判定し、
    対応する一般化挙動が前記一般化挙動情報の中に存在しない前記物理モデルの各タイプについて、前記物理モデルのそのタイプに対応する一般化挙動が指定されたユーザ入力を取得することを含む、請求項7から11何れか一項に記載の制御方法。
  13. 対象制御システムの設計情報を取得し、
    前記対象制御システムに含まれる物理コンポーネントとそれらの間のコネクションが示されるプラントアーキテクチャ情報を前記設計情報から生成し、
    前記プラントアーキテクチャ情報に示されている各物理コンポーネントがとりうる状態が示されているコンポーネント状態情報を生成し、
    物理コンポーネントの各タイプについての一般化挙動が示されている一般化挙動情報を取得し、
    前記プラントアーキテクチャ情報、前記コンポーネント状態情報、及び前記一般化挙動情報に基づいて、前記対象制御システムの物理モデルを生成すること、をコンピュータに実行させるプログラムが格納されている、非一時的なコンピュータ可読記憶媒体。
  14. 前記物理モデルの生成は、
    前記対象制御システムに含まれる各物理コンポーネントの名称を前記プラントアーキテクチャ情報から抽出し、
    前記対象制御システムに含まれる各物理コンポーネントの状態を前記コンポーネント状態情報から抽出し、
    前記対象制御システムに含まれる各物理コンポーネントの前記抽出された名称及び状態を用いて、前記一般化挙動情報に示されている前記一般化挙動を、前記対象制御システムに含まれる各物理コンポーネントの特定の挙動に変換し、
    前記対象制御システムに含まれる各物理コンポーネントの前記特定の挙動が示されている前記物理モデルを生成することを含む、請求項13に記載の記憶媒体。
  15. 前記設計情報は、前記対象制御システムの配管計装図が示されている XML ドキュメントであり、
    前記プラントアーキテクチャ情報の生成は、前記 XML ドキュメントから前記物理コンポーネント及びそれらのコネクションに関する情報を抽出することを含む、請求項13又は14に記載の記憶媒体。
  16. 前記コンポーネント状態情報の生成は、
    前記物理コンポーネントの各タイプについて、とりうる状態が示されているタイプ状態情報を取得し、
    前記プラントアーキテクチャ情報に含まれる各物理コンポーネントについて、その物理コンポーネントの前記タイプに対応するとりうる状態を、前記タイプ状態情報から取得し、
    前記タイプ状態情報から取得された前記とりうる状態が示される前記コンポーネント状態情報を生成することを含む、請求項13から15何れか一項に記載の記憶媒体。
  17. 前記コンポーネント状態情報の生成は、
    前記対象制御システムの前記物理コンポーネントの監視又は制御のためのロジックが含まれるコントローラプログラムを取得し、
    前記コントローラプログラムから、前記プラントアーキテクチャ情報に含まれる各物理コンポーネントがとりうる状態を抽出し、
    前記コントローラプログラムから抽出された前記とりうる状態が示される前記コンポーネント状態情報を生成することを含む、請求項13から15何れか一項に記載の記憶媒体。
  18. 前記物理モデルの生成は、
    前記プラントアーキテクチャ情報に含まれる前記物理モデルの各タイプについて、前記物理モデルのそのタイプに対応する一般化挙動が前記一般化挙動情報の中に存在するかを判定し、
    対応する一般化挙動が前記一般化挙動情報の中に存在しない前記物理モデルの各タイプについて、前記物理モデルのそのタイプに対応する一般化挙動が指定されたユーザ入力を取得することを含む、請求項13から17何れか一項に記載の記憶媒体。
JP2022567897A 2020-05-19 2020-05-19 物理モデル生成装置、制御方法、及びプログラム Active JP7347693B2 (ja)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2020/019784 WO2021234818A1 (en) 2020-05-19 2020-05-19 Physical model generation apparatus, control method, and non-transitory computer-readable storage medium

Publications (2)

Publication Number Publication Date
JP2023525764A true JP2023525764A (ja) 2023-06-19
JP7347693B2 JP7347693B2 (ja) 2023-09-20

Family

ID=78708584

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2022567897A Active JP7347693B2 (ja) 2020-05-19 2020-05-19 物理モデル生成装置、制御方法、及びプログラム

Country Status (3)

Country Link
US (1) US20230185980A1 (ja)
JP (1) JP7347693B2 (ja)
WO (1) WO2021234818A1 (ja)

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH06259108A (ja) * 1993-03-08 1994-09-16 Toshiba Corp 対象知識自動生成装置
JP2002189778A (ja) * 2000-12-21 2002-07-05 Mitsubishi Heavy Ind Ltd タスク分析型設計支援装置
JP2011210029A (ja) * 2010-03-30 2011-10-20 Toshiba Mitsubishi-Electric Industrial System Corp プラントエンジニアリング支援装置及び方法
JP2016164751A (ja) * 2015-03-06 2016-09-08 新日鐵住金株式会社 シミュレーションプログラム生成装置、シミュレーションプログラム生成方法、及びプログラム
JP2017072877A (ja) * 2015-10-05 2017-04-13 株式会社東芝 プラント制御システムのエンジニアリング支援装置
US20190121920A1 (en) * 2016-05-12 2019-04-25 Korea Hydro & Nuclear Power Co., Ltd Nuclear power plant data-based design basis management system and method therefor

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
AU2015231764B2 (en) 2014-03-17 2017-02-09 Fresenius Medical Care Holdings, Inc. Cartridges useful in cleaning dialysis solutions

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH06259108A (ja) * 1993-03-08 1994-09-16 Toshiba Corp 対象知識自動生成装置
JP2002189778A (ja) * 2000-12-21 2002-07-05 Mitsubishi Heavy Ind Ltd タスク分析型設計支援装置
JP2011210029A (ja) * 2010-03-30 2011-10-20 Toshiba Mitsubishi-Electric Industrial System Corp プラントエンジニアリング支援装置及び方法
JP2016164751A (ja) * 2015-03-06 2016-09-08 新日鐵住金株式会社 シミュレーションプログラム生成装置、シミュレーションプログラム生成方法、及びプログラム
JP2017072877A (ja) * 2015-10-05 2017-04-13 株式会社東芝 プラント制御システムのエンジニアリング支援装置
US20190121920A1 (en) * 2016-05-12 2019-04-25 Korea Hydro & Nuclear Power Co., Ltd Nuclear power plant data-based design basis management system and method therefor

Also Published As

Publication number Publication date
US20230185980A1 (en) 2023-06-15
WO2021234818A1 (en) 2021-11-25
JP7347693B2 (ja) 2023-09-20

Similar Documents

Publication Publication Date Title
Bucci et al. Construction of event-tree/fault-tree models from a Markov approach to dynamic system reliability
CN104756023B (zh) 系统构建辅助工具以及系统
US20180032649A1 (en) Managing Custom REVIT Inheritance-Based Assembly Families for Manufacturing
JP6959228B2 (ja) プロセス制御システムの安全論理に対応するインターリンクされたユーザインターフェースを提供するためのシステム、非一時的コンピュータ可読媒体及び方法
US10831748B2 (en) Optimized method for sorting alarms
JP2004509411A (ja) エキスパートシステムのためのカスタムルールシステム及びその方法
CN111527459B (zh) 设备、方法和计算机可读记录介质
JP5489958B2 (ja) 試験テーブル生成装置及びその方法
CN102667867A (zh) 改进的计算机实施的几何特征检测方法
US11501036B2 (en) Simulations in a model of a process control system
CN104077371B (zh) 监测数据库异常数据的方法及系统
US11467560B2 (en) Engineering support system and engineering support method
EP3692421A1 (en) Apparatus, method and program for dynamic model generation
Daum et al. Checking spatio-semantic consistency of building information models by means of a query language
CN107851134A (zh) 协同虚拟机械布管开发系统和方法
US20150363513A1 (en) Method and system for designing products
JP7347693B2 (ja) 物理モデル生成装置、制御方法、及びプログラム
JP6612800B2 (ja) 設計支援システムおよび設計支援方法
US7272544B2 (en) Integrated modeling through symbolic manipulation
JP6139389B2 (ja) プラント制御ロジック設計支援システム、プラント制御ロジック設計支援方法、及びプログラム
WO2019103775A1 (en) Method and apparatus for automated suggestion of additional sensors or inputs from equipment or systems
HE et al. An automated GO-FLOW modeling tool for system reliability analysis
US20190130055A1 (en) Manifold generator
KR20130077831A (ko) 스위치기어를 파라미터화하기 위한 엔지니어링 시스템에 대한 매크로 관리 시스템
JP2018036987A (ja) 制御プログラム作成装置

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20221108

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20221108

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: 20230808

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20230821

R151 Written notification of patent or utility model registration

Ref document number: 7347693

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151