以下、本発明による基板検査装置について、実施の形態を用いて説明する。なお、以下の実施の形態において、同じ符号を付した構成要素は同一または相当するものであり、再度の説明を省略することがある。本実施の形態による基板検査装置は、良品基板の3次元撮影画像等を用いて、部品の外観検査に関する設定を行うものである。
図1は、本実施の形態による基板検査装置1の構成を示すブロック図である。本実施の形態による基板検査装置1は、撮影画像取得部11と、記憶部12と、形状情報取得部13と、表示部14と、部品種類取得部15と、設定部16とを備える。なお、本実施の形態では、部品の外観検査に関する設定を行う構成について主に説明するが、基板検査装置1は、その設定結果に応じて、被検査基板の外観検査をも行うものである。したがって、基板検査装置1は、被検査基板に関する3次元撮影画像や形状情報を用いて、各部品に関する外観検査をそれぞれ行う検査部(図示せず)を備えていてもよい。なお、3次元撮影画像や形状情報については後述する。
撮影画像取得部11は、部品が実装された良品基板の3次元撮影画像を取得する。部品は、例えば、抵抗、コンデンサ、IC(集積回路)、トランジスタ、ダイオード等の電子部品であってもよい。良品基板は、例えば、チップマウンタ(表面実装機)によって部品の実装された基板であって、検査者によるマニュアル検査によって合格と判断された基板であってもよい。すなわち、良品基板においては、各部品があらかじめ決められた位置に、良好な状態で実装されていることになる。3次元撮影画像は、良品基板の2次元の撮影画像(良品基板の部品実装面の撮影画像)と、良品基板の高さ情報とを知ることができる情報であれば、どのような情報であってもよい。その2次元の撮影画像は、例えば、カラー画像であってもよく、グレースケール画像であってもよく、白黒画像であってもよいが、より適切な基板検査のため、カラー画像であることが好適である。本実施の形態では、カラー画像である場合について主に説明する。また、良品基板の高さ情報とは、良品基板の部品実装面の各位置における高さ(良品基板の法線方向の高さ)を示す3次元情報である。したがって、その高さ情報によって、良品基板に実装された各部品の高さを知ることができる。3次元撮影画像は、例えば、位置ごとに高さの情報を有する2次元の撮影画像であってもよく、2次元の撮影画像と、良品基板の3次元の立体的な形状を示す3次元情報とを有する情報であってもよい。本実施の形態では、前者の場合について主に説明する。撮影画像取得部11は、例えば、デジタルスチルカメラによって、2次元の撮影画像を取得してもよい。また、撮影画像取得部11が3次元情報を取得する方法は問わないが、例えば、光切断法、位相シフト法、ステレオ法などによって3次元情報を取得してもよい。本実施の形態では、光切断法によって3次元情報を取得する場合について主に説明する。
光切断法によって3次元情報を取得する撮影画像取得部11の一例について、図2を用いて説明する。図2において、撮影画像取得部11は、光学ユニット41と、演算部42と、移動部43とを備える。光学ユニット41は、部品32の実装された基板31にライン光や照明光を照射し、そのライン光などの照射された基板31を撮影するものであり、照射部51と、傘状部材52と、傘状部材52の内側に配設された複数のLED53と、傘状部材52の中心に設けられた開口部(図示せず)を介して基板31を撮影する撮影部54とを備える。照射部51は、光切断法による3次元計測のためのライン光を照射する。そのライン光は、基板31に照射された際に、図2の紙面に垂直な方向のラインとなる光である。そのライン光は、例えば、レーザ光であってもよく、その他のライン光であってもよい。図2で示されるように、照射方向が対称になるように2個のライン光が照射されてもよい。演算部42は、撮影部54によって撮影された撮影画像のライン光を用いて、基板31の法線方向における高さを光切断法により演算する。なお、そのライン光の撮影の際に、移動部43は、光学ユニット41と基板31とを、図2の両矢印の方向、すなわち基板31に照射されたラインの長手方向に垂直な方向に相対的に移動させる。移動部43は、例えば、光学ユニット41のみを移動させてもよく、基板31のみを移動させてもよく、または、両方を移動させてもよい。光学ユニット41を移動させる場合には、移動部43は、例えば、光学ユニット41を移動可能に保持するステージと、そのステージの移動方向に光学ユニット41を移動させる駆動モータとを有していてもよい。移動部43が基板31を移動させる場合も同様である。そのようにして、ライン光を用いて基板31の各位置における高さを取得することができる。その高さは、例えば、基板31の表面を基準とする高さであってもよい。光切断法による高さの取得方法の詳細については、例えば、上記特許文献1を参照されたい。
複数のLED53は、2次元の撮影画像を撮影するための照明に用いられる。その複数のLED53は、傘状部材52の内側に、撮影部54の光軸を中心として円環状に配置されてもよい。また、そのLED53は、例えば、図2で示されるように、円環の半径が異なるごとに、異なる角度で基板31を照明してもよい。その場合には、複数のLED53は、異なる角度ごとに異なる色であってもよい。例えば、半径の小さい円環(すなわち、光軸に近い円環)では、赤色のLED53によって上方から基板31に赤色光を照射し、半径の大きい円環では、緑色や青色のLED53によって斜めから基板31に緑色光や青色光を照射してもよい。そのようにすることで、例えば、ハンダの表面の角度を色の違いによって検知することもできるようになる。複数のLED53によって基板31が照明されている際に、撮影部54によって基板31を撮影することにより、2次元の撮影画像を取得することができる。撮影画像取得部11は、その2次元の撮影画像を、例えば、1回の撮影で取得してもよく、または、移動部43によって光学ユニット41と基板31とを相対的に移動させながら撮影した複数の画像を合成することによって取得してもよい。
なお、上述のように、光切断法以外の方法によって3次元撮影画像が取得されてもよい。3次元撮影画像を取得する方法はすでに公知であるため、その方法に関する詳細な説明は省略する。また、3次元撮影画像が取得された後に、取得された3次元撮影画像上の位置と基板上の位置との対応関係が分かるようになることが好適である。基板上のある位置に対応する3次元撮影画像上の位置の特定、または、その逆の特定ができるようになるためである。対応関係は、例えば、3次元撮影画像と、基板の座標系との対応付けによって行われてもよい。3次元撮影画像と基板との対応付けは、手動で行われてもよく、または、自動で行われてもよい。前者の場合には、例えば、基板上のあらかじめ決められた位置に対応する3次元撮影画像上の位置を、作業者が手作業で入力することによって両者の対応付けが行われてもよい。後者の場合には、例えば、3次元撮影画像上のあらかじめ決められた特徴点が特定され、その特定された特徴点を用いて両者の対応付けが行われてもよい。また、撮影画像取得部11は、被検査基板の外観検査のために、被検査基板の3次元撮影画像をも取得してもよい。
記憶部12では、部品位置情報が記憶される。部品位置情報は、装着位置を含む情報である。装着位置は、良品基板に対応する被検査基板において部品が装着される位置である。すなわち、部品が装着される、被検査基板上の位置が装着位置である。良品基板に対応する被検査基板とは、良品基板と同様に部品が実装される基板であり、基板検査装置1によって設定された外観検査の対象となる基板である。なお、「良品基板」と「被検査基板」とを区別しない場合には、単に「基板」と呼ぶこともある。装着位置は、部品が装着される設計上の位置であってもよい。装着位置は、例えば、チップマウンタ等によって部品が被検査基板に実装される際に部品を実装する位置として用いられてもよい。また、装着位置は、例えば、基板の座標系における座標であってもよい。また、装着位置は、例えば、基板上の部品の中心位置を示す情報であってもよい。その装着位置は、基板の表面における位置、すなわち2次元平面における位置であり、高さの情報を含んでいなくてもよい。部品位置情報は、装着位置に装着される部品の種類をも含んでいてもよい。また、部品位置情報は、装着位置や部品の種類以外の情報を含んでいてもよい。例えば、部品位置情報は、図4で示されるように、部品ごとに、部品を識別する部品IDと、装着位置と、装着角度と、部品の種類とを有する情報であってもよい。装着角度は、被検査基板において部品が装着される角度である。例えば、チップマウンタ等によって部品が被検査基板に実装される際に、基準となる角度から装着角度に応じた回転がなされた後に実装されてもよい。
また、記憶部12では、対応情報も記憶される。対応情報は、部品の種類と、その部品の種類に応じた部品の外観検査の内容とを対応付ける情報である。部品の外観検査の内容は、例えば、外観検査の項目であってもよい。外観検査の項目は、外観検査の種類であると考えてもよい。外観検査の項目(種類)は、例えば、実装された部品のずれ(例えば、位置や角度、高さ等に関するずれ)に関する検査である実装ずれ検査、ハンダの状態に関する検査であるハンダ検査、リード付きICのリード部分のずれ、浮き、ハンダの状態、ショート等に関するリード検査、部品やハンダ等の体積に関する体積検査、部品のサイズに関するサイズ検査等であってもよい。対応情報は、任意の部品の種類から、その部品の種類に対応する外観検査の内容を取得することができる情報であれば、どのような情報であってもよい。例えば、図5で示されるように、部品の種類と、その部品の種類について実行される外観検査の項目を示すフラグとを対応付ける情報であってもよい。図5で示される対応情報において、ある部品の種類に対応してフラグ「1」の設定されている外観検査は、その部品の種類に関する外観検査として設定され、ある部品の種類に対応してフラグ「0」の設定されている外観検査は、その部品の種類に関する外観検査として設定されないことになる。具体的には、図5の対応情報によって、チップ抵抗については、位置、角度、高さに関する実装ずれ検査と、ハンダ検査とが設定されることになる。
記憶部12では、部品位置情報や対応情報以外の情報が記憶されてもよい。例えば、撮影画像取得部11によって取得された撮影画像や、形状情報取得部13によって取得された形状情報等が記憶部12で記憶されてもよい。記憶部12に部品位置情報等の情報が記憶される過程は問わない。例えば、記録媒体を介して情報が記憶部12で記憶されるようになってもよく、通信回線等を介して送信された情報が記憶部12で記憶されるようになってもよく、または、入力デバイスを介して入力された情報が記憶部12で記憶されるようになってもよい。記憶部12での記憶は、RAM等における一時的な記憶でもよく、または、長期的な記憶でもよい。記憶部12は、所定の記録媒体(例えば、半導体メモリや磁気ディスク、光ディスクなど)によって実現され得る。
形状情報取得部13は、部品位置情報に含まれる装着位置に対応する良品基板の位置における部品の形状に関する形状情報を、3次元撮影画像に含まれる高さ情報を用いて取得する。3次元撮影画像に含まれている高さ情報を用いることにより、基板の表面よりも高い位置を特定することができる。したがって、形状情報取得部13は、基板の表面より高い位置の形状を示す形状情報を、装着位置ごとに特定してもよい。形状情報取得部13は、例えば、3次元撮影画像において、部品実装面の法線方向の高さが最も低い箇所を基板の表面としてもよく、その他の方法によって基板の表面を特定してもよい。その形状情報は、基板における部品の実装されている位置が分かる情報であることが好適である。その形状情報は、例えば、基板上に実装された部品の輪郭(外縁)を示す情報であってもよい。なお、上述のように、形状情報は、3次元撮影画像に含まれる高さ情報を用いて取得されるため、基板よりも高い範囲を示す形状情報が取得されることになる。したがって、例えば、ハンダによって部品が基板に固定されている場合には、そのハンダの領域も含む形状を示す形状情報が取得されてもよい。また、形状情報は、高さに関する情報を有していてもよい。すなわち、形状情報は、基板の面方向の形状のみでなく、高さ方向の形状をも示す情報であってもよい。例えば、形状情報は、ある部品について、高さごとに輪郭を示す情報であってもよい。例えば、装着位置が、部品の中心位置を示す場合には、形状情報取得部13は、3次元撮影画像において、装着位置に対応する位置を特定し、その特定した位置から連続している、基板の表面よりも高い領域を特定することによって、部品の形状を特定してもよい。具体的には、形状情報の取得対象の部品がリード付きICである場合には、図9で示されるように、装着位置で示される位置から四方に高さの変化を探索することにより、リード付きICの輪郭を取得することができる。特にこの場合には、チップの部分の高さと、リードの部分の高さとが異なるため、高さの変化の探索において、そのことも検知することができる。図9において、網掛けの領域がチップの部分に対応し、黒塗りの領域がリードの部分に対応している。形状情報が有する高さに関する情報は、例えば、高さの値(例えば、4mm等)であってもよく、高さの順序(例えば、「最も高い」「2番目に高い」等)であってもよい。高さの順序は、1個の部品における順序であってもよい。図9で示されるリード付きICに対応する形状情報が高さの順序をも含んでいる場合には、その形状情報において、チップの輪郭に高さの情報「最も高い」が対応付けられ、リードの輪郭に高さの情報「2番目に高い」が対応付けられてもよい。そのように複数段階の高さを特定する際には、例えば、部品に関する高さを複数段階に分ける必要がある。その複数段階に分ける方法としては、例えば、あらかじめ決められた高さごとにグルーピングする方法や、近い値の高さごとにグルーピングする方法、クラスタリングの手法を用いて分類する方法などを用いてもよい。なお、形状情報が高さの順序をも有する場合に、その高さの順序は、部品本体に対応する「最も高い」と、リードやハンダ等に対応する「それ以外の高さ」との2段階であってもよい。形状情報取得部13は、部品位置情報に含まれる各装着位置に対応する部品、すなわち3次元撮影画像に含まれる各部品について、形状情報を取得することが好適である。取得された形状情報は、記憶部12に蓄積されてもよい。その際に、例えば、図7で示されるように、部品を識別する情報(例えば、部品ID等)に対応付けて、各部品の形状情報が記憶されてもよい。なお、図7において、形状情報F101は、例えば、部品ID「IC101」で識別される部品の輪郭を示す情報であってもよく、高さに関する情報をもさらに有する情報であってもよい。また、形状情報取得部13は、被検査基板の外観検査のために、被検査基板の3次元撮影画像の高さ情報を用いて、装着位置に対応する被検査基板の位置における形状情報をも取得してもよい。
表示部14は、記憶部12で記憶されている情報等を表示する。表示部14は、例えば、3次元撮影画像を表示してもよい。また、表示部14は、表示対象の3次元撮影画像上において、部品位置情報に含まれる装着位置に対応する位置が分かる表示を行ってもよい。具体的には、3次元撮影画像上の装着位置に対応する位置に、装着位置であることを示す図形を表示してもよい。また、表示部14は、ユーザから部品の種類を受け付けるためのインターフェースを表示してもよい。具体的には、図8で示されるように、部品の種類の受け付け画面を表示してもよい。また、表示部14がそれら以外の表示を行ってよいことは言うまでもない。
なお、表示部14は、それらの表示を行う表示デバイス(例えば、液晶ディスプレイや有機ELディスプレイなど)を含んでもよく、または含まなくてもよい。また、表示対象の表示は、別の装置においてなされてもよい。その場合には、表示部14は、装置の外部に対して表示対象の情報を送信するものであってもよい。また、表示部14は、ハードウェアによって実現されてもよく、または表示デバイスを駆動するドライバ等のソフトウェアによって実現されてもよい。
部品種類取得部15は、部品位置情報に含まれる装着位置に装着される部品の種類を取得する。部品種類取得部15が部品の種類を取得する方法は問わない。例えば、部品種類取得部15は、装着位置に装着される部品の種類を、ユーザから受け付けてもよい。すなわち、部品の種類の取得は、部品の種類の受け付けであってもよい。具体的には、図8で示されるように、表示部14によって3次元撮影画像と、その3次元撮影画像上の装着位置に対応する位置を示す指示図形81とが表示された場合に、部品種類取得部15は、その表示に応じてユーザが入力した、指示図形81に対応する部品の種類を受け付けてもよい。なお、図8では、指示図形81の形状が正方形状である場合について示しているが、指示図形81は、例えば、矩形状や、円形状、丸形状、多角形状など、その他の形状であってもよい。また、例えば、部品種類取得部15は、装着位置に装着される部品の種類を、部品位置情報から取得してもよい。具体的には、図4で示されるように、部品位置情報において、装着位置と部品の種類とが対応付けられている場合には、部品種類取得部15は、その部品位置情報を用いて、装着位置に対応する部品の種類を読み出してもよい。また、例えば、部品種類取得部15は、装着位置に装着される部品の種類を、その装着位置に対応する形状情報、すなわち、その装着位置で取得された形状情報を用いて取得してもよい。具体的には、形状情報が部品の形状の輪郭を示す情報である場合には、部品種類取得部15は、パターンマッチング等を用いることによって、形状情報に対応する部品の種類を特定してもよい。形状情報に高さに関する情報も含まれている場合には、その情報も用いることによって、より高精度な部品の種類の特定が可能となる。また、部品種類取得部15は、部品位置情報に含まれる各装着位置に対応する部品について、部品の種類を取得することが好適である。
設定部16は、良品基板に実装された部品に対応する形状情報と、その部品について部品種類取得部15によって取得された部品の種類に対応情報によって対応付けられている外観検査の内容とを用いて、その部品の外観検査に関する設定を行う。その形状情報は、形状情報取得部13によって取得されたものである。その外観検査に関する設定には、例えば、3次元撮影画像が用いられてもよく、後述するように、その3次元撮影画像に含まれる2次元の撮影画像が用いられてもよい。ある部品の外観検査に関する設定は、例えば、検査領域の設定と、検査内容の設定とによって行われてもよい。すなわち、ある部品の外観検査に関する設定を行う場合に、設定部16は、対応情報を用いて、その部品の種類に対応する外観検査の項目を特定し、その特定した各項目について、検査領域の設定と、検査内容の設定とを行ってもよい。その検査領域の設定に、形状情報が用いられてもよい。実装ずれ検査の設定を行う場合には、例えば、設定部16は、形状情報によって示される部品の形状を囲む基板上の領域を、その部品の実装ずれ検査の検査領域に設定してもよい。また、設定対象の部品の種類がリード付きICである場合であって、設定部16がそのリード付きICについてリード検査の設定を行う場合には、例えば、設定部16は、その設定対象の部品に対応する形状情報によって示されるリード部分を囲む基板上の領域を、リード検査の検査領域に設定してもよい。なお、例えば、設定部16は、形状情報が高さに関する情報を有する場合には、リード付きICにおいて、チップの部分よりも低い部分をリード部分としてもよく、リード部分の形状に関するパターンマッチング等を用いることによって、リード部分を検出してもよい。また、形状情報が高さに関する情報を有している場合であって、設定部16がハンダ検査の設定を行う場合には、例えば、設定部16は、その高さに関する情報によって部品本体の高さよりも低いことが示される部分を囲む基板上の領域を、ハンダ検査の検査領域に設定してもよい。また、ハンダ検査の設定を行う場合には、例えば、設定部16は、形状情報によって示される部品の輪郭に対してあらかじめ決められた領域を、ハンダ検査の検査領域に設定してもよい。部品の輪郭に対してあらかじめ決められた領域とは、例えば、チップ抵抗の本体の短手方向の辺に隣接する、チップ抵抗よりも外側の領域であってもよく、電解コンデンサの本体に隣接するランドの領域であってもよい。なお、検査領域は、例えば、矩形状などのあらかじめ決められた形状であってもよく、または、そうでなくてもよい。また、例えば、実装ずれ検査の検査領域は、形状情報によって示される部品の形状に対して、許容される実装の誤差以上大きい範囲であることが好適であるが、より精度の高い外観検査を実現するため、その部品の形状に対して大きくなりすぎないことが好適である。他の検査領域についても同様である。
検査内容の設定には、記憶部12で記憶されている対応情報が用いられる。ある部品に関する検査内容の設定において、設定部16は、その部品について取得された部品の種類に対応する外観検査の項目に関する設定を行う。その外観検査の項目に関する設定は、例えば、その外観検査の項目に関する基準の設定であってもよく、その外観検査の項目に関する設定値の設定(例えば、閾値の設定等)であってもよく、外観検査に関するその他の設定であってもよい。なお、基準や閾値は、例えば、被検査基板上の部品に関する基準からのずれが閾値より大きい場合には不合格であると判断され、その基準からのずれが閾値以内である場合には合格であると判断される外観検査において用いられてもよい。実装ずれ検査に関する設定において、設定部16は、例えば、実装ずれ検査の検査領域に対応する形状情報によって示される良品基板における部品の実装状況を、実装ずれ検査の基準に設定してもよい。実装ずれ検査の検査領域に対応する形状情報とは、その検査領域の設定に用いられた形状情報であってもよい。実装ずれ検査とは、例えば、位置、角度、高さの少なくともいずれかに関する実装ずれの検査であってもよい。形状情報によって示される部品の実装状況とは、例えば、部品の位置、部品の角度、部品の高さの少なくともいずれかであってもよい。なお、実装状況が部品の高さを含む場合には、形状情報に、高さに関する情報として、高さの値が含まれていることが好適である。そのような検査内容の設定が行われた場合には、外観検査の際に、例えば、被検査基板に実装された部品の位置や角度、高さに関する基準(すなわち、実装状況によって示される位置や角度、高さ)からのずれが閾値以内であるときには合格であると判断され、閾値を超えているときには不合格と判断されることになる。また、検査内容の設定において、設定部16は、リード検査の検査領域に対応する3次元撮影画像の領域の2次元画像を用いて、そのリード検査の基準を設定してもよい。すなわち、リード検査の検査領域に相当する3次元撮影画像の領域の2次元画像が、リード検査の基準の設定に用いられてもよい。なお、2次元画像をリード検査の基準の設定に用いるとは、例えば、その2次元画像に含まれる各リードに関する位置や面積、色等を基準に設定することであってもよく、その2次元画像そのものを基準に設定することであってもよい。2次元画像そのものがリード検査の基準に設定された場合には、例えば、リード検査において、その2次元画像から特定される各リードに関する位置や面積、色等が用いられてもよい。そのリード検査においては、例えば、各リードの間隔やずれ、隣接するリードのショート、リード表面の異物等が、良品基板の2次元画像を基準として検査されてもよい。ユーザが手動で特定したリード部分の2次元画像を用いた基準の設定は、従来の基板検査装置においても行われており、その詳細な説明を省略する。なお、例えば、外観検査に関する検査領域や基準、設定値等をどのように設定するのかを示す情報(例えば、検査領域をどこに設定するのかを示す情報、基準として何を用いるのかを示す情報、閾値のデフォルト値等)が、外観検査の項目ごとに図示しない記録媒体において保持されていており、設定部16は、その情報を用いて外観検査に関する設定を行ってもよい。また、検査内容の設定において、設定部16は、あらかじめ決められた閾値等を、各外観検査のデフォルトの閾値等として設定してもよい。その閾値等は、後からユーザが変更できてもよい。
次に、基板検査装置1の動作について図3のフローチャートを用いて説明する。
(ステップS101)撮影画像取得部11は、良品基板に関する3次元撮影画像を取得する。その3次元撮影画像の取得は、上述のように、例えば、2次元の撮影画像の取得と、3次元情報の取得とによって行われてもよい。
(ステップS102)形状情報取得部13は、部品位置情報に含まれる各装着位置を用いて、各装着位置に対応する良品基板の位置における形状情報をそれぞれ取得する。
(ステップS103)部品種類取得部15は、形状情報の取得された部品について、部品の種類を取得する。
(ステップS104)設定部16は、ステップ103で取得された部品の種類を用いて、その部品の種類に対応する部品の外観検査に関する設定を行う。
(ステップS105)設定部16は、次の部品が存在するかどうか、すなわち外観検査の設定が行われていない部品が存在するかどうか判断する。そして、次の部品が存在する場合には、ステップS103に戻り、そうでない場合、すなわち、3次元撮影画像上のすべての部品について外観検査に関する設定が終了した場合には、外観検査の設定に関する一連の処理を終了する。なお、ステップS103に戻った場合には、形状情報の取得が行われた部品のうち、まだ外観検査の設定が行われていない部品について、部品の種類の取得や部品の種類に応じた外観検査の設定が行われることになる。
なお、図3のフローチャートにおける処理の順序は一例であり、同様の結果を得られるのであれば、各ステップの順序を変更してもよい。例えば、すべての部品に関する形状情報を一括して取得するのではなく、部品の種類の取得や外観検査の設定を行う部品ごとに、形状情報の取得を行ってもよい。
次に、本実施の形態による基板検査装置1の動作について、具体例を用いて説明する。この具体例では、記憶部12において、図4で示される部品位置情報と、図5で示される対応情報とが記憶されているものとする。図4において、部品位置情報では、部品IDと、装着位置と、装着角度と、部品の種類とが対応付けられている。図5において、対応情報では、部品の種類と、その部品の種類について設定される外観検査の項目とが対応付けられている。上述のように、フラグ「1」の設定されている外観検査の項目が、設定される外観検査の項目となる。また、この具体例では、部品の種類の取得は、ユーザから入力された部品の種類を受け付けることによって行われるものとする。
ユーザが、基板検査装置1に良品基板をセットし、外観検査の設定を行う旨の指示を入力すると、撮影画像取得部11が、3次元撮影画像の取得を行う(ステップS101)。具体的には、撮影部54は、LED53によって照明された良品基板の2次元カラー撮影画像を撮影する。その後、LED53が消灯され、照射部51によってライン光が良品基板上に照射される。そのようにライン光が照射され、移動部43によって光学ユニット41と良品基板とが相対的に移動されている際に、撮影部54は、光切断法によって良品基板の表面における高さを取得するための撮影を行う。そして、演算部42は、その撮影結果を用いて、良品基板の面方向の各位置における高さを取得する。そのようにして、高さ情報を有する2次元の撮影画像である3次元撮影画像が取得されることになる。図6Aは、良品基板31の3次元撮影画像の一例を示す図である。図6Aでは、部品71〜80の実装された良品基板31が示されている。その3次元撮影画像は、紙面に垂直な方向、すなわち基板の法線方向の高さ情報を有するものである。その3次元撮影画像は記憶部12に蓄積される。また、その3次元撮影画像と、基板の座標系との対応付けが行われるものとする。その結果、図4で示される部品位置情報に含まれる装着位置に対応する3次元撮影画像上の位置を特定できるようになる。
その後、形状情報取得部13は、図4の各装着位置に対応する3次元撮影画像上の位置に存在する部品の形状情報をそれぞれ取得する(ステップS102)。具体的には、形状情報取得部13は、図4の部品位置情報に含まれる1個目の部品ID「IC101」で識別される部品(以下、「部品IC101」ということがある。他の部品についても同様である。)の装着位置(X101,Y101)を記憶部12から読み出し、その装着位置(X101,Y101)に対応する3次元撮影画像上の位置を特定し、その特定した位置から連続している、基板の表面より高い範囲である部品の輪郭を、3次元撮影画像に含まれる高さ情報を用いて特定する。同様にして、形状情報取得部13は、部品IC102等についても輪郭を特定する。その結果、例えば、図6Bで示されるように、部品71〜80のそれぞれについて、部品の輪郭を示す部品領域71a〜80aが取得される。図6Bにおいて、部品領域71a〜80aによって、良品基板31の表面よりも高い範囲が示されている。その後、形状情報取得部13は、上述のように、各部品について、最も高い領域と、それ以外の領域とを特定する。図6Cは、各部品に関する最も高い領域と、それ以外の領域とを示す図である。図6Cにおいて、実線で示される領域71b〜80bが、それぞれ最も高い領域であり、破線で示される領域71c,72c,75c,76cが、それぞれ最も高い領域以外の領域である。形状情報取得部13は、それらの各領域と、最も高い領域の高さの値とを示す形状情報を、部品IDに対応付けて、図7で示されるように、記憶部12に蓄積する。
次に、部品種類取得部15は、図4の部品位置情報に含まれる1個目の部品IC101について、部品の種類を受け付ける(ステップS103)。具体的には、まず、表示部14が、図8で示されるように2次元の撮影画像と、部品の種類を受け付けるためのインターフェースとを表示する。その表示において、部品の種類の受け付け対象の部品が、指示図形81によって特定されている。表示部14は、例えば、1個目の部品IC101に対応する装着位置(X101,Y101)を記憶部12から読み出し、その装着位置に対応する2次元の撮影画像上の位置に指示図形81を表示してもよい。そして、ユーザが、その指示図形81に対応する部品の種類「リード付きIC」を選択し、「OK」ボタンを選択することによって、その部品の種類の選択を確定すると、部品種類取得部15によって、部品の種類「リード付きIC」が取得され、その部品の種類が設定部16に渡される。
部品の種類「リード付きIC」を受け取ると、設定部16は、記憶部12で記憶されている対応情報を参照し、その部品の種類に対応するフラグが「1」である外観検査の設定を行う(ステップS104)。具体的には、部品の種類「リード付きIC」には、位置、角度、高さに関する実装ずれ検査と、リード検査とが対応付けられているため、設定部16は、それらの外観検査の設定を行う。設定部16は、まず、外観検査の設定対象である部品IC101に対応する形状情報F101を読み出し、その形状情報F101で示される部品IC101の形状を囲む基板上における領域、すなわち図6Dで示される領域82を、実装ずれ検査の検査領域A101に設定する。また、その設定において、設定部16は、形状情報F101によって示される部品IC101の輪郭B101を、位置に関する実装ずれ検査の基準に設定し、形状情報F101によって示される部品IC101の角度、例えば、部品本体の所定の箇所の角度D101を、角度に関する実装ずれ検査の基準に設定し、形状情報F101によって示される最も高い領域の高さの値E101を、高さに関する実装ずれ検査の基準に設定する。また、設定部16は、実装ずれ検査の位置、角度、高さのそれぞれについて、あらかじめ決められている閾値TH101,TH102,TH103をそれぞれ設定する。次に、設定部16は、形状情報F101で示される最も高い領域以外の領域であるリード部分を囲む基板上における領域、すなわち図6Eの領域83,84をそれぞれ、リード検査の検査領域A102,A103に設定する。また、その設定において、設定部16は、そのリード検査の領域83,84にそれぞれ対応する3次元撮影画像の領域の2次元画像G101,G102を、それぞれのリード検査に関する基準に設定する。すなわち、リード検査の際には、基準となる2次元画像と比較することにより、ハンダの状態や、各リードの間隔等が検査されることになる。また、設定部16は、リード検査におけるハンダの状態や各リードの間隔等について、あらかじめ決められている閾値の集合TH104を設定する。その結果、部品IC101については、図10で示されるように、外観検査に関する設定が行われることになる。
その後、2個目以降の部品IC102等についても同様に、部品の種類の取得と、その部品の種類に応じた外観検査の設定がそれぞれ行われることになる(ステップS105,S103,S104)。そのようにして、基板31上の各部品に関する外観検査の設定が完了することになる。
なお、この具体例では、図5で示される対応情報を用いて、実装ずれ検査やリード検査、ハンダ検査に関する設定が行われる場合について説明したが、設定対象の検査内容はそれら以外のものであってもよい。例えば、サイズ検査や、体積検査等が行われてもよい。サイズ検査は、例えば、部品のサイズがあらかじめ決められた範囲内であるかどうかに関する検査であり、体積検査は、例えば、部品の体積や部品の一部の体積、ハンダの体積が、あらかじめ決められた範囲内であるかどうかに関する検査であってもよい。
また、この具体例では、部品位置情報に部品の種類も含まれる場合について説明したが、その部品位置情報に含まれている部品の種類が部品の種類の取得に用いられない場合には、部品位置情報は、部品の種類を含んでいなくてもよい。
また、この具体例では、説明の便宜上、3次元撮影画像において高さ情報を用いて取得された部品の輪郭が、部品の形状と同じである場合(例えば、図6A,図6B参照)について説明したが、実際には、高さ情報を用いて取得された部品の輪郭は、ハンダ付けに用いられたハンダ等があることによって、凹凸のある複雑な輪郭となり得る。そのため、例えば、チップ抵抗についても、最も高い領域以外の領域を含む形状情報が取得されることになる。
以上のように、本実施の形態による基板検査装置1によれば、基板に実装される部品ごとの外観検査の設定を自動的に行うことができる。したがって、その設定を行っていた作業者の負担が軽減されることになる。また、その設定を自動的に行うことによって、例えば、検査領域の設定漏れが生じたり、不適切な検査項目が設定されたりする事態を回避することができるようになる。また、部品種類取得部15が、部品位置情報に含まれている部品の種類を取得したり、パターンマッチング等によって部品の種類を取得したりする場合には、ユーザが部品の種類を入力する必要がなくなり、ユーザの負担がさらに軽減されることになる。
なお、設定部16によって行われた部品の外観検査に関する設定結果に、ユーザによって、設定値等が追加されてもよく、設定部16によって設定された内容が変更されてもよい。そのような場合であっても、ユーザがはじめからすべての設定を行う場合と比較して、ユーザの負担が軽減され、また、設定ミスを低減することができる。
また、本実施の形態では、形状情報取得部13が部品の種類に関係なく形状情報を取得する場合について説明したが、形状情報取得部13は、部品の種類に応じた形状情報を取得してもよい。例えば、部品種類取得部15が形状情報を用いないで部品の種類を取得する場合には、まず、部品種類取得部15が部品の種類を取得した後に、形状情報取得部13が、取得された部品の種類に応じた形状情報を取得してもよい。部品の種類に応じた形状情報とは、例えば、部品の種類がリード付きICや電解コンデンサである場合には、最も高い領域と、それ以外の領域とを区別可能な形状情報であり、部品の種類がリードなしICやチップ抵抗である場合には、最も高い領域のみを示す形状情報であってもよい。また、部品種類取得部15が形状情報を用いて部品の種類を取得する場合には、まず、形状情報取得部13によって部品の最外縁の輪郭を示す形状情報が取得され、その形状情報を用いて部品種類取得部15によって部品の種類が取得され、その取得された部品の種類に応じて、再度、最も高い領域以外の領域に関する形状情報が取得されてもよい。このように、形状情報の取得は、段階的に行われてもよい。そのことは、部品種類取得部15が形状情報を用いて部品の種類を取得する場合以外であっても同様である。例えば、ある部品について、設定部16が形状情報に含まれる高さに関する情報を用いてハンダ検査の設定を行う場合に、形状情報取得部13が、その部品について、高さに関する情報(例えば、高さの値等)を取得してもよい。
また、本実施の形態では、基板検査装置1が表示部14を備える場合について説明したが、そうでなくてもよい。例えば、部品の種類の受け付け等を行わない場合には、基板検査装置1は、表示部14を備えていなくてもよい。
また、上記実施の形態において、各処理または各機能は、単一の装置または単一のシステムによって集中処理されることによって実現されてもよく、または、複数の装置または複数のシステムによって分散処理されることによって実現されてもよい。
また、上記実施の形態において、各構成要素間で行われる情報の受け渡しは、例えば、その情報の受け渡しを行う2個の構成要素が物理的に異なるものである場合には、一方の構成要素による情報の出力と、他方の構成要素による情報の受け付けとによって行われてもよく、または、その情報の受け渡しを行う2個の構成要素が物理的に同じものである場合には、一方の構成要素に対応する処理のフェーズから、他方の構成要素に対応する処理のフェーズに移ることによって行われてもよい。
また、上記実施の形態において、各構成要素が実行する処理に関係する情報、例えば、各構成要素が受け付けたり、取得したり、選択したり、生成したり、送信したり、受信したりした情報や、各構成要素が処理で用いる閾値や数式、アドレス等の情報等は、上記説明で明記していなくても、図示しない記録媒体において、一時的に、または長期にわたって保持されていてもよい。また、その図示しない記録媒体への情報の蓄積を、各構成要素、または、図示しない蓄積部が行ってもよい。また、その図示しない記録媒体からの情報の読み出しを、各構成要素、または、図示しない読み出し部が行ってもよい。
また、上記実施の形態において、各構成要素等で用いられる情報、例えば、各構成要素が処理で用いる閾値やアドレス、各種の設定値等の情報がユーザによって変更されてもよい場合には、上記説明で明記していなくても、ユーザが適宜、それらの情報を変更できるようにしてもよく、または、そうでなくてもよい。それらの情報をユーザが変更可能な場合には、その変更は、例えば、ユーザからの変更指示を受け付ける図示しない受付部と、その変更指示に応じて情報を変更する図示しない変更部とによって実現されてもよい。その図示しない受付部による変更指示の受け付けは、例えば、入力デバイスからの受け付けでもよく、通信回線を介して送信された情報の受信でもよく、所定の記録媒体から読み出された情報の受け付けでもよい。
また、上記実施の形態で説明した各構成要素のうち、ソフトウェアにより実現可能な構成要素については、プログラムを実行することによって実現されてもよい。例えば、ハードディスクや半導体メモリ等の記録媒体に記録されたソフトウェア・プログラムをCPU等のプログラム実行部が読み出して実行することによって、各構成要素が実現され得る。その実行時に、プログラム実行部は、記憶部や記録媒体にアクセスしながらプログラムを実行してもよい。また、そのプログラムは、サーバなどからダウンロードされることによって実行されてもよく、所定の記録媒体(例えば、磁気ディスクや半導体メモリなど)に記録されたプログラムが読み出されることによって実行されてもよい。
また、本発明は、以上の実施の形態に限定されることなく、種々の変更が可能であり、それらも本発明の範囲内に包含されるものであることは言うまでもない。