(57)【特許請求の範囲】
【請求項１】
複数の物品を予め定められた収容領域にロボットにて配置する時に、不規則に搬送された物品の位置を計算する積み付けパターン計算装置であって、
複数の物品は、箱の形状を有し、寸法が互いに異なる物品が含まれており、
収容領域に積まれる物品の種類ごとの個数および寸法を記憶する記憶部と、
収容領域に形成される層を構成する物品の組合せを計算し、搬送された物品の種類、層の高さ、および層の面積に基づいて、収容領域に形成可能な物品の層を選定する組合せ計算部と、
組合せ計算部にて選定された層について、層が完成する第１の確率を算出し、ロボットと収容領域との位置関係および第１の確率に基づいて、物品を積む位置を決定する位置決定部と、を備えることを特徴とする、積み付けパターン計算装置。
【請求項２】
組合せ計算部は、収容領域の内部に配置可能であり、高さが一定であり、且つ、平面形状が長方形である物品の組合せを層として生成する、請求項１に記載の積み付けパターン計算装置。
【請求項３】
組合せ計算部は、新たな層を生成する場合に、新たな層を平面視したときの面積と、新たな層を構成する物品の重心位置とに基づいて、新たに生成する層を選定する、請求項１に記載の積み付けパターン計算装置。
【請求項４】
組合せ計算部は、収容領域に配置されていない残りの物品の種類ごとの個数を取得し、搬送された物品の種類と、残りの物品の種類ごとの個数とに基づいて、第２の確率を算出し、第２の確率が予め定められた判定値以下となる組合せは除外する、請求項１に記載の積み付けパターン計算装置。
【請求項５】
組合せ計算部は、収容領域に配置されていない残りの物品の種類ごとの個数を取得し、搬送された物品の種類と、残りの物品の種類ごとの個数とに基づいて、搬送された物品を作成途中の層に積む、作成途中の層の上に新たに層を作成する、または仮置き場所に配置することを選定する、請求項１に記載の積み付けパターン計算装置。
【請求項６】
組合せ計算部は、搬送された物品を置く場所がないと判断した場合に、作成途中の層の土台となっている層を分割して分割領域を生成し、分割領域ごとに層を構成する物品の組合せを計算する、請求項１に記載の積み付けパターン計算装置。
【請求項７】
位置決定部は、収容領域に積まれた物品の高さがロボットから遠い位置よりも近い位置の方が低くなるように今回の物品を積む位置を選定し、選定した位置のうち第１の確率が最も高い位置を物品を積む位置に選定する、請求項１に記載の積み付けパターン計算装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、物品を積む位置を設定する積み付けパターン計算装置に関する。
【背景技術】
【０００２】
物品を搬送する工程においては、複数の物品を所定の収容領域に整列して配置する工程が存在する。たとえば、コンベヤにて１個ずつ搬送される物品をパレットに積み上げる工程が存在する。このようなコンベヤにて搬送される物品をパレットに積み上げるシステムは、パレタイジングシステムとして知られている。
【０００３】
特開２０１３−７１７８５号公報においては、寸法が異なる複数種類の箱体が混在するような場合に、箱体の大きさに基づいて箱の組合せを計算する積み付け装置が開示されている。この装置では、箱体を箱収容手段の四隅に配置した後に四隅以外の部分に箱を配置することが開示されている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２０１３−７１７８５号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
箱状の物品をパレット等に積み上げる場合に、複数の種類の物品を積み上げる場合がある。この場合には、積み上げ作業を実施する前にパレットに積み付ける配置パターンを予め計算しておくことができる。ところが、予め配置パターンが定められるために、コンベヤ等で物品が搬送されてくる場合には、物品の種類の搬送の順番がある程度決まっている必要がある。
【０００６】
一方で、物品の搬送工程では、積み上げる物品の種類の順序が決まっていない場合がある。例えば、コンベヤにより搬送される物品の種類が不規則な場合がある。従来の技術においては、不規則に搬送されてくる複数の種類の物品を適切に積み上げるための物品の位置の計算方法がなかった。さらに、従来の技術の方法では、物品を収容する領域の高さ方向に優先して物品を積み上げるため、物品の組合せの底面積が小さくなり安定性が低くなる場合があった。
【課題を解決するための手段】
【０００７】
本発明の積み付けパターン計算装置は、複数の物品を予め定められた収容領域にロボットにて配置する時に、不規則に搬送された物品の位置を計算する。複数の物品は、箱の形状を有し、寸法が互いに異なる物品が含まれている。積み付けパターン計算装置は、収容領域に積まれる物品の種類ごとの個数および寸法を記憶する記憶部を備える。積み付けパターン計算装置は、収容領域に形成される層を構成する物品の組合せを計算し、搬送された物品の種類、層の高さ、および層の面積に基づいて、収容領域に形成可能な物品の層を選定する組合せ計算部を備える。積み付けパターン計算装置は、組合せ計算部にて選定された層について、層が完成する第１の確率を算出し、ロボットと収容領域との位置関係および第１の確率に基づいて、物品を積む位置を決定する位置決定部を備える。
【０００８】
上記発明においては、組合せ計算部は、収容領域の内部に配置可能であり、高さが一定であり、且つ、平面形状が長方形である物品の組合せを層として生成することができる。
【０００９】
上記発明においては、組合せ計算部は、新たな層を生成する場合に、新たな層を平面視したときの面積と、新たな層を構成する物品の重心位置とに基づいて、新たに生成する層を選定することができる。
【００１０】
上記発明においては、組合せ計算部は、収容領域に配置されていない残りの物品の種類ごとの個数を取得し、搬送された物品の種類と、残りの物品の種類ごとの個数とに基づいて、第２の確率を算出し、第２の確率が予め定められた判定値以下となる組合せは除外することができる。
【００１１】
上記発明においては、組合せ計算部は、収容領域に配置されていない残りの物品の種類ごとの個数を取得し、搬送された物品の種類と、残りの物品の種類ごとの個数とに基づいて、搬送された物品を作成途中の層に積む、作成途中の層の上に新たに層を作成する、または仮置き場所に配置することを選定することができる。
【００１２】
上記発明においては、組合せ計算部は、搬送された物品を置く場所がないと判断した場合に、作成途中の層の土台となっている層を分割して分割領域を生成し、分割領域ごとに層を構成する物品の組合せを計算することができる。
【００１３】
上記発明においては、位置決定部は、収容領域に積まれた物品の高さがロボットから遠い位置よりも近い位置の方が低くなるように今回の物品を積む位置を選定し、選定した位置のうち第１の確率が最も高い位置を物品を積む位置に選定することができる。
【発明の効果】
【００１４】
本発明の積み付けパターン計算装置は、複数の種類の物品を積み付ける時に、積み付ける物品の種類の順序が不規則な場合に、物品を積み付ける適切な位置を算出することができる。
【図面の簡単な説明】
【００１５】
【図１】実施の形態における積み付けシステムの概略図である。
【図２】実施の形態における積み付けシステムのブロック図である。
【図３】実施の形態における組合せ計算部のブロック図である。
【図４】実施の形態において説明に用いる複数の種類の箱と収容領域の説明図である。
【図５】実施の形態におけるパターン計算装置の全体の制御のフローチャートである。
【図６】実施の形態における第１制御のフローチャートである。
【図７】実施の形態における最小単位の箱の組合せを説明する斜視図である。
【図８】層生成部において生成される高さが３０ｃｍの層の斜視図である。
【図９】層生成部において生成される高さが５５ｃｍの層の斜視図である。
【図１０】層生成部にて除外される箱の組合せの斜視図である。
【図１１】実施の形態における第２制御のフローチャートである。
【図１２】実施の形態における第３制御のフローチャートである。
【図１３】実施の形態における第３制御を説明する為の現在のシステムの状態の図である。
【図１４】第２制御にて選定した層の配置パターンの斜視図である。
【図１５】実施の形態における第４制御のフローチャートである。
【図１６】実施の形態における第５制御のフローチャートである。
【図１７】第５制御を説明するための現在のシステムの状態の図である。
【図１８】第４制御にて選定した層の配置パターンの斜視図である。
【図１９】今回の作業において配置する箱の位置の候補の斜視図である。
【図２０】第１候補に箱を配置した場合の配置パターンの斜視図である。
【図２１】第２候補に箱を配置した場合の配置パターンの斜視図である。
【図２２】実施の形態における第６制御のフローチャートである。
【図２３】第６制御を説明するための現在の状態の図である。
【図２４】分割領域設定部により分割された領域を説明する斜視図である。
【発明を実施するための形態】
【００１６】
図１から図２４を参照して、実施の形態における積み付けパターン計算装置について説明する。本実施の形態の積み付けパターン計算装置は、箱状の物品をパレットに積み上げる積み付けシステムに備えられている。
【００１７】
図１は、本実施の形態における物品の積み付けシステムの概略図である。本実施の形態では、箱状の物品として直方体状の箱を積み上げる例を取り上げて説明する。積み付けシステムは、搬送の対象となる箱８１，８２を把持するエンドエフェクタとしてのハンド４と、ハンド４を所望の位置および姿勢に配置するロボット１とを備える。積み付けシステムは、ロボット１を制御するロボット制御装置としての制御装置２を備える。
【００１８】
本実施の形態のロボット１は、アーム１１と複数の関節部１４とを含む多関節ロボットである。ロボット１は、アーム１１の手首部の位置および姿勢を自由に変化させることができる。ロボット１は、ハンド４により把持される箱８１，８２を所望の位置および姿勢に配置することができる。
【００１９】
本実施の形態の積み付けシステムは、コンベヤ３１にて搬送されてきた箱をパレット３２に積み上げる作業を行う。パレット３２に積み上げる箱は、寸法が異なる複数の種類の箱８１，８２である。パレット３２の上面には、箱を積み付けることができる収容領域９１が予め設定されている。ここで、本実施の形態では、コンベヤ３１が搬送する箱の種類の順序は定められておらずに、不規則な順序で箱が搬送される。
【００２０】
積み付けパターン計算装置は、収容領域９１の内部において、箱８１，８２を積み付ける位置を設定する。ロボット１は、積み付けパターン計算装置にて設定された位置に箱を配置する。また、本実施の形態では、一時的に箱８１，８２を置いておくための仮置き場所を提供する仮置き台３３が配置されている。
【００２１】
図２に、本実施の形態における積み付けシステムのブロック図を示す。図１および図２を参照して、ロボット１は、それぞれの関節部１４を駆動するアーム駆動装置を含む。アーム駆動装置は、関節部１４に配置されているアーム駆動モータ１２を含む。アーム駆動モータ１２が駆動することにより、アーム１１を関節部１４にて所望の角度に曲げることができる。ハンド４は、箱を把持する爪部を閉じたり開いたりするハンド駆動装置を備える。本実施の形態のハンド駆動装置は、空気圧によりハンド４を駆動するハンド駆動シリンダ１３を含む。
【００２２】
制御装置２は、バスを介して互いに接続されたＣＰＵ（Central Processing Unit）、ＲＡＭ（Random Access Memory）、およびＲＯＭ（Read Only Memory）等を有する演算処理装置を含む。制御装置２は、ロボット１およびハンド４の動作指令を送出する動作制御部２１を含む。本実施の形態の制御装置２には、後述の制御を実施する動作プログラムが入力される。動作制御部２１は、動作プログラムに基づいてロボット１およびハンド４を駆動するための動作指令を送出する。
【００２３】
動作制御部２１は、アーム駆動部２２にアーム駆動モータ１２を駆動する動作指令を送出する。アーム駆動部２２は、アーム駆動モータ１２を駆動する電気回路を含み、動作指令に基づいてアーム駆動モータ１２に電気を供給する。また、動作制御部２１は、ハンド駆動部２３にハンド駆動装置を駆動する動作指令を送出する。ハンド駆動部２３は、空気ポンプを駆動する電気回路を含み、動作指令に基づいてハンド駆動シリンダ１３に圧縮空気が供給される。ハンド駆動シリンダ１３に供給する空気の圧力を調整することによりハンド４の爪部が開閉する。なお、エンドエフェクタは、箱を保持したり解放したりすることができる任意の装置を採用することができる。
【００２４】
本実施の形態の積み付けパターン計算装置は、コンベヤ３１にて搬送されてきた箱の種類を検出する撮像装置を備える。本実施の形態の撮像装置は、ハンド４に固定されたカメラ１５を含む。カメラ１５としては、３次元カメラ等の箱の種類を検出可能な任意のカメラを採用することができる。また、撮像装置は、制御装置２に配置された画像処理部４５を含む。画像処理部４５は、カメラ１５が撮像した画像を解析することにより、コンベヤ３１にて搬送されてきた箱の種類を判別する。
【００２５】
本実施の形態の積み付けパターン計算装置は、制御装置２を含む。制御装置２は、収容領域９１の内部に箱を配置する位置を算出する位置算出部４１を含む。位置算出部４１には、今回の作業にて積み付ける箱の種類およびそれぞれの種類の箱の個数を含む入力データ６１が入力される。入力データ６１には、それぞれの箱の形状や寸法が含まれる。制御装置２の記憶部４４は、入力データ６１を記憶する。画像処理部４５にて検出された箱の種類は、位置算出部４１に入力される。
【００２６】
位置算出部４１は、箱の組合せを計算して層を生成し、更に、収容領域に形成可能な箱の層を選定する組合せ計算部４２を含む。位置算出部４１は、組合せ計算部４２にて選定された層について、層が完成する第１の確率を算出し、ロボット１と収容領域９１との位置関係および第１の確率に基づいて、箱を配置する位置を決定する位置決定部４３を含む。
【００２７】
図３に、本実施の形態における組合せ計算部のブロック図を示す。組合せ計算部４２は、収容領域９１に形成される層を構成する箱の組合せを計算する層生成部５１を含む。本実施の形態の層は、後述するように、高さが一定であり、平面形状が長方形であり、更に収容領域９１に収容可能な箱の組合せである。
【００２８】
組合せ計算部４２は、予め定められた条件に基づいて、層生成部５１により生成した層から好ましい層を選定する層選定部５２を含む。また、組合せ計算部４２は、ロボット１が箱を搬送する場所を決定する搬送場所設定部５３を含む。更に、組合せ計算部４２は、箱を配置する場所がない場合に収容領域を分割する分割領域設定部５４を含む。
【００２９】
図４に、本実施の形態において説明に用いる箱の種類と収容領域の説明図を示す。本実施の形態においては、箱Ａとしての箱８１、箱Ｂとしての箱８２および箱Ｃとしての箱８３を収容領域９１の内部に配置する。収容領域９１は、例えばパレット３２の上面において、箱を積むことができる底面積および高さに基づいて設定される。箱Ａ、箱Ｂおよび箱Ｃは、直方体の形状を有する。本実施の形態において、箱Ａ、箱Ｂおよび箱Ｃの横幅および縦幅は互いに同一である。本実施の形態においては、高さが互いに異なる３種類の箱を例示して説明する。
【００３０】
図５に、本実施の形態における積み付けパターン計算装置の全体の制御の概要を説明するフローチャートを示す。ステップ１０１において、組合せ計算部４２の層生成部５１は、１つの層を構成する箱の組合せを算出する。本実施の形態においては、この制御を第１制御と称する。ステップ１０２において、組合せ計算部４２の層選定部５２は、新たな層を生成する場合に、所定の条件を満たさない層を除外する。例えば、収容領域に収まらずに収容領域から飛び出す層を除外する。本実施の形態においては、この制御を第２制御と称する。
【００３１】
次に、ステップ１０３において、撮像装置は、コンベヤ３１により搬送されてきた箱の種類を検出する。制御装置２の画像処理部４５は、箱の種類を位置算出部４１に送出する。
【００３２】
次に、ステップ１０４において、層選定部５２は、ステップ１０２において選定した層が完成する第２の確率を算出する。そして層選定部５２は、層が完成する第２の確率が低い層を除外する。本実施の形態においては、この制御を第３制御と称する。
【００３３】
次に、ステップ１０５において、組合せ計算部４２の搬送場所設定部５３は、コンベヤ３１にて搬送された箱を作成途中の層に置くか、現在の層の上に配置して新たな層を作成するか、または仮置き台３３に置くかを判別する。本実施の形態では、この制御を第４制御と称する。次に、ステップ１０６において、位置決定部４３は、箱を配置する位置を決定する。本実施の形態においては、この制御を第５制御と称する。
【００３４】
次に、ステップ１０７において、位置算出部４１は、決定した位置に箱を配置する動作指令を動作制御部２１に送出する。そして、動作制御部２１は、指令された位置に箱を搬送するようにロボット１およびハンド４を制御する。
【００３５】
ステップ１０８において、位置算出部４１は、全ての箱を積み上げたか否かを判別する。ステップ１０８において、コンベヤ３１にて搬送される箱が存在する場合や仮置き台３３に箱が配置されている場合には、ステップ１０２に戻って位置を決定する制御を繰り返す。ステップ１０８において、全ての箱を収容領域に積んだ場合には、この制御を終了する。
【００３６】
本実施の形態の積み付けパターン計算装置は、始めにステップ１０１を実施する。積み付けパターン計算装置は、搬送される箱を配置するごとにステップ１０２からステップ１０８までを実施する。次に、それぞれのステップにおける第１制御から第５制御を詳しく説明する。
【００３７】
図６に、本実施の形態の第１制御のフローチャートを示す。第１制御は、組合せ計算部４２の層生成部５１にて実施する。ステップ１１１において、層生成部５１は、箱の種類および個数を記憶部４４から読み込む。ステップ１１２において、層生成部５１は、箱の組合せの最小単位を算出する。ここでは、３個の箱Ａと、６個の箱Ｂと、３個の箱Ｃを収容領域９１に積み付ける場合を例示して説明する。
【００３８】
図７に、それぞれの高さごとに形成された最小単位を示す。箱の組合せの最小単位は、１個以上の箱を組合せて作成する。最小単位は、収容領域９１の内部に配置できる大きさである。また、最小単位は、高さが一定となる箱の組合せである。すなわち、最小単位は、上面が平面状になる箱の組合せである。さらに、最小単位は、底面積が最小となる箱の組合せである。
【００３９】
本実施の形態においては、複数の種類の箱Ａ、箱Ｂおよび箱Ｃは、横幅および縦幅が同一であるために、高さ方向に複数の箱を積み上げた箱の組合せが最小単位となる。例えば、高さが１５ｃｍの最小単位は１個存在し、高さが３０ｃｍの最小単位は２個存在し、高さが９０ｃｍの最小単位は４個存在する。
【００４０】
層生成部５１は、例えば全ての組合せを計算して、上記の条件を満たす組合せを選別することができる。なお、本実施の形態の最小単位は、高さ方向に並んでいる箱の種類ごとの個数が同一の場合には、１つの最小単位としている。例えば、高さが５５センチの最小単位について、箱Ｂの上側に箱Ｃが配置されている組合せと、箱Ｃの上に箱Ｂが配置されている組合せは区別せずに１つの最小単位としている。
【００４１】
図６を参照して、次に、ステップ１１３において、層生成部５１は、最小単位を水平方向に並べた配置パターンを生成する。層生成部５１は、高さが同じ最小単位を収容領域９１の内部に配置できるように並べる。すなわち、層生成部５１は、上面が平面状になるように配置パターンを生成する。また、層生成部５１は、箱の種類ごとの総数を超えない配置パターンを生成する。
【００４２】
次に、ステップ１１４において、層生成部５１は、ステップ１１３にて算出した配置パターンのうち、１つの配置パターンを選択する。ステップ１１５において、層生成部５１は、選択した配置パターンの平面形状が長方形か否かを判別する。層生成部５１は、選択した配置パターンの平面形状が長方形でない場合には、ステップ１１６に移行して選択している配置パターンを除外する。
【００４３】
ステップ１１５において、配置パターンの平面形状が長方形である場合には、ステップ１１７において、選択した配置パターンを１つの層として記憶部４４に記憶する。
【００４４】
次に、ステップ１１８において、層生成部５１は、全ての配置パターンを選択したか否かを判別する。ステップ１１８において、全ての配置パターンを選択した場合には、この制御を終了する。ステップ１１８において、全ての配置パターンを選択しておらずに、配置パターンが残っている場合には、ステップ１１４に戻る。そして、層生成部５１は、同様の制御を繰り返す。このように、第１制御において、層生成部５１は、最小単位を複数用いた配置パターンを計算して、箱の配置パターンの基準となる層（基準層）を生成する。
【００４５】
図８および図９に、最小単位を組合せることにより形成された層の例を示す。図８には、高さが３０ｃｍの層が示されている。図９には、高さが５５ｃｍの層が示されている。例えば図８の高さが３０ｃｍの層は、箱が１列の層、箱が２列の層および箱が３列の層を含む。図９の高さが５５ｃｍの層についても、箱が１列の層、箱が２列の層および箱が３列の層を含む。この他にも、高さが１５ｃｍ層、高さが４０ｃｍの層などの複数の種類の層が形成される。それぞれの層は、収容領域９１の内部に配置可能な大きさであり、それぞれの種類の箱について積み上げる箱の総数を超えていない。また、それぞれの層は、平面形状が長方形である。
【００４６】
なお、ステップ１１３において、最小単位を組み合わせて層を算出する時には、高さ方向の箱の種類の順序が異なる配置パターンも１つの層として算出する。例えば、図９の箱が一列の層では、箱Ｂの上に箱Ｃが配置されている層と、箱Ｃの上に箱Ｂが配置されている層とは、互いに異なる層として算出する。このように作成された全ての層は、記憶部４４に記憶される。
【００４７】
図１０に、層として算出されない箱の組合せの例を示す。層生成部５１は、例えば、最小単位を水平方向に並べた時に、高さが一定とならない組合せを除外する。すなわち、層生成部５１は、上面に段差が生じる組合せを除外する。更に、層生成部５１は、最小単位が離れて配置されて平面形状が長方形にならない組合せ、および収容領域９１の内部に配置できない組合せを除外する。本実施の形態では、最小単位を組み合わせて層を生成しているが、この形態に限られず、任意の制御により層を生成することができる。
【００４８】
図１１に、本実施の形態の第２制御のフローチャートを示す。第２制御において、層選定部５２は、層生成部５１が作成した層を選定する制御を実施する。ステップ１２１において、層選定部５２は、今回の箱を積む作業が、新たな層を生成する場合または後述する分割領域を設定した直後の場合か否かを判別する。例えば、収容領域９１に１個目の箱を配置する場合は、新たな層を生成する場合に相当する。また、作成途中の層の上に箱を配置する場合や、完成した層の上に箱を配置する場合は、新たな層を生成する場合に相当する。ステップ１２１において、新たな層を生成する場合または分割領域を設定した直後の場合に該当しない場合には、この制御を終了する。ステップ１２１において、新たな層を生成する場合または分割領域を設定した直後である場合には、ステップ１２２に移行する。
【００４９】
ステップ１２２において、層選定部５２は、第１制御で生成した層の配置パターンを読み込む。ステップ１２３において、層選定部５２は、１つ層の配置パターンを選択する。
【００５０】
ステップ１２４において、層選定部５２は、選択した層の配置パターンが収容領域９１の内部に配置できるか否かを判別する。すなわち、層選定部５２は、配置パターンが収容領域から飛び出さないか否かを判別する。ステップ１２４において、収容領域の内部に配置できない場合には、ステップ１２７にて選択されている層を除外する。例えば、完成した複数の層の上に新たな層を作成する場合に、新たな層が収容領域の上面を超える場合がある。この場合には、選択している層が除外される。ステップ１２４において、選択された層が収容領域の内部に配置できる場合には、ステップ１２５に移行する。
【００５１】
ステップ１２５において、層選定部５２は、新に生成する層（選択された層）の底面積が面積の判定値よりも大きいか否かを判別する。すなわち、新たに作成する層を平面視したときの面積が判定値よりも大きいか否かを判別する。ここでの判定値は、予め定めておくことができる。判定値は、例えば、収容領域９１の底面積に所定の割合を乗じた値を設定することができる。
【００５２】
本実施の形態においては、層の底面積が収容領域９１の底面積に近くなるように判定値を設定している。判定値としては、例えば収容領域９１の底面積の８０％を設定することができる。この場合に、図８および図９の例では、箱を３列に並べた層が残存する。または、判定値としては、収容領域９１の底面積の５０％を設定することができる。この場合には、箱を２列に並べた層および３列に並べた層が残存する。ステップ１２５の判断が否定される場合には、ステップ１２７に移行して、選択されている層が除外される。ステップ１２５の判断が肯定される場合には、ステップ１２６に移行する。
【００５３】
ステップ１２６において、層選定部５２は、平面視した時に、新たに作成する層（選択された層）に含まれる箱の重心位置が下の層の領域の内側にあるか否かを判別する。新たな層を作成する場合に、それぞれの箱の下側に土台となる箱が配置されていない場合がある。または、新たな層の一部が土台となる下側の層から飛び出す場合がある。ステップ１２６は、新たな層を安定した層にするために実行する。ステップ１２６において、１つの箱でも重心位置が下側の層の領域の内側にない場合には、ステップ１２７に移行する。ステップ１２７では、選択されている層が除外される。
【００５４】
ステップ１２６において、新たな層の全ての箱の重心位置が下側の層の内側にある場合には、ステップ１２８に移行する。ステップ１２８においては、選択している層を第２制御にて選定された層として記憶部４４に記憶する。なお、ステップ１２６において、収容領域に一番下側の１層目の層を生成する場合には、新たな層の全ての箱の重心位置が下側の層の内側にあると判断される。
【００５５】
次に、ステップ１２９においては、第１制御にて生成された全ての層を選択したか否かを判別する。ステップ１２９の判断が否定される場合には、ステップ１２３に戻り、次の層を選定して、同様の制御を実施する。ステップ１２９において、全ての層を選択した場合にはこの制御を終了する。記憶部４４には、第２制御にて選定された層の配置パターンが記憶されている。
【００５６】
図１２に、本実施の形態の第３制御のフローチャートを示す。層選定部５２は、第３制御において、それぞれの層が完成する確率を算出し、完成する確率の低い層を除外する。
【００５７】
ステップ１３１において、層選定部５２は、第２制御にて選定した層の配置パターンを読み込む。ステップ１３２において、層選定部５２は、１つの層を選択する。ステップ１３３において、層選定部５２は、選択された層が完成する第２の確率を計算する。
【００５８】
図１３に、第３制御において第２の確率の算出方法を説明するための現在の状態の説明図を示す。図１３に示す例では、収容領域９１の内部に１つの箱Ａが配置されている。そして、コンベヤ３１にて箱Ｂが搬送されている。この時に、残っている箱は、２個の箱Ａと、５個の箱Ｂと、３個の箱Ｃである。すなわち、合計１０個の箱がコンベヤ３１にて搬送されずに残存している。
【００５９】
図１４に、第２制御にて選択された層の配置パターンを示す。ここでの例では、第２制御のステップ１２５（図１１参照）にて、３列の層のみが残存している。例えば、層選定部５２は、図８に示した高さが３０ｃｍの層の中から、左端に箱Ａが配置される層を選択する。層選定部５２は、第１配置パターンから第４配置パターンを選定している。層選定部５２は、収容領域９１に配置されていない残りの箱の種類毎の個数を取得する。層選定部５２は、今回の作業において配置する箱の種類と、残りの箱の種類ごとの個数に基づいて、それぞれの層が完成する確率（第２の確率）を算出する。
【００６０】
この時の確率は、今回の作業において配置する箱を収容領域９１に配置した後に、層が完成するために必要な箱が連続して搬送されてくる確率である。例えば、第１配置パターンの層の場合には、コンベヤ３１にて箱Ｂが搬送されている。このために、残存する箱のうち、３つの箱Ｂが連続して搬送される必要がある。このときの確率は、（5Ｃ3）／（10Ｃ3）となる。すなわち、確率は（１０通り）／（１２０通り）＝８％である。第２配置パターンから第４配置パターンにおいても、同様の方法により確率を算出することができる。
【００６１】
なお、仮置き台３３に箱が一時的に配置されている場合には、仮置き台３３に配置されている箱と、コンベヤ３１にて搬送されてきた箱から層が完成する確率を算出することができる。また、作成途中の層の上に新たな層を形成する場合には、作成途中の層か完成したと仮定する。そして、完成した層の上に搬送された箱を配置した時に、新たな層が完成する確率を算出する。この場合に、複数個の作成途中の層の候補がある場合には、全ての候補に関して新たな層が完成する確率を算出する。
【００６２】
図１２を参照して、次に、ステップ１３４において、層選定部５２は、選択した層について、算出した確率が予め定められた判定値よりも大きいか否かを判別する。この判定値は、作業者が予め設定することができる。ステップ１３４において、算出した確率が予め定められた判定値以下である場合には、ステップ１３５に移行する。ステップ１３５においては、選択している層を除外する。すなわち、選択している層が候補から除外される。図１４を参照して、例えば、第２の確率の判定値を５％に設定した場合には、第４配置パターンの層が除外される。
【００６３】
図１２を参照して、ステップ１３４において、算出した確率が判定値よりも大きい場合には、ステップ１３６に移行する。ステップ１３６において、記憶部４４は第３制御にて選択している層の配置パターンを記憶する。
【００６４】
次に、ステップ１３７において、層選定部５２は、全ての層の配置パターンを選択したか否かを判別する。ステップ１３７において、全ての層を選択していない場合には、ステップ１３２に戻って、同様の制御を繰り返す。ステップ１３７において、全ての層を選択している場合には、この制御を終了する。記憶部４４には、第３制御にて選択した層の配置パターンが記憶されている。
【００６５】
このように、本実施の形態では、層の配置パターンについて層が完成する確率を計算する。そして、確率は低い層は候補から除外される。このように、層選定部５２は、層の候補を絞り込む作業を実施する。この制御により、層が完成する確率が高い位置に箱を配置することができる。この結果、収容領域に多くの箱を配置したり、収容領域に全ての箱が配置できないことを抑制したりできる。
【００６６】
図１５に、本実施の形態における第４制御のフローチャートを示す。第４制御では、搬送場所設定部５３が、箱を搬送する場所を決定する。
【００６７】
ステップ１４１において、搬送場所設定部５３は、第３制御にて選定した層を読み込む。次に、ステップ１４２において、搬送場所設定部５３は、新たに配置する箱が、選定した層の配置パターンに１個以上含まれるか否かを判別する。複数個の層が残存する場合には、搬送場所設定部５３は、高さが低いものから順番に今回の作業において配置する箱が１個以上含まれるか否かを判別する。ステップ１４２において、今回の作業において配置する箱が選定した層の配置パターンに１個以上を含まれる場合には、ステップ１４３に移行する。
【００６８】
ステップ１４３において、搬送場所設定部５３は、作成途中の層が存在するか否かを判別する。例えば、１つの層が完成している場合には、作成途中の層が存在しない場合がある。また、分割領域を設定した場合には、作成途中の層が存在しない場合がある。ステップ１４３において、作成途中の層が存在する場合には、ステップ１４４に移行する。そして、ステップ１４４において、搬送場所設定部５３は、作成途中の層に箱を配置することを決定する。箱を配置する位置については、次の第５制御にて決定する。
【００６９】
ステップ１４３において、作成途中の層が存在しない場合には、ステップ１４５に移行する。ステップ１４５において、搬送場所設定部５３は、新たな層を作成することを決定する。新たな層における箱の位置については、次の第５制御で決定する。
【００７０】
ステップ１４２において、今回の作業において配置する箱が第３制御にて選定した層の配置パターンに含まれない場合には、ステップ１４６に移行する。ステップ１４６においては、作成途中の層が存在するか否かを判別する。ステップ１４６において、作成途中の層が存在しない場合には、ステップ１４８に移行する。ステップ１４８において、搬送場所設定部５３は、仮置き台３３に箱を配置することを決定する。
【００７１】
ステップ１４６において、作成途中の層が存在する場合には、ステップ１４７に移行する。ステップ１４７において、作成途中の層の上に新たな層を作成するか否かを判別する。ここでの制御は、現在作成している層が完成したと仮定して、完成した層の上に今回の作業において配置する箱を配置した時に新たな層が完成する確率を求める。コンベヤにより搬送された箱の種類と、現在作成している層が完成した後の箱の種類ごとの個数に基づいて、第２制御および第３制御を実施する。このように、現在の層が完成した場合に、新たな層が完成する第２の確率が算出される。算出した確率が予め定められた判定値よりも大きくなる層がある場合には、ステップ１４５に移行する。すなわち、搬送場所設定部５３は、作成途中の層の上に新たな層を作成することを決定する。搬送場所設定部５３は、算出した確率が予め定められた判定値よりも大きくなる層がない場合にはステップ１４８に移行して、仮置き台３３に箱を配置することを決定する。このように、搬送場所設定部５３は、搬送されてきた箱を配置する場所を設定する。
【００７２】
図１６に、本実施の形態における第５制御のフローチャートを示す。第４制御までの制御により、形成することが好ましい層が選定されている。または、仮置き台３３に箱を配置することが決定されている。第５制御では、位置決定部４３は、層選定部５２にて選定された層に基づいて、最終的に箱を配置する位置を決定する。
【００７３】
ステップ１５１において、位置決定部４３は、第４制御において箱を仮置き台３３に配置することが決定されているか否かを判別する。搬送された箱を仮置き台３３に配置することが決定している場合には、この制御を終了する。第４制御において、作成途中の層に配置することが決定している場合または新たな層を作成することを決定している場合には、ステップ１５２に移行する。
【００７４】
ステップ１５２において、位置決定部４３は、第３制御で生成した層の配置パターンを読み込む。ステップ１５３において、位置決定部４３は、それぞれの層について箱を配置する位置を特定する。すなわち、今回の作業にて配置する箱の位置の候補を算出する。
【００７５】
図１７に、第５制御を説明するための現在のシステムの状態の説明図を示す。この状態では、収容領域９１に１個の箱Ｂが配置されている。コンベヤ３１により箱Ｂが搬送されている。そして、残っている箱は、３個の箱Ａと、４個の箱Ｂと、３個の箱Ｃである。すなわち、１０個の箱がコンベヤにて搬送されずに残存している。
【００７６】
図１８に、層選定部により選定された層の配置パターンの斜視図を示す。この例では、第１配置パターンから第４配置パターンが選定されている。図１９に、コンベヤにて搬送された箱を配置することができる位置の候補の説明図を示す。この例では、第１候補の位置から第５候補の位置が特定されている。位置決定部４３は、第１配置パターンから第４配置パターンについて、箱の位置の候補を算出する。それぞれの候補は、第１配置パターンから第４配置パターンにおける箱Ｂの位置に相当する。
【００７７】
図１６を参照して、ステップ１５４において、位置決定部４３は、箱を配置することができない位置を除外する。図１９を参照して、第４候補および第５候補では、土台となる箱が存在していないために、箱Ｂを配置することが不可能である。位置決定部４３は、第４候補および第５候補を除外して、第１候補から第３候補を残す。このように、位置決定部４３は、収容領域の内部に積まれている箱の状態に基づいて、箱を配置することが不可能な位置を除外する。
【００７８】
次に、ステップ１５５において、位置決定部４３は、箱を配置する１つの位置の候補を選択する。ステップ１５６において、位置決定部４３は、選択した位置に箱を配置した場合に、ロボット１に近くなるほど、積まれた箱の高さが低くなっているか否かを判別する。
【００７９】
図１７に示す様に、ロボット１は収容領域９１の右側に配置されている。図１９に示す第１候補および第２候補では、ロボットに近くなるほど箱の高さが低くなっている。これに対して第３候補では、箱Ｂが収容領域９１の幅方向の両側の端部に配置されている。幅方向の真中に凹む部分が形成される。このために、ロボット１に近くなるほど箱の高さが高くなる部分が存在する。例えば、位置決定部４３は、幅方向に互いに隣り合う２個の箱を選定した時に、ロボット１から遠い箱の高さよりも近い箱の高さが高くなっている部分が存在するか否かを判別する。位置決定部４３は、第３候補ではロボット１に近くなるほど箱が高くなっている部分が存在すると判別する。
【００８０】
ステップ１５６において、ロボット１に近くなるほど箱が高くなっている部分が存在する場合には、ステップ１５８に移行する。ステップ１５８において、記憶部４４は、選択している箱の位置の候補を除外した後に、除外した層を一時的に記憶する。例えば、図１９の第３候補を選択している場合には、第３候補を除外して、記憶部４４に一時的に記憶する。
【００８１】
ロボット１に近い領域の箱が高いと、ロボットを駆動する時に、高い部分を回避する動作が必要になる。すなわち、ロボットは、高い部分を乗り越えた奥の位置に箱を配置する必要がある。このために、ロボットの制御が複雑になったり時間がかかったりする。本実施の形態では、ロボット１に近い部分よりも遠い部分に優先的に箱を配置する制御を実施している。この制御を実施することにより、ロボット１の作業時間を低減したり、ロボットの制御が容易になったりする箱の位置を選定することができる。
【００８２】
選択している位置の候補について、ステップ１５６の判別が肯定される場合には、ステップ１５７に移行する。ステップ１５７において、位置決定部４３は、箱を配置する位置および残存する箱の種類ごとの個数に基づいて、層が完成する第１の確率を計算する。
【００８３】
図２０に、第１候補の位置に箱を配置した場合に、層が完成する確率を説明する概略図を示す。第１候補の位置に箱を配置した場合に生成される層は、図１８に示される配置パターンのうち、第１配置パターンおよび第２配置パターンである。
【００８４】
第１の確率の計算では、前述の第２の確率の計算と同様に、それぞれの配置パターンについて、層を完成するために必要な箱が連続して搬送される確率を算出する。たとえば、第１配置パターンにおいて、位置決定部４３は、残っている箱が１０個に対して、２個の箱Ａが連続して搬送される確率を算出する。この確率は、（3Ｃ2）／（10Ｃ2）により算出することができて、６．６％になる。第２配置パターンについては、確率が１５％になる。このために、第１候補の位置に箱Ｂを配置した時に、層が完成する第１の確率は、６．６％＋１５％＝２１．６％となる。
【００８５】
図２１に、第２候補の位置に箱を配置した場合に、層が完成する確率を説明する概略図を示す。第２候補の箱の位置にて生成できる層は、図１８に示される配置パターンのうち、第４配置パターンおよび第２配置パターンである。そして、第４配置パターンの層が完成する確率は、４０％になる。第２配置パターンが完成する確率は１５％になる。このために、第２候補の位置に箱Ｂを配置した場合に、層が完成する第１の確率は、４０％＋１５％＝５５％になる。このように、位置決定部４３は、残存する箱の種類と個数とに基づいて、今回の作業にて配置する箱を所定の位置に配置したときに、層が完成する第２の確率を算出することができる。
【００８６】
図１６を参照して、次に、ステップ１５９において、位置決定部４３は、全ての箱を配置する位置の候補を選択したか否かを判別する。箱の位置の候補が残存する場合には、ステップ１５５に戻って箱を配置する位置の候補を選択して、同様の制御を実施する。ステップ１５９において、全ての位置の候補を選択した場合には、ステップ１６０に移行する。
【００８７】
次に、ステップ１６０においては、位置決定部４３は、箱の位置の候補が残っているか否かを判別する。ステップ１６０において、箱の位置の候補が残っている場合には、ステップ１６１に移行する。ステップ１６１において、位置決定部４３は、層を完成する第１の確率が最も高い箱の位置を選定する。一方で、ステップ１６０において、箱の位置の候補が残っていない場合がある。たとえば、ステップ１５８の判別において、全ての箱の位置の候補が除外された場合には、箱の位置の候補が残存していない。この場合には、制御はステップ１６２に移行する。
【００８８】
ステップ１６２においては、ステップ１５８において一時的に記憶した箱の位置の候補のそれぞれについて、層を完成する第１の確率を計算する。第１の確率は、ステップ１５７と同様の方法により算出される。この後に、制御はステップ１６１に移行する。ステップ１６１において、位置決定部４３は、層を完成する第１の確率が最も高い箱の位置を選定する。
【００８９】
ステップ１６１において、層を完成する第１の確率が最も高い箱の位置を選定する制御を実施することにより、層が完成する確率の高い位置に箱を配置することができる。この結果、収容領域に多くの箱を配置したり、収容領域に全ての箱が配置できないことを抑制したりできる。このように、位置決定部４３は、箱を配置する位置を選定することができる。そして、ロボット１は、選定した位置に箱を搬送することができる。
【００９０】
図５を参照して、本実施の形態の第１制御は、始めに１回実行すれば良い。そして、コンベヤにて箱が搬送されてくる度に、第２制御から第５制御を実施することができる。第２制御から第５制御を繰り返すことにより、全ての箱について位置を個別に定めることができる。
【００９１】
本実施の形態の積み付けパターン計算装置は、箱を水平方向に配置した層を作成し、作成した層を収容領域の高さ方向に積むことにより積み付けパターンを計算する。本実施の形態の積み付けパターン計算装置は、水平方向に延びる層を始めに算出するために、収容領域の水平方向に多くの箱を配置することができる。このために、それぞれの層の底面積が大きくなり、収容領域に箱を配置した時に安定性が高くなる。
【００９２】
ところで、図１５を参照して、ステップ１４８において、搬送されてきた箱を仮置き台３３に配置することを決定する場合がある。ところが、仮置き台３３に多くの箱が配置されているために、箱を仮置き台３３に配置することができない場合がある。または、積み付けシステムが仮置き台３３を備えていない場合がある。この場合には、収容領域９１を分割する第６制御を実施する。
【００９３】
図２２に、本実施の形態における第６制御のフローチャートを示す。本実施の形態では、組合せ計算部４２の分割領域設定部５４が第６制御を実施する。
【００９４】
ステップ１７１において、分割領域設定部５４は、作成途中の層の範囲を算出する。ステップ１７２において、分割領域設定部５４は、分割する位置を算出する。そして、ステップ１７３において、分割領域設定部５４は、算出した位置にて領域を分割する。
【００９５】
図２３に、第６制御を説明するための現在の状態の概略図を示す。収容領域９１には、複数の箱Ｂおよび複数の箱Ａが積まれている。ここに、コンベヤ３１にて箱Ｃが搬送された状態を例に取りあげて説明する。分割領域設定部５４は、高さ方向の所定の位置にて区切られた範囲Ａにて、１つの層が完成していることを検出する。分割領域設定部５４は、範囲Ｂが作成途中の層であることを検出する。そして、分割領域設定部５４は、範囲Ｂに積まれている箱の配置パターンに基づいて、分割する位置を設定する。
【００９６】
図２４に、領域の分割の位置を説明する収容領域の概略図を示す。分割領域設定部５４は、作成途中の層を出来るだけ完成できるような位置を選択する。例えば、上面の高さが異なる部分が作成途中の層に相当する。図２４に示す例では、範囲Ｂにおいて１番左側の列と真中の列とが作成途中の層に相当する。分割領域設定部５４は、作成途中の領域の内部で領域を区切らずに、作成途中の層の外側で領域を分割する。また、分割領域設定部５４は、分割した後に作成途中の層が完成するために必要である底面積が最も小さくなるように分割する。図２４に示す例では、分割領域設定部５４は、収容領域９１を分割して領域Ａと領域Ｂとを生成している。
【００９７】
なお、作成途中の層が存在しない場合には、第１制御にて算出した層のうち、コンベヤにて搬送されてきた箱を含む最も底面積が小さな層を作成する領域と、それ以外の領域とに分割することができる。また、分割領域設定部５４は、以前に分割された領域を更に分割しても構わない。このように、分割領域設定部５４は、収容領域を分割することにより分割領域を設定することができる。
【００９８】
図２２を参照して、ステップ１７４において、分割領域設定部５４は、分割された領域ごとに層を構成する箱の配置パターンを計算する。すなわち、位置算出部４１は、分割領域ごとに第２制御から第５制御を繰り返して、配置する箱の位置を決定する。領域を分割した場合には、分割した領域ごとの最終的な箱の高さは互いに異なっていても構わない。
【００９９】
本実施の形態の複数の種類の物品は、横幅および縦幅が互いに同一であるが、この形態に限られず、縦幅と横幅が互いに異なる複数の物品を含む場合にも、本発明を適用することができる。
【０１００】
上述のそれぞれの制御においては、機能および作用が変更されない範囲において適宜ステップの順序を変更することができる。
【０１０１】
上記の実施の形態は、適宜組合せることができる。上述のそれぞれの図において、同一または相等する部分には同一の符号を付している。なお、上記の実施の形態は例示であり発明を限定するものではない。また、実施の形態においては、特許請求の範囲に示される実施の形態の変更が含まれている。
【符号の説明】
【０１０２】
１    ロボット
２    制御装置
１５    カメラ
３１    コンベヤ
３２    パレット
３３    仮置き台
４１    位置算出部
４２    組合せ計算部
４３    位置決定部
４４    記憶部
４５    画像処理部
５１    層生成部
５２    層選定部
５３    搬送場所設定部
５４    分割領域設定部
６１    入力データ
８１，８２，８３    箱
９１    収容領域
【図１】
0006267175.tif 000002
【図２】
0006267175.tif 000003
【図３】
0006267175.tif 000004
【図４】
0006267175.tif 000005
【図５】
0006267175.tif 000006
【図６】
0006267175.tif 000007
【図７】
0006267175.tif 000008
【図８】
0006267175.tif 000009
【図９】
0006267175.tif 000010
【図１０】
0006267175.tif 000011
【図１１】
0006267175.tif 000012
【図１２】
0006267175.tif 000013
【図１３】
0006267175.tif 000014
【図１４】
0006267175.tif 000015
【図１５】
0006267175.tif 000016
【図１６】
0006267175.tif 000017
【図１７】
0006267175.tif 000018
【図１８】
0006267175.tif 000019
【図１９】
0006267175.tif 000020
【図２０】
0006267175.tif 000021
【図２１】
0006267175.tif 000022
【図２２】
0006267175.tif 000023
【図２３】
0006267175.tif 000024
【図２４】
0006267175.tif 000025