(57)【要約】  機器は、前記機器に備わる複数の部位の状況を、センサによって測定され、前記測定によって生成されたセンサデータを収集し、前記計算機と前記ネットワークを介して接続された状態において、前記収集されたセンサデータを前記計算機に送信し、前記計算機は、前記送信されたセンサデータに基づいて、前記機器が所定の状態であることを示す指標を生成し、前記生成された指標を、前記機器に送信し、前記機器は、前記送信された指標と前記収集されたセンサデータとによって、前記機器が所定の状態にあるか否かを診断することを特徴とするセンサシステム。
2012042649.tif 000002
【特許請求の範囲】
【請求項１】
複数のセンサを備える機器と、前記機器にネットワークを介して接続される計算機とを備えるセンサシステムであって、
前記機器は、
前記機器に備わる複数の部位の状況を、前記センサによって測定され、
前記測定によって生成されたセンサデータを収集し、
前記計算機と前記ネットワークを介して接続された状態において、前記収集されたセンサデータを前記計算機に送信し、
前記計算機は、
前記送信されたセンサデータに基づいて、前記機器が所定の状態であることを示す指標を生成し、
前記生成された指標を、前記機器に送信し、
前記機器は、前記送信された指標と前記収集されたセンサデータとによって、前記機器が所定の状態にあるか否かを診断することを特徴とするセンサシステム。
【請求項２】
前記機器は、
少なくとも１日分の前記センサデータを収集し、
前記収集された少なくとも１日分のセンサデータを前記計算機に送信し、
前記計算機は、
前記送信された少なくとも１日分のセンサデータを、前記センサデータが前記機器において生成された日付毎に保持し、
前記保持された各センサデータに基づいて、前記機器が所定の状態であることを示す第１の指標を、前記センサデータが保持された日付毎に生成し、
前記機器が所定の状態にあるか否かを診断する診断日を決定し、
前記決定された診断日と、所定の第１の日数とに基づいて、前記診断日に対応する第１の期間を求め、
前記求められた第１の期間における前記第１の指標を含む、第２の指標を生成し、
前記生成された第２の指標と、前記決定された診断日とを、前記機器に送信し、
前記機器は、前記送信された第２の指標と前記収集されたセンサデータとによって、前記機器が所定の状態にあるか否かを、前記送信された診断日において診断することを特徴とする請求項１に記載のセンサシステム。
【請求項３】
前記機器は、前記収集された少なくとも１日分のセンサデータを、前記計算機との接続日において、前記計算機に送信し、
前記計算機は、
前記接続日と所定の第２の日数分とを加算することによって、第１の診断日を算出し、
前記算出された第１の診断日に基づいて、前記機器が各センサデータを前記計算機に送信する次回接続日を算出することを特徴とする請求項２に記載のセンサシステム。
【請求項４】
前記計算機は、
前記接続日まで連続した前記所定の第１の日数分の日付を抽出し、
前記算出された第１の診断日から、前記抽出された各日付を、減算し、
前記減算された各結果の合計を、前記所定の第１の日数によって除算することによって、第１の平均日数差を算出し、
前記接続日までに、前記機器から送信されたセンサデータが前記機器において生成された日付のうち、日付が新しい順に、前記所定の第１の日数分の日付を抽出し、
前記算出された第１の診断日から、前記抽出された所定の第１の日数分の各日付を、減算し、
前記減算された各結果の合計を、前記所定の第１の日数によって除算することによって、第２の平均日数差を算出し、
前記第２の平均日数差から前記第１の平均日数差を減算した結果を、前記第１の診断日から減算することによって、前記第２の診断日を算出することを特徴とする請求項３に記載のセンサシステム。
【請求項５】
前記機器による診断の結果、前記機器が所定の状態にあると診断された場合、前記機器は、前記センサデータを計算機に送信し、
前記計算機は、
前記生成された指標と前記送信されたセンサデータとによって、前記機器が所定の状態にあるか否かを診断し、
前記計算機による診断の結果、前記機器が所定の状態にあると診断された場合、前記機器が所定の状態にあることを通知するためのデータを生成することを特徴とする請求項４に記載のセンサシステム。
【請求項６】
複数のセンサを備える機器に、ネットワークを介して接続される計算機であって、
前記機器から、前記機器において生成されたセンサデータを受信し、
前記受信されたセンサデータに基づいて、前記機器が所定の状態であることを示す指標を生成し、
前記機器に、前記機器が所定の状態であるか否かを診断させるため、前記生成された指標を送信することを特徴とする計算機。
【請求項７】
前記機器から、前記少なくとも１日分のセンサデータを受信し、
前記受信された少なくとも１日分のセンサデータを、前記センサデータが前記機器において生成された日付毎に保持し、
前記保持された各センサデータに基づいて、前記機器が所定の状態であることを示す第１の指標を、前記センサデータが保持された日付毎に生成し、
前記機器が所定の状態にあるか否かを診断する診断日を決定し、
前記決定された診断日と、所定の第１の日数とに基づいて、前記診断日に対応する第１の期間を求め、
前記求められた第１の期間における前記第１の指標を含む、第２の指標を生成し、
前記生成された第２の指標と前記決定された診断日とを、前記機器に送信することを特徴とする請求項６に記載の計算機。
【請求項８】
前記機器から、前記少なくとも１日分のセンサデータを、前記機器との接続日において受信し、
前記接続日と所定の第２の日数分とを加算することによって、第１の診断日を算出し、
前記算出された第１の診断日に基づいて、前記機器が各センサデータを、次に前記計算機に送信する次回接続日を算出することを特徴とする請求項７に記載の計算機。
【請求項９】
前記接続日まで連続した前記所定の第１の日数分の日付を抽出し、
前記算出された第１の診断日から、前記抽出された各日付を、減算し、
前記減算された各結果の合計を、前記所定の第１の日数によって除算することによって、第１の平均日数差を算出し、
前記接続日までに、前記機器から送信されたセンサデータが前記機器において生成された日付のうち、日付が新しい順に、前記所定の第１の日数分の日付を抽出し、
前記算出された第１の診断日から、前記抽出された所定の第１の日数分の各日付を、減算し、
前記減算された各結果の合計を、前記所定の第１の日数によって除算することによって、第２の平均日数差を算出し、
前記第２の平均日数差から前記第１の平均日数差を減算した結果を、前記第１の診断日から減算することによって、前記第２の診断日を算出することを特徴とする請求項８に記載の計算機。
【請求項１０】
前記機器による診断の結果、前記機器が所定の状態にあると診断された場合、
前記センサデータを前記機器から受信し、
前記生成された指標と前記送信されたセンサデータとによって、前記機器が所定の状態にあるか否かを診断し、
前記計算機による診断の結果、前記機器が所定の状態にあると診断された場合、前記機器が所定の状態にあることを通知するためのデータを生成することを特徴とする請求項９に記載の計算機。
【請求項１１】
複数のセンサを備え、ネットワークを介して計算機と接続される機器であって、
前記機器に備わる複数の部位の状況を、前記センサによって測定され、
前記測定によって生成されたセンサデータを収集し、
前記計算機と前記ネットワークを介して接続された状態において、前記収集されたセンサデータを前記計算機に送信し、
前記計算機によって生成された指標を、受信し、
前記受信された指標と前記収集されたセンサデータとによって、前記機器が所定の状態にあるか否かを診断することを特徴とする機器。
【請求項１２】
少なくとも１日分の前記センサデータを収集し、
前記収集された少なくとも１日分のセンサデータを前記計算機に送信し、
前記計算機によって生成された指標と、前記計算機によって抽出された診断日とを、受信し、
前記送信された指標と前記収集されたセンサデータとによって、前記機器が所定の状態にあるか否かを、前記送信された診断日において診断することを特徴とする請求項１１に記載の機器。
【請求項１３】
前記機器による診断の結果、前記機器が所定の状態にあると診断された場合、前記センサデータを計算機に送信することを特徴とする請求項１２に記載の機器。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、センサシステムに関し、特に、センサデータを診断するセンサシステムに関する。
【背景技術】
【０００２】
ガスエンジン、エレベータ、採掘機械、又は、建築機械などの機器を用いる場合、それらの機器を常に稼動させるため、機器を保守することは必須である。機器を保守するための有効な技術の一つには、機器の異常を診断することによって、故障の予兆を検知したり、また、故障からの修復手段を、管理者等に提供したりする技術が提案されている。【０００３】
従来、機器に設置されたセンサが機器の状態を測定し、測定されたデータ（以下、センサデータと記載）を、通信回線を介してデータセンタに送信し、さらに、センサデータを送信されたデータセンタが、受信したセンサデータを診断し、機器の故障の予兆を検知する技術が開示されている（例えば、特許文献１参照）。【０００４】
また、機器の内部において、センサデータから、ニューラルネットワークの教師なし学習を用いて故障の予兆を検知するモデルをあらかじめ生成しておき、生成されたモデルと、機器のセンサデータとに基づいて、故障の予兆を検知する技術が開示されている（例えば、特許文献２参照）。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２００９−００３５６１号公報
【特許文献２】特開２００８−００９９３５号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
僻地において稼動する採掘用重機などの機器は、データセンタと通信するための通信回線から離れた場所において用いられるため、データセンタに常に接続されることができない。このため、僻地において稼動する機器は、センサによる測定によってセンサデータが生成される都度、センサデータをデータセンタに送信することができない。【０００７】
このような僻地において稼動する機器に、特許文献１に開示される技術を適用する場合、機器がデータセンタと通信するまで、機器において測定されたセンサデータがデータセンタに送信されないため、故障予兆の検知が遅れてしまう。【０００８】
一方、前述の僻地において稼動する機器に、特許文献２に開示される技術を適用する場合、機器の内部において故障の予兆が検知されるため、データセンタに接続されない僻地においても、機器の内部において故障の予兆が、即時検知される。【０００９】
しかし、高精度に故障を検知するためには、大量のセンサデータを分析し、診断モデルを診断前に生成し、また、その生成された診断モデルに沿って、故障が診断される必要がある。さらに、経年劣化及び季節の変化による気温及び湿度の変化などによって、機器の状態は変化していくため、生成された診断モデルも、気温及び湿度の変化などに従って、短い時間の周期において更新される必要がある。このため、機器の異常を検知するために必要な診断モデルが、短い時間の周期において更新されるためには、大量のセンサデータを高速に処理できる、大容量の計算機のリソースが必要になる。【００１０】
僻地で稼動する機器に備わる計算機のリソースが限られている場合、特許文献２に開示された技術のような、機器による高精度な診断モデルの生成は困難であるという問題がある。【００１１】
本発明は、例えば、僻地において稼動する建築用又は採掘用の重機など、通信回線によってデータの送受信が常時できない機器の異常を、精度よく診断し、可及的速やかに保守会社に報告することを目的とする。
【課題を解決するための手段】
【００１２】
本発明の代表的な一例を示せば以下の通りである。すなわち、複数のセンサを備える機器と、前記機器にネットワークを介して接続される計算機とを備えるセンサシステムであって、前記機器は、前記機器に備わる複数の部位の状況を、前記センサによって測定され、前記測定によって生成されたセンサデータを収集し、前記計算機と前記ネットワークを介して接続された状態において、前記収集されたセンサデータを前記計算機に送信し、前記計算機は、前記送信されたセンサデータに基づいて、前記機器が所定の状態であることを示す指標を生成し、前記生成された指標を、前記機器に送信し、前記機器は、前記送信された指標と前記収集されたセンサデータとによって、前記機器が所定の状態にあるか否かを診断する。
【発明の効果】
【００１３】
本発明の一実施形態によると、通信回線と接続できない現場において稼動する機器の異常を、精度よく診断できる。
【図面の簡単な説明】
【００１４】
【図１】本発明の実施形態のシステムが稼動する環境を示す説明図である。
【図２】本発明の実施形態のシステムの論理的な構成を示すブロック図である。
【図３】本発明の実施形態の診断対象機器の物理的な構成を示すブロック図である。
【図４】本発明の実施形態のデータセンタ及び保守会社の物理的な構成を示すブロック図である。
【図５】本発明の実施形態の機器側センサテーブルを示す説明図である。
【図６】本発明の実施形態の機器側診断モデルテーブルを示す説明図である。
【図７Ａ】本発明の実施形態のセンサデータの分布と診断モデルを示す説明図である。
【図７Ｂ】本発明の実施形態のセンサデータの分布と診断モデルを示す説明図である。
【図７Ｃ】本発明の実施形態のセンサデータの分布と診断モデルを示す説明図である。
【図７Ｄ】本発明の実施形態のセンサデータの分布と診断モデルを示す説明図である。
【図７Ｅ】本発明の実施形態のセンサデータの分布と診断モデルを示す説明図である。
【図８】本発明の実施形態の診断モデルを示す説明図である。
【図９】本発明の実施形態のすべての学習日において診断対象機器が稼動する場合の診断日及び学習日を示す説明図である。
【図１０】本発明の実施形態の学習日に診断対象機器が稼動しない日がある場合の診断日及び学習日を示す説明図である。
【図１１】本発明の実施形態のデータセンタによって保持される機器センサ構成テーブルを示す説明図である。
【図１２】本発明の実施形態のデータセンタによって保持されるセンタ側センサテーブル群を示す説明図である。
【図１３】本発明の実施形態のデータセンタによって保持される機器診断構成テーブルを示す説明図である。
【図１４】本発明の実施形態のデータセンタによって保持されるセンタ側診断モデル片テーブル群を示す説明図である。
【図１５】本発明の実施形態の診断モデル片を示す説明図である。
【図１６】本発明の実施形態のデータセンタによって保持される機器稼動日構成テーブルを示す説明図である。
【図１７】本発明の実施形態のデータセンタによって保持される稼動日テーブル群を示す説明図である。
【図１８】本発明の実施形態の全体の処理を示すフローチャートである。
【図１９】本発明の実施形態のサブルーチンＳＵＢ０の処理を示すフローチャートである。
【図２０】本発明の実施形態のサブルーチンＳＵＢ１の処理を示すフローチャートである。
【図２１】本発明の実施形態のサブルーチンＳＵＢ１１の処理を示すフローチャートである。
【図２２】本発明の実施形態のサブルーチンＳＵＢ１０の処理を示すフローチャートである。
【図２３】本発明の実施形態のサブルーチンＳＵＢ１００の処理を示すフローチャートである。
【図２４】本発明の実施形態のサブルーチンＳＵＢ１０５の処理を示す説明図である。
【図２５】本発明の実施形態の診断モデルのＲＡＭに保持されるテーブルを示す説明図である。
【発明を実施するための形態】
【００１５】
以下、本発明の実施形態について、図面を参照して説明する。
【００１６】
図１は、本発明の実施形態のシステムが稼動する環境を示す説明図である。
【００１７】
図１に示す本実施形態のシステムは、稼動場所１０００、通信地点１１００、データセンタ１１３０、及び、保守会社１１４０を含む環境において、実装される。また、図１に示す機器１０２０及び機器１０４０は、本実施形態において保守される機器である。
【００１８】
稼動場所１０００は、本実施形態の保守される機器１０２０が稼動する場所である。稼動場所１０００は、例えば鉱山などの僻地であり、データセンタ１１３０との接続が困難な場所である。
【００１９】
機器１０２０及び機器１０４０は、稼動場所１０００において稼動する。機器１０２０は、例えば、トラック、油圧ショベル、又は、ローダといった採掘機器などである。機器１０２０は、稼動場所１０００からの移動が可能であり、機器１０４０は、稼動場所１０００からの移動が困難である。
【００２０】
通信地点１１００は、データセンタ１１３０と通信が可能な設備を備える場所であり、例えば、事務所又は機器の整備場などである。通信地点１１００は、稼動場所１０００から離れた場所にある。
【００２１】
通信地点１１００は、データセンタ１１３０と通信するための通信装置１１２０を備える。このため、機器１０２０は、稼動場所１０００から通信地点１１００に移動し、通信装置１１２０を介して、機器１０２０の状態を示すセンサデータをデータセンタ１１３０に送信することができる。また、機器１０２０は、故障の予兆を検知するために用いる診断モデルを、データセンタ１１３０から受信することができる。
【００２２】
また、通信地点１１００から移動できない機器１０４０を保守する場合、保守員１０３０は、センサデータが蓄えられたストレージなどを機器１０４０内から取得し、取得されたストレージなどを、通信地点１１００へ運ぶ。そして、保守員１０３０は、通信装置１１２０を介して、ストレージなどに蓄えられたセンサデータを、データセンタ１１３０に送信する。
【００２３】
さらに、保守員１０３０は、データセンタ１１３０から受信された診断モデルをストレージに格納し、診断モデルを格納されたストレージを機器１０４０まで運ぶ。そして、保守員１０３０は、診断モデルが格納されたストレージを、機器１０４０に接続することによって、機器１０４０に最新の診断モデル取得させることができる。
【００２４】
データセンタ１１３０は、高い処理性能を持つ計算機を備える。そして、通信装置１１２０を介して送信された大量のセンサデータを高速に分析し、機器１０２０又は機器１０４０の異常又は故障の予兆を診断するための診断モデルを生成する。
【００２５】
保守会社１１４０は、機器１０２０及び機器１０４０を保守する会社であり、機器１０２０及び機器１０４０の故障の予兆が検知された場合、データセンタ１１３０から報告を受信する。
【００２６】
機器１０２０及び機器１０４０は、ともに保守される機器である。このため、以降において機器１０２０及び機器１０４０を総称し、診断対象機器１０１０と記載する。
【００２７】
図２は、本発明の実施形態のシステムの論理的な構成を示すブロック図である。
【００２８】
診断対象機器１０１０は、データセンタ１１３０とネットワークを介して接続される。また、保守会社１１４０は、データセンタ１１３０とネットワークを介して接続される。
【００２９】
図３は、本発明の実施形態の診断対象機器１０１０の物理的な構成を示すブロック図である。
【００３０】
診断対象機器１０１０は、センサ３１００（３１００−１〜３１００−Ｎ）、センサコントローラ３１２０、ＣＰＵ３１４０、通信装置３１６０、機器側提示装置３１８０、不揮発性メモリ３３００、及びＲＡＭ３４００を備える。
【００３１】
センサ３１００は、診断対象機器１０１０の現在の状態を示す物理量を測定するためのセンサである。診断対象機器１０１０の物理量とは、例えば、温度、回転数、又は、内蔵発電機の電流値などである。
【００３２】
センサコントローラ３１２０は、センサ３１００からセンサデータを収集する。センサデータとは、センサ３１００によって測定された結果のデータである。センサコントローラ３１２０は、収集されたセンサデータを、不揮発性メモリ３３００に格納する。
【００３３】
ＣＰＵ３１４０は、ＲＡＭ３４００に格納されるプログラム等を実行するためのプロセッサである。通信装置３１６０は、診断対象機器１０１０とデータセンタ１１３０との間で、データを送受信するための通信装置である。
【００３４】
通信装置３１６０は、通信地点１１００に備わる通信装置１１２０と接続するための装置である。また、診断対象機器１０１０が機器１０４０である場合、センサデータを、磁気ディスク等のストレージに格納するための機能を持つ。
【００３５】
機器側提示装置３１８０は、診断対象機器１０１０における異常又は故障の予兆が検知された場合、診断対象機器１０１０を操作する作業者へ、検知された内容を表示するための装置である。機器側提示装置３１８０は、例えば、ディスプレイでもよく、また、音声を発する装置でもよい。
【００３６】
不揮発性メモリ３３００は、例えば、フラッシュメモリなどであり、診断対象機器１０１０の電源を停止させても、格納された情報が保持される記憶媒体である。センサデータ及び診断モデル等を格納する。不揮発性メモリ３３００は、機器側センサテーブル３３３０、機器側診断モデルテーブル３３６０、次回接続日データ３３５０、診断モデル欠乏フラグデータ３３７０、前回更新日データ３３７５、診断モデル３４７０、及び、前回接続日データ３３８０を保持する。
【００３７】
機器側センサテーブル３３３０は、診断対象機器１０１０において測定されたセンサデータを格納するテーブルである。機器側診断モデルテーブル３３６０は、診断モデル３４７０に格納される診断モデルが、いずれの日に収集されたか（すなわち、生成されたか）を格納するためのテーブルである。
【００３８】
次回接続日データ３３５０は、診断対象機器１０１０がデータセンタ１１３０に、次に接続する日を示す。診断モデル欠乏フラグデータ３３７０には、診断対象機器１０１０において異常又は故障の予兆を診断するために用いる診断モデル３４７０が最新版であるか否かを示すフラグが格納される。
【００３９】
前回更新日データ３３７５は、診断対象機器１０１０において用いられる診断モデル３４７０が、最後に更新された日を示す。診断モデル３４７０は、診断対象機器１０１０の異常等を診断するための診断モデルが格納される。前回接続日データ３３８０は、データセンタ１１３０に最後に接続された日を示す。
【００４０】
ＲＡＭ３４００は、ＣＰＵ３１４０が実行するプログラムを保持し、ＤＲＡＭやＳＲＡＭといった高速な読み書きができる記憶装置である。ＲＡＭ３４００は、異常診断プログラム３４２０、センサデータ送信プログラム３４４０、及び、診断モデル更新プログラム３４６０を保持する。
【００４１】
異常診断プログラム３４２０は、センサコントローラ３１２０がセンサデータを収集した後、収集されたセンサデータを分析するプログラムである。そして、これによって、診断対象機器１０１０が異常であるか否かを診断し、また、故障の予兆があるか否かを診断するプログラムである。
【００４２】
センサデータ送信プログラム３４４０は、機器側センサテーブル３３３０に格納されたセンサデータをデータセンタ１１３０に送信するプログラムである。
【００４３】
診断モデル更新プログラム３４６０は、機器側診断モデルテーブル３３６０に格納される診断モデルを取得し、不揮発性メモリ３３００にロードすることによって診断モデル３４７０を更新するプログラムである。
【００４４】
診断モデル３４７０は、センサデータに基づいて、診断対象機器１０１０の異常等を診断する際に、異常診断プログラム３４２０によって用いられるデータである。
【００４５】
図４は、本発明の実施形態のデータセンタ１１３０及び保守会社１１４０の物理的な構成を示すブロック図である。
【００４６】
データセンタ１１３０は、ＣＰＵ３５３０、通信装置３５６０、ＲＡＭ３６００、及び、ＨＤＤ３７００を備える。
【００４７】
ＣＰＵ３５３０は、ＲＡＭ３６００に格納されるプログラムを実行するプロセッサである。通信装置３５６０は、診断対象機器１０１０と通信するための装置である。
【００４８】
ＲＡＭ３６００は、例えば、ＤＲＡＭ又はＳＲＡＭなどであり、高速な読み書きが可能な記憶装置である。ＲＡＭ３６００は、診断モデル作成プログラム３６２０、診断モデル片検索・更新プログラム３６４０、次回接続日算出プログラム３６３０、及び、診断モデル片マージプログラム３６５０を保持する。
【００４９】
診断モデル作成プログラム３６２０は、診断対象機器１０１０から送信されたセンサデータを分析し、診断対象機器１０１０の異常等を診断するために用いられる診断モデルを生成するプログラムである。診断モデル片検索・更新プログラム３６４０は、センタ側診断モデル片テーブル群３７４０から、診断対象機器１０１０に必要な診断モデル片を検索し、また、診断対象機器１０１０に必要な診断モデル片を更新するプログラムである。
【００５０】
次回接続日算出プログラム３６３０は、データセンタ１１３０と診断対象機器１０１０とが接続されるべき日を算出するプログラムである。診断モデル片マージプログラム３６５０は、診断モデル片をマージすることによって、数日分（後述する、学習日）のセンサデータの正常範囲を示す診断モデルを生成するプログラムである。
【００５１】
ＨＤＤ３７００は、例えば、大容量のハードディスクドライブである。図１の稼動場所１０００において稼動する全ての診断対象機器１０１０のセンサデータと、診断モデルのデータとを保持する。ＨＤＤ３７００は、機器センサ構成テーブル３７１０、機器診断構成テーブル３７２０、機器稼動日構成テーブル３７５０、センタ側センサテーブル群３７３０、センタ側診断モデル片テーブル群３７４０、及び、稼動日テーブル群３７６０を保持する。
【００５２】
機器センサ構成テーブル３７１０は、稼動場所１０００において稼動する全診断対象機器１０１０を一意に示す識別子と、その識別子に対応するセンサデータが格納されるテーブル名を保持する。センタ側センサテーブル群３７３０は、診断対象機器１０１０において測定されたセンサデータを、診断対象機器１０１０ごとに保持するテーブル群である。
【００５３】
機器診断構成テーブル３７２０は、稼動場所１０００において稼動する全診断対象機器１０１０の識別子と、その識別子に対応する診断モデルが格納されるテーブル名を保持する。センタ側診断モデル片テーブル群３７４０は、診断対象機器１０１０の診断モデルを、診断対象機器１０１０ごとに保持するテーブルである。
【００５４】
機器稼動日構成テーブル３７５０は、稼動場所１０００において稼動する全診断対象機器１０１０の識別子と、その識別子に対応する診断対象機器１０１０の稼動日とを保持する稼動日テーブル群３７６０のテーブル名を保持する。稼動日テーブル群３７６０は、診断対象機器１０１０の稼動日を、診断対象機器１０１０ごとに保持するテーブル群である。
【００５５】
保守会社１１４０は、保守会社サーバ３９２０、及び保守会社側提示装置３９４０を備える。
【００５６】
保守会社サーバ３９２０は、保守会社１１４０内に設置される計算機である。データセンタ１１３０による診断の結果、図１の稼動場所１０００において稼動する診断対象機器１０１０に、異常が発生した、又は、故障の予兆がある場合、保守会社サーバ３９２０は、データセンタ１１３０から異常を示す報告を受信する。
【００５７】
保守会社側提示装置３９４０は、保守会社サーバ３９２０が受信した診断対象機器１０１０の異常の報告を、保守会社１１４０に所属するシステム管理者等に通知するための装置である。保守会社側提示装置３９４０は、異常の報告を通知するための液晶ディスプレイ、ブラウン管、又は、音声提示装置などを備える。
【００５８】
図５は、本発明の実施形態の機器側センサテーブル３３３０を示す説明図である。
【００５９】
機器側センサテーブル３３３０は、取得時刻４１００及びセンサデータ４１１０（４１１０−１〜４１１０−Ｎ）を含む。センサデータ４１１０（４１１０−１〜４１１０−Ｎ）は、センサ３１００（３１００−１〜３１００−Ｎ）から収集されたセンサデータの値を示す。
【００６０】
取得時刻４１００は、センサ３１００（３１００−１〜３１００−Ｎ）からセンサデータ４１１０（４１１０−１〜４１１０−Ｎ）が、各々収集された時刻を示す。センサコントローラ３１２０は、センサデータを短い周期で収集するか、または、センサ３１００による測定の周期に従って収集する。このため、取得時刻４１００は、センサ３１００によって、センサデータが生成された時刻と、ほぼ同じである。
【００６１】
機器側センサテーブル３３３０における取得時刻４１００が指定されることによって、指定された取得時刻４１００に対応するセンサデータ４１１０が取得される。
【００６２】
図６は、本発明の実施形態の機器側診断モデルテーブル３３６０を示す説明図である。
【００６３】
機器側診断モデルテーブル３３６０は、診断日４４２０及び診断モデル４４３０を含む。診断モデル４４３０は、診断モデルを一意に示す識別子である。診断日４４２０は、診断モデル４４３０が示す診断モデルによって、センサデータを診断する日を示す。
【００６４】
本実施形態における診断モデルとは、測定されたセンサデータの、正常値の範囲を示すモデルである。図１５を用いて診断モデルと診断モデルによる異常診断とを説明する。
【００６５】
図７Ａ〜Ｅは、本発明の実施形態のセンサデータの分布と診断モデルを示す説明図である。
【００６６】
図７Ａのモデル１２１００は、センサ３１００−１とセンサ３１００−２とを備える診断対象機器１０１０が、正常に稼動している場合、センサ３１００−１とセンサ３１００−２によって測定された１日分のセンサデータを、センサデータが収集された時刻（取得時刻４１００）ごとに２次元の座標系に図示した分布である。なお、図７Ａに示す点１２１１０は、一つのセンサデータを示す。
【００６７】
モデル１２１００が示すセンサデータの分布と、機械学習技術の一つであるクラスタリング技術とに基づいて、センサデータの傾向が学習された場合、図７Ｂのモデル１２２００の円１２２１０のように、正常なセンサデータの分布が円によって近似される。
【００６８】
図７Ｃのモデル１２３００は、モデル１２１００のセンサデータの分布がすべて円によって近似された場合の、三つの円を示す。そして、近似された円の、中心座標と半径とが算出される。
【００６９】
収集されたセンサデータが、モデル１２３００に示す円に含まれる場合、センサ３１００−１とセンサ３１００−２とが測定する診断対象機器１０１０は、正常に稼動していることを示す。
【００７０】
また、本実施形態において、前述のように求められた正常なセンサデータの分布から、収集されたセンサデータが外れる場合、測定された診断対象機器１０１０には、異常があると診断される。例えば、モデル１２２００に含まれる点１２２３０のようなセンサデータがセンサ３１００−１とセンサ３１００−２とから収集された場合、センサ３１００−１とセンサ３１００−２とが測定する診断対象機器１０１０には、異常があると診断される。
【００７１】
さらに、図７Ｄのモデル１２４００は、センサ３１００−１とセンサ３１００−２とによって別の日に測定されたセンサデータが、前述と同じくクラスタリング技術を用いて学習された結果、求められた正常なセンサデータの分布を示す。ここで、モデル１２３００とモデル１２４００とをマージすることによって、２日分の正常なセンサデータの分布を示す診断モデルが生成される。
【００７２】
図７Ｅは、モデル１２３００とモデル１２４００とをマージすることによって生成された診断モデル１２５００を示す。なお、本実施形態において、センサデータの分布をマージする場合、分布と分布との論理和が求められる。
【００７３】
すなわち、センサデータの分布をマージして診断モデルを生成する場合、具体的には、各モデルに含まれる分布の、近似された円の中心座標と半径とのデータが、各々追加されることによって診断モデルが生成される。
【００７４】
以降、本実施形態において、モデル１２３００のように、１日ごとに生成される正常なセンサデータの分布を示すモデルを、診断モデル片と記載する。また、複数の診断モデル片をマージすることによって生成される、複数日の正常なセンサデータの分布を示すモデルを診断モデルと記載する。本実施形態において、診断モデルは、診断対象機器１０１０のセンサデータを診断するために用いられる。
【００７５】
図８は、本発明の実施形態の診断モデル４４３０を示す説明図である。
【００７６】
診断モデル４４３０は、不揮発性メモリ３３００に格納される。診断モデル４４３０は、診断モデルＩＤ４４３１、正常範囲中心４４３３及び正常範囲半径４４３６を含む。
【００７７】
診断モデルＩＤ４４３１は、診断モデルを一意に示す識別子であり、機器側診断モデルテーブル３３６０の診断モデル４４３０に格納される識別子に対応する。正常範囲中心４４３３は、診断モデルＩＤ４４３１が示す診断モデルの中心座標を示す。また、正常範囲半径４４３６は、診断モデルＩＤ４４３１が示す診断モデルの半径を示す。
【００７８】
本実施形態の診断対象機器１０１０によるセンサデータの診断方法は、診断日４４２０より前に収集されていたセンサデータを、学習することによって診断モデルを生成する。そして、生成された診断モデルを、あらかじめ、診断モデル４４３０に格納しておく。そして、診断日４４２０が示す日になった際に、その診断日４４２０に対応する診断モデルを用いて、センサデータを診断する。
【００７９】
本実施形態において、学習する対象となるセンサデータが、診断対象機器１０１０において生成された日を、学習日と記載する。学習日は、診断する日より前の、１日以上の日数を含む。学習日に含まれる日数は、あらかじめ管理者等によって定められる。
【００８０】
さらに、診断モデルは、学習日に含まれる各日における診断モデル片によって生成されるため、学習日における診断対象機器１０１０の状態に基づいて生成される。そして、周囲の環境及び機器の経年劣化などによって診断対象機器１０１０の状態は、日々変化する。このため、学習日には、診断日に近い日が選ばれる必要がある。
【００８１】
図９は、本発明の実施形態のすべての学習日において診断対象機器１０１０が稼動する場合の診断日及び学習日を示す説明図である。
【００８２】
日程１３６００は、診断対象機器１０１０がすべての学習日において稼動する場合の、学習日、診断日、及び、診断遅れ日を示す。また、日程１３６００は、日程１３６００Ａ、日程１３６００Ｂ、及び、日程１３６００Ｃの三つの例を含む。
【００８３】
日程１３６００は、枠ごとに日付が示される。日程１３６００は、４月１日〜４月１９日の各日を示す。
【００８４】
日程１３６００Ａにおいて、学習日は４月１日〜４月７日である。そして診断日は、学習日の最終日である４月７日から、７日後の４月１４日である。ここで、日程１３６００における診断遅れ日は、７日間である。また、学習日に含まれる日数も、７日間である。
【００８５】
本実施形態における診断遅れ日とは、学習日の最終日から、診断日までの日数である。診断遅れ日は、管理者等によってあらかじめ定められた値である。
【００８６】
診断遅れ日の値は、稼動場所１０００の環境、又は、診断対象機器１０１０の種類などに依存する。このため、あらかじめ様々な診断遅れ日が試された結果、異常診断をする精度がもっとも高い最適値が、管理者等によって、診断遅れ日に定められる。
【００８７】
さらに、診断日が１日移動するごとに学習日も１日移動する。日程１３６００Ｂは、日程１３６００Ａの診断日を、１日未来に移動させた場合の、学習日及び診断遅れ日を示す。日程１３６００Ｂにおける診断日は、４月１５日であり、学習日は、４月２日〜４月８日である。日程１３６６０Ｂの学習日は、診断日とともに１日未来に移動され、診断遅れ日は変化しない。
【００８８】
日程１３６００Ｃは、日程１３６００Ｂにおける診断日を、さらに１日未来に移動させた場合の学習日及び診断遅れ日１３６４０を示す。日程１３６００Ｃにおける診断日は、４月１６日であり、学習日は、４月３日〜４月９日である。
【００８９】
図１０は、本発明の実施形態の学習日に診断対象機器１０１０が稼動しない日がある場合の診断日及び学習日を示す説明図である。
【００９０】
日程１３７００は、日程１３７００Ａ及び日程１３７００Ｂの二つの例を含む。
【００９１】
日程１３７００Ａは、すべての学習日において診断対象機器１０１０が稼動する場合の診断日及び学習日を示す。日程１３７００Ａにおける学習日は、４月４日〜４月１０日であり、診断日は４月１７である。
【００９２】
日程１３７００Ｂは、日程１３７００Ａにおける学習日のうちの二日間、診断対象機器１０１０が稼動しない場合の例である。診断対象機器１０１０が稼動しない日には、診断対象機器１０１０においてセンサデータが収集されない。日程１３７００Ｂにおいて、診断対象機器１０１０が稼動しない日（以下、非稼働日と記載）は、４月８日及び４月９日である。
【００９３】
学習に用いられるセンサデータの数が減る場合、生成された診断モデルの精度は下がる。このため、本実施形態において、非稼動日が発生した場合、診断対象機器１０１０の非稼動日の分、過去へ学習日を延ばす。日程１３７００Ｂにおける４月２日及び４月３日は、４月８日及び４月９日の非稼動日の分、過去へ延ばされた学習日である。
【００９４】
しかし、学習日を過去へ延ばす場合、生成された診断モデルには、過去のセンサデータの傾向が強く反映される。このため、診断日も、学習日とあわせて過去へ移される必要がある。
【００９５】
特に、生成された診断モデルは、非稼動日が診断日に近いほど、非稼動日が無かった場合と比べて、より過去のセンサデータの傾向を強く反映する。このため、非稼動日が診断日に近いほど、診断日を多く過去に戻す必要がある。
【００９６】
そこで、本実施形態における、診断日を過去に戻す日数は、学習日と診断日との間の平均日数差に基づいて算出する。学習日と診断日との間の平均日数差の計算式は、例えば、以下の計算式（１）である。
【００９７】
平均日数差＝｛（診断日−学習日開始日）＋（診断日−（学習開始日＋１））＋（診断日−（学習開始日＋２））＋（診断日−（学習開始日＋３））＋・・・＋（診断日−学習終了日）｝／学習日日数                            ・・・（１）
【００９８】
日程１３７００Ａにおける学習日と診断日との間の平均日数差は、前述の計算式（１）によって以下のように算出される。
【００９９】
日程１３７００Ａにおける平均日数差：｛（１７−４）＋（１７−５）＋（１７−６）＋・・・＋（１７−１０）｝／７＝１０日
【０１００】
さらに、日程１３７００Ｂにおいて、学習日が４月２日〜４月７日及び４月１０日であり、診断日が４月１７日である場合の、学習日と診断日との間の平均日数差は、以下のように算出される。
【０１０１】
日程１３７００Ｂにおける平均日数差：｛（１７−２）＋（１７−３）＋（１７−４）＋・・・＋（１７−７）＋（１７−１０）｝／７＝１１．７日
【０１０２】
すなわち、学習日の期間中に非稼動日が無い場合の平均日数差（１０日）より、学習日の期間中に非稼動日がある場合の平均日数差のほうが、約２日長くなる。このため、日程１３７００Ａにおける診断日を２日過去に移動させ、非稼動日が発生した場合の診断日を４月１５日にする。これによって、学習日におけるセンサデータは、あらかじめ決定されていた最適な診断遅れ日と同等の日数が経過した後に診断される。そして、これによって本発明は、診断モデルの精度の低下を防止することができる。
【０１０３】
さらに、本実施形態における診断対象機器１０１０において、診断モデルは毎日更新される必要がある。一方で、データセンタ１１３０へ毎日接続する場合、診断対象機器１０１０の運用費用又は保守費用が上がるため、診断対象機器１０１０は、データセンタ１１３０に毎日接続されるとは限らない。
【０１０４】
そこでデータセンタ１１３０は、診断対象機器１０１０と接続された接続日において診断対象機器１０１０から送信された接続日までのセンサデータに基づいて、接続日以降の診断日における診断モデルを、可能な限り生成する必要がある。そして、生成された数日分の診断モデルを、診断対象機器１０１０に送信する必要がある。
【０１０５】
例えば、データセンタ１１３０は、診断日が接続日＋１日である場合に用いられる診断モデル、診断日が接続日＋２日である場合に用いられる診断モデル、・・・、及び、診断日が接続日＋Ｎ日である場合に用いられる診断モデルを、診断対象機器１０１０と接続時に生成する。
【０１０６】
診断対象機器１０１０は、データセンタ１１３０から送信された診断モデルを、図６の機器側診断モデルテーブル３３６０に格納する。これによって、診断対象機器１０１０は、データセンタ１１３０と毎日接続できなくても、機器側診断モデルテーブル３３６０に格納された診断モデル４４３０が、すべて使用されるまで診断対象機器１０１０のみによって、センサデータを診断できる。
【０１０７】
本発明は、データセンタ１１３０によって生成された診断モデルが、診断対象機器１０１０においてすべて使用される日を、データセンタ１１３０との次回接続日とする。そして、診断対象機器１０１０は、次回接続日において新たな診断モデルを受信することによって、常に診断対象機器１０１０の診断モデルが不足しないようにする。
【０１０８】
例えば、図１０の日程１３７００Ａ及び日程１３７００Ｂにおいて、データセンタ１１３０と診断対象機器１０１０とが４月１０日に接続された場合、学習に使えるセンサデータは、４月１０日までに診断対象機器１０１０において収集されたセンサデータである。
【０１０９】
日程１３７００Ａにおいて、診断対象機器１０１０がデータセンタ１１３０から送信された診断モデルによって最後にセンサデータの診断できる日は、診断遅れ日である７日後の４月１７日である。すなわち、次回接続日は４月１８日である。
【０１１０】
一方、日程１３７００Ｂにおいて、診断対象機器１０１０がデータセンタ１１３０から送信された診断モデルによって最後に診断できる日は、学習日と診断日との間の平均日数差を考慮した４月１５日である。すなわち、次回接続日は４月１６日である。
【０１１１】
なお、次回接続日までに、事故などによって診断対象機器１０１０がデータセンタ１１３０に接続できず、診断モデルが不足した場合、診断モデル欠乏フラグデータ３３７０に"有効"が格納される。そして、診断モデル欠乏フラグデータ３３７０に"有効"が格納される場合、古い診断モデルによってセンサデータが診断される。
【０１１２】
診断モデル欠乏フラグデータ３３７０に"有効"が格納されている場合において、診断対象機器１０１０によって、診断対象機器１０１０が異常であると診断された場合、用いる診断モデルが古いため、誤った診断である可能性がある。このため、後述の処理によって、データセンタ１１３０によって再度診断が行われる。
【０１１３】
図１１は、本発明の実施形態のデータセンタ１１３０によって保持される機器センサ構成テーブル３７１０を示す説明図である。
【０１１４】
機器センサ構成テーブル３７１０は、機器ＩＤ４６１０、テーブル名４６３０、及びセンサ名４６５０を含む。機器ＩＤ４６１０は、診断対象機器１０１０を一意に示す識別子である。
【０１１５】
テーブル名４６３０は、機器ＩＤ４６１０が示す診断対象機器１０１０から送信されたセンサデータが格納されるテーブルを、一意に示す識別子である。センサ名４６５０は、診断対象機器１０１０に備わるセンサ３１００を一意に示す名称が格納される。
【０１１６】
機器センサ構成テーブル３７１０によれば、機器ＩＤ４６１０に基づいて、センサデータが格納されたセンタ側センサテーブル群３７３０を抽出することができる。
【０１１７】
図１２は、本発明の実施形態のデータセンタ１１３０によって保持されるセンタ側センサテーブル群３７３０を示す説明図である。
【０１１８】
センタ側センサテーブル群３７３０は、診断対象機器１０１０から送信されたセンサデータが格納されるテーブルの集合である。センタ側センサテーブル群３７３０は、テーブル名４９２０、取得時刻４９２５、及び、センサデータ４９３０（４９３０−１〜４９３０−Ｎ）を含む。
【０１１９】
テーブル名４９２０は、センタ側センサテーブル群３７３０に含まれるテーブルを一意に示す識別子である。テーブル名４９２０は、図１１に示す機器センサ構成テーブル３７１０のテーブル名４６３０に対応する。
【０１２０】
取得時刻４９２５は、センサ３１００からセンサデータ４９３０が、各々収集された時刻を示す。すなわち、センサデータ４９３０が生成された時刻を示す。図５に示す機器側センサテーブル３３３０の取得時刻４１００に対応する。
【０１２１】
センサデータ４９３０（４９３０−１〜４９３０−Ｎ）は、センサ３１００から収集されたセンサデータの値を示す。センサデータ４９３０は、図５に示す機器側センサテーブル３３３０のセンサデータ４１１０に対応する。
【０１２２】
データセンタ１１３０は、診断対象機器１０１０のセンサデータを抽出する場合、機器センサ構成テーブル３７１０の機器ＩＤ４６１０に対応するテーブル名４６３０を抽出し、抽出されたテーブル名４６３０に対応するテーブル名４９２０のセンサデータ４９３０を抽出する。その際、センサデータ４９３０の取得時刻４９２５に基づいて、センサデータを抽出する。
【０１２３】
図１３は、本発明の実施形態のデータセンタ１１３０によって保持される機器診断構成テーブル３７２０を示す説明図である。
【０１２４】
機器診断構成テーブル３７２０は、機器ＩＤ５４１０、及び診断モデル片テーブル名５４４０を含む。機器ＩＤ５４１０は、診断対象機器１０１０を一意に示す識別子であり、図１１に示す機器センサ構成テーブル３７１０の機器ＩＤ４６１０に対応する。診断モデル片テーブル名５４４０は、診断モデル片が格納されるテーブルを一意に示す識別子である。
【０１２５】
データセンタ１１３０は、機器診断構成テーブル３７２０と機器ＩＤ５４１０とに基づいて、センタ側診断モデル片テーブル群３７４０に含まれるテーブルの識別子を抽出できる。
【０１２６】
図１４は、本発明の実施形態のデータセンタ１１３０によって保持されるセンタ側診断モデル片テーブル群３７４０を示す説明図である。
【０１２７】
センタ側診断モデル片テーブル群３７４０は、診断モデル片が格納されるテーブルの集合である。診断モデル片とは、前述のとおり、診断対象機器１０１０から送信されたセンサデータが学習されることによって生成された１日ごとの診断モデルである。
【０１２８】
センタ側診断モデル片テーブル群３７４０に含まれる各テーブルは、診断モデル片テーブル名５６２０、元データ取得日５６１０、及び、診断モデル片５６４０を含む。診断モデル片テーブル名５６２０は、診断モデル片が格納されるテーブルを一意に示す識別子である。診断モデル片テーブル名５６２０は、図１３に示す機器診断構成テーブル３７２０の診断モデル片テーブル名５４４０に対応する。
【０１２９】
元データ取得日５６１０は、診断モデル片が生成される際に用いられたセンサデータがセンサ３１００から収集された日、すなわち、センサデータが生成された日を示す。元データ取得日５６１０は、センタ側センサテーブル群３７３０の取得時刻４９２５に対応する。
【０１３０】
診断モデル片５６４０は、診断モデル片を一意に示す識別子である。
【０１３１】
図１５は、本発明の実施形態の診断モデル片５６４０を示す説明図である。
【０１３２】
図１５は、１日分のセンサデータから学習された結果である診断モデル片５６４０のデータ構造を示す。
【０１３３】
診断モデル片５６４０は、診断モデル片ＩＤ５６４１、正常範囲中心５６４３、及び、正常範囲半径５６４６を含む。診断モデル片ＩＤ５６４１は、センタ側診断モデル片テーブル群３７４０の診断モデル片５６４０に格納される値に対応する。
【０１３４】
正常範囲中心５６４３は、診断モデル片５６４０の正常範囲の中心座標である。また、正常範囲半径５６４６は、診断モデル片５６４０の正常範囲の半径である。
【０１３５】
データセンタ１１３０は、元データ取得日５６１０を参照することによって、数日分の診断モデル片５６４０を抽出する。そしてデータセンタ１１３０は、抽出された数日分の診断モデル片５６４０をマージすることによって、数日分の正常範囲を含む診断モデルを生成する。
【０１３６】
図１６は、本発明の実施形態のデータセンタ１１３０によって保持される機器稼動日構成テーブル３７５０を示す説明図である。
【０１３７】
機器稼動日構成テーブル３７５０は、機器ＩＤ１１１５０、及び、稼動日テーブル名１１１７０を含む。機器ＩＤ１１１５０は、診断対象機器１０１０を一意に示す識別子であり、機器ＩＤ５４１０、及び、機器ＩＤ４６１０に対応する。
【０１３８】
稼動日テーブル名１１１７０は、診断対象機器１０１０が稼動する日を示す情報が格納されるテーブルを一意に示す識別子である。データセンタ１１３０は、機器ＩＤ１１１５０を参照することによって、診断対象機器１０１０が稼動する日を示す情報が格納されたテーブルの識別子を抽出できる。
【０１３９】
図１７は、本発明の実施形態のデータセンタ１１３０によって保持される稼動日テーブル群３７６０を示す説明図である。
【０１４０】
稼動日テーブル群３７６０は、診断対象機器１０１０が稼動したのか、休みなどで稼動しない日なのかを、１日ごとに示す。
【０１４１】
稼動日テーブル群３７６０に含まれる各テーブルは、稼動日テーブル名１１５００、日付１１７００、及び状態１１６００を含む。稼動日テーブル名１１５００は、診断対象機器１０１０が稼動する日を示す情報が格納されるテーブルを一意に示す識別子である。稼動日テーブル名１１５００は、機器稼動日構成テーブル３７５０の稼動日テーブル名１１１７０に対応する。日付１１７００には、１日単位で日付が格納される。
【０１４２】
状態１１６００は、日付１１７００において、診断対象機器１０１０が稼動しているか否かを示す。本実施形態において、診断対象機器１０１０が稼動する場合、状態１１６００は"稼動日"を示し、診断対象機器１０１０が稼動しない場合、状態１１６００は"非稼動日"を示す。
【０１４３】
稼動日テーブル群３７６０の状態１１６００には、保守員等によって、診断対象機器１０１０の稼動予定に従って、あらかじめ値が格納されてもよい。
【０１４４】
稼動日テーブル群３７６０は、診断対象機器１０１０ごとにテーブルが分かれている。データセンタ１１３０は、日付１１７００を参照することによって、各診断対象機器１０１０の状態１１６００を抽出することができる。
【０１４５】
図１８は、本発明の実施形態の全体の処理を示すフローチャートである。
【０１４６】
まず、診断対象機器１０１０が稼動し始める（Ｓ６０１０）。具体的には、診断対象機器１０１０がトラック又はショベルカーなどの移動可能な機器１０２０である場合、作業員がエンジンスイッチを入れることを意味する。また、発電機などの据え置き型の機器１０４０である場合、作業員が電源のスイッチを入れることを意味する。
【０１４７】
Ｓ６０１０の後、診断対象機器１０１０は、現在日が前回の診断モデルの更新日から１日以上経過しているか否かを判定する。具体的には、図３に示す前回更新日データ３３７５を参照し、診断対象機器１０１０における現在日が、参照された前回更新日データ３３７５よりも１日以上経過しているか否かを判定する（Ｓ６０１５）。なお、診断対象機器１０１０は、診断対象機器１０１０が運転中に、現在日を取得する機能を備える。
【０１４８】
前回更新日データ３３７５から１日以上経過している場合、現在日は、診断モデルを更新する日であるため、診断対象機器１０１０は、Ｓ６０２０に移行する。前回更新日データ３３７５から１日も経過していない場合、診断モデルを更新する必要がないため、診断対象機器１０１０は、Ｓ６０２５に移行する。
【０１４９】
診断対象機器１０１０は、Ｓ６０１５によって、診断対象機器１０１０における診断モデルを一日ごとに更新する。
【０１５０】
Ｓ６０２０において、診断対象機器１０１０は、後述するサブルーチンＳＵＢ０によって、診断モデルを更新する。
【０１５１】
図１９は、本発明の実施形態のサブルーチンＳＵＢ０の処理を示すフローチャートである。
【０１５２】
Ｓ６０１５の後、診断モデル更新プログラム３４６０は、機器側診断モデルテーブル３３６０を参照することによって、診断日４４２０が現在日の日付である診断モデル４４３０を抽出する（Ｓ７１００）。
【０１５３】
Ｓ７１００の後、診断モデル更新プログラム３４６０は、Ｓ７１００の結果、診断日４４２０が現在日の日付である診断モデル４４３０が抽出できたか否かを判定する（Ｓ７２００）。
【０１５４】
診断日４４２０が現在日の日付である診断モデル４４３０が抽出できた場合、診断モデル更新プログラム３４６０は、Ｓ７３００に移行する。また、診断日４４２０が現在日の日付である診断モデル４４３０が抽出できない場合、診断モデル更新プログラム３４６０は、Ｓ７４００に移行する。
【０１５５】
Ｓ７３００において、診断モデル更新プログラム３４６０は、Ｓ７１００において抽出された診断モデル４４３０を、不揮発性メモリ３３００の診断モデル３４７０にロードする。ロードされることによって、診断対象機器１０１０は、最新の診断モデル３４７０を用いてセンサデータを診断できる。
【０１５６】
Ｓ７４００において、診断モデル更新プログラム３４６０は、診断モデル欠乏フラグデータ３３７０に、診断モデルが欠乏していることを示す"有効"の値を格納する。診断モデル欠乏フラグデータ３３７０に、"有効"の値を格納することによって、診断対象機器１０１０は、後述の処理において、データセンタ１１３０に診断モデルを生成させるか、又は、センサデータを診断させることができる。
【０１５７】
Ｓ７３００又はＳ７４００の後、診断モデル更新プログラム３４６０は、前回更新日データ３３７５を、現在日の日付によって更新する（Ｓ７５００）。前回更新日データ３３７５を、現在日の日付によって更新することによって、診断対象機器１０１０は、Ｓ６０１５において、診断モデルを更新するべきか否かを判定することができる。
【０１５８】
Ｓ７５００の後、診断モデル更新プログラム３４６０は、図１９に示す処理を終了する。
【０１５９】
Ｓ６０１５又はＳ６０２０の後、診断対象機器１０１０は、次回接続日データ３３５０を参照することによって、現在日がデータセンタ１１３０との次回接続日であるか否かを判定する（Ｓ６０２５）。
【０１６０】
現在日がデータセンタ１１３０との次回接続日である場合、又は、現在日がデータセンタ１１３０との次回接続日を過ぎている場合、データセンタ１１３０と接続するため、診断対象機器１０１０は、Ｓ６０３０に移行する。現在日がデータセンタ１１３０との次回接続日よりも前の日である場合、データセンタ１１３０と接続する必要はないため、診断対象機器１０１０は、Ｓ６０３５に移行する。
【０１６１】
Ｓ６０３０において、診断対象機器１０１０は、後述するサブルーチンＳＵＢ１によって、データセンタ１１３０と接続する。また、Ｓ６０３０において診断対象機器１０１０は、データセンタ１１３０へセンサデータを送信し、診断モデルをデータセンタ１１３０から受信する。
【０１６２】
図２０は、本発明の実施形態のサブルーチンＳＵＢ１の処理を示すフローチャートである。
【０１６３】
図２０に示すＳ８０２０、Ｓ８０８０及びＳ８０９０の処理は、センサデータ送信プログラム３４４０によって実行される。
【０１６４】
診断対象機器１０１０は、データセンタ１１３０と接続し、データの送受信を開始する（Ｓ８０１０）。
【０１６５】
具体的には、Ｓ８０１０において、診断対象機器１０１０がトラック又はショベルカーなどの機器１０２０である場合、作業員等は、図１に示す通信地点１１００まで機器１０２０を移動させる。そして、機器１０２０とデータセンタ１１３０とは、通信装置１１２０を介してデータの送受信を開始する。
【０１６６】
また、Ｓ８０１０において、診断対象機器１０１０が発電機などの据え置き型の機器１０２０である場合、作業員等が、通信地点１１００まで機器１０２０を移動させるのは困難である。このため、図１に示す保守員１０３０等は、機器１０２０のセンサデータ等をストレージに複写し、センサデータ等が複写されたストレージを通信地点１１００の場所に運び、そして、通信地点１１００においてデータセンタ１１３０とのデータの送受信を開始する。
【０１６７】
センサデータ送信プログラム３４４０は、通信装置１１２０を介して、データセンタ１１３０にセンサデータ等を送信する。送信されるセンサデータ等には、少なくとも、データセンタ１１３０に接続された診断対象機器１０１０の識別子と、センサデータと、センサデータが生成された時刻（すなわち、取得時刻４１００）と、診断モデル欠乏フラグデータ３３７０と、前回接続日データ３３８０とが含まれる（Ｓ８０２０）。
【０１６８】
センサデータ送信プログラム３４４０は、Ｓ８０２０において、前回接続日データ３３８０を参照することによって、データセンタ１１３０に前回接続された日を抽出する。そして、取得時刻４１００を参照することによって、機器側センサテーブル３３３０に格納されるセンサデータ４１１０のうち、データセンタ１１３０に前回接続された日から現在日までの診断対象機器１０１０のセンサデータ４１１０を抽出する。
【０１６９】
具体的には、センサデータ送信プログラム３４４０は、Ｓ８０２０において、前回接続日データ３３８０から抽出されたデータセンタ１１３０に前回接続された日を、不揮発性メモリ３３００内に読み込む。そして、そのデータセンタ１１３０に前回接続された日から現在日までの取得時刻４１００とセンサデータ４１１０とを機器側センサテーブル３３３０から抽出し、抽出された取得時刻４１００とセンサデータ４１１０とをＲＡＭ３４００にロードする。さらに、ロードされた取得時刻とセンサデータとをデータセンタ１１３０に送信する。
【０１７０】
また、センサデータ送信プログラム３４４０は、Ｓ８０２０において、診断モデル欠乏フラグデータ３３７０に格納された"有効"又は"無効"を示す値を、データセンタ１１３０に送信する。また、診断対象機器１０１０は、あらかじめ自らを一意に示す識別子を保持する。このため、センサデータ送信プログラム３４４０は、自らが保持される診断対象機器１０１０の識別子（ＩＤ）を、データセンタ１１３０に送信する。
【０１７１】
Ｓ８０２０において、データセンタ１１３０は、受信されたセンサデータ等によって、センタ側センサテーブル群３７３０を更新する。センサデータ等を新たな診断対象機器１０１０から送信された場合、データセンタ１１３０は、機器センサ構成テーブル３７１０も更新する。
【０１７２】
なお、図１７に示す稼動日テーブル群３７６０は、Ｓ８０２０において受信されたセンサデータと、センサデータの取得時刻とによって、更新されてもよい。
【０１７３】
すなわち、センサデータの取得時刻が存在しない日は非稼動日であるため、センサデータの取得時刻が存在しない日に対応する日付１１７００を抽出し、抽出された日付１１７００の状態１１６００に、"非稼動日"を格納してもよい。また、センサデータの取得時刻が存在する日は稼動日であるため、センサデータの取得時刻が存在する日に対応する日付１１７００を抽出し、抽出された日付１１７００の状態１１６００に"稼動日"を格納してもよい。
【０１７４】
Ｓ８０２０の後、データセンタ１１３０は、診断対象機器１０１０の次回接続日を算出する（Ｓ８０３０）。
【０１７５】
Ｓ８０３０において、データセンタ１１３０は、後述するサブルーチンＳＵＢ１１によって、診断対象機器１０１０の次回の接続日を算出する。
【０１７６】
図２１は、本発明の実施形態のサブルーチンＳＵＢ１１の処理を示すフローチャートである。
【０１７７】
データセンタ１１３０に保持される次回接続日算出プログラム３６３０は、センサデータを学習するための学習日の間に、非稼動日がない場合の学習日と診断日との間の平均日数差を、前述の計算式（１）によって算出する（Ｓ８１１０）。なお、データセンタ１１３０は、あらかじめ定められた学習日を保持する。
【０１７８】
また、データセンタ１１３０は、現在日を取得する機能を備え、データセンタ１１３０における現在日と診断対象機器１０１０における現在日とは、同期されている。
【０１７９】
具体的には、次回接続日算出プログラム３６３０は、現在日（すなわち、データセンタ１１３０と診断対象機器１０１０とが接続された最新の日）から過去へ学習日分さかのぼった期間において非稼動日がない場合において、診断対象機器１０１０から送信されたセンサデータによって診断が可能な、最も未来の診断日を算出する。そして、次回接続日算出プログラム３６３０は、前述の計算式（１）と算出された最も未来の診断日とによって、平均日数差を算出する。
【０１８０】
なお、診断対象機器１０１０がデータセンタ１１３０に送信できるセンサデータが、診断対象機器１０１０とデータセンタ１１３０との最新の接続日の前日までのセンサデータである場合、データセンタ１１３０は、データセンタ１１３０によって受信されたセンサデータのうち、最も新しいセンサデータの取得時刻から過去へ学習日分さかのぼった期間におけるセンサノードによって、最も未来の診断日を算出する。
【０１８１】
Ｓ８１１０の後、次回接続日算出プログラム３６３０は、非稼動日を考慮した平均日数差を、前述の計算式（１）によって算出する（Ｓ８１２０）。ここで、次回接続日算出プログラム３６３０は、図１６に示す機器稼動日構成テーブル３７５０と稼動日テーブル群３７６０とに基づいて、非稼動日を抽出する。まず、Ｓ８０２０において受信された診断対象機器１０１０の識別子から、機器ＩＤ１１１５０と稼動日テーブル名１１１７０とを抽出し、抽出された稼動日テーブル名１１１７０に対応する稼動日テーブル名１１５００を稼動日テーブル群３７６０から抽出する。そして、抽出された稼動日テーブル名１１５００を参照することによって、学習日中の非稼動日を抽出する。
【０１８２】
Ｓ８１２０の後、次回接続日算出プログラム３６３０は、変数ＤをＲＡＭ３６００に保持する。そして次回接続日算出プログラム３６３０は、Ｓ８１１０において算出された平均日数差から、Ｓ８１２０において算出された平均日数差を減算した日数を、変数Ｄに格納する（Ｓ８１３０）。
【０１８３】
次回接続日算出プログラム３６３０は、以下の計算式によって、データセンタ１１３０と診断対象機器１０１０との次回接続日を算出する。
【０１８４】
次回接続日＝現在日＋診断遅れ日−変数Ｄ          ・・・（２）
【０１８５】
なお、診断対象機器１０１０がデータセンタ１１３０に送信できるセンサデータが、診断対象機器１０１０とデータセンタ１１３０との最新の接続日の前日までのセンサデータである場合、データセンタ１１３０は、前述の計算式（２）の現在日を、最も新しいセンサデータの取得時刻に変更することによって、次回接続日を算出する。
【０１８６】
次回接続日算出プログラム３６３０は、前述の計算式（２）によって算出された次回接続日をサブルーチンＳＵＢ１１の返り値とする（Ｓ８１４０）。そして、次回接続日算出プログラム３６３０は、サブルーチンＳＵＢ１１を終了する。
【０１８７】
Ｓ８０３０の後、データセンタ１１３０は、サブルーチンＳＵＢ１０によって、次回接続日までの複数日分の診断モデルを生成する（Ｓ８０４０）。
【０１８８】
図２２は、本発明の実施形態のサブルーチンＳＵＢ１０の処理を示すフローチャートである。
【０１８９】
データセンタ１１３０は、まず、Ｓ８０２０において受信されたセンサデータに基づいて、診断モデル片を生成するため、サブルーチンＳＵＢ１００を実行する（Ｓ９０１０）。
【０１９０】
図２３は、本発明の実施形態のサブルーチンＳＵＢ１００の処理を示すフローチャートである。
【０１９１】
診断モデル片検索・更新プログラム３６４０は、変数ＸをＲＡＭ３６００に保持する。そして、Ｓ８０２０において受信された前回接続日データ３３８０が示す値をＸに格納する（Ｓ９１００）。
【０１９２】
Ｓ９１００の後、診断モデル片検索・更新プログラム３６４０は、Ｓ８０２０において受信されたセンサデータのうち、センサデータの取得時刻がＸであるセンサデータを抽出する。そして、抽出されたセンサデータを診断モデル作成プログラム３６２０によって学習することによって、１日分の診断モデルである診断モデル片を生成する（Ｓ９１３０）。
【０１９３】
Ｓ９１３０の後、診断モデル片検索・更新プログラム３６４０は、Ｓ９１３０において生成された診断モデル片を、センタ側診断モデル片テーブル群３７４０に格納する。センタ側診断モデル片テーブル群３７４０の元データ取得日５６１０には変数Ｘの値を格納する（Ｓ９１４０）。
【０１９４】
Ｓ９１４０の後、診断モデル片検索・更新プログラム３６４０は、変数Ｘの値に１を加算することによって、変数Ｘが示す日付を、１日分進める（Ｓ９１４５）。
【０１９５】
さらに、診断モデル片検索・更新プログラム３６４０は、変数Ｘが現在日より前の日付を示すか否かを判定する（Ｓ９１５０）。診断モデル片検索・更新プログラム３６４０は、変数Ｘが現在日より前の日付を示す場合、Ｓ９１３０に戻る。そうでない場合、サブルーチンＳＵＢ１００を終了する。なお、終了の際にデータセンタ１１３０は、ＲＡＭ３６００に保持されていた変数Ｘを解放する。
【０１９６】
Ｓ９０１０の後、データセンタ１１３０は、新たな変数ＸをＲＡＭ３６００に保持し、前回接続日データが示す日付を変数Ｘに格納する（Ｓ９０１５）。
【０１９７】
Ｓ９０１５の後、データセンタ１１３０は、変数ＺをＲＡＭ３６００に保持する。そして、データセンタ１１３０は、"'前回接続日'−'学習日数'−'学習日中に存在する非稼動日数'"の日付を算出し、算出された日付を、変数Ｚに格納する（Ｓ９０２０）。Ｓ９０２０によって、データセンタ１１３０は、学習日の初日を算出することができる。
【０１９８】
データセンタ１１３０は、Ｓ９０２０において、'学習日中に存在する非稼動日数'を、機器稼動日構成テーブル３７５０と稼動日テーブル群３７６０とに基づいて抽出する。すなわち、機器稼動日構成テーブル３７５０から、機器ＩＤ１１１５０と稼動日テーブル名１１１７０とを抽出し、抽出された１１１７０によって、稼動日テーブル群３７６０から学習日における非稼動日を抽出する。
【０１９９】
Ｓ９０２０の後、データセンタ１１３０は、変数Ｘと変数Ｚとを引数にサブルーチンＳＵＢ１０５を実行することによって、稼動日の診断モデル片をマージする（Ｓ９０３０）。なお、サブルーチンＳＵＢ１０５において、変数Ｘは診断日を示す、変数Ｚは学習日の初日を示す。
【０２００】
図２４は、本発明の実施形態のサブルーチンＳＵＢ１０５の処理を示す説明図である。
【０２０１】
診断モデル片マージプログラムは、学習日数を数えるため、カウント変数ｃｎｔをＲＡＭ３６００上に保持し、カウント変数ｃｎｔに、初期値である０を格納する（Ｓ９５１０）。
【０２０２】
Ｓ９５１０の後、診断モデル片マージプログラムは、マージされた診断モデル片、すなわち、診断モデルを格納するためのメモリを、ＲＡＭ３６００上に保持する（Ｓ９５３０）。
【０２０３】
図２５は、本発明の実施形態の診断モデルのＲＡＭ３６００に保持されるテーブル１４０００を示す説明図である。
【０２０４】
テーブル１４０００は、各診断モデル片のデータ構造が格納される。テーブル１４０００は、診断日１４１００、正常範囲中心１４２００及び正常範囲半径１４３００を含む。診断日１４１００には、各診断モデル片が用いられる診断日が格納される。
【０２０５】
正常範囲中心１４２００及び正常範囲半径１４３００は、診断モデル４４３０における正常範囲中心４４３３及び正常範囲半径４４３６に対応する。
【０２０６】
Ｓ９５３０において、ＲＡＭ３６００に保持されるテーブル１４０００には、値が格納されていない。
【０２０７】
Ｓ９５３０の後、診断モデル片マージプログラムは、引数として与えられた変数Ｚとカウント変数ｃｎｔとを加算し、加算された値が稼動日を示すか否かを、稼動日テーブル群３７６０を参照することによって判定する（Ｓ９５４０）。
【０２０８】
変数Ｚとカウント変数ｃｎｔとの加算された値が稼動日を示す場合、診断モデル片を抽出できるため、診断モデル片マージプログラムは、Ｓ９５５０に移行する。また、変数Ｚとカウント変数ｃｎｔとが加算された値が非稼動日である場合、診断モデル片を抽出できないため、診断モデル片マージプログラムは、Ｓ９５８０に移行する。
【０２０９】
Ｓ９５４０の後、診断モデル片マージプログラムは、変数Ｚとカウント変数ｃｎｔとの加算された値が示す日が、元データ取得日５６１０である診断モデル片５６４０を、センタ側診断モデル片テーブル群３７４０から抽出し、抽出された診断モデル片５６４０を、ＲＡＭ３６００にロードする（Ｓ９５５０）。
【０２１０】
Ｓ９５５０の後、診断モデル片マージプログラムは、ＲＡＭ３６００にロードされた診断モデル片５６４０を、テーブル１４０００に追加する。引数として与えられた変数Ｘの示す日付を、診断日１４１００に格納する。そして、抽出された診断モデル片５６４０の正常範囲中心５６４３を正常範囲中心１４２００、正常範囲半径５６４６を正常範囲半径１４３００に追加する（Ｓ９５６０）。
【０２１１】
Ｓ９５６０において、診断モデル片マージプログラムは、変数Ｘの値が同じであれば、同じ診断日１４１００の行に正常範囲中心及び正常範囲半径を追加する。すなわち、同じ診断日１４１００の行に追加することによって、診断モデル片をマージする。
【０２１２】
Ｓ９５６０の後、診断モデル片マージプログラムは、カウント変数ｃｎｔを＋１する（Ｓ９５７０）。カウント変数ｃｎｔ＋１によって、診断モデルを生成するための学習日における診断モデル片を、すべて抽出することができる。すなわち、すべての学習日について、診断モデル片５６４０を抽出した後に、サブルーチンＳＵＢ１０５を終了させることができる。
【０２１３】
Ｓ９５３０又はＳ９５７０の後、診断モデル片マージプログラムは、カウント変数ｃｎｔが、あらかじめ定められた学習日数以下であるか否かを判定する（Ｓ９５８０）。カウント変数ｃｎｔが、あらかじめ定められた学習日数以下である場合、診断モデル片５６４０をさらに抽出するため、Ｓ８５４０に戻る。
【０２１４】
カウント変数ｃｎｔが、あらかじめ定められた学習日数より大きい場合、診断モデル片マージプログラムは、診断モデル片５６４０をさらに抽出する必要がないため、サブルーチンＳＵＢ１０５の処理を終了する。
【０２１５】
Ｓ９０３０の後、データセンタ１１３０は、変数Ｘに１を加算し、変数Ｘが示す日付を１日分未来に移動させる（Ｓ９０４０）。これによって、前回、データセンタ１１３０と診断対象機器１０１０とが接続されてから、次回接続日までの診断モデルを生成させることができる。
【０２１６】
Ｓ９０４０の後、データセンタ１１３０は、変数Ｘが示す日付が、Ｓ８０３０において算出された次回接続日よりも過去の日付を示すか否かを判定する（Ｓ９０５０）。変数Ｘが、次回接続日よりも過去の日付を示す場合、すべての診断モデルを生成し終わっていないため、Ｓ９０３０に戻る。また、変数Ｘが、次回接続日と同日か未来の日付を示す場合、サブルーチンＳＵＢ１０を終了する。
【０２１７】
Ｓ８０４０の後、データセンタ１１３０は、Ｓ８０４０において生成されたテーブル１４１１０の診断モデルと、Ｓ８０３０において算出された次回接続日とを、診断対象機器１０１０に送信する（Ｓ８０７０）。なお、診断モデルには、診断モデルが用いられる診断日が付加される。
【０２１８】
Ｓ８０７０の後、診断対象機器１０１０は、診断モデルと次回接続日とを、データセンタ１１３０から受信する（Ｓ８０８０）。
【０２１９】
Ｓ８０８０の後、診断対象機器１０１０は、Ｓ８０８０において受信された診断モデルと次回接続日とを、機器側診断モデルテーブル３３６０に追加する（Ｓ８０９０）。具体的には、診断対象機器１０１０は、機器側診断モデルテーブル３３６０の診断日４４２０にテーブル１４０００の診断日１４１００を、診断モデル４４３０の正常範囲中心４４３３にテーブル１４０００の正常範囲中心１４２００、診断モデル４４３０の正常範囲半径４４３６にテーブル１４０００の正常範囲半径１４３００を格納する。
【０２２０】
また、診断対象機器１０１０は、受信された次回接続日によって、次回接続日データ３３５０を更新する。
【０２２１】
Ｓ８０９０の後、診断対象機器１０１０はサブルーチンＳＵＢ１の処理を終了する。すなわち、診断対象機器１０１０は、Ｓ６０３０の処理を終了する。
【０２２２】
Ｓ６０２５、Ｓ６０３０、又は、後述するＳ６１４０の後、作業員等は、稼動場所１０００において診断対象機器１０１０を運転する（Ｓ６０３５）。Ｓ６０３５において保守員１０３０等は、診断対象機器１０１０が保持する通常の機能を診断対象機器１０１０に実行させる。例えば、診断対象機器１０１０がローダである場合、診断対象機器１０１０に土砂を運搬させる。Ｓ６０３５において、診断対象機器１０１０のセンサ３１００は、診断対象機器１０１０の各部位の状況を測定し、測定された結果によってセンサデータを生成する。
【０２２３】
Ｓ６０３５の後、診断対象機器１０１０は、Ｓ６０３５においてセンサ３１００によって測定された結果であるセンサデータを、センサコントローラ３１２０によって収集する。そして、収集されたセンサデータを、不揮発性メモリ３３００の取得時刻４１００とともに、センサデータ４１１０に格納する（Ｓ６０４０）。
【０２２４】
なお、センサデータを収集する時間の間隔には、診断の方式、診断対象機器１０１０の種類、又は、メモリのサイズ等から、最適な所定の間隔が予め定められる。すなわち、Ｓ６０３５及びＳ６０４０は、所定の間隔において、繰り返されてよい。また、Ｓ６０３５とＳ６０４０とが同時に実行されてもよい。
【０２２５】
Ｓ６０４０の後、診断対象機器１０１０は、Ｓ６０４０において収集されたセンサデータ４１１０に基づいて、診断対象機器１０１０が異常であるか否か、また、診断対象機器１０１０に故障の予兆があるか否かを診断する（Ｓ６０５０）。
【０２２６】
具体的には、診断対象機器１０１０は、Ｓ６０４０において、機器側診断モデルテーブル３３６０の診断日４４２０が現在日を示す診断モデル４４３０を抽出する。さらに抽出された診断モデル４４３０の正常範囲中心４４３３及び正常範囲半径４４３６が示す正常範囲の円内に、Ｓ６０４０において収集されたセンサデータ４１１０の値が含まれる場合、診断対象機器１０１０が正常であると診断する。また、正常範囲の円内に、Ｓ６０４０において収集されたセンサデータ４１１０の値が含まれない場合、診断対象機器１０１０が異常であるか、又は、診断対象機器１０１０に故障の予兆があると診断する。
【０２２７】
Ｓ６０５０の後、診断対象機器１０１０は、Ｓ６０５０において異常又は故障の予兆があると診断されたか否かを判定する（Ｓ６０６０）。異常又は故障の予兆が診断された場合、異常が発生したことを保守員１０３０に通知するため、診断対象機器１０１０は、Ｓ６０７０に移行する。また、異常又は故障の予兆が診断されない場合、センサ３１００による測定を継続するため、診断対象機器１０１０はＳ６０３５に戻る。
【０２２８】
Ｓ６０６０の後、診断対象機器１０１０は、異常等が発生したことを、診断対象機器１０１０の作業員又は保守員１０３０等に機器側提示装置３１８０を介して通知する。そして、診断対象機器１０１０は、診断対象機器１０１０の保持する通常の機能の運転を停止する（Ｓ６０７０）。
【０２２９】
Ｓ６０７０の後、診断対象機器１０１０は、データセンタ１１３０に接続され、センサデータ４１１０と診断モデル欠乏フラグデータ３３７０とをデータセンタ１１３０に送信する。または、保守員１０３０は、ストレージを介してデータセンタ１１３０に診断対象機器１０１０のセンサデータ４１１０と、診断モデル欠乏フラグデータ３３７０と、機器１０１０において異常が診断されたことを示す通知とを送信する。診断対象機器１０１０は、前回接続日から現在日までのセンサデータ４１１０を、データセンタ１１３０に送信する（Ｓ６０８０）。また、Ｓ６０８０において、データセンタ１１３０は、送信されたセンサデータ４１１０を、センタ側センサテーブル群３７３０に格納する。
【０２３０】
Ｓ６０８０の後、データセンタ１１３０は、Ｓ６０８０において送信された診断モデル欠乏フラグデータ３３７０を参照し、診断モデル欠乏フラグデータ３３７０が示す値が"有効"であるか否かを判定する（Ｓ６１００）。診断モデル欠乏フラグデータ３３７０が示す値が"有効"ではない場合、診断対象機器１０１０は、不足のない診断モデルによって診断したため、診断対象機器１０１０による診断は正確である。このためデータセンタ１１３０は、Ｓ６１６０に移行する。
【０２３１】
診断モデル欠乏フラグデータ３３７０が示す値が"有効"である場合、診断対象機器１０１０によって保持される診断モデルが不足しているため、診断対象機器１０１０による診断が不正確である可能性がある。このため、データセンタ１１３０は、診断対象機器１０１０を再度診断するためＳ６１２０に移行する。
【０２３２】
Ｓ６１００の後、データセンタ１１３０は、診断対象機器１０１０から送信されたセンサデータを再度診断するため、前述のサブルーチンＳＵＢ１０によって、診断モデルを生成する。そして、生成された診断モデルと、Ｓ６０８０において送信されたセンサデータとによって、診断対象機器１０１０が異常であるか否か、又は、診断対象機器１０１０に故障の予兆があるか否かを診断する（Ｓ６１２０）。
【０２３３】
Ｓ６１２０においてデータセンタ１１３０は、前述のＳ６０５０における診断対象機器１０１０と同様に、センタ側センサテーブル群３７３０及びテーブル１４０００を用いて、異常であるか否か等を再度診断する。さらに、データセンタ１１３０は、診断結果を診断対象機器１０１０に送信する。
【０２３４】
なお、Ｓ６１２０においてデータセンタ１１３０は、現在日を診断日（すなわち変数Ｘ）とする診断モデルのみを生成してもよい。また、生成された診断モデルを診断対象機器１０１０に送信し、診断対象機器１０１０に診断させてもよい。さらに、診断結果をデータセンタ１１３０へ送信させてもよい。
【０２３５】
Ｓ６１２０の後、データセンタ１１３０は、Ｓ６１２０において診断対象機器１０１０に異常又は故障の予兆があると再度診断されたか否かを判定する（Ｓ６１４０）。診断対象機器１０１０に異常又は故障の予兆があると再度診断された場合、診断対象機器１０１０による診断は正確であるため、Ｓ６１６０に移行する。
【０２３６】
診断対象機器１０１０に異常又は故障の予兆があると診断されなかった場合、データセンタ１１３０は、診断対象機器１０１０に保持される診断モデルが古いために、診断対象機器１０１０が誤って診断したと判定する。そして、データセンタ１１３０は、診断が誤診であることを診断対象機器１０１０に通知し、診断対象機器１０１０は、Ｓ６０３５に戻る。
【０２３７】
Ｓ６１００又はＳ６１４０の後、データセンタ１１３０から保守会社１１４０に所属する保守員に、診断対象機器１０１０に異常又は故障の予兆があることを示す通知を送信する（Ｓ６１６０）。保守会社１１４０に備わる保守会社サーバ３９２０は、データセンタ１１３０から通知を受信し、保守会社側提示装置３９４０によって保守員に通知を確認させる。
【０２３８】
本実施形態によれば、僻地において稼働する診断対象機器１０１０が、一定期間の後に、データセンタ１１３０と接続され、センサデータ及び診断モデルの送受信を行う。このため、診断対象機器１０１０が常時データセンタ１１３０と接続されていなくても、診断対象機器１０１０は自らの異常又は故障の予兆を診断することができる。
【０２３９】
また、毎日センサデータと接続する必要がないため、診断対象機器１０１０を保守するための費用を低減できる。
【０２４０】
また、診断対象機器１０１０によって異常等が検知された後、データセンタ１１３０によって最新の診断モデルを再度生成され、診断されることによって、より精度の高い異常等の診断が可能である。
【０２４１】
さらに、本実施形態のデータセンタ１１３０は、診断モデルの生成において、センサデータのうち、診断対象機器１０１０の稼動日におけるセンサデータを用い、診断対象機器１０１０の非稼働日を学習日に含めない。このため、より精度の高い診断モデルを生成することができる。
【０２４２】
以上、本発明を添付の図面を参照して詳細に説明したが、本発明はこのような具体的構成に限定されるものではなく、添付した請求の範囲の趣旨内における様々な変更及び同等の構成を含むものである。
【産業上の利用可能性】
【０２４３】
本発明は、保守が必要な機器、又は、保守の対象となる機器の、異常又は故障の予兆を診断するシステムにおいて適用可能である。
【図１】
2012042649.tif 000003
【図２】
2012042649.tif 000004
【図３】
2012042649.tif 000005
【図４】
2012042649.tif 000006
【図５】
2012042649.tif 000007
【図６】
2012042649.tif 000008
【図７Ａ】
2012042649.tif 000009
【図７Ｂ】
2012042649.tif 000010
【図７Ｃ】
2012042649.tif 000011
【図７Ｄ】
2012042649.tif 000012
【図７Ｅ】
2012042649.tif 000013
【図８】
2012042649.tif 000014
【図９】
2012042649.tif 000015
【図１０】
2012042649.tif 000016
【図１１】
2012042649.tif 000017
【図１２】
2012042649.tif 000018
【図１３】
2012042649.tif 000019
【図１４】
2012042649.tif 000020
【図１５】
2012042649.tif 000021
【図１６】
2012042649.tif 000022
【図１７】
2012042649.tif 000023
【図１８】
2012042649.tif 000024
【図１９】
2012042649.tif 000025
【図２０】
2012042649.tif 000026
【図２１】
2012042649.tif 000027
【図２２】
2012042649.tif 000028
【図２３】
2012042649.tif 000029
【図２４】
2012042649.tif 000030
【図２５】
2012042649.tif 000031
【国際調査報告】
2012042649.tif 000032
2012042649.tif 000033