(57)【特許請求の範囲】
【請求項１】
接触式センサにより３次元物体の位置を計測する３次元計測方法において、
被計測物を計測するために必要な目標位置を入力する段階と、
前記被計測物の実際の存在位置を検索する検索範囲を入力する段階と、
前記接触式センサを前記目標位置まで移動し、前記検索範囲内において、前記被計測物の実際の位置を検索する段階と、
前記検索段階において検出された被計測物を前記接触式センサにより計測する段階と、
を有することを特徴とする３次元計測方法。
【請求項２】
前記目標位置は、前記被計測物を基準に決められた任意の座標系に基づく座標値により入力され、
前記３次元計測方法は、さらに、当該入力された座標値を、内部処理を行うための専用の座標系に基づく座標値に変換する段階を、有し、
前記接触式センサにより計測する段階は、当該専用の座標系に基づいて前記接触式センサを移動させて前記被計測物の計測を行うことを特徴とする請求項１記載の３次元計測方法。
【請求項３】
前記検索範囲は、
１回の検索で前記接触式センサを移動する開始点および終了点と、
当該開始点から終了点に至る方向と直行する方向に前記接触式センサを移動する検索間隔と、
当該検索間隔ごとに前記開始点から終了点までの検索を行う検索回数と、
を定めたものであることを特徴とする請求項１または２記載の３次元計測方法。
【請求項４】
前記目標位置は、前記被計測物が設計上存在する位置であり、  前記被計測物の実際の位置を検索する段階は、前記検索範囲内における前記目標位置を最初に検索することを特徴とする請求項１〜３のいずれか一つに記載の３次元計測方法。
【請求項５】
接触式センサにより３次元物体の位置を計測する３次元計測プログラムにおいて、
被計測物を計測するために必要な目標位置を記憶するステップと、
前記被計測物の実際の存在位置を検索する検索範囲を記憶するステップと、
前記接触式センサを前記目標位置まで移動し、前記検索範囲内において、前記被計測物の実際の位置を検索するステップ段階と、
前記検索段階において検出された被計測物を前記接触式センサにより計測するステップと、
を有することを特徴とする３次元計測プログラム。
【請求項６】
前記目標位置は、前記被計測物を基準に決められた任意の座標系に基づく座標値により入力され、
前記３次元計測プログラムは、さらに、当該入力された座標値を、内部処理を行うための専用の座標系に基づく座標値に変換するステップを、有し、
前記接触式センサにより計測するステップは、当該専用の座標系に基づいて前記接触式センサを移動させて前記被計測物の計測を行うことを特徴とする請求項５記載の３次元計測プログラム。
【請求項７】
前記検索範囲は、
１回の検索で前記接触式センサを移動する開始点および終了点と、
当該開始点から終了点に至る方向と直行する方向に前記接触式センサを移動する検索間隔と、
当該検索間隔ごとに前記開始点から終了点までの検索を行う検索回数と、
を定めたものであることを特徴とする請求項５または６記載の３次元計測プログラム。
【請求項８】
前記目標位置は、前記被計測物が設計上存在する位置であり、  前記被計測物の実際の位置を検索するステップは、前記検索範囲内における前記目標位置を最初に検索することを特徴とする請求項５〜７のいずれか一つに記載の３次元計測プログラム。
【請求項９】
請求項５〜８のいずれか一つに記載の３次元計測プログラムを記憶したことを特徴とするコンピュータ読み取り可能な記憶媒体。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、３次元計測方法、３次元計測プログラム、および３次元計測プログラムを記憶したコンピュータ読み取り可能な記憶媒体に関する。
【０００２】
【従来の技術】
自動車車体（以下単に車体と称する）の組立工程においては、車体に各種擬装部品の組みつけが行われるが、このとき、車体の寸法精度に大きな誤差があると、擬装部品の組み付け不良が発生し、また車体そのものの信頼性が低下するため、擬装部品の組み付け前に、出来あがった車体の寸法精度を計測することが行われている。
【０００３】
このような車体の寸法精度は、接触式センサを有した３次元計測機を用いて、物体の３次元座標上における位置を計測することにより行われている。
【０００４】
図９は、一般的な３次元計測機に用いられているプローブを示す図面であり、３次元計測機は、図示するようなプローブ１０１がたとえばロボットハンド１０３などの先端に取り付けられたもので、このプローブ１０１のさらに先端に設けられているプローブチップ１０２を計測部位に接触させて、このプローブチップ１０２の接触位置から計測部位の位置を算出している。
【０００５】
図１０は、車体の計測部位の一例を示す図面であり、図１１は、従来の計測手順を示すフローチャートである。
【０００６】
通常、車体の寸法精度を計測する場合、図１０Ａに示すように、車体上におけるウェルドボルトやスタッドボルト２０１など、寸法精度を出すための目標物として定義された測定点（ｋｘ１、ｋｙ１、ｋｚ１）を計測する。
【０００７】
このため、従来の計測手順は、所定位置に位置決めされた車体に対して、図１０Ｂに示すように、まず、あらかじめ教示された車体面上のボルト取り付け部分における面定義用ポイント３点Ｐ１、Ｐ２、Ｐ３の位置を計測し（Ｓ２０１）、同様にあらかじめ教示されたボルト２０１の中心を割り出すためのボルト周囲の計測点８点Ｑ１〜８を計測し（Ｓ２０２）、ボルト中心座標を算出する（Ｓ２０３）。
【０００８】
続いて、算出されたボルト中心座標をＰ１〜３で定義される面に投影して（Ｓ２０４）、ボルト取り付け面上でのボルト中心座標を出力している（Ｓ２０５）。そして、最終的に出力されたボルト取り付け面上でのボルト中心座標が、この車体に対する寸法精度を求めるための計測値となる。
【０００９】
【発明が解決しようとする課題】
しかしながら、このような従来の計測手順では、あらかじめ車体面の測定点やボルトの測定点が教示されているため、もし、車体の位置がずれた場合、測定点となっているボルト位置もずれてしまうため計測できないことがある。
【００１０】
たとえば、図１２Ａに示すように、面定義用ポイント（Ｐ１〜３）を計測しようとした場合に、車体位置がずれていると、プローブ１０１とボルト２０１が干渉して車体面の計測ができなかったり、また、図１２Ｂに示すように、ボルト位置がずれている場合はプローブ１０１がボルト周囲の計測点を計測しようとしても、その位置にボルトがなく通り過ぎてしまったりして、うまく計測でないといった問題がある。
【００１１】
このため、従来は自動計測を行う場合であっても、作業者が目視により計測現場を監視し、不具合があった場合には、計測器と停止させたり、手動によって位置決めを直したりするなど、完全に自動化することが困難であった。
【００１２】
そこで、本発明の目的は、被計測物の目標位置にずれがあった場合でも確実に計測することができる３次元自動計測方法を提供することである。
【００１３】
【課題を解決するための手段】
本発明の目的は、以下の構成により達成される。
【００１４】
（１）接触式センサにより３次元物体の位置を計測する３次元計測方法において、被計測物を計測するために必要な目標位置を入力する段階と、前記被計測物の実際の存在位置を検索する検索範囲を入力する段階と、前記接触式センサを前記目標位置まで移動し、前記検索範囲内において、前記被計測物の実際の位置を検索する段階と、前記検索段階において検出された被計測物を前記接触式センサにより計測する段階と、を有することを特徴とする３次元計測方法。
【００１５】
（２）前記目標位置は、前記被計測物を基準に決められた任意の座標系に基づく座標値により入力され、前記３次元計測方法は、さらに、当該入力された座標値を、内部処理を行うための専用の座標系に基づく座標値に変換する段階を、有し、前記接触式センサにより計測する段階は、当該専用の座標系に基づいて前記接触式センサを移動させて前記被計測物の計測を行うことを特徴とする。
【００１６】
（３）前記検索範囲は、１回の検索で前記接触式センサを移動する開始点および終了点と、当該開始点から終了点に至る方向と直行する方向に前記接触式センサを移動する検索間隔と、当該検索間隔ごとに前記開始点から終了点までの検索を行う検索回数と、を定めたものであることを特徴とする。
【００１７】
（４）前記目標位置は、前記被計測物が設計上存在する位置であり、前記被計測物の実際の位置を検索する段階は、前記検索範囲内における前記目標位置を最初に検索することを特徴とする。
【００１８】
（５）接触式センサにより３次元物体の位置を計測する３次元計測プログラムにおいて、被計測物を計測するために必要な目標位置を記憶するステップと、前記被計測物の実際の存在位置を検索する検索範囲を記憶するステップと、前記接触式センサを前記目標位置まで移動し、前記検索範囲内において、前記被計測物の実際の位置を検索するステップ段階と、前記検索段階において検出された被計測物を前記接触式センサにより計測するステップと、を有することを特徴とする３次元計測プログラム。
【００１９】
（６）前記目標位置は、前記被計測物を基準に決められた任意の座標系に基づく座標値により入力され、前記３次元計測プログラムは、さらに、当該入力された座標値を、内部処理を行うための専用の座標系に基づく座標値に変換するステップを、有し、前記接触式センサにより計測するステップは、当該専用の座標系に基づいて前記接触式センサを移動させて前記被計測物の計測を行うことを特徴とする。
【００２０】
（７）前記検索範囲は、１回の検索で前記接触式センサを移動する開始点および終了点と、当該開始点から終了点に至る方向と直行する方向に前記接触式センサを移動する検索間隔と、当該検索間隔ごとに前記開始点から終了点までの検索を行う検索回数と、を定めたものであることを特徴とする。
【００２１】
（８）前記目標位置は、前記被計測物が設計上存在する位置であり、前記被計測物の実際の位置を検索するステップは、前記検索範囲内における前記目標位置を最初に検索することを特徴とする。
【００２２】
（９）  前記（５）〜（８）のいずれか一つに記載の３次元計測プログラムを記憶したことを特徴とするコンピュータ読み取り可能な記憶媒体。
【００２３】
【発明の効果】
上記のように構成された本発明は、請求項ごとに以下のような効果を奏する。
【００２４】
請求項１記載の本発明によれば、記計測物の実際の存在位置を検索してから計測を行うことにしたので、被計測物の存在位置が設計値どおりの位置にない場合でも、確実に計測することができる。したがって、手動により位置決め直しを行う必要がなくなるため、３次元計測を完全に自動化することが可能となる。
【００２５】
請求項２記載の本発明によれば、被計測物を基準とした座標系から、内部処理に使用する専用の座標系に座標変換することとしたので、被計測物に対して決められた様々な座標系においても、内部処理においては、いつでも同じ座標系で処理できるため、３次元計測動作を速くすることができる。
【００２６】
請求項３記載の本発明によれば、検索範囲を、１回の検索範囲を開始点と終了点によって規定し、この開始点と終了点の方向に対して直行する方向に検索間隔を規定したので、様々な広さの検索範囲を簡単に設定することができる。
【００２７】
請求項４記載の本発明によれば、目標位置を被計測物が設計上存在する位置にとり、検索はこの目標位置を最初に行うようにしたので、被計測物が設計どおりに存在する場合に、被計測物をいち早く見つけ出すことができる。
【００２８】
請求項５記載の本発明によれば、被計測物を計測するために必要な目標位置と、検索範囲を記憶し、これらをもとに被計測物の実際の存在位置を検索してから計測を行うことにしたので、被計測物の存在位置が設計値どおりの位置にない場合でも、確実に計測することができる。したがって、手動により位置決め直しを行う必要がなくなるため、３次元計測を完全に自動化することが可能となる。
【００２９】
請求項６記載の本発明によれば、被計測物を基準とした座標系から、内部処理に使用する専用の座標系に座標変換することとしたので、被計測物ごとに異なる座標系が用いられている場合でも、内部処理のための座標系は変更する必要がないので、被計測物やそれにともなって異なる座標系が用いられている場合でもプログラム内の座標系を変更する必要がない。
【００３０】
請求項７記載の本発明によれば、検索範囲を、１回の検索範囲を開始点と終了点によって規定し、この開始点と終了点の方向に対して直行する方向に検索間隔を規定したので、様々な広さの検索範囲を簡単に設定することができる。
【００３１】
請求項８記載の本発明によれば、目標位置を被計測物が設計上存在する位置にとり、検索はこの目標位置を最初に行うようにしたので、被計測物が設計どおりに存在する場合に、被計測物をいち早く見つけ出すことができる。
【００３２】
請求項９記載の本発明によれば、前記請求項５〜８に記載のプログラムを記憶したコンピュータ読み取り可能な記憶媒体であるので、３次元計測機を制御するコンピュータにこの記憶媒体に記憶されているプログラムを読み取らせて実行させることとで、３次元計測を行うことができる。
【００３３】
【発明の実施の形態】
以下、添付した図面を参照して本発明の一実施の形態を説明する。
【００３４】
はじめに本実施の形態の概要を説明する。なお、本実施の形態においても被計測物として、車体上におけるウェルドボルトやスタッドボルトなどを例に説明する。
【００３５】
本実施の形態における３次元自動計測は、まず、各計測点の情報を計測パラメータとしてセットする。計測パラメータは、計測部位を示す３次元座標系での計測基準点座標、計測面ベクトル、プローブの進入方向、面計測逃げ量、ボルト中心ピックアップ高さ、ボルト山径、ボルト中心点計測角度である（詳細後述）。
【００３６】
続いて、各パラメータの値に基づいて、ボルトの有無を決められた回数探索する。ここでボルトが検出できたら、ボルトの検出位置に基づいて計測目標点の位置を補正して新たな計測目標点として決定する。
【００３７】
そして、補正した新たな計測目標点に基づいて、ボルト取り付け面およびボルト中心点の本計測を行い、被計測物に対する３次元計測が行われる。
【００３８】
以下、図面を参照してさらに詳細に説明する。
【００３９】
図１〜３は、本発明を適用した３次元自動計測方法の処理手順を示すフローチャートであり、図４〜７は、この処理手順を説明するために、被計測物における計測部位を示す図面である。
【００４０】
まず、計測パラメータのセットが行われる（Ｓ１）。セットされるパラメータは、前述のとおり、計測基準点座標、計測面ベクトル、プローブの進入方向、面計測逃げ量、ボルト中心ピックアップ高さ、ボルト山径、ボルト中心点計測角度である。なお、この段階で入力される座標値は、被計測物を基準とする任意の３次元座標系によるものである。
【００４１】
ここで各パラメータについて説明する。
【００４２】
計測基準点座標（ｋｘ１、ｋｙ１、ｋｚ１）は、図４に示すように、被計測物を計測する際にプローブを移動させる目標位置となるものであり、通常は、計測点の論理的な存在位置を示す座標であり、たとえば被計測物が正確に位置決めされている場合に設計データから得られる論理的な位置座標である。
【００４３】
計測面ベクトル（ｄｘ１、ｄｙ１、ｄｚ１）は、同じく図４に示すように、計測基準点を含む面に対するボルト２０１の中心軸方向を示すベクトル値である。
【００４４】
プローブの進入方向（ｄｘ２、ｄｙ２、ｄｚ２）は、同じく図４に示すように、プローブ１０１をどの方向から進入させるかを決めるベクトル値（ｄｘ２、ｄｙ２、ｄｚ２）である。
【００４５】
面計測逃げ量ｄｓｔは、図５に示すように、計測基準点の座標を（０、０、０）として、面計測時に計測基準点からどれだけ離れた位置を計測するかを規定する量である。
【００４６】
ボルト中心ピックアップ高さｈは、図６Ａに示すように、ボルトのどの高さの部分を計測するかを決めるものである。また、ボルト山径ｄｉａはボルトのねじ山の外径である。
【００４７】
ボルト中心点計測角度ｋａｋｕは、図６Ｂに示すように、ボルト周囲にプローブチップ１０２を接触させる範囲を決める角度であり、ここでは、このｋａｋｕの中に４点とし、ｘ軸を対称に合計８点計測するようにしている。
【００４８】
計測パラメータの入力後、続いて、プローブによりボルトを検索するためのサーチ条件を入力する（Ｓ２）。サーチ条件は、サーチ開始点、サーチ終了点、サーチステップ、およびサーチ回数である。
【００４９】
ここで、図７を参照してこれらの条件について説明する。
【００５０】
サーチ開始点および終了点は、サーチする方向の開始点と終了点を定義するものであり、これにボルトを検索する距離が決定される。
【００５１】
サーチステップは、サーチ開始点と終了点よりなるサーチ方向に対して直行する方向への移動間隔（サーチ間隔）を決めるものであり、図７に示すように、サーチ目標点があるところを０とし、−Ｙ方向と、＋Ｙ方向に１ステップずつとなる。なお、図においては、このサーチステップを、計測処理手順のステップとの混同を避けるために、「ＳＴＥＰ」と表す。
【００５２】
このサーチステップにおけるサーチ間隔は、詳細は後述するが、ボルト中心位置を求める際にボルト表面３点をこのサーチ間隔で３回サーチを行って求めているため、このサーチ間隔があまり広すぎると、３回のサーチでボルト面を通り過ぎてしまうので、ボルト山径の１／３以下とすることが好ましい。
【００５３】
サーチ回数ｎは、サーチステップにより決められた間隔で何回検索を行うかを決めるものである。ここでは、サーチステップ（ＳＴＥＰ）０から＋方向と、−方向にそれぞれｎ回検索している。
【００５４】
したがって、サーチ開始点から終了点までの距離とサーチステップによって決められたサーチ間隔による回数によって検索範囲が決まることになる。
【００５５】
そして、この検索範囲は、たとえば計測点付近の被計測物の形状や、被計測物が位置決めされる際の最大ずれ量などから適宜決定するとよい。これは、被計測部の形状によっては、あまり検索範囲を広くすると、プローブと他の物体が干渉してしまうおそれがあるため、検索範囲は計測部位の形状に合わせて他の物体と干渉しない程度にし、一方、位置決めの際の最大ずれ量より広くしても、それ以上計測点がずれて位置決めされることはないので無駄な範囲を検索することになるからである。
【００５６】
サーチ条件設定後、続いて、計測基準点座標を原点とする独自の３次元座標系をセットする（Ｓ３）。このとき、計測基準点座標を原点とし、サーチ開始点から終了点方向をｘ軸、ステップ方向をｙ軸、計測面ベクトル方向をｚ軸とする。このように計測基準点座標を原点とした独立座標系を設定するのは、計測部位によって異なる様々な座標系をそのまま扱うよりも以後の処理を効率化することができるためである。また、今後の処理がすべて計測基準点座標を原点とした独立座標系での処理になるので、この計測手順の汎用化が可能となる。さらには、被計測物が変わってもプログラム内部における座標系を変更する必要がない。
【００５７】
続いて、ボルトの検索動作に入る。
【００５８】
まず、仮計測目標点Ｐ２のサーチを行う（Ｓ４）。仮計測目標点Ｐ２とは、図８に示すように、ボルト中心を求める際に使用する３つの点Ｐ１、Ｐ２、およびＰ３のうちの中間の点Ｐ２である（ボルト中心の求め方については後述する）。
【００５９】
ここで、仮計測目標点Ｐ２のサーチを行っているのは、ボルト位置が設計値どおりの位置にあるとすれば、最初にプローブチップがあたるボルト面は、ボルト中心に近い位置であるから、一番初めに検出された位置をＰ２とするためである。
【００６０】
続いて、仮計測目標点Ｐ２が検出（ピックアップ）できたか否かを判断し（Ｓ５）、ピックアップできた場合には、−１サーチステップ（ＳＴＥＰ）の位置にプローブをずらして仮計測目標点Ｐ１をサーチする（Ｓ６）。ここで仮計測目標点Ｐ１をピックアップできたか否かを判断し（Ｓ７）、仮計測目標点Ｐ１がピックアップできたなら、続いて、＋１サーチステップ（ＳＴＥＰ）の位置で仮計測目標点Ｐ３をサーチし（Ｓ８）、仮計測目標点Ｐ３がピックアップできたか否かを判断し（Ｓ９）、ピックアップできた場合には、計測点Ｐ１、Ｐ２、Ｐ３がそろうので、これら３点から仮目標点を求める（Ｓ１０）。
【００６１】
仮目標点は、まず、図８に示すように、計測点Ｐ１、Ｐ２、Ｐ３の座標から円の中心点座標（ｋｘ２、ｋｙ２、ｈ）を求め、この座標値を計測面ベクトル方向に投影した点、すなわち、ｚ軸方向にピックアップ高さｈ分の値を引いた点を仮目標点とする（ｋｘ２、ｋｙ２、０）。
【００６２】
前記ステップＳ７において、仮計測目標点Ｐ１がピックアップできていないと判断された場合、すなわち、ステップＳ６において、−１サーチステップ（ＳＴＥＰ）の位置におけるサーチで仮計測目標点Ｐ１が検出できなかった場合である。この場合、その前のステップＳ４において仮計測目標点Ｐ２が検出されていることから、このＳ４において検出された位置より−方向にはボルトがないことを意味している。
【００６３】
そこで、前記ステップＳ７において、仮計測目標点Ｐ１がピックアップできない場合には、次に、＋１サーチステップ（ＳＴＥＰ）の位置でサーチを行って、仮計測目標点Ｐ１をピックアップする（Ｓ１１）。このとき、仮計測目標点Ｐ１は、先のＳ４において仮計測目標点Ｐ２がピックアップされており、かつ、−サーチステップ（ＳＴＥＰ）方向にはピックアップされた点がないことから、＋サーチステップ（ＳＴＥＰ）方向の位置に必ず仮計測目標点Ｐ１がピックアップされるのである。
【００６４】
続いて、＋サーチステップ（ＳＴＥＰ）×２の位置でサーチを行って、仮計測目標点Ｐ３をピックアップする（Ｓ１２）。このときも必ず仮計測目標点Ｐ３がピックアップされる。
【００６５】
これで、仮想目標点Ｐ１、Ｐ２、Ｐ３がそろうので、仮目標点を求める（Ｓ１０）。
【００６６】
次に、前記ステップＳ９において、仮計測目標点Ｐ３がピックアップできていないと判断された場合、すなわち、ステップＳ８において、＋１サーチステップ（ＳＴＥＰ）の位置におけるサーチで仮計測目標点Ｐ３が検出できなかったということであり、この場合、その前のステップＳ４において仮計測目標点Ｐ２が、また、ステップＳ６において仮計測目標点Ｐ１がそれぞれ検出されていることから、これら位置より＋サーチステップ（ＳＴＥＰ）方向にはボルトがないことを意味している。
【００６７】
そこで、前記ステップＳ９において、仮計測目標点Ｐ３がピックアップできない場合には、次に、−サーチステップ（ＳＴＥＰ）×２の位置でサーチを行って、仮計測目標点Ｐ３をピックアップする（Ｓ１３）。このとき必ず仮計測目標点Ｐ３がピックアップされる。
【００６８】
これで、仮想目標点Ｐ１、Ｐ２、Ｐ３がそろうので、続けて仮目標点を求める（Ｓ１０）。
【００６９】
さらに、前記ステップＳ５において、仮計測目標点Ｐ２がピックアップできていないと判断された場合、すなわち、最初のサーチによってまったくボルトが検出されなかった場合は、次に、変数ｉを０クリアして（Ｓ２１）から、ｉをインクリメントし（Ｓ２２）、＋サーチステップ（ＳＴＥＰ）×ｉの位置にプローブを移動させて、仮計測目標点Ｐ１のサーチを行う（Ｓ２３）。
【００７０】
ここで仮計測目標点Ｐ１がピックアップできたか否かを判断し（Ｓ２４）、ピックアップできた場合には、＋サーチステップ（ＳＴＥＰ）×（ｉ＋１）の位置にプローブをずらして仮計測目標点Ｐ２をピックアップし（Ｓ２５）。さらに＋サーチステップ（ＳＴＥＰ）×（ｉ＋３）の位置にプローブをずらして仮計測目標点Ｐ３をピックアップする（Ｓ２４）。これは、ステップＳ２３において仮計測目標点Ｐ１がピックアップできたということは、このサーチにおいてボルトの端を見つけたことになるので、その後のステップＳ２５および２６においては、必ず仮計測目標点Ｐ２および仮計測目標点Ｐ３をピックアップすることができる。
【００７１】
これで、仮計測目標点Ｐ１、Ｐ２、Ｐ３がそろうのでステップＳ１０へ進み、仮目標点を求める。
【００７２】
前記ステップＳ２４において、仮計測目標点Ｐ１がピックアップできていないと判断された場合には、次に、ｉが検索回数ｎまで達したか否かを判断し（Ｓ２７）、達していなければ、ステップＳ２２へ戻りステップＳ２２〜２７の処理を繰り返し実行する。
【００７３】
一方、ステップＳ２７において、ｉが検索回数ｎまで達したと判断された場合には、＋方向にｎ回検索してもボルトを見つけ出せなかったということであるので、次に、変数ｉを０クリアして（Ｓ３１）から、ｉをインクリメントし（Ｓ３２）、−サーチステップ（ＳＴＥＰ）×ｉの位置にプローブを移動させて、仮計測目標点Ｐ１のサーチを行う（Ｓ３３）。
【００７４】
ここで仮計測目標点Ｐ１がピックアップできたか否かを判断し（Ｓ３４）、ピックアップできた場合には、−サーチステップ（ＳＴＥＰ）×（ｉ＋１）の位置にプローブをずらして仮計測目標点Ｐ２をピックアップし（Ｓ３５）。さらに−サーチステップ（ＳＴＥＰ）×（ｉ＋３）の位置にプローブをずらして仮計測目標点Ｐ３をピックアップする（Ｓ３４）。これは、ステップＳ３３において仮計測目標点Ｐ１がピックアップできたということは、このサーチにおいてボルトの端を見つけたことになるので、その後のステップＳ３５および３６においては、必ず仮計測目標点Ｐ２および仮計測目標点Ｐ３をピックアップすることができる。
【００７５】
これで、仮計測目標点Ｐ１、Ｐ２、Ｐ３がそろうのでステップＳ１０へ進み、仮目標点を求める。
【００７６】
前記ステップＳ３４において、仮計測目標点Ｐ１がピックアップできていないと判断された場合には、次に、ｉが検索回数ｎまで達したか否かを判断し（Ｓ３７）、達していなければ、ステップＳ３２へ戻りステップＳ３２〜３７の処理を繰り返し実行する。
【００７７】
一方、ステップＳ３７において、ｉが検索回数ｎまで達したと判断された場合には、この時点で、＋方向にも−方向にも、ともにｎ回検索してもボルトを見つけ出せなかったということであるので、計測不能を出力して（Ｓ１００（図３参照））、処理を終了する。
【００７８】
以上によりボルトの探索動作は終了するので、ボルトが検出されていればステップＳ１０において仮目標点が求められているので、その座標を計測目標点とする補正を行って（Ｓ５１）、以後、この補正後の計測目標点に基づいて、従来と同様に３次元計測動作を行う。
【００７９】
すなわち、まずボルト取り付け面３点のピックアップ（Ｓ５２）を行う。このとき、ピックアップするためにプローブを移動させる座標は、先に求めた仮目標点（ｋｘ２、ｋｙ２、０）＝計測目標点であるから、この計測目標点（ｋｘ２、ｋｙ２、０）を中心として、（ｋｘ２−ｄｉａ／２−ｄｓｔ、ｋｙ２、０）、（ｋｘ２、ｋｙ２−ｄｉａ／２−ｄｓｔ、０）、（ｋｘ２、ｋｙ２＋ｄｉａ／２＋ｄｓｔ、０）の３点となる（図５参照）。
【００８０】
この計測により、計測されたボルト取り付け面３点の値から、これら３点の計測位置を含む面が計測面となる。
【００８１】
続いて、ボルト中心位置８点のピックアップ（Ｓ５３）を行う。ここでは、図６に示したように、ボルトピックアップ高さｈの位置で、ｋａｋｕによって規定された角度内に４点、ｘ軸を対象として合計８点を計測する。このときの計測位置は、先に計測して求めた基準点座標（ｋｘ１、ｋｙ１、ｋｚ１）から計測面ベクトル方向にボルトピックアップ高さｈだけ移動した位置である。
【００８２】
続いて、ボルト中心位置８点の計測結果からボルト中心座標を計算する（Ｓ５４）。
【００８３】
そして、求められたボルト中心位置座標を計測面上へ投影するとともに、その投影座標を、元の３次元座標系における座標値に変換して（Ｓ５５）、ボルト取り付け面上における計測位置座標を出力し（Ｓ５６）、処理を終了する。
【００８４】
上記計測処理終了後は、次に計測する被計測物があれば、その場所へ移動して、上述したステップＳ１からの処理を実行することになる。なお、複数の計測点がる場合には、前記ステップＳ１において、複数の計測点ごとに計測動作パラメータをセットしておき、また、サーチ条件として、ステップＳ２において入力されたサーチ条件パラメータを複数の計測転移対して同じものを低要することとして、以降、各計測点に対してステップＳ３〜Ｓ５６またはＳ１００までの処理を実行し、複数の計測点に対する計測を寸時実行するようにしてもよい。
【００８５】
以上説明したように、本実施の形態によれば、あらかじめ決められた基準となる計測基準座標をもとに、その周辺を入力されたパラメータに基づいて検索するので、被計測物の設置位置にずれが生じた場合でも、自動的に確実に被計測物の３次元計測を行うことが可能となる。
【００８６】
なお、上述した本実施の形態による３次元計測の処理手順は、たとえば、３次元計測機の動作を制御するコントローラ用に、上記計測手順に従って作成されたの３次元計測プログラムとして提供されるものであり、コントローラは、３次元計測機を動作させるための専用のコンピュータ、または、パソコンやワークステーションなどと称されている汎用のコンピュータである。
【００８７】
したがって、上記計測手順において、各パラメータや座標値は、コンピュータ内の記憶装置、たとえば内部記憶装置である半導体メモリ、またはハードディスクやその他の外部記憶装置に記憶され、上記手順に従って、これら記憶装置から読み込まれ、計測結果の座標値などは、コントローラに設けられている出力装置から出力されるものである。
【００８８】
また、この３次元計測プログラムは、様々なコンピュータ読み取り可能な記憶媒体、たとえば磁気記憶媒体や、光記憶媒体、光磁気記憶媒体などに記憶されて提供される。また、この３次元計測プログラムはネットワークを介して接続されているサーバコンピュータ内に記憶され、３次元計測機を制御するコンピュータにネットワークを介して提供されてもよい。
【図面の簡単な説明】
【図１】  本発明を適用した３次元自動計測方法の処理手順を示すフローチャートである。
【図２】  図１に続く、３次元自動計測方法の処理手順を示すフローチャートである。
【図３】  図２に続く、３次元自動計測方法の処理手順を示すフローチャートである。
【図４】  被計測物における計測部位を示す図面である。
【図５】  被計測物における面計測位置を説明するための図面である。
【図６】  被計測物におけるボルト面の計測を説明するための図面である。
【図７】  被計測物におけるサーチ（検索）範囲を説明するための図面である。
【図８】  ボルト中心位置の求めからを説明するための図面である。
【図９】  接触式センサを示す図面である。
【図１０】  従来の３次元計測方法を説明するための図面である。
【図１１】  従来の３次元計測の手順を示すフローチャートである。
【図１２】  従来の３次元計測方法における問題点を説明するための図面である。
【符号の説明】
１０１…プローブ
１０２…プローブチップ
１０３…ロボットハンド
【図１】
0003780879.tif 000002
【図２】
0003780879.tif 000003
【図３】
0003780879.tif 000004
【図４】
0003780879.tif 000005
【図５】
0003780879.tif 000006
【図６】
0003780879.tif 000007
【図７】
0003780879.tif 000008
【図８】
0003780879.tif 000009
【図９】
0003780879.tif 000010
【図１０】
0003780879.tif 000011
【図１１】
0003780879.tif 000012
【図１２】
0003780879.tif 000013