JPH0720915A - ロボットの同期制御方法 - Google Patents

ロボットの同期制御方法

Info

Publication number
JPH0720915A
JPH0720915A JP19164993A JP19164993A JPH0720915A JP H0720915 A JPH0720915 A JP H0720915A JP 19164993 A JP19164993 A JP 19164993A JP 19164993 A JP19164993 A JP 19164993A JP H0720915 A JPH0720915 A JP H0720915A
Authority
JP
Japan
Prior art keywords
arm
robot
point
data
slave
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
JP19164993A
Other languages
English (en)
Inventor
Kazukuni Ban
一訓 伴
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.)
Fanuc Corp
Original Assignee
Fanuc 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 Fanuc Corp filed Critical Fanuc Corp
Priority to JP19164993A priority Critical patent/JPH0720915A/ja
Publication of JPH0720915A publication Critical patent/JPH0720915A/ja
Pending legal-status Critical Current

Links

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/1679Programme controls characterised by the tasks executed
    • B25J9/1682Dual arm manipulator; Coordination of several manipulators
    • 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/1669Programme controls characterised by programming, planning systems for manipulators characterised by special application, e.g. multi-arm co-operation, assembly, grasping
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/39Robotics, robotics to robotics hand
    • G05B2219/39141Slave program has no taught positions, receives position from master, convert from master

Landscapes

  • Engineering & Computer Science (AREA)
  • Robotics (AREA)
  • Mechanical Engineering (AREA)
  • Numerical Control (AREA)
  • Manipulator (AREA)
  • Control Of Position Or Direction (AREA)

Abstract

