(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2022-03-29
(45)【発行日】2022-04-06
(54)【発明の名称】ロボットシステム及びロボットシステムの制御方法
(51)【国際特許分類】
B25J 3/00 20060101AFI20220330BHJP
【FI】
B25J3/00 A
(21)【出願番号】P 2017100385
(22)【出願日】2017-05-19
【審査請求日】2020-04-22
【前置審査】
(73)【特許権者】
【識別番号】000000974
【氏名又は名称】川崎重工業株式会社
(74)【代理人】
【識別番号】110000556
【氏名又は名称】特許業務法人 有古特許事務所
(72)【発明者】
【氏名】橋本 康彦
(72)【発明者】
【氏名】下村 信恭
(72)【発明者】
【氏名】掃部 雅幸
(72)【発明者】
【氏名】藤森 潤
(72)【発明者】
【氏名】木下 博貴
(72)【発明者】
【氏名】志鷹 拓哉
(72)【発明者】
【氏名】▲高▼橋 大樹
【審査官】稲垣 浩司
(56)【参考文献】
【文献】特開昭60-177883(JP,A)
【文献】国際公開第2017/033378(WO,A1)
(58)【調査した分野】(Int.Cl.,DB名)
B25J 1/00 - 21/02
(57)【特許請求の範囲】
【請求項1】
操作端を有するマスタアームと、
作業端を有するスレーブアームと、
操作者によって前記操作端に付与される操作力を検出する操作力検出部と、
前記作業端又は当該作業端によって保持されたワークに付与される反力を検出する反力検出部と、
前記操作力と前記反力に基づいて、マスタアームの動作指令を生成するとともに、スレーブアームの動作指令を生成するシステム制御部と、
前記システム制御部によって生成されたマスタアームの動作指令に基づいて、マスタアームを制御するように構成されたマスタ側制御部と、
前記システム制御部によって生成されたスレーブアームの動作指令に基づいて、スレーブアームを制御するように構成されたスレーブ側制御部と、
を備えるロボットシステムであって、
前記システム制御部は、前記反力が急激に時間変化した状態である反力急変状態において、前記操作端を操作する操作者に対し、操作感覚を誇張して提示するための誇張表現部を有し、
前記誇張表現部は、前記反力急変状態では、前記反力に基づいて、前記システム制御部によって
前記操作力と前記反力の減算結果に基づいて生成されたマスタアームの動作指令
に加えることで前記マスタアームの動作指令を修正するための修正成分を生成し、前記システム制御部によって生成されたスレーブアームの動作指令を修正するための修正成分は生成しない、ロボットシステム。
【請求項2】
操作端を有するマスタアームと、
作業端を有するスレーブアームと、
操作者によって前記操作端に付与される操作力を検出する操作力検出部と、
前記作業端又は当該作業端によって保持されたワークに付与される反力を検出する反力検出部と、
前記操作力と前記反力に基づいて、マスタアームの動作指令を生成するとともに、スレーブアームの動作指令を生成するシステム制御部と、
前記システム制御部によって生成されたマスタアームの動作指令に基づいて、マスタアームを制御するように構成されたマスタ側制御部と、
前記システム制御部によって生成されたスレーブアームの動作指令に基づいて、スレーブアームを制御するように構成されたスレーブ側制御部と、
を備えるロボットシステムであって、
前記システム制御部は、前記反力が急激に時間変化した状態である反力急変状態において、前記操作端を操作する操作者に対し、操作感覚を誇張して提示するための誇張表現部を有し、
前記誇張表現部は、前記反力急変状態では、前記反力に基づいて、前記システム制御部によって生成されたマスタアームの動作指令を修正するための修正成分を生成し、前記システム制御部によって生成されたスレーブアームの動作指令を修正するための修正成分は生成
せず、
前記システム制御部は、前記スレーブアームの位置情報と、前記修正成分を加味したマスタアームの位置情報に基づいて、前記スレーブアームと前記マスタアームの位置関係のずれを補正するための補正成分を生成する位置ずれ補正部を更に有し、
前記動作指令は、位置指令である、ロボットシステム。
【請求項3】
前記動作指令は、位置指令である、請求項
1に記載のロボットシステム。
【請求項4】
前記システム制御部は、前記スレーブアームの位置情報と、前記修正成分を加味したマスタアームの位置情報に基づいて、前記スレーブアームと前記マスタアームの位置関係のずれを補正するための補正成分を生成する位置ずれ補正部を更に備える、請求項
3に記載のロボットシステム。
【請求項5】
前記修正成分は、三角波成分である、請求項1
乃至4のいずれか一項に記載のロボットシステム。
【請求項6】
前記修正成分は、サイン波成分である、請求項1
乃至4のいずれか一項に記載のロボットシステム。
【請求項7】
前記修正成分は、前記反力の時間の二階微分値である、請求項1
乃至4のいずれか一項に記載のロボットシステム。
【請求項8】
予め、ロボットシステムの特定の作業における、スレーブアームの位置情報、前記操作力、および、前記反力をデータとして収集し、収集したデータに応じて一以上の作業状態を分類し、分類した作業状態を記憶しておく記憶部と、
ロボットシステムの動作中において、スレーブアームの位置情報、前記操作力、および、前記反力のうち少なくとも一つの値に基づいて、前記記憶部に記憶された前記作業状態のいずれの作業状態に分類されるかを判定する作業状態判定部を有する第2誇張表現部と、を更に備える、請求項1乃至
7のいずれか一項に記載のロボットシステム。
【請求項9】
操作端を有するマスタアームと、
作業端を有するスレーブアームと、
操作者によって前記操作端に付与される操作力を検出する操作力検出部と、
前記作業端又は当該作業端によって保持されたワークに付与される反力を検出する反力検出部と、
前記操作力と前記反力に基づいて、マスタアームの動作指令を生成するとともに、スレーブアームの動作指令を生成するシステム制御部と、
前記システム制御部によって生成されたマスタアームの動作指令に基づいて、マスタアームを制御するように構成されたマスタ側制御部と、
前記システム制御部によって生成されたスレーブアームの動作指令に基づいて、スレーブアームを制御するように構成されたスレーブ側制御部と、
を備えるロボットシステムであって、
予め、ロボットシステムの特定の作業における、スレーブアームの位置情報、前記操作力、および、前記反力をデータとして収集し、収集したデータに応じて一以上の作業状態を分類し、分類した作業状態を記憶しておく記憶部と、第2誇張表現部と、を更に備え、
前記第2誇張表現部は、
ロボットシステムの動作中において、スレーブアームの位置情報、前記操作力、および、前記反力のうち少なくとも一つの値に基づいて、前記記憶部に記憶された前記作業状態のいずれの作業状態に分類されるかを判定する作業状態判定部を有する、ロボットシステム。
【請求項10】
前記作業状態判定部は、
ロボットシステムの動作中において、前記反力が所定の方向に発生し、かつ、前記操作力が前記所定の方向に直交する方向に発生している作業状態を、対象物を探っている状態(searching)であると判定する、請求項
8又は
9に記載のロボットシステム。
【請求項11】
前記作業状態判定部は、
ロボットシステムの動作中において、スレーブアームの位置情報が所定位置よりも所定の方向に位置し、かつ、前記反力が変化した作業状態を、前記作業端によって保持されたワークが対象物に挿入された状態(inserted)であると判定する、請求項
8又は
9に記載のロボットシステム。
【請求項12】
前記誇張表現部は、前記作業状態を、音、マスタアームの振動および光のうち、少なくとも一つによって操作者に提示する作業状態提示部を更に備える、請求項
8乃至
11のいずれか一項に記載のロボットシステム。
【請求項13】
操作端を有するマスタアームと、作業端を有するスレーブアームと、操作者によって前記操作端に付与される操作力を検出する操作力検出部と、前記作業端又は当該作業端によって保持されたワークに付与される反力を検出する反力検出部と、前記操作力と前記反力に基づいて、マスタアームの動作指令を生成するとともに、スレーブアームの動作指令を生成するシステム制御部と、前記システム制御部によって生成されたマスタアームの動作指令に基づいて、マスタアームを制御するように構成されたマスタ側制御部と、前記システム制御部によって生成されたスレーブアームの動作指令に基づいて、スレーブアームを制御するように構成されたスレーブ側制御部と、を備えるロボットシステムの制御方法であって、
前記システム制御部により、前記反力が急激に時間変化した状態である反力急変状態において、前記操作端を操作する操作者に対し、操作感覚を誇張して提示し、
前記反力急変状態では、前記反力に基づいて、前記システム制御部によって
前記操作力と前記反力の減算結果に基づいて生成されたマスタアームの動作指令
に加えることで前記マスタアームの動作指令を修正するための修正成分を生成し、
前記システム制御部によって生成されたスレーブアームの動作指令を修正するための修正成分は生成しない、ロボットシステムの制御方法。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、ロボットシステム及びロボットシステムの制御方法に関する。
【背景技術】
【0002】
危険作業や微細作業などで、操作者が直接作業を行うことなく、操作者がマスタアームを操作してスレーブアームによって作業を行うマスタ・スレーブ型のロボットシステムが開発されている。例えば特許文献1には、スレーブアームが作業対象物や作業環境から受ける反力情報を、マスタアームを介して操作者に伝達し、作業効率を高めるバイラテラル制御方式のロボットシステムが開示されている。一般に、バイラテラル制御とは、マスタアームからスレーブアームへの姿勢制御とスレーブアームからマスタアームへの力制御を同時に行う制御方法である。
【先行技術文献】
【特許文献】
【0003】
【発明の概要】
【発明が解決しようとする課題】
【0004】
しかし、上記従来のバイラテラル制御方式によるロボットシステムにおいて、反力に対する応答性を上げた場合、感覚が操作者に伝わりやすいが、制御系が不安定になる。このため、実際の用途では反力に対する応答性を下げざるを得ない。この場合、ロボットの動作が安定になり、操作し易いが、例えば当たった感覚や、押付ながら探る感覚が操作者に伝わり難くなる。また、触覚を再現しようとすると感覚検出用のセンサが別途必要になる。このような課題は、少なくともスレーブアームの先端に力覚センサを備えたマスタ・スレーブ型のロボットシステムに共通する。
【0005】
本発明は上記のような課題を解決するためになされたもので、マスタ・スレーブ型のロボットシステムにおいて感覚検出用のセンサを別途設けること無く、操作感覚を向上させることを目的としている。
【課題を解決するための手段】
【0006】
上記目的を達成するために、本発明のある形態に係るロボットシステムは、操作端を有するマスタアームと、作業端を有するスレーブアームと、操作者によって前記操作端に付与される操作力を検出する操作力検出部と、前記作業端又は当該作業端によって保持されたワークに付与される反力を検出する反力検出部と、前記操作力と前記反力に基づいて、マスタアームの動作指令を生成するとともに、スレーブアームの動作指令を生成するシステム制御部と、前記システム制御部によって生成されたマスタアームの動作指令に基づいて、マスタアームを制御するように構成されたマスタ側制御部と、前記システム制御部によって生成されたスレーブアームの動作指令に基づいて、スレーブアームを制御するように構成されたスレーブ側制御部と、を備えるロボットシステムであって、前記システム制御部は、前記反力が急激に時間変化した状態である反力急変状態において、前記操作端を操作する操作者に対し、操作感覚を誇張して提示するための誇張表現部を有する。
【0007】
上記構成によれば、マスタ・スレーブ型のロボットシステムにおいて、作業端(又は当該作業端によって保持されたワーク)に付与される反力が急激に時間変化した反力急変状態において、操作端を操作する操作者に対し、操作感覚が誇張して提示される。これにより、例えば操作者はスレーブアームの作業端が対象物に接触したことを認識することができる。
【0008】
前記誇張表現部は、前記反力急変状態では、前記反力に基づいて、前記システム制御部によって生成されたマスタアームの動作指令を修正するための修正成分を生成するようにしてもよい。
【0009】
上記構成によれば、操作力及び反力に基づいて、マスタアームの動作指令およびスレーブアームの動作指令を生成するバイラテラル制御において、上記反力急変状態では、スレーブアームの反力に基づいて、マスタアームの動作指令を修正するための修正成分が生成される。これにより、反力がマスタアームの動作指令に反映されるので、操作者はスレーブアームの作業端が対象物に接触したことを認識できる。これにより、バイラテラル制御において、高周波の細かい感覚を提示することができる。
【0010】
尚、前記修正成分は、三角波成分であってもよい。マスタアームを操作する操作者に対し、スレーブアームの作業端が固い対象物に当たった感覚を誇張表現することができる。
【0011】
また、前記修正成分は、サイン波成分であってもよい。マスタアームを操作する操作者に対し、スレーブアームの作業端が軟らかい対象物に当たった感覚を誇張表現することができる。
【0012】
また、前記修正成分は、前記反力の時間の二階微分値であってもよい。マスタアームを操作する操作者に対し、スレーブアームの作業端が実際に対象物に当たった感覚を誇張表現することができる。
【0013】
上記ロボットシステムにおける動作指令は、位置指令であってもよい。上記構成によれば、操作力及び反力に基づいて、マスタアームの動作指令およびスレーブアームの動作指令を生成する並列型バイラテラル制御において、操作者に対し、操作感覚を誇張して提示することができる。
【0014】
上記ロボットシステムの前記システム制御部は、前記スレーブアームの位置情報と、前記修正成分を加味したマスタアームの位置情報に基づいて、マスタアームの前記位置指令を補正するための補正成分を生成する位置ずれ補正部を更に備えるようにしてもよい。
【0015】
上記構成によれば、並列型バイラテラル制御において、上記誇張表現部により生じたマスタアームとスレーブアームの位置関係のずれを徐々に補正することができる。操作者に違和感がないように、操作感覚を誇張表現した後に、マスタアームがゆっくりと動いて補正されるので、マスタアームの操作に影響を与えることは無い。
【0016】
上記ロボットシステムは、予め、ロボットシステムの特定の作業における、スレーブアームの位置情報、前記操作力、および、前記反力をデータとして収集し、収集したデータに応じて一以上の作業状態を分類し、分類した作業状態を記憶しておく記憶部を更に備え、前記誇張表現部は、ロボットシステムの動作中において、スレーブアームの位置情報、前記操作力、および、前記反力のうち少なくとも一つの値に基づいて、前記記憶部に記憶された前記作業状態のいずれの作業状態に分類されるかを判定する作業状態判定部を更に備えるようにしてもよい。
【0017】
上記構成によれば、操作者はスレーブアームの作業端が対象物に接触したことを認識するだけでなく、接触後に開始される作業の状態を正確に認識することができる。例えば上記反力急変状態を作業が開始された状態であるとみなしてもよい。
【0018】
前記作業状態判定部は、ロボットシステムの動作中において、前記反力が所定の方向に発生し、かつ、前記操作力が前記所定の方向に直交する方向に発生している作業状態を、対象物を探っている状態(searching)であると判定するようにしてもよい。
【0019】
前記作業状態判定部は、ロボットシステムの動作中において、スレーブアームの位置情報が所定位置よりも所定の方向に位置し、かつ、前記反力が変化した作業状態を、前記作業端によって保持されたワークが対象物に挿入された状態(inserted)であると判定するようにしてもよい。
【0020】
前記誇張表現部は、前記作業状態を、音、マスタアームの振動および光のうち、少なくとも一つによって操作者に提示する作業状態提示部を更に備えるようにしてもよい。
【発明の効果】
【0021】
本発明は、以上に説明した構成を有し、マスタ・スレーブ型のロボットシステムにおいて感覚検出用のセンサを別途設けること無く、操作感覚を向上させることができる。
【図面の簡単な説明】
【0022】
【
図1】
図1は、本発明の第1実施形態に係るロボットシステムの全体の構成を示す図である。
【
図2】
図2は、
図1のロボットシステムの制御系の構成を示すブロック図である。
【
図3】
図3は、反力、及び、誇張表現部により生成される修正成分の時間変化を例示するグラフである。
【
図4】
図4は、本発明の第2実施形態に係るロボットシステムの制御系の構成を示すブロック図である。
【
図5】
図5は、本発明の第3実施形態に係るロボットシステムの制御系の構成を示すブロック図である。
【
図6】
図6は、ロボットシステムの動作の一例を示す模式図である。
【発明を実施するための形態】
【0023】
以下、好ましい実施形態を、図面を参照しながら説明する。なお、以下では全ての図面を通じて同一または相当する要素には同一の参照符号を付して、その重複する説明を省略する。また、図面は理解しやすくするために、それぞれの構成要素を模式的に示したものである。
【0024】
(第1実施形態)
図1は、本発明の第1実施形態に係るロボットシステムの構成例を示す模式図である。
図1に示すように、本実施形態のロボットシステム100は、スレーブアーム1がマスタアーム2により遠隔操作されるマスタ・スレーブ式の遠隔操作システムで構成される。
【0025】
ロボットシステム100(以下、遠隔操作システムともいう)は、第1のロボットで構成されるスレーブアーム1と、第2のロボットで構成されるマスタアーム2と、制御装置3と、力覚センサ4と、カメラ5と、モニタ6と、を備える。スレーブアーム1は、任意のタイプのロボットで構成され得る。スレーブアーム1は、本実施形態では、例えば、周知の多関節ロボットで構成され、基台1aと、基台1aに設けられた多関節のアーム1bと、アーム1bの先端に設けられた手首1cとを備える。基台1aの上面を基準とした座標系をスレーブアーム1のベース座標系と呼ぶ。多関節のアーム1bの各関節は駆動用のサーボモータ、及び、サーボモータの回転角度位置を検出するエンコーダ、サーボモータに流れる電流を検出する電流センサを備える(いずれも図示せず)。手首1cにはエンドエフェクタ7が取り付けられる。エンドエフェクタ7は、本発明の「作業端」に相当する。エンドエフェクタ7はワークを把持可能なロボットハンドである。エンドエフェクタ7は、手首1c先端に取り付けられたハンド本体(図示せず)と、例えばモータで構成されたアクチュエータ(図示せず)で駆動される2本の指部とを備える。アクチュエータが動作すると2本の指部がハンド本体に対して移動する。ハンドの2本の指部は、マスタアーム2の操作によって、互いに近接又は離隔するように移動可能であり、2本の指部で嵌合部品W1を把持することができる。エンドエフェクタ7には力覚センサ4が取り付けられる。
【0026】
力覚センサ4は、スレーブアーム1の手首1cに取り付けられる。力覚センサ4は、エンドエフェクタ7によって保持されたワークに付与される反力を検出する。力覚センサ4は、本発明の「反力検出部」に相当する。力覚センサ4は、本実施形態ではエンドエフェクタ7の基端に取付けられ、エンドエフェクタ7の先端に加わる力を検知するように構成される。力覚センサ4は、例えば手首座標系で定義されるXYZ軸方向の力と、各軸回りに作用するモーメントとを検出することが可能な六軸力覚センサである。ここで手首座標系とは手首1cを基準とした座標系である。力覚センサ4は、本実施形態では、エンドエフェクタ7によって保持されたワークである嵌合部品W1が、対象物である被嵌合部品W2に接触したときに、スレーブアーム1のベース座標系における嵌合部品W1に作用する反力の方向およびその大きさを検出し、検出信号を無線又は有線により制御装置3に送信するように構成される。
【0027】
マスタアーム2は、任意のタイプのロボットで構成され得る。マスタアーム2は、本実施形態では、スレーブアーム1と相似構造を有する。すなわち、マスタアーム2も、スレーブアーム1と同様に多関節ロボットで構成され、マスタアーム2の基台の上面を基準としてマスタアーム2のベース座標系が定義される。多関節のアームの各関節は駆動用のサーボモータ、及び、サーボモータの回転角度位置を検出するエンコーダ、サーボモータに流れる電流を検出する電流センサを備える(いずれも図示せず)。マスタアーム2の先端には、スレーブアーム1先端のエンドエフェクタ7の形状を模した操作レバー21が取り付けられる。操作レバー21は、本発明の「操作端」に相当する。尚、「操作端」は、操作者によって操作することによりスレーブアーム1を操作可能な構成であれば、例えばスイッチ、調整ツマミ又はタブレットなどの携帯端末でもよいし、操縦桿のような簡易なものであってもよい。操作レバー21には力覚センサ20が取り付けられる。力覚センサ20は、操作者によって操作レバー21に付与される操作力を検出する。力覚センサ20は、本発明の「操作力検出部」に相当する。力覚センサ20は、本実施形態ではマスタアーム2の先端の操作レバー21に取付けられ、操作レバー21に加わる力を検知するように構成される。力覚センサ20は、例えばマスタアーム2の手首座標系で定義されるXYZ軸方向の力と、各軸回りに作用するモーメントとを検出することが可能な六軸力覚センサである。ここで手首座標系とはマスタアーム2の手首を基準とした座標系である。本実施形態では、操作者がスレーブアーム1を操作すべく操作レバー21を操作すると、力覚センサ20は、マスタアーム2のベース座標系において、操作レバー21に操作者が加えた操作力の方向および大きさを検出し、検出信号を操作情報として、無線又は有線により制御装置3に送信する。
【0028】
カメラ5は、スレーブアーム1の可動範囲の全部又は一部における当該スレーブアーム1の動作を撮像可能なように設けられる。カメラ5が撮像した画像情報は制御装置3に送信され、制御装置3は、この画像情報に対応する画像を表示するようモニタ6を制御する。
【0029】
ロボットシステム100では、スレーブアーム1の作業領域から離れた位置(作業エリア外)にいる操作者は、操作情報の入力として、モニタ6に映し出されたカメラ5の映像を見ながらマスタアーム2の操作レバー21に所望の操作力を付与する。操作力に従って、マスタアーム2とともにスレーブアーム1が動作を行い、特定の作業を行うことができる。特定作業は、例えばエンドエフェクタ7によって保持されたワークである嵌合部品W1を、対象物である被嵌合部品W2の穴に挿入する作業である。この作業は組立作業のなかでも操作者の熟練を要する。
【0030】
また、ロボットシステム100では、スレーブアーム1は、操作者によるマスタアーム2の操作なしに、所定の作業を自動的に行うこともできる。本明細書では、マスタアーム2を介して入力された操作情報に従って、スレーブアーム1を動作させる運転モードを「手動モード」と称する。なお、上述の「手動モード」には、操作者がマスタアーム2を操作することによって入力された操作情報に基づいて動作中のスレーブアーム1の動作の一部が自動で動作補正される場合も含む。また、予め設定された所定のプログラムに従ってスレーブアーム1を動作させる運転モードを「自動モード」と称する。更に、本実施形態のロボットシステム100では、スレーブアーム1が自動で動作している途中に、マスタアーム2の操作をスレーブアーム1の自動の動作に反映させて、自動で行うことになっていた動作を修正することができるように構成されている。本明細書では、マスタアーム2を介して入力された操作情報を反映可能な状態で、予め設定された所定のプログラムに従ってスレーブアーム1を動作させる運転モードを「修正自動モード」と称する。なお、上述の「自動モード」は、スレーブアーム1を動作させる運転モードが自動モードであるときはマスタアーム2の操作がスレーブアーム1の動作に反映されないという点で、「修正自動モード」と区別される。以下では、本実施形態のロボットシステム100は、特に断りが無い限り、「手動モード」として動作する。
【0031】
図2は、ロボットシステム100の制御系の構成を示すブロック図である。
図2に示すように、制御装置3は、動作指令生成部8と、誇張表現部9と、インターフェース部(図示しない)を含む。本実施形態では、制御装置3は、入力装置(図示せず)に接続されている。入力装置は、タッチパネル、キーボード等のマン-マシンインターフェースで構成され、主に、スレーブアーム1の「自動モード」、「修正動作モード」、及び「手動モード」のモード切り替え、各種データ等を入力するために用いられる。制御装置3は、コンピュータ、マイクロコントローラ、マイクロプロセッサ等の演算処理機能およびメモリを有する装置で構成される。動作指令生成部8および誇張表現部9の各機能は、制御装置3のメモリに格納された所定のプログラムが制御装置3の演算処理部(図示せず)によって実行されることによって実現される。また、本実施形態の制御装置3は、カメラ5で撮像された画像情報に対応する画像を表示するモニタ制御部の機能も有する。制御装置3のハードウェア上の構成は任意であり、制御装置3は、スレーブアーム1等の他の装置から独立して設けられてもよく、他の装置と一体的に設けられてもよい。本実施形態のロボットシステム100は、並列型バイラテラル制御方式によるマスタ・スレーブ型のロボットシステムである。マスタアーム2の力覚センサ20によって検出された操作力f
mと、スレーブアーム1の力覚センサ4によって検出された反力f
sが制御装置3に入力される。
【0032】
動作指令生成部8は、マスタアーム2の力覚センサ20によって検出された操作力fmと、スレーブアーム1の力覚センサ4によって検出された反力fsに基づいて、スレーブアーム1の動作指令(以下、スレーブ動作指令ともいう)を生成するとともに、マスタアーム2の動作指令(以下、マスタ動作指令ともいう)を生成する。本実施形態では、スレーブ動作指令は、スレーブアーム1のベース座標系で規定された、スレーブアーム1の各関節軸を駆動するサーボモータの位置指令である。マスタ動作指令は、マスタアーム2のベース座標系で規定された、マスタアーム2の各関節軸を駆動するサーボモータの位置指令である。マスタ動作指令は、スレーブ動作指令によるエンドエフェクタ7の移動方向と同じ方向に操作レバー21を移動させるように生成される。つまり、スレーブアーム1とマスタアーム2は同じような動作をする。
【0033】
動作指令生成部8は、具体的には、加減算部81と、力・速度変換部82と、速度・位置変換部83(スレーブ側)と、速度・位置変換部84(マスタ側)と、加減算部85と、を備える。各部81~85は、制御装置3のメモリ(図示せず)に格納された所定のプログラムが制御装置3の演算処理部(図示せず)によって実行されることによって実現される。
【0034】
加減算部81は、マスタアーム2の力覚センサ20で検知された操作力fmからスレーブアーム1の力覚センサ4で検知された反力fsを減算し、これを力・速度変換部82に出力するように構成される。
【0035】
力・速度変換部82は、加減算部81から入力される操作力fmと反力fsとの差分に基づいて、速度指令値vdを生成し、これを速度・位置変換部83(スレーブ側)、および、加減算部85にそれぞれ出力する。
【0036】
速度・位置変換部83(スレーブ側)は、速度指令値vdに基づいてスレーブアーム1の位置指令値xdsを生成し、これをスレーブ側制御部30に出力する。スレーブ側制御部30は、例えばスレーブアーム1を位置制御するように構成されたロボットコントローラである。スレーブ側制御部30は、スレーブアーム1の各関節軸の位置指令値とエンコーダ(図示せず)の検出値(実際値)の偏差に基づいて速度指令値を生成する。そして、生成した速度指令値と速度現在値の偏差に基づいてトルク指令値(電流指令値)を生成し、生成した電流指令値と電流センサの検出値(実際値)の偏差に基づいてサーボモータを制御する。
【0037】
速度・位置変換部84(マスタ側)は、速度指令値vdに基づいてマスタアーム2の位置指令値xdmを生成し、これをマスタ側制御部12に出力する。マスタ側制御部12は、例えばマスタアーム2を位置制御するように構成されたロボットコントローラである。マスタ側制御部12は、マスタアーム2の各関節軸の位置指令値とエンコーダ(図示せず)の検出値(実際値)の偏差に基づいて速度指令値を生成する。そして、生成した速度指令値と速度現在値の偏差に基づいてトルク指令値(電流指令値)を生成し、生成した電流指令値と電流センサの検出値(実際値)の偏差に基づいてサーボモータを制御する。
【0038】
誇張表現部9は、スレーブアーム1の力覚センサ4によって検出された反力fsが急激に時間変化した反力急変状態において、操作レバー21を操作する操作者に対し、操作感覚を誇張して提示するように構成されている。本実施形態では、誇張表現部9は、反力急変状態では、反力fsに基づいて、マスタアーム2の位置指令値xdmを修正するための修正成分を生成し、これを加減算部85に出力する。
【0039】
加減算部85は、力・速度変換部82によって生成された速度指令値vdと、誇張表現部9によって生成された修正成分を加算し、これを速度・位置変換部84に出力する。速度・位置変換部84(マスタ側)は、修正された速度指令値vdに基づいてマスタアーム2の位置指令値xdmを更新し、これをマスタ側制御部12に出力する。このように、スレーブアーム1の反力fsがマスタアーム2の位置指令値xdmに反映される。
【0040】
次に、ロボットシステムの動作について説明する。ロボットシステム100では、操作者は、操作情報の入力として、モニタ6に映し出されたカメラ5の映像を見ながらマスタアーム2の操作レバー21に所望の操作力を付与する。操作力に従って、マスタアーム2とともにスレーブアーム1が動作を行う。つまり、操作者は、モニタ6を見ながら操作レバー21を操作することにより、マスタアーム2とスレーブアーム1を操作者が意図するように操作する。そして、スレーブアーム1のエンドエフェクタ7によって保持されたワークである嵌合部品W1が、被嵌合部品W2である対象物に接触した場合を想定する。
図3(a)は、スレーブアーム1の力覚センサ4によって検出された反力f
sの時間変化を模式的に示すグラフである。時刻t0において、スレーブアーム1の力覚センサ4によって検出された反力f
sは急激に上昇している。誇張表現部9は、スレーブアーム1の力覚センサ4によって検出された反力f
sが急激に時間変化した反力急変状態において、操作レバー21を操作する操作者に対し、操作感覚を誇張して提示する。誇張表現部9は、例えば反力f
sが予めメモリに記憶された所定値以上である場合に反力急
変状態であると判定してもよいし、反力f
sの微小時間Δtにおける変化量が正であ
る場合に反力急変状態であると判定してもよい。誇張表現部9は、反力急変状態では、反力f
sに基づいて、マスタアーム2の位置指令値x
dmを修正するための修正成分を生成し、これを加減算部85に出力する。加減算部85は、力・速度変換部82によって生成された速度指令値v
dと、誇張表現部9によって生成された修正成分を加算し、これを速度・位置変換部84に出力する。速度・位置変換部84(マスタ側)は、修正された速度指令値v
dに基づいてマスタアーム2の位置指令値x
dmを更新し、これをマスタ側制御部12に出力する。このように、スレーブアーム1の反力f
sがマスタアーム2の位置指令値x
dmに反映されるので、操作者はスレーブアーム1のエンドエフェクタ7が対象物に接触したことを認識できる。これにより、並列型バイラテラル制御において、高周波の細かい感覚を提示することができる。
【0041】
本実施形態では、誇張表現部9は、作業対象物の性質に応じて様々な修正成分を生成することができる。
図3(b)~
図3(d)は、修正成分の時間変化を例示するグラフである。
図3(b)は、修正成分が三角波成分である場合を示している。
図3(b)に示すように、誇張表現部9は、反力急変状態において、1周期分の三角波成分を修正成分として生成する。尚、三角波成分の1周期分に相当する期間は、例えば40msecであるが、操作者が知覚できる程度の長さであればよい。加減算部85は、力・速度変換部82によって生成された速度指令値v
dに、誇張表現部9によって生成された修正成分を加算し、これを速度・位置変換部84に出力する。速度・位置変換部84(マスタ側)は、修正された速度指令値v
dに基づいてマスタアーム2の位置指令値x
dmを更新し、これをマスタ側制御部12に出力する。修正成分として三角波成分を使用することにより、マスタアーム2を操作する操作者に対し、スレーブアーム1が固い対象物に当たった感覚を誇張表現することができる。
【0042】
図3(c)は、修正成分がサイン波成分である場合を示している。
図3(c)に示すように、誇張表現部9は、反力急変状態において、1周期分のサイン波成分を修正成分として生成する。加減算部85は、力・速度変換部82によって生成された速度指令値v
dに、誇張表現部9によって生成された修正成分を加算し、これを速度・位置変換部84に出力する。速度・位置変換部84(マスタ側)は、修正された速度指令値v
dに基づいてマスタアーム2の位置指令値x
dmを更新し、これをマスタ側制御部12に出力する。修正成分としてサイン波成分を使用することにより、マスタアーム2を操作する操作者に対し、スレーブアーム1が軟らかい対象物に当たった感覚を誇張表現することができる。
【0043】
図3(d)は、修正成分が反力f
sの時間tの二階微分値である場合を示している。
図3(d)に示すように、誇張表現部9は、反力急変状態において、三角波成分やサイン波成分の1周期に相当する成分を修正成分として生成する。加減算部85は、力・速度変換部82によって生成された速度指令値v
dに、誇張表現部9によって生成された修正成分を加算し、これを速度・位置変換部84に出力する。速度・位置変換部84(マスタ側)は、修正された速度指令値v
dに基づいてマスタアーム2の位置指令値x
dmを更新し、これをマスタ側制御部12に出力する。修正成分として反力f
sの時間tの二階微分値を使用することにより、マスタアーム2を操作する操作者に対し、スレーブアーム1が実際に対象物に当たった感覚を誇張表現することができる。
【0044】
(第2実施形態)
次に、第2実施形態について説明する。本実施形態のロボットシステムの基本的な構成は、第1実施形態と同様である。以下では、第1実施形態と共通する構成の説明は省略し、相違する構成についてのみ説明する。
【0045】
図4は、本発明の第2実施形態に係るロボットシステムの制御系の構成を示すブロック図である。
図4に示すように、本実施形態のロボットシステム100Aでは、第1実施形態と比較すると、制御装置3Aがスレーブアーム1の位置情報と、修正成分を加味したマスタアーム2の位置情報に基づいて、スレーブアーム1とマスタアーム2の位置関係のずれを補正するための補正成分を生成する位置ずれ補正部92および加減算部91を更に備える点が異なる。
【0046】
位置ずれ補正部92は、スレーブアームの位置指令値xdsと、修正成分を加味したマスタアームの位置指令値xdmとの偏差の積算値を算出し、マスタアーム2の位置指令値xdmを補正するための補正成分を生成する。
【0047】
加減算部91は、位置ずれ補正部92で生成された補正成分と誇張表現部9で生成された修正成分を加算し、これを加減算部85に出力する。加減算部85は、力・速度変換部82によって生成された速度指令値vdと、誇張表現部9によって生成された修正成分に位置ずれの補正成分が加味されたものを加算し、これを速度・位置変換部84に出力する。速度・位置変換部84(マスタ側)は、修正および補正された速度指令値vdに基づいてマスタアーム2の位置指令値xdmを更新し、これをマスタ側制御部12に出力する。これにより、並列型バイラテラル制御において、誇張表現部9により生じたマスタアーム2とスレーブアーム1の位置関係のずれを徐々に補正することができる。操作者に違和感がないように、操作感覚を誇張表現した後に、マスタアーム2がゆっくりと動いて補正されるので、マスタアーム2の操作に影響を与えることは無い。
【0048】
尚、本実施形態では、位置ずれ補正部92は、スレーブアーム1の位置指令値xdsと、修正成分を加味したマスタアーム2の位置指令値xdmに基づいて、これらの偏差の積算値を算出するように構成されたが、スレーブアーム1とマスタアーム2の位置情報であれば、各関節に設けられたサーボモータの回転角度位置を検出するエンコーダの検出値(実際値)を用いてもよい。
【0049】
(第3実施形態)
次に、第3実施形態について説明する。本実施形態のロボットシステムの基本的な構成は、上記実施形態と同様である。以下では、上記実施形態と共通する構成の説明は省略し、相違する構成についてのみ説明する。
【0050】
図5は、本発明の第3実施形態に係るロボットシステムの制御系の構成を示すブロック図である。
図5に示すように、本実施形態のロボットシステム100Bは、第2実施形態(
図4)と比較すると、制御装置3Bの
第2誇張表現部
19が作業状態判定部93および作業状態提示部13を更に備える点が異なる。
【0051】
本実施形態では、メモリ94には、予め、特定の作業における、スレーブアーム1の位置指令値xds
、マスタアーム2の操作力fm、および、スレーブアーム1の反力fsがデータとして収集され、収集したデータに応じて少なくとも一以上の作業状態が分類され、分類された作業状態が記憶されている。特定作業は、エンドエフェクタ7によって保持されたワークである嵌合部品W1を、対象物である被嵌合部品W2の穴に挿入する作業である。作業状態として、作業が開始された状態、対象物を探っている状態、および、ワークが対象物に挿入された状態が例示される。
【0052】
作業状態判定部93は、ロボットシステム100Bの動作中において、スレーブアーム1の位置指令値xds
、マスタアーム2の操作力fm、および、スレーブアーム1の反力fsのうち少なくとも一つの値に基づいて、メモリ94に記憶された作業状態のいずれの作業状態に分類されるかを判定する。本実施形態では、作業状態判定部93は、作業が開始された状態、対象物を探っている状態、および、ワークが対象物に挿入された状態のいずれの作業状態であるかを判定する。作業状態提示部13は、作業状態を、音、マスタアームの振動および光のうち、少なくとも一つによって操作者に提示するように構成されている。
【0053】
次に、本実施形態のロボットシステム100Bの動作について
図6を用いて説明する。
図6に示すように、スレーブアーム1の手首座標系は手首1cの取り付け面に平行にX軸及びY軸が定義され、取り付け面に垂直な方向にZ軸が定義される。マスタアーム2の手首座標系は手首2cの取り付け面に平行にX軸及びY軸が定義され、取り付け面に垂直な方向にZ軸が定義される。
図6(a)に示すように、ロボットシステム100では、操作者は、操作情報の入力として、モニタ6に映し出されたカメラ5の映像を見ながらマスタアーム2の操作レバー21に所望の操作力を付与する。操作力に従って、マスタアーム2とともにスレーブアーム1が動作を行う。操作者は、モニタ6を見ながらエンドエフェクタ7によって保持されたワークである嵌合部品W1が、対象物である被嵌合部品W2の穴Hに挿入されるように、操作レバー21を操作する。
【0054】
まず、スレーブアーム1のエンドエフェクタ7によって保持されたワークである嵌合部品W1が、被嵌合部品W2である対象物に接触した場合を想定する。誇張表現部9は、例えば反力fsが予めメモリに記憶された所定値以上である場合に反力急変状態であると判定してもよいし、反力fsの微小時間Δtにおける変化量が正である場合に反力急変状態であると判定してもよい。誇張表現部9は、スレーブアーム1の力覚センサ4によって検出された反力fsが急激に時間変化した状態である反力急変状態において、操作レバー21を操作する操作者に対し、操作感覚を誇張して提示する。誇張表現部9は、反力急変状態では、反力fsに基づいて、マスタアーム2の位置指令値xdmを修正するための修正成分を生成することにより、スレーブアーム1の反力fsがマスタアーム2の位置指令値xdmに反映されるので、操作者はスレーブアーム1のエンドエフェクタ7が対象物に接触したことを認識できる。
【0055】
また、本実施形態では、作業状態判定部93は、反力急変状態を作業が開始された状態であるとみなす。そして、作業状態提示部13は、この状態を、振動モータの振動によってマスタアームを操作する操作者に提示する。または光によって視覚的に操作者に認識させてもよい。これにより、マスタの応答性では対応できない、高周波の細かい感覚を提示することができる。
【0056】
操作者は、作業を進める。操作者は、
図6(b)に示すように操作レバー21を横向きに操作することにより、マスタアーム2の手首座標系においてXY平面に平行な横向きの操作力f
mが操作レバー21に付与される。これにより、エンドエフェクタ7に保持された嵌合部品W1は、被嵌合部品W2と接触した状態を維持しながら、被嵌合部品W2の嵌合穴Hの方向に移動する。このとき、嵌合部品W1を把持したスレーブアーム1の反力f
sは上方向(図ではZ軸の正の方向)に発生し、かつ、マスタアーム2の操作力f
mは横方向(図ではY軸の正の方向)に発生する。作業状態判定部93は、スレーブアーム1の反力f
sおよびマスタアーム2の操作力f
mに基づいて、このような作業状態を、嵌合部品W1が対象物を探っている状態(searching)であると判定する。そして、作業状態提示部13は、この状態を、ガリガリという音によって操作者に提示する。これにより、マスタの応答性では対応できない、高周波の細かい感覚を提示することができる。
【0057】
操作者は、
図6(c)に示すように、操作レバー21
の横向きの操作を継続する。その後、エンドエフェクタ7に保持された嵌合部品W1が被嵌合部品W2の嵌合穴Hに挿入される。このとき、ワークを把持したスレーブアーム1の位置は所定位置(図では被嵌合部品W2の表面)よりも下方向(図ではZ軸の負の方向)に位置し、かつ、スレーブアーム1の反力f
sが変化する。スレーブアーム1の反力f
sの大きさは、探っている状態と比べて減少する。作業状態判定部93は、スレーブアーム1の位置指令値x
dsおよびスレーブアームの反力f
sに基づいて、このような作業状態を、ワークが対象物に挿入された状態(inserted)であると判定する。そして、作業状態提示部13は、ワークが対象物に挿入された状態を、音によって操作者に提示する。作業状態提示部13は、この状態を、例えばスピーカからのスッという音によって操作者に提示する。これにより、マスタの応答性では対応できない、高周波の細かい感覚を提示することができる。
【0058】
本実施形態によれば、操作者はスレーブアーム1のエンドエフェクタ7に保持されたワークが対象物に接触したことを認識するだけでなく、接触後に開始される作業の状態を正確に認識することができる。
【0059】
(その他の実施形態)
尚、上記各実施形態のロボットシステムによる特定作業は、エンドエフェクタ7によって保持されたワークである嵌合部品W1を、対象物である被嵌合部品W2の穴に挿入する作業としたが、これに限られるものではない。例えば、ロボットシステムは外科手術システムであってエンドエフェクタは手術器具であってもよい。このようなシステムでは、施術者は、内視鏡画像を見ながらマスタアーム2を操作する。スレーブアーム1先端に取り付けられた手術器具は若干の反力を受けながらゲル状の人体の内部を進行し、対象物である骨に接触した状態で施術を行うような特定作業が想定される。
【0060】
また、作業状態判定部93によって判定される作業状態は、作業が開始された状態、対象物を探っている状態、および、ワークが対象物に挿入された状態が例示されたが、これに限られることはなく、特定作業に応じてその他の作業状態を判定してもよい。
【0061】
尚、上記各実施形態では、マスタ動作指令およびスレーブ動作指令は、各アームの各関節軸を駆動するサーボモータの位置指令であったが、これに限られず、各関節軸を駆動するサーボモータのトルク指令であってもよい。
【0062】
上記説明から、当業者にとっては、本発明の多くの改良や他の実施形態が明らかである。従って、上記説明は、例示としてのみ解釈されるべきであり、本発明を実行する最良の態様を当業者に教示する目的で提供されたものである。本発明の精神を逸脱することなく、その構造および/または機能の詳細を実質的に変更できる。
【産業上の利用可能性】
【0063】
本発明は、マスタ・スレーブ型のロボットシステムに有用である。
【符号の説明】
【0064】
1 スレーブアーム
2 マスタアーム
3,3A,3B 制御装置
4 力覚センサ(スレーブ側)
5 カメラ
6 モニタ
7 エンドエフェクタ
8 動作指令生成部
9 誇張表現部
12 マスタ側制御部(マスタ側)
20 力覚センサ(マスタ側)
30 スレーブ側制御部(スレーブ側)
100,100A,100B ロボットシステム