(57)【特許請求の範囲】
【請求項１】
可動アームを用いて、搭載フレームである第１の部品に電子部品である第２の部品を搭載する部品の搭載装置において、
前記第１の部品を撮像した画像に基づいて、前記第１の部品が所定の基準状態からどれだけずれているかを表す第１のずれ量を算出する第１ずれ量算出部と、
前記第２の部品を保持した状態の前記可動アームを撮像した画像に基づいて、前記第２の部品が所定の基準状態からどれだけずれているかを表す第２のずれ量を算出する第２ずれ量算出部と、
前記可動アームを撮像した画像に基づいて、前記可動アームの長さ及び傾き角度が所定の基準値からどれだけずれているかを表す第３のずれ量を算出する第３ずれ量算出部と、
前記可動アームが前記第２の部品を前記第１の部品に搭載する位置を前記第１のずれ量、前記第２のずれ量、および第３のずれ量に基づいて補正して、前記可動アームを駆動するアーム駆動部と、
を備えることを特徴とする部品の搭載装置。
【請求項２】
前記第１ずれ量算出部は、前記第１のずれ量を前記可動アームの座標系で算出することを特徴とする請求項１に記載の部品の搭載装置。
【請求項３】
前記第３ずれ量算出部は、前記可動アームを少なくとも３つの異なる傾き角度で撮像した画像から、前記可動アームの位置と角度を抽出した情報に基づいて前記可動アームの長さ及び傾き角度が所定の基準値からどれだけずれているかを表す第３のずれ量を算出する
ことを特徴とする請求項１から２いずれか１項に記載の部品の搭載装置。
【請求項４】
可動アームを用いて、搭載フレームである第１の部品に電子部品である第２の部品を搭載する部品の搭載方法において、
前記第１の部品を撮像した画像に基づいて、前記第１の部品が所定の基準状態からどれだけずれているかを表す第１のずれ量を算出する第１ずれ量算出工程と、
前記第２の部品を保持した状態の前記可動アームを撮像した画像に基づいて、前記第２の部品が所定の基準状態からどれだけずれているかを表す第２のずれ量を算出する第２ずれ量算出工程と、
前記可動アームを撮像した画像に基づいて、前記可動アームの長さ及び傾き角度が所定の基準値からどれだけずれているかを表す第３のずれ量を算出する第３ずれ量算出工程と、
前記可動アームが前記第２の部品を前記第１の部品に搭載する位置を前記第１のずれ量、前記第２のずれ量、および第３のずれ量に基づいて補正して、前記可動アームを駆動するアーム駆動工程と、
を備えることを特徴とする部品の搭載方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、部品の搭載装置、部品の搭載方法に関する。
【背景技術】
【０００２】
部品の搭載装置において、特許文献１の図２のように、半導体素子２（部品Ａ）をリードフレーム９（部品Ｂ）に搭載する場合、レールの上に部品Ａがあり、部品Ａは部品取り付け用コレット８で吸着されて部品Ｂに装着される。この場合、装着精度は、レール上に置かれた部品Ｂ位置と部品取り付け用コレット８との位置関係、および部品Ｂの位置に依存する。このため、部品取り付け用コレット８で装着する前の部品Ａの位置と部品取り付け用コレット８を画像認識により検出する。これにより、部品取り付け用コレット８は精度良く部品Ａを吸着できる。次に、部品Ｂの中心位置を画像認識により検出し、検出された値と部品Ｂを撮像するカメラの画像中心位置とを比較して部品Ｂの中心位置のずれ量を検出する。検出された部品Ｂの中心位置のずれ量に基づき、コレット８が吸着した部品Ａを部品Ｂに精度良く搭載する方法が提案されている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００４−３１１５６９号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら、従来の部品の搭載装置では、コレットで吸着する前に部品Ａの位置とコレットの予め定められた始点とのずれを、撮像された画像を用いて検出して、検出されたずれ量に基づいてコレットを移動させて吸着させていた。つまり、実際にコレットに部品Ａを吸着した状態でのずれ量を検出しているのではないため、吸着後にずれがある場合、部品Ａを部品Ｂに精度良く搭載できない場合があるという課題があった。また、部品Ａを搭載する部品Ｂの中心位置と部品Ｂを撮像するカメラの画像中心とを比較して部品Ｂの中心位置のずれ量を検出していたが、撮像するカメラの画像中心と搭載を行うコレットの始点との関係が一致していない場合には、搭載すべき目的の座標にコレットを移動できない場合もあり、部品Ａを部品Ｂに精度良く搭載できない場合があるという課題があった。
【０００５】
本発明は、上記の問題点に鑑みてなされたものであって、部品Ａを部品Ｂに精度良く搭載する部品の搭載装置、部品の搭載方法を提供することを目的としている。
【課題を解決するための手段】
【０００６】
本発明の部品の搭載装置は、可動アームを用いて、搭載フレームである第１の部品に電子部品である第２の部品を搭載する部品の搭載装置において、
前記第１の部品を撮像した画像に基づいて、前記第１の部品が所定の基準状態からどれだけずれているかを表す第１のずれ量を算出する第１ずれ量算出部と、
前記第２の部品を保持した状態の前記可動アームを撮像した画像に基づいて、前記第２の部品が所定の基準状態からどれだけずれているかを表す第２のずれ量を算出する第２ずれ量算出部と、
前記可動アームを撮像した画像に基づいて、前記可動アームの長さ及び傾き角度が所定の基準値からどれだけずれているかを表す第３のずれ量を算出する第３ずれ量算出部と、
前記可動アームが前記第２の部品を前記第１の部品に搭載する位置を前記第１のずれ量、前記第２のずれ量、および第３のずれ量に基づいて補正して、前記可動アームを駆動するアーム駆動部と、
を備えることを特徴とする。
【０００７】
また、本発明にかかる部品の搭載装置は、前記第１ずれ量算出部は、前記第１のずれ量を前記可動アームの座標系で算出することを特徴としている。
【０００８】
また、本発明にかかる部品の搭載装置は、前記第３ずれ量算出部は、前記可動アームを少なくとも３つの異なる傾き角度で撮像した画像から、前記可動アームの位置と角度を抽出した情報に基づいて前記可動アームの長さ及び傾き角度が所定の基準値からどれだけずれているかを表す第３のずれ量を算出することを特徴としている。
【０００９】
また、本発明は、可動アームを用いて、搭載フレームである第１の部品に電子部品である第２の部品を搭載する部品の搭載方法において、
前記第１の部品を撮像した画像に基づいて、前記第１の部品が所定の基準状態からどれだけずれているかを表す第１のずれ量を算出する第１ずれ量算出工程と、
前記第２の部品を保持した状態の前記可動アームを撮像した画像に基づいて、前記第２の部品が所定の基準状態からどれだけずれているかを表す第２のずれ量を算出する第２ずれ量算出工程と、
前記可動アームを撮像した画像に基づいて、前記可動アームの長さ及び傾き角度が所定の基準値からどれだけずれているかを表す第３のずれ量を算出する第３ずれ量算出工程と、
前記可動アームが前記第２の部品を前記第１の部品に搭載する位置を前記第１のずれ量、前記第２のずれ量、および第３のずれ量に基づいて補正して、前記可動アームを駆動するアーム駆動工程と、
を備えることを特徴としている。
【発明の効果】
【００１０】
本発明によれば、第１の部品が所定の基準状態からどれだけずれているかを表す第１のずれ量を求め、また、可動アームが第２の部品を保持した状態において第２の部品が所定の基準状態からどれだけずれているかを表す第２のずれ量を求め、さらに、可動アームの長さ及び傾き角度の基準値からの第３のずれ量を求める。この求められた３つのずれ量を用いて、第２の部品の搭載位置のずれ量を補正して可動アームを駆動するようにしたので、搭載される部品を搭載する部品上に精度良く搭載することが可能になる。
【図面の簡単な説明】
【００１１】
【図１】本発明の実施形態に係る部品搭載装置のシステム全体の構成例を示す概略図である。
【図２】同実施形態に係る部品搭載装置の構成の一例を示すブロック図である。
【図３】同実施形態に係る部品搭載装置のアームとその先端に装着される取り付け部とキャリブレーション治具の概略図である。
【図４】同実施形態に係る部品搭載装置の搭載ロボットの概略図である。
【図５】同実施形態に係る固定パラメータ記憶部に保持されているデータの一例を示す図である。
【図６】同実施形態に係る搭載フレームの概略図とフレーム・パラメータ記憶部に保持されているデータの一例を示す図である。
【図７】同実施形態に係るカメラ４によるアーム８が接続子１１を吸着した状態の画像の一例である。
【図８】同実施形態に係る部品搭載装置のキャリブレーションのフローチャートの一例である。
【図９】同実施形態に係る部品搭載装置のキャリブレーションのフローチャートの一例である。
【図１０】同実施形態に係るカメラ４の撮像画像の概略図と搭載ロボットの状態の概略図である。
【図１１】同実施形態に係るカメラ２および３の撮像画像の概略図と搭載ロボットの状態の概略図である。
【図１２】同実施形態に係るカメラ２，３，４の各座標系を説明する概略図である。
【図１３】同実施形態に係るキャリブレーション時のアーム８の傾きのずれ量の求めかたを説明する概略図である。
【図１４】同実施形態に係るアーム８の長さのずれ量の求め方を説明する概略図である。
【図１５】同実施形態に係るアーム８の長さのずれ量の求め方を説明する概略図である。
【図１６】同実施形態に係るアーム８の長さのずれ量の求め方を説明する概略図である。
【図１７】同実施形態に係るカメラ２および３が撮像した基準点の変換を説明する概略図である。
【図１８】同実施形態に係る搭載フレーム１２の各列における補正された座標の一例を示す図である。
【図１９】同実施形態に係るカメラ４が撮像した接続子の基準点の変換を説明する概略図である。
【図２０】同実施形態に係る搭載ロボットに指示する搭載フレームの各列への搭載位置の座標の一例を示す図である。
【発明を実施するための形態】
【００１２】
以下、図１〜１９を用いて本発明実施形態について詳細に説明する。なお、本発明は係る実施形態に限定されず、その技術思想の範囲内で種々の変更が可能である。  
【００１３】
まず、図１〜７を用いて、本実施形態における部品搭載装置の構成について説明する。図１は、本実施形態における部品搭載装置のシステム全体の構成例を示す概略図である。また、図２は、本実施形態における部品搭載装置の構成の一例を示すブロック図である。また、図３は、本実施形態における部品搭載装置のアーム先端に取り付けるキャリブレーション治具および取り付け部の概略図である。図４は、本実施形態における部品搭載装置の搭載ロボットの概略図である。図５は、本実施形態におけるパラメータ記憶部に保持されているデータの一例を示す図である。図６は、本実施形態における搭載フレームの概略図と搭載フレームの各列の重心位置のデータの一例を示す図である。図７は、本実施形態におけるカメラによるアームが接続子を吸着した状態の画像の一例である。
【００１４】
図１、２および５において、部品搭載装置は、搭載ロボット１と、カメラ２と、カメラ３と、カメラ４と、制御ユニット５と、アーム駆動部６と、ステージ７から構成されている。また、搭載ロボット１により接続子成形装置９から吸着された接続子１１は、ステージ上の搭載フレーム１２に搭載される。
【００１５】
搭載ロボット１は、アーム８を備える。また、図３のように、搭載ロボット１は、アーム８の先端に装着されたキャリブレーション治具１３をアーム駆動部６により、所定の位置に移動する。また、搭載ロボット１は、アーム８の先端に装着された取り付け部２１１により吸着した接続子１１を、制御ユニット５で演算された所定の搭載位置にアーム駆動部６により移動し、接続子１１を搭載フレーム１２に搭載する。
【００１６】
カメラ２およびカメラ３は、搭載ロボット１のアーム８の先端に装着されたキャリブレーション治具１３の画像を撮像する。また、カメラ２およびカメラ３は、ステージ７上に置かれた搭載フレーム１２が所定の位置で停止した後、搭載フレーム１２の画像を撮像する。また、カメラ２およびカメラ３は、撮像した画像を制御ユニット５に送る。また、カメラ２およびカメラ３は、搭載フレーム１２に対して、図１のように上側に設置されている。
【００１７】
カメラ４は、搭載ロボット１のアーム８の先端に装着されたキャリブレーション治具１３が所定の位置にきたとき、キャリブレーション治具１３の画像を撮像する。また、カメラ４は、搭載ロボット１のアーム８の先端に装着された取り付け部２１１が、接続子１１を吸着して所定の位置で停止した後、アーム８の先端に装着された取り付け部２１１に吸着された接続子１１の画像を撮像する。また、カメラ４は、撮像した画像を制御ユニット５に送る。また、カメラ４は、図１のように接続子１１に対して下側に配置されている。また、カメラ４は、後述するロボット座標に対して、時計回りに９０゜回転して取り付けられている。
【００１８】
制御ユニット５は、予め搭載フレーム１２内の複数の部品の各位置情報に関しての設定（以下、搭載フレーム１２の設計値）値を制御ユニット５内に記憶する。また、制御ユニット５は、カメラ２、カメラ３およびカメラ４から撮像された画像を受け取る。また制御ユニット５は、撮像された画像から撮像された部品位置の情報を検出する。また、制御ユニット５は、キャリブレーション処理時に、アーム８を所定の位置に制御する信号をアーム駆動部６に送る。また、制御ユニット５は、接続子１１の搭載時に、アーム駆動部６に、接続子１１を吸着するために接続子成形装置９の所定の移動指示を行う。また、制御ユニット５は、接続子１１の搭載時に、後述する手順により、カメラ２〜４から受け取った画像と記憶されている搭載フレーム１２の設計値を用いて、アーム８の先端に装着された取り付け部２１１が吸着した接続子１１の移動先の補正値を演算する。また、制御ユニット５は、演算された補正値に基づき、アーム８の先端に装着された取り付け部２１１が吸着した接続子１１の搭載フレーム１２上への移動先座標を演算して、求めた移動先座標をアーム駆動部６に送る。
【００１９】
アーム駆動部６は、キャリブレーション処理時に、アーム８の先端に取り付けられたキャリブレーション治具１３を、制御ユニットからの制御によりカメラ２、カメラ３およびカメラ４の画面内の所定位置に移動させる。また、アーム駆動部６は、アーム８と装着された取り付け部２１１を、制御ユニットからの制御により接続子１１を成形する接続子成形装置９の所定の位置に移動させ、接続子１１を吸着する。また、アーム駆動部６は、接続子１１を吸着後、制御ユニットからの制御によりカメラ４の画面内の所定位置に移動する。また、アーム駆動部６は、制御ユニット５が算出した搭載位置への制御信号を受け取り、受け取った制御信号に基づいて搭載ロボット１のアーム８と装着された取り付け部２１１を搭載位置に駆動する。
【００２０】
ステージ７は、ステージ７上に置かれている搭載フレーム１２を所定の位置で停止させる。
【００２１】
アーム８は、搭載ロボット１のメンテナンス作業時等に取り外し可能な部品であり、搭載ロボット１に装着されている。また、アーム８は、図３のように、先端にキャリブレーション処理時にキャリブレーション治具１３が装着され、接続子１１を搭載フレーム１２に搭載する時に取り付け部２１１を装着される。
【００２２】
接続子成形装置９は、接続子１１が金型を用いて切断等により成型される装置である。
【００２３】
次に、制御ユニット５の構成について、図２のブロックを用いて説明する。制御ユニット５は、画像認識部１０１と、画像認識部１０２と、基準位置座標変換部１０３と、固定パラメータ記憶部１０４と、キャリブレーション部１０５と、フレーム・パラメータ記憶部１０６と、第１補正量算出部１０７と、第２補正量算出部１０８と、第３補正量算出部１０９と、搭載座標算出部１１０とから構成されている。
【００２４】
画像認識部１０１は、カメラ２とカメラ３で撮像された画像を受け取る。また、キャリブレーション処理時、画像認識部１０１は、受け取った画像からアーム８の先端に装着されたキャリブレーション治具１３の基準マーク２１３を、カメラ座標による位置および基準方向に対する角度を検出する。また、画像認識部１０１は、検出された基準マーク２１３のカメラ座標による位置および基準方向に対する角度を固定パラメータ記憶部１０４に記憶する。また、接続子１１の搭載時、画像認識部１０１は、受け取った画像から搭載フレーム１２の基準点を、カメラ座標による位置および基準方向に対する角度を検出する。基準方向は、各カメラ画像において水平方向か垂直方向など一意の方向を用いる。
【００２５】
図３は、アーム８とその先端に装着される取り付け部２１１とキャリブレーション治具１３の概略図である。図３（ａ）において、接続子１１を搭載フレーム１２に搭載時、アーム８の先端には取り付け部２１１が装着される。また、取り付け部２１１の下側には、接続子１１を吸着する吸着部２１２を備える。また、搭載フレーム１２の基準点は、図３（ａ）において、１列目の重心ＧＤ１（ｘＤ１，ｙＤ１，θＤ１）と、３０列目の重心ＧＤ３０（ｘＤ３０，ｙＤ３０，θＤ３０）である。
図３（ｂ）において、キャリブレーション時、アーム８の先端にキャリブレーション治具１３が装着される。また、キャリブレーション治具１３には、キャリブレーション時に位置検出される十字の穴（基準マーク）２１３が備えられている。
【００２６】
画像認識部１０２は、カメラ４で撮影された画像を受け取る。また、画像認識部１０２は、キャリブレーション処理時、受け取った画像からアーム８の先端に装着されたキャリブレーション治具１３の基準マーク２１３を、カメラ座標による位置および基準方向に対する角度を検出する。また、画像認識部１０２は、検出された基準マーク２１３のカメラ座標による位置および基準方向に対する角度を固定パラメータ記憶部１０４に記憶する。
また、接続子１１を搭載フレーム１２へ搭載時、画像認識部１０１は、受け取った画像から接続子１１の基準点を、カメラ座標による位置および基準方向に対する角度を検出する。
【００２７】
基準位置座標変換部１０３は、画像認識部１０１および画像認識部１０２により検出されたアーム８の先端に装着されたキャリブレーション治具１３の基準マーク２１３の位置および基準方向に対する角度を各カメラ座標の値で受け取る。また、基準位置座標変換部１０３は、画像認識部１０１と１０２から受け取った基準マーク２１３の各座標および基準方向に対する各角度を、搭載ロボット１の定められた位置ｃｒ（ｘ，ｙ）を基準にしたロボット座標値に変換する。また、基準位置座標変換部１０３は、ロボット座標に変換された基準マーク２１３の各座標および基準方向に対する各角度を固定パラメータ記憶部１０４に記憶する。
【００２８】
図４は、本実施形態における搭載ロボット１の概略図である。図４において、搭載ロボット１は、搭載ロボット本体２０１と、可動部２０２と、アーム８から構成されている。アーム８は、アーム駆動部６からの駆動信号により可動部２０２が可動して、所定の位置に駆動される。また、図４において、ｃｒ（ｘ，ｙ）はアーム８を搭載ロボット本体２０１に対して垂直な位置にした線状の可動部２０２と搭載ロボット本体２０１との間の一意の位置に設定されている。
【００２９】
固定パラメータ記憶部１０４は、画像認識部１０１で検出された基準マーク２１３のカメラ座標による位置および基準方向に対する角度と、画像認識部１０２で検出された基準マーク２１３のカメラ座標による位置および基準方向に対する角度と、基準位置座標変換部１０３でロボット座標に変換された基準マーク２１３のカメラ座標による各位置および基準方向に対する各角度と、後述するアーム８の長さと、アーム８の傾きずれ量と、キャリブレーション治具１３と取り付け部２１１との座標差および傾き角度差が保持する。
【００３０】
図５は、本実施形態における固定パラメータ記憶部１０４に保持されているデータの構成例である。固定パラメータ記憶部１０４には、カメラ２で撮像された基準マーク２１３の中心位置のカメラ２上での座標値と、カメラ２で撮像された基準マーク２１３の中心位置をロボット座標に変換した座標値と、カメラ２の分解能と、カメラ３で撮像された基準マークの中心位置のカメラ３上での座標値と、カメラ３で撮像された基準マーク２１３の中心位置をロボット座標に変換した座標値と、カメラ３の分解能と、カメラ４で撮像された基準マーク２１３の中心位置のカメラ４上での座標値と、カメラ４で撮像された基準マーク２１３の中心位置をロボット座標に変換した座標値と、カメラ４の取り付け角度と、カメラ４の分解能、およびステップＳ２で実測されたアーム８の長さと、後述するアーム８の傾きのずれ量が関連付けられて保持されている。
【００３１】
キャリブレーション部１０５は、キャリブレーション時に、後述する手順で、アーム８を所定の位置に移動させるための制御信号をアーム駆動部６に送信する。また、キャリブレーション部１０５は、アーム駆動部６に送信した制御信号に基づき、アーム８の移動先の座標を第３補正量算出部１０９に送信する。
【００３２】
フレーム・パラメータ記憶部１０６は、図６（ａ）のように、搭載フレーム１２を構成する複数の子部品において、搭載フレームの重心Ｇ（ｘ，ｙ，θ）を原点として、各列の重心位置の各座標と各傾き角度を保持する。また、フレーム・パラメータ記憶部１０６に保持されているデータは、搭載フレーム１２についての設計値から求めた各値が保持されている。図６（ｂ）は、フレーム・パラメータ記憶部１０６に保持されているデータ構造の一例である。搭載フレーム１２の各列の重心の座標ＧＤｉ（ｘＤｉ，ｙＤｉ）と傾きθＤｉが保持されている。なお、ｘ軸に関しては下から上方向を正方向とし、ｙ軸に関しては右から左方向を正方向とし、角度については、時計回りを正と定義する。
【００３３】
第１補正量算出部１０７は、搭載フレーム１２に接続子１１を搭載する時、画像認識部１０１で検出された搭載フレーム１２の基準点ＧＤ１（ｘＤ１，ｙＤ１，θＤ１）とＧＤ３０（ｘＤ３０，ｙＤ３０，θＤ３０）を、カメラ座標による位置および基準方向に対する角度として受け取る。また、基準点ＧＤ１とＧＤ３０の位置および基準方向に対する角度として受け取った後、固定パラメータ記憶部１０４に記憶されているデータと、フレーム・パラメータ記憶部１０６に記憶されているデータを用いて、後述する手順により第１の補正量を算出する。また、第１補正量算出部１０７は、算出された第１の補正量を搭載座標算出部１１０に送信する。
【００３４】
すなわち、第１補正量算出部１０７は、固定パラメータ記憶部１０４に保持されている搭載フレーム１２の設計値と、実際にカメラ２および３で撮像された画像から検出された搭載フレーム１２の左右の基準点ＧＤ１およびＧＤ３０とを用いて、搭載フレーム１２のずれ量である第１の補正量を算出する。
【００３５】
第２補正量算出部１０８は、アーム８の先端に装着された取り付け部２１１により接続子１１が吸着された後、画像認識部１０２で検出された複数の接続子１１の基準点ＧＣ（ｘＣ，ｙＣ，θＣ）を、カメラ座標による位置および基準方向に対する角度として受け取る。また、基準点ＧＣの位置および基準方向に対する角度として受け取った後、固定パラメータ記憶部１０４に記憶されているデータを用いて、後述する手順により第２の補正量を算出する。また、  第２補正量算出部１０８は、算出された第２の補正量を搭載座標算出部１１０に送信する。
【００３６】
図７は、本実施形態におけるカメラ４によるアーム８が接続子１１を吸着した状態の画像の一例である。アーム８に装着された取り付け部２１１の下側にある吸着部２１２は、図７のように、一度に１０個の接続子１１が吸着する。制御ユニットによる制御により、アーム８が、この１０個の接続子１１を図６（ａ）で説明した搭載アーム１２の各列に後述する手順で同時に搭載する。
【００３７】
すなわち、第２補正量算出部１０８は、カメラ４で撮像された画像から検出されたアーム８に装着された取り付け部２１１に吸着された状態の接続子１１の基準点ＧＣを用いて、接続子１１のずれ量である第２の補正量を算出する。
【００３８】
第３補正量算出部１０９は、キャリブレーション時、画像認識部１０１と画像認識部１０２で検出されたアーム８に装着されているキャリブレーション治具１３の基準マーク２１３のカメラ座標による各位置と各傾き角度と、キャリブレーション部１０５からアーム８の移動先の座標を受け取る。また、第３補正量算出部１０９は、受け取った基準マーク２１３のカメラ座標による各位置と各傾き角度と、アーム８の移動先の座標を用いて、具述する方法でアーム８の傾きずれ量とアーム８の長さを第３の補正量として算出する。また、第３補正量算出部１０９は、算出された第３の補正量を搭載座標算出部１１０に送信する。また、第３補正量算出部１０９は、算出された第３の補正量を固定パラメータ記憶部１０４に記憶する。
【００３９】
すなわち、第３補正量算出部１０９は、カメラ４で撮像された画像から検出されたアーム８に装着されたキャリブレーション治具１３の基準マーク２１３の基準点ＧＣを用いて、アーム８のずれ量である第３の補正量を算出する。
【００４０】
搭載座標算出部１１０は、第１補正量算出部１０７により算出された第１の補正量と、第２補正量算出部１０８により算出された第２の補正量と、第３補正量算出部１０８により算出された第３の補正量を受け取る。また、搭載座標算出部１１０は、受け取った補正量を用いて、接続子１１を吸着したアーム８の搭載フレーム１２への搭載位置を算出する。また、搭載座標算出部１１０は、算出された搭載位置をアーム駆動部６に送信する。
以上で、制御ユニット５の説明を終了する。
【００４１】
次に、本実施形態における部品搭載装置の搭載手順を、図８〜２０を用いて説明する。まず、接続子１１を搭載フレーム１２に搭載する前に行うキャリブレーションの手順を図８〜図１２を用いて説明する。図８および９は、本実施形態における部品搭載装置のキャリブレーションのフローチャートの一例である。図１０は、本実施形態におけるカメラ４の撮像画像の概略図と搭載ロボットの状態の概略図である。図１１は、本実施形態におけるカメラ２および３の撮像画像の概略図と搭載ロボットの状態の概略図である。図１２は、本実施形態におけるカメラ２〜４における座標を説明する概略図である。まず、搭載ロボット１のアーム８先端にキャリブレーション治具１３を装着する（Ｓ１）。
【００４２】
次に、本部品搭載装置の利用者がアーム８の長さＬ［ｍｍ］をメジャー等で実測して、実測された値を制御ユニット５の固定パラメータ記憶部１０４に記憶する（Ｓ２）。
【００４３】
次に、制御ユニット５のキャリブレーション部１０５からの指示により、アーム駆動部６が、キャリブレーション治具１３が装着されたアーム８を、所定の角度で所定の位置に移動させる（Ｓ３）。以下、アーム８は、アーム駆動部６がキャリブレーション部１０５からの制御信号により制御されて移動する。
【００４４】
まず、キャリブレーション部１０５から指示されたカメラ４の中心座標に、アーム８の傾き角度θ＝−９０゜にし、アーム駆動部６が可動部２０２とアーム８を可変させて移動させる。指示された位置にアーム８が移動した後、カメラ４は、撮像データを取得する（Ｓ４）。なお、アームの傾き角度は、図１０のように、図４の状態を初期状態のθ＝０゜とし、時計回り方向をマイナス角度とする。また、図１０（ａ）は、アーム８の傾き角度θ＝−１３５゜の時の可動部２０２とアーム８の状態概略図とカメラ４に映し出された画像の概略図である。また、図１０（ａ）のように、アーム８の下側に設置されているカメラ４上の画像は、θ＝−９０゜の時にアーム８先端部に装着されているキャリブレーション治具１３が水平に映し出される角度で設置されている。
次に、キャリブレーション部１０５から指示されたカメラ４の中心座標に、アーム８の傾き角度θ＝−１３５゜にし、アーム駆動部６が可動部２０２とアーム８を可変させて移動させる。指示された位置にアーム８が移動した後、カメラ４は、撮像データを取得する（Ｓ４）。図１０（ｂ）は、アーム８の傾き角度θ＝−１３５゜の時の可動部２０２とアーム８の状態概略図とカメラ４に映し出された画像の概略図である。アーム８の傾き角度をカメラ４の画像で左右が反転している理由は、カメラ４がアーム８の下側に設置されていて下側から撮像しているためである。
次に、キャリブレーション部１０５から指示されたカメラ４の中心座標に、アーム８の傾き角度θ＝−４５゜にし、アーム駆動部６が可動部２０２とアーム８を可変させて移動させる。指示された位置にアーム８が移動した後、カメラ４は、撮像データを取得する（Ｓ４）。図１０（ｃ）は、アーム８の傾き角度θ＝−４５゜の時の可動部２０２とアーム８の状態概略図とカメラ４に映し出される画像の概略図である。
【００４５】
次に、キャリブレーション部１０５から指示されたカメラ２の中心座標に、アーム駆動部６が可動部２０２とアーム８を可変させて移動させる。指示された位置にアーム８が移動した後、カメラ２は、撮像データを取得する（Ｓ４）。図１１（ａ）は、搭載フレーム１２の左の基準位置ＧＤ１における可動部２０２とアーム８の状態概略図とカメラ２に映し出される画像の概略図である。なお、カメラ２の撮影倍率がカメラ５より高いため、キャリブレーション治具１３の基準マークの十字の穴がカメラ２に写しだされている。
次に、キャリブレーション部１０５から指示されたカメラ３の中心座標に、アーム駆動部６が可動部２０２とアーム８を可変させて移動させる。指示された位置にアーム８が移動した後、カメラ３は、撮像データを取得する（Ｓ４）。図１１（ｂ）は、搭載フレーム１２の右基準位置ＧＤ３０における可動部２０２とアーム８の状態概略図とカメラ３に映し出される画像の概略図である。
【００４６】
次に、カメラ２、３で撮像された画像を画像認識部１０１が受け取り、受け取った画像（図１１）からキャリブレーション治具１３の基準マーク２１３の中心座標ｃ１（ｘ１，ｙ１）およびｃ３０（ｘ３０，ｙ３０）を検出する（Ｓ５）。また、カメラ４で撮像された画像を画像認識部１０２が受け取り、受け取った画像のうちθ＝−９０゜の画像（図１０（ａ））からキャリブレーション治具１３の基準マーク２１３の中心座標ｐ１（ｘＰ１，ｙＰ１）を検出する（Ｓ５）。
図１２を用いて、各カメラ座標について説明する。図１２は、本実施形態におけるカメラ２，３，４の各座標系を説明する概略図である。図１１と１２において検出される基準マーク２１３の中心座標ｃ１（ｘ１，ｙ１）とｃ３０（ｘ３０，ｙ３０）およびｐ１（ｘＰ１，ｙＰ１）は、図１２のように各カメラにおける座標であり、右下を原点として、カメラ２および３は縦軸の最大値４７９ピクセル、横軸の最大値６３９ピクセルであり、カメラ４は縦軸の最大値１０２３ピクセル、横軸の最大値７６７ピクセルである。また、縦軸をｘ軸として、原点から上方向を正方向とし、横軸をｙ軸として、原点から左方向をプラス方向と本実施形態では定義する。
本実施形態では、カメラ２が撮像した画像から基準マーク２１３の中心座標ｃ１（ｘ１，ｙ１）＝（３１４．０８２，２４９．７９４）が検出され、カメラ３が撮像した画像から基準マーク２１３の中心座標ｃ３０（ｘ３０，ｙ３０）＝（２９７．８１８，１９８．２８２）が検出され、カメラ４が撮像したθ＝−９０゜の画像からら基準マーク２１３の中心座標ｐ１（ｘＰ１，ｙＰ１）（５０８．１８１，４１２．７１９）が検出される。
ただし、カメラ４は、ロボット座標に対して時計回りに９０゜回転して取り付けられているため、カメラ４から取得された画像は図１２（ｃ）のような座標関係になっている。
また、画像認識部１０１および画像認識部１０２は、各画像から検出された各基準マーク２１３の中心座標を固定パラメータ記憶部１０４に記憶する。
【００４７】
次に、画像認識部１０１および画像認識部１０２は、検出された基準マーク２１３の中心座標を基準位置座標変換部１０３に送信する。また、図１０において、キャリブレーション部１０５は、各キャリブレーション状態における各アーム８の根元の座標ｂ１（ｘ，ｙ）とｂ２（ｘ，ｙ）およびｂ３（ｘ，ｙ）を第３補正量算出部１０９に送信する。第３補正量算出部１０９は、キャリブレーション部１０５から各キャリブレーション状態における各アーム８の根元の座標を受け取る（Ｓ６）。
【００４８】
次に、基準位置座標変換部１０３は受け取った基準マーク２１３の中心座標を、ロボット座標に変換する（Ｓ７）。本実施形態では、ロボット座標は、図４のように、搭載ロボット１に対して予め定められた一意の座標ｃｒ（ｘ，ｙ）を原点（基準点）として、アーム８の可動範囲内を単位ｍｍで表すものと定義する。これにより、本実施形態では、カメラ２が撮像した画像から基準マークの中心座標（３１４．０８２，２４９．７９４）[ｐｉｘｅｌ]は（１７０．９７０，−５９．４２４）[ｍｍ］に変換され、カメラ３が撮像した画像から基準マークの中心座標ｃ（２９７．８１８，１９８．２８２）[ｐｉｘｅｌ]は（１７０．９８０，−２４９．７５５）[ｍｍ］に変換され、カメラ４が撮像したθ＝−９０゜の画像からら基準マークの中心座標（５０８．１８１、４１２．７１９）[ｐｉｘｅｌ]は（２４１．４９０，−１０７．８１５）[ｍｍ］に変換される。
また、基準位置座標変換部１０３は、カメラ４の取り付け角度をロボット座標に対して時計回りに９０゜回転して取り付けられているため、傾き−９０゜すなわち−π／２＝−１．５７１とする。また、基準位置座標変換部１０３は、変換された各座標およびカメラ４の取り付け角度を固定パラメータ記憶部１０４に記憶する。
【００４９】
図１３（ａ）のように、θ＝−１３５゜の時、第３補正量算出部１０９は、キャリブレーション部１０５から受け取ったアーム８の根元の座標ｂ２（ｘ，ｙ）と、固定パラメータ記憶部１０４に記憶されている基準マーク２１３の中心座標ｐ２（ｘｐ２，ｙｐ２）とを用いて、アーム８の根元の座標を始点とし基準マーク２１３の中心を終点とする直線Ｐ２を生成する。また、θ＝−４５゜の時、第３補正量算出部１０９は、キャリブレーション部１０５から取得したアーム８の根元の座標ｂ３（ｘ，ｙ）と、固定パラメータ記憶部１０５基準マークの中心座標ｐ３（ｘｐ３，ｙｐ３）とを用いて、アーム８の根元の座標を始点とし基準マークの中心を終点とする直線Ｐ３を生成する。
次に、図１３（ｂ）のように、第３補正量算出部１０９は、直線Ｐ２の始点ｂ２（ｘ，ｙ）と、直線Ｐ３の始点ｂ３（ｘ，ｙ）を重ねる演算を行う。
次に、図１３（ｃ）のように、第３補正量算出部１０９は、直線Ｐ２の終点ｐ２（ｘｐ２，ｙｐ２）と、直線Ｐ３の終点ｐ３（ｘｐ３，ｙｐ３）を直線で結ぶ直線を生成する。
次に、図１３（ｄ）のように、第３補正量算出部１０９は、生成されたｐ２とｐ３を結ぶ直線と、ｘ軸とのなす角θを式（１）より求める。
θ＝ｔａｎ−１（（ｙｐ２−ｙｐ３）／｜ｘｐ２−ｘｐ３｜）・・・式（１）
式（１）で求めたなす角θは、アーム８の傾きずれ量にあたる。式（１）において、解が正なら反時計回りの傾きずれであり、解が負なら時計回りの傾きずれを意味する。
【００５０】
次に、第３補正量算出部１０９は、求めたアーム８の傾きずれ量θが、ずれ量の許容範囲＝±０．５゜以内か否か判別する（Ｓ９）。ステップＳ９の判別結果、ずれ量θが許容範囲より大きい場合（Ｓ９：Ｎｏ）、ステップＳ１に戻りアーム８の先端に調整治具１３を装着し直して、ステップＳ２〜Ｓ８を繰り返す。ステップＳ９の判別結果、ずれ量θが許容範囲以内の場合（Ｓ９：Ｙｅｓ）、第３補正量算出部１０９はずれ量θを固定パラメータ記憶部１０４に記憶し、ステップＳ１０のアーム８の長さのずれ量演算処理に進む。例えば、アーム８の傾きがθ＝０．２７１００９［ｄｅｇ］と算出され、図５のように算出された傾きはロボット座標として角度の単位が変換されて０．００４７３［ｒａｄ］も合わせて固定パラメータ記憶部１０３に記憶される。
【００５１】
次に、アームの長さのずれ量の求め方を、図１４〜１６を用いて説明する。図１４〜１６は、本実施形態におけるアーム８の長さのずれ量の求め方を説明する概略図である。なお、座標はロボット座標を用いて行う。また、アーム８の傾きずれ量で生成された直線Ｐ２と直線Ｐ３も用いる。図１４（ａ）のように、θ＝−９０゜の時、第３補正量算出部１０９は、キャリブレーション部１０５から受け取ったアーム８の根元の座標ｂ１（ｘ，ｙ）と、固定パラメータ記憶部１０５基準マークの中心座標ｐ１（ｘｐ１，ｙｐ１）とを用いて、アーム８の根元の座標を始点とし基準マークの中心を終点とする直線Ｐ１を生成する。
次に、図１４（ｂ）のように、第３補正量算出部１０９は、直線Ｐ１とＰ２とＰ３を、終点ｐ１とｐ２とｐ３を中心としてそれぞれ反時計回りに９０゜回転させる。
次に、図１４（ｃ）のように、第３補正量算出部１０９は、９０゜回転させた直線Ｐ１とＰ２とＰ３を重ね合わせる。アーム８の長さのずれ量が無い場合、９０゜回転させた直線Ｐ１とＰ２とＰ３の終点ｐ１とｐ２とｐ３の座標は一致するため図１４（ｄ）のようになり、アーム８の長さのずれ量がある場合は、図１４（ｃ）のようになる。以下、アーム８の長さのずれ量があった場合について図１５〜１６を用いて説明を行う。
【００５２】
図１５（ａ）において、ｐ１（ｘｐ１，ｙｐ１）とｐ２（ｘｐ２，ｙｐ２）の中点（ｘＱ１，ｙｐ１）は、式（２）のように表される。
（ｘＱ１，ｙＱ１）＝（（ｘｐ１＋ｘｐ２）／２，（ｙｐ１＋ｙｐ２）／２）・・・式（２）
また、図１５（ｂ）において、中点（ｘＱ１，ｙＱ１）を通る垂線と、ｙ軸とのなす角θＡは、式（３）のように表される。
θＡ＝ｔａｎ−１（（ｙｐ２−ｙｐ１）／（ｘｐ２−ｘｐ１））・・・式（３）
また、図１５（ｃ）において、ｐ２（ｘｐ２，ｙｐ２）とｐ３（ｘｐ３，ｙｐ３）の中点（ｘＱ２，ｙｐ２）は、式（４）のように表される。
（ｘＱ２，ｙＱ２）＝（（ｘｐ２＋ｘｐ３）／２，（ｙｐ２＋ｙｐ３）／２）・・・式（４）
また、図１５（ｄ）において、中点（ｘＱ２，ｙＱ２）を通る垂線と、ｙ軸とのなす角θＢは、式（５）のように表される。
θＢ＝ｔａｎ−１（（ｙｐ３−ｙｐ２）／（ｘｐ３−ｘｐ２））・・・式（５）
また、図１６（ａ）において、中点（ｘＱ１，ｙＱ１）を通り傾きｔａｎθＡの直線は式（６）のように表される。
ｙ＝ｘ・ｔａｎθＡ＋（ｙＱ１−ｘＱ１・ｔａｎθＡ）・・・式（６）
同様に、中点（ｘＱ２，ｙｐ２）を通り傾きｔａｎθＢの直線は式（７）のように表される。
ｙ＝ｘ・ｔａｎθＢ＋（ｙＱ２−ｘＱ２・ｔａｎθＢ）・・・式（７）
また、図１６（ｂ）において、式（６）と式（７）の交点（ｘｃ，ｙｃ）は、式（８）〜（９）のように表される。
ｘｃ＝（（ｙＱ２−ｘＱ２・ｔａｎθＢ）−（ｙＱ１−ｘＱ１・ｔａｎθＡ））／（ｔａｎθＡ−ｔａｎθＢ）
＝ｘＱ１＋（（ｙＱ２−ｙＱ１）−（ｘＱ２−ｘＱ１）・ｔａｎθＢ）／（ｔａｎθＡ−ｔａｎθＢ）・・・式（８）
ｙｃ＝ｘｃ・ｔａｎθＡ＋（ｙＱ１−ｘＱ１・ｔａｎθＡ）・・・式（９）
次に、ｐ１（ｘｐ１，ｙｐ１）と交点（ｘｃ，ｙｃ）から、アームの長さＬを求める。
Ｌ＝ｙｐ１−（ｙｐ１−ｙｃ）
＝ｙｐ１−（ｙｐ１−ｘｃ・ｔａｎθＡ＋（ｙＱ１−ｘＱ１・ｔａｎθＡ））
＝ｙｐ１−（ｙｐ１−ｘＱ１＋（（ｙＱ２−ｙＱ１）−（ｘＱ２−ｘＱ１）・ｔａｎθＢ）／（ｔａｎθＡ−ｔａｎθＢ）・ｔａｎθＡ＋（ｙＱ１−ｘＱ１・ｔａｎθＡ））・・・式（１０）
上記の演算により求めたアーム８の長さのＬ［ｍｍ］を、第３補正量演算部１０９が、実測値と置き換えて、固定パラメータ記憶部１０４に記憶する。例えば、アーム８の長さは、以上の演算によりＬ＝１１２．１２５［ｍｍ］と算出され、図５のように固定パラメータ記憶部１０３に記憶される。
以上で、搭載ロボット１のアーム８のキャリブレーション処理を終了する。
【００５３】
すなわち、キャリブレーション処理では、アーム８に装着されたキャリブレーション治具１３をカメラ２〜４で撮像し、画像認識部１０１および１０２が撮像された画像からキャリブレーション治具１３に設けられている基準マーク２１３の位置と基準方向に対する傾きを検出する。また、画像認識部１０１および１０２は、検出された基準マーク２１３の位置と基準方向に対する傾きを固定パラメータ記憶部１０４に記憶する。また、基準位置座標変換部１０３は、画像認識部１０１および１０２から受け取った基準マーク２１３の中心座標をロボット座標に変換し、固定パラメータ記憶部１０４に記憶する。
さらに、第３補正量算出部１０９は、固定パラメータ記憶部１０４に保持されている基準マーク２１３の中心座標と、キャリブレーション部１０５から受け取ったアーム８の根元の座標を用いて、アーム８の基準方向に対する傾きのずれ量とアーム８の長さを、第３の補正量として算出して、固定パラメータ記憶部１０４に記憶する。
【００５４】
次に、図６の搭載フレームの概略図を用いて、搭載フレーム１２の設計値の登録について説明する。図６（ａ）のように、搭載フレーム１２には縦軸のｘ方向に１０行、横軸のｙ方向に３０列、すなわち３００個の子部品３０１から構成されている。後述するように、アーム８に吸着される接続子１１は、この１列分の１０個の接続子１１を同時に吸着して、搭載フレーム１２の各列に、同時に搭載を行う。
この搭載フレーム１２の中心である重心Ｇ（ｘ，ｙ、θ）を原点として、各列の重心の座標ＧＤｉ（ｘＤｉ，ｙＤｉ）（１≦ｉ≦３０）と、ｘ軸に対する各列の傾きθ＝−９０゜（−１．５７０８［ｒａｄ］）を設計値フレーム・パラメータとして、本部品搭載装置の利用者が予めフレーム・パラメータ記憶部１０６に記憶する（Ｓ１１）。
【００５５】
次に、アーム８の先端に装着されている調整治具１３を取り外し、図５（ａ）のように、取り付け部２１１を装着する。また、治具１３の基準マーク２１３の位置に対する取り付け部２１１の定められた位置との座標差を実測し、利用者が固定パラメータ記憶部１０４に記憶する（Ｓ１２）。例えば、キャリブレーション治具１３と取り付け部２１１との差がｘ軸成分はＸＯＣ＝０．２７０［ｍｍ］、ｙ軸成分はＹＯＣ＝０．０００［ｍｍ］、傾き成分はθ＝０．０００［ｒａｄ］を測定された場合、図５のように固定パラメータ記憶部１０４に記憶される。
【００５６】
次に、図６に戻って、第１補正処理であるフレーム位置補正処理を行う（Ｓ１３）。以下、図１７〜１８を用いてフレーム位置補正処理の説明を行う。図１７は、本実施形態におけるカメラ２および３が撮像した基準点の変換を説明する概略図である。
まず、ステージ７上の搭載フレーム１２を図示しないステージ７の駆動部により、所定の位置まで移動して停止する。カメラ２およびカメラ３は、搭載フレーム１２の左右に設定されている１列目と３０列目の重心である基準点ＧＤ１（ｘＤ１，ｙＤ１）とＧＤ３０（ｘＤ３０，ｙＤ３０）を撮像し、撮像された画像データを画像認識部１０１に送る。
画像認識部１０１は、受け取った画像データからカメラ座標上の基準点ＧＤ１とＧＤ３０の座標を検出し、第１補正量算出部１０７に送る。
次に、第１補正量算出部１０７は、受け取った基準点ＧＤ１とＧＤ３０の座標と、固定パラメータ記憶部１０４に記憶されているカメラ座標系の各カメラ位置の座標とを比較してずれ量を求める。
例えば、図１７のように、第１補正量算出部１０７が、カメラ２で撮像された搭載フレーム１２の基準点がＧＤ１（ｘＦ１，ｙＦ１，θＦ１）＝（２６７．８０８，２４５．９４５，０．００００）と、固定パラメータ記憶部１０４に記憶されているカメラ系の基準マーク２１３の中心位置ＧＤ１（ｘＦ１，ｙＦ１，θＦ１）＝（３１４．０８２，２４９．７９４，０．００００）を比較し、その差（ずれ量）（ｘＭＦ１，ｙＭＦ１，θＭＦ１）＝（−４６．２７４，−３．８４９，０．００００）を求める。同様に、第１補正量算出部１０７が、カメラ３で撮像された搭載フレーム１２の基準点がＧＤ３０（ｘＦ３０，ｙＦ３０，θＦ３０）＝（２４３．６４３，１９３．２０２，０．００００）と、固定パラメータ記憶部１０４に記憶されているカメラ系の基準マーク２１３の中心位置ＧＤ２０（ｘＦ３０，ｙＦ３０，θＦ３０）＝（２９７．８１８，１９３．２０２，０．００００）を比較し、その差（ずれ量）（ｘＭＦ２，ｙＭＦ２，θＭＦ２）＝（−５４．１７５，−５．０８０，０．００００）を求める。
【００５７】
次に、第１補正量算出部１０７は、固定パラメータ１０４に保持されている各カメラの分解能ＭＦ１およびＭＦ２と、算出された搭載フレーム１２のずれ量（ｘＭＦ１，ｙＭＦ１，θＭＦ１）および（ｘＭＦ２，ｙＭＦ２，θＭＦ２）の座標を用いて、ロボット座標に以下の式（１１）〜（１６）を用いて変換する。
ａ１＝（−ｙＭＦ１・ＭＦ１）ｃｏｓ（θＦＦ１）−（−ｘＭＦ１・ＭＦ１）ｓｉｎ（θＦＦ１）＋ｘＲＦ１・・・式（１１）
ｂ１＝（−ｙＭＦ１・ＭＦ１）ｓｉｎ（θＦＦ１）−（−ｘＭＦ１・ＭＦ１）ｃｏｓ（θＦＦ１）＋ｙＲＦ１・・・式（１２）
θ１＝Θ＋θＦＦ１・・・式（１３）
ａ３０＝（−ｙＭＦ２・ＭＦ２）ｃｏｓ（θＦＦ２）−（−ｘＭＦ２・ＭＦ２）ｓｉｎ（θＦＦ２）＋ｘＲＦ２・・・式（１４）
ｂ３０＝（−ｙＭＦ２・ＭＦ２）ｓｉｎ（θＦＦ２）−（−ｘＭＦ２・ＭＦ２）ｃｏｓ（θＦＦ２）＋ｙＲＦ２・・・式（１５）
θ３０＝Θ＋θＦＦ２・・・式（１６）
例えば、カメラ２で撮像された基準位置の座標は、式（１４）〜式（１６）を用いて変換すると、ａ１＝１７１．００７［ｍｍ］、ｂ１＝−５８．９７４［ｍｍ］、θ１＝０．００００［ｒａｄ］。同様に、カメラ３で撮像されたステージ７上の搭載フレーム１２の基準位置の座標も、それぞれａ３０＝−１７１．００２９［ｍｍ］、ｂ３０＝−２４９．２３７［ｍｍ］、θ３０＝０．００００［ｒａｄ］のように求まる。
【００５８】
次に、第１補正量算出部１０８は、求められたカメラ２および３で撮像されたロボット座標での基準点（ａ１，ｂ１）および（ａ３０，ｂ３０）と、以下の式（１７）〜（１９）を用いてロボット座標における搭載フレーム１２の重心を求める。
ｘＦｌａｍｅ＝（ａ１＋ａ３０）／２［ｍｍ］・・・式（１７）
ｙＦｌａｍｅ＝（ｂ１＋ｂ３０）／２［ｍｍ］・・・式（１８）
θＦｌａｍｅ＝−ｔａｎ−１（（ａ１−ａ３０）／（ｂ１−ｂ３０））［ｒａｄ］・・・式（１９）
例えば、式（１３）〜（１５）を用いて、ｘＦｌａｍｅ＝１７１．０１８［ｍｍ］、ｙＦｌａｍｅ＝−１５３．１０５［ｍｍ］、θＦｌａｍｅ＝０．０００１１６［ｒａｄ］が求められる。このように求められた搭載フレーム１２の重心は、具体的には列１５と１６の間Ｇ（ｘＦｌａｍｅ，ｙＦｌａｍｅ，θＦｌａｍｅ）を表す。
【００５９】
次に、第１補正量算出部１０８は、求められた搭載フレーム１２の左位置（カメラ２が撮像する位置）（ａ１，ｂ１，θ１）、搭載フレーム１２の右位置（カメラ３が撮像する位置）（ａ３０，ｂ３０，θ３０）および重心位置Ｇ（ｘＦｌａｍｅ，ｙＦｌａｍｅ，θＦｌａｍｅ）の値を用いて、搭載フレーム１２の列１〜３０における傾きθｉ（１≦ｉ≦３０）を、以下の式（２０）を用いて求める
θｉ＝θＤｉ＋θＦｌａｍｅ・・・式（２０）
例えば、θｉ＝−１．５７０６８が求められる。
また、搭載フレーム１２の列２〜２９の座標（ａｉ，ｂｉ）を、左右の座標（ａ１，ｂ１）と（ａ３０，ｂ３０）および傾きθＦｌａｍｅを用いて演算する。
これらの演算の結果、搭載フレーム１２の各列における補正された座標は図１８のようになる。
【００６０】
図１８は、本実施形態における搭載フレーム１２の各列における補正された座標の一例を示す図である。搭載フレーム１２の列１〜３０までの各列の重心ＧＤｉが。第１の補正量を用いて補正されたデータである。
【００６１】
次に、第１補正量算出部１０８は、フレーム・パラメータ記憶部１０６に記憶されている値と、求めたずれ量を用いて、ステージ７上に置かれている搭載フレーム１２上の搭載位置である重心位置を補正する。
まず、フレーム・パラメータ記憶部１０６に記憶されている設計値である搭載フレーム１２の重心の座標は（０，０，−１．５７０８）であり、求められた重心位置の位置は（１７１．０１８，−１５４．１０５，０．０００１１６）である。このため、搭載位置の基準となる重心の位置は、両方の値を加算し（１７１．０１８，−１５４．１０５，−１．５７０６８）が求める。
次に、この重心位置に基づき、フレーム・パラメータ記憶部１０６に記憶されている搭載フレーム１２の各列の重心値を補正する。これにより、フレーム・パラメータ記憶部１０６に記憶されているデータ（図６（ｂ））は、図１８のように補正される。
以上により、第１補正処理である搭載フレーム１２の位置補正処理を終了する。
【００６２】
次に、図６に戻って、接続子位置補正である第２補正処理を行う（Ｓ１４）。以下、図１，７および１９を用いて接続子位置補正処理の説明を行う。図１９は、本実施形態におけるカメラ４が撮像した接続子１１の基準点の変換を説明する概略図である。
まず、アーム駆動部８は制御ユニット５からの指示により、搭載ロボット１に、接続子成形装置９から接続子１１を吸着するように駆動する。
次に、アーム８に装着された取り付け部２１１の吸着部２１２が、接続子成形装置９から接続子１１を吸着する。接続子１１を吸着後、アーム駆動部８は制御ユニット５からの指示により、カメラ４の中心位置に吸着された複数の接続子１１の重心が来るように駆動する。例えば、図７のように、吸着部２１２に接続子１１が１０個吸着された場合、接続子１１の１０個の重心であるＧＣ（ｘＣ，ｙＣ，θＣ）を、カメラ４の中心に来る所定の位置にアーム駆動部８は制御ユニット５からの指示によりアーム８を駆動する。
次に、カメラ４は、吸着部２１２に吸着されている接続子１１を撮像する。次に、カメラ４で撮像された画像を画像認識部１０２が受け取り、各接続子３１１の重心座標を検出する。第２補正量算出部１０９は、検出された各接続子３１１の重心座標を受け取り、さらに１０個の接続子３１１から構成される接続子１１の重心座標を求める。重心座標は、例えば、各接続子３１１のすべての重心座標に対して最小二乗法を行い一次直線の式ｙ＝ａ・ｘ＋ｂ（ａとｂは定数）を算出する。次に、第２補正量算出部１０９は、各接続子３１１のすべてのｘとｙの平均値を求め、さらに算出された一次直線の式に代入して、接続子１１の重心座標を求める。また、算出された一次直線の式ｙ＝ａ・ｘ＋ｂの傾きａが、接続子１１の重心の傾きθとなる。
例えば、図１９のように、重心座標（ｘＦＣＴ，ｙＦＣＴ，θＦＣＴ）＝（５０６．７９０［ｐｉｘｅｌ］，３８２．０６０［ｐｉｘｅｌ］，−０．１８０［ｄｅｇ］）が求められる。
次に、第２補正量算出部１０９は、固定パラメータ記憶部１０４に記憶されている基準マーク２１３の位置を読み出して、求めた重心座標とのずれ量を算出する。
例えば、図１９のように、重心座標（ｘＭＣＴ，ｙＭＣＴ，θＭＣＴ）＝（−１．３９１［ｍｍ］，−３０．６５９［ｍｍ］，−０．００３１［ｒａｄ］）が求められる。
次に、第２補正量算出部１０９は、以下の式（２１）〜（１８）を用いて、ずれ量をロボット座標系に変換する。また、式（１６）〜（１８）において、接続子１２を撮像しているカメラ４の傾き９０゜を０゜に置き換えて演算を行う。式（２１）〜（２３）において、ＭＣＴはカメラ４の分解能、θＲＣＴは固定パラメータ記憶部１０４に記憶されている基準マークの重心の傾き（カメラ４の傾き）である。
ｘＣＴ＝（（−ｙＭＣＴ）ｃｏｓ（θＲＣＴ＋π／２）−（−ｘＭＣＴ）ｓｉｎ（θＲＣＴ＋π／２））・ＭＣＴ・・・式（２１）
ｙＣＴ＝（（−ｙＭＣＴ）ｓｉｎ（θＲＣＴ＋π／２）−（−ｘＭＣＴ）ｃｏｓ（θＲＣＴ＋π／２））・ＭＣＴ・・・式（２２）
θＣＴ＝Θ＋θＲＣＴ＋π／２・・・式（２３）
例えば、式（２１）〜（２３）を用いて変換した結果、図１９のように、（ｘＣＴ，ｙＣＴ，θＣＴ）＝（０．８８３，０．０４０，−０．００３１）が求められる。
次に、第２補正量算出部１０９は、アーム８に取り付けられている取り付け部２１１とキャリブレーション処理で使用した調整治具１３とのずれ量を、式（２４）〜（２６）を用いて補正する。なお、図１０のように、（ｘＯＣ，ｙＯＣ，θＯＣ）は、固定パラメータ記憶部１０４に記憶されている取り付け部２１１と調整治具との差である。
Δａ＝−ｘＣＴ＋ｘＯＣ・・・式（２４）
Δｂ＝−ｙＣＴ＋ｙＯＣ・・・式（２５）
Δθ＝−θＣＴ＋θＯＣ・・・式（２６）
例えば、式（２４）〜（２６）を用いて補正した結果、図１９のように、（Δａ，Δｂ，Δθ）＝（−０．６１３，−０．０４０，０．００３１）が求められる。
以上により、第２補正処理である接続子１１の位置補正処理を終了する。
【００６３】
次に、図６に戻って、搭載座標算出部１１０は、接続子１１を搭載フレームに搭載する位置補正である総合補正処理を行う（Ｓ１５）。搭載座標算出部１１０は、これまで第１補正処理、第２補正処理および第３補正処理で求められた値を用いて、式（３１）〜（３３）を用いて（ｘ，ｙ，θ）のオフセット量（Δｘｉ，Δｙｉ，Δθｉ）を求める。なお、図１８のように、ｉ（１≦ｉ≦３０）は変数であり、搭載フレーム１２上の各列を表し、θｉは各列における重心（ａｉ，ｂｉ）の傾きを表す。また、（ΔＨｘｉ，ΔＨｙｉ）はアーム８に装着されている取り付け部２１１における吸着された接続子１１のずれ量に実際に搭載する搭載フレーム１２の傾きずれ量θｉを加味した値を表し、（ΔＲｘｉ，ΔＲｙｉ）はアームの長さＬを加味した接続子１１の搭載位置の補正値を表す。
ΔＨｘｉ＝Δａ・ｃｏｓ（θｉ＋Δθ）−Δｂ・ｓｉｎ（θｉ＋Δθ）・・・式（２７）
ΔＨｙｉ＝Δａ・ｓｉｎ（θｉ＋Δθ）＋Δｂ・ｃｏｓ（θｉ＋Δθ）・・・式（２８）
ΔＲｘｉ＝−Ｌ・（ｃｏｓ（θｉ＋Δθ）−ｃｏｓ（θｉ））・・・式（２９）
ΔＲｙｉ＝−Ｌ・（ｓｉｎ（θｉ＋Δθ）−ｓｉｎ（θｉ））・・・式（３０）
例えば、ΔＨｘｉ＝−０．０４２［ｍｍ］、ΔＨｙｉ＝０．６１３［ｍｍ］、ΔＲｘｉ＝−０．３５２３［ｍｍ］、ΔＲｙｉ＝―０．０００６［ｍｍ］が算出される。
さらに、式（２７）〜（３０）により算出された値を用いて、式（３１）〜（３３）により搭載オフセット量を算出する。
Δｘｉ＝ΔＨｘｉ＋ΔＲｘｉ・・・式（３１）
Δｙｉ＝ΔＨｙｉ＋ΔＲｙｉ・・・式（３２）
Δθｉ＝Δθ・・・式（３３）
例えば、Δｘｉ＝−０．３９４［ｍｍ］、Δｙｉ＝０．６１３［ｍｍ］、Δθｉ＝０．００３１［ｒａｄ］が算出される。
【００６４】
次に、搭載座標算出部１１０は、求めた搭載オフセット量（Δｘｉ，Δｙｉ，Δθｉ）と、搭載フレーム１２の各列の座標（ａｉ，ｂｉ，θｉ）を用いて、以下の式（３４）〜（３６）により、搭載ロボットに指示する搭載フレーム１２の各列への接続子１１の搭載位置の座標（ｘｉ，ｙｉ，Θｉ）を演算する。
ｘｉ＝ａｉ＋Δｘｉ・・・式（３４）
ｙｉ＝ｂｉ＋Δｙｉ・・・式（３５）
Θｉ＝θｉ＋Δθｉ・・・式（３６）
例えば、搭載フレーム１２の１列目について式（３４）〜（３６）を計算すると、ｘｉ＝１７０．０６１３［ｍｍ］、ｙｉ＝−５４．８９２［ｍｍ］、Θｉ＝−１．５６７５８［ｄｅｇ］（＝−８９．６１６［ｄｅｇ］）が算出される。
図２０は、式（３４）〜（３６）を用いて算出された本実施形態における搭載ロボットに指示する搭載フレーム１２の各列への搭載位置（ｘｉ，ｙｉ，Θｉ）の座標の一例を示す図である。
以上により、搭載位置演算の処理を終了する。
【００６５】
本発明を実施した場合、例えば、従来の部品搭載装置では、接続子１１を搭載フレーム１２へ搭載する搭載精度が±０．０６［ｍｍ］であったが、本実施形態の部品搭載装置を用いて搭載を行ったところ、搭載精度は±０．０３［ｍｍ］に改善された。
【００６６】
以上のように、まずキャリブレーション処理を行い、画像認識部１０１および１０２が各カメラ２〜４で撮像された画像から基準点の座標を検出して、検出されたそれぞれの基準点の座標と基準方向に対する傾きを固定パラメータ記憶部１０４に記憶する。次に基準位置座標変換部１０３は、画像認識部１０１および１０２で検出された座標を、ロボット座標に変換して固定パラメータ記憶部１０４に記憶する。また、第３補正量算出部１０９は、キャリブレーション処理時、固定パラメータ記憶部１０４に保持されている基準点の座標を用いて、第３のずれ量であるアーム８の基準方向に対する傾きとアーム８の長さを求めて、固定パラメータ記憶部１０４に記憶する。
さらに、第１補正量算出部１０７は、予めフレーム・パラメータ記憶部１０６に保持されている値と、固定パラメータ記憶部１０４に保持されている値と、レール７上の搭載フレーム１２における左右の予め定められた部品位置の撮像された画像から検出された座標とをロボット座標で比較して、第１のずれ量である搭載フレーム１２のずれ量を算出する。
さらに、第２補正量算出部１０８は、接続子１１を吸着した後、固定パラメータ記憶部１０４に保持されている値と、カメラ４で撮像された画像から検出された複数の接続子１１の重心位置とをロボット座標で比較して、第２のずれ量である接続子１１に対するずれ量を算出する。
そして、搭載座標算出部１１０は、第１補正量算出部１０７で算出された搭載フレーム１２に対するずれ量（第１のずれ量）と、第２補正量算出部１０８で算出された接続子１１に対するずれ量（第２のずれ量）と、第３補正量算出部１０９で算出されたアーム８に対するずれ量（第３のずれ量）とを用いて、接続子１１を搭載フレーム１２に搭載する位置を算出し、算出された搭載位置へアーム駆動部６によりアーム８を駆動して、接続子１１を搭載フレームに精度良く搭載することが可能になった。
【００６７】
また、本実施形態では、アーム８にキャリブレーション治具１３を装着してキャリブレーション処理を行う例について説明したが、アーム８に装着する取り付け部２１１に基準マーク２１３を設け、この基準マークを各カメラ２〜４で検出するようにしても同様の効果が得られる。
【００６８】
さらにまた、本実施形態では、搭載フレーム１２は複数の子部品３０１により構成される例について説明したが、搭載フレーム１２は１つ以上の部品で構成されていても良い。またこの場合、搭載される接続子１１も搭載フレームの部品数に合わせた個数でも良い。
【００６９】
さらにまた、本実施形態では、複数の子部品３１１で構成されている搭載フレーム１２について、キャリブレーション処理時と搭載時にそれぞれ基準点の位置として、一番左の列（１列目）と一番右の列（３０列目）を使用する例について説明したが、基準点の位置はこれに限られるものではなく、カメラ２，３で撮像可能な他の列でも良く、さらには列と列の間でも同様の効果が得られる。
【００７０】
さらにまた、本実施形態では、搭載フレーム１２についてカメラ２，３を用いて撮像する方法について説明したが、搭載フレーム１２の大きさやカメラの解像度によっては１台のカメラで行っても良い。
【００７１】
なお、実施形態の図２の機能の全て、もしくは一部の回路を、制御ユニット５内の図示しないＣＰＵ（中央演算装置）に接続されたＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）、ＨＤＤ（Ｈａｒｄ  Ｄｉｓｋ  Ｄｒｉｖｅ）もしくはＵＳＢ（Ｕｎｉｖｅｒｓａｌ  Ｓｅｒｉａｌ  Ｂｕｓ）  Ｉ／Ｆを介して接続されるＵＳＢメモリー等に保存されているプログラムにより実行することも可能である。
【符号の説明】
【００７２】
１・・・搭載ロボット
２、３、４・・・カメラ
５・・・制御ユニット
６・・・アーム駆動部
７・・・ステージ
８・・・アーム
９・・・接続子成形装置
１１・・・接続子
１２・・・搭載フレーム
１３・・・キャリブレーション治具
１０１、１０２・・・画像認識部
１０３・・・基準位置座標変換部
１０４・・・固定パラメータ記憶部
１０５・・・キャリブレーション部
１０６・・・フレーム・パラメータ記憶部
１０７・・・第１補正量算出部
１０８・・・第２補正量算出部
１０９・・・第３補正量算出部
１１０・・・搭載座標算出部
【図１】
0005481123.tif 000002
【図２】
0005481123.tif 000003
【図３】
0005481123.tif 000004
【図４】
0005481123.tif 000005
【図５】
0005481123.tif 000006
【図６】
0005481123.tif 000007
【図７】
0005481123.tif 000008
【図８】
0005481123.tif 000009
【図９】
0005481123.tif 000010
【図１０】
0005481123.tif 000011
【図１１】
0005481123.tif 000012
【図１２】
0005481123.tif 000013
【図１３】
0005481123.tif 000014
【図１４】
0005481123.tif 000015
【図１５】
0005481123.tif 000016
【図１６】
0005481123.tif 000017
【図１７】
0005481123.tif 000018
【図１８】
0005481123.tif 000019
【図１９】
0005481123.tif 000020
【図２０】
0005481123.tif 000021