(57)【要約】【課題】簡単な制御系で、ロボットアームの振動、特に作業機構を備えるアーム先端部においての目標位置停止時の振動が抑制できるロボットと制御方法を提供する。【解決手段】アクチュエーターと、角度センサーを含むアーム連結装置と、アーム体と、前記アーム体が回転可能に連結された基体と、被作業物保持手段が取り付けられた作業アームには慣性センサーと、を備え、前記アームの角速度を演算する第１演算部と、前記作業アームの慣性センサーの取付位置での角速度を演算する第２演算部と、前記アーム間のねじれ角速度を演算する第３演算部と、前記ねじれ角速度から、前記作業アームのオーバーシュートを演算する第４演算部と、前記作業アームの前記オーバーシュートとオーバーシュート規定値との比較手段を含み、前記比較手段のオーバーシュート比較結果によって速度ループ積分ゲインを増減させる制御部とを備えることを特徴とするロボット装置。【選択図】図２
2013121634.tif 000002
【特許請求の範囲】
【請求項１】
アクチュエーターと、前記アクチュエーターの回転角度を検出する角度センサーを含むアーム連結装置と、
複数のアームが、前記アーム連結装置により直列且つ回転可能に連結されたアーム体と、
前記アーム体の一方の端部に設けられた前記アクチュエーターと前記アクチュエーターの回転角度を検出する角度センサーを含む基体連結装置により前記アーム体が回転可能に連結された基体と、
複数の前記アームの内、被作業物保持手段が取り付けられた作業アームの前記被作業物保持手段が取り付けられる取付位置には、少なくとも角速度センサーを含む、慣性センサーと、を備え、
前記角度センサーの回転角度検出データより、前記アームの角速度を演算する第１演算部と、
前記慣性センサーの角速度検出データより、前記作業アームの前記取付位置での角速度を演算する第２演算部と、
前記アームの前記角速度と、前記慣性センサーの前記角速度検出データによって演算された前記アームの前記角速度と、の差より、前記アクチュエーターと前記アクチュエーターに連結される前記アームとの間のねじれ角速度を演算する第３演算部と、
前記ねじれ角速度から、前記作業アームのオーバーシュートを演算する第４演算部と、
前記作業アームの前記オーバーシュートとオーバーシュート規定値とを比較する比較手段を含み、前記比較手段のオーバーシュート比較結果によって速度ループ積分ゲインを増減させる制御部と、を備える、
ことを特徴とするロボット装置。
【請求項２】
前記比較部は、前記作業アームのタクトタイムとタクトタイム規定値とを比較し、前記オーバーシュート比較結果とタクトタイム比較結果と、により前記速度ループ積分ゲインを増減させる、
ことを特徴とする請求項１に記載のロボット装置。
【請求項３】
前記第４演算部によって演算された前記オーバーシュート、および前記タクトタイムの結果を表示する外部表示手段を備える、
ことを特徴とする請求項１または２に記載のロボット装置。
【請求項４】
アクチュエーターと、前記アクチュエーターの回転角度を検出する角度センサーを含むアーム連結装置と、
複数のアームが、前記アーム連結装置により直列且つ回転可能に連結されたアーム体と、
前記アーム体の一方の端部に設けられた前記アクチュエーターと前記アクチュエーターの回転角度を検出する角度センサーを含む基体連結装置により前記アーム体が回転可能に連結された基体と、
複数の前記アームの内、被作業物保持手段が取り付けられた作業アームの前記被作業物保持手段が取り付けられる取付位置には、少なくとも角速度センサーを含む、慣性センサーと、を備えるロボット装置の制御方法であって、
前記角度センサーの回転角度検出データより、前記アームの角速度を演算する第１演算工程と、
前記慣性センサーの角速度検出データより、前記作業アームの前記取付位置での角速度を演算する第２演算工程と、
前記アームの前記角速度と、前記慣性センサーの前記角速度検出データによって演算された前記アームの前記角速度と、の差より、前記アクチュエーターと前記アクチュエーターに連結される前記アームとの間のねじれ角速度を演算する第３演算工程と、
前記ねじれ角速度から、前記作業アームのオーバーシュートを演算する第４演算工程と、
前記作業アームの前記オーバーシュートとオーバーシュート規定値とを比較する比較工程と、
前記比較手段のオーバーシュート比較結果によって速度ループ積分ゲインを増減させる制御工程と、を含む、
ことを特徴とするロボット装置の制御方法。
【請求項５】
前記比較工程は、前記作業アームのタクトタイムとタクトタイム規定値とを比較し、前記オーバーシュート比較結果とタクトタイム比較結果と、により前記速度ループ積分ゲインを増減させる、
ことを特徴とする請求項４に記載のロボット装置の制御方法。
【請求項６】
前記第４演算工程によって演算された前記オーバーシュート、および前記タクトタイムの結果を表示する外部表示工程を備える、
ことを特徴とする請求項４または５に記載のロボット装置の制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ロボット装置およびロボット装置の制御方法に関する。
【背景技術】
【０００２】
ＩＣハンドラーや組立装置の一部として多く使われている多関節構造を有するロボット装置は、様々な産業現場の中で多用されてきている。故に、ロボット装置には今まで以上に、求められる位置にいかに早く且つ正確にアームを移動させることができるかが重要な性能仕様、品質になってきている。一般的にアームを高速に且つ正確に移動させるには、アームに掛かる慣性力を小さくし、駆動用のアクチュエーターの負荷を大きくさせないことが必要である。アームに掛かる慣性力を小さくするには、アームの軽量化が最も効果的な手法として用いられている。しかし、アームを軽量化することによりアーム剛性の低下を招き、アーム停止時に生じるアームの振動を抑制することが困難になり、制御信号に基づいてアーム先端部を目的の位置で停止させたと判断されても、実際にはアーム自体の振動の振幅分の位置ズレが生じてしまい、振動が減衰する時間まで次の動作を開始することができないという問題があった。
【０００３】
この問題に対して、例えば特許文献１ではロボットアームの弾性変形を考慮したゲイン調整評価関数を設定する手段を備え、モーターなどの駆動源の駆動位置だけに基づく制御ゲインを、設定されたゲイン調整評価関数によって調整された調整後の制御ゲインを用いてロボットアームを制御することで、ロボットアームの弾性変形が考慮された高精度の制御を可能にすることが開示されている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００１−９２５１１号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかし、上述の特許文献１では、ロボットアームを駆動する制御系に加えてゲイン調整評価関数を設定し調整された制御ゲインを生成する振動制御の制御系を備えなければならず、複雑な制御系の構築をしなければならなかった。
【０００６】
そこで、簡単な制御系であっても、ロボットアームの振動、特に作業機構を備えるアーム先端部においての目標位置停止時の振動が抑制できるロボット装置およびその制御方法を提供する。
【課題を解決するための手段】
【０００７】
本発明は、少なくとも上述の課題の一つを解決するように、下記の形態または適用例として実現され得る。
【０００８】
〔適用例１〕本適用例のロボット装置は、アクチュエーターと、前記アクチュエーターの回転角度を検出する角度センサーを含むアーム連結装置と、複数のアームが、前記アーム連結装置により直列且つ回転可能に連結されたアーム体と、前記アーム体の一方の端部に設けられた前記アクチュエーターと前記アクチュエーターの回転角度を検出する角度センサーを含む基体連結装置により前記アーム体が回転可能に連結された基体と、複数の前記アームの内、被作業物保持手段が取り付けられた作業アームの前記被作業物保持手段が取り付けられる取付位置には、少なくとも角速度センサーを含む、慣性センサーと、を備え、前記角度センサーの回転角度検出データより、前記アームの角速度を演算する第１演算部と、前記慣性センサーの角速度検出データより、前記作業アームの前記取付位置での角速度を演算する第２演算部と、前記アームの前記角速度と、前記慣性センサーの前記角速度検出データによって演算された前記アームの前記角速度と、の差より、前記アクチュエーターと前記アクチュエーターに連結される前記アームとの間のねじれ角速度を演算する第３演算部と、前記ねじれ角速度から、前記作業アームのオーバーシュートを演算する第４演算部と、前記作業アームの前記オーバーシュートとオーバーシュート規定値とを比較する比較手段を含み、前記比較手段のオーバーシュート比較結果によって速度ループ積分ゲインを増減させる制御部と、を備えることを特徴とする。
【０００９】
本適用例におけるオーバーシュートおよびタクトタイムを、図１により説明する。図１に示すように、本適用例のロボット装置のアーム体における被作業物保持手段が設けられる作業アームは、作業アーム待機位置から動作指令を受けて、被作業物保持手段が取り付けられている取付位置が所定の作業アーム停止規定位置まで駆動される。この際、作業アーム停止規定位置にアーム体の取付位置が到達しても、アーム体の慣性によってアーム体はアーム体の弾性範囲において弾性変形し、作業アーム停止規定位置を越えて振れ、最初の振幅から時間の経過とともに徐々に振幅が減衰し、アーム体は停止する。この最初に現れる作業アーム最大振れ位置までの作業アーム停止規定位置からの移動量を「オーバーシュート」と言う。また、作動アーム待機位置から駆動を始めて取付位置が作動アーム停止規定位置に到達するまでの時間を「タクトタイム」と言う。
【００１０】
適用例１のロボット装置によれば、初期に設定されたオーバーシュート規定値内のオーバーシュートが、稼働時間の経過とともにシフトしてオーバーシュート規定値から外れる状態になっても、速度ループ積分ゲインを増減させることにより、長時間に亘ってオーバーシュート規定値内でロボット装置を稼動させることができる、すなわちロボットアームの振動、特にアーム先端部に備える被作業物保持手段の設置位置における目標位置停止時の振動が抑制できるロボット装置を得ることができる。また、ロボット装置の駆動中においてオーバーシュートを演算し適正な速度ループ積分ゲインを調整することにより、長期的な動作の安定性、生産性を初期の性能で維持することができる。
【００１１】
〔適用例２〕上述の適用例において、前記比較部は、前記作業アームのタクトタイムとタクトタイム規定値とを比較し、前記オーバーシュート比較結果とタクトタイム比較結果と、により前記速度ループ積分ゲインを増減させることを特徴とする。
【００１２】
上述の適用例によれば、オーバーシュートの調整に加えて、タクトタイムもタクトタイム規定値になるように速度ループ積分ゲインの増減で調整することで、長時間に亘ってタクトタイム規定値内でロボット装置を稼動させることができ、生産性を初期値の性能で維持することができる。
【００１３】
〔適用例３〕上述の適用例において、前記第４演算部によって演算された前記オーバーシュート、および前記タクトタイムの結果を表示する外部表示手段を備えることを特徴とする。
【００１４】
上述の適用例によれば、外部表示手段に所定の表示内容を表示させることができるため、オペレーターの判断によってロボット装置の駆動を制御することも可能となり、更に安全性、生産性を高めることができる。
【００１５】
〔適用例４〕本適用例のロボット装置の制御方法は、アクチュエーターと、前記アクチュエーターの回転角度を検出する角度センサーを含むアーム連結装置と、複数のアームが、前記アーム連結装置により直列且つ回転可能に連結されたアーム体と、前記アーム体の一方の端部に設けられた前記アクチュエーターと前記アクチュエーターの回転角度を検出する角度センサーを含む基体連結装置により前記アーム体が回転可能に連結された基体と、複数の前記アームの内、被作業物保持手段が取り付けられた作業アームの前記被作業物保持手段が取り付けられる取付位置には、少なくとも角速度センサーを含む、慣性センサーと、を備えるロボット装置の制御方法であって、前記角度センサーの回転角度検出データより、前記アームの角速度を演算する第１演算工程と、前記慣性センサーの角速度検出データより、前記作業アームの前記取付位置での角速度を演算する第２演算工程と、前記アームの前記角速度と、前記慣性センサーの前記角速度検出データによって演算された前記アームの前記角速度と、の差より、前記アクチュエーターと前記アクチュエーターに連結される前記アームとの間のねじれ角速度を演算する第３演算工程と、前記ねじれ角速度から、前記作業アームのオーバーシュートを演算する第４演算工程と、前記作業アームの前記オーバーシュートとオーバーシュート規定値とを比較する比較工程と、前記比較手段のオーバーシュート比較結果によって速度ループ積分ゲインを増減させる制御工程と、を含むことを特徴とする。
【００１６】
本適用例のロボット装置の制御方法は、初期に設定されたオーバーシュート規定値内のオーバーシュートが、稼働時間の経過とともにシフトしてオーバーシュート規定値から外れる状態になっても、速度ループ積分ゲインを増減させる制御方法を実行させることにより、長時間に亘ってオーバーシュート規定値内でロボット装置を稼動させることがでる、すなわちロボットアームの振動、特にアーム先端部に備える被作業物保持手段の設置位置における目標位置停止時の振動が抑制できるロボット装置を得ることができる。また、ロボット装置の駆動中においてオーバーシュートを演算し適正な速度ループ積分ゲインを調整することにより、長期的な動作の安定性、生産性を初期の性能で維持することができる。
【００１７】
〔適用例５〕上述の適用例において、前記比較工程は、前記作業アームのタクトタイムとタクトタイム規定値とを比較し、前記オーバーシュート比較結果とタクトタイム比較結果と、により前記速度ループ積分ゲインを増減させることを特徴とする。
【００１８】
上述の適用例によれば、オーバーシュートを調整する制御方法に加えて、タクトタイムもタクトタイム規定値になるように速度ループ積分ゲインの増減で調整する制御方法を実行することで、長時間に亘ってタクトタイム規定値内でロボット装置を稼動させることができ、生産性を初期値の性能で維持することができる。
【００１９】
〔適用例６〕上述の適用例において、前記第４演算工程によって演算された前記オーバーシュート、および前記タクトタイムの結果を表示する外部表示工程を備えることを特徴とする。
【００２０】
上述の適用例によれば、外部表示手段に所定の表示内容を表示させる工程を備えることにより、オペレーターの判断によってロボット装置の駆動を制御することも可能となり、更に安全性、生産性を高めることができる。
【図面の簡単な説明】
【００２１】
【図１】オーバーシュートおよびタクトタイムの定義を説明する図。
【図２】第１実施形態に係るロボット装置を示し、（ａ）は概略平面図、（ｂ）は概略断面図。
【図３】第１実施形態に係るロボット装置の構成を示す制御ブロック図。
【図４】図２に示すロボット装置を、特性模型で表した連結装置で示す構成図。
【図５】図３に示す制御部に含む制御手段の構成を示すブロック図。
【図６】アーム振動の挙動を示す図。
【図７】第２実施形態に係るロボット装置の制御方法のフローチャート。
【図８】第２実施形態に係るロボット装置のゲイン調整方法のフローチャート。
【発明を実施するための形態】
【００２２】
以下、図面を参照して、本発明に係る実施形態を説明する。
【００２３】
（第１実施形態）
図２は第１実施形態に係るロボット装置を示し、（ａ）は概略平面図、（ｂ）は概略断面図である。本実施形態のロボット装置は、水平方向に回転可能に２本のアームが連結された、いわゆる２軸水平多関節ロボット１００（以下、ロボット装置１００という）である。
【００２４】
ロボット装置１００は、第１アーム１１と第２アーム１２とがアーム連結装置２０によって回転可能に連結されて構成されるアーム体１０を備えている。アーム体１０は、基体連結装置３０により、基盤に固定された基体４０と回転可能に連結され、ロボット装置１００を構成している。
【００２５】
アーム連結装置２０は、アクチュエーター５１と、アクチュエーター５１のトルクを所定の減速比で伝達するトルク伝達装置６１と、を含む。また、基体連結装置３０は、アクチュエーター５２と、アクチュエーター５２のトルクを所定の減速比で伝達するトルク伝達装置６２と、を含む。アーム体１０の基体４０とは反対の端部となる第２アーム１２の端部には加工用ツールもしくは被加工物を保持する被作業物保持手段としてのワーク保持装置７０が備えられている。
【００２６】
アーム連結装置２０に含まれるアクチュエーター５１には回転角度を検出する角度センサー８１が備えられている。また、基体連結装置３０にも、アクチュエーター５２に角度センサー８２が備えられている。また、第２アーム１２のワーク保持装置７０が備えられる取付位置Ｐに対応する位置に慣性センサー９０が備えられている。慣性センサー９０は、少なくとも角速度センサーを含み、慣性センサー９０の取付位置、すなわちワーク保持装置７０の取付位置Ｐでの角速度および位置の検出を可能にしている。
【００２７】
図３は、本実施形態に係るロボット装置１００の構成を示す制御ブロック図である。ＣＰＵ２００は、後述する第１演算部５１０、第２演算部５２０、第３演算部５３０、第４演算部５４０および制御部６００を含み、ＲＯＭ３００に記憶されたプログラムを読み出して実行する。また、ＲＡＭ４００はＣＰＵ２００におけるプログラム実行によって得られるデータを保存し、ＣＰＵ２００へ保存されたデータから必要なデータを送出する。
【００２８】
ロボット装置１００に備える角度センサー８１，８２によって検出されたアクチュエーター５１，５２の回転角度データは、第１演算部５１０においてアクチュエーター５１の回転角度θ１、アクチュエーター５２の回転角度θ２、に換算され、換算されたそれぞれの回転角度θ１、θ２を時間で１回微分し、アクチュエーターの回転角速度を演算する。
【００２９】
得られたアクチュエーターの回転角速度から、アクチュエーターが駆動するアームの回転角速度を求める。第１アーム１１の場合は、アクチュエーター５２から減速比１／Ｎ２を持つトルク伝達装置６２によって駆動されるため、基体連結装置３０の出力部の回転角速度ω２は、
ω２＝（ｄθ２／ｄｔ）×（１／Ｎ２）
となる。
【００３０】
同様に、第２アーム１２を駆動するアクチュエーター５１を含むアーム連結装置２０の出力部の回転角速度ω１は、
ω１＝（ｄθ１／ｄｔ）×（１／Ｎ１）
１／Ｎ１：トルク伝達装置６１の減速比
となる。
【００３１】
第２演算部５２０では、第２アーム１２に備えられた慣性センサー９０が検出した検出値から、アーム体１０の角速度としての基体連結装置３０を回転軸とする慣性センサー９０の配置位置、すなわちワーク保持装置７０部の角速度ωaが演算される。
【００３２】
第３演算部５３０では、上述のように演算されたアクチュエーター５１の回転によるアクチュエーター５１を含む連結装置を回転軸とする第２アーム１２の角速度ω１、第１アーム１１の角速度ω２と、第２アーム１２に取り付けられた慣性センサー９０から得られた基体連結装置３０を回転軸とする第２アームの角速度ωaとの差であるねじれ角速度ωbが、
ωb＝ωa−ω２−ω１
によって得られる。得られたねじれ角速度ωbは、第１アーム１１に起因するねじれ角速度ωb1と、第２アーム１２に起因するねじれ角速度ωb2と、が合成されたものと考えられ、
ωb＝ωb1＋ωb2
と表される。換言すれば、ねじれ角速度ωbを、各アーム１１，１２に起因するねじれ角速度ωb1，ωb2に分解することによって、アーム体１０の振動を適正なオーバーシュートおよびタクトタイムになるようにアクチュエーター５１，５２を制御するための積分ゲインの調整をすることができる。
【００３３】
ねじれ角速度ωbを、各アーム１１，１２に起因するねじれ角速度ωb1，ωb2に分解する方法を説明する。図４は、図２に示すロボット装置１００のアーム連結装置２０および基体連結装置３０を、ばね特性と減衰特性（ダンパー特性）の特性模型で表した図である。図４に示すように、ロボット装置１００のアーム連結装置２０は、仮想ばね２０ａと仮想減衰装置２０ｂとを備えて第１アーム１１と第２アーム１２が連結され、基体連結装置３０は、仮想ばね３０ａと仮想減衰装置３０ｂとを備えて第１アーム１１が基体４０に連結されている、と模型的にロボット装置１００を示すことができる。この模型化したロボット装置１００において、第１アーム１１と第２アーム１２では、重量、長さ、剛性などが異なることが一般的であり、そのことによって第１アーム１１が基体連結装置３０に備えるアクチュエーター５２によって駆動される場合の周波数応答と、第２アーム１２がアーム連結装置２０に備えるアクチュエーター５１によって駆動される場合の仮想ばね２０ａ，３０ａと仮想減衰装置２０ｂ，３０ｂとの構成を用いて算出される周波数応答と、では異なる特性を示す。
【００３４】
すなわち、第１アーム１１は、基体連結装置３０に備えるアクチュエーター５２は高出力のものを備えることができるため、高い剛性を備え、重量も重くすることができる。一方、第２アーム１２は、第１アーム１１にアーム連結装置２０を備えるため、小型で低出力のアクチュエーター５１とする必要があることから、軽量化が図られている。そのように構成されることにより、第１アーム１１と第２アーム１２とでは周波数特性が異なることに注目し、ねじれ角速度ωbを、各アーム１１，１２に起因するねじれ角速度ωb1，ωb2に分解することができる。具体的には、第３演算部５３０に、第１アーム１１と第２アーム１２とで異なる周波数特性に対応したそれぞれの特性を備えるバンドパスフィルターによってねじれ角速度ωbをフィルタリングすることによって、第１アーム１１のねじれ角速度ωb1成分と、第２アーム１２のねじれ角速度ωb2成分と、を抽出し、得ることができる。
【００３５】
このようにして得られた、第１アーム１１のねじれ角速度ωb1成分と、第２アーム１２のねじれ角速度ωb2成分と、を第４演算部５４０において積分し、取付位置Ｐ（図２参照）における図１に示すような振動を算出し、オーバーシュートを演算し、タクトタイムも取得する。
【００３６】
算出された振動による取付位置Ｐのオーバーシュートおよびタクトタイムのデータは、制御部６００に送られる。制御部６００では、ロボット装置１００の仕様として規定されている、オーバーシュート規定値およびタクトタイム規定値と、第４演算部５４０から送られたオーバーシュートおよびタクトタイムと、が比較手段としての比較部６１０において比較され、その比較結果に基づいて制御部６００に備える制御手段６２０に含む速度ループ積分ゲインを調整する。
【００３７】
図５に制御手段６２０の一例としての制御ブロック図を示す。図５の制御ブロック図に示すように、制御手段６２０は速度ループ積分ゲインＫｖｉ６２０ａ（以下、Ｋｖｉ６２０ａという）を含む制御ループにより構成されている。比較部６１０における比較結果に基づきゲイン調整指示部６２０ｂは、Ｋｖｉ６２０ａにゲインの増減が指示され、オーバーシュートおよびタクトタイムを規定値に合わせ込むように調整される。具体的には、入力される位置指令とアクチュエーター５１，５２が検出した現在位置との差分を基に位置ループ６２０ｃが速度指令を生成する。なお、位置ループ６２０ｃとしては比例ゲインＫｐｐによる比例制御などが好ましい。この速度指令と角度センサー８１，８２が検出した現在位置とを微分し、実際速度との偏差に対して比例ゲインＫｐ６２０ｄを調整する比例制御と、積分ゲインＫｖｉ６２０ａを調整する積分制御とを実施し、速度指令に基づく速度になるよう電流指令が生成される。そして、電流指令と実際の駆動電流との差分に対し、電流ループ６２０ｅ（比例制御、積分制御）を行い、モーターに電流指令通りの電流が供給されるように制御される。このように制御されることにより、モーターは位置指令および速度指令に合った駆動状態となる。
【００３８】
ここで、ゲイン調整について説明する。本来、本実施形態に係るロボット装置１００において、取付位置Ｐのオーバーシュートおよびタクトタイムは、できるだけ小さいことが好ましい。しかし、上述したように、アーム１１，１２の弾性変形によるアーム体１０の停止時に生じる振動は避けられず、予めロボット装置１００に行わせる作業内容によって所定の仕様に基づくオーバーシュート規定値およびタクトタイム規定値が定められる。図６（ａ）は要求仕様であるオーバーシュート規定値およびタクトタイム規定値の範囲内で制御された状態の取付位置Ｐの動作軌跡を示し、図６（ｂ）はオーバーシュートが規定値内であるがタクトタイムが規定値を超えた状態の取付位置Ｐの動作軌跡を示し、図６（ｃ）はタクトタイムが規定値内であるがオーバーシュートが規定値を超えた状態の取付位置Ｐの動作軌跡を示す。
【００３９】
図６（ａ）に示すようにロボット装置１００は予め調整され、製造出荷される。すなわち、取付位置Ｐは待機停止状態のＳ０位置から駆動を開始し、停止規定位置ＳｓまでのタクトタイムＴａはタクトタイム規定値Ｔｓ以下に設定される。そして規定停止位置Ｓｓに到達後、アーム体１０の振動によりオーバーシュートＤａを生じ、時間の経過に従って振動は減衰してゆく。このオーバーシュートＤａも、オーバーシュート規定値Ｄｓ以下に設定され、取付位置Ｐの動作軌跡Ｆ０の振動形態となる。このオーバーシュート規定値Ｄｓは、ワーク保持装置７０によってワーク保持が可能な領域に対応して設定される。しかし、ロボット装置１００を稼動させることで、徐々にオーバーシュートＤａ、タクトタイムＴａは変化し、オーバーシュート規定値Ｄｓ、タクトタイム規定値Ｔｓを超える場合がある。すなわち、一例として図６（ｂ），（ｃ）に示す取付位置Ｐの動作軌跡Ｆ１，Ｆ２の振動形態となる場合である。
【００４０】
図６（ｂ）に示す動作軌跡Ｆ１は、オーバーシュートＤｂはオーバーシュート規定値Ｄｓより小さいオーバーシュートの動作軌跡Ｆ１の振動であるため、言い換えると振動は短時間で減衰する。しかし、図からも明らかなように、取付位置Ｐの停止規定位置Ｓｓまでの移動は図６（ａ）に示す動作軌跡Ｆ０と比べなだらかであり、アーム体１０の移動速度が遅くなっていることを示している。従って、タクトタイムＴｂはタクトタイム規定値Ｔｓより長くなってしまう。このことは、ワーク保持装置７０が被作業物に到着する時間が長くなり、サイクルタイムの低下、すなわち生産性を低下させてしまう。従って、図６（ｂ）に示すような動作軌跡Ｆ１の場合には、オーバーシュートＤｂをオーバーシュートＤｓに近づける調整を行うことで、タクトタイムＴｂはタクトタイム規定値Ｔｓ以下にすることができる。具体的にはＫｖｉ６２０ａにおけるゲインを上げることで、タクトタイムＴｂが小さくなるようにオーバーシュートＤｂを大きくすることができる。Ｋｖｉ６２０ａにおけるゲインの調整は、１回の調整動作では２％の調整幅で実行させることが好ましい。
【００４１】
図６（ｃ）に示す動作軌跡Ｆ２は、オーバーシュートＤｃはオーバーシュート規定値Ｄｓを超えるオーバーシュートの動作軌跡Ｆ２の振動である。図からも明らかなように、取付位置Ｐの停止規定位置Ｓｓまでの移動は図６（ａ）に示す動作軌跡Ｆ０と比べ急峻で、アーム体１０の移動速度が速くなっていることを示している。従って、タクトタイムＴｃはタクトタイム規定値Ｔｓより短くなる。しかし、オーバーシュートＤｃがオーバーシュート規定値Ｄｓを超えて生じているためにワーク保持装置７０は被作業物の保持動作には移行できず、次のオーバーシュート規定値Ｄｓ領域になる動作可能開始時間Ｔｎになって、被作業物の保持動作を実行させることができる。すなわち、実質的にタクトタイムが長くなることを意味し、ワーク保持装置７０が被作業物の保持動作開始までの時間が長くなり、サイクルタイムの低下、すなわち生産性を低下させてしまう。従って、図６（ｃ）に示すような動作軌跡Ｆ２の場合には、オーバーシュートＤｃをオーバーシュートＤｓに近づける調整を行うことで、タクトタイム規定値Ｔｓ以下のタクトタイムＴｃから被作業物の保持動作、すなわちワーク保持装置７０の動作を開始させることができる。具体的にはＫｖｉ６２０ａにおけるゲインを下げることで、オーバーシュートＤｂを小さくすることができる。Ｋｖｉ６２０ａにおけるゲインの調整は、１回の調整動作では２％の調整幅で実行させることが好ましい。
【００４２】
なお、図３に示すように、ロボット装置１００には表示部７００を備えていてもよい。表示部７００は、第４演算部によって演算された取付位置Ｐの図６に示す移動軌跡Ｆ０，Ｆ１，Ｆ２などや、具体的なオーバーシュートＤａ、Ｄｂ，ＤｃあるいはタクトタイムＴａ，Ｔｂ，Ｔｃなどの数値を表示したり、制御部６００によるＫｖｉ６２０ａにおけるゲインの数値表示、更には調整範囲を超えた場合の異常表示をして、オペレーターへ情報を提供することができる。
【００４３】
以上説明した本実施形態に係るロボット装置１００は、初期に設定されたオーバーシュート規定値Ｄｓ内およびタクトタイム規定値Ｔｓ内のオーバーシュート、タクトタイムが、稼働時間の経過とともにシフトしてオーバーシュート規定値Ｄｓあるいはタクトタイム規定値Ｔｓから外れる状態になっても、速度ループ積分ゲインＫｖｉ６２０ａにおけるゲインを増減させることにより、オーバーシュート規定値Ｄｓ内およびタクトタイム規定値Ｔｓ内でロボット装置１００を稼動させることができ、長時間に亘って動作の安定性、生産性を初期値の性能で維持することができる。また、表示部７００に表示工程によって所定の表示内容を表示させることができるため、オペレーターの判断によってロボット装置１００の駆動を制御することも可能となり、特に安全性を更に高めることができる。
【００４４】
（第２実施形態）
第２実施形態として、第１実施形態に係るロボット装置１００の制御方法を説明する。図７はロボット装置１００の制御方法を示すフローチャートである。
【００４５】
〔第１演算工程〕
ロボット装置１００の稼動状態において、先ず第１演算工程（Ｓ１１１）が実行される。第１演算工程（Ｓ１１１）では、第１演算部５１０においてアクチュエーター５１，５２に備える角度センサー８１，８２から回転角度データを入手する。得られた回転角度データから、回転角度へ換算し、回転角度を時間で１回微分を行い、第２アーム１２を駆動するアクチュエーター５１を含むアーム連結装置２０の出力部の回転角速度ω１、基体連結装置３０の出力部の回転角速度ω２を演算する。
【００４６】
〔第２演算工程〕
同時に第２演算工程（Ｓ１１２）において、第２演算部５２０に第２アーム１２に備える慣性センサー９０から角速度データを入手し、アーム体１０を連結駆動する各連結装置２０，３０を回転軸とする各アーム１１，１２の角速度を演算する。すなわち、上述したように慣性センサー９０から得られたデータから、基体連結装置３０を回転軸とするアーム体１０の慣性センサー９０の配置位置での角速度ωaが演算される。
【００４７】
〔第３演算工程〕
次に、第３演算工程（Ｓ１２０）に移行する。第３演算工程（Ｓ１２０）では、第１演算工程（Ｓ１１１）で演算された角速度ω１，ω２と、第２演算工程（Ｓ１１２）において慣性センサー９０の検出データから演算されたアーム体１０の角速度ωaから、
ωb＝ωa−ω２−ω１
によって、ねじれ角速度ωbを演算する。演算されたねじれ角速度ωbを、バンドパスフィルターによってフィルタリングし、第１アーム１１のねじれ角速度ωb1、第２アーム１２のねじれ角速度ωb2、を抽出、演算する。
【００４８】
〔第４演算工程〕
次に、第４演算工程（Ｓ１３０）に移行する。第４演算工程（Ｓ１３０）では、第３演算工程（Ｓ１２０）で演算された、第１アーム１１のねじれ角速度ωb1成分と、第２アーム１２のねじれ角速度ωb2成分と、を積分し、取付位置Ｐ（図２参照）における図１に示すような振動を算出し、オーバーシュートを演算する。その結果に基づき制御工程としての積分ゲイン調整工程（Ｓ１４０）に移行する。なお、第４演算工程（Ｓ１３０）では、タクトタイムも取得する。
【００４９】
〔積分ゲイン調整工程〕
制御工程としての積分ゲイン調整工程（Ｓ１４０）は、図８に示すフローチャートで構成されている。積分ゲイン調整工程（Ｓ１４０）では、制御部６００において、得られた第４演算工程（Ｓ１３０）における演算結果であるオーバーシュート（以下、オーバーシュートＤという）を基にＫｖｉ６２０ａ（図５参照）の積分ゲインを調整する。
【００５０】
〔数量判定工程〕
図８に示すように、第４演算工程（Ｓ１３０）からまずはロボット装置１００の作業が終了したか、すなわち予め入力された被作業物が予定数量に達したかを判定する数量判定工程（Ｓ２１０）に移行される。数量判定工程（Ｓ２１０）において、予定数量に達している（ＹＥＳ）と判定された場合には、後述するロボット装置停止確認工程（Ｓ１５０）へ移行する。Ｓ２１０において、予定数量に達していない（ＮＯ）と判定された場合には、次の規定値読込工程（Ｓ２２０）へ移行する。
【００５１】
〔規定値読込工程〕
規定値読込工程（Ｓ２２０）は、予め仕様、あるいは要求基準として決められたオーバーシュート規定値Ｄｓおよびタクトタイム規定値Ｔｓを制御部６００に読み込む。オーバーシュート規定値ＤｓおよびタクトタイムＴｓは、予めＲＡＭ４００に書き込んでおくか、ＲＯＭ３００に入力手段によって入力して記憶させ、ＲＡＭ４００もしくはＲＯＭ３００から呼び出して読み込むことができる。また、入力手段によって制御部６００に直接入力することでもよい。次に、第４演算工程（Ｓ１３０）において演算されたオーバーシュートＤと、オーバーシュート規定値Ｄｓと、を比較する比較工程としてのオーバーシュート比較工程（Ｓ２３０）へ移行する。
【００５２】
〔オーバーシュート比較工程〕
比較工程としてのオーバーシュート比較工程（Ｓ２３０）では、オーバーシュートＤがオーバーシュート規定値Ｄｓ内であるか、を判定する。オーバーシュート比較工程（Ｓ２３０）において、オーバーシュートＤがオーバーシュート規定値Ｄｓ以内、すなわちＤ≦Ｄｓと判定された場合、次に第１タクトタイム比較工程（Ｓ２４０）へ移行する。また、オーバーシュートＤがオーバーシュート規定値Ｄｓを超えている、すなわちＤ＞Ｄｓと判定された場合、次に第２タクトタイム比較工程（Ｓ２５０）へ移行する。
【００５３】
〔第１タクトタイム比較工程〕
オーバーシュート比較工程（Ｓ２３０）で、Ｄ≦Ｄｓと判定され、移行した第１タクトタイム比較工程（Ｓ２４０）では、第４演算工程（Ｓ１３０）までに取得されたタクトタイム（以下、タクトタイムＴという）と、規定値読込工程（Ｓ２２０）で読み込まれたタクトタイム規定値Ｔｓと、を比較する。第１タクトタイム比較工程（Ｓ２４０）において、タクトタイムＴがタクトタイム規定値Ｔｓ以内、すなわちＴ≦Ｔｓと判定された場合、オーバーシュートＤおよびタクトタイムＴともに規定値Ｄｓ，Ｔｓ以内にあることとなり、積分ゲインを調整する必要が無いことから、次のロボット装置動作停止確認工程（Ｓ１５０）に移行する。
【００５４】
〔第１ゲイン調整指示工程〕
しかし、第１タクトタイム比較工程（Ｓ２４０）において、タクトタイムＴがタクトタイム規定値Ｔｓを超えている、すなわちＴ＞Ｔｓと判定された場合、第１ゲイン調整指示工程（Ｓ２５０）に移行する。第１ゲイン調整指示工程（Ｓ２５０）では、タクトタイムＴを小さくしタクトタイムＴｓ以内になるようにゲイン調整指示部６２０ｂからＫｖｉ６２０ａへゲインの調整の指示が送られる。この場合、オーバーシュートＤはオーバーシュート規定値Ｄｓ以内であり、上述の図６（ｃ）で説明した動作軌跡Ｆ２で示すように、オーバーシュートＤを大きくすることでタクトタイムＴを短くすることができる。従って、第１ゲイン調整指示工程（Ｓ２５０）では、オーバーシュートＤを大きくするようにＫｖｉ６２０ａにおけるゲインを上げる指示が出され、調整されたゲインを有するＫｖｉ６２０ａとなり、テスト動作工程（Ｓ２６０）へ移行する。この時の調整量としては、５％程度ゲインを上げることが好ましい。
【００５５】
〔テスト動作工程〕
テスト動作工程（Ｓ２６０）は、調整されたゲインを有するＫｖｉ６２０ａによってロボット装置１００をテスト駆動させ、上述した第１演算工程（Ｓ１１１）、第２演算工程（Ｓ１１２）、第３演算工程（Ｓ１２０）、第４演算工程（Ｓ１３０）を実行し、調整されたオーバーシュートＤ´、およびタクトタイムＴ´と、を演算、計測し、再度オーバーシュート比較工程（Ｓ２３０）に移行し、オーバーシュート比較工程（Ｓ２３０）以降の工程が実行される。この時、オーバーシュートＤ´をオーバーシュートＤに、タクトタイムＴ´をタクトタイムＴに、それぞれ書換えて実行される。
【００５６】
〔第２タクトタイム比較工程〕
上述では、オーバーシュート比較工程（Ｓ２３０）においてＤ≦Ｄｓの場合を説明したが、以下では、オーバーシュート比較工程（Ｓ２３０）においてオーバーシュートＤがオーバーシュート規定値Ｄｓを超えた場合、すなわちＤ＞Ｄｓの場合を説明する。オーバーシュート比較工程（Ｓ２３０）において、Ｄ＞Ｄｓと判定されると第２タクトタイム比較工程（Ｓ２７０）に移行する。第２タクトタイム比較工程（Ｓ２７０）は第１タクトタイム比較工程（Ｓ２４０）と同様に、タクトタイムＴとタクトタイム規定値Ｔｓとを比較する。
【００５７】
第２タクトタイム比較工程（Ｓ２７０）において、タクトタイムＴがタクトタイム規定値Ｔｓ以内、すなわちＴ≦Ｔｓと判定されると、第２ゲイン調整指示工程（Ｓ２８０）に移行する。第２ゲイン調整指示工程（Ｓ２８０）では、タクトタイムＴがタクトタイム規定値Ｔｓ以内であることから、オーバーシュート比較工程（Ｓ２３０）においてＤ＞Ｄｓと判定されたオーバーシュートＤをオーバーシュート規定値Ｄｓ以内になるように、Ｋｖｉ６２０ａにおけるゲインを下げる指示が出され、調整されたゲインを有するＫｖｉ６２０ａとなり、テスト動作工程（Ｓ２６０）へ移行する。この時の調整量としては、５％程度ゲインを下げることが好ましい。
【００５８】
〔動作停止〕
しかし、第２タクトタイム比較工程（Ｓ２７０）において、タクトタイムＴがタクトタイム規定値Ｔｓを超えた、すなわちＴ＞Ｔｓと判定された場合、動作停止（Ｓ３００）に移行し、ロボット装置１００の動作を停止し、表示部７００に動作停止を意味する表示内容を表示する。すなわち、タクトタイムＴを短くするには、上述の図６（ｃ）で説明した動作軌跡Ｆ２で示すように、オーバーシュートＤを大きくすることでタクトタイムＴを短くすることができるが、既にオーバーシュート比較工程（Ｓ２３０）においてＤ＞Ｄｓと判定されているために、オーバーシュートＤを大きくできるＫｖｉ６２０ａでのゲインの調整域が無いことから、ロボット装置１００は停止させられる。
【００５９】
以上述べたように、積分ゲイン調整工程（Ｓ１４０）では、オーバーシュートＤおよびタクトタイムＴが、オーバーシュート規定値Ｄｓおよびタクトタイム規定値Ｔｓの範囲になるように、１回の調整においてＫｖｉ６２０ａのゲインを５％増減させて、規定値Ｄｓ，Ｔｓに調整され、次のロボット装置停止確認工程（Ｓ１５０）へ移行する。なお、積分ゲイン調整工程（Ｓ１４０）においては、オーバーシュートＤ、タクトタイムＴ、オーバーシュート規定値Ｄｓ、タクトタイムＴｓ、動作停止情報などを表示する図示しない表示工程を含み、表示部７００に所定の情報が表示される。
【００６０】
〔ロボット装置停止確認工程〕
ロボット装置動作停止確認工程（Ｓ１５０）では、ロボット装置１００が動作状態であるか、を確認し、動作状態（Ｎｏ）である場合には、第１演算工程（Ｓ１１１）、第２演算工程（Ｓ１１２）に戻り、制御を繰り返す。動作停止状態（Ｙｅｓ）である場合には、制御は終了する。
【００６１】
上述の制御方法によって、ロボット装置１００は、初期に設定されたオーバーシュート規定値Ｄｓ内およびタクトタイム規定値Ｔｓ内のオーバーシュート、タクトタイムが、稼働時間の経過とともにシフトしてオーバーシュート規定値Ｄｓあるいはタクトタイム規定値Ｔｓから外れる状態になっても、速度ループ積分ゲインＫｖｉを増減させることにより、長時間に亘ってオーバーシュート規定値Ｄｓ内およびタクトタイム規定値Ｔｓ内でロボット装置１００を稼動させることができ、動作の安定性、生産性を初期値の性能で維持することができる。また、表示部７００に表示工程によって所定の表示内容を表示させることができるため、オペレーターの判断によってロボット装置１００の駆動を制御することも可能となり、特に安全性を更に高めることができる。
【００６２】
なお、上述のロボット装置１００の制御方法において、オーバーシュートだけを比較判定し積分ゲインを調整することもできる。その場合には、第１タクトタイム比較工程（Ｓ２４０）および第２タクトタイム比較工程（Ｓ２７０）は省略することができる。また、上述の実施形態に係るロボット装置１００の制御方法において、位置ループの比例ゲインを速度ループの積分ゲインのように調整することで同様の効果が得られる。
【符号の説明】
【００６３】
１０…アーム体、１１，１２…アーム、２０…アーム連結装置、３０…基体連結装置、４０…基体、５１，５２…アクチュエーター、６１，６２…トルク伝達装置、７０…ワーク保持装置、８１，８２…角度センサー、９０…慣性センサー、１００…ロボット装置。
【図１】
2013121634.tif 000003
【図２】
2013121634.tif 000004
【図３】
2013121634.tif 000005
【図４】
2013121634.tif 000006
【図５】
2013121634.tif 000007
【図６】
2013121634.tif 000008
【図７】
2013121634.tif 000009
【図８】
2013121634.tif 000010