(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2023036139
(43)【公開日】2023-03-14
(54)【発明の名称】データ提供装置、データ提供システム及びデータ提供方法
(51)【国際特許分類】
H04Q 9/00 20060101AFI20230307BHJP
【FI】
H04Q9/00 311J
【審査請求】未請求
【請求項の数】9
【出願形態】OL
(21)【出願番号】P 2021142981
(22)【出願日】2021-09-02
(71)【出願人】
【識別番号】000005108
【氏名又は名称】株式会社日立製作所
(74)【代理人】
【識別番号】110002365
【氏名又は名称】弁理士法人サンネクスト国際特許事務所
(72)【発明者】
【氏名】天野 光司
(72)【発明者】
【氏名】澤田 一真
(72)【発明者】
【氏名】森部 博貴
(72)【発明者】
【氏名】稲葉 大祐
(72)【発明者】
【氏名】武田 直之
【テーマコード(参考)】
5K048
【Fターム(参考)】
5K048BA21
5K048BA34
5K048DA02
5K048EB07
5K048EB10
5K048FB05
5K048FC01
5K048HA01
5K048HA02
5K048HA03
(57)【要約】
【課題】サービスの管理コストを抑制し、柔軟にサービスデータを生成すること。
【解決手段】通信インタフェースと、演算装置と、記憶装置とを備え、記憶装置は、現場に設置されたセンサから取得される現場データの仕様を説明する現場データ説明情報と、通信インタフェースを介して提供するサービスデータの仕様を説明するサービスデータ説明情報と、現場データ説明情報及び/又はサービスデータ説明情報に基づいて、現場データ及び/又はサービスデータの仕様を変換する変換ルールと、現場データに由来する所定のデータに対する演算を定義することで、仮想のセンサであるソフトセンサーの出力を生成するソフトセンサー演算管理テーブルとを記憶し、演算装置は、通信インタフェースがサービスデータの要求を受け付けた場合に、当該要求に基づいて変換及び/又は演算を実行することで、要求を満たすサービスデータを現場データから生成して提供する。
【選択図】
図1
【特許請求の範囲】
【請求項1】
通信インタフェースと、
演算装置と、
記憶装置とを備え、
前記記憶装置は、
現場に設置されたセンサから取得される現場データの仕様を説明する現場データ説明情報と、
前記通信インタフェースを介して提供するサービスデータの仕様を説明するサービスデータ説明情報と、
前記現場データ説明情報及び/又は前記サービスデータ説明情報に基づいて、前記現場データ及び/又は前記サービスデータの仕様を変換する変換ルールと、
前記現場データに由来する所定のデータに対する演算を定義することで、仮想のセンサであるソフトセンサーの出力を生成するソフトセンサー演算管理テーブルと
を記憶し、
前記演算装置は、前記通信インタフェースが前記サービスデータの要求を受け付けた場合に、当該要求に基づいて前記変換及び/又は前記演算を実行することで、前記要求を満たすサービスデータを前記現場データから生成して提供する
ことを特徴とするデータ提供装置。
【請求項2】
前記演算装置は、前記サービスデータの要求を受け付けた場合に、前記現場データ説明情報、前記サービスデータ説明情報、前記変換ルール及び/又は前記ソフトセンサー演算管理テーブルを参照し、必要な現場データを特定し、特定した現場データを取得することを特徴とする請求項1に記載のデータ提供装置。
【請求項3】
前記変換ルールは、センシング時刻の粒度を変換するルール、単位を変換するルール、変換元のデータが不足した場合における値の補完のルールを含むことを特徴とする請求項1に記載のデータ提供装置。
【請求項4】
前記ソフトセンサー演算管理テーブルは、入力値、演算の内容、演算の順序、出力データを設定することを特徴とする請求項1に記載のデータ提供装置。
【請求項5】
前記演算装置は、前記現場データに対して前記変換を行った上で前記演算の入力とし、前記演算の出力に対して前記変換を行って前記サービスデータを生成することを特徴とする請求項1に記載のデータ提供装置。
【請求項6】
前記演算装置は、前記演算の新規登録を受け付け可能であることを特徴とする請求項1に記載のデータ提供装置。
【請求項7】
前記演算装置は、前記演算の新規登録を受け付けた場合に、当該演算の整合性を検証し、検証結果を出力することを特徴とする請求項6に記載のデータ提供装置。
【請求項8】
現場に設置されたセンサと、
通信インタフェースと、
演算装置と、
記憶装置とを備え、
前記記憶装置は、
前記センサから取得される現場データの仕様を説明する現場データ説明情報と、
前記通信インタフェースを介して提供するサービスデータの仕様を説明するサービスデータ説明情報と、
前記現場データ説明情報及び/又は前記サービスデータ説明情報に基づいて、前記現場データ及び/又は前記サービスデータの仕様を変換する変換ルールと、
前記現場データに由来する所定のデータに対する演算を定義することで、仮想のセンサであるソフトセンサーの出力を生成するソフトセンサー演算管理テーブルと
を記憶し、
前記演算装置は、前記通信インタフェースが前記サービスデータの要求を受け付けた場合に、当該要求に基づいて前記変換及び/又は前記演算を実行することで、前記要求を満たすサービスデータを前記現場データから生成して提供する
ことを特徴とするデータ提供システム。
【請求項9】
データ提供装置が、
自装置が提供するデータであるサービスデータについて、提供の要求を受け付けるステップと、
現場に設置されたセンサで取得される現場データの仕様を説明する現場データ説明情報と、前記サービスデータの仕様を説明するサービスデータ説明情報と、前記現場データ説明情報及び/又は前記サービスデータ説明情報に基づいて、前記現場データ及び/又は前記サービスデータの仕様を変換する変換ルールと、前記現場データに由来する所定のデータに対する演算を定義することで、仮想のセンサであるソフトセンサーの出力を生成するソフトセンサー演算管理テーブルとを参照するステップと、
前記参照の結果に音づいて現場データを取得するステップと、
前記取得した現場データを用いて前記変換及び/又は前記演算を実行し、前記要求を満たすサービスデータを生成するステップと、
前記生成したサービスデータを提供するステップと
を含むことを特徴とするデータ提供方法。
【発明の詳細な説明】
【技術分野】
【0001】
本発明はデータ提供装置、データ提供システム及びデータ提供方法に関し、例えば、工場の生産ラインなどの現場から現場データを取得し、取得した現場データを提供するシステムに適用して好適なものである。
【背景技術】
【0002】
近年、ビックデータを活用したサービスの提供を目的として、工場設備や現場の機器などから収集したデータ(以下、これを現場データと呼ぶ)を一括して管理することが可能なデータ管理システムが提供されている。
なお、以下においては、工場内で計測されたセンサ値等を元に、可視化などのサービスに用いるデータを「サービスデータ」と呼ぶものとする。このようなサービスは、例えば、Webサーバからなるサービス装置によって利用者に提供される。
【0003】
現場データは、それぞれ種類や構造が異なっている。更に、サービス装置から提供されるデータはサービス利用者の目的に合わせて情報が選択されるため、現場データとサービスデータの間には呼び名やデータベーステーブルにおける差が生ずる。
例えば、特許文献1では、データベーステーブルの意味、つまりコンテキストに着目する記載はあるが、データを絞り込むために活用しているにすぎず、現場データとサービスデータの間の呼び名やデータベーステーブルにおける差を解消することはできず、また、管理対象も登録されたデータに前後関係の意味や時刻の概念に着目する発明にはなっていない。また特許文献2では、複数の現場システムからデータを統合して利用する場合、異なるテーブルレイアウトから現場データを取得して共通のデータベースにて管理するためのクエリ変換装置を備えたデータ管理システムが開示されている。
【0004】
近年では、ETLと呼ばれる技術により、データを抽出(Extract)し、目的に応じて変換(Transform)し、データを必要とするサービスに合わせたデータベーステーブルに格納(Load)する技術が活用され、多段のデータベーステーブルが多数生成されるようになってきている。
【先行技術文献】
【特許文献】
【0005】
【特許文献1】特開2015-210818号公報
【特許文献2】特開2013-149173号公報
【発明の概要】
【発明が解決しようとする課題】
【0006】
現場データを収集する現場システムの現場データを利用する場合、サービスが利用するサービスデータとの差を埋めるために、特許文献1、特許文献2などETLの技術の活用も考えられる。
しかしながら、これらの技術では、データベース記憶領域を解放できないまま増加の一途をたどる問題が発生する。また、複数の現場データを利用する場合、名称の変換や各現場データの粒度、データ収集頻度などの差を意識した簡単な変換は行われるが、複数のデータを用いて、自動的に処理できる制御命令群を使い、新たな意味を持つデータ列を生成する機能を持っていない問題が存在した。
【0007】
本発明は以上の点を考慮してなされたもので、柔軟にサービスデータを生成し得るデータ提供装置、データ提供システム及びデータ提供方法を提案しようとするものである。
【課題を解決するための手段】
【0008】
かかる課題を解決するため、代表的な本発明のデータ提供装置の1つは、通信インタフェースと、演算装置と、記憶装置とを備え、前記記憶装置は、現場に設置されたセンサから取得される現場データの仕様を説明する現場データ説明情報と、前記通信インタフェースを介して提供するサービスデータの仕様を説明するサービスデータ説明情報と、前記現場データ説明情報及び/又は前記サービスデータ説明情報に基づいて、前記現場データ及び/又は前記サービスデータの仕様を変換する変換ルールと、前記現場データに由来する所定のデータに対する演算を定義することで、仮想のセンサであるソフトセンサーの出力を生成するソフトセンサー演算管理テーブルとを記憶し、前記演算装置は、前記通信インタフェースが前記サービスデータの要求を受け付けた場合に、当該要求に基づいて前記変換及び/又は前記演算を実行することで、前記要求を満たすサービスデータを前記現場データから生成して提供することを特徴とする。
また、代表的な本発明のデータ提供システムの一つは、現場に設置されたセンサと、通信インタフェースと、演算装置と、記憶装置とを備え、前記記憶装置は、前記センサから取得される現場データの仕様を説明する現場データ説明情報と、前記通信インタフェースを介して提供するサービスデータの仕様を説明するサービスデータ説明情報と、前記現場データ説明情報及び/又は前記サービスデータ説明情報に基づいて、前記現場データ及び/又は前記サービスデータの仕様を変換する変換ルールと、前記現場データに由来する所定のデータに対する演算を定義することで、仮想のセンサであるソフトセンサーの出力を生成するソフトセンサー演算管理テーブルとを記憶し、前記演算装置は、前記通信インタフェースが前記サービスデータの要求を受け付けた場合に、当該要求に基づいて前記変換及び/又は前記演算を実行することで、前記要求を満たすサービスデータを前記現場データから生成して提供することを特徴とする。
また、代表的な本発明のデータ提供方法の一つは、データ提供装置が、自装置が提供するデータであるサービスデータについて、提供の要求を受け付けるステップと、現場に設置されたセンサで取得される現場データの仕様を説明する現場データ説明情報と、前記サービスデータの仕様を説明するサービスデータ説明情報と、前記現場データ説明情報及び/又は前記サービスデータ説明情報に基づいて、前記現場データ及び/又は前記サービスデータの仕様を変換する変換ルールと、前記現場データに由来する所定のデータに対する演算を定義することで、仮想のセンサであるソフトセンサーの出力を生成するソフトセンサー演算管理テーブルとを参照するステップと、前記参照の結果に音づいて現場データを取得するステップと、前記取得した現場データを用いて前記変換及び/又は前記演算を実行し、前記要求を満たすサービスデータを生成するステップと、前記生成したサービスデータを提供するステップとを含むことを特徴とする。
【発明の効果】
【0009】
本発明によれば、サービスの管理コストを抑制し柔軟にサービスデータを生成し得るデータ提供装置、データ提供システム及びデータ提供方法を実現できる。
【図面の簡単な説明】
【0010】
【
図1】データ提供装置およびシステムの全体構成を示すブロック図である。
【
図2】データ提供装置の論理構成を示すブロック図である。
【
図3】現場データ説明情報管理テーブルの構成を示す概念図である。
【
図4】サービスデータ説明情報管理テーブルの構成を示す概念図である。
【
図5】変換ルール管理テーブルの構成を示す概念図である。
【
図6】ソフトセンサー演算管理テーブルを説明するための説明図である。
【
図7】現場データ説明情報登録画面の構成を示す概念図である。
【
図8】サービスデータ説明情報登録画面の構成を示す概念図である。
【
図9】変換ルール登録画面の構成を示す概念図である。
【
図10】ソフトセンサー演算登録画面の構成を示す概念図である。
【
図11】説明情報登録処理の処理手順を示すフローチャートである。
【
図12】変換ルール登録処理の処理手順を示すフローチャートである。
【
図13】ソフトセンサー演算の処理手順を示すフローチャートである。
【
図14】サービスデータ取得処理の処理手順を示すフローチャートである。
【
図15】ソフトセンサー演算の処理およびデータ取得結果画面の概念図である。
【発明を実施するための形態】
【0011】
以下、本発明を実施するための形態例について、図を参照して説明する。
図1~
図10を用いて、データ提供装置およびシステムの構成について説明し、
図11~
図13を用いて、データ提供装置およびシステムにおけるデータ提供に向けた設定処理フローについて説明する。また、
図14を用いて、データ提供装置およびシステムにおいて、データ提供装置がサービスからのデータ要求に従い現場データを取得し、データ変換を行い、サービスへデータを提供する処理フローについて説明する。さらに、
図15を用いて、ソフトセンサー演算の処理およびデータ取得結果を表示する画面について説明する。
なお、本明細書及び図において、実質的に同一の機能又は構成を有する構成要素については、同一の符号を付することにより重複する説明を省略する。
【0012】
図1は、データ提供装置およびシステムの内部構成例を示すブロック図である。データ提供システム1000は、サービス端末100、説明情報および演算設定端末101、データ提供装置103、現場システム(1)119a、現場システム(2)119bを備える。サービス端末100とデータ提供装置103は、通信路102により接続され、相互にデータを通信することが可能である。通信路102として、例えば、組織内のローカルネットワークやインターネット等が用いられる。同様に、データ提供装置103と説明情報および演算設定端末101、および、データ提供装置103と現場システム(1)119a、現場システム(2)119bにおいても別あるいは同一の通信路102により接続される。
【0013】
サービス端末100は、現場システム(1)119aや現場システム(2)119bのデータを利用して、エンドユーザや他の装置に対してサービスを提供するものである。このサービス端末100は、例えば、サービスA、Bといったサービス毎に構成されており、図中では、エンドユーザにサービスAを提供可能なサービス端末100が「サービス端末A」と表されている。以下の説明でサービスA、Bを区別しない場合は「サービス」と総称する。
【0014】
サービス端末100は、通信路102を介してデータ提供装置103にデータ要求を送信し、サービスに必要なデータをデータ提供装置103から取得する。本データ取得の詳細処理フローについては
図14にて後述する。
【0015】
説明情報および演算設定端末101は、データ提供装置103が保持している現場データ説明情報、サービスデータ説明情報、変換ルールに対して、設定・修正などの各種管理を行う端末である。
現場データ説明情報は、現場システム(1)119aや現場システム(2)119bが保持している現場データのデータ型、データ精度、単位、用途など、現場データを説明する様々な情報である。
【0016】
サービスデータ説明情報は、サービス端末100がデータ提供装置に要求するサービスデータのデータ型、精度、単位、用途など、サービスデータを説明する様々な情報である。
変換ルールは、現場データをソフトセンサー演算への入力データとして整えるための変換と、ソフトセンサー演算出力をサービスデータへと整えるための変換を示す情報であり、例えば、測定データの補間や線形補間などデータ補間時の補間方法、平均値や相関値などのデータ変換時の変換ルール等を含む。
【0017】
データ提供装置103は、サービス端末100からのサービスデータ要求を元に、サービスデータ生成に必要な現場データを現場システム(1)119aや現場システム(2)119bから取得し、必要なデータ変換を行いサービス端末100にサービスデータを提供する装置であり、データアクセスI/F104、データ生成部105、データ変換実行部106、クエリ生成部107、クエリ実行制御部108、取得データ受信部109、通信I/F110、現場データ格納部126、説明情報アクセスI/F111、説明情報登録部112、管理画面生成部113、説明情報および演算設定管理部114、現場データ説明情報管理テーブル115、サービスデータ説明情報管理テーブル116、変換ルール管理テーブル117、ソフトセンサー演算管理テーブル118から構成される。
【0018】
データアクセスI/F104は、サービス端末100からのデータ取得要求、および、サービス端末100へのデータ提供に関するインターフェースを提供するものであり、例えばWebAPIのRESTなどがその一つである。
データ生成部105は、サービス端末100からのデータ取得要求のあったサービスデータを生成する機能ブロックである。
【0019】
具体的には、説明情報および演算設定管理部114経由で変換ルール管理テーブル117の情報を参照し、必要な現場データ取得のためにクエリ生成部107にクエリ生成要求を行い、取得データ受信部109経由で現場データを取得し、取得した現場データに対するデータ変換処理をデータ変換実行部106に指示する。これらの詳細処理フローについては、
図14にて説明する。また、データ生成部105は、データ取得要求を受け付ける前に、現場システム119が備える現場データを取得し、後述する現場データ格納部126に蓄積させる機能ブロックである。
【0020】
データ変換実行部106は、データ生成部105からのデータ変換要求に従ってデータ変換を行う機能ブロックである。
クエリ生成部107は、データ生成部105からのクエリ生成要求に従い、後述する現場データ格納部126から現場データを取得するためのクエリを生成し、クエリ実行制御部108に対し、生成したクエリの実行を指示する機能ブロックである。また、クエリ生成部107は、データ生成部105からのクエリ要求に従い、現場システム119から現場データを取得するためのクエリを生成し、クエリ実行制御部108に対し、生成したクエリの実行を指示する機能ブロックである。
【0021】
クエリ実行制御部108は、クエリ生成部107からのクエリ実行指示に従って、通信I/F110経由で後述する現場データ格納部126や、現場システムに対してクエリを発行する機能ブロックである。
【0022】
取得データ受信部109は、クエリ実行制御部108が発行したクエリに対する後述する現場データ格納部126や、現場システムからの応答である現場データを通信I/F110経由で受信し、データ生成部105や後述する現場データ格納部126に渡す機能ブロックである。
【0023】
通信I/F110は、後述する現場データ格納部126や、現場システム(1)119a、現場システム(2)119bと通信路102を介して通信するためのインタフェース機能を提供するものである。
【0024】
現場データ格納部126は、クエリ実行制御部108によって発行された、現場システム119から現場データを取得するためのクエリに対する、現場システム119からの応答である現場データを蓄積する。また、クエリ実行制御部108によって発行された、現場データを取得するためのクエリに対し、現場データを含む応答を返す。
【0025】
説明情報アクセスI/F111は、説明情報端末101からのデータ取得要求、および、説明情報端末101へのデータ提供に関するインタフェースを提供するものであり、例えばWebAPIのRESTなどがその一つである。説明情報登録部112は、説明情報端末101から受信した各種説明情報の登録・変更・削除要求に応じて、115~118の各種管理テーブルの情報の登録・変更・削除を行う機能ブロックである。
【0026】
管理画面生成部113は、説明情報端末101からの説明情報管理画面要求に応じて、115~118の各種管理テーブルの情報を取得し、説明情報管理画面を生成する機能ブロックである。
【0027】
説明情報および演算設定管理部114は、115~118の各種管理テーブルを管理する機能ブロックであり、データ生成部105や説明情報登録部112からの要求に応じて、各種管理テーブルに対する新規データ登録、データ変更、データ削除などを行う。
【0028】
現場システム(1) 119aは、データ提供装置103と現場システム(1)119bを接続するゲートウェイ123、現場システムをセンシングするセンサ群120、それらセンサを制御するコントローラ121、センサ120がセンシングした現場データを蓄積する現場データ格納部(1)122から構成される。
【0029】
現場システム(2)119bは、データ提供装置103と現場システム(2)119bを接続する通信路102でのデータのやり取りを行うための通信I/F125と、現場システム(2)の生産計画などを制御するために収集したデータを蓄積するデータベース、例えば、MESやDCSといった既存のデータベースである現場データ格納部(2)124から構成される。
【0030】
図2を用いて、データ提供装置103のハードウェア構成について説明する。データ提供装置103は、各種処理を行うホストCPU(Central Processing Unit)201、ホストメモリ202、周辺I/F203、記憶装置204、通信I/F205、およびバス206から構成される。そして、ホストCPU201、ホストメモリ202、周辺I/F203、記憶装置204、および通信I/F205は、バス206を介して接続され、相互に情報をやり取り可能となっている。
【0031】
このうちホストCPU201は、記憶装置204に保持しているプログラムを実行する演算装置である。また、ホストメモリ202は、ホストCPU201が上述のプログラムを実行する際に、ワーキングメモリおよび入出力データの一時バッファとして用いる揮発性記憶装置である。また、周辺I/F203は、マウス、キーボード、モニタ等の入出力装置や、USB(Universal Serial Bus)メモリ等の外部ストレージ等の各種周辺機器、をデータ提供装置103に接続するインタフェースである。
【0032】
また、記憶装置204は、磁気ディスク装置、フラッシュROM(Read Only Memory)等から構成され、OS、各種ドライバ、各種アプリケーションプログラムや、プログラムで使用される各種情報(例えば、管理者または保守者によって設定される情報等)を格納している。
【0033】
また、通信I/F205は、データ提供装置103が通信路102を介して、サービス端末100や説明情報および演算設定端末101や現場システム(1)119aや現場システム(2)119bと通信を行う際のインタフェースを提供する。この通信I/F205は、2つ以上あっても構わない。
【0034】
次に、データ提供装置103が備える各種管理テーブル115~118に格納される情報について、
図3~
図6を用いて説明する。
図3は、現場データ説明情報管理テーブル115のテーブル構成である。現場データ説明情報管理テーブル115は、データID301、説明情報種別302、説明情報303の各情報を格納している。データ名301の列は、全ての現場データを一意に識別するための現場データ名が格納されており、例えば現場システム(1)で動作するセンサ(1)のように、各センサを識別するための情報(ID、名称等)が格納されている。説明情報種別302の列は、現場データの説明情報を分類するための種別情報が格納されており、例えば周期データの周期を表す「時刻粒度」や、データの単位を表す「単位」などが格納される。説明情報303の列は、現場データの説明情報が格納されている。例えば、行304のレコードは、現場システム(1)のセンサ(1)で計測されたデータの「時刻粒度」が「100ms」、すなわち、「100ms」ごとの周期データであることを示している。同じく行305のレコードは、現場システム(1)のセンサ(1)で計測されたデータの「単位」が「K」であることを示している。
【0035】
図4は、サービスデータ説明情報管理テーブル116のテーブル構成である。サービスデータ説明情報管理テーブル116は、データ利用者が受け取ることを期待するサービスデータの説明情報が管理されている。
【0036】
例えば、データ名401、説明情報種別402、説明情報403の各情報を格納している。データ名401の列は、全てのサービスデータ(サービスがデータ提供装置に要求するデータ)を一意に識別するためのデータ名が格納されており、例えばサービスAで利用するデータAのように、各サービスデータを識別するための情報(ID、名称等)が格納されている。説明情報種別402、説明情報403については、それぞれ
図3の説明情報種別302、説明情報303と同じであるため説明を省略する。例えば、行404のレコードは、サービスAが要求するデータAの時刻粒度が「1sec」であることを示している。
【0037】
図5は、変換ルール管理テーブル117のテーブル構成である。変換ルール管理テーブル117は、対象入力データID501、変換後データID502、時刻粒度変換ルール503、データ変換ルール504、不足時ルール505の各情報を格納している。対象入力データID501の列は、変換前の元データを一意に識別するためのデータ名が格納されている。ここでは簡単のためにデータソースは1つしか記載していないが、複数の変換前データIDを指定してもよい。時刻粒度変換ルール503の列は、対象入力データID501のデータの時刻粒度から、変換後データID502のデータの時刻粒度に変換(リサンプリング)する場合に適用される変換ルールが格納されている。データ変換ルール504の列は、対象入力データID501のデータ値から、変換後データID502のデータ値に変換する場合に適用されるデータ変換ルールが格納されている。ここでは「単位変換」の例のみが記載されているが、これに限らず、各種四則演算や、任意の変換用の関数を記載してもよい。不足時ルール505の列は、対象入力データID501が欠損していたり、もしくは時刻粒度変換やデータ変換を行った結果、変換後データID502のデータが不足した場合に適用される補間ルールが格納されている。
【0038】
図6は、ソフトセンサー演算管理テーブル118を説明するための説明図である。ソフトセンサー演算管理テーブル118は、演算処理の順序と処理の識別、及び演算に必要な入力値と出力データを設定することで、仮想的なセンサの出力を管理する。
図6には、演算処理に使用可能なソフトセンサー演算子を例示している。同図に示すように、ソフトセンサー演算子は、処理ID601、ソフトセンサー演算子602、設定ID数603、説明情報604、演算に使う入力名605、演算結果を識別してアクセス可能にする出力名606の各情報が対応付けられる。
処理ID601の列は、処理の内容を一意に識別するためのIDが格納されている。このIDは、ソフトセンサー演算子IFなどを使い利用する式を変えるときなどに使う。ソフトセンサー演算子602は、ユーザが設定した計算演算子が格納される。設定ID数603は演算子にて処理する入力値の量を管理するための数値である。説明情報604は、処理内容の説明である。演算に使う入力名605は、各ソフトセンサー演算子602に従った入力名を設定する。出力名606は次のソフトセンサー演算子に引き継ぐ情報、もしくはサービスデータとして提供する前の変換処理に渡すための情報を識別するためのIDを格納する。
【0039】
続いて、説明情報および演算設定端末101が
図3~
図6に示した各種説明情報や変換ルールを管理するための管理画面について
図7~
図10を用いて説明する。
図7は、現場データ説明情報登録画面701の一例である。本画面は、説明情報および演算設定端末101が現場データ説明情報を登録、変更、削除するために用いるユーザインタフェースであり、現場テーブル名選択部702、登録/更新 確定ボタン703、データ名入力部704、追加ボタン705、データ名選択部706、削除ボタン707、説明情報種別入力部708、追加ボタン709、説明情報種別選択部710、削除ボタン711、説明情報入力部712、編集ボタン713から構成されている。
【0040】
現場テーブル名選択部702は、説明情報の登録・変更・削除を行う現場テーブルを選択するためのI/Fである。直接入力して指定してもよいし、既に登録されている現場テーブルの一覧から選択してもよい。
登録/更新 確定ボタン703は、本画面で登録・変更・削除を行った結果を確定するためのI/Fであり、確定されると
図3~
図6の各テーブルで管理されている情報が更新される。
データ名入力部704および追加ボタン705は、説明情報を登録する対象として新たに現場データを追加する際に用いるI/Fである。データ名入力部704にデータ名を入力し、追加ボタン705を押下することにより、説明情報入力部712に新規データ名の行が追加される。
【0041】
データ名選択部706および削除ボタン707は、説明情報入力部712に表示されている現場データの行を削除する際に用いるI/Fである。データ名選択部706には、現在登録されている全データ名が表示され選択できる。データ名選択部706にて削除したいデータ名を選択し、削除ボタン707を押下することにより、選択された現場データの行が説明情報入力部712から削除される。
説明情報種別入力部708はおよび追加ボタン709は、説明情報入力部712に新規に説明情報種別を追加するためのI/Fである。説明情報種別入力部708に、追加したい説明情報種別を入力し、追加ボタン709を押下すると、説明情報入力部712に新たな説明情報種別の列が追加される。
説明情報種別選択部710および削除ボタン711は、説明情報入力部712から説明情報種別を削除するためのI/Fである。説明情報種別選択部710には現在登録されている全説明情報種別が表示されており、説明情報種別選択部710にて削除したい説明情報種別を選択し、削除ボタン711を押下することにより、選択された説明情報種別の列が、説明情報入力部712から削除される。説明情報入力部712は、現在登録されている各種現場データの説明情報を編集するためのI/Fであり、編集したい説明情報のセルを選択して直接入力することにより、内容を編集する。また、これら情報は、編集や削除による不整合防止の管理がなされている。編集時は編集ボタン713を押下することにより編集可能となる。
【0042】
図8は、サービスデータ説明情報登録画面801の一例である。本画面は、説明情報および演算設定端末101がサービスデータ説明情報を登録、変更、削除するために用いるユーザインタフェースであり、サービステーブル名選択部802、登録/更新 確定ボタン803、データ名入力部804、追加ボタン805、データ名選択部806、削除ボタン807、説明情報種別入力部808、追加ボタン809、説明情報種別選択部810、削除ボタン811、説明情報入力部812、編集指示部813から構成されている。本画面は、
図7の現場データをサービスデータに読み替えたものと同じであるため、説明を省略する。
【0043】
図9は、変換ルール登録画面901の一例である。本画面は、説明情報および演算設定端末101が現場データ等に対し、ソフトセンサー演算を実施する前に入力データを生成するための変換ルールと、ソフトセンサー演算を実施した後にサービスデータを生成するための変換ルールを登録、変更、削除するために用いるユーザインタフェースであり、変換後のテーブル名選択部902、登録/更新 確定ボタン903、データ名選択部904、データソース選択部905、時刻粒度変換ルール選択部906、データ変換ルール選択部907、不足時ルール選択部908、ルール追加ボタン909、変換ルール一覧910、編集指示部911から構成されている。
【0044】
変換後のテーブル名選択部902は、変換ルールを登録するサービスデータのテーブルや、ソフトセンサー演算入力のための一時的なデータテーブルを指定するためのI/Fである。本I/Fでテーブル名を指定すると、そのサービステーブルに関する変換ルール一覧が、変換ルール一覧910に表示される。
登録/更新 確定ボタン903は、本画面で登録・変更・削除を行った結果を確定するためのI/Fであり、確定されると
図5の変換ルール管理テーブル117で管理されている情報が更新される。
データ名選択部904は、変換ルールを設定する対象のサービスデータ名を選択するためのI/Fであり、変換後のテーブル名選択部902で指定されたテーブルのデータ名一覧が表示されている。
データソース選択部905は、データ名選択部904で選択したサービスデータを生成するための元データを指定するためのI/Fである。本画面例では、単一のデータソースを選択するI/Fとなっているが、データソースを複数選択できるようにしてもよい。また、データソースは、現場データを指定してもよいし、ソフトセンサー演算によって生成された一時的なデータテーブルを指定してもよい。
【0045】
時刻粒度変換ルール選択部906は、データ名選択部904で指定したデータの時刻粒度(サンプリングレート)とデータソース選択部905で指定したデータソースの時刻粒度が異なる場合に、どのように時刻粒度を変換するかを指定するためのI/Fである。
データ変換ルール選択部907は、データ名選択部904で指定したデータの値を生成するために、データソース選択部905で指定したデータソースの値にどのようなデータ変換を行うかを指定するI/Fである。
不足時ルール選択部908は、データソースのデータが、欠損する等の何らかの理由で不足している場合に、どのように補間するかを指定するためのI/Fであり、例えば前値補間や線形補間等がある。
ルール追加ボタン909は、データ名選択部904~不足時ルール選択部908で指定した内容を、新規変換ルールとして追加するためのI/Fであり、本I/Fを押下することで変換ルール一覧910の表示に追加される。
変換ルール一覧910は、テーブル名選択部902で指定されたサービステーブルに関する変換ルールの一覧表示、およびそれらの編集を行うためのI/Fであり、編集したい変換ルールのセルを選択して直接入力することにより、内容を編集する。変換ルールの編集を行う場合は、編集指示部911を押下して各種操作を行う。
【0046】
図10は、ソフトセンサー演算登録画面1001の一例である。本画面は、説明情報および演算設定端末101が、ソフトセンサーとして様々な演算処理や、判定処理、分岐処理などを登録、変更、削除するために用いるユーザインタフェースである。
【0047】
ソフトセンサー演算入力部1002は、処理を行う演算子を入力するユーザインタフェースである。登録/更新 確定ボタン1003、演算を行う入力値用の入力部1004、ソフトセンサー演算処理後の出力データ名を登録する入力部1005、ソフトセンサーの演算を追加するための追加ボタン1006、入力された情報を確認できるユーザインタフェース1007ないし1012、編集ボタン1013にて構成されている。
【0048】
登録/更新 確定ボタン1003は、本画面で登録・変更・削除を行った結果を確定するためのI/Fであり、確定されると
図3~
図6の各テーブルで管理されている情報が更新される。ソフトセンサー演算処理一覧を表示する1008ないし1012には、現在登録されている全演算処理が定義された順番で実行される意味で表示される。編集時は編集ボタン1013を押下することにより編集可能となる。これら情報は、登録/更新確定ボタン1003が押されると演算に不整合が発生していないかの検証が行われる。
【0049】
図11は、ユーザが説明情報および演算設定端末101を用いて現場データもしくはサービスデータの説明情報を登録する際の処理フローを説明したフローチャートである。以下、本フローチャートでは現場データの説明情報の登録処理を前提に説明を行うが、サービスデータの説明情報の登録処理については、現場データをサービスデータに読み替えればよい。
【0050】
データ提供装置103の管理画面生成部113が、説明情報アクセスI/F111を介して、説明情報および演算設定端末101から説明情報登録を行うための現場データ説明情報登録画面の要求を受信すると、説明情報および演算設定管理部114に現場データ説明情報一覧を要求し、管理している説明情報一覧を取得する(ステップ1101)。
【0051】
次に管理画面生成部113は、取得した説明情報一覧を元に、現場データ説明情報登録画面を生成し(ステップ1102)、説明情報アクセスI/F111を介して説明情報および演算設定端末101に説明情報登録画面を返信する(ステップ1103)。
ユーザは説明情報および演算設定端末101を用いて説明情報登録画面で画面入力操作を行う。説明情報および演算設定端末101はユーザの画面入力を検知する(ステップ1104)。説明情報および演算設定端末101は、画面入力が「登録/更新確定」、すなわち、
図7の登録/更新確定ボタン703が押下されたかどうかを確認し(ステップ1105)、「登録/更新確定」の場合、ステップ1108に進む。
【0052】
画面入力が「登録/更新確定」でない場合、説明情報および演算設定端末101は、画面入力が「追加 or 削除」、すなわち、
図7の追加ボタン705、709もしくは削除ボタン707、711が押下されたかどうかを確認する(ステップ1106)。画面入力が「追加 or 削除」の場合は、説明情報および演算設定端末101はユーザの操作に応じて、現場データ説明情報登録画面の説明情報入力部712の一覧情報が更新された画面を生成する(ステップ1107)。その後、再度ユーザの画面入力を待ち受ける。ステップ1106にて、画面入力が「追加 or 削除」でない場合、説明情報および演算設定端末101は再度ユーザの画面入力を待ち受ける。
【0053】
ステップ1108に進んだ場合、説明情報および演算設定端末101は、データ提供装置103の管理画面生成部113と通信を行い
図7の編集操作により不整合が起きていないかどうかを確認し、入力情報に対する関連情報の整合性処理を行う(ステップ1108)。最後に、管理画面生成部113は、ユーザが画面上で更新した情報一式を説明情報登録部112に渡して、現場データ説明情報管理テーブル115を更新する(ステップ1109)。
【0054】
図12は、ユーザが説明情報および演算設定端末101を用いて変換ルールを登録する際の処理フローを説明したフローチャートである。
データ提供装置103の管理画面生成部113が、説明情報アクセスI/F111を介して、説明情報および演算設定端末101から変換ルール登録を行うための変換ルール登録画面の要求を受信すると、説明情報および演算設定管理部114に変換ルール一覧を要求し、変換ルール管理テーブル117に保持している変換ルール一覧を取得する(ステップ1201)。
【0055】
次に管理画面生成部113は、取得した変換ルール一覧を元に、変換ルール登録画面を生成し(ステップ1202)、説明情報アクセスI/F111を介して説明情報および演算設定端末101に変換ルール登録画面を返信する(ステップ1203)。ユーザは、説明情報および演算設定端末101を用いて変換ルール登録画面で画面入力操作を行う。その後、説明情報および演算設定端末101によるユーザの画面入力を検知する(ステップ1204)。
【0056】
ユーザによる説明情報および演算設定端末101の画面入力が「登録/更新確定」、すなわち、
図9の登録/更新確定ボタン903が押下されたかどうかを確認し(ステップ1205)、「登録/更新確定」の場合、ステップ1208に進む。画面入力が「登録/更新確定」でない場合、ユーザによる説明情報および演算設定端末101の画面入力が「追加 or 削除」、すなわち、
図9のルール追加ボタン909もしくは削除ボタン(編集指示部911)が押下されたかどうかを確認する(ステップ1206)。画面入力が「追加 or 削除」の場合は、ユーザによる説明情報および演算設定端末101のユーザの操作に応じて、変換ルール登録画面の変換ルール一覧910の一覧情報が更新された画面を作成する(ステップ1207)。その後、再度ユーザの画面入力を待ち受ける。
【0057】
ステップ1206にて、画面入力が「追加 or 削除」でない場合、再度、ユーザによる説明情報および演算設定端末101の画面入力を待ち受ける。ステップ1208に進んだ場合、説明情報および演算設定端末101は、データ提供装置103の管理画面生成部113と通信を行い
図9の編集操作により不整合が起きていないかどうかを確認し、入力情報に対する関連情報の整合性処理を行う。最後に、管理画面生成部113は、ユーザが画面上で更新した情報一式を説明情報登録部112に渡して、変換ルール管理テーブル117を更新する(ステップ1209)。
【0058】
図13は、ユーザがソフトセンサー演算を、説明情報および演算設定端末101を用いて登録する際の処理フローを説明したフローチャートである。
データ提供装置103の管理画面生成部113が、説明情報アクセスI/F111を介して、説明情報および演算設定端末101から、ソフトセンサー演算登録画面の要求を受信すると、説明情報および演算設定管理部114にソフトセンサー演算一覧を要求し、ソフトセンサー演算管理テーブル118に保持している変換ルール一覧を取得する(ステップ1301)。
【0059】
次に管理画面生成部113は、取得したソフトセンサー演算一覧を元に、変換ルール登録画面を生成し(ステップ1302)、説明情報アクセスI/F111を介して説明情報および演算設定端末101に変換ルール登録画面を返信する(ステップ1303)。ユーザが説明情報および演算設定端末101を用いて、ソフトセンサー演算登録画面で画面入力操作を行う。その後、説明情報および演算設定端末101によるユーザの画面入力を検知する(ステップ1304)。説明情報および演算設定端末101の画面入力が「登録/更新確定」、すなわち、
図10の登録/更新確定ボタン1003が押下されたかどうかを確認し(ステップ1305)、「登録/更新確定」の場合、ステップ1308に進む。
【0060】
画面入力が「登録/更新確定」でない場合、説明情報および演算設定端末101の画面入力が「追加 or 削除」、すなわち、
図10のルール追加ボタン1006もしくは削除ボタン1007が押下されたかどうかを確認する(ステップ1306)。画面入力が「追加 or 削除」の場合は、説明情報および演算設定端末101のユーザの操作に応じて、ソフトセンサー演算登録画面の一覧1001が更新された画面を作成する(ステップ1307)。その後、再度ユーザの画面入力を待ち受ける。ステップ1306にて、画面入力が「追加 or 削除」でない場合、説明情報および演算設定端末101は再度ユーザの画面入力を待ち受ける。
【0061】
ステップ1308に進んだ場合、説明情報および演算設定端末101は、データ提供装置103の管理画面生成部113と通信を行い
図10の編集操作により不整合が起きていないかどうかを確認し、入力情報に対する関連情報の整合性処理を行う。最後に、管理画面生成部113は、ユーザが画面上で更新した情報一式を説明情報登録部112に渡して、ソフトセンサー演算管理テーブル118を更新する(ステップ1309)。
【0062】
図14は、サービス端末100がデータ提供装置103にサービスデータを要求した際の、データ提供装置103の処理フローを説明したフローチャートである。データ提供装置103のデータ生成部105が、データアクセスI/F104経由でサービスデータ要求を受信すると、サービスデータ要求に含まれる、サービスデータのテーブル名、データ名、要求期間を説明情報および演算設定管理部114に渡し、変換ルール管理テーブル117から、当該要求期間内に有効かつ当該サービスデータに関する変換ルールの一覧を取得する(ステップ1401)。次に、ソフトセンサー演算管理テーブル118から、ソフトセンサー演算の一覧を取得する(ステップ1402)。
【0063】
以上のステップ1401とステップ1402により、データ生成部105は、取得したデータ生成に必要なデータソースと変換ルール、ソフトセンサー演算を抽出する。そして、データ生成部105は、データソースから必要なデータを取得する(ステップ1403)。
具体的には、クエリ生成部107にデータ取得のためのクエリ生成を指示し、生成されたクエリをクエリ実行制御部108が実行することにより、通信I/F110および取得データ受信部109経由で、現場データ格納部126から、現場システム(1)119aや現場システム(2)119bの現場データを取得する。
【0064】
次に、データ生成部105は取得したデータに単位変換などソフトセンサー演算前データ種変換ルールの設定があるかどうか、ソフトセンサー演算設定があるかどうか、さらには受け渡し先に合わせた単位変換などソフトセンサー演算後データ種変換ルールの設定があるかどうかを確認し、データ変換処理及びソフトセンサー演算を整理する(ステップ1404)。データ生成部105は、ソフトセンサーなどの演算をすべて統合したか確認し、統合が終わったら(ステップ1405 YES)、サービスデータの生成を開始する(ステップ1406)。もし、ソフトセンサーなどの演算が全て統合されていなかったら(ステップ1405 NO)、引き続き演算の統合処理を行う。サービスデータの生成が終わった場合、データ生成部105は、サービスデータをサービス端末100へ送信する(ステップ1407)。最後にデータ生成に活用したメモリのワーク領域を解放する(ステップ1408)。
【0065】
以上、説明した実施の形態例では、現場システムで収集・蓄積する現場データと、それらを利用するサービスの間でデータそのものに要求する粒度や精度が異なった場合であっても、データ提供装置およびシステムがそれら差異を変換・吸収することができる。現場システムに変更があった場合においても、サービス側では自サービスの設定を変更することなしにサービスの提供が可能となり、現場データ利用時のサービス管理負担が軽減される。
【0066】
さらに、ソフトセンサー演算処理前にデータの変換を行うことで、柔軟なソフトセンサー演算を実施することができる。さらには、その結果をサービスデータとして加工し、ユーザが求めるデータに変換することができる。これらの作業は主記憶装置で行うのではなく、時系列データに順次実行することで、データ提供装置の有限な資源を有効活用することができる。
【0067】
本実施形態においては、サービスからのデータ取得要求に基づき現場システムからデータを取得、変換処理を行う、データ取得・要求型のデータの流れについて説明したが、現場システムからPush型でデータを送信する場合であっても、同様のデータ変換処理を実施することで適用可能である。
【0068】
上述した本発明の実施形態は、本発明の説明のための例示であり、本発明の範囲をそれらの実施形態のみに限定する趣旨ではない。当業者は、本発明の要旨を逸脱することなしに、他の様々な態様で本発明を実施することができる。
【0069】
図15は、ソフトセンサー演算の処理およびデータ取得結果画面概念図である。
図13のステップ1308の検証の結果、コンテキスト定義に問題がない場合に表示されるポップアップ情報である1501。一方検証の結果において問題が発生していた場合も表示出力される。ポップアップ情報1502は、式が不正な場合に表示される。ポップアップ情報1503は、関数の引数が範囲に収まっていないときに表示される。ポップアップ情報1504は、ソフトセンサーなどの定義において定義が循環していることが検出された場合に表示される。
画面1505は、処理ステップ1407によって送信されたサービスデータを、サービス端末100にて表示した一例となっている。物理センサー1のデータ1506や、物理センサー2のデータ1507と同様に、ソフトセンサーで生成されたデータ1508も表示される。
【0070】
上述してきたように、開示のデータ提供装置103は、通信インタフェース205と、演算装置としてのホストCPU206と、記憶装置204とを備え、前記記憶装置204は、現場に設置されたセンサから取得される現場データの仕様を説明する現場データ説明情報と、前記通信インタフェースを介して提供するサービスデータの仕様を説明するサービスデータ説明情報と、前記現場データ説明情報及び/又は前記サービスデータ説明情報に基づいて、前記現場データ及び/又は前記サービスデータの仕様を変換する変換ルールと、前記現場データに由来する所定のデータに対する演算を定義することで、仮想のセンサであるソフトセンサーの出力を生成するソフトセンサー演算管理テーブルとを記憶し、前記演算装置は、前記通信インタフェースが前記サービスデータの要求を受け付けた場合に、当該要求に基づいて前記変換及び/又は前記演算を実行することで、前記要求を満たすサービスデータを前記現場データから生成して提供する。
このため、開示のデータ提供装置103は、現場で取得される多種多様な現場データを有効に活用し、要求されるサービスデータを低コストかつ柔軟に生成することができる。
【0071】
また、前記演算装置は、前記サービスデータの要求を受け付けた場合に、前記現場データ説明情報、前記サービスデータ説明情報、前記変換ルール及び/又は前記ソフトセンサー演算管理テーブルを参照し、必要な現場データを特定し、特定した現場データを取得することを特徴とする。
このため、開示のデータ提供装置103は、記憶領域を圧迫することなく、柔軟にサービスデータを提供できる。
【0072】
また、前記変換ルールは、センシング時刻の粒度を変換するルール、単位を変換するルール、変換元のデータが不足した場合における値の補完のルールを含む。
そして、前記ソフトセンサー演算管理テーブルは、入力値、演算の内容、演算の順序、出力データを設定する。
前記演算装置は、前記現場データに対して前記変換を行った上で前記演算の入力とし、前記演算の出力に対して前記変換を行って前記サービスデータを生成する。
このように、開示のデータ提供装置103は、仕様(データ型、データ精度、単位、用途などを含む、現場データを説明する様々な情報)の変換と、演算による新たな説明情報の生成を組み合わせて用いることで、柔軟にサービスデータを提供できる。
【0073】
また、前記演算装置は、前記演算の新規登録を受け付け可能であり、前記演算の新規登録を受け付けた場合に、当該演算の整合性を検証し、検証結果を出力することができる。
このため、開示のデータ提供装置103は、新たなサービスデータの要求に対応することができる。
【符号の説明】
【0074】
100…サービス端末、101…説明情報および演算設定端末、102…通信路、103…データ提供装置、104…データアクセスI/F、105…データ生成部、106…データ変換実行部、107…クエリ生成部、108…クエリ実行制御部、109…取得データ受信部、110…通信I/F、111…説明情報アクセスI/F、112…説明情報登録部、113…管理画面生成部、114…演算設定管理部、115…現場データ説明情報管理テーブル、116…サービスデータ説明情報管理テーブル、117…変換ルール管理テーブル、118…ソフトセンサー演算管理テーブル、119a…現場システム(1)、119b…現場システム(2)、120…センサ、121…コントローラ、122…現場データ格納部(1)、123…ゲートウェイ、124…現場データ格納部(2)、125…通信I/F、1000…データ提供システム