(57)【要約】【課題】基板の生産タクトを向上させることが可能な部品実装機のフィーダ配置最適化方法を提供する。【解決手段】部品吸着時吸着ヘッドの各吸着ノズルが吸着する部品を供給するフィーダの位置の並びを示す吸着パターンを求め、その種別に応じてマトリックス列を形成し、フィーダ位置をマトリックス行としてフィーダ位置の並びを吸着パターンの種別に応じてマトリックスに展開する。マトリックス行を入れ替えて入れ替えごとに各吸着パターンによる吸着回数を計算し、その結果に基づき最適なフィーダ配置を求める。このような構成では、簡単な構成で最適なフィーダ配置を求めることができ、吸着ヘッドによる総吸着回数を減少させて基板の生産タクトを向上させることができる。【選択図】図７
2006073918.tif 000002
【特許請求の範囲】
【請求項１】
複数の吸着ノズルを装着した吸着ヘッドを備え、フィーダから供給される部品を前記吸着ノズルで吸着して回路基板上に搭載する部品実装機のフィーダ配置最適化方法であって、
部品吸着時吸着ヘッドの各吸着ノズルが吸着する部品を供給するフィーダの位置の並びを示す吸着パターンを求め、
前記吸着パターンの種別に応じてマトリックス列を形成し、フィーダ位置をマトリックス行としてフィーダ位置の並びを吸着パターンの種別に応じてマトリックスに展開し、
マトリックス行を入れ替えて入れ替えごとに各吸着パターンによる吸着回数を計算し、その結果に基づき最適なフィーダ配置を求めることを特徴とする部品実装機のフィーダ配置最適化方法。
【請求項２】
前記マトリックスから各吸着パターンによる吸着回数を求め、その和が最小となるようなマトリックス行の入れ替えを行い、そのマトリックス行のフィーダ位置に対応するフィーダ配置を最適なフィーダ配置とすることを特徴とする請求項１に記載の部品実装機のフィーダ配置最適化方法。
【請求項３】
前記マトリックス行の入れ替えに、遺伝的アルゴリズムを使用することを特徴とする請求項１又は２に記載の部品実装機のフィーダ配置最適化方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、部品実装機のフィーダ配置最適化方法、更に詳細には、複数の吸着ノズルを装着した吸着ヘッドを備え、フィーダから供給される部品を吸着ノズルで吸着して回路基板上に搭載する部品実装機のフィーダ配置最適化方法に関する。
【背景技術】
【０００２】
電子部品（以下、単に部品という）を回路基板に実装する電子部品実装機では、基板生産（部品実装）は、基板種類ごとにその基板を生産する生産プログラムを作成して行われる。各生産プログラムは、実装機上で基板を生産するための各種データを含み、例えば、基板に関するデータ、搭載位置に関するデータ、部品に関するデータ（例えば縦横高さの寸法）、吸着位置に関するデータ、画像認識用の情報、接着剤の塗布に関するデータ等から構成されている。
【０００３】
従来から、基板生産効率を向上させるために、生産プログラムの最適化が行われており、例えば、部品の吸着及び搭載順を最適化して生産タクトが短くなるようにすることが行われている。この生産プログラムの最適化処理は、図１３に示すように、生産プログラムを読み込み（ステップＳ１）、フィーダ配置を決定した後に（ステップＳ２）、その配置に対して吸着搭載順を生成し（ステップＳ３）、その結果をサイクルテーブルとしてファイルに出力する（ステップＳ４）という実行パスであった。
【０００４】
また、部品を吸着するヘッド部が部品供給部から回路基板の所定位置に移動する経路を直線化することにより生産タクト時間を短縮することも行われている（特許文献１）。
【０００５】
また、部品を供給するフィーダのランダムな配列を複数生成し、これらの各配列を個体とし、遺伝的アルゴリズムを用いて次々に個体を生成しながら、各個体の評価を行い、評価の高い個体を最適なフィーダ配置として、部品実装を最適化することも行われている（特許文献２、３）。
【特許文献１】特開２００１―９４２９５号公報
【特許文献２】特開平１０―２０９６８１号公報
【特許文献３】特開２０００―２６１１９０号公報
【発明の開示】
【発明が解決しようとする課題】
【０００６】
従来の処理の場合、フィーダ配置処理と吸着搭載順の生成は独立して行われている。その為、フィーダ配置の意図したような吸着搭載順が生成されない場合や、吸着搭載順にとっての最適なフィーダ配置とはなっていない場合があった。また、フィーダ配置及び吸着搭載順の処理は各々一度のみ実行されるだけであり、吸着搭載順の生成が終了した後に、フィーダ配置を再度見直すことはしていなかった。
【０００７】
その為、最適化終了後のサイクルテーブルの出力結果から、搭載順序はそのままでフィーダの入れ替えを人間が考えた場合に、同時吸着回数を増やし総吸着回数を減らすようにフィーダ配置を行う余地が存在していた。
【０００８】
また、フィーダの並びを総当りで全ての順列を検索する場合には、吸着搭載順にとっての最良の配置が得られることになるが、そのようなアルゴリズムは、組合せ爆発を起こしてしまう。例えば、８ｍｍテープフィーダが４０本ある場合に、その順列の数は４０！通り存在し、１００ＭＩＰＳの計算機上でｎ！の計算時間は、図１４に示した表のようになってしまう（１宙齢＝１５０億年）。
【０００９】
以上のような膨大な組合せとなってしまい、全組合せを検索し最良解を探索するという方法では、適切な実行時間内に処理が終了しないという問題があった。
【００１０】
従って、本発明は、このような問題点を解決するためになされたもので、基板の生産タクトを向上させることが可能な部品実装機のフィーダ配置最適化方法を提供することを課題とする。
【課題を解決するための手段】
【００１１】
本発明は、
複数の吸着ノズルを装着した吸着ヘッドを備え、フィーダから供給される部品を前記吸着ノズルで吸着して回路基板上に搭載する部品実装機のフィーダ配置最適化方法であって、
部品吸着時吸着ヘッドの各吸着ノズルが吸着する部品を供給するフィーダの位置の並びを示す吸着パターンを求め、
前記吸着パターンの種別に応じてマトリックス列を形成し、フィーダ位置をマトリックス行としてフィーダ位置の並びを吸着パターンの種別に応じてマトリックスに展開し、
マトリックス行を入れ替えて入れ替えごとに各吸着パターンによる吸着回数を計算し、その結果に基づき最適なフィーダ配置を求めることを特徴とする。
【００１２】
最適なフィーダ配置は、上記マトリックスから各吸着パターンによる吸着回数を求め、その和が最小となるようなマトリックス行の入れ替えを行い、そのマトリックス行のフィーダ位置に対応するフィーダ配置を求めることにより決定される。この場合、マトリックス行の入れ替えに、遺伝的アルゴリズムが使用される。
【発明の効果】
【００１３】
本発明では、吸着パターンの種別に応じてマトリックス列を形成し、フィーダ位置をマトリックス行としてフィーダ位置の並びを吸着パターンの種別に応じてマトリックスに展開し、そのマトリックス行の入れ替えによる各吸着パターンによる吸着回数を入れ替えごとに計算し、その結果に基づき最適なフィーダ配置を求めるようにしているので、簡単な構成で最適なフィーダ配置を求めることができ、吸着ヘッドによる総吸着回数を減少させて基板の生産タクトを向上させることができる。
【発明を実施するための最良の形態】
【００１４】
本発明は、部品実装機において部品を供給するフィーダの配置を最適化し、基板の生産タクトを向上させるもので、以下図面に示す実施例に基づいて本発明を詳細に説明する。
【実施例】
【００１５】
図１には、電子部品実装装置（部品実装機）３０がホストコンピュータ（制御装置）２６によって制御され、基板を生産する構成が図示されている。部品実装装置３０のフィーダバンク２３には、複数のフィーダ２３ａが取り付けられる。これらのフィーダには、その位置を示すために、その下部に（４０）、（４２）、．．．．．（６０）が付されており、この実施例の場合１１個のフィーダ２３ａが配置されている。各フィーダは、矢印の方向に搬送路２４に沿って搬送される基板２０，２５に搭載するための各種電子部品を収納し、部品実装機３０の吸着ヘッドがこれらのフィーダから部品を吸着して基板２０、２５の所定個所に実装し、基板を生産する。通常、基板の生産は、複数台の実装装置により分担して生産されるので、他の電子部品実装装置３０’が仮想線で図１に示されている。
【００１６】
図２には、部品実装装置３０の詳細な構成が図示されており、ラインに設置される他の部品実装装置も同様な構成となっている。部品実装装置３０は、全体の部品実装を制御するＣＰＵ３１ａ、各種制御プログラムやデータを格納したＲＯＭ３１ｃ、制御データ、処理データを格納し作業領域を提供するＲＡＭ３１ｂから構成される制御部（制御手段）３１を有している。また、部品実装装置３０には、ホストコンピュータ２６との間でデータ送受信が可能なデータ送受信部３６が設けられており、ホストコンピュータ２６から送信されてくる生産プログラムは、このデータ送受信部３６を介して受信され、データ記憶部３５に格納される。制御部３１は、ホストコンピュータ２６から送信される生産プログラムのデータ並びにデータ入力部３７を介して入力されるデータに従って、吸着ヘッドをＸ、Ｙ方向に移動させるＸ／Ｙ駆動部３２と吸着ノズルをＺ軸方向（高さ方向）並びに吸着軸（θ）を中心に回転させる他の駆動部３３を制御する。
【００１７】
図３に示したように、吸着ヘッド７０は、複数の吸着ノズル７０ａ〜７０ｄを備えており、Ｘ／Ｙ駆動部３２により駆動されて、フィーダ２３ａに移動し、そこでフィーダから供給される部品７１ａ〜７１ｄを吸着ノズル７０ａ〜７０ｄにより同時にあるいは順次に吸着する。吸着された各部品は、カメラ３４ａを備えた画像認識部３４で吸着姿勢が認識され、部品中心位置と吸着位置間の位置ずれ、並びに吸着角度ずれが補正された後、搬送路２４に沿って搬送される基板２０、２５の所定個所に実装され、基板が生産される。
【００１８】
この基板生産は、生産プログラムに従って、部品吸着から次の部品吸着までの動作を１搭載サイクルとするサイクルを繰り返して実行される。またデータ記憶部３５に記録されている部品データには、基板に関するデータ、搭載位置（搭載点）に関するデータ、部品に関するデータ（例えば縦横高さの寸法）、吸着位置に関するデータ、部品の搭載精度に関するデータ、画像認識用の情報、それに、部品搭載に必要な他のデータが各部品ごとに記録されている。
【００１９】
図４は、生産プログラムの最適化実行処理の全体の流れが図示されており、ステップＳ１１からステップＳ１３は、図１３のステップＳ１からＳ３と同じであり、生産プログラムを読み込み（ステップＳ１１）、所定のアルゴリズムに従ってフィーダ配置を決定した後に（ステップＳ１２）、その配置に対して吸着搭載順を生成する（ステップＳ１３）。
【００２０】
次に、ステップＳ１４において、実行時間内に処理を終了しかつ全体最適化の観点から近似解を得る方法として、遺伝的アルゴリズム（以下ＧＡ）を使用したフィーダ配置の並べ替え（フィーダ位置の入れ替え）を行う。この処理は、ステップＳ１３で部品の吸着搭載順を決定した後に行うことで、初期解の改善を図っている。
【００２１】
ＧＡによるフィーダ並べ替えのフローは、図４の右側に示されており、まず、ステップＳ２１において、現状の経験的（Ｈｅｕｒｉｓｔｉｃ）な最適化手法の結果であるサイクルテーブルを解析し、どのような吸着パターンが存在しているかを抽出する。ここでサイクルテーブルとは、部品吸着から次の部品吸着までの動作を１搭載サイクルとしたとき、予定されているすべての部品を基板に搭載するまでの全搭載サイクルをリストしたテーブルであり、これを解析することにより、吸着パターンの種類を求めることができる。吸着パターンとは、同時吸着できるときは同時吸着するものとして、各搭載サイクルにおける部品吸着時に吸着ヘッドの各吸着ノズルが吸着する部品を供給するフィーダの位置の並び（配列）を示すパターンである。
【００２２】
図５は、サイクルテーブルから抽出された吸着パターンの例を示している。吸着パターン（１）は、吸着ヘッド７０の吸着ノズル７０ａ〜７０ｄが、フィーダ位置（４０）、（４２）、（４４）、（４６）の部品を同時吸着するときのパターンであり、このサイクルテーブルに関連する基板生産では、この吸着パターン（１）が９回発生することを示している。次の吸着パターン（２）は、吸着ノズル７０ａ〜７０ｃが、フィーダ位置（４２）、（４４）、（４６）の部品を同時吸着し、続いて残りの吸着ノズル７０ｄが、フィーダ位置（５２）の部品を吸着するときのパターンであり、この吸着パターン（２）が１回発生することを意味している。以下、吸着パターン（７）まで同様の読み方をする。
【００２３】
続いて、サイクルテーブルを解析した結果、図５に示すような吸着パターンが存在していた場合に、ステップＳ２２において、図６に示すような吸着パターンマトリックスを構築する。このマトリックスでは、吸着パターンの種別（パターン（１）〜（７））に応じてマトリックス列が形成され、フィーダ位置をマトリックス行としてフィーダ位置の並びが吸着パターンの種別に応じてマトリックスに展開されている。例えば、吸着パターン（１）では、フィーダ位置（４０）、（４２）、（４４）、（４６）の部品が吸着されるので、当該フィーダ位置のところが「１」となっており、他のフィーダ位置のところが「０」となっている。吸着パターン（２）では、フィーダ位置（４２）、（４４）、（４６）、（５２）の部品が吸着されるので、当該フィーダ位置のところが「１」、他の位置が「０」となっている。以下同様な読み方をする。
【００２４】
また、このマトリックスには、各位置のフィーダから供給され、基板に搭載される部品点数（搭載点数）が記載されており、フィーダ位置４０からは９個の部品が供給されて基板に搭載され、フィーダ位置４２からは１０個の部品が供給されて基板に搭載される、．．．．．が示されている。このとき、全部品を基板に搭載するまでに（基板生産完了までに）、各吸着パターンが何回繰り返されて吸着が行われるかが、各吸着パターン番号のあとに、繰り返し回数として括弧書きされている。例えば、吸着パターン（１）は、基板生産完了までに９回繰り返されて吸着が行われることが示されている。
【００２５】
この吸着パターンマトリックスから、基板を生産するに必要な、すなわち全部品を基板に搭載するに必要な吸着回数を算出する。この吸着回数の算出方法としては、マトリックスの列毎に吸着回数を計算し、それに繰り返し回数を乗算する。その場合、列毎の吸着回数の計算であるが、隣接したフィーダからの吸着は同時に行うことが可能である為、列に数値が連続して存在している部分毎に、その連続部分の数値の最大値を加算していく。上記例の吸着パターン（１）では０以外の数値の連続部分が１つしかなく、その最大値は１である為、総吸着回数＝ＭＡＸ（１，１，１，１）×９＝９回となる。吸着パターン（２）では｛ＭＡＸ（１，１，１）＋ＭＡＸ（１）｝×１＝２回、吸着パターン（３）では｛ＭＡＸ（１，１）＋ＭＡＸ（１，１）｝×３＝６回と計算され、以下、他の吸着パターンでも同様に総吸着回数が計算される。
【００２６】
上記例のマトリックスの総吸着回数は、各吸着パターンの吸着回数の総和となる為、９＋２＋６＋６＋２＋６＋１＝３２回である。
【００２７】
フィーダ配置の並べ替えを行う場合には、マトリックスの行を入れ替えることによって行い、入れ替え後のマトリックスの吸着回数を上述の方法にて算出し、吸着回数の総和の少ないマトリックスを選択するように解の改善を行う。例えば、図７に示すように、マトリックス行を入れ替えると、各吸着パターンで完全に同時吸着のみの吸着が行われ、上述した総吸着回数が２３回となり、改善が見られる。
【００２８】
以上のようなフィーダ配置の様々な並び（マトリックス行の入れ替え）をＧＡにて評価し、最適解の探索を実行する。このＧＡによる解の改善（ステップＳ２４）は、フィーダバンク（図１の２３）ごとに行い、これが図４のステップＳ２３とＳ２５間のループ処理で示されている。
【００２９】
ステップＳ２４で行われるＧＡによる処理の一般的な流れ及び処理が図８と図９に示されている。ＧＡ処理では、まず、初期集団が生成され（ステップＳ３１）、十分な個体の遺伝子プール８０に発生させる。染色体の初期値は、問題固有のコード化にしたがってランダムに決める。続いて、遺伝子プール８０の中から、ある選択基準で次世代に残す親を２個体決定する（ステップＳ３２）。この選択基準には、例えばルーレット選択、トーナメント選択、ランク方式等が用いられる。次に、選択した親同士の遺伝子を交叉という部分的な交換を行って、子供２個体を生成する（ステップＳ３３）。この交叉には、１点交叉、２点交叉、一様交叉等がある。続いて、突然変異処理を行い、交叉によって得られた子供２個体に対して、任意の位置の遺伝子をランダムに変異させる（ステップＳ３４）。この突然変異は、ある個体の遺伝子座をランダムに変更し、局所解に陥るのを防ぐために設けられる。図９に示したように、突然変異により次世代遺伝子プール８１を生成する。そして、終了条件チェックを行い（ステップＳ３５）、予定していた世代が終了している場合や、ある一定期間、解の改善が見られない場合などに、処理を終了する。終了条件を満たさない場合には、新しい遺伝子プール８１で更新して、ステップＳ３２から繰り返す。
【００３０】
本発明では、フィーダの並びを遺伝子コード（個体）として表現し、それらをＧＡによって世代交代操作を行い、解の改善を試みる。
【００３１】
遺伝子へのコーディング方法は次のように行う。まず、経験的手法の最適化結果におけるフィーダ配置の各フィーダに対して一意な番号付けを行い、遺伝子コードとしてはそのフィーダの番号を格納する。この状態が図１０の上に示されている。この番号を格納したシーケンスの順列が、様々なフィーダ配置を表現する。この遺伝子コードの解釈は次のように行う。
【００３２】
まず、遺伝子コードを格納したシーケンスを先頭から参照し、出現順序に従ってフィーダバンク（図１の２３）ヘとフィーダを配置していく。全ての遺伝子コードが格納された時点で、遺伝子コードの解釈は終了である。これにより、図１あるいは図６に示したようなフィーダ位置の並び（フィーダ配置）が得られる。
【００３３】
遺伝子の評価方法であるが、図１０の遺伝子コードから、図６に示したような吸着パターンマトリックスを作成し、このマトリックスに基づいて総吸着回数を計算し、評価する。ＧＡにより、評価値（総吸着回数）を最小とするようなフィーダの並び替え処理が行われる。図８の処理により、他の遺伝子コードを生成することにより、例えば、図１０の下側のような遺伝コードが生成されたとすると、フィーダ配置は、その位置が図７に示したようになり、総吸着回数は３２回から２３回に改善される。
【００３４】
このように、遺伝的アルゴリズムにより種々の遺伝子コードを生成して、そのごとに各遺伝子コードの評価を行い、最適な評価値（総吸着回数が少ない）を得た遺伝子コードに基づきフィーダの並び替え行い、フィーダ配置の最適化を行う。
【００３５】
なお、上記の遺伝子コーディングを使用し、交叉や突然変異を安易に行うと同じ数字が２個以上出現するなど、フィーダ配置の解として成立しない状態（致死遺伝子）となってしまう。そこで、上記コーディングをさらに変換し、交叉や突然変異によっても致死遺伝子が出現しないように以下のようなエンコードを行う。これが、図１１に示されている。
（ａ）エンコードしたい遺伝子コード以外に、基準のリストを用意する。遺伝子コードをＣ＝｛２，７，０，１，３，６，４，５｝、基準のリストをＳ＝｛０，１，２，３，４，５，６，７｝、エンコード後のリストをＥ＝｛｝とする。Ｃの先頭要素と同じ番号の要素が基準リストの何番目にあるかという情報でエンコードし、Ｅへ溜めていく。
（ｂ）Ｃの先頭要素は２であるため、Ｓの２番目（０番目開始）に位置する。よって、Ｅ＝｛２｝となる。同時にＣとＳからその要素を取り除く。
（ｃ）Ｃ＝｛７，０，１，３，６，４，５｝、Ｓ＝｛０，１，３，４，５，６，７｝として、（２）を繰り返す。
【００３６】
上記例では、図１１の最下段に示したように、最終的に｛２，６，０，０，０，２，０，０｝にエンコードされる。このエンコードされたコードを使用して、交叉と突然変異を行う。また、デコードについても基準リストＳを元にして、ＥからＣを作成することが可能である。これが、図１２に示されている。
（ｄ）デコードしたい遺伝子コードＥ及び基準のリストＳから元の遺伝子コードであるＣを生成する。Ｅ内の情報は、基準リストＳの位置情報である為、Ｅの先頭要素の位置にあるＳの要素をＣへ格納していく。エンコードされた遺伝子コードをＥ＝｛２，６，０，０，０，２，０，０｝、基準のリストをＳ＝｛０，１，２，３，４，５，６，７｝、デコード後のリストをＣ＝｛｝とする。
（ｅ）Ｅの先頭要素は２であるため、Ｓの２番目（０番目開始）をＣに格納する。よって、Ｃ＝｛２｝となる。同時にＥとＳからその要素を取り除く。
（ｆ）Ｅ＝｛６，０，０，０，２，０，０｝、Ｓ＝｛０，１，３，４，５，６，７｝として、（２）を繰り返す。
【００３７】
以上の方法により、元の遺伝子コードへと復元される。これによりフィーダ配置が決定される為、各遺伝子コード毎に解の評価を行うことが可能になる。
【図面の簡単な説明】
【００３８】
【図１】部品実装機の概略構成を示した平面図である。
【図２】部品実装機の制御構成を示したブロック図である。
【図３】複数の吸着ノズルを備えた吸着ヘッドの構成を示した構成図である。
【図４】全体の処理の流れ並びにＧＡによるフィーダの並び替えを行う流れを示したフローチャートである。
【図５】吸着パターンの例を示す表図である。
【図６】吸着パターンマトリックスを示す表図である。
【図７】フィーダ位置の入れ替えを行い改善を試みたあとの吸着パターンマトリックスを示す表図である。
【図８】遺伝的アルゴリズムの処理の一般的な流れを示すフローチャートである。
【図９】遺伝的アルゴリズムの処理における詳細な流れを示す説明図である。
【図１０】遺伝子コードの並び替えを示した説明図である。
【図１１】遺伝子のエンコードを示す表図である。
【図１２】遺伝子のデコードを示す表図である。
【図１３】従来の最適化方法を示すフローチャートである。
【図１４】従来のアルゴリズムによる計算時間を示した表図である。
【符号の説明】
【００３９】
２０、２５  基板
２３  フィーダバンク
２３ａ  フィーダ
２６  ホストコンピュータ
３０  電子部品実装装置
７０  吸着ヘッド
７０ａ〜７０ｄ  吸着ノズル
７１ａ〜７１ｄ  電子部品
【図１】
2006073918.tif 000003
【図２】
2006073918.tif 000004
【図３】
2006073918.tif 000005
【図４】
2006073918.tif 000006
【図５】
2006073918.tif 000007
【図６】
2006073918.tif 000008
【図７】
2006073918.tif 000009
【図８】
2006073918.tif 000010
【図９】
2006073918.tif 000011
【図１０】
2006073918.tif 000012
【図１１】
2006073918.tif 000013
【図１２】
2006073918.tif 000014
【図１３】
2006073918.tif 000015
【図１４】
2006073918.tif 000016