JP3531929B2 - 部品実装順序最適化方法、その装置及び部品実装機 - Google Patents
部品実装順序最適化方法、その装置及び部品実装機Info
- Publication number
- JP3531929B2 JP3531929B2 JP2003313512A JP2003313512A JP3531929B2 JP 3531929 B2 JP3531929 B2 JP 3531929B2 JP 2003313512 A JP2003313512 A JP 2003313512A JP 2003313512 A JP2003313512 A JP 2003313512A JP 3531929 B2 JP3531929 B2 JP 3531929B2
- Authority
- JP
- Japan
- Prior art keywords
- component
- mounting
- equipment
- task
- parts
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Lifetime
Links
Landscapes
- Supply And Installment Of Electrical Components (AREA)
Description
プリント配線基板等の基板に実装するときの最適な順序
を決定する方法等に関し、特に、複数の部品を吸着して
基板に装着する作業ヘッドを備える部品実装機を対象と
する部品実装順序の最適化に関する。
装する部品実装機では、より短いタクト(実装時間)を
実現するために、対象部品の実装順序について、最適化
が行われる。具体的には、実装順序の最適化の一つとし
て、例えば、部品実装機が装備する部品カセット群にお
ける各部品カセットの配列順序を最適化しておく必要が
ある。そのための従来の技術として、例えば、特許文献
1に開示された部品装着順序最適化方法がある。この方
法では、(1)部品カセット群を、その部品に適用され
る装着スピ−ドによってグル−プ分けし、同一グループ
内の部品カセットを、2個ずつ組み合わせたときの装着
点数の和が均等化されるように、同一基板に対する装着
点数の多いものと少ないものを適宜組み合わせてペア群
を構成し、(2)このカセットグル−プを装着スピード
順に配置し、かつ、同一グル−プ内においては前記ペア
毎に並べることによって、カセットの配列順序を決定
し、(3)その後に、部品の装着順序のみをパラメータ
として最適化処理を行う。
装着順序という2つのパラメータによる複雑な最適化が
回避され、単一のパラメータによる短時間での最適化が
実現される、というものである。
法は、作業ヘッドが部品カセットから1個の部品だけを
吸着して基板に装着することを前提にしているために、
複数(例えば、10個)の部品を吸着して基板に装着し
ていく高機能な作業ヘッド(マルチ装着ヘッド)を備え
る部品実装機に適用することができないという問題があ
る。特に、最近の携帯電話機やノートパソコン等の電子
機器の急激な需要の増大に伴い、複数の部品を吸着して
基板に装着していく生産性の高いマルチ装着ヘッドを備
える部品実装機が開発されており、そのような高機能な
部品実装機に対応した新たな部品実装順序の最適化方法
が望まれている。
機に対応した部品実装順序の最適化、つまり、より高い
生産性を可能にする部品実装順序の最適化方法、その装
置及びその方法によって最適化された順序で部品を実装
する部品実装機等を提供することを目的とする。具体的
には、例えば、複数の部品を吸着して基板に装着するマ
ルチ装着ヘッドを備える部品実装機に対応した部品実装
順序の最適化方法等を提供することを目的とする。
品を収納した部品カセットの並びから、最大n(≧2)
個の部品を吸着することが可能な装着ヘッドで部品群を
吸着し、XYロボットにより前記装着ヘッドを移動させ
基板に実装していく部品実装機を対象とし、コンピュー
タの実行により部品の実装順序を最適化する方法であっ
て、前記装着ヘッドにより部品群を吸着し移動した後前
記部品群を基板に装着するという1回分の一連動作によ
って実装される部品群をタスクとする複数のタスクの並
びからなるタスクグループを生成するタスクグループ生
成ステップと、成されたタスクグループそれぞれについ
て、タスクグループを構成する全ての部品の実装に要す
る時間が最小となるように、各タスクを構成する部品種
の並びを変更することなく、タスクに属する部品の実装
点を選択して、前記選択した実装点どうしをタスク間で
入れ替える部品入替ステップとを含むことを特徴とす
る。
品種の異なる2つの部品をランダムに選択するステップ
と、選択された2つの部品の実装順序を入れ替えること
によって、これら2つの部品が属するタスクグループの
前記時間が小さくなるか否かを判断するステップと、前
記時間が小さくなると判断された場合に、それら2つの
部品の実装順序を入れ替えるステップとからなってもよ
いし、同一部品種の組み合わせからなる2つのタスク間
において、連続して基板に装着される複数の部品群どう
しを入れ替えることによってこれら2つのタスクが属す
るタスクグループの前記時間が小さくなるか否かを判断
するステップと、前記時間が小さくなると判断された場
合に、前記複数の部品群どうしを入れ替えるステップと
からなってもよい。
ップを機能手段として備える最適化装置として実現した
り、上記最適化方法のステップによって最適化された実
装順序で部品を実装する部品実装機として実現したり、
上記最適化方法のステップをコンピュータに実行させる
プログラム及びそのようなプログラムを格納したコンピ
ュータ読み取り可能な記録媒体として実現することもで
きる。
ける無駄な移動軌跡が解消され、全体として、より短い
移動距離で部品装着が行われるので、タスクグループ全
体における総実装時間が短縮される。つまり、部品を収
納した部品カセットの並びから、最大n(≧2)個の部
品を吸着することが可能な装着ヘッドで部品群を吸着
し、XYロボットにより前記装着ヘッドを移動させ基板
に実装していく部品実装機を対象とし、コンピュータの
実行により部品の実装順序を最適化する方法において、
複数のタスクの並びからなるタスクグループを生成し、
生成されたタスクグループそれぞれについて、タスクグ
ループを構成する全ての部品の実装に要する時間が最小
となるように、各タスクを構成する部品種の並びを変更
することなく、タスクに属する部品の実装点を選択し
て、前記選択した実装点どうしをタスク間で入れ替える
ことによって部品の実装順序を決定しているので、マル
チ装着ヘッドを備える部品実装機のように生産性の高い
部品実装機に対応した部品実装順序の最適化が実現され
る。
に従って、図面を用いて詳細に説明する。なお、ここで
用いられる主な技術用語の意味は、本文中及び「5 用
語の説明」に記載されている。
配置関係 3.9.10 配列固定:固定先の使用可否判断 3.9.11 ダブルカセットの配列固定について 3.9.12 LL制約:吸着方法の変更(1) 3.9.13 LL制約:吸着方法の変更(2) 3.9.14 LL制約:Z軸上の部品テープの入れ替え
(1) 3.9.15 LL制約:Z軸上の部品テープの入れ替え
(2) 3.9.16 XLサイズ基板への対応(XL制約) 3.9.17 負荷レベルバランス調整処理(「山」単
位) 3.9.18 負荷レベルバランス調整処理(部品テー
プ単位) 3.9.19 前サブ設備から後サブ設備へ山を移動す
る処理 3.9.20 前サブ設備から後サブ設備へ部品テープ
を移動する処理 3.9.21 前サブ設備から後サブ設備へ実装点を移
動する処理 3.9.22 ラインバランス処理でのスワップ処理 3.9.23 ダブルカセットの「刈り上げ法」 3.9.24 ノズル交換のアルゴリズム 3.10 画面表示例 3.10.1 メイン画面 3.10.2 開く画面 3.10.3 最適化詳細情報画面 3.10.4 カセット個数設定画面 3.10.5 部品分割数設定画面 3.10.6 ノズル本数設定画面 3.10.7 ノズルステーション選択画面 3.10.8 オプション設定画面 3.10.9 Z軸情報画面 3.10.10 ノズルステーション情報画面 4 最適化装置の動作(応用編) 4.1 小部品の最適化 4.1.1 部品分割しないZ配列の最適化 4.1.2 左右ブロックへの振り分け処理における最
適化 4.1.3 ダブルカセットの使用本数の見積もり 4.1.4 ダブルカセットのペア固定 4.1.5 NGヘッドを考慮した最適化アルゴリズム 4.2 複数NCデータの同時最適化 4.3 汎用部品の最適化(ルールベースの導入) 4.3.1 横取り法 4.3.2 タスク分割 4.3.3 タスク融合 4.3.4 タスク入替 4.4 ノズル制約を考慮した最適化 4.4.1 ノズルステーション上のノズル配置を固定
した場合への対応 4.4.2 使用ノズルが10本未満の場合の小部品の
最適化 5 用語の説明 以上の目次に示された各項目の説明は以下の通りであ
る。 1 部品実装システム 図1は、本発明に係る部品実装システム10全体の構成
を示す外観図である。この部品実装システム10は、上
流から下流に向けて回路基板20を送りながら電子部品
を実装していく生産ラインを構成する複数の部品実装機
100、200と、生産の開始等にあたり、各種データ
ベースに基づいて必要な電子部品の実装順序を最適化
し、得られたNCデータを部品実装機100、200に
ダウンロードして設定・制御する最適化装置300とか
らなる。
又は、お互いが協調して(又は、交互動作にて)部品実
装を行う2つのサブ設備(前サブ設備110及び後サブ
設備120)を備える。各サブ設備110(120)
は、直交ロボット型装着ステージであり、部品テープを
収納する最大48個の部品カセット114の配列からな
る2つの部品供給部115a及びbと、それら部品カセ
ット114から最大10個の部品を吸着し基板20に装
着することができる10個の吸着ノズル(以下、単に
「ノズル」ともいう。)を有するマルチ装着ヘッド11
2(10ノズルヘッド)と、そのマルチ装着ヘッド11
2を移動させるXYロボット113と、マルチ装着ヘッ
ド112に吸着された部品の吸着状態を2次元又は3次
元的に検査するための部品認識カメラ116と、トレイ
部品を供給するトレイ供給部117等を備える。
部品種の複数の部品がテープ(キャリアテープ)上に並
べられたものであり、リール(供給リール)等に巻かれ
た状態で供給される。主に、チップ部品と呼ばれる比較
的小さいサイズの部品を部品実装機に供給するのに使用
される。ただし、最適化処理においては、「部品テー
プ」とは、同一の部品種に属する部品の集合(それら複
数個の部品が仮想的なテープ上に並べられたもの)を特
定するデータであり、「部品分割」と呼ばれる処理によ
って、1つの部品種に属する部品群(1本の部品テー
プ)が複数本の部品テープに分割される場合がある。
をテーピング部品と呼ぶ。この部品実装機100は、具
体的には、高速装着機と呼ばれる部品実装機と多機能装
着機と呼ばれる部品実装機それぞれの機能を併せもつ実
装機である。高速装着機とは、主として□10mm以下
の電子部品を1点あたり0.1秒程度のスピードで装着
する高い生産性を特徴とする設備であり、多機能装着機
とは、□10mm以上の大型電子部品やスイッチ・コネ
クタ等の異形部品、QFP・BGA等のIC部品を装着
する設備である。
ての種類の電子部品(装着対象となる部品として、0.
6mm×0.3mmのチップ抵抗から200mmのコネ
クタまで)を装着できるように設計されており、この部
品実装機100を必要台数だけ並べることで、生産ライ
ンを構成することができる。
部品実装機100の主要な構成を示す平面図である。シ
ャトルコンベヤ118は、トレイ供給部117から取り
出された部品を載せて、マルチ装着ヘッド112による
吸着可能な所定位置まで運搬するための移動テーブル
(回収コンベア)である。ノズルステーション119
は、各種形状の部品種に対応するための交換用ノズルが
置かれるテーブルである。各サブ設備110(又は12
0)を構成する2つの部品供給部115a及びbは、そ
れぞれ、部品認識カメラ116を挟んで左右に配置され
ている。したがって、部品供給部115a又は115b
において部品を吸着したマルチ装着ヘッド112は、部
品認識カメラ116を通過した後に、基板20の実装点
に移動し、吸着した全ての部品を順次装着していく動作
を繰り返す。
品の吸着・移動・装着という一連の動作の繰り返しにお
ける1回分の動作(吸着・移動・装着)、又は、そのよ
うな1回分の動作によって実装される部品群)を「タス
ク」と呼ぶ。例えば、10ノズルヘッド112によれ
ば、1個のタスクによって実装される部品の最大数は1
0となる。なお、ここでいう「吸着」には、ヘッドが部
品を吸着し始めてから移動するまでの全ての吸着動作が
含まれ、例えば、1回の吸着動作(マルチ装着ヘッド1
12の上下動作)で10個の部品を吸着する場合だけで
なく、複数回の吸着動作によって10個の部品を吸着す
る場合も含まれる。
セット114の位置関係を示す模式図である。このマル
チ装着ヘッド112は、「ギャングピックアップ方式」
と呼ばれる作業ヘッドであり、最大10個の吸着ノズル
112a〜112bを装着することが可能であり、この
ときには、最大10個の部品カセット114それぞれか
ら部品を同時に(1回の上下動作で)吸着することがで
きる。
品カセット114には1つの部品テープだけが装填さ
れ、「ダブルカセット」と呼ばれる部品カセット114
には2つの部品テープ(ただし、送りピッチ(2mm又
は4mm)が同一の部品テープに限られる)が装填され
る。また、部品供給部115a及びbにおける部品カセ
ット114(又は、部品テープ)の位置を「Z軸上の
値」又は「Z軸上の位置」と呼び、部品供給部115a
の最左端を「1」とする連続番号等が用いられる。した
がって、テーピング部品についての実装順序を決定する
ことは、部品種(又は、部品テープ、又は、その部品テ
ープを収納した部品カセット114)の並び(Z軸上の
位置)を決定することに等しい。
それぞれの部品供給部115a、b及び215a、bの
具体的な構成例を示し、図4(b)は、その構成におけ
る各種部品カセット114の搭載本数及びZ軸上の位置
を示す表である。図4(a)に示されるように、各部品
供給部115a、115b、215a、215bは、そ
れぞれ、最大48個の部品テープを搭載することができ
る(それぞれの位置は、Z1〜Z48、Z49〜Z9
6、Z97〜Z144、Z145〜Z192)。具体的
には、図4(b)に示されるように、テープ幅が8mm
の部品テープを2つ収納したダブルカセットを用いるこ
とで、各部品供給部(Aブロック〜Dブロック)に最大
48種類の部品を搭載することができる。テープ幅の大
きい部品(部品カセット)ほど、1つのブロックに搭載
できるカセット本数は減少する。
給部115a、215a(Aブロック、Cブロック)を
「左ブロック」、各サブ設備に向かって右側の部品供給
部115b、215b(Bブロック、Dブロック)を
「右ブロック」とも呼ぶ。図5(a)及び(b)は、1
0ノズルヘッドが吸着可能な部品供給部の位置(Z軸)
の例を示す図及び表である。なお、図中のH1〜10
は、10ノズルヘッドに搭載されたノズル(の位置)を
指す。
間隔は、1つのダブルカセットの幅(21.5mm)に
相当するので、1回の上下動により吸着される部品のZ
番号は、1つおき(奇数のみ又は偶数のみ)となる。ま
た、10ノズルヘッドのZ軸方向における移動制約によ
り、図5(b)に示されるように、各部品供給部の一端
を構成する部品(Z軸)に対しては、吸着することがで
きないノズル(図中の「−」)が存在する。
114の詳細な構造を説明する。図6(a)、(b)、
(c)、(d)に示すような各種チップ形電子部品42
3a〜423dを図7に示すキャリアテープ424に一
定間隔で複数個連続的に形成された収納凹部424aに
収納し、この上面にカバーテープ425を貼付けて包装
し、供給用リール426に所定の数量分を巻回したテー
ピング形態(部品テープ)でユーザに供給されている。
図8に示すような部品カセット114に装着されて使用
されるものであり、図8において供給用リール426は
本体フレーム427に結合されたリール側板428に回
転自在に取り付けられている。この供給用リール426
より引き出されたキャリアテープ424は送りローラ4
29に案内され、この電子部品供給装置が搭載された電
子部品自動装着装置(図示せず)の動作に連動し、同装
置に設けられたフィードレバー(同じく図示せず)によ
り電子部品供給装置の送りレバー430が図中の矢印Y
1方向に移動し、送りレバー430に取り付けられてい
るリンク431を介してラチェット432を定角度回転
させる。そしてラチェット432に連動した前記送りロ
ーラ429を定ピッチ(たとえば、2mm又は4mmの
送りピッチ)だけ動かす。
429の手前(供給用リール426側)のカバーテープ
剥離部433でカバーテープ425を引き剥がし、引き
剥がしたカバーテープ425はカバーテープ巻取りリー
ル434に巻取られ、カバーテープ425を引き剥がさ
れたキャリアテープ424は電子部品取り出し部435
に搬送され、前記送りローラ429がキャリアテープ4
24を搬送するのと同時に前記ラチェット432に連動
して開口する電子部品取り出し部435より真空吸着ヘ
ッド(図示せず)により収納凹部424aに収納された
チップ形電子部品423dを吸着して取り出す。その
後、送りレバー430は上記フィードレバーによる押し
力を解除されて引張りバネ436の付勢力でもって同Y
2方向に、すなわち元の位置にもどる。
キャリアテープ424は電子部品供給装置の外部へ排出
され、上記電子部品自動供給装置の動作と連動している
カッター(図示せず)で細かく切断して廃棄されるよう
に構成されている。なお、部品カセット114は、2つ
のキャリアテープ424を収納するダブルカセットのタ
イプである場合には、収納している2つのキャリアテー
プ424を同一の送りピッチでのみ供給していくことが
できるものとする。
とめると、以下の通りである。 (1)ノズル交換 次の装着動作に必要なノズルがマルチ装着ヘッド112
にないとき、マルチ装着ヘッド112は、ノズルステー
ション119へ移動し、ノズル交換を実施する。ノズル
の種類としては、吸着できる部品のサイズに応じて、例
えば、タイプS、M、L等がある。 (2)部品吸着 マルチ装着ヘッド112が部品供給部115a及びbに
移動し、電子部品を吸着する。一度に10個の部品を同
時に吸着できないときは、吸着位置を移動させながら複
数回、吸着上下動作を行うことで、最大10個の部品を
吸着することができる。 (3)認識スキャン マルチ装着ヘッド112が部品認識カメラ116上を一
定速度で移動し、マルチ装着ヘッド112に吸着された
全ての電子部品の画像を取り込み、部品の吸着位置を正
確に検出する。 (4)部品装着 基板20に、順次電子部品を装着する。
うことで、全ての電子部品を基板20に搭載する。上記
(2)から(4)の動作は、この部品実装機100によ
る部品の実装における基本動作であり、「タスク」に相
当する。つまり、1つのタスクで、最大10個の電子部
品を基板に装着することができる。
による単位時間当たりの基板の生産枚数を最大化するこ
とである。したがって、好ましい最適化方法(最適化ア
ルゴリズム)とは、この部品実装機100が有する上述
の機能上及び動作上の特徴から分かるように、基板上に
効率よく装着できる10個の電子部品を選び、それらを
同時に部品供給部から吸着し、最短経路で順次装着する
ようなアルゴリズムである。このような最適化アルゴリ
ズムで決定された部品実装順序は、理想的には、1本の
ノズルだけによる部品実装の場合と比較し、約10倍の
生産性を向上することができる。
も、機構上、コスト上、運用上などの面から、部品の実
装順序の決定に対する制約要因を持っている。したがっ
て、現実的には、部品の実装順序の最適化とは、様々な
制約を遵守したうえで、単位時間当たりの基板の生産枚
数を可能な限り最大化することである。以下、この部品
実装機100における主な制約を列挙する。なお、制約
の詳細については、個々の最適化アルゴリズムを説明し
ている箇所においても説明している。
する10個の装着ヘッドが一列に並べられたものであ
り、最大10本の吸着ノズルが着脱可能であり、それら
一連の吸着ノズルによって、1回の吸着上下動作で最大
10個の部品を同時に吸着することができる。
々の作業ヘッド(1個の部品を吸着する作業ヘッド)」
を指す場合には、単に「装着ヘッド(又は、「ヘッ
ド」)」と呼ぶ。マルチ装着ヘッド112を構成する1
0本の装着ヘッドが直線状に並ぶという構造上、部品吸
着時と部品装着時のマルチ装着ヘッド112の可動範囲
に関して制約がある。具体的には、図5(b)に示され
るように、部品供給部の両端(左ブロック115aの左
端付近及び右ブロック115bの右端付近))で電子部
品を吸着するときには、アクセスできる装着ヘッドが制
限される。
マルチ装着ヘッド112の可動範囲は制限を受ける。後
述する「LLサイズ基板」や「XLサイズ基板」と呼ば
れる通常よりも縦又は横方向に大きいサイズの基板に対
して、部品を実装する場合に生じる制約である。
て、2次元画像を撮像する2Dカメラと、高さ情報も検
出できる3Dカメラが搭載されている。2Dカメラに
は、撮像できる視野の大きさによって、2DSカメラと
2DLカメラがある。2DSカメラは視野は小さいが高
速撮像が可能で、2DSカメラは最大60×220mm
までの大きな視野を特徴としている。3Dカメラは、I
C部品の全てのリードが曲がっていないかどうかを3次
元的に検査するために用いられる。
は、カメラによって異なる。2DSカメラを使用する部
品と3Dカメラを使用する部品が同じタスクに存在する
場合には、認識スキャンはそれぞれの速度で2度実施す
る必要がある。
に収納するテーピングと呼ばれる方式と、部品の大きさ
に合わせて間仕切りをつけたプレートに収納するトレイ
と呼ばれる方式がある。
部115a及びbにより行われ、トレイによる供給は、
トレイ供給部117により行われる。電子部品のテーピ
ングは規格化されており、部品の大きさに応じて、8m
m幅から72mmまでのテーピング規格が存在する。こ
のようなテープ状の部品(部品テープ)をテープ幅に応
じた部品カセット(テープ・フィーダ・ユニット)にセ
ットすることで、電子部品を安定した状態で連続的に取
り出すことが可能となる。
12mm幅までの部品テープを21.5mmピッチで隙
間なく搭載できるように設計されている。テープ幅が1
6mm以上になると、テープ幅に応じて必要分だけ隙間
をあけてセットすることになる。複数の電子部品を同時
に(1回の上下動作で)吸着するためには、装着ヘッド
と部品カセットそれぞれの並びにおけるピッチが一致す
ればよい。テープ幅が12mmまでの部品に対しては、
10点同時吸着が可能である。
給部(左ブロック115a、右ブロック115b)それ
ぞれには、12mm幅までの部品テープを最大48個搭
載することができる。
ングルカセットと、最大2つの部品テープを収納するこ
とができるダブルカセットとがある。ダブルカセットに
収納する2つの部品テープは、送りピッチ(2mm又は
4mm)が同一の部品テープに限られる。
実装機100の構造から生じる制約だけでなく、部品実
装機100が使用される生産現場における事情から生じ
る以下のような運用面での制約もある。 (1)配列固定 例えば、人手による部品テープの交換作業を削減するた
めに、特定の部品テープ(又は、それを収納した部品カ
セット)については、セットする部品供給部での位置
(Z軸上の位置)が固定される場合がある。 (2)リソース上の制約 同一部品種について準備できる部品テープの本数、部品
テープを収納する部品カセットの数、ダブルカセットの
数、吸着ノズルの数(タイプごとの数)等が、一定数に
制限される場合がある。
装すべき部品)と生産の道具(限られたリソースを備え
た部品実装機、サブ設備)が与えられた場合に、可能な
限り短い時間で基板を製造する(単位時間あたりに製造
できる基板の枚数を多くする)ための部品実装順序を決
定する装置である。
化するためには、どの部品実装機(サブ設備)のどの位
置(Z軸)にいかなる部品テープを収めた部品カセット
を配置しておき、各部品実装機(サブ設備)のマルチ装
着ヘッドがいかなる順序で部品カセットから可能な限り
多くの部品を同時に吸着し、吸着した複数の部品を基板
上のどの位置(実装点)にどのような順序で装着すれば
よいかをコンピュータ上で決定する(最適解を探索す
る)装置である。このときに、対象の部品実装機(サブ
設備)が有する上述の制約を厳守することが要求され
る。
成 最適化装置300は、本発明に係る最適化プログラムを
パーソナルコンピュータ等の汎用のコンピュータシステ
ムが実行することによって実現され、現実の部品実装機
100と接続されていない状態で、スタンドアロンのシ
ミュレータ(部品実装順序の最適化ツール)としても機
能する。
のハードウェア構成を示すブロック図である。この最適
化装置300は、生産ラインを構成する各設備の仕様等
に基づく各種制約の下で、対象となる基板の部品実装に
おけるラインタクト(ラインを構成するサブ設備ごとの
タクトのうち、最大のタクト)を最小化するように、部
品実装用CAD装置等から与えられた全ての部品を対象
として、各サブ設備で実装すべき部品及び各サブ設備に
おける部品の実装順序を決定し、最適なNCデータを生
成するコンピュータ装置であり、演算制御部301、表
示部302、入力部303、メモリ部304、最適化プ
ログラム格納部305、通信I/F(インターフェー
ス)部306及びデータベース部307等から構成され
る。
するのに要する総時間である。演算制御部301は、C
PUや数値プロセッサ等であり、ユーザからの指示等に
従って、最適化プログラム格納部305からメモリ部3
04に必要なプログラムをロードして実行し、その実行
結果に従って、各構成要素302〜307を制御する。
表示部302はCRTやLCD等であり、入力部303
はキーボードやマウス等であり、これらは、演算制御部
301による制御の下で、本最適化装置300と操作者
とが対話する等のために用いられる。具体的なユーザイ
ンターフェースは、後述の画面表示例で説明している通
りである。
であり、本最適化装置300と部品実装機100、20
0との通信等に用いられる。メモリ部304は、演算制
御部301による作業領域を提供するRAM等である。
最適化プログラム格納部305は、本最適化装置300
の機能を実現する各種最適化プログラムを記憶している
ハードディスク等である。
300による最適化処理に用いられる入力データ(実装
点データ307a、部品ライブラリ307b及び実装装
置情報307c)や最適化によって生成された実装点デ
ータ等を記憶するハードディスク等である。図10〜図
12は、それぞれ、実装点データ307a、部品ライブ
ラリ307b及び実装装置情報307cの例を示す。
る全ての部品の実装点を示す情報の集まりである。図1
0に示されるように、1つの実装点piは、部品種ci、
X座標xi、Y座標yi、制御データφiからなる。ここ
で、「部品種」は、図11に示される部品ライブラリ3
07bにおける部品名に相当し、「X座標」及び「Y座
標」は、実装点の座標(基板上の特定位置を示す座標)
であり、「制御データ」は、その部品の実装に関する制
約情報(使用可能な吸着ノズルのタイプ、マルチ装着ヘ
ッド112の最高移動速度等)である。なお、最終的に
求めるべきNCデータとは、ラインタクトが最小となる
ような実装点の並びである。
00、200が扱うことができる全ての部品種それぞれ
についての固有の情報を集めたライブラリであり、図1
1に示されるように、部品種ごとの部品サイズ、タクト
(一定条件下における部品種に固有のタクト)、その他
の制約情報(使用可能な吸着ノズルのタイプ、部品認識
カメラ116による認識方式、マルチ装着ヘッド112
の最高速度比等)からなる。なお、本図には、参考とし
て、各部品種の部品の外観も併せて示されている。
成する全てのサブ設備ごとの装置構成や上述の制約等を
示す情報であり、図12に示されるように、マルチ装着
ヘッドのタイプ等に関するヘッド情報、マルチ装着ヘッ
ドに装着され得る吸着ノズルのタイプ等に関するノズル
情報、部品カセット114の最大数等に関するカセット
情報、トレイ供給部117が収納しているトレイの段数
等に関するトレイ情報等からなる。
ータである。つまり、設備オプションデータ(サブ設備
毎)、リソースデータ(設備毎で利用可能なカセット本
数とノズル本数)、ノズルステーション配置データ(ノ
ズルステーション付きのサブ設備毎)、初期ノズルパタ
ーンデータ(サブ設備毎)、Z軸配置データ(サブ設備
毎)等である。また、リソースに関して、SX,SA,
S等の各タイプのノズル本数は10本以上とする。
成 最適化プログラム格納部305に格納された最適化プロ
グラムの特徴の1つは、電子部品を「小部品」と「汎用
部品」に大別し、それぞれに異なった最適化アルゴリズ
ムを適用した点である。
多い場合で1000点程度になるが、その90パーセン
トは部品サイズが□3.3mm以下のチップ部品である
(以下、このような小さいサイズの部品を「小部品」と
呼ぶ。)。小部品は抵抗やコンデンサ等の部品で、部品
サイズもいくつかのパターンに限定できる。テーピング
は、すべて8mm幅で、10点同時吸着可能な部品であ
る。小部品の満たすべき条件は、例えば、以下の通りで
ある。 ・部品サイズが□3.3mm以下である。 ・部品高さが4.0mm以下である。 ・部品認識カメラが2DSである。 ・部品テープ幅が8mmである。
IC等の異形部品である(以下、小部品の条件を満たさ
ない大きいサイズの部品を「汎用部品」と呼ぶ。)。部
品によっては、トレイで供給されたり、特殊なノズルが
必要であったりするために、最適化時に考慮すべきパラ
メータが多い。そこで、小部品に対しては、10点同時
吸着タスクが最大限に生成でき、高速に最適化処理が実
行できるアルゴリズムを目標としている。一方、汎用部
品に対しては、タスク単位での装着時間を評価関数とし
て、状態(とり得る実装順序の1つ)を変化させながら
最適な実装順序を導き出す、柔軟性に富んだアルゴリズ
ムで最適化レベルを高めることを目標としている。
ム格納部305に格納されている最適化プログラムの機
能ブロック図である。最適化プログラムは、大きく分け
て、部品グループ生成部314、ラインバランス最適化
部315及び状態最適化部316から構成される。な
お、図示されていないが、最適化プログラムには、ユー
ザと対話するためのGUI(グラフィカル・ユーザ・イ
ンターフェース)の機能も含まれている。
ス部307に格納された実装点データ307aによって
特定される全ての実装部品を、部品厚みの点から、例え
ば、9つの部品グループに分類する。具体的には、実装
点データ307aが示す全ての部品種を参照すること
で、同一部品種ごとの部品数を示す部品表を作成し、部
品ライブラリ307bにおける部品サイズを参照するこ
とで、全ての部品種それぞれを複数の部品グループのい
ずれかに対応づける。そして、その分類結果(各部品グ
ループに属する部品種及び部品数等)をラインバランス
最適化部315に通知する。
ループ生成部314から通知された部品グループの情報
に基づいて、部品厚みの薄い部品グループから順に実装
することを遵守しつつ、ラインタクトが最小となるよう
に、ラインバランスを最適化(サブ設備ごとのタクトを
平準化)する。そのために、状態最適化部316と連携
しながら動作する3つの機能モジュール(第1LBM部
315a、第2LBM部315b及び第3LBM部31
5c)を有する。
して実装することとしているのは、基板に部品を装着す
る際のマルチ装着ヘッド112の移動を円滑にさせ、実
装の品質を高めるためである。第1LBM部315a
は、部品グループ生成部314から通知された複数の部
品グループをタスクグループの単位で各サブ設備でのタ
クトがほぼ等しくなるようにラフに振り分ける。つま
り、粗い調整によるラインバランスの最適化を行う。こ
こで、「タスクグループ」とは、タスクの集まりをい
い、最適化のために部品の実装順序を入れ替えることが
可能な部品群の範囲と一致する。
15aによってラフに振り分けられた各サブ設備ごとの
タスクグループをサブ設備間で移動させることによりラ
インタクトを最小化する。つまり、細かい調整によるラ
インバランスの最適化を行う。第3LBM部315c
は、第2LBM部315bにより最適化された状態(タ
スクグループの振り分け)に対して、部品種(部品テー
プ)を単位として、第2LBM部315bと同様の手順
でラインバランスの最適化を行う。
部314で生成された複数の部品グループそれぞれにつ
いて、各部品グループを構成するタスクグループを決定
したり、決定したタスクグループごとの最適状態(各部
品テープのZ軸上の値、各部品テープにおける部品(実
装点)の実装順序)を決定するものであり、小部品(例
えば、9個の部品グループのうちの5つに属する部品)
を対象として最適化を行う小部品最適化部316aと、
汎用部品(例えば、9個の部品グループのうちの残る4
つに属する部品)を対象として最適化を行う汎用部品最
適化部316bと、それら小部品最適化部316aおよ
び汎用部品最適化部316bにおける最適化に共通する
計算処理を実行する最適化エンジン部316cとから構
成される。なお、「状態」とは、対象となっている部品
又は部品種(部品テープ)がとり得る個々の実装順序を
いう。
高速処理に向いたアルゴリズムを用いてタスクグループ
を決定したり状態の最適化を行い、一方、汎用部品最適
化部316bは、緻密でインテリジェントなアルゴリズ
ムを用いて状態の最適化を行う。これは、一般に、携帯
電話機等の基板に実装される小部品の総数は、上述した
ように、汎用部品に比べて極めて多い(例えば、9:1
の比率)ことが分かっているので、それぞれに対応した
アルゴリズムを用いて最適化を行うことで、トータルと
して、より短時間で、より最適な解を求めるためであ
る。
化部316a及び汎用部品最適化部316bから与えら
れたパラメータに基づいて、ヒューリスティックである
が確定的なアルゴリズム(山登り法)に基づく最適化計
算と、確率的ではあるがグローバルに最適解を探索する
アルゴリズム(マルチカノニカル法)に基づく最適化計
算を実行する。図14は、図9に示された最適化プログ
ラム格納部305に格納されている最適化プログラムが
演算制御部301によって実行されたときの概略フロー
図である。つまり、本図は、図13に示された各機能ブ
ロックによる代表的な処理の流れであり、最適化装置3
00による主な処理に対応するフローチャートに相当す
る。
形の枠内の処理)から下方に向けて順に実行される。ネ
スティング表示された箇所は、親のステップが、ネスト
して配置された子供のステップ(又は、その繰り返し)
によって実現されることを示している。本図に示される
ように、最適化処理全体S310は、以下の6つの大き
なステップS311〜S316からなる。 (1)実装点データの読込み(S311) 最初に、データベース部307から全ての実装点データ
307aをメモリ部304等へ読み込む。必要に応じ
て、関連するデータ(部品ライブラリ307b、実装装
置情報307c)も読み込んでおく。 (2)部品リストの作成(S312) 各実装点データ307aには、装着する部品の情報(部
品ライブラリ307b)がリンクされているので、全て
の実装点データ307aを読み込めば、どのような部品
を何点装着するかを記した部品リストを作成することが
できる。 (3)部品グループの生成(S313) 次に、部品リストから部品グループを生成する。「部品
グループ」とは、部品リストを部品の大きさによってグ
ループ化したもので、大きくは小部品と汎用部品の分類
である。小部品は、例えば、大きさによって、さらに以
下のような3つの部品グループに細分化される。
品 G2:1.0mm×0.5mmサイズの部品 G3:1.6mm×0.8mmサイズ以上の部品 (4)前後サブ設備への初期振り分け(S314) 電子部品ごとに標準装着時間を決定しておき、各設備に
振り分けられた部品に対する標準装着時間の累算値がほ
ぼ同じになるように、前後サブ設備110、120に部
品種(部品テープ)を振り分ける。なお、前後サブ設備
110、120に部品を振り分けた後、部品グループ等
を単位として、さらに、左右ブロックのいずれかに部品
テープを振り分ける。 (5)ラインバランス処理(S315) 小部品の最適化処理と汎用部品の最適化処理を、順次実
行する(S320、S321)。そして、配列固定を考
慮したうえで、部品テープを部品供給部115a及びb
に配置する(S322)。続いて、装着時間を前後サブ
設備110、120ごとに計算し、その結果、前後のバ
ランスが悪ければ、前後サブ設備110、120間で部
品を移動させ(S323)、再び、小部品と汎用部品の
最適化処理を実施する。また、実装点(基板上の部品の
装着位置)を考慮した最適化、つまり、後述する交差解
消法による最適化(S324)や、戻り最適化法による
最適化(S325)を施す。
品に対する最適化については(S320)、複数の手法
の中から選択された代表的なもの(「刈り上げ法」)が
採用された場合の処理手順が示されている。 (6)最適化結果の出力(S316) 上記全ての処理を終えると以下のデータを出力する。 ・電子部品の実装順序とタスク構成 ・部品供給部115a及びbのレイアウト(部品テープ
の並び) ・フィーダ、ノズル等のリソース利用状況 ・前後サブ設備110、120ごとの実装予測時間 これらのステップと図13に示された各機能ブロックと
の対応は、次の通りである。つまり、ステップS311
〜S313、主に部品グループ生成部314による処理
であり、ステップS314は、主にラインバランス最適
化部315の第1LBM部315a及び第2LBM部3
15bによる処理であり、ステップS315は、主にラ
インバランス最適化部315の第3LBM部315c及
び状態最適化部316による処理であり、ステップS3
16は、主にラインバランス最適化部315及び図示さ
れていないユーザ・インターフェース部による処理であ
る。
装置の動作(概要編)」、「最適化装置の動作(詳細
編)」及び「最適化装置の動作(応用編)」で説明して
いる通りである。なお、図中の「HC法」は、山登り法
を意味し、ヒューリスティックであるが確定的に最適解
を求めるアルゴリズムであり、「MC法」は、マルチカ
ノニカル法を意味し、確率的ではあるがグローバルに最
適解を探索するアルゴリズムである。
は、有限個数のとり得る実装順序の中から、一定条件
(上述の制約等)を満たし、かつ、実装時間が最短とな
る実装順序を探し出す処理であり、数学的には、最適化
問題において一定条件下で解(最適解)を求める処理に
相当する。「山登り法(HC法)」は、局所的探索法と
呼ばれる解法の1つであり、まずとにかく条件を満たす
解を1つ選び、以降、その解に、一定順序に従った変形
(ここでは、実装順序の変更)を加え、条件を満たしな
がら結果(ここでは、実装時間)が改善されるならばそ
れに移ることを繰り返し、変形を加えても結果が改善さ
れなくなったら終わりにする手法である。
は、大局的探索法と呼ばれる解法の1つであり、まず条
件を満たす解を1つ選び、そして、その解に、偏りのな
い様々な変形を加え、条件を満たしながら結果が改善さ
れる(エントロピーが低くなる)確率を変形の種類ごと
に評価し、それらの変形の中から最も高い確率で結果を
改善するものを採用するという処理を繰り返し、変形を
加えても結果が改善されなくなったら終わりにする手法
である。
ノニカル法」は、いずれも、直前の解に対して貪欲的に
変形を加えることを試み、結果が改善され、かつ、一定
条件を満たすならばその解を採用するという点で共通
し、「貪欲法」と呼ばれるアプローチの1つに属する。
また、最適化装置300は、専用のプログラムに基づく
コンピュータ上での情報処理によって部品の実装順序を
最適化する装置であるので、この明細書においては、最
適化装置が物(部品、タスク、タスクグループ、部品カ
セット、部品テープ等)を「移動する」とは、「メモリ
やハードディスク等の記憶装置に保持されているデータ
(部品の実装順序を特定するデータ等)を書き換える」
ことを意味する。 2 最適化装置の動作(概要編) 次に、以上のように構成された部品実装システム10に
おける最適化装置300の基本的な動作を説明する。
格納された実装点データ307aによって特定される全
ての実装部品を、部品厚みの点から、図15(a)に示
されるような9つの部品グループG[1]〜G[9]に分類す
る。この処理は、図14のステップS313に相当す
る。
全ての部品種を参照することで、図15(b)に示され
るような、同一部品種ごとの部品数を示す部品表を作成
し、部品ライブラリ307bにおける部品サイズを参照
することで、全ての部品種それぞれを9つの部品グルー
プG[1]〜G[9]のいずれかに対応づける。そして、その
分類結果(各部品グループに属する部品種及び部品数
等)をラインバランス最適化部315に通知する。
部315aによるタスクグループのサブ設備への振り分
け処理の様子を示す図である。この処理は、図14のス
テップS314aに相当する。
部品グループが先となるように全てのタスクグループを
一列に並べ、その並びに対して、先頭から順に、サブ設
備ごとのタクトが以下の式で示される値θに近くなるよ
うに、各タスクグループを上流のサブ設備から順に振り
分けていく。θ=(全部品グループを対象とした総タク
ト)/サブ設備の総数Nなお、「全部品グループを対象
とした総タクト」は、実装点データ307a及び部品ラ
イブラリ307bを参照することにより特定され、「サ
ブ設備の総数N」は、実装装置情報307cを参照する
ことにより特定される。
インバランスの最適化(タスクグループの移動)の様子
を示す図であり、グラフ405aは、最適化前における
タクト分布(各サブ設備へのタスクグループの振り分け
状態)を示し、グラフ405bは、最適化によるタスク
グループの移動の様子を示し、グラフ405cは、最適
化後におけるタクト分布を示す。この処理は、図14の
ステップS314bに相当する。
て、縦軸は、タクトの大きさを示し、横軸は、生産ライ
ンを構成する全てのサブ設備(ここでは6台)の並び
(上流から下流に向けた並び)を示し、タスクグループ
は、そのタクトを高さとするブロック「TGn−m」と
して示されている。nは、そのタスクグループが属する
部品グループの番号1〜9を示し、mは、同一の部品グ
ループに属するタスクグループを区別する番号である。
のタスクグループに対して、部品厚みの薄い部品グルー
プに属するものを先に実装する。ただし、同一の部品グ
ループに属する複数のタスクグループに対しては、その
順序の制約を受けないものとする。例えば、サブ設備
[3]は、TG3−3→TG3−1→TG3−2の順で
実装してもよい。図18は、図17に示された第2LB
M部315bによるラインバランスの最適化手順を示す
フローチャートである。
M部315aが生成した図17のグラフ405aに示さ
れる初期状態(タスクグループの振り分け)に対して、
サブ設備ごとのタクトが最大であるサブ設備[Smax]
と最小であるサブ設備[Smin]を特定する(S50
0)。例えば、Smax=5、Smin=2と特定する。そし
て、サブ設備[Smax]のタクトをラインタクトLTと
して記憶する(S501)。例えば、LT=サブ設備
[5]として記憶する。
[Smax−1]までのサブ設備[i]について順に、隣
接する2つのサブ設備間で、移動可能なタスクグループ
を移動させていく(S502〜S507)。つまり、サ
ブ設備[i+1]からサブ設備[i]に、一つタスクグ
ループを仮移動し(S503)、それでもなお、サブ設
備[i]のタクトがラインタクトLTよりも小さいか否
かを確認する(S504)。
だけ、そのタスクグループを実際に移動させる(S50
5)。つまり、サブ設備[i]及びサブ設備[i+1]
のタクトを更新する。例えば、タスクグループTG3−
1をサブ設備[3]からサブ設備[2]に移動させる。
なお、移動させる候補となるタスクグループは、部品厚
みの薄い部品グループに属するものを優先して選択する
ものとする。
設備[Smin]からサブ設備[Smax−1]について順に
繰り返し終えると(S502〜S506)、最後に、サ
ブ設備[Smax]のタクトが減少したか否か、つまり、
サブ設備[Smax]からサブ設備[Smax−1]に1つ以
上のタスクグループが移動されたか否かを判断する(S
507)。その結果、減少している場合には、まだ最適
化の余地が残されていると判断し、再び、同様の最適化
(S500〜S507)を繰り返し、そうでない場合に
は、これ以上の最適化は困難であると判断し、終了する
(S507)。
存在する場合には、移動対象の選択について自由度があ
るので、計算時間の許される範囲で、移動させるタスク
グループの組合せを各種試みることとする。このように
して、最小タクトのサブ設備と最大タクトのサブ設備間
において、タスクグループの移動を順次試みることで、
最大タクト(ラインタクト)の減少化、つまり、ライン
バランスの最適化が実現される。
BM部315cは、第2LBM部315bにより最適化
された状態(タスクグループの振り分け)に対して、部
品種(部品テープ)を単位として、第2LBM部315
bと同様の手順でラインバランスの最適化を行う。つま
り、第2LBM部315bは、タスクグループを単位と
して、隣接するサブ設備間を移動させたが(S503、
S505)、第3LBM部315cは、タスクグループ
に代えて、各タスクグループを構成する部品種(部品テ
ープ)を単位として、サブ設備間を移動させる。したが
って、2つのサブ設備間でのタクトの増減の刻みは、第
2LBM部315bによる場合よりも小さくなり、より
きめ細かい最適化が行われる。これによって、ラインタ
クトLTがさらに減少され得る。
aによる小部品の実装順序最適化の概略手順を示すフロ
ーチャートであり、2つの大きなステップからなる。
実装部品を対象として、吸着パターンを生成する(S5
20)。これは、部品種(部品テープ)を単位とした配
列、即ち、部品カセット114の並び(Z軸)を決定す
ることに相当する。ここで、「吸着パターン」とは、図
20に示されるような2次元のダイヤグラムであり、縦
軸をマルチ装着ヘッド112による部品の吸着順とし、
横軸を部品カセット114(部品テープ)の配列(Z
軸)とした場合における、マルチ装着ヘッド112が同
時に吸着する1組以上の部品群を示す。吸着の対象とな
る個々の部品(実装点)は単位矩形(正方形又は長方
形)で示される。
め、4ノズルヘッドを対象とした吸着パターンが示され
ており、最大4個の単位矩形が横に繋がったものが実装
(吸着・移動・装着)の1回分(つまり、タスク)に相
当し、丸で囲まれた一繋がりのタスクの集合がタスクグ
ループに相当する。したがって、本図には、合計3つの
独立したタスクグループが示されている。
装着ヘッドができるだけ多くの部品を同時吸着すること
ができるように、部品テープの相対的な配列を決定する
作業にに相当し、言い換えると、全ての部品テープを、
互いに独立した複数の配列グループ(タスクグループ)
に分割することに相当する。次に、小部品最適化部31
6aは、図19に示されるように、上記ステップS52
0で決定されたタスクグループ(配列が固定された部品
テープ群)ごとに、その総タクトが小さくなるように、
各部品テープを構成する部品の装着順序を決定する(S
521)。これは、同一の部品カセット114から取り
出した(吸着した)部品であっても、どの実装点に装着
するかによって、同一タスクにおける直前の実装点から
の距離が異なるので、装着時におけるマルチ装着ヘッド
112の移動距離(実装時間)を短縮化することに相当
する。
の第1の具体的なアルゴリズムが「タスクグループ生成
法」である。
2倍以下)の個数の部品種(部品テープ)の並びからな
るタスクグループの生成を繰り返していく手法であり、
基本的には、以下の2つの大きなステップ(第1及び第
2ステップ)からなる。なお、図21は、これら第1及
び第2ステップを説明するための図であり、部品ヒスト
グラム406aは、対象となる部品を部品数の多い部品
テープの順に並べた(ソートした)部品ヒストグラムで
あり、ダイヤグラム406bは、これら第1及び第2ス
テップによって生成される吸着パターンである。
半処理、つまり、部品数の多い部品テープの順に右方向
(Z軸方向)に部品ヒストグラムを並べる。具体的に
は、 (i)まだ配置されていない部品テープの中で部品数が最
大の部品テープ(1部品テープ)をZ軸上に置く。
プ(2部品テープ)を置く。 (iii)2部品テープの右隣に3番目の部品数の部品テー
プ(3部品テープ)を置く。 (iv)以下、これをマルチ装着ヘッド112の吸着ノズル
数L(ここでは「4」)まで繰り返す。 この結果、部品ヒストグラム406aから4つの部品テ
ープ400が取り出され、ダイヤグラム406bに示さ
れる箇所400に配置される。
に対して、同時吸着数がLに満たないタスクの同時吸着
数がLとなるように、左方向に部品ヒストグラムを配置
していく。具体的には、 (i)1部品テープの部品数からL部品テープの部品数を
引く。
部品数差に最も近い部品数を持つ部品テープ(L+1部
品テープ)を1部品テープの左隣に置く。 (iii)2部品テープから(L−1)部品テープの部品数
を引く。 (iv)その部品数差以下であって、その部品数に最も近い
部品数を持つ部品テープを(L+1)部品テープの左隣
に置く。
品テープ401a及び401bが取り出され、ダイヤグ
ラム406bに示される箇所401に配置される。これ
によって、部品テープ400及び部品テープ401から
なる1つの吸着パターンが完成する。これによって、こ
れら6種の部品テープからなるタスクグループについ
て、相対的なZ軸が決定されたことになる。
グループの生成を、対象の部品テープが無くなるまで繰
り返す。ここで、もし、上記第2ステップの条件を満た
す未配置の部品テープが無くなってしまった場合には、
上記第1及び第2ステップに代えて、以下の3つのステ
ップ(第3〜第5ステップ)を実行する。図22は、こ
れら第3〜第5ステップを説明するための図であり、部
品ヒストグラム415aは、全体の部品ヒストグラムの
うち未配置の部分(実線で囲まれた部分)を示し、ダイ
ヤグラム415bは、これら第3〜第5ステップによっ
て生成される吸着パターンを示す。
て部分ヒストグラムを生成する。具体的には、 (i)まだ配置されていない部品テープの部品数の最小値
を求める。 (ii)まだ配置されていない部品テープそれぞれの部品数
から(最小値−1)を引く。
ヒストグラムにおける部品数は、太い実線で囲まれた部
品ヒストグラム415aとなり、以下、この部品ヒスト
グラム415aにおける部品数を用いて、以下の第4及
び第5ステップを進める。 [第4ステップ] このステップは、上述の第1ステップに相当する。具体
的には、 (i)まだ配置されていない部品テープの中で部品数最大
の部品テープ(1部品テープ)をZ軸上に置く。
プ(2部品テープ)を置く。 (iii)2部品テープの右隣に3番目の部品数の部品テー
プ(3部品テープ)を置く。 (iv)以下、これをマルチ装着ヘッド112の吸着ノズル
数L(ここでは「3」)まで繰り返す。 この結果、部品ヒストグラム415aから3つの部品テ
ープ410が取り出され、ダイヤグラム415bに示さ
れる箇所410に配置される。
的には、 (i)1部品テープの部品数から、(L部品テープの部品
数−1)の値を引く。 (ii)その部品数差以下であって、その部品数差に最も近
い部品数を持つ部品テープ(L+1部品テープ)を1部
品テープの左隣に置く。
ープの部品数を引く。 (iv)その部品数差以下であって、その部品数差に最も近
い部品テープを(L+1)部品テープの左隣に置く。 (v)以下、これをL回繰り返す。 この結果、部品ヒストグラム415aにおける3つの部
品テープ411が取り出され、ダイヤグラム415bに
示される箇所411に配置される。これによって、部品
テープ410及び部品テープ411からなる1つの吸着
パターンが完成する。これによって、上記第1及び第2
ステップで取り残された部品テープ、つまり、部品数の
差が小さい部品テープについても、同時吸着が可能なタ
スクの集まりからなるタスクグループが生成され、それ
らの部品テープについて相対的なZ軸が決定されたこと
になる。
の第2の具体的なアルゴリズムが「刈り上げ法」であ
る。この処理は、図14のステップS320a〜dに相
当する。
に並べた部品ヒストグラムをそのままZ軸に配置するこ
とを基本とし、最大個数(L個)の部品を同時吸着する
ことができない箇所についてだけ、上述の吸着パターン
生成法を適用する手法であり、以下の2つの大きなステ
ップ(第1及び第2ステップ)からなる。 [第1ステップ] このステップでは、部品ヒストグラムから、L個の部品
並びからなるタスクを取り出することを繰り返す(刈り
上げていく)。
第1ステップを説明するための図であり、図23は、実
装の対象となる全ての部品を部品数の多い部品テープの
順に並べた部品ヒストグラム450であり、図24は、
図23の部品ヒストグラム450から、L個(ここで
は、10個)の部品並び(最大個数の部品を同時吸着し
た場合のタスク)の単位で部品を取っていく(刈り上げ
ていく)様子を示す図である。これらの図23及び図2
4は、それぞれ、図14のステップS320a、bに相
当する。
テープが先に無くなるように、つまり、部品ヒストグラ
ムにおける右端の部品テープから部品が無くなっていく
ように、L個の部品並び(〇、△及び×のいずれかを含
む10個の矩形並び)を取り除いていく。これを、L個
の部品並びの単位で取る除くことができなくなるまで繰
り返す。 [第2ステップ] このステップでは、上述の刈り上げ後における残り部品
からなる部品ヒストグラムに対して、上述のタスクグル
ープ生成法に準じたダイヤグラムを生成する。
第2ステップを説明するための図であり、図25は、第
1ステップでの刈り上げ後に残された部品を対象とし
て、部品数の多い順に再構築された部品ヒストグラム4
51であり、図26は、再構築された部品ヒストグラム
451に対して、上述のタスクグループ生成法に準じた
ダイヤグラムの生成を行っている様子を示す図である。
これらの図25及び図26は、図14のステップS32
0dに相当する。
1の幅(部品テープの数)は、上記第1ステップの処理
内容より、必ず、(L−1)以下となる。この第2ステ
ップでは、具体的には、以下の処理を行う。 (i)刈り上げ後に残った部品について、図25に示され
た部品ヒストグラム451を生成するとともに、合計部
品数(ここでは、100個)を算出する。
10)で割り、得られた値(ここでは、10)をタスク
数とする吸着パターンの作成を目指す。 (iii)そのために、図26に示されるように、得られた
タスク数(10)よりも大きな部品数を持つ部品テープ
について、その超過分451aの部品(又は、超過部分
の部品を分割したもの)だけ切り取り、部品ヒストグラ
ム451の左側に補完して置いていく。
よる刈り上げ法によってZ軸が決定された部品テープに
ついての吸着パターン452である。この図に示される
ように、全ての部品は、最大個数(10個)の部品が同
時吸着されるタスクだけから構成され、最大の同時吸着
率で効率よく実装され得る。図28は、図27に示され
た吸着パターン452に対応する(Z軸を変化させない
再構築した)部品ヒストグラム453である。
に、刈り上げ法によれば、部品数の多い部品テープが左
位置に配列されるという傾向が維持される。このこと
は、刈り上げ法が、マルチ装着ヘッド112の移動軌跡
(右ブロック115bに対しては、部品を吸着した後
に、必ず、右ブロック115bの左端に置かれた2次元
カメラの前を通過すること)を考慮した(総移動距離を
小さくする、即ち、総タクトを小さくする)部品配置の
決定方法であることを意味する。
述の処理において、Z軸方向に対称な処理を施せばよ
い。つまり、部品数の小さい順に部品テープを並べた後
に、同様の手順でタスクを刈り上げていくことで、ダイ
ヤグラムを生成すればよい。
第1の具体的なアルゴリズムがランダム選択法である。
この処理は、図14のステップS320eに相当する。
て、ランダムに選択した2つの実装点を入れ替えた場合
の総タクトが小さくなるならば、それら2つの実装点を
入れ替える、という処理を繰り返す貪欲的な手法であ
る。図29は、ランダム選択法による部品の装着順序の
最適化の手順を示すフローチャートであり、図30は、
ランダム選択法によって2つの実装点が入れ替えられる
様子を示すである。
態での総タクトを算出する(S530)。なお、ここで
の状態は、1つのタスクグループを構成する全ての部品
(実装点)について実装順序が一定のパターンに定めら
れた状態である。したがって、一つの状態に対する総タ
クトは、データベース部307に記憶された情報307
a〜cから一義的に決定される。次に、それら全ての実
装点の中からランダムに2つを選択し(S531)、選
択した2つの実装点の順序を入れ替えた場合の総タクト
(仮タクト)を算出する(S532)。図30には、実
装点B2とB4とが入れ替えられた場合の状態例が示さ
れている。
の状態におけるタクトよりも小さいか否か判断する(S
533)。その結果、小さい場合には、それら2つの実
装点の入れ替えを実施する(S534)。つまり、現在
の状態と総タクトについて、それら実装点を入れ替えた
場合のものに更新して記憶する。そして、その時点での
終了条件(その状態でのタクトが操作者によって予め指
定された目標タクトよりも小さいか、又は、一定の処理
時間に達した等)を満たすか否か判断し(S535)、
満たす場合に処理を終了する。
タクトが小さくならない場合(S533でNo)、及
び、終了条件を満たさない場合(S535でNo)に
は、終了条件が満たされるまで、再び、同様の処理を繰
り返す(S531〜S533〜S535)。このように
して、ランダム選択法により、費やした実行時間に応じ
て、タスクグループごとのタクトが小さくなり、部品実
装順序が最適化され。
第2の具体的なアルゴリズムが交差解消法である。この
処理は、図14のステップS324に相当する。
ンダムに選択するのではなく、一定の基準、即ち、タス
クごとの実装点を直線で接続して得られる折れ線(パ
ス)どうしの交差があればそれを解消するという基準を
満たす実装点を選択して入れ替える手法である。図31
は、5個の実装点からなる3つのタスク455a〜cに
ついて、交差解消法により部品の装着順序を最適化する
様子を示す図であり、ダイヤグラム457は、折れ線の
交差が解消される前の装着順序(タスクごとの折れ線の
分布)を示し、ダイヤグラム458は、折れ線の交差が
解消された後の装着順序を示す。なお、同一部品種(部
品テープ)の実装点は、同一模様の丸印で示されてい
る。
ベース部307の実装点データ307a等を参照するこ
とによって、初期状態における全ての交差を特定する。
ただし、ここでの交差は、同一タスクに属する連続して
装着する2つの実装点を結ぶ線分と、他のタスクに属す
る同様の線分との交差であって、それら線分の両端の実
装点に用いられる部品の部品種(部品テープ)がそれら
線分同士で同一であるものに限られる。
次、交差を解消するように線分の接続を変更する。な
お、解消の前後において、各線分の両端に位置する部品
の部品種は変更されないので、この線分の接続変更は一
義的に定まり、かつ、その接続変更によって各タスクを
構成する部品種の並びが変化することはない。このよう
な交差解消法によって、タスク間におけるマルチ装着ヘ
ッド112の無駄な移動が解消される。つまり、一つの
部品を装着した後に移動すべき実装点は、マルチ装着ヘ
ッド112の移動に伴う無駄なタクトの増加が抑えられ
た部品の実装順序が決定される。
第3の具体的なアルゴリズムが戻り最適化法である。こ
の処理は、図14のステップS325に相当する。
て、1つのタスクの部品装着を完了した後に、次のタス
クの部品を吸着するために移動するマルチ装着ヘッド1
12の戻り軌跡に着目し、そのタスクグループを構成す
るタスクの並び(タスク単位での順序)を最適化する手
法である。図32は、戻り最適化法によりタスクの順序
を最適化する手順を説明するための図である。ここに
は、Z軸における部品供給部115a及びbそれぞれに
10個のタスクが配置されている場合における基板と部
品供給部間を行き来するマルチ装着ヘッド112の移動
軌跡(実装経路)が矢印線で示されている。
の代表的な位置を示す。つまり、基板上の丸印は、1つ
のタスクにおいて最後の部品を装着し終えた直後のマル
チ装着ヘッド112の位置(最終実装点)を示し、Z軸
における丸印は、20個のタスクそれぞれにおいて最初
に部品を吸着するときのマルチ装着ヘッド112の位置
(以下、「吸着位置」という。)を示す。なお、丸印に
付された数値は、各吸着位置(タスク)を区別する番号
である。
のルールに従って、実装経路を描く。 (i)各タスクの最終実装点から最短距離にある吸着位置
に戻る、つまり、戻り軌跡を最小にする。 (ii)1番吸着位置を始点にして実装経路を順次描いてい
く。なお、1つの吸着位置は1つのタスクに相当するの
で、その吸着位置に対応する最終実装点は一義的に特定
される。図32では、1→5→14→2→8→3→17
→12→16→1の順で吸着位置と最終実装点とを接続
する実装経路が描かれる。
戻ったら、それを最短巡回部分経路1とする。 (iv)次に、これまで見つかった最短巡回部分経路に含ま
れない吸着位置を探す。図32では、4番吸着位置が見
つけられる。 (v)上記(ii)に戻り、未だ使用されていない吸着位置が
無くなるまで、繰り返す。図32では、5つの最短巡回
部分経路が描かれている。
着位置から開始した場合における、マルチ装着ヘッド1
12の戻り軌跡が最短となるような吸着位置の順序、即
ち、タスクの順序が決定されたことになる。 [第2ステップ] 次に、第1ステップで描かれた全ての最短巡回部分経路
それぞれにおいて、どの吸着位置から開始すればよいか
を特定する。具体的には、1つの最短巡回部分経路に属
する全ての部品の実装を終えてから次の最短巡回部分経
路を開始するのに移動させるマルチ装着ヘッド112の
戻り軌跡が最短となるように、各最短巡回部分経路にお
ける最初の吸着位置及びそれら最短巡回部分経路の順序
を決定する。
成する全てのタスクを対象として、タスク間におけるマ
ルチ装着ヘッド112の戻り軌跡が短くなるように、タ
スクの実行順序が決定されたことになる。なお、図32
は、20個の吸着位置が異なる位置となるタスクグルー
プにおける実装経路であったが、図33に示されるよう
に、同一位置の複数の吸着位置が含まれるタスクグルー
プについても同様の最適化をすることができる。このと
きには、同一位置の吸着位置に対応する最終実装点の選
択において自由度があるので、複数の選択パターンに対
応するタスクグループの総タクトを算出し、それらの中
からタクトが最小となる最終実装点を選択し、最短巡回
部分経路を作成すればよい。
消法によって、タスクの形を変えずに、(i)タスク内の
実装順序の最適化、及び、(ii)全タスクを考慮した実装
順序の最適化が行われ、一方、戻り最適化法によって、
全てのタスクがフィックスされた後に(つまり、各タス
クのメンバが決まった状態で)、タスクの順序について
の最適化が行われる。
供給形態(テープ、トレイ)がバラエティに富んでお
り、タスクを生成するときに、いろいろな部品の組み合
わせが可能である。ここでは、タスクの状態を効率的に
変化させながら、最適な状態を探索するという手法を採
用している。この処理は、図14のステップS321に
相当する。
あり、このため、部品実装機100の動作時間を正確に
シミュレートする装着時間シミュレートを搭載してい
る。汎用部品に最適化アルゴリズムは以下の通りであ
る。 (1)ループ回数の設定 現実問題として、全ての組み合わせを評価することはで
きないので、予め終了条件を設定しておく。所定のルー
プ回数処理を続けても装着時間が減少しない場合、最適
化処理を終了することにしている。 (2)初期状態の生成 まず、全ての汎用部品を対象として初期状態を生成す
る。初期状態は、汎用部品の全ての実装点をタスク単位
でまとめたものであり、部品実装機100の制約条件の
全てを満たしていれば、どのような状態でもかまわな
い。 (3)状態の変化 タスクの状態を変化させながら最適なタスクの状態を探
索する。状態を変化させるための手続としては、 ・別々のタスクに存在する2つの実装点を入れ替える、 ・同一タスク内の2つの実装点の実装順序を入れ替え
る、 ・2つの部品テープを入れ替える、 等がある。ここでは、タスクの状態を柔軟に変化させる
ために、空の実装点との入替えも可能にしている。たと
えば、あるタスクの実装点を余裕があるタスクへ移動す
る処理は、前者の実装点と後者の実装点との入替えにな
る。この処理を繰り返すと、タスク数を減らすことがで
きる。
時間が減少するかどうかで判断するが、常に装着時間減
少する状態を採用していると、ローカル・ミニマムに捕
まってしまう。そこで、ある確率で装着時間が増加する
状態を採用するようにしている。以下、汎用部品に対す
る最適化の具体的な内容を説明する。図34(a)は、
汎用部品最適化部316bによる汎用部品の実装順序を
最適化する際の手順を示すフローチャートであり、図3
4(b)は、その最適化による最適解の探索アプローチ
を説明するための図(とり得る全ての状態それぞれのタ
クトを示す図)である。
最適化部316bは、部品グループG[6]〜G[9]に属す
る全ての部品(汎用部品)を対象として、初期状態Xを
生成した後に(S550)、初期状態Xに対して、山登
り法による最適化を最適化エンジン部316cに実行さ
せることによって、最適状態Xoptを求めた後に(S5
51)、初期状態Xに対して、マルチカノニカル法によ
る最適化を最適化エンジン部316cに実行させること
によって、上記ステップS551で求められた最適状態
Xoptを更新し(S552)、最後に、更新された最適
状態Xoptに対して、再び、山登り法による最適化を最
適化エンジン部316cに実行させることによって、上
記ステップS552で得られた最適状態Xoptを更新す
る(S553)。
る山登り法による最適化(S551、S553)の途中
過程に、グローバルな始点で最適解を探索するマルチカ
ノニカル法による最適化(S552)が挿入されている
ので、局所的には最適状態であるがグローバル的には最
適状態でない状態(図34(b)に示される状態1)等)
の探索で終わってしまうことが回避され、グローバルな
最適状態(図34(b)に示される状態5))が求められ
る。
法による最適化(S551、S553)の詳細な手順を
示すフローチャートである。つまり、初期状態Xや終了
条件等についての通知を受けた最適化エンジン部316
cは、その初期状態Xを生成した後に(S560)、外
部ループ終了条件が満たされるまで(S561)、内部
ループを繰り返す(S562〜S568)。ここで、外
部ループ終了条件とは、それ以上の最適解が存在しない
ことを確認するための条件であり、例えば、状態変化を
起こす全ての種類のパラメータを変化させた(探索し
た)こと等であり、内部ループ終了条件とは、1つの種
類のパラメータについて、一定範囲の変化をさせた(探
索した)こと等である。
16cは、まず、後述する9種類の状態変更から汎用部
品最適化部316bが選択した1つを用いて、状態候補
Xtmpを生成し(S563、S564)、その候補状態
Xtmpが、後述するフィージビリティ(実現可能性)を
有し(S565)、かつ、その候補状態Xtmpのタクトが
直前の状態のタクトよりも小さい場合に(S566、S
567)、それら状態とタクトを更新する(S56
8)。
的に得られる。図36は、図34(a)に示されたマル
チカノニカル法による最適化(S552)の詳細な手順
を示すフローチャートである。本図において、ビン番号
は、例えば、図34(b)に示された横軸(とり得る状
態の全て)をN個に均等分割して得られる各区間(ビ
ン)を示す番号であり、ヒストグラムH[i]は、ビン番
号iのビンに属する候補状態Xtmpが選択され(S57
6、S577)、その候補状態Xtmpが実現可能性を有
し(S578)、かつ、エントロピーを減少させる状態
であると判断された(S579〜S581)総回数を記
憶する変数である。本図に示されたフローチャートと図
35に示された山登り法によるものとを比較して分かる
ように、状態Xをベースに状態候補Xtmpを生成し、そ
れを受理するかどうかを決定するという一連の処理を繰
り返す点で、これらの処理は共通する。異なる点は、受
理決定の方法であり、図35に示された山登り法では、
状態候補Xtmpのタクトの方が状態Xよりも小さい場合
に(確定的に)受理しているのに対し、図36に示され
たマルチカノニカル法では、タクトにおけるエントロピ
ーを参照して状態候補Xtmpを確率的に受理しているこ
とである(S580〜S582)。
ーチャートにおける9種類の状態変更と実現可能性の詳
細を説明するために、まず、汎用部品最適化部316b
が用いている中間表現について説明する。汎用部品最適
化部316bは、最適化を容易にするために、Z軸配列
の中間表現として以下の3種類を導入し、それらの表現
を用いて状態を記憶したり、最適化エンジン部316c
に指示したりする。
[i](i=1,...,L)をZ軸に配置する際の優先順序を指定す
る変数であり、優先順序番号1〜Lを値にとる。i!=
jの場合、Gorder[i]!=Gorder[j]となる。 (ii)block[i](i=1,...,L) タスクグループTG[i](i=1,...,L)を左・右のZブロッ
ク(部品供給部115a及びb)のどちらに配置するか
を指定する変数であり、"左"又は"右"のシンボル値をと
る。
j(=1,...,M[i])のZ軸における配置順序を指定する数
であり、順序番号1〜M[i]を値にとる。j!=kの場
合、Corder[i][j]!=Corder[i][k]である。なお、C
order[i][j]<Corder[i][k]の場合、「部品テープjの
Z番号<部品テープkのZ番号」なる関係を持ってい
る。
いる中間表現の例を示す。テーブル460は、汎用部品
最適化部316bが用いている中間表現の具体例を示
し、テーブル461〜464は、テーブル460に示さ
れた中間表現の意味(Z軸配列への変換)を示す。テー
ブル460に示された中間表現が示すZ軸配列は、具体
的には、以下の変換を経ることによって特定される。
決定において最優先するタスクグループTG[2]を配置
する(テーブル461)。このTG[2]は、block[2]="
右"であるため、右ブロックの部品認識カメラ116寄
り左詰で配置される。その際、TG[2]に属している計
M[i=2]=6つの部品テープj(i=1,...,6)を収納してい
る部品カセット114は、Corder[i=2][j]の若いもの
が左になるように、右ブロックの部品認識カメラ寄り左
詰で配置される。
置する(テーブル462)。block[4]="左"であるた
め、左ブロックの部品認識カメラ寄り右詰で配置され
る。その際、計M[i=4]=3つの部品テープj(i=1,...,
3)を収納している部品カセット114は、Corder[i=2]
[j]の若いものが左になるように、部品認識カメラ寄り
右詰で配置される。同様に、Gorder[i]=3であるTG
[3]、Gorder[i]=4であるTG[1]の順で配置すればよ
い(テーブル463、464)。
択(図35におけるステップS564、図36における
ステップS577)の対象となる9種類の状態変更を示
す。以下の通りである。 (1)同一汎用部品グループの2実装点をランダムに選
択し、それらのタスク番号とヘッド番号(マルチ装着ヘ
ッド112における吸着ノズル112a〜112bの位
置)をスワップする。 (2)同一タスク内の2実装点をランダムに選択し、そ
れらの実装順序をスワップする。 (3)2タスクグループ(2汎用部品グループ)をラン
ダムに選択し、それらのGorderをスワップする。 (4)1タスクグループ(1汎用部品グループ)をラン
ダムに選択し、そのblockの値("左"又は"右")を変更
する。 (5)同一タスクグループの2部品テープをランダムに
選択し、それらのCorderをスワップする。 (6)同一タスクグループにおいて、連続したCorder
部分区間をランダムに選択し、シフトする。 (7)同一タスクグループにおいて、連続したCorder
部分区間をランダムに選択し、対応する部品テープが実
装点の平均X座標値に従ってZ軸に配置されるようにC
orderを変更する。 (8)1タスクをランダムに選択し、当該タスクの実装
点のZ番号に基づいてヘッド番号を変更する。 (9)シャトル運用可能なトレイ部品の運用モード(ダ
イレクトモード、シャトルモード)をランダムに変更す
る。
は、トレイ供給部117が内蔵するエレベータ(複数の
段を持つ)を用いてトレイ部品を供給する(マルチ装着
ヘッド112が吸着できる位置まで移動させて置く)と
きの方式であり、「ダイレクトモード」は、部品が載せ
られた1つのトレイごと直接差し出す方式であり、「シ
ャトルモード」は、シャトルコンベヤ118を用いた往
復移動によって複数のトレイから取り出して集めた複数
の部品を1列に並べて差し出す方式である。これらの運
用モードについての各種情報は、実装装置情報307c
に含まれており、必要な部品を所定位置に移動させるの
に要する時間等に影響を与える。
現可能性のチェック(図35におけるステップS56
5、図36におけるステップS578)については、以
下の5つのチェック項目が同時に満たされている場合に
のみ、状態Xtmpが可能解とみなされる。 (1)各タスクにおいて、ダイレクトモードの実装点の
Z番号が同じ段であること。つまり、ダイレクトモード
では、一つの段に置かれたトレイ部品だけが同時に供給
され得ることを考慮する。 (2)各タスクにおいて、吸着時の部品点間に干渉がな
いこと。つまり、隣接して吸着される2つの部品の形状
によっては、部品どうしが接触してしまうので、それを
回避することを考慮する。 (3)各タスクにおいて、実装点が吸着可能であること
(実装点のヘッド番号とZ番号との組が適切であるこ
と)。つまり、マルチ装着ヘッド112に装着された吸
着ノズルのいずれもが、96個の部品カセット114の
いずれの位置にも移動できる(部品を吸着できる)とは
限らないことを考慮する。 (4)各タスクにおいて、実装点が装着可能であること
(実装点のヘッド番号と座標値との組が適切であるこ
と)。マルチ装着ヘッド112を構成する全ての吸着ノ
ズルが基板上のあらゆる箇所に移動できるとは限らない
ことを考慮する。 (5)全タスクグループの全タスクの吸着ノズルパター
ンが実現可能なようにノズルステーション119におけ
る吸着ノズルの配列を決定できること。つまり、ノズル
ステーション119に配置しておくことができる交換用
の吸着ノズルの配置位置や数等に制限があることを考慮
する。 (6)マルチ装着ヘッド112とZ軸上の部品とが同一
ピッチで並んでいること。つまり、マルチ装着ヘッド1
12が同時吸着できるような部品(又は、部品カセッ
ト)がZ軸に配置されていることを確認する。
は、ローカルな(局所的な)最適化だけでなく、確率的
な探索を混ぜた最適化を行っているので(図34(a)
におけるステップS550〜S553)、ローカルミニ
マムが最適解として算出されてしまう不具合が回避され
る。
さらに詳細な説明をする。つまり、これまで説明してき
た個々の最適化アルゴリズムの詳細な内容や、様々な制
約下における最適化装置300の動作について説明す
る。
欠点を補うアルゴリズムである(図14のステップS3
20a〜d)。以下、「刈り上げ法」の詳細について、
「タスクグループ生成法」における課題を明らかにしな
がら、説明する。
概要 「タスクグループ生成法」における小部品用最適化アル
ゴリズムの基本的な考え方は、図38に示される通りで
あり、ヘッドの上のノズル数をnとして、対象の全ての
実装部品に対して、「部品数が同じ部品テープをn本集
め、それらn本の部品テープから1点ずつ同時に吸着し、
n点同時吸着タスクを作る」というものである。本実施
の形態における対象の部品実装機では、nは10(又
は、4)である。
るための部品ヒストグラムであり、横軸はZ軸(部品カ
セット、部品種)を示し、縦軸は、その部品種に属する
部品の総数を示す。ところが、上述のアルゴリズムで
は、実際には部品数が同じ部品テープばかりではないの
で、部品分割によって、部品数が同じ部品テープを作り
出すようにしている。そのようにしても、集められたn
本の部品テープの部品数が不揃いになる場合には(図3
8における部品A〜J)、そのばらつきを埋め合わせる
部品テープを作り、そのn本の部品テープに追加する。
追加する部品テープは、最大で(n-1)本である(図38
における左部分506)。
テープの集合を「タスクグループ」としている(それら
の部品テープから部品を吸着してタスクを生成するの
で、生成されるタスクの集合に着目した命名になってい
る)。通常、複数個のタスクグループが生成される。タ
スクグループ数は部品種の総数に依存する。タスクグル
ープが1つだけの場合もある。
ープの単位で行う。
課題 「タスクグループ生成法」のアルゴリズムでは、次のよ
うな課題がある。 (1)タスクグループ単位でZ軸に配置するので、Z軸の空
きが最小でも10以上でないと、タスクグループを配置す
ることができない。そのため、Z軸に未使用の部分が生
じることがある。 (2)タスクグループの配置の自由度が低く、前サブ設備
110と後サブ設備120との間での部品種(部品テー
プ、カセット)を移動しにくいため、前サブ設備110
と後サブ設備120の実装時間のバランスを調整しにく
くなっていた。 (3)タスクグループ毎に部品分割を行い、部品分割によ
り生じた部品テープを収めるカセットを使用するので、
全タスクグループを考えると、部品分割のために使用す
るカセットが多く必要となる傾向がある。
する部品テープの本数(10ノズルヘッドであれば、10〜
19本)と、Z軸上に配置できる部品テープの本数(シン
グルカセットで最大48本、ダブルカセットで最大96本)
が同程度のオーダーになっていることに起因する。その
ため、タスクグループをZ軸に配置する際の自由度が低
くなっている。たとえば、Z軸上に配置できる部品テー
プの最大本数が、タスクグループを構成する部品テープ
本数の10倍程度であれば、自由度の低さは低減されると
考えられる。
14のステップS320a)、「刈り上げ処理」(図1
4のステップS320c)、「コア処理」(図14のス
テップS320d)の3つの処理から構成されている。
これらの処理は、「タスクグループ生成法」における課
題を踏まえて、考案したものである。以下の説明では、
ヘッドの上のノズル数をnとする。 (1)部品ヒストグラム作成処理(図14のステップS3
20a)部品ヒストグラム作成処理は、部品テープを部
品数の大きい順に並べたヒスグラム(部品ヒストグラ
ム)を作成する処理であり、部品ヒストグラムは「刈り
上げ処理」の前提となる。
プは、タスクグループという複数のグループに分かれる
の対して、「刈り上げ法」では、部品テープは、部品ヒ
ストグラムという1つのグループになっている点が異な
る。部品ヒストグラムを部品テープ単位で分割し、分割
されたものを前サブ設備110と後サブ設備120に配
置することができるので、「タスクグループ生成法」と
比較して、小さな単位での部品移動が可能となってい
る。 (2)刈り上げ処理(図14のステップS320c) 刈り上げ処理は、部品ヒストグラムから吸着パターンを
生成する処理であり、部品ヒストグラムの部品数の残数
の少ない側からn本の部品テープについて、各1個ずつ実
装点を吸着し、n点同時吸着の吸着パターンを生成する
ことを基本とする。
が残っている部品テープが存在する。この部品テープを
「コア部品テープ」と呼ぶ。また、コア部品テープが収
められている部品カセットを「コアカセット」と呼ぶ。
コア部品テープの本数は、初期の部品ヒストグラムを構
成する部品テープ数が何本であっても、必ず(n-1)本以
下になる。
ムを構成する全部品テープに対して、部品分割を行い、
n点同時吸着タスクを生成するという問題」を、「コア
部品テープだけに対して、部品分割を行い、n点同時吸
着タスクを生成するという問題」に縮小できることであ
る。部品ヒストグラムのコア部品テープ以外の部分につ
いては、既にn点同時吸着が実現されているので、コア
部品テープについてのみ、n点同時吸着の吸着パターン
が実現できるように、部品分割を行えばよく、この処理
を「コア処理」と呼ぶ。 (3)コア処理(図14のステップS320d) 「コア処理」は、「タスクグループ生成法」において
「n点同時吸着を実現するために、実装点の不足分を補
完する部品テープを作る」というアイデアを発展させた
ものである。
実装点の不足分を補完する部品テープ(補完部品テー
プ)の本数は、(n-1)〜1本となる。「タスクグループ生
成法」では、タスクグループ毎に補完部品テープが必要
である。一方、「刈り上げ法」では、部品テープのグル
ープは1つしかなく、さらに、それに対して最大(n-1)
本の補完部品テープしか必要としないので、「タスクグ
ループ生成法」よりも使用するカセット本数が少なくて
すむ。
ープを最大分割数で部品分割した際に、最も部品数が多
くなる部品テープを求め、その部品数と同数のn点同時
吸着の吸着パターンを生成する。それに対して、「コア
処理」では、コア部品テープの部品数の合計を求め、そ
れをnで割り算した値から、n点同時吸着の吸着パターン
の個数を見積もる。
の最適化 次に、以上のような利点をもつ「刈り上げ法」を用いた
典型的な小部品の最適化処理を説明する。
最適化処理(図14のステップS320に相当)のフロ
ー図である。小部品を最適化するための指標の一つは、
部品吸着時におけるマルチ装着ヘッド112の吸着上下
動作の回数(以下、「吸着上下回数」と呼ぶ。)を最小
化することと、部品装着時のヘッド移動距離を最小にす
ることである。すなわち、10点同時吸着を最大にする
部品吸着パターンの決定(S331)と、マルチ装着ヘ
ッド112の移動距離を最小にする実装点データの割当
て(S335)である。 (1)部品吸着パターンの決定(図39のS331) 部品吸着パターンを決定することは、部品テープの並び
とマルチ装着ヘッド112による吸着順序とを決定する
こと、即ち、対象となる部品テープをどのような順序で
部品供給部115a及びbに並べてセットしておけばよ
いか、さらに、セットされた部品テープ群に対してどの
ような順序でマルチ装着ヘッド112が吸着すればよい
かを決定することである。 (i)部品ヒストグラムの作成(図39のS332) 各電子部品を部品数でソーティングし、部品ヒストグラ
ムを作成する。横軸は部品テープの並び(「Z配列」)
であり、このヒストグラムは部品が部品供給部115a
及びbにセットされたイメージを表している。小部品
は、全て8mmテーピングなので、10点同時吸着が可
能である。したがって、部品ヒストグラムのZ軸方向の
つながりを見れば、同時吸着が可能かどうかを簡単に判
断することができる。図40(a)は、部品テープが2
1、最小部品数が1、最大部品数が15の部品ヒストグ
ラム500を示している。 (ii)刈り上げ処理(図39のS333) 図40(a)に示された部品ヒストグラム500におい
て、部品数の少ない右端からZ軸方向に10個連続で部
品が並んでいる部品を探し出す。この処理は、部品ヒス
トグラム500を、部品10個単位で、下から順に刈り
上げていく処理に相当するので、ここでは「刈り上げ処
理」と呼んでいる。その結果、図40(b)に示される
ように、4つの10点同時吸着タスク500a〜dが生
成される。 (iii)コア処理(図39のS334) 図40(b)に示された部品ヒストグラム500から、
刈り上げられた10点同時吸着タスク500a〜dを取
り除くと、図41に示されるように、裾の狭い部品ヒス
トグラム501が残る。この残された部品ヒストグラム
501を「コア」と呼ぶ。コア501のZ軸方向の広が
りは10未満であるので、そのままでは、コア501か
ら10点同時吸着タスクを生成することができない。そ
こで、コア501を切り崩して10点同時吸着タスクを
生成する「コア処理」を行う。
カウントし、目標を設定する。図41に示された部品ヒ
ストグラム501には、合計36の装着点があるので、
3つの10点同時吸着タスクと1つの6点同時吸着タス
クを作ることにする。図41に示されたコア501に対
して、部品10個単位で刈り上げようとすると、コア5
01の一番下の段で3種類の部品が不足し、下から2番
目の段では、5種類の部品が、下から3段目の段では6
種類の部品が、それぞれ不足する。刈り上げた部品数が
36になるまでコア501を刈り上げると、図41に示
されるパターン501bが完成する。このパターン50
1bに部品を割り当てれば、目標のタスクが生成できる
ことになる。このパターン501bに含まれる部品の個
数は、部品ヒストグラムの5段目から上に存在するパタ
ーン501aの部品の数に等しい。したがって、パター
ン501aの部品を部品テープ類ごとに切り出して、パ
ターン501bに縦方向に埋めてやればよい。
ーン501aに11点の部品を残しているので、4+4
+2+1の小さな縦棒に分割して、パターン501bに
順に埋め込む。部品2、部品3は、分割せずにそのまま
パターン501bに埋め込めばコア処理は完成する。こ
のような刈り上げ処理とコア処理の結果を併せると、部
品ヒストグラムは図42の部品ヒストグラム504のよ
うになる。この部品ヒストグラム504は、刈り上げ処
理で生成されたタスク群503とコア処理で生成された
タスク群502とを併せたものである。この部品ヒスト
グラム504は、理想的な部品吸着パターンであり、7
回の10点同時吸着と1回の6点同時吸着で、全ての部
品が効率よく吸着され得る。 (2)実装点データの割当て(図39のS335) 実装点データの割当ては、部品数の少ない部品を含むタ
スクから始める。図42に示された部品ヒストグラム5
04では、部品数が1の部品21を含むタスクから実装
点を割り当てる。タスク1では、部品15から部品21
までの7つの部品の部品数が1であるので、実装点デー
タは存在しているデータをそのまま割り当てればよい。
部品14は部品数が2であるので、2つのうちのどちら
の実装点データを選ぶかという問題が発生する。この場
合は、既に決定している部品15の実装点装着後、マル
チ装着ヘッド112の移動が最も小さくなる実装点デー
タを選ぶ。
品14を装着ヘッドH3で装着するので、装着ヘッドH
4とH3のオフセットを考慮して実装点を選択しなけれ
ばならない。部品13の実装点選択に関しても、同じ考
え方で行う。例えば、部品14aと部品14bのうち、
部品14aが実装点データに選ばれたなら、部品14a
からの距離を計算して、部品13の実装点を選択する。
以降同様にして、部品12の実装点が選択され、タスク
1の全ての実装点が決定する。
部品種から、タスク(正確には吸着パターン)を生成す
るための処理である。詳細については、下記の個別処理
で説明している通りである。 ・「刈り上げ法」 ・「小部品のタスク生成処理」
ムである。この処理は、図14のステップS324に相
当する。以下、「交差解消法」の詳細について、「貪欲
法」における課題を明らかにしながら、説明する。
装点の間の距離が最小となるように部品種の中から実装
点を選んでいる。距離を計算する際には、ノズル間のピ
ッチを考慮している。この実装点選択方法は、「貪欲(g
reedy)法」に分類される方法である。この処理は、図1
4のステップS320eに相当する。「貪欲法」では、
あるタスクについては実装点間の距離が最小になったと
しても、他のタスクの実装点間の距離を考慮して実装点
を選択しているわけではないので、全タスクについて考
えると、必ずしも最適にはなっていない。
合、特に、図43の上側の実装経路図(タスクごとに、
対応する基板位置に配置された実装点を装着順に線分で
接続した図)に示されるような実装経路の場合が問題と
なる。
3個ある場合を示している。図43において、丸印は実
装点を示し、矢印は実装経路(順序)を示す。実装点の
添え字は部品種を示す。例えば、A1、A2、A3は、部品種
Aに属する3つの実装点である。また、同じ色の矢印で結
ばれている実装点が1つのタスクを構成する。まず、図
43の上側の「交差解消前」の状態では、部品種A1が存
在する実装点から最も近い実装点として、部品種B1が存
在する実装点が選択され、部品種B1に最も近い実装点と
して、部品種C1ではなく、部品種C2が存在する実装点が
選択されている。これは、「貪欲法」では、最も距離の
近い実装点を次に実装するべき実装点として選択するた
めである。さらに、「貪欲法」を繰り返し適用して実装
点を選択していくと、結果として、図43の上側の「交
差解消前」の状態のように、部品種B3が存在する実装点
と、部品種C1が存在する実装点を結ぶ経路が他の実装点
間を結ぶ経路と交差してしまう。
く、図43の下側の「交差解消後」のように、実装経路
が交差しないタスクをつくるはずである。そこで、「貪
欲法」による実装点の選択の後で、経路が交差している
個所を見つけ、それを解消する処理を行えばよい。この
処理が「交差解消法」である。その結果、図43の下側
の「交差解消後」のようになり、交差を解消する前と比
較して、経路の距離の合計が小さくなることが期待でき
る。具体的に、この図43の例では、部品種B1〜B3の中
から、2つを選んで入れ替えることにより、実装経路を
組み換え、それを繰り返すことで、実装経路が短くなる
タスクを作り出すことができる。なお、実際には、ノズ
ル間の間隔を考慮する必要があるが、ここでは考え方を
示すことが目的なので、省略した。「交差解消法」の詳
細は、後述の個別処理で説明している通りである。
で、実装経路が交差している個所を見つけ、それを解消
する処理である。その結果、実装経路の交差を解消する
前と比較して、実装経路の距離の合計が小さくなること
が期待できる。
ている通りである。 ・「交差解消法」
セスを明らかにしながら、説明する。なお、この処理
は、図14のステップS325に相当する。
ロな視点からは、次の3つの行程に分解される。 (1)部品吸着 → 部品認識カメラ (2)認識 → 部品装着 (3)部品装着 → 次の部品吸着 ・・・「戻り」 3.3.2 「戻り」行程の最適化の必要性 まず上記工程(1)については、部品数の多い部品テープ
が部品認識カメラに近いZ軸上に配置されるようにする
ことにより、最適化される。
と考え、最適化の対象としていない。なぜなら、部品認
識カメラと基板の位置は固定であり、装着時のヘッドの
基板上での移動量は、Z軸の長さと比較して、かなり小
さく、すべての実装点が基板の中心に存在すると考えら
れるからである。しかし、上記(3)については、「戻
り」の行程は、上記(2)の距離と同程度であり、最適化
が可能である。つまり、この工程に対して最適化を行う
ことで、実装時間の短縮が期待できる。
ムを考案した。この最適化アルゴリズムの基本的な考え
方は、「あるタスクの最終実装点の座標から、最短距離
で戻ることのできるZ軸上の位置にある、未実装のタス
クを探し、それを次に実装するタスクとする」というこ
とである。たとえば、図において、最終実装点からの距
離を調べると、タスクAよりもタスクBが短いので、次に
実装するべきタスクはタスクBとなる。
の行程に分解される。(1)部品吸着 → 部品認識カメ
ラ (2)認識 → 部品装着 (3)部品装着 → 次の部品吸着 ・・・「戻り」 「戻り最適化法」は、(3)についてのヘッドの移動距離
を最適化するものであり、実装時間の短縮が期待でき
る。詳細については、下記の個別処理で説明している通
りである。 ・「戻り最適化法」
Z番号が指定されている場合がある。これはZ軸上での部
品種の配列を指定するものであり、「配列固定」と呼ば
れている。一方、最適化アルゴリズムでは、Z軸上の部
品テープの配列も最適化対象となるので、ユーザによる
配列固定を考慮した最適化アルゴリズムを実現する必要
がある。しかし、ユーザによる配列固定のバリエーショ
ンは非常に多くなると考えられる。もしも、アルゴリズ
ム設計段階で幾つかの配列固定のバリエーションを想定
し、それらに対応した最適化アルゴリズムを考案できた
としても、想定外の配列固定のバリエーションに対応で
きるとは限らない。なぜなら想定した配列固定のバリエ
ーションに特化したアルゴリズムになってしまう傾向が
あり、想定外の配列固定には効果がない危険性があるか
らである。
定のバリエーションに対応させるように改造することが
できても、それは例外処理的なアルゴリズムの追加とな
るため、プログラムの可読性が低下し、メンテナンス上
で問題となりうる。そこで、最も確実で安全な方法とし
て、図45に示されるように、次のような方法を採用し
た。図45は、配列固定の制約下における最適化の概要
を示す部品ヒストグラムである。 (1)仮のZ軸(仮Z軸)を用意し、配列固定を考慮せずに
仮Z軸上で部品種の配列を最適化する。つまり、理想的
な部品テープの配列を作成する(同時吸着を優先した部
品ヒストグラムを作成する)。 (2)仮Z軸から実際のZ軸(実Z軸)へ部品テープを移動す
る。このとき、配列固定を考慮し、配列固定の対象とな
っている部品テープを先に配置する。 (3)次に、配列固定の対象でない部品テープを仮Z軸から
実Z軸へ移動する。このとき、配列固定された部品テー
プの隙間に配列固定の対象でない部品テープを配置して
いく。
上げ処理により、吸着パターンを生成する。この方法に
よれば、ユーザによって、どのような配列固定がなされ
ても、1つのアルゴリズムで対応できる。また、今回考
案した配列固定のアルゴリズムでは、配列固定がない条
件下でアルゴリズムが生成した理想的な部品テープの配
列を崩す形で、ユーザが指定した配列固定に対応してい
る。
する場合と、配列固定がある部品テープ配列を使用する
場合との実装時間の比較を行うことができる。これは、
配列固定が持つ、機種切り替えの容易さという運用上の
利点と、配列固定がない場合の実装時間の短さを比較
し、それらのトレードオフについて再検討するための情
報をユーザに提供するものである。
ついて、それを配置するZ番号が指定されている。その
ために、最適化アルゴリズムでは、Z軸上の部品テープ
の配列も最適化対象となるので、ユーザによる配列固定
を考慮した最適化アルゴリズムを実現する必要がある。
は、配列固定がない条件下でアルゴリズムが生成した理
想的な部品テープの配列を崩す形で、ユーザが指定した
配列固定に対応している。詳細については、下記の個別
処理で説明している通りである。 ・「全体の流れ(ヒストグラムからスタート)」 ・「カセットブロック内の固定部品と「山」の配置関
係」 ・「配列固定:固定先の使用可否判断」 ・「ダブルカセットの配列固定について」 ・「ダブルカセットの配列固定(補足)」
も搬送方向にサイズが大きい基板である。そのために、
図46に示されるように、LLサイズ基板には、特定のヘ
ッド(ノズル)でしか部品を装着できない実装領域(LL
制約領域)が存在する。
号に配置された部品テープ(カセット)からは、部品を
吸着できない。そこで、図47に示されるように、下記
の2つの方法により、LL制約を回避する。 (1)Z軸上の部品テープの入れ替え (2)吸着方法の変更 上記(1)の処理は、LL制約領域の実装点を実装できるヘ
ッドで吸着できるZ軸の範囲に、LL制約領域の実装点を
含む部品テープを配置する処理である。Z軸上の全てのZ
番号に部品テープが配置されている場合、部品テープの
入れ替えを行う。
存在する実装点を含んだ部品ヒストグラムを仮想的に次
の2つの部品ヒストグラムに分割する。 ・LL制約領域に存在する実装点から構成される部品ヒス
トグラム ・LL制約領域に存在しない実装点から構成される部品ヒ
ストグラム そして、吸着時には、それぞれの部品ヒストグラムを実
装可能なヘッドで刈り上げて、その刈り上げた結果を合
成して、1つのタスクとする。
え (1)ヘッド1〜6は、LL制約領域には、部品を装着できな
い。 (2)ヘッド7〜10は、LL制約領域にも、部品を装着でき
る。 (3)機構上の制約により、各ヘッド毎に吸着できるZの範
囲が制限されている。 (4)Z=1〜11にLL制約領域の実装点を持つ部品テープが存
在すれば、その部品テープを、Z=12〜に存在し、かつ、
LL制約領域の実装点を持たない部品テープと入れ替え
る。
「LL制約領域にない実装点」に分ける。処理の上で扱い
を分けるだけであり、部品分割はしない。 (2)ヘッド1〜6とヘッド7〜10に分割し、仮想的に6ヘッ
ドと4ヘッドの2つを考える。 (3)LL制約領域にない実装点については、6ヘッドで刈り
上げを行い、6点タスクを作る。 (4)LL制約領域にある実装点については、4ヘッドで刈り
上げを行い、4点タスクを作る。 (5)6点タスクと4点タスクを組み合わせて、10点タスク
とする。
軸上の部品テープの入れ替えが必要であり、それらにつ
いて、2案ずつのアルゴリズムを作成した。詳細につい
ては、下記の個別処理で説明している通りである。 ・「LL制約:吸着方法の変更(1)」 LLサイズ基板に対応するため、実装点をLL制約領域に存
在するものと存在しないものにわけ、LL制約領域に存在
する実装点をヘッド7〜10で吸着し、LL制約領域に存
在しない実装点をヘッド1〜6で吸着する。「山」のす
そ野側にある部品テープから順次、部品を吸着するが、
左ブロックであれば、ヘッド1〜6で吸着したZ範囲より
も、Z番号が大きいZから、つまりカメラに近づく方向に
進みながら、ヘッド1〜4で吸着するようにしたもので
ある。右ブロックでも同様である。 ・「LL制約:吸着方法の変更(2)」 LL制約領域に存在しない実装点を、「山」のすそ野側に
ある部品テープから順次、ヘッド1〜6で吸着した後、同
様にLL制約領域に存在する実装点を、実装点を、「山」
のすそ野側にある部品テープから順次、ヘッド1〜6で吸
着する。
(1)」とは異なり、必ずしも、カメラ方向に近づく方
向に進みながら吸着を行うわけではない。 ・「LL制約:Z軸上の部品テープの入れ替え(1)」 Z番号が1〜11の部品テープについて、X座標が400mmより
も大きい実装点を含む部品テープを探し、それをX座標
が400mmよりも大きい実装点を含まない部品テープを入
れ替える。 ・「LL制約:Z軸上の部品テープの入れ替え(2)」 上記「LL制約:Z軸上の部品テープの入れ替え(1)」
よりも、実装点のX座標の扱いを細かくしたものであ
る。
も搬送方向と直交する方向にサイズが大きい基板であ
る。そのために、図46に示されるように、XLサイズ基
板には、特定の設備(前サブ設備110又は後サブ設備
120)でしか部品を装着できない実装領域が存在す
る。図46は、特殊なサイズ(XL,LL)の基板における
基板上の制約領域(ヘッドが移動できないために実装で
きない領域)を示す図である。
構成されている。 ・前サブ設備110でしか部品を装着できない領域 ・後サブ設備120でしか部品を装着できない領域 ・前サブ設備110と後サブ設備120の両方で部品を
装着できる領域 更にLLサイズ基板と同様に特定のヘッド(ノズル)でし
か部品を装着できない領域が存在する。
ズ基板への対応を次に示す。 (1)実装点座標による前サブ設備110/後サブ設備1
20への割り当て (2)実装点座標による部品分割 (3)前サブ設備110と後サブ設備120の両方で実装
できる領域を利用した初期振り分け (4)LL制約の回避 詳細は、後述の個別処理で説明している通りである。
備が前サブ設備110と後サブ設備120のどちらであ
るかを判断し、前サブ設備110と後サブ設備120に
実装点を振りわけることで、実現した。なお、XLサイズ
基板が持っている制約は、LLサイズ基板が持っている制
約を含んでいるので、XLサイズ基板に対応する処理に
は、LLサイズ基板に対応する処理が含まれる。詳細につ
いては、下記の個別処理で説明している通りである。 ・「XL制約」
レベルを指標として、前サブ設備110と後サブ設備1
20のバランスを調整する処理である。この処理は、図
14のステップS314bに相当する。
サブ設備120との間での部品の移動を行う。部品の移
動については、次の2つのレベルがある。 (1)「山」単位 (2)部品テープ単位 上記の「山」とは、最適化の結果、作成される部品テー
プのグループ、つまり、一定順序で並べられた部品テー
プ群又はその部品テープ群に対応する部品ヒストグラム
を意味する。上述のタスクグループの概念に近い。
は、実行する部品移動のレベルが異なる。 負荷バランス処理:「山」、部品テープ ラインバランス処理:「山」、部品テープ、実装点 現在、負荷バランス処理で使用している負荷レベル計算
は、汎用部品から構成されるタスクに対する負荷レベル
の値の精度が悪い。そのため、負荷バランス処理では、
部品移動の単位を細かくしても効果が薄いと判断して、
実装点単位の部品移動は行っていない。詳細は、後述の
個別処理で説明している通りである。
備120の負荷レベルのバランスを調整する処理であ
る。部品テープを前サブ設備110と後サブ設備120
に振り分ける際に必要となる。
プを詰めて配置し、前サブ設備110に配置できなかっ
た部品テープを後サブ設備120に配置する。これを初
期状態として、前サブ設備110と後サブ設備120の
負荷バランスを計算し、その負荷バランスの差がOKにな
るまで、前サブ設備110に配置された部品テープを順
番に後サブ設備120に移動する。
法は、「最適化装置の動作(概要編)」での説明の通り
である。詳細については、下記の個別処理で説明してい
る通りである。 ・「負荷レベルバランス調整(「山」単位)」 ・「負荷レベルバランス調整(部品テープ単位)」
間を指標として、前サブ設備110と後サブ設備120
のバランスを調整する処理である。この処理は、図14
のステップS323に相当する。ラインバランス処理と
負荷バランス処理と違いは、バランスの指標が異なるだ
けであり、互いに類似した処理である。
サブ設備120との間での部品の移動を行う。部品の移
動については、次の3つのレベルがある。 (1)「山」単位 (2)部品テープ単位 (3)実装点単位 ラインバランス処理では、実装点単位の部品移動を行う
点が、負荷バランス処理と異なる。
設備120の実装時間のバランスを調整する処理であ
る。前サブ設備110と後サブ設備120のタスクを生
成した後、各サブ設備の実装時間をタクトシミュレータ
で計算し、実装時間の長いサブ設備から、実装時間の短
いサブ設備へ、部品を移動することにより、前サブ設備
110と後サブ設備120の実装時間のバランスを調整
する。バランスの指標などに違いがあるが、前述の負荷
バランス処理と類似の処理である。
ている通りである。 ・「前サブ設備110から後サブ設備120へ山を移動
する処理」 ・「前サブ設備110から後サブ設備120へ部品テー
プを移動する処理」 ・「前サブ設備110から後サブ設備120へ実装点を
移動する処理」 ・「ラインバランス処理でのスワップ処理」
細 3.9.1 「刈り上げ法」 以下の手順により、タスクを生成する。 (1)部品ヒストグラム510を作成する(図48)。 (2)部品ヒストグラム510に対して、刈り上げ、コア
部分を残す(図49)。本図において、四角形で囲まれ
た枠は、10点同時吸着の吸着パターンである。 (3)刈り上げた部分511a(図50(a))と、コア
部分511b(図50(b))とを分離する。 (4)コア部分511bにテンプレート512を割り当て
る(図51)。本図において、四角枠で囲まれた黒色の
四角形(実装点)は、テンプレートでカバーできなかっ
た実装点を示し、これらをテンプレートの左側513
(「*」で示される箇所)を補完するために使用する。 (5)テンプレートの左側を補完する実装点514を決め
る(図52)。 (6)テンプレートの左側513を補完する(図53)。
本図において、白抜きの四角形は、補完に用いられた実
装点を示し、四角枠で囲まれた黒色の四角形は、補完に
用いられなかった実装点を示し、四角枠で囲まれた
「*」は、補完できなかった実装点を示す。 (7)コア部分とテンプレートにより補完された部分につ
いて、「山」515を作り直す(図54)。 (8)上記(2)において刈り上げにより作られたタスク51
1aも「山」516の形に作り直す(図55)。 (9)刈り上げによる「山」516とコア部分の「山」5
15とを合成し、「山」517を得る(図56)。 (10)「山」517全体を刈り上げ、吸着パターン518
を得る(図57)。 本図において、第24のタスク(タスク24)は、吸着
時のヘッドの上下回数(吸着上下回数)が3回となるこ
とが示されている。 (11)制約が全くない場合は、そのままZ軸に配置する
(図58)。なお、制約を考慮した場合については、以
下((12)以降)の通りである。 (12)「刈り上げ法」によりタスク(四角枠で囲まれた部
品群)を生成する(図59)。ここでは、コア部分の処
理を行う。ただし、この段階では、最大分割数、カセッ
トリソース、使用可能なZ番号の個数は考慮しない。こ
の例では、カセット番号1〜6が分割されるので、 カセット番号=1:部品A カセット番号=2:部品B カセット番号=3:部品C カセット番号=4:部品D カセット番号=5:部品E カセット番号=6:部品F とし、分割の様子を、例えば、部品Aは5分割されるの
で、それぞれ A1,A2,A3,A4,A5 と表現する。部品B,C,D,E,Fについても同様で
ある。また、その他の部品については黒色の四角形で表
現している。 (13)最大分割数を考慮し、カセット分割数を適正化する
(図60)。ここでは、部品Aの最大カセット分割数が
4であるとして、部品Aについて、カセット分割数を適
正化している。部品Aは、5分割されているので、A2
〜A5のうちの1つをA1〜A5に統合する。このと
き、A2〜A5の中で部品数が最小のものを選択すれ
ば、この統合の影響を受けるタスクの個数が最小にな
る。この場合、A5の部品数が最小(3個)であるの
で、A5を選び、それらA5をA1〜A4に分散させ
る。その結果、A5があった位置が空くので、A5の左
側にあるF2,E2,D2を右に1つ分移動する。 (14)このような適正化後におけるカセット配列は、図6
1に示される吸着パターン518b通りである。ここ
で、タスク21〜22は、吸着上下回数が2回となって
いる。 (15)続いて、ダイヤグラム518cのように、カセット
使用数を適正化する(図62)。ここでは、カセット使
用数がカセットリソースよりも1本だけ多いとする。部
品A2〜4,B2,C2,D2,E2,F2の中で部品
数が最小のものを選び、それを統合する。具体的には、
部品数が最小(1個)のF2を選び、これをF1に統合
する。 (16)このような適正化後におけるカセット配列は、図6
3に示される吸着パターン518dの通りである。カセ
ット数が1本減っていることが分かる。 (17)続いて、ダイヤグラム518eのように、Z軸占有
数を適正化、つまり、使用可能なZ軸の範囲を考慮する
(図64)。ここでは、Z軸使用数がZ軸の空よりも1
本だけ多いとする。部品A2〜4,B2,C2,D2,
E2の中で部品数が最小のものを選び、それを統合す
る。具体的には、部品数が最小(2個)のE2を選び、
これをE1に統合する。 (18)このような適正化後におけるカセット配列は、図6
5に示される吸着パターン518fの通りである。ここ
で、タスク24は、吸着上下回数が4回のまま変ってい
ないが、タスク23は、吸着上下回数が3回となる。 (19)Z軸に配置する。ここでは、ダイヤグラム518g
に示されるように、B1は、本来Z番号=15に固定す
る部品であると仮定する(図66)。 (20)最初に固定カセット519をZ軸に配置する(図6
7)。 (21)非固定カセットをZ軸に配置する。その結果は、吸
着パターン520となる(図68)。このとき、非固定
カセットは、上記(19)で決まったカセット配列の順序
で、固定カセットを避けるようにしてZ軸に配置する。 (22)「山」521の形に戻す(図69)。 (23)再度、「刈り上げ法」によりタスクを生成し、吸着
パターン522を得る(図70)。ただし、コア部分の
処理は行わない。ここで、タスク24は、吸着上下回数
が3回に、タスク22〜23は、吸着上下回数が2回
に、タスク17〜19は、吸着上下回数が2回となる。
割 コア部品に対する平行四辺形のテンプレートを用いたカ
セット分割の方法は、以下の通りである。 (1)ここでは、対象のコア部品525の合計部品数が3
0とする(図71の上段)。つまり、10点吸着のタス
クを3個つくることにする。 (2)まず、カセット数が9なので、それに対応する平行
四辺形(テンプレート)523を作る(図71の中段の
右)。なお、平行四辺形526の各段の右端は、10点
カット×9本の場合に、この平行四辺形526へ部品を
割り当てた場合の部品の種類を示す文字(A〜I)とな
っている。 (3)対象部品525の1段目(最下段)525aに着目
し、その右端が「I」なので、これを、右端が同一文字
(「I」)である平行四辺形526の段(ここでは、平
行四辺形526の最下段)に配置する(図71の下
段)。 (4)同様に、対象部品525の2段目525bに着目
し、その右端が「F」なので、これを、右端が同一文字
(「F」)である平行四辺形526の段(ここでは、平
行四辺形526の4段目)に配置する(図72の上
段)。 (5)同様に、対象部品525の3段目525cに着目
し、その右端が「C」なので、これを、右端が同一文字
(「C」)である平行四辺形526の段(ここでは、平
行四辺形526の7段目)に配置する(図72の中
段)。 (6)これ以上、右端の文字が一致する段が存在しないの
で、残った部品525cを配置済みの各段(1,4,7
段目)の空き位置(「X」)に配置する(図72の下
段)。 (7)そのとき、残り部品数の多い部品525e、525
fから割り当てていく(図73の上段、中段)。 (8)もし、残り部品数が同数の場合は、部品の文字の順
序で部品525gを割り当てる(図73の下段)。 (9)以上の規則に従って、残る全ての部品525h〜k
をテンプレート526に置く(図74、図75の上
段)。 (10)全ての部品をテンプレート526に置き終えた結
果、テンプレート526の1,4,7段目は部品で埋ま
るので(図75の中段)、最後に、それら1,4,7段
目の隙間を詰めることで、カセット分割が完了する(図
75の下段)。
ト分割の方法は、以下の通りである。 (1)30個の対象のコア部品527の下部に、長方形の
テンプレート(ここでは、幅10×高さ3のテンプレー
ト)528を当てる(図76の上段)。 (2)補完すべき領域(白抜き四角形)528aを、補完
できた領域の左側に配置する(図76の中段)。 (3)残り部品数の多い部品527a、527bから、テ
ンプレートの補完領域528aに置いていく(図76の
下段、図77の上段)。 (4)もし、残り部品数が同数の場合は、部品の文字の順
序で部品527cを割り当てる(図77の中段)。 (5)以上の規則に従って、残る全ての部品527d〜g
をテンプレート528aに置く(図77の下段、図7
8、図79)。配置を完了した時点で、カセット分割が
終了する。
コア処理方法 基本のコア処理を行って、理想の「山」の形を作ってか
ら、補完カセットを圧縮し、与えられたカセットリソー
ス内に納める。コア処理を行う際、与えられたカセット
本数分だけ補完カセットができるように、補完カセット
へ部品数を割り当てる処理を行って、最後にコア部分に
残っている、本来、部品分割に使う部品種(部品テー
プ)の部品数を同一部品種に均等に配分する方法も可能
と考えられる。ダブルカセットについては、奇数Z番号
上にコアが残るので、シングルカセットのコア処理と同
様にして、補完カセットをつくることができる。この場
合、補完カセットは、ダブルカセットの奇数側(奇数Z
番号の分)のみを使用する。また、カセットを圧縮する
処理も、シングルカセットと同様に行えばよい。
作る。この時、補完カセットが作られる。 (2)補完カセットの本数Nを求める。 (3)補完カセット数Nと与えられたカセット本数Mを比
較する。 (4)N≦Mであれば、終了する。 戻り値はNとする。コア処理では、与えられたカセット
本数を全部使わなくてもよい場合があるので、Nを戻り
値とした。補完カセットは最大で9本なので、10本以
上のカセットを与えても意味がない。戻り値Nでカセッ
トリソースの管理を行う。 (5)N>Mであれば、カセットを1本分だけ圧縮する。 (5.1)「山」の中から部品数が最も小さいカセットCを
探す。 (5.2)カセットCと同じ部品テープを持つカセットDを
「山」の中から探す。 カセットDは複数存在する場合がある。カセットCは、
カセットDに含めない。 (5.3)カセットCの部品数をカセットDへ均等に配分す
る。均等に配分できない場合には、「山」のコア側に行
くほどカセットの部品数が多くなるようにする。たとえ
ば、カセットCの部品数が5で、カセットDが3本あれ
ば、2、2、1というように分割し、「山」のコア側の
カセットから順に、2、2、1と分配する。 (6)補完カセット数Nから1を引く。 (7)(3)へ戻る。
ターンを生成する処理を行う。ノズルと実装点の対応
は、「貪欲法」により決定される。「山」の「すそ野」
側からスキャンして吸着パターンを生成する。そのた
め、「すそ野」がZ番号の小さい側に存在する左ブロッ
クと、「すそ野」がZ番号の大きい側に存在する右ブロ
ックとでは、ヘッドとZ軸のスキャン方向が反対になる
が、基本的には同じ処理となる。ダブルカセットの場
合、偶数Z番号側にある部品テープの全ての部品数を吸
着パターンに割り当ててから、奇数Z番号側にある部品
テープの部品数を吸着パターンに割り当てる。偶数Z番
号側に存在する部品テープから作られる最後のタスクの
吸着点数が10未満の場合、10に満たない分を奇数Z
番号に存在する部品テープから吸着する。 ・プログラミングにおけるポイント 以下に説明する処理では、実Z軸上に配置された部品テ
ープが吸着すべき部品テープか否かを判定するため、そ
の部品テープが処理対象となる「山」に属するものかど
うかを判定している。そこで、部品テープの属性とし
て、「山」番号などの「山」を識別するための情報を用
意し、事前に設定しておくと便利である。1つの部品グ
ループから2以上の「山」が作り出されることがあるの
で、部品グループ番号は「山」の識別に使わないほうが
よい。左ブロックの場合(シングルカセットの「山」) (8)タスク番号tに1を設定する。 (9)この「山」を構成する部品テープに属する実装点の
個数の合計を求め、実装点数合計とする。 (9.1)実装点数合計がゼロの場合、以下の処理を行う。 (9.1.1)(15)へ進む。 全く実装点が無い「山」は存在しないので、エラーとす
る。 (10)タスク番号tのタスクが持つノズルのうち、Z番号が
対応付けられていないノズルの中から、ノズル番号が最
小のものを見つけ、そのノズル番号をNvacとする。ノズ
ル番号は1〜10とする。Z番号が対応付けられている
ノズルが全く無い場合、Nvacは1となる。 (10.1)すべてのノズルにZ番号が対応付けられている場
合、以下の処理を行う。 (10.1.1)(13)へ進む。次のタスクの吸着パターンの生
成へ進むことになる。
いて、ノズル番号Nvacのノズルで吸着できるZ番号の中
から最小のZ番号を求め、Zvacとする。Z番号は、前サブ
設備110であれば、「1〜 48の範囲にある奇数」
である。Z番号は、後サブ設備120であれば、「97
〜144の範囲にある奇数」である。 (11.1)そのようなZ番号が見つからない場合、以下の処
理を行う (11.1.1)(13)へ進む。次のタスクの吸着パターンの生
成へ進むことになり、このタスクは吸着点数が10未満
となる。たとえば、Z=1だけに部品テープが存在する場
合、ノズル1でしか吸着できず、ノズル2〜10が吸着
できる部品テープが存在しないため、Zvacが決まらな
い。 (12)実装点数合計が正であり、かつ、 Nvacが10以下
である場合、以下の処理を行う。 (12.1)ノズル番号がNvacであるノズルにZ番号が対応付
けられておらず、かつ、Zvacに存在する部品テープがこ
の「山」に属する場合、以下の処理を行う。 (12.1.1)ノズル番号がNvacであるノズルにZvacを対応付
ける。 (12.1.2)Zvacに存在する部品テープの実装点の個数から
1を減算する。 (12.1.3)実装点数合計から1を減算する。たとえば、1
回目の吸着で「歯抜け」状に吸着した場合、2回目の吸
着では、すぐ隣のノズルが空いているとは限らないの
で、この条件判定(前半部分)を入れた。また、「山」
の途中に、この「山」に無関係な部品テープ(固定カセ
ットの部品テープなど)が存在する可能性があるので、
この条件判定(後半部分)を入れた。 (12.2)Nvacに1を加算する。 (12.3)Zvacに2を加算する。 (12.4)(12)に戻る。 (13)タスク番号に1を加算する。 (14)(10)へ戻る。 (15)吸着パターン生成処理を終了する。右ブロック の
場合(シングルカセットの「山」) (16)タスク番号tに1を設定する。 (17)この「山」を構成する部品テープに属する実装点の
個数の合計を求め、実装点数合計とする。 (17.1)実装点数合計がゼロの場合、以下の処理を行う。 (17.1.1)(23)へ進む。全く実装点が無い「山」は存在
しないので、エラーとする。 (18)タスク番号tのタスクが持つノズルのうち、Z番号が
対応付けられていないノズルの中から、 ノズル番号が
最大のもの を見つけ、そのノズル番号をNvacとする。
ノズル番号は1〜10とする。Z番号が対応付けられて
いるノズルが全く無い場合、 Nvacは10 となる。 (18.1)すべてのノズルにZ番号が対応付けられている場
合、以下の処理を行う。 (18.1.1)(21)へ進む。 次のタスクの吸着パターンの生成へ進むことになる。こ
のタスクの吸着点数は10点になる。 (19)「山」を構成する部品テープが存在するZ番号につ
いて、ノズル番号Nvacのノズルで吸着できるZ番号の中
から最大のZ番号を求め、Zvacとする。Z番号は、前サブ
設備110であれば、「49〜 96の範囲にある奇
数」である。Z番号は、後サブ設備120であれば、
「145〜192の範囲にある奇数」である。 (19.1)そのようなZ番号が見つからない場合、以下の処
理を行う (19.1.1)(21)へ進む。次のタスクの吸着パターンの生
成へ進むことになり、このタスクは吸着点数が10未満
となる。たとえば、Z=1だけに部品テープが存在する場
合、ノズル1でしか吸着できず、ノズル2〜10が吸着
できる部品テープが存在しないため、Zvacが決まらな
い。 (20)実装点数合計が正であり、かつ、Nvacが1以上であ
る場合、以下の処理を行う。 (20.1)ノズル番号がNvacであるノズルにZ番号が対応付
けられておらず、かつ、Zvacに存在する部品テープがこ
の「山」に属する場合、以下の処理を行う。 (20.1.1)ノズル番号がNvacであるノズルにZvacを対応付
ける。 (20.1.2)Zvacに存在する部品テープの実装点の個数から
1を減算する。 (20.1.3)実装点数合計から1を減算する。たとえば、1
回目の吸着で「歯抜け」状に吸着した場合、2回目の吸
着では、すぐ隣のノズルが空いているとは限らないの
で、この条件判定(前半部分)を入れた。また、「山」
の途中に、この「山」に無関係な部品テープ(固定カセ
ットの部品テープなど)が存在する可能性があるので、
この条件判定(後半部分)を入れた。 (20.2)Nvacから1を減算する。 (20.3)Zvacから2を減算する。 (20.4)(20)に戻る。 (21)タスク番号に1を加算する。 (22)(18)へ戻る。 (23)吸着パターン生成処理を終了する。 左ブロック(ダブルカセットの「山」) (24)ダブルカセットの偶数Z番号側について、前述の左
ブロックの場合(シングルカセットの「山」)」と同様
にして、吸着を行う。ただし、奇数Z番号からではな
く、偶数Z番号からの吸着動作になる点のみが異なる。 (25)ダブルカセットの偶数Z番号側から吸着したタスク
の中の最後のタスクが10点未満のタスクであれば、そ
のタスクをダブルカセットの奇数Z番号側を吸着する際
のタスクの初期値とする。その最後のタスクは、ノズル
1から順に吸着していて、ノズル番号の大きい側が空き
になっている。これをそのまま奇数Z番号側を吸着する
際のタスクの初期値としてしまうと、たとえば、Z=1付
近からの吸着ができない。そこで、ノズル番号の小さい
ノズルが空きになるように、既に吸着している実装点を
ノズル番号の大きいノズルのほうへ移動しておく。 (26)ダブルカセットの奇数Z番号側について、前述の
「右ブロックの場合(シングルカセットの「山」)」と
同様にして、吸着を行う。ただし、奇数Z番号からでは
なく、偶数Z番号からの吸着動作になる点のみが異な
る。ダブルカセットの偶数側のZ番号を吸着した結果、
その最後のタスクの吸着点数が10点未満の場合、ダブ
ルカセットの奇数Z番号側の吸着の最初のタスクが初期
値を持っている点が異なる。 右ブロック(ダブルカセットの「山」) (27)ダブルカセットの偶数Z番号側について、前述の
「右ブロックの場合(シングルカセットの「山」)」と
同様にして、吸着を行う。ただし、奇数Z番号からでは
なく、偶数Z番号からの吸着動作になる点のみが異な
る。 (28)ダブルカセットの偶数Z番号側から吸着したタスク
の中の最後のタスクが10点未満のタスクであれば、そ
のタスクをダブルカセットの奇数Z番号側を吸着する際
のタスクの初期値とする。その最後のタスクは、ノズル
10から順に吸着していて、ノズル番号の小さい側が空
きになっている。これをそのまま奇数Z番号側を吸着す
る際のタスクの初期値としてしまうと、たとえば、Z=9
6付近からの吸着ができない。そこで、ノズル番号の大
きいノズルが空きになるように、既に吸着している実装
点をノズル番号の小さいノズルのほうへ移動しておく。 (29)ダブルカセットの奇数Z番号側について、前述の
「右ブロックの場合(シングルカセットの「山」)」と
同様にして、吸着を行う。ただし、奇数Z番号からでは
なく、偶数Z番号からの吸着動作になる点のみが異な
る。ダブルカセットの偶数側のZ番号を吸着した結果、
その最後のタスクの吸着点数が10点未満の場合、ダブ
ルカセットの奇数Z番号側の吸着の最初のタスクが初期
値を持っている点が異なる。
着パターンに「貪欲法」(+HC法)などで実装点の割振
りが行われ仮のタスクが決まった後に、実装点の割振り
の最適化を行うアルゴリズムの一つである。
の実装経路図(貪欲法により決定した実装経路図)53
0aを示し、図80(b)は、交差解消法を適用した後
の実装経路図530bを示す。本図に示されるように、
このアルゴリズムは、ヘッドの移動軌跡が無駄にクロス
する箇所を減少させるものである。なお、処理対象とな
るタスクの実装点が、LL基板、XL基板におけるヘッド制
限に引っかかる場合は、「組替えの対象となる部分タス
クの全ての実装点が、ヘッド番号がhead1=head2を満た
している」場合のみ、交差解消アルゴリズムの対象とし
てよい。その他の場合に、「交差解消法」を強行する
と、極めて高い確率でヘッドが実装点に届かない場合が
発生する。
ムを説明する実装経路図であり、図81(b)は、4つ
の実装点による1つの交差(線Aと線Bによる交差)の
例を示す図である。具体的なアルゴリズムは、以下の通
りである。 (0)それぞれのタスクの実装点を打つ際のヘッドの移動
量を計算し、全タスクに対する総和を求める (1)実装点の組替えを行うZ座標、切断点(cutpoint)に
1を代入する (2)組替えを行うタスク1に1を代入する(task1=1) (3)組替えを行うタスク2に(task1+1)を代入する
(task2=task1+1)。(4)cutpointに対応するヘッド
番号(head1,head2)をそれぞれのタスクについて求め
る (5)2つのヘッド番号がともに適正か (5.1)適正でない場合(指定したZ座標に対応する実装点
がない)、(13)へ (5.2)適正である場合、(6)へ (6)それぞれのタスクの実装点を打つ際のヘッドの移動
量を計算し、その和(olength)を求める (7)cutpointより左側の部分タスクの組替えを行う (8)それぞれのタスクの実装点を打つ際のヘッドの移動
量を計算し、その和(nlengthL)を求める (9)cutpointより右側の部分タスクの組替えを行う (10)それぞれのタスクの実装点を打つ際のヘッドの移動
量を計算し、その和(nlengthR)を求める (11)3つの移動量、olength,nlengthL、nlengthRを比較
し、最小のものを求める(12)最小の移動量を与えるタス
クを新しいタスクとしてを採用する (13)タスク2をインクリメントする(task2=task2+
1) (14)タスク2(task2)とタスク数を比較する (14.1)タスク2がタスク数を超えていない場合、(4)へ
戻る (14.2)その他の場合、(15)へ (15)タスク1をインクリメントする(task1=task1+1) (16)タスク1(task1)とタスク数を比較する (16.1)タスク1がタスク数を超えていない場合、(3)へ
戻る (16.2)その他の場合、(17)へ (17)切断点をインクリメントする(coutpoint=cutpoint
+1) (18)切断点と最大Z座標を比較する (18.1)切断点が最大Z座標を超えていない場合、(2)へ (18.2)その他の場合、(19)へ (19)それぞれのタスクの実装点を打つ際のヘッドの移動
量を計算し、全タスクに対するヘッド移動量の総和を求
める (20)ヘッド移動量の総和が減少しているか否かを調べる (20.1)減少している場合、(0)へ (20.2)その他の場合、終了
交差解消法の適用例を示す実装経路図であり、図82
(a)は、適用前の実装経路図(貪欲法による実装経路
図)531aを示し、図82(b)は、適用後の実装経
路図531bを示す。実装経路がクロスしている箇所の
数が減少し、総実装経路が短縮化されているのがわか
る。
が決まった後に、タスクの実装順序の最適化を行うアル
ゴリズムである。その詳細は、以下の通りである。 (1)各タスクの最終実装点のX座標を求める (2)最終実装点のX座標の大きい順に従って並べたタスク
番号リスト(up[])を作る (3)各タスクの部品テープの最大Z座標を求める(吸着時
にヘッド10番が取るZ座標の最大値) (4)最大Z座標の大きい順に並べたタスク番号リスト(p
oint[].task)を作る (5)実装順序1番に、最終実装点のX座標が最大のタスク
を割り当てる (6)その次に実装するタスクとして、残っているタスク
の内最も大きな最大Z座標を持つタスクを割り当てる (7)実装順序が決まっていないタスクが残っているか (7.1)残っている場合、(8)へ (7.2)その他の場合、(10)へ (8)残っているタスクのうち最終実装点のX座標が最大の
ものを、その次に実装するタスクとして割り当てる (9)実装順序が決まっていないタスクが残っているか (9.1)残っている場合、(6)へ (9.2)その他の場合、(9)へ (10)それぞれのタスクの実装点を打つ際のヘッドの移動
量を計算し、全タスクに対するヘッド移動量の総和を求
める (11)実装順序の入替えを行うタスク1に1を代入する
(task1=1) (12)実装順序の入替えを行うタスク2に(task1+1)
を代入する(task2=task1+1) (13)それぞれのタスクの実装点を打つ際のヘッドの移動
量を計算し、全タスクに対する総和(olength)を求め
る (14)タスク1の次に実装するタスクをタスク2の次に実
装し、タスク2の次に実装するタスクをタスク1の次に
実装する新しいタスクの実装順序を求める (15)それぞれのタスクの実装点を打つ際のヘッドの移動
量を計算し、全タスクに対する総和(nlength)を求め
る (16)2つの移動量、olength,nlengthを比較し、最小の
ものを求める (17)最小の移動量を与える実装順序を新しい実装順序と
してを採用する (18)タスク2をインクリメントする(task2=task2+
1) (19)タスク2(task2)とタスク数を比較する (19.1)タスク2がタスク数を超えていない場合、(11)へ
戻る (19.2)その他の場合、(19)へ (20)タスク1をインクリメントする(task1=task1+1) (21)タスク1(task1)とタスク数を比較する (21.1)タスク1がタスク数を超えていない場合、(10)へ
戻る (21.2)その他の場合、(21)へ (22)それぞれのタスクの実装点を打つ際のヘッドの移動
量を計算し、全タスクに対するヘッド移動量の総和を求
める (23)ヘッド移動量の総和が減少しているか否かを調べる (23.1)減少している場合、(0)へ (23.2)その他の場合、終了
く、以下の2つのパートからなる。(パート1) (i)図83に示されるように、各タスクの最終実装点か
ら最短距離にある吸着位置(タスク)を見つける(図中
の実線矢印)。図83は、図44における「戻り」動作
を示す図であり、基板上の最終実装点(四角形内の丸
印)と次に吸着すべき部品カセットのZ軸上の位置(横
一列に並んだ丸印1〜19)を示す。 (ii)1番吸着位置を始点にして実装経路を順次書いてい
く(図中の点線矢印)。(iii)経路が1番吸着位置に戻
ったら、それを最短巡回部分経路1とする。 (iv)これまで見つかった最短巡回部分経路に含まれない
吸着位置を探す(図83に示された例では、「4」とな
る)。 (v)上記(ii)に戻る。その結果、図83に示された例で
は、最短巡回経路は5つとなる。
を実装順序が最適化できるかを求める。これは、右から
順に実装するので問題ない。戻ることがなければよいか
らである。図84(a)は、同一の部品カセットに複数
の実装点がある場合における「戻り」動作を示す図であ
り、図84(b)は、この「戻り最適化法」を適用した
場合のヘッドの戻り軌跡を示すシミュレーション結果で
あり、適用前の移動軌跡532aにおける無駄なクロス
(左図)が適用後の移動軌跡532bのように減少して
いるのがわかる。
らスタート) (1)実装点データから、部品グループを作成する。 (2)小部品の各部品グループについて、「山」を作る。 (2.1)使用するカセットによって、部品テープを次の3
つに分類する。 1.シングルカセットを使う部品テープ 2.ダブルカセットを使う部品テープ(送りピッチ2m
m) 3.ダブルカセットを使う部品テープ(送りピッチ4m
m) (2.2)シングルカセットを使う部品テープについて、仮
Z軸上に「山」を作る。 (2.2.1)仮Z軸上に部品ヒストグラムを作成する。部品
数の多い順に部品テープを並べる。最も部品数の多い部
品テープをZ=1に配置する。 (2.2.2)部品ヒストグラムを構成する部品テープの個数
をNとする。 (2.2.3)仮Z軸から実Z軸へ変換する。仮Z軸上のZ=
1からNまでの部品テープを、その順番で、実Z軸上の
Z=1〜2Nの範囲の奇数Z番号に配置する。 (2.3)送りピッチが2mmのダブルカセットを使う部品
テープについて、仮Z軸上に「山」を作る。 (2.3.1)仮Z軸上に部品ヒストグラムを作成する。部品
数の多い順に部品テープを並べる。最も部品数の多い部
品テープをZ=1に配置する。 (2.3.2)部品ヒストグラムを構成する部品テープの個数
をNとする。 (2.3.3)Nを2で割った値(小数点以下切り上げ)をM
とする。 (2.3.4)ダブルカセットをM本用意する。 (2.3.5)第2仮Z軸を用意する。 (2.3.6)M本のダブルカセットを第2仮Z軸上のZ=1
からNまで、間を詰めて配置する。 (2.3.7)仮Z軸のZ=1からMまでの部品テープを第2
仮Z軸のZ=1、3、5、…、N−1の奇数Z番号に配
置する。ダブルカセットの奇数側に配置することにな
る。 (2.3.8)仮Z軸のZ=(M+1)からNまでの部品テー
プを、第2仮Z軸のZ=2、4、6、…、Nの偶数Z番
号に配置する。ダブルカセットの偶数側に配置すること
になる。Nが奇数の場合は、第2仮Z軸上のZ=(N−
1,N)に配置されるダブルカセットは、偶数側が空き
になるが、そのままとする。 (2.3.9)第2仮Z軸を改めて仮Z軸とする。 (2.4)送りピッチが4mmのダブルカセットを使う部品
テープについて、仮Z軸上に「山」を作成する。送りピ
ッチの違いを除いて、前述の「送りピッチが2mmのダ
ブルカセットを使う部品テープについて、仮Z軸上に
「山」を作る」処理と同じである。 (2.5)送りピッチが2mmと4mmのダブルカセットの
部品ヒストグラムを融合する。 (2.5.1)送りピッチが2mmのダブルカセットの「山」
と、送りピッチが4mmのダブルカセットの「山」を同
じ仮Z軸上に配置する。送りピッチが2mmのダブルカ
セットの「山」をZ=1から配置し、それに続けて、送
りピッチが4mmのダブルカセットの「山」を配置す
る。次の処理でカセットの並べ替えをするので、配置順
序は逆でもかまわない。 (2.5.2)仮Z軸上のダブルカセットを、その奇数Z番号
側の部品テープの部品数の大きい順に並べ替える。部品
数が最も大きい部品テープを持つダブルカセットをZ=
1に配置する。ダブルカセットのペアは崩さない。送り
ピッチが2mmと4mmのダブルカセットが混在した
「山」ができる。奇数Z番号の部品テープの部品数を見
ると、単調減少するヒストグラムになる。偶数Z番号の
部品テープの部品数を見ると、単調減少するヒストグラ
ムになっていない場合がある。
に]配置する。「山」を前サブ設備110から詰めて配
置していき、すべての「山」が実Z軸上に載り切るかど
うかを調べる。部品グループの順に「山」単位で配置す
る。前後サブ設備120にまたがる「山」は分割し、前
後サブ設備120へ振り分ける。小部品は、1つの部品
グループが「シングルカセットを使用する山」と「ダブ
ルカセットを使用する山」に分かれる。どちらか一方の
「山」しかない部品グループもある。小部品で1つの部
品グループが「シングルカセットを使用する山」と「ダ
ブルカセットを使用する山」に分かれた場合、それぞれ
を独立した「山」として扱う。汎用部品は、部品グルー
プ単位で「山」になっているとする。汎用部品は、ユー
ザの指定通りに分割されているものとする。 ・配置ルール 小部品については、シングルカセットとダブルカセット
があるので、次のような順序で配置する。隣接条件を考
慮して、シングルカセットとダブルカセットが隣接しに
くくなるような、配置順序とした。 1) 前サブ設備110にダブルカセットを配置する。 (i)AブロックのZ番号=(47,48)から、Z番号
の小さいほうへ順に空きを探して配置する。 (ii)Aブロックに空きがなくなったら、BブロックのZ
番号=(95,96)へ移動し、Z番号の小さいほうへ
順に空きを探して配置する。 2) 前サブ設備110にシングルカセットを配置する。 (i)BブロックのZ番号=49から、Z番号の大きいほ
うへ順に空きを探して配置する。 (ii)Bブロックに空きがなくなったら,AブロックのZ
番号=1へ移動し,Z番号の大きい方へ順に空きを探し
て配置する。 3) 後サブ設備120にダブルカセットを配置する。
4)から、Z番号の小さいほうへ順に空きを探して配置
する。 (ii)Cブロックに空きがなくなったら、DブロックのZ
番号=(191,192)へ移動し、Z番号の小さいほ
うへ順に空きを探して配置する。
を配置する。 (i)DブロックのZ番号=145から、Z番号の大きい
ほうへ順に空きを探して配置する。 (ii)Dブロックに空きがなくなったら、CブロックのZ
番号=97へ移動し,Z番号の大きいほうへ順に空きを
探して配置する。配列固定の対象である部品テープが存
在する場合、それらの部品テープを固定先のZ番号へ配
置した後、配列固定の対象でない部品テープを配置す
る。ダブルカセットの配列固定については、「ダブルカ
セットの配列固定について」で詳述する。 (3.1)部品グループ番号をnで表し、n = 0とする。 (3.2)nが部品グループ番号の最大値よりも大きい場合、
(3.7)へ進む。 (3.3)部品グループnに属するシングルカセットの「山」
が存在する場合、以下の処理を行う。 (3.3.1)前サブ設備110に配置する。 (3.3.2)その結果、前サブ設備110に載りきらないの
であれば、「山」を部品テープ単位で分割し、前サブ設
備110に載りきらない部品テープを後サブ設備120
に配置する。 (3.3.3)その結果、後サブ設備120に載りきらないの
であれば、エラーとする。小部品の「山」を配置する場
合は上記の配置ルールに従う。 (3.4)部品グループnに属するダブルカセットの「山」が
存在する場合、以下の処理を行う。 (3.4.1)前サブ設備110に配置する。 (3.4.2)その結果、前サブ設備110に載りきらないの
であれば、「山」を部品テープ単位で分割し、前サブ設
備110に載りきらない部品テープを後サブ設備120
に配置する。 (3.4.3)その結果、後サブ設備120に載りきらないの
であれば、エラーとする。小部品の「山」を配置する場
合は上記の配置ルールに従う。 (3.5)nに1を加算する。 (3.6)(3.2)へ戻る。 (3.7)前サブ設備110と後サブ設備120の「山」の
状態を記憶する。最も詰め込んだ状態で、すべての
「山」を配置できたことになる。
めて配置する。負荷レベルを尺度とした前サブ設備11
0と後サブ設備120のバランス調整を行う際の「山」
の配置の初期状態を作る。前サブ設備110→後サブ設
備120の順に、前サブ設備110から詰めて、部品グ
ループの小さい「山」から順に配置し、「山」の配置の
初期状態とする。配列固定の対象である部品テープが存
在する場合、配列固定の対象である部品テープを固定先
のZ番号へ配置した後、配列固定の対象でない部品テー
プを配置する。配列固定の対象である部品テープと、そ
れが属している「山」が同じブロックに配置された場
合、配列固定の対象である部品テープを「山」に含め
て、1つの「山」とし、その「山」に「刈り上げ法」を
適用する。配列固定の対象である部品テープと、それが
属している「山」が異なるブロックに配置された場合、
別々の「山」とし、それぞれの「山」に「刈り上げ法」
を適用する。 (4.1)部品グループ番号をnで表し、n = 0とする。 (4.2)nが部品グループ番号の最大値よりも大きい場合、
(4.8)へ進む。 (4.3)部品グループnに属するシングルカセットの「山」
が存在する場合、以下の処理を行う。 (4.3.1)前サブ設備110に配置する。 (4.3.2)その結果、前サブ設備110に載りきらないの
であれば、「山」を部品テープ単位で分割し、前サブ設
備110に載りきらない部品テープを後サブ設備120
に配置する。 (4.3.3)その結果、後サブ設備120に載りきらないの
であれば、エラーとする。左右ブロックのうち、Zの空
きが多いほうに「山」を配置する。左右ブロックのZの
空きが同じ場合には、右ブロックに配置する。左ブロッ
クのZに空きがあるが、「山」が収まりきらない場合に
は、「山」を部品テープ単位に2分割して、左右のブロ
ックへ配置する。 (4.4)部品グループnに属するダブルカセットの「山」が
存在する場合、以下の処理を行う。 (4.4.1)前サブ設備110に配置する。 (4.4.2)その結果、前サブ設備110に載りきらないの
であれば、「山」を部品テープ単位で分割し、前サブ設
備110に載りきらない部品テープを後サブ設備120
に配置する。 (4.4.3)その結果、後サブ設備120に載りきらないの
であれば、エラーとする。左右ブロックのうち、Zの空
きが多いほうに「山」を配置する。左右ブロックのZの
空きが同じ場合には、右ブロックに配置する。左ブロッ
クのZに空きがあるが、「山」が収まりきらない場合に
は、「山」を部品テープ単位に2分割して、左右のブロ
ックへ配置する。 (4.5)前サブ設備110と後サブ設備120の「山」を
負荷レベルを使って再配置する。各ブロック毎に、負荷
レベルの大きい「山」がカメラ(センサ)に近くなるよ
うに、負荷レベル順で「山」を並べ替える。 (4.6)nに1を加算する。 (4.7)(4.2)へ戻る。 (4.8)前サブ設備110と後サブ設備120の「山」の
状態を記憶する。
をとる。
(「山」単位移動)」を行う。詳細は、後述の「負荷レ
ベルバランス調整処理(「山」単位)」で説明している
通りである。「負荷レベルバランス調整処理(「山」単
位)」の中で、最終的には、実装点単位の負荷レベルバ
ランス調整を行う。
する。現在の商品版における、カセット分割処理の流れ
と合わせた。 (6.1)各「山」について刈り上げ処理を行い、コア部分
を残す。 (6.1.1)シングルカセットの「山」の場合奇数Z番号
(Z=大→小)の順に刈り上げを行う。10点同時吸着
ができなくなったら、刈り上げ処理を終了する。 (6.1.2)ダブルカセットの「山」の場合偶数Z番号(Z
=大→小)→奇数Z番号(Z=大→小)の順に刈り上げ
を行う。偶数側Z番号に1点でも部品数が残っていれ
ば、それを起点して刈り上げ処理を行う。たとえば、偶
数Z番号側で1点しか吸着できなければ、奇数Z番号側
で残りの9点を吸着する。奇数Z番号側で、10点同時
吸着ができなくなったら、刈り上げ処理を終了する。奇
数Z番号側にコア部分が残る。 (6.2)「山」にフラグを設ける。フラグの初期値をTRUE
とする。 (6.3)前サブ設備110と後サブ設備120の「山」の
状態を記憶しておく。 (6.4)カセットリソースの状態を記憶しておく。 (6.5)フラグがTRUEである「山」の中から、コア部分の
高さが最も高い「山」Mを探す。 (6.5.1)「山」Mが見つからなければ、(7)へ進む。つ
まり、すべての「山」に対するコア処理が終了したこと
になる。 (6.6)「山」Mが使用するカセット種Kと同種のカセッ
ト1本がリソースに残っているかを調べる。 (6.7)残っていれば、以下の処理を行う。 (6.7.1)「山」Mが使用するカセット数にカセット種K
を1本だけ追加して、コア処理を行う。別紙「与えられ
たカセット本数でのコア処理方法」を参照。 (6.7.2)コアの高さが変化しなければ、(6.6)へ戻る。 (6.7.3)コアの高さが低くなれば、(6.9)へ進む。 (6.8)残っていなければ、以下の処理を行う。 (6.8.1)前サブ設備110と後サブ設備120の「山」
の状態を1つの前の状態に戻す。 (6.8.2)カセットリソースの状態を1つ前の状態に戻
す。 (6.8.3)「山」MのフラグをFLASEにする。 (6.8.4)(6.3)へ戻る。コア部分の高さが次に高い
「山」を探すため、 (6.9)すべての「山」を実Z軸上に配置する。 (6.10)配置できれば、(6.1)へ戻る。 (6.11)配置できなければ、以下の処理を行う。 (6.11.1)前サブ設備110と後サブ設備120の「山」
の状態を1つの前の状態に戻す。 (6.11.2)カセットリソースの状態を1つ前の状態に戻
す。
述の「小部品のタスク生成処理」で説明している通りで
ある。 (8)汎用部品に対して最適化を行う。 (9)実装時間を使って前後バランスを取る。 (9.1)「前サブ設備110から後サブ設備120への山
を移動する処理」を行う。詳細は、後述の「前サブ設備
110から後サブ設備120への山を移動する処理」で
説明している通りである。
品と「山」の配置関係 仮Z軸上の「山」は、配列固定の対象となっている部品
テープと、配列固定の対象となっていない部品テープか
ら構成されている。配列固定の対象となっている部品テ
ープを「固定部品テープ」と呼ぶ。配列固定の対象なっ
ていない部品テープを「非固定部品テープ」と呼ぶ。カ
セットブロックを単に「ブロック」と呼ぶことがある。
左カセットブロックを「左ブロック」と呼び、右カセッ
トブロックを「右ブロック」と呼ぶ。
先」と呼ぶ。ある部品テープ(ある部品種の部品群)か
ら部品分割により複数の部品テープが作られ、それら部
品テープが「カセット」に収められて、そのカセットが
Z軸に配置される…というように考える。ある部品テー
プ(ある部品種の部品群)に対して部品分割を行わない
場合は、分割数を1と考え、その部品テープ(その部品
種の部品群)から部品テープが1本作られた…というよ
うに考える。
数え、NRとする。この「山」に属する固定部品テープに
関係する固定先のみを数える。この「山」に属する固定
部品テープが複数存在する場合がある。1つの部品テー
プの固定先が複数存在する場合がある。 (11)左ブロックに存在する固定先の個数を数え、NLとす
る。右ブロックの場合と同様にして、数える。 (12)NR>NLの場合、以下の処理を行う。右ブロックの固
定先が多い場合である。 (12.1)その「山」を右ブロックに配置する。「山」をブ
ロックに配置する処理については、下記を参照。詳細
は、後述の「配列固定:固定先の使用可否判断」で説明
している通りである。 (12.2)右ブロックに配置できない場合は、左ブロックに
配置する。右ブロックには、既に他の「山」が配置され
ており、この「山」を配置できるだけのZの空きが存在
しないような場合である。この結果、右ブロックに固定
部品テープが存在し、左ブロックに「山」が存在するこ
となるが、左右ブロックをまたいだ吸着動作は行わな
い。右ブロックに存在する固定部品テープと、左ブロッ
クに存在する「山」は、別々の「山」として扱う。 (12.2.1)左ブロックに配置できない場合は、「山」を部
品テープ単位で2つに分割して、左右ブロックに配置す
る。「山」を2分割するので、固定部品テープと同じブ
ロックに存在する「山」と、固定部品テープと異なるブ
ロックに存在する「山」ができる。固定部品テープと同
じブロックに存在する「山」は、「刈り上げ法」におい
て、仮Z軸上で1つの「山」(ヒストグラム)として扱
う。
右ブロックの固定先が同数である場合である。 (13.1)左右ブロックのZの空きが大きいほうに、その
「山」を配置する。 (13.2)左右ブロックのZの空きが同数である場合、その
「山」を右ブロックに配置する。 (13.3)右ブロックに配置できない場合は、左ブロックに
配置する。右ブロックには、既に他の「山」が配置され
ており、この「山」を配置できるだけのZの空きが存在
しないような場合である。この結果、右ブロックに固定
部品テープが存在し、左ブロックに「山」が存在するこ
となるが、左右ブロックをまたいだ吸着動作は行わな
い。右ブロックに存在する固定部品テープと、左ブロッ
クに存在する「山」は、別々の「山」として扱う。 (13.3.1)左ブロックに配置できない場合は、「山」を部
品テープ単位で2つに分割して、左右ブロックに配置す
る。「山」を2分割するので、固定部品テープと同じブ
ロックに存在する「山」と、固定部品テープと異なるブ
ロックに存在する「山」ができる。固定部品テープと同
じブロックに存在する「山」は、「刈り上げ法」におい
て、仮Z軸上で1つの「山」(ヒストグラム)として扱
う。
ブロックの固定先が多い場合である。 (14.1)その「山」を左ブロックへ配置する。 (14.2)左ブロックに配置できない場合は、右ブロックに
配置する。左ブロックには、既に他の「山」が配置され
ており、この「山」を配置できるだけのZの空きが存在
しないような場合である。この結果、左ブロックに固定
部品テープが存在し、右ブロックに「山」が存在するこ
となるが、左右ブロックをまたいだ吸着動作は行わな
い。左ブロックに存在する固定部品テープと、右ブロッ
クに存在する「山」は、別々の「山」として扱う。 (14.2.1)左ブロックに配置できない場合は、「山」を部
品テープ単位で2つに分割して、左右ブロックに配置す
る。「山」を2分割するので、固定部品テープと同じブ
ロックに存在する「山」と、固定部品テープと異なるブ
ロックに存在する「山」ができる。固定部品テープと同
じブロックに存在する「山」は、「刈り上げ法」におい
て、仮Z軸上で1つの「山」(ヒストグラム)として扱
う。
否判断 固定部品テープの元になる部品テープの最大分割可能数
をNDとする。その部品テープから「刈り上げ法」(コア
処理)により作り出された部品テープの本数をNTとす
る。必ずNT≦NDである。その部品テープに関係するブロ
ック内の固定先の個数をNZとする。具体的には、 (1)「山」を構成する部品テープについて、「山」の一
端から順に、以下の処理を行う。 (1.1)部品テープを1つ選択する。 (1.2)その部品テープについてNT≦(ND−NZ)である場
合、以下の処理を行う。 (1.2.1)その部品テープに関係する固定先を全く使用し
ないで、「山」を構成する部品テープ(NT本)をZ軸上
に配置する。「山」の形に沿って、部品テープを配置す
る。結果的に、部品テープが固定先に配置されることが
あるが、それでもかまわない。 (1.2.2)固定先には、その部品種の部品テープを配置す
る。最適化対象となっている基板については、この固定
先から部品を吸着することはないが、他の基板で吸着す
ると考えて、ユーザの指定通りに配置しておく。 (1.3)その部品テープについてNT>(ND−NZ)である場
合、以下の処理を行う。 (1.3.1)その部品テープから作られ、「山」を構成する
部品テープのうち、部品数の少ないほうから{NT−(ND
−NZ)}本の部品テープを固定先に配置する。固定先と
して、実Z軸上で「山」に近い固定先を選ぶ。 (1.3.2)残りの部品テープを、その部品テープに関係す
る固定先を全く使用しないで、Z軸上に配置する。結果
的に、部品テープが固定先に配置されることがあるが、
それもでかまわない。 (1.4)(1.1)へ戻る。
について ダブルカセットを対象とした配列固定の制約に対する最
適化は以下の通りである。 (1)送りピッチが2mmのダブルカセットを使う部品テ
ープについて、仮Z軸上に「山」を作る(図85)。つ
まり、部品数の多い順に並べた部品ヒストグラム535
を中間点(折り返し位置)で切断して折り返し、それら
前半部及び後半部の各部品が交互に入れ違いとなるよう
に合成し、部品ヒストグラム536を得る(折り返すこ
とでペアを作成する)。 (2)同様にして、送りピッチが4mmのダブルカセット
を使う部品テープについて、仮Z軸上に「山」を作る
(図86)。つまり、部品数の多い順に並べた部品ヒス
トグラム537を中間点(折り返し位置)で切断して折
り返し、それら前半部及び後半部の各部品が交互に入れ
違いとなるように合成し、部品ヒストグラム538を得
る(折り返すことでペアを作成する)。 (3)送りピッチが2mmと4mmのダブルカセットの部
品ヒストグラム536、538を融合し、部品ヒストグ
ラム539を得る(図87)。つまり、ダブルカットの
ペアを維持したまま、奇数Z番号側の部品テープの部品
数が多い順に並べ替える。 (4)奇数Z番号とヒストグラム539a(図88
(a))と偶数Z番号のヒストグラム539b(図88
(b))に分離する。 (5)配列固定の制約がない場合には、それらヒストグラ
ム539a、539bを、そのまま実Z軸に配置すれば
よい(図89(a)、(b))。 (6)配列固定の制約がある場合には(図90(a)に示
される奇数Z番号の部品A〜C及び図90(b)に示さ
れる偶数Z番号の部品D、Eが配列固定の対象部品とす
る)、以下の通りとなる。 (7)配列固定の対象となっている部品を、奇数Z番号及
び偶数Z番号それぞれについて、それを収めたダブルカ
セット単位で抜き取り、右端に置く(図91(a)、
(b))。 (8)奇数側だけについて、非固定の部品テープ540を
実Z軸上に戻す(図92(a))。偶数側はそのまま
(図92(b))。 (9)「山」の隙間を詰め、奇数側及び偶数側それぞれの
部品ヒストグラム541a、541bを得る(図93
(a)、(b))。このとき、奇数側の「山」について
は、ダブルカセットの単位で隙間を詰めることができる
が(図93(a))、偶数側の「山」については、奇数
側の「山」541aに合わせて詰めることとするため、
隙間は残ることがある(図93(b))。 (10)偶数側の部品テープを送りピッチ毎に並べ直し、部
品ヒストグラム541cを得る(図94(b))。奇数
側はそのまま(図94(a))。具体的には、偶数側に
おいて、送りピッチが2mmの部品テープについて、実
Z軸上に存在する部品テープと、配列固定対象の部品テ
ープと一緒に抜かれた配列固定対象でない部品テープと
を合わせて、部品数の大きい順に並べ直し、送りピッチ
が2mmのダブルカセットの偶数側に収める。偶数側の
送りピッチが4mmの部品テープについても、送りピッ
チが2mmの部品テープと同様に処理を行う。その結
果、ダブルカセット(43,44)、(45,46)、
(47,48)が不要となる。
(1) (2)Z(Z番号)と同数のフラグを設け、Zとフラグを1対
1に対応させる。 (3)左ブロック内の実装点について下記の処理を行う。 (3.1)Zに配置された部品テープについて、以下の処理を
行う。 ・Zに部品テープが配置されていない場合、フラグをFAL
SEとする。 ・LL制約領域に含まれる実装点を持たない場合、フラグ
をFALSEとする。 ・LL制約領域に含まれる実装点を持つ場合、フラグをTR
UEにする。 (3.2)LL制約領域に含まれない実装点の個数を数え、Nf
とする( fはfreeの意味)。 (3.3)LL制約領域に含まれる実装点の個数を数え、Nrと
する( rはrestrictedの意味)。 (3.4)NfとNrのどちらかがゼロでない場合、以下の処理
を繰り返す。 (3.4.1)NfとNrの両方がゼロでない場合 (i) LL制約領域に含まれない実装点を対象として、6点
吸着の刈り上げを行い、Z番号の順にヘッド1〜6に割り
当てる。吸着した実装点の数をPfとする。ヘッド1〜6に
満載できるように、複数回、吸着を行う。吸着した実装
点が存在したZ番号のうち、最大のZ番号をZmaxとする。 (ii) PfをNfから引く。 (iii)Zmaxよりも大きいZに存在し、かつ、LL制約領域に
含まれる実装点を対象として、4点吸着の刈り上げを行
い、Z番号の順にヘッド7〜10に割り当てる。吸着した実
装点の数をPrとする。ヘッド7〜10に満載できるよう
に、複数回、吸着を行う。 (iv)PrをNrから引く。 (3.4.2)Nfがゼロでなく、Nrがゼロである場合 (i)すべての実装点を対象として、10点吸着の刈り上げ
を行い、Z番号の順にヘッド1〜10に割り当てる。吸着し
た実装点の数をPfとする。ヘッド1〜10に満載できるよ
うに、複数回、吸着を行う。 (ii)吸着した実装点数PfをNfから引く。(3.4.3)Nfがゼ
ロであり、Nrがゼロでない場合 (ii)すべての実装点を対象として、4点吸着の刈り上げ
を行い、Z番号の順にヘッド7〜10に割り当てる。吸着し
た実装点の数をPrとする。ヘッド7〜10に満載できるよ
うに、複数回、吸着を行う。ヘッド1〜6には、吸着しな
い。 (ii)吸着した実装点数PrをNrから引く。 (3.4.4)NfとNrがゼロである場合 左ブロックに対する処理を終了する。 (4)右ブロック内の実装点について下記の処理を行う。 (4.1)Zに配置された部品テープについて、以下の処理を
行う。 ・Zに部品テープが配置されていない場合、フラグをFAL
SEとする。 ・LL制約領域に含まれる実装点を持たない場合、フラグ
をFALSEとする。 ・LL制約領域に含まれる実装点を持つ場合、フラグをTR
UEにする。 (4.2)LL制約領域に含まれない実装点の個数を数え、Nf
とする( fはfreeの意味) (4.3)LL制約領域に含まれる実装点の個数を数え、Nrと
する( rはrestrictedの意味)。 (4.4)NfとNrのどちらかがゼロでない場合、以下の処理
を繰り返す。 (4.4.1)NfとNrの両方がゼロでない場合 (i)LL制約領域に含まれる実装点を対象として、4点吸着
の刈り上げを行い、Z番号の順にヘッド7〜10に割り当て
る。吸着した実装点の数をPrとする。ヘッド7〜10に満
載できるように、複数回、吸着を行う。吸着した実装点
が存在したZ番号のうち、最大のZ番号をZminとする。 (ii)PrをNrから引く。 (iii)Zminよりも小さいZに存在し、かつ、LL制約領域に
含まれない実装点を対象として、6点吸着の刈り上げを
行い、Z番号の順にヘッド1〜6に割り当てる。吸着した
実装点の数をPfとする。ヘッド1〜6に満載できるよう
に、複数回、吸着を行う。 (iv)PfをNfから引く。 (4.4.2)Nfがゼロでなく、Nrがゼロである場合 (i)すべての実装点を対象として、10点吸着の刈り上げ
を行い、Z番号の順にヘッド1〜10に割り当てる。吸着し
た実装点の数をPfとする。ヘッド1〜10に満載できるよ
うに、複数回、吸着を行う。 (ii)吸着した実装点数PfをNfから引く。 (4.4.3)Nfがゼロであり、Nrがゼロでない場合 (i)すべての実装点を対象として、4点吸着の刈り上げを
行い、Z番号の順にヘッド7〜10に割り当てる。吸着した
実装点の数をPrとする。ヘッド7〜10に満載できるよう
に、複数回、吸着を行う。ヘッド1〜6には、吸着しな
い。 (ii)吸着した実装点数PrをNrから引く。 (4.4.4)NfとNrがゼロである場合 右ブロックに対する処理を終了する。 (5)終了
(2) (1)Z(Z番号)と同数のフラグを設け、Zとフラグを1対
1に対応させる。 (2)左ブロック内の実装点について下記の処理を行う。 (2.1)Zに配置された部品テープについて、以下の処理を
行う。 ・Zに部品テープが配置されていない場合、フラグをFAL
SEとする。 ・LL制約領域に含まれる実装点を持たない場合、フラグ
をFALSEとする。 ・LL制約領域に含まれる実装点を持つ場合、フラグをTR
UEにする。 (2.2)LL制約領域に含まれない実装点の個数を数え、Nf
とする( fはfreeの意味)。 (2.3)LL制約領域に含まれる実装点の個数を数え、Nrと
する( rはrestrictedの意味)。 (2.4)NfとNrのどちらかがゼロでない場合、以下の処理
を繰り返す。 (2.4.1)NfとNrの両方がゼロでない場合 (i)LL制約領域に含まれない実装点を対象として、6点吸
着の刈り上げを行い、Z番号の順にヘッド1〜6に割り当
てる。吸着した実装点の数をPfとする。ヘッド1〜6に満
載できるように、複数回、吸着を行う。吸着した実装点
が存在したZ番号のうち、最小のZ番号をZfとする。 (ii)PfをNfから引く。 (iii)LL制約領域に含まれる実装点を対象として、4点吸
着の刈り上げを行い、Z番号の順にヘッド7〜10に割り当
てる。吸着した実装点の数をPrとする。ヘッド7〜10に
満載できるように、複数回、吸着を行う。吸着した実装
点が存在したZ番号のうち、最小のZ番号をZrとする。 (iv)PrをNrから引く。 (v)Zf ≦ Zrであれば、ヘッド1〜6、ヘッド7〜10の順
にNCデータを並べる。ヘッド1〜6、ヘッド7〜10の順に
吸着する。吸着順序は実装順序と一致し、実装順序は、
NCデータの順序である。 (vi)Zf > Zrであれば、ヘッド7〜10、ヘッド1〜6の
順にNCデータを並べる。ヘッド7〜10、ヘッド1〜6の順
に吸着する。吸着順序は実装順序と一致し、実装順序
は、NCデータの順序である。 (2.4.2)Nfがゼロでなく、Nrがゼロである場合 (i)すべての実装点を対象として、10点吸着の刈り上げ
を行い、Z番号の順にヘッド1〜10に割り当てる。吸着し
た実装点の数をPfとする。ヘッド1〜10に満載できるよ
うに、複数回、吸着を行う。 (ii)吸着した実装点数PfをNfから引く。 (2.4.3)Nfがゼロであり、Nrがゼロでない場合(i)すべ
ての実装点を対象として、4点吸着の刈り上げを行い、Z
番号の順にヘッド7〜10に割り当てる。吸着した実装点
の数をPrとする。ヘッド7〜10に満載できるように、複
数回、吸着を行う。4点吸着タスクが多数できてしまう
場合がある。 (ii)吸着した実装点数PrをNrから引く。 (2.4.4)NfとNrがゼロである場合左ブロックに対する処
理を終了する。 (3)右ブロック内の実装点について下記の処理を行う。 (3.1)Zに配置された部品テープについて、以下の処理を
行う。 ・Zに部品テープが配置されていない場合、フラグをFAL
SEとする。 ・LL制約領域に含まれる実装点を持たない場合、フラグ
をFALSEとする。 ・LL制約領域に含まれる実装点を持つ場合、フラグをTR
UEにする。 (3.2)LL制約領域に含まれない実装点の個数を数え、Nf
とする( fはfreeの意味) (3.3)LL制約領域に含まれる実装点の個数を数え、Nrと
する( rはrestrictedの意味)。 (3.4)NfとNrのどちらかがゼロでない場合、以下の処理
を繰り返す。 (3.4.1)NfとNrの両方がゼロでない場合 (i)LL制約領域に含まれる実装点を対象として、4点吸着
の刈り上げを行い、Z番号の順にヘッド7〜10に割り当て
る。吸着した実装点の数をPrとする。ヘッド7〜10に満
載できるように、複数回、吸着を行う。吸着した実装点
が存在したZ番号のうち、最小のZ番号をZrとする。 (ii)PrをNrから引く。 (iii)LL制約領域に含まれない実装点を対象として、6点
吸着の刈り上げを行い、Z番号の順にヘッド1〜6に割り
当てる。吸着した実装点の数をPfとする。ヘッド1〜6に
満載できるように、複数回、吸着を行う。吸着した実装
点が存在したZ番号のうち、最小のZ番号をZfとする。 (iv)PfをNfから引く。 (v)Zf ≦ Zrであれば、ヘッド7〜10、ヘッド1〜6の順
にNCデータを並べる。ヘッド7〜10、ヘッド1〜6の順に
吸着する。吸着順序は実装順序と一致し、実装順序は、
NCデータの順序である。 (vi)Zf > Zrであれば、ヘッド1〜6、ヘッド7〜10の
順にNCデータを並べる。ヘッド1〜6、ヘッド7〜10の順
に吸着する。吸着順序は実装順序と一致し、実装順序
は、NCデータの順序である。 (3.4.2)Nfがゼロでなく、Nrがゼロである場合 (i)すべての実装点を対象として、10点吸着の刈り上げ
を行い、Z番号の順にヘッド1〜10に割り当てる。吸着し
た実装点の数をPfとする。ヘッド1〜10に満載できるよ
うに、複数回、吸着を行う。 (ii)吸着した実装点数PfをNfから引く。 (3.4.3)Nfがゼロであり、Nrがゼロでない場合 (i)すべての実装点を対象として、4点吸着の刈り上げを
行い、Z番号の順にヘッド7〜10に割り当てる。吸着した
実装点の数をPrとする。ヘッド7〜10に満載できるよう
に、複数回、吸着を行う。4点吸着タスクが多数できて
しまう場合がある。 (ii)吸着した実装点数PrをNrから引く。 (3.4.4)NfとNrがゼロである場合 右ブロックに対する処理を終了する。 (4)終了
プの入れ替え(1) (1)この段階までに、「刈り上げ法」により、すべての
山が確定しているものとする。 (2)Aブロックについて、位置Z = 1〜11について、以
下の処理を行う。 (2.1)位置Zに存在する部品テープを部品テープKとし、
部品テープKに属する実装点のX座標の最大値Xmaxを求め
る。位置Zに部品テープが存在しなければ、Xmax = 0
とする。 (2.2)Xmax ≦ 400.0[mm]である場合 (部品テープKがLL制約領域に存在する実装点を持たな
い場合) (2.2.1)何もしない。ノズル1で実装できる実装点のX座
標の最大値が400.0[mm]である。 (2.3)Xmax > 400.0[mm]である場合 (部品テープKがLL制約領域に存在する実装点を持つ場
合) (2.3.1)部品テープKを含む山Mを構成し、かつ、Z = 1
2以降に存在する部品テープの中から、LL制約領域に実
装点を持たず、かつ、部品テープKと部品数が近い部品
テープを見つけ、それと部品テープKを入れ替える。ダ
ブルカセットを使用する部品テープの場合は、送りピッ
チが一致することも必要である。 (2.3.2)見つからない場合、Aブロックに存在し、かつ、
山Mではない山を構成し、かつ、Z = 12以降に存在す
る部品テープの中から、LL制約領域に実装点を持たず、
かつ、部品数が最小の部品テープを見つけ、それと入れ
替える。異なる部品グループの部品テープとの入れ替え
となる場合がある。ダブルカセットを使用する部品テー
プの場合は、送りピッチが一致することも必要である。 (2.3.3)見つからない場合、Bブロックに存在する山を構
成する部品テープの中から、LL制約領域に実装点を持た
ず、かつ、部品数が最小の部品テープを見つけ、それと
入れ替える。異なる部品グループの部品テープとの入れ
替えとなる場合がある。1つのタスクについて、Aブロ
ックとBブロックの両方から吸着する場合がある。ダブ
ルカセットを使用する部品テープの場合は、送りピッチ
が一致することも必要である。 (2.3.4)見つからない場合、実装不可能とする。 (3)終了する。
プの入れ替え(2) (1)この段階までに、「刈り上げ法」により、すべての
山が確定しているものとする。 (2)タスクを生成する。 (3)各タスクのヘッド番号と位置Zの対応を調べて、位置
Zのそれぞれについて、そこから実装点を吸着するヘッ
ド番号の最小値を求める。 (4)Aブロックについて、位置Z = 1〜11について、以
下の処理を行う。 (4.1)位置Zに存在する部品テープを部品テープKとし、
部品テープKに属する実装点のX座標の最大値Xmaxを求め
る。位置Zに部品テープが存在しなければ、Xmax = 0
とする。 (4.2)位置Zから実装点を吸着する、最小のヘッド番号で
装着できるX座標の最大値をXhとする。 (4.3)Xmax ≦ Xhである場合 (部品テープKがLL制約領域に存在する実装点を持たな
い場合) (4.3.1)何もしない。 (4.4)Xmax > Xhである場合 (部品テープKがLL制約領域に存在する実装点を持つ場
合) (4.4.1)部品テープKを含む山Mを構成し、かつ、Z = 1
2以降に存在する部品テープの中から、LL制約領域に実
装点を持たず、かつ、部品テープKと部品数が近い部品
テープを見つけ、それと部品テープKを入れ替える。 ダブルカセットを使用する部品テープの場合は、送りピ
ッチが一致することも必要である。 (4.4.2)見つからない場合、Aブロックに存在し、かつ、
山Mではない山を構成し、かつ、Z = 12以降に存在す
る部品テープの中から、LL制約領域に実装点を持たず、
かつ、部品数が最小の部品テープを見つけ、それと入れ
替える。異なる部品グループの部品テープとの入れ替え
となる場合がある。ダブルカセットを使用する部品テー
プの場合は、送りピッチが一致することも必要である。 (4.4.3)見つからない場合、Bブロックに存在する山を構
成する部品テープの中から、LL制約領域に実装点を持た
ず、かつ、部品数が最小の部品テープを見つけ、それと
入れ替える。異なる部品グループの部品テープとのm入
れ替えとなる場合がある。1つのタスクについて、Aブ
ロックとBブロックの両方から吸着する場合がある。ダ
ブルカセットを使用する部品テープの場合は、送りピッ
チが一致することも必要である。 (4.4.4)見つからない場合、実装不可能とする。 (5)終了する。
制約) 下記の方法により、XL制約を回避する。 (1)実装点座標による前サブ設備110/後サブ設備1
20への割り当て (2)実装点座標による部品分割 (3)前サブ設備110と後サブ設備120の両方で実装
できる領域を利用した初期振り分け (4)LL制約の回避 具体的には、以下の通りである。 (1)実装点座標による前サブ設備110/後サブ設備1
20への割り当て いま、実装点座標による前サブ設備110/後サブ設備
120への割り当ては、図46に示されるテーブルとす
る。 (2)実装点座標による部品分割 (2.1)部品テープが持つ実装点座標によって、次の3通
りがある。
当てる。 (ii)部品テープを後サブ設備120へ割り当てる。 (iii)部品テープを前サブ設備110と後サブ設備12
0の分割して割り当てる。 (2.2)上記(3)の場合、部品分割が必要となる。部品数を
前サブ設備110/後サブ設備120へ配分するのでは
なく、実装点そのものを前サブ設備110/後サブ設備
120へ配分する。
の両方で実装できる領域を利用した初期振り分け (3.1)図46に示された領域1)2)に対応する部品テープ
を前サブ設備110に振り分ける。 (3.1.1)領域1)2)に対応する部品テープ毎に負荷レベル
を計算し、その合計を前サブ設備110の負荷レベルと
する。 (3.2)領域6)7)に対応する部品テープを後サブ設備12
0に振り分ける。 (3.2.1)領域6)7)に対応する部品テープ毎に負荷レベル
を計算し、その合計を前サブ設備110の負荷レベルと
する。 (3.3)領域4)5)6)に対応する部品テープを、部品グルー
プの順に、部品数の多い順に、置けるだけ、前サブ設備
110のZに配置する。 (3.3.1)置いた部品テープの負荷レベルを計算し、前サ
ブ設備110の負荷レベルに加算する。 (3.4)領域4)5)6)に対応する部品テープの中で、前サブ
設備110に配置できなかった部品テープは、後サブ設
備120のZに配置する。 (3.4.1)置いた部品テープの負荷レベルを計算し、後サ
ブ設備120の負荷レベルに加算する。もしも、後サブ
設備120に置ききれなかったら、エラーとする。 (3.5)(前サブ設備110の負荷レベル)<(後サブ設
備120の負荷レベル)である場合 (3.5.1)これ以上、バランスは良くならないので、終了
する。 (3.6)(前サブ設備110の負荷レベル)>(後サブ設
備120の負荷レベル)である場合、以下の処理を繰り
返す。 (3.6.1)前サブ設備110にある領域4)5)6)に対応する
部品テープの中で、最大の部品グループ番号であり、か
つ、部品数が最小の部品テープを後サブ設備120へ送
る。もしも、後サブ設備120に送れなくなったら(=
後サブ設備120のZの空きがなくなったら)、これ以
上、バランスは良くならないので、終了とする。 (3.6.2)前サブ設備110の負荷レベルと後サブ設備1
20の負荷レベルを再計算する。
域なので、LL制約に対応した処理を行う。 (4.2)後サブ設備120における領域3)6)は、LL制約領
域なので、LL制約に対応した処理を行う。
理(「山」単位) 特徴は以下の通りである。 (i)前サブ設備110の負荷レベルが後サブ設備120
の負荷レベルよりも高い状態を初期状態として、前サブ
設備110から後サブ設備120へ「山」種単位で移動
することにより、負荷レベルバランスを調整する。 (ii)バランス点上に存在する「山」について、部品テー
プ単位で負荷レベルバランス調整を行う。詳細は、後述
の「負荷レベルバランス調整処理(部品テープ単位)
(A)」で説明している通りである。
Eとする。 (2)前サブ設備110に配置された、すべての山のフラ
グがFALSEである場合、以下の処理を行う。 (2.1)(15)へ進む。前サブ設備110に配置されてい
たすべての山が後サブ設備120に移動された場合にな
る(これはありえないはず)。 (3)現在の前サブ設備110と後サブ設備120の山の
配置状態を記憶する。 (4)移動対象となる山Mを選ぶ処理を以下のように行う。
構成する部品テープについて、その部品グループ番号の
最大値を求め、PGmaxとする。 (4.2)部品グループ番号がPGmaxである部品テープを収め
たシングルカセットまたはダブルカセットから構成され
た山について、すべての山のフラグがFALSEである場
合、以下の処理を行う。 (4.2.1)前サブ設備110から後サブ設備120への山
を移動する処理を終了する。移動対象となる山が残って
いないので、前サブ設備110から後サブ設備120へ
の山を移動する処理を終了する。ラインバランスが取れ
ているとは限らない。 (4.3)「部品番号がPGmaxである部品テープを収めたシン
グルカセットから構成される山」と、「部品番号がPGma
xである部品テープを収めたダブルカセットから構成さ
れる山」の両方が存在する場合 (4.3.1)シングルカセットから構成される山を山Mとす
る。 (4.4)「部品番号がPGmaxである部品テープを収めたシン
グルカセットから構成される山」と「部品番号がPGmax
である部品テープを収めたダブルカセットから構成され
る山」のどちらか一方だけが存在する場合 (4.4.1)その山を山Mとする。 (5)前サブ設備110に配置されている山の中から山Mを
取り除き、残りの山を再配置する。(6)後サブ設備12
0に配置されている山に山Mを加えて、それらの山を再
配置する。 (7)前サブ設備110あるいは後サブ設備120におい
て、ノズル関係の制約を満足できない場合、以下の処理
を行う。 (7.1)前サブ設備110と後サブ設備120の山の配置
状態を記憶しておいた状態へ戻す。 (7.2)山MのフラグをFALSEに設定する。この山Mは、これ
以降、移動の対象にならない。 (7.3)(14)へ進む。 (8)前サブ設備110あるいは後サブ設備120におい
て、山をZ軸に置ききれない場合、以下の処理を行う。 (8.1)前サブ設備110と後サブ設備120の山の配置
状態を記憶しておいた状態へ戻す。 (8.2)(15)へ進む。移動できる山は、山Mしかないの
で、山Mを部品テープ単位に分割し、前サブ設備110
と後サブ設備120へ振り分けることで、ラインバラン
スを改善することを試みる。この山Mはラインバランス
点上にあるとは限らないので、ラインバランスを改善で
きても、ラインバランスを完全にすることはできない可
能性がある。 (9)前サブ設備110の負荷レベルを計算する。 (9.1)小部品について負荷レベルを計算する。 (9.2)汎用部品について負荷レベルを計算する。 (9.3)小部品の負荷レベルと汎用部品の負荷レベルを加
算し、前サブ設備110の負荷レベルとる。 (10)後サブ設備120の負荷レベルを計算する。 (10.1)小部品について負荷レベルを計算する。 (10.2)汎用部品について負荷レベルを計算する。 (10.3)小部品の負荷レベルと汎用部品の負荷レベルを加
算し、後サブ設備120の負荷レベルとする。 (11)前サブ設備110の実装時間と後サブ設備120の
負荷レベルが一致した場合、以下の処理を行う。 (11.1)(15)へ進む。前サブ設備110と後サブ設備1
20の負荷レベルのバランスが完全に取れたことになる (12)前サブ設備110の負荷レベルが後サブ設備120
の負荷レベルよりも小さい場合、以下の処理を行う。 (12.1)前サブ設備110と後サブ設備120の山の配置
状態を記憶しておいた状態へ戻す。 (12.2)山Mに対して「負荷レベルバランス調整処理(部
品テープ単位)」を行う。バランス点上に存在する
「山」について、部品テープ単位で負荷レベルバランス
調整を行う。詳細は、後述の「負荷レベルバランス調整
処理(部品テープ単位)(A)」で説明している通りであ
る。 (12.3)(15)へ進む。山Mがラインバランス点上にある
ことになる。山Mが前サブ設備110に配置された状態
に戻す。これ以降、山Mを部品テープ単位に分割し、前
サブ設備110と後サブ設備120へ振り分けること
で、ラインバランスを改善することを試みる。 (13)前サブ設備110の負荷レベルが後サブ設備120
の負荷レベルよりも長い場合、以下の処理を行う。 (13.1)山MのフラグをFALSEに設定する。山Mは移動済み
とする。 (13.2)(14)へ進む。更に山単位での移動を行う。 (14)上記(2)へ戻る。 (15)「負荷レベルバランス調整処理(「山」単位)」を
終了する。
理(部品テープ単位) 特徴は以下の通りである。 (i)前サブ設備110の負荷レベルが後サブ設備120
の負荷レベルよりも高い状態を初期状態として、前サブ
設備110から後サブ設備120へ部品テープ単位で移
動することにより、負荷レベルバランスを調整する。 (ii)負荷レベルの精度が良くないので、実装点単位の負
荷レベルバランス調整は行わない。 具体的な手順は以下の通りである。 (1)山Mを構成する部品テープにフラグを設ける。フラグ
の初期値はTRUEとする。 (2)山Mの部品(種)リストを作成する。 (3)部品リストにある、すべての部品テープのフラグがF
ALSEである場合、以下の処理を行う。 (3.1)(13)へ進む。「負荷レベルバランス調整処理
(部品テープ単位)」を終了する。 (4)前サブ設備110と後サブ設備120の山の配置状
態を記憶する。 (5)部品リストにある、フラグがTRUEである部品テープ
の中から、部品数が最小の部品テープKを選ぶ。 (6)部品テープKを後サブ設備120に割り当てる。 (7)部品リストに残っている、フラグがTRUEであり、か
つ、前サブ設備110にも後サブ設備120にも割り当
てられていない部品テープを前サブ設備110に割り当
てる。山M以外の山は、前サブ設備110あるいは後サ
ブ設備120に割り当てられている。 (8)前サブ設備110について、負荷レベルを計算す
る。 (8.1)小部品の負荷レベルを計算する。 (8.2)汎用部品の負荷レベルを計算する。 (8.3)小部品の負荷レベルと汎用部品の負荷レベルを加
算し、前サブ設備110の負荷レベルとする。 (9)後サブ設備120について、負荷レベルを計算す
る。 (9.1)小部品の負荷レベルを計算する。 (9.2)汎用部品の負荷レベルを計算する。 (9.3)小部品の負荷レベルと汎用部品の負荷レベルを加
算し、後サブ設備120の負荷レベルとする。 (10)前サブ設備110の負荷レベルと後サブ設備120
の負荷レベルが同じ場合、以下の処理を行う。 (10.1)(13)へ進む。前サブ設備110と後サブ設備1
20の負荷レベルのバランスが完全に取れたことにな
る。 (11)前サブ設備110の負荷レベルが後サブ設備120
の負荷レベルよりも低い場合、以下の処理を行う。 (11.1)部品テープKのフラグをFALSEに設定する。部品テ
ープKは移動済みとする。 (11.2)(13)へ進む。部品テープKを前サブ設備110
から後サブ設備120へ移動したことにより、前サブ設
備110よりも後サブ設備120の負荷レベルが高くな
ったので、部品テープ単位の移動による、負荷レベルバ
ランス調整を終了する。 (12)前サブ設備110の負荷レベルが後サブ設備120
の負荷レベルよりも高い場合、以下の処理を行う。 (12.1)部品テープKのフラグをFALSEに設定する。部品テ
ープKは移動済みとする。 (12.2)(3)に戻る。更に部品テープ単位での移動を行
う。 (13)「負荷レベルバランス調整処理(部品テープ単
位)」を終了する。3.9.19 前サブ設備から後サ
ブ設備へ山を移動する処理 (1)すべての山にフラグを設ける。フラグの初期値はTRU
Eとする。 (2)前サブ設備110に配置された、すべての山のフラ
グがFALSEである場合、以下の処理を行う。 (2.1)(16)へ進む。前サブ設備110に配置されてい
たすべての山が後サブ設備120に移動された場合にな
る(これはありえないはず)。 (3)現在の前サブ設備110と後サブ設備120の山の
配置状態を記憶する。 (4)移動対象となる山Mを選ぶ処理を以下のように行う。 (4.1)前サブ設備110に配置された山を構成する部品
テープについて、その部品グループ番号の最大値を求
め、PGmaxとする。 (4.2)部品グループ番号がPGmaxである部品テープを収め
たシングルカセットまたはダブルカセットから構成され
た山について、すべての山のフラグがFALSEである場
合、以下の処理を行う。 (4.2.1)前サブ設備110から後サブ設備120への山
を移動する処理を終了する。移動対象となる山が残って
いないので、前サブ設備110から後サブ設備120へ
の山を移動する処理を終了する。ラインバランスが取れ
ているとは限らない。 (4.3)「部品番号がPGmaxである部品テープを収めたシン
グルカセットから構成される山」と、「部品番号がPGma
xである部品テープを収めたダブルカセットから構成さ
れる山」の両方が存在する場合 (4.3.1)シングルカセットから構成される山を山Mとす
る。 (4.4)「部品番号がPGmaxである部品テープを収めたシン
グルカセットから構成される山」と「部品番号がPGmax
である部品テープを収めたダブルカセットから構成され
る山」のどちらか一方だけが存在する場合 (4.4.1)その山を山Mとする。 (5)前サブ設備110に配置されている山の中から山Mを
取り除き、残りの山を再配置する。(6)後サブ設備12
0に配置されている山に山Mを加えて、それらの山を再
配置する。 (7)前サブ設備110あるいは後サブ設備120におい
て、ノズル関係の制約を満足できない場合、以下の処理
を行う。 (7.1)前サブ設備110と後サブ設備120の山の配置
状態を記憶しておいた状態へ戻す。 (7.2)山MのフラグをFALSEに設定する。この山Mは、これ
以降、移動の対象にならない。 (7.3)(15)へ進む。 (8)前サブ設備110あるいは後サブ設備120におい
て、山をZ軸に置ききれない場合、以下の処理を行う。 (8.1)前サブ設備110と後サブ設備120の山の配置
状態を記憶しておいた状態へ戻す。 (8.2)(16)へ進む。移動できる山は、山Mしかないの
で、山Mを部品テープ単位に分割し、前サブ設備110
と後サブ設備120へ振り分けることで、ラインバラン
スを改善することを試みる。この山Mはラインバランス
点上にあるとは限らないので、ラインバランスを改善で
きても、ラインバランスを完全にすることはできない可
能性がある。 (9)前サブ設備110について、タスクを生成する。 (9.1)小部品についてタスクを生成する。 (9.2)汎用部品についてタスクを生成する。 (10)後サブ設備120について、タスクを生成する。 (10.1)小部品についてタスクを生成する。 (10.2)汎用部品についてタスクを生成する。 (11)前サブ設備110と後サブ設備120について、実
装時間を計算する。前サブ設備110と後サブ設備12
0の両方で山が配置できている場合である。 (12)前サブ設備110の実装時間と後サブ設備120の
実装時間が一致した場合、以下の処理を行う。 (12.1)(16)へ進む。前サブ設備110と後サブ設備1
20のバランスが完全に取れたことになる
設備120の実装時間よりも短い場合、以下の処理を行
う。 (13.1)前サブ設備110と後サブ設備120の山の配置
状態を記憶しておいた状態へ戻す。 (13.2)山Mに対して「前サブ設備110から後サブ設備
120へ部品テープを移動する処理」を行う。 (13.3)(16)へ進む。山Mがラインバランス点上にある
ことになる。山Mは、前サブ設備110に配置された状
態に戻す。これ以降、山Mを部品テープ単位に分割し、
前サブ設備110と後サブ設備120へ振り分けること
で、ラインバランスを改善することを試みる。 (14)前サブ設備110の実装時間が後サブ設備120の
実装時間よりも長い場合、以下の処理を行う。 (14.1)山MのフラグをFALSEに設定する。 (14.2)(15)へ進む。前サブ設備110から後サブ設備
120へ更に山を移動する必要がある場合である。 (15)上記(2)へ戻る。 (16)「前サブ設備110から後サブ設備120への山を
移動する処理」を終了する。
へ部品テープを移動する処理 特徴は以下の通りである。 (i)前サブ設備110の実装時間が後サブ設備120の
実装時間よりも長い状態を初期状態として、前サブ設備
110から後サブ設備120へ部品テープ単位で移動す
ることにより、実装時間のバランスを調整する。 (ii)移動する部品テープの個数は少ないとはいえない。
後サブ設備120に移動する部品テープが多い。部品テ
ープを前サブ設備110と後サブ設備120に配置する
ことがある。部品分割を行う。 (iii)バランスは良い。
の初期値はTRUEとする。 (2)山Mの部品(種)リストを作成する。 (3)部品リストにある、すべての部品テープのフラグがF
ALSEである場合、以下の処理を行う。 (3.1)(14)へ進む。「前サブ設備110から後サブ設
備120へ部品テープを移動する処理」を終了する。 (4)前サブ設備110と後サブ設備120の山の配置状
態を記憶する。 (5)部品リストにある、フラグがTRUEである部品テープ
の中から、部品数が最小の部品テープKを選ぶ。 (6)部品テープKを後サブ設備120に割り当てる。 (7)部品リストに残っている、フラグがTRUEであり、か
つ、前サブ設備110にも後サブ設備120にも割り当
てられていない部品テープを前サブ設備110に割り当
てる。山M以外の山は、前サブ設備110あるいは後サ
ブ設備120に割り当てられている。 (8)前サブ設備110について、タスクを生成する。 (8.1)小部品のタスクを生成する。コア処理により部品
分割が行われる。 (8.2)汎用部品のタスクを生成する。ユーザの指定通り
に部品分割を行う。 (9)後サブ設備120について、タスクを生成する。 (9.1)小部品のタスクを生成する。コア処理により部品
分割が行われる。 (9.2)汎用部品のタスクを生成する。ユーザの指定通り
に部品分割を行う。 (10)前サブ設備110の実装時間と後サブ設備120の
実装時間を計算する。 (11)前サブ設備110の実装時間と後サブ設備120の
実装時間が同じ場合、以下の処理を行う。 (11.1)(14)へ進む。前サブ設備110と後サブ設備1
20のバランスが完全に取れたことになる。 (12)前サブ設備110の実装時間が後サブ設備120の
実装時間よりも短い場合、以下の処理を行う。 (12.1)部品テープKのフラグをFALSEに設定する。部品テ
ープKは、移動済みとする。 (12.2)部品テープKに対して「前サブ設備110から後
サブ設備120へ実装点を移動する処理」を行う。部品
テープKを前サブ設備110から後サブ設備120へ移
動したことにより、前サブ設備110よりも後サブ設備
120の実装時間が長くなったので、部品テープKを分
割し、前サブ設備110と後サブ設備120に振り分け
て、ラインバランスを改善する。 (12.3)(14)へ進む。 (13)前サブ設備110の実装時間が後サブ設備120の
実装時間よりも長い場合、以下の処理を行う。 (13.1)部品テープKのフラグをFALSEに設定する。部品テ
ープKは、移動済みとする。 (13.2)(3)に戻る。更に部品テープ単位での移動を行
う。 (14)「前サブ設備110から後サブ設備120へ部品テ
ープを移動する処理」を終了する。
へ実装点を移動する処理 部品テープKを実装点単位で分割し、前サブ設備110
と後サブ設備120に振り分ける処理を以下のように行
う。 (1)実装点をy座標の小さい順に並べる。 (1.1)y座標が同じ場合はx座標の小さい順に並べる。こ
れを実装点リストを呼ぶ。部品テープKを実装点単位で
分割し、前サブ設備110と後サブ設備120に振り分
けた場合、前サブ設備110または後サブ設備120
に、部品テープKが1つだけ配置される可能性がある。
そのような場合、実装点の近い実装点が集まっていたほ
うが有利と考えられるので、ここでは実装点をその座標
で並べ替えた。もしも「貪欲法」において、前サブ設備
110と後サブ設備120に在る同じ部品テープについ
て、共通に適用されるのであれば、この並べ替えは不要
である。前サブ設備110と後サブ設備120とで独立
に「貪欲法」を適用するのであれば、この並べ替えが有
効である。 (2)前サブ設備110に割り当てる実装点の個数を示す
値nに1を設定する。 (3)nが部品テープKの実装点数よりも大きい場合、以下
の処理を行う。 (3.1)(12)へ進む。「前サブ設備110から後サブ設
備120へ実装点を移動する処理」を終了する。 (4)実装点リストの先頭からn番目までの実装点を前サブ
設備110へ割り当てる。 (5)実装点リストの(n+1)番目から最後までの実装点を後
サブ設備120へ割り当てる。 (6)前サブ設備110について、タスクを生成する。 (6.1)小部品のタスクを生成する。コア処理により部品
分割が行われる。 (6.2)汎用部品のタスクを生成する。ユーザの指定通り
に部品分割を行う。 (7)後サブ設備120について、タスクを生成する。 (7.1)小部品のタスクを生成する。コア処理により部品
分割が行われる。 (7.2)汎用部品のタスクを生成する。ユーザの指定通り
に部品分割を行う。 (8)前サブ設備110の実装時間と後サブ設備120の
実装時間を計算する。 (9)前サブ設備110の実装時間と後サブ設備120の
実装時間が同じ場合、以下の処理を行う。 (9.1)(12)へ進む。「前サブ設備110から後サブ設
備120へ実装点を移動する処理」を終了する。前サブ
設備110と後サブ設備120のバランスが完全に取れ
たことになる。 (10)前サブ設備110の実装時間が後サブ設備120の
実装時間よりも短い場合、以下の処理を行う。 (10.1)(12)へ進む。「前サブ設備110から後サブ設
備120へ実装点を移動する処理」を終了する。前サブ
設備110と後サブ設備120のバランスは、かなり良
くなっているが、完全ではない。 (11)前サブ設備110の実装時間が後サブ設備120の
実装時間よりも長い場合、以下の処理を行う。(11.1)n
に1を加算する。 (11.2)(3)に戻る。前サブ設備110から後サブ設備
120へ更に実装点を移動する。 (12)「前サブ設備110から後サブ設備120へ実装点
を移動する処理」を終了する。
ワップ処理 次に、移動先のZ軸に空きがない場合におけるラインバ
ランス処理(スワップ処理)について、Z軸に空きがあ
る場合と比較しながら説明する。図95(a),(b)
は、Z軸に空きがある場合における前サブ設備110と
後サブ設備120の実装時間の例、及び、そのときのラ
インバランス処理を示す説明図であり、図95(c),
(d)は、Z軸に空きがない場合における前サブ設備1
10と後サブ設備120の実装時間の例、及び、そのと
きのラインバランス処理(スワップ処理)を示す説明図
である。Z軸に空きがある場合は、図95(a),
(b)に示されるように、上述(3.9.19〜3.
9.21)の移動処理の通りであり、この例では、両実
装時間の差を解消するために、7.5秒分の部品545
を前サブ設備110から後サブ設備120に移動するこ
とによってバランスをとる。一方、Z軸に空きがない場
合は、図95(c),(d)に示されるように、前サブ
設備110に振り分けられている部品数の多い部品54
7と、後サブ設備120に振り分けられている部品数の
少ない部品546とを、部品カセット(部品テープ)の
単位で、スワップする。これによって、それら部品数の
差に相当する実装時間が前サブ設備110から後サブ設
備120に移動することとなり、実装時間が平準化され
る。
げ法」 ダブルカセットを対象とした「刈り上げ法」は以下の通
りである。 (1)送りピッチが2mmのダブルカセットを使う部品テ
ープについて、仮Z軸上に「山」を作る(図96)。つ
まり、部品数の多い順に並べた部品ヒストグラム550
を中間点(折り返し位置)で切断して折り返し、それら
前半部及び後半部の各部品が交互に入れ違いとなるよう
に合成する(折り返すことでペアを作成する)ことで、
部品ヒストグラム551を得る。 (2)同様にして、送りピッチが4mmのダブルカセット
を使う部品テープについて、仮Z軸上に「山」を作る
(図97))。つまり、部品数の多い順に並べた部品ヒ
ストグラム552を中間点(折り返し位置)で切断して
折り返し、それら前半部及び後半部の各部品が交互に入
れ違いとなるように合成する(折り返すことでペアを作
成する)ことで、部品ヒストグラム553を得る。 (3)送りピッチが2mmと4mmのダブルカセットの部
品ヒストグラム551、553を融合し、部品ヒストグ
ラム554を得る(図98)。つまり、ダブルカットの
ペアを維持したまま、奇数Z番号側の部品テープの部品
数が多い順に並べ替える。 (4)奇数Z番号のヒストグラム554a(図99
(a))と、偶数Z番号のヒストグラム554b(図9
9(b))に分離する。 (5)各ヒストグラム554a、554bにおいて、部品
数の小さい部品テープから刈り上げていくことで、10
点同時吸着の吸着パターンを作っていく(図100
(a)、(b))。その結果、それぞれのヒストグラム
において、コア部分555a、555bが残る。 (6)奇数側のコア部分555a及び偶数側のコア部分5
55bそれぞれについて、補完パターン556a、55
6bを作る(図101(a)、(b))。つまり、コア
部分の実装点数は、奇数側が92点、偶数側が12点で
あり、合計で104点となっているので、10点タスク
を10個作る(4点タスクが1つ残す)。
は最大で3なので、偶数側に10点タスクを3個作り、
残りのタスクは奇数側に作る。 (7)奇数側及び偶数側の補完部品テープ557a、55
7bを並べる(図102(a)、(b))。本図におい
て、補完部品テープは、奇数側では、「*」で示され、
偶数側では、「#」で示されている。
完部品テープの本数が一致しない場合がある。 (8)奇数側の補完部品テープ557aに偶数側の補完部
品テープ557bを重ねることで、1つの補完部品テー
プ5558にする(図103(a)、(b))。 (9)合成された補完部品テープ558に実装点を割り当
てる(図104(a)、(b))。
部品テープは、1つの部品テープだけで構成されてい
る。したがって、合成を解除(分割)して、奇数側と偶
数側の補完テープを作ると、それらは送りピッチが必ず
一致するので、ペアとしてダブルカセットに収めること
ができる。 (10)合成された補完部品テープを奇数側558aと偶数
側558bに分割する(図105(a)、(b))。 (11)奇数側及び偶数側のヒストグラムに対して、それぞ
れ、吸着パターン559a、559bを作る(図106
(a)、(b))。
つの部品テープがダブルカセットに収納される際には同
一の送りピッチの部品テープだけが収納されなければな
らないという制約が満たされ、かつ、少ない吸着パター
ン(同時吸着できる頻度が高い)で実装される。3.
9.24 ノズル交換のアルゴリズム図11に示される
ように、部品の種類によって、吸着可能なノズルのタイ
プが限定される。従って、マルチ装着ヘッド112は、
部品を吸着するに際し、予め、吸着しようとする部品テ
ープに対応したタイプのノズルを装着しておく(ノズル
ステーションにおいてノズル交換しておく)必要があ
る。
頻度を抑制するように、部品テープの配列を決定してお
く処理が必要となる。そのためのアルゴリズム(「ノズ
ル交換のアルゴリズム」)は以下の通りである。図10
7は、ノズル交換のアルゴリズムを説明するための図で
あり、図107(a)は、対象の部品の種類(使用可能
なノズルの番号)と部品数を示す表であり、図107
(b)は、処理過程を示す部品ヒストグラムである。こ
こで、図107(b)の部品に付された数値はノズル番
号を示し、矢印は部品分割による吸着パターンの作成処
理を示し、円で囲まれた数値は吸着パターンを指す。こ
こでは、「刈り上げ法」の応用で対応している。具体的
には、 1)まず、大型部品であるために「隣接の条件」で10個
単位にできないものは対象から除外する。ここで、「隣
接の条件」とは、部品がヘッドによって吸着・移動・装
着される際に確保すべき空間的なクリアランスであり、
実装時における部品どうしの接触等を避けるために確保
すべき空間的なマージンである。 2)ノズル単位で部品数順に並べる。
の番号)と部品数は図107(a)に示される通りであ
るので、図107(b)における左の5列分の部品並び
となる。 3)トータル部品数からタスク数の枠を作成する。この例
では、合計部品数が67個であるので、70個の枠を作
成する。 4)10ノズルを満たすように、部品数の多い部品から山
を崩す。
枠に入るように上部からつめる。 ・この時、最大分割制約と同様に、手持ちノズル本数と
する。つまり、この制約の中で分割を実施する。 5)最終的に、枠を決めた中に収めるようにする。これに
より、タスク数は最小のタスクの中に収まることとな
る。 6)上記の手順は、あくまでノズル構成を考慮した最適化
であるので、次に、ノズルの配置及びタスクの順番につ
いて、大型部品を含めて構成を見直す。具体的には、大
型部品については、上記で決定されたタスク構成の中
で、間に入れるなどの処理をする。 7)この例では、タスクの順番を見直すことにより、ノズ
ルチェンジは1回のみ(6)→7)の間でのみ)ノズル交換
が発生する。
ースの機能を説明する。つまり、最適化プログラム格納
部305に格納された最適化プログラムに基づいて、最
適化装置300がユーザと対話するために、演算制御部
301が表示部302に表示する画面表示例や入力部3
03を介してユーザから取得するパラメータを中心に説
明する。
300は、最適化の状態及び品種プログラムの情報を表
示する。各表示項目(以下、[]で囲まれた項目)及び
その表示項目を選択したときに表示されるポップアップ
メニューから選択することができる項目(以下、*が添
付された項目)の意味(最適化装置300の処理)は、
以下の通りである。1) メニュー [ファイル] *開く ユーザから品種プログラム(最適化の対象となる実装点
データ307aなど)や各種ライブラリ(部品ライブラ
リ307bなど)の選択を取得し、選択された品種プロ
グラムを読込む。読込み結果(品種プログラム名、実装
点数、部品種類、設備情報、最適化情報)をメイン画面
に表示する。 *上書き保存 上書き確認メッセージで「はい」が押下された場合、最
適化された品種プログラムを上書き保存する。 *名前を付けて保存 名前を付けて保存画面を表示し、最適化された品種プロ
グラムを入力された保存ファイル名で保存する。 *閉じる 選択中の品種プログラムを閉じる。 *最適化の終了 アプリケーションを終了する。 [最適化] *最適化 読込んだ品種プログラム情報を最適化し、その最適化結
果のシミュレーションを実行して、結果をメイン画面に
表示する。最適化を行う前に、各種リソース及び最適化
条件の設定を可能とするためである。 *停止 最適化を停止する。 *最適化詳細情報 最適化詳細情報画面を表示する。 [設定] 最適化リソースの設定と最適化条件の設定を行う。 ・リソース *カセット個数設定 カセット個数設定画面を表示する。これに対し、ユーザ
は、本設備で使用可能なカセット個数を入力することが
できる。 *部品分割数設定 部品分割数設定画面を表示する。これに対し、ユーザ
は、同時吸着するための部品分割数を指定することがで
きる。 *ノズル本数設定 ノズル本数設定画面を表示する。これに対し、ユーザ
は、本設備で使用可能なノズル本数を入力することがで
きる。 *ノズルステーション選択 ノズルステーション選択画面を表示する。これに対し、
ユーザは、本設備で使用可能なノズルステーションのプ
レートIDを入力することができる。 ・最適化条件 *オプション設定 オプション設定画面を表示する。これに対し、ユーザ
は、本設備のオプション仕様及び最適化条件を設定する
ことができる。 *Z軸情報 Z軸情報画面を表示する。各Z軸に配置された部品の特
性を表示する。 *ノズルステーション情報 ノズルステーション情報画面を表示する。本設備のノズ
ルステーション情報を表示する。 [印刷] 最適化情報、リソース情報等を最適化装置300が備え
るプリンター等に印刷する。 *最適化詳細情報 最適化詳細情報の印刷を実行する。 *Z軸情報 Z軸情報の印刷を実行する。 *ノズルステーション情報 ノズルステーション情報の印刷を実行する。 *カセット個数情報 カセット個数情報の印刷を実行する。 *部品分割数情報 部品分割数情報の印刷を実行する。 *ノズル本数情報 ノズル本数情報の印刷を実行する。 *ノズルステーション選択情報 ノズルステーション選択情報の印刷を実行する。 [ヘルプ] 画面のバージョン、ヘルプの管理を行う。 *ヘルプ ヘルプを起動する。 *バージョン情報 バージョン情報を表示する。
ージ」、「2nd ステージ」)毎に表示する。 *実装時間(秒) 最適化前/後のシミュレーションした結果を表示する。 *最適化率(%) 最適化前/後の実装時間を比率(%)で表示する。 <計算式> (最適化後実装時間/最適化前実装時間)
*100 *CPH(点) 1時間あたりの実装点数を表示する。 <計算式> (実装点数/実装時間)*3600(秒) *タスク数 タスク数を表示する。 3) 設備情報 設備の情報をサブ設備(図中の「1st ステージ」、
「2nd ステージ」)毎に表示する。 *ヘッドタイプ 前/後サブ設備のヘッドタイプを表示する。(10ヘッ
ド) *カメラ 前/後サブ設備のカメラ状態を表示する。(2Dセン
サ、2D+3Dセンサ) *トレイ 前/後サブ設備のトレイ状態を表示する。(手置きトレ
イ、エレベータトレイ) *実装点数 品種プログラム内の前/後サブ設備の実装点数を表示す
る。 *部品種類 品種プログラム内の前/後サブ設備の部品種類数を表示
する。 4) 品種プログラム情報 現在選択中品種プログラムの情報を表示する。 *品種プログラム名 現在選択中の品種プログラム名を表示する。 *実装点数 品種プログラム内の実装点数を表示する。 *部品種類 品種プログラム内の部品種類数を表示する。 5) 最適化ボタン 読込んだ品種プログラム情報を最適化し、その最適化結
果のシミュレーションを実行して、結果をメイン画面に
表示する。ただし、最適化を行う前に、各種リソース及
び最適化条件の設定をする必要がある。 6) 最適化詳細情報ボタン 最適化詳細情報画面を表示する。 7) 終了ボタン アプリケーションを終了する。
300は、品種プログラムと各種ライブラリを指定して
品種プログラムを開くことができる。 1) 品種プログラム一覧 品種プログラム(ファイル名、作成日時、更新日時、容
量)の一覧を表示する。 2) 品種プログラム検索 品種プログラム(先頭のPを除く)の入力後、検索ボタ
ンを押下することにより品種プログラムの検索を行うこ
とができる。なお、入力された文字に対して前方一致検
索を行うので、プログラム名を全て入力する必要はな
い。 3) ライブラリ選択 登録されている各種ライブラリを表示する。 *部品ライブラリ 登録されている部品ライブラリ名を表示する。なお、頭
文字は"L"から始まる。この部品ライブラリは、図9に
示された部品ライブラリ307bに相当する。 *供給ライブラリ 登録されている供給ライブラリ名を表示する。なお、頭
文字は"Y"から始まる。この供給ライブラリは、図9に
示された実装装置情報307cを構成する情報の1つで
あり、部品供給部115a及びb、部品カセット、トレ
イ供給部117及びトレイ等の仕様に関する情報を保持
している。 *マークライブラリ 登録されているマークライブラリ名を表示する。なお、
頭文字は"B"から始まる。このマークライブラリは、図
9に示された実装装置情報307cを構成する情報の1
つであり、基板に対するマルチ装着ヘッド112の位置
決め等のために使用される基板上に印刷された認識マー
クの形状等に関する情報を保持している。 *ノズルライブラリ 登録されているノズルライブラリ名を表示する。なお、
頭文字は"V"から始まる。このノズルライブラリは、図
9に示された実装装置情報307cを構成する情報の1
つであり、各種吸着ノズルの形状等に関する情報を保持
している。 4) 開くボタン 指定した品種プログラムを、選択したライブラリで開
く。なお、品種プログラム一覧上でダブルクリックされ
た場合には、開くボタンと同様の処理を実行する。 5) キャンセルボタン メイン画面に戻る。
300は、サブ設備(図中の「1st ステージ」、
「2nd ステージ」)毎に、最適化詳細情報を表示す
る。 1) 品種プログラム情報 現在選択中品種プログラムの情報を表示する。 *品種プログラム名 現在選択中の品種プログラム名を表示する。 *実装点数 品種プログラム内の実装点数を表示する。 *部品種類 品種プログラム内の部品種類数を表示する。
ージ」、「2nd ステージ」)毎に表示する。 *実装時間(秒) 最適化前/後のシミュレーションした結果を表示する。 *最適化率(%) 最適化前/後の実装時間を比率(%)で表示する。 <計算式> (最適化後実装時間/最適化前実装時間)
*100 *CPH(点) 1時間あたりの実装点数を表示する。 <計算式> (実装点数/実装時間)*3600(秒) *タスク数 タスク数を表示する。 *ノズル交換回数 ノズル交換を行う回数を表示する。 *ノズル交換時間 ノズル交換にかかるトータルの時間を表示する。 *吸着回数 吸着を行う回数を表示する。 *吸着時間 吸着にかかるトータルの時間を表示する。 *スキャン回数 スキャンを行う回数を表示する。 *スキャン時間 スキャンにかかるトータルの時間を表示する。
備(図中の「1st ステージ」、「2nd ステー
ジ」)毎に表示する。 4) 設備情報 設備の情報をサブ設備(図中の「1st ステージ」、
「2nd ステージ」)毎に表示する。 *ヘッドタイプ 前/後サブ設備のヘッドタイプを表示する。(10ヘッ
ド) *カメラ 前/後サブ設備のカメラ状態を表示する。(2Dセン
サ、2D+3Dセンサ) *トレイ 前/後サブ設備のトレイ状態を表示する。(手置きトレ
イ、エレベータトレイ) *実装点数 品種プログラム内の前/後サブ設備の実装点数を表示す
る。 *部品種類 品種プログラム内の前/後サブ設備の部品種類数を表示
する。 5) 印刷ボタン 最適化詳細情報の印刷を実行する。 6) キャンセルボタン 最適化詳細情報画面を終了し、メイン画面に戻る。
300は、ユーザの指示に従って、カセット個数情報の
表示/最大個数の設定を行う。 1) カセット個数情報 カセット個数情報を表示する。カセットの隣接条件確認
のため、ユーザは、部品ライブラリの供給コードを設定
する。 *供給コード カセットの供給コードを表示する。 例) 1 文字目 :種類(E:エンボス P:紙) 2、3文字目 :カセット幅(08:8mm幅) 4,5文字目 :送りピッチ(04:4mmピッチ) 6 文字目 :駆動方式(C:シリンダ) 7 文字目 :カセットタイプ(W:Wカセット) *現在個数 現在使用しているカセット個数を表示する。 *最大個数 本設備で使用可能なカセットの最大個数を表示する。 2) 印刷ボタン カセット個数情報の印刷を実行する。 3) OKボタン 現在表示されている最大個数を保存して、カセット個数
設定画面を終了する。4) キャンセルボタン カセット個数設定画面を終了し、メイン画面に戻る。た
だし、最大個数の保存は行わない。 5) 最大個数入力エリア ユーザは、最大個数のエリアをダブルクリックすること
により最大個数の入力を行うことができる。
300は、ユーザの指示に従って、部品分割情報の表示
/最大分割数の設定を行う。 1) 部品分割数情報 部品分割数情報を表示する。 *部品名称 品種プログラム内で使用される部品名称を表示する。ユ
ーザは、部品分割を効率的に行うために、品種プログラ
ムの部品名称を入力することができる。 *実装点数 部品毎の実装点数を表示する。 *現在分割数 部品毎の現在の分割数を表示する。 *最大分割数 部品毎の最大分割数を表示する。なお、起動時のデフォ
ルトでは、現在分割数を表示する。
設定画面を終了する。4) キャンセルボタン 部品分割数設定画面を終了し、メイン画面に戻る。ただ
し、最大分割数の保存は行わない。 5) 最大分割数入力エリア ユーザは、最大分割数のエリアをダブルクリックするこ
とにより最大分割数の入力を行うことができる。なお、
最大分割数は、アプリケーションが起動している間のみ
有効となる。次回の起動時には、現在分割数が最大分割
数のデフォルト表示になる。 ソート表示 *部品名称又は、実装点数のタイトルがクリックされる
と、ソート表示する。
300は、ユーザの指示に従って、ノズル本数情報の表
示/最大本数の設定を行う。 1) ノズル本数情報 ノズル本数情報を表示する。 *ノズル形状コード ノズルライブラリ内の全ノズル形状コードを表示する。 *ノズルタイプ ノズルライブラリ番号(1〜99)を表示する。 *現在本数 現在使用されている本数を表示する。 *最大本数 使用できる最大本数を表示する。 2) 印刷ボタン ノズル本数情報の印刷を実行する。 3) OKボタン 現在表示されている最大本数を保存して、ノズル本数設
定画面を終了する。 4) キャンセルボタン ノズル本数設定画面を終了し、メイン画面に戻る。ただ
し、最大本数の保存は行わない。 5) 最大本数入力エリア ユーザは、最大本数のエリアをダブルクリックすること
により最大本数の入力を行うことができる。
面 この画面では、図114に示されるように、最適化装置
300は、ユーザの指示に従って、ノズルステーション
選択情報の表示/ノズルステーション選択を行う。 1) ノズルプレートID サブ設備(図中の「1st ステージ」、「2nd ス
テージ」)毎のノズルプレートIDの有効/無効を設定
することができる。グレー表示以外のIDは、複数選択
可能である。カーソルを移動すると、カーソル上のID
のノズルステーション図の表示に切り替えることができ
る。なお、チェックボックスが選択されていない場合で
も、表示は切り替わる。 2) ノズルステーション図 カーソル上のノズルステーション図を表示する。 3) 印刷ボタン ノズルステーション選択情報の印刷を実行する。 4) OKボタン 選択されているノズルプレートIDを保存して、ノズル
ステーション選択画面を終了する。 5) キャンセルボタン ノズルステーション選択画面を終了し、メイン画面に戻
る。ただし、ノズルプレートIDの保存は行わない。
300は、ユーザの指示に従って、設備オプション/最
適化レベルの設定を行う。 1) 設備設定 設備オプションを設定することができる。 ・XL制約 XL制約を設定することができる。(有効or無効) ・Z軸速度TA Z軸TAの速度を設定することができる。(通常or低
速) ・Z軸速度TB Z軸TBの速度を設定することができる。(通常or低
速) ・後部カセット部品180°回転 後部カセット部品180°回転を設定することができ
る。(無効or有効) ・後部トレイ部品180°回転 後部トレイ部品180°回転を設定することができる。
(無効or有効) ・後部手置きトレイ部品180°回転 後部手置きトレイ部品180°回転を設定することがで
きる。(無効or有効) ・先行シャトル制御 先行シャトル制御を設定することができる。(無効or有
効) ・先行吸着制御 先行吸着制御を設定することができる。(無効or有効) ・基板ストッパー位置(前) 前サブ設備110の基板ストッパー位置を設定すること
ができる。(左下or左上or右下or右上) ・基板ストッパー位置(後) 後サブ設備120の基板ストッパー位置を設定すること
ができる。(左下or左上or右下or右上) ・手置きトレイ(前) 前サブ設備110の手置きトレイを設定することができ
る。(無効or有効) ・手置きトレイ(後) 後サブ設備120の手置きトレイを設定することができ
る。(無効or有効)
止することができる。 ・Front 前サブ設備110のみ最適化を行なう。 ・Rear 後サブ設備120のみ最適化を行なう。 ・Both 前後サブ設備120で最適化を行なう。なお、前後振り
分けを禁止すると、Z軸情報画面でF/R固定の設定が
行えるようになる。 3) 最適化レベル設定 最適化の実行レベルを1〜5(簡易〜詳細)の範囲で設
定することができる(デフォルトレベルは4)。 4) 回収コンベア設定 1st、2ndステージの回収コンベアの設定を行うこ
とができる。 設定しない :無 回収コンベア(小)を使用する :小 回収コンベア(大)を使用する :大 5) OKボタン 現在設定されているオプション(設備オプション、最適
化レベル、前後振り分け禁止、回収コンベア)を保存
し、オプション設定画面を終了する。 6) キャンセルボタン オプション設定画面を終了し、メイン画面に戻る。ただ
し、設備オプション、最適化レベル、前後振り分け禁
止、回収コンベアついては保存しない。 7) アルゴリズム設定 最適化のアルゴリズムを設定することができる。(1or
2) ・アルゴリズム1 小部品のアルゴリズムで最適化する。 ・アルゴリズム2 小部品を汎用部品のアルゴリズムで最適化する。 8) 設備情報 設備情報を表示する。 ・設備方向 設備方向を表示する。(正流れor逆流れ) ・搬送基準 搬送基準を表示する。(手前or奥) ・搬送速度 搬送速度を表示する。
300は、ユーザの指示に従って、Z軸に設定されてい
る部品の情報を表示する。 1) Z軸情報 Z軸情報を表示する。 *部品名称 ZNo上に設定されている部品名称を表示する。 *部品点数 ZNo上に設定されている部品点数(実装点)を表示す
る。 *形状コード ZNo上に設定されている部品形状コードを表示する。 *ノズル ZNo上に設定されている部品の使用ノズル番号(ノズ
ル本数設定画面のノズルタイプと同一)を表示する。 *カメラ ZNo上に設定されている部品の部品認識カメラ(2D
S、2DL、3DS、3DL)を表示する。 *スピード ZNo上に設定されている部品のヘッド速度XY(1〜
8)を表示する。 *供給コード ZNo上に設定されている部品の供給コードを表示す
る。 *W指定 部品名称毎にS(シングル)かW(ダブル)の指定をす
る必要がある。 *シャトル不可 ZNo上に設定されている部品がトレイ部品でシャトル
供給が可能である場合に、不可(行わない)を設定でき
る。なお、トレイ部品であってもシャトル供給できない
部品には、チェックボックスは表示されない。 *F/R固定 ZNo上に設定されている部品が最適化によって、サブ
設備間を移動しないように設定を行う。なお、オプショ
ン設定画面の前後振り分け禁止がチェックされている場
合のみ、使用可能になる。ZNo以降にデータが表示さ
れない場合は、そのZ軸に部品が設定されていないこと
を表する。
を実施しない場合、最適化後の表示はできない。 3) 印刷ボタン Z軸情報の印刷を実行する。 4) OKボタン Z軸情報(W指定、シャトル不可)を保存し、Z軸情報
画面を終了する。ただし、最適化後のZ軸情報は編集で
きない。OKボタンがグレー表示になっている。 5) キャンセルボタン Z軸情報画面を終了し、メイン画面に戻る。ただし、Z
軸情報は保存されない。
画面 この画面では、図117に示されるように、最適化装置
300は、ユーザの指示に従って、本設備のノズルステ
ーション情報を表示する。 1) ノズルプレートID サブ設備(図中の「1st ステージ」、「2nd ス
テージ」)毎のノズルプレートIDを表示する。 2) ノズルステーション情報 ノズルステーション情報を表示する。 *No ステーションNoを表示する。 *ノズル形状コード ノズルステーション上のノズル形状コードを表示する。 3) 最適化前/後切替 ノズルステーション情報を最適化前/後で切り替える。
ただし、最適化を実施しない場合、最適化後の表示はで
きない。 4) 印刷ボタン ノズルステーション情報の印刷を実行する。 5) キャンセルボタン ノズルステーション情報画面を終了し、メイン画面に戻
る。
ついて説明する。つまり、これまで説明してきた最適化
アルゴリズムに対して、改良が施され、機能が拡張され
ている部分について説明する。
にする最適化吸着パターンであるが、部品テープをいく
つにでも分割できることが条件となる。例えば、部品1
のテープ(黒い四角マークの部品テープ)は5本も準備
しなければならない。このことは、出庫部品が増える結
果となり、ユーザによっては、許容されない場合があ
る。つまり、1種類の部品につき1つの部品テープだけ
しか使用(準備)できないという状況においては、適用
することができない。そこで、部品分割ができない場合
に適用できる吸着パターンの決定アルゴリズムが必要と
される。以下、そのアルゴリズムを説明する。図118
は、部品分割することなく効率的な吸着パターン(Z配
列)を決定するアルゴリズムの処理手順を示すフローチ
ャートである。まず、対象となる全ての部品テープを部
品数の多い順にソートし、多いものから順に番号(i=
1〜N)を付与する(S600)。そして、その並びか
ら、部品数の多い順に、部品テープを取り出し、以下の
ように並び替える(S601〜S607)。
軸上に置く(S601)。次に、番号2以降(i=2〜
N)の部品テープについては、Z軸上の右端又は左端の
いずれかに配置するという処理を繰り返す(S602〜
S607)。つまり、番号2〜15の部品テープについ
ては(S605でYes)、右端、右端、左端、という
順序でZ軸上に並べていき(S604〜S606)、番
号16以降の部品テープについては(S603でN
o)、右端に配置することを繰り返す(S606)。
列が目的とする吸着パターン、即ち、吸着上下回数の少
ない吸着パターンである。図119は、図118に示さ
れたフローチャートの処理手順を説明するための部品テ
ープの並びを示す。つまり、上図は、対象となる全ての
部品テープを部品数の多い順に仮Z軸上にソートした後
の部品テープの並び600を示し、下図は、その部品テ
ープの並び600から部品数の多い順に部品テープを取
り出し、Z軸上に並び替えた後の部品テープの並び60
1を示す。番号2〜15の部品テープについては、右
端、左端、右端、右端、左端、・・・、と並べていき、
番号16以降の部品テープについては、右端に配置する
ことを繰り返す。
リズムによる最適化のレベルを説明するための図であ
る。つまり、図120は、単に部品数の多い順に(右か
ら左方向に)部品テープが並べられた部品ヒストグラム
605、図121は、その部品ヒストグラム605を刈
り上げた場合の吸着上下回数パターン606を示す。一
方、図122は、図118に示された手順で並び替えら
れた部品ヒストグラム607を示し、図123は、その
部品ヒストグラム607を刈り上げた場合の吸着上下回
数パターン608を示す。
軸は、部品テープの並び(仮Z軸、Z軸)、左縦軸は、
吸着上下回数、右縦軸は、タスク数を示し、四角枠で囲
まれた部品群は、1つのタスク(同時に吸着される部品
群)を示している。これら図121及び図123に示さ
れた吸着上下回数パターンを比較して分かるように、本
最適化アルゴリズムによる並び替えによって、タスク数
については、変化していないが(13個)、吸着上下回
数については、31回から25回に減少している。これ
は、図118に示された手順による部品テープの並び替
えにより、図120に示された部品ヒストグラム605
の一部(部品テープ番号3、6、9、12、15の部品
テープ)が、図122に示される部品ヒストグラム60
7aに移動されたからである。
ラム607は、2つの傾斜(一方が他方よりも急勾配)
を持つ三角形の形状を有している。この形状は、コア処
理による最適化が施された後の理想的な形状(例えば、
図42に示された部品ヒストグラム504における空間
を下方に詰めて整理したヒストグラム)に近い。したが
って、図120に示された部品ヒストグラム605に比
べ、最適化レベルの高い部品テープの並びと言える。
理における最適化初期振り分け処理では、前サブ設備1
10と後サブ設備120に部品テープを振り分けた後、
各サブ設備内で、各部品テープが属する部品グループに
基づいて、部品供給部の左ブロック115a及び右ブロ
ック115bのいずれかに部品テープを振り分ける。
ック115a及びbへの振り分け状態によっては、一方
のブロックに隙間なく部品カセットを配置してしまうた
めに、他のブロックに空きが残されているにも拘わら
ず、部品テープの分割が行われない、つまり、部品ヒス
トグラムに対するコア処理が全く実行されないという不
具合を生じ得る。そのために、吸着上下回数が増加し、
タクトタイムが長くなってしまう。
分にあるにもかかわらず、右ブロック115bに隙間な
く部品カセットを配置してしまい、その結果、右ブロッ
ク115bでは全く部品テープの分割が行われないとい
う状況が発生する。特に、左右ブロック115a及びb
にまたがるような、部品テープ数の多いヒストグラムの
場合に生じ得る。そこで、このような場合には、空きの
ないブロックに振り分けられている山の中から最も優先
度の低い山を見つけ、その山の部品カセットを空きのあ
る他方のブロックに移動させることで、新たなに空きを
確保し、これによって、不可能だった山に対するコア処
理を可能にしている。
への山の振り分け処理の手順を示すフローチャートであ
る。いま、ある山について、その山が置かれているブロ
ックにおいて、充分な部品カセットの空きがないため
に、コア処理ができない状態(以下、この状態を「ブロ
ックあふれ」と呼ぶ。)が生じているとする。このとき
に、まず、左右ブロック115a及びbに振り分けられ
た全ての山の中から、優先度の低い山として、左右ブロ
ック115a及びbに分割して(またがって)振り分け
られている山、又は、コア部分の高さ(部品数)が最低
の山を特定する(S620)。
ープのうち、「ブロックあふれ」が生じているブロック
に置かれた部品テープを、部品数の少ないものから順に
他方のブロックに移動させた場合に、そのブロックに振
り分けられていた山に対するコア処理が可能になるか否
か検討する(S621)。その結果、可能になると判断
された場合にだけ、必要分だけ部品テープを移動した後
に(S622)、コア処理が可能な全ての山に対して、
刈り上げ処理とコア処理を実行する(S623)。
て、未だ移動していない部品テープが残され、かつ、そ
れら部品テープを他方のブロックに移動できるか否か検
討する(S624)。その結果、移動可能と判断された
場合には、それら残りの部品テープも他方のブロックに
移動させる(S625)。図125は、図124に示さ
れたフローチャートによる処理の様子、つまり、山をブ
ロック間で移動するときの様子を示している。ここで
は、左右に分割して振り分けられた山620、621、
622a及び622bを移動対象とした場合の様子が示
されている。
22bは、部品ヒストグラムの外形として表現されてい
る。また、左ブロック115aと右ブロック115bで
挟まれた中央部側に山620、621、622a及び6
22bが高くなっているのは、その中央部付近には部品
認識カメラ116が置かれ、部品を吸着したマルチ装着
ヘッド112はその部品認識カメラ116の上を通過す
る必要があるので、マルチ装着ヘッド112のトータル
移動距離を少なくするために、部品数の多い部品テープ
が中央部寄りに配置されるためである。
けられた3つの山620、621、622a及び622
bの左右ブロック115a及びbへの初期割当て状態を
示している。右ブロック115bは、「ブロックあふ
れ」となっているブロックであり、ここには、山620
と、左右ブロック115a及びbに分割して割り当てら
れた山の一部622bが配置されている。一方、左ブロ
ック115aは、「ブロックあふれ」にはなっていない
ブロックであり、ここには、山621と、分割して割り
当てられた山の残る一部622aが配置されている。
可能とするだけの空きを確保するために、山622bの
一部622cを右ブロック115bから左ブロック11
5aに移動させたときの様子を示している。図125
(c)は、山620と山621それぞれに対して刈り上
げ処理とコア処理とを実行したときの様子を示してい
る。山620と山621の形状が、急な傾斜と緩やかな
傾斜とを持つ三角形に変化している。
て残る部分622dも右ブロック115bから左ブロッ
ク115aに移動させたときの様子を示している。図1
26は、図124に示されたフローチャートによる他の
ケースにおける処理の様子、つまり、コア部分が最低の
山を移動対象とした場合の様子を示している。移動対象
の山(の状態)が異なる点を除いて、図125で示され
た山の移動と同じ様子を示している。つまり、対象とな
る3つの山625、626、627(図126(a))
のうち、コア部分が最低の山627の一部627aを右
ブロック115bから左ブロック115aに移動させた
後に(図126(b))、山625と山626について
刈り上げ処理とコア処理を行い(図126(c))、最
後に、分割移動した山の残る部分627bも右ブロック
115bから左ブロック115aに移動させて山627
aと合体させている(図126(d))。
クから、空きがあるブロックへ部品カセット(部品テー
プ)を移動させることで、Z番号の空きを作り、その空
きを使ってコア処理を行うことで、それまで、断念して
いた部品分割が可能となる。つまり、ブロックを超えた
部品テープの移動を検討することで、断念していたコア
処理が可能となり、理想的な吸着パターンが生成され、
吸着上下回数が減少され得る。
見積もり実装の対象となる1つの部品グループ(部品テ
ープ群「山」)が与えられ、これに対するコア処置が終
了すると、各部品テープをZ軸(部品カセットの並び)
に割り当てることになる。このことは、2つの部品テー
プを同時に収納できる部品カセット(ダブルカセット)
を使用する場合についても同様であるが、ダブルカセッ
トを使用する場合には、全ての部品テープをペアにして
1つのダブルカセットに収納することができるとは限ら
ず、また、ペアにすべき部品テープが固定されている場
合等があり、割当てに際して、何本のダブルカセットが
必要とされるのかが問題となる。
えられた「山」を構成する全ての部品テープをZ軸に割
り当てる場合に、必要とされるダブルカセットの本数を
NCデータ等に基づいて事前に算出する(見積もる)方
法を考案した。図127は、ダブルカセットの使用本数
を見積もるアルゴリズムの処理手順を示すフローチャー
トである。
数Nを特定する(S640)。次に、固定の対象となっ
ている全ての部品テープを図128に示される4種類の
グループA〜Dに分類したときの各グループに属する部
品テープ数Na、Nb、Nc、Ndを特定する(S641〜
S644)。つまり、 (i)グループAに属する部品テープ数Na: 同じ部品グループの部品テープとペアになるものの本数
Na(必ず、偶数となる)、 (ii)グループBに属する部品テープ数Nb: 異なる部品グループの部品テープとペアになり、かつ、
この山の部品テープの部品グループ番号(各部品グルー
プを識別するために付与された一連の番号)が、その異
なる部品グループの部品グループ番号よりも小さいもの
の本数Nb、 (iii)グループCに属する部品テープ数Nc: 異なる部品グループの部品テープとペアになり、かつ、
この山の部品テープの部品グループ番号が、その異なる
部品グループの部品グループ番号よりも大きいものの本
数Nc、 (iv)グループDに属する部品テープ数Nd: ペアになる部品テープがないものの本数Nd、を計数す
る。
き必要なダブルカセットの本数Nwを算出する(S64
5)。 Nw=Na/2+Nb+Nd+ceil((N-Na-Nb-Nc-2N
d)/2) ただし、ceil(x)は、実数x以上の最小の整数値を意
味する。この算出式の根拠は以下の通りである。
収納に必要なダブルカセットの本数(第1〜第3項)
と、非固定対象の部品テープの収納に必要なダブルカセ
ッの本数(第4項)との合計からなっている。右辺第1
項Na/2は、グループAの部品テープを収納するのに
必要なダブルカセットの本数である。
プと、これら部品テープとペアになる異なる(グループ
番号の大きい)部品グループの部品テープとを収納する
のに必要なダブルカセットの本数である。このように、
異なる部品グループの2つの部品テープを1つのダブル
カセットに収納する場合には、グループ番号の小さい部
品グループに対してダブルカセットが必要になると計算
しているので、上記グループCの部品テープの収納に必
要なダブルカセットの本数Ncは計上されないことにな
る(算出式の右辺に加算されない)。
プ(及び、これら部品テープとペアになる非固定対象の
部品テープ)を収納するのに必要なダブルカセットの本
数である。右辺第4項ceil((N-Na-Nb-Nc-2Nd)
/2)は、非固定対象の部品テープの一部(Nd本)が
グループDの部品テープとペアにして収納される場合に
おける、非固定対象の部品テープを収納するのに必要な
ダブルカセットの本数である。なお、非固定対象の部品
テープの一部(Nd本)がグループDの部品テープとペ
アにして収納されない場合には、その本数は、ceil
((N-Na-Nb-Nc-Nd)/2)となる。
は、上記算出式の右辺第1〜第4項の合計となる。図1
29は、必要なダブルカセットの本数の計算例を示す。
図129(a)は、対象となる部品テープの並びa〜z
を示し、図129(b)は、それら部品テープの内訳を
示し、図129(c)は、各部品テープがダブルカセッ
トに収納される様子を示し、図129(d)は、必要な
ダブルカセット本数の計算式を示す。
式によって、あらゆる部品テープの並びに対しても、必
要なダブルカセットの本数が算出され得る。なお、上記
式は、整理することにより、以下のように簡単化するこ
ともできる。 Nw =Na/2+Nb+Nd+ceil((N-Na-Nb-Nc-2N
d)/2) =ceil(Na/2+Nb+Nd+(N-Na-Nb-Nc-2Nd)/
2) =ceil((N+Nb-Nc)/2)
収納することができるが、同じ送りピッチ(例えば、2
mm又は4mm)で2つの部品テープを同時に送り出す
ために、異なる送りピッチ用の部品テープを混在させて
収納することができない。そのために、ダブルカセット
を対象として、小部品を最適化する場合には、送りピッ
チ毎に作成した部品ヒストグラムをその部品テープ総数
の半分で折り返すことでペアを作った後に、対応する送
りピッチのダブルカセットに収めることとしている。
な組み合わせで2つの部品テープをダブルカセットに収
めることができない状況、即ち、ペアとなる部品テープ
が固定される場合がある。したがって、ペア固定の対象
となる部品テープを含み、かつ、送りピッチが異なる部
品テープを含む部品テープ群が与えられたときに、どの
ような並びでダブルカセットに収めるべきかが問題とな
る。
リングの制約を考慮した最適化、即ち、刈り上げ処理に
適した部品テープのZ配列を決定するアルゴリズムを考
案した。図130は、ダブルカセットのペア固定を考慮
したZ配列の最適化アルゴリズムの処理手順を示すフロ
ーチャートである。ここでは、送りピッチが2mmと4
mmのダブルカセットを使用する部品テープが含まれる
とする。
る(S660)。具体的には、同一の送りピッチの部品
テープ群ごとに、ペア固定の対象でない部品テープと、
ペア固定の対象である部品テープに分ける。そして、送
りピッチが2mmのダブルカセットを使う部品テープに
ついて、仮Z軸上に「山」を作る(S661)。具体的
には、ペア固定の対象でない部品テープについては、こ
れまでのアルゴリズム(上述の折り返しによる方法)と
同様にしてペアを作り、ペア固定の対象となる部品テー
プについては、そのままペアにする。
ットを使う部品テープについて、仮Z軸上に「山」を作
る(S662)。具体的には、ペア固定の対象でない部
品テープについては、これまでのアルゴリズムと同様に
してペアを作り、ペア固定の対象となる部品テープにつ
いては、そのままペアにする。最後に、送りピッチが2
mmと4mmのダブルカセットの部品ヒストグラムを融
合する(S663)。このとき、ペア固定のダブルカセ
ットも含める。具体的には、上記ステップS661及び
S662で作られたダブルカセットをひとまとめにし
て、ダブルカセットの奇数側の部品数が大きい順にダブ
ルカセットを並べ替える。
ップS660〜S663における処理の具体例を示す。
図131は、図130のステップS660での処理を示
している。ここで、図131(a)は、送りピッチが2
mmの部品テープ群を、ペア固定の対象でない部品テー
プの部品ヒストグラム660と、ペア固定の対象である
部品テープ661a、661bとに分けた様子を示して
いる。同様に、図131(b)は、送りピッチが4mm
の部品テープ群を、ペア固定の対象でない部品テープの
部品ヒストグラム665と、ペア固定の対象である部品
テープ666a、666bとに分けた様子を示してい
る。
での処理を示している。ここで、図132(a)の部品
ヒストグラム660には折り返し位置(点線)661c
が示されている。図132(b)は、その折り返し位置
で部品ヒストグラム660が折り返された後の部品ヒス
トグラム662を示している。なお、ここでの「折り返
し」とは、折り返し位置で分離された前半部と後半部と
を、それぞれの並び順序を維持したまま、各部品テープ
が交互に並ぶように、合成することである。
での処理を示している。図133(a)の部品ヒストグ
ラム665には折り返し位置(点線)665cが示され
ている。図133(b)は、その折り返し位置で部品ヒ
ストグラム665が折り返された後の部品ヒストグラム
667を示している。図134は、図130のステップ
S663での処理を示している。ここで、図134
(a)は、図130のステップS662及びS663で
得られた各部品テープを一列(仮Z軸上)に並べた状態
を示し、ペア固定の対象ではない送りピッチが2mmの
部品ヒストグラム662と、ペア固定の対象である送り
ピッチが2mmの部品ヒストグラム661a及び661
bと、ペア固定の対象ではない送りピッチが4mmの部
品ヒストグラム667と、ペア固定の対象である送りピ
ッチが4mmの部品ヒストグラム666a及び666b
とが仮Z軸上に並べられた状態を示している。図134
(b)は、図134(a)に示された並びにおけるダブ
ルカセットのペアを維持したまま、奇数Z番号側の部品
テープの部品数が多い順(図中の点線)に並び替えた状
態を示している。このZ配列が最終的に求める部品テー
プの並びである。
るように、この部品テープの並びは、ダブルカセットの
ペア固定が維持され、かつ、刈り上げ処理に適した配列
となっている。つまり、マルチ装着ヘッド112が1回
の吸着上下動作で吸着される奇数のZ番号だけ(あるい
は、偶数のZ番号だけ)に位置する部品テープだけに着
目すると、それら部品テープは、部品数の多い順に並べ
られている。4.1.5 NGヘッドを考慮した最適化
アルゴリズム部品実装機100の運用中に、NGヘッド
が生じた場合には、そのNGヘッドの影響を最小限に止
めたうえで、部品の実装を継続することが必要とされ
る。ここで、「NGヘッド」とは、もはや部品を吸着す
ることができない状態となった装着ヘッドのことであ
る。
セット(部品テープ)の配列は変化させない、 (ii)NGヘッドを使わずに吸着するので、吸着パターン
が変化する、 (iii)NGヘッドとなったヘッド番号の装着ヘッドでし
か吸着できない実装点は、実装しない、という条件の下
で、NGヘッドを除く他の正常な装着ヘッドだけによる
吸着パターンの生成方法を考案した。なお、「ヘッド番
号」とは、マルチ装着ヘッド112を構成する個々の装
着ヘッドを識別する番号(左から1〜10)である。
作成された部品テープの配列(「山」)に対して、NG
ヘッドの位置に対応する部品テープから部品を吸着しな
いことにして、その「山」に対して刈り上げ処理を行
い、吸着パターンを生成することにより、NGヘッドに
対応することとした。この時、1タスク当たりの吸着上
下回数が2回以上になったとしても、1タスク当たりの
部品数を最大化させることを優先した。つまり、マルチ
装着ヘッド112に部品が満載された状態(全ての正常
な装着ヘッドに部品が吸着された状態)になるまで、吸
着上下動作をして部品を吸着した後に、基板に部品を装
着することとした。
アルゴリズムの処理手順を示すフローチャートである。
まず、与えられた部品ヒストグラムに対して、NGヘッ
ドを除く正常な装着ヘッドだけを用いて、1回の吸着上
下動作により、可能な限り多くの部品を吸着する(S6
80)。その結果、マルチ装着ヘッド112が満載状態
ではなく、かつ、吸着対象の部品が残されている場合に
は(S681でNo)、満載状態になるか、又は、吸着
対象の部品が無くなるまで、マルチ装着ヘッド112を
移動させて再度の吸着上下動作をすることにより(S6
80)、空いた装着ヘッドに部品を吸着させることを繰
り返す(S680、S681)。
になるか、又は、全ての部品を吸着し終えた場合には
(S681でYes)、1つのタスクでの吸着を終え、
基板20に移動して部品を装着することにする(S68
2)。以上の処理(S680〜S682)を、対象の部
品が無くなるまで繰り返す(S683)。これによっ
て、NGヘッドが発生した状況においても、マルチ装着
ヘッド112の満載状態を優先した部品の吸着パターン
が完成される。つまり、少ないタスク数で部品の実装を
終えることができる。
場合とNGヘッドがある場合それぞれの吸着パターンを
比較して説明するための図である。図136は、対象と
なる部品ヒストグラム680を示す。図137は、NG
ヘッドが無い場合の図136に示された部品ヒストグラ
ム680に対する吸着パターン(刈り上げ処理とコア処
理による)681を示す。一方、図138は、ヘッド番
号2の装着ヘッドH2がNGヘッドである場合の図13
6に示された部品ヒストグラム680に対する吸着パタ
ーン685を示す。
着パターン681、685は、図136に示された部品
ヒストグラム680に対してコア処理に伴う部品テープ
A、B、Cの分割が行われたときのパターンである。ま
た、左縦軸は、吸着上下回数(積算値)を示し、右縦軸
は、タスク数を示している。四角枠で囲まれた部品群
は、1つのタスクを示している。ただし、図138にお
いて、第2及び第9タスクは、それぞれ、2つの四角枠
687a及び687bと688a及び688bとに分離
して示されている。
は、1回目の吸着上下動作687aによって、装着ヘッ
ドH1とH10に合計2個の部品が吸着され、2回目の
吸着上下動作687bによって、装着ヘッドH3〜H9
に合計7個の部品が吸着され、その結果、装着ヘッドH
2を除く9個の装着ヘッドに合計9個の部品が吸着され
満載状態となっている。図137と図138とを比較し
て分かるように、NGヘッドを考慮した場合には、そう
でない正常な場合に比べ、吸着上下回数については、1
6から24へと大きく増加しているが、タスク数につい
ては、13から14へとわずかな増加で済んでいる。こ
れによって、NGヘッドを考慮した最適化が実現された
ことになる。
の場合、ヘッド7〜10でしか実装できない領域がある
ため、このような基板を対象としたNGヘッドの最適化
が問題となる。これまでのアルゴリズムでは、ヘッド1
〜10をヘッド1〜6とヘッド7〜10の2つのヘッド
群に分け、ヘッド群毎に別個に吸着パターンを生成して
いる。この場合においても、ヘッド群毎にNGヘッドを
使わずに吸着することで、同様に対応することができ
る。ただし、特定の装着ヘッドしか吸着できないZ番号
があるので、部品カセットの入れ替えが必要となる。
装機100にセットした部品カセット群の位置や並びを
変更することなく、そのままの状態で、複数の基板を短
い時間で生産したいと希望する場合がある。そのため
に、複数の基板の実装に共通して使用でき、かつ、それ
ら複数の基板の全てを実装し終えるのに要するトータル
時間が少なくなるような最適な部品カセットの並び等を
決定する必要がある。つまり、複数のNCデータを対象
とした部品実装順序の最適化アルゴリズムが求められ
る。以下、その最適化アルゴリズムを説明する。
の通りである。つまり、刈り上げ処理が期待通りに動作
する条件は、部品カセットの並びが各部品テープの部品
数の順番に並んでいることである。そこで、基板ごと
に、部品数順と部品カセット配列との相関係数を計算
し、これを最大化する部品カセット配列を求め、それ以
降については、これまで説明したアルゴリズムによる最
適化を行うこととする。
適化するときの全体の処理手順を示すフローチャートで
ある。まず、与えられた複数のNCデータについて(S
700)、一定の類似性を有するNCデータが存在する
か否か検討し(S701)、類似性がある場合には、そ
れらNCデータの実装点を合わせたものを新たなNCデ
ータとする(S702)という処理を、全てのNCデー
タについて繰り返す(S700〜S703)。
品数を成分とするベクトル(部品種を成分要素とし、各
部品種の部品数を各成分要素の大きさとするベクトル)
で各NCデータを表現し、2つのベクトル間の方向余弦
(cosθ)が予め定めたしきい値よりも大きい場合に
類似性があるとする。つまり、cosθ>しきい値 な
ら、2つのNCデータは類似性があるとする。
まれる部品種がどの程度共通しているかを示す指標にな
ると考えられる。そして、このような合成処理が施され
た後の1以上のNCデータについて、基板の生産枚数が
多い順に、NCデータごとにZ配列を最適化していくこ
とを繰り返す(S704)。このとき、最適化するNC
データに、既にZ配列が決定された部品テープが含まれ
ている場合には、その部品テープを除いた上で、刈り上
げ処理等の通常の手法で部品テープのZ配列を決定す
る。
の多くが共通する場合には、それら複数のNCデータを
1つのNCデータとして最適化し、そうでない場合に
は、個別にNCデータを最適化する。次に、複数のNC
データを1つのNCデータとして最適化する具体的なア
ルゴリズム、即ち、複数NCデータの同時最適化アルゴ
リズムを説明する。
している。これは、最適化の主な対象としては、(i)Z
配列、(ii)タスク内の実装経路、(iii)タスクの順序、
の3つであるが、複数のNCデータを同時に最適化する
場合には、部品のZ配列を共通にする必要があるので、
Z配列を最適化することが最も重要となるからである。
他の2つ(ii)、(iii)は、決められたZ配列に対する刈
り上げ処理で生成されるタスクに対する最適化で処理可
能である。
う刈り上げ処理で期待されるZ配列は、コア処理をさて
おけば、「部品数の多い順に部品テープが並ぶZ配列」
である。したがって、ここでの最適化アルゴリズムは、
個々のNCデータに対してこのような条件がもっともよ
く満たされる共通のZ配列を決定するアルゴリズムであ
る。図140は、複数NCデータのZ配列を同時に最適
化する処理手順を示すフローチャートである。まず、
「順位法」、「総員数法」及び「生産数法」と呼ぶ3つ
の手法のいずれかを用いて、初期Z配列を決定する(S
710)。
部品数における順位の平均値が大きい順に部品テープを
配列する方法であり、「総員数法」とは、各部品テープ
の部品数の総和が大きい順に部品テープを配列する方法
であり、「生産数法」とは、最も部品数の多いNCデー
タを優先して部品テープを配列し、他のNCデータにつ
いては「総員数法」により部品テープを配列する方法で
ある。なお、これら3つの方法のいずれを採用するか
は、シミュレーションによって判明している予め定めら
れた基準、例えば、NCデータの数が5未満であれば
「生産数法」を採用する等の基準によって決定する。
的探索による最適化を行う(S711)。つまり、Z配
列をランダムに変更し、もし、平均同時吸着数(タスク
当たりの同時吸着される部品数の平均値)が増加するな
らば採用し、そうでないならば採用しない(変更を元に
戻す)という処理を繰り返す。例えば、(i)Z配列にお
ける1つの部品テープを引き抜き、(ii)引き抜きによ
って生成された空きを左詰によって埋めた後に、(iii)
引き抜いた部品テープを別に位置に挿入する、という状
態遷移を試み、最適化レベルが向上するならば採用す
る。このような状態遷移と評価とを繰り返すことによっ
て、最適化レベルが徐々に向上され得る。
種類の方法を説明する具体例を示す図である。ここで
は、説明の便宜上、5種類の部品テープA〜E(又はそ
の一部)を使用する3つのNCデータ1〜3を対象とし
て初期Z配列を決定する場合の例が示されている。図1
41(a)は、それら3つのNCデータ1〜3につい
て、NCデータで使用されている部品テープごとの部品
数(数値)と、部品数の多い順に部品テープを並べた場
合の順位(括弧内の数値)と、そのNCデータを用いて
生産される基板の生産枚数と、各部品テープごとの平均
順位と総部品数とを示している。
れた3つのNCデータ1〜3に対して、「順位法」、
「総員数法」及び「生産枚数法」それぞれにより決定さ
れる初期Z配列の結果を示している。「順位法」によれ
ば、(i)NCデータごとに、各部品テープの順位を決定
し、(ii)各部品テープの順位の平均値を求め、(iii)求
めた平均値の大きい順に部品テープを並べたものを初期
Z配列とする。したがって、図141(a)に示された
の「平均順位」の値に基づき、図141(b)に示され
るように、順位「CABED」が決定される。
ープごとに、部品数の総和を求め、(ii)求めた総和の大
きい順に部品テープを並べたものを初期Z配列とする。
したがって、図141(a)に示された「総部品数」の
値に基づき、図141(b)に示されるように、順位
「ACBDE」が決定される。また、「生産数法」によ
れば、(i)生産枚数の最も多いNCデータを特定し、(i
i)特定したNCデータで使われている部品テープを最適
化することによってZ軸上に部品テープを配置して固定
し、(ii)他の部品テープについては、「総部品数」によ
り、空いたZ軸上に配置して得られる部品テープの並び
を初期Z配列とする。しがって、ここでは、図141
(a)に示された「生産枚数」の値に基づいて、まず、
NCデータ2の順に従って順位「ABC」が決定され、
続いて、総部品数の順に従って順位「DE」が決定され
る。
アルゴリズムについて、シミュレーションにより評価し
た結果について説明する。なお、シミュレーションにお
いては、部品分布として、小さい部品は部品数が多く、
部品サイズが大きくなるとともに部品数は漸減するとい
う、NCデータの一般の性質を考慮した以下のような分
布を採用した。
を、 n(part) = C/part とし(partは一連の部品テープ番号、Cは定数)、 各NCデータAにおいては、これにノイズを加えたもの n(part,A) = (C/partの幅の乱数) ± ((C/3)/
partの幅の乱数) とした。
乱数で与えた。シミュレーションの方法としては、 (i)乱数で最適化するNCデータ数を決める。 (ii)各NCデータの部品数を決める (iii)上述の3つの方法で初期Z配列を求める (iv)上述の状態遷移則で、吸着回数を最小となる最適な
Z配列を確率的に探索する、という手順である。
果、判明したことは、以下の通りである。 (i)初期Z配列に関する3つの手法のいずれであっって
も、NCデータ数が増加するにつれて、同時吸着できる
部品の数が次第に減ってゆく。 (ii)NCデータ数が少ない場合には、「生産数法」に
よる初期Z配列のほうが同時吸着数が多く、NCデータ
数が増えるにしたがって、「総員数法」によるほうが同
時吸着数が多くなっていく。 (iii)上述の状態遷移を1000回実施し、最適化を図
った結果、10%強の吸着数の改善(吸着回数の10%
減少)が見られた。
ータの数が5未満であれば、「生産数法」がもっとも良
く、NCデータが5以上になると、「総員数法」がもっ
とも良くなると考えられる。 4.3 汎用部品の最適化(ルールベースの導入) これまで、汎用部品に対する最適化アルゴリズムは、上
記2.9「汎用部品に対する最適化」で述べたように、
確率的探索をベースとしたアルゴリズムである。つま
り、汎用部品は、吸着可能なノズルの種類が特定される
等の様々な制約を受けることから、Z軸上の部品テープ
の配置、タスクの編成等をパラメータ化したものを「状
態」と考え、その状態の良し悪しを実装時間で評価し、
状態を確率的に変化させて、実装時間がより短くなる状
態を探索した。
る最適化は、最適化処理に与える初期状態が悪いと、最
適化に必要な時間が極めて長くなる傾向にある。事実、
これまでのアルゴリズムでは、初期状態として生成され
るタスクは、吸着動作の点からは好ましい初期状態とは
言えない。例えば、Z軸方向に部品テープが連続して置
かれ、10点の部品を1回で吸着できるにも拘わらず、
10回の吸着上下動作を行って、同一のZ番号に配置さ
れた部品テープから10点の部品を吸着するような実装
順序を初期状態としていた。
せるために、ノズルの制約を考慮し、一定のルールに基
づいて、最適な初期状態を生成したり、ノズルの交換動
作を最適化させるアルゴリズムを考案した。以下、その
アルゴリズムについて、4種類の手法(「横取り法」、
「タスク分割」、「タスク融合」、「タスク入替」)を
説明する。
初期タスク(初期状態に対応するタスク列)を生成する
アルゴリズムである。名前の通り、Z軸方向に吸着可能
な部品を探す方法であり、小部品の最適化アルゴリズム
として開発した上述の刈り上げ処理と似ている。
クの生成アルゴリズムの処理手順を示すフローチャート
である。大きく分けて、部品テープをZ軸に配置する前
半の処理(S720〜S722)と、タスクの生成を繰
り返す後半の処理(S723〜S726)とからなる。
具体的には、前半の処理においては、まず、対象の汎用
部品に対して、部品グループごとに、部品数の多い順に
部品テープを並べた部品ヒストグラムを作成する(S7
20)。
ルタイプごとの部品ヒストグラムに分割する(S72
1)。つまり、部品グループごとに作成された部品ヒス
トグラムから、同一タイプのノズルで吸着される全ての
部品テープを取り出し、部品数の多い順に並べるという
処理を、その部品ヒストグラムに含まれる全てのノズル
タイプについて繰り返す。そして、得られたノズルタイ
プごとの部品ヒストグラムを、左右ブロック115a及
びbの内側から部品テープを1つずつ詰めるだけ詰めて
Z軸に配置していく(S722)。
れた部品ヒストグラムに対して、部品グループごとに
(S723〜S726)、Z軸方向にスキャンしながら
部品を取り出して(横取りして)タスクを生成するとい
う処理(S724)を、各部品ヒストグラムの底辺から
上方に向けて、部品がなくなるまで繰り返す(S72
5)。得られたタスク列が、目的とする初期タスクとな
る。
番として、ノズルリソース数が小さいものを優先する。
また、異なるタイプのノズルが混在してでも、各タスク
を構成する部品の個数を最大化させることを優先する。
例えば、マルチ装着ヘッド112に、タイプMのノズル
が2個と、タイプSのノズルが8個装着されている場合
には、ノズルタイプMの部品ヒストグラムから2個の部
品を取り出した後に、ノズルタイプSの部品ヒストグラ
ムから8個の部品を取り出して1個のタスクを完成させ
る。
ャートにおける前半処理(S720〜S722)の具体
例を示す図である。図143(a)は、図142のステ
ップS720において生成される部品グループ単位での
部品ヒストグラムを示している。ここでは、2つの部品
ヒストグラム720、721が示されている。
721において生成されるノズルタイプ毎の部品ヒスト
グラムを示している。ここでは、部品ヒストグラム72
0が部品ヒストグラム720aと720bに分割され、
部品ヒストグラム721が部品ヒストグラム721aと
721bに分割されている。図143(c)は、図14
2のステップS722においてZ軸上に配置された部品
ヒストグラムを示している。ここでは、右ブロック11
5bに部品ヒストグラム720aと721aが配置さ
れ、左ブロック115aに部品ヒストグラム720bと
721bが配置されている。
ャートにおける後半処理(S723〜S726)の具体
例を示す図である。図144(a)は、図142のステ
ップS724におけるスキャンの方向とスキャンの順番
(数値1〜13)を示している。ここでは、対象となる
2つの部品ヒストグラム、即ち、ノズルタイプSの部品
ヒストグラム725とノズルタイプMの部品ヒストグラ
ム726とが示されている。なお、いずれのタイプのノ
ズルについても、ノズルリソース数の制約がないものと
している。
724におけるタスク生成の様子を示している。ここで
は、部品ヒストグラム725の最下段に位置する8個の
部品と最下段から2番目の段に位置する2個の部品によ
って1つのタスクが生成される様子が示されている。図
144(c)は、図142の後半処理(S723〜S7
26)において繰り返し生成されるタスク(吸着パター
ン1〜5)を示している。つまり、各部品ヒストグラム
725、756の部品中に記された数値は、タスクの番
号(順番)である。ここで、タスク番号3のタスク3
は、部品ヒストグラム725に属する部品と部品ヒスト
グラム726に属する部品とが混在する、つまり、異な
るタイプのノズルが使用されるタスクとなっている。
(S723〜S726)において生成されるタスク列7
27、即ち、最終的に生成される初期タスク727を示
している。なお、部品ヒストグラム725に属する部品
は細い線で囲まれ、部品ヒストグラム726に属する部
品は太い線で囲まれている。また、タスク列における先
頭(実装順序の早いもの)は、最下段に置かれたタスク
1である。
れた初期タスク727のノズルパターンである。ここ
で、「ノズルパターン」とは、対象となるタスク列につ
いて、使用するノズルのタイプを装着ヘッドの位置(マ
ルチ装着ヘッド112上の装着位置)に対応づけて示し
たパターンである。ここでは、3番目のタスクにおい
て、タイプSとタイプMが混在している様子が示されて
いる。
る効果を示す図である。ここでは、説明の便宜上、1つ
の部品ヒストグラム730を対象とし、これまでのアル
ゴリズムによって生成される初期タスク731と、この
「横取り法」によって生成される初期タスク732につ
いて、吸着上下回数が比較されている。なお、太線で囲
まれた部品は、同一タスクに属することを意味し、部品
中の数値は、その部品を吸着する装着ヘッド番号を示
す。
れるように、部品ヒストグラム730は、4つのタスク
731、732a及びb、733a及びb、734から
構成されるので、合計40回の吸着上下回数を必要とす
る。一方、「横取り法」によれば、図145の下段に示
されるように、部品ヒストグラム730は、4つのタス
ク735〜738から構成されるので、合計140回の
吸着上下回数を必要とするだけである。
時間は大きく短縮化され得る。ところが、NCデータを
使って、ノズル交換を直接に制御できるわけではなく、
NCデータに記述された部品種に応じて、部品実装機1
00本体が自動的にノズル交換を行う。そのため、ノズ
ル交換中の交換動作を最適化するためには、タスクに含
める部品種を変化させて、間接的に最適化することにな
り、タスクの最適化とノズル交換動作の最適化を同時に
行う必要があり、これは、現実的ではない。
ようなタスク編成を作り出して、実装時間全体の短縮を
目指すこととした。そのタスク編成の1つの方法が「タ
スク分割」である。具体的には、初期タスクの中の各タ
スクが使用するノズルパターンを調べ、その前後のタス
クでノズル交換が行われるタスクに着目し、ノズル交換
をする前のノズルパターンで吸着できる部品種から構成
されるタスクと、ノズル交換をした後のノズルパターン
で吸着できる部品種から構成されるタスクに分割し、無
駄なノズル交換が行われないようなタスクに再構成す
る。
交換動作の最適化アルゴリズムの処理手順を示すフロー
チャートである。まず、最適化の対象となるタスク列
(あるいは、初期タスク)について、ノズルパターンを
調べることによって、2種類以上のノズルを用いるタス
クが存在するか否か判断する(S740)。その結果、
そのようなタスクが存在しない場合には(S740でN
o)、「タスク分割」は不要と判断し、終了する。
は(S740でYes)、それらタスクを、ノズルの種
類が1つとなるように、分離する(S741)。そし
て、分離によって得られたタスクの一方(直前のタスク
と異なるノズルを用いるタスク)を、ノズルが同じ一連
のタスク(以下、同一タイプのノズルを用いる一連のタ
スクを「タスクセット」と呼ぶ。)の最後に移動させる
(S742)。
在したタスクは消滅し、全てのタスクは、同一タイプの
ノズルを用いる部品だけで編成されることとなる。図1
47は、図146に示されたフローチャートにおける処
理の具体例を示す図である。ここでは、「横取り法」に
よって生成された初期タスクに対して「タスク分割」を
行っていく場合の例が示されている。
となるタスク列740を示し、ここでは、図144
(d)に示されたタスク列727に等しい。ここで、タ
スク列740を構成するタスク3には、2種類のノズル
が混在している。そのために、このタスク3の前後にお
いてノズル交換が必要とされる状態となっている。つま
り、タスク2を終えてタスク3を実行するときと、タス
ク3を終えてタスク4を実行するときにおいて、タイプ
SからMへのノズル交換が必要とされる。
741におけるタスクの分離の様子を示している。ここ
では、タスク3が、ノズルタイプSだけを含むタスク7
41とノズルタイプMだけを含むタスク742とに分割
されている。図147(c)は、図146のステップS
742におけるタスクの移動の様子を示している。ここ
では、分離生成されたタスク742が、タスクセット7
43の最後尾に移動されている。
ク列に対応するノズルパターンである。異なるタイプの
ノズルを含むタスクは消滅し、元の初期タスクは、タイ
プSのノズルだけを含む3つのタスクと、タイプMのノ
ズルだけを含む3つのタスクとから編成されることとな
った。このような「タスク分割」後のノズルパターンか
ら分かるように、このタスク列は、タスク3を終えてタ
スク4を実行する際にノズル交換(タイプSからM)を
必要としているだけであり、2回必要とされたノズル交
換が1回に減少されている。
するものの、タスクの数が増えている。そのために、ト
ータルとして、最適化のレベルが充分とは言えない場合
も起こり得る。
することによって全体のタスク数の増加を抑える「タス
ク融合」を行うこととしている。図148は、「タスク
融合」による最適化アルゴリズムの処理手順を示すフロ
ーチャートである。まず、最適化の対象となるタスク列
について、タスクセットごとに、融合可能なタスクの組
が存在するか否か、即ち、装着ヘッドの位置が重複しな
いタスクの組が存在するか否か判断する(S750)。
具体的には、装着ヘッド毎に(マルチ装着ヘッド112
上の同一位置について)、ノズル装着のAND(ノズル
装着が必要な場合に「1」、不要な場合に「0」とした
論理積)をとった時に全ノズルの値が0となるようなタ
スクの組を探す。
ない場合には(S750でNo)、「タスク融合」は不
可能と判断し、終了する。一方、そのようなタスクの組
が存在する場合には(S750でYes)、それらタス
クを融合する(S751)。具体的には、それらタスク
を、ノズルの位置を維持したまま連結することで、1つ
のタスクに合成する。
ャートにおける処理の具体例を示す図である。ここで
は、図147に示された「タスク分割」により生成され
たタスク列に対して「タスク融合」を行っていく場合の
例が示されている。図149(a)は、「タスク融合」
の対象となるタスク列を示し、ここでは、図147
(c)に示されたものに等しい。ここで、タスク5とタ
スク742は、同一のタスクセットに属し、かつ、マル
チ装着ヘッド112上の異なる位置で吸着される部品だ
けを含んでいるので、これらタスク5及び742は、融
合可能と判断される。
751におけるタスクの融合の様子を示している。ここ
では、タスク5とタスク742とが部品の位置を維持し
たまま融合されている様子が示されている。図149
(c)は、図149(b)のタスク列に対応するノズル
パターンである。図147(d)に示されたノズルパタ
ーンと比較して分かるように、図149(c)に示され
たノズルパターンでは、タイプMのノズルを含むタスク
が1つ減少している。これによって、ノズル交換回数を
増やすことなく、全体のタスク数が減少され、最適化レ
ベルがさらに向上され得る。具体的には、ノズルの交換
回数が2回から1回に減少している。
ル交換動作は最適化されたが、その最適化は、対象とな
った1つのタスク列(多くの場合、1つの部品グルー
プ)内での最適化に止まる。つまり、その前後に位置す
るタスク列との関係では、無駄なノズル交換が生じてい
る可能性がある。
は、「タスク分割」や「タスク融合」等によって部品グ
ループの単位でノズル交換動作が最適化された2つの部
品グループ1及び2のノズルパターン760及び761
が示されている。部品グループ1のノズルパターン76
0は、タイプSのタスクセット760aとタイプMのタ
スクセット760bがこの順に並んで構成され、続く、
部品グループ2のノズルパターン761は、タイプMの
タスクセット761aとタイプSのタスクセット761
bがこの順に並んで構成されているとする。
ように、部品グループ間において無駄なノズル交換が生
じている。例えば、タイプSのノズルに着目すると、タ
スクセット760aを実行するためにマルチ装着ヘッド
112に装着され、続くタスクセット760bを実行す
るためにマルチ装着ヘッド112から取り外されるが、
最後にタスクセット761aを実行するために再びマル
チ装着ヘッド112に装着されなければならないという
無駄が生じている。つまり、ノズルタイプが、S→M→
S→Mと変化しているので、合計3回のノズル交換が必
要とされている。
ズル交換を解消するために、各部品グループに属するタ
スクセットを部品グループ内で入れ替える「タスク入
替」を行うこととしている。図151は、「タスク入
替」による最適化アルゴリズムの処理手順を示すフロー
チャートである。ここでは、いわゆる総当り法により、
最適なタスクセットの並びを決定している。
数の部品グループ全体について、とり得る全てのタスク
セットの順列を特定する(S760)。このとき、部品
グループ単位での並びを変えないように、各タスクセッ
トは、部品グループ内でのみ移動可能とする。そして、
各順列について(S761〜S763)、そのノズルパ
ターンにおけるノズル交換回数を算出し(S762)、
最も小さいノズル交換回数となるノズルパターン(タス
クセットの順列)を求める最適解とする(S764)。
によって得られたノズルパターンの例を示す。このノズ
ルパターンは、図150に示されたノズルパターンに対
する「タスク入替」によって得られたものであり、部品
グループ1を構成する2つのタスクセット760a及び
760bの順序が入れ替えられている。本図に示される
ノズルパターンによれば、ノズルタイプが、M→S→M
と変化するだけなので、合計2回のノズル交換で済む。
つまり、「タスク入替」によって、3回のノズル交換が
2回に削減されている。
の位置が固定されている場合への対応方法と、ノズルの
本数が10本に満たない場合における小部品の最適化に
ついて説明する。
ル配置を固定した場合への対応 複数のNCデータを同時に最適化する場合等において
は、NCデータごとにノズルステーション119上のノ
ズル配置を異なるものにしておくことが許されない等の
原因により、「ノズルステーション119上のノズル配
置」が固定され、最適化における制約条件の1つとなっ
てくる場合がある。
を固定した場合には、部品実装機100の機構上の制約
(ノズルステーション119上及び部品供給部115a
及びb上でのマルチ装着ヘッド112の可動範囲)か
ら、指定されたノズルで指定された部品を吸着すること
ができないということが生じ得る。そこで、ノズルステ
ーション119上のノズル配置が与えられた場合に、可
能解チェック(可能な部品実装順序が存在し得るか否か
の判定)を行うこととしている。つまり、ノズルステー
ション119上のノズル配置と部品テープのZ配列とが
与えられた場合に、対象とする全ての部品が対応するノ
ズルで吸着され得るか否かを判断する。
するための図であり、ノズルステーション119上での
マルチ装着ヘッド112の可動範囲に基づくノズル交換
の制約を示す図である。こここには、マルチ装着ヘッド
112が最右端に位置するときのマルチ装着ヘッド11
2とノズルステーション119との相対的な位置関係
(マルチ装着ヘッド112及びノズルステーション11
9の正面図)、ノズルステーション119の平面図、及
び、ノズル配置と交換可能(装着可能)な装着ヘッドと
の関係(○印が交換可能を意味する)を示すテーブル7
70が示されている。
ド112は、ノズルステーション119の位置を超えて
移動することができ、ノズル交換上の制約はない。本図
から分かるように、ノズルステーション119上の最左
端から数えて第1〜第4列に置かれたノズルn1〜n4
を装着できる装着ヘッドは、装着ヘッドH1〜H10で
あり、制約は存在しない。しかし、他のノズルn5〜n
10については、制約が存在する。つまり、第5列に置
かれたノズルn5を装着できる装着ヘッドは装着ヘッド
H2〜H10に限られ、第6列に置かれたノズルn6を
装着できる装着ヘッドは装着ヘッドH3〜H10に限ら
れ、・・・、第10列に置かれたノズルn10を装着で
きる装着ヘッドは装着ヘッドH7〜H10に限られる。
めの図であり、部品供給部115a及びb上でのマルチ
装着ヘッド112の可動範囲に基づく部品吸着の制約を
示す図である(図5に対応するが、図5の内容と細部に
おいて異なる例である)。図154(a)は、マルチ装
着ヘッド112が最左端に位置するときのマルチ装着ヘ
ッド112と部品供給部115aとの相対的な位置関係
を示している。ここで、部品供給部115aに記された
一連の数値は、Z番号である。図154(b)は、マル
チ装着ヘッド112が最右端に位置するときのマルチ装
着ヘッド112と部品供給部115bとの相対的な位置
関係を示している。図154(c)は、Z番号ごとにア
クセス可能な装着ヘッド(○印)と不可能な装着ヘッド
(×印)とを示す表である。
86〜96の部品テープについては、全ての装着ヘッド
がアクセスできるわけではない。つまり、Z番号1の部
品テープにアクセスできる装着ヘッドは、装着ヘッドH
1だけであり、Z番号2の部品テープにアクセスできる
装着ヘッドは、装着ヘッドH1、H2であり、・・・、
Z番号17の部品テープにアクセスできる装着ヘッド
は、装着ヘッドH1〜H9であり、Z番号86の部品テ
ープにアクセスできる装着ヘッドは、装着ヘッドH2〜
H10であり、・・・、Z番号96の部品テープにアク
セスできる装着ヘッドは、装着ヘッドH7〜H10であ
る。
アクセスの制約が生じるのは、部品実装機100の設計
上の都合である。つまり、このような制約が生じないこ
とよりも、部品供給部115a及びbにセットできる部
品テープの数を多くすることを優先したためである。以
上の図153と図154とから分かるように、ノズルス
テーション119上のノズル配置が与えられた場合の可
能解チェックは、Z軸の左端付近に配置された部品に対
して装着ノズルがアクセスできるか否かを検討すればよ
いことになる。Z軸の左端付近にアクセス可能な装着ヘ
ッドは、ヘッド番号の低い装着ヘッドに限られ(図15
4(c))、しかも、ヘッド番号の低い装着ヘッドは、
ノズルステーション119上の全てのノズルを吸着でき
るとは限らない(図153(c))からである。
うな検討は要らない。少なくとも、装着ヘッドH10
は、ノズルステーション119上の全てのノズルを吸着
することができ(図153(c))、最大のZ番号96
の位置にアクセスすることができるので(図154
(c))、ノズルステーション119上のノズル配置に
よる制約は生じないからである。図155は、ノズルス
テーション上のノズル配置が与えられた場合の可能解チ
ェックをするときの処理手順を示すフローチャートであ
る。
ら、ノズルタイプNtype毎の最小のZ番号PZmin(Ntype,Z
配列)を特定する(S780)。例えば、タイプSのノ
ズルを用いる部品テープのうち、最左端に置かれる部品
テープのZ番号を特定する。次に、与えられたノズルス
テーション119上のノズル配置NPから、ノズルタイプ
Ntypeごとに、以下の処理を繰り返す(S781〜S7
85)。
吸着することが可能な最小のヘッド番号Hmin(Ntype,N
P)を特定する(S782)。例えば、タイプSのノズ
ルは、ノズルステーション119上の最左列から数えて
第6列に置かれている場合には、図153(c)に示さ
れた表を参照することで、このタイプSのノズルを吸着
可能な装着ヘッドの最小番号は「3」と特定できる。
pe,NP)から、ノズルタイプNtypeのノズルが到達できる
最小のZ座標NZmin(Ntype,NP)を特定する(S78
3)。例えば、ヘッド番号Hmin(Ntype,NP)が「3」であ
る場合には、図154(c)に示された表を参照するこ
とで、このノズルが到達できる最小のZ座標NZmin(Nty
pe,NP)は「4」と特定することができる。
P)が、そのノズルタイプNtypeについて上記ステップS
780で特定したZ番号PZmin(Ntype,Z配列)以下である
か否かを判定する(S784)。つまり、当該Ntypeに
ついて、NZmin(Ntype,P)≦ PZmin(Ntype,Z配列)が
成立するか否か判定する。
について、ノズルステーション119上のノズル配置に
よって定まるアクセス可能な最小のZ座標NZmin(Ntyp
e,NP)が、与えられたZ配列から定まる最小のZ番号PZ
min(Ntype,Z配列)以下であること、即ち、マルチ装着ヘ
ッド112の左方向への移動に関して、そのノズルが、
吸着すべき全ての部品を吸着することができるか否かを
判定する。
いて、ステップS784での判定が成立した場合には、
与えられたノズル配置とZ配列に対して可能解が存在す
ると判断し(S786)、そうでない場合には、可能解
が存在しないと判断する(S787)。このような可能
解チェックを初期タスクの構成時や状態更新時等に行う
ことで、ノズルステーション上のノズル配置を固定した
影響を取り込んだ最適化が可能となる。
合の小部品の最適化マルチ装着ヘッド112は最大10
個の部品を同時に吸着できるが、そのような効率的な部
品吸着が可能となるのは、マルチ装着ヘッド112に1
0本のノズルが装着されていることが前提となる。とこ
ろが、生産現場においては、ある部品実装機100で使
用できるノズルの本数が10本に満たないという状況が
発生する。このような状況であっても、マルチ装着ヘッ
ド112は、ノズルステーション119上でノズル交換
を行うことで、装着するノズルの位置をずらす等の変更
をすることができるので、理論的には、必要なタイプの
ノズルが少なくとも1本用意されていれば、Z軸上のい
ずれの位置に置かれた部品であっても吸着し、全ての部
品に対する実装を完了することができる。
動作であるので、特に実装点数の多い小部品について
は、ノズル交換を最小に抑える実装順序が求められる。
そこで、使用ノズルが10本未満の場合における小部品
の最適化として、刈り上げ処理等のこれまでの小部品用
アルゴリズムをベースとし、ノズル交換が最小となるよ
うに、以下のような最適化を行うこととしている。
すると、ノズルパターンについては、次の2つのノズル
パターンを用意し、これら2つのノズルパターンだけ
(場合によっては、いずれかのノズルパターンのみ)を
用いて全ての小部品を実装することとする。 (i)ノズルパターン1 ヘッド番号1〜nにノズルを装着したパターン (ii)ノズルパターン2 ヘッド番号(10−n+1)〜10にノズルを装着した
パターン 図156は、使用ノズル本数が6本の場合に用意する2
つのノズルパターンの例を示す。ノズルパターン1は、
ヘッド番号1〜6の6個の装着ヘッドにだけノズルが装
着された状態であり、ノズルパターン2は、ヘッド番号
5〜10の6個の装着ヘッドにだけノズルが装着された
状態である。
明するフローチャートである。ここでは、与えられた部
品テープのZ配列における位置(左右ブロック、Z番
号)に応じて、2種類のノズルパターン1及び2のいず
れを用いるか、及び、どのようなタイミングでノズルパ
ターンを交換するかが示されている。左ブロックに配置
された部品テープについては(S800で左)、Z番号
1〜17の位置に1つでも部品テープが配置されている
場合には(S801でYes)、ノズルパターン1を用
いてZ番号1から48の方向に部品を吸着していき(S
802)、Z番号1〜17の位置に吸着すべき部品が無
くなった時点で(S801でNo)、マルチ装着ヘッド
112のノズルパターンを1から2に変え、残る部品を
Z番号18から48の方向に吸着していく(S80
3)。
に1つも部品テープが配置されていない場合には(S8
01でNo)、最初からノズルパターン2を用いてZ番
号18から48の方向に部品を吸着していく(S80
3)。また、右ブロックに配置された部品テープについ
ては(S800で右)、全ての部品に対して、最初から
ノズルパターン2で吸着していく(S804)。
いるのは、次の理由による。つまり、図154(c)に
示されたZ番号ごとのアクセス可能な装着ヘッドのヘッ
ド番号から分かるように、ヘッド番号10の装着ヘッド
H10は、Z番号が18〜96の位置にアクセスでき
る。したがって、使用ノズルの本数nが1以上である限
り、ノズルパターン2によってZ番号18〜96の部品
テープは必ず吸着され得る。一方、Z番号1〜17の部
品テープについては、少なくともヘッド番号1の装着ヘ
ッドH1がそれら部品テープにアクセスできるので、使
用ノズルの本数nが1以上である限り、ノズルパターン
1によってZ番号1〜17の部品テープは必ず吸着され
得る。そして、多くのZ番号にアクセスできるノズルパ
ターン2を優先して使用する。これによって、わずか2
種類のノズルパターンだけを用い、かつ、少ないノズル
交換回数で、いかなる種類のZ配列についても適用する
ことができる。
えられた部品ヒストグラムに対して、これまでの10点
単位に代えてn点単位で刈り上げ処理等を行うことで、
吸着パターンを生成すればよい。以上、本発明に係る部
品実装順序の最適化について、実施の形態に基づいて説
明したが、本発明は、この実施の形態に限定されない。
成を備える部品実装機100、200それぞれにダウン
ロードするための最適なNCデータを生成するために用
いられたが、このような用途だけでなく、生産性に関す
る要求仕様を満たすために必要とされる生産ラインの構
成を決定するために用いることができるのは言うまでも
ない。生産対象となる基板の実装点データとモデリング
した仮想的な電子部品実装システムの実装装置情報等と
を最適化装置300に与え、得られた最適状態(ライン
タクト)が要求仕様を満たすか否か判断すればよい。
(i)実装装置の設計として、例えば、マルチ装着ヘッド
112のノズル数を4ノズルヘッド→10ノズルヘッド
→8ノズルヘッドを変えてみたり、ノズルピッチを2
1.5mm→22mと変えてみたり、部品カセットのピ
ッチ(Z軸ピッチ)を変えてみたり、部品認識カメラの
位置を変えてみたりすることで、最も効率のよい(生産
性の高い)ヘッド等を決定するのに用いたり、(ii)複数
の生産ラインのうち、どの生産ライン(又は、実装装
置)で対象の基板を生産すべきかの決定に用いたり、(i
ii)実装装置の販売や営業用のツールとして、いかなる
オプション(部品カセットやノズルの本数や種類)を装
備すれば、いかなる生産性(時間あたり何枚の基板を生
産することができるか)が確保されるかの計算に用いた
りすることができる。
00、200とは別個独立した装置であったが、これら
部品実装機100、200に内蔵されていてもよい。ま
た、状態最適化部316は、部品グループG[1]〜G[5]
に属する小部品と部品グループG[6]〜G[9]に属する汎
用部品それぞれに対して、異なる探索アプローチによる
最適化を行ったが、本発明は、このような分類やアプロ
ーチに限られない。
それぞれの部品の実装点を接続する折れ線(パス)どう
しの交差を解消するように実装順序を入れ替えてみてタ
クトが小さくなるか否かで実装順序の最適化を行った
が、交差していないパスどうしを入れ替えてみてもよ
い。交差していないタスクのパスを入れ替えることでタ
クトが短縮化されることもあり得るからである。
に係る部品実装順序最適化方法は、電子部品をプリント
基板に実装する部品実装機による部品の実装順序を最適
化する最適化装置に利用することができる。生産ライン
に設置されて使用される部品実装機のコントローラとし
てだけでなく、生産ラインを構築する前の段階で、導入
予定の部品実装機の構成・仕様と部品実装時間との関係
を見積もる等のために使用するシミュレーション・評価
ツールとして利用することもできる。
列挙する。 部品実装システム:最適化装置と部品実装機とを含むシ
ステムのこと。 最適化装置:部品の実装順序を最適化する装置のこと。
具体的には、短いタクト(実装時間)で基板を生産する
ために、部品実装機における最適な部品カセットの配列
(どの部品テープを収めた部品カセットを部品実装機の
どの位置(Z軸)に配置するか)、マルチ装着ヘッドに
よる部品の吸着及び装着の順序(どの部品カセットから
部品を吸着し、基板上のどの実装点に装着するか)等を
決定する。 部品実装機:最適化後のNCデータに従って、マルチ装
着ヘッドを用いて部品カセットから部品を吸着し、基板
に装着していく生産ロボットのこと。複数のサブ設備を
備えるタイプもある。 サブ設備:1つのマルチ装着ヘッドと複数の部品カセッ
トを備え、他のサブ設備とは独立して(並行して)、基
板への部品実装を実行する装置(実装ユニット)。 シングルカセット:部品カセットの一種で、1つの部品
テープだけが装填される。 ダブルカセット:部品カセットの一種で、最大2個の部
品テープが装填され得る。ただし、同一送りピッチの部
品テープに限定される。 Z軸:部品実装機(サブ設備を備える場合には、サブ設
備)ごとに装着される部品カセットの配列位置を特定す
る座標軸(又は、その座標値)のこと。 部品種:抵抗、コンデンサ等の電子部品の種類のこと。
各部品種には、部品の情報(電気的特性、形状、部品
数、最大分割数、カセット種別等)が対応づけられてい
る。 部品テープ:同一部品種の複数の部品をテープ上に並べ
たもの。最適化処理においては、同一の部品種に属する
部品の集合(それら複数個の部品が仮想的なテープ上に
並べられたもの)を特定するデータをいう。「部品分
割」と呼ばれる処理によって、1つの部品種に属する部
品群(又は、1本の部品テープ)が複数本の部品テープ
に分割される場合がある。分割後のテープ本数が分割数
と呼ばれる。 実装点:部品を装着すべき基板上の座標点のこと。同一
部品種の部品が異なる実装点に装着される場合もある。
同一の部品種に係る部品テープに並べられた部品(実装
点)の個数の合計は、その部品種の部品数(実装すべき
部品の総数)と一致する。 部品ヒストグラム:部品テープ(部品種)を横軸、部品
数を縦軸とする座標に描かれた柱状グラフのこと。最適
化によって、最終的に、部品カセットの配列にマッピン
グされる。 コア:部品数の多い順に部品テープを並べた部品ヒスト
グラムに対して、「刈り上げ法」により、n点同時吸着
の吸着パターンで刈り上げていった結果、残った部品を
「コア部品」といい、それらコア部品を収めた部品テー
プ、部品カセットそれぞれを「コア部品テープ」、「コ
アカセット」と呼ぶ。 刈り上げ:部品数の多い順に部品テープを並べた部品ヒ
ストグラムに対して、部品数の小さい部品から、n点同
時吸着の吸着パターンを取り除いていく処理のこと。 タスク:マルチ装着ヘッドによる部品の吸着・移動・基
板上への装着という一連の実装動作の繰り返しにおける
1回分の実装動作(吸着・移動・装着)のこと。 吸着パターン:1以上のタスクについて、マルチ装着ヘ
ッドが(同時)吸着する部品をタスク単位で示した図、
又は、それらの部品群のこと。 タスクグループ:部品の同時吸着という観点から関連し
たタスクの集まりのこと。部品数が同じ部品テープをn
本集め、それらn本の部品テープから1点ずつn個の部品
を同時に吸着できるように、n点同時吸着できるタスク
を集めることを目指してタスクグループを作ることによ
って部品カセットの並びを決定する最適化手法を「タス
クグループ生成法」と呼ぶ。 山:最適化によって並びが決定された部品テープの集ま
り、又は、それら部品テープの並びに対応する部品ヒス
トグラムのこと。「刈り上げ法」による最適化が施され
た後の部品ヒストグラムは、緩やかな斜面と急な斜面を
有する「山」の形状を有する。生成された「山」に対し
て更に最適化が施される場合もある。 ラインバランス:部品実装機(サブ設備を備える場合に
は、サブ設備)ごとのタクトの分布における平準化の程
度のこと。タクト分布を平準化するように部品実装順序
を決定する処理を「ラインバランス処理」と呼ぶ。
の基板に実装する部品実装機を対象として最適な部品の
実装順序を決定する部品実装順序最適化装置として、ま
た、部品実装順序を決定するコントローラを備える部品
実装機あるいは部品実装システムとして、さらに、部品
実装機と接続されていない状態で部品の実装順序を決定
し評価するスタンドアローンのシミュレータ(部品実装
順序の最適化ツール)等として、利用することができ
る。
す外観図である。
な構成を示す平面図である。
置関係を示す模式図である。
ニットそれぞれが有する合計4つの部品供給部の構成例
を示し、(b)は、その構成における各種部品カセット
の搭載本数及びZ軸上の位置を示す表である。
置(Z軸)の例を示す図及び表である。
示す図である。
ールの例を示す図である。
の例を示す図である。
図である。
図である。
す図である。
図である。
る。
を示すモジュール構成図である。
品グループを説明するための図であり、(b)は、部品
グループ生成部による部品グループの生成過程で作成さ
れる部品表の例を示す図である。
るタスクグループのサブ設備への振り分け処理の様子を
示す図である。
るラインバランスの最適化前におけるタクト分布、最適
化によるタスクグループの移動の様子、最適化後におけ
るタクト分布を示す。
るラインバランスの最適化手順を示すフローチャートで
ある。
の実装順序最適化の概略手順を示すフローチャートであ
る。
生成の対象となる部品の部品ヒストグラム、その部品ヒ
ストグラムから生成される吸着パターンを示す。
部品ヒストグラムの未配置部分から生成される吸着パタ
ーンを示す。
となる部品の部品ヒストグラムである。
0個の部品並びの単位で部品を取っていく(刈り上げて
いく)様子を示す図である。
を対象とする部品ヒストグラムである。
て、タスクグループ生成法に準じたダイヤグラムの生成
を行っている様子を示す図である。
についての吸着パターンである。
(Z軸を変化させない再構築した)部品ヒストグラムで
ある。
化の手順を示すフローチャートである。
替えられる様子を示すである。
る様子を示す図である。
際に生成される作業ヘッドの移動軌跡(実装経路)を示
す図である。
合における戻り軌跡法で生成される作業ヘッドの移動軌
跡を示す図である。
の実装順序を最適化する際の手順を示すフローチャート
であり、(b)は、その最適化による最適解の探索アプ
ローチを説明するための状態vsタクトの関係を示す図で
ある。
化(ステップS551、S553)の詳細な手順を示す
フローチャートである。
による最適化(ステップS552)の詳細な手順を示す
フローチャートである。
間表現の具体例を示し、(b)〜(e)は、に示された
中間表現の意味(Z軸配列への変換)を示す図である。
説明するための部品ヒストグラムである。
る。
である。
る。
ヒストグラムである。
るための実装経路図である。
ヘッドの動きを示す図である。
す部品ヒストグラムである。
ヘッドが部品を装着する際に移動できる範囲の限界に基
づく制約領域を示す図である。
明するための部品ヒストグラムである。
を説明するための部品ヒストグラムである。
グラムである。
グラムである。
グラムである。
グラムである。
グラムである。
グラムである。
グラムである。
グラムである。
グラムである。
グラムである。
グラムである。
グラムである。
グラムである。
グラムである。
グラムである。
グラムである。
グラムである。
グラムである。
グラムである。
グラムである。
グラムである。
グラムである。
分割による最適化のステップ(1)〜(3)を説明するための
部品ヒストグラムである。
ストグラムである。
ストグラムである。
ヒストグラムである。
るための部品ヒストグラムである。
による最適化のステップ(1)〜(3)を説明するための部品
ヒストグラムである。
ストグラムである。
ヒストグラムである。
部品ヒストグラムである。
装経路図である。
めの実装経路図である。
実装経路図である。
作業ヘッドの移動軌跡図である。
点がある場合における「戻り」動作を示す図であり、
(b)は、「戻り最適化法」を適用した場合のヘッドの
戻り軌跡を示すシミュレーション結果図である。
下における最適化のステップ(1)を説明するための部品
ヒストグラムである。
グラムである。
グラムである。
グラムである。
グラムである。
グラムである。
グラムである。
グラムである。
グラムである。
グラムである。
における前サブ設備と後サブ設備の実装時間の例、及
び、そのときのラインバランス処理を示す説明図であ
り、(c)及び(d)は、Z軸に空きがない場合におけ
る前サブ設備と後サブ設備の実装時間の例、及び、その
ときのラインバランス処理(スワップ処理)を示す説明
図である。
による最適化のステップ(1)を説明するための部品ヒス
トグラムである。
グラムである。
グラムである。
グラムである。
トグラムである。
トグラムである。
トグラムである。
トグラムである。
トグラムである。
トグラムである。
トグラムである。
の図であり、(a)は、対象の部品の種類(使用可能な
ノズルの番号)と員数を示す表であり、(b)は、処理
過程を示す部品ヒストグラムである。
図である。
ある。
である。
を示す図である。
である。
る。
を示す図である。
ン(Z配列)を決定するアルゴリズムの処理手順を示す
フローチャートである。
手順を説明するための部品テープの並びを示す。
よる最適化のレベルを説明するための図であり、単に員
数の多い順に(右から左方向に)部品テープが並べられ
た部品ヒストグラムを示す。
り上げた場合の吸着上下回数パターンを示す。
部品ヒストグラムを示す。
り上げた場合の吸着上下回数パターンを示す。
を示すフローチャートである。
処理の様子を示す。
他のケースにおける処理の様子を示す。
ゴリズムの処理手順を示すフローチャートである。
訳を示す。
す。
列の最適化アルゴリズムの処理手順を示すフローチャー
トである。
理の様子を示している。
理の様子を示している。
理の様子を示している。
理の様子を示している。
の処理手順を示すフローチャートである。
場合それぞれの吸着パターンを比較して説明するための
図であり、対象となる部品ヒストグラムを示す。
た部品ヒストグラムに対する吸着パターン(刈り上げ処
理とコア処理による)を示す。
ある場合の図136に示された部品ヒストグラムに対す
る吸着パターンを示す。
の全体の処理手順を示すフローチャートである。
る処理手順を示すフローチャートである。
説明する具体例を示す図である。
ゴリズムの処理手順を示すフローチャートである。
る前半処理(S720〜S722)の具体例を示す図で
ある。
る後半処理(S723〜S726)の具体例を示す図で
ある。
である。
適化アルゴリズムの処理手順を示すフローチャートであ
る。
る処理の具体例を示す図である。
の処理手順を示すフローチャートである。
る処理の具体例を示す図である。
ズルパターンの例を示す。
の処理手順を示すフローチャートである。
れたノズルパターンの例を示す。
ドの可動範囲に基づくノズル交換の制約を示す図であ
る。
可動範囲に基づく部品吸着の制約を示す図である。
られた場合の可能解チェックをするときの処理手順を示
すフローチャートである。
つのノズルパターンの例を示す。
て部品を吸着する場合のノズル交換のタイミングを説明
するフローチャートである。
Claims (7)
- 【請求項1】 部品を収納した部品カセットの並びか
ら、最大n(≧2)個の部品を吸着することが可能な装
着ヘッドで部品群を吸着し、XYロボットにより前記装
着ヘッドを移動させ基板に実装していく部品実装機を対
象とし、コンピュータの実行により部品の実装順序を最
適化する方法であって、 前記装着ヘッドにより部品群を吸着し移動した後前記部
品群を基板に装着するという1回分の一連動作によって
実装される部品群をタスクとする複数のタスクの並びか
らなるタスクグループを生成するタスクグループ生成ス
テップと、 生成されたタスクグループそれぞれについて、タスクグ
ループを構成する全ての部品の実装に要する時間が最小
となるように、各タスクを構成する部品種の並びを変更
することなく、タスクに属する部品の実装点を選択し
て、前記選択した実装点どうしをタスク間で入れ替える
部品入替ステップと を含むことを特徴とする部品実装順序最適化方法。 - 【請求項2】 前記部品入替ステップは、同一部品種の
異なる2つの部品をランダムに選択するステップと、 選択された2つの部品の実装順序を入れ替えることによ
って、これら2つの部品が属するタスクグループの前記
時間が小さくなるか否かを判断するステップと、 前記時間が小さくなると判断された場合に、それら2つ
の部品の実装順序を入れ替えるステップとからなる ことを特徴とする請求項1記載の部品実装順序最適化方
法。 - 【請求項3】 前記部品入替ステップは、 同一部品種の組み合わせからなる2つのタスク間におい
て、連続して基板に装着される複数の部品群どうしを入
れ替えることによってこれら2つのタスクが属するタス
クグループの前記時間が小さくなるか否かを判断するス
テップと、 前記時間が小さくなると判断された場合に、前記複数の
部品群どうしを入れ替えるステップとからなる ことを特徴とする請求項1記載の部品実装順序最適化方
法。 - 【請求項4】 部品を収納した部品カセットの並びか
ら、最大n(≧2)個の部品を吸着することが可能な装
着ヘッドで部品群を吸着し、XYロボットにより前記装
着ヘッドを移動させ基板に実装していく部品実装機を対
象とし、コンピュータの実行により部品の実装順序を最
適化する装置であって、 前記装着ヘッドにより部品群を吸着し移動した後前記部
品群を基板に装着するという1回分の一連動作によって
実装される部品群をタスクとする複数のタスクの並びか
らなるタスクグループを生成するタスクグループ生成手
段と、 生成されたタスクグループそれぞれについて、タスクグ
ループを構成する全ての部品の実装に要する時間が最小
となるように、各タスクを構成する部品種の並びを変更
することなく、タスクに属する部品の実装点を選択し
て、前記選択した実装点どうしをタスク間で入れ替える
部品入替手段と を備えることを特徴とする部品実装順序最適化装置。 - 【請求項5】 部品を収納した部品カセットの並びか
ら、最大n(≧2)個の部品を吸着することが可能な装
着ヘッドで部品群を吸着し、XYロボットにより前記装
着ヘッドを移動させ基板に実装していく部品実装機であ
って、 請求項1記載の部品実装順序最適化方法により最適化さ
れた部品の実装順序で部品を実装する ことを特徴とする部品実装機。 - 【請求項6】 部品を収納した部品カセットの並びか
ら、最大n(≧2)個の部品を吸着することが可能な装
着ヘッドで部品群を吸着し、XYロボットにより前記装
着ヘッドを移動させ基板に実装していく部品実装機を対
象とし、コンピュータの実行により部品の実装順序を最
適化する装置に用いられるプログラムであって、 前記装着ヘッドにより部品群を吸着し移動した後前記部
品群を基板に装着するという1回分の一連動作によって
実装される部品群をタスクとする複数のタスクの並びか
らなるタスクグループを生成するタスクグループ生成手
段と、 生成されたタスクグループそれぞれについて、タスクグ
ループを構成する全ての部品の実装に要する時間が最小
となるように、各タスクを構成する部品種の並びを変更
することなく、タスクに属する部品の実装点を選択し
て、前記選択した実装点どうしをタスク間で入れ替える
部品入替手段と してコンピュータを機能させることを特徴とするプログ
ラム。 - 【請求項7】 請求項6に記載されたプログラムが記録
されたコンピュータ読み取り可能な記録媒体。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2003313512A JP3531929B2 (ja) | 2001-05-17 | 2003-09-05 | 部品実装順序最適化方法、その装置及び部品実装機 |
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2001-147566 | 2001-05-17 | ||
JP2001147566 | 2001-05-17 | ||
JP2003313512A JP3531929B2 (ja) | 2001-05-17 | 2003-09-05 | 部品実装順序最適化方法、その装置及び部品実装機 |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2002161042A Division JP3582653B2 (ja) | 2001-05-17 | 2002-06-03 | 部品実装順序最適化方法、その装置及び部品実装機 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2004006998A JP2004006998A (ja) | 2004-01-08 |
JP3531929B2 true JP3531929B2 (ja) | 2004-05-31 |
Family
ID=30445676
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2003313512A Expired - Lifetime JP3531929B2 (ja) | 2001-05-17 | 2003-09-05 | 部品実装順序最適化方法、その装置及び部品実装機 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP3531929B2 (ja) |
-
2003
- 2003-09-05 JP JP2003313512A patent/JP3531929B2/ja not_active Expired - Lifetime
Also Published As
Publication number | Publication date |
---|---|
JP2004006998A (ja) | 2004-01-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP1350419B1 (en) | Method for optimization of an order of component mounting, apparatus using the same, and mounter | |
US7899561B2 (en) | Operating time reducing method, operating time reducing apparatus, program and component mounter | |
US7603193B2 (en) | Method for optimization of an order for component mounting and apparatus for optimization of an order for component mounting | |
JP3466141B2 (ja) | 部品実装順序最適化方法、その装置及び部品実装装置 | |
JP3418188B2 (ja) | 部品実装順序最適化方法、その装置及び部品実装機 | |
JP3470897B2 (ja) | 部品実装順序最適化方法、その装置及び部品実装機 | |
JP3480732B2 (ja) | 部品実装順序最適化方法及びその装置 | |
JP3531930B2 (ja) | 部品実装順序最適化方法、その装置及び部品実装機 | |
JP3480731B2 (ja) | 部品実装順序最適化方法及びその装置 | |
JP3476191B2 (ja) | 部品実装順序最適化方法 | |
JP3447008B2 (ja) | 部品実装順序最適化方法、その装置及び部品実装機 | |
JP3531929B2 (ja) | 部品実装順序最適化方法、その装置及び部品実装機 | |
JP3582653B2 (ja) | 部品実装順序最適化方法、その装置及び部品実装機 | |
JP3470896B2 (ja) | 部品実装順序最適化方法及びその装置 | |
JP2002171097A (ja) | 部品実装順序最適化方法、その装置及び部品実装機 | |
JP3582656B6 (ja) | 部品実装順序最適化方法、その装置及び部品実装機 | |
JP3582655B6 (ja) | 部品実装順序最適化方法、その装置及び部品実装機 | |
JP3582655B2 (ja) | 部品実装順序最適化方法、その装置及び部品実装機 | |
JP3582656B2 (ja) | 部品実装順序最適化方法、その装置及び部品実装機 | |
JP2005101574A (ja) | 部品実装順序最適化方法および部品実装順序最適化装置 | |
JP4754956B2 (ja) | 部品実装順序決定方法 | |
JP2009253044A (ja) | 実装データ作成方法、実装データ作成装置、部品実装機、プログラムおよびデータ構造 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A975 | Report on accelerated examination |
Free format text: JAPANESE INTERMEDIATE CODE: A971005 Effective date: 20040105 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20040301 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20040301 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 3531929 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20080312 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20090312 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100312 Year of fee payment: 6 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110312 Year of fee payment: 7 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110312 Year of fee payment: 7 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120312 Year of fee payment: 8 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130312 Year of fee payment: 9 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130312 Year of fee payment: 9 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20140312 Year of fee payment: 10 |
|
EXPY | Cancellation because of completion of term |