(57)【特許請求の範囲】
【請求項１】
外周に凹部が形成された第１の物品に対して、前記第１の物品と同一形状に形成された第２の物品を、前記第１の物品の前記凹部に一部が進入した状態で配置されるように平行移動して配置する第１の配置手段と、
前記第２の物品が前記第１の物品の前記凹部に一部が進入した状態になるように平行移動した方向である第１の方向に沿って、前記第２の物品が前記第１の物品に対して平行移動した距離と、前記第１の方向に直交する第１の直交方向に対する前記第１の物品の一端と前記第１の物品の他端との距離と、に基づいて、第１の面積を算出する第１の面積の算出手段と、
前記第２の物品を、前記第１の物品の前記凹部に一部が非進入の状態となるように、前記第１の物品に対して、平行移動して配置する第２の配置手段と、
前記第２の物品が前記第１の物品の前記凹部に非進入の状態となるように平行移動した方向である第２の方向に沿って、前記第２の物品が前記第１の物品に対して平行移動した距離と、前記第２の方向に直交する第２の直交方向に対する前記第１の物品の一端と前記第１の物品の他端との距離とに基づいて、第２の面積を算出する第２の面積の算出手段と、
前記第２の面積に比べて、前記第１の面積の方が狭い場合に、前記第１の方向を物品の配列方向として決定する配列方向の決定手段と、
を備えたことを特徴とする物品の配列装置。
【請求項２】
前記第１の物品に対して前記第２の物品を平行移動させる際に、前記第１の物品と前記第２の物品との間の隙間のうち最も狭い隙間が予め設定された間隔以上となるように、前記第１の物品と前記第２の物品とを配置する前記第１の配置手段および前記第２の配置手段、
を備えたことを特徴とする請求項１に記載の物品の配列装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、物品の配列装置に関する。
【背景技術】
【０００２】
従来より、機械製品等を構成する部品を製造する場合に、板材等の素材から部品を切り出す板取りが行われている。そして、素材に対して板取りされる部品が占有する割合、いわゆる、歩留まりを向上させるために、設計時に素材になるべく多くの部品を詰めて配置する、いわゆる、ネスティングが行われている。このようなネスティングを自動で行う技術として、下記の特許文献１に記載の技術が知られている。
【０００３】
特許文献１としての特開平１０−２８９０１０号公報には、長方形状の素材（ｗ０）に対して、形状や、大きさ、向きが別々の複数の製品で構成された製品群（ｗ１）の配置位置を自動的に決定する自動ネスティング装置の構成が記載されている。特許文献１の技術では、素材（ｗ０）の大きさに応じた領域に対して、右端から左に向けて、製品群（ｗ１）を詰めて配置して、右端から左に向けて製品群（ｗ１）が検出されなくなる位置を検出して、検出された位置と右端との間の領域を、製品群（ｗ１）の全てが配置可能な最小の領域として設定している。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開平１０−２８９０１０号公報（「０００９」〜「００１７」、図１〜図６）
【発明の概要】
【発明が解決しようとする課題】
【０００５】
本発明は、複数の同一形状の物品を効率的に配列することを技術的課題とする。
【課題を解決するための手段】
【０００６】
前記技術的課題を解決するために、請求項１に記載の発明の物品の配列装置は、
外周に凹部が形成された第１の物品に対して、前記第１の物品と同一形状に形成された第２の物品を、前記第１の物品の前記凹部に一部が進入した状態で配置されるように平行移動して配置する第１の配置手段と、
前記第２の物品が前記第１の物品の前記凹部に一部が進入した状態になるように平行移動した方向である第１の方向に沿って、前記第２の物品が前記第１の物品に対して平行移動した距離と、前記第１の方向に直交する第１の直交方向に対する前記第１の物品の一端と前記第１の物品の他端との距離と、に基づいて、第１の面積を算出する第１の面積の算出手段と、
前記第２の物品を、前記第１の物品の前記凹部に一部が非進入の状態となるように、前記第１の物品に対して、平行移動して配置する第２の配置手段と、
前記第２の物品が前記第１の物品の前記凹部に非進入の状態となるように平行移動した方向である第２の方向に沿って、前記第２の物品が前記第１の物品に対して平行移動した距離と、前記第２の方向に直交する第２の直交方向に対する前記第１の物品の一端と前記第１の物品の他端との距離とに基づいて、第２の面積を算出する第２の面積の算出手段と、
前記第２の面積に比べて、前記第１の面積の方が狭い場合に、前記第１の方向を物品の配列方向として決定する配列方向の決定手段と、
を備えたことを特徴とする。
【０００７】
請求項２に記載の発明は、請求項１に記載の物品の配列装置において、
前記第１の物品に対して前記第２の物品を平行移動させる際に、前記第１の物品と前記第２の物品との間の隙間のうち最も狭い隙間が予め設定された間隔以上となるように、前記第１の物品と前記第２の物品とを配置する前記第１の配置手段および前記第２の配置手段、
を備えたことを特徴とする。
【発明の効果】
【０００８】
請求項１に記載の発明によれば、第２の面積よりも第１の面積の方が狭い場合に第１の方向に沿って物品を配列しない構成に比べて、複数の同一形状の物品を効率的に配列することができる。
請求項２に記載の発明によれば、第１の物品と第２の物品との間の隙間のうち最も狭い隙間が予め設定された間隔以上にならない構成に比べて、第１の物品および第２の物品が設計通りに形成されないことを低減できる。
【図面の簡単な説明】
【０００９】
【図１】図１は本発明の実施例１の設計支援システムの全体説明図である。
【図２】図２は実施例１のクライアントパソコンの制御部が備えている機能をブロック図で示した図である。
【図３】図３は実施例１の仮想平面上に配置された第１の物品の画像の説明図である。
【図４】図４は実施例１の第２の移動方向に平行移動した第１の物品の状態説明図である。
【図５】図５は実施例１の第１の物品に形成された各角から他の角に向けて延びるベクトルを示す説明図である。
【図６】図６は実施例１の第１の物品に形成された各角に「凸」または「凹」が設定された状態の説明図である。
【図７】図７は実施例１の第１の移動方向に平行移動した第１の物品の状態説明図である。
【図８】図８は実施例１の通知画面の説明図である。
【図９】図９は実施例１の配列支援プログラムの配列処理のフローチャートである。
【図１０】図１０は従来構成の配列処理で配列された製品の配列図である。
【図１１】図１１は実施例１の配列処理で配列された第１の物品の配列図であり、図１１Ａは最小面積に応じた配列方向に沿って配列された第１の物品の配列図、図１１ＢはＸ軸方向に沿って配列された第１の物品の配列図である。
【図１２】図１２は実施例１の配列処理で配列された図１１の第１の物品とは異なる第１の物品の配列図であり、図１２Ａは第１の移動方向に沿って配列された第１の物品の配列図、図１２Ｂは最小面積に応じたＸ軸方向に沿って配列された第１の物品の配列図である。
【発明を実施するための形態】
【００１０】
次に図面を参照しながら、本発明の実施の形態の具体例（以下、実施例と記載する）を説明するが、本発明は以下の実施例に限定されるものではない。
なお、以後の説明の理解を容易にするために、図面において、前後方向をＸ軸方向、左右方向をＹ軸方向、上下方向をＺ軸方向とし、矢印Ｘ，−Ｘ，Ｙ，−Ｙ，Ｚ，−Ｚで示す方向または示す側をそれぞれ、前方、後方、右方、左方、上方、下方、または、前側、後側、右側、左側、上側、下側とする。
また、図中、「○」の中に「・」が記載されたものは紙面の裏から表に向かう矢印を意味し、「○」の中に「×」が記載されたものは紙面の表から裏に向かう矢印を意味するものとする。
なお、以下の図面を使用した説明において、理解の容易のために説明に必要な部材以外の図示は適宜省略されている。
【実施例１】
【００１１】
図１は本発明の実施例１の配列支援システムの全体説明図である。
図１において、配列支援システムＳは、物品の配列装置の一例としてのクライアントパソコンＰＣを有する。クライアントパソコンＰＣは、物品の配列図の作成装置の機能を有する。なお、実施例１のクライアントパソコンＰＣは、電子計算機の一例としてのコンピュータ装置により構成されている。
【００１２】
実施例１のクライアントパソコンＰＣは、計算機本体の一例としてのコンピュータ本体Ｈ１を有する。コンピュータ本体Ｈ１には、表示装置の一例としてのディスプレイＨ２が接続されている。また、コンピュータ本体Ｈ１には、入力装置の一例としてのキーボードＨ３およびマウスＨ４が接続されている。コンピュータ本体Ｈ１は、図示しない記憶装置の一例としてのＨＤドライブ、すなわち、ハードディスクドライブや、記憶媒体の読取装置の一例としてのＣＤドライブ、すなわち、コンパクトディスクドライブ等を有する。
【００１３】
（実施例１の制御部の説明）
図２は実施例１のクライアントパソコンの制御部が備えている機能をブロック図で示した図である。
（クライアントパソコンＰＣの制御部の説明）
図２において、クライアントパソコンＰＣのコンピュータ本体Ｈ１は、Ｉ／Ｏ、すなわち、入出力インターフェースを有する。入出力インターフェースは、外部との信号の入出力および入出力信号レベルの調節等を行う。また、コンピュータ本体Ｈ１は、ＲＯＭ、すなわち、Read Only Memory：リードオンリーメモリーを有する。リードオンリーメモリーには、必要な処理を行うためのプログラムおよびデータ等が記憶される。
【００１４】
また、コンピュータ本体Ｈ１は、ＲＡＭ、すなわち、Random Access Memory：ランダムアクセスメモリを有する。ランダムアクセスメモリは、必要なデータを一時的に記憶する。また、コンピュータ本体Ｈ１は、ＣＰＵ、すなわち、Central Processing Unit：中央演算処理装置を有する。中央演算処理装置は、ハードディスク等に記憶されたプログラムに応じた処理を行う。また、コンピュータ本体Ｈ１は、クロック発振器等も有する。
【００１５】
クライアントパソコンＰＣは、ハードディスクやＲＯＭ等に記憶されたプログラムを実行することにより種々の機能を実現することができる。
クライアントパソコンＰＣのハードディスクには、基本ソフトウェアとしてのオペレーティングシステムＯＳが記憶されている。オペレーティングシステムＯＳは、コンピュータ装置の基本動作を制御する。
【００１６】
また、クライアントパソコンＰＣのハードディスクには、物品の配置プログラムの一例としての配列支援プログラムＡＰ１が記憶されている。配列支援プログラムＡＰ１は、物品の配列処理を行う。
また、クライアントパソコンＰＣのハードディスクには、図示しない文書作成用ソフトウェアとしてのワープロソフトウェアや、電子メール送受信用ソフトウェア等のアプリケーションプログラム等が記憶されている。
以下、従来公知のオペレーティングシステムＯＳや図示しないアプリケーションプログラムを除く配列支援プログラムＡＰ１の各機能（制御手段）を説明する。
【００１７】
（配列支援プログラムＡＰ１）
なお、以下の図面において、第１の物品の形状は各図面の説明内容に応じて異なっており、必ずしも形状は一致していない。
図３は実施例１の仮想平面上に配置された第１の物品の画像の説明図である。
Ｃ１：形状情報の記憶手段
形状情報の記憶手段Ｃ１は、第１の物品の形状に関する形状情報を記憶する。実施例１の形状情報の記憶手段Ｃ１は、第１の物品の形状パターンに関連する形状情報をパターン毎に記憶する。実施例１では、第１の物品の一例としての対象物品１の形状パターンに対応する形状情報として、対象物品１に形成された角の位置や、各角どうしの距離を記憶する。具体的には、実施例１の形状パターンの一例として、対象物品１に関連付けられた形状情報として、対象物品１が有する角、各角どうしの距離および対象物品１の外周に閉じられた領域が記憶されている。
【００１８】
Ｃ２：識別番号の設定手段
識別番号の設定手段Ｃ２は、第１の物品の各角に識別番号を設定する。実施例１の識別番号の設定手段Ｃ２では、図３に示すように、仮想平面上に配置された対象物品１の画像に形成された角のうち、外周上の１点を、ランダムに選出して、角Ａ１と識別番号を設定する。そして、対象物品１の各角に対して、角Ａ１から時計回りの順に、角Ａ２、角Ａ３、…、角Ａα−１、角Ａαを設定する。なお、実施例１では、角Ａ１を設定した角を、対象物品１に形成された凹部１ａを検出する際に、検出を開始する対象物品１上の始点Ａ１として設定する。
【００１９】
図４は実施例１の第２の移動方向に平行移動した第１の物品の状態説明図である。
Ｃ３：第２の配置手段
第２の配置手段Ｃ３は、第１の物品と同一形状に形成された第２の物品が第１の物品の凹部に非進入の状態となるように予め設定された第２の方向に沿って、第１の物品を平行移動させて、予め設定された位置に第１の物品を配置させる。実施例１の第２の配置手段Ｃ３では、図４に示すように、第２の方向の一例であって、第２の移動方向の一例としてのＸ，Ｙ軸方向に沿って、＋Ｘ軸方向、且つ、＋Ｙ軸方向側に、対象物品１を平行移動させて、第２の物品の一例としての隣接物品３１，４１を配置する。なお、実施例１では、対象物品１の一部に、隣接物品３１，４１の一部が重ならなくなるまで、Ｘ，Ｙ軸方向に沿って、対象物品１を平行移動させる。
【００２０】
また、実施例１の構成では、基材から対象物品１や隣接物品３１，４１を型抜く型抜き動作に備えて、十分な余裕、いわゆる、マージンを持って、対象物品１と隣接物品３１，４１との間に予め設定された間隔の隙間に応じて、対象物品１が更に移動される。また、実施例１では、＋Ｘ軸方向、且つ、＋Ｙ軸方向側に、対象物品１を平行移動させたが、これに限定されない。例えば、設計や仕様に応じて、−Ｘ軸方向、且つ、＋Ｙ軸方向側等、＋Ｘ軸方向、且つ、＋Ｙ軸方向側以外の方向に、対象物品１を平行移動させる構成も可能である。
【００２１】
Ｃ４：第２の面積の演算手段
第２の面積の算出手段の一例としての第２の面積の演算手段Ｃ４は、第１の物品と第２の物品との間の面積を第２の面積として演算する。実施例１の第２の面積の演算手段Ｃ４は、対象物品１と、前記第２の配置手段Ｃ３に基づいて第２の移動方向に平行移動した隣接物品３１，４１との間の面積を第２の面積として演算する。
【００２２】
具体的には、図４に示すように、対象物品１の角Ａ１と隣接物品３１の角Ａ１との間の距離に対応する移動距離Ｌ３ａと、対象物品１におけるＹ軸方向の対象物品１の最大幅Ｌ３ｂとを算出し、移動距離Ｌ３ａと対象物品１の最大幅Ｌ３ｂとを掛け合せた領域の面積としての面積Ｅｘを第２の面積として演算する。また、角Ａ１と隣接物品４１の角Ａ１との間の距離に対応する移動距離Ｌ４ａと、対象物品１におけるＸ軸方向の対象物品１の最大幅Ｌ４ｂとを掛け合せた面積Ｅｙも第２の面積として演算する。
【００２３】
Ｃ５：凹部の検出手段
凹部の検出手段Ｃ５は、角間のベクトル演算手段Ｃ５Ａ、内積の演算手段Ｃ５Ｂ、内積値の判別手段Ｃ５Ｃ、および、凹凸の設定手段Ｃ５Ｄを有しており、第１の物品に形成された凹部を検出する。実施例１の凹部の検出手段Ｃ５は、前記形状情報の記憶手段Ｃ１に記憶された形状情報に基づいて、対象物品１に形成された角のうち、凹部１ａの一部を形成する角を検出する。
【００２４】
図５は実施例１の第１の物品に形成された各角から他の角に向けて延びるベクトルを示す説明図である。
Ｃ５Ａ：角間のベクトル演算手段
角間のベクトル演算手段Ｃ５Ａは、第１の物品に形成された各角と他の角との間のベクトルを演算する。実施例１の角間のベクトル演算手段Ｃ５Ａは、前記形状情報の記憶手段Ｃ１と識別番号の設定手段Ｃ２とに基づいて、α個の角が形成された第１の物品の各角Ａαから他の角Ａβへ向かう各ベクトルｐα，βを演算する。なお、実施例１では、図５に示すように、角Ａα（１≦α≦８）から他の角Ａβ（１≦β≦８）に向かうベクトルｐα，βが演算される。また、実施例１では、各ベクトルｐα，βとして、大きさが１の単位ベクトルを演算する。
【００２５】
Ｃ５Ｂ：内積の演算手段
内積の演算手段Ｃ５Ｂは、第１の物品の各角間のベクトルの内積を演算する。実施例１の内積の演算手段Ｃ５Ｂでは、形状情報の記憶手段Ｃ１に記憶された対象物品１の形状情報と、角間のベクトル演算手段Ｃ５Ａで演算された各角間のベクトルｐα，βとに基づいて、対象物品１の各ベクトルｐα，βどうしの内積の値としての内積値を演算する。
【００２６】
Ｃ５Ｃ：内積値の判別手段
内積値の判別手段Ｃ５Ｃは、第１の物品の一辺に対応するベクトルと、一辺の端から他の各角に向けて延びるベクトルとの内積値のうち、一辺に対応するベクトルと、一辺に隣接する隣接辺に対応するベクトルとの間の内積値が最小値であるか否かを判別する。実施例１の内積値の判別手段Ｃ５Ｃは、内積の演算手段Ｃ５Ｂで演算された対象物品１の各ベクトルｐα，βどうしの内積値に基づいて、対象物品１において、角Ａαから角Ａα−１に向かうベクトルｐα，α−１と、角Ａαから各角Ａβに向けて延びる各ベクトルｐα，βとの内積値Ｂα−１，βのうち、ベクトルｐα，α−１と、角Ａαから角Ａα＋１に向かうベクトルｐα，α＋１との内積値Ｂα−１，α＋１が、最小値であるか否かを判別する。
【００２７】
具体的には、図５に示すように、対象物品１において、例えば、角Ａ３から隣接する手前の角Ａ２に向かうベクトルｐ３，２と、角Ａ３から隣接する次の各角Ａβ（１≦β≦８）に向かう各ベクトルｐ３，βとの内積値Ｂ２，βのうち、ベクトルｐ３，２と角Ａ３から角Ａ４に向かうベクトルｐ３，４との内積値Ｂ２，４が、最小値であるか否かが判別される。
【００２８】
Ｃ５Ｄ：凹凸の設定手段
凹凸の設定手段Ｃ５Ｄは、第１の物品の外周に形成された各角が、第１の物品の凹部１ａの一部または凸部の一部のどちらか一方に設定する。実施例１の凹凸の設定手段Ｃ５Ｄは、前記内積値の判別手段Ｃ５Ｃで内積値Ｂα−１，βのうち、内積値Ｂα−１，α＋１が最小値ではないと判別された場合に、隣接する角Ａα＋１は凹部１ａの角であると判別されて「凹」として設定される。また、内積値Ｂα−１，α＋１が最小値であると判別された場合、隣接する角Ａα＋１は凸部の角であると判別されて「凸」として設定される。
【００２９】
図６は実施例１の第１の物品に形成された各角に「凸」または「凹」が設定された状態の説明図である。
具体的には、図５に示す対象物品１において、内積値Ｂα−１，β（１≦α，β≦８）のうち、内積値Ｂα−１，α＋１が最小値ではないと判別された内積値Ｂ３，５，Ｂ４，６、および、Ｂ５，７の判別結果から、図６に示すように、角Ａ４〜Ａ６は「凹」として設定される。また、最小値であると判別された内積値Ｂ１，３，Ｂ２，４，Ｂ６，８，Ｂ７，１、および、Ｂ８，２の判別結果から、角Ａ１，Ａ２，Ａ３，Ａ７およびＡ８は「凸」として設定される。
【００３０】
図７は実施例１の第１の移動方向に平行移動した第１の物品の状態説明図である。
Ｃ６：第１の移動方向の抽出手段
第１の移動方向の抽出手段Ｃ６は、第１の方向の一例として、第１の物品の凹部に第２の物品の一部が進入した状態になるように第１の物品を移動させる方向としての第１の移動方向を抽出する。実施例１の第１の移動方向の抽出手段Ｃ６では、前記凹凸の設定手段Ｃ５Ｄで、対象物品１の「凸」と設定された角のうち、αの最小の角から対象物品１の「凹」と設定された角に向かう方向を第１の移動方向として抽出する。具体的には、図７に示すように、対象物品１の角Ａ１から角Ａ４に向かう矢印Ｙａの方向や、対象物品１の角Ａ１から角Ａ６に向かう矢印Ｙｂの方向を第１の移動方向として抽出する。なお、実施例１では、対象物品１に「凹」と設定された角がない場合、第１の移動方向が抽出されない。
【００３１】
Ｃ７：第１の配置手段
第１の配置手段Ｃ７は、第１の物品の凹部に応じて設定された方向に沿って、第１の物品を平行移動させて、予め設定された位置に第１の物品を配置させる。実施例１の第１の配置手段Ｃ７では、前記第１の移動方向の抽出手段Ｃ６で抽出された第１の移動方向に沿って、前記形状情報の記憶手段Ｃ１で記憶された対象物品１上の予め設定された角と他の角との間の距離だけ対象物品１を平行移動させて、第２の物品の一例として、対象物品１に隣接する隣接物品１１，２１として配置する。
【００３２】
具体的には、図７に示すように、対象物品１の角Ａ１が角Ａ４に重なるまで、第１の移動方向Ｙａに沿って、対象物品１を平行移動させて、隣接物品１１を配置し、対象物品１の角Ａ１が角Ａ６に重なるまで、第１の移動方向Ｙｂに沿って、対象物品１を平行移動させて、隣接物品２１を配置する。なお、実施例１では、「凸」と設定された角を、「凹」と設定された角の上に移動させた際に、対象物品１の一部と、隣接物品１１，２１の一部とが重なる場合がある。この場合、対象物品１の一部に、隣接物品１１，２１の一部が重ならなくなるまで、設定された第１の移動方向に沿って、対象物品１を平行移動させて、隣接物品１１，２１を配置する。よって、実施例１では、対象物品１に形成された凹部１ａに、隣接物品１１，２１の一部が進入した状態で隣接物品１１，２１が配置される。また、実施例１の構成では、前記第２の配置手段Ｃ３と同様に、マージンを持って、対象物品１と隣接物品１１，２１との間に予め設定された間隔の隙間に応じて、対象物品１が更に移動される。
【００３３】
Ｃ８：第１の面積の演算手段
第１の面積の算出手段の一例としての第１の面積の演算手段Ｃ８は、第１の物品と第１の物品の形状に応じて設定された方向に沿って、移動した第２の物品との間の面積を第１の面積として演算する。実施例１の第１の面積の演算手段Ｃ８は、第１の移動方向に沿って、対象物品１の一端からと、隣接物品１１，２１の一端までの面積を第１の面積として演算する。
【００３４】
具体的には、図７に示すように、対象物品１の角Ａ１と隣接物品１１の角Ａ１との間の距離に対応する移動距離Ｌ１ａと、対象物品１における第１の移動方向Ｙａに直交する直交方向の対象物品１の最大幅Ｌ１ｂとを算出し、移動距離Ｌ１ａと対象物品１の最大幅Ｌ１ｂとを掛け合せた領域の面積を第１の面積Ｅａとして演算する。また、角Ａ１と隣接物品２１の角Ａ１との間の距離に対応する移動距離Ｌ２ａと、対象物品１における第１の移動方向Ｙｂに直交する直交方向の対象物品１の最大幅Ｌ２ｂとを掛け合せた面積も第１の面積Ｅｂとして演算する。なお、実施例１の構成では、対象物品に対して３つ以上の第１の移動方向が抽出された場合、対象物品と、各第１の移動方向に沿って移動した隣接物品とに対応した第１の面積Ｅａ，Ｅｂ，Ｅｃ，…，をそれぞれ演算する。
【００３５】
Ｃ９：配列方向の決定手段
配列方向の決定手段Ｃ９は、移動方向の中から、第１の物品を並べて配列する方向である配列方向を決定する。実施例１の配列方向の決定手段Ｃ９は、前記第１の面積の演算手段Ｃ８および第２の面積の演算手段Ｃ４で演算された面積のうち、最小面積に対応する移動方向を配列方向に決定する。具体的には、図４，７に示すように、前記第１の面積の演算手段Ｃ８や、前記第２の面積の演算手段Ｃ４で算出された面積Ｅａ，Ｅｂ，Ｅｘ，Ｅｙのうち、最小面積の第１の面積Ｅａに対応する平行移動方向Ｙａを、配列方向に決定する。
【００３６】
図８は実施例１の通知画面の説明図である。
Ｃ１０：通知画面の表示手段
通知画面の表示手段Ｃ１０は、第１の物品の配列情報を通知する通知画面を表示する。実施例１の通知画面の表示手段Ｃ１０は、対象物品１が配列方向に移動した際に、対象物品１と移動した対象物品１との配列図、対象物品１の移動距離、対象物品１の直交方向の最大幅、および、Ｘ軸から配列方向の傾斜角度θを配列情報として通知する画面を、ディスプレイＨ２に表示する。なお、実施例１では、図８に示すように、対象物品１が配列方向Ｙａに移動した場合、対象物品１と移動した対象物品１との配列図、対象物品１の移動距離Ｌ１ａ、対象物品１の直交方向の最大幅Ｌ１ｂ、および、Ｘ軸から配列方向Ｙａの傾斜角度θを配列情報として通知する通知画面を、ディスプレイＨ２に表示する。
Ｃ１１：配列設定の終了手段
配列設定の終了手段Ｃ１１は、前記通知画面の表示手段Ｃ１０で、配列情報がディスプレイＨ１２に表示された場合に、前記配列支援システムＳによる物品の配列設定処理を終了する。
【００３７】
（実施例１のフローチャートの説明）
次に、実施例１のクライアントパソコンＰＣの配列支援プログラムＡＰ１の処理の流れをフローチャートを使用して説明する。
【００３８】
（実施例１の物品の配列処理のフローチャートの説明）
図９は実施例１の配列支援プログラムの配列処理のフローチャートである。
図９のフローチャートの各ＳＴ（ステップ）の処理は、前記制御部のＲＯＭ等に記憶されたプログラムに従って行われる。また、この処理は前記制御部の他の各種処理、例えば、成形品の製図処理等と並行してマルチタスクで実行される。
【００３９】
図９に示すフローチャートは前記クライアントパソコンＰＣが電源オンした後、前記配列支援プログラムＡＰ１が起動した場合に開始される。
図９のＳＴ１において、ユーザによりキーボードＨ３やマウスＨ４により開始の入力があるか否かを判別する。イエス（Ｙ）の場合はＳＴ２に進み、ノー（Ｎ）の場合はＳＴ１を繰り返す。
ＳＴ２において、形状情報の記憶手段Ｃ１に基づいて、対象物品１の形状情報を取得する。そして、ＳＴ３に進む。
【００４０】
ＳＴ３において、対象物品１に形成された角のうち、外周の１点をランダムに選出して、角Ａ１と識別番号を設定した後に、残りの角に対して、角Ａ１から時計回りの順に、角Ａ２、角Ａ３、…、角Ａα−１、角Ａα（１≦α≦８）のそれぞれに識別番号を設定する。そして、ＳＴ４に進む。
ＳＴ４において、Ｘ軸方向、および、Ｙ軸方向に沿って、対象物品１の一部に、隣接物品３１，４１の一部が重ならなくなるまで、対象物品１を平行移動させる。そして、ＳＴ５に進む。
【００４１】
ＳＴ５において、対象物品１と隣接物品３１との間の第２の面積Ｅｘと、対象物品１と隣接物品４１との間の第２の面積Ｅｙとを演算する。そして、ＳＴ６に進む。
ＳＴ６において、角Ａαから他の角Ａβ（１≦β≦８）に向かうベクトルｐα，βを演算する。そして、ＳＴ７に進む。
ＳＴ７において、対象物品１の形状情報と、各角間のベクトルｐα，βとに基づいて、内積値Ｂα−１，α＋１をそれぞれ演算する。そして、ＳＴ８に進む。
【００４２】
ＳＴ８において、各角に対して、「凹」、または、「凸」を設定する。具体的には、内積値Ｂα−１，βのうち、内積値Ｂα−１，α＋１が最小値ではないと判別された場合に、角Ａα＋１は「凹」として設定し、内積値Ｂα−１，α＋１が最小値であると判別された場合に、角Ａα＋１は「凸」として設定する。そして、ＳＴ９に進む。
ＳＴ９において、対象物品１に形成された角のうち、「凹」として設定された角が存在するか否かを判別する。イエス（Ｙ）の場合はＳＴ１０に進み、ノー（Ｎ）の場合はＳＴ１６に進む。
【００４３】
ＳＴ１０において、「凹」と設定された角Ａαのうち、αの最小の角Ａαを、第１の移動方向の抽出に用いる対象角として設定する。そして、ＳＴ１１に進む。
ＳＴ１１において、対象物品１の「凸」と設定された角のうち、αの最小の角Ａαから、対象角に向かう方向を第１の移動方向として抽出する。そして、ＳＴ１２に進む。
ＳＴ１２において、第１の移動方向に沿って、対象物品１を平行移動させる。具体的には、対象物品１の一部に、隣接物品１１，２１の一部が重ならなくなるまで、対象物品１を平行移動させる。そして、ＳＴ１３に進む。
【００４４】
ＳＴ１３において、対象物品１と隣接物品１１との間の第１の面積Ｅａと、対象物品１と隣接物品２１との間の第１の面積Ｅｂとを演算する。そして、ＳＴ１４に進む。
ＳＴ１４において、「凹」として設定された全ての角Ａαに対する平行移動が完了したか否かを判別する。イエス（Ｙ）の場合はＳＴ１６に進み、ノー（Ｎ）の場合はＳＴ１５に進む。
ＳＴ１５において、時計回り方向に対して、対象角の下流側の「凹」として設定された角を、次の対象角として設定する。そして、ＳＴ１１に戻る。
ＳＴ１６において、演算された面積Ｅａ，Ｅｂ，Ｅｘ，Ｅｙのうち、最小面積に対応する移動方向を配列方向として決定する。そして、ＳＴ１７に進む。
【００４５】
ＳＴ１７において、配列方向に沿って、対象物品１に対して予め設定された間隔を空けて隣接物品１１を複数個並べて配列する。そして、ＳＴ１８に進む。
ＳＴ１８において、図８に示すように、配列図、移動距離Ｌ１ａ、最大幅Ｌ１ｂおよび、Ｘ軸に対する配列方向の傾斜角度θをディスプレイＨ２に表示する。そして、物品の配列処理を終了して、ＳＴ１に戻る。
【００４６】
（実施例１の作用）
（物品の配列支援プログラムＡＰ１の機能）
前記構成を備えた実施例１の配列支援システムＳでは、配列支援プログラムＡＰ１が実行されて、図９に示す物品の配列処理が実行される。形状情報が取得されると、図３に示すように、対象物品１に形成された各角に対して、角Ａ１、…、角Ａα（１≦α≦８）と識別番号が設定される。
【００４７】
識別番号が設定された対象物品１が、図４に示すように、Ｘ軸方向、および、Ｙ軸方向に沿って、対象物品１の一部に、隣接物品３１，４１の一部が重ならなくなるまで、平行移動する。そして、対象物品１と隣接物品３１，４１との間の第２の面積Ｅｘ，Ｅｙが演算される。また、対象物品１では、図５に示すように、各角Ａαから他の角Ａβ（１≦β≦８）に向かうベクトルｐα，βが演算されて、ベクトルｐα，βと形状情報とに基づいて、内積値Ｂα−１，α＋１が演算される。そして、図６に示すように、内積値Ｂα−１，βのうち、内積値Ｂα−１，α＋１が最小値ではないと判別された場合に、角Ａα＋１が「凹」として設定され、内積値Ｂα−１，α＋１が最小値であると判別された場合に、角Ａα＋１が「凸」として設定される。
【００４８】
対象物品１に「凹」と設定された角が１つ以上存在する場合に、図７に示すように、「凸」と設定されたαの最小の角から、「凹」と設定された角に向かう第１の移動方向に沿って、対象物品１の一部に、隣接物品１１，２１の一部が重ならなくなるまで、対象物品１が平行移動する。そして、対象物品１と隣接物品１１，２１との間の第１の面積Ｅａ，Ｅｂが演算される。なお、実施例１では、対象物品１は、「凹」と設定された各角毎に演算される。演算された面積Ｅａ，Ｅｂ，Ｅｘ，Ｅｙのうち、最小面積に対応する移動方向が配列方向として決定される。
【００４９】
図１０は従来構成の配列処理で配列された製品の配列図である。
ここで、特許文献１に記載の従来の構成では、形状や、大きさ、向きが別々の複数の製品で構成された製品群（ｗ１）が、右端から左に向けて詰めて配置される。そして、右端から左に向けて製品群（ｗ１）が検出されなくなる位置を検出して、検出された位置と右端との間の領域が、製品群（ｗ１）の全てが配置可能な最小の領域として設定されている。
しかし、特許文献１の構成では、製品の形状や、大きさ、向きに関わらず、右から左に向けて製品が並べて配置されており、製品の形状等に関わらず、一定の配置方向に限定されていた。
【００５０】
よって、特許文献１の構成では、製品の形状等に応じて、右から左に製品が並べられた場合に比べて、右から左以外の他の方向に製品が並べられた方が、製品として使用されない面積が小さくても、対応できなかった。したがって、図１０において、素材（ｗ０）から製品群（ｗ１）を切り出す場合に、素材（ｗ０）において、製品が切り出されずに廃棄される領域（Ｅｈ）が大きくなる問題があった。
【００５１】
図１１は実施例１の配列処理で配列された第１の物品の配列図であり、図１１Ａは最小面積に応じた配列方向に沿って配列された第１の物品の配列図、図１１ＢはＸ軸方向に沿って配列された第１の物品の配列図である。
これに対して、実施例１の構成では、図７に示すように、凹部１ａが形成された対象物品１で第１の面積ＥａまたはＥｂが最小面積の場合に、配列方向Ｙａ、または、Ｙｂに沿って、隣接物品１１、または、２１が配置される。この場合、対象物品１の凹部１ａに、隣接物品１１、または、２１の一部を進入させた状態で隣接物品１１，２１が配置される。
【００５２】
よって、実施例１では、図１１Ａに示すように、最小面積の第１の面積Ｅａに応じた配置方向に沿って、隣接物品１１が配列され、図１１Ｂに示すＸ軸方向に沿って配列された各物品１，３１どうしの間の領域３２に比べて、各物品１，１１どうしの間の領域１２，１３の面積を小さくすることが可能である。
【００５３】
図１２は実施例１の配列処理で配列された図１１の第１の物品とは異なる第１の物品の配列図であり、図１２Ａは第１の移動方向に沿って配列された第１の物品の配列図、図１２Ｂは最小面積に応じたＸ軸方向に沿って配列された第１の物品の配列図である。
また、実施例１では、第１の物品の一例としての対象物品１０１において、図１２Ａに示す第１の面積Ｅａ′ではなく、図１２Ｂに示す第２の面積Ｅｘ′が最小面積の場合に、Ｘ軸方向に沿って、第２の物品の一例としての隣接物品１３１が配置される。
【００５４】
この場合、対象物品１０１の凹部１０１ａに、隣接物品１３１の一部を進入させずに対象物品１０１を配置した方が、製品として使用されない面積１３２が狭くなる。したがって、実施例１では、対象物品１０１に形成された凹部１０１ａに、隣接物品１３１の一部を進入させた状態で隣接物品１３１が配列されない。よって、図１２Ｂに示すように、最小面積の第２の面積Ｅｘ′に応じた配置方向に沿って、対象物品１０１に対して隣接物品１３１が配列される。
【００５５】
したがって、実施例１の構成では、図１２Ａに示す第１の移動方向に沿って配列された各物品１０１，１１１どうしの間の領域１１２，１１３に比べて、各物品１０１，１３１どうしの間の製品として使用されない領域１３２の面積を小さくすることが可能である。
よって、面積Ｅａ，Ｅａ′，Ｅｂ，Ｅｘ，Ｅｘ′，Ｅｙに応じて配列方向が決定されない従来の構成に比べて、実施例１の構成では、各物品１，１１どうしの間や、各物品１０１，１３１どうしの間で製品として使用されない領域１２，１３，１３２の面積を必要最低限に低減することが可能である。
【００５６】
また、実施例１では、面積Ｅａ，Ｅｘ′が演算される際に、対象物品１，１０１の角Ａ１と隣接物品１１，１３１の角Ａ１との間の距離に対応する移動距離Ｌ１ａ，Ｌ１０１ａと、対象物品１，１０１における配列方向に直交する直交方向の対象物品１，１０１の最大幅Ｌ１ｂ，Ｌ１０１ｂとが算出される。最大幅Ｌ１ｂ，Ｌ１０１ｂは、対象物品１，１０１と隣接物品１１，１３１とが型抜かれる基材に必要な幅に対応している。また、移動距離Ｌ１ａ，Ｌ１０１ａは、製品１個分のおおよその長さに対応しており、移動距離Ｌ１ａ，Ｌ１０１ａおよび必要な製品の個数から、必要な基材のおおよその長さが検出可能である。したがって、実施例１の構成では、Ｘ軸方向やＹ軸方向に対して、配列方向が傾斜していても、移動距離Ｌ１ａ，Ｌ１０１ａ、および、最大幅Ｌ１ｂ，Ｌ１０１ｂから必要な基材のおおよその大きさを、利用者が容易に把握することが可能である。
【００５７】
また、実施例１では、対象物品１，１０１と配列された隣接物品１１，１３１との間には、マージンが設けられている。マージンが設けられていない場合、型抜き動作で切刃が物品１，１０１，１１，１３１を型抜く際に、物品１，１０１，１１，１３１の境界部分が、設計よりも欠ける場合がある。よって、実施例１では、マージンが設けられていない構成に比べて、型抜き動作の実行時に、物品１，１０１，１１，１３１が設計通りに形成されないことを低減可能である。
【００５８】
（変更例）
以上、本発明の実施例を詳述したが、本発明は、前記実施例に限定されるものではなく、特許請求の範囲に記載された本発明の要旨の範囲で、種々の変更を行うことが可能である。本発明の変更例（Ｈ01）〜（Ｈ09）を下記に例示する。
（Ｈ01）前記実施例において、第１の物品の一例として、図３に示す対象物品１や、図１２に示す対象物品１０１を例示したが、これに限定されず、設計や仕様に応じて、任意の形状や大きさに形成された対象物品を用いる構成も可能である。
【００５９】
（Ｈ02）前記実施例において、第１の配置手段Ｃ７で、基材から対象物品や隣接物品を型抜く型抜き動作に備えて、対象物品と隣接物品との間に、予め設定された間隔の隙間を設けた構成を例示したが、これに限定されない。例えば、基材の厚さが分厚くなるに連れて、隙間の間隔を空けるように自動的に設定する構成も可能であり、利用者が手動で変更可能とすることも可能である。なお、対象物品と隣接物品との間の隙間の間隔は、設計や仕様に応じて、隙間の間隔を変更することが可能である。
【００６０】
（Ｈ03）前記実施例において、クライアントパソコンＰＣが電源オンした後、配列支援プログラムＡＰ１が起動した場合に物品の配置処理が開始される構成を例示したが、これに限定されない。例えば、クライアントパソコンＰＣとライセンスサーバとの間で、登録申請情報と使用許諾情報との送受信を行い、配列支援システムＳで使用許諾が行われた後、配列支援プログラムＡＰ１が起動した場合に、物品の配置処理が開始される構成も可能である。
（Ｈ04）前記実施例において、マージンを持って、対象物品１，１０１と隣接物品１１，１３１との間に予め設定された間隔の隙間に応じて、対象物品１，１０１が更に移動される構成が望ましいが、対象物品１，１０１の作成方法によっては、対象物品１，１０１と隣接物品１１，１３１との間にマージンを持たずに、対象物品１，１０１を移動させる構成とすることも可能である。
【００６１】
（Ｈ05）前記実施例において、Ｘ軸方向、および、Ｙ軸方向の２方向を、第２の方向の一例としての第２の移動方向として設定した構成を例示したが、これに限定されない。例えば、Ｘ軸方向、または、Ｙ軸方向のどちらか一方の方向のみを、第２の移動方向として設定する構成も可能である。また、Ｘ軸方向やＹ軸方向に対して傾斜した方向を、第２の移動方向として予め設定する構成も可能である。
（Ｈ06）前記実施例において、「凸」の角から、「凹」の角に向かう方向を、第１の移動方向と設定する構成を例示したが、これに限定されない。例えば、「凹」の角が複数存在する場合に、「凸」の角から、「凹」の角どうしの中間の位置に向かう方向を、第１の移動方向と設定する構成も可能である。
【００６２】
（Ｈ07）前記実施例において、対象物品１に形成された角の位置や、各角どうしの距離を記憶する形状情報に基づいて、対象物品１に形成された角のうち、凹部１ａ，１０１ａの一部を形成する角を検出する構成を例示したが、これに限定されない。例えば、対象物品１の各角に「凸」または「凹」が関連付けられた凹凸情報とを予め記憶しておき、各角の「凸」「凹」の検出を省いた構成も可能である。また、各角の「凸」「凹」を検出する構成として、対象物品１に外接する凸形の多角形、または、外接円を求め、対象物品１の外周上の角のうち、外接多角形、または、外接円の上に存在しない角を、「凹」の角として検出する構成も可能である。また、対象物品の投影画像を一度作成し、画像解析して、凹部の一部を形成する角を検出する構成も可能である。
【００６３】
（Ｈ08）前記実施例において、始点を、「凸」と設定されたαの最小の角として、「凹」の角に向かう方向を第１の方向と設定する構成を例示したが、これに限定されず、始点をランダムに設定したりする等、任意の設定とすることも可能である。
（Ｈ09）前記実施例において、対象物品１の左下に形成された「凸」の角から「凹」の角に向かう第１の方向を例示したが、これに限定されない。例えば、右下や、右上、左上に形成された「凸」の角から「凹」の角に向かう方向を第１の方向とする構成も可能である。
【符号の説明】
【００６４】
１，１０１…第１の物品、
１ａ，１０１ａ…凹部、
１１，２１，３１，１１１，１２１，１３１…第２の物品、
Ｃ３…第２の配置手段、
Ｃ４…第２の面積の算出手段、
Ｃ７…第１の配置手段、
Ｃ８…第１の面積の算出手段、
Ｃ９…配置方向の決定手段、
Ｅａ，Ｅｂ…第１の面積、
Ｅｘ，Ｅｘ′，Ｅｙ…第２の面積、
ＰＣ…物品の配列装置。
【図１】
0006551045.tif 000002
【図２】
0006551045.tif 000003
【図３】
0006551045.tif 000004
【図４】
0006551045.tif 000005
【図５】
0006551045.tif 000006
【図６】
0006551045.tif 000007
【図７】
0006551045.tif 000008
【図８】
0006551045.tif 000009
【図９】
0006551045.tif 000010
【図１０】
0006551045.tif 000011
【図１１】
0006551045.tif 000012
【図１２】
0006551045.tif 000013