(57)【特許請求の範囲】
【請求項１】
ロボットに動作を教示するためのロボット教示装置であって、
対象物体を把持あるいは吸着することにより保持する保持手段を有する機構と、
前記保持手段が前記対象物体を保持した状態の前記対象物体と前記保持手段の位置姿勢を計測する計測手段と、
前記計測手段で計測した前記位置姿勢に基づいて、ロボットのための動作指示を生成する生成手段と、
前記動作指示を記録する記録手段と、を備えることを特徴とするロボット教示装置。
【請求項２】
ロボットに動作を教示するためのロボット教示装置であって、
対象物体を把持あるいは吸着することにより保持する保持手段を有する機構と、
前記保持手段が前記対象物体を保持している間の、前記保持手段が前記対象物体に作用している保持力を計測する計測手段と、
前記計測手段で計測した前記保持力に基づいて、ロボットのための動作指示を生成する生成手段と、
前記動作指示を記録する記録手段と、を備え、
前記保持手段は、教示者が入力した最大の操作力に基づいた保持力を維持することを特徴とするロボット教示装置。
【請求項３】
ロボットに動作を教示するためのロボット教示装置であって、
対象物体を把持あるいは吸着することにより保持する保持手段を有する機構と、
前記保持手段が前記対象物体を保持している状態で発生する保持力を計測する計測手段と、
前記計測手段で計測した前記保持力のうち最大の保持力を用いてロボットのための動作指示を生成する生成手段と、
前記動作指示を記録する記録手段と、を備えることを特徴とするロボット教示装置。
【請求項４】
ロボットに動作を教示するためのロボット教示装置であって、
対象物体を把持あるいは吸着することにより保持する保持手段を有する機構と、
前記保持手段が前記対象物体を保持している間における、前記保持手段が前記対象物体に作用している保持力と、前記対象物体と前記保持手段の位置姿勢と、前記対象物体と前記保持手段の間の相対的な位置姿勢と、を計測する計測手段と、
前記計測手段で計測した前記保持力と、前記対象物体と前記保持手段の位置姿勢に基づいて、ロボットのための動作指示を生成する生成手段と、
前記動作指示を記録する記録手段と、
前記計測手段で計測した前記相対的な位置姿勢の変化に基づいて、前記生成手段で生成した前記動作指示に対する動作評価値を計算する評価手段と、
を備えることを特徴とするロボット教示装置。
【請求項５】
前記機構は、教示対象となるロボットのハンド部に対応した形状、もしくは機能を有することを特徴とする請求項１乃至４のいずれか１項に記載のロボット教示装置。
【請求項６】
前記機構は、教示者が操作力を入力するための操作力入力部と機械的に連動することにより、前記操作力入力部に加わった力によって駆動されることを特徴とする請求項１乃至５のいずれか１項に記載のロボット教示装置。
【請求項７】
前記機構は、教示者が入力した操作力に応じた電気的な信号により駆動されることを特徴とする請求項１乃至５のいずれか１項に記載のロボット教示装置。
【請求項８】
前記生成手段は、前記対象物体の位置を基準とした前記保持手段の位置姿勢に基づいて、前記動作指示を生成することを特徴とする請求項１乃至７のいずれか１項に記載のロボット教示装置。
【請求項９】
前記評価手段は、前記保持手段に発生する保持力、回転モーメント、または並進力に基づいて動作評価値を求めることを特徴とする、請求項４に記載のロボット教示装置。
【請求項１０】
前記評価手段は、前記計測手段で計測された保持動作と、計算によって模擬的に再現された保持動作との差異に基づいて動作評価値を求めることを特徴とする、請求項４または９に記載のロボット教示装置。
【請求項１１】
対象物体を把持あるいは吸着することにより保持する保持手段を含む機構であって、ロボットのハンド部に対応した形状または機能を有する前記機構を用いて前記ロボットに動作を教示するためのロボット教示装置の制御方法であって、
前記保持手段が対象物体を保持した状態の前記対象物体と前記保持手段の位置姿勢を計測する計測工程と、
前記計測工程で計測した前記位置姿勢に基づいて、前記ロボットのための動作指示を生成する生成工程と、
前記動作指示を記録する記録工程と、を有することを特徴とするロボット教示装置の制御方法。
【請求項１２】
対象物体を把持あるいは吸着することにより保持する保持手段を含む機構であって、ロボットのハンド部に対応した形状または機能を有する前記機構を用いて前記ロボットに動作を教示するためのロボット教示装置の制御方法であって、
前記保持手段が対象物体を保持している間の、前記保持手段が前記対象物体に作用している保持力を計測する計測工程と、
前記計測工程で計測した前記保持力に基づいて、前記ロボットのための動作指示を生成する生成工程と、
前記動作指示を記録する記録工程と、を有し、
前記保持手段は、教示者が入力した最大の操作力に基づいた保持力を維持することを特徴とするロボット教示装置の制御方法。
【請求項１３】
対象物体を把持あるいは吸着することにより保持する保持手段を含む機構であって、ロボットのハンド部に対応した形状または機能を有する前記機構を用いて前記ロボットに動作を教示するためのロボット教示装置の制御方法であって、
前記保持手段が対象物体を保持している状態で発生する保持力を計測する計測工程と、
前記計測工程で計測した前記保持力のうち最大の保持力を用いて前記ロボットのための動作指示を生成する生成工程と、
前記動作指示を記録する記録工程と、を有することを特徴とするロボット教示装置の制御方法。
【請求項１４】
対象物体を把持あるいは吸着することにより保持する保持手段を含む機構であって、ロボットのハンド部に対応した形状または機能を有する前記機構を用いて前記ロボットに動作を教示するためのロボット教示装置の制御方法であって、
前記保持手段が対象物体に作用している間における、前記保持手段が前記対象物体に作用している保持力と、前記対象物体と前記保持手段の位置姿勢と、前記対象物体と前記保持手段の間の相対的な位置姿勢と、を計測する計測工程と、
前記計測工程で計測した前記保持力と、前記対象物体と前記保持手段の位置姿勢に基づいて、前記ロボットのための動作指示を生成する生成工程と、
前記動作指示を記録する記録工程と、
前記計測工程で計測した前記相対的な位置姿勢の変化に基づいて、前記生成工程で生成した前記動作指示に対する動作評価値を計算する評価工程と、
を有することを特徴とするロボット教示装置の制御方法。
【請求項１５】
教示された動作に従って動作するロボットシステムであって、
請求項１乃至１０のいずれか１項に記載されたロボット教示装置と、
前記記録手段に蓄積された前記動作指示に基づいて動作するロボット部と、を備えることを特徴とするロボットシステム。
【請求項１６】
請求項１１乃至１４のいずれか１項に記載されたロボット教示装置の制御方法の各工程をコンピュータに実行させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ロボットに動作をプログラムするためのロボット教示技術に関する。
【背景技術】
【０００２】
近年、産業用ロボットの分野において、ロボットとその周辺環境を計算機で模擬的に再現し、ロボットの動作を教示するオフライン教示技術が開発されてきている。オフライン教示技術を用いた場合、工場内で動作するロボットを教示のために占有する必要がなく、生産効率の向上に寄与することが期待されている。
【０００３】
このようなオフライン教示技術の例として、特許文献１では対象物体上の「特定の位置」をロボットハンド中心部の移動先に指定して、その点で把持を行う手法が示されている。特許文献１によれば、「特定の位置」は、計算機のディスプレイで示されるＣＡＤデータを観察しながら指定することができ、実ロボットを用いることなく教示を行うことができる。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２０１３−２４４５６０号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら、ＣＡＤデータの誤差や力学的計算の再現性等の要因で、計算機で再現された模擬環境と現実環境に差異が生じた場合、オフラインで教示された把持位置や把持力では、計算通りの動作を行うことができず、教示が失敗してしまう課題がある。
【０００６】
本発明は、上記課題に鑑みてなされたものであり、より現実環境に即した教示環境での教示を可能とし、オフラインでの教示の失敗を減少することを目的とする。
【課題を解決するための手段】
【０００７】
上記の目的を達成するための本発明の一態様によるロボット教示装置は以下の構成を備える。すなわち、
ロボットに動作を教示するためのロボット教示装置であって、
対象物体を把持あるいは吸着することにより保持する保持手段を有する機構と、
前記保持手段が前記対象物体を保持した状態の前記対象物体と前記保持手段の位置姿勢を計測する計測手段と、
前記計測手段で計測した前記位置姿勢に基づいて、ロボットのための動作指示を生成する生成手段と、
前記動作指示を記録する記録手段と、を備える。
【発明の効果】
【０００８】
本発明によれば、現実環境と整合性の取れた教示環境での教示が可能になる。
【図面の簡単な説明】
【０００９】
【図１】第１実施形態におけるロボット教示システムの構成例を示す図。
【図２】第１実施形態におけるデータ処理装置の構成例を示す図。
【図３】第１実施形態における動作を説明する流れ図。
【図４】第２実施形態におけるロボット教示システムの構成例を示す図。
【図５】第２実施形態における動作を説明する流れ図である。
【図６】第３実施形態におけるロボット教示システムの構成例を示す図。
【図７】第３実施形態における動作を説明する流れ図である。
【図８】（ａ）は教示ハンドが対象物体の重心位置から近い位置で把持する様子を示す図、（ｂ）は、教示ハンドが対象物体の重心位置から離れた位置で把持する様子を示す図。
【図９】ロボットシステムを示す図。
【図１０】教示ハンドの他の形態を示す図。
【図１１】教示ハンドの他の形態を示す図。
【発明を実施するための形態】
【００１０】
以下、添付の図面を参照して、本発明の好適な実施形態のいくつかを説明する。なお、以下では、教示者が教示ハンドを使用して、対象物体の保持動作（たとえば、対象物体に対する把持位置と把持力）のロボット動作教示を行うロボット教示装置を例示して説明する。
【００１１】
一般的なオフラインロボット教示では、計算機で再現した模擬環境内で教示情報の計算を行っていた。しかしながら、この手法では、模擬環境と現実環境に差異がある場合は、計算通りの動作を行うことができず、教示が失敗してしまうという課題がある。本実施形態においては、実際に用いるロボットハンドと同等の形状および保持機能を有する教示ハンドを用いて実際の対象物体を把持する動作を行うことで、ロボットの動作を教示することを可能とする。これによって、現実環境と教示環境の整合性がとれた状態でのロボットの動作の教示が可能になる。
【００１２】
＜第１実施形態＞
図１に、第１実施形態による、ロボットの動作を教示するためのロボット教示装置の全体的な構成を示す。本実施形態のロボット教示装置は、教示者が教示ハンド１０１を用いて対象物体を把持するためのロボット動作教示を行う。ロボット教示装置は、教示者が直接扱う教示ハンド１０１と、教示ハンド１０１から得られた教示情報からロボット用の動作指示を生成するデータ処理装置１２０とを有している。
【００１３】
教示ハンド１０１は、教示者の操作によって操作力を入力する操作力入力部と、入力された操作力に応じて駆動して対象物体へ作用する機構を有する。本実施形態では、対象物体への作用として保持動作を行う機構を説明する。なお、教示ハンド１０１における対象物へ作用する機構は、教示対象のロボットのアームの先端等に装着されるハンド部と対応した形状を有する。教示ハンド１０１は、ロボット動作教示をするための教示機構部として機能する。本実施形態では、教示ハンド１０１が教示者の手１０２によって把持され、教示者の操作によって対象物体１０３を把持するように操作されることで、ロボット動作教示が行われる。なお、本実施形態では保持機構として教示者による把持が可能な教示ハンド１０１を例示するが、これに限られるものではない。すなわち、対象物体の保持動作が可能で、その保持動作が後述する教示計測部１１０により計測可能な保持機構であれば、いかなる形態であってもよい。
【００１４】
教示ハンド１０１は、教示者が入力した操作力に応じて駆動して対象物体を保持する保持機構を有する。教示ハンド１０１は、教示者により把持される把持部分に位置し、教示者の操作力を入力する操作力入力部として機能するトリガ１０４と、対象物体を把持するための保持部として機能するフィンガ１０５を有する。トリガ１０４とフィンガ１０５は、不図示の連動機構によって機械的に連動し、たとえばトリガ１０４を図中の右方向へ引く力が２つのフィンガ１０５によって物体を挟む力に変換される。この連動機構により、トリガ１０４を引く量に応じてフィンガ１０５の閉じ量が変化し、引く力に応じてフィンガ１０５の把持力が変化する。なお、フィンガ１０５は、教示対象のロボットに用いられているフィンガと同一の物、または同等のものを使用する。把持力センサ１０６は、フィンガ１０５で対象物体１０３を把持した際の把持力を出力する。この把持力センサ１０６は、たとえば弾性体とみなせるフィンガ１０５の基部に貼付された抵抗で構成されており、フィンガ１０５に把持力が発生して微小な歪みが発生すると、抵抗が伸長することで抵抗値が変化する。この抵抗に電圧を印加し、この抵抗値の変化を計測することで把持力を計測することができる。
【００１５】
位置姿勢計測センサ１０７は、教示ハンド１０１、対象物体１０３の位置姿勢を計測する。位置姿勢計測センサ１０７は、たとえばＣＣＤカメラで構成されており、教示ハンド１０１と対象物体１０３にそれぞれ装着された、矩形形状を持つ計測マーカ１０８、１０９を撮影する。撮像画像上の計測マーカ１０８、１０９は教示ハンド１０１、対象物体１０３の姿勢、つまり傾きによって台形状に歪んだ見え方で観察される。本実施形態では、教示計測部１１０は、この歪みとマーカの撮像画像上での大きさから、計測マーカ１０８、１０９とそれらを固定する教示ハンド１０１、対象物体１０３の位置と姿勢を計測する。
【００１６】
データ処理装置１２０において、教示計測部１１０は、教示ハンド１０１の保持機構による対象物体１０３の保持動作を計測する。たとえば、教示計測部１１０は、把持力センサ１０６と位置姿勢計測センサ１０７を用いて、フィンガ１０５の把持力と、教示ハンド１０１、対象物体１０３の位置姿勢を所定のタイミングで計測し、記録する。動作計算部１１１は、教示計測部１１０で計測した保持動作に基づいて、ロボットのための動作指示を計算する。より具体的には、動作計算部１１１は、たとえば、教示計測部１１０に記録されたフィンガ１０５の把持力と、教示ハンド１０１、対象物体１０３の位置姿勢を用いて、実際のロボットへ通知する動作指示を計算する。動作記録部１１２は、動作計算部１１１で計算した動作指示をメモリに記録し、蓄積する。記録された動作指示は、必要に応じて読み出して使用することができる。
【００１７】
データ処理装置１２０はたとえばコンピュータ装置により実現される。図２は、データ処理装置１２０のハードウェア構成例を示すブロック図である。図２において、ＣＰＵ１２１はＲＡＭ１２２またはＲＯＭ１２３に記憶されているプログラムを実行することにより各種処理を実現する。ＲＡＭ１２２は読み書き可能なランダムアクセスメモリであり、ＣＰＵ１２１が各種処理を実行する際の作業領域として用いられる。ＲＯＭ１２３は読み出し専用のメモリであり、ＣＰＵ１２１により実行されるプログラムや各種データを保持する。インターフェース１２４は、上述した把持力センサ１０６や位置姿勢計測センサ１０７とデータ処理装置１２０とを接続する。ハードディスク等の２次記憶装置１２５は、ＲＡＭ１２２に展開されて実行されるプログラムや各種データ（たとえば、動作計算部１１１で計算された動作指示）を格納する。また、２次記憶装置１２５は、動作記録部１１２が動作指示を記録ための記録領域を提供する。上述した各構成はバス１２６に接続されている。
【００１８】
なお、データ処理装置１２０の教示計測部１１０、動作計算部１１１、動作記録部１１２は、それぞれＣＰＵ１２１がＲＯＭ１２３またはＲＡＭ１２２に保持されているプログラムを実行することにより実現され得る。
【００１９】
次に、以上のような構成を備えた本実施形態のロボット教示装置の動作について説明する。図３に、教示者が教示ハンドを用いて対象物体を把持するためのロボット動作教示を行う操作（ステップＳ３５１〜Ｓ３５４）と、ロボット教示装置の動作（ステップＳ３０１〜Ｓ３０４）を説明する流れ図を示す。図３の流れ図において、ステップＳ３０１１〜Ｓ３０１２の動作は、対象物体を把持した際の教示ハンド１０１の位置姿勢を計測する把持位置姿勢計測（ステップＳ３０１）である。また、ステップＳ３０２１〜Ｓ３０２２の動作は、フィンガ１０５の対象物体１０３に対する把持力を計測する把持力計測（ステップＳ３０２）である。以下、流れ図のステップに従って動作説明を行う。
【００２０】
教示者は、教示ハンド１０１を把持して対象物体１０３の把持位置へと移動させて（ステップＳ３５１）、教示ハンド１０１のトリガ１０４を握り込む（ステップＳ３５２）。これにより教示者の操作力が教示ハンド１０１に入力され、フィンガ１０５はトリガ１０４に連動して閉方向（２つのフィンガ１０５で挟む方向）に動作する。なお、トリガ１０４にはスプリングが内蔵されており、トリガ１０４の握り込みを解放すると、トリガ１０４は元の位置に戻り、これに連動してフィンガ１０５は開方向に動作する。
【００２１】
教示計測部１１０は、把持力センサ１０６からの信号に基づいてフィンガ１０５に発生している把持力を計測しており、ステップＳ３０１１において計測された把持力Ｆに基づいてフィンガ１０５に把持力が発生しているかどうかを判定する。フィンガ１０５に把持力が発生している場合（Ｆ≠０の場合）は、教示計測部１１０は対象物体１０３を把持していると判定し、処理をステップＳ３０１２に進める。フィンガ１０５に把持力が発生していない場合（Ｆ＝０の場合）は、対象物体１０３を把持していないと判定し、ステップＳ３０１１の処理を繰り返す（すなわち、把持力Ｆが発生するのを待つ）。
【００２２】
ステップＳ３０１２において、教示計測部１１０は、位置姿勢計測センサ１０７により教示ハンド１０１と対象物体１０３の位置姿勢を計測し、たとえばＲＡＭ１２２に記録する。これにより、把持力が発生した時点の教示ハンド１０１と対象物体１０３の位置姿勢が計測される。位置姿勢の計測では、教示ハンド１０１、対象物体１０３に装着された計測マーカ１０８、１０９が位置姿勢計測センサ１０７により撮像される。教示計測部１１０は、この撮像により得られた撮像画像中の計測マーカの見えから、位置姿勢計測センサ１０７を原点とした場合の３軸の並進位置と、３軸回転による姿勢を求める。教示ハンド位置姿勢Ｐｈと対象物体位置姿勢Ｐｏは、以下の（１）式の様にそれぞれ回転行列Ｒｈ、Ｒｏと並進ベクトルＴｈ、Ｔｏを合わせた４×４のアフィン（Affine）行列で表わされる。
【００２３】
【数１】
0006660102.tif 000002
【００２４】
以上のようにして、対象物体１０３を教示ハンド１０１で把持したときの教示ハンド１０１と対象物体１０３の位置、姿勢が計測される。
【００２５】
次に、教示者は、対象物体１０３を把持した状態で教示ハンド１０１を動かす（ステップＳ３５３）。たとえば、教示者は、教示ハンド１０１で把持した対象物体１０３を持ち上げ、その後、降ろして対象物体１０３を置くという動作を行う。このような動作の間（たとえば持ち上げから降ろすまでの動作の間）、教示者は対象物体１０３が教示ハンド１０１から落下したり把持位置がずれたりしないように、トリガ１０４を必要十分な操作力で握りこんで対象物体１０３に対する把持力Ｆを発生させる。
【００２６】
教示者が、教示ハンド１０１のトリガ１０４に込めた力を緩め、トリガ１０４を解放することにより、フィンガ１０５の対象物体１０３への把持力が無くなり、教示ハンド１０１のフィンガ１０５は対象物体１０３を解放する（ステップＳ３５４）。この操作に応じて、教示計測部１１０は、ステップＳ３０２１において、把持力センサ１０６からの信号に基づいてトリガ１０４が解放されたこと（たとえば、把持力Ｆ＝０になったこと）を検出する。教示計測部１１０は、把持力が発生していると判定されてからも把持力を計測し続けている。ステップＳ３０２２において、教示計測部１１０は、把持力Ｆの発生が検出されてからトリガ１０４の解放が検出されるまでの期間において計測された把持力のうちの最大値である最大把持力Ｆｍａｘを、たとえばＲＡＭ１２２に記録する。
【００２７】
次に、ステップＳ３０３において、動作計算部１１１は、ステップＳ３０１２で記録された把持位置姿勢と、ステップＳ３０２２で記録された最大把持力に基づいてロボットの動作指示を計算する。たとえば、動作指示は、対象物体１０３を把持する際の指示位置姿勢Ｐｃと、指示把持力Ｆｃから構成される。対象物体１０３が様々な位置・姿勢にあっても対応可能とするために、以下の式（２）に示すように、対象物体１０３を基準とした相対座標で指示位置姿勢Ｐｃを記述する。
【数２】
0006660102.tif 000003
【００２８】
この指示位置姿勢Ｐｃを用いて、教示対象のロボットを動作させる際のロボットハンドの動作位置姿勢Ｐａは以下の（３）式で計算される。すなわち、ロボットの動作時に、ロボット座標系において検出された対象物体の位置姿勢をＰｏａとして、
【数３】
0006660102.tif 000004
となる。ここで、対象物体の位置姿勢Ｐｏａは、ロボットの動作時に検出される動的な値のため、ＰａはＰｃに基づいて毎回の動作直前に計算して求めればよい。
【００２９】
指示把持力Ｆｃは、本実施形態では、以下の（４）式に示すように、ステップＳ３０２２で記録された最大把持力Ｆｍａｘをそのまま使用する。
【数４】
0006660102.tif 000005
【００３０】
ステップＳ３０４において動作記録部１１２は、ステップＳ３０３で算出された動作指示である指示位置姿勢Ｐｃと指示把持力Ｆｃを、たとえば２次記憶装置１２５に記録する。記録された動作指示は、実際のロボット動作時に適宜読み出して使用することができる。また、複数回教示動作を行い、動作指示を逐次記録して蓄積することもできる。
【００３１】
以上のように、本実施形態における手順を実施することによって、ロボットハンドと同等の把持機能を有する教示ハンドを用いて、教示者が実際の対象物体を把持する動作でロボット動作教示を行うことができる。これにより、シミュレーションによる模擬環境の差異を問題とすることなく、実際のロボット環境と整合性のとれた教示が可能になる。
【００３２】
＜第２実施形態＞
次に、第１実施形態とは異なる形態の教示ハンドを用いたロボット教示装置の具体的な実施の一形態について説明する。
【００３３】
第１実施形態においては、図１における教示ハンド１０１のトリガ１０４とフィンガ１０５は、機械的に連動して動く機構を備えており、教示者の操作力がそのままフィンガ１０５の把持力となっていた。これに対して第２実施形態では、教示者の操作力に代わる動力を用いることで、人の標準的な把持力で破損するような壊れやすい対象物体でも、適切な把持力で把持してロボット動作教示を行うことを可能にする。
【００３４】
図４に、第２実施形態によるロボット教示装置の構成例を示す。図４では、教示者が教示ハンド１０１を用いて対象物体１０３を把持するためのロボット動作教示を行う、ロボット教示装置全体の構成を示す。図４における対象物体１０３、計測マーカ１０９、教示ハンド１０１の把持力センサ１０６と計測マーカ１０８、位置姿勢計測センサ１０７、教示計測部１１０、動作計算部１１１、動作記録部１１２は、第１実施形態（図１）で説明したとおりである。
【００３５】
ただし、第２実施形態の対象物体１０３は比較的小さく壊れやすい物体であり、許容される把持力が低いものとする。また、教示ハンド１０１に搭載されたトリガ１０４には、根元に握り込み力センサ４１２が搭載されており、教示者の手１０２でトリガ１０４を握りこんだ際の操作力を計測する。モータ４１３は、握り込み力センサ４１２により計測された操作力に基づいて回転の正転、逆転、かつ回転トルクを変化させる。フィンガ１０５は、モータ４１３の回転に連動して開閉する。この機構によりモータ４１３の回転に応じてフィンガ１０５の開閉が変化し、モータ４１３の回転トルクに応じてフィンガ１０５の把持力が変化する。
【００３６】
図５は、第２実施形態において、教示者が教示ハンド１０１を用いて対象物体１０３を把持する際の、教示ハンド１０１の動作を説明する流れ図である。なお、第２実施形態によるデータ処理装置１２０における動作は、第１実施形態（図３）のステップＳ３０１〜３０４と同様である。図５の流れ図において、ステップＳ３５１〜Ｓ３５４は教示者の動作を示し、ステップＳ５０１〜Ｓ５０６は、教示ハンド１０１の動作を示している。
【００３７】
教示者が、教示ハンド１０１を把持して、対象物体１０３の把持位置へと移動させる（ステップＳ３５１）。本ステップにおける手順は、第１実施形態と同様である。次に、教示者が、教示ハンド１０１のトリガ１０４を教示者の手１０２で力を込めて握りこむ（ステップＳ３５２）。すると、ステップＳ５０１において、教示ハンド１０１は握り込み力センサ４１２によりトリガ１０４に生じた力である操作力（握り込み力Ｇ）を検出する。
【００３８】
教示ハンド１０１は、握り込み力Ｇを検出すると、モータ４１３を正転方向に回転させる。モータ４１３が正転方向に回転すると、これに連動してフィンガ１０５が閉方向に動作する。なお、モータ４１３は握り込み力Ｇの発生に従って正転方向に回転し、駆動する最大許容トルクは、把持力Ｆが、最大で以下の（５）式に示すフィンガ１０５の許容把持力Ｆlimitを発生するトルクとなるよう制御する。把持力Ｆは、把持力センサ１０６により検出される。
【数５】
0006660102.tif 000006
【００３９】
ここで、αは任意の値を取るパラメータで、本実施形態においてはα＝０．１としている。これにより、人の標準的な把持力では破損するような対象物体１０３に対して繊細な把持を容易に行うことが可能になる。以上の動作を、図５の流れ図に沿って説明すると、握り込み力Ｇを検出した教示ハンド１０１は、ステップＳ５０２において、把持力センサ１０６からの信号に基づいて、把持力ＦがＦlimit以上になっていないかを判定する。そして、把持力Ｆが、Ｆlimit以上になっていなければ、教示ハンド１０１は、ステップＳ５０３において、モータ４１３を正転方向に回転させ、フィンガ１０５を閉じる。他方、ステップＳ５０２で把持力ＦがＦlimit以上と判定された場合は、モータ４１３を停止する。なお、教示者がトリガ１０４を放すと握り込み力Ｇは０となる。ステップＳ５０１において握り込み力Ｇが０の場合には、教示ハンド１０１は、モータ４１３を逆転方向に回転させ（ステップＳ５０４）、フィンガ１０５を開方向に動作させる。フィンガ１０５が開放端に到達した場合は（ステップＳ５０５）、教示ハンド１０１は、モータ４１３の逆転を停止する（ステップＳ５０６）。
【００４０】
以上のような教示ハンド１０１からの保持動作の信号を受信するデータ処理装置１２０は、図３のステップＳ３０１〜Ｓ３０４に示した動作を実行する。すなわち、ステップＳ３０１１において、教示計測部１１０は、把持力センサ１０６の信号に基づいて把持力Ｆを計測し、把持力が発生しているかどうかを判定する。把持力が発生している（Ｆ≠０）場合は、対象物体１０３を把持していると判定し、処理はステップＳ３０１２に進む。把持力Ｆ＝０の場合は把持していないと判定され、処理はステップＳ３０１１を繰り返す。
【００４１】
ステップＳ３０１２において、位置姿勢計測センサ１０７が、教示ハンド１０１と対象物体１０３の位置姿勢を計測する。ステップＳ３０１２では、教示計測部１１０は、教示ハンド１０１の位置姿勢Ｐｈと対象物体の位置姿勢Ｐｏを求める。こうして、把持力が発生した時点における教示ハンド１０１と対象物体１０３の位置姿勢が計測され、たとえば、ＲＡＭ１２２に記録される。
【００４２】
ステップＳ３５３において、教示者は、対象物体１０３を把持した教示ハンド１０１を動かして、対象物体１０３を持ち上げたり、降ろしたりする。その後、ステップＳ３５４において、教示者が、手１０２に込めた力をゆるめて、教示ハンド１０１のトリガ１０４の握り込みを解除する。
【００４３】
教示者による上記握り込みの解除によって、教示ハンド１０１の握り込み力センサ４１２が操作力Ｇ＝０となったことを検出する（ステップＳ５０１、ＮＯ）。上述のように、操作力Ｇ＝０が検出されると、ステップＳ５０４において、モータ４１３が逆転方向に回転し、フィンガ１０５が開方向に動作する。フィンガ１０５が最大開放状態（開放端）になると回転は停止する。教示計測部１１０は、教示者による上記操作によりトリガ開放を検出すると（ステップＳ３０２１）、把持力センサ１０６に把持力が発生している間（Ｓ３０１１（ＹＥＳ）〜Ｓ３０２１（ＹＥＳ））に計測された把持力Ｆのうちの最大値Ｆｍａｘを記録する。
【００４４】
ステップＳ３０３において、第１実施形態と同様に、動作計算部１１１は、ロボットの動作指示を計算する。すなわち、動作計算部１１１は、指示位置姿勢Ｐｃと指示把持力Ｆｃを求める。そして、ステップＳ３０４において、動作記録部１１２は、ステップＳ３０３において計算された動作指示である指示位置姿勢Ｐｃと指示把持力Ｆｃを（たとえばＲＡＭに）記録する。
【００４５】
以上のように、第２実施形態によれば、ロボットハンドと同等の把持機能を有する教示ハンド１０１を用いて、教示者が実際の対象物体１０３を把持する動作でロボット動作教示を行えるとともに、その把持力を適切に調整した上でロボット動作教示を行える。これにより、壊れやすい対象物体の場合にも、シミュレーションによる模擬環境の差異を問題とすることなく、実際のロボット環境と整合性のとれた教示が可能になる。
【００４６】
＜第３実施形態＞
第３実施形態では、教示動作にしたがって動作指示を計算するとともに、教示を行った環境と教示動作から、計算された動作指示を評価するロボット教示装置を説明する。第３実施形態では、第１実施形態の構成に動作評価値を求める構成を加える。動作評価値は、例えば、対象物体の把持力、教示ハンドの手首部分に加わる回転モーメントの大きさ、対象物体の把持時に生じた教示ハンドと対象物体間の相対的な把持位置姿勢変化、に基づいて教示動作の評価を行うことにより求められる。これにより、実際のロボットの把持動作時に、類似した複数の動作指示から一つを選択して動作を行う場合においても、動作評価値がより良好な動作指示を選択することで、より確実な把持動作が可能となる。
【００４７】
図６に、第３実施形態によるロボット教示装置全体の構成を示す。第１実施形態と同様に、教示者が教示ハンド１０１を用いて対象物体１０３を実際に把持することで、ロボットが対象物体を把持するためのロボット動作教示を行う例を説明する。図６における対象物体１０３、計測マーカ１０９、トリガ１０４、フィンガ１０５、把持力センサ１０６、計測マーカ１０８と、位置姿勢計測センサ１０７、教示計測部１１０、動作計算部１１１、動作記録部１１２は、第１実施形態（図１）と同様の構成である。
【００４８】
第３実施形態の教示ハンド１０１は、手首力センサ６１３を有する。手首力センサ６１３は、教示ハンド１０１の手首に当たる部分に設置されており、手首の回転軸方向に発生する３軸の回転モーメントを計測する。また、第３実施形態のデータ処理装置１２０は、動作評価部６１４を有する。動作評価部６１４は、教示計測部１１０で記録した、最大把持力、最大回転モーメント、対象物体の把持時に生じた、教示ハンド１０１と対象物体１０３の間の把持位置姿勢変化を用いて、教示動作の品質を表す動作評価値を求める。
【００４９】
図７に、第３実施形態によるロボット動作教示の処理を説明する流れ図を示す。図７の流れ図では、教示者が教示ハンドを用いて対象物体を把持するためのロボット動作教示を行い、動作評価値を求める一連の手順が説明される。図７の流れ図において、ステップＳ３０１１、Ｓ３０１２、Ｓ７０１０は対象物体の把持位置姿勢計測（ステップＳ３０１）、ステップＳ３０２１〜Ｓ３０２２は対象物体に対する把持力計測（ステップＳ３０２）、ステップＳ７０１１〜Ｓ７０１３は動作評価値取得（Ｓ７０１）である。以下、流れ図のステップに従って説明を行う。
【００５０】
ステップＳ３０１〜Ｓ３０２により示される処理は、第１実施形態とほぼ同様である。ただし、ステップＳ３０１２以降、トリガが解放されるまで（ステップＳ３０２１でＹＥＳと判定されるまで）の間、教示ハンド１０１と対象物体１０３の位置姿勢の計測と記録が継続される。また、Ｓ７０１０では、教示計測部１１０は手首力センサ６１３からの信号による回転モーメントの計測、記録を開始する。回転モーメントの計測、記録は、把持位置姿勢の計測、記録と同様に、トリガ解放が検出されるまで（ステップＳ３０２１でＹＥＳと判定されるまで）継続される。
【００５１】
ステップＳ７０１において、動作評価値が取得される。まず、ステップＳ７０１１において、動作評価部６１４は、位置姿勢計測センサ１０７を用いて計測した、ステップＳ３０２２でのトリガ解放の検出直前における教示ハンド１０１と対象物体１０３の位置姿勢をメモリから読み出す。そして、動作評価部６１４は、把持力の発生検出直後（Ｓ３０１２）において取得した位置姿勢（教示ハンド１０１と対象物体１０３との相対的な位置姿勢）からの変化を計算し、記録する。こうして、把持の開始時と終了時における、対象物体１０３と教示ハンド１０１（フィンガ１０５）の相対的な位置姿勢の変化（すなわち、ずれ）が計算され、記録される。なお、Ｓ３０１２における位置姿勢の計測は、第１実施形態と同様に計測マーカ１０８、１０９を用いて行われる。Ｓ７０１１では、動作評価部６１４は、把持力Ｆの発生時の教示ハンドの位置姿勢Ｐｈ、Ｐｏと、トリガ解除時の教示ハンドの位置姿勢Ｐｈ２、Ｐｏ２を用いて、教示ハンド１０１と対象物体１０３との間の位置変化Ｔｄと姿勢変化Ｒｄを求める。これらは、以下の式（６）で表わされる。
【００５２】
【数６】
0006660102.tif 000007
【００５３】
ここで、Ｒｄは回転軸表現によるベクトルで、
【数７】
0006660102.tif 000008
とした時、下記の式（８）を満たす。
【数８】
0006660102.tif 000009
【００５４】
次に、テップＳ７０１２において、動作評価部６１４は、対象物体１０３を把持している間（ステップＳ３０１１のＹＥＳ〜Ｓ３０２１のＹＥＳ）に手首力センサ６１３により計測された回転モーメントの最大値を記録する。回転モーメントの最大値である最大回転モーメントＭｍａｘは、手首位置における回転方向３軸のベクトルとして以下の（９）式で表わされる。
【数９】
0006660102.tif 000010
【００５５】
ステップＳ７０１３において、動作評価部６１４は、教示動作の品質を表す動作評価値Ｅｃを計算する。動作評価値Ｅｃは、ステップＳ７０１１〜Ｓ７０１２において取得された、最大把持力Ｆｍａｘ、最大回転モーメントＭｍａｘ、対象物体１０３の把持時に生じた、教示ハンド１０１と対象物体１０３の間の把持位置姿勢変化Ｒｄ、Ｔｄを用いて、以下の式（１０）により算出される。
【数１０】
0006660102.tif 000011
【００５６】
ここで、β、γ、λ、εは、任意の値を取るパラメータであり、各項に対する重みを表す。上式は、下記の基準に従って動作評価値Ｅｃを計算している。
１．最大把持力は電力消費やモータへの要求回転トルクの点から、小さいほど望ましい．
２．教示ハンド１０１と対象物体１０３を横から観察した様子を図８（ａ）、図８（ｂ）に示す。これらの図に示されるように、回転モーメントは、対象物体１０３の重心位置８０１から近い位置８０２で把持する場合（図８（ａ））より、離れた位置８０３で把持する（図８（ｂ））場合の方が大きくなる。このような回転モーメントによる把持のずれを生じる可能性を最小限とするため、最大回転モーメントは小さいほど望ましい．
３．把持位置姿勢変化は、把持のずれを意味しており、対象物体が落下する可能性を最小限とするため、小さいほど望ましい．
以上から、動作評価値Ｅｃの値は、小さいほど好ましい（良好な評価値である）。
【００５７】
ステップＳ３０４において、動作計算部１１１は、第１実施形態と同様の手順によりロボットの動作指示、すなわち、指示位置姿勢Ｐｃと指示把持力Ｆｃを求める。そして、ステップＳ３０４において、動作記録部１１２は、ステップＳ３０４において計算した動作指示である指示位置姿勢Ｐｃおよび指示把持力Ｆｃと、ステップＳ７０１（Ｓ７０１３）において取得した動作評価値Ｅｃを一対一に対応する形式で記録する。
【００５８】
以上のような第３実施形態の構成によれば、類似した把持姿勢による動作指示が複数教示されているような状況において、対応する動作評価値Ｅｃで評価することで、使用する動作指示を選択することができる。すなわち、動作評価値Ｅｃを、複数の動作指示から最良の動作指示を選択するための指標として用いることができる。
【００５９】
以上のように、第３実施形態における手順を実施することによって、ロボットハンドと同等の把持機能を有する教示ハンドを用いて、教示者が実際の対象物体を把持する動作でロボット動作教示を行うことができる。さらに、実際のロボットの把持動作時に、類似した複数の動作指示から一つを選択して動作を行う場合においても、候補中で動作評価値が最少となる動作指示を選択することで、対象物体のずれや落下の可能性を最小限にした確実な把持動作が可能となる。また、複数回の動作教示を行って、動作指示と動作評価値を蓄積し、その中から良好な動作指示を抽出することで、実際のロボット動作をより最適に行うことができる。
【００６０】
＜その他の実施形態＞
以下では、上述した各実施形態に適用可能な主な変形例を説明する。
（同等のフィンガや対象物体を用いる例）
第１実施形態〜第３実施形態における教示ハンド１０１のフィンガ１０５と対象物体１０３は、教示対象のロボットの動作に用いられているハンド部（たとえばフィンガ）、対象物体と同一の物を使用しているが、これに限るものではない。形状、重量、硬さ、表面の摩擦などの各機能が同等と扱ってよいものであれば、これに代替して模擬的なフィンガ、模擬的な対象物体を用いてもよい。例えばこれらを３Ｄプリンタによって作成することで、実ロボットで用いる実物のフィンガ、対象物体を不要とすることもできる。
【００６１】
（その他の教示ハンドの形態）
また、第１〜第３実施形態における教示ハンドは、教示者の操作によって操作力を入力する操作入力部がフィンガと隣接して配置されているが、この形態に限るものではない。操作者が教示ハンドを保持可能で、かつ操作力を入力できる機能を有していれば、どのようなものでもよい。
【００６２】
例として、図１０（ａ）、（ｂ）、図１１（ａ）に、手を入れにくい入り組んだ場所での使用を考慮した教示ハンドの例を示す。図１０（ａ）では、手を伸ばして届きにくい位置の対象物体を把持するために、操作力入力部１００１とフィンガ１０５を離した配置としている。図１０（ｂ）では、障害物などで手が入れられる位置が限定されており、対象物体が異なる方向に存在する場合を想定して、操作力入力部１００１とフィンガ１０５とを異なる方向に向けた配置としている。図１１（ａ）では、より細かい取り回しを行う場合を想定し、教示者が操作する操作力入力部１１０１と、作業環境で動作させるフィンガ１０５を分離した配置としている。操作力入力部１１０１から教示者が入力した操作力（トリガ１０４に対する操作力）は、ワイヤ１１０３を介してフィンガ１０５に伝達される。このワイヤ１１０３は、自転車のブレーキ力を伝達するワイヤと同様の構成を有する。
【００６３】
ただし、第２実施形態に準じる教示ハンドの場合は、操作力を電圧、抵抗値、ＰＷＭなどの電気的な信号に変換して伝送する導線もしくは無線送受信装置を代わりに使用する。また、教示者が分離したフィンガ１０５を保持するために、ハンドル１１０２がフィンガ１０５の基部に付加されている。
【００６４】
また、操作力入力部も、教示者が保持しながら十分に操作力を入力できる形態であれば、どのようなものでもよい。例えば、教示者が教示ハンドを把持するグリップ部分の全体をトリガにすることで、握力に応じて操作力が入力されるようにしてもよい。これにより、より強い操作力を入力することができる。
【００６５】
（その他のセンサを用いる例）
第１実施形態〜第３実施形態における把持力センサ１０６は抵抗で構成されていたが、これに限るものではない。例えば、弾性体とみなせるフィンガ１０５の基部に対して直角になる形で、平行に二枚の電極を配置し、交流電流を流して、微小な歪みで発生した電極間の静電容量の変化を計測することで、把持力を計測してもよい。これにより、直接変形する部分を最小限として、把持力センサを長寿命とすることができる。
【００６６】
また、第１実施形態〜第３実施形態における位置姿勢計測センサ１０７は、ＣＣＤカメラで計測マーカ１０８、１０９を撮像する形式としていたが、これに限るものではない。例えば、ＣＣＤカメラに相当する位置に、磁界を発生するソースコイルを配置し、計測マーカに相当する位置に磁界を計測するセンサコイルを配置してもよい。ソースコイルから時分割で変化する磁界を発生させ、センサコイルでその磁界変化を検出することで、ソースコイルに対するセンサコイルの位置姿勢を計測することができる。これにより、ＣＣＤカメラと計測マーカが、人体その他の障害物で遮られてしまうような状況においても、位置姿勢を計測することができる。
【００６７】
（座標軸の取り方）
また、第１実施形態〜第３実施形態における動作計算部１１１は、ステップＳ３０３に示すように、ロボットの動作指示として、対象物体１０３を基準とした座標系における指示位置姿勢Ｐｃを計算しているが、これに限るものではない。たとえば、対象物体が毎回同一位置に置かれていることが保障されている場合は、教示ハンド位置姿勢Ｐｈをそのまま用いてもよい。この場合は、教示ハンド位置姿勢Ｐｈを計測した座標系と、教示対象のロボットの座標系を同一とするか、同一に扱えるよう適切に座標変換を行えばよい。
【００６８】
（対象部品の姿勢を合わせて出力）
また、ロボットが把持動作を行う際には、対象物体が置かれている姿勢も把持動作の成否に大きく影響してくるため、対象物体の回転行列Ｒｏを動作指示として合わせて出力してもよい。実際のロボットの動作時に、この対象物体の姿勢である回転行列Ｒｏを参照し、計測した対象物体の姿勢と最も近い動作指示を選択することで、把持動作の失敗をより削減することができる。
【００６９】
（ラチェット駆動ハンド）
また、第１実施形態、第３実施形態における教示ハンド１０１は、トリガ１０４とフィンガ１０５が機械的に連動して開閉する機構を備えていたが、これに限るものではない。たとえば、ボタン等での解除動作をおこなうまでトリガ１０４に生じた最大の操作力を維持する位置で留まるようなラチェット機構を加えてもよい。これにより、教示者は一旦握り込んだ力を維持することなく、容易に把持動作を継続することができる。この時、ユーザによるトリガ解除動作（ステップＳ３５４）は、先述のボタン等での解除動作で代替されることになる。
【００７０】
また、第２実施形態における教示ハンド１０１も同様に、ボタンによる解除動作をおこなうまで、フィンガ１０５の把持力は握り込み力センサに発生した最大操作力を維持する様にしてもよい。これにより、同様に教示者は一旦握り込んだ力を維持することなく、容易に把持動作を継続することができる。この時、教示者によるトリガ解除動作（ステップＳ３５４）は、先述のボタン等での解除動作で代替されることになる。
【００７１】
（トリガ以外の操作力入力部）
また、第２実施形態における教示ハンド１０１は、トリガ１０４を操作力入力部としているが、これに限るものではない。操作力を値として入力できる構成であれば、教示者が力を入れて握り込む必要のないボリューム状の操作力入力部などを用いてもよい。これにより、教示者が握り込む力で疲労することなく、持続的に操作力を入力することができる。
【００７２】
（吸着ハンド）
また、第２実施形態における教示ハンド１０１は、フィンガ１０５を開閉して対象物体を把持しているが、これに限るものではない。たとえば、教示者の操作力に応じて、吸着力を変化させる吸着ハンドにより、対象物体を吸着することで保持する等、把持以外の機能を有する保持機構を用いてもよい。これにより、把持以外の保持力（たとえば吸着力）を含めた各種保持動作の教示を行うことができる。
【００７３】
（その他の保持以外のハンド）
上記実施形態では、教示ハンド１０１における対象物体へ作用する機構として、フィンガ１０５を開閉して対象物体を把持する構成を説明したが、対象物体への作用としてはこのような把持などの保持動作に限るものではない。例えば、図１１（ｂ）に示すように、教示者の操作力に応じて、回転力を発生し、締め付けトルクを変化させるレンチ１１１１や、ドライバーを上記機構として採用してもよい。レンチ１１１１の基部には、トルクセンサ１１１２が付加され、これにより、トルクレンチのように所定のトルクでボルトなどのネジ締結を行う動作の教示を行うことができる。このような教示ハンドにおいても、上記実施形態と同様に、作用状態として、計測マーカ１０８に基づく教示ハンドの位置姿勢と、対象物体に与えている回転力をトルクセンサ１１１２から取得することにより、ロボットの動作指示を得ることができる。
【００７４】
（力の対応変化）
また、第２実施形態における教示ハンド１０１は、対象物体が人の標準的な把持力で破損するような壊れやすい物を想定しており、ステップＳ５０２におけるαを１よりも小さくしているが、これに限られるものではなく、αを１より大きくしてもよい。αを１よりも大きくすることにより、教示者の通常の把持力では滑ってしまうような対象物体に対して、より強力な把持力によってずれを生じることなく対象物体の把持を行い、動作教示を行うことができる。なお、このような場合はモータ４１３もより強力な回転トルクを出力可能なものに交換するのが望ましい。
【００７５】
また、ステップＳ５０２におけるαは固定値としているが、人の知覚特性や把持力の範囲を考慮して非線形等に変化させてもよい。たとえば指数関数的に把持力を変化させることで、小さい把持力が求められる場合には繊細な把持力の制御が可能となり、大きい把持力が求められる場合には、教示者が楽に維持できる操作力で強力な把持力を出力することができるようになる。
【００７６】
（力センサによる部品組み付けへの応用）
第３実施形態における手首力センサ６１３は、手首の回転軸方向に発生する３軸の回転モーメントを計測し、動作評価値の計算に用いているが、これに限られるものではない。回転モーメントの計測以外にも、たとえば３軸の並進力を計測してもよい。このように、手首の並進軸方向に発生する３軸の力を計測することで、把持動作以外の操作についての動作教示を行うことができる。たとえば、対象部品を把持して、特定の部位に力加減をしながらはめ込みを行うような作業の教示を行うことができる。この場合、ステップＳ７０１２で最大回転モーメントＭｍａｘを記録する手順と同様に最大並進力Ｓｍａｘを記録し、ステップＳ７０１３の動作評価値Ｅｃの計算に反映させればよい。
【００７７】
（シミュレーションとの組み合わせ）
また、第３実施形態における動作評価部６１４は、最大把持力、最大回転モーメント、把持位置姿勢変化に基づいて動作評価値を求めているが、これに限るものではない。ロボットとその周辺環境を計算機で模擬的に再現し、ロボットの動作を教示するオフライン教示と組み合わせてもよい。例えば、オフライン教示において計算によって再現された模擬教示動作による最大把持力、最大回転モーメント、把持位置姿勢変化と、第３実施形態の環境での教示動作で発生したそれらの差異を比較することで、動作教示の評価を行うことができる。両者の数値が極端に異なるような場合には、シミュレーション環境もしくは教示環境のいずれかに問題が存在すると推測し、低評価とする。これにより、シミュレーション環境との整合性も含めた動作評価値の計算を行い、より確実で失敗の少ないロボットの動作教示が可能になる。
【００７８】
（ロボットシステムを含めた例）
また、第１実施形態〜第３実施形態における構成は、計算した動作指示を動作記録部に記録しておき、教示対象のロボットが動作する際には動作記録部から動作指令を読み出して使用する形式としていたが、これに限るものではない。例えば、図９に示すように第１実施形態における構成の部分をロボット教示部９０１として、これに教示対象のロボット部９０２を加えた、一つのロボットシステムとしてもよい。この構成の場合、第１実施形態と同様の手順によって動作指令が動作記録部１１２に記録された後、下記のようにロボット部９０２が動作する。
【００７９】
ロボット部９０２の環境計測部９０３が、位置姿勢計測センサ９０４を用いて対象物体９０５の位置姿勢Ｐｏａを認識する。さらに、動作生成部９０６が、第１実施形態におけるステップＳ３０３に示した動作位置姿勢Ｐａを計算する。ロボットアーム９０７は、動作位置姿勢Ｐａを目標位置としてアームを操作し、対象物体９０５を把持する。これにより、教示者が動作教示を行った直後に教示対象のロボットが実動作するように構成することができるため、より迅速で正確な教示が可能になる。また、動作教示と教示対象のロボットの実動作を比較することで、動作教示が妥当かどうかの判断も容易になる。動作教示が妥当であれば教示を終了し、問題があれば再教示を行うようにしてもよい。これにより、より確実な動作教示が可能になる。また、動作教示の妥当性を教示者が採点し、動作評価部が計算する動作評価値に反映させてもよい。これにより、特定のパラメータのみで計算する動作評価値に加えて、教示者の主観的な意図も含まれた動作教示の評価が可能となるため、より教示者の意図に沿った教示が可能になる。
【００８０】
（コンピュータによる実現例）
また、第１実施形態〜第３実施形態におけるデータ処理装置１２０（たとえば教示計測部１１０、動作計算部１１１、動作記録部１１２、動作評価部６１４）は、それらの機能を実現するソフトウエアのプログラムコードを記録した記録媒体を、システムあるいは装置に供給する形式としてもよい。本発明の目的は、そのシステムあるいは装置のコンピュータ（またはＣＰＵまたはＭＰＵ）が記録媒体に格納されたプログラムコードを読み出し実行することによっても、達成される。この場合、記憶媒体から読み出されたプログラムコード自体が前述した実施形態の機能を実現することとなり、そのプログラムコードを記憶した記憶媒体は本発明を構成することになる。
【００８１】
プログラムコードを供給するための記憶媒体としては、例えば、フレキシブルディスク、ハードディスク、光ディスク、光磁気ディスク、ＣＤ−ＲＯＭ、ＣＤ−Ｒ、磁気テープ、不揮発性のメモリカード、ＲＯＭ、ＤＶＤなどを用いることができる。
【００８２】
また、コンピュータが読み出したプログラムコードを実行することにより、前述した実施形態の機能が実現される。そのプログラムコードの指示に基づき、コンピュータ上で稼動しているOperating System（ＯＳ）などが実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれる。
【００８３】
さらに、記憶媒体から読み出されたプログラムコードが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書きこまれる。そのプログラムコードの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるＣＰＵなどが実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれる。
【００８４】
＜各実施形態の効果＞
第１実施形態では、ロボットハンドと同等の把持機能を有する教示ハンドを用いて、教示者が実際の対象物体を把持する動作でロボット動作教示を行うことができる。これにより、シミュレーションによる模擬環境の差異を問題とすることなく、実際のロボット環境と整合性のとれた教示が可能になる。
【００８５】
第２実施形態では、ロボットハンドと同等の把持機能を有する教示ハンドを用いて、教示者が実際の対象物体を把持する動作で、かつ把持力を適切に調整した上でロボット動作教示を行うことができる。これにより、壊れやすい対象物体の場合にも、シミュレーションによる模擬環境の差異を問題とすることなく、実際のロボット環境と整合性のとれた教示が可能になる。
【００８６】
第３実施形態では、ロボットハンドと同等の把持機能を有する教示ハンドを用いて、教示者が実際の対象物体を把持する動作でロボット動作教示を行うことができる。さらに、実際のロボットの把持動作時に、類似した複数の動作指示から一つを選択して動作を行う場合においても、候補中で動作評価値が最少となる動作指示を選択することで、対象物体のずれや落下の可能性を最小限にした確実な把持動作が可能となる。また、複数回の本実施形態による動作教示を行って、動作指示と動作評価値を蓄積し、その中から良好な動作指示のみを抽出することで、実際のロボット動作をより最適に行うことができる。
【００８７】
＜定義＞
本発明における教示機構部は、対象物体を保持し、動作教示できるものであればどのようなものであってもよい。一例が第１実施形態の教示ハンドである。第１実施形態における教示ハンドはフィンガによる対象物体を把持することで保持を行っているが、吸着ハンドを用いて保持を行ってもよい。
【００８８】
また、本発明における教示計測部は、動作教示を計測できるものであれば、どのようなものであってもよい。一例が、把持力センサと位置姿勢計測センサを用いて計測を行う第１実施形態の教示計測部である。
【００８９】
また、本発明における動作計算部は、ロボットの動作指示を計算できるものであれば、どのようなものであってもよい。一例が、第１実施形態における動作計算部である。また、上記の教示計測部、動作計算部、動作評価部は、それらの機能を実現するソフトウエアのプログラムコードを記録した記録媒体を、システムあるいは装置に供給する形式としてもよい。
【符号の説明】
【００９０】
１０１：教示ハンド、１０２：教示者の手、１０３：対象物体、１０４：トリガ、１０５：フィンガ、１０６：把持力センサ、１０７：位置姿勢計測センサ、１０８，１０９：計測マーカ、１１０：教示計測部、１１１：動作計算部
【図１】
0006660102.tif 000012
【図２】
0006660102.tif 000013
【図３】
0006660102.tif 000014
【図４】
0006660102.tif 000015
【図５】
0006660102.tif 000016
【図６】
0006660102.tif 000017
【図７】
0006660102.tif 000018
【図８】
0006660102.tif 000019
【図９】
0006660102.tif 000020
【図１０】
0006660102.tif 000021
【図１１】
0006660102.tif 000022