IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ 国立大学法人大阪大学の特許一覧 ▶ トヨタ自動車株式会社の特許一覧

特開2023-73828ワーク取出し装置、ワーク取出し方法、プログラム及び制御装置
<>
  • 特開-ワーク取出し装置、ワーク取出し方法、プログラム及び制御装置 図1
  • 特開-ワーク取出し装置、ワーク取出し方法、プログラム及び制御装置 図2
  • 特開-ワーク取出し装置、ワーク取出し方法、プログラム及び制御装置 図3
  • 特開-ワーク取出し装置、ワーク取出し方法、プログラム及び制御装置 図4
  • 特開-ワーク取出し装置、ワーク取出し方法、プログラム及び制御装置 図5
  • 特開-ワーク取出し装置、ワーク取出し方法、プログラム及び制御装置 図6
  • 特開-ワーク取出し装置、ワーク取出し方法、プログラム及び制御装置 図7
  • 特開-ワーク取出し装置、ワーク取出し方法、プログラム及び制御装置 図8
  • 特開-ワーク取出し装置、ワーク取出し方法、プログラム及び制御装置 図9
  • 特開-ワーク取出し装置、ワーク取出し方法、プログラム及び制御装置 図10
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2023073828
(43)【公開日】2023-05-26
(54)【発明の名称】ワーク取出し装置、ワーク取出し方法、プログラム及び制御装置
(51)【国際特許分類】
   B25J 9/10 20060101AFI20230519BHJP
