説明

ロボットシステム

【課題】対象物を固定しつつ旋回が必要となる作業を1台のロボットで行うことができるようにする。
【解決手段】ロボットシステム1は、ロボット100と、このロボット100の動作を制御するロボットコントローラ200とを備えている。ロボット100は、先端にツール150L,150Rを備えた2つのアーム103L,103Rと、これら2つのアーム103L,103Rを支持し、旋回させる胴体部120とを有している。ロボットコントローラ200は、2つのアーム103L,103Rのうち、少なくとも1つのアーム103の先端に備えられたツール150が旋回の前後を通じて同一の位置及び姿勢に保持されるように、ロボット100を制御する。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、ロボットと、このロボットの動作を制御する制御ユニットと、を備えたロボットシステムに関する。
【背景技術】
【0002】
近年、対象物をロボットアームで把持して別の場所に搬送する作業を行うロボットが普及している。ロボットアームの把持可能範囲の端部に対象物が存在する場合には、対象物との距離が離れているため、ロボットアームが極端に伸びた姿勢で対象物を把持することとなり、ロボットにおけるロボットアームを指示する位置でのモーメントが大きくなる。このため、ロボットアームの把持可能な質量が、本来の構造上許容可能な質量より小さくなってしまう問題があった。
【0003】
例えば、特許文献1には、旋回装置上にロボットアームが搭載された技術が開示されている。この従来技術におけるロボット(ロボットシステム)は、ツールを保持可能なロボットアーム(ロボット)と当該ロボットアームを旋回させる旋回装置とを備えている。
【先行技術文献】
【特許文献】
【0004】
【特許文献1】特開2009−034741号公報
【発明の概要】
【発明が解決しようとする課題】
【0005】
ところで、例えばロボットが対象物(以下「第1対象物」と称する)に対し別の対象物(以下「第2対象物」と称する)をはめ合わせるはめ合い作業を行う場合において、ロボットアームで、第1対象物を固定しつつ、固定された第1対象物に関する旋回が必要な作業、例えば第2対象物を旋回により取りに行く作業や、当該第2対象物を固定して第1対象物の位置まで旋回により搬送する作業等を行う場合がある。上記従来技術におけるロボットは、ロボットアームを1つしか備えておらず、当該1つのロボットアームで、第1対象物を固定しつつ、固定された第1対象物に関する旋回が必要な作業を行うことは困難であった。
【0006】
本発明はこのような課題に鑑みてなされたものであり、対象物を固定しつつ旋回が必要となる作業を1台のロボットで行うことができるロボットシステムを提供することを目的とする。
【課題を解決するための手段】
【0007】
上記課題を解決するため、本発明のロボットシステムは、ロボットと、前記ロボットの動作を制御する制御ユニットと、を備えたロボットシステムであって、前記ロボットは、先端にツールを備えた複数のロボットアームと、前記複数のロボットアームを支持し、旋回させる旋回装置と、を有し、前記制御ユニットは、前記複数のロボットアームのうちの少なくとも1つの前記ツールが旋回の前後を通じて同一の位置及び姿勢に保持されるように、前記ロボットを制御することを特徴としている。
【0008】
また、前記ロボットの教示点を入力するための入力装置をさらに備え、前記入力装置は、前記教示点の入力時に、前記複数のロボットアームのうち、前記ツールが同一の位置及び姿勢に保持される第1ロボットアームを選択するためのアーム選択手段を有することが好ましい。
【0009】
また、前記制御ユニットは、前記ロボットアームの動作開始時における先端位置と前記教示点との間の補間点を演算する補間演算部と、前記補間点に基づき前記ロボットアームを駆動する駆動部と、を有し、前記補間演算部は、前記アーム選択手段で選択された前記第1ロボットアームが、前記先端位置と前記教示点との間を直線状に移動する直線補間動作を行うように補間点を演算することが好ましい。
【0010】
また、前記入力装置は、前記教示点の入力時に、前記アーム選択手段で選択された前記第1ロボットアーム以外の第2ロボットアームの補間動作の種別を選択するための補間選択手段を有し、前記補間演算部は、前記第2ロボットアームが前記補間選択手段で選択された種別の補間動作を行うように前記補間点を演算することが好ましい。
【0011】
また、前記入力装置は、前記ロボットアームの先端を3次元上の任意の位置に誘導するように前記ロボットアームを操作するアーム操作手段と、前記旋回装置を任意の角度に旋回するように操作する旋回操作手段と、前記アーム操作手段及び前記旋回操作手段の操作により位置決めされた前記ロボットアームの先端位置を教示点に設定する教示点設定手段と、を有し、前記制御ユニットは、前記教示点の入力時における前記旋回操作手段の操作にかかわらず、前記第1ロボットアームの前記ツールが旋回の前後を通じて同一の位置及び姿勢に保持されるように、前記ロボットを制御することが好ましい。
【0012】
また、前記ロボットは、前記ロボットアームを2つ有しており、前記制御ユニットは、一方の前記ロボットアームで、前記ツールを旋回の前後を通じて同一の位置及び姿勢に保持することにより対象物を固定すると共に、他方の前記ロボットアームで、前記固定された対象物に関する旋回が必要な作業を行うように、前記ロボットを制御することが好ましい。
【発明の効果】
【0013】
本発明によれば、対象物を固定しつつ旋回が必要となる作業を1台のロボットで行うことができる。
【図面の簡単な説明】
【0014】
【図1】一実施の形態のロボットシステムの全体構成を概念的に表すシステム構成図である。
【図2】ロボットの構成を模式的に表すロボットの正面図である。
【図3】ロボットコントローラ及び入力装置の機能構成を表す機能ブロック図である。
【図4】教示点の入力時において、操作対象選択キーの操作により胴体部が操作対象に選択されているときに旋回キーが操作され、胴体部が旋回したときの、胴体部の旋回に伴うアームの旋回移動の一例を模式的に表す説明図である。
【図5】補間演算部による補間制御方法の一例を説明する説明図である。
【図6】ロボットコントローラの制御に基づいてロボットが行う、第1対象物に対し第2対象物をはめ合わせる、はめ合い作業の一例を模式的に表す説明図である。
【発明を実施するための形態】
【0015】
以下、一実施の形態について図面を参照して説明する。
【0016】
(A)ロボットシステム及びロボットの構成
まず、本実施形態のロボットシステムの全体構成、及び、本実施形態のロボットシステムに備えられたロボットの構成について説明する。図1は、本実施形態のロボットシステムの全体構成を概念的に表すシステム構成図である。図2は、本実施形態のロボットシステムに備えられたロボットの構成を模式的に表すロボットの正面図である。
【0017】
図1及び図2において、本実施形態のロボットシステム1は、対象物W1(以下適宜「第1対象物W1」と称する)に対し別の対象物W2(以下適宜「第2対象物W2」と称する)をはめ合わせる、はめ合い作業を行うロボット100と、ロボット100の動作を制御するロボットコントローラ200(制御ユニット)と、ロボット100の教示点や各種設定を入力するための入力装置300とを備えている。なお、ロボット100とロボットコントローラ200とは、ケーブルCaを介して相互通信可能に接続されている(又は無線接続されていてもよい)。ロボットコントローラ200と入力装置300とは、ケーブルCbを介して相互通信可能に接続されている(又は無線接続されていてもよい)。
【0018】
ロボット100は、基台101と、胴体部102(旋回装置)と、2つのアーム103L,103R(ロボットアーム)とを有している。なお、対象物Wの数や形状等の条件に応じて、ロボットアームの数を3つ以上としてもよい。
【0019】
基台101は、設置面E(例えば床部等)に対し図示しないアンカーボルト等により固定されている。
【0020】
胴体部102は、上記設置面Eに対し略垂直な第1回転軸周りに回転駆動する第1アクチュエータ(図示省略)が設けられた第1関節部J1を有しており、基台101に対し第1関節部J1を介して第1回転軸周りに回転可能に設置されている。また、胴体部102は、アーム103L,103Rをそれぞれ一方側(図1及び図2中右側)及び他方側(図1及び図2中左側)において支持しており、第1アクチュエータの駆動により第1回転軸周りに回転することによって、アーム103L,103Rの全体を旋回させる。
【0021】
アーム103Lは、肩部104L、上腕A部105L、上腕B部106L、下腕部107L、手首A部108L、手首B部109L、及びフランジ110Lと、これら各部をそれぞれ回転駆動する第2〜第8アクチュエータ(図示省略)がそれぞれ設けられた第2〜第8関節部J2〜J8とを有している。
【0022】
肩部104Lは、胴体部102に対し第2関節部J2を介して回転可能に連結されており、第2関節部J2に設けられた第2アクチュエータの駆動により上記設置面Eに対して略平行な第2回転軸周りに回転する。上腕A部105Lは、肩部104Lに対し第3関節部J3を介して旋回可能に連結されており、第3関節部J3に設けられた第3アクチュエータの駆動により上記第2回転軸に対して略垂直な第3回転軸周りに旋回する。上腕B部106Lは、上腕A部105Lの先端に対し第4関節部J4を介して回転可能に連結されており、第4関節部J4に設けられた第4アクチュエータの駆動により上記第3回転軸に対して略垂直な第4回転軸周りに回転する。下腕部107Lは、上腕B部106Lに対し第5関節部J5を介して旋回可能に連結されており、第5関節部J5に設けられた第5アクチュエータの駆動により上記第4回転軸に対して略垂直な第5回転軸周りに旋回する。手首A部108Lは、下腕部107Lの先端に対し第6関節部J6を介して回転可能に連結されており、第6関節部J6に設けられた第6アクチュエータの駆動により上記第5回転軸に対して略垂直な第6回転軸周りに回転する。手首B部109Lは、手首A部108Lに対し第7関節部J7を介して旋回可能に連結されており、第7関節部J7に設けられた第7アクチュエータの駆動により上記第6回転軸に対して略垂直な第7回転軸周りに旋回する。フランジ110Lは、手首B部109Lの先端に対し第8関節部J8を介して回転可能に連結されており、第8関節部J8に設けられた第8アクチュエータの駆動により上記第7回転軸に対して略垂直な第8回転軸周りに回転する。
【0023】
また、フランジ110Lの先端には、用途に応じた(この例では第1対象物W1を固定可能な)ツール150L(例えばハンド等)が取り付けられている。このツール150Lは、フランジ110Lの回転により従動的に回転する。
【0024】
アーム103Rは、上記アーム103Lと同様の構造を備えている。すなわち、アーム103Rは、肩部104R、上腕A部105R、上腕B部106R、下腕部107R、手首A部108R、手首B部109R、及びフランジ110Rと、これら各部をそれぞれ回転駆動する第9〜第15アクチュエータ(図示省略)がそれぞれ設けられた第9〜第15関節部J9〜J15とを有している。
【0025】
肩部104Rは、胴体部102に対し第9関節部J9を介して回転可能に連結されており、第9関節部J9に設けられた第9アクチュエータの駆動により上記設置面Eに対して略平行な第9回転軸周りに回転する。上腕A部105Rは、肩部104Rに対し第10関節部J10を介して旋回可能に連結されており、第10関節部J10に設けられた第10アクチュエータの駆動により上記第9回転軸に対して略垂直な第10回転軸周りに旋回する。上腕B部106Rは、上腕A部105Rの先端に対し第11関節部J11を介して回転可能に連結されており、第11関節部J11に設けられた第11アクチュエータの駆動により上記第10回転軸に対して略垂直な第11回転軸周りに回転する。下腕部107Rは、上腕B部106Rに対し第12関節部J12を介して旋回可能に連結されており、第12関節部J12に設けられた第12アクチュエータの駆動により上記第11回転軸に対して略垂直な第12回転軸周りに旋回する。手首A部108Rは、下腕部107Rの先端に対し第13関節部J13を介して回転可能に連結されており、第13関節部J13に設けられた第13アクチュエータの駆動により上記第12回転軸に対して略垂直な第13回転軸周りに回転する。手首B部109Rは、手首A部108Rに対し第14関節部J14を介して旋回可能に連結されており、第14関節部J14に設けられた第14アクチュエータの駆動により上記第13回転軸Ax13に対して略垂直な第14回転軸Ax14周りに旋回する。フランジ110Rは、手首B部109Rの先端に対し第15関節部J15を介して回転可能に連結されており、第15関節部J15に設けられた第15アクチュエータの駆動により上記第14回転軸に対して略垂直な第15回転軸周りに回転する。
【0026】
また、フランジ110Rの先端には、用途に応じた(この例では第2対象物W2を搬送可能な)ツール150R(例えばハンド等)が取り付けられている。このツール150Rは、フランジ110Rの回転により従動的に回転する。
【0027】
なお、この例では、アーム103L,103Rは、7つの関節部すなわち7自由度を有し、並進3自由度及び回転3自由度に対して1自由度の冗長自由度を有しているが、アーム103L,103Rの自由度は「7」に限られない。
【0028】
上記のように構成されたロボット100は、第1〜第15アクチュエータが設けられた第1〜第15関節部J1〜J15を含む各駆動部位が駆動することにより、ツール150L,150Rの先端を任意の位置に移動したり、任意の向きに向ける、言い換えれば、任意の姿勢にすることができるようになっている。なお、本明細書では、ツール150L,150Rの先端をアーム103L,103Rの先端と定義し、ツール150L,150Rの先端位置をアーム103L,103Rの先端位置と定義する。また、ロボット100は、一方のアーム103(後述の第1アーム。例えばアーム103L)で、ツール150を胴体部102の旋回の前後を通じて同一の位置及び姿勢に保持することにより第1対象物W1を固定しつつ、他方のアーム103(後述の第2アーム。例えばアーム103R)で、上記固定された第1対象物W1に関する胴体部102の旋回が必要な作業、例えば、第2対象物W2を胴体部102の旋回により取りに行く作業や、当該第2対象物W2をツール150で把持して上記固定された第1対象物W1の位置まで胴体部102の旋回により搬送する作業等を行うように、上記各駆動部位の動作がロボットコントローラ200によって制御されている。
【0029】
(B)ロボットコントローラ及び入力装置の機能構成
次に、ロボットコントローラ200及び入力装置300の機能構成について説明する。図3は、ロボットコントローラ200及び入力装置300の機能構成を表す機能ブロック図である。
【0030】
図3において、入力装置300は、例えばティーチングペンダント等で構成されており、各種データを上記ケーブルCbを介してロボットコントローラ200へ出力する出力部301と、操作対象選択キー302と、固定指定選択キー303(アーム選択手段)と、補間種別選択キー304(補間選択手段)と、方向キー305(アーム操作手段)と、旋回キー306(旋回操作手段)と、確定キー307(教示点設定手段)と、再生キー308とを有している。
【0031】
操作対象選択キー302は、胴体部102及びアーム103L,103Rのうち、いずれか1つを方向キー305や旋回キー306等による操作対象として選択するためのキーである。
【0032】
固定指定選択キー303は、教示点の入力時に、アーム103L、103Rのうち、ツール150が胴体部102の旋回の前後を通じて同一の位置及び姿勢に保持される第1アーム(第1ロボットアーム)を選択するためのキーである。すなわち、第1アームは、動作開始位置と同一の位置が教示点に自動設定されるようになっている。なお、本明細書では、アーム103L,103Rの動作開始位置をツール150L,150Rの動作開始時(詳細には、再生キー308の操作時)における先端位置と定義する。ここで、アーム103L,103Rが行い得る動作開始位置と教示点との間の補間動作には、動作開始位置と教示点との間の経路を問わないPTP(Point To Point)補間動作、動作開始位置と教示点との間を直線状に移動する直線補間動作、動作開始位置と教示点との間を円弧状に移動する円弧補間動作等があるが、第1アームについては、補間動作の種別が直線補間動作に自動設定されるようになっている。
【0033】
補間種別選択キー304は、教示点の入力時に、アーム103L、103Rのうち、固定指定選択キー303で選択された第1アーム以外の第2アーム(第2ロボットアーム)の補間動作の種別を選択するためのキーである。すなわち、第2アームについては、補間動作の種別が上記PTP補間動作、直線補間動作、円弧補間動作等から選択可能となっている。
【0034】
方向キー305は、ツール150の先端を3次元上の任意の位置に誘導するようにアーム103を操作するキーである。
【0035】
旋回キー306は、胴体部102を任意の角度に旋回するように操作するためのキーである。
【0036】
確定キー307は、方向キー305及び旋回キー306の操作により位置決めされたツール150の先端位置を教示点に設定するキーである。設定された教示点に関するデータは、補間動作の種別に対応する移動命令等と共に、出力部301より上記ケーブルCbを介してロボットコントローラ200へ出力される。
【0037】
再生キー308は、ロボット100に、ロボットコントローラ200の教示データ格納部201(後述)に格納された教示データに基づいた動作を再生させるためのキーである。
【0038】
一方、ロボットコントローラ200は、例えば図示しない演算器、記憶装置、入力装置等を備えたコンピュータで構成されており、教示データ格納部201と、補間演算部202と、駆動部203と、入力装置300より上記ケーブルCbを介して各種データを入力する入力部204と、パラメータ格納部205とを有している。
【0039】
教示データ格納部201には、入力装置300より上記ケーブルCb及び入力部204を介して入力された上記教示点に関するデータ及び補間動作の種別に対応する移動命令等に基づいて生成された教示データが格納されている。以下に、教示データ格納部201に格納された教示データの一例を示す。
START
MOVJ C000 RB=1 TOOL=4
+MOVJ C001 RB=2 TOOL=5
+MOVJ C002 RB=3
MOVJ C003 RB=1 TOOL=4
+MOVL C004 RB=2 TOOL=5
+MOVJ C005 RB=3
END ・・・(1)
【0040】
上記(1)の教示データにおいて、「START」は、教示データの開始を示す命令であり、「END」は、教示データの終了を示す命令である。
【0041】
「MOVJ」は、上記PTP補間動作での移動命令(PTP制御命令)であり、「MOVL」は、上記直線補間動作での移動命令(直線補間制御命令)である。
【0042】
「C000」「C001」「C002」「C003」「C004」「C005」は、移動命令における教示点での、胴体部102の第1関節部J1、又はアーム103Lの第2〜第8関節部J2〜J8、若しくはアーム103Rの第9〜第15関節部J9〜J15の角度情報を示すインデックスである。
【0043】
「RB=1」「RB=2」「RB=3」は、移動命令の対象(補間制御対象)を指定する命令であり、「RB」で指定された番号「1」「2」「3」は、移動命令の対象に対応する番号を示している。この例では、「1」がアーム103L、「2」がアーム103R、「3」が胴体部102に対応している。
【0044】
「TOOL=4」「TOOL=5」は、アーム103の先端に備えられたツール150の種別を示す命令であり、「TOOL」で指定された番号「4」「5」は、ツール150の種別に対応するツールファイル番号を示しており、フランジ110からツール150の先端までの位置、及び、ツール150の座標の姿勢を表すツールファイルへのインデックスである。
【0045】
また、上記(1)の教示データには、一連の動作における2つの教示点に関するデータが含まれている。すなわち、
MOVJ C000 RB=1 TOOL=4
+MOVJ C001 RB=2 TOOL=5
+MOVJ C002 RB=3 ・・・(1A)
と、
MOVJ C003 RB=1 TOOL=4
+MOVL C004 RB=2 TOOL=5
+MOVJ C005 RB=3 ・・・(1B)
とのデータが含まれている。
【0046】
上記(1A)のデータは、一連の動作における1つ目(1動作目)の教示点に関するデータである。このデータは、ツール150L(「TOOL=4」)を先端に備えたアーム103L(「RB=1」)を補間制御対象とし、インデックス「C000」に示された第2〜第8関節部J2〜J8の角度を目標姿勢として、PTP補間動作(「MOVJ」)させること、ツール150R(「TOOL=5」)を先端に備えたアーム103R(「RB=2」)を補間制御対象とし、インデックス「C001」に示された第9〜第15関節部J2〜J8の角度を目標姿勢として、PTP補間動作(「MOVJ」)させること、及び、胴体部102(「RB=3」)を補間制御対象とし、インデックス「C002」に示された第1関節部J1の角度を目標姿勢として、PTP補間動作(「MOVJ」)させることを示している。
【0047】
上記(1B)のデータは、一連の動作における2つ目(2動作目)の教示点に関するデータである。このデータは、ツール150L(「TOOL=4」)を先端に備えたアーム103L(「RB=1」)を補間制御対象とし、インデックス「C003」に示された第2〜第8関節部J2〜J8の角度を目標姿勢として、PTP補間動作(「MOVJ」)させること、ツール150R(「TOOL=5」)を先端に備えたアーム103R(「RB=2」)を補間制御対象とし、インデックス「C004」に示された第9〜第15関節部J2〜J8の角度を目標姿勢として、直線補間動作(「MOVL」)させること、及び、胴体部102(「RB=3」)を補間制御対象とし、インデックス「C005」に示された第1関節部J1の角度を目標姿勢として、PTP補間動作(「MOVJ」)させることを示している。
【0048】
補間演算部202は、上記第1アームが直線補間動作を行うように、かつ、上記第2アームが上記補間種別選択キー304で選択された種別の補間動作を行うように、動作開始位置と教示データ格納部201に格納された教示データで表される教示点との間の補間点を演算する。補間点とは、動作開始位置から教示点までの動作においてツール150の先端が動作開始位置と教示点とを結ぶ直線又は曲線(移動軌跡)上を所定周期で通過すべき複数の通過点のことである。そして、動作開始位置と教示点との間の各補間点における、胴体部102の第1関節部J1の角度、アーム103Lの第2〜第8関節部J2〜J8の角度、及びアーム103Rの第9〜第15関節部J9〜J15の角度を演算し、駆動部203へ入力する。
【0049】
駆動部203は、補間演算部202より入力された、動作開始位置と教示点との間の各補間点における、胴体部102の第1関節部J1の角度情報、アーム103Lの第2〜第8関節部J2〜J8の角度情報、及びアーム103Rの第9〜第15関節部J9〜J15の角度情報に基づき、胴体部102及びアーム103L,103Rの各駆動部位を駆動する。
【0050】
パラメータ格納部205には、ロボット100の動作制御に関する各種パラメータが格納されている。
【0051】
上記のように構成されたロボットコントローラ200は、アーム103L,103Rの先端に備えられたツール150L,150Rの先端が動作開始位置から各補間点を通過して教示点まで移動するように、ロボット100を制御する。具体的には、教示点の入力時における上記旋回キー306の操作にかかわらず、第1アームの先端に備えられたツール150が胴体部102の旋回の前後を通じて同一の位置及び姿勢に保持されるように、ロボット100を制御しつつ、第1アームで、ツール150を胴体部102の旋回の前後を通じて同一の位置及び姿勢に保持することにより上記第1対象物W1を固定するように、ロボット100を制御する。またこれと共に、第2アームで、上記第2対象物W2を胴体部102の旋回により取りに行く作業や、当該第2対象物W2をツール150で把持して上記固定された第1対象物W1の位置まで胴体部102の旋回により搬送する作業等を行うように、ロボット100を制御する。
【0052】
(C)入力装置によるロボットの教示点の入力方法
次に、入力装置300によるロボット100の教示点の入力方法の一例について説明する。
【0053】
教示点の入力時において、操作対象選択キー302の操作によりアーム103Lが操作対象に選択されているときに方向キー305が操作されると、その方向キー305の操作量に基づいて駆動部203によりアーム103Lの各駆動部位が駆動され、方向キー305の示す方向にツール150Lの先端が移動する。また、操作対象選択キー302の操作によりアーム103Rが操作対象に選択されているときに方向キー305が操作されると、その方向キー305の操作量に基づいて駆動部203によりアーム103Rの各駆動部位が駆動され、方向キー305の示す方向にツール150Rの先端が移動する。
【0054】
図4(a)、図4(b)、図4(c)、及び図4(d)は、教示点の入力時において、操作対象選択キー302の操作により胴体部102が操作対象に選択されているときに旋回キー306が操作され、胴体部102が旋回したときの、胴体部102の旋回に伴うアーム103L,103Rの旋回移動の一例を模式的に表す説明図である。なお、これら図4(a)〜図4(d)中では、ロボット100の設置面E(図2参照)に平行で、かつ、ロボット100の正面に対応する方向をX軸方向とし、設置面Eに平行で、かつ、X軸方向に直交する方向をY軸方向とし、設置面Eに垂直な方向をZ軸方向(紙面手前奥方向)として、X軸方向及びY軸方向を表す矢印を図示している。また、胴体部102が旋回する前のアーム103L,103Rの位置、及び、胴体部102が旋回する前のX軸方向及びY軸方向を破線で示している。
【0055】
図4(a)には、固定指定選択キー303により第1アームが選択されていない状態で旋回キー306が操作された場合の一例を示している。図4(a)に示すように、操作対象選択キー302の操作により胴体部102が操作対象に選択され、固定指定選択キー303により第1アームが選択されていない状態で旋回キー306が操作されると、その旋回キー306の操作量に基づいて駆動部203により胴体部102の駆動部位が駆動され、旋回キー306の示す方向に胴体部102が旋回する。そしてこのとき、胴体部102の旋回に伴って、アーム103L、103Rの全体が旋回移動する。
【0056】
図4(b)には、固定指定選択キー303の操作によりアーム103Rが第1アームに選択されている状態で旋回キー306が操作された場合の一例を示している。図4(b)に示すように、操作対象選択キー302の操作により胴体部102が操作対象に選択され、固定指定選択キー303の操作によりアーム103Rが第1アームに選択されている状態で旋回キー306が操作されると、上記と同様に胴体部102が旋回する。そしてこのとき、胴体部102の旋回に伴って、アーム103Lの全体が旋回移動すると共に、方向キー306の操作量に基づいて駆動部203によりアーム103Rの駆動部位が駆動され、ツール150Rが胴体部102の旋回の前後を通じて同一の位置及び姿勢に保持されつつアーム103Rが旋回移動する。
【0057】
図4(c)には、固定指定選択キー303の操作によりアーム103Lが第1アームに選択されている状態で旋回キー306が操作された場合の一例を示している。図4(c)に示すように、操作対象選択キー302の操作により胴体部102が操作対象に選択され、固定指定選択キー303の操作によりアーム103Lが第1アームに選択されている状態で旋回キー306が操作されると、上記と同様に胴体部102が旋回する。そしてこのとき、胴体部102の旋回に伴って、方向キー306の操作量に基づいて駆動部203によりアーム103Lの駆動部位が駆動され、ツール150Lが胴体部102の旋回の前後を通じて同一の位置及び姿勢に保持されつつアーム103Lが旋回移動すると共に、アーム103Rの全体が旋回移動する。
【0058】
図4(d)には、固定指定選択キー303の操作によりアーム103L,103Rが共に第1アームに選択されている状態で旋回キー306が操作された場合の一例を示している。図4(d)に示すように、操作対象選択キー302の操作により胴体部102が操作対象に選択され、固定指定選択キー303の操作によりアーム103L,103Rが共に第1アームに選択されている状態で旋回キー306が操作されると、上記と同様に胴体部102が旋回する。そしてこのとき、胴体部102の旋回に伴って、方向キー306の操作量に基づいて駆動部203によりアーム103L,103Rの駆動部位が駆動され、ツール150L,150Rが胴体部102の旋回の前後を通じて同一の位置及び姿勢に保持されつつアーム103L,103Rが旋回移動する。
【0059】
そして、方向キー305及び旋回キー306の操作によりツール150L,150Rの先端位置が任意の位置に誘導され、確定キー307が操作されると、その確定キー307の操作時におけるツール150L,150Rの先端位置、すなわち、方向キー305及び旋回キー306の操作により位置決めされたツール150L,150Rの先端位置が、教示点に設定される。設定された教示点に関するデータは、補間動作の種別に対応する移動命令等と共に、出力部301よりロボットコントローラ200へ出力され、これらに基づいて生成された教示データが教示データ格納部201に格納される。
【0060】
(D)補間演算部による補間制御方法
次に、ロボットコントローラ200の補間演算部202による補間制御方法について説明する。
【0061】
上記のようにしてロボット100の教示点が設定された後、再生キー308が操作されると、補間演算部202は、その再生キー308の操作時(動作開始時)におけるツール150L,150Rの先端位置をアーム103L,103Rの動作開始位置として、動作開始位置から教示データ格納部201に格納された教示データで表される教示点までの移動に必要な移動時間や加減速時間を演算する。このとき、移動時間は、加減速を行わない場合の演算周期の回数として求め、分割数nとする。
【0062】
図5(a)、図5(b)、図5(c)、及び図5(d)は、補間演算部202による補間制御方法の一例を説明する説明図である。なお、これら図5(a)、図5(b)、図5(c)、及び図5(d)中では、アーム103L、103Rのうち、アーム103L側の補間制御における制御点だけを図示している。また、胴体部102上に設置されたアーム103Lの末端(詳細には、肩部104Lの末端)を補間制御における第1制御点Pとし、第1制御点Pの動作開始時における位置をP、第1制御点Pの教示点における位置をPとしている。また、ツール150Lの先端を補間制御における第2制御点Qとし、第2制御点Qの動作開始時における位置をQ、第2制御点Qの教示点における位置をQとしている。
【0063】
図5(a)には、胴体部102の旋回に対してアーム103Lが直線補間動作を行う場合の一例を示しており、図5(b)には、図5(a)の詳細を示している。図5(a)及び図5(b)において、補間演算部202は、動作開始位置から教示点までの移動に必要な移動時間や加減速時間を演算した後、公知の適宜の手法により、第1制御点Pを補間制御し、その補間制御された第1制御点Pを基準に第2制御点Qを直線補間制御する。
【0064】
すなわち、補間演算部202は、教示データ格納部201に格納された教示データに基づき、第2制御点Q,Qの位置及び姿勢でのアーム103Lの第2〜第8関節部J2〜J8の角度情報を取得する。次に、第2制御点Qに関して、QからQへ直線補間動作を行う計算を行う。このとき、上記分割数nに対するi番目の第2制御点Qの位置及び姿勢を表すマトリックスをT(i=1…n)とする。さらに、胴体部102上の第1制御点PがPからPへ旋回移動を行う計算を行う。このとき、上記分割数Nに対するi番目の第1制御点Pの位置を表すマトリックスをS(i=1…n)とする。このSを逆変換することにより、動作開始位置と教示点との間の各補間点における胴体部102の第1関節部J1の角度を算出する。その後、下記のマトリックス計算の結果得られるUを逆変換することにより、動作開始位置と教示点との間の各補間点におけるアーム103Lの第2〜第8関節部J2〜J8の角度を算出する。
=S・U
=S−1・T(i=1…n)
また、アーム103R側の補間制御における制御点に関しても、補間動作を行う計算を上記と同様に行って、動作開始位置と教示点との間の各補間点におけるアーム103Rの第9〜第15関節部J9〜J15の角度を算出する。
【0065】
そして、補間演算部202は、以上のようにして算出した、動作開始位置と教示点との間の各補間点における、胴体部102の第1関節部J1の角度情報、及び、アーム103Lの第2〜第8関節部J2〜J8の角度情報、アーム103Rの第9〜第15関節部J9〜J15の角度情報を、上記駆動部203に入力する。これにより、駆動部203が、胴体部102及びアーム103L,103Rの各駆動部位を駆動して、胴体部102及びアーム103L,103Rを並行して動作させる。すなわち、胴体部102に旋回動作を行わせつつ、アーム103Lに直線補間動作を行わせると共に、アーム103Rに補間動作を行わせる。
【0066】
図5(c)は、アーム103Lの先端に備えられたツール150Lが胴体部102の旋回の前後を通じて同一の位置及び姿勢に保持される場合の一例を示しており、図5(d)は、図5(c)の詳細を示している。図5(c)及び図5(d)において、補間演算部202は、動作開始位置から教示点までの移動に必要な移動時間や加減速時間を演算した後、公知の適宜の手法により、第1制御点Pを補間制御し、その補間制御された第1制御点Pを基準にQ及びQの位置及び姿勢が同一となるように第2制御点Qを補間制御する。
【0067】
すなわち、補間演算部202は、教示データ格納部201に格納された教示データに基づき、第2制御点Q,Qの位置及び姿勢でのアーム103Lの第2〜第8関節部J2〜J8の角度情報を取得する。次に、第2制御点Qに関して、Q及びQの位置及び姿勢が同一となるように補間動作を行う計算を上記と同様に行い、さらに、胴体部102上の第1制御点PがPからPへ旋回移動を行う計算を上記と同様に行う。また、アーム103R側の補間制御における制御点に関しても、補間動作を行う計算を上記と同様に行う。これにより、動作開始位置と教示点との間の各補間点における、胴体部102の第1関節部J1の角度、及び、アーム103Lの第2〜第8関節部J2〜J8の角度、アーム103Rの第9〜第15関節部J9〜J15の角度を算出する。
【0068】
そして、補間演算部202は、以上のようにして算出した、動作開始位置と教示点との間の各補間点における、胴体部102の第1関節部J1の角度情報、及び、アーム103Lの第2〜第8関節部J2〜J8の角度情報、アーム103Rの第9〜第15関節部J9〜J15の角度情報を、上記駆動部203に入力する。これにより、駆動部203が、胴体部102及びアーム103L,103Rの各駆動部位を駆動して、胴体部102及びアーム103L,103Rを並行して動作させる。すなわち、胴体部102に旋回動作を行わせつつ、ツール150Lを胴体部102の旋回の前後を通じて同一の位置及び姿勢に保持するようにアーム103Lに補間動作を行わせると共に、アーム103Rに補間動作を行わせる。
【0069】
(E)ロボットの動作
図6(a)、図6(b)、及び図6(c)は、ロボットコントローラ200の制御に基づいてロボット100が行う、第1対象物W1に対し第2対象物W2をはめ合わせる、はめ合い作業の一例を模式的に表す説明図である。なお、この場合における第1及び第2対象物W1,W2の組み合わせとしては、例えばソーサー及びカップ等が挙げられる。
【0070】
まず、図6(a)に示すように、アーム103L,103Rのうち、教示時において固定指定選択キー303の操作により第1アームに選択された一方のアーム103(この例ではアーム103L)が、ツール150Lで第1対象物W1を固定するように補間動作(例えば上記PTP補間動作等)を行う。なお、このとき、第1対象物W1のはめ合い対象となる第2対象物W2は、第2アームに相当する他方のアーム(この例ではアーム103R)の把持可能領域外に位置している。
【0071】
次に、図6(b)に示すように、胴体部102が、第2対象物W2がアーム103Rの把持可能領域に入るように所定の角度だけ旋回する。これと並行して、アーム103Lが、ツール150Lを胴体部102の旋回の前後を通じて同一の位置及び姿勢に保持することにより第1対象物W1の固定を保持するように直線補間動作を行う。さらに、アーム103Rが、ツール150Rで第2対象物W2を把持して搬送を行える状態とするように補間動作(例えば上記PTP補間動作等)を行う。
【0072】
その後、図6(c)に示すように、胴体部102が、アーム103Rが第2対象物W2を上記固定された第1対象物W1の位置まで搬送することができるように所定の角度だけ旋回する。これと並行して、アーム103Lが、ツール150Lを胴体部102の旋回の前後を通じて同一の位置及び姿勢に保持することにより第1対象物W1の固定を保持するように直線補間動作を行う。さらに、アーム103Rが、ツール150Rで第2対象物W2を把持して上記固定された第1対象物W1の位置まで搬送するように補間動作(例えば上記PTP補間動作等)を行う。これにより、第2対象物W2が第1対象物W1の位置まで搬送され、第1対象物W1に対し第2対象物W2をはめ合わされる。
【0073】
(F)本実施形態の効果
以上説明したように、本実施形態のロボットシステム1は、ロボット100と、ロボットコントローラ200と、入力装置300とを備えている。ロボット100は、先端にツール150L,150Rを備えたアーム103L,103Rと、これらのアーム103L,103Rを支持し旋回させる胴体部102を有している。このロボット100の動作は、ロボットコントローラ200によって制御される。
【0074】
このとき、ロボットコントローラ200が、アーム103L,103Rのうちの少なくとも1つのアーム103の先端に備えられたツール150が胴体部102の旋回の前後を通じて同一の位置及び姿勢に保持されるように、ロボット100を制御する。これにより、同一の位置及び姿勢に保持したツール150(例えばハンド)を用いて、胴体部102の旋回の前後を通じて第1対象物W1を固定することが可能となる。そして、保持されたアーム103以外のアーム103が、上記固定された第1対象物W1に関する胴体部102の旋回が必要な作業を行うことができる。特に本実施形態では、ロボット100は、アーム103を2つ有しており、ロボットコントローラ200は、一方のアーム103で、ツール150を胴体部102の旋回の前後を通じて同一の位置及び姿勢に保持することにより第1対象物W1を固定すると共に、他方のアーム103で、上記固定された第1対象物W1に関する胴体部102の旋回が必要な作業を行うように、ロボット100を制御する。これにより、ロボット100が第1対象物W1に対し第2対象物W2をはめ合わせる、はめ合い作業を行う場合において、所定のアーム103で第1対象物W1を固定しつつ、他のアーム103で第2対象物W2を胴体部102の旋回により取りに行く作業や、当該第2対象物W2を上記固定された第1対象物W1の位置まで胴体部102の旋回により搬送する作業等を行うことができる。
【0075】
このように、本実施形態によれば、第1対象物W1を固定しつつ旋回が必要となる作業を1台のロボット100で行うことができる。またこのとき、胴体部102とアーム103L,103Rとを並行して動作させることができるので、ロボット100の据付面積の効率化が図られ、サイクルタイムを短縮でき、作業効率を向上させることができるという効果もある。
【0076】
また、本実施形態では特に、入力装置300が固定指定選択キー303を有することにより、教示点の入力時に、ツール150を同一の位置及び姿勢に保持したい第1アームをアーム103L,103Rの中から容易に選択することができる。また、教示点の入力時に第1アームを指定可能とすることで、当該第1アームについては動作開始位置と同一の教示点を自動設定することが可能となり、教示作業を簡易化することができる。
【0077】
また、本実施形態では特に、ロボットコントローラ200の補間演算部202が、入力装置300の固定指定選択キー303で選択された第1アームが直線補間動作を行うように補間点を演算し、ロボットコントローラ200の駆動部203が当該演算された補間点に基づき第1アームを駆動する。これにより、第1アームは、動作開始時における先端位置と教示点との間を直線状に移動するので、第1アームのツール150が旋回の前後を通じて同一の位置及び姿勢に保持されるように、ロボット100を確実に制御することができる。
【0078】
また、本実施形態では特に、教示点の入力時に、入力装置300の補間種別選択キー304で第2アームの補間動作の種別を選択可能とすることで、ロボットシステム1の動作環境・状況等に応じて第2アームの補間動作を使い分けることができる。
【0079】
また、本実施形態では特に、入力装置300が、ツール150の先端を3次元上の任意の位置に誘導するようにアーム103を操作する方向キー305と、胴体部102を任意の角度に旋回するように操作する旋回キー306と、確定キー307とを有している。方向キー305及び旋回キー306が操作されると、ロボットコントローラ200の駆動部203が、その操作量に基づきアーム103及び胴体部102を駆動する。確定キー307は、このようにして方向キー305及び旋回キー306の操作により位置決めされたアーム103のツール150の先端位置を、教示点に設定する。このとき、ロボットコントローラ200は、教示点の入力時における旋回キー306の操作にかかわらず、第1アームのツール150が胴体部102の旋回の前後を通じて同一の位置及び姿勢に保持されるように、ロボット100を制御する。これにより、教示点の入力時において胴体部102を旋回させた場合でも、第1アームについては、方向キー305を用いて位置決めすることなく、動作開始位置と同一の教示点を自動的に設定することができる。したがって、教示作業を簡易化することができる。
【0080】
なお、実施の形態は、上記内容に限られるものではなく、その趣旨及び技術的思想を逸脱しない範囲内で種々の変形が可能である。例えば、上記実施形態では、ロボット100が2つのアーム103L、103Rを有する場合を一例として説明したが、これに限られず、ロボット100がロボットアームを3つ以上有する場合にも適用することができる。
【0081】
また、上記実施形態では、制御ユニットであるロボットコントローラ200をロボット100とは別の場所に設けていたが、これに限られず、制御ユニットを、例えばロボット100の基台101部分に設置する等、ロボット100側に設けてもよい。
【0082】
また、上記実施形態では、入力装置300を制御ユニットであるロボットコントローラ200とは別体として設けていたが、これに限られず、制御ユニットが入力装置を備える構成としてもよい。
【0083】
また、上記実施形態では、第1アームが直線補間動作を行うように、補間演算部203が補間点を演算していたが、これに限られず、第1アームが円弧補間動作を行うように、補間演算部203が補間点を演算してもよい。あるいは、状況に応じて、第1アームがPTP補間動作、直線補間動作、及び円弧補間動作のいずれかを行うように、補間演算部203が補間点を演算してもよい。
【0084】
また、上記実施形態では、ロボットシステム1を第1対象物W1に対し第2対象物W2をはめ合わせる、はめ合い作業に適用した場合を例示したが、これに限られず、他の作業に適用してもよい。例えば、釘を打ち込んだりボルトを締める作業を行う場合において、第1アームで釘やボルトを固定しつつ、第2アームでトンカチやドライバーを取りに行く(搬送する)場合などにも適用できる。
【0085】
また、以上既に述べた以外にも、上記実施形態や各変形例による手法を適宜組み合わせて利用しても良い。
【0086】
その他、一々例示はしないが、上記実施形態や各変形例は、その趣旨を逸脱しない範囲内において、種々の変更が加えられて実施されるものである。
【符号の説明】
【0087】
1 ロボットシステム
100 ロボット
102 胴体部(旋回装置)
103L,R アーム(ロボットアーム)
150L、R ツール
200 ロボットコントローラ(制御ユニット)
202 補間演算部
203 駆動部
300 入力装置
303 固定指定選択キー(アーム選択手段)
304 補間種別選択キー(補間選択手段)
305 方向キー(アーム操作手段)
306 旋回キー(旋回操作手段)
307 確定キー(教示点設定手段)
W1 第1対象物(対象物)
W2 第2対象物(対象物)

