特許第6671226号(P6671226)IP Force 特許公報掲載プロジェクト 2015.5.11 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ 三菱電機株式会社の特許一覧
特許6671226ロボットアームシステム及びロボットアームの教示方法
<>
  • 特許6671226-ロボットアームシステム及びロボットアームの教示方法 図000002
  • 特許6671226-ロボットアームシステム及びロボットアームの教示方法 図000003
  • 特許6671226-ロボットアームシステム及びロボットアームの教示方法 図000004
  • 特許6671226-ロボットアームシステム及びロボットアームの教示方法 図000005
  • 特許6671226-ロボットアームシステム及びロボットアームの教示方法 図000006
  • 特許6671226-ロボットアームシステム及びロボットアームの教示方法 図000007
  • 特許6671226-ロボットアームシステム及びロボットアームの教示方法 図000008
  • 特許6671226-ロボットアームシステム及びロボットアームの教示方法 図000009
  • 特許6671226-ロボットアームシステム及びロボットアームの教示方法 図000010
  • 特許6671226-ロボットアームシステム及びロボットアームの教示方法 図000011
  • 特許6671226-ロボットアームシステム及びロボットアームの教示方法 図000012
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】6671226
(24)【登録日】2020年3月5日
(45)【発行日】2020年3月25日
(54)【発明の名称】ロボットアームシステム及びロボットアームの教示方法
(51)【国際特許分類】
   B25J 9/22 20060101AFI20200316BHJP
   G05B 19/42 20060101ALI20200316BHJP
   B25J 13/00 20060101ALI20200316BHJP
【FI】
   B25J9/22 A
   G05B19/42 D
   B25J13/00 Z
