(57)【特許請求の範囲】
【請求項１】
機器から収集したデータである収集データの中から外部装置に送信するデータである送信データを抽出する条件を前記データの特徴を示す属性情報を用いて規定したルールである送信データ抽出ルールを読み込む第１ルール読み込みステップと、
前記機器から前記収集データを収集するときのコンピュータの設定を含むデータ収集設定情報の中から、前記送信データ抽出ルールに該当するデータを前記送信データとして抽出する送信データ抽出ステップと、
前記送信データの前記外部装置への送信条件を含むデータ送信設定情報に、抽出した前記データを追加するデータ追加ステップと、
前記データを追加した前記データ送信設定情報を表示部に表示する表示ステップと、
を前記コンピュータに実行させる送信データ設定支援プログラム。
【請求項２】
前記属性情報は、前記データ収集設定情報の中の前記データのデータ名、データ型、前記データが使用される前記機器を示す接続先機器、前記データが記憶される位置を示すアドレスおよび前記データについて付されたコメントのうち少なくとも１つの情報であることを特徴とする請求項１に記載の送信データ設定支援プログラム。
【請求項３】
前記属性情報は、前記データ収集設定情報の中の情報に加えて、前記データと、前記データが使用され、前記機器で実行されるプログラムと、の関係を含むクロスリファレンス情報の中の情報を含み、
前記送信データ抽出ステップでは、前記クロスリファレンス情報の中に含まれ、かつ前記データ収集設定情報の中に含まれる前記データを前記送信データとして抽出することを特徴とする請求項１または２に記載の送信データ設定支援プログラム。
【請求項４】
前記属性情報は、前記データの収集周期および保存期間のうち少なくとも１つの情報であることを特徴とする請求項１に記載の送信データ設定支援プログラム。
【請求項５】
前記データ収集設定情報と、前記データ送信設定情報と、を含む学習用データを取得する第１取得ステップと、
前記学習用データを用いて、前記データ収集設定情報から前記データ送信設定情報に追加される前記送信データの候補を推論する学習済モデルを生成するモデル生成ステップと、
を前記コンピュータにさらに実行させることを特徴とする請求項１から４のいずれか１つに記載の送信データ設定支援プログラム。
【請求項６】
前記データ収集設定情報を取得する第２取得ステップと、
前記データ収集設定情報から前記データ送信設定情報に追加される前記送信データの候補を推論する学習済モデルを用いて、前記第２取得ステップで入力された前記データ収集設定情報から前記送信データの候補を出力する推論ステップと、
を前記コンピュータにさらに実行させることを特徴とする請求項１から５のいずれか１つに記載の送信データ設定支援プログラム。
【請求項７】
前記収集データおよび前記コンピュータで管理するデータの少なくとも一方を用いて演算したデータである演算データを前記外部装置に送信する場合に、前記演算データの演算内容を規定した演算データ生成ルールを読み込む第２ルール読み込みステップと、
前記コンピュータがデータを収集し、管理するときの前記コンピュータの設定を含む管理データ情報の中のデータを用いて、前記演算データ生成ルールに従って生成した演算式と、前記演算式に付されるデータ名と、を含むレコードを、前記演算式と前記データ名との関係が規定されるデータ演算設定情報に追加する演算式生成ステップと、
前記演算式生成ステップで追加された前記データ名を含むレコードを前記データ送信設定情報に追加するデータ追加ステップと、
前記データを追加した前記データ送信設定情報を前記表示部に表示する表示ステップと、
を前記コンピュータにさらに実行させることを特徴とする請求項１から６のいずれか１つに記載の送信データ設定支援プログラム。
【請求項８】
機器から収集したデータである収集データの中から設定にしたがってデータを外部装置に送信するゲートウェイ装置であって、
前記収集データの中から前記外部装置に送信するデータである送信データを抽出する条件を前記データの特徴を示す属性情報を用いて規定したルールである送信データ抽出ルールを記憶する送信データ抽出ルール記憶部と、
前記機器から前記収集データを収集するときの設定を含むデータ収集設定情報を記憶する管理データ情報記憶部と、
前記データ収集設定情報の中から、前記送信データ抽出ルールに該当するデータを前記送信データとして抽出し、前記送信データの前記外部装置への送信条件を含むデータ送信設定情報に、抽出した前記データを追加し、前記データを追加した前記データ送信設定情報を表示部に表示するデータ処理設定生成部と、
を備えることを特徴とするゲートウェイ装置。
【請求項９】
制御部を備えるゲートウェイ装置で実行される送信データ設定支援方法であって、
前記制御部が、機器から収集したデータである収集データの中から外部装置に送信するデータである送信データを抽出する条件を前記データの特徴を示す属性情報を用いて規定したルールである送信データ抽出ルールを読み込む工程と、
前記制御部が、前記ゲートウェイ装置が前記機器から前記収集データを収集するときの設定を含むデータ収集設定情報の中から、前記送信データ抽出ルールに該当するデータを前記送信データとして抽出する工程と、
前記制御部が、前記送信データの前記外部装置への送信条件を含むデータ送信設定情報に、抽出した前記データを追加する工程と、
前記制御部が、前記データを追加した前記データ送信設定情報を表示部に表示する工程と、
を含むことを特徴とする送信データ設定支援方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本開示は、生産設備等を構成する機器からデータを収集し、外部装置にデータを送信するゲートウェイ装置への設定を支援する送信データ設定支援プログラム、ゲートウェイ装置および送信データ設定支援方法に関する。
【背景技術】
【０００２】
工場の製造ライン、個々の装置、プラント、オフィスビル等の現場には、プログラマブルロジックコントローラ（Programmable  Logic  Controller：ＰＬＣ）、センサ、インバータ、ロボットなど多種多様な機器が存在する。また、これらの機器からデータを収集し、機器の状態の分析またはモニタのために、クラウド上のサーバなどの外部装置に任意のデータを送信するゲートウェイ装置が存在する。ゲートウェイ装置が、外部装置にデータを送信する際に、収集している全てのデータを送信してしまうと、通信のトラフィックが増大し、ゲートウェイ装置に求められる性能または要件を満たさない場合がある。これを回避するために、ゲートウェイ装置内でデータの分析または加工を含む処理を実施する場合もある。これはエッジコンピューティングと呼ばれる。【０００３】
また、特許文献１には、複数の機器より収集したデータの中から必要なデータを効率よくサーバ装置に送信することができるデータ収集システムが開示されている。特許文献１に記載のデータ収集システムは、制御装置と、ゲートウェイ装置と、を備える。制御装置は、グループ分けされた複数の機器からデータを繰り返し受信し、受信したデータを、メモリの、受信したデータの送信元の機器が属するグループに応じたアドレス範囲に格納する。ゲートウェイ装置は、サーバ装置による監視の対象となる機器を監視機器として指定するマスタ情報を参照し、メモリの、監視機器が属するグループに応じたアドレス範囲に格納されたデータの一括送信を制御装置に繰り返し要求する。また、ゲートウェイ装置は、要求に応じて制御装置から送信されたデータを受信し、受信したデータの中から監視機器のデータを抽出し、抽出したデータを変換し、変換したデータをサーバ装置に要求の頻度以下の頻度で送信する。【０００４】
ところで、ゲートウェイ装置では、収集したデータのうち、外部装置に送信して外部装置で処理するデータと、ゲートウェイ装置内で処理をするデータと、を予め分類したデータ送信設定情報にしたがって、データが処理される。一般的には、以下に示す判断基準によって、データの分類が行われる。すなわち、データの収集周期が短く、処理した結果をすぐに現場の機器にフィードバックするなどのリアルタイム性が求められるデータである場合には、ゲートウェイ装置内で処理が実行される。また、リアルタイム性が求められず、大量なデータ、長期保存したいデータ、またはどこからでもアクセスしたいデータを扱う場合には、外部装置で処理が実行される。従来では、このような判断基準に基づいて、どのデータを外部に送信するかをコンピュータシステムの表示画面上でユーザが１つ１つ手動でデータを取捨選択することによって作成したデータ送信設定情報をゲートウェイ装置に設定していた。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２０１９−１０２９７４号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
しかしながら、上記特許文献１に記載の技術では、データの送信経路のトラフィックの増大を抑制し、データ送信処理自体の効率化を図ることができるが、どのデータを外部に送信するかについては、ユーザが判断して、データ送信設定情報に設定しなければならないという問題があった。このため、ゲートウェイ装置でデータを大量に収集する場合には、ユーザに大きな負荷がかかってしまっていた。【０００７】
本開示は、上記に鑑みてなされたものであって、ゲートウェイ装置において外部装置に送信するデータを設定するデータ送信設定情報のユーザによる生成を支援することができる送信データ設定支援プログラムを得ることを目的とする。
【課題を解決するための手段】
【０００８】
上述した課題を解決し、目的を達成するために、本開示の送信データ設定支援プログラムは、第１ルール読み込みステップと、送信データ抽出ステップと、データ追加ステップと、表示ステップと、をコンピュータに実行させる。第１ルール読み込みステップでは、機器から収集したデータである収集データの中から外部装置に送信するデータである送信データを抽出する条件をデータの特徴を示す属性情報を用いて規定したルールである送信データ抽出ルールを読み込む。送信データ抽出ステップでは、機器から収集データを収集するときのコンピュータの設定を含むデータ収集設定情報の中から、送信データ抽出ルールに該当するデータを送信データとして抽出する。データ追加ステップでは、送信データの外部装置への送信条件を含むデータ送信設定情報に、抽出したデータを追加する。表示ステップでは、データを追加したデータ送信設定情報を表示部に表示する。
【発明の効果】
【０００９】
本開示にかかる送信データ設定支援プログラムは、ゲートウェイ装置において外部装置に送信するデータを設定するデータ送信設定情報のユーザによる生成を支援することができるという効果を奏する。
【図面の簡単な説明】
【００１０】
【図１】実施の形態１によるゲートウェイ装置を備えるデータ送信システムの構成の一例を示すブロック図
【図２】実施の形態１による管理データ情報の一例を示す図
【図３】実施の形態１による送信データ抽出ルールの一例を示す図
【図４】実施の形態１によるデータ送信設定情報の一例を示す図
【図５】実施の形態１によるデータ送信設定情報の一例を示す図
【図６】実施の形態１による送信データ設定支援方法の手順の一例を示すフローチャート
【図７】実施の形態１によるクロスリファレンス情報の一例を示す図
【図８】実施の形態１による送信データ抽出ルールの他の例を示す図
【図９】実施の形態２による管理データ情報の一例を示す図
【図１０】実施の形態２による送信データ抽出ルールの一例を示す図
【図１１】実施の形態３によるゲートウェイ装置を備えるデータ送信システムの構成の一例を示すブロック図
【図１２】実施の形態３による学習装置の構成の一例を示すブロック図
【図１３】実施の形態３で用いられるニューラルネットワークの一例を模式的に示す図
【図１４】実施の形態３による学習装置での学習処理の手順の一例を示すフローチャート
【図１５】実施の形態３による推論装置の構成の一例を示すブロック図
【図１６】実施の形態３によるゲートウェイ装置での推論処理およびデータ送信処理の手順の一例を示すフローチャート
【図１７】実施の形態４によるゲートウェイ装置を備えるデータ送信システムの構成の一例を示すブロック図
【図１８】実施の形態４による演算データ生成ルールの一例を示す図
【図１９】実施の形態４によるデータ演算設定情報の一例を示す図
【図２０】実施の形態４による管理データ情報の一例を示す図
【図２１】実施の形態４によるデータ送信設定情報の一例を示す図
【図２２】実施の形態４による送信データ設定支援方法の手順の一例を示すフローチャート
【図２３】実施の形態１から４によるゲートウェイ装置を実現するコンピュータシステムのハードウェア構成の一例を示す図
【発明を実施するための形態】
【００１１】
以下に、本開示の実施の形態にかかる送信データ設定支援プログラム、ゲートウェイ装置および送信データ設定支援方法を図面に基づいて詳細に説明する。
【００１２】
実施の形態１．
図１は、実施の形態１によるゲートウェイ装置を備えるデータ送信システムの構成の一例を示すブロック図である。データ送信システム１は、機器１０と、外部装置２０と、ゲートウェイ装置３０と、を備える。機器１０とゲートウェイ装置３０とは、有線または無線の各種のネットワークまたは通信線を介して接続され、ゲートウェイ装置３０と外部装置２０とは、インターネットなどのネットワーク６０を介して接続される。ネットワーク６０は、有線であってもよいし、無線であってもよい。
【００１３】
機器１０は、工場の製造ライン、個々の装置、プラント、オフィスビル等の現場に設置される。機器１０の一例は、ＰＬＣ、センサ、インバータまたはロボットである。
【００１４】
外部装置２０は、機器１０から収集したデータを用いて機器１０の状態の分析またはモニタを行う。外部装置２０の一例は、サーバ、機器１０を管理する装置、または機器１０を管理するアプリケーションもしくはサービスである。外部装置２０がサーバである場合には、サーバは、クラウドサーバでもよいし、オンプレミス型のサーバでもよい。
【００１５】
ゲートウェイ装置３０は、機器１０からデータを収集し、収集したデータの中から予め定められた設定にしたがってデータを外部装置２０に送信する装置である。また、ゲートウェイ装置３０は、収集したデータを用いて演算を行うこともある。ゲートウェイ装置３０は、入力部３１と、表示部３２と、管理データ情報記憶部３３と、データ収集部３４と、収集データ一時記憶部３５と、保存データ記憶部３６と、送信データ抽出ルール記憶部３７と、データ処理設定生成部３８と、データ送信設定情報記憶部３９と、データ送信部４０と、を備える。
【００１６】
入力部３１は、ユーザによる情報の入力を受け付ける。後述するように、入力部３１は、ユーザによる送信データ抽出ルールの入力、またはデータ送信設定情報の内容の入力を受け付ける。
【００１７】
表示部３２は、ゲートウェイ装置３０内で生成される情報を表示する。一例では、表示部３２は、後述するデータ処理設定生成部３８によって生成されるデータ送信設定情報を表示する。
【００１８】
管理データ情報記憶部３３は、ゲートウェイ装置３０で管理するデータである管理データについての情報である管理データ情報を記憶する。管理データ情報は、ゲートウェイ装置３０がデータを収集し、管理するときのゲートウェイ装置３０の設定を含む。管理データ情報は、機器１０から収集するデータについての情報を含むが、これ以外にも、ゲートウェイ装置３０内で定義されるデータまたは演算されるデータについての情報を含んでいてもよい。つまり、管理データ情報は、機器１０から収集するデータである収集データを収集するときのゲートウェイ装置３０の設定を含むデータ収集設定情報と、ゲートウェイ装置３０内で定義されたデータである定義データについて設定された定義データ設定情報と、収集データおよび定義データを用いた演算について設定された演算設定情報と、についての情報を含む。
【００１９】
図２は、実施の形態１による管理データ情報の一例を示す図である。管理データ情報３３０は、少なくともデータ名を有するレコードを含む。１つのレコードは、複数のフィールドから構成される。フィールドの名称がフィールド名である。図２の例では、レコードは、番号と、データ名と、接続先機器と、アドレスと、データ型と、収集周期と、コメントと、がフィールド名である。また、レコードは、番号と、データ名と、接続先機器と、アドレスと、データ型と、収集周期と、コメントと、をフィールドとして持つデータの集合体である。
【００２０】
番号は、管理データ情報３３０に含まれるレコードに付される識別情報である。データ名は、ゲートウェイ装置３０で管理するデータに付された名称である。接続先機器は、データ名で示されるデータの収集先の機器１０を示す。収集先の機器１０は、ゲートウェイ装置３０にネットワークまたは通信線を介して接続されている。アドレスは、データ名で示されるデータが記憶されている収集先の機器１０のメモリ内の位置を示す。データ型は、データ名で示されるデータの種類を示す。データ型の一例は、整数型を示す「int」、実数型を示す「float」およびブール代数型を示す「bool」である。収集周期は、データ名で示されるデータを収集する周期を示す。コメントは、データ名で示されるデータについて付されるコメントである。一例では、ユーザによって入力された内容が反映される。
【００２１】
なお、図２に示される管理データ情報３３０は一例であり、上記したフィールド以外の他のフィールドを含むものであってもよい。一例では、収集したデータを保存するか否かを示すフィールド、保存する場合の保存先を示すフィールド、データ名で示されるデータのＰＬＣまたはゲートウェイ装置３０におけるＣＰＵ（Central  Processing  Unit）およびメモリの使用率を示すフィールド等を管理データ情報３３０が含んでいてもよい。
【００２２】
図２の例では、番号が「１」から「４」、「６」から「９」であるレコードがデータ収集設定情報に対応する。また、番号が「５」、「１０」であるレコードが定義データ設定情報または演算設定情報に対応する。なお、図２では、データ収集設定情報が、定義データ設定情報または演算設定情報とまとめられ、管理データ情報３３０に内包された形式である場合を示したが、データ収集設定情報が、定義データ設定情報または演算設定情報と別々に存在する形式であってもよい。管理データ情報３３０およびデータ収集設定情報は、データの特徴を示す属性情報を含む。属性情報は、管理または収集するデータを特定する情報、管理または収集するデータの扱いを示す情報を含む。データの名称、格納場所、データ型、データがどのように生成、収集、更新されるのかについての情報、データの使用場所および使用目的が、属性情報の一例である。図２では、番号を除いて、データの属性情報をフィールドとして示したものである。
【００２３】
図１に戻り、データ収集部３４は、管理データ情報記憶部３３のデータ収集設定情報に基づいて機器１０からデータを収集し、収集データを収集データ一時記憶部３５に記憶する。また、データ収集部３４は、データ収集設定情報でデータの保存が設定されている収集データ一時記憶部３５中の収集データを保存データ記憶部３６に保存する。なお、データ収集部３４はＯＰＣ（Object  Linking  and  Embedding  for  Process  Control）サーバなど別の収集装置を経由して機器１０からデータを取得してもよい。この場合、データ収集設定情報は、上記別の収集装置の設定を参照する形式であってもよい。
【００２４】
収集データ一時記憶部３５は、データ収集部３４によって収集された収集データを一時的に記憶する。
【００２５】
保存データ記憶部３６は、収集データ一時記憶部３５中の収集データのうち、データ収集設定情報で設定された収集データをファイルとして記憶する。
【００２６】
送信データ抽出ルール記憶部３７は、機器１０から収集した収集データの中から外部装置２０に送信するデータである送信データを抽出する条件をデータの特徴を示す属性情報を用いて規定したルールである送信データ抽出ルールを記憶する。送信データ抽出ルールは、一例では、ユーザによって入力部３１を介して入力される。
【００２７】
図３は、実施の形態１による送信データ抽出ルールの一例を示す図である。なお、図３の例では、理解の容易のため、ルールを文章で表示している。送信データ抽出ルール３７０は、送信データを抽出する条件を示す内容を有するレコードを含む。１つのレコードは、複数のフィールドから構成される。フィールドの名称がフィールド名である。図３の例では、番号と、内容と、がフィールド名である。また、レコードは、番号と、内容と、をフィールドとして持つデータの集合体である。番号は、送信データ抽出ルール３７０に含まれるレコードに付される識別情報である。内容は、収集データのうち送信データとして抽出する条件を規定したものである。
【００２８】
内容に規定される条件は、データ収集設定情報または管理データ情報３３０において、データに紐付く属性情報を用いて表現される。具体的には、内容は、一例では、データ収集設定情報のフィールド名と、フィールドの値と、を用いて表現される。つまり、内容は、データ収集設定情報の属性情報と、属性情報の値と、を用いた条件を含む。一例では、条件に使用される属性情報は、データ収集設定情報または管理データ情報３３０の中のデータのデータ名、データ型、接続先機器、アドレスおよびコメントのうち少なくとも１つの情報である。
【００２９】
図１に戻り、データ処理設定生成部３８は、データ収集設定情報の中から、送信データ抽出ルール３７０に該当するデータを送信データとして抽出する。データ処理設定生成部３８は、送信データの外部装置２０への送信条件を含むデータ送信設定情報に、抽出したデータを含むレコードを追加する。データ処理設定生成部３８は、抽出したデータを含むレコード追加したデータ送信設定情報を表示部３２に表示する。具体的には、データ処理設定生成部３８は、送信データ抽出ルール３７０を読み込み、送信データ抽出ルール３７０を満たすデータに対応するレコードをデータ収集設定情報中の新規レコードの中から抽出する。データ処理設定生成部３８は、データ送信設定情報記憶部３９のデータ送信設定情報に、抽出したレコードに対応するレコードを追加する。データ処理設定生成部３８は、レコードが追加されたデータ送信設定情報を表示部３２に表示し、ユーザによってデータ送信設定情報に入力された内容をデータ送信設定情報に反映させる。
【００３０】
図４は、実施の形態１によるデータ送信設定情報の一例を示す図である。図４に示されるデータ送信設定情報３９０は、送信データについての送信条件を含むレコードを含む。１つのレコードは、複数のフィールドから構成される。フィールドの名称がフィールド名である。図４の例では、番号と、データ名と、送信周期と、コメントと、送信先と、がフィールド名である。また、レコードは、番号と、データ名と、送信周期と、コメントと、送信先と、をフィールドとして持つデータの集合体である。
【００３１】
番号は、データ送信設定情報３９０に含まれるレコードに付される識別情報である。データ名は、送信データとして抽出された収集データのデータ名であり、図２の管理データ情報３３０に含まれるデータ収集設定情報中のデータ名が使用される。送信周期は、データ名で示されるデータの外部装置２０へ送信する周期を示す。コメントは、データ名で示されるデータのコメントであり、図２の管理データ情報３３０に含まれるデータ収集設定情報中のコメントが使用される。送信先は、データ名で示されるデータの送信先である外部装置２０を示す。
【００３２】
一例では、データ処理設定生成部３８は、データ収集設定情報から抽出したレコードからデータ名およびコメントを取得し、取得したデータ名およびコメントを登録し、送信周期および送信先について空欄としたレコードをデータ送信設定情報３９０に追加する。複数のレコードを抽出した場合には、すべてのレコードについて同様の処理を行う。そして、データ処理設定生成部３８は、図４に示されるようなデータ送信設定情報３９０を表示部３２に表示する。つまり、データ処理設定生成部３８は、送信データのデータ名をデータ送信設定情報３９０に追加し、データ名が追加されたデータ送信設定情報３９０を表示部３２に表示する処理を行う。
【００３３】
ユーザは、図４に示されるデータ送信設定情報３９０が表示部３２に表示されると、各レコードの送信周期および送信先を入力部３１から入力し、データ送信設定情報３９０を完成させる。図５は、実施の形態１によるデータ送信設定情報の一例を示す図である。図５には、図４の場合に比較して、送信周期および送信先が入力された状態が示されている。送信周期および送信先のフィールドへの入力は、ユーザによる直接入力であってもよいし、予め設定されたリストから選択する形式であってもよい。また、データ送信設定情報３９０について１つの送信周期および１つの送信先のみが設定されるようにしてもよい。この場合には、ユーザは、送信周期および送信先について１回のみ入力すればよいことになる。ユーザによる入力が完成すると、データ処理設定生成部３８は、データ送信設定情報記憶部３９に記憶されているデータ送信設定情報３９０を、ユーザによって入力された内容にしたがって更新する。
【００３４】
図４に示されるフィールド名を有するデータ送信設定情報３９０の場合には、データ処理設定生成部３８は、少なくともデータ名およびコメントをデータ収集設定情報から抽出したデータの内容で埋めたデータ送信設定情報３９０のレコードを生成すればよい。また、データ処理設定生成部３８は、送信周期および送信先に、予め定められたデフォルト値を設定したレコードを生成してもよい。一例では、データ処理設定生成部３８は、送信データとしてデータ収集設定情報から抽出したレコードのうち最も遅い収集周期を、送信周期と設定してもよい。また、データ処理設定生成部３８は、送信周期を設定する際に、データ送信設定情報３９０に登録するレコードに対応するデータ収集設定情報から抽出したレコードの収集周期を取得し、取得した収集周期以上の値を送信周期のデフォルト値として設定してもよい。あるいは、データ処理設定生成部３８は、データ送信設定情報３９０の過去のレコードにおける送信周期の設定値を参考に送信周期を決定してもよい。一例では、データ処理設定生成部３８は、過去のレコードの送信周期を新たに追加するレコードの送信周期のデフォルト値とすることができる。また、送信先についても、予め定められたデフォルト値としてもよいし、データ送信設定情報３９０の過去のレコードにおける送信先の設定値を参考に決定してもよい。このようにすることで、データ処理設定生成部３８は、図５に示されるようなデータ送信設定情報３９０を表示部３２に表示することができる。この場合にも、表示されたデータ送信設定情報３９０の内容をユーザが入力部３１を介して編集することは可能である。また、この場合には、ユーザによるデータ送信設定情報３９０への入力の手間を大幅に省くことができる。
【００３５】
図１に戻り、データ送信設定情報記憶部３９は、データ処理設定生成部３８によってレコードが追加されたデータ送信設定情報３９０を記憶する。データ送信設定情報３９０は、図５に示されるように、収集データ一時記憶部３５または保存データ記憶部３６に記憶されている収集データを外部装置２０に送信する際の、データ名、送信周期および送信先を含む送信条件を規定した情報である。
【００３６】
データ送信部４０は、データ送信設定情報３９０に基づいて、収集データ一時記憶部３５または保存データ記憶部３６に記憶されている収集データを送信データとして外部装置２０に送信する。
【００３７】
つぎに、このような構成のゲートウェイ装置３０における送信データ設定支援方法について説明する。図６は、実施の形態１による送信データ設定支援方法の手順の一例を示すフローチャートである。ここでは、ユーザによって、収集データの属性情報を用いて、送信データ抽出ルール３７０が作成され、送信データ抽出ルール記憶部３７に記憶さているものとする。
【００３８】
まず、データ処理設定生成部３８は、送信データ抽出ルール３７０を送信データ抽出ルール記憶部３７から読み込む（ステップＳ１１）。ついで、データ処理設定生成部３８は、管理データ情報３３０中の新規レコードを対象に、送信データ抽出ルール３７０に定義された条件に従うレコードを抽出する（ステップＳ１２）。その後、データ処理設定生成部３８は、抽出したレコードのデータ名を、データ名のフィールドに登録した新たなレコードをデータ送信設定情報３９０に追加する（ステップＳ１３）。ついで、データ処理設定生成部３８は、新たなレコードを追加したデータ送信設定情報３９０を表示部３２に表示する（ステップＳ１４）。なお、図４のデータ送信設定情報３９０の場合には、データ処理設定生成部３８は、抽出したレコードのコメントを、新たなレコードのコメントのフィールドに登録する。
【００３９】
その後、ユーザは、表示部３２に表示されたデータ送信設定情報３９０の内容を編集する。一例では、送信周期、送信先を設定する。これによって、データ送信設定情報３９０に必要な内容が入力される。ユーザは、編集が終了するとデータ送信設定情報３９０の登録を指示する。データ処理設定生成部３８は、データ送信設定情報３９０の登録の指示を受けると、データ送信設定情報記憶部３９に記憶されているデータ送信設定情報３９０を更新する（ステップＳ１５）。つまり、データ処理設定生成部３８は、ユーザによって編集された内容を、データ送信設定情報記憶部３９に記憶されているデータ送信設定情報３９０に反映させる。以上によって、送信データ設定支援方法が終了する。
【００４０】
ここで、送信データ設定支援方法の具体例について説明する。図３の送信データ抽出ルール３７０の番号が「１」に規定される条件にしたがってデータ送信設定情報３９０を生成する場合を例に挙げる。図３の送信データ抽出ルール３７０の番号が「１」に規定される条件は、「データ収集設定情報のデータ名に“生産数”を含む」となっている。データ処理設定生成部３８は、図２の管理データ情報３３０において、データ名に「生産数」を含むレコードとして、番号が「１」、「２」、「６」および「７」のレコードを抽出する。ついで、データ処理設定生成部３８は、データ送信設定情報３９０のデータ名およびコメントの欄に、抽出したレコードのデータ名およびコメントを登録する。この結果、図４に示されるように、番号が「１」から「４」のレコードが登録されることになる。図３に規定されるその他の条件についても同様である。ただし、データ処理設定生成部３８は、既にデータ送信設定情報３９０に登録されたレコードと同じデータ名を有するレコードについては、登録を行わない。そして、データ処理設定生成部３８は、データ名およびコメントを登録した図４に示されるようなデータ送信設定情報３９０を表示部３２に表示する。
【００４１】
つぎに、ゲートウェイ装置３０のデータ送信処理の概要について説明する。データ収集部３４は、データ収集設定情報に基づいて、機器１０からデータを収集し、収集した収集データを収集データ一時記憶部３５に記憶する。データ収集部３４は、収集データをファイルとして保存する設定がデータ収集設定情報になされている場合には、収集データをファイルとして保存データ記憶部３６に記憶する。その後、データ送信部４０は、図６の手順によって生成されたデータ送信設定情報記憶部３９中のデータ送信設定情報３９０に基づいて、収集データ一時記憶部３５または保存データ記憶部３６に記憶されている収集データを外部装置２０へ送信する。すなわち、データ送信設定情報３９０に設定されている送信周期と送信先とを参照して、収集データを設定された送信先の外部装置２０に設定された送信周期で送信する。
【００４２】
なお、上記した説明では、データ収集設定情報に含まれるデータの属性情報を用いて送信データ抽出ルール３７０を生成する場合を説明したが、収集対象のＰＬＣのクロスリファレンス情報に含まれるデータの属性情報を用いてもよい。クロスリファレンス情報は、データと、このデータの使用箇所とを示す情報であり、具体的には、データと、データが使用され、機器１０であるＰＬＣで実行されるプログラムと、の関係を含む情報である。
【００４３】
クロスリファレンス情報は、エンジニアリングツールがインストールされているコンピュータシステムをＰＬＣに接続することによって、エンジニアリングツールで生成される。なお、クロスリファレンス情報をメモリカードのような携帯可能な不揮発性記憶媒体に記憶させて、携帯可能な不揮発性記憶媒体をゲートウェイ装置３０に装着することによって、データ処理設定生成部３８は、クロスリファレンス情報を参照することが可能となる。あるいは、ゲートウェイ装置３０がクロスリファレンス情報を格納したコンピュータシステムとネットワーク６０経由で通信可能な構成とすることによって、データ処理設定生成部３８は、コンピュータシステム内のクロスリファレンス情報を参照することが可能となる。
【００４４】
図７は、実施の形態１によるクロスリファレンス情報の一例を示す図である。クロスリファレンス情報３３５は、ＰＬＣで使用されるデータがＰＬＣで実行されるどのプログラムで使用されているかを示すレコードを含む。１つのレコードは、複数のフィールドから構成される。フィールドの名称がフィールド名である。図７の例では、番号と、データ名と、アドレスと、データ型と、コメントと、参照先と、がフィールド名である。また、レコードは、番号と、データ名と、アドレスと、データ型と、コメントと、参照先と、をフィールドとして持つデータの集合体である。
【００４５】
番号は、クロスリファレンス情報３３５に含まれるデータに付される識別情報である。データ名は、収集対象のＰＬＣで使用されるデータの名称である。アドレスは、データ名で示されるデータが記憶されているＰＬＣのメモリ内の位置を示す。データ型は、データ名で示されるデータの種類を示す。コメントは、データ名で示されるデータについて付されるコメントである。参照先は、データ名で示されるデータが使用されるプログラム名を示す。
【００４６】
クロスリファレンス情報３３５に含まれる属性情報を用いてデータ送信設定情報３９０を生成する具体例を説明する。図８は、実施の形態１による送信データ抽出ルールの他の例を示す図である。図８では、内容に「ＰＬＣの「設備モニタプログラムＡ」で使用されるデータ」という条件が入力された、番号が「４」のレコードが、図３の送信データ抽出ルール３７０に追加されている。
【００４７】
この場合には、データ処理設定生成部３８は、図７のクロスリファレンス情報３３５において、参照先に「設備Ａモニタプログラム」を含むレコードとして、番号が「１」、「２」、「３」および「５」のレコードを抽出する。ついで、データ処理設定生成部３８は、図７から抽出したレコードのうち、データ収集設定情報または図２の管理データ情報３３０に含まれるデータ名を有するレコードを抽出する。この場合、図７から抽出したレコードのデータ名は、「生産数Ａ」、「目標生産数Ａ」、「停止信号Ａ」および「サイクルタイムＡ」となる。これらのデータ名は、すべて図２の管理データ情報３３０に含まれる。このため、データ処理設定生成部３８は、これらのレコードのデータ名およびコメントをデータ送信設定情報３９０への登録候補とする。しかし、図４のデータ送信設定情報３９０の番号が「１」、「２」、「５」および「６」のレコードに既に同じデータが登録されているため、これらのデータは登録されない。
【００４８】
実施の形態１では、データ処理設定生成部３８は、ユーザによって設定された送信データ抽出ルール３７０を満たすレコードを、データ収集設定情報またはこれに加えてクロスリファレンス情報３３５から取得し、取得したレコードのデータ名を登録したレコードをデータ送信設定情報３９０に追加する。そして、データ処理設定生成部３８は、レコードを追加したデータ送信設定情報３９０を表示部３２に表示する。これによって、従来では、どのデータを外部に送信するのかについてユーザが１つ１つのデータについて判断し、設定していた手間を軽減することができる。つまり、ゲートウェイ装置３０において外部装置２０に送信するデータを設定するデータ送信設定情報３９０のユーザによる生成を支援することができる。
【００４９】
また、データ処理設定生成部３８は、データ送信設定情報３９０中の送信周期を、抽出されたレコードのうち最も遅い収集周期としてもよい。さらに、データ処理設定生成部３８は、データ送信設定情報３９０中の収集周期および送信先を、過去に登録されたレコードに設定されている収集周期および送信先としてもよい。これによって、ユーザによるデータ送信設定情報３９０を設定する手間をさらに軽減することができる。
【００５０】
実施の形態２．
実施の形態２では、データの収集周期、保存期間等のデータのロギング設定に関する情報を用いて送信データ抽出ルール３７０を作成する場合を例に挙げる。
【００５１】
実施の形態２によるデータ送信システム１およびゲートウェイ装置３０の構成は、実施の形態１と同様であるので、その説明を省略する。ただし、実施の形態２のゲートウェイ装置３０では、管理データ情報３３０またはデータ収集設定情報は、ゲートウェイ装置３０が管理し、収集するデータの属性情報として、ロギング設定に関する情報を含む。ロギング設定に関する情報は、データの収集周期、保存期間等である。
【００５２】
図９は、実施の形態２による管理データ情報の一例を示す図である。管理データ情報３３０のレコードは、番号と、データ名と、接続先機器と、アドレスと、データ型と、収集周期と、保存期間と、コメントと、をフィールドとして持つデータの集合体である。図９の例では、番号と、データ名と、接続先機器と、アドレスと、データ型と、収集周期と、保存期間と、コメントと、がフィールド名となる。なお、実施の形態１の図２と同一の項目については、説明を省略する。収集周期は、データ名で示されるデータを収集する周期である。保存期間は、データ名で示されるデータを保存する期間である。収集周期および保存期間がロギング設定に関する情報となる。
【００５３】
また、送信データ抽出ルール３７０には、実施の形態１で説明した属性情報のほかに、ロギング設定に関する情報を使用することができる。一例では、条件に使用される属性情報は、データ収集設定情報または管理データ情報３３０の中のデータの収集周期および保存期間のうち少なくとも１つの情報である。
【００５４】
図１０は、実施の形態２による送信データ抽出ルールの一例を示す図である。なお、図３と同一の部分については、説明を省略する。この例では、番号が「１」のレコードの内容に「保存期間が３０日以上のデータ」という条件が格納されている。外部装置２０がクラウドサーバである場合には、クラウドサーバではデータを２つのデータセンタで保存するなどして、トラブルまたは災害に備える対策が講じられていることが多い。このため、長期間保存するデータは、クラウドサーバに格納される場合がある。また、このことから、長期間保存するデータは、重要なデータであると判断することができる。収集周期が予め定められた期間よりも長いデータも、同様に重要なデータであると考えられる。そこで、ユーザは、保存期間または収集周期が予め定められた期間よりも長い場合に、データを外部装置２０に送るという判断基準で、送信データ抽出ルール３７０を作成することができる。予め定められた期間は、機器１０の構成などに応じてユーザによって任意に定められる。
【００５５】
なお、予め定められた期間よりも長い期間の保存期間のデータを保存する条件が送信データ抽出ルール３７０に設定されている場合には、データ処理設定生成部３８は、データ名およびコメントをデータ送信設定情報３９０に登録するレコードの送信先のデフォルト値にクラウドサーバを設定してもよい。
【００５６】
つぎに、実施の形態２でのデータ送信設定情報３９０を生成する具体例を説明する。まず、データ処理設定生成部３８は、図１０の送信データ抽出ルール３７０の「保存期間が３０日以上のデータ」という条件を読み込む。ついで、データ処理設定生成部３８は、図９の管理データ情報３３０から、読み込んだ条件に合致するレコードを抽出する。この場合、データ処理設定生成部３８は、保存期間が「３０日」となっている番号が「２」のレコードを抽出する。そして、データ処理設定生成部３８は、抽出したレコードからデータ名とコメントとを取得し、データ送信設定情報３９０の新たに追加するレコードのデータ名およびコメントに登録する。そして、追加したレコードを含むデータ送信設定情報３９０を表示部３２に表示する。
【００５７】
実施の形態２では、ロギング設定に含まれる情報を用いて作成された送信データ抽出ルール３７０に従って、データ収集設定情報からレコードを抽出し、データ送信設定情報３９０に抽出したレコードの内容を含む新たなレコードを追加した。保存期間または収集周期が長いデータは、通常、重要なデータである場合が多いので、ユーザは、データ収集設定情報のデータの属性情報のうち、ロギング設定に関する保存期間または収集周期を用いて、外部装置２０に送信する送信データを選択することができる。つまり、ロギング設定に関する情報を用いて送信データ抽出ルール３７０を規定することで、ユーザが収集データの中から送信データを抽出する手間を実施の形態１の場合に比してさらに低減することができる。この結果、効率的に送信データ抽出ルール３７０を作成する環境をユーザに提供することができる。
【００５８】
実施の形態３．
実施の形態３では、データ送信設定情報３９０に登録された過去のレコードを学習し、データ収集設定情報またはクロスリファレンス情報３３５からデータ送信設定情報３９０のレコード、より具体的にはデータ名を生成することができるゲートウェイ装置について説明する。
【００５９】
図１１は、実施の形態３によるゲートウェイ装置を備えるデータ送信システムの構成の一例を示すブロック図である。なお、以下では、実施の形態１の図１と異なる部分について説明を行い、図１と同一の構成要素には同一の符号を付して、その説明を省略する。ゲートウェイ装置３０Ａは、学習装置４１と、推論装置４２と、をさらに備える。
【００６０】
図１２は、実施の形態３による学習装置の構成の一例を示すブロック図である。学習装置４１は、データ取得部４１１と、モデル生成部４１２と、学習済モデル記憶部４１３と、を備える。
【００６１】
データ取得部４１１は、管理データ情報記憶部３３に記憶されているデータ収集設定情報と、データ送信設定情報記憶部３９に記憶されているデータ送信設定情報３９０と、を学習用データとして取得する。データ送信設定情報３９０は、過去に登録されたレコードである。データ収集設定情報ではなく、管理データ情報３３０を学習用データとして取得してもよい。
【００６２】
ここで、データ収集設定情報およびデータ送信設定情報３９０において、データ名に共通項があり、正規表現等で汎用化できる場合には、データの前処理として汎用化処理を適用してもよい。例えば、データ名に、「設備Ａ稼働率」、「設備Ｂ稼働率」および「装置Ｂ稼働率」が存在する場合に、「＊」を任意の文字列を表すものと定めると、データ収集設定情報およびデータ送信設定情報３９０におけるデータ名の「設備Ａ稼働率」、「設備Ｂ稼働率」および「装置Ｂ稼働率」は「＊稼働率」とまとめられる。
【００６３】
モデル生成部４１２は、データ取得部４１１から出力されるデータ収集設定情報およびデータ送信設定情報３９０の組合せに基づいて作成される学習用データに基づいて、データ送信設定情報３９０に登録される送信データの候補を学習する。すなわち、データ収集設定情報およびデータ送信設定情報３９０から最適な送信データの候補を推論する学習済モデルを生成する。ここで、学習用データは、データ収集設定情報およびデータ送信設定情報３９０を互いに関連付けたデータである。
【００６４】
モデル生成部４１２が用いる学習アルゴリズムは教師あり学習、教師なし学習、強化学習等の公知のアルゴリズムを用いることができる。一例として、ニューラルネットワークを適用した場合について説明する。モデル生成部４１２は、例えば、ニューラルネットワークモデルに従って、いわゆる教師あり学習により、データ送信設定情報３９０を学習する。ここで、教師あり学習とは、入力と結果（ラベル）のデータの組を学習装置４１に与えることで、それらの学習用データにある特徴を学習し、入力から結果を推論する手法をいう。
【００６５】
ニューラルネットワークは、複数のニューロンからなる入力層、複数のニューロンからなる中間層（隠れ層）、および複数のニューロンからなる出力層で構成される。中間層は、１層または２層以上でもよい。
【００６６】
図１３は、実施の形態３で用いられるニューラルネットワークの一例を模式的に示す図である。例えば、図１３に示されるような３層のニューラルネットワークであれば、ニューラルネットワークは、３個のニューロンＸ１，Ｘ２，Ｘ３を有する入力層と、２個のニューロンＹ１，Ｙ２を有する中間層と、３個のニューロンＺ１，Ｚ２，Ｚ３を有する出力層と、から構成される。入力層のニューロンＸ１，Ｘ２，Ｘ３は、中間層のニューロンＹ１，Ｙ２と接続されており、中間層のニューロンＹ１，Ｙ２は、出力層のニューロンＺ１，Ｚ２，Ｚ３と接続されている。なお、図１３では、中間層が１層である例を示したが、２層以上の中間層を設けてもよい。
【００６７】
複数の入力が入力層のニューロンＸ１，Ｘ２，Ｘ３に入力されると、その値に重みｗ１１〜ｗ１６が掛けられて中間層のニューロンＹ１，Ｙ２に入力され、この結果にさらに重みｗ２１〜ｗ２６が掛けられて出力層のニューロンＺ１〜Ｚ３から出力される。この出力結果は、重みｗ１１〜ｗ１６，ｗ２１〜ｗ２６の値によって変わる。
【００６８】
実施の形態３において、ニューラルネットワークは、データ取得部４１１によって取得されるデータ収集設定情報およびデータ送信設定情報３９０の組合せに基づいて作成される学習用データに従って、いわゆる教師あり学習により、送信データの候補を学習する。
【００６９】
すなわち、ニューラルネットワークは、入力層にデータ収集設定情報を入力して出力層から出力された結果が、正解であるデータ送信設定情報３９０のレコードに近づくように重みｗ１１〜ｗ１６，ｗ２１〜ｗ２２を調整することで学習する。
【００７０】
モデル生成部４１２は、以上のような学習を実行することで学習済モデルを生成し、出力する。
【００７１】
学習済モデル記憶部４１３は、モデル生成部４１２から出力された学習済モデルを記憶する。
【００７２】
次に、学習装置４１の学習処理について説明する。図１４は、実施の形態３による学習装置での学習処理の手順の一例を示すフローチャートである。
【００７３】
まず、データ取得部４１１は、管理データ情報記憶部３３からデータ収集設定情報を取得し、データ送信設定情報記憶部３９からデータ送信設定情報３９０を取得する（ステップＳ３１）。なお、データ収集設定情報およびデータ送信設定情報３９０を同時に取得するものとしたが、データ収集設定情報およびデータ送信設定情報３９０を関連づけて入力できればよく、データ収集設定情報およびデータ送信設定情報３９０のデータをそれぞれ別のタイミングで取得してもよい。
【００７４】
ついで、モデル生成部４１２は、データ取得部４１１によって取得されるデータ収集設定情報およびデータ送信設定情報３９０の組合せに基づいて作成される学習用データに従って、いわゆる教師あり学習により、送信データの候補を学習し、学習済モデルを生成する（ステップＳ３２）。
【００７５】
その後、モデル生成部４１２は、生成した学習済モデルを学習済モデル記憶部４１３に記憶する（ステップＳ３３）。以上で、学習処理が終了する。
【００７６】
図１５は、実施の形態３による推論装置の構成の一例を示すブロック図である。推論装置４２は、データ取得部４２１と、推論部４２２と、を備える。
【００７７】
データ取得部４２１は、管理データ情報記憶部３３からデータ収集設定情報を取得する。
【００７８】
推論部４２２は、学習済モデルを利用して得られる送信データの候補を推論する。すなわち、この学習済モデルにデータ取得部４２１で取得したデータ収集設定情報を入力することで、データ収集設定情報から推論される送信データの候補を出力することができる。
【００７９】
なお、実施の形態３では、ゲートウェイ装置３０Ａのモデル生成部４１２で学習した学習済モデルを用いて送信データの候補を出力するものとして説明したが、他のゲートウェイ装置３０Ａ等の外部から学習済モデルを取得し、この学習済モデルに基づいて送信データの候補を出力するようにしてもよい。
【００８０】
次に、推論装置４２の推論処理について説明する。図１６は、実施の形態３によるゲートウェイ装置での推論処理およびデータ送信処理の手順の一例を示すフローチャートである。
【００８１】
まず、データ取得部４２１は、管理データ情報記憶部３３からデータ収集設定情報を取得する（ステップＳ５１）。
【００８２】
ついで、推論部４２２は、学習済モデル記憶部４１３に記憶された学習済モデルにデータ収集設定情報を入力し、送信データの候補を得る（ステップＳ５２）。
【００８３】
その後、推論部４２２は、学習済モデルにより得られた送信データの候補をゲートウェイ装置３０Ａに出力する（ステップＳ５３）。一例では、送信データの候補は、ゲートウェイ装置３０Ａのデータ送信設定情報記憶部３９に出力され、データ送信設定情報３９０のレコードとして追加される。
【００８４】
ついで、ゲートウェイ装置３０Ａは、出力された送信データの候補を含むデータ送信設定情報３９０を用いて、収集データ一時記憶部３５または保存データ記憶部３６に記憶されている収集データを外部装置２０に送信する（ステップＳ５４）。これにより、ゲートウェイ装置３０Ａが収集し、管理しているデータ収集設定情報から、外部装置２０に送信するデータのリストであるデータ送信設定情報３９０のレコードを自動生成することができる。以上で、推論処理およびデータ送信処理が終了する。
【００８５】
なお、実施の形態３では、モデル生成部４１２が用いる学習アルゴリズムに教師あり学習を適用した場合について説明したが、これに限られるものではない。学習アルゴリズムについては、教師あり学習以外にも、強化学習、教師なし学習、半教師あり学習等を適用することも可能である。
【００８６】
また、モデル生成部４１２は、複数のゲートウェイ装置３０Ａに対して作成される学習用データに従って、送信データの候補を学習するようにしてもよい。なお、モデル生成部４１２は、同一のエリアで使用される複数のゲートウェイ装置３０Ａから学習用データを取得してもよいし、異なるエリアで独立して動作する複数のゲートウェイ装置３０Ａから収集される学習用データを利用して送信データの候補を学習してもよい。また、学習用データを収集するゲートウェイ装置３０Ａを途中で対象に追加したり、対象から除去したりすることも可能である。さらに、あるゲートウェイ装置３０Ａに関して送信データの候補を学習した学習装置４１を、これとは別のゲートウェイ装置３０Ａに適用し、当該別のゲートウェイ装置３０Ａに関して送信データの候補を再学習して更新するようにしてもよい。
【００８７】
また、モデル生成部４１２に用いられる学習アルゴリズムとしては、特徴量そのものの抽出を学習する、深層学習（Deep  Learning）を用いることもでき、他の公知の方法、例えば遺伝的プログラミング、機能論理プログラミング、サポートベクターマシンなどに従って機械学習を実行してもよい。
【００８８】
さらに、学習装置４１は、送信データの候補を学習するために使用され、推論装置４２は、送信データの候補を推論するために使用される。図１１の例では、学習装置４１および推論装置４２は、ゲートウェイ装置３０Ａに内蔵されている例を示しているが、例えば、ネットワーク６０を介してゲートウェイ装置３０Ａに接続され、このゲートウェイ装置３０Ａとは別個の装置であってもよい。また、学習装置４１および推論装置４２は、クラウドサーバ上に存在していてもよい。
【００８９】
以上のように、ゲートウェイ装置３０Ａに学習装置４１を設けることで、データ送信設定情報３９０の過去のレコードの頻出ランクを作成したり、共通項を抽出したりすることで、学習済モデルが生成される。また、データ収集設定情報およびデータ送信設定情報３９０のセットから抽出率を算出して、抽出率が高いものをデータとするような学習済モデルが生成されてもよい。なお、推論装置４２によって推論された結果である送信データの候補が、表示部３２に表示されるようにしてもよい。このようにすることで、推論された送信データの候補の内容がユーザの意向に沿うものでない場合に、ユーザが入力部３１を介して削除することができる。
【００９０】
実施の形態３では、ゲートウェイ装置３０Ａは、データ収集設定情報と、既に生成されたデータ送信設定情報３９０と、をデータセットとして、送信データの候補を出力する学習済モデルを生成する学習装置４１を備える。また、ゲートウェイ装置３０Ａは、生成された学習済モデルにデータ収集設定情報を入力して得られる結果から送信データの候補を推論する推論装置４２を備える。これによって、送信データの候補に基づいたデータ送信設定情報３９０の新たなレコードが自動生成される。すなわち、ユーザによるデータ送信設定情報３９０を作成するのにかかる手間を、実施の形態１の場合に比してさらに低減することができる。特に、ユーザが送信データ抽出ルール３７０を作成しなくてもよいので、データ送信設定情報３９０を作成する工程数を削減することができる。
【００９１】
実施の形態４．
実施の形態１では、データ収集部３４で収集された収集データの中から外部装置２０に送信する送信データを抽出するデータ送信設定情報３９０が生成される場合を示した。ゲートウェイ装置３０では、収集データを用いて演算を行うことも可能であり、演算の結果得られるデータである演算データも送信データの対象となることがある。実施の形態４では、送信データに収集データだけでなく演算データを含む場合のデータ送信設定情報３９０の生成を支援することができるゲートウェイ装置を含むデータ送信システムおよび送信データ設定支援方法を説明する。
【００９２】
図１７は、実施の形態４によるゲートウェイ装置を備えるデータ送信システムの構成の一例を示すブロック図である。以下では、実施の形態１の図１と異なる部分について説明を行い、図１と同一の構成要素には同一の符号を付して、その説明を省略する。ゲートウェイ装置３０Ｂは、演算データ生成ルール記憶部４３と、データ演算設定情報記憶部４４と、データ演算部４５と、をさらに備える。
【００９３】
演算データ生成ルール記憶部４３は、外部装置２０に送信する送信データの演算を定義したルールである演算データ生成ルールを記憶する。演算データ生成ルールは、収集データおよびゲートウェイ装置３０で管理するデータの少なくとも一方を用いて演算したデータである演算データを外部装置２０に送信する場合に、演算データの演算内容を規定したものである。すなわち、演算データ生成ルールは、ゲートウェイ装置３０Ｂ内で演算を行い、演算を行った結果である演算データを外部装置２０に送信する送信データとする場合に定義される。演算データ生成ルールは、一例では、ユーザによって入力部３１を介して入力される。
【００９４】
図１８は、実施の形態４による演算データ生成ルールの一例を示す図である。なお、図１８の例では、理解の容易のため、ルールを文章で表示している。演算データ生成ルール４３０は、管理データ情報３３０に含まれるデータを用いて行う演算を定義する内容を有するレコードを含む。１つのレコードは、複数のフィールドから構成される。フィールドの名称がフィールド名である。図１８の例では、番号と、内容と、がフィールド名である。また、レコードは、番号と、内容と、をフィールドとして持つデータの集合体である。番号は、演算データ生成ルール４３０に含まれるレコードに付される識別情報である。内容は、管理データ情報３３０に含まれるデータ名を用いた演算を定義したものである。内容は、一例では、管理データ情報３３０のデータ名を用いて表現される。
【００９５】
図１７に戻り、データ演算設定情報記憶部４４は、演算式とデータ名との関係が規定されるデータ演算設定情報を記憶する。演算式は、管理データ情報３３０の中のデータを用いて、演算データ生成ルール４３０の内容にしたがって、データ処理設定生成部３８によって生成されたデータである。データ名は、演算式に付されるデータ名である。図１９は、実施の形態４によるデータ演算設定情報の一例を示す図である。データ演算設定情報４４０は、ゲートウェイ装置３０Ｂで行われる演算の内容を有するレコードを含む。１つのレコードは、複数のフィールドから構成される。フィールドの名称がフィールド名である。図１９の例では、番号と、演算内容と、演算結果と、がフィールド名である。また、レコードは、番号と、演算内容と、演算結果と、をフィールドとして持つデータの集合体である。
【００９６】
番号は、データ演算設定情報４４０に含まれるレコードに付される識別情報である。演算内容は、演算データ生成ルール４３０の内容を、管理データ情報３３０のデータ名を用いた演算式で表したものである。演算結果は、演算内容の演算式の結果得られる値に付されるデータ名である。このように、データ演算設定情報４４０は、ゲートウェイ装置３０Ｂ内で使用される演算を定義した情報である。演算の一例は、平均、合計、最大および最小の他、進捗率などのＫＰＩ（Key  Performance  Indicator）指標である。
【００９７】
図１７に戻り、データ演算部４５は、データ演算設定情報記憶部４４のデータ演算設定情報４４０に基づいて、演算を行い、演算の結果得られる値を演算データとして収集データ一時記憶部３５に記憶する。データ演算部４５は、収集データ一時記憶部３５または保存データ記憶部３６に記憶されている収集データを用いて演算を行う。
【００９８】
データ処理設定生成部３８は、実施の形態１の機能に加えて、管理データ情報３３０の中のデータを用いて、演算データ生成ルール４３０に従って生成した演算式と、演算式に付されるデータ名である演算結果と、を含むレコードを、データ演算設定情報４４０に追加する機能を有する。データ処理設定生成部３８は、生成したデータ演算設定情報４４０をデータ演算設定情報記憶部４４に記憶する機能を有する。また、データ処理設定生成部３８は、データ演算設定情報４４０に含まれる演算結果をデータ名として含むレコードを、管理データ情報記憶部３３の管理データ情報３３０およびデータ送信設定情報記憶部３９のデータ送信設定情報３９０に追加し、追加したレコードを含むデータ送信設定情報３９０を表示部３２に表示する機能を有する。
【００９９】
図２０は、実施の形態４による管理データ情報の一例を示す図である。管理データ情報３３０の構成は、図２と同様であるので、説明を省略する。図２０では、図２の管理データ情報３３０に、番号が「１１」、「１２」のレコードが追加されている。番号が「１１」、「１２」のレコードは、データ処理設定生成部３８によって生成された図１９のデータ演算設定情報４４０の演算結果をデータ名としたものである。これらのレコードのデータ型は、データ演算設定で定義される演算式で使用される収集データのデータ型と、演算子と、からデータ処理設定生成部３８によって決定される。一例では、整数型のデータの割り算の場合、データ型は実数型となるなどの情報が予め定められており、この情報に基づいて、データ型を決定することができる。また、データ処理設定生成部３８は、上記のレコードの収集周期について、データ演算設定で定義される演算式で使用される収集データの収集周期を用いることができる。
【０１００】
図２１は、実施の形態４によるデータ送信設定情報の一例を示す図である。データ送信設定情報３９０の構成は、図５と同様であるので、説明を省略する。図２１では、図５のデータ送信設定情報３９０に、番号が「９」、「１０」のレコードが追加されている。番号が「９」、「１０」のレコードは、データ処理設定生成部３８によって生成された図１９のデータ演算設定情報４４０の演算結果をデータ名としたものである。
【０１０１】
つぎに、このような構成のゲートウェイ装置３０Ｂにおける送信データ設定支援方法について説明する。図２２は、実施の形態４による送信データ設定支援方法の手順の一例を示すフローチャートである。ここでは、ユーザによって、管理データ情報３３０のデータ名を用いて、演算データ生成ルール４３０が作成され、演算データ生成ルール記憶部４３に記憶さているものとする。また、外部装置２０に送信する送信データが収集データを用いて演算を行う演算データである場合を例に挙げる。
【０１０２】
まず、データ処理設定生成部３８は、演算データ生成ルール４３０を演算データ生成ルール記憶部４３から読み込む（ステップＳ７１）。ついで、データ処理設定生成部３８は、演算データ生成ルール４３０に基づいて、管理データ情報３３０中のデータ名を用いて作成した演算式を演算内容とし、演算式の結果を演算結果としたレコードをデータ演算設定情報４４０に追加する（ステップＳ７２）。データ処理設定生成部３８は、データ演算設定情報４４０に追加したレコードの演算結果をデータ名としたレコードを、管理データ情報３３０およびデータ送信設定情報３９０に追加する（ステップＳ７３）。
【０１０３】
ついで、データ処理設定生成部３８は、追加したレコードを含むデータ送信設定情報３９０を表示部３２に表示する（ステップＳ７４）。その後、ユーザは、表示部３２に表示されたデータ送信設定情報３９０の内容を必要に応じて編集する。一例では、不要な演算結果を削除したり、送信周期および送信先を設定したりする。これによって、データ送信設定情報３９０に必要な内容が入力される。ユーザは、編集が終了するとデータ送信設定情報３９０の登録の指示を行う。データ処理設定生成部３８は、データ送信設定情報３９０の登録の指示を受けると、データ送信設定情報記憶部３９に記憶されているデータ送信設定情報３９０を更新する（ステップＳ７５）。以上によって、送信データ設定支援方法が終了する。
【０１０４】
ここで、送信データ設定支援方法の具体例について説明する。図１８の演算データ生成ルール４３０の番号が「１」に規定される条件にしたがってデータ演算設定情報４４０を生成する場合を例に挙げる。図１８の演算データ生成ルール４３０の番号が「１」で規定される内容は、「データ名（“生産数”＋記号）のデータを（“目標生産数”＋記号）で除算し、結果をデータ名（“進捗率”＋記号）とする」となっている。データ処理設定生成部３８は、図２の管理データ情報３３０を参照して、この内容にしたがった演算内容を生成する。例えば、データ処理設定生成部３８は、図２の管理データ情報３３０から、データ名が「生産数Ａ」である番号が「１」のレコードと、データ名が「目標生産数Ａ」である番号が「２」のレコードと、データ名が「生産数Ｂ」である番号が「６」のレコードと、データ名が「目標生産数Ｂ」である番号が「７」のレコードと、を抽出する。
【０１０５】
ついで、データ処理設定生成部３８は、演算データ生成ルール４３０の番号「１」の内容にしたがって、演算内容として「生産数Ａ÷目標生産数Ａ」という演算式を生成し、これに「進捗率Ａ」という演算結果を付する。同様に、データ処理設定生成部３８は、演算内容として「生産数Ｂ÷目標生産数Ｂ」という演算式を生成し、これに「進捗率Ｂ」という演算結果を付する。そして、データ処理設定生成部３８は、生成した演算式と演算結果との組み合わせをレコードとしてデータ演算設定情報４４０に登録する。この結果、図１９に示されるようなデータ演算設定情報４４０が得られる。
【０１０６】
また、データ処理設定生成部３８は、演算式に付した演算結果をデータ名としたレコードを管理データ情報３３０に追加する。この結果、図２０に示されるように、管理データ情報３３０には、データ名が「進捗率Ａ」である番号が「１１」のレコードが追加され、データ名が「進捗率Ｂ」である番号が「１２」のレコードが追加される。さらに、データ処理設定生成部３８は、演算式に付した演算結果をデータ名としたレコードをデータ送信設定情報３９０にも追加する。この結果、図２１に示されるように、データ送信設定情報３９０には、データ名が「進捗率Ａ」である番号が「９」のレコードが追加され、データ名が「進捗率Ｂ」である番号が「１０」のレコードが追加される。
【０１０７】
その後、データ処理設定生成部３８は、レコードが追加されたデータ送信設定情報３９０を表示部３２に表示する。ユーザは、必要な場合にデータ送信設定情報３９０を編集する。そして、ユーザによってデータ送信設定情報３９０の登録の指示がなされると、データ処理設定生成部３８は、データ送信設定情報記憶部３９のデータ送信設定情報３９０の内容を更新する。
【０１０８】
つぎに、ゲートウェイ装置３０Ｂのデータ送信処理の概要について説明する。なお、収集データの外部装置２０への送信については、実施の形態１で説明したので、ここでは、演算データの送信処理の概要について説明する。
【０１０９】
データ収集部３４は、データ収集設定情報に基づいて、機器１０からデータを収集し、収集した収集データを収集データ一時記憶部３５に記憶する。データ収集部３４は、収集データをファイルとして保存する設定がデータ収集設定情報になされている場合には、収集データをファイルとして保存データ記憶部３６に記憶する。
【０１１０】
その後、データ演算部４５は、データ演算設定情報４４０に基づいて、収集データ一時記憶部３５または保存データ記憶部３６に記憶されている収集データを用いて演算を行い、演算結果である演算データを収集データ一時記憶部３５に記憶する。なお、データ演算部４５は、演算データをファイルとして保存する設定が管理データ情報３３０になされている場合には、演算データをファイルとして保存データ記憶部３６に記憶する。データ送信部４０は、データ送信設定情報３９０に基づいて、収集データ一時記憶部３５または保存データ記憶部３６に記憶されている演算データを外部装置２０へ送信する。
【０１１１】
実施の形態４では、データ処理設定生成部３８は、演算データ生成ルール４３０に基づいて管理データ情報３３０中のデータ名を用いた演算式を作成し、演算式に演算結果を対応付けたレコードをデータ演算設定情報４４０に追加する。また、データ処理設定生成部３８は、演算式に付した演算結果をデータ名とするレコードを管理データ情報３３０と、データ送信設定情報３９０と、に追加する。データ演算部４５は、収集データ一時記憶部３５または保存データ記憶部３６に記憶されている収集データを用いて、データ演算設定情報４４０に基づいて演算を行い、演算の結果として得られる演算データを収集データ一時記憶部３５または保存データ記憶部３６に記憶する。そして、データ送信部４０は、データ送信設定情報３９０に基づいて、収集データ一時記憶部３５または保存データ記憶部３６に記憶された演算データを送信データとして外部装置２０に送信する。これによって、ユーザは演算データ生成ルール４３０を生成するだけで、ゲートウェイ装置３０Ｂで演算した結果である演算データを外部装置２０に送信することができる。
【０１１２】
つまり、従来では、データ演算設定情報４４０への演算式および演算結果の登録と、データ送信設定情報３９０への演算式に付した演算結果に対応するデータ名の登録と、をユーザが行わなければならなかった。しかし、実施の形態４では、ユーザが演算データ生成ルール４３０を生成するだけで、これらの処理をゲートウェイ装置３０Ｂが自動で実行するので、ユーザによる演算データを外部装置２０に送信するための設定に要する工数を削減することができるという効果を有する。
【０１１３】
ここで、ゲートウェイ装置３０，３０Ａ，３０Ｂのハードウェア構成について説明する。実施の形態１から４によるゲートウェイ装置３０，３０Ａ，３０Ｂは、具体的にはコンピュータシステムにより実現される。図２３は、実施の形態１から４によるゲートウェイ装置を実現するコンピュータシステムのハードウェア構成の一例を示す図である。図２３に示されるように、このコンピュータシステム１００は、制御部１０１と、入力部１０２と、記憶部１０３と、表示部１０４と、通信部１０５と、出力部１０６と、を備え、これらはシステムバス１０７を介して接続されている。
【０１１４】
図２３において、制御部１０１は、例えば、ＣＰＵ等である。制御部１０１は、実施の形態１から４の送信データ設定支援方法が記述された送信データ設定支援プログラムを実行する。入力部１０２は、たとえばキーボード、マウスなどで構成され、コンピュータシステム１００のユーザが、各種情報の入力を行うために使用する。記憶部１０３は、ＲＡＭ（Random  Access  Memory），ＲＯＭ（Read  Only  Memory）などの各種メモリと、ＨＤＤ（Hard  Disk  Drive）またはＳＳＤ（Solid  State  Drive）などのストレージデバイスと、を含み、制御部１０１が実行すべきプログラム、処理の過程で得られた必要なデータなどを記憶する。また、記憶部１０３は、プログラムの一時的な記憶領域としても使用される。表示部１０４は、液晶表示パネルなどで構成され、コンピュータシステム１００のユーザに対して各種画面を表示する。通信部１０５は、通信処理を実施する通信回路などである。通信部１０５は、複数の通信方式にそれぞれ対応する複数の通信回路で構成されていてもよい。出力部１０６は、プリンタ、外部記憶装置などの外部の装置へデータを出力する出力インタフェースである。なお、図２３は、一例であり、コンピュータシステム１００の構成は図２３の例に限定されない。
【０１１５】
ここで、実施の形態１から４による送信データ設定支援プログラムが実行可能な状態になるまでのコンピュータシステム１００の動作例について説明する。上述した構成をとるコンピュータシステム１００には、たとえば、図示しないＣＤ（Compact  Disc）−ＲＯＭドライブまたはＤＶＤ（Digital  Versatile  Disc）−ＲＯＭドライブにセットされたＣＤ−ＲＯＭまたはＤＶＤ−ＲＯＭから、送信データ設定支援プログラムが記憶部１０３にインストールされる。そして、送信データ設定支援プログラムの実行時に、記憶部１０３から読み出された送信データ設定支援プログラムが記憶部１０３の主記憶装置となる領域に格納される。この状態で、制御部１０１は、記憶部１０３に格納された送信データ設定支援プログラムに従って、実施の形態１から４のゲートウェイ装置３０，３０Ａ，３０Ｂにおける送信データ設定支援処理を実行する。
【０１１６】
なお、上記の説明においては、ＣＤ−ＲＯＭまたはＤＶＤ−ＲＯＭを記録媒体として、送信データ設定支援プログラムを提供しているが、これに限らず、コンピュータシステム１００の構成、提供するプログラムの容量などに応じて、たとえば、通信部１０５を経由してインターネットなどの伝送媒体により提供されたプログラムを用いることとしてもよい。
【０１１７】
図１、図１１および図１７に示したデータ収集部３４、データ処理設定生成部３８、データ送信部４０およびデータ演算部４５は、図２３の制御部１０１により実現される。図１、図１１および図１７に示した管理データ情報記憶部３３、収集データ一時記憶部３５、保存データ記憶部３６、送信データ抽出ルール記憶部３７、データ送信設定情報記憶部３９、演算データ生成ルール記憶部４３およびデータ演算設定情報記憶部４４は、図２３に示した記憶部１０３の一部である。図１、図１１および図１７に示した入力部３１は、図２３に示した入力部１０２により実現され、図１、図１１および図１７に示した表示部３２は、図２３に示した表示部１０４により実現される。
【０１１８】
以上の実施の形態に示した構成は、一例を示すものであり、別の公知の技術と組み合わせることも可能であるし、実施の形態同士を組み合わせることも可能であるし、要旨を逸脱しない範囲で、構成の一部を省略、変更することも可能である。
【符号の説明】
【０１１９】
１  データ送信システム、１０  機器、２０  外部装置、３０，３０Ａ，３０Ｂ  ゲートウェイ装置、３１，１０２  入力部、３２，１０４  表示部、３３  管理データ情報記憶部、３４  データ収集部、３５  収集データ一時記憶部、３６  保存データ記憶部、３７  送信データ抽出ルール記憶部、３８  データ処理設定生成部、３９  データ送信設定情報記憶部、４０  データ送信部、４１  学習装置、４２  推論装置、４３  演算データ生成ルール記憶部、４４  データ演算設定情報記憶部、４５  データ演算部、６０  ネットワーク、１００  コンピュータシステム、１０１  制御部、１０３  記憶部、１０５  通信部、１０６  出力部、１０７  システムバス、３３０  管理データ情報、３３５  クロスリファレンス情報、３７０  送信データ抽出ルール、３９０  データ送信設定情報、４１１，４２１  データ取得部、４１２  モデル生成部、４１３  学習済モデル記憶部、４２２  推論部、４３０  演算データ生成ルール、４４０  データ演算設定情報。
【要約】
送信データ設定支援プログラムは、第１ルール読み込みステップと、送信データ抽出ステップと、データ追加ステップと、表示ステップと、をコンピュータに実行させる。第１ルール読み込みステップでは、機器から収集したデータである収集データの中から外部装置に送信するデータである送信データを抽出する条件をデータの特徴を示す属性情報を用いて規定したルールである送信データ抽出ルールを読み込む。送信データ抽出ステップでは、機器から収集データを収集するときのコンピュータの設定を含むデータ収集設定情報の中から送信データ抽出ルールに該当するデータを送信データとして抽出する。データ追加ステップでは、送信データの外部装置への送信条件を含むデータ送信設定情報に抽出したデータを追加する。表示ステップでは、データを追加したデータ送信設定情報を表示部に表示する。【図１】
0006961129.tif 000002
【図２】
0006961129.tif 000003
【図３】
0006961129.tif 000004
【図４】
0006961129.tif 000005
【図５】
0006961129.tif 000006
【図６】
0006961129.tif 000007
【図７】
0006961129.tif 000008
【図８】
0006961129.tif 000009
【図９】
0006961129.tif 000010
【図１０】
0006961129.tif 000011
【図１１】
0006961129.tif 000012
【図１２】
0006961129.tif 000013
【図１３】
0006961129.tif 000014
【図１４】
0006961129.tif 000015
【図１５】
0006961129.tif 000016
【図１６】
0006961129.tif 000017
【図１７】
0006961129.tif 000018
【図１８】
0006961129.tif 000019
【図１９】
0006961129.tif 000020
【図２０】
0006961129.tif 000021
【図２１】
0006961129.tif 000022
【図２２】
0006961129.tif 000023
【図２３】
0006961129.tif 000024