(57)【要約】【課題】  通信遅延、測定ノイズおよびロボットシステム固有のコントローラパラメータの不確かさが存在する場合に、モータと関節コントローラのダイナミクスをキャンセルするシステムと方法を提供する。【解決手段】2009510627.tif 000048【選択図】  図１
2009510627.tif 000002
【特許請求の範囲】
【請求項１】
2009510627.tif 000043
【請求項２】
前記誤差補正ブロックは、
前記誤差値に基づいて第１の積分値を出力する第１の積分器と、
前記第１の積分値に基づいて第２の積分値を出力する第２の積分器と、
前記第２の積分値に基づいて第１の増幅値を出力する第１の増幅器と、
前記第１の積分値と前記第１の増幅値とに基づいて第１のノード値を出力する第１のノードと、
前記第１のノード値に基づいて第２の増幅値を出力する第２の増幅器と
を備えることを特徴とする請求項１に記載のシステム。
【請求項３】
前記誤差補正ブロックの前記第１のノードは、さらに、前記第１の積分値と第１の増幅値を加えることを特徴とする請求項２に記載のシステム。
【請求項４】
前記誤差補正ブロックの前記第１のノードは、合計ノードを備えることを特徴とする請求項２に記載のシステム。
【請求項５】
前記誤差補正ブロックは、
前記第２の積分値に基づいて第３の積分値を出力する第３の積分器と、
前記第３の積分値に基づいて第３の増幅値を出力する第３の増幅器と、
前記第２の増幅値と前記第１の増幅値とに基づいて第２のノード値を出力する第２のノードとをさらに備え、
前記第１のノードは、さらに、前記第１の積分値と前記第２のノード値に基づいて前記第１のノード値を出力する
ことを特徴とする請求項２に記載のシステム。
【請求項６】
前記誤差補正ブロックの前記第１のノードは、さらに、前記第１の積分値と前記第２のノード値を加えることを特徴とする請求項５に記載のシステム。
【請求項７】
前記誤差補正ブロックの前記第１のノードは、合計ノードを備えることを特徴とする請求項５に記載のシステム。
【請求項８】
前記誤差補正ブロックの伝達関数は式１１に等しいことを特徴とする請求項１に記載のシステム。
【数１】
2009510627.tif 000044
【請求項９】
前記ブロックＣは、コントローラを備えることを特徴とする請求項１に記載のシステム。
【請求項１０】
前記ブロックＣは、ロボット用の関節コントローラを備えることを特徴とする請求項１に記載のシステム。
【請求項１１】
前記ブロックＣは、ロボット用の独立型関節コントローラを備えることを特徴とする請求項１に記載のシステム。
【請求項１２】
前記反転ブロックＣ−１は、さらに、前記ブロックＣの伝達関数の逆数である伝達関数を用いて入力信号を修正することを特徴とする請求項１に記載のシステム。
【請求項１３】
前記システムの前記第１のノードは、合計ノードを備えることを特徴とする請求項１に記載のシステム。
【請求項１４】
2009510627.tif 000045
【請求項１５】
前記システムの前記第２のノードは、合計ノードを備えることを特徴とする請求項１に記載のシステム。
【請求項１６】
前記システムの前記第２のノードは、さらに、前記誤差補正の出力を所望の電圧 Ed に加えることを特徴とする請求項１に記載のシステム。
【請求項１７】
2009510627.tif 000046
【請求項１８】
前記誤差補正ブロックは、
前記誤差値に基づいて第１の積分値を出力する第１の積分器と、
前記第１の積分値に基づいて第２の積分値を出力する第２の積分器と、
前記第２の積分値に基づいて第１の増幅値を出力する第１の増幅器と、
前記第１の積分値と前記第１の増幅値とに基づいて第１のノード値を出力する第１のノードと、
前記第１のノード値に基づいて第２の増幅値を出力する第２の増幅器と
を備えることを特徴とする請求項１７に記載のシステム。
【請求項１９】
2009510627.tif 000047
【請求項２０】
前記ブロックＭは、ロボット用の関節アクチュエータを備えることを特徴とする請求項１７に記載のシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
本願は、米国特許仮出願番号第６０／７２２３３９号（出願日：２００５年９月２９日）発明の名称：「Motor and Controller Inversion: Commanding Torque to Position Controlled Robots」の優先権を主張するものであり、この出願のすべての記載をここに引用するものである。
【０００２】
本発明は、モータおよび関節コントローラのダイナミクスをキャンセルする制御方法に関する。具体的には、本発明は、ロボット製造業者が提供するモータおよび関節コントローラのダイナミクスをキャンセルする制御方法に関する。
【背景技術】
【０００３】
ロボット製造業者によってロボットにビルトインの制御方法を組み込む場合がよくあるが、このような方法では、関節位置、関節速度および微分動作を組み合わせて各関節を独立的に制御する。通常の制御方法には、ＰＩ（比例積分）、ＰＤ（比例微分）およびＰＩＤ（比例積分微分）が含まれる。
【０００４】
ロボットの関節に用いられる通常のアクチュエータとしては、永久磁石直流（ＤＣ）モータがある。ＤＣモータは、制御可能な電圧源または電流源により駆動される。ロボット製造業者によっては、ユーザがモータの電機子電流に比例する信号を用いて、所望のトルクを得られるように、間接的に指令できるようにしている。モータのトルクは電機子電流に比例するため、トルクを正確かつ直接的に制御することができる。
【発明の開示】
【発明が解決しようとする課題】
【０００５】
しかしながら、電流（つまりトルク）の指令は、特に、ロボットを新規な制御方法の開発に用いるように意図していない場合には、常に選択肢になるわけではない。このような場合、ビルトインのモータとコントローラは、ユーザにとってはブラックボックスのようなものである。これは、ユーザが位置や速度の指令を与えると、指令の実行はロボット自身の独立したビルトインの関節コントローラに任せてしまうことになる。
【０００６】
ロボット製造業者が提供する独立型の関節コントロール法は、各関節コントローラが隣接の関節に対して独立的にダイナミクスを作用させてしまい、これらの関節で摂動を生じさせるという問題がある。さらに、フィードバックゲインは予め指定された定数であるため、コントローラはペイロードの変更中にはフィードバックゲインを更新することができない。この問題は、ロボットが極めて非線形的なシステムであることに起因する。ロボットの慣性効果、関節間での相関効果および重力効果のいずれも、位置依存の項あるいは位置・速度依存の項のどちらかである。さらに、慣性荷重の項は、高速で著しく変化する。したがって、定数のフィードバックゲインを用いてロボットを制御するような独立型の関節制御法では、速度とペイロードが変化する環境ではうまく実行することができない。
【０００７】
近年、ロボット工学や制御分野では、ロボットに対するトルク指令（つまり、ロボットに対して、特定の関節アクチュエータで特定のトルクを発生させるような指令）を用いる洗練された制御方法が開発されている。残念ながら、研究者や実践者の多くは、トルク指令を受け入れないロボットを使った場合、このような制御アルゴリズムの評価試験を行うことが出来ない。
【課題を解決するための手段】
【０００８】
モータと関節コントローラのダイナミクスをキャンセルするようなシステムおよび方法を提供する。
一実施形態では、モータ・コントローラ反転（ＭＣＩ）ブロックにより、ロボットにビルトインされたコントローラとモータのダイナミクスを反転させる試みを行う。具体的には、指令トルクτcをＭＣＩブロックに入力する。ＭＣＩブロックの出力をコントローラブロックＣへフィードする。コントローラブロックＣの出力をモータブロックＭへフィードする。モータブロックＭは実際のトルクτを出力する。
【０００９】
2009510627.tif 000003
【００１０】
実際には、図示のＭＣＩブロックは、通信遅延（フィードフォワードとフィードバックの両方）、測定時のノイズおよびシステム固有のコントローラパラメータの不確かさなどの理由から、ロボットにビルトインされたモータとコントローラのダイナミクスを完璧にキャンセルすることはできない。その代わりに、よりロバストなシステムを用いる。
2009510627.tif 000004
コントローラ反転ブロックＣ−１は、コントローラＣの所望の関節角度の入力である値μを出力する。変数μはqdの呼称を変更したものであり、この変数μはもはや所望する真の関節位置でないことを強調するためであって、中間的な制御信号を示している。
【００１１】
ロバストなコントローラ反転システムの出力（μ）をコントローラブロックＣへフィードする。コントローラブロックＣは、コントローラ反転ブロックＣ−１の出力（μ）から実際の角度位置qを引くような第４の合計ノード（Σ4）と、第４の合計ノード（Σ4）の出力を入力とするＨＣ−１ブロックとを備える。コントローラブロックＣは実際の電圧Eを出力する。
【００１２】
2009510627.tif 000005
【００１３】
Ｇ（ｓ）ブロックの目的は、通信遅延が発生するとき、およびまたは、コントローラブロックＣが完全にキャンセルされないとき、に当てはまる場合にロバスト性を達成することである。完璧な条件下ではＧ（ｓ）ブロックへの入力はゼロになるため、測定値は所望の電圧Ed に等しくなる。従って、ロバストなコントローラ反転は、モデルの精度が向上するほど通信遅延が低減するように、開ループの完璧なキャンセル性を求めようとするものである。しかしながら、条件が完璧でない場合にはＧ（ｓ）ブロックへの入力はゼロではないため、Ｇ（ｓ）ブロックが補償の処理を行う。
【００１４】
本発明は事例を用いて例示するものであり、類似の要素を同じ参照番号により示した付属の図面によって限定されるものではない。
【発明を実施するための最良の形態】
【００１５】
以下の記載においては、説明の便宜上、本発明を完全に理解するために多数の具体的な詳細を記載するものである。しかしながら、当業者であれば、このような具体的な詳細を必要とせずに本発明を実施することが可能である。この他の事例では、本発明が不明瞭になることを避ける目的から、構造や装置をブロック図に示した。
【００１６】
本細書中の「一実施形態」あるいは「実施形態」という表現は、実施形態に関して記載された特定の特徴、構造あるいは特性が本発明の少なくとも１つの実施形態に含まれることを意味する。本明細書中の随所に見られる「一実施形態において」という表現は、必ずしも同じ実施形態について言及したものではない。
【００１７】
以下の詳細な記載は、アルゴリズムや、コンピュータメモリ内のデータビットで表される動作の象徴的表現によって表現される場合がある。アルゴリズム的な記述や表現は、他の当業者に仕事の実体を最も効果的に伝達するために、データ処理技術の当業者が用いる手段である。ここで言うアルゴリズムとは、一般に、所望の結果に導かれる首尾一貫した連続するステップを指す。これらのステップは、物理的な数量を物理的に取り扱うことを必要とするステップである。必ずしもではないが、通常、これらの数量は、記憶や結合、比較、あるいはこの他の処理が実行可能な電気的あるいは磁気的な信号の形態をとる。主に一般用途の理由から、これらの信号を、例えば、ビット、数値、要素、シンボル、文字、表現、数字などで表すことが利便であることが分かっている。
【００１８】
しかしながら、留意すべきは、これらの表現や類似の表現は、所定の物理的な数量に相当し、これらの数量に便宜的に付されたラベルに過ぎない。特に記載される場合を除いて、以下の説明から明らかなように、「処理する」「演算する」「算出する」「決定する」「表示する」などの表現を用いた記載は、コンピュータシステムあるいは類似する電子演算装置の動作や処理を指しており、これらのコンピュータシステムや類似の電子演算装置は、コンピュータシステムの記録部やメモリ内の物理的（電子的）な数量で表されたデータを、コンピュータシステムのメモリや記録部内の、あるいは他の情報記憶部、伝送装置あるいは表示装置などの物理的な数量として同じように表現される他のデータに変換することを意味していることは、説明全体を通じて理解されるであろう。
【００１９】
本発明は、ここに記載される動作を実施する装置にも関する。本装置は所定の目的に特化して構成されているか、あるいは、内部に記憶されたコンピュータプログラムによって選択的に起動されたり、再コンフィギュレートされるような汎用コンピュータを備える。このようなコンピュータプログラムは、以下に限定されるものではないが、例えば、フレキシブルディスク、光ディスク、ＣＤ−ＲＯＭ、光磁気ディスク、読出専用メモリ（ＲＯＭ）、ランダムアクセスメモリ（ＲＡＭ）、ＥＰＲＯＭ、ＥＥＰＲＯＭ、磁気カードあるいは光カードなどのあらゆる種類のディスク、または電子的指令の記憶に適したあらゆる種類の媒体など、コンピュータ読取可能な記憶媒体に記憶され、各々はコンピュータシステムのバスに接続される。
【００２０】
ここで言うアルゴリズムや表示は、本質的に、特定のコンピュータあるいはこの他の装置に関するものではない。各種の汎用システムをここに教示される内容に対応するプログラムと共に用いたり、より特化した装置を構成したりして、必要な方法ステップを実行する。これらの各種システムで必要となる構成は、以下の記載から明らかになるであろう。さらに、本発明の説明においては、特定のプログラミング言語を指しているわけではない。各種のプログラミング言語を用いて、ここに記載される発明の教示を実行してもよいことは理解されるであろう。
【００２１】
１．モータおよび関節コントローラのダイナミクスのキャンセルに関する概観
多くのロボットは、ビルトインされたモータと独立型関節コントローラを備えており、さらに、多くの場合で位置コマンドあるいは速度コマンドのみを受け入れて自身の関節を制御する。このようなロボットでは、トルクに基づいて関節を制御するには、ロボットにビルトインされたモータのダイナミクスと独立型関節コントローラのダイナミクスを反転（キャンセル）させることが有用である。図１は、開ループのモータとコントローラの反転を利用したシステムを図示したものである。図示のシステムには、モータ・コントローラ反転ブロックＭＣＩ、コントローラブロックＣおよびモータブロックＭが含まれる。
【００２２】
コントローラブロックＣは、製造業者によってロボットにビルトインされた独立型関節コントローラを示す。コントローラブロックＣへの入力は、所望の関節角度（qd）および実際の関節角度（q）である。
出力は、モータ（具体的にはモータの電機子）へフィードされる電圧（E）である。コントローラブロックＣは伝達関数HCを示す。Σノードは合計作業を表す。
【００２３】
2009510627.tif 000006
【００２４】
ＭＣＩブロックにおいて、ブロックＣとブロックＭがそれぞれ表している、ロボットにビルトインされたコントローラとモータのダイナミクスを反転（キャンセル）させる試みを行う。理想的なＭＣＩブロックでは、指令されたトルクτc（ＭＣＩブロックに入力されたもの）と実際のトルクτ（Ｍブロックから出力されたもの）との伝達関数が一致するように、ダイナミクスを完璧にキャンセルすることができる。
【００２５】
2009510627.tif 000007
【００２６】
2009510627.tif 000008
【００２７】
【数２】
2009510627.tif 000009
【００２８】
コントローラ反転ブロックＣ−１を設計するには、下の式２のようなラプラス表現による制御の逆方程式を用いる。
【００２９】
【数３】
2009510627.tif 000010
【００３０】
一実施形態では、HCはＰＩＤコントローラを表しており、HC-1(s)は下の式３によって求められる。
【００３１】
【数４】
2009510627.tif 000011
【００３２】
ロボットのすべての関節コントローラについてコントローラを反転させるには、下のマルチ入力、マルチ出力（MIMO）の拡張を式２に用いる。
【００３３】
【数５】
2009510627.tif 000012
【００３４】
ここで、qd、yおよびqはｎ次元のベクトルに対応する。出力yを求める下の式５および式６を解くことで式４の解を求めることができる。
【００３５】
【数６】
2009510627.tif 000013
【００３６】
2009510627.tif 000014
【００３７】
2009510627.tif 000015
【００３８】
【数７】
2009510627.tif 000016
【００３９】
一実施形態では、HMは電機子制御のＤＣモータ（付属書を参照）を表し、HM-1(s)は下の式８により求められる。
【００４０】
【数８】
2009510627.tif 000017
【００４１】
ｎ個の駆動関節を有するロボットのすべてのモータについてモータ反転を行うには、下のようなマルチ入力、マルチ出力（MIMO）の拡張を式８に用いる。
【００４２】
【数９】
2009510627.tif 000018
【００４３】
上の式９の太字で表された数量はｎ×ｎの対角行列に対応し、下の式１０の太字で表された数量はｎ×１のベクトルに対応する。図２は、本発明の一実施形態に係わる、マルチ入力・マルチ出力のシステムに関するモータ反転ブロックを図示したものである。具体的には、図２は、式９および式１０の数値を用いてマルチ入力・マルチ出力のモータ反転ブロックを設計する方法を示したものである。
【００４４】
２．ロバストなキャンセル
図１に示すシステムは、ロボットにビルトインされたモータ（モータブロックＭ）とコントローラ（コントローラブロックＣ）のダイナミクスを完璧にキャンセルする理想的なＭＣＩブロックを備える。実際には、図示のＭＣＩブロックは、通信遅延（フィードフォワードとフィードバックの両方）、測定時のノイズおよびシステム固有のコントローラ パラメータの不確かさなどの理由から、ロボットにビルトインされたモータとコントローラのダイナミクスを完璧にキャンセルすることはできない。
【００４５】
2009510627.tif 000019
【００４６】
図４は、本発明の実施形態に係わる、ロバストなコントローラ反転およびコントローラブロックを備えたシステムを図示したものである。具体的には、図４は、図３のロバストなコントローラ反転システムの後にコントローラブロックＣが続いたものを示している。ロバストなコントローラ反転システムの出力（μ）をコントローラブロックＣにフィードする。図１で説明したようなコントローラブロックＣは、コントローラ反転ブロックＣ−１の出力（μ）から実際の角度位置qを引く処理を行う第４の合計ノード（Σ4）と、この第４の合計ノード（Σ4）からの出力が入力されるＨＣ−１ブロックとを含んでいる。コントローラブロックＣは実際の電圧Eを出力する。
【００４７】
2009510627.tif 000020
【００４８】
図５は、本発明の一実施形態に係わる、フィードフォワードとフィードバックに信号遅延が存在する、ロバストなコントローラ反転システムとコントローラブロックのシステムを図示したものである。
2009510627.tif 000021
【００４９】
図６は、本発明の一実施形態に係わる、図３、図４および図５に示したＧ（ｓ）ブロックのシステムを図示したものである。図示したシステムは、４つの積算器（integn）と、４つの増幅器（ampn）と、３つの合計ノード（Σn）を備える。ラプラス形式では、積算器（または「時間積分ブロック」）は、通常、１／ｓで表される。増幅器は、通常、K*u で表されて、uは増幅器への入力であり、Kは増幅器のゲインを表す。
【００５０】
2009510627.tif 000022
【００５１】
2009510627.tif 000023
【００５２】
なお、図６に示すシステムはＧ（ｓ）ブロックの一実施形態に過ぎない。この他の実施形態では、Ｇ（ｓ）ブロックにおける積算器（integn）、増幅器（ampn）および合計ノード（Σn）の数は変化する。一実施形態では、積算器の数は、Ｇ（ｓ）ブロックへフィードした信号と、通信遅延における定常偏差の許容量に基づく。例えば、代表的なＰＩＤコントローラをキャンセルするのに、入力信号Edがステップ関数である場合には、２つ以上の積算器を用いて定常偏差をゼロにする。もし、入力信号が（ランプやパラボラなどの）高次関数の場合には、３つ以上の積算器を用いてこの定常偏差をゼロにする。
【００５３】
一実施形態では、用いる増幅器の数は用いる積算器の数に等しく、用いる合計ノードの数は用いる積算器の数よりも１つ少なくなる。別の実施形態では、Ｇ（ｓ）ブロックの伝達関数は下の式１１に等しい。
【００５４】
【数１０】
2009510627.tif 000024
【００５５】
一実施形態では、aiの値は増幅器ｉのゲインに等しくないが、直接マッピングしたものである。ゲインｉが積算されたゲインｃは an-i-1 の項に等しく、ゲインｃは an-1 に等しい。項n はＧ（ｓ）の番号を示す。一実施形態では、伝達関数のＧ（ｓ）の表記は下の式１２に等しい。
【００５６】
【数１１】
2009510627.tif 000025
【００５７】
ここで、Ｇ（ｓ）は現在n番目にある。図６に従えば、kCは増幅器ｃのゲインであり、kiは増幅器ｉのゲインである（図６では、増幅器０は、増幅器ｃあるいは「ampc」とラベル付けされる）。次に、n 番目での現実化では、Ｇ（ｓ）＝kc * [1/s + k1/s2 + k2/s3+ k3/s４ + … + kn-1/sn] になる。従って、kc= an-1; kc * k1 = an-2; kc* k2 = an-3; …; kc * kn-2 = a1; kc * kn-1 = a0 である。つまり、ゲインiにより積算したゲインｃは、an-i-1の項に等しく、ゲインｃは an-1 の項に等しい。項 n はＧ（ｓ）の番号を表す。前記は、Ｇ（ｓ）の一現実化を別の現実化へ変換するものである。Ｇ（ｓ）の現実化の物理的実装とアルゴリズム的実装とは異なる。
【００５８】
モータ（電機子）電流の測定値をフィードバックに利用可能である場合は、モータブロックＭのキャンセルは、コントローラブロックＣのキャンセルの仕方に類似する。あるいは、フィードバックが利用可能でない場合には、モータブロックＭのキャンセルを開ループでのキャンセルのままとすることもできる。状況によっては、モータブロックＭのキャンセルは必要でない場合もある。
【００５９】
2009510627.tif 000026
【００６０】
別の実施形態では、モータブロックＭは、モータの補正作業で用いる追加的な電子機器を備える。例えば、ブッシュレスのＤＣモータであれば電気的に切り替えを行い、従来のＤＣモータであれば自身で切り替えを行う。従って、モータの巻線に正確に電流を流すために高速の電子機器が用いられ、これらの電子機器がコントローラブロックＣの電子機器に付加される。ブッシュレスのモータとこれに関連する電子機器は、トルク入力に追従して特定の動作条件下で正確に作動するように設定されている。したがって、このような動作条件下でのモータブロックＭのキャンセルは妥当でない可能性もある。
【００６１】
３．外ループ制御（Outer Loop Control）
前記の通り、多くのロボットにビルトインされた線的な独立型関節コントローラは、各関節を隣接の関節に対して独立的に制御するため、好ましくない効果をもたらす。関節間のダイナミクスを結合することを考慮して、ロボットの関節を制御するように設計された進歩的な制御技術が多数存在する。
【００６２】
図７は、本発明の一実施形態に係わる、外ループコントローラ（Outer Loop Controller）が、位置指令のみを受け入れるように設計されたロボットに対してトルクを指令するシステムを図示したものである。図７には、コントローラブロックＣＯＬと、その後に図１のシステム、プラントブロックＲおよび時間積分ブロック１／ｓが続くのを示したものである。コントローラブロックＣＯＬは代替的な外ループ制御の手段であって、位置や速度に基づく代わりに、トルクに基づいてロボットを制御するものである。
2009510627.tif 000027
【００６３】
2009510627.tif 000028
【００６４】
2009510627.tif 000029
【００６５】
【数１２】
2009510627.tif 000030
【００６６】
ここで、Mはｎ×ｎの関節空間の慣性行列であり、Bは遠心項およびコリオリ項についてのｎ×１のベクトルであり、Gは重力項についてのｎ×１のベクトルを表し、τは関節トルクについてのｎ×１のベクトルを表す。
【００６７】
ロボットのモータとコントローラのダイナミクスを分離、線形化するための計算トルク制御則（τC）は下の式により与えられる。
【００６８】
【数１３】
2009510627.tif 000031
ここで、
【００６９】
【数１４】
2009510627.tif 000032
【００７０】
KPは正の定符号の対角の位置ゲイン行列を表し、KVは正の定符号の対角の速度ゲイン行列を表す。
【００７１】
４．追加な実施形態
本発明は、特定の実施形態を参照しつつ詳細に説明したが、この他の実施形態が可能であることは当業者であれば理解するであろう。
【００７２】
［付属書］モータとコントローラのダイナミクス
【００７３】
例えば、単一の関節ロボットのアームを用いて、永久磁石ＤＣモータとＰＩＤコントローラを導くことができる。まず、モータのダイナミクスを考慮する。永久磁石モータでは、電流が電機子を流れるとコイルが回転するように、ワイヤコイル（つまり電機子）を永久磁石の磁場に配置する。電機子制御のＤＣモータ用のアクチュエータのダイナミクスを下の式１６により記述する。
【００７４】
【数１５】
2009510627.tif 000033
【００７５】
2009510627.tif 000034
【００７６】
モータシャフトで生成されるトルクは電機子の電流に比例する。
【００７７】
【数１６】
2009510627.tif 000035
【００７８】
ここで、Ktはモータ・トルクの比例定数を表す。式１７を式１６に代入して、ラプラス変換を求め、モータにより生成されるトルクは下の式１８のように表される。
【００７９】
【数１７】
2009510627.tif 000036
ここでHMは下の式１９により定義される。
【００８０】
【数１８】
2009510627.tif 000037
【００８１】
モータシャフトで生成されたトルクτは、モータが出力したトルクτmとロボット（つまりモータシャフト）に作用するトルクτLとの合計に等しい。
【００８２】
2009510627.tif 000038
【００８３】
2009510627.tif 000039
【００８４】
図８のシステムは、独立型の関節位置コントローラによる代表的な制御を示すものである。このようなコントローラの目的は、関節の実際の角変位（q）が所望の角変位（qd）を追従するように、モータ（モータブロックＭ）をサーボ制御することにある。図９は、本発明の一実施形態に係わるロボットを制御するために用いられる閉ループのフィードバックの代表的な構成を示すものである。ここで、図９には、後に図８のシステムが続くようなコントローラブロックＣが含まれる。
【００８５】
コントローラブロックＣは、所望の関節角度（qd）と実際の関節角度（q）の２つの入力を受ける。コントローラブロックＣは電圧（E）を出力し、これをモータブロックＭ（つまりモータの電機子）にフィードする。コントローラブロックＣは伝達関数 HCを呈する。Σノードは合計作業を表す。
【００８６】
2009510627.tif 000040
【００８７】
【数１９】
2009510627.tif 000041
【００８８】
ここで、KPは比例フィードバックのゲイン定数を表し、KIは積分フィードバックのゲイン定数を表し、KVは微分フィードバックのゲイン定数を表す。
【００８９】
前記の式２０から続いて、印加電圧Eは下の式２１により求められる。
【００９０】
【数２０】
2009510627.tif 000042
【００９１】
式２１は、図９に図示されるシステムの閉ループの位置制御でのコントローラブロックＣを記述するものである。
【００９２】
上記の通り、プラントブロックＲは単一の出力および単一の入力のシステムであると想定したが、実際には、このような想定は真ではなく、ある関節のダイナミクスは、他の関節のダイナミクスと作用し合う。１つの関節に及ぼすコリオリ力と重力の影響は、ロボット全体の構成に応じて変化するため、独立的に作動する関節コントローラを用いて適切に処理することは不可能である。したがって、新しい外ループコントローラの必要性は、前記に説明した通りである。
【図面の簡単な説明】
【００９３】
【図１】本発明の一実施形態に係わる、開ループのモータとコントローラの反転を利用したシステムを図示したものである。
【図２】本発明の一実施形態に係わる、マルチ入力・マルチ出力のシステムに関するモータ反転ブロックを図示したものである。
【図３】本発明の一実施形態に係わるロバストなコントローラの反転システムを図示したものである。
【図４】本発明の実施形態に係わる、ロバストなコントローラ反転のシステムおよびコントローラブロックを図示したものである。
【図５】本発明の一実施形態に係わる、フィードフォワードとフィードバックに信号遅延が存在する、ロバストなコントローラ反転システムとコントローラブロックのシステムを図示したものである。
【図６】本発明の一実施形態に係わる図３、図４および図５に示したＧ（ｓ）ブロックのシステムを図示したものである。
【図７】本発明の一実施形態に係わる、外ループコントローラが、位置指令のみを受け入れるように設計されたロボットに対してトルクを指令するシステムを図示したものである。
【図８】本発明の一実施形態に係わる、モータとロボットの代表的な開ループの入出力変換の特性を図示したものである。
【図９】本発明の一実施形態に係わるロボット制御に用いられる閉ループのフィードバックの代表的な構成を示すものである。
【図１】
2009510627.tif 000049
【図２】
2009510627.tif 000050
【図３】
2009510627.tif 000051
【図４】
2009510627.tif 000052
【図５】
2009510627.tif 000053
【図６】
2009510627.tif 000054
【図７】
2009510627.tif 000055
【図８】
2009510627.tif 000056
【図９】
2009510627.tif 000057
【手続補正書】
【提出日】平成20年5月2日(2008.5.2)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
2009510627.tif 000058
【請求項２】
前記誤差補正ブロックは、
前記誤差値に基づいて第１の積分値を出力する第１の積分器と、
前記第１の積分値に基づいて第２の積分値を出力する第２の積分器と、
前記第２の積分値に基づいて第１の増幅値を出力する第１の増幅器と、
前記第１の積分値と前記第１の増幅値とに基づいて第１のノード値を出力する第１のノードと、
前記第１のノード値に基づいて第２の増幅値を出力する第２の増幅器と
を備えることを特徴とする請求項１に記載のシステム。
【請求項３】
前記誤差補正ブロックの前記第１のノードは、さらに、前記第１の積分値と第１の増幅値を加えることを特徴とする請求項２に記載のシステム。
【請求項４】
前記誤差補正ブロックの前記第１のノードは、合計ノードを備えることを特徴とする請求項２に記載のシステム。
【請求項５】
前記誤差補正ブロックは、
前記第２の積分値に基づいて第３の積分値を出力する第３の積分器と、
前記第３の積分値に基づいて第３の増幅値を出力する第３の増幅器と、
前記第２の増幅値と前記第１の増幅値とに基づいて第２のノード値を出力する第２のノードとをさらに備え、
前記第１のノードは、さらに、前記第１の積分値と前記第２のノード値に基づいて前記第１のノード値を出力する
ことを特徴とする請求項２に記載のシステム。
【請求項６】
前記誤差補正ブロックの前記第１のノードは、さらに、前記第１の積分値と前記第２のノート値を加えることを特徴とする請求項５に記載のシステム。
【請求項７】
前記誤差補正ブロックの前記第１のノードは、合計ノードを備えることを特徴とする請求項５に記載のシステム。
【請求項８】
前記誤差補正ブロックの伝達関数は式１１に等しいことを特徴とする請求項１に記載のシステム。
【数１】
2009510627.tif 000059
【請求項９】
前記ブロックＣは、コントローラを備えることを特徴とする請求項１に記載のシステム。
【請求項１０】
前記ブロックＣは、ロボット用の関節コントローラを備えることを特徴とする請求項１に記載のシステム。
【請求項１１】
前記ブロックＣは、ロボット用の独立型関節コントローラを備えることを特徴とする請求項１に記載のシステム。
【請求項１２】
前記反転ブロックＣ−１は、さらに、前記ブロックＣの伝達関数の逆数である伝達関数を用いて入力信号を修正することを特徴とする請求項１に記載のシステム。
【請求項１３】
前記システムの前記第１のノードは、合計ノードを備えることを特徴とする請求項１に記載のシステム。
【請求項１４】
2009510627.tif 000060
【請求項１５】
前記システムの前記第２のノードは、合計ノードを備えることを特徴とする請求項１に記載のシステム。
【請求項１６】
前記システムの前記第２のノードは、さらに、前記誤差補正の出力を所望の電圧 Ed に加えることを特徴とする請求項１に記載のシステム。
【請求項１７】
2009510627.tif 000061
【請求項１８】
前記誤差補正ブロックは、
前記誤差値に基づいて第１の積分値を出力する第１の積分器と、
前記第１の積分値に基づいて第２の積分値を出力する第２の積分器と、
前記第２の積分値に基づいて第１の増幅値を出力する第１の増幅器と、
前記第１の積分値と前記第１の増幅値とに基づいて第１のノード値を出力する第１のノードと、
前記第１のノード値に基づいて第２の増幅値を出力する第２の増幅器と
を備えることを特徴とする請求項１７に記載のシステム。
【請求項１９】
2009510627.tif 000062
【請求項２０】
前記ブロックＭは、ロボット用の関節アクチュエータを備えることを特徴とする請求項１７に記載のシステム。
【手続補正２】
【補正対象書類名】明細書
【補正対象項目名】００４６
【補正方法】変更
【補正の内容】
【００４６】
図４は、本発明の実施形態に係わる、ロバストなコントローラ反転およびコントローラブロックを備えたシステムを図示したものである。具体的には、図４は、図３のロバストなコントローラ反転システムの後にコントローラブロックＣが続いたものを示している。ロバストなコントローラ反転システムの出力（μ）をコントローラブロックＣにフィードする。図１で説明したようなコントローラブロックＣは、コントローラ反転ブロックＣ−１の出力（μ）から実際の角度位置qを引く処理を行う第４の合計ノード（Σ4）と、この第４の合計ノード（Σ4）からの出力が入力されるＨＣブロックとを含んでいる。
コントローラブロックＣは実際の電圧Eを出力する。
【手続補正３】
【補正対象書類名】明細書
【補正対象項目名】００４８
【補正方法】変更
【補正の内容】
【００４８】
図５は、本発明の一実施形態に係わる、フィードフォワードとフィードバックに信号遅延が存在する、ロバストなコントロール反転システムとコントロールブロックのシステムを図示したものである。
2009510627.tif 000063
【国際調査報告】
2009510627.tif 000064