JP6818708B2 - マニピュレータシステム、制御装置、制御方法、およびプログラム - Google Patents

マニピュレータシステム、制御装置、制御方法、およびプログラム Download PDF

Info

Publication number
JP6818708B2
JP6818708B2 JP2018035731A JP2018035731A JP6818708B2 JP 6818708 B2 JP6818708 B2 JP 6818708B2 JP 2018035731 A JP2018035731 A JP 2018035731A JP 2018035731 A JP2018035731 A JP 2018035731A JP 6818708 B2 JP6818708 B2 JP 6818708B2
Authority
JP
Japan
Prior art keywords
manipulator
target point
actuator
control
control device
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.)
Active
Application number
JP2018035731A
Other languages
English (en)
Other versions
JP2019150895A (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.)
Toshiba Corp
Original Assignee
Toshiba 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 Toshiba Corp filed Critical Toshiba Corp
Priority to JP2018035731A priority Critical patent/JP6818708B2/ja
Priority to US16/107,183 priority patent/US11312011B2/en
Publication of JP2019150895A publication Critical patent/JP2019150895A/ja
Application granted granted Critical
Publication of JP6818708B2 publication Critical patent/JP6818708B2/ja
Active 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/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/1674Programme controls characterised by safety, monitoring, diagnostic
    • B25J9/1676Avoiding 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/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/1694Programme controls characterised by use of sensors other than normal servo-feedback from position, speed or acceleration sensors, perception control, multi-sensor controlled systems, sensor fusion
    • B25J9/1697Vision controlled systems
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Robotics (AREA)
  • Mechanical Engineering (AREA)
  • Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Automation & Control Theory (AREA)
  • Manipulator (AREA)

Description

