(57)【特許請求の範囲】
【請求項１】
計測用の光を投光する投光部と、投光部からの光に対する計測対象物からの反射光を受光する受光部と、前記受光部の受光状態に基づき前記計測対象物の変位を計測して計測結果を出力する計測処理部とを具備するセンサであって、
前記計測処理部は、
投光部および受光部の動作期間を決める露光時間、投光部における発光強度、および受光部における受光ゲインのうちの少なくとも１つを、前記受光部により得られた受光量の増減に応じて変更する感度調整手段と、
前記感度調整手段による処理が行われたことに応じて、この処理後の露光時間と発光強度と受光ゲインとを用いた演算によりこれら三者により調整される感度の高低を示す評価値を算出し、この評価値をあらかじめ定められた上限値および下限値と比較することにより、当該評価値が許容範囲に入るか否かを判別する判別手段と、
この判別手段により判別対象の評価値が許容範囲に入っていると判別されたときは前記計測結果が出力され、判別手段により判別対象の評価値が許容範囲を逸脱していると判別されたときは前記計測結果が出力されないようにする制御手段とを具備する、光学式変位センサ。
【請求項２】
前記計測処理部は、投光部および受光部をならびに調整手段を繰り返し動かして、受光量、露光時間、発光強度、および受光ゲインの各値を安定させる処理と、安定した露光時間と発光強度と受光ゲインとを用いた演算により前記評価値の基準値を算出する処理と、算出された基準値に基づき前記許容範囲を表す上限値および下限値を決定する処理とを、実行する設定手段を、さらに具備する請求項１に記載された光学式変位センサ。
【請求項３】
前記設定手段は、前記上限値および下限値を決定する処理において、前記演算により求めた基準値に１より大きい所定の係数αを乗算する演算により前記許容範囲の上限値を求めると共に、前記基準値に前記係数αの逆数１／αを乗算する演算により前記許容範囲の下限値を求める、請求項２に記載された光学式変位センサ。
【請求項４】
前記係数αの値を入力する入力手段をさらに具備する請求項３に記載された光学式変位センサ。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、検出用の光を投光する投光部と、投光部からの光に対する計測対象物からの反射光を受光する受光部と、受光部の受光状態に基づき計測対象物の変位を計測してその計測結果を出力する計測処理部とを備える光学式変位センサに関する。
【背景技術】
【０００２】
三角測距の原理に基づく光学式変位センサは、レーザダイオード等の発光素子を含む投光部と、１次元または２次元の受光素子を含む受光部とを備え、投光部からの光に対する計測対象物からの反射光を受光部が受光することにより生成される受光量分布データのピークの座標を検出し、この座標を変位量に換算して出力する。
【０００３】
このほか、光学式変位センサには、投光から受光までの時間の長さを用いるＴＯＦ（Time of Fright）方式を適用したセンサ、投光した光と受光した反射光との位相差を利用する位相差測距方式を適用したセンサ、ＰＮ符号により強度変調を施した光を投光し、その光と反射光との相関演算結果を用いた計測を行うＰＮコード測距方式を適用したセンサなどがある。
【０００４】
いずれのタイプの光学式変位センサでも、安定した計測を行うには、計測対象物の反射率や反射の状態が変動しても、一定レベル以上の受光量が維持できるように、感度をこまめに調整する必要がある。この点に関して、たとえば特許文献１には、三角測距式の光学式変位センサにおいて、反射光による受光量が常に飽和するようにシャッタの開時間（露光時間）などを調整し、受光量データ中の飽和画素群の中心の位置を受光量のピーク位置として検出し、そのピーク位置を高さデータに換算することが記載されている。
【０００５】
上記の変位を計測する原理を応用して、あらかじめ定めた基準の距離に物体があるか否かを判別するセンサもある。たとえば、特許文献２には、少なくとも一方向に配列された複数の受光素子によって、投光部からの光に対する物体からの反射光を受光し、各受光素子における受光量分布の中のピークの位置をあらかじめ定めた基準位置と照合することにより、物体の有無を判別することが記載されている。また、この特許文献２には、受光量分布から複数のピークが検出されたことをもって、多重反射が生じていると判別することが記載されている。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開２００６−１３３０５１号公報
【特許文献２】特開２００７−２２１４９１号公報
【発明の概要】
【発明が解決しようとする課題】
【０００７】
上記いずれのタイプのセンサでも、計測の精度を確保するには、センサの計測対象エリアからの反射光のみが受光部に導かれるのが望ましいが、センサの使用状態や周囲の環境によって、検出エリア外からの光が受光部に入射し、誤った処理が行われるおそれがある。その例を、以下、図６〜図８を参照して説明する。
【０００８】
図６は、三角測距の原理を利用した光学式変位センサを利用したアプリケーションの例を示す。このアプリケーションでは、パレット２０に搭載され、かつ２列に配列されて下方に移動する板状のワークを所定の高さ位置で検出することを目的とするもので、各列の検出対象位置の側方にそれぞれセンサ１，１が配備されている。各列ともに、厚みが異なる２種類のワークＷ１，Ｗ２がランダムな順序で搬送されるので、側方のセンサ１によって検出対象位置を通過する物体（ワークＷ１，Ｗ２およびパレット２０）の端面とセンサ１との間の距離を計測し、ワークに対応する計測値が得られている間の時間の長さに基づき、ワークＷ１，Ｗ２のいずれが通過したかを判別する。
【０００９】
図７および図８は、上記のアプリケーションにおいて生じる誤検出の例を示す。図７の例では、図中の右側の列でワークの欠落が生じ、センサ１から斜め上方向に進行した光が欠落箇所の上方のパレット２０、隣の列のワークＷ２，欠落箇所の下方のワークＷ１などで反射した後に、これらの反射を経た光（迷光）がセンサ１に入光している。
【００１０】
図７の例では、ワークＷ１，Ｗ２の配列は一列であり、このワークの列を挟んでセンサ１に対向する位置に、鏡面反射性の高い部材（鏡体）３０が置かれている。この例では、ワークＷ１，Ｗ２の配列に欠落が生じ、センサ１から出てワークＷの欠落箇所を通過した光が鏡体３０の表面で正反射し、その正反射光がセンサ１に入光している。
【００１１】
なお、図７，図８の例では、ワークＷ１，Ｗ２の配列に欠落が出た場合を想定しているが、ワークが欠落していない場合でも、検出対象位置にワークが到達していない状態下で同様のノイズ光がセンサに入光する可能性がある。また、周囲で突発的に発生した光がセンサに入射する場合もある。検出の場所が窓に近い場合には、時間帯によっては窓から差し込んだ日光がセンサに入射する可能性もある。
【００１２】
これらのノイズ光がセンサ１に入光すると、センサ１からは、計測対象物とは異なる物体に起因する距離データが出力される。この距離データがワークＷ１，Ｗ２までの距離を示すものでない場合には、誤動作が生じるおそれはないが、ノイズ光がワークＷ１，Ｗ２までの距離を示す位置の付近に入射した場合には、ワークＷ１，Ｗ２のいずれかに相当する計測値が出力されて、誤った処理が行われるおそれがある。
【００１３】
特許文献２には、図６〜８の例に類似するアプリケーションが示されているが、このアプリケーションでは、受光量分布から複数のピークが生じた場合に、それらのピークは多重反射を反映したものであり、ワークの端面は検出されていないと判断する（特許文献２の段落００７３〜００７４，図１９を参照。）。しかし、このような処理では、複数のピークが生じることなく、ワークＷ１，Ｗ２までの距離を示す位置付近にノイズ光が入射した場合には、誤検出が生じてしまう。
【００１４】
物体の変位を計測する目的で使用するセンサにおいて上記のようなノイズ光を受光した場合にも、同様に、ノイズ光に対する誤った計測が実施されると、計測精度を確保できない状態になる。
【００１５】
本発明は上記の問題に着目し、受光部にノイズ光が入射した場合でも、そのノイズ光による誤った計測が行われることがないようにして、計測の精度を確保することを課題とする。
【課題を解決するための手段】
【００１６】
本発明は、計測用の光を投光する投光部と、投光部からの光に対する計測対象物からの反射光を受光する受光部と、受光部の受光状態に基づき計測対象物の変位を計測して計測結果を出力する計測処理部とを具備する光学式センサに適用される。本発明による計測処理部は、受光部における受光量の変化の度合いを示すパラメータまたは受光量の増減に応じて調整される感度を示すパラメータの値があらかじめ定めた許容範囲に入るか否かを判別する判別手段と、この判別手段により判別対象のパラメータの値が許容範囲に入っていると判別されたときは計測結果が出力され、判別手段により判別対象のパラメータの値が許容範囲を逸脱していると判別されたときは計測結果が出力されないようにする制御手段とを具備する。
【００１７】
この種のセンサにおいては、一般に、計測を開始するに先立ち、計測対象物からの反射光を計測に適した強度で受光できるように感度を調整し、処理中も、適宜、受光量に基づいて感度を調整する。したがって、図６の例のように、規格化された物体（ワークＷ１，Ｗ２およびパレット２０）を検出対象として計測を行う場合に、これらの物体からの反射光を正しく受光する状態が続いている間の受光量に大きな変化が生じるとは考えにくい。
【００１８】
一方、図７の例のように、様々な場所を廻ってセンサに入るノイズ光は、ワークＷ１，Ｗ２やパレット２０からの反射光より弱い光になると考えられる。また、図８の例のような鏡体３００からの正反射光は、ワークＷ１，Ｗ２やパレット２０からの反射光よりも強い光になると考えられる。
【００１９】
このように、センサの計測エリアからの反射光の強度と計測エリア外からのノイズ光の強度との間には、大きな差が生じる可能性が高い。この点に着目して、本発明では、受光量の変化の度合いを示すパラメータ（たとえば、一次元に配列された受光素子により得た受光量分布のピークの値の変化量）、または受光量の増減に応じて調整される感度を示すパラメータの値が許容範囲に入っているときは計測結果が出力され、上記パラメータの値が許容範囲を逸脱しているときは計測結果が出力されないように制御する。そうすると、ノイズ光が受光部に入射した場合には、その受光量や受光量に基づき調整される感度に大きな変化が生じるので、ノイズ光による計測データが出力されるのを防ぐことができる。
【００２０】
上記のセンサでは、たとえば、判別手段によってパラメータの値が許容範囲に入っていると判別されたときに計測を行って、得られた計測データを出力するように構成される。または、投光・受光の都度、計測を行うが、判別手段によりパラメータの値が許容範囲を逸脱していると判別されたときに、計測結果の出力を中止するようにしてもよい。
【００２１】
上記のセンサの一実施形態では、計測処理部は、投光部および受光部の動作期間を決める露光時間、投光部における発光強度、および受光部における受光ゲインのうちの少なくとも１つを、受光部により得られた受光量の増減に応じて変更する感度調整手段をさらに備える。また、判別手段は、感度調整手段による処理が行われたことに応じて、この処理後の露光時間と発光強度と受光ゲインとを用いた演算によりこれら三者により調整される感度の高低を示す評価値を算出し、算出された評価値をあらかじめ定められた上限値および下限値と比較することにより、当該評価値が許容範囲に入るか否かを判別する。
【００２２】
上記の実施形態によれば、露光時間、発光強度、受光ゲインという３種類の感度パラメータのうちの１以上が変更される都度、その変更後の各感度パラメータにより調整される感度の高低を示す評価値が算出され、この評価値が許容範囲に入るか否かの判別が行われる。したがって、たとえば、あらかじめ、検出エリアからの反射光を受光している状態下で調整される感度に対する評価値のばらつきを求め、このばらつきの範囲が許容範囲に含まれるように上限値および下限値を定めれば、ノイズ光の受光に伴い調整された感度の評価値が許容範囲外であると高い確度で判別されるので、誤った計測結果が出力されるのを防ぐことができる。
【００２３】
上記の実施形態では、計測処理部に、投光部および受光部ならびに調整手段を繰り返し動かして、受光量、露光時間、発光強度、および受光ゲインの各値を安定させる処理と、安定した露光時間と発光強度と受光ゲインとを用いた演算により上記評価値の基準値を算出する処理と、算出された基準値に基づき許容範囲を表す上限値および下限値を決定する処理とを、実行する設定手段を設けることができる。この設定手段によれば、計測処理に先立ち、計測に適した受光量が得られるように感度を調整した後に、その調整後の感度の評価値を基準にして、許容範囲の上限値および下限値を決めることができる。
【００２４】
設定手段の一実施形態では、演算により求めた基準値に１より大きい所定の係数αを乗算する演算により許容範囲の上限値を求めると共に、基準値に係数αの逆数１／αを乗算する演算により許容範囲の下限値を求めることができる。またこの係数αの値を入力する入力手段を設けることにより、誤った処理が行われない状態になるまで許容範囲を調整したり、計測対象物の変更に応じて許容範囲も変更することが可能になる。
【００２５】
上記センサの他の実施形態では、判別手段は、受光量の変化の度合いを示すパラメータまたは受光量の増減に応じて調整される感度を示すパラメータの値を、許容範囲を表す上限値および下限値と比較することにより、当該パラメータの値が許容範囲に入るか否かを判別する。さらに、この実施形態のセンサは、上限値および下限値を設定するためのデータを入力する入力手段と、入力されたデータに基づく上限値および下限値を判別手段に設定する設定手段とを具備する。
【００２６】
計測対象物からの反射光を受光している場合に生じる受光量の変動範囲は、対象物の材質、計測のベース面（変位が０の面）とセンサとの間の距離など、センサの使用環境上の様々な要素に応じて変動し、それに応じて感度調整の状態も変動する。上記の実施形態では、判別手段が使用する許容範囲を決める上限値および下限値を、入力に応じて設定することができるので、センサの利便性や汎用性を高めることができる。
【発明の効果】
【００２７】
本発明によれば、計測対象物からの反射光以外のノイズ光が受光部に入射した場合でも、そのノイズ光に起因する計測結果が出力されるのを防ぐことができるので、計測を安定して行うことが可能になる。
【図面の簡単な説明】
【００２８】
【図１】光学式変位センサの構成例を示すブロック図である。
【図２】センサの使用例と検出の原理とを示す模式図である。
【図３】感度パラメータの導出処理に関するフローチャートである。
【図４】１サイクル分の計測処理に関するフローチャートである。
【図５】計測処理の前に実施される設定処理に関するフローチャートである。
【図６】光学式変位センサが導入されるアプリケーションの例を示す図である。
【図７】上記のアプリケーションでノイズ光が生じる例を示す図である。
【図８】ノイズ光が生じる他の例を示す図である。
【発明を実施するための形態】
【００２９】
図１は、本発明が適用される光学式変位センサの電気構成を示す。
この実施例の光学式変位センサ１（以下、単に「変位センサ１」または「センサ１」という。）は、発光素子（レーザダイオード）１１を含む投光部１０１や、一次元の受光素子１２（この実施例ではＣＭＯＳを使用する。）を含む受光部１０２を有する。投光部１０１には、発光素子１１のほか、投光制御回路１３が含まれる。受光部１０２には、撮像素子１２のほか、この撮像素子１２により生成された画像信号を処理するための信号処理回路１４やＡ／Ｄ変換回路１５が設けられる。
【００３０】
このほか、センサ１には、ＣＰＵ１０，メモリ１６，表示部１７，操作部１８，入出力インターフェース１９などが設けられる。投光部１０１および受光部１０２は、図２に示すセンサヘッド１００に収容され、その他の構成は、「アンプ部」と呼ばれる補助筐体（図示せず。）に設けられる。ただし、センサの構成はこれに限らず、たとえば、全ての構成を１つの筐体に配備することも可能である。
【００３１】
ＣＰＵ１０は、メモリ１６に格納されたプログラムに基づき、計測処理や感度調整に関わる処理を実行する。計測結果は、表示部１７に表示されるほか、入出力インターフェース１９を介して外部に出力される。操作部１８は、検出処理に先立つ種々の設定を行う場合に用いられる。
【００３２】
図２は、センサヘッド１００の構成および計測処理の原理を模式的に示す。
この例のセンサヘッド１００は、発光素子１１の光軸をワークＷの経路Ｌの検出対象位置に合わせた状態にして配備されるが、上下動するワークを計測対象とする場合には、図６に示したように、ワークの経路の側方にセンサヘッド１００を配備して、ワークの端面とセンサヘッド１００との距離を計測してもよい。
【００３３】
発光素子１１から出射されたレーザ光は、投光レンズ１１１を介して出射された後に検出対象の物体で反射し、受光用レンズ１２２を介して受光素子１２に入射する。よって、受光素子１２により生成される一次元の反射光像が示す受光量分布には、反射光の入射位置に対応する箇所にピークが現れる。このピークの位置は、レーザ光を反射した物体の表面の高さに応じて変動する。
【００３４】
上記の原理に基づき、ＣＰＵ１０は、投光部１０１および受光部１０２を一定の周期で動かしながら、この周期に合わせて、受光部１０２により生成される受光量分布パターンに現れた最大ピークの重心の座標を計測し、メモリ１６に登録されている変換テーブルを用いてこの座標を距離データに変換する。また、計測を安定して実施できるように、投光および受光の都度、受光量の最大ピークの増減に応じて感度を調整する。
なお、最大ピークの重心の座標から変換される距離データは、投光部からのレーザ光を当該重心の位置に向けて反射させた物体とセンサヘッド１００との距離を表すもので、変換テーブルには、受光素子１２の各座標と距離データとの関係が登録されている。ただし、変換の対象は距離に限らず、レーザ光を反射させた物体の高さが導出されるようにしてもよい。
【００３５】
上記の計測処理によれば、たとえば計測対象エリアにワークＷが入っていない状態と計測対象エリアにワークＷが入っている状態とを見分けることができる。また、図２の例のように計測対象のワークＷに段差がある場合には、その段部を挟む２つの面の高低を識別することもできる。
【００３６】
しかしながら、受光量分布パターンに現れるピークの全てが計測対象エリアからの反射光により生じるとは限らず、周囲で生じたノイズ光の入射によってピークが生じる場合もある。
【００３７】
この点に鑑み、この実施例では、受光量パターン中のピークの位置を検出して計測を行う前に、そのピークに基づき調整される感度を示す評価値を求め、この評価値があらかじめ定めた許容範囲に入っている場合には計測処理を行って距離データを出力する。一方、感度の評価値が許容範囲から逸脱している場合には、距離データを出力せずにエラー出力を行うようにしている。
【００３８】
ここで、この実施例で実施される感度調整について説明する。
この実施例では、露光時間、投光されるレーザ光の強度（以下、「投光強度」という。）、受光量信号の増幅率（以下、「受光ゲイン」という。）の３種類のパラメータを調整することによって、受光量があらかじめ定めた目標値付近の値になるように感度を調整する。また、計測の開始に先立ち、ワークＷを計測対象エリアに配置した状態で投光および受光を繰り返し、ワークＷからの反射光によるピークの受光量が十分な強度になるように各感度パラメータを調整する。この処理は後記する「チューニング」処理において実行される。
チューニング処理の後、計測処理が開始された後も、毎回の受光量分布中の最大ピークのゆらぎに応じて感度パラメータが調整される。
【００３９】
なお、この実施例では、投光部１０１の投光期間と受光部１０２の受光期間とを一致させて、これらの期間の長さを露光時間とするが、各期間は必ずしも一致させる必要はない。たとえば投光期間を受光期間より早く開始し、受光期間を投光期間より遅く終了しても良い。その場合には、投光期間が開始されてから受光期間が終了するまでの時間長さが露光時間となる。
【００４０】
投光強度の調整に関しては、最大値を１倍として、所定の比率で段階的に投光強度を小さくする。また受光ゲインに関しては、最小のゲインを１倍として、所定の比率で段階的にゲインを上げる。この実施例では、投光ゲインおよび受光ゲインともに、調整用の制御データを倍率で表すようにしている。
【００４１】
感度の調整は、原則として露光時間の調整により行われる。具体的には、受光量分布中の最大受光量を指標にして、最大受光量が減少した場合には、その減少の度合いに応じて露光時間を長くし、最大受光量が上昇した場合には、その上昇率に応じて露光時間を短くする。ただし、この露光時間の調整は、投光・受光に必要な最小限度の時間から処理の目的等に応じた最大時間までの範囲で行う必要がある。以下、この調整範囲の上限値を「最大露光時間」と呼び、下限値を「最小露光時間」と呼ぶ。この実施例では、露光時間を最小露光時間に設定しても最大受光量が飽和する場合には、投光強度や受光ゲインを下げ、露光時間を最大露光時間に設定しても最大受光量が十分な強度にならない場合には、投光強度や受光ゲインを上げる。
【００４２】
図３は、感度調整のための３種類のパラメータを導出する場合の具体的な処理の手順を示す。この処理は、次の図４に示す検出処理に組み込まれ、繰り返し実行される。また、この実施例では、現在の処理サイクルで検出した最大受光量Ｐ（ｔ）とあらかじめ定めた受光量の目標値との比率に基づき感度パラメータを調整し、その調整の結果を、２段階後の検出処理に適用する。
【００４３】
以下、露光時間をＳＴ，投光強度をＤ，受光ゲインをＧとして、フローチャートを参照しながら説明する。なお、各感度パラメータに関しては、現在の処理サイクルで適用された値（前々回の処理サイクルで求めた値）をＳＴ（ｔ），Ｄ（ｔ），Ｇ（ｔ）とし、２段階後の処理サイクルに適用される値をＳＴ（ｔ＋２），Ｄ（ｔ＋２），Ｇ（ｔ＋２）とする。
【００４４】
まずステップＳ１０１において、ＣＰＵ１０は、受光量の目標値Ｐ０を現時点での最大受光量Ｐ（ｔ）により除算した値Ｐ０／Ｐ（ｔ）を、現在の処理サイクルに適用された露光時間ＳＴ（ｔ）に掛ける演算によって、２サイクル先の露光時間ＳＴ（ｔ＋２）を算出する。
【００４５】
次に、ＣＰＵ１０は、上記の演算により求めた露光時間ＳＴ（ｔ＋２）を前出の最小露光時間および最大露光時間と比較する。ＳＴ（ｔ＋２）が最小露光時間から最大露光時間までの範囲に入る場合（ステップＳ１０２，Ｓ１０３がともに「ＮＯ」）には、このＳＴ（ｔ＋２）の値を確定すると共に、２サイクル先の投光強度Ｄ（ｔ＋２）および受光ゲインＧ（ｔ＋２）にそれぞれＤ（ｔ），Ｇ（ｔ）をセットする（ステップＳ１０８）。
すなわち、露光時間はピーク受光量Ｐ（ｔ）の増減の割合に応じて調整されるが、投光強度や受光ゲインの値は２サイクル前と同じ値に設定される。
【００４６】
一方、露光時間ＳＴ（ｔ＋２）が最小露光時間より小さい場合（ステップＳ１０２が「ＹＥＳ」）には、ＣＰＵ１０は、ＳＴ（ｔ＋２）の値を最小露光時間に変更する（ステップＳ１０４）。また、投光強度Ｄ（ｔ＋２）や受光ゲインＧ（ｔ＋２）を、変更前のＳＴ（ｔ＋２）の最小露光時間に対する逸脱の度合いに応じて、現在値より低い倍率に設定する（ステップＳ１０５）。
【００４７】
露光時間ＳＴ（ｔ＋２）が最大露光時間より大きい場合（ステップＳ１０２が「ＮＯ」でステップＳ１０３が「ＹＥＳ」）には、ＣＰＵ１０は、ＳＴ（ｔ＋２）の値を最大露光時間に変更する（ステップＳ１０６）。また、投光強度Ｄ（ｔ＋２）や受光ゲインＧ（ｔ＋２）を、変更前のＳＴ（ｔ＋２）の最大露光時間に対する逸脱の度合いに応じて、現在値より高い倍率に設定する（ステップＳ１０７）。
【００４８】
上記の処理によれば、最大受光量Ｐ（ｔ）が大幅に上昇した場合には、露光時間ＳＴ（ｔ＋２）が最小露光時間まで短縮されると共に、投光強度や受光ゲインが引き下げられる。一方、最大受光量Ｐ（ｔ）が大幅に低下した場合には、露光時間ＳＴ（ｔ＋２）が最大露光時間まで引き上げられると共に、投光強度や受光ゲインも引き上げられる。いずれの場合にも、２サイクル後に再びＰ（ｔ）と同じ強度の光を受光した場合には、その受光量が目標値Ｐ０になるように感度が調整される。
最大受光量Ｐ（ｔ）の上昇幅または減少幅が大きくなるほど、投光強度や受光ゲインの倍率の変動幅も大きくなる。
【００４９】
つぎに図４を参照して、１サイクル分の計測処理の手順を説明する。
ステップＳ１で、ＣＰＵ１０は、本サイクルに適用される感度パラメータＳＴ（ｔ），Ｄ（ｔ），Ｇ（ｔ）をメモリ１６から読み出し、これらのパラメータにより調整された感度の下で投光部１０１および受光部１０２を動作させる（ステップＳ１，Ｓ２）。
【００５０】
つぎに、ＣＰＵ１０は、受光素子１２により生成された反射光像を入力し、この反射光像が示す受光量分布の中から、あらかじめ定めた値以上の振幅（ごく小さな振幅とする。）を持つピークを検出する（ステップＳ３）。ピークが検出されると（ステップＳ４が「ＹＥＳ」）、検出されたピークのうちの最大のピークを対象として、そのピーク部分の最大受光量Ｐ（ｔ）を取得する（ステップＳ５）。
【００５１】
ステップＳ６は、先の図３に示した処理（ステップＳ１０１〜Ｓ１０８）をまとめたものである。この処理により、ステップＳ５で取得した最大受光量Ｐ（ｔ）および受光量の目標値Ｐ０の比率などに基づき、２サイクル先の各感度パラメータＳＴ（ｔ＋２），Ｄ（ｔ＋２），Ｇ（ｔ＋２）が導出される。
【００５２】
ステップＳ７では、上記の処理により求めた各感度パラメータＳＴ（ｔ＋２），Ｄ（ｔ＋２），Ｇ（ｔ＋２）を掛け合わせる演算により、これらの感度パラメータにより調整される感度の高低を表す評価値Ｒを算出する。ステップＳ８ではこの評価値Ｒをあらかじめ定めた下限値ＲＡおよび上限値ＲＢと比較する。評価値Ｒが下限値ＲＡから上限値ＲＢまでの範囲に含まれる場合（ステップＳ８が「ＹＥＳ」）には、ＣＰＵ１０は、最大受光量Ｐ（ｔ）の出現位置を含む最大ピークの重心の座標ｇ（ｔ）を算出する（ステップＳ９）。さらに、先に述べた変換テーブルを用いて座標ｇ（ｔ）を距離データに換算し（ステップＳ１０）、この距離データを出力する（ステップＳ１１）。
【００５３】
一方、上記の評価値Ｒが下限値ＲＡより小さいか、評価値Ｒが上限値ＲＢより大きい場合（ステップＳ８が「ＮＯ」）には、ステップＳ９，Ｓ１０，Ｓ１１を行うことなく、エラー出力（ステップＳ１２）を実行する。また何らかの原因で投光部１０１からの光に対する反射光を受光できなかった場合には、ステップＳ３の処理でピークが検出されないため、ステップＳ４の判定が「ＮＯ」となり、同様にステップＳ１２に進んでエラー出力を実行する。
【００５４】
この実施例では、ワークＷを安定して計測するために、事前にワークＷからの反射光による受光量のピークが最適な強度になるように感度パラメータを調整してから図４の処理を開始する。よって、ステップＳ３やＳ５の処理により抽出された受光量の最大ピークが、計測対象エリア内の物体（ワークＷまたはその支持面）からの反射光により生成されている場合は、その反射を生じさせる物体の種類が替わった直後を除き、最大受光量Ｐ（ｔ）に大きな変化が生じることはない。また反射を生じさせる物体が替わった直後の変動の幅も比較的小さな範囲に留めることができる。したがって、計測対象エリアからの光により受光量の最大ピークが形成されている場合には、殆どの場合は露光時間ＳＴの調整のみで対応でき、投光強度や受光ゲインの調整が必要になった場合でも、小幅の調整で対応することができる。
【００５５】
しかし、ワークＷからの反射光が入光せずに、ノイズ光が入光した場合には、最大ピークに大きな変化が生じる可能性が高くなる。たとえば、先に述べた図７の例のように、センサ１の主要な光路から離れて進行した弱い光が複数の場所で反射してセンサ１に戻る場合には、そのノイズ光によるピークの受光量Ｐ（ｔ）はかなり低くなり、目標値Ｐ０とＰ（ｔ）の比率により算出された露光時間ＳＴ（ｔ＋２）は最大露光時間を大幅に上回る状態となる。このため、露光時間ＳＴ（ｔ＋２）は最大露光時間に変更され、投光強度Ｄや受光ゲインＧが大幅に高められる。よって、各感度パラメータの積算値による評価値Ｒも大きな値になる。
【００５６】
また図８の例のように、強度の高い正反射光が入光すると、最大ピークが飽和する可能性があるから、その飽和レベルをＰ（ｔ）として導出される露光時間ＳＴ（ｔ＋２）は、最小露光時間を大幅に下回る状態となる。このため、露光時間ＳＴ（ｔ＋２）は最小露光時間に変更され、投光強度Ｄや受光ゲインＧが大幅に引き下げられる。よって評価値Ｒも小さな値になる。
【００５７】
評価値Ｒの許容範囲については、たとえば、計測対象エリアからの反射光により受光量の最大ピークが形成されている状態下で生じる各感度パラメータのばらつきに基づいて評価値Ｒのばらつきの範囲を求め、この範囲が許容範囲に含まれるように上記の下限値ＲＡおよび上限値ＲＢを定めてメモリ１６に登録すればよい。登録された下限値ＲＡおよび上限値ＲＢを用いて図４に示した計測処理を実行すれば、ノイズ光による受光量が最大受光量Ｐ（ｔ）として検出され、それに基づき調整された感度パラメータが大きな変化を示したとしても、ステップＳ８の判定が「ＮＯ」となるため、ノイズ光による誤った距離データが算出されて出力されるおそれがない。よって、精度の良い計測処理を安定して実施することが可能になる。
【００５８】
上記のとおり、この実施例では、投光および受光を繰り返しながら、毎回のサイクルにおける最大受光量と目標値との比率に基づいて２サイクル先の感度パラメータを導出すると共に、導出された感度パラメータの適否を判別するための評価値を求め、この評価値が許容範囲に入るか否かを判別した。ただし、２サイクル先の感度パラメータを導出したのは、検出処理のサイクルが比較的短い場合でも、感度の調整を安定して実行するための措置であり、ＣＰＵ１０の演算速度が対応できるのであれば、次のサイクルの感度パラメータを導出し、それらの感度パラメータによる評価値Ｒが許容範囲に入るか否かを判別してもよい。
【００５９】
また図４に示した処理では、露光時間の変化の度合いが下限値ＲＡおよび上限値ＲＢが示す許容範囲から逸脱した場合には、計測処理が実施されないようにしているが、これに限らず、計測処理を常に実行し、評価値Ｒが許容範囲から逸脱した場合に計測データの出力を中止するようにしてもよい。
【００６０】
また、計測の精度を高めるために、１回の投光および受光により計測された距離データではなく、現時点から遡る複数のサイクルで求めた距離データの平均値を求める演算（移動平均演算）を行い、この平均値を計測結果として出力してもよい。この場合にも、投光および受光の都度、感度の調整および評価値Ｒの算出を行い、評価値Ｒが許容範囲を逸脱した場合には、移動平均演算を中止、または平均値の出力を中止するのが望ましい。また評価値Ｒが許容範囲を逸脱した後に許容範囲以内の値に復帰した場合には、移動平均演算や出力を再開しても良いが、評価値Ｒが許容範囲を逸脱していた間の距離データは、移動平均演算の対象から除外するのが望ましい。
【００６１】
つぎに、この実施例のセンサ１には、計測処理に先立ち、投光および受光を繰り返しながら計測に必要な条件を決定する機能が設けられる。この機能による処理が先に述べた「チューニング」処理である。
チューニング処理には、受光量の最大ピークが前出の目標値Ｐ０付近で安定するように感度を調整する処理が含まれる。したがって、ワークＷのモデルを計測対象エリアに配置した状態でチューニング処理を行うことにより、ワークＷからの反射光による受光量のピーク値を目標値Ｐ０付近の値にすることができる。
【００６２】
また、この実施例のセンサ１には、応答時間が異なる複数種の計測モードが設けられており、これらの計測モード毎に、デフォルトの計測条件が登録されている。なお、応答時間とは、ある時点における投光・受光に対しＣＰＵ１０が計測結果を出力するまでにかかる時間の長さであり、投光および受光を行う周期（以下、「測定周期」という。）、最大露光時間、前出の移動平均演算の回数などにより変動する。上記のチューニング処理で設定される感度パラメータも、計測モードによって異なるものになる。
【００６３】
さらに、この実施例では、チューニング処理により感度を調整した後に、その調整結果に基づいて評価値Ｒの下限値ＲＡおよび上限値ＲＢを求め、登録することができる。
図５は、このチューニング処理から下限値ＲＡおよび上限値ＲＢを登録する処理までをまとめたフローチャートである。以下、この図５を参照して各処理の流れを説明する。
【００６４】
チューニング処理を行うに先立ち、ユーザは、いずれかの計測モードを選択する操作を行うと共に、検出対象位置にワークＷを配置し、操作部１８によりチューニング処理の開始を指示する。これにより、図５に示す処理が開始される。
【００６５】
この処理の最初のステップＳ２１では、まず選択された計測モードに対応するデフォルトの計測条件を読み出す。この計測条件には、測定周期、最小露光時間、最大露光時間、投光強度および受光ゲインのそれぞれの最大倍率（選択された計測モードにおいて調整が認められる最大の倍率）が含まれる。
【００６６】
ステップＳ２１では、上記デフォルトの計測条件の範囲内で露光時間ＳＴ，投光強度Ｄ，受光ゲインＧを初期設定する。たとえば、露光時間ＳＴにデフォルトの最小露光時間を設定し、投光強度Ｄおよび受光ゲインＧを１倍に設定する。
【００６７】
この後は、最大受光量が目標値Ｐ０付近で安定すると共に、各感度パラメータＳＴ，Ｄ，Ｇがほぼ一定の値で安定する状態になるまで、投光・受光処理と感度調整処理（図３のステップＳ１０１〜Ｓ１０８と同様の処理）とを繰り返す（ステップＳ２１〜Ｓ２５）。
【００６８】
最大受光量および各感度パラメータが安定すると（ステップＳ２３，Ｓ２４が「ＹＥＳ」）、ステップＳ２６に進み、安定した露光時間ＳＴをＳＴ０、安定した投光強度ＤをＤ０、安定した受光ゲインＧをＧ０とし、これらの値に基づき計測条件を決定する。ここで決定される計測条件にも、測定周期、最小露光時間、最大露光時間、投光強度および受光ゲインの最大倍率が含まれる。さらに、前述した移動平均演算のデータ数（１以上の整数）も計測条件に加えられる。
【００６９】
なお、この実施例のセンサ１のメモリ１６には、計測モード毎に、経験的に導出された計測条件を露光時間の値により読み出せるように設定された計測条件テーブルが登録されている。ステップＳ２６では、安定した露光時間ＳＴ０によりこの計測条件テーブルを参照してＳＴ０にあてはまる計測条件を読み出し、これを計測のために登録する。
計測条件テーブルに登録されている計測条件は、いずれも、対応する計測モードのデフォルトの露光時間の許容範囲を逸脱しないように最小露光時間および最大露光時間が定められている。測定周期や投光強度もデフォルト値以下の値になるように設定される。一方、受光ゲインはデフォルト値を上回る場合もある。さらに、対応する計測モード内の応答時間や最大露光時間を満足する範囲で移動平均演算のデータ数（１以上の整数）が求められ、これも計測条件に加えられる。
【００７０】
ステップＳ２６により計測条件が決定すると、つぎのステップＳ２７では、安定した露光時間ＳＴ０，投光強度Ｄ０，受光ゲインＧ０を乗算する演算により、感度パラメータの評価値Ｒの基準値Ｒ０を算出する。この基準値Ｒ０は、好ましい感度を示すものとなる。
【００７１】
ステップＳ２８では、上記の基準値Ｒ０に所定の係数α（α＞０）を乗算する演算により、評価値Ｒの上限値ＲＢを算出する。また、基準値Ｒ０にαの逆数１／αを乗算する演算により、評価値Ｒの下限値ＲＡを算出する。そして、ステップＳ２９において、ＲＡおよびＲＢをメモリ１６に登録し、これをもって処理を終了する。
【００７２】
上記のチューニング処理後に選択された計測モードに移行すると、先の図４に示した手順による計測処理が開始される。チューニング処理により求められた下限値ＲＡおよび上限値ＲＢは、毎回の感度調整の評価値Ｒを判定する処理（ステップＳ８）に用いられる。
【００７３】
図５の処理によれば、ワークＷからの反射光を受光している状態下での感度調整が終了したときの感度パラメータＳＴ０，Ｄ０，Ｇ０による評価値Ｒを基準値Ｒ０として、この基準値Ｒ０より十分に大きい値を上限値ＲＢとし、基準値Ｒ０より十分に小さな値を下限値ＲＡとして、それぞれ登録することができる。よって、ワークＷからの反射光による受光量との差が極端に大きい受光量は下限値ＲＡおよび上限値ＲＢによる許容範囲から外れるようになる。
【００７４】
ＲＡ，ＲＢの導出に用いられるαの値は、必要に応じて変更することができる。たとえば、デフォルトのαの値によりＲＡおよびＲＢを求めた後に、試験的な計測を行い、誤動作が生じた場合には、αの値を変更してＲＡおよびＲＢを再度算出し、再び試験的な計測を実行する。これを繰り返すことによりノイズ光による誤計測が生じない状態になったとき、ＲＡおよびＲＢの値を確定することができる。
ただし、αやＲ０を用いることなく、チューニング処理後に、ＲＡおよびＲＢの値を変更しながら試験的な計測を行う方法によって、ＲＡおよびＲＢの値を確定してもよい。
【００７５】
αまたはＲＡおよびＲＢの値を変更しながら試験的な計測を行う場合には、変更する対象の数値を操作部１８により入力することができる。または、図１に示した入出力インターフェース１９を介してパーソナルコンピュータなどの外部機器を接続し、この外部機器から変更対象の数値を入力してもよい。この場合には、検出テスト中のセンサの検出信号を外部機器に入力して、検出エラーの有無を確認しながら、入力値を変更することも可能である。
【００７６】
また、移動するワークＷを計測する場合には、通常の計測と同じ条件でワークＷを移動させて感度調整を行いながら評価値Ｒを算出し、評価値Ｒのばらつき度合いに基づいてＲＡおよびＲＢの値を決めてもよい。このようにすれば、ワークＷの支持面からの光の入射に伴う感度の変化も考慮してＲＡおよびＲＢの値を決めることができる。また、ワークＷに段差や反射率が異なる箇所がある場合には、１つのワークＷが検出対象位置を通過する間の受光量のばらつきを考慮してＲＡおよびＲＢの値を決めることができる。
【００７７】
複数種のワークを検出対象とする場合には、ワークの種毎に、ＲＡおよびＲＢの値を求め、各値の組み合わせをワークの識別情報に紐付けてメモリ１５に登録しておくとよい。このようにすれば、計測対象のワークが変更される場合には、ユーザは、該当するワークの識別情報を選択することにより、対象のワークの計測に適した状態を設定することができる。
【００７８】
上記の実施例では、３種類の感度パラメータによる感度の高低を評価値Ｒというパラメータに置き換えて表し、この評価値Ｒが許容範囲に入るか否かをワークＷの計測結果を出力するか否かの判定条件としたが、評価値Ｒに代えて、毎回の最大受光量の変化の度合いを求め、この変化の度合いが許容範囲に入るか否かを判別してもよい。なお、最大受光量の変化の度合いを示すパラメータとして、たとえば、１サイクル前または２サイクル前の最大受光量に対する最新の最大受光量の比率や、目標値に対する最大受光量の比率を求めることができる。
また、このように受光量の変化の度合いによる判別を行う場合には、撮像素子１２とは別の受光素子を設け、この受光素子により計測された受光量を用いた判別処理を行ってもよい。
【００７９】
評価値Ｒや受光量の変化の度合いを判別しながらワークＷの有無を検出する機能は、必ずしも常時有効にする必要はない。たとえば、操作部１８により当該機能の有効と無効とを切り替える操作を受け付けて、無効にする操作が行われた場合には、図４のステップＳ７，Ｓ８を実行することなく、常にステップＳ９，Ｓ１０，Ｓ１１が実行されるようにしてもよい。この切り替えも、操作部１８による操作に応じて行うものに限らず、外部機器からの切替信号の入力に応じて行ってもよい。
【００８０】
また、通常は、上記の機能を無効にしておき、エラーの発生回数が許容値を超えたことなど、あらかじめ定めた条件が成立した場合に、上記機能を有効にしてもよい。また、時間帯によってノイズ光が入射する可能性がある場合（窓から差し込む日光など）には、内部のタイマに基づき、一定時間毎に、または定められた時刻になったときに、上記の機能を有効にし、さらに所定時間が経過したら、再び、機能を無効にしてもよい。
【００８１】
また、上記実施例のセンサ１は、三角測距の原理を応用したものであるが、センサの種類はこれに限らず、その他の方式により変位を計測するセンサにおいても、演算処理に使用される受光量の変化の度合い、または受光量の変化に応じて調整される感度パラメータの変化の度合いが許容範囲に入るかどうかを判別し、許容範囲に入ると判断された場合に演算を実行することにより、ノイズ光の影響を受けることなく、検出対象物を精度良く検出することが可能になる。
【符号の説明】
【００８２】
１    光学式センサ
１０１  投光部
１０２  受光部
１０  ＣＰＵ
１１  発光素子（レーザダイオード）
１２  撮像素子（ＣＭＯＳ）
１６  メモリ
１８  操作部
【図１】
0005903855.tif 000002
【図２】
0005903855.tif 000003
【図３】
0005903855.tif 000004
【図４】
0005903855.tif 000005
【図５】
0005903855.tif 000006
【図６】
0005903855.tif 000007
【図７】
0005903855.tif 000008
【図８】
0005903855.tif 000009