JP4947073B2 - ロボット装置及びその制御方法 - Google Patents

ロボット装置及びその制御方法 Download PDF

Info

Publication number
JP4947073B2
JP4947073B2 JP2009058334A JP2009058334A JP4947073B2 JP 4947073 B2 JP4947073 B2 JP 4947073B2 JP 2009058334 A JP2009058334 A JP 2009058334A JP 2009058334 A JP2009058334 A JP 2009058334A JP 4947073 B2 JP4947073 B2 JP 4947073B2
Authority
JP
Japan
Prior art keywords
axis
evaluation function
robot
actuator
minimum value
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP2009058334A
Other languages
English (en)
Other versions
JP2010207986A (ja
Inventor
玄 安藤
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Toyota Motor Corp
Original Assignee
Toyota Motor Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Toyota Motor Corp filed Critical Toyota Motor Corp
Priority to JP2009058334A priority Critical patent/JP4947073B2/ja
Priority to EP10710438.2A priority patent/EP2406041B1/en
Priority to PCT/IB2010/000574 priority patent/WO2010103399A1/en
Priority to CN201080011887.4A priority patent/CN102348541B/zh
Priority to US13/255,775 priority patent/US8818559B2/en
Publication of JP2010207986A publication Critical patent/JP2010207986A/ja
Application granted granted Critical
Publication of JP4947073B2 publication Critical patent/JP4947073B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/06Programme-controlled manipulators characterised by multi-articulated arms
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1628Programme controls characterised by the control loop
    • B25J9/1643Programme controls characterised by the control loop redundant control
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1628Programme controls characterised by the control loop
    • B25J9/1633Programme controls characterised by the control loop compliant, force, torque control, e.g. combined with position control
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1656Programme controls characterised by programming, planning systems for manipulators
    • B25J9/1664Programme controls characterised by programming, planning systems for manipulators characterised by motion, path, trajectory planning
    • B25J9/1666Avoiding collision or forbidden zones
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1602Programme controls characterised by the control system, structure, architecture
    • B25J9/1607Calculation of inertia, jacobian matrixes and inverses
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1615Programme controls characterised by special kind of manipulator, e.g. planar, scara, gantry, cantilever, space, closed chain, passive/active joints and tendon driven manipulators
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/39Robotics, robotics to robotics hand
    • G05B2219/39217Keep constant orientation of handled object while moving manipulator
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/40Robotics, robotics mapping to robotics vision
    • G05B2219/40343Optimize local torque
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/40Robotics, robotics mapping to robotics vision
    • G05B2219/40359Constraint, physical limitations

Description

本発明は、複数の関節を有するロボット機構と、ロボット機構の関節軸を駆動する複数のアクチュエータと、を備えるロボット装置及びその制御方法に関し、特に、消費電力量を抑制しつつ、柔軟に所望動作を実行できるロボット装置及びその制御方法に関するものである。
近年、人と共生するロボット装置において、その消費電力量の増加に伴い、バッテリ充電を頻繁に行わなければならいという事態が生じている。また、周囲の人、物等と接触した場合でも、柔軟かつ安全に接触しつつ、さらに、所望動作を実行しなければならないという技術的課題を有している。このように、ロボット装置において、その消費電力量を抑制しつつ、柔軟に所望動作を実行できるロボット制御が要求されている。
一方で、行動指令情報に基づいて算出された、次の行動に遷移するための姿勢遷移計画に、ロボットの各関節軸の位置を追従させるように制御するロボット装置が知られている(例えば、特許文献1参照)。また、ロボットが認識している座標系に関連した柔らかさの尺度の指定により、サーボ制御系の制御ゲインを変更し、ロボットの各軸を制御するロボット制御装置が知られている(例えば、特許文献2参照)。
WO00/43167号 特許3283650号公報
しかしながら、上記特許文献1に示すロボット装置においては、例えば、ユーザからの動作指令が必要以上にロボットの各関節軸の動作を拘束してしまい、その結果として、消費電力量が増加し、周囲の障害物と柔軟に接触できなくなる虞がある。同様に、上記特許文献2に示すロボット制御装置においても、ロボットの各軸の動作を拘束していまい、その結果として、消費電力量が増加し、また、周囲の障害物と接触した場合に、動作指令を満足した動作が実行できない虞がある。
本発明は、このような問題点を解決するためになされたものであり、消費電力量を抑制しつつ、柔軟に所望動作を実行できるロボット装置及びその制御方法を提供することを主たる目的とする。
上記目的を達成するための本発明の一態様は、複数の関節を有するロボット機構と、前記ロボット機構の関節軸を駆動する複数のアクチュエータと、を備えるロボット装置であって、前記アクチュエータに対するトルク指令の2乗の和の関数である評価関数に基づいて、前記アクチュエータの駆動を制御するロボット制御装置と、前記ロボット機構の所望動作を表し、前記ロボット機構の各関節軸の従属関係式である動作目標を生成する動作目標生成器と、を備え、前記ロボット制御装置は、前記評価関数の最小値を算出するための評価関数最小値演算部を有し、前記評価関数最小値演算部により算出される前記評価関数の値が最小となるように、前記アクチュエータの駆動を制御しており、前記評価関数最小値演算部は、前記動作目標生成器により生成された前記動作目標において、前記ロボット機構の複数の関節軸を、前記動作目標の従属関係式において独立変数として表わされる独立軸と、該独立軸に従動し前記従属関係式において従属変数として表わされ、前記独立軸より応答が速い従属軸と、に分類し、前記独立軸の回転位置のみを変数とした前記評価関数の最小値を算出する、ことを特徴とするロボット装置である。この一態様によれば、消費電力量を抑制しつつ、柔軟に所望動作を実行できる。また、評価関数の値が最小値となり、消費電力量を最小に抑制することができる。さらに、独立軸及び従属軸に応じた柔軟な制御が可能となり、消費電力量を抑制しつつ、周囲の障害物と接触した場合でも、柔軟かつ安全に接触することができる。
この一態様において、前記ロボット機構の動作環境を検出する動作環境検出器を更に備え、前記評価関数最小値演算部は、前記動作環境検出器により検出された前記動作環境と、前記動作目標生成器により生成された前記動作目標と、に基づいて、前記評価関数の最小値を算出してもよい。これにより、ロボット機構の動作環境及び動作目標を考慮して、評価関数の最小値を算出することができる。
この一態様において、前記動作環境検出器は、例えば、前記ロボット機構の周辺環境による前記関節軸の可動範囲と、前記関節軸の限界可動範囲と、を満足する拘束条件を、前記動作環境として検出してもよい。これにより、ロボット機構の拘束条件を適切に設定することができる。
この一態様において、前記関節軸の回転位置を検出する位置検出センサを更に備え、前記評価関数最小値演算部は、前記評価関数が最小値となるときの前記独立軸の回転位置を独立軸位置指令値として算出し、前記ロボット制御装置は、前記位置検出センサにより検出された前記独立軸の回転位置が前記評価関数最小値演算部により算出された前記独立軸位置指令値に収束するような、独立軸トルク指令値を算出する軸別フィードバック制御部を更に有していてもよい。これにより、独立軸を制御するための独立軸トルク指令値を算出でき、独立軸を適切に制御することができる。
この一態様において、前記ロボット制御装置は、前記複数のアクチュエータの相対的な重要度を示すアクチュエータ別重みを算出するアクチュエータ別重み演算部を更に有し、前記軸別フィードバック制御部は、前記アクチュエータ別重み演算部により算出された前記アクチュエータ別重みに比例して、前記独立軸に対する制御ゲインを算出し、該算出した制御ゲインを用いて、前記独立軸トルク指令値を算出する独立軸制御部を有していてもよい。これにより、独立軸の重要度に応じた最適な制御ゲインを設定することができ、独立軸を最適に制御できる。
この一態様において、前記軸別フィードバック制御部は、前記位置検出センサにより検出された前記従属軸の回転位置と、動作目標生成器により生成された前記動作目標と、に基づいて、従属軸位置指令値を算出する従属軸位置指令生成部と、前記アクチュエータ別重み演算部により算出された前記アクチュエータ別重みに比例して、前記従属軸に対する制御ゲインを算出し、該算出した制御ゲインを用いて、前記従属軸トルク指令値を算出する従属軸制御部と、を更に有していてもよい。これにより、従属軸の重要度に応じた最適な制御ゲインを設定でき、従属軸を最適に制御できる。
この一態様において、前記ロボット制御装置は、前記独立軸制御部により算出された前記独立軸トルク指令値、又は、前記従属軸制御部により算出された前記従属軸トルク指令値、に基づいて、前記アクチュエータを制御するトルク制御部を更に有していてもよい。また、この一態様において、前記評価関数は、前記アクチュエータに対するトルク指令値の2乗の和であってもよい。
この一態様において、前記評価関数最小値演算部は、前記評価関数の最小値を数値探索法により算出してもよい。例えば、複雑なロボット機構に対して、評価関数の最小値をより適切に算出することができる。
この一態様において、前記評価関数最小値演算部は、前記評価関数の極値、および評価関数の所定区間における端の値、のうち最小となる値を、前記評価関数の最小値としてもよい。これにより、簡易な処理で評価関数の最小値を算出することができる。また、この一態様において、前記評価関数最小値演算部は、乱数によって選択した初期パラメータの周囲で最も小さい値をとる点を前記評価関数の最小値の候補としてもよい。これにより、簡易な処理で評価関数の最小値を算出することができる。
他方、上記目的を達成するための本発明の一態様は、複数の関節を有するロボット機構と、前記ロボット機構の関節軸を駆動する複数のアクチュエータと、を備えるロボット装置の制御方法であって、前記アクチュエータに対するトルク指令の2乗の和の関数である評価関数に基づいて、前記アクチュエータの駆動を柔軟に制御するロボット制御工程を含み、前記ロボット制御工程は、前記評価関数の最小値を算出するための評価関数最小値演算工程を含み、前記ロボット制御工程において、前記評価関数最小値演算工程で算出される前記評価関数の値が最小となるように、前記アクチュエータの駆動を制御し、前記ロボット機構の所望動作を表し、前記ロボット機構の各関節軸の従属関係式である動作目標を生成する動作目標生成工程を更に含み、前記評価関数最小値演算工程において、前記動作目標生成工程で生成された前記動作目標において、前記ロボット機構の複数の関節軸を、前記動作目標の従属関係式において独立変数として表わされる独立軸と、該独立軸に従動し前記従属関係式において従属変数として表わされ、前記独立軸より応答が速い従属軸と、に分類し、前記独立軸の回転位置のみを変数とした前記評価関数の最小値を算出する、ことを特徴とするロボット装置の制御方法であってもよい。この一態様によれば、消費電力量を抑制しつつ、柔軟に所望動作を実行できる。
この一態様において、前記ロボット機構の動作環境を検出する動作環境検出工程を更に含み、前記評価関数最小値演算工程において、前記動作環境検出工程で検出された前記動作環境と、前記動作目標生成工程で生成された前記動作目標と、に基づいて、前記評価関数の最小値を算出してもよい。
この一態様において、前記関節軸の回転位置を検出する位置検出工程を更に含み、前記評価関数最小値演算工程において、前記評価関数が最小値となるときの前記独立軸の回転位置を独立軸位置指令値として算出し、前記ロボット制御工程は、前記位置検出工程で検出された前記独立軸の回転位置が前記評価関数最小値演算工程で算出された前記独立軸位置指令値に収束するような、独立軸トルク指令値を算出する軸別フィードバック制御工程を更に含んでいてもよい。
この一態様において、前記ロボット制御工程は、前記複数のアクチュエータの相対的な重要度を示すアクチュエータ別重みを算出するアクチュエータ別重み演算工程を更に含み、前記軸別フィードバック制御工程は、前記アクチュエータ別重み演算工程で算出された前記アクチュエータ別重みに比例して、前記独立軸に対する制御ゲインを算出し、該算出した制御ゲインを用いて、前記独立軸トルク指令値を算出する独立軸制御工程を含んでいてもよい。
この一態様において、前記軸別フィードバック制御工程は、前記位置検出工程で検出された前記従属軸の回転位置と、動作目標生成工程で生成された前記動作目標と、に基づいて、従属軸位置指令値を算出する従属軸位置指令生成工程と、前記アクチュエータ別重み演算工程で算出された前記アクチュエータ別重みに比例して、前記従属軸に対する制御ゲインを算出し、該算出した制御ゲインを用いて、前記従属軸トルク指令値を算出する従属軸制御工程と、を更に含んでいてもよい。
本発明によれば、消費電力量を抑制しつつ、柔軟に所望動作を実行できるロボット装置及びその制御方法を提供することができる。
本発明の一実施形態に係るロボット装置の概略的なシステム構成を示すブロック図である。 本発明の一実施形態に係るロボット制御装置の軸別フィードバック制御部の概略的なシステム構成を示すブロック図である。 本発明の一実施形態に係るロボット装置のロボット機構モデルを概略的に示す図である。 所定パラメータ値を用いてシミュレーションを行った結果を示す図であり、肩関節位置θ、肘関節位置θ、および評価関数の値の一関係例を示す図である。 (a)ステップ外力を前腕部の中心に水平方向へ印加したときの、本実施形態に係るロボット装置における追従偏差のシミュレーション結果を示す図である。(b)ステップ外力を前腕部の中心に水平方向へ印加したときの、本実施形態に係るロボット装置における総トルク指令値のシミュレーション結果を示す図である。 本発明の一実施形態に係るロボット装置による制御処理フローの一例を示すフローチャートである。
以下、本発明を実施するための一実施形態について、添付図面を参照しながら説明する。図1は、本発明の一実施形態に係るロボット装置の概略的なシステム構成を示すブロック図である。本実施形態に係るロボット装置101は、動作目標生成器103と、動作環境検出器104と、複数のアクチュエータ109と、ロボット機構110と、複数の位置検出センサ111と、ロボット制御装置102と、を備えている。
ロボット機構110は、例えば、回動可能な複数の関節軸を有するロボットのアーム部、脚部等のロボット可動部である。また、各関節軸には、各関節軸を回転駆動するためのアクチュエータ109が設けられている。さらに、各関節軸には、各関節軸の回転位置を検出するための位置検出センサ111が設けられている。
動作目標生成器103は、例えば、当該ロボット装置101に所望動作させる際の、ロボット機構110の各関節軸の従属関係式である動作目標を生成する。ロボット機構110は、例えば、複数の関節軸を有る多関節型のロボットアーム機構であり、この場合、動作目標は各関節軸の回転位置(回転角度)の関係式となる。動作目標生成器103は、生成した動作目標をロボット制御装置102の評価関数最小値演算部106に対して出力する。
動作環境検出器104は、視覚センサ(カメラ等)、近接覚センサ(超音波センサ等)、などの各種センサを用いて、ロボット機構110周辺の障害物(人、物体)等の相対位置を検出する。動作環境検出器104は、検出した障害物の相対位置に基づいて、例えば、ロボット機構110がその障害物に接触しないような各関節軸の可動範囲Ωを算出する。そして、動作環境検出器104は、算出したロボット機構110の各関節軸の可動範囲Ωと、予め設定された各関節軸の限界可動範囲Ωと、に基づいて、最終的な、ロボット機構110の各関節軸の拘束条件Ωを算出する。
ここで、ロボット機構110の各関節軸の限界可動範囲Ωとは、例えば、ロボット機構110の機械的な制約により各関節軸が回転できる限界範囲を指す。動作環境検出器104は、算出したロボット機構110の各関節軸の拘束条件Ωを、ロボット制御装置102の評価関数最小値演算部106に対して出力する。
ロボット制御装置102は、動作目標生成器103により生成された動作目標と、動作環境検出器104により算出されたロボット機構110の各関節軸の拘束条件Ωと、各位置検出センサ111からの検出信号と、に基づいて、各アクチュエータ109を制御して、後述の如く、ロボット機構110を柔軟に制御することができる。
次に、ロボット制御装置102のシステム構成について詳細に説明する。ロボット制御装置102は、アクチュエータ別重み演算部105と、評価関数最小値演算部106と、軸別フィードバック制御部107と、トルク制御部108と、を有している。
アクチュエータ別重み演算部105は、各関節軸のアクチュエータ109による動作の重要度に応じて、各アクチュエータ109に対する、アクチュエータ別重みを算出する。このアクチュエータ別重みは、ロボット装置101が動作目標生成器103で生成された動作目標を満足するような動作をするための、各関節軸のアクチュエータ109に対する相対的な重要度を示す重み係数である。
アクチュエータ別重み演算部105は、例えば、動作目標生成器103により生成された動作目標と、予め設定された動作パターンと、を比較して、アクチュエータ別重みを算出する。例えば、アクチュエータ別重み演算部105は、重要な動作をする各関節軸のアクチュエータ109に対するアクチュエータ別重みをより高く算出し、重要でない動作をする関節軸のアクチュエータ109に対するアクチュエータ別重みをより低く算出する。アクチュエータ別重み演算部105は、算出した各関節軸のアクチュエータ109に対するアクチュエータ別重みを、軸別フィードバック制御部107に対して出力する。
評価関数最小値演算部106は、動作目標生成器103により生成された動作目標と、動作環境検出器104により算出された各関節軸の拘束条件Ωと、を満足した、評価関数の最小値を算出し、そのときの独立軸の回転位置を算出する。なお、評価関数は、例えば、当該ロボット装置101の消費電力量を評価する関数であり、各関節軸のアクチュエータ109に対するトルク指令値を変数としている。したがって、例えば、評価関数の値を最小値にすることで、各関節軸のアクチュエータ109に対するトルク指令値を最小にして、ロボット装置101の消費電力量を最小にすることができる。
また、評価関数最小値演算部106は、ロボット機構110の複数の関節軸を、動作目標に基づいて、独立軸と、この独立軸に従動する従属軸とに分類する。ここで、独立軸とは、例えば、動作目標の従属関係式において独立変数として表わされる関節軸である。一方、従属軸とは、動作目標の従属関係式において従属変数として表わされる関節軸である。評価関数最小値演算部106は、算出した独立軸の回転位置を、独立軸位置指令値として、軸別フィードバック制御部107に対して出力する。
軸別フィードバック制御部107は、アクチュエータ別重み演算部105により算出された各アクチュエータ109のアクチュエータ別重みに比例して、各関節軸のアクチュエータ109に対する制御ゲインを算出する。また、軸別フィードバック制御部107は、動作目標を満足しているという仮定のもとに、位置検出センサ111により検出された独立軸位置検出値(独立軸の回転位置)が、評価関数最小値演算部106により算出された独立軸位置指令値に収束するような、独立軸トルク指令値を算出する。さらに、軸別フィードバック制御部107は、独立軸位置検出値の変化が従属軸位置検出値(位置検出センサ111により検出される従属軸の回転位置)の変化より十分遅いという仮定のもとに、動作目標を満足するように、従属軸トルク指令値を算出する。
ここで、独立軸トルク指令値とは、独立軸のアクチュエータ109を制御するためのトルク指令値であり、従属軸トルク指令値とは、従属軸のアクチュエータ109を制御するためのトルク指令値である。軸別フィードバック制御部107は、算出した独立軸トルク指令値および従属軸トルク指令値を、トルク制御部108に対して出力する。
トルク制御部108は、軸別フィードバック制御部107により算出された独立軸トルク指令値に応じて、対応する独立軸のアクチュエータ109に対して、各アクチュエータ109を駆動するための駆動電流を出力する。同様に、トルク制御部108は、軸別フィードバック制御部107により算出された従属軸トルク指令値に応じて、対応する従属軸のアクチュエータ109に対して、各アクチュエータ109の駆動電流を出力する。
なお、ロボット制御装置102は、例えば、制御処理、演算処理等と行うCPU(Central Processing Unit)と、CPUによって実行される制御プログラム、演算プログラム等が記憶されたROM(Read Only Memory)と、処理データ等を一時的に記憶するRAM(Random Access Memory)と、を有するマイクロコンピュータを中心にしてハードウェア構成されている。また、アクチュエータ別重み演算部105、評価関数最小値演算部106、軸別フィードバック制御部107、およびトルク制御部108は、例えば、上記ROMに記憶され、上記CPUによって実行されるプログラムによって実現することができる。
複数のアクチュエータ109は、例えば、ロボット機構110の各関節軸を回転駆動するサーボモータ等である。各アクチュエータ109は、トルク制御部108からの駆動電流に応じて、ロボット機構110の各関節軸を回転駆動し、ロボット装置101に所望の動作をさせる。
複数の位置検出センサ111は、例えば、ポテンショメータ、エンコーダ、レゾルバー等である。各位置検出センサ111は、ロボット機構110の各関節軸に設けられ、各関節軸の回転位置を検出することができる。位置検出センサ111は、例えば、独立軸の回転位置を検出し、その検出した回転位置を独立軸位置検出値として、軸別フィードバック制御部107に対して出力する。同様に、位置検出センサ111は、例えば、従属軸の回転位置を検出し、その検出した回転位置を従属軸位置検出値として、軸別フィードバック制御部107に対して出力する。
図2は、本発明の一実施形態に係るロボット制御装置の軸別フィードバック制御部の概略的なシステム構成を示すブロック図である。本実施形態に係る軸別フィードバック制御部107は、独立軸制御部201と、従属軸位置指令生成部202と、従属軸制御部203と、を有している。
独立軸制御部201は、アクチュエータ別重み演算部105により算出された独立軸のアクチュエータ別重み(制御ゲインバランス)に比例して(例えば、アクチュエータ別重みに比例係数を乗算して)、独立軸に対する制御ゲインを算出する。そして、独立軸制御部201は、算出した独立軸の制御ゲインを用いて、位置検出センサ111により検出された独立軸位置検出値が評価関数最小値演算部106により算出された独立軸位置指令値に収束するように、独立軸トルク指令値を算出する。独立軸制御部201は、算出した独立軸トルク指令値を、トルク制御部108に対して出力する。
従属軸位置指令生成部202は、位置検出センサ111により検出された従属軸位置検出値と、動作目標生成器103により生成された動作目標と、に基づいて、この動作目標を満たすような従属軸の回転位置である従属軸位置指令値を算出する。従属軸位置指令生成部202は、算出した従属軸位置指令値を、従属軸制御部203に対して出力する。
従属軸制御部203は、アクチュエータ別重み演算部105により算出された従属軸のアクチュエータ別重み(制御ゲインバランス)に比例して、従属軸に対する制御ゲインを算出する。そして、従属軸制御部203は、算出した従属軸の制御ゲインを用いて、位置検出センサ111により検出された従属軸位置検出値が従属軸位置指令生成部202により算出された従属軸位置指令値に収束するように、従属軸トルク指令値を算出する。従属軸制御部203は、算出した従属軸トルク指令値を、トルク制御部108に対して出力する。
なお、独立軸制御部201及び従属軸制御部203は、例えば、フィードバック線形化制御、スライディングモード制御、適応制御、ニューロ制御、ファジー制御、外乱オブザーバ、線形制御、又はこれらの任意の組合せ、などの任意の制御則を用いて、上記制御を行うことができる。
次に、本発明の一実施形態に係るロボット装置の制御処理における、一具体例について説明する。図3は、本発明の一実施形態に係るロボット装置のロボット機構モデルを概略的に示す図である。本実施形態に係るロボット機構110は、体幹部301と、体幹部301に肩関節軸302を介して回動可能に連結された上腕部303と、上腕部303に肘関節軸304を介して回動可能に連結された前腕部305と、前腕部305に手首関節軸306を介して回動可能に連結されたハンド部307と、を有している。また、ハンド部307には、把持物308が把持されている。
ここで、例えば、肩関節軸302の回転位置をθ、肘関節軸304の回転位置をθ、手首関節軸306の回転位置をθ、上腕部303の長さをl、前腕部305の長さをl、ハンド部307の長さをl、上腕部303の質量をm、前腕部305の質量をm、ハンド部307の質量をm、および、把持物308の質量をmとする。また、上腕部303の重心位置から肩関節軸302までの距離をl1c、前腕部305の重心位置から肘関節軸304までの距離をl2c、および、ハンド部307の重心位置から手首関節軸306までの距離をl3c、とする。
例えば、把持物308が飲み物の入ったコップであり、ロボット装置101のロボット機構110がこの把持物308を把持し、目的地へ移動させる場合を想定する。この場合、定常状態において、肩関節軸302、肘関節軸304、及び、手首関節軸306に必要な肩関節トルクT、肘関節トルクT、及び、手首関節トルクTは、夫々、下記(1)式、(2)式、及び、(3)式で表現できる。
Figure 0004947073
Figure 0004947073
Figure 0004947073
本実施形態において、例えば、把持物308は、飲み物が入ったコップであるため、この把持物308を水平に維持することが動作目標となる。この場合、肩関節軸302(回転位置θ)、および、肘関節軸304(回転位置θ)が独立軸となり、手首関節軸306(回転位置θ)が従属軸となる。そして、動作目標生成器103は、下記(4)式に示す動作目標を幾何学的に生成し、生成した動作目標を評価関数最小値演算部106に対して出力する。
Figure 0004947073
また、例えば、ロボット機構110が把持物308をテーブルと壁との間(間隔h)を移動させる場合を想定する。この場合、動作環境検出器104は、ロボット機構110がテーブル及び壁に接触しない、肩関節軸308、肘関節軸304、及び、手首関節軸306の可動範囲Ωを、幾何学的に下記(5)式のように算出する。
Figure 0004947073
ここで、肩関節軸302、肘関節軸304、及び、手首関節軸306の限界可動範囲をΩとすると、動作環境検出器104は、この限界可動範囲Ωと、上記(5)式により算出した可動範囲Ωと、の両方を満足する下記(6)式に示す拘束条件Ωを算出する。そして、動作環境検出器104は、下記(6)式により算出した拘束条件Ωを、評価関数最小値演算部106に対して出力する。
Figure 0004947073
評価関数最小値演算部106は、下記(7)式に示す評価関数を用いて、この評価関数が最小となり、消費電力量が最小となる独立軸の回転位置(独立軸位置指令値)を算出する。なお、(7)式に示すように、評価関数は、肩関節トルクT、肘関節トルクT、及び、手首関節トルクTの夫々の2乗の総和で表現され、独立軸の回転位置である肩関節軸302の回転位置θ(以下、肩関節位置θと称す)、および、肘関節軸304の回転位置θ(以下、肘関節位置θと称す)のみをパラメータとしている。
Figure 0004947073
なお、評価関数最小値演算部106は、上記(1)乃至(4)式を、上記(7)式に代入して、以降の算出を行う。次に、評価関数最小値演算部106は、下記(8)式を用いて、評価関数極点(θ 、θ )を算出する。
Figure 0004947073
さらに、評価関数最小値演算部106は、上記評価関数極点(θ 、θ )において、下記(9)及び(10)式の評価関数2階微分値符号を算出する。ここで、下記(9)式におけるΔを、ラプラシアンとする。
Figure 0004947073
Figure 0004947073
評価関数最小値演算部106は、上記(9)及び(10)式において、s>0かつs>0を満たす評価関数極点(θ 、θ )における評価関数の値、および、上記(6)式の拘束条件Ωの端における評価関数の値、のうち、最小となる評価関数の値を、評価関数の最小値として算出する。そして、評価関数最小値演算部106は、算出した評価関数の最小値における肩関節位置θ、および、肘関節位置θを独立軸位置指令値r、rとして、軸別フィードバック制御部107に対して出力する。
次に、軸別フィードバック制御部107における制御処理について、詳細に説明する。ここで、上腕部303の重心位置であり、体幹部301からの水平位置である上腕水平位置xは、下記(11)式により求められ、上腕部303の重心位置であり、肩関節位置θが0°のときにおける、肘関節軸304からの垂直位置である上腕垂直位置yは、下記(12)式により求められる。
また、前腕部305の重心位置であり、体幹部301からの水平位置である前腕水平位置xは、下記(13)式により求められ、前腕部305の重心位置であり、肩関節位置θ及び肘関節位置θが0°のときにおける、手首関節軸306からの垂直位置である前腕垂直位置yは、下記(14)式により求められる。
さらに、ハンド部307の重心位置であり、体幹部301からの水平位置であるハンド水平位置xは、下記(15)式により求められ、ハンド部307の重心位置であり、肩関節位置θ、肘関節位置θ、及び手首関節位置θが0°のときにおける、把持物308の重心位置からの垂直位置であるハンド垂直位置yは、下記(16)式により求められる。
またさらに、把持物308の重心位置であり、体幹部301からの水平位置である把持物水平位置xは、下記(17)式により求められ、把持物308の重心位置であり、肩関節位置θ、肘関節位置θ、及び手首関節位置θが0°のときにおける、把持物308の重心位置からの垂直位置である把持物垂直位置yは、下記(18)式により求められる。
Figure 0004947073
Figure 0004947073
Figure 0004947073
Figure 0004947073
Figure 0004947073
Figure 0004947073
Figure 0004947073
Figure 0004947073
ここで、アクチュエータ別重み演算部105は、例えば、独立軸である肩関節軸302(肩関節位置θ)及び肘関節軸304(肘関節位置θ)の各アクチュエータ109に対するアクチュエータ別重みを低く設定し、設定したアクチュエータ別重みを軸別フィードバック制御部107に対して出力する。軸別フィードバック制御部107の独立軸制御部201は、この低く設定されたアクチュエータ別重みに比例して、肩関節位置θ及び肘関節位置θの制御ゲインを低く算出する。
一方で、アクチュエータ別重み演算部105は、従属軸である手首関節軸306(手首関節位置θ)のアクチュエータ109に対するアクチュエータ別重みを比較的高く設定し、設定したアクチュエータ別重みを軸別フィードバック制御部107に対して出力する。軸別フィードバック制御部107の従属軸制御部203は、この高く設定されたアクチュエータ別重みに比例して、手首関節位置θの制御ゲインを高く算出する。
このように、動作目標が把持物(飲み物が入ったコップ)308を水平に維持することの場合、例えば、手首関節軸306の動作が重要となり、手首関節軸306に比較的大きな力を加える必要が生じる。一方で、肩関節軸302及び肘関節軸304の動作は、それほど重要ではなく、肩関節軸302及び肘関節軸304への力を低く抑えることができる。したがって、上述の如く、アクチュエータ別重み演算部105は、重要な手首関節軸306のアクチュエータ別重みを高く設定し、従属軸制御部203は、この高く設定されたアクチュエータ別重みに比例して、手首関節位置θの制御ゲインを高く算出する。一方で、アクチュエータ別重み演算部105は、それほど重要でない肩関節軸302及び肘関節軸304のアクチュエータ別重みを低く設定し、従属軸制御部203は、この低く設定されたアクチュエータ別重みに比例して、手首関節位置θの制御ゲインを低く算出する。
これにより、肩関節軸302、肘関節軸304、及び手首関節軸306の動作の重要度に応じた最適な力を、各関節軸302、304、306に付加することが可能となる。このため、柔軟かつ安全な動作を行いつつも、無駄な力を排除でき、当該ロボット装置101の消費電力量を抑制することができる。すなわち、重要な動作をする手首関節軸306に対しては、大きな力を付加して力を入れ、重要でない動作をする肩関節軸302及び肘関節軸304に対しては、小さな力を付加して力を抜いた柔軟な動作が可能となる。これにより、ロボット機構110は、その周辺における人、物等の障害物と接触した場合でも、柔軟かつ安全に接触することができ、さらに、ロボット装置101の消費電力を最小に抑制することができる。
なお、従属軸の手首関節位置θの応答は、独立軸の肩関節位置θ及び肘関節位置θの応答よりも十分に速く、上記(4)式が成立していると仮定できる。この仮定により、ポテンシャルエネルギーVは、下記(19)式により求められ、運動エネルギーTは、下記(20)式により求められる。
Figure 0004947073
Figure 0004947073
また、上記(19)及び(20)式をオイラーラグランジュ方程式に代入すると、独立軸の肩関節位置θ及び肘関節位置θに対する独立軸運動方程式は、下記(21)及び(22)式のように求めることができる。なお、下記(21)及び(22)式において、d及びdは肩関節軸302及び肘関節軸304を回転駆動するアクチュエータ109へのトルク外乱を示している。
Figure 0004947073
Figure 0004947073
軸別フィードバック制御部107の独立軸制御部201は、上記独立軸運動方程式(21)及び(22)に基づいて設計した制御を用いて、位置検出センサ111により検出された肩関節位置θ及び肘関節位置θの独立軸位置検出値が、評価関数最小値演算部106により算出された独立軸位置指令値に収束するように、独立軸トルク指令値を算出する。そして、独立軸制御部201は、算出した独立軸トルク指令値を、トルク制御部108に対して出力する。
なお、独立軸制御部201は、上記独立軸運動方程式(21)及び(22)を、評価関数の最小値における肩関節位置θ及び肘関節位置θに対して線形化し、P制御、PI制御、I-P制御、PID制御などの任意の線形制御則を適用できる。
一方、上記(21)及び(22)式における仮定に基づいて、肩関節位置θ及び肘関節位置θは、手首関節位置θより十分に遅く変化するため、近似的に一定であると仮定できる。この仮定により、ポテンシャルエネルギーVは、下記(23)式により求められ、運動エネルギーTは、下記(24)式により求められる。
Figure 0004947073
Figure 0004947073
また、上記(23)及び(24)式をオイラーラグランジュ方程式に代入すると、従属軸の手首関節位置θに対する従属軸運動方程式は、下記(25)式のように求めることができる。なお、下記(25)式において、dは、手首関節軸306を駆動するアクチュエータ109へのトルク外乱を示している。
Figure 0004947073
軸別フィードバック制御部107の従属軸制御部203は、上記従属軸運動方程式(25)に基づいて設計した制御を用いて、位置検出センサ111により検出された手首関節位置θの従属軸位置検出値が、従属軸位置指令生成部202により算出された従属軸位置指令値に収束するように、従属軸トルク指令値を算出する。そして、従属軸制御部203は、算出した従属軸トルク指令値を、トルク制御部108に対して出力する。
このように、本実施形態に係るロボット装置101において、動作目標生成器103により生成された上記(4)式の動作目標と、動作環境検出器104により算出された上記(6)式の拘束条件Ωと、を満たすように、ロボット機構110を制御することで、ロボット機構110と周辺のテーブル及び壁との接触を回避しつつ、柔軟に所望動作を行うことができる。さらに、上記(7)式の評価関数が最小となるように、独立軸位置指令値を算出することで、ロボット装置101の消費電力量を最小に抑えることができる。
なお、従属軸制御部203は、上記従属軸運動方程式(25)を、評価関数の最小値における手首関節位置θに対して線形化して、P制御、PI制御、I-P制御、PID制御などの任意の線形制御則を適用できる。
次に、本実施形態に係るロボット装置101の制御処理のシミュレーション結果について、詳細に説明する。ここで、各パラメータ値を、l=250×10−3(m)、l=215×10−3(m)、l=40×10−3(m)、l1c=125×10−3(m)、l2c=108×10−3(m)、l3c=200×10−3(m)、m=1.43(kg)、m=0.84(kg)、m=0.30(kg)、θ1min=0(rad)、θ1max=π(rad)、θ2min=0(rad)、θ2max=π/2(rad)、θ3min=−2π/3(rad)、θ3max=π/2(rad)、m=0.5(kg)、T=125×10−6(s)、p=(−1×2×π、−1×2×π、−2×2×π、−2×2×π)(rad/s)、Kp3=10(s−1)、Kv3=Kp3×2×pi、Kvj3=Kv3×J(s−1)、Ti3=4/Kv3(s)、r1conv=π/6(rad)、r2conv=π/6(rad)、r3conv=π/6(rad)とする。
また、θ1minを肩関節可動範囲の下限値とし、θ1maxを肩関節可動範囲の上限値とし、θ2minを肘関節可動範囲の下限値とし、θ2maxを肘関節可動範囲の上限値とし、θ3minを手首関節可動範囲の下限値とし、θ3maxを手首関節可動範囲の上限値とする。さらに、Tを制御周期とし、pを独立軸の閉ループ系極とし、Kp3を位置比例制御ゲインとし、Kv3を正規化速度比例制御ゲインとし、Kvj3を速度比例制御ゲインとし、Ti3を速度制御積分時定数とし、r1convを従来技術における肩関節位置指令値とし、r2convを従来技術における肘関節位置指令値とし、r3convを従来技術における手首関節位置指令値とする。
図4は、上記の所定パラメータ値を用いてシミュレーションを行った結果を示す図であり、肩関節位置θ、肘関節位置θ、および評価関数の値の一関係例を示す図である。なお、図4において、x軸は肩関節位置θ、y軸は肘関節位置θ、およびz軸は評価関数の値を示している。また、細メッシュ部分S1は、評価関数最小値演算部106が上記(7)式により算出する評価関数の値である。さらに、太メッシュ部分S2は、評価関数最小値演算部106により算出される評価関数の値のうち、動作目標生成器103により生成された上記(4)式の動作目標、および、動作環境検出器104により算出された上記(6)式の拘束条件Ωを、満足する評価関数の値である。
評価関数最小値演算部106は、例えば、大ドットで示す評価関数の最小値S3を算出する。この評価関数の最小値S3は、Icmin=0.142(N2。)となっており、このときの肩関節位置θ及び肘関節位置θに対応する独立軸位置指令値は、夫々、r1opt=−0.05(rad)、r2opt=0.06(rad)となっている。
図5(a)及び(b)は、ステップ外力を前腕部305の中心に水平方向へ印加したときの、本実施形態に係るロボット装置101における制御処理のシミュレーション結果を示す図である。図5(a)及び(b)において、1.5秒後に0.98(N)のステップ外力を前腕部305の中心に水平方向に印加するものとする。
図5(a)において、横軸は経過時間を示し、縦軸はハンド部307の位置の追従偏差Δを示している。また、実線X1は本実施形態に係るロボット装置101によるハンド部307の位置の追従偏差Δを示し、点線X2は従来技術によるハンド部の位置の追従偏差を示している。なお、本実施形態の比較に用いる従来技術(特許文献2)において、肩関節位置θ、肘関節位置θ、及び手首関節位置θが、夫々、肩関節位置指令値r1conv、肘関節位置指令値r2conv、及び手首関節位置指令値r3convに追従するように設計され、位置比例制御ゲインKp3、速度比例制御ゲインKvj3、及び速度制御積分時定数Ti3を、パラメータとする位置P制御及び速度PI制御を行うものとする。
図5(a)に示すように、従来技術による追従偏差(点線)X2は、ステップ外力を印加した後、約0.0286(rad)に収束するのに対し、本実施形態に係るロボット装置101による追従偏差(実線)X1は、約5.5×10−5に収束する。すなわち、本実施形態に係るロボット装置101は、その追従偏差Δを従来技術と比較して、1/520に低減することができ、制御性能を向上させることができる。
また、図5(b)において、横軸は経過時間を示し、縦軸は肩関節トルク指令値、肘関節トルク指令値、及び手首関節トルク指令値の夫々の2乗の総和である総トルク指令値(評価関数の値)を示している。なお、図5(b)における実線X1は、本実施形態に係るロボット装置101の総トルク指令値を示しており、点線X2は従来技術の総トルク指令値を示している。
図5(b)に示すように、ステップ外力を印加する前は、本実施形態に係る総トルク指令値(実線)X1は、0.337(N・m)となり、従来技術に係る総トルク指令値(点線)X2は、5.70(N・m)となる。また、ステップ外力を印加した後は、本実施形態に係る総トルク指令値X1は、0.977(N・m)となり、従来技術に係る総トルク指令値X2は、6.34(N・m)となる。このように、ステップ外力を印加する前後において、本実施形態に係る総トルク指令値X1を、従来技術に係る総トルク指令値X2と比較して、夫々、約1/16.9、1/6.49に低減することができる。例えば、トルク定数を一定とし、電圧を一定とした場合に、本実施形態に係るロボット装置101の消費電力量を、従来技術と比較して、1/6以下に低減できることがわかる。
さらに、本実施形態に係るロボット装置101においては、独立軸である肩関節軸及び肘関節軸の閉ループの極を、夫々、−1×π(rad/s)、−2×2×π(rad/s)に設定し、制御ゲインを低く算出している。このため、仮に、ロボット機構110が障害物に接触した場合でも、その障害物に柔軟かつ安全に接触できつつ、同時に、動作目標である、例えば、把持物308の飲み物を確実に水平に維持することができる。
次に、本実施形態に係るロボット装置による制御処理フローについて、詳細に説明する。図6は、本実施形態に係るロボット装置による制御処理フローの一例を示すフローチャートである。
動作目標生成器103は、当該ロボット装置101に所望動作させる際の、ロボット機構110の各関節軸の動作目標(例えば、上記(4)式)を生成し(ステップS601)、ロボット制御装置102の評価関数最小値演算部106に対して出力する。
また、動作環境検出器104は、ロボット装置101の各種センサを用いて、ロボット機構110がその障害物に接触しないような各関節軸(肩関節位置θ、肘関節位置θ及び手首関節位置θ)の可動範囲Ωを算出する。そして、動作環境検出器104は、算出した各関節軸の可動範囲Ωと、予め設定されたロボット機構110の各関節軸の限界可動範囲Ωと、に基づいて、ロボット機構110の各関節軸の拘束条件Ωを算出し(ステップS602)、ロボット制御装置102の評価関数最小値演算部106に対して出力する。
さらに、アクチュエータ別重み演算部105は、動作目標生成器103により生成された動作目標と、予め設定された動作パターンと、を比較して、各アクチュエータ109に対するアクチュエータ別重みを算出し(ステップS603)、軸別フィードバック制御部107に対して出力する。
またさらに、評価関数最小値演算部106は、動作目標生成器103により生成された動作目標と、動作環境検出器104により算出された各関節軸の拘束条件Ωと、に基づいて、評価関数が最小値となる独立軸位置指令値を算出し(ステップS604)、軸別フィードバック制御部107に対して出力する。
次に、軸別フィードバック制御部107の独立軸制御部201は、アクチュエータ別重み演算部105により算出された独立軸のアクチュエータ別重みに比例して、独立軸である肩関節軸302および肘関節軸304に対する制御ゲインを低く算出する(ステップS605)。そして、独立軸制御部201は、算出した独立軸の制御ゲインを用いて、位置検出センサ111により検出された独立軸位置検出値が、評価関数最小値演算部106により算出された独立軸位置指令値に収束するように、独立軸トルク指令値を算出し(ステップS606)、トルク制御部108に対して出力する。
トルク制御部108は、軸別フィードバック制御部107の独立軸制御部201により算出された独立軸トルク指令値に応じて、対応する独立軸(肩関節軸302および肘関節軸304)のアクチュエータ109に対して、駆動電流を出力する(ステップS607)。
一方、軸別フィードバック制御部107の従属軸位置指令生成部202は、位置検出センサ111により検出された従属軸位置検出値と、動作目標生成器103により生成された動作目標と、に基づいて、この動作目標を満たすような従属軸の回転位置(手首関節位置θ)である従属軸位置指令値を算出し(ステップS608)、従属軸制御部203に対して出力する。次に、従属軸制御部203は、アクチュエータ別重み演算部105により算出された従属軸のアクチュエータ別重みに比例して、従属軸である手首関節軸306に対する制御ゲインを高く算出する(ステップS609)。
そして、従属軸制御部203は、算出した従属軸の制御ゲインを用いて、位置検出センサ111により検出された従属軸位置検出値が、従属軸位置指令生成部202により算出された従属軸位置指令値に収束するように、従属軸トルク指令値を算出し(ステップS610)、トルク制御部108に対して出力する。
トルク制御部108は、軸別フィードバック制御部107の従属軸制御部203により算出された従属軸トルク指令値に応じて、対応する従属軸(手首関節軸306)のアクチュエータ109に対して、駆動電流を出力する(ステップS611)。
各アクチュエータ109は、トルク制御部108からの駆動電流に応じて、ロボット機構110の各関節軸(肩関節軸302、肘関節軸304及び手首関節軸306)を駆動し(ステップS612)、ロボット装置101に所望の動作をさせる。
以上、本実施形態に係るロボット装置101において、ロボット制御装置102の評価関数最小値演算部106は、動作目標生成器103により生成された動作目標と、動作環境検出器104により算出された各関節軸の拘束条件Ωと、を満足した、評価関数の最小値を算出し、そのときの独立軸位置指令値を算出する。これにより、ロボット装置101の消費電力量を抑制しつつ、柔軟に所望動作を実行できる。
また、アクチュエータ別重み演算部105は、各関節軸のアクチュエータ109の動作の重要度に応じて、各アクチュエータ109に対する、アクチュエータ別重みを算出する。そして、軸別フィードバック制御部107は、この算出されたアクチュエータ別重みに比例して、各関節軸のアクチュエータ109に対する制御ゲインを算出する。これにより、各関節軸の動作の重要度に応じた最適な力を、各関節軸に付加することが可能となるため、柔軟かつ安全な動作を行いつつも、無駄な力を排除でき、当該ロボット装置101の消費電力量を抑制することができる。すなわち、重要な動作をする関節軸に対しては、大きな力を付加して力を入れ、重要でない動作をする関節軸に対しては、小さな力を付加して力を抜いた柔軟な動作が可能となる。これにより、ロボット機構110は、その周辺における人、物等の障害物と接触した場合でも、柔軟かつ安全に接触することができ、さらに、ロボット装置101の消費電力を最小に抑制することができる。すなわち、ロボット装置101の消費電力量を抑制しつつ、柔軟に所望動作を実行できる。なお、消費電力量を抑制することで、例えば、バッテリの容量を小さく抑えることができるため、ロボット装置101の軽量小型化を図ることができる。
なお、本発明を実施するための実施形態について、上記一実施形態を用いて説明したが、本発明はこうした上記一実施形態に何等限定されるものではなく、本発明の要旨を逸脱しない範囲内において、上記一実施形態に種々の変形及び置換を加えることができる。
例えば、上記一実施形態において、評価関数最小値演算部106は、評価関数極点(θ 、θ )における評価関数の値、および、拘束条件Ωの端における評価関数の値、のうち、最小となる評価関数の値を、評価関数の最小値としているが、これに限らず、例えば、数値探索法により評価関数の最小値を算出してもよい。これにより、複雑なロボット機構110に対して、評価関数の最小値をより適切に算出することができる。さらに、評価関数最小値演算部106は、乱数によって選択した初期パラメータの周囲で最も小さい値をとる点を評価関数の最小値の候補とし、評価関数の最小値にしてもよく、また、上記算出方法を任意に組み合わせてもよく、任意の算出方法が適用可能である。
また、上記一実施形態において、評価関数は、肩関節トルクT、肘関節トルクT、及び、手首関節トルクTの夫々の2乗の総和で表現されているが、これに限らず、例えば、各関節のアクチュエータ109に対する駆動電流の夫々の2乗の総和であってもよい。すなわち、該ロボット装置101の消費電力量を適切に評価できれば、任意の評価関数を適用できる。
さらに、上記一実施形態において、ロボット機構110は、体幹部301と、肩関節軸302と、上腕部303と、肘関節軸304と、前腕部305と、手首関節軸306と、ハンド部307と、を有する構成であるが、これに限らず、任意の構成が適用可能である。
上記一実施形態において、把持物308は飲み物の入ったコップとしているが、これに限らず、食べ物を載せたトレー等でもよく、任意の把持物308に適用可能である。例えば、把持物308が刃物の場合には、刃物が周囲の人や物体に接触しない拘束条件Ωを設定してもよく、把持物308が鞄の場合には、鞄が地面に接触しない拘束条件Ωを設定してもよい。また、動作目標として、把持物308を水平に維持することとしているが、これに限らず、任意の動作目標を設定できる。
上記一実施形態において、動作目標生成器103が動作目標を生成しているが、これに限らず、動作目標がロボット装置101に予め設定される構成であってもよい。また、動作環境検出器104が、ロボット機構110の各関節軸の拘束条件Ωを算出しているが、これに限らず、拘束条件Ωがロボット装置101に予め設定される構成であってもよい。
本発明に係るロボット装置101は、例えば、家事手伝いロボット、介護ロボット、柔軟で複雑な部品の組立ロボット、救助ロボット、極限環境での作業ロボットなどの、柔軟性、長充電時間、ロバスト性、器用性などが要求される広範囲のロボット装置に適用可能である。
101 ロボット装置
102 ロボット制御装置
103 動作目標生成器
104 動作環境検出器
105 アクチュエータ別重み演算部
106 評価関数最小値演算部
107 軸別フィードバック制御部
108 トルク制御部
109 アクチュエータ
110 ロボット機構
111 位置検出センサ
201 独立軸制御部
202 従属軸位置指令生成部
203 従属軸制御部

Claims (15)

  1. 体幹部に肩関節軸を介して連結された上腕部と、該上腕部に肘関節軸を介して連結された前腕部と、該前腕部に手首関節軸を介して連結されたハンド部と、を有するロボットアームと、
    前記ロボットアームの関節軸を駆動する複数のアクチュエータと、を備えるロボット装置であって、
    前記アクチュエータに対するトルク指令の2乗の和の関数である評価関数に基づいて、前記アクチュエータの駆動を制御するロボット制御装置と、
    前記前腕部の延長線と前記ハンド部とが成す角度を示す前記手首関節軸の回転位置θ 、前記体幹部と前記上腕部とが成す角度を示す前記肩関節軸の回転位置θ 、及び、前記上腕部の延長線と前記前腕部との成す角度を示す前記肘関節軸の回転位置θ を含む下記従属関係式である動作目標を設定する動作目標生成器と、を備え、
    前記ロボット制御装置は、
    前記評価関数の最小値を算出するための評価関数最小値演算部を有し、
    前記評価関数最小値演算部により算出される前記評価関数の値が最小となるように、前記アクチュエータの駆動を制御しており、
    前記評価関数最小値演算部は、
    前記動作目標生成器により設定された前記動作目標の従属関係式において、前記ロボットアームの複数の関節軸を独立変数として表わされる前記肩関節軸の回転位置θ 及び肘関節軸の回転位置θ と、該肩関節軸の回転位置θ 及び肘関節軸の回転位置θ に従動し前記従属関係式において従属変数として表わされる前記手首関節軸の回転位置θ と、に分類し、
    前記肩関節軸の回転位置θ 及び肘関節軸の回転位置θ のみを変数とした前記評価関数の最小値を算出する、ことを特徴とするロボット装置。
    但し、前記従属関係式は、θ =π/2−θ −θ である。
  2. 請求項1記載のロボット装置であって、
    前記ロボットアームの動作環境を検出する動作環境検出器を更に備え、
    前記評価関数最小値演算部は、前記動作環境検出器により検出された前記動作環境と、前記動作目標生成器により設定された前記動作目標と、に基づいて、前記評価関数の最小値を算出する、ことを特徴とする、ロボット装置。
  3. 請求項2記載のロボット装置であって、
    前記動作環境検出器は、前記ロボットアームの周辺環境による前記関節軸の可動範囲と、前記関節軸の限界可動範囲と、を満足する拘束条件を、前記動作環境として検出する、ことを特徴とするロボット装置。
  4. 請求項1乃至3のうちいずれか1項記載のロボット装置であって、
    前記関節軸の回転位置を検出する位置検出センサを更に備え、
    前記評価関数最小値演算部は、前記評価関数が最小値となるときの前記肩関節軸及び肘関節軸の回転位置を独立軸位置指令値として算出し、
    前記ロボット制御装置は、前記位置検出センサにより検出された前記肩関節軸及び肘関節軸の回転位置が前記評価関数最小値演算部により算出された前記独立軸位置指令値に収束するような、独立軸トルク指令値を算出する軸別フィードバック制御部を更に有する、ことを特徴とするロボット装置。
  5. 請求項4記載のロボット装置であって、
    前記ロボット制御装置は、前記複数のアクチュエータの相対的な重要度を示すアクチュエータ別重みを算出するアクチュエータ別重み演算部を更に有し、
    前記軸別フィードバック制御部は、前記アクチュエータ別重み演算部により算出された前記アクチュエータ別重みに比例して、前記肩関節軸及び肘関節軸に対する制御ゲインを算出し、該算出した制御ゲインを用いて、前記独立軸トルク指令値を算出する独立軸制御部を有する、ことを特徴とするロボット装置。
  6. 請求項4又は5記載のロボット装置であって、
    前記軸別フィードバック制御部は、
    前記位置検出センサにより検出された前記手首関節軸の回転位置と、動作目標生成器により設定された前記動作目標と、に基づいて、従属軸位置指令値を算出する従属軸位置指令生成部と、
    前記アクチュエータ別重み演算部により算出された前記アクチュエータ別重みに比例して、前記手首関節軸に対する制御ゲインを算出し、該算出した制御ゲインを用いて、前記従属軸トルク指令値を算出する従属軸制御部と、を更に有する、ことを特徴とするロボット装置。
  7. 請求項5又は6記載のロボット装置であって、
    前記ロボット制御装置は、前記独立軸制御部により算出された前記独立軸トルク指令値、又は、前記従属軸制御部により算出された前記従属軸トルク指令値、に基づいて、前記アクチュエータを制御するトルク制御部を更に有する、ことを特徴とするロボット装置。
  8. 請求項1乃至のうちいずれか1項記載のロボット装置であって、
    前記評価関数最小値演算部は、前記評価関数の最小値を数値探索法により算出する、ことを特徴とするロボット装置。
  9. 請求項1乃至のうちいずれか1項記載のロボット装置であって、
    前記評価関数最小値演算部は、前記評価関数の極値、および評価関数の所定区間における端の値、のうち最小となる値を、前記評価関数の最小値とする、ことを特徴とするロボット装置。
  10. 請求項1乃至のうちいずれか1項記載のロボット装置であって、
    前記評価関数最小値演算部は、乱数によって選択した初期パラメータの周囲で最も小さい値をとる点を前記評価関数の最小値の候補とする、ことを特徴とするロボット装置。
  11. 体幹部に肩関節軸を介して連結された上腕部と、該上腕部に肘関節軸を介して連結された前腕部と、該前腕部に手首関節軸を介して連結されたハンド部と、を有するロボットアームと、前記ロボットアームの関節軸を駆動する複数のアクチュエータと、を備えるロボット装置の制御方法であって、
    前記アクチュエータに対するトルク指令の2乗の和の関数である評価関数に基づいて、前記アクチュエータの駆動を制御するロボット制御工程を含み、
    前記ロボット制御工程は、前記評価関数の最小値を算出するための評価関数最小値演算工程を含み、
    前記ロボット制御工程において、前記評価関数最小値演算工程で算出される前記評価関数の値が最小となるように、前記アクチュエータの駆動を制御し、
    前記前腕部の延長線と前記ハンド部とが成す角度を示す前記手首関節軸の回転位置θ 、前記体幹部と前記上腕部とが成す角度を示す前記肩関節軸の回転位置θ 、及び、前記上腕部の延長線と前記前腕部との成す角度を示す前記肘関節軸の回転位置θ を含む下記従属関係式である動作目標を設定する動作目標生成工程を更に含み、
    前記評価関数最小値演算工程において、
    前記動作目標生成工程で設定された前記動作目標の従属関係式において、前記ロボットアームの複数の関節軸を、独立変数として表わされる前記肩関節軸の回転位置θ 及び肘関節軸の回転位置θ と、該肩関節軸の回転位置θ 及び肘関節軸の回転位置θ に従動し前記従属関係式において従属変数として表わされる前記手首関節軸の回転位置θ と、に分類し、
    前記肩関節軸の回転位置θ 及び肘関節軸の回転位置θ のみを変数とした前記評価関数の最小値を算出する、
    ことを特徴とするロボット装置の制御方法。
    但し、前記従属関係式は、θ =π/2−θ −θ である。
  12. 請求項11記載のロボット装置の制御方法であって、
    前記ロボットアームの動作環境を検出する動作環境検出工程を更に含み、
    前記評価関数最小値演算工程において、前記動作環境検出工程で検出された前記動作環境と、前記動作目標生成工程で設定された前記動作目標と、に基づいて、前記評価関数の最小値を算出する、ことを特徴とする、ロボット装置の制御方法。
  13. 請求項11又は12記載のロボット装置の制御方法であって、
    前記関節軸の回転位置を検出する位置検出工程を更に含み、
    前記評価関数最小値演算工程において、前記評価関数が最小値となるときの前記肩関節軸及び肘関節軸の回転位置を独立軸位置指令値として算出し、
    前記ロボット制御工程は、前記位置検出工程で検出された前記肩関節軸及び肘関節軸の回転位置が前記評価関数最小値演算工程で算出された前記独立軸位置指令値に収束するような、独立軸トルク指令値を算出する軸別フィードバック制御工程を更に含む、ことを特徴とするロボット装置の制御方法。
  14. 請求項13記載のロボット装置の制御方法であって、
    前記ロボット制御工程は、前記複数のアクチュエータの相対的な重要度を示すアクチュエータ別重みを算出するアクチュエータ別重み演算工程を更に含み、
    前記軸別フィードバック制御工程は、前記アクチュエータ別重み演算工程で算出された前記アクチュエータ別重みに比例して、前記肩関節軸及び肘関節軸に対する制御ゲインを算出し、該算出した制御ゲインを用いて、前記独立軸トルク指令値を算出する独立軸制御工程を含む、ことを特徴とするロボット装置の制御方法。
  15. 請求項13又は14記載のロボット装置の制御方法であって、
    前記軸別フィードバック制御工程は、
    前記位置検出工程で検出された前記手首関節軸の回転位置と、動作目標生成工程で設定された前記動作目標と、に基づいて、従属軸位置指令値を算出する従属軸位置指令生成工程と、
    前記アクチュエータ別重み演算工程で算出された前記アクチュエータ別重みに比例して、前記手首関節軸に対する制御ゲインを算出し、該算出した制御ゲインを用いて、前記従属軸トルク指令値を算出する従属軸制御工程と、を更に含む、ことを特徴とするロボット装置の制御方法。
JP2009058334A 2009-03-11 2009-03-11 ロボット装置及びその制御方法 Expired - Fee Related JP4947073B2 (ja)

Priority Applications (5)

Application Number Priority Date Filing Date Title
JP2009058334A JP4947073B2 (ja) 2009-03-11 2009-03-11 ロボット装置及びその制御方法
EP10710438.2A EP2406041B1 (en) 2009-03-11 2010-03-10 Robot apparatus and control method therefor
PCT/IB2010/000574 WO2010103399A1 (en) 2009-03-11 2010-03-10 Robot apparatus and control method therefor
CN201080011887.4A CN102348541B (zh) 2009-03-11 2010-03-10 机器人设备及其控制方法
US13/255,775 US8818559B2 (en) 2009-03-11 2010-03-10 Robot apparatus and control method therefor

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2009058334A JP4947073B2 (ja) 2009-03-11 2009-03-11 ロボット装置及びその制御方法

Publications (2)

Publication Number Publication Date
JP2010207986A JP2010207986A (ja) 2010-09-24
JP4947073B2 true JP4947073B2 (ja) 2012-06-06

Family

ID=42286722

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2009058334A Expired - Fee Related JP4947073B2 (ja) 2009-03-11 2009-03-11 ロボット装置及びその制御方法

Country Status (5)

Country Link
US (1) US8818559B2 (ja)
EP (1) EP2406041B1 (ja)
JP (1) JP4947073B2 (ja)
CN (1) CN102348541B (ja)
WO (1) WO2010103399A1 (ja)

Families Citing this family (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5383911B2 (ja) * 2010-06-22 2014-01-08 株式会社東芝 ロボット制御装置
JPWO2013027250A1 (ja) * 2011-08-19 2015-03-05 株式会社安川電機 ロボットシステム、ロボット及びロボット制御装置
JP5810844B2 (ja) * 2011-11-02 2015-11-11 トヨタ自動車株式会社 アシストロボット制御装置
KR101828452B1 (ko) * 2012-01-05 2018-02-12 삼성전자주식회사 서보 제어 장치 및 그 제어 방법
KR102188100B1 (ko) * 2013-03-15 2020-12-07 삼성전자주식회사 로봇 및 그 제어방법
JP5835254B2 (ja) * 2013-03-15 2015-12-24 株式会社安川電機 ロボットシステム、及び、ロボットシステムの制御方法
CN104275695A (zh) * 2013-07-04 2015-01-14 上海高威科电气技术有限公司 柔性工业机器人
US9998332B2 (en) * 2013-11-15 2018-06-12 Massachusetts Institute Of Technology Signal-flow architecture for cooperative control and resource allocation
JP6396718B2 (ja) * 2014-08-21 2018-09-26 株式会社ダイヘン トルク算出装置
CN106983589B (zh) * 2017-04-07 2018-07-31 河北工业大学 一种基于干扰观测器的主动型膝上假肢终端滑模控制方法
WO2019037124A1 (zh) * 2017-08-25 2019-02-28 深圳市得道健康管理有限公司 人工智能终端及其行为控制方法
DE102017011130B4 (de) * 2017-12-01 2021-03-04 Kuka Deutschland Gmbh Verfahren und System zum Steuern eines Roboters
CN112566756A (zh) 2018-08-10 2021-03-26 Abb瑞士股份有限公司 用于控制机器人的运动的方法
JP7136729B2 (ja) * 2019-03-20 2022-09-13 ファナック株式会社 ロボットを用いて負荷の重量及び重心位置を推定するための装置、方法、プログラム、制御装置及びロボットシステム
CN110109353B (zh) * 2019-04-17 2022-01-11 杭州电子科技大学 一种反作用轮平衡自行车机器人模糊自适应滑模控制系统

Family Cites Families (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6337552B1 (en) * 1999-01-20 2002-01-08 Sony Corporation Robot apparatus
US5078140A (en) * 1986-05-08 1992-01-07 Kwoh Yik S Imaging device - aided robotic stereotaxis system
JPH03283650A (ja) 1990-03-30 1991-12-13 Toshiba Corp 気密封止モジュール
JP3283650B2 (ja) * 1993-07-05 2002-05-20 ファナック株式会社 ロボット制御装置
JPH07129210A (ja) * 1993-11-05 1995-05-19 Hitachi Ltd 多軸機構の質量配分決定法,加減速特徴パラメ−タ決定法,質量配分・加減速特徴パラメ−タ同時決定法,前記質量配分決定法に基づく質量配分を有する付加質量装着ロボット及び特定質量配分具備ロボット
JPH08257957A (ja) 1995-03-20 1996-10-08 Tokico Ltd 工業用ロボットの制御方法
EP2362283B1 (en) * 1997-09-19 2015-11-25 Massachusetts Institute Of Technology Robotic apparatus
US6714839B2 (en) * 1998-12-08 2004-03-30 Intuitive Surgical, Inc. Master having redundant degrees of freedom
JP3473834B2 (ja) * 1999-11-29 2003-12-08 株式会社安川電機 ロボットの制御装置
US20020104061A1 (en) * 2000-12-01 2002-08-01 Sun Microsystems, Inc. Systems and methods for linear minimal convolution
JP3972854B2 (ja) * 2003-04-10 2007-09-05 ソニー株式会社 ロボットの運動制御装置
JP4735795B2 (ja) * 2003-12-26 2011-07-27 独立行政法人 宇宙航空研究開発機構 冗長マニピュレータの制御方法
US8160743B2 (en) * 2005-08-16 2012-04-17 Brainlab Ag Anthropomorphic medical robot arm with movement restrictions
EP1870211B1 (en) * 2006-06-22 2019-02-27 Honda Research Institute Europe GmbH Method for controlling a robot by assessing the fitness of a plurality of simulated behaviours
JP2008073830A (ja) 2006-09-25 2008-04-03 Fanuc Ltd ロボット制御装置
JP5109573B2 (ja) * 2007-10-19 2012-12-26 ソニー株式会社 制御システム及び制御方法、並びにロボット装置
CN101332604B (zh) * 2008-06-20 2010-06-09 哈尔滨工业大学 人机相互作用机械臂的控制方法

Also Published As

Publication number Publication date
CN102348541B (zh) 2014-09-03
JP2010207986A (ja) 2010-09-24
US8818559B2 (en) 2014-08-26
CN102348541A (zh) 2012-02-08
US20120004775A1 (en) 2012-01-05
WO2010103399A1 (en) 2010-09-16
EP2406041B1 (en) 2013-05-01
EP2406041A1 (en) 2012-01-18

Similar Documents

Publication Publication Date Title
JP4947073B2 (ja) ロボット装置及びその制御方法
Li et al. Adaptive human–robot interaction control for robots driven by series elastic actuators
JP6314426B2 (ja) ロボット制御装置およびロボット制御方法
JP5695223B2 (ja) ロボット、ロボットの制御装置、制御方法、及び制御プログラム
JP5895628B2 (ja) ロボットの制御方法及びロボット制御装置、並びにロボット制御システム
US8874263B2 (en) Walking robot and control method thereof
JP5154712B2 (ja) ロボットの制御装置及び制御方法、ロボット、並びに、制御プログラム
JP5327722B2 (ja) ロボットの負荷推定装置及び負荷推定方法
JP4896276B2 (ja) ロボット、ロボットの制御装置、制御方法、及び制御プログラム
Kim et al. Position-based impedance control for force tracking of a wall-cleaning unit
JP2001525734A (ja) 自動機械を直接指令するための方法及び装置
Karayiannidis et al. “Open sesame!” adaptive force/velocity control for opening unknown doors
JP2014155985A (ja) ロボット、ロボットの制御装置、制御方法、及び制御プログラム
JP2016064454A (ja) 移動ロボットの制御装置
Zuo et al. Sensorless external force detection method for robot arm based on error compensation using BP neural network
Plius et al. Fuzzy controller scheduling for robotic manipulator force control
Kawamura et al. Encoderless robot motion control using vision sensor and back electromotive force
US20230052996A1 (en) Method of obtaining vibrational properties of robot arm
Na et al. Adaptive impedance control of a haptic teleoperation system for improved transparency
JP2013226619A (ja) ロボット制御方法及びロボット制御装置
Zuo et al. Sensorless external force detection method for humanoid robot arm based on BP neural network
JP2019214105A (ja) ロボット制御装置およびロボット制御方法
Ishihara et al. Force sensorless power assist control using operation force observer for nursing lift
Alinia et al. Posture control of 3-DOF parallel manipulator using feedback linearization and model reference adaptive control
Winiarski et al. Safe strategy of door opening with impendance controlled manipulator

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20101216

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20101221

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20110209

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20110823

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20111118

A911 Transfer to examiner for re-examination before appeal (zenchi)

Free format text: JAPANESE INTERMEDIATE CODE: A911

Effective date: 20111125

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20120207

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20120220

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20150316

Year of fee payment: 3

R151 Written notification of patent or utility model registration

Ref document number: 4947073

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20150316

Year of fee payment: 3

LAPS Cancellation because of no payment of annual fees