以下、本発明の実施形態について図面を参照しながら説明する。
図1は本発明の一実施形態に係るロボット制御装置とそれによって制御されるロボット装置の構成を示す模式的な側面図である。
図1に示す本実施形態のロボット制御装置によって制御されるロボット装置4は、例えば、マニピュレータ1を有し、このマニピュレータ1により、ワーク101の把持、運搬、加工及び他の部材への組立が可能となされているものである。
マニピュレータ1は、複数のアームを接続した多関節型アームで構成されている。このマニピュレータ1は、後述するロータリアクチュエータ4a〜4f(図5参照)によって空間6自由度の位置及び姿勢を決定することができる。各ロータリアクチュエータ4a〜4fはコントローラ3によって制御される。
マニピュレータ1cの先端側には、ワーク101を把持するツール5が設けられている。このツール5は、コントローラ3によって制御される。
図2は図1の操作装置の構成を示す斜視図である。操作装置6は、この実施の形態においては、図2に示すように、ロボット装置4の可動部(マニピュレータ1)に取り付けられている。ただし、この操作装置6は、後述するように、ロボット装置4から離れた位置に設置して用いてもよい。この操作装置6は、固定レバー7と操作レバー8と表示部9とを有している。
固定レバー7は、イネーブルスイッチ10とリセットスイッチ11とを有している。イネーブルスイッチ10は、初期位置(以下、非押圧位置という。)と、図2中矢印Aで示すように、非押圧位置よりも押圧された押圧位置(以下、中間位置という。)と、中間位置よりも押圧された押込み位置との3つのポイントのいずれかとなされるようになっている。なお、イネーブルスイッチ10は、外力が加えられない場合には、非押圧位置に復帰するようになっている。リセットスイッチ11は、押圧するとロボット装置4の制限されていた動作が解除されるようになっている。
そして、コントローラ3は、イネーブルスイッチ10が押圧位置であるときに、ロボット装置4のマニピュレータ1の手動操作を可能とする。この手動操作は、操作レバー8を操作することによって行われる。
操作レバー8(請求項中の操作子に相当)は、本実施形態では、作業員(以下、「操作者」という。)によって操作される略円柱形のジョイスティックを用いて構成されている。この操作レバー8は、原点から360°の各方向に平行移動及び傾動させることができる。また、操作レバー8は、原点に対して操作レバー8の中心軸方向に移動させることができる。さらに、操作レバー8は、原点に対して操作レバー8の中心軸の周りに回転可能に構成されている。操作レバー8を前後左右又は上下に移動させると、ツール5のツールセンターポイントが前後左右又は上下に移動する。操作レバー8を前後左右に傾動させるとツールセンターポイントが前後左右に旋回する。操作レバー8をその中心軸の周りに回転させると、ツールセンターポイントが水平面内で旋回する。操作レバー8の移動や傾動、回転とその操作量は、力覚センサ8aによって検出することができる。作業員が操作を止めると、操作レバー8は原点に復帰する。
力覚センサ8aは、操作者による操作レバー8の操作量を操作方向別に検出するためのものである。本実施形態では、力覚センサ8aとして6軸力覚センサを用いている。この力覚センサ8aは、力覚センサ8aに加わる力3成分(Fx,Fy,Fz)とモーメント3成分(θx,θy,θz)をそれぞれ検出して、それぞれに応じた内容の信号を出力する。
操作レバー8の先端には、押圧式のトリガスイッチ8bが設けられている。トリガスイッチ8bは、ロボット装置4によるワーク101の取扱中に、必要に応じて操作レバー8の操作者により押圧操作される。トリガスイッチ8bが押圧操作されると、トリガ信号がコントローラ3に出力される。
表示部9は、操作レバー8によるロボット装置4の手動操作の可否を示す表示灯9aと、操作レバー8によるロボット装置4の手動操作のガイドメッセージ等を表示する液晶表示器9b(請求項中の報知手段に相当)とを有している。
表示灯9aは、ロボット装置4の手動操作が可能であることを告知するものである。この表示灯9aは、イネーブルスイッチ10が押圧位置にあるときに点灯し、ロボット装置4の手動操作が可能となっていることを告知(表示)する。このとき、操作者は、表示灯9aが点灯したことを確認し、操作レバー8によりロボット装置4を手動操作することができることを認識してから、操作レバー8によりロボット装置4を手動操作することができる。
そして、操作者がイネーブルスイッチ10を離して、イネーブルスイッチ10が非押圧位置へ移動した場合、または、操作者がイネーブルスイッチ10をさらに押し、イネーブルスイッチ10が押込み位置へ移動した場合には、ロボット装置4は、手動操作不可能となる。このとき、表示灯9aは消灯し、ロボット装置4の手動操作が不可能となっていることを告知(表示)する。操作者の意図しない力加減によって、イネーブルスイッチ10が中間位置より外れた場合にも、表示灯9aが消灯することにより、操作者は、手動操作が不可能となったことを認識することができる。
また、例えば、自動運転中など、ロボット装置4が操作装置6による手動操作を受け付けない状態であるときには、操作者がイネーブルスイッチ10を押して中間位置へ移動させたとしても、ロボット装置4は手動操作可能とならない。この場合には、イネーブルスイッチ10が中間位置であったとしても、表示灯9aは点灯しない。操作者は、表示灯9aが点灯しないことにより、ロボット装置4が手動操作不可能な状態であることを認識することができる。
液晶表示器9bは、ロボット装置4を手動操作する操作者に、ツール5で把持したワーク101の姿勢合わせの完了/未完了や、姿勢合わせ完了時の姿勢に対する現在のワーク101の姿勢のずれの程度等を報知(表示)する。この液晶表示器9bの表示を見て操作者は、操作レバー8によるロボット装置4の手動操作の内容を決めるのに役立てることができる。液晶表示器9bの詳細な表示内容は、後に詳述する。
このようなロボット装置4は、図3及び図4に示すように、操作者がワーク101を運ぶときのパワーアシスト装置となる。したがって、図3に示すように、ツール5は、第3のリンク1cに基端部が連結される長尺のメインフレーム5aと、メインフレーム5aの先端から出没するスライドフレーム5bとを有している。そして、メインフレーム5aとスライドフレーム5bとにそれぞれ取り付けられたグリッパ5c,5dによって、コントローラ3によってワーク101を把持するように構成されている。
また、メインフレーム5aの中間部分からは、サブフレーム5eが垂設されている。サブフレーム5eの先端にはグリッパ5fが取り付けられており、このグリッパ5fによって、グリッパ5c,5dで挟持されたワーク101を下から支持するように構成されている。そして、ツール5の各グリッパ5c,5d,5fは、測距センサ5g,5h,5i(請求項中の測距手段に相当)を有している。
本実施形態では、各測距センサ5g,5h,5iとして、非接触の光学式(光反射型)のセンサを用いている。各測距センサ5g,5h,5iは、メインフレーム5aの延在方向(長手方向)やサブフレーム5eの延在方向(長手方向)のいずれとも直交する操作者の前方に向けて、測距用のビーム光を出力する。そして、各測距センサ5g,5h,5iは、ビーム光の照射対象からの反射光を受光する。そして、各測距センサ5g,5h,5iは、出力光と反射光との位相差等に基づいて、ワーク101の各グリッパ5c,5d,5fでそれぞれ挟持された箇所についての、ビーム光の照射対象までの距離に応じた信号を、コントローラ3にそれぞれ出力する。このような構成を有するツール5の各部は、コントローラ3によって制御される。
上述したツール5を有するロボット装置4をパワーアシスト装置として用いる操作者は、操作装置6のイネーブルスイッチ10や操作レバー8の操作によって、ツール5にグリップされたワーク101を任意の位置に任意の姿勢で移動することができる。ロボット装置4のツール5やロータリアクチュエータ4a〜4f(図5参照)は、コントローラ3の制御によって駆動される。
そして、本実施形態に係るロボット制御装置は、コントローラ3と、このコントローラ3に接続された操作装置6とから構成される。
次に、本実施形態のロボット制御装置の電気的な構成を説明する。図5は図1のロボット制御装置の電気的な概略構成を示すブロック図である。
まず、コントローラ3は、機能ブロック的に表現すると、力覚センサ8aの力3成分(Fx,Fy,Fz)とモーメント3成分(θx,θy,θz)の各出力を、それぞれの初期値(操作レバー8が原点にあるときの力覚センサ8aの出力)を差し引いてゼロ点補正する機能を有している。これにより、力覚センサ8aに操作者から加えられた操作量(力3成分、モーメント3成分)が得られる。
また、コントローラ3は、力覚センサ8aに操作者から加えられた操作量(力3成分、モーメント3成分)を、力覚センサ8aの位置を原点とする座標系から操作レバー8の操作者から操作力を受ける位置を原点とする座標系に、座標変換処理する機能を有している。これにより、操作レバー8に操作者から加えられた操作量の力3成分(Fx,Fy,Fz)及びモーメント3成分(Mx,My,Mz)が得られる。
さらに、コントローラ3は、操作レバー8に操作者から加えられた操作量に応じて、力3成分(Fx,Fy,Fz)及びモーメント3成分(Mx,My,Mz)のゲインを個別に設定する機能を有している。これにより、ワーク101の希望する移動方向に応じて操作レバー8に加えられた操作者の操作力のゲインが、力3成分(Fx,Fy,Fz)及びモーメント3成分(Mx,My,Mz)のそれぞれについて個別に設定される。なお、ゲイン=0に設定された成分については、その成分へのワーク101の移動が制限される。
また、コントローラ3は、設定されたゲインによる、操作レバー8に操作者から加えられた操作量の力3成分(Fx,Fy,Fz)及びモーメント3成分(Mx,My,Mz)を、操作レバー8の操作者から操作力を受ける位置を原点とする座標系からツール5のツールセンターポイント(TCP)を原点とする座標系に、座標変換処理する機能を有している。これにより、操作者による操作レバー8の操作量に対応するツールセンターポイントの移動速度(x,y,z,θx,θy,θz)が得られる。
さらに、コントローラ3は、操作者による操作レバー8の操作量に対応する移動速度(x,y,z,θx,θy,θz)でツールセンターポイントが移動するように、マニピュレータ1の各ロータリアクチュエータ4a〜4fを駆動させるための、各ロータリアクチュエータ4a〜4fに対する駆動信号を生成し、ロボット装置4に出力する。
以上のような構成によるロボット装置4をワーク101の運搬用のパワーアシスト装置として使用する場合の例として、ワーク101を組付対象のボードに組み付ける場合について説明する。図6は、四隅に取付孔101a〜101dを有する矩形のワーク101をツール5で把持し、ワーク101のボード201に対して組み付ける場合の説明図である。ワーク101をボード201に組み付けるには、ボード201の四隅の取付ピン201a〜201dがワーク101の対応する取付孔101a〜101dにそれぞれ挿入されるように、ボード201に対してワーク101の姿勢や位置を合わせる必要がある。
そこで、本実施形態のロボット装置4では、図7(a),(b)の平面図及び側面図に示すようにボード201に対向させたワーク101を、図8(a),(b)の平面図及び側面図に示すようにワーク101をボード201に対して組み付け可能な姿勢にするまでの、操作者による操作レバー8の操作を支援する。さらに、本実施形態のロボット装置4では、ボード201に対して組み付け可能な姿勢となったワーク101の取付孔101a〜101dの、ボード201の取付ピン201a〜201dに対する位置合わせや嵌め込みのための、操作者による操作レバー8の操作を支援する。
具体的には、ワーク101の複数箇所(以下の例では3点)において、ボード201までの距離を、対応する測距センサ5c,5d,5fからの出力信号によりコントローラ3で計測する。そして、ワーク101をボード201に対して組み付け可能な姿勢にするまでの間は、ワーク101のどこかの箇所が、ワーク101をボード201に対して組み付け可能な姿勢にした場合のボード201からの距離と一致すると、以後、ワーク101のその箇所が同じ位置に固定されるように、操作レバー8の操作によるワーク101の移動内容を制限する。また、ワーク101の2つ目以降の箇所についても、ワーク101をボード201に組み付け可能な姿勢にした場合のボード201からの距離と一致すると、以後はその箇所が同じ位置に固定されるように、操作レバー8の操作によるワーク101の移動内容を制限する。なお、以下の説明においては、ボード201に対して組み付け可能なワーク101の姿勢が、ボード201に対してワーク101が平行に位置する姿勢である場合を例に取って説明する。
操作者による操作レバー8の操作の支援内容は、図2に示す操作装置6の液晶表示器9bに表示される。図9は、液晶表示器9bに表示される報知画面の説明図である。図9に示すように、液晶表示器9bの報知画面では、大きく分けて3つの情報が報知される。
第1は、各測距センサ5g,5h,5i付近の各ワーク101箇所に関する目標移動距離(前進であと何cmか)の情報である。この情報は、ワーク101をボード201と平行な姿勢(組み付け可能な姿勢)にするためのワーク101の移動距離を、各測距センサ5g,5h,5i付近の各ワーク101箇所別に案内するものである。図9の報知画面では、グリッパ5dに設けた測距センサ5h付近のワーク101箇所が左上、グリッパ5cに設けた測距センサ5g付近のワーク101箇所が右上、グリッパ5fに設けた測距センサ5i付近のワーク101箇所が中央下で表示されている。目標移動距離がマイナス表示の場合は、後退させる(ボード201から離す)ことを意味している。目標移動距離がマイナス表示でない場合は、前進させる(ボード201に近づける)ことを意味している。
第2は、ワーク101とボード201との距離に関する「基準距離に未ロック」/「基準距離でロック中」の情報である。この基準距離とは、本実施形態では、測距センサ5hの出力信号から計測されるグリッパ5dの付近のワーク101箇所とボード201との距離に対する基準値として定義されるものである。この基準距離は、予め定められた値であってもよく、ワーク101の移動中に操作レバー8の操作者の目視による判断で決定される値であってもよい。基準距離を操作者が決定する場合は、グリッパ5dの付近のワーク101箇所と、グリッパ5dの測距センサ5hからのビーム光が照射されているボード201上の照射点P(図7参照)との距離が、適切な距離であると判断した時点で、操作者が操作レバー8のトリガスイッチ8b(図1参照)を押圧操作する。これにより、トリガ信号がコントローラ3に入力されて、コントローラ3により基準距離が、トリガ信号の入力時点において測距センサ5hの出力信号から計測されるグリッパ5dの付近のワーク101箇所とボード201との距離に設定される。
グリッパ5dの付近のワーク101箇所とボード201との距離が基準距離内となり、あるいは、トリガ信号がコントローラ3に入力されると、ボード201に対するワーク101の移動が、コントローラ3によって、照射点Pを中心とする揺動のみに制限される。これにより、グリッパ5dの付近のワーク101箇所とボード201との距離が、基準距離にロックされる。図9の報知画面では、グリッパ5dの付近のワーク101箇所とボード201との距離が基準距離にロックされていないことを報知している。グリッパ5dの付近のワーク101箇所とボード201との距離が基準距離にロックされて、ボード201の照射点P(図7参照)を中心とする揺動のみに制限されると、ロボット装置4の操作によるワーク101のボード201に対する移動方向が、測距センサ5hの出力信号から計測される距離を基準距離に維持する方向のみに制限されることになる。「基準距離に未ロック」/「基準距離でロック中」の「ロック」とは、この制限のことである。
第3は、姿勢合わせの「完了」/「未完了」の情報である。図9の報知画面においては、この情報に関する現在の状況が白抜きで表示される。したがって、図9の報知画面では、姿勢合わせが未完了であることを報知している。ワーク101がボード201に対して平行に位置する組み付け可能な姿勢となって、ワーク101の姿勢合わせが完了すると、後述するコントローラ3の制御によって、ロボット装置4の操作によるワーク101のボード201に対する移動方向が、並進(上下左右)及び接離の各方向のみに制限される。
なお、上述したのは、図9の報知画面における姿勢合わせの「完了」の報知が、ワーク101がボード201に対して平行に位置する組み付け可能な姿勢となった段階で、初めて行われる場合である。しかし、ワーク101がボード201に組み付け可能な姿勢になるまでの間に、姿勢合わせの「完了」/「未完了」を図9の報知画面で段階的に報知する構成としてもよい。
その場合には、例えば、測距センサ5g,5h,5iの出力信号に基づいてボード201との距離を計測することができる3つのワーク101箇所のうち2つが、対応するボード201箇所から基準距離の位置に移動したことをコントローラ3が確認した時点で、その2つのワーク101箇所の部分についての姿勢合わせの「完了」を、図9の報知画面で報知する。
そして、2つのワーク101箇所のボード201に対する位置が動かないように、コントローラ3の制御によってワーク101の移動方向を制限しながら、残るもう一つのワーク101箇所を移動させ、このワーク101箇所が対応するボード201箇所から基準距離の位置に移動したことをコントローラ3が確認したら、ワーク101のボード201に対する全ての姿勢合わせの「完了」を、図9の報知画面で報知する。
次に、コントローラ3が内蔵のROM(図示せず)に格納されたプログラムにしたがって実行する処理の概略を、図10乃至図13のフローチャートを参照して説明する。
電源の投入によりコントローラ3が起動されると、コントローラ3は、図10のフローチャートに示すように、測距処理(ステップS1)と、姿勢検出処理(ステップS3)と、報知内容更新処理(ステップS5)と、駆動制限処理(ステップS7)とを、周期的に実行する。
このうち、ステップS1の測距処理では、コントローラ3は、図7(a),(b)に示すようにボード201にワーク101を対向させた状態で、ツール5の各測距センサ5g,5h,5iからの出力信号を取り込む。そして、コントローラ3は、ワーク101の各グリッパ5c,5d,5fでそれぞれ挟持された箇所についての、各測距センサ5g,5h,5iからのビーム光が照射されたボード201上の箇所までの距離をそれぞれ計測する。
次に、ステップS3の姿勢検出処理では、コントローラ3は、図11のフローチャートに示すように、ステップS1の測距処理で各測距センサ5g,5h,5iから取り込んだ出力信号から、各グリッパ5c,5d,5fの付近のワーク101とボード201との距離をそれぞれ検出する(ステップS301)。そして、不図示のRAMに設けられた基準距離フラグF1が「0」であるか否かを確認する(ステップS303)。基準距離フラグF1が「0」でない場合は(ステップS303でNO)、後述するステップS309に処理を移行する。
一方、基準距離フラグF1が「0」である場合は(ステップS303でYES)、ステップS301で検出したグリッパ5dの付近のワーク101(ワーク101の基準箇所)とボード201との距離が、所定の基準距離に合致したか否かを確認する(ステップS305)。基準距離に合致していない場合は(ステップS305でNO)、姿勢検出処理を終了する。基準距離に合致している場合は(ステップS305でYES)、基準距離フラグF1を「0」から「1」に移行させた後(ステップS307)、姿勢検出処理を終了する。
ステップS303で基準距離フラグF1が「0」でない場合(NO)に進むステップS309では、ステップS301で検出したグリッパ5c,5fの付近のワーク101とボード201との各距離が、いずれも、基準距離に対して所定の基準範囲内の差に収まっているか否かを確認する。どちらかの距離だけでも基準距離に対して基準範囲内の差に収まっていない場合は(ステップS309でNO)、姿勢検出処理を終了する。グリッパ5c,5f付近のワーク101(ワーク101の基準箇所以外の箇所)とボード201との各距離が両方とも、基準距離に対して所定の基準範囲内の差に収まっている場合は(ステップS309でYES)、姿勢合わせ完了フラグF3を「0」から「1」に移行させた後(ステップS311)、姿勢検出処理を終了する。
続いて、ステップS5の報知内容更新処理では、コントローラ3は、図12のフローチャートに示すように、ステップS301で検出した各グリッパ5c,5d,5fの付近のワーク101とボード201との距離、及び、基準距離フラグF1と姿勢合わせ完了フラグF3の状態に応じて、液晶表示器9bに表示する報知画面の内容を決定する(ステップS501)。そして、決定した内容に液晶表示器9bの表示を更新した後(ステップS503)、報知内容更新処理を終了する。
例えば、基準距離フラグF1と姿勢合わせ完了フラグF3とが両方とも「0」である場合は、ステップS503の表示更新により、図9の報知画面における姿勢合わせの項目が「未完了」の白抜き表示となり、基準点の項目が「基準距離に未ロック」の白抜き表示となり、目標移動距離の左上、右上、中央下の各項目が、ステップS301で検出したそれぞれのワーク101とボード201との距離から、基準距離を差し引いた値の表示となる。
また、基準距離フラグF1が「1」で姿勢合わせ完了フラグF3が「0」である場合は、ステップS503の表示更新により、図9の報知画面における姿勢合わせの項目が「未完了」の白抜き表示となり、基準点の項目が「基準距離でロック中」の白抜き表示となり、目標移動距離の左上の項目が「0(cm)」の表示となり、右上及び中央下の各項目が、ステップS301で検出したそれぞれのワーク101とボード201との距離から、基準距離を差し引いた値の表示となる。
さらに、基準距離フラグF1と姿勢合わせ完了フラグF3とが両方とも「1」である場合は、ステップS503の表示更新により、図9の報知画面における姿勢合わせの項目が「完了(並進・接離のみ可能)」の白抜き表示となり、基準点の項目が「基準距離でロック中」の白抜き表示となり、目標移動距離の左上、右上、中央下の各項目が、それぞれ「0(cm)」の表示となる。
最後に、ステップS7の駆動制限処理では、コントローラ3は、図13のフローチャートに示すように、リセットスイッチ11が操作されたか否かを確認する(ステップS701)。操作されていない場合は(ステップS701でNO)、後述するステップS707に処理を移行する。操作された場合は(ステップS701でYES)、コントローラ3は、操作レバー8に操作者から加えられる操作力のモーメント3成分(Mx,My,Mz)と力3成分(Fx,Fy,Fz)との各ゲインを、いずれも「1」に設定する(ステップS703)。これにより、ロボット装置4によりワーク101は、操作レバー8の操作内容に応じた任意の方向に移動される。そして、基準距離フラグF1と姿勢合わせ完了フラグF3とをいずれも「0」に設定した後(ステップS705)、駆動制限処理を終了する。
一方、ステップS701において、リセットスイッチ11が操作されていない場合(NO)は、コントローラ3は、姿勢合わせ完了フラグF3が「0」であるか否かを確認する(ステップS707)。姿勢合わせ完了フラグF3が「0」である場合は(ステップS707でYES)、後述するステップS711に処理を移行する。姿勢合わせ完了フラグF3が「0」でない場合は(ステップS707でNO)、コントローラ3は、操作レバー8に操作者から加えられる操作力のうちモーメント3成分(Mx,My,Mz)の各ゲインを「0」に設定し、力3成分(Fx,Fy,Fz)の各ゲインを「1」に設定する(ステップS709)。これにより、ロボット装置4によるワーク101の移動方向は、操作レバー8の操作内容に拘わらず、ボード201に対して並進する方向とボード201に対して接離する方向のみに制限される。そして、駆動制限処理を終了する。
また、ステップS707において、姿勢合わせ完了フラグF3が「0」である場合(YES)は、コントローラ3は、基準距離フラグF1が「0」であるか否かを確認する(ステップS711)。基準距離フラグF1が「0」である場合は、駆動制限処理を終了する。基準距離フラグF1が「0」でない場合は、コントローラ3は、ロボット装置4の操作によるワーク101のボード201に対する移動方向を、ワーク101の基準箇所とボード201との距離を基準距離に維持する方向のみに制限する(ステップS713)。そして、駆動制限処理を終了する。
以上の説明からも明らかなように、本実施形態では、図10のフローチャートにおけるステップS1と、図11のフローチャートにおけるステップS301とが、請求項中の姿勢検出手段に相当する処理となっている。また、本実施形態では、図11中のステップS309が、請求項中の完了判定手段に相当する処理となっている。さらに、本実施形態では、図10中のステップS5が、請求項中の報知手段に相当する処理となっている。また、本実施形態では、図13のフローチャートにおけるステップS709が、請求項中における駆動方向制限手段に相当する処理となっている。さらに、本実施形態では、図13中のステップS713が、請求項中の駆動内容制限手段に相当する処理となっている。
そして、本実施形態では、ワーク101がボード201と平行な姿勢に姿勢合わせされておらず、かつ、ワーク101のグリッパ5d付近の箇所とボード201との距離が、基準距離に合致していないと、操作レバー8の操作により操作者は、ロボット装置4によってワーク101をボード201に対してあらゆる方向に移動させることができる。このとき、図9に示す液晶表示器9bの報知画面では、姿勢合わせの項目が「未完了」の白抜き表示となり、基準点の項目が「基準距離に未ロック」の白抜き表示となり、目標移動距離の左上、右上、中央下の各項目が、それぞれのワーク101とボード201との距離から基準距離を差し引いた値の表示となる。
また、ワーク101がボード201と平行な姿勢に姿勢合わせされていない状態で、ワーク101のグリッパ5d付近の箇所とボード201との距離が基準距離に合致すると、ワーク101のグリッパ5d付近の箇所とボード201との距離が基準距離に維持される範囲内で、操作レバー8の操作により操作者は、ロボット装置4によってワーク101をボード201に対してあらゆる方向に移動させることができる。このとき、図9に示す液晶表示器9bの報知画面では、姿勢合わせの項目が「未完了」の白抜き表示となり、基準点の項目が「基準距離でロック中」の白抜き表示となり、目標移動距離の左上の項目が「0(cm)」の表示となり、右上及び中央下の各項目が、それぞれのワーク101とボード201との距離から基準距離を差し引いた値の表示となる。
さらに、ワーク101のグリッパ5d付近の箇所とボード201との距離が基準距離に合致した状態で、ワーク101がボード201と平行な姿勢に姿勢合わせされると、操作レバー8の操作により操作者は、ロボット装置4によってワーク101をボード201に対して並進する方向とボード201に対して接離する方向にだけ移動させることができる。このとき、図9に示す液晶表示器9bの報知画面では、姿勢合わせの項目が「完了(並進・接離のみ可能)」の白抜き表示となり、基準点の項目が「基準距離でロック中」の白抜き表示となり、目標移動距離の左上、右上、中央下の各項目が、それぞれ「0(cm)」の表示となる。
以上の流れでワーク101をボード201に対して平行な姿勢に姿勢合わせしたならば、操作レバー8の操作により操作者は、ロボット装置4によってワーク101を、各取付孔101a〜101dが対応するボード201の取付ピン201a〜201dに対向する図8の状態に移動させ、さらに、ボード201に近づくようにワーク101を移動させることで、ボード201にワーク101を組み付けることができる。
このように、本実施形態によれば、各測距センサ5g,5h,5iを用いて計測した各グリッパ5c,5d,5fの付近のワーク101とボード201との距離に基づいて決定されて液晶表示器9bに表示される報知画面の内容で、ワーク101をどのように移動させればボード201に対して姿勢合わせできるかを、容易に認識することができる。このため、ワーク101によって操作者のボード201に対する視界が遮られてしまっても、ボード201に組み付け易い姿勢や位置に、ロボット装置4を用いてワーク101を容易に移動させることができる。
なお、本実施形態では、ワーク101やボード201が矩形の平板状である場合について説明したが、例えば、図14に示すような、途中で屈曲した板状のワーク101を同様の形状のボード201に、図1のロボット装置4をパワーアシスト装置として用いて組み付ける場合にも、本発明は適用可能である。この場合、ワーク101とボード201との距離を計測するのに用いる測距センサ5g,5hは、同一平面上で距離を計測しなくなるが、ボード201に対して平行な姿勢にワーク101を姿勢合わせするには、それぞれの測距センサ5g,5hで計測する距離が同じ値になるようにすればよいことは、本実施形態の場合と変わりがない。そのため、このような場合にも本発明が適用可能であることは明らかである。
また、上述した実施形態(図14に示す場合も含む)では、ワーク101をボード201と平行な姿勢にすることで、ワーク101がボード201に組み付け可能な姿勢となる場合を例に取って説明した。しかし、ワーク101がボード201に組み付け可能となる姿勢は、ワーク101がボード201と平行となる姿勢に限定されない。ワーク101のボード201に対する組み付け可能な姿勢が、ワーク101がボード201に対して平行となる姿勢でない場合には、上述した実施形態における基準距離を、各測距センサ5g,5h,5iの出力信号により計測される各グリッパ5c,5d,5fの付近の各ワーク101箇所毎に異なる値とすることになる。
例えば、グリッパ5dの付近のワーク101箇所の基準距離がxmmであるとした場合、グリッパ5cの付近のワーク101箇所の基準距離が(x+a)mm、グリッパ5fの付近のワーク101箇所の基準距離が(x−b)mmという設定であってもよい。このような設定は、例えば、1つのロボット装置4で形状が異なる別品種のワークを取り扱う場合等に有効である。つまり、ロボット装置4で取り扱うワーク101の品種を変えると、グリッパ5c,5d,5fの付近の各ワーク101箇所の位置が変わる場合に、それに合わせて各測距センサ5g,5h,5iの位置を変えなくても、各測距センサ5g,5h,5iに対応する基準距離を個別に変更すれば、どんな品種のワーク101でも、ボード201に組み付け可能な姿勢や位置にロボット装置4で容易に移動させることができる。
さらに、上述した実施形態(図14に示す場合も含む)では、ワーク101の複数箇所についてボード201とワーク101との距離を計測するのに、個別の測距センサ5g,5h,5iを用いる構成とした。しかし、画像処理によって画像内に写るワーク101とボード201との距離をそれらの全体に亘って解析検出する三次元非接触形状検出装置を、姿勢検出手段として用いてもよい。また、光以外の信号波による非接触式センサや、非接触式のセンサではなく接触式のセンサを、測距センサ5g,5h,5iとして用いてもよい。