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

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

▶ ファナック株式会社の特許一覧

<>
  • 特許-ロボットシステム及び制御装置 図1
  • 特許-ロボットシステム及び制御装置 図2
  • 特許-ロボットシステム及び制御装置 図3
  • 特許-ロボットシステム及び制御装置 図4
  • 特許-ロボットシステム及び制御装置 図5
  • 特許-ロボットシステム及び制御装置 図6
  • 特許-ロボットシステム及び制御装置 図7
  • 特許-ロボットシステム及び制御装置 図8
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-09-02
(45)【発行日】2024-09-10
(54)【発明の名称】ロボットシステム及び制御装置
(51)【国際特許分類】
   B25J 13/08 20060101AFI20240903BHJP
   B25J 9/10 20060101ALI20240903BHJP
【FI】
B25J13/08 A
B25J9/10 A
【請求項の数】 6
(21)【出願番号】P 2023500820
(86)(22)【出願日】2022-02-14
(86)【国際出願番号】 JP2022005635
(87)【国際公開番号】W WO2022176800
(87)【国際公開日】2022-08-25
【審査請求日】2023-09-12
(31)【優先権主張番号】P 2021024577
(32)【優先日】2021-02-18
(33)【優先権主張国・地域又は機関】JP
(73)【特許権者】
【識別番号】390008235
【氏名又は名称】ファナック株式会社
(74)【代理人】
【識別番号】110002103
【氏名又は名称】弁理士法人にじいろ特許事務所
(72)【発明者】
【氏名】安藤 俊之
【審査官】臼井 卓巳
(56)【参考文献】
【文献】特開2020-179441(JP,A)
【文献】特開2019-159901(JP,A)
【文献】特開2007-144586(JP,A)
【文献】特開2019-155535(JP,A)
【文献】特開2019-198950(JP,A)
【文献】特開2014-028415(JP,A)
【文献】特開2019-084645(JP,A)
【文献】特開2021-020266(JP,A)
【文献】米国特許出願公開第2020/0356068(US,A1)
(58)【調査した分野】(Int.Cl.,DB名)
B25J 9/10-19/04
G05B 19/18-19/406
(57)【特許請求の範囲】
【請求項1】
上方が開口されたコンテナに収容されたワークを取り出すロボットシステムであって、
前記ワークを把持するハンドが装着されたロボットアーム機構と、
前記コンテナを含む2次元の画像データと前記コンテナを含む3次元の点群データとを取得するセンサと、
前記画像データに基づいて前記コンテナに設けられた複数のマーカーの領域を抽出し、前記複数のマーカーの領域に関する複数の2次元座標を特定する特徴点抽出部と、
前記特定された複数の2次元座標に基づいて、前記複数のマーカーの領域に関する前記点群データ上の複数の3次元座標を特定する特徴点位置特定部と、
前記特定された複数の3次元座標に基づいて、前記コンテナの開口の位置、向き、サイズを特定するコンテナ開口特定部と、
を有するロボットシステム。
【請求項2】
前記コンテナの開口の位置、向き、サイズに基づいて、前記コンテナに干渉しないように前記ロボットアーム機構を制御するロボット制御部をさらに有する、
請求項1記載のロボットシステム。
【請求項3】
前記開口は矩形状を有し、
前記特徴点抽出部は、前記画像データに基づいて、前記コンテナの4つの角部のうち3つの角部の上端面にそれぞれ設けられた前記複数のマーカーの領域を抽出する、
請求項2記載のロボットシステム。
【請求項4】
前記コンテナ開口特定部は、
前記マーカーの3次元位置に基づいて、前記コンテナの中心点の3次元位置を計算する中心位置計算部と、
前記複数のマーカーの領域の3次元位置から前記中心点の3次元位置に向かって、前記点群データを走査し、前記コンテナの開口の角部の3次元位置を特定する角位置特定部と、
前記コンテナの開口の角部の3次元位置に基づいて、前記コンテナの開口の位置、向き、サイズを特定するコンテナ開口位置特定部とを有する、請求項3記載のロボットシステム。
【請求項5】
前記開口は矩形状を有し、
前記コンテナの上端面の特定の位置に対する前記コンテナの幅方向と長さ方向とに関するコンテナ情報を記憶する記憶部をさらに有し、
前記特徴点抽出部は、前記画像データに基づいて、前記コンテナの上縁面の特定の位置に設けられた前記コンテナの幅方向と前記コンテナの長さ方向とを特定可能なパターンを有する前記マーカーの領域を抽出し、
前記コンテナ開口特定部は、
前記点群データに基づいて、前記抽出された前記マーカーの領域の3次元位置と前記コンテナの長さ方向と前記コンテナの幅方向とを特定する特徴点位置特定部と、
前記マーカーの領域の3次元位置と、前記コンテナの幅方向と、前記コンテナの長さ方向とに基づいて、前記コンテナの開口面上の中心点の3次元位置を計算する中心位置計算部と、
前記マーカーの領域の3次元位置から前記中心点の3次元位置に向かって、前記点群データを走査し、前記コンテナの開口の角部の3次元位置を特定する角位置特定部と、
前記コンテナの開口の角部の3次元位置に基づいて、前記コンテナの開口の位置、向き、サイズを特定するコンテナ開口位置特定部とを有する、
請求項1記載のロボットシステム。
【請求項6】
上方が開口されたコンテナを撮影するセンサの出力に基づいて、前記コンテナに収容されたワークを把持するロボットアーム機構を制御する制御装置であって、
前記センサから、前記コンテナを含む2次元の画像データと前記コンテナを含む3次元の点群データとを受信する受信部と、
前記画像データに基づいて前記コンテナに設けられた複数のマーカーの領域を抽出し、前記複数のマーカーに関する複数の2次元座標を特定する特徴点抽出部と、
前記特定された複数の2次元座標に基づいて、前記複数のマーカーの領域に関する前記点群データ上の複数の3次元座標を特定する特徴点位置特定部と、
前記特定された複数の3次元座標に基づいて、前記コンテナの開口の位置、向き、サイズを特定するコンテナ開口特定部と、
を具備する制御装置。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、ロボットシステム及び制御装置に関する。
【背景技術】
【0002】
従来から、コンテナの内部にバラ積みされたワークをロボットにより把持し、搬送するロボットシステムが知られている。このようなロボットシステムにおいて、コンテナに対してロボットが干渉しないように、コンテナの開口の位置、向き、サイズをロボットに教示する必要がある。教示する方法としては、例えば、ロボットアームを動作させてハンドをコンテナの開口部を規定する縁部に当接させることで、縁部の位置座標値を求めることが開示されている(例えば、特許文献1)。
【0003】
しかしながら、上記のようなハンドをコンテナの縁部に当接させるタッチアップ作業を、コンテナが変わる毎に実行するのは面倒であった。また、ロボットアームにタッチアップ用のピンを取り付け、手動操作によりロボットアームに取り付けたピンをコンテナの縁部の所定の箇所に接触させる作業は、作業者の技量に依存するため、品質がバラついてしまう場合があった。
【先行技術文献】
【特許文献】
【0004】
【文献】特開2015-213973号公報
【発明の概要】
【発明が解決しようとする課題】
【0005】
ロボットアーム機構によるコンテナへのタッチアップ動作をすることなく、コンテナの開口の位置、向き、サイズを特定することが望まれている。
【課題を解決するための手段】
【0006】
本開示の一態様に係るロボットシステムは、ワークを把持するハンドが装着されたロボットアーム機構と、コンテナを含む2次元の画像データとコンテナを含む3次元の点群データとを取得するセンサと、画像データに基づいてコンテナに設けられた複数のマーカーの領域を抽出し、複数のマーカーの領域に関する複数の2次元座標を特定する特徴点抽出部と、特定された複数の2次元座標に基づいて、複数のマーカーの領域に関する点群データ上の複数の3次元座標を特定する特徴点位置特定部と、特定された複数の3次元座標に基づいて、コンテナの開口の位置、向き、サイズを特定するコンテナ開口特定部とを有する。
【発明の効果】
【0007】
コンテナへのタッチアップ動作をすることなく、コンテナの開口の位置、向き、サイズを特定することができる。
【図面の簡単な説明】
【0008】
図1図1は、本実施形態に係るロボットシステムの一例を示す外観図である。
図2図2は、図1のコンテナの一例を示す平面図である。
図3図3は、図1のロボットシステムのブロック構成図である。
図4図4は、図1のロボットシステムによるコンテナ開口特定処理の手順を示すフローチャートである。
図5図5は、図4のコンテナ開口特定処理の説明を補足する図である。
図6図6は、本実施形態の変形例に係るロボットシステムで使用されるコンテナの一例を示す平面図である。
図7図7は、本実施形態の変形例に係るロボットシステムによるコンテナ開口特定処理の手順を示すフローチャートである。
図8図8は、本実施形態に係るロボットシステムの他の例を示す外観図である。
【発明を実施するための形態】
【0009】
以下、図面を参照しながら本実施形態に係るロボットシステムを説明する。以下の説明において、略同一の機能及び構成を有する構成要素については、同一符号を付し、重複説明は必要な場合にのみ行う。
【0010】
以下、図1乃至図5を参照して、本実施形態に係るロボットシステムを説明する。
図1に示すように、本実施形態に係るロボットシステム10は、コンテナ60の内部にバラ積みされたワーク70を把持するハンドが取り付けられたロボットアーム機構20と、ロボットアーム機構20の設置面に設定された矩形状のコンテナ配置エリア50を上方から撮影する3次元センサ30と、ロボットアーム機構20及び3次元センサ30を制御する制御装置40と、を有する。ロボットアーム機構20のロボット座標系のX軸、Y軸及びZ軸は、図1図2に示す向きに定義される。例えば、X軸をロボットアーム機構20の設置面に平行な任意の軸、Y軸をロボットアーム機構20の設置面に平行で、且つX軸に直交する軸、Z軸をX軸とY軸とに直交する軸と定義する。Z軸は、ロボットアーム機構20の設置面に垂直な軸と平行である。コンテナ配置エリア50は、その短軸がロボット座標系のX軸と平行となり、長軸がロボット座標系のY軸と平行となるように設定されている。
【0011】
ロボットアーム機構20には、座標型ロボット、円筒座標型ロボット、直角座標型ロボット、垂直多関節型ロボット、水平多関節型(スカラ型)ロボット、パラレルリンク型ロボットなどの任意の機構を適用することができる。
【0012】
3次元センサ30は、支持部材により、コンテナ配置エリア50に配置されたコンテナ60の開口63に対峙する向きに配置されている。3次元センサ30は、コンテナ60を含む2次元の画像データと、3次元の点群データとを取得する。コンテナ画像は、色情報(色調や階調)を有するピクセルを2次元座標に従って並べたものであるのに対し、点群データは、コンテナ配置エリア50を上方から撮影したコンテナ配置エリア50を撮影視野に含むデータであり、3次元座標情報を有するピクセル(点)の集合体である。
【0013】
点群データにおける3次元座標系はロボット座標系と同様の向きに定義される。例えば、3次元座標は、ロボットアーム機構20の設置面に平行で、且つ互いに直交する2つの軸をX軸及びY軸、ロボットアーム機構20の設置面に垂直な軸をZ軸として定義される。Z軸方向は深さ方向または奥行方向ともいう。画像データにおける2次元座標は、点群データにおける3次元座標のX座標、Y座標にそれぞれ対応する。つまり、画像データ上の2次元位置は、3次元の点群データ上の3次元位置と関連付いている。2次元の画像データ上で指定された点の3次元位置を点群データから特定することができる。
【0014】
3次元センサ30は、ステレオカメラ方式を採用したデバイスとすることができる。ステレオカメラ方式では、2台のカメラにより撮影された2次元の画像データを画像処理することによって、ピクセルに色情報と3次元座標情報とを与えた点群データを取得することができる。画像データは、1台のカメラにより撮影されたものであってもよいし、2台のカメラにより撮影された画像データを画像処理したものであってもよい。もちろん、2次元の画像データと3次元の点群データとを取得できるのであれば、3次元センサ30は、上記に限定されることはない。3次元センサ30は、光切断法、Time-of-flight法、Depth from Defocus法などを応用した既知の様々なデバイスから選択的に使用することができる。また、3次元センサ30は、位置関係が固定されている2つのデバイスからなるものであってもよい。
【0015】
コンテナ60は、上方が開口された箱体に構成される。箱体は直方体形状を有し、箱体の内壁により規定される開口63は、矩形状を有する。コンテナ60の短手方向(幅方向)をx方向、長手方向(長さ方向)をy方向、高さ方向をz方向と定義する。内壁は、箱体を構成する4枚の側壁61の内側面に対応するものである。箱体を構成する4枚の側壁61の上端面61aを単にコンテナ60の上端面(縁部)61aと称する。2枚の側壁61が直角をなす箇所をコンテナ60の角部61bという。コンテナ60の内壁の4つの角は、コンテナ60の開口63の4つの角にそれぞれ対応する。コンテナ60の開口63が矩形状であるため、コンテナ60の開口63の少なくとも3つの角の位置が分かることで、コンテナ60の開口63の位置、向き、サイズを特定することができる。もちろん、コンテナ60の開口63の対角線上に向かい合う2つの角の位置が分かることで、コンテナ60の開口63の位置向き、サイズを特定することができる。
【0016】
後述の作業プログラムにおいて、例えば、コンテナ60の開口63の位置はロボット座標系(X,Y,Z)で表されている。コンテナ60の開口63の向きは、基準とする向きに対するX軸周りの回転角度、Y軸周りの回転角度、及びZ軸周りの回転角度で表されている。基準となるコンテナ60の開口63の向きは、コンテナ60の開口面(xy平面)がロボットアーム機構20の設置面(XY平面)に平行であり、コンテナ60の開口面の長軸(y軸)方向がコンテナ配置エリア50の長軸(Y軸)方向と平行となる向きとする(図2参照)。X軸周りの回転角とY軸周りの回転角とが共に0度であるとき、コンテナ60の開口面は水平である。
【0017】
図2に示すように、コンテナ60の4つの角部のうち3つの角部61bの上端面61aの特定の位置には、円形状のマーカ81,82,83が設けられる。マーカ81,82,83は、裏面に接着剤が塗布されたシール部材で提供されてもよいし、印刷等によりコンテナ60に直接的に設けられてもよい。コンテナ60の開口63を特定する精度という観点では、コンテナ60に直接的に設けられることが望ましい。また、既存のコンテナの活用という観点においては、シール部材で提供される方が望ましい。この場合、コンテナ60の開口63の特定処理が終了した後に、コンテナ60に貼付したマーカ81,82,83を外すことで、コンテナ60を元の状態に戻すことができる。位置のマーカ81,82,83は、パターンマッチング処理などの画像処理によりコンテナ画像から抽出しやすいように、その色、形状が決められている。例えば、マーカ81,82,83の色は、マーカ81,82,83を設ける位置付近のコンテナ60の色、コンテナ60が配置される床面の色に対してコントラスト比が大きくなるように決められていることが望ましい。また、マーカ81,82,83の形状は、床面の模様、軽量化のために設けられたコンテナ60の切り欠き、孔の形状などのコンテナ画像に含まれてしまう形状と類似しないことが望ましい。典型的には、3つのマーカ81,82,83は、全て同一のものであるが、互いに異なるものであってもよいし、2種類であってもよい。
【0018】
図3に示すように、制御装置40は、プロセッサ41を有する。プロセッサ41には、データ・制御バス47を介してメモリ43、記憶装置45、3次元センサ30及びロボットアーム機構20(モータドライバ)が接続されている。プロセッサ41は、ロボットシステム10を統括して制御する。メモリ43は、プロセッサ41のワークスペースとして機能する。
【0019】
記憶装置45は、コンテナ60の内部にバラ積みされたワーク70のピッキング作業をロボットアーム機構20に実行させるための作業プログラムが記憶されている。プロセッサ41は作業プログラムを実行するとき、ロボットアーム機構20を制御するロボット制御部として機能する。プロセッサ41により作業プログラムが実行されることで、ロボットアーム機構20は、作業プログラムで規定されたシーケンスに従って動作し、コンテナ60の内部からワーク70を取り出してコンベヤ、作業台などの指定箇所に搬送する動作を繰り返し実行することができる。作業プログラムには、ロボットアーム機構20がコンテナ60に干渉しないように、コンテナ60の開口63の位置、向き、サイズが規定されている。作業プログラムにおけるコンテナ60の開口63の位置、向きは、ロボット座標系で表されている。コンテナ60の開口63の位置、向き、サイズは、コンテナ60が交換される毎に補正される。
【0020】
作業プログラムには、コンテナ60の開口63の位置、向き、サイズを補正するための補正プログラムとして、コンテナ60の開口63を特定するプログラムが関連付けされている。プロセッサ41は補正プログラムを実行するとき、コンテナ画像から特徴点(マーカ81,82,83)を抽出する特徴点抽出部、点群データから特徴点(マーカ81,82,83)の3次元位置を特定する特徴点位置特定部、特徴点(マーカ)の3次元位置に基づいて、コンテナ60の中心点65の3次元位置を計算する中心位置計算部、特徴点(マーカ81,82,83)の3次元位置からコンテナ60の中心点65の3次元位置に向かって、点群データを走査し、コンテナ60の開口63の角部の3次元位置(コンテナ60の内壁の角部の3次元位置)を特定する角位置特定部、及びコンテナ60の開口63の角部の3次元位置に基づいて、コンテナ60の開口63の位置、向き、サイズを特定するコンテナ開口特定部として機能する。プロセッサ41により補正プログラムが実行されることで、コンテナ配置エリアに配置されたコンテナ60の開口63の位置、向き、サイズが特定され、作業プログラムにおけるコンテナ60の開口63の位置、向き、サイズが補正される。
【0021】
本実施形態では、制御装置40は、ロボットアーム機構20を制御する機能と、コンテナ60の開口63の位置、向き、サイズを特定する機能との両方を有するものとしたが、ロボットアーム機構20を制御する機能を有するロボット制御装置と、コンテナ60の開口63の位置、向き、サイズを特定する機能を有するコンテナ開口特定装置とを別体として構成してもよい。この場合、図8に示すように、ロボットシステム10は、ロボットアーム機構20と、ロボットアーム機構20を制御するロボット制御装置41と、3次元センサ30と、3次元センサ30の出力に基づいて、コンテナ配置エリア50に配置されたコンテナ60の開口63の位置、向き、サイズを特定するコンテナ開口特定装置43とにより構成される。コンテナ開口特定装置43は、3次元センサ30から受信したコンテナ60に関する画像データと点群データとに基づいて、コンテナ60の開口63の位置、向き、サイズを特定し、特定したコンテナ60の開口63の位置、向き、サイズに関する情報を、ロボット制御装置41に送信する。ロボット制御装置41は、コンテナ開口特定装置43から受信したコンテナ60の開口63の位置、向き、サイズに関する情報に基づいて、作業プログラム上のこれらのパラメータを補正し、コンテナ60に干渉しないようにロボットアーム機構20を制御する。
【0022】
以下、図4図5を参照して、本実施形態に係るロボットシステム10によるコンテナ60の開口63の位置、向き、サイズを特定する処理(コンテナ開口特定処理)を説明する。
コンテナ配置エリアにコンテナ60が配置されると、3次元センサ30によりコンテナ配置エリアが撮影され、コンテナ60を含む2次元の画像(コンテナ画像)のデータと、コンテナ60を含む3次元の点群データが取得される(ステップS11)。
【0023】
次に、コンテナ画像に対してパターンマッチング処理などの所定の画像処理が実行され、コンテナ画像から3つのマーカ81,82,83が抽出され(ステップS12)、抽出されたマーカ81,82,83の中心位置81c、82c、83cの2次元座標が特定される。
【0024】
マーカの中心位置81c、82c、83cの2次元座標を用いて、点群データから、マーカの中心位置81c、82c、83cに対応する点が特定され、それにより、マーカの中心位置81c、82c、83cの3次元座標が特定される(ステップS13)。特定された3つのマーカの中心位置81c、82c、83cの3次元座標からコンテナ60の開口面上の中心位置65の3次元座標が計算される(ステップS14)。マーカ81,82,83の中心位置81c、82c、83cの3次元座標からコンテナ60の中心位置65の3次元座標に向かう方向81d,82d,83dが点群データの走査方向として決定される(ステップS15)。なお、ステップS12で特定されたマーカ81,82,83の中心位置81c、82c、83cの2次元座標により、コンテナ60の開口面上の中心位置65の2次元座標を計算し、マーカ81,82,83の中心位置81c、82c、83cの2次元座標からコンテナ60の中心位置65の2次元座標に向かう方向81d,82d,83dが点群データの走査方向として決定してもよい。
【0025】
点群データが、ステップS15で決定された走査方向81d,82d,83dに沿って走査され、コンテナ60の開口63の角部(コンテナ60の内壁の角部)の位置631,632,633の3次元座標が特定される(ステップS16)。ステップS16では、例えば、点群データにおいてマーカ81の中心位置81cに対応する点から走査方向81d上の複数の点が次々と抽出され、高さの変化値(Z座標の変化値)が計算される。特定の点の高さに対するその内側の点の高さの差が閾値よりも小さいとき、それら2つの点はコンテナ60の上端面61aの点であると判定される。一方、特定の点の高さに対するその内側の点の高さの差が閾値よりも大きいとき、それら2つの点の間にコンテナの側壁とコンテナの開口との境界があるということを示し、内側(コンテナ中心側)の点をコンテナ60の開口63の角部の点として特定される。
【0026】
コンテナ60の開口63の3つの角位置631,632,633の3次元座標に基づいて、コンテナ60の開口63の位置、向き、サイズが計算される(ステップS17)。ステップS17の処理では、例えば、コンテナ60の開口63の位置は、コンテナ60の中心位置65とすることができる。もちろん、コンテナ60の開口63の位置は、マーカ81,82,83の中心位置81c、82c、83cのいずれかとすることもできる。コンテナ60の開口63の向きとして、X軸周りの回転角度、Y軸周りの回転角度及びZ軸周りの回転角度を計算により求めることができる。例えば、基準状態における角位置631から角位置632に向かう3次元ベクトルと、ステップS16で特定された角位置631から角位置632に向かう3次元ベクトルと、各軸周りの回転座標変換行列とを用いることで、基準状態に対して各軸周りにどれだけ回転しているかを計算により求めることができる。コンテナ60の開口63のサイズとして、角位置631の3次元座標と角位置632の3次元座標とにより、コンテナ60の開口63のy軸方向の長さ(開口長さ)を、角位置631の3次元座標と角位置633の3次元座標とにより、コンテナ60の開口63のx軸方向の長さ(開口幅)を計算することができる。
【0027】
なお、ステップS17で特定されたコンテナ60の開口63の向きがX軸周りまたはY軸周りに大きく回転している場合、つまり、コンテナ60の開口面が水平ではない場合がある。X軸周りの回転角度またはY軸周りの回転角度が所定値に比較して大きいとき、折り畳み式のコンテナ60がきちんと組み立てられていない、コンテナ60が破損している、コンテナ60の下に物が挟まっているなどが考えられる。また、コンテナ60の開口63の一部がロボットアーム機構20の動作領域外、つまり、コンテナ60がコンテナ配置エリア50の内部にきちんと配置されていない場合がある。そのため、制御装置40は、コンテナ60の開口63の向きがコンテナ配置エリアの設定面に対して水平ではないと判定した場合や、コンテナ60の開口63の位置、向き、サイズに基づいて、コンテナ60の一部がコンテナ配置エリア50からはみ出ていると判定した場合に、ロボットアーム機構20によるバラ積み作業が開始される前に、スピーカ、表示装置などの報知手段(図示しない)を制御して、作業員に報知するようにしてもよい。
【0028】
コンテナ開口特定処理において特定されるコンテナ60の開口63の位置、向きは、典型的には、3次元センサ30の座標系で表される。しかしながら、ロボットアーム機構20に対して3次元センサ30が設置される位置、向きは既知であるため、3次元センサ30の座標系における位置、向きは作業プログラム上で扱われるロボット座標系等に自由に変換することができる。もちろん、3次元センサ30から出力される画像データ、点群データにおける座標が予めロボット座標系に変換されていてもよい。
【0029】
以上説明した本実施形態に係るロボットシステム10によれば、以下のような効果を発揮する。
ロボットシステム10で活用されるコンテナ60、コンテナ60が配置される場所は様々である。例えば、コンテナ画像に対するパターンマッチング処理では、コントラスト比が小さいために、コンテナ60の側壁61と開口63との境界を特定できない場合がある。点群データを走査し、高さの変化値を検出する処理では、コンテナ60に軽量化等のための切り欠き、孔などが設けられているために、高さが変化した位置がコンテナ60の側壁61と開口63との境界位置ではない場合がある。
【0030】
本実施形態に係るロボットシステム10は、画像データを用いて点群データの走査方向を決め、画像データにより決められた走査方向に沿って点群データを走査しながら、高さの変化値を見ていくことで、コンテナ60の側壁61とコンテナ60の開口63との境界を確実に捉えることができる。それにより、高い精度でコンテナ60の開口63の位置、向き、サイズを検出することができる。このように、コンテナ60の開口63の位置、向き、サイズを特定するために、画像データと点群データとの2種類のデータを活用したことは本実施形態に係るロボットシステム10の特徴の1つである。
【0031】
本実施形態では、コンテナ60の開口63が矩形状であることを前提としたが、画像データと点群データとを活用して開口63の位置、向き、サイズを特定できるのであれば、開口63の形状は矩形状に限定されない。例えば、コンテナの開口が円形状である場合、コンテナの側壁の上端面の任意の3箇所にマーカをそれぞれ設ければよい。3箇所の3次元位置を特定することで、コンテナの開口の中心位置の3次元座標を計算により求めることができる。また、2箇所に設ける場合においては、1つ目のマーカをコンテナの側壁の上端面の任意の位置に設け、2つ目のマーカを、1つ目のマーカに対してコンテナの中心位置を挟んで対称な位置に設ければよい。
【0032】
本実施形態では、コンテナ60の4つの角部61bのうち3つの角部61bに3つのマーカ81,82,83が設けられていたが、マーカは1つであってもよい。以下、図6図7を参照して本実施形態の変形例を説明する。
【0033】
図6は、コンテナ60のy方向(長さ方向)とx方向(幅方向)とが特定可能なパターンを有するマーカ91の一例を示している。図6に示すように、マーカ91は4つの円形状のマーカ部分92,93,94,95を有し、1つの基準マーカ部分92に対して1つのマーカ部分93が第1方向に沿って配置され、2つのマーカ部分94,95が第1方向に直交する第2方向に沿って等間隔に配置されている。マーカ91は、基準マーカ部分92が、コンテナ60の特定の位置(原点)に配置され、第1方向がコンテナ60のy方向(長さ方向)と平行になり、第2方向がコンテナ60のx方向(幅方向)と平行になるように、コンテナ60の角部61bの上端面61aに設けられている。
【0034】
図6に示すマーカ91が設けられたコンテナ60の開口63の位置、向き、サイズを特定する処理を図7を参照して説明する。図7に示すコンテナ60の開口63の位置、向き、サイズを特定する処理のステップS21乃至ステップS27は、図4に示す処理のステップS11乃至ステップS17にそれぞれ対応し、共通する部分が多い。そのため、一部の処理の詳細説明は省略する。
【0035】
図7に示すように、3次元センサ30によりコンテナ画像のデータと、コンテナ60を含む3次元の点群データが取得される(ステップS21)。次に、コンテナ画像に対してパターンマッチング処理などの所定の画像処理が実行され、コンテナ画像からマーカ91のマーカ部分92,93,94,95が抽出され、抽出された4つのマーカ部分92,93,94,95のうち、3つのマーカ部分92、94,95が配列された方向をコンテナ60のx方向、2つのマーカ部分92,93が配列された方向をコンテナ60のy方向として特定される(ステップS22)。ステップS22の処理では、3つのマーカ部分92,94,95の中心位置を通る直線方向がコンテナ60のx方向、2つのマーカ部分92,93の中心位置を通る直線方向がコンテナ60のy方向として特定される。また、基準マーカ部分92の中心位置がコンテナ60の特定の位置(原点)として特定される。
【0036】
制御装置40の記憶装置45には、コンテナ60の角部61bの上端面61aの特定の位置(コンテナ60の原点)に対してコンテナ60の長さ、幅に関するコンテナ情報が記憶されている。ステップS23の処理により、コンテナ60の特定の位置(原点)、コンテナ60のx方向(幅方向)、及びコンテナ60のy方向(長さ方向)が特定されることで、記憶装置45に記憶されたコンテナ情報により、コンテナ60の開口面上の中心点65を特定できる(ステップS23)。基準マーカ部分92の中心点からコンテナ60の開口63の中心点65に向かう方向92dが点群データの走査方向として決定される(ステップS24)。
【0037】
点群データが、ステップS25で決定された走査方向92dに沿って走査され、コンテナ60の開口63の角部(コンテナ60の内壁の角部)の位置631の3次元座標が特定される(ステップS25)。記憶装置45には、コンテナ60の開口63の角位置に対してコンテナ60の開口63の幅、長さに関するコンテナ開口情報が記憶されている。ステップS26において、コンテナ60の開口63の角位置631の3次元座標が特定され、ステップS22において、コンテナ60の長さ方向、及びコンテナ60の幅方向が特定されていることで、記憶装置45に記憶されたコンテナ開口情報により、コンテナ60の開口63の位置、向き、サイズが計算される(ステップS26)。
【0038】
以上説明した変形例1に係るロボットシステムによれば、本実施形態に係るロボットシステム10と同様の効果を奏し、画像データと点群データとの2種類のデータを活用することで、ロボットアーム機構20によるコンテナ60へのタッチアップ動作をさせることなく、コンテナ60の開口63の位置、向き、サイズを特定することができる。
【0039】
本発明のいくつかの実施形態を説明したが、これらの実施形態は、例として提示したものであり、発明の範囲を限定することは意図していない。これら実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。これら実施形態やその変形は、発明の範囲や要旨に含まれると同様に、特許請求の範囲に記載された発明とその均等の範囲に含まれるものである。
【符号の説明】
【0040】
60…コンテナ、61…コンテナの側壁、61a…コンテナの上端面(縁部)、61b…コンテナの角部、63…コンテナの開口、81,82,83…マーカ。
図1
図2
図3
図4
図5
図6
図7
図8