(57)【特許請求の範囲】
【請求項１】
所定位置で所定方向を向く基準姿勢からの変位が所定の範囲内となる作業姿勢でワークを支持するワーク支持手段と、
前記作業姿勢のワークに設定された第１の撮像対象を、前記基準姿勢のワークを想定した所定の位置及び方向から撮像する第１の撮像手段と、
前記第１の撮像手段が撮像した画像を解析して前記第１の撮像対象の位置を求め、前記基準姿勢に対する前記作業姿勢のワークの概略変位を暫定的に演算する概略変位演算手段と、
前記基準姿勢のワークを想定した所定の基準位置及び基準方向が各々に対して設けられる三箇所の撮像支持部を有し、各撮像支持部の位置及び方向を独立して変更自在な撮像支持手段と、
前記三箇所の撮像支持部の各々の位置及び方向を前記基準位置及び基準方向に対し前記ワークの作業姿勢に応じて修正する補正位置及び補正方向を、前記概略変位演算手段が演算した概略変位を用いてそれぞれ演算し、前記撮像支持手段を制御して、前記演算した補正位置及び補正方向に前記三箇所の撮像支持部をそれぞれ設定する撮像制御手段と、
前記三箇所の撮像支持部にそれぞれ固定され、該三箇所の撮像支持部が前記補正位置及び補正方向に設定された状態で、前記作業姿勢のワークに設定された第２〜第４の撮像対象を前記第１の撮像手段よりも狭い画角でそれぞれ撮像する第２〜第４の撮像手段と、
前記第２〜第４の撮像手段が撮像した画像を解析して、前記基準姿勢に対する前記作業姿勢のワークの詳細変位を演算する詳細変位演算手段と、を備えた
ことを特徴とするワーク姿勢検出装置。
【請求項２】
請求項１に記載のワーク姿勢検出装置であって、
前記詳細変位演算手段は、前記基準姿勢に対する前記作業姿勢のワークの三次元空間内の３軸方向の変位量と３軸周りの回転量とを前記詳細変位として演算する
ことを特徴とするワーク姿勢検出装置。
【請求項３】
請求項１に記載のワーク姿勢検出装置であって、
前記第１の撮像手段は、前記撮像支持手段の前記撮像支持部の一つに固定され、
前記撮像制御手段は、前記第１の撮像手段が前記第１の撮像対象を撮像する際に、前記撮像支持手段を制御して、前記基準姿勢のワークを想定した所定の位置及び方向に前記第１の撮像手段を設定する
ことを特徴とするワーク姿勢検出装置。
【請求項４】
請求項１に記載のワーク姿勢検出装置と、
前記基準姿勢のワークを想定した基準位置情報に基づく処理プログラムに従って、前記ワークに対して三次元的な処理を施す処理実行手段と、を備え、
前記処理実行手段は、前記基準位置情報を、前記詳細変位演算手段が演算した前記詳細変位に応じて変更する
ことを特徴とするワーク処理実行装置。
【請求項５】
ワークを支持するワーク支持手段が、所定位置で所定方向を向く基準姿勢からの変位が所定の範囲内となる作業姿勢に前記ワークを設定するワーク設定ステップと、
第１の撮像手段が、前記作業姿勢のワークに設定された第１の撮像対象を、前記基準姿勢のワークを想定した所定の位置及び方向から撮像する第１の撮像ステップと、
概略変位演算手段が、前記第１の撮像手段が撮像した画像を解析して前記第１の撮像対象の位置を求め、前記基準姿勢に対する前記作業姿勢のワークの概略変位を暫定的に演算する概略変位演算ステップと、
撮像制御手段が、前記基準姿勢のワークを想定した所定の基準位置及び基準方向が各々に対して設けられる三箇所の撮像支持部の各々の位置及び方向を前記基準位置及び基準方向に対し前記ワークの作業姿勢に応じて修正する補正位置及び補正方向を、前記概略変位演算ステップで演算された概略変位を用いてそれぞれ演算し、前記三箇所の撮像支持部の位置及び方向を独立して変更自在な撮像支持手段を制御して、前記演算した補正位置及び補正方向に、前記三箇所の撮像支持部をそれぞれ設定する撮像制御ステップと、
前記三箇所の撮像支持部が前記補正位置及び補正方向にそれぞれ設定された状態で、該三箇所の撮像支持部にそれぞれ固定された第２〜第４の撮像手段が、前記作業姿勢のワークに設定された第２〜第４の撮像対象を、第１の撮像手段よりも狭い画角でそれぞれ撮像する第２の撮像ステップと、
詳細変位演算手段が、前記第２〜第４の撮像手段が撮像した画像を解析して、前記基準姿勢に対する前記作業姿勢のワークの詳細変位を演算する詳細変位演算ステップと、を備えた
ことを特徴とするワーク姿勢検出方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ワーク姿勢検出装置、ワーク処理実行装置及びワーク姿勢検出方法に関する。
【背景技術】
【０００２】
特許文献１には、垂直多関節ロボットのアームにカメラを取付け、作業現場に置かれた治具によって位置決めされたワーク上の各点を、教示位置データ修正用のプログラムが指定する複数の撮像位置でそれぞれ撮像し、撮像した画像を処理して各点の三次元位置を検出し、この検出結果に基づいてワークの位置・姿勢を求め、オフラインデータで定めたワークの位置・姿勢に対する作業現場のワークの位置・姿勢ずれに応じた修正を、教示プログラムの位置データに施すロボット用位置データ修正装置が開示されている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００５−１３８２２３号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
ここで、一般に、作業現場のワーク上の各点の位置を精度良く検出するため、すなわち、作業現場のワークの位置・姿勢を精度良く検出するために、カメラの画角（視野）は狭く設定される。
【０００５】
しかしながら、特許文献１のロボット用位置データ修正装置では、カメラの画角を狭く設定した場合、撮像位置におけるカメラの画角にワーク上の各点が収まるように、作業現場のワークの位置・姿勢をオフラインデータで定めたワークの位置・姿勢に近付ける必要があり、ワークの位置決め作業が煩雑である。
【０００６】
そこで、本発明は、高精度なワークの位置決めを必要とせず、大まかに位置決めされたワークの位置・姿勢を精度良く検出することが可能なワーク姿勢検出装置、ワーク処理実行装置及びワーク姿勢検出方法の提供を目的とする。
【課題を解決するための手段】
【０００７】
上記目的を達成すべく、本発明に係るワーク姿勢検出装置は、ワーク支持手段と、第１の撮像手段と、概略変位演算手段と、撮像支持手段と、撮像制御手段と、第２〜第４の撮像手段と、詳細変位演算手段とを備える。
【０００８】
ワーク支持手段は、所定位置で所定方向を向く基準姿勢からの変位が所定の範囲内となる作業姿勢でワークを支持する。第１の撮像手段は、作業姿勢のワークに設定された第１の撮像対象を、基準姿勢のワークを想定した所定の位置及び方向から撮像する。概略変位演算手段は、第１の撮像手段が撮像した画像を解析して、基準姿勢に対する作業姿勢のワークの概略変位を暫定的に演算する。
【０００９】
撮像支持手段は、基準姿勢のワークを想定した所定の基準位置及び基準方向が各々に対して設けられる三箇所の撮像支持部を有し、各撮像支持部の位置及び方向を独立して変更する。撮像制御手段は、三箇所の撮像支持部の各々の位置及び方向を基準位置及び基準方向に対しワークの作業姿勢に応じて修正する補正位置及び補正方向を、概略変位演算手段が演算した概略変位を用いてそれぞれ演算し、撮像支持手段を制御して、上記演算した補正位置及び補正方向に三箇所の撮像支持部をそれぞれ設定する。
【００１０】
第２〜第４の撮像手段は、三箇所の撮像支持部にそれぞれ固定され、三箇所の撮像支持部が補正位置及び補正方向に設定された状態で、作業姿勢のワークに設定された第２〜第４の撮像対象を第１の撮像手段よりも狭い画角でそれぞれ撮像する。詳細変位演算手段は、第２〜第４の撮像手段が撮像した画像を解析して第２〜第４の撮像対象の各位置を求め、基準姿勢に対する作業姿勢のワークの詳細変位を演算する。
【００１１】
また、本発明に係るワーク姿勢検出方法は、ワークを支持するワーク支持手段が、所定位置で所定方向を向く基準姿勢からの変位が所定の範囲内となる作業姿勢にワークを設定するワーク設定ステップと、第１の撮像手段が、作業姿勢のワークに設定された第１の撮像対象を、基準姿勢のワークを想定した所定の位置及び方向から撮像する第１の撮像ステップと、概略変位演算手段が、第１の撮像手段が撮像した画像を解析して第１の撮像対象の位置を求め、基準姿勢に対する作業姿勢のワークの概略変位を暫定的に演算する概略変位演算ステップと、撮像制御手段が、基準姿勢のワークを想定した所定の基準位置及び基準方向が各々に対して設けられる三箇所の撮像支持部の各々の位置及び方向を基準位置及び基準方向に対しワークの作業姿勢に応じて修正する補正位置及び補正方向を、概略変位演算ステップで演算された概略変位を用いてそれぞれ演算し、三箇所の撮像支持部の位置及び方向を独立して変更自在な撮像支持手段を制御して、上記演算した補正位置及び補正方向に、三箇所の撮像支持部をそれぞれ設定する撮像制御ステップと、三箇所の撮像支持部が補正位置及び補正方向にそれぞれ設定された状態で、三箇所の撮像支持部にそれぞれ固定された第２〜第４の撮像手段が、作業姿勢のワークに設定された第２〜第４の撮像対象を、第１の撮像手段よりも狭い画角でそれぞれ撮像する第２の撮像ステップと、詳細変位演算手段が、第２〜第４の撮像手段が撮像した画像を解析して第２〜第４の撮像対象の各位置を求め、基準姿勢に対する作業姿勢のワークの詳細変位を演算する詳細変位演算ステップとを備える。
【００１２】
なお、第１の撮像対象は、第２〜第４の撮像対象のいずれかと同じであってもよい。
【００１３】
上記構成及び方法では、ワーク位置検出時に、所定位置で所定方向を向く基準姿勢からの変位が所定の範囲内となる作業姿勢にワークを設定すればよいので、ワークを基準姿勢に設定する場合に比べて、位置決めの精度に対する要求が低く、ワーク設定時の作業が容易である。
【００１４】
また、第１の撮像手段は、基準姿勢のワークを想定した所定の位置及び方向からワークの第１の撮像対象を第１の画角で撮像し、概略変位演算手段は、第１の撮像手段が撮像した画像を解析して基準姿勢に対する作業姿勢のワークの概略変位を暫定的に演算し、撮像制御手段は、作業姿勢のワークの概略変位が演算されたとき、基準姿勢のワークを想定した所定の基準位置及び基準方向に対して概略変位に応じて修正された補正位置及び補正方向に、三箇所の撮像支持部をそれぞれ設定し、三箇所の撮像支持部にそれぞれ固定された第２〜第４の撮像手段は、三箇所の撮像支持部が補正位置及び補正方向にそれぞれ設定された状態で、ワークに設定された第２〜第４の撮像対象を第２〜第４の画角でそれぞれ撮像し、詳細変位演算手段は、第２〜第４の撮像手段が撮像した画像を解析して第２〜第４の撮像対象の各位置を求め、基準姿勢に対する作業姿勢のワークの詳細変位を演算する。
【００１５】
このように、ワーク姿勢検出の際には、基準姿勢からの変位が所定の範囲内となる作業姿勢にワークを設定すればよいので、例えば基準姿勢にワークを設定する場合に比べて、位置決めの精度に対する要求が低く、ワークの位置決め作業が容易である。
【００１６】
すなわち、ワーク姿勢検出の際のワークの位置決め作業の容易化と、作業姿勢のワークの位置・姿勢の検出精度の向上とを両立して図ることができる。
【発明の効果】
【００１７】
本発明によれば、ワーク姿勢検出の際のワークの位置決め作業の容易化と、作業姿勢のワークの位置・姿勢の検出精度の向上とを両立して図ることができる。
【図面の簡単な説明】
【００１８】
【図１】床下塗装装置の斜視図である。
【図２】床下塗装装置を示すブロック図である。
【図３】キャブの床下を示す平面図である。
【図４】第１基準孔を示す斜視図である。
【図５】第１のビジョンカメラの第１の画角を示す図である。
【図６】第２のビジョンカメラの第２の画角を示す図である。
【図７】キャブ搬送処理を示すフローチャートである。
【図８】第１の移動処理を示すフローチャートである。
【図９】第１の画像解析処理を示すフローチャートである。
【図１０】塗装ロボット制御装置による第２の移動処理を示すフローチャートである。
【図１１】シーリングロボット制御装置による第２の移動処理を示すフローチャートである。
【図１２】第２の画像解析処理を示すフローチャートである。
【図１３】シーリング処理を示すフローチャートである。
【図１４】塗装処理を示すフローチャートである。
【図１５】ハンガーの変形例を示す斜視図である。
【発明を実施するための形態】
【００１９】
以下、本発明の一実施形態を、図面に基づいて説明する。図１は床下塗装装置の斜視図、図２は床下塗装装置を示すブロック図、図３はキャブの床下を示す平面図である。図４は第１基準孔を示す斜視図、図５は第１のビジョンカメラの第１の画角を示す図、図６は第２のビジョンカメラの第２の画角を示す図である。図７はキャブ搬送処理を示すフローチャート、図８は第１の撮像処理を示すフローチャート、図９は第１の画像解析処理を示すフローチャートである。図１０は塗装ロボット制御装置による第２の移動処理を示すフローチャート、図１１はシーリングロボット制御装置による第２の移動処理を示すフローチャート、図１２は第２の画像解析処理を示すフローチャートである。図１３はシーリング処理を示すフローチャート、図１４は塗装処理を示すフローチャート、図１５はハンガーの変形例を示す斜視図である。
【００２０】
図１〜図６に示すように、床下塗装装置（ワーク姿勢検出装置、ワーク処理実行手段）１は、キャブ（ワーク）２の床下２ａを塗装する塗装ラインに設けられ、ハンガー（ワーク支持手段）３と、塗装ロボット（撮像支持手段、処理実行手段）４と、シーリングロボット（撮像支持手段、処理実行手段）５，６と、第１〜第４のビジョンカメラ７，８，９，１０と、マスター制御装置１１と、画像認識装置（概略変位演算手段、詳細変位演算手段）１２と、塗装ロボット制御装置（概略変位演算手段、撮像制御手段、詳細変位演算手段、処理実行手段）１３と、シーリングロボット制御装置（概略変位演算手段、撮像制御手段、詳細変位演算手段、処理実行手段）１４，１５等を備えている。
【００２１】
キャブ２は、前面２ｂが塗装ラインの下流側を向いた状態で塗装ラインに供給される。
【００２２】
ハンガー３は、枠部３ａと枠部３ａによって上方から支持された吊持部３ｂとを有している。枠部３ａは、特に図示していない案内レールによって上方から支持され、塗装ラインの上流側から下流側へ移動する。吊持部３ｂは下端部が略Ｌ字状に形成され、上端部が枠部３ａに移動自在に支持されている。ハンガー３はマスター制御装置１１に通信可能に接続され、マスター制御装置１１からの動作信号を受けてキャブ２の窓枠２ｃに吊持部３ｂの下端を引っ掛けてキャブ２を吊り下げ保持し、枠部３ａを後述する塗装ロボット４及びシーリングロボット５，６の上方（以下、作業領域と称する）へ移動する。
【００２３】
作業領域でのキャブ２の位置・姿勢（以下、作業姿勢と称する）は、吊持部３ｂによって所定の範囲内に設定される。本実施形態では、この所定の範囲に属する特定の作業姿勢（例えば、後述するシーリング・塗装作業を行う上で塗装ロボット４及びシーリングロボット５，６を最も効率的に制御し得る作業姿勢）を基準姿勢として予め設定する。後述する塗装ロボット制御装置１３及びシーリングロボット制御装置１４，１５のメモリには、基準姿勢のキャブ２の第１〜第３基準孔１７，１８，１９の位置・姿勢情報が予め記憶されている。
【００２４】
第１基準孔（第１の撮像対象、第２の撮像対象）１７は、キャブ２の床下２ａに設けられた左右一対のフロアアンダーフレーム２０，２１のうち、右側（図３中下側）のフロアアンダーフレーム２０の前部に設けられた孔である。
【００２５】
第２基準孔（第３の撮像対象）１８は、キャブ２の床下２ａの左側（図３中上側）のフロアアンダーフレーム２１の前部に設けられた孔であり、第３基準孔（第４の撮像対象）１９は、キャブ２の床下２ａの右側のフロアアンダーフレーム２０の後部に設けられた孔である。すなわち、第１〜第３基準孔１７，１８，１９には、床下２ａにおいて一直線上に並ばない３つの孔が予め設定されている。
【００２６】
なお、以下の説明において、キャブ２が基準姿勢に設定されたときの第１〜第３基準孔１７，１８，１９を、基準姿勢の第１〜第３基準孔１７，１８，１９と称し、キャブ２が作業姿勢に設定されたときの第１〜第３基準孔１７，１８，１９を、作業姿勢の第１〜第３基準孔１７，１８，１９と称する。
【００２７】
塗装ロボット４は多関節型ロボットであり、ハンガー３よりも下方の床２５に配置される。塗装ロボット４は、ベース４ａとアーム部４ｂと塗装ガン（撮像支持部、処理実行手段）４ｃとを備えている。
【００２８】
ベース４ａは、床２５の走行軸（図示せず）上に移動自在に設けられるとともに、床２５に対して回転自在となっている。アーム部４ｂはベース４ａ上に設けられ、関節１６に設けられたサーボモータ等が動作制御されることによって屈伸する。塗装ガン４ｃはアーム部４ｂの先端に設けられ、内蔵された開放弁の開閉動作に応じて塗料をキャブ２の床下２ａに塗布する。
【００２９】
塗装ロボット４は、塗装ロボット制御装置１３に通信可能に接続されている。塗装ロボット４は、塗装ロボット制御装置１３からの制御信号を受けて、走行軸上を移動するとともにアーム部４ｂを屈伸させて塗装ガン４ｃの位置及び方向を制御し、キャブ２の床下２ａに対して塗装作業を行う。
【００３０】
シーリングロボット５，６は多関節型ロボットであり、塗装ロボット４の両側に配置されて作業領域にキャブ２が搬送された際に床下２ａの幅方向両側と対向する。シーリングロボット５，６は、ベース５ａ，６ａとアーム部５ｂ，６ｂとシーリングガン（撮像支持部、処理実行手段）５ｃ，６ｃとを備えている。
【００３１】
ベース５ａ，６ａは、床２５の走行軸上に移動自在に設けられるとともに、床２５に対して回転自在となっている。アーム部５ｂ，６ｂはベース５ａ，６ａ上に設けられ、関節１６に設けられたサーボモータ等が動作制御されることによって屈伸する。シーリングガン５ｃ，６ｃは、アーム部５ｂ，６ｂの先端に設けられ、内蔵された開放弁の開閉動作に応じてシーリング材をキャブ２の床下２ａに塗布する。
【００３２】
各シーリングロボット５，６は、各シーリングロボット制御装置１４，１５にそれぞれ通信可能にそれぞれ接続されている。シーリングロボット５，６は、シーリングロボット制御装置１４，１５からの制御信号を受けて、走行軸上を移動するとともにアーム部５ｂ，６ｂを屈伸させてシーリングガン５ｃ，６ｃの位置及び方向を制御し、キャブ２の床下２ａに対してシーリング作業を行う。
【００３３】
第１のビジョンカメラ（第１の撮像手段）７及び第２のビジョンカメラ（第２の撮像手段）８は、光軸方向が塗装ガン４ｃの加工方向とほぼ一致した状態で塗装ガン４ｃの側面に取付けられ固定されている。第３のビジョンカメラ（第３の撮像手段）９は、光軸方向がシーリングガン５ｃの加工方向とほぼ一致した状態でシーリングガン５ｃの側面に取付けられて固定されている。第４のビジョンカメラ（第４の撮像手段）１０は、光軸方向がシーリングガン６ｃの加工方向とほぼ一致した状態でシーリングガン６ｃの側面に取付けられ固定されている。
【００３４】
すなわち、第１のビジョンカメラ７と第２のビジョンカメラ８とは、塗装ガン４ｃの位置及び方向を制御することによって、所望の位置及び方向に設定され、第３のビジョンカメラ９と第４のビジョンカメラ１０とは、シーリングガン５ｃ，６ｃの位置及び方向をそれぞれ制御することによって、所望の位置及び方向にそれぞれ設定される。このため、以下の説明において、第１〜第４のビジョンカメラ７，８，９，１０を所望の位置に設定するために塗装ガン４ｃやシーリングガン５ｃ，６ｃの位置及び方向を制御する場合には、便宜上、第１〜第４のビジョンカメラ７，８，９，１０を制御対象として説明する。
【００３５】
第１〜第４のビジョンカメラ７，８，９，１０は、画像認識装置１２に相互通信可能にそれぞれ接続されている。
【００３６】
第１〜第４のビジョンカメラ７，８，９，１０が対象物を撮像する際の画角（第１〜第４の画角）は、それぞれ所定の角度に予め設定されている。第２〜第４の画角は、第１の画角よりも狭く設定され、本実施形態の第２〜第４の画角は、同一に設定されている。なお、第１のビジョンカメラ７の第１の画角を図４の点線枠I及び図５で示し、第２のビジョンカメラ８の第２の画角を図４の点線枠II及び図６で示す。また、第２〜第４の画角が第１の画角よりも狭く設定することが可能な理由については後述する。
【００３７】
第１のビジョンカメラ７は、予め設定された二次元検出位置に移動し、床下２ａを第１の画角で撮像し、撮像した画像データ（第１画像データ）を画像認識装置１２に送信する。
【００３８】
二次元検出位置とは、基準姿勢の第１基準孔１７を想定した位置及び方向に、第１のビジョンカメラ７の位置及び撮像方向を設定する位置である。基準姿勢の第１基準孔１７を想定した方向とは、例えば、第１のビジョンカメラ７の光軸が基準姿勢の第１基準孔１７を通る方向（好ましくは、第１のビジョンカメラ７の光軸が基準姿勢の第１基準孔１７の中心を通る方向）である。
【００３９】
第１の画角は、キャブ２が上述した所定の範囲内の何れの作業姿勢に設定されていても、二次元検出位置から作業姿勢の第１基準孔１７を撮像可能な角度に設定されている。すなわち、作業領域に搬送されたキャブ２の第１基準孔１７は、キャブ２の作業姿勢によらず第１画像データに必ず含まれる。
【００４０】
このように、第１のビジョンカメラ７は、キャブ２が何れの作業姿勢であっても、同じ位置及び方向（二次元検出位置）で第１基準孔１７を撮像する。
【００４１】
第２のビジョンカメラ８は、第１の補正位置に移動して床下２ａを第２の画角で撮像し、第２の補正位置に移動して床下２ａを第２の画角で撮像し、各補正位置で撮像した画像データを画像認識装置１２に送信する。同様に、第３のビジョンカメラ９は、第１の補正位置に移動して床下２ａを第３の画角で撮像し、第２の補正位置に移動して床下２ａを第３の画角で撮像し、各補正位置で撮像した画像データを画像認識装置１２に送信する。また、第４のビジョンカメラ１０は、第１の補正位置に移動して床下２ａを第４の画角で撮像し、第２の補正位置に移動して床下２ａを第４の画角で撮像し、各補正位置で撮像した画像データを画像認識装置１２に送信する。
【００４２】
第１及び第２の補正位置とは、予め設定された第１及び第２の三次元検出位置を、基準姿勢に対する作業姿勢のキャブ２の概略変位に応じてそれぞれ補正した位置であり、キャブ２の概略変位は、上記第１画像データを解析することによって算出される。また、第１の三次元検出位置と第２の三次元検出位置とは、第２〜第４のビジョンカメラ８〜１０のそれぞれに対して個別に設定されており、合計で６箇所の三次元検出位置が存在する。第１の補正位置は、第２〜第４のビジョンカメラ８〜１０の第１の三次元検出位置からそれぞれ算出され、第２の補正位置は、第２〜第４のビジョンカメラ８〜１０の第２の三次元検出位置からそれぞれ算出されるため、第１及び第２の補正位置も、第１及び第２の三次元検出位置と同様に、合計で６箇所存在する。
【００４３】
第２のビジョンカメラ８の三次元検出位置とは、基準姿勢の第１基準孔１７を想定した位置及び方向に、第２のビジョンカメラ８の位置及び撮像方向を設定する位置である。基準姿勢の第１基準孔１７を想定した方向とは、例えば、第２のビジョンカメラ８の光軸が基準姿勢の第１基準孔１７を通る方向（好ましくは、第２のビジョンカメラ８の光軸が基準姿勢の第１基準孔１７の中心を通る方向）である。第２のビジョンカメラ８に対して、上記条件を満たすように２箇所の三次元検出位置（第１の三次元検出位置と第２の三次元検出位置）が設定されている。なお、２箇所の三次元検出位置を設定しているのは、同一の対象物をステレオで撮像するためである。
【００４４】
第２の画角は、キャブ２が上述した所定の範囲内の何れの作業姿勢に設定されていても、第１及び第２の補正位置の双方でキャブ２の第１基準孔１７を撮像可能な角度に設定されている。すなわち、作業領域に搬送されたキャブ２の第１基準孔１７は、キャブ２の作業姿勢によらず、第２のビジョンカメラ８からの画像データに必ず含まれる。
【００４５】
第３及び第４のビジョンカメラ９，１０の第１及び第２の三次元検出位置も、その設定の基準となる基準孔が相違する（第３のビジョンカメラ９では基準姿勢の第２基準孔１８、第４のビジョンカメラ１０では基準姿勢の第３基準孔１９）ことを除き、第２のビジョンカメラ８の場合と同様に設定される。また、第３及び第４の画角についても、第２の画角と同様に設定される。
【００４６】
このように、第２〜第４のビジョンカメラ８，９，１０は、予め設定された三次元検出位置ではなく、三次元検出位置を修正した補正位置で、作業姿勢の第１〜第３基準孔１７〜１９をそれぞれ撮像する。従って、第２〜第４のビジョンカメラ８，９，１０が第１〜第３基準孔１７〜１９を撮像する位置及び方向（第１及び第２の補正位置）は、上記第１のビジョンカメラ７とは異なり、キャブ２の作業姿勢に応じて都度変更される。
【００４７】
また、キャブ２が何れの作業姿勢であっても第１基準孔１７が必ず撮像されるように第２のビジョンカメラ８の画角（第２の画角）を所定の角度に設定する場合、第１基準孔１７と第２のビジョンカメラ８との相対的な位置関係（両者間の距離及び回転角度）が、基準姿勢の第１基準孔１７と三次元検出位置の第２のビジョンカメラ８との相対的な位置関係（基本相対位置関係）に近づくほど、第２の画角を狭く設定することができる。この点に関し、上記第２のビジョンカメラ８の撮像位置は、基本姿勢から作業姿勢へのキャブ２の変位概略変位を考慮して（概略変位に応じて）三次元検出位置を修正した補正位置であり、両者の相対的な位置関係は、第２のビジョンカメラ８が三次元検出位置に設定されている場合よりも上記基本相対位置関係に近づく。このため、補正位置で撮像した場合の方が、基本姿勢から作業姿勢へのキャブ２の変位を考慮していない三次元検出位置で撮像する場合に比べて、第２の画角を狭く設定することができる。同様の理由から、補正位置で撮像する第２のビジョンカメラ８の画角（第２の画角）の方が、基本姿勢から作業姿勢へのキャブ２の変位を考慮していない二次元検出位置で撮像する第１のビジョンカメラ７の画角（第１の画角）よりも狭く設定することが可能である。また、第３及び第４のビジョンカメラ９，１０の画角（第３の画角及び第４の画角）についても、第２のビジョンカメラ８と同様の理由から、第１の画角よりも狭く設定することが可能である。
【００４８】
マスター制御装置１１は、塗装ロボット制御装置１３及びシーリングロボット制御装置１４，１５に双方向通信可能に接続されている。マスター制御装置１１は、塗装ロボット制御装置１３及びシーリングロボット制御装置１４，１５に作業開始信号を送信し、また塗装ロボット制御装置１３及びシーリングロボット制御装置１４，１５から作業完了信号を受信する。マスター制御装置１１のメモリ（図示せず）には、キャブ２を作業領域に搬送するキャブ搬送プログラムが予め記憶されている。
【００４９】
マスター制御装置１１はタイマ２２を有し、ハンガー３を作業領域に移動させたときにタイマ２２を作動させ、計測時間が所定時間（本実施形態では７秒間）を経過したときに塗装ロボット制御装置１３に上記作業開始信号を送信する。
【００５０】
画像認識装置１２には、第１〜第４のビジョンカメラ７，８，９，１０によって撮像された第１〜第３基準孔１７，１８，１９の各画像データと、塗装ロボット制御装置１３及びシーリングロボット制御装置１４，１５からの撮像実行指示信号とが入力する。
【００５１】
画像認識装置１２のメモリ（図示せず）には、第１〜第３基準孔１７，１８，１９のそれぞれの基準位置情報と、位置ずれ算出プログラムとが予め記憶されている。
【００５２】
第１基準孔１７の基準位置情報は、二次元検出位置の第１のビジョンカメラ７によって基準姿勢の第１基準孔１７を撮像した場合に、撮像画像における第１基準孔１７の位置を示す情報（以下、第１の二次元基準位置情報と称する）と、第１及び第２の補正位置の第２のビジョンカメラ８によって基準姿勢の第１基準孔１７をそれぞれ撮像した場合に、各撮像画像における第１基準孔１７の位置を示す情報（以下、第１の補正基準位置情報と称する）である。第２及び第３基準孔１８，１９の基準位置情報は、各補正位置の第３及び第４のビジョンカメラ９，１０によって基準姿勢の第２及び第３基準孔１８，１９をそれぞれ撮像した場合に、各撮像画像における第２及び第３基準孔１８，１９の位置をそれぞれ示す情報（以下、第２の補正基準位置情報及び第３の補正基準位置情報と称する）である。すなわち、第１基準孔１７については、第１の二次元基準位置情報と２つの第１の補正基準位置情報という３つの基準位置情報が記憶され、第２基準孔１８と第３基準孔１９とについては、第２及び第３の補正位置がそれぞれ２つずつ記憶されている。
【００５３】
画像認識装置１２は、位置ずれ算出プログラムに従って位置ずれ算出処理を実行する。位置ずれ情報算出処理では、第１〜第４のビジョンカメラ７，８，９，１０から受信した画像データを解析し、撮像画像内における第１〜第３基準孔１７，１８，１９の位置（作業位置）を位置情報として検出し、検出した位置情報と、メモリに記憶された第１〜第３基準孔１７，１８，１９の基準位置情報とに基づいて、基準姿勢に対する作業姿勢の第１〜第３基準孔１７，１８，１９の位置ずれ（位置ずれ情報）をそれぞれ算出する。例えば、第１のビジョンカメラ７が二次元検出位置で撮像した画像データの位置情報が示す位置と第１の二次元基準位置情報が示す位置との差分を、基準姿勢に対する第１基準孔１７の位置ずれ情報（以下、第１の位置ずれ情報と称する）として算出する。また、第２〜第４のビジョンカメラ８，９，１０が各補正位置で撮像した画像データ（第１の補正位置に対応した画像データと第２の補正位置に対応した画像データ）の位置情報が示す位置と第１〜第３の補正基準位置情報との各差分を、基準姿勢に対する第１〜第３基準孔１７，１８，１９の位置ずれ情報として算出する。なお、以下の説明中、第１の補正位置に対応した位置ずれ情報を第２の位置ずれ情報と称し、第２の補正位置に対応した位置ずれ情報を第３の位置ずれ情報と称する。
【００５４】
画像認識装置１２は、塗装ロボット制御装置１３及びシーリングロボット制御装置１４，１５に双方向通信可能に接続され、塗装ロボット制御装置１３及びシーリングロボット制御装置１４，１５から撮像実行指示信号を受けて、第１〜第４のビジョンカメラ７，８，９，１０の撮像制御を行う。また、画像認識装置１２は、位置ずれ算出処理によって算出した位置ずれ情報を、塗装ロボット制御装置１３及びシーリングロボット制御装置１４，１５にそれぞれ送信する。
【００５５】
塗装ロボット制御装置１３には、マスター制御装置１１からの作業開始信号と画像認識装置１２からの位置ずれ情報とが入力する。
【００５６】
塗装ロボット制御装置１３のメモリ（図示せず）には、概略変位演算プログラムと、詳細位置算出プログラムと、各種の処理プログラムとが予め記憶されている。
【００５７】
塗装ロボット制御装置１３は、概略位置算出プログラムに従って概略位置算出処理を実行する。概略位置算出処理では、画像認識装置１２から受信した第１基準孔１７の第１の位置ずれ情報に基づいて、基準姿勢に対する作業姿勢のキャブ２の概略変位を算出する。第１の位置ずれ情報を用いたキャブ２の概略変位の算出方法は、特に限定されるものではなく、例えば、第１の位置ずれ情報をそのまま所定平面内におけるキャブ２の概略変位と見做し、第１の位置ずれ情報の座標系を、キャブ２に対して設定した座標系に変換する演算処理でもよい。また、ハンガー３などの構造的な特性により、第１の位置ずれ情報から第１基準孔１７の所定方向への概略変位と所定軸周りの回転方向の概略変位とを推定して演算可能である場合には、その演算結果をキャブ２に対して設定される座標系に変換する演算処理でもよい。
【００５８】
塗装ロボット制御装置１３は、詳細位置算出プログラムに従って詳細位置算出処理を実行する。詳細位置算出処理では、画像認識装置１２から受信した第１〜第３基準孔１７，１８，１９の第２及び第３の位置ずれ情報に基づいて、基準姿勢に対する作業姿勢のキャブ２の詳細変位を算出する。具体的には、独立した６つの位置ずれ情報（第２のビジョンカメラ８が２箇所の補正位置で撮像した各画像データに基づく２つの位置ずれ情報と、第３のビジョンカメラ９が２箇所の補正位置で撮像した各画像データに基づく２つの位置ずれ情報と、第４のビジョンカメラ１０が２箇所の補正位置で撮像した各画像データに基づく２つの位置ずれ情報）を用いて、キャブ２に対して設定した座標系において、キャブ２が基準姿勢からｘ軸方向、ｙ軸方向、及びｚ軸方向にそれぞれどのくらい変位しているかを示す各軸方向の変位量と、ｘ軸周り、ｙ軸周り、及びｚ軸周りにどのくらい回転移動しているか（傾いているか）を示す各軸周りの回転量とを、詳細変位情報として算出する。
【００５９】
各種の処理プログラムには、第１の移動プログラム、第２の移動プログラム、塗装プログラム、第１の修正プログラム、及び第２の修正プログラム等が含まれる。
【００６０】
第１の移動プログラムは、基準姿勢のキャブ２を想定した二次元検出位置へ第１のビジョンカメラ７を設定するプログラムであり、二次元検出位置へ第１のビジョンカメラ７を移動するための位置情報（以下、第１の基準位置情報と称する）を含む。第２の移動プログラムは、基準姿勢のキャブ２を想定した第１の三次元検出位置とこの第１の三次元検出位置から所定方向に所定距離離れた第２の三次元検出位置とに第２のビジョンカメラ８を設定するプログラムであり、第１及び第２の三次元検出位置へ第２のビジョンカメラ８を移動するための位置情報（以下、第２の基準位置情報と称する）を含む。塗装プログラムは、基準姿勢のキャブ２に対して塗装作業を行うために塗装ガン４ｃを制御するプログラムであり、塗装ガン４ｃの塗装作業位置を示す位置情報（以下、第３の基準位置情報と称する）を含む。
【００６１】
第１の修正プログラムは、第２のビジョンカメラ８の撮像位置を第１及び第２の三次元検出位置からキャブ２の概略変位分ずれた第１及び第２の補正位置に設定するために、第２の移動プログラムの第２の基準位置情報をキャブ２の概略変位に応じて修正するプログラムである。第２の修正プログラムは、基準姿勢のキャブ２に対して設定された塗装プログラムの第３の基準位置情報をキャブ２の詳細変位に応じて修正するプログラムである。
【００６２】
塗装ロボット制御装置１３は、マスター制御装置１１からの作業開始信号を受信すると、第１の移動プログラムに従って、第１の移動処理を実行する。第１の移動処理では、第１の基準位置情報に応じた制御信号を塗装ロボット４に出力し、第１のビジョンカメラ７を二次元検出位置に移動する。二次元検出位置の第１のビジョンカメラ７は、基準姿勢のキャブ２の第１基準孔を想定した方向を向く。塗装ロボット制御装置１３は、第１のビジョンカメラ７が二次元検出位置に移動したときに撮像実行指示信号を画像認識装置１２に送信する。
【００６３】
塗装ロボット制御装置１３は、第１の修正プログラムに従って第１の修正処理を実行し、第２の移動プログラムの第２の基準位置情報をキャブ２の概略変位に応じて修正し、修正された第２の移動プログラムに従って第２の移動処理を実行する。第２の移動処理では、キャブ２の概略変位に応じて修正された第２の基準位置情報に基づく制御信号を塗装ロボット４に出力し、第２のビジョンカメラ８を第１の補正位置と第２の補正位置とに順次移動する。塗装ロボット制御装置１３は、第２のビジョンカメラ８が第１の補正位置に移動したとき及び第２の補正位置に移動したときに、画像認識装置１２にそれぞれ撮像実行指示信号を出力する。
【００６４】
塗装ロボット制御装置１３は、第２の修正プログラムに従って第２の修正処理を実行し、塗装プログラムの第３の基準位置情報をキャブ２の詳細変位に応じて修正し、修正された塗装プログラムに従って塗装処理を実行する。塗装処理では、キャブ２の詳細変位に応じて修正された第３の基準位置情報に基づいて塗装ガン４ｃを適宜移動させながら塗装作業を行う。
【００６５】
また、塗装ロボット制御装置１３は、塗装ロボット４による塗装作業が終了したときにマスター制御装置１１に作業完了信号を出力する。
【００６６】
シーリングロボット制御装置１４，１５には、マスター制御装置１１からの作業開始信号と画像認識装置１２からの位置ずれ情報とが入力する。
【００６７】
シーリングロボット制御装置１４，１５の各メモリ（図示せず）には、詳細位置算出プログラムと、各種の処理プログラムとが予め記憶されている。
【００６８】
詳細位置算出プログラムは上記塗装ロボット制御装置１３のメモリに記憶された詳細位置算出プログラムと同一であり、シーリングロボット制御装置１４，１５が詳細位置算出プログラムに従ってそれぞれ実行する詳細位置算出処理は上記塗装ロボット制御装置１３が実行する詳細位置算出処理と同じであるため、その詳細な説明は省略する。
【００６９】
各種の処理プログラムには、第２の移動プログラム、シーリングプログラム、及び第２の修正プログラム等が含まれる。
【００７０】
第２の移動プログラムは、基準姿勢のキャブ２を想定した第１の三次元検出位置とこの第１の三次元検出位置から所定方向に所定距離離れた第２の三次元検出位置とに第３及び第４のビジョンカメラ９，１０をそれぞれ設定するプログラムであり、第１及び第２の三次元検出位置へ第３及び第４のビジョンカメラ９，１０を移動するための第２の基準位置情報をそれぞれ含む。シーリングプログラムは、基準姿勢のキャブ２に対してシーリング作業を行うためにシーリングガン５ｃ，６ｃをそれぞれ制御するプログラムであり、シーリングガン５ｃ，６ｃのシーリング作業位置を示す第３の基準位置情報をそれぞれ含む。
【００７１】
第２の修正プログラムは、基準姿勢のキャブ２に対して設定された各シーリングプログラムの第３の基準位置情報をキャブ２の詳細変位に応じてそれぞれ修正するプログラムである。
【００７２】
シーリングロボット制御装置１４，１５は、第１の修正プログラムに従って第１の修正処理を実行し、第２の移動プログラムの第２の基準位置情報をキャブ２の概略変位に応じて修正し、修正された第２の移動プログラムに従って第２の移動処理を実行する。第２の移動処理では、キャブ２の概略変位に応じて修正された第２の基準位置情報に基づく制御信号をシーリングロボット１４，１５に出力し、第３及び第４のビジョンカメラ９，１０を第１の補正位置と第２の補正位置とに順次移動する。シーリングロボット制御装置１４，１５は、第３及び第４のビジョンカメラ９，１０が第１の補正位置に移動したとき及び第２の補正位置に移動したときに、画像認識装置１２にそれぞれ撮像実行指示信号を出力する。
【００７３】
シーリングロボット制御装置１４，１５は、第２の修正プログラムに従って第２の修正処理を実行し、シーリングプログラムの第３の基準位置情報をキャブ２の詳細変位に応じて修正し、修正されたシーリングプログラムに従ってシーリング処理を実行する。シーリング処理では、キャブ２の詳細変位に応じて修正された第３の基準位置情報に基づいてシーリングガン５ｃ，６ｃをそれぞれ適宜移動させながらシーリング作業を行う。
【００７４】
また、シーリングロボット制御装置１４，１５は、シーリングロボット５，６によるシーリング作業が終了したときにマスター制御装置１１に作業完了信号を出力する。
【００７５】
次に、床下塗装装置１が実行する処理を、キャブ搬送処理と第１の撮像処理と第２の撮像処理とシーリング・塗装処理とに分けて説明する。なお、キャブ搬送処理は、特に図示していないキャブ搬送スイッチからのＯＮ信号がマスター制御装置１１に入力すること、あるいは、塗装ロボット制御装置１３及びシーリングロボット制御装置１４，１５からの作業完了信号がマスター制御装置１１に入力することによって開始される。
【００７６】
キャブ搬送処理が開始されると、図７に示すように、マスター制御装置１１は、キャブ搬送プログラムに従ってキャブ搬送処理を実行する。キャブ搬送処理では、ハンガー３に制御信号を出力し、キャブ２を作業領域に搬送する（ステップＳ１）。キャブ２を作業領域に搬送すると、マスター制御装置１１に内蔵されたタイマ２２を作動させ（ステップＳ２）、タイマ２２による計測時間が７秒間を経過したと判断すると（ステップＳ３：ＹＥＳ）、塗装ロボット制御装置１３に作業開始信号を出力し（ステップＳ４）、本処理を終了する。
【００７７】
第１の撮像処理では、図８に示す第１のカメラ移動処理と図９に示す第１の画像解析処理とが実行される。
【００７８】
図８に示す第１の移動処理では、塗装ロボット制御装置１３は、マスター制御装置１１から作業開始信号を受信すると（ステップＳ１１）、第１の移動処理を実行して塗装ロボット４に制御信号を出力し、第１のビジョンカメラ７を二次元検出位置に移動させて（ステップＳ１２）、画像処理装置１２に撮像実行指示信号（第１の撮像実行信号）を出力し（ステップＳ１３）、本処理を終了する。
【００７９】
図９に示す第１の画像解析処理では、画像処理装置１２は、塗装ロボット制御装置１３から撮像実行指示信号を受信すると（ステップＳ２１）、二次元検出位置の第１のビジョンカメラ７を制御して作業姿勢のキャブ２の床下２ａ（第１基準孔１７）を撮像し、その画像データを第１のビジョンカメラ７から受信する（ステップＳ２２）。
【００８０】
次に、画像処理装置１２は、第１のビジョンカメラ７から受信した画像データ（第１のビジョンカメラ７が二次元検出位置で撮像した画像データ）を用いて、位置ずれ算出処理を実行する。具体的には、第１のビジョンカメラ７から受信した画像データを解析し、第１基準孔１７の位置を検出し、その位置情報と第１の二次元基準位置情報とに基づいて、基準姿勢に対する第１基準孔１７の位置ずれ情報（第１の位置ずれ情報）を算出する（ステップＳ２３）。
【００８１】
次に、算出した第１の位置ずれ情報を塗装ロボット制御装置１３及びシーリングロボット制御装置１４，１５に送信し（ステップＳ２４）、本処理を終了する。
【００８２】
第２の撮像処理では、図１０及び図１１に示す第２のカメラ移動処理と図１２に示す第２の画像解析処理とが実行される。
【００８３】
図１０に示す第２のカメラ移動処理では、塗装ロボット制御装置１３は、画像処理装置１２から第１基準孔１７の第１の位置ずれ情報を受信すると（ステップＳ３１）、キャブ２の概略変位算出処理を実行する（ステップＳ３２）。概略変位算出処理では、受信した第１基準孔１７の第１の位置ずれ情報に基づいて、基準姿勢に対する作業姿勢のキャブ２の概略変位を算出する。次に、第１の修正処理を実行して、第２の移動プログラムの第２の基準位置情報を概略変位に応じて修正する（ステップＳ３３）。
【００８４】
次に、第２の基準位置情報が修正された第２の移動プログラムに従って第２の移動処理を実行し、塗装ロボット４に制御信号を出力して、第１の三次元検出位置を概略変位に応じて修正した第１の補正位置に第２のビジョンカメラ８を移動させ（ステップＳ３４）、画像認識装置１２に撮像実行指示信号を出力する（ステップＳ３５）。次に、第２の三次元検出位置を概略変位に応じて修正した第２の補正位置に第２のビジョンカメラ８を移動させ（ステップＳ３６）、画像認識装置１２に撮像実行指示信号（第２の撮像実行指示信号）を出力し（ステップＳ３７）、本処理を終了する。
【００８５】
この塗装ロボット制御装置１３の処理と同様の処理がシーリングロボット制御装置１４，１５においても実行される。すなわち、図１１に示すように、シーリングロボット制御装置１４，１５が画像処理装置１２から第１基準孔１７の第１の位置ずれ情報を受信すると（ステップＳ４１）、受信した第１基準孔１７の第１の位置ずれ情報に基づいて、基準姿勢に対する作業姿勢のキャブ２の概略変位を算出し（ステップＳ４２）、第１の修正処理を実行する（ステップＳ４３）。次に、第２の基準位置情報が修正された第２の移動プログラムに従って第２の移動処理を実行し、シーリングロボット５，６に制御信号を出力して、第１の三次元検出位置を概略変位に応じて修正した第１の補正位置に第２及び第４のビジョンカメラ８，１０を移動させ（ステップＳ４４）、画像認識装置１２に撮像実行指示信号を出力する（ステップＳ４５）。次に、第２の三次元検出位置を概略変位に応じて修正した第２の補正位置に第３及び第４のビジョンカメラ９，１０を移動させ（ステップＳ４６）、画像認識装置１２に撮像実行指示信号（第２の撮像実行指示信号）を出力し（ステップＳ４７）、本処理を終了する。
【００８６】
図１２に示す第２の画像解析処理では、画像処理装置１２が塗装ロボット制御装置１３及びシーリングロボット制御装置１４，１５から第１の撮像実行指示信号を受信すると（ステップＳ５１）、第２〜第４のビジョンカメラ８，９，１０を制御して作業姿勢のキャブ２の床下２ａをそれぞれ撮像する（ステップＳ５２）。
【００８７】
また、画像処理装置１２が塗装ロボット制御装置１３及びシーリングロボット制御装置１４，１５から第２の撮像実行指示信号を受信すると（ステップＳ５３）、第２〜第４のビジョンカメラ８，９，１０を制御して作業姿勢のキャブ２の床下２ａ（第１〜第３基準孔１７，１８，１９）をそれぞれ撮像する（ステップＳ５４）。
【００８８】
次に、画像処理装置１２は、位置ずれ算出処理を実行し、第２〜第４のビジョンカメラ８，９，１０が各補正位置で撮像した画像データの位置情報と第１〜第３の補正基準位置情報とに基づいて、基準姿勢に対する第１〜第３基準孔１７，１８，１９の位置ずれ情報（第２及び第３の位置ずれ情報）をそれぞれ算出する（ステップＳ５５）。
【００８９】
具体的には、まず、第２のビジョンカメラ８から受信した画像データのうち第１の補正位置に対応した画像データから第１基準孔１７の位置情報を検出し、検出した第１基準孔１７の位置情報と、記憶された第１基準孔１７の基準位置位置情報とに基づいて、第１基準孔１７の第２の位置ずれ情報を算出する。同様に、第２のビジョンカメラ８から受信した画像データのうち第２の補正位置に対応する画像データから第１基準孔１７の位置情報を検出し、検出した第１基準孔１７の位置情報と、記憶された第１基準孔１７の基準位置情報とに基づいて、第１基準孔１７の第３の位置ずれ情報を算出する。さらに、第２基準孔１８の画像データ及び第３の基準孔１９の画像データについても、上記と同様に位置ずれ算出処理を実行し、第２及び第３基準孔１８，１９の第２及び第３の位置ずれ情報をそれぞれ算出する。
【００９０】
次に、画像処理装置１２が算出した各位置ずれ情報（第１〜第３基準孔１７，１８，１９のそれぞれの第２の位置ずれ情報及び第３の位置ずれ情報）を塗装ロボット制御装置１３及びシーリングロボット制御装置１４，１５に送信して（ステップＳ５６）、本処理を終了する。
【００９１】
シーリング・塗装処理では、図１３に示すシーリング処理と図１４に示す塗装処理とが並行して実行される。
【００９２】
図１３に示すシーリング処理では、シーリングロボット制御装置１４，１５が画像処理装置１２から第１〜第３基準孔１７，１８，１９の第２及び第３の位置ずれ情報を受信すると（ステップＳ６１）、詳細位置算出処理を実行する（ステップＳ６２）。詳細位置算出処理では、画像認識装置１２から受信した第１〜第３基準孔１７，１８，１９の第２及び第３の位置ずれ情報に基づいて、基準姿勢に対する作業姿勢のキャブ２の詳細変位を算出する。
【００９３】
次に、シーリングロボット制御装置１４，１５は、第３の基準位置情報が修正されたシーリングプログラムに従ってシーリング処理を実行し、キャブ２の詳細変位に応じて修正された第３の基準位置情報に基づいてシーリングガン５ｃ，６ｃをそれぞれ適宜移動させながら、作業姿勢の床下２ａに対するシーリング作業を行う（ステップＳ６３，Ｓ６４）。シーリング作業が終了すると、マスター制御装置１１に作業完了信号を出力して（ステップＳ６５）、本処理を終了する。
【００９４】
同様に、図１４に示す塗装処理では、塗装ロボット制御装置１３が画像処理装置１２から第１〜第３基準孔１７，１８，１９の第２及び第３の位置ずれ情報を受信すると（ステップＳ７１）、詳細位置算出処理を実行する（ステップＳ７２）。詳細位置算出処理では、画像認識装置１２から受信した第１〜第３基準孔１７，１８，１９の第２及び第３の位置ずれ情報に基づいて、基準姿勢に対する作業姿勢のキャブ２の詳細変位を算出する。
【００９５】
次に、塗装ロボット制御装置１３は、第３の基準位置情報が修正された塗装プログラムに従って塗装処理を実行し、キャブ２の詳細変位に応じて修正された第３の基準位置情報に基づいて塗装ガン４ｃを適宜移動させながら、作業姿勢の床下２ａに対する塗装作業を行う（ステップＳ７３，Ｓ７４）。塗装作業が終了すると、マスター制御装置１１に作業完了信号を出力して（ステップＳ７５）、本処理を終了する。
【００９６】
このように、本実施形態では、キャブ２の位置を検出する際に、所定位置で所定方向を向く基準姿勢からの変位が所定の範囲内となる作業姿勢にキャブ２を設定すればよいので、キャブ２を基準姿勢に設定する場合に比べて、位置決めの精度に対する要求が低く、キャブ２の位置決め作業が容易である。
また、第１のビジョンカメラ７は、基準姿勢のキャブ２を想定した二次元検出位置から作業姿勢の第１基準孔１７を第１の画角で撮像し、画像認識装置１２、塗装ロボット制御装置１３及びシーリングロボット制御装置１４，１５は、第１のビジョンカメラ７が撮像した画像データを解析して基準姿勢に対する作業姿勢のキャブ２の概略変位を暫定的に演算し、塗装ロボット制御装置１３及びシーリングロボット制御装置１４，１５は、作業姿勢のキャブ２の概略変位を演算すると、基準姿勢のキャブ２を想定した三次元検出位置に対して概略変位に応じて修正された補正位置に、第２〜第４のビジョンカメラ８，９，１０をそれぞれ設定し、第２〜第４のビジョンカメラ８，９，１０は、作業姿勢の第１〜第３基準孔１７，１８，１９を第２〜第４の画角でそれぞれ撮像し、画像認識装置１２、塗装ロボット制御装置１３及びシーリングロボット制御装置１４，１５は、第２〜第４のビジョンカメラ８，９，１０が撮像した画像を解析して、基準姿勢に対する作業姿勢のキャブ２の詳細変位を演算する。
【００９７】
このように、ワーク姿勢検出の際には、基準姿勢からの変位が所定の範囲内となる作業姿勢にキャブ２を設定すればよいので、例えば基準姿勢にキャブ２を設定する場合に比べて、位置決めの精度が低くて済み、キャブ２の位置決め作業が容易である。換言すると、高精度なワークの位置決めを必要とせず、大まかに位置決めされたキャブ２に対して、位置・姿勢を精度良く検出することができる。
【００９８】
すなわち、姿勢検出の際のキャブ２の位置決め作業の容易化と、作業姿勢のキャブ２の位置・姿勢の検出精度の向上とを両立して図ることができる。
【００９９】
また、第２〜第４のビジョンカメラ８，９，１０によって第１〜第３基準孔１７，１８，１９をそれぞれ２つの地点から撮像（ステレオ方式で撮像）し、画像認識装置１２によって第１〜第３基準孔１７，１８，１９の各位置ずれ情報を２個ずつ（計６個）求め、６個の位置ずれ情報から詳細変位を算出しているので、作業姿勢のキャブ２の位置・姿勢をより精度良く検出することができる。
【０１００】
また、第１基準孔１７を撮像する際に、基準姿勢のキャブ２を想定した二次元検出位置に第１のビジョンカメラ７を設定しているため、第１のビジョンカメラ７を所定位置に固定した場合に比べて、第１のビジョンカメラ７の第１の画角を狭く設定することができ、これに応じて、第２〜第４の画角もさらに狭く設定することが可能になる。従って、基準姿勢に対する作業姿勢のキャブ２の概略変位をより詳細に演算することできる。
【０１０１】
さらに、塗装プログラム及びシーリングプログラムに含まれる各位置情報を詳細変位に応じて修正して、塗装ロボット４及びシーリングロボット５，６がキャブ２に対するシーリング・塗装処理を三次元的に施しているため、簡略化された処理プログラムによって、キャブ２の床下２ａに対するシーリング・塗装処理の精度を向上させることができる。
【０１０２】
なお、本実施形態では、第１のビジョンカメラ７が塗装ガン４ｃに取付けられている場合を説明したが、これは一例であって、例えば、第１のビジョンカメラ７を床２５に固定してもよい。
【０１０３】
また、第２のビジョンカメラ８が第１基準孔１７を撮像する場合を説明したが、第２のビジョンカメラ８の撮像対象として、床下２ａに設けられた複数の孔の中から第１〜第３基準孔１７，１８，１９とは別の孔を設定してもよい。
【０１０４】
また、第１〜第４のビジョンカメラ７，８，９，１０の撮像対象が、キャブ２の床下２ａに設けられた孔である場合を説明したが、例えば、床下２ａのコーナー部や凸部等であってもよい。
【０１０５】
また、第１のビジョンカメラ７による第１基準孔１７の撮像をステレオ方式で行ってもよい。すなわち、第１のビジョンカメラ７を二次元検出位置へ移動させて第１基準孔１７を撮像し、二次元検出位置から所定方向に所定距離だけ第１のビジョンカメラ７を移動させて再度第１基準孔１７を撮像してもよい。かかる構成によれば、概略変位の精度が高くなり、これに応じて、第２〜第４の画角もさらに狭く設定することが可能になり、基準姿勢に対する作業姿勢のキャブ２の概略変位をより詳細に演算することが可能になる。
【０１０６】
また、第２〜第４のビジョンカメラ８，９，１０によって第１〜第３基準孔１７，１８，１９をそれぞれ２つの地点から撮像する場合に限られず、第１〜第３基準孔１７，１８，１９をそれぞれ１つの地点から撮像してもよい。
【０１０７】
また、塗装ロボット制御装置１３及びシーリングロボット制御装置１４，１５は、第１〜第３基準孔１７，１８，１９のそれぞれの三次元位置情報（３軸の座標値）を検出し、検出した三次元位置情報によって基準姿勢に対する作業姿勢のキャブ２の詳細変位を演算してもよく、また、第１〜第３基準孔１７，１８，１９のそれぞれの二次元位置情報（２軸の座標値）を検出し、基準姿勢に対する作業姿勢のキャブ２の詳細変位を演算してもよい。
【０１０８】
また、塗装ロボット制御装置１３及びシーリングロボット制御装置１４，１５の各メモリには、基準位置情報に代えて又は加えて、基準姿勢の第１基準孔１７を二次元検出位置の第１のビジョンカメラ７によって撮像した場合に得られる画像データと、基準姿勢の第１〜第３基準孔１７，１８，１９を上記各補正位置の第２〜第４のビジョンカメラ８，９，１０によって撮像した場合に得られる各画像データ（以下、これらの画像データを基準画像データと称する）が記憶されていてもよい。この場合、塗装ロボット制御装置１３及びシーリングロボット制御装置１４，１５は、位置ずれ情報を算出する際に、受信した画像データを解析して位置情報を求めるとともに、基準画像データを解析して基準位置情報を求め、求めた位置情報と基準位置情報とに基づいて、位置ずれ情報を算出すればよい。
【０１０９】
さらに、図１５に示すように、キャブ２を下方から支持する台枠２３とハンガー３の枠部３ａとをワイヤー２４で接続し、キャブ２を台枠２３ごと吊り下げて作業領域へ搬送してもよい。
【０１１０】
また、キャブ２の作業姿勢が基準姿勢により近い状態となるように吊持部３ｂを引っ掛けてもよい。これにより、基準姿勢からの変位が少なくなるため、第１のビジョンカメラ７の第１の画角をより狭く設定できるとともに、第２〜第４のビジョンカメラ８，９，１０の第２〜第４の画角を狭く設定して、詳細変位をより詳細に求めることができる。
【０１１１】
また、本実施形態では、塗装ロボット制御装置１３及びシーリングロボット制御装置１４，１５のそれぞれが概略変位演算プログラム及び詳細変位演算プログラムを実行する場合を説明したが、塗装ロボット制御装置１３及びシーリングロボット制御装置１４，１５に接続する演算装置を別途設け、この演算装置でこれらのプログラムを実行し、演算結果を塗装ロボット制御装置１３及びシーリングロボット制御装置１４，１５に送信する構成としてもよい。あるいは、これらのプログラムを塗装ロボット制御装置１３及びシーリングロボット制御装置１４，１５のうちの１つ装置で実行し、得られた演算結果を残り装置に送信する構成としてもよい。
【０１１２】
以上、本発明者によってなされた発明を適用した実施形態について説明したが、この実施形態による本発明の開示の一部をなす論述及び図面により本発明は限定されることはない。すなわち、この実施形態に基づいて当業者等によりなされる他の実施形態、実施例及び運用技術等は全て本発明の範疇に含まれることは勿論であることを付け加えておく。
【産業上の利用可能性】
【０１１３】
位置及び方向を変更自在な撮像手段を備えたワーク姿勢検出装置に適用可能である。
【符号の説明】
【０１１４】
１  床下塗装装置（ワーク姿勢検出装置、ワーク処理実行手段）
２  キャブ（ワーク）
３  ハンガー（ワーク支持手段）
４  塗装ロボット（撮像支持手段、処理実行手段）
４ｃ  塗装ガン（撮像支持部、処理実行手段）
５  シーリングロボット（撮像支持手段、処理実行手段）
５ｃ  シーリングガン（撮像支持部、処理実行手段）
６  シーリングロボット（撮像支持手段）
６ｃ  シーリングガン（撮像支持部、処理実行手段）
７  第１のビジョンカメラ（第１の撮像手段）
８  第２のビジョンカメラ（第２の撮像手段）
９  第３のビジョンカメラ（第３の撮像手段）
１０  第４のビジョンカメラ（第４の撮像手段）
１２  画像認識装置（概略変位演算手段、詳細変位演算手段）
１３  塗装ロボット制御装置（概略変位演算手段、撮像制御手段、詳細変位演算手段、処理実行手段）
１４  シーリングロボット制御装置（概略変位演算手段、撮像制御手段、詳細変位演算手段、処理実行手段）
１５  シーリングロボット制御装置（概略変位演算手段、撮像制御手段、詳細変位演算手段、処理実行手段）
１７  第１基準孔（第１の撮像対象、第２の撮像対象）
１８  第２基準孔（第３の撮像対象）
１９  第３基準孔（第４の撮像対象）
【図１】
0005686279.tif 000002
【図２】
0005686279.tif 000003
【図３】
0005686279.tif 000004
【図４】
0005686279.tif 000005
【図５】
0005686279.tif 000006
【図６】
0005686279.tif 000007
【図７】
0005686279.tif 000008
【図８】
0005686279.tif 000009
【図９】
0005686279.tif 000010
【図１０】
0005686279.tif 000011
【図１１】
0005686279.tif 000012
【図１２】
0005686279.tif 000013
【図１３】
0005686279.tif 000014
【図１４】
0005686279.tif 000015
【図１５】
0005686279.tif 000016