【実施例】
【0018】
図2は本発明のコンピュータシステムを用いた全体構成を示している。
図3・
図4はデータベースと一時記憶部上のテーブル構造を、
図5はセンサデータの記憶メモリの容量が足りなくなる日の予測方法について説明する図面である。
図6・
図7・
図8・
図9は処理フローを、
図10はデータセンタのユーザに機械のセンサデータ記憶メモリの交換を指示する画面を示している。
図11はセンサデータ記憶メモリで記憶するセンサデータのテーブル構造を示している。
【0019】
図2の本発明の実施例を示した全体構成において、機械2000は保守の対象とする機械であり、例えば建設機械ならトラックやローダ、産業機械なら昇降機などが該当する。
【0020】
機械側設備2100は機械に搭載された、あるいは機械が稼働する現場近傍に設置された設備であり、機械とのデータ通信は常に高速に行う事が出来る。機械側設備2100は以下に説明する構成を少なくとも含む。
【0021】
センサデータ記憶メモリ2110は異常と診断された機械2000のセンサデータを記憶するメモリである。内部のテーブル構造は
図11のようにセンサの計測時刻2111とエンジン冷却水温度2113、エンジン負荷率2115のように各センサ値が組の構造になっている。本メモリはコンパクトフラッシュやUSBメモリなど、メモリが一杯になっても容易に交換できる種類のメモリが望ましい。
【0022】
データ送信部2120は2110が記憶するセンサデータや、2140が記憶する異常診断結果である異常種類の情報をデータセンタ2300に送信する。
【0023】
欠乏予測部2130は、センサデータ記憶メモリ2110の残量が無くなる日を予測する。
【0024】
図5の実施例のグラフを用いて予測の方法を説明する。横軸が時刻であり、縦軸がセンサデータ記憶メモリ2110に溜まっていくデータセンタにまだ送信していない未送信センサデータの量である。予測すべきはセンサデータの記憶メモリ容量上限5030を未送信センサデータ量が越えてしまう予測欠乏日5040である。予測を行うための想定として
図5ではデータセンタとの通信が途絶している期間5010と通信が接続できているデータセンタ接続期間5020が1日のうちに交互に起きるとする。通信途絶期間5010では刻々と計測されるセンサデータをセンサデータ記憶メモリ2110に記憶するがデータセンタにはそのセンサデータを送信できない。送信していないセンサデータを2110から削除するわけにいかないので、センサデータ記憶メモリ2110で記憶するセンサデータ量は増加する。その後のデータセンタ接続期間5020ではセンサデータをデータセンタに送信し、送信したセンサデータはセンサデータ記憶メモリ2110から削除する。よって通信のデータセンタ接続期間5020の間は記憶メモリのセンサデータ量は減少する。しかし通信が接続できている5020の時間が短い、あるいは通信速度が低いと1日当たりの記憶メモリのセンサデータの増加量5050は増加してしまう。この1日当たりの増加量Lは、センサデータ記憶メモリ2110の残量を1日毎に計測し、昨日から残量がどれだけ減少したかを計算することで求められる。センサデータ記憶メモリ容量の上限5030を増加量Lで割り算することで、メモリが欠乏するまでの日数が計算できるので予測欠乏日5040が求められる。ただし1日毎の増加量Lの値は日ごとに多少変動すると考えられるので、Lの代わりにLの平均値Laを用いてもよい。平均値Laを算出するには例えば1週間ごとの平均値や移動平均を用いるとよい。
【0025】
一時記憶部2140はRAMメモリなどで構成され、
図4の異常種類2141、1日当たりのセンサデータ送信量合計2143、欠乏日予測部2130が予測したメモリ欠乏日の情報2145、センサデータ記憶メモリ2110のメモリ残量2146、1日当たりのメモリ増加量2147を一時的に記憶する。
【0026】
異常診断部2150は刻々と機械2000各部のセンサで計測されたセンサデータから、データマイニング技術を用いて異常診断を行う。データマイニング技術によりセンサデータの値が異常範囲に入っているか判断することで機械の異常診断を行う。異常範囲は異常の種類によって範囲が異なり、どの異常範囲に入ったかで異常の種類を判別することができる。また、いずれかの異常と診断されたセンサデータはセンサデータ記憶メモリ2110に記憶される。
【0027】
通信回線2200は機械側設備からデータセンタ側にデータを送信するための通信設備であり、インターネット回線や電話回線などの設備で構成されている。本発明は2200の通信速度が低下することによる課題を解決するものである。
【0028】
データセンタ2300は原因分析に必要なセンサデータ回収前に機械側のセンサデータ記憶メモリの残量が足りなくなるか判断し、足りない場合はメモリの交換をユーザに指示する。
【0029】
データセンタ2300は以下で説明する部位2310〜2370で構成される。 センサデータベース2310は機械が送信した異常なセンサデータを記憶するデータベースである。センサデータベース2310の内部のテーブル構造は
図12のように機械ID2311によって機械ごとに計測時刻2312と、エンジン冷却水温度2313や、エンジン負荷率2315のような各センサの値を記憶している。機械IDを検索キーにして原因診断を行うのに必要なセンサデータが取得できる。
【0030】
原因分析用データベース2320は異常と判明したセンサデータから異常の原因を分析するのに必要なデータ量が記憶されたデータベースである。
【0031】
図3に原因分析用データベース2320のテーブル構造を示す。
【0032】
異常診断の結果である異常種類2321を検索キーに、原因分析に必要なセンサ種類2315と原因分析に必要なデータ量2327を検索できるように記憶されている。
【0033】
データ受信部2330は機械側のデータ送信部2120から機械で発生した異常の種類や異常なセンサデータ、欠乏予測部2130で予測したメモリの欠乏予測日を受信する。
【0034】
センサデータ回収完了日予測部2340はデータ受信部2330から異常の種類や異常なセンサデータ量を受け取り、原因分析に必要な量のセンサデータ回収にかかる時間を予測し、センサデータ回収完了日を算出する。
【0035】
メモリ交換判断部2350は、欠乏日予測2130が予測したメモリ欠乏日までにセンサデータ回収完了日予測部2340が予測したセンサデータの回収完了日が来るか判断する。メモリ欠乏日までに回収完了日がこない場合、表示部2360に機械のメモリを交換する指示を表示する。
【0036】
表示部2360は液晶ディスプレイなどで構成された提示装置であり、機械のメモリを交換する指示や原因分析2370の分析結果をデータセンタのユーザに提示する。
【0037】
原因分析2370はデータセンタ2300のユーザ指示により、センサデータベース2310からセンサデータを読み出して機械の異常の原因分析を行う。原因分析はデータマイニング技術による2分木などの手法を用いて、機械部品や操作と異常なセンサの種類・値の関連から異常の原因となる機械2000の部品や操作を判定する。高精度な判定を行うためには一定以上のデータ量が必要のため、原因分析用データベース2320で定義されている必要なセンサデータ量がセンサデータベースに無い場合、原因分析は行わない。
【0038】
センタ側一時記憶部2380はセンタ側に設置されたRAMメモリなどで構成された記憶装置である。
図13のように異常種類2381、1日分のセンサデータ送信量合計2383とメモリ欠乏日2385を記憶する。
【0039】
次に、
図6〜
図9のフローチャートを用いて
図2の本発明のシステムで行われる異常診断と異常の原因分析のためにセンサデータ記憶メモリ交換を通知するための処理手続のフローチャートを説明する。
【0040】
図6のステップ6010(以下、S6010と称す)は機械2100各部のセンサで計測したセンサデータから異常診断を行う。データマイニング技術によりセンサデータの値が異常範囲に入っているか判断することで機械の異常診断を行う。異常範囲は異常の種類によって範囲が異なり、センサデータの値がどの異常範囲に入ったかで異常の種類を判別することができる。異常の有無と種類が判別できたらS6020に進む。
【0041】
S6020ではS6010で異常ありと診断されたらS6025に、そうでないならS6010に戻って異常診断を続ける。
【0042】
S6025ではS6010の診断結果である異常の種類を一時記憶部2140の
図4における異常種類2141に記憶する。また異常と診断されたセンサデータをセンサデータ記憶メモリ2110に
図11のテーブル構造のように計測時刻とセットで記憶する。
【0043】
S6030ではデータ送信部2120がデータセンタ2300に通信でデータを送信できるか確認する。データ送信可能ならS6040に進み、そうでないならS6010に戻って異常診断を続ける。
【0044】
S6040はデータセンタ2300にセンサデータと1日当たりのセンサデータ送信量合計を送るサブルーチンSUB01である。
図7でサブルーチンSUB01を説明する。
【0045】
図7のS7020ではS6010で異常と診断されたセンサデータをデータセンタ2300に送る。
【0046】
S7022では送信したセンサデータ量を計測する。
【0047】
S7024でその送信量の1日当たりの合計値を更新する。送信量の合計値を求めるには、一時記憶部2140に記憶されている1日当たりのセンサデータ合計量合計2143(
図4)の値にS7022で計測した送信済みのセンサデータ量を合計する。
【0048】
例えば、
図4の1日当たりのセンサデータ合計量合計2143の値が1000kByteで、S7022で計測したセンサデータ量が10kByteなら合計値は1010kByteである。この合計値を
図4の1日当たりのセンサデータ合計量合計2143に上書きする。この1日当たりのセンサデータ合計量合計2143は1日毎に0にリセットするので、1日の終わりには本日分のセンサデータ送信量の合計値となる。
【0049】
S7025でデータセンタ2300はデータ受信部2330でセンサデータを受信し、センサデータベース2310に記憶する、
S7030ではセンサデータ記憶メモリ2110から送信済みのセンサデータを削除する。
【0050】
S7060では、本日分のセンサデータ送信量合計をデータセンタに通知するため、前回の通知から1日経過したか判別する。1日経過したかの判別は機械2000の内部時計を用いて行う。1日経過していたらS7070に移る。そうでなければ本サブルーチンSUB01を終了し
図6のS6050に移る。
【0051】
S7070では本日分のセンサデータ送信量合計をデータセンタにデータ送信部2120を用いて通知する。本日分のセンサデータ送信量合計はS7024で上書きした
図4の2143から読みだす。
【0052】
S7080では本日分のセンサデータ送信量合計をデータセンタに送信する。送信した送信量合計の値はセンタ側一時記憶部2380の
図13の1日分のセンサデータ送信量合計2383に記憶する。送信後、一時記憶部2140の1日当たりのセンサデータ合計量合計2143の値を0にリセットする。0にリセットすることで次の日の1日分のセンサデータ送信量合計を計算できるようになる。S7080終了後
図6のS6050に移る。
【0053】
S6050はセンサデータ記憶メモリ2110の欠乏日を1日毎に予測するサブルーチンSUB02である。
図8を用いて説明する。
【0054】
図8のS8010では欠乏日を1日毎に予測するため、前回の欠乏日を予測してから1日経過しているか確認する。本確認は機械2000の内部時計を用いて行う。
もし1日経過していなければ本サブルーチンを終了してS6060に進む。1日経過していたらS8020に進む。
【0055】
S8020では現在のセンサデータ記憶メモリ2110の残量を計測する。
【0056】
S8030で、その最新のメモリ残量と1日前に測定した前回のメモリ残量の差分を計算し、メモリ増加量Lを算出する。1日前に測定したメモリ残量を一時記憶部2140のメモリ残量2146(
図4)から読み出し、最新の残量との差分であるメモリ増加量Lを計算する。計算後、メモリ増加量2147を計算結果のLで上書きし、メモリ残量2146も最新のメモリ残量で上書きする。
【0057】
S8050では最新のメモリ残量をメモリ増加量Lで割り算し、その結果をメモリの欠乏日までの日数と予測する。
【0058】
S8060で、メモリ欠乏日までの日数に現在日を足し算することでメモリ欠乏日を求め、一時記憶部2140のメモリ欠乏日2145(
図4)にその日の情報を記憶する。
S8060終了後は本サブルーチンSUB02を完了しS6060に進む。
【0059】
S6060はS6025で一時記憶部2140に記憶した異常種類とS6050で予測したメモリ欠乏日をデータセンタに送信する。異常種類は
図4の2141から、メモリ欠乏日は2145から読み出して送信する。データ受信部2330で受信した異常種類とメモリ欠乏日はセンタ側一時記憶部2380の
図13の1日分のセンサデータ送信量合計2383とメモリ欠乏日2385に記憶する。
【0060】
S6070は、送信された異常種類からセンサデータ回収完了日を予測するサブルーチンSUB03である。
【0061】
図9を用いてサブルーチンSUB03の処理を説明する。
【0062】
S9010ではセンタ側一時記憶部2380の1日分のセンサデータ送信量合計2383(
図13)から異常種類を読み出す。異常種類を検索キーに原因分析用データベース2320の異常種類2321(
図3)を検索する。検索結果として原因分析に必要なセンサ種類2325とセンサデータ量2327を取得する。
【0063】
S9020では、原因分析に必要な各センサのデータ量2327を回収するのにかかる日数を計算する。取得したセンサデータ量2327の全センサ分の合計値を「1日分のデータ送信量合計」で割り算することでデータ回収に必要な日数を求める。「1日分のデータ送信量合計」はS6040でセンタ側一時記憶部2380に記憶している。センタ側一時記憶部2380中の
図13の1日分のセンサデータ送信量合計2383から「1日分のデータ送信量合計」を読み出して、各センサのデータ量2327の回収日数Dを計算する。
【0064】
S9030では現在日に回収日数Dを足し算することでセンサデータ回収完了日を算出する。算出後本サブルーチンSUB03を終了し、センサデータ回収完了日をS6080に返す。
【0065】
S6080では受け取ったセンサデータ回収日とメモリ欠乏日の日付を比較し、センサデータの回収日までにメモリが欠乏してしまうか判断する。メモリ欠乏日はセンタ側一時記憶部2380に記憶されている
図13のメモリ欠乏日2385から読み出せばよい。
【0066】
日付の比較の結果、センサデータの回収完了日の前にメモリ欠乏日が来てしまう場合はS6090に、そうでないなら最初のS6010に戻って異常診断を続ける。
【0067】
S6090は原因分析に必要なセンサデータ回収前にセンサデータ記憶メモリの残量が欠乏してしまうので、センサデータ記憶メモリ2110を交換する指示を表示部2360でデータセンタ2300のユーザに表示する。S6090の後、本フローチャートを完了する。
【0068】
次に、
図14を用いてデータセンタでユーザが原因分析を行う処理フローチャートを説明する。
図15、
図16に
図14のフローチャート中で表示する画面を説明する。本処理フローはユーザが任意のタイミングで原因分析を要求する時に実行する処理フローである。原因分析に必要なセンサデータ量が回収できていれば原因分析を実行し、そうでないときはエラー画面を表示する。
【0069】
図14のS13010は機械2000で発生している異常の種類を検索キーに原因分析用データベースを検索し、原因分析に必要な量のセンサ種類2325とデータ量2327を取得する。検索キーとなる異常の種類はセンタ側一時記憶部2380の
図13における異常種類2381から読み出す。
【0070】
S13020はセンサデータベース2310を検索して、2310中の原因分析に必要なセンサのセンサデータ量Mを取得する。
【0071】
S13030はS13010で検索した原因分析に必要なセンサデータ量2327の値(Wとする)と、S13020で取得したセンサデータ量Mを比較する。
原因分析に必要なセンサデータが既にある、つまりM≧WならS13040に進み、そうでないならS13050のエラー画面表示に進む。
【0072】
S13050は原因分析を行うにはセンサデータの量が足りないので、その旨を示すメッセージを表示部2360に
図16に示すように表示する。その後本フローチャートを終了する。
【0073】
S13040は原因分析に必要なセンサデータ量があるので、原因分析を行う。センサデータベース2310からセンサデータを読み出して機械の異常の原因分析を行う。原因分析はデータマイニング技術による2分木などの手法を用いて、機械部品や操作と異常なセンサの種類・値の関連から異常の原因となる機械2000の部品や操作を判定する。
【0074】
S13060は原因分析の結果として
図15のように機械に起きている異常名とその原因の候補となる部品名を操作表示部2360に表示する。本結果を表示後、本フローチャートを終了する。