本開示の実装装置の実施形態について図面を参照しながら以下に説明する。図1は、本開示の実装装置の一例である実装装置11を備えた実装システム10の概略説明図である。図2は、実装ヘッド21のロータリーヘッド22の下面図である。図3は、複数の基準マーク28の拡大図である。実装システム10は、例えば、部品Pを基板Sに実装する処理を実行するシステムである。この実装システム10は、実装装置11と、管理装置50とを備えている。実装システム10は、部品Pを基板Sに実装する実装処理を実施する複数の実装装置11が上流から下流に配置された実装ラインとして構成されている。図1では、説明の便宜のため実装装置11を1台のみ示している。なお、本実施形態において、左右方向(X軸)、前後方向(Y軸)及び上下方向(Z軸)は、図1,2に示した通りとする。
実装装置11は、図1に示すように、基板処理部12と、実装部13と、部品供給部30と、撮像部35と、表示操作部37と、制御部41とを備えている。基板処理部12は、基板Sの搬入、搬送、実装位置での固定、搬出を行うユニットである。基板処理部12は、図1の前後に間隔を開けて設けられ左右方向に架け渡された1対のコンベアベルトを有している。基板Sはこのコンベアベルトにより搬送される。
実装部13は、部品Pを部品供給部30から採取し、基板処理部12に固定された基板Sへ配置するユニットである。実装部13は、ヘッド移動部20と、実装ヘッド21と、を備えている。ヘッド移動部20は、ガイドレールに導かれてXY方向へ移動するスライダと、スライダを駆動するモータと、モータの回転量を検出可能なエンコーダ20aと、を備えている。実装ヘッド21は、スライダに取り外し可能に装着されており、ヘッド移動部20によりXY方向へ移動する。
実装ヘッド21は、図1,2に示すように、ロータリーヘッド22と、複数(ここでは12個)のノズルホルダ23と、複数(ここでは12個)の吸着ノズル24と、R軸駆動装置25と、Q軸駆動装置26と、Z軸駆動装置27と、を備えている。ロータリーヘッド22は、図2に示すように、複数の吸着ノズル24の各々を保持する複数のノズルホルダ23が配置された円筒状の部材である。複数のノズルホルダ23は、円筒状の部材であり、ロータリーヘッド22の中心軸と同軸の円周上に等間隔(ここでは30度間隔)で配置されている。複数のノズルホルダ23の各々の下端には、吸着ノズル24が取り外し可能に装着されている。吸着ノズル24は、負圧を利用して部品Pを採取して保持する採取部材である。図2では、4つの吸着ノズル24が部品Pを保持した状態を示している。この採取部材は、吸着ノズル24のほか、部品Pを機械的に保持するメカニカルチャックなどとしてもよい。
ロータリーヘッド22の中央の下面には、図2に示すように円柱状の突出部29が配設されている。突出部29の下面には、複数のヘッド基準マークの一例である複数(ここでは4個)の基準マーク28が設けられている。複数の基準マーク28の各々は、例えば円盤状の部材であり、下面視で円形状に形成されている。複数の基準マーク28は、ロータリーヘッド22の中心軸と同軸の円周上に等間隔(ここでは90度間隔)で配置されている。4個の基準マーク28を、図2の12時の位置にあるノズル24から順に右回りに第1〜第4基準マーク28a〜28dと称する。この複数の基準マーク28は、撮像部35によって部品Pと共に撮像される。基準マーク28は、突出部29すなわち基準マーク28の撮像時の背景となる部材との境界が鮮明となるように、色彩が定められている。図2及び図3では示していないが、本実施形態では基準マーク28の下面が白色、突出部29の下面が黒色であるものとした。
R軸駆動装置25,Q軸駆動装置26,及びZ軸駆動装置27は、それぞれ、駆動モータと、駆動モータの回転量を検出可能なエンコーダ25a〜27aと、を備えている。R軸駆動装置25は、ロータリーヘッド22の中心軸(R軸)を回転軸としてロータリーヘッド22(突出部29及び複数の基準マーク28を含む)を軸回転させる(図2の破線矢印参照)。これにより、R軸駆動装置25は、複数のノズルホルダ23及び複数の吸着ノズル24を円周方向に旋回(公転)させる。Q軸駆動装置26は、複数のノズルホルダ23を同期して回転(自転)させる(図2の矢印参照)。これにより、Q軸駆動装置26は、複数の吸着ノズル24及び保持された部品Pを回転(自転)させる。Z軸駆動装置27は、複数のノズルホルダ23のうち、所定の昇降位置(ここでは図2における9時の位置)にあるノズルホルダ23をZ軸方向に移動させることで、吸着ノズル24や保持された部品Pを昇降させる。吸着ノズル24は、昇降によって、部品供給部30から供給される部品Pを採取して保持したり、保持した部品Pを基板Sに装着したりする。
部品供給部30は、実装部13へ部品Pを供給するユニットである。この部品供給部30には、部品Pを保持したテープを有するフィーダが複数装着されている。このフィーダは、テープに保持された部品Pを採取位置へ送り出す。この部品供給部30は、部品Pを複数配列して載置するトレイを有するトレイユニットを備えていてもよい。
撮像部35は、画像を撮像する装置であり、実装ヘッド21に採取され保持された1以上の部品Pの画像を撮像するパーツカメラである。この撮像部35は、部品供給部30と基板処理部12との間に配置されている。この撮像部35の撮像範囲は、撮像部35の上方である。撮像部35は、部品Pを保持した実装ヘッド21が撮像部35の上方を通過する際に、実装ヘッド21に保持された部品Pと複数の基準マーク28とを含む画像である部品画像を撮像し、撮像した部品画像データを制御部41へ出力する。
表示操作部37は、実装装置11の前面に配設されており、例えばタッチパネル及び操作ボタンを備えている。表示操作部37は、作業者への各種情報の表示や作業者からの各種操作の入力を行う。
制御部41は、図1に示すように、CPU42を中心とするマイクロプロセッサとして構成されており、各種データを記憶する記憶部43を備えている。制御部41は、基板処理部12,ヘッド移動部20,実装ヘッド21,部品供給部30,撮像部35,及び表示操作部37へ制御信号を出力し、エンコーダ20a,25a〜27a及び表示操作部37からの信号や、撮像部35からの画像データを入力する。制御部41は、エンコーダ20a,25a〜27aからの信号に基づいてヘッド移動部20,R軸駆動装置25,Q軸駆動装置26,及びZ軸駆動装置27を制御することで、実装ヘッド21の位置,吸着ノズル24の位置,部品Pの向きなどを制御する。
管理装置50は、実装システム10の各装置の情報を管理するコンピュータである。管理装置50は、図1に示すように、制御部51と、表示部58と、入力装置59とを備えている。制御部51は、CPU52を中心とするマイクロプロセッサとして構成されており、処理プログラムや生産プログラムなどの各種データを記憶する記憶部53を備えている。生産プログラムには、実装システム10中の複数の実装装置11の各々について、実装装置11がどの基板Sのどの位置にどの順序でどの部品Pを実装するかの情報、及びそのように実装した基板Sを何枚作製するかの情報などを含んでいる。表示部58は、各種情報を表示する液晶画面である。入力装置59は、作業者が各種指令を入力するキーボード及びマウス等を含む。
次に、こうして構成された本実施形態の実装システム10の動作、具体的には、実装装置11が部品Pを基板S上に配置する実装処理について説明する。図4は、制御部41のCPU42により実行される実装処理ルーチンの一例を示すフローチャートである。このルーチンをCPU42が実行するためのプログラムは、例えば記憶部43に記憶されている。実装処理ルーチンは、管理装置50の入力装置59などを介した作業者による開始指示により実行される。実装処理ルーチンでは、CPU42は、管理装置50から上述した生産プログラムの情報を取得し、取得した情報に基づいて部品Pを所定の順序で基板Sの所定の位置に順次配置していく。
このルーチンを開始すると、制御部41のCPU42は、まず、基板処理部12により基板Sの搬入処理を行う(S100)。次に、CPU42は、部品供給部30により供給された部品Pを複数の吸着ノズル24に吸着させる(S110)。具体的には、CPU42は、R軸駆動装置25を駆動して各吸着ノズル24を順次昇降位置に旋回移動させ、昇降位置に位置する吸着ノズル24をZ軸駆動装置27によりZ軸方向に昇降させて部品Pの採取及び吸着を行わせる。
続いて、CPU42は、ヘッド移動部20により実装ヘッド21を撮像部35の上方に移動させ、撮像部35に部品Pと複数の基準マーク28とを含む部品画像を撮像させる(S120)。これにより、例えば図2に示すように実装ヘッド21を下方から見た部品画像が撮像される。
続いて、CPU42は、部品画像中の複数の基準マーク28の各々の位置を検出する(S130)。本実施形態では、CPU42は、複数の基準マーク28の各々の位置として、各々の円の中心位置を検出する。例えば、図3に示す第4基準マーク28dの汚れGが生じていない場合には、CPU42は、複数の基準マーク28の各々の位置として、図3の点A1〜A4を検出する。CPU42は、基準マーク28の中心位置の検出を、例えば寸法計測を用いた手法で以下のように行う。図5は、第1基準マーク28aの中心位置を検出する様子を示す説明図である。CPU42は、まず、部品画像中の第1基準マーク28aが存在するはずの領域を横切るように予め設定された長方形の領域60内の各画素の明暗を調べていき、長方形の長手方向に沿って明暗が変化するエッジEを検出する(図5A)。領域60の大きさは、例えば長手方向が第1基準マーク28aの直径の2倍の長さ、短手方向が3〜5画素分の長さに設定されている。領域60の位置は、例えば第1基準マーク28aの中心が存在するはずの位置として設定された点62を基準として、予め設定されている。CPU42は、領域60の長手方向の両側の2個のエッジEを検出する。CPU42は、図5Aの上側のエッジEを、例えば、領域60内でエッジ(第1基準マーク28aと突出部29との境界)として検出される第1基準マーク28aの上側の円弧に沿った複数の画素のうち、長手方向で最も領域60の外側(ここでは図5Aの上側)に近い位置の画素として検出する。図5Aの下側のエッジEについても同様である。また、CPU42は、検出した2個のエッジE間の距離(=第1基準マーク28aの直径寸法に相当する値)を測定しておく。続いて、CPU42は、領域60を点62を中心として所定角度(ここでは18°)回転させて、回転後の領域60内で同様に2個のエッジEを検出する(図5B)。同様に、CPU42は、領域60を所定角度ずつ回転させて、複数個(ここでは20個)のエッジEを検出する(図5C)。そして、CPU42は、検出された第1基準マーク28aの20個のエッジEと、第1基準マーク28aと同じ直径の円の輪郭と、の位置ずれが最も小さくなるようなその円の位置を、例えば最小二乗法を用いて導出する。CPU42は、こうして導出した位置の円の中心点66を、第1基準マーク28aの中心位置(=第1基準マーク28aの位置であり、図3の点A1)として検出する。ただし、CPU42は、上述した2個のエッジE間の距離が異常とみなせる(第1基準マーク28aの直径に比べて大きすぎる又は小さすぎる)場合には、そのようなエッジEは除外して最小二乗法を行う。
次に、CPU42は、検出された複数の基準マーク28の各々の位置に基づいて、複数の基準マーク28間の位置関係を表す位置関係情報を導出する(S140)。本実施形態では、CPU42は、位置関係情報として複数の基準マーク28間の6個の距離を導出する。例えば、図3に示す第4基準マーク28dの汚れGが生じていない場合には、CPU42は、点A1〜A4間の距離として、距離L1〜L6を導出する。続いて、CPU42は、導出した位置関係情報に基づいて、複数の基準マーク28のうち1以上の異常の有無を判定する(S150)。本実施形態では、CPU42は、導出された位置関係情報で表される位置関係が、異常がないとみなせる所定の位置関係にあるか否かに基づいて異常の有無を判定する。具体的には、距離L1〜L6の各々について、異常がないとみなせる数値範囲である正常範囲を予め記憶部43に記憶しておき、距離L1〜L6の各々がこの正常範囲に含まれるか否かに基づいて異常の有無を判定する。正常範囲は、例えば、複数の基準マーク28の中心位置同士の設計値に基づき、設計値との差が所定の許容範囲内となるような数値範囲として予め定められている。図3に示す第4基準マーク28dの汚れGが生じていない場合には、導出される距離L1〜L6は複数の基準マーク28の中心位置同士の距離の設計値とほぼ等しいから、CPU42は距離L1〜L6が全て正常範囲内にあり異常なしと判定する。
その後、CPU42は、S150の判定結果が異常ありであったか否かを調べる(S160)。判定結果が異常なしであった場合には、CPU42は、複数の基準マーク28の位置に基づいて実装ヘッド21に保持された部品Pの位置を認識する(S170)。例えば図3に示す第4基準マーク28dの汚れGが生じていない場合には、CPU42は、まず、S130で検出した複数の基準マーク28の各々の位置(点A1〜A4)の平均位置(点A1〜A4のX座標の平均値とY座標の平均値とで表される位置であり、図3の点C)を導出し、導出した平均位置を実装ヘッド21の基準点とする。点A1〜A4が正しく検出されていれば、この基準点は実装ヘッド21のロータリーヘッド22の回転軸(R軸)と一致する。続いて、CPU42は、基準点と点A1〜点A4の各々とを結んだ4本の線の傾きの平均値に基づいて、実装ヘッド21のロータリーヘッド22の回転位置(回転角度)を導出する。次に、CPU42は、導出した実装ヘッド21の位置(基準点の位置及び回転位置)に基づいて、部品画像中の複数の吸着ノズル24の各々の中心位置を導出する。この処理は、例えば予め記憶部43に記憶されたリファレンス画像(部品Pを吸着していない実装ヘッド21の画像)を用いて行う。そして、CPU42は、導出した複数の吸着ノズル24の各々の中心位置を基準として、部品画像中の複数の部品Pの各々の位置(XY方向の位置及び回転位置)を認識する。部品PのXY方向の位置は、例えば部品PのXY方向の中心位置としてもよい。
S170の後、CPU42は、認識された位置に基づいて部品Pを基板S上の実装すべき位置(実装位置)に配置するよう実装ヘッド21を移動させる(S180)。具体的には、CPU42は、まず、S170で認識された部品PのXY方向の位置に基づいて、昇降位置の吸着ノズル24に保持された部品Pが実装位置の真上に位置するように実装ヘッド21を移動させる。また、CPU42は、S170で認識された部品Pの回転位置に基づいて、Q軸駆動装置26により部品Pの回転位置を調整する。そして、CPU42は、Z軸駆動装置27によりノズルホルダ23を昇降させて部品Pを基板S上に配置する。CPU42は、これらの処理を、R軸駆動装置25により昇降位置に位置する吸着ノズル24を変更して繰り返し行い、S110で吸着した全ての部品Pを順次実装位置に配置していく。なお、CPU42は、S170の完了を待つことなくS180を開始してもよい。具体的には、CPU42は、実装ヘッド21に保持された複数の部品PのうちS170における部品Pの位置の認識が完了したものから、S180における部品Pの基板Sへの配置を行ってもよい。
CPU42は、現在の基板Sに対して実装予定の全ての部品Pの処理が完了したと判定するまで(S190)、S110〜S180の処理を繰り返す。CPU42は、S190で全ての部品Pを処理したと判定すると、基板処理部12により基板Sを搬出し(S200)、実装予定の全ての基板Sの処理が完了したか否かを判定する(S210)。CPU42は、全ての基板Sの処理が完了していないと判定すると、S100に戻り処理を繰り返し、全ての基板Sの処理が完了したと判定すると、実装処理ルーチンを終了する。
ここで、基準マーク28には、使用に伴って汚れが付着する場合がある。例えば、図3に示す第4基準マーク28dに汚れGが生じた場合を考える。この場合、S130において、CPU42は、汚れGと第4基準マーク28dとの境界をエッジEとして検出するなどにより、第4基準マーク28dの中心位置を点A4ではなく点A4’として誤検出してしまう。この状態でCPU42がS170を行うと、導出される基準点も点Cではなく点C’になるため、導出される実装ヘッド21の位置に誤差が生じ、部品画像中で導出される複数の吸着ノズル24の各々の位置にも誤差が生じる。これにより、S170で認識される部品画像中の複数の部品Pの各々の位置に誤差が生じて、基板S上への部品Pの実装精度が低下してしまう。特に、本実施形態のようにCPU42が基準点に基づく実装ヘッド21の回転位置も加味して部品画像中の複数の吸着ノズル24の各々の中心位置を導出する場合、導出された回転位置に誤差があると複数の吸着ノズル24の位置が全体にロータリーヘッド22の周方向に沿ってずれた位置に導出される。そのため、導出される部品Pの各々の位置の誤差も大きくなりやすい。
これに対して、本実施形態では、S140及びS150を行うことで、複数の基準マーク28の各々の検出された位置が正しいか否かを検証することができる。例えば、図3で汚れGが生じている場合には、S140において、CPU42は、距離L3,L4,L6の代わりに距離L3’,L4’,L6’を導出する。そして、CPU42は、この距離L3’,L4’,L6’が正常範囲内に含まれないことなどにより、複数の基準マーク28のうち1以上に異常があることを検出できる。CPU42は、複数の基準マーク28間の位置関係情報(ここでは6個の距離の値)のうちいずれが正常範囲から外れているかによって、複数の基準マーク28のうちいずれが異常であるかを特定してもよい。例えば、CPU42は、距離L3’,L4’,L6’のうち2以上が正常範囲内に含まれない場合には、第4基準マーク28dに異常があることを特定できる。
S160において、S150の判定結果が異常ありであった場合には、CPU42は、作業者に異常を報知して(S220)、実装処理を中断し本ルーチンを終了する。例えば、CPU42は、基準マーク28に異常が生じている旨のエラー画面を表示するよう表示操作部37に信号を出力したり、エラー画面を表示部58に表示するよう管理装置50に信号を出力したりする。異常の報知は音声の出力などにより行ってもよい。
ここで、本実施形態の構成要素と本開示の構成要素との対応関係を明らかにする。本実施形態の複数の基準マーク28が本開示の実装装置の複数のヘッド基準マークに相当し、実装ヘッド21が実装ヘッドに相当し、撮像部35が撮像部に相当し、制御部41が制御部に相当する。また、S120で撮像された部品画像がマーク画像及び部品画像に相当し、S130〜S150が異常判定処理に相当し、S130及びS170が部品認識処理に相当し、S180が部品配置処理に相当する。また、S130〜S150を行う制御部41が本開示の画像処理装置の異常判定部に相当する。
以上詳述した本実施形態の実装システム10によれば、実装装置11の制御部41は、複数の基準マーク28を含むマーク画像(ここでは部品画像)に基づいて、S130〜S150の処理(異常判定処理)を行うことで、第1〜第4基準マーク28a〜28dの各々の検出された位置が正しいか否かを、第1〜第4基準マーク28a〜28d間の位置関係情報(ここではマーク間の距離)に基づいて検証することができる。したがって、実装装置11は、基準マーク28の位置の誤検出につながる異常(例えば基準マーク28の汚れ)が生じている場合に、そのことを検知できる。なお、S130で上述した寸法計測を用いた手法で基準マーク28の位置を検出する場合、例えば基準マーク28の汚れに基づいて誤検出されたエッジEが存在しても、CPU42はそのエッジEを除外することができる。そのため、CPU42は、基準マーク28が汚れていても基準マーク28の位置を精度良く検出できる。ただし、この場合でも例えば基準マーク28の汚れ方によっては誤検出されたエッジEを除外できず基準マーク28の位置の誤検出が生じることはあるため、異常判定処理を行う意義はある。
また、制御部41は、導出された位置関係情報で表される位置関係が、異常がないとみなせる所定の位置関係にあるか否か(ここでは、導出した6個の距離が記憶部43に記憶された正常範囲内にあるか否か)に基づいて異常の有無を判定する。したがって、実装装置11は、異常の有無を適切に判定できる。
また、制御部41は、部品画像中の複数の基準マーク28の位置を検出し、検出された位置に基づいて実装ヘッド21に保持された部品Pの位置を認識する部品認識処理(S130,S170)と、部品認識処理で認識された位置に基づいて部品Pを基板S上の実装位置に配置するよう実装ヘッド21を移動させる部品配置処理(S180)とを行う。そして、制御部41は、部品認識処理(S130,S170)の開始から終了までの間に異常判定処理(S130〜S150)を行う。さらに、制御部41は、部品配置処理(S180)の開始までの間に異常判定処理を行う。これにより、制御部41は、異常判定処理で異常が検出されたらS180を行うことなく異常を報知するため、基準マーク28に異常が生じた状態で部品Pを基板S上に配置してしまうことを抑制できる。したがって、不良基板の発生やそれに伴い廃棄される部品P及び基板Sの数を減らすことができる。また、制御部41は、異常判定処理と部品認識処理とで部品画像中の基準マーク28の位置を検出する処理(S130)を共通化しているから、部品認識処理の開始から終了までの間に異常判定処理を行いつつ、処理時間を短くできる。
なお、本発明は上述した実施形態に何ら限定されることはなく、本発明の技術的範囲に属する限り種々の態様で実施し得ることはいうまでもない。
例えば、上述した実施形態では、S150の判定を行うにあたり、複数の基準マーク28間の距離の正常範囲が予め記憶部43に記憶されていたが、これに限られない。例えば、CPU42は、異常判定処理(S130〜S150)を行う際に、S150で異常がなかった場合にはそのときのS140で導出した位置関係情報を記憶部43に記憶しておいてもよい。そして、CPU42は、後の異常判定処理のS150において、記憶部43に記憶された過去の異常判定処理における位置関係情報と今回の異常判定処理で導出された位置関係情報とを比較して、両者の差が所定の閾値を超えているか否かなどにより異常の有無を判定してもよい。こうしても、実装装置11は異常の有無を適切に判定できる。ここで、上述した実施形態では、所定の正常範囲は複数の基準マーク28間の距離の設計値に基づいて定められていたが、設計値と実際の値との間には誤差(公差)が存在する場合が多い。上記のように過去の異常判定処理で導出された位置関係情報は、設計値ではなく実測値に相当するから、この実測値と今回導出された位置関係情報とを比較することで、実装装置11は上述した実施形態と比べてより精度良く異常の有無を判定できる。この場合、CPU42は、過去に実行され異常がなかった場合の複数回の異常判定処理で導出された位置関係情報と、今回導出された位置関係情報とを比較することが好ましい。例えば、過去の複数回の異常判定処理で導出された位置関係情報の平均値や中央値と、今回導出された位置関係情報とを比較することが好ましい。なお、このように過去の位置関係情報を用いる場合でも、最初に異常判定処理を行う場合など過去の位置関係情報が記憶部43に記憶されていない場合には、CPU42は上述した実施形態と同様に設計値に基づく正常範囲を用いてS150を行えばよい。また、上述したS150における正常範囲が、設計値ではなく実測値に基づいて定められていてもよい。
上述した実施形態では、CPU42は、S150で複数の基準マーク28のうち1つでも異常があればS220を実行して実装処理を中断したが、これに限られない。CPU42は、S150で異常ありと判定された基準マーク28が存在し且つ異常なしと判定された基準マーク28が複数存在する場合には、S170において、異常ありと判定された基準マーク28を無視し残りの基準マーク28の位置に基づいて部品Pの位置を認識してもよい。こうすれば、実装装置11は、複数の基準マーク28の一部に位置の誤検出につながる異常が生じている場合に、異常が生じている基準マーク28に起因する部品Pの位置の認識の精度低下を抑制しつつ、S170以降の処理を続行できる。この場合、CPU42は、複数の基準マーク28に1つも異常がない場合とは異なる手法でS170を行ってもよい。例えば、CPU42は、S150で第4基準マーク28dの位置(例えば点A4’)に異常ありと判定した場合、S170において、点A4’を用いずに、点A1,A3間を結ぶ直線と、その直線に垂直且つ点A2を通る直線との交点を基準点として導出してもよい。こうすれば、位置に異常のある点A4’を無視して点A1〜A3の3点のみからロータリーヘッド22の回転軸に比較的一致する基準点を導出できるから、S170における部品Pの位置の認識の精度は低下しにくい。CPU42は、異常ありと判定された基準マーク28を無視してS170以降の処理を続行する場合でも、S220と同様に異常を作業者に報知してもよい。
上述した実施形態では、CPU42は部品認識処理の開始から終了までの間に異常判定処理を行ったが、これに限られない。例えば、CPU42は、部品認識処理の終了後(S170の終了後)から次の部品認識処理の開始(S130の開始)までの間に異常判定処理の少なくとも一部(例えば、S140及びS150)を行ってもよい。言い換えると、部品認識処理の開始から終了までの間には異常判定処理を一部しか行わないか、全く行わなくてもよい。ここで、部品認識処理は画像処理を含むため、例えば部品配置処理(S180)や、S190の後にS110を行うために実装ヘッド21を移動させる処理などの、機械的な動作を主体とする処理と比べて、CPU42の処理負担が比較的高く、時間がかかりやすい。また、CPU42は、部品認識処理で部品Pを認識したあとでなければ、S180においてその部品Pを配置することはできない。そのため、本実施形態のようにCPU42が部品認識処理の開始から終了までの間に異常判定処理を全て行うと、基準マーク28に異常が生じた状態で部品Pを基板S上に配置してしまうことは抑制できるが、全体の処理時間は長くなりやすい。これに対し、CPU42が部品認識処理の終了後から次の部品認識処理の開始前までに異常判定処理の少なくとも一部を行うことで、全体の処理時間を短くできる。例えば、CPU42は、S170の終了後且つS180の実行中に、並行してS140及びS150を行って、異常があればS180を中断して作業者に異常を報知してもよい。また、CPU42は、S180の後且つ次のS110を行う前に、実装ヘッド21が撮像部35上を通過するようにして複数の基準マーク28を含むマーク画像を撮像部35に撮像させてもよい。そして、CPU42は、S130の開始までの間(例えばS110の実行中)にこのマーク画像に基づく異常判定処理を行ってもよい。異常判定処理に用いるマーク画像は部品Pを含む画像である必要はないため、部品認識処理に用いる画像(部品画像)と異常判定処理に用いる画像(マーク画像)とを上述した実施形態のように兼用せず、このように別々に撮像してもよい。この場合は、CPU42は、上述した実施形態のように部品認識処理中と異常判定処理中とでS130を共通化できないから、マーク画像に基づいて複数の基準マーク28の位置を検出する処理を、S130とは別で異常判定処理中に行う。
部品認識処理に用いる画像(部品画像)と異常判定処理に用いる画像(マーク画像)とを別々に撮像するか否かに関わらず、CPU42は、部品認識処理が終了してから次の部品認識処理が開始されるまでの間に異常判定処理を全て行ってもよい。この場合、部品認識処理と異常判定処理とで異なる手法を用いて複数の基準マーク28の位置の検出を行ってもよい。例えば、CPU42は、S130では複数の基準マーク28の位置を処理時間が短いが検出精度の低い第1手法を用いて検出してもよい。そして、CPU42は、部品認識処理が終了してから次の部品認識処理が開始されるまでの間に行う異常判定処理では、複数の基準マーク28の各々の位置を第1手法と比べて処理時間が長いが検出精度の高い第2手法を用いて検出してもよい。そして、CPU42は、異常判定処理において、第2手法で検出された位置に基づく位置関係情報と第1手法で検出された位置に基づく位置関係情報とを比較することで異常の有無を判定してもよい。第2手法の例としては、上述した寸法計測を用いる手法が挙げられる。第1手法の例としては、テンプレートマッチングを用いる手法が挙げられる。この手法について図6を用いて説明する。例えば第1基準マーク28aの中心位置を検出する場合、CPU42は、第1基準マーク28aと同じ直径の円71の輪郭を径方向に横切るように予め設定された複数(ここでは8本)の直線72を備えたテンプレート70を用いる。CPU42は、まず、部品画像中にこのテンプレート70を配置して直線72上の各画素の明暗を調べ、いずれの直線72上でもエッジEが検出されるようなテンプレート70の位置を導出する。図6Aでは、導出された位置のテンプレート70と、そのときの直線72上の8個のエッジEとの一例を示している。続いて、CPU42は、例えば最小二乗法を用いて、検出した複数(ここでは8個)のエッジEと円71の輪郭との位置ずれが最も小さくなるような位置にテンプレート70を移動させる(図6B)。そして、移動後の円71の中心点76を、第1基準マーク28aの中心位置として検出する。この手法は、検出するエッジEの数が少ないことや、互いの距離が異常とみなせるエッジEの有無の判定を行わないことなどにより、寸法計測を用いる手法と比べて処理時間が短くて済む。一方で、この手法は、基準マーク28の一部の汚れによるエッジEの誤検出が移動後の円71の位置に影響しやすいため、基準マーク28の位置の検出精度は低い。
第1手法及び第2手法を用いる場合の例として、CPU42が、S130では第1手法を用いて複数の基準マーク28の各々の位置を検出し、S130の後にS140〜S160を行わず、S170の終了後且つS180の実行中に第2手法を用いて異常判定処理を行う場合について説明する。図7は、この場合の異常判定処理の一例を示すフローチャートである。この異常判定処理では、CPU42は、まず、直近のS120で撮像された部品画像に基づいて第2手法で複数の基準マーク28の位置を検出し(S230)、上述したS140と同様に複数の基準マーク28間の位置関係情報(ここでは6個の距離)を導出する(S240)。また、CPU42は、直近のS130で第1手法を用いて検出された複数の基準マーク28の位置に基づいて、S140と同様に複数の基準マーク28間の位置関係情報(ここでは6個の距離)を導出する(S245)。そして、CPU42は、S240で導出された6個の距離と、S245で導出された6個の距離とを比較して、両者の差が所定の閾値を超えているか否かなどにより異常の有無を判定する(S250)。その後、CPU42は、異常があった場合には(S260)、S180の処理を中断し作業者に異常を報知し(S270)、S260で異常がなければそのまま異常判定処理を終了する。このようにすることで、実装装置11は、部品認識処理のS130では高速な第1手法を用いるため、全体の処理時間を短くできる。また、第1手法は検出精度が低いため複数の基準マーク28の各々の検出位置が汚れ等の影響でずれやすいが、第2手法では汚れ等が生じても検出位置がずれにくい。そのため、上記のようにすることで、実装装置11は、部品認識処理中に第1手法で検出された複数のヘッド基準マークの位置が正しいか否かを、異常判定処理において検出精度の高い第2手法を用いて検証できる。
図7の異常判定処理において、上述した実装ヘッド21の基準点の位置を位置関係情報としてもよい。この場合、CPU42は、S240では6個の距離の代わりに実装ヘッド21の基準点を導出し、S245は省略し、S250では、S240で導出された基準点と直近のS170で導出された基準点とを比較して異常の有無を判定してもよい。あるいは、基準マーク28の各々の位置を位置関係情報としてもよい。
上述した実施形態では、CPU42は、位置関係情報として、複数の基準マーク28間の距離を導出したが、これに限られない。例えば、複数の基準マーク28の位置の平均位置(上述した基準点の位置)から複数の基準マーク28の各々の位置までの距離を位置関係情報としてもよい。また、距離などのスカラー量に限らずベクトル量を位置関係情報としてもよい。
上述した実施形態では、CPU42は部品認識処理の開始から終了までの間に異常判定処理を常に行ったが、所定時間経過毎に異常判定処理を行ったり、所定回数の部品認識処理の実行毎に異常判定処理を行ったりしてもよい。
上述した実施形態では、複数の基準マーク28は4個としたが、これに限らず複数であればよい。また、複数の基準マーク28の形状は下面視で円形状としたが、四角形状など他の形状でもよい。複数の基準マーク28は突出部29とは別部材としたが、突出部29に付された塗装であってもよいし、突出部29に設けられた凹部や凸部であってもよい。
上述した実施形態では、実装装置11の制御部41が異常判定処理を行ったが、管理装置50の制御部51が異常判定処理を行ってもよい。この場合、管理装置50が本開示の画像処理装置の一例に相当する。なお、上述した実施形態の実装装置11も、本開示の画像処理装置の一例に相当する。
上述した実施形態では、基準マーク28の位置の誤検出につながる異常として、基準マーク28の汚れを挙げたが、他にも基準マーク28の破損や変形などが挙げられる。上述した実装装置11では、原因に関わらず、基準マーク28の位置の誤検出につながる異常があれば、それを検出できる。
本開示の実装装置及び画像処理装置は、以下のように構成してもよい。
本開示の実装装置において、前記制御部は、前記導出された位置関係情報で表される前記位置関係が異常がないとみなせる所定の位置関係にあるか否かに基づいて前記異常の有無を判定してもよい。この実装装置は、異常の有無を適切に判定できる。
本開示の実装装置において、前記制御部は、過去に実行され異常がなかった場合の前記異常判定処理で導出された位置関係情報と、今回導出された位置関係情報とを比較することで前記異常を判定してもよい。この実装装置は、適切に異常の有無を判定できる。
本開示の実装装置において、前記実装ヘッドは、3以上の前記ヘッド基準マークを有しており、前記撮像部は、前記複数のヘッド基準マークと前記実装ヘッドに保持された部品とを含む部品画像を撮像し、前記制御部は、前記部品画像中の前記複数のヘッド基準マークの位置を検出し、該検出された位置に基づいて前記実装ヘッドに保持された部品の位置を認識する部品認識処理と、該部品認識処理で認識された位置に基づいて前記部品を前記基板上の実装位置に配置するよう前記実装ヘッドを移動させる部品配置処理と、を行い、前記制御部は、前記異常判定処理で異常ありと判定された前記ヘッド基準マークが存在し且つ異常なしと判定された前記ヘッド基準マークが複数存在する場合には、前記部品認識処理において、該異常ありと判定された前記ヘッド基準マークを無視し残りの前記ヘッド基準マークの位置に基づいて前記部品の位置を認識してもよい。この実装装置は、複数のヘッド基準マークの一部に位置の誤検出につながる異常が生じている場合に、異常が生じているヘッド基準マークに起因する部品認識の精度低下を抑制しつつ、部品認識処理及び部品配置処理を続行できる。
本開示の実装装置において、前記撮像部は、前記複数のヘッド基準マークと前記実装ヘッドに保持された部品とを含む部品画像を撮像し、前記制御部は、前記部品画像中の前記複数のヘッド基準マークの位置を検出し、該検出された位置に基づいて前記実装ヘッドに保持された部品の位置を認識する部品認識処理と、該部品認識処理で認識された位置に基づいて前記部品を前記基板上の実装位置に配置するよう前記実装ヘッドを移動させる部品配置処理と、を繰り返し行い、前記制御部は、前記部品認識処理が終了してから次の部品認識処理が開始されるまでの間に前記異常判定処理の少なくとも一部を行ってもよい。ここで、部品認識処理は処理負担が比較的高く、時間がかかりやすい。また、部品認識処理で部品を認識したあとでなければ、その部品の部品配置処理を行うことはできない。そのため、制御部が部品認識処理中に異常判定処理を全て行うと、全体の処理時間が長くなりやすい。これに対し、制御部が部品認識処理の終了後から次の部品認識処理の開始前までに異常判定処理の少なくとも一部を行うことで、全体の処理時間を短くできる。この場合において、前記制御部は、前記部品認識処理が終了してから次の部品認識処理が開始されるまでの間に前記異常判定処理を全て行ってもよい。
この場合において、前記制御部は、前記部品認識処理が終了してから次の部品認識処理が開始されるまでの間に前記異常判定処理を全て行い、前記制御部は、前記部品認識処理において、前記複数のヘッド基準マークの位置を第1手法を用いて検出し、前記制御部は、前記異常判定処理において、前記複数のヘッド基準マークの各々の位置を、前記第1手法と比べて処理時間が長いが検出精度の高い第2手法を用いて検出し、該第2手法で検出された位置に基づく前記位置関係情報と前記第1手法で検出された位置に基づく前記位置関係情報とを比較することで前記異常の有無を判定してもよい。この実装装置は、部品認識処理では高速な第1手法を用いるため、全体の処理時間を短くできる。また、この実装装置は、部品認識処理中に第1手法で検出された複数のヘッド基準マークの位置が正しいか否かを、異常判定処理において検出精度の高い第2手法を用いて検証できる。
本開示の画像処理装置は、
複数のヘッド基準マークを有し部品を保持して移動させる実装ヘッド、を備え前記部品を基板に配置する実装装置における、前記複数のヘッド基準マークを含むように撮像されたマーク画像の画像処理を行う画像処理装置であって、
前記マーク画像中の前記複数のヘッド基準マークの各々の位置を検出し、該検出された位置に基づいて前記複数のヘッド基準マーク間の位置関係を表す位置関係情報を導出し、該導出された位置関係情報に基づいて前記複数のヘッド基準マークのうち1以上の異常の有無を判定する異常判定処理を行う異常判定部、
を備えたものである。
この画像処理装置では、異常判定部が、上述した本開示の実装装置と同様の異常判定処理を行う。したがって、この画像処理装置は、ヘッド基準マークの位置の誤検出につながる異常が生じている場合に、そのことを検知できる。この画像処理装置において、上述した本開示の実装装置の種々の態様を採用してもよいし、上述した本開示の実装装置の各機能を実現するような構成を追加してもよい。
本開示の実装システムは、複数のヘッド基準マークを有し部品を保持して移動させる実装ヘッド、を備え前記部品を基板に配置する実装装置と、上述した本開示の画像処理装置と、を備えていてもよい。この実装システムは、上述した本開示の実装装置及び画像処理装置と同様に、ヘッド基準マークの位置の誤検出につながる異常が生じている場合に、そのことを検知できる。この実装システムの実装装置について、上述した本開示の実装装置の種々の態様を採用してもよいし、上述した本開示の実装装置の各機能を実現するような構成を追加してもよい。また、この実装システムの異常判定処理について、上述した本開示の実装装置の異常判定処理の種々の態様を採用してもよい。