JP2009018380A - ロボット、ロボットの制御方法、及びロボットの制御システム - Google Patents

ロボット、ロボットの制御方法、及びロボットの制御システム Download PDF

Info

Publication number
JP2009018380A
JP2009018380A JP2007183043A JP2007183043A JP2009018380A JP 2009018380 A JP2009018380 A JP 2009018380A JP 2007183043 A JP2007183043 A JP 2007183043A JP 2007183043 A JP2007183043 A JP 2007183043A JP 2009018380 A JP2009018380 A JP 2009018380A
Authority
JP
Japan
Prior art keywords
arm
robot
master arm
master
target 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.)
Pending
Application number
JP2007183043A
Other languages
English (en)
Inventor
Yuichiro Nakajima
裕一朗 中島
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 JP2007183043A priority Critical patent/JP2009018380A/ja
Publication of JP2009018380A publication Critical patent/JP2009018380A/ja
Pending legal-status Critical Current

Links

Images

Landscapes

  • Manipulator (AREA)

Abstract

【課題】マスターアームの動作に対してスレーブアームが遅れた場合においても、対象物を把持し続けながらスムースに運搬することができるロボット、ロボットの制御方法、及びロボットの制御システムを提供する。
【解決手段】ロボット1は、2本のアームにそれぞれ設けられた把持部によって対象物20を把持し、当該対象物20を目標位置・姿勢まで移動させるロボットであって、一方のアームをマスターアームとし、他方のアームをスレーブアームとしたとき、マスターアームを対象物20の目標位置・姿勢に向けての軌道に沿って動くように制御するマスターアーム制御部と、対象物20を介してスレーブアームの把持部13Sに作用する外力を検知し、当該外力に基づいて、スレーブアームをマスターアームに追従して動くように制御するスレーブアーム制御部とを備えるものである。
【選択図】図4

Description

