(57)【特許請求の範囲】
【請求項１】
複数の関節を含むロボットの運動を制御するロボット制御システムであって、
前記ロボットの先端の位置、姿勢、力制御値、およびモーメント制御値についての目標値を取得する手段と、
取得した目標位置および目標姿勢を読出し、前記目標位置に対して切換え行列を適用して力を反映させた仮想目標位置を取得すると共に、前記目標姿勢に対して切換え行列を適用し、姿勢の直交座標成分ごとに分離してモーメントを反映させた仮想目標姿勢を取得する手段と、
取得した前記力制御値および前記モーメント制御値を読出し、運動の干渉および制御入力の干渉を自由空間と拘束空間との間の行列要素に関して、運動の干渉を排除する制御ケース、制御入力の干渉を排除する制御ケースとして構成した制御ポリシーに基づいて力・モーメントと位置・姿勢との間における再帰的計算を排除してハイブリッド制御に基づき力・モーメントを制御する手段と、
前記仮想目標位置および前記仮想目標姿勢から逆運動学計算により計算された前記関節の角度変化および前記力・モーメントの変化量に基づいて前記ロボットに対する制御信号を生成する手段と、
前記ロボットの関節角、前記力および前記モーメントの変化量をフィードバックして前記仮想目標位置、前記仮想目標姿勢の生成を線形計算に帰着させる手段と
を含むロボット制御システム。
【請求項２】
前記力・モーメントを制御する手段は、前記ロボットの位置、姿勢、力、モーメント制御を前記ロボットの先端の加速度値を使用して前記ロボットの先端の運動を制御するための力およびモーメントを生成する手段を含む、請求項１に記載のロボット制御システム。
【請求項３】
前記力およびモーメントを生成する手段は、前記制御ポリシーに応じて、力・モーメントと位置・姿勢との間の非線形性に基づく再帰計算による干渉を排除するように、前記ハイブリッド制御の演算項目を切換える、請求項１または２に記載のロボット制御システム。
【請求項４】
前記力・モーメントを制御する手段は、外部センサからの摩擦力を前記ハイブリッド制御に反映する、請求項１〜３のいずれか１項に記載のロボット制御システム。
【請求項５】
複数の関節を含むロボットの運動を制御するロボット制御方法であって、
前記ロボットの先端の位置、姿勢、力制御値、およびモーメント制御値についての目標値を設定するステップと、
設定された目標位置および目標姿勢を読出し、前記目標位置に対して切換え行列を適用して力を反映させた仮想目標位置を取得すると共に、前記目標姿勢に対して切換え行列を適用し、姿勢の直交座標成分ごとに分離してモーメントを反映させた仮想目標姿勢を取得するステップと、
取得した前記力制御値および前記モーメント制御値を読出し、運動の干渉および制御入力の干渉を自由空間と拘束空間との間の行列要素に関して、運動の干渉を排除する制御ケース、制御入力の干渉を排除する制御ケースとした制御ポリシーに基づいて力・モーメントと位置・姿勢との間における再帰的計算を排除してハイブリッド制御に基づき力・モーメントを制御するステップと、
前記仮想目標位置および前記仮想目標姿勢から逆運動学計算により計算された前記関節の角度変化および前記力・モーメントの変化量に基づいて前記ロボットに対する制御信号を生成するステップと、
前記ロボットの関節角、前記力および前記モーメントの変化量をフィードバックして前記仮想目標位置、前記仮想目標姿勢の生成を線形計算に帰着させるステップと
を含むロボット制御方法。
【請求項６】
前記力・モーメントを制御するステップは、前記ロボットの位置、姿勢、力、モーメント制御を前記ロボットの先端の加速度値を使用して前記ロボットの先端の運動を制御するための力およびモーメントを生成するステップを含む、請求項５に記載のロボット制御方法。
【請求項７】
前記力およびモーメントを生成するステップは、前記制御ポリシーに応じて、力・モーメントと位置・姿勢との間の非線形性に基づく再帰計算による干渉を排除するように、前記ハイブリッド制御の演算項目を異ならせるステップを含む、請求項５または６に記載のロボット制御方法。
【請求項８】
前記力・モーメントを制御するステップは、外部センサからの摩擦力を前記ハイブリッド制御に反映して前記力およびモーメントを生成するステップを含む、請求項５〜７のいずれか１項に記載のロボット制御方法。
【請求項９】
複数の関節を含むロボットの運動を制御するための制御装置であって、
ロボットの先端の位置、姿勢、力制御値、およびモーメント制御値についての目標値を取得して格納する目標値格納部と、
前記目標値格納部から目標位置および目標姿勢を読出し、前記目標位置に対して切換え行列を適用して力を反映させた仮想目標位置を取得すると共に、前記目標姿勢に対して切換え行列を適用し、姿勢の直交座標成分ごとに分離してモーメントを反映させた仮想目標姿勢を取得する位置姿勢制御部と、
前記目標値格納部から前記力制御値および前記モーメント制御値を読出し、運動の干渉および制御入力の干渉を自由空間と拘束空間との間の行列要素に関して、運動の干渉を排除する制御ケース、制御入力の干渉を排除する制御ケースとした制御ポリシーに基づいて力・モーメントと位置・姿勢との間における再帰的計算を排除してハイブリッド制御に基づき力・モーメントを制御する力・モーメント制御部と、
前記仮想目標位置および前記仮想目標姿勢から逆運動学計算により計算された前記関節の角度変化および前記力・モーメントの変化量に基づいて前記ロボットに対する制御信号を生成する制御出力統合部と
を含む、制御装置。
【請求項１０】
さらに、前記ロボットの関節角、前記力および前記モーメントの変化量をフィードバックして前記仮想目標位置、前記仮想目標姿勢、力、およびモーメントの生成を線形計算に帰着させるインタフェース部を含む、請求項９に記載の制御装置。
【請求項１１】
前記力・モーメント制御部は、前記ロボットの位置、姿勢、力、モーメント制御を前記ロボットの先端の加速度値を使用して前記ロボットの先端の運動を制御するための力およびモーメントを生成する、請求項９または１０に記載のロボット制御システム。
【請求項１２】
前記力・モーメント制御部は、前記制御ポリシーに応じて、力・モーメントと位置・姿勢との間の非線形性に基づく再帰計算による干渉を排除するように、前記ハイブリッド制御の演算項目が異なるアルゴリズムを管理する、請求項９〜１１のいずれか１項に記載の制御装置。
【請求項１３】
前記力・モーメントを制御する手段は、外部センサからの摩擦力を前記ハイブリッド制御に反映する、請求項９〜１２のいずれか１項に記載の制御装置。
【請求項１４】
前記制御装置は、前記ロボットに対する制御信号を生成する情報処理装置または集積回路である、請求項９〜１３のいずれか１項に記載の制御装置。
【請求項１５】
複数の関節を含むロボットの運動を制御するための制御装置が実行する装置実行可能なプログラムであって、前記プログラムは、前記制御装置を、
ロボットの先端の位置、姿勢、力制御値、およびモーメント制御値についての目標値を取得して格納する目標値格納手段、
前記目標値格納手段から目標位置および目標姿勢を読出し、前記目標位置に対して切換え行列を適用して力を反映させた仮想目標位置を取得すると共に、前記目標姿勢に対して切換え行列を適用し、姿勢の直交座標成分ごとに分離してモーメントを反映させた仮想目標姿勢を取得する位置姿勢制御手段、
前記目標値格納手段から前記力制御値および前記モーメント制御値を読出し、運動の干渉および制御入力の干渉を自由空間と拘束空間との間で、運動の干渉を排除する制御ケース、制御入力の干渉を排除する制御ケースとした制御ポリシーに基づいて力・モーメントと位置・姿勢との間における再帰的計算を排除してハイブリッド制御に基づき力・モーメントを制御する手段と、
運動の干渉および制御入力の干渉の方向を分離した制御ケースとして構成した制御ポリシーに基づいて力・モーメントと位置・姿勢との間における再帰的計算を排除してハイブリッド制御に基づき力・モーメントを制御する力モーメント制御手段、
前記仮想目標位置および前記仮想目標姿勢から逆運動学計算により計算された前記関節の角度変化および前記力・モーメントの変化量に基づいて前記ロボットに対する制御信号を生成する制御出力統合手段
として機能させ、
前記力・モーメント制御手段は、前記ロボットの位置、姿勢、力、モーメント制御を前記ロボットの先端の加速度値を使用して前記ロボットの先端の運動を制御するための力およびモーメントを生成する、プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ロボット制御技術に関し、より詳細には、物体との接触状態にあるロボットを制御する技術に関する。
【背景技術】
【０００２】
従来、ロボットアームなどの関節を含むロボットの力制御システムは、ロボットの手先や足先といた先端部の位置と、力とを制御し、運動を緩衝するためにインピーダンス制御を導入するか、または位置および力を同時に制御するハイブリッド制御のいずれかを使用している。インピーダンス制御は、ロボット手先と、物体との間の接触剛性、粘性、またはロボットアーム自体の慣性を制御パラメータとして、ステップモータやサーボモータの運動をコントロールすることにより、摩擦力などロボットアームに加えられる外力と、速度との関係を制御する方式である。
【０００３】
一方、位置および力のハイブリッド制御は、拘束空間で力制御、自由空間において位置制御を行い、ロボット手先の座標軸方向に、力および位置をフィードバックすることによって、所望する接触力およびロボット手先の運動制御を実現する方式である。
【０００４】
上述した二つの制御方式を利用してロボットアームを充分に制御することは可能である。しかしながら、摩擦力や慣性力など、ロボットアームの運動に抗して作用する外力による慣性系への外乱の存在下で、ロボットアームの手先に加えられる力や位置を制御する際に、自由空間における制御変数と拘束空間における制御変数との分離性が充分ではなかった。
【０００５】
このため、ロボットアームの運動が高速化すると、滑り摩擦力が大きくなった一方，自由空間における制御入力・運動と拘束空間における制御入力・運動との干渉が非常に大きくなって、制御系の安定性が保ってなくなり、動作が不安定になるという問題があり、ロボットアームの高速動作制御に問題があった。以下、本明細書においては、工具とワークの間の滑り摩擦の除去、自由空間と拘束空間における制御入力と運動の非干渉化として参照する。
【０００６】
さらに、近年、作業の高速化および低コスト化などの観点から、産業ロボットによる加工が適用される工程も広範囲化し、研磨、研削、バリ取り、組み立てなど、点接触や線接触や面接触などロボットアームの手先環境が変化する状態で接触作業を行うことも必要とされている。このため、ロボットアームの手先に加わる外力が予測不能に変化する可能性がある場合にでも、高速にかつ充分な精度で手先の位置、姿勢、力およびモーメントを制御することが必要とされてきている。この状況下で、従来の制御方式を適用すると、手先の位置と力しか制御できない、点接触作業に対応できるが、線接触や面接触産業に対応できない。
【０００７】
従来、ロボットアームの制御を行う技術は知られており、例えば、特開２００８−３０２４９６号公報（特許文献１）では、ロボットアームの制御装置であって、人接近検知手段が人の接近を検知した時に、人運動検出手段の検出した人の運動に基づいてロボットアームの各関節部ごとに個別にインピーダンスを設定することで、人とロボットアームの衝突に対応する衝突対応動作御手段で制御する、制御装置が記載されている。また、特開２００５−２３８４２１号公報（特許文献２）では、腕の不自然な動きや滑り落ちを防止して動作を補助できるようなロボットおよびインピーダンス制御ロボットシステムが記載されている。
【０００８】
また、特開２００１−０３８６６４号公報（特許文献３）では、外力計測用センサ情報から各関節に加わるトルクを分離する手段によりトルクを分離し、設定された関節部仮想インピーダンスからアーム関節部の逃げ量を算出する関節変位算出部と、外力計測用センサ情報から手先部に加わる力を分離し、設定された手先部仮想インピーダンスからアーム手先部の逃げ量を算出する手先変位算出部を有し、両部の変位算出量を加算装置で加算してアームの逃げ量を算出し、サーボコントローラによりモータを駆動制御するインピーダンス制御装置が記載されている。
【０００９】
さらに、本発明者は、特開２００８−０３６７４２号公報（特許文献４）において、ロボットアームの姿勢計算において高い収束性を与え、ひいてはロボットアームの位置制御性を改善する新規な逆運動学計算方法を提案している。
【００１０】
さらに、M. H. Raibert and J. J. Craig: Hybrid Position/Force Control of Robot Manipulators, ASME Journal of Dynamic
Systems, Measurement and Control, Vol.103, No.2, pp.126-133, 1981.（非特許文献１）では、位置制御と力制御とを同一のアルゴリズムを使用し、位置制御を行う場合と、力制御を行う場合の変数を切り換えるためのスイッチング行列を導入するハイブリッド制御方式が提案されている。また、H. Hogan: Impedance Control; An Approach to Manipulator, Parts I-III, ASME Journal
of Dynamic Systems, Measurement, and Control, Vol.107, No.1, pp.1-24, 1985（非特許文献２）には、マニュピレータの制御にインピーダンス状態Ｚｓ（＊）およびアドミッタンス状態Ｙｓ（＊）を導入し、位置ｚおよび力ｆの関数としてインピーダンスを加味するマニュピュレータ制御が記載されている。
【先行技術文献】
【特許文献】
【００１１】
【特許文献１】特開２００８−３０２４９６号公報
【特許文献２】特開２００５−２３８４２１号公報
【特許文献３】特開２００１−０３８６６４号公報
【特許文献４】特開２００８−０３６７４２号公報
【非特許文献】
【００１２】
【非特許文献１】M. H. Raibert and J. J. Craig:Hybrid Position/Force Control of Robot Manipulators, ASME Journal of Dynamic Systems,Measurement and Control, Vol.103, No.2, pp.126-133, 1981
【非特許文献２】H. Hogan: Impedance Control;An Approach to Manipulator, Parts I-III, ASME Journal of Dynamic Systems,Measurement, and Control, Vol.107, No.1, pp.1-24, 1985
【発明の概要】
【発明が解決しようとする課題】
【００１３】
以上のように、自由空間における外力検出を拘束空間における制御に反映する際に、ハイブリッド制御またはインピーダンス制御を併用する方式は、これまで知られている。しかしながら、従来技術は、自由空間における力・位置認識を拘束空間における制御に反映させる際に、自由空間と拘束空間との間の干渉性、特に制御入力や運動の間の非干渉性を改善することを解決課題とするものではない。さらに従来技術は、位置、姿勢、力およびモーメントという４つの制御変数を同時に考慮してロボットアームの制御を高速化、ひいてはロボットアームの高速高精度動作を改善することを課題とするものではない。
【００１４】
すなわち、本発明は、上記従来技術の問題点に着目してなされたものであり、本発明は、産業ロボットなどのロボットアームに対し、点接触、線接触、または面接触といったすべての接触状態に対応して柔軟に対応した制御を行うことを可能とするロボットアームの制御技術を提供することを課題とする。さらに本発明は、滑り摩擦や慣性力などの外力の影響を除去し、自由空間と、拘束空間との間の非干渉化を行うことで、高速高精度なロボットアーム接触作業に適用する位置、姿勢、力及びモーメントの制御技術を提供することを目的とする。
【課題を解決するための手段】
【００１５】
本発明は、上記従来技術の問題点に鑑みてなされたものであり、本発明によれば、
複数の関節を含むロボットの運動を制御するロボット制御システムであって、
前記ロボットのワークの位置、姿勢、力制御値、およびモーメント制御値についての目標値を取得する手段と、
取得した目標位置および目標姿勢を読出し、前記目標位置に対して切換え行列を適用して力を反映させた仮想目標位置を取得すると共に、前記目標姿勢に対して切換え行列を適用し、姿勢の直交座標成分ごとに分離してモーメントを反映させた仮想目標姿勢を取得する手段と、
取得した前記力制御値および前記モーメント制御値を読出し、設定された制御ポリシーに基づいて力・モーメントと位置・姿勢との間における再帰的計算を排除してハイブリッド制御に基づき力・モーメントを制御する手段と、
前記仮想目標位置および前記仮想目標姿勢から逆運動学計算により計算された前記関節の角度変化および前記力・モーメントの変化量に基づいて前記ロボットに対する制御信号を生成する手段と、
前記ロボットの関節角、前記力および前記モーメントの変化量を前記仮想目標位置、前記仮想目標姿勢、力、およびモーメントの計算に対し線形的にフィードバックする手段と
を含むロボット制御システムが提供される。
【００１６】
本発明の前記力・モーメントを制御する手段は、前記ロボットの位置、姿勢、力、モーメント制御を前記ロボットのワークの加速度値を使用して前記ロボットのワークの運動を制御するための力およびモーメントを生成する手段を含むことができる。
【００１７】
本発明の前記力およびモーメントを生成する手段は、前記制御ポリシーに応じて、力・モーメントと位置・姿勢との間の非線形性に基づく再帰計算による干渉を排除するように、前記ハイブリッド制御の演算項目を切換えることができる。
【００１８】
本発明の前記力・モーメントを制御する手段は、外部センサからの摩擦力を前記ハイブリッド制御に反映することができる。
【００１９】
さらに本発明は、上記機能を提供するロボット制御方法、ロボット制御装置、およびプログラムを提供することができる。
【発明の効果】
【００２０】
本発明によれば、高速高精度な接触作業に適し、産業用ロボットの作業性を著しく改善する産業用ロボットが提供できる。また、本発明は、ロボットアームばかりではなく、脚式ロボットの脚と、地面との接触制御にも適用でき、福祉ロボット、レスキュー用ロボット、農作業ロボット、閉鎖空間内のメンテナンス用ロボットなどの多分野における適用が可能なロボット制御システム、ロボット制御方法およびプログラムを提供することができる。
【図面の簡単な説明】
【００２１】
【図１】本実施形態のロボットアーム１００の構成を示した図。
【図２】ロボット運動学における逆運動学計算の定式化を説明した図。
【図３】拘束空間での各姿勢成分の分離のために使用する変数分離関係を示した図。
【図４】本実施形態で、上記式（９）から再帰演算を伴わずにロボットアーム１００についての力制御を行うために除外する演算項目を決定する制御ポリシーを示した図。
【図５】本実施形態のロボット制御を行うための制御装置５００の実施形態を示した図。
【図６】本実施形態のロボット制御システム６００の実施形態を示した図。
【図７】本実施形態のロボット制御方法のフローチャートを示した図。
【図８】本実施形態のロボット制御方法により動作制御されたロボットアーム８００の動作特性を示した図。
【図９】従来のハイブリッド制御を使用したロボット制御方法により動作制御されたロボットアーム９００の動作特性を示した図。
【発明を実施するための形態】
【００２２】
図１には、一例とする本実施形態のRPY型ロボットアーム１００の構成を示してあるが、本発明はRPY型以外のすべて構造のロボットアームにも適用できるという高い汎用性を持っている。図１（ａ）は、６自由度のロボットアーム１００の機械的構成を示した図であり、図１（ｂ）は、ロボットアーム１００の関節構成を抽象化して示した関節モデル図である。図１（ａ）に示すように、ロボットアーム１００は、RPY型の６自由度ロボットアームとして構成されており、固定部１１２の上に第１関節１１４を介して設置されている。第１関節１１４からは、アーム１２８が第２関節１１６へと延びている。第２関節１１６からは、アーム１３０が第３関節１１８まで延びている。
【００２３】
さらに第３関節１１８からアーム１３２を介して第４関節１２０まで延びている。そして、第２関節１１６および第３関節１１８は、アーム１２８、１３０の軸に直交する方向に回転軸を有する曲げ関節リンクとされており、第１関節１１４および第４関節１２０は、アーム１３２の軸を中心とする回転軸を有する、捻り関節リンクとして形成されている。第４関節１２０からは、さらにアーム１３４が第５関節１２２まで延びており、第５関節１２２からアーム１３６が第６関節１２４まで延びている。第６関節１２４の先端には、アーム１３８を介して手先１２６が配設されていて、ロボットアーム１００による種々の処理を可能としている。
【００２４】
ロボットアーム１００の先端部に配設された手先１２６は、本実施形態においては物体に接触する機能を有するという意味において、ワークとして参照される機能を有しており、以下、本実施形態では、物体に接触するように制御されるという観点から用語「手先」として参照する。手先１２６は、本実施形態にしたがい自由空間において、物体に対して所定の位置および姿勢を有するようにロボット制御システム（図示せず）により制御され、物体と接触して各種動作を行う。
【００２５】
本実施形態において、自由空間とは、ロボットアーム１００が設置される実験室系の座標軸セットにより記述される。また拘束空間とは、ロボットアーム１００上に定義される座標軸系によって定義される空間であり、本実施形態では、制御目的の観点から、ロボットアーム１００の手先１２６の適切な位置を原点とする直交座標系で記述される。自由空間と、拘束空間の間の座標軸変換は、姿勢行列Ｒで定義され、Ｒは、以下の関係で、自由空間の座標軸に関する位置（Ｘｆ，Ｙｆ，Ｚｆ）、回転θａｆ（ａ＝ｘ，ｙ，ｚ）、拘束空間の座標軸に関する位置（Ｘｐ，Ｙｐ，Ｚｐ）、回転θａ（ａ＝ｘ，ｙ，ｚ）とは、下記式（１）で与えられる関係で変換される。
【００２６】
【数１】
0005569953.tif 000002
【００２７】
図１（ａ）に示したロボットアーム１００は、図１（ｂ）に示すように各関節リンクの運動を、円柱座標で記述することができ、手先の位置および姿勢を、ロール(roll)角、ピッチ(pitch)角、ヨー(yaw)角の変数を使用して定義されている。なお、図１に示したロボットアーム１００は、ＰＵＭＡ型のロボットアームに比較して面接触作業に対して効率的に運動する機構となっている。
【００２８】
なお、図１（ｂ）では、各関節の回転軸周りの回転角を、θｉ（ｉ＝１、...、６）として示している。また、上記式（１）で与えられた手先１２６について定義される拘束空間として参照する手先固定系について定義された座標軸系の基底ベクトルＸｐ、Ｙｐ、Ｚｐおよび基底ベクトル回りの回転角の定義を示す。
【００２９】
上記定義に基づき、手先１２６と、物体との間の位置および姿勢制御は、自由空間において定義される変数系を使用して実行され、手先１２６と物体との間の力およびモーメント制御は、拘束空間において定義された変数系を使用して実行される。なお、図１に示すRPY型のロボットアーム１００と、ＰＵＭＡ型の６自由度ロボットアームとは、第４関節１２０、第５関節１２２および第６関節１２４が、円柱座標系で記述される点で相違するが、変数型を適切に定義することにより、本実施形態の制御を適用することができることはいうまでもない。
【００３０】
以下、図１に示したロボットアーム１００の運動制御における数値解析上の定式化を行う。まず、RPY型ロボットアームの３次元空間内における位置および配置を下記式（２）および下記式（３）で定式化する。
【００３１】
【数２】
0005569953.tif 000003
【００３２】
【数３】
0005569953.tif 000004
【００３３】
上記式（２）および（３）中、Ｐｘ，Ｐｙ，Ｐｚは、自由空間で定義される手先位置であり、φｘ，φｙ，φｚは、手先の目標姿勢であり、ロボットアーム１００の手先の位置および姿勢は、ベクトル（Ｐｘ，Ｐｙ，Ｐｚ，φｘ，φｙ，φｚ）で与えられる。また、Λθは、手先の慣性行列、Λθ−１は、慣性行列の逆行列であり、θｉ（ｉ＝１，...，６）は、関節角である。また、図２は、上記式（２）および（３）の行列計算をベクトル成分および行列成分として表現した図である。
【００３４】
ロボットアーム１００の制御装置は、手先の目標姿勢が入力または設定されると、ロボットアーム１００の制御装置は、関節を回動させる値を計算し、ロボットアーム１００のステップモータまたはサーボモータを目標とする速度および変化量で駆動するための制御信号を各駆動要素へと伝送して駆動することにより、ロボットアーム１００の手先１２６を、目標位置および目標姿勢に移動させる。
【００３５】
この目的のため、ロボットアーム１００の目標姿勢および目標位置が自由空間の座標および姿勢として設定された場合、当該目標姿勢および目標位置を与えるための関節角θｉを計算することが必要となる。このような計算は、いわゆる逆運動学として知られており、逆運動学では、上記式（２）として定式化した関係で与えられるベクトル(Ｐｘ,Ｐｙ,Ｐｚ,φｘ，φｙ，φｚ)から、関節角のベクトル(θ1,θ2,θ3,θ4,θ5,θ6)を求める問題に帰着される。すなわち、逆運動学は、一般的には、ロボットアーム１００の手先の慣性行列Λθの逆行列（Λθ）−１を数値的に求め、Newton-Raphson法により連立微分方程式を解く問題に帰着される。なお、逆運動学において関節角をスケーラビリティを保証しながら効率的に計算する方法は、特許文献４に記載されているのでこれ以上詳細には説明しない。
【００３６】
なお、上記式（２）および（３）中、Ｐｘ，Ｐｙ，Ｐｚ，φｘ、φｙ，φｚは、いずれも自由空間で定義された変数であり、手先１２６を物体に対して力／モーメント制御する際には、手先１２６に拘束された拘束空間で定義される変数系を使用する。このため、上記式（２）および（３）で示された行列式を解く場合、自由空間および拘束空間で定義される変数が計算処理において相互に非線形的関係で干渉し、計算処理が複雑化する。図２には、逆運動学計算を行う場合の定式化を示す。さらに、ハイブリッド制御を導入し、姿勢および力を統合したアルゴリズムで処理しようとする場合、自由空間および拘束空間での姿勢を与える変数および力を与える変数が相互に干渉することになり、処理の高速化・高精度化がさらに困難となる。
【００３７】
そこで、本実施形態では、図２および上記式（２）および（３）で示された関係に対して、位置と力、姿勢とモーメントのそれぞれの演算を分離するための切換え行列Ｓｐ、Ｓｏ、Ｓｆ、Ｓｍを導入する。各切換え行列は、Ｘ，Ｙ，Ｚ軸に対応する対角要素を１を有する単位ベクトルを要素行列とする３×３行列であり、計算の対象とするべき値を切換えて演算するために利用する。各切換え行列Ｓｐ、Ｓｏ、Ｓｆ、Ｓｍを導入することに対応して、位置および姿勢に対してそれぞれ力およびモーメントが影響を与える項目を分離することで、下記式（４）および（５）の仮想目標位置および仮想目標姿勢を定義する。
【００３８】
【数４】
0005569953.tif 000005
【００３９】
【数５】
0005569953.tif 000006
【００４０】
上記式（４）および（５）中、ｈａｔｐｒｅｆ、ｈａｔφｒｅｆは、仮想目標位置および仮想目標姿勢であり、ｐｒｅｆおよびφｒｅｆは、目標位置および目標姿勢の演算項目であり、ｐおよびφは、それぞれ位置および姿勢の変化量であり、力およびモーメントに影響を与える演算項目である。さらに、Ｓｐ、Ｓｆ、Ｓｏ、Ｓｍがそれぞれ位置、力、姿勢、モーメントの切換行列である。上記式（４）および（５）を使用して位置、姿勢、力、モーメントの相互干渉をそれぞれ対応する形式で分離して制御可能に定式化する。
【００４１】
上記式（５）の定式化に出現するΓ（φｒｅｆ）およびΓ（φ）は、位置、姿勢、力、モーメントの影響を分離するために、位置変化および角度変化の小さいものとして姿勢成分を、それぞれの座標軸成分に分離して姿勢を計算し、姿勢ベクトルとして統合し、逆運動学計算に投入する。拘束空間での各姿勢成分の分離は、具体的には、図３で示される関係で与えられ、力およびモーメント計算は姿勢成分ごとに分離して実行される。以下、この処理を、姿勢成分分離処理として参照する。姿勢成分分離処理は、仮想目標姿勢について自由空間に固定された座標軸系から手先１２６に固定された座標軸系にそれぞれの成分に対応付けながら変換し、逆運動学による関節角の計算を可能としている。なお、図３中、ＲおよびＲｒｅｆは、それぞれ位置ｐおよび姿勢φについて適用されると同一の意味を有する。
【００４２】
仮想目標位置および仮想目標姿勢を計算した後、仮想目標位置ベクトルおよび仮想目標姿勢ベクトルを結合して図２および下記式（６）で示されるように、逆運動学による関節角の計算を実行する。
【００４３】
【数６】
0005569953.tif 000007
【００４４】
以下、本実施形態によるハイブリッド制御を定式化する。下記式（７）は、ハイブリッド制御の本質的な定式化を示す。
【００４５】
【数７】
0005569953.tif 000008
【００４６】
上記式（７）を参照すれば、ハイブリッド制御においては、同一式内に、制御入力：直交座標（拘束空間）および位置・姿勢といった運動：直交座標（自由空間）の演算項目を含み、これらは相互に異なる座標軸系に帰属される変数系でありながら非線形的に関連する。本実施形態では、自由空間および拘束空間における相互の変数が再帰的に影響を与えることを干渉として参照し、自由空間および拘束空間における相互の変数の間の干渉を最小化するように、ロボットアーム１００のハイブリッド運動方程式および機械系の運動方程式を確立することを、自由空間と拘束空間との非緩衝化として参照する。
【００４７】
またロボットアーム１００の運動は、コリオリ力Hや非復元性の力である摩擦力Ｆｄを含む運動方程式（８）で記述することができる。
【００４８】
【数８】
0005569953.tif 000009
【００４９】
上記式（８）において、摩擦力が、常時同一の値であると仮定できる用途の場合には、制御定数として以後の制御演算から除外することもできるが、ワーク、すなわち手先と物体の接触に柔軟に対応させるためには、摩擦力などをセンサ入力する必要があるため、制御定数として除外することは適切ではない。
【００５０】
上述した定式化の下で、ハイブリッド制御を行うため、上記式（８）を上記式（７）に代入すると、下記式（９）が得られる。
【００５１】
【数９】
0005569953.tif 000010
【００５２】
上記式（９）は、自由空間および拘束空間の両変数を共に含む定式化であり、目標とする力制御値と現在の力との差分にスイッチング行列を乗算したタームと、手先の加速度値に慣性行列を乗じたタームとを含むように定式化する。一方、逆運動学を計算する場合の行列式の逆行列計算は、６×６の行列計算を含み、Newton-Raphson法を使用する反復計算であることから、ハイブリッド制御として上記式（９）をそのまま逆運動学計算に導入すると、さらに計算時間の増大や、収束性のスケーラビリティが低下し、その結果、動作安定性自体が低下したり、運動速度増加に伴いフィードバック制御との関係でワークに振動が生じたりする。
【００５３】
そこで、本実施形態では、自由空間および拘束空間の両方について双方向の再帰演算を除き、ハイブリッド制御演算を、自由空間←→拘束空間のいずれか一方向への演算だけに制限することにより、逆運動学に投入するべき数値変数の非線形演算を高速でスケーラビリティのある演算に置き換えて、ロボットアーム１００の運動制御を行う。
【００５４】
図４は、本実施形態で、上記式（９）から再帰演算を伴わずにロボットアーム１００についての力制御を行うために除外する演算項目を決定する制御ポリシーを示す。図４には、制御ポリシー４００およびロボットアーム１００の変数定義空間である自由空間と拘束空間との間の再帰演算の関係ダイアグラム４１０を示している。以下、図４を使用して再帰演算を除くことによる非干渉化の具体的な処理を概略的に説明する。ハイブリッド制御を行う観点では、再帰演算するべき数値変数は、位置および姿勢に関連する座標値などで指定される運動および力・モーメント制御のための制御入力があり、それぞれ自由空間と拘束空間との間で非線形関係にあるため、再帰的な計算が必要とされる。
【００５５】
自由空間と拘束空間との間の変数間の関係を完全に除外することは、ハイブリッド制御の効果を得ることはできないので、上記式（９）を運動および力・モーメントそれぞれについて、再帰演算を不要とするように一方の空間の変数セットから他方の空間の変数セットを生成するだけで上記式（９）を近似できるように制御ポリシー４００を分類することが必要である。上述したいずれか一方の関係を保存しながら近似する観点では、運動の干渉、制御入力の干渉の双方向の影響について、いずれか一方のみに限定することで、図４の制御ポリシー４００で示される制御ポリシーに関する４制御ケースが与えられる。
【００５６】
これらの４制御ケースは、上記式（９）に基づいて下記式（１０）のように導出することができる。
【００５７】
【数１０】
0005569953.tif 000011
【００５８】
上記式（１０）で与えられる制御ポリシーは、ロボットアーム１００またはさらにロボットシステムのコントローラにおいて、切換え設定可能な関数として登録され、ロボットアーム１００、ロボットなどの動作およびユーザ要求に対応して適宜外部設定または自動的に関数を切換えて制御に反映することができる。
【００５９】
図５は、本実施形態のロボット制御を行うための制御装置５００の実施形態を示す。本実施形態の制御装置５００は、特定の用途に対応した大規模集積回路（ＬＳＩ）としても実装することができるし、パーソナルコンピュータなどの中央処理装置（ＣＰＵ）が、アセンブラ、C、C++などのプログラミング言語を実行して、図５の機能を提供する機能処理部を情報処理上に構成させ、各種インタフェースおよびモータドライバを介して時間依存の関節角、力、モーメントの出力を行わせている。図５に示した制御装置５００をＬＳＩとして実装する場合、図５中、破線で示した領域内の機能モジュールを半導体素子から構成することが好ましい。
【００６０】
より詳細に制御装置５００の構成を説明すると、制御装置５００は、適切なインタフェース（図示せず）を介して目標位置ｐｒｅｆ、目標姿勢φｒｅｆ、ｆｒｅｆ、ｍｒｅｆを取得する。目標位置ｐｒｅｆは、加減算部５０２において関節角制御のフィードバックと減算処理された後、切換え行列設定部５０４に送付されて、切替え行列が乗算され、さらに加算部５２２に送られて、位置の変化分ｐが加算されｈａｔｐｒｅｆが生成される。生成されたｈａｔｐｒｅｆは、逆運動学計算部５２４に送付される。なお、添え字「ｈａｔ」は、仮想目標位置または仮想目標姿勢を文章上で表現するために使用する。
【００６１】
一方、目標姿勢φｒｅｆは、姿勢成分分離部５０６に送られて手先に固定された座標軸系での姿勢成分が姿勢成分に分解された後、加減算部５０８に送られて姿勢成分分離部５３４からのフィードバック成分が減算された後、切換え行列設定部５１０に送られて切換え行列が乗算され、乗算結果に対して姿勢成分分離部５３４からの変化量φが加算部５１２において加算されて、ｈａｔφｒｅｆが生成される。生成されたｈａｔφｒｅｆは、姿勢統合部５３０に入力されて分離された成分ごとの処理結果を統合して自由空間で定義された仮想目標姿勢ベクトルとされて、逆運動学計算部５２４に入力される。
【００６２】
逆運動学計算部５２４は、仮想目標位置ベクトルと仮想目標姿勢ベクトルとを統合して逆運動学計算を実行し、関節角の値を計算する。なお、本実施形態では、逆運動学の計算を実行する際に、特許文献４で記載したように３×３の部分行列に分解して位置および姿勢を独立に計算させてもよい。計算された関節角の値は、位置／姿勢制御部５３２に送付されて、単位時間あたりの移動量に変換された後、加算部５３６に送付される。
【００６３】
さらに、力・モーメント制御入力について説明する。目標とする力の大きさｆｒｅｆは、加減算部５１４に入力され、力出力値ｍｔと減算された後、切換え行列設定部５１６に入力されＳｆが乗算された後、力制御部５４０に入力される。力制御部５４０は、本実施形態により、制御ポリシーにしたがって力制御を行い、その出力を力変化量変換部５４２に入力する。また、目標とするモーメントは、加減算部５１８に入力され、モーメント出力値ｍｆが減算された後、切換え行列設定部５２０に入力され切換え行列が乗算され、乗算結果がモーメント変化量制御部５４４に入力される。
【００６４】
各変化量変換部５４２、５４６の出力は、加算器５３６に入力され、モータを実回転させるための駆動パルスに変換された後、ロボットアーム１００のモータ制御部５３８に送られ、モータ駆動を介して関節角の制御およびそれに対応する力・モーメント制御が実行される。ロボットアーム１００の各出力値は、それぞれ対応する加減算部５０２、５０８、５１４、５１８にフィードバック制御されて目標位置・目標姿勢に収束する位置・姿勢・力制御が可能とされている。なお、図５の破線のブロックは、ＬＳＩとして実装することができる機能ブロックを示す。なお、図５の制御装置をＬＳＩとして実装する場合、特定の目的に応じてさらに複数の集積回路として構成することができる。
【００６５】
図６は、本実施形態のロボット制御システム６００の実施形態を示す。図６に示したロボット制御システム６００は、パーソナルコンピュータやワークステーションといった制御装置６２０と、モータドライバ６４０と、ロボット６５０とを含んで構成されている。制御装置６２０は、説明する実施形態では、パーソナルコンピュータとして実装されており、PCI、CompactPCI、PCI-Expressなどのインタフェー部６３８を介してモータドライバ列６４０に制御装置６２０が生成した位置・姿勢・力制御信号を送付している。モータドライバ６４０は、受領した制御信号を受領して駆動パルス列を生成し、ロボット６５０の各関節のパルスモータまたはサーボモータを駆動している。
【００６６】
制御装置６２０は、図示する実施形態では、外部接続されたディスプレイ装置６１０、キーボード６１２、マウス６１４などの入出力装置を使用して各種条件の設定および動作開始・終了が制御されている。なお、他の実施形態で、ロボット６５０が、ロボットアーム１００のように固定式でなく、車両、歩行ロボットなど自己移動式の場合、制御装置６２０のインタフェース部６３８は、IEEE802.x、BLUETOOTH（登録商標）、ワイヤレスUSB、その他の無線周波数帯域を利用するワイヤレス通信を介してモータドライバ６４０およびロボット６５０に接続されてもよい。
【００６７】
さらに他の実施形態では、制御装置６２０を、図５に説明した機能を有するＬＳＩを搭載するモバイル装置として実装し、モータドライバ６４０とともにロボット６５０に搭載することも可能である。制御装置６２０を、パーソナルコンピュータとして実装する場合、パーソナルコンピュータは、PENTIUM（登録商標）、XEON（登録商標）、CELERON（登録商標）、PENTIUM（登録商標）互換チップなど、CISCアーキテクチャのマイクロプロセッサ、または、POWERPC（登録商標）などのRISCアーキテクチャのマイクロプロセッサを、シングルコアまたはマルチコアの形態で実装することができる。
【００６８】
また、制御装置６２０は、WINDOWS（登録商標）、UNIX（登録商標）、LINUX（登録商標）などのオペレーティング・システムにより制御することができ、適宜アセンブラ、C、C++、JAVA（登録商標）、PERL、RUBYなどのプログラミング言語を使用して記述される制御プログラムをRAMなどの実行空間に展開してプログラムの実行により、本実施形態のハイブリッド制御を行うための各機能処理部をソフトウェア的に構成させている。また、本実施形態のハイブリッド制御を行う制御装置がＬＳＩとして構成される場合、当該ＬＳＩに対して制御情報を送付する上位コンピュータとしての機能処理部を提供する。
【００６９】
制御装置６２０は、必要に応じて適宜Internet Explorer（登録商標）、Mozilla（登録商標）、Opera（登録商標）、FireFox（登録商標）などのブラウザ・ソフトウェアを実装し、ネットワークを介した外部通信が可能とされている。
【００７０】
以下、制御装置６２０の機能処理部について説明する。制御装置６２０は、内部バスにより各機能部が相互接続されていて、データおよびコマンドの送受信を行っている。制御装置６２０は、より詳細には、入出力インタフェース６２２と、切換え行列計算部部６２４と、目標値格納部６２６を含んで構成されている。入出力インタフェース部６２２は、USB(Universal Serial Buss)、VGA、ワイヤレスUSBなどのバスおよびバスインタフェースを含む入出力インタフェースとして構成され、キーボード６１２、マウス６１４、ディスプレイ装置６１０を介して設定された制御ポリシー、目標位置、目標姿勢、目標力・モーメントを受領して、制御装置６２０への設定を可能としている。
【００７１】
目標値格納部６２６は、設定された目標位置、目標姿勢、目標力・モーメントを格納し、切換え行列計算部６２４に各目標値を渡す。切換え行列計算部６２４は、切換え行列の乗算およびハイブリッド制御のための切換え行列の要素設定を行い、各値を、位置姿勢制御部６２８、力・モーメント制御部６３０に渡して処理を指令する。
【００７２】
また、ポリシー選択部６３２は、オペレータの指令により指定された制御ポリシーを入出力インタフェース部６２２を介して受領し、位置姿勢制御部６２８、力・モーメント制御部６３０による制御処理を管理する。位置姿勢制御部６２８は、本実施形態にしたがい仮想目標位置および仮想目標姿勢の計算を実行し、その出力を制御出力統合部６３４に渡す。また、力・モーメント制御部６３０は、本実施形態にしたがい改善されたハイブリッド制御方法を適用して力・モーメントの制御値を計算し、計算結果を制御出力統合部６３４に送付する。
【００７３】
制御出力統合部６３４は、位置姿勢制御部６２８および力・モーメント制御部６３０の演算出力結果を受領し、位置、姿勢、力、モーメントを生成するための単位時間あたりの制御量を与える制御信号を生成する。制御信号は、インタフェース部６３８を介してモータドライバ列６４０に送付され、関節を構成するサーボモータなどに送付するべき駆動パルスとしてロボット６５０の関節を駆動させている。
【００７４】
また、インタフェース部６３８は、例えば、ロボット６５０が搭載するロータリエンコーダ、摩擦センサ、加速度センサなどの各センサ出力をフィードバックとして受領して、制御装置６２０に対してロボット６５０の現在の状態を通知し、フィードバック制御を可能とする。また、インタフェース部６３８は、ロボット６５０をPCIデバイスとして認識し、ロボット６５０の現在の状態や、力出力状態、モーメント発生状態などを、例えばディスプレイ装置６１０に標示させることもできる。なお、図６中、破線の矩形枠５５０で示された各機能部は、図５に説明した機能部を有するＡＳＩＣ(Application Specified Integrated Circuit)としても実装することができる。また、上述したように、制御装置６２０、モータドライバ６４０はロボット６５０が搭載することもできるし、制御装置６２０とモータドライバ６４０との間を無線制御とすることもできる。
【００７５】
図７は、本実施形態のロボット制御方法のフローチャートを示す。図７の処理は、ステップＳ７００で開始し、ステップＳ７０１でオペレータによる入力に基づいて手先の目標位置および目標姿勢を取得する。ステップＳ７０２では、手先の力およびモーメントの目標値を取得する。ステップＳ７０３では、制御ポリシーを取得し、切換え行列Ｓｐ、Ｓｏ、Ｓｆ、Ｓｍを設定し、仮想目標位置、仮想目標姿勢を計算する。
【００７６】
その後、ステップＳ７０４では、仮想目標位置および仮想目標姿勢を合成し、逆運動学手法により各関節角の値を計算する。ステップＳ７０５では、ハイブリッド制御に使用するスイッチング行列を切換え行列に対応する要素を設定しながら、設定した制御ポリシーで与えられる計算式の関数を呼び出しながら力およびモーメントを計算し、位置、姿勢、力、モーメントの変化量として制御出力統合部６３４に渡して制御信号を生成し、目的の関節角となるようにモータドライバ６４０に送付して、モータを制御する。
【００７７】
ステップＳ７０６では、現在の手先位置、姿勢、力、モーメントを、それぞれ位置、姿勢、力、モーメントの計算にフィードバックさせ、ステップＳ７０７では、ロボットアーム１００の手先位置および手先姿勢が、目標位置に達したか否かを判断する。目的位置・目的姿勢に達していない場合（ｎｏ）、処理をステップＳ７０２に戻して、制御を反復させる。また、目標位置・目標姿勢に達したと判断した場合（ｙｅｓ）、制御をステップＳ７０８に渡し、制御終了か否かを判断し、手先の位置、姿勢、力、モーメントを制御しながら、ステップＳ７０７までの処理を反復させる。
【００７８】
ステップＳ７０８における制御終了の判断は、ロボット制御の目的に応じて、目標位置および目標姿勢に達したこと、目標位置および目標姿勢を順次更新して所定回数または所定時間の運動を生成させたこと、または外部からの明示的な終了指令があったことなどに基づいて判断することができる。ステップＳ７０８で制御終了と判断した場合（ｙｅｓ）、ステップＳ７０９でロボット制御処理を終了する。また、ステップＳ７０８で制御終了と判断しない場合（ｎｏ）処理をステップＳ７０１に戻し、新たな制御目標に向かってロボット制御を開始する。
【００７９】
以上の処理により、ロボットアーム１００は、目標とする位置および姿勢へと設定された力およびモーメントで運動するように制御される。本実施形態のロボット制御方法では、位置および姿勢といった自由空間で定義されるべき変数について力およびモーメントに関連するタームを姿勢成分分離手法を導入して分離し、さらに、ハイブリッド制御における位置、姿勢、力、モーメントの計算において自由空間と拘束空間との間の再帰的計算を制御ポリシーに基づいてそれぞれ一方向だけに限定することにより、ハイブリッド計算における冗長計算を効率的に分離することを可能とする。この結果、ハイブリッド制御演算の力およびモーメント演算の結果が、より高速に位置および姿勢制御に反映でき、より高速高精度のロボット制御が可能となる。
【実施例】
【００８０】
図８および図９を使用して本実施形態のロボット制御方法により動作制御されたロボットアームの動作特性を説明する。図８は、本実施形態のロボット制御方法により動作制御されたロボットアーム８００の動作特性を示した図である。なお、図８および図９とも、制御入力の変動およびモーメントの変動については手先の慣性主軸Ｍｘ、Ｍｙ、Ｍｚ方向の値に分解して示している。また、制御ポリシーとしては、図４のケース１を使用した。
【００８１】
図８（ａ）は、図８（ｃ）に示した構成を有するロボットアーム８００を動作制御した場合の制御入力の時間的変動を示し、図８（ｂ）は、モーメントの時間的変動を示したものである。ロボットアーム８００は、図８（ｃ）に示すように、６関節のRPY型ロボットアームとして構成されており、手先にホワイトボード消し８２０を装着して、ホワイトボード８１０の文字を、ホワイトボード８１０の面にホワイトボード消しを密着させながらホワイトボード８１０の法線方向に直交する向きになぞる動作を行う。ホワイトボード８１０とホワイトボード消し８２０との間の摩擦力については、接触面が変動しない実施例のため、予めセンサにて測定し、一定の値に固定してロボット制御を行った。
【００８２】
図８（ａ）および図８（ｂ）に示すように、本実施形態のロボット制御方法によれば、横移動速度を０．２ｍ／ｓとした場合にでも、制御入力に対する異常なフィードバックが発生せず、この結果としてモーメントについても充分に安定して制御されていることが示されている。さらに、図８の実施例において横移動速度を１ｍ／ｓまで増加させて制御／応答における異常振動の発生をシミュレーションしたところ、制御入力に対する異常なフィードバックは生成されず、その結果、モーメントも安定して制御されることがわかった。すなわち、図８に示した本実施形態のロボットアーム８００は、アクチュエータの入出力制限がなければ速度の増加にかかわらず、安定した動作制御を行うことができる。
【００８３】
図９は、従来のハイブリッド制御方法を使用して図８と同様の動作を行わせた場合の、動作特性を示す。図８と同様に、図９（ａ）は、制御入力の時間的変化を示し、図９（ｂ）はモーメントの時間的変化を示し、図９（ｃ）に、ロボットアーム９００のホワイトボード消し９２０と、ホワイトボード９１０との位置関係を示す。図９に示す実施形態では、図８で良好な動作を示した横移動速度０．２ｍ／ｓまで横移動速度を増加させると、図９（ａ）に示すように制御入力への異常なフィードバックが発生し、これに対応して図９（ｂ）に示すようにモーメントも不安定に振動することが見出された。
【００８４】
図９（ａ）および図９（ｂ）に示した制御入力における振動が発生すると、ワークとして機能するホワイトボード消し９２０は、ホワイトボード９１０の面に密着せず、図９（ｃ）のようにホワイトボード９１０の面に対して角度δの角度となるように振動する。この結果、ホワイトボード消し９２０には、制御不能な力が加えられてしまい、良好な動作が得られなくなった。図８および図９に示した実施例の結果を下記表１にまとめる。
【００８５】
【表１】
0005569953.tif 000012
【００８６】
すなわち、本発明では、ロボット手先と環境の接触剛性，粘性また慣性を制御することによって接触力と速度の関係を示すインピーダンス制御方式、拘束空間の力・モーメントの制御と自由空間の位置・姿勢の制御を軸方向に振り分けることによって所望の接触力やモーメントと動きを制御するハイブリッド制御方式に加え、滑り摩擦力による外乱に対応でき、さらに自由空間に定義される変数系と拘束空間に定義される変数系とにまたがる制御演算の再帰性を制限することにより自由空間の制御力・運動と拘束空間の制御力・運動とを非干渉化させることが可能となり、ハイブリッド制御の有効性を最大限に利用しながら、点接触、線接触、面接触のすべての接触作業に対応でき、さらに動作速度および外力の変動などに柔軟に対応可能な高速高精度なロボットの接触作業の制御技術を提供することが可能となる。
【００８７】
本発明によれば、特に産業用ロボットに対して高速高精度な接触作業を実現できるので作業効率を大幅にアップでき、産業用ロボットの作業性を著しく改善することができる。また、本発明は、ロボットアームばかりではなく、脚式ロボットの脚と、地面との接触制御にも適用できるため、福祉ロボット、レスキュー用ロボット、農作業ロボット、閉鎖空間内のメンテナンス用ロボットなどの多分野における適用が可能である。
【符号の説明】
【００８８】
１００…ロボットアーム、１１２…固定部、１１４…第１関節、１１６…第２関節、１１８…第３関節、１２０…第４関節、１２２…第５関節、１２４…第６関節、１２６…手先、１２８、１３０、１３２、１３４、１３６、１３８…アーム、４００…制御ポリシー、４１０…関係ダイアグラム、５００…制御装置、５０２…加減算部、５０４…切換え行列設定部、５０６…姿勢成分分離部、５０８…加減算部、…５１０…行列設定部、５１２…加算部、５１４…加減算部、５１６…切換え行列設定部、５１８…加減算部、５２０…切換え行列設定部、５２２…加算部、５２４…逆運動学計算部、５３０…姿勢統合部、５３２…位置／姿勢制御部、５３４…姿勢成分分離部、５３６…加算部、５３８…モータ制御部、５４０…力制御部、５４２…力変化量変換部、５４４…モーメント変化量制御部、５４６…モーメント変化量変換部、６００…ロボット制御システム、６１０…ディスプレイ装置、６１２…キーボード、６１４…マウス、６２０…制御装置、６２２…入出力インタフェース、６２４…切換え行列計算部、６２６…目標値格納部、６２８…位置姿勢制御部、６３０…力・モーメント制御部、６３２…ポリシー選択部、６３４…制御出力統合部、６３８…インタフェース部、６４０…モータドライバ列、６５０…ロボット
【図１】
0005569953.tif 000013
【図２】
0005569953.tif 000014
【図３】
0005569953.tif 000015
【図４】
0005569953.tif 000016
【図５】
0005569953.tif 000017
【図６】
0005569953.tif 000018
【図７】
0005569953.tif 000019
【図８】
0005569953.tif 000020
【図９】
0005569953.tif 000021