IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ 株式会社東芝の特許一覧 ▶ 東芝ソリューション株式会社の特許一覧

特開2023-44163データ収集装置、データ収集方法、およびプログラム
<>
  • 特開-データ収集装置、データ収集方法、およびプログラム 図1
  • 特開-データ収集装置、データ収集方法、およびプログラム 図2
  • 特開-データ収集装置、データ収集方法、およびプログラム 図3
  • 特開-データ収集装置、データ収集方法、およびプログラム 図4
  • 特開-データ収集装置、データ収集方法、およびプログラム 図5
  • 特開-データ収集装置、データ収集方法、およびプログラム 図6A
  • 特開-データ収集装置、データ収集方法、およびプログラム 図6B
  • 特開-データ収集装置、データ収集方法、およびプログラム 図6C
  • 特開-データ収集装置、データ収集方法、およびプログラム 図7
  • 特開-データ収集装置、データ収集方法、およびプログラム 図8
  • 特開-データ収集装置、データ収集方法、およびプログラム 図9
  • 特開-データ収集装置、データ収集方法、およびプログラム 図10
  • 特開-データ収集装置、データ収集方法、およびプログラム 図11
  • 特開-データ収集装置、データ収集方法、およびプログラム 図12
  • 特開-データ収集装置、データ収集方法、およびプログラム 図13
  • 特開-データ収集装置、データ収集方法、およびプログラム 図14
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2023044163
(43)【公開日】2023-03-30
(54)【発明の名称】データ収集装置、データ収集方法、およびプログラム
(51)【国際特許分類】
   G06F 5/00 20060101AFI20230323BHJP
   G06Q 10/20 20230101ALI20230323BHJP