本発明はロボット、ロボットの制御方法、及びロボットの制御システムに関する。
ロボットアームによって対象物を制御する数多くの技術が知られている。特許文献1には、2つのロボットアームを協調動作させて、同じ対象物を保持して移動させる技術が開示されている。特許文献1に開示された技術は、マスターロボットのアームによって対象物の位置・姿勢を制御すると共に、他方のロボットのアームを対象物の重力補償を行うスレーブアームとすることによって、対象物を操作する際に生じる相対誤差を吸収している。
特開2003−159683号公報
しかしながら、特許文献1に開示された技術では、スレーブロボットのアームは対象物を把持しておらず重力方向に支えているのみであるため、対象物を適切に保持し続けることができない虞がある。例えば、スレーブロボットのアームが障害物と衝突してマスターロボットの動作に対して遅れが生じた場合には、対象物を保持し続けることができずに対象物を落下させてしまう、又は対象物の姿勢を維持することができない。また、マスターロボットのアームとスレーブロボットのアームとの間の相対誤差について、ある程度の相対誤差は吸収できるものの、吸収可能な誤差には限界がある。従って、スレーブロボットのアームが対象物を常に保持できる範囲となるように、動作計画時に事前に限界値を考慮してマスターロボットのアームの動作速度などを決定する必要がある。このため、ロボットの作業速度は制限され、スムースな作業を実現することができないという問題がある。
このように、従来のロボット制御によれば、マスターアームの動作に対してスレーブアームが遅れた場合には、対象物を把持し続けることができない虞があると共に、対象物を把持しながらスムースに運搬することができないという問題があった。
本発明は、かかる課題を解決するためになされたものであり、マスターアームの動作に対してスレーブアームが遅れた場合においても、対象物を把持し続けながらスムースに運搬することができるロボット、ロボットの制御方法、及びロボットの制御システムを提供することを目的とする。
本発明にかかる第一のロボットは、2本のアームを有し、それぞれのアームに設けられた把持部によって対象物を把持し、当該対象物を目標位置・姿勢まで移動させるロボットであって、一方のアームをマスターアームとし、他方のアームをスレーブアームとしたとき、前記マスターアームを前記対象物の目標位置・姿勢に向けての軌道に沿って動くように制御するマスターアーム制御部と、前記対象物を介して前記スレーブアームの把持部に作用する外力を検知し、当該外力に基づいて、前記スレーブアームを前記マスターアームに追従して動くように制御するスレーブアーム制御部とを備えるものである。
このようなロボットによれば、スレーブアームでは、重力方向に限らず全方向に対して対象物を把持することで、安定して対象物を運搬することができると共に、対象物を介してスレーブアームの把持部に作用する外力を正確に検知することができる。このため、対象物を介して検出する外力に基づいて、スレーブアームをマスターアームの動作に追従させることで、スレーブアームの遅れによる相対誤差の発生を抑制・吸収することができる。従って、マスターアームの動作に対してスレーブアームが遅れた場合においても、対象物を把持し続けながらスムースに運搬することができる。
また、前記スレーブアーム制御部は、前記対象物を介して前記スレーブアームの把持部に作用する外力を検知して、当該外力に基づいて、前記スレーブアームを前記マスターアームに追従して動作させるための目標値を生成する目標値生成部を備え、当該目標値を満たすように前記スレーブアームを制御するようにしてもよい。これにより簡便な構成によりスレーブアームを追従動作させることができる。
さらにまた、前記マスターアーム制御部は、前記対象物の目標位置・姿勢に基づいて、前記マスターアームを移動させる軌道を算出する軌道計画部と、算出された前記軌道に沿って前記マスターアームを動作させるための目標値を生成する目標値生成部と、前記対象物を介して前記マスターアームの把持部に作用する外力を検知して、当該外力に基づいて前記目標値を修正する目標値修正部を備え、修正された前記目標値を満たすように前記マスターアームを制御するようにしてもよい。このように、ロボットはマスターアーム及びスレーブアームの両方を用いて対象物を把持することで、マスターアームは対象物を介してスレーブアームからの外力を正確に検知することができる。このため、マスターアームの動作に対してスレーブアームが大きく遅れた場合においても、マスターアームの動作をスレーブアームに合わせて修正することで、対象物を把持し続けながらスムースに運搬することができる。
また、前記目標値修正部は、前記対象物を弾力的に把持するインピーダンス制御を行うように前記目標値を修正するようにしてもよい。このようにすれば、外乱に対してより柔軟に把持することができる。例えば、マスターアームの動作に対してスレーブアームが遅れた場合においても、対象物に倣ってマスターアームを移動させることでより安定して把持し続けることができる。
さらにまた、前記ロボットは、前記対象物の現在位置・姿勢及び目標位置・姿勢に基づいて、マスターアームを選択するマスターアーム選択部を更に備えるようにしてもよい。このように対象物の現在位置・姿勢及び目標位置・姿勢に基づいてマスターアームを選択することで、次の目標位置・姿勢へと対象物をより安定して移動させることができる。例えば、対象物を右前方へと移動させたい場合には、ロボットの右側のアーム(右手)をマスターアームとして右手により対象物を右前方へと引っ張る場合に比べて、ロボットの左側のアーム(左手)をマスターアームとして左手により対象物を右前方へと押し出すように移動させることで、マスターアームに対してスレーブアームをより容易に安定して追従させることができる。
本発明にかかる第二のロボットの制御方法は、2本のアームにそれぞれ設けられた把持部によって対象物を把持し、当該対象物を目標位置・姿勢まで移動させるロボットの制御方法であって、一方のアームをマスターアームとし、他方のアームをスレーブアームとしたとき、前記マスターアームを前記対象物の目標位置・姿勢に向けての軌道に沿って動くように制御するマスターアーム制御ステップと、前記対象物を介して前記スレーブアームの把持部に作用する外力を検知し、当該外力に基づいて、前記スレーブアームを前記マスターアームに追従して動くように制御するスレーブアーム制御ステップとを備えるものである。
このようなロボットの制御方法によれば、スレーブアームでは、重力方向に限らず全方向に対して対象物を把持することで、安定して対象物を運搬することができると共に、対象物を介してスレーブアームの把持部に作用する外力を正確に検知することができる。このため、対象物を介して検出する外力に基づいて、スレーブアームをマスターアームの動作に追従させることで、スレーブアームの遅れによる相対誤差の発生を抑制・吸収することができる。従って、マスターアームの動作に対してスレーブアームが遅れた場合においても、対象物を把持し続けながらスムースに運搬することができる。
また、前記スレーブアーム制御ステップは、前記対象物を介して前記スレーブアームの把持部に作用する外力を検知して、当該外力に基づいて、前記スレーブアームを前記マスターアームに追従して動作させるための目標値を生成する目標値生成ステップを備え、当該目標値を満たすように前記スレーブアームを制御するようにしてもよい。これにより簡便な構成によりスレーブアームを追従動作させることができる。
さらにまた、前記マスターアーム制御ステップは、前記対象物の目標位置・姿勢に基づいて、前記マスターアームを移動させる軌道を算出する軌道計画ステップと、算出された前記軌道に沿って前記マスターアームを動作させるための目標値を生成する目標値生成ステップと、前記対象物を介して前記マスターアームの把持部に作用する外力を検知して、当該外力に基づいて前記目標値を修正する目標値修正ステップを備え、修正された前記目標値を満たすように前記マスターアームを制御するようにしてもよい。このように、ロボットはマスターアーム及びスレーブアームの両方を用いて対象物を把持することで、マスターアームは対象物を介してスレーブアームからの外力を正確に検知することができる。このため、マスターアームの動作に対してスレーブアームが大きく遅れた場合においても、マスターアームの動作をスレーブアームに合わせて修正することで、対象物を把持し続けながらスムースに運搬することができる。
また、前記目標値修正ステップは、前記対象物を弾力的に把持するインピーダンス制御を行うように前記目標値を修正するようにしてもよい。このようにすれば、外乱に対してより柔軟に把持することができる。例えば、マスターアームの動作に対してスレーブアームが遅れた場合においても、対象物に倣ってマスターアームを移動させることでより安定して把持し続けることができる。
さらにまた、前記対象物の現在位置・姿勢及び目標位置・姿勢に基づいて、マスターアームを選択するマスターアーム選択ステップを更に備えるようにしてもよい。このように対象物の現在位置・姿勢及び目標位置・姿勢に基づいてマスターアームを選択することで、次の目標位置・姿勢へと対象物をより安定して移動させることができる。例えば、対象物を右前方へと移動させたい場合には、右手をマスターアームとして右手により対象物を右前方へと引っ張る場合に比べて、左手をマスターアームとして左手により対象物を右前方へと押し出すように移動させることで、マスターアームに対してスレーブアームをより容易に安定して追従させることができる。
本発明にかかる第三のロボットの制御システムは、2本のアームを有し、それぞれのアームに設けられた把持部によって対象物を把持し、当該対象物を目標位置・姿勢まで移動させるロボットの制御システムであって、一方のアームをマスターアームとし、他方のアームをスレーブアームとしたとき、前記マスターアームを前記対象物の目標位置・姿勢に向けての軌道に沿って動くように制御するマスターアーム制御部と、前記対象物を介して前記スレーブアームの把持部に作用する外力を検知し、当該外力に基づいて、前記スレーブアームを前記マスターアームに追従して動くように制御するスレーブアーム制御部とを備えるものである。
このようなロボットの制御システムによれば、スレーブアームでは、重力方向に限らず全方向に対して対象物を把持することで、安定して対象物を運搬することができると共に、対象物を介してスレーブアームの把持部に作用する外力を正確に検知することができる。このため、対象物を介して検出する外力に基づいて、スレーブアームをマスターアームの動作に追従させることで、スレーブアームの遅れによる相対誤差の発生を抑制・吸収することができる。従って、マスターアームの動作に対してスレーブアームが遅れた場合においても、対象物を把持し続けながらスムースに運搬することができる。
本発明によれば、対象物を把持し続けながらスムースに運搬することができるロボット、ロボットの制御方法、及びロボットの制御システムを提供することを目的とする。
以下、本発明を適用した具体的な実施の形態について、図面を参照しながら詳細に説明する。尚、各図面において、同一要素には同一の符号を付しており、説明の明確化のため、必要に応じて重複説明を省略する。
発明の実施の形態1.
図1(a)は、本実施の形態1に係るロボット1を模式的に示す上面図である。ロボット1は、2本のアームを有する双腕ロボットであり、アームはアーム部12及び把持部13を有する。アーム部12の先端に対象物20を把持するための把持部13が設けられている。ロボット1は、車輪などの移動手段(不図示)を有しており、対象物20を目標軌道に沿って運搬する。また、ロボット1の各関節には、ロボット1を動作させるためのモータと、各関節の動作量を検出するエンコーダが配設される。各関節に設けられたエンコーダの検出信号によって、動作中の把持部13の位置・姿勢を求めることができる。
アーム部12は本体部10に接続されている。本体部10には、アーム部12を制御する制御部11などが収納されている。制御部11は、CPUやメモリ等の記憶領域を備えるコンピュータである。例えば、制御部11は、演算処理部であるCPU(Central Processing Unit)、記憶領域であるROM(Read Only Memory)やRAM(Random Access Memory)、通信用のインターフェースなどを有し、ロボット1の各種動作を制御する。例えば、ROMには、制御するための制御プログラムや、各種の設定データ等が記憶されている。そして、CPUは、このROMに記憶されている制御プログラムを読み出し、RAMに展開する。そして、設定データや、センサ等からの出力に応じてプログラムを実行する。
図1(b)は、対象物20を把持するロボット1を模式的に示す正面図である。図1(b)においては、把持部13として2本の指を持つ多指ハンドを用いて対象物20を把持する様子を示している。図1(b)に示すように、アーム部12によって把持部13の位置・姿勢が実現され、把持部13R及び13Lによって対象物20が把持される。対象物20の姿勢を保ちながら目標位置へと移動させることによって運搬が行われる。尚、把持部13として例えば多指ハンドを用いることで、対象物20を把持した状態で対象物20の位置・姿勢を容易に変更することができる。
外力検知部14が、アーム部12及び把持部13との間に設けられている。外力検知部14は、アーム部12及び把持部13にかかる外力を検知する。例えば、外力検知部14Rは、把持部13Rにおいて、把持部13Lから対象物20を介して把持部13Rに加えられる外力を検知する。外力検知部14は、例えば自身の歪み量により、受けた力の大きさを表す検出信号を送信可能な力センサであり、6軸力センサなどを用いることができる。
図2は、本発明の実施の形態1にかかるロボット1が有する制御系のブロック構成図である。制御部11は、マスターアーム選択部30、マスターアーム制御部31、及びスレーブアーム制御部32を有する。マスターアーム選択部30は、対象物20の現在位置・姿勢及び目標とする位置・姿勢などの状況に基づいて、マスターアームとなるべきアームを選択する。このように、状況に応じてマスターアームを切替えることで、特定のアームに対して無理な動作を強いることが無く、全体として効率の良い動作を行うことができる。尚、マスターアーム選択方法の詳細については後述する。
マスターアーム制御部31は、軌道計画部311、目標値生成部312、目標値修正部313、及びアーム制御部314を有し、マスターアームの動作を制御する。また、マスターアーム制御部31は、マスターアームの外力検知部14Mにより検出した外力に基づいて、アーム部12の先端(把持部13)の目標値を修正する。
マスターアームは、通常(マスターアームの動作に対してスレーブアームが大きく遅れていない場合)では、所定のプログラムによって生成された手先軌道に沿って、対象物20を把持しながら移動する。このとき、エンコーダでの検出値によって、ロボット1に設けられた各関節軸の角度が検出され、これに基づいて把持部13の位置(アーム部12の先端位置)が把握される。マスターアーム制御部31において、把握された把持部13の位置に基づき、位置比例制御、逆ヤコビ行列、角度比例制御等といった所定のアーム制御処理を行うことでアーム部12の各関節軸の目標速度が検出され、アーム制御部314に対して伝達される。すると、アーム制御部314は、伝達された目標速度に応じ、アーム部12の各関節軸のモータを駆動し、これによって、マスターアームのアーム部12及び把持部13が、生成された手先軌道に沿って動作する。
軌道計画部311は、対象物20の目標位置・姿勢に基づいて、把持部13の手先軌道を算出する。より詳細には、対象物20の目標位置・姿勢に応じた把持部13の位置・姿勢が与えられ、対象物20をその目標位置・姿勢へと運搬するための把持部13の手先軌道が算出される。尚、スレーブアームは外力検知部14Sで検知された外力に従ってマスターアームに追従動作するため、ここでは、マスターアームの把持部13についての手先軌道のみを算出する。
対象物20の目標位置・姿勢は、対象物20の目標軌道と対象物20の現在位置・姿勢とに基づいて算出される。対象物20の現在位置・姿勢は、例えば、各関節に設けられたモータの回転角度を検出するエンコーダにより求めることができる。例えば、対象物20の現在位置をxyz座標値として求める。また、例えば、エンコーダの変化量から、各関節の角速度を算出して、対象物20の現在速度を求めることもできる。
対象物20の目標軌道とは、対象物20に固定された基準点を移動させるべき軌道を指定するデータである。基準点とは、ロボット1が有する特定部位との間で位置関係が固定されている点である。本実施の形態1における具体的な基準点は、ロボット1に保持された状態で運搬される対象物20に固定された点であり、対象物20を保持する把持部13と基準点との間の位置関係が固定されている。即ち、本実施の形態1における目標軌道は、ロボット1が対象物20を運搬する際に、把持部13に保持された対象物20を追従させるべき軌道である。このような目標軌道に沿って、把持部13の手先軌道が与えられる。
目標軌道の入力は、ROM(Read Only Memory)、RAM(Random Access Memory)、磁気ディスク・ドライブ、光磁気ディスク・ドライブ等の記憶された目標軌道データを読み出すことによって行うことができる。また、キーボード、マウス、ジョイスティック等の入力装置を介して操作者による入力を受け付けてもよい。
尚、対象物20を運搬する際の時間に拘束条件を設けない場合、目標軌道は基準点の位置及び時間を指定する時系列に沿った軌道情報ではなく、時間要素を含まない基準点位置のみの情報として入力してもよい。また、目標軌道は、基準点の位置ではなく、基準点の位置及び姿勢、基準点の速度、角速度、角速度又は角加速度等を時系列的に記録したデータでもよい。
目標値生成部312は、軌道計画部311により算出された把持部13の手先軌道における位置・姿勢を実現するための各関節の目標値を算出する。目標値としては、例えば位置制御系の場合には各関節の角度を算出し、速度制御系の場合には各関節の速度を算出し、トルク制御の場合には各関節のトルク値を算出する。
目標値修正部313は、マスターアームの外力検知部14Mにより検知された外力に基づいて、目標値生成部312により生成された各関節の目標値を修正する。例えば、外力検知部14Mに検知された外力が、所定の閾値を越えているか否かを判定し、越えている場合には、目標値に対する現在値との差分について、その差分に適切なゲインを乗じて目標値に加えることで目標値を修正する。
また、目標値修正部313は、対象物20を弾力的に把持するインピーダンス制御を行うように目標値を修正することができる。インピーダンス制御として、例えば、コンプライアンス制御を行うことができる。コンプライアンス制御は、把持部13の位置、及び把持部13に作用する力を用いて、ロボット1に柔らかい動きをさせる制御手法である。この手法は、バネ、ダンパ、慣性パラメータを仮想的に設定したモデル系の運動をロボット1の動きにより実現するもので、パラメータの値を変えることによりロボット1の見かけ上の応答特性を自由に設定することができる。本実施の形態1においては、マスターアームの把持部13に加わる外力を外力検知部14Mによって検出し、モデルに従って、把持部13が追従すべき位置を求めて制御する。
コンプライアンス制御を行うことで、マスターアームに対してスレーブアームの動作が遅れて、対象物20がスレーブアームからの外力によってその位置・姿勢を変えるのと同時に、マスターアームの把持部13にかかる外力が目標値と等しくなるようにマスターアームの把持部13がその位置・姿勢を変更することができる。このため、スレーブアームの遅れをマスターアームの動作によって柔軟に吸収することができる。
尚、把持部13として多指ハンドを用いる場合には、多指ハンドの各関節においてコンプライアンス制御を利用することで、アーム部12に設けられた関節のみにコンプライアンス制御を用いる場合に比較して、環境の変化や誤差に対してより高速かつ柔軟に対応することができる。また、本発明は把持部13自体をコンプライアンス制御する手法に限定されず、アーム部12の各関節をコンプライアンス制御する手法、及びそれらを組み合わせた手法を用いることで、環境の誤差などを吸収してより高精度な作業を実現することができる。
アーム制御部314は、目標値修正部313により修正された目標値に従って、アーム部12及び把持部13を制御する。より具体的には、アーム制御部314からの駆動信号によって、アーム部12及び把持部13に設けられた各関節が、所定の駆動速度で駆動する。アーム部12の先端に設けられた把持部13が、目標とする位置・姿勢まで移動すると、各関節の駆動が停止する。
このようなマスターアーム制御部31によれば、マスターアームは、スレーブアームからの外力を検知し、その状況に応じて対象物20の位置・姿勢が破綻をきたさないように目標速度などを修正することによって、運搬作業を安定して継続することができる。また、スレーブアームを外力に対して追従するよう追従制御を行っているため、マスターアームに対して微小な遅れなどが生じ、それが外力としてマスターアームに伝わった場合には、マスターアームの目標値修正部313により、マスターアームがスレーブアームに近寄るように動作を調整することで、運搬作業を破綻させずに安定して継続することができる。
スレーブアーム制御部32は、目標値生成部321及びアーム制御部322を有し、マスターアームの動作に追従するようにスレーブアームを制御する。スレーブアームは、スレーブアームの外力検知部14Sにより、対象物20を介してスレーブアームに作用する外力を検知してマスターアームの動きを推定し、これに追従するようにスレーブアームのアーム部12及び把持部13を動作させる。
目標値生成部321は、対象物20を介してスレーブアームに作用する外力を検知することによって、マスターアームの動きを推定し、これに追従するための各関節の目標値を算出する。目標値としては、例えば位置制御系の場合には各関節の角度を算出し、速度制御系の場合には各関節の速度を算出し、トルク制御の場合には各関節のトルク値を算出する。
アーム制御部322は、目標値生成部321により算出された目標値に従って、アーム部12及び把持部13を制御する。より具体的には、アーム制御部314は、アーム部12及び把持部13の各関節を駆動する目標値を出力する。関節モータの動作は、それぞれの関節に設けたエンコーダにより検出され、アーム部12及び把持部13の動作が目標値に近づくように関節の位置・姿勢や駆動速度がフィードバック制御される。
このようなスレーブアーム制御部32によれば、スレーブアームでは、重力方向に限らず全方向に対して対象物20を把持することで、安定して対象物20を運搬することができる。また、スレーブアームにおいても対象物20を把持することで、対象物20を介してスレーブアームの把持部13に作用する外力を正確に検知することができる。このため、対象物20を介して検出する外力に基づいて、スレーブアームをマスターアームの動作に追従させることで、スレーブアームの遅れによる相対誤差の発生を抑制・吸収することができる。従って、マスターアームの動作に対してスレーブアームが遅れた場合においても、対象物20を把持し続けて支障なく円滑に運搬作業を継続することができる。また、スレーブアームをマスターアームの手先軌道に追従させることで、スレーブアーム用の軌道を別途生成する必要が無く、様々な環境、外乱に対して、よりロバストに対応することができる。
次に、本実施の形態にかかる制御方法の概要について、図3を用いて説明する。図3は、本実施の形態にかかるロボットアームの制御方法を示すフローチャートである。図3では、ロボット1が把持部13により対象物20を把持しており、対象物20の目標位置・姿勢へと向けて運搬を開始する際の処理について示している。
まず、把持部13により把持している対象物20の目標軌道と、対象物20の現在位置・姿勢とに基づいて、対象物20の目標位置・姿勢を算出する(ステップS101)。次に、マスターアーム選択部30は、S101において算出した対象物20の目標位置・姿勢と、対象物20の現在位置・姿勢とに基づいて、マスターアームを選択する(ステップS102)。より具体的には、マスターアーム選択部30は、対象物20の現在位置・姿勢と目標位置・姿勢から対象物20を次に移動させる方向を判定する。判定の結果、例えば対象物20を右前方へと移動させる場合には、ロボット1の左側のアーム(左手)をマスターアームとして選択する。一方、左前方へと移動させる場合には、ロボット1の右側のアーム(右手)をマスターアームとして選択する。把持部13R、Lにより対象物20を把持して移動させる場合、対象物20を引くよりも押す方が対象物20を落とす危険度が低くなる。このため、対象物20を押すことが可能なアームをマスターアームとして選択することで、対象物20をより安定的に運搬することができる。
図4は、把持部13により対象物20を保持したロボット1が、対象物20に固定された基準点の目標軌道50に沿って対象物20を運搬する様子を示した図である。図4(a)に示すように、ロボット1が対象物20を保持したまま右前方(白抜き矢印40R)へ移動しようとする場合には、対象物20の現在位置・姿勢に対して、その目標位置・姿勢は右前方(白抜き矢印40R)に配置される。そこで、左手の把持部13Lによって対象物20を押すようにして運搬させるために、左手13Lをマスターアーム13Mとして選択する。一方、図4(b)に示すように、ロボット1が対象物20を保持したまま左前方(白抜き矢印40L)へ移動しようとする場合には、対象物20の現在位置・姿勢に対して、その目標位置・姿勢は左前方(白抜き矢印40L)に配置される。そこで、右手の把持部13Rによって対象物20を押すようにして運搬させるために、右手13Rをマスターアーム13Mとして選択する。図4(c)では、ロボット1が紙面上にいて左方向から右方向へと、対象物20をその目標軌道50に沿って運搬する際には、ロボット1は、対象物20の現在位置・姿勢及び目標位置・姿勢に基づいて、図4(a)及び図4(b)において示すようにして、マスターアームを順次選択して切替えてゆく。
図3に戻って説明を続ける。次に、マスターアームはマスターアーム制御部31により手先軌道を追従するように制御され、スレーブアームはスレーブアーム制御部32によりマスターアームの動作を追従するように制御される(ステップS103)。即ち、ロボット1は、マスターアーム及びスレーブアームに設けられた把持部13によって対象物20を把持し、目標軌道に従って対象物20を移動させる。このように対象物20を運搬している場合に、例えば、スレーブアームが障害物と衝突してマスターアームの動作に対して遅れが生じた場合には、マスターアームは対象物20を介してスレーブアームの動作を検出し、対象物20を弾力的に把持するインピーダンス制御を行う。尚、マスターアーム及びスレーブアームによる制御方法の詳細は後述する。
次に、対象物20の現在位置・姿勢と目標位置・姿勢とを比較し、対象物20が目標位置・姿勢へと到達したか否かを判定する(ステップS104)。即ち、対象物20の現在位置・姿勢と目標位置・姿勢との間の差が、所定の範囲と比較して当該範囲に含まれるか否かを判定する。上記差が範囲に含まれない間は、ステップS103へと戻り、マスターアーム及びスレーブアームに設けられた把持部13によって対象物20を把持し、目標位置・姿勢へと向かって対象物20を移動させる。一方、上記差が範囲に含まれる場合には、目標位置・姿勢へと到達したものと判定し、次の目標位置・姿勢に基づいて移動処理を行うべく制御部11に対して次の目標値(目標軌道上の次の位置・姿勢データ)を転送するように指示する。
続いて、本実施の形態にかかるマスターアーム及びスレーブアームの制御方法の詳細について、図5を用いて説明する。図5は、本実施の形態にかかるロボットアームの制御方法を示すフローチャートであり、上述の図3において説明したステップS103における制御処理の詳細を説明するものである。図5では、ロボット1が把持部13により対象物20を把持しており、対象物20の目標位置・姿勢へと向けて運搬を開始する際の処理について示している。
マスターアームとして選択されたアームは、把持している対象物20を目標軌道に沿って移動させるための手先軌道を軌道計画部311によって算出し(ステップS201)、算出された手先軌道に基づいて各関節に与える目標値を目標値生成部312により生成する(ステップS202)。生成された目標値に応じて、マスターアームのアーム制御部314がアーム部12M及び把持部13Mを駆動する(ステップS203)。このように、マスターアームのマスターアーム制御部31により、対象物20が目標軌道を追従するように制御される。
マスターアームとして選択されなかったアーム(スレーブアーム)は、対象物20を介して把持部13Sに伝わる力を外力検知部14Sにより検出し、マスターアームの動作を推定する(ステップS301)。外力検知部14Sにより外力が検出された場合には、目標値生成部321により、マスターアームの動作に追従するための目標値を外力に応じて生成する(ステップS302)。生成された目標値に応じて、スレーブアームのアーム制御部322が力制御によりアーム部12S及び把持部13Sを駆動する(ステップS303)。
このようにしてロボット1は、マスターアーム及びスレーブアームに設けられた把持部13によって対象物20を把持し、目標軌道に従って対象物20を移動させる。対象物20を運搬する際に、外乱などによって対象物20の目標軌道に対して急激なずれが生じた場合には、マスターアームが手先軌道を追従することだけを目標としていると、力センサや力制御器の性能によっては、スレーブアームの対応遅れなどにより運搬作業に破綻をきたす可能性がある。例えば、スレーブアームが障害物などに接触して、対象物20の目標位置・姿勢と現在位置・姿勢とが大きく異なる状況となった場合に、マスターアームに対象物20を把持させたまま目標軌道に従って移動させようとすると、マスターアームに対して遅れたスレーブアームでは、対象物20を把持し続けることができない虞がある。また、同様にして対象物20の目標位置・姿勢と現在位置・姿勢とが大きく異なる状況となった場合に、マスターアーム及びスレーブアームによって対象物20を把持し続けようとすると、対象物20に対して必要以上に過大な力を及ぼす虞がある。
そこで、マスターアームに設けられた外力検知部14Mを用いて、対象物20を介してスレーブアームの動作を推定する。即ち、ロボット1が対象物20を運搬している場合に、マスターアームは、外力検知部14Mによって対象物20を介してスレーブアームの動作を検出する(ステップS204)。
例えば、スレーブアームが障害物と衝突して、ステップS204においてマスターアームの外力検知部14Mが外力を検知した場合には、マスターアームの目標値修正部313により、手先の柔らかさを実現するインピーダンス制御器によって目標値を修正する(ステップS205)。修正された目標値に応じて、マスターアームのアーム制御部314が対象物20を弾力的に把持するようにアーム部12M及び把持部13Mを駆動する(ステップS206)。尚、ステップS204においてマスターアームの外力検知部14Mが外力を検知しない場合には、ステップS202において生成された目標値に応じてマスターアームのアーム制御部314がアーム部12M及び把持部13Mを駆動する。
これにより、マスターアームに対してスレーブアームの動作が遅れて、対象物20がスレーブアームからの外力によってその位置・姿勢を変えるのと同時に、マスターアームの把持部13Mにかかる外力が目標値と等しくなるようにマスターアームの把持部13Mがその位置・姿勢を変更することができるため、スレーブアームの遅れをマスターアームの動作によって柔軟に吸収することができる。従って、修正された目標値に従ってマスターアーム制御部31は、アームを手先軌道に沿いながら、対象物20を落とさないように安定して運搬することができる。
尚、インピーダンス制御として、例えば、コンプライアンス制御を行うことができる。エンコーダで検出するアーム部12の角度と外力検知部14によって検出する外力とに基づいて、コンプライアンス制御を行う。コンプライアンス制御では、受けた力の方向にアーム部12を自動的に変位させ、なじませるためのアーム部12の目標とする位置・姿勢を算出する(ここでは、当該目標位置・姿勢に応じて目標値を修正する)。
また、エンコーダで検出する把持部13の角度と外力検知部14によって検出する外力とに基づいて、コンプライアンス制御を行うようにしてもよい。この場合には、コンプライアンス制御では、受けた力の方向に把持部13を自動的に変位させ、なじませるための把持部13の目標とする位置・姿勢を算出する(ここでは、当該目標位置・姿勢に応じて目標値を修正する)。さらにまた、修正した目標値に基づいて、マスターアームのアーム部12及び把持部13を同時に移動させてもよいし、把持部13のみを移動させるようにしてもよい。即ち、修正した目標値に基づいて、マスターアームの把持部13のみを対象物20に倣うように移動させてもよい。把持部13自体にこのようなコンプライアンス制御を行わせることで、多少の外乱についてはマスターアームの把持部13のみを移動させることによって吸収することができる。このため、アーム部12全体の目標値を修正する必要がなく、大きな回避動作を伴わずに容易に運搬動作を継続することができる。
このようなコンプライアンス制御の適用により、アームは手先(把持部13)と対象物20における接触点との間に仮想的なバネダンパがあるかのようにふるまう。また、外力検知部14により検出され、制御部へと入力する外力にセンサノイズ等の誤差要因が含まれている場合には、カルマンフィルタを設けて入力される外力を推定し、推定結果をコンプライアンス制御の入力としてもよい。
以上に説明したように、本実施の形態にかかるロボット1は、アーム部12に設けられた把持部13によって対象物20を把持し、当該対象物20を目標位置・姿勢まで移動させる。移動の際、ロボット1のアームのうち、一方のアームをマスターアームとし、他方のアームをスレーブアームとしたとき、マスターアーム制御部31によりマスターアームを対象物20の目標位置・姿勢に向けての軌道に沿って動くように制御すると共に、スレーブアーム制御部32により対象物20を介してスレーブアームの把持部13Sに作用する外力を検知し、当該外力に基づいて、スレーブアームをマスターアームに追従して動くように制御する。即ち、2本のアームの把持部13により対象物20を把持して、一方のアームは対象物20の目標軌道に沿って動作すると共に、他方のアームは当該アームに作用する外力を検知して追従動作を行う。
従来技術では、スレーブアームは重力方向のみに対象物20を支持しており、また、スレーブアーム用の軌道を別途独立に算出し、当該軌道に従ってそれぞれのアームを移動させている。このため、マスターアームに対してスレーブアームが遅れた場合には、アーム間の誤差の発生を抑制又は吸収することは困難であり、対象物20を把持し続けることができないという虞がある。一方、本実施の形態にかかるロボット1では、スレーブアームは、重力方向に限らず全方向に対して対象物20をしっかりと握ることで、安定して対象物20を運搬することができると共に、対象物20を介してスレーブアームの把持部13Sに作用する外力を正確に検知することができる。このため、対象物20を介して検出する外力に基づいて、スレーブアームをマスターアームの動作に追従させることで、スレーブアームの遅れによる相対誤差の発生を抑制・吸収することができる。従って、マスターアームの動作に対してスレーブアームが遅れた場合においても、支障なく円滑に運搬作業を継続することができる。
その他の実施の形態.
発明の実施の形態1は、移動手段として車輪などを有するロボットに本発明を適用した一例を示したが、これに限定されず、ロボットは足を有し、自律歩行可能な移動ロボットであってもよい。また、アーム部12の先端に設けられた把持部13は、物体の把持に限定されず、例えば物体の塗装、溶接など所定の動作を行うようにしてもよい。
また、上述の実施の形態においては、外力検知部は、力センサにより検出される外力によって把持部13が受ける外力を検知するものとしたが、本発明はこれに限定されない。例えば、各関節のモータを駆動する駆動電流値から、把持部13に作用する外力を検知してもよい。さらに、力センサを用いず、各関節の角速度から、把持部13に作用する外力を検知してもよい。また、駆動電流値や、関節角速度による推定値を、力センサでの検出値を検証するために用いてもよい。
さらにまた、上述の実施の形態においては、アーム制御部がアーム部12及び把持部13の各関節の制御を行うものとしたが、把持部13の制御は、アーム制御部による制御から独立して制御されるものとしてもよいし、アーム部12の動きに合わせて制御されるものとしてもよい。例えば、アーム制御部314、322とは独立した把持部制御部を備え、把持部制御部は、目標値に従って、把持部13を制御する。より具体的には、把持制御部からの駆動信号によって、把持部13に設けられた各関節が、所定の駆動速度で駆動する。把持部13が、目標とする位置・姿勢まで移動すると、各関節の駆動が停止する。
また、上述の実施の形態においては、マスターアームについてのみ手先軌道を与えるものとしたが本発明はこれに限定されない。即ち、マスターアームの手先軌道に加えて、スレーブアームの手先軌道を算出してもよい。スレーブアームについての手先軌道を算出することで、当該スレーブアームの手先軌道上の目標位置・姿勢とスレーブアームの把持部13Sの現在位置・姿勢とに基づいて、スレーブアームが手先軌道に沿って動作しているか否かを容易に判定することができる。即ち、マスターアームの動作に対するスレーブアームの遅れをより精度良く検出することができる。
さらに、本発明は上述した実施の形態のみに限定されるものではなく、既に述べた本発明の要旨を逸脱しない範囲において種々の変更が可能であることは勿論である。
本発明の実施の形態にかかるロボットの構成を示す構成図である。 本発明の実施の形態にかかるロボットが有する制御系のブロック構成図である。 本発明の実施の形態にかかるロボットによる制御処理の処理内容を示すフローチャートである。 本発明の実施の形態にかかるロボットによるマスターアーム選択処理を説明するための図である。 本発明の実施の形態にかかるロボットによるマスター・スレーブ制御処理の処理内容を示すフローチャートである。
符号の説明
1 ロボット、
10 本体部、11 制御部、
12 アーム部、13 把持部、14 外力検知部、
20 対象物、
30 マスターアーム選択部、
31 マスターアーム制御部、
311 軌道計画部、
312 目標値生成部、313 目標値修正部、
314 アーム制御部、
32 スレーブアーム制御部、
321 目標値生成部、322 アーム制御部、
50 目標軌道

