(57)【要約】【課題】  部品供給部における部品テープの位置によらず、最適な電子部品の実装順序を得ることができる部品実装順序最適化方法を提供する。【解決手段】  前記基板上のある実装点に部品を実装してから次の実装点に部品を実装するまでにかかる実装ロス時間を算出する実装ロス時間算出ステップ（Ｓ３６）と、前記基板上のある実装点に実装する部品を部品供給部から吸着してから次の実装点に実装する部品を前記部品供給部から吸着するまでにかかる供給部移動ロス時間を算出する供給部移動ロス時間算出ステップ（Ｓ３６）と、前記実装ロス時間と前記供給部移動ロス時間とに基づいて、部品の実装順序を最適化する実装順序最適化ステップ（Ｓ３６〜Ｓ４６）とを含む。【選択図】      図１１
2005136010.tif 000002
【特許請求の範囲】
【請求項１】
基板に部品を実装する部品実装機における部品の実装順序を最適化する部品実装順序最適化方法であって、
前記基板上のある実装点に部品を実装してから次の実装点に部品を実装するまでにかかる実装ロス時間を算出する実装ロス時間算出ステップと、
前記基板上のある実装点に実装する部品を部品供給部から吸着してから次の実装点に実装する部品を前記部品供給部から吸着するまでにかかる供給部移動ロス時間を算出する供給部移動ロス時間算出ステップと、
前記実装ロス時間と前記供給部移動ロス時間とに基づいて、部品の実装順序を最適化する実装順序最適化ステップとを含む
ことを特徴とする部品実装順序最適化方法。
【請求項２】
前記部品実装機は、円の中心を軸として回転する円周に沿って前記部品供給部から前記部品を吸着するとともに、前記基板上に前記部品を順次実装する複数の吸着ノズルを備え、
前記複数の吸着ノズルは、ある吸着ノズルが前記部品供給部から前記部品を吸着してから前記基板上に実装するまでの間に他の吸着ノズルによりｎ個（ｎは自然数）の部品実装が行なわれるように、配置されており、
前記供給部移動ロス時間算出ステップでは、前記実装ロス時間算出ステップで算出対象となっている実装点のｎ点後の実装点に実装する部品を前記部品吸着部から吸着してから次に実装可能な実装点に実装する部品を前記部品供給部から吸着するまでにかかるｎ順遅れの供給部移動ロス時間を算出し、
前記実装順序最適化ステップでは、前記実装ロス時間と前記ｎ順遅れの供給部移動ロス時間とに基づいて、部品の実装順序を最適化する
ことを特徴とする請求項１に記載の部品実装順序最適化方法。
【請求項３】
前記実装順序最適化ステップは、
前記実装ロス時間と、前記ｎ順遅れの供給部移動ロス時間とを比較する比較ステップと、
前記実装ロス時間の方が前記ｎ順遅れの供給部移動ロス時間よりも長くなるという条件を満たす前記実装可能な実装点が２つ以上ある場合には、当該条件を満たす前記実装可能な実装点のうち、前記ｎ点後の実装点に部品を実装してから次の実装点に部品を実装するまでにかかる実装ロス時間が最小となる実装点を、前記ｎ点後の実装点に部品を実装した後の実装点とする第１の実装点決定ステップと、
前記条件満たす前記実装可能な実装点が１つ以下の場合には、前記実装可能な実装点のうち、前記供給部移動ロス時間が最短となる実装点を、前記ｎ点後の実装点に部品を実装した後の実装点とする第２の実装点決定ステップとを含む
ことを特徴とする請求項２に記載の部品実装順序最適化方法。
【請求項４】
さらに、前記部品の実装順序における部品の実装時間を算出する第１の実装時間算出ステップと、
予め定められた順序に従い前記部品の実装順序を入れ替える入れ替えステップと、
入れ替えた後の前記部品の実装順序における部品の実装時間を算出する第２の実装時間算出ステップと、
入れ替えた後の前記実装時間が入れ替え前の実装時間よりも短くなっていれば、当該入れ替えを採用する採用ステップとを含む
ことを特徴とする請求項１〜３のいずれか１項に記載の部品実装順序最適化方法。
【請求項５】
前記入れ替えステップは、
前記採用ステップで、入れ替えが採用された前記部品の実装順序を基準とするステップと、
基準となる前記部品の実装順序について、すべての可能な実装順序の入れ替えを順次実行するステップと、
基準となる前記部品の実装順序について、すべての可能な実装順序の入れ替えを行なった結果、前記採用ステップで、いずれの入れ替えも採用されなかった場合には、実装順序の入れ替えを終了させるステップとを含む
ことを特徴とする請求項４に記載の部品実装順序最適化方法。
【請求項６】
さらに、予め取り得るすべての実装点の組み合わせについて、前記実装ロス時間を算出し、実装ロステーブルに記憶する実装ロステーブル記憶ステップを含み、
前記第１の実装時間算出ステップでは、前記実装ロステーブルに記憶された前記実装ロス時間を用いて、実装順序を入れ替える前の前記部品の実装時間を算出し、
前記第２の実装時間算出ステップでは、前記実装ロステーブルに記憶された前記実装ロス時間を用いて、実装順序を入れ替えた後の前記部品の実装時間を算出する
ことを特徴とする請求項４または５に記載の部品実装順序最適化方法。
【請求項７】
さらに、予め取り得るすべての実装点の組み合わせについて、前記供給部移動ロス時間を算出し、供給部移動ロステーブルに記憶する供給部移動ロステーブル記憶ステップを含み、
前記第１の実装時間算出ステップでは、前記供給部移動ロステーブルに記憶された前記供給部移動ロス時間を用いて、実装順序を入れ替える前の前記部品の実装時間を算出し、
前記第２の実装時間算出ステップでは、前記供給部移動ロステーブルに記憶された前記供給部移動ロス時間を用いて、実装順序を入れ替えた後の前記部品の実装時間を算出する
ことを特徴とする請求項４〜６のいずれか１項に記載の部品実装順序最適化方法。
【請求項８】
前記第１の実装時間算出ステップでは、前記入れ替えステップにより変化のあった部分についてのみの実装順序を入れ替える前の前記部品の実装時間を算出し、
前記第２の実装時間算出ステップでは、前記入れ替えステップにより変化のあった部分についてのみの実装順序を入れ替えた後の前記部品の実装時間を算出し、
前記採用ステップでは、前記入れ替えステップにより変化のあった部分についてのみの、実装順序を入れ替えた前後での前記部品の実装時間に基づいて、前記入れ替えを採用するか否かを決定する
ことを特徴とする請求項４〜７のいずれか１項に記載の部品実装順序最適化方法。
【請求項９】
請求項１〜８のいずれか１項に記載の部品実装順序最適化方法のステップをコンピュータに実行させる
ことを特徴とするプログラム。
【請求項１０】
請求項１〜８のいずれか１項に記載の部品実装順序最適化方法により最適化された部品実装順序に従い部品を基板上に実装する
ことを特徴とする部品実装機。
【請求項１１】
基板に部品を実装する部品実装機における部品の実装順序を最適化する部品実装順序最適化装置であって、
前記基板上のある実装点に部品を実装してから次の実装点に部品を実装するまでにかかる実装ロス時間を算出する実装ロス時間算出手段と、
前記基板上のある実装点に実装する部品を部品供給部から吸着してから次の実装点に実装する部品を前記部品供給部から吸着するまでにかかる供給部移動ロス時間を算出する供給部移動ロス時間算出手段と、
前記実装ロス時間と前記供給部移動ロス時間とに基づいて、部品の実装順序を最適化する実装順序最適化手段とを備える
ことを特徴とする部品実装順序最適化装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、プリント基板への部品の実装順序を最適化する方法に関し、特に、いわゆる高速ロータリー機を対象とした部品実装最適化方法に関する。
【背景技術】
【０００２】
部品実装機において、プリント基板上に電子部品を効率よく実装するためには、プリント基板上の電子部品の配置に基づいて、トータルとしての実装時間が短くなるように実装順序を予め定める必要がある。
図２６は、部品実装機における従来の電子部品の実装順序を決定する処理のフローチャートである。
【０００３】
まず、実装すべき電子部品を各タクトグループで並び替えを行なう（ステップ１）。タクトグループとは、電子部品を実装する際の、ヘッドのスピードが同じ電子部品のグループのことである。すなわち、タクトグループが同じ電子部品は、同じヘッドスピードでプリント基板上に実装することができる。
次に、タクトグループごとに、着目している実装点の次の実装点の選択の基準として、着目している実装点から最も距離の近い実装点を順次選択し、実装順序のパスを決定する（ステップ２）。
【０００４】
例えば、図２７（ａ）に示すように、実装点Ｎ２〜Ｎ５の中で実装点Ｎ１に最も近いのは実装点Ｎ２である。このため、実装点Ｎ１の次の実装点として実装点Ｎ２が選択される。同様にして、図２７（ｂ）に示すように、実装点Ｎ２の次の実装点として実装点Ｎ３が選択される。また、図２７（ｃ）に示すように、実装点Ｎ３の次の実装点として実装点Ｎ４が選択される。最終的に、図２７（ｄ）に示すように、実装点Ｎ１、Ｎ２、Ｎ３、Ｎ４およびＮ５の順に、電子部品の実装順序が決定される。
【０００５】
このように、電子部品の実装点間の距離に基づいて、電子部品の実装順序を決定する方法が、例えば、特許文献１および特許文献２に開示されている。特に、特許文献１に記載の方法では、部品テープが複数並んだパーツフィーダ配列を１ピッチ分移動させる間に、現在の実装点から次の実装点へ基板を移動させ、部品を実装することができるように電子部品の実装順序を求めている。また、特許文献２に記載の方法では、パーツフィーダ配列のうち、部品実装のための１サイクルタイムの間に移動可能な部品テープを１グループとするようなグルーピングを実装部品ごとに予め行ない、１サイクルタイムの間に、現在の実装点から次の実装点へ基板を移動させ、部品を実装することができるように電子部品の実装順序を求めている。
【特許文献１】特開平３−５３５９８号公報
【特許文献２】特開平５−２４３７９０号公報
【発明の開示】
【発明が解決しようとする課題】
【０００６】
上述のように従来の電子部品の実装順序の決定方法では、部品テープの移動が部品実装の１サイクルタイム内に終了することを前提としている。部品テープの移動ロスを０にすることは、例えば特許文献２のように部品テープを１サイクルタイム内に移動可能なグループにグルーピングし、そのグループ順に部品を実装する順序にすれば簡単な処理で実現できる。従って、この手法が従来から用いられてきた。しかし、あまり部品テープの移動ロスを抑えすぎると逆に実装点間で基板を移動させる際の基板の移動ロスが増大する。この移動ロスを短縮することが課題となってきている。
【０００７】
特に、昨今では、部品実装のサイクルタイムが高速化され、従来では１サイクルタイム内で可能であった基板の移動量でも移動ロスになってきている。また、供給する部品テープを隣のものに１ピッチ移動させるだけでも１サイクルタイム内に終了できなくなってきている。従って、従来のような、部品テープの移動ロスをなくした実装順ができないばかりでなく、そのために基板の移動ロスが更に増大するものとなってきている。
【０００８】
従って、どうしても移動ロスとなるのであれば、部品テープの移動ロスがある程度発生する部品テープの移動順を許容し、それにより基板の移動ロスの発生を抑えることができるという発想が必要になってきた。
また、いわゆる高速ロータリー機では、実装点への部品実装と、吸着ノズルへの部品吸着との間にｎ回の移動遅れが生じる。従来の方法では、ｎ順遅れの供給部移動ロス時間について考慮されていない。このため、実情とは合わない状況下を想定しての実装順序の最適化を行なっており、最適な部品の実装順序を得ることができるとは限らないという課題もある。
【０００９】
本発明は上述の課題を解決するためになされたもので、部品テープの移動ロスがある程度発生する部品テープの移動順を許容し、それにより基板の移動ロスの発生を抑えることができる部品実装順序最適化方法を提供することを目的とする。
また、吸着ノズルへの部品吸着との間にｎ回の移動遅れが生じる、いわゆる高速ロータリー機であっても、最適な電子部品の実装順序を得ることができる部品実装順序最適化方法を提供することも目的とする。
【課題を解決するための手段】
【００１０】
上記目的を達成するために、本発明の部品実装順序最適化方法は、基板に部品を実装する部品実装機における部品の実装順序を最適化する部品実装順序最適化方法であって、前記基板上のある実装点に部品を実装してから次の実装点に部品を実装するまでにかかる実装ロス時間を算出する実装ロス時間算出ステップと、前記基板上のある実装点に実装する部品を部品供給部から吸着してから次の実装点に実装する部品を前記部品供給部から吸着するまでにかかる供給部移動ロス時間を算出する供給部移動ロス時間算出ステップと、前記実装ロス時間と前記供給部移動ロス時間とに基づいて、部品の実装順序を最適化する実装順序最適化ステップとを含む。
【００１１】
従来の方法では考慮していなかった部品の吸着時間（部品テープの移動時間）による供給部移動ロス時間を考慮して、部品の実装順序を最適化している。このため、部品供給部における部品テープの位置により、電子部品の実装順序に時間がかかるということがなくなり、最適な電子部品の実装順序を得ることができる。
好ましくは、前記部品実装機は、円の中心を軸として回転する円周に沿って前記部品供給部から前記部品を吸着するとともに、前記基板上に前記部品を順次実装する複数の吸着ノズルを備え、前記複数の吸着ノズルは、ある吸着ノズルが前記部品供給部から前記部品を吸着してから前記基板上に実装するまでの間に他の吸着ノズルによりｎ個（ｎは自然数）の部品実装が行なわれるように、配置されており、前記供給部移動ロス時間算出ステップでは、前記実装ロス時間算出ステップで算出対象となっている実装点のｎ点後の実装点に実装する部品を前記部品吸着部から吸着してから次に実装可能な実装点に実装する部品を前記部品供給部から吸着するまでにかかるｎ順遅れの供給部移動ロス時間を算出し、前記実装順序最適化ステップでは、前記実装ロス時間と前記ｎ順遅れの供給部移動ロス時間とに基づいて、部品の実装順序を最適化する。
【００１２】
いわゆる高速ロータリー機では、実装点への部品実装と、吸着ノズルへの部品吸着との間にｎ回の移動遅れが生じる。このため、ｎ順遅れの供給部移動ロス時間について考慮することにより、高速ロータリー機において最適な部品の実装順序を得ることができる。
さらに好ましくは、上述の部品実装順序最適化方法は、さらに、前記部品の実装順序における部品の実装時間を算出する第１の実装時間算出ステップと、予め定められた順序に従い前記部品の実装順序を入れ替える入れ替えステップと、入れ替えた後の前記部品の実装順序における部品の実装時間を算出する第２の実装時間算出ステップと、入れ替えた後の前記実装時間が入れ替え前の実装時間よりも短くなっていれば、当該入れ替えを採用する採用ステップとを含む。
【００１３】
一旦決定した実装順序の入れ替えを行ない、部品の実装時間が短くなるようであればそれを採用するという処理を行なっている。このため、さらに高速に部品実装が可能な部品の実装順序を求めることができる。
さらに好ましくは、上述の部品実装順序最適化方法は、さらに、予め取り得るすべての実装点の組み合わせについて、前記実装ロス時間を算出し、実装ロステーブルに記憶する実装ロステーブル記憶ステップを含み、前記第１の実装時間算出ステップでは、前記実装ロステーブルに記憶された前記実装ロス時間を用いて、実装順序を入れ替える前の前記部品の実装時間を算出し、前記第２の実装時間算出ステップでは、前記実装ロステーブルに記憶された前記実装ロス時間を用いて、実装順序を入れ替えた後の前記部品の実装時間を算出する。また、上述の部品実装順序最適化方法は、さらに、予め取り得るすべての実装点の組み合わせについて、前記供給部移動ロス時間を算出し、供給部移動ロステーブルに記憶する供給部移動ロステーブル記憶ステップを含み、前記第１の実装時間算出ステップでは、前記供給部移動ロステーブルに記憶された前記供給部移動ロス時間を用いて、実装順序を入れ替える前の前記部品の実装時間を算出し、前記第２の実装時間算出ステップでは、前記供給部移動ロステーブルに記憶された前記供給部移動ロス時間を用いて、実装順序を入れ替えた後の前記部品の実装時間を算出するのが好ましい。
【００１４】
部品の実装順序を決定する際に使用する実装ロス時間および供給部移動ロス時間を予め計算し、テーブルとして記憶している。このため、部品の実装時間を計算する際に、このテーブルを参照すれば、何度も同じ実装ロス時間や供給部移動ロス時間を計算する必要がない。このため、高速に部品の実装順序を求めることができる。
さらに好ましくは、前記第１の実装時間算出ステップでは、前記入れ替えステップにより変化のあった部分についてのみの実装順序を入れ替える前の前記部品の実装時間を算出し、前記第２の実装時間算出ステップでは、前記入れ替えステップにより変化のあった部分についてのみの実装順序を入れ替えた後の前記部品の実装時間を算出し、前記採用ステップでは、前記入れ替えステップにより変化のあった部分についてのみの、実装順序を入れ替えた前後での前記部品の実装時間に基づいて、前記入れ替えを採用するか否かを決定する。
【００１５】
部品の実装順序を変更した際に、変化のあった部分についてのみの入れ替え前後の部品の実装時間に基づいて、入れ替えを採用するかを決定している。このため、すべての部品の実装順序を考慮して部品の実装時間を求める必要がなく、さらに高速に部品の実装順序を求めることができる。
なお、本発明は、このような部品実装順序最適化方法として実現することができるだけでなく、この方法の特徴的なステップを手段とする装置として実現したり、この方法の特徴的なステップをコンピュータに実行させるプログラムとして実現したりすることもできる。そして、そのようなプログラムは、ＣＤ−ＲＯＭ等の記録媒体やインターネット等の伝送媒体を介して流通させることができるのは言うまでもない。
【発明の効果】
【００１６】
本発明によると、部品供給部における部品テープの位置によらず、最適な電子部品の実装順序を得ることができる部品実装順序最適化方法を提供することができる。
また、最適な電子部品の実装順序を高速に計算することもできる。
以上のように、本発明によると、部品を高速に実装可能な部品の実装順序を高速に求めることができ、その実用的価値は極めて高い。
【発明を実施するための最良の形態】
【００１７】
本発明の実施の形態に係る部品実装システムについて、図面を参照しながら説明する。
（部品実装システム）
図１は、本実施の形態に係る部品実装システムの外観図である。
部品実装システム３０は、プリント基板に電子部品を実装する部品実装機１００と、生産の開始等にあたり、各種データベースに基づいて必要な電子部品の実装順序を最適化し、得られたＮＣ（Numeric Control）データを部品実装機１００にダウンロードして設定・制御する最適化装置３００とを備えている。
部品実装機１００は、電子部品を収容した部品テープが複数配置された部品供給部から電子部品を取り出し、取り出された電子部品を所定の位置まで移動し、基板の所定の位置に実装する。
【００１８】
（部品実装機）
図２は、部品実装機１００の部品実装部分の要部を示す図である。図２に示すように、部品実装機１００は、電子部品をプリント基板１に実装するための吸着ノズル２と、吸着ノズル２の下方に配置されてプリント基板１を電子部品の実装位置に移動させるテーブル３と、電子部品を供給する複数の部品テープ４と、これらの部品テープ４を着脱可能にセットする部品供給軸５と、電子部品を認識する部品認識部６と、プリント基板１を認識する基板認識部７とを備えている。複数の部品テープ４および部品供給軸５を合わせて部品供給部２０と呼ぶ。
【００１９】
電子部品は、吸着ノズル２によって各部品テープ４から取り出されて部品実装位置までの移送中に部品認識部６により認識され、この認識結果に基づいて電子部品の位置補正が行われて所定のプリント基板１に実装される。また、プリント基板１に対しても、必要に応じて、基板認識部７によって基板のマーク認識を行って位置補正し、この位置補正されたプリント基板１に対して電子部品が実装される。
【００２０】
図３は、部品実装機１００の部品実装部分の要部を模式的に表した図である。この部品実装機１００のロータリーヘッド部には、１６個の吸着ノズル２が設けられており、時計回りに回転しながら図中Ａ位置で部品を部品供給部２０の部品テープ４より吸着し、図中Ｂ位置でプリント基板１に実装するという動作を繰り返し行なう。すなわち、吸着ノズル２が部品を吸着してから実装するまでの間には、吸着ノズル２が８回移動を繰り返し、すでに８個の部品を実装している。このように、吸着ノズル２が部品を吸着してから実装するまでの間にｎ回の移動ロス（移動遅れ）を生じするロータリーヘッド部のことを「ｎ順遅れのロータリーヘッド部」と呼ぶこととする。図３は、８順遅れのロータリーヘッド部を示していることとなる。
【００２１】
図４に示すように、部品テープ４には、テープ本体８とカバーテープ９との間に多数の電子部品１０が等間隔に収納された状態でリール１１に巻回されて構成されている。そして、部品テープ４は、図５に示すように部品供給軸５にセットされる。電子部品１０としては、図６（ａ）〜（ｄ）に示すような各種チップ形電子部品４２３ａ〜４２３ｄがある。
【００２２】
（最適化装置）
図７は、図１に示された最適化装置３００のハードウェア構成を示すブロック図である。この最適化装置３００は、生産ラインを構成する部品実装機１００の仕様等に基づく各種制約の下で、対象となる基板の部品実装におけるタクトを最小化するように、部品実装用ＣＡＤ装置等から与えられた全ての部品を対象として、部品実装機１００で実装すべき部品及び部品実装機１００における部品の実装順序を決定し、最適なＮＣデータを生成するコンピュータ装置であり、演算制御部３０１、表示部３０２、入力部３０３、メモリ部３０４、最適化プログラム格納部３０５、通信Ｉ／Ｆ（インターフェース）部３０６及びデータベース部３０７等から構成される。
【００２３】
なお、「タクト」とは、対象の部品を実装するのに要する総時間である。
演算制御部３０１は、ＣＰＵや数値プロセッサ等であり、ユーザからの指示等に従って、最適化プログラム格納部３０５からメモリ部３０４に必要なプログラムをロードして実行し、その実行結果に従って、各構成要素３０２〜３０７を制御する。
表示部３０２はＣＲＴやＬＣＤ等であり、入力部３０３はキーボードやマウス等であり、これらは、演算制御部３０１による制御の下で、最適化装置３００と操作者とが対話する等のために用いられる。
【００２４】
通信Ｉ／Ｆ部３０６は、ＬＡＮアダプタ等であり、最適化装置３００と部品実装機１００との通信等に用いられる。
メモリ部３０４は、演算制御部３０１による作業領域を提供するＲＡＭ等である。最適化プログラム格納部３０５は、最適化装置３００の機能を実現する各種最適化プログラムを記憶しているハードディスク等である。
【００２５】
データベース部３０７は、この最適化装置３００による最適化処理に用いられる入力データ（実装点データ３０７ａおよび部品ライブラリ３０７ｂなど）や最適化によって生成された実装点データ等を記憶するハードディスク等である。
図８および図９は、それぞれ、実装点データ３０７ａおよび部品ライブラリ３０７ｂの例を示す。
【００２６】
実装点データ３０７ａは、実装の対象となる全ての部品の実装点を示す情報の集まりである。図８に示されるように、１つの実装点Ｎｉは、部品種ｃｉ、Ｘ座標ｘｉ、Ｙ座標ｙｉ、実装角度θｉ、制御データφｉからなる。ここで、「部品種」は、図９に示される部品ライブラリ３０７ｂにおける部品名に相当し、「Ｘ座標」及び「Ｙ座標」は、実装点の座標（基板上の特定位置を示す座標）であり、「実装角度θｉ」は、部品実装時のヘッドの回転角度であり、「制御データ」は、その部品の実装に関する制約情報（吸着ノズル２の最高移動速度等）である。なお、最終的に求めるべきＮＣデータとは、タクトが最小となるような実装点の並びである。なお、Ｘ軸方向はプリント基板１の進行方向であり、Ｙ軸方向はそれに直行する方向である。
【００２７】
部品ライブラリ３０７ｂは、部品実装機１００が扱うことができる全ての部品種それぞれについての固有の情報を集めたライブラリであり、図９に示されるように、部品種ごとの部品サイズ、その他の制約情報（部品認識部６による認識方式等）からなる。なお、本図には、参考として、各部品種の部品の外観も併せて示されている。
【００２８】
（最適化処理）
次に、最適化装置３００による部品実装機１００での部品実装順序の最適化処理について説明する。図１０は、部品実装順序の最適化処理のフローチャートである。
【００２９】
最適化装置３００は、部品実装時の時間的ロスと、部品実装と同時に行なわれる部品供給部２０からの部品吸着時の時間的ロスを考慮して、タクトが短くなるような部品の実装順序を算出する（Ｓ１２）。この処理については、後に詳述する。
その後、求められた部品実装順序を適宜変更することによりさらにタクトが短くなるように部品の実装順序を更新する（Ｓ１４）。この処理についても、後に詳述する。
【００３０】
（実装順序算出処理）
実装順序算出処理（図１０のＳ１２）について、詳細に説明する。図１１は、実装順序算出処理のフローチャートである。ここで、部品実装機１００のロータリーヘッド部は「ｎ順遅れのロータリーヘッド部」であるものとする。さらに、実装対象となっている部品の実装点の個数はＴ個あるものとする。実装順序に関する情報は、図１２に示されるような実装点配列Ｐ［ｉ］（ｉ＝１〜Ｔ）に格納されるものとし、配列の各要素には実装点の番号が格納される。また、部品実装は、Ｐ［１］からＰ［Ｔ］の順に行なわれるものとする。
【００３１】
図１３は、部品供給部２０と実装点との関係を示す図である。例えば、プリント基板１上にはＮ１からＮ１１までの１１個の実装点が用意されており、部品供給部２０には、実装点Ｎ１〜Ｎ１１に対応する部品がそれぞれ部品テープ４に納められている。以下の説明では、実装点Ｎｉに対応する部品を適宜、部品Ｎｉと呼ぶこととする。
ここで、実装ロスＪ＿Ｌｏｓｓ［ｉ］［ｊ］および供給部移動ロスＫ＿Ｌｏｓｓ［ｉ］［ｊ］を以下のように定義する。すなわち、実装ロスＪ＿Ｌｏｓｓ［ｉ］［ｊ］とは、プリント基板１の実装点Ｎｉに吸着ノズル２が部品を実装し終えた時点から次の吸着ノズル２が実装点Ｎｊに部品を実装し終える時点までの間の時間を表す。なお、実装ロスＪ＿Ｌｏｓｓ［ｉ］［ｊ］をＪ＿Ｌｏｓｓ（ｉ，ｊ）、Ｊ＿Ｌｏｓｓ［Ｎｉ］［Ｎｊ］、Ｊ＿Ｌｏｓｓ（Ｎｉ，Ｎｊ）のように記述する場合もある。また、供給部移動ロスＫ＿Ｌｏｓｓ［ｉ］［ｊ］とは、吸着ノズル２が部品Ｎｉを吸着してから、部品供給部を移動させ部品Ｎｊを吸着するまでにかかる時間を表す。なお、供給部移動ロスＫ＿Ｌｏｓｓ［ｉ］［ｊ］をＫ＿Ｌｏｓｓ（ｉ，ｊ）、Ｋ＿Ｌｏｓｓ［Ｎｉ］［Ｎｊ］、Ｋ＿Ｌｏｓｓ（Ｎｉ，Ｎｊ）のように記述する場合もある。
【００３２】
まず、実装点配列の１番目の要素Ｐ［１］に実装点Ｎ１を代入する（Ｓ２２）。すなわち、１番目の部品の実装点はＮ１であることを示している。次に、Ｐ［２］で示される実装点（以下、実装点Ｐ［２］のように呼ぶ）から実装点Ｐ［ｎ＋１］までを求める（Ｓ２４〜Ｓ２６）。すなわち、実装順序が決まっていない実装点のうち、実装点Ｐ［ｉ］と最も距離が近い実装点Ｎｋを選択し、Ｐ［ｉ＋１］に代入する（Ｓ２６）。この処理（Ｓ２６）を、ループカウンタｉを１からｎまで動かしながら実行する（Ｓ２４〜Ｓ２８）。ここまでの処理で、１番目の実装点Ｐ［１］から（ｎ＋１）番目の実装点Ｐ［ｎ＋１］までが求められる。
【００３３】
次に、（ｎ＋２）番目の実装点Ｐ［ｎ＋２］からＴ番目の実装点Ｐ［Ｔ］までを求める処理（Ｓ３０〜Ｓ４８）について説明する。まず、カウンタＣを０に設定する（Ｓ３２）。カウンタＣの意味については後述する。次に、実装順序が決まっていない実装点Ｎｊの各々について（Ｓ３４〜Ｓ４０）、実装ロスＪ＿Ｌｏｓｓ（Ｐ［ｉ］，Ｐ［ｉ＋１］）よりも供給部移動ロスＫ＿Ｌｏｓｓ（Ｐ［ｉ＋ｎ］，Ｎｊ）の方が小さいか否かを調べる（Ｓ３６）。なお、吸着ノズルで部品を吸着する順序を決めることにより、部品の実装順序が決まるため、実装点Ｐ［ｉ］が決定されている段階では、それよりもｎ順遅れている実装点Ｐ［ｉ＋ｎ］はすでに決定されていることになる。別の見方をすれば、次の実装点Ｎｊを決定する時点では、実装点Ｐ［ｉ］の次の実装点Ｐ［ｉ＋１］はすでに決定されていることになる。
【００３４】
供給部移動ロスＫ＿Ｌｏｓｓ（Ｐ［ｉ＋ｎ］，Ｎｊ）の方が小さければ（Ｓ３６でＹＥＳ）、カウンタＣの値を１つインクリメントする（Ｓ３８）。ここで、部品Ｐ［ｉ＋ｎ］は、実装点Ｐ［ｉ］に部品を実装する際に吸着ノズル２が吸着する部品を示している。従って、上述の大小比較処理（Ｓ３６）では、実装点Ｐ［ｉ］に部品を実装するのと同時に部品Ｐ［ｉ＋ｎ］が吸着されるが、次の、実装点Ｐ［ｉ＋１］に部品が実装されるまでにかかる時間と、次の部品Ｎｊを吸着するまでにかかる時間との大小関係を求めている。また、カウンタＣの値は、実装点Ｐ［ｉ］に部品実装してから実装点Ｐ［ｉ＋１］に部品実装するよりも速い時間で、吸着ノズル２が吸着することができる部品の個数を示している。
【００３５】
例えば、ｎ＝２とした場合に、図１４（ａ）に示すように、実装点Ｎ１、Ｎ２、Ｎ３の順に実装が行なわれることが決まっているものとする。その場合に、実装点Ｎ３の次の実装点の候補としては、実装点Ｎ４およびＮ５の２つがある。なお、以降の説明では、ｎ＝２とした場合の具体例を挙げながら説明を行なうものとする。また、図１４（ｂ）に示すように、実装点Ｎ１への部品実装と同時に、部品Ｎ３が吸着ノズル２により吸着される。従って、実装点Ｎ１に部品を実装してから実装点Ｎ２に部品を実装するまでにかかる時間（実装ロスＪ＿Ｌｏｓｓ［Ｎ１］［Ｎ２］）と部品Ｎ３を吸着してから部品Ｎ４を吸着するまでにかかる時間（供給部移動ロスＫ＿Ｌｏｓｓ［Ｎ３］［Ｎ４］）との比較が行なわれる。また、実装ロスＪ＿Ｌｏｓｓ［Ｎ１］［Ｎ２］と供給部移動ロスＫ＿Ｌｏｓｓ［Ｎ３］［Ｎ５］との比較の比較も行なわれる。
【００３６】
カウンタＣの値が２以上の場合には（Ｓ４２でＹＥＳ）、実装点Ｐ［ｉ］に部品実装してから次の実装点Ｐ［ｉ＋１］に部品実装するよりも短い時間で、部品供給部２０を移動させて吸着可能な部品（（ｉ＋ｎ＋１）番目に実装される部品）が２つ以上あることを示している。このため、Ｓ３６の判定条件を満たす部品Ｎｊの中から、実装ロスＪ＿Ｌｏｓｓ（Ｐ［ｉ＋ｎ］，Ｎｊ）が最小となる部品Ｎｊの番号（実装点Ｎｊの番号）をＰ［ｉ＋ｎ＋１］に代入する（Ｓ４４）。
【００３７】
カウンタＣの値が１以下の場合には（Ｓ４２でＮＯ）、実装点Ｐ［ｉ］に部品実装してから次の実装点Ｐ［ｉ＋１］に部品実装するよりも短い時間で、部品供給部２０を移動させて吸着可能な部品（（ｉ＋ｎ＋１）番目に実装される部品）が１つしかないか、または全くないかのいずれかを示している。このため、実装順序が決まっていないすべての実装点Ｎｊ（部品Ｎｊ）の中から、供給部移動ロスＫ＿Ｌｏｓｓ（Ｐ［ｉ＋ｎ］，Ｎｊ）が最小となる部品Ｎｊの番号（実装点Ｎｊの番号）をＰ［ｉ＋ｎ＋１］に代入する（Ｓ４６）。このようにすることにより、カウンタＣの値が１の場合には、実装点Ｐ［ｉ］に部品実装してから次の実装点Ｐ［ｉ＋１］に部品実装するまでの間に吸着可能な部品Ｎｊが選択されることとなる。
【００３８】
以上の処理をすべての実装点Ｎｊについて実装順序が決まるまで行ない、実装順序算出処理を終了する。
【００３９】
（実装順序更新処理）
次に、実装順序更新処理（図１０のＳ１４）について、詳細に説明する。上述した実装順序算出処理（図１０のＳ１２、図１１）により、実装点の実装順序が算出され、実装点配列Ｐ［ｉ］（ｉ＝１〜Ｔ）に格納されている。実装順序更新処理は、この実装点配列の要素を順次入れ替えていくことにより、最適な実装順序を求める処理である。
【００４０】
図１５は、実装順序更新処理のフローチャートである。
入れ替え対象となる２つの実装点を示すためのループカウンタをｉおよびｊとし、ループカウンタｉを１から（Ｔ−１）まで動かす間に（Ｓ５２）、ループカウンタｊを（ｉ＋１）からＴまで動かし（Ｓ５４）、以下の処理を行う。まず、実装点Ｐ［１］からＰ［Ｔ］までに部品を実装するのにかかるロス時間（タクト）を計算し、それをＢｅｆｏｒｅＬｏｓｓとする（Ｓ５６）。次に、実装点Ｐ［ｉ］とＰ［ｊ］との実装順序を入れ替える（Ｐ［ｉ］とＰ［ｊ］との要素を入れ替える）（Ｓ５８）。実装順序を入れ替えた後の実装点Ｐ［１］からＰ［Ｔ］までに部品を実装するのにかかるロス時間を計算し、それをＡｆｔｅｒＬｏｓｓとする（Ｓ６０）。ＢｅｆｏｒｅＬｏｓｓおよびＡｆｔｅｒＬｏｓｓの計算方法については具体例を挙げながら後に詳述する。
【００４１】
ＡｆｔｅｒＬｏｓｓとＢｅｆｏｒｅＬｏｓｓとを比較し（Ｓ６２）、ＡｆｔｅｒＬｏｓｓがＢｅｆｏｒｅＬｏｓｓ以上であれば（Ｓ６２でＹＥＳ）、実装順序を入れ替えてもロス時間が減らないことを示している。このため、実装点Ｐ［ｉ］とＰ［ｊ］との入れ替えを元に戻し（Ｓ６４）、他の実装点の組み合わせについて同様の処理（Ｓ５６〜Ｓ６４）を繰返す。
【００４２】
ＡｆｔｅｒＬｏｓｓがＢｅｆｏｒｅＬｏｓｓよりも小さければ（Ｓ６２でＮＯ）、実装点Ｐ［ｉ］とＰ［ｊ］とを入れ替えることによりロス時間が減ったことになる。このため、その実装点の入れ替えを採用し、新たな実装順序とした後、実装順序更新処理の最初から処理を繰返す。
このような処理を行なうことにより、すべての実装点Ｐ［ｉ］とＰ［ｊ］との組み合わせについて実装順序を入れ替えたとしてもロス時間が減らなくなった時点で実装順序更新処理は終了する。
【００４３】
（実装順序更新処理の具体例）
次に、具体例を挙げながら実装順序更新処理について説明する。
例えば、実装点配列Ｐの各要素には、図１６に示すように実装点の番号が記憶されているものとする。この実装点配列Ｐに従った実装点への実装順が図１７のように示されているものとする。また、ここでは図１８に示すように２順遅れのロータリーヘッド部を想定する。
このとき、実装点Ｐ［１］＝Ｎ１から実装点Ｐ［１１］＝Ｎ１１まで部品実装する際の実装ロスと供給部移動ロスとは図１９に示すようになる。これより、ＢｅｆｏｒｅＬｏｓｓを求めるためには（図１５のＳ５６）、図中矢印で示された実装ロスと供給部移動ロスの組（例えば、Ｊ＿Ｌｏｓｓ（Ｎ１，Ｎ２）とＫ＿Ｌｏｓｓ（Ｎ３，Ｎ４）との組）のうち大きい方の値の合計値に、それ以外の供給部移動ロス（Ｋ＿Ｌｏｓｓ（Ｎ１，Ｎ２）、Ｋ＿Ｌｏｓｓ（Ｎ２，Ｎ３））の値および実装ロス（Ｊ＿Ｌｏｓｓ（Ｎ９，Ｎ１０）、Ｊ＿Ｌｏｓｓ（Ｎ１０，Ｎ１１））の値を加えたものである。
【００４４】
ここで、図中矢印で示された実装ロスと供給部移動ロスとの組は、同時に実行される部品実装と部品吸着とのロスの組である。例えば、実装点Ｎ１への部品実装から実装点Ｎ２への部品実装までの期間と並行して、部品Ｎ３の吸着から部品Ｎ４の吸着までの動作が行なわれる。このため、Ｊ＿Ｌｏｓｓ（Ｎ１，Ｎ２）とＫ＿Ｌｏｓｓ（Ｎ３，Ｎ４）とが組とされる。そのうち大きい方の値がタクトに影響するため、ＢｅｆｏｒｅＬｏｓｓを求める際に利用される。
【００４５】
また、部品実装の動作開始時（部品Ｎ１およびＮ２を実装するまでの間）には部品実装は行なわれず、部品吸着のみが行なわれる。このため、その間の時間（Ｋ＿Ｌｏｓｓ（Ｎ１，Ｎ２）、Ｋ＿Ｌｏｓｓ（Ｎ２，Ｎ３））もＢｅｆｏｒｅＬｏｓｓを求める際に利用される。
さらに、部品実装の動作終了時（実装点Ｎ９から実装点Ｎ１１までに部品実装する間）には、部品吸着は行なわれず、部品実装のみが行なわれる。このため、その間の時間（Ｊ＿Ｌｏｓｓ（Ｎ９，Ｎ１０）、Ｊ＿Ｌｏｓｓ（Ｎ１０，Ｎ１１））もＢｅｆｏｒｅＬｏｓｓを求める際に利用される。
【００４６】
次に、実装順序の入れ替え処理（図１５のＳ５８）において、実装点Ｐ［４］＝Ｎ４とＰ［８］＝Ｎ８との入れ替えが行なわれ、Ｐ［４］＝Ｎ８、Ｐ［８］＝Ｎ４のようになったとする。図２０は、このときの実装順を示す図である。図２０に示されるように、実装点Ｎ３→Ｎ８→Ｎ５の順に部品が実装され、かつ実装点Ｎ７→Ｎ４→Ｎ９の順に部品が実装されるように実装順序の入れ替えが行なわれる。
【００４７】
このときに、実装点Ｐ［１］＝Ｎ１から実装点Ｐ［１１］＝Ｎ１１まで部品を実装する際の実装ロスと供給部移動ロスとは図２１に示すようになる。このうち、ハッチングを施した部分が実装順序の入れ替えに伴い、値が変わった部分である。したがって、ＡｆｔｅｒＬｏｓｓとＢｅｆｏｒｅＬｏｓｓとの比較処理（図１５のＳ６２）の際には、値が変わった実装ロスまたは供給部移動ロスとの組の部分についてのみ、実装順序の変更前と変更後とでロスの比較を行なえば、それはＡｆｔｅｒＬｏｓｓとＢｅｆｏｒｅＬｏｓｓとの比較結果に一致する。例えば、図１９および図２１の場合には、ハッチングが施された部分の実装ロスまたは供給部移動ロスと組になった部分（丸印で囲まれた部分）の実装ロスおよび供給部移動ロスのみがロスの比較の対象として使用され、それ以外の実装ロスおよび供給部移動ロスは使用されない。このようにすることにより、ＡｆｔｅｒＬｏｓｓとＢｅｆｏｒｅＬｏｓｓとの比較を短時間で行なうことができ、高速に実装順序の更新を行なうことができる。
【００４８】
なお、実装ロスおよび供給部移動ロスの値を予め計算して、メモリ部３０４等に格納しておくことにより、実装順序算出処理（図１０のＳ１２、図１５）および実装順序更新処理（図１０のＳ１４、図１５）をさらに高速に実行することができる。以下に、それらの計算処理について説明する。
【００４９】
（実装ロステーブル作成処理）
図２２は、実装ロスを予め計算してテーブルとして記憶させる処理のフローチャートである。
【００５０】
２つの実装点を示すためのループカウンタをｉおよびｊとし、ループカウンタｉを１から（Ｔ−１）まで動かす間に（Ｓ７２）、ループカウンタｊを（ｉ＋１）からＴまで動かし（Ｓ７４）、以下の処理を行なう。すなわち、プリント基板１の実装点Ｎｉに吸着ノズル２が部品を実装し終えた時点から次の吸着ノズル２が実装点Ｎｊに部品を実装し終える時点までの間の時間を計算し、Ｊ＿Ｌｏｓｓ（Ｎｉ，Ｎｊ）として記憶する（Ｓ７６）。以上の処理を行なうことにより、すべての組み合わせについての実装ロスを予め計算した実装ロステーブルを作成することができる。
【００５１】
例えば、図２３（ａ）に示すように１１個の実装点Ｎｉがある場合には、図２３（ｂ）に示すように５５（＝11Ｃ2）通りの実装ロスＪ＿Ｌｏｓｓからなる実装ロステーブル（Ｊ＿Ｌｏｓｓテーブル）が作成される。
【００５２】
（供給部移動ロステーブル作成処理）
図２４は、供給部移動ロスを予め計算してテーブルとして記憶させる処理のフローチャートである。
【００５３】
２つの実装点を示すためのループカウンタをｉおよびｊとし、ループカウンタｉを１から（Ｔ−１）まで動かす間に（Ｓ９２）、ループカウンタｊを（ｉ＋１）からＴまで動かし（Ｓ９４）、以下の処理を行なう。すなわち、吸着ノズル２が部品Ｎｉを吸着してから、部品供給部を移動させ部品Ｎｊを吸着するまでにかかる時間を計算し、Ｋ＿Ｌｏｓｓ（Ｎｉ，Ｎｊ）として記憶する（Ｓ９６）。以上の処理を行なうことにより、すべての組み合わせについての供給部移動ロスをあらかじめ計算した供給部移動ロスを作成することができる。
【００５４】
例えば、図２５（ａ）に示すように、１１個の実装点に対応する１１個の部品Ｎｉがある場合には、図２５（ｂ）に示すように５５（＝11Ｃ2）通りの供給部移動ロスＫ＿Ｌｏｓｓからなる供給部移動テーブル（Ｋ＿Ｌｏｓｓテーブル）が作成される。
以上説明したように本実施の形態によれば、部品の実装順序を決める際に、部品供給部における部品の吸着に必要な時間を考慮した上で実装順序を決定している。その際、部品実装にかかる時間と、当該部品実装と並行して行なわれる部品の吸着にかかる時間とを比較した上で実装順序が決定される。このため、実装点間の距離のみについて実装順序を決定する従来の方法に比べ、高速に部品実装が可能な部品の実装順序を求めることができる。
【００５５】
また、部品の実装順序を決定する際に使用する実装ロスＪ＿Ｌｏｓｓおよび供給部移動ロスＫ＿Ｌｏｓｓを予め計算し、テーブルとして記憶している。このため、タクトを計算する際に、このテーブルを参照すれば、何度も同じ実装ロスＪ＿Ｌｏｓｓや供給部移動ロスＫ＿Ｌｏｓｓを計算する必要がない。このため、高速に部品の実装順序を求めることができる。
【００５６】
さらに、一旦、部品の実装順序が決定された後に、部品の実装順序を仮に変更し、タクトが小さくなるようであればそれを採用するという処理を繰り返し行なっている。このため、さらに高速に部品実装が可能な部品の実装順序を求めることができる。
さらにまた、部品の実装順序を仮に変更した際には、タクトの変化に影響のある実装ロスＪ＿Ｌｏｓｓおよび供給部移動ロスＫ＿Ｌｏｓｓのみを用いて、タクトが小さくなるか否かの判定を行なっている。このため、さらに高速に部品の実装順序を求めることができる。
【産業上の利用可能性】
【００５７】
本発明は、基板に電子部品を実装する部品実装機の部品実装順序の最適化に利用可能であり、特に、高速ロータリー機の部品実装順序の最適化等に利用可能である。
【図面の簡単な説明】
【００５８】
【図１】本実施の形態に係る部品実装システムの外観図である。
【図２】部品実装機の部品実装部分の要部を示す図である。
【図３】部品実装機の部品実装部分の要部を模式的に表した図である。
【図４】部品テープの外観図である。
【図５】部品供給軸にセットされた状態の部品テープを表す図である。
【図６】電子部品の一例を示す外観図である。
【図７】最適化装置のハードウェア構成を示すブロック図である。
【図８】実装点データの一例を示す図である。
【図９】部品ライブラリの一例を示す図である。
【図１０】部品実装順序の最適化処理のフローチャートである。
【図１１】実装順序算出処理のフローチャートである。
【図１２】実装点配列の一例を示す図である。
【図１３】部品供給部と実装点との関係を示す図である。
【図１４】（ａ）は、すでに決定している実装点の実装順序の一例を示す図である。（ｂ）は、吸着可能な部品の一例を示す図である。
【図１５】実装順序更新処理のフローチャートである。
【図１６】実装点の番号が記憶された実装点配列Ｐの一例を示す図である。
【図１７】図１６に示した実装点配列Ｐに従った実装順を示す図である。
【図１８】２順遅れのロータリーヘッド部を説明するための図である。
【図１９】部品実装時の実装ロスと供給部移動ロスとの関係を示す図である。
【図２０】実装順序の入れ替えを行なった後の実装順を示す図である。
【図２１】実装順序の入れ替えを行なった後の部品実装時の実装ロスと供給部移動ロスとの関係を示す図である。
【図２２】実装ロステーブル作成処理のフローチャートである。
【図２３】実装ロステーブル作成処理を説明するための図である。
【図２４】供給部移動ロステーブル作成処理のフローチャートである。
【図２５】供給部移動ロステーブル作成処理を説明するための図である。
【図２６】従来の電子部品の実装順序を決定する処理のフローチャートである。
【図２７】従来の実装順序決定処理を説明するための図である。
【符号の説明】
【００５９】
１  プリント基板
２  吸着ノズル
３  テーブル
４  部品テープ
５  部品供給軸
６  部品認識部
７  基板認識部
８  テープ本体
９  カバーテープ
１０  電子部品
３０  部品実装システム
１１  リール
２０  部品供給部
１００  部品実装機
３００  最適化装置
３０１  演算制御部
３０２  表示部
３０３  入力部
３０４  メモリ部
３０５  最適化プログラム格納部
３０６  通信Ｉ／Ｆ部
３０７  データベース部
３０７ａ  実装点データ
３０７ｂ  部品ライブラリ
【図１】
2005136010.tif 000003
【図２】
2005136010.tif 000004
【図３】
2005136010.tif 000005
【図４】
2005136010.tif 000006
【図５】
2005136010.tif 000007
【図６】
2005136010.tif 000008
【図７】
2005136010.tif 000009
【図８】
2005136010.tif 000010
【図９】
2005136010.tif 000011
【図１０】
2005136010.tif 000012
【図１１】
2005136010.tif 000013
【図１２】
2005136010.tif 000014
【図１３】
2005136010.tif 000015
【図１４】
2005136010.tif 000016
【図１５】
2005136010.tif 000017
【図１６】
2005136010.tif 000018
【図１７】
2005136010.tif 000019
【図１８】
2005136010.tif 000020
【図１９】
2005136010.tif 000021
【図２０】
2005136010.tif 000022
【図２１】
2005136010.tif 000023
【図２２】
2005136010.tif 000024
【図２３】
2005136010.tif 000025
【図２４】
2005136010.tif 000026
【図２５】
2005136010.tif 000027
【図２６】
2005136010.tif 000028
【図２７】
2005136010.tif 000029