(57)【特許請求の範囲】
【請求項１】
生産プログラムに基づきフィーダから供給される部品を部品実装機により基板に実装して基板を生産する部品実装方法であって、
複数の生産プログラムを一つのクラスタとして統合し、
前記一つのクラスタとして統合された複数の生産プログラムのうち端にあるｍ個の生産プログラムを切り離して、該切り離したｍ個の生産プログラムに対してフィーダ配置替えを行い、
前記切り離したｍ個の生産プログラムによる基板総生産時間と、前記複数の生産プログラムからｍ個の生産プログラムを除いた生産プログラムによる基板総生産時間と、前記ｍ個の生産プログラムのフィーダ配置替えに要する時間との総和が、前記一つのクラスタとして統合された複数の生産プログラムによる基板総生産時間より短いときは、前記ｍ個の生産プログラムを前記クラスタから切り離して新たなクラスタとして統合することを特徴とする部品実装方法。
【請求項２】
前記新たなクラスタとして統合されたｍ個の生産プログラムのうち端にあるｎ個の生産プログラムを切り離して、該切り離したｎ個の生産プログラムに対してフィーダ配置替えを行い、
前記切り離したｎ個の生産プログラムによる基板総生産時間と、前記ｍ個の生産プログラムからｎ個の生産プログラムを除いた生産プログラムによる基板総生産時間と、前記ｎ個の生産プログラムのフィーダ配置替えに要する時間との総和が、前記ｍ個の生産プログラムによる基板総生産時間より短いときは、前記ｎ個の生産プログラムを前記新たなクラスタから切り離し、別の新たなクラスタとして統合することを特徴とする請求項１に記載の部品実装方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、部品実装方法、さらに詳細には、複数の生産プログラムを順次実施してフィーダから供給される部品を所定の基板位置に実装する部品実装方法に関する。
【背景技術】
【０００２】
従来から、部品実装機（マウンタ）を用いて、フィーダから供給される電子部品を吸着ヘッドで吸着し、この吸着ヘッドを基板の所定位置に移動させて部品を基板上に搭載することが行われている。この場合、基板の生産（部品実装）は、基板種類ごとにその基板を生産する生産プログラムを作成して行われる。各生産プログラムは、実装機上で基板を生産するための各種データを含み、例えば、基板に関するデータ、搭載位置に関するデータ、部品に関するデータ（例えば縦横高さの寸法）、吸着位置に関するデータ、画像認識用の情報、接着剤の塗布に関するデータ等から構成されている。
【０００３】
複数種類の基板を生産する場合には、生産プログラムごとに、実装される部品が異なるので、これらの部品を供給するフィーダ種類も異なり、フィーダの交換、再配置などの準備作業（段取り作業）が必要となる。従って、複数の生産プログラムを効率良く最短時間で実施できるように、複数の生産プログラムをあたかも１本のプログラムのようにして（クラスタ化して）、クラスタ化された生産プログラム内では、基板の種類が変わってもフィーダの再配置が必要とならないように、生産プログラムないしフィーダ配置の最適化が行われている。
【０００４】
たとえば、１クラスタ内で使用されるフィーダ種類が所定数内に収まるように、複数の生産プログラムをクラスタに分けて編集し、クラスタ間で共通のフィーダが存在するときは、この共通のフィーダを同一の取り付け位置に配置して部品実装することが行われており（特許文献１）、また、各生産プログラムで使用されるフィーダ種類のうち所定種類のフィーダを、各生産プログラムで共通に使用される共通フィーダとし、また他の種類のフィーダを、個々の生産プログラムで使用される個別フィーダとし、個別フィーダに属するフィーダ数が設定値以内のときは、個別フィーダのみが交換されて部品実装が行われている（特許文献２）。
【特許文献１】特開２００３−２２９６９６号公報
【特許文献２】特開２００３−２２９６９７号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
しかしながら、従来では、同一クラスタ内では一つ前の生産プログラムのフィーダ配置が後ろ生産プログラムに引き継がれていくため、ラインバランスが悪化したり、あるいはラインタクトが悪化してしまう傾向にある。また、ラインタクトの悪い生産プログラムの生産予定基板枚数が非常に多い場合には、同一クラスタとなっていることが原因で、最終的にすべての基板の生産終了迄に要する時間が長くなってしまうという問題がある。
【０００６】
したがって、本発明は、このような問題点を解決するためになされたもので、全体として基板総生産時間が短くなるようなクラスタ分けを行って部品を搭載する部品実装方法を提供することを課題とする。
【課題を解決するための手段】
【０００７】
上記課題を解決する本発明は、
生産プログラムに基づきフィーダから供給される部品を部品実装機により基板に実装して基板を生産する部品実装方法であって、
複数の生産プログラムを一つのクラスタとして統合し、
前記一つのクラスタとして統合された複数の生産プログラムのうち端にあるｍ個の生産プログラムを切り離して、該切り離したｍ個の生産プログラムに対してフィーダ配置替えを行い、
前記切り離したｍ個の生産プログラムによる基板総生産時間と、前記複数の生産プログラムからｍ個の生産プログラムを除いた生産プログラムによる基板総生産時間と、前記ｍ個の生産プログラムのフィーダ配置替えに要する時間との総和が、前記一つのクラスタとして統合された複数の生産プログラムによる基板総生産時間より短いときは、前記ｍ個の生産プログラムを前記クラスタから切り離して新たなクラスタとして統合することを特徴とする。
【発明の効果】
【０００８】
本発明では、同一クラスタに統合可能な複数の生産プログラムを、全体としての基板総生産時間が短くなる場合には、一部の生産プログラムを切り離して新たなクラスタとして統合するようにしているので、基板総生産時間が短くなるようなクラスタ分けを行うことが可能となる。
【発明を実施するための最良の形態】
【０００９】
以下、図面に示す実施の形態に基づいて本発明を詳細に説明する。
【実施例】
【００１０】
図１には、２台の部品実装機（マウンタ）１０、２０がホストコンピュータ（制御装置）３０によって制御され、基板を生産する構成が図示されている。部品実装機１０のフィーダバンク３には、例えば６個のフィーダ３ａを装着でき、また部品実装機２０のフィーダバンク７には、５個のフィーダ７ａが取り付けられるように構成されている。各バンクのフィーダは、矢印の方向に搬送路４に沿って搬送される基板２，５に搭載するための各種部品を収納するもので、このような部品を収納し、部品実装機１０、２０に配置されるものであれば、ホルダ或いはカートリッジ等と呼ばれるものも含めて全てのフィーダを含むものである。通常、一つのフィーダには、同じ種類の部品が収納されており、部品種類が異なると、異なるフィーダに収納されるので、部品種類の数だけフィーダ種類が設けられる。通常、一つの基板に部品実装機１０により所定の部品が搭載された後、部品実装機２０により残りの部品が搭載されて、両実装機の共同により一つの基板が生産される。なお、図１では、２台の部品実装機しか示されていないが、それ以上の部品実装機を備えることができる。
【００１１】
図２には、部品実装機１０の詳細な構成が図示されており、部品実装機２０も同様な構成となっている。部品実装機１０は、全体の部品実装を制御するＣＰＵ１１ａ、各種制御プログラムやデータを格納したＲＯＭ１１ｃ、制御データ、処理データを格納し作業領域を提供するＲＡＭ１１ｂから構成される制御部１１を有している。また、部品実装機１０には、ホストコンピュータ３０との間でデータ送受信が可能なデータ送受信部１６が設けられており、ホストコンピュータ３０から送信されてくる生産プログラムは、このデータ送受信部１６を介して受信され、データ記憶部１５に格納される。制御部１１は、ホストコンピュータ３０から送信される生産プログラムのデータ並びにデータ入力部１３を介して入力されるデータに従って、Ｘ／Ｙ駆動部及びその他の駆動部１２を駆動して、吸着ヘッド（不図示）をフィーダに移動させ、そこでフィーダから供給される電子部品を吸着ヘッドにより吸着させる。吸着された部品は、カメラを備えた画像認識部１４で吸着姿勢が認識され、搭載位置が補正された後、搬送路４に沿って搬送される基板２、５の所定個所に移動して基板上に実装される。
【００１２】
ホストコンピュータ３０は、図３に図示したように、制御部３１、データ出力部３４、データ入力部３５、データ記憶部３６、データ送受信部３７から構成されている。制御部３１はＣＰＵ３１ａ、ＲＡＭ３１ｂ、ＲＯＭ３１ｃを有し、データ出力部３４からはホストコンピュータ３０の状態を示すデータが出力される。また、データ入力部３５からキーボードなどの入力手段を介して生産プログラムデータなどが入力され、またデータ送受信部３７からは部品実装機１０（２０）からのデータが受信され、これらのデータはデータ記憶部３６に格納できるようになっている。ＲＡＭ３１ｂ、ＲＯＭ３１ｃ、或いはデータ記憶部３６にはオペレーティングシステムプログラム（ＯＳ）や本実施の形態を実行するためのプログラムや各種のデータが格納される。
【００１３】
このような構成で、複数の生産プログラムが、図４に示した流れに沿ってクラスタ化される。クラスタ化は、一つのクラスタとして統合された生産プログラム内では、基板の種類が変わってもフィーダの再配置が必要とならないように、行われる。
【００１４】
まず、ステップＳ１で、総フィーダ数が初期化され、続いてステップＳ２で実装機のフィーダバンクのフィーダ収納数が求められる。図１の例では、実装機１０のフィーダ収納数は６、実装機２０のフィーダ収納数は５である。
【００１５】
次に、生産プログラムごとに、ステップＳ３とＳ１０の間でステップＳ４〜Ｓ９のループ処理を行う。当該生産プログラムで使用するフィーダ数の合計を求め（ステップＳ４）、使用する総フィーダ数を更新し（ステップＳ５）、その数が生産ラインの総フィーダ収納数、すなわち図１の例では、実装機１０のフィーダ収納数６と実装機２０のフィーダ収納数５の合計１１と同じあるいは少ない場合には（ステップＳ６の肯定）、当該生産プログラムを同一のクラスタ内に収めることができるので、同一クラスタとする（ステップＳ７）。一方、使用する総フィーダ数がラインの総フィーダ収納数より大きい場合には、その生産プログラムから別のクラスタを生成してクラスタ分けを行い（ステップＳ８）、総フィーダ数を初期化して（ステップＳ９）、すべての生産プログラムをクラスタ化する。
【００１６】
このように、使用するフィーダ数の合計が、ライン上のマウンタのフィーダバンクの総フィーダ収納数内に収まる場合には同一クラスタに、収まらない場合には別のクラスタに設定して、次に、クラスタ内の複数の生産プログラムを順次最適化して、基板生産時間が短くなるように、フィーダ配置を決定していく。このとき、同一クラスタ内では一つ前の生産プログラムのフィーダ配置が後ろ生産プログラムに引き継がれていくため、後半の生産プログラムにおいては、部品実装機１０で一つの基板に部品を搭載する搭載時間と、他の部品を実装機２０で搭載し終わるまでの時間が相違して、ラインバランスが悪化したり、あるいは一つの基板生産時間が長くなってラインタクトが悪化してしまう傾向にある。また、ラインタクトの悪い生産プログラムの生産予定基板枚数が非常に多い場合には、同一クラスタとなっていることが原因で、最終的にすべての基板の生産終了迄に要する時間が長くなってしまうという問題がある。
【００１７】
そこで、本発明では、同一クラスタ内に収まりきる生産プログラムに対し、フィーダの配置替えに要する段取り替え時間及び各生産プログラムの生産時間（基板一枚の生産時間×生産予定基板枚数）を考慮し、生産プログラムの切り替え間に段取り（フィーダの配置替え）を挟んだ方が基板総生産時間が短いと判断した場合には、敢えてクラスタを分割して最適化を実施するものとする。以下にその手順を詳述する。
【００１８】
図５は、３つの生産プログラム（Ａ、Ｂ、Ｃ）がクラスタ（１）として統合されて２台の部品実装機１０、２０で基板が生産されるときの生産終了までに要する時間を示している。生産プログラムはＡ、Ｂ、Ｃの順に実施され、フィーダバンク３と７の各フィーダ３ａ、７ａは、まず、生産プログラムＡによる基板生産が短くなるように、その配置が最適化され、続いて、その配置を維持しながら、生産プログラムＢによる基板生産が短くなるように、最適化され、最後に、生産プログラムＡ、Ｂに対して最適化されたフィーダ配置を維持して、生産プログラムＣによる基板生産が短くなるように、フィーダの配置が決められる。
【００１９】
図５に示した生産パターン（１）では全ての生産プログラムが同一クラスタ（１）に収まっており、そのクラスタ（１）内では、フィーダの配置替えは行われないので、後の生産プログラムＢ、Ｃになるほど基板生産タクトが悪くなる。一方、生産パターン（２）では、生産プログラムＢとＣの間に敢えて段取りＤを挟み、フィーダの再配置（フィーダ配置替え）を行う。この段取りに要する時間はｔであり、クラスタ数はクラスタ（１）と（２）の２つとなるが、生産プログラムＣのタクトを向上するように、フィーダ配置替えを行うことができるので、最終的な生産終了までに要する時間は、パターン（１）と比較してＴだけ短縮する。
【００２０】
このように、本発明では、上記パターン（２）の例のように、段取り替えを挟んだ方が基板総生産時間が短縮する場合には、自動的にクラスタを分割するようにする。図６には、その方法がフローチャートの形で示されている。
【００２１】
まず、図４に示す方法で、クラスタ分け処理からクラスタを仮決定し（ステップＳ２０）、各クラスタでの基板総生産時間が短くなるように、クラスタ内で実施する生産プログラムの順番、並びにフィーダ（３ａ、７ａ）の配置を決定し、クラスタ最適化を実施する（ステップＳ２１）。
【００２２】
クラスタ最適化終了後に、仮決定された各クラスタに対して次のように処理を実施する。ある一つのクラスタ内の全生産プログラムの生産時間及び生産予定基板枚数から、そのクラスタの基板総生産時間ＣｌｕｓｔｅｒＴｉｍｅＣｕｒを以下のように算出する（ステップＳ２２、Ｓ２３）。
【００２３】
【数１】
0004744321.tif 000002
ここで、Ｎ（２以上の整数）は当該一つのクラスタ内の生産プログラム数で、Ｔｉｍｅ（ｋ）は当該クラスタ内のｋ番目の生産プログラムで一枚の基板生産に要する時間、Ｎｕｍ（ｋ）は該ｋ番目の生産プログラムによって生産が予定されている基板枚数である。数１により、ｋを１からＮまで変化させて、Ｎ個の生産プログラムを実施したときの基板総生産時間を算出する。
【００２４】
次に、当該クラスタ内の最後の生産プログラムＮをそのクラスタから切り離した場合の基板総生産時間ＣｌｕｓｔｅｒＴｉｍｅＮｅｗを以下のように算出する（ステップＳ２４〜Ｓ２６）。
【００２５】
【数２】
0004744321.tif 000003
ただし、Ｔｉｍｅ'（Ｎ）は最後の生産プログラムＮ単独での基板生産時間、Ｎｕｍ（Ｎ）は生産プログラムＮによって生産が予定されている基板枚数、Ｃはその生産プログラムＮのためにフィーダ配置替えをするために要する段取り替え時間であり、予め定められた時間（図５のｔに相当）である。
【００２６】
上記ステップＳ２３とＳ２６で求めた２つの総生産時間を比較し、ＣｌｕｓｔｅｒＴｉｍｅＣｕｒ＞ＣｌｕｓｔｅｒＴｉｍｅＮｅｗの場合には（ステップＳ２７の肯定）、生産プログラムＮを新たなクラスタとして統合し、（Ｎ−１）個の生産プログラムからなるクラスタから分離する（ステップＳ２８）。仮のクラスタから切り離される生産プログラム数は一つとは限らず、総生産時間が従来の時間よりも改善する限り切り離しを試行するものとする（ステップＳ２４とＳ２９間のループ）。
【００２７】
クラスタから切り離された生産プログラム数をｍ（Ｎより小さく、１以上の整数）とした場合、新クラスタ総生産時間は以下のように一般化される。
【００２８】
【数３】
0004744321.tif 000004
クラスタから切り離した結果が、切り離し以前の総生産時間よりも悪化している場合には（ステップＳ２７の否定）、その時点で切り離し処理を中止し、改善が全く無ければ、それ以前のクラスタを採用し、改善が見られた場合にはその結果を採用し、後続のクラスタに対して同様の処理を続行する（ステップＳ２２とＳ３０間のループ）。
【００２９】
また、以上の実施例で、新たなクラスタとして統合されたｍ個の生産プログラムに対して同様なクラスタ分けを試みることができる。すなわち、ｍ個の生産プログラムのうち端にあるｎ（ｍより小さく、１以上の整数）個の生産プログラムを切り離して、該切り離したｎ個の生産プログラムに対してフィーダ配置替えを行い、切り離したｎ個の生産プログラムによる基板総生産時間と、ｍ個の生産プログラムからｎ個の生産プログラムを除いた生産プログラムによる基板総生産時間と、ｎ個の生産プログラムのフィーダ配置替えに要する時間との総和が、ｍ個の生産プログラムによる基板総生産時間より短いときは、ｎ個の生産プログラムをその新たなクラスタから切り離し、別の新たなクラスタとして統合するようにすることもできる。
【図面の簡単な説明】
【００３０】
【図１】部品実装機による部品を実装する構成を示した構成図である。
【図２】部品実装機の制御構成を詳細に示したブロック図である。
【図３】ホストコンピュータの制御構成を詳細に示したブロック図である。
【図４】クラスタ分けを行う流れを示したフローチャートである。
【図５】一つのクラスタを２つのクラスタに分ける過程を示した説明図である。
【図６】クラスタを複数のクラスタに分ける流れを示したフローチャートである。
【符号の説明】
【００３１】
２、５  基板
３、７  フィーダバンク
３ａ、７ａ  フィーダ
１０、２０  部品実装機
【図１】
0004744321.tif 000005
【図２】
0004744321.tif 000006
【図３】
0004744321.tif 000007
【図４】
0004744321.tif 000008
【図５】
0004744321.tif 000009
【図６】
0004744321.tif 000010