(57)【要約】【課題】直感的に姿勢を調整しやすく、より正確に把持姿勢情報を教示することができるロボットシステムを提供する。【解決手段】ロボットシステムは、ワークを把持するロボット６と、ロボット６にワークの把持姿勢情報を教示する教示装置２と、を含み、教示装置２は、第１座標系におけるロボット６によるワークの第１の把持姿勢と第２座標系におけるロボット６によるワークの第２の把持姿勢とを受け付けることによって、ロボットに把持姿勢情報を教示する。【選択図】図１
2015100874.tif 000002
【特許請求の範囲】
【請求項１】
ワークを把持するロボットと、
前記ロボットに前記ワークの把持姿勢情報を教示する教示装置と、を含み、
前記教示装置は、
第１座標系における前記ロボットによる前記ワークの第１の把持姿勢と第２座標系における前記ロボットによる前記ワークの第２の把持姿勢とを受け付けることによって、前記ロボットに前記把持姿勢情報を教示する、
ことを特徴とするロボットシステム。
【請求項２】
請求項１に記載のロボットシステムにおいて、
前記教示装置は、前記第１の把持姿勢と前記第２の把持姿勢とを受け付けるための入力受付画面を表示する表示部を含み、
前記入力受付画面は、
前記第１の把持姿勢を入力する第１入力部と、
前記第２の把持姿勢を入力する第２入力部と、
入力された前記第１の把持姿勢と前記第２の把持姿勢とに基づいて、前記ロボットによる前記ワークの把持姿勢を表示する把持姿勢表示部と、を含む、
ことを特徴とするロボットシステム。
【請求項３】
請求項１又は２に記載のロボットシステムにおいて、
前記第１座標系は、前記ワークに設けられた原点に基づくパーツ座標系である、
ことを特徴とするロボットシステム。
【請求項４】
請求項１乃至３のいずれか一項に記載のロボットシステムにおいて、
前記第２座標系は、前記ロボットのハンドに設けられた原点に基づくハンド座標系である、
ことを特徴とするロボットシステム。
【請求項５】
請求項１乃至４のいずれか一項に記載のロボットシステムにおいて、
前記教示装置は、
前記第１の把持姿勢を受け付けた後、前記第２の把持姿勢を受け付ける、
ことを特徴とするロボットシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ロボットシステムに関するものである。
【背景技術】
【０００２】
産業用のロボット、例えば加工ワークのバリ取り用ロボットを動作させる場合、該ロボットを動作させる動作プログラム（以下、「教示プログラム」と称する）を作成する必要がある。この教示プログラムを作成する方法として、例えば実際のバリ取り加工ラインにおいて、実機としてのロボットを用いて行うオンライン方式と、コンピューターによるシミュレーションを用いて実際のライン外で行うオフライン方式とが存在している。
【０００３】
このうち、オフライン方式の場合、ロボットモデルを含む作業環境の三次元モデル及びワークの三次元モデルを作成して表示画面に表示し、その表示画面上において、作業のポイントとなるティーチポイント（教示点とも称する）を設定するとともに、各ティーチポイントの通過順序などを定めて動作プログラムを作成する。
このようなシミュレーション方式の場合には、バリ取り加工ラインを停止させる必要がなく、しかも、ほぼ実際の作業環境にあった動作の設定が容易に可能となる利点がある。
【０００４】
ところで、産業用ロボットの制御を行うためのプログラム言語としては、コンパイラータイプやインタプリタータイプ等がある。いずれのタイプのロボット言語の場合も、作業者であるユーザーは、これらの言語が表示された画面を参照してプログラム言語の編集を行う。すなわち、ロボットの行う作業内容をロボット言語によるプログラムリストとして表示しているので、実際の作業内容を把握するのが難しいという問題点があり、プログラムに関する特別な知識と経験が要求される。
【０００５】
従来ではこのような課題に対し、特許文献１に示されるように、ユーザーとのインターフェイス機能を備えた産業用ロボットの教示のために使用されるプログラムの表示、作成や編集を簡易に視覚的に行う技術が開示されている。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開２０１２−２２５４６号公報
【発明の概要】
【発明が解決しようとする課題】
【０００７】
しかしながら、上述した従来の技術においては以下に示す課題がある。特許文献１によれば、加工関連対象物の工作機械に対するハンドリング作業をロボットに実行させる作業プログラムをオフラインで作成するとともに、特許文献１に示されるように加工プログラムを視覚的に表示する。
一方、ラインに流れる加工ワークは種類や形状が単一のものもあれば異なるものもあり、加工ワークが変更される度に、プログラムの修正をパソコン上で逐次、ツール座標系若しくはパーツ座標系のいずれか一方の座標系を用いて、教示点を教示するため、正確性に欠けるおそれがあった。
【課題を解決するための手段】
【０００８】
本発明は、上述の課題の少なくとも一部を解決するためになされたものであり、以下の形態又は適用例として実現することが可能である。
【０００９】
［適用例１］本適用例に係るロボットシステムは、ワークを把持するロボットと、前記ロボットに前記ワークの把持姿勢情報を教示する教示装置と、を含み、前記教示装置は、第１座標系における前記ロボットによる前記ワークの第１の把持姿勢と第２座標系における前記ロボットによる前記ワークの第２の把持姿勢とを受け付けることによって、前記ロボットに前記把持姿勢情報を教示する、ことを特徴とする。
【００１０】
本適用例によれば、ワークを把持するロボットにワークの把持姿勢情報を教示するとき、第１座標系で決定した第１の把持姿勢と、第２座標系で決定した第２の把持姿勢とを受け付けることによって、最終的な把持姿勢情報を決定するので、直感的に姿勢を調整しやすく、より正確に把持姿勢情報を教示することができる。
【００１１】
［適用例２］上記適用例に記載のロボットシステムにおいて、前記教示装置は、前記第１の把持姿勢と前記第２の把持姿勢とを受け付けるための入力受付画面を表示する表示部を含み、前記入力受付画面は、前記第１の把持姿勢を入力する第１入力部と、前記第２の把持姿勢を入力する第２入力部と、入力された前記第１の把持姿勢と前記第２の把持姿勢とに基づいて、前記ロボットによる前記ワークの把持姿勢を表示する把持姿勢表示部と、を含む、ことを特徴とする。
【００１２】
本適用例によれば、第１座標系で決定した第１の把持姿勢と、第２座標系で決定した第２の把持姿勢と、を重ね合わせて視覚的に表示して最終的な把持姿勢情報を容易に決定できる。
【００１３】
［適用例３］上記適用例に記載のロボットシステムにおいて、前記第１座標系は、前記ワークに設けられた原点に基づくパーツ座標系である、ことを特徴とする。
【００１４】
本適用例によれば、第１座標系を容易に決定できる。
【００１５】
［適用例４］上記適用例に記載のロボットシステムにおいて、前記第２座標系は、前記ロボットのハンドに設けられた原点に基づくハンド座標系である、ことを特徴とする。
【００１６】
本適用例によれば、第２座標系を容易に決定できる。
【００１７】
［適用例５］上記適用例に記載のロボットシステムにおいて、前記教示装置は、前記第１の把持姿勢を受け付けた後、前記第２の把持姿勢を受け付ける、ことを特徴とする。
【００１８】
本適用例によれば、パーツ座標系における第１の把持姿勢を決定した後、ハンド座標系における第２の把持姿勢を決定するので、直感的に把持姿勢を調整しやすい。
【図面の簡単な説明】
【００１９】
【図１】本実施形態に係るロボットシステム構成例を示す図。
【図２】本実施形態に係るハンドを示す図。
【図３】本実施形態に係る詳細なロボットシステム構成例を示す図。
【図４】本実施形態に係る入力受付画面の例を示した図。
【図５】本実施形態に係る処理を説明するためのフローチャート。
【図６】フローチャートの説明に用いられる状況の具体例。
【図７】本実施形態に係る処理を説明するためのフローチャート。
【発明を実施するための形態】
【００２０】
以下、本実施形態について説明する。なお、以下に説明する本実施形態は、特許請求の範囲に記載された本発明の内容を不当に限定するものではない。また本実施形態で説明される構成の全てが、本発明の必須構成要件であるとは限らない。
【００２１】
１．本実施形態の手法
図１は、本実施形態に係るロボットシステム構成例を示す図である。図２は、本実施形態に係るハンド１２を示す図である。まず、本実施形態の手法について説明する。図１を用いて後述するように、本実施形態はアーム及びアームの先端に設けられるハンド（把持部）を有するロボットの制御装置等の把持姿勢情報の教示方法に関する。このような産業用ロボットでは、アーム及びハンドを操作することにより、パレット等に載せられたワーク（処理の対象となる物体）に対して処理を行う。処理の具体例としては、把持する、加工する、向きを変える、及び移動させる等が考えられる。
【００２２】
産業用ロボットに処理を行わせる際には、一連の作業内容（以下、適宜シナリオと表記する）を設定する必要がある。シナリオの例としては、ワークを把持してから特定の面を下にして置くという例が考えられる。その他にも、右手でワークを把持した後、左手に持ち替えて、右手でワークの特定位置に部品を取り付ける、といったシナリオが想定される。
【００２３】
しかし、シナリオが設定されたとしてもロボットに対してより正確に処理を行わせることは容易ではない。
例えば、ワークの把持方法を教示するときに、数値又はスライダーなどでハンドの把持点（ｘ，ｙ，ｚ）と、ｘｙｚ軸周りの回転（α，β，γ）を入力すると、ワークとハンドとが指定した位置姿勢でグラフィカルに表示され、図を見ながら把持位置や把持姿勢情報を教示する。図はグローバル座標系で作業環境が表示されてもよいし、ワーク等の対象物の座標系で対象物が表示されてもよい。その座標系におけるハンドの位置姿勢を教示したいが、複数の軸が回転するときの動きは直感的に分かりにくい。
【００２４】
そこで本出願人は、シナリオに従ってより正確な把持姿勢を決定する手法を提案する。上述の例で言えば、パーツ座標系（第１座標系）で教示した把持姿勢情報と、ハンド座標系（第２座標系）で教示した把持姿勢情報を合成して、最終的な把持姿勢情報を決定する。具体的には、ｘｙｚ軸周りに回転させて図２に示すハンド１２の方向を大まかに決めた後、微調整を行う。つまり、ハンド１２を指定した角度でｘｙｚ軸周りに回転した後で、ハンド１２の姿勢（の軸）に対して回転を入力（指定）する。このようにすることで、より正確に、把持姿勢情報を教示することができる。なお、ハンド座標系とは、ロボットのハンドの位置を元にした座標系であり、パーツ座標系とは、ワークの向いている方向を元にした座標系である。
【００２５】
ここで、軸周りの回転行列について説明する。軸周りの回転行列は、点（ｘ，ｙ，ｚ）を順にｘ軸周りに角度α、ｙ軸周りに角度β、ｚ軸周りに角度γだけ回転させた場合、次式（１）で表される。
【００２６】
【数１】
2015100874.tif 000003
図２のようにハンド１２の前をｚ軸、指の開閉方向をｘ軸とした場合に、回転後のベクトルは、ハンド１２の前方向は式（１）の（ｘ，ｙ，ｚ）に（０，０，１）、回転後のハンド１２の指の開閉方向は式（１）の（ｘ，ｙ，ｚ）に（１，０，０）を代入すれば求められる。
【００２７】
また、任意の軸周りの回転行列は、ベクトルＡ（ａ，ｂ，ｃ）周りに角度θ回転させた場合、次式（２）で表される。
【００２８】
【数２】
2015100874.tif 000004
式（１）で回転後に手首の周りに回転させて微調整しようとした場合、式（１）で計算したハンド１２の前方向のベクトルをＡ、ユーザーが入力した角度を角度θとして式（２）でハンド１２の指の開閉方向が計算できる。以下、ロボットシステム構成例を説明し、把持姿勢情報の教示方法を、フローチャートを用いて説明する。
【００２９】
２．ロボットシステム構成例
本実施形態に係るロボット制御装置を含むロボットシステムの構成例を図１を用いて説明する。ロボットシステムは、教示装置２と、撮像装置４と、ロボット６とを含む。ただし、ロボットシステムは図１の構成に限定されず、これらの一部の構成要素を省略したり、他の構成要素を追加したりするなどの種々の変形実施が可能である。ロボット６は、アーム１０及びハンド１２を有し、教示装置２からの動作指示に従い処理を行う。例えばパレット１４に載せられたワークに対して処理を行う。撮像装置４は、例えばワークを撮影可能な位置（パレットの直上でもよいし、ロボット６のハンド１２に取り付けられてもよい）に設けられ、主にワークの撮影を行う。そして、撮像画像の情報からワークの位置や姿勢等に関する情報を検出する。検出した情報は例えば教示装置２等に送られてもよいし、直接ロボット６に送られてもよい。また、ワークの位置や姿勢等に関する情報を検出できればよいため、撮像装置４による撮像画像の取得以外の手法（例えばレーザー等を用いた３次元スキャン）を用いてもよい。
【００３０】
次に、図３及び図４を参照して教示装置２について説明する。
図３は、本実施形態に係る詳細なロボットシステム構成例を示す図である。教示装置２は、図３に示すように、一般的なコンピューターと同様の構成であり、記憶部１６と、処理部１８と、表示部２０と、外部Ｉ／Ｆ部２２とを含む。
【００３１】
記憶部１６は、データベースを記憶したり、処理部１８等のワーク領域となったりするもので、その機能はＲＡＭ等のメモリーやＨＤＤ（ハードディスクドライブ）などにより実現できる。記憶部１６は、ワークデータベース２４（以下データベースを適宜ＤＢと表記する）と、ロボットＤＢ２６とを含み、ロボットＤＢ２６は、アームＤＢ２８と、ハンドＤＢ３０を含む。当該ロボットが複数のアームを備える場合は、アームＤＢ２８とハンドＤＢ３０とは複数個であってもよい。
【００３２】
ワークＤＢ２４はワークの大きさ、形状、姿勢等の情報を記憶する。
【００３３】
ロボットＤＢ２６はロボットに関するデータを記憶する。具体的にはアームＤＢ２８でアームの形状、可動範囲等を記憶し、ハンドＤＢ３０でハンドの形状、大きさ等の情報を記憶する。ただし、記憶部１６は図３の構成に限定されず、これらの一部の構成要素を省略したり、他の構成要素を追加したりするなどの種々の変形実施が可能である。
【００３４】
処理部１８は、記憶部１６からのデータや、外部Ｉ／Ｆ部２２において受信した撮像装置あるいはロボットからの情報等に基づいて種々の処理を行う。この処理部１８の機能は、各種プロセッサー（ＣＰＵ等）、ＡＳＩＣ（ゲートアレイ等）などのハードウェアや、プログラムなどにより実現できる。
【００３５】
処理部１８は、ワーク位置演算部３２と、画像処理部３４と、把持パターン情報取得部３６とを含む。処理部１８は図３の構成に限定されず、これらの一部の構成要素を省略したり、他の構成要素を追加したりするなどの種々の変形実施が可能である。
【００３６】
ワーク位置演算部３２は、ワークの位置を演算する。例えば外部Ｉ／Ｆ部２２において撮像装置４から取得したデータを用いてワーク位置を演算する。
【００３７】
画像処理部３４は、撮像装置４からの撮像画像情報を取得し、種々の画像処理を行う。なお、ここでは画像処理部３４は、教示装置２の処理部１８に設けられるものとしたがこれに限定されるものではない。画像処理部は撮像装置４に内蔵されてもよい。
【００３８】
把持パターン情報取得部３６は、記憶部１６のデータベースに記憶された情報に基づいて、動作指示を実行可能な把持パターン情報を取得する。具体的に取得される把持パターン群については後述する。
【００３９】
表示部２０は、各種の表示画面を表示するためのものであり、例えば液晶ディスプレイや有機ＥＬディスプレイなどにより実現できる。
【００４０】
外部Ｉ／Ｆ部２２は、教示装置２に対するユーザーからの入力等を行ったり、撮像装置４やロボット６からの情報を受け付けたりするためのインターフェイスである。ユーザーからの入力等に関しては、スイッチやボタン、キーボード、あるいはマウス等から構成されてもよい。
【００４１】
撮像装置４は、上述したように、例えばワークを撮影可能な位置に設けられ、主にワークの撮影を行う。本実施形態においては撮像画像情報をそのまま教示装置２に送信するものとするが、これに限定されるものではない。例えば、教示装置２の処理部１８の一部（例えば画像処理部３４等）を撮像装置４に持たせてもよい。その場合、撮像画像に対して画像処理が施された後の情報が出力されることになる。
【００４２】
また、ロボット６は、アーム１０及びハンド１２の他に制御部３８を含む。制御部３８は、教示装置２からの情報を受け付け、ロボット６の各部（アーム１０及びハンド１２等）の制御を行う。
【００４３】
３．把持姿勢情報の教示方法
次に、把持姿勢情報の教示方法について説明する。具体的には、フローチャートを用いて処理の流れを説明する。
図４は、本実施形態に係る入力受付画面の例を示した図である。教示装置２は表示部２０に図４に示すような入力受付画面を表示する。入力受付画面はハンド１２の把持点及び姿勢を入力する画面である。入力受付画面は、「座標と姿勢の入力」の把持点及び姿勢の入力を促す第１入力部Ｄと、「微調整」のＰｏｓｅＡ周りの回転の入力を促す第２入力部Ｅと、及びワークとハンド１２との位置関係をグラフィカルに表示する把持姿勢表示部Ｆと、を備える。
【００４４】
ワーク及びハンド１２は、入力受付画面の把持姿勢表示部Ｆにパーツ座標系を基準とするｘｙｚ軸座標で表示される。ワーク及びハンド１２はハンド座標系で表示されてもよい。ハンド１２は鉛筆型で表示される。ハンド１２は、鉛筆型の先端がハンド１２の先端位置（把持点）として表示される。ハンド１２は、鉛筆型の先の棒４０（ＰｏｓｅＡ）と棒４２（ＰｏｓｅＢ）とでハンド１２の姿勢として表示される。
【００４５】
教示装置２は、ユーザーに対して入力受付画面の第１入力部Ｄで把持点と姿勢との入力を促す。及び、教示装置２は、ユーザーに対して入力受付画面の第２入力部Ｅに微調整（上記回転後のＰｏｓｅＡ周りの回転）の入力を促す。なお、回転後とは、ワークに対してハンド１２の把持点と姿勢とがある程度決まった姿勢のことである。つまり現在の姿勢に対してＰｏｓｅＡ（棒４０）を軸に回転を指定することを促す。教示装置２は、このレイアウト設計に基づく各ユニットの設置領域上の把持姿勢情報を、ロボット６に教示する。
【００４６】
なお、図４の入力受付画面において、棒４０がハンド１２の前（先端）の方向を示し、ＰｏｓｅＡと呼び、棒４２の方向がハンド１２の指の開く方向を示し、ＰｏｓｅＢと呼ぶ。また、第１入力部Ｄ及び第２入力部Ｅのスライダーで入力、又は、エディットボックスに数値を入れ、Ｅｎｔｅｒキーで確定すると、図のハンド１２の把持点及び姿勢に反映される。また、微調整は現在のハンドのＰｏｓｅＡを軸に回転するので、ｘｙｚ軸周りの回転を変更した場合、ＰｏｓｅＡ周りの回転は０に戻してもよい。
【００４７】
ここで、入力受付画面に具体的な数値を設定して説明する。図４に示すように、第１入力部Ｄの把持点が（ｘ，ｙ，ｚ）＝（−４９，１５，２１）である。ワークを斜めから把持したい場合の姿勢が、ｘ軸周りの回転α＝３７度、ｙ軸周りの回転β＝１０度、ｚ軸周りの回転γ＝−３４度とした場合、上式（１）に代入すると、姿勢を回転させる前のハンド１２の前方向（ＰｏｓｅＡ）は（ｘ，ｙ，ｚ）＝（１，０，０）なので、領域ＧのＰｏｓｅＡに表示するように、（ｘ’，ｙ’，ｚ’）＝（０．８２，−０．３６，−０．４５）（なお、これは小数第３位を四捨五入）の方向を向いている。姿勢を回転させる前のハンド１２の指の開閉方向（ＰｏｓｅＢ）は（ｘ，ｙ，ｚ）＝（０，０，１）なので、（ｘ’，ｙ’，ｚ’）＝（０．１７，−０．５９，０．７９）（図示せず）となる。
【００４８】
この回転後にハンド１２の前方向（ＰｏｓｅＡ）はそのままで指の開閉方向（ＰｏｓｅＢ）だけを変えたいとき、軸周りの回転α，β，γの数値を変えて姿勢を合わせるのは困難なので、回転した状態でのハンド１２の前方向（ＰｏｓｅＡ）を軸として回転を指定する。
【００４９】
例えば、第２入力部Ｅの微調整が、ＰｏｓｅＡ周りの回転θ＝−２８度とした場合、回転軸のＰｏｓｅＡは（ａ，ｂ，ｃ）＝（０．８２，−０．３６，−０．４５）なので、式（２）に代入すると、領域ＧのＰｏｓｅＢが（ｘ”，ｙ”，ｚ”）＝（０．４１，−０．１９，０．８９）（なお、これは小数第３位を四捨五入）となる。
【００５０】
図５及び図７は、本実施形態に係る処理を説明するためのフローチャートである。図６は、フローチャートの説明に用いられる状況の具体例である。なお、具体例として図６に示したように、場所Ｐ１にあるワークを、面Ｃを下にして場所Ｐ２に移動する単腕ロボットの例を用いるが、図５のフローチャートの処理はこの具体例に限定されるものではない。
【００５１】
この処理が開始されると、まず、ステップＳ１０において、処理部１８はユーザーからの入力を受け付ける。具体的には例えば、「場所Ｐ１にあるワークを、面Ｃを下にして場所Ｐ２に置く」といった入力が考えられる。
【００５２】
そして、ステップＳ１２において、処理部１８は入力に応じてシナリオの作成処理を開始し、ステップＳ１４において、処理部１８はシナリオの作成が可能であるかの判定を行う。シナリオは例えば、（１）ワークの状況を確認する（２）ハンドでワークを把持する（３）ワークの面Ｃを下にして場所Ｐ２に置く、といったシナリオが考えられる。ステップＳ１４でシナリオの作成が不可能であった場合には、ステップＳ３０において、処理部１８は表示部２０にエラーを表示して処理を終了する。
【００５３】
ステップＳ１４でシナリオが作成可能であった場合には、ステップＳ１６において、処理部１８はシナリオを単位動作に分解した上で分析し、ステップＳ１８において、処理部１８はロボット６が動作可能かの判定を行う。
【００５４】
具体的には、上述（２）のハンド１２でワークを把持する、というステップに関しては、場所Ｐ１がアームの可動範囲内であるか、ハンド１２及びワークの形状、大きさから考えて把持可能であるか等の判定が行われる。
【００５５】
そして、ステップＳ１８でロボット６が動作可能であった場合には、ステップＳ２０において、処理部１８は全ての単位動作の分析が完了したかの判定を行い、完了していなければ次の単位動作の分析を行い、完了した場合にはステップＳ２２に移行する。また、ステップＳ１８において、動作不可能と判定した場合には、ステップＳ１２に戻ってシナリオを再作成する。
【００５６】
次に、ステップＳ２２において、処理部１８は全動作の分析を行い、ステップＳ２４において、処理部１８は動作の流れに不都合がないか確認する。動作可能であればステップＳ２６へ移行し、不可能であればステップＳ１２に戻ってシナリオを再作成する。
【００５７】
ステップＳ２６では、処理部１８は複数の把持パターンの候補が残った場合に、提示する把持パターンの選択を行う。
【００５８】
そして、ステップＳ２８において、処理部１８はロボット６への命令を作成し送信する。
【００５９】
なお、ステップＳ１８において単位動作分析の結果動作不可能とされた場合の対処例について説明する。例えば、場所Ｐ１あるいはＰ２が遠いため、アーム１０が届かないということであれば、双腕ロボットの場合もう一方のハンドを用いるシナリオに変更する。また、右手だけあるいは左手だけでは、場所Ｐ１とＰ２との両方に届かないという場合には、途中で持ち替えをするシナリオに変更する。ワークが大きく片手で把持できない場合には、両手のひらで挟んで持ち上げるシナリオに変更すればよい。
【００６０】
続いてステップＳ１０の入力における（２）ハンド１２でワークを把持する手法の入力について説明する。まず、図７に示すように、ステップＳ５０において、処理部１８は、入力受付画面の第１入力部Ｄで、ユーザーからパーツ座標系（第１座標系）におけるロボットによるワークの把持点と姿勢との入力を受け付ける。
【００６１】
次に、ステップＳ５２において、処理部１８は、ユーザーからパーツ座標系におけるロボットによるワークの把持点と姿勢との入力を基に表示部２０にハンド１２及びワークを入力受付画面の把持姿勢表示部Ｆに表示し、ユーザーからパーツ座標系におけるロボットによるワークの把持点と姿勢とに不都合がないか確認の入力を受け付ける。不都合がなければ、パーツ座標系におけるロボットによるワークの第１の把持姿勢を決定し、ステップＳ５４へ移行する。不都合があればステップＳ５０に戻ってユーザーからパーツ座標系におけるロボットによるワークの把持点と姿勢との入力を受け付ける。
【００６２】
次に、ステップＳ５４において、処理部１８は、入力受付画面の第２入力部Ｅで、ユーザーからハンド座標系（第２座標系）におけるロボットによるワークの姿勢の微調整の入力を受け付ける。
【００６３】
具体的には、現在のハンド１２の座標軸に対して姿勢の入力を受け付ける。つまり、第１の把持姿勢の画像を視覚的に入力受付画面の把持姿勢表示部Ｆに表示するとともに、ハンド座標系におけるロボットによるワークの第２の把持姿勢の入力を受け付ける。
【００６４】
次に、ステップＳ５６において、処理部１８は、ユーザーからの姿勢の微調整の入力を基に表示部２０にハンド１２及びワークを入力受付画面の把持姿勢表示部Ｆに表示し、ユーザーからの姿勢の微調整に不都合がないか確認の入力を受け付ける。不都合があればステップＳ５４に戻ってユーザーからの姿勢の微調整の入力を受け付け、不都合がなければ第２の把持姿勢を決定し、ステップＳ１０のサブルーチンを終了する。
【００６５】
上記ステップＳ５０〜Ｓ５６の手順により、パーツ座標系におけるワークの第１の把持姿勢を決定した後、ハンド座標系におけるワークの第２の把持姿勢の入力を受け付けることになる。また、第１の把持姿勢と第２の把持姿勢とを用いて、ロボットに教示する把持姿勢情報が決定され、上記ステップＳ２８において、処理部１８はロボット６へ把持姿勢情報を送信する。
【００６６】
本実施形態によれば、ワークとハンド１２とを表示した図を見ながらワークを把持するハンド１２の把持点と姿勢とを教示するとき、パーツ座標系で決定した第１の把持姿勢と、ハンド座標系で決定した第２の把持姿勢とを重ね合わせて視覚的に表示して、最終的な把持姿勢情報を決定するので、直感的に姿勢を調整しやすく、より正確に把持姿勢情報を教示することができる。また、パーツ座標系における第１の把持姿勢を決定した後、ハンド座標系における第２の把持姿勢を決定するので、直感的に把持姿勢情報を調整しやすい。
【００６７】
なお、以上のように本実施形態について詳細に説明したが、本発明の新規事項及び効果から実体的に逸脱しない多くの変形が可能であることは当業者には容易に理解できるであろう。したがって、このような変形例はすべて本発明の範囲に含まれるものとする。例えば、明細書又は図面において、少なくとも一度、より広義又は同義な異なる用語と共に記載された用語は、明細書又は図面のいかなる箇所においても、その異なる用語に置き換えることができる。またロボット制御装置及びロボットシステム等の構成、動作も本実施形態で説明したものに限定されず、種々の変形実施が可能である。
【符号の説明】
【００６８】
２…教示装置  ４…撮像装置  ６…ロボット  １０…アーム  １２…ハンド  １４…パレット  １６…記憶部  １８…処理部  ２０…表示部  ２２…外部Ｉ／Ｆ部  ２４…ワークＤＢ  ２６…ロボットＤＢ  ２８…アームＤＢ  ３０…ハンドＤＢ  ３２…ワーク位置演算部  ３４…画像処理部  ３６…把持パターン情報取得部  ３８…制御部  ４０，４２…棒。
【図１】
2015100874.tif 000005
【図２】
2015100874.tif 000006
【図３】
2015100874.tif 000007
【図４】
2015100874.tif 000008
【図５】
2015100874.tif 000009
【図６】
2015100874.tif 000010
【図７】
2015100874.tif 000011