【FI】
G06F5/00
G06Q10/00 300
【審査請求】未請求
【請求項の数】8
【出願形態】OL
(21)【出願番号】P 2021152048
(22)【出願日】2021-09-17
(71)【出願人】
【識別番号】000003078
【氏名又は名称】株式会社東芝
(71)【出願人】
【識別番号】301063496
【氏名又は名称】東芝デジタルソリューションズ株式会社
(74)【代理人】
【識別番号】110003708
【氏名又は名称】弁理士法人鈴榮特許綜合事務所
(72)【発明者】
【氏名】池山 太一
【テーマコード(参考)】
5L049
【Fターム(参考)】
5L049CC15
(57)【要約】
【課題】 制御機器側の条件が変わった場合であっても、手間や時間をかけることなく、使用を継続することが可能なデータ収集装置、データ収集方法、およびプログラムを提供すること。
【解決手段】 実施形態によれば、データ収集装置は、制御機器からの入力データの形式と、入力データに対応する出力データとの形式を判定する入力判定部と、入力データの入力位置、出力データの出力位置、および入力データから出力データへ変換するための変換関数の少なくとも何れかを設定する入出力設定ファイルと、判定の結果および入出力設定ファイルに基づいて、入力データを出力データの形式に変換するデータ変換部とを備える。
【選択図】図1
【特許請求の範囲】
【請求項1】
制御機器からの入力データの形式と、前記入力データに対応する出力データとの形式を判定する入力判定部と、
前記入力データの入力位置と、前記出力データの出力位置と、前記入力データから前記出力データへ変換するための変換関数との少なくとも何れかを設定する入出力設定ファイルと、
前記判定の結果と、前記入出力設定ファイルとに基づいて、前記入力データを前記出力データの形式に変換するデータ変換部と
を備える、データ収集装置。
【請求項2】
前記変換関数を記憶する変換関数部をさらに備える、請求項1に記載のデータ収集装置。
【請求項3】
前記データ変換部は、前記入力データを前記出力データの形式に変換する際、前記入出力設定ファイルによって設定され、前記変換関数部に記憶された変換関数を実行する、請求項2に記載のデータ収集装置。
【請求項4】
前記入出力設定ファイルは、前記入力データの入力位置と、前記出力データの出力位置との設定を記述した行を備え、
前記データ変換部は、前記入力データを前記出力データの形式に変換する際、前記入出力設定ファイルにおける開始行から最終行まで、前記変換を繰り返し実行する、請求項1乃至3のうちいずれか1項に記載のデータ収集装置。
【請求項5】
前記データ変換部による変換によって得られた前記出力データを圧縮して、出力する、データ出力処理部をさらに備える、請求項1乃至4のうちいずれか1項に記載のデータ収集装置。
【請求項6】
前記入出力設定ファイルは複数あり、
前記入力判定部は、前記複数ある入出力設定ファイルの中から、
デフォルトで指定された入出力設定ファイル、
前記入力データの指定されたエリアに基づいて判定される前記制御機器の種別およびバージョンに基づいて決定される入出力設定ファイル、
前記制御機器の接続状態が接続である場合に、予め指定されている入出力設定ファイル、および
予め設定された設定値に基づいて決定される入出力設定ファイル
のうちの何れかを、前記データ変換部が前記変換の際に基づく入出力設定ファイルとして決定する、請求項1乃至5のうち何れか1項に記載のデータ収集装置。
【請求項7】
プロセッサによって実施されるデータ収集方法であって、
前記プロセッサが、
制御機器からの入力データの形式と、前記入力データに対応する出力データとの形式を判定し、
前記入力データの入力位置と、前記出力データの出力位置と、前記入力データから前記出力データへ変換するための変換関数との少なくとも何れかを設定し、
前記判定の結果と、前記入出力設定ファイルとに基づいて、前記入力データを前記出力データの形式に変換する、データ収集方法。
【請求項8】
制御機器からの入力データの形式と、前記入力データに対応する出力データとの形式を判定する機能、
前記入力データの入力位置と、前記出力データの出力位置と、前記入力データから前記出力データへ変換するための変換関数との少なくとも何れかを設定する機能、
前記判定の結果と、前記入出力設定ファイルとに基づいて、前記入力データを前記出力データの形式に変換する機能を、
プロセッサに実現させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明の実施形態は、データ収集装置、データ収集方法、およびプログラムに関する。
【背景技術】
【0002】
一般に、鉄道車両等の制御機器からデータを収集するために、データ収集装置が用いられている。
【0003】
この種の制御機器は、製品寿命により、あるいは、最新技術の導入等により、アップグレードされたり、最新のものにリプレースされることがある。あるいは、よりきめ細かな制御のために、台数が追加されることもある。
【0004】
このように、制御機器側の条件が変わった場合であっても、制御機器からデータを収集するためのソフトウェアや、定義ファイルを作り直すことによって、既存のデータ収集装置がそのまま利用されている。
【先行技術文献】
【特許文献】
【0005】
【特許文献1】国際公開第2020/136782号公報
【特許文献2】特開2015-152969号公報
【発明の概要】
【発明が解決しようとする課題】
【0006】
しかしながら、データ収集装置のソフトウェアや、定義ファイルを作り直すためには、作業員がデータ収集装置の設置場所に赴き、データ収集装置を、制御機器から取り外す必要がある。さらに、作業員が、データ収集装置に対してソフトウェアや定義ファイルの書き換えを行った後に、制御機器に再接続し、動作確認する必要がある。
【0007】
このように、制御機器側の条件が変わった場合、既存のデータ収集装置をそのまま利用するためには、作業員による現場作業が必要となるので、相応の手間や時間を要する。
【0008】
本発明が解決しようとする課題は、制御機器側の条件が変わった場合であっても、手間や時間をかけることなく、使用を継続することが可能なデータ収集装置、データ収集方法、およびプログラムを提供することである。
【課題を解決するための手段】
【0009】
実施形態のデータ収集装置は、制御機器からの入力データの形式と、入力データに対応する出力データとの形式を判定する入力判定部と、入力データの入力位置と、出力データの出力位置と、入力データから出力データへ変換するための変換関数との少なくとも何れかを設定する入出力設定ファイルと、判定の結果と、入出力設定ファイルとに基づいて、入力データを出力データの形式に変換するデータ変換部とを備える。
【図面の簡単な説明】
【0010】
図1図1は、本発明の実施形態のデータ収集方法が提供されたデータ収集装置の概要を説明するための概念図である。
図2図2は、データ収集装置10の一例を示すハードウェア構成図である。
図3図3は、データ収集システム1に含まれるデータ収集装置10の機能構成の一例を示すブロック図である。
図4図4は、データ表示装置12およびエンジニアリングツール13を、クラウド上に構築されるWebアプリケーションとした場合におけるデータ収集システム1の構成例を示すブロック図である。
図5図5は、データ収集装置10にディスプレイ装置14を接続したデータ収集システム1Aを示すブロック図である。
図6A図6Aは、データ収集装置10によるデータ収集時の概略処理を示すフローチャートである。
図6B図6Bは、図6Aに示すデータ収集装置10の動作に対応するデータ表示装置12の処理を示すフローチャートである。
図6C図6Cは、図6Aに示すデータ収集装置10の動作に対応するエンジニアリングツール13の処理を示すフローチャートである。
図7図7は、図6AにおけるステップS11の詳細処理を示すフローチャートである。
図8図8は、機能追加された変換関数をエンジニアリングツール13からデータ収集装置10に登録する際の詳細処理を示すフローチャートである。
図9図9は、エンジニアリングツール13による入出力設定ファイル114の追加および変更時の詳細処理を示すフローチャートである。
図10図10は、入力判定部111が、使用する入出力設定ファイル114を判定する場合の実装例を示す図である。
図11図11は、変換関数Hによる作用を説明するための図である。
図12図12は、変換関数部113に記憶された、ドメインに特化された変換関数Hの作用を説明するための図である。
図13図13は、入出力設定ファイル114の実装例を示す図である。
図14図14は、バイナリ形式の出力データおよびJSON形式の出力データを示す図である。
【発明を実施するための形態】
【0011】
以下に、本発明の実施形態のデータ収集方法が提供されたデータ収集装置を、図面を参照して説明する。
【0012】
なお、以下の実施形態の説明において、同一部分については、同一符号を用いて示し、重複説明を避ける。
【0013】
図1は、本発明の実施形態のデータ収集方法が提供されたデータ収集装置の概要を説明するための概念図である。
【0014】
すなわち、データ収集装置10は、例えば鉄道車両用の制御機器Aから入力データDを受け取り、入力データDを、データ表示装置12から出力される出力形式Fのための出力データEに変換して、データ表示装置12へ出力する。
【0015】
これによって、データ表示装置12は、出力形式Fにしたがって出力データEを表示することが可能となる。
【0016】
図2は、データ収集装置10の一例を示すハードウェア構成図である。
【0017】
データ収集装置10は、バス200によって互いに接続された記憶部201、一次記憶部202、計算部203、および入出力部205を備えている。このようなハードウェア構成からなるデータ収集装置10は、限定される訳ではないが、PCや、タブレット端末でも実現することができる。
【0018】
図3は、データ収集システム1に含まれるデータ収集装置10の機能構成の一例を示すブロック図である。
【0019】
図1を用いて説明したような機能を実現するために、データ収集装置10は、図3に例示するように、入力判定部111、データ変換部112、変換関数部113、入出力設定ファイル114、データ出力処理部115、およびスイッチ設定部116を備えている。これらは、図2における計算部203内に構築される。
【0020】
入力判定部111は、制御機器からの入力データの形式と、各入力データに対応する出力データの形式とを判定する。さらにこの判定結果に基づいて、入出力設定ファイル114を決定する。
【0021】
図3に示す制御機器Aは、図1に示す制御機器Aに対応する。入力判定部111は、複数の制御機器を取り扱うこともできるので、図3では、制御機器Aに加えて、制御機器Bも示している。
【0022】
図3に示すように、2つの制御機器A、Bが接続されている入力判定部111は、制御機器Aから入力データDaを受け取り、入力データDaの形式と、入力データDaに対応する出力データEaの形式Faとを判定する。また、制御機器Bから入力データDbを受け取った場合も同様に、入力データDbの形式と、入力データDbに対応する出力データEbの形式Fbとを判定する。
【0023】
入出力設定ファイル114は、入力データDの入力位置と、出力データEの出力位置と、入力データDを出力データEへ変換するための変換関数Hとを設定している。
【0024】
変換関数部113は、変換関数Hを記憶している。
【0025】
データ変換部112は、入力判定部111による判定の結果と、入出力設定ファイル114とに基づいて、入力データDを出力データEの形式に変換する。例えば、データ変換部112は、入出力設定ファイル114による設定に従い、出力データEの形式Fを、バイナリ形式かJSON形式のいずれかにすることもできる。
【0026】
これによって、データ収集装置10は、例えば、データ表示装置12によって仕様が変更された場合であっても、入出力設定ファイル114の変更のみで、引き続き同様に機能できる。
【0027】
ところで、図3では簡略のために1つしか例示されていないが、入出力設定ファイル114は複数ある場合もある。この場合、入力判定部111は、複数ある入出力設定ファイル114の中から、以下(1)~(4)の何れかによって、データ変換部112が、前述した変換処理を行う際に使用する入出力設定ファイル114を決定する。
【0028】
(1)入力判定部111は、デフォルトで指定された入出力設定ファイル114とする。すなわち、接続状態によらず、固定の入出力設定ファイル114を使用する。
【0029】
(2)入力判定部111は、入力データDの指定されたエリアに基づいて判定される制御機器の種別およびバージョンに基づいて決定される入出力設定ファイル114とする。該当する入出力設定ファイル114がない場合は、デフォルトの入出力設定ファイルを使用する。
【0030】
(3)入力判定部111は、制御機器のLANケーブルなどによる接続状態を検知し、接続がある場合に、予め指定されている入出力設定ファイル114とする。
【0031】
(4)入力判定部111は、スイッチ設定部116に予め設定された設定値に基づいて決定される入出力設定ファイル114とする。なお、スイッチ設定部116には、入出力設定ファイル114の決定に必要な設定値が設定されている。
【0032】
データ変換部112は、入力データDを出力データEの形式に変換する際、入出力設定ファイル114によって設定され、変換関数部113に記憶された変換関数Hを実行する。
【0033】
入出力設定ファイル114は、入力データDの入力位置と、出力データEの出力位置との設定を記述した行を備えている。
【0034】
そして、データ変換部112は、入力データDを出力データEの形式に変換する際、入出力設定ファイル114における開始行から最終行まで、前述した変換処理を繰り返し実行する。
【0035】
データ出力処理部115は、データ変換部112による変換によって得られた出力データEを、データ収集システム1の外部に設けられたデータ表示装置12へ出力する。また、データ出力処理部115は、データ収集装置10の現在の状態を示す状態データを、エンジニアリングツール13へ一定周期で繰り返し出力する。
【0036】
この際、データ出力処理部115は、入出力設定ファイル114による設定に従い、出力データEの圧縮有無や、送信失敗時の再送有無を切り替えることができる。出力データEを圧縮して送信することにより、送信するデータ量を少なくすることが可能になる。また、回線の状況によって出力データEが欠落した場合でも、再送により補完することが可能となる。
【0037】
データ表示装置12は、図1に例示されるデータ表示装置12に対応しており、データ出力処理部115から出力された、圧縮された出力データEを受信し、伸張し、形式Fにしたがって表示する。
【0038】
これによって、制御機器A、Bからの入力データDa、Dbを、データ収集装置10において収集し、入力データDa、Dbに対応する出力データEa、Ebを、それぞれ指定された出力形式Fa、Fbで、データ表示装置12から表示させることができるので、ユーザは、制御機器A、Bが設置されている現場に赴くことなく、出力データEa、Ebを閲覧および確認することが可能になる。
【0039】
エンジニアリングツール13は、データ出力処理部115からの状態データに基づいて、データ収集装置10の現在の状態を表示および監視する。さらには、監視された状態に基づいて、データ収集装置10のソフトウェアの追加・変更や、設定の追加・変更を行う。これには、新たなまたは変更された変換関数Hを変換関数部113に出力し、記憶または更新させたり、新たなまたは変更された入出力設定ファイル114を、データ収集装置10に出力し、記憶または更新させたりすることを含む。
【0040】
このように、エンジニアリングツール13によって、データ収集装置10の機能追加あるいは設定変更を、遠隔から行うことができる。
【0041】
以上説明したように、データ表示装置12およびエンジニアリングツール13は、データ収集装置10との関連性が強いことから、図1に例示するように、データ収集装置10と、データ表示装置12およびエンジニアリングツール13とをまとめて、データ収集システム1と見なすこともできる。
【0042】
また、データ表示装置12およびエンジニアリングツール13は、クラウド上に構築されるWebアプリケーションとして実現することもできる。
【0043】
図4は、データ表示装置12およびエンジニアリングツール13を、インターネット300のような通信ネットワークを使ってクラウド上に構築されるWebアプリケーションとした場合におけるデータ収集システム1の構成例を示すブロック図である。
【0044】
このような場合、データ表示装置12およびエンジニアリングツール13は、PaaSのサービス等を利用することができる。
【0045】
このようなデータ収集システム1を利用することによって、新しい機器の追加や、変換ルールの変更が生じた際であっても、ユーザは、制御機器A、Bが設置されている現場に赴くことなく、エンジニアリングツール13を操作することによって、遠隔から、変換関数部113に、変換関数Hを追加することができる。また、同様にエンジニアリングツール13を操作することによって、遠隔から、新たな入出力設定ファイル114を追加できるなど、データ収集装置10を現場に設置したまま、機能拡張や、メンテナンス(アプリケーションや入出力設定ファイルの更新)等を行うことが可能になる。
【0046】
図5は、図4の構成の変形例であり、データ収集装置10にディスプレイ装置14を接続したデータ収集システム1Aを示すブロック図である。
【0047】
ディスプレイ装置14は、データ収集装置10と同一の現場、設置場所に配置されている。
【0048】
このような場合、入出力設定ファイル114に、ディスプレイ装置14に対する出力定義情報(出力先、フォーマット等)を記述することで、データ表示装置12に対する出力と同様の手順で、出力データを、ディスプレイ装置14から表示させることが可能となる。
【0049】
これによって、現場作業員や操作員は、ディスプレイ装置14から、出力データを見ることが可能となる。
【0050】
次に、以上のように構成した本実施形態のデータ収集装置の動作例を説明する。
【0051】
図6Aは、データ収集装置10によるデータ収集時の概略処理を示すフローチャートである。
【0052】
データ収集装置10では、入力判定部111によって、接続された複数の制御機器(例えば、制御機器A、B)から出力された各入力データDが受信され、各入力データDの形式と、各入力データDに対応する各出力データEの各形式Fとが判定される。
【0053】
さらに、データ変換部112によって、入力判定部111による判定の結果と、入出力設定ファイル114とに基づいて、入力データDが、出力データEの形式Fに変換される。
【0054】
そして、変換された出力データEが、データ出力処理部115によって、データ表示装置12へ送信される(S11)。
【0055】
また、データ収集装置10の現在の状態を示す状態データが、データ出力処理部115によって取得され、一定周期で、エンジニアリングツール13へ送信される(S12)。
【0056】
上記ステップS11およびステップS12の処理が、データ収集装置10の電源が切られるまで繰り返される(S13)。
【0057】
なお、この概略処理に対応する詳細処理については、図7のフローチャートを用いて後述する。
【0058】
図6Bは、図6Aに示すデータ収集装置10の動作に対応するデータ表示装置12の処理を示すフローチャートである。
【0059】
ステップS11においてデータ出力処理部115から送信された出力データEが、データ表示装置12によって受信される(S14)。
【0060】
ステップS14で受信された出力データEが、伸張され、形式Fにしたがって表示される(S15)。
【0061】
上記ステップS14およびステップS15の処理が、データ表示装置12の電源が切られるまで一定周期で繰り返される(S16)。
【0062】
図6Cは、図6Aに示すデータ収集装置10の動作に対応するエンジニアリングツール13の処理を示すフローチャートである。
【0063】
ステップS12においてデータ出力処理部115から送信されたデータ収集装置10の現在の状態を示す状態データが、エンジニアリングツール13によって受信される(S17)。
【0064】
ステップS17において受信された状態データに基づいて、データ収集装置10の現在の状態が、エンジニアリングツール13によって表示される(S18)。
【0065】
上記ステップS17およびステップS18の処理が、エンジニアリングツール13の電源が切られるまで一定周期で繰り返される(S19)。
【0066】
次に、データ収集装置10による図6AにおけるステップS11の詳細処理について説明する。
【0067】
図7は、図6AにおけるステップS11の詳細処理を示すフローチャートである。
【0068】
データ収集装置10では、入力判定部111によって、接続された複数の制御機器(例えば、制御機器A、B)から出力された各入力データDが受信され、各入力データDの各形式と、各入力データDに対応する各出力データEの各形式とが判定される(S21)。
【0069】
ステップS21における判定結果より、入力判定部111によって、使用する入出力設定ファイル114が決定される(S22)。
【0070】
さらに、データ変換部112によって、ステップS21における判定結果と、ステップS22において決定された入出力設定ファイル114とに基づいて、入力データDが、出力データEの形式Fに変換される(S23)。
【0071】
この変換は、具体的には、入出力設定ファイル114によって設定され、変換関数部113に記憶された変換関数Hが、データ変換部112によって実行されることによってなされる。
【0072】
なお、入出力設定ファイル114は、入力データDの入力位置と、出力データEの出力位置との設定を記述した行を備えている。
【0073】
したがって、さらに具体的には、データ変換部112によって、入出力設定ファイル114における開始行から最終行まで、前述した変換関数Hによる変換処理が繰り返されることによってなされる(S23a)。
【0074】
その後、データ出力処理部115では、入出力設定ファイル114による設定に従い、出力データEの圧縮がなされ、出力データEが、データ表示装置12へ出力される(S24)。
【0075】
次に、機能追加された変換関数Hのエンジニアリングツール13による登録時の処理について説明する。
【0076】
図8は、機能追加された変換関数Hをエンジニアリングツール13からデータ収集装置10に登録する際の詳細処理を示すフローチャートである。
【0077】
エンジニアリングツール13は、図3および図4では、1つのデータ収集装置10に接続されているように図示されているが、実際には、複数のデータ収集装置10に接続され得る。このような場合、まず、エンジニアリングツール13は、接続している複数のデータ収集装置10の中から、機能追加された変換関数Hの登録対象とするデータ収集装置10を選択する(S31)。
【0078】
次に、エンジニアリングツール13によって、ステップS31で選択されたデータ収集装置10の状態が、起動中であり接続可能であるか否かが判定される(S32)。
【0079】
ステップS32において、接続可能ではないと判定される(S32:No)と、処理は終了する。
【0080】
一方、ステップS32において、接続可能であると判定される(S32:Yes)と、エンジニアリングツール13と、データ収集装置10との接続が有効とされる(S33)。
【0081】
そして、機能追加された変換関数Hが、エンジニアリングツール13から、データ収集装置10に送信される(S34)。
【0082】
ステップS34で送信された変換関数Hは、データ収集装置10によって正常に受信されると、変換関数部113に登録され、変換関数部113が更新される(S35)。
【0083】
変換関数部113の更新が正常になされると、更新が正常になされたことを示す通知が、データ収集装置10からエンジニアリングツール13に送信される(S36)。
【0084】
この通知の受信に応じて、エンジニアリングツール13は、データ収集装置10との接続を切断し、処理を終了する(S37)。
【0085】
次に、エンジニアリングツール13による入出力設定ファイル114の追加および変更時の処理について説明する。
【0086】
図9は、エンジニアリングツール13による入出力設定ファイル114の追加および変更時の詳細処理を示すフローチャートである。
【0087】
前述したステップS31と同様に、エンジニアリングツール13は、接続している複数のデータ収集装置10の中から、新たな入出力設定ファイル114の追加および変更の対象とするデータ収集装置10を選択する(S41)。
【0088】
次に、エンジニアリングツール13によって、ステップS41で選択されたデータ収集装置10の状態が、起動中であり、接続可能であるか否かが判定される(S42)。
【0089】
ステップS42において、接続可能ではないと判定される(S42:No)と、処理は終了する。
【0090】
一方、ステップS42において、接続可能であると判定される(S42:Yes)と、エンジニアリングツール13と、データ収集装置10との接続が有効とされる(S43)。
【0091】
そして、追加および変更される入出力設定ファイル114が、エンジニアリングツール13から、データ収集装置10に送信される(S44)。
【0092】
ステップS44で送信された入出力設定ファイル114は、データ収集装置10によって正常に受信されると、データ収集装置10に登録され、新たな入出力設定ファイル114として更新される(S45)。
【0093】
入出力設定ファイル114の更新が正常になされると、更新が正常になされたことを示す通知が、データ収集装置10からエンジニアリングツール13に送信される(S46)。
【0094】
この通知の受信に応じて、エンジニアリングツール13は、データ収集装置10との接続を切断し、処理を終了する(S47)。
【0095】
次に、上記のような構成の実施形態のデータ収集装置のいくつかの実装例について説明する。
【実装例1】
【0096】
実装例1では、入力判定部111が、入出力設定ファイル114を設定する場合の例について説明する。
【0097】
図10は、入力判定部111が、使用する入出力設定ファイル114を判定する場合の実装例を示す図である。
【0098】
制御機器Aには、データ収集装置10Aが接続されている。
【0099】
データ収集装置10Aは、入力判定部111Aを備えている。
【0100】
制御機器Aが入力データDaを出力すると、入力データDaは、入力判定部111Aによって受信される。
【0101】
入力判定部111Aは、受信した入力データDaに基づいて、使用する入出設定ファイル114Aを判定する。
【0102】
入力データDaの形式は、予め定められた伝送仕様に従っている。
【0103】
したがって、入力判定部111Aは、入力データDaの伝送仕様に基づいて、使用する入出設定ファイル114Aを判定することができる。例えば、入力データDaの先頭の「0A 01 00 00」から、入力判定部111Aは、制御機器が「A」であり、バージョンが「100」であると判定し、制御機器A向けの設定(Ver100)の入出力設定ファイル114Aを使用すると判定することができる。
【0104】
同様に、制御機器B、Cには、データ収集装置10B、Cがそれぞれ接続され、データ収集装置10B、10Cがそれぞれ、入力判定部111B、111Cを備えている場合、制御機器B、Cが入力データDb、Dcを出力すると、入力データDb、Dcは、入力判定部111B、111Cによって受信され、入力判定部111Bは、受信した入力データDbに基づいて、入力判定部111Cは、受信した入力データDcに基づいて、それぞれ使用する入出設定ファイル114B、111Cを判定する。
【0105】
入力データDb、Dcも、予め定められた伝送仕様に従っている。
【0106】
したがって、入力判定部111Bは、例えば、入力データDbの先頭の「0B 01 00 00」から、制御機器B向けの設定(Ver100)の入出力設定ファイル114Bを使用すると判定することができ、入力判定部111Cは、入力データDcの先頭の「0C 02 00 00」から、制御機器C向けの設定(Ver200)の入出力設定ファイル114Cを使用すると判定することができる。
【実装例2】
【0107】
実装例2では、変換関数部113に記憶された変換関数Hによる、入力データDから出力データEへの変換について、日付データの変換を例に説明する。
【0108】
データ収集装置10は、様々な入力形式の日付データを変換する変換関数Hとして、以下に示すように、制御機器に特化されない多くの標準関数群を、変換関数部113に常備(記憶)している。
【0109】
(バイナリ形式)BcdToDate、BinToDate、AsciiToDate、UnixtimeToDate
(JSON形式)Json_BcdToDate、Json_BinToDate、Json_AsciiToDate、Json_UnixtimeToDate
一方、入出力設定ファイル114は、変換関数部113に記憶されたこれら多くの標準関数群の中から、入力データDおよび出力データEの形式に従って、適切な変換関数Hを設定する。
【0110】
例えば、出力データの形式としてはバイナリ形式とJSON形式とがある。一般的に、リアルタイム表示等でデータ量が限定的で解析しやすさを求める場合はJSON形式を使用し、詳細でデータ量の大きい場合にはバイナリ形式を使用する。
【0111】
したがって、入出力設定ファイル114は、例えば、入力データDの形式と、出力データEの形式がバイナリ形式またはJSON形式であるかに基づいて、変換関数Hを設定できる。
【0112】
図11は、変換関数Hによる作用を説明するための図であり、図11(a)は、入力データDの形式を、バイナリ形式の変換関数Hによって、バイナリ形式の出力データEへ変換する例を示し、図11(b)は、入力データDの形式を、JSON形式の変換関数Hによって、JSON形式の出力データEへ変換する例を示している。
【0113】
例えば、図11(a)の1行目に示すように、「20 20 01 01 22 33」のような形式の入力データDを、バイナリ形式の出力データEに変換するためには、「BedToDate」というバイナリ形式の標準的な変換関数Hを使用する。これによって、「20 20 01 01 22 33」のような形式の入力データDを、「15778453537500000」のようなバイナリ形式の出力データEに変換することができる。
【0114】
また、図11(b)の1行目に示すように、「20 20 01 01 22 33」のような形式の入力データDを、JSON形式の出力データEに変換するためには、「Json_BedToDate」というJSON形式の標準的な変換関数Hを使用する。これによって、「20 20 01 01 22 33」のような形式の入力データDを、「“Time”:“202001011122331750000”」のようなJSON形式の出力データEに変換することができる。
【実装例3】
【0115】
実装例3も、変換関数部113に記憶された変換関数Hに関するが、特に、ドメインに特化された変換関数Hに関する。
【0116】
図12は、変換関数部113に記憶された、ドメインに特化された変換関数Hの作用を説明するための図である。
【0117】
図12(a)は、1号機K1と2号機K2との2つの機器を制御する1つの制御機器Aにデータ収集装置10が接続されている状態を示す図である。
【0118】
図12(b)は、1つの機器である1号機K1を制御する制御機器Aと、1つの機器である2号機K2を制御する制御機器Bとからなる2つの制御機器に、データ収集装置10が接続されている状態を示す図である。
【0119】
図12(a)および図12(b)ともに、1号機K1と2号機K2とのうち、一方が制御系(メイン系)であり、他方が待機系(バックアップ系)である。待機系(バックアップ系)は、制御系(メイン系)の故障時に、代わりに制御系(メイン系)として動作する。例えば、1号機K1が制御系(メイン系)として動作し、2号機K2が待機系(バックアップ系)として動作しているときに、1号機K1が故障した場合、2号機K2が1号機K1に代わって制御系となり、1号機K1が待機系となる。
【0120】
このように、制御系と待機系との切替があった場合であっても、データ収集装置10は、以下のようにして、中断することなく、制御系から入力データDを受け取り、それに基づいて出力データEを出力することができる。
【0121】
図12(a)のように、2つの機器を制御する1つの制御機器Aから入力データDaが出力される場合、入力データDaでは、1号機K1からのデータ領域d1と、2号機K2からのデータ領域d2とが予め定められ、これらデータ領域d1,d2の場所は、データ収集装置10に予め知られている。
【0122】
さらに、データ領域d1またはデータ領域d2のいずれかの先頭は「01」となっている。これは、該当する号機が制御系であることを示しており、例えば、データ領域d1の先頭が「01」であれば、1号機K1が制御系であることを示す。この場合、2号機K2は待機系であるので、データ領域d2の先頭は「00」となる。逆に、2号機K2が制御系になると、データ領域d1の先頭が「00」になり、データ領域d2の先頭は「01」となる。
【0123】
したがって、データ収集装置10の入力判定部111は、入力データDaを受信すると、入力データDaに含まれるデータ領域d1またはデータ領域d2の先頭の値から、1号機K1と2号機K2とのどちらが制御系であるかを判定し、制御系であると判定した号機からの入力データのみを読み取り、データ変換部112へ出力する。
【0124】
一方、図12(b)のように、それぞれが1つの機器を制御する2つの制御機器A、Bからの入力データDa、Dbが出力される場合、入力データDa、Dbのそれぞれにおいて、予め定められた場所に、制御系であるか待機系であるかを示すデータea、ebが含まれている。この場所は、データ収集装置10に予め知られている。
【0125】
さらに、データeaまたはデータebのいずれかの先頭は「01」となっている。これは、該当する号機が制御系であることを示しており、例えば、データeaが「01」であれば、1号機K1が制御系であることを示す。この場合、2号機K2は待機系であるので、データebは「00」となる。逆に、2号機K2が制御系になると、データeaが「00」になり、データ領域ebは「01」となる。
【0126】
したがって、データ収集装置10の入力判定部111は、入力データDa、Dbの両方を受信すると、入力データDaに含まれるデータeaまたは入力データDbに含まれるデータebの値から、1号機K1と2号機K2とのどちらが制御系であるかを判定し、制御系であると判定した号機からの入力データのみ(すなわち、1号機K1が制御系である場合は、入力データDaのみ、2号機K2が制御系である場合は、入力データDbのみ)を読み取り、データ変換部112へ出力する。
【0127】
そして、データ変換部112は、図12(a)、(b)いずれの場合も、入出力設定ファイル114と、変換関数部113に記憶された変換関数のうち、入出力設定ファイル114で設定された変換関数Hとを使用して、入力データDを変換することによって、出力データEを生成する。
【0128】
なお、系統切替によって、使用される変換関数が変わる場合もある。例えば、1号機K1からの入力データDaの変換のために使用される変換関数と、2号機K2からの入力データDbの変換のために使用される変換関数とが異なるような場合である。
【0129】
この場合も、図10を用いて説明したように、入力データDの伝送仕様に基づいて、使用する入出設定ファイル114を判定し、図12(c)に示すように、判定した入出力設定ファイル114に設定された変換関数Hを使用して、出力データEを生成することで、系統切替があった場合であっても、使用する変換関数Hも適切に切り替えることによって、引き続き同じ形式で出力データEを作成することができる。
【0130】
なお、上記の説明では、1号機K1と2号機K2とのうち、一方が制御系で、他方が待機系である例について説明したが、別の例として、例えば鉄道車両の制御の場合、1号機K1を、上り運転時に動作する機器、2号機K2を、下り運転時に動作する機器とすることもできる。すなわち、上り運転時には、1号機K1が制御系、2号機K2が待機系となり、下り運転時には逆に、2号機K1が制御系、1号機K2が待機系となる。本実装例は、このような場合にも適用可能である。
【0131】
以上説明したように、本実装例によれば、制御系と待機系とが切り替わる場合であっても、データ収集装置10は、専用のプログラムを作る必要なく、複数の入力データDの中から、制御系から出力された入力データDを認識し、さらに、適切な入出力設定ファイル114および変換関数Hを用いて、同じ形式で出力データEを作成することが可能となる。
【0132】
なお、上記の説明では、1号機K1と2号機K2とのうち、一方が制御系で、他方が待機系である例について説明したが、別の例として、機器が3機以上あり、うち1つの機器が制御系で、その他の機器が待機系である場合にも、同様に適用することができる。
【実装例4】
【0133】
実装例4では、入出力設定ファイル114の具体的な例について説明する。
【0134】
図13は、入出力設定ファイル114の実装例を示す図である。
【0135】
図13に例示するように、入出力設定ファイル114には、機種:OAバージョン:0100を記載する。1つの入出力設定ファイル114には、例えば入出力設定1140、1141のように、複数の入出力設定を記載することが可能である。
【0136】
入出力設定にはそれぞれ、入力元、出力先、データ変換の設定を記載する。したがって、図13に示す例では、入出力設定1140について、入力元1140I1、出力先1140O1、データ変換の設定1140Sを記載し、入出力設定1141について、入力元1141I1、1141I2、出力先1140O2、データ変換の設定1141Sを記載している。
【0137】
入力元には、制御機器、インタフェースを記載する。図13に示す例では、入力元1140I1に、「制御機器1、LANインタフェース(LAN1)」を記載し、入力元1141I1に、「制御機器1、LANインタフェース(LAN1)」を記載し、入力元1141I2に、「制御機器2、LANインタフェース(LAN2)」を記載している。
【0138】
出力先には、出力インタフェースの他に、送信周期、圧縮の有無、送信に失敗した場合の再送の有無などの条件も記載する。図13に示す例では、出力先1140O1に、「データ表示装置No1、3G通信(AMQP)、送信周期:10秒、圧縮:なし、再送:なし」を記載し、出力先1141O2に、「データ表示装置No1、3G通信(HTTP)、送信周期:600秒、圧縮:あり、再送:あり」を記載している。
【0139】
データ変換の設定には、番号、項目名、使用する変換関数のID(関数名)、変換関数に渡す入出設定および出力設定を記載する。図13に示す例では、データ変換の設定1140S、1141Sともに、入力設定を4つ、出力設定を2つ有しているが、定義する内容は変換関数によって異なる。
【0140】
例えば、データ変換の設定1140Sの2番目の項目の関数のように、複数のbitの論理和をとる変換関数である「bit_or」の場合、入力設定1は入力データ1のデータ位置、入力設定2は入力データ1のbit位置、入力設定3は入力データ2のデータ位置、入力設定4は入力データ2のbit位置となり、出力設定1は出力データの格納位置となり、出力設定2は、0の場合は入力データ1と2の論理和を、1の場合は入力データ1と2の論理和を反転した値を設定する。
【実装例5】
【0141】
実装例5では、変換関数Hが変換した出力データEの具体例について説明する。
【0142】
図14は、バイナリ形式の出力データおよびJSON形式の出力データを示す図である。
【0143】
例えば、出力データEの形式には、図14(a)に例示するようなバイナリ形式と、図14(b)に例示するようなJSON形式とがある。
【0144】
バイナリ形式は、データが連なって記載され、データの区切りも出力データには記載されない。したがって、データの項目名や区切りはデータ表示装置12側で判断し表示する。
【0145】
一方、JSON形式は、項目名やデータの区切りが読める形式となっており、データ量はバイナリよりも大きいが、ユーザやアプリケーションが加工しやすい形式となる。
【0146】
以上、本実施形態のデータ収集方法が提供されたデータ収集装置およびそのいくつかの実装例について説明した。
【0147】
説明したように、本実施形態およびその実装例によれば、データ収集装置10は、複数の入出力設定ファイル114を持つことが可能で、入力判定部111が、使用する入出力設定ファイル114を判定することができる。
【0148】
また、データ収集装置10は、入出力設定ファイル114に加えて、複数の変換関数Hを格納できる変換関数部113を備えているので、アプリケーションの改造を要することなく、入出力設定ファイル114の書き換えのみで、様々な制御機器やフォーマットの入力データDを取り扱うことが可能になる。
【0149】
これによって、例えば、複数の制御機器が同一の表示項目を有しているが、それぞれ異なるフォーマットで出力されるような場合であっても、アプリケーションや設定を変えることなく、複数の制御機器からの入力データから、同じ形式の出力データを出力することが可能となる。
【0150】
また、故障などで制御機器を入れ替えた場合であっても、設定変更なしでデータの収集を継続することが可能になる。
【0151】
さらに、制御機器の設定が、出荷状態のままでも、即座にデータ収集を開始することができる。
【0152】
さらにまた、データ収集装置10が故障した際であっても、設定変更することなく、予備のデータ収集装置を用いることによって、容易にデータ収集を再開することも可能になる。
【0153】
また、制御機器の追加や変換ルールの変更が生じた際に、エンジニアリングツール13を使って、遠隔から、データ収集装置10に変換関数Hや入出力設定ファイル114を追加できるので、データ収集装置10を現場に設置したまま機能拡張を行うことができる。
【0154】
以上のように、実施形態によれば、制御機器側の条件が変わった場合であっても、手間や時間をかけることなく、容易に使用を継続することが可能なデータ収集方法およびデータ収集装置を提供することができる。
【0155】
本発明のいくつかの実施形態を説明したが、これらの実施形態は、例として提示したものであり、発明の範囲を限定することは意図していない。これら実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。これら実施形態やその変形は、発明の範囲や要旨に含まれると同様に、特許請求の範囲に記載された発明とその均等の範囲に含まれるものである。
【符号の説明】
【0156】
1、1A・・データ収集システム、10、10A、10B・・データ収集装置、12・・データ表示装置、13・・エンジニアリングツール、14・・ディスプレイ装置、111、111A、111B、111C・・入力判定部、112・・データ変換部、113・・変換関数部、114・・入出力設定ファイル、115・・データ出力処理部、116・・スイッチ設定部、200・・バス、201・・記憶部、202・・一次記憶部、203・・計算部、205・・入出力部、300・・インターネット、1140・・入出力設定、1140I1・・入力元、1140O1・・出力先、1140O2・・出力先、1140S・・データ変換の設定、1141・・入出力設定、1141I1・・入力元、1141I2・・入力元、1141O2・・出力先、1141S・・データ変換の設定
図1
図2
図3
図4
図5
図6A
図6B
図6C
図7
図8
図9
図10
図11
図12
図13
図14