〔実施の形態1〕
本発明の一実施形態について図1ないし図12に基づいて説明すれば、以下の通りである。なお、以下の説明に用いる図面は、同一の部材または同一の機能のものについては同一の符号を付してある。従って、それらについての詳細な説明は繰り返さない。
最初に、図2ないし図4(d)を用いて、カラーハイライト方式を利用した基板検査装置2による、基板上の電子部品の半田付けの良否(実装状態の良否)の検査の原理について説明を行う。図2は、カラーハイライト方式の原理を説明する図である。また、図3は、半田フィレットと撮像パターンとの相関関係の一例を示す図である。そして、図4(a)〜図4(d)は、半田フィレットと撮像パターンと半田付けの良否との相関関係を示す図である。なお、カラーハイライト方式については、上述の特許文献1に開示されている。
図2に示すように、カラーハイライト方式を利用した基板検査装置2では、色の異なる複数の光源を基板表面に対して角度をそれぞれ変えて配置している。そして、上記複数の光源からの照射光が半田フィレット(電子部品の電極部とランドとを半田付けした際の半田盛りの形状)に応じて反射される反射光を後述する撮像部34で撮像し、撮像で得られた撮像データ中のランドの部分(半田付けを行う領域)の各色の反射光の占めるパターン(撮像パターン)の違いを半田フィレットの違いとして判別することによって、基板上の電子部品(実装部品)の実装状態の良否(半田付けなどの良否)の判別を行うことを可能にしている。
例えば、図2に示すように各色の光源を配置すると、図3に示すように半田フィレットの傾斜の急な部分については撮像パターンで青が支配的に撮像され、半田フィレットの傾斜の緩やかな部分は赤が支配的に撮像される。なお、本実施の形態では、赤の光源から得られる照射光および反射光をR、緑の光源から得られる照射光および反射光をG、そして、青の光源から得られる照射光および反射光をBとして表現している。
ここで、半田フィレットの違いに応じた撮像パターンの違いについて、具体的な例を図4(a)〜図4(d)を用いて以下に示す。まず、図4(a)に示すような、ランドへの半田付けの量が適量になっている良品の場合には、図3でも示したように、基板表面に対しての照射光の入射角度の小さい光源の色から順(図4(a)の場合は青、緑、赤の順)に、実装部品に近い側に並ぶ撮像パターンが得られる。これに対して、図4(b)に示すような、ランドに半田付けがなされていない不良品(半田不良)の場合には、ランドからの反射光が実装部品に遮られない色(図4(b)の場合は赤)のみが得られる撮像パターンになる。また、図4(c)に示すような、ランドへの半田付けの量が不足している半田不良の場合には、半田からの反射光と比較して、前述したランドからの反射光の割合が多く混じるので、基板表面からの反射光が実装部品に遮られない色(図4(c)の場合は赤)が良品に比べて支配的な撮像パターンになる。そして、図4(d)に示すような、ランドへの半田付けの量が過多になっている半田不良の場合には、良品の撮像パターンと比較して色の並び順の異なる撮像パターンが得られる。これは、良品では、実装部品に近い側の傾斜がより急であるのに対し、図4(d)に示す不良品では、実装部品に近い側の傾斜がより緩やかであるためである。なお、半田およびランドは、鏡面反射するために図4(a)〜図4(d)に示したような色が並ぶパターンが得られるが、鏡面反射しない実装部品本体および基板表面では、通常の白色光と同様の撮像結果が得られることになる。すなわち、半田およびランドの部分にのみ撮像パターンが得られる。
このように、カラーハイライト方式を利用した基板検査装置2の撮像部34において撮像された画像中では、半田フィレットの傾斜角度に応じて色が変化するため、撮像パターンの違いから半田付けの良否、および不良半田の種類の識別を行うことができる。
次に、図5を用いて、基板検査システムの概要について説明を行う。図5は、本実施の形態における基板検査システム1の概略構成を示す図である。基板検査システムは、基板検査装置2と基板検査装置2での基板検査で用いられる検査パラメータを自動生成する検査パラメータ設定装置3とを備えている。
まず、基板検査装置2は、カラーハイライト方式により基板上の実装部品の実装品質(半田付け状態など)を自動検査する装置である。基板検査装置2は図5に示すようにXステージ31、Yステージ32、投光部33、撮像部34、および制御処理部35を備えている。
Xステージ31およびYステージ32は、それぞれ制御処理部35からの制御信号に基づいて動作する図示しないモータを備えている。上記モータの駆動によって、Xステージ31が投光部33および撮像部34をX軸方向へ移動させ、Yステージ32が基板を支持するコンベヤ36をY軸方向へ移動させる。なお、ここで言うところのX軸方向、Y軸方向とは、コンベヤ36に支持される基板の表面に対してそれぞれ平行な方向であって、X軸方向とY軸方向とはお互いが直交する関係にある。
投光部33は、異なる径を有し、かつ、制御処理部35からの制御信号に基づいて赤色光、緑色光、青色光を同時に照射する、各色にそれぞれ応じた3個の円環状光源37a・37b・37cによって構成されているものである。各円環状光源37a・37b・37cは、観測位置の直上にあたる位置に中心を合わせ、かつ、観測位置から見て異なる仰角に対応する方向に配置されている。上述した配置により、投光部33は基板上の実装部品に異なる入射角で複数の色の光(例えばR,G,Bの3色)を照射する。
撮像部34は、カラーカメラ(カメラ)であって、観測位置の直上にあたる位置に、レンズ部分を下方に向けて位置決めしてある。上述した配置により、基板表面の反射光が撮像部34によって撮像され、三原色のカラー信号R,G,Bに変換されて制御処理部36に供給される。
制御処理部35は、A/D変換部43、画像処理部44、検査パラメータ記憶部45、判定部46、撮像コントローラ41、XYステージコントローラ47、メモリ48、制御部(CPU)49、記憶部42、入力部50、表示部51、プリンタ52、および通信I/F53などで構成されている。
A/D変換部43は、撮像部34からのカラー信号R,G,Bを入力してディジタル信号に変換する回路である。色相ごとのディジタル量の濃淡画像データは、メモリ48内の画像データ格納エリアへと転送される。
撮像コントローラ41は、制御部49と投光部33および撮像部34とを接続するインターフェースなどを備える回路であり、制御部49の出力に基づいて投光部33の各円環状光源37a・37b・37cの光量を調整したり、撮像部34の各色相光出力の相互バランスを保つなどの制御を行ったりするものである。また、XYステージコントローラ47は、制御部49とXステージ31およびYステージ32とを接続するインターフェースなどを備える回路であり、制御部49の出力に基づいてXステージ31およびYステージ32の駆動を制御するものである。
検査パラメータ記憶部45は、基板検査処理に用いられる検査パラメータを記憶するものである。基板検査装置2では、半田形状を検査するフィレット検査ならびに部品の欠落を検査する欠落検査などの複数種類の検査処理を行うことができる。なお、検査パラメータは、検査の種類ごとに用意されるものであって、画像から所定の色彩パターン(画素領域)を抽出するための条件を表す色パラメータ(色条件)、上記色彩パターンから抽出する特徴量の種類、上記特徴量に関する良否の判定条件などから構成される。
画像処理部44は、基板上の実装部品を撮像して得られた画像から色パラメータを満たす領域を抽出する処理、および抽出された当該領域から所定の特徴量を算出する処理を実行する回路である。そして、判定部46は、画像処理部44で算出された特徴量を受け取り、当該特徴量が所定の判定条件を満たすか否かに応じて、実装部品の実装状態の良否を判定する処理を実行する回路である。
入力部50は、操作情報および基板に関するデータ(基板の型番など)などを入力するのに必要なキーボード、マウスなどから構成されているものである。なお、入力部50で入力されたデータは制御部49へ送られる。続いて、通信I/F53は、検査パラメータ設定装置3および他の外部装置などとの間でデータの送受信を行うためのものである。
制御部49は、各種演算処理ならびに制御処理を実行する回路である。記憶部42は、ハードディスク、メモリなどから構成される記憶装置であって、制御部49で実行されるプログラムの他、基板の設計情報であるCAD情報、基板検査処理の判定結果などが格納されるものである。
次に、基板検査装置2における基板検査処理について説明を行う。ここでは、基板検査処理の一例として、フィレット検査を説明する。なお、フィレット検査とは、半田フィレット良否を判定する処理である。また、半田フィレットの良品および不良品の例としては図4(a)〜図4(d)で挙げたものなどがある。以下では、図4(a)〜図4(d)で示したような撮像パターンの傾向を利用し、青色領域の大きさ(面積)に基づいて半田フィレットの良否判定を行う場合を例として説明を行う。
まず、入力部50の操作により、もしくは通信I/F53を介して外部機器から指示情報が入力されると、指示情報が制御部49に送られる。なお、上記指示情報には、検査対象となる基板の情報(型番など)が含まれている。続いて、指示情報が制御部49に送られると、基板の型番に対応する検査パラメータを、制御部49が検査パラメータ記憶部45から読み込む。ここでは、フィレット検査を例として説明を行っているので、フィレット検査用の検査パラメータが読み込まれることになる。なお、上記検査パラメータには、色パラメータ(色条件)および閾値(判定条件)が含まれる。また、制御部49は、指示情報に基づいて、検査対象となる基板をコンベヤ36上に搬入するとともに、指示情報に基づいて、基板の型番に対応するCAD情報を記憶部42から読み込む。
続いて、制御部49は、読み込まれたCAD情報から、検査対象の基板の寸法、形状、部品の配置などの情報を得て、基板上に実装された複数の実装部品が順に観測位置(撮像位置)に位置合わせされるように、XYステージコントローラ47に対して駆動命令を出力する。そして、XYステージコントローラ47が、当該駆動命令に従って、Xステージ31およびYステージ32を駆動させる。
また、制御部49は、撮像コントローラ41に発光命令を出力する。そして、当該発光命令に従って、撮像コントローラ41が投光部33の3個の各円環状光源37a・37b・37cを発光させるよう制御を行い、赤色、緑色、青色の光を同時に基板上に照射させる。また、制御部49は、撮像コントローラに撮像命令を出力する。そして、当該撮像命令に従って、撮像コントローラ41が撮像部34を制御し、Xステージ31およびYステージ32の駆動に同期して基板上の実装部品を撮像させる。なお、撮像した画像のデータ(撮像画像データ)はメモリ48に送られる。
次に、画像処理部44が、メモリ48に格納された撮像画像データから実装部品と当該実装部品に対するランドとに該当する領域を抽出する。上記領域の抽出は、例えばテンプレートマッチングによって、自動で行うことができる。また、画像処理部44は、抽出された上記領域を色パラメータを用いて二値化する。ここでは、青色領域の大きさ(面積)に基づいて半田フィレットの良否判定を行う場合を例として説明を行っているので、上記色パラメータは、青色の彩度の下限および上限、ならびに明度の下限および上限の4つの値で構成されている。二値化処理では、色パラメータで定義された範囲内に含まれる画素が白画素に変換され、それ以外の画素が黒画素に変換される。
続いて、画像処理部44は、白画素領域の特徴量を抽出し、抽出した特徴量を判定部46に送る。ここでは、特徴量として白画素領域の面積値(画素数)が計算される。そして、判定部46が白画素領域の面積値と所定の閾値とを比較し、当該面積値が閾値を超えた場合には、当該実装部品の半田フィレットが良と判定され、当該面積値が閾値以下であった場合には、当該実装部品の半田フィレットが不良と判定される。なお、上記判定の結果は、ロケーションID(個々の実装部品を特定するための情報)とともに、記憶部42に書き込まれる。基板上のすべての実装部品についての検査が終了した場合には、基板を搬出して基板検査処理を終了する。
ところで、不良品の見逃しがなく、かつ、過検出が許容値以下になるような高い判定精度を基板検査装置2で実現するためには、予め検査パラメータの色パラメータ(色条件)および閾値(判定条件)を検査対象に合わせて最適な値に設定しておく必要がある。本実施の形態の検査パラメータ設定装置3は、基板検査装置2で用いる検査パラメータの設定を、検査対象に合わせて自動的に行うものである。
以下では、検査パラメータ設定装置3の説明を行う。検査パラメータ設定装置3は、図5に示すように、検査パラメータ生成装置4と検査パラメータ設定支援装置5とを備えている。
検査パラメータ生成装置4は、基板検査装置2に設定する検査パラメータを生成し、基板検査装置2に設定する処理を行うものである。以下で検査パラメータ生成装置4についての詳細な説明を行う前に、教師画像情報について説明を行う。教師画像情報とは、基板検査装置2によって撮像された実装部品の画像と、当該画像が良品であるか、不良品であるかを示す情報(教師情報)とからなるものである。
検査パラメータ生成装置4は、生成すべき検査パラメータに対応する教師画像情報を図示しないデータベースから読み出し、教師情報に従って当該教師画像情報から良品の半田領域(対象画像)と不良品の半田領域(除去画像)とを抽出するものである。また、検査パラメータ生成装置4は、抽出した対象画像および除去画像の全画素の色を色ヒストグラムにマッピングするととともに、対象画像の画素の色をなるべく多く包含し、かつ、除去画像の画素の色をほとんど排除できるような条件(色パラメータ)を求め、当該色パラメータを検査パラメータとして基板検査装置2に設定するものである。なお、検査パラメータ生成装置4としては、上述の特許文献2に開示のパラメータ設定装置を適用してもよい。
また、色パラメータを指定する方法としては、検査パラメータ生成装置4を用いる以外にも、例えば、特許文献4に開示されている、色パラメータを指定するためのツールを用いることも可能である。図6は、色パラメータの指定に用いるツールの例を示す図である。
上記ツールでは、色パラメータとして、赤、緑、青の各色相比ROP、GOP、BOP、および明度データBRTのそれぞれの上限値および下限値の設定が可能である。このように、色パラメータの要素は赤、緑、青、明度の4つで構成されている。ユーザは、これら全てを利用することも可能であるし、特定の要素のみを利用することも可能である。図6の入力画面には、色パラメータの設定値を入力するための色パラメータ設定部101とともに、設定された各色パラメータにより抽出される色彩の範囲を表示するための設定範囲表示部102が設けられている。また、設定範囲表示部102には、所定の明度の下で得られるすべての色彩を示した色合い図104が表示されており、オペレータ(ユーザ)が各色パラメータの上限値、下限値を設定すると、色合い図104上には、設定された色パラメータにより抽出される色彩を囲むような確認領域105が表示される。さらに、2値化表示ボタン103を押すと、現在の色パラメータによる抽出結果が二値画像で表示される。
続いて、基板検査装置2で検査を実行するためには、検査パラメータ生成装置4または上記ツールによって、対象基板上のすべての実装部品について検査パラメータを設定しなければならない。そこで、検査パラメータの設定にかかる時間を短縮し、初期設定およびメンテナンスを容易にするために、色および形状が同一の実装部品については検査パラメータを統一して設定することが一般的に行われる。なお、同じ検査パラメータが設定される実装部品の集合は「バリエーション」と呼ばれ、本実施の形態の検査パラメータ生成装置4では、検査パラメータ設定支援装置5で分割されたバリエーションごとに、対応する教師画像情報を用意し、当該バリエーションごとの検査パラメータの生成を行っている。
検査パラメータ設定支援装置5は、上述したように、同一のバリエーションとして初期設定された、色および形状が同一の実装部品について、必要な場合にさらにバリエーションの分割を行うことによって、検査パラメータ生成装置4での検査パラメータの生成、および上記ツールなどでの検査パラメータの設定を支援するものである。検査パラメータ設定支援装置5の詳細については、以下で説明を行う。
次に、図1を用いて、検査パラメータ設定支援装置5の説明を行う。図1は、検査パラメータ設定支援装置5の概略的構成を示す機能ブロック図である。図1に示すように、検査パラメータ設定支援装置5は、対象バリエーション入力部(選択結果取得手段)11、撮像データ取得部(画像データ取得手段)12、設計情報格納部13、解析領域抽出部(対象画像データ抽出手段)14、ヒストグラム作成部(分布データ作成手段)15、ヒストグラム解析部(区分手段)16、テーブル格納部17、バリエーション分割処理部(区分手段)18、およびバリエーション分割結果出力部(区分結果送信手段)19を備えている。
まず、対象バリエーション入力部11は、検査パラメータの設定を行う基板およびバリエーションのユーザからの選択を受け付けるものである。また、対象バリエーション入力部11は、選択された基板の情報(基板情報)、およびバリエーションの情報(バリエーション情報)を撮像データ取得部12に送るものである。なお、対象バリエーション入力部11でユーザからの選択を受けるバリエーションは、色および形状が同一の実装部品について同一に設定されたバリエーション(初期設定のバリエーション)を表している。
撮像データ取得部12は、対象バリエーション入力部11から送られてきた基板情報(例えば、型番など)に応じて、基板検査装置2によって撮像された基板の画像データ(撮像データ)を取得するものである。また、撮像データ取得部12は、取得した撮像データおよびバリエーション情報を解析領域抽出部14に送るものである。なお、撮像データの取得先としては、基板検査装置2のメモリ48、撮像データを格納している外部記憶装置などがある。また、撮像データを格納しているメモリ(撮像データ格納部)を検査パラメータ設定支援装置5内に備え、撮像データ格納部から撮像データ取得部12が撮像データを取得する構成にしてもよい。また、本実施の形態では、赤色、緑色、青色の光を投光部33から照射して得られた撮像データを用いる場合を例に挙げて以降の説明を行う。
設計情報格納部13は、基板の設計情報を格納しているものである。そして、解析領域抽出部14は、撮像データ取得部12から送られてきた撮像データから、初期設定のバリエーションに含まれるすべての実装部品の、実装部品本体およびランドからなる領域の画像データを抽出するものである。また、解析領域抽出部14は、撮像データ取得部12から送られてきたバリエーション情報に基づいて、設計情報格納部13から初期設定のバリエーションに含まれるすべての実装部品の設計情報を得て、上記抽出を行うものである。さらに、解析領域抽出部14は、抽出した画像データをヒストグラム作成部15に送るものである。設計情報格納部13は、基板の設計情報を格納しているものである。
ヒストグラム作成部15は、各実装部品の画像データに対して、光源色(赤色、緑色、青色)ごとのヒストグラム(画素値ヒストグラム)を作成するものである。光源色ごとの画素値ヒストグラムは、画像データ中の全画素について画素値(RGBの値)をヒストグラムに入力することによって作成できる。例えば、画素値(R,G,B)=(50,90,150)の画素の場合には、赤ヒストグラムの赤=50の度数を1増やし、緑ヒストグラムの緑=90の度数を1増やし、青ヒストグラムの青=150の度数を1増やす処理を行えばよい。また、ヒストグラム作成部15は、作成した画素値ヒストグラムのデータをヒストグラム解析部16に送るものである。
ヒストグラム解析部16は、ヒストグラム作成部15から送られてきた画素値ヒストグラムのデータに基づいて、各実装部品の赤ヒストグラム、緑ヒストグラム、青ヒストグラムに対して累積度数を算出する。そして、それぞれのヒストグラムの全体に占める割合が所定の閾値Ratio以上の画素値をヒストグラムごとに求める。なお、所定の閾値Ratioは、基板の種類に応じて予め設定される任意の値である。
また、ヒストグラム解析部16は、赤ヒストグラム、緑ヒストグラム、青ヒストグラムに対して、求めた画素値の最大値と最小値とを選び出し、各ヒストグラムに対して、当該最大値と当該最小値との差分を求める。そして、求めた差分が所定の閾値Diff以上であるか否かに応じて、「光源を遮られていない」グループと「光源を遮られている」グループとを判定する。具体的には、閾値Diff以上の光源色について、上記画素値に基づいて「光源を遮られていない」グループと「光源を遮られている」グループとの2グループに分類し、閾値Diff未満の光源色については、「光源を遮られていない」グループに分類する。「光源を遮られていない」グループと「光源を遮られている」グループとの2グループに分類する方法としては、判別分析法を用いることが可能であるが、1次元上に分布する値を2つのグループに分類するための他の方法を用いても構わない。なお、所定の閾値Diffは、予め設定される任意の値である。
さらに、ヒストグラム解析部16は、各色の光源について「光源を遮られていない」グループと「光源を遮られている」グループとのどちらに属するかの情報(分類情報)をバリエーション分割処理部18に送るものである。
テーブル格納部17は、カテゴリ分類テーブルを格納しているものである。なお、カテゴリ分類テーブルとは、各色の光源について「光源を遮られていない」グループと「光源を遮られている」グループとのどちらに属するかのパターンに対して、予めそれぞれカテゴリを分けて対応付けているテーブルである。また、バリエーション分割処理部18は、ヒストグラム解析部16から送られてきた分類情報に基づいてテーブル格納部17に格納されているカテゴリ分類テーブルを参照し、実装部品をカテゴリ別に分類するものである。カテゴリ分類テーブルを参照して実装部品をカテゴリ別に分類する処理ついては、具体例を用いて後に詳述する。また、バリエーション分割処理部18は、実装部品をカテゴリ別に分類した結果(分類結果)をバリエーション分割結果出力部19に送るものである。
そして、バリエーション分割結果出力部19は、バリエーション分割処理部18から送られてきた分類結果に応じて、バリエーションの分割を行う。すなわち、異なるカテゴリに分類された実装部品については、異なるバリエーションとして設定を行う。なお、異なるカテゴリに分類された実装部品がなかった場合には、バリエーションは分割せずに設定される。また、バリエーション分割結果出力部19は、設定したバリエーションの情報を出力する。そして、出力されたバリエーションの情報は検査パラメータの設定に用いられることになる。
次に、図7を用いて、検査パラメータ設定支援装置5の動作フローについて説明を行う。図7は、検査パラメータ設定支援装置5での動作フローを示すフローチャートである。ここでは、図8および図9に示すように、初期設定のバリエーション中の実装部品(部品A〜部品C)に、青の照射光が別の実装部品に遮られて届かない実装部品(部品C)が混在している場合を例にとって説明を行う。なお、本例では、例として閾値Ratioを0.8、閾値Diffを50と設定しているものとする。図8は、本実施の形態における撮像データの一例を示した図である。また、図9は、青い光を照射する光源(青光源)を遮られた場合の撮像パターンの一例を示した図である。
まず、ステップS1では、撮像データ取得部12が、図8に示すような撮像データを取得するとともに、解析領域抽出部14が当該撮像データから画像データを抽出し、ステップS2に移る。ステップS2では、抽出した画像データをもとに、図10に示すような、光源色ごとのヒストグラムを作成し、ステップS3に移る。なお、本例では、部品Cは青光源を遮られているので、図10に示すように、部品Cの青ヒストグラムの画素値が低い画素が、部品Aおよび部品Bに比較して多くなっている。
ステップS3では、光源色ごとのヒストグラムについて、それぞれ累積度数をヒストグラム解析部16が算出し、それぞれのヒストグラムの全体に占める割合が閾値Ratio以上の画素値をヒストグラムごとに求める。本例では、閾値Ratioを0.8と設定しているので、図11(a)に示すように、ヒストグラムの全体の80%以上にあたる画素値を各ヒストグラムについて求めればよい。また、図11(b)には、上述したようにして求めた画素値の一覧表を示す。なお、図11(a)は、光源色ごとの各ヒストグラムにおける閾値Ratio以上の画素値の一例を示す図である。また、そして、図11(b)は、閾値Ratioを超える画素値の一覧表の一例を示す図である。
続いて、ステップS4では、光源色ごとのヒストグラムについて、求めた画素値の最大値と最小値とを、ヒストグラム解析部16が選び出し、ステップS5に移る。ここで、図11(b)に示した一覧表中の画素値を例にすると、赤ヒストグラムについては、最大値が「122」、最小値が「117」となる。また、緑ヒストグラムについては、最大値が「106」、最小値が「103」となる。そして、青ヒストグラムについては、最大値が「163」、最小値が「40」となる。
ステップS5では、各ヒストグラムに対して、当該最大値と当該最小値との差分を、ヒストグラム解析部16が求める。そして、求めた差分が閾値Diff以上の光源色が存在した場合(ステップS5でYes)には、ステップS6に移る。また、求めた差分が閾値Diff以上の光源色が存在しなかった場合(ステップS5でNo)には、バリエーション分割結果出力部19が、分割せずに設定したバリエーションの情報を出力してフローを終了する。ここで、図11(b)に示した一覧表中の画素値を例にすると、赤ヒストグラムについては、差分値が「5」となり、緑ヒストグラムについては差分値が「3」となる。そして、青ヒストグラムについては、差分値が「123」となる。
ステップS6では、ヒストグラム解析部16が、閾値Diff以上の光源色について、上記画素値に基づいて「光源を遮られていない」グループと「光源を遮られている」グループとの2グループに分類し、閾値Diff未満の光源色については、「光源を遮られていない」グループに分類し、ステップS7に移る。本例では、閾値Diffを50と設定しているので、赤光源および緑光源については、部品A〜Cのすべてが「光源を遮られていない」グループとなる。そして、青光源については、部品AおよびBが「光源を遮られていない」グループとなり、部品Cが「光源を遮られている」グループとなる。これは、閾値Ratio以上となる部品Cの青ヒストグラムの画素値が、閾値Ratio以上となる部品Aおよび部品Bの画素値に比較して、判別分析法により別分類される程度に低い値であることによる。
続いて、ステップS7では、各光源について、「光源を遮られていない」グループと「光源を遮られている」グループとのどちらに属するかに応じて、カテゴリ分類テーブルを参照し、バリエーション分割処理部18が実装部品をカテゴリ別に分類する。本例では、図12に示すような、赤、緑、青のそれぞれの光源が遮られているか否かによって異なる8つのパターンが、それぞれ別のカテゴリとしてカテゴリ分類テーブルに予め対応づけられている。本例では、図12に示すように、赤、緑、青の光源のすべてが遮られていないカテゴリに部品Aおよび部品Bが分類され、赤、緑、青の光源のうち青光源のみを遮られているカテゴリに部品Cが分類される。なお、図12では、「光源を遮られていない」グループは○で表現し、「光源を遮られている」グループは×で表現している
そして、ステップS8では、バリエーション分割処理部18がカテゴリ別の分類の結果に応じてバリエーションを分割し、バリエーション分割結果出力部19が、分割して設定したバリエーションの情報を出力してフローを終了する。本例では、上述したように、赤、緑、青の光源のすべてが遮られていないカテゴリに部品Aおよび部品Bが分類され、赤、緑、青の光源のうち青光源のみを遮られているカテゴリに部品Cが分類されるので、部品Aおよび部品Bと部品Cとを分けるようにバリエーションを分割し、分割して設定したバリエーションの情報を出力することになる。
以上の処理によって、初期設定のバリエーションでは1つに設定されていたバリエーションを複数に分割する必要があるか否かの判断、およびバリエーションの分割が必要な場合に、バリエーションをいくつに分割して各実装部品をどのバリエーションに割り振ればよいのかの判断を行うことが可能になる。
〔実施の形態2〕
本発明の他の実施の形態について図13ないし図15に基づいて説明すれば、以下の通りである。なお、本実施の形態において説明すること以外の構成は、前記実施の形態1と同じである。また、説明の便宜上、前記の実施の形態1の図面に示した部材と同一の機能を有する部材については、同一の符号を付し、その説明を省略する。
本実施の形態の検査パラメータ設定支援装置5aは、前記実施の形態1の検査パラメータ設定支援装置5の構成に対して、実装部品本体と当該実装部品本体に対するランドとを区別して処理を行うという点が異なっている。
最初に、検査パラメータ設定支援装置5aの構成の概要について説明を行う。本実施の形態における検査パラメータ設定支援装置5aは、対象バリエーション入力部(選択結果取得手段)11、撮像データ取得部(画像データ取得手段)12、設計情報格納部13、解析領域抽出部(対象画像データ抽出手段)14a、ヒストグラム作成部(分布データ作成手段)15a、ヒストグラム解析部(区分手段)16、テーブル格納部17、バリエーション分割処理部(区分手段)18a、およびバリエーション分割結果出力部(区分結果送信手段)19を備えている。なお、解析領域抽出部14aが解析領域抽出部14に対応し、ヒストグラム作成部15aがヒストグラム作成部15に対応し、バリエーション分割処理部18aがバリエーション分割処理部18に対応している以外は、検査パラメータ設定支援装置5aの機能ブロック図は検査パラメータ設定支援装置5の機能ブロック図と同様であるため、図示は省略している。
まず、検査パラメータ設定支援装置5aの解析領域抽出部14aでは、撮像データ取得部12から送られてきた撮像データから、初期設定のバリエーションに含まれるすべての実装部品の、実装部品本体の領域の画像データ、および当該実装部品本体に対する各ランドの領域の画像データをそれぞれ抽出するものである。
また、ヒストグラム作成部15aは、図13(b)に示すように、各実装部品の実装部品本体の領域の画像データ(部品本体の画像データ)、および当該実装部品本体に対する各ランドの領域の画像データ(各ランドの画像データ)のそれぞれに対して、光源色(赤色、緑色、青色)ごとのヒストグラム(画素値ヒストグラム)を作成するものである。
続いて、バリエーション分割処理部18aは、ヒストグラム解析部16から送られてきた分類情報に基づいてテーブル格納部17に格納されているカテゴリ分類テーブルを参照し、実装部品本体(部品本体)および当該実装部品本体に対する各ランド(ランド)をカテゴリ別に分類するものである。
次に、図14を用いて、検査パラメータ設定支援装置5aの動作フローについて説明を行う。図14は、検査パラメータ設定支援装置5aでの動作フローを示すフローチャートである。ここでは、図13(a)に示すように、初期設定のバリエーション中の実装部品(部品A〜部品C)のうち、青の照射光が別の実装部品に遮られて届かない部分(部品Cのランドの一方)が存在する場合を例にとって説明を行う。なお、本例では、実装部品本体に対する2つのランドについて、図13(a)中の青光源を遮る部品寄りのランドをランドRとし、もう一方のランドをランドLとする。
まず、ステップS11では、撮像データ取得部12が、撮像データを取得するとともに、解析領域抽出部14が当該撮像データから部品本体の画像データと各ランドの画像データ(ランドLの画像データとランドRの画像データ)を抽出し、ステップS12に移る。ステップS12では、抽出した部品本体の画像データ、ランドLの画像データ、およびランドRの画像データをもとに、図13(b)に示すような、光源色ごとのヒストグラムを作成し、ステップS13に移る。
ステップS13〜ステップS16では、ステップS3〜ステップS6と同様の処理を行う。続いて、ステップS17では、各光源について、「光源を遮られていない」グループと「光源を遮られている」グループとのどちらに属するかに応じて、カテゴリ分類テーブルを参照し、バリエーション分割処理部18aが部品本体および各ランドのそれぞれをカテゴリ別に分類する。本例では、図15(a)および図15(b)に示すような、赤、緑、青のそれぞれの光源が遮られているか否かによって異なる8つのパターンが、それぞれ別のカテゴリとしてカテゴリ分類テーブルに予め対応づけられている。本例では、図15(a)に示すように、部品本体については、赤、緑、青の光源のすべてが遮られていないカテゴリに部品A〜部品Cのすべてが分類される。また、図15(b)に示すように、ランドLについては、赤、緑、青の光源のすべてが遮られていないカテゴリに部品A〜部品Cのすべてが分類される。さらに、ランドRについては、赤、緑、青の光源のすべてが遮られていないカテゴリに部品Aおよび部品Bが分類され、赤、緑、青の光源のうち青光源のみを遮られているカテゴリに部品Cが分類される。なお、図15(a)および図15(b)では、「光源を遮られていない」グループは○で表現し、「光源を遮られている」グループは×で表現している。
そして、ステップS18では、バリエーション分割処理部18aがカテゴリ別の分類の結果に応じてバリエーションを分割し、バリエーション分割結果出力部19が、分割して設定したバリエーションの情報を出力してフローを終了する。本例では、上述したように、部品CのランドRのみが、赤、緑、青の光源のうち青光源のみを遮られているカテゴリに分類され、残りの部品A〜Cの部品本体、部品A〜CのランドL、および部品Aと部品BとのランドRは、赤、緑、青の光源のすべてが遮られていないカテゴリに分類されるので、部品Aおよび部品Bと部品Cとを分けるようにバリエーションを分割し、分割して設定したバリエーションの情報を出力することになる。
以上の処理によって、ランド1個だけが光源を遮られているような場合であっても、実装部品のバリエーションの分割を適切に行うことが可能になる。
〔実施の形態3〕
本発明の他の実施の形態について図16ないし図18に基づいて説明すれば、以下の通りである。なお、本実施の形態において説明すること以外の構成は、前記実施の形態1または前記実施の形態2と同じである。また、説明の便宜上、前記の実施の形態1または前記実施の形態2の図面に示した部材と同一の機能を有する部材については、同一の符号を付し、その説明を省略する。
本実施の形態の検査パラメータ設定支援装置5bは、前記実施の形態1の検査パラメータ設定支援装置5または前記実施の形態2の検査パラメータ設定支援装置5aの構成に対して、設計情報に基づいて、光源が遮られるか否かの判別を予め行うという点が異なっている。
最初に、図16を用いて、検査パラメータ設定支援装置5bの構成の概要について説明を行う。図16は、検査パラメータ設定支援装置5bの概略的構成の一部を示す機能ブロック図である。本実施の形態における検査パラメータ設定支援装置5bは、対象バリエーション入力部(選択結果取得手段)11、撮像データ取得部(画像データ取得手段)12、設計情報格納部13、解析領域抽出部(対象画像データ抽出手段)14(または14a)、ヒストグラム作成部(分布データ作成手段)15(または15a)、ヒストグラム解析部(区分手段)16、テーブル格納部17、バリエーション分割処理部(区分手段)18(または18a)、バリエーション分割結果出力部(区分結果送信手段)19、設計情報収集部(設計情報取得手段)21、角度算出部(判別手段)22、および処理対象判別部(判別手段)23を備えている。なお、撮像データ取得部12、ヒストグラム作成部15、ヒストグラム解析部16、テーブル格納部17、およびバリエーション分割結果出力部19は図16での図示を省略している。
まず、設計情報収集部21は、対象バリエーション入力部11から送られてきたバリエーション情報に基づいて、設計情報格納部13から初期設定のバリエーションに含まれるすべての実装部品と当該実装部品に隣接する部品(隣接部品)との設計情報を得るものである。また、設計情報収集部21は、収集した設計情報を角度算出部22に送るものである。なお、隣接部品とは、対象とする実装部品に対して基板上で隣り合わせに配置されている実装部品を表している。
続いて、角度算出部22は、設計情報収集部21から送られてきた設計情報をもとに、角度φの値を算出するものである。詳しくは、図17に示すように、選択した隣接部品の高さをh、対象とする実装部品と選択した隣接部品との間の間隔をdとしたときに、設計情報からhおよびdの値を得て、角度φ=arctan(d/h)の式を満たす角度φの値を算出するものである。なお、角度算出部22では、対象とする実装部品のすべての隣接部品について角度φの値を求め、処理対象判別部23に送る。
そして、処理対象判別部23は、角度算出部22から送られてきた角度φの値の最小値が所定の閾値Angle以上か否かに応じて、処理を行うものである。詳しくは、処理対象判別部23は、角度φの値の最小値が所定の閾値Angle以上であった場合には、該当する実装部品を「どの光源も遮られていない」カテゴリに分類する。すなわち、該当する実装部品を赤、緑、青の光源のすべてが遮られていないカテゴリに分類する判別結果をバリエーション分割処理部18に送るものである。また、処理対象判別部23は、角度φの値の最小値が所定の閾値Angle未満であった場合には、該当する実装部品について画像データを抽出し、各光源について「光源を遮られていない」グループと「光源を遮られている」グループとのどちらに属するかに応じて該当する実装部品をカテゴリ別に分類する処理を行う判別結果を解析領域抽出部14に送るものである。なお、所定の閾値Angleは、予め設定される任意の値であって、光源からの照射光の入射角度の最大値以上であることが好ましい。
次に、図18を用いて、検査パラメータ設定支援装置5bの動作フローについて説明を行う。図18は、検査パラメータ設定支援装置5aでの動作フローを示すフローチャートである。
まず、ステップS21では、設計情報収集部21が対象バリエーションの実装部品と当該実装部品の隣接部品との設計情報を収集し、ステップS22に移る。ステップS22では、収集した設計情報に基づいて、角度算出部22が対象バリエーションの実装部品のすべての隣接部品について角度φの値を算出する。ステップS23では、求めた角度φの値の最小値が閾値Angle以上であった場合(ステップS23でYes)には、ステップS24に移る。また、求めた角度φの値の最小値が閾値Angle未満であった場合(ステップS23でNo)には、ステップS25に移る。
続いて、ステップS24では、該当する実装部品を「どの光源も遮られていない」カテゴリに分類する。すなわち、バリエーション分割処理部18(またはバリエーション分割処理部18a)で、該当する実装部品を「どの光源も遮られていない」カテゴリに分類し、ステップS26に移る。また、ステップS25では、該当する実装部品について、解析領域抽出部14(または解析領域抽出部14a)で画像データを抽出し、ステップS2〜ステップS6またはステップS12〜ステップS16の処理を行うことによって、各光源について「光源を遮られていない」グループと「光源を遮られている」グループとのどちらに属するかに応じてカテゴリ別に分類し、ステップS26に移る。
そして、ステップS26では、バリエーション分割処理部18(またはバリエーション分割処理部18a)がカテゴリ別の分類の結果に従ってバリエーションを分割し、バリエーション分割結果出力部19が、分割して設定したバリエーションの情報を出力してフローを終了する。
これにより、CAD等の設計情報を用いて、ステップS2〜ステップS6またはステップS12〜ステップS16の処理を行う対象となる実装部品を限定することが可能になるので、処理時間を短縮することができる。
実施の形態1〜3で説明した撮像パターンの他にも、実装部品の配置によっては、スルーホール、および対象とする実装部品とは別の実装部品のランド領域などで反射(二次反射)された赤光源の光が、対象とする実装部品の半田領域に当たって、本来は撮像パターンで青または緑になるはずの箇所が赤くなる場合がある。すなわち、図19に示すように、本来の赤光源からの光とは別の角度から二次反射による赤光源からの光も半田領域に当たることから、図19に示す撮像パターンのように、本来は青または緑になる箇所に赤のパターンが混じることになり、二次反射が発生しない実装部品と比較して、画像データ中の赤画素の割合が高く、青および緑画素の割合が低くなる。
これに対して、本発明では、各色の画素の割合の違いによってバリエーションを分割するので、二次反射が発生する実装部品についても、適切にバリエーションを分割することが可能になる。
なお、本実施の形態では、カテゴリ別に分類するときのカテゴリが、各色の光源について「光源を遮られていない」グループと「光源を遮られている」グループとのどちらに属するかの組み合わせに基づいて8つに分けている構成を示したが、必ずしもこれに限らない。例えば、光源の数が増えた場合には光源の数の増加に応じてカテゴリの数を増やす構成であってもよいし、上記組み合わせとして実際に生じる可能性の低い組み合わせを除くことによって、カテゴリの数を減らす構成であってもよい。
また、本実施の形態では、「光源を遮られていない」グループと「光源を遮られている」グループとに分ける構成を示したが、上述したような二次反射が発生する場合には、光源を遮られていても二次反射された光が半田に届くことがあるので、「光源を遮られていない、または二次反射された光が届いている」グループと「光源を遮られている」グループとに分ける構成に置き換えてもよい。
なお、基板情報、バリエーション情報などを格納した図示しない格納部を検査パラメータ設定支援装置5が備え、対象バリエーション入力部11が検査パラメータの設定を行う基板およびバリエーションの、ユーザからの選択を受け付けた場合に、基板情報、バリエーション情報などを上記格納部から得て、撮像データ取得部12に送る構成であってもよい。
最後に、検査パラメータ設定装置3および検査パラメータ設定支援装置5の各ブロックは、ハードウェアロジックによって構成してもよいし、次のようにCPUを用いてソフトウェアによって実現してもよい。
すなわち、検査パラメータ設定装置3および検査パラメータ設定支援装置5は、各機能を実現する制御プログラムの命令を実行するCPU(central processing unit)、上記プログラムを格納したROM(read only memory)、上記プログラムを展開するRAM(random access memory)、上記プログラムおよび各種データを格納するメモリ等の記憶装置(記録媒体)などを備えている。そして、本発明の目的は、上述した機能を実現するソフトウェアである検査パラメータ設定装置3または検査パラメータ設定支援装置5の制御プログラムのプログラムコード(実行形式プログラム、中間コードプログラム、ソースプログラム)をコンピュータで読取り可能に記録した記録媒体を、検査パラメータ設定装置3または検査パラメータ設定支援装置5に供給し、そのコンピュータ(またはCPUやMPU)が記録媒体に記録されているプログラムコードを読み出し実行することによっても、達成可能である。
上記記録媒体としては、例えば、磁気テープやカセットテープ等のテープ系、フロッピー(登録商標)ディスク/ハードディスク等の磁気ディスクやCD−ROM/MO/MD/DVD/CD−R等の光ディスクを含むディスク系、ICカード(メモリカードを含む)/光カード等のカード系、あるいはマスクROM/EPROM/EEPROM/フラッシュROM等の半導体メモリ系などを用いることができる。
また、検査パラメータ設定装置3または検査パラメータ設定支援装置5を通信ネットワークと接続可能に構成し、上記プログラムコードを、通信ネットワークを介して供給してもよい。この通信ネットワークとしては、特に限定されず、例えば、インターネット、イントラネット、エキストラネット、LAN、ISDN、VAN、CATV通信網、仮想専用網(virtual private network)、電話回線網、移動体通信網、衛星通信網等が利用可能である。また、通信ネットワークを構成する伝送媒体としては、特に限定されず、例えば、IEEE1394、USB、電力線搬送、ケーブルTV回線、電話線、ADSL回線等の有線でも、IrDAやリモコンのような赤外線、Bluetooth(登録商標)、802.11無線、HDR、携帯電話網、衛星回線、地上波デジタル網等の無線でも利用可能である。なお、本発明は、上記プログラムコードが電子的な伝送で具現化された、搬送波に埋め込まれたコンピュータデータ信号の形態でも実現され得る。
なお、本発明は、上述した各実施形態に限定されるものではなく、請求項に示した範囲で種々の変更が可能であり、異なる実施形態にそれぞれ開示された技術的手段を適宜組み合わせて得られる実施形態についても本発明の技術的範囲に含まれる。