(57)【要約】【課題】本体を防振制御する機械装置において、より早期に駆動機構の故障を検知することが可能な駆動機構の故障診断装置等を提供する。【解決手段】  モータ１４とモータ１４の回転動力を減速する減速機１３と減速機１３により減速された回転動力によって動作する動作部１２とを含む本体３１と、本体３１の振動を防止する防振制御を行う防振制御部３３と、を備えた機械装置１１の減速機１３及びモータを含む駆動機構５１の故障診断装置であって、機械装置１１の防振制御部３３に防振制御を停止させる指令を送り、その後、防振制御が停止された機械装置１１の動作が加減速する加減速期間を特定し、当該加減速期間におけるモータ１４の回転数の変化に対するモータ１４の負荷電流又は当該負荷電流と相関関係を有する電流値であるモータ電流の周波数スペクトルの変化に基づいて、駆動機構５１に故障の兆候があるか否かを判定するよう構成されている。【選択図】  図１
2020079749.tif 000002
【特許請求の範囲】
【請求項１】
モータと前記モータの回転動力を減速する減速機と前記減速機により減速された回転動力によって動作する動作部とを含む本体と、前記本体の振動を防止する防振制御を行う防振制御部と、を備えた機械装置の前記モータ及び前記減速機を含む駆動機構の故障を診断する故障診断装置であって、
前記機械装置の前記防振制御部に前記防振制御を停止させる指令を送り、その後、防振制御が停止された前記機械装置の動作が加減速する加減速期間を特定し、当該加減速期間における前記モータの回転数の変化に対する前記モータの負荷電流又は当該負荷電流と相関関係を有する電流値（以下、モータ電流という）の周波数スペクトルの変化に基づいて、前記駆動機構に故障の兆候があるか否かを判定するよう構成されている、駆動機構の故障診断装置。
【請求項２】
前記駆動機構に故障の兆候があるか否かの判定において、前記減速機に故障の兆候があるか否かを判定するよう構成されている、請求項１に記載の駆動機構の故障診断装置。
【請求項３】
前記駆動機構に故障の兆候があるか否かの判定において、前記モータに故障の兆候があるか否かを判定するよう構成されている、請求項１に記載の駆動機構の故障診断装置。
【請求項４】
前記モータの回転数を取得する回転数取得部と、
前記回転数取得部により取得されるモータの回転数に基づいて前記加減速期間を特定する加減速期間特定部と、
前記モータ電流を取得するモータ電流取得部と、
前記加減速期間において前記回転数取得部により取得される前記モータの回転数を順次サンプリングして一群の時系列回転数データを生成する時系列回転数データ生成部と、
前記加減速期間において前記モータ電流取得部により取得される前記モータ電流を順次サンプリングして一群の時系列モータ電流データを生成する時系列モータ電流データ生成部と、
前記一群の時系列モータ電流データを前記一群の時系列回転数データにそれぞれ対応させて周波数解析し、前記一群の時系列回転数データにそれぞれ対応する一群の前記モータ電流データの周波数スペクトルを生成するＦＦＴ解析部と、
一群の前記モータ電流データの周波数スペクトルのうちの、前記駆動機構の故障に特徴的な周波数に対応する所定の周波数領域におけるモータ電流の振幅のピーク値を抽出する振幅ピーク値抽出部と、
抽出された前記モータ電流の振幅のピーク値を所定の振幅閾値と比較し、その結果に基づいて前記駆動機構に故障の兆候があるか否かを判定する判定部と、を含む、請求項１に記載の駆動機構の故障診断装置。
【請求項５】
前記判定の結果を出力する出力装置を備える、請求項１乃至４のいずれかに記載の駆動機構の故障診断装置。
【請求項６】
前記機械装置がロボットであり、前記本体がロボット本体である、請求項１乃至５のいずれかに記載の駆動機構の故障診断装置。
【請求項７】
請求項１乃至６のいずれかに記載の駆動機構の故障診断装置と、
モータと前記モータの回転動力を減速する減速機と前記減速機により減速された回転動力によって動作する動作部とを含む本体と、
前記本体の振動を防止する防振制御を行う防振制御部と、を備え、
前記駆動機構の故障診断装置が前記防振制御部に前記防振制御を停止させる指令を送るよう構成されている、機械装置。
【請求項８】
モータと前記モータの回転動力を減速する減速機と前記減速機により減速された回転動力によって動作する動作部とを含む本体と、前記本体の振動を防止する防振制御を行う防振制御部と、を備えた機械装置の前記モータ及び前記減速機を含む駆動機構の故障診断方法であって、
前記機械装置の前記防振制御部に前記防振制御を停止させるステップ（ａ）と、
前記ステップ（ａ）の後、防振制御が停止された前記機械装置の動作が加減速する加減速期間を特定するステップ（ｂ）と、当該加減速期間における前記モータの回転数の変化に対する前記モータの負荷電流又は当該負荷電流と相関関係を有する電流値（以下、モータ電流という）の周波数スペクトルの変化に基づいて、前記駆動機構に故障の兆候があるか否かを判定するステップ（ｃ）と、を含む、駆動機構の故障診断方法。
【請求項９】
前記ステップ（ｃ）において、前記減速機に故障の兆候があるか否かを判定するよう構成されている、請求項８に記載の駆動機構の故障診断方法。
【請求項１０】
前記ステップ（ｃ）において、前記モータに故障の兆候があるか否かを判定するよう構成されている、請求項８に記載の駆動機構の故障診断方法。
【請求項１１】
前記ステップ（ｂ）は、
前記モータの回転数を取得する回転数取得ステップと、
回転数取得ステップにより取得される前記モータの回転数に基づいて前記加減速期間を特定する加減速期間特定ステップと、を含み、
前記ステップ（ｃ）は、
前記モータ電流を取得するモータ電流取得ステップと、
前記加減速期間において前記回転数取得ステップにより取得される前記モータの回転数を順次サンプリングして一群の時系列回転数データを生成する時系列回転数データ生成ステップと、
前記加減速期間において前記モータ電流取得ステップにより取得される前記モータ電流を順次サンプリングして一群の時系列モータ電流データを生成する時系列モータ電流生成ステップと、
前記一群の時系列モータ電流データを前記一群の時系列回転数データにそれぞれ対応させて周波数解析し、前記一群の時系列回転数データにそれぞれ対応する一群の前記モータ電流データの周波数スペクトルを生成するＦＦＴ解析ステップと、
一群の前記モータ電流データの周波数スペクトルのうちの、前記駆動機構の故障に特徴的な周波数に対応する所定の周波数領域におけるモータ電流の振幅のピーク値を抽出する振幅ピーク値抽出ステップと、
抽出された前記モータ電流の振幅のピーク値を所定の振幅閾値と比較し、その結果に基づいて前記駆動機構に故障の兆候があるか否かを判定する判定ステップと、を含む、請求項８乃至１０のいずれかに記載の駆動機構の故障診断方法。
【請求項１２】
前記判定の結果を出力する出力ステップをさらに含む、請求項８乃至１１のいずれかに記載の駆動機構の故障診断方法。
【請求項１３】
前記機械装置がロボットであり、前記本体がロボット本体である、請求項８乃至１２のいずれかに記載の駆動機構の故障診断方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、駆動機構の故障診断装置及び故障診断方法並びに前記故障診断装置を備える機械装置に関する。
【背景技術】
【０００２】
従来、機械装置の加減速期間におけるモータの回転数の変化に対するモータ電流の周波数スペクトルの変化基づいて、減速機に故障の兆候があるか否かを判定する減速機の故障診断方法が知られている（特許文献１参照）。この故障診断方法は、機械装置の加減速期間に故障診断を行うので、機械装置の作業中に故障診断を行うことができる。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特許第６１４４４０４号掲載公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
ところで、機械装置では本体の振動を防止する防振制御が行われる場合がある。特に、ロボットでは、ロボット本体の防振制御が一般的に行われる。上述の減速機の故障診断の技術は、本体を防振制御する機械装置の駆動機構に適用する場合に改善の余地があった。
【０００５】
本発明は上記のような課題を解決するためになされたもので、本体を防振制御する機械装置において、より早期に駆動機構の故障を検知することが可能な駆動機構の故障診断装置及び故障診断方法並びに故障診断装置を備える機械装置を提供することを目的としている。
【課題を解決するための手段】
【０００６】
上記目的を達成するために、本発明のある形態（aspect）に係る駆動機構の故障診断装置は、モータと前記モータの回転動力を減速する減速機と前記減速機により減速された回転動力によって動作する動作部とを含む本体と、前記本体の振動を防止する防振制御を行う防振制御部と、を備えた機械装置の前記モータ及び前記減速機を含む駆動機構の故障診断装置であって、前記機械装置の前記防振制御部に前記防振制御を停止させる指令を送り、その後、防振制御が停止された前記機械装置の動作が加減速する加減速期間を特定し、当該加減速期間における前記モータの回転数の変化に対する前記モータの負荷電流又は当該負荷電流と相関関係を有する電流値（以下、モータ電流という）の周波数スペクトルの変化に基づいて、前記駆動機構に故障の兆候があるか否かを判定するよう構成されている。
【０００７】
この構成によれば、機械装置の加減速期間では、モータの回転数の変化に対するモータ電流の周波数スペクトルの変化において、駆動機構の故障の特徴周波数に対応する特定の周波数領域の電流振幅が駆動機構の共振により増大してピーク値を示すが、このピーク値は駆動機構の故障の兆候と相関がある。そのため、モータの回転数の変化に対するモータ電流の周波数スペクトルの変化に基づいて、駆動機構に故障の兆候があるか否かを判定することができるので、駆動機構が設けられた機械装置の作業中に故障診断を行うことができる。
【０００８】
一方、この故障診断は駆動機構の共振を利用するので、本体の振動が大きい方がモータ電流の周波数スペクトルにおけるピーク値が大きくなり、駆動機構の故障の兆候があるか否かの判定の精度（感度）が向上する。従って、この構成のように、故障診断の際、機械装置の防振制御部に指令を送って防振制御を停止させることにより、駆動機構の故障を、より早期に検知することができる。
【０００９】
前記駆動機構に故障の兆候があるか否かの判定において、前記減速機に故障の兆候があるか否かを判定するよう構成されていてもよい。
【００１０】
この構成によれば、減速機の故障を、より早期に検知することができる。
【００１１】
前記駆動機構に故障の兆候があるか否かの判定において、前記モータに故障の兆候があるか否かを判定するよう構成されていてもよい。
【００１２】
この構成によれば、モータの故障を、より早期に検知することができる。
【００１３】
前記モータの回転数を取得する回転数取得部と、前記回転数取得部により取得されるモータの回転数に基づいて前記加減速期間を特定する加減速期間特定部と、前記モータ電流を取得するモータ電流取得部と、前記加減速期間において前記回転数取得部により取得される前記モータの回転数を順次サンプリングして一群の時系列回転数データを生成する時系列回転数データ生成部と、前記加減速期間において前記モータ電流取得部により取得される前記モータ電流を順次サンプリングして一群の時系列モータ電流データを生成する時系列モータ電流データ生成部と、前記一群の時系列モータ電流データを前記一群の時系列回転数データにそれぞれ対応させて周波数解析し、前記一群の時系列回転数データにそれぞれ対応する一群の前記モータ電流データの周波数スペクトルを生成するＦＦＴ解析部と、一群の前記モータ電流データの周波数スペクトルのうちの、前記駆動機構の故障に特徴的な周波数に対応する所定の周波数領域におけるモータ電流の振幅のピーク値を抽出する振幅ピーク値抽出部と、抽出された前記モータ電流の振幅のピーク値を所定の振幅閾値と比較し、その結果に基づいて前記駆動機構に故障の兆候があるか否かを判定する判定部と、を含んでもよい。
【００１４】
この構成によれば、駆動機構が設けられた機械装置の作業中に故障診断が可能な故障診断装置を、好適に具体化することができる。
【００１５】
前記判定の結果を出力する出力装置を備えてもよい。
【００１６】
この構成によれば、判定の結果を報知することができる。
【００１７】
前記機械装置がロボットであってもよい。
【００１８】
この構成によれば、ロボットでは防振制御を行うことが一般的であるので、ロボットの減速機の故障を、より早期に検知することができる。
【００１９】
また、本発明の他の形態（aspect）に係る機械装置は、上記のいずれかに記載の駆動機構の故障診断装置と、モータと前記モータの回転動力を減速する減速機と前記減速機により減速された回転動力によって動作する動作部とを含む本体と、前記本体の振動を防止する防振制御を行う防振制御部と、を備え、前記駆動機構の故障診断装置が前記防振制御部に前記防振制御を停止させる指令を送るように構成されている。
【００２０】
この構成によれば、当該機械装置の作業中に故障診断を行うことができる。
【００２１】
また、本発明のさらなる他の形態（aspect）に係る駆動機構の故障診断方法は、モータと前記モータの回転動力を減速する減速機と前記減速機により減速された回転動力によって動作する動作部とを含む本体と、前記本体の振動を防止する防振制御を行う防振制御部と、を備えた機械装置の前記モータ及び前記減速機を含む駆動機構の故障診断方法であって、前記機械装置の前記防振制御部に前記防振制御を停止させるステップ（ａ）と、前記ステップ（ａ）の後、防振制御が停止された前記機械装置の動作が加減速する加減速期間を特定するステップ（ｂ）と、当該加減速期間における前記モータの回転数の変化に対する前記モータの負荷電流又は当該負荷電流と相関関係を有する電流値（以下、モータ電流という）の周波数スペクトルの変化に基づいて、前記駆動機構に故障の兆候があるか否かを判定するステップ（ｃ）と、を含む。
【００２２】
この構成によれば、駆動機構の故障を、より早期に検知することができる。
【発明の効果】
【００２３】
本発明は、本体を防振制御する機械装置において、より早期に駆動機構の故障を検知することが可能な駆動機構の故障診断装置及び故障診断方法並びに故障診断装置を備える機械装置を提供することができるという効果を奏する。
【図面の簡単な説明】
【００２４】
【図１】図１は、本発明の実施形態に係る駆動機構の故障診断装置の構成を示す機能ブロック図である。
【図２】図２は、モータの回転数の変化に対するモータ電流の周波数スペクトルの変化を模式的に示す図である。
【図３Ａ】図３Ａは、耐久試験において故障早期の状態にある減速機のモータの回転数の変化に対するモータ電流の周波数スペクトルの変化を示したコンター図である。
【図３Ｂ】図３Ｂは、耐久試験において故障末期の状態にある減速機のモータの回転数の変化に対するモータ電流の周波数スペクトルの変化を示したコンター図である。
【図４】図１の防振制御部及び動作制御部による防振制御におけるロボットの慣性モデルの一例を示す図である。
【図５】図４の慣性モデルに対応するロボットの制御系を示す図である。
【図６】４慣性モデルと２慣性モデルの共振周波数を示す図である。
【図７】極配置した場合と原点に零点を配置した場合の、モータ停止時のトルク補償量の変化を示す図である。
【図８】２慣性モデルを説明するための図である。
【図９】図９は、図１の故障診断装置の動作を示すフローチャートである。
【図１０】図１０は、ロボット本体の防振制御をＯＮした状態に対する当該防振制御をＯＦＦした状態におけるモータ電流の周波数スペクトルにおける周波数成分の値（モータ電流の振幅）の差分を示すグラフである。
【発明を実施するための形態】
【００２５】
（本発明の基礎となった知見）
上述の減速機の故障診断の技術は、本出願の出願人が開発した技術である。この技術によれば、減速機の故障を早期に検知することができる。一方、ロボットに関して、産業界からより早期に減速機の故障を検知したいという要望があった。本発明者等は、この要望に応えるべく、鋭意検討した。その結果、以下の知見を得た。
【００２６】
本発明者等は、この故障診断が故障による減速機の共振の増大を利用することと、ロボットでは、一般的にロボット本体の防振制御が行われることとに着目した。すなわち、本発明者等は、故障診断が故障による減速機の共振の増大を利用するのであれば、本体の振動が大きい方がモータ電流の周波数スペクトルにおけるピーク値が大きくなり、減速機の故障を検知し易くなる可能性があると考えた。そこで、ロボット本体の防振制御をＯＮした状態とＯＦＦした状態とでモータ電流の周波数スペクトルにおける周波数成分の値（モータ電流の振幅）が相違するか否か実験した。その結果、ロボット本体の防振制御をＯＮした状態より当該防振制御をＯＦＦした状態の方がモータ電流の周波数スペクトルにおける減速機の故障に特徴的な周波数成分の値（モータ電流の振幅）が大きくなることが確認された（図１０等参照）。
【００２７】
また、この実験において、モータ電流を振動させる主な要因がロボット本体の振動であり、減速機の故障に特徴的な周波数の振動がロボット本体の振動に表れ、その結果、それがモータ電流に表れることが確認された。さらに、このことから、モータが故障した場合、減速機の故障と同様の原理（メカニズム）によって、モータの故障に特徴的な周波数の振動がモータ電流に表れると推論された。
【００２８】
この実験結果は、ロボット以外の本体を防振制御する機械装置にも当て嵌まることは明らかである。
【００２９】
そこで、本発明者等は、本体を防振制御する機械装置において、防振制御を停止させた状態で、モータと当該モータの回転動力を減速する減速機とを含む駆動機構の故障診断を行うことを想到した。
【００３０】
なお、機械装置では、例えば、作業の開始又は終了時等において、防振制御を停止しても作業に支障を来さず且つ加減速を伴う動作が存在するので、作業中に、防振制御を停止させた状態で駆動機構の故障診断を行うことが可能である。
【００３１】
本発明によれば、駆動機構の故障を、防振制御を停止させない場合に比べて早期に検知することができる。その結果、本体を防振制御する機械装置においては、より早期に駆動機構の故障を検知することができる。
【００３２】
以下、本発明を具体化した実施形態を、添付図面を参照しつつ説明する。なお、以下では全ての図を通じて同一又は相当する要素には同一の参照符号を付して、その重複する説明を省略する。
【００３３】
（実施形態）
［構成］
図１は、本発明の実施形態に係る駆動機構の故障診断装置の構成を示す機能ブロック図である。
【００３４】
図１を参照すると、駆動機構の故障診断装置（以下、単に故障診断装置という）１は、モータ１４とモータ１４の回転動力を減速する減速機１３と減速機１３により減速された回転動力によって動作する動作部１２とを含む本体３１と、本体３１の振動を防止する防振制御を行う防振制御部３３と、を備えた機械装置１１において、モータ１４及び減速機１３を含む駆動機構５１の故障を診断する故障診断装置１であって、機械装置１１の防振制御部３３に防振制御を停止させる指令を送り、その後、防振制御が停止された機械装置１１の動作が加減速する加減速期間（以下、単に加減速期間という）を特定し、当該加減速期間におけるモータ１４の回転数の変化に対するモータ１４のモータ電流の周波数スペクトルの変化に基づいて、駆動機構５１に故障の兆候があるか否かを判定するよう構成されている。
【００３５】
以下、これを具体的に説明する。
【００３６】
＜機械装置１１＞
まず、故障診断装置１の診断対象である、モータ１４及び減速機１３を含む駆動機構５１、並びに当該駆動機構５１を備える機械装置１１について説明する。
【００３７】
機械装置１１は、本体３１と、コントローラ１７とを含む。コントローラ１７は、本体３１のモータ１４に制御された電力（ここでは電流）を供給する電力変換器１５と、電力変換器１５を用いて本体３１の動作を制御する動作制御部３２と、本体３１の振動を防止する振動防止制御を行う防振制御部３３とを含む。
【００３８】
本体３１は、動作部１２と、動作部１２を駆動するモータ１４と、モータ１４の回転動力を減速して動作部１２に伝達する減速機１３と、モータ１４の回転位置を検出するエンコーダ１６と、を含む。駆動機構５１は、駆動源としてのモータ１４と、モータ１４から動作部１２に至る動力伝達経路とで構成される。減速機１３はこの動力伝達経路の一部を構成する。
【００３９】
機械装置１１は、動作部１２を含むものであればよい。機械装置１１として、典型的にはロボットが挙げられる。ロボットでは、ロボット本体の動作部が本体３１の動作部１２を構成する。例えば、多関節ロボットでは、固定対象に固定される基台（基部）が静止部を構成し、基台に連結される１以上の関節及びアーム部材（リンク）並びにエンドエフェクタが動作部１２を構成する。機械装置１１として、これ以外に、建設機械や工作機械等が例示される。
【００４０】
減速機１３は、モータ１４の回転動力を減速して動作部１２に伝達するものであればよい。減速機１３は、例えば、入力軸の回転動力を減速機構（図示せず）によって減速し、減速した回転動力を、出力軸１３ａに出力する。入力軸として、図１には、モータ１４の回転軸１４ａが例示されているが、例えば、他の動作部の出力軸であってもよい。また、減速機構として、典型的には歯車減速機構が例示されるが、それ以外の減速機構であってもよい。
【００４１】
モータ１４はサーボモータであり、ブラシレスモータ、直流モータでもよい。しかし、誘導電動機等の他のモータであってもよい。サーボモータが用いられる場合は、エンコーダ１６を併用して、動作部１２の位置制御が行われる。モータ１４の設置場所は、機械装置１１の静止部でも、動作部１２でもよい。ロボットの場合、モータ１４は、第１関節を除いて、各関節において各関節より先のアーム部材を駆動するために設けられるので、第１関節以外の関節ではモータ１４は動作部１２に設けられる。第１関節では静止部に設けられる。
【００４２】
エンコーダ１６は、モータ１４の回転軸１４ａに設けられる。エンコーダ１６は、モータ１４の回転角（回転位置）を検出するものであればよい。なお、モータ１４が、誘導電動機等によって構成され、動作部１２の位置制御が行われない場合は、例えば、エンコーダ１６に代えて回転数検知器が用いられる。
【００４３】
電力変換器１５は、モータ１４に、電圧又は電流が制御される（図１では電流が制御される）電力を供給して、モータ１４を駆動する。電力変換器１５は、周知であるので、その具体的な説明を省略する。図１では、電力変換器１５が電流センサ（図示せず）を備えていて、モータ１４に供給する電流（モータ１４の負荷電流）を検知し、その検知した電流１９を動作制御部３２に出力する。電流センサは、電力変換器１５の外部に設けられてもよい。
【００４４】
動作制御部３２は、エンコーダ１６から入力されるモータ１４の回転角と電力変換器１５の電流センサから入力されるモータ電流１９に基づいて、電流指令値２０を生成し、それを電力変換器１５に出力する。電力変換器１５は、電流指令値２０に従った電流の電力をモータ１４に出力する。かくして、動作制御部３２は、モータ１４の回転角及びトルクをフィードバック制御する。
【００４５】
防振制御部３３は、動作制御部３２と協働して防振制御を行う。この防振制御については、後で詳しく説明する。
【００４６】
動作制御部３２及び防振制御部３３は、演算装置で構成される。演算装置としては、例えば、パーソナルコンピュータ、マイクロコントローラ等が例示される。動作制御部３２及び防振制御部３３（演算器）は、演算部と記憶部とを有し、演算部が記憶部に格納された所定の制御プログラム読み出して実行することにより、所定の動作制御及び防振制御を行う。動作制御部３２及び防振制御部３３は、上述の所定の制御プログラムが実行されることによって実現される機能部であり、実際には上記演算器が動作制御部３２及び防振制御部３３として動作する。
【００４７】
なお、防振制御部３３を省略し、動作制御部３２が防振制御部３３の機能を備えてもよい。
【００４８】
＜故障診断装置１＞
次に、故障診断装置１を説明する。
【００４９】
故障診断装置１は、演算装置で構成される。演算装置としては、例えば、パーソナルコンピュータ、マイクロコントローラ等のプログラム（ソフトウェア）に従って動作するものの他、論理回路、電子回路等のハードウエアが例示される。故障診断装置１は、ここでは、プログラムに従って動作する演算器で構成される。故障診断装置１（演算器）は、演算部と記憶部とを有し、演算部が記憶部に格納された所定の故障診断プログラムを読み出して実行することにより、所定の故障診断を行う。故障診断装置１は、回転数取得部２と、加減速期間特定部３と、モータ電流取得部４と、時系列回転数データ生成部５と、時系列モータ電流データ生成部６と、ＦＦＴ解析部７と、振幅ピーク値抽出部８と、判定部９と、出力部１０と、防振制御停止部４１と、を含む。
【００５０】
機能部２−９、４１は、上述の所定の故障診断プログラムが実行されることによって実現される機能部であり、実際には上記演算器が機能部２−９、４１として動作する。
【００５１】
防振制御停止部４１は、故障診断装置１の全体の動作をコントロールしており、故障診断を開始する際に防振制御停止指令を機械装置１１の防振制御部３３に出力し、機械装置１１の動作制御部３２から動作開始信号を受け取ると、各機能部２−９による故障診断を開始させる。
【００５２】
回転数取得部２は、エンコーダ１６から入力されるモータ１４の回転角に基づいて、モータ１４の回転数を取得する（そして、一時的に保存する）。なお、エンコーダ１６に代えて回転数検知器が設けられる場合には、回転数検知器から入力される回転数に基づいて、モータ１４の回転数を取得する。
【００５３】
加減速期間特定部３は、回転数取得部２により取得されるモータの回転数に基づいて加減速期間を特定する。
【００５４】
モータ電流取得部４は、ここでは、電力変換器１５の電流センサ（図示せず）から入力される電流１９を「モータ電流」として取得する（そして、一時的に保存する）。なお、動作制御部３２から入力される電流指令値２０を「モータ電流」として取得してもよい。なお、電流指令値は、モータの負荷電流に対する現在値の偏差に応じた指令信号であり、モータの負荷電流と遜色ない結果が得られる。
【００５５】
時系列回転数データ生成部５は、加減速期間において回転数取得部２により取得されるモータの回転数を順次サンプリングして一群の時系列回転数データを生成する。
【００５６】
時系列モータ電流データ生成部６は、加減速期間においてモータ電流取得部４により取得されるモータ電流を順次サンプリングして一群の時系列モータ電流データを生成する。
【００５７】
ここで、回転数データ及びモータ電流データの切り出し（抽出）とサンプリングについて説明する。回転数取得部２及びモータ電流取得部４は、それぞれ、モータ回転数及びモータ電流を、時系列のデータとして取得する。この時系列のデータについては、加減速期間の部分の切り出しと、サンプリングとを行う必要があるが、いずれが先であってもよい。また、サンプリングは、モータの１回転におけるサンプリング点数を定義し、且つ、モータの回転数が変化しても、定義した点数のサンプリングが行われるように、モータの回転数に応じたサンプリング周波数を決定する。
【００５８】
ＦＦＴ解析部７は、一群の時系列モータ電流データを一群の時系列回転数データにそれぞれ対応させて周波数解析し、一群の時系列回転数データにそれぞれ対応する一群のモータ電流データの周波数スペクトルを生成する。この周波数解析（以下、３次元周波数解析という場合がある）は、例えば、ＦＦＴ（高速フーリエ変換）により行われる。
【００５９】
図２は、モータの回転数の変化に対するモータ電流の周波数スペクトルの変化を模式的（概念的）に示す図であり、周波数解析を３次元で表示したものである。図２において、Ｘ軸は回転数（ｒｐｍ）を表し、Ｙ軸は周波数（Ｈｚ）を表し、Ｚ軸はモータ電流の振幅（Ａ）を表す。Ｘ軸上には、一群の時系列回転数データ２１が位置する。参照符号Ｒは、個々の回転数データを示す。そして、一群の時系列回転数データ２１に対応して、一群のモータ電流データの周波数スペクトル２２が存在する。参照符号Ｓは、個々のモータ電流データの周波数スペクトルを示す。図２には、簡略化のため、１次回転数（基本回転数）及び２次回転数のみ示してある。参照符号ｆは周波数を示し、ｆ０は駆動機構５１を構成る要素（例えば減速機１３）の故障に特徴的な周波数（共振周波数、以下、特徴周波数という場合がある）を示す。以下では、簡略化のため、駆動機構５１を構成する要素の故障を「駆動機構５１の故障」と呼び、駆動機構５１を構成する要素の故障の特徴周波数を、「駆動機構５１の故障の特徴周波数」と呼ぶ場合がある。周波数が（ｆ０−Δｆ）≦ｆ≦（ｆ０＋Δｆ）の範囲は、所定の周波数領域ｆｒを示す。この所定の周波数領域ｆｒにおいて、モータ電流データの周波数スペクトルＳにおける電流の振幅は、減速機１３の共振により増大してピーク値２４を示す。
【００６０】
なお、実際には、Ｘ軸上に多数の回転数データＲが位置し、それらに対応する多数のモータ電流データの周波数スペクトルＳが存在する。また、故障診断時には、時系列の回転数データから加減速期間に相当するデータが切り出されるので、Ｘ軸上の一部領域のみに回転数データ２１が位置し、且つそれらに対応するモータ電流データの周波数スペクトル２２のみが存在する場合もあり得る。
【００６１】
図１及び図２を参照すると、振幅ピーク値抽出部８は、一群のモータ電流データの周波数スペクトルＳのうちの、駆動機構５１の故障の特徴周波数ｆ０に対応する所定の周波数領域ｆｒにおけるモータ電流の振幅のピーク値を抽出する。駆動機構５１の故障の特徴周波数ｆ０は、駆動機構５１を構成する所定の１以上の要素について予め、実験、シミュレーション、計算等により決定され、故障診断装置１の記憶部（図示せず）に記憶される。
【００６２】
判定部９は、抽出されたモータ電流の振幅のピーク値２４を所定の振幅閾値と比較し、その結果に基づいて、駆動機構５１を構成する所定の１以上の要素（換言すると、駆動機構５１）に故障の兆候があるか否かを判定する。具体的には、モータ電流の振幅のピーク値２４が所定の振幅閾値以上であると駆動機構５１に故障の兆候があると判定し、モータ電流の振幅のピーク値２４が所定の振幅閾値未満であると駆動機構５１に故障の兆候がないと判定する。この振幅閾値は、実験、シミュレーション等によって決定される。振幅閾値は、駆動機構５１の劣化（故障の兆候）と関連する物理量（パラメータ）の許容限度を示す許容限度閾値に対応させて決定される。本実施形態では、例えば、減速機１３の場合、減速機のグリスの鉄粉濃度の許容限度閾値と対応させて決定される。
【００６３】
出力部１０は、判定部９による判定結果を出力する。出力部１０は、例えば、判定結果を表示する表示器又は警報器、判定結果を外部に送信する送信器、判定結果を印刷する印刷器等で構成される。
【００６４】
図３Ａは、耐久試験において故障早期の状態にある減速機のモータの回転数の変化に対するモータ電流の周波数スペクトルの変化を示すコンター図である。図３Ｂは、耐久試験において故障末期の状態にある減速機のモータの回転数の変化に対するモータ電流の周波数スペクトルの変化を示すコンター図である。
【００６５】
図３Ａ及び図３Ｂにおいて、Ｘ軸はモータの回転数（ｒｐｍ）を表し、Ｙ軸は周波数を表し、画像の階調がモータ電流の振幅（Ａ）を表している。画像が濃い（黒い）程、モータ電流の振幅が大きく、画像が淡い（白い）程、モータ電流の振幅が小さい。
【００６６】
図３Ａ及び３Ｂを参照すると、１４Ｈｚ付近にモータ電流の振幅が大きい領域が現れること、すなわち、モータ電流の振幅がピーク値を示すことが判る。そして、耐久試験が進行する程、モータ電流の振幅が大きくなる（画像が濃くなる）ことが判る。
【００６７】
従って、この耐久試験結果により、モータの回転数の変化に対するモータ電流の周波数スペクトルの変化において、減速機の故障の特徴周波数に対応する特定の周波数領域の電流振幅が増大して明確なピーク値を示すことが実証された。
【００６８】
なお、この耐久試験の詳細については、特許第６１４４４０４号掲載公報を参照されたい。
【００６９】
＜防振制御＞
次に、防振制御について詳しく説明する。防振制御は、例えば、防振制御部３３と動作制御部３２との協働動作によって遂行される。防振制御部３３は、機械装置１１の本体の振動を防止できるものであればよい。
【００７０】
以下では、機械装置１１が多関節ロボットである場合において、ロボット本体の振動を防止する防振制御と、当該防振制御を遂行するための防振制御部３３及び動作制御部３２の構成と、を例示する。なお、以下に例示する防振制御は、公知であり、その詳細は、特許第５４１１６８７号掲載公報を参照されたい。
【００７１】
図４は、この防振制御に係るロボットのモデルを示している。図４に示すモデルは４慣性モデルであって、モータとアームとの間のバネ要素の剛性および減衰を考慮したモデルである。また、後述する図８の２慣性モデルとは異なり、モータが、自身が駆動するリンク以外のリンクに取付けられていることを考慮したモデル、すなわち複数のリンク間の干渉を考慮したモデルである。なお、この防振制御で言う「バネ要素」は、広義にはモータとリンクとを連結するものであって、モータシャフトやモータからリンクにトルクを伝達する減速機などのトルク伝達機構も含まれる。
【００７２】
図４の４慣性モデルは、第１および第２モータと、モータによって駆動される第１および第２リンクと、モータとリンクとの間の第１および第２バネ要素とから構成されている。
【００７３】
図４において、角度θＭ１，θＭ２は、第１および第２モータの回転角度（角度位置）である。角度θＬ１，θＬ２は、第１および第２リンクの角度である。第１および第２バネ要素のねじれ角度は、θＭ１−θＬ１、θＭ２−θＬ２で与えられる。また、ＫＳ２，ＫＳ３は第１および第２バネ要素の剛性であって、ＤＳ２，ＤＳ３は第１および第２バネ要素の減衰である。さらに、ｕ１，ｕ２は、第１および第２モータの出力トルクである。
【００７４】
図４に示す４慣性モデルの運動方程式は、遠心力・コリオリ力などの非線形な要素を無視すると、数式１〜４に示すように表現できる。
【００７５】
【数１】
2020079749.tif 000003
【００７６】
【数２】
2020079749.tif 000004
【００７７】
【数３】
2020079749.tif 000005
【００７８】
【数４】
2020079749.tif 000006
【００７９】
数式１〜４において、ＪＬ１１，ＪＬ１２，ＪＬ２１，およびＪＬ２２は、リンクの質量、重心位置、長さなどのロボットパラメータとリンクの角度θＬ１，θＬ２から求まる係数である。また、ＪＭ１，ＪＭ２は、第１および第２モータの慣性である。さらに、
【数５】
2020079749.tif 000007
と
【数６】
2020079749.tif 000008
は、第１および第２バネ要素のねじれ角速度である。
【００８０】
この４つの運動方程式から数式５の次の状態方程式が得られる。
【００８１】
【数７】
2020079749.tif 000009
【００８２】
上述の４慣性モデルを適用した状態観測器を含む第１および第２モータの制御系、すなわち防振制御部３３及び動作制御部３２の制御系の一部のブロック図を図５に示す。
【００８３】
図５に示す状態観測器は、数式５の状態方程式と数式６の出力方程式に基づく観測器、すなわち第１リンクと第２リンクとの間の干渉を考慮した観測器である。この状態観測器は、防振制御部３３の構成要素である。行列Ａ，Ｂ，およびＣは４慣性モデルによって決定される行列である。行列Ｋは、詳細は後述するが、状態観測器の設計パラメータであって、フィードバックゲイン行列である。「∫」は、積分器である。
【００８４】
【数８】
2020079749.tif 000010
【００８５】
この状態観測器は、第１および第２モータそれぞれに対する制御入力（トルクｕ１，ｕ２に対応する入力電流）Ｉ１，Ｉ２と第１および第２モータそれぞれの回転角度θＭ１，θＭ２とに基づいて、状態ｘとして、第１バネ要素のねじれ角度θＭ１−θＬ１およびねじれ角速度
【数９】
2020079749.tif 000011
と第２バネ要素のねじれ角度θＭ２−θＬ２およびねじれ角速度
【数１０】
2020079749.tif 000012
と、を推定する。
【００８６】
厳密に言えば、状態観測器は、第１バネ要素のねじれ角度θＭ１−θＬ１およびねじれ角速度
【数１１】
2020079749.tif 000013
を、第１モータの入力電流Ｉ１および第２モータの入力電流Ｉ２と、第１モータの回転角度θＭ１および第２のモータの回転角度θＭ２とから推定する。また、第２バネ要素のねじれ角度θＭ２−θＬ２およびねじれ角速度
【数１２】
2020079749.tif 000014
を、第１モータの入力電流Ｉ１および第２モータの入力電流Ｉ２と、第１モータの回転角度θＭ１および第２のモータの回転角度θＭ２とから推定する。
【００８７】
そのため、この状態観測器は、第１バネ要素のねじれ角度θＭ１−θＬ１およびねじれ角速度
【数１３】
2020079749.tif 000015
を、これらを第１モータの入力電流Ｉ１と第１モータの回転角度θＭ１のみから推定する場合に比べて、高精度に推定することができる。また、第２バネ要素のねじれ角度θＭ２−θＬ２およびねじれ角速度
【数１４】
2020079749.tif 000016
を、これらを第２モータの入力電流Ｉ２と第２モータの回転角度θＭ２のみから推定する場合に比べて、高精度に推定することができる。
【００８８】
なお、第１および第２モータそれぞれの回転角度θＭ１，θＭ２の代りに、回転角速度
【数１５】
2020079749.tif 000017
であってもよい。すなわち、回転角度または回転角速度のうち、実際に観測可能な方、例えばセンサ（エンコーダ）によって検出可能な方に基づいて状態観測器は状態ｘを推定する。
【００８９】
図５に示す第１および第２トルク補償量演算部は、状態観測器が推定した状態ｘに基づいて、数式７，８を用いて、トルク補償量Ｔｕ１，Ｔｕ２を算出する。
【００９０】
【数１６】
2020079749.tif 000018
【００９１】
【数１７】
2020079749.tif 000019
【００９２】
数式７，８において、Ｆ１，Ｆ２は、トルク補償量Ｔｕ１，Ｔｕ２を演算するためのゲイン行列である。具体的には、ゲイン行列Ｆ１，Ｆ２は、状態観測器が推定した状態ｘ（ねじれ角度とねじれ角速度）から、第１および第２バネ要素のねじれを解消できるトルクを第１および第２モータが出力するように、第１および第２モータの入力電流Ｉ１，Ｉ２に加算するトルク補償量Ｔｕ１，Ｔｕ２を算出するための行列である。
【００９３】
第１トルク補償量演算部が算出したトルク補償量Ｔｕ１は、第１リンク位置／姿勢制御部から出力された第１モータへの入力電流Ｉ１に加算される。第１リンク位置／姿勢制御部は、第１リンクの位置と姿勢とを制御するために、第１モータを制御する、動作制御部３２の構成要素である。
【００９４】
また、第２トルク補償量演算部が算出したトルク補償量Ｔｕ２は、第２リンク位置／姿勢制御部から出力された第２モータへの入力電流Ｉ２に加算される。第２リンク位置／姿勢制御部は、第２リンクの位置と姿勢とを制御するために、第２モータを制御する、動作制御部３２の構成要素である。
【００９５】
このような状態観測器と第１および第２トルク補償量演算部により、第１および第２バネ要素は、第１リンクと第２リンクとの間の干渉を考慮して、そのねじれが解消される。その結果、第１および第２リンクの振動が十分に抑制される。
【００９６】
また、別の効果として、第１リンクと第２リンクの間の干渉を考慮するため（すなわち４慣性モデルであるため）、複数の共振周波数を求めることが可能である。
【００９７】
具体的に説明する。図６（ａ）は、図４に示す４慣性モデルにおける、第１モータへの入力電流から該モータの回転角速度の推定値までのゲイン特性（実施例）を示す図である。一方、図６（ｂ）は、２慣性モデルにおける、モータへの入力電流から該モータの回転角速度の推定値までのゲイン特性（比較例）を示す図である。
【００９８】
図６（ａ）に示すように、４慣性モデルの場合、すなわち第１リンクと第２リンクとの間の干渉を考慮した場合、第１バネ要素および第２バネ要素それぞれについて、その挙動において２つの共振周波数を持つ。一方、図６（ｂ）に示すように、２慣性モデルの場合、モータとリンクとの間のバネ要素は、その挙動において１つの共振周波数を持つ。
【００９９】
したがって、モータとリンクとがそれぞれ複数あるにもかかわらず、２慣性モデルに基づく場合は、現実に存在する複数の共振周波数に対して考慮できず、各バネ要素について１つの共振周波数しか考慮できない。これにより、非考慮の共振周波数によるスピルオーバの問題が起こる。一方、リンク間の干渉を考慮すれば、４慣性モデルが各バネ要素について２つの共振周波数が考慮できるように、モータとリンクとがＮ個ずつある２Ｎ慣性モデルの場合、Ｎ個の共振周波数を考慮することができる。
【０１００】
また、状態観測器は、トルク補償量演算部のゲインを大きく設定することができるように、すなわち、それによって第１リンクや第２リンクの振動をさらに十分に抑制することができるように構成されている。
【０１０１】
このことについて具体的に説明する。
【０１０２】
図５に示す状態観測器の構成は、該状態観測器の状態ｘの推定値を
【数１８】
2020079749.tif 000020
とすると、数式９のように表現することができる。
【０１０３】
【数１９】
2020079749.tif 000021
【０１０４】
状態観測器が推定した状態
【数２０】
2020079749.tif 000022
と実際の状態ｘとの誤差をｅ
【数２１】
2020079749.tif 000023
とすると、数式９から数式１０が得られる。
【０１０５】
【数２２】
2020079749.tif 000024
【０１０６】
誤差ｅの収束はフィードバックゲイン行列Ｋに依存し、フィードバックゲイン行列Ｋは、一般的には、極配置によって数式１０の（Ａ−ＫＣ）の極の実部が負となるように設計されている。この極の実部の値により、誤差ｅの収束度合いが決定される。
【０１０７】
ところが、フィードバックゲイン行列Ｋを、極配置によって数式１０の（Ａ−ＫＣ）の極の実部が負になるように設計すると、モータの停止時に第１リンクや第２リンクに持続振動が発生する。
【０１０８】
この持続振動の発生は、モータの特性を原因とする。通常、モータは非線形な静止摩擦があるため、その入力電流ゼロ付近で不感帯が存在し、モータ停止時に入力電流のオフセットが発生する。また、リンクには重力が作用するので該リンクを一定の姿勢で維持するためのトルクをモータは出力する必要があり、そのためにも入力電流のオフセットが発生する。
【０１０９】
このようなオフセットが発生する入力電流を推定に使用すると、極配置によってフィードバックゲイン行列Ｋが設計されている状態観測器は、モータの停止時、実際の値との誤差が大きいねじれ角度やねじれ角速度を推定する。すなわち、モータの停止時、状態観測器の推定精度が低下する。
【０１１０】
モータの停止時に状態観測器の推定精度が低下すると、トルク補償量演算部が出力するトルク補償量は、図７（ａ）に示すように、モータの停止時、持続振動する。なお、図７（ａ）は、数式１０に示す（Ａ−ＫＣ）の極の実部全てが（−１５０）になるように、フィードバックゲイン行列Ｋを設計した場合を示している。
【０１１１】
図７（ａ）に示すようにトルク補償量が持続振動することを考えると、当然ながらトルク補償量演算部のゲインを大きく設定することはできない（ゲインを大きくすると、リンクが大きく振動する）。
【０１１２】
したがって、トルク補償量演算部のゲインは、モータ停止時の入力電流のオフセットを原因とする、モータの停止時における状態観測器の推定精度の低下を考慮して、小さく設定される。
【０１１３】
そこで、本防振制御における状態観測器では、モータ停止時に入力電流のオフセットが発生しても、モータ停止時において状態観測器の推定精度が低下しないように、すなわちトルク補償量演算部のゲインを大きく設定できるように、フィードバックゲイン行列Ｋが、各モータの入力電流から複数のバネ要素それぞれのねじれ角度およびねじれ角速度に至る複数の伝達関数全てが原点に零点を持つように設計されている。
【０１１４】
具体的には、図４の４慣性モデルに対応する図５の状態観測器の場合、第１モータの入力電流Ｉ１から第１バネ要素のねじれ角度θＭ１−θＬ１に至る伝達関数、入力電流Ｉ１から第１バネ要素のねじれ角速度
【数２３】
2020079749.tif 000025
に至る伝達関数、入力電流Ｉ１から第２バネ要素のねじれ角度θＭ２−θＬ２に至る伝達関数、入力電流Ｉ１から第２バネ要素のねじれ角速度
【数２４】
2020079749.tif 000026
に至る伝達関数、第２モータの入力電流Ｉ２から第１バネ要素のねじれ角度θＭ１−θＬ1に至る伝達関数、入力電流Ｉ２から第１バネ要素のねじれ角速度
【数２５】
2020079749.tif 000027
に至る伝達関数、入力電流Ｉ２から第２バネ要素のねじれ角度θＭ２−θＬ２に至る伝達関数、および入力電流Ｉ２から第２バネ要素のねじれ角速度
【数２６】
2020079749.tif 000028
に至る伝達関数の全てが原点に零点を持つように、フィードバックゲイン行列Ｋが設計されている。言い換えると、８つの伝達関数全てにおいて、分子のｓ０項（ラプラス演算子ｓの０乗の項）の係数がゼロになるように、フィードバックゲイン行列Ｋが設計されている。
【０１１５】
このようなフィードバックゲイン行列Ｋの設計について具体的に説明する。なお、ここでは、説明を簡単にするために、１つのリンクと該リンクを駆動する１つのモータからなる２慣性モデルを例に挙げて説明する。
【０１１６】
２慣性モデルの場合、状態方程式は、モータの回転角度をθＭ、リンクの角度をθＬ、モータの慣性をＪＭ、リンクの慣性をＪＬ、モータとリンクとの間のバネ要素の剛性をＫＳ、バネ要素の減衰をＤＳとすると、数式１１のようになる。
【０１１７】
【数２７】
2020079749.tif 000029
ここで、フィードバックゲイン行列Ｋを
【数２８】
2020079749.tif 000030
とし、モータの回転角度が観測可能（すなわち、
【数２９】
2020079749.tif 000031
）とすると、モータの入力電流からバネ要素のねじれ角度θＭ−θＬの推定値に至る伝達関数は、数式１２のようになる。また、モータの入力電流からバネ要素のねじれ角速度
【数３０】
2020079749.tif 000032
に至る伝達関数は、数式１３のようになる。なお、数式１２および１３における係数ａ０〜ａ４は、数式１４のようになる。
【０１１８】
【数３１】
2020079749.tif 000033
【０１１９】
【数３２】
2020079749.tif 000034
【０１２０】
【数３３】
2020079749.tif 000035
【０１２１】
数式１２，１３に示す２つの伝達関数が原点に零点を持つためには、数式１２の分子のｓ０項の係数Ｋ２ＤＳ−（Ｋ３−Ｋ４）ＪＬと、数式１３の分子のＳ０項の係数Ｋ２ＫＳの両方がゼロになるような値に、フィードバックゲイン行列Ｋの要素Ｋ１〜Ｋ４を決定しなければならない。
【０１２２】
ここで、例えば、フィードバックゲイン行列Ｋを数式１５に示すように与える。
【０１２３】
【数３４】
2020079749.tif 000036
【０１２４】
数式１５において、α，βは調整パラメータである。フィードバックゲイン行例Ｋを数式１５のように設計すれば、数式１２，１３に示す２つの伝達関数の分子のｓ０項の係数がゼロになり、２つの伝達関数は原点に零点を持つ。なお、モータの回転角度ではなく回転角速度が観測可能な場合（すなわち、
【数３５】
2020079749.tif 000037
）、調整パラメータβをゼロにすれば、同様に、２つの伝達関数は原点に零点を持つことができる。
【０１２５】
数式１２，１３の伝達関数が原点に零点を持てば、図７（ｂ）に示すように、モータ停止時における、トルク補償量の持続振動の発生が抑制される。
【０１２６】
これは、モータの入力電流からねじれ角度の推定値やねじれ角速度の推定値までの間の特性に微分が存在するため、低周波数域でのゲインが低下し、一定の入力値に対してはゲインがゼロになることによる。そのため、状態観測器は入力電流のオフセットの影響を受けにくくなり、その推定精度が低下しにくくなる。その結果、モータ停止時において、トルク補償量に持続振動が発生しにくくなり、トルク補償量演算部のゲインを大きく設定することができる。
【０１２７】
当然ながら、モータの入力電流からバネ要素のねじれ角度およびねじれ角速度に至る複数の伝達関数が原点に零点を持つことにより、トルク補償量演算部のゲインを大きく設定することができることは、２慣性モデルに限らない。
【０１２８】
例えば、図４の４慣性モデルにおいて第１モータが停止している場合、すなわち３慣性モデルの場合、状態方程式は数式１６のようになる。
【０１２９】
【数３６】
2020079749.tif 000038
【０１３０】
ここで、フィードバックゲイン行列Ｋを
【数３７】
2020079749.tif 000039
とし、モータの回転角度が観測可能とすると、第２モータの入力電流から第１バネ要素のねじれ角度θＭ１−θＬ１に至る伝達関数の分子のｓ０項の係数は数式１７のように、第２モータの入力電流から第２バネ要素のねじれ角度θＭ２−θＬ２に至る伝達関数の分子のｓ０項の係数は数式１８のように、第２モータの入力電流から第１バネ要素のねじれ角速度
【数３８】
2020079749.tif 000040
に至る伝達関数の分子のｓ０項の係数は数式１９のように、第２モータの入力電流から第２バネ要素のねじれ角速度
【数３９】
2020079749.tif 000041
に至る伝達関数の分子のｓ０項の係数は数式２０のようになる。
【０１３１】
【数４０】
2020079749.tif 000042
【０１３２】
【数４１】
2020079749.tif 000043
【０１３３】
【数４２】
2020079749.tif 000044
【０１３４】
【数４３】
2020079749.tif 000045
【０１３５】
ここで、例えば、フィードバックゲイン行列Ｋを数式２１に示すように与える。
【０１３６】
【数４４】
2020079749.tif 000046
【０１３７】
数式２１において、α，βは調整パラメータである。フィードバックゲイン行例Ｋを数式２１のように設計すれば、第２モータの入力電流から第１バネ要素のねじれ角度θＭ１−θＬ１に至る伝達関数、第２モータの入力電流から第２バネ要素のねじれ角度θＭ２−θＬ２に至る伝達関数、第２モータの入力電流から第１バネ要素のねじれ角速度
【数４５】
2020079749.tif 000047
に至る伝達関数、および第２モータの入力電流から第２バネ要素のねじれ角速度
【数４６】
2020079749.tif 000048
に至る伝達関数は、分子のｓ０項の係数がゼロになり、４つの伝達関数は原点に零点を持つ。
【０１３８】
さらに、図４に示す４慣性モデルにおいても、バックゲイン行列Ｋを数式２２のように設計すれば、第１モータの入力電流Ｉ１から第１バネ要素のねじれ角度θＭ１−θＬ１に至る伝達関数、入力電流Ｉ１から第１バネ要素のねじれ角速度
【数４７】
2020079749.tif 000049
に至る伝達関数、入力電流Ｉ１から第２バネ要素のねじれ角度θＭ２−θＬ２に至る伝達関数、入力電流Ｉ１から第２バネ要素のねじれ角速度
【数４８】
2020079749.tif 000050
に至る伝達関数、第２モータの入力電流Ｉ２から第１バネ要素のねじれ角度θＭ１−θＬ1に至る伝達関数、入力電流Ｉ２から第１バネ要素のねじれ角速度
【数４９】
2020079749.tif 000051
に至る伝達関数、入力電流Ｉ２から第２バネ要素のねじれ角度θＭ２−θＬ２に至る伝達関数、および入力電流Ｉ２から第２バネ要素のねじれ角速度
【数５０】
2020079749.tif 000052
に至る伝達関数の全てが原点に零点を持つ。
【０１３９】
【数５１】
2020079749.tif 000053
【０１４０】
数式１５，２１，２２に示すように、慣性モデルに関わらず、トルク補償量演算部のゲインを大きく設定することができる、フィードバックゲイン行列Ｋは、
【数５２】
2020079749.tif 000054
の形で表現することができる。したがって、複数モータのうち停止中のモータを特定することにより慣性モデルを決定し、決定した慣性モデルに基づく行列Ｂ、Ｃからフィードバックゲイン行列Ｋを算出することができる。
【０１４１】
［動作］
次に、以上のように構成された故障診断装置１の動作を説明する。なお、故障診断装置１の動作は、本実施形態に係る故障診断方法でもある。駆動機構５１の故障診断は、機械装置１１が行う作業において、防振制御を行わなくても作業に支障を来さず且つ加減速を伴うタイミングを選択して実施される。このようなタイミングとして、作業開始時又は作業終了時が例示される。ここでは、作業開始時に駆動機構５１の故障診断を実施する場合を例示する。
【０１４２】
図９は、図１の故障診断装置の動作を示すフローチャートである。
【０１４３】
図１、２、及び９を参照すると、まず、防振制御停止部４１が、防振制御停止指令を機械装置１１の防振制御部３３に出力する（ステップＳ１）。防振制御部３３は、防振制御停止指令を受け取ると、防振制御を停止させるとともに、動作制御部３２に防振制御を停止した旨の信号を送る。動作制御部３２は、この信号を受け取ると、機械装置１１を動作させ、故障診断装置１の防振制御停止部４１に動作開始信号を出力する。この動作開始信号を受け取ると防振制御停止部４１は、各機能部２−９による故障診断を開始させる。
【０１４４】
この状態において、故障診断装置１は、時間（周期）を取得する（ステップＳ２）。
【０１４５】
また、回転数取得部２が、モータ１４の回転数を取得する（ステップＳ３）。
【０１４６】
また、モータ電流取得部４が、モータ１４のモータ電流を取得する（ステップＳ４）。
【０１４７】
ここで、ステップＳ２（時間取得）、ステップＳ３（回転数取得）、ステップＳ４（モータ電流取得）は相互に順番が入れ替わってもよい。
【０１４８】
次いで、加減速期間特定部３が、回転数取得部２により取得されるモータの回転数に基づいて加減速期間を特定する（ステップＳ５）。
【０１４９】
次いで、時系列回転数データ生成部５が、加減速期間において回転数取得部２により取得されるモータの回転数を順次サンプリングして一群の時系列回転数データを生成する。また、時系列モータ電流データ生成部６が、加減速期間においてモータ電流取得部４により取得されるモータ電流を順次サンプリングして一群の時系列モータ電流データを生成する。（ステップＳ６）。
【０１５０】
ここで、故障診断装置１は、予めサンプリング周波数を決定する。また、モータの１回転におけるサンプリング点数を定義する。
【０１５１】
次いで、ＦＦＴ解析部７が、一群の時系列モータ電流データを一群の時系列回転数データにそれぞれ対応させて周波数解析し、一群の時系列回転数データ２１にそれぞれ対応する一群のモータ電流データの周波数スペクトル２２を生成する（ステップＳ７）。
次いで、振幅ピーク値抽出部８が、一群のモータ電流データの周波数スペクトル２２のうちの、駆動機構５１の故障の特徴周波数ｆ０に対応する所定の周波数領域ｆｒにおけるモータ電流の振幅のピーク値２４を抽出する。
【０１５２】
次いで、判定部９が、抽出されたモータ電流の振幅のピーク値２４を所定の振幅閾値と比較し、その結果に基づいて駆動機構５１に故障の兆候があるか否かを判定する。具体的には、モータ電流の振幅のピーク値２４が所定の振幅閾値以上であると駆動機構５１に故障の兆候があると判定し、モータ電流の振幅のピーク値２４が所定の振幅閾値未満であると駆動機構５１に故障の兆候がないと判定する。
【０１５３】
これにより、故障兆候の有無判定は終了し、防振制御停止部４１が、機械装置１１の防振制御部３３に防振制御開始指令を送信する（ステップＳ１０）。すると、防振制御部３３がこの防振制御開始指令を受けて、防振制御を開始させ、故障診断が終了する。
【０１５４】
なお、機械装置１１の作業中に駆動機構５１の故障診断を行う場合は、ステップS１において、防振制御部３３は、防振制御停止部４１から防振制御停止指令を受け取ると、防振制御を停止するとともに防振制御を停止した旨の信号を防振制御停止部４１に送る。防振制御停止部４１は、この信号を受けると、機能部２−９による故障診断を開始させる。これ以降の処理は、上記と同じである。
【０１５５】
［実験］
本発明者等は、モータ電流の周波数スペクトルにおける周波数成分の値（モータ電流の振幅）に及ぼす防振制御の影響を実験により確認した。
【０１５６】
この実験では、機械装置１１の一例として多関節ロボットを用い、本体３１としてのロボット本体（ロボットアーム）の減速機１３の正常なインプットギアを故障したインプットギアに置換した。また、コントローラ１７としてのロボット制御器は、上述の防振制御を行うよう構成されている。
【０１５７】
そして、防振制御をＯＮした状態に対する当該防振制御をＯＦＦした状態におけるモータ電流の周波数スペクトルにおける周波数成分の値（モータ電流の振幅）の差分を求めた。この結果を図１０に示す。
【０１５８】
図１０は、ロボット本体の防振制御をＯＮした状態に対する当該防振制御をＯＦＦした状態におけるモータ電流の周波数スペクトルにおける周波数成分の値（モータ電流の振幅）の差分を示すグラフである。
【０１５９】
図１０において、横軸はモータの回転数（ｒｐｍ）を表し、縦軸は周波数を表し、画像の階調がモータ電流の振幅の差分（以下、モータ電流値の差分という）（Ａ）を表している。画像が濃い（黒い）程、モータ電流値の差分が大きく、画像が淡い（白い）程、モータ電流値の差分が小さい。また、点線は故障したインプットギアの特徴周波数を表す。
【０１６０】
図１０を参照すると、この故障したインプットギアの特徴周波数を表す点線に沿って、モータ電流値の差分が正の値を有する領域が存在し、特に、周波数が９０−１００Ｈｚでモータの回転数が１４００ｒｐｍ付近である領域では、電流値の差分が０．０８−０．１２Ａの値を有する。
【０１６１】
従って、この実験結果から、ロボット本体の防振制御をＯＮした状態より当該防振制御をＯＦＦした状態の方がモータ電流の周波数スペクトルにおける周波数成分の値（モータ電流の振幅）が大きくなることが判る。
【０１６２】
なお、故障の特徴周波数は、駆動機構５１の要素及び故障の態様に依存して異なる。図１０の故障の特徴周波数が図３Ａ及び図３Ｂの故障の特徴周波数と異なるが、これは、両者の実験の対象が異なることによるものである。
【０１６３】
［作用効果］
以上に説明したように、本実施形態によれば、機械装置１１の加減速期間では、モータ１４の回転数データＲの変化に対するモータ電流の周波数スペクトルＳの変化において、駆動機構５１の故障の特徴周波数ｆ０に対応する特定の周波数領域ｆｒの電流振幅が駆動機構５１の共振により増大してピーク値２４を示すが、このピーク値２４は駆動機構５１の故障の兆候と相関がある。そのため、モータ１４の回転数データＲの変化に対するモータ電流の周波数スペクトルＳの変化に基づいて、駆動機構５１に故障の兆候があるか否かを判定することができるので、減速機１３が設けられた機械装置１１の作業中に故障診断を行うことができる。
【０１６４】
一方、この故障診断は駆動機構５１の共振を利用するので、本体３１の振動が大きい方がモータ電流の周波数スペクトルＳにおけるピーク値２４が大きくなり、駆動機構５１の故障の兆候があるか否かの判定の精度（感度）が向上する。従って、本実施形態のように、故障診断の際、機械装置１１の防振制御部３３に指令を送って防振制御を停止させることにより、駆動機構５１の故障を、より早期に検知することができる。
【０１６５】
なお、機械装置１１では、防振制御を停止しても作業に支障を来さず且つ加減速を伴う動作（例えば、作業の開始又は終了時等）が存在するので、作業中に、防振制御を停止させた状態で駆動機構５１の故障診断を行うことが可能である。
【０１６６】
上記説明から、当業者にとっては、本発明の多くの改良や他の実施形態が明らかである。従って、上記説明は、例示としてのみ解釈されるべきであり、本発明を実行する最良の態様を当業者に教示する目的で提供されたものである。本発明の精神を逸脱することなく、その構造および／又は機能の詳細を実質的に変更できる。
【産業上の利用可能性】
【０１６７】
本発明の駆動機構の故障診断装置等は、本体を防振制御する機械装置において、より早期に駆動機構の故障を検知することが可能な駆動機構の故障診断装置等として有用である。
【符号の説明】
【０１６８】
１  故障診断装置
２  回転数取得部
３  加減速期間特定部
４  モータ電流取得部
５  時系列回転数データ生成部
６  時系列モータ電流データ生成部
７  ＦＦＴ解析部
８  振幅ピーク値抽出部
９  判定部
１０  出力部
１１  機械部
１２  動作部
１３  減速機
１３ａ  出力軸
１４  モータ
１４ａ  回転軸
１５  電力変換器
１６  エンコーダ
１７  コントローラ
１８  回転角
１９  電流
２０  電流指令値
２１  一群の時系列回転数データ
２２  一群の時系列モータ電流データの周波数スペクトル
３１  本体
３２  動作制御部
３３  防振制御部
４１  防振制御停止部
５１  駆動機構
【図１】
2020079749.tif 000055
【図２】
2020079749.tif 000056
【図３Ａ】
2020079749.tif 000057
【図３Ｂ】
2020079749.tif 000058
【図４】
2020079749.tif 000059
【図５】
2020079749.tif 000060
【図６】
2020079749.tif 000061
【図７】
2020079749.tif 000062
【図８】
2020079749.tif 000063
【図９】
2020079749.tif 000064
【図１０】
2020079749.tif 000065