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

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

▶ 株式会社東芝の特許一覧 ▶ 東芝電機サービス株式会社の特許一覧

<>
  • 特許-制御装置及びプログラム 図1
  • 特許-制御装置及びプログラム 図2
  • 特許-制御装置及びプログラム 図3
  • 特許-制御装置及びプログラム 図4
  • 特許-制御装置及びプログラム 図5
  • 特許-制御装置及びプログラム 図6
  • 特許-制御装置及びプログラム 図7
  • 特許-制御装置及びプログラム 図8
  • 特許-制御装置及びプログラム 図9
  • 特許-制御装置及びプログラム 図10
  • 特許-制御装置及びプログラム 図11
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-05-10
(45)【発行日】2024-05-20
(54)【発明の名称】制御装置及びプログラム
(51)【国際特許分類】
   B25J 13/08 20060101AFI20240513BHJP
【FI】
B25J13/08 A
【請求項の数】 10
(21)【出願番号】P 2020045226
(22)【出願日】2020-03-16
(65)【公開番号】P2021146403
(43)【公開日】2021-09-27
【審査請求日】2022-12-01
(73)【特許権者】
【識別番号】000003078
【氏名又は名称】株式会社東芝
(73)【特許権者】
【識別番号】598076591
【氏名又は名称】東芝インフラシステムズ株式会社
(74)【代理人】
【識別番号】110002147
【氏名又は名称】弁理士法人酒井国際特許事務所
(72)【発明者】
【氏名】鄭 華馨
(72)【発明者】
【氏名】松村 淳
(72)【発明者】
【氏名】渡辺 優香
【審査官】樋口 幸太郎
(56)【参考文献】
【文献】特開2019-150904(JP,A)
【文献】特開2018-051684(JP,A)
【文献】特開2017-097847(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
B25J 13/08
(57)【特許請求の範囲】
【請求項1】
載置部に載置された物品を把持して当該物品の移動を行う荷役装置に接続される第1の接続部と、
前記載置部を上方から撮像する撮像装置に接続される第2の接続部と、
前記撮像装置で撮像された画像を前記第2の接続部を介して取得し、取得した前記画像から前記載置部に載置された前記物品を認識する認識処理を実行し、前記認識処理で認識された前記物品の物品間の離間距離を算出し、前記離間距離に基づいて移動順序に係る優先度を前記物品に設定し、前記第1の接続部を介して前記荷役装置を制御することで、前記優先度に応じた順序で前記物品を移動させる制御部と、
を備え
前記制御部は、前記優先度の設定において、上位の優先度を設定した前記物品との離間距離が最大となる他の物品に次位の優先度を順次設定する、制御装置。
【請求項2】
前記制御部は、認識した前記物品の中から、高さが最大の物品を一つ選定し、選定した物品の優先度を最上位に設定する請求項1に記載の制御装置。
【請求項3】
前記制御部は、認識した前記物品の中から、物品群の端部又は角部に存在する物品を一つ選定し、選定した物品の優先度を最上位に設定する請求項1に記載の制御装置。
【請求項4】
前記制御部は、前記認識処理で認識された前記物品毎に、当該物品を包含し且つ当該物品の外縁の少なくとも2点に接する外接円を設定し、当該外接円の中心間の距離に基づいて前記離間距離を算出する請求項1乃至3の何れか一項に記載の制御装置。
【請求項5】
前記制御部は、上位の優先度を設定した前記物品と他の物品との両物品間の離間距離が、当該両物品に係る前記外接円の各々の半径を加算した半径和以下となる場合、前記他の物品を優先度の設定対象から除外する請求項4に記載の制御装置。
【請求項6】
前記制御部は、上位の優先度を設定した前記物品との離間距離が最大となった他の物品と、当該他の物品の周辺に存在する周辺物品との間の離間距離が前記半径和以下となる場合、前記他の物品を優先度の設定対象から除外する請求項5に記載の制御装置。
【請求項7】
前記制御部は、前記荷役装置による前記物品の把持又は移動の際に異常を検出すると、前記撮像装置で撮像された新たな画像を用いて前記認識処理を実行する請求項1乃至6の何れか一項に記載の制御装置。
【請求項8】
前記制御部は、前記物品の移動が完了した後、当該物品の移動後に前記撮像装置で撮像された新たな画像と、前記認識処理で使用された前回の画像とに基づいて、移動済の前記物品を除く残りの物品の前記移動の前後における変化量を検出する差分チェックを実行し、当該変化量が閾値を上回った場合に、前記新たな画像を用いて前記認識処理を実行する請求項1乃至7の何れか一項に記載の制御装置。
【請求項9】
前記第2の接続部は、2次元画像を撮像する第1の撮像装置と、3次元画像を撮像する第2の撮像装置とに接続され、
前記制御部は、前記第1の撮像装置及び前記第2の撮像装置で撮像された前記2次元画像及び前記3次元画像に基づき、前記載置部に載置された前記物品の位置、形状及び姿勢を認識する請求項1乃至8の何れか一項に記載の制御装置。
【請求項10】
載置部に載置された物品を把持して当該物品の移動を行う荷役装置に接続される第1の接続部と、前記載置部を上方から撮像する撮像装置に接続される第2の接続部とを備える制御装置のコンピュータに、
前記撮像装置で撮像された画像を前記第2の接続部を介して取得する取得ステップと、
前記取得ステップで取得した前記画像から前記載置部に載置された前記物品を認識する認識処理を実行する認識ステップと、
前記認識ステップで認識された前記物品の物品間の離間距離を算出する算出ステップと、
前記離間距離に基づいて移動順序に係る優先度を前記物品に設定し、前記優先度の設定において、上位の優先度を設定した前記物品との離間距離が最大となる他の物品に次位の優先度を順次設定する設定ステップと、
前記第1の接続部を介して前記荷役装置を制御することで、前記優先度に応じた順序で前記物品を移動させる制御ステップと、
を実行させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明の実施形態は、制御装置及びプログラムに関する。
【背景技術】
【0002】
従来、ロボットアーム等の移動装置を用いることで荷物等の物品の荷役(移動)が行われている。例えば、移動対象の物品が置かれた場所を撮像することで得られた画像から物品の位置、形状及び姿勢を認識し、周囲がクリアな物品から順番に把持を行う技術が知られている。
【先行技術文献】
【特許文献】
【0003】
【文献】特開2011-73066号公報
【発明の概要】
【発明が解決しようとする課題】
【0004】
しかしながら、従来の技術では、把持対象(移動対象)の物品と当該物品の周囲に存在する他の物品との距離に基づき順番を決定するため、物品全体の位置関係を考慮することはできず、効率性の観点から更なる改善の余地がある。
【0005】
本発明が解決しようとする課題は、物品の移動を効率的に行うことが可能な制御装置及びプログラムを提供することである。
【課題を解決するための手段】
【0006】
実施形態の制御装置は、第1の接続部と、第2の接続部と、制御部とを備える。第1の接続部は、載置部に載置された物品を把持して当該物品の移動を行う荷役装置に接続される。第2の接続部は、前記載置部を上方から撮像する撮像装置に接続される。制御部は、前記撮像装置で撮像された画像を前記第2の接続部を介して取得し、取得した前記画像から前記載置部に載置された前記物品を認識する認識処理を実行し、前記認識処理で認識された前記物品の物品間の離間距離を算出し、前記離間距離に基づいて移動順序に係る優先度を前記物品に設定し、前記第1の接続部を介して前記荷役装置を制御することで、前記優先度に応じた順序で前記物品を移動させる。
【図面の簡単な説明】
【0007】
図1図1は、第1の実施形態に係る荷役システムの構成の一例を示す図である。
図2図2は、第1の実施形態に係る制御装置のハードウェア構成の一例を示す図である。
図3図3は、第1の実施形態に係る制御装置の機能構成の一例を示す図である。
図4図4は、第1の実施形態に係る計画部の動作を説明するための図である。
図5図5は、第1の実施形態に係る計画部の動作を説明するための図である。
図6図6は、第1の実施形態に係る計画部の動作を説明するための図である。
図7図7は、第1の実施形態の制御装置が実行する処理の一例を示すフローチャートである。
図8図8は、第1の実施形態に係る制御装置の動作例を説明するための図である。
図9図9は、第1の実施形態の変形例1に係る計画部の動作を説明するための図である。
図10図10は、第2の実施形態に係る制御装置の機能構成の一例を示す図である。
図11図11は、第2の実施形態の制御装置が実行する処理の一例を示すフローチャートである。
【発明を実施するための形態】
【0008】
以下、実施形態に係る制御装置及び荷役システムを、図面を参照して説明する。
【0009】
(第1の実施形態)
図1は、第1の実施形態に係る荷役システムの構成の一例を示す図である。
【0010】
図1に示すように、荷役システム1は、荷役装置10と、カメラ20と、制御装置30とを有する。ここで、荷役装置10及びカメラ20と、制御装置30とは、例えばシリアルケーブルやLAN(Local Area Network)等を介して接続される。
【0011】
荷役装置10は、荷役装置の一例である。荷役装置10は、パレット2の上面2aに載置された物品Wを目的位置に荷役(移動)するための装置である。物品Wの目的位置は、物品Wの移動先であればよく、例えばコンベアとすることができる。パレット2は、載置部の一例であり、例えば水平な床面Gに配置される。物品Wは、例えば定形又は不定形の立体物であり、パレット2の上面2aに1又は複数個載置される。なお、本実施形態では、物品Wをパレット2に載置した例を示しているが、これに限らず、例えば床面G上に載置される形態としてもよい。この場合、物品Wが載置される床面G上の領域が載置部に対応することになる。
【0012】
荷役装置10は、基台111と、基台111に支持されたアーム部112と、アーム部112の先端に設けられた把持部113とを備える。基台111は、床面Gに固定された筐体である。以下では、床面Gと平行な方向、すなわち重力の作用する方向に直交する方向を水平方向ともいう。また、床面Gに直交する方向、すなわち重力の作用する方向及びその逆方向を上下方向ともいう。
【0013】
アーム部112は、一例として多関節ロボットアームである。アーム部112は、把持部113によって保持された物品Wを上下方向に移動する動作、及び水平方向に移動する動作を実行可能に構成されている。
【0014】
例えば、アーム部112は、1軸又は2軸回りに回動可能な複数の関節により連結された3つの可動部112a~112cで構成される。可動部112aは、基台111から延出している。可動部112bは、可動部112aから延出している。可動部112cは、可動部112bから延出している。
【0015】
アーム部112(可動部112c)の先端には、把持部113が取り付けられている。把持部113は、物品Wを挟み込んで把持する。なお、物品Wの把持は、挟持による把持方法に限定されない。例えば、把持部113に代えて、負圧によって物品Wを吸着把持する吸着部を用いてもよい。以下、把持部113によって物品Wを把持する動作、又は物品Wを把持する動作及び当該物品Wをアーム部112によって目的位置まで移動する動作を「ピッキング」ともいう。なお、アーム部112や把持部113には、物品Wのピッキング状態を検出するためのセンサ装置(例えば、接触センサ、重量センサ等)が設けられているものとする。
【0016】
カメラ20は、撮像装置の一例である。カメラ20は、パレット2の上方に設けられ、パレット2の上面2aを上方から撮像する。カメラ20は、RGBカメラ21と、3次元カメラ22とを有する。なお、RGBカメラ21及び3次元カメラ22の何れも、パレット2を撮像範囲(図中の破線範囲)に含むものとする。
【0017】
RGBカメラ21は、2次元画像を撮像する第1の撮像装置の一例である。RGBカメラ21は、カラー画像を撮像することが可能な撮像装置である。RGBカメラ21は、撮像によって得られた2次元画像(以下、RGB画像ともいう)を制御装置30に出力する。かかるRGB画像には、パレット2の上面2aに載置された物品Wを上方から見た状態が写し出されることになる。なお、2次元画像は、RGB画像に限らず、グレースケールの画像であってもよい。
【0018】
3次元カメラ22は、第2の撮像装置の一例である。3次元カメラ22は、ステレオカメラや3Dレーザスキャナ装置等によって構成される。3次元カメラ22は、パレット2の上面2aを上方から撮像(又は計測)することで、パレット2の上面2aに載置された物品Wの高さや形状を3次元的に表した3次元情報を取得する。
【0019】
また、3次元カメラ22は、取得した3次元情報からデプス(Depth)画像と点群データ(point cloud)とを生成し、制御装置30に出力する。ここで、デプス画像は、3次元カメラ22からパレット2の上面2aに載置された物品Wまでの距離情報を画像に変換したものである。また、点群データは、パレット2の上面2aに載置された物品Wの表面の形状を3次元の点群で表したデータである。以下、デプス画像及び点群データを総称して3次元画像ともいう。
【0020】
RGBカメラ21及び3次元カメラ22は、制御装置30からの撮像要求に応じて撮像を実行し、当該撮像によって得られたRGB画像及び3次元画像を制御装置30に送信する。また、RGBカメラ21及び3次元カメラ22の一方を指定した撮像要求も可能となっており、この場合には、指定されたカメラ側が撮像を個別に実行する。
【0021】
なお、本実施形態では、3次元画像の生成を3次元カメラ22が行う構成とするが、これに限らず、制御装置30で3次元画像の生成を行う構成としてもよい。この場合、3次元カメラ22は、撮像によって取得した3次元情報を制御装置30に出力することで、3次元画像の生成が制御装置30によって行われる。
【0022】
制御装置30は、本実施形態における制御装置の一例である。制御装置30は、カメラ20の撮像結果に基づいて、荷役装置10の動作を制御する。具体的には、制御装置30は、カメラ20から入力されるRGB画像及び3次元画像に基づいて、パレット2の上面2aに載置された物品Wの各々を認識し、認識した各物品Wのピッキング順序を決定する。そして、制御装置30は、荷役装置10の動作を制御することで、パレット2の上面2aに載置された物品Wの各々を、決定したピッキング順序で目的位置まで移動させる。
【0023】
なお、本実施形態では、制御装置30を荷役装置10と別体としたが、荷役装置10と制御装置30とを一体的に構成する形態としてもよい。この場合、荷役装置10と制御装置30とを、荷役装置と定義してもよい。また、荷役装置10及び制御装置30に、カメラ20を含めた構成を荷役装置と定義してもよい。
【0024】
次に、上述した制御装置30ハードウェア構成について説明する。図2は、制御装置30のハードウェア構成の一例を示す図である。
【0025】
図2に示すように、制御装置30は、プロセッサ31、ROM(Read Only Memory)32、RAM(Random Access Memory)33、カメラインタフェース34、荷役装置インタフェース35及び記憶部36を備える。
【0026】
プロセッサ31は、制御部及びコンピュータの一例である。プロセッサ31は、制御装置30の動作を統括的に制御する。プロセッサ31は、CPU(Central Processing Unit)、GPU(Graphics Processing Unit)、ASIC(Application Specific Integrated Circuit)等によって実現することができる。
【0027】
ROM32は、プロセッサ31が実行する各種のプログラムや設定情報等を記憶する。RAM33は、プロセッサ31のワークエリアとして使用される。
【0028】
カメラインタフェース34は、第2の接続部の一例である。カメラインタフェース34は、カメラ20を接続するための通信インタフェースである。カメラインタフェース34は、カメラ20と通信可能に接続され、プロセッサ31の制御の下、自装置とカメラ20との間の通信を制御する。
【0029】
例えば、プロセッサ31は、カメラインタフェース34を介して、カメラ20(RGBカメラ21、3次元カメラ22)に撮像要求を送信する。また、プロセッサ31は、カメラインタフェース34を介して、カメラ20から送信されるRGB画像及び3次元画像を取得する。
【0030】
荷役装置インタフェース35は、第1の接続部の一例である。荷役装置インタフェース35は、荷役装置10を接続するための通信インタフェースである。荷役装置インタフェース35は、荷役装置10と通信可能に接続され、プロセッサ31の制御の下、自装置と荷役装置10との間の通信を制御する。
【0031】
例えば、プロセッサ31は、荷役装置インタフェース35を介し、荷役装置10の動作を制御する。また、プロセッサ31は、荷役装置インタフェース35を介して、荷役装置10のピッキング状態を示すセンシング結果を取得する。
【0032】
記憶部36は、例えば、フラッシュメモリ等の半導体メモリ素子やハードディスク等の補助記憶装置によって実現される。記憶部36は、プロセッサ31が実行する各種のプログラムや設定情報等を記憶する。また、記憶部36は、荷役装置10の上下方向及び水平方向の移動限界位置や、荷役装置10の可動範囲、荷役装置10が把持可能な物品の寸法の上限及び下限等を示した限界情報を記憶する。かかる限界情報は、例えば、後述する移動計画の導出に用いられる。
【0033】
次に、図3を参照して、制御装置30が備える機能構成について説明する。図3は、制御装置30の機能構成の一例を示す図である。
【0034】
図3に示すように、制御装置30は、取得部311と、認識部312と、計画部313と、計画実行部314とを機能部として備える。これら機能部の一部又は全ては、プロセッサ31が、ROM32又は記憶部36に記憶されたプログラムを実行することで実現されるソフトウェア構成であってもよい。また、上述した機能部の一部又は全ては、プロセッサ31が備える専用回路によって実現されるハードウェア構成であってもよい。このように、本実施形態においてはプロセッサ31が制御部の一例として機能する。
【0035】
取得部311は、カメラインタフェース34を介して、カメラ20で撮像されたRGB画像及び3次元画像を取得する。具体的には、取得部311は、認識部312からの指示に応じて、RGBカメラ21及び3次元カメラ22の各々に対し撮像要求を送信する。そして、取得部311は、RGBカメラ21及び3次元カメラ22の各々から送信されたRGB画像と3次元画像とを取得する。
【0036】
なお、3次元カメラ22から三次元情報が出力される場合には、取得部311は、カメラインタフェース34を介して、3次元カメラ22で取得された3次元情報を取得する。
【0037】
認識部312は、RGB画像及び3次元画像に基づいて、パレット2の上面2aに載置された物品Wの位置、形状、姿勢等を認識する。具体的には、認識部312は、計画部313からの認識要求に応じて、取得部311に対し画像の取得を指示する信号を送信する。そして、認識部312は、取得部311が取得したRGB画像及び3次元画像に基づいて、パレット2の上面2aに存在する物品W各々の位置、形状、姿勢等を認識する。
【0038】
物品Wの認識方法は特に問わず、公知の技術を用いることができる。例えば、認識部312は、RGB画像とデプス画像とに基づいて、パレット2の上面2aに存在する各物品Wの位置(水平方向の位置)及び高さ(上下方向の高さ)等を認識する。また、認識部312は、点群データに基づいて、パレット2の上面2aに存在する各物品Wの形状や姿勢等を認識する。
【0039】
なお、取得部311が3次元情報を取得した場合には、認識部312は、3次元情報に基づきデプス画像や点群データを生成する。そして、認識部312は、RGB画像とともに、生成したデプス画像や点群データを用いて、パレット2の上面2aに載置された物品Wの各々を認識する。
【0040】
計画部313は、認識部312の認識結果に基づいて、パレット2の上面2aに載置された各物品Wを目的位置まで移動させるための移動計画を導出する。
【0041】
具体的には、計画部313は、取得部311に対し画像の取得を指示する信号を送信することで、パレット2の上面2aに存在する物品Wの認識を認識部312に指示する。計画部313は、認識部312で認識された物品Wの物品間の離間距離を算出し、算出した離間距離に基づいて、ピッキング順序に係る優先度を物品Wに設定する。そして、計画部313は、優先度に応じた順序で物品Wを目的位置まで移動させるための移動計画を導出する。
【0042】
ここで、図4図6を用いて、計画部313が物品Wに優先度を設定する際の動作例について説明する。
【0043】
図4図6は、計画部313の動作を説明するための図であり、認識部312によって認識された物品Wの状態を模式的に表している。同図において、物品Wの末尾に示す番号1~4は、認識部312の認識によって付された各物品Wを識別するためのアイテム番号を意味する。以下では、物品Wを特定する場合には、物品Wとアイテム番号とを組み合わせた物品Wn(nはアイテム番号)と表記する。
【0044】
まず、計画部313は、認識部312によりパレット2の上面2aに存在する物品Wが認識されると、認識された物品Wの中から、最初のピッキング対象となる物品Wを選定する。具体的には、計画部313は、以下に示す2つの条件の一方又は両方を充足する物品Wを、最初のピッキング対象に選定する。
【0045】
第1の条件は、高さが最大の物品Wであることである。第2の条件は、複数の物品Wで複数存在する場合の条件であり、物品W群の端部又は角部に存在する物品Wであることである。ここで、第1の条件は、物品Wを上方からピッキングする際の取りやすさを考慮したものである。また、第2の条件は、後述する処理において、ピッキング対象となる物品W間の離間距離をより大きく確保するための条件である。
【0046】
例えば、図4に示した物品W1~物品W4のうち、左上の端部(角部)に位置する物品W1の高さが最大であるとすると、計画部313は、物品W1を最初にピッキングするため最上位の優先度1を設定する。なお、図4では、優先度の設定対象となった物品Wを識別するため、物品W1に縦線のハッチングを施している(以下同様)。
【0047】
図4の例の場合、計画部313は、優先度1を設定した物品W1を最初にピッキングすることを指示した移動計画を導出することで、後述する計画実行部314の制御により、物品W1のピッキングが最初に実行される。
【0048】
また、計画部313は、次にピッキングする物品Wを選定するため、優先度1を設定した物品W1と、他の物品W2~W4の各々との間の離間距離を算出する。なお、図5では、ピッキング済の物品Wを識別するため、物品W1に斜線のハッチングを施している(以下同様)。
【0049】
具体的には、計画部313は、図5に示すように、認識部312で認識された物品W1~W4の形状に基づき、物品W1~W4の各々に外接する円(以下、外接円ともいう)C1~C4をそれぞれ設定する。ここで「外接円」は、物品Wを包含し、且つ当該物品の外縁の少なくとも2点に接(外接)する円を意味する。
【0050】
次いで、計画部313は、先の処理で優先度が設定された物品W1を基点とし、その外接円C1の中心から、他の物品W2~W4の各々に係る外接円C2~C4の中心までの中心間距離d12、d13、d14を離間距離としてそれぞれ算出する。以下、物品W間の離間距離を中心間距離とも表記する。
【0051】
また、計画部313は、物品W1に係る外接円C1の半径r1と、他の外接円C2~C4の半径r2~r4とをそれぞれ加算することで、半径和r12(=r1+r2)、r13(=r1+r3)、r14(=r1+r4)をそれぞれ算出する。
【0052】
計画部313は、物品W2~W4毎に中心間距離と半径和とを比較し、中心間距離が半径和よりも大きな物品Wを抽出する。例えば、図5の場合、物品W3は、中心間距離d13が半径和r13よりも大きいため、計画部313は、物品W3をピッキング候補として抽出する。また、物品W4も、中心間距離d14が半径和r14よりも大きいため、計画部313は、物品W4をピッキング候補として抽出する。また、物品W2は、中心間距離d12が半径和r12以下となるため、計画部313は、この物品W2をピッキング対象から除外する。
【0053】
ここで、中心間距離が半径和以下の物品W2は、基点とした物品W1のピッキングの際に接触等の影響を受けた(或いは受ける)可能性がある。この場合、物品W2を次のピッキング対象としても、認識処理で認識された物品W2の位置や姿勢からズレが発生している可能性があるため、ピッキングを正常に完了できない可能性がある。そのため、物品W2をピッキング対象から除外しておくことで、複数の物品Wを連続してピッキングする際の動作を円滑に行うことができる。
【0054】
なお、認識部312で新たな認識が行われるまでの間、物品W2に対する除外設定は維持される。また、ピッキング済の物品Wについても、ピッキング対象から除外されるものとする。
【0055】
続いて、計画部313は、ピッキング候補として抽出した物品W3と物品W4との間で中心間距離d13、d14を比較し、中心間距離がより大きな物品W、つまり中心間距離が最大の物品Wを一つ選定する。図5の例では、物品W4に係る中心間距離d14の方が、物品W3に係る中心間距離d13よりも大きいため、計画部313は、物品W4を選定する。そして、計画部313は、選定した物品W4に対し次位の優先度2を設定する。この場合、計画部313は、優先度2を設定した物品W2をピッキングすることを指示した移動計画を導出する。
【0056】
さらに、計画部313は、優先度2を設定した物品W4を基点とし、上述と同様の処理を行うことで、物品W3に対し次位の優先度3を設定する。そして、計画部313は、優先度3を設定した物品W3をピッキングすることを指示した移動計画を導出する。
【0057】
図6は、図4及び図5で説明した物品W1~W4に対する優先度の設定結果を示している。上述したように、物品W1、物品W3、物品W4のそれぞれに対し、優先度1、優先度3、優先度2が設定される。この場合、図中矢印で示すように、優先度の順、つまり物品W1→物品W4→物品W3の順にピッキングが行われることになる。なお、図6では、ピッキング候補から除外された物品Wを識別するため、物品W2に対し×印を付している。
【0058】
なお、計画部313は、上述の処理において、ピッキング候補の物品Wが存在しないと判断した場合には、認識部312に対し認識要求を出力することで、カメラ20で撮像される新たなRGB画像及び3次元画像に基づく認識処理を実行させる。そして、計画部313は、認識部312によって取得された新たな認識結果に基づき優先度の設定を再度行う。
【0059】
このように、計画部313は、上位の優先度を設定した物品Wとの離間距離が最大となる他の物品Wに次位の優先度を順次設定する。つまり、計画部313は、先にピッキングを行う物品Wから最も離れた位置に存在する他の物品Wを、次のピッキング対象に設定する。これにより、物品Wのピッキング時に、当該物品Wの周辺に存在する他の物品Wに把持部113等が接触したような場合であっても、次にピッキング対象の物品Wへの影響を抑えることができる。したがって、計画部313は、複数の物品Wを連続してピッキングする動作を効率的に行うことができる。
【0060】
また、計画部313が離間距離の算出に用いる物品Wの外接円は、荷役装置10が物品Wを把持する際の重心位置や回転範囲を規定するものとなる。具体的には、荷役装置10の把持部113が物品Wを把持する際の重心位置は、物品Wの外接円の中心に略対応する。また、荷役装置10が物品Wをピッキングする際に物品Wを水平方向に回転させる場合があるが、その回転範囲は物品Wの外接円に略対応する。そのため、外接円の中心間距離や半径和を基準にピッキング候補の選定と除外とを行うことで、ピッキング時に発生する接触や荷崩れ等の影響を低減化した順序で物品Wのピッキングを行うことができる。また、例えば物品W4のように不定形の物品Wをピッキングする場合であっても、当該物品Wの重心位置や回転範囲を規定することができるため、当該物品Wのピッキングを効率的に行うことができる。
【0061】
また、計画部313は、一度の認識処理で得られた認識結果からピッキング候補を抽出できなくなるまでの間、当該認識結果を継続して用いることで、複数の物品Wの移動計画を導出する。これにより、制御装置30では、カメラ20によるRGB画像及び3次元画像の撮像回数や、認識部312が実行する認識処理の実行回数を抑えることができるため、処理負荷を低減するとともにピッキングの高速化を図ることができる。
【0062】
なお、計画部313は、荷役装置10から通知される物品Wのピッキング状態を監視し、ピッキング状態の異常を検出した場合には、上記と同様、認識部312に認識要求を送信することで、新たなRGB画像及び3次元画像に基づく認識処理を実行させる。ここで、ピッキング状態の異常とは、例えば、予定された物品Wをピッキングできない場合や、物品Wの脱落等、ピッキングが失敗した場合等が挙げられる。
【0063】
図3に戻り、計画実行部314は、計画部313で導出された移動計画に基づいて、荷役装置10の動作(駆動機構)を制御する。具体的には、計画実行部314は、移動計画に基づき荷役装置10の動作を制御することで、パレット2の上面に載置されたピッキング対象の物品Wを把持させ、当該物品Wを目的位置まで移動させる。
【0064】
上述した機能構成により、制御装置30は、パレット2の上面2aに載置された物品Wを、荷役装置10を用いて目的位置まで移動させることができる。より詳細には、制御装置30は、パレット2の上面2aに載置された物品Wの各々を、設定した優先度の順に目的位置まで順次移動させることができる。
【0065】
以下、上述した制御装置30の動作例について説明する。ここで、図7は、制御装置30が実行する処理の一例を示すフローチャートである。
【0066】
まず、計画部313は、認識部312を介し取得部311に撮像要求を送信させることで、カメラ20で撮像されたRGB画像及び3次元画像を取得部311に取得させる(ステップS11)。認識部312は、取得されたRGB画像及び3次元画像に基づき、物品Wを認識するための認識処理を実行する(ステップS12)。
【0067】
続いて、計画部313は、優先度の値を規定するインデックスnを1に設定する(ステップS13)。次いで、計画部313は、ステップS12の認識結果に基づき、物品Wが存在するか否かを判定する(ステップS14)。より詳細には、計画部313は、認識結果の中にピッキング済とされた物品W以外の物品Wが存在するか否かを判定する。
【0068】
物品Wが存在すると判定した場合(ステップS14;Yes)、計画部313は、インデックスnの値が1か否かを判定する(ステップS15)。ここで、n=1と判定した場合(ステップS15;Yes)、計画部313は、ステップS12の認識処理で認識された物品Wの中から、上述した第1の条件及び第2の条件の何れか一方又は両方に該当する物品Wを一つ選定する(ステップS16)。次いで、計画部313は、ステップS16で選定した物品Wに優先度n、つまり優先度1を設定した後(ステップS17)、ステップS22に移行する。
【0069】
続くステップS22において、計画部313は、優先度nを設定した物品Wの移動計画を導出する(ステップS22)。次いで、計画実行部314は、ステップS22で導出された移動計画に基づき荷役装置10を動作させることで、優先度nが設定された物品Wのピッキングを開始する(ステップS23)。
【0070】
計画部313は、荷役装置10から送信されるセンシング結果に基づいてピッキングの状態を監視する。計画部313は、ピッキング状態の異常を検出すると(ステップS24;Yes)、ステップS11に処理を戻すことで、新たに撮像されるRGB画像及び3次元画像に基づく認識処理を実行させる。
【0071】
荷役装置10によるピッキングが正常に完了した場合には(ステップS24;No)、計画部313は、認識結果に含まれた物品Wのうち、直近の処理で優先度nを設定した物品Wの状態をピッキング済に変更する消し込み処理を行う(ステップS25)。次いで、計画部313は、インデックスnの値を1インクリメントし(ステップS26)、ステップS14に処理を戻す。
【0072】
一方、ステップS15で、n≠1と判定した場合、つまりnの値が2以上の場合(ステップS15;No)、計画部313は、直前の処理で優先度n-1を設定した物品Wを基点に、他の物品Wとの中心間距離及び半径和を算出する(ステップS18)。
【0073】
続いて、計画部313は、ステップS18の算出結果に基づき、中心間距離が半径和以下となる物品Wをピッキング候補から除外する(ステップS19)。次いで、計画部313は、ピッキング済(又は優先度設定済)の物品W及びステップS19で除外した物品W以外の残りの物品Wの中に、中心間距離が半径和よりも大きい物品Wが存在するか否かを判定する(ステップS20)。ここで、存在しないと判定した場合には(ステップS20;No)、計画部313は、ステップS11に処理を戻すことで、新たに撮像されるRGB画像及び3次元画像に基づく認識処理を実行させる。
【0074】
また、中心間距離が半径和よりも大きい物品Wが存在すると判定した場合(ステップS20;Yes)、計画部313は、中心間距離が最大の物品Wに優先度nを設定し(ステップS21)、ステップS22に移行する。
【0075】
上述したステップS16~S21の処理により、一度の認識処理で認識された物品Wの各々に対し優先度が順次設定される。また、物品Wに優先度が設定される毎に、当該物品Wの移動計画の導出とピッキングとが実行されることで、優先度の順に物品Wのピッキングが行われる。
【0076】
そして、計画部313は、全ての物品Wを移動した等の理由により、ステップS14で物品Wが存在しないと判定すると(ステップS14;Yes)、本処理を終了する。
【0077】
ここで、図8を参照して、上述した図7の処理の動作例を説明する。なお、図8は、制御装置30の動作例を説明するための図であり、認識部312によって認識されたパレット2の上面2aでの物品Wの状態を模式的に示している。なお、図8では、図4及び図5と同様に、新たに優先度が設定された物品Wを縦線のハッチングで表し、ピッキングが完了した物品W、つまり消し込み処理が完了した物品W11を斜線のハッチングで表している。
【0078】
図8(a)に示すように、認識部312の認識結果に物品Wが存在する場合、計画部313は、上述した第1の条件及び第2の条件に基づき、最初のピッキング対象となる物品Wを選定する。例えば、計画部313は、図8(a)に示した11個の物品W(W11~W21)の中から、左上端部(角度)の物品W11を選定すると、この物品W11に最上位の優先度1を設定する。優先度1が設定された物品W11は、上述したステップS22及びS23の処理を経ることでピッキングが実行される。
【0079】
なお、計画部313は、物品W11のピッキングが正常に完了した後も、認識部312の認識結果を継続して利用するため、物品W11の存在は認識結果に残ることになる。そのため、計画部313は、続く図8(b)に示すように、認識結果に存在する物品W11の状態をピッキング済に変更するための消し込み処理を行う。
【0080】
続いて、計画部313は、図8(b)に示すように、直前の処理で優先度を設定した物品W11を基点に、他の物品との中心間距離及び半径和をそれぞれ算出する。ここで、物品W11と物品W21との中心間距離が最大であるとすると、計画部313は、この物品W21に対し次位の優先度2を設定する。優先度2が設定された物品W21は、上述したステップS22及びS23の処理を経ることでピッキングが実行される。
【0081】
物品W21のピッキングが正常に完了すると、計画部313は、図8(c)示すように、物品W21の消し込み処理を実行する。次いで、計画部313は、直前の処理で優先度を設定した物品W21を基点に、物品W11を除いた他の物品との中心間距離及び半径和をそれぞれ算出する。ここで、物品W20に係る中心間距離が半径和以下であったとすると、計画部313は、この物品W20をピッキング対象から除外する。また、物品W21と物品W18との中心間距離が最大であるとすると、計画部313は、この物品W18に対し次位の優先度3を設定する。優先度3が設定された物品W18は、上述したステップS22及びS23の処理を経ることでピッキングが実行される。
【0082】
物品W18のピッキングが正常に完了すると、計画部313は、図8(d)示すように、物品W18の消し込み処理を実行する。次いで、計画部313は、直前の処理で優先度を設定した物品W18を基点に、物品W11及びW21を除いた他の物品との中心間距離及び半径和をそれぞれ算出する。なお、図8(d)では、前回の処理(図8(c))でピッキング対象から除外された物品W20を×印で表している。
【0083】
ここで、物品W18と物品W14との中心間距離が最大であるとすると、計画部313は、この物品W14に対し次位の優先度4を設定する。優先度4が設定された物品W14は、上述したステップS22及びS23の処理を経ることでピッキングが実行される。
【0084】
以降、計画部313は、残りの物品Wに対し同様の処理を繰り返し行うことで、図8(e)、図8(f)に示すように、物品W19、物品W12のピッキングが順次行われる。また、処理を経ることでピッキング対象から除外された物品Wも累積し、図8(g)の状態では、ピッキング済の物品W(W11、W12、W14、W18、W19、W21)以外の残りの物品W(W13、W15、W16、W17、W20)が、全てピッキング対象から除外された状態となる。
【0085】
この場合、計画部313は、ステップS20の処理において、中心間距離が半径和より大きな物品が存在しないと判断することで、ステップS11へと処理を戻す。これにより、カメラ20による撮像が新たに行われるため、認識部312が新たに行う認識処理の認識結果には、図8(h)に示すように、残りの物品W13、W15、W16、W17及びW20が存在することになる。
【0086】
そして、計画部313は、図8(h)の認識結果に基づき、各物品W13、W15、W16、W17及びW20の各々に優先度を設定する処理を新たに開始することで、当該優先度の順にピッキングを行わせることができる。
【0087】
以上のように、制御装置30によれば、カメラ20で撮像された画像(RGB画像、3次元画像)からパレット2に載置された物品Wを認識する認識処理を実行し、認識処理で認識された物品Wの物品間の離間距離を算出し、算出した離間距離に基づいて移動順序に係る優先度を物品Wに設定し、荷役装置10を制御することで、優先度に応じた順序で物品Wを移動させる。また、制御装置30は、上記の優先度の設定に際し、上位の優先度を設定した前記物品との離間距離が最大となる他の物品に次位の優先度を順次設定する。
【0088】
上記の構成により、制御装置30は、パレット2の上面2aに載置された物品W全体の位置関係からピッキングを行う順序を決定することができるため、先にピッキングを行う物品Wと、次にピッキングを行う物品Wとの離間距離を大きく確保することができる。これにより、制御装置30では、先のピッキングにより生じる影響が、次のピッキング対象の物品Wに及ぶことを抑えることができるため、複数の物品Wを連続してピッキングする際の動作を効率的に行うことができる。したがって、制御装置30では、物品Wのピッキングを効率的に行うことができる。
【0089】
また、制御装置30では、一度の認識処理で得られた認識結果から、複数の物品の優先度を順次設定し、当該優先度の順にピッキングを行わせることができる。これにより、制御装置30では、カメラ20によるRGB画像及び3次元画像の撮像回数や、認識部312が実行する認識処理の実行回数を抑えることができるため、処理負荷を低減するとともにピッキングの高速化を図ることができる。したがって、制御装置30では、物品Wのピッキングを効率的に行うことができる。
【0090】
以上説明した実施形態は、上述の各装置が有する構成又は機能の一部を変更することで、適宜に変形して実施することも可能である。そこで、以下では、上述した実施形態に係るいくつかの変形例を他の実施形態として説明する。なお、以下では、上述した実施形態と異なる点を主に説明することとし、既に説明した内容と共通する点については詳細な説明を省略する。また、以下で説明する変形例は、個別に実施されてもよいし、適宜組み合わせて実施されてもよい。
【0091】
(変形例1)
上述の実施形態では、基点となる物品Wとの中心間距離が最大となる他の物品Wを次のピッキング対象とする形態を説明したが、ピッキング対象の選定条件はこれに限らず、更なる条件を付加してもよい。
【0092】
例えば、基点となる物品Wとの中心間距離が最大となる他の物品Wを特定した後、当該他の物品Wとその周辺に存在する物品W(以下、周辺物品ともいう)との配置関係が所定の条件を満たす場合にのみ、特定した他の物品Wをピッキング対象に選定する構成としてもよい。以下、図9を参照して、本変形例の選定条件について説明する。
【0093】
図9は、変形例1に係る選定条件を説明するための図である。ここで、図9に示す物品W31、W32、W33の各々は、何れも認識部312によって認識された物品Wである。また、計画部313は、物品W31を基点に、物品W32及び物品W33との中心間距離をそれぞれ算出し、中心間距離が最大の物品W33を特定済みであるとする。
【0094】
上述した実施形態では、計画部313は、特定した物品W33に次位の優先度を設定することで、次のピッキング対象に選定する。しかしながら、この場合、物品W33と当該物品W33周辺の周辺物品との関係は考慮されていない。そのため、例えば、図9に示すように、物品W33の一部に物品W32が重畳して配置されているような場合には、物品W33のピッキングを行うことで、物品W32への接触や物品W32の荷崩れが発生する可能性がある。
【0095】
そこで、計画部313は、物品W33を特定した後、その物品W33と、周辺物品である物品W32との配置関係が所定の条件を満たすか否かを判定し、荷崩れ等の可能性がないことが確認できた場合にのみ、物品W33を次のピッキング対象に選定する。
【0096】
ここで、判定条件は、任意に設定できるものとする。例えば、物品W33と物品W32との中心間距離がその半径和より大きいことを判定条件としてもよい。また、例えば、特定した物品W33の高さが、物品W32よりも高いことを判定条件としてもよい。このような判定条件を付加することで、周辺物品との接触や荷崩れが発生する可能性が低い物品Wを、次のピッキング対象に選定することができる。
【0097】
なお、中心間距離に基づき特定した物品Wが上記の判定条件を充足しない場合、計画部313は、物品W31との中心間距離が最大となった物品W33に次位の優先度を設定することなく、当該物品W33(及び物品W32)をピッキング対象から除外する。この場合、計画部313は、物品W33及び物品W32を除いた残りの物品W(図示せず)の中から、物品W31との中心間距離が最大となる物品Wを選定し、当該物品Wに次位の優先度を設定するものとする。
【0098】
(変形例2)
上述の実施形態では、優先度を設定する毎に移動計画を導出してピッキングを行わせる形態を説明したが、これに限定されるものではない。例えば、計画部313は、認識された各物品Wの優先度を先に設定した後、その優先度に応じた順序でピッキングを行わせるための移動計画を一度に導出する形態としてもよい。
【0099】
具体的には、計画部313は、上述したステップS16及びS17の処理を実行することで一の物品Wに優先度1を選定した後、インデックスnを1インクリメントしながら、上述したステップS18~S21の処理を繰り返し実行する。これにより、認識された物品Wの各々に優先度を順次設定することができる。
【0100】
そして、計画部313は、例えば中心間距離が半径和より大きな物品が存在しないと判定した場合に(ステップS20;No)、それまでに設定した各物品Wの優先度に基づき、優先度に応じた順序でピッキングを行わせるための移動計画を導出する。なお、ピッキング最中に異常が検出された場合には、移動計画を破棄した後、ステップS11に処理を戻すものとする。
【0101】
このような構成とすることで、上述の実施形態と同様の効果を奏することができるため、上述の実施形態と同様に物品Wのピッキングを効率的に行うことができる。
【0102】
(第2の実施形態)
次に第2の実施形態について説明する。本実施形態では、ピッキング前後の物品Wの状態を比較することで、荷崩れ等の発生を検出することが可能な形態について説明する。なお、第1の実施形態と同様の構成については同一の符号を付与し説明を省略する。
【0103】
図10は、第2の実施形態に係る制御装置30aの機能構成の一例を示す図である。図10に示すように、制御装置30aは、取得部311と、認識部312と、計画部313aと、計画実行部314とを機能部として備える。
【0104】
ここで、計画部313aは、第1の実施形態の計画部313に対応する機能部であり、計画部313と同様の機能を備える。また、計画部313aは、計画部313にはない固有の機能として、荷役装置10によるピッキングが完了した場合に、認識部312を介して、RGB画像の撮像をカメラ20に要求する。計画部313aは、取得部311により新たに取得されたRGB画像と、認識部312の認識で使用された前回のRGB画像とに基づき、ピッキングの前後で生じた物品Wに係る変化量を検出する差分チェックを行う。
【0105】
具体的には、計画部313aは、前回のRGB画像と新たなRGB画像とで、物品Wの各々が存在する画像上の領域の変化量を検出し、当該変化量が閾値を上回る場合に差分ありと判定する。なお、差分の有無の判定方法は特に問わず、公知の技術を用いることが可能である。例えば、新旧の両RGB画像において、同一画素位置の画素毎に画素値の差分を算出し、算出した差分の平均値と、予め定めた閾値とを比較することで差分の有無を判定してもよい。また、例えば、2つの画像(画像領域)から両画像間の差分の有無を出力(推論)するよう機能付けられた機械学習モデルを用いることで、差分の有無を判定してもよい。
【0106】
なお、計画部313aは、認識部312で認識された物品Wのうち、消し込み処理が実行済の物品W、つまりピッキングが完了した物品Wについては差分チェックの対象から除外し、残りの物品Wを差分チェックの対象とする。具体的には、計画部313aは、認識結果等に記録されたピッキング済の状態か否かを示す状態情報に基づいて、ピッキングが未完了の物品Wを特定し、特定した物品Wを差分チェックの対象とする。また、本実施形態において、差分なしの状態とは、新旧のRGB画像で完全に一致する状態に限らず、ある程度の誤差を許容する略同等の状態を含む概念である。
【0107】
差分チェックで差分ありと判定された場合、物品Wの配置位置や姿勢がピッキングの前後で変化したことを意味する。これは、物品Wをピッキングした際に他の物品Wに接触した可能性や荷崩れが発生した可能性があることを意味する。このような場合、前回の認識結果を基に導出した移動計画では、物品Wの位置を捕捉することができないため正常にピッキングを行うことができない可能性がある。
【0108】
そこで、計画部313aは、差分チェックで差分ありと判定した場合、認識部312を介して、3次元画像の撮像をカメラ20に要求する。次いで、計画部313aは、取得部311により新たに取得された3次元画像と、先に取得しておいたRGB画像とを用いて認識部312に認識処理を実行させる。そして、計画部313aは、新たな認識結果に基づき、認識された物品Wの各々の移動計画を導出する。
【0109】
以下、上述した制御装置30aの動作例について説明する。ここで、図11は、制御装置30aが実行する処理の一例を示すフローチャートである。なお、ステップS31~S44の処理は、第1の実施形態で説明した図7のステップS11~S24の処理と同様であるため説明を省略する。
【0110】
ステップS44において、ピッキングが正常に完了すると(ステップS44;No)、計画部313aは、認識部312を介して取得部311にRGB画像の撮像要求を送信させることで、RGBカメラ21で撮像されたRGB画像を取得部311に取得させる(ステップS45)。
【0111】
続いて、計画部313aは、ステップS45で取得されたRGB画像と、ステップS31で取得されたRGB画像(前回のRGB画像)と、ステップS32の認識結果(前回の認識結果)とに基づき、ピッキング前後の物品Wの状態を比較する差分チェックを実行する(ステップS46)。次いで、計画部313は、差分チェックの結果に基づき、差分の有無を判定する(ステップS47)。
【0112】
ここで、「差分なし」と判定した場合には(ステップS47;No)、計画部313aは、ステップS48、S49の処理を実行した後、ステップS34に処理を戻す。なお、ステップS48及びS49の処理は、第1の実施形態で説明した図7のステップS25、S26と同様であるため説明を省略する。
【0113】
一方、「差分あり」と判定した場合(ステップS47;Yes)、計画部313aは、認識部312を介して取得部311に3次元画像の撮像要求を送信させることで、3次元カメラ22で撮像された3次元画像を取得部311に取得させる(ステップS50)。続いて、計画部313aは、ステップS32に処理を戻し、ステップS45で取得されたRGB画像とステップS50で取得された3次元画像とに基づき、認識部312に認識処理を実行させる。
【0114】
以上のように、制御装置30aは、物品Wのピッキングが完了した後、ピッキング後に撮像された新たなRGB画像と、認識処理で使用されたRGB画像及び当該認識処理の認識結果とに基づいて、ピッキングの前後で生じた変化を検出する差分チェックを実行する。そして、制御装置30aは、差分チェックの結果、変化あり(差分あり)と判定すると、新たなRGB画像及び3次元画像を用いて認識処理を新たに行い、当該認識処理の認識結果に基づいて優先度の設定を行う。
【0115】
これにより、制御装置30aでは、ピッキング時の接触や荷崩れ等の発生によりパレット2の上面2aに載置された物品Wの状態が変化した場合であっても、変化後の状態を反映した認識結果に基づき物品Wのピッキングを継続させることができる。したがって、制御装置30では、物品Wのピッキングを効率的に行うことができる。
【0116】
以上説明した実施形態は、上述の各装置が有する構成又は機能の一部を変更することで、適宜に変形して実施することも可能である。そこで、以下では、上述した実施形態に係るいくつかの変形例を他の実施形態として説明する。なお、以下では、上述した実施形態と異なる点を主に説明することとし、既に説明した内容と共通する点については詳細な説明を省略する。また、以下で説明する変形例は、個別に実施されてもよいし、適宜組み合わせて実施されてもよい。
【0117】
(変形例1)
上述の実施形態では、図11で説明したステップS47の処理において、差分ありと判定されたことを条件に3次元画像の撮像要求を行う形態を説明した。しかしながら、3次元画像を取得するタイミングはこれに限らず、ステップS44~S47の任意のタイミングで撮像要求を行う形態としてもよい。一例として、ステップS45でRGB画像の撮像要求を行ったタイミングで3次元画像の撮像要求を行ってもよい。
【0118】
上記の処理内容とすることで、ステップS47で差分ありと判定された場合に、より速やかに、新たなRGB画像及び3次元画像を用いた認識処理に移行することができる。なお、ステップS47で差分なしと判定された場合には、取得した3次元画像は破棄されるものとする。
【0119】
以上、本発明のいくつかの実施形態(変形例)を説明したが、これらの実施形態は、例として提示したものであり、発明の範囲を限定することは意図していない。これら新規な実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。これら実施形態やその変形は、発明の範囲や要旨に含まれるとともに、特許請求の範囲に記載された発明とその均等の範囲に含まれる。
【符号の説明】
【0120】
1 荷役システム
10 荷役装置
20 カメラ
21 RGBカメラ
22 3次元カメラ
30 制御装置
311 取得部
312 認識部
313 計画部
314 計画実行部
図1
図2
図3
図4
図5
図6
図7
図8
図9
図10
図11