(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2023-11-30
(45)【発行日】2023-12-08
(54)【発明の名称】ロボット制御装置
(51)【国際特許分類】
B25J 13/00 20060101AFI20231201BHJP
【FI】
B25J13/00 Z
(21)【出願番号】P 2020075230
(22)【出願日】2020-04-21
【審査請求日】2023-01-27
(73)【特許権者】
【識別番号】000005108
【氏名又は名称】株式会社日立製作所
(74)【代理人】
【識別番号】110000279
【氏名又は名称】弁理士法人ウィルフォート国際特許事務所
(72)【発明者】
【氏名】半田 翔一
(72)【発明者】
【氏名】菅原 俊晴
(72)【発明者】
【氏名】松本 典剛
(72)【発明者】
【氏名】納谷 英光
【審査官】松浦 陽
(56)【参考文献】
【文献】米国特許出願公開第2017/0334646(US,A1)
【文献】特表2017-506612(JP,A)
【文献】特開平08-091579(JP,A)
【文献】特開2018-087083(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
B25J 1/00 - 21/02
B65G 61/00
(57)【特許請求の範囲】
【請求項1】
容器に物品を収容させるロボットを制御するロボット制御装置であって、
容器に収容される複数の物品の情報を記憶した物品リストに基づいて、容器を決定する容器決定部と、
前記複数の物品の第1特性に基づいて、容器内での前記複数の物品の位置および姿勢の候補パターンを抽出する位置および姿勢候補抽出部と、
前記位置および姿勢候補抽出部により抽出された前記候補パターンのうち、前記複数の物品により容器に作用するモーメントのバランスが所定範囲に収まる候補パターンを判定して最終パターンとして選択するモーメントバランス判定部と、
前記モーメントバランス判定部により選択された最終パターンにしたがって、容器に前記複数の物品を収容させるための所定の順序を決定し、前記所定の順序にしたがって前記複数の物品を容器へ収容させる制御信号を前記ロボットに出力させる制御信号出力部と、
容器に収容される前記複数の物品に設定される第2特性に基づいて、容器に収容されたときに隣接する物品の可否を判定する隣接可否判定部とを含み、
前記第1特性は物品の持つ物理的特性であり、
前記第2特性は、一般的ユーザの好き嫌いに基づいて、容器内で隣接してはいけない物品の種類として予め設定される、
ロボット制御装置。
【請求項2】
前記隣接可否判定部は、前記候補パターンのうち、隣接が禁止された物品が隣接している候補パターンを除外する、
請求項
1に記載のロボット制御装置。
【請求項3】
前記モーメントバランス判定部は、容器の底面を分割してなる領域間において、鉛直方向に作用するモーメントの差が所定値以下となる候補パターンを、前記最終パターンとして選択する、
請求項1に記載のロボット制御装置。
【請求項4】
前記複数の物品が収容される容器の隙間に設ける緩衝材を決定する緩衝材決定部をさらに備える、
請求項1に記載のロボット制御装置。
【請求項5】
前記制御信号出力部は、さらに、前記決定された緩衝材を前記複数の物品間の隙間に設けさせるための制御信号を出力する、
請求項
4に記載のロボット制御装置。
【請求項6】
前記複数の物品のうち少なくとも一つの物品の第1特性をセンサからの情報に基づいて判定する特性判定部をさらに備える、
請求項1に記載のロボット制御装置。
【請求項7】
前記複数の物品は、種類の異なる物品を含む、
請求項1に記載のロボット制御装置。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、ロボット制御装置およびピッキングシステムに関する。
【背景技術】
【0002】
近年、労働人口減少が問題になっており、製造業における人手不足の解消、生産性の向上が求められている。このため、ロボットが自ら認知し、判断し、操作する自律ロボットシステムの活用が期待されている。
【0003】
特許文献1は、物品の適切な積み付けパターンを計算する技術を開示する。このために、特許文献1には、「物品の種類ごとの寸法に基づいて物品の第1の物理モデルを作成し、複数の物品が積み付けされる収容領域の寸法に基づいて収容領域の第2の物理モデルを作成するモデル作成部12と、第1の物理モデルを、物品の種類ごとに予め定めた優先度の高い順に第2の物理モデル内に配置する配置部14と、前記第1のモデルが前記第2の物理モデル内に配置される度に、第2の物理モデルに対して振動又は衝撃を与え、該振動又は衝撃に伴う前記第2の物理モデル内での前記第1の物理モデルの位置又は姿勢の変化を計算する物理演算部16とを備える。」ことが記載されている。
【先行技術文献】
【特許文献】
【0004】
【発明の概要】
【発明が解決しようとする課題】
【0005】
特許文献1では、物品の重量、形状及び耐荷重を考慮して、容器内のプレイス位置を決定することにより、適切な積み付けパターンを計算する。特許文献1では、容器全体のモーメントのバランスを考慮していない。このため、特許文献1では、例えば、重い物品が容器の中で偏って配置された場合に、容器全体のモーメントのバランスが崩れやすく、容器を作業者またはロボットが安定して把持しにくい。
【0006】
本発明は、上述の課題に鑑みてなされたもので、容器のモーメントのバランスを考慮して複数の物品を容器へ収容できるようにしたロボット制御装置およびピッキングシステムを提供する。
【課題を解決するための手段】
【0007】
上記課題を解決すべく、本発明の一つの観点に従うロボット制御装置は、容器に物品を収容させるロボットを制御するロボット制御装置であって、容器に収容される複数の物品の情報を記憶した物品リストに基づいて、容器を決定する容器決定部と、複数の物品の第1特性に基づいて、容器内での複数の物品の位置および姿勢の候補パターンを抽出する位置および姿勢候補抽出部と、位置および姿勢候補抽出部により抽出された候補パターンのうち、複数の物品により容器に作用するモーメントのバランスが所定範囲に収まる候補パターンを判定して最終パターンとして選択するモーメントバランス判定部と、モーメントバランス判定部により選択された最終パターンにしたがって、容器に複数の物品を収容させるための所定の順序を決定し、所定の順序にしたがって複数の物品を容器へ収容させる制御信号をロボットに出力させる制御信号出力部と、を含む。
【発明の効果】
【0008】
本発明によれば、複数の物品の収容された容器のモーメントのバランスが所定範囲に収まるように、容器へ複数の物品を収容させることができる。
【図面の簡単な説明】
【0009】
【
図1】ロボット制御装置を含むピッキングシステムの全体概要図。
【
図2】ロボット制御装置を含むピッキングシステムの構成説明図。
【
図3】ロボット制御装置を含むピッキングシステムの機能説明図。
【
図7】ロボット制御装置の全体処理を示すフローチャート。
【
図8】物品および緩衝材をポリゴンで近似して容器への収容を計算する説明図。
【
図9】物品が容器内で取り得る位置のパターンを説明する図。
【
図10】容器内に収容可能な物品のパターンを示す説明図。
【
図11】配置方向の決まっている物品の例を示す説明図。
【
図12】或る物品の耐荷重を超える他の物品が載った状態を説明する図。
【
図14】物品を収容した容器のモーメントを計算する説明図。
【
図15】物品を収容した容器のモーメントをバランスさせる説明図。
【
図16】第2実施例に係り、ロボット制御装置を含むピッキングシステムの機能説明図。
【
図17】第3実施例に係り、ロボット制御装置を含むピッキングシステムの機能説明図。
【
図18】第4実施例に係り、ロボット制御装置を含むピッキングシステムの昨日説明図。
【
図20】第5実施例に係り、収容順序を決定する処理を示すフローチャート。
【発明を実施するための形態】
【0010】
以下、図面に基づいて、本発明の実施の形態を説明する。本実施形態では、複数の物品7の収容された容器6のモーメントのバランスが所定範囲に収まるように、容器6へ複数の物品7を収容させる。
【0011】
複数の物品7は、種類の異なる物品を含むことができる。種類の異なる物品とは、例えば、形状、重量、硬さ(変形のしやすさ)、用途、内容物、原材料などの相違する物品である。例えば、工具、機械部品、飲料水、酒、缶詰、レトルト食品、菓子、洗剤、消臭剤、トイレ清掃具、台所用品、電気製品、薬品などである。
【0012】
容器に収容させる物品の種類が決まっている場合、容器に物品を収容させた状態でのモーメントのバランスを考慮する必要性に乏しい。しかし、種類の異なる雑多な物品を一つの容器に収容する場合は、各物品の重量や形状および重心位置が異なり、容器内での位置および姿勢も様々である。したがって、物品を収容した容器全体のモーメントのバランスを考慮して、種類の異なる複数の物品を容器内に収容させる必要がある。もしもそうしなければ、物品を収容した容器を次工程へ安定して送るのが難しくなる。特に、例えば、アームロボットまたは作業者などにより物品を収容した容器を把持して次工程へ送る場合、容器全体のモーメントのバランスが取れていないと、搬送中に容器が所定値以上に傾いたりすることも考えられる。
【0013】
そこで、本実施形態では、複数種類の物品(ワーク)を対象としたピックアンドプレイスにおいて、モーメントバランスも考慮して、物品の置き場所(プレイスの位置)および姿勢を決定する。これにより、本実施形態によれば、重い物品が容器の中で偏って配置されて容器全体のモーメントのバランスが崩れ、ロボットまたは作業者が容器を持ったときに落下したりするのを抑制することができる。
【0014】
本実施形態のロボット制御装置1は、
図1~
図3に記載のように、例えば、梱包する物品7のリストL1とそれらの物品群の特性を照らし合わせる物品特性データベース122と、物品特性のうち、体積をもとに梱包する容器7の種類を決める容器決定部131と、物品特性のうち、重量、体積、形状及び耐荷重の少なくとも一つに基づいて物品群のプレイス位置と姿勢の候補を決めるプレイス位置・姿勢候補抽出部151と、物品特性のうち重量と物品群のプレイス位置をもとに、候補のうち容器における底面を所定の境で分割したときの、それぞれの面に鉛直方向にかかるモーメントの差が所定値以下であるものを選択するモーメントバランス判定部171と、モーメントバランス判定部171で選択したプレイス位置と姿勢になるよう、容器の中に物品群をピックアンドプレイスさせるピックアンドプレイス部181とを備える。
【0015】
これにより、本実施形態によれば、上述の通り、容器全体のモーメントバランスを考慮してプレイスの位置および姿勢を決定することができるため、作業効率および信頼性を向上させることできる。
【実施例1】
【0016】
図1~
図15を用いて第1実施例を説明する。
図1は、ロボット制御装置1を含むピッキングシステム100の全体構成を示す説明図である。
【0017】
ピッキングシステム100は、ピッキングステーションPS1へ搬入された空の容器6内に、ピッキングステーションPS1へ搬入された所定の物品7を収容させて、次工程へ送り出す。
【0018】
ピッキングシステム100は、例えば、ロボット制御装置1と、指令装置2と、アームロボット3と、カメラ4と、物品棚5と、自動搬送車51と、容器搬入コンベア装置52と、容器搬出コンベア装置53とを備える。
【0019】
ロボット制御装置1は、アームロボット3の動作を制御する。ロボット制御装置1は、指令装置2から指令される物品リストL1にしたがって、アームロボット3を制御することにより、指定された物品群を空の容器6内へ収容する。ロボット制御装置1は、例えばカメラのようなセンサ4を用いて、例えば、物品7の形状、物品7の種類、物品7の姿勢、物品7の位置を検出することができる。
【0020】
センサ4は、カメラに限らず例えば、重量センサまたは触覚センサなどでもよい。重量センサにより、各物品の重さと容器全体の重さを検出することができる。触覚センサにより、容器6または物品7を把持したか否かを判別できる。複数のセンサ、複数種類のセンサを用いてもよい。なお、物品7に無線ICタグが貼付されており、その無線IDタグの内容をICタグリーダによって読み取ることができる構成でもよい。センサ4が不要な場合は、センサを設ける必要はない。
【0021】
アームロボット3は、例えば、水平回転可能な基部30と、基部30に回動可能に設けられたアーム31と、アーム31の先端に設けられた先端部位32とを備える。アームロボット3以外のロボットを用いてもよい。
【0022】
指令装置2は、入力された物品リストL1に基づいて、ロボット制御装置1に対し、容器6に収容させるべき物品7の情報(収容対象の物品群の情報)を送信する。さらに、指令装置2は、物品棚5に物品を収容する物品棚ステーション(不図示)、各コンベア装置51,52,53にも指令を送ってもよい。
【0023】
自動搬送車51は、物品棚ステーションにて物品7が収容された物品棚5をピッキングステーションPS1へ搬送する。物品7は、上述の通り、機械部品、電気製品、食品、飲料水、洗剤など様々である。自動搬送車51は物品棚5と共に「物品搬送装置」の例を構成する。自動搬送車51は物品棚5に一体化されてもよいし、あるいは、別体であってもよい。自動搬送車51と物品棚5を別々に構成し、必要に応じて、空いている自動搬送車51を物品棚5へ配車してもよい。すなわち、物品棚5は、自動搬送車51に対して、必要に応じてまたは常時結合されており、指示に応じて移動可能である。
【0024】
「容器搬入装置」の例である容器搬入コンベア装置52は、空の容器6をピッキングステーションPS1へ搬入する装置である。「容器搬出装置」の例である容器搬出コンベア装置53は、ピッキングステーションPS1にて複数の物品7と緩衝材8(
図8参照)とが収容された容器6を、出荷工程などの次工程へ送り出す装置である。以下では、容器6に収容される複数の物品を物品群と呼ぶ場合がある。
【0025】
本実施例では、容器搬入コンベア装置52と容器搬出コンベア装置53との間に、ピッキングステーションPS1が設けられている。すなわち、空の容器6の搬入と物品7が積載された容器6の搬出とは連続していない。
【0026】
さらに、ピッキングステーションPS1の高さ方向の位置と容器搬出コンベア装置53の高さ方向の位置とは、寸法Hだけ異なる。ピッキングステーションPS1と容器搬出コンベア装置53との間に高さ方向の段差があるため、アームロボット3は物品7を収容する容器6を安定して把持し、移動させる必要がある。
【0027】
ただし、ピッキングステーションPS1と容器搬出コンベア装置53との間に高さ方向の段差が無い場合でも、ピッキングステーションPS1と容器搬出コンベア装置53とが分かれている場合には、本実施例は有効に働く。
【0028】
図2は、ロボット制御装置1を含むピッキングシステム100の構成説明図である。ロボット制御装置1は、例えば、演算装置11と、通信装置12と、記憶装置13と、入出力装置14を含む計算機である。
【0029】
通信装置12は、指令装置2と通信する。通信装置12は、指令装置2の通信装置22から物品リストL1に基づく指令を受信する。
【0030】
記憶装置13は、計算機をロボット制御装置1として機能させるための所定のコンピュータプログラムとデータを記憶する。演算装置11は、所定のコンピュータプログラムを読み込んで実行することにより、容器全体のモーメントがバランスするように、かつ、所定の条件を満たすように、指令装置2から指令された複数の物品7を容器6へ所定の順序で収容させる。
【0031】
入出力装置14は、アームロボット3およびセンサ4に接続されている。演算装置11から発行される制御命令は入出力装置14を介してアームロボット3へ伝達される。センサ4の検出した信号は入出力装置14を介してロボット制御装置1に渡される。
【0032】
指令装置2は、例えば、演算装置21と、通信装置22と、記憶装置23とを含む計算機である。
【0033】
記憶装置23は、計算機を指令装置として機能させるための他のコンピュータプログラムとデータを記憶する。演算装置21は、他の所定のコンピュータプログラムを読み込んで実行することにより、物品リストL1の記載に基づいた指令を発行する。
【0034】
通信装置22は、ロボット制御装置1の通信装置12と通信し、演算装置21から発行された指令をロボット制御装置1へ送信する。通信装置22は、ロボット制御装置1から積込み完了の通知を受信する。積み込み完了の通知とは、指令された複数の物品を容器6に収容させたことを示す通知である。
【0035】
図3は、ロボット制御装置1を含むピッキングシステム100の機能説明図である。ロボット制御装置1は、例えば、物品リスト受信部111と、物品特性読取部121と、容器決定部131と、緩衝材決定部141と、位置および姿勢の候補抽出部151(以下、候補抽出部151と略記する場合がある)と、隣接可否判定部161と、モーメントバランス判定部171と、ピックアンドプレイス部181と、完了処理部191とを、機能として備える。さらに、ロボット制御装置1は、例えば、物品特性データベース122と、容器データベース132と、緩衝材データベース142も備える。図中では、データベースをDBと略記する。
【0036】
物品リスト受信部111、物品特性読取部121、容器決定部131、緩衝材決定部141、位置および姿勢の候補抽出部151、隣接可否判定部161、モーメントバランス判定部171、ピックアンドプレイス部181は、この順序で接続されている。
【0037】
詳細はそれぞれ後述するが、物品リスト受信部111は、指令装置2の指令送信部230から送信される指令(物品リストL1に基づく指令)を受信する。物品特性読取部121は、指定された物品リストL1に記載された各物品について物品特性データベース122を参照し、各物品の特性を取得する。
【0038】
容器決定部131は、指定された各物品のサイズ(体積を含む)に基づいて、容器データベース132を参照することにより、指定された各物品を収容可能な容器の種類を選択する。緩衝材決定部141は、指定された各物品と選択された容器種類とに基づいて、容器内に各物品を収容した場合の隙間の体積を算出し、緩衝材データベース142を参照して、隙間の体積を埋めるための緩衝材を決定する。
【0039】
候補抽出部151は、指定された各物品の物品特性のうち第1特性に基づいて、容器6内における各物品の位置および姿勢の候補パターンを抽出する。第1特性とは、物品7の持つ物理的特性、すなわち形状(各部の寸法)、重量、体積、耐荷重、材質、配置方向の制限などである。
【0040】
隣接可否判定部161は、候補抽出部151で抽出された各候補パターンのうち、指定された各物品に設定される第2特性に基づいて、隣接する容器の可否を判定する。例えば、食品とトイレ清掃用品などが容器内で隣接していたりすると、購買者は気分を害するおそれがある。そこで、本実施例では、第2特性として感性的特性に基づいて、すなわち一般的なユーザの好き嫌いに基づいて、容器内で隣接してはいけない物品の種類を予め設定している。一般的ユーザの好き嫌いを設定する方法は問わない。例えば、ピッキングシステム100の管理者が手動で設定してもよいし、ソーシャルネットワーキングサービスなどの投稿をテキスト解析し、機械学習を用いて設定してもよい。
【0041】
モーメントバランス判定部171は、各候補パターンについて、指定された各物品を収容した容器全体のモーメントが所定範囲内でバランスするか判定する。
【0042】
「制御信号出力部」の例であるピックアンドプレイス部181は、モーメントバランス判定部171により選択された最終パターンに従ってアームロボット3を制御することにより、緩衝材と指定された各物品とを選択された容器へ収容させる。
【0043】
完了処理部191は、カメラなどのセンサ4からの検出信号およびアームロボット3の信号に基づいて、指定された各物品と緩衝材とが容器に収容されるか判定する。完了処理部191は、物品リストL1で指示された各物品が容器へ収容されたと判定すると、その判定結果を指令装置2の完了通知受信部240へ送信する。
【0044】
指令装置2は、例えば、物品リストデータベース210と、物品リスト読取部220と、指令送信部230と、完了通知受信部240を備える。
【0045】
例えば、図示せぬ受注管理装置などから発行された物品リストL1は、物品リストデータベース210へ登録される。物品リスト読取部220は、物品リストデータベース210から未処理の物品リストL1を一つ読み出し、その物品リストL1に記載された物品7を容器6へ収容させるための指令を発行する。発行された指令は、指令送信部230からロボット制御装置1の物品リスト受信部111へ送信される。
【0046】
一方、完了通知受信部240は、ロボット制御装置1から容器6への各物品の収容を完了した旨の通知を受信すると、物品リスト読取部220に通知する。この通知を受けた物品リスト読取部220は、次の物品リストL1をデータベース210から読み出す。
【0047】
より詳細にピッキングシステム100の構成を説明する。ロボット制御装置1と、アームロボット3と、センサ4とは、それぞれ接続されている。ロボット制御装置1と指令装置2も接続されている。
【0048】
ここでの接続は、有線接続でも無線接続でもよい。上述の通り、センサ4は、アーム先端に物品7が触れているかどうかを判定する触覚センサや、周辺の映像を認識するカメラなどである。触覚センサまたはカメラ以外の他のセンサでもよいし、複数のセンサを用いてもよい。必要がなければ、センサを設けなくてもよい。センサ4は、アームロボット3に設けられてもよいし、アームロボット3とは別の場所(例えば、アームロボット3の周囲の天井や壁など)に設けられてもよい。
【0049】
なお、ピッキングシステム100が担うピックアンドプレイスとは、予め指定された複数の物品7を、段ボールやコンテナなどの一つの容器6に収める作業のことをいう。
【0050】
アームロボット3は、ロボット制御装置1から制御されることにより、一つまたは複数の物品7を物品棚5から容器6まで移動させる装置である。アームロボット3は、例えば、吸着盤、ハンド、あるいは他のピックアンドプレイスに適した先端部位32を使って、ピックアンドプレイスを実現する。
【0051】
ピックアンドプレイスの実行指令及び、容器6に詰める複数の物品群のリストL1の情報は、指令装置2からロボット制御装置1へ送信される。アームロボット3は、指令された物品群を全て容器6に詰め終わると、物品群を収容した容器を容器搬出コンベア装置53へ載せる。
【0052】
容器搬出コンベア装置53は、載せられた容器6を定められた運搬場所へ運搬する。容器搬入コンベア装置52は、空き容器6をピッキングステーションPS1へ搬送する。ロボット制御装置1は、例えば、センサ4によるRGB画像、距離画像、あるいはバーコードデータ、無線IDタグの内容などのセンシングデータを用いることにより、ピックアンドプレイスを実行する。
【0053】
ロボット制御装置1は、アームロボット3とは別の装置としてアームロボット3の外側に配置されてもよいし、アームロボット3内に設けられてもよい。さらには、ロボット制御装置1は、通信ネットワーク上のサーバ内に設けられてもよく、通信ネットワークを介してアームロボット3を制御してもよい。ロボット制御装置1と指令装置2は一体化されてもよいし、別々の装置として構成されてもよい。
【0054】
続いて、処理の流れを説明する。先に指令装置2の処理を説明する。指令装置2の物品リスト読取部220は、外部からの指令や既定の時間経過などのトリガーにしたがって、物品リストデータベース210から物品リストL1のデータを取得する。物品リストデータベース210は、ある容器に梱包させるべき物品群をリストL1として記憶しておくデータベースである。
【0055】
そして、指令装置2の指令送信部230は、物品リスト読取部220により読み取られたリストL1のデータとピックアンドプレイスの実行指令とを、物品リスト受信部111へ送信する。
【0056】
ロボット制御装置1の処理を説明する。ロボット制御装置1の物品リスト受信部111は、指令装置2からの指令を受信すると、物品特性読取部121により物品特性データベース122から指定された各物品の特性データを読み取らせる。
【0057】
物品特性データベース122は、物品リストL1に記載される可能性のある物品7について、それぞれの、重量、体積、形状、耐荷重、隣接不可物品、配置不可方向、材質などの特性が予め記憶されたデータベースである。
【0058】
物品特性読取部121は、物品特性データベース122から読出した特性データを容器決定部131へ送信する。容器決定部131は、特性データ中の物品の体積に基づいて、ピックアンドプレイスする全物品の総体積を求める。
【0059】
さらに、容器決定部131は、算出された総体積に基づいて、容器データベース132を参照することにより、容器6を決定する。そして、容器決定部131は、決定された容器の種類を示すデータを緩衝材決定部141へ送信する。
【0060】
緩衝材決定部141は、緩衝材データベース142から緩衝材のデータを読み出す。緩衝材データベース142は、ピックアンドプレイスの対象となり得る物品ごとに、推奨される緩衝材の種類を記憶する。緩衝材決定部141は、ピックアンドプレイスする物品群のデータに基づいて、緩衝材の種類を決定する。そして、緩衝材決定部141は、物品群の総体積と容器の体積との差を、必要な緩衝材の体積として算出する。緩衝材決定部141は、決定された緩衝材の種類とその体積、及び容器の種類を、位置および姿勢の候補抽出部151へ送信する。
【0061】
位置および姿勢の候補抽出部151では、ピックアンドプレイスする物品群の特性のうち重量、体積、形状、耐荷重及び配置不可方向と、容器の種類と、緩衝材の量とから、容器内に物品と緩衝材とをどのような位置および姿勢で配置するのがよいかの候補パターン群を決定する。その詳細は
図7で後述する。候補抽出部151は、ピックアンドプレイスの複数の候補パターンを隣接可否判定部161へ送信する。
【0062】
隣接可否判定部161は、抽出された各候補パターンの中で、物品群の特性のうち、隣接可否物品のデータをもとに、隣接すべきでない物品同士が隣接している候補パターンを排除し、残りの候補パターンをモーメントバランス判定部171へ送信する。詳細は後述する。
【0063】
モーメントバランス判定部171は、物品群の中から、容器全体のモーメントのバランスが最も良いものを、最終的なパターン(最終的に採用されるピックアンドプレイスのパターン)として決定する。詳細は後述する。
【0064】
ピックアンドプレイス部181は、モーメントバランス判定部171で決定された物品群の位置及び姿勢になるように、アームロボット3へ制御信号(あるいは制御コマンド)を出力する。ピックアンドプレイス部181は、アームロボット3を制御する際に、センサ4からのセンシングデータを使用する。そして、アームロボット3によるピックアンドプレイスが全て終わると、完了処理部191は作業完了を検知し、完了通知受信部240へ送信する。
【0065】
指令装置2の完了通知受信部240は、完了処理部191からの通知を受けると、ピックアンドプレイスが完了したことを確認する。完了通知受信部240は、次のタスクに移るよう、物品リスト読取部220に指令を出す。
【0066】
本実施例のピッキングシステム100によれば、複数種類の物品を対象としたピックアンドプレイスにおいて、重量、体積、形状、耐荷重、適切なプレイス方向といった物理的特性と、隣接可否といった感性的特性と、容器6全体のモーメントバランスと、緩衝材の配置とを総合的に考慮して、プレイスの位置および姿勢を決定することができる。したがって、本実施例のピッキングシステム100は、容器6への物品7の梱包作業およびピッキングステーションPS1からの搬出作業を高い信頼性で実行することができ、作業効率も向上する。
【0067】
図4は、物品特性データベース122の例を示す。物品特性データベース122は、ピックアンドプレイスする可能性のある物品の特性を記憶するデータベースである。
図4には、それぞれの物品の名称1221について、例えば、重量1222、体積1223、形状1224、耐荷重1225、隣接不可物品1226、配置不可方向1227、材質1228といった特性が記憶されている。形状1224は、物品6の実際の寸法形状であってもよいし、物品6の実際の形状を近似したポリゴンの形状であってもよい。本実施例では、ポリゴンの形状を記憶する場合を説明する。
【0068】
図示した特性以外の特性をデータベース122に加えてもよいし、図示された特性の一部をデータベース122から除いてもよい。ロボット制御装置1は、物品特性データベース122を使用することにより、ピックアンドプレイスする物品群のそれぞれの特性を把握することができる。
【0069】
図5は、容器データベース132の例である。容器データベース132は、例えば、ピックアンドプレイスする物品群の合計体積1321と、その物品群を収納するのに推奨される容器1322とを対応付けて記憶する。これにより、容器決定部131は、ピックアンドプレイスする物品群の合計体積に基づいて、物品群を収納するのに適した容器を決定することができる。
【0070】
図6を用いて、緩衝材データベース142の例を示す。緩衝材データベース142は、例えば、ピックアンドプレイスする物品群の候補になりうる物品の名称1421と、それら物品名1421に対して推奨される緩衝材1422とを対応付けて記憶する。緩衝材1422は、緩衝材の種類だけでなく、その緩衝材の形状を近似したポリゴンの形状を含むこともできる。緩衝材決定部141は、緩衝材データベース142を用いることにより、ピックアンドプレイスする物品群の種類に基づいて、推奨される緩衝材を決定することができる。
【0071】
図7のフローチャートを用いて、位置および姿勢の候補抽出部151の内部処理を説明する。
【0072】
候補抽出部151は、収容対象の複数の物品(物品群)の特性を読み込み(S11)、物品群と緩衝材とが容器内に収納できる位置と姿勢の配置を示す候補パターンを網羅的に抽出する(S12)。
【0073】
候補抽出部151は、抽出された候補パターンのうち、物品の適切でない姿勢が含まれるパターンを排除する(S13)。さらに、候補抽出部151は、ステップS13を通過した各候補パターンのうち、耐荷重を超える重量が物品の上部に作用するパターンを排除する(S14)。以上の手順により、容器内に物品群をピックアンドプレイスする際の物品の位置及び姿勢が決定される。なお、抽出された候補パターンを条件によって排除する過程の順番は、
図7に示す例に限定されない。
【0074】
その後、隣接可否判定部161は、隣接配置が禁止されている物品を含む候補パターンを除外し(S15)、モーメントバランス判定部171は、物品群を収容した容器全体のモーメントバランスを判定し、最もバランスのよいパターンを選択する(S16)。
【0075】
図8、
図9、
図10を用いて、物品群と緩衝材とを容器内に収納可能な位置と姿勢の配置を示す候補パターンを列挙する方法の例を説明する。
【0076】
図8に示すように、容器6に梱包したい物品7は、その物品6に最も近い単純化されたポリゴン71で扱われる。容器6内の物品7の周囲の隙間に設けられる緩衝材8もポリゴンとして扱われる。緩衝材8のポリゴンは図示を省略する。
【0077】
すなわち、物品特性データベース122は、物品7および緩衝材8を、例えば直方体のポリゴンとして予め記憶している。これにより、物品に最も近いポリゴンを算出する手間が省け、位置および姿勢の配置のパターンを速やかに計算することができる。
【0078】
緩衝材決定部141は、物品群の体積と容器6の体積とから計算した、物品群を容器へ収容した際に生まれる隙間を埋めるのに必要な量の緩衝材8を計算する。上述のステップS12では、例えば、物品群と緩衝材群を、容器6から溢れることなく収容できる配置の候補パターンを列挙する。
【0079】
図9は、物品が容器6内に存在できるパターンを列挙する方法を示す。容器6に梱包する物品群を直方体のポリゴンとして認識している。ポリゴン71の各辺のうち最も短い辺を最小辺長W1とする(
図9(3)参照)。
【0080】
図9(1)は、物品7のポリゴン71が容器6の隅に存在する状態を示す。
図9(2)は、最小辺長W1を移動の単位として、物品7のポリゴン71を、
図9(1)の位置から最小辺長W1だけ上方向(z方向)に移動させたパターンである。
【0081】
図9(3)と
図9(4)と
図9(5)は、物品7のポリゴン71を
図9(1)に示す位置からx方向に最小辺長W1ずつ移動させたパターンである。
図9(6)は、物品7のポリゴン71を
図9(1)に示す位置からy方向に移動させたパターンである。
【0082】
このような方法で、物品7のポリゴン71が容器6内に存在可能なパターンを全て列挙する。パターンを列挙する際に、最小辺長W1を最小単位として配置位置をずらす。なお、図示は省略するが、候補抽出部151は、物品7のポリゴン71が容器6内で取り得る各位置について、所定の角度ごとに姿勢を変えたパターンも列挙する。候補抽出部151は、以上の手順を物品群全てに対して実施し、物品群がそれぞれ容器6の中に存在できるパターンを列挙する。
【0083】
図10は、候補抽出部151により抽出された候補パターンの例である。同一の物品群を同一の容器内に収容させる場合でも、各物品の位置と姿勢の組合せにより多数の候補パターンが算出される。
【0084】
図11は、
図7のステップS13に関連し、不適切な姿勢となる物品の例を示す。天地無用の物品7(1)は、
図11の左側に示すように上を向いて配置される必要がある。
図11の右側に示すように、上下が逆になった物品7(2)は不適切な姿勢となる。容器内の一つの物品でも不適切な姿勢となる候補パターンは排除される。
【0085】
図12は、
図7のステップS14に関連し、耐荷重を超える重量が物品の上部に乗っているパターンの例を示す。
図12では、一方の物品のポリゴン71(1)の上に他方の物品のポリゴン71(2)が配置されており、他方の物品の重量の一部が一方の物品に作用している。
【0086】
他方の物品のポリゴン71(2)が一方の物品のポリゴン71(2)と接している面積によって、他方の物品のポリゴン71(2)から一方の物品のポリゴン71(1)へ加わる重量を算出する。例えば、ポリゴン71(2)がポリゴン71(1)に接している面のうち、40パーセントの面積がポリゴン71(1)に接している場合、他方の物品の重量の40パーセントの重量が一方の物品にかかっていると考えることができる。
【0087】
このようにして、容器6内で各物品に加わる重量を算出し、物品の耐荷重を超える重量が加わる候補パターンを排除する。
図12では、二つの物品が一部重なる場合を例示するが、3つ以上の物品が重なる場合も同様に、物品に加わる荷重がその物品の耐荷重を超えるか否かが計算される。
【0088】
図13は、
図7のステップS15に関連し、物品同士の隣接を示す図である。
図13(1)では、或る物品のポリゴン71(3)が他の物品のポリゴンに接触する場合、ポリゴン同士の接触する全ての物品を隣接していると判定する。
図13(2)では、或る物品7(4)の中心からの距離によって、その物品7(4)に隣接する物品を定義する。すなわち、或る物品7(4)の中心から他の物品の中心までの距離が所定の隣接半径r1以下の場合、それらの物品は隣接していると判定する。
【0089】
このように、各候補パターンについて、容器6内で隣接する物品を検出し、それら隣接する物品同士が隣接付加の物品同士である場合、その候補パターンを排除する。例えば、食品とトイレ清掃用品のように、一般的ユーザが感情的に隣接するのを嫌うと推測できる場合は、隣接不可物品1226として物品特性データベース122に登録される。あるいは、内容物が液体の物品(ジュース、醤油、液体洗剤など)と液体に濡れると毀損する物品(ティッシュ、ノート、電気製品など)のように、輸送中の液漏れなどで商品価値が低下するおそれがある場合のように、輸送中のリスクが高い物品同士も隣接不可物品1226として物品特性データベース122に登録される。
【0090】
隣接不可である物品同士が存在する候補パターンを排除することにより、食品と液漏れの可能性がある洗剤などのように、近づけるべきでない物品同士が隣接して配置されるのを防止し、輸送中の取り扱い不注意などによって容器内の物品の品質が低下することを防止できる。すなわち、複数の物品が梱包された容器を輸送する際の信頼性を向上させることができる。
【0091】
図14及び
図15を用いて、容器全体のモーメントのバランスを判定する方法の例を説明する。この説明は、
図7のステップS16に関連する。本実施例では、容器全体のモーメントのバランスが所定の閾値よりも悪い候補パターンを排除する。
【0092】
図14は、容器6の中に存在する物品のモーメントを、どのように求めるかを示す説明図である。
図14(1)は、容器6の斜視図を示す。
図14(2)の容器底面61は、
図14(1)に示す容器6を、図中のxy平面で見たものである。
【0093】
中心点P1は、容器底面61の中心の点である。質点P2は、物品群のうちのある物品の重量がかかる点である。物品の中心に質点P2があるものとする。中心点-質点間距離L2は、中心点P1と質点P2との距離である。物品によるモーメントは、質点P2にかかる重量と、中心点-質点間距離L2との積算で求められる。以上の方法により、物品群が容器6に及ぼすモーメントを全て求める。
【0094】
図15は、
図14の手順で求めた物品群のそれぞれのモーメントによる、容器6全体のモーメントバランスを求める手順を示している。
【0095】
容器側面62は、容器6を、図におけるxz平面からみたものである。中心線64は、容器側面62の中心の線である。容器側面63は、容器6を、図におけるyz平面からみたものである。中心線65は、容器側面63の中心の線である。容器側面62を図の方向からみたとき、中心線64で分割される左右の部分の中かかるモーメントをそれぞれ合計する。それぞれ合計されたモーメントの差分が、予め決められて、例えばデータベースに記憶されている所定の閾値よりも大きければ、その候補パターンは排除する。同様の方法で、容器側面63と中心線65によるモーメントバランスをもとに、モーメントバランスが所定の閾値を超えたか判定してもよい。
【0096】
本実施例が適用されないピッキングシステム100の場合、重い物品が容器内で偏って配置されることがあり得たため、容器全体のモーメントのバランスが崩れる。したがって、モーメントバランスの悪い容器を作業者またはロボットが把持すると、落下の可能性が増加する。これに対し、本実施例に係るロボット制御装置1は、モーメントのバランスも考慮して、プレイスの位置および姿勢を決定するため、信頼性の高いピックアンドプレイスを実現可能である。
【実施例2】
【0097】
図16を用いて第2実施例を説明する。本実施例を含む以下の各実施例では、第1実施例との相違を中心に述べる。本実施例では、物品特性データベース122に登録されていない物品にも対応できる例を示す。
【0098】
本実施例のピッキングシステム100Aは、実施例1のピッキングシステム100に特性判定部123を追加してる。
【0099】
図16を用いて、ピッキングシステム100Aの機能構成を説明する。物品リスト受信部111と容器決定部131との間には、物品特性読取部121と並列に特性判定部123が設けられている。特性判定部123は、物品リストに記載された物品群の中に、物品特性データベース220に存在しない未登録物品が含まれている場合に、その未登録物品の特性を判定する。
【0100】
未登録物品の特性をその場で判定する方法を説明する。特性判定部123は、例えば、アームロボット3に未登録物品を保持させて、アームロボット3に鉛直方向にかかる力から未登録物品の特性の一つである重量を推定することができる。あるいは、特性判定部123は、カメラであるセンサ4を用いて未登録物品のRGB画像データおよび距離画像データを取得し、それら画像データを画像処理して認識することにより、未登録物品の形状および体積を検出することもできる。さらには、特性判定部123は、未登録物品に印字または貼付された文字列またはバーコードなどを読み取ることにより、物品の種類、材質、物品の配置不可方向を検出することもできる。例えば、印刷媒体または電子的記録媒体として形成される商品ラベルには、商品の種類や材質、天地無用などの情報が含まれることがある。
【0101】
図4で述べた物品特性データベース122で管理される各項目の中に、未登録物品について判定が困難な項目がある場合、特性判定部123は、予め用意された初期値を設定してもよい。
【0102】
このように構成される本実施例も第1実施例と同様の作用効果を奏する。さらに、本実施例では、物品特性データベース122に登録されていない物品が物品リストに含まれている場合でも、その未登録物品の特性を特性判定部123により判定できるため、作業を中断することなく、ピッキングシステムを稼働させることができる。
【実施例3】
【0103】
図17を用いて第3実施例を説明する。本実施例では、アームロボット3は緩衝材を容器6内に配置せず、他のロボットまたは作業者により緩衝材を容器内に投入する。
【0104】
図17は、本実施例に係るピッキングシステム100Bの機能構成を示す。ピッキングシステム100Bと
図3で述べたピッキングシステム100とを比べると、本実施例のピッキングシステム100Bでは、緩衝材決定部141と緩衝材データベース142とが除かれており、その一方、緩衝材投入部9が新たに追加されている。ピッキングシステム100Bのロボット制御装置1では、容器決定部131と候補抽出部151とが接続されて、データをやり取りする。
【0105】
緩衝材投入部9は、モーメントバランス判定部171から隙間容量データを受信する。隙間容量データは、容器6へ物品群が収納されたときに、容器内に生じる隙間の体積を示すデータである。緩衝材投入部9は、隙間容量データに基づいて、隙間を埋めるために必要な量の緩衝材を容器6内へ投入する。緩衝材投入部9は、例えば、粒状の緩衝材またはバラ緩衝材を容器6内へ投入する装置またはロボットである。緩衝材投入部9は、作業者でもよい。ピッキングステーションに設けられたディスプレイなどに、緩衝材の量を表示し、作業者によって必要量の緩衝材を容器内へ手動で投入させてもよい。
【0106】
このように構成される本実施例も第1実施例と同様の作用効果を奏する。さらに本実施例では、アームロボット3とは別の緩衝材投入部9により緩衝材を容器へ投入するため、アームロボット3によって物品および緩衝材の両方を容器へ配置する場合に比べて、作業効率を向上させることができる。例えば、本実施例では、例えば、バラ緩衝材など細かい緩衝材を用いる場合に、作業効率が向上する。
【実施例4】
【0107】
図18および
図19を用いて第4実施例を説明する。本実施例では、物品群を容器内へ配置する順序(プレイス順)をいわゆる人工知能技術を用いて決定する。
【0108】
本実施例のピッキングシステム100Cには、第1実施例で述べたピッキングシステム100に対して、プレイス順決定部150が追加されている。
【0109】
図18は、ピッキングシステム100Cの機能ブロック図を示す。このピッキングシステム100Cには、
図3で述べたピッキングシステム100に、プレイス順決定部150が追加されている。
【0110】
プレイス順決定部150は、緩衝材決定部141から、物品群のデータと、各物品の特性のデータと、緩衝材のデータとを受信して演算することにより、物品群と緩衝材を、どのような順番で容器6へ入れるかを決定する。
【0111】
プレイス順決定部150は、例えば、人工知能技術を用いてプレイスの順番を決定することができる。プレイス順決定部150は、例えば、強化学習などの機械学習を用いることにより、最も適切である可能性の高いプレイスの順番を決める。強化学習によってプレイスの順番を決める例は、
図20で後述する。プレイスの順番がプレイス順決定部150で決められると、候補抽出部151は、プレイスの順番をもとに、前記候補パターンを列挙する。プレイスの順番が決まっていることで、列挙する前記候補パターンが減り、組み合わせの爆発を防ぐ、計算機の負荷を下げる又は計算速度を向上させるなどの効果を得ることができる。
【0112】
図19を用いて、強化学習によりプレイス順決定部150がプレイスの順番を決定する方法を説明する。
図19は、強化学習における状態遷移図である。
【0113】
容器6に、物品A、物品B及び物品Cの三つの物品群を収納する場合を説明する。このとき、状態遷移図が示すように、一回目にいれる物品、二回目に入れる物品及び三回目に入れる物品のパターンが列挙でき、状態遷移が表現できる。それぞれの状態で、どの物品を次に入れるかを選ぶかによって得られる報酬を、強化学習によって学習すると、最も適切である可能性が高いプレイスの順番を決めることができるようになる。報酬とは、最終的に最適に近い順番になるような選択をしたとき、より多くもらえるものである。ここでは強化学習を活用する例を用いたが、教師あり学習や教師なし学習など、他の機械学習の種類を活用してもかまわない。
【0114】
このように構成される本実施例も痔1実施例と同様の作用効果を奏する。さらに本実施例では、機械学習などによりプレイスの最適な順番を決定し、この順番にしたがって候補パターンを列挙する。本実施例ではプレイスの順番が決まっているため、列挙する候補パターンの数を減らすことができ、組み合わせの数が爆発的に増大するのを防止できる。したがって、本実施例によれば、計算機の負荷を下げる又は計算速度を向上させるといった効果を得ることができる。
【実施例5】
【0115】
図20を用いて第5実施例を説明する。本実施例では、今回の処理対象の物品リストに最も近い過去の物品リストを検出し、その過去の物品リストで使用されたピックアンドプレイスの順番を利用する。
【0116】
図20は、プレイス順決定処理のフローチャートである。プレイス順決定部150は、処理対象の物品リストの特徴量を計算し(S21)、算出された特徴量に基づいて、過去に処理された物品リストを検索する(S22)。図示は省略するが、本実施例では、物品リストを特定する情報と、物品リストの記載の物品群を容器に収容したときの容器の種類、緩衝材の種類と量、物品群の収容の順番が保存されているものとする。
【0117】
プレイス順決定部150は、処理対象の物品リストの特徴量と似ている過去の物品リストが検出されたか判定する(S23)。処理対象の物品リストと特徴量の最も似ている過去の物品リストが検出されると(S23:YES)、プレイス順決定部150は、その過去の物品リストを読み出す(S24)。プレイス順決定部150は、その過去の物品リストに記載の物品群を容器に収容したときのプレイス順をもとに、処理対象の物品リストのプレイス順を決定する(S25)。
【0118】
これに対し、処理対象の物品リストの特徴量を似ている過去の物品リストが検出されない場合(S23:NO)、プレイス順決定部150は、
図19で述べた機械学習によりプレイスの順番を決定する(S26)。物品リストの特徴量が似ているとは、例えば、比較する各物品リストの特徴量の差が所定値以内の場合である。物品リストの特徴量が似ていないとは、比較する各物品リストの特徴量の差が所定値を超える場合である。
【0119】
このように構成される本実施例は第4実施例と同様の作用効果を奏する。さらに本実施例では、過去の物品リストの中から処理対象の物品リストに最も近い物品リストを検出し、その最も似ている物品リストに関するプレイスの順番に基づいて、処理対象の物品リストに関するプレイスの順番を決定する。したがって、本実施例では、過去の処理内容を利用して計算時間を短縮することができる。
【0120】
なお、本発明は上述の実施形態に限定されず、様々な変形例が含まれる。上記実施形態は本発明を分かりやすく説明するために詳細に説明したものであり、必ずしも説明した全ての構成を備えるものに限定されるものではない。また、ある実施形態の構成の一部を他の実施形態の構成に置き換えることもできる。また、ある実施形態の構成に他の実施形態の構成を加えることもできる。また、各実施形態の構成の一部について、他の構成を追加・削除・置換することもできる。
【0121】
本発明の各構成要素は、任意に取捨選択することができ、取捨選択した構成を具備する発明も本発明に含まれる。さらに特許請求の範囲に記載された構成は、特許請求の範囲で明示している組合せ以外にも組み合わせることができる。
【符号の説明】
【0122】
1:ロボット制御装置、2:指令装置、3:アームロボット、4:センサ、5:物品棚、6:容器、7:物品、8:緩衝材、9:緩衝材投入部、100:ピッキングシステム、111:物品リスト受信部、121:物品特性読取部、122:物品特性データベース、123:特性判定部、131:容器決定部、132:容器データベース、141:緩衝材決定部、142:緩衝材データベース、150:プレイス順決定部、151:位置および姿勢の候補抽出部、161:隣接可否判定部、171:モーメントバランス判定部、181:ピックアンドプレイス部、191:完了処理部