(57)【要約】【課題】改ざんされていないことが保証されたプログラムを用いて、プラントを監視するプラント監視システム等を提供する。【解決手段】プラント監視システムは、プラントの状態監視情報群の少なくとも一部を所定の情報処理装置へ送信するプログラムが予め複数の記録装置に分散記録された複数の分散型記録部と、前記状態監視情報を逐次取得するとともに、取得した前記状態監視情報が予め規定されたプログラム実行条件を満たしたか否かを判定する判定部と、前記プログラム実行条件を満たした場合に、当該プログラム実行条件に対応する前記プログラムの実行要求を、前記分散型記録部に出力する実行要求出力部と、を備え、前記分散型記録部の各々は、前記実行要求が出力された場合に、当該実行要求で指定された前記プログラムを読み出して実行するプログラム実行処理部を有することを特徴とする。【選択図】図１
2018173794.tif 000002
【特許請求の範囲】
【請求項１】
プラントの監視を行うプラント監視システムであって、
プラントの状態監視情報群の少なくとも一部を所定の情報処理装置へ送信するプログラムが予め複数の記録装置に分散記録された複数の分散型記録部と、
前記状態監視情報を逐次取得するとともに、取得した前記状態監視情報が予め規定されたプログラム実行条件を満たしたか否かを判定する判定部と、
前記プログラム実行条件を満たした場合に、当該プログラム実行条件に対応する前記プログラムの実行要求を、前記分散型記録部に出力する実行要求出力部と、
を備え、
前記分散型記録部の各々は、
前記実行要求が出力された場合に、当該実行要求で指定された前記プログラムを読み出して実行するプログラム実行処理部を有することを特徴とするプラント監視システム。
【請求項２】
プラントの運転支援を行うプラント運転支援システムであって、
プラントに関する運転支援情報を出力するためのプログラムが予め複数の記録装置に分散記録された複数の分散型記録部と、
前記プログラムの実行要求を受け付けた場合に、当該実行要求を前記分散型記録部に出力する実行要求出力部と、
を備え、
前記分散型記録部の各々は、
当該実行要求で指定された前記プログラムを実行することについて、該プログラムの提供者との間で定められた所定の合意条件が満たされているか否かを判定する合意判定処理部と、
前記合意条件が満たされている場合に、指定された前記プログラムを実行するプログラム実行処理部と、
前記実行要求に従って前記プログラムが実行された場合に、当該プログラムが実行されたことを示す実行履歴情報を分散記録する実行履歴記録処理部と、
を有することを特徴とするプラント運転支援システム。
【請求項３】
前記プログラム実行処理部は、分散記録された複数のプログラムの各々を実行するとともに、各プログラムの実行によって得られた演算値どうしを比較し、その比較結果に応じて前記演算値を出力するか否かを判定することを特徴とする請求項２に記載のプラント運転支援システム。
【請求項４】
前記分散型記録部が、受け付けた前記実行要求の承認結果を各前記分散型記録部に出力する承認部を備え、
前記合意判定部が、前記承認部によって出力された承認結果に基づき、所定の合意条件が満たされているか否かを判定することを特徴とする請求項２又は請求項３に記載のプラント運転支援システム。
【請求項５】
前記分散型記録部に、前記プログラムの実行に伴い増減する通貨代替情報が記録されていることを特徴とする請求項２ないし請求項４のいずれか１項に記載のプラント運転支援システム。
【請求項６】
前記所定の合意条件が、前記実行要求がなされたときから一定期間前以降の時期に、所定の情報を共有したか否かという条件を含んでいることを特徴とする請求項２ないし請求項５のいずれか１項に記載のプラント運転支援システム。
【請求項７】
前記分散型記録部に記録された前記プログラムが暗号化されており、
前記合意条件が満たされた際に前記プログラムの提供者から、各前記分散型記録部に対して、暗号を解く鍵が出力される暗号鍵出力部を備えることを特徴とする請求項２ないし請求項６のいずれか１項に記載のプラント運転支援システム。
【請求項８】
プラントの監視を行うプラント監視方法であって、
プラントの状態監視情報群の少なくとも一部を所定の情報処理装置へ送信するプログラムを予め複数の記録装置に分散記録する分散型記録ステップと、
前記状態監視情報を逐次取得するとともに、取得した前記状態監視情報が予め規定されたプログラム実行条件を満たしたか否かを判定する判定ステップと、
前記プログラム実行条件を満たした場合、当該プログラム実行条件に対応する前記プログラムの実行要求を、前記記録装置の各々に、出力する実行要求出力ステップと、
前記実行要求が出力された場合に、前記記録装置の各々が当該実行要求で指定された前記プログラムを読み出して実行するプログラム実行処理ステップと、
を有することを特徴とするプラント監視方法。
【請求項９】
プラントの監視を行うプラント監視システムのコンピュータを、
プラントの状態監視情報群の少なくとも一部を所定の情報処理装置へ送信するプログラムを予め複数の記録装置に分散記録する分散型記録手段と、
前記状態監視情報を逐次取得するとともに、取得した前記状態監視情報が予め規定されたプログラム実行条件を満たしたか否かを判定する判定手段と、
前記プログラム実行条件を満たした場合、当該プログラム実行条件に対応する前記プログラムの実行要求を、前記記録装置の各々に、出力する実行要求出力手段と、
前記実行要求が出力された場合に、前記記録装置の各々が当該実行要求で指定された前記プログラムを読み出して実行するプログラム実行処理手段として機能させることを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、プラント監視システム、プラント運転支援システム、プラント監視方法、及びプログラムに関する発明である。
【背景技術】
【０００２】
一般に、プラント等においてトラブルが生じた場合、プラント設備の供給者（以下、「供給者」という）とプラント設備の利用者（以下、「ユーザ」という）によって情報共有が行われ、各種の対処法が取られることとなる。また、トラブル等が生じない場合であっても、新たにデータを取得した場合等に、供給者とユーザ等で各種の情報共有を行うことがある。
【０００３】
このような場合において、ユーザはプラント設備を利用により得られた各種のデータを供給者に提示し、供給者とユーザと協議検討のうえ、両者において予め合意しておいたプログラム等を実行して対処することがある。
なお、特許文献１には、プログラムを自動実行する技術について開示されている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００４−２１６５８号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
ところで、特定のトラブル等が生じた際に、あるプログラムを自動的に実行することを予め合意する場合、その後に当該プログラムが改ざんされないことが重要となる。改ざん防止が十分に担保されていなければ、当該プログラムを実行することに危険が伴うからである。
【０００６】
しかしながら、従来、プログラムの自動実行技術について、改ざんされていないことを保証する機能を持つものは提供されてこなかった。
【０００７】
本発明は、上記課題に鑑みてなされた発明であり、改ざんされていないことが保証されたプログラムを用いて、プラントを監視するプラント監視システム等を提供することを目的としている。
【課題を解決するための手段】
【０００８】
そこで、上記課題を解決するため、本発明は以下の構成を採用した。
本発明のプラント監視システムは、プラントの監視を行うプラント監視システムであって、プラントの状態監視情報群の少なくとも一部を所定の情報処理装置へ送信するプログラムが予め複数の記録装置に分散記録された分散型記録部と、前記状態監視情報を逐次取得するとともに、取得した前記状態監視情報が予め規定されたプログラム実行条件を満たしたか否かを判定する判定部と、前記プログラム実行条件を満たした場合に、当該プログラム実行条件に対応する前記プログラムの実行要求を、前記分散型記録部に出力する実行要求出力部と、を備え、前記分散型記録部は、前記実行要求が出力された場合に、当該実行要求で指定された前記プログラムを読み出して実行するプログラム実行処理部を有することを特徴とする。
【０００９】
また、本発明のプラント運転支援システムは、プラントの運転支援を行うプラント運転支援システムであって、プラントに関する運転支援情報を出力するためのプログラムが予め複数の記録装置に分散記録された分散型記録部と、前記プログラムの実行要求を受け付けた場合に、当該実行要求を前記分散型記録部に出力する実行要求出力部と、を備え、前記分散型記録部は、当該実行要求で指定された前記プログラムを実行することについて、該プログラムの提供者との間で定められた所定の合意条件が満たされているか否かを判定する合意判定処理部と、前記合意条件が満たされている場合に、指定された前記プログラムを実行するプログラム実行処理部と、前記実行要求に従って前記プログラムが実行された場合に、当該プログラムが実行されたことを示す実行履歴情報を分散記録する実行履歴記録処理部と、を有することを特徴とする。
【００１０】
また、本発明のプラント運転支援システムは、前記プログラム実行処理部は、分散記録された複数のプログラムの各々を実行するとともに、各プログラムの実行によって得られた演算値どうしを比較し、その比較結果に応じて前記演算値を出力するか否かを判定することを特徴とする。
【００１１】
また、本発明のプラント運転支援システムは、前記分散型記録部が、受け付けた前記実行要求の承認結果を各前記分散型記録部に出力する承認部を備え、前記合意判定部が、前記承認部によって出力された承認結果に基づき、所定の合意条件が満たされているか否かを判定することを特徴とする。
【００１２】
また、本発明のプラント運転支援システムは、前記分散型記録部に、前記プログラムの実行に伴い増減する通貨代替情報が記録されていることを特徴とする。
【００１３】
また、本発明のプラント運転支援システムは、前記所定の合意条件が、前記実行要求がなされたときから一定期間前以降の時期に、所定の情報を共有したか否かという条件を含んでいることを特徴とする。
【００１４】
また、本発明のプラント運転支援システムは、前記分散型記録部に記録された前記プログラムが暗号化されており、前記合意条件が満たされた際に前記プログラムの提供者から、各前記分散型記録部に対して、暗号を解く鍵が出力される暗号鍵出力部を備えることを特徴とする。
【００１５】
また、本発明のプラント監視方法は、プラントの状態監視情報群の少なくとも一部を所定の情報処理装置へ送信するプログラムを予め複数の記録装置に分散記録する分散型記録ステップと、前記状態監視情報を逐次取得するとともに、取得した前記状態監視情報が予め規定されたプログラム実行条件を満たしたか否かを判定する判定ステップと、前記プログラム実行条件を満たした場合に、当該プログラム実行条件に対応する前記プログラムの実行要求を、前記分散型記録部に出力する実行要求出力ステップと、前記実行要求が出力された場合に、当該実行要求で指定された前記プログラムを読み出して実行するプログラム実行処理ステップと、を有することを特徴とする。
【００１６】
また、本発明のプログラムは、プラントの監視を行うプラント監視システムのコンピュータを、プラントの状態監視情報群の少なくとも一部を所定の情報処理装置へ送信するプログラムを予め複数の記録装置に分散記録する分散型記録手段と、前記状態監視情報を逐次取得するとともに、取得した前記状態監視情報が予め規定されたプログラム実行条件を満たしたか否かを判定する判定手段と、前記プログラム実行条件を満たした場合に、当該プログラム実行条件に対応する前記プログラムの実行要求を、前記分散型記録部に出力する実行要求出力手段と、前記実行要求が出力された場合に、当該実行要求で指定された前記プログラムを読み出して実行するプログラム実行処理手段として機能させることを特徴とする。
【発明の効果】
【００１７】
本発明のプラント監視システムによれば、改ざんされていないことが保証されたプログラムを用いて、プラントを監視することができる。
【図面の簡単な説明】
【００１８】
【図１】図１は、本発明の第１の実施形態のプラント監視システムを示す図である。
【図２】図２は、本発明の第１の実施形態のプラント監視システムの一部を示す図である。
【図３】図３は、本発明の第１の実施形態のプラント監視システムの一部を示す図である。
【図４】図４は、本発明の第１の実施形態のプラント監視方法のフローチャートである。
【図５】図５は、本発明の第１の実施形態のプラント監視方法のフローチャートである。
【図６】図６は、本発明の第２の実施形態のプラント運転支援システムを示す図である。
【図７】図７は、本発明の第２の実施形態のプラント運転支援システムの一部を示す図である。
【図８】図８は、本発明の第２の実施形態のプラント運転支援方法のフローチャートである。
【図９】図９は、本発明の第２の実施形態のプラント運転支援方法のフローチャートである。
【図１０】図１０は、本発明の第３の実施形態のプラント運転支援システムを示す図である。
【図１１】図１１は、本発明の第３の実施形態のプラント運転支援システムの一部を示す図である。
【図１２】図１２は、本発明の第３の実施形態のプラント運転支援方法のフローチャートである。
【発明を実施するための形態】
【００１９】
［第１の実施形態］
以下、本発明に係るプラント監視システム及びプラント監視方法の第１の実施形態について、図１〜図５を参照して説明を行う。
【００２０】
＜プラント監視システム＞
本実施形態のプラント監視システム１は、図１に示すように、演算装置２に設けられた分散型記録部３と、判定部４と、実行要求出力部５と、情報処理装置６とを備えている。
【００２１】
分散型記録部３は、複数の演算装置２にそれぞれ設けられており、複数の分散型記録部３の各々をノードとして一つの記憶システムが構成されている。分散型記録部３は、プラント提供者の演算装置２ａ、及びプラントユーザの演算装置２ｂのそれぞれに記録されている。なお、演算装置２には図示略のユーザからの入力を受け付ける入力装置や、各種の情報を表示する出力する表示装置が備えられている。ここで、演算装置２は記録装置の一例である。
【００２２】
また、分散型記録部３には、図２に示すように、データベース７と、プログラム実行処理部８と、承認部９と、合意判定部１０と、記録要求部１１が設けられている。
【００２３】
分散型記録部３のデータベース７に記録されているブロック状のデータには、図３に示すように、各種の情報を記録することができる。例えば、プラント提供者とプラントのユーザが予め合意して作成されたプログラムや、実行要求出力部によって出力された実行要求、承認部によって出力された承認結果、プログラム実行処理部によって実施されたプログラムの実行結果等、種々のものを記録することができる。
また、データベース７に記録されているブロックは、チェーン状に繋がっている。なお、図３には、５つのブロックがチェーン状に繋がっている様子が描かれている。
【００２４】
プラント提供者とプラントのユーザが予め合意して作成されたプログラムとは、例えば、所定の条件が生じた際に、プラントの状態監視情報群の一部を、プラント提供者の情報処理装置６に提供するプログラム等が考えられる。状態監視情報としては、例えば配管温度、圧力、弁開度等のセンサ観測値などである。
【００２５】
各ブロックは、特に意味のある情報のみをまとめたブロックである必要はない。例えば、あるプログラムと、別のプログラムによって実行された実行結果等が同じブロックに保存されていても構わない。
【００２６】
但し、各ブロックは、直前にデータベース７に登録されたブロックのハッシュ値も併せて含ませるようにする。
ハッシュ値とは、元になるデータから一定の計算手順によって求められた規則性のない値であり、同じデータからは必ず同じハッシュ値が得られるが、異なるデータからは必ず異なるハッシュ値が得られるという特性がある。
【００２７】
このように、各ブロックに一つ前のブロックのハッシュ値を含ませることで、過去のブロックのハッシュ値のつながりをチェックすることにより、ブロックに含まれるデータ（プログラムを含む）の非改ざんを証明することができる。例えば、あるブロックについて改ざんをすると、そのブロックのハッシュ値は異なる値となり、その直後のブロックに保存されているハッシュ値と整合しなくなるので、改ざんを容易に検知することができ、逆に各ブロックに保存されているハッシュ値がそれぞれ一つ前のブロックから演算して求められるハッシュ値と一致している限り、改ざんがなされていないことの証明となる。
【００２８】
プログラム実行処理部８は、実行要求出力部５によって出力された実行要求によって指定されたプログラムを、読み出して実行する機能部である。実行要求出力部５は特定のプログラムをプログラムＩＤによって特定して実行要求をするので、プログラム実行処理部８は、プログラムＩＤをもとに、当該プログラムが記録されているデータベース７上のブロックのアドレス値を取得し、当該アドレス値を基に、データベース７からプログラムを読みだして実行する。なお、詳細については後述する。
【００２９】
承認部９は、実行要求出力部５によって出力された実行要求や、記録要求部１１によって出力された記録要求について、所望の要件を満たすか否かを判定し、承認結果を各分散型記録部３に出力する機能部である。
この所望の条件は、実行要求の内容次第で要件を変えても構わないし、ユーザによる入力を受け付けることを条件としても構わない。
【００３０】
合意判定部１０は、予め定められた所定の合意条件が満たされるか否かを判定する機能部である。 
合意条件としては、例えば、承認部９から出力される承認する旨の承認結果の数が、演算装置２の合計数の所定割合に達したか否か、より具体的には３分の２以上の数に達したか否かといった条件とすることもできる。
【００３１】
記録要求部１１は、各分散型記録部３に対して、特定の情報をデータベース７に記録することを内容とする記録要求を出力する機能部である。
【００３２】
判定部４は、状態監視情報を逐次取得するセンサを備え、取得した状態監視情報が、所定のプログラム実行条件を満たしたか否かを判定する機能部である。このプログラム実行条件は、予めプラント提供者とプラントのユーザの合意によって定められる条件である。
【００３３】
実行要求出力部５は、プログラム実行条件を満たした場合に、プログラムの実行要求を、各分散型記録部３に対して出力する機能部である。
判定部４と実行要求出力部５は、プラントのユーザ側に設けられていることを念頭においているが、必ずしもこのような態様に限られない。
【００３４】
情報処理装置６は、プログラム実行処理部８によって実行されたプログラムによって、プラント提供者側に送信された状態監視情報を受け付ける装置である。なお、本実施形態では、情報処理装置６と演算装置２を分けて説明したが、プラント提供者側の演算装置２ａがこの情報処理装置６を兼ねても構わない。
【００３５】
＜プラント監視方法＞
次に、上述したプラント監視システムを用いたプラント監視方法について説明する。まず、プログラムの実行の段階の監視方法ではなく、プログラムの登録及びプログラムの更新の段階の監視方法について説明する。
【００３６】
（ステップＳ１）
まず、図４に示すように、本実施形態のプラント監視方法では、予め、プラント提供者とプラントのユーザとの間において、プログラム及びこれに対応したプログラム実行条件について合意し、プログラムを作成する。
ここでいうプログラムは、プラントの状態監視情報群を、プラント提供者側の情報処理装置６に送信するという内容のものである。
例えば、配管温度をプラント提供者に送信するといったプログラムであり、この場合、配管温度が一定温度以上になるという条件をプログラム実行条件として予め合意したりする。
【００３７】
（ステップＳ２）
次に、プログラム提供者の操作により、記録要求部１１が各分散型記録部３に対して、当該プログラムを記録するよう求める記録要求を出力する。
【００３８】
（ステップＳ３）
次に、演算装置２の操作者からの入力を待って、承認部９は、記録要求部１１によって出力された記録要求が所望の要件を満たすか否かの承認結果を各分散型記録部３に出力する。
【００３９】
（ステップＳ４）
次に、合意判定部が、ステップＳ３にて各承認部９から出力された記録要求を承認する旨の出力数が、全演算装置２の３分の２以上の数に達したか否かを判定する。なお、３分の２という割合は例示にすぎず、他の割合としても構わず、例えば過半数の承認であっても構わない。
３分の２以上に達しなかった場合は、プログラムはデータベースに記憶されず、処理は終了する。
【００４０】
（ステップＳ５）
ステップＳ４での判定の結果、全演算装置２の３分の２以上の数に達した場合は、各分散型記録部３のデータベース７に、プログラムがブロックとして記録される。なお、このブロックには、このプログラムの他に、少なくとも直前のブロックのハッシュ値が含まれており、他の各種の情報が含まれていても構わない。
また、本ステップでは、プログラムが登録されたブロックのアドレス値（データベース７上の位置を示す値）も取得する。そして、当該プログラムを識別するプログラムＩＤと対応付けてアドレス値が、別途、データベース７に記憶される。
【００４１】
以上述べたとおり、本実施形態では、各種情報がブロックごとに保存され、当該ブロックがハッシュ値をもとに連続的にチェーン状に繋がって保存されているデータベース７に、プログラムが保存されている。
この結果、このプログラムについて、改ざんを防止することができる。
【００４２】
また、本実施形態では、プログラムをデータベース７に保存する際、又はプログラムを更新する際に、全演算装置２の３分の２以上の同意を必要としている。
この結果、例えば、演算装置２をプラント提供者及びプラントのユーザで、それぞれ半分の数を保有している場合、３分の２以上の同意を要求すれば、どちらか単独でプログラムを登録したり、更新したりすることができなくなる。なお、３分の２という数値は例示であって、適宜、所望の値に変更できる。
これにより、プラント提供者及びプラントのユーザ双方とも、自らが認識していない自動実行プログラムが保存されることを防止することができる。
【００４３】
なお、本実施形態では、一度登録されたブロックの内容を改変することはできないことから、登録されたプログラムを更新する場合は、別途新たに更新したプログラムについて、上記ステップＳ１〜Ｓ５を経て、新しいブロックに登録することとなる。すなわち、データベース７には、更新前の古いプログラムと、更新後の新しいプログラムの２種類のプログラムが記憶されることとなる。
したがって、プログラムを実行する段階では、更新前の古いプログラムが保存されているブロックのアドレス値ではなく、更新後の新しいプログラムが保存されているブロックのアドレス値を基に、プログラムを特定して実行することとなる。
【００４４】
（ステップＳ１１）
次に、プログラムの実行の段階の監視方法について説明する。
まず、図５に示すように、判定部４が、所定のプログラム実行条件を満たしたか否か判定する。この判定は、例えば、判定部４に備わっている温度センサの値をもとに行う。
なお、この判定は、判定部４に備わっているセンサで常時監視することにより、自動的に行われるようにし、人の介在を不要とするのが好ましい。
プログラム実行条件を満たしていない場合は、このステップを繰り返す。
【００４５】
（ステップＳ１２）
次に、ステップＳ１１での判定の結果、プログラム実行条件を満たした場合は、実行要求出力部５が、プログラムの実行要求を各分散型記録部３に対して出力する。なお、プログラム実行要求出力部５は、プログラムＩＤを指定することで、プログラムを特定してプログラムの実行要求をする。
【００４６】
（ステップＳ１３）
次に、承認部９は、実行要求出力部５から出力されたプログラムの実行要求に対して、承認するか否かを判定し、承認結果を出力する。なお、この際、人の介在を不要とすることが好ましく、判定条件としては、例えば実行要求出力部５からのプログラムの実行要求か否か等を条件とすることが考えられる。
【００４７】
（ステップＳ１４）
次に、合意判定部１０が、ステップＳ１３にて各承認部９から出力されたプログラムの実行要求を承認する旨の出力数が、全演算装置２の３分の２以上の数に達したか否かを判定する。なお、３分の２という数値は例示であって、適宜、所望の値に変更できる。  
３分の２以上に達しなかった場合は、プログラムは実行されず、処理は終了する。
【００４８】
（ステップＳ１５）
ステップＳ１４での判定の結果、全演算装置２の３分の２以上の数に達した場合は、プログラム実行処理部８は、実行要求出力部５によって出力されたプログラムの実行要求によって指定されたプログラムを、読みだして実行する。
具体的には、データベース７には、データベース７に保存されている各プログラムについて、プログラムＩＤとアドレス値が対応して記録されているので、プログラム実行処理部８は、実行要求出力部５によって出力されたプログラムＩＤをもとに、当該プログラムのアドレス値を取得する。そして、プログラム実行処理部８は、このアドレス値をもとに、当該プログラムが記録されているブロックを特定し、当該プログラムを読み出して、実行する。
【００４９】
（ステップＳ１６）
次に、プログラム実行処理部８によって実行されたプログラムによって、状態監視情報が情報処理装置６に送信される。例えば、配管温度が、情報処理装置６に送信されたりする。
【００５０】
（ステップＳ１７）
次に、各プログラム実行処理部８は、プログラムの実行結果を、他の分散型記録部２に対して出力する。
【００５１】
（ステップＳ１８）
次に、各プログラム実行処理部８は、ステップＳ１７で受け付けた実行結果が、全て等しいものか否かを判定する。
【００５２】
（ステップＳ１９）
ステップＳ１８での判定の結果、他の分散型記録部２から受け付けた実行結果の中に、異なる実行結果があった場合は、プログラム実行処理部８は、実行エラーがあった旨を各分散型記録部２に対して出力する。
この場合は、一つでも異なる実行結果が存在する以上、全ての分散型記録部２のプログラム実行処理部８でのプログラムの実行を停止し、終了する。
なお、ステップＳ１８及び本ステップに代えて、ステップＳ１７で受け付けた実行結果のうち、所定の割合以上で合致する実行結果が存在する場合には、その実行結果を信用して、次にのステップＳ２０へ進むように制御しても構わない。所定の割合としては、例えば、３分の２等を例示することができる。
【００５３】
（ステップＳ２０）
ステップＳ１８での判定の結果、全ての実行結果が等しい場合は、記録要求部１１は、各分散型記録部２に対して、この実行結果をデータベース７に記録するよう記録要求の出力をする。
【００５４】
（ステップＳ２１）
次に、承認部９は、記録要求部１１によって出力された記録要求が所望の要件を満たすか否かの承認結果を各分散型記録部３に出力する。所望の要件としては、例えば、記録要求部１１からの記録要求であるか否かを確認する等、形式的な要件とすることが考えられる。
【００５５】
（ステップＳ２２）
次に、合意判定部１０が、ステップＳ２１にて各承認部９から出力された記録要求を承認する旨の出力数が、全演算装置２の３分の２以上の数に達したか否かを判定する。
３分の２以上に達しなかった場合は、実行結果はデータベース７に記憶されず、処理は終了する。なお、３分の２という数値は例示であって、適宜、所望の値に変更できる。  
【００５６】
（ステップＳ２３）
ステップＳ２２での判定の結果、全演算装置２の３分の２以上の数に達した場合は、各分散型記録部３のデータベース７に、実行結果がブロックとして記録され、処理が終了する。
【００５７】
本実施形態では、判定部４が、所定のプログラム実行条件を満たしたか否かを判定してから、プログラムが実行されるまで、人の判断が介在しておらず、円滑にプログラムを実行することができる。
これにより、従来、トラブルが生じた際に、プラント提供者とプラントのユーザとの間で行われていた協議等の時間を省略することができ、コストダウンを図れるだけでなく、迅速にトラブルを解消することができプラントのシステムダウンの時間を短くすることができる。
【００５８】
［第２の実施形態］
次に、本発明の第２の実施形態であるプラント運転支援システム２１及びプラント運転支援方法について説明する。
なお、第１の実施形態と同様の部分については、適宜説明を省略する。
【００５９】
＜プラント運転支援システム＞
本実施形態のプラント運転システムは、第１の実施形態のプラント監視システムとは異なり、演算装置２２に設けられた分散型記録部２３と、実行要求出力部２４と、通信監視部２５と、暗号鍵通知部２６から構成されている。
【００６０】
分散型記録部２３には、図７に示すように、データベース２７と、プログラム実行処理部２８と、承認部２９と、合意判定部３０と、実行履歴処理部３１と、を備えている。
承認部２９と、合意判定部３０については、第１の実施形態と同様なので説明を省略する。データベース２７は、第１の実施形態と同様に、データがブロック毎に保存されており、このブロックがチェーン状に繋がっている。
本実施形態のブロックには、各種の情報を記録できるが、少なくともデータについては、データそのものが保存されているのではなく、データのハッシュ値が保存されている。
【００６１】
また、本実施形態のデータベース２７には、プラントに関する運転支援情報を出力するためのプログラムも保存されている。運転支援情報としては、例えば、電力需要予測、運転分析、故障診断などに関する情報が挙げられる。
【００６２】
また、このプラントに関する運転支援情報を出力するためのプログラムは、利用者にとって十分有用な運転支援情報を出力できるフルサービスプログラムと、限定的な運転支援情報しか出力できない限定サービスプログラムとが保存されている。フルサービスプログラムとしては、故障診断結果を出力するプログラム等が例示でき、限定サービスプログラムとしては、単にデータの平均値、分散値等を出力するプログラム等が例示できる。
また、本実施形態においてデータベース２７に記憶されているプログラムは、プログラム提供者によって暗号化されている。
【００６３】
実行要求出力部２４は、プラントのユーザである操作者からの入力を受け付ける入力部３２を備えている。また、実行要求出力部３２は、操作者からのプラントに関する運転支援情報を出力するためのプログラムを実行したいとの実行要求を受け付けた場合、当該実行要求を分散型記録部２３に出力する機能部でもある。
【００６４】
通信監視部２５は、各演算装置２２に設けられた分散型記録部２３が、他の分散型記録部２３と通信可能か否かを監視する機能部である。
【００６５】
＜プラント運転支援方法＞
（ステップＳ３１）
次に、本実施形態のプラント運転支援システム２１を用いたプラント運転支援方法について説明する。
まず、図８に示すように、プラントのユーザが、入力部３２を操作して、実行要求出力部に対して、所望のプログラムの実行を要求する。
そして、この実行要求を受け付けた場合に、実行要求出力部２４は、分散型記録部２３に対して実行要求を出力する。
【００６６】
（ステップＳ３２）
次に、ステップＳ１で実行要求出力部２４が要求したプログラムが、フルサービスプログラムか否かを判定する。
【００６７】
（ステップＳ３３）
ステップＳ３２の判定の結果、フルサービスプログラムではなく限定サービスプログラムであった場合は、プログラム実行処理部２８は、ステップＳ３１でなされた実行要求に従って、プログラムを実行して処理を終了する。
【００６８】
（ステップＳ３４）
ステップＳ３２の判定の結果、フルサービスプログラムであった場合は、次に、通信監視部２５によってプラント提供者とプラントのユーザが通信可能な状態か否かを判別する。
通信可能であれば、ステップＳ３５に進み、通信不可能な状態であれば、処理を終了しフルサービスプログラムが実行されることはない。
【００６９】
（ステップＳ３５）
次に、合意判定処理部３０が、プログラムを実行することについて、所定の合意条件を満たしたか否かを判定する。
この所定の合意条件は、プラント提供者とプラントのユーザとの間で予め定められている条件である。例えば、プラント提供者が承認をしたか否かといった条件や、料金を支払ったか否かといった条件や、保有するプラント情報を提供しているか否かといった条件が考えられる。
【００７０】
プラント提供者が承認をしたか否かを判別するためには、例えば、実行要求出力部２４が出力した実行要求に対する、承認部２９による承認結果の出力数で判定することが考えられる。
仮に、プラント提供者側の演算装置２２ａと、プラントのユーザ側の演算装置２２ｂが同数であった場合、承認部２９による承認結果が、全演算装置２２の３分の２以上の数に達すことという条件とすれば、少なくともプラント提供者側の誰かが承認しなければ、所定の合意条件を満たさないこととなる。
【００７１】
プラントのユーザが、プラント提供者に対して料金を支払ったか否かを判別するためには、例えば、データベース２７に仮想通貨（通貨代替情報）を記録して処理する方法が考えられる。
【００７２】
具体的には、図９に示すように、プラントのユーザがプラント提供者に対して、実際に料金を払って仮想通貨を購入する（ステップＳ４１）。そして、その仮想通貨をデータベース２７に記録するには、プラント提供者の承認が必要となるようにし、プラント提供者の承認を得てデータベース２７に登録する（ステップＳ４２）。
そして、プログラムの実行要求に対する所定の合意条件として、データベース２７にプラントのユーザが仮想通貨を保有していることを条件とし、仮想通貨を保有しているか否かを判定する（ステップＳ４３）。そして、実際にプログラムを実行するにあたって、自動的に記録されている仮想通貨を減少するようにする（ステップＳ４４）。
このようにすることで、プラントのユーザが、プラント提供者に対して料金を支払ったか否かを判別することができる。
【００７３】
また、保有するプラント情報を提供しているか否かを判別するためには、例えば、データベース２７に、当該データが保存されているか否かを判別するようにしても構わない。具体的には、実行要求出力部２４による実行要求がなされたときから、一定期間前以降の時期に、データが保存されたか否かを判別することが考えられる。
【００７４】
（ステップＳ３６）
ステップＳ３５の結果、所定の合意条件を満たした場合は、暗号鍵通知部２６が、各分散型記録部２３に対して暗号鍵を通知する。
なお、ステップＳ３５の結果、所定の合意条件を満たしていない場合は、処理を終了する。
【００７５】
（ステップＳ３７）
次に、暗号鍵の通知を受けた場合は、プログラム実行処理部２８は、実行要求に従ってフルサービスプログラムを実行する。
【００７６】
（ステップＳ３８）
次に、実行履歴処理部３１は、プログラムが実行されたことを示す実行履歴情報をデータベース２７に記録して処理を終了する。
実行履歴情報としては、例えば、プログラムを実行した実行結果のハッシュ値などを挙げることができる。
【００７７】
本実施形態では、プログラムが実行されるたびに、分散型記録部２３のデータべース２７に実行履歴情報が記録されるので、プラント提供者は、プラントのユーザがプログラムを実行したことを確実に自動的に知ることができ、管理コストを低減することができる。
【００７８】
また、データベース２７には、プログラムの実行結果そのものではなく、実行結果のハッシュ値が記録されるので、外部にデータが流出したとしても問題はなく、また通信路の負荷を低減することができる。
【００７９】
また、通信監視部２５によって、プラントのユーザとプラント提供者の通信状態を監視しているので、プラント提供者に無断でフルサービスプログラムが実行されるのを防止することができる。一方で、プラント提供者側の事情により通信状態が遮断された場合であっても、限定サービスプログラムを実行できるので、プラントのユーザの不満を低減させることができる。
【００８０】
また、データベース２７に記録されているプログラムは暗号化されており、プログラムの実行につき、所定の合意条件が達して初めて暗号鍵が通知されるので、プログラムの内容を秘密として管理することができる。
【００８１】
なお、上記実施形態においては、実行結果ではなく、実行結果のハッシュ値のみをデータベース２７に記録しているので、実行結果とデータベース２７上の記録とが齟齬する可能性がある。そこで、プラントのユーザにおいて、実行結果を別途データベースに記録するようにし、定期的に当該データベースに記録されている実行結果についてハッシュ値を取得し、この値とデータベース２７に保存されているハッシュ値とを比較し、齟齬があれば通知するようにしても構わない。
【００８２】
［第３の実施形態］
次に、本発明の第３の実施形態のプラント運転支援システム４１及びプラント運転支援方法について説明する。
本実施形態は、主にプラントのユーザによるプラントのオペレーション状況及びメンテナンス状況が適切であるか否かを自動的に判断する点に特徴がある。
【００８３】
＜プラント運転支援システム＞
本実施形態のプラント運転システム４１は、演算装置４２に設けられた分散型記録部４３と、ハッシュ値比較部４４と、プラント提供側に設けられたデータベース４５と、プラントのユーザ側に設けられたデータベース４６と、ハッシュ値情報出力部４７と、を備えている。
【００８４】
また、分散型記録部４３は、データベース４８とハッシュ値情報記録部４９とを備えている。
データベース４８には、各種の情報が記録されるが、本実施形態では、主としてプラントのオペレーション情報及びメンテナンス情報のハッシュ値が記録されている。
ハッシュ値情報記録部４９は、ハッシュ値情報出力部４７から受け付けたハッシュ値を、データベース４８に保存する機能部である。
【００８５】
データベース４５とデータベース４６は、定期的に同期することで内容が同一となるように構成されている。また、このデータベース４５及びデータベース４６には、プラントのオペレーション情報及びメンテナンス情報そのものが記憶されている。オペレーション情報とは、プラントの運転条件等に関する情報であり、メンテナンス情報とはメンテナンスの頻度・方法等に関する情報である。
【００８６】
ハッシュ値比較部４４は、データベース４５及びデータベース４６に保存されているオペレーション情報及びメンテナンス情報のハッシュ値を演算し、データベース４８に保存されているハッシュ値と比較し、比較の結果不一致となった場合に、アラート信号を出力する機能部である。
ハッシュ値情報出力部４７は、オペレーション情報及びメンテナンス情報のハッシュ値を分散型記録部４３に出力する機能部である。
【００８７】
＜プラント運転支援システム＞
（ステップＳ４１）
次に、本実施形態のプラント運転方法について説明する。
本実施形態では、まず、図１２に示すように、プラントのユーザがプラントを運転する度に、またプラントをメンテナンスする度に、これらの情報を取得し、データベース４６にプラントのオペレーション情報及びメンテナンス情報を記録する。
【００８８】
（ステップＳ４２）
次に、ハッシュ値情報出力部４７が、オペレーション情報及びメンテナンス情報のハッシュ値を演算し、このハッシュ値を分散型記録部４３に出力する。
【００８９】
（ステップＳ４３）
次に、ステップＳ４２で受け付けたハッシュ値を、ハッシュ値情報記録部４９が、分散型記録部４３のデータベース４８に記録する。
【００９０】
（ステップＳ４４）
次に、データベース４６とデータベース４５を同期し、データベース４５とデータベース４６の内容が同一となるようにする。
【００９１】
（ステップＳ４５）
次に、ハッシュ値比較部４４が、データベース４５及びデータベース４６に記録されているオペレーション情報及びメンテナンス情報のハッシュ値を演算し、この値とデータベース４８に記憶されているハッシュ値を比較する。
【００９２】
（ステップＳ４６）
ステップＳ４５の結果、両者が一致すれば処理を終了する。一致しなければ、ハッシュ値比較部４４は、分散型記録部４３に対して不一致が生じている旨のアラート情報を出力し、処理を終了する。
【００９３】
本実施形態によれば、オペレーション情報及びメンテナンス情報をハッシュ値としてデータベース４８に記録するので、これらの情報を不正に改ざんされることを防止することができる。
この結果、プラントにてトラブルが発生した際に、プラント提供者側においても、オペレーション又はメンテナンスに問題があったか否かを即座に判断することができ、プラント提供者側にてクレームの受入を判断する時間を短縮することができる。
【００９４】
以上、本発明を実施形態に基づき説明したが、本発明は、上記実施形態に限定されるものではなく、その要旨を逸脱しない範囲で種々変更可能であることは言うまでもない。
また、上述したプラント監視システム１及びプラント運転支援システム２１，４１における各処理の過程は、プログラムの形式でコンピュータ読み取り可能な記録媒体に記憶されており、このプログラムをコンピュータが読み出して実行することによって、上記処理が行われる。ここでコンピュータ読み取り可能な記録媒体とは、磁気ディスク、光磁気ディスク、ＣＤ−ＲＯＭ、ＤＶＤ−ＲＯＭ、半導体メモリ等をいう。また、このコンピュータプログラムを通信回線によってコンピュータに配信し、この配信を受けたコンピュータが当該プログラムを実行するようにしてもよい。
【００９５】
また、上記プログラムは、前述した機能の一部を実現するためのものであってもよい。さらに、前述した機能をコンピュータシステムにすでに記録されているプログラムとの組
み合わせで実現できるもの、いわゆる差分ファイル（差分プログラム）であってもよい。
【産業上の利用可能性】
【００９６】
本発明は、プラント監視システム全般及びプラント運転支援システム全般について適用可能である。
【符号の説明】
【００９７】
１・・・プラント監視システム、２，２２，４２・・・演算装置、３，２３，４３・・・分散型記録部、４・・・判定部、５，２４・・・実行要求出力部、６・・・情報処理装置、７，２７，４５，４６，４８・・・データベース、８，２８・・・プログラム実行処理部、９，２９・・・承認部、１０，３０・・・合意判定部、１１・・・記録要求部、２１，４１・・・プラント運転支援システム、２５・・・通信監視部、２６・・・暗号鍵通知部、３１・・・実行履歴処理部、４４・・・ハッシュ値比較部、４７・・・ハッシュ値情報出力部、４９・・・ハッシュ値情報記録部
【図１】
2018173794.tif 000003
【図２】
2018173794.tif 000004
【図３】
2018173794.tif 000005
【図４】
2018173794.tif 000006
【図５】
2018173794.tif 000007
【図６】
2018173794.tif 000008
【図７】
2018173794.tif 000009
【図８】
2018173794.tif 000010
【図９】
2018173794.tif 000011
【図１０】
2018173794.tif 000012
【図１１】
2018173794.tif 000013
【図１２】
2018173794.tif 000014