(58)【調査した分野】(Int.Cl.,DB名)
前記第2提供部は、前記記録部に記録されたデータを利用するためのアプリケーションプログラミングインタフェース(API)に基づく利用要求を入力とする、請求項1から3のいずれか一項に記載の機器情報提供装置。
【発明を実施するための形態】
【0021】
以下、図面を参照して本発明の一実施形態における機器情報提供装置、機器情報提供方法、機器情報提供プログラム及び記録媒体について詳細に説明する。
【0022】
[機器情報提供装置のソフトウェア構成]
先ず、機器情報提供装置の機能を、
図1を用いて説明する。
図1は、実施形態における機器情報提供装置10のソフトウェア構成の一例を示す図である。
【0023】
図1において、機器情報提供システム1は、機器情報提供装置10、制御装置20(20A、20B等)、データサーバ31(31A、31B等)、運転監視装置32、機器監視装置33、センサ機器41(41A、41B等)、アクチュエータ機器42(42A、42B等)、および利用装置50(50A、50B等)を有する。機器情報提供システム1は、プラントにおける分散制御システムを例示している。
【0024】
センサ機器41は、プラント内で扱われる気体又は液体等の流体等の圧力、温度、流量、水位等の物理量を測定する機器であり、計測(「検出」又は「測定」という場合もある。)した物理量を電気信号に変換する計測部(センサ)を有するフィールド機器である。センサ機器41は、例えば、差圧・圧力伝送器、温度伝送器、流量計又はレベル計等である。センサ機器41は、計測部で計測された計測データに対して、例えばノイズを除去するフィルタリング等の演算処理を行った演算データを生成して出力する。センサ機器41は、演算データを機器情報提供装置10に送信することができる。プラントにおいて、センサ機器41は、センサ機器41A、センサ機器41B等、複数設置される場合がある。また、アクチュエータ機器42は、プラント内で扱われる流体の流量等を制御する、ポンプやバルブ等のアクチュエータを有するフィールド機器である。
【0025】
センサ機器41やアクチュエータ機器42等のフィールド機器は、機器情報提供装置10とフィールド通信を用いたネットワーク91において通信可能に接続される。フィールド通信とは、例えば、ISA100、HART(登録商標)、BRAIN(登録商標)、FOUNDATION Fieldbus、PROFIBUS等の通信規格に基づく通信である。また、ネットワーク91は、有線通信の他、無線通信を利用するものであってもよい。フィールド機器は、例えば、ISA100.11a等のISA100 Wirelessに準拠した無線フィールド機器であってもよい。
【0026】
機器情報提供装置10は、第2データ取得部101、第1提供部102、取得要求部103、第1データ取得部104、記録部105、利用要求取得部106及び第2提供部107の各機能を有する。
【0027】
本実施形態における機器情報提供装置10の上記各機能は、機器情報提供装置10を制御する機器情報提供プログラム(ソフトウェア)によって実現される機能モジュールであるものとして説明する。
【0028】
第2データ取得部101は、プラントに設置された機器から出力される機器データであって、機器内で検出された第1データに対して所定の処理を行って得られる第2データを取得する。プラントに設置された機器(フィールド機器)として本実施形態ではセンサ機器41を例示する。機器において検出された「第1データ」とは、フィールド機器内部において検出される生データ(加工前のデータ)である。第1データは、例えば、センサ機器41で検出される計測データ、アクチュエータ機器42で検出される駆動部の駆動電流値、後述する補助センサにおいて検出される補助センサデータ等である。これらの第1データは、主にフィールド機器の内部において演算処理等に用いられ、フィールド機器の外部では常用されることがなかったデータである。また、「第2データ」とは、第1データに所定の処理を行って得られるデータである。所定の処理とは、例えば、フィールド機器内部の後述する演算部や診断部において実行される第1データに対する演算処理である。例えば、第1データである計測データに対して演算処理された第2データは、一定周期で制御装置20に入力され、プロセス制御に用いられる。また、第2データには、前記周期と非同期で提供されるものを含んでいてもよい。第2データには、例えば、機器監視装置33等に提供される、第1データである補助センサデータに基づき診断処理がされた診断データ、システムアラーム等を含んでいてもよい。
【0029】
第2データは、センサ機器41においてフィルタリング等の演算処理(加工処理)がされたものであり、ノイズを除去することにより、プラントの制御に用いられれた場合、制御を安定させることができる。上述のように、ノイズの除去とともにプロセス制御に直接用いない解析対象の信号レベルが低下してしまう場合があり、加工処理後の第2データはプラントの解析に使用できない場合又は不適切な場合がある。
【0030】
なお、本実施形態において「取得」とは、受信側が送信側からデータ等を取得することであり、例えば、送信側が主体となってデータを受信側に送信するプッシュ型のデータ送信であってもよく、また、受信側が送信側からデータを引き取るプル型のデータ受信であってもよい。従って、第2データ取得部101は、センサ機器41が自発的に送信する第2データを受信するものであってもよく、センサ機器41に対して第2データの送信をリクエストして受信するものであってもよく、また、センサ機器41の記憶部から第2データをダウンロードするものであってもよい。
【0031】
第1提供部102は、第2データ取得部101において取得された第2データを、プラントを制御する制御装置20に提供する。データの「提供」とは、上述した「取得」の逆に受信側に対して送信側からデータを提供することであり、データの送信はプッシュ型であってもプル型であってもよい。従って、第1提供部102は、第2データを制御装置20に、能動的に送信するものであっても、リクエスト等によって受動的に送信するものであってもよく、また、制御装置20が第1提供部102から自主的にダウンロードするものであってもよい。さらに、第1提供部102は、取得された第2データを制御装置20にそのまま提供するものであってもよい。そのまま提供するとは、例えば第1提供部102がハードウェアによって実現されるものであって電気的な導通のための回路や導線であり、第2データを含む電流を導通させる場合を含む。また、そのまま提供するとは、第2データを一時的な記憶装置に記憶して提供する場合を含む。
【0032】
取得要求部103は、センサ機器41やアクチュエータ機器42等のフィールド機器に対して、機器データの取得を要求する取得要求を送信する。機器データとは、フィールド機器から取得可能なデータをいう。機器データには、第1データと第2データの少なくとも一方を含む。第1データは、例えば、計測データ、後述する補助センサで計測された補助センサデータ等である。第2データは、例えば、演算データ、後述する診断部で生成された診断データ等である。
【0033】
取得要求部103は、フィールド機器から第2データが出力される予め定められた所定の周期と非同期に取得要求を送信する。非同期とは同期をしないことである。また、取得要求部103は、フィールド機器に対して、任意のタイミングで取得要求を送信してもよい。従って、取得要求部103は、上記所定の周期と同期して取得要求を送信してもよい。第2データ取得部101が、センサ機器41から周期的に送信される第2データを取得する場合、取得要求部103は、第2データの取得とは異なるタイミングで第1データ又は異なる種類の第2データの取得を要求してもよい。これにより、2つのデータを同時に送信できない通信方式であっても複数種類のデータを取得することが可能となる。
【0034】
例えば、センサ機器41はフィールド通信の通信規格によって、第2データと第1データ等の両方を同時に送信できず、第2データ又は第1データ等のいずれか一方のみを送信できる場合がある。取得要求部103は、第2データの送信周期の空き時間においてフィールド機器に送信要求を送信するようにしてもよい。フィールド機器はフィールド機器の動作を決めるパラメータを内部に記憶することができる。取得要求には、例えばフィールド機器が送信するデータを第1データ等と第2データとで変更するパラメータ、第1データ等を送信する送信タイミング、送信期間、送信時刻、送信回数等を設定するコマンドを含んでいてもよい。第2データの送信期間とは、例えば、1秒間等の期間を指定するものであってもよい。第1データ等の送信期間は、第2データの送信を優先するように設定されてもよい。例えば、第1データ等の送信期間を1分間とした場合、1分間の中で第2データの送信期間を除いた期間が第1データ等の実質的な送信期間として設定してもよい。また、取得要求には、第1データ等と第2データの送信に関する動作の設定を一時的に変更したセンサ機器41のパラメータを元に戻すコマンドを含んでいてもよい。
【0035】
なお、取得要求部103は、第1データ等の取得を要求するが、第2データの取得を要求するものであってもよい。例えば、センサ機器41において計測された計測データのトレンドを解析する場合、計測データのノイズを除去した演算データの方が望ましい場合がある。取得要求部103は、取得要求において第2データと第1データ等のいずれか一方、又は両方の取得を要求するコマンドを含んでいてもよい。
【0036】
第1データ取得部104は、取得要求部103において送信された取得要求に応じた第1データ等を機器から取得する。第1データ取得部104は、例えば、1の取得要求に対して1の第1データ等を取得するようにしてもよい。また、第1データ取得部104は、例えば、1の取得要求に対して複数の第1データ等を取得するようにしてもよい。なお、第1データの「取得」動作に関しては、第2データ取得部101の取得動作と同様であり、送受信の方向を問わない。
【0037】
記録部105は、第1データ取得部104において取得された第1データ等を記録する。記録部105は、例えば、機器情報提供装置10の内部の図示しない記録デバイスに第1データ等を記録する。記録部105は、機器情報提供装置10の外部の図示しないデータサーバ等の記録デバイスに第1データを記録してもよい。すなわち、記録部105は、第1データそのものではなく第1データ等の保存先を記録するようにしてもよい。記録部105は、第1データ等に対して、取得日時、記録日時、フィールド機器のタグ名等のパラメータデータ等の情報を付加して記録するようにしてもよい。
【0038】
利用要求取得部106は、記録部105において記録された第1データを利用するためのアプリケーションプログラミングインタフェース(API)に基づく利用要求を、ネットワーク94を介して取得する。ここで、API(Application Programming Interface)とは、ソフトウェアコンポーネントが互いにやりとりするのに使用するインタフェースの仕様である。本実施形態におけるAPIは、機器情報提供装置10が提供する機能を外部装置である利用装置50(50A、50B等)から利用可能にする。APIには、プログラムにおけるサブルーチン、データ構造、オブジェクトクラス、変数などの仕様を含んでいてもよい。利用装置50は、利用装置50を動作させるための動作プログラムにおいてAPIに基づくプログラミングを行うことにより、容易に機器情報提供装置10が提供する機能を利用することが可能となる。APIは、例えば文書やライブラリによって利用装置50のプログラムの開発者に提供することができる。
【0039】
APIには、例えば機器情報提供装置10が記録している機器データの中から特定のセンサ機器41、機器データの種類(演算データ、計測データ、補助センサデータ又は診断データ等)、第1データの記録日時の範囲等の機器データの抽出条件を指定する引数を定義できるようにしてもよい。また、APIには、機器データのソート、統計処理等の加工等、機器情報提供装置10における処理を指定する引数を定義できるようにしてもよい。APIを用いることにより、様々な利用目的に応じた機器データの提供を可能とする。
【0040】
第2提供部107は、利用要求取得部106において取得された利用要求に応じて記録された機器データに基づく機器情報を利用装置50に対してネットワーク94を介して提供する。機器データに基づく「機器情報」とは、記録部105に記録されて利用装置50(後述する「App」を有する)からの利用要求に応じて提供される情報である。機器情報はAPIを介してして利用装置50に提供される情報である。機器情報は、例えば、上述のような第1データをソートした情報、第1データに何らかのデータを付加した情報、第1データを加工した情報等を含む。「機器情報」には、機器データそのままを含むものであってもよい。すなわち、本実施形態における機器情報には、機器データに基づく全ての情報を含んでいてもよい。
【0041】
なお、第2提供部107は、第2データに基づく情報を提供してもよい。例えば、記録部105は、第1データに加えて、第2データをさらに記憶し、第2提供部107は、利用要求に応じて記録部105に記録された第1データと第2データとの少なくともいずれか一方を提供するようにしてもよい。これにより、第2データを含め、様々な利用目的に応じた機器データの提供を可能とする。
【0042】
なお、機器情報提供装置10における、第2データ取得部101、第1提供部102、取得要求部103、第1データ取得部104、記録部105、利用要求取得部106及び第2提供部107の各機能は、上述の通り、ソフトウェアによって実現されるものとして説明した。しかし、機器情報提供装置10が有する上記機能の中で少なくとも1つ以上の機能は、ハードウェアによって実現されるものであっても良い。
【0043】
また、機器情報提供装置10が有する上記何れかの機能は、1つの機能を複数の機能に分割して実施してもよい。また、機器情報提供装置10は、上記何れか2つ以上の機能を1つの機能に集約して実施してもよい。
【0044】
また、機器情報提供装置10は、1つの筐体によって実現される装置であっても、ネットワーク等を介して接続された複数の装置から実現されるシステムであってもよい。例えば、機器情報提供装置10は、クラウドコンピューティングシステムによって提供されるクラウドサービス等、仮想的な装置であってもよい。ここでクラウドコンピューティングシステムとは、たとえば、1または複数のクライアントからの利用に応じて1または複数のサービスおよび複数の機器・ノード・サーバなどにより共有されたハードウェアとソフトウェア資源を提供するように構成されるシステムをいう。また、機器情報提供装置10は、サーバ装置等の汎用のコンピュータであってもよく、機能が限定された専用の装置であってもよい。
【0045】
また、機器情報提供装置10の上記各機能のうち、少なくとも1以上の機能を他の装置において実現するようにしてもよい。すなわち、機器情報提供装置10は上記全ての機能を有している必要はなく、一部の機能を有するものであってもよい。
【0046】
制御装置20は、第2データに基づきプラントを制御する。制御装置20は、例えば、DCS制御装置、PLC(Programmable Logic Controller)等である。制御装置20は、第2データに基づき、例えば、アクチュエータ機器42を駆動する。制御装置20は、制御装置20を制御する制御プログラムによって動作する。制御装置20は、ネットワーク92を介して機器情報提供装置10と接続されており、機器情報提供装置10を介してネットワーク91に接続されたセンサ機器41の第2データを取得してアクチュエータ機器42を駆動する。すなわち、
図1は、機器情報提供装置10が制御装置20とフィールド機器の通信を中継する場合を示している。
【0047】
上述のように、第2データは、センサ機器41等において計測された計測データに含まれるノイズを除去する演算等が実行されたデータである。ノイズは計測データに対して瞬時的な異常値を与える場合がある。異常値に基づく制御が実施されるとプラントの安定性が低下してプラントにおける製品品質に影響を与える場合がある。制御装置20は、ノイズが除去された第2データを使用することにより、プラントの安定性を向上させることができる。
【0048】
また、制御装置20は、第2データを使用することにより、制御装置20における処理負荷や制御プログラムの制作負荷を低減させることが可能となる。例えば、計測データに含まれるノイズ除去を制御装置20における制御プログラムで実行する場合、センサ機器41の種類や特性に応じた演算処理が制御装置20側で必要となる。例えば、制御装置20がCPUパワーの大きくないPLC等であった場合、PLC等の制御プログラムにおいてそれぞれのセンサ機器41に対応したノイズ除去を行うことは、PLC等の処理負荷から困難となる。また、多数のセンサ機器41が設置されるプラントにおいて複数の制御装置20が動作する場合、それぞれのセンサ機器41に適合した演算処理を行う制御プログラムを制御装置20毎に制作する必要がある。制御装置20は、それぞれのセンサ機器41において適した演算処理がそれぞれのセンサ機器41において実行された第2データを使用することにより、制御プログラムの制作負荷を低減することができる。
【0049】
データサーバ31(31A、31B等)は、制御装置20からネットワーク93を介してプラントの運転に係る運転情報を取得して記録する。運転情報とは、例えば、制御装置20において取得した第2データ、制御装置20において生成したアクチュエータ機器42を駆動するための駆動データ(制御データ)等である。運転情報には、プラントにおいて生産される製品の品質情報、生産された製品の数量情報、運転者業者の情報等を含んでいてもよい。
【0050】
また、データサーバ31は、フィールド機器やプラントの装置の動作記録、故障記録、保守記録、センサ機器41又はアクチュエータ機器42における診断データ、アラームやアラートのイベント情報等を取得して記録してもよい。
【0051】
データサーバ31は、例えば、Webサーバ、OPCサーバ、アラーム&イベントサーバ等である。Webサーバは、HTTP(Hypertext Transfer Protocol)を通じて、Webブラウザに対してHTML(HyperText Markup Language)等の表示画面を提供する。OPCサーバは、OPC Foundationにおいて規格化されたインタフェースを実装したサーバである。また、データサーバ31は、プラントを運転する企業の基幹業務システムであってもよい。基幹業務システムとは、例えば、プロセス製造業向けERP(Enterprise Resource Planning:経営資源統合)システムである。ERPシステムにおいては、運転情報や機器情報を経営情報として収集することができる。
【0052】
運転監視装置32は、データサーバ31において記録された運転情報を監視するための装置である。運転監視装置32は、例えばプラントの運転情報を表示装置に表示して運転監視員がプラントの運転状況を確認可能にする。運転監視員は、プラントの運転状況に基づき、例えばフィールド機器の設定値を変更し、又はアクチュエータ機器に指示値を送信する。
【0053】
機器監視装置33は、データサーバ31において記録された、例えば、診断データやアラーム、機器への設定パラメータ、機器のステータス等のプラントの情報を監視するための装置である。機器監視装置33は、例えばプラントの情報を表示装置に表示して機器監視員が機器の状態を確認可能にする。機器監視員は、プラントの情報に基づき、例えばセンサ機器41やアクチュエータ機器42の交換等の保守作業を実行又は指示する。
【0054】
利用装置50(50A、50B等)は、機器情報提供装置10のAPIを用いたアプリケーションプログラム(以下、「App」と略す。)を実行することによって、機器情報提供装置10が提供する機能を利用する。Appは、例えば計測データを解析する処理を実行する。利用装置50のAppは、機器情報提供装置10の利用要求取得部106に対してAPIに基づく利用要求を送信し、第2提供部107から利用要求に応じた機器情報を取得する。
【0055】
利用装置50は、制御装置20と通信を行うことによって、例えば、利用装置50のAppにおける処理結果に基づき制御装置20(20B)に対して制御指示を送信する。また、利用装置50のAppは、制御装置20における処理結果を取得して解析等の処理に利用してもよい。
【0056】
なお、
図1において、センサ機器41又はアクチュエータ機器42〜機器情報提供装置10の間はネットワーク91を介して通信し、機器情報提供装置10〜制御装置20の間はネットワーク92を介して通信し、制御装置20〜データサーバ31、運転監視装置32又は機器監視装置33の間はネットワーク93を介して通信し、さらに、機器情報提供装置10〜利用装置50の間はネットワーク94を介して通信する場合を例示している。しかし、ネットワーク91〜ネットワーク94のネットワークの種類は任意であり、ネットワーク91〜ネットワーク94のネットワークのいずれか2以上のネットワークを同一のネットワークとして実施してもよい。例えば、ネットワーク91とネットワーク92を、フィールド通信を利用するネットワークで実施し、ネットワーク93とネットワーク94を、TCP/IP等の通信プロトコルを利用する通信を利用するネットワークで実施してもよい。
【0057】
[機器情報提供装置のハードウェア構成]
図2は、実施形態における機器情報提供装置のハードウェア構成の一例を示す図である。
【0058】
図2において、機器情報提供装置10は、CPU(Central Processing Unit)11、RAM(Random Access Memory)12、ROM(Read Only Memory)13、HDD(Hard Disk Drive)14、タッチパネル15、通信I/F(Interface)16、及びフィールド通信I/F17を有する。なお、これらの構成は機器情報提供装置10のハードウェア構成の一例であって、必須の構成を示したものではない。例えば、タッチパネル15は、機器情報提供装置10において追加的な構成の1つである。また、
図2において、制御装置20及び利用装置50は、機器情報提供装置10と同様のハードウェア構成であるものとして説明する。機能が同じハードウェアについての説明は省略する場合がある。
【0059】
機器情報提供装置10は、
図1で説明した機器情報提供プログラムを実行する装置である。機器情報提供装置10は、上述のように、サーバ装置等の汎用のコンピュータであってもよく、機能が限定された専用の装置であってもよい。また、機器情報提供装置10は、制御装置20とハードウェアを共用するものであってもよい。例えば、制御装置20がPLC等のコンピュータであった場合、機器情報提供装置10をPLC等の通信I/F26等におけるI/Oモジュールにおいて実施するようにしてもよい、また、機器情報提供装置10を、フィールド機器と同じ筐体においてハードウェアを共有して実施するようにしてもよい。これの実装のバリエーションにおいては後述する。
【0060】
CPU11は、RAM12、ROM13又はHDD14に記憶された機器情報提供プログラムを実行することにより、機器情報提供装置10の制御を行う。機器情報提供プログラムは、例えば、機器情報提供プログラムを記録した記録媒体、又はネットワークを介した機器情報提供プログラムを提供するサーバ等から取得されて、HDD14にインストールされ、RAM12にCPU11から読出し可能に記憶される。
【0061】
タッチパネル15は、操作入力機能と表示機能とを有する操作表示機能を有する。タッチパネル15は、機器情報提供装置10で実行されるプログラムのUI(User Interface)を表示する。タッチパネル15は、ユーザに対して指先又はタッチペン等を用いた操作入力を可能にする。本実施形態における機器情報提供装置10は操作表示機能を有するタッチパネル15を用いる場合を説明するが、機器情報提供装置10は、表示機能を有する表示装置と操作入力機能を有する操作入力装置とを有するものであってもよい。その場合、タッチパネル15の表示画面は表示装置の表示画面、タッチパネル15の操作は操作入力装置の操作として実施することができる。なお、タッチパネル15は、ヘッドマウント型、メガネ型、腕時計型のディスプレイ等の種々の形態によって実現されてもよい。
【0062】
通信I/F16は、無線LAN通信、有線LAN通信、赤外線通信、近距離無線通信等の汎用通信を使用する他の装置と、ネットワーク94等を介した通信を制御する。他の装置は、例えば、制御装置20、利用装置50の他、図示しないクラウドサーバ、外部アプリが配置される装置等である。クラウドサーバは、クラウドコンピューティングによってクラウドサービスを提供するサーバである。クラウドサーバは、例えば機器データ等を含むビッグデータを一時的に記憶するものであってもよい。クラウドサーバは、図示しない他の機器情報提供装置に対して機器情報提供装置10と共通した情報を提供してもよい。外部アプリは、機器情報提供装置10の外部で動作するアプリであって、例えば
図1で説明した機器情報提供装置10の機能の一部であってもよい。また、通信I/F16は、図示しない、他の機器情報提供装置、汎用通信が可能なフィールド機器、保全情報を管理する保全情報管理サーバ、DCS制御装置、PLC等との通信を行ってもよい。なお、外部アプリは、機器情報提供装置10から読取り可能な記録媒体や、機器情報提供装置10の内部に存在してもよい。
【0063】
フィールド通信I/F17は、フィールド機器において使用可能な通信プロトコルを用いてネットワーク91を介したフィールド機器とのフィールド通信を制御する。プラントで使用される様々なフィールド機器においては種々のフィールド通信プロトコルが用いられている。フィールド通信I/F17は、例えば、ISA100、HART(登録商標)、BRAIN(登録商標)、FOUNDATION Fieldbus、PROFIBUS等のフィールド通信を使用するフィールド機器との通信を制御する。機器情報提供装置10は、フィールド通信の種類に応じて複数のフィールド通信I/F17を有するものであってもよい。
【0064】
[センサ機器とのデータ送受信]
図3は、実施形態における機器情報提供装置とセンサ機器のデータ送受信の一例を示す図である。
【0065】
図3において、機器情報提供装置10は、機器データ記憶部1000、機器データ取得要求1001、機器データ取得1002、演算データ取得1003及び演算データ提供1004の各機能を有する。また、センサ機器41は、計測部411、補助センサ412、演算部413、診断部414、記憶部415及び送受信部416の各機能を有する。なお、
図3において説明する、機器情報提供装置10の機能は、
図1で説明した機能の一部を説明するものである。
【0066】
計測部411は、センサ機器41において計測する計測データ(第1データ)を計測(検出)する。計測データは、例えば、プラント内で扱われる気体又は液体等の流体等の圧力、温度、流量、水位等の物理量を電気信号に変換するセンサである。計測部411において計測された計測データは、演算部413に出力されるとともに、送受信部416に出力される。演算部413は、計測部411から出力された計測データに対してノイズ除去等の演算処理を行い、演算データ(第2データ)を送受信部416に出力する。演算部413による演算をされずに送受信部416に出力される計測データは、例えばプラントにおける異常を示す異常データを含んでいる場合がある。ここで計測データに含まれる異常データの「異常」とは、定常とは違う状態をいう。例えば、プロセス制御においては、計測データが所定の正常範囲内にあるときに計測データが「正常」であると判断している。しかし、測定データが正常範囲内にある場合であっても、例えばフィールド機器等の故障の前兆を示す、定常では含まれないデータが含まれる場合がある。すなわち、本実施形態における異常データとは、測定データが正常か或いは異常かを示すものではなく、測定データが正常範囲内であった場合においても含まれ得る定常ではないデータをいう。センサ機器41は、通常のプラント制御に使用する演算データとともに、計測データを送受信部416から送信可能としている。
【0067】
補助センサ412は、計測部411における計測を補助するセンサである。補助センサ412は、計測部411において計測された計測データに対する補正データ等の計測データ(補助センサデータ)を生成する。生成された補助センサデータは、演算部413に出力されるとともに送受信部416に出力される。例えば計測データが圧力を計測するものである場合、補助センサ412において温度を計測し温度データを生成し、演算部413における圧力データに対する温度補正を可能にする。また、補助センサ412は、それ自体が計測データを生成するセンサであるため、補助センサ412で生成された補助センサデータは、計測部411から出力される計測データと同様に、プラントにおける異常を示す異常データを含んでいる場合がある。センサ機器41は、補助センサ412において計測された補助センサデータを第1データの一部として送受信部416から送信可能としている。
【0068】
診断部414は、計測部411の計測データと補助センサ412の補助センサデータに基づき、センサ機器41の動作状態を診断する。診断部414における診断結果は、送受信部416から診断データ(第2データ)として出力することができる。記憶部415は、計測データの補正値やセンサ機器41の設定値等、パラメータを記憶する。パラメータは、例えばフィールド通信の通信規格において定められた各種のパラメータであってもよい。パラメータには、計測データの補正値の他、例えば、センサ機器41を識別するための識別情報やタグ情報を含んでいてもよい。
【0069】
送受信部416は、機器情報提供装置10とのデータ送受信を行う。送受信部416は、計測データ、補助センサデータ、演算データ又は診断データを一時記憶して、機器情報提供装置10に提供するものであってもよい。送受信部416は、例えば1秒周期等予め定められた送信間隔で演算データを機器情報提供装置10に送信する。また、送受信部416は、機器情報提供装置10からの取得要求に応じた機器データを機器情報提供装置10に送信する。
【0070】
機器データ取得要求1001は、送受信部416に対して機器データの取得を要求する取得要求を送信する。機器データは、第1データ又は第2データの少なくともいずれか一方である。機器データ取得1002は、取得要求に応じた機器データを取得して、機器データ記憶部1000に記憶する。第1データは、例えば、計測データ、補助センサデータ等である。また、第2データは、例えば、演算データ、診断データ等である。
【0071】
演算データ取得1003は、演算部413から送信される演算データを取得する。演算データ取得1003において取得された演算データは、演算データ提供1004を介して制御装置20に提供されて、プロセス制御に利用される。また、演算データ取得1003において取得された演算データは、機器データ記憶部1000に記憶するようにしてもよい。
【0072】
[アクチュエータ機器とのデータ送受信]
図4は、実施形態における機器情報提供装置とアクチュエータ機器のデータ送受信の一例を示す図である。
【0073】
図4において、機器情報提供装置10は、機器データ記憶部1000、機器データ取得要求1001、機器データ取得1002、駆動データ取得1005及び駆動データ提供1006の各機能を有する。また、アクチュエータ機器42は、駆動部421、補助センサ422、演算部423、診断部424、記憶部425及び送受信部426の各機能を有する。なお、
図4において説明する、機器情報提供装置10の機能は、
図1で説明した機能の一部を説明するものである。
【0074】
機器データ取得要求1001は、送受信部426に対して機器データの取得を要求する取得要求を送信する。機器データは、第1データ又は第2データの少なくともいずれか一方である。機器データ取得1002は、取得要求に応じた機器データを取得して、機器データ記憶部1000に記憶する。第1データは、例えば、駆動データ、補助センサデータ等である。また、第2データは、例えば、診断データ等である。機器データ記憶部1000に記憶される駆動データは、演算部423から駆動部421に対して出力される駆動電流等を送受信部426が直接読み出した第1データである。但し、機器データ記憶部1000は、駆動データ取得1005において取得された駆動データを記憶してもよい。
【0075】
駆動データ取得1005は、制御装置20から送信される駆動データを取得する。駆動データ取得1005において取得された駆動データは、駆動データ提供1006を介して送受信部426に提供されて、アクチュエータの駆動制御に利用される制御データである。駆動データは、例えば、バルブ開度等を指示する制御データである。駆動データには、ON/OFF制御を行うための制御データを含んでいてもよい。
【0076】
送受信部426は、機器情報提供装置10とのデータ送受信を行う。送受信部426は、駆動部421を駆動する駆動電流値、補助センサデータ又は診断データ等を一時記憶して、機器情報提供装置10に提供するものであってもよい。送受信部426は、駆動データ提供1006から提供される駆動データを受信したときに駆動データを演算部423に送信する。また、送受信部426は、駆動部421を駆動する駆動電流等、駆動部421から取得される第1データを直接読み出すことができる。
【0077】
駆動部421は、アクチュエータ機器42において駆動対象となる、例えば、バルブ、ソレノイド、ポンプ等である。補助センサ422は、駆動部421の駆動を補助するセンサである。例えば、駆動部421がバルブである場合、補助センサ422はバルブ開度を検出する開度センサである。また、駆動部421がポンプである場合、補助センサ422はポンプの回転を検出する回転センサである。駆動部421は、演算部423において演算された演算データに基づいて駆動される。また、補助センサ422で検出される補助センサデータは、演算部423に出力されるとともに、診断部424及び送受信部426に出力される。
【0078】
演算部423は、駆動部421に対する駆動データを演算する。演算部423は、例えば、4〜20mAの駆動データを、バブルの開度を指示する電圧値や電力のON/OFF信号に変換する。また、演算部423は、補助センサデータにおける検出結果をフィードバックデータとして駆動部421を駆動制御するようにしてもよい。
【0079】
補助センサ422は、それ自体が計測データを生成するセンサであるため、補助センサ422で生成された補助センサデータは、プラントにおける異常を示す異常データを含んでいる場合がある。例えば、アクチュエータ機器42の診断には、振動計、表面温度計、騒音計等を用いた専用の診断機器が用いられる。このような診断機器は高価であるため、アクチュエータの診断は、例えば、ハンディタイプの診断機器を用いて定期的な保守点検において行われることが多い。アクチュエータ機器42の補助センサ422で計測された補助センサデータを異常検出の解析に利用することにより、保守点検の省力化及びコストダウンを図ることが可能となる。
【0080】
診断部424は、駆動部421の駆動データと補助センサ422の補助センサデータに基づき、アクチュエータ機器42の動作状態を診断する。診断部424における診断結果は、送受信部426から第2データとして出力することができる。記憶部425は、駆動データの補正値やアクチュエータ機器42の設定値等、パラメータを記憶する。パラメータは、例えばフィールド通信の通信規格において定められた各種のパラメータである。
【0081】
[利用装置とのデータ送受信]
図5は、実施形態における機器情報提供装置と利用装置のデータ送受信の一例を示す図である。
【0082】
図5において、機器情報提供装置10は、API1101、フレームワーク1102及び機器データ記憶部1103の機能を有する。API1101、フレームワーク1102及び機器データ記憶部1103は機器情報を提供するためのプラットフォーム1100として機能する。なお、
図5において説明する、機器情報提供装置10の機能は、
図1で説明した機能の一部を説明するものである。
【0083】
機器情報提供装置10は、利用装置50A、利用装置50B等、複数の利用装置50と通信可能に接続される。利用装置50は、複数のAppを実装することができる。例えば、
図5において、利用装置50Aは、App1とApp2の2つのAppが実装されていることを示している。また、利用装置50BにはApp3が実装されていることを示している。App1〜App3は、機器情報提供装置10が提供する機器データを利用するプログラムであり、例えば、流体中に発生するキャビテーション又は脈流等の流体の異常、異物混入によるスラリーノイズの発生、若しくは配管詰まり等の様々な種類の異常を検出するための検出プログラムである。App1は、制御装置20から直接データを取得したり提供する。例えばApp1は、制御装置20からアラーム情報を取得して異常の解析を開始し、解析結果を制御装置20に送信することにより制御装置20におけるプラントの制御をサポートすることができる。
【0084】
それぞれのAppは、API1101に対して、API1101において規定されたデータ構造、オブジェクトクラス又は変数を用いて、利用要求を送信する。また、それぞれのAppは、送信した利用要求に対応した機器情報をAPI1101から取得する。利用要求には、例えば、フィールド機器を特定する情報、取得するデータの種類、データの範囲等の情報を含んでいてもよい。
【0085】
API1101は、利用装置50のAppから機器情報提供装置10の機能を利用可能にするインタフェースである。APIは、例えば、機器情報提供装置10において動作する機器情報提供プログラムにおけるサブルーチンにおいて実装することができる。API1101は、利用装置50からの利用要求を取得して、それに対応する機器情報を提供する。API1101は、機器情報提供装置10が記録している機器データの中から特定のセンサ機器41、機器データの種類(演算データ、計測データ、補助センサデータ又は診断データ等)、機器データの記録日時の範囲等の機器データの抽出条件を指定できるようにしてもよい。また、APIには、機器データのソート、統計処理等の加工等、機器情報提供装置10における処理を指定する引数を定義できるようにしてもよい。API1101は、機器情報以外のデータの取得、又はフィールド機器に対するパラメータの設定を指示する機能を提供するものであってもよい。機器情報以外のデータとは、例えば、機器情報提供装置10の動作状態を確認するためのデータ、機器情報提供装置10に記録されて取得可能な機器情報の種類や範囲を示すデータ、又はAPIのバージョン等を確認するためのデータ等である。API1101によって、容易に機器情報提供装置10が提供する機能を利用することが可能となる。
【0086】
フレームワーク1102は、API1101に対して要求された機能を実現するプログラムである。フレームワーク1102は、例えば、取得範囲の指定された機器データの抽出、機器データのソート、機器データの簡易的な加工等の処理を実行する。機器データ記憶部1103は、フレームワーク1102から利用可能に第1データ又は第2データ等を記憶する。
【0087】
本実施形態における機器情報提供のためのプラットフォーム1100は、APIを介して、機器情報提供装置10が有する機器データを様々なAppから共通的に利用可能とするソフトウェアにおける仕組みである。但し、上述のようにこれらの機能は、分散した複数のコンピュータで実装されてもよく、又は機能の一部又は全部をハードウェアによって実装するようにしてもよい。Appの作成にあたっては、共通的なプラットフォーム1100を利用することにより、例えば、プログラムの流用等が可能になり、プログラム作成コストを低減させることが可能となる。なお、機器情報提供のためのプラットフォーム1100は、
図1における利用要求取得部と第2提供部の機能を合わせて上記プラットフォームの階層において実現させた一例である。すなわち、
図5のプラットフォームの構成はこれに限定されるものではなく、例えば、センサ機器41の機器データの利用に対するプラットフォーム1100とアクチュエータ機器42の機器データの利用に対するプラットフォーム1100とを分けて実現してもよい。
【0088】
[第2データの取得動作]
図6は、実施形態における機器情報提供装置10の第2データ取得動作の一例を示すフローチャートである。
図6は、一定周期で送信される第2データを取得する動作を示している。
【0089】
図6において、機器情報提供装置10は、第2データを取得したか否かを判断する(ステップS11)。第2データを取得したか否かは、例えば、第2データ取得部101がセンサ機器41等から周期的に送信される演算データを取得したか否かによって判断することができる。第2データを取得していないと判断した場合(ステップS11:NO)、機器情報提供装置10は、ステップS11の処理を繰返して第2データの取得を待機する。
【0090】
一方、第2データを取得したと判断した場合(ステップS11:YES)、機器情報提供装置10は、取得した第2データを制御装置20に提供する。第2データの提供は、例えば、第1提供部102が制御装置20に対して提供することができる。
【0091】
ステップS12の処理を実行した後、機器情報提供装置10は、第2データを記録するか否かを判断する(ステップS13)。第2データを記録するか否かは、例えば、第2データ取得部101に対して、取得した第2データを記録部105に記録するか否かの設定を予めしておくことにより判断することができる。第2データを記録すると判断した場合(ステップS13:YES)、機器情報提供装置10は、第2データを記録部105に記録する(ステップS14)。第2データは制御装置20でプロセス制御に利用されるものである。しかし、第2データを記録部105に記録することにより、利用装置50からの第2データの利用を可能とする。
【0092】
ステップS14の処理を実行した後、又は、第2データを記録しないと判断した場合(ステップS13:NO)、機器情報提供装置10は、フローチャートに示した動作を終了する。なお、
図6の動作は繰り返し実行されるため、例えば、動作を終了する代わりにステップS11の処理に戻り、ステップS11〜ステップS14の処理を繰り返し実行するようにしてもよい。
【0093】
[第1データの取得動作]
図7は、実施形態における機器情報提供装置10の第1データ取得動作の一例を示すフローチャートである。
【0094】
図7において、機器情報提供装置10は、第1データを取得するタイミングであるか否かを判断する(ステップS21)。第1データを取得するタイミングか否かは、例えば、取得要求部103において第1データ取得の設定がされており、設定されたタイミングであるか否かで判断することがきる。第1データを取得するタイミングでないと判断した場合(ステップS21:NO)、機器情報提供装置10は、ステップS21の処理を繰返して第1データの取得タイミングを待機する。
【0095】
一方、第1データを取得するタイミングであると判断した場合(ステップS21:YES)、機器情報提供装置10は、第1データの取得要求を送信する(ステップS22)。第1データの取得要求の送信は、例えば、取得要求部103が、センサ機器41等に取得要求を送信することにより実行することができる。
【0096】
ステップS22の処理を実行した後、機器情報提供装置10は、第1データを取得したか否かを判断する(ステップS23)。第1データを取得したか否かの判断は、例えば、第1データ取得部104が第1データを取得したか否かで判断することができる。第1データを取得していないと判断した場合(ステップS23:NO)、機器情報提供装置10は、ステップS23の処理を繰返して第1データの取得を待機する。一方、第1データを取得したと判断した場合(ステップS23:YES)、機器情報提供装置10は、取得した第1データを記録部105に記録する(ステップS24)。ステップS24の処理を実行した後、機器情報提供装置10は、フローチャートに示した動作を終了する。なお、
図7の動作においても繰り返し実行されるため、例えば、動作を終了する代わりにステップS21の処理に戻り、ステップS21〜ステップS24の処理を繰り返し実行するようにしてもよい。
【0097】
[機器情報の提供動作]
図8は、実施形態における機器情報提供装置10の機器情報提供動作の一例を示すフローチャートである。
【0098】
図8において、機器情報提供装置10は、利用要求を取得したか否かを判断する(ステップS41)。利用要求を取得したか否かは、例えば、利用要求取得部106が利用装置50から送信される利用要求を取得したか否かによって判断することができる。利用要求を取得していないと判断した場合(ステップS41:NO)、機器情報提供装置10は、ステップS41の処理を繰返して利用要求の取得を待機する。
【0099】
一方、利用要求を取得したと判断した場合(ステップS41:YES)、機器情報提供装置10は、取得した利用要求を解析する(ステップS42)。利用要求の解析は、例えば、利用要求取得部106において取得したAPIに含まれる変数等を解析することにより実行することができる。
【0100】
ステップS42の処理を実行した後、機器情報提供装置10は、第1データ又は第2データの少なくともいずれか一方のデータを取得する(ステップS43)。第1データ又は第2データの取得は、例えば、第2提供部が記録部105に記録された機器データを取得することにより実行することができる。
【0101】
ステップS43の処理を実行した後、機器情報提供装置10は、機器情報を生成する(ステップS44)。機器情報とは、利用要求に応じて処理された機器データである。機器情報は、例えば機器データをフィールド機器毎にまとめて時系列でソートした情報である。また、機器データの数値が所定の範囲内であるものを抽出した情報であってもよい。また、機器情報は、機器データをそのまま読み出したものであってもよい。機器情報の生成は、例えば、フレームワーク1102のような機器データの処理を行う階層において実施することができる。
【0102】
ステップS44の処理を実行した後、機器情報提供装置10は、機器情報を利用装置50に提供する(ステップS45)。機器情報の提供は、例えば、第2提供部107が利用要求に応じて提供することにより実行することができる。ステップS45の処理を実行した後、機器情報提供装置10は、フローチャートに示した動作を終了する。なお、
図8の動作においても繰り返し実行されるため、例えば、動作を終了する代わりにステップS41の処理に戻り、ステップS41〜ステップS45の処理を繰り返し実行するようにしてもよい。
【0103】
また、ステップS41〜ステップS45の処理は、1つの利用要求に対して1つの機器情報を提供する場合を示したが、例えば、1つの利用要求に対して、複数の機器情報を提供するようにしてもよい。例えば、1つの利用装置50から取得した利用要求に応じて、複数の利用装置に機器情報をマルチ送信するようにしてもよい。
【0104】
[機器情報提供装置の実装形態]
図9は、実施形態における機器情報提供装置の第1の実装形態を示す図である。
図10は、実施形態における機器情報提供装置の第2の実装形態を示す図である。
図11は、実施形態における機器情報提供装置の第3の実装形態を示す図である。
図12は、実施形態における機器情報提供装置の第4の実装形態を示す図である。
図13は、実施形態における機器情報提供装置の第5の実装形態を示す図である。
図14は、実施形態における機器情報提供装置の第6の実装形態を示す図である。
図15は、実施形態における機器情報提供装置の第7の実装形態を示す図である。
【0105】
図9から
図15は、
図5で説明したプラットフォーム1100の実装位置のバリエーションを示している。すなわち、本実施形態の機器情報提供装置10は、
図1又は
図2で説明したようにフィールド機器又は制御装置20とは別装置であってもよく、他の装置の機能の1部であってもよい。
【0106】
図9において、プラットフォーム1100は、制御装置20の制御CPUの制御ブログラムにおけるロジック部2011に実装される。すなわち、プラットフォーム1100は、制御装置20の制御プログラムに実装されている。
図9の実装においては、制御装置20を利用することができるので、新たな装置の追加をすることなく、導入コストを低減させることができる。
図9は、制御CPU201の処理能力が高いときに有効である。
【0107】
図10において、プラットフォーム1100は、制御装置20の制御CPUの制御プログラムにおけるロジック部2011とは別個のプログラムで実装される。すなわち、プラットフォーム1100は、制御装置20の制御プログラムと並列に動作するプログラムで実装されている。
図10の実装においては、制御装置20を利用することができるので、新たな装置の追加をすることなく、導入コストを低減させることができる。プラットフォーム1100とロジック部2011を別個に実装するため、プラットフォーム1100と制御プログラムを別個に管理することが可能となる。
図10においても、制御CPU201の処理能力が高いときに有効である。なお、プラットフォーム1100とロジック部2011は、制御CPU201上に設けられた仮想化部上に独立して設けるようにしてもよい。
【0108】
図11において、プラットフォーム1100は、制御装置20とIO装置2012の中間に実装される。プラットフォーム1100は、制御装置20とIO装置2012の通信線に設置される。これにより、プラットフォーム1100が制御装置20に与える影響を小さくすることができる。
【0109】
図12において、プラットフォーム1100は、IO装置2012の内部に実装される。IO装置2012は、例えばPLCのIOモジュールである。プラットフォーム1100をIO装置2012の内部に実装することにより、新たな装置の追加をすることなく、導入コストを低減させることができる。
【0110】
図13において、プラットフォーム1100は、無線ゲートウェイ(G/W)2013の内部に実装される。無線ゲートウェイ2013は、例えばPLCの無線G/Wである。プラットフォーム1100を無線ゲートウェイ2013の内部に実装することにより、新たな装置の追加をすることなく、導入コストを低減させることができる。
【0111】
図14において、プラットフォーム1100は、IO装置2012とフィールド機器40の中間に実装される。これにより、フィールド機器がデイジーチェーン接続されていたり、又はフィールド機器自身が多機能であったりする場合においても効率よく機器データを収集することができる。
【0112】
図15において、プラットフォーム1100は、フィールド機器40の内部に実装される。プラットフォーム1100をフィールド機器40の内部に実装することにより、フィールド機器自身が多機能である場合においても効率よく機器データを収集することができる。また、新たな装置の追加をすることなく、導入コストを低減させることができる。
【0113】
なお、フィールド機器40には、モータ等の電気機器を含んでいてもよい。また、フィールド通信は、デジタル方式において実施することができる。
【0114】
以上説明したように、本実施形態の機器情報提供装置は、プラントに設置された機器から出力されるデータであって、前記機器内で検出された第1データに対して所定の処理を行って得られる第2データを、前記プラントを制御する制御装置に提供する第1提供部と、前記機器に対して、前記第1データの取得要求を送信する取得要求部と、前記取得要求に応じて前記機器から出力される前記第1データを記録する記録部と、外部から入力される利用要求に応じて、前記記録部に記録された前記第1データを外部に提供する第2提供部とを備える。この構成により、フィールド機器の機器データを利用目的に応じた機器情報として提供することができる。
【0115】
なお、本実施形態においては、第2データとして、定周期で取得されるデータ、定周期とは非同期で取得されるデータの両方を含む場合を説明した。しかし、例えば、定周期で取得されるデータを第2データ、非同期で取得されるデータを第3データとして区別して実施してもよい。すなわち、第2データは、その取得方法において限定されるものではない。
【0116】
本実施形態の機器情報提供方法は、プラントに設置された機器から出力されるデータであって、前記機器内で検出された第1データに対して所定の処理を行って得られる第2データを、前記プラントを制御する制御装置に提供する第1提供ステップと、前記機器に対して、前記第1データの取得要求を送信する取得要求ステップと、前記取得要求に応じて前記機器から出力される前記第1データを記録する記録ステップと、外部から入力される利用要求に応じて、前記記録部に記録された前記第1データを外部に提供する第2提供ステップとを含む。この構成により、フィールド機器の機器データを利用目的に応じた機器情報として提供することができる。
【0117】
なお、上述した機器情報提供方法は、上述したステップを含む方法であればよく、これらのステップの実行は、任意の順序で実行するようにしてもよい。すなわち、上述した各ステップの実行のタイミングは任意であり、例えば、上述した何れかのステップを数回実行してから他のステップを実行するようにしてもよい。
【0118】
また、本実施形態で説明した装置を構成する機能を実現するためのプログラムを、コンピュータ読み取り可能な記録媒体に記録して、当該記録媒体に記録されたプログラムをコンピュータシステムに読み込ませ、実行することにより、本実施形態の上述した種々の処理を行ってもよい。なお、ここでいう「コンピュータシステム」とは、OSや周辺機器等のハードウェアを含むものであってもよい。また、「コンピュータシステム」は、WWWシステムを利用している場合であれば、ホームページ提供環境(あるいは表示環境)も含むものとする。また、「コンピュータ読み取り可能な記録媒体」とは、フレキシブルディスク、光磁気ディスク、ROM、フラッシュメモリ等の書き込み可能な不揮発性メモリ、CD−ROM等の可搬媒体、コンピュータシステムに内蔵されるハードディスク等の記憶装置のことをいう。
【0119】
さらに「コンピュータ読み取り可能な記録媒体」とは、インターネット等のネットワークや電話回線等の通信回線を介してプログラムが送信された場合のサーバやクライアントとなるコンピュータシステム内部の揮発性メモリ(例えばDRAM(Dynamic Random Access Memory))のように、一定時間プログラムを保持しているものも含むものとする。また、上記プログラムは、このプログラムを記憶装置等に格納したコンピュータシステムから、伝送媒体を介して、あるいは、伝送媒体中の伝送波により他のコンピュータシステムに伝送されてもよい。ここで、プログラムを伝送する「伝送媒体」は、インターネット等のネットワーク(通信網)や電話回線等の通信回線(通信線)のように情報を伝送する機能を有する媒体のことをいう。また、上記プログラムは、前述した機能の一部を実現するためのものであっても良い。さらに、前述した機能をコンピュータシステムにすでに記録されているプログラムとの組合わせで実現するもの、いわゆる差分ファイル(差分プログラム)であっても良い。
【0120】
以上、本発明の実施形態について、図面を参照して説明してきたが、具体的な構成はこの実施形態に限定されるものではなく、本発明の趣旨を逸脱しない範囲においての種々の変更も含まれる。