(57)【要約】 【目的】 煩雑な教示作業なしに双腕協調を的確に行
え、複雑な運搬作業にも対応し得る双腕協調の為のロボ
ット同期制御方法。 【構成】 マスターアームM側のロボット制御装置に教
示点データを教示し、該データから補間計算によりマス
ターアームの通過点を決定する。スレーブアームが移動
すべき通過点は、マスターアームとスレーブアームの相
対的な位置・姿勢関係を表すデータTefを利用してマス
ターアーム側またはスレーブアーム側で決定する。その
際、必要に応じてロボット制御装置間のデータ通信を利
用する。両アームM,Sの次移動点が決定されたら各ア
ームを同期的に移動させる。以上のプロセスを繰り返し
て両アームを目標点に同時に到達させる。協調動作の全
経路について、補間点単位の同期移動が実現される。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本願発明はロボットの同期制御方
法に関し、詳しくは、個別または共通の制御装置を備え
た2台のロボットの各アーム、あるいは1台のロボット
の2本のアームを協調動作させる為のロボットの同期制
御方法に関する。また、別の観点から言えば、物品を2
本のロボットアーム(双腕)で把持して所定の位置に運
搬する際に適用し得るロボットの同期制御方法に関す
る。
【0002】
【従来の技術】一般にロボットを用いて物品の把持・運
搬を含む作業を実行する場合、1本のアーム(単腕)で
これを行う場合と、2本のアーム(双腕)を用いる場合
とがある。前者を採用すると、対象物品が比較的長寸
(特に、ロボットハンドに比べて長寸)あるいは大重量
である場合にロボットハンド部に過大な負荷トルクがか
かるという問題が生じる。また、単腕では、物品を互い
に離隔した点で把持することが出来ないので把持状態を
堅固にしなければならない。
【0003】これに対して後者(双腕)を採用した場合
には、比較的長寸の物品(特に、ロボットハンドに比べ
て長い物品)や重量物品であっても、該物品を互いに離
隔した点で把持することが可能なので、手首部にかかる
負荷トルクを小さくすることが出来、把持状態もそれほ
ど堅固なものとする必要が無い(従って、ハンドの機構
を簡略化出来る)という利点がある。
【0004】しかし、ロボットの2本のアームを協調制
御することは、必ずしも容易なことではなく、その為に
上記利点にも拘らず多くの場合単腕による把持・運搬が
行われていた。
【0005】すなわち、従来、ロボットの2本のアーム
を協調動作させるには、数秒のオーダーの時間間隔毎に
両アームの整列をとることを繰り返す形で2本のアーム
の動きを同期させ、それ以外の時点では各アームは各々
の教示プログラムに従って独立に制御する事が行われて
いた。この方式においては、各整列時点直後の短時間の
間は両アームの協調関係は良好に保たれ易いが、時間が
経過して次の整列時点に対応する教示点位置に各アーム
のハンドが到達する頃には両者の協調関係が崩れて両ハ
ンド間の相対距離や相対姿勢にずれを生じ、到達時点そ
のものも一致しなくなる傾向が大きくなる。
【0006】これを避けるには、同期を頻繁にとること
によって、ずれが生じにくくすれば良いのであるが、そ
うすると両アームに対する教示点が増える等の理由で両
アームについての教示作業が必然的に煩雑となるという
問題があった。その為、双腕によるロボット作業を利用
したとしても、複雑な運搬作業、例えば物品の姿勢を運
搬行程中に変えながら目標位置まで運ぶというような作
業を正確且つ効率的に実行することは事実上困難であっ
た。
【0007】
【発明が解決しようとする課題】本願発明は、従来技術
の上記問題点を解決し、煩雑な教示作業を伴わずに双腕
協調を的確に行うことが可能であり、複雑な運搬作業に
も対応し得るロボットの同期制御方法を提供するもので
ある。なお、本願発明は本発明者に係る特願平4−24
7183号に関連した発明であり、該特許出願において
提案された技術思想を拡張し、改良を加えたものであ
る。また、以下の記述において、「2本のアーム(双
腕)の協調動作」は、「3本以上のアームの協調動作」
を含んでいるものとする。即ち、3本以上のアームのう
ちいずれか2本のアームに関して本願発明の技術思想に
従った協調動作が行なわれる場合であれば、当然本願発
明の技術的範囲に含まれるものである。
【0008】
【課題を解決するための手段】本願発明は、協調動作対
象の2本のロボットアームとロボット(本体)とロボッ
ト制御装置の相互関係に対応して、基本的に4つの形態
で上記従来技術の問題点を解決したものである。まず、
[1]協調動作対象となる2本のアームが、各々制御装
置を備えた2台のロボットに分かれて存在し、マスター
アームとスレーブアームの所属する各ロボットの位置
が、いずれもマスターアームの所属するロボットの制御
装置内で定められるケースについては、「各々制御装置
を備えた2台のロボットの一方のロボットのアームをマ
スターアームとし、他方のロボットのアームをスレーブ
アームとして双腕協調動作を行わせるロボットの同期制
御方法において;前記マスターアームの所属するロボッ
ト制御装置に教示点データを教示する段階と;該制御装
置内で、該教示された教示点データに基づく補間計算に
より前記マスターアームが順次移動すべき通過点を決定
する段階と;予め定められた前記マスターアームと前記
スレーブアームとの相対的な位置・姿勢関係を表すデー
タを利用して前記スレーブアームが順次移動すべき点を
同制御装置内で決定する段階と;前記スレーブアームが
次に移動すべき点に決定された点のデータを前記スレー
ブアームの所属するロボットの制御装置に送信する段階
と;前記マスターアーム及び前記スレーブアームを各々
前記次に移動すべき点に同期的に移動させる段階とを含
み、少なくとも、前記データ送信段階と前記マスターア
ーム及び前記スレーブアームの前記次の点への移動段階
が繰り返し実行されることを特徴とする前記ロボットの
同期制御方法(請求項1に記載された構成)」によっ
て、上記従来技術の問題点を解決したものである。
【0009】また、[2]協調動作対象となる2本のア
ームが、共通の制御装置を備えた2台のロボットに分か
れて存在しているケースについては、「共通の制御装置
を備えた2台のロボットの一方のロボットのアームをマ
スターアームとし、他方のロボットのアームをスレーブ
アームとして双腕協調動作を行わせるロボットの同期制
御方法において;前記2台のロボットに共通の制御装置
に教示点データを教示する段階と;該教示された教示点
データに基づく補間計算により前記マスターアームが順
次移動すべき通過点を決定する段階と;予め定められた
前記マスターアームと前記スレーブアームとの相対的な
位置・姿勢関係を表すデータを利用して前記スレーブア
ームが順次移動すべき点を決定する段階と;前記マスタ
ーアーム及び前記スレーブアームを各々前記次に移動す
べき点に決定された点に同期的に移動させる段階を含
み、少なくとも前記マスターアーム及び前記スレーブア
ームの前記次の点への移動段階が繰り返し実行されるこ
とを特徴とする前記ロボットの同期制御方法(請求項2
に記載された構成)」によって同問題点を解決したもの
である。
【0010】[3]協調動作対象となる2本のアーム
が、同一のロボットに備わっているケースについては、
「2本のアームと制御装置を備えたロボットの一方のロ
ボットのアームをマスターアームとし、他方のアームを
スレーブアームとして双腕協調動作を行わせるロボット
の同期制御方法において;前記ロボットの制御装置に教
示点データを教示する段階と;該教示された教示点デー
タに基づく補間計算により前記マスターアームが順次移
動すべき通過点を決定する段階と;予め定められた前記
マスターアームと前記スレーブアームとの相対的な位置
・姿勢関係を表すデータを利用して前記スレーブアーム
が順次移動すべき点を決定する段階と;前記マスターア
ーム及び前記スレーブアームを各々前記次に移動すべき
点に同期的に移動させる段階を含み、少なくとも前記マ
スターアーム及び前記スレーブアームの前記次の点への
移動段階が繰り返し実行されることを特徴とする前記ロ
ボットの同期制御方法(請求項3に記載された構成)」
によって従来の技術の問題点を克服したものである。
【0011】更に、[4]協調動作対象となる2本のア
ームが、各々制御装置を備えた2台のロボットに分かれ
て存在し、マスターアームの所属するロボットの位置
が、はマスターアームの所属するロボットの制御装置内
で定められるが、スレーブアームの所属する各ロボット
の位置はスレーブアームの所属するロボットの制御装置
内で定められるケースについては、「各々制御装置を備
えた2台のロボットの一方のロボットのアームをマスタ
ーアームとし、他方のロボットのアームをスレーブアー
ムとして双腕協調動作を行わせるロボットの同期制御方
法において;前記マスターアームの所属するロボットの
制御装置に教示点データを教示する段階と;該教示され
た教示点データに基づく補間計算により前記マスターア
ームが順次移動すべき通過点を決定する段階と;該決定
されたマスターアーム通過点データを前記スレーブアー
ムの所属する制御装置に送信する段階と;該送信された
データと前記マスターアームと前記スレーブアームとの
相対的な位置・姿勢関係を表すデータに基づいてスレー
ブアームが次に移動すべき点を前記スレーブアームが所
属するロボットの制御装置内で決定する段階と;前記マ
スターアーム及び前記スレーブアームを各々前記次に移
動すべき点に同期的に移動させる段階を含み、少なくと
も、前記データ送信段階と前記マスターアーム及び前記
スレーブアームの前記次の点への移動段階が繰り返し実
行されると共に、前記前記マスターアームと前記スレー
ブアームとの相対的な位置・姿勢関係を表すデータが、
前記各ロボットの初期位置データに基づいて前記スレー
ブアームの所属するロボットの制御装置内で算出される
ことを特徴とする前記ロボットの同期制御方法(請求項
4に記載された構成)」によって、従来技術の問題点を
解決したものである。
【0012】そして、特に物品の把持・運搬作業に本願
発明を上記各形態で適用する為の要件として、「前記双
腕協調動作が物品の把持・運搬の為に行われ、該物品の
運搬中は前記予め定められた前記マスターアームと前記
スレーブアームとの相対的な位置・姿勢関係が前記把持
・運搬される物品の運搬中の把持態勢に対応して一定に
保たれる」という条件を課して、物品の把持・運搬作業
における上記問題点を解決する方法を提案したものであ
る(請求項5に記載された構成)。
【0013】
【作用】本願発明のロボットの同期制御方法によれば、
上記[1]〜[4]の各ケースについて、従来技術の問
題点を回避した形で2本のアームの協調動作を実現させ
ることが出来る。
【0014】即ち、上記いずれのケースにおいても協調
対象アームの一方をマスターアームとして、マスターア
ームが所属するロボットの制御装置に教示点データが教
示される。そして、該制御装置内では、該教示点データ
に基づいた補間計算によりマスターアームの移動すべき
通過点が決定される。
【0015】スレーブアームの次の通過点は、該決定さ
れたマスターアームが次に移動すべき点のデータと把持
・運搬される物品の運搬中の把持態勢等に対応する両ア
ームの相対的な位置・姿勢関係を表すデータに基づい
て、いずれかのロボットの制御装置内で決定される。
【0016】これら各ケースに合わせた両アームの次移
動点決定処理や送信処理と、マスターアーム及びスレー
ブアームを各々前記移動すべき点に同期的に移動させる
一連のプロセスを繰り返すことによって、教示データと
両アーム間の位置・姿勢関係を表わすデータに準拠した
ロボット移動が実行される。
【0017】本願発明を実施する際のより詳細な手順の
具体例については、後述の実施例の説明の欄で述べる
が、ここでそのアウトラインを簡単に述べておくことに
する。
【0018】まず、両アームの共通座標系として定義さ
れる作業空間内の1つの座標系のデータを各アームの所
属するロボットの制御部(ケース[1]、[4]の場合
は2つの制御部、ケース[2]、[3]の場合は1つの
制御部)に予め与えておく。双腕協調時のロボット教示
は、マスターアームが所属するロボットの制御装置に対
して行われる。
【0019】マスターアームの所属するロボットの制御
部では、与えられた教示内容に応じてマスターアームの
次通過点(姿勢を含む、以下、単に次通過点という)を
決定する。ケース[4]では、このデータをスレーブア
ームの所属するロボットの制御装置に送信し、そこでス
レーブアームの次移動点が決定される。ケース[1]で
は、スレーブアームの次通過点をマスターアーム側のロ
ボット制御装置内で決定した上で、その結果をスレーブ
アーム側のロボット制御装置へ送信する。
【0020】スレーブアームの次通過点の決定にあたっ
ては、両アーム間の位置・姿勢関係を表わすデータが必
要となる。このデータの取得方法としては、ロボット作
業開始前に被把持物品のデータに基づいて定められたも
のをマスターアームの所属するロボットの制御部に与え
ておく方法や、各ロボットアームを操作して現実に把持
対象となる物品またこれを代表あるいは模した物品を把
持する態勢を実際にとらせ(把持・搬送開始時点の姿勢
で良い。)、その際の各アームに関する現在位置データ
から両アームの位置・姿勢関係を表わすデータを獲得す
る方法がある。
【0021】後者の方法の場合、各物品把持毎にデータ
を更新取得することも出来るし、物品にサイズや把持態
勢に変更があった場合のみデータを更新するやり方も考
えられる。本願発明においては、いずれの方式によって
取得されたデータであっても、これを「予め定められた
マスターアームとスレーブアームとの相対的な位置・姿
勢関係を表すデータ」と呼ぶことにする。
【0022】ケース[1]においては、マスターアーム
が最初の通過点に向かって動きを開始しようとする前
に、スレーブアームの所属するロボットの制御部にマス
ターアームの所属するロボットの制御装置で決定された
スレーブアームの最初の通過点のデータをスレーブアー
ムの所属するロボットの制御装置に送信する。
【0023】ケース[2]及び[3]では、制御装置が
両アームに共通であるから送信の必要はない。
【0024】また、ケース[4]においては、マスター
アームが最初の通過点に向かって動きを開始しようとす
る前に、スレーブアームの所属するロボットの制御部に
マスターアームの所属するロボットの制御装置で決定さ
れたマスターアームの最初の通過点のデータをスレーブ
アームの所属するロボットの制御装置に送信する。送信
を受けたスレーブアームの所属するロボットの制御装置
では、スレーブアームが次に移動すべき点を決定する。
【0025】両アームの向かうべき第1番目の通過点が
各アームの所属するロボットの制御装置に認識されたと
ころで、両アームが動きを開始する。各アームが第1番
目の通過点に到達するのに前後して(通常は、到着に先
立って)、マスターアームまたはスレーブアームの所属
するロボットの制御部では、1番目の通過点データの決
定法に倣って、両アームの2番目の通過点のデータを決
定する。[1]、[4]のケースでは、前回同様のデー
タ送信がマスターアーム側ロボット制御装置からスレー
ブアーム側ロボット制御装置へ向けて行われる。
【0026】次いで、両アームは、第1番目の通過点へ
の到達に引続いて第2番目の通過点に向けての運動を開
始する。
【0027】以下、同様の動作を繰り返して、マスター
アームは目標とする教示点に到達し、スレーブアームは
該教示点に対応して決定された点に到達する。
【0028】マスターアームが次の教示点に至るまでの
各通過点を順次適当なタイミングでマスターアームの所
属するロボットの制御部において決定し、ケース[1]
ではスレーブアームの所属するロボットの制御装置に順
次送信し、上述したプロセスと同様の過程を続けて実行
すれば、両アームの所定の軌道に沿っての協調運動が続
行される。マスターアームが最終的な目標点(最終教示
点)に到達すると、時間的なずれを伴うることなくスレ
ーブアームがこれに対応した最終目標点に到達すること
になる。
【0029】このようなロボットの同期制御法によれ
ば、スレーブアームの移動先が逐次補間点単位でマスタ
ーアームの移動に応じて決定され、、且つ、同期的な移
動が実現される。従って、上記[1]〜[4]いずれの
ケースにおいても、ロボットへの教示をマスターアーム
の所属するロボットの制御装置に対して行うだけで、両
アーム間に動作ずれの無い双腕協調が実現される。
【0030】マスターアームの所属するロボットの制御
装置への教示は、従来と同程度のポイント数について行
えば良い。マスターアームの制御部では採用されている
補間方式に応じて教示点間に多数の通過点(補間点)を
定め、教示点間の区間内の最後の通過点に相当する次の
教示点を含めて、補間点単位で両アーム間の同期か図ら
れるので、教示点を多数とらなくとも十分な精度で双腕
協調を行なうことが出来る。
【0031】また、本願発明のロボットの同期制御方法
によれば、両アームの先端ハンド部の相対的な位置・姿
勢関係が一定に保たれるように両アームを移動させるこ
とが容易なので、双腕で把持した物品の姿勢を変化させ
ながら運搬する作業あるいはこれに類した双腕協調動作
を含むロボット作業を、格別な困難を伴うことなく実行
することが可能となる。
【0032】
【実施例】
<実施例1>図1は、前述[1]のケースについて、本
願発明の同期制御方法を実施する為の双腕ロボットシス
テムの一例を模式的に表したもので、各アームが所属す
るロボットに設定された座標系(ベース座標系)と共通
座標系との関係が併記されている。図2は、図1に示し
た双腕ロボットシステムあるいは後述するケース[2]
〜[4]に対応した双腕ロボットシステムで使用される
ロボット制御装置(ロボットコントローラ)の構成を説
明する図である。また、図3は物品Gの両端付近を点E
(0,0)、点F(0,0)で把持した状態から出発して点E(n,
0)、点F(n,0)まで運搬する経路を模式的に示した図で
あり、図4は、図1に示した双腕ロボットシステムを用
いて、図3に示した双腕協調動作を本願発明のロボット
の同期制御方法(ケース[1])に従って行わせる際
に、各ロボット制御装置のCPUが実行する処理の概要
を説明する為のフローチャートである。
【0033】以下、これらの図を用いて本願発明のケー
ス[1]に対応した実施例について説明する。図1を参
照すると、双腕ロボットシステムは2台の単腕ロボット
R1及びR2と、各ロボットを制御するロボット制御装
置1及び2と、両ロボット制御装置を結ぶ通信回線から
構成されている。ここでは、ロボットR1のアームをマ
スターアームMとし、ロボットR2のアームをスレーブ
アームSとする。各アームM、Sは各機構部3、4を介
して駆動され、各機構部3、4は各ロボット制御装置
1、2によって制御される。
【0034】ロボット制御装置1、2には基本的に同じ
構成のものを使用することが出来る。図2を参照してこ
れを説明すると、ロボット制御装置1(または2)は中
央演算処理装置(メインCPU、以下単にCPUと言
う。)101を有し、該CPU101には、RAM及び
ROMからなるメモリ102、運動の教示・座標設定等
を行う為の教示操作盤104に接続された教示操作盤用
インターフェイス103、他方のロボット制御装置2
(または1)との間で通信を行う為の通信インターフェ
イス105、オフラインプログラム作成装置あるいは双
腕ロボットシステムを利用する外部装置の為の入出力イ
ンターフェイス106及びロボットR1(またはR2)
の各軸を制御するサーボ制御部#1〜#nがバス107
を介して接続されている。
【0035】サーボ制御部の数nは、ロボットR1(ま
たはR2)を駆動する軸の数であり、例えばロボットR
1(またはR2)が6軸ロボットであれば、n=6であ
る。各サーボ制御部には、サーボアンプを介して当該ロ
ボットの各軸を駆動するサーボモータが接続されてい
る。
【0036】各アームM、Sは関節11、12、13及
び21、22、23とハンドHm 、Hs を各々備えてい
る。双腕協調の観点から、各アームの機構は共通のもの
であることが好ましいが、要求される協調運動の態様
(運動の自由度等)に対応できるものであれば、両者の
機構は異なっていても良く、また、関節の数や伸縮腕と
関節の組合せ等、特に制限は無い。
【0037】図1の双腕ロボットシステムの両アームを
協調させて、例えば物品の把持・運搬作業を行うに際し
ては、マスターアームMに対してスレーブアームSを協
調動作させる形をとる。まず、作業空間内の両アームに
共通な1つの座標系Σo を定義し、この共通座標系Σo
と各アームM、Sのベース座標系Σm 、Σs の関係を各
々4行4列の同次変換行列Tm ={Tij}及びTs =
{Tkl}で表現した時の行列要素の値Tij(i,j=1,2,3,
4)、Tkl(k,l=1,2,3,4)を各ベース座標系のデータと
して、各対応するロボットR1、R2の制御装置1のメ
モリ102に格納しておく。同次変換行列Tm を用いる
と、ベース座標系Σm から見たハンドHm の位置E(ハ
ンドHm の代表点位置と姿勢)を表す行列Em (ベース
座標系Σm とハンドHm に固定された座標系Σhmとの関
係を表現する同時変換行列で、アームMの動き、すなわ
ちハンドHm の位置と姿勢の変化に応じて変化する。)
は、 Em =Tm ・Eo ・・・(1) で表される。ここで、Eo は位置Eを共通座標系Σo 上
で表した行列である。
【0038】同様の関係をスレーブアームSのハンドH
s の位置Fについて記せば、 Fs =Ts ・Fo ・・・(2) となる。ここで、Fs 、Fo は、各々位置Fをベース座
標系Σs 及び共通座標系Σo 上で表した行列である。
【0039】ところで、物品の2ヵ所(通常は両端付
近)を双腕で把持して運搬を行う場合には、両アームが
一旦協調関係に入ったならば、両ハンドHm 、Hs の相
対的な位置関係、すなわち、両者の距離と相対的な姿勢
の関係は不変に保たれるのが一般的である。例えば、両
ハンドが互いに真正面を向き合って物品を把持した状態
で双腕協調が開始されたならば、共通座標系Σo から見
た両者の位置(姿勢を含む)は刻々変化して行くが、協
調終了時まで両ハンドは一定間隔を保って、かつ真正面
を向き合ったまま所定の軌道に沿って運動し、それによ
って、物品の把持を維持しつつ、その物品の姿勢を変え
ながら与えられた目標位置(姿勢を含む)への運搬が実
現される。
【0040】そこで、この通常は一定に保たれる両ハン
ドの関係を位置EとFの関係を表現する行列Tefで表す
ことにする。そうすると、図1に描かれた関係から判る
ように、 Fo =Eo ・Tef ・・・(3) の関係が成立する。更に、式(2)を式(3)に代入す
れば、 Fs =Ts ・Fo =Ts ・Eo ・Tef ・・・(4) を得る。Ts は既に所与であり、Eo はマスターアーム
Mの教示点とそれに基づく補間計算によって定められ
る。
【0041】そして、上述した行列Tm のデータをロボ
ット制御装置1に、Ts のデータをロボット制御装置2
に各々格納しておくと共に、この行列Tefのデータ(行
列要素)を、ロボット制御装置1のメモリ102にロボ
ット始動時迄の適宜時点で格納しておく。これにより、
ロボット制御装置1内で、(1)式に基づいてロボット
R1の移動目標点(ベース座標系Σm 上データ)を定め
ると共に、(3)式に基づいてロボットR2の移動目標
点(共通座標系Σo 上データ)を算出する為のデータが
準備されたことになる。
【0042】実際に双腕協調を行うに際しては、これら
必要なデータの記憶に加えて、前記の(1)式、(3)
式に相当する計算あるいは通過点算出に必要な補間計算
を実行する為のプログラムをロボット制御装置1のメモ
リ102に格納しておくと共に、ロボット制御装置1か
らの(3)式の計算結果データの送信を受けて(4)式
の計算を実行する為の為のプログラムをロボット制御装
置2のメモリ102に格納しておく。
【0043】また、本実施例においては、マスターアー
ムMとスレーブアームSに把持姿勢をとらせた際の各ロ
ボット位置データから行列Tefを定める為の計算プログ
ラムを併せて制御装置1のメモリ102に格納してお
く。
【0044】以上の準備のもとに、図1に示した双腕ロ
ボットシステムを用いて、図3に示した双腕協調動作を
本願発明のロボットの同期制御方法(ケース[1])に
従って行わせる際の、ロボット制御装置1、2の各CP
Uの処理の概要を図4のフローチャートを参照して説明
する。
【0045】まず、図3について簡単に説明すると、点
E(0,0)及び点F(0,0)は各々マスターアーム、スレーブ
アームの協調動作の出発点であり、点E(n,0) 、点F
(n,0)は終了点である。経路に沿ってマスターアーム側
のロボット制御装置1に教示される教示点をE(p,0)[p=
0,1,2,...n] で表す。出発点E(0,0) は0番目の教示
点、終了点E(n,0) はn番目の教示点として扱う。ま
た、p番目の教示点を離れてからp+1番目の教示点に
至るまでの通過点を点E(p,1),E(p,2),E(p,3),......
E(p,u(p)), E(p,u(p)+1)とする。p+1番目の教示点
E(p+1,0) は便宜上通過点として扱い、これをE(p,u
(p)+1)とも呼ぶこととする。すなわち、E(p+1,0) =E
(p,u(p)+1)である。
【0046】隣合う教示点E(p,0) とE(p+1,0) 間の通
過点の数u(p)は区間毎に定められるが、一定の場合
もある。
【0047】マスターアームの各点E(p,q) に対応する
スレーブアームの通過点をF(p,q),[p=0,1,2,....n、q=
0,1,2,....u(p)+1] で表す。点E(p,q) はp番目の教示
点到達後のq番目の通過点を表し、各ハンドHm 、Hs
の姿勢(把持された物品の姿勢)の具体的な描画表現は
省略してある。
【0048】行列Tm 、Ts 、Tef等のデータ、教示プ
ログラム、補間計算や式(1)〜(4)に対応した行列
演算のプログラムの入力等、双腕協調開始に必要な準備
はすべて完了しているものとして、図4のフローチャー
トに沿って各ロボット制御装置1、2におけるCPUの
処理を説明する。
【0049】まず、制御装置(ロボットコントローラ)
1に、外部部入出力インターフェイス106または教示
操作盤104を介して双腕協調動作の開始指令が与えら
れると、これが直ちにスレーブアーム側のロボット制御
装置2にも送信され、マスターアーム側ロボットとスレ
ーブアーム側のロボットの協調動作が開始される(マス
ター側、スレーブ側協調開始)。
【0050】ロボット制御装置1は直ちにロボット制御
装置2からの送信を受信する態勢に入る(ステップM
1)。ロボット制御装置2はスレーブアーム側ロボット
の出発点データ(即ち、出発点におけるロボットR2の
現在位置・姿勢データ)F(0,0) onΣs またはF(0,0)
onΣo をロボット制御装置1に送信し(ステップS
1)、直ちに、ロボット制御装置1からの送信を待つ態
勢に入る(ステップS2)。
【0051】スレーブアーム側ロボットの出発点データ
の送信を受けたロボット制御装置1では、マスターアー
ム側ロボットの出発点データ(出発点におけるロボット
R1の現在位置・姿勢データ)E(0,0) onΣo と併せ、
上記(3)式の関係等を利用して、行列Tefを求めメモ
リ102に格納する(ステップM2)。
【0052】ロボット制御装置1では、教示点指標p及
び補間点qを0にリセットした上で(ステップM3)、
1カウントアップし(ステップM4)、教示プログラム
の1ブロックの読み込みを行なう(ステップM5)。読
み込まれた1ブロックが協調動作終了に相当するもので
ないことを確認した上で(ステップM6)、指定された
補間方式に従って通過点数u(p)を定め(ステップM
7)、通過点指標qを1カウントアップする(ステップ
M8)。
【0053】そして、教示点E(p-1,0) と教示点E(p,
0) の間の教示点間内挿補間計算に基づき、マスターア
ームが順次移動すべき通過点を共通座標系Σo 上で表し
たデータE(p-1,q)on Σo あるいはベース座標系Σm 上
で表したデータE(p-1,q)on Σm の少なくとも一方を算
出する(ステップM9)。第1回目の処理サイクルにお
いて最初に定められるマスターアーム(マスターアーム
側ロボット)の次移動点はE(0,1)である。
【0054】更に、算出されたマスターアームの次通過
点データに基づいて、スレーブアームが次に移動すべき
通過点を共通座標系Σo 上で表したデータF(p-1,q)on
Σoがロボット制御装置1内で算出され、ロボット制御
装置2に送信される(ステップM10)。第1回目の処
理サイクルにおいて最初に算出/送信対象となるスレー
ブアーム側ロボットの次移動点はF(0,1)である。
【0055】ロボット制御装置1からの送信を受けたロ
ボット制御装置2では、それが協調動作終了指令でない
ことを確認した上で(ステップS3)、ロボット制御装
置1から送信された共通座標系上データF(p-1,q)on Σ
o をスレーブアーム側ロボットR2に設定されているベ
ース座標系Σs 上データF(p-1,q)on Σs に変換する
(ステップS4)。この計算が終了したならば、直ちに
ボット制御装置1にスレーブアーム側ロボットが移動準
備態勢に入っていることを送信する(ステップS5)と
共に、最初の次移動点F(0,1) へ向けてロボット移動を
開始させる(ステップS6)。一方、ステップM10終
了後にロボット制御装置2からの送信待ち態勢に入って
いる(ステップM11)ロボット制御装置1も、このロ
ボット制御装置2からの送信を受けて直ちに最初の次移
動点E(0,1) へ向けて移動を開始する(ステップM1
2)。なお、両者の移動開始(各サーボ制御部への目標
点位置パルス入力)を正確に同期させる為に、両ロボッ
ト制御装置のCPUが内蔵しているクロックを利用する
ことが出来る。
【0056】このようにして1通過点分の処理が終了し
たら、ロボット制御装置1では次教示点への未到達を確
認した上で(ステップM13)、ステップM8へ戻り、
通過点指標qを1カウントアップする。また、ロボット
制御装置2では、ステップS2に戻り、ロボット制御装
置1からの送信待ち態勢に入る。
【0057】以下、ロボット制御装置1ではステップM
8〜ステップM13、ロボット制御装置2ではステップ
S2〜ステップS6が繰り返され、両アームM、Sが行
列Tefに対応した一定の位置・姿勢関係を保ちながら次
々と各通過点E(0,q) 、F(0,q) (q=1,2,3...)、を通過
し、区間内の最後の通過点E(p-1,u(p)+1)、すなわち教
示点E(p,0) の直前位置に到達し、ロボット制御装置1
側のステップM13で、初めてイエスの判断がなされ
る。そして、ステップM4へ戻り教示点指標pを1カウ
ントアップした上で、教示プログラムの次の1ブロック
が読み込まれる。
【0058】以下、ロボット制御装置1及びロボット制
御装置2において上記説明したと同様の処理がn個の教
示点について順次繰り返し実行される。
【0059】マスターアーム側、スレーブアーム側双方
のロボットは、図3に示された全経路に亙って補間点
(通過点)単位で相互に同期をとりながら移動を続ける
ので、マスターアーム側ロボットが最終的に双腕協調動
作の目標点乃至終了点に当たる教示点E(n,0) に到達し
て時には、スレーブアーム側ロボットもこれに同期して
双腕協調動作の終了点に到達することになる。
【0060】さて、この時の教示点指標pはp=nとな
っており、従って教示点指標pに1を加算してから教示
プログラムの次の1ブロックを読み出せば、双腕協調動
作終了指令が読み込まれ(ステップM6でイエスの判
断)、この指令はロボット制御装置2に送信される(ス
テップM14)。ロボット制御装置2はこれをステップ
S3で確認し、スレーブアーム側のロボット協調動作を
終了させる。また、ロボット制御装置1もステップM1
4後、マスターアーム側ロボットの協調動作を終了させ
る。
【0061】ロボット制御装置1、2間の通信手段は有
線、無線を問わず、また電磁気的、光学的あるいは音響
的等の任意の通信手段が使用され得ることは言うまでも
ない(後述する実施例4についても同様である)。
【0062】<実施例2>次に、前述[2]のケースに
対応した実施例について説明する。図1に併記されてい
る各座標系の設定等については、実施例1と同様なので
重複説明を省略する。必要なデータ及びプログラムはす
べてマスターアーム側ロボットとスレーブアーム側ロボ
ットに共通のロボット制御装置のメモリ102内に格納
される。
【0063】2台のロボットを統括制御するロボット制
御装置の構成は、基本的に実施例1の場合(図2参照)
と同じとすることが出来る。但し、サーボ制御部の数n
は2台のロボットを駆動する軸の合計数であり、例えば
両ロボットが6軸ロボットであれば、n=12となる。
また、通信インターフェイス105は当然省略すること
が出来る。以下、実施例1の場合と同様の準備が完了し
ているものとして、図3に示した経路の双腕協調動作を
例にとり、ケース[2]に対応した実施例を、2台のロ
ボットを統括制御するロボット制御装置のCPUの処理
の概要を記した図5のフローチャートを参照して説明す
る。(図3についての説明は省略。実施例1の場合と同
様である。)まず、2台のロボットを統括制御するロボ
ット制御装置(ロボットコントローラ;以下、実施例2
中では単にロボット制御装置と言う。)に、外部部入出
力インターフェイス106または教示操作盤104を介
して双腕協調の開始指令が与えられると(マスター側、
スレーブ側協調動作開始)、ロボット制御装置のCPU
は、マスターアーム側ロボット及びスレーブアーム側ロ
ボットの出発点データ(出発点におけるロボットR1及
びR2の現在位置・姿勢データ)E(0,0) onΣo とF
(0,0) onΣo に基づき、上記(3)式の関係等を利用す
ることにより、行列Tefを求めメモリ102に格納する
(ステップC1)。
【0064】次に、教示点指標p及び補間点qを0にリ
セットした上で(ステップC2)1カウントアップし
(ステップC3)、教示プログラムの1ブロックの読み
込みを行なう(ステップC4)。読み込まれた1ブロッ
クが協調動作終了に相当するものでないことを確認した
上で(ステップC5)、指定された補間方式に従って通
過点数u(p)を定め(ステップC6)、通過点指標q
を1カウントアップする(ステップC7)。
【0065】そして、教示点E(p-1,0) と教示点E(p,
0) の間の教示点間内挿補間計算に基づき、マスターア
ーム側ロボットが順次移動すべき通過点を共通座標系Σ
o 上で表したデータE(p-1,q)on Σo あるいはマスター
アーム側ロボットのベース座標系Σm 上で表したデータ
E(p-1,q)on Σm の少なくとも一方を算出する(ステッ
プC8)。第1回目の処理サイクルにおいて最初に定め
られるマスターアーム(マスターアーム側ロボット)の
次移動点はE(0,1)である。
【0066】更に、算出されたマスターアームの次通過
点データに基づいて、スレーブアームが次に移動すべき
通過点を共通座標系Σo 上で表したデータF(p-1,q)on
Σoあるいはスレーブアーム側ロボットのベース座標系
Σs 上で表したデータF(p-1,q)on Σs の少なくとも一
方を算出する(ステップC9)。第1回目の処理サイク
ルにおいて最初に算出されるスレーブアーム側ロボット
の次移動点はF(0,1)である。
【0067】各ロボットの次移動目標点データが得られ
たら、両ロボットの各軸のサーボ制御部に対応する目標
点位置パルスを送り込み、両ロボットの同期的な移動を
開始させる(ステップC10)。最初の次移動点はE
(0,1) 及びF(0,1) である。
【0068】このようにして1通過点分の処理が終了し
たら、次教示点への未到達を確認した上で(ステップC
11)、ステップC7へ戻り、通過点指標qを1カウン
トアップする。
【0069】以下、ステップC7〜ステップC11が繰
り返され、両アームM、Sが行列Tefに対応した一定の
位置・姿勢関係を保ちながら次々と各通過点E(0,q) 、
F(0,q)(q=1,2,3...) 、を通過し、区間内の最後の通過
点E(p-1,u(p)+1)、すなわち教示点E(p,0) の直前位置
に到達し、ロボット制御装置1側のステップC11で、
初めてイエスの判断がなされる。そして、ステップC3
へ戻り教示点指標pを1カウントアップした上で、教示
プログラムの次の1ブロックを読み込む(ステップC
4)。
【0070】以下、上記述べたと同様の処理がn個の教
示点について順次繰り返し実行される。この実施例2に
おいても、マスターアームの所属するロボットとスレー
ブアームの所属するロボットは、図3に示された全経路
に亙って補間点(通過点)単位で相互に同期をとりなが
ら移動を続けるので、マスターアーム側ロボットが最終
的に双腕協調動作の目標点乃至終了点に当たる教示点E
(n,0) に到達して時には、スレーブアーム側ロボットも
これに同期して双腕協調動作の終了点に到達することに
なる。
【0071】この時点で、教示点指標pはp=nとなっ
ており、従って教示点指標pに1を加算してから教示プ
ログラムの次の1ブロックを読み出せば、双腕協調動作
終了指令が読み込まれ(ステップC5でイエスの判
断)、両ロボットの協調動作を終了させる。
【0072】<実施例3>次に、前述[3]のケースに
対応した実施例について説明するが、これはケース
[2]に対応した上記実施例2と極めて類似したものと
なる。但し、ロボットが1台のみなので、ベース座標系
も共通のものΣb (=Σm =Σs )を考えれば良く、ま
た、共通座標系Σ0 は、1台のロボットに設定された1
つのワーク座標系と考えれば良い。2本のアームを有す
るロボットを制御するロボット制御装置の構成について
も、基本的に実施例2の場合(図2参照)と同じものと
することが出来る。但し、サーボ制御部の数nは2本の
アームを含むロボット全体を駆動する軸の合計数であ
り、例えば各アームについて6軸が用意されていれば、
n=12となる。以下、実施例1あるいは2の場合と同
様の準備が完了しているものとして、図3に示した双腕
協調動作を本願発明のロボットの同期制御方法に従って
実行する際の、ロボット制御装置のCPUの処理の概要
を図6のフローチャートを参照して説明する。なお、教
示点データはマスターアームの位置・姿勢データを指定
する形で与えられているものとする。
【0073】まず、2本のアームを有するロボットを制
御するロボット制御装置(以下、実施例3中では単にロ
ボット制御装置と言う。)に、外部部入出力インターフ
ェイス106または教示操作盤104を介して双腕協調
の開始指令が与えられると(協調動作開始)、ロボット
制御装置のCPUは、マスターアーム及びスレーブアー
ムの出発点データ(出発点におけるマスターアーム及び
スレーブアームの現在位置・姿勢データ)E(0,0) onΣ
o とF(0,0) onΣo に基づき、上記(3)式の関係等を
利用し、行列Tefを求めメモリ102に格納する(ステ
ップD1)。
【0074】次に、教示点指標p及び補間点qを0にリ
セットした上で(ステップD2)1カウントアップし
(ステップD3)、教示プログラムの1ブロックの読み
込みを行なう(ステップD4)。読み込まれた1ブロッ
クが協調動作終了に相当するものでないことを確認した
上で(ステップD5)、指定された補間方式に従って通
過点数u(p)を定め(ステップD6)、通過点指標q
を1カウントアップする(ステップD7)。
【0075】そして、教示点E(p-1,0) と教示点E(p,
0) の間の教示点間内挿補間計算に基づき、マスターア
ームが順次移動すべき通過点をワーク座標系Σo 上で表
したデータE(p-1,q)on Σo あるいはベース座標系Σm
上で表したデータE(p-1,q)onΣb の少なくとも一方を
算出する(ステップD8)。第1回目の処理サイクルに
おいて最初に定められるマスターアームの次移動点はE
(0,1)である。
【0076】更に、算出されたマスターアームの次通過
点データに基づいて、スレーブアームが次に移動すべき
通過点を共通座標系Σo 上で表したデータF(p-1,q)on
Σoあるいはベース座標系Σb 上で表したデータF(p-1,
q)on Σb の少なくとも一方を算出する(ステップD
9)。第1回目の処理サイクルにおいて最初に算出され
るスレーブアーム側ロボットの次移動点はF(0,1)であ
る。
【0077】各アームの次移動目標点データが得られた
ら、両アームの各軸のサーボ制御部に、対応する目標点
位置パルスを送り込み、両ロボットの同期的な移動を開
始させる。最初の次移動点はE(0,1) 及びF(0,1) であ
る。
【0078】このようにして1通過点分の処理が終了し
たら、次教示点への未到達を確認した上で(ステップD
11)、ステップD7へ戻り、通過点指標qを1カウン
トアップする。
【0079】以下、ステップD7〜ステップD11が繰
り返され、両アームM、Sが行列Tefに対応した一定の
位置・姿勢関係を保ちながら次々と各通過点E(0,q) 、
F(0,q)(q=1,2,3...) 、を通過し、区間内の最後の通過
点E(p-1,u(p)+1)、すなわち教示点E(p,0) の直前位置
に到達し、ロボット制御装置1側のステップD11で、
初めてイエスの判断がなされる。そして、ステップD3
へ戻り教示点指標pを1カウントアップした上で、教示
プログラムの次の1ブロックを読み込む(ステップD
4)。
【0080】以下、上記述べたと同様の処理がn個の教
示点について順次繰り返し実行される。この実施例3に
おいても、マスターアームとスレーブアームは、図3に
示された全経路に亙って補間点(通過点)単位で相互に
同期をとりながら移動を続けるので、マスターアームが
最終的に双腕協調動作の目標点乃至終了点に当たる教示
点E(n,0) に到達して時には、スレーブアームもこれに
同期して双腕協調動作の終了点に到達することになる。
【0081】この時点で、教示点指標pはp=nとなっ
ており、従って教示点指標pに1を加算してから教示プ
ログラムの次の1ブロックを読み出せば、双腕協調動作
終了指令が読み込まれ(ステップD5でイエスの判
断)、ロボットの協調動作を終了させる(協調終了)。
【0082】<実施例4>次に、ケース[4]に対応し
た実施例について説明する。これは、図1に示された双
腕ロボットシステムを用い、実施例1に類似した両ロボ
ット制御装置1、2のCPU処理によって、本願発明に
従ったロボット制御を実行した例である。両ロボットに
対する各座標系の設定等については、実施例1と同様な
ので重複説明を省略する。但し、スレーブアーム側ロボ
ットの移動点算出に必要なデータ及び関連プログラム
は、スレーブアーム側ロボットのロボット制御装置2の
メモリ102内に格納される。
【0083】各ロボット制御装置1、2の構成は、基本
的に実施例1の場合(図2参照)と同じとすることが出
来る。以下、実施例1の場合と同様の準備が完了してい
るものとしてケース[4]に対応した実施例を図7のフ
ローチャートを参照して説明する。双腕協調動作を行な
う場面としては、上記各実施例と同じく、図3の事例を
想定する。
【0084】まず、制御装置1に、外部部入出力インタ
ーフェイス106または教示操作盤104を介して双腕
協調動作の開始指令が与えられると、これが直ちにスレ
ーブアーム側のロボット制御装置2にも送信され、マス
ターアーム側ロボットとスレーブアーム側のロボットの
協調動作が開始される(マスター側、スレーブ側協調開
始)。
【0085】ロボット制御装置2では直ちにロボット制
御装置1からの送信を受信する態勢に入る(ステップU
1)。ロボット制御装置1はマスターアーム側ロボット
の出発点データ(出発点におけるロボットR1の現在位
置・姿勢データ)、FF(0,0)on Σo をロボット制御装
置2に送信する(ステップR1)。ロボット制御装置2
ではこれを受信してTefを算出し、メモリに格納した上
で(ステップU2)、直ちにロボット制御装置1からの
送信を待つ態勢に入る(ステップU3)。
【0086】ロボット制御装置1では、教示点指標p及
び補間点qを0にリセットした上で(ステップR2)、
1カウントアップし(ステップR3)、教示プログラム
の1ブロックの読み込みを行なう(ステップR4)。読
み込まれた1ブロックが協調動作終了に相当するもので
ないことを確認した上で(ステップR5)、指定された
補間方式に従って通過点数u(p)を定め(ステップR
6)、通過点指標qを1カウントアップする(ステップ
R7)。
【0087】そして、教示点E(p-1,0) と教示点E(p,
0) の間の教示点間内挿補間計算に基づき、マスターア
ームが順次移動すべき通過点を共通座標系Σo 上で表し
たデータE(p-1,q)on Σo 及びベース座標系Σm 上で表
したデータE(p-1,q)on Σm を算出し、前者をスレーブ
アーム側のロボット制御装置2に送信する(ステップR
8)。第1回目の処理サイクルにおいて最初に算出/送
信対象となるマスターアーム(マスターアーム側ロボッ
ト)の次移動点はE(0,1)である。
【0088】これを受信したスレーブアーム側のロボッ
ト制御装置2では、協調終了指令でないことを確認した
上で(ステップU4)、送信されたマスターアームの次
通過点データとTefのデータに基づいて、スレーブアー
ムが次に移動すべき通過点をベース座標系Σs 上で表し
たデータを算出する(ステップU5)。第1回目の処理
サイクルにおいて最初に算出対象となるスレーブアーム
側ロボットの次移動点はF(0,1)である。
【0089】そして、マスターアーム側のロボット制御
装置1にスレーブアーム側ロボットが移動準備態勢に入
っていることを送信する(ステップU6)と共に、最初
の次移動点F(0,1) へ向けてロボット移動を開始させる
(ステップU7)。
【0090】一方、ステップR8終了後にロボット制御
装置2からの送信待ち態勢に入っている(ステップR
9)ロボット制御装置1も、このロボット制御装置2か
らの送信を受けて直ちに最初の次移動点E(0,1) へ向け
て移動を開始する(ステップR10)。なお、両者の移
動開始(各サーボ制御部への目標点位置パルス入力)を
正確に同期させる為に、両ロボット制御装置のCPUが
内蔵しているクロックを利用することが出来ることは実
施例1の場合と同様である。
【0091】このようにして1通過点分の処理が終了し
たら、ロボット制御装置1では次教示点への未到達を確
認した上で(ステップR1)、ステップR7へ戻り、通
過点指標qを1カウントアップする。また、ロボット制
御装置2では、ステップU3に戻り、再びロボット制御
装置1からの送信待ち態勢に入る。
【0092】以下、ロボット制御装置1ではステップR
7〜ステップR11、ロボット制御装置2ではステップ
U3〜ステップU7が繰り返され、両アームM、Sが行
列Tefに対応した一定の位置・姿勢関係を保ちながら次
々と各通過点E(0,q) 、F(0,q)(q=1,2,3...) 、を通過
し、区間内の最後の通過点E(p-1,u(p)+1)、すなわち教
示点E(p,0) の直前位置に到達し、ロボット制御装置1
側のステップR11で、初めてイエスの判断がなされ
る。そして、ステップR3へ戻り教示点指標pを1カウ
ントアップした上で、教示プログラムの次の1ブロック
が読み込まれる。
【0093】以下、ロボット制御装置1及びロボット制
御装置2において上記説明したと同様の処理がn個の教
示点について順次繰り返し実行される。
【0094】マスターアーム側、スレーブアーム側双方
のロボットは、図3に示された全経路に亙って補間点
(通過点)単位で相互に同期をとりながら移動を続ける
ので、マスターアーム側ロボットが最終的に双腕協調動
作の目標点乃至終了点に当たる教示点E(n,0) に到達し
て時には、スレーブアーム側ロボットもこれに同期して
双腕協調動作の終了点に到達することになる。
【0095】この時の教示点指標pはp=nとなってお
り、従って教示点指標pに1を加算してから教示プログ
ラムの次の1ブロックを読み出せば、双腕協調動作終了
指令が読み込まれ(ステップM6でイエスの判断)、こ
の指令はロボット制御装置2に送信される(ステップR
12)。ロボット制御装置2はこれをステップU4で確
認し、スレーブアーム側のロボット協調動作を終了させ
る。また、ロボット制御装置1もステップR12後、マ
スターアーム側ロボットの協調動作を終了させる。
【0096】
【発明の効果】以上、詳述したように本願発明の双腕協
調の為のロボットの同期制御方法によれば、2本のアー
ムの各々に対応するロボット制御装置に個別の教示を行
って双腕協調を図るものでなく、2本のアームの一方を
スレーブアームとし、スレーブアームは、他方のアーム
すなわちマスターアームについて順次定められる補間点
単位の移動先に応じて、順次対応する移動先を決定し、
両アームをこれら順次決定される点に同期的に移動させ
るプロセスを繰り返し続行することで双腕協調動作を実
行するものなので、ロボットへの教示はマスターアーム
に関してのみ実行すれば足りる。
【0097】そして、このマスターアームへの教示を従
来と同程度の数の教示点を与える形で行うだけで、マス
ターアーム側で採用されている補間方式に応じて教示点
間に多数の通過点データが作成され、そのデータと両ア
ームの相対的な位置・姿勢関係を表現したデータとに基
づいてスレーブアームの移動先がマスターアームの通過
点毎に決定され、その都度両アームの同期的な移動が繰
り返し実行されるので、煩雑な教示作業を要することな
く、両アームの動きを高度のレベルで同期させた双腕協
調動作が実現される。
【0098】また、両アームのハンドの相対的な位置・
姿勢関係を一定に保ちながら移動させることが本願発明
の方法によって極めて容易となるなるので、双腕で把持
した物品の姿勢を変化させながら複雑な経路に沿って運
搬する等のロボット作業を実現することが困難でなくな
った。
【0099】更に、本願発明のロボットの同期制御方法
に従えば、協調動作対象アーム、ロボット及びロボット
制御装置の間に種々の関係を想定した場合に(上記ケー
ス[1]〜[4])ついて、双腕による物品の把持・運
搬の基本的な諸利点(長寸、重量物品の把持・運搬が可
能で、堅固な把持を行なう高価なハンド機構を必要とし
ない点)を全く損なうことなく、正確な双腕協調動作を
実現することが出来る。
【図面の簡単な説明】
【図1】本願発明の同期制御方法を実施する為の双腕ロ
ボットシステムの一例を模式的に表した図で、各アーム
が所属するロボットに設定された座標系(ベース座標
系)と共通座標系との関係が併記されている。
【図2】各実施例において使用される双腕ロボットシス
テムに含まれるロボット制御装置(ロボットコントロー
ラ)の構成を示した要部ブロック図である。
【図3】物品Gの両端付近を点E(0,0)、点F(0,0)で把
持した状態から出発して、点E(n,0)、点F(n,0)まで運
搬する経路を模式的に示した図である。
【図4】図1に示した双腕ロボットシステムを用いて、
図3に示した双腕協調動作を本願発明のロボットの同期
制御方法に従って行わせる際に各ロボット制御装置のC
PUが実行する処理の概要を説明するフローチャートで
ある。
【図5】図3に示した経路の双腕協調動作を実行する別
の実施例におけるロボット制御装置のCPUの処理の概
要を記したフローチャートである。
【図6】図3に示した経路の双腕協調動作を実行するも
う1つの実施例におけるロボット制御装置のCPUの処
理の概要を記したフローチャートである。
【図7】図3に示した経路の双腕協調動作を実行する更
に別の実施例における各ロボット制御装置のCPUの処
理の概要を記したフローチャートである。
【符号の説明】
1,2 ロボット制御装置(ロボットコントローラ) 3,4 機構部 11,12,13,21,22,23 関節 101 中央演算処理装置(メインCPU) 102 メモリ 103 教示操作盤用インターフェイス 104 教示操作盤 105 通信インターフェイス 106 外部入出力インターフェイス 107 バス S スレーブアーム Hm ロボットハンド(マスターアーム) Hs ロボットハンド(スレーブアーム) Σhm ハンド座標系(マスターアーム) Σhs ハンド座標系(スレーブアーム) Tm Σ0 とΣm の関係を表す同次変換行列 Ts Σ0 とΣs の関係を表す同次変換行列 Tef 両ロボットハンドHm、Hsの位置・姿勢の相対関
係を表す行列 E(0,0) マスターアームの双腕協調動作出発点 F(0,0) スレーブアームの双腕協調動作出発点 E(n,0) マスターアームの双腕協調動作終了点(目標
点) F(n,0) スレーブアームの双腕協調動作終了点(目標
点)
フロントページの続き (51)Int.Cl.6 識別記号 庁内整理番号 FI 技術表示箇所 B25J 13/00 Z G05B 19/42 G05D 3/12 M 9179−3H