【請求項の数】8
【全頁数】16
(21)【出願番号】特願2016-84240(P2016-84240)
(22)【出願日】2016年4月20日
(65)【公開番号】特開2017-193011(P2017-193011A)
(43)【公開日】2017年10月26日
【審査請求日】2018年8月2日
(73)【特許権者】
【識別番号】000006013
【氏名又は名称】三菱電機株式会社
(74)【代理人】
【識別番号】100118762
【弁理士】
【氏名又は名称】高村 順
(72)【発明者】
【氏名】宮本 昌和
【審査官】 貞光 大樹
(56)【参考文献】
【文献】 特開2010−120124(JP,A)
【文献】 特開昭63−34609(JP,A)
【文献】 実開昭63−48205(JP,U)
【文献】 特開平7−20915(JP,A)
【文献】 特開2003−145462(JP,A)
【文献】 特開平6−71580(JP,A)
【文献】 特開2009−18380(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
B25J 1/00 − 21/02
G05B 19/18 − 19/416
G05B 19/42 − 19/46
(57)【特許請求の範囲】
【請求項1】
第1ロボットアームと、第2ロボットアームと、前記第1ロボットアームを制御する第1制御装置と、前記第2ロボットアームを制御する第2制御装置と、前記第1ロボットアームに設けられて前記第1ロボットアームに加えられる外力を検出する第1センサと、前記第2ロボットアームに設けられて前記第2ロボットアームに加えられる外力を検出する第2センサと、を備え、
前記第1制御装置は、前記第1センサの検出出力に基づき前記第1ロボットアームに外力が加えられたことを検出した場合、前記第1ロボットアームをマスター状態に設定し、第1マスター設定完了情報を第2制御装置に送信し、前記第1センサによって取得した外力に基づいて前記第1ロボットアームを運動させる第1軌道を算出し、算出された前記第1軌道を前記第2制御装置に送信し、算出された前記第1軌道によって前記第1ロボットアームを駆動し、
前記第2制御装置は、前記第2センサの検出出力に基づき前記第2ロボットアームに外力が加えられたことを検出していない状態のときに前記第1マスター設定完了情報を前記第1制御装置から受信した場合、前記第2ロボットアームをスレーブ状態に設定し、前記第1制御装置から受信した前記第1軌道に基づいて前記第2ロボットアームを運動させる第2軌道を算出し、算出された前記第2軌道によって前記第2ロボットアームを駆動する
ことを特徴とするロボットアームシステム。
【請求項2】
前記第2制御装置は、前記第2センサの検出出力に基づき前記第2ロボットアームに外力が加えられたことを検出した場合、前記第2ロボットアームをマスター状態に設定し、第2マスター設定完了情報を第1制御装置に送信し、前記第2センサによって取得した外力に基づいて前記第2ロボットアームを運動させる第3軌道を算出し、算出された前記第3軌道を前記第1制御装置に送信し、算出された前記第3軌道によって前記第2ロボットアームを駆動し、
前記第1制御装置は、前記第1センサの検出出力に基づき前記第1ロボットアームに外力が加えられたことを検出していない状態のときに前記第2マスター設定完了情報を前記第2制御装置から受信した場合、前記第1ロボットアームをスレーブ状態に設定し、前記第2制御装置から受信した前記第3軌道に基づいて前記第1ロボットアームを運動させる第4軌道を算出し、算出された前記第4軌道によって前記第1ロボットアームを駆動する
ことを特徴とする請求項1に記載のロボットアームシステム。
【請求項3】
ワークを把持可能な複数のロボットアームと、
複数の前記ロボットアームで前記ワークを把持した状態において、一の前記ロボットアームに対して直接教示による外力が加えられた場合、前記外力が加えられた前記ロボットアームをマスター状態に設定し、他の前記ロボットアームをスレーブ状態に設定する設定部と、前記マスター状態に設定された前記ロボットアームであるマスターアームについて前記外力によって運動する第1軌道を算出し、前記スレーブ状態に設定された前記ロボットアームであるスレーブアームの第2軌道を前記第1軌道に基づいて算出する処理部と、前記第1軌道に基づいて前記マスターアームを運動させ、前記第2軌道に基づいて前記スレーブアームを運動させる運動制御部と、を有する制御装置と、
を備え、
前記スレーブアームに対して直接教示によるスレーブ側外力が加えられた場合、
前記処理部は、前記スレーブアームに加えられた前記スレーブ側外力によって変化する前記ワークの変位及び姿勢変化量を算出し、算出結果に基づいて前記マスターアームの第3軌道を算出し、前記第3軌道に基づいて前記スレーブアームの第4軌道を算出し、
前記運動制御部は、前記第3軌道に基づいて前記マスターアームを運動させ、前記第4軌道に基づいて前記スレーブアームを運動させる
ことを特徴とするロボットアームシステム。
【請求項4】
前記第2軌道は、前記スレーブアームが前記マスターアームに追従して運動する軌道である
ことを特徴とする請求項に記載のロボットアームシステム。
【請求項5】
前記第3軌道及び前記第4軌道は、前記マスターアームと前記スレーブアームとで前記ワークの位置及び姿勢を変化させる軌道である
ことを特徴とする請求項3又は4に記載のロボットアームシステム。
【請求項6】
前記制御装置は、複数の前記ロボットアーム毎に設けられ、互いに通信可能である
ことを特徴とする請求項から請求項のうちいずれか一項に記載のロボットアームシステム。
【請求項7】
第1ロボットアームと、第2ロボットアームと、前記第1ロボットアームを制御する第1制御装置と、前記第2ロボットアームを制御する第2制御装置と、前記第1ロボットアームに設けられて前記第1ロボットアームに加えられる外力を検出する第1センサと、前記第2ロボットアームに設けられて前記第2ロボットアームに加えられる外力を検出する第2センサとを備えるロボットアームシステムにおけるロボットアームの教示方法であって、
前記第1制御装置は、前記第1センサの検出出力に基づき前記第1ロボットアームに外力が加えられたことを検出した場合、前記第1ロボットアームをマスター状態に設定し、第1マスター設定完了情報を第2制御装置に送信し、前記第1センサによって取得した外力に基づいて前記第1ロボットアームを運動させる第1軌道を算出し、算出された前記第1軌道を前記第2制御装置に送信し、算出された前記第1軌道によって前記第1ロボットアームを駆動し、
前記第2制御装置は、前記第2センサの検出出力に基づき前記第2ロボットアームに外力が加えられたことを検出していない状態のときに前記第1マスター設定完了情報を前記第1制御装置から受信した場合、前記第2ロボットアームをスレーブ状態に設定し、前記第1制御装置から受信した前記第1軌道に基づいて前記第2ロボットアームを運動させる第2軌道を算出し、算出された前記第2軌道によって前記第2ロボットアームを駆動する
ことを特徴とするロボットアームの教示方法。
【請求項8】
ワークを把持可能な複数のロボットアームの教示方法であって、
複数の前記ロボットアームで一の前記ワークを把持した状態において、一の前記ロボットアームに対して直接教示による外力が加えられた場合、前記外力が加えられた前記ロボットアームをマスター状態に設定し、他の前記ロボットアームをスレーブ状態に設定することと、
前記マスター状態に設定された前記ロボットアームであるマスターアームの前記外力による第1軌道を算出し、前記第1軌道に基づいて前記スレーブ状態に設定された前記ロボットアームであるスレーブアームの第2軌道を算出することと、
算出された前記第1軌道に基づいて前記マスターアームを運動させ、前記第2軌道に基づいて前記スレーブアームを運動させることと、
前記スレーブアームに対して直接教示によるスレーブ側外力が加えられた場合、前記スレーブアームに加えられた前記スレーブ側外力によって変化する前記ワークの変位及び姿勢変化量を算出し、算出結果に基づいて前記マスターアームの第3軌道を算出し、前記第3軌道に基づいて前記スレーブアームの第4軌道を算出することと、
前記第3軌道に基づいて前記マスターアームを運動させ、前記第4軌道に基づいて前記スレーブアームを運動させること、
を含むことを特徴とするロボットアームの教示方法。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、複数のロボットアームを有するロボットアームシステム及びロボットアームの教示方法に関する。
【背景技術】
【0002】
複数のロボットアームによりワークを把持するロボットアームシステムがある。このようなロボットアームシステムにおいては、ロボットアームを直接教示する教示作業が行われている。直接教示は、教示者がロボットアームを直接動かした場合に、ロボットアームに生じる力をセンサにより検出し、センサの検出結果に基づいて、教示者によるロボットアームの動きを再現する手法である。
【0003】
特許文献1には、マスターアームとスレーブアームとが予め設定された双腕ロボットアームを制御装置が制御する技術が記載されている。特許文献1に記載の双腕ロボットアームでは、教示作業を行う場合、制御装置は、マスターアームに搭載された力センサの検出結果からマスターアームの軌道を算出し、当該マスターアームの軌道に基づいて他方のスレーブアームの軌道を算出する。
【先行技術文献】
【特許文献】
【0004】
【特許文献1】特開2010−120124号公報
【発明の概要】
【発明が解決しようとする課題】
【0005】
しかしながら、特許文献1の技術では、スレーブアームの力センサで検知した検出結果はスレーブアームの軌道修正にしか用いられず、マスターアームには適用されない。このため、教示作業を行う場合の作業効率が低下する可能性がある。
【0006】
本発明は、上記に鑑みてなされたものであって、マスターアーム及びスレーブアームが設定される複数のロボットアームに対して教示作業を行う場合の作業効率の低下を抑制することが可能なロボットアームシステムを提供することを目的とする。
【課題を解決するための手段】
【0007】
上述した課題を解決し、目的を達成するために、本発明は、第1ロボットアームと、第2ロボットアームと、前記第1ロボットアームを制御する第1制御装置と、前記第2ロボットアームを制御する第2制御装置と、前記第1ロボットアームに設けられて前記第1ロボットアームに加えられる外力を検出する第1センサと、前記第2ロボットアームに設けられて前記第2ロボットアームに加えられる外力を検出する第2センサと、を備え、前記第1制御装置は、前記第1センサの検出出力に基づき前記第1ロボットアームに外力が加えられたことを検出した場合、前記第1ロボットアームをマスター状態に設定し、第1マスター設定完了情報を第2制御装置に送信し、前記第1センサによって取得した外力に基づいて前記第1ロボットアームを運動させる第1軌道を算出し、算出された前記第1軌道を前記第2制御装置に送信し、算出された前記第1軌道によって前記第1ロボットアームを駆動し、前記第2制御装置は、前記第2センサの検出出力に基づき前記第2ロボットアームに外力が加えられたことを検出していない状態のときに前記第1マスター設定完了情報を前記第1制御装置から受信した場合、前記第2ロボットアームをスレーブ状態に設定し、前記第1制御装置から受信した前記第1軌道に基づいて前記第2ロボットアームを運動させる第2軌道を算出し、算出された前記第2軌道によって前記第2ロボットアームを駆動することを特徴とする。
【発明の効果】
【0008】
本発明によれば、マスターアーム及びスレーブアームが設定される複数のロボットアームに対して教示作業を行う場合の作業効率の低下を抑制することが可能となる、という効果を奏する。
【図面の簡単な説明】
【0009】
図1】実施の形態1に係るロボットアームシステムを示す斜視図
図2】実施の形態1に係る制御装置の一例を示すブロック図
図3】実施の形態1に係る第1制御部及び第2制御部のハードウェア構成を示す図
図4】実施の形態1に係る第1制御部及び第2制御部のハードウェア構成を示す図
図5】実施の形態1に係るロボットアームシステムの教示動作の一部を示すフローチャート
図6】実施の形態1に係るロボットアームシステムの教示動作を示す斜視図
図7】実施の形態1に係るロボットアームシステムの教示動作の一部を示すフローチャート
図8】実施の形態1に係る第1ロボットアーム及び第2ロボットアームの構成を模式的に示す図
図9】実施の形態2に係るロボットアームシステムの教示動作を示す斜視図
図10】実施の形態2に係るロボットアームシステムの教示動作の一部を示すフローチャート
図11】ロボットアームシステムの他の例を示す斜視図
【発明を実施するための形態】
【0010】
以下に、本発明の実施の形態に係るロボットアームシステム及びロボットアームの教示方法を図面に基づいて詳細に説明する。なお、実施の形態により本発明が限定されるものではない。
【0011】
実施の形態1.
図1は、実施の形態1に係るロボットアームシステム100を示す斜視図である。図1に示すように、ロボットアームシステム100は、ワーク50を把持可能な第1ロボットアーム10及び第2ロボットアーム20と、第1ロボットアーム10を制御する制御装置である第1制御装置30と、第2ロボットアーム20を制御する制御装置である第2制御装置40とを備えている。
【0012】
第1ロボットアーム10は、室内又は室外の水平な床面に載置される基台11と、第1関節部12と、第1腕部13と、第2関節部14と、第2腕部15と、ワーク50を把持する把持部16とを有している。なお、基台11が載置される床面は、水平に限定するものではなく、水平面に対して傾いていてもよい。
【0013】
第1関節部12は、基台11と第1腕部13とを連結する。第1関節部12には、第1軸部17が設けられている。第1軸部17は、中実状の構成である円柱状又は中空状の構成である円筒状に形成されている。第1腕部13は、第1軸部17の軸線周りに回動可能に設けられている。第1関節部12は、モータを含む駆動部を有する。駆動部は、第1軸部17の軸線周り方向の駆動力を第1腕部13に付与する。第1関節部12には、トルクセンサ12aが設けられている。トルクセンサ12aは、第1関節部12に加えられた力を検出し、検出結果を第1制御装置30に送信する。
【0014】
第2関節部14は、第1腕部13と第2腕部15とを連結する。第2関節部14には、第2軸部18が設けられている。第2軸部18は、円柱状又は円筒状に形成されている。第1腕部13及び第2腕部15は、第2軸部18の軸線周りに回動可能に設けられている。第2関節部14は、モータを含む駆動部を有する。駆動部は、第2軸部18の軸線周り方向の駆動力を第2腕部14に付与する。第2関節部14には、トルクセンサ14aが設けられている。トルクセンサ14aは、第2関節部14に加えられた力を検出し、検出結果を第1制御装置30に送信する。
【0015】
把持部16は、連結部19を介して第2腕部15に連結されている。把持部16は、ワーク50を把持するために開いた部分を有している。把持部16は、鉛直方向に平行な回転軸の軸線周りに回転可能に設けられている。図1では、把持部16の開いた部分が鉛直方向の下方に向けて配置されており、把持部16がワーク50を吊り下げた状態で把持している。把持部16は、ワーク50を把持した状態で回転可能である。
【0016】
第2ロボットアーム20は、第1ロボットアーム10と同様の構成である。すなわち、第2ロボットアーム20は、室内又は室外の水平な床面に載置される基台21と、第1関節部22と、第1腕部23と、第2関節部24と、第2腕部25と、ワーク50を把持する把持部26とを有している。
【0017】
第1関節部22は、基台21と第1腕部23とを連結する。第1関節部22には、第1軸部27が設けられている。第1軸部27は、円柱状又は円筒状に形成されている。第1腕部23は、第1軸部27の軸線周りに回動可能に設けられている。第1関節部22は、モータを含む駆動部を有する。駆動部は、第1軸部27の軸線周り方向の駆動力を第1腕部23に付与する。第1関節部22には、トルクセンサ22aが設けられている。トルクセンサ22aは、第1関節部22に加えられた力を検出し、検出結果を第2制御装置40に送信する。
【0018】
第2関節部24は、第1腕部23と第2腕部25とを連結する。第2関節部24には、第2軸部28が設けられている。第2軸部28は、円柱状又は円筒状に形成されている。第1腕部23及び第2腕部25は、第2軸部28の軸線周りに回動可能に設けられている。第2関節部24は、モータを含む駆動部を有する。駆動部は、第2軸部28の軸線周り方向の駆動力を第2腕部24に付与する。第2関節部24には、トルクセンサ24aが設けられている。トルクセンサ24aは、第2関節部24に加えられた力を検出し、検出結果を第2制御装置40に送信する。
【0019】
把持部26は、連結部29を介して第2腕部25に連結されている。把持部26は、鉛直方向の下方に向けて配置されている。把持部26は、鉛直方向に平行な回転軸の軸線周りに回転可能に設けられている。
【0020】
図2は、実施の形態1に係る制御装置の一例を示すブロック図である。図2に示すように、制御装置である第1制御装置30及び第2制御装置40は、同様の構成とすることができる。図2では、第1制御装置30及び第2制御装置40の対応する部分については、符号を並列に付した状態で示している。
【0021】
第1制御装置30は、第1ロボットアーム10の制御状態を設定する設定部31と、第1ロボットアーム10の軌道を算出可能な処理部32と、処理部32によって算出された軌道に基づいて第1ロボットアーム10の運動制御を行う運動制御部33と、第1ロボットアーム10の制御に用いられる情報を記憶する記憶部34と、第2制御装置40を含む外部との間で通信を行う通信部35とを有している。
【0022】
設定部31は、第1ロボットアーム10を、ニュートラル状態、マスター状態及びスレーブ状態のいずれかの制御状態に設定する。ニュートラル状態は、第1ロボットアーム10及び第2ロボットアーム20に直接教示の外力が加えられていない場合の制御状態である。マスター状態及びスレーブ状態は、第1ロボットアーム10及び第2ロボットアーム20の少なくとも一方に対して直接教示の外力が加えられた場合の制御状態である。
【0023】
マスター状態は、第1ロボットアーム10の軌道を処理部32が算出し、算出結果に基づいて運動制御部33が第1ロボットアーム10の運動を制御する状態である。スレーブ状態は、通信部35において受信した第2ロボットアーム20の軌道に基づいて処理部32が第1ロボットアーム10の軌道を算出し、算出結果に基づいて運動制御部33が第1ロボットアーム10の運動を制御する状態である。
【0024】
第2制御装置40は、第2ロボットアーム20の制御状態を設定する設定部41と、第2ロボットアーム20の軌道を算出可能な処理部42と、当該処理部42によって算出された軌道に基づいて第2ロボットアーム20の運動制御を行う運動制御部43と、第2ロボットアーム20の制御に用いられる情報を記憶する記憶部44と、第1制御装置30を含む外部との間で通信を行う通信部45とを有している。
【0025】
設定部41は、第2ロボットアーム20を、ニュートラル状態、マスター状態及びスレーブ状態のいずれかの制御状態に設定する。ニュートラル状態は、第1ロボットアーム10及び第2ロボットアーム20に直接教示の外力が加えられていない場合の制御状態である。マスター状態及びスレーブ状態は、第1ロボットアーム10及び第2ロボットアーム20の少なくとも一方に対して直接教示の外力が加えられた場合の制御状態である。
【0026】
マスター状態は、第2ロボットアーム20の軌道を処理部42が算出し、算出結果に基づいて運動制御部43が第2ロボットアーム20の運動を制御する状態である。スレーブ状態は、通信部45が受信した第1ロボットアーム10の軌道に基づいて処理部42が第2ロボットアーム20の軌道を算出し、算出結果に基づいて運動制御部43が第2ロボットアーム20の運動を制御する状態である。スレーブ状態にあるロボットアームは、マスター状態にあるロボットアームの動作に追従して運動する。
【0027】
第1制御装置30及び第2制御装置40は、通信部35及び通信部45によって互いに通信可能に設けられている。第1制御装置30は、第1ロボットアーム10に内蔵された構成であってもよいし、第1ロボットアーム10の外部に設けられた構成であってもよい。第2制御装置40は、第2ロボットアーム20に内蔵された構成であってもよいし、第2ロボットアーム20の外部に設けられた構成であってもよい。
【0028】
第1制御装置30及び第2制御装置40は、設定部31、処理部32、運動制御部33、記憶部34及び通信部35の各機能が、処理回路により実現される。処理回路は、専用のハードウェアであってもよいし、メモリに格納されるプログラムを実行するCPU(Central Processing Unit)であってもよい。
【0029】
図3及び図4は、実施の形態1に係る第1制御装置30及び第2制御装置40のハードウェア構成を示す図である。図3に示すように、第1制御装置30及び第2制御装置40を構成する処理回路が専用のハードウェアである場合、処理回路は、単一回路、複合回路、プログラム化したプロセッサー、並列プログラム化したプロセッサー、ASIC、FPGA、又はこれらを組み合わせたものが該当する。設定部31、処理部32、運動制御部33、記憶部34及び通信部35の各機能を個別の処理回路で実現してもよいし、各部の機能をまとめて処理回路で実現してもよい。
【0030】
図4に示すように、第1制御装置30及び第2制御装置40を構成する処理回路がCPUの場合、設定部31、処理部32、運動制御部33、記憶部34及び通信部35の機能は、ソフトウェア、ファームウェア、またはソフトウェアとファームウェアとの組み合わせにより実現される。ソフトウェアやファームウェアはプログラムとして記述され、メモリ30A,40Aに格納される。処理回路は、メモリ30A,40Aに記憶されたプログラムを読み出して実行することにより、各部の機能を実現する。すなわち、メモリ30A,40Aは、処理回路が、第1ロボットアーム10及び第2ロボットアーム20でワーク50を把持した状態で、第1ロボットアーム10に対して直接教示による外力F1が加えられた場合、第1ロボットアーム10をマスター状態に設定し、第2ロボットアーム20をスレーブ状態に設定し、第1ロボットアーム10について外力F1によって運動する第1軌道を算出し、第2ロボットアーム20の第2軌道を第1軌道に基づいて算出し、第1軌道に基づいて第1ロボットアーム10を運動させ、第2軌道に基づいて第2ロボットアーム20を運動させる動作が結果的に実行されることになるプログラムを格納する。ここで、メモリ30A,40Aとは、不揮発性又は揮発性の半導体メモリ、磁気ディスク、フレキシブルディスク、光ディスク、コンパクトディスク、ミニディスク、及びDVDのうち少なくとも1つが該当する。記憶部34がメモリ30A,40Aであってもよい。
【0031】
次に、上記のように構成されたロボットアームシステム100の教示動作を説明する。図5は、実施の形態1に係るロボットアームシステム100の教示動作の一部を示すフローチャートである。以下、第1ロボットアーム10の把持部16と第2ロボットアーム20の把持部26とで一のワーク50を把持した状態における教示動作を説明する。
【0032】
第1ロボットアーム10及び第2ロボットアーム20の双方に直接教示の外力が加えられていない場合、設定部31は、制御対象の第1ロボットアーム10をニュートラル状態に設定する。また、設定部41は、制御対象の第2ロボットアーム20をニュートラル状態に設定する。これにより、第1ロボットアーム10及び第2ロボットアーム20のすべてのロボットアームがニュートラル状態に設定される(ステップS01)。
【0033】
第1ロボットアーム10及び第2ロボットアーム20をニュートラル状態に設定した後、設定部31は、トルクセンサ12a,14aの検出結果に基づいて、直接教示の外力が加えられたか否かを判断する。また、設定部41は、トルクセンサ22a,24aの検出結果に基づいて、直接教示の外力が加えられたか否かを判断する(ステップS02)。
【0034】
第1ロボットアーム10に直接教示の外力が加えられることにより、トルクセンサ12a及び14aの検出結果が変化する。また、ワーク50を介して第2ロボットアーム20側に力が伝達された場合、トルクセンサ22a及び24aの検出結果が変化する。この場合、直接教示の外力が加えられたトルクセンサ12a及び14aの検出結果の変化量は、ワーク50を介して間接的に外力が加えられたトルクセンサ22a及び24aの検出結果の変化量よりも大きくなる。設定部31は、当該変化を検出することにより、第1ロボットアーム10に外力F1が加えられたことを判断することができる。
【0035】
第2ロボットアーム20に直接教示の外力が加えられることにより、トルクセンサ22a及び24aの検出結果が変化する。また、ワーク50を介して第1ロボットアーム10側に力が伝達された場合、トルクセンサ12a及び14aの検出結果が変化する。この場合、直接教示の外力が加えられたトルクセンサ22a及び24aの検出結果の変化量は、ワーク50を介して間接的に外力が加えられたトルクセンサ12a及び14aの検出結果の変化量よりも大きくなる。設定部41は、当該変化を検出することにより、第2ロボットアーム20に外力F1が加えられたことを判断することができる。
【0036】
制御対象である第1ロボットアーム10及び第2ロボットアーム20に対して直接教示の外力が加えられた場合(ステップS02のYes)、設定部31及び41は、直接教示の外力が加えられたロボットアームをマスター状態に設定する(ステップS03)。
【0037】
図6は、実施の形態1に係るロボットアームシステム100の教示動作を示す斜視図である。図6に示す場合、直接教示の外力F1が第1ロボットアーム10に加えられている。外力F1が加えられることにより、トルクセンサ12a及び14aの検出結果が変化する。
【0038】
この場合、設定部31は、当該変化を検出することにより、第1ロボットアーム10に外力F1が加えられたと判断し(ステップS02のYes)、第1ロボットアーム10をマスター状態に設定する(ステップS03)。これにより、最初に直接教示の外力F1が加えられた第1ロボットアーム10がマスター状態に設定される。以下、第1ロボットアーム10がマスター状態に設定される場合について説明する。なお、第2ロボットアーム20に外力F1が加えられ、当該第2ロボットアーム20がマスター状態に設定される場合についても同様の説明が可能である。
【0039】
設定部31は、第1ロボットアーム10をマスター状態に設定した場合、当該第1ロボットアーム10をマスター状態に設定した旨の情報であるマスター設定完了情報を、通信部35を介して他の制御装置に送信する(ステップS04)。実施の形態1では、図6に示すように、通信部35を介して、マスター設定完了情報61を第2制御装置40に送信する。
【0040】
一方、設定部41は、ステップS02において、トルクセンサ12a及び14aの検出結果と、トルクセンサ22a及び24aの検出結果とにより、第2ロボットアーム20に直接教示の外力F1が加えられていないと判断する(ステップS02のNo)。そして、設定部41は、通信部45において他の制御装置である第1制御装置30からマスター設定完了情報を受信したか否かを判断する(ステップS05)。
【0041】
通信部45がマスター設定完了情報61を受信していない場合(ステップS05のNo)、制御装置30,40は、上記ステップS02以降の動作を繰り返し行う。通信部45が上記のマスター設定完了情報61を受信した場合(ステップS05のYes)、設定部41は、第2ロボットアーム20をスレーブ状態に設定する(ステップS06)。これにより、外力F1が加えられた第1ロボットアーム10がマスター状態に設定され、第1ロボットアーム10以外のロボットアームである第2ロボットアーム20がスレーブ状態に設定される。
【0042】
なお、第2ロボットアーム20に対して外力F1が加えられた場合、上記ステップS03及びステップS04を設定部41が行い、上記ステップS05及びステップS06を設定部31が行う。以下、マスター状態に設定されたロボットアームをマスターアームと表記し、スレーブ状態に設定されたロボットアームをスレーブアームと表記する。
【0043】
次に、第1ロボットアーム10及び第2ロボットアーム20の制御状態が設定された後、第1ロボットアーム10及び第2ロボットアーム20を運動させる動作を説明する。図7は、実施の形態1に係るロボットアームシステム100の教示動作の一部を示すフローチャートである。図7では、マスターアーム側の第1制御装置30と、スレーブアーム側の第2制御装置40とで個別に動作を説明する。第1制御装置30と第2制御装置40とでマスターアーム側及びスレーブアーム側が上記とは逆の場合においても、同様の説明が可能である。
【0044】
図7に示すように、まず、マスターアーム側の第1制御装置30において、処理部32は、外力F1に基づいてマスターアームである第1ロボットアーム10の第1軌道を算出する(ステップS11)。ステップS11において、処理部32は、第1ロボットアーム10と第2ロボットアーム20との間の共通制御点が外力F1により並進運動する軌道を算出し、算出結果を第1軌道とする。
【0045】
図8は、実施の形態1に係る第1ロボットアーム10及び第2ロボットアーム20の構成を模式的に示す図である。図8に示すように、実施の形態1では、把持部16及び把持部26によって把持されるワーク50の重心位置が共通制御点51に設定されている。共通制御点51は、ワーク50の重心位置に限定するものではなく、把持部16による把持位置と把持部26による把持位置との中間位置が共通制御点51に設定されてもよい。
【0046】
処理部32は、第1軌道を算出した後、算出結果を通信部35からスレーブアーム側の第2制御装置40に送信する(ステップS12)。
【0047】
一方、スレーブアーム側の第2制御装置40では、通信部45において、第1制御装置30からの第1軌道を受信したか否かを判断する(ステップS21)。第2制御装置40は、第1軌道を受信しない場合(ステップS21のNo)、第1軌道を受信するまで当該判断を繰り返す。
【0048】
通信部45において第1軌道を受信した場合(ステップS21のYes)、処理部42は、受信した第1軌道に基づいて、スレーブアームである第2ロボットアーム20の第2軌道を算出する(ステップS22)。第2軌道は、スレーブアームである第2ロボットアーム20がマスターアームである第1ロボットアーム10に追従して運動する軌道である。
【0049】
処理部42において第2軌道が算出された場合、第1制御装置30の運動制御部33は、マスターアームである第1ロボットアーム10を第1軌道に基づいて運動させる(ステップS13)。また、第2制御装置40の運動制御部43は、スレーブアームである第2ロボットアーム20を、第2軌道に基づいて運動させる(ステップS23)。運動制御部33及び43は、ステップS13及びステップS23を同期させて行わせる。つまり、第1ロボットアーム10の運動と第2ロボットアーム20の運動とを同期させて行わせる。これにより、第1ロボットアーム10の運動に第2ロボットアーム20の運動が追従することになる。この場合、ワーク50は、第1ロボットアーム10及び第2ロボットアーム20の運動によって並進運動する。
【0050】
以上、実施の形態1に係るロボットアームシステム100は、一のロボットアームである第1ロボットアーム10に直接教示の外力F1を加える場合、外力F1が加えられた第1ロボットアーム10がマスター状態となり、第1ロボットアーム10以外のロボットアームである第2ロボットアーム20がスレーブ状態となる。このため、マスターアーム及びスレーブアームが設定される複数のロボットアームのうちどのロボットアームに直接教示の外力F1を加える場合でも、複数のロボットアームを協調して運動させることが可能である。これにより、直接教示の外力を加える対象となるロボットアームを柔軟に選択可能であるため、複数のロボットアームに対して教示作業を行う場合の作業効率の低下を抑制できる。
【0051】
実施の形態2.
図9は、実施の形態2に係るロボットアームシステム100の教示動作を示す斜視図である。図9に示すように、実施の形態2では、実施の形態1と同一のロボットアームシステム100を用いて教示動作を行う場合を説明する。実施の形態2では、第1ロボットアーム10がマスターアームに設定され、第2ロボットアーム20がスレーブアームに設定された状態で運動している場合において、図9に示すように、スレーブアームである第2ロボットアーム20にスレーブ側外力F2が加えられた場合の動作を説明する。
【0052】
図10は、実施の形態2に係るロボットアームシステム100の教示動作の一部を示すフローチャートである。図10では、マスターアーム側の第1制御装置30と、スレーブアーム側の第2制御装置40とで個別に動作を説明する。第1制御装置30と第2制御装置40とでマスターアーム側及びスレーブアーム側が上記とは逆の場合においても、同様の説明が可能である。
【0053】
図10に示すように、まず、スレーブアーム側の第2制御装置40において、設定部41は、スレーブ側外力F2についての外力情報をマスターアーム側の第1制御装置30に送信する(ステップS41)。設定部41は、図9に示すように、トルクセンサ22a及び24aの検出結果を含む外力情報62を送信する。
【0054】
一方、マスターアーム側の第1制御装置30では、通信部35において、第2制御装置40からの外力情報62を受信したか否かを判断する(ステップS31)。第1制御装置30は、外力情報62を受信しない場合(ステップS31のNo)、当該外力情報62を受信するまで当該判断を繰り返す。
【0055】
通信部35において外力情報62を受信した場合(ステップS31のYes)、処理部32は、受信した外力情報62に基づいて、ワーク50の変位及び姿勢変化量を算出する(ステップS32)。第1ロボットアーム10及び第2ロボットアーム20が運動している状態において、第2ロボットアーム20にスレーブ側外力F2が加えられた場合、ワーク50の位置及び姿勢が変化する。つまり、運動制御部33の制御によって第1ロボットアーム10からワーク50に加えられる力と、外力情報62によってワーク50に加えられる力とにより、ワーク50の位置及び姿勢が変化する。ステップS32において、処理部32は、スレーブ側外力F2によるワーク50の位置及び姿勢の変化量、つまり、変位及び姿勢変化量を算出する。ワーク50の変位については、処理部32は、実施の形態1において説明した共通制御点51を基準とした変位を算出する。処理部32は、ワーク50の姿勢変化量については、XYZ3次元座標系を設定し、共通制御点51を基準点としたX軸回り、Y軸回り、Z軸回りの姿勢変化量を算出する。
【0056】
変位及び姿勢変化量を算出した後、処理部32は、算出結果に基づいて、マスターアームである第1ロボットアーム10の第3軌道を算出する(ステップS33)。第3軌道は、第2ロボットアーム20との間でワーク50を算出結果に応じて位置及び姿勢を変化させるための第1ロボットアーム10の軌道である。処理部32は、第3軌道を算出した後、算出結果63を通信部35からスレーブアーム側の第2制御装置40に送信する(ステップS34)。
【0057】
スレーブアーム側の第2制御装置40では、外力情報62を送信した後、通信部45において第1制御装置30からの第3軌道を受信したか否かを判断する(ステップS42)。第2制御装置40は、第3軌道を受信しない場合(ステップS42のNo)、当該第3軌道を受信するまで当該判断を繰り返す。
【0058】
通信部45において第3軌道を受信した場合(ステップS42のYes)、処理部42は、受信した第3軌道に基づいて、スレーブアームである第2ロボットアーム20の第4軌道を算出する(ステップS43)。第4軌道は、第1ロボットアーム10との間でワーク50を算出結果に応じて位置及び姿勢を変化させるための第2ロボットアーム20の軌道である。
【0059】
処理部42において第4軌道が算出された場合、第1制御装置30の運動制御部33は、マスターアームである第1ロボットアーム10を第3軌道に基づいて運動させる(ステップS35)。また、第2制御装置40の運動制御部43は、スレーブアームである第2ロボットアーム20を、第4軌道に基づいて運動させる(ステップS44)。運動制御部33及び43は、ステップS35及びステップS44を同期させて行わせる。つまり、第1ロボットアーム10の運動と第2ロボットアーム20の運動とを同期させて行わせる。これにより、第1ロボットアーム10の運動に第2ロボットアーム20の運動が追従することになる。この場合、第1ロボットアーム10及び第2ロボットアーム20の運動によって、ワーク50の位置及び姿勢が変化する。
【0060】
以上、実施の形態2に係るロボットアームシステム100は、マスターアーム及びスレーブアームが設定された状態で、スレーブアームにスレーブ側外力F2が加えられる場合であっても、マスターアーム側でスレーブアームに加えられた外力Fを反映させた第3軌道が算出され、当該第3軌道に基づいてマスターアームの運動が制御される。これにより、マスターアームとスレーブアームとを切り替える必要が無いため、複数のロボットアームに対して教示作業を行う場合の作業効率の低下を抑制できる。
【0061】
本発明の技術範囲は上記実施形態に限定されるものではなく、本発明の趣旨を逸脱しない範囲で適宜変更を加えることができる。実施の形態1では、第1ロボットアーム10及び第2ロボットアーム20の運動によってワーク50を並進運動させ、実施の形態2では、第1ロボットアーム10及び第2ロボットアーム20の運動によって、ワーク50の位置及び姿勢を変化させる場合を例に挙げて説明したが、これに限定するものではない。実施の形態1において、第1ロボットアーム10及び第2ロボットアーム20の運動によって、ワーク50の位置及び姿勢を変化させてもよい。また、実施の形態2において、第1ロボットアーム10及び第2ロボットアーム20の運動によってワーク50を並進運動させてもよい。
【0062】
また、実施の形態1及び実施の形態2では、第1制御装置30が第1ロボットアーム10を制御し、第2制御装置40が第2ロボットアーム20を制御し、第1制御装置30と第2制御装置40との間で互いに通信可能な構成である制御装置を例に挙げて説明したが、これに限定するものではない。
【0063】
図11は、ロボットアームシステムの他の例を示す斜視図である。図11に示すロボットアームシステム200は、1つの制御装置130を備え、当該制御装置130によって第1ロボットアーム10及び第2ロボットアーム20の両方を制御する構成である。他の構成については、ロボットアームシステム100と同様である。図11に示すロボットアームシステム200のように、1つの制御装置130によって複数のロボットアームを制御する構成であってもよい。
【0064】
上記のロボットアームシステム100,200は、ワーク50を把持するロボットアームが、第1ロボットアーム10及び第2ロボットアーム20の2つのロボットアームを備える構成を説明したが、これに限定するものではなく、3つ以上のロボットアームを備える構成であってもよい。
【0065】
上記のロボットアームシステム100,200は、トルクセンサ12a,14a,22a,24aによって第1ロボットアーム10及び第2ロボットアーム20に加えられる力を検出する構成を説明したが、これに限定するものではない。ロボットアームシステム100,200は、トルクセンサ12a,14a,22a,24aに代えて、又はトルクセンサ12a,14a,22a,24aに加えて、図1又は図11に示すように、連結部19,29に力覚センサ19a,29aを有する構成であってもよい。この場合、力覚センサ19aは、把持部16に加えられた外力を検出し、検出結果を第1制御装置30送信する。また、力覚センサ29aは、把持部26に加えられた力を検出し、検出結果を第2制御装置40送信する。この構成により、ロボットアームシステム100,200は、第1ロボットアーム10及び第2ロボットアーム20に加えられる力を検出することができる。また、ロボットアームシステム100,200は、トルクセンサ12a,14a,22a,24a及び力覚センサ19a,29aに代えて、第1関節部12,22及び第2関節部14,24に設けられたモータの電流値の変化を検出することにより、第1ロボットアーム10及び第2ロボットアーム20に外力が加えられたことを検出する構成であってもよい。
【符号の説明】
【0066】
F1 外力、F2 スレーブ側外力、10 第1ロボットアーム、11,21 基台、12,22 第1関節部、12a,14a,22a,24a トルクセンサ、13,23 第1腕部、14,24 第2関節部、15,25 第2腕部、16,26 把持部、17,27 第1軸部、18,28 第2軸部、19,29 連結部、19a,29a 力覚センサ、20 第2ロボットアーム、30 第1制御装置、31,41 設定部、32,42 処理部、33,43 運動制御部、34,44 記憶部、35,45 通信部、40 第2制御装置、50 ワーク、51 共通制御点、61 マスター設定完了情報、62 外力情報、100,200 ロボットアームシステム、130 制御装置。
図1
図2
図3
図4
図5
図6
図7
図8
図9
図10
図11