以下、本発明の実施形態を図面に基づいて説明する。
(第1実施形態)
まず、図1〜図11を参照して、本発明の第1実施形態による部品実装装置100の構成について説明する。
本発明の第1実施形態による部品実装装置100は、基板1に部品2を実装するように構成されている。また、部品実装装置100は、図1および図2に示すように、基台10と、基台10上に設けられた基板搬送部11と、基板搬送部11の上方(Z2方向)をX−Y平面に沿って移動可能なヘッドユニット20と、ヘッドユニット20をX方向に移動可能に支持する支持部30と、支持部30をY方向に移動させることでヘッドユニット20をY方向に移動させるY方向移動機構部40とを備える。また、部品実装装置100は、基台10上に設けられた部品認識カメラ50と、基台10の内部に設けられた制御部60とを備える。また、部品実装装置100は、操作のための表示や、運転状態などを表示する表示ユニット70(図3参照)を備える。なお、部品実装装置100は、本発明の「基板作業装置」の一例である。
基板搬送部11の両側(Y1(Y2)側)には、部品2を供給するための多数列のテープフィーダ3が配置されている。テープフィーダ3は、複数の部品2を所定の間隔を隔てて保持したテープが巻き回されたリール(図示せず)を保持している。リールが回転されてテープが送出されることにより、先端部から部品2が供給される。また、ヘッドユニット20は、テープフィーダ3から部品2を取得するとともに、基板搬送部11上の基板1に部品2を実装する機能を有する。ここで、部品2は、IC、トランジスタ、コンデンサおよび抵抗器などの小片状の電子部品である。
基板搬送部11は、図1に示すように、基板1の搬送方向であるX方向に延びる一対のコンベア部11aを備えている。また、基板搬送部11には、それぞれX方向所定位置に配置され基板1を検出する複数のセンサ部12(図3参照)が設けられている。これにより、センサ部12の検出結果に基づいて、コンベア部11aによる基板1の搬送が制御される。また、コンベア部11aには、基板1を所定の搬送位置で停止させるためのストッパ13(図3参照)が設けられている。また、基板搬送部11には、搬送中の基板1を部品実装時の停止位置において停止させた状態で保持するクランプ機構が内部に設けられている。
ヘッドユニット20は、図1および図2に示すように、6個の搭載ヘッド21と、基板認識カメラ22と、スライドガイド部23とを含む。また、ヘッドユニット20は、図4に示すように、Z軸モータ24と、R軸モータ25とを含む。搭載ヘッド21は、部品2を吸着して、吸着した部品2を基板1に実装するように構成されている。また、6個の搭載ヘッド21は、それぞれ、ヘッドユニット20の下面側(Z1方向側)に基板1と対向するように配置されている。また、6個の搭載ヘッド21は、X方向に沿って所定の間隔を隔てて配置されている。また、6個の搭載ヘッド21は、図2に示すように、それぞれ、下端に吸着ノズル21aが装着されている。なお、搭載ヘッド21は、本発明の「ヘッド部」の一例である。
また、各々の搭載ヘッド21は、図2に示すように、負圧発生機(図示せず)により吸着ノズル21a先端部に発生させた負圧によって部品2を吸着して保持する機能を有する。また、各々の搭載ヘッド21は、Z軸モータ24(図3参照)によって、基板1に対して上下方向(Z方向)に移動可能に構成されている。また、搭載ヘッド21は、R軸モータ25(図3参照)によって、鉛直方向(Z方向)に延びる軸回りに回動されるように構成されている。これにより、各搭載ヘッド21は、昇降動作と吸着動作とによって部品2(図2参照)をテープフィーダ3(図1参照)から吸着し、基板1(図1参照)上の所定の部品実装位置および所定の搭載角度(R軸回転角度)で、部品2を基板1に実装する動作を行うように構成されている。なお、R軸モータ25は、本発明の「第3駆動部」の一例である。
基板認識カメラ22は、基板1の位置を認識するために基板1を撮像するように構成されている。また、基板認識カメラ22は、ヘッドユニット20の側端部(X1方向側)に取り付けられている。
支持部30は、図1および図2に示すように、X方向に延びるボールネジ軸(X軸)31と、ボールネジ軸31を回転させるX軸モータ32と、ボールネジ軸31に沿って延びるガイドレール33とを含む。また、ボールネジ軸31には、ヘッドユニット20に固定されているスライドガイド部(ボールナット)23が螺合されている。これにより、ヘッドユニット20は、スライドガイド部23がガイドレール33にガイドされながらX軸モータ32によりX方向に沿って移動される。また、X軸モータ32は、ボールネジ軸31、ガイドレール33およびスライドガイド部23とともに、ヘッドユニット20をX方向に移動させるX方向移動機構部を構成する。なお、X軸モータ32は、本発明の「第1駆動部」の一例である。
また、支持部30は、基台10上に固定されたY方向移動機構部40に載せられた状態でX方向と直交するY方向に移動可能に構成されている。具体的には、図1に示すように、Y方向移動機構部40は、一対のフレーム部材40aおよび40bと、フレーム部材40aに設けられるY方向に延びるボールネジ軸(Y軸)41と、ボールネジ軸41を回転させるY軸モータ42と、ボールネジ軸41に沿って延びるガイドレール43aと、フレーム部材40bに設けられガイドレール43aと平行なガイドレール43bとを含む。また、ガイドレール43a、43bは、支持部30のX方向における両端部をY方向に移動可能に支持している。また、支持部30には、ボールネジ軸41が螺合されるボールナット34が固定されて設けられている。これにより、支持部30は、ガイドレール43a、43bにガイドされながらY軸モータ42によりY方向に移動される。したがって、ヘッドユニット20は、ボールネジ軸31および41をそれぞれX軸モータ32およびY軸モータ42により回転させることによって、基台10の上方をX−Y平面に沿って任意の位置に移動することが可能に構成されている。
また、2台の部品認識カメラ50は、基板搬送部11の両側(Y1(Y2)側)に配置されている。また、部品認識カメラ50は、図2に示すように、搭載ヘッド21に吸着された部品2の下面側(Z1方向側)を下方から撮像する機能を有している。これにより、部品2の形状の良否が判別されるとともに、搭載ヘッド21中心(吸着ノズル21a中心)に対する搭載ヘッド21に吸着された部品2中心の位置ずれが判別される。また、搭載ヘッド21に吸着された部品2の回転角度も判別される。
制御部60は、装置本体各部の動作制御を行うように構成されている。また、制御部60は、図3に示すように、演算処理部(CPU)61と、実装プログラム記憶部62と、搬送データ記憶部63と、設備固有データ記憶部64と、モータ制御部65と、外部入出力部66と、画像処理部67と、サーバ通信部68とを含む。
演算処理部61は、部品実装装置100の動作を全般的に統括する。実装プログラム記憶部62には、基板1に対して部品2を実装するためのプログラムが格納されている。搬送データ記憶部63には、搬送される基板1の情報が記憶されている。具体的には、搬送データ記憶部63には、搬入される基板1に既に実装されている搭載済み部品2の部品搭載情報(図5参照)および搬入された基板1に搭載ヘッド21により新たに搭載した部品2の部品搭載情報(図5参照)が蓄積されて一時的に記憶されている。設備固有データ記憶部64には、部品実装装置100の動作上の固有のデータおよび基板製造ラインについての固有のデータなどが格納されている。
モータ制御部65は、X軸モータ32、Y軸モータ42、Z軸モータ24およびR軸モータ25の駆動を制御するように構成されている。外部入出力部66は、センサ部12による検出結果を取得し、基板1の搬送位置を得るように構成されている。また、外部入出力部66は、ストッパ13の動作を制御して、基板1を所定の搬送位置で停止させるように構成されている。
画像処理部67は、基板認識カメラ22により撮像される基板1の画像に基づいて、基板1の位置を認識するように構成されている。また、画像処理部67は、部品認識カメラ50により撮像される搭載ヘッド21に吸着された部品2の画像に基づいて、部品2の位置および回転角度を認識するように構成されている。サーバ通信部68は、ハブ5を介して外部のサーバPC4に接続可能に構成されている。
ここで、第1実施形態では、制御部60は、部品実装装置100に搬入される基板1に既に実装されている搭載済み部品2の部品搭載情報を取得するとともに、搭載ヘッド21により新たに搭載した部品2の部品搭載情報を蓄積するように構成されている。具体的には、制御部60は、各部品2のXY方向の搭載位置座標に基づいて部品搭載情報を管理するように構成されている。また、制御部60は、図4および図5に示すように、サーバPC4の記憶部4a(図3参照)に記憶された、上流側の部品実装装置200(図3参照)により実装された搭載済み部品2の部品搭載情報(No.P1〜Pm)を、搬入される基板1ごとに、サーバ通信部68を介して取得するように構成されている。また、制御部60は、搭載ヘッド21により新たに実装した搭載済み部品2の部品搭載情報(No.Pm+1〜Pn)を蓄積して更新するように構成されている。また、制御部60は、基板1ごとの部品搭載情報を、搬送データ記憶部63に記憶させるとともに、サーバPC4に送信するように構成されている。つまり、更新された部品搭載情報が、サーバPC4の記憶部4aに格納される。これにより、基板1ごとの部品搭載情報をサーバPC4により一元管理することが可能である。
部品搭載情報は、図5に示すように、基板1に搭載された部品2の座標(搭載位置)、部品サイズ(縦寸法・横寸法)、部品厚みおよび部品2の搭載方向(回転位置)を含む。また、制御部60は、部品搭載情報に基づいて、搭載ヘッド21を移動させる際に、移動経路上にある部品2の高さ(厚み)の情報を取得するように構成されている。なお、部品サイズおよび部品厚みは、部品2ごとにあらかじめ実装プログラムに規定されているものが用いられる。つまり、制御部60は、搭載された部品2の座標および部品サイズから、移動経路上の部品2を特定するとともに、移動経路上の部品2の高さおよび搭載方向(回転位置)の情報を取得するように構成されている。また、制御部60は、部品搭載情報に基づいて、現在位置から目標位置までの水平方向(XY方向)における移動経路上の基板1に搭載されている最大高さの部品2の情報を取得するように構成されている。
また、第1実施形態では、制御部60は、搭載ヘッド21の移動を制御するように構成されている。また、制御部60は、搭載ヘッド21を基板1上の目標位置に移動させる場合に、搭載ヘッド21が目標位置までの移動経路上の基板1に搭載されている最大高さの部品2を通過後で目標位置に到達する前に、搭載ヘッド21を基板1方向(Z1方向)に前倒し下降(図9参照)させるように構成されている。また、制御部60は、部品2の通過後に搭載ヘッド21を前倒し下降させる場合に、搭載ヘッド21の現在位置から目標位置までの移動経路上の基板1に搭載されている最大高さの部品2に干渉しないように、搭載ヘッド21を前倒し下降させるように構成されている。
たとえば、図8および図9に示す例の場合、座標(xa,ya)から座標(xb,yb)の移動経路上の基板1に搭載されている最大高さの部品は、部品2cであり、高さがhcである。また、部品2cを通過後の水平位置から目標位置(座標(xb,yb))までの移動経路上の基板1に搭載されている最大高さの部品は、部品2dであり、高さがhdである。また、部品2dを通過後の水平位置から目標位置(座標(xb,yb))までの移動経路上の基板1に搭載されている部品は無い。この場合、制御部60は、部品2cを通過するまでは、搭載ヘッド21が部品2cに干渉しない高さで搭載ヘッド21を移動させる。つまり、搭載ヘッド21は、部品2cの高さhcに、吸着している部品2の厚み(高さ)およびマージン(余裕)を加えた高さで移動されるので、移動途中の部品2a、部品2b、および最大高さの部品2cの上方を干渉することなく通過する。そして、制御部60は、部品2cを通過後に、搭載ヘッド21が部品2dに干渉しない高さまで、搭載ヘッド21を前倒し下降させる。また、制御部60は、部品2dを通過後に、搭載ヘッド21を、基板1表面近傍まで、さらに前倒し下降させる。つまり、搭載ヘッド21は、基板1の表面から、吸着している部品2の高さおよびマージン(余裕)を合計した高さ位置まで、前倒し下降される。そして、搭載ヘッド21は、その高さ位置で、目標位置(座標(xb,yb))まで移動される。なお、部品2cは、本発明の「第1部品」の一例であり、部品2dは、本発明の「第2部品」および「第3部品」の一例である。
また、制御部60は、搭載ヘッド21が目標位置に到達するまでに前倒し下降が完了可能な位置に最大高さの部品2が位置するように、搭載ヘッド21の移動経路を決定するように構成されている。具体的には、制御部60は、X方向およびY方向のうち移動時間が短い方のモータ(X軸モータ32またはY軸モータ42)の駆動するタイミングを、移動時間が長い方のモータ(X軸モータ32またはY軸モータ42)の駆動する時間内で調整して、搭載ヘッド21の移動経路を決定するように構成されている。
たとえば、図8および図10に示す例の場合、座標(xa,ya)から座標(xb,yb)の移動経路では、X方向よりもY方向の距離が長いため、X軸モータ32の駆動時間に比べて、Y軸モータ42の駆動時間の方が長くなる。つまり、X軸モータ32およびY軸モータ42を並行して駆動させるので、Y軸モータ42の駆動時間が、目標位置(座標(xb,yb))までの移動時間となる。そして、X軸モータ32を駆動するタイミングを、Y軸モータ42を駆動する時間内で調整することにより、移動時間が長くなることなく目標位置(座標(xb,yb))に搭載ヘッド21を移動させることが可能である。この場合、図8および図10のハッチングされた範囲内で、搭載ヘッド21が移動される。図8に示す例の場合、部品2cおよび部品2dの通過後にそれぞれ前倒し下降が行われる。この場合、図9に示す例のように、目標位置に到達するまでに搭載ヘッド21の前倒し下降が完了する。一方、図10に示す例の場合、部品2gの通過後に前倒し下降が行われる。この場合、図11に示す例のように、目標位置に到達するまでに搭載ヘッド21の前倒し下降が完了しない。そこで、制御部60は、搭載ヘッド21が目標位置に到達するまでに前倒し下降が完了可能な位置に部品2が位置するように、図8のように、搭載ヘッド21の移動経路を決定する。
また、制御部60は、搭載ヘッド21を基板1上の目標位置に移動させながら、R軸モータ25により搭載ヘッド21を目標回転位置に回動するとともに、搭載ヘッド21の回転位置を考慮して搭載ヘッド21を前倒し下降させるように構成されている。つまり、制御部60は、部品2が、テープフィーダ3から吸着された直後の回転位置から、基板1に搭載するための回転位置になるように、搭載ヘッド21を回動させるように構成されている。また、制御部60は、搭載ヘッド21の部品2の回転位置に基づいて、吸着した部品2と、基板上の部品2とが干渉しないように、搭載ヘッド21を前倒し下降させるように構成されている。
次に、図6を参照して、部品実装装置100の制御部60による部品実装処理について説明する。なお、搭載ヘッド21のZ座標は下向きZ1方向を正とする。すなわち、Z座標は、Z1方向側が大きくなり、Z2方向側が小さくなる。
ヘッドユニット20の複数の搭載ヘッド21にそれぞれ部品2が吸着されると、ステップS1において、実装する部品2を保持した搭載ヘッド21がX方向およびY方向の目標位置(搭載位置)に向けて移動される。つまり、X軸モータ32およびY軸モータ42が駆動されて、搭載ヘッド21が水平方向の決定された移動経路に沿って移動される。なお、移動経路の決定処理については、後で詳しく説明する。ステップS2において、搭載ヘッド21がXY方向(水平方向)において目標位置に到達したか否かが判断される。目標位置に到達していなければ、ステップS3に進み、目標位置に到達していれば、ステップS6に進む。
ステップS3において、搭載ヘッド21の移動経路上にある搭載済み部品2の最大高さHmaxを取得する。ステップS4において、搭載ヘッド21の現在のZ座標が目標Z座標(=目標位置における基板1のZ座標−吸着された部品2の厚み)−Hmax−Mより小さいか否かが判断される。なお、Mは、マージン(余裕)を表している。つまり、搭載ヘッド21が、目標Z座標からHmaxおよびマージンMを足した分より上方(Z2方向)に位置するか否かを判断する。現在のZ座標が目標Z座標−Hmax−Mより小さければ、ステップS5に進み、現在のZ座標が目標Z座標−Hmax−M以上であれば、ステップS2に戻る。
ステップS5において、搭載ヘッド21のZ座標が、目標Z座標−Hmax−Mになるように、搭載ヘッド21が前倒し下降される。その後、ステップS2に戻る。ステップS2において搭載ヘッド21がXY方向において目標位置に到達したと判断されれば、ステップS6において、搭載ヘッド21が目標Z座標に下降され部品搭載が行われる。ステップS7において、部品搭載情報(図5参照)の更新が行われる。つまり、実装した部品2のXY座標、部品サイズ、部品厚みおよび搭載方向(回転位置)が部品搭載情報に追加されて更新される。
ステップS8において、搭載ヘッド21が上昇される。その後、部品実装処理が終了される。なお、その後、部品2を吸着した他の搭載ヘッド21についても同様の部品実装処理が行われる。
次に、図7〜図11を参照して、部品実装装置100の制御部60による移動経路決定処理について説明する。この移動経路決定処理は、ヘッドユニット20の複数の搭載ヘッド21にそれぞれ部品2を吸着させる間に制御部60により実行される。
ステップS11において、搭載ヘッド21の目標位置までのX軸移動時間Tx、Y軸移動時間Tyおよびトータルの移動時間Ttotalが取得される。具体的には、現在位置および目標位置から各移動時間が算出される。ここで、X軸およびY軸は並行して駆動され、且つX軸あるいはY軸の移動の内、移動時間の長い方の移動開始から移動終了までの時間により、現在位置から目標位置への移動時間が決まるので、この時間がトータルの移動時間Ttotalとなる。図8および図10の例の場合、Y方向の移動の方が長いため、Y軸移動時間Tyの方がX軸移動時間Txより長くなる。移動時間の長い方の時間がTtotal=Tyとなり、X軸移動については移動開始を遅延させたり、Y軸移動より先に移動終了するように設定することができる。
ステップS12において、軸起動遅延タイマーが設定される。つまり、X軸およびY軸のうち一方が駆動されてから他方が駆動されるまでの遅延時間が設定される。軸移動においてロスが生じないための最大遅延時間Tdmaxは、Tdmax=|Tx−Ty|となる。遅延時間Tdは、初期値としてTd=0に設定される。この場合、X軸およびY軸が同時に駆動し始める。その後、一方の軸が先に目標座標に到達し、駆動を停止した後、他方の軸のみ駆動され、目標の座標に移動される。また、暫定的(一時的)に記憶されるテンポラリー変数Ttmpが、Ttmp=Ttotalに設定される。
ステップS13において、TdmaxがTdより大きいか否かが判断される。TdmaxがTdより大きければ、ステップS14に進み、TdmaxがTd以下であれば、ステップS21に進む。下記するようにTdはステップS20を経過する度にTαだけ値が増加し、初期値のTd=0から漸増してTdがTdmax以上となり、ステップS13の判断の結果ステップS21に進むようになる。ステップS14において、移動経路のシミュレーションが行われる。つまり、遅延時間Tdに基づいて、X軸モータ32およびY軸モータ42の駆動するタイミングが決定されて移動経路が算出される。たとえば、初期値のTd=0の場合、図10に示すようにX軸モータ32およびY軸モータ42が同時に駆動された移動経路となる。また、ステップS20を経過する度にTαだけ値が増加した場合には、図8に示すようにY軸モータ42を駆動させてから、ステップS14前に定まった遅延時間Td(>0)後にX軸モータ32を駆動させた移動経路となる。
ステップS15において、移動経路上の最後の部品2に到達する時間Tpが取得される。具体的には、移動経路および部品搭載情報に基づいて、最後の部品2に到達する時間Tpが算出される。たとえば、図10および図11に示す例の場合、移動経路上の最後の部品となる最大高さhgの部品2gに到達するまでの時間が時間Tpとして算出される。また、図8および図9に示す例の場合、移動経路中の最後の部品2dの上方を通過しなければならず、移動開始からこの部品2dに到達するまでの時間が時間Tpとして算出される。この例においては、移動経路途中に最大高さhcの部品2cがあり、現在位置(xa,ya)から最大高さhcの部品2cに到達するまでの移動中に、搭載ヘッド21のZ座標が目標Z座標(=目標位置における基板1のZ座標−吸着された部品2の厚み)−Hmax−Mを目差して前倒し下降が実施されて(目標Z座標−Hmax−Mに到達すれば下降を停止して)部品2cの上方を通過(目標Z座標−Hmax−Mに到達していなければ、到達するまで下降と平面移動による通過動作を並行して実施)する。さらに、残りの移動経路中における次の最大高さhdの部品2dに到達するまでに、搭載ヘッド21のZ座標が目標Z座標−Hd−Mを目差して前倒し下降が平面移動と並行して実施されて(目標Z座標−Hd−Mに到達すれば下降を停止して)部品2dの上方を通過することが、移動経路途中の最大高さ部品毎に繰り返し実施される。そして、最後の部品(この移動経路の場合は部品2d)の上方を通過し、搭載ヘッド21のZ座標が目標Z座標−Mを目差して前倒し下降が平面移動と並行して実施されて(目標Z座標−Mに到達すれば下降を停止して)目標位置(xb,yb)に到達する。
ステップS16において、現在位置(xa,ya)における搭載ヘッド21のZ座標から目標Z座標−Mに到達するまでの下降時間から、最後の部品(図8および図9に示す例の場合は部品2d、図10および図11に示す例の場合は部品2g)を通過時までの各前倒し下降のための下降時間の合計を差し引いたものが、最後の部品通過後におけるZ軸前倒し下降の所要時間Tzとして取得される。つまり、最後の部品通過時におけるZ軸高さから、目標Z座標−Mに下降させるのにかかる時間がTzとして算出される。ステップS17において、最後の部品通過後のZ軸前倒し下降の所要時間Tzが最後の部品通過後搭載ヘッド21が目標位置に到達するまでの時間(Ttotal−Tp)より大きいか否かが判断される。つまり、搭載ヘッド21が目標位置に到達するまでに、前倒し下降が終了するか否かが判断される。TzがTtotal−Tpより大きければ(目標位置までに前倒し下降が終了しなければ)、ステップS18に進み、TzがTtotal−Tp以下であれば(目標位置までに前倒し下降が終了すれば)、ステップS22に進む。
なお、搭載ヘッド21移動経路上の最後の部品(図10での部品2g、図8での部品2c)の上方を通過完了するまでに、下降により搭載ヘッド21のZ座標が目標Z座標−Hd−Mに到達していなければ、ステップS17、S18、およびS19において、Ttotal−Tpを使用してよいが、到達してれば、Ttotal−Tpの替わりにTtotal−Tp−Tpassを使用する。ここで、Tpassは、基板1の上方から見た平面視において、移動経路上の最後の部品(図10での部品2g、図8での部品2c)の後端に搭載ヘッド21に吸着された部品の移動方向前端が到達した時点から、当該最後の部品の前端から搭載ヘッド21に吸着された部品の移動方向後端が離れる時点までの、搭載ヘッド21に吸着された部品が当該最後の部品の上方を通過するに要する通過時間である。
ステップS18において、TtmpがTz−(Ttotal−Tp)より大きいか否かが判断される。TtmpがTz−(Ttotal−Tp)より大きければ、ステップS19に進み、TtmpがTz−(Ttotal−Tp)以下であれば、ステップS20に進む。ステップS19において、Ttmp=Tz−(Ttotal−Tp)と設定される。Ttmpの初期値はTtotalであり、最初にステップS17において「YES」と判断され目標位置までに前倒し下降が終了していないことになる場合、ステップS18の判断結果は「YES」となり、ステップS19に進む。ステップS19においては、ステップS14においてシミュレートされた移動経路によっては、搭載ヘッド21が目標位置に到達するまでに、前倒し下降が終了しないことになる場合、目標位置に到達してから、目標Z座標−Mまで下降するまでの時間がTtmpとして設定される。この時間Ttmpは短い程、目標位置に到達してから目標Z座標−Mまで下降し、さらに目標Z座標まで下降して部品搭載するまでの時間が短くなり、実装の効率化を果たすことができる。ステップS18において判断結果が「YES」となる場合は、ステップS14においてシミュレートされた移動経路に基づくTz−(Ttotal−Tp)、すなわち目標位置に到達してから、目標Z座標−Mまで下降するまでの時間が、それより以前におけるステップS14においてシミュレートされた移動経路に基づくTz−(Ttotal−Tp)より時間が短いことになり、より望ましいので、この時のTz−(Ttotal−Tp)によりTtmpを書き換えるとともに、この時の遅延時間Tdを記憶するため、遅延時間のテンポラリー変数Tdtmp(暫定値)が、Tdtmp=Tdと設定される。
ステップS20において、Td=Td+Tαに設定される。なお、Tαは、遅延時間Tdを0からTdmaxまでの間で順に変化させるために加えられる時間である。また、Tαは任意に設定される。たとえば、Tαは1秒としてもよい。また、TαはTdmaxを整数で割った値としてもよい。たとえば、Tα=Tdmax/3などにしてもよい。その後、ステップS13に戻る。
すなわち、ステップS18において判断結果が「NO」となる場合、およびステップS18において判断結果が「YES」となる場合はステップS19を経て、別の移動経路をシミュレートすべくステップS20において遅延時間Tdは、それまでの遅延時間Tdに所定の時間Tαが加えられた値に設定されるので、ステップS20の処理毎に、図10の移動経路から図8に示す移動経路の方向へ、Tα×Y軸移動速度の距離だけY2方向へ中間移動経路がずれた新たな移動経路が設定されることになる。新たな移動経路においてステップS17の演算結果が「NO」となれば、それ以降の新たな移動経路で演算されることはなくステップS22へ進む。
一方、ステップS17の演算結果が「YES」となり、さらにステップS18が「YES」となった場合は、それまでの移動経路シミュレーションの中で前倒し下降において一番下降できたことを意味し、ステップS18が「NO」となった場合は、その移動経路シミュレーションの中での前倒し下降では、それまでの移動経路シミュレーションの中での前倒し下降において一番下降できた場合の下降高さには到達できないことを意味し、この場合は記録に残さないでステップS20の処理を行い、次の新たな移動経路が設定される。これにより、ステップS17で「YES」となる場合は斜線部(図8および図10参照)を通る全ての移動経路について前倒し下降で下降できる高さをチェックしたことになり、その中で一番下降できた移動経路は遅延時間Tdtmpから特定することができる。
ステップS21においてTdmaxがTd以下であると判断されると、ステップS21において、Td=Tdtmpに設定される。ステップS22において、TxがTyより大きいか否かが判断される。つまり、X方向の移動の方が長いのか、Y方向の移動の方が長いのかが判断される。TxがTyより大きければ、ステップS23に進み、TxがTy以下であれば、ステップS24に進む。
X方向の移動の方が長ければ、ステップS23において、Y軸モータ42は、X軸モータ32を起動してからTd後に起動すると決定される。これにより、搭載ヘッド21の移動経路が決定される。その後、移動経路決定処理が終了される。また、Y方向の移動の方が長ければ、ステップS24において、X軸モータ32は、Y軸モータ42を起動してからTd後に起動すると決定される。これにより、搭載ヘッド21の移動経路が決定される。その後、移動経路決定処理が終了される。
第1実施形態では、上記のように、搭載ヘッド21を基板1上の目標位置に移動させる場合に、搭載ヘッド21が目標位置までの移動経路上の基板1に搭載されている最大高さの部品2を通過後で目標位置に到達する前に、搭載ヘッド21を基板1方向(Z1方向)に前倒し下降させる制御部60を設けることによって、移動経路上の基板1に搭載されている最大高さの部品2を通過後で目標位置に到達する前に搭載ヘッド21をさらに下降させることができるので、目標位置に到達してからの搭載ヘッド21の下降時間のさらなる短縮を図ることができる。これにより、基板1に対する作業時間をより短縮することができる。
また、第1実施形態では、制御部60を、部品2の通過後に搭載ヘッド21を前倒し下降させる場合に、搭載ヘッド21の現在位置から目標位置までの移動経路上の基板1に搭載されている最大高さの部品2に干渉しないように、搭載ヘッド21を前倒し下降させるように構成する。これにより、搭載ヘッド21を目標位置に移動させながら、基板1に搭載された部品2と干渉しないように搭載ヘッド21を順次下降させることができるので、容易に目標位置に到達してからの搭載ヘッド21の下降時間のさらなる短縮を図ることができる。
また、第1実施形態では、制御部60を、搭載ヘッド21を基板1上の目標位置に移動させる場合に、搭載ヘッド21が目標位置までの移動経路上の基板1に搭載されている最後の部品2を通過後で目標位置に到達する前に、搭載ヘッド21を基板1方向に前倒し下降させるように構成する。これにより、搭載ヘッド21を目標位置に移動させながら、基板1に搭載された最後の部品2を通過後にさらに搭載ヘッド21を下降させることができるので、目標位置に到達してからの搭載ヘッド21の下降時間のさらなる短縮を図ることができる。
また、第1実施形態では、制御部60を、搭載ヘッド21が目標位置に到達するまでに前倒し下降が完了可能な位置に部品2が位置するように、搭載ヘッド21の移動経路を決定するように構成する。これにより、搭載ヘッド21が目標位置に到達するまでに前倒し下降が完了可能な位置に部品2が位置するように移動経路が決定されるので、高さが比較的低い部品2上を通過する移動経路に決定したり、高さが比較的高い部品2上を早いうちに通過する移動経路に決定したりすることができる。その結果、搭載ヘッド21が目標位置に到達するまでに確実に前倒し下降を完了させることができる。これにより、目標位置に到達してからの下降時間を前倒し下降位置から実装位置まで下降させる最小限の下降時間にすることができる。
また、第1実施形態では、制御部60を、X方向およびY方向のうち移動時間が短い方のモータの駆動するタイミングを、移動時間が長い方のモータの駆動する時間内で調整して、搭載ヘッド21の移動経路を決定するように構成する。これにより、搭載ヘッド21が目標位置に到達するまでに前倒し下降が完了可能な位置に部品2が位置する移動経路を移動する場合に、搭載ヘッド21が水平方向のX方向およびY方向のうち長い方の移動時間内で移動完了するので、搭載ヘッド21の水平方向の移動時間をロスすることなく前倒し下降が完了可能な移動経路を決定することができる。
また、第1実施形態では、制御部60を、部品実装装置100に搬入される基板1に既に実装されている搭載済み部品2の部品搭載情報を取得するとともに、搭載ヘッド21により新たに搭載した部品2の部品搭載情報を蓄積して、部品搭載情報に基づいて、目標位置までの移動経路上の基板1に搭載されている最大高さの部品2の情報を取得するように構成する。これにより、搭載済みの部品2および搭載ヘッド21により搭載した部品2の蓄積された部品搭載情報に基づいて、移動経路上の最大高さの部品2の情報をより正確に取得することができる。
また、第1実施形態では、制御部60を、搭載ヘッド21を基板1上の目標位置に移動させながら、搭載ヘッド21を目標回転位置に回動するとともに、搭載ヘッド21の回転位置を考慮して搭載ヘッド21を前倒し下降させるように構成する。これにより、目標位置に到達するまでに、搭載ヘッド21を目標回転位置に回転させることができるので、目標位置に到達してからの搭載ヘッド21の回転時間を短縮することができる。その結果、基板1に対する作業時間をより短縮することができる。
(第2実施形態)
次に、図12〜図14を参照して、本発明の第2実施形態について説明する。第2実施形態による部品実装装置100では、部品搭載情報を各搭載部品の座標に基づいて管理する構成の上記第1実施形態と異なり、部品搭載情報を基板上の小領域で管理するように構成されている。
ここで、第2実施形態では、図12および図13に示すように、制御部60(図3参照)は、部品搭載情報を基板1上の小領域B1〜BNで管理するように構成されている。つまり、制御部60は、基板1上を矩形の小領域で仮想的に区切り、小領域の搭載高さを管理するように構成されている。また、制御部60は、サーバPC4の記憶部4a(図3参照)に記憶された、上流側の部品実装装置200(図3参照)により実装された搭載済み部品2の部品搭載情報を、搬入される基板1ごとに、サーバ通信部68を介して取得するように構成されている。また、制御部60は、搭載ヘッド21により新たに実装した搭載済み部品2の搭載高さが、対応する小領域に記憶された搭載高さより大きい場合、対応する小領域の搭載高さを実装した部品2の搭載高さに更新するように構成されている。つまり、小領域上の最も高い部品2の高さが小領域の搭載高さとして記憶される。
また、第2実施形態では、制御部60は、搭載ヘッド21を基板1上の目標位置に移動させる場合に、搭載ヘッド21が目標位置までの移動経路上の基板1に搭載されている最大高さの部品2を通過後で目標位置に到達する前に、搭載ヘッド21を基板1方向(Z1方向)に前倒し下降(図9参照)させるように構成されている。
次に、図14を参照して、部品実装装置100の制御部60による部品搭載情報の更新処理について説明する。
ヘッドユニット20の複数の搭載ヘッド21(図1および図2参照)にそれぞれ部品2が吸着されると、ステップS31において、部品2の搭載(実装)が実行される。具体的には、部品2が吸着された搭載ヘッド21を基板1上の目標位置(搭載位置)まで移動させて部品2が実装される。ステップS32において、搭載対象の部品2の部品サイズが取得される。具体的には、搭載対象の部品2に対応する実装プログラムに規定されているXY方向の部品サイズと部品2の搭載方向(回転位置)が取得される。また、搭載高さ(Z方向の長さ)が、部品2を実装した際に搭載ヘッド21を下降させた量に基づいて算出され取得される。これにより、基板1の反りなどの影響にも応じた正確な搭載高さを取得することが可能である。
なお、部品2の搭載方向(回転位置)は、目標搭載方向となるように吸着時の部品2の方向との差がR軸モータ25による吸着ノズル21aの回転で解消されるので、予め実装プログラム記憶部62に記憶された部品2毎の目標搭載方向データを用いることができる。
ステップS33において、搭載対象の部品2が重なる(実装される)小領域が特定される。なお、複数の小領域にまたがって部品2が実装される場合は、その複数の小領域すべてが特定される。この際、特定された小領域に1から順に番号が付される。ステップS34において、特定された領域のうちi番目の領域の搭載高さが、搭載対象の部品2の厚み(高さ)より小さいか否かが判断される。なお、iの初期値は1から始められる。搭載高さが搭載対象の部品2の厚みより小さければ、ステップS35に進み、搭載高さが搭載対象の部品2の厚み以上であれば、ステップS36に進む。
ステップS35において、i番目の領域の部品搭載情報が更新される。つまり、実装された部品2の高さが、i番目の領域の搭載高さとして記憶されて更新される。ステップS36において、対象の小領域すべてについて処理が終了したか否かが判断される。処理が終了していれば、部品搭載情報の更新処理が終了される。処理が終了していなければ、ステップS37に進み、i=i+1として、ステップS34に戻る。
なお、第2実施形態のその他の構成は、上記第1実施形態と同様である。
上記のように、第2実施形態では、第1実施形態と同様に、搭載ヘッド21を基板1上の目標位置に移動させる場合に、搭載ヘッド21が目標位置までの移動経路上の基板1に搭載されている最大高さの部品2を通過後で目標位置に到達する前に、搭載ヘッド21を基板1方向(Z1方向)に前倒し下降させる制御部60を設けることによって、目標位置に到達してからの搭載ヘッド21の下降時間のさらなる短縮を図ることができる。これにより、基板1に対する作業時間をより短縮することができる。
また、第2実施形態では、上記のように、制御部60を、部品搭載情報を基板1上の小領域B1〜BNで管理するように構成することによって、搭載される部品2の数が多くなった場合でも、基板1上の小領域で部品2の部品の搭載高さが管理されるので、処理負担を軽減することができる。
なお、第2実施形態のその他の効果は、上記第1実施形態と同様である。
(第3実施形態)
次に、図15を参照して、本発明の第3実施形態について説明する。第3実施形態では、部品実装装置について説明した上記第1および第2実施形態と異なり、塗布装置について説明する。
第3実施形態による塗布装置300は、図15に示すように、基板1に対して接着剤やクリーム半田など塗布するように構成されている。また、塗布装置300は、基台310と、基台310上に設けられた基板搬送部311と、基板搬送部311の上方(Z2方向)をX−Y平面に沿って移動可能なヘッドユニット320と、ヘッドユニット320をX方向に移動可能に支持する支持部330と、支持部330をY方向に移動させる移動機構部340とを備える。また、塗布装置300は、基台310の内部に設けられた制御部350を備える。なお、塗布装置300は、本発明の「基板作業装置」の一例である。
ヘッドユニット320は、X方向に所定の間隔を隔てて配置された2つのディスペンスヘッド321と、基板認識カメラ322と、スライドガイド部323とを含む。また、ヘッドユニット320は、2つのディスペンスヘッド321を、それぞれ、上下方向に移動させる2つのZ軸モータ324と、Z方向に延びる軸線回りに回動させるR軸モータ325とを含む。各ディスペンスヘッド321は、塗布液を空気圧に応じて先端に設けられたノズルから吐出して、基板1の表面に塗布するように構成されている。なお、ディスペンスヘッド321は、本発明の「ヘッド部」の一例であり、R軸モータ325は、本発明の「第3駆動部」の一例である。
支持部330は、X方向に延びるボールネジ軸(X軸)331と、ボールネジ軸331を回転させるX軸モータ332と、ボールネジ軸331に沿って延びるガイドレール333とを含む。また、ボールネジ軸331には、ヘッドユニット320に固定されているスライドガイド部(ボールナット)323が螺合されている。これにより、ヘッドユニット320は、スライドガイド部323がガイドレール333にガイドされながらX軸モータ332によりX方向に沿って移動される。なお、X軸モータ332は、本発明の「第1駆動部」の一例である。
また、支持部330は、基台310上に固定された移動機構部340に載せられた状態でX方向と直交するY方向に移動可能に構成されている。具体的には、移動機構部340は、一対のフレーム部材340aおよび340bと、フレーム部材340aに設けられるY方向に延びるボールネジ軸(Y軸)341と、ボールネジ軸341を回転させるY軸モータ342と、ボールネジ軸341に沿って延びるガイドレール343aと、フレーム部材340bに設けられガイドレール343aと平行なガイドレール343bとを含む。また、ガイドレール343a、343bは、支持部330のX方向における両端部を移動可能に支持している。また、支持部330には、ボールネジ軸341が螺合されるボールナット(図示せず)が固定されて設けられている。これにより、支持部330は、ガイドレール343a、343bにガイドされながらY軸モータ342によりY方向に移動される。したがって、ヘッドユニット320は、ボールネジ軸331および341をそれぞれX軸モータ332およびY軸モータ342により回転させることによって、基台310の上方をX−Y平面に沿って任意の位置に移動することが可能に構成されている。
制御部350は、装置本体各部の動作制御を行うように構成されている。また、制御部350は、ディスペンスヘッド321を基板1上の目標位置に移動させる場合に、ディスペンスヘッド321が目標位置までの移動経路上の基板1に搭載されている最大高さの部品2を通過後で目標位置に到達する前に、ディスペンスヘッド321を基板1方向(Z1方向)に前倒し下降させるように構成されている。また、制御部350は、部品2の通過後にディスペンスヘッド321を前倒し下降させる場合に、ディスペンスヘッド321の現在位置から目標位置までの移動経路上の基板1に搭載されている最大高さの部品2に干渉しないように、ディスペンスヘッド321を前倒し下降させるように構成されている。なお、第3実施形態のその他の構成は、上記第1または第2実施形態と同様である。
上記のように、第3実施形態では、ディスペンスヘッド321を基板1上の目標位置に移動させる場合に、ディスペンスヘッド321が目標位置までの移動経路上の基板1に搭載されている最大高さの部品2を通過後で目標位置に到達する前に、ディスペンスヘッド321を基板1方向(Z1方向)に前倒し下降させる制御部350を設けることによって、移動経路上の基板1に搭載されている最大高さの部品2を通過後で目標位置に到達する前にディスペンスヘッド321をさらに下降させることができるので、目標位置に到達してからのディスペンスヘッド321の下降時間のさらなる短縮を図ることが可能な塗布装置を提供することができる。これにより、基板1に対する作業時間をより短縮することができる。
なお、今回開示された実施形態は、すべての点で例示であって制限的なものではないと考えられるべきである。本発明の範囲は、上記した実施形態の説明ではなく特許請求の範囲によって示され、さらに特許請求の範囲と均等の意味および範囲内でのすべての変更が含まれる。
たとえば、上記第1および第2実施形態では、搭載ヘッド(ヘッド部)が目標位置までの移動経路上の基板に搭載されている最大高さの第1部品を通過後に、搭載ヘッドを前倒し下降させる構成の例を示したが、本発明はこれに限られない。本発明では、第1部品の通過開始後の通過中に、搭載ヘッドを前倒し下降させてもよい。この場合、制御部を、ヘッド部を下降させる起動命令を行ってから実際に下降開始するまでの時間を予測して、ヘッド部の下降開始時に第1部品に干渉しない高さ位置であれば、第1部品の通過中でもヘッド部を前倒し下降するように構成してもよい。この際、制御部を、吸着した部品の回転位置が第1部品に干渉しない場合、第1部品の通過中でもヘッド部を前倒し下降するように構成してもよい。また、第1部品の通過中から前倒し下降を開始して第1部品通過後も引き続き前倒し下降を継続するようにしてもよい。
また、制御部を、ヘッド部を下降させる起動命令を行ってから実際にヘッド部が第1部品に干渉する高さ位置に到達するまでの時間をシミュレーションして、ヘッド部が水平方向において第1部品を通過するまでの時間より、ヘッド部が第1部品に干渉する高さ位置に到達するまでの時間の方が長ければ、第1部品の通過中でもヘッド部を前倒し下降するように構成してもよい。
また、上記第1および第2実施形態では、ヘッド部を基板上の現在位置から基板上の目標位置に移動させる際に、基板上でのみ前倒し下降させる構成の例を示したが、本発明はこれに限られない。本発明では、基板上以外の現在位置、たとえば部品吸着位置や撮像位置などから、目標位置に移動させる際に、基板上の部品以外の障害物(たとえば、撮像部、基板搬送部など)の情報に基づいて、基板上以外で障害物と干渉しない範囲で前倒し下降を行った上で、さらに基板上で前倒し下降を行うようにしてもよい。
また、上記第1および第2実施形態では、サーバPCの記憶部に部品搭載情報が記憶されており、部品実装装置(基板作業装置)の制御部は、サーバPCにアクセスして、部品搭載情報を取得および更新するように構成されている例を示したが、本発明はこれに限られない。本発明では、上流の部品実装装置が、1つの部品の搭載毎や、1つの部品グループ(ヘッドユニットに吸着された部品グループ)の搭載毎などに、下流の基板作業装置に対して部品搭載情報を送信するように構成してもよい。
また、部品実装装置が、1つの部品の搭載毎や、1つの部品グループ(ヘッドユニットに吸着された部品グループ)の搭載毎などに、部品実装装置内の記憶部に部品搭載情報を記憶して管理するとともに、基板を下流の基板作業装置に向けて搬出する際に、下流の基板作業装置に対して部品搭載情報を送信するように構成してもよい。
また、上記第1および第2実施形態では、説明の便宜上、制御部の処理動作を処理フローに沿って順番に処理を行うフロー駆動型のフローチャートを用いて説明したが、本発明はこれに限られない。本発明では、制御部の処理動作を、イベント単位で処理を実行するイベント駆動型(イベントドリブン型)の処理により行ってもよい。この場合、完全なイベント駆動型で行ってもよいし、イベント駆動およびフロー駆動を組み合わせて行ってもよい。