(58)【調査した分野】(Int.Cl.,DB名)
【発明を実施するための形態】
【0012】
以下、図面を参照して、本発明の実施の形態を説明するが、本発明は本実施形態に限定されるものではない。なお、以下で説明する図面で、同機能を有するものは同一符号を付け、その繰り返しの説明は省略することもある。
【0013】
(第1実施形態)
図1は、本発明の第1実施形態に係る内面形状検査装置の模式図である。内面形状検査装置100は、センサユニット101、多関節ロボット102、制御装置103及びロボットコントローラ104を備える。内面形状検査装置100は、入出力手段である入力操作部118及び表示部119に接続される。
【0014】
センサユニット101は、円筒ガラス105、レーザ光源106、円錐ミラー107、内視鏡108、カメラ109及び補正用センサ110を備え、円錐状のリングレーザ光を検査対象の穴113の内面に照射し、その投影像を撮影する機能を有する。
【0015】
円筒ガラス105は、中空部と、端面としての一方端105a(即ち、円筒ガラス105の底面)とを有し、検査対象の穴に応じ設計された外径(例えば外径7mm)を有する。円筒ガラス105および一方端105aは、レーザ光源106から発振されたレーザ光に対して透明である。レーザ光源106、円錐ミラー107及び内視鏡108は、測定の妨げとならない所定の支持部材により円筒ガラス105の中空部に固定され、レーザ光源106の光軸並びに円錐ミラー107及び内視鏡108の中心軸は、好ましくは互いに一致する。なお、レーザ光源106が円筒ガラス105の外部に設けられ、内視鏡108がレーザ光源106から出射されたレーザ光をスコープ部108aから出射する機能を有し、レーザ光が内視鏡108から出射される構成であってもよい。
【0016】
レーザ光源106は、適宜選択された波長を有するレーザ光を出射するLEDレーザやスポットレーザである。
【0017】
円錐ミラー107は、レーザ光源106から発振されたレーザ光を、該レーザ光の入射方向斜め前方へ向けて、円錐状のリングレーザ光として出射する出射部であり、好ましくは90度未満の頂角を有する円錐形のミラーである。ここで、「入射方向斜め前方」とは、円錐ミラー107(又は後述する円錐レンズ607)に対してレーザ光の入射方向とは反対側であって、レーザ光源から出射されるレーザ光の光軸に対して所定の角度(検査対象の穴の内側面に対して垂直となる角度を除く)を有する方向である。また、円錐ミラー107の頂点が鋭く尖っていることにより、撮像された画像の輝度ピークが先鋭化し、詳細な画像解析が可能になる。
【0018】
内視鏡108は、レーザ光源106側にスコープ部108aを有し、スコープ部108aとは反対側でカメラ109に接続されている。内視鏡108の内部には複数の光ファイバ、又は、複数のレンズからなるリレーレンズを備え、スコープ部108aから入力された光は、該光ファイバ又はリレーレンズを通じてカメラ109へ出力される。リレーレンズを内部に備えた内視鏡108を用いることで、レーザ光が入射方向斜め前方に照射される構成における撮像輝度の低下が低減され、その結果、高分解能(例えば400万画素)のカメラ109の使用が可能になる。
【0019】
カメラ109は、適宜選択された分解能を有し、画像データ(即ち、カメラ109の各画素における輝度値)をデジタル信号として出力するデジタルカメラ(例えば、CCDカメラやCMOSカメラ)である。なお、センサユニット101が内視鏡108を備えず、カメラ109が検査対象の穴の内面を直接撮像する構成であってもよい。
【0020】
補正用センサ110は、多関節ロボット102の軌跡精度を向上させるために用いられる3軸加速度センサであり、センサユニット101の一部(例えばカメラ109)又は多関節ロボット102のヘッド部分に固定される。移動後の多関節ロボット102(又はセンサユニット101)の位置は、ロボットコントローラ104からの制御信号で示された位置すべき位置(即ち、設計された基準位置)から実際にはずれている場合がある。そこで、補正用センサ110は、基準位置と多関節ロボット102の実際の位置との間のずれを補正するための信号を補正演算部114に出力する。
【0021】
多関節ロボット102は、ロボットコントローラ104からの制御信号に応じて、所定の位置にセンサユニット101を移動させる。例えば、検査対象の穴113の深さ方向をz軸とし、該深さ方向に垂直な方向をx、y軸とすると、穴113に挿入されたセンサユニット101の位置は空間座標(x、y、z)で表される。
【0022】
制御装置103は、種々の演算、制御、判断等の処理を実行するCPUや、CPUにより実行されるプログラム及び様々なデータを格納するメモリ等を含むコンピュータであり、センサユニット101及びロボットコントローラ104の各機能を制御する。また、制御装置103は、補正用センサ109からの信号を基に検査対象の穴113の内面の座標データを補正する補正演算部114と、レーザ光源106の出力を制御するレーザ制御部115とを含む。さらに、制御装置103は、カメラ109により取得された画像データを記憶する画像メモリ116と、画像データを解析するデータ演算部117(欠陥抽出部)とを含む。
【0023】
ロボットコントローラ104は、制御装置103からの制御信号に応じて多関節ロボット102の駆動を制御する。入力操作部118は、所定の指令あるいはデータなどを入力するキーボード、マウス、各種スイッチなどを含む。表示部119は、内面形状検査装置100の入力・設定状態、各種測定結果などをはじめとする種々の表示を行うディスプレイ、プリンタ、外部機器などである。
【0024】
図2は、本実施形態に係る内面形状検査装置による検査プロセスを説明するための概念図である。まず、多関節ロボット102が、センサユニット101を移動させ、基板支持台111上の被検査部材(ワーク)112に形成された検査対象の穴113に挿入する。その後、多関節ロボット102は、センサユニット101を、検査対象の穴113の内を検査方向Pに所定の速度で移動させる。それにともない、センサユニット101は、円錐状のリングレーザ光201Rを穴113の内面に照射し、照射された穴113の内面を所定の時間間隔で撮像し、画像データを取得する。そして、内面形状検査装置100は、取得した画像データを解析することで、検査対象の穴113の内面の欠陥(即ち、傷、撓み等の設計形状と異なる形状)を検出する。以下、詳細に説明する。
【0025】
検査プロセスの間、レーザ光源106から出射されたレーザ光201は、円錐ミラー106の頂点を含む領域に照射され、円錐リング状に反射される。円錐状のリングレーザ光201Rは、レーザ光201の入射方向斜め前方に向けられ、円筒ガラス105を通じて穴113の内面(内側面113a又は内底面113b)に照射される(破線円202)。なお、
図3(a)に示されるように、円錐状のリングレーザ光201Rが円筒ガラス105の側面から出射されるように円錐ミラー107の頂角θ1(<90°)が設計されてもよい。また、
図3(b)に示されるように、円錐状のリングレーザ光201Rが円筒ガラス105の一方端105aから出射されるように頂角θ2が設計されてもよい(<θ1<90°)。
【0026】
円錐状のリングレーザ光201Rが入射方向斜め前方に向けられるため、センサユニット101は、
図2(b)に示されるように、底部を有する検査対象の穴113の内底面113bまで内側面113a(破線円204)を検査することができる。そのため、内面形状検査装置100は、従来のような測定不可領域(測定死角)を大幅に低減することができる。
【0027】
円錐状のリングレーザ光201Rで照射された内面(内側面113a)が入る視野203を有する内視鏡108のスコープ部108aを通じて、カメラ109は、該照射された内面を撮像する。カメラ109により取得された画像データは、穴113の内面の座標データ(x,y,z)と関連付けられ、制御装置103の画像メモリ116に記憶される。該移動量は、センサユニット101の移動速度とカメラ109の撮像時間間隔から算出される。また、補正演算部114において、補正用センサ110からの信号を基に穴113の内面の座標データが補正され、画像データは、該補正された座標データと関連付けられて記憶される。
【0028】
例えば、
図4Aに示されるように、センサユニット101が検査対象の穴113内の位置z1、z2、…znにおいて穴113の内側面113aの画像データD1、D2、…Dnを取得する場合を想定する。
【0029】
センサユニット101は、一定速度v
0で移動しながら、所定の時間間隔Tで撮像するとする。センサユニット101の位置は、時刻t
1ではz
1であり、時刻t
2ではz
2(=v
0xT+z
1)であり、時刻t
nではz
n(=v
0xT+z
n―1)である。センサユニット101が検査対象の穴113の中心軸上を移動している場合には、xy平面における内側面113a上の座標データ(x,y)は設計上既知となる。そのため、センサユニット101のz位置(即ち移動量)がセンサユニット101の移動速度と撮像時間間隔Tから求まると、内側面113aの座標データ(x,y,z)400が求まることになる。なお、センサユニット101の実際の位置が基準位置からずれている場合には、補正用センサ110からの信号を基に補正演算部114で内側面113aの座標データ(x,y,z)を補正するようにすればよい。このようにして、画像データD1〜Dnは、座標データ400と関連づけられ、画像メモリ116に記憶される。
【0030】
画像メモリ116に記憶された画像データD1〜Dnはデータ演算部117で合成され、
図4Bに示されるような3次元画像データ401が生成される。データ演算部117は、3次元画像データ401と、穴113の形状の設計値である既知のマスタデータ402とを比較する。データ演算部117は、3次元画像データ401にマスタデータ402と異なる部分403が存在する場合、その部分403を欠陥であると判断し、欠陥を抽出し、そして、その結果を表示部119に出力する。このようにして、内面形状検査装置100は、検査対象の穴113の内面形状の欠陥を検出することができる。
【0031】
上述したように構成された内面形状検査装置100を用いた、検査対象となる穴の検査手順を
図5に示されたフローチャートを用いて以下に説明する。例えば制御装置103が有するCPUによって実行される処理である。従って、処理の制御は、制御装置103が有するCPUが、制御装置103のメモリ部に格納された
図5に示す処理を行うプログラムを読み出し、該プログラムを実行することによって行われる。
【0032】
本実施形態では、制御装置103のメモリ部は、様々なワークに関する情報(穴の個数、穴の深さ(穴底までの距離)、穴が複数ある場合は穴の間隔など)を保持している。よって、ユーザが入力操作部118を介して検査対象のワークを特定する情報を入力すると、制御装置103は、メモリ部を参照して、検査対象となるワークの種類を抽出することができる。また、ロボットコントローラ104は、ワークの種類毎に該ワークの穴の各々に定速でセンサユニット101を挿入し、該穴の底部までセンサユニット101を移動させるよう多関節ロボット102を制御するように構成されている。さらに、ロボットコントローラ104は、多関節ロボット102の駆動によりセンサユニット101が穴113の底面まで到達したと判断する際には、制御装置103に、センサユニット101が穴の底面まで到達したことを示す移動完了情報を送信するように構成されている。
【0033】
本実施形態に係る内面形状検査を行うために、基板支持台111上に3つの穴113が設けられたワーク112がセットされると想定する。ユーザが入力操作部118を介して、基板支持台111上に載置したワーク112の種類を入力し、測定開始を指示すると、制御装置103は、ユーザからの測定開始指示、およびワークの種類を受付ける(ステップS501)。ステップS502では、レーザ制御部115は、レーザ光源106を駆動してレーザ光201を出射させる。これにより、円錐ミラー107に入射したレーザ光201は、リングレーザ光201Rとして出射され、穴113の内側面に照射される。
【0034】
ステップS503では、制御装置103は、ロボットコントローラ104にユーザが入力したワーク112の種類に関する種類情報を送信し、ロボットコントローラ104に、センサユニット101が検査対象となる穴113の測定開始位置に位置するように多関節ロボット102を駆動させる。すなわち、ロボットコントローラ104は、制御装置103から送信された種類情報に基づいて多関節ロボット102を制御して、ステップS501にてユーザに指定されたワーク112の穴113を測定するように測定開始位置にセンサユニット101を位置させる。
【0035】
ステップS504では、制御装置103は、ロボットコントローラ104に駆動コマンドを送信し、ロボットコントローラ104に多関節ロボット102の駆動を開始させる。ロボットコントローラ104は、上記種類情報により、検査対象の穴113の深さ(穴の開口面から底面までの距離)を認識しているので、多関節ロボット102を制御して、センサユニット101が穴113の底面に到達するまでセンサユニット101を一定の速度で穴113内に挿入させる。すなわち、多関節ロボット102は、カメラ109の撮影間隔に対応するピッチでセンサユニット101のセンシング部分を、穴113の底面に到達するまで等速で穴113の内部に挿入する。なお、ロボットコントローラ104は、上述のように、現在検査中の穴113の深さを認識しているので、多関節ロボット102の制御量(センサユニット101の穴の深さ方向の移動量)が穴113の深さと一致すると、センサユニット101が穴113の底面まで到達したと判断し、制御装置103に移動完了情報を送信する。
【0036】
ステップS505では、制御装置103は、上記ステップS504と同時に、カメラ109に撮影コマンドを送信し、カメラ109に穴113の内面に照射されたリングレーザ光201Rによる照射像である光リングを撮影させ、撮影画像を取り込ませる。また、制御装置103は、カメラ109への撮影コマンドと同時に、補正用センサ110に検知開始コマンドを送信し、補正用センサ110としての、3軸加速度センサの検知を開始させる。ステップS504とステップS505とを同時に行うことにより、センサユニット101のセンシング部分を穴113の深さ方向に移動させると同時に、リングレーザ光201Rにより形成された光リングの投影像を撮影し、該撮影と同期して補正用センサ110による検知を行う。カメラ109は、所定の撮影間隔で穴113の内面に形成された光リングを撮影し、該撮影毎に撮影画像データを生成し、制御装置103に送信する。補正用センサ110は、3軸加速度センサによる検知結果によって出力される基準位置に対するずれを補正するための信号を、同期して生成された撮影画像データと関連付けて制御装置103に送信する。制御装置103は、カメラ109から受信した撮影画像データを画像メモリ116に格納し、補正用センサ110から受信した信号を制御装置103が備えるメモリ部に格納する。
【0037】
ステップS506では、制御装置103は、センサユニット101が現在測定中の穴113の底面まで到達したか否かを判定する。すなわち、制御装置103は、ロボットコントローラ104から移動完了情報を受信するとセンサユニット101が穴113の底面まで到達したと判断する。一方、制御装置103は、ロボットコントローラ104から移動完了情報を受信しない場合は、該移動完了情報を受信するまでステップS504、S505を繰り返す。
【0038】
ステップS507では、データ演算部117は、画像メモリ116に展開された撮影画像データ毎に、該撮影画像データを処理して、リングレーザ光による光切断線(光リング)に沿った各点(測定点に対応)の座標情報である光切断線の画素位置情報を生成し、該画素位置情報を用いて三角測量法に基づく演算を行い、穴113の内面の3次元位置座標値を求めて測定点データを取得し、穴形状データを生成する。また、補正用センサ演算部114は、制御装置103のメモリ部に格納された、補正用センサ110からの信号に基づいて、対応する撮影画像データにおける、センサユニット101(又は多関節ロボット102)の基準位置からの変位量(ずれ)に関する3次元変位量データを生成する。なお、該3次元変位量データの各々は、対応する撮影画像データ、すなわち、穴形状データに関連付けられている。
【0039】
ステップS508では、データ演算部117は、1ライン毎(撮影間隔毎)に、3次元変位量データの座標値(x、y、z)を穴形状データの座標値(x、y、z)に加算することにより、3次元座標データである補正後穴形状データを生成する。ステップS509では、データ演算部117は、ステップS508にて生成された各ラインの補正後穴形状データを統合することにより、測定中の穴113に対する3次元穴形状データを生成し、該生成された3次元穴形状データを制御装置103が備えるメモリ部に格納する。
【0040】
ステップS510では、レーザ制御部115は、レーザ光源106を制御して、レーザ光201の発振を停止させる。ステップS511では、制御装置103は、制御装置103が備えるメモリ部に格納された測定が終了した穴の数に対応するカウント値を1つ増加させ、増加後のカウント値が現在測定中のワーク112の穴の数と一致するか否かを判定する。すなわち、制御装置103は、上記種類情報に基づいて制御装置103が備えるメモリ部を参照して現在測定中のワークの穴の個数を抽出し、上記増加後のカウント値と比較する。上記増加後のカウント値が抽出されたワークの穴の個数よりも小さい場合は、制御装置101は、他の穴の検査が必要であると判断し、ステップS502に戻り、他の穴についてステップS503〜S510を行う。上記増加後のカウント値が抽出されたワークの穴の個数と等しい場合は、現在測定中のワークの穴の全ての検査が完了したと判断し、ステップS512に進む。
【0041】
ステップS512では、データ演算部117は、制御装置103が備えるメモリ部に格納されたマスタデータを読み出し、生成された各3次元穴形状データとマスタデータとを比較する。データ演算部117は、上記比較により、3次元穴形状データにおいてマスタデータと異なる部分が抽出されると、該部分の大きさを閾値と比較する。この異なる部分が閾値よりも大きい場合は欠陥とする。すなわち、データ演算部117は、3次元穴形状データをマスタデータに対して照合することにより、穴113に存在する欠陥を抽出する。データ演算部117は、各3次元穴形状データについて、欠陥と判定された部分の個数が閾値(例えば、1)以上である場合、NG(不合格)と判定し、閾値未満である場合、OK(合格)と判定する。ステップS513では、制御装置103は、検査された穴に欠陥があると判定される場合は、表示部119において、欠陥の位置をワーク112の穴113の展開図上に表示する。
【0042】
本実施形態に係る内面形状検査装置は、入射方向斜め前方に円錐状のリングレーザを照射しながら穴の内面を撮像するため、従来のようにレーザ光が照射されない領域が生じない。そのため、内面形状検査装置は、穴の内底面付近の内面の形状の検査が可能となる。また、内面形状検査装置は、リレーレンズを含む内視鏡を備えることで、高分解能のカメラの使用を可能にし、高解像度の画像を用いた高精度の欠陥検査を可能にする。さらに、内面形状検査装置は、補正用センサを用いてセンサユニットの位置ずれに起因する穴の内面の座標データを補正することができるため、穴の内面の形状検査を高精度に実現できる。
【0043】
(第2実施形態)
図6は、本発明の第2実施形態に係る内面形状検査装置の概略を示す模式図である。本実施形態に係る内面形状検査装置600は、レーザ光が円筒ガラスの側面において内部反射することによる測定結果へのノイズを低減することができ、さらに、大きな頂角の円錐状のリングレーザ光を照射することができる。つまり、内面形状検査装置600は、測定死角およびノイズを低減し、小径の穴に対しても、大きな頂角の円錐状のリングレーザ光を照射を可能にする。以下、本実施形態に係る内面形状検査装置について詳細に説明する。
【0044】
図6において、内面形状検査装置600は、円錐状のリングレーザ光を出射し、該リングレーザ光の投影像を撮影するセンサユニット601と、該センサユニット601を変位させる多関節ロボット602とを備える。また、内面形状検査装置600は、センサユニット601の各機能を制御し、所定の演算を行う制御装置603と、多関節ロボット602の駆動を制御するロボットコントローラ604と、入力操作部618と、表示部619とを備える。入力操作部618は、所定の指令あるいはデータなどを入力するキーボードあるいは各種スイッチなどを含み、表示部619は、内面形状検査装置600の入力・設定状態、各種測定結果などをはじめとする種々の表示を行う。
【0045】
センサユニット601は、円筒ガラス605と、スポットレーザ光源606と、円錐レンズ607と、内視鏡608と、カメラ609と、補正用センサ610とを備えている。円筒ガラス605は、中空部と、端面としての一方端605a(円筒ガラス605の底面)とを有している。この円筒ガラス605および一方端605aは、後述する、レーザ光701およびリングレーザ光703に対して透明である。レーザ光源606と、円錐レンズ607と、内視鏡608とは円筒ガラス605の中空部に設けられている。ここで、中空部内に少なくとも円錐レンズ(リングレーザ生成部)607が設けられた円筒ガラス605を、リングレーザ生成部材ともいう。内視鏡608は、レーザ光源606側にスコープ部608aを有しており、スコープ部608aとは反対側でカメラ609に接続されている。カメラ609は、内視鏡608のスコープ部608aにより見えている像を所定の撮影間隔(測定間隔)で撮影し、該撮影間隔毎(フレーム毎)の撮影画像データを取得する。すなわち、円錐レンズ607から出射されたリングレーザ光は穴613の内壁面に投影像(光リング)を形成し、カメラ609は内視鏡608を介して該投影像を撮影する。円錐レンズ607は、レーザ光源606から発振されたレーザ光を、該レーザ光の入射方向斜め前方へ向けて、円錐状のリングレーザ光として出射する出射部を含む。なお、カメラ609は、例えばCCDカメラのように、像を撮影し、撮影画像データを取得できるものであればいずれを用いても良い。カメラ609として高分解能カメラを用いることは好ましい。また、内視鏡608を用いずに、カメラ609により光リングを直接撮影しても良い。
【0046】
円筒ガラス605の内部において、スコープ部608aと円筒ガラス605の一方端(底面)605aとの間には、レーザ光源606が設けられている。
図7に示すように、レーザ光源606は、一方端605a(すなわち、円錐レンズ607)に向かってレーザ光701を照射する。なお、レーザ光源606を円筒ガラス605の外部に設け、外部に設けられたレーザ光源606から出射されたレーザ光701をスコープ部608aが設けられた端面から出射する機能を内視鏡608に持たせ、該内視鏡608からレーザ光701を出射するようにしても良い。
【0047】
レーザ光源606と、一方端605aとの間には、少なくとも1面が円錐状のレンズである円錐レンズ607が設けられている。円錐レンズ607は、紫外線硬化剤702により円筒ガラス605の内壁に固定されている。なお、円錐レンズ607を円筒ガラス605に対して支持できれば、いずれの構成を用いても良いことは言うまでもない。円錐レンズ607は、円錐状の凸部607a、および円錐状の凹部607bを有しており、円錐状の凸部607aがレーザ光源606側に位置し、円錐状の凹部607bがリングレーザの出射側である一方端605b側に位置する。
【0048】
レーザ光源606から出射されたレーザ光701が円錐状の凸部607aの頂点607cを含む領域に照射されるように、レーザ光源606と円錐レンズ607とは位置決めされている。よって、円錐状の凸部607aは、円錐レンズ607の、レーザ光105が入射される入射部としても機能し、円錐状の凸部607aから入射したレーザ光701は、円錐レンズ607内にて屈折され、円錐状の凹部607bから円錐状のレーザ光703として出射される。円錐レンズ607の円錐状のリングレーザ光703の出射部としても機能する円錐状の凹部607bは、一方端605a近傍に位置するので、円錐状のリングレーザ光703は、センサユニット601の端部である円筒ガラス605の一方端605aから出射される。すなわち、センサユニット601は、該センサユニット601の先端部(一方端605a)から円錐状のリングレーザ光703を出射する。このように、本実施形態では、円錐レンズ607により、レーザ光701を透過屈折させることによりリングレーザ光703を生成している。
【0049】
図6において、基板支持台611上には、検査対象である穴613が形成された被検査部材(ワーク)612が載置されている。多関節ロボット602は、ロボットコントローラ604の制御により、センサユニット601のセンシング部分(本実施形態では、レーザ光源606、円錐レンズ607、内視鏡608)を穴613内に挿入する。本実施形態では、ロボットコントローラ604は、カメラ609の撮影間隔と同じピッチで上記センシング部分が穴613内に定速で挿入されるように多関節ロボット602を制御する。ただし、多関節ロボット602の軌跡精度が悪い場合は、測定中においてセンサユニット601が位置すべき位置からずれることがある。そこで、本実施形態では、補正用センサ610をセンサユニット601に設け、該補正用センサユニット610によって取得された補正用データを用いてデータ上で多関節ロボットによるカメラ609の位置ずれを補正する。
【0050】
本実施形態では、センサユニット601の基準位置からのずれ量を測定するための補正用センサ610は、3軸変位センサと3軸角度センサとを有する。3軸変位センサは、検知結果に基づいて、基準位置からの変位量に関する変位量信号を生成する。3軸角度センサは、検知結果に基づいて、互いに直交する3軸の各々に対する変位角(角度変化)に関する変位角信号を生成する。なお、補正用センサ610として、3軸加速度センサと3軸角速度センサとの組み合わせであっても良いし、3軸変位センサと3軸角速度センサとの組み合わせ、あるいは3軸加速度センサと3軸角度センサとの組み合わせであっても良い。また、3軸加速度センサを補正用センサ610として用いても良い。ただし、3軸角度センサおよび3軸角速度センサのいずれか一方を3軸変位センサまたは3軸加速度センサと組み合わせて用いることにより、センサユニット601の重力変化が発生しない動作(例えば、センサユニット601のその場回転)においても、補正用センサ610の補正を効かせることができる。
【0051】
制御装置603は、例えば、パーソナルコンピュータであり、センサユニット601の各部を制御する制御手段としての制御部である。また、制御装置603は、ロボットコントローラ604の駆動も制御する。例えば、制御装置603が、ロボット駆動コマンドをロボットコントローラ604に送信すると、該ロボットコントローラ604は、上記ロボット駆動コマンドに従って多関節ロボット602に所定の動作をさせる。制御装置603は、種々の演算、制御、判別などの処理動作を実行するCPU、ならびにこのCPUによって実行される様々な制御プログラム(例えば、
図8に示すプログラム)などを格納する領域、およびCPUの処理動作中のデータや入力データなどを一時的に格納する領域を有するメモリ部(不図示)を備えている。該メモリ部は、後述する画像メモリ616を有している。また、上記メモリ部には、検査対象の穴の表面形状を示す基準点データが格納されている。
【0052】
本実施形態では、リングレーザ光を用いた光切断法による形状測定を行う。また、制御装置603は、カメラ609による画像取り込みと、補正用センサ610による検知とが同期するように、カメラ609と補正用センサ610とを駆動させる。従って、あるタイミングでカメラ609にて生成された撮影画像データと、該タイミングで取得された変位量信号および変位角信号とは、時刻やメモリ部に格納された順番などを用いて関連付けられる。例えば、時刻で関連付ける場合は、同期して取得された撮影画像データおよび変位量信号、変位角信号に、取得された時刻に関する情報を付加すれば良い。また、順番で関連付ける場合は、撮影画像データ、ならびに変位量信号および変位角信号のそれぞれが制御装置603に送信された順に対応するメモリ部に格納すれば良い。
【0053】
制御装置603は、補正用センサ演算部614と、レーザ制御部615と、画像メモリ616と、データ演算部617とを備えている。補正用センサ演算部614は、該補正用センサ610より送信された変位量信号、および変位角信号から、多関節ロボット602の基準位置からの変位量(x、y、z)を算出し、補正用データとしての3次元変位量データを生成する。上記変位量信号および変位角信号は、これら信号の検知と同期して取得された撮影画像データと関連付けられている。このため、上記3次元変位量データも、対応する撮影画像データと関連付けられている。レーザ制御部615は、レーザ光源606を制御して、レーザ光701を発振させ、また該レーザ光701(リングレーザ光703)の投光強度を制御する。画像メモリ616は、カメラ609より送信された撮影画像データの各々を格納する。該撮影画像データも、画像メモリ616において、対応する変位量信号および変位角信号(すなわち、3次元変位量データ)と関連付けられている。
【0054】
データ演算部617は、画像メモリ616に展開された撮影画像データに対して座標変換等を行ってリングレーザ光703による光切断線を検出する。データ演算部617は、該光切断線の座標値から三角測量法に基づいて演算することで、光切断線を形成している測定中の穴613の3次元断面形状に対応する多数の測定点データ(距離画像)を生成する。ここでいう距離画像とは、測定点としての画素にその3次元位置座標値を割り当てた測定データである。なお、本明細書では、上記多数の測定点データを、「穴形状データ」と呼ぶことにする。データ演算部617は、補正用センサ演算部614にて取得された3次元変位量データにより上記穴形状データを補正して補正された穴形状データ(以降、「補正後穴形状データ」とも呼ぶ)を生成する。データ演算部617は、この補正後穴形状データは1ラインデータ(所定の光切断線に対応するデータ)であるので、ライン毎(撮影毎)の補正後穴形状データを統合して、3次元穴形状データを生成する。データ演算部(欠陥抽出部)617は、該生成された3次元穴形状データと、欠陥の無い基準点データ(以降、「マスタデータ」とも呼ぶ)との照合により、欠陥を抽出し、検査対象の穴613はOK(合格)なのか、NG(不合格)なのかを判定する。
【0055】
なお、本明細書において、「基準点」とは、検査対象の穴の表面全体の基準となる点である。すなわち、基準点は、検査対象である穴の表面形状の、測定点の位置合わせのターゲットとなる点であり、欠陥が無い理想的な仕上がりを有する穴(以降、“マスタ”とも呼ぶ)に対してリングレーザ光による検査対象の穴の3次元断面形状の測定を行った場合の測定点に対応するものである。よって、基準点データは、基準点の3次元の位置情報(x、y、z)を有し、穴に対する欠陥の無い基準形状に関する3次元の位置情報である。
【0056】
上述したように構成された内面形状検査装置600を用いた、検査対象となる穴の検査手順を
図8に示されたフローチャートを用いて以下に説明する。例えば制御装置603が有するCPUによって実行される処理である。従って、処理の制御は、制御装置603が有するCPUが、制御装置603が有するメモリ部に格納された
図8に示す処理を行うプログラムを読み出し、該プログラムを実行することによって行われる。
【0057】
本実施形態では、制御装置603のメモリ部は、様々なワークに関する情報(穴の個数、穴の深さ(穴底までの距離)、穴が複数ある場合は穴の間隔など)を保持している。よって、ユーザが入力操作部618を介して検査対象のワークを特定する情報を入力すると、制御装置603は、メモリ部を参照して、検査対象となるワークの種類を抽出することができる。また、ロボットコントローラ604は、ワークの種類毎に該ワークの穴の各々に定速でセンサユニット601を挿入し、該穴の底部までセンサユニット601を移動させるよう多関節ロボット602を制御するように構成されている。さらに、ロボットコントローラ604は、多関節ロボット602の駆動によりセンサユニット601が穴613の底面まで到達したと判断する際には、制御装置603に、センサユニット601が穴の底面まで到達したことを示す移動完了情報を送信するように構成されている。
【0058】
本実施形態に係る内面形状検査を行うために、基板支持台611上に3つの穴613が設けられたワーク612がセットされる。ユーザが入力操作部618を介して、基板支持台611上に載置したワーク611の種類を入力し、測定開始を指示すると、制御装置603は、ユーザからの測定開始指示、およびワークの種類を受付ける(ステップS801)。ステップS802では、レーザ制御部615は、レーザ光源606を駆動してレーザ光701を出射させる。これにより、円錐レンズ607に入射したレーザ光701は、円錐状の凸部607aおよび円錐状の凹部607bの形状、ならびに屈折により、リングレーザ光703として出射される。
【0059】
ステップS803では、制御装置603は、ロボットコントローラ604にユーザが入力したワーク611の種類に関する種類情報を送信し、ロボットコントローラ604に、センサユニット601が検査対象となる穴613の測定開始位置に位置するように多関節ロボット602を駆動させる。すなわち、ロボットコントローラ604は、制御装置603から送信された種類情報に基づいて多関節ロボット602を制御して、ステップS801にてユーザに指定されたワーク612の穴613を測定するように測定開始位置にセンサユニット601を位置させる。
【0060】
ステップS804では、制御装置603は、ロボットコントローラ604に駆動コマンドを送信し、ロボットコントローラ604に多関節ロボット602の駆動を開始させる。ロボットコントローラ604は、上記種類情報により、検査対象の穴613の深さ(穴の開口面から底面までの距離)を認識しているので、多関節ロボット602を制御して、センサユニット601が穴613の底面に到達するまで該センサユニット601を一定の速度で穴613内に挿入させる。すなわち、多関節ロボット602は、カメラ609の撮影間隔に対応するピッチでセンサユニット601のセンシング部分を、穴613の底面に到達するまで等速で穴613の内部に挿入する。なお、ロボットコントローラ604は、上述のように、現在検査中の穴613の深さを認識しているので、多関節ロボット602の制御量(センサユニット601の穴の深さ方向の移動量)が穴613の深さと一致すると、センサユニット601が穴613の底面まで到達したと判断し、制御装置603に移動完了情報を送信する。
【0061】
ステップS805では、制御装置603は、上記ステップS804と同時に、カメラ609に撮影コマンドを送信し、該カメラ609に穴613の内面に照射されたリングレーザ光703による照射像である光リングを撮影させ、撮影画像を取り込ませる。また、制御装置603は、カメラ609への撮影コマンドと同時に、補正用センサ610に検知開始コマンドを送信し、補正用センサ610としての、3軸変位センサおよび3軸角度センサの検知を開始させる。ステップS804とステップS805とを同時に行うことにより、センサユニット601のセンシング部分を穴613の深さ方向に移動させると同時に、リングレーザ光703により形成された光リングの投影像を撮影し、該撮影と同期して補正用センサ610による検知を行う。カメラ609は、所定の撮影間隔で穴613の内面に形成された光リングを撮影し、該撮影毎に撮影画像データを生成し、制御装置603に送信する。補正用センサ610は、3軸変位センサおよび3軸角度センサによる検知結果によって出力される変位量信号および変位角信号を、同期して生成された撮影画像データと関連付けて制御装置603に送信する。制御装置603は、カメラ609から受信した撮影画像データを画像メモリ616に格納し、補正用センサ610から受信した、変位量信号および変位角信号を制御装置603が備えるメモリ部に格納する。
【0062】
ステップS806では、制御装置603は、センサユニット601が現在測定中の穴613の底面まで到達したか否かを判定する。すなわち、制御装置603は、ロボットコントローラ604から移動完了情報を受信するとセンサユニット601が穴613の底面まで到達したと判断する。一方、制御装置603は、ロボットコントローラ604から移動完了情報を受信しない場合は、該移動完了情報を受信するまでステップS804、S805を繰り返す。
【0063】
ステップS807では、データ演算部617は、画像メモリ616に展開された撮影画像データ毎に、該撮影画像データを処理して、リングレーザ光による光切断線(光リング)に沿った各点(測定点に対応)の座標情報である光切断線の画素位置情報を生成し、該画素位置情報を用いて三角測量法に基づく演算を行い、穴613の内面の3次元位置座標値を求めて測定点データを取得し、穴形状データを生成する。また、補正用センサ演算部614は、制御装置603のメモリ部に格納された、変位量信号および変位角信号に基づいて、対応する撮影画像データにおける、センサユニット601(多関節ロボット602)の基準位置からの変位量に関する3次元変位量データを生成する。なお、3次元変位量データの各々は、対応する撮影画像データ、すなわち、穴形状データに関連付けられている。
【0064】
ステップS808では、データ演算部617は、1ライン毎(撮影間隔毎)に、3次元変位量データの座標値(x、y、z)を穴形状データの座標値(x、y、z)に加算することにより、3次元座標データである補正後穴形状データを生成する。ステップS809では、データ演算部617は、ステップS808にて生成された各ラインの補正後穴形状データを統合することにより、測定中の穴613に対する3次元穴形状データを生成し、該生成された3次元穴形状データを制御装置603が備えるメモリ部に格納する。
【0065】
ステップS810では、レーザ制御部615は、レーザ光源606を制御して、レーザ光701の発振を停止させる。ステップS811では、制御装置603は、該制御装置603が備えるメモリ部に格納された測定が終了した穴の数に対応するカウント値を1つ増加させ、増加後のカウント値が現在測定中のワーク612の穴の数と一致するか否かを判定する。すなわち、制御装置603は、上記種類情報に基づいて制御装置603が備えるメモリ部を参照して現在測定中のワークの穴の個数を抽出し、上記増加後のカウント値と比較する。上記増加後のカウント値が抽出されたワークの穴の個数よりも小さい場合は、制御装置601は、他の穴の検査が必要であると判断し、ステップS802に戻り、他の穴についてステップS803〜S810を行う。上記増加後のカウント値が抽出されたワークの穴の個数と等しい場合は、現在測定中のワークの穴の全ての検査が完了したと判断し、ステップS812に進む。
【0066】
ステップS812では、データ演算部617は、制御装置603が備えるメモリ部に格納されたマスタデータを読み出し、生成された各3次元穴形状データとマスタデータとを比較する。データ演算部617は、上記比較により、3次元穴形状データにおいてマスタデータと異なる部分が抽出されると、該部分の大きさを閾値と比較する。この異なる部分が閾値よりも大きい場合は欠陥とする。すなわち、データ演算部617は、3次元穴形状データをマスタデータに対して照合することにより、穴613に存在する欠陥を抽出する。データ演算部617は、各3次元穴形状データについて、欠陥と判定された部分の個数が閾値(例えば、1)以上である場合、NG(不合格)と判定し、閾値未満である場合、OK(合格)と判定する。ステップS813では、制御装置603は、検査された穴に欠陥があると判定される場合は、表示部619において、欠陥の位置をワーク612の穴613の展開図上に表示する。
【0067】
本実施形態によれば、円錐レンズ607により、入射されたレーザ光701を透過させ、かつ屈折によりリングレーザ光703を形成しているので、リングレーザ光を生成する部材である円錐レーザ607の、レーザ光701の入射側と反対側からリングレーザ光703を出射することができる。よって、円錐レンズ607のリングレーザ光703の出射部を、センサユニット601の先端部(一方端605a)に極端に近づけることができ、該センサユニット601の先端部からリングレーザ光703を出射することができる。すなわち、端面出射構造を実現することができる。よって、リングレーザ光703の円筒ガラス605に対する入射角を小さくすることができる。例えば、従来の側面出射構造と比較すると、リングレーザ光のガラス面への入射角を、従来の側面出射構造よりも小さくすることができる。このように、円筒ガラスへの入射角を小さくすることができるので、内部反射の発生を低減することができる。また、従来のように、ミラーによる反射ではなく、透過屈折によりリングレーザ光を生成しているので、乱反射の発生を低減することができる。このように、本実施形態によれば、リングレーザ光の生成部(本実施形態では、レーザ光源606および円錐レンズ607)を支持するための円筒ガラス605における内部反射、および乱反射に起因するノイズの発生を低減することができる。
【0068】
また、本実施形態では、円錐レンズ607における透過屈折によりリングレーザ光703を形成しているので、円錐レンズ607の形状を変えなくても、円錐レンズ607の性質(すなわち、屈折率)を変えることで、円錐状のリングレーザ光703の頂角θを調節することができる。例えば、同一の形状であっても、円錐レンズ607の屈折率を大きくすることにより、円錐状のリングレーザ光703の頂角θを大きくすることができ、円錐レンズ607の屈折率を小さくすることにより、円錐状のリングレーザ光703の頂角θを小さくすることができる。もちろん、円錐レンズ607の形状を変えても円錐状のリングレーザ光703の頂角θを調節することができる。このように、本実施形態では、頂角θを調節するパラメータが円錐レンズ607の形状、および屈折率の2つであり、従来の円錐ミラーによるリングレーザ光生成に比べて頂角θの調節パラメータを多くすることができる。よって、従来よりも、頂角θをより自由度が高く調節することができる。
【0069】
また、円錐レンズ607の出射部と一方端605aとの間にいずれの部材も介在せず、該出射部を該一方端605aに近づけることができる(円錐レンズ607の構造(例えば、後述する
図9(a)、(b)の構造)によっては接触させることができる)。よって、従来の円錐ミラーのように、端面出射構造を実現するためにリングレーザ光形成部(従来では、円錐ミラー、本実施形態では、円錐レンズ)を小型化しなくても、端面出射構造を実現することができる。
【0070】
また、本実施形態では、上述のように、センサユニット601の先端部(端面)である一方端605aになるべく近い箇所(円錐レンズ607の構造(例えば、後述する
図9(a)、(b)の構造)によっては一方端605aに接触した位置)からリングレーザ光703を出射することができる。よって、上記一方端605aの径を小さくしても、大きな頂角θを有するリングレーザ光703を一方端605aから出射することができる。すなわち、端面出射構造により、広い頂角θの円錐状のリングレーザ光703を出射することができる。例えば穴613が小径である場合、円筒ガラス605も径を小さくしなければならず、それに伴って一方端605aの径も小さくする必要がある。しかしながら、本実施形態によれば、上述のように、一方端605aの径が小さくても、広い頂角θの円錐状のリングレーザ光703をセンサユニット601の先端部(一方端605a)から出射することができる。従って、小径の穴613に対しても、大きな頂角θの円錐状のリングレーザ光を端面出射構造により照射することができる。
【0071】
さらに、本実施形態では、円錐レンズ607による屈折により、センサユニット601の進行方向に対して斜め前方に円錐状のリングレーザ光を照射させているので、穴613に底がある場合、穴の底部までリングレーザ光703を照射することができる。よって、底部を有する穴に対して底部まで側面形状を測定することができ、測定死角を低減、あるいは無くすことができる。
【0072】
このように、本実施形態によれば、円錐レンズ607を用いて、入射部から入射したレーザ光を屈折させ、該入射部と反対側の出射部から円錐状のリングレーザ光として出射しているので;(1)内部反射および乱反射に起因するノイズを低減すること;(2)小径の穴に対しても、大きな頂角θの円錐状のリングレーザ光をセンサユニットの先端部から照射できること;および(3)底を有する穴に対しても、死角を低減、あるいは無くして内壁面の形状を測定できること、を同時に達成することができる。
【0073】
(その他の実施形態)
上記実施形態では、円錐状の凸部607aおよび円錐状の凹部607bを有する円錐レンズ607により円錐状のリングレーザ光703を生成しているが、円錐状のリングレーザ光703を形成する構成はこれに限定されない。例えば、
図9(a)に示すように、レーザ光701の入射部側、およびリングレーザ光の出射部側共に円錐状の凸部607aとする構造であっても良いし、
図9(b)に示すように、レーザ光701の入射部側を平面901とし、リングレーザ光の出射部側を円錐状の凸部607aとする構造であっても良い。また、
図9(c)に示すように、レーザ光701の入射部側を平面901とし、リングレーザ光の出射部側を円錐状の凹部607bとする構造であっても良い。このように、レーザ光701の光軸上のレンズ面の少なくとも一面が円錐状であり、レーザ光701の入射部と反対側から円錐状のリングレーザ光を出射するレンズであればいずれのレンズを用いても良い。また、入射したレーザ光を屈折によりリングレーザ光として出射することができるのであれば、複数のレンズを組み合わせても良い。本発明における本質は、入射部から入射されたレーザ光を屈折によりリングレーザ光とし、かつ該屈折により形成されたリングレーザ光を入力部と反対側から出射することであり、該本質事項を実現できる構造であれば、いずれの構造を用いても良い。