以下、本発明に係るデータ作成装置及びプログラムを具体化した一実施例に基づき図面を参照しつつ詳細に説明する。先ず、リード部品を基板に実装する部品実装機10の概略構成について図1乃至図6に基づいて説明する。
(A)部品実装機の概略構成
図1に、部品実装機10を示す。部品実装機10は、回路基材12に対する部品の実装作業を実行するための装置である。部品実装機10は、装置本体20、基材搬送保持装置22、部品装着装置24、マークカメラ26、パーツカメラ28、部品供給装置30、ばら部品供給装置32、制御装置(図6参照)36を備えている。なお、回路基材12として、回路基板、三次元構造の基材等が挙げられ、回路基板として、プリント配線板、プリント回路板等が挙げられる。
装置本体20は、フレーム部40と、そのフレーム部40に上架されたビーム部42とによって構成されている。基材搬送保持装置22は、フレーム部40の前後方向の中央に配設されており、搬送装置50とクランプ装置52とを有している。搬送装置50は、回路基材12を搬送する装置であり、クランプ装置52は、回路基材12を保持する装置である。これにより、基材搬送保持装置22は、回路基材12を搬送するとともに、所定の位置において、回路基材12を固定的に保持する。なお、以下の説明において、回路基材12の搬送方向をX方向と称し、その方向に直角な水平の方向をY方向と称し、鉛直方向をZ方向と称する。つまり、部品実装機10の幅方向は、X方向であり、前後方向は、Y方向である。
部品装着装置24は、ビーム部42に配設されており、2台の作業ヘッド56、58と作業ヘッド移動装置62とを有している。作業ヘッド移動装置62は、X方向移動装置63とY方向移動装置64とZ方向移動装置65とによって構成されている。X方向移動装置63及びY方向移動装置64は、それぞれ、電磁モータ(図6参照)66、68を有しており、各電磁モータ66、68の作動により、2台の作業ヘッド56、58が、一体的にフレーム部40上の任意の位置に移動する。
また、Z方向移動装置65は、電磁モータ(図6参照)70A、70Bを有しており、各電磁モータ70A、70Bの作動により、スライダ74、76が個別に上下方向に移動する。そして、そのスライダ74、76に作業ヘッド56、58が着脱可能に装着されている。これにより、作業ヘッド56、58は、Z方向移動装置65によって、個別に上下方向に移動する。
なお、各電磁モータ66、68、70、72は、エンコーダ(図示省略)を有しており、エンコーダによって各電磁モータ66、68、70、72の回転角が検出される。そして、各電磁モータ66、68、70、72の回転角が目標回転角となるように、各電磁モータ66、68、70、72の作動が制御されることで、作業ヘッド56、58が目標位置まで移動する。また、各電磁モータ66、68、70、72は、作動時に供給電力量を制限可能な構造とされており、供給電力量の制限によって、駆動力、つまり、駆動トルクを制限することが可能とされている。
また、各作業ヘッド56、58の下端面には、図2に示すように、部品保持具78が取り付けられている。部品保持具78は、リード部品のリード線を保持するものであり、図3乃至図5に示すように、本体部80と、3種類の各保持具81、82、83と、開閉装置86(図6参照)と、各プッシャ88A、88B、88Cとを含む。ちなみに、図3は、保持具81及びプッシャ88Aの斜視図であり、ラジアルリード部品(以下、「リード部品」という。)92を保持した状態と通常状態の斜視図である。図4は、保持具82及びプッシャ88Bの斜視図であり、リード部品92を保持した状態と通常状態の斜視図である。図5は、保持具83及びプッシャ88Cの斜視図であり、リード部品92を保持した状態と通常状態の斜視図である。
3種類の各保持具81、82、83と各プッシャ88A、88B、88Cは、それぞれ対をなして本体部80の下端面に、一体的に着脱可能、且つ、鉛直軸回りに回動可能に取り付けられている。また、3種類の各保持具81、82、83と各プッシャ88A、88B、88Cは、それぞれ対をなしてツールステーション(図6参照)85上に配置される。そして、3種類の各保持具81、82、83と各プッシャ88A、88B、88Cは、ツールステーション85上で自動交換が可能に構成されている。
また、各作業ヘッド56、58は、電磁モータ(図6参照)72A、72Bを有しており、各電磁モータ72A、72Bの作動により、各本体部80の下端面に回動可能に取り付けられた保持具81とプッシャ88A、又は、保持具82とプッシャ88B、又は、保持具83とプッシャ88Cが一体的に鉛直軸回りに回動する。尚、各電磁モータ72A、72Bは、エンコーダ(図示省略)を有しており、エンコーダによって各電磁モータ72A、72Bの回転角が検出される。
そして、各電磁モータ72A、72Bの回転角が目標回転角度となるように、各電磁モータ72A、72Bの作動が制御されることで、各本体部80の下端面に回動可能に取り付けられた保持具81とプッシャ88A、又は、保持具82とプッシャ88B、又は、保持具83とプッシャ88Cが、原点位置から目標回転角度まで鉛直軸回りに回動される。つまり、各保持具81、82、83に保持されたリード部品92のリードをY方向沿った状態又はX方向に沿った状態になるように鉛直軸回りに回動させることができる。
ここで、各保持具81、82、83の概略構成について図3乃至図5に基づいて説明する。先ず、図3に示すように、保持具81は、正面視逆ハの字状に配置された1対の平板状の爪部81Aによって構成されている。1対の平板状の爪部81Aは、本体部80によって正面視斜め上方向に揺動可能に保持されており、開閉装置86の作動により、各爪部81Aの下端縁部が互いに近接・離間する。各爪部81Aの下端縁部の内側には、保持対象のリード部品92の各リード94の線径に応じた大きさの凹部(図示省略)が形成されている。1対の爪部81Aは、図3の実線で示す状態(以下、「把持状態」と記載する場合がある。)と、図3の二点鎖線で示す状態(以下、「解除状態」と記載する場合がある。)との間で揺動する。
そして、1対の爪部81Aが把持状態に向かって斜め下方向に揺動することで、1対の爪部81Aの下端縁部が、リード部品92の1対のリード94の各々が、爪部81Aの凹部によって両側面から挟持される。これにより、リード部品92は、図3に示すように、1対のリード94の基端部、つまり、リード94の部品本体96に近い側の端部において、保持具81によって保持される。また、保持具81とプッシャ88Aが原点位置に位置している場合には、リード部品92の1対のリード94は、Y方向に沿った状態で把持される。従って、リード部品92の基準方向は、Y方向とされる。
また、プッシャ88Aは、本体部80により上下方向に移動可能に保持されており、エアシリンダ89の作動により、昇降する。なお、プッシャ88Aは、下降した際に、保持具81により保持されたリード部品92の部品本体96に接触し、リード部品92を下方に向かって押つける。なお、プッシャ88Aによってリード部品92が下方に向かって押し付けられる際に、保持具81の1対の爪部81Aは斜め上方向に揺動して、リード94の保持は解除される。つまり、保持具81が、把持状態から解除状態に向かって揺動される。従って、1対の爪部81Aと、1対の爪部81Aの揺動する方向に隣接する隣接部品との間に、所定距離(例えば、約5mmの距離である。)以上の隙間が無ければ、隣接部品に接触する可能性がある。
次に、図4に示すように、保持具82は、側面視L字状に形成された1対の爪部82Aと補助プレート82Bとによって構成されている。1対の爪部82Aは、本体部80によって正面視左右方向に揺動可能に保持されており、開閉装置86の作動により、1対の爪部82Aが揺動しながら、互いの先端部が接近・離間する。1対の爪部82Aの内側には、保持対象のリード部品92のリード94の線径の応じた大きさの凹部(図示省略)が形成されている。
また、補助プレート82Bは、1対の爪部82Aの間に位置しており、1対の爪部82Aと共に、1対の爪部82Aの接近・解除する方向に対して直交する方向に揺動する。つまり、1対の爪部82A及び補助プレート82Bは、図4の実線で示す状態(以下、「把持状態」と記載する場合がある。)と、図4の二点鎖線で示す状態(以下、「解除状態」と記載する場合がある)との間で揺動する。
そして、1対の爪部82A及び補助プレート82Bが把持状態に向かって揺動することで、補助プレート82Bが、リード部品92の1対のリード94の間に侵入し、1対の爪部82Aが補助プレート82Bに接近する。この際、リード部品92の1対のリード94の各々が、爪部82Aの凹部と補助プレート82Bとによって、両側面から挟持される。これにより、リード部品92は、図4に示すように、リード94の基端部、つまり、リード94の部品本体96に近い側の端部において、保持具82により保持される。また、保持具82とプッシャ88Bが原点位置に位置している場合には、リード部品92の1対のリード94は、X方向に沿った状態で把持される。従って、リード部品92の基準方向は、X方向とされる。
また、プッシャ88Bは、本体部80により上下方向に移動可能に保持されており、エアシリンダ89の作動により、昇降する。なお、プッシャ88Bは、下降した際に、保持具82により保持されたリード部品92の部品本体96に接触し、リード部品92を下方に向かって押つける。なお、プッシャ88Bによってリード部品92が下方に向かって押し付けられる際に、保持具82の1対の爪部82Aは離間する方向に揺動して、リード94の保持は解除される。つまり、保持具82が、把持状態から解除状態に向かって揺動される。従って、1対の爪部82A及び補助プレート82Bが解除状態に向かって揺動する方向に隣接する隣接部品との間に、所定距離(例えば、約10mmの距離である。)以上の隙間が無ければ、隣接部品に接触する可能性がある。
次に、図5に示すように、保持具83は、側面視L字状に形成された1対の爪部83Aによって構成されている。1対の爪部83Aは、本体部80によって正面視左右方向に揺動可能に保持されており、開閉装置86の作動により、1対の爪部83Aが揺動しながら、互いの先端部が接近・離間する。1対の爪部83Aの内側には、保持対象のリード部品92のリード94の線径の応じた大きさの凹部(図示省略)が形成されている。
また、1対の爪部83Aは、互いの先端部が接近・離間すると同時に、1対の爪部83Aの接近・解除する方向に対して直交する方向に揺動する。つまり、1対の爪部83Aは、図5の実線で示す状態(以下、「把持状態」と記載する場合がある。)と、図5の二点鎖線で示す状態(以下、「解除状態」と記載する場合がある)との間で揺動する。
そして、1対の爪部83Aが把持状態に向かって揺動することで、リード部品92の1対のリード94の各々が、爪部83Aの凹部によって両側面から挟持される。これにより、リード部品92は、図5に示すように、1対のリード94の基端部、つまり、リード94の部品本体96に近い側の端部において、保持具83によって保持される。また、保持具83とプッシャ88Cが原点位置に位置している場合には、リード部品92の1対のリード94は、Y方向に沿った状態で把持される。従って、リード部品92の基準方向は、Y方向とされる。
また、プッシャ88Cは、本体部80により上下方向に移動可能に保持されており、エアシリンダ89の作動により、昇降する。なお、プッシャ88Cは、下降した際に、保持具83により保持されたリード部品92の部品本体96に接触し、リード部品92を下方に向かって押つける。なお、プッシャ88Cによってリード部品92が下方に向かって押し付けられる際に、保持具83の1対の爪部83Aは離間する方向に揺動して、リード94の保持は解除される。つまり、保持具83が、把持状態から解除状態に向かって揺動される。従って、1対の爪部83Aが解除状態に向かって揺動する方向に隣接する隣接部品との間に、所定距離(例えば、約10mmの距離である。)以上の隙間が無ければ、隣接部品に接触する可能性がある。
また、マークカメラ26は、図2に示すように、下方を向いた状態でスライダ74に取り付けられており、作業ヘッド56とともに、X方向、Y方向およびZ方向に移動させられる。これにより、マークカメラ26は、フレーム部40上の任意の位置を撮像する。また、パーツカメラ28は、図1に示すように、フレーム部40上の基材搬送保持装置22と部品供給装置30との間に、上を向いた状態で配設されている。これにより、パーツカメラ28は、作業ヘッド56、58の部品保持具78に保持された部品を撮像する。
部品供給装置30は、フレーム部40の前後方向での一方側の端部に配設されている。部品供給装置30は、トレイ型部品供給装置97とフィーダ型部品供給装置(図6参照)98とを有している。トレイ型部品供給装置97は、トレイ上に載置された状態の部品を供給する装置である。フィーダ型部品供給装置98は、テープフィーダ、スティックフィーダ(図示省略)によって部品を供給する装置である。
ばら部品供給装置32は、フレーム部40の前後方向での他方側の端部に配設されている。ばら部品供給装置32は、ばらばらに散在された状態の複数の部品を整列させて、整列させた状態で部品を供給する装置である。つまり、任意の姿勢の複数の部品を、所定の姿勢に整列させて、所定の姿勢の部品を供給する装置である。
なお、部品供給装置30および、ばら部品供給装置32によって供給される部品として、電子回路部品、太陽電池の構成部品、パワーモジュールの構成部品等が挙げられる。また、電子回路部品には、リードを有するラジアルリード部品とアキシャルリード部品、リードを有さない部品等が有る。
制御装置36は、図6に示すように、コントローラ100、複数の駆動回路102、画像処理装置106、制御回路108を備えている。複数の駆動回路102は、上記搬送装置50、クランプ装置52、電磁モータ66、68、70A、70B、72A、72B、ツールステーション85、開閉装置86、エアシリンダ89、トレイ型部品供給装置97、フィーダ型部品供給装置98、ばら部品供給装置32に接続されている。コントローラ100は、CPU、ROM、RAM等を備え、コンピュータを主体とするものであり、複数の駆動回路102に接続されている。
これにより、基材搬送保持装置22、部品装着装置24等の作動が、コントローラ100によって制御される。また、コントローラ100は、画像処理装置106にも接続されている。画像処理装置106は、マークカメラ26およびパーツカメラ28によって得られた画像データを処理するものであり、コントローラ100は、画像データから各種情報を取得する。
更に、コントローラ100は、制御回路108を介して、表示装置110に接続されており、コントローラ100からの指令により、表示装置110に任意の画像が表示される。また、コントローラ100には、後述のデータ作成装置(図7参照)200が接続され、各保持具81、82、83を装着する装着順及びラジアルリード部品(以下、「リード部品」という。)の装着順を表す割り付けデータテーブル(図22参照)311等の各種データを送受信可能に構成されている。
(B)データ作成装置の概略構成
図7に、データ作成装置200を示す。データ作成装置200は、パーソナルコンピュータ等で実現され、CPU211、RAM212、ROM213、NVRAM(不揮発性RAM)214、ディスプレイ215、操作部216、通信部217、データ記録部220等を有する。CPU211はROM213に記憶されている各種のプログラムを実行することによって、接続されているディスプレイ215等を制御する。
RAM212はCPU211が各種の処理を実行するための主記憶装置として用いられる。ROM213には、後述の割り付けデータ作成処理(図8〜図10参照)のプログラム、制御プログラム、および各種のデータなどが記憶されている。NVRAM214には各種情報が記録されている。ディスプレイ215は、例えば液晶ディスプレイであり、CPU211の命令に従って、例えば、各種の設定画面、後述の割り付けデータ作成処理の開始ボタン(不図示)、部品実装機10の動作状態等を表示する。
操作部216は、不図示のキーボードおよびマウスを有し、オペレータの操作を受け付ける。通信部217は、ネットワークを介して、不図示のサーバーとデータの送受を行う。データ記録部220は、ハードディスク(図示せず)と、ハードディスクに記憶されたパーツデータベース(パーツDB)221、保持具データベース(保持具DB)222、及び、所定のプログラム等を読み出すとともにハードディスクに所定のデータを書き込むためのドライバ(図示せず)とを備えている。
データ作成装置200は、CADデータ241、BOMデータ242、及び、データ記録部220に格納されるパーツDB221が有するパーツデータ(図13、図17参照)、保持具DB222が有するツールデータ(図14参照)に基づき、NCデータであるジョブデータ230を作成する。作成されたジョブデータ230は、部品実装機10を制御する制御装置36へ提供される。ジョブデータ230は、実装位置データ231、パーツデータ232、搭載順干渉データ233、割り付けデータ235等を含む。
CADデータ241は、回路基材12におけるリード部品等の電子部品、例えばプリント配線などの配線、ホールなどの形状・位置などの情報を含む。データ作成装置200は、CADデータ241から回路基材12における実装ラジアルリード部品(以下、「実装リード部品」という。)等の位置データ等を抽出して、後述の実装リード部品の位置データテーブル301(図301参照)、先付け部品の位置データテーブル306(図15参照)を作成して、実装位置データ231として記憶する。
BOMデータ242は、回路基材12における実装リード部品等のそれぞれを表す「リファレンス」と「パーツナンバー」等が1組とされたテーブルである。「リファレンス」は、回路基材12における実装電子部品等のそれぞれに一意に付与される識別子であって、回路図にて電子部品の各々に一意に付与される名称である。「パーツナンバー」は、回路基材12に実装される電子部品を特定する識別子であり、例えば電子部品の製造元および品番などを含む情報である。
データ作成装置200は、BOMデータ242から回路基材12における実装リード部品等のそれぞれを表す「リファレンス」と「パーツナンバー」等を抽出して、後述の実装リード部品のBOMデータテーブル302(図12参照)、先付け部品のBOMデータテーブル307(図16参照)を作成して、パーツデータ232として記憶する。
パーツDB221は、後述の実装リード部品のパーツデータテーブル303(図13参照)、先付け部品のパーツデータテーブル308(図17参照)の作成に必要な各種情報から構成されており、例えば、「パーツナンバー」、「パーツサイズ」、「保持具」、「供給形態」等のデータから構成されている。「パーツサイズ」は、「パーツナンバー」で特定されるリード部品等の電子部品の外径、高さ、長さ、幅、リードピッチ等の形状を特定する寸法データからなる情報である。「保持具」は、「パーツナンバー」で特定されるリード部品等の電子部品を実装する際に最適な保持具と支障なく使用可能な保持具のそれぞれを特定する識別子からなる情報である。
「供給形態」は、「パーツナンバー」で特定されるリード部品等の電子部品を供給形態、つまり、トレイ、スティック、アキシャルテープ、ラジアルテープ等の供給状態からなる情報である。尚、パーツDB221のデータは、通信部217を介して外部のサーバー(不図示)からダウンロードして記憶してもよい。また、パーツDB221のデータは、オペレータが操作部216を操作して登録してもよい。
保持具DB222は、後述のツールデータテーブル305(図14参照)の作成に必要な各種情報から構成されており、例えば、「保持具の種類」、「可動方向と可動距離」、「挟持方向」、「対応リードピッチ」等のデータから構成されている。「保持具の種類」は、部品実装機10の部品保持具78に装着可能な保持具のそれぞれを特定する識別子からなる情報である。「可動方向と可動距離」は、「保持具の種類」で特定される保持具が把持状態から解除状態になる際に、保持具の動く方向と、保持具の動く距離とからなる情報である。
「挟持方向」は、保持具が原点位置に位置している場合に、リードがX方向に沿った状態で把持される状態を「横」とし、リードがY方向に沿った状態で把持される状態を「縦」とする把持方向からなる情報である。「対応リードピッチ」は、保持具が把持可能なリード部品のリードピッチからなる情報である。保持具DB222のデータは、通信部217を介して外部のサーバー(不図示)からダウンロードして記憶してもよい。また、保持具DB222のデータは、オペレータが操作部216を操作して登録してもよい。
(C)割り付けデータ作成処理
次に、上記のように構成されたデータ作成装置200のCPU211が実行する、各保持具81、82、83を装着する装着順及びリード部品の搭載順を表す割り付けデータテーブル(図22参照)311を自動で作成する割り付けデータ作成処理について図8乃至図22に基づいて説明する。尚、割り付けデータ作成処理を実行させたいオペレータは、データ作成装置200を操作し、予めデータ作成装置200にインストールされている、割り付けデータ作成処理を行うアプリケーションを起動する。そして、ディスプレイ215に表示された割り付けデータ作成処理の開始ボタン(不図示)をマウス等でクリックすることによって、当該割り付けデータ作成処理の実行が開始される。
図8に示すように、先ず、ステップ(以下、Sと略記する)11において、データ作成装置200のCPU211は、CADデータ241、BOMデータ242をインポートする。詳しくは、CPU211は、例えば通信部217を介して、受信したCADデータ241、BOMデータ242を、必要に応じて形式変換して、RAM212に記憶する。
そして、S12において、CPU211は、CADデータ241から回路基材12における実装リード部品(実装するラジアルリード部品)の位置データ等を抽出して、実装リード部品の位置データテーブル301を作成して、実装位置データ231として記憶する。また、CPU211は、BOMデータ242から回路基材12における実装リード部品の「リファレンス」と「パーツナンバー」等を抽出して、実装リード部品のBOMデータテーブル302を作成して、パーツデータ232として記憶する。
ここで、実装リード部品の位置データテーブル301について図11に基づいて説明する。図11に示すように、実装リード部品の位置データテーブル301は、「リファレンス」、「基準座標(X座標)」、「基準座標(Y座標)」、「配置方向」等が1組とされたテーブルである。「リファレンス」は、回路基材12に実装されるラジアルリード部品(以下、「リード部品」という。)に一意に付与される識別子であって、回路図にてリード部品のそれぞれに一意に付与される名称が引用される。「基準座標」とは、回路基材12の基準位置に対する、パーツDB221が有するパーツデータにおいて規定される電子部品の基準位置の相対座標である。
「配置方向」とは、回路基材12の基準方向に対する、電子部品の配置方向であり、パーツDB221が有するパーツデータにおいて規定される電子部品の基準方向に基づく方向である。ここでは、回路基材12の基準方向は、矩形である回路基材12の長辺方向がX方向、短辺方向がY方向とされ、リード部品の基準方向は、リードが並ぶ方向がX方向、X方向と直交する方向がY方向とされているものとする。この場合、リード部品のX方向が、基板のX方向と揃えられて、配置される場合は「横」、リード部品のY方向が、基板のX方向と揃えられて、配置される場合は「縦」とされる。
例えば、「リファレンス」がC1、つまり、回路図上の名称C1のリード部品(ラジアルリード部品)は、回路基材12の基準位置に対して、座標(X11、Y11)の相対座標位置に、「横」方向、つまり、リードがX方向に沿った状態で配置される。尚、回路基材12は、回路基材12の長辺方向が、部品実装機10のX方向に沿って配置され、回路基材12の短辺方向が部品実装機10のY方向に沿って配置されるように搬送固定される。
次に、実装リード部品のBOMデータテーブル302について図12に基づいて説明する。図12に示すように、実装リード部品のBOMデータテーブル302は、「リファレンス」、「パーツナンバー」等が1組とされたテーブルである。例えば、「リファレンス」、つまり、リード部品(ラジアルリード部品)の回路図上の名称C1〜C6の「パーツナンバー」、つまり、品番等は、全て「AA1」であり、同じリード部品(ラジアルリード部品)である。
図8に示すように、S13において、CPU211は、実装リード部品のBOMデータテーブル302から「パーツナンバー」の種類を抽出する。そして、CPU211は、この抽出した「パーツナンバー」の各種類をパーツDB221の「パーツナンバー」とし、各「パーツナンバー」に対応する「パーツサイズ」と「保持具」の情報をパーツDB221から読み出す。そして、CPU211は、実装リード部品のBOMデータテーブル302から抽出した「パーツナンバー」の種類と、パーツDB221から読み出した「パーツサイズ」と「保持具」の情報から、実装リード部品のパーツデータテーブル303を作成して、パーツデータ232として記憶する。
ここで、実装リード部品のパーツデータテーブル303について図13に基づいて説明する。図13に示すように、実装リード部品のパーツデータテーブル303は、「ラジアルリード部品」の「パーツナンバー」、「パーツサイズ」と、「保持具」の識別子「LC−A」、「LC−B」、「LC−C」等が1組とされたテーブルである。尚、識別子「LC−A」は、保持具81に付与された識別子である。識別子「LC−B」は、保持具82に付与された識別子である。識別子「LC−C」は、保持具83に付与された識別子である。
具体的には、例えば、CPU211は、「ラジアルリード部品」の「パーツナンバー」に、実装リード部品のBOMデータテーブル302の「パーツナンバー」から抽出された各リファレンスC1〜C6に対応する「AA1」、各リファレンスD1〜D4に対応する「BB1」、リファレンスE1に対応する「CC1」を順次記憶する。
続いて、例えば、CPU211は、パーツナンバー「AA1」をパーツDB221の「パーツナンバー」として、このパーツナンバー「AA1」に対応する「パーツサイズ」として「外径:φ10mm、高さ:12.5mm、リードピッチ:5mm」の円筒状の電子部品の寸法データからなる情報をパーツDB221から読み出す。そして、CPU211は、「外径:φ10mm、高さ:12.5mm、リードピッチ:5mm」の情報を「ラジアルリード部品」のパーツナンバー「AA1」に対応する「パーツサイズ」に記憶する。同様にして、CPU211は、「ラジアルリード部品」の各パーツナンバー「BB1」、「CC1」に対応する電子部品の形状を特定する情報をパーツDB221から読み出し、「パーツサイズ」を記憶する。
また、例えば、CPU211は、パーツナンバー「AA1」をパーツDB221の「パーツナンバー」として、このパーツナンバー「AA1」に対応する「保持具」の情報、つまり、パーツナンバー「AA1」で特定される円筒状の電子部品を実装する際に最適な保持具と支障なく使用可能な保持具のそれぞれを特定する識別子からなる情報を読み出す。そして、CPU211は、「保持具」の識別子「LC−A」、「LC−B」、「LC−C」のそれぞれについて、パーツDB221から読み出した保持具の識別子に含まれているか否かを判定する。
そして、CPU211は、「保持具」の識別子「LC−A」、「LC−B」、「LC−C」のそれぞれについて、パーツDB221から読み出した保持具の識別子に含まれていると判定した場合には、実装する際に使用可能である旨を表す「○」印を付して記憶する。一方、CPU211は、「保持具」の識別子「LC−A」、「LC−B」、「LC−C」のそれぞれについて、パーツDB221から読み出した保持具の識別子に含まれていないと判定した場合には、実装する際に使用できない旨を表す「×」印を付して記憶する。
同様にして、CPU211は、「ラジアルリード部品」の各パーツナンバー「BB1」、「CC1」に対応する保持具の識別子をパーツDB221から読み出し、「保持具」の識別子「LC−A」、「LC−B」、「LC−C」のそれぞれについて、含まれているか否かを判定し、判定結果を「○」印、又は、「×」印を付して記憶する。
また、図8に示すように、S13において、CPU211は、作成した実装リード部品のパーツデータテーブル303から「保持具」の識別子「LC−A」、「LC−B」、「LC−C」等のうち、実装する際に使用可能である旨を表す「○」印が付された「保持具」の識別子を抽出する。そして、CPU211は、この抽出した各識別子を保持具DB222の「保持具の種類」とし、各「保持具の種類」に対応する「可動方向と可動距離」、「挟持方向」、「対応リードピッチ」等の情報を保持具DB222から読み出す。
そして、CPU211は、実装リード部品のパーツデータテーブル303から抽出した「保持具」の識別子と、保持具DB222から読み出した「可動方向と可動距離」、「挟持方向」、「対応リードピッチ」等の情報から、ツールデータテーブル305を作成して、パーツデータ232として記憶する。
ここで、ツールデータテーブル305について図14に基づいて説明する。図14に示すように、ツールデータテーブル305は、「保持具」、「可動方向と可動距離」、「挟持方向」、「対応リードピッチ」等が1組とされたテーブルである。例えば、「保持具」には、実装リード部品のパーツデータテーブル303の「保持具」の各識別子「LC−A」、「LC−B」、「LC−C」等のうち、実装する際に使用可能である旨を表す「○」印が付された各識別子「LC−A」、「LC−B」、「LC−C」が記憶されている。
また、例えば、「保持具」の識別子「LC−A」に対応する「可動方向と可動距離」には、「左右5mm」が記憶され、識別子「LC−A」が付与された保持具81の一対の爪部81Aは、把持状態から解除状態になる際に、それぞれ左右方向へ約5mm動く旨が記憶されている。また、例えば、「保持具」の識別子「LC−A」に対応する「挟持方向」には、「縦」方向が記憶され、識別子「LC−A」が付与された保持具81が原点位置に位置している場合に、リードがY方向に沿った状態で把持される旨が記憶されている。また、例えば、「保持具」の識別子「LC−A」に対応する「対応リードピッチ」には、「5mm〜12mm」が記憶され、識別子「LC−A」が付与された保持具81が把持可能なリード部品のリードピッチが記憶されている。
続いて、S14において、CPU211は、CADデータ241から回路基材12に実装するラジアルリード部品を装着する前に、既に装着されている電子部品(以下、「先付け部品」という。)の位置データ等を抽出して、先付け部品の位置データテーブル306(図15参照)を作成して、実装位置データ231として記憶する。また、CPU211は、BOMデータ242から回路基材12における先付け部品の「リファレンス」と「パーツナンバー」等を抽出して、先付け部品のBOMデータテーブル307(図16参照)を作成して、パーツデータ232として記憶する。
尚、図15に示すように、先付け部品の位置データテーブル306の構成は、上記実装リード部品の位置データテーブル301の構成と同じ構成である。また、図16に示すように、先付け部品のBOMデータテーブル307の構成は、上記実装リード部品のBOMデータテーブル302の構成と同じ構成である。
また、S14において、CPU211は、先付け部品のBOMデータテーブル307から「パーツナンバー」の種類を抽出する。そして、CPU211は、この抽出した「パーツナンバー」の各種類をパーツDB221の「パーツナンバー」とし、各「パーツナンバー」に対応する「パーツサイズ」の情報をパーツDB221から読み出す。そして、CPU211は、先付け部品のBOMデータテーブル307から抽出した「パーツナンバー」の種類と、パーツDB221から読み出した「パーツサイズ」の情報から、先付け部品のパーツデータテーブル308(図17参照)を作成して、パーツデータ232として記憶する。
ここで、先付け部品のパーツデータテーブル308について図17に基づいて説明する。図17に示すように、先付け部品のパーツデータテーブル308は、「先付け部品」の「パーツナンバー」、「パーツサイズ」等が1組とされたテーブルである。具体的には、例えば、CPU211は、「先付け部品」の「パーツナンバー」に、先付け部品のBOMデータテーブル307の「パーツナンバー」から抽出された各リファレンスH1、H2に対応する「AB1」、各リファレンスJ1〜J4に対応する「AC1」を順次記憶する。
続いて、例えば、CPU211は、パーツナンバー「AB1」をパーツDB221の「パーツナンバー」として、このパーツナンバー「AB1」に対応する「パーツサイズ」として「長さ:10mm、幅:7mm、高さ:4mm」の略直方体状の電子部品の寸法データからなる情報をパーツDB221から読み出す。そして、CPU211は、「長さ:10mm、幅:7mm、高さ:4mm」の情報を「先付け部品」のパーツナンバー「AB1」に対応する「パーツサイズ」に記憶する。同様にして、CPU211は、「先付け部品」のパーツナンバー「AC1」に対応する電子部品の形状を特定する情報をパーツDB221から読み出し、「パーツサイズ」を記憶する。
続いて、図8に示すように、S15において、CPU211は、先ず、パーツデータ232から実装リード部品のBOMデータテーブル302と実装リード部品のパーツデータテーブル303を読み出す。そして、CPU211は、実装リード部品のパーツデータテーブル303の各「パーツナンバー」の「パーツサイズ」のデータから、実装リード部品のBOMデータテーブル302の「リファレンス」と「パーツナンバー」のデータを、「パーツサイズ」が小さくて背の低い順にソートして、再度パーツデータ232に記憶する。例えば、図13に示すように、「パーツサイズ」は、「パーツナンバー」の「AA1」、「BB1」、「CC1」の順に大きくて背が高くなるため、この順に「リファレンス」と「パーツナンバー」をソートする。
そして、CPU211は、実装位置データ231から実装リード部品の位置データテーブル301を読み出し、「基準座標(X座標)」、「基準座標(Y座標)」、「配置方向」とから、図18に示すように、各リファレンスC1〜C6、D1〜D4、E1の実装基板401上における配置状態を特定してRAM212に記憶する。
その後、CPU211は、各リファレンスC1〜C6、D1〜D4、E1の実装基板401上における配置状態から、実装リード部品のBOMデータテーブル302の「リファレンス」と「パーツナンバー」のデータを、「パーツサイズ」が小さくて背の低い順、且つ、実装基板401の外周縁の近くから連続的に配置される順に再度、ソートして、リード部品(ラジアルリード部品)の実装基板401への搭載順序とする。
例えば、「パーツナンバー」が「AA1」である各リファレンスC1〜C6は、この順で搭載順「1」〜「6」と決定される。そして、「パーツナンバー」が「BB1」である各リファレンスD1〜D4は、この順で搭載順「7」〜「10」と決定される。そして、「パーツナンバー」が「CC1」であるリファレンスE1は、搭載順「11」と決定される。そして、CPU211は、このソートされた「リファレンス」と「パーツナンバー」のデータを、後述の搭載順干渉データテーブル309(図21参照)の「搭載順」に対応させて格納し、搭載順干渉データ233に記憶する。
ここで、搭載順干渉データテーブル309について図21に基づいて説明する。図21に示すように、搭載順干渉データテーブル309は、「搭載順」、「リファレンス」、「パーツナンバー」と、「保持具」の識別子「LC−A」、「LC−B」、「LC−C」等が1組とされたテーブルである。「搭載順」には、実装リード部品の実装基板401上への搭載順が記憶される。「リファレンス」と「パーツナンバー」には、上記の通り、搭載順にソートされた実装リード部品の「リファレンス」と「パーツナンバー」とが記憶される。また、「保持具」には、部品保持具78に装着可能な実装リード部品を把持する各保持具81〜83の識別子が格納される。
また、CPU211は、「保持具」の識別子「LC−A」、「LC−B」、「LC−C」のそれぞれについて、後述のS16〜S21の処理を実行して、リード部品(ラジアルリード部品)の搭載順に、保持具が既に実装された電子部品と干渉する可能性の有・無が記憶される。具体的には、CPU211は、保持具が既に実装された電子部品と干渉する可能性がある場合には、実装する際に干渉する可能性がある旨を表す「×」印を付して記憶する。一方、CPU211は、保持具が既に実装された電子部品と干渉しない場合には、実装する際に干渉しない旨を表す「○」印を付して記憶する。
続いて、図8に示すように、CPU211は、S16の処理に移行する。ここで、S16〜S21の処理は、処理対象となる上記搭載順干渉データテーブル309の「保持具」の識別子「LC−A」、「LC−B」、「LC−C」の順に、各識別子に対応する各保持具81〜83毎に実行される。また、S18〜S21の処理は、上記搭載順干渉データテーブル309の「搭載順」に対応する「リファレンス」毎に実行される。その後、CPU211は、S22の処理に移行する。
S16において、CPU211は、処理対象となる「保持具」の識別子を、図14に示すツールデータテーブル305の「保持具」とし、この「保持具」に対応する「可動方向と可動距離」のデータを読み出し、保持具の有する1対の爪部の可動範囲としてRAM212に記憶する。そして、S17において、CPU211は、処理対象となる「保持具」の識別子を、図14に示すツールデータテーブル305の「保持具」とし、この「保持具」に対応する「対応リードピッチ」のデータを読み出し、保持具の把持可能なリードピッチとしてRAM212に記憶する。
続いて、図9に示すように、S18において、CPU211は、処理対象となる「リファレンス」に対応する「パーツナンバー」を図13に示す実装リード部品のパーツデータテーブル303の「パーツナンバー」とし、この「パーツナンバー」に対応する当該保持具の識別子に対して、実装する際に使用可能である旨を表す「○」印が記憶されているか否か、つまり、当該保持具で把持可能か否かを判定する。そして、この「パーツナンバー」に対応する当該保持具の識別子に対して、実装する際に使用できない旨を表す「×」印が記憶されている場合には(S18:NO)、CPU211は、S19の処理に移行する。
S19において、CPU211は、上記当該保持具で把持できない旨、つまり、当該保持具の使用に制限が有る旨を表す「×」印を、搭載順干渉データテーブル309の処理対象の「保持具」の識別子の欄のうち、当該「搭載順」の欄内に記憶する。その後、CPU211は、S18の処理に戻り、処理対象となる次の「搭載順」の「リファレンス」に変更した後、S18以降の処理を再度実行する。
例えば、処理対象の「保持具」の識別子が「LC−B」、つまり、保持具82の場合において、処理対象の「リファレンス」に対応する「パーツナンバー」が、搭載順干渉データテーブル309の「搭載順」が「11」番目の「CC1」のときには、CPU211は、図13に示す実装リード部品のパーツデータテーブル303より、実装する際に使用できない旨を表す「×」印を読み出す(S18:NO)。そして、S19において、CPU211は、当該保持具82で把持できない旨、つまり、当該保持具82の使用に制限が有る旨を表す「×」印を、搭載順干渉データテーブル309の「保持具」の識別子が「LC−B」の搭載順が「1」〜「11」の欄のうち、「11」番目の欄内に記憶する(図21参照)。
一方、前記S18において、図13に示す実装リード部品のパーツデータテーブル303の「パーツナンバー」に対応する当該保持具の識別子に対して、実装する際に使用可能である旨を表す「○」印が記憶されている場合には(S18:YES)、CPU211は、S20の処理に移行する。
尚、前記S18において、CPU211は、処理対象となる「リファレンス」に対応する「パーツナンバー」を図13に示す実装リード部品のパーツデータテーブル303の「パーツナンバー」とし、この「パーツナンバー」に対応する「パーツサイズ」の「リードピッチ」のデータを読み出し、上記S17でRAM212に記憶した保持具の把持可能なリードピッチの範囲内にあるか否かを判定するようにしてもよい。そして、「リードピッチ」のデータが、保持具の把持可能なリードピッチの範囲内にないと判定した場合には(S18:NO)、S19の処理に移行するようにしてもよい。一方、「リードピッチ」のデータが、保持具の把持可能なリードピッチの範囲内にあると判定した場合には(S18:YES)、S20の処理に移行するようにしてもよい。
S20において、CPU211は、実装位置データ231から先付け部品の位置データテーブル306を読み出し、「基準座標(X座標)」、「基準座標(Y座標)」、「配置方向」とから、図18に示すように、各リファレンスH1、H2、J1〜J4の実装基板401上における配置状態を特定してRAM212に記憶する。そして、CPU211は、上記S15でRAM212に記憶した各リファレンスC1〜C6、D1〜D4、E1の実装基板401上における配置状態と、各リファレンスH1、H2、J1〜J4の実装基板401上における配置状態とから、処理対象となる「リファレンス」の周囲に先に搭載される電子部品の配置状態を特定する。
例えば、図18に示すように、処理対象となる「リファレンス」が「C1」の場合には、CPU211は、リファレンスC1のY方向側(図18中、下側方向)に先付け部品のリファレンスH1が先に搭載されている旨を特定する。また、処理対象となる「リファレンス」が「C2」の場合には、CPU211は、リファレンスC2のY方向側(図18中、下側方向)に実装リード部品のリファレンスC1が先に搭載さている旨を特定する。
そして、CPU211は、前記S16でRAM212に記憶した処理対象となる「保持具」の有する1対の爪部の可動範囲をRAM212から読み出す。続いて、CPU211は、処理対象となる「リファレンス」を実装基板401上に搭載するため、保持具の有する1対の爪部が把持状態から解除状態になる際に、当該「リファレンス」の周囲に先に搭載された電子部品が一対の爪部の可動範囲内にあるか否かを判定する。つまり、CPU211は、処理対象となる「リファレンス」を把持した保持具の1対の爪部が、把持状態から解除状態になる際に、一対の爪部が先に搭載された電子部品と干渉するか否かを判定する。
そして、処理対象となる「リファレンス」を把持した保持具の1対の爪部が、把持状態から解除状態になる際に、一対の爪部が先に搭載された電子部品と干渉すると判定した場合には(S20:YES)、CPU211は、S19の処理に移行する。S19において、CPU211は、当該保持具の一対の爪部が先に搭載された電子部品と干渉する旨、つまり、当該保持具の使用に制限が有る旨を表す「×」印を、搭載順干渉データテーブル309の処理対象の「保持具」の識別子の欄のうち、当該「搭載順」の欄内に記憶する。その後、CPU211は、S18の処理に戻り、処理対象となる次の「搭載順」の「リファレンス」に変更した後、S18以降の処理を再度実行する。
例えば、図18に示すように、リファレンスH1の先付け部品と、搭載順干渉データテーブル309の搭載順が「1」番目のリファレンスC1の実装リード部品とは、Y方向(図18中、上下方向)において近接している。そのため、処理対象の「保持具」の識別子が「LC−A」、つまり、保持具81の場合において、CPU211は、処理対象の「リファレンス」の「C1」を把持した1対の爪部81Aが、把持状態から解除状態になる際に、左右斜め上方向に揺動するため、一対の爪部81Aが先に搭載された先付け部品のリファレンスH1と干渉すると判定する(S20:YES)。
そして、図21に示すように、CPU211は、一対の爪部81Aが把持状態から解除状態になる際に、一対の爪部81Aが先に搭載された先付け部品のリファレンスH1と干渉する旨、つまり、当該保持具81の使用に制限が有る旨を表す「×」印を、搭載順干渉データテーブル309の「保持具」の識別子が「LC−A」の搭載順が「1」番目の欄内に記憶する(S19)。
一方、前記S20において、処理対象となる「リファレンス」を把持した保持具の1対の爪部が、把持状態から解除状態になる際に、一対の爪部が先に搭載された電子部品と干渉しないと判定した場合には(S20:NO)、CPU211は、S21の処理に移行する。S21において、CPU211は、当該保持具の一対の爪部が先に搭載された電子部品と干渉しない旨、つまり、当該保持具の使用に制限が無い旨を表す「○」印を、搭載順干渉データテーブル309の処理対象の「保持具」の識別子の欄のうち、当該「搭載順」の欄内に記憶する。
例えば、図19に示すように、処理対象の「保持具」の識別子が「LC−B」、つまり、保持具82の場合において、CPU211は、搭載順干渉データテーブル309の「搭載順」が「1」〜「3」番目の各リファレンスC1〜C3は、リードをX方向(図19中、左右方向)に沿うように把持することによって、一対の爪部82A及び補助プレート82Bが把持状態から解除状態になる際に、後方に揺動するため、先に搭載された電子部品と干渉しないと判定する(S20:NO)。
また、CPU211は、搭載順干渉データテーブル309の「搭載順」が「4」〜「6」番目の各リファレンスC4〜C6は、リードをY方向(図19中、上下方向)に沿うように把持することによって、一対の爪部82A及び補助プレート82Bが把持状態から解除状態になる際に、後方に揺動するため、先に搭載された電子部品と干渉しないと判定する(S20:NO)、また、図20に示すように、CPU211は、搭載順干渉データテーブル309の「搭載順」が「7」〜「10」番目の各リファレンスD1〜D4は、リードをX方向(図20中、左右方向)に沿うように把持することによって、一対の爪部82A及び補助プレート82Bが把持状態から解除状態になる際に、後方に揺動するため、先に搭載された電子部品と干渉しないと判定する(S20:NO)。
そして、図21に示すように、一対の爪部82A及び補助プレート82Bが把持状態から解除状態になる際に、先に搭載された電子部品と干渉しない旨、つまり、保持具82の使用に制限が無い旨を表す「○」印を、搭載順干渉データテーブル309の「保持具」の識別子が「LC−B」の搭載順が「1」番目〜「10」番目の欄内に記憶する(S21)。
また、例えば、図20の下段左側に示すように、処理対象の「保持具」の識別子が「LC−C」、つまり、保持具83の場合において、CPU211は、搭載順干渉データテーブル309の「搭載順」が「11」番目のリファレンスE1は、リードをX方向(図20中、左右方向)に沿うように把持することによって、一対の爪部83Aが把持状態から解除状態になる際に、後方に揺動するため、先に搭載された電子部品と干渉しないと判定する(S20:NO)。そして、図21に示すように、一対の爪部83Aが把持状態から解除状態になる際に、先に搭載された電子部品と干渉しない旨を表す「○」印を、搭載順干渉データテーブル309の「保持具」の識別子が「LC−C」の搭載順が「11」番目の欄内に記憶する(S21)。
その後、CPU211は、S18の処理に戻り、処理対象となる次の「搭載順」の「リファレンス」に変更した後、S18以降の処理を再度実行する。そして、処理対象となる「リファレンス」が、最後の搭載順の「リファレンス」であった場合には、CPU211は、処理対象となる「保持具」の「識別子」を上記搭載順干渉データテーブル309の「保持具」の次の「識別子」に変更した後、S16以降の処理を再度実行する。そして、処理対象となる「保持具」の「識別子」が、最後の順番の「識別子」であった場合には、CPU211は、当該S16〜S21の処理を終了して、S22の処理に移行する。
従って、例えば、図18に示すように、実装基板401上に各リファレンスC1〜C6、D1〜D4、E1の実装リード部品を搭載する場合において、CPU211は、上記S16〜S21の処理を実行することによって、図21に示す搭載順干渉データテーブル309を作成してRAM212に記憶する。
具体的には、搭載順干渉データテーブル309の「保持具」の識別子が「LC−A」では、搭載順が1番目〜6番目、8番目〜10番目の各欄内に、当該保持具81の使用に制限が有る旨を表す「×」印が記憶される。また、「保持具」の識別子が「LC−B」では、搭載順が11番目の欄内に、当該保持具82の使用に制限が有る旨を表す「×」印が記憶される。また、「保持具」の識別子が「LC−C」では、搭載順が7番目〜10番目の欄内に、当該保持具83の使用に制限が有る旨を表す「×」印が記憶される。
一方、搭載順干渉データテーブル309の「保持具」の識別子が「LC−A」では、搭載順が7番目、11番目の各欄内に、当該保持具81の使用に制限が無い旨を表す「○」印が記憶される。また、搭載順干渉データテーブル309の「保持具」の識別子が「LC−B」では、搭載順が1番目〜10番目の各欄内に、当該保持具82の使用に制限が無い旨を表す「○」印が記憶される。また、搭載順干渉データテーブル309の「保持具」の識別子が「LC−C」では、搭載順が1番目〜6番目、11番目の各欄内に、当該保持具83の使用に制限が無い旨を表す「○」印が記憶される。
続いて、図9に示すように、S22において、CPU211は、上記S16〜S21の処理を実行して作成した搭載順干渉データテーブル309をRAM212から読み出す。そして、CPU211は、「保持具」の識別子「LC−A」、「LC−B」、「LC−C」等のそれぞれについて、全ての搭載順に対応する欄内に、当該保持具の使用に制限が無い旨を表す「○」印が記憶されたものがあるか否かを判定する。つまり、CPU211は、各保持具81〜83のうち、交換することなく全てのリファレンスのリード部品(ラジアルリード部品)を実装基板401上に実装可能なものがあるか否かを判定する。
そして、「保持具」の識別子「LC−A」、「LC−B」、「LC−C」等のうち、全ての搭載順に対応する欄内に、当該保持具の使用に制限が無い旨を表す「○」印が記憶されたものがあると判定した場合には(S22:YES)、CPU211は、S23の処理に移行する。つまり、各保持具81〜83のうち、交換することなく全てのリファレンスのリード部品(ラジアルリード部品)を実装基板401上に実装可能なものがあると判定した場合には(S22:YES)、CPU211は、S23の処理に移行する。
S23において、CPU211は、「保持具」の識別子「LC−A」、「LC−B」、「LC−C」等のうち、全ての搭載順に対応する欄内に、当該保持具の使用に制限が無い旨を表す「○」印が記憶されたものが複数組の識別子に対して得られたか否かを判定する。つまり、CPU211は、各保持具81〜83のうち、交換することなく全てのリファレンスのリード部品(ラジアルリード部品)を実装基板401上に実装可能なものが複数個あるか否かを判定する。
そして、「保持具」の識別子「LC−A」、「LC−B」、「LC−C」等のうち、全ての搭載順に対応する欄内に、当該保持具の使用に制限が無い旨を表す「○」印が記憶されたものが1つの識別子だけであると判定した場合には(S23:NO)、CPU211は、この1つの「識別子」だけを全てのリファレンスのリード部品(ラジアルリード部品)に対応付けて、つまり、割り付けてRAM212に記憶した後、後述のS31の処理に移行する。つまり、CPU211は、この1つの「識別子」に対応する保持具を、全てのリファレンスのリード部品(ラジアルリード部品)に対して、実装用保持具として割り付けてRAM212に記憶した後、後述のS31の処理に移行する。
一方、「保持具」の識別子「LC−A」、「LC−B」、「LC−C」等のうち、全ての搭載順に対応する欄内に、当該保持具の使用に制限が無い旨を表す「○」印が記憶されたものが複数組の識別子に対して得られたと判定した場合には(S23:YES)、CPU211は、S24の処理に移行する。
S24において、CPU211は、例えば、この複数組の識別子のそれぞれについて、実装リード部品のパーツデータテーブル303(図13参照)から搭載順に各リファレンスのパーツサイズに対応する「パーツサイズ」のデータ(形状情報)を順次読み出す。そして、CPU211は、この読み出した各「パーツサイズ」のデータ(形状情報)と保持具との関係で、最適な保持具を使用することができる頻度を更に演算し、最も使用頻度が高い「識別子」を選択する。
そして、CPU211は、この選択した1つの「識別子」だけを搭載順の各リファレンスに対応付けてRAM212に記憶した後、後述のS31の処理に移行する。つまり、CPU211は、この1つの「識別子」に対応する保持具を、全てのリファレンスのリード部品(ラジアルリード部品)に対して、実装用保持具として割り付けてRAM212に記憶した後、後述のS31の処理に移行する。これにより、実装リード部品の実装効率を更に高めることが可能となる。
他方、前記S22において、「保持具」の識別子「LC−A」、「LC−B」、「LC−C」等のうち、全ての搭載順に対応する欄内に、当該保持具の使用に制限が無い旨を表す「○」印が記憶されたものが無いと判定した場合には(S22:NO)、CPU211は、S25の処理に移行する。S25において、CPU211は、「保持具」の識別子「LC−A」、「LC−B」、「LC−C」等のうち、複数の「識別子」を組み合わせることによって、つまり、保持具を交換することによって搭載順に全てのリファレンスのリード部品を実装基板401上に実装可能なものが複数組得られるか否かを判定する。
例えば、図21に示す、搭載順干渉データテーブル309では、CPU211は、搭載順が1番目〜10番目までの各リファレンスC1〜C6、D1〜D4を識別子「LC−B」の保持具82で搭載し、搭載順が11番目のリファレンスE1を識別子「LC−A」の保持具81で搭載する「第1組み合わせ」を得る。また、CPU211は、搭載順が1番目〜10番目までの各リファレンスC1〜C6、D1〜D4を識別子「LC−B」の保持具82で搭載し、搭載順が11番目のリファレンスE1を識別子「LC−C」の保持具83で搭載する「第2組み合わせ」を得る。
また、CPU211は、搭載順が1番目〜6番目までの各リファレンスC1〜C6を識別子「LC−C」の保持具83で搭載し、搭載順が7番目〜10番目までの各リファレンスD1〜D4を識別子「LC−B」の保持具82で搭載し、搭載順が11番目のリファレンスE1を識別子「LC−A」の保持具81で搭載する「第3組み合わせ」を得る。また、CPU211は、搭載順が1番目〜6番目までの各リファレンスC1〜C6を識別子「LC−C」の保持具83で搭載し、搭載順が7番目〜10番目までの各リファレンスD1〜D4を識別子「LC−B」の保持具82で搭載し、搭載順が11番目のリファレンスE1を識別子「LC−C」の保持具83で搭載する「第4組み合わせ」等を得る。
そして、図9に示すように、前記S25で「保持具」の識別子「LC−A」、「LC−B」、「LC−C」等のうち、複数の「識別子」を組み合わせることによって、つまり、保持具を交換することによって搭載順に全てのリファレンスのリード部品を実装基板401上に実装可能なものが1組であると判定した場合には(S25:NO)、CPU211は、この複数の「識別子」を組み合わせることによって得られた搭載順の各リファレンスを実装する保持具の識別子を当該搭載順の各リファレンスに対応付けて、つまり、割り付けてRAM212に記憶した後、後述のS31の処理に移行する。
一方、前記S25で「保持具」の識別子「LC−A」、「LC−B」、「LC−C」等のうち、複数の「識別子」を組み合わせることによって、つまり、保持具を交換することによって搭載順に全てのリファレンスのリード部品を実装基板401上に実装可能なものが複数組得られると判定した場合には(S25:YES)、CPU211は、S26の処理に移行する。S26において、CPU211は、保持具を交換することによって搭載順に全てのリファレンスのリード部品を実装基板401上に実装可能な複数組の保持具の組み合わせのうち、保持具の交換回数の最も少ない組み合わせが、複数組あるか否かを判定する。
そして、保持具を交換することによって搭載順に全てのリファレンスのリード部品を実装基板401上に実装可能な複数組の保持具の組み合わせうち、保持具の交換回数の最も少ない組み合わせが、1組だけであると判定した場合には(S26:NO)、CPU211は、S27の処理に移行する。
S27において、CPU211は、保持具を交換することによって搭載順に全てのリファレンスのリード部品を実装基板401上に実装可能な複数組の保持具の組み合わせのうち、保持具の交換回数が最も少ない保持具の組み合わせを選択する。そして、CPU211は、この保持具の交換回数が最も少ない保持具の組み合わせから、搭載順の各リファレンスを実装する保持具の識別子を当該搭載順の各リファレンスに対応付けて、つまり、割り付けてRAM212に記憶した後、後述のS31の処理に移行する。
一方、前記S26で保持具を交換することによって搭載順に全てのリファレンスのリード部品を実装基板401上に実装可能な複数組の保持具の組み合わせのうち、保持具の交換回数の最も少ない組み合わせが、複数組あると判定した場合には(S26:YES)、CPU211は、S28の処理に移行する。
図10に示すように、S28において、CPU211は、搭載順に全てのリファレンスのリード部品を実装基板401上に実装可能な複数組の保持具の組み合わせのうち、保持具の交換回数の最も少ない組み合わせのそれぞれについて、各保持具の交換に要する時間を演算する。そして、CPU211は、保持具の交換回数の最も少ない複数組の組み合わせのうち、合計した保持具の交換時間の最も少ない組み合わせが、複数組あるか否かを判定する。尚、CPU211は、保持具の交換時間の演算を、ツールステーション85における各保持具81〜83及び各プッシャ88A、88B、88Cの収納位置のデータ等に基づいて行う。
そして、保持具の交換回数の最も少ない複数組の組み合わせのうち、合計した保持具の交換時間の最も少ない組み合わせが、1組だけであると判定した場合には(S28:NO)、CPU211は、S29の処理に移行する。
S29において、CPU211は、搭載順に全てのリファレンスのリード部品を実装基板401上に実装可能であり、且つ、保持具の交換回数の最も少ない複数組の組み合わせのうち、合計した保持具の交換時間の最も少ない組み合わせを選択する。そして、CPU211は、この合計した保持具の交換時間の最も少ない組み合わせから、搭載順の各リファレンスを実装する保持具の識別子を当該搭載順の各リファレンスに対応付けて、つまり、割り付けてRAM212に記憶した後、後述のS31の処理に移行する。
一方、前記S28で保持具の交換回数の最も少ない複数組の組み合わせのうち、合計した保持具の交換時間の最も少ない組み合わせが、複数組あると判定した場合には(S28:YES)、CPU211は、S30の処理に移行する。
S30において、CPU211は、例えば、合計した保持具の交換時間の最も少ない複数組の組み合わせのそれぞれについて、実装リード部品のパーツデータテーブル303(図13参照)から搭載順に各リファレンスのパーツサイズに対応する「パーツサイズ」のデータ(形状情報)を順次読み出す。そして、CPU211は、この読み出した各「パーツサイズ」のデータ(形状情報)と保持具との関係で、最適な保持具を使用することができる頻度を更に演算する。
そして、CPU211は、保持具の交換時間の最も少ない複数の組み合わせのうち、最適な保持具の信用頻度が最も高くなる組み合わせを選択する。そして、CPU211は、この選択した保持具の交換時間の最も少ない組み合わせから、搭載順の各リファレンスを実装する保持具の識別子を当該搭載順の各リファレンスに対応付けて、つまり、割り付けてRAM212に記憶した後、後述のS31の処理に移行する。
S31において、CPU211は、前記S23、S24、S25、S27、S29、又は、S30で、搭載順の各リファレンスに対応付けてRAM212に記憶した保持具の識別子を当該搭載順に読み出して、割り付けデータテーブル311(図22参照)の「搭載順」に対応する「保持具」の欄に順次格納し、割り付けデータ235に記憶する。
ここで、割り付けデータテーブル311について図22に基づいて説明する。図22に示すように、割り付けデータテーブル311は、「搭載順」、「リファレンス」、「パーツナンバー」、「保持具」等が1組とされたテーブルである。割り付けデータテーブル311の「搭載順」、「リファレンス」、「パーツナンバー」には、上記搭載順干渉データテーブル309の「搭載順」、「リファレンス」、「パーツナンバー」が記憶される。また、割り付けデータテーブル311の「保持具」には、前記S23、S24、S27、S29、又は、S30で、搭載順の各リファレンスに割り付けられた保持具の識別子が搭載順に順次記憶される。
具体的には、例えば、前記S29において、CPU211は、図21に示す搭載順干渉データテーブル309から、搭載順が1番目〜10番目までの各リファレンスC1〜C6、D1〜D4に保持具82の識別子「LC−B」を割り付け、搭載順が11番目のリファレンスE1に保持具83の識別子「LC−C」を割り付けてRAM212に記憶する。そして、S31において、CPU211は、図21に示す搭載順干渉データテーブル309から、1番目〜11番目までの「搭載順」、「リファレンス」、「パーツナンバー」の各データを読み出し、図22に示すように、割り付けデータテーブル311の1番目〜11番目までの「搭載順」、「リファレンス」、「パーツナンバー」に記憶する。
続いて、CPU211は、搭載順が1番目から11番目までの各リファレンスC1〜C6、D1〜D4、E1に割り付けられた保持具82の識別子「LC−B」又は保持具83の識別子「LC−C」をRAM212から搭載順に順番に読み出す。そして、図22に示すように、割り付けデータテーブル311の「搭載順」に対応する1番目から11番目までの「保持具」に順次格納する。その後、CPU211は、割り付けデータテーブル311を割り付けデータ235に記憶する。
そして、図10に示すように、S32において、CPU211は、割り付けデータテーブル311を割り付けデータ235から読み出し、ディスプレイ215に表示する。また、同時に、CPU211は、部品実装機10へ割り付けデータテーブル311のデータ送信を要求する送信指示を受け付ける送信ボタン(不図示)を表示する。尚、オペレータは、キーボード又はマウス等により、ディスプレイ215に表示された送信ボタンをクリックすることによって、部品実装機10へ割り付けデータテーブル311のデータ送信を要求する送信指示を入力することが可能である。
続いて、S33において、CPU211は、部品実装機10へ割り付けデータテーブル311のデータ送信を要求する送信指示を送信ボタン(不図示)を介して受け付けたか否かを判定する。そして、部品実装機10へ割り付けデータテーブル311のデータ送信を要求する送信指示を送信ボタン(不図示)を介して受け付けていないと判定した場合には(S33:NO)、CPU211は、S34の処理に移行する。
S34において、CPU211は、割り付けデータテーブル311をディスプレイ215に表示してから所定時間(例えば、約30秒である。)経過したか否かを判定する。そして、割り付けデータテーブル311をディスプレイ215に表示してから所定時間経過していないと判定した場合には(S34:NO)、CPU211は、再度、S33以降の処理を実行する。一方、割り付けデータテーブル311をディスプレイ215に表示してから所定時間経過したと判定した場合には(S34:YES)、CPU211は、当該割り付けデータ作成処理を終了する。
他方、部品実装機10へ割り付けデータテーブル311のデータ送信を要求する送信指示を送信ボタン(不図示)を介して受け付けたと判定した場合には(S33:YES)、CPU211は、S35の処理に移行する。S35において、CPU211は、部品実装機10へ割り付けデータテーブル311等のデータを割り付けデータ235から読み出して、部品実装機10に保持具の割り付けデータとして送信した後、当該割り付けデータ作成処理を終了する。尚、S35において、CPU211は、ジョブデータ230を部品実装機10に送信するようにしてもよい。
ここで、部品実装機10は、実装機の一例である。各保持具81〜83は、保持具の一例である。リード部品92は、リード部品の一例である。リード94は、リードの一例である。データ作成装置200は、データ作成装置の一例である。CPU211、RAM212、ROM213は、装着データ取得部、搭載順決定部、保持具抽出部、装着順決定部、データ作成部、第1割付判定部、第2割付判定部、第3割付判定部、制御部の一例である。パーツDB221は、部品データ記憶部の一例である。保持具DB222は、保持具データ記憶部の一例である。S15の処理は、搭載順決定工程の一例である。S16〜S21の処理は、保持具抽出工程の一例である。S22〜S30の処理は、装着順決定工程の一例である。S31の処理は、割り付けデータ作成工程の一例である。
以上詳細に説明した通り、本実施形態に係るデータ作成装置200では、CPU211は、CADデータ241、BOMデータ242、パーツDB221に格納されたデータ、及び、保持具DB222に格納されたデータから、実装リード部品の位置データテーブル301、BOMデータテーブル302、パーツデータテーブル303、ツールデータテーブル305、先付け部品の位置データテーブル306、BOMデータテーブル307、パーツデータテーブル308を作成する。そして、CPU211は、実装リード部品の位置データテーブル301、BOMデータテーブル302、実装リード部品のパーツデータテーブル303の「パーツサイズ」の各データから実装リード部品の搭載順序を決定する。
続いて、CPU211は、この実装リード部品の搭載順序に従って、実装リード部品のパーツデータテーブル303とツールデータテーブル305から各保持具81〜83毎に、各実装リード部品を把持可能で、且つ、先付け部品と干渉しないで実装基板401上に搭載可能か否かを判定して、搭載順干渉データテーブル309を作成する。その後、CPU211は、搭載順干渉データテーブル309から全ての実装リード部品を搭載可能な保持具の装着順を決定して、割り付けデータテーブル311を作成する。そして、CPU211は、送信指示を受け付けた場合には、割り付けデータテーブル311のデータを部品実装機10に送信する。
これにより、実装リード部品毎に、先付け部品と干渉しないで搭載可能な各保持具81〜83を抽出し、実装リード部品の搭載順序に従って、全ての実装リード部品を搭載可能な各保持具81〜83の装着順を自動で決定することが可能となる。従って、先付け部品等と干渉しない各保持具81〜83を適切に自動で選択して割り付けることが可能となり、実装リード部品のリードを各保持具81〜83で保持して回路基材12(例えば、実装基板401)上に実装する実装効率を高めることが可能となる。
また、CPU211は、全ての実装リード部品を搭載可能な各保持具81〜83の装着順が複数通りあると判定した場合には、同じ保持具を連続して装着できる回数が一番多い装着順、例えば、同じ保持具で全ての実装リード部品を搭載可能な装着順を選択して、各保持具81〜83の装着順として決定する。これにより、同じ保持具を連続して装着できる回数が一番多い装着順を各保持具81〜83の装着順とするため、各保持具81〜83の交換回数を少なくすることができ、実装リード部品のリードを各保持具81〜83で保持して回路基材12(例えば、実装基板401)上に実装する実装効率を更に高めることが可能となる。
また、CPU211は、同じ保持具を連続して装着できる回数が一番多い装着順が複数通りあると判定した場合には、各保持具81〜83の交換回数が最も少ない装着順を選択して、各保持具81〜83の装着順として決定する。これにより、各保持具81〜83の交換回数が最も少ない装着順を各保持具81〜83の装着順とするため、各保持具81〜83の交換回数を少なくすることができ、実装リード部品のリードを各保持具81〜83で保持して回路基材12(例えば、実装基板401)上に実装する実装効率を更に高めることが可能となる。
また、CPU211は、各保持具81〜83の交換回数が最も少ない装着順が複数通りあると判定した場合には、各保持具81〜83の交換に要する時間が最も少ない装着順を選択して、各保持具81〜83の装着順として決定する。これにより、各保持具81〜83の交換に要する時間を短くすることが可能となり、実装リード部品のリードを各保持具81〜83で保持して回路基材12(例えば、実装基板401)上に実装する実装効率を更に高めることが可能となる。
また、CPU211は、実装リード部品の搭載順序を、回路基材12(例えば、実装基板401)上に搭載する実装リード部品のうち、小さくて高さの低い実装リード部品から搭載するように決定する。これにより、各保持具81〜83が移動した際に、回路基材12(例えば、実装基板401)上に先に搭載されている先付け部品等との接触を避けることが可能となり、実装リード部品のリードを各保持具81〜83で保持して回路基材12(例えば、実装基板401)上に実装する実装効率を更に高めることが可能となる。
尚、本発明は前記実施形態に限定されるものではなく、本発明の要旨を逸脱しない範囲内で種々の改良、変形が可能であることは勿論である。
例えば、部品実装機10の制御装置36を構成するコントローラ100に、パーツDB221、保持具DB222を格納するようにしてもよい。また、コントローラ100のROMに、S11〜S31の割り付けデータ作成処理を実行するプログラムを記憶するようにしてもよい。そして、コントローラ100のCPUが、CADデータ241、BOMデータ242、パーツDB221、保持具DB222のデータに基づいて、S11〜S31の割り付けデータ作成処理を実行し、割り付けデータテーブル311を作成するようにしてもよい。
また、例えば、パーツDB221、保持具DB222を外部のサーバー(不図示)に格納し、データ作成装置200のCPU211は、通信部217に接続されたネットワークを介して外部のサーバーからパーツDB221、保持具DB222に格納されるデータを受信するように構成してもよい。