【特許請求の範囲】
【請求項1】
ロボットと、前記ロボットの動作を制御する制御ユニットと、を備えたロボットシステムであって、
前記ロボットは、
先端にツールを備えた複数のロボットアームと、
前記複数のロボットアームを支持し、旋回させる旋回装置と、を有し、
前記制御ユニットは、
前記複数のロボットアームのうちの少なくとも1つの前記ツールが旋回の前後を通じて同一の位置及び姿勢に保持されるように、前記ロボットを制御する
ことを特徴とするロボットシステム。
【請求項2】
前記ロボットの教示点を入力するための入力装置をさらに備え、
前記入力装置は、
前記教示点の入力時に、前記複数のロボットアームのうち、前記ツールが同一の位置及び姿勢に保持される第1ロボットアームを選択するためのアーム選択手段を有する
ことを特徴とする請求項1に記載のロボットシステム。
【請求項3】
前記制御ユニットは、
前記ロボットアームの動作開始時における先端位置と前記教示点との間の補間点を演算する補間演算部と、
前記補間点に基づき前記ロボットアームを駆動する駆動部と、を有し、
前記補間演算部は、
前記アーム選択手段で選択された前記第1ロボットアームが、前記先端位置と前記教示点との間を直線状に移動する直線補間動作を行うように補間点を演算する
ことを特徴とする請求項2に記載のロボットシステム。
【請求項4】
前記入力装置は、
前記教示点の入力時に、前記アーム選択手段で選択された前記第1ロボットアーム以外の第2ロボットアームの補間動作の種別を選択するための補間選択手段を有し、
前記補間演算部は、
前記第2ロボットアームが前記補間選択手段で選択された種別の補間動作を行うように前記補間点を演算する
ことを特徴とする請求項3に記載のロボットシステム。
【請求項5】
前記入力装置は、
前記ロボットアームの先端を3次元上の任意の位置に誘導するように前記ロボットアームを操作するアーム操作手段と、
前記旋回装置を任意の角度に旋回するように操作する旋回操作手段と、
前記アーム操作手段及び前記旋回操作手段の操作により位置決めされた前記ロボットアームの先端位置を教示点に設定する教示点設定手段と、を有し、
前記制御ユニットは、
前記教示点の入力時における前記旋回操作手段の操作にかかわらず、前記第1ロボットアームの前記ツールが旋回の前後を通じて同一の位置及び姿勢に保持されるように、前記ロボットを制御する
ことを特徴とする請求項2乃至4のいずれか1項に記載のロボットシステム。
【請求項6】
前記ロボットは、
前記ロボットアームを2つ有しており、
前記制御ユニットは、
一方の前記ロボットアームで、前記ツールを旋回の前後を通じて同一の位置及び姿勢に保持することにより対象物を固定すると共に、他方の前記ロボットアームで、前記固定された対象物に関する旋回が必要な作業を行うように、前記ロボットを制御する
ことを特徴とする請求項1乃至5のいずれか1項に記載のロボットシステム。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate


【公開番号】特開2012−192468(P2012−192468A)
【公開日】平成24年10月11日(2012.10.11)
【国際特許分類】
【出願番号】特願2011−56721(P2011−56721)
【出願日】平成23年3月15日(2011.3.15)
【出願人】(000006622)株式会社安川電機 (2,482)
【Fターム(参考)】