(57)【特許請求の範囲】
【請求項１】
機械のセンサデータから異常診断を行う診断部と、
該診断部の診断結果を機械の異常履歴と照らし合わせて誤報・失報を検知する誤報・失報検知部と、
誤報・失報数が多い個体と少ない個体で仕様が異なるセンサを分析者に提示するセンサ差異検知部を備えたことを特徴とする異常診断分析装置。
【請求項２】
請求項１において、
診断結果を機械の異常履歴と照らし合わせて誤報・失報を、機械の製造ロットなどのグループで集計する誤報・失報差異判定部を備えることを特徴とする異常診断分析装置。
【請求項３】
請求項2において、
前記センサ差異検知部は、誤報およびあるいは失報の件数が多いロットと少ないロットのセンサの情報を検索し、ロット間でのセンサ仕様を確認することを特徴とする異常診断分析装置。
【請求項４】
請求項１において、
機械に取り付けられたセンサで計測したデータを、計測時刻とともに記憶したセンサデータデータベースを備え、
前記診断部は前記センサデータベースから診断を行うことを特徴とする異常診断分析装置。
【請求項５】
請求項１において、
診断に用いるセンサと、診断の処理内容を記憶した診断モデルデータベースを備えたことを特徴とする異常診断分析装置。
【請求項６】
請求項１において、
前記機械が有するセンサを含む部品の情報を記憶している部品情報データベースを備えたことを特徴とする異常診断分析装置。
【請求項７】
請求項１において、
前記機械の保守履歴、クレーム情報に基づき異常の期間を記憶した異常期間履歴データベースを備えたことを特徴とする異常診断分析装置。
【請求項８】
請求項１において、
前記診断部で異常と診断された期間を記憶する診断結果データベースを備えたことを特徴とする異常診断分析装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は機械の異常診断の診断精度向上を支援する技術に関する。
【背景技術】
【０００２】
ガスエンジンやエレベータ、採掘・建築機械といった機械を常に動作させるためには、
機械の保守作業が必須である。保守作業で有効な技術の１つに機械の各部に取り付けられたセンサからセンサデータを収集しセンサデータとして、収集したセンサデータから機械の異常診断を行い、異常があった場合はその原因分析を行う技術がある。
【０００３】
該技術を実施するため、機械のセンサデータやデータ出現頻度を示す散布図やヒストグラムで表現し、その出現頻度分布の外れ値から機械の異常を調べる方法がある。
【０００４】
例えば、図１７は機械の持つエンジン温度と冷却水圧力のバランスを散布図で表現した図面である。同図の円１４１１０は正常稼働していた時期の温度と圧力の散布図をクラスタという円の集合で表現している。散布図からこのようなクラスタを作る技術はクラスタリングと呼ばれ、機械学習やデータマイニングの分野で公知の技術である。クラスタを作ることを機械学習の分野では「学習」すると呼ぶ。そのクラスタからの距離１４１２０を異常の度合い、すなわち異常度として算出し、異常度の閾値と比較して大なら機械が異常と診断する。
【０００５】
多数の機械を対象に上記のような診断処理を適用する際に問題になるのが、機械の個体ごとの診断結果の精度のバラつきである。機械は一般に原価低減活動などによりセンサや部品の仕様がロットごとに変化していく。例えばセンサの型番が初期ロットと最新ロットで変化し、周波数特性やダイナミックレンジが異なる場合がある。そのため初期ロットの個体は診断の精度が高くても最新のロットの個体では誤報・失報の件数が増え、精度が下がってしまうことがある。異常診断の精度を向上するには誤報・失報を起こす原因となるセンサを特定して診断対象から外したり、クラスタ数を変更したりして診断の処理を修正する必要がある。
【０００６】
部品の変化によって起きる異常診断の精度低下を防ぐ発明としては、例えば（特許文献１）がある。該文献は異常診断の一環として異常の原因を判定する発明である。診断対象の機器のロットと最新のロットの間で部品仕様の変化がある場合、部品に何かしらの問題があったために変えたとみなし、変化した部品が異常の原因である確率を増やすことで原因の判定精度を向上する。
【先行技術文献】
【特許文献】
【０００７】
【特許文献１】特開平5-101246号公報
【発明の概要】
【発明が解決しようとする課題】
【０００８】
公知技術では異常の原因を部品の変化情報を用いて推定する。しかしながら異常原因ではなく、誤報・失報の原因を見つけることは困難であった。
【０００９】
本発明は誤報・失報の原因を見つけ、機械の異常診断の診断精度向上を支援する技術を提供することにある。
【課題を解決するための手段】
【００１０】
上記課題を解決するため、本発明の異常診断分析装置は、機械のセンサデータから異常診断を行う診断部と、該診断部の診断結果を機械の異常履歴と照らし合わせて誤報・失報を検知する誤報・失報検知部と、誤報・失報数が多い個体と少ない個体で仕様が異なるセンサを分析者に提示するセンサ差異検知部を備えたことを特徴とするものである。
【００１１】
更に、本発明の異常診断分析装置は、診断結果を機械の異常履歴と照らし合わせて誤報・失報を、機械の製造ロットなどのグループで集計する誤報・失報差異判定部を備えることを特徴とするものである。
【００１２】
更に、本発明の異常診断分析装置は、前記センサ差異検知部は、誤報およびあるいは失報の件数が多いロットと少ないロットのセンサの情報を検索し、ロット間でのセンサ仕様を確認することを特徴とするものである。
【００１３】
更に、本発明の異常診断分析装置は、前記機械に取り付けられたセンサで計測したデータを、計測時刻とともに記憶したセンサデータデータベースを備え、前記診断部は前記センサデータデータベースから診断を行うことを特徴とするものである。
【００１４】
更に、本発明の異常診断分析装置は、診断に用いるセンサと、診断の処理内容を記憶した診断モデルデータベースを備えたことを特徴とするものである。
【００１５】
更に、本発明の異常診断分析装置は、前記機器が有するセンサを含む部品の情報を記憶している部品情報データベースを備えたことを特徴とするものである。
【００１６】
更に、本発明の異常診断分析装置は、前記機械の保守履歴、クレーム情報に基づき異常の期間を記憶した異常期間履歴データベースを備えたことを特徴とするものである。
【００１７】
更に、本発明の異常診断分析装置は、前記診断部で異常と診断された期間を記憶する診断結果データベースを備えたことを特徴とするものである。
【発明の効果】
【００１８】
異常診断の処理を作成する分析者は、本発明により誤報・失報の原因となるセンサの仕様の差異を見ることができる。分析者は仕様の差異があるセンサを診断対象から外したり、クラスタ数を変更したりして診断精度を向上する作業を行うことができる。
【図面の簡単な説明】
【００１９】
【図１】実施例のシステム構成図である
【図２】実施例のフローチャートである
【図３】実施例のフローチャートである
【図４】実施例のフローチャートである
【図５】実施例のフローチャートである
【図６】実施例のフローチャートである
【図７】実施例のフローチャートである
【図８】実施例のシステムで用いるデータ構造を説明する図面である
【図９】実施例のシステムで用いるデータ構造を説明する図面である
【図１０】実施例のシステムで用いるデータ構造を説明する図面である
【図１１】実施例のシステムで用いるデータ構造を説明する図面である
【図１２】実施例のシステムで用いるデータ構造を説明する図面である
【図１３】実施例のシステムで用いるデータ構造を説明する図面である
【図１４】実施例のシステムで用いるデータ構造を説明する図面である
【図１５】実施例のシステムで用いるデータ構造を説明する図面である
【図１６】実施例のシステムで用いるデータ構造を説明する図面である
【図１７】異常診断の原理を説明する図面である
【図１８】実施例で表示する画面例である
【図１９】実施例で表示する画面例である
【発明を実施するための形態】
【００２０】
以下、本発明の一実施例を図面で説明する。
【実施例】
【００２１】
図１に本発明を示した全体構成を示す。
【００２２】
センサデータデータベース１００は鉄道や建設機械といった機器の各部に取り付けられたセンサで計測したエンジン圧力や、冷却水温度、回転数といったデータを、計測時刻とともに記憶したデータベースである。図８に内部のテーブル構造を示す。計測時刻８００と紐づけてエンジン圧力８０５やエンジン回転数８１０のようなセンサ値が格納されており、計測時刻８００から各センサ値を参照できるようになっている。以降、既にデータは計測されてセンサデータデータベース100に記憶されているものとする。
【００２３】
診断モデルデータベース105は診断に用いるセンサや前処理といった診断の処理内容を記憶したデータベースである。図９にそのテーブル構造を示す。診断モデルを特定するための診断モデルＩＤ９００と、各診断モデルが検知する異常名９０５に紐づける形で診断処理に使うセンサ９１０とそのセンサ部品ＩＤ９１５と、各センサ値に適用する前処理９２０、クラスタ数925、各診断モデルを適用する機器のID９３０を格納している。該テーブルから各機器に適用している診断モデルの処理内容を取得する事が出来る。これらの処理内容は診断処理を設計する時点で分析者が決定し、本発明の処理開始時にはすでに処理内容は診断モデルデータベース１０５に記憶されているものとする。
【００２４】
部品情報データベース１１０は機器を構成するセンサを含む部品の情報を記憶しているデータベースである。図10に内部のテーブル構造を示す。ロット番号1000からそのロットの機器個体がもつ部品の部品名１００５と部品型番１０１０とダイナミックレンジ１０１５と取り付け位置１０２０と図面データ１０２５をもつ。ダイナミックレンジ１０１５は部品がセンサの場合、計測できるデータ値の範囲を示している。取り付け位置１０２０は本部品が取り付けられた位置を示す番号であり、図面データ１０２５中にその番号を示すデータが存在する。図面データ１０２５は本機器の製造図面を示すCADや画像データを記憶する。図面データ１０２５を読み込み提示することで、分析者は取り付け位置１０２０を画像やCADデータの形式で確認できるものとする。
【００２５】
機器情報データベース120は診断する機器とロットの紐づけを管理するデータベースである。図11に内部のテーブル構造を示す。テーブル構造は診断対象の機器ＩＤ１１００とロット番号１１０５を紐づけて管理する。
【００２６】
異常期間履歴データベース１１５は診断する機械の保守履歴や顧客からのクレームなどを元に作成した真に異常だった期間を記憶したデータベースである。異常期間履歴データベース１１５の異常期間を検知できないと失報、逆に異常期間履歴データベース１１５に記憶していないのに検知された異常は誤報とみなす。
【００２７】
診断結果データベース１２５は診断部１４５で異常と診断された期間を記憶するデータベースである。
【００２８】
図１２に異常期間履歴データベース１１５のテーブル構造を説明する。テーブル構造は真に異常が起きた機器のＩＤ1200、その異常が起き始めた開始時刻1210、その異常が終了した時刻1215、そして、異常の種類1220を紐づけて管理する。
【００２９】
図１3に診断結果データベース１２５のテーブル構造を説明する。
【００３０】
テーブル構造は診断部１４５で異常と診断された機器のＩＤ1230、診断によって算出された異常の開始時刻1235、終了時刻1240、診断で検知された異常名1245を紐づけて管理する。
【００３１】
入力部１６０はキーボードやマウス、タッチパネルなどで構成され、本発明で画面上のボタンを押したり、診断モデルデータベース105にデータ入力したりするのに用いる。
【００３２】
表示部１５５は液晶ディスプレイなどで構成され図１６、図１７の画面を表示する装置である。
【００３３】
一時記憶部150はＲＡＭなどで構成された揮発性のメモリであり、一時的に変数や図14のようなデータテーブルを記憶する。
【００３４】
診断部１４５は診断モデルデータベース１０５とセンサデータベース１００から診断を行い、異常と判定した期間を算出する。算出方法は例えば前述の〔背景技術〕の項目で説明したクラスタリング技術で算出した異常度が閾値を越えている期間を算出すれば良い。
【００３５】
誤報・失報検知部１４０は診断部１４５が正しく異常な期間を算出で来ているか確認し、誤報・失報があれば発生件数を算出する。具体的には異常期間履歴データベース１１５の真の異常期間と、診断部１４５が算出した異常期間が被っていれば正しく異常を検知できたとみなし、そうでないなら誤報あるいは失報とみなす。処理の流れは後述する。
【００３６】
誤報・失報差異判定部１３５は、誤報ならびにあるいは失報の発生件数をロットごとに集計し、誤報・失報が多いロットと少ないロットの番号の組を出力する。そのために誤報・失報の発生件数に差がある２つのロットの組を探索する。２つのロットで発生件数に差がある場合、ロットの変化に伴うセンサの仕様の変化が誤報・失報の原因である可能性が高い。差があると判定した２つロット番号を、誤報の多いロットと少ないロットの番号として、センサ差異検知部１３０に出力する。
センサ差異検知部１３０は誤報・失報の多いロットと少ないロットで診断に使ったセンサの仕様に差異があるか検知する。もし差異があれば誤報・失報の原因がセンサ仕様であると考えられる。そのために診断モデルデータベース１０５から診断に使ったセンサＩＤを読み出す。そのセンサＩＤで部品情報データベースからロットごとにセンサの仕様を検索し、ロット間で仕様に差異が無いか確認する。もし差異があれば表示部１５５で提示する。
次に本発明で行う処理をフローチャートで説明する。図２をメインフロー、図１から呼び出すサブルーチンを図３〜７で説明する。
【００３７】
図２に本発明における処理のメインフローを示す。
【００３８】
ステップ202(以下、S202と称す)において、診断で検知する異常の種類名の一覧を図１８のように表示部１５５で表示し、分析者に選択させる。表示する異常名は、診断モデルデータベース１０５の異常名(図９の異常名９０５)を読み込んだ情報を表示する。分析者は図１８から検知したい異常を、入力部を用いて選択する。
【００３９】
S205で診断対象の全機器に対してS202で選択した異常を検知する診断を行い、その結果から機器ごとに誤報・失報発生件数をカウントする。その処理を実行するサブルーチンであるSUB01を図3を用いて説明する。
【００４０】
以下、図３において
S300で、診断モデルデータベース105から分析者が選択した異常名を検索キー(図9の９０５)にして異常診断に使うセンサ（図９のセンサ９１０）やクラスタ数（図9のクラスタ数９２５）といった診断に必要な情報を読み込む。
【００４１】
S305で診断する機器のIDを取得するため機器情報データベースから機器ID(図１１の機器ID１１００) の1行目を取得する。
【００４２】
S310で診断する機器IDとセンサを検索キーにしてセンサデータベース１００を検索し、診断に使うセンサデータを読み出し、異常診断を行う。異常診断は前述の（背景技術）と、図１７で説明したクラスタリング技術などを用いる。図１７に沿って異常度が閾値を超えていた期間を異常とみなして出力する。出力結果である異常期間の開始時刻、終了時刻は図１３に示す診断結果データベース１２５の開始時刻１２３５、終了時刻１２４０に格納する。
【００４３】
S３１５で診断結果の誤報件数Nfを算出するサブルーチンSUB01-01を呼ぶ。以下、図4にSUB01-01を説明する。
【００４４】
S４００で算出する誤報件数を格納する変数Nfを一時記憶部150に確保する。Nfは０に初期化しておく。
【００４５】
S405で診断結果の異常期間である診断結果データベース１２５から図１3に示す開始時刻１２３５、終了時刻１２４０をS305で取得した機器IDとS202で指定した異常名を検索キーにして1行読み出す。読み出した開始時刻１２３５をST、終了時刻１２４０をENとする。
【００４６】
以下、読み出した異常期間が誤報かどうかをS410〜S４２０で判定する。  判定方法は、実際に機械が異常であった期間である図１２の異常履歴データベースの開始時刻１２１０と終了時刻１２１５と、図１３に示す診断結果の診断結果データベースの異常期間を示す開始時刻１２３５と終了時刻１２４０が被っている時間帯があるかどうかで判定する。
【００４７】
S４１０で異常期間履歴データベース１１５から図１２の異常履歴データベースの開始時刻１２１０と終了時刻１２１５を1行読み出す。読み出した開始時刻１２１０をST_H、終了時刻１２１５をEN_Hとする。
S415で診断結果の異常期間ST〜EN、異常期間履歴ST_H〜EN_Hで被っている時間帯がないか判定する。STがEN_Hより後の時刻か、あるいはENがST_Hより前の時刻ならば時間帯は被っていないと判定し、S４２０に移る。被っている場合は誤報でないので
次行の診断結果の異常期間を判定するためS４３０に移る。
【００４８】
S420ではすべての異常期間履歴をS410で読み出したか判定し、まだ異常期間履歴があるならS410に戻る。すべて読み出していたならS４２５に移る。
【００４９】
S４２５はS405で読んだ異常診断の異常期間が異常期間履歴と被らない、つまり誤報であると判定されたので誤報数Nfを+1して次のS430に移る。
【００５０】
S430はすべての異常期間をS405で読み込んで誤報か否かを判定したか確認し、
すべて読み込んでいたら誤報数Nfを返却し、図３のＳ３１５に戻る。そうでないならS405に戻る。以上でSUB01-01が完了し、図3のＳ315が終了するとS320に移る。
【００５１】
S３２０では失報件数Nｎを計算する。異常期間履歴のうち診断結果である異常期間に被っていない、つまり本当は異常なのに検知できていない件数がNnである。
NnはサブルーチンSUB01-02で算出する。SUB01-02は既に説明した誤報件数を算出するSUB01-01とほぼ同一である。SUB01-01では異常期間のループS405〜S430の内側に異常期間履歴のループS410〜S420が回っている。SUB01-02では逆に異常期間履歴のループの内側に異常期間のループが回っている。それ以外のロジックはまったく同じであるため詳細は省略する。SUB01-02から失報件数Nnが返却されると、S320からS３３０に移行する。
【００５２】
S330ではS315とS320でカウントしたNfとNnを一時記憶部にテーブルとして記憶する。その構造を図14のテーブル１３３０に示す。テーブル１３３０は誤報・失報を出した機器ID１３００と診断モデルID１３１０、異常名１３１５、誤報件数１３２０、失報件数１３２５からなる。このテーブルに診断モデルID、異常名、NfとNnを記録する。
【００５３】
S340では全機器の診断および誤報・失報のカウントが完了したか確認し、未完了ならS305に戻り、完了したならSUB01を終了する。終了後は図2のS205に戻ったあとS208に移る。
【００５４】
S208〜S220は機器ごとの誤報・失報数が機器のロットごとに差があるか判定する処理である。差異がある２つのロットが見つかればそのロットの片方は誤報・失報が少なく、もう片方が誤報・失報が多いロットである。誤報・失報の件数の差がロット単位で現れれば、その誤報・失報の原因はロットの違いすなわちセンサ部品の仕様の差異である可能性が高い。
【００５５】
S208は誤報数に差が見られる２つのロットを探索するサブルーチンSUB02を呼び出す。図６のS600〜S615でSUB02を説明する。
【００５６】
S600では機器情報データベース１２０からロット番号１１００と機器ID１１０５を検索し、1行目のロット番号（ここではAとする）の機器ID一覧を読み込む。それらの機器IDを検索キーに一時記憶部１５０のテーブル１３３０を検索してロット番号Aの全機器の誤報件数１３２０を検索する。検索した誤報件数の平均値Ave(Nf_A)、分散Var(Nf_A)を計算する。
【００５７】
S605ではS600と同様に機器情報データベース１２０の2行目のロット番号(ここではBとする)の機器ID一覧を読み込み、テーブル１３３０からロット番号Bの誤報件数を検索する。検索した誤報件数の平均値Ave(Nf_B)、分散Var(Nf_B)を計算する。
S610ではロットAの誤報件数の平均値Ave(Nf_A)、分散Var(Nf_A)とロットBの誤報件数Ave(Nf_B)、分散Var(Nf_B)から誤報件数に差があるか統計的に判定する。
データのリスト同士で値に差があるかどうかを統計的に判定する方法としてはよく知られているt検定などがあるが、本実施例では簡便のためAve(Nf_A)とAve(Nf_B)の差の２乗がVar(Nf_A)とVar(Nf_B)の和より大きかったら差があるとみなす。
【００５８】
差がある場合はそのロット番号Aとロット番号BとAve(Nf_A)とAve(Nf_B)を返却し本サブルーチンSUB02を終了する。そうでなければS615に移る。
【００５９】
S615ではロット番号AとBの組み合わせを変化させて別の組み合わせがないか判定す。
たとえばロット番号A＝１かつB＝２ならBを変化させてA＝１、B=３にする。まだA、Bに当てはめていないロット番号の組み合わせがあるならその番号をA、Bに代入してS600に戻る。そうでないなら何も返却せずに本サブルーチンSUB02を終了する。SUB02終了後は図2のS210に移行する。
【００６０】
S210ではSUB02からロット番号AとBとAve(Nf_A)とAve(Nf_B)が返却されているか確認し、何も返却されていないならロットごとの誤報数に違いはないので、失報の差の判定S２１５、S２２０に移る。そうでないなら返却値を一時記憶部150に、図１５のテーブル１３３５を作成して記憶する。その後S225に移る。
【００６１】
S215は失報の多いロットと少ないロットをS２１０の誤報数と同様の手順で探索する。
S２１５のサブルーチンSUB03は図７に示してあるが、SUB02の誤報件数が失報件数になっているだけの違いなので説明は省略する。  
S220はS210と同様の手順で失報数の多いロットAと少ないロットBを一時記憶部150の図16に示すテーブル1370に格納する。
【００６２】
S225ではロット番号AとBの診断に使ったセンサのセンサ部品IDを診断モデルデータベース１０５から取得する。S202で指定した診断モデルの診断モデルIDを検索キーにしてセンサ部品IDは図９のセンサ部品ID９１５から取得できる。
【００６３】
S230でセンサ部品IDからロット番号AとBのセンサ仕様を検索する。
具体的にはS225で取得したセンサ部品IDとロット番号A、Bを検索キーにしてAとB
のセンサ仕様を部品情報データベース１１０から検索する。
【００６４】
S２３５ではS２３０の検索結果からロットAとBの間にセンサ仕様の差異がないか判定する。具体的には部品情報データベース１１０の内部構造を示す図10の部品型番１０１０、
ダイナミックレンジ１０１５、取り付け位置１０２０がロットAとBで差異がないか判定する。違いがあればS2４０に移る。そうでなければ本処理を終了する。
【００６５】
S240ではロットAとBのセンサ部品の仕様の違いを誤報・失報の原因として分析者に提示する。図19は提示する画面の例であり、センサ型番が違いを誤報の原因として提示している。
以上で本発明で行う処理は完了する。
【符号の説明】
【００６６】
100…センサデータデータベース
105…診断モデルデータベース
110…部品情報データベース
115…異常期間履歴データベース
120…機器情報データベース
125…診断結果データベース
【図１】
0006430263.tif 000002
【図２】
0006430263.tif 000003
【図３】
0006430263.tif 000004
【図４】
0006430263.tif 000005
【図５】
0006430263.tif 000006
【図６】
0006430263.tif 000007
【図７】
0006430263.tif 000008
【図８】
0006430263.tif 000009
【図９】
0006430263.tif 000010
【図１０】
0006430263.tif 000011
【図１１】
0006430263.tif 000012
【図１２】
0006430263.tif 000013
【図１３】
0006430263.tif 000014
【図１４】
0006430263.tif 000015
【図１５】
0006430263.tif 000016
【図１６】
0006430263.tif 000017
【図１７】
0006430263.tif 000018
【図１８】
0006430263.tif 000019
【図１９】
0006430263.tif 000020