この明細書では、ステップ応答を行う変位センサにおいて、検出処理が行われてからその検出処理により検出された変位量を反映した出力(表示も含む。)が終了するまでの時間を「応答時間」と呼ぶ。計測データの移動平均演算が行われる場合には、検出処理が行われてから、その検出処理により検出された変位量を用いた複数回の移動平均演算の最後の演算結果が出力されるまでの時間が、応答時間に相当することになる。
高速のCPUが搭載された変位センサでは、計測処理や移動平均演算を極めて短い時間で行うことができるので、1回の検出処理に必要な処理時間と移動平均演算の対象となるデータ数との乗算により得られる時間を、応答時間にほぼ匹敵する時間と考えることができる。
移動する物体を検出する場合など、検出が可能な時間に制限が設けられている場合には、その制限時間に応じて応答時間の長さを調整する必要がある。応答時間を短くするには、移動平均演算のデータ数を少なくする必要があるが、移動平均演算のデータ数が減少すると、検出データの精度が悪くなる可能性がある(検出データの誤差が大きくなる)。
すなわち、移動平均演算のデータ数の調整において、応答時間と検出データの精度とはトレードオフの関係にある。
応答時間は、移動平均演算のデータ数のほか、検出処理の処理時間の長さによっても変動する。すなわち、移動平均演算のデータ数が固定されている場合には、処理時間を長くすれば応答時間が長くなる。逆に、処理時間を短くすると、それに応じて応答時間も短くなる。
一方、検出データの精度は、計測データのばらつきの度合いに影響される。計測データのばらつきは、センサの性能のほか、周囲の光ノイズの度合いや検出対象物の凹凸度合いなどによっても変動する。
変位センサが使用される現場では、その現場の生産目標や変位センサを使用する目的などに応じて移動平均演算のデータ数を設定する必要がある。たとえば、ベルトコンベア上を搬送される物品の段差を検出するために変位センサを使用する場合には、その物品の大きさや移動速度に応じて、当該物品がセンサの検出対象位置を通過する間に適切な数の検出データが得られるように応答時間の目標値を定め、その目標値を満たすように、移動平均演算のデータ数を求める必要がある。また、そのデータ数による移動平均演算の結果が現場が必要とする精度を満たしているかどうかを、確認する必要がある。
しかしながら、現場のユーザ、特に初心者は、移動平均演算という演算処理の概念や、移動平均演算のデータ数が応答時間や検出データの精度に及ぼす影響の関係を把握しづらく、設定が困難な場合がある。また検出処理に適した処理時間や計測データのばらつきは、検出対象物の状態や周囲の環境によって変動するので、どの事例にもあてはまるようなノウハウ的な設定を行うのも困難である。このため、現場の殆どのユーザは試行錯誤で設定作業を行っており、そのためにユーザの労力が多大なものになっている。
上記の問題に関して、特許文献1に記載されたティーチング処理では、測定処理に必要な精度についてユーザの指定を受け付け、対象物のモデルに対する検出処理および計測処理を繰り返しながら、データ数を種々に変更して移動平均演算を実行し、この演算結果のばらつきが指定された精度に適合するものになるようなデータ数を求めるので、ユーザの負担を軽減することができる。しかし、この特許文献1に記載のティーチング処理では、応答時間の長さを考慮せずに、検出精度を確保することのみを目標として移動平均演算のデータ数を定めているため、不十分である。
本発明は上記の問題点に着目し、実際の検出対象物のモデルに対する検出処理や計測処理の結果に基づき、移動平均演算のデータ数に関して、ユーザが目標とする応答時間や検出データの精度を確保するのに必要な値を演算により自動的に求め、登録できるようにすることを課題とする。
本発明による変位センサは、対象物に光を投光すると共にその光に対する対象物からの反射光を受光する検出処理と、前記反射光の受光結果に基づき対象物の変位量を計測する計測処理と、計測データの移動平均演算とを繰り返し実行しながら、移動平均演算により得た平均値による検出データを出力するもので、移動平均演算のデータ数を登録するための登録手段と、応答時間に関する条件を表すパラメータおよび検出データの精度に関する条件を表すパラメータを入力するための入力手段と、移動平均演算のデータ数を登録手段に登録するティーチングモードを実行するティーチングモード実行手段とを、さらに具備する。また、ティーチングモード実行手段には、以下の設定処理手段、データ数導出手段、および登録処理手段が含まれる。
設定処理手段は、検出処理と計測処理とをそれぞれ複数回実行すると共に、検出処理の処理時間を設定する処理と、計測処理により得られた計測データのばらつきを求める処理とを実行する。
データ数導出手段は、応答時間に関する条件を表すパラメータおよび検出データの精度に関する条件を表すパラメータの少なくとも一方が入力手段に入力され、設定処理手段による処理が実行されたことを条件として、設定処理手段による処理の結果を用いた演算処理により、入力されたパラメータの値に適した移動平均演算のデータ数を求める。
登録処理手段は、データ数導出手段による処理結果に基づき前記移動平均演算のデータ数を決定して登録手段に登録する。
上記構成の変位センサによれば、検出対象物のモデルをセンサからの光の照射位置に対応させてティーチングモードを開始すると、設定処理手段により検出処理と計測処理とがそれぞれ複数回実行され、検出処理の処理時間が適切な長さに設定されると共に、計測データのばらつきが導出される。また、応答時間に関する条件を表すパラメータおよび検出データの精度に関する条件を表すパラメータのうちの少なくとも一方が入力されることにより、そのパラメータの値と設定処理手段の処理結果とを用いた演算処理が実行されて、移動平均演算のデータ数が導出され、このデータ数を登録手段に登録することが可能になる。
したがってユーザが、変位センサを使用する目的や現場の生産目標等に応じて、応答時間や検出データの精度に関する条件を定め、これらの条件を表すパラメータをセンサに入力してティーチングモードを実行することによって、上記の条件を満足するのに適した移動平均演算のデータ数をセンサで自動的に導出して登録することが可能になる。
上記の変位センサの好ましい一実施態様では、入力手段は、応答時間に関する条件を表すパラメータとして当該応答時間の目標値を表す数値を入力すると共に、検出データの精度に関するパラメータとして検出データの誤差の許容値を表す数値を入力する。
また、この実施態様におけるデータ数導出手段は、演算処理として、検出処理の処理時間と移動平均演算のデータ数と応答時間との関係を表す第1演算式と、計測データのばらつきと移動平均演算のデータ数と検出データの誤差との関係を表す第2演算式とのうちの少なくとも一方の演算式を用いた演算を実行する。たとえば、応答時間の目標値が入力された場合には、入力された値および設定処理手段により調整された検出処理の処理時間を第1演算式にあてはめることにより、移動平均演算のデータ数を算出する。また、検出データの誤差の許容値が入力された場合には、入力された値および設定処理手段により求められた計測データのばらつきを第2演算式にあてはめることにより、移動平均演算のデータ数を算出する。
より好ましい実施態様では、データ数導出手段は、応答時間の目標値および検出データの誤差の許容値の双方のパラメータが入力手段に入力されたとき、いずれか一方のパラメータを優先的に選択して、その選択されたパラメータに対応する演算式に当該パラメータにつき入力された値と設定処理手段の処理結果とを適用して移動平均演算のデータ数を求める第1の演算を実行した後に、選択されなかったパラメータに対応する演算式に第1の演算により求められた移動平均のデータ数と設定処理手段の処理結果とを適用して当該パラメータの値を求める第2の演算を実行する。登録処理手段は、前記選択されなかったパラメータの第2の演算により求められた値が入力手段に入力された値に適合しているか否かを判別し、適合していると判断したときに、第1の演算により求められた移動平均のデータ数を前記登録手段に登録する。
上記の態様によれば、ユーザが応答時間の目標値および検出データの誤差の許容値の各パラメータを入力した場合には、これら双方のパラメータが示す条件に適合するような移動平均演算のデータ数を設定すると共に、優先されたパラメータが示す条件にとって最適なデータ数を設定することができる。
ここで優先するパラメータの選択は、ユーザの選択操作により行われるのが望ましいが、たとえば、応答時間に関する条件を優先するように、データ数導出手段の動作を定義してもよい。また、ユーザの選択操作に応じてパラメータを選択する場合には、その操作を受け付けるための手段は、必ずしもセンサ本体に設ける必要はない。たとえば、センサの外部の機器で選択操作を受け付けて、選択結果を示す信号をセンサに入力するようにしてもよい。
さらに他の態様の変位センサには、選択されなかったパラメータの第2の演算により求められた値が入力手段に入力された値に適合していないと登録処理手段が判断したときに、当該パラメータの第2の演算により求められた値を表示のために出力する出力手段が設けられる。この出力は、センサに設けられた表示部または表示部を有する外部機器に対して行うことができる。
上記の態様によれば、優先的に選択されたパラメータに基づいて移動平均演算のデータ数を設定すると、選択されなかった方のパラメータに関してユーザが指定した条件を満たすことができなくなる場合には、選択されなかったパラメータの値がどの程度になるかを、ユーザに報知することができる。よって、ユーザは、報知された値によりパラメータを修正することにより、移動平均演算のデータ数を確定したり、報知された値を参照して各パラメータの値を変更して、ティーチングモードを再実行するなどの措置をとることができる。
さらに、本発明の他の好ましい実施態様の変位センサには、ティーチングモードにおける処理の開始を指示する信号を入力するための信号入力手段が設けられると共に、この信号の入力に応じて設定処理手段が動作する。このようにすれば、変位センサから投光された光が検出対象物のモデルに照射される状態、すなわち検出処理の準備が整ったときに、信号入力手段に信号を入力すれば、検出処理の処理時間、計測データのばらつきについて、検出対象物に対する処理結果を反映したデータを得ることができる。
より好ましい態様の変位センサでは、処理の開始を指示する信号が入力される都度、設定処理手段とともにデータ導出手段および登録処理手段が動作する。また、登録処理手段は、2回目以降の信号の入力に対し、その入力に応じた設定処理手段およびデータ数導出手段の処理により導出されたデータ数と、1つ前の信号入力に応じて登録手段に登録されたデータ数とを用いて移動平均のデータ数の最適な値を決定する。
上記の態様によれば、複数種の対象物を検出したり、検出対象物に反射率の異なる複数の部位が含まれている場合には、各対象物のモデルまたは1つのモデルの中の各部位をセンサからの光の照射位置に順に対応させて、その都度、処理の開始を支持する信号を入力することにより、モデル毎または部位毎に、移動平均演算のデータ数を得ることができる。登録処理手段は、毎回のデータ数を用いて、応答時間や検出データの精度の条件を満たす範囲で、移動平均のデータ数を適切な値に設定することができる。
複数種の対象物や反射率の異なる複数の部位を処理することを想定する場合の他の実施態様として、ティーチングモードにおける処理の終了を指示する信号を入力するための第2の信号入力手段を設けてもよい。この実施態様では、処理の開始を指示する信号が入力される都度、設定処理手段およびデータ数導出手段が動作すると共に、処理の終了を指示する信号の入力に応じて登録処理手段が動作する。また、登録処理手段は、処理の終了を指示する信号が入力されるまでの間に処理の開始を指示する信号が複数回入力されたとき、この信号の毎回の入力に応じてデータ数導出手段により導出された各移動平均のデータ数を用いて、移動平均のデータ数の最適な値を決定する。
第2の信号入力手段を設ける場合の他の実施態様では、処理の開始を指示する信号が入力されたことに応じて設定処理手段およびデータ数導出手段が動作すると共に、処理の終了を指示する信号の入力に応じて登録処理手段が動作する。また、設定処理手段およびデータ数導出手段は、処理の開始を指示する信号が入力されてから処理の終了を指示する信号が入力されるまでの間に複数回の処理を実行することが可能である。さらに、登録処理手段は、処理の終了を指示する信号が入力されるまでの間にデータ数導出手段により移動平均のデータ数が複数導出されたとき、これらのデータ数を用いて移動平均のデータ数の最適な値を決定する。
上記2つの態様の変位センサには、処理の開始を指示する信号および処理の終了を指示する信号を発生させるための操作部を設けることができる。この場合、ユーザは、検出対象物または検出対象の部位がセンサからの光が照射される位置に対応していることを確認しながら処理の開始を指示する操作を行うと共に、すべてのモデルまたはすべての部位に対する処理が終了したことに応じて終了を指示する操作を行うことによって、移動平均演算のデータ数の適切な値を定め、登録することができる。
ただし、信号入力手段に入力される信号は、上記の操作部により発生させる場合に限らず、外部機器(パーソナルコンピュータ、PLC、他のセンサなど)から入力することも可能である。たとえば、検出対象物を移動させながらティーチングモードを実行する場合には、検出対象物のモデルが変位センサの検出エリアに入ったことを他のセンサなどにより検出し、その検出信号を、処理の開始を指示する信号として入力し、その入力に応じて設定処理手段を動作させてもよい。
つぎに、本発明の他の観点に基づく変位センサは、対象物に光を投光すると共にその光に対する対象物からの反射光を受光する検出処理と、反射光の受光結果に基づき対象物の変位量を計測する計測処理と、計測データの移動平均演算とを繰り返し実行しながら、移動平均演算により得た平均値により検出データを出力することを前提として、移動平均演算のデータ数を登録するための登録手段と、移動平均演算のデータ数を登録手段に登録するティーチングモードを実行するティーチングモード実行手段とを具備する。
ティーチングモード実行手段には、設定処理手段、特定手段、および登録処理手段が含まれる。
設定処理手段は、検出処理と計測処理とをそれぞれ複数回実行すると共に、検出処理の処理時間を設定する処理と、計測処理により得られた計測データのばらつきを求める処理とを実行する。
特定手段は、設定処理手段により設定された検出処理の処理時間に基づき、変位センサの応答時間と移動平均演算のデータ数との関係を表す第1の関数を特定すると共に、設定処理手段により求められた計測データのばらつきに基づき、検出データの誤差と移動平均演算のデータ数との関係を表す第2の関数を特定する。さらに、これらの関数に基づき、移動平均のデータ数とこのデータ数に対応する応答時間と当該データ数に対応する検出データの誤差との組み合わせを、少なくとも1組特定する。
登録処理手段は、特定手段により特定された応答時間および検出データの精度の組み合わせを表示して選択操作に待機するとともに、表示されたいずれかの組み合わせが選択されたとき、その選択された組み合わせに対応する移動平均のデータ数を登録手段に登録する。
上記構成の変位センサによれば、センサからの光が照射されるように対象物のモデルを設置してティーチングモードを実行することにより、検出処理の処理時間が設定されると共に計測データのばらつきが求められる。さらに、これらに基づき特定された2つの関数を用いて、移動平均演算のデータ数とそのデータ数により実現する応答時間および検出データの誤差の組み合わせが少なくとも1組特定され、各組の応答時間および検出データの誤差が表示される。ユーザがこの表示の中から好ましいと思われる組み合わせを選択することにより、選択された組み合わせに対応する移動平均演算のデータ数が登録手段に登録される。
本発明によれば、検出対象物の実物モデルに対する検出処理や計測処理の結果に基づいて、移動平均演算のデータ数を、応答時間や検出データの精度がユーザが必要とする条件を満たすのに必要な値に自動的に設定することが可能になる。よって、ユーザに負担をかけることなく、変位センサの使用に必要な設定処理を容易に行うことができる。
図1は本発明が適用される変位センサの一実施例にかかるセンサヘッドの外観を示し、図2は当該変位センサの電気構成を示す。
この実施例の変位センサ1は、検出対象のワークWに対し、センサヘッド10からレーザビームL1を投光すると共にこのレーザビームL1に対するワークWからの反射光L2を受光し、三角測距の原理に基づきワークWの表面の変位量を計測する。なお、変位量として計測されるのはセンサヘッド10からの距離であり、検出データとしても距離を表す数値を出力することができる。また、ワークWの支持面などの基準面までの距離をあらかじめ登録しておけば、計測された距離を基準面から見た高さに置き換えて、この高さを検出データとして出力することもできる。
センサヘッド10には、図2に示す投光部101、受光部102、CPU110、メモリ111などが組み込まれている。また、図示を省略しているが、センサヘッド10には、ケーブル11を介してアンプ部と呼ばれる補助筐体が接続されており、このアンプ部に、図2に示す表示部121、操作部122、入出力インターフェース123などが設けられている。ただし、センサヘッド10とアンプ部との分離は必ずしも必要ではなく、図2に示した構成すべてを1つの筐体に設けるようにしてもよい。
投光部101には、発光素子103としてレーザダイオード(LD)が設けられるほか、投光制御回路104が設けられる。投光制御回路104は、CPU110からの指令に基づき、発光素子103の発光強度や発光時間を調整しながら発光素子103を駆動する。
受光部102には、撮像素子105としてCMOSが設けられるほか、この撮像素子105により生成された画像信号を処理するための信号処理回路106やA/D変換回路107が設けられる。信号処理回路106は、CPU110からの指令に基づき、撮像素子105の動作のタイミングを制御すると共に、撮像素子105が生成した画像を取り込んでA/D変換回路107に出力する。A/D変換回路107によりディジタル変換された画像は、計測処理のためにCPU110に入力される。
メモリ111は、EEPROMなどの不揮発性メモリであって、プログラムのほか、CPU110の各動作を定義するための設定データや、後記するティーチングモードにより導出された移動平均演算のデータ数や最大露光時間などが保存される。また、このメモリ111には、毎回の計測データを移動平均演算のために保存するバッファとしての機能も設定される。
CPU110は、メモリ111内のプログラムや設定データに基づき、投光部101にレーザビームL1を出射させると共に、その出射のタイミングに合わせて受光部102を動作させて、ワークWからの反射光L2を受光させる。これにより撮像素子105における反射光L2の入射状態を表す画像が生成される。
上記の投光処理および受光処理をまとめて、以下では「検出処理」という。
CPU110は、投光部101および受光部102に検出処理を繰り返し実行させるとともに、毎回の検出処理で生成された画像を処理して、この画像中の反射光像を検出する。さらにCPU110は、反射光像で最大の受光量が得られている位置(受光量のピーク)の座標を検出し、この座標に基づきワークWの変位量を計測する。
さらに、この実施例では、出力を安定させるために、計測データの移動平均演算を実行し、その演算により得た平均値またはこの平均値を前述の基準面から見た高さに置き換えた数値を、検出データとして表示部121に表示する。
表示部121には、上記の検出データが表示されるほか、後記するティーチングモードにおいて、ユーザにより入力された数値や仮設定された数値などを表示する。操作部122は、ティーチングモードに切り替える操作やティーチングの開始を指示する操作を受け付けるほか、ティーチングの条件となるパラメータの入力を受け付けるように設定される。
入出力インターフェース123は、パーソナルコンピュータやPLCなどの外部機器に接続される。外部機器が接続された場合には、上記の操作部122により行われるのと同様の設定操作や入力操作を外部機器で行って、その操作内容を変位センサ1のCPU110に伝送することができる。また、ティーチングモードにおける設定結果や通常の動作モードで得られた検出データを、入出力インターフェース123を介して外部機器に出力し、外部機器で表示を行うこともできる。
また、この実施例の変位センサ1には、ワークWに対する計測処理を安定して実施できるように、毎回の受光量の強度に基づいて露光時間を調整する機能が設定されている。この調整処理は、CPU110、投光制御回路104、信号処理回路106の協働により実施される。
ここで露光時間とは、投光部101がレーザビームL1を発光している期間と受光部102が反射光L2を受光している期間とを包含する期間の長さをいう。この実施例では、投光部101および受光部102のそれぞれの動作期間を一致させているが、これに限らず、投光部101の動作期間を受光部102の動作期間よりやや長めに設定して、投光部110からの投光が開始された後に受光部110の受光処理を開始し、受光処理が終了した後に投光処理を終了するように制御する場合もある。また、採用されるケースは少ないが、受光部102の動作期間の方を投光部101の動作期間よりも長くする場合もある。
上記の露光時間は、検出対象のワークWの反射率が低くなるほど長くなるように調整される。露光時間が長くなると、毎回の計測データが得られる周期も長くなり、これが応答時間の長さに影響を及ぼす。
また、受光部102が生成した画像データには、センサの性能、センサの周囲の光ノイズ、ワークWの凹凸や振動(振動はワークWが移動する場合に発生する。)などに起因するゆらぎが生じる。このゆらぎにより計測データにばらつきが生じ、これが検出データの精度に影響を及ぼす。
さらに、この実施例では、移動平均演算の結果を検出データとして出力するので、応答時間は移動平均演算のデータ数によっても変動する。また、この移動平均演算のデータ数によって検出精度も変動する。
具体的に、応答時間や検出精度と移動平均演算のデータ数との関係を式として示すと、以下のA式およびB式のようになる。
A式の「最大露光時間(ST)」は、露光時間の調整処理により設定される露光時間の最大値である。B式の「計測データのばらつき(V)」は、たとえば、複数回の検出処理およびこれに伴う計測処理により得られた計測データの中の最大値と最小値との差として求めることができる。または各計測データ間の分散もしくは標準偏差をばらつきVとすることもできる。また、計測処理の都度、その処理により得た計測データと一段階前の計測データとの偏差を求め、過去に得た偏差の中の最大値をばらつきVとしてもよい(たとえばVの初期値を0とし、Vより大きな偏差が得られる都度、その偏差によりVの値を書き換える。)。
この実施例の変位センサでは、ユーザのモード切替操作により、移動平均演算のデータ数Nを登録するためのティーチングモードを実行することができる。このティーチングモードを利用する際には、ユーザは、応答時間RTとして好ましいと思われる値(目標値)および検出誤差Dとして許容できる値(許容値)の少なくとも一方を入力すると共に、検出対象のワークWの実物モデル(以下、「ワークモデル」という。)をセンサヘッド10の真下に設置し、操作部122または外部機器を用いてティーチング開始操作を行う。これにより、ワークモデルに対する検出処理や計測処理が実行され、最大露光時間STが決定されると共に計測データのばらつきVが算出される。また、STおよびVの各値をあてはめたA式およびB式に基づき、移動平均演算のデータ数Nとして、ユーザが入力した目標値や許容値が示す条件を満たすのに必要な数値が導出される。導出されたデータ数Nは、表示部121に表示されると共に、メモリ111に登録される。
上記の登録処理が完了して、ティーチングモードから通常の動作モードに切り替えられると、CPU110は、検出処理および計測処理を実行しながら、毎回、最新の計測データから過去に遡って計N個の計測データを読み出し、これらの平均値を算出する。そして、算出された平均値またはこの平均値を基準の面から見た高さデータに置き換えたものを、検出データとして出力する。
この実施例のティーチングモードでは、応答時間に関する条件を示すパラメータとして応答時間の目標値RT0を、検出精度に関する条件を示すパラメータとして検出誤差の許容値D0を、それぞれ入力することができるが、A式およびB式に示したように、これらの条件はトレードオフの関係にある。このため、この実施例では、応答時間RTに関する条件を優先する状態をデフォルトの設定とし、検出精度に関する条件も入力されている場合には、まずA式に基づき、移動平均演算のデータ数Nとして、応答時間RTを目標値RT0に近い値にするのに必要な値を求めた後に、B式に基づき、データ数Nによる移動平均演算により生じる検出誤差Dがユーザの入力した許容値D0以下であるか否かを判別する。ここで検出誤差Dが許容値D0以下であれば、データ数Nが登録される。
一方、データ数Nによる検出誤差Dがユーザの入力した許容値D0を上回る場合には、データ数Nは登録されないが、許容値D0に対する差が僅差である場合(後記するしきい値δ1により判別される。)には、後記する修正操作によって、データ数Nを登録することもできる。
図3は、上記のデフォルトの設定に応じたティーチングモードにおける処理手順を示す。この処理手順は、デフォルトの設定状態下で応答時間の目標値RT0および検出誤差の許容値D0の双方が入力された場合のほか、応答時間の目標値RT0のみが入力された場合にも適用される。
また、この処理手順は、ユーザが、センサヘッド10の下方にレーザビームL1が適切に照射されるようにワークモデルを設置した後に、処理の開始指示操作を行うことを前提とする。この操作が行われると、ステップS1が「YES」となり、投光部101および受光部102による検出処理が開始される(ステップS2)。
図3には明記していないが、検出処理は、その後も繰り返し実行される。また、検出処理の都度、受光部102からの画像に表された反射光L2の強度(受光量のピーク値、または反射光像全体の受光量の積分値)に基づき露光時間が調整され、これが次の検出処理に適用される。この例では、露光時間が安定するまでの期間をステップS3として、毎回の露光時間の中から最大露光時間STを決定する。以後の検出処理でも引き続き露光時間の調整が行われるが、その調整は最大露光時間STを超えない範囲で実施される。
ステップS4では、応答時間の目標値として入力された値RT0およびステップS3で定められた最大露光時間STをA式にあてはめ、このA式を実行することにより、移動平均演算のデータ数Nを算出する。なお、Nは整数であり、演算結果に小数点以下の値が含まれた場合には、これらの値は切り捨てられる。また、計測処理や移動平均演算の時間による影響を考慮して、データ数Nを算出された値より若干小さい値に補正してもよい。
算出されたNの値が1以上であれば(ステップS5が「YES」)、検出誤差の許容値D0が入力されているかどうかをチェックする。D0が入力されていない場合(ステップS6が「NO」)には、上記の演算により求めたデータ数Nを表示部121に表示すると共に、メモリ111に登録し、これをもって処理を終了する。
一方、検出誤差の許容値D0が入力されている場合(ステップS6が「YES」)には、ステップS7に進み、複数回の検出処理および計測処理を実行し、これらの処理により得られた計測データのばらつきVを算出する。
なお、この例では、ステップS7の処理の時点で計測処理を行って、計測データのばらつきVを求めているが、これに限らず、ステップS2で検出処理を開始したときに計測処理も開始し、露光時間の調整処理に並行して計測データのばらつきVを求めてもよい。ただし、この場合のばらつきVは少し粗めの値となる。
つぎに、ステップS8では、計測データのばらつきVとステップS4で求めたデータ数NとをB式にあてはめて、検出誤差Dを算出し、この検出誤差Dをユーザにより入力された許容値D0と比較する(ステップS9)。ここでDがD0以下であれば(ステップS9が「YES」)、ステップS10に進み、データ数Nの表示および登録を行い、処理を終了する。
算出された検出誤差DがD0より大きい場合(ステップS9が「NO」)には、両者の差をあらかじめ定めたしきい値δ1と比較し、差の値がδ1以下であれば、検出誤差Dの値を表示部121に表示する(ステップS11)。
ここで、ユーザが検出誤差Dの値を受け入れられると考えて、許容値D0をDに修正する操作を行った場合(ステップS13が「YES」)には、ステップS10に進む。これにより、ステップS4で算出されたデータ数Nが表示され、登録される。
一方、ユーザが表示された許容値Dの値を受け入れられないと考えてキャンセル操作を行った場合(ステップS13が「NO」)には、ステップS14に進み、表示部121の表示をエラー表示に切り替え、処理を終了する。
なお、ステップS10やステップS14では、より詳細な表示を行ってもよい。たとえばステップS10においては、データ数Nと共に、最大露光時間ST、計測データのばらつきV、検出誤差Dの各値を表示することができる。ステップS14では、エラーを示すメッセージのほか、算出されたデータ数Nを表示したり、検出誤差Dと許容値D0とを対応づけた表示を行うことが可能である。このような詳細な表示を行う場合には、外部機器による表示を採用してもよい。
上記の処理によれば、移動平均演算のデータ数Nとして、応答時間RTをユーザが入力した目標値RT0に近い長さにするのに必要な値を自動的に導出することができるので、ユーザが検出誤差の許容値D0を指定していない場合には、導出されたデータ数Nを速やかに登録することができる。また、検出精度の許容値D0が入力されている場合でも、導出されたデータ数Nにより実現する検出精度Dが許容値D0以下となる場合には、速やかにデータ数Nを登録することができる。
したがって、ユーザが、応答時間RTおよび検出誤差Dの少なくとも前者に関して、現場の生産目標や変位センサの使用目的などに応じた条件を定めて、その条件を表す数値を入力することによって、センサの能力の範囲内で、ユーザの定めた条件に最も適したデータ数Nを自動的に導出して登録することが可能になる。よって、移動平均演算の概念やこの演算に用いられるデータ数Nが応答時間や検出精度に及ぼす影響をよく理解できていないユーザでも、自己が定めた条件を満たすように変位センサを動作させるのに最適な設定を行うことができる。
さらに、導出されたデータ数Nでは、ユーザが希望する検出精度を得ることができない場合でも、実現可能な検出誤差Dが許容値D0から大きく離れておらず、ユーザが検出誤差Dを受け入れることができる場合には、許容値D0をDに修正する操作を行うことによって、算出されたデータ数Nを登録することができる。これにより、センサの利便性を高めることができる。
また、図3の処理によれば、算出された計測誤差Dと許容値D0との間にδ1を超える差がある場合(ステップS11が「NO」)やステップS4で算出されたデータ数Nが1より小さい場合(ステップS5)には、エラー表示(ステップS14)が実行される。したがって、データ数Nがユーザが希望する精度を確保できない場合や、センサの能力ではユーザの希望する条件をかなえることができない場合に、不適切な値のデータ数が登録されるのを防ぐことができる。
また、上記のティーチング処理では、データ数Nと共に、ステップS3で決定された最大露光時間STを登録するのが望ましい。最大露光時間STを登録すれば、通常の動作モードで露光時間を調整する場合に、調整値が最大露光時間STを超えないように制御することができ、実際の応答時間を確実に目標値R0以内に収めることが可能になるからである。
ただし、最大露光時間STの登録は必須のものではない。ティーチング処理において露光時間の調整を十分に実施してから最大露光時間STを決定するようにすれば、通常の動作モードにおける露光時間も、最大露光時間STまでの範囲に収まると考えられるからである。
上記のデフォルトの設定では、応答時間RTおよび検出誤差Dのうちの前者が優先されているが、ユーザは、検出誤差Dを優先するように設定を変更することもできる。図4は、この設定が変更された場合の処理手順を示す。
この処理では、ユーザが少なくとも検出誤差の許容値D0を入力してから、レーザビームL1の照射位置にワークモデルを設置して開始指示操作を行うことが前提となる。開始指示操作が行われると(ステップS101が「YES」)、図3のステップS2~S4と同様に、検出処理が開始され、最大露光時間STが定められる(ステップS102,S103)。さらに、計測データのばらつきVが算出される(ステップS104)。
つぎに、検出誤差の許容値D0とステップS104で算出されたばらつきVとをB式にあてはめて、移動平均演算のデータ数Nを算出する(ステップS105)。なお、この演算結果に小数点以下の数値が含まれる場合には、その数値は切り上げられる。また、検出誤差を確実に許容値D0以下に収めるために、データ数Nの算出値を、若干の値を加えたものに補正してもよい。
上記の処理により算出されたNの値が1以上であれば(ステップS106が「YES」)、応答時間の目標値RT0が入力されているか否かをチェックする。目標値RT0が入力されていない場合には、ステップS110に進み、データ数Nを表示部121に表示すると共にメモリ111に登録し、処理を終了する。
目標値RT0が入力されている場合(ステップS107が「YES」)には、上記の演算により算出されたデータ数Nと、ステップS103で決定された最大露光時間STとをA式にあてはめて、応答時間RTを算出し(ステップS108)、このRTの値をユーザの入力した目標値RT0と比較する(ステップS109)。ここでRTがRT0以下であれば(ステップS109が「YES」)、ステップS110に進み、データ数Nの表示および登録を実行し、処理を終了する。
一方、算出された応答時間RTが目標値RT0を上回る場合(ステップS109が「NO」)には、ステップS111において、両者間の差をあらかじめ定めたしきい値δ2と比較する。この差の値がδ2以下であれば(ステップS111が「YES」)、応答時間RTの値を表示する(ステップS112)。この表示に対し、ユーザが目標値RT0をRTに修正する操作を行った場合(ステップS113が「YES」)には、ステップS110に移行して、データ数Nの表示および登録を実行する。一方、ユーザが修正操作をせずにキャンセル操作を行った場合(ステップS113が「NO」)には、ステップS114において表示部121の表示をエラー表示に切り替え、しかる後に処理を終了する。
また、上記の応答時間RTと目標値RT0との差がδ2を超える場合(ステップS111が「NO」)や、ステップS105で算出されたデータ数Nが1より小さくなった場合(ステップS106が「NO」)にも、ステップS114のエラー表示を実行する。
なお、図4のステップS110やステップS114でも、図3のステップS10やステップS14に関して述べたのと同様に、より詳細な表示を行うことが可能である。
また、図3および図4の例では、応答時間および検出精度の双方の条件が具体的に指定され、さらに優先された条件に基づいて導出されたデータ数Nが他方の優先されなかった条件を満足できなかった場合には、優先されなかった条件の基準を下げてデータ数Nを登録できるようにしたが、これに限らず、双方の条件を満足できない場合には、常にエラー表示を行うようにしてもよい。
一方で、図3および図4の例のように、優先された条件に対してデータ数Nを最適な値に設定するのではなく、優先されなかったパラメータが示す条件が満たされるように、データ数Nを補正してもよい。ただし、その場合には、補正量をある程度の数値範囲内に限定するのが望ましい。また、補正後のデータ数と共に、そのデータ数により実現する応答時間や検出精度の値を表示するのが望ましい。
つぎに、図3および図4の処理手順は、検出対象のワークが1種類である場合を想定したものであるが、現場によっては、1台の変位センサにより複数種のワークを処理する場合もある。この点を考慮して、上記の変位センサ1のティーチングモードには、複数種のワークを対象とする場合のティーチング処理の手順も含まれている。
複数種のワークを対象としたティーチング処理では、ユーザは、ワーク毎にワークモデルを準備し、これらのワークモデルをレーザビームL1の照射位置に順にセットして開始指示操作を行う。また、最後に、ティーチング処理の終了を指示する操作を行う。CPU110は、開始指示操作が行われる都度、その操作に応じて最大露光時間STを決定すると共に、入力されたパラメータが示す条件に応じた移動平均演算のデータ数Nを算出する。そして、終了を指示する操作に応じて、導出されたデータ数Nの値の中の1つを選択し、これをメモリ111に登録する。
図5は、複数種のワークを対象とするティーチング処理における処理手順の例を示す。なお、この例では、応答時間を優先するデフォルトの設定が適用されるものとする。また、説明を簡単にするために、この図5では、応答時間の目標値RT0および検出誤差の許容値D0の双方が入力される場合の手順のみを示す。また、この例では、導出されたデータ数がこれらの入力値が示す条件を満たすものでない場合には、常にエラー表示(ステップS217)が実行される。
以下、図5を参照して説明する。
この処理では、最初のステップS201においてワークモデルの数を示すカウンタiを初期値の0に設定し、開始指示操作に待機する。開始指示操作が行われると(ステップS202が「YES」)、検出処理を開始し(ステップS203)、検出処理の都度、受光量の強度に基づいて露光時間を調整しつつ、最大露光時間STiを決定する(ステップS204)。
つぎに、ステップS205では、応答時間の目標値RT0およびステップS204で定めた最大露光時間STiをA式にあてはめて、移動平均演算のデータ数Niを算出する。続くステップS206では、十分な回数の検出処理および計測処理を実行して、毎回の計測処理により得た計測データ間のばらつきViを算出する。なお、このばらつきViは、ステップS204の処理と並列して求めることも可能である。
この後、上記の処理により求めた最大露光時間STiおよびデータ数Ni、ならびに計測データのばらつきViをメモリ111に保存する(ステップS207)。ついで、カウンタiをインクリメントする(ステップS208)。
上記のステップS202~208のループが少なくとも1回実行された後に終了指示操作が行われると、ステップS209およびステップS210がそれぞれ「YES」となってステップS211に進む。ステップS211では、ステップS202~208のループが繰り返される間に保存されたデータ数の中の最小値NMINを特定する。
上記の最小値NMINが1以上であれば(ステップS212が「YES」)、毎回のステップS206において算出された計測データのばらつきの中の最大値VMAXを特定する(ステップS213)。そして、このVMAXおよびステップS211で特定されたデータ数の最小値NMINをB式にあてはめて、検出誤差Dを算出し(ステップS214)、算出された値を許容値D0と比較する(ステップS215)。
検出誤差Dが許容値D0以下であれば(ステップS215が「YES」)、上記の最小値NMINを登録するデータ数として表示すると共に当該データ数をメモリに登録する(ステップS216)。ついで、データ数NMINを導出したときの演算に用いられた最大露光時間をメモリ111に登録し(ステップS217)、処理を終了する。
検出誤差Dが許容値D0を超えた場合(ステップS215が「NO」)には、条件を分けずにエラー表示(ステップS218)を行うが、これに限らず、図3のステップS11~S13と同様の処理を実行するようにしてもよい。
開始指示操作がされることなく終了指示操作が行われた場合には、i=0となるため、ステップS210が「NO」となり、ステップS218に進んで、表示部122をエラー表示に切り替える。開始指示操作が1回しかされなかった場合には、ステップS211に進むが、この場合の以下の処理は、図3のS5以下の各ステップにより実行されるものと実質同様になる。
上記したとおり、図5の処理手順では、ワーク毎に最大露光時間STiおよび移動平均演算のデータ数Niを求めた後に、毎回のデータ数Niの中の最小値NMINを登録し、さらにこの最小値NMINを取得したときの演算に用いた最大露光時間を登録している。これは、応答時間RTを目標値RT0以内に収めることを条件とする場合には、複数種のワークのうちで検出処理に要する時間が最も長くなるワーク(反射率が最も低いワーク)を基準に、上記の条件を満たすことができるような動作を定義する必要があるからである。
上記のティーチング処理を終了して通常の動作モードに復帰すると、以後の検出処理では、登録された最大露光時間までの範囲で毎回の露光時間を調整すると共に、登録されたデータ数を用いて移動平均演算を実行する。この制御により、複数種のワークのいずれが検出対象となった場合でも、そのワークの反射率に応じて露光時間を調整することができ、その露光時間と登録されたデータ数とによって、応答時間RTを目標値R0以内に収めることが可能になる。
さらに図5に示した処理により登録されたデータ数によれば、複数種のワークのいずれが処理される場合でも、検出誤差Dを、ユーザが入力した許容値D0以下に収めることができる。
応答時間に関する条件よりも検出精度に関する条件が優先される場合のティーチング処理に関しては、図示を省略するが、この場合にも、上記図5と同様の観点による手順が実行される。
簡単に説明すると、図5と同様に、開始指示操作が行われる都度、検出処理を実行して、最大露光時間STiを決定すると共に、計測データのばらつきViを算出する。そして、ばらつきViと検出誤差の許容値D0とをあてはめたB式を用いて、検出誤差Dを許容値D0以下にするのに必要な移動平均演算のデータ数Niを求める。
すべてのワークモデルに対する処理が終了すると、いずれのワークに対しても検出誤差Dを許容値D0以下に収めることができるように、ワークモデル毎に求めたデータ数Niの中の最大値NMAXを選択する。また、ワークモデル毎に求めた最大露光時間の中の最大値STMAXを特定し、NMAXおよびSTMAXをA式にあてはめて応答時間RTを算出する。そして、この応答時間RTが目標値RT0以下であれば、データ数NMAXをメモリ111に登録する。
上記に説明したように、反射率の異なる複数種のワークが検出対象となる場合には、いずれのワークが処理される場合でもユーザにより指定された条件が確保できるように、ワーク毎に導出されたデータ数の中から最も厳しい基準に相当するデータ数を選択するのが望ましい。しかし、必ずしも、選択されたデータ数をそのまま登録する必要はない。たとえば、応答時間に関する条件が優先される場合には、ワーク毎に求めたデータ数の中の最小値を選択した後に、その最小値よりもさらに小さい値(ただし1以上の値)を登録してもよい。また、検出精度の許容値Dが優先される場合には、ワーク毎に求めたデータ数の中の最大値を選択するが、さらにその最大値よりも大きい値を登録してもよい。
また、複数種のワークが検出対象となる場合のティーチング処理は、反射率の異なる複数の部位を含むワークを検出対象とする場合のティーチング処理にも適用することができる。
なお、上記に説明した処理では、終了指示操作が実行されたことに応じて移動平均演算の最適なデータ数を求め、これを登録するようにしたが、これに限らず、ティーチングモードにおいて開始指示操作が行われる都度、その操作に応じて導出されたデータ数とその時点で登録されているデータ数とを用いて最適なデータ数を決定し、登録データを書き換えるようにしてもよい。たとえば、応答時間を優先する設定であれば、新たな開始指示操作に応じて導出されたデータ数が登録されているデータ数より小さい場合に、新たに導出されたデータ数に登録データを書き換えることができる。また、検出精度を優先する設定であれば、新たに導出されたデータ数が登録されているデータ数より大きい場合に、新たに導出されたデータ数に登録データを書き換えることができる。また、開始指示操作を最初の1回のみとして、終了指示操作が行われるまでの間に、移動平均演算のデータ数を導出する処理を複数回実行し、終了指示操作が行われたことに応じて、複数回の処理により得られたデータ数の中から最適な値を選択し、これを登録するようにしてもよい。
ここまでに説明したように、この実施例の変位センサ1のティーチングモードでは、ユーザが応答時間の目標値RT0および検出誤差の許容値D0の少なくとも一方を入力すると共に、ワークのモデルをレーザビームL1が照射される位置に設置して開始指示操作を行うことを前提とする。これらの入力や開始指示操作は、操作部のほか、パーソナルコンピュータなどの外部機器で実施することも可能である。また、これらの操作に関して、音声などによるガイダンスを行うようにしてもよい。
つぎに、ベルトコンベア等により連続的に搬送されるワークを変位センサ1の検出対象とする場合には、ティーチング処理においても、使用時と同じようにワークモデルを搬送しながら行いたいという要望がある。この場合には、ワークモデルを搬送しながら、レーザビームL1がワークモデルに照射されるタイミングを狙って開始指示操作を行えば良いが、その他の方法により処理の開始を指示する信号を自動的に入力したり、変位センサ1のCPU110でワークモデルに対する処理の開始時期を認識するようにしてもよい。
たとえば、ワークの搬送路の変位センサ1より上流の位置に、光電スイッチや近接スイッチなどの検出手段を設け、開始指示操作の代わりに検出手段からの信号を入力することができる。また、複数種のワークが検出対象となる場合には、各ワークにワークの種別などを記憶したRFIDタグを取り付けると共に、検出手段としてRFID用のリーダライタを設けてもよい。
また、変位センサ1のCPU110において、検出処理と毎回の検出処理により得た受光量の一段階前の受光量に対する偏差を求める処理とを繰り返し、偏差が予め設定したしきい値を超えたときを、ワークモデルに対する処理の開始時期として判断してもよい。また、センサヘッド10からワークの支持面までの距離が基準の距離として登録されている場合には、検出処理および計測処理を繰り返し、計測データが有意な差をもって基準の距離より短くなったときを処理の開始時期としてもよい。
また、変位センサ1からのレーザビームL1がベルトコンベアの表面に照射されたときに受光部102に殆ど反射光が入射しない場合には、ある程度の受光量が得られている状態から受光量が0に近い値に変化したことをもって、ワークモデルに対する処理を終了する時期になったと判断してもよい。また、ベルトコンベアからの反射光が受光部102に入射する場合には、センサヘッド10からコンベアの面までの距離を基準の距離として登録し、計測データが基準の距離に復帰したことをもって、ワークモデルに対する処理を終了する時期になったと判断してもよい。
また、ベルトコンベア等により複数種のワークモデルを順に搬送しながらティーチング処理を行う場合には、ワークモデルの搬送に応じて検出処理および計測処理を繰り返し、これらの処理により得た計測データの履歴の中からティーチング処理に使用するデータ(各ワークモデルに対応する計測データ)を選択してもよい。たとえば、計測データの変化を示すグラフをコンピュータ等の外部機器の表示部に表示し、ユーザがマウス等の入力機器により、グラフ中の各ワークモデルに対応する範囲をそれぞれ個別に指定することによって、ワークモデル毎にそのモデルに対応する計測データを得ることができる。
反射率の異なる複数の部位を有するワークが検出対象となる場合には、ワークの搬送経路の下流側の端縁および各部位間の境界位置を、各部位より反射率の高い材料(たとえばアルミニウム)による薄膜でマーキングし、受光部102における受光量に薄膜の反射率に相当するピークが現れる都度、検出対象の部位が変更されたと判断して、移動平均演算のデータ数を求めてもよい。
また、受光部102にカラー画像用の撮像素子を導入すると共に、あらかじめ検出対象のワークの色彩を登録しておき、検出処理を繰り返しながら、受光部102から入力された画像中の画像に登録された色彩による領域が含まれる状態になったことをもって、ワークモデルに対する処理の開始時期であると判断してもよい。また、受光部102にカラー画像用の撮像素子が導入された場合には、前出の薄膜によるマーキングに代えて、特定の色彩によるマーキングを設定し、その色彩を検出するようにしてもよい。
さらに、応答時間の目標値RT0に関しては、ユーザによる直接の数値入力に限らず、ワークの移動速度やワークの搬送方向に沿う幅長さの入力を受け付けて、これらの値から目標値RT0を算出するようにしてもよい。同様に、円盤状または円筒状の物体を回転させている間にその物体の外周面の変位量を検出する目的で変位センサを設置する場合には、物体の回転速度や直径の入力を受け付けて、これらの値から応答時間の目標値RT0を割り出すようにしてもよい。なお、この種の演算は、センサで行う場合に限らず、外部機器で行ってもよい。
移動平均演算のデータ数を登録した後に、その登録に基づき、ワークモデルに対するテスト計測を行うと共に、ユーザが指定した条件が満たされているかどうかを確認できるように、実際の応答時間や検出データを表示してもよい。さらに、この場合には、表示された応答時間や検出データの精度の変更を指定する操作に応じて、移動平均演算の登録されたデータ数を修正してもよい。
つぎに、上記構成の変位センサ1には、ティーチング処理により導出した移動平均演算のデータ数Nを外部機器に出力する機能や、これとは反対に外部機器からデータ数Nを入力してメモリ111に登録する機能を設けることもできる。このようにすれば、1つのベルトコンベア上の複数の箇所に変位センサ1が配置される場合など、複数の変位センサ1が共通のワークを検出対象とする場合に、いずれか1台のセンサ1で導出したデータ数Nを外部機器を介して他のセンサ1に転送することができる。この方法によれば、複数の変位センサ1のうちの1台のみに対してティーチング処理をすることにより、そのティーチング処理により導出されたデータ数Nを全ての変位センサ1に登録することができるので、ティーチング処理に関するユーザの労力を大幅に削減することが可能になる。
なお、センサ間で通信をすることを可能とすれば、上記のデータ数Nの受け渡しも、外部機器を介さずに、センサ間で直接やりとりすることができる。
つぎに、ここまでに説明したティーチング処理では、応答時間の目標値RT0および検出誤差の許容値D0の少なくとも一方をユーザが指定し、その指定された条件に適した移動平均演算のデータ数Nを導出するようにしたが、目標値RT0や許容値D0を指定することなく、ワークモデルをレーザビームL1の照射位置に設置して検出処理や計測処理などを実行することによって、移動平均演算のデータ数Nとして適切な値を自動的に割り出し、登録することも可能である。
この場合にも、レーザビームL1の照射位置にワークモデルを設置し、開始指示操作または外部からの信号の入力に応じて検出処理および計測処理を開始する。また、毎回の受光量の強度に基づき露光時間の調整処理を行いながら、最大露光時間STを定め、計測データのばらつきVを算出する。
ここで、最大露光時間STおよび計測データのばらつきVをそれぞれA式およびB式に適用すれば、図6に示すように、移動平均演算のデータ数Nと応答時間RTとの関係を表す関数fAと、移動平均演算のデータ数Nと検出誤差Dとの関係を表す関数fBとを特定することができる。よって、たとえば、N,RT,Dにつき、関数fAのグラフと関数fBのグラフとの交点の座標に相当する値NK,RTK,DKを求め、NKを登録対象のデータ数として表示すると共に、RTKおよびDKを、データ数NKによる移動平均演算を実行した場合の応答時間および検出精度として表示する。ユーザがこの表示内容を確認して登録操作を行うと、NKの値がメモリ111に登録される。
または、上記のNKのほか、NKから所定数Eを差し引いた値(NK-E)およびNKにりEを加えた値(NK+E)の3つの数値を登録候補として設定し、NKを応答時間および検出精度のバランスがとれた設定値とし、NK-Eを応答時間を優先した場合の設定値とし、NK+Eを検出精度を優先した場合の設定値として、それぞれ対応する応答時間および検出精度と組み合わせて表示し、いずれかの組み合わせをユーザに選択させるようにしてもよい。
また、データ数は必ずしも表示する必要はなく、各データ数に対応する応答時間と検出精度とを組み合わせたものを表示して、選択操作を受け付けてもよい。また、ここで表示された応答時間や検出精度より高い値または低い値を指定する操作を受け付けて、応答時間および検出精度の表示を変更すると共に、変更された表示が選択されたときに、その表示に対応するデータ数を登録するようにしてもよい。
最後に、これまでは、三角測距の原理に基づき変位量を計測するタイプの変位センサに関して、検出処理の処理時間(最大露光時間)や計測データのばらつきに基づく演算処理により移動平均演算のデータ数を導出することについて説明したが、他の方式により変位量を計測する変位センサにおいても、同様のティーチングモードを実行することにより移動平均演算のデータ数を求めることが可能であることを説明する。
たとえば、TOF方式の変位センサでは、検出され得る距離の長さによって検出処理の処理時間を調整する必要があるため、たとえば、ワークモデルの最も低い部位が検出されている状態下で検出処理の処理時間を調整することにより、処理時間を決定すると共に、計測データのばらつきを求めればよい。その後は、上記の各実施例と同様の方法により移動平均演算のデータ数Nを求め、調整された処理時間と共に登録することができる。
位相差測距方式やPCコード測距方式の変位センサでは、反射光の受光量信号に含まれる波の振幅を十分な大きさにするために、三角測距方式の変位センサと同様に露光時間を調整する必要がある。また、露光時間が長くなるほど反射光の受光量信号に含まれる波の数が増えて、より安定した計測処理が可能になる。このため、この種の変位センサのティーチング処理では、調整処理により露光時間が安定した後に検出処理および計測処理を所定回数実行し、その間の計測データのばらつきを求めるのが望ましい。この場合にも、露光時間の調整が行われる間に最大露光時間を決定し、この最大露光時間と計測データのばらつきとを用いて移動平均演算のデータ数Nを求めて登録することができる。