JP2018089736A - マスタスレーブシステム - Google Patents

マスタスレーブシステム Download PDF

Info

Publication number
JP2018089736A
JP2018089736A JP2016234503A JP2016234503A JP2018089736A JP 2018089736 A JP2018089736 A JP 2018089736A JP 2016234503 A JP2016234503 A JP 2016234503A JP 2016234503 A JP2016234503 A JP 2016234503A JP 2018089736 A JP2018089736 A JP 2018089736A
Authority
JP
Japan
Prior art keywords
master
slave robot
unit
bilateral control
control unit
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.)
Granted
Application number
JP2016234503A
Other languages
English (en)
Other versions
JP7035309B2 (ja
Inventor
智久 森平
Tomohisa Morihira
智久 森平
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 JP2016234503A priority Critical patent/JP7035309B2/ja
Publication of JP2018089736A publication Critical patent/JP2018089736A/ja
Application granted granted Critical
Publication of JP7035309B2 publication Critical patent/JP7035309B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Abstract

【課題】未熟な操作者でも、スレーブロボットを正確に操作すること。【解決手段】マスタスレーブシステムは、操作者が操作を行うマスタ操作手段と、マスタ操作手段と離れた位置に配置されたスレーブロボットと、マスタ操作手段の動作に応じてスレーブロボットを動作させるバイラテラル制御を行う制御手段と、スレーブロボットが動作する際の目標となる目標軌道を記憶する記憶手段を備える。制御手段は、スレーブロボットが記憶手段に記憶された目標軌道から逸脱すると、マスタ操作手段の操作に対し抵抗力が生じるように、マスタ操作手段の動作を制御する。【選択図】図1

Description

本発明は、バイラテラル制御を行うマスタスレーブシステムに関する。
操作者が操作を行うマスタ操作手段と、マスタ操作手段と離れた位置に配置されたスレーブロボットと、マスタ操作手段の動作に応じてスレーブロボットを動作させるバイラテラル制御を行う制御手段と、を備えるマスタスレーブシステムが知られている(例えば、特許文献1参照)。
特開2016−022559号公報
ところで、上述したバイラテラル制御では、操作者は、高い操作自由度で直感的にスレーブロボットを操作できる。しかし、未熟な操作者は、そのバイラテラル制御の高い操作自由度によって、スレーブロボットを誤操作する虞がある。
本発明は、かかる課題を解決するためになされたものであり、未熟な操作者でも、スレーブロボットを正確に操作することができるマスタスレーブシステムを提供することを主たる目的とする。
上記目的を達成するための本発明の一態様は、
操作者が操作を行うマスタ操作手段と、
前記マスタ操作手段と離れた位置に配置されたスレーブロボットと、
前記マスタ操作手段の動作に応じて前記スレーブロボットを動作させるバイラテラル制御を行う制御手段と、を備えるマスタスレーブシステムであって、
前記スレーブロボットが動作する際の目標となる目標軌道を記憶する記憶手段を備え、
前記制御手段は、前記スレーブロボットが前記記憶手段に記憶された目標軌道から逸脱すると、前記マスタ操作手段の操作に対し抵抗力が生じるように、該マスタ操作手段の動作を制御する、
ことを特徴とするマスタスレーブシステム
である。
本発明によれば、未熟な操作者でも、スレーブロボットを正確に操作することができるマスタスレーブシステムを提供することができる。
本発明の一実施形態に係るマスタスレーブシステムの概略的なシステム構成を示すブロック図である。 スレーブロボットの一例を示す図である。 スレーブロボットの把持部が行う動作の一例を示す図である。 目標軌道のボクセルの重み量を球の大きさで模擬的に表した図である。 ボクセルを球状体で表現した図である。 把持部の形状をカプセル形状あるいは角丸直方体で表現した図である。 カプセル型形状の把持部と球状体のボクセルとの距離を示す図である。 (a)カプセル状把持部及び球状ボクセルの一例を示す図である。(b)図8(a)に示すカプセル状把持部及び球状ボクセルに対して算出した、各球状ボクセルの重み量の一例を示す図である。 本発明の一実施形態に係るマスタスレーブ制御処理のフローの一例を示すフローチャートである。 ベースが移動した場合のダンピング処理を説明するための図である。 肘部近傍に障害物が存在する環境下でのダンピング処理を示す図である。 (a)ダンピング処理により目標軌道を生成する方法を示す図である。(b)ダンピング処理により目標軌道を生成する方法を示す図である。(c)ダンピング処理により目標軌道を生成する方法を示す図である。
以下、図面を参照して本発明の実施形態について説明する。図1は、本発明の一実施形態に係るマスタスレーブシステムの概略的なシステム構成を示すブロック図である。本実施形態に係るマスタスレーブシステム1は、操作者が操作を行うマスタ操作部2と、マスタ操作部2と離れた位置に配置されたスレーブロボット3と、マスタ操作部2の動作に応じてスレーブロボット3を動作させるバイラテラル制御を行うバイラテラル制御部4と、記憶部5と、を備えている。
スレーブロボット3は、例えば、図2に示す如く、6つ以上の関節部(手首関節、肘関節、肩関節など)を有し、先端位置姿勢(手先位置姿勢など)を6自由度以上操作可能な多関節型のアームロボットとして構成されている。スレーブロボット3は、例えば、ベース部31と、複数のリンク32と、各リンク32を回転可能に連結する関節部33と、リンク32に先端に設けられ対象物を把持操作する把持部34と、を有している。
各関節部33には、各関節部33を駆動させるアクチュエータが設けられている。アクチュエータは、例えば、モータ駆動、油圧駆動、空気圧駆動などである。各関節部33には、各関節部33の回転角(以下、関節角)を検出する角度センサが設けられている。各関節部33には、各関節部33のトルク(以下、関節トルク)を検出するトルクセンサが設けられている。なお、スレーブロボット3は、複数の関節部(股関節、膝関節、足首関節など)を有する脚ロボットであってもよい。
スレーブロボット3には、ステレオカメラ、デプスカメラなどの環境認識センサ35が設けられている。環境認識センサ35は、例えば、スレーブロボット3のタスク遂行状態などのスレーブロボット3の周囲の環境情報を取得する。
マスタ操作部2は、マスタ操作手段の一具体例である。マスタ操作部2は、操作者がアームなどを介して操作情報を入力する操作部を有している。スレーブロボット3は、マスタ操作部2に入力された操作情報に応じて動作する。マスタ操作部2は、スレーブロボット3とは離れた位置に配置されている。マスタ操作部2は、スレーブロボット3の先端位置での力やモーメント、あるいは、各関節トルクなどの力情報を、マスタ操作部2の操作部を操作する操作者に対し、フィードバックする。
マスタ操作部2は、例えば、操作者がスレーブロボット3の手先位置を指示する手先指示装置、あるいは、操作者が装着する多関節型のマスタロボットである。マスタ操作部2は、例えば、複数のリンクと、各リンクを回転可能に連結する関節部と、リンクに先端に設けられ、操作者が把持操作する操作部と、を有する。各関節部には、各関節部を駆動させるアクチュエータが設けられている。アクチュエータは、例えば、モータ駆動、油圧駆動、空気圧駆動などである。各関節部には、各関節角を検出する角度センサが設けられている。各関節部には、各関節トルクを検出するトルクセンサが設けられている。
バイラテラル制御部4は、制御手段の一具体例である。バイラテラル制御部4は、マスタ操作部2の動作に倣ってスレーブロボット3を動作させるバイラテラル制御を実行する。バイラテラル制御部4は、バイラテラル制御において、操作者がマスタ操作部2を操作した際のマスタ操作部2の動作と同様に、スレーブロボット3を動作させる制御を行う。このとき、バイラテラル制御部4は、スレーブロボット3にかかる力情報を操作者にフィードバックする。すなわち、バイラテラル制御部4は、スレーブロボット3にかかる力と同様の力がマスタ操作部2に発生するように、マスタ操作部2を制御する。
例えば、バイラテラル制御部4は、マスタ操作部2の角度センサにより検出された各関節角に基づき、順運動学を用いて、目標とするスレーブロボット3の先端位置姿勢を算出する。バイラテラル制御部4は、算出した先端位置姿勢に基づき、逆運動学を用いて、スレーブロボット3の各関節部33の目標関節角を算出する。バイラテラル制御部4は、算出した目標関節角に応じた指令信号をスレーブロボット3の各関節部33のアクチュエータに出力してPID制御などを行う。
同時に、バイラテラル制御部4は、スレーブロボット3の各関節部33のトルクセンサにより検出された関節トルクに基づいて、スレーブロボット3の先端(手先など)にかかる先端力(荷重、モーメントなど)を算出する。バイラテラル制御部4は、算出した先端力に基づいて、マスタ操作部2の操作部にスレーブロボット3の先端力と同一の力が発生するように、マスタ操作部2の各関節部のアクチュエータを制御してPID制御などを行う。
このようにして、バイラテラル制御部4は、バイラテラル制御において、操作者がマスタ操作部2を操作した際のマスタ操作部2の動作と同様に、スレーブロボット3を動作させつつ、スレーブロボット3にかかる力情報を、マスタ操作部2の操作部を介して操作者にフィードバックすることができる。なお、上記バイラテラル制御方法は一例であり、これに限定されない。
例えば、マスタ操作部2が、スレーブロボット3と類似の構成(関節部、リンクなどの構成)を有するマスタロボットとして構成されていてもよい。この場合、バイラテラル制御部4は、マスタロボットの各関節部と、対応するスレーブロボット3の各関節部33と、を同期させるようなバイラテラル制御を行ってもよい。具体的には、バイラテラル制御部4は、マスタロボットの各関節部の角度センサにより検出された関節角及びトルクセンサにより検出された関節トルクを、スレーブロボット3の各関節部33の目標関節角及び目標関節トルクに設定する。バイラテラル制御部4は、設定した目標関節角度及び目標関節トルクに応じた指令信号をスレーブロボット3の各関節部33のアクチュエータに出力する。
同時に、バイラテラル制御部4は、スレーブロボット3の各関節部33の角度センサにより検出された関節角及びトルクセンサにより検出された関節トルクを、マスタロボットの各関節部の目標関節角及び目標関節トルクに設定する。バイラテラル制御部4は、設定した目標関節角度及び目標関節トルクに応じた指令信号をマスタロボットの各関節部のアクチュエータに出力する。
以上により、操作者は、例えば、認識センサにより取得された環境情報(スレーブロボット3周囲の画像情報など)を参照し、マスタ操作部2を操作することで、スレーブロボット3をあたかも自らが直接操作しているかのような臨場感で、遠隔操作できる。同時に、操作者は、実際のスレーブロボット3に生じている反力を自ら感知することができる。
なお、バイラテラル制御部4は、は、例えば、演算処理等と行うCPU(Central Processing Unit)41、CPU41によって実行される演算プログラム等が記憶されたROM(Read Only Memory)やRAM(Random Access Memory)からなるメモリ42、外部と信号の入出力を行うインターフェイス部(I/F)43、などからなるマイクロコンピュータを中心にして、それぞれ、ハードウェア構成されている。CPU41、メモリ42、及びインターフェイス部43は、データバスなどを介して相互に接続されている。
ところで、上述したバイラテラル制御では、操作者は、高い操作自由度で直感的にスレーブロボットを操作できるというメリットを有している。しかしながら、スレーブロボット自体が高い自由度が動作できても、対象物が一定方向にしか動作しない場合も多く存在する。例えば、ドア、冷蔵庫、棚などの扉、タンスやロッカーなどの引出し、窓やシャッター、ペットボトルや瓶などの蓋、などの対象物は、一定方向にしか動作しない。
スレーブロボットが上記のような動作範囲に制約のある対象物を操作する場合、熟練した操作者は、バイラテラル制御の高い操作自由度を利用してスレーブロボットを動作範囲の制約内でより繊細に操作できる。しかし、未熟な操作者は、そのバイラテラル制御の高い操作自由度によって、その動作範囲の制約から外れてスレーブロボットを誤操作する虞がある。
これに対し、本実施形態に係るマスタスレーブシステム1は、スレーブロボット3が動作する際の目標となる目標軌道を記憶する記憶部5を備える。バイラテラル制御部4は、スレーブロボット3が記憶部5に記憶された目標軌道から逸脱すると、マスタ操作部2の操作に抵抗力が生じるようにマスタ操作部2の動作を制御する。
これにより、未熟な操作者がマスタ操作部2の操作を行い、スレーブロボット3が目標軌道から逸脱してもマスタ操作部2の操作に抵抗力が生じるため、スレーブロボット3が自ずと目標軌道へ戻るように、マスタ操作部の操作は修正される。したがって、未熟な操作者でも、目標軌道に従ってスレーブロボット3を正確に操作することができる。
本実施形態に係るマスタスレーブシステム1において、まず、スレーブロボット3が動作する際の目標となる目標軌道を記憶部5に記憶させる。記憶部5は、記憶手段の一具体例である。
例えば、熟練した操作者がマスタ操作部2を操作して、スレーブロボット3により対象物を移動させる。熟練した操作者がマスタ操作部2を操作することで、スレーブロボット3の理想的な軌道が生成される。このときのスレーブロボット3の把持部34の軌道(以下、手先軌道)を目標軌道とする。
より具体的には、図3に示す如く、環境認識センサ35は、スレーブロボット3の把持部34がドアの取手(対象物)を把持し、ドアを開けるまでの把持部34の動作を撮影する。バイラテラル制御部4は、環境認識センサ35からの撮影画像に基づいて、把持部34の特徴量を算出する。バイラテラル制御部4は、該算出した特徴量に基づいて、手先軌道を算出し、算出した手先軌道を目標軌道として記憶部5に記憶させる。
次に、スレーブロボット3が記憶部5に記憶された目標軌道から逸脱すると、マスタ操作部2に抵抗力が生じるように、マスタ操作部2の動作を制御する方法について説明する。
まず、記憶部5に記憶される目標軌道の設定方法について説明する。
上述のように記憶部5に記憶された目標軌道は、例えば、把持部34が3次元的に通過する位置をボクセル形式で表現している。各ボクセルは、マスタ操作部2の操作に対する抵抗力を示す重み情報(重み量)を有している。その重み量は、把持部34が各ボクセルを通過したときの接触度合に応じた値(例えば、0〜1)で正規化されている。ボクセルの粒度は、目標軌道を精度よく再現するために把持部形状に対して十分密に設定されている。また、以降の処理では時間情報を用いないため、ボクセルに対する時間情報は無視できる。図4は、目標軌道のボクセルの重み量を球の大きさで模擬的に表した図である。ボクセルの重み量は、スレーブロボット3の動作のし易さ、若しくは、動作制限(上述の抵抗力)を表している。
続いて、ボクセルの重み量の設定方法について詳細に説明する。
バイラテラル制御部4は、例えば、ボクセルを敷き詰めたマップ上を目標軌道に沿って把持部34を移動させ、把持部34と各ボクセルとの接触度合に応じて各ボクセルの重み量を算出する。
ここで、把持部34と各ボクセルとの接触度合の計算を簡略化するため、例えば、図5に示す如く、ボクセルを立方体ではなく、該立方体を内包する球状体で表現してもよい。同様に、把持部34の形状を、例えば、図6に示す如く、実際の形状を内包するような、カプセル形状あるいは角丸直方体(直方体の四方をカプセル形状で囲った形状)などの簡易形状で表現してもよい。
例えば、図7に示す如く、把持部34の形状をカプセル形状とすれば、カプセル形状の把持部34と球状体のボクセルとの距離は、線分と点との距離で算出でき、この距離を用いて把持部34と各ボクセルとの接触度合を容易に表示できる。さらに、把持部34の形状を角丸直方体とすれば、カプセル形状とOBB(Orient Bounding Box)という接触判定が容易な形状の組合せで、実際の把持部34の形状に近い形でより正確に接触判定を行うことができる。
バイラテラル制御部4は、上記のように設定した簡易形状の把持部34とその周囲の球状体のボクセルとの接触度合に応じて、各ボクセルの重み量wを、以下(1)−(4)のように算出する。本説明では、例えば、ボクセルと簡易形状をカプセル形状とする。
(1)バイラテラル制御部4は、カプセル形状の把持部34(以下、カプセル状把持部34)の2つの端点を結ぶ線分と、対象とする球状体のボクセル(以下、球状ボクセル)の中心との最近傍距離lを算出する。
(2)バイラテラル制御部4は、下記接触判定式(A)−(C)を用いて、各球状ボクセルの重み量wを算出する。但し、球状ボクセルの半径をr、カプセル状把持部34の両端の球の半径をrとする。
(A)l>r+r(カプセル状把持部34と球状ボクセルが接触しない場合)
:w=0
(B)r>l+r(カプセル状把持部34内に球状ボクセルが含まれる場合)
:w=1
(C)上記(A)及び(B)以外(例えば、図7のように、カプセル状把持部34と球状ボクセルが交わる場合)
:w=(r+r−l)/2r
図8(a)は、カプセル状把持部34及び球状ボクセルの一例を示す図である。図8(b)は、図8(a)に示すカプセル状把持部34及び球状ボクセルに対して算出した、各球状ボクセルの重み量の一例を示す図である。なお、上記各球状ボクセルの重み量wの算出方法は一例であり、これに限定されない。例えば、カプセル状把持部34と各球状ボクセルとが接触する体積比などの他の指標に応じて、各球状ボクセルの重み量wを設定してもよい。
(3)バイラテラル制御部4は、カプセル状把持部34を目標軌道に沿って移動させつつ、上記(1)及び(2)を繰返し、目標軌道及びその周辺の各球状ボクセルの重み量wを設定する。
(4)バイラテラル制御部4は、各球状ボクセル(x、y、z)において、最大の重み量wをその球状ボクセルの重み量して、w(x、y、z)とし、記憶部5に記憶させる。これにより、全球状ボクセルに、0〜1に正規化された重み量w(x、y、z)が設定される。なお、バイラテラル制御部4は、後段処理での不連続を抑制するために、近傍の球状ボクセル間で平均値を取ってフィルタをかける処理を行ってもよい。
以上のようにして、図4に示すような目標軌道のボクセルに対して重み量w(x、y、z)を設定することができる。
次に、上記のように球状ボクセルに重み量w(x、y、z)を設定した目標軌道を用いて、スレーブロボット3が目標軌道から逸脱すると、マスタ操作部2に抵抗力が生じるように、マスタ操作部2の動作を制御する方法について説明する。
例えば、1制御周期の微小時間において、操作者が、マスタ操作部2の操作部に対して、位置pn−1(xn−1、yn−1、zn−1)、姿勢(クォータニオン:Quaternion)qn−1(sn−1、un−1、vn−1、wn−1)から、位置p(x、y、z)、姿勢q(s、u、v、w)となるような操作入力を行った場合の処理を以下に説明する。
バイラテラル制御部4は、マスタ操作部2の各関節部の角度センサにより検出された関節角に基づいて、位置p及び姿勢qに対応するスレーブロボット3の把持部34の候補位置を算出する。
バイラテラル制御部4は、記憶部5の球状ボクセルに重み量w(x、y、z)を設定した目標軌道と、算出したスレーブロボット3の把持部34の候補位置と、に基づいて、上記接触判定式(A)−(C)を用いて、把持部34と球状ボクセルとの接触判定を行う。バイラテラル制御部4は、上記接触判定により、把持部34と接触する球状ボクセル群を抽出する。
バイラテラル制御部4は、抽出した球状ボクセル群の重み量w(x、y、z)の中から、最小の重み量をwとして算出する。
バイラテラル制御部4は、把持部34が重み量の小さい球状ボクセルに接触するとダンピングが強く作用しマスタ操作部2の動作が抑制されるダンピング処理を行う。例えば、目標軌道上の球状ボクセルには、最大の重み量(w=1)が設定され、球状ボクセルが目標軌道から外れに従って、その球状ボクセルには徐々に小さな重み量(0<w<1)が設定され、球状ボクセルが完全に目標軌道から外れると、球状ボクセルには、最小の重み量(w=0)が設定される。これにより、操作者は、把持部34が目標軌道上にあるときは、マスタ操作部2の操作部に抵抗力をほとんど感じないが、把持部34が目標軌道上から外れるに従がって、マスタ操作部2の操作部により強い抵抗力を感じ、把持部34が目標軌道上から完全に外れると、マスタ操作部2の操作部に最大の抵抗力を感じる。
ここで、操作者が未熟であっても、あるい程度経験を積むと、操作ミスが減少する。このため、バイラテラル制御部4は、その経験度合に応じて重み量wを増加させることで、上記ダンピング処理の抵抗力を減少させる処理を行ってもよい。これにより、操作者の現状のスキルにより適合した調整を行うことができる。例えば、抵抗力を半分にする場合、重み量wのレンジが[0〜1]ではなく[0.5〜1]となるように、バイラテラル制御部4は、式(w=0.5w+0.5)を用いて重み量wを補正してよい。
バイラテラル制御部4は、上述のように算出した重み量をwに基づいて、下記式1及び式2を用いて、スレーブロボット3の把持部34の目標位置p及び目標姿勢qを算出する。
Figure 2018089736
なお、上記式1及び式2において、クォータニオンが用いられているが、これに限定されず、例えば、オイラー角などを用いてもよい。
バイラテラル制御部4は、算出した目標位置p及び目標姿勢qとなるように、スレーブロボット3の各関節部33のアクチュエータを制御しつつ、スレーブロボット3の手先位置及び姿勢に対応させて、マスタ操作部2の操作部の位置及び姿勢をバイラテラル制御する。
なお、重み量wからwn−1に急激に変化すると操作者が感じる抵抗力も不連続に変化することとなり、操作感が悪い。このため、バイラテラル制御部4は、重み量wに時間的なローパスフィルタを掛ける処理や、近傍の球状ボクセル間の重み量との空間的なフィルタを掛ける処理、などを行い、この急激な変化を抑制してもよい。
バイラテラル制御部4は、上記ダンピング処理において、把持部34が目標軌道上にある場合、操作者がマスタ操作部2の操作部を操作し易くし(抵抗力を低くし)、把持部34が目標軌道上から外れるに従がって、操作者がマスタ操作部2の操作部を操作し難くなる(抵抗力が高くなる)ような制御を行っている。
さらに、バイラテラル制御部4は、把持部34が目標軌道上から外れた場合に、把持部34が目標軌道により戻り易くする制御を行ってもよい。これにより、操作者は、把持部34が目標軌道上から外れた場合でも、その軌道を容易に修正し目標軌道へ戻すことができる。
例えば、バイラテラル制御部4は、w′>0の場合(wがwn−1より増加している場合)、下記式を用いて、wを算出する。w′は、w′の微分値である。下記式において、βは、β>0の定数とし、予めメモリなどに設定されている。
=w(1+βw′
バイラテラル制御部4は、算出したwを上記式1及び式2のwに代入して、スレーブロボット3の把持部34の目標位置p及び目標姿勢qを算出する。
なお、バイラテラル制御部4は、慣性項を導入した上記式1及び式2を用いて、目標軌道との偏差量に仮想バネ定数を乗じることで目標軌道に引き戻すように、スレーブロボット3の把持部34の目標位置p及び目標姿勢qを算出してもよい。
バイラテラル制御部4は、上記把持部34と球状ボクセルとの接触判定において接触すると判定された記憶部5の球状ボクセルの重み量w(x、y、z)を増加させて更新を行ってもよい。これにより、単に熟練者などの目標軌道から逸脱し難くなるだけでなく、逸脱方向に繰返し操作すると次第にダンピング(抵抗力)が減少し、意図的に、熟練者などの目標軌道とは違う軌道を生成することができる。
例えば、バイラテラル制御部4は、上記把持部34と球状ボクセルとの接触判定において接触すると判定された記憶部5の球状ボクセルの重み量w(x、y、z)に、所定係数を加算あるいは乗算することで、その重み量w(x、y、z)を増加させてもよい。
さらに、バイラテラル制御部4は、記憶部5の球状ボクセルの重み量w(x、y、z)に、その接触度合に応じた所定係数を加算あるいは乗算することで、その重み量w(x、y、z)を増加させてもよい。例えば、接触度合が大きくなるに従がって、所定係数を減少させてもよい。なお、増加後の重み量w(x、y、z)は1以下とする。所定係数は、メモリなどに予め設定され、操作者などが適宜設定変更できる。
上述したように、ダンピングを可変させることで、熟練者などによる目標軌道をある程度踏襲して安全性を確保しつつ、現在の操作者による臨機応変な操作も反映でき、マスタスレーブ操作法が持つ優位性を生かしたより柔軟な操作が実現できる。
例えば、熟練者などによる目標軌道の生成時におけるドアの大きさと、操作者による現在の操作時におけるドアの大きさとが異なる場合などの、目標軌道の生成時の環境と現在の環境とが異なる場合が想定される。このような場合でも、上記ダンピングを可変させ、目標軌道からの逸脱を効果的に緩和することで、操作者は操作遂行できる。
さらに、上記ダンピングの可変処理を繰り返すと、各球状ボクセルの重み量が熟練者などにより設定された初期値から徐々に大きく外れていく。したがって、バイラテラル制御部4は、記憶部5の球状ボクセルの重み量w(x、y、z)に、例えば、時間係数を乗算するなどを行うことで、該重み量を時間経過と共に元の初期値に戻す処理を行ってもよい。これにより、上記ダンピングの可変処理を繰り返しても、各球状ボクセルの重み量が熟練者などにより設定された初期値から大きく外れるのを抑制できる。
図9は、本実施形態に係るマスタスレーブ制御処理のフローの一例を示すフローチャートである。
例えば、マスタスレーブシステム1に対し、次の初期設定が行われる(ステップS101)。スレーブロボット3が動作する際の目標となる目標軌道を記憶部5に記憶させる。バイラテラル制御部4は、記憶部5に記憶された目標軌道の各球状ボクセルの重み量wを設定する。バイラテラル制御部4には、上記ダンピング処理の開始及び終了のトリガが設定される。より具体的には、バイラテラル制御部4は、操作者の視線入力、ジェスチャ、音声コマンドなどの所定の物理入力を受けると、その物理入力を上記ダンピング処理の開始のトリガ(以下、開始トリガ)、あるいは、上記ダンピング処理の終了のトリガ(以下、終了トリガ)として、該ダンピング処理を開始あるいは終了する。さらに、バイラテラル制御部4は、ドアを検出及びスレーブロボット3の把持部34がドアノブを把持したことを検出すると、その検出を上記ダンピング処理の開始トリガとして、該ダンピング処理を自動的に開始してもよい。バイラテラル制御部4は、ドアの開状態を検出及びスレーブロボット3の把持部34がドアノブを離したことを検出すると、その検出を上記ダンピング処理の終了トリガとして、該ダンピング処理を自動的に終了してもよい。
バイラテラル制御部4は、操作者によるマスタ操作部2の操作部の操作に応じて、次の暫定のスレーブロボット3の把持部34の目標位置p及び目標姿勢qを算出する(ステップS102)。
バイラテラル制御部4は、ダンピング処理中であるか否かを判定する(ステップS103)。
バイラテラル制御部4は、ダンピング処理中であると判定したとき、所定の物理入力などに基づいて、本ダンピング処理を解除(終了)するか否かを判定する(ステップS104)。
バイラテラル制御部4は、本ダンピング処理を解除しないと判定すると(ステップS104のNO)、ダンピング処理を継続する。バイラテラル制御部4は、記憶部5の目標軌道と、算出したスレーブロボット3の把持部34の候補位置と、に基づいて、把持部34と球状ボクセルとの接触判定を行い、把持部34と接触する球状ボクセル群を抽出する(ステップS105)。一方、バイラテラル制御部4は、本ダンピング処理を解除すると判定すると(ステップS104のYES)、下記の(ステップS111)に移行する。
バイラテラル制御部4は、抽出した球状ボクセル群の重み量w(x、y、z)の中から、最小の重み量をwとして算出する(ステップS106)。
バイラテラル制御部4は、算出した重み量をwに基づいて、上記式1及び式2を用いて、スレーブロボット3の把持部34の目標位置p及び目標姿勢qを算出する(ステップS107)。
バイラテラル制御部4は、上記把持部34と球状ボクセルとの接触判定において接触すると判定された記憶部5の球状ボクセルの重み量w(x、y、z)の更新を行う(ステップS108)。
バイラテラル制御部4は、記憶部5の球状ボクセルの重み量w(x、y、z)を時間経過と共に元の初期値に戻す処理を行い(ステップS108)、後述の処理(ステップS112)に移行する。
バイラテラル制御部4は、ダンピング処理中でないと判定したとき(ステップS103のNO)、上記ダンピング処理の開始トリガに基づいて、本ダンピング処理を開始するか否かを判定する(ステップS110)。バイラテラル制御部4は、上記ダンピング処理の開始トリガに基づいて、本ダンピング処理を開始すると判定すると(ステップS110のYES)、上記(ステップS105)に移行する。一方、バイラテラル制御部4は、上記ダンピング処理の開始トリガに基づいて、本ダンピング処理を開始しないと判定すると(ステップS110のNO)、目標位置p=p及び目標姿勢q=qに設定する(ステップS111)。
バイラテラル制御部4は、算出した目標位置p及び目標姿勢qとなるように、スレーブロボット3の各関節部33のアクチュエータを制御しつつ、スレーブロボット3の手先位置及び姿勢に対応させて、マスタ操作部2の操作部の位置及び姿勢をバイラテラル制御する(ステップS112)。
バイラテラル制御部4は、nをインクリメントし(ステップS113)、上記(ステップS102)に移行する。
以上、本実施形態に係るマスタスレーブシステム1は、スレーブロボット3が動作する際の目標となる目標軌道を記憶する記憶部5を備える。バイラテラル制御部4は、スレーブロボット3が記憶部5に記憶された目標軌道から逸脱すると、マスタ操作部2の操作に抵抗力が生じるようにマスタ操作部2の動作を制御する。これにより、スレーブロボット3が目標軌道から逸脱してもマスタ操作部2の操作に抵抗力が生じるため、スレーブロボット3が自ずと目標軌道へ戻るように、マスタ操作部の操作は修正される。したがって、未熟な操作者でも、目標軌道に従ってスレーブロボット3を正確に操作することができる。
なお、本発明は上記実施の形態に限られたものではなく、趣旨を逸脱しない範囲で適宜変更することが可能である。
上記実施形態において、スレーブロボット3は、ベースなどに固定されているが、これに限定されない。例えば、スレーブロボット3は車輪や脚部を有し、移動する構成であってもよい。図10に示す如く、ベースが移動しても、ベースと対象物との相対位置関係から、上記ベースが固定された場合と同様に、ダンピング処理を行い、同様の効果を得ることができる。
上記実施形態において、バイラテラル制御部4は、スレーブロボット3の把持部34(手先)と球状ボクセルとの接触判定を行い重み量wを算出して、把持部34の目標位置p及び目標姿勢qを算出しているが、これに限定されない。バイラテラル制御部4は、スレーブロット把持部34と同様に、肘部と球状ボクセルとの接触判定も行い重み量を算出して、肘部の目標位置p及び目標姿勢qも算出してもよい。これにより、例えば、図11に示すような肘部近傍に障害物が存在する環境下においても、予め熟練者がバイラテラル制御の冗長自由度を利用してその障害物を回避するような操作を行った目標軌道に沿って、未熟者も安全かつ正確に複雑環境下でのスレーブロボット3の遠隔操作を実現できる。
上記実施形態において、バイラテラル制御部4は、上記ダンピング処理を行って、目標軌道を生成してもよい。
ここで、熟練者にとっても、未経験の環境下でスレーブロボット3を遠隔操作するのが困難となる場合がある。そこで、図12(a)に示す如く、初めに、バイラテラル制御部4は、僅かな重み量の球状ボクセルが設定された目標軌道に基づいて、把持部34と球状ボクセルとの接触判定を行い、把持部34の目標位置p及び目標姿勢qを算出して、バイラテラル制御を行う。このとき、ダンピング処理効果によって、マスタ操作部2の操作は低速度となるが、誤操作が減少し正確な動作が期待できる。そして、バイラテラル制御部4は、ダンピング処理を繰り返すことで、各球状ボクセルの重み量を増加させ更新する。これにより、図12(b)に示す如く、把持部34の軌道上及び周辺の各球状ボクセルの重み量が増加し、最終的に、図12(c)に示す如く、目標軌道が生成される。このように、バイラテラル制御部4は、僅かな重み量の球状ボクセルの目標軌道から、上記ダンピング処理及び各球状ボクセルの重み量の更新を繰返し、目標軌道を生成する。
本発明は、例えば、図9に示す処理を、CPUにコンピュータプログラムを実行させることにより実現することも可能である。
プログラムは、様々なタイプの非一時的なコンピュータ可読媒体(non-transitory computer readable medium)を用いて格納され、コンピュータに供給することができる。非一時的なコンピュータ可読媒体は、様々なタイプの実体のある記録媒体(tangible storage medium)を含む。非一時的なコンピュータ可読媒体の例は、磁気記録媒体(例えばフレキシブルディスク、磁気テープ、ハードディスクドライブ)、光磁気記録媒体(例えば光磁気ディスク)、CD−ROM(Read Only Memory)、CD−R、CD−R/W、半導体メモリ(例えば、マスクROM、PROM(Programmable ROM)、EPROM(Erasable PROM)、フラッシュROM、RAM(random access memory))を含む。
プログラムは、様々なタイプの一時的なコンピュータ可読媒体(transitory computer readable medium)によってコンピュータに供給されてもよい。一時的なコンピュータ可読媒体の例は、電気信号、光信号、及び電磁波を含む。一時的なコンピュータ可読媒体は、電線及び光ファイバ等の有線通信路、又は無線通信路を介して、プログラムをコンピュータに供給できる。
1 マスタスレーブシステム、2 マスタ操作部、3 スレーブロボット、4 バイラテラル制御部、5 記憶部、31 ベース部、32 リンク、33 関節部、34 把持部、35 環境認識センサ

Claims (1)

  1. 操作者が操作を行うマスタ操作手段と、
    前記マスタ操作手段と離れた位置に配置されたスレーブロボットと、
    前記マスタ操作手段の動作に応じて前記スレーブロボットを動作させるバイラテラル制御を行う制御手段と、を備えるマスタスレーブシステムであって、
    前記スレーブロボットが動作する際の目標となる目標軌道を記憶する記憶手段を備え、
    前記制御手段は、前記スレーブロボットが前記記憶手段に記憶された目標軌道から逸脱すると、前記マスタ操作手段の操作に対し抵抗力が生じるように、該マスタ操作手段の動作を制御する、
    ことを特徴とするマスタスレーブシステム。
JP2016234503A 2016-12-01 2016-12-01 マスタスレーブシステム Active JP7035309B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2016234503A JP7035309B2 (ja) 2016-12-01 2016-12-01 マスタスレーブシステム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2016234503A JP7035309B2 (ja) 2016-12-01 2016-12-01 マスタスレーブシステム

Publications (2)

Publication Number Publication Date
JP2018089736A true JP2018089736A (ja) 2018-06-14
JP7035309B2 JP7035309B2 (ja) 2022-03-15

Family

ID=62564926

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2016234503A Active JP7035309B2 (ja) 2016-12-01 2016-12-01 マスタスレーブシステム

Country Status (1)

Country Link
JP (1) JP7035309B2 (ja)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2020131411A (ja) * 2019-02-26 2020-08-31 住友重機械工業株式会社 ロボット制御システム
JPWO2021117701A1 (ja) * 2019-12-13 2021-06-17
JP2022529776A (ja) * 2019-04-24 2022-06-24 イントリンジック イノベーション エルエルシー ロボットの運動計画
WO2023038134A1 (ja) * 2021-09-13 2023-03-16 株式会社メルティンMmi 操作者の動きに基づいてロボットの動きを制御するためのプログラム、方法、およびシステム
JP7385373B2 (ja) 2019-05-10 2023-11-22 川崎重工業株式会社 ロボットシステム及びその制御方法

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH08118262A (ja) * 1994-10-20 1996-05-14 Komatsu Ltd マスタスレーブマニピュレータ
JP2003150569A (ja) * 2001-11-09 2003-05-23 Sony Corp 情報処理システムおよび情報処理方法、プログラムおよび記録媒体、並びに情報処理装置
JP2009018380A (ja) * 2007-07-12 2009-01-29 Toyota Motor Corp ロボット、ロボットの制御方法、及びロボットの制御システム
WO2016109887A1 (en) * 2015-01-09 2016-07-14 Titan Medical Inc. Alignment difference safety in a master-slave robotic system

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH08118262A (ja) * 1994-10-20 1996-05-14 Komatsu Ltd マスタスレーブマニピュレータ
JP2003150569A (ja) * 2001-11-09 2003-05-23 Sony Corp 情報処理システムおよび情報処理方法、プログラムおよび記録媒体、並びに情報処理装置
JP2009018380A (ja) * 2007-07-12 2009-01-29 Toyota Motor Corp ロボット、ロボットの制御方法、及びロボットの制御システム
WO2016109887A1 (en) * 2015-01-09 2016-07-14 Titan Medical Inc. Alignment difference safety in a master-slave robotic system

Cited By (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2020131411A (ja) * 2019-02-26 2020-08-31 住友重機械工業株式会社 ロボット制御システム
JP2022529776A (ja) * 2019-04-24 2022-06-24 イントリンジック イノベーション エルエルシー ロボットの運動計画
JP7279194B2 (ja) 2019-04-24 2023-05-22 イントリンジック イノベーション エルエルシー ロボットの運動計画
US11833694B2 (en) 2019-04-24 2023-12-05 Intrinsic Innovation Llc Robot motion planning
JP7385373B2 (ja) 2019-05-10 2023-11-22 川崎重工業株式会社 ロボットシステム及びその制御方法
JPWO2021117701A1 (ja) * 2019-12-13 2021-06-17
WO2021117701A1 (ja) * 2019-12-13 2021-06-17 川崎重工業株式会社 マスタスレーブシステム及び制御方法
JP7288521B2 (ja) 2019-12-13 2023-06-07 川崎重工業株式会社 マスタスレーブシステム及び制御方法
WO2023038134A1 (ja) * 2021-09-13 2023-03-16 株式会社メルティンMmi 操作者の動きに基づいてロボットの動きを制御するためのプログラム、方法、およびシステム
JP2023041345A (ja) * 2021-09-13 2023-03-24 株式会社メルティンMmi 操作者の動きに基づいてロボットの動きを制御するためのプログラム、方法、およびシステム
JP7351539B2 (ja) 2021-09-13 2023-09-27 株式会社メルティンMmi 操作者の動きに基づいてロボットの動きを制御するためのプログラム、方法、およびシステム

Also Published As

Publication number Publication date
JP7035309B2 (ja) 2022-03-15

Similar Documents

Publication Publication Date Title
US20210205986A1 (en) Teleoperating Of Robots With Tasks By Mapping To Human Operator Pose
JP2018089736A (ja) マスタスレーブシステム
Koenemann et al. Real-time imitation of human whole-body motions by humanoids
Sheng et al. An integrated framework for human–robot collaborative manipulation
Fritsche et al. First-person tele-operation of a humanoid robot
Darvish et al. Whole-body geometric retargeting for humanoid robots
Devine et al. Real time robotic arm control using hand gestures with multiple end effectors
Schultz et al. Goal-predictive robotic teleoperation from noisy sensors
CN111085996B (zh) 带电作业机器人的控制方法、装置及系统
JP7295421B2 (ja) 制御装置及び制御方法
Liu et al. Intention recognition in physical human-robot interaction based on radial basis function neural network
Seleem et al. Development and stability analysis of an imitation learning-based pose planning approach for multi-section continuum robot
Chen et al. Development of a user experience enhanced teleoperation approach
CN114516060A (zh) 用于控制机器人装置的设备和方法
Iossifidis et al. Autonomous reaching and obstacle avoidance with the anthropomorphic arm of a robotic assistant using the attractor dynamics approach
JP6567998B2 (ja) 制御方法
Aleotti et al. Position teaching of a robot arm by demonstration with a wearable input device
Kadalagere Sampath et al. Review on human‐like robot manipulation using dexterous hands
Gäbert et al. Generation of human-like arm motions using sampling-based motion planning
JP5776486B2 (ja) ロボット制御装置、その制御方法及びプログラム
Liu et al. Virtual reality based tactile sensing enhancements for bilateral teleoperation system with in-hand manipulation
Orbik et al. Human hand motion retargeting for dexterous robotic hand
Zubrycki et al. Intuitive user interfaces for mobile manipulation tasks
Fang et al. Learning from wearable-based teleoperation demonstration
Lin Embedding Intelligence into Robotic Systems-Programming, Learning, and Planning

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20190917

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20200914

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20201027

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20201228

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20210608

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20210805

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20220214

R151 Written notification of patent or utility model registration

Ref document number: 7035309

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151