Claims (5)

    【特許請求の範囲】
  1. 【請求項1】 各々制御装置を備えた2台のロボットの
    一方のロボットのアームをマスターアームとし、他方の
    ロボットのアームをスレーブアームとして双腕協調動作
    を行わせるロボットの同期制御方法において;前記マス
    ターアームの所属するロボット制御装置に教示データを
    教示する段階と;該制御装置内で、該教示された教示デ
    ータに基づく補間計算により前記マスターアームが順次
    移動すべき通過点を決定する段階と;予め定められた前
    記マスターアームと前記スレーブアームとの相対的な位
    置・姿勢関係を表すデータを利用して前記スレーブアー
    ムが順次移動すべき点を同制御装置内で決定する段階
    と;前記スレーブアームが次に移動すべき点に決定され
    た点のデータを前記スレーブアームの所属するロボット
    の制御装置に送信する段階と;前記マスターアーム及び
    前記スレーブアームを各々前記次に移動すべき点に同期
    的に移動させる段階とを含み、 少なくとも、前記データ送信段階と前記マスターアーム
    及び前記スレーブアームの前記次の点への移動段階が繰
    り返し実行されることを特徴とする前記ロボットの同期
    制御方法。
  2. 【請求項2】 共通の制御装置を備えた2台のロボット
    の一方のロボットのアームをマスターアームとし、他方
    のロボットのアームをスレーブアームとして双腕協調動
    作を行わせるロボットの同期制御方法において;前記2
    台のロボットに共通の制御装置に教示点データを教示す
    る段階と;該教示された教示点データに基づく補間計算
    により前記マスターアームが順次移動すべき通過点を決
    定する段階と;予め定められた前記マスターアームと前
    記スレーブアームとの相対的な位置・姿勢関係を表すデ
    ータを利用して前記スレーブアームが順次移動すべき点
    を決定する段階と;前記マスターアーム及び前記スレー
    ブアームを各々前記次に移動すべき点に決定された点に
    同期的に移動させる段階を含み、 少なくとも前記マスターアーム及び前記スレーブアーム
    の前記次の点への移動段階が繰り返し実行されることを
    特徴とする前記ロボットの同期制御方法。
  3. 【請求項3】 2本のアームと制御装置を備えたロボッ
    トの一方のロボットのアームをマスターアームとし、他
    方のアームをスレーブアームとして双腕協調動作を行わ
    せるロボットの同期制御方法において;前記ロボットの
    制御装置に教示点データを教示する段階と;該教示され
    た教示点データに基づく補間計算により前記マスターア
    ームが順次移動すべき通過点を決定する段階と;予め定
    められた前記マスターアームと前記スレーブアームとの
    相対的な位置・姿勢関係を表すデータを利用して前記ス
    レーブアームが順次移動すべき点を決定する段階と;前
    記マスターアーム及び前記スレーブアームを各々前記次
    に移動すべき点に同期的に移動させる段階を含み、 少なくとも前記マスターアーム及び前記スレーブアーム
    の前記次の点への移動段階が繰り返し実行されることを
    特徴とする前記ロボットの同期制御方法。
  4. 【請求項4】 各々制御装置を備えた2台のロボットの
    一方のロボットのアームをマスターアームとし、他方の
    ロボットのアームをスレーブアームとして双腕協調動作
    を行わせるロボットの同期制御方法において;前記マス
    ターアームの所属するロボットの制御装置に教示点デー
    タを教示する段階と;該教示された教示点データに基づ
    く補間計算により前記マスターアームが順次移動すべき
    通過点を決定する段階と;該決定されたマスターアーム
    通過点データを前記スレーブアームの所属する制御装置
    に送信する段階と;該送信されたデータと前記マスター
    アームと前記スレーブアームとの相対的な位置・姿勢関
    係を表すデータに基づいてスレーブアームが次に移動す
    べき点を前記スレーブアームが所属するロボットの制御
    装置内で決定する段階と;前記マスターアーム及び前記
    スレーブアームを各々前記次に移動すべき点に同期的に
    移動させる段階を含み、 少なくとも、前記データ送信段階と前記マスターアーム
    及び前記スレーブアームの前記次の点への移動段階が繰
    り返し実行されると共に、 前記前記マスターアームと前記スレーブアームとの相対
    的な位置・姿勢関係を表すデータが、前記各ロボットの
    初期位置データに基づいて前記スレーブアームの所属す
    るロボットの制御装置内で算出されることを特徴とする
    前記ロボットの同期制御方法。
  5. 【請求項5】 前記双腕協調動作が物品の把持・運搬の
    為に行われ、該物品の運搬中は前記予め定められた前記
    マスターアームと前記スレーブアームとの相対的な位置
    ・姿勢関係が前記把持・運搬される物品の運搬中の把持
    態勢に対応して一定に保たれることを特徴とする請求項
    1〜請求項4のいずれか1項に記載されたロボットの同
    期制御方法。
