(57)【要約】【課題】外部装置の収集可能リストに登録されているデータの種類と、各作業機械から実際に収集可能なデータの種類とを一致させる。【解決手段】データ収集装置は、作業機械に搭載され、当該作業機械から収集可能なデータを収集するデータ収集装置であって、前記作業機械から収集可能なデータの種類を示す収集可能リストを生成する収集可能リスト生成部と、前記収集可能リストに示されるデータの種類のリストを外部装置へ送信する収集可能リスト通知部を備える。【選択図】図１
2020056180.tif 000002
【特許請求の範囲】
【請求項１】
作業機械に搭載され、当該作業機械から収集可能なデータを収集するデータ収集装置であって、
前記作業機械から収集可能なデータの種類を示す収集可能リストを生成する収集可能リスト生成部と、
前記収集可能リストを車外の外部装置へ送信する収集可能リスト通知部と、
を備える作業機械のデータ収集装置。
【請求項２】
前記収集可能リスト生成部は、前記作業機械に搭載されたコンポーネントから取得可能なデータの種類が格納された収集方法テーブルに基づいて、前記収集可能リストを生成する
請求項１に記載の作業機械のデータ収集装置。
【請求項３】
前記収集可能リスト生成部は、前記収集方法テーブルの更新が検出された場合に、当該更新された収集方法テーブルに基づいて前記収集可能リストを更新する
請求項２に記載の作業機械のデータ収集装置。
【請求項４】
前記収集可能リスト生成部は、作業機械に搭載された少なくとも１つのコンポーネントが更新された場合に、収集可能リストを更新する、
請求項１に記載の作業機械のデータ収集装置。
【請求項５】
前記収集可能リスト通知部は、前記収集可能リストが更新された場合に、当該更新された収集可能リストを前記外部装置へ送信する
請求項２または請求項３に記載の作業機械のデータ収集装置。
【請求項６】
新たなコンポーネントの接続を検出する接続検出部と、
新たなコンポーネントの接続が検出された場合に、当該新たなコンポーネントから取得可能なデータの種類を示す収集方法情報を取得する収集方法更新処理部と、
前記収集可能リスト生成部は、取得した前記収集方法情報に基づいて、前記収集可能リストを更新する、
請求項２から請求項５のいずれか一項に記載の作業機械のデータ収集装置。
【請求項７】
前記外部装置から受信した、前記作業機械からのデータの収集に係る条件を規定する処理条件情報に基づいて、前記データを前記外部装置に送信するデータ送信部を更に備える
請求項１から請求項６のいずれか一項に記載の作業機械のデータ収集装置。
【請求項８】
請求項１から請求項７のいずれか一項に記載の作業機械のデータ収集装置と、
前記外部装置であるデータサーバと、
を備え、
前記データサーバは、
前記収集可能リストを前記データ収集装置から受信する収集可能リスト受信部と、
前記収集可能リストに基づき前記作業機械から取得可能なデータを外部に提示する収集可能データ提示部と、
前記収集可能なデータに基づき設定された収集条件を前記作業機械に送信する送信条件送信部と、を備える、
作業機械のデータ提供システム。
【請求項９】
作業機械から収集可能なデータを収集するデータ収集装置を使用したデータ収集方法であって、
前記データ収集装置が、前記作業機械から収集可能なデータの種類のリストを外部装置へ送信するステップを有する
作業機械のデータ収集方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、作業機械のデータ収集装置、作業機械のデータ提供システム及び作業機械のデータ収集方法に関する。
【背景技術】
【０００２】
建設現場等で作業を行う作業機械からその状態を示すデータを収集し、各作業機械の稼働状態を監視、分析する技術が知られている。
作業機械の状態を示すデータは、当該作業機械に搭載された各コンポーネントを通じて収集される場合がある。各コンポーネントから収集すべきデータの種類は各コンポーネントのプログラムに記録されている。作業機械から収集すべきデータを修正しようとすると、各コンポーネントのプログラム自体を新たに開発する必要があり、多大な時間を要する。
また、複数の作業機械のそれぞれに搭載されるコンポーネントが異なるために、個々の作業機械から収集可能なデータの種類が異なる場合がある。
【０００３】
特許文献１には、車両においてデータの管理を行うデータ管理装置において、車外デバイスが必要とするデータの変化に応じて、車両におけるデータの管理態様を変化させることができるようにするゲートウェイ装置が開示されている。このゲートウェイ装置は、車外デバイスから管理ルールを受信し、この管理ルールに基づいてデータを取得、車外デバイスに送信する。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２０１１―１７６７９５号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
ユーザがある作業機械からデータを収集しようとする場合において、その作業機械から収集可能なデータのリストの中から収集するデータを選択したいというニーズがある。しかしながら、作業機械の出荷後に、新たなコンポーネントが追加されたり、或いは、取り外されたりする場合がある。そのため、ユーザは、作業機械の最新のコンポーネントの状態における収集可能なデータのリストの中から収集するデータを選択したいというニーズがある。
【０００６】
本発明の目的は、作業機械の最新のコンポーネントの状態における収集可能なデータのリストの中から収集するデータを選択させることが可能な作業機械のデータ収集装置、作業機械のデータ提供システム及び作業機械のデータ収集方法を提供することにある。
【課題を解決するための手段】
【０００７】
本発明の一態様によれば、データ収集装置は、作業機械に搭載され、当該作業機械から収集可能なデータを収集するデータ収集装置であって、前記作業機械から収集可能なデータの種類を示す収集可能リストを生成する収集可能リスト生成部と、前記収集可能リストに示されるデータの種類のリストを外部装置へ送信する収集可能リスト通知部とを備える。
【発明の効果】
【０００８】
上記態様によれば、外部装置の収集可能リストに登録されているデータの種類と、各作業機械から実際に収集可能なデータの種類とを一致させることができる。
【図面の簡単な説明】
【０００９】
【図１】第１の実施形態に係るデータ提供システムの全体構成を示す図である。
【図２】統一フォーマットの形式を示す図である。
【図３】作業機械の外観を示す斜視図である。
【図４】第１の実施形態に係る作業機械の構成を示すブロック図である。
【図５】データの収集および返還の例を示す図である。
【図６】収集ルールテーブルのデータ構造を示す図である。
【図７】処理条件テーブルのデータ構造を示す図である。
【図８】収集可能リストのデータ構造を示す図である。
【図９】データテーブルのデータ構造を示す図である。
【図１０】第１の実施形態に係るデータサーバの構成を示すブロック図である。
【図１１】定義データベースのデータ構造を示す図である。
【図１２】第１の実施形態に係るデータ提供システムにおける処理条件の設定方法を示すシーケンス図である。
【図１３】第１の実施形態に係るデータ提供システムにおけるデータの提示方法を示すシーケンス図である。
【図１４】第１の実施形態に係るデータ収集装置が実行する処理フローを示す図である。
【図１５】第１の実施形態に係るデータ収集装置の処理を詳しく説明するための図である。
【図１６】第１の実施形態に係るデータ収集装置の処理を詳しく説明するための図である。
【図１７】第２の実施形態に係る作業機械の構成を示すブロック図である。
【図１８】第２の実施形態に係るデータ収集装置が実行する処理フローを示す図である。
【発明を実施するための形態】
【００１０】
＜第１の実施形態＞
以下、第１の実施形態に係るデータ収集装置、及び、これを備えるデータ提供システムについて、図１〜図１６を参照しながら詳細に説明する。
【００１１】
（全体構成）
図１は、第１の実施形態に係るデータ提供システムの全体構成を示す図である。
データ提供システム１は、複数の作業機械１０に係るデータをユーザによる利用のために提供する。データ提供システム１は、複数の作業機械１０と、データサーバ３０と、定義データベース５０と、ユーザ装置７０とを備える。各作業機械１０は、当該作業機械１０に係るデータを収集し、データサーバ３０に送信する。データサーバ３０は、複数の作業機械１０から収集したデータを記憶し、当該データをユーザ装置７０に提供する。定義データベース５０は、データサーバ３０によるデータの提供の際に必要な情報を記憶する。ユーザ装置７０は、作業機械１０に収集させるデータの条件を設定し、またデータサーバ３０から作業機械１０に係るデータを取得する。
【００１２】
作業機械１０とデータサーバ３０との間、およびデータサーバ３０とユーザ装置７０との間において、作業機械１０に係るデータの通信を行う場合、統一フォーマットに係る単位データを用いた通信がなされる。統一フォーマットは、１種類のデータの値を格納する単位データフォーマットである。作業機械１０は、各コンポーネントから収集したＣＡＮの単位データに含まれる複数の値を、それぞれ統一フォーマットの単位データに格納してデータサーバ３０に送信する。データサーバ３０およびユーザ装置７０は、車外の外部装置の一例である。単位データは、データフレーム、パケット、ＰＤＵ（Protocol Data Unit）とも呼ばれる。
以下、統一フォーマットの形式の単位データを、統一データオブジェクトとよぶ。
【００１３】
図２は、統一フォーマットの形式を示す図である。
統一フォーマットは、データの種類を示す識別子と、当該データの値と、コンポーネントが当該データを取得した時刻を示すタイムスタンプとを格納する。１つの統一データオブジェクトには、識別子、値およびタイムスタンプがそれぞれ１つだけ格納される。
【００１４】
《作業機械１０の構成》
図３は、作業機械１０の外観を示す斜視図である。
作業機械である作業機械１０は、油圧により作動する作業機１１００と、作業機１１００を支持する旋回体１２００と、旋回体１２００を支持する走行体１３００とを備える。
【００１５】
《作業機１１００》
作業機１１００は、ブーム１１１０と、アーム１１２０と、バケット１１３０と、ブームシリンダ１１４０と、アームシリンダ１１５０と、バケットシリンダ１１６０とを備える。
【００１６】
ブーム１１１０は、アーム１１２０およびバケット１１３０を支える支柱である。ブーム１１１０の基端部は、旋回体１２００の前部にピンを介して取り付けられる。
アーム１１２０は、ブーム１１１０とバケット１１３０とを連結する。アーム１１２０の基端部は、ブーム１１１０の先端部にピンを介して取り付けられる。
バケット１１３０は、土砂などを掘削するための刃を有する容器である。バケット１１３０の基端部は、アーム１１２０の先端部にピンを介して取り付けられる。
【００１７】
ブームシリンダ１１４０は、ブーム１１１０を作動させるための油圧シリンダである。ブームシリンダ１１４０の基端部は、旋回体１２００に取り付けられる。ブームシリンダ１１４０の先端部は、ブーム１１１０に取り付けられる。
アームシリンダ１１５０は、アーム１１２０を駆動するための油圧シリンダである。アームシリンダ１１５０の基端部は、ブーム１１１０に取り付けられる。アームシリンダ１１５０の先端部は、アーム１１２０に取り付けられる。
バケットシリンダ１１６０は、バケット１１３０を駆動するための油圧シリンダである。バケットシリンダ１１６０の基端部は、アーム１１２０に取り付けられる。バケットシリンダ１１６０の先端部は、バケット１１３０に取り付けられる。
【００１８】
《旋回体１２００》
旋回体１２００には、オペレータが搭乗する運転室１２１０が備えられる。運転室１２１０は、旋回体１２００の前方かつ作業機１１００の左側に備えられる。
【００１９】
運転室１２１０の内部には、作業機１１００を操作するための操作装置１２１１が設けられる。操作装置１２１１の操作量に応じて、ブームシリンダ１１４０、アームシリンダ１１５０、およびバケットシリンダ１１６０に作動油が供給され、作業機１１００が駆動する。
【００２０】
《コンポーネント》
作業機械１０は、位置方位演算器１２３０、傾斜検出器１２４０を備える。位置方位演算器１２３０、傾斜検出器１２４０は、コンポーネントの一例である。また、作業機械１０は、作業機械１０に係るデータを収集し、データサーバ３０に送信するデータ収集装置１１を備える。データ収集装置１１は、運転室１２１０内に設けられている。後述する制御コンポーネント１２および拡張コンポーネント１４は、同様に運転室１２１０内に設けられてもよいし、例えば旋回体１２００上の運転室１２１０の外に設けられてもよい。
【００２１】
位置方位演算器１２３０は、旋回体１２００の位置および旋回体１２００が向く方位を演算する。位置方位演算器１２３０は、ＧＮＳＳ（Global Navigation Satellite System）を構成する人工衛星から測位信号を受信する第１受信器１２３１および第２受信器１２３２を備える。第１受信器１２３１および第２受信器１２３２は、それぞれ旋回体１２００の異なる位置に設置される。位置方位演算器１２３０は、第１受信器１２３１が受信した測位信号に基づいて、現場座標系における旋回体１２００の代表点Ｏ（車体座標系の原点）の位置を検出する。
位置方位演算器１２３０は、第１受信器１２３１が受信した測位信号と、第２受信器１２３２が受信した測位信号とを用いて、検出された第１受信器１２３１の設置位置に対する第２受信器１２３２の設置位置の関係として、旋回体１２００の方位を演算する。
【００２２】
傾斜検出器１２４０は、旋回体１２００の加速度および角速度を計測し、計測結果に基づいて旋回体１２００の傾き（例えば、Ｘｍ軸に対する回転を表すロール、Ｙｍ軸に対する回転を表すピッチ、およびＺｍ軸に対する回転を表すヨー）を検出する。傾斜検出器１２４０は、例えば運転室１２１０の下面に設置される。傾斜検出器１２４０は、例えば、慣性計測装置であるＩＭＵ（Inertial Measurement Unit）を用いることができる。  
【００２３】
図４は、第１の実施形態に係る作業機械１０の構成を示すブロック図である。
データ収集装置１１は、物理的に分かれた第１基板１００と第２基板２００とを備える。第１基板１００は、リアルタイムＯＳ（Operating System）を稼働させるコンピュータを構成する。第２基板２００は、汎用ＯＳを稼働させるコンピュータを構成する。
【００２４】
第１基板１００は、第１プロセッサ１１０、第１メインメモリ１３０、第１ストレージ１５０、第１インタフェース１７０を備える。第１プロセッサ１１０は、第１ストレージ１５０からプログラムを読み出して第１メインメモリ１３０に展開し、当該プログラムに従って所定の処理を実行する。第１インタフェース１７０は、第１ネットワークＮ１を介して作業機械１０を制御するための複数の制御コンポーネント１２と接続される。制御コンポーネント１２の例としては、エンジン関連の各種データをセンサにより取得しエンジン関連を制御するエンジン制御コンポーネント、作業機１１００の動作を制御する油圧機器関連の各種データをセンサにより取得し当該油圧機器を制御する油圧制御コンポーネント、作業機械１０の各種センサからデータを取得し図示しないモニタの表示制御を行うモニタ制御コンポーネント、外部のサーバ等と通信を行うための通信機器を制御し、作業機械の各種センサからデータを取得する通信コンポーネント等が挙げられる。第１ネットワークＮ１は、例えばＣＡＮである。また第１インタフェース１７０は、作業機械１０の状態量を検出するセンサ１３と接続される。制御コンポーネント１２およびセンサ１３は、作業機械１０に搭載されるコンポーネントの一例である。
【００２５】
第２基板２００は、第２プロセッサ２１０、第２メインメモリ２３０、第２ストレージ２５０、第２インタフェース２７０を備える。第２プロセッサ２１０は、第２ストレージ２５０からプログラムを読み出して第２メインメモリ２３０に展開し、当該プログラムに従って所定の処理を実行する。第２インタフェース２７０は、第２ネットワークＮ２を介して作業機械１０の機能を拡張するための複数の拡張コンポーネント１４と接続される。拡張コンポーネント１４の例としては、カメラで撮像した画像に対して所定の画像処理を行い表示制御をする画像表示コンポーネント、施工現場の設計面と作業機械１０との位置関係などをオペレータにガイダンスするためのガイダンスモニタを表示制御するマシンガイダンスコンポーネント、作業機１１００により掘削した土量を計測するためのペイロードコンポーネント等が挙げられる。第２ネットワークＮ２は、例えばＣＡＮまたはEthernet（登録商標）である。拡張コンポーネント１４は、作業機械１０に搭載されるコンポーネントの一例である。
なお、作業機械１０に搭載され得るコンポーネントは、上記の制御コンポーネント１２、センサ１３、拡張コンポーネント１４に限られない。例えば、コンポーネントは、作業機械１０の表示機能を司る表示コントローラや、作業機械１０の通信機能を司る通信コントローラ等であってもよい。
第１インタフェース１７０と第２インタフェース２７０は、互いに通信可能に接続される。
【００２６】
第１ストレージ１５０または第２ストレージ２５０に記憶されるプログラムは、第１基板１００または第２基板２００に発揮させる機能の一部を実現するためのものであってもよい。例えば、プログラムは、第１ストレージ１５０または第２ストレージ２５０に既に記憶されている他のプログラムとの組み合わせ、または他の装置に実装された他のプログラムとの組み合わせによって機能を発揮させるものであってもよい。なお、他の実施形態においては、第１基板１００または第２基板２００は、上記構成に加えて、または上記構成に代えてＰＬＤ（Programmable Logic Device）などのカスタムＬＳＩ（Large Scale Integrated Circuit）を備えてもよい。ＰＬＤの例としては、ＰＡＬ(Programmable Array Logic)、ＧＡＬ(Generic Array Logic)、ＣＰＬＤ(Complex Programmable Logic Device)、ＦＰＧＡ（Field Programmable Gate Array）が挙げられる。この場合、第１基板１００または第２基板２００によって実現される機能の一部または全部が当該集積回路によって実現されてよい。
【００２７】
第１ストレージ１５０および第２ストレージ２５０の例としては、ＨＤＤ（Hard Disk Drive）、ＳＳＤ（Solid State Drive）、磁気ディスク、光磁気ディスク、ＣＤ−ＲＯＭ（Compact Disc Read Only Memory）、ＤＶＤ−ＲＯＭ（Digital Versatile Disc Read Only Memory）、半導体メモリ等が挙げられる。第１ストレージ１５０および第２ストレージ２５０は、バス線に直接接続された内部メディアであってもよいし、第１インタフェース１７０または通信回線を介してデータ収集装置１１に接続される外部メディアであってもよい。また、このプログラムが通信回線によってデータ収集装置１１に配信され、第１プロセッサ１１０または第２プロセッサ２１０が当該プログラムを実行してもよい。少なくとも１つの実施形態において第１ストレージ１５０および第２ストレージ２５０は、一時的でない有形の記憶媒体である。
【００２８】
第１プロセッサ１１０は、第１ストレージ１５０が記憶するプログラムの実行により、収集指示入力部１１１、収集部１１２、変換部１１３、およびデータ出力部１１４として機能する。
【００２９】
収集指示入力部１１１は、第２基板２００からデータの収集方法（Collection method）を含む収集指示の入力を受け付ける。当該収集方法は、制御コンポーネント１２またはセンサ１３が単位データのフォーマットおよびデータ部において収集対象の値が格納される領域を特定するための情報である。
図５は、データの収集および変換の例を示す図である。単位データＰは、ヘッダ部Ｈとデータ部Ｄとを有する。ヘッダ部Ｈとは、単位データＰに関する各種情報が格納されており、例えば単位データＰの種別が格納されている。単位データＰの種別によって、当該単位データＰのデータ部Ｄに格納されるデータの収集方法が特定される。単位データＰの種別として、例えばJ1939のID番号：１といったものがある。値とは、データ部Ｄに割り当てられる所定のデータ値であり、データ部Ｄの所定領域に格納される。値は、データ部Ｄの先頭から値の始点までのビット数を示すオフセットと、値のサイズを示すデータ長とによって特定される。図６に示す例では、単位データＰのデータ部Ｄには、３つの値Ｃ１、Ｃ２、Ｃ３が割り当てられる。値Ｃ１は、オフセットＯ１およびデータ長Ｌ１によって特定される。値Ｃ２は、オフセットＯ２およびデータ長Ｌ２によって特定される。値Ｃ３は、オフセットＯ３およびデータ長Ｌ３によって特定される。値Ｃ１には、例えばエンジン回転数が、値Ｃ２には、例えばエンジントルクが、値Ｃ３には、例えばエンジン水温が格納される。なお、データ部Ｄにおける値の割り当ては図６に示すものに限られない。例えば値の数は２つ以下または４つ以上であってもよいし、各値の内容が異なるものであってもよい。図５図５
制御コンポーネント１２およびセンサ１３の種類および型によって、ＣＡＮを介した通信において扱う単位データのフォーマットが異なる。単位データのフォーマットの例としては、SAE J1939などが挙げられる。単位データのフォーマットは任意に設計者によってルールを定められてもよい。また、ＣＡＮの単位データには、最大８バイトのデータ部に複数の値が設定され、所定の格納領域に格納される。そのため、同じ種類のデータの値であっても、単位データのフォーマットによって、データ部に格納される値の位置およびサイズが異なる可能性がある。
そのため、収集方法は、フォーマットの種類、オフセットの値およびデータ長の値を含む。
【００３０】
収集部１１２は、収集指示入力部１１１に入力された収集指示に含まれる収集方法に従って制御コンポーネント１２またはセンサ１３からデータを収集する。具体的には、収集部１１２は、収集方法に基づいて、ヘッダ部から単位データの種別を特定した後に、収集対象の値が格納される格納領域を特定し、制御コンポーネント１２またはセンサ１３から送信される単位データから、特定した格納領域に格納された値を収集する。
【００３１】
変換部１１３は、収集部１１２が収集したデータを統一フォーマットのデータに変換することで、統一データオブジェクトを生成する。具体的には、変換部１１３は、図６に示すように、ＣＡＮデータの単位データＰから収集された複数の値のそれぞれについて、収集された値と当該値に係るデータの種類を示す識別子とを格納する統一データオブジェクトを生成する。図６に示す例では、変換部１１３は、値Ｃ１に基づいて統一データオブジェクトＵ１を生成し、値Ｃ２に基づいて統一データオブジェクトＵ２を生成し、値Ｃ３に基づいて統一データオブジェクトＵ３を生成する。統一データオブジェクトＵ１には、値Ｃ１のデータの種別を示す識別子Ｉ１、当該値Ｃ１の取得時刻を示すタイムスタンプＴ１が含まれる。統一データオブジェクトＵ２には、値Ｃ２のデータの種別を示す識別子Ｉ２、当該値Ｃ２の取得時刻を示すタイムスタンプＴ２が含まれる。統一データオブジェクトＵ３には、値Ｃ３のデータの種別を示す識別子Ｉ３、当該値Ｃ３の取得時刻を示すタイムスタンプＴ３が含まれる。図５図５
第１プロセッサ１１０は、所定の単位データのフォーマットのルールを収集方法テーブルから参照することで、当該単位データの中から１つの値を抽出し、当該値の統一データフォーマットにおける識別子とタイムスタンプを付与して１つの統一データフォーマットに変換する。そうすることにより、１つの任意のデータ値に対して１つの識別子を紐づけて統一データフォーマットとしてデータ管理を行うことで、容易にデータを活用することが可能になる。
【００３２】
データ出力部１１４は、変換部１１３が生成した統一データオブジェクトを第２基板２００に出力する。
【００３３】
第２プロセッサ２１０は、第２ストレージ２５０が記憶するプログラムの実行により、処理条件受信部２１１、収集判定部２１２、収集方法特定部２１３、収集指示出力部２１４、データ取得部２１５、収集部２１６、変換部２１７、データ登録部２１８、収集可能リスト通知部２１９、データ送信部２２０、収集可能リスト生成部２２１、及び、収集方法更新検出部２２２として機能する。また、第２ストレージ２５０には、収集方法テーブル２５１、処理条件テーブル２５２、収集可能リスト２５３、およびデータテーブル２５４の記憶領域が確保される。
【００３４】
図６は、収集方法テーブル２５１のデータ構造を示す図である。収集方法テーブル２５１は、予め、各コンポーネント（制御コンポーネント１２、センサ１３、および拡張コンポーネント１４）のそれぞれについて、当該コンポーネントから取得可能なデータの種類を示す識別子と、当該データの収集方法とを関連付けて記憶する。データの収集方法は、例えば単位データのフォーマット、単位データのデータ部に割り当てられた値のオフセット、値のデータ長などを含む。
なお、データの種類として、各コンポーネントがセンサから取得するデータに限られず、例えば各コンポーネントが異常を検知した異常データ、作業機械１０の周囲に存在する人を含む障害物を検知した障害物データ、作業機械１０に設置した図示しないカメラにより撮像した画像データ、作業機械１０の外部における外気温データや湿度データを含む外部環境データ、作業機械１０の周囲の現況地形の計測結果である現況地形データを含めてもよい。
【００３５】
図７は、処理条件テーブル２５２のデータ構造を示す図である。処理条件テーブル２５２は、データ収集装置１１が収集すべきデータの種類を示す識別子と、当該データの配信方式と、収集周期、送信周期とを関連付けて記憶する。データの配信方式は、例えばコンポーネントがデータリクエストを受けることによってデータを配信するＰＵＬＬ方式と、コンポーネントが自発的にデータを配信するＰＵＳＨ方式とが挙げられる。ＰＵＳＨ方式には、コンポーネントが所定周期ごとにデータを配信する方式と、所定のイベントの発生時にデータを配信する方式とが含まれる。収集周期は、配信方式がＰＵＬＬである場合に規定される条件である。つまり、データ収集装置１１は、収集周期に係るタイミングでコンポーネントにデータリクエストを送信する。なお、他の実施形態においては、処理条件テーブル２５２においてさらにデータの加工条件を規定してもよい。この場合、処理条件テーブル２５２は、識別子に関連付けて、さらに加工条件を記憶してよい。
【００３６】
図８は、収集可能リスト２５３のデータ構造を示す図である。収集可能リスト２５３は、作業機械１０に搭載された複数のコンポーネントにおいて収集することができるすべてのデータに係る識別子を記憶する。収集可能リスト２５３は、収集方法テーブル２５１の各コンポーネントに関連付けられたすべての識別子をマージしたものと等価である。収集可能リスト２５３は、さらに当該データの初期値、最小値、最大値、収集周期などを記憶してもよい。
【００３７】
図９は、データテーブル２５４のデータ構造を示す図である。データテーブル２５４は、データ収集装置１１が収集したデータを格納する。データテーブル２５４は、ローデータテーブル２５４Ａと、時系列データテーブル２５４Ｂとを備える。ローデータテーブル２５４Ａは、収集された統一データオブジェクトそのものを格納する。つまり、ローデータテーブル２５４Ａは、データの識別子と、当該データの値と、タイムスタンプとを関連付けて記憶する。ＰＵＬＬ形式のデータの収集周期は、処理条件テーブル２５２において定められるため、すべてのデータが同じ周期で収集されるとは限らない。また、ＰＵＳＨ形式のデータの送信周期は、コンポーネントごとに異なる可能性がある。したがって、ローデータテーブル２５４Ａに記録されるデータのタイムスタンプの値は、複数のデータの間でそろわないことがある。例えば、図９に示すように、ローデータテーブル２５４Ａにおいて、時刻ＸＸＸＸ／ＸＸ／ＸＸ  ００：００：０２において、識別子Ｘ１および識別子Ｘ３に係るデータの値は記録されているが、識別子Ｘ４および識別子Ｘ９に係るデータの値は記録されていない。
そのため、時系列データテーブル２５４Ｂには、一の時刻が指定されたときに、収集対象のすべての識別子に係るデータの値を得ることができるように、タイムスタンプがそろった統一データオブジェクトが格納される。つまり、時系列データテーブル２５４Ｂには、収集された統一データオブジェクトと、当該統一データオブジェクトの加工によって生成された統一データオブジェクトとが格納される。
【００３８】
処理条件受信部２１１は、データサーバ３０から、作業機械１０に係るデータの収集に係る条件である収集条件（Collection condition）、および送信に係る条件である送信条件を規定する処理条件情報を受信する。収集条件に係る処理条件情報は、例えば収集するデータの種類を表す識別子と、当該データの配信方式と、収集周期とを含む。収集周期は、収集方式がＰＵＬＬである場合に規定される。送信条件に係る処理条件情報は、送信するデータの種類を表す識別子と、当該データの送信周期とを含む。なお、配信方式を処理条件テーブル２５２に格納せず、収集方法テーブル２５１に格納してもよい。
処理条件受信部２１１は、受信した処理条件情報に基づいて処理条件テーブル２５２を更新する。
【００３９】
収集判定部２１２は、所定の処理周期に係るタイミングごとに処理条件テーブル２５２を参照し、現在のタイミングで収集すべきデータがあるか否かを判定する。収集判定部２１２は、収集すべきデータがある場合、収集すべきデータの識別子を特定する。
【００４０】
収集方法特定部２１３は、収集方法テーブル２５１を参照し、収集判定部２１２によって特定された各識別子について、データの収集方法を特定する。また収集方法特定部２１３は、各識別子について、当該識別子に係るデータを生成するコンポーネントが第１基板１００に接続されるか第２基板２００に接続されるかを特定する。
【００４１】
収集指示出力部２１４は、収集すべきデータのうち、第１基板１００に接続されるコンポーネントすなわち制御コンポーネント１２またはセンサ１３が生成するデータについて、第１基板１００にデータの収集指示を出力する。収集指示には、データの識別子と、収集方法特定部２１３が特定した収集方法とが含まれる。
【００４２】
データ取得部２１５は、第１基板１００が収集指示に従って収集されたデータを、第１基板１００から取得する。つまりデータ取得部２１５は第１基板１００から統一データオブジェクトを取得する。
【００４３】
収集部２１６は、収集すべきデータのうち、第２基板２００に接続されるコンポーネントすなわち拡張コンポーネント１４が生成するデータを、収集方法特定部２１３が特定した収集方法に従って取得する。
【００４４】
変換部２１７は、収集部２１６が収集したデータを統一フォーマットのデータに変換することで、統一データオブジェクトを生成する。また変換部２１７は、統一データオブジェクトを、ＣＡＮ通信に係るフォーマットに変換する。つまり、変換部２１７は、複数の統一データオブジェクトに係る値をデータ部に格納したＣＡＮの単位データを生成する。
【００４５】
データ登録部２１８は、データ取得部２１５が取得した統一データオブジェクトおよび変換部２１７が変換した統一データオブジェクトを、データテーブル２５４のローデータテーブル２５４Ａおよび時系列データテーブル２５４Ｂに登録する。また、データ登録部２１８は、当該タイミングにおいて収集しなかった識別子に係る統一データオブジェクトを生成し、時系列データテーブル２５４Ｂに登録する。
【００４６】
収集可能リスト通知部２１９は、収集可能リストを、データサーバ３０に通知する。例えば、収集可能リスト通知部２１９は、収集可能リスト２５３が更新されたタイミングで収集可能リストを通知してよい。
【００４７】
データ送信部２２０は、処理周期に係るタイミングごとに処理条件テーブル２５２を参照し、現在のタイミングで送信すべき統一データオブジェクトをデータテーブル２５４から読み出し、データサーバ３０に送信する。なお、他の実施形態に係るデータ送信部２２０は、データサーバ３０以外の装置に送信してもよい。例えばデータ送信部２２０は、データ収集装置１１が備える第２基板２００と異なる装置に統一データオブジェクトを送信してもよい。すなわちデータ送信部２２０は、統一データオブジェクトを外部に送信する。
また、データ送信部２２０は、拡張コンポーネント１４の要求に応じて、変換部によって生成された単位データを拡張コンポーネント１４に出力する。
【００４８】
収集可能リスト生成部２２１は、第２ストレージ２５０に記録されている、各コンポーネント別の収集方法テーブル２５１に記録されているデータの一部を用いて収集可能リスト２５３を生成、更新する。収集可能リスト生成部２２１によって収集可能リスト２５３が生成、更新されると、収集可能リスト通知部２１９は、新たに更新された収集可能リスト２５３に基づく収集可能リストを、データサーバ３０に通知する。
【００４９】
収集方法更新検出部２２２は、収集方法テーブル２５１の更新を検出する。本実施形態に係る収集方法更新検出部２２２は、オペレータによって新たな収集方法情報が収集方法テーブル２５１に追加された場合に、収集方法テーブル２５１の更新を検出する。収集方法情報とは、例えば作業機械１０に新たなコンポーネントが搭載された場合において、当該新たなコンポーネントから取得可能なデータの種類と、当該データを取得するための収集方法とを示す情報である。
【００５０】
ここで、オペレータが作業機械１０に新たなコンポーネントを搭載しようとする場合の手順について簡単に説明する。オペレータは、新たに搭載しようとするコンポーネントを、作業機械１０内の所定箇所に接続する。例えば、作業機械１０に搭載しようとする新たなコンポーネントが制御コンポーネント１２又は拡張コンポーネント１４である場合、オペレータは、当該コンポーネントを対応するネットワーク（第１ネットワークＮ１又は第２ネットワークＮ２）に接続する。作業機械１０に搭載しようとする新たなコンポーネントがセンサ１３である場合、オペレータは、当該コンポーネントを第１インタフェース１７０に接続する。その後、オペレータは、サービスツール用インタフェース２９０に接続された所定のサービスツールを介して、接続した新たなコンポーネントについての収集方法情報を収集方法テーブル２５１に追加する処理を行う。サービスツールとは、サービスマンや販売者が作業機械１０に対して接続させる端末装置であり、専用端末または汎用ＰＣなどであってよい。サービスツールは、車外の外部装置の一例である。
【００５１】
《データサーバ３０の構成》
図１０は、第１の実施形態に係るデータサーバ３０の構成を示すブロック図である。
データサーバ３０は、プロセッサ３１０、メインメモリ３３０、ストレージ３５０、インタフェース３７０を備える。プロセッサ３１０は、ストレージ３５０からプログラムを読み出してメインメモリ３３０に展開し、当該プログラムに従って所定の処理を実行する。インタフェース３７０は、データ収集装置１１、定義データベース５０およびユーザ装置７０と通信可能に接続される。
【００５２】
ストレージ３５０に記憶されるプログラムは、データサーバ３０に発揮させる機能の一部を実現するためのものであってもよい。また、他の実施形態においては、データサーバ３０は、上記構成に加えて、または上記構成に代えてＰＬＤなどのカスタムＬＳＩを備えてもよい。この場合、データサーバ３０によって実現される機能の一部または全部が当該集積回路によって実現されてよい。
【００５３】
ストレージ３５０の例としては、ＨＤＤ、ＳＳＤ、磁気ディスク、光磁気ディスク、ＣＤ−ＲＯＭ、ＤＶＤ−ＲＯＭ、半導体メモリ等が挙げられる。ストレージ３５０は、バス線に直接接続された内部メディアであってもよいし、インタフェース３７０または通信回線を介してデータサーバ３０に接続される外部メディアであってもよい。また、このプログラムが通信回線によってデータサーバ３０に配信され、プロセッサ３１０が当該プログラムを実行してもよい。少なくとも１つの実施形態においてストレージ３５０は、一時的でない有形の記憶媒体である。
【００５４】
プロセッサ３１０は、ストレージ３５０が記憶するプログラムの実行により、収集可能リスト受信部３１１、定義受信部３１２、収集可能データ提示部３１３、処理条件受信部３１４、処理条件送信部３１５、データ受信部３１６、データ送信部３１７として機能する。また、ストレージ３５０には、収集可能リスト３５１、およびデータテーブル３５２の記憶領域が確保される。
【００５５】
収集可能リスト３５１は、複数の作業機械１０それぞれにおいて収集することができるすべてのデータに係る識別子を記憶する。つまり、収集可能リスト３５１は、作業機械１０の機械ＩＤとデータの識別子とを関連付けて記憶する。
【００５６】
データテーブル３５２は、複数の作業機械１０それぞれから送信された統一データオブジェクトを記憶する。つまり、データテーブル３５２は、作業機械１０の機械ＩＤと、データの識別子と、当該データの値と、タイムスタンプとを関連付けて記憶する。
【００５７】
収集可能リスト受信部３１１は、作業機械１０のデータ収集装置１１から収集可能リストを受信する。収集可能リスト受信部３１１は、受信した収集可能リストに基づいて収集可能リスト３５１を更新する。
【００５８】
定義受信部３１２は、定義データベース５０から、統一データオブジェクトの識別子に係るデータの定義を示す定義情報を受信する。定義情報は、少なくともデータの表示名および説明文を含む。データの表示名は、例えば「エンジン回転数」などの自然言語で表された文字列である。定義情報については後述する。
【００５９】
収集可能データ提示部３１３は、ユーザ装置７０に、収集可能リスト３５１が記憶する作業機械１０ごとの収集可能なデータのリストを提示する。このとき、収集可能データ提示部３１３が生成する収集可能なデータのリストには、定義情報に含まれる表示名および説明文が含まれる。これにより、ユーザは、作業機械１０が収集可能なデータの意味を理解することができる。より具体的には、収集可能データ提示部３１３は、ユーザ装置７０から作業機械１０の機械ＩＤの入力を受け付け、当該作業機械１０が収集可能なデータのリストを、処理条件情報の入力フォームとともに、ユーザ装置７０に提示する。
【００６０】
処理条件受信部３１４は、ユーザ装置７０から処理条件情報を受信する。ユーザは、収集可能データ提示部３１３が提示するリストに基づいて、処理条件情報を入力する。入力される処理条件情報は、機械ＩＤに関連付けられる。処理条件受信部３１４は、入力された処理条件情報が表示名によって定義される場合、定義受信部３１２が取得した定義情報に基づいて当該表示名を識別子に置換する。
【００６１】
処理条件送信部３１５は、処理条件受信部３１４に入力された処理条件情報を、関連付けられた機械ＩＤに係るデータ収集装置１１に送信する。
【００６２】
データ受信部３１６は、データ収集装置１１から統一データオブジェクトを受信する。
【００６３】
データ送信部３１７は、受信した統一データオブジェクトと、当該統一データオブジェクトに係る定義情報とをユーザ装置７０に送信する。これにより、ユーザ装置７０は、統一データオブジェクトに係るデータを表示する際に、定義情報に含まれる表示名等を併せて表示することができる。このとき、データ送信部３１７は、統一データオブジェクトに係る識別子を定義情報に含まれる表示名に置換してもよいし、統一データオブジェクトに表示名および説明文を付加してもよい。
【００６４】
《定義データベース５０》
図１１は、第１の実施形態に係る定義データベース５０が記憶する情報の例を示す図である。
定義データベース５０は、統一フォーマットに係る識別子に関連付けて、当該識別子が付与されるデータの定義情報を記憶する。定義情報は、表示名、説明文、タグ、データ型、サイズ、単位、ゲイン、オフセット、ユーザタイプごとのアクセス権限を含む。表示名および説明文は、ユーザがデータの種類を認識するための名称および説明文である。タグは、データの検索において用いられるキーワードを示す文字列である。アクセス権限の例としては、アクセス禁止（−−）、読み込み専用（ｒ−）、読み書き可能（ｒｗ）が挙げられる。ユーザタイプの例としては、管理者（Admin権限）、ユーザ（User権限）などが挙げられる。その他のユーザタイプとして、開発者、サービス提供者、販売者などを含んでいてもよい。
ユーザは、表示名、説明文およびタグによってデータの種類を絞り込み、データの収集対象の作業機械１０が目的となるデータを収集することができるか否かを判断することができる。またユーザは、データ型、サイズ、単位、ゲイン、およびオフセットを参照することで、当該データを処理するためのアプリケーションプログラムを開発することができる。
【００６５】
《処理条件の設定方法》
図１２は、第１の実施形態に係るデータ提供システム１における処理条件の設定方法を示すシーケンス図である。
まず、ユーザは、ユーザ装置７０を操作し、データサーバ３０にアクセスする。このとき、ユーザは、予め設定された自身のアカウントによってデータサーバ３０にログインする。アカウントには、予めユーザタイプが割り当てられている。
【００６６】
ユーザ装置７０は、データサーバ３０に処理条件の設定のリクエストを送信する（ステップＳ１０１）。データサーバ３０が処理条件の設定のリクエストを受信すると、収集可能データ提示部３１３は、ユーザ装置７０に設定対象の作業機械１０の機械ＩＤの入力画面を表示させる（ステップＳ１０２）。入力画面は、テキストボックスに機械ＩＤを直接入力させるものであってもよいし、リストボックスから機械ＩＤを選択させるものであってもよい。
ユーザは、表示された入力画面に従って、設定対象の作業機械１０の機械ＩＤを入力する。ユーザ装置７０は、入力された機械ＩＤをデータサーバ３０に送信する（ステップＳ１０３）。
【００６７】
収集可能データ提示部３１３は、ユーザ装置７０から機械ＩＤを受信すると、収集可能リスト３５１を参照し、受信した機械ＩＤに関連付けられた収集可能リストに含まれる識別子を検索する（ステップＳ１０４）。定義受信部３１２は、検索によって特定された収集可能リスト内の識別子に係る定義情報のリクエストを、定義データベース５０に送信する（ステップＳ１０５）。定義データベース５０は、データサーバ３０から受信したリクエストに従って、識別子に関連付けられた定義情報をデータサーバ３０に送信する（ステップＳ１０６）。収集可能データ提示部３１３は、受信した定義情報を参照し、検索された識別子から、ログインしているユーザの権限において読み取りができないものを除外する（ステップＳ１０７）。収集可能データ提示部３１３は、受信した定義情報に基づいて、収集可能かつ当該ユーザが読取可能なすべてのデータの表示名および説明文、ならびに当該データを収集するか否か、収集条件および送信条件の入力フォームを含む、処理条件入力画面を生成し、当該処理条件入力画面をユーザ装置７０に表示させる（ステップＳ１０８）。
【００６８】
ユーザは、ユーザ装置７０に表示された処理条件入力画面を参照し、各データに関連付けられた入力フォームに収集の要否を入力する。収集が必要なデータについては、ユーザは、当該データに関連付けられた入力フォームに収集条件および送信条件を入力する。ユーザ装置７０は、入力された処理条件情報をデータサーバ３０に送信する（ステップＳ１０９）。処理条件受信部３１４がユーザ装置７０から処理条件情報を受信すると、処理条件送信部３１５は、受信した処理条件情報を、ステップＳ３で送信された機械ＩＤに係るデータ収集装置１１へ送信する（ステップＳ１１０）。
データ収集装置１１の処理条件受信部２１１は、受信した処理条件情報に基づいて処理条件テーブル２５２を更新する（ステップＳ１１１）。
これにより、ユーザが指定した処理条件を、設定対象の作業機械１０に設定することができる。
【００６９】
図１３は、第１の実施形態に係るデータ提供システム１におけるデータの提示方法を示すシーケンス図である。
まず、ユーザは、ユーザ装置７０を操作し、データサーバ３０にアクセスする。このとき、ユーザは、予め設定された自身のアカウントによってデータサーバ３０にログインする。アカウントには、予めユーザタイプが割り当てられている。
【００７０】
ユーザ装置７０は、データサーバ３０にデータ提示のリクエストを送信する（ステップＳ６１）。データサーバ３０がデータ提示のリクエストを受信すると、データ送信部３１７は、ユーザ装置７０に提示対象の作業機械１０の機械ＩＤの入力画面を表示させる（ステップＳ６２）。入力画面は、テキストボックスに機械ＩＤを直接入力させるものであってもよいし、リストボックスから機械ＩＤを選択させるものであってもよい。入力画面は、複数の機械ＩＤの選択を受け付け可能であってよい。
【００７１】
ユーザは、表示された入力画面に従って、設定対象の作業機械１０の機械ＩＤを入力する。ユーザ装置７０は、入力された機械ＩＤをデータサーバ３０に送信する（ステップＳ６３）。
【００７２】
データ送信部３１７は、ユーザ装置７０から機械ＩＤを受信すると、データテーブル３５２を参照し、受信した機械ＩＤに関連付けられた統一データオブジェクトを検索する（ステップＳ６４）。つまり、データ送信部３１７は、実際に収集されたデータを検索する。定義受信部３１２は、検索によって特定された統一データオブジェクトの識別子に係る定義情報のリクエストを、定義データベース５０に送信する（ステップＳ６５）。定義データベース５０は、データサーバ３０から受信したリクエストに従って、識別子に関連付けられた定義情報をデータサーバ３０に送信する（ステップＳ６６）。
データ送信部３１７は、受信した定義情報を参照し、検索された統一データオブジェクトから、ログインしているユーザの権限において読み取りができないものを除外する（ステップＳ６７）。データ送信部３１７は、ログインしているユーザの権限において読み取り可能なデータに係る統一データオブジェクトと、当該統一データオブジェクトに係る定義情報とをユーザ装置７０に送信する（ステップＳ６８）。ユーザ装置７０は、データサーバ３０から統一データオブジェクトおよび定義情報を受信すると、受信した統一データオブジェクトおよび定義情報を表示する（ステップＳ６９）。ユーザ装置７０は、例えば統一データオブジェクトに含まれる識別子を定義情報に係る表示名に置換して表示してもよい。これにより、ユーザ装置７０は、指定した機械ＩＤに係る作業機械１０から収集されたデータを取得することができる。
【００７３】
《取集可能リストの自動更新処理》
図１４は、第１の実施形態に係るデータ収集装置１１が実行する処理フローを示す図である。
また、図１４、図１６は、第１の実施形態に係るデータ収集装置１１の処理を詳しく説明するための図である。
以下、図１４〜図１６を参照しながら、データ収集装置１１が実行する処理フローについて詳しく説明する。
【００７４】
図１４に示す処理フローは、データ収集装置１１が起動している間、定常的に繰り返し実行されてよい。
【００７５】
図１４に示す処理フローにおいて、まず、収集方法更新検出部２２２は、収集方法テーブル２５１が更新されたか否かを判定する（ステップＳ０１）。収集方法テーブル２５１が更新されていない場合（ステップＳ０１：ＮＯ）、収集方法更新検出部２２２は、収集方法テーブル２５１が更新されるまでステップＳ０１の判定処理を繰り返し実行する。
【００７６】
ここで、図１４を参照しながら、新たなコンポーネントを追加する際にオペレータが行う処理について詳しく説明する。
オペレータは、第１ネットワークＮ１、第２ネットワークＮ２、又は、第１インタフェース１７０に新たなコンポーネントを接続した後、所定のサービスツールを介して収集方法テーブル２５１に対し新たなコンポーネントに関する情報を追加する。収集方法テーブル２５１に対し新たなコンポーネントに関する情報を追加することは、収集方法テーブル２５１を更新することの一例である。ここで、オペレータは、ある作業機械１０に対し、新たなコンポーネントＣｎを追加したとする。この場合、オペレータは、サービスツール用インタフェース２９０に接続されたサービスツールを介して、当該コンポーネントＣｎについての収集方法情報２５１ｎを収集方法テーブル２５１に追加する。図１４に示すように、収集方法情報２５１ｎには、新たに追加したコンポーネントＣｎから収集可能なデータの種類（識別子Ｘａ１、Ｘａ２、・・）と、当該データを取得するための収集方法とが格納されている。
【００７７】
図１４に戻り、オペレータの操作を通じて収集方法テーブル２５１に対し新たな情報が追加されると、収集方法更新検出部２２２は、収集方法テーブル２５１が更新されたと判定する（ステップＳ０１：ＹＥＳ）。
収集方法テーブル２５１が更新されたと判定された場合、収集可能リスト生成部２２１は、更新された収集方法テーブル２５１に基づいて収集可能リスト２５３を更新する（ステップＳ０２）。
【００７８】
ここで、図１６を参照しながら、ステップＳ０２の処理について詳しく説明する。
ステップＳ０２の処理において、収集可能リスト生成部２２１は、収集方法テーブル２５１の各コンポーネントに関連付けられたすべての識別子をマージする。その結果、図１６に示すように、更新後の収集可能リスト２５３には、作業機械１０に新たに搭載されたコンポーネントＣｎ（図１５）から取得可能なデータの種類を示す識別子Ｘａ１、Ｘａ２、・・が含まれる。
【００７９】
図１４に戻り、収集可能リスト生成部２２１によって収集可能リスト２５３が更新されると、収集可能リスト通知部２１９は、新たに更新された収集可能リスト２５３を、データサーバ３０に通知する（ステップＳ０３）。この収集可能リストは、データサーバ３０の収集可能リスト受信部３１１によって受信される。データサーバ３０は、データ収集装置１１から受信した収集可能リストに基づいて自装置内の収集可能リスト３５１を更新する。
【００８０】
《作用・効果》
以上のように、第１の実施形態に係るデータ収集装置１１は、作業機械１０に搭載された各コンポーネントから収集可能なデータを収集するデータ収集装置である。このデータ収集装置１１は、各コンポーネントから取得可能なデータの種類と、当該データを取得するための収集方法とが格納された収集方法テーブル２５１に基づいて、作業機械１０から収集可能なデータの種類を示す収集可能リスト２５３を生成、更新する収集可能リスト生成部２２１を備えている。また、データ収集装置１１は、収集可能リスト２５３をデータサーバ３０へと送信する収集可能リスト通知部２１９を備えている。
このような構成によれば、新たなコンポーネントが追加されるなどして作業機械１０から取得可能なデータの種類に変化が生じた場合に、収集可能リスト生成部２２１が、収集方法テーブル２５１内に格納されたデータに基づいて収集可能リスト２５３を更新する。そして、収集可能リスト通知部２１９が、新たに更新された収集可能リスト２５３をデータサーバ３０に送信する。これにより、データサーバ３０側では、作業機械１０から収集可能なデータの種類を示す収集可能リスト３５１が常に最新の状態に保たれるので、データサーバ３０に記録されている収集可能リスト３５１の内容と、作業機械１０から実際に取得可能なデータの種類との間の整合性が担保される。
【００８１】
また、第１の実施形態に係るデータ収集装置１１は、収集方法テーブル２５１の更新を検出する収集方法更新検出部２２２を更に備えている。そして、上述の収集可能リスト生成部２２１は、収集方法テーブル２５１の更新が検出された場合に、当該更新された収集方法テーブル２５１内に格納されたデータに基づいて収集可能リスト２５３を更新する。
このような構成によれば、例えばサービスツールを介して収集方法テーブル２５１の内容が変更された場合に、収集方法更新検出部２２２が、直ちに、収集方法テーブル２５１が更新されたことを検出する。そして、収集可能リスト生成部２２１は、収集方法テーブル２５１の更新が検出された場合に、更新後の新たな収集方法テーブル２５１に基づいて収集可能リスト２５３を更新する。これにより、新たなコンポーネントの追加、既設のコンポーネントの削除、既設のコンポーネントの更新等により作業機械１０から取得可能なデータの種類に変化が生じた場合に、直ちに同期して、収集可能リスト２５３が更新される。したがって、データ収集装置１１に記録されている収集可能リスト２５３の内容と、作業機械１０から実際に取得可能なデータの種類との間にずれが生じている時間帯を低減することができる。すなわち、データ収集装置１１に記録されている収集可能リスト２５３の内容と、作業機械１０から実際に取得可能なデータの種類との同時性を確保することができる。
【００８２】
また、収集可能リスト通知部２１９は、収集可能リスト２５３が更新されたタイミングで、当該更新された収集可能リスト２５３をデータサーバ３０へ送信する。
このような構成によれば、収集可能リスト２５３が更新された場合に、直ちに、当該更新された収集可能リスト２５３に示されるデータの種類のリストがデータサーバ３０に送信される。したがって、データサーバ３０に記録されている収集可能リスト３５１の内容と、作業機械１０から実際に取得可能なデータの種類との間にずれが生じている時間帯を低減することができる。
【００８３】
また、第１の実施形態に係るデータ収集装置１１は、データサーバ３０から受信した処理条件情報に基づいて収集したデータをデータサーバ３０に送信するデータ送信部３１７を更に備える。
このようにすることで、ユーザは、処理条件情報を用いて、作業機械１０から収集したいデータの種類や送信周期を所望にカスタマイズすることができる。
ここで、データサーバ３０に記憶される収集可能リスト３５１は、作業機械１０が搭載するデータ収集装置１１から受信した収集可能リストの内容が反映されたものである。つまり、データサーバ３０に記憶される収集可能リスト３５１の内容は、作業機械１０から実際に取得可能なデータの種類との整合性がとられている。したがって、ユーザは、現時点における作業機械１０との整合性が担保された処理条件情報を作成することができる。
【００８４】
＜第２の実施形態＞
以下、第２の実施形態に係るデータ収集装置、及び、これを備えるデータ提供システムについて、図１７〜図１８を参照しながら詳細に説明する。
【００８５】
《作業機械１０の構成》
図１７は、第２の実施形態に係る作業機械１０の構成を示すブロック図である。
第２の実施形態に係る作業機械１０の第２プロセッサ２１０は、第１の実施形態に係る第２プロセッサ２１０の機能に加え、更に、接続検出部２２３、収集方法更新処理部２２４としての機能を有する。
【００８６】
なお、第２の実施形態に係る制御コンポーネント１２、センサ１３、拡張コンポーネント１４は、それぞれ、内部に不揮発性の記憶領域を具備し、その記憶領域には、収集方法情報２５１ｎが記録されている。この収集方法情報２５１ｎは、各コンポーネントから取得可能なデータの種類と、当該データを取得するための収集方法とが示された情報である。
なお、本実施形態においては、出荷後の作業機械１０に新たに接続されるコンポーネントにも、当該新たなコンポーネントに対応する収集方法情報２５１ｎが予め記憶されているものとする。
【００８７】
接続検出部２２３は、オペレータによって、第１ネットワークＮ１、第２ネットワークＮ２等に新たなコンポーネントが接続された場合に、当該接続を検出する。
収集方法更新処理部２２４は、接続検出部２２３によって新たなコンポーネントが接続されたことが検出された場合に、当該新たなコンポーネントから収集方法情報を読み出す。収集方法更新処理部２２４は、新たなコンポーネントの記憶領域から読み出した収集方法情報に基づいて、第２ストレージ２５０に記録されている収集方法テーブル２５１を更新する。収集方法更新処理部２２４は、収集可能リスト生成部の一例である。
【００８８】
《取集可能リストの自動更新処理》
図１８は、第２の実施形態に係るデータ収集装置１１が実行する処理フローを示す図である。
以下、図１８を参照しながら、データ収集装置１１が実行する処理フローについて詳しく説明する。
【００８９】
図１８に示す処理フローは、例えば、データ収集装置１１に電源が投入された際に実行される起動処理中に実行されてよい。
【００９０】
図１８に示す処理フローにおいて、まず、接続検出部２２３は、第１ネットワークＮ１、第２ネットワークＮ２等に接続された各コンポーネントとの通信を行い、新たに接続されたコンポーネントが存在するか否かを判定する（ステップＳ１１）。新たなコンポーネントが接続されていない場合（ステップＳ１１；ＮＯ）、データ収集装置１１は特段の処理を行うことなく終了する。
新たなコンポーネントが接続されていた場合（ステップＳ１１；ＹＥＳ）、収集方法更新処理部２２４は、当該新たなコンポーネントの記憶領域から収集方法情報２５１ｎを読み出す（ステップＳ１２）。この収集方法情報２５１ｎは、第１の実施形態において、オペレータがサービスツールを用いて手動で収集可能リスト２５３に追加したものと等価である（図１５参照）。続いて、収集方法更新処理部２２４は、ステップＳ１２で読み出した収集方法情報２５１ｎを第２ストレージ２５０の収集方法テーブル２５１に追加して更新する（ステップＳ１３）。
【００９１】
収集可能リスト生成部２２１は、ステップＳ１３で更新された収集方法テーブル２５１に基づいて収集可能リスト２５３を更新する（ステップＳ１４）。そして、収集可能リスト通知部２１９は、新たに更新された収集可能リスト２５３を、データサーバ３０に通知する（ステップＳ１５）。ステップＳ１４〜ステップＳ１５の処理は、第１の実施形態の図１４、ステップＳ０２〜ステップＳ０３と同様の処理である。
【００９２】
《作用・効果》
以上のように、第２の実施形態に係るデータ収集装置１１は、新たなコンポーネントの接続を検出する接続検出部２２３を備える。また、データ収集装置１１は、新たなコンポーネントの接続が検出された場合に、当該新たなコンポーネントに予め記憶されていた収集方法情報２５１ｎを取得し、取得した収集方法情報２５１ｎに基づいて収集方法テーブル２５１を更新する収集方法更新処理部２２４を備える。
このような構成によれば、作業機械１０に新たなコンポーネントが追加で搭載された場合に、接続検出部２２３がその事象を検出する。そして、新たなコンポーネントが搭載されたことが検出された場合に、収集方法更新処理部２２４が当該新たなコンポーネントに対応する収集方法情報２５１ｎを読み出して収集方法テーブル２５１を自動的に更新する。したがって、第１の実施形態において、オペレータがサービスツールを用いて手動で収集方法テーブル２５１の更新を行う手間を排した上で、第１の実施形態と同様の効果を奏することができる。
【００９３】
＜その他の実施形態＞
以上、第１の実施形態及び第２の実施形態にかかるデータ収集装置１１及びこれを備えるデータ提供システム１について説明したが、他の実施形態においては上記の態様に限られない。
【００９４】
第１、第２の実施形態では、新たなコンポーネントが作業機械１０に搭載される場合に、データ収集装置１１がデータサーバ３０に新たな収集可能リストを通知する処理の流れを説明したが、第１、第２の実施形態にかかるデータ収集装置１１がデータサーバ３０に収集可能リストを通知する処理は、この態様に限られない。
例えば、作業機械１０の出荷後、既設のコンポーネントに対するソフトウェア、ファームウェアのバージョンアップや、センサの新たな取り付けがなされ、当該既設のコンポーネントから取得可能なデータの種類が増える場合がある。この場合にも、収集方法テーブル２５１のうち当該バージョンアップされた既設のコンポーネントに関する情報が更新される。収集可能リスト生成部２２１は、当該更新に伴い、収集可能リスト２５３を更新する。そして、収集可能リスト通知部２１９は、新たな取得可能リストをデータサーバ３０に送信する。
また、作業機械１０からコンポーネントが取り外された場合、当該コンポーネントから取得可能であったデータの種類を収集できなくなる。この場合にも、収集方法テーブル２５１のうち当該取り外された既設のコンポーネントに関する情報が削除される。なお、収集方法テーブル２５１のうち当該取り外された既設のコンポーネントに関する情報を削除することは、収集方法テーブル２５１を更新することの一例である。当該削除に伴い、収集可能リスト生成部２２１は収集可能リスト２５３を更新する。そして、収集可能リスト通知部２１９は、新たな取得可能リストをデータサーバ３０に送信する。
【００９５】
また、第１、第２の実施形態に係るデータ収集装置１１は、収集方法テーブル２５１が更新された場合に、当該更新後の収集方法テーブル２５１に基づいて収集可能リスト２５３を作成し、当該収集可能リスト２５３を通知するものとして説明したが、他の実施形態においてはこの態様に限定されない。
例えば、他の実施形態にかかるデータ収集装置１１は、収集方法テーブル２５１が更新された場合に、当該更新後の収集方法テーブル２５１そのものをデータサーバ３０に通知してもよい。この場合、データサーバ３０は、データ収集装置１１から受信した収集方法テーブル２５１に基づいて、収集可能リスト３５１を作成し、更新するものとする。この場合において、データ収集装置１１が送信する収集方法テーブル２５１は、作業機械１０から収集可能なデータの種類のリストに相当する。
【００９６】
また、第１の実施形態にかかるデータ収集装置１１は、データ収集装置１１内の収集方法テーブル２５１が更新された場合に、直ちに、当該収集方法テーブル２５１に基づいて収集可能リスト２５３を更新するものとして説明したが、他の実施形態においてはこの態様に限定されない。
すなわち、他の実施形態にかかるデータ収集装置１１は、収集方法テーブル２５１が更新されたというイベントにかかわらず、定期的に、収集方法テーブル２５１に基づいて収集可能リスト２５３を更新する態様であってもよい。また、「定期的」の一例として、作業機械１０のキーオンによるデータ収集装置１１の起動時に、収集方法テーブル２５１に基づいて収集可能リスト２５３を更新する態様であってもよい。
同様に、第１、第２の実施形態にかかるデータ収集装置１１は、データ収集装置１１内の収集可能リスト２５３が更新された場合に、直ちに、当該収集可能リスト２５３に示されるデータの種類のリストをデータサーバ３０に送信するものとして説明したが、他の実施形態においてはこの態様に限定されない。
すなわち、他の実施形態にかかるデータ収集装置１１は、収集可能リスト２５３が更新されたというイベントにかかわらず、定期的に、収集可能リスト２５３に示されるデータの種類のリストをデータサーバ３０に送信する態様であってもよい。また、「定期的」の一例として、作業機械１０のキーオンによるデータ収集装置１１の起動時に、収集可能リスト２５３に示されるデータの種類のリストをデータサーバ３０に送信する態様であってもよい。
【００９７】
また、第１、第２の実施形態において、コンポーネントの一例であるセンサ１３は、第１インタフェース１７０に接続されるものとして説明したが、他の実施形態においてはこの態様に限定されない。例えば、センサ１３は、第１インタフェース１７０ではなく、第２インタフェース２７０に接続されてもよいし、制御コンポーネント１２または拡張コンポーネント１４に接続されてもよい。同様に、拡張コンポーネント１４が別の拡張コンポーネント１４に接続されてもよいし、制御コンポーネント１２が別の制御コンポーネント１２に接続されてもよい。
【００９８】
また、第１、第２の実施形態において、収集方法が更新された場合に、更新された収集方法に基づいて収集可能リストを更新するものとして説明したが、他の実施形態においては、この態様に限定されない。例えば、データ収集装置１１は、収集方法を有さずに、予め収集可能リストを格納しておき、各コンポーネントが更新された場合に、当該更新によって新たに取得できるようになったデータ、および取得できなくなったデータについて、直接収集可能リストにおいて更新することとしてもよい。
【００９９】
また、第１の実施形態において、収集方法テーブル２５１は、データ収集装置１１に接続されたサービスツールを用いて更新されることを、また、第２の実施形態において、収集方法テーブル２５１は、コンポーネントに事前に記録されたデータ収集方法に基づいて更新されることを説明したが、他の実施形態においてはこれらの態様に限定されない。
例えば、他の実施形態に係るデータ収集装置１１は、データサーバ３０から特定のコンポーネントに関する収集方法情報２５１ｎを受信し、当該受信した収集方法情報２５１ｎに基づいて収集方法テーブル２５１を更新してもよい。
また、他の実施形態に係るデータ収集装置１１は、サービスツール用インタフェース２９０を介さず、無線ＬＡＮにてサービスツールから収集方法情報２５１ｎを受信する態様であってもよい。
また、他の実施形態においては、所定のコンポーネントに対するソフトウェア、ファームウェアの書き換えが広域通信網を介して遠隔でなされるものする。この場合において、所定のコンポーネントのソフトウェア、ファームウェアの書き換えと同時に、当該所定のコンポーネントに関する収集方法情報２５１ｎに基づいて収集方法テーブル２５１が更新される態様であってもよい。
【０１００】
なお、上述したデータ収集装置の各種処理の過程は、プログラムの形式でコンピュータ読み取り可能な記録媒体に記憶されており、このプログラムをコンピュータが読み出して実行することによって上記各種処理が行われる。また、コンピュータ読み取り可能な記録媒体とは、磁気ディスク、光磁気ディスク、ＣＤ−ＲＯＭ、ＤＶＤ−ＲＯＭ、半導体メモリ等をいう。また、このコンピュータプログラムを通信回線によってコンピュータに配信し、この配信を受けたコンピュータが当該プログラムを実行するようにしてもよい。
【０１０１】
上記プログラムは、上述した機能の一部を実現するためのものであってもよい。更に、上述した機能をコンピュータシステムにすでに記録されているプログラムとの組み合わせで実現できるもの、いわゆる差分ファイル、又は差分プログラム等であってもよい。
【０１０２】
以上、本発明のいくつかの実施形態を説明したが、これらの実施形態は、例として提示したものであり、発明の範囲を限定することは意図していない。これら実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で種々の省略、置き換え、変更を行うことができる。これら実施形態やその変形は、発明の範囲や要旨に含まれると同様に、特許請求の範囲に記載された発明とその均等の範囲に含まれる。
【符号の説明】
【０１０３】
１  データ提供システム、１０  作業機械、１１  データ収集装置、１００  第１基板、２００  第２基板、１１０  第１プロセッサ、１３０  第１メインメモリ、１５０  第１ストレージ、１７０  第１インタフェース、２１０  第２プロセッサ、２３０  第２メインメモリ、２５０  第２ストレージ、２７０  第２インタフェース、２９０  サービスツール用インタフェース、１２  制御コンポーネント、１３  センサ、１４  拡張コンポーネント、Ｎ１  第１ネットワーク、Ｎ２  第２ネットワーク、１１１  収集指示入力部、１１２  収集部、１１３  変換部、１１４  データ出力部、２１１  処理条件受信部、２１２  収集判定部、２１３  収集方法特定部、２１４  収集指示出力部、２１５  データ取得部、２１６  収集部、２１７  変換部、２１８  データ登録部、２１９  収集可能リスト通知部、２２０  データ送信部、２２１  収集可能リスト生成部、２２２  収集方法更新検出部、２２３  接続検出部、２２４  収集方法更新処理部、２５１  収集方法テーブル、２５１ｎ  収集方法情報、２５２  処理条件テーブル、２５３  収集可能リスト、２５４  データテーブル、２５４Ａ  ローデータテーブル、２５４Ｂ  時系列データテーブル、３０  データサーバ
【図１】
2020056180.tif 000003
【図２】
2020056180.tif 000004
【図３】
2020056180.tif 000005
【図４】
2020056180.tif 000006
【図５】
2020056180.tif 000007
【図６】
2020056180.tif 000008
【図７】
2020056180.tif 000009
【図８】
2020056180.tif 000010
【図９】
2020056180.tif 000011
【図１０】
2020056180.tif 000012
【図１１】
2020056180.tif 000013
【図１２】
2020056180.tif 000014
【図１３】
2020056180.tif 000015
【図１４】
2020056180.tif 000016
【図１５】
2020056180.tif 000017
【図１６】
2020056180.tif 000018
【図１７】
2020056180.tif 000019
【図１８】
2020056180.tif 000020