【FI】
B25J9/10 A
【審査請求】未請求
【請求項の数】11
【出願形態】OL
(21)【出願番号】P 2021186524
(22)【出願日】2021-11-16
(71)【出願人】
【識別番号】504176911
【氏名又は名称】国立大学法人大阪大学
(71)【出願人】
【識別番号】000003207
【氏名又は名称】トヨタ自動車株式会社
(74)【代理人】
【識別番号】100103894
【弁理士】
【氏名又は名称】家入 健
(72)【発明者】
【氏名】原田 研介
(72)【発明者】
【氏名】万 偉偉
(72)【発明者】
【氏名】堂前 幸康
(72)【発明者】
【氏名】張 馨芸
(72)【発明者】
【氏名】森 建郎
(72)【発明者】
【氏名】吹田 和嗣
(72)【発明者】
【氏名】五十嵐 淳
【テーマコード(参考)】
3C707
【Fターム(参考)】
3C707AS04
3C707DS01
3C707KS03
3C707KS04
3C707KS07
3C707KS21
3C707KS36
3C707KT03
3C707KT05
3C707KW05
3C707KX10
3C707LS15
3C707LV06
3C707LV07
3C707MT04
(57)【要約】
【課題】ワークの把持失敗を抑制し確実にワークを取り出すこと。
【解決手段】ワーク取出し装置は、3次元空間に置かれた複数の線状のワークの中から1つずつワークを取り出す。ワーク取出し装置は、ワークを把持する把持手段と、把持手段がワークを把持した後、把持手段により把持されたワークが円状又は矩形状軌道を描くように把持手段を制御する制御手段と、を備えている。
【選択図】図1
【特許請求の範囲】
【請求項1】
3次元空間に置かれた複数の線状のワークの中から1つずつワークを取り出すワーク取出し装置であって、
前記ワークを把持する把持手段と、
前記把持手段がワークを把持した後、前記把持手段により把持されたワークが円状又は矩形状軌道を描くように前記把持手段を制御する制御手段と、
を備える、
ワーク取出し装置。
【請求項2】
請求項1記載のワーク取出し装置であって、
前記把持手段によるワークの把持の成否を判定する判定手段を更に備え、
前記制御手段は、前記判定手段により前記ワークの把持が失敗したと判定された場合のみ、前記把持手段により把持されたワークが円状又は矩形状軌道を描くように前記把持手段を制御する、
ワーク取出し装置。
【請求項3】
請求項2記載のワーク取出し装置であって、
前記判定手段は、前記把持手段により把持されたワークが円状軌道を描くように前記把持手段が制御された後、再度、前記把持手段によるワークの把持の成否を判定し、
前記制御手段は、前記判定手段による判定結果に応じて、前記把持手段により把持されたワークが円状又は矩形状軌道を描くように前記把持手段を制御する、
ワーク取出し装置。
【請求項4】
請求項1乃至3のうちいずれか1項記載のワーク取出し装置であって、
前記制御手段は、前記把持手段により把持されたワークが円状又は矩形状軌道で公転する動作すると共に、該把持手段により把持されたワークの自転、及び、該把持手段により把持されたワークの加振、のうちの少なくとも一方を行うように、前記把持手段を制御する、
ワーク取出し装置。
【請求項5】
請求項1乃至4のうちのいずれか1項記載のワーク取出し装置であって、
前記ワークが円状又は矩形状軌道で動作する際のトルクを検出するトルク検出手段を更に備え、
前記制御手段は、前記トルク検出手段により検出されたトルクが所定値以上であると判定すると、前記把持手段により把持されたワークが円状又は矩形状軌道で動作すると共に、該把持手段により把持されたワークを加振するように、前記把持手段を制御する、
ワーク取出し装置。
【請求項6】
請求項1乃至5のうちいずれか1項記載のワーク取出し装置であって、
前記複数の線状のワークの3次元情報を取得する取得手段を更に備え、
前記制御手段は、
前記取得手段により取得された複数の線状のワークの3次元情報に基づいて、前記把持手段が前記ワークを把持する把持点から、前記複数の線状のワークの最大高さ位置までの距離を算出し、
該算出した距離に基づいて、前記把持手段がワークを把持した後の該ワークの動作を決定する、
ワーク取出し装置。
【請求項7】
請求項6記載のワーク取出し装置であって、
前記制御手段は、前記距離が大きくなるほど、前記ワークの動作量を大きくする、
ワーク取出し装置。
【請求項8】
請求項1乃至5のうちいずれか1項記載のワーク取出し装置であって、
前記3次元空間の複数の線状のワークは巻かれた状態で配置されており、
前記巻かれた状態におけるワークの半径の情報を取得する半径情報取得手段を更に備え、
前記制御手段は、前記半径情報取得手段により取得されたワークの半径の情報に基づいて、前記把持手段により把持されたワークの円状軌道の半径を決定し、該決定した半径に基づいて、該ワークが円状軌道を描くように前記把持手段を制御する
ワーク取出し装置。
【請求項9】
3次元空間に置かれた複数の線状のワークの中から1つずつワークを取り出すワーク取出し方法であって、
前記ワークを把持するステップと、
前記ワークを把持した後、前記把持されたワークが円状又は矩形状軌道を描くように該ワークを動作させるステップと、
を含む、
ワーク取出し方法。
【請求項10】
3次元空間に置かれた複数の線状のワークの中から1つずつワークを把持する処理と、
前記ワークを把持した後、前記把持されたワークが円状又は矩形状軌道を描くように該ワークを動作させる処理と、
をコンピュータに実行させる、
プログラム。
【請求項11】
3次元空間に置かれた複数の線状のワークの中から1つずつワークを取り出す制御を行う制御装置であって、
把持手段がワークを把持した後、前記把持手段により把持されたワークが円状又は矩形状軌道を描くように前記把持手段を制御する、
制御装置。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、ワークを取り出すためのワーク取出し装置、ワーク取出し方法、プログラム及び制御装置に関する。
【背景技術】
【0002】
3次元空間に置かれた複数のワークの中から1つずつワークを把持し、取り出すワーク取出し装置が知られている(例えば、特許文献1参照)。
【先行技術文献】
【特許文献】
【0003】
【特許文献1】特開2009-128191号公報
【発明の概要】
【発明が解決しようとする課題】
【0004】
しかしながら、上記ワーク取出し装置が、線状のワークを把持する場合、例えば、ワーク同士が絡み合うことがあるため、複数のワークを同時に把持するなどのワークの把持に失敗する虞がある。
【0005】
本発明は、このような問題点を解決するためになされたものであり、ワークの把持失敗を抑制し確実にワークを取り出すことができるワーク取出し装置、ワーク取出し方法、プログラム及び制御装置を提供することを主たる目的とする。
【課題を解決するための手段】
【0006】
上記目的を達成するための本発明の一態様は、
3次元空間に置かれた複数の線状のワークの中から1つずつワークを取り出すワーク取出し装置であって、
前記ワークを把持する把持手段と、
前記把持手段がワークを把持した後、前記把持手段により把持されたワークが円状又は矩形状軌道を描くように前記把持手段を制御する制御手段と、
を備える、
ワーク取出し装置
である。
この一態様において、前記把持手段によるワークの把持の成否を判定する判定手段を更に備え、前記制御手段は、前記判定手段により前記ワークの把持が失敗したと判定された場合のみ、前記把持手段により把持されたワークが円状又は矩形状軌道を描くように前記把持手段を制御してもよい。
この一態様において、前記判定手段は、前記把持手段により把持されたワークが円状軌道を描くように前記把持手段が制御された後、再度、前記把持手段によるワークの把持の成否を判定し、前記制御手段は、前記判定手段による判定結果に応じて、前記把持手段により把持されたワークが円状又は矩形状軌道を描くように前記把持手段を制御してもよい。
この一態様において、前記制御手段は、前記把持手段により把持されたワークが円状又は矩形状軌道で公転する動作すると共に、該把持手段により把持されたワークの自転、及び、該把持手段により把持されたワークの加振、のうちの少なくとも一方を行うように、前記把持手段を制御してもよい。
この一態様において、前記ワークが円状又は矩形状軌道で動作する際のトルクを検出するトルク検出手段を更に備え、前記制御手段は、前記トルク検出手段により検出されたトルクが所定値以上であると判定すると、前記把持手段により把持されたワークが円状又は矩形状軌道で動作すると共に、該把持手段により把持されたワークを加振するように、前記把持手段を制御してもよい。
この一態様において、前記複数の線状のワークの3次元情報を取得する取得手段を更に備え、前記制御手段は、前記取得手段により取得された複数の線状のワークの3次元情報に基づいて、前記把持手段が前記ワークを把持する把持点から、前記複数の線状のワークの最大高さ位置までの距離を算出し、該算出した距離に基づいて、前記把持手段がワークを把持した後の該ワークの動作を決定してもよい。
この一態様において、前記制御手段は、前記距離が大きくなるほど、前記ワークの動作量を大きくしてもよい。
この一態様において、前記3次元空間の複数の線状のワークは巻かれた状態で配置されており、前記巻かれた状態におけるワークの半径の情報を取得する半径情報取得手段を更に備え、前記制御手段は、前記半径情報取得手段により取得されたワークの半径の情報に基づいて、前記把持手段により把持されたワークの円状軌道の半径を決定し、該決定した半径に基づいて、該ワークが円状軌道を描くように前記把持手段を制御してもよい。
上記目的を達成するための本発明の一態様は、
3次元空間に置かれた複数の線状のワークの中から1つずつワークを取り出すワーク取出し方法であって、
前記ワークを把持するステップと、
前記ワークを把持した後、前記把持されたワークが円状又は矩形状軌道を描くように該ワークを動作させるステップと、
を含む、
ワーク取出し方法
であってもよい。
上記目的を達成するための本発明の一態様は、
3次元空間に置かれた複数の線状のワークの中から1つずつワークを把持する処理と、
前記ワークを把持した後、前記把持されたワークが円状又は矩形状軌道を描くように該ワークを動作させる処理と、
をコンピュータに実行させる、
プログラム
であってもよい。
上記目的を達成するための本発明の一態様は、
3次元空間に置かれた複数の線状のワークの中から1つずつワークを取り出す制御を行う制御装置であって、
把持手段がワークを把持した後、前記把持手段により把持されたワークが円状又は矩形状軌道を描くように前記把持手段を制御する、
制御装置
であってもよい。
【発明の効果】
【0007】
本発明によれば、ワークの把持失敗を抑制し確実にワークを取り出すことができるワーク取出し装置、ワーク取出し方法、プログラム及び制御装置を提供することができる。
【図面の簡単な説明】
【0008】
図1】本実施形態に係るワーク取出し装置の概略的なシステム構成を示す図である。
図2】本実施形態に係る制御装置の概略的なシステム構成を示すブロック図である。
図3】本実施形態に係るワーク取出し方法のフローを示すフローチャートである。
図4】本実施形態に係る制御装置の概略的なシステム構成を示すブロック図である。
図5】ワークの把持点からワークの最大高さ位置までの距離を示す図である。
図6】ワークの動作を示す図である。
図7】本実施形態に係るワーク取出し方法のフローを示すフローチャートである。
図8】本実施形態に係るワーク取出し方法を説明するための図である。
図9】本実施形態に係る制御装置の概略的なシステム構成を示すブロック図である。
図10】ケーブルの半径に対応する円状軌道を示す図である。
【発明を実施するための形態】
【0009】
実施形態1
以下、図面を参照して本発明の実施形態について説明する。図1は、本実施形態に係るワーク取出し装置の概略的なシステム構成を示す図である。本実施形態に係るワーク取出し装置1は、3次元空間に配置された複数の線状のワークの中から1つずつワークを把持し、移動させることができる。線状のワークは、例えば、コネクタ、分岐部などを有するケーブル状のワークである。複数のワークは、箱内や平面などにバラ積みされている線状の部品などである。
【0010】
本実施形態に係るワーク取出し装置1は、ロボットアーム2と、制御装置3と、3次元ビジョンセンサ4と、を備えている。
【0011】
ロボットアーム2は、把持手段の一具体例である。ロボットアーム2は、例えば、複数のリンク21と、各リンク21を回動可能に連結する関節部(手首関節、肘関節、肩関節など)22と、その先端に設けられワークを把持するエンドエフェクタ23と、を有する多関節型アームとして構成されている。
【0012】
各関節部22には、各関節部22の回転情報を検出するエンコーダなどの回転センサと、各関節部22を駆動するサーボモータなどのアクチュエータと、各関節部22の操作力を検出する力センサと、が設けられている。力センサは、例えば、各関節部22のトルクを検出するトルクセンサなどである。各関節部22には、減速機構などが設けられている。
【0013】
エンドエフェクタ23は、例えば、複数の指部を有している。指部には関節部、アクチュエータなどが設けられており、各指部は、ワークを把持することができるように構成されている。
【0014】
制御装置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と、を備えた通常のコンピュータのハードウェア構成を有する。
【0015】
3次元ビジョンセンサ4は、取得手段の一具体例である。3次元ビジョンセンサ4は、複数のワークの3次元情報を取得する。ワークの3次元情報は、各ワークの形状、位置(3次元座標など)、姿勢などの情報を含む。
【0016】
3次元ビジョンセンサ4は、例えば、ロボットアーム2のエンドエフェクタ23やリンク21などに設けられている。3次元ビジョンセンサ4は、カメラやレーザセンサなどで構成されている。3次元ビジョンセンサ4は、取得したワークの3次元情報を制御装置3に対して出力する。
【0017】
図2は、本実施形態に係る制御装置の概略的なシステム構成を示すブロック図である。本実施形態に係る制御装置3は、候補算出部31と、ロボット制御部32と、を有している。
【0018】
候補算出部31は、3次元ビジョンセンサ4により取得されたワークの3次元情報に基づいて、ロボットアーム2のエンドエフェクタ23がワークを把持する際のワークの把持点の候補である把持候補点を少なくとも1つ算出する。
【0019】
例えば、候補算出部31は、3次元ビジョンセンサ4により取得されたワークの3次元情報に基づいて、各ワークの高さ位置を示す深度情報を算出する。候補算出部31は、算出した各ワークの深度情報に基づいて、高さ方向へ突出した凸部を検出する。
【0020】
候補算出部31は、算出した深度情報に基づいて、例えば、所定高さ以上の点を1とし、所定高さ未満の点を0として2値化し、1となる点を、凸部として検出する。候補算出部31は、上述のように検出した凸部を把持候補点としてもよい。これにより、エンドエフェクタ23が把持し易い凸部を把持候補点にすることができる。
【0021】
候補算出部31は、上述のように算出した複数の把持候補点をロボット制御部32に対して出力する。
【0022】
ロボット制御部32は、制御手段の一具体例である。ロボット制御部32は、ロボットアーム2の動作を制御する。ロボット制御部32は、例えば、各関節部の回転センサからの回転情報(回転角など)と、力センサからの操作力と、に基づいて、各関節部のアクチュエータを制御することで、ロボットアーム2をフィードバック制御する。これにより、ロボットアーム2のエンドエフェクタ23を所望の位置に移動させることができる。
【0023】
ロボット制御部32は、エンドエフェクタ23の指部のアクチュエータを制御することで、エンドエフェクタ23によるワークの把持及び解放を制御する。これにより、ロボット制御部32は、ロボットアーム2を制御することで、ワークを把持し、移動させることができる。
【0024】
ロボット制御部32は、候補算出部31により算出された複数の把持候補点の中から1つの把持候補点を選択してもよい。ロボット制御部32は、3次元ビジョンセンサ4により取得されたワークの3次元情報に基づいて、ロボットアーム2のエンドエフェクタ23が把持候補点でワークを把持するように、ロボットアーム2を制御する。
【0025】
ところで、従来のワーク取出し装置が、線状のワークを把持する場合、例えば、ワーク同士が絡み合うことがあるため、複数のワークを同時に把持するなどのワークの把持に失敗する虞がある。
【0026】
これに対し、本実施形態に係るワーク取出し装置1は、ロボットアーム2のエンドエフェクタ23がワークを把持した後、エンドエフェクタ23により把持されたワークが円状軌道を描くようにロボットアーム2を制御する。なお、ワーク取出し装置1は、ロボットアーム2のエンドエフェクタ23が円状軌道を描くようにロボットアーム2を制御することで、上述の如く、エンドエフェクタ23に把持されたワークも円状軌道を描くこととなる。
【0027】
ワーク取出し装置1は、例えば、ロボットアーム2のエンドエフェクタ23がワークを把持し、所定の高さ位置まで持ち上げた後、エンドエフェクタ23により把持されたワークが円状軌道を描くようにロボットアーム2を制御する。
【0028】
例えば、ケーブルなどの線状のワークは、円を巻いて置かれていることが多い。したがって、その円を解くようにワークを円状軌道で外側から回すことで、そのワーク同士の絡み合いを容易に解くことができる。これにより、ワークの把持失敗を抑制し確実にワークを取り出すことができる。
【0029】
上記円状軌道は、真円だけでなく、楕円も含んでいてもよい。さらに、ロボット制御部32は、ロボットアーム2のエンドエフェクタ23により把持されたワークが矩形状軌道を描くようにロボットアーム2を制御してもよい。
【0030】
ロボット制御部32は、ロボットアーム2がワークを把持した後、ロボットアーム2により把持されたワークが円状軌道で公転しつつ自転するようにロボットアーム2を制御してもよい。これにより、そのワーク同士の絡み合いをワークの公転及び自転によってより容易に解くことができる。
【0031】
ロボット制御部32は、ロボットアーム2がワークを把持した後、ロボットアーム2により把持されたワークが円状軌道で公転すると共に、ロボットアーム2により把持されたワークを加振するように、ロボットアーム2を制御してもよい。これにより、そのワーク同士の絡み合いをワークの公転及び加振によってより容易に解くことができる。
【0032】
例えば、ロボットアーム2のエンドエフェクタ23には、上記振動を発生させる加振器が設けられていてもよい。上記振動の大きさは、コネクタや分岐部などのワーク同士の絡みが発生し易い部位の大きさに応じて設定するのが好ましい。
【0033】
ロボット制御部32は、トルクセンサにより検出されたトルクが所定値以上であると判定すると、ロボットアーム2により把持されたワークが円状軌道で公転すると共に、ロボットアーム2により把持されたワークを加振器により加振するように、ロボットアーム2を制御してもよい。
【0034】
トルクセンサは、トルク検出手段の一具体例である。トルクセンサは、例えば、ロボットアーム2のエンドエフェクタ23に設けられている。トルクセンサは、ワークが円状軌道で動作する際の回転トルクを検出する。ロボットアーム2により把持されたワークを円状軌道で公転動作させる際に、ワーク同士が強く絡まっていると、トルクセンサのトルク値が所定値以上となり高くなる。このタイミングで、ロボットアーム2により把持されたワークを加振器により加振することで、ワーク同士の強い絡み合いをより容易に解くことができる。
【0035】
ロボット制御部32は、ロボットアーム2により把持されたワークが円状軌道で公転しつつ自転すると共に、ロボットアーム2により把持されたワークを加振するように、ロボットアーム2を制御してもよい。これにより、そのワーク同士の絡み合いをワークの公転、自転及び加振によってより容易に解くことができる。
【0036】
ロボット制御部32は、ロボットアーム2のエンドエフェクタ23により把持されたワークが円状軌道で往復動作するようにロボットアーム2を制御してもよい。
【0037】
続いて、本実施形態に係るワーク取出し方法を説明する。図3は、本実施形態に係るワーク取出し方法のフローを示すフローチャートである。
【0038】
3次元ビジョンセンサ4は、複数のワークの3次元情報を取得し、取得したワークの3次元情報を制御装置3に対して出力する(ステップS101)。
【0039】
制御装置3の候補算出部31は、3次元ビジョンセンサ4により取得されたワークの3次元情報に基づいて、ロボットアーム2のエンドエフェクタ23がワークを把持する際のワークの把持候補点を算出する(ステップS102)。候補算出部31は、算出した把持候補点をロボット制御部32に対して出力する。
【0040】
ロボット制御部32は、3次元ビジョンセンサ4により取得されたワークの3次元情報に基づいて、ロボットアーム2のエンドエフェクタ23が把持候補点でワークを把持し持ち上げるように、ロボットアーム2を制御する(ステップS103)。
【0041】
ロボット制御部32は、ロボットアーム2のエンドエフェクタ23により把持されたワークが円状軌道を描くようにロボットアーム2を制御する(ステップS104)。
【0042】
以上、本実施形態に係るワーク取出し装置1は、ロボットアーム2がワークを把持した後、ロボットアーム2により把持されたワークが円状軌道を描くようにロボットアーム2を制御する。これにより、ワーク同士の絡み合いを容易に解くことができ、ワークの把持失敗を抑制し確実にワークを取り出すことができる。
【0043】
実施形態2
図4は、本実施形態に係る制御装置の概略的なシステム構成を示すブロック図である。本実施形態に係る制御装置30は、ロボットアーム2によるワークの把持の成否を判定する成否判定部33を更に備えている。
【0044】
ロボット制御部32は、成否判定部33によりワークの把持が失敗したと判定された場合のみ、ロボットアーム2により把持されたワークが円状軌道を描くようにロボットアーム2を制御する。これにより、ワークの把持が失敗したと判定された場合のみ、上記ワークの円状軌道を描く動作を行うため、必要最小限の動作で済む。
【0045】
成否判定部33は、判定手段の一具体例である。成否判定部33は、ロボットアーム2によりワークが把持された場合、そのワークの把持が成功したか否かを判定する。成否判定部33は、例えば、ワークがロボットアーム2により把持され所定の高さまで持ち上げられた後、そのワークの把持が成功したか否かを判定する。
【0046】
成否判定部33は、ロボットアーム2のエンドエフェクタ23が複数(2つ以上)のワークを同時に把持した場合、ワークの把持が失敗したと判定する。なお、成否判定部33は、ロボットアーム2のエンドエフェクタ23が0個のワークを把持した場合、すなわち、ワークを把持できなった場合にワークの把持が失敗したと判定してもよい。特に、上述の如く、線状のワークを把持する場合、ワーク同士が絡み合い複数のワークを同時に把持する失敗が生じ易く、この失敗を確実に判定する必要がある。
【0047】
例えば、ロボットアーム2のリンク先端側とエンドエフェクタ23との間には、力覚センサ5が設けられている。エンドエフェクタ23がワークを把持した時にエンドエフェクタ23にはワークの重量が掛かる。力覚センサ5は、そのワークの重量を検出する。
【0048】
成否判定部33は、力覚センサ5により検出されたワークの重量に基づいて、ワークの把持が成功したか否かを判定してもよい。成否判定部33には、予めワークの重量が設定されていてもよい。成否判定部33は、力覚センサ5により検出されたワークの重量に基づいて、ロボットアーム2のエンドエフェクタ23が複数のワークを同時に把持した場合、0個のワークを把持した場合、あるいは、ワークが持ち上がらない場合に、ワークの把持が失敗したと判定する。
【0049】
成否判定部33は、トルクセンサにより検出されたワークの重量に基づいて、ワークの把持が成功したか否かを判定してもよい。成否判定部33は、カメラにより撮影されたワークの画像に基づいて、ワークの把持が成功したか否かを判定してもよい。成否判定部33は、上述のように判定したワーク把持成否の判定結果をロボット制御部32に出力する。
【0050】
ロボット制御部32は、上述の如く、成否判定部33によりワークの把持が失敗したと判定された場合、ロボットアーム2により把持されたワークが円状軌道を描くようにロボットアーム2を制御する。
【0051】
さらに、成否判定部33は、ロボットアーム2により把持されたワークが円状軌道を描くように制御された後、再度、ロボットアーム2によるワークの把持の成否を判定してもよい。そして、ロボット制御部32は、成否判定部33による判定結果に応じて、ロボットアーム2により把持されたワークが円状軌道を描くようにロボットアーム2を制御してもよい。これにより、ワーク同士が絡み合いをより確実に解くことができ、ワークの把持失敗をより確実に抑制できる。
【0052】
実施形態3
本実施形態において、ロボット制御部32は、3次元ビジョンセンサにより取得された複数の線状のワークの3次元情報に基づいて、図5に示す如く、ロボットアーム2がワークを把持する把持点から、複数の線状のワークの最大高さ位置までの距離dを算出してもよい。ロボット制御部32は、算出した距離dに基づいて、ロボット制御部32がワークを把持した後のワークの動作を決定してもよい。
【0053】
ワークの把持点からワークの最大高さ位置までの距離dが大きいほど、その把持点のワークが他のワークと強く絡んでいる可能性が高い。したがって、その絡み土合を反映した距離dを考慮して、ワークの動作を決定することで、ワーク同士が絡み合いをより効果的に解くことができる。
【0054】
ロボット制御部32は、ワークの把持点からワークの最大高さ位置までの距離dが大きくなるほど、ワークの動作量を大きくするのが好ましい。これにより、ワークの把持点からワークの最大高さ位置までの距離dが大きく絡み土合が高い場合にワークの動作量を大きくすることで、ワーク同士が絡み合いをより確実に解くことができる。
【0055】
例えば、ワークの把持点からワークの最大高さ位置までの距離dを、(1)から(6)までこの順で徐々に高くなる6つのレベルに分ける。(1)は最も距離dが短く絡み土合が低く、レベルが低い。一方、(6)は最も距離dが長く絡み土合が高く、レベルが高い。
【0056】
(1)から(6)のレベルに対し、例えば、図6に示す如く、ワークの動作が予め対応付けられている。(1)から(6)までこの順でワークの動作量が徐々に大きくなっている。なお、図6において、ワークは時計方向に回転させているが、反時計方向に回転させてもよい。レベル(1)乃至(6)の範囲は、予め実験的に求めた最適値が設定されている。
【0057】
ロボット制御部32は、ワークの把持点からワークの最大高さ位置までの距離dがレベル(1)の範囲内であると判定すると、ロボットアーム2がワークを把持し持ち上げた後、ロボットアーム2により把持されたワークを真直ぐ持ち上げるようにロボットアーム2を制御する。
【0058】
ロボット制御部32は、ワークの把持点からワークの最大高さ位置までの距離dがレベル(2)の範囲内であると判定すると、ロボットアーム2がワークを把持し持ち上げた後、ロボットアーム2により把持されたワークが円状軌道で半周だけ公転するようにロボットアーム2を制御する。
【0059】
ロボット制御部32は、ワークの把持点からワークの最大高さ位置までの距離dがレベル(3)の範囲内であると判定すると、ロボットアーム2がワークを把持し持ち上げた後、ロボットアーム2により把持されたワークが円状軌道で半周だけ公転しつつ1周だけ自転するようにロボットアーム2を制御する。
【0060】
ロボット制御部32は、ワークの把持点からワークの最大高さ位置までの距離dがレベル(4)の範囲内であると判定すると、ロボットアーム2がワークを把持し持ち上げた後、ロボットアーム2により把持されたワークが円状軌道で1周だけ公転するようにロボットアーム2を制御する。
【0061】
ロボット制御部32は、ワークの把持点からワークの最大高さ位置までの距離dがレベル(5)の範囲内であると判定すると、ロボットアーム2がワークを把持し持ち上げた後、ロボットアーム2により把持されたワークが円状軌道で1周だけ公転しつつ1周だけ自転するようにロボットアーム2を制御する。
【0062】
ロボット制御部32は、ワークの把持点からワークの最大高さ位置までの距離dがレベル(6)の範囲内であると判定すると、ロボットアーム2がワークを把持し持ち上げた後、ロボットアーム2により把持されたワークが円状軌道で2周だけ公転するようにロボットアーム2を制御する。
【0063】
上述したようなワークの把持点からワークの最大高さ位置までの距離dと、ワークの動作と、を対応付けた対応付け情報は、予めロボット制御部32などに設定されていてもよい。
【0064】
ロボット制御部32は、学習器を用いて、ロボット制御部32がワークを把持した後のワークの動作を決定してもよい。学習器は、カメラなどにより取得された複数の線状のワークの画像と、ロボット制御部32がワークを把持した後のワークの動作と、の対応関係を学習する。そして、ロボット制御部32は、学習済みの学習器に対して、把持点を含むワークの画像を入力し、学習器から出力された結果に基づいて、ロボット制御部32がワークを把持した後のワークの動作を決定してもよい。
【0065】
学習器は、例えば、RNN(Recurrent neural Network)などのニューラルネットワークで構成されている。このRNNは、中間層にLSTM(Long Short Term Memory)を有していてもよい。学習器は、ニューラルネットワークの代わりに、SVM(Support Vector Machine)などの他の学習器で構成されてもよい。
【0066】
ロボット制御部32は、成否判定部33によりワークの把持が失敗したと判定された場合、ワークの把持点からワークの最大高さ位置までの距離dを算出し、算出した距離dに基づいて、ロボット制御部32がワークを把持した後のワークの動作を決定してもよい。
【0067】
図7は、上記実施形態に係るワーク取出し方法のフローを示すフローチャートである。 3次元ビジョンセンサ4は、図8(a)に示す如く、複数のワークの3次元情報を取得し、取得したワークの3次元情報を制御装置3に対して出力する(ステップS201)。
【0068】
制御装置3の候補算出部31は、3次元ビジョンセンサ4により取得されたワークの3次元情報に基づいて、ロボットアーム2のエンドエフェクタ23がワークを把持する際のワークの把持候補点を算出する(ステップS202)。候補算出部31は、算出した把持候補点をロボット制御部32に対して出力する。
【0069】
ロボット制御部32は、3次元ビジョンセンサ4により取得されたワークの3次元情報に基づいて、ロボットアーム2のエンドエフェクタ23が把持候補点でワークを把持し持ち上げるように、ロボットアーム2を制御する(ステップS203)。
【0070】
成否判定部33は、図8(b)に示す如く、力覚センサ5により検出されたワークの重量に基づいて、ワークの把持が成功したか否かを判定する(ステップS204)。
【0071】
成否判定部33は、ワークの把持が上記複数のワーク把持により失敗したと判定した場合(ステップS204のNO)、ロボット制御部32は、3次元ビジョンセンサ4により取得された複数のワークの3次元情報に基づいて、ワークの把持点からワークの最大高さ位置までの距離を算出する(ステップS205)。
【0072】
ロボット制御部32は、図8(c)に示す如く、算出した距離と対応付け情報とに基づいて、ワークの動作を決定し、ワークがその動作を行うように、ロボットアーム2を制御し(ステップS206)、上記(ステップS204)の処理に戻る。
【0073】
成否判定部33は、図8(d)に示す如く、ワークの把持が上記複数のワーク把持により成功したと判定した場合(ステップS204のYES)、ロボット制御部32は、ワークを所望の位置に移動させるようにロボットアーム2を制御する(ステップS207)。
【0074】
なお、成否判定部33は、ワークの把持が0個のワーク把持により失敗したと判定した場合(ステップS204のNO)、上記(ステップS201)の処理に戻っても良い。
【0075】
実施形態4
図9は、本実施形態に係る制御装置の概略的なシステム構成を示すブロック図である。 ケーブルなどの線状のワークは、例えば、巻かれた状態で配置されていることがある。これに対し、本実施形態に係る制御装置40は、巻かれた状態におけるワークの半径の情報を取得する半径情報取得部34を更に備えている。
【0076】
半径情報取得部34は、半径情報取得手段の一具体例である。半径情報取得部34は、例えば、3次元ビジョンセンサ4により取得されたワークの画像に基づいて、ワークの半径を算出する。ワークの半径の情報は、半径情報取得部34に入力されてもよく、あるいは、予め半径情報取得部34に設定されていてもよい。
【0077】
ロボット制御部32は、半径情報取得部34により取得されたワークの半径の情報に基づいて、ロボットアーム2により把持されたワークの円状軌道の半径を決定する。ロボット制御部32は、決定した半径でワークが円状軌道を描くようにロボットアーム2を制御する。これにより、巻かれた状態で配置された線状のワークの半径の大きさに応じた、最適なワークの円状軌道の大きさを設定できるため、ワーク同士が絡み合いをより効果的に解くことができる。
【0078】
ロボット制御部32は、半径情報取得部34により取得されたワークの半径が大きくなるに従って、ロボットアーム2により把持されたワークの円状軌道を大きくするのが好ましい。
【0079】
例えば、図10に示す如く、ケーブルAの半径Raは、ケーブルBの半径Rbよりも大きい。従って、ロボット制御部32は、ケーブルAの円状軌道SaをケーブルBの円状軌道Sbよりも大きく決定する。
【0080】
本発明のいくつかの実施形態を説明したが、これらの実施形態は、例として提示したものであり、発明の範囲を限定することは意図していない。これら新規な実施形態は、その他のさまざまな形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。これら実施形態やその変形は、発明の範囲や要旨に含まれるとともに、特許請求の範囲に記載された発明とその均等の範囲に含まれる。
【0081】
本発明は、例えば、図3及び図7に示す処理を、プロセッサにコンピュータプログラムを実行させることにより実現することも可能である。
【0082】
プログラムは、様々なタイプの非一時的なコンピュータ可読媒体(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))を含む。
【0083】
プログラムは、様々なタイプの一時的なコンピュータ可読媒体(transitory computer readable medium)によってコンピュータに供給されてもよい。一時的なコンピュータ可読媒体の例は、電気信号、光信号、及び電磁波を含む。一時的なコンピュータ可読媒体は、電線及び光ファイバ等の有線通信路、又は無線通信路を介して、プログラムをコンピュータに供給できる。
【0084】
上述した各実施形態に係る制御装置3を構成する各部は、プログラムにより実現するだけでなく、その一部または全部を、ASIC(Application Specific Integrated Circuit)やFPGA(Field-Programmable Gate Array)などの専用のハードウェアにより実現することもできる。
【符号の説明】
【0085】
1 ワーク取出し装置、2 ロボットアーム、3 制御装置、4 3次元ビジョンセンサ、5 力覚センサ、21 リンク、22 関節部、23 エンドエフェクタ、30 制御装置、31 候補算出部、32 ロボット制御部、33 成否判定部、34 半径情報取得部、40 制御装置
図1
図2
図3
図4
図5
図6
図7
図8
図9
図10