(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-09-09
(45)【発行日】2024-09-18
(54)【発明の名称】ワーク保持装置、ワーク保持方法、プログラム、及び制御装置
(51)【国際特許分類】
B25J 13/08 20060101AFI20240910BHJP
【FI】
B25J13/08 A
(21)【出願番号】P 2021168015
(22)【出願日】2021-10-13
【審査請求日】2023-10-26
(73)【特許権者】
【識別番号】000003207
【氏名又は名称】トヨタ自動車株式会社
(74)【代理人】
【識別番号】100103894
【氏名又は名称】家入 健
(72)【発明者】
【氏名】五十嵐 淳
(72)【発明者】
【氏名】森 建郎
(72)【発明者】
【氏名】長井 伊岐
【審査官】臼井 卓巳
(56)【参考文献】
【文献】特開2020-040158(JP,A)
【文献】特開2018-144184(JP,A)
【文献】特開平07-227789(JP,A)
【文献】特開平10-187223(JP,A)
【文献】特開2002-374417(JP,A)
【文献】特開2011-201007(JP,A)
【文献】特開2011-088248(JP,A)
【文献】特開2018-183793(JP,A)
【文献】米国特許出願公開第2020/0078941(US,A1)
(58)【調査した分野】(Int.Cl.,DB名)
B25J 9/16-13/08
B23K 26/38
(57)【特許請求の範囲】
【請求項1】
ワークを保持する保持手段と、
前記保持手段により保持されたワークの3次元情報を取得する第1情報取得手段と、
前記第1情報取得手段により取得されたワークの3次元情報に基づいて、ワークの最下中心点をワークの位置情報として算出する位置算出手段と、
前記位置算出手段により算出されたワークの位置情報に基づいてワークを載置する載置位置を算出し、該載置位置に基づいてワークを該載置位置へ移動させ載置するように前記保持手段を制御する制御手段と、
を備
え、
前記第1情報取得手段は、前記ワークの高さ方向の情報を取得し、
前記ワークを載置する載置場所には、異なる高さの複数の剣山状の突起が設けられており、
前記突起の高さ方向の長さは、前記載置場所に載置されるワークの高さ方向の長さに応じて設定され、
前記制御手段は、
隣接する突起間を前記ワークの載置位置として設定し、
前記第1情報取得手段により取得されたワークの高さ方向の情報に基づいて、前記ワークの高さ方向の長さが所定値以上であると判定した場合、前記ワークの載置位置を、高さ方向に長い突起間の位置に設定し、前記ワークの高さ方向の長さが所定値未満であると判定した場合、ワークの載置位置を、高さ方向に短い突起間の位置に設定する、
ワーク保持装置。
【請求項2】
請求項1記載のワーク保持装置であって、
前記ワークを載置する載置場所の3次元情報を取得する第2情報取得手段を更に備える、
ワーク保持装置。
【請求項3】
保持手段により保持されたワークの3次元情報を取得するステップと、
前記取得されたワークの3次元情報に基づいて、ワークの最下中心点をワークの位置情報として算出するステップと、
前記算出されたワークの位置情報に基づいてワークを載置する載置位置を算出し、該載置位置に基づいてワークを該載置位置へ移動させ載置するように前記保持手段を制御するステップと、
を含
み、
前記ワークの高さ方向の情報を取得し、
前記ワークを載置する載置場所には、異なる高さの複数の剣山状の突起が設けられており、
前記突起の高さ方向の長さは、前記載置場所に載置されるワークの高さ方向の長さに応じて設定され、
前記ワークの高さ方向の情報に基づいて、前記ワークの高さ方向の長さが所定値以上であると判定した場合、前記ワークの載置位置を、高さ方向に長い突起間の位置に設定し、前記ワークの高さ方向の長さが所定値未満であると判定した場合、ワークの載置位置を、高さ方向に短い突起間の位置に設定する、
ワーク保持方法。
【請求項4】
保持手段により保持されたワークの3次元情報を取得する処理と、
前記取得されたワークの3次元情報に基づいて、ワークの最下中心点をワークの位置情報として算出する処理と、
前記算出されたワークの位置情報に基づいてワークを載置する載置位置を算出し、該載置位置に基づいてワークを該載置位置へ移動させ載置するように前記保持手段を制御する処理と、
をコンピュータに実行さ
せ、
前記ワークの高さ方向の情報を取得し、
前記ワークを載置する載置場所には、異なる高さの複数の剣山状の突起が設けられており、
前記突起の高さ方向の長さは、前記載置場所に載置されるワークの高さ方向の長さに応じて設定され、
前記ワークの高さ方向の情報に基づいて、前記ワークの高さ方向の長さが所定値以上であると判定した場合、前記ワークの載置位置を、高さ方向に長い突起間の位置に設定し、前記ワークの高さ方向の長さが所定値未満であると判定した場合、ワークの載置位置を、高さ方向に短い突起間の位置に設定する、
プログラム。
【請求項5】
第1情報取得手段により取得されたワークの3次元情報に基づいて、ワークの最下中心点をワークの位置情報として算出する位置算出手段と、
前記位置算出手段により算出されたワークの位置情報に基づいてワークを載置する載置位置を算出し、該載置位置に基づいてワークを該載置位置へ移動させ載置するように保持手段を制御する制御手段と、
を備
え、
前記第1情報取得手段は、前記ワークの高さ方向の情報を取得し、
前記ワークを載置する載置場所には、異なる高さの複数の剣山状の突起が設けられており、
前記突起の高さ方向の長さは、前記載置場所に載置されるワークの高さ方向の長さに応じて設定され、
前記制御手段は、
隣接する突起間を前記ワークの載置位置として設定し、
前記第1情報取得手段により取得されたワークの高さ方向の情報に基づいて、前記ワークの高さ方向の長さが所定値以上であると判定した場合、前記ワークの載置位置を、高さ方向に長い突起間の位置に設定し、前記ワークの高さ方向の長さが所定値未満であると判定した場合、ワークの載置位置を、高さ方向に短い突起間の位置に設定する、
制御装置。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、ワークを保持し載置するワーク保持装置、ワーク保持方法、プログラム、及び制御装置に関する。
【背景技術】
【0002】
ハンドにより把持されたワークを撮像し、そのワークの撮像画像を画像処理してワークの位置情報を算出し、算出した位置情報に基づいて、ワークを載置するワーク保持装置が知られている(例えば、特許文献1参照)。
【先行技術文献】
【特許文献】
【0003】
【発明の概要】
【発明が解決しようとする課題】
【0004】
上記ワーク保持装置においては、ワークの保持位置が2次元的に変化した場合でもワークのアライメントマークを読み取ることでワークの保持位置を算出できる。しかし、例えば、マグネットなどによりワークを吸引し保持する場合、ワークの保持位置が3次元的に変化する。この場合、上記アライメントマークを読み取る方法では、ワークの保持位置を精度よく算出することができず、ワークを高精度に載置位置に載置できない虞がある。
【0005】
本発明は、このような問題点を解決するためになされたものであり、ワークの保持位置を高精度に算出し、その保持位置に基づいてワークを高精度に載置位置に載置できるワーク保持装置、ワーク保持方法、プログラム、及び制御装置を提供することを主たる目的とする。
【課題を解決するための手段】
【0006】
上記目的を達成するための本発明の一態様は、
ワークを保持する保持手段と、
前記保持手段により保持されたワークの3次元情報を取得する第1情報取得手段と、
前記第1情報取得手段により取得されたワークの3次元情報に基づいて、ワークの最下中心点をワークの位置情報として算出する位置算出手段と、
前記位置算出手段により算出されたワークの位置情報に基づいてワークを載置する載置位置を算出し、該載置位置に基づいてワークを該載置位置へ移動させ載置するように前記保持手段を制御する制御手段と、
を備える、ワーク保持装置
である。
この一態様において、前記ワークを載置する載置場所の3次元情報を取得する第2情報取得手段を更に備えていてもよい。
この一態様において、前記第1情報取得手段は、前記ワークの高さ方向の情報を取得し、
前記制御手段は、前記第1情報取得手段により取得された前記ワークの高さ方向の情報に基づいて、前記載置位置を変更してもよい。
この一態様において、前記ワークを載置する載置場所には、異なる高さの複数の剣山状の突起が設けられており、
前記制御手段は、
隣接する突起間を前記ワークの載置位置として設定し、
第1情報取得手段により取得された前記ワークの高さ方向の情報に基づいて、前記載置場所内におけるワークの載置位置を変更してもよい。
この一態様において、前記突起の高さ方向の長さは、前記載置場所に載置されるワークの高さ方向の長さに応じて設定されてもよい。
上記目的を達成するための本発明の一態様は、
保持手段により保持されたワークの3次元情報を取得するステップと、
前記取得されたワークの3次元情報に基づいて、ワークの最下中心点をワークの位置情報として算出するステップと、
前記算出されたワークの位置情報に基づいてワークを載置する載置位置を算出し、該載置位置に基づいてワークを該載置位置へ移動させ載置するように前記保持手段を制御するステップと、
を含む、ワーク保持方法
であってもよい。
上記目的を達成するための本発明の一態様は、
保持手段により保持されたワークの3次元情報を取得する処理と、
前記取得されたワークの3次元情報に基づいて、ワークの最下中心点をワークの位置情報として算出する処理と、
前記算出されたワークの位置情報に基づいてワークを載置する載置位置を算出し、該載置位置に基づいてワークを該載置位置へ移動させ載置するように前記保持手段を制御する処理と、
をコンピュータに実行させる、プログラム
であってもよい。
上記目的を達成するための本発明の一態様は、
第1情報取得手段により取得されたワークの3次元情報に基づいて、ワークの最下中心点をワークの位置情報として算出する位置算出手段と、
前記位置算出手段により算出されたワークの位置情報に基づいてワークを載置する載置位置を算出し、該載置位置に基づいてワークを該載置位置へ移動させ載置するように保持手段を制御する制御手段と、
を備える、制御装置
であってもよい。
【発明の効果】
【0007】
本発明によれば、ワークの保持位置を高精度に算出し、その保持位置に基づいてワークを高精度に載置位置に載置できるワーク保持装置、ワーク保持方法、プログラム、及び制御装置を提供することができる。
【図面の簡単な説明】
【0008】
【
図1】本実施形態に係るワーク保持装置の概略的なシステム構成を示すブロック図である。
【
図2】本実施形態に係る制御装置の概略的なシステム構成を示すブロック図である。
【
図4】ワークの高さ方向の長さに応じたワークの載置位置を示す図である。
【
図5】載置場所内に既に載置された他のワークの外形領域を示す図である。
【
図6】本実施形態に係るワーク保持方法の処理フローを示すフローチャートである。
【発明を実施するための形態】
【0009】
以下、図面を参照して本発明の実施形態について説明する。
図1は、本実施形態に係るワーク保持装置の概略的なシステム構成を示すブロック図である。本実施形態に係るワーク保持装置1は、例えば、3次元空間に配置された複数のワークの中からワークを1つずつ吸引し保持し、移動させ、載置場所に載置することができる。複数のワークは、箱内や平面などにバラ積みされている部品などである。ワークの載置場所は、箱内や平板上などである。なお、複数のワークは、平面形状や立体形状などの任意の形状の部品を含む。
【0010】
本実施形態に係るワーク保持装置1は、ロボットアーム2と、制御装置3と、第1ビジョンセンサ4と、第2ビジョンセンサ5と、を備えている。
【0011】
ロボットアーム2は、保持手段の一具体例である。ロボットアーム2は、例えば、複数のリンク21と、各リンク21を回動可能に連結する関節部(手首関節、肘関節、肩関節など)22と、その先端に設けられワークを吸引し保持するエンドエフェクタ23と、を有する多関節型アームとして構成されている。
【0012】
各関節部22には、各関節部22の回転情報を検出するエンコーダなどの回転センサと、各関節部22を駆動するサーボモータなどのアクチュエータと、各関節部22の操作力を検出する力センサと、が設けられている。力センサは、例えば、各関節部22のトルクを検出するトルクセンサなどである。各関節部22には、減速機構などが設けられている。
【0013】
エンドエフェクタ23は、例えば、磁力や空気圧力などの吸引力により、ワークを非接触状態で吸引し保持する。エンドエフェクタ23は、例えば、磁力を発生させることによってワークを電磁吸着し、磁力の発生を停止することによって電磁吸着しているワークを解放するように構成されている。
【0014】
エンドエフェクタ23は、指部などでワークを把持するように構成されていてもよい。なお、エンドエフェクタ23は、ワークを磁力などにより吸引するように構成されている場合、ワークの保持位置が3次元的に変化し易いため、後述のワークの保持位置を高精度に算出し、その保持位置に基づいてワークを高精度に載置できるという、本実施形態に係る効果はより大きい。
【0015】
制御装置3は、ロボットアーム2に対する各種の演算処理及び制御処理を行う。制御装置3は、例えば、CPU(Central Processing Unit)やGPU(Graphics Processing Unit)などのプロセッサ3aと、RAM(Random Access Memory)やROM(Read Only Memory)などの内部メモリ3bと、HDD(Hard Disk Drive)やSDD(Solid State Drive)などのストレージデバイス3cと、ディスプレイなどの周辺機器を接続するための入出力I/F3dと、装置外部の機器と通信を行う通信I/F3eと、を備えた通常のコンピュータのハードウェア構成を有する。
【0016】
第1ビジョンセンサ4は、第1情報取得手段の一具体例である。第1ビジョンセンサ4は、ロボットアーム2のエンドエフェクタ23により保持されたワークの3次元情報を取得する。ワークの3次元情報は、各ワークの形状、位置(3次元座標など)、姿勢などの情報を含む。第1ビジョンセンサ4は、カメラやレーザセンサなどで構成されている。
【0017】
第1ビジョンセンサ4は、ロボットアーム2と載置場所との間で、載置場所と略同一の高さ位置に設けられている。これにより、第1ビジョンセンサ4は、エンドエフェクタ23に保持されたワークを下側から見た3次元情報を取得できる。したがって、1つの第1ビジョンセンサ4のみによって十分なワークの3次元情報を取得できるため、センサ数を最小に抑えることができ装置コストの低減に繋がる。
【0018】
なお、一対の第1ビジョンセンサ4が、エンドエフェクタ23を挟み込むようにエンドエフェクタ23の両側に設けられていてもよい。これにより、より高精度なワークの3次元情報を取得できる。第1ビジョンセンサ4は、取得したワークの3次元情報を制御装置3に対して出力する。
【0019】
第2ビジョンセンサ5は、第2情報取得手段の一具体例である。第2ビジョンセンサ5は、ワークが載置される載置場所の3次元情報を取得する。載置場所の3次元情報は、載置場所の形状や位置(3次元座標など)、載置場所に載置されたワークの形状や位置などの情報を含む。
【0020】
第2ビジョンセンサ5は、例えば、ロボットアーム2のエンドエフェクタ23やリンク21などに設けられている。第2ビジョンセンサ5は、カメラやレーザセンサなどで構成されている。第2ビジョンセンサ5は、取得した載置場所の3次元情報を制御装置3に対して出力する。
【0021】
ところで、従来、ワークを保持した際にそのワークの保持位置が3次元的に変化することがある。この場合、例えば、ワークの保持位置を精度よく算出することができず、ワークを高精度に載置位置に載置できない虞がある。
【0022】
これに対し、本実施形態に係るワーク保持装置1は、第1ビジョンセンサ4によりロボットアーム2により保持されたワークの3次元情報を取得し、その取得されたワークの3次元情報に基づいて、ワークの最下中心点をワークの位置情報として算出し、算出されたワークの位置情報に基づいてワークを載置する載置位置を算出する。
【0023】
これにより、第1ビジョンセンサ4によりロボットアーム2により保持されたワークの3次元情報を取得し、その取得されたワークの3次元情報に基づいて、ワークの最下中心点をワークの位置情報として高精度に算出でき、そのワークの位置情報に基づいてワークを高精度に載置できる。すなわち、ワークの保持位置を高精度に算出し、その保持位置に基づいてワークを高精度に載置できる。
【0024】
図2は、本実施形態に係る制御装置の概略的なシステム構成を示すブロック図である。本実施形態に係る制御装置3は、位置算出部31と、ロボット制御部32と、を有している。
【0025】
位置算出部31は、位置算出手段の一具体例である。位置算出部31は、第1ビジョンセンサ4により取得されたワークの3次元情報に基づいて、ワークの位置情報を算出する。位置算出部31は、第1ビジョンセンサ4により取得されたワークの3次元情報に基づいて、ワークの最下中心点の位置を、ワークの位置情報として算出してもよい。
【0026】
最下中心点の位置とは、例えば、
図3に示す如く、ワークを下方から見た下面視におけるワークの中心点(図芯)を、ワークを側方から見た側面視におけるワークの最下点の高さにずらした点の位置である。ワークの最下中心点の位置をワークの位置情報として算出することで、ワークを載置する際にワークが安定する最下かつ中心点でワークを捉えることができる。
【0027】
例えば、位置算出部31は、第1ビジョンセンサ4により取得されたワークの画像からワークの3次元点群を取得する。位置算出部31は、ワークの3次元点群に基づいて、ワークの最下点と、ワークの中心点と、を算出する。位置算出部31は、算出したワークの中心点をワークの最下点の高さまでずらした点を、最下中心点の位置として算出する。
【0028】
ロボット制御部32は、制御手段の一具体例である。ロボット制御部32は、位置算出部31により算出されたワークの位置情報に基づいて、ロボットアーム2により保持されたワークの載置位置を算出する。ロボット制御部32は、ロボットアーム2を制御することで、ワークを載置位置へ移動させ載置する。
【0029】
ワークの載置場所には、
図1に示す如く、複数の剣山状の突起が設けられていてもよい。これにより、隣接する突起間にワークを載置することで、ワークが倒れるのを確実に防止できる。各突起は、例えば、XY方向へ夫々等間隔で設けられている。各突起は、先端が鋭い剣山状に形成されているが、例えば、先端が丸みを帯びた形状であってもよく、隣接する突起間でワークを挟み込み、ワークが倒れるのを防止できれば任意の突起形状であってもよい。
【0030】
ロボット制御部32は、第2ビジョンセンサ5により取得されたワークの3次元情報に基づいて、例えば、隣接する突起間の中心、かつ突起先端の高さ位置を載置位置として算出する。
【0031】
第1ビジョンセンサ4は、ワークの3次元情報として、ワークの高さ方向(Z方向)の情報を取得する。ワークの高さ方向の情報は、例えば、
図4に示す如く、エンドエフェクタ23に保持されたワークの高さ方向の長さである。
【0032】
ロボット制御部32は、第1ビジョンセンサ4により取得されたワークの高さ方向の情報に基づいて、載置場所内におけるワークの載置位置を変更する。一般に、ワークを載置場所に載置した場合、ワークの高さ方向の長さが長くなるほど、ワークは倒れ易くなる。このように、ワークの高さ方向の長さに応じて、そのワークを載置した場合の倒れ易さが変化する。したがって、ワークの高さ方向の情報に応じて、ワークの載置位置を倒れ難い位置に変更でき、その倒れ込みをより確実に防止できる。
【0033】
ワークの載置場所には、
図1に示す如く、異なる高さの複数の剣山状の突起が設けられていてもよい。載置場所には、例えば、高さ方向に短い突起と、長い突起が設けられている。第2ビジョンセンサ5は、載置場所の3次元情報として、載置場所における長短の突起の位置などの情報を取得し、ロボット制御部32に対して出力する。
【0034】
ロボット制御部32は、第1ビジョンセンサ4により取得されたワークの高さ方向の情報に基づいて、ワークの高さ方向の長さが所定値t1以上であるか否かを判定してもよい。ロボット制御部は、
図4(a)に示す如く、ワークの高さ方向の長さが所定値t1以上であると判定した場合、ワークの載置位置を、高さ方向に長い突起間の位置に設定する。これにより、高さ方向に長いワークを高さ方向に長い突起間に挟み込むように配置することで、その長いワークが倒れるのを長い突起により防止できる。
【0035】
一方で、ロボット制御部32は、
図4(b)に示す如く、ワークの高さ方向の長さが所定値t1未満であると判定した場合、ワークの載置位置を、高さ方向に短い突起間の位置に設定する。これにより、高さ方向に短いワークを高さ方向に短い突起間に挟み込むように配置することで、その短いワークが倒れるのを短い突起により防止できる。上記所定値t1は、ロボット制御部32に設定されていてもよい。所定値t1は、例えば、突起の高さ方向の長さに基づいて設定される。
【0036】
突起の高さ方向の長さは、載置場所に載置されるワークの高さ方向の長さに応じて設定されてもよい。これにより、突起間に載置されたワークが倒れるのをより確実に防止できる。例えば、3種類の高さ方向の長さが異なるワークが載置場所に載置される場合、3種類のワークの高さ方向の長さに合わせて3種類の突起の高さ方向の長さを設定してもよい。このように、突起の高さ方向の長さの種類の数は任意でよく、載置場所に載置されるワークの高さ方向の長さの種類の数も任意でよい。
【0037】
ロボット制御部32は、第1ビジョンセンサ4により取得されたワークの横方向(X方向)の情報に基づいて、載置場所内におけるワークの載置位置を変更してもよい。例えば、ロボット制御部32は、ワークの横方向の長さが所定値t2以上で長いと判定した場合、ワークの載置位置を、突起が設けられていない位置に設定する。このように、ワークが横方向に長く倒れ難い場合、ワークの載置位置を、突起が設けられていない位置に設定でき、載置位置の自由度を大きくすることができる。
【0038】
ロボット制御部32は、第1ビジョンセンサ4により取得されたワークの高さ方向の情報及び横方向の情報に基づいて、載置場所内におけるワークの載置位置を変更してもよい。例えば、ロボット制御部32は、ワークの高さ方向の長さが所定値t1以上かつ横方向の長さが所定値t2以上であると判定した場合、ワークの載置位置を、高さ方向に短い突起間の位置に設定する。このように、ワークが高さ方向に長い場合でも横方向に長い場合は、倒れ難いため、高さ方向に長いワークを高さ方向に短い突起間に挟み込むように配置することができる。
【0039】
さらに、ロボット制御部32は、第2ビジョンセンサ5により取得された載置場所の3次元情報に基づいて、載置場所に既に載置されている他のワークと干渉しない位置を、ワークの載置位置に設定する。
【0040】
第2ビジョンセンサ5は、上述の如く、ワークが載置場所に載置された後、その載置場所の3次元情報を取得し、取得した載置場所の3次元情報をロボット制御部32に出力する。
【0041】
ロボット制御部32は、例えば、
図5に示す如く、第2ビジョンセンサ5からの載置場所の3次元情報に基づいて、載置場所に既に載置されたワークの3次元点群を取得し、取得した3次元点群に基づいて、そのワークA、Bの外形領域(点線)を算出する。
【0042】
ロボット制御部32は、載置場所に新たなワークを載置する際に、載置場所内における、そのワークA、Bの外形領域を避けるように、ワークの載置位置を設定する。これにより、載置場所に既に載置されている他のワークA、Bと確実に干渉しない位置を、ワークの載置位置に設定することができる。
【0043】
続いて、本実施形態に係るワーク保持方法について説明する。
図6は、本実施形態に係るワーク保持方法の処理フローを示すフローチャートである。なお、
図6に示す処理は、所定時間毎に繰返し実行されてもよい。
【0044】
第1ビジョンセンサ4は、ロボットアーム2のエンドエフェクタ23により保持されたワークの3次元情報を取得し、取得したワークの3次元情報を制御装置3の位置算出部31に対して出力する(ステップS101)。
【0045】
位置算出部31は、第1ビジョンセンサ4により取得されたワークの3次元情報に基づいて、ワークの最下中心点をワークの位置情報として算出し、算出したワークの位置情報をロボット制御部32に出力する(ステップS102)。
【0046】
第2ビジョンセンサ5は、ワークの載置場所の3次元情報を取得し、取得した載置場所の3次元情報をロボット制御部32に出力する(ステップS103)。
【0047】
ロボット制御部32は、位置算出部31により算出されたワークの位置情報と、第2ビジョンセンサ5により取得された載置場所の3次元情報と、に基づいてワークを載置する載置位置を算出する(ステップS104)。
【0048】
ロボット制御部32は、算出した載置位置に基づいて、ワークを載置位置へ移動させ載置するようにロボットアーム2を制御する(ステップS105)。
【0049】
以上、本実施形態に係るワーク保持装置1は、第1ビジョンセンサ4によりロボットアーム2により保持されたワークの3次元情報を取得し、その取得されたワークの3次元情報に基づいて、ワークの最下中心点をワークの位置情報として算出し、算出されたワークの位置情報に基づいてワークを載置する載置位置を算出する。
【0050】
これにより、第1ビジョンセンサ4により取得されたワークの3次元情報に基づいて、ワークの最下中心点をワークの位置情報として高精度に算出でき、そのワークの位置情報に基づいてワークを高精度に載置できる。すなわち、ワークの保持位置を高精度に算出し、その保持位置に基づいてワークを高精度に載置できる。
【0051】
本発明のいくつかの実施形態を説明したが、これらの実施形態は、例として提示したものであり、発明の範囲を限定することは意図していない。これら新規な実施形態は、その他のさまざまな形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。これら実施形態やその変形は、発明の範囲や要旨に含まれるとともに、特許請求の範囲に記載された発明とその均等の範囲に含まれる。
【0052】
本発明は、例えば、
図6に示す処理を、プロセッサにコンピュータプログラムを実行させることにより実現することも可能である。
【0053】
プログラムは、様々なタイプの非一時的なコンピュータ可読媒体(non-transitory computer readable medium)を用いて格納され、コンピュータに供給することができる。非一時的なコンピュータ可読媒体は、様々なタイプの実体のある記録媒体(tangible storage medium)を含む。非一時的なコンピュータ可読媒体の例は、磁気記録媒体(例えばフレキシブルディスク、磁気テープ、ハードディスクドライブ)、光磁気記録媒体(例えば光磁気ディスク)、CD-ROM(Read Only Memory)、CD-R、CD-R/W、半導体メモリ(例えば、マスクROM、PROM(Programmable ROM)、EPROM(Erasable PROM)、フラッシュROM、RAM(random access memory))を含む。
【0054】
プログラムは、様々なタイプの一時的なコンピュータ可読媒体(transitory computer readable medium)によってコンピュータに供給されてもよい。一時的なコンピュータ可読媒体の例は、電気信号、光信号、及び電磁波を含む。一時的なコンピュータ可読媒体は、電線及び光ファイバ等の有線通信路、又は無線通信路を介して、プログラムをコンピュータに供給できる。
【0055】
上述した各実施形態に係る制御装置3を構成する各部は、プログラムにより実現するだけでなく、その一部または全部を、ASIC(Application Specific Integrated Circuit)やFPGA(Field-Programmable Gate Array)などの専用のハードウェアにより実現することもできる。
【符号の説明】
【0056】
1 ワーク保持装置、2 ロボットアーム、3 制御装置、3a プロセッサ、3b 内部メモリ、3c ストレージデバイス、4 第1ビジョンセンサ、5 第2ビジョンセンサ、21 リンク、22 関節部、23 エンドエフェクタ、31 位置算出部、32 ロボット制御部