以下に、本開示の実施の形態における情報処理装置及び情報処理方法を図面に基づいて詳細に説明する。
実施の形態1.
図1は、実施の形態1における情報処理装置1000を含む情報処理システム100の構成例を示す図である。情報処理システム100は、図1に示すように、情報処理装置1000と、機械装置1008と、センサ1010と、モータ1009と、装置制御部1099とを備える。モータ1009は、機械装置1008に駆動力を付与することで機械装置1008を駆動する。機械装置1008がモータ1009によって駆動される際、センサ1010は機械装置1008の物理量を計測する。機械装置1008が計測する物理量の例は、位置、速度、加速度、動作指令、電流、電圧、トルク、力、圧力、音声、又は光量である。なお、本実施の形態では、モータ速度及びモータトルクを一例として説明する。モータ速度はモータ1009の回転速度であり、モータトルクはモータ1009が発生するトルクである。
センサ1010は、物理量の計測値を含むセンサ信号を情報処理装置1000及び装置制御部1099に出力する。装置制御部1099は、センサ信号に基づいて、モータ1009を制御するための制御信号を決定する。モータ1009は、装置制御部1099から出力される制御信号によって制御される。
情報処理装置1000は、センサデータ取得部1001と、内部変数保持部1002と、内部変数計算部1003と、特徴量計算部1004と、初期化処理部1005と、状態診断部1006とを備える。
センサデータ取得部1001は、センサ1010によって計測された機械装置1008の物理量の計測値を取得する。前述したように、物理量の計測値は、センサ1010が送信するセンサ信号に含まれている。また、センサデータ取得部1001は、取得した計測値のうちの第1時点から第N時点までの計測値をセンサデータとして保持する。ここで、Nは2以上の整数である。内部変数保持部1002は、当該Nよりも少ない個数の内部変数を一時的に保持する。内部変数は、センサデータに基づいて時系列に順次計算される変数である。内部変数は、特徴量の計算に用いられる。内部変数及び特徴量の詳細は、後述する。
内部変数計算部1003は、センサデータ取得部1001から送信されるセンサデータと、内部変数保持部1002から送信される内部変数とを受信する。内部変数計算部1003は、センサデータと内部変数とに基づいて内部変数を更新する。より一般化して説明すると、内部変数計算部1003は、第j+1時点に対応する内部変数を、第j+1時点のセンサデータと第j時点に対応する内部変数とに基づいて計算することで、内部変数を逐次的に更新していく。ここで、jは1からN−1までの整数である。即ち、内部変数計算部1003は、ある時点でのセンサデータと、ある時点よりも1時点前の内部変数に基づいて、当該ある時点における内部変数を計算する。計算された内部変数は、内部変数保持部1002に送信される。
特徴量計算部1004は、センサデータ取得部1001から送信されるセンサデータと、内部変数保持部1002から送信される内部変数とを受信する。特徴量計算部1004は、センサデータ及び内部変数に基づいて特徴量を計算する。より一般化して説明すると、特徴量計算部1004は、内部変数に基づいて、第1時点から第N時点までのセンサデータに含まれる統計的な特徴を抽出した特徴量を計算する。計算された特徴量は、状態診断部1006に送信される。
初期化処理部1005は、初期化処理を実行する。初期化処理は、内部変数保持部1002が保持する内部変数を初期値に設定する処理である。より一般化して説明すると、初期化処理部1005は、第1時点の内部変数を、予め設定した最大値と予め設定した最小値との間の値に決定する処理を行う。
状態診断部1006は、特徴量に基づいて機械装置1008の状態を診断する診断処理を行い、診断処理の結果である診断結果を出力する。
図2は、実施の形態1における機械装置1008及びその周辺装置のハードウェア構成例を示す図である。図2には、機械装置1008の構成例として、サーボモータ1230を駆動源として用いた機械装置1008が示されている。サーボモータ1230が発生した駆動トルクは、サーボモータ軸1231から出力され、カップリング1220を介してボールねじ軸1224に入力される。ボールねじ1210は、回転動作をねじ機構で直動の動作に変換し、可動部1212を動作させる。なお、図示は省略するが、可動部1212は、異なる機械部品に接続され、可動された機械部品が機械装置1008の目的に応じて利用される。
可動部1212は、ガイド1213で所望の方向へ移動を制限される。ガイド1213は、機械装置1008が精度良く動作できるように可動部1212を補助している。サーボモータ1230には、図示のように、サーボモータ軸1231を予め定めた、位置、速度又はトルクに追従して駆動できるように、回転角度を計測するエンコーダ1233と、電流を計測する電流センサ1232とが併設されているのが一般的である。ドライバ1240は、電流センサ1232から得た情報を元にフィードバック制御を行い、駆動に必要な電力をサーボモータ1230に供給する。フィードバック制御に必要な計算は、図1の装置制御部1099が実施する。なお、本実施の形態では、状態を診断するために用いるセンサデータの例として、モータトルクを例示するが、これに限定されない。機械装置1008の状態が情報として含まれるものならよく、前述した、位置、速度、加速度、電流、電圧、トルク、力、圧力、音声、光量などの物理量でもよい。また、これらの物理量に代えて、画像情報などでもよい。
また、図2では、センサ1010の例として、電流センサ1232及びエンコーダ1233を例示しているが、これらに限定されない。他の例として、レーザ変位計、ジャイロセンサ、振動計、加速度センサ、電圧計、トルクセンサ、圧力センサ、マイク、光センサ、カメラなどが例示できる。また、センサ1010の取り付け位置は、必ずしもサーボモータ1230に近接している必要はなく、機械装置1008の状態を診断するのに適している位置であればよい。例えば、加速度センサをガイド1213の外面等に設置し、センサデータとして加速度を計測してもよい。
PLC(Programmable Logic Controller)1260は、サーボモータ1230の動作命令をドライバ1240へ送る。また、必要に応じてPC(Personal Computer)1270が、用意される場合がある。この場合、PC1270は、PLC1260へ命令を発信するために使用される。PC1270として、産業用PC(Factory Automation PC又はIndustrial PC)が用いられる場合もある。
また、図示のように、PLC1260の状態をモニタするPLC用の表示器1250と、PC1270の状態をモニタするPC用の表示器1280とが用意される場合がある。なお、図示は省略するが、サーボモータ1230等の駆動源は、一つの機械装置1008に複数設けられることが一般的である。このため、ドライバ1240も必要に応じて複数用意されることがある。また、単一のPLC1260が統括して、或いは複数のPLC1260が協調して機械装置1008を動作させる場合がある。これらの構成の場合にも、本実施の形態で示す情報処理装置1000は、同様に実施可能である。
図3は、図2に示すドライバ1240が備える処理回路をプロセッサ1291及びメモリ1292で構成する場合の構成例を示す図である。処理回路がプロセッサ1291及びメモリ1292で構成される場合、ドライバ1240の処理回路の各機能は、ソフトウェア、ファームウェア、又はソフトウェアとファームウェアとの組み合わせによって実現される。ソフトウェア又はファームウェアはプログラムとして記述され、メモリ1292に格納される。処理回路では、メモリ1292に記憶されたプログラムをプロセッサ1291が読み出して実行することによって、各機能を実現する。即ち、処理回路は、ドライバ1240の処理が結果的に実行されることになるプログラムを格納するためのメモリ1292を備える。また、これらのプログラムは、ドライバ1240の手順及び方法をコンピュータに実行させるものであるとも言える。
ここで、プロセッサ1291は、CPU(Central Processing Unit)、処理装置、演算装置、マイクロプロセッサ、マイクロコンピュータ、又はDSP(Digital Signal Processor)と称される演算手段であってもよい。メモリ1292は、例えば、RAM、ROM(Read Only Memory)、フラッシュメモリ、EPROM(Erasable Programmable ROM)、EEPROM(登録商標)(Electrically EPROM)などの、不揮発性又は揮発性の半導体メモリとしてもよい。また、メモリ1292を、磁気ディスク、フレキシブルディスク、光ディスク、コンパクトディスク、ミニディスク、又はDVD(Digital Versatile Disc)などの、記憶手段としてもよい。
図4は、図2に示すドライバ1240が備える処理回路を専用のハードウェアで構成する場合の構成例を示す図である。処理回路が専用のハードウェアで構成される場合、図4に示す処理回路1293は、例えば、単一回路、複合回路、プログラム化したプロセッサ、並列プログラム化したプロセッサ、ASIC(Application Specific Integrated Circuit)、FPGA(Field Programmable Gate Array)、又はこれらを組み合わせたものとしてもよい。ドライバ1240の機能を、機能毎に処理回路1293によって実現してもよく、複数の機能をまとめて処理回路1293によって実現してもよい。なお、ドライバ1240とPLC1260とは、ネットワークを介して接続してもよい。また、PC1270は、クラウドサーバ上に存在してもよい。
ハードウェア構成の一例は前述の通りであるが、ドライバ1240、PLC1260、PC1270は必須ではなく、本開示に係る情報処理装置を実施するためのデバイスを別途用意し、当該デバイスの内部で実施してもよい。例えば、バッテリ、マイコン、センサ、表示器、通信機能を備えた単独のデバイスを使用し、機械装置1008の音声をマイクで取得したセンサデータに基づいて、機械装置1008の状態を推定する構成としてもよい。
また、表示器類は必須ではなく、PLC用の表示器1250又はPC用の表示器1280で結果を表示する代わりに、ドライバ1240、PLC1260に備えられた既存のLEDなどを使用して、結果を表示してもよい。また、表示器で結果を示さずに、異常が生じたことを診断した際にサーボモータ1230の駆動を停止するような構成にしてもよい。
また、本実施の形態では、モータ速度をサーボモータ1230に備えられたエンコーダ1233から得ることとして説明したが、これに限定されない。例えば、図1の構成において、モータ1009へ駆動の命令を下す装置制御部1099からの制御信号を用いてモータ速度を得るようにしてもよい。
また、本実施の形態において、サーボモータ1230は回転型のサーボモータとして説明としたが、リニア型のサーボモータ、誘導機モータ、ステッピングモータ、ブラシモータ、超音波モータ等、その他のモータ又は駆動源を用いて実施してもよい。また、ボールねじ1210及びカップリング1220は、構成品の例であってこれらに限定されない。減速機、ガイド、ベルト、スクリュー、ポンプ、ベアリング、筐体等、その他多様な部品で構成された機械装置に対しても、本開示に係る情報処理装置への適用は可能である。
次に、実施の形態1における情報処理装置1000の動作について、図面及び数式を用いて詳細に説明する。まず、サーボモータ1230を用いて機械装置1008を駆動した際に電流センサ1232から得られるセンサデータに関して、図5を用いて説明する。図5は、実施の形態1におけるモータ速度及びモータトルクの時系列の波形を示す図である。
電流センサ1232から直接得られる信号は、モータ1009内を流れる三相の電流を計測した信号である。モータトルクは、三相の電流に適切な変換を施すことで計算することができる。なお、電流センサ1232によって検出された三相の電流値を、センサデータとして診断に用いてもよい。また、エンコーダ1233から得られる信号は、モータ1009の回転角度を表す位置情報である。従って、位置情報に対して数値微分等の処理を施せば、モータ1009の回転速度であるモータ速度が得られる。このため、電流センサ1232から得られる信号に代えて、エンコーダ1233から得られる信号をセンサデータとして診断に用いてもよい。
図5(a)、(b)の横軸は、時間を表している。図5(a)にはモータ速度の時系列の波形が示され、図5(b)にはモータトルクの時系列の波形が示されている。これらは、モータ1009が停止している状態から位置決めと呼ばれる単発の駆動を実施した際の波形である。また、図5(b)の波形の取得周期であるサンプリング周期は0.5ミリ秒であり、取得時間は6秒である。従って、センサデータの点数であるデータ点数Nは、12000点(=6000ミリ秒÷0.5ミリ秒)である。なお、ここで示すサンプリング周期、取得時間及びデータ点数Nは一例であり、これらの数値に限定されるものではない。また、本例では、位置決めの回数は1回としているが、位置決めの回数は複数回でもよい。また、ここでは、モータ1009を位置決めする場合の動作について説明するが、これに限定されない。本実施の形態は、位置決め以外の制御、例えば速度制御又はトルク制御への適用も可能である。
図5(a)のモータ速度に関して説明する。まず、時刻Tr0から時刻Tr1の間は、モータ1009は停止しており、モータ速度は0[r/min]である。この期間を「Ts1」と表記する。続いて、時刻Tr1から時刻Tr2の間にモータ1009は加速し、モータ速度は500[r/min]まで上昇する。この期間を「Ta」と表記する。続いて、時刻Tr2から時刻Tr3の間は、モータ速度は一定で500[r/min]のままである。この期間を「Te」と表記する。続いて、時刻Tr3から時刻Tr4の間にモータ1009は減速し、モータ速度は0[r/min]まで下降する。この期間を「Td」と表記する。続いて、時刻Tr4から時刻Tr5の間は、モータ1009は停止しており、モータ速度0[r/min]のままである。この期間を「Ts2」と表記する。以上の動作を図示すると、図5(a)に示されるような台形状の波形となる。なお、このような台形状の波形は一例であり、これに限定されない。モータ1009の駆動に伴うセンサデータから機械装置1008の状態が得られる動作であればよく、モータ速度の波形の形状はどのようなものでもよい。
次に、図5(b)のモータトルクに関して説明する。期間Ts1において、モータ1009は停止しており、モータ1009の動作に必要なモータトルクはほぼ0[Nm]である。続く期間Taでは、機械装置1008を加速させるためのトルクが必要となり、期間Ts1よりも大きなモータトルクが発生する。なお、粘性摩擦等の影響により機械装置1008に粘性摩擦が存在すると、図5のように、速度に応じて必要なトルクが徐々に大きくなる場合もある。続く期間Teでは、機械装置1008の速度は変わらず、ほぼ一定のモータトルクが発生している。続く期間Tdでは、機械装置1008を減速させるためのトルクが必要となり、期間Teのモータトルクから見て負方向にモータトルクが発生する。最後の期間Ts2において、モータ1009は停止しており、モータ1009の動作に必要なモータトルクは、ほぼ0[Nm]である。
以上に説明したモータトルクは、ほぼ理想的な機械装置1008の動作に必要なトルクである。但し、実際には、電気的な振動、又は機械的な振動、摩擦等の影響により、図5(b)に示すような、大なり小なりのノイズがモータトルクに発生する。機械装置1008の部品であるボールねじ軸1224、ガイド1213、カップリング1220等が劣化した場合、前述の摩擦又は振動の大きさが変化し、モータトルクを含むセンサデータに摩擦又は振動の影響が現れることが知られている。そのため、センサデータを統計的な手法で解析し、特徴量と呼ばれる幾つかの指標を計算して装置の異常を検出することが行われる。
センサデータ取得部1001は、センサ1010から時系列に逐次生成されるセンサ信号を取得し、デジタル化されたセンサデータを生成する。生成されたセンサデータは、内部変数計算部1003及び特徴量計算部1004のうちの少なくとも一つに渡される。センサデータ取得部1001は、センサデータを生成する際、必要に応じて機械装置1008の状態に関係のないノイズを除去するフィルタ処理を実行してもよい。
次に、内部変数保持部1002、内部変数計算部1003、特徴量計算部1004及び初期化処理部1005の機能及び動作について、幾つかの種類の特徴量を例にとり、詳細に説明する。
まず、時刻及びセンサデータの数式中の表記に関して説明する。特徴量計算に用いるセンサデータの取得を開始した時点を「第1時点」と呼ぶ。センサデータは、第1時点から第N時点までに、合計でN個得られる。ここで、Nは2以上の整数である。また、第j番目のセンサデータを取得した時点を「第j時点」と呼ぶ。ここで、jは1からN−1までの整数である。第j時点で得られたセンサデータを「xj」と記す。以降、説明を簡単にするため、センサデータは、予め定めた時間間隔毎に取得されることとする。なお、言うまでもないが、センサデータは、不定期に取得されてもよい。
内部変数保持部1002は、1時点前の内部変数を保持する。内部変数は1種類とは限らず、特徴量に応じて複数種類保持する場合もある。保持する内部変数の種類が、特徴量の計算の基となるセンサデータの時系列の数よりも小さいほど、メモリの削減効果が高い。内部変数保持部1002は、特徴量それ自体を内部変数の一つの種類として保持してもよい。
初期化処理部1005は、保持した内部変数を初期値に設定する初期化処理を実行する。初期値は、初期化処理の際に設定する値である。初期化処理部1005は、例えば情報処理装置1000の電源が投入され、センサデータ取得部1001が最初にセンサデータを取得した時刻である第1時点で初期化処理を実施する。初期値は、後述するように0とするのが簡単であるが、必ずしも0でなくともよい。例えば、適切な初期値の付近に上限値と下限値を定め、初期値を上限値と下限値との間に適宜決定してもよい。なお、後述する一部の特徴量は、内部変数及び特徴量の初期値を極端に小さい値にすると計算が安定しない場合がある。この場合、初期値を0以外の値にすることで計算が安定化する。また、センサデータに対する定常的な値が0でない特徴量も存在する。そのような特徴量を用いる場合、想定される特徴量の値を初期値とすることで、計算の収束を早めることができる。例えば、本実施の形態で示す特徴量の一つである尖度は、正規分布に近い性質を持つセンサデータに対して3程度の値になることが知られている。そのため、尖度の初期値を3にすることで、多くの種類のセンサに対して収束の早い計算が行える。以降、特徴量の具体的な例として、平均値、分散、標準偏差、二乗平均平方根、歪度、尖度、最大値、最小値、ピーク値、ピークピーク値及び波高率を用いたときの、各特徴量の逐次的な計算方法を、その導出手順と共に示す。なお、以降、各特徴量の逐次的な計算を、単に「逐次計算」と呼ぶ場合がある。
まず、特徴量の最も単純な一例として、平均値mの逐次計算に関する計算手順を示す。第1時点から第j時点までのセンサデータx1〜xjに対する平均値mjは、以下の公知の数式(1)で定義される。この数式(1)は、算術平均値又は相加平均値とも呼ばれる。
前述のように、第i時点のセンサデータはxjである。従って、第3時点の平均値m3は、以下の数式(2)のように表せる。
ここで、第1時点から第3時点までの時系列のセンサデータをメモリ1292には記憶せず、第3時点の情報を幾つかの内部変数として保持する。そして、第3時点の内部変数と第4時点のセンサデータとに基づいて、第4時点の平均値を求める方法を考える。まず、第4時点の平均値m4は、定義式である数式(1)に従って、以下の数式(3)のように表せる。
上記の数式(3)を用いて平均値m4を算出する場合、第1から第4時点までの時系列のセンサデータを用いており、過去のサンプル数分のセンサデータを保持するメモリが必要となる。しかし、第3時点での平均値m3と、第3時点までのセンサデータの点数を表す変数L3=3を内部変数として保持すれば、第4時点の平均値m4は、以下の数式(4)で表せる。
上記の数式(4)に、数式(2)及びL3=3を代入すると、平均値m4を定義式で求めた数式(3)の結果と一致する。
一般化して考えると、第j+1時点の平均値mj+1は、以下の数式(5)のように表せる。
即ち、第j+1時点の平均値mj+1は、以下の数式(6)で逐次的に求められる。
ここで、第j+1時点の変数Lj+1は、以下の数式(7)で逐次的に求まる。
上記の数式(7)で第j時点の変数を保持することは、逐次計算中の時刻jの情報を保持していることと等しい。センサデータxj+1は、第j+1時点で新しく取得される。結果として、第j+1時点の平均値mj+1を求めるために第j時点で保持すべき内部変数は、平均値mj及び変数Ljである。
第2時点の内部変数を計算する際、簡単のため、変数L及び平均値mの初期値L1,m1は0とするか、初期化処理直後の変動を避けるため、初期化処理時のセンサデータの値に応じて決定するのがよい。例えば、特徴量に平均値を用いる場合、変数Lの初期値L1=0、平均値mの初期値m1=x1とすると、結果が定義式である数式(1)と一致する。
次に、特徴量の一例として、分散vの逐次計算に関する計算手順を示す。第1時点から第j時点までのセンサデータx1〜xjに対する分散vjは、以下の公知の数式(8)で定義される。
なお、上記の数式(8)の代わりに、分母をj−1とする不偏分散を用いることもあるが、その場合も同様の手順で導出可能である。
ここで、センサデータを確率変数と見なすと、その分散vは、以下の数式(9)で表せるということが知られている。
上記数式(9)において、記号“E[]”は、角括弧内の確率変数の期待値を表している。従って、上記数式(9)を用いて上記数式(8)に示される第j時点の分散vjは、以下の数式(10)で表せる。
従って、第1時点から第j+1時点までのセンサデータx1〜xj+1に対する分散vj+1は、以下の数式(11)で表せる。
また、上記の数式(11)を変形すると、分散vj+1は、以下の数式(12)で表せる。
そして、上記の数式(10)と数式(12)とから、以下の数式(13)が導かれる。
従って、上記の数式(13)より、第j+1時点の分散vj+1は、以下の数式(14)で逐次的に求められる。
上記のように、第j+1時点の変数Lj+1は、前述の数式(7)で逐次的に求められる。また、第j+1時点の平均値mj+1は、前述の数式(6)で逐次的に求められる。そして、第j+1時点のセンサデータxj+1は、第j+1時点で新しく取得される。結果として、第j+1時点の分散vj+1を求めるために第j時点で保持すべき内部変数は、変数Lj、分散vj及び平均値mjである。なお、分散vjに代えて標準偏差sjを保持してもよい。
第2時点の内部変数を計算する際、簡単のため、変数L及び分散vの初期値L1,v1は0とするか、初期化処理直後の変動を避けるため、初期化処理時のセンサデータの値等に応じて決定するのがよい。ただし、分散vの初期値v1を0に近い値に設定すると、後述の別の特徴量の逐次計算で分散vが分母に現れる場合に計算が安定しない。このため、0よりもある程度大きい値を初期値に用いるとよい場合もある。
次に、特徴量の一例として、標準偏差sの逐次計算に関する計算手順を示す。第1時点から第j時点までのセンサデータx1〜xjに対する標準偏差sjは、以下の公知の数式(15)で定義される。
即ち、標準偏差sjは、前述の手順で逐次的に求めた分散vjから直ちに求まる。そのため、標準偏差sjを逐次的に計算するために保持すべき内部変数は、分散vjと同じである。
次に、特徴量の一例として、二乗平均平方根rの逐次計算に関する計算手順を示す。第1時点から第j時点までのセンサデータx1〜xjに対する二乗平均平方根rjは、以下の公知の数式(16)で定義される。これは、RMS(Root Mean Square:実効値)とも呼ばれる。
従って、第1時点から第j+1時点までのセンサデータに対する二乗平均平方根rj+1は、以下の数式(17)のように表せる。
上記の数式(16)と数式(17)とから、二乗平均平方根の二乗rj+1 2は、以下の数式(18)のように表せる。
上記の数式(18)より、第j+1時点の二乗平均平方根の二乗rj+1 2は、以下の数式(19)で逐次的に求められる。
上記のように、第j+1時点の変数Lj+1は、前述の数式(7)で逐次的に求められる。また、第j+1時点のセンサデータxj+1は、第j+1時点で新しく取得される。結果として、第j+1時点の二乗平均平方根の二乗rj 2を求めるために第j時点で保持すべき内部変数は、二乗平均平方根の二乗rj 2及び変数Ljである。
第2時点の内部変数を計算する際、簡単のため、変数L及び二乗平均平方根の二乗rj 2の初期値L1,r1 2は0とするか、初期化処理直後の変動を避けるため初期化処理時のセンサデータの値等に応じて決定するのがよい。
次に、特徴量の一例として、歪度wの逐次計算に関する計算手順を示す。センサデータxを確率変数と見なし、確率変数xの平均値m及び標準偏差sを用いると、歪度wは、以下の公知の数式(20)で定義される。
前述したように、記号“E[]”は、角括弧内の確率変数の期待値を表している。上記の数式(20)を展開し、整理すると、以下の数式(21)のように表せる。
上記の数式(21)の変形では、センサデータxの期待値E[x]が、平均値mと等しいという性質を利用している。
次に、第1時点から第j時点までのセンサデータx1〜xjに対する歪度wjについて考える。上記数式(21)において、右辺の分子第1項の期待値E[x3]を変数Ajで表し、右辺の分子第2項の期待値を変数Bjで表すと、歪度wjは、以下の数式(22)のように表せる。
上記の数式(22)において、右辺の分母にある標準偏差sjに関しては、前述の数式(15)で逐次的に計算できる。
次に、上記の数式(22)の第j時点の変数Aj,Bjに関する逐次計算を考える。まず、第j時点の変数Ajは、以下の数式(23)で表せる。
同様に、第j+1時点の変数Aj+1は、以下の数式(24)で表せる。
上記の数式(23)と数式(24)とから、変数Aj+1は、以下の数式(25)のように表せる。
従って、上記の数式(25)より、第j+1時点の変数Aj+1は、以下の数式(26)で逐次的に求められる。
上記のように、第j+1時点の変数Lj+1は、前述の数式(7)で逐次的に求められる。また、第j+1時点のセンサデータxj+1は、第j+1時点で新しく取得される。ここで、第j+1時点の変数Aj+1を求めるために第j時点で保持すべき内部変数は、変数Aj及び変数Ljである。
また、第j時点の変数Bjは、以下の数式(27)で表せる。
上記の数式(27)のように、変数Bjは前述の二乗平均平方根の二乗rj 2と一致することが分かり、これは前述の数式(19)で逐次的に求められる。従って、第1時点から第j時点までのセンサデータx1〜xjに対する歪度wjは、以下の数式(28)で求まる。
同様に、第1時点から第j+1時点までのセンサデータxj+1に対する歪度wj+1は、以下の数式(29)で求まる。
上記のように、第j+1時点の変数Aj+1は、前述の数式(26)で逐次的に求められる。また、第j+1時点の平均値mj+1は、前述の数式(6)で逐次的に求められる。そして、第j+1時点の二乗平均平方根の二乗rj 2は、前述の数式(19)で逐次的に求められる。また、第j+1時点の標準偏差sj+1は、前述の数式(15)で逐次的に求められる。そして、第j+1時点のセンサデータxj+1は、第j+1時点で新しく取得される。結果として、第1時点から第j+1時点までのセンサデータxj+1に対する歪度wj+1を求めるために、第j時点で保持すべき内部変数は、変数Aj,Lj、平均値mj、二乗平均平方根の二乗rj 2及び標準偏差sjである。標準偏差sjに代えて分散vjを保持してもよい。また、二乗平均平方根の二乗rj 2に代えて二乗平均平方根rjを保持してもよい。
なお、数式が煩雑になるため割愛するが、逐次計算のための変数Ajに代えて、歪度wjを保持しても同様の計算結果が得られる数式が求まる。また、第2時点の内部変数を計算する際、簡単のため、変数Aj,Lj、及び平均値mj、二乗平均平方根の二乗rj 2、標準偏差sjの各初期値は0とするか、初期化処理直後の変動を避けるため、初期化処理時のセンサデータの値等に応じて決定するのがよい。
次に、特徴量の一例として、尖度kの逐次計算に関する計算手順を示す。センサデータxを確率変数と見なし、確率変数xの標準偏差sjを用いると、尖度kは、以下の公知の数式(30)で定義される。
前述したように、記号“E[]”は、角括弧内の確率変数の期待値を表している。なお、本稿で説明する計算方法では、正規分布となる確率変数に対する尖度は3である。本稿と異なる定義として、正規分布の尖度が0となるよう、数式(30)の右辺に“−3”のバイアスをかける定義も存在するが、同様の手順で以下の数式に対応する数式の導出が可能である。
上記の数式(30)を展開し、整理すると、以下の数式(31)のように表せる。
上記の数式(31)の変形では、センサデータxの期待値E[x]が、平均値mと等しいという性質を利用している。
次に、第1時点から第j時点までのセンサデータx1〜xjに対する尖度kjについて考える。上記数式(31)において、右辺の分子第1項の期待値E[x4]を変数Cjで表す。また、右辺の分子第2項の期待値及び第3項の期待値は、それぞれ変数Aj,Bjで表せる。従って、尖度kjは、以下の数式(32)で表せる。
上記の数式(32)において、標準偏差sj、変数Aj,Bjに関しては、それぞれ前述の数式(15)、数式(26)及び数式(27)で逐次的に計算できる。
次に、上記の数式(32)の第j時点の変数Cjに関する逐次計算を考える。まず、第j時点の変数Cjは、以下の数式(33)で表せる。
同様に、第j+1時点の変数Cj+1は、以下の数式(34)で表せる。
上記の数式(33)と数式(34)とから、変数Cj+1は、以下の数式(35)のように表せる。
上記の数式(35)より、第j+1時点の変数Cj+1は、以下の数式(36)で逐次的に求められる。
ここで、上記数式(27)のように、変数Bjは、前述の二乗平均平方根の二乗rj 2と一致する。従って、第1時点から第j時点までのセンサデータx1〜xjに対する尖度kjは、以下の数式(37)で求まる。
同様に、第1時点から第j+1時点までのセンサデータx1〜xj+1に対する尖度kj+1は、以下の数式(38)で求まる。
上記のように、第j+1時点の変数Cj+1は、前述の数式(36)で逐次的に求められる。また、第j+1時点の変数Aj+1は、前述の数式(26)で逐次的に求められる。そして、第j+1時点の平均値mj+1は、前述の数式(6)で逐次的に求められる。また、第j+1時点の二乗平均平方根の二乗rj 2は、前述の数式(19)で逐次的に求められる。また、第j+1時点の標準偏差sj+1は、前述の数式(15)で逐次的に求められる。そして、第j+1時点のセンサデータxj+1は、第j+1時点で新しく取得される。結果として、第1時点から第j+1時点までのセンサデータxj+1に対する尖度kj+1を求めるために、第j時点で保持すべき内部変数は、変数Aj,Lj,Cj、平均値mj、二乗平均平方根の二乗rj 2、標準偏差sjである。標準偏差sjに代えて分散vjを保持してもよい。また、二乗平均平方根の二乗rj 2に代えて二乗平均平方根rjを保持してもよい。
なお、第2時点の内部変数を計算する際、簡単のため、変数Aj,Lj,Cj、及び平均値mj、二乗平均平方根の二乗rj 2、標準偏差sjの各初期値は0とするか、初期化処理直後の変動を避けるため、初期化処理時のセンサデータの値等に応じて決定するのがよい。また、センサデータが正規分布に近い性質を持つことが分かっている場合、尖度は3程度の値になることが知られている。そのため、尖度kの初期値k1を3としてもよい。
次に、特徴量の一例として、最大値の逐次計算に関する計算手順を示す。第1時点から第j時点までのセンサデータx1〜xjに対する最大値ajは、以下の公知の数式(39)で定義される。
最大値aの逐次的な計算方法は、以下の方法で容易に実現できることが知られている。第j時点の最大値ajを保持しておき、第j+1時点のセンサデータxjと第j時点の最大値ajとのうちで大きな方を、第j+1時点の最大値aj+1として保持する。即ち、第j+1時点の最大値aj+1は、以下の数式(40)で逐次的に計算できる。
なお、最大値の初期値、即ち最大値a1には、同時刻のセンサデータx1を代入するのがよい。
次に、特徴量の一例として、最小値の逐次計算に関する計算手順を示す。第1時点から第j時点までのセンサデータx1〜xjに対する最小値njは、以下の公知の数式(41)で定義される。
最小値nの逐次的な計算方法は、以下の方法で容易に実現できることが知られている。第j時点の最小値njを保持しておき、第j+1時点のセンサデータxjと第j時点の最小値njとのうちで小さな方を、第j+1時点の最小値nj+1として保持する。即ち、第j+1時点の最小値nj+1は、以下の数式(42)で逐次的に計算できる。
なお、最小値の初期値、即ち最小値n1には、同時刻のセンサデータx1を代入するのがよい。
次に、特徴量の一例として、ピーク値の逐次計算に関する計算手順を示す。ピーク値という言葉には幾つかの定義が存在するが、本稿では、第1時点から第j時点までのピーク値pjを以下の数式(43)で定義する。
上記数式(43)の定義では、ピーク値はセンサデータx1〜xjのうちで絶対値の最も大きな値としている。ピーク値の逐次的な計算方法は、以下の方法で実現できる。第j時点のピーク値pjを保持しておき、第j+1時点のセンサデータxjと第j時点のピーク値pjのうちで大きな方を、第j+1時点のピーク値pj+1として保持する。即ち、第j+1時点のピーク値pj+1は、以下の数式(44)で逐次的に計算できる。
ピーク値の初期値、即ちピーク値p1には、同時刻のセンサデータの絶対値|x1|を代入するのがよい。或いは、前述の数式(40)及び数式(42)を用いて、第j時点の最大値ajと最小値njとが得られている場合、以下の数式(45)でピーク値を求めることもできる。
同様に、第j+1時点の最大値aj+1と最小値nj+1とが得られている場合、以下の数式(46)でピーク値を求めることができる。
結果として、第j+1時点のピーク値pj+1を求めるために、第j時点で保持すべき内部変数は、ピーク値pjである。なお、ピーク値pjに代えて、最大値aj及び最小値njを保持してもよい。
次に、特徴量の一例として、ピークピーク値の逐次計算に関する計算手順を示す。ピークピーク値は、最大値と最小値との差である。ピークトゥピーク(peak−to−peak)と呼ばれることもある。
第1時点から第j時点までのセンサデータx1〜xjに対するピークピーク値ppjは、以下の公知の数式(47)で定義される。
即ち、前述の数式(40)と数式(42)とから、最大値aj及び最小値njを逐次的に計算しておくことで、ピークピーク値ppjが直ちに求まる。
同様に、第j+1時点の最大値aj+1と最小値nj+1とが得られている場合、以下の公知の数式(48)でピークピーク値ppj+1を求めることができる。
結果として、第j+1時点のピークピーク値ppj+1を求めるために、第j時点で保持すべき内部変数は、最大値aj及び最小値njである。
次に、特徴量の一例として、波高率の逐次計算に関する計算手順を示す。第1時点から第j時点までのセンサデータx1〜xjに対する波高率prjは、以下の数式(49)で定義される。
上記数式(49)に示されるように、波高率prjは、前述のピーク値pjを前述の二乗平均平方根rjで割った値である。波高率prjは、ピークトゥアールエムエス(peak−to−RMS)、クレストファクタ(crest factor)と呼ばれることもある。なお、センサデータが正の方向に偏った値を取ることがわかっている場合などには、ピーク値pjに代えて最大値ajを用いることもある。
同様に、第1時点から第j+1時点までのセンサデータx1〜xjに対する波高率prj+1は、以下の数式(50)で求まる。
即ち、前述の数式(44)又は数式(45)を用いてピーク値pj+1を逐次的に計算すると共に、数式(19)を用いて二乗平均平方根rj+1を逐次的に計算し逐次的に計算しておくことで、波高率prj+1が直ちに求まる。
結果として、第j+1時点の波高率prj+1を求めるために、第j時点で保持すべき内部変数は、ピーク値pj及び二乗平均平方根の二乗rj 2である。なお、ピーク値pjに代えて、最大値aj及び最小値njを保持してもよい。また、二乗平均平方根の二乗rj 2に代えて、二乗平均平方根rjを保持してもよい。
上述のように、内部変数計算部1003は、各特徴量を計算するための内部変数を逐次計算する。内部変数計算部1003は、この逐次計算をj=1からj=N―1まで実施する。これにより、特徴量計算部1004が第1時点から第N時点でのセンサデータx1〜xjに対応する特徴量を決定することができる。なお、特徴量の種類毎に更新の数式、及び内部変数保持部1002が保持する内部変数は異なる。その一方で、内部変数保持部1002が内部変数を保持し、内部変数計算部1003が内部変数を逐次計算し、特徴量計算部1004が内部変数に基づいて特徴量を計算する点は、特徴量の種類に依らず同様である。
次に、前述の方法を用いてセンサデータの一つであるモータトルクの特徴量を逐次的に計算した結果について、図6を参照して説明する。図6は、実施の形態1におけるモータトルク及び各種の特徴量の時系列の波形を示す図である。なお、以降では、記載の煩雑さを避けるため、特徴量等に付していた記号の表記を適宜省略する。
図6(a)には、図5(b)に示したものと同様のモータトルクの波形が示されている。図6(a)、(b)の横軸は、時間を表している。また、図6(a)には、有次元の特徴量のうちモータトルクと同じ単位[Nm]を持つ、平均値、標準偏差、二乗平均平方根(RMS)、最大値及び最小値の時系列の波形が示されている。またピークピーク値は、最大値と最小値との差であり、簡単のため図示しない。また、ピーク値は、最大値と最小値のうち、絶対値が大きいものを示す値であり、簡単のため図示しない。また、分散は、標準偏差を二乗したものであり、単位が異なるので図示しない。
図6(b)には、無次元の特徴量、即ち単位を持たない特徴量である、歪度、尖度及び波高率の時系列の波形が示されている。次に、図6(a)、(b)に示される各特徴量の挙動に関して説明する。
平均値は、期間Ts1ではほぼ0であり、期間Taでは徐々に増加し、期間Teでは僅かに減少し、期間Tdでは徐々に減少し、期間Ts2では僅かに減少している。
標準偏差は、期間Ts1ではほぼ一定の小さい値であり、期間Taでは徐々に増加し、期間Teでは僅かに減少し、期間Tdでは徐々に増加し、期間Ts2では僅かに減少している。
二乗平均平方根は、期間Ts1ではほぼ一定の小さい値であり、期間Taでは徐々に増加し、期間Teでは僅かに減少し、期間Tdではほぼ一定であり、期間Ts2では僅かに減少している。
最大値は、期間Ts1ではほぼ一定の正の小さい値であり、期間Taではモータトルクが過去の最大値を超える毎に増加しており、期間Te、期間Td及び期間Ts2では一定である。
最小値は、期間Ts1ではほぼ一定の負の小さい値であり、期間Ta及び期間Teでは一定、期間Tdではモータトルクが過去の最小値を超える毎に減少しており、期間Ts2では一定である。
歪度は、期間Ts1ではほぼ0であり、期間Taが始まる時刻Tr1では急峻に大きい正の値に増加し、その後の期間Taでは徐々に小さい値に減少し、期間Teでは僅かに増加し、期間Tdでは僅かに減少し、期間Ts2では僅かに増加している。
尖度は、期間Ts1では2程度から3程度まで増加し、期間Taが始まる時刻Tr1では急峻に大きい正の値に増加し、その後の期間Taでは徐々に小さい値に減少し、期間Teでは僅かに増加し、期間Tdでは僅かに増加した後に減少し、期間Ts2では僅かに増加している。
波高率は、期間Ts1では2程度から3程度まで増加し、期間Taが始まる時刻Tr1では急峻に大きい正の値に増加し、その後の期間Taでは徐々に小さい値に減少し、期間Teでは僅かに増加し、期間Tdではほぼ一定であり、期間Ts2では僅かに増加している。
図6(a)、(b)に示した各時点の特徴量は、各時点より過去のモータトルクに対する特徴量が逐次的に計算されたものである。そのため、例えば平均値は、図6(a)の全期間(Ts1+Ta+Te+Td+Ts2)のモータトルクを保持して一括計算で求めた値と、逐次的に求めた図6(a)の最終時刻である時刻Tr5の値とは一致する。
なお、図6では、特徴量の推移を変わりやすくするために、特徴量計算部1004もまた、センサデータの取得周期毎に各特徴量を計算している。ここで、ある期間に渡るセンサデータに対して特徴量を計算する場合、内部変数計算部1003は、センサデータの取得周期毎に内部変数を逐次計算する必要がある。一方、例えば数式(29)で表される歪度、数式(38)で表される尖度のように、自身を内部変数として含めない特徴量を用いる場合、特徴量計算部1004は、必要に応じて特徴量を計算することとしてもよい。例えば、時刻Tr0時点から時刻Tr5までの期間に渡るセンサデータに対する特徴量を1点だけ求めたく、且つ途中の時間での特徴量の推移が不要な場合である。このような場合、特徴量計算部1004は、時刻Tr5の時点、即ちセンサデータのデータ点数Nが12000に達した時点の1回だけ特徴量を計算するように構成されていてもよい。このように構成すれば、情報処理装置1000の計算負荷の低減が可能である。
次に、状態診断部1006が、特徴量を用いて機械装置1008の状態を診断する手順について、図7を参照して説明する。図7は、実施の形態1における特徴量の経年変化の様子の一例を示す図である。図7には、前述の方法で計算した特徴量を定期的にプロットした結果が示されている。定期的とは、例えば一月毎である。図7の横軸は時間であり、機械装置1008の運用時間を表している。
状態診断部1006は、特徴量に対して、しきい値Fth1を設け、特徴量がしきい値Fth1を超えた場合に、機械装置1008に異常が生じていると診断する。特徴量には、前述したどのような特徴量を用いてもよい。また、複数の特徴量をそれぞれ計算し、各特徴量に個別のしきい値を設定してもよい。
図7において、時刻Tta0は運用を開始した時刻である。時刻Tta0から時刻Tta1より前までの特徴量は、多少のばらつきを生じながらも、しきい値Fth1よりも小さい値を保っている。状態診断部1006は、特徴量がしきい値Fth1を下回っている場合には、機械装置1008が正常である旨の診断を下し、その診断結果を出力する。
また、図7の例では、時間の経過と共に特徴量の平均的な値が徐々に増加していき、時刻Tta1で特徴量がしきい値Fth1を上回っている。この場合、状態診断部1006は、時刻Tta1で機械装置1008に異常が生じたという診断を下し、その診断結果を出力する。
しきい値Fth1の決め方は様々である。例えば過去の別の機械装置に異常が生じた際の特徴量に基づいて、しきい値Fth1を決定してもよい。また、機械装置1008の運用を開始した直後の特徴量を参考にして、しきい値Fth1を決定してもよい。また、しきい値Fth1は、動的に設定してもよい。例えば複数の機械装置1008を運用しながら、それらの特徴量を個別に計算し、装置ごとの特徴量のばらつきを考慮して定期的にしきい値Fth1を変更してもよい。また、機械装置1008の特性を考慮したシミュレーション等で求めた特徴量に基づいて、しきい値Fth1を決定してもよい。また、本実施の形態において、しきい値Fth1は、正常な状態の上限値を表しているが、より小さな値が異常を示す特徴量を用いる場合は、正常な状態の下限値をしきい値Fth1として設定してもよい。更に、上限値及び下限値からなる2つのしきい値を併用してもよい。また、診断結果は一つである必要はなく、複数の特徴量に対して診断を実施し、特徴量毎に診断結果を出力してもよい。
また、本実施の形態では、特徴量が一度でもしきい値Fth1を超えた場合に、機械装置1008が異常であるという診断を下しているが、この手法に限定されない。ノイズ等の影響による誤った診断、即ち誤判定を減らすため、一定の期間の異常度の分布に基づいた検定(Statistical test)を行うなどの統計的な手法を採用してもよい。
以上に説明した処理により、図8に示すフローチャートが導かれる。図8は、実施の形態1における情報処理方法の説明に供するフローチャートである。
まず、センサデータ取得部1001は、機械装置1008の物理量を計測するセンサ1010から、第1時点から第N時点(Nは2以上の整数)までの各時点における物理量の計測値をセンサデータとして取得する(ステップS101)。内部変数保持部1002は、センサデータに基づいて時系列に順次計算される、Nよりも少ない個数の内部変数を保持する(ステップS102)。内部変数計算部1003は、第j+1時点(jは1からN−1までの整数)に対応する内部変数を、第j+1時点のセンサデータと第j時点に対応する内部変数とに基づいて計算する(ステップS103)。特徴量計算部1004は、第N時点の内部変数に基づいて第1時点から第N時点までのセンサデータに含まれる統計的な特徴を抽出した特徴量を計算する(ステップS104)。状態診断部1006は、特徴量に基づいて機械装置の状態を診断する(ステップS105)。
なお、図8のフローチャートでは省略したが、第1時点の内部変数を予め設定した最大値と最小値との間の値に決定する初期化処理を実行するステップが含まれていてもよい。
以上説明したように、実施の形態1における情報処理装置によれば、センサデータ取得部は、センサによって計測された機械装置の物理量の計測値を取得し、当該計測値のうちの第1時点から第N時点(Nは2以上の整数)までの計測値をセンサデータとして取得する。内部変数保持部は、センサデータに基づいて時系列に順次計算される、Nよりも少ない個数の内部変数を保持する。内部変数計算部は、第j+1時点(jは1からN−1までの整数)に対応する内部変数を、第j+1時点のセンサデータと第j時点に対応する内部変数とに基づいて計算する。特徴量計算部は、第N時点の内部変数に基づいて第1時点から第N時点までのセンサデータに含まれる統計的な特徴を抽出した特徴量を計算する。このように構成された情報処理装置によれば、Nよりも少ない個数の内部変数を保持することにより、第1時点から第N時点までのセンサデータを保持する必要がない。これにより、計算能力の高い計算機及び記憶容量の大きな計算機を用いることなく、特徴量の計算処理が可能になるという従来にない顕著な効果が得られる。
また、実施の形態1における情報処理装置は、特徴量に基づいて機械装置の状態を診断する状態診断部を備える。これにより、計算能力の高い計算機及び記憶容量の大きな計算機を用いることなく、機械装置の状態を診断するための情報処理を実施することができる。
なお、実施の形態1における情報処理装置は、第1時点の内部変数を予め設定した最大値と予め設定した最小値との間の値に決定する初期化処理を実行する初期化処理部を備えていてもよい。このような初期化処理部を備えることにより、誤判定の確率を低減させ、診断処理の精度を高めることができる。
また、実施の形態1における情報処理方法によれば、第1ステップでは、機械装置の物理量を計測するセンサから、第1時点から第N時点(Nは2以上の整数)までの各時点における物理量の計測値がセンサデータとして取得される。第2ステップでは、センサデータに基づいて時系列に順次計算される、Nよりも少ない個数の内部変数が保持される。第3ステップでは、第j+1時点(jは1からN−1までの整数)に対応する内部変数が、第j+1時点のセンサデータと第j時点に対応する内部変数とに基づいて計算される。第4ステップでは、第N時点の内部変数に基づいて第1時点から第N時点までのセンサデータに含まれる統計的な特徴を抽出した特徴量が計算される。第5ステップでは、特徴量に基づいて機械装置の状態が診断される。このような、第1から第5ステップの処理を含む情報処理方法によれば、Nよりも少ない個数の内部変数が保持されるので、第1時点から第N時点までのセンサデータを保持する必要がない。これにより、計算能力の高い計算機及び記憶容量の大きな計算機を用いることなく、機械装置の状態を診断するための情報処理を実施できるという従来にない顕著な効果が得られる。
なお、実施の形態1における情報処理方法には、上記第1から第5ステップの他、第1時点の内部変数を予め設定した最大値と予め設定した最小値との間の値に決定する初期化処理を実行するステップが含まれていてもよい。このような初期化処理のステップを含むことにより、誤判定の確率を低減させ、診断処理の精度を高めることができる。
実施の形態2.
図9は、実施の形態2における情報処理装置2000を含む情報処理システム100Aの構成例を示す図である。図9に示す情報処理システム100Aでは、図1に示す情報処理システム100の構成において、情報処理装置1000が情報処理装置2000に置き替えられ、装置制御部1099が装置制御部2099に置き替えられている。情報処理装置2000では、センサデータ取得部1001がセンサデータ取得部2001に置き替えられ、内部変数計算部1003が内部変数計算部2003に置き替えられ、特徴量計算部1004が特徴量計算部2004に置き替えられている。その他の構成は、図1に示す情報処理システム100と同一又は同等である。なお、同一又は同等の構成部には同一の符号を付すと共に、重複する説明は省略する。
センサデータ取得部2001は、センサデータ取得部1001の処理に加え、動作信号に基づいて内部変数を更新するか否かを決定するための計算許可フラグを生成する。より一般化して説明すると、センサデータ取得部2001は、センサデータを取得する時間の間隔である取得周期、機械装置1008の動作の状況を表す動作信号、センサデータにおけるデータ値のうちの少なくとも一つに基づいて第1時点から第j時点(jは1からN−1までの整数(但し、Nは2以上の整数))までの間の2点以上の時点を決定し、決定した2点以上の時点に基づいて内部変数を更新するための計算許可フラグを生成する。
内部変数計算部2003は、内部変数計算部1003の処理に加え、計算許可フラグに内部変数を更新する旨の内容が含まれている場合に内部変数を更新する。一方、計算許可フラグに内部変数を更新する旨の内容が含まれていない場合、内部変数計算部2003は、内部変数の値に前回時刻のものを引き継がせる処理を行う。より一般化して説明すると、内部変数計算部2003は、計算許可フラグの示す各第u時点(uは1以上、且つj以下の整数(但し、jは1からN−1までの整数、且つNは2以上の整数))について、第u+1時点の内部変数を、第u時点の内部変数の値に決定する。
特徴量計算部2004は、特徴量計算部1004の処理に加え、計算許可フラグに特徴量を更新する旨の内容が含まれている場合に特徴量を更新する。計算許可フラグに特徴量を更新する旨の内容が含まれていない場合、特徴量計算部2004は、特徴量に前回時刻のものを引き継がせる処理を行う。
情報処理装置2000の外部にある装置制御部2099は、装置制御部1099の処理に加え、機械装置1008の動作の状況を表す動作信号を出力する。機械装置1008が、例えばモータにより駆動される機械装置の場合、速度が一定の場合の特徴量を用いたときにノイズが少ないセンサデータが得られ、機械装置1008の状態を高精度に推定できることがある。そのため、モータ1009の速度が一定となっている場合にのみ内部変数や特徴量の値を更新するように構成することで、機械装置1008の状態診断に更に有用な特徴量を計算できるようになる。
次に、前述の方法を用いてセンサデータの一つであるモータトルクの特徴量を逐次的に計算した結果について、図10を参照して説明する。図10は、実施の形態2におけるモータトルク及び各種の特徴量の時系列の波形を示す図である。
図10(a)には、図5(a)に示したモータ速度の時系列の波形と同じものが示されている。また、図10(b)には、センサデータ取得部2001が決定した計算許可フラグの時系列の波形が示されている。
計算許可フラグの結果の示し方の例として、内部変数を更新する場合にフラグ値を“1”とし、更新しない場合にフラグ値を“0”とすることが挙げられる。センサデータ取得部2001は、速度が“0“ではなく、且つ一定である場合に内部変数が更新されるように、時刻Tr2から時刻Tr3までの期間Teで計算許可フラグのフラグ値を“1”としている。また、期間Te以外、即ち期間Ts1、期間Ta、期間Td及び期間Ts2において、センサデータ取得部2001は、計算許可フラグのフラグ値を“0”としている。なお、図9では、速度一定の例を500[r/min]としている。
速度が0の場合に内部変数を更新しない理由の一つに、モータ1009が停止している際は機械装置1008が動作せず、機械装置1008の状態に応じた情報がセンサデータに現れないことが挙げられる。但し、機械装置1008の構成によっては、モータ1009が停止している際にも機械装置1008の状態に応じた情報がセンサデータに現れる場合がある。このような場合には、停止時にも内部変数が更新されるよう構成されていてもよい。なお、計算許可フラグのフラグ値が“0”の際の動作は、内部変数及び特徴量が変化しなければよく、例えば今回の値に前回の値を上書きするように計算を実施しても、計算自体をスキップしてもよい。
次に、計算許可フラグの決定方法として、機械装置1008の動作の状況を表す動作信号から決定した例を示す。本例では、モータの速度及び加速度の2つを動作信号として用いる。モータの加速度の絶対値が小さく、且つ速度の絶対値が大きい場合、計算許可フラグのフラグ値を“1”にする。基準となる加速度及び速度は、機械装置1008又はモータ1009の諸元等を参考に、予め定めておくのがよい。動作信号は、装置制御部2099から得られる。
また、モータ1009の動作が予め決められている場合には、モータ速度を参照しなくてもよい。例えば、モータ1009が動き始めてから予め定めた時刻になった際に計算許可フラグのフラグ値を“1”にし、更に予め定めた別の時刻の経過後に計算許可フラグのフラグ値を“0”にするようにしてもよい。これらの処理を行う場合、センサデータを取得する時間間隔であるサンプリング周期を参照することができる。
図10(c)には、図5(b)に示したものと同様のモータトルクの時系列波形が示されている。また、図10(c)には、図6(a)に示したものと同じ特徴量の時系列波形が示されている。また、図10(d)には、図6(b)に示したものと同じ特徴量の時系列波形が示されている。
図10(c)、(d)の何れの特徴量も、期間Teを除く期間Ts1、期間Ta、期間Td及び期間Ts2では値が変化していない。これは、図10(c)の計算許可フラグが示すように、期間Teを除く期間では内部変数及び特徴量の更新が実施されないよう、内部変数計算部2003及び特徴量計算部2004が構成されているためである。一方、期間Teでは、何れの特徴量も随時更新されており、期間Teの終了時点である時刻Tr3までに、ほぼ一定値に収束している。このような構成によれば、実施の形態1の効果に加え、機械装置1008の状態を更に高精度に推定することができる。
以上説明したように、実施の形態2における情報処理装置によれば、センサデータ取得部は、センサデータを取得する時間の間隔である取得周期、機械装置の動作の状況を表す動作信号、及びセンサデータにおけるデータ値のうちの少なくとも一つに基づいて第1時点から第j時点までの間の2点以上の時点を決定し、決定した2点以上の時点に基づいて計算許可フラグを生成する。内部変数計算部は、計算許可フラグの示す各第u時点(uは1以上、且つ前記j以下の整数)について、第u+1時点の内部変数を、第u時点の内部変数の値に決定する。このように構成された情報処理装置によれば、機械装置の動作状況に応じてノイズが少ないセンサデータを得ることができる。これにより、実施の形態1の効果を得た上で、更に機械装置の状態を高精度に推定できるという効果が得られる。
実施の形態3.
図11は、実施の形態3における情報処理装置3000を含む情報処理システム100Bの構成例を示す図である。図11に示す情報処理システム100Bでは、図9に示す情報処理システム100Aの構成において、情報処理装置2000が情報処理装置3000に置き替えられている。情報処理装置3000では、センサデータ取得部2001がセンサデータ取得部3001に置き替えられ、初期化処理部1005が初期化処理部3005に置き替えられている。その他の構成は、図9に示す情報処理システム100Aと同一又は同等である。なお、同一又は同等の構成部には同一の符号を付すと共に、重複する説明は省略する。
センサデータ取得部3001は、図1に示すセンサデータ取得部1001の処理に加え、内部変数を初期化する時点を決めるための初期化トリガを生成する。より一般化し、且つより具体的に説明すると、センサデータ取得部3001は、センサデータを取得する時間の間隔である取得周期、機械装置1008の動作の状況を表す動作信号、及びセンサデータのうちの少なくとも一つに基づいて第1時点から第N時点までの間の1点以上の時点を決定し、決定した1点以上の時点に基づいて内部変数を初期化するための初期化トリガを生成する。
初期化処理部3005は、初期化処理部1005の処理に加え、初期化トリガの示す時点に基づいて内部変数の初期化処理を実施する。
機械装置1008が、例えばモータ1009により駆動される機械装置の場合、加速中、一定速度で回転中、減速中、停止中などといった運転状況毎に特徴量の傾向が異なる場合がある。このような場合、運転状況毎に特徴量の計算を切り分けた方が、機械装置1008の状態を高精度に推定できることがある。そのため、モータ1009の速度変化が変更される時点など、運転状況が変わる時点で内部変数を初期化することで、機械装置1008の状態推定に更に有用な特徴量を計算できるようになる。
次に、前述の方法を用いてセンサデータの一つであるモータトルクの特徴量を逐次的に計算した結果について、図12を参照して説明する。図12は、実施の形態3におけるモータトルク及び各種の特徴量の時系列の波形を示す図である。
図12(a)には、図5の(a)に示したモータ速度の時系列の波形と同じものが示されている。また、図12(b)には、センサデータ取得部3001が決定した、初期化トリガの時系列の波形が示されている。
初期化トリガの結果の示し方の例として、内部変数を初期化する場合に信号レベルを“1”とし、初期化しない場合に信号レベルを“0”とすることが挙げられる。センサデータ取得部3001は、モータ速度の変化、即ち加速度が生じた時点で内部変数を初期化するように、時刻Tr1、時刻Tr2、時刻Tr3及び時刻Tr4で初期化トリガの信号レベルを“1”とし、それ以外の時刻で信号レベルを“0”としている。
次に、初期化トリガの決定方法として、機械装置1008の動作の状況を表す動作信号から決定した例を示す。本例では、モータのジャーク、即ち加速度の時間微分値を動作信号として用いる。モータのジャークの絶対値が大きい場合、初期化トリガの信号レベルを“1”にしている。基準となるジャークの大きさは、機械装置1008又はモータ1009の諸元等を参考に、予め定めておくのがよい。動作信号は、装置制御部2099から得られる。
また、モータ1009の動作が予め決められている場合には、モータ速度を参照せずともよい。例えば、モータ1009が動き始めてから予め定めた時刻になった際に、瞬間的に初期化トリガの信号レベルを“1”とするように構成してもよい。或いは、特定の時間が経過する毎に初期化トリガの信号レベルを瞬間的に“1”にするよう構成してもよい。これらの処理を行う場合、センサデータを取得する時間間隔であるサンプリング周期を参照することができる。
また、モータ1009の動作開始から停止までの一連のセンサデータ毎に特徴量を計算したい場合、モータ1009が動き出した時点で初期化処理を実施するように、初期化トリガを決定してもよい。このように構成することで、モータの移動距離が長い動作と、短い動作とを一律に1回の位置決め動作として扱うことができる。
図12(c)には、図5(b)に示したものと同様のモータトルクの時系列波形が示されている。また、図12(c)には、図6(a)に示したものと同じ特徴量の時系列波形が示されている。また、図12(d)には、図6(b)に示したものと同じ特徴量の時系列波形が示されている。
図10(c)、(d)の何れの特徴量も、時刻Tr0、時刻Tr1、時刻Tr2、時刻Tr3及び時刻Tr4の直後に値が変化し始め、各期間Ts1、期間Ta、期間Te、期間Td及び期間Ts2が終わるまでに、各特徴量はほぼ一定値に収束している。このような構成によれば、実施の形態1の効果に加え、機械装置1008の状態を更に高精度に推定することができる。また、実施の形態2の効果に加え、モータ1009が一定速度を持たない条件で運転する場合にも適用できるので、適用範囲を拡大することができる。
以上説明したように、実施の形態3における情報処理装置によれば、センサデータ取得部は、センサデータを取得する時間の間隔である取得周期、機械装置の動作の状況を表す動作信号、及びセンサデータにおけるデータ値のうちの少なくとも一つに基づいて第1時点から第j時点までの間の1点以上の時点を決定し、決定した1点以上の時点に基づいて内部変数を初期化するための初期化トリガを生成する。初期化処理部は、初期化トリガに基づいて内部変数を初期化する処理を実行する。このように構成された情報処理装置によれば、運転状況毎に特徴量の計算を切り分けることができる。これにより、実施の形態1の効果を得た上で、更に、機械装置の状態を高精度に推定できるという効果が得られる。また、モータが一定速度を持たない条件で運転する場合にも適用できるので、実施の形態2の効果を得た上で、更に運転条件に関する適用範囲を拡大できるという効果が得られる。
実施の形態4.
図13は、実施の形態4における情報処理装置4000を含む情報処理システム100Cの構成例を示す図である。図13に示す情報処理システム100Cでは、図11に示す情報処理システム100Bの構成において、情報処理装置3000が情報処理装置4000に置き替えられている。情報処理装置4000では、内部変数計算部1003が内部変数計算部4003に置き替えられ、特徴量計算部1004が特徴量計算部4004に置き替えられ、状態診断部1006が状態診断部4006に置き替えられている。また、新たに収束度計算部4007が設けられている。その他の構成は、図11に示す情報処理システム100Bと同一又は同等である。なお、同一又は同等の構成部には同一の符号を付すと共に、重複する説明は省略する。
内部変数計算部4003は、内部変数計算部1003の処理に加え、忘却係数に基づいて内部変数を計算する。特徴量計算部4004も同様に、特徴量計算部1004の処理に加え、当該忘却係数に基づいて特徴量を計算する。忘却係数は、時刻が古いセンサデータが特徴量に与える影響よりも、時刻が新しいセンサデータが特徴量に与える影響の方が大きくなるように重みをつけるための係数であり、0より大きく1より小さい値を有している。
収束度計算部4007は、内部変数に基づいて、特徴量の計算の収束の度合いを定量的に示す指標である収束度を計算する。状態診断部4006は、収束度計算部4007が計算した収束度が一定の条件を満たす時点の特徴量を基に、機械装置1008の状態を診断する。
次に、内部変数計算部4003及び特徴量計算部4004の処理について詳細に説明する。特徴量の具体的な例として、指数移動平均値、指数移動分散、指数移動標準偏差、指数移動二乗平均平方根、指数移動歪度及び指数移動尖度を用いたときの、各特徴量の逐次計算方法を、その導出手順と共に示す。
まず、特徴量の一例として、指数移動平均の逐次計算に関する計算手順を示す。前述した平均値とは異なり、時刻毎に持たせた重みを考慮した重み付き平均値が知られている。重み付き平均値の例として、忘却係数λを乗じた重みが付与された重み付きのセンサデータを平均する方法がある。忘却係数λは、前述したように、時刻が古いセンサデータに与える影響よりも、時刻が新しいセンサデータに与える影響の方が大きくなるように重み付けするための係数である。以降、この処理を指数移動平均と呼び、その値を指数移動平均値と呼ぶ。指数移動平均値は、指数平滑移動平均値と呼ばれることもある。また、“1”から忘却係数λを減じた“1−λ”を平滑化係数と呼ぶ場合もある。
まず、第1時点から第j時点までのセンサデータx1〜xjに対する指数移動平均値m'jは、以下の数式(51)で定義される。
例えば、λ=0.9と設定した場合、第3時点の指数移動平均値m'3は、以下の数式(52)のように表せる。
忘却係数λを用いた指数移動平均では、上記のように古いデータよりも最近のデータにおける係数が大きくなっている(0.81<0.9<1)。これは平均を算出する際に最近のデータ、即ち時刻の新しいデータを重視しているといえる。忘却係数λが0に近いほど古いデータを忘れ易くなり、逆に1に近いほど古いデータを忘れにくくなる。
次に、指数移動平均値の逐次計算方法を考える。第1時点から第j+1時点までのセンサデータx1〜xj+1に対する指数移動平均値m'j+1は、以下の数式(53)のように変形できる。
即ち、第j+1時点の指数移動平均値m'j+1は、以下の数式(54)で逐次的に求められる。
ここで、センサデータxj+1は、第j+1時点で新しく取得される。また、第j+1時点の変数L'jは、以下の数式(55)で表せる。
更に、変数L'jの逐次計算の方法を考える。第j+1時点の変数L'j+1は、以下の数式(56)のように表せる。
即ち、第j+1時点の変数L'j+1は、以下の数式(57)で逐次的に計算できる。
結果として、第j+1時点の指数移動平均値m'j+1を計算するのに保持しておくべき内部変数は、第j時点の指数移動平均値m'j及び変数L'jである。
第2時点の内部変数を計算する際、簡単のため、変数L'j及び指数移動平均値m'jの初期値L'1,m'1は0とするか、初期化処理直後の変動を避けるため、初期化処理時のセンサデータの値等に応じて決定するのがよい。
次に、予め設定する忘却係数λの決定方法に関して説明する。忘却係数λは0より大きく、1より小さい値に設定するのが望ましい。忘却係数λは、1に近い場合に過去の情報を忘れにくく、0に近い場合に過去の情報を忘れ易くなる。忘却係数λを1にすると、センサデータの情報を忘却せず、逐次計算の数式は実施の形態1と一致する。また、忘却係数を0にすると、時刻が一つ経過した際に全てのセンサデータの情報を忘れるため、2つ以前過去のセンサデータに対する特徴量は求まらない。多くの場合、忘却係数は1に近く、且つ1未満の値、例えば0.9から0.999程度の値に設定するのがよい。忘却係数λを用いた指数移動平均等を計算する場合、センサデータを特徴量に反映する重みの多くは、時定数と呼ぶ直近の短い期間に集中する。ここで時定数τは、以下の数式(58)で計算できる。
上記数式(58)において、「dt」はサンプリング周期を表している。また、直近の特定の時間帯のセンサデータに対して多くの重みを付けて特徴量を計算したい場合には、「λ=1−dt/τ」の数式に用いて忘却係数λを決定してもよい。この数式は、上記数式(58)を変形したものである。
例えば、直近の20ミリ秒のセンサデータに対して多くの重みを付けて特徴量を計算したい場合には、時定数を20msとする。このとき、サンプリング周期が0.5msであれば、忘却係数λ=0.975となる。また、時定数τに代えて、時定数τの逆数である推定周波数(単位rad/s)を用いて忘却係数λを設定することとしてもよい。
次に、特徴量の一例として、指数移動分散の逐次計算に関する計算手順を示す。前述のように、時刻毎に忘却係数λを乗じて重みを付加された重み付きセンサデータを用いた分散を「指数移動分散」と呼ぶ。
まず、センサデータを確率変数と見なすと、その分散は前述の数式(9)で表せるということが知られている。そのため、第j時点の指数移動分散v'jは、以下の数式(59)で表せる。
従って、第1時点から第j+1時点までのセンサデータx1〜xj+1に対する指数移動分散v'j+1は、以下の数式(60)で表せる。
上記の数式(60)を変形すると、指数移動分散v'j+1は、以下の数式(61)で表せる。
上記の数式(59)と数式(61)とから、以下の数式(62)が導かれる。
従って、上記の数式(62)より、第j+1時点の指数移動分散v'j+1は、以下の数式(63)で逐次的に求められる。
上記のように、第j+1時点の変数L'j+1は、前述の数式(57)で逐次的に求められる。また、第j+1時点の指数移動平均値m'j+1は、前述の数式(54)で逐次的に求められる。そして、第j+1時点のセンサデータxj+1は、第j+1時点で新しく取得される。結果として、第j+1時点の指数移動分散v'j+1を求めるために第j時点で保持すべき内部変数は、変数L'j、指数移動分散v'j及び指数移動平均値m'jである。なお、指数移動分散v'jに代えて、後述の指数移動標準偏差s'jを保持してもよい。
第2時点の内部変数を計算する際、簡単のため、変数L'、指数移動分散v'及び指数移動平均m'の初期値L'1,v'1,m'1は0とするか、初期化処理直後の変動を避けるため、初期化処理時のセンサデータの値等に応じて決定するのがよい。
次に、特徴量の一例として、指数移動標準偏差s'jの逐次計算に関する計算手順を示す。前述のように、時刻毎に忘却係数λを乗じて重みを付加された重み付きセンサデータを用いた標準偏差を「指数移動標準偏差」と呼ぶ。
まず、第1時点から第j時点までのセンサデータx1〜xjに対する指数移動標準偏差s'jは、指数移動分散v'jから以下の数式(64)で定義される。
即ち、指数移動標準偏差s'jは、前述の手順で逐次的に求めた指数移動分散v'jから直ちに求まる。そのため、指数移動標準偏差s'jを逐次的に計算するために保持すべき内部変数は、指数移動分散v'jと同じである。
次に、特徴量の一例として、指数移動二乗平均平方根の逐次計算に関する計算手順を示す。前述のように、時刻毎に忘却係数λを乗じて重みを付加された重み付きセンサデータを用いた二乗平均平方根を「指数移動二乗平均平方根」と呼ぶ。
まず、第1時点から第j時点までのセンサデータx1〜xjに対する指数移動二乗平均平方根r'jは、以下の数式(65)で定義される。
従って、第1時点から第j+1時点までのセンサデータx1〜xj+1に対する指数移動二乗平均平方根r'j+1は、以下の数式(66)のように表せる。
上記の数式(65)と数式(66)とから、指数移動二乗平均平方根の二乗r'j+1 2は、以下の数式(67)のように表せる。
上記の数式(67)より、第j+1時点の指数移動二乗平均平方根の二乗r'j+1 2は、以下の数式(68)で逐次的に求められる。
上記のように、第j+1時点の変数L'j+1は、前述の数式(57)で逐次的に求められる。また、センサデータxj+1は、第j+1時点で新しく取得される。結果として、第j+1時点の指数移動二乗平均平方根の二乗r'j+1 2を求めるために第j時点で保持すべき内部変数は、指数移動二乗平均平方根の二乗r'j 2及び変数L'jである。
第2時点の内部変数を計算する際、簡単のため、変数L'j及び指数移動二乗平均平方根の二乗r'j 2の初期値L'1,r'1は0とするか、初期化処理直後の変動を避けるため、初期化処理時のセンサデータの値等に応じて決定するのがよい。
次に、特徴量の一例として、指数移動歪度の逐次計算に関する計算手順を示す。前述のように、時刻毎に忘却係数λを乗じて重みを付加された重み付きセンサデータを用いた歪度を「指数移動歪度」と呼ぶ。
前述の数式(20)より求められた数式(22)を参照すると、第1時点から第j時点までのセンサデータx1〜xjに対する指数移動歪度w'jは、以下の数式(69)で表せる。
また、上記の数式(69)の指数移動平均値m'jに関しては前述の数式(54)で逐次的に計算でき、上記の数式(69)の指数移動標準偏差s'jに関しては前述の数式(63)、(64)で逐次的に計算できる。
次に上記数式(69)の第j時点の変数A'j,B'jに関する逐次計算を考える。まず、第j時点の変数A'j,B'jは、以下の数式(70)、(71)で表せる。
また、第j+1時点の変数A'j+1は、以下の数式(72)で表せる。
上記の数式(72)から、変数A'j+1は、以下の数式(73)ように表せる。
上記の数式(73)より、第j+1時点の変数A'j+1は、以下の数式(74)で逐次的に求められる。
ここで、第j+1時点の変数を求めるために第j時点で保持すべき内部変数は、変数L'j,A'jである。また、第j+1時点の変数L'j+1は前述の数式(57)で逐次的に求められる。また、第j時点の変数B'jは、以下の数式(75)で表せる。
ここで、上記の数式(75)のように、変数B'jは、前述の指数移動二乗平均平方根の二乗r'j 2と一致することが分かり、これは前述の数式(68)で逐次的に求められる。従って、第1時点から第j時点までのセンサデータx1〜xjに対する指数移動歪度w'jは、以下の数式(76)で求まる。
同様に、第1時点から第j+1時点までのセンサデータx1〜xj+1に対する指数移動歪度w'j+1は、以下の数式(77)で求まる。
上記のように、第j+1時点の変数A'j+1は、前述の数式(74)で逐次的に求められる。また、第j+1時点の指数移動平均値m'j+1は前述の数式(54)で逐次的に求められる。そして、第j+1時点の指数移動二乗平均平方根の二乗r'j 2は、前述の数式(68)で逐次的に求められる。また、第j+1時点の指数移動標準偏差s'j+1は前述の数式(64)で逐次的に求められる。そして、第j+1時点のセンサデータxj+1は、第j+1時点で新しく取得される。結果として、第1時点から第j+1時点までのセンサデータxj+1に対する指数移動歪度w'j+1を求めるために、第j時点で保持すべき内部変数は、変数A'j,L'j、指数移動平均値m'j、指数移動二乗平均平方根の二乗r'j 2及び指数移動標準偏差s'jである。指数移動標準偏差s'jに代えて指数移動分散v'jを保持してもよい。また、指数移動二乗平均平方根の二乗r'j 2に代えて指数移動二乗平均平方根r'jを保持してもよい。
なお、数式が煩雑になるため割愛するが、逐次計算のための変数A'jに代えて、指数移動歪度w'jを保持しても同様の計算結果が得られる数式が求まる。また、第2時点の内部変数を計算する際、簡単のため、変数A'j,L'j、及び指数移動平均値m'j、指数移動二乗平均平方根の二乗r'j 2、指数移動標準偏差s'jの各初期値は0とするか、初期化処理直後の変動を避けるため、初期化処理時のセンサデータの値等に応じて決定するのがよい。
次に、特徴量の一例として、指数移動尖度の逐次計算に関する計算手順を示す。前述のように、時刻毎に忘却係数λを乗じて重みを付加された重み付きセンサデータを用いた尖度を「指数移動尖度」と呼ぶ。
前述の数式(30)より求められた数式(32)を参照すると、第1時点から第j時点までのセンサデータx1〜xjに対する指数移動尖度k'jは、以下の数式(78)で表せる。
ここで、第j時点の変数C'jは、以下の数式(79)で表せる。
また、上記の数式(78)の変数A'j,B'j、指数移動平均値m'j、指数移動標準偏差s'jに関しては、前述の数式(54)、(63)、(64)、(68)、(74)、(75)で逐次的に計算できる。
次に上記数式(79)の第j時点の変数C'jに関する逐次計算を考える。まず、第j+1時点の変数C'j+1は、以下の数式(80)で表せる。
上記の数式(79)と数式(80)とから、変数C'j+1は、以下の数式(81)のように表せる。
上記の数式(81)より、第j+1時点の変数C'j+1は、以下の数式(82)で逐次的に求められる。
ここで、上記の数式(75)のように、変数B'jは、前述の指数移動二乗平均平方根の二乗r'j 2と一致し、指数移動二乗平均平方根の二乗r'j 2は、前述の数式(68)で逐次的に求められる。従って、第1時点から第j時点までのセンサデータx1〜xjに対する指数移動尖度k'jは、以下の数式(83)で求まる。
同様に、第1時点から第j+1時点までのセンサデータx1〜xj+1に対する指数移動尖度k'j+1は、以下の数式(84)で求まる。
上記のように、第j+1時点の変数C'j+1は、前述の数式(82)で逐次的に求められる。また、第j+1時点の変数A'j+1は前述の数式(74)で逐次的に求められる。そして、第j+1時点の指数移動平均値m'j+1は前述の数式(54)で逐次的に求められる。また、第j+1時点の指数移動二乗平均平方根の二乗r'j+1 2は前述の数式(68)で逐次的に求められる。また、第j+1時点の指数移動標準偏差s'j+1は前述の数式(63)、(64)で逐次的に求められる。そして、第j+1時点のセンサデータxj+1は、第j+1時点で新しく取得される。結果として、第1時点か指数移動二乗平均平方根の二乗r'j 2は、前述の数式(68)で逐次的に求められる。ら第j+1時点までのセンサデータxj+1に対する指数移動尖度k'j+1を求めるために、第j時点で保持すべき内部変数は、変数A'j,L'j、指数移動平均値m'j、指数移動二乗平均平方根の二乗r'j 2及び指数移動標準偏差s'jである。指数移動標準偏差s'jに代えて指数移動分散v'jを保持してもよい。また、指数移動二乗平均平方根の二乗r'j 2に代えて指数移動二乗平均平方根r'jを保持してもよい。
なお、数式が煩雑になるため割愛するが、逐次計算のための変数A'jに代えて、指数移動歪度w'jを保持しても同様の計算結果が得られる数式が求まる。また、第2時点の内部変数を計算する際、簡単のため、変数A'j,L'j、及び指数移動平均値m'j、指数移動二乗平均平方根の二乗r'j 2、指数移動標準偏差s'jの各初期値は0とするか、初期化処理直後の変動を避けるため、初期化処理時のセンサデータの値等に応じて決定するのがよい。
また、センサデータが正規分布に近い性質を持つことが分かっている場合、指数移動尖度k'jは3程度の値になることが知られている。そのため、指数移動尖度k'jの初期値k'1を3としてもよい。
また、直近の時間に重みをつけた最大値、最小値、ピークピーク値、ピーク値及び波高率(以下、適宜「最大値等」と呼ぶ)の計算に関しては、実施の形態1で示したような、前回の最大値等から今回の最大値等を更新することはできない。しかしながら、例えば最大値等となる可能性が高い候補値を内部変数として幾つか保持しておき、規定の時刻が経過したら保持した候補値を削除するという手順を踏めばよい。このようにすれば、直近の時間のセンサデータに対応する最大値等を計算することができる。
次に、収束度計算部4007の動作に関する計算手順を示す。忘却係数λを用いた特徴量の逐次計算では、内部変数から逐次計算の収束度合いを定量的に表す収束度を計算することができる。例えば、内部変数の一つである変数L'jは、数式(57)で逐次的に計算されることから、入力されるセンサデータに関係なく、1/(1−λ)の値へ漸近することが分かる。そのため、変数L'jの初期値L'1を0以上、且つ1/(1−λ)未満とした場合に、収束度が0から1までの値をとれるように、以下の数式(85)で収束度diを定義することが考えられる。
本実施の形態では、上記の数式(85)を使って収束度を計算するが、収束度は上記に限るものではなく、計算の収束に伴い増加する値であればどのような定義のものでもよい。但し、計算の収束に伴って値が単調増加し、特定の値に漸近するものが基準として利用しやすい。例えば、上記の数式(85)の右辺全体をM乗(Mは正の実数)した、{(1−λ)L'j}Mを収束度と定義する。この収束度は、0から1までの値をとり、且つ計算の収束に伴って単調増加するので好ましい定義式である。
次に、前述の方法を用いてセンサデータの一つであるモータトルクの特徴量を逐次的に計算した結果について、図14を参照して説明する。図14は、実施の形態4におけるモータトルク及び各種の特徴量の時系列の波形を示す図である。
図14(a)には、図5の(a)に示したモータ速度の時系列の波形と同じものが示されている。また、図14(b)には、図12(b)に示した初期化トリガの時系列の波形と同じものが示されている。
図14(c)には、収束度計算部4007が数式(85)を用いて計算した収束度の時系列の波形が示されている。逐次計算が始まった時刻Tr0、初期化トリガが“1”を示した、時刻Tr1、時刻Tr2、時刻Tr3及び時刻Tr4で、収束度は0になっている。これらは、初期化処理が実行され、内部変数の一つである第j時点の変数L'jが0になったためである。ここで、第j時点は、初期化トリガが“1”を示した時点を指している。収束度は、各初期化処理が実施された以降に増加し、徐々に1に漸近している。
図14(d)には、図5の(b)に示したものと同様のモータトルクの時系列波形が示されている。また、図14(d)には、モータトルクと同じ単位[Nm]を持つ、指数移動平均値、指数移動標準偏差及び指数移動二乗平均平方根(RMS)の時系列の波形を示している。なお、図が煩雑になるのを避けるため「指数移動」の表記は省略している。
図14(e)には、無次元の特徴量、即ち単位を持たない特徴量である、指数移動歪度及び指数移動尖度の時系列の波形を示している。ここで、忘却係数λは0.975としている。また、図14(d)と同様に、「指数移動」の表記は省略している。次に、図14(d)、(e)の逐次計算された各特徴量の挙動に関して説明する。
指数移動平均値は、時刻Tr0から時刻Tr5までの全期間に渡って、モータトルクに僅かに遅れつつも、モータトルクに追従している。これは、直近の短時間のモータトルクに対して大きな重みを付けて平均値を計算する本実施の形態の性質を示している。
指数移動標準偏差は、期間Ts1では、ほぼ一定の小さい値になっている。期間Ta、期間Te、期間Td及び期間Ts2では、初期化トリガが1になった直後に増加し、その後、次の初期化トリガが1になるまでの間減少し、ほぼ一定値に収束している。
指数移動二乗平均平方根(RMS)は、期間Ts1ではほぼ一定の小さい値になっている。期間Taでは、モータトルクの増加に伴い徐々に増加している。期間Teでは、ほぼ一定値に収束している。期間Tdでは、モータ1009の絶対値の増大に伴い徐々に増加している。期間Ts2では、ほぼ一定の小さい値に収束している。
指数移動歪度は、期間Ts1ではほぼ0になっている。これは、期間Ts1のモータトルクが左右対称の確率分布となっているためである。期間Taが始まる時刻Tr1では、歪度は一時的に正の値になり、その後負の値になっている。これは、モータトルクが0から増加したため、0付近の古いデータと増大後の新しいデータとが一時的に混在し、モータトルクの確率分布が乱れているためである。
また、指数移動歪度は、期間Teでは時刻Tr2の直後に一時的に正の値になり、その後ほぼ0に収束している。指数移動歪度は、期間Tdでは時刻Tr3の直後に一時的に正の値になり、その後ほぼ一定の値に収束している。指数移動歪度は、期間Ts2では時刻Tr4の直後に一時的に負の値になり、その後ほぼ0に収束している。
更に、指数移動尖度は、期間Ts1ではほぼ3程度の値になっている。値が3になるのは、正規分布に対する指数移動尖度の特性であり、期間Ts1でモータトルクが正規分布に近い性質をもっていたことを表している。指数移動尖度は、期間Taが始まる時刻Tr1の直後に負の値となり、その後の正の値になっている。更にその後、指数移動尖度は、時刻Tr2までにほぼ一定の値に収束している。これは、モータトルクが0から増加したため、0付近の古いデータと増大後の新しいデータとが一時的に混在し、モータトルクの確率分布が乱れているためである。
また、指数移動尖度は、期間Teが始まる時刻Tr2の直後に負の値となり、その後に正の値になっている。更にその後、指数移動尖度は、時刻Tr3までにほぼ一定の値に収束している。
また、指数移動尖度は、期間Tdが始まる時刻Tr3の直後に負の値となり、その後に正の値になっている。更にその後、指数移動尖度は、時刻Tr4までにほぼ一定の値に収束している。
また、指数移動尖度は、期間Ts2が始まる時刻Tr4の直後に負の値となり、その後に正の値になっている。更にその後、指数移動尖度は、時刻Tr5までに徐々に一定の値に収束しつつある。
次に、収束度計算部4007によって計算された収束度の挙動、及び状態診断部4006の動作に関して、図15を用いて説明する。図15は、図14に示す初期化トリガ及び収束度の時系列の波形を時刻Tr2から時刻Tr3までの期間に渡って拡大した図である。
図15において、時刻Tr2では初期化トリガが“1”を示しており、初期化処理が実行される。初期化処理が実行されると、内部変数の一つである第j時点の変数L'jが0になり、収束度が0になる。ここで、第j時点は初期化トリガが“1”を示した時点を指している。収束度は、初期化後に増加し、徐々に1に漸近している。
状態診断部4006は、収束度計算部4007が数式(85)を用いて計算した収束度が一定の条件を満たす時点での特徴量を基に、機械装置1008の状態を診断する。例えば、収束度に対してしきい値Cthを設定する。状態診断部4006は、収束度がしきい値Cthを超えている時点の特徴量を用いて機械装置1008の状態を診断する。ここで、しきい値Cthは、収束度が漸近する1に近い値に設定するのがよい。しきい値Cthの一例は0.99である。
ここで、しきい値Cthを超えた時点の時刻を「Tx」と表記する。また、収束度がしきい値Cthを超えない時刻Tr2から時刻Txまでの期間を「Tn」と表記する。また、収束度がしきい値Cthを超えた時刻TxからTr3までの期間を「Tc」と表記する。
状態診断部4006は、期間Tnにおいて計算された特徴量は機械装置1008の診断には用いず、期間Tcにおいて計算された特徴量を機械装置1008の診断に用いるのがよい。このような構成によれば、内部変数が初期化された場合に計算の結果が十分収束したときの特徴量を用いることができる。これにより、実施の形態3の効果に加え、機械装置の状態を更に高精度に推定できる。
以上説明したように、実施の形態4における情報処理装置は、実施の形態3の構成に対し、更に収束度計算部を備える。収束度計算部は、内部変数に基づいて、特徴量の計算の収束の度合いを定量的に示す指標である収束度を計算する。この構成により、内部変数が初期化された場合に計算の結果が十分収束したときの特徴量を用いることができる。これにより、実施の形態3の効果を得た上で、更に機械装置の状態を高精度に推定できるという効果が得られる。
実施の形態5.
図16は、実施の形態5における情報処理装置5000を含む情報処理システム100Dの構成例を示す図である。図16に示す情報処理システム100Dでは、図1に示す情報処理システム100の構成において、状態診断部1006が状態診断部5006に置き替えられている。その他の構成は、図1に示す情報処理システム100と同一又は同等である。同一又は同等の構成部には同一の符号を付すと共に、重複する説明は省略する。なお、本実施の形態では、状態診断部5006を図1に示す情報処理装置1000に適用する例で説明するが、図9、図11又は図13に示す、情報処理装置2000,3000,4000のうちの何れに適用してもよい。
図17は、実施の形態5における状態診断部5006の構成例を示す図である。状態診断部5006は、状態量取得部5401と、学習部5402と、異常度計算部5403と、意思決定部5404とを備える。状態量取得部5401は、特徴量を含む状態量を取得する。学習部5402は、機械装置1008が正常な状態の状態量に基づいて、機械装置1008の状態と特徴量との関係を学習する。異常度計算部5403は、学習部5402が学習した学習結果に基づいて機械装置1008の異常度合いを定量的に示す指標である異常度を計算する。意思決定部5404は、異常度計算部5403が計算した異常度に基づいて機械装置1008の状態を診断した診断結果を決定する。
次に、状態量取得部5401、学習部5402、異常度計算部5403及び意思決定部5404の動作について説明する。
状態量取得部5401は、特徴量と共に、機械装置1008に付与する設定値を含む情報を状態量として取得する。特徴量の一例として、前述の方法で逐次計算した歪度を用いることが考えられる。また、状態量の一つとして用いる機械装置1008の情報として、モータ速度の設定値を利用することが考えられる。図5(a)に示した例では、モータ速度の最大が500[r/min]となるよう装置制御部1099を設定している。本実施の形態では、モータ速度の設定値は500[r/min]であるとする。なお、本実施の形態では、状態量取得部5401への入力情報が、歪度及びモータ速度の設定値という2つの場合を例示するが、この例に限定されない。状態量取得部5401への入力情報は、3以上であってもよい。
図18は、実施の形態5における特徴量とモータ速度の設定値との関係を示す図である。図18には、特徴量の一例である歪度とモータ速度の設定値との組を1つのデータとして複数プロットしている。横軸はモータ速度の設定値であり、縦軸は歪度である。特徴量は複数でもよく、状態量は3次元の概念で表示されるものでもよい。また、モータ速度以外の状態量を用いてもよい。黒塗りの丸は、機械装置1008が正常な状態である正常データである。白塗りの丸は、機械装置1008に何らかの異常が発生した場合の異常データである。図18に示すように正常データとして、機械装置1008が正常な状態の状態量を数多く得ていることが望ましい。図18をみると、正常データは、モータ速度の設定値が大きいほど特徴量が大きくなる傾向にあることがわかる。一方、異常データは、モータ速度の設定値が比較的小さいにも関わらず、特徴量が比較的大きくなっている。
学習部5402及び異常度計算部5403の構成例として、主成分分析(principal component analysis)を用いた異常度の計算方法が知られている。主成分分析は、多次元のデータである状態量を分散の大きい方向から順に軸を取り直す方法である。主成分分析を用いた学習部5402は、予め得られている正常データの分散共分散行列の固有値及び固有ベクトルを計算し、元の状態量を主成分の空間に線形写像する。元の状態量をベクトルx、写像後のベクトルをyとすると、ベクトルxの写像は、以下の数式(86)で表せる。
学習部5402は、正常データを基に、この線形写像を表す行列である表現行列Aを決定する。学習部5402は、複数用意した正常データから求めた分散共分散行列に関する固有値及び固有ベクトルが複数得られる。得られた複数の固有値に関し、固有値が大きい順に対応する複数の固有ベクトルを並べる。そして、並べて作成された複数の固有ベクトルによる行列が表現行列Aとなる。本実施の形態の例で説明すると、2つの状態量を用いて2行1列の固有ベクトルが作成される。そして2行1列の固有ベクトルが2つ並べられて、2行2列の表現行列が作成される。なお、本例とは異なるが、得られた固有値の数より少ない固有ベクトルを並べて、表現行列を作成することで、写像後のベクトルの次元を、元の状態量のベクトルの次元よりも小さくしてもよい。
図19は、実施の形態5における主成分分析の結果を示す図である。図19には、図18のデータが再掲され、且つ固有値が最も大きい第1主成分の軸と、固有値が2番目に大きい第2主成分の軸とが示されている。固有値は、主成分分析の結果として得られる。また、図19には、主成分分析の結果を分かりやすくするために、第1主成分の軸と第2主成分の軸が交差する位置を中心に、各主成分の分散に対応する固有値に従って、楕円状の信頼区間が示されている。信頼区間は、データの分布がある確率で収まると期待される区間である。例えば、正常データの90%が収まると期待される90%信頼区間、正常データの99%が収まると期待される99%信頼区間などがある。信頼区間は、一般的な統計学の手法で計算できる。
図19において、正常データは99%信頼区間の内部にあるのに対し、異常データは99%信頼区間の外部に位置している。この異常データは、機械装置1008が正常であれば、1%程度の確率でしか生じないとされるデータと判断される。そのため、機械装置1008に異常が発生している可能性があると判断される。一方、主成分分析を用いずに単純に特徴量に対してしきい値を設けた場合、異常データが正常データの分布に収まってしまい、診断が困難となる場合がある。
実施の形態5の異常度計算部5403は、機械装置1008の異常の度合いを定量的に示す指標である異常度を計算する。異常度の例として、T2統計量と呼ばれる指標を用いる。T2統計量は、主成分分析による写像後のデータが各主成分の軸の中心座標からの距離を軸ごとの分散で標準化した指標である。各主成分の軸の中心座標からの距離は「マハラノビス距離」とも呼ばれる。
図20は、実施の形態5における主成分分析の異常度を示す図である。図20には、図19に示した正常データ、異常データ、90%信頼区間、99%信頼区間を前述の固有値を用いて標準化した場合の図が示されている。また、図20には、第1主成分の軸と第2主成分の軸とが交差する点と、異常データとの間の距離が異常度として示されている。また、図19では楕円状となっていた90%信頼区間及び99%信頼区間が、図20では円形になっている。図20のように、マハラノビス距離の概念を用いて図示すれば、正常時のデータのばらつきを考慮した異常度合いの判断が可能となる。
実施の形態5では、異常度計算部5403として、主成分分析で求めた主成分に写像後のT2統計量を用いて異常度を算出する方法を述べたが、この方法に限定されない。T2統計量の代わりに、Q統計量と呼ばれる指標を用いてもよい。また、主成分分析と同じように正常データを学習してその分布を覚え、新たなデータに対して異常度を算出可能な方法として、教師なし学習と呼ばれる様々な手法が存在する。例えば、1クラスサポートベクターマシン(One class Support Vector Machine)、マハラノビス・タグチ法(Mahalanobis Taguchi Method)、自己組織化写像(Self−Organizing Maps)等の方法を用いてもよい。また、必要に応じて、入力される状態量に正規化処理等の前処理を施してから異常度を計算してもよい。
実施の形態5の意思決定部5404は、前述の方法で計算した異常度を用いて機械装置1008の状態を診断した結果を決定する。意思決定部5404が、特徴量を用いて機械装置1008の状態を診断する手順について、図21を参照して説明する。図21は、実施の形態5における異常度の経年変化の様子の一例を示す図である。図21には、前述の方法で計算した異常度を定期的にプロットした結果が示されている。定期的とは、例えば一月毎である。図21の横軸は時間であり、機械装置1008の運用時間を表している。
意思決定部5404は、異常度に対して、しきい値Fthbを設け、異常度がしきい値Fthbを超えた場合に、機械装置1008に異常が生じていると診断する。
図21において、時刻Ttb0は運用を開始した時刻である。時刻Ttb0から時刻Ttb1より前までの異常度は、多少ばらつきを生じながらも、しきい値Fthbよりも小さい値を保っている。意思決定部5404は、異常度がしきい値を下回っている場合には、機械装置1008が正常である旨の診断を下し、その診断結果を出力する。
また、図21の例では、時間の経過と共に異常度の平均的な値が徐々に増加していき、時刻Ttb1で異常度がしきい値Fthbを上回っている。この場合、状態診断部5006は、時刻Ttb1で機械装置1008に異常が生じたという診断を下し、その診断結果を出力する。
しきい値Fthbの決め方は様々である。例えば正常データの99%信頼区間に相当する異常度をしきい値Fthbとすることが考えられる。また、過去の別の機械装置に異常が生じた際の異常度をしきい値Fthbとしてもよい。また、機械装置1008の運用を開始した直後の異常度を参考にして定めてもよい。また、しきい値Fthbは、動的に設定してもよい。例えば複数の機械装置を運用しながら、それらの異常度を個別に計算し、装置ごとの異常度のばらつきを考慮して定期的にしきい値Fthbを決定してもよい。そのように情報処理装置を構成した場合、複数の機械装置のうち一つが故障した際に、故障した装置の異常度がその他の装置の異常度に比べて大きくなるため、異常の検知が可能となる。
また、本実施の形態では、異常度が一度でもしきい値Fthbを超えた場合に、機械装置1008が異常であるという診断を下しているが、この手法に限定されない。ノイズ等の影響による誤った診断、即ち誤判定を減らすため、一定の期間の異常度の分布に基づいた検定を行うなどの統計的な手法を採用してもよい。
以上説明したように、実施の形態5における情報処理装置は、機械装置の異常の度合いを定量的に示す指標である異常度に基づいて機械装置の状態を診断する。これにより、他の実施の形態の効果を得た上で、更に機械装置の状態を高精度に推定できるという効果が得られる。
実施の形態6.
図22は、実施の形態6における情報処理装置6000を含む情報処理システム100Eの構成例を示す図である。図22に示す情報処理システム100Eでは、図1に示す情報処理システム100の構成において、状態診断部1006が状態診断部6006に置き替えられている。その他の構成は、図1に示す情報処理システム100と同一又は同等である。同一又は同等の構成部には同一の符号を付すと共に、重複する説明は省略する。なお、本実施の形態では、状態診断部6006を図1に示す情報処理装置1000に適用する例で説明するが、図9、図11又は図13に示す、情報処理装置2000,3000,4000のうちの何れに適用してもよい。
図23は、実施の形態6における状態診断部6006の構成例を示す図である。状態診断部6006は、状態量取得部6401と、学習部6402と、状態推定部6403と、意思決定部6404とを備える。状態量取得部6401は、特徴量を含む状態量を取得する。学習部6402は、機械装置1008の状態と、状態量取得部6401が取得する状態量との関係を紐付ける学習用データに基づいて機械装置1008の状態と当該状態量との関係を学習する。状態推定部6403は、学習部6402に入力された状態量と学習部6402による学習結果とに基づいて機械装置1008の状態を推定する。意思決定部6404は、状態推定部6403が推定した結果に基づいて機械装置1008の状態を診断した診断結果を決定する。
状態量取得部6401は、特徴量と共に、機械装置1008に付与する設定値を含む情報を状態量として取得する。特徴量の一例として、前述の方法で逐次計算した歪度及び尖度を用いることが考えられる。また、状態量の一つとして用いる機械装置1008の情報として、前述のモータ速度の設定値を利用することが考えられる。なお、本実施の形態では、状態量取得部6401への入力情報が、歪度、尖度及びモータ速度の設定値という3つの場合を例示するが、この例に限定されない。状態量取得部6401への入力情報は、4以上であってもよい。
学習部6402及び状態推定部6403は、例えば、ニューラルネットワークモデルに従って、いわゆる教師あり学習によって、状態量と機械装置1008の状態との関係を学習してもよい。ここで、ある入力(状態量)と結果(ラベル)のデータの組である学習用データを大量に学習部に与えることで、それらのデータにある特徴を学習し、入力から結果を推定するモデルを教師あり学習と呼んでいる。ニューラルネットワークは、複数のニューロンからなる入力層、複数のニューロンからなる中間層(隠れ層)、及び複数のニューロンからなる出力層で構成される。中間層は、1層でもよく、2層以上でもよい。
図24は、実施の形態6における状態推定部6403の構造の例を示す図である。入力は状態量である。説明をわかりやすくするため、図24のニューラルネットワークは、入力数を3、層数を3としている。複数の入力が、X1からX3で構成される入力層に入力されると、入力値にW11からW16で構成される重みW1を乗じた値が、Y1とY2とで構成される中間層に入力される。更に、中間層の入力値に、W21からW26で構成される重みW2を乗じた値が、Z1からZ3で構成される出力層から出力される。この出力結果は、重みW1の値と重みW2の値に依存して変化する。
実施の形態6のニューラルネットワークによる学習の一例では、入力層X1〜X3に状態量1〜3を入力して、出力層Z1〜Z3から出力される各状態の確率が学習用データのラベルと一致するように重みW1及び重みW2を調整する。なお、実施の形態6における学習処理を実行した学習済みの状態推定部6403を搭載した情報処理装置6000を構成してもよい。学習済みの状態推定部6403は、学習済のデータ、学習済のプログラム、又はこれらの組み合わせで構成してもよい。学習済みの状態推定部6403を用いることにより、他の情報処理装置を用いた学習の結果を利用することができるため、新たに学習を行わずに、診断を実現できる情報処理装置6000を提供することができる。
図24には、歪度が入力層X1に入力され、尖度が入力層X2に入力され、モータ速度の設定値が入力層X3に入力される例が示されている。歪度は入力層X1に入力される状態量1の例示であり、尖度は入力層X2に入力される状態量2の例示であり、モータ速度の設定値は入力層X3に入力される状態量3の例示である。また、出力層Z1からは、状態1の確率として機械装置1008のボールねじ軸1224が故障している確率が出力される。出力層Z2からは、状態2の確率として機械装置1008のカップリング1220が故障している確率が出力される。出力層Z3からは、状態3の確率として機械装置1008が正常な状態である確率が出力される。出力の計算には、例えば全ての出力の和が1、即ち100%となるように、例えばソフトマックス関数(softmax function)を用いてもよい。この関数を用いると、推定の結果が理解しやすくなる。
図24に示すニューラルネットワークは、学習部6402に入力される学習用データに基づいて作成されるデータセットに従って、教師あり学習により、機械装置1008の状態と状態量1〜3との関係を学習する。学習時には、ラベルと呼ばれる機械装置1008の真の状態を示す情報が正しく得られているものとし、状態1〜3のうちの何れかの出力が1(確率が100%)、それ以外の出力が0(確率が0%)となるように学習するのがよい。
学習部6402及び状態推定部6403の構成はニューラルネットワークに限らなくてもよい。例えば、k近傍法、二分木探索、サポートベクターマシン、線形回帰、ロジスティック回帰等、状態量とラベルとの関係を学習し、状態量から状態を推定する方法が数多く知られている。従って、これの手法を適用して、学習部6402及び状態推定部6403を構成してもよい。
意思決定部6404は、状態推定部6403の推定した結果に基づいて機械装置1008の状態を診断した診断結果を決定する。例えば、機械装置1008が正常な可能性が最も高い場合、機械装置1008の診断結果として正常である旨を示す診断結果を出力するのがよい。また、ボールねじ軸1224が故障している確率又はカップリング1220が故障している確率が最も高い場合、故障箇所を示す診断結果を出力するのがよい。また、ボールねじ軸1224が故障している確率とカップリング1220が故障している確率との和が、正常な確率よりも大きい場合、何れかの部品が故障していることを示す結果を出力するのがよい。
以上説明したように、実施の形態6における情報処理装置は、機械装置の状態と状態量との関係を紐付ける学習用データに基づいて機械装置の状態と当該状態量との関係を学習し、その学習結果と学習時に用いた状態量とに基づいて機械装置の状態を推定する。これにより、実施の形態1の効果を得た上で、更に機械装置の状態を高精度に推定できるという効果が得られる。
以上の実施の形態に示した構成は、一例を示すものであり、別の公知の技術と組み合わせることも可能であるし、実施の形態同士を組み合わせることも可能であるし、要旨を逸脱しない範囲で、構成の一部を省略、変更することも可能である。