(57)【要約】      （修正有）【課題】演算負荷の増加を抑制しながら多関節ロボットで発生する振動を抑制可能なモータ駆動装置を得る。【解決手段】モータ駆動装置は、多関節ロボットに設けられる複数の関節のそれぞれを回転させるモータを駆動するモータ駆動装置であって、多関節ロボットの移動位置を指定する位置指令値に基づき、複数の関節のそれぞれの角度を指定する角度指令値θ１，θ２，θ３を生成する角度指令値生成部１０と、複数の角度指令値θ１，θ２，θ３を用いて、多関節ロボットに生じる振動を抑制する補正量Δθ１，Δθ２，Δθ３を生成する補正量生成部２１１，２２１，２３１と、補正量Δθ１，Δθ２，Δθ３を用いて角度指令値θ１，θ２，θ３を補正し、補正後の角度指令値θ１'，θ２'，θ３'を演算する指令値補正部２１ａ，２２ａ，２３ａとを備える。【選択図】図４
2020069616.tif 000002
【特許請求の範囲】
【請求項１】
多関節ロボットに設けられる複数の関節のそれぞれを回転させるモータを駆動するモータ駆動装置であって、
前記多関節ロボットの移動位置を指定する位置指令値に基づき、複数の関節のそれぞれの角度を指定する角度指令値を生成する角度指令値生成部と、
複数の前記角度指令値を用いて、前記多関節ロボットに生じる振動を抑制する補正量を生成する補正量生成部と、
前記補正量を用いて前記角度指令値を補正し、補正後の前記角度指令値を演算する指令値補正部と、
を備えるモータ駆動装置。
【請求項２】
前記多関節ロボットはスカラロボットである請求項１に記載のモータ駆動装置。
【請求項３】
前記スカラロボットは、ウエハ運搬スカラロボットである請求項２に記載のモータ駆動装置。
【請求項４】
前記多関節ロボットと請求項１から３の何れか一項に記載のモータ駆動装置とを備えるロボット駆動システム。
【請求項５】
多関節ロボットに設けられる複数の関節のそれぞれを回転させるモータを駆動するモータ駆動プログラムであって、
前記多関節ロボットの移動位置を指定する位置指令値に基づき、複数の関節のそれぞれの角度を指定する角度指令値を生成する角度指令値生成ステップと、
複数の前記角度指令値を用いて、前記多関節ロボットに生じる振動を抑制する補正量を生成する補正量生成ステップと、
補正量生成ステップで生成された前記補正量を用いて前記角度指令値を補正し、補正後の前記角度指令値を演算する指令値補正ステップと、
をコンピュータに実行させるモータ駆動プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、多関節ロボットに設けられる複数の関節のそれぞれを回転させるモータを駆動するモータ駆動装置、ロボット駆動システム及びモータ駆動プログラムに関する。
【背景技術】
【０００２】
特許文献１にはロボットに生じる振動を抑制する技術が開示されている。特許文献１に開示される技術によれば、位置指令値の２階微分値にパラメータを乗算して得られた補正量を、位置指令値に加算することによって新たな位置指令値を演算することで、アーム先端の振動が抑制される。位置指令値は、アーム先端の移動位置を指定する指令値である。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特許第４３６７０４１号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら、特許文献１に開示される技術は、１つのモータを利用して動作基点から目標位置へ直線移動される機構に生じる振動を抑制するものである。そのため、複数の関節を備える多関節ロボットへ特許文献１に開示される技術を適用した場合、位置指令値に対して制震抑制のための補正演算が行われる。すなわち、複数の関節のそれぞれの角度を指定する複数の角度指令値に変換される前の位置指令値に対して、補正量が演算される。このように、位置指令値に対して補正演算が行われた場合、位置指令値を角度指令値に変換する演算負荷が増大し、位置指令値の入力に対する多関節ロボットの動作遅延が生じる。また、多関節ロボットの駆動制御においては、例えば３次元空間内で目標位置へ非直線的に移動されるアーム先端の移動ベクトルの加速度を求める必要があるため、角度指令値の演算自体が複雑化して、多関節ロボットの設計と動作検証に要する時間が大幅に増大するという課題があった。
【０００５】
本発明は、上記に鑑みてなされたものであって、演算負荷の増加を抑制しながら多関節ロボットで発生する振動を抑制可能なモータ駆動装置を得ることを目的とする。
【課題を解決するための手段】
【０００６】
上述した課題を解決し、目的を達成するため、本発明に係るモータ駆動装置は、多関節ロボットに設けられる複数の関節のそれぞれを回転させるモータを駆動するモータ駆動装置であって、前記多関節ロボットの移動位置を指定する位置指令値に基づき、複数の関節のそれぞれの角度を指定する角度指令値を生成する角度指令値生成部を備える。モータ駆動装置は、複数の前記角度指令値を用いて、前記多関節ロボットに生じる振動を抑制する補正量を生成する補正量生成部と、前記補正量を用いて前記角度指令値を補正し、補正後の前記角度指令値を演算する指令値補正部とを備える。
【発明の効果】
【０００７】
本発明によれば、演算負荷の増加を抑制しながら多関節ロボットで発生する振動を抑制できるという効果を奏する。
【図面の簡単な説明】
【０００８】
【図１】本発明の実施の形態に係るモータ駆動装置を備えるロボット駆動システムの構成例を示す図
【図２】図１に示される多関節ロボットの構成例を示す第１図
【図３】図１に示される多関節ロボットの構成例を示す第２図
【図４】図１に示されるモータ駆動装置の構成例を示す図
【図５】図４に示される補正量生成部の構成例を示す図
【図６】図１に示されるロボット駆動システムの動作を説明するためのフローチャート
【図７】角度指令値θ１，θ２，θ３の変化を示す図
【図８】リンクＬＫ１先端のｘ方向及びｙ方向相対移動を表す図
【図９】リンクＬＫ２先端のｘ方向及びｙ方向相対移動を表す図
【図１０】リンクＬＫ３のｘ，ｙ座標位置を表す図
【図１１】ロボットハンドの先端が直線運動する場合におけるｘ，ｙ座標位置を示す図
【図１２】角度指令値の補正による効果を説明するための図
【図１３】図１に示されるモータ駆動装置により駆動可能なスカラロボットの外観図
【図１４】本発明の実施の形態に係るモータ駆動装置を実現するためのハードウェア構成例を示す図
【発明を実施するための形態】
【０００９】
以下に、本発明の実施の形態に係るモータ駆動装置、ロボット駆動システム及びモータ駆動プログラムを図面に基づいて詳細に説明する。なお、この実施の形態によりこの発明が限定されるものではない。
【００１０】
実施の形態．
図１は本発明の実施の形態に係るモータ駆動装置を備えるロボット駆動システムの構成例を示す図である。ロボット駆動システム１０００は、多関節ロボット２００を駆動するシステムである。多関節ロボット２００の構成の詳細は後述する。ロボット駆動システム１０００は、位置指令値を出力する位置指令装置３００と、位置指令値に基づき、多関節ロボット２００を駆動するための駆動電流を生成して出力するモータ駆動装置１００とを備える。位置指令値は、多関節ロボット２００が備えるアーム先端の移動位置を指定する指令値である。モータ駆動装置１００は、位置指令値に基づき、角度指令値を生成する角度指令値生成部１０と、角度指令値生成部１０で生成された角度指令値に基づき、多関節ロボット２００に設けられる複数のモータのそれぞれを駆動する駆動電流を生成するモータ駆動部２０とを備える。角度指令値は、多関節ロボット２００が備える複数の関節のそれぞれの角度を指定する指令値である。
【００１１】
モータ駆動装置１００の特徴は、位置指令値に基づき生成された複数の角度指令値の補正量を用いて、複数の角度指令値のそれぞれを補正することによって、補正された角度指令値を演算することである。以下では、図２及び図３を用いて多関節ロボットの構成を説明し、その後に図４から図８を用いてモータ駆動装置１００の構成と動作を説明する。
【００１２】
図２は図１に示される多関節ロボットの構成例を示す第１図である。図２に示される多関節ロボット２００は、例えば、３つの関節を備えたウエハ運搬スカラロボットである。多関節ロボット２００は、ベース部２０１、ロボットアーム２０２及びロボットハンド２０３を備え、さらに３つのモータＭ１，Ｍ２，Ｍ３を備える。３つのモータＭ１，Ｍ２，Ｍ３のそれぞれは、図１に示されるモータ駆動装置１００の駆動対象となる回転電機であり、例えばサーボモータなどである。なお、本実施の形態に係るモータ駆動装置１００によって駆動される多関節ロボット２００は、ウエハ運搬スカラロボットに限定されるものではなく、２つ以上の関節を備えたロボットであればよい。また多関節ロボット２００の関節数は、２つ以上であればよく、３つに限定されるものではない。２つ以上の関節を備えたロボットの例としては、水平方向の動作に重点の置かれた関節構造のスカラロボットである水平多関節ロボット、水平方向だけでなく垂直方向の動作にも重点の置かれた関節構造の垂直多関節ロボットなどである。水平多関節ロボットは、垂直多関節ロボットに比べて動作範囲が狭い傾向にあり、省スペース化が可能、高速動作が可能といった利点がある。また、水平多関節ロボットは、垂直方向の剛性が高く、ロボットアームの先端に設けられるロボットハンド（エンドエフェクタ）の高精度な位置決めが可能である。その反面、水平多関節ロボットでは、可動範囲が狭いため動作が制限される。垂直多関節ロボットは、可動範囲が広く、様々な動作を行うことができるが、垂直方向の剛性が低いため、エンドエフェクタの高精度な位置決めが難しい。
【００１３】
図３は図１に示される多関節ロボットの構成例を示す第２図である。図３には、多関節ロボット２００を構成するベース部２０１及びロボットアーム２０２を平面視した状態が示される。多関節ロボット２００には、３つのリンクＬＫ１，ＬＫ２，ＬＫ３と、３つの関節Ｊ１，Ｊ２，Ｊ３と、３つのモータＭ１，Ｍ２，Ｍ３と、３つの軸ＡＸ１，ＡＸ２，ＡＸ３とが設けられる。なお、多関節ロボット２００には、これらの構成要素以外にも、例えば３つの軸ＡＸ１，ＡＸ２，ＡＸ３のそれぞれを入力軸として、入力軸の回転数を減速して出力軸へ伝達する減速機構が設けられる。減速機構は、例えば波動歯車装置などである。
【００１４】
モータＭ１はベース部２０１に設けられる。モータＭ１から伸びる軸ＡＸ１の回転力は、不図示の減速機構を介して、リンクＬＫ１に設けられる関節Ｊ１に伝達される。軸ＡＸ１は、リンクＬＫ１を回転させるためのモータシャフトである。モータＭ２はリンクＬＫ１に設けられる。モータＭ２から伸びる軸ＡＸ２の回転力は、不図示の減速機構を介して、リンクＬＫ２に設けられる関節Ｊ２に伝達される。軸ＡＸ２は、リンクＬＫ２を回転させるためのモータシャフトである。モータＭ３はリンクＬＫ２に設けられる。モータＭ３から伸びる軸ＡＸ３の回転力は、不図示の減速機構を介して、リンクＬＫ３に設けられる関節Ｊ３に伝達される。軸ＡＸ３は、リンクＬＫ３を回転させるためのモータシャフトである。
【００１５】
リンクＬＫ３の先端位置は、ｘｙ座標で表すと、座標（ｘ，ｙ）＝（０，Ｌ１＋Ｌ２＋Ｌ３）となる。Ｌ１は、軸ＡＸ１から軸ＡＸ２までの距離に等しい。Ｌ２は、軸ＡＸ２から軸ＡＸ３までの距離に等しい。Ｌ３は、軸ＡＸ３からリンクＬＫ３の先端までの幅に等しい。
【００１６】
次に、図４及び図５を用いて、モータ駆動装置１００の構成の詳細について説明する。図４は図１に示されるモータ駆動装置の構成例を示す図である。モータ駆動装置１００は、角度指令値生成部１０及びモータ駆動部２０を備える。角度指令値生成部１０は、位置指令値を、逆キネマティクス演算により、例えば３つの角度指令値θ１，θ２，θ３に変換する機能である。角度指令値θ１は、図３に示される関節Ｊ１の角度を指定する指令値である。角度指令値θ２は、図３に示される関節Ｊ２の角度を指定する指令値である。角度指令値θ３は、図３に示される関節Ｊ３の角度を指定する指令値である。逆キネマティクスでは、ロボットアーム２０２の先端の位置及び姿勢から、各関節Ｊ１，Ｊ２，Ｊ３の角度が演算される。逆キネマティクスにより、ロボット位置及び姿勢から各関節の角度を求める手法については、例えば特開2005-305597号公報、特開平11-104985号公報などに記載されるため、ここでは説明を割愛する。
【００１７】
モータ駆動部２０は、第１駆動電流生成部２１、第２駆動電流生成部２２及び第３駆動電流生成部２３を備える。第１駆動電流生成部２１は、第１指令値補正部２１ａ及び第１サーボ制御部２１ｂを備える。第１指令値補正部２１ａは、第１補正量生成部２１１及び補正後角度指令値生成部２１２を備える。第１補正量生成部２１１の構成の詳細は後述する。補正後角度指令値生成部２１２は、加算部３を備える。第２駆動電流生成部２２は、第２指令値補正部２２ａ及び第２サーボ制御部２２ｂを備える。第２指令値補正部２２ａは、第２補正量生成部２２１及び補正後角度指令値生成部２２２を備える。第２補正量生成部２２１の構成の詳細は後述する。補正後角度指令値生成部２２２は、加算部３を備える。第３駆動電流生成部２３は、第３指令値補正部２３ａ及び第３サーボ制御部２３ｂを備える。第３指令値補正部２３ａは、第３補正量生成部２３１及び補正後角度指令値生成部２３２を備える。第３補正量生成部２３１の構成の詳細は後述する。補正後角度指令値生成部２３２は、加算部３を備える。
【００１８】
図５は図４に示される補正量生成部の構成例を示す図である。第１補正量生成部２１１、第２補正量生成部２２１及び第３補正量生成部２３１のそれぞれは、角度指令値に対して２階微分を施して２階微分値を出力する微分部１と、微分部１から出力される２階微分値に対してゲイン定数を乗算することによって補正量を演算して出力するゲイン部２とを備える。
【００１９】
図４に戻り、第１サーボ制御２１ｂは、第１指令値補正部２１ａで演算された補正後角度指令値θ１'に基づき、モータＭ１の軸ＡＸ１を制御する駆動電流Ｄ１を供給する。第２サーボ制御２２ｂは、第２指令値補正部２２ａで演算された補正後角度指令値θ２'に基づき、モータＭ２の軸ＡＸ２を制御する駆動電流Ｄ２を供給する。第３サーボ制御２３ｂは、第３指令値補正部２３ａで演算された補正後角度指令値θ３'に基づき、モータＭ３の軸ＡＸ３を制御する駆動電流Ｄ３を供給する。
【００２０】
次に、図６及び図７を用いて、モータ駆動装置１００及びロボット駆動システム１０００の動作を説明する。図６は図１に示されるロボット駆動システムの動作を説明するためのフローチャートである。位置指令装置３００で位置指令値が生成されると、角度指令値生成部１０では、角度指令値θ１、角度指令値θ２及び角度指令値θ３が生成される（ステップＳ１）。生成された角度指令値θ１は第１指令値補正部２１ａに入力され、角度指令値θ２は第２指令値補正部２２ａに入力され、角度指令値θ３は第３指令値補正部２３ａに入力される。
【００２１】
第１指令値補正部２１ａの第１補正量生成部２１１では、角度指令値θ１に基づき補正量Δθ１が生成される（ステップＳ２）。そして、補正後角度指令値生成部２１２の加算部３には、補正量Δθ１と角度指令値θ１とが入力され、当該加算部３では、角度指令値θ１に補正量Δθ１が加算されることによって角度指令値θ１が補正される（ステップＳ３）。その結果、補正後角度指令値θ１'が生成される。
【００２２】
同様に、第２指令値補正部２２ａの第２補正量生成部２２１では、角度指令値θ２に基づき補正量Δθ２が生成される（ステップＳ２）。そして、補正後角度指令値生成部２２２の加算部３には、補正量Δθ２と角度指令値θ２とが入力され、当該加算部３では、角度指令値θ２に補正量Δθ２が加算されることによって、角度指令値θ２が補正される（ステップＳ３）。その結果、補正後角度指令値θ２'が演算される。
【００２３】
また第３指令値補正部２３ａの第３補正量生成部２３１では、角度指令値θ３に基づき補正量Δθ３が生成される（ステップＳ２）。そして、補正後角度指令値生成部２３２の加算部３には、補正量Δθ３と角度指令値θ３とが入力され、当該加算部３では、角度指令値θ３に補正量Δθ３が加算されることによって、角度指令値θ３が補正される（ステップＳ３）。その結果、補正後角度指令値θ３'が演算される。演算された補正後角度指令値θ１'は第１サーボ制御部２１ｂの指令として入力される。演算された補正後角度指令値θ２'は第２サーボ制御部２２ｂの指令として入力される。演算された補正後角度指令値θ３'は第３サーボ制御部２３ｂの指令として入力される。
【００２４】
第１サーボ制御部２１ｂは駆動電流Ｄ１をモータＭ１に供給する。第２サーボ制御部２２ｂは駆動電流Ｄ２をモータＭ２に供給する。第３サーボ制御部２３ｂは駆動電流Ｄ３をモータＭ３に供給する。これにより、３つのモータＭ１，Ｍ２，Ｍ３のそれぞれに設けられるロータが回転して、ロータに設けられる軸ＡＸ１，ＡＸ２，ＡＸ３の回転トルクが、リンクＬＫ１，ＬＫ２，ＬＫ３に伝達される。モータＭ１の軸ＡＸ１が回転することによって、関節Ｊ１の角度が変化する。モータＭ２の軸ＡＸ２が回転することによって、関節Ｊ２の角度が変化する。モータＭ３の軸ＡＸ３が回転することによって、関節Ｊ３の角度が変化する。関節Ｊ１の角度が変化することによって、軸ＡＸ１の延伸方向と直交する平面上におけるリンクＬ１の角度θ１が変化する。角度θ１は、関節Ｊ１の角度に等しい。同様に、関節Ｊ２の角度が変化することによって、リンクＬ２の角度θ２が変化する。角度θ２は、関節Ｊ２の角度に等しい。関節Ｊ３の角度が変化することによって、リンクＬ３の角度θ３が変化する。角度θ３は、関節Ｊ３の角度に等しい。これにより、リンクＬＫ３の先端、すなわちロボットハンド２０３の先端が、任意の３次元位置に移動される。
【００２５】
図７は角度指令値θ１，θ２，θ３の変化を示す図である。図７の横軸は時間を表し、図７の縦軸は角度指令値（各関節の角度）を表す。図８はリンクＬＫ１先端のｘ方向及びｙ方向相対移動を表す図である。図９はリンクＬＫ２先端のｘ方向及びｙ方向相対移動を表す図である。図１０はリンクＬＫ３のｘ，ｙ座標位置を表す図である。図７〜図１０に示すように、角度指令値θ１，θ２，θ３の変化の傾向は互いに異なるため、リンクＬＫ１、リンクＬＫ２及びリンクＬＫ３のそれぞれの先端の動作は非線形となる。
【００２６】
しかしながら、ロボットハンド２０３の先端が図１１に示されるように、ｘ方向に直線運動する場合、リンクＬＫ１の先端とリンクＬＫ２の先端の相対移動は、ｙ方向を相殺する動きとなる。従って、結果として線形結合が成り立ち、制振制御の効果が得られる。図１１はロボットハンドの先端が直線運動する場合におけるｘ，ｙ座標位置を示す図である。図１１の横軸はｘ方向の位置を表し、図１１の縦軸はｙ方向の位置を表す。このように、ロボットハンド２０３の先端がｘ方向に直線運動する場合、逆キネマティクスの結果が非線形であっても、各関節ではｙ方向の動作が相殺されて、結果的に線形結合となる。そのため、制振制御の効果が得られる。
【００２７】
図１２は角度指令値の補正による効果を説明するための図である。図１２には、例えばロボットハンド２０３の先端がｘ，ｙ座標（２００，０）からｘ，ｙ座標（４００，０）に移動したときに検出される振動が示される。図１２の左側に示される実線は、制振制御がない状態でロボットハンド２０３の先端を動作させたときに検出される振動を表す。制振制御がない状態とは、前述した補正量による角度指令値の補正がなされていない状態である。図１２の右側に示される実線は、制振制御がある状態でロボットハンド２０３の先端を動作させたときに検出される振動を表す。制振制御がある状態とは、本実施の形態に係るモータ駆動装置１００を用いて多関節ロボット２００を動作させた状態である。図１２の横軸は時間、図１２の縦軸は位置である。例えば１０秒から１２秒までの間にロボットハンド２０３の先端がｘ，ｙ座標（２００，０）からｘ，ｙ座標（４００，０）へ移動され、１２秒付近でロボットハンド２０３の先端の移動が停止される。この場合、制振制御がないときには、ロボットハンド２０３における振動が抑制されないが、制振制御があるときには、ロボットハンド２０３における振動が抑制されることが分かる。
【００２８】
なお特開2018-51650号公報には、関節角度を補正することによって制振制御を行う技術が開示されている。しかしながら、当該文献では単軸の動作のみについて言及されている。例えば当該文献の段落0049の式（１）「ａ＝ａω・Ｌｒ」では、回転角速度で加速度が求められる。しかしながら回転運動の場合、角加速度及び加速度はベクトルとなり、円の接線方向だけではなく、径方向にも発生する。そのため、物体Ｗは円の外側に膨らんでしまい、径方向の振動が発生する。当該文献では、このような現象が考慮されておらず、制振制御が理論的には成り立たない。これに対して本実施の形態に係るモータ駆動装置１００を用いて、例えばスカラロボットのロボットハンド２０３の先端を直線運動させた場合、制振制御の効果が得られる。
【００２９】
なお本実施の形態における制振制御方法は、図５に開示される例に限定されるものではなく、制振制御には、例えば固有振動成分を除去又は低減する特性を有する制振フィルタを適用してもよい。
【００３０】
特許文献１に示される技術は、複数の関節を備えた多関節ロボット２００に生じる振動を抑制することを目的としたものではないため、多関節ロボット２００へ特許文献１に開示される技術を適用する場合には、位置指令値に対して制震抑制のための補正演算が行われる。すなわち逆キネマティクス演算される前の位置指令値に対して、制震抑制のための補正演算が行われる。このように、位置指令値に対して補正演算が行われた場合、位置指令値を角度指令値に変換する逆キネマティクスによる演算の負荷が増大し、位置指令値の入力に対する多関節ロボットの動作遅延が生じる。この動作遅延を解消するためには、高速演算が可能な高価なプロセッサを用いる必要がある。また逆キネマティクスによる演算が複雑化して、モータ駆動装置の設計と動作検証に要する時間が大幅に増大する。そのため、特許文献１に開示される技術を多関節ロボット２００へ適用するには、モータ駆動装置の製造コストが大幅に上昇することとなる。
【００３１】
本実施の形態に係るモータ駆動装置１００は、多関節ロボットの移動位置を指定する位置指令値に基づき、複数の関節のそれぞれの角度を指定する角度指令値を生成する角度指令値生成部１０と、各々の角度指令値を用いて、多関節ロボットに生じる振動を抑制する補正量を生成する補正量生成部（第１補正量生成部２１１、第２補正量生成部２２１及び第３補正量生成部２３１）と、その補正量を用いて角度指令値を補正し、補正後の角度指令値を演算する指令値補正部（補正後角度指令値生成部２１２、補正後角度指令値生成部２２２及び補正後角度指令値生成部２３２）とを備える。モータ駆動装置１００によれば、逆キネマティクス演算後の角度指令値θ１，θ２，θ３に対して、補正量が付加されるため、角度指令値生成部１０の演算負荷の上昇が抑制され、さらに角度指令値θ１，θ２，θ３への補正量の加算は簡単な処理で済むため、多関節ロボット２００の動作遅延を抑制することもできる。従って、高速演算が可能な高価なプロセッサを用いることなく、多関節ロボット２００の制振制御が可能であり、またモータ駆動装置１００の設計と動作検証に要する時間の増加を抑制できる。その結果、多関節ロボット２００の制振制御対策に要するコストの上昇を抑制しながら、多関節ロボットで発生する振動を効果的に抑制できる。
【００３２】
図１３は図１に示されるモータ駆動装置により駆動可能なスカラロボットの外観図である。図１３にはスカラロボットの一例である水平多関節ロボット２３０が示される。水平多関節ロボット２３０は、図２に示される多関節ロボット２００と同様に、２つ以上の関節を備えたロボットである。本実施の形態に係るモータ駆動装置１００は、図２に示される多関節ロボット２００に代えて、図１３に示される水平多関節ロボット２３０の駆動も可能であり、水平多関節ロボット２３０を用いた場合でも、前述同様の効果を得ることができる。
【００３３】
図１４は本発明の実施の形態に係るモータ駆動装置を実現するためのハードウェア構成例を示す図である。モータ駆動装置１００は、ＣＰＵ（Central Processing Unit）、システムＬＳＩ（Large Scale Integration）などのプロセッサ３０と、ＲＡＭ（Random Access Memory）、ＲＯＭ（Read Only Memory）などで構成されるメモリ３１と、入出力インタフェース３２とにより実現することが可能である。プロセッサ３０、メモリ３１及び入出力インタフェース３２は、バス３３に接続され、バス３３を介して、データ、制御情報などの受け渡しを相互に行うことが可能である。入出力インタフェース３２は、モータ駆動装置１００が、位置指令装置３００及び多関節ロボット２００との間で位置指令値、駆動電流などの送受信を行う場合に使用される。なお、プロセッサ３０は、マイクロコンピュータ、ＤＳＰ（Digital Signal Processor）といった演算手段であってもよい。
【００３４】
モータ駆動装置１００を実現する場合、モータ駆動装置１００用のプログラムをメモリ３１に格納しておき、このプログラムをプロセッサ３０が実行することにより、モータ駆動装置１００の角度指令値生成部１０、第１指令値補正部２１ａ、第２指令値補正部２２ａ、第３指令値補正部２３ａなどが実現される。モータ駆動装置１００用のプログラムは、角度指令値生成部１０、第１指令値補正部２１ａ、第２指令値補正部２２ａ、第３指令値補正部２３ａなどの機能を実行するプログラムである。
【００３５】
なお、モータ駆動装置１００の制御対象である多関節ロボット２００が、スカラロボットである場合、スカラロボットは垂直多関節ロボットに比べて安価に製造が可能であるため、モータ駆動装置１００を用いることにより、スカラロボットを含むロボット駆動システム１０００の製造コストの上昇を抑制しながら、スカラロボットで発生する振動を効果的に抑制することができる。
【００３６】
また、このスカラロボットが図２に示されるようなウエハ運搬スカラロボットである場合、ウエハ運搬スカラロボットでは、ウエハ運搬時に生じる振動を抑制するために多大な調整時間を要するが、モータ駆動装置１００を用いることにより、ウエハ運搬スカラロボットを含むロボット駆動システム１０００の調整時間の大幅な増加を抑制しながら、スカラロボットで発生する振動を効果的に抑制することができる。
【００３７】
以上の実施の形態に示した構成は、本発明の内容の一例を示すものであり、別の公知の技術と組み合わせることも可能であるし、本発明の要旨を逸脱しない範囲で、構成の一部を省略、変更することも可能である。
【符号の説明】
【００３８】
１  微分部、２  ゲイン部、３  加算部、１０  角度指令値生成部、２０  モータ駆動部、２１  第１駆動電流生成部、２２  第２駆動電流生成部、２３  第３駆動電流生成部、２１ａ  第１指令値補正部、２２ａ  第２指令値補正部、２３ａ  第３指令値補正部、２１ｂ  第１サーボ制御部、２２ｂ  第２サーボ制御部、２３ｂ  第３サーボ制御部、２１１  第１補正量生成部、２２１  第２補正量生成部、２３１  第３補正量生成部、３０  プロセッサ、３１  メモリ、３２  入出力インタフェース、３３  バス、１００  モータ駆動装置、２００  多関節ロボット、２０１  ベース部、２０２  ロボットアーム、２０３  ロボットハンド、２３０  水平多関節ロボット、３００  位置指令装置、１０００  ロボット駆動システム。
【図１】
2020069616.tif 000003
【図２】
2020069616.tif 000004
【図３】
2020069616.tif 000005
【図４】
2020069616.tif 000006
【図５】
2020069616.tif 000007
【図６】
2020069616.tif 000008
【図７】
2020069616.tif 000009
【図８】
2020069616.tif 000010
【図９】
2020069616.tif 000011
【図１０】
2020069616.tif 000012
【図１１】
2020069616.tif 000013
【図１２】
2020069616.tif 000014
【図１３】
2020069616.tif 000015
【図１４】
2020069616.tif 000016