実施形態は、マニピュレータシステム、制御装置、制御方法、およびプログラムに関する。
従来、エンドエフェクタを目標位置に移動させるマニピュレータシステムが知られている。
特開2012−11498号公報
この種のマニピュレータシステムでは、例えば、障害物を回避しながら移動することが可能なより改善されたマニピュレータシステムが得られれば、有意義である。
実施形態のマニピュレータシステムは、マニピュレータと、マニピュレータを作動させるアクチュエータと、マニピュレータが障害物を避けながら移動するようアクチュエータを制御する制御装置と、を備える。制御装置は、マニピュレータの第一対象点の移動速度ベクトルと障害物の表面の第二対象点での法線ベクトルとの角度が90°以内となるよう、アクチュエータを制御する。
図1は、実施形態のマニピュレータの模式的かつ例示的な構成図である。 図2は、実施形態の制御装置の模式的かつ例示的なブロック図である。 図3は、実施形態の制御装置による制御手順を示す模式的かつ例示的なフローチャートである。 図4は、第1実施形態のアクチュエータ制御部によるアクチュエータの制御によって移動するマニピュレータの位置および姿勢の経時変化を示す模式的かつ例示的な図である。 図5は、第1実施形態の第1変形例の制御装置の模式的かつ例示的なブロック図である。 図6は、第2実施形態の制御装置の模式的かつ例示的なブロック図である。 図7は、第3実施形態の制御装置の模式的かつ例示的なブロック図である。
以下、マニピュレータシステムの例示的な実施形態が開示される。以下に示される実施形態の構成や制御(技術的特徴)、ならびに当該構成や制御によってもたらされる作用および結果(効果)は、一例である。
また、以下の実施形態および変形例には、同様の構成要素が含まれている。以下では、それら同様の構成要素には共通の符号が付与されるとともに、重複する説明が省略される場合がある。また、本明細書において、序数は、構成要素等を区別するために便宜上付与されており、優先順位や順番を示すものではない。
[第1実施形態]
[マニピュレータシステム]
図1は、マニピュレータ10の構成図である。マニピュレータ10は、図1には不図示の制御装置20(図2参照)とともに、マニピュレータシステム100を構成している。マニピュレータ10は、ロボットアームとも称されうる。
マニピュレータ10は、複数のアーム11が関節12において回動可能に連結された所謂多関節アームとして構成されている。制御装置20は、図1には不図示のアクチュエータ14(図2参照)の作動を制御することにより、各関節12における二つのアーム11の角度を変化させ、これによりマニピュレータ10の位置や姿勢を変化させる。関節12は、例えば、回転関節や、ボールジョイント等である。なお、マニピュレータ10は、直動関節を含んでもよい。
マニピュレータ10は、その先端に、エンドエフェクタ13を有している。制御装置20による制御対象点Pcは、例えば、エンドエフェクタ13上に設定される。
制御装置20は、制御対象点Pcが所定の位置や姿勢となるよう、アクチュエータ14を制御する。なお、制御対象点Pcは、一点でもよいし、複数点でもよいし、エンドエフェクタ13上に設定されなくてもよい。
アクチュエータ14は、少なくとも一つの関節12における二つのアーム11の角度を変化させる。アクチュエータ14は、制御装置20が生じる電気的な制御信号によって駆動される。アクチュエータ14は、例えば、モータや、人工筋肉等である。
また、制御装置20は、詳細には後述するが、マニピュレータ10が障害物30と干渉しないよう、言い換えると、干渉回避の制約条件を満たすよう、アクチュエータ14を制御する。本実施形態では、制御装置20は、マニピュレータ10の第一対象点Ppの移動速度ベクトルdx/dtと、障害物30の表面31の第二対象点Prでの法線ベクトルnと、の角度が90°以内となるよう、アクチュエータ14を制御する。これにより、第一対象点Ppが第二対象点Prおよび表面31に近付くのを抑制することができ、ひいては、マニピュレータ10が障害物30と接触するのを抑制することができる。干渉回避の制約条件は、第一制約条件の一例である。
第一対象点Ppおよび第二対象点Prは、干渉回避の制約条件を設定する対象となる点であり、例えば、障害物30とマニピュレータ10との相対的な位置や姿勢に基づいて設定されうる。第一対象点Ppとしては、例えば、エンドエフェクタ13上の点や、関節12上の点が選択されうる。また、第一対象点Ppとして、例えば、いずれかのアーム11の両端間の中間位置、言い換えるとアーム11を挟む二つの関節12間の中央位置が、選択されてもよい。
また、第一対象点Ppとしては、一点が選択されてもよいし、複数点が選択されてもよい。また、第一対象点Ppとしては、一例としては、障害物30と干渉する確率の高い点が選択され、制御対象点Pcとは必ずしも一致しない。第二対象点Prは、表面31上の一点が選択されてもよいし、表面31上の複数点が選択されてもよい。なお、図1では、第一対象点Ppと第二対象点Prとが接した状態で描かれているが、実際の干渉回避制御では、制御装置20は、第一対象点Ppと第二対象点Prとが接しないよう、アクチュエータ14を制御する。この場合、第一対象点Ppと第二対象点Prとがより確実に接触しないための第一対象点Ppと第二対象点Prとの距離のマージンや第一対象点Ppと第二対象点Prとの距離の下限値等の距離条件が設定されてもよい。また、障害物30を表面31から距離のマージンに相当する高さだけ膨張させた仮想障害物に対して距離が0以上となる距離条件が設定されてもよい。
[制御装置および制御方法]
図2は、制御装置20のブロック図である。図2に示されるように、制御装置20は、目標取得部21、障害物情報取得部22、マニピュレータ情報取得部23、およびアクチュエータ制御部24を有している。
目標取得部21は、制御対象点Pcの目標情報を取得する。目標情報は、例えば、制御対象点Pcの次のステップ(タイムステップ)における速度や角速度等である。目標情報は、例えば、予め設定されており、その場合、目標取得部21は、制御装置20が有している不図示の記憶部から、目標情報を取得することができる。
障害物情報取得部22は、マニピュレータ10が動作する範囲内において、避けるべき障害物30の障害物情報を取得する。障害物情報は、例えば、障害物30の表面31の位置や形状等を示す情報である。障害物情報取得部22は、RGB−Dセンサや、カメラ、接触センサ、距離センサのような障害物センサ15から、障害物情報を取得することができる。また、障害物情報取得部22は、予め既知の障害物情報を持つデータベースや、LIDAR(light detection and ranging、laser imaging detection and ranging)等から、障害物情報を取得してもよい。
マニピュレータ情報取得部23は、マニピュレータ情報を取得する。マニピュレータ情報は、例えば、マニピュレータ10の位置や姿勢を示す情報であって、例えば、各関節12における角度である。マニピュレータ情報取得部23は、ロータリエンコーダや、カメラ、角度センサ、距離センサのようなマニピュレータセンサ16から、マニピュレータ情報を取得することができる。
アクチュエータ制御部24は、目標情報、障害物情報、およびマニピュレータ情報に基づいて、マニピュレータ10と障害物30とが干渉しないことを制約条件として制御対象点Pcの目標情報に対する移動の最適解を算出する。そして、アクチュエータ制御部24は、当該最適解に沿ってマニピュレータ10が移動するよう、アクチュエータ14を制御する。
図3は、制御装置20による制御手順を示すフローチャートである。図3に示されるように、制御装置20にあっては、目標取得部21が目標情報を取得し(S10)、障害物情報取得部22が障害物情報を取得し(S11)、マニピュレータ情報取得部23がマニピュレータ情報を取得する(S12)。図3のフローにおいて、S10〜S12の順番は入れ替わってもよい。そして、アクチュエータ制御部24が、干渉回避の制約条件下で制御対象点Pcの目標情報に対する移動の最適解を算出し(S13)、当該最適解に沿ってマニピュレータ10が移動するようアクチュエータを制御する(S14)。
制御装置20による演算処理や制御は、ソフトウエアによって実行されてもよいし、ハードウエアによって実行されてもよい。また、制御装置20による演算処理や制御には、ソフトウエアによる演算処理や制御とハードウエアによる演算処理や制御とが含まれてもよい。ソフトウエアによる処理の場合にあっては、制御装置20は、ROMや、HDD、SSD、フラッシュメモリ等の記録媒体(記憶媒体)に記憶されたプログラム(アプリケーション)を読み出して実行する。制御装置20は、プログラムにしたがって作動することにより、制御装置20に含まれる各部、すなわち、目標取得部21や、障害物情報取得部22、マニピュレータ情報取得部23、アクチュエータ制御部24等として、機能する。この場合、プログラムには、上記各部に対応するモジュールが含まれる。
プログラムは、それぞれインストール可能な形式または実行可能な形式のファイルでCD−ROMや、FD、CD−R、DVD、USBメモリ等の、コンピュータで読み取り可能な記録媒体に記録されて提供されうる。また、プログラムは、通信ネットワークに接続されたコンピュータの記憶部に記憶され、ネットワーク経由でダウンロードされることによって導入されうる。また、プログラムは、ROM等に予め組み込まれてもよい。
また、制御装置20の少なくとも一部がハードウエアによって構成される場合、当該制御装置20には、例えば、field programmable gate array(FPGA)や、application specific integrated circuit(ASIC)等が含まれうる。
[制約条件付きの最適化問題]
次に、アクチュエータ制御部24が実行する演算処理および制御について説明する。
マニピュレータ10の自由度をnとし、マニピュレータ10の自由度を示す各関節角度をベクトルq=[q,q,q,…,qで表現する。
目標取得部21から得られる制御対象点Pcの次のステップにおける目標速度をvcとする。これは、制御対象点Pcにおける三次元的な位置を決定する速度ベクトルと制御対象点Pcの姿勢を決定する角速度と、を有する。障害物30を考えない場合、制御対象点Pcにおけるヤコビ行列Jc(q)を含む次の式(1)
Figure 0006818708
を用いることにより、演算処理の3次元空間から関節角空間への変換が可能となる。ここに、
Figure 0006818708
は関節角速度を表すベクトルであり、J(q)はJ(q)の擬似逆行列(ヤコビ行列が正方行列であれば、逆行列)を示す。したがって、制御対象点Pcが目標情報になるべく従うよう移動する最適化問題については、以下の式(2)で表せる最小二乗問題の解を導出すればよい。
Figure 0006818708
なお、制御対象点Pcが複数(k個)存在する場合は、対応するヤコビ行列と目標情報を用いて拡大行列系を以下の式(3)のように構成することで、関節角速度を算出することが可能である。
Figure 0006818708
ヤコビ行列は、マニピュレータ10上の第一対象点Ppの速度、角速度とマニピュレータ10の関節角の変化の関係を表した行列である。あるマニピュレータ10上の点a(三次元座標をxとおく)におけるヤコビ行列Jは、次の式(4)
Figure 0006818708
のように表せる。ここに、関節qにおける回転軸のベクトルをzと、関節の中心座標をrとおいた。このヤコビ行列Jにおいて、上の行は位置の関係を表し、下の行は姿勢の関係を表す。
マニピュレータ10上の第一対象点Ppと、障害物30上の第二対象点Prとの距離が下限値に近い場合にあっては、マニピュレータ10は次の動作で障害物30を回避する必要がある。障害物30との距離は、障害物情報とマニピュレータ情報中の関節角度より算出することができる。また、障害物情報より、障害物30上の第二対象点Prにおける外向きの法線ベクトルnが得られているものとする。
なお、干渉回避の制約条件の演算処理は、最も距離が近い点あるいは最も距離が近付くことが予測される二点(第一対象点Ppおよび第二対象点Pr)あるいはそのような二点の複数の組み合わせについて実行されうる。演算処理の対象となる第一対象点Ppおよび第二対象点Prの選定や、その選定の判断基準となる第一対象点Ppと第二対象点Prとの距離の算出は、マニピュレータ10のアーム11や障害物30の円筒や直方体などの計算しやすい形状に近似した上で算出する、Boblow法、Lin/Canny法、Gilbert法などの公知の衝突判定手法を用いて、実行することができる。
第一対象点Ppの次のステップにおける位置速度ベクトル
Figure 0006818708
と、障害物30の表面31の第二対象点Prにおける法線ベクトルnとの内積は、次の式(5)で表せる。
Figure 0006818708
ここに、αは、二つのベクトルのなす角度である。αが−90°以上でありかつ90°以下の範囲であれば、第一対象点Ppは、障害物30の無い方向に移動すると考えることができる。言い換えると、次の式(6)
Figure 0006818708
が満たされれば、次のステップにおいて、第一対象点Ppは第二対象点Prとは接触せず、この部位においてマニピュレータ10は障害物30とは干渉しない。ここに、JBp(q)は、3×nのマニピュレータ10上の第一対象点Ppにおける位置のみを対象にしたヤコビ行列である。
なお、第一対象点Ppおよび第二対象点Prの複数(m個)の組み合わせについて演算する場合、以下の式(7)のような拡大行列を用いればよい。
Figure 0006818708
アクチュエータ制御部24は、式(6)で示される干渉回避の制約条件を満たしつつ、式(2)で示される制御対象点Pcの目標情報に対する移動の最適解を算出する。すなわち、アクチュエータ制御部24は、以下の式(8)で示されるような、制約条件付きの線形最小二乗問題の最適解を算出する。
Figure 0006818708
このような、制約条件付き線形最小二乗問題は、内点法、有効制約法などにより高速に解くことが可能である。また、制約条件には、関節角度の上下限、関節角速度の上下限などを加えることも可能であり、かかる手法は、拡張性が高い手法であると言える。
図4は、アクチュエータ制御部24によるアクチュエータ14の制御によって移動するマニピュレータ10の位置および姿勢の経時変化を示す図である。図4を参照すれば、エンドエフェクタ13上に設定された制御対象点Pcが目標情報になるべく従うように軌跡Ptに沿って移動する際、マニピュレータ10が全体的に第二対象点Prから距離δ(マージン)だけ離間した状態で、すなわち第二対象点Prと干渉しない状態で移動していることが、理解できよう。なお、図4の例では、第一対象点Ppも、エンドエフェクタ13上に設定されている。第三対象点Pbは、第二対象点Prから距離δだけ表面31の外方に突出した仮想的な対象点(仮想的な障害物の表面)であり、アクチュエータ制御部24は、仮想的な障害物の表面上の第三対象点Pbとの距離が0以上あるいは0より大きいとする制約条件下で、上記最適化問題を解くことができる。
以上、説明したように、本実施形態では、制御装置20は、マニピュレータ10の第一対象点Ppの移動速度ベクトルと障害物30の表面31の第二対象点Prでの法線ベクトルとの角度が90°以内となるよう、アクチュエータ14を制御する。このような構成によれば、制御装置20は、例えば、障害物30と干渉することなく、マニピュレータ10を動作させることができる。
また、本実施形態では、制御装置20は、第一対象点Ppにおけるヤコビ行列と表面31の第二対象点Prでの法線ベクトルとに基づいて、移動速度ベクトルと法線ベクトルとの内積を0以上とする第一制約条件を含む制約条件付きの、マニピュレータ10の制御対象点Pcの目標動作の最適化問題を解くことにより、アクチュエータ14を制御する。このような構成によれば、制御装置20は、例えば、障害物30と干渉することなく、かつ制御対象点Pcがその目標情報にできるだけ従って移動するよう、マニピュレータ10を動作させることができる。
また、本実施形態では、最適化問題は、予め定められた制御対象点Pcの目標動作に対してアクチュエータ14の作動を最適化する問題である。本実施形態によれば、制御装置20は、制約条件を満たしつつ、制御対象点Pcが予め定められた目標情報にできるだけ従って移動するよう、マニピュレータ10を動作させることができる。
[第1変形例]
図5は、本変形例の制御装置20Aのブロック図である。本変形例のマニピュレータシステム100Aでは、制御装置20Aのマニピュレータ情報取得部23は、アクチュエータ制御部24の演算処理結果からマニピュレータ情報を取得する。具体的には、マニピュレータ情報取得部23は、アクチュエータ制御部24から、当該アクチュエータ制御部24が算出した各関節12の角速度を取得し、当該角速度を積分することにより、各関節12の角度を取得することができる。
よって、本変形例によれば、マニピュレータセンサ16が無くより簡素な構成のマニピュレータシステム100Aによって、上記第1実施形態と同様の効果を得ることができる。
[第2実施形態]
図6は、本実施形態の制御装置20Bのブロック図である。本実施形態のマニピュレータシステム100Bでは、制御装置20Bは、カメラ17の画像に基づくビジュアルサーボ制御によって、制御対象点Pcを目標位置に移動させる。このため、制御装置20Bは、画像取得部25、特徴量算出部26、およびビジュアルサーボ制御部27を有している。
カメラ17は、光電変換素子や光学系部品等を有した画像センサであり、例えば、エリアセンサや、RGB−Dセンサ等である。カメラ17は、例えば、マニピュレータ10のエンドエフェクタ13か、あるいはエンドエフェクタ13と固定された部位に取り付けられる。
画像取得部25は、カメラ17から、目標物を撮影した画像を取得する。
特徴量算出部26は、画像取得部25で取得された画像データから画像処理により対象物の特徴を示す特徴量を算出する。
ビジュアルサーボ制御部27は、主として以下の方程式(9)を解くことにより、制御対象点Pcの速度、加速度を表すベクトルvを算出する。
Lv=−λe ・・・(9)
ここに、Lは、画像ヤコビ行列であり、eは、ビジュアルサーボを用いて最小化する偏差であり、λは安定性を確保するための正のスカラーである。
ビジュアルサーボ制御の手法としては、特徴量ベース手法と、位置ベース手法とがある。まずは特徴量ベース手法について説明する。
[特徴量ベース手法]
特徴量ベース手法においては、画像上の特徴量Xの座標が[x,y]で表されるとき、特徴量Xに対する画像ヤコビ行列Lおよび偏差eは、次の式(10)で表される。
Figure 0006818708
ここに、[x,yは、特徴量Xの目標とする座標であり、Zは深さを表すパラメータである。Zは未知の値であるが、その推定方法は公知であり、また精度がそれほど高くない場合にあっても制御の安定性が損なわれ難いことが知られている。複数の特徴量を用いてLおよびeを縦に並べた拡大形の画像ヤコビ行列Lおよび偏差eを用いることにより、画像ヤコビ行列Lの疑似逆行列を求め、ベクトルvを算出する。
[位置ベース手法]
位置ベース手法においては、画像特徴量より制御対象点Pcの目標となる位置と姿勢を算出し、現在の位置、姿勢との差を最小化する制御対象点Pcの速度、角速度が算出される。位置偏差をt、姿勢偏差をRとすれば、画像ヤコビ行列Lおよび偏差eは、以下の式(11)で表される。
Figure 0006818708
ここに、θおよびuは、姿勢偏差Rを回転軸uおよび回転角θで表したベクトルであり、Iは、3次元の単位行列であり、u[x]は、uの外積行列であり、sinc(x)=sin(x)/xである。姿勢偏差Rおよび位置偏差tは、特徴量から基礎行列やホモグラフィ行列を推定することにより算出可能である。
アクチュエータ制御部24は、ビジュアルサーボ制御部27から受け取った次のステップにおける制御対象点Pcの位置を目標情報として、上記第1実施形態と同様に、制約条件付きの線形最小二乗問題の最適解を算出し、マニピュレータ10が当該最適解を満たす位置および姿勢となるよう、アクチュエータ14を制御する。
以上、説明したように、本実施形態では、最適化問題は、ビジュアルサーボ制御における制御対象点Pcの目標動作に対してアクチュエータ14の作動を最適化する問題である、本実施形態によれば、制御装置20Bは、制約条件を満たしつつ、制御対象点Pcがビジュアルサーボによって得られた目標情報にできるだけ従って移動するよう、マニピュレータ10を動作させることができる。
[第3実施形態]
図7は、本実施形態の制御装置20Cのブロック図である。本実施形態のマニピュレータシステム100Cでは、制御装置20Cは、カメラ17の画像に基づくビジュアルサーボ制御によって、制御対象点Pcを目標位置に移動させる。ただし、アクチュエータ制御部24は、干渉回避の制約条件を満たしながらビジュアルサーボ制御も含む演算処理を実行し、当該演算処理結果に応じて作動するようアクチュエータ14を制御する。アクチュエータ制御部24は、ビジュアルサーボ制御によるタスクと、干渉回避制御(干渉回避の制約条件)によるタスクと、を実行する。ビジュアルサーボ制御によるタスクをビジュアルサーボタスクと称し、干渉回避制御によるタスクを干渉回避タスクと称する。
ビジュアルサーボタスクでは、アクチュエータ制御部24は、主として以下の方程式(9)を解くことにより、制御対象点Pcの速度、加速度を表すベクトルvを算出する。
Lv=−λe ・・・(9)
よって、以下の式(12)で表せる最小二乗問題の解を導出すればよい。
Figure 0006818708
したがって、アクチュエータ制御部24は、以下の式(13)で示されるような、制約条件付きの線形最小二乗問題の最適解を算出する。
Figure 0006818708
すなわち、アクチュエータ制御部24は、ビジュアルサーボタスクと、干渉回避タスクと、を考慮した次の式(14)を解くことにより、各関節12の角速度を算出することができる。
Figure 0006818708
ここに、Iは、単位行列である。
また、アクチュエータ制御部24は、ビジュアルサーボタスクが、制約条件タスクとしての第一ビジュアルサーボタスクと、最適化タスクとしての第二ビジュアルサーボタスクと、を含み、さらに制約条件タスクが、第一ビジュアルサーボタスクの他に干渉回避タスクを含む場合についても、制約条件を満たす最適解を算出し、マニピュレータ10が当該最適解にしたがう動作を実行するようアクチュエータ14を制御することができる。干渉回避タスクにおける制約条件は、第一制約条件の一例であり、第一ビジュアルサーボタスクにおける制約条件は、第二制約条件の一例である。
具体的に、アクチュエータ制御部24は、第一ビジュアルサーボタスクとして、次の式(15)、
=−λ ・・・(15)
を制約条件とする。ここに、Lはl×6行(l<6)の行列であり、このタスクを達成可能な解が複数あるものとする。
この第一ビジュアルサーボタスクは、ある1つの特徴量(座標[x,y])を目標位置(座標[x,y])に一致させようとする特徴量ベース手法により得られる。第一ビジュアルサーボタスクは、以下の式(16)を解くことに相当する。
Figure 0006818708
式(16)で表される第一ビジュアルサーボタスクによれば、例えば、特徴量を対象物の中央にとり、目標位置をカメラの中央に設定すれば、対象物の中央が常にカメラ17の画像の中央に位置されるような制御が実現される。
また、アクチュエータ制御部24は、次の式(17)
Figure 0006818708
で表せる第二ビジュアルサーボタスクの最適解を求める。
ここに、画像ヤコビ行列L、偏差e、およびLθuは、次の式(18)によって与えられる。
Figure 0006818708
よって、アクチュエータ制御部24は、さらに干渉回避タスクを追加した以下の式(19)を解くことにより、マニピュレータ10の各関節12の角速度を算出することができる。
Figure 0006818708
このような構成によれば、制御装置20Cは、障害物30との干渉回避タスクおよび第一ビジュアルサーボタスクを制約条件としながら、制御対象点Pcができるだけ第二ビジュアルサーボタスクに従って移動するよう、マニピュレータ10を動作させることができる。
なお、本実施形態では、最適化タスクは第二ビジュアルサーボタスクであったが、アクチュエータ制御部24は、最小二乗問題もしくは線形拘束で表現される最適化タスクと干渉回避タスクとが組み込まれたタスクを解くことができる。具体的には、例えば、予め定められた位置および姿勢の目標情報に対する最適化タスクを、上記第二ビジュアルサーボタスクと入れ替えることができる。
以上、本発明の実施形態を例示したが、上記実施形態は一例であって、発明の範囲を限定することは意図していない。実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、組み合わせ、変更を行うことができる。実施形態は、発明の範囲や要旨に含まれるとともに、特許請求の範囲に記載された発明とその均等の範囲に含まれる。また、実施形態の構成や形状は、部分的に入れ替えて実施することも可能である。また、各構成や形状等のスペック(構造や、種類、方向、形式、大きさ、長さ、幅、厚さ、高さ、角度、数、配置、位置、材質等)は、適宜に変更して実施することができる。
10…マニピュレータ、11…アーム、12…関節、20…制御装置、30…障害物、31…表面、100…マニピュレータシステム、Pc…制御対象点、Pp…第一対象点、Pr…第二対象点。

Claims (7)

  1. マニピュレータと、
    前記マニピュレータを作動させるアクチュエータと、
    前記マニピュレータが障害物を避けながら移動するよう前記アクチュエータを制御する制御装置と、
    を備え、
    前記制御装置は、前記マニピュレータの第一対象点の移動速度ベクトルと前記障害物の表面の第二対象点での法線ベクトルとの角度が90°以内となるよう、前記アクチュエータを制御し、
    前記マニピュレータは、関節型マニピュレータであり、
    前記制御装置は、前記第一対象点におけるヤコビ行列と前記表面の前記第二対象点での法線ベクトルとに基づいて、前記移動速度ベクトルと前記法線ベクトルとの内積を0以上とする第一制約条件を含む制約条件付きの、前記マニピュレータの制御対象点の目標動作の最適化問題を解くことにより、前記アクチュエータを制御する、
    ニピュレータシステム。
  2. 前記最適化問題は、予め定められた前記制御対象点の目標動作に対して前記アクチュエータの作動を最適化する問題である、前記アクチュエータを制御する、請求項1に記載のマニピュレータシステム。
  3. 前記最適化問題は、ビジュアルサーボ制御における前記制御対象点の目標動作に対して前記アクチュエータの作動を最適化する問題である、請求項1に記載のマニピュレータシステム。
  4. 前記制約条件は、前記制御対象点のビジュアルサーボ制御による第二制約条件を含む、請求項1〜3のうちいずれか一つに記載のマニピュレータシステム。
  5. 請求項1〜4のうちいずれか一つに記載のマニピュレータシステムに含まれる制御装置。
  6. 請求項5に記載の制御装置によってマニピュレータを制御するマニピュレータの制御方法であって、
    前記法線ベクトルを取得し、
    前記移動速度ベクトルと前記法線ベクトルとの角度が90°以内となるよう、前記アクチュエータを制御する、マニピュレータの制御方法。
  7. コンピュータを請求項5に記載の制御装置として機能させるプログラムであって、
    前記法線ベクトルを取得し、
    前記移動速度ベクトルと前記法線ベクトルとの角度が90°以内となるよう、前記アクチュエータを制御する、プログラム。
JP2018035731A 2018-02-28 2018-02-28 マニピュレータシステム、制御装置、制御方法、およびプログラム Active JP6818708B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2018035731A JP6818708B2 (ja) 2018-02-28 2018-02-28 マニピュレータシステム、制御装置、制御方法、およびプログラム
US16/107,183 US11312011B2 (en) 2018-02-28 2018-08-21 Manipulator system, control device, control method, and computer program product

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2018035731A JP6818708B2 (ja) 2018-02-28 2018-02-28 マニピュレータシステム、制御装置、制御方法、およびプログラム

Publications (2)

Publication Number Publication Date
JP2019150895A JP2019150895A (ja) 2019-09-12
JP6818708B2 true JP6818708B2 (ja) 2021-01-20

Family

ID=67684224

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2018035731A Active JP6818708B2 (ja) 2018-02-28 2018-02-28 マニピュレータシステム、制御装置、制御方法、およびプログラム

Country Status (2)

Country Link
US (1) US11312011B2 (ja)
JP (1) JP6818708B2 (ja)

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20210053224A1 (en) 2019-08-23 2021-02-25 Paul Jakob Schroeder Safe operation of machinery using potential occupancy envelopes
US11919173B2 (en) 2019-08-23 2024-03-05 Veo Robotics, Inc. Motion planning and task execution using potential occupancy envelopes
US11830131B2 (en) 2018-02-06 2023-11-28 Veo Robotics, Inc. Workpiece sensing for process management and orchestration
US11156981B2 (en) 2018-08-30 2021-10-26 Veo Robotics, Inc. Systems and methods for automatic sensor registration and configuration
EP3843956A4 (en) 2018-08-30 2021-12-22 Veo Robotics, Inc. SYSTEM IDENTIFICATION OF THE DYNAMICS OF INDUSTRIAL ROBOTS FOR SAFETY CRITICAL APPLICATIONS
US11396101B2 (en) 2018-11-08 2022-07-26 Kabushiki Kaisha Toshiba Operating system, control device, and computer program product
EP3887101A1 (en) 2019-02-27 2021-10-06 Veo Robotics, Inc. System architecture for safety applications
US20220234209A1 (en) 2019-08-23 2022-07-28 Ilya A. Kriveshko Safe operation of machinery using potential occupancy envelopes
US11256241B1 (en) 2019-09-12 2022-02-22 Veo Robotics, Inc. Optimized factory schedule and layout generation

Family Cites Families (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS6234784A (ja) * 1985-08-01 1987-02-14 工業技術院長 移動体の移動制御方法
JPS63150183A (ja) 1986-12-15 1988-06-22 富士通株式会社 ロボツトの運動制御方法
JPH05119823A (ja) 1991-10-24 1993-05-18 Hitachi Ltd ロボツトの軌道計画方法及び制御装置
US5430643A (en) * 1992-03-11 1995-07-04 The United States Of America As Represented By The Administrator Of The National Aeronautics And Space Administration Configuration control of seven degree of freedom arms
US7859540B2 (en) * 2005-12-22 2010-12-28 Honda Motor Co., Ltd. Reconstruction, retargetting, tracking, and estimation of motion for articulated systems
US7849629B1 (en) * 2006-11-15 2010-12-14 Adcock Michael R Automatic fish hook setter apparatus and method
US8396595B2 (en) * 2007-11-01 2013-03-12 Honda Motor Co., Ltd. Real-time self collision and obstacle avoidance using weighting matrix
JP2010069593A (ja) * 2008-09-19 2010-04-02 Mitsubishi Electric Corp 案内面指示装置及び作業補助アーム
JP5228783B2 (ja) * 2008-10-15 2013-07-03 株式会社デンソーウェーブ ロボットの原点復帰装置
JP2012011498A (ja) 2010-06-30 2012-01-19 Toshiba Corp ロボットアーム操作システムおよびその操作方法
JP5487525B2 (ja) * 2011-09-06 2014-05-07 日立Geニュークリア・エナジー株式会社 マニピュレータの制御装置
JP2014018912A (ja) 2012-07-18 2014-02-03 Seiko Epson Corp ロボット制御装置、ロボット制御方法およびロボット制御プログラムならびにロボットシステム
JP2014024162A (ja) * 2012-07-27 2014-02-06 Seiko Epson Corp ロボットシステム、ロボット制御装置、ロボット制御方法及びロボット制御プログラム
US9668768B2 (en) * 2013-03-15 2017-06-06 Synaptive Medical (Barbados) Inc. Intelligent positioning system and methods therefore
JP2015174185A (ja) 2014-03-14 2015-10-05 三菱重工業株式会社 ロボットのシミュレーション装置及び方法、制御装置、及びロボットシステム
GB201601880D0 (en) * 2016-02-02 2016-03-16 Ocado Innovation Ltd Robotic gripping device system and method
JP6743526B2 (ja) * 2016-07-01 2020-08-19 日本電気株式会社 情報処理装置、情報処理方法、及び、プログラム
TW201807523A (zh) * 2016-08-22 2018-03-01 金寶電子工業股份有限公司 移動式機器人的即時導航方法
JP6815309B2 (ja) * 2017-11-16 2021-01-20 株式会社東芝 作動システムおよびプログラム

Also Published As

Publication number Publication date
JP2019150895A (ja) 2019-09-12
US20190262991A1 (en) 2019-08-29
US11312011B2 (en) 2022-04-26

Similar Documents

Publication Publication Date Title
JP6818708B2 (ja) マニピュレータシステム、制御装置、制御方法、およびプログラム
KR101988083B1 (ko) 가동 타겟 오브젝트의 위치 탐색을 위한 시스템 및 방법
EP3377948B1 (en) Facilitating robot positioning
EP2543482B1 (en) Information processing apparatus and information processing method
JP6855492B2 (ja) ロボットシステム、ロボットシステム制御装置、およびロボットシステム制御方法
JP6815309B2 (ja) 作動システムおよびプログラム
US20180141213A1 (en) Anti-collision system and anti-collision method
US11292132B2 (en) Robot path planning method with static and dynamic collision avoidance in an uncertain environment
Hornung et al. Monte Carlo localization for humanoid robot navigation in complex indoor environments
Zhang et al. 3D perception for accurate row following: Methodology and results
Bischoff et al. Fusing vision and odometry for accurate indoor robot localization
JP7063760B2 (ja) 移動体
CN111612794A (zh) 基于多2d视觉的零部件高精度三维位姿估计方法及系统
WO2022256811A1 (en) Alternate route finding for waypoint-based navigation maps
WO2018043524A1 (ja) ロボットシステム、ロボットシステム制御装置、およびロボットシステム制御方法
CN110770664A (zh) 一种导航路径跟踪控制方法、设备、移动机器人及系统
JP2020028957A (ja) 干渉回避装置およびロボットシステム
Klingbeil et al. Towards autonomous navigation of an UAV-based mobile mapping system
JP7160118B2 (ja) 制御装置、制御方法、プログラム
Oberländer et al. Fast calibration of rotating and swivelling 3-D laser scanners exploiting measurement redundancies
TWI767350B (zh) 控制方法、控制裝置、機器人系統、程式及記錄媒體
US11247343B2 (en) Robot system, positional relationship acquiring apparatus, and positional relationship acquiring method
CN114454180B (zh) 移动机器人的运动控制方法、装置和移动机器人
JP2007333441A (ja) 移動体およびその環境認識センサ
JP6589578B2 (ja) 移動量推定装置、自律移動体、及び移動量の推定方法

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20190808

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20200630

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20200721

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20200902

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: 20201201

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20201228

R151 Written notification of patent or utility model registration

Ref document number: 6818708

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151