(57)【要約】      （修正有）【課題】軌道のずれを抑制し、動作の正確性に優れた多関節ロボット。【解決手段】複数の関節に順次接続されるアーム要素１１〜１３と、アーム要素１１〜１３の相対位置又は姿勢を変更するモータと、アーム要素１３に設けられたハンド部Ｈの位置及び姿勢の制御を行う制御部３と、を具備し、制御部３がハンド部Ｈの位置又は姿勢を制御するための基準指令値をその少なくとも一部が直交座標系となる直交座標系基準指令値として得る直交座標系基準指令設定部３１と、直交座標系基準指令設定部３１により得られる直交座標系基準指令値に対して所定の入力整形を行って直交座標系整形指令値を生成する直交座標系整形指令生成部３２と、直交座標系整形指令生成部３２により得られる直交座標系整形指令値を各関節に対応する関節座標系に変換した関節座標系変換指令値を生成する関節座標系変換指令生成部３３と、を備え、関節座標系変換指令値を基に各モータの制御を行う。【選択図】図２
2014076497.tif 000002
【特許請求の範囲】
【請求項１】
直動又は回動可能な複数の関節により順次接続されるアーム要素と、
各関節に接続されるアーム要素の相対位置又は姿勢を変更するアクチュエータと、
当該アクチュエータの制御を行うことで末端のアーム要素に設けられたハンド部の位置及び姿勢の制御を行う制御部と、を具備し、
前記関節の少なくとも１つが回転自由度を有する多関節ロボットであって、
前記制御部が、
前記ハンド部の位置又は姿勢を制御するための基準指令値をその少なくとも一部が直交座標系となる直交座標系基準指令値として得る直交座標系基準指令設定部と、
当該直交座標系基準指令設定部により得られる前記直交座標系基準指令値に対して所定の入力整形を行って直交座標系整形指令値を生成する直交座標系整形指令生成部と、
当該直交座標系整形指令生成部により得られる前記直交座標系整形指令値を各関節に対応する関節座標系に変換した関節座標系変換指令値を生成する関節座標系変換指令生成部と、を備え、
前記関節座標系変換指令生成部により得られる関節座標系変換指令値を基にして各アクチュエータの制御を行うように構成されていることを特徴とする多関節ロボット。
【請求項２】
前記直交座標系整形指令生成部にて行う所定の入力整形が、前記ハンド部の振動を抑制するためのフィルタ処理であることを特徴とする請求項１記載の多関節ロボット。
【請求項３】
前記フィルタ処理がインプットシェーピング制御としてのデータ処理であることを特徴とする請求項２記載の多関節ロボット。
【請求項４】
前記制御部が、
各アクチュエータに与えるべき基準指令値として関節座標系基準指令値を生成する関節座標系基準指令設定部と、
当該関節座標系基準指令設定部により得られる前記関節座標系基準指令値に対して所定の入力整形を行って関節座標系整形指令値を生成する関節座標系整形指令生成部と、
各アクチュエータに与える制御指令値を切り替えるべく切替命令を出力する制御指令値切替部と、をさらに備えており、
前記制御指令値切替部からの切替命令に応じて、前記関節座標系変換指令生成部により得られる関節座標系変換指令値に代わり、前記関節座標系基準指令設定部により得られる関節座標系基準指令値、又は、前記関節座標系整形指令生成部により得られる関節座標系整形指令値を基にして各アクチュエータの制御を行うように構成されていることを特徴とする請求項１〜３のいずれかに記載の多関節ロボット
【請求項５】
前記ハンド部がワークを保持していない場合には、前記関節座標系変換指令生成部により得られる関節座標系変換指令値に代わり、前記関節座標系基準指令設定部により得られる関節座標系基準指令値を基にして各アクチュエータの制御を行うように、前記制御指令値切替部が切替命令を出力するようにしていることを特徴とする請求項４に記載の多関節ロボット。
【請求項６】
請求項１〜５記載の多関節ロボットを備えるとともに、当該多関節ロボットを水平多関節型ロボットとして構成し、前記ハンド部上に半導体ウェハを載置させつつ、当該半導体ウェハの搬送を行うようにしたことを特徴とする半導体ウェハ搬送装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、複数のアーム要素が順次接続されており、アクチュエータによって関節ごとにアーム要素を相対動作させることで、先端のハンド部の位置及び姿勢を変更可能に構成した多関節ロボット及び、これを用いた半導体ウェハ搬送装置に関するものである。
【背景技術】
【０００２】
従来より、複数のアーム要素を関節によって順次接続し、各関節に対応したアクチュエータを制御することによって、先端のハンド部の位置及び姿勢変更を変更可能にした多関節ロボットとして、数多くのものが知られている。
【０００３】
こうした多関節ロボットで用いられる関節は、対をなすアーム要素を相対的に直線運動させるものと回転運動させるものに分類され、これらの種類および個数を組み合わせることで、種々様々な動作を行わせることが可能になっている。
【０００４】
また、多関節ロボットの中でも、アクチュエータとしてモータ等による回転機構を関節に備えたいわゆる水平多関節型ロボットや、垂直多関節型ロボットが、製造業等においてより広く一般的に利用されている。例えば、半導体ウェハ搬送装置においては、特許文献１に記載されるような水平多関節型ロボットが好適に用いられており、先端に設けたハンド部上に半導体ウェハを載置させた状態で各関節を回転駆動させ、半導体ウェハを所定の位置に搬送することができるようになっている。
【０００５】
こうした多関節ロボットに所定の動作を行わせるためには、各関節に対応して設けられたアクチュエータを制御部により統合して制御することが必要となる。この際、制御部からは各アクチュエータに適した指令信号を個別に出力することになる。すなわち、関節が回転自由度を有するものであり、これを動作させるためにサーボモータ等の回転モータが使用されている場合には、モータの回転角度または回転角速度等を指令信号として出力し、所定の動作を行わせることになる。そして、上述の特許文献１に記載されているような、回転自由度を有する関節を３つ備えたタイプのロボットにおいては、３つの関節に対応するモータのそれぞれに対して上記と同様の指令信号を与えることで回転運動を行わせ、先端のハンド部を所望の位置および姿勢に変更することが可能になっている。
【０００６】
多関節ロボットでは一般に振動の低減が求められており、その中でも上記の半導体用途など精密加工を要する分野においてはこうした要求が特に大きなものとなっている。同時に、搬送時間の短縮などを目的に益々の高速化も求められてきている。しかしながら、動作速度を向上させた場合には、大きな加速度が働いて動作停止時の残留振動が大きくなる傾向にあるため、この残留振動を低減させることも必要となる。
【０００７】
そのため、下記特許文献２および非特許文献１では、上述した振動抑制のための手法としてインプットシェーピング制御を用いるものが開示されている。なお、インプットシェーピング制御をプリシェーピング制御と称することもあるが、両者は同一のものである。このインプットシェーピング制御では、予め振動測定を行うことで得た振動測定値を基にして、制振対象とする次数までの固有周波数と減衰係数とを装置特有の振動特性として同定しておき、アクチュエータに与えるべき基準指令値に対応する逆位相の信号を上記固有周波数及び減衰係数を基に作り出し、上記基準指令値に重畳させた制御指令値としてアクチュエータに与えるものである。このようにアクチュエータに与える制御指令値を予め適切なものに変更するフィルタ処理を行うことで、振動の抑制効果を得ることが可能となっている。
【先行技術文献】
【特許文献】
【０００８】
【特許文献１】特開２０１１−２１６７２９号公報
【特許文献２】特許第３０１５３９６号公報
【非特許文献】
【０００９】
【非特許文献１】Minh Duc Duong ,Kazuhiko Terashima ,Toshio Kamigaki ,and HirotoshiKawamura“Development of a Vibration Suppression GUITool Based on Input Preshaping and its Application to Semiconductor WaferTransfer Robot”(Int.J.ofAutomation Technology Vol.2 No.6,2008)
【発明の概要】
【発明が解決しようとする課題】
【００１０】
しかしながら、上記特許文献２および非特許文献１に記載のものは、アクチュエータが一個のみで構成される単純な構造体に適用する例を示したものであり、特許文献１記載のロボットのような、実際の製造ラインで使用可能な複数の関節を有するものに適用した例を開示するものではない。
【００１１】
そこで、上記特許文献２および非特許文献１に記載されるインプットシェーピング制御を特許文献１のような多関節ロボットに適用する場合には、各関節を駆動するモータにそれぞれ与えられる回転角度または回転角速度等の指令値に対して、インプットシェーピング制御に係るフィルタ処理を独立して適用することが考えられる。こうすることで、上記と同様に、多関節ロボットにおいても振動抑制効果を得ることが可能となる。
【００１２】
しかしながら、関節に対応するアクチュエータに与える指令値に独立してフィルタ処理を行った場合、ハンド部の動作軌跡が大きく異なってしまう可能性がある。
【００１３】
具体的には、制御対象となる多関節ロボットが、関節の一部に回転自由度を有するものとされている場合には、一般にはモータによってこれを駆動するため、その回転角度または回転角速度等を指令値として制御が行われる。そのため、この指令値とハンド部の移動距離とは比例関係になることがなく、インプットシェーピング制御に係るフィルタ処理の影響は関節ごとに異なることになる。従って、ハンド部に直線軌道で動作させる指令値を与えた場合であっても、振動抑制のため関節ごとの指令値に独立してインプットシェーピング制御に係るフィルタ処理を適用すると、目標の軌道よりずれが生じハンド部は直線的な動作が不能となってしまう。
【００１４】
そのため、ハンド部を他の装置の内部に挿入させる場合など、他の装置や壁面等の障害物が近くに存在する状態でハンド部を直線的に動作させる際には、これらの障害物にハンド部が衝突して損傷することが考えられる。また、ハンド部が半導体ウェハ等のワークを保持して動作する場合には、ワークを他の装置や壁面などに衝突させて損傷させる可能性もある。
【００１５】
また、上記のインプットシェーピング制御だけではなく、振動抑制のための他のフィルタ処理を適用する場合にも同様の問題が生じ得る。さらに、振動抑制といった目的のみならず、ハンド部の速度・加速度等の適正化等の異なる目的の基にフィルタ処理を行う場合であっても、同様の問題が生じることになる。
【００１６】
本発明は、上記のような課題を有効に解決することを目的としており、具体的には、アクチュエータを動作させる際の基準指令値に対して入力整形を行うことによる動作の軌道のずれを抑制し、入力整形による効果を得つつも動作の軌道を正確に保つことが可能な多関節ロボット及び半導体ウェハ搬送装置を提供することを目的としている。
【課題を解決するための手段】
【００１７】
本発明は、かかる目的を達成するために、次のような手段を講じたものである。
【００１８】
すなわち、本発明の多関節ロボットは、直動又は回動可能な複数の関節により順次接続されるアーム要素と、各関節に接続されるアーム要素の相対位置又は姿勢を変更するアクチュエータと、当該アクチュエータの制御を行うことで末端のアーム要素に設けられたハンド部の位置及び姿勢の制御を行う制御部と、を具備し、前記関節の少なくとも１つが回転自由度を有する多関節ロボットであって、前記制御部が、前記ハンド部の位置又は姿勢を制御するための基準指令値をその少なくとも一部が直交座標系となる直交座標系基準指令値として得る直交座標系基準指令設定部と、当該直交座標系基準指令設定部により得られる前記直交座標系基準指令値に対して所定の入力整形を行って直交座標系整形指令値を生成する直交座標系整形指令生成部と、当該直交座標系整形指令生成部により得られる前記直交座標系整形指令値を各関節に対応する関節座標系に変換した関節座標系変換指令値を生成する関節座標系変換指令生成部と、を備え、前記関節座標系変換指令生成部により得られる関節座標系変換指令値を基にして各アクチュエータの制御を行うように構成されていることを特徴とする。
【００１９】
このように構成すると、入力整形を行うことによる動作の軌道のずれを抑制することができ、入力整形による効果を得つつもハンド部の動作の軌道を正確に保つことが可能となる。そのため、ハンド部を狭い場所で直線動作させる場合でも、目標の軌道からのずれを防止して、周辺の機器や壁等との接触を防ぐことが可能となる。
【００２０】
さらに、ハンド部の振動抑制と動作の軌道ずれの抑制とを両立させて、より位置精度の高い動作を可能とするためには、前記直交座標系整形指令生成部にて行う所定の入力整形が、前記ハンド部の振動を抑制するためのフィルタ処理であるように構成することが好適である。
【００２１】
また、振動抑制と動作の軌道ずれの抑制とをより高精度に実現するため、振動抑制に係る制御の高速化と振動抑制効果の増大とを図るためには、前記フィルタ処理がインプットシェーピング制御としてのデータ処理であるように構成することが好適である。
【００２２】
また、振動抑制の要否と軌道ずれの抑制の要否に応じて適正な制御指令値を選択することで、不要な制御を少なくして、より演算処理の高速化を図るためには、前記制御部が、各アクチュエータに与えるべき基準指令値として関節座標系基準指令値を生成する関節座標系基準指令設定部と、当該関節座標系基準指令設定部により得られる前記関節座標系基準指令値に対して所定の入力整形を行って関節座標系整形指令値を生成する関節座標系整形指令生成部と、各アクチュエータに与える制御指令値を切り替えるべく切替命令を出力する制御指令値切替部と、をさらに備えており、前記制御指令値切替部からの切替命令に応じて、前記関節座標系変換指令生成部により得られる関節座標系変換指令値に代わり、前記関節座標系基準指令設定部により得られる関節座標系基準指令値、又は、前記関節座標系整形指令生成部により得られる関節座標系整形指令値を基にして各アクチュエータの制御を行うように構成することが好適である。
【００２３】
また、ワークの存否を基に振動抑制の要否と軌道ずれの抑制の要否の判断を行わせて、より簡便且つ実用的に制御指令値を選択させることを可能とするためには、前記ハンド部がワークを保持していない場合には、前記関節座標系変換指令生成部により得られる関節座標系変換指令値に代わり、前記関節座標系基準指令設定部により得られる関節座標系基準指令値を基にして各アクチュエータの制御を行うように、前記制御指令値切替部が切替命令を出力するよう構成することが好適である。
【００２４】
また、本願発明の半導体ウェハ装置は、上記の多関節ロボットを備えるとともに、当該多関節ロボットを水平多関節型ロボットとして構成し、前記ハンド部上に半導体ウェハを載置させつつ、当該半導体ウェハの搬送を行うように構成したものであり、このように構成することで、精密な動作を要する半導体ウェハ搬送装置を効果的に実現することが可能となる。
【発明の効果】
【００２５】
以上説明した本発明によれば、アクチュエータを動作させるための基準指令値に対して入力整形を行うことで生じるハンド部の軌道のずれを抑制し、入力整形による効果を得つつも軌道を正確に保つことが可能な多関節ロボット及び半導体ウェハ搬送装置を提供することが可能となる。
【図面の簡単な説明】
【００２６】
【図１】本発明の第１実施形態に係る多関節ロボット及びこれを備えた半導体ウェハ搬送装置の平面図。
【図２】同多関節ロボットを模式的に示す構成図。
【図３】同多関節ロボットにおけるアーム要素の構成を模式的に示す平面図。
【図４】同多関節ロボットにおける各関節の駆動手段を模式的に示す構成図。
【図５】同多関節ロボットにおける各関節の座標の定義を示す説明図。
【図６】各関節を駆動するモータへの指令値を決定する手順を示すフローチャート。
【図７】インプットシェーピング制御指令を計算する手順を示すフローチャート。
【図８】Ｙ方向への直線運動を行わせる際のＸ座標軌道を本発明適用前後で比較して示す説明図。
【図９】図８に対応するＹ座標軌道を本発明適用前後で比較して示す説明図。
【図１０】図８及び９に対応する姿勢α軌道を本発明適用前後で比較して示す説明図。
【図１１】図８〜１０に対応するＸＹ平面内軌道を本発明適用前後で比較して示す説明図。
【図１２】図８〜１１に係る動作を行わせた際の残留振動を本発明適用前後で比較して示す説明図。
【図１３】図８〜１２とは異なる方向への直線運動を行わせた際のＸＹ平面内軌道を本発明適用前後で比較して示す説明図。
【図１４】本発明の第２実施形態に係る多関節ロボットを模式的に示す構成図。
【図１５】同多関節ロボットにおいて各関節を駆動するモータへの指令値を決定する手順を示すフローチャート。
【図１６】関節座標系の軌道データを基にインプットシェーピング制御指令を計算する手順を示すフローチャート。
【図１７】本発明との比較例としてＹ方向への直線運動を行わせる際の第１リンクの関節座標系軌道をインプットシェーピング制御適用前後で示す説明図。
【図１８】本発明との比較例として図１７に対応する第２リンクの関節座標系軌道をインプットシェーピング制御適用前後で示す説明図。
【図１９】本発明との比較例として図１７及び１８に対応する第３リンクの関節座標系軌道をインプットシェーピング制御適用前後で示す説明図。
【図２０】本発明との比較例として図１７〜１９に対応するＸＹ平面内軌道をインプットシェーピング制御適用前後で比較して示す説明図。
【発明を実施するための形態】
【００２７】
以下、本発明の実施形態を、図面を参照して説明する。
＜第１実施形態＞
【００２８】
図１は、第１実施形態における多関節ロボット１を中心として、これを備えた半導体ウェハ搬送装置ＴＤとして構成したものである。多関節ロボット１はフレームＦｒを介して、ロードポートＬＰ１〜ＬＰ４と接続されており、このロードポートＬＰ１〜ＬＰ４内に収容するウェハ（半導体ウェハ）Ｗの入替作業を行うことができるようになっている。
【００２９】
ロードポートＬＰ１〜ＬＰ４は多関節ロボット１に対向しつつ、一列に並んで配置されており、多関節ロボット１の位置は、ロードポートＬＰ１とＬＰ２の中間となるように設定されている。
【００３０】
ここで、本発明においては、ロードポートＬＰ１〜ＬＰ４を配置する方向、すなわち図中の右方向をＸ方向として定義し、これに直交する方向、すなわち図中の上方向をＹ方向として定義する。そして、鉛直上方向、すなわち紙面手前方向をＺ方向として定義する。さらに、平面視においてＸ軸を基準に反時計回りの方向をα方向と定義する。
【００３１】
図中においてウェハＷの内部に記載している黒丸印は、このウェハＷの中心位置であり、多関節ロボット１の制御を行う際の基準位置Ｐｗとなる。そして、各ロードポートＬＰ１〜ＬＰ４において記載した黒丸印は、ウェハＷの搬送先を示すものであり、これらの位置に上記の基準位置Ｐｗを合致させるように行わせる。
【００３２】
この多関節ロボット１の構成を図２に示す。多関節ロボット１は大きく分けて機械装置部２と制御部３とから構成されており、制御部３から与えられる制御指令値に基づいて、機械装置部２が動作するようになっている。
【００３３】
まずは、この機械装置部２の構成について図３を基に説明する。機械装置部２は、ベース４より順次関節Ｊ１，Ｊ２，Ｊ３を介して接続された第１アーム要素１１、第２アーム要素１２及び第３アーム要素１３を備える水平多関節型に構成されており、各アーム要素１１〜１３が、ＸＹ平面に平行で且つＺ方向にずれた平面内で回動可能となっている。
【００３４】
具体的には、第１アーム要素１１はベース４上の所定位置に回転軸ＳＴを中心とする回転自由度を有する第１関節Ｊ１を介して回動可能となるように設けられている。また、この第１アーム要素１１の先端には、回転軸ＳＲを中心とする回転自由度を有する第２関節Ｊ２を介して、第２アーム要素１２が回動可能に設けられている。さらに、この第２アーム要素１２の先端には、回転軸ＳＨを中心とする回転自由度を有する第３関節Ｊ３を介して第３アーム要素１３が回動可能に設けられている。上記回転軸ＳＴ，ＳＲ，ＳＨは、互いに平行となるように設定されており、こうすることで第１〜第３アーム要素１１〜１３は、互いに平行な平面内を回動するようになっている。また、それぞれＺ方向にずれた位置に設けられているため、第１〜第３アーム要素１１〜１３および第１〜第３関節Ｊ１〜Ｊ３は相互に干渉することが無く、互いに回動を妨げることがないようになっている。
【００３５】
末端となる第３アーム１３の先端にはＵ字型のハンド部Ｈが、先端側を開放する向きに設けられており、第３アーム１３と一体化して動作するようになっている。このハンド部Ｈ上に、ワークとしてのウェハＷを保持することが可能となっており、Ｕ字型の中心近傍に上述の基準位置Ｐｗが設定されている。
【００３６】
機構上は、第１関節Ｊ１の中心となる回転軸ＳＴより第２関節Ｊ２の中心となる回転軸ＳＲまでが第１リンク１１Ｌを構成し、第２関節Ｊ２の中心となる回転軸ＳＲより第３関節Ｊ３の中心となる回転軸ＳＨまでが第２リンク１２Ｌを構成することになる。同様に、第３関節Ｊ３の中心となる回転軸ＳＨより上記基準位置Ｐｗまでを第３リンク１３Ｌとして考える。
【００３７】
第１〜第３関節Ｊ１〜Ｊ３には、それぞれ対応するサーボモータＭ１〜Ｍ３が組み込まれている。第１サーボモータＭ１は、固定部がベース４に取り付けられて回転部が第１アーム要素１１に取り付けられているため、制御指令値を通じてベース４に対する第１アーム要素１１の回転角度を規制することになる。第２サーボモータＭ２は、固定部が第１アーム要素１１に取り付けられて回転部が第２アーム要素１２に取り付けられているため、制御指令値を通じて第１アーム要素１１に対する第２アーム要素１２の回転角度を規制することになる。第３サーボモータＭ３は、固定部が第２アーム要素１２に取り付けられて回転部が第３アーム要素１３に取り付けられているため、制御指令値を通じて第２アーム要素１２に対する第３アーム要素１３の回転角度を規制することになる。
【００３８】
サーボモータＭ１〜Ｍ３には、図４に示すように、制御部３よりサンプリング周期ごとで適宜制御指令値が与えられて駆動がなされる。制御指令値は、角度指令としてサーボドライバＤ１〜Ｄ３に与えられ、サーボドライバＤ１〜Ｄ３では適宜モータＭ１〜Ｍ３に適した形式で動力が与えられる。モータＭ１〜Ｍ３と関節Ｊ１〜Ｊ３の間には減速機を設けることも好適である。本実施形態では、制御指令値として角度指令を使用したが、角度指令に代えて角速度指令を用いるように構成することも可能であり、これらはサーボドライバによる設定の容易性等を考慮して適宜変更することが好ましい。
【００３９】
図５は、上述した第１〜第３リンク１１Ｌ〜１３Ｌを模式的に示したものである。ここで、各リンク１１Ｌ〜１３Ｌの長さをそれぞれＬ１，Ｌ２，Ｌ３とする。本実施形態では、第１リンク１１Ｌと第２リンク１２Ｌとは同一の長さ（Ｌ１＝Ｌ２）となるように設定しており、これらに対して第３リンク１３Ｌの長さＬ３を８０％程度に設定し、ハンド部ＨにウェハＷ（図３参照）を保持させた場合のウェハＷの先端までの長さが、第１リンク１１Ｌ及び第２リンク１２Ｌと同等になるようにしている。こうすることで、ウェハＷを広い領域内で自由に動作させることが可能となっている。なお、Ｌ１〜Ｌ３の関係は上記に限らず、Ｌ１とＬ２を異ならせる（Ｌ１≠Ｌ２）設定も、これらよりもＬ３を大きく（Ｌ３＞Ｌ２，Ｌ３＞Ｌ１）する設定も可能である。
【００４０】
ベース部４（図３参照）に対する第１リンク１１Ｌの相対角度θ１、第１リンク１１Ｌに対する第２リンク１２Ｌの相対角度θ２、第２リンク１２Ｌに対する第３リンク１３Ｌの相対角度θ３を、上記モータＭ１〜Ｍ３を制御することによって決定すると、ハンド部Ｈにおける基準位置Ｐｗの絶対的な位置を決定することができる。この基準位置ＰｗのＸＹ平面上における座標ｘ，ｙは、後述する運動学変換によって相対角度θ１，θ２，θ３によって表すことが可能となる。同様に、ハンド部Ｈの姿勢としての第３リンク１３Ｌの絶対角度αも、相対角度θ１，θ２，θ３によって決定することができる。
【００４１】
次に、図２に戻って、制御部３の構成について説明を行う。
【００４２】
制御部３は、直交座標系基準指令設定部３１と、直交座標系整形指令生成部３２と、関節座標系変換指令生成部３３と、振動特性記憶部３４とを備えている。これら各部は、ＣＰＵ、ＲＯＭ、各種インターフェイス等を備えたパソコン等の情報処理装置において、予め記憶されている図６及び図７に示す制御指令値生成ルーチンをＣＰＵが実行することで制御指令値を生成し、この制御指令値をモータＭ１〜Ｍ３（図３参照）に与えるまでの動作をソフトウェア及びハードウェアが協働して実現するものである。
【００４３】
直交座標系基準指令設定部３１では、具体的な制御指令値を決定するための基準となる基準指令値として、後述する直交座標系で表したハンド部Ｈの軌道データＣｒｅｆ＝（ｘ，ｙ，α）を設定する。そして、直交座標系整形指令生成部３２においては、上記のハンド部Ｈの軌道データＣｒｅｆ＝（ｘ，ｙ，α）に対して、振動特性記憶部３４に記憶されている固有周波数及び減衰係数を読み出しつつ、これらに基づいてインプットシェーピング制御に係るフィルタ処理としてのデータ処理を行うことで入力整形を行い、直交座標系整形指令値を生成する。ここで、入力整形とは、制御に用いる入力信号の波形を異なる波形に整形するための処理を指し、デジタル信号、アナログ信号による処理の双方を含む概念で用いられる。さらに、関節座標系変換指令生成部３３においては、直交座標系整形指令値を後述する関節座標系に変換して、関節座標系変換指令値を生成する。ここで生成された関節座標系変換指令値はモータＭ１〜Ｍ３を駆動するための制御指令値Ｐｓｈａｐｅとして前述のサーボドライバＤ１〜Ｄ３に与えられる。
【００４４】
インプットシェーピング制御そのものは公知技術であるために詳細な説明は割愛するが、この多関節ロボット１においてもハンド部Ｈの振動抑制を目的として導入している。インプットシェーピング制御は、フィードフォワード制御の一種としてセンサレスの構成として実現可能であるため、既存の多関節ロボットの制御部のみを変更することで容易に導入することが可能となる。また、複雑な制御を必要としないことから、制御の安定性及び高速化を図りつつ、振動抑制効果を得ることが可能である。
【００４５】
詳細な制御部３における処理手順を説明する前に、本発明で変数として用いるリンク１１Ｌ〜１３Ｌの角度（θ１〜θ３）と、ハンド部Ｈの位置及び姿勢（ｘ，ｙ，α）の関係について説明を行う。
【００４６】
図２に示した直交座標系基準指令設定部３１は、ハンド部Ｈを動作させる目標値としてハンド部Ｈの基準位置ＰｗをＸＹ平面上での座標データ（ｘ，ｙ）として設定するとともに、ハンド部Ｈの姿勢をＸＹ平面上での回転角データ（α）として設定する。すなわち、これらによって、ハンド部Ｈの絶対的な位置及び姿勢を示しており、これらをまとめて、直交座標系で表したハンド部Ｈの軌道データＣｒｅｆ＝（ｘ，ｙ，α）と称す。
【００４７】
このハンド部Ｈの位置及び姿勢は、上述したように、図５に示す各リンク１１Ｌ〜１３Ｌの回転角θ１〜θ３と長さＬ１〜Ｌ３によっても表すことができるが、各リンク１１Ｌ〜１３Ｌの長さＬ１〜Ｌ３は固定値となるために、結局のところ各リンク１１Ｌ〜１３Ｌの回転角θ１〜θ３、すなわち各関節Ｊ１〜Ｊ３におけるリンク１１Ｌ〜１３Ｌの相対回転角θ１〜θ３のみを変数として表すことが可能である。そこで、これらの回転角θ１〜θ３をまとめて、関節座標系で表したハンド部Ｈの軌道データＰｒｅｆ＝（θ１，θ２，θ３）と称す。なお、モータＭ１〜Ｍ３と関節Ｊ１〜Ｊ３との間に減速機（図示せず）を用いている場合には、各関節Ｊ１〜Ｊ３に対応するモータＭ１〜Ｍ３の回転角θｍ１〜θｍ３と、減速比Ｒａ１〜Ｒａ３を用いて、次式のように角度θ１〜θ３を表すことができる。
【数１】
2014076497.tif 000003
【００４８】
上述したように、直交座標系での軌道データＣｒｅｆと、関節座標系での軌道データＰｒｅｆとは、同一のものを指すため、順運動学変換として次の数２〜数４記載の数式を用いることによって、関節座標系での軌道データＰｒｅｆを直交座標系での軌道データＣｒｅｆに変換することができる。
【数２】
2014076497.tif 000004
【数３】
2014076497.tif 000005
【数４】
2014076497.tif 000006
【００４９】
同様に、直交座標系での軌道データＣｒｅｆを関節座標系での軌道データＰｒｅｆに変換する場合には、逆運動学変換として次の数５〜数７記載の数式を用いて行うことができる。
【数５】
2014076497.tif 000007
【数６】
2014076497.tif 000008
【数７】
2014076497.tif 000009
【００５０】
上式で示したようにθ１は解が２つ得られる。一般的に、第１関節Ｊ１の可動範囲や前後の動作に応じて何れかの解を選択すれば良い。
【００５１】
以下、図２を参照しつつ図６及び図７を用い、制御部３においてモータＭ１〜Ｍ３に与える指令値を決定する手順を説明する。
【００５２】
本実施形態においては、一般の水平多関節型ロボットと同様に、ハンド部Ｈの軌道データとして関節座標系の軌道データＰｒｅｆとして与えている。そこで、まず処理の最初のステップＳＴ１として、直交座標系基準指令設定部３１ではこの関節座標系の軌道データＰｒｅｆを直交座標系の軌道データＣｒｅｆに変換して基準指令値として設定する。もちろん、当初よりＸＹ平面内での直交座標系の軌道データＣｒｅｆとして与え、基準指令値としてそのまま設定させることも可能である。
【００５３】
次に、ステップＳＴ２として、直交座標系の軌道データＣｒｅｆをインプットシェーピング制御適用前の指令ｕ０として設定し、時系列データ数ｍをｎ０として設定する。
【００５４】
そして、ステップＳＴ３として、直交座標系整形指令生成部３２により、上記直交座標系の軌道データＣｒｅｆを基にしてインプットシェーピング制御に係るフィルタ処理としてのデータ処理を行い、直交座標系整形指令値としてのインプットシェーピング制御指令ｕＭを生成する。インプット制御指令ｕＭの計算は、振動特性記憶部３４に記憶された固有周波数及び減衰係数のデータを用い、サブルーチン化した後述の特定の処理によって実行される（図７参照）。
【００５５】
最後に、ステップＳＴ４として、関節座標系変換指令生成部３３により、上記直交座標系整形指令値としてのインプット制御指令ｕＭを上述した逆運動学変換によって関節座標系に変換し、関節座標系変換指令値としてモータパルス指令Ｐｓｈａｐｅを生成する。
【００５６】
このモータパルス指令Ｐｓｈａｐｅは、上述したように各モータＭ１〜Ｍ３への制御指令値として対応するサーボドライバＤ１〜Ｄ４（図４参照）に与えられ、モータＭ１〜Ｍ３が駆動されることによって各アーム要素１１〜１３が回動し、ハンド部Ｈが所定の動作を行う。
【００５７】
前述したインプット制御指令ｕＭの計算に係る処理手順の説明に先駆けて、インプットシェーピング制御としてのフィルタ処理に用いる計算式の説明を行う。
【００５８】
ｋ次モードまでの振動抑制を考慮した制御指令ｕｋの計算式は次式となる。ここで、ｕｋ[ｉ]は制振抑制を考慮したｉ番目の位置指令データを示すものである。また、ｕ０[ｉ]は制振制御前のｉ番目の位置指令データ、ｎ０は位置指令データの時系列データ数、ｆｋはｋ次モードの固有周波数、ζｋはｋ次モードの減衰係数を表す。
【数８】
2014076497.tif 000010
【００５９】
上式から分かるように、制御指令ｕｋを算出するための計算は、１次モード指令ｕ１[ｉ]、２次モード指令ｕ２[ｉ]の順に求めることによって行うことになる。なお、上式におけるＲｏｕｎｄ（）は、（）内の数値を小数点以下で四捨五入して整数にする関数である。
【００６０】
図７は、前述したインプットシェーピング制御としてのフィルタ処理を行い、インプット制御指令ｕＭを計算する処理を示したものである。
【００６１】
通常、制御指令は、搬送前のオーバヘッド時間を短縮するため、搬送動作をしながら先の指令の計算が行われる。計算フローでは、動作中の計算負荷を軽減するため、前処理として第１の処処理群ＧＳ１において指令計算式の係数などを予め計算しておく。そして、第２の処理群ＧＳ２のうち、動作始めの制御指令値の一部を事前に計算しておき、残りの部分については動作中に逐次計算するようにしている。
【００６２】
具体的に述べると、第１の処理群ＧＳ１は、複数の処理ステップＳＴ１１〜ＳＴ１５より構成されており、まず、初期設定として変数ｋに１を与える（ステップＳＴ１１）。次に、上記数８に記載の式を用いてＡｋ，Ｔｋ，ｎｋ（Ａ１，Ｔ１，ｎ１）を計算する（ステップＳＴ１２）。次に、変数ｋに１を加え（ステップＳＴ１３）、制振対象モード次数としての設定値Ｍと、上記変数ｋとを比較して変数ｋがＭ以下であるか否かを判定する（ステップＳＴ１４）。そして、変数ｋがＭ以下である場合にはステップＳＴ１２に戻り、再度Ａｋ，Ｔｋ，ｎｋを計算する。以上のステップＳＴ１２〜ステップＳＴ１４までの処理を繰り返し行い、ステップＳＴ１４において変数ｋがＭを越えると判定した場合には、次のステップＳＴ１５において、時系列データ数を示すｎｋの値を変数ｍａｌｌに設定する。
【００６３】
ここまでが、前処理として第１の処理群ＧＳ１を構成しており、これに引き続いて、ステップＳＴ１６として、変数ｉに１を与える処理がなされる。
【００６４】
以下、ステップＳＴ１７〜ＳＴ２３より構成される第２の処理群ＧＳ２が実行される。まず、初期設定として変数ｋに１を与える（ステップＳＴ１７）。次に、上記数８に記載の式を用いてｕｋ[ｉ]を計算する（ステップＳＴ１８）。次に、変数ｋに１を加え（ステップＳＴ１９）、設定値Ｍと変数ｋとを比較して変数ｋがＭ以下であるか否かを判定する（ステップＳＴ２０）。そして、変数ｋがＭ以下である場合にはステップＳＴ１７に戻り、先に求めたｕｋ−１[ｉ]を用いて再度ｕｋ[ｉ]を計算する。以上のステップＳＴ１７〜ステップＳＴ２０までの処理を繰り返し行い、ステップＳＴ２０において変数ｋがＭを越えると判定した場合には、次のステップＳＴ２１において、最終的に求めたｕｋ[ｉ]をインプットシェーピング制御を適用したｉ番目の整形指令値ｕＭ[ｉ]とする（ステップＳＴ２１）。次に変数ｉに１を加え（ステップＳＴ２２）、この変数ｉが上記ｍａｌｌ以下であるかを判定する（ステップＳＴ２３）。そして、変数ｉがｍａｌｌ以下である場合には、上記ステップＳＴ１７〜ステップＳＴ２２までの処理を繰り返して行い、変数ｉが１からｍａｌｌになるまで、変数ｉに対応するｕＭ[ｉ]を計算し続ける。そして、ステップＳＴ２３において変数ｉがｍａｌｌを越えると判定した場合には、これらの全ての処理を終了する。
【００６５】
なお、図７に示したような、インプットシェーピング制御としてのフィルタ処理を行うための計算フローは、関節座標系の制御指令値、及び、直交座標系の制御指令値のいずれに対しても適用することが可能である。
【００６６】
上記のように構成した本実施形態の多関節ロボット１を動作させた例を図８〜１２に示す。ここでは、ハンド部Ｈの姿勢がα＝９０°、すなわち、Ｙ方向に先端を向けた状態を維持させつつ、ハンド部ＨをＹ方向に向けて直線的に動作させるような目標値を設定して動作を行わせている。
【００６７】
各座標系ごとに区別して、上記インプットシェーピング制御指令ｕＭを時系列に見たデータを図８〜１２に示す。図８では、制御前指令として記載した直交座標系基準指令値におけるｘの時系列データと、この基準指令値に対して上記インプットシェーピング制御に係るフィルタ処理を適用した直交座標系整形指令値におけるｘの時系列データを重ねて示している。図から分かるように、ともにＸ座標軌道ではほぼ一定値を保つような指令が得られており、両者の間に差はほとんど見られず、インプットシェーピング制御を行ったことによるＸ方向への変化は見られない。
【００６８】
同様に、図９は、制御前指令として記載した直交座標系基準指令値におけるｙの時系列データと、この基準指令値に対して上記インプットシェーピング制御に係るフィルタ処理を適用した直交座標系整形指令値におけるｙの時系列データを重ねて示したものである。図から分かるように、インプットシェーピング制御を行うことで、Ｙ方向に対しては目標よりもやや遅れて動作がなされることになる。
【００６９】
図１０は、制御前指令として記載した直交座標系基準指令値におけるαの時系列データと、この基準指令値に対して上記インプットシェーピング制御に係るフィルタ処理を適用した直交座標系整形指令値におけるαの時系列データを重ねて示したものである。図から分かるように、両者の間に差はほとんど見られず、インプットシェーピング制御を行ったことによるハンド部Ｈの姿勢の変化は見られない。
【００７０】
上記のように得られる直交座標系整形指令値を基に、ＸＹ平面上でのハンド部Ｈの軌道をプロットしたものを図１１に示す。上述したようにインプットシェーピング制御を行ったことによる影響はＹ軸方向にしか生じていないため、多少の時間遅れはあるものの、インプットシェーピング制御の適用前後で変わることなく直線状の軌道を得ることができる。
【００７１】
これらとの比較例として、上記と同様のＹ方向への直線運動を関節座標系の指令値のみを用いてハンド部Ｈに行わせた結果を示す。
【００７２】
図１７は、関節座標系基準指令値としての第１リンク１１Ｌの回転角θ１に対して、インプットシェーピング制御の適用前後の変化を示したものである。適用前の目標値に対して、適用後には遅れが生じていることが分かる。
【００７３】
同様に、図１８は、関節座標系基準指令値としての第２リンク１２Ｌの回転角θ２に対して、インプットシェーピング制御の適用前後の変化を示したものである。この場合においても、適用前の目標値に対して適用後には遅れが生じる。
【００７４】
同様に、図１９は、関節座標系基準指令値としての第３リンク１３Ｌの回転角θ３に対して、インプットシェーピング制御の適用前後の変化を示したものである。この場合においても、適用前の目標値に対して適用後には遅れが生じる。
【００７５】
図２０は、上記のインプットシェーピング制御適用後の関節座標系指令値を基に得られるＸＹ平面上でのハンド部Ｈの軌道を示すものである。この場合には、インプットシェーピング制御を行ったことで、途中の軌道がＸ方向に大きくずれることが分かる。こうした場合には、周辺の障害物への衝突等の問題が生じる恐れがある。
【００７６】
本実施形態における上記図８〜１１に係る動作、及び、上記の比較例における図１７〜２０に係る動作、並びに、インプットシェーピング制御適用前の動作を各々実行させた直後の残留振動を重ねて図１２に示す。本実施形態および比較例における振動は、インプットシェーピング制御の適用前のものに比べ、当初より非常に小さく、素早く減衰していることが分かる。すなわち、双方ともに、インプットシェーピング制御による振動抑制の効果を有しているものといえる。本願実施形態における多関節ロボット１であれば、インプットシェーピング制御の特徴である簡単でかつ高速な演算処理を行うことで、アームを動作させながら効果的に振動を抑制することが可能であるとともに、振動低減効果と動作軌道のずれ抑制効果とが相俟って、よりハンド部Ｈの精密な動作を実現することが可能となる。
【００７７】
図１３は、本実施形態の多関節ロボット１における、上記とは別の動作例を示すものである。ここでは、ハンド部Ｈをα＝８０°となる向きに設定して、その向きにハンド部Ｈが直線動作するようにしている。このような動作を行う場合であっても、図１１の場合と同様、インプットシェーピング制御適用前後でほとんど変わることなく、直線的な動作が可能となっている。
【００７８】
以上のように、本実施形態における多関節ロボット１は、複数の関節Ｊ１〜Ｊ３により順次接続されるアーム要素１１〜１３と、各関節Ｊ１〜Ｊ３に接続されるアーム要素１１〜１３の相対位置又は姿勢を変更するモータＭ１〜Ｍ３と、モータＭ１〜Ｍ３の制御を行うことで末端のアーム要素１３に設けられたハンド部Ｈの位置及び姿勢の制御を行う制御部３と、を具備し、関節Ｊ１〜Ｊ３が回転自由度を有する多関節ロボット１であって、制御部３が、ハンド部Ｈの位置又は姿勢を制御するための基準指令値をその少なくとも一部が直交座標系となる直交座標系基準指令値として得る直交座標系基準指令設定部３１と、直交座標系基準指令設定部３１により得られる直交座標系基準指令値に対して所定の入力整形を行って直交座標系整形指令値を生成する直交座標系整形指令生成部３２と、直交座標系整形指令生成部３２により得られる直交座標系整形指令値を各関節Ｊ１〜Ｊ３に対応する関節座標系に変換した関節座標系変換指令値を生成する関節座標系変換指令生成部３３と、を備え、関節座標系変換指令生成部３３により得られる関節座標系変換指令値を基にして各モータＭ１〜Ｍ３の制御を行うように構成したものである。
【００７９】
こうすることで、入力整形を行うことによる動作の軌道のずれを抑制することができ、入力整形による効果を得つつも動作の軌道を正確に保つことが可能となる。そのため、多関節ロボット１を狭い場所で用いる場合でも、ハンド部Ｈやワークである半導体ウェハＷが周辺の機器や壁等と接触することを抑制することが可能となっている。
【００８０】
また、直交座標系整形指令生成部３２にて行う所定の入力整形が、ハンド部Ｈの振動を抑制するためのフィルタ処理とされているため、振動抑制と動作の軌道ずれの抑制とを両立させて、より位置精度の高い動作を行わせることが可能となっている。
【００８１】
また、そのフィルタ処理がインプットシェーピング制御としてのデータ処理であるため、振動抑制制御を高速で効率的に行うことが可能となり、振動抑制と動作の軌道ずれの抑制とをより高精度に実現することが可能となっている。
【００８２】
また、本実施形態の半導体ウェハ装置ＴＤは、上記のように水平多関節型ロボットとして構成した多関節ロボット１を備え、前記ハンド部Ｈ上に半導体ウェハＷを載置させつつ、半導体ウェハＷの搬送を行うようにしているため、上述した効果を生かして、精密な動作を要する半導体ウェハ搬送装置ＴＤとして効果的に実現することができ、半導体ウェハＷの高精度な加工に利用することが可能となる。
＜第２実施形態＞
【００８３】
図１４は、第２実施形態における多関節ロボット１０１を示すものであり、第１実施形態のものとは、制御部１０３の一部の構成のみが異なる。そのため、図２と同一の部分には同じ符号を付し、説明を省略する。
【００８４】
制御部１０３は、第１実施形態と同様、直交座標系基準指令設定部３１と、直交座標系整形指令生成部３２と、関節座標系変換指令生成部３３と、振動特性記憶部３４とを備え、さらに、制御指令値切替部１４１と、関節座標系基準指令設定部１４２と、関節座標系整形指令生成部１４３とを備えている。
【００８５】
制御指令値切替部１４１においては、ハンド部Ｈ上のウェハＷの有無や、外部から与えられる指令信号に従って、適切な指令値の演算処理方法を選択するものである。そのために、いずれの制御指令値を演算及び制御に用いるかを、切替命令として各部に出力するようになっている。この制御指令値切替部１４１における選択に応じて、一般的な、関節座標系で且つインプットシェーピング制御適用のない制御方式と、関節座標系にてインプットシェーピング制御適用のある制御方式と、第１実施形態として説明した直交座標系でインプットシェーピング制御を適用した後に関節座標系に変換する制御方式の三つの中で、制御方式を変更することができる。
【００８６】
そのため、関節座標系基準指令設定部１４２では、関節座標系の基準指令値を設定することが可能となっている。そして、関節座標系整形指令生成部１４３では、上記関節座標系基準指令設定部１４２により得られる関節座標系基準指令値Ｐｒｅｆを基に、インプットシェーピング制御に係るフィルタ処理としてのデータ処理を行うことが可能となっている。関節座標系基準指令設定部１４２と直交座標系基準指令設定部３１とは、独立して異なるデータを設定するようにすることも、互いのデータを基に、運動学変換または逆運動学変換によって生成するようにすることも可能である。
【００８７】
制御部１０３は、図１５に示すような処理の手順により、各関節Ｊ１〜Ｊ３を駆動するモータＭ１〜Ｍ３への指令値を決定する。
【００８８】
まず、第１に、ステップＳＴ１０１として、制御指令値切替部１４１において、制振制御を有効とするか無効とするかを判定する。この場合、ウェハＷがハンド部Ｈ上に保持されているかを基準とすることが適切であり、こうすることで、不要な演算処理を省略して、より高速化を図ることが可能となる。また、こうした処理を自動的に行わせることも好適である。制振制御を無効とするものと判定した場合には、次のステップＳＴ１０２に進み、関節座標系基準指令値Ｐｒｅｆを、そのままモータＭ１〜Ｍ３への制御指令値（位置指令）として制御に用いる。
【００８９】
ステップＳＴ１０１において、制振制御を有効にすると判定した場合には、ステップＳＴ１０３に進む。ステップＳＴ１０３では、インプットシェーピング制御を適用することを前提に、関節座標系基準指令Ｐｒｅｆを対象に行うか、直交座標系基準指令Ｃｒｅｆを対象に行うかを選択する。この場合には、ハンド部Ｈの周辺に障害物があるか否かを考慮要素として、軌道のズレが許されるか否かを判断するようにしておくことが好ましい。
【００９０】
軌道のズレが許されないものとして、ステップＳＴ１０３において、直交座標方式を適用すると判定した場合には、ステップＳＴ１０６に進む。ステップＳＴ１０６は、上述した第１実施形態において説明した、直交座標系基準指令値Ｃｒｅｆを用いてインプットシェーピング制御を適用した後に、関節座標系に変換してインプットシェーピング制御指令Ｐｓｈａｐｅを得るものと同一の処理である。そのため、詳細な処理手順の説明は省力する。このように得られたインプットシェーピング制御指令Ｐｓｈａｐｅは、ステップＳＴ１０５においてモータＭ１〜Ｍ３への制御指令値（位置指令）として設定され、制御に用いられる。
【００９１】
ハンド部Ｈの軌道のズレが許容されるものとして、ステップＳＴ１０３において、関節座標方式を適用すると判定した場合にはステップＳＴ１０４に進む。ステップＳＴ１０４では、関節座標系基準指令値Ｐｒｅｆを基にして、図１６に示す特定の処理によって計算することでインプットシェーピング制御指令Ｐｓｈａｐｅを得る。このように得られたインプットシェーピング制御指令Ｐｓｈａｐｅも、ステップＳＴ１０５においてモータＭ１〜Ｍ３への制御指令値（位置指令）として設定され、制御に用いられる。
【００９２】
関節座標系基準指令値Ｐｒｅｆからインプットシェーピング制御指令Ｐｓｈａｐｅを得る手順においては、図１６に示すように、まず、処理の最初のステップＳＴ１１１として、関節座標系基準指令設定部１４２に設定された関節座標系基準指令値としての軌道データＰｒｅｆをインプットシェーピング制御適用前の指令ｕ０として設定し、時系列データ数ｍをｎ０として設定する。
【００９３】
そして、ステップＳＴ１１２として、関節座標系整形指令生成部１４３により、上記関節座標系の軌道データＰｒｅｆを基にしてインプットシェーピング制御に係るフィルタ処理としてのデータ処理を行うことで入力整形を行い、関節座標系整形指令値としてのインプットシェーピング制御指令ｕＭを生成する。インプット制御指令ｕＭの計算は、振動特性記憶部３４に記憶された固有周波数及び減衰係数のデータを用い、図７に示した上述の処理によって実行される。
【００９４】
図１６に戻って、最後に、ステップＳＴ１１３として、関節座標系整形指令値として得られたインプット制御指令ｕＭを関節座標系変換指令値としてモータパルス指令Ｐｓｈａｐｅに設定する。
【００９５】
上記のように構成することで、制御指令値切替部１４１によって制御方式を適切に切り替えつつ、ハンド部Ｈに動作を行わせることが可能となる。
【００９６】
以上のように、本実施形態においては、上述の第１実施形態の構成を備えることで、同一の効果を得ることができるとともに、次のような特徴も備えている。
【００９７】
すなわち、本実施形態における多関節ロボット１０１は、制御部１０３が、各モータＭ１〜Ｍ３に与えるべき基準指令値として関節座標系基準指令値を生成する関節座標系基準指令設定部１４２と、関節座標系基準指令設定部１４２により得られる関節座標系基準指令値に対して所定の入力整形としてのインプットシェーピング制御に係るフィルタ処理を行って関節座標系整形指令値を生成する関節座標系整形指令生成部１４３と、各モータＭ１〜Ｍ３に与える制御指令値を切り替えるべく切替命令を出力する制御指令値切替部１４１と、をさらに備えており、制御指令値切替部１４１からの切替命令に応じて、関節座標系変換指令生成部１４３により得られる関節座標系変換指令値に代わり、関節座標系基準指令設定部１４２により得られる関節座標系基準指令値、又は、関節座標系整形指令生成部１４３により得られる関節座標系整形指令値を基にして各モータＭ１〜Ｍ３の制御を行うように構成したものである。
【００９８】
このように構成しているため、振動抑制の要否と軌道ずれの抑制の要否に応じて適正な制御指令値を選択することで、不要な制御を少なくして、より演算処理を高速化して多関節ロボット１の高速化を行うことが可能となっている。
【００９９】
また、ハンド部ＨがウェハＷを保持していない場合には、関節座標系変換指令生成部３３により得られる関節座標系変換指令値に代わり、関節座標系基準指令設定部１４２により得られる関節座標系基準指令値を基にして各モータＭ１〜Ｍ３の制御を行うように、前記制御指令値切替部１４１が切替命令を出力するようにしているため、保持するワークＷの有無により、適切に制御指令値を選択させることが可能となり、より利便性を高めることが可能となる。
【０１００】
また、上記の多関節ロボット１０１を備えた半導体ウェハ搬送装置ＴＤとして構成することも好適である。
【０１０１】
なお、各部の具体的な構成は、上述した実施形態のみに限定されるものではない。
【０１０２】
例えば、上述の実施形態における多関節ロボット１，１０１は、全ての関節Ｊ１〜Ｊ３が回転自由度を有する３リンク方式のものとなっていたが、本願発明の効果は、回転自由度を３つ有するもののみに限られず、回転自由度が１つ以上あり、他が直動自由度を有するものにおいても同様に得られる。すなわち、本発明は、直動又は回動可能な複数の関節によって駆動される複数のアーム（リンク）や直動部等の可動要素を備えており、その中の少なくとも１つの関節が回転自由度を有するものであれば適用することができ、上述の効果を得ることが可能である。
【０１０３】
さらに、関節を駆動するためのアクチュエータは、モータに限らず回転駆動するものであれば同様の効果が得られる。
【０１０４】
また、上述の実施形態においては、多関節ロボット１，１０１の先端に設けたハンド部Ｈを略Ｕ字形に形成し、その上面にワークとしてのウェハ（半導体ウェハ）Ｗを載置することでこれを保持するようにしていたが、ハンド部Ｈはこれに限らず様々な形状及び構成に変更することが可能である。
【０１０５】
また、直交座標系基準指令値に対して所定の入力整形を行った後に、関節座標系に変換して関節座標系指令値を生成することによって、ハンド部Ｈの軌道のずれを抑制する効果は、インプットシェーピング制御に係るフィルタ処理のみでなく、ローパスフィルタやノッチフィルタなど他のフィルタ処理を用いる場合でも同様に得ることが可能であり、目標と合致した軌道で動作させることができる。また、こうした振動抑制を目的としたフィルタ処理以外にも、他の目的を有する様々な入力整形を用いることが可能である。
【０１０６】
その他の構成も、本発明の趣旨を逸脱しない範囲で種々変形が可能である。
【符号の説明】
【０１０７】
１…多関節ロボット
２…機械装置部
３…制御部
１１…第１アーム要素
１２…第２アーム要素
１３…第３アーム要素
３１…直交座標系基準指令設定部
３２…直交座標系整形指令生成部
３３…関節座標系変換指令生成部
１４１…制御指令値切替部
１４２…関節座標系基準指令設定部
１４３…関節座標系変換指令生成部
Ｈ…ハンド部
Ｊ１…第１関節
Ｊ２…第２関節
Ｊ３…第３関節
Ｍ１〜Ｍ３…モータ（アクチュエータ）
ＴＤ…半導体ウェハ搬送装置
Ｗ…半導体ウェハ（ワーク）
【図１】
2014076497.tif 000011
【図２】
2014076497.tif 000012
【図３】
2014076497.tif 000013
【図４】
2014076497.tif 000014
【図５】
2014076497.tif 000015
【図６】
2014076497.tif 000016
【図７】
2014076497.tif 000017
【図８】
2014076497.tif 000018
【図９】
2014076497.tif 000019
【図１０】
2014076497.tif 000020
【図１１】
2014076497.tif 000021
【図１２】
2014076497.tif 000022
【図１３】
2014076497.tif 000023
【図１４】
2014076497.tif 000024
【図１５】
2014076497.tif 000025
【図１６】
2014076497.tif 000026
【図１７】
2014076497.tif 000027
【図１８】
2014076497.tif 000028
【図１９】
2014076497.tif 000029
【図２０】
2014076497.tif 000030