Claims (11)

  1. 2本のアームを有し、それぞれのアームに設けられた把持部によって対象物を把持し、当該対象物を目標位置・姿勢まで移動させるロボットであって、
    一方のアームをマスターアームとし、他方のアームをスレーブアームとしたとき、
    前記マスターアームを前記対象物の目標位置・姿勢に向けての軌道に沿って動くように制御するマスターアーム制御部と、
    前記対象物を介して前記スレーブアームの把持部に作用する外力を検知し、当該外力に基づいて、前記スレーブアームを前記マスターアームに追従して動くように制御するスレーブアーム制御部と
    を備えるロボット。
  2. 前記スレーブアーム制御部は、
    前記対象物を介して前記スレーブアームの把持部に作用する外力を検知して、当該外力に基づいて、前記スレーブアームを前記マスターアームに追従して動作させるための目標値を生成する目標値生成部を備え、
    当該目標値を満たすように前記スレーブアームを制御する
    ことを特徴とする請求項1記載のロボット。
  3. 前記マスターアーム制御部は、
    前記対象物の目標位置・姿勢に基づいて、前記マスターアームを移動させる軌道を算出する軌道計画部と、
    算出された前記軌道に沿って前記マスターアームを動作させるための目標値を生成する目標値生成部と、
    前記対象物を介して前記マスターアームの把持部に作用する外力を検知して、当該外力に基づいて前記目標値を修正する目標値修正部を備え、
    修正された前記目標値を満たすように前記マスターアームを制御する
    ことを特徴とする請求項1又は2記載のロボット。
  4. 前記目標値修正部は、
    前記対象物を弾力的に把持するインピーダンス制御を行うように前記目標値を修正する
    ことを特徴とする請求項3記載のロボット。
  5. 前記ロボットは、
    前記対象物の現在位置・姿勢及び目標位置・姿勢に基づいて、マスターアームを選択するマスターアーム選択部を更に備える
    ことを特徴とする請求項1乃至4いずれか1項記載のロボット。
  6. 2本のアームにそれぞれ設けられた把持部によって対象物を把持し、当該対象物を目標位置・姿勢まで移動させるロボットの制御方法であって、
    一方のアームをマスターアームとし、他方のアームをスレーブアームとしたとき、
    前記マスターアームを前記対象物の目標位置・姿勢に向けての軌道に沿って動くように制御するマスターアーム制御ステップと、
    前記対象物を介して前記スレーブアームの把持部に作用する外力を検知し、当該外力に基づいて、前記スレーブアームを前記マスターアームに追従して動くように制御するスレーブアーム制御ステップと
    を備えるロボットの制御方法。
  7. 前記スレーブアーム制御ステップは、
    前記対象物を介して前記スレーブアームの前記把持部に作用する外力を検知して、当該外力に基づいて、前記スレーブアームを前記マスターアームに追従して動作させるための目標値を生成する目標値生成ステップを備え、
    当該目標値を満たすように前記スレーブアームを制御する
    ことを特徴とする請求項6記載のロボットの制御方法。
  8. 前記マスターアーム制御ステップは、
    前記対象物の目標位置・姿勢に基づいて、前記マスターアームを移動させる軌道を算出する軌道計画ステップと、
    算出された前記軌道に沿って前記マスターアームを動作させるための目標値を生成する目標値生成ステップと、
    前記対象物を介して前記マスターアームの把持部に作用する外力を検知して、当該外力に基づいて前記目標値を修正する目標値修正ステップを備え、
    修正された前記目標値を満たすように前記マスターアームを制御する
    ことを特徴とする請求項6又は7記載のロボットの制御方法。
  9. 前記目標値修正ステップは、
    前記対象物を弾力的に把持するインピーダンス制御を行うように前記目標値を修正する
    ことを特徴とする請求項8記載のロボットの制御方法。
  10. 前記対象物の現在位置・姿勢及び目標位置・姿勢に基づいて、マスターアームを選択するマスターアーム選択ステップを更に備える
    ことを特徴とする請求項6乃至9いずれか1項記載のロボットの制御方法。
  11. 2本のアームを有し、それぞれのアームに設けられた把持部によって対象物を把持し、当該対象物を目標位置・姿勢まで移動させるロボットの制御システムであって、
    一方のアームをマスターアームとし、他方のアームをスレーブアームとしたとき、
    前記マスターアームを前記対象物の目標位置・姿勢に向けての軌道に沿って動くように制御するマスターアーム制御部と、
    前記対象物を介して前記スレーブアームの把持部に作用する外力を検知し、当該外力に基づいて、前記スレーブアームを前記マスターアームに追従して動くように制御するスレーブアーム制御部と
    を備えるロボットの制御システム。
