(57)【要約】【課題】プラント又はプラントに用いられる装置の異常を検知することを目的とする。【解決手段】物理量又は機器の状態を計測するフィールド機器を少なくとも有する運用システムと、前記フィールド機器に接続される仮想システムと、前記運用システム及び前記仮想システムと接続される照合システムを含む異常検知システムにおいて、前記仮想システムが、前記フィールド機器から、前記フィールド機器による計測結果を示す入力信号を入力し、前記仮想システムが、前記入力信号に基づいて、前記運用システムと等価の処理結果を示す第１データを生成し、前記照合システムが、前記仮想システムから前記第１データと、前記運用システムから前記入力信号に基づく処理の処理結果を示す第２データとを取得し、前記照合システムが、前記第１データ及び前記第２データを照合して前記運用システム又は前記運用システムを用いるプラントの異常を検知することで上記課題を解決する。【選択図】図８
2018018325.tif 000002
【特許請求の範囲】
【請求項１】
物理量又は機器の状態を計測するフィールド機器を少なくとも有する運用システムと、前記フィールド機器に接続される仮想システムと、前記運用システム及び前記仮想システムと接続される照合システムを含む異常検知システムであって、
前記フィールド機器から、前記フィールド機器による計測結果を示す入力信号を入力する入力部と、
前記入力信号に基づいて、前記運用システムと等価の処理結果を示す第１データを生成するデータ生成部と
を有する前記仮想システムと、
前記仮想システムから前記第１データと、前記運用システムから前記入力信号に基づく処理の処理結果を示す第２データとを取得する取得部と、
前記第１データ及び前記第２データを照合して前記運用システム又は前記運用システムを用いるプラントの異常を検知する検知部と
を有する前記照合システムと
を含む異常検知システム。
【請求項２】
前記データ生成部は、前記第１データを複数生成する請求項１に記載の異常検知システム。
【請求項３】
前記検知部は、複数の前記第１データを照合して前記仮想システムの異常を検知する請求項２に記載の異常検知システム。
【請求項４】
前記検知部は、少なくとも、前記第１データと、前記第２データとが同一であるか否かに基づいて照合して前記運用システム又は前記運用システムを用いるプラントの異常を検知する請求項１乃至３のいずれか１項に記載の異常検知システム。
【請求項５】
前記検知部は、前記第１データ及び前記第２データのそれぞれの傾向、統計データ又はこれらの組み合わせに基づいて更に照合して前記運用システム又は前記運用システムを用いるプラントの異常を検知する請求項４に記載の異常検知システム。
【請求項６】
前記検知部が異常を検知すると、異常を通知する通知部を更に含む請求項１乃至５のいずれか１項に記載の異常検知システム。
【請求項７】
前記仮想システム及び前記運用システムは、前記第１データ及び前記第２データに、照合において、照合対象となるデータを特定できる特定データを付与して送信する請求項１乃至６のいずれか１項に記載の異常検知システム。
【請求項８】
前記仮想システムと、前記運用システムとは異なる装置で実現される請求項１乃至７のいずれか１項に記載の異常検知システム。
【請求項９】
物理量又は機器の状態を計測するフィールド機器を少なくとも有する運用システムと、前記フィールド機器に接続される仮想システムと、前記運用システム及び前記仮想システムと接続される照合システムを含む異常検知システムが行う異常検知方法であって、
前記仮想システムが、前記フィールド機器から、前記フィールド機器による計測結果を示す入力信号を入力する入力手順と、
前記仮想システムが、前記入力信号に基づいて、前記運用システムと等価の処理結果を示す第１データを生成するデータ生成手順と、
前記照合システムが、前記仮想システムから前記第１データと、前記運用システムから前記入力信号に基づく処理の処理結果を示す第２データとを取得する取得手順と、
前記照合システムが、前記第１データ及び前記第２データを照合して前記運用システム又は前記運用システムを用いるプラントの異常を検知する検知手順と
を含む異常検知方法。
【請求項１０】
前記検知手順では、複数の前記第１データを照合して前記仮想システムの異常を検知する請求項９に記載の異常検知方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、異常検知システム及び異常検知方法に関する。
【背景技術】
【０００２】
従来、制御システム等を有するプラントにおいて、制御システム等の異常を検知する方法が知られている。
【０００３】
それは、制御システムを構成する制御用サーバ（ＨＭＩ（Ｈｕｍａｎ−Ｍａｃｈｉｎｅ  Ｉｎｔｅｒｆａｃｅ）等）と制御機器（ＰＬＣ（Ｐｒｏｇｒａｍｍａｂｌｅ  Ｌｏｇｉｃ  Ｃｏｎｔｒｏｌｌｅｒ）、コントローラ等）との間に異常検知装置を設置して制御システム等の異常を検知する方法である。具体的には、制御用サーバや制御機器、制御用サーバと制御機器をつなぐ回線上のネットワーク機器（ルータ、ゲートウェイ等）に異常検知機能を具備したり、同回線上に異常検知機器を直接つなぐ等して、サーバや機器の状態やネットワーク上のデータ等を解析することによって異常を検知するものである。
【０００４】
例えば、まず、制御システムの異常を検知する異常検知装置が、セキュリティ・ゲートウェイを有する。そして、セキュリティ・ゲートウェイは、制御ネットワーク内を伝送するセンサデータ、センサ信号、アクチュエータに対する操作コマンド及びアクチュエータに対する制御信号等のトラフィック（ｔｒａｆｆｉｃ）を監視する。次に、セキュリティ・ゲートウェイは、監視の結果、所定のフォーマット形式で、イベント情報を生成して、解析エンジンへイベント情報を渡す。続いて、解析エンジンは、イベント情報を解析して制御ネットワークで発生した異常を検知する（例えば、特許文献１等）。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２０１２−１６８６８６号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
しかしながら、従来の方法では、例えば、異常検知装置を具備させた制御用サーバ、制御機器、ネットワーク機器等の保守メンテナンス作業の過程やネットワーク経由でコンピュータウィルスに感染させたり、脆弱性等を突くことで異常検知装置の機能を無効化させたりすることが可能で、データが改ざんされた場合であっても、異常が検知できない場合がある。
【０００７】
本発明の１つの側面は、このような問題に鑑みてなされたものであり、プラント又はプラントに用いられる装置の異常を検知することを目的とする。
【課題を解決するための手段】
【０００８】
上述した課題を解決し、目的を達成するため、本発明の一実施形態における、物理量又は機器の状態を計測するフィールド機器を少なくとも有する運用システムと、前記フィールド機器に接続される仮想システムと、前記運用システム及び前記仮想システムと接続される照合システムを含む異常検知システムは、
上述した制御用サーバと制御機器との間で異常を検知する方法とは異なり、
前記フィールド機器から、前記フィールド機器による計測結果を示す入力信号を入力する入力部と、
前記入力信号に基づいて、前記運用システムと等価の処理結果を示す第１データを生成するデータ生成部と
を有する前記仮想システムと、
前記仮想システムから前記第１データと、前記運用システムから前記入力信号に基づく処理の処理結果を示す第２データとを取得する取得部と、
前記第１データ及び前記第２データを照合して前記運用システム又は前記運用システムを用いるプラントの異常を検知する検知部と
を有する前記照合システムと
を含む。
【発明の効果】
【０００９】
本発明によれば、プラント又はプラントに用いられる装置の異常を検知することができる。
【図面の簡単な説明】
【００１０】
【図１】本発明の一実施形態における異常検知システムの全体構成の一例を示すシステム図である。
【図２】本発明の一実施形態における異常検知システムが有する照合システムを実現するのに用いられる情報処理装置のハードウェア構成の一例を示すブロック図である。
【図３】本発明の一実施形態における異常検知システムによる全体処理の一例を示すシーケンス図である。
【図４】本発明の第２実施形態の一実施形態における異常検知システムによる全体処理の一例を示すシーケンス図である。
【図５】本発明の第２実施形態の一実施形態における異常検知システムの全体構成の一例を示すシステム図である。
【図６】本発明の第２実施形態の一実施形態における異常検知システムによる照合の一例を示すフローチャートである。
【図７】本発明の一実施形態における異常検知システムによる照合において用いられる通し番号の一例を示すタイミングチャートである。
【図８】本発明の一実施形態における異常検知システムの機能構成の一例を示す機能ブロック図である。
【発明を実施するための形態】
【００１１】
本発明の実施形態を以下の順序で説明する。
１．異常検知システムの全体構成例
２．異常検知システムが有する各システムのハードウェア構成例
３．異常検知システムによる全体処理例
４．異常検知システムの機能構成例
（第１実施形態）
≪  １．  異常検知システムの全体構成例  ≫
図１は、本発明の一実施形態における異常検知システムの全体構成の一例を示すシステム図である。図示するように、異常検知システム１０は、運用システム１と、仮想システム２と、照合システム３とを有する。
【００１２】
工場等のプラントでは、運用システム１によって、様々な物理量又はプラントで用いられる機器の状態等が計測される。具体的には、物理量は、例えば、温度、圧力、速度、モータの回転数、電力量又は寸法等である。このように、物理量は、センサ等であるフィールド機器１ＦＭによって計測される機械的又は電気的な値である。また、機器の状態は、例えば、対象となる機器が動作中であるか否か、機器が故障中であるか否か又は機器の電源がオンであるかオフであるか等の様々な状態を示すパラメータである。
【００１３】
次に、運用システム１では、フィールド機器１ＦＭによる計測結果が信号（以下「入力信号ＳＩＰ」という。）となって入力モジュール１ＩＭに入力される。そして、入力モジュール１ＩＭは、入力信号ＳＩＰに対してＡ／Ｄ（ａｎａｌｏｇ−ｄｉｇｉｔａｌ）変換等を行う。次に、入力モジュール１ＩＭは、Ａ／Ｄ変換によって、コントローラ１ＣＲが処理可能なデータ形式の値、いわゆるディジタル値を生成する。すなわち、入力モジュール１ＩＭは、コントローラ１ＣＲ等が入力信号ＳＩＰを処理することができる形式に変換する。なお、フィールド機器１ＦＭからは、ディジタル値が送信されてもよい。
【００１４】
続いて、コントローラ１ＣＲは、ディジタル値に基づいて、処理を行う。コントローラ１ＣＲが、どのような処理を行うかは、あらかじめ設定される設定条件、コントローラ１ＣＲの種類及び入力信号ＳＩＰの種類等によって様々である。
【００１５】
例えば、フィールド機器１ＦＭが温度を計測する装置であるとする。そして、フィールド機器１ＦＭは、入力信号ＳＩＰによって、計測結果を示す電圧値（単位系は、Ｖ（ボルト）等である。）を入力モジュール１ＩＭに出力する。次に、入力モジュール１ＩＭは、Ａ／Ｄ変換によって、ディジタル値（単位系は、次元なしである。）を生成する。続いて、コントローラ１ＣＲは、ディジタル値を温度（単位系は、℃（度）等である。）等の人間が意味の分かる形式の値（以下「工業値」という。）に変換する処理等を行う。また、工業値は、温度に限られず、他の種類でもよい。
【００１６】
なお、コントローラ１ＣＲは、入力信号ＳＩＰに基づいて、他の機器等を制御する等の処理を行ってもよい。
【００１７】
そして、運用システム１による処理結果を示すデータ（以下「第２データＤ２」という。）は、ＨＭＩ端末１ＨＭに送信される。また、ＨＭＩ端末１ＨＭに送信されると、例えば、第２データＤ２は、ＨＭＩ端末１ＨＭにおいてデータベースＤＢに保存される。続いて、ＨＭＩ端末１ＨＭは、プラントの管理者等であるユーザＵＲに、管理用のパラメータ、すなわち、第２データＤ２を表示する。
【００１８】
また、運用システム１は、ＳＣＡＤＡ（Ｓｕｐｅｒｖｉｓｏｒｙ  Ｃｏｎｔｒｏｌ  Ａｎｄ  Ｄａｔａ  Ａｃｑｕｉｓｉｔｉｏｎ）等の監視制御コンピュータ、ＤＣＳ（分散形制御システム、Ｄｉｓｔｒｉｂｕｔｅｄ  Ｃｏｎｔｒｏｌ  Ｓｙｓｔｅｍ）、ＰＬＣ又はこれらの組み合わせを有してもよい。さらに、運用システム１には、コントローラ１ＣＲ及び入力モジュール１ＩＭ等が複数あってもよい。
【００１９】
運用システム１が有する各装置には、Ｗｉｎｄｏｗｓ（登録商標）又はＬｉｎｕｘ（登録商標）等の汎用ＯＳ（Ｏｐｅｒａｔｉｎｇ  Ｓｙｓｔｅｍ）が用いられたり、ネットワークにイーサネット（登録商標）等の汎用ネットワークが用いられる場合がある。そのため、運用システム１に対して、いわゆるサイバー攻撃がされる場合がある。
【００２０】
具体的には、図示するように、運用システム１が有する各機器の入力又は出力、すなわち、各機器を接続させたネットワーク上において送受信される信号及びデータを狙ったサイバー攻撃（以下「第１サイバー攻撃ＡＴ１」という。）が運用システム１に対して行われる場合がある。図示する例では、第１サイバー攻撃ＡＴ１は、各機器の間を送受信する信号等がサイバー攻撃の標的となり、第１サイバー攻撃ＡＴ１によって、データが改ざんされたり、データが不正に取得されたりする。
【００２１】
また、図示するように、運用システム１が有する各機器が保存するデータを狙ったサイバー攻撃（以下「第２サイバー攻撃ＡＴ２」という。）が運用システム１に対して行われる場合がある。図示する例では、第２サイバー攻撃ＡＴ２は、まず、運用システム１に不正に侵入し、データベースＤＢに保存されているデータを標的として、データを改ざんしたり、データを不正に取得したりするサイバー攻撃である。
【００２２】
他にも、運用システム１が有する各機器にインストールされたプログラムＤＰを狙ったサイバー攻撃（以下「第３サイバー攻撃ＡＴ３」という。）が運用システム１に対して行われる場合がある。図示する例では、例えば、ＨＭＩ端末１ＨＭには、あらかじめ第２データＤ２をユーザＵＲに表示させるプログラムＤＰがインストールされるとする。
【００２３】
より具体的には、ＨＭＩ端末１ＨＭは、プログラムＤＰによって、グラフ表示等によって、第２データＤ２をユーザＵＲに時系列に表示したり、表等の形式に加工して表示したりする。すなわち、プログラムＤＰは、データに基づいて、プラント又はプラントが用いる機器をユーザＵＲが監視するための数値又は状態等を表示する。このような処理を行うプログラムＤＰに対して第３サイバー攻撃ＡＴ３が行われると、例えば、プログラムＤＰによって表示される数値が変えられたり、「異常」を示すメッセージが変えられ、ユーザＵＲがプラントの異常を察知できなくなったりする。
【００２４】
このように、運用システム１に対して、第１サイバー攻撃ＡＴ１、第２サイバー攻撃ＡＴ２及び第３サイバー攻撃ＡＴ３等のサイバー攻撃がされ、プラント又はプラントが有する機器に異常が発生する場合がある。そこで、異常検知システム１０は、仮想システム２及び照合システム３によって、プラント又はプラントが有する機器の異常を検知する。
【００２５】
仮想システム２は、図示するように、フィールド機器１ＦＭから入力信号ＳＩＰを入力する。つまり、仮想システム２は、テスト信号等ではなく、コントローラ１ＣＲ等と同様に、フィールド機器１ＦＭの計測結果に基づいて処理を行う。なお、入力信号ＳＩＰは、運用システム１用とは別に、フィールド機器１ＦＭから仮想システム２に送信される。つまり、フィールド機器１ＦＭは、運用システム１と、仮想システム２とに、同じ内容を示す入力信号ＳＩＰを２回送信する。
【００２６】
また、フィールド機器１ＦＭから運用システム１に入力信号ＳＩＰを送信する経路と、フィールド機器１ＦＭから仮想システム２に入力信号ＳＩＰを送信する経路は、別々でもよい。具体的には、フィールド機器１ＦＭと運用システム１を接続させるケーブルと、フィールド機器１ＦＭと仮想システム２を接続させるケーブルとは、異なるケーブル等である。
【００２７】
仮想システム２は、コントローラ１ＣＲ等の処理結果と等価の処理結果となる処理を行う。つまり、上記のように、運用システム１において、まず、温度が計測され、ディジタル値が生成されて、ディジタル値が温度を示す工業値に変換される場合では、仮想システム２は、同様に、入力信号ＳＩＰを変換してディジタル値を生成し、ディジタル値をＡ／Ｄ変換して温度を示す工業値を生成する処理を行う。
【００２８】
したがって、仮想システム２が運用システム１と等価の処理を行うため、仮想システム２の処理結果を示すデータ（以下「第１データＤ１」という。）は、第２データＤ２と同一の結果を示すデータとなる。
【００２９】
そこで、照合システム３は、運用システム１及び仮想システム２から、第１データＤ１及び第２データＤ２を取得し、第１データＤ１と、第２データＤ２とを照合する。そして、照合の結果に基づいて、ユーザＵＲに対して、異常の検出結果等を通知する。
【００３０】
また、異常検知システムが有する各システムは、例えば、以下のようなハードウェア構成のシステムである。
【００３１】
≪  ２．  異常検知システムが有する各システムのハードウェア構成例  ≫
仮想システム２は、例えば、電子回路等である。すなわち、仮想システム２は、例えば、ＡＳＩＣ（Ａｐｐｌｉｃａｔｉｏｎ  Ｓｐｅｃｉｆｉｃ  Ｉｎｔｅｇｒａｔｅｄ  Ｃｉｒｃｕｉｔ）又はＦＰＧＡ（Ｆｉｅｌｄ−Ｐｒｏｇｒａｍｍａｂｌｅ  Ｇａｔｅ  Ａｒｒａｙ）等によって実現される。また、仮想システム２は、ファームウェア等に基づいて動作する情報処理装置等によって実現されてもよい。このように、仮想システム２は、電子回路等の高速に処理が可能な情報処理装置によって実現されるのが望ましいが、運用システム１の処理速度によっては、ＰＣ（Ｐｅｒｓｏｎａｌ  Ｃｏｍｐｕｔｅｒ）又はサーバ等の情報処理装置によって実現されてもよい。一方で、照合システムは、例えば、以下のような情報処理装置等によって、実現される。
【００３２】
図２は、本発明の一実施形態における異常検知システムが有する照合システムを実現するのに用いられる情報処理装置のハードウェア構成の一例を示すブロック図である。図示するように、照合システム３は、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）ＨＷ１と、記憶装置ＨＷ２と、ネットワークＩ／Ｆ（ｉｎｔｅｒｆａｃｅ）ＨＷ３と、入力Ｉ／ＦＨＷ４と、出力Ｉ／ＦＨＷ５とを有する。すなわち、照合システム３は、ＰＣ、サーバ又はワークステーション等の情報処理装置である。
【００３３】
ＣＰＵＨＷ１は、処理を実現するための演算及びデータの加工を行う演算装置並びにハードウェアを制御する制御装置である。
【００３４】
記憶装置ＨＷ２は、いわゆるメモリ（ｍｅｍｏｒｙ）等の主記憶装置である。また、記憶装置ＨＷ２は、プログラム、設定値又はデータ等を記憶する。なお、記憶装置ＨＷ２は、補助記憶装置等を更に有してもよい。
【００３５】
ネットワークＩ／ＦＨＷ３は、ネットワークを介してデータ等を入出力するインタフェースである。例えば、ネットワークＩ／ＦＨＷ３は、コネクタ、ケーブル及びドライバ等である。
【００３６】
入力Ｉ／ＦＨＷ４は、ユーザによる操作及び外部装置からのデータを入力するインタフェースである。例えば、入力Ｉ／ＦＨＷ４は、キーボード、マウス又はこれらの組み合わせ等の入力装置である。さらに、入力Ｉ／ＦＨＷ４は、入力装置及び外部装置を接続させるコネクタ及びドライバ等である。
【００３７】
出力Ｉ／ＦＨＷ５は、ユーザに対する表示及び外部装置にデータを出力するインタフェースである。例えば、出力Ｉ／ＦＨＷ５は、ディスプレイ等の出力装置である。さらに、出力Ｉ／ＦＨＷ５は、出力装置及び外部装置を接続させるコネクタ及びドライバ等である。
【００３８】
なお、ハードウェア構成は、図示する構成に限られない。例えば、照合システム３は、演算装置、制御装置又は記憶装置を内部又は外部に更に有するハードウェア構成でもよい。
【００３９】
また、仮想システム２及び照合システム３は、１以上の情報処理装置によって実現される。すなわち、仮想システム２及び照合システム３は、それぞれ複数の情報処理装置によって実現され、冗長、分散又は並列に処理を行う構成等でもよい。
【００４０】
≪  ３．  異常検知システムによる全体処理例  ≫
図３は、本発明の一実施形態における異常検知システムによる全体処理の一例を示すシーケンス図である。
【００４１】
≪  計測例  ≫（ステップＳ１０１）
ステップＳ１０１では、運用システム１は、フィールド機器によって計測を行う。そして、運用システム１は、計測結果を示す入力信号を生成する。
【００４２】
≪  入力信号の入力例  ≫（ステップＳ１０２）
ステップＳ１０２では、運用システム１は、入力モジュール等によって、入力信号をコントローラに入力する。一方で、運用システム１は、同様の計測結果を示す入力信号を仮想システム２に送信して、入力信号を仮想システム２に入力する。
【００４３】
≪  コントローラ等による処理例  ≫（ステップＳ１０３）
ステップＳ１０３では、運用システム１は、コントローラ等によって、入力信号に基づいて処理を行う。そして、ステップＳ１０３では、運用システム１は、処理結果を示す第２データを照合システム３に送信する。
【００４４】
≪  運用システム１と等価の処理例  ≫（ステップＳ１０４）
ステップＳ１０４では、仮想システム２は、コントローラ等によって、運用システム１と等価の処理を行う。そして、ステップＳ１０４では、仮想システム２は、処理結果を示す第１データを照合システム３に送信する。
【００４５】
すなわち、ステップＳ１０３と、ステップＳ１０４とは、等価の処理である。図示するように、ステップＳ１０３と、ステップＳ１０４とは、ともに、ステップＳ１０２で入力される同一の入力信号に基づいて処理が行われる。
【００４６】
≪  第１データ及び第２データの取得例  ≫（ステップＳ１０５）
ステップＳ１０５では、照合システム３は、第１データ及び第２データを取得する。すなわち、図示する全体処理では、照合システム３は、ステップＳ１０３によって送信される第２データと、ステップＳ１０４によって送信される第１データとを受信して、それぞれのデータを取得する。
【００４７】
≪  異常の検知例  ≫（ステップＳ１０６）
ステップＳ１０６では、照合システム３は、第１データ及び第２データを照合して異常を検知する。具体的には、照合システム３は、第１データ及び第２データが同一であるか否かを判定する。上記の通り、ステップＳ１０３と、ステップＳ１０４とは、等価の処理であり、かつ、同一の入力信号を入力して行われる。そのため、運用システム１がサイバー攻撃等を受けていない場合等では、第２データは、改ざん等が行われていないため、第１データ及び第２データは、同一となる。したがって、第１データ及び第２データが同一であると、照合システム３は、照合結果として、異常がない状態、すなわち、運用システム１及び運用システム１が用いる機器が「正常」な状態であると判定する。
【００４８】
一方で、運用システム１が何らかのサイバー攻撃を受け、運用システム１上の何らかのプログラム、データ又は信号が改ざんされた場合には、処理結果となる第１データも改ざんによって変えられる場合がある。そのため、運用システム１がサイバー攻撃等を受けた場合等では、第２データは、サイバー攻撃による改ざん等により、第１データとは異なる結果を示すデータとなる。したがって、改ざん等があった場合には、第１データ及び第２データは、異なるデータとなる。ゆえに、第１データ及び第２データが同一でないと、照合システム３は、異常が発生している状態、すなわち、運用システム１又はフィールド機器等の運用システム１が用いる機器が「異常」な状態であると判定する。このようにして、照合システム３は、運用システム１又は運用システム１が用いる機器の異常を検知する。
【００４９】
≪  通知例  ≫（ステップＳ１０７）
ステップＳ１０７では、照合システム３は、ユーザＵＲに異常を通知する。例えば、ステップＳ１０７では、照合システム３は、ステップＳ１０６で運用システム１又は運用システム１が用いる機器の異常が検知されると、ユーザＵＲが操作している情報処理装置にメール等を送信したり、パトライト（登録商標）等を点灯させたり、又は、ブザー等の警報機を動作させたりして、ユーザＵＲに対して異常を検知したことを通知する。このように、通知がされると、ユーザＵＲは、運用システム１又は運用システム１が用いる機器において異常が発生していることを知ることができる。
（第２実施形態）
第２実施形態では、例えば、異常検知システム１０は、第１実施形態と同様の全体構成及びハードウェア構成である。第２実施形態は、第１実施形態と全体処理が異なる。第２実施形態では、例えば、異常検知システム１０は、以下のような全体処理を行う。
【００５０】
図４は、本発明の第２実施形態の一実施形態における異常検知システムによる全体処理の一例を示すシーケンス図である。図３と比較すると、図４には、ステップＳ２０１及びステップＳ２０２が加わる点が異なる。以下、異なる点を中心に説明し、重複する説明を省略する。
【００５１】
ステップＳ２０１及びステップＳ２０２は、ステップＳ１０４と同様の処理をステップＳ１０４とは別に行う。すなわち、ステップＳ２０１及びステップＳ２０２は、ステップＳ１０３と同一の入力信号に対して、ステップＳ１０３と同様の処理を行う。
【００５２】
例えば、図示するように、ステップＳ２０１、ステップＳ２０２及びステップＳ１０４は、並列に処理される。なお、図示する例では、ステップＳ２０１、ステップＳ２０２及びステップＳ１０４は、並列に処理しているが、ステップＳ２０１、ステップＳ２０２及びステップＳ１０４は、並列でなく、順に処理されてもよい。そして、ステップＳ２０１及びステップＳ２０２のそれぞれの処理結果を示すデータは、ステップＳ１０４と同様に、照合システム３に送信される。
【００５３】
つまり、仮想システム２は、ステップＳ１０４と同様の処理を冗長して行う。なお、冗長させる数は、図示するように、３つに限られない。すなわち、仮想システム２では、ステップＳ１０４と同様の処理は、複数であればよい。以下、ステップＳ１０４と同様の処理が行われる数を「処理数Ｎ」とする。具体的には、図３のように、冗長がない場合は、「処理数Ｎ＝１」とする。一方で、図４に示す場合は、「処理数Ｎ＝３」となる。
【００５４】
また、処理数によって、照合システム３に送信される第１データの数は、変化する。「処理数Ｎ」とすると、第１データ及び第２データは、以下のようになる。
【００５５】
図５は、本発明の第２実施形態の一実施形態における異常検知システムの全体構成の一例を示すシステム図である。図示するように、第２データＤ２は、運用システム１から、１つ照合システム３に送信される。一方で、Ｎ個の第１データが、仮想システム２から、照合システム３に送信される。図示する例では、第１データは、第１１データＤ１１、第１２データＤ１２、・・・・、第１ＮデータＤ１Ｎがそれぞれ送信される。
【００５６】
そして、照合システム３は、第２データと、複数の第１データとを取得すると（図４に示すステップＳ１０５）、第２データ及び複数の第１データに基づいて、照合を行う。例えば、以下のように、照合システム３は、照合を行う。
【００５７】
図６は、本発明の第２実施形態の一実施形態における異常検知システムによる照合の一例を示すフローチャートである。すなわち、図４に示すステップＳ１０６では、照合システム３は、図示する処理を行う。
【００５８】
≪  第１データが同一であるか否かの判断例  ≫（ステップＳ３０１）
ステップＳ３０１では、照合システムは、第１データが同一であるか否か判断する。図５に示すように、「処理数Ｎ」が２以上である場合には、第１データは、複数となる。そこで、照合システムは、同一のデータであるか否かを判定する。
【００５９】
具体的には、図５に示す例では、照合システムは、第１１データＤ１１と、第１２データＤ１２とが同一であるか否かを判定する。また、図５に示すように、第１データが多くある場合には、照合システムは、更に第１データの他の組み合わせで判定してもよい。
【００６０】
各第１データは、同一の入力信号及び同一の処理結果であるため、異常がない、つまり、仮想システムが「正常」な状態であれば、各第１データは、同一のデータとなる。一方で、仮想システムがサイバー攻撃を受けた場合には、第１データ等が改ざんされている場合がある。このように、仮想システムにおいてデータが改ざんされると、各第１データは、異なるデータとなる。そこで、ステップＳ３０１では、照合システムは、第１データが同一であるか否かを判断し、仮想システムの状態を判定する。
【００６１】
次に、第１データが同一であると照合システムが判断すると（ステップＳ３０１でＹＥＳ）、照合システムは、ステップＳ３０３に進む。一方で、第１データが同一でないと照合システムが判断すると（ステップＳ３０１でＮＯ）、照合システムは、ステップＳ３０２に進む。
【００６２】
≪  仮想システムの異常の検知例  ≫（ステップＳ３０２）
ステップＳ３０２では、照合システムは、仮想システムの異常を検知する。すなわち、ステップＳ３０２では、照合システムは、仮想システムがサイバー攻撃を受けた状態であると判定する。後段のステップＳ１０７（図４参照）によって、仮想システムが異常である等が通知されてもよい。
【００６３】
≪  第１データと第２データが同一であるか否かの判断例  ≫（ステップＳ３０３）
ステップＳ３０３では、照合システムは、第１データと第２データが同一であるか否か判断する。次に、第１データと第２データが同一であると照合システムが判断すると（ステップＳ３０３でＹＥＳ）、照合システムは、処理を終了する。すなわち、この場合は、「異常なし」と照合システムが判断する場合である。一方で、第１データと第２データが同一でないと照合システムが判断すると（ステップＳ３０３でＮＯ）、照合システムは、ステップＳ３０４に進む。
【００６４】
≪  運用システムの異常の検知例  ≫（ステップＳ３０４）
ステップＳ３０４では、照合システムは、仮想システムの異常を検知する。例えば、ステップＳ３０３及びステップＳ３０４は、第１実施形態のステップＳ１０６（図３参照）と同様の処理である。
【００６５】
以上のように、第１データを冗長して生成するようにすると、異常検知システムは、仮想システムの異常を検知することができる。
【００６６】
（変形例）
照合は、第１実施形態及び第２実施形態のように、データが同一であるか否かのみを判定する処理に限られない。例えば、照合は、所定時間、各データを蓄積して、それぞれのデータの時系列における傾向等が一致しているか否か等を判定してもよい。例えば、一方のデータが時間経過と共に増加していく値を示すのに対して、他方のデータが時間経過と共に減少していく値を示す場合には、各データの傾向が異なるため、照合システムは、異常と検知してもよい。
【００６７】
また、照合は、統計データを比較する処理でもよい。例えば、照合システムは、まず、所定時間、各データを蓄積する。そして、照合システムは、各データの平均値をそれぞれ計算する。次に、照合システムは、各データの平均値が一致するか否かを判定する。このように、平均値等の統計データを比較し、統計データが異なる場合には、照合システムは、異常と検知してもよい。
【００６８】
なお、統計データ又は傾向等を照合に用いる場合には、照合システムは、例えば、第１データと第２データの同一を判定する処理は、リアルタイム処理とし、一方で、統計データ又は傾向等を用いる処理は、バッチ処理としてもよい。
【００６９】
また、照合では、同一は、完全に各データが示す値が同じである場合に限られない。運用システムによる処理と、仮想システムによるシミュレーション等による処理とでは、誤差等が異なる場合がある。したがって、誤差等による違いを無視するため、同一の判定には、許容値等が設定されてもよい。なお、許容値は、あらかじめ設定されるとする。
【００７０】
さらに、第１データ及び第２データには、照合において、照合対象となる各データを特定できる通し番号等の特定データが付与されてもよい。なお、特定データは、いわゆるタイムスタンプ等でもよい。運用システムと、仮想システムでは、処理速度が異なる場合がある。したがって、同一のタイミングで、運用システム及び仮想システムに、それぞれ入力信号が入力されても、処理結果を示すそれぞれのデータが同一のタイミングで出力されるとは限らない。そのため、照合システムが、どのデータと、どのデータを照合すればよいかわからなくなる場合がある。そこで、入力信号において、通し番号等が、例えば、以下のように付与されると、照合システムは、照合対象となるデータの組み合わせが特定できる。
【００７１】
図７は、本発明の一実施形態における異常検知システムによる照合において用いられる通し番号の一例を示すタイミングチャートである。例えば、図示するように、入力信号ＳＩＰの入力があると、仮想システムは、入力信号ＳＩＰに基づいて第１データを生成し、第１データを照合システムに送信するため、仮想システムは、第１データを示す第１データ信号ＳＤ１を送信する。また、運用システムは、入力信号ＳＩＰに基づいて第２データを生成し、第２データを照合システムに送信するため、仮想システムは、第２データを示す第２データ信号ＳＤ２を送信する。
【００７２】
具体的には、この例では、入力信号ＳＩＰが示す「ＩＮ１」のデータに基づいて、運用システムは、処理を行って第２データである「ＯＴ２１」のデータを生成し、同様に、「ＩＮ１」のデータに基づいて、仮想システムは、運用システムと等価の処理結果を示す第１データである「ＯＴ１１」のデータを生成する。
【００７３】
図示するように、運用システムと、仮想システムとが等価の処理を行う場合であっても、各システムの処理速度又はネットワーク環境等によって、照合システムにデータが送信されるタイミングが異なる場合がある。図示する例は、各システムが「正常」な状態であれば、同一となる「ＯＴ２１」のデータが照合システムに送信されるタイミングと、「ＯＴ１１」のデータが照合システムに送信されるタイミングとに、時間ＴＥのずれが生じる場合の例である。このように、時間ＴＥ等のずれがあると、照合システムは、どの第１データと、第２データとを照合したらよいかわからない場合がある。
【００７４】
そこで、図示するように、通し番号ＳＮＭを示す信号が、各データと同じタイミングで付与されて送信されるようにする。このようにすると、時間ＴＥのずれが生じても、照合システムは、同一の通し番号ＳＮＭ同士の第１データと、第２データとを照合すればよいと判断できる。具体的には、通し番号ＳＮＭがともに「１」の第１データと、第２データとが照合されると、時間ＴＥのずれが生じても、「ＯＴ２１」と、「ＯＴ１１」とが照合システムによって照合される。このように、仮想システム及び運用システムは、通し番号ＳＮＭ等を示す特定データを付与して照合システムに各データを送信してもよい。
【００７５】
≪  ４．  異常検知システムの機能構成例  ≫
図８は、本発明の一実施形態における異常検知システムの機能構成の一例を示す機能ブロック図である。図示するように、例えば、異常検知システム１０では、仮想システム２は、入力部ＦＮ１と、データ生成部ＦＮ２とを含む。また、図示する例の異常検知システム１０では、運用システム１は、処理部ＦＮ３を含む。そして、図示する例の異常検知システム１０では、照合システム３は、取得部ＦＮ４と、検知部ＦＮ５と、通知部ＦＮ６とを含む。
【００７６】
入力部ＦＮ１は、運用システム１が有するフィールド機器１ＦＭから、フィールド機器１ＦＭによる計測結果を示す入力信号ＳＩＰを入力する。なお、入力部ＦＮ１は、例えば、電子回路等が有するインタフェース等によって実現される。
【００７７】
データ生成部ＦＮ２は、入力信号ＳＩＰに基づいて、運用システム１が有する処理部ＦＮ３と等価の処理を行い、その後、運用システム１による処理結果を示す第１データＤ１を生成する。なお、データ生成部ＦＮ２は、例えば、電子回路が有する演算装置等によって実現される。
【００７８】
処理部ＦＮ３は、入力信号ＳＩＰに基づいて、様々な処理を行い、第２データＤ２を生成する。なお、処理部ＦＮ３は、例えば、コントローラ１ＣＲ（図１参照）等によって実現される。
【００７９】
取得部ＦＮ４は、仮想システム２から、データ生成部ＦＮ２が生成する第１データＤ１と、運用システムから、処理部ＦＮ３が生成する第２データＤ２とを取得する。なお、取得部ＦＮ４は、例えば、ネットワークＩ／ＦＨＷ３（図２参照）又は入力Ｉ／ＦＨＷ４（図２参照）等によって実現される。
【００８０】
検知部ＦＮ５は、取得部ＦＮ４が取得する第１データＤ１及び第２データＤ２を照合して運用システム１又は運用システム１を用いるプラントの異常を検知する。なお、検知部ＦＮ５は、例えば、ＣＰＵＨＷ１（図２参照）等によって実現される。
【００８１】
通知部ＦＮ６は、検知部ＦＮ５が異常を検知すると、異常をユーザＵＲ等に通知する。なお、通知部ＦＮ６は、例えば、ネットワークＩ／ＦＨＷ３（図２参照）又は出力Ｉ／ＦＨＷ５（図２参照）等によって実現される。
【００８２】
仮想システム２があると、異常検知システム１０は、運用システム１と等価の処理結果を示す第１データＤ１を生成することができる。具体的には、仮想システム２は、入力部ＦＮ１によって、運用システム１が用いるのと同一の入力信号ＳＩＰをフィールド機器１ＦＭから入力することができる。
【００８３】
そして、仮想システム２は、データ生成部ＦＮ２によって、処理部ＦＮ３と等価の処理を行うことができる。そのため、仮想システム２は、運用システム１が「正常」な状態であれば、処理部ＦＮ３によって生成される第２データＤ２と、同一の処理結果を示す第１データＤ１を生成することができる。したがって、第１データＤ１と、第２データＤ２を照合システム３が照合すると、異常検知システム１０は、運用システム１又は運用システム１を用いるプラントの異常を検知することができる。
【００８４】
具体的には、照合システム３は、まず、取得部ＦＮ４によって、第１データＤ１と、第２データＤ２を取得する。次に、照合システム３は、検知部ＦＮ５によって、第１データＤ１と、第２データＤ２とを照合する。例えば、第１データＤ１と、第２データＤ２とが異なる場合であると、照合システム３は、運用システム１又は運用システム１を用いるプラントがサイバー攻撃によってデータの改ざん等を受けた「異常」な状態であると検知することができる。
【００８５】
比較例として、サイバー攻撃の対策は、例えば、ファイヤウォール（Ｆｉｒｅｗａｌｌ）の設置又はアンチウィルスソフトの導入等がある。このようにして、各システムの外部から不正にアクセスしたり、コンピュータウィルスを入れたり、不正侵入用に、いわゆるバックドアを生成したり又はシステムの管理者権限が奪われたりするのを防ぐ方法がある。特に、汎用ＯＳ又は汎用ネットワークが用いられると、セキュリティ上の脆弱性を利用して、サイバー攻撃がされる場合がある。このように、サイバー攻撃がされると、データが改ざんされたり、インストールされたプログラムが変えられたりする。
【００８６】
例えば、データが改ざんされた場合であっても、ユーザが監視していると、値の異常な変動等をユーザが察知して、サイバー攻撃を受けたこと等を発見できる場合がある。一方で、ユーザが監視に用いるビュワーソフトのプログラムまで改ざんされてしまうと、改ざんされた状態であることを示すプログラムが異なるデータを表示するため、ユーザが監視していても、悪意を持った者によるサイバー攻撃を受けたこと等を発見できる場合もある。
【００８７】
これに対して、本実施形態のように、各データが照合されると、監視に用いるビュワーソフトのプログラム等が改ざんされても、異常検知システム１０は、異常を検知することができる。
【００８８】
なお、仮想システムと、運用システムとは異なる装置で実現されるのが望ましい。すなわち、仮想システムと、運用システムとは、物理的に別々の装置であるのが望ましい。同一の装置によって仮想システムと、運用システムとが実現されると、例えば、装置に、サイバー攻撃を受ける可能性が高いセキュリティ上の脆弱性があると、双方のシステムが共に改ざんされてしまう可能性が高くなる。一方で、仮想システムと、運用システムとは、物理的に別々の装置であると、それぞれ異なる構成であるため、直ぐに双方とも改ざんされてしまう可能性を低くすることができる。
【００８９】
なお、本発明の一実施形態に係る各処理の全部又は一部は、低水準言語、高水準言語又はこれらを組み合わせて記述されるコンピュータに、異常検知方法を実行させるためのプログラムによって実現されてもよい。すなわち、プログラムは、情報処理装置等のコンピュータに各処理の全部又は一部を実行させるためのコンピュータプログラムである。
【００９０】
また、プログラムは、コンピュータが読み取り可能な記録媒体に格納して頒布することができる。なお、記録媒体は、フラッシュメモリ、フレキシブルディスク、ＣＤ−ＲＯＭ若しくはブルーレイディスク等の光ディスク、ＳＤ（登録商標）カード、補助記憶装置又はＭＯ等でもよい。さらにまた、プログラムは、電気通信回線を通じて頒布することができる。
【００９１】
さらに、本発明の一実施形態に係る各処理の全部又は一部は、１以上の情報処理装置を有する情報処理システムによって、処理の全部又は一部が並行、分散、冗長又はこれらの組み合わせで処理されてもよい。
【００９２】
また、本発明の一実施形態に係る各処理は、図示した順序に限られない。例えば、各処理の一部又は全部は、異なる順序、並行、分散又は省略されて処理されてもよい。
【００９３】
以上、本発明の好ましい実施例について詳述したが、本発明は、上述の実施形態に限定されず、特許請求の範囲に記載された本発明の要旨の範囲内において、種々の変形又は変更が可能である。
【符号の説明】
【００９４】
１０  異常検知システム
１  運用システム
２  仮想システム
３  照合システム
ＦＮ１  入力部
ＦＮ２  データ生成部
ＦＮ３  処理部
ＦＮ４  取得部
ＦＮ５  検知部
ＦＮ６  通知部
Ｄ１  第１データ
Ｄ２  第２データ
ＳＩＰ  入力信号
１ＦＭ  フィールド機器
【図１】
2018018325.tif 000003
【図２】
2018018325.tif 000004
【図３】
2018018325.tif 000005
【図４】
2018018325.tif 000006
【図５】
2018018325.tif 000007
【図６】
2018018325.tif 000008
【図７】
2018018325.tif 000009
【図８】
2018018325.tif 000010