JP19164993A 1993-07-06 1993-07-06 ロボットの同期制御方法 Pending JPH0720915A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP19164993A JPH0720915A (ja) 1993-07-06 1993-07-06 ロボットの同期制御方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP19164993A JPH0720915A (ja) 1993-07-06 1993-07-06 ロボットの同期制御方法

Publications (1)

Publication Number Publication Date
JPH0720915A true JPH0720915A (ja) 1995-01-24

Family

ID=16278174

Family Applications (1)

Application Number Title Priority Date Filing Date
JP19164993A Pending JPH0720915A (ja) 1993-07-06 1993-07-06 ロボットの同期制御方法

Country Status (1)

Country Link
JP (1) JPH0720915A (ja)

Cited By (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE10351670A1 (de) * 2003-11-05 2005-06-30 Kuka Roboter Gmbh Verfahren und Vorrichtung zum Steuern von Robotern
WO2005091090A3 (en) * 2004-03-16 2006-02-23 Abb Ab Industrial robot system, method and computer program
US7558646B2 (en) 2001-11-07 2009-07-07 Kawasaki Jukogyo Kabushiki Kaisha Cooperative control system of robots
JP2011000669A (ja) * 2009-06-18 2011-01-06 Yaskawa Electric Corp ロボットシステム及び物品並置方法
CN104440910A (zh) * 2014-11-07 2015-03-25 绵阳市维博电子有限责任公司 一种实现机器人双手臂同步控制的方法及***
JP2016093863A (ja) * 2014-11-14 2016-05-26 株式会社デンソーウェーブ ロボット制御装置
US9517556B2 (en) 2012-06-29 2016-12-13 Mitsubishi Electric Corporation Robot control apparatus and robot control method
JP2017193011A (ja) * 2016-04-20 2017-10-26 三菱電機株式会社 ロボットアームシステム及びロボットアームの教示方法
JP2018094649A (ja) * 2016-12-09 2018-06-21 ファナック株式会社 複数のロボットを含むロボットシステム、ロボット制御装置、及びロボット制御方法
CN108349086A (zh) * 2015-11-24 2018-07-31 川崎重工业株式会社 机器人的直接教示方法
CN109571471A (zh) * 2018-12-03 2019-04-05 宇环数控机床股份有限公司 一种用于双机器人相对空间位置标定的方法
CN110267770A (zh) * 2017-02-10 2019-09-20 川崎重工业株式会社 机器人***及其控制方法
CN113084797A (zh) * 2021-03-12 2021-07-09 华南理工大学 一种基于任务分解的双臂冗余机械臂动态协同控制方法

Cited By (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7558646B2 (en) 2001-11-07 2009-07-07 Kawasaki Jukogyo Kabushiki Kaisha Cooperative control system of robots
US7421314B2 (en) 2003-11-05 2008-09-02 Kuka Roboter Gmbh Method and device for controlling robot
DE10351670A1 (de) * 2003-11-05 2005-06-30 Kuka Roboter Gmbh Verfahren und Vorrichtung zum Steuern von Robotern
WO2005091090A3 (en) * 2004-03-16 2006-02-23 Abb Ab Industrial robot system, method and computer program
JP2011000669A (ja) * 2009-06-18 2011-01-06 Yaskawa Electric Corp ロボットシステム及び物品並置方法
US9517556B2 (en) 2012-06-29 2016-12-13 Mitsubishi Electric Corporation Robot control apparatus and robot control method
DE112013003209B4 (de) 2012-06-29 2019-02-07 Mitsubishi Electric Corporation Robotersteuerungsvorrichtung und Robotersteuerungsverfahren
CN104440910A (zh) * 2014-11-07 2015-03-25 绵阳市维博电子有限责任公司 一种实现机器人双手臂同步控制的方法及***
JP2016093863A (ja) * 2014-11-14 2016-05-26 株式会社デンソーウェーブ ロボット制御装置
CN108349086A (zh) * 2015-11-24 2018-07-31 川崎重工业株式会社 机器人的直接教示方法
JP2017193011A (ja) * 2016-04-20 2017-10-26 三菱電機株式会社 ロボットアームシステム及びロボットアームの教示方法
CN108214454A (zh) * 2016-12-09 2018-06-29 发那科株式会社 机器人***、机器人控制装置及机器人控制方法
JP2018094649A (ja) * 2016-12-09 2018-06-21 ファナック株式会社 複数のロボットを含むロボットシステム、ロボット制御装置、及びロボット制御方法
US10456917B2 (en) 2016-12-09 2019-10-29 Fanuc Corporaration Robot system including a plurality of robots, robot controller and robot control method
CN108214454B (zh) * 2016-12-09 2020-03-06 发那科株式会社 机器人***、机器人控制装置及机器人控制方法
DE102017128652B4 (de) 2016-12-09 2022-02-03 Fanuc Corporation Robotersystem mit einer mehrzahl von robotern, robotersteuerung und robotersteuerverfahren
CN110267770A (zh) * 2017-02-10 2019-09-20 川崎重工业株式会社 机器人***及其控制方法
CN110267770B (zh) * 2017-02-10 2022-04-12 川崎重工业株式会社 机器人***及其控制方法
CN109571471A (zh) * 2018-12-03 2019-04-05 宇环数控机床股份有限公司 一种用于双机器人相对空间位置标定的方法
CN109571471B (zh) * 2018-12-03 2021-12-21 宇环数控机床股份有限公司 一种用于双机器人相对空间位置标定的方法
CN113084797A (zh) * 2021-03-12 2021-07-09 华南理工大学 一种基于任务分解的双臂冗余机械臂动态协同控制方法

Similar Documents

Publication Publication Date Title
JPH0720915A (ja) ロボットの同期制御方法
US5254923A (en) Industrial robot synchronous control method and apparatus
JP3086082B2 (ja) ロボットの同期制御方法およびロボットの同期制御装置
JP2006187826A (ja) ロボットコントローラ
KR101745064B1 (ko) 산업용 로봇을 제어하는 제어 시스템, 제어 장치, 용접물 제조 방법 및 기록 매체에 기록된 프로그램
JP2006263850A (ja) ロボット制御装置およびロボット制御方法
JP2003145462A (ja) ロボットの協調制御システム
CN110253563B (zh) 控制装置、控制方法以及存储介质
JP2001150372A (ja) 複数ロボットの同期又は協調動作制御装置
JP7210201B2 (ja) 情報処理方法、プログラム、記録媒体、情報処理装置、ロボットシステム、物品の製造方法
JP3193878B2 (ja) 嵌合作業を行なうための協調ロボットシステム
JPH0976185A (ja) ロボットの移動制御方式
US4912383A (en) Method of controlling a robot
JPS6329811A (ja) 複数ア−ムの制御装置
JP2554968B2 (ja) 複数ロボットによる物品の移載方法
JP3668821B2 (ja) ロボットコントローラおよびロボット制御方法
JPH0962325A (ja) ロボット到達可否判断装置
JP2606172B2 (ja) ロボット
JPH07141010A (ja) 溶接用ロボットの制御方法
JPH02271402A (ja) 双腕ロボットの制御方法
JP2003025264A (ja) 双腕制御装置と双腕制御方法
JPH0782372B2 (ja) ロボットア−ムの制御方法
JPS632681A (ja) 複数ロボットの協調制御方法
JP7276359B2 (ja) 動作指令生成装置、機構制御システム、コンピュータプログラム、動作指令生成方法及び機構制御方法
EP4245477A1 (en) Robot system and controller