JP2007183043A 2007-07-12 2007-07-12 ロボット、ロボットの制御方法、及びロボットの制御システム Pending JP2009018380A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2007183043A JP2009018380A (ja) 2007-07-12 2007-07-12 ロボット、ロボットの制御方法、及びロボットの制御システム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2007183043A JP2009018380A (ja) 2007-07-12 2007-07-12 ロボット、ロボットの制御方法、及びロボットの制御システム

Publications (1)

Publication Number Publication Date
JP2009018380A true JP2009018380A (ja) 2009-01-29

Family

ID=40358469

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2007183043A Pending JP2009018380A (ja) 2007-07-12 2007-07-12 ロボット、ロボットの制御方法、及びロボットの制御システム

Country Status (1)

Country Link
JP (1) JP2009018380A (ja)

Cited By (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101211601B1 (ko) * 2010-11-05 2012-12-12 한국과학기술연구원 로봇의 양 팔을 이용해 물체를 잡기 위한 로봇의 동작 제어 시스템 및 제어 방법
KR101227092B1 (ko) * 2010-11-05 2013-01-29 한국과학기술연구원 로봇의 동작 제어 시스템 및 동작 제어 방법
KR101321791B1 (ko) 2012-01-02 2013-10-28 한국과학기술연구원 능동형 신체 재활을 위한 로봇 동작 제어 시스템 및 제어 방법
US9122275B2 (en) 2012-01-10 2015-09-01 Samsung Electronics Co., Ltd. Robot and control method thereof
US9517556B2 (en) 2012-06-29 2016-12-13 Mitsubishi Electric Corporation Robot control apparatus and robot control method
JP2017104914A (ja) * 2015-12-07 2017-06-15 リバーフィールド株式会社 外力追従制御システム
JP2017193011A (ja) * 2016-04-20 2017-10-26 三菱電機株式会社 ロボットアームシステム及びロボットアームの教示方法
JP2018089736A (ja) * 2016-12-01 2018-06-14 トヨタ自動車株式会社 マスタスレーブシステム
WO2019039646A1 (ko) * 2017-08-25 2019-02-28 주식회사 토룩 로봇 제어 시스템
EP3685967A1 (en) * 2019-01-23 2020-07-29 Aida Engineering Ltd. Workpiece conveyance device
CN114347045A (zh) * 2022-03-22 2022-04-15 佛山智能装备技术研究院 一种双机械臂协同运动控制方法及系统

Cited By (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101211601B1 (ko) * 2010-11-05 2012-12-12 한국과학기술연구원 로봇의 양 팔을 이용해 물체를 잡기 위한 로봇의 동작 제어 시스템 및 제어 방법
KR101227092B1 (ko) * 2010-11-05 2013-01-29 한국과학기술연구원 로봇의 동작 제어 시스템 및 동작 제어 방법
KR101321791B1 (ko) 2012-01-02 2013-10-28 한국과학기술연구원 능동형 신체 재활을 위한 로봇 동작 제어 시스템 및 제어 방법
US9122275B2 (en) 2012-01-10 2015-09-01 Samsung Electronics Co., Ltd. Robot and control method thereof
US9517556B2 (en) 2012-06-29 2016-12-13 Mitsubishi Electric Corporation Robot control apparatus and robot control method
JP2017104914A (ja) * 2015-12-07 2017-06-15 リバーフィールド株式会社 外力追従制御システム
WO2017098989A1 (ja) * 2015-12-07 2017-06-15 リバーフィールド株式会社 外力追従制御システム
JP2017193011A (ja) * 2016-04-20 2017-10-26 三菱電機株式会社 ロボットアームシステム及びロボットアームの教示方法
JP2018089736A (ja) * 2016-12-01 2018-06-14 トヨタ自動車株式会社 マスタスレーブシステム
JP7035309B2 (ja) 2016-12-01 2022-03-15 トヨタ自動車株式会社 マスタスレーブシステム
WO2019039646A1 (ko) * 2017-08-25 2019-02-28 주식회사 토룩 로봇 제어 시스템
EP3685967A1 (en) * 2019-01-23 2020-07-29 Aida Engineering Ltd. Workpiece conveyance device
CN111468624A (zh) * 2019-01-23 2020-07-31 会田工程技术有限公司 工件输送装置
US11491531B2 (en) * 2019-01-23 2022-11-08 Aida Engineering, Ltd. Workpiece conveyance device
CN111468624B (zh) * 2019-01-23 2024-01-05 会田工程技术有限公司 工件输送装置
CN114347045A (zh) * 2022-03-22 2022-04-15 佛山智能装备技术研究院 一种双机械臂协同运动控制方法及系统
CN114347045B (zh) * 2022-03-22 2022-05-20 佛山智能装备技术研究院 一种双机械臂协同运动控制方法及系统

Similar Documents

Publication Publication Date Title
JP2009018380A (ja) ロボット、ロボットの制御方法、及びロボットの制御システム
CN112936278B (zh) 机器人的人机协作控制方法、装置和机器人
JP7116901B2 (ja) ロボット制御装置、ロボット制御方法及びロボット制御プログラム
CN109866206B (zh) 机器人系统以及机器人系统的控制方法
JP4267027B2 (ja) ロボット制御装置
JP4896276B2 (ja) ロボット、ロボットの制御装置、制御方法、及び制御プログラム
JP6472214B2 (ja) ロボット装置の制御方法及びロボット装置
JP7028196B2 (ja) ロボット制御装置、ロボット制御方法、及びロボット制御プログラム
CN110421547A (zh) 一种基于估计动力学模型的双臂机器人协同阻抗控制方法
US11040449B2 (en) Robot control system and method of controlling a robot
JP2010142909A (ja) ロボットの制御装置
WO2008004487A1 (en) Apparatus and method for controlling robot arm, robot, and robot arm control program
JP2008296310A (ja) 加工ロボットの制御装置
JP6044511B2 (ja) ロボットの制御方法及びロボットシステム
JP2005334999A (ja) アシスト装置
CN111319038B (zh) 轨道生成系统和轨道生成方法
CN114845841B (zh) 控制方法、控制装置、机器人系统、程序及记录介质
JP2010069584A (ja) マニピュレータの制御装置および制御方法
JP7169561B2 (ja) ロボットシステム、ロボットの制御方法、サーボシステム
Matsushita et al. Nonholonomic equivalent disturbance based backward motion control of tractor-trailer with virtual steering
JP2021045810A (ja) モーション情報生成装置、エンドエフェクタ、ロボット及びロボットシステム
JP2008194760A (ja) ロボットアーム、及びその制御方法
JP2007076807A (ja) パワーアシスト装置とその適応モデル予測制御方法
WO2022203933A1 (en) Dynamic torque saturation limits for robot actuator(s)
Wu et al. Collaboration of multiple mobile manipulators with compliance based leader/follower approach