(57)【要約】 【課題】  高い精度で被検出物の検出が可能な光電センサを提供する。【解決手段】  受光量データが所定範囲よりも大きい（Ｚ＞Ａ）との判定又は所定範囲よりも小さい（Ｚ＜−Ａ）との判定が所定回数以上連続しない場合には、所定範囲外（Ｚ＞Ａ，Ｚ＜−Ａ）にあると判定された受光量データをその受光量データのままでは移動平均値Ｄｈの算出に用いず、受光量データが所定範囲よりも大きい（Ｚ＞Ａ）との判定又は所定範囲よりも小さい（Ｚ＜−Ａ）との判定が所定回数以上連続した場合には、所定範囲外（Ｚ＞Ａ，Ｚ＜−Ａ）にあると判定された受光量データを移動平均値Ｄｈの算出に用いる。【選択図】  図３
2006245685.tif 000002
【特許請求の範囲】
【請求項１】
光を投光する投光手段と、
前記投光手段からの光を受光する受光手段と、
前記受光手段にて受光した光の複数の受光量データの移動平均値を算出する演算手段と、
前記演算手段で算出された移動平均値に基づいて被検出物の検出を行う検出手段とを備える光電センサであって、
前記受光手段にて受光した光の各受光量データが所定範囲外にあるかどうかを判定する判定手段を備え、
前記演算手段は、前記判定手段により前記所定範囲外にあると判定された受光量データについては前記移動平均値の算出に用いず、所定範囲内にあると判定された受光量データについては前記移動平均値の算出に用いることを特徴とする光電センサ。
【請求項２】
前記所定範囲は、順次得られた複数の受光量データのうち、最も新しい受光量データを基準値とし、当該基準値を含む範囲であることを特徴とする請求項１記載の光電センサ。
【請求項３】
前記投光手段の非投光時における前記受光手段の受光量を測定し、その受光量の最大値と最小値との差から変動量を測定する測定手段を備え、
前記測定手段で測定された変動量の大きさに応じて前記所定範囲が定められることを特徴とする請求項２記載の光電センサ。
【請求項４】
光を投光する投光手段と、
前記投光手段からの光を受光する受光手段と、
前記受光手段にて受光した光の複数の受光量データの移動平均値を算出する演算手段と、
前記受光手段から受光量データが出力されるごとに、当該受光量データが所定範囲外にあるかどうかを判定する判定手段と、
前記演算手段で算出された前記移動平均値に基づいて検出を行う検出手段とを備え、
前記演算手段は、前記判定手段により所定範囲内にあると判定された受光量データに基づき前記移動平均値を算出する光電センサであって、
前記判定手段により所定範囲外にあると判定された受光量データが前記所定範囲よりも大きいか又は小さいかを判別する判別手段を備え、
前記演算手段は、前記判別手段により受光量データが前記所定範囲よりも大きいとの判定又は前記所定範囲よりも小さいとの判定が所定回数以上連続しない場合には、前記判定手段により所定範囲外にあると判定された受光量データをその受光量データのままでは前記移動平均値の算出に用いず、前記受光量データが前記所定範囲よりも大きいとの判定又は前記所定範囲よりも小さいとの判定が所定回数以上連続した場合には、前記判定手段により所定範囲外にあると判定された受光量データを前記移動平均値の算出に用いることを特徴とする光電センサ。
【請求項５】
前記演算手段は、前記受光量データが前記所定範囲よりも大きいとの判定又は前記所定範囲よりも小さいとの判定が前記所定回数以上連続する受光量データのうち、最新の受光量データ以外の受光量データを前記移動平均値の算出に用いないことを特徴とする請求項４記載の光電センサ。
【請求項６】
前記判定手段は、前記受光手段から受光量データが出力されるごとに当該受光量データが所定範囲内にあるか否かを判定しており、
前記受光量データが所定回数以上連続して前記所定範囲よりも大きい場合及び所定回数以上連続して前記所定範囲よりも小さい場合を除き、前記受光量データが所定範囲外にある場合に異常信号の出力を行う異常信号出力手段を備えることを特徴とする請求項１ないし請求項５のいずれかに記載の光電センサ。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、光電センサに関する。
【背景技術】
【０００２】
一般に、光電センサにあっては、外乱光や周囲温度の変化やノイズ発生状況の悪化等の外部環境の変動や、内部増幅率にばらつきが生じ、物体存在有無とは無関係に、そのときどきの状況で受光量が変動しがちである。
【０００３】
そこで、かかる受光量の変動が検出結果に与える悪影響を防止するために、複数の受光量データの移動平均値を求め、この移動平均値に基づいて被検出物等の検出が行われている。
【０００４】
ところで、移動平均値の算出に用いられる複数の受光量データのうちのいずれかの受光量データに、外乱光等による突発的に大きなノイズ成分が生じた場合には、かかる大きなノイズ成分の受光量データが含まれた状態で移動平均値が求められてしまい、正確な被検出物等の検出を行うことができない。
【０００５】
そこで、ノイズ成分の大きな受光量データを所定の閾値と比較し、当該受光量データが閾値以上であれば、当該閾値まで受光量データをずらして（置換して）移動平均値を求める構成とすることが考えられた。
【特許文献１】特開２００３−８７１０７公報
【発明の開示】
【発明が解決しようとする課題】
【０００６】
しかしながら、ノイズ成分の大きな受光量データを閾値までずらす場合には、閾値以上の受光量データを閾値まで減少させることができるものの、やはり実際の（ノイズ成分のない）受光量から閾値までの値に相当する誤差を含んだまま移動平均値が求められてしまい、精度の高い被検出物等の検出を行うことができない。
【０００７】
本発明は上記のような事情に基づいて完成されたものであって、高い精度で被検出物の検出が可能な光電センサを提供することを目的とする。
【課題を解決するための手段】
【０００８】
上記の目的を達成するための手段として、請求項１の発明に係る光電センサは、光を投光する投光手段と、
前記投光手段からの光を受光する受光手段と、
前記受光手段にて受光した光の複数の受光量データの移動平均値を算出する演算手段と、
前記演算手段で算出された移動平均値に基づいて被検出物の検出を行う検出手段とを備える光電センサであって、
前記受光手段にて受光した光の各受光量データが所定範囲外にあるかどうかを判定する判定手段を備え、
前記演算手段は、前記判定手段により前記所定範囲外にあると判定された受光量データについては前記移動平均値の算出に用いず、所定範囲内にあると判定された受光量データについては前記移動平均値の算出に用いる構成としたところに特徴を有する。
【０００９】
請求項２の発明は、請求項１に記載のものにおいて、前記所定範囲は、順次得られた複数の受光量データのうち、最も新しい受光量データを基準値とし、当該基準値を含む範囲であるところに特徴を有する。
【００１０】
請求項３の発明は、請求項２に記載のものにおいて、前記投光手段の非投光時における前記受光手段の受光量を測定し、その受光量の最大値と最小値との差から変動量を測定する測定手段を備え、
前記測定手段で測定された変動量の大きさに応じて前記所定範囲が定められるところに特徴を有する。
【００１１】
請求項４の発明に係る光電センサは、光を投光する投光手段と、
前記投光手段からの光を受光する受光手段と、
前記受光手段にて受光した光の複数の受光量データの移動平均値を算出する演算手段と、
前記受光手段から受光量データが出力されるごとに、当該受光量データが所定範囲外にあるかどうかを判定する判定手段と、
前記演算手段で算出された前記移動平均値に基づいて検出を行う検出手段とを備え、
前記演算手段は、前記判定手段により所定範囲内にあると判定された受光量データに基づき前記移動平均値を算出する光電センサであって、
前記判定手段により所定範囲外にあると判定された受光量データが前記所定範囲よりも大きいか又は小さいかを判別する判別手段を備え、
前記演算手段は、前記判別手段により受光量データが前記所定範囲よりも大きいとの判定又は前記所定範囲よりも小さいとの判定が所定回数以上連続しない場合には、前記判定手段により所定範囲外にあると判定された受光量データをその受光量データのままでは前記移動平均値の算出に用いず、前記受光量データが前記所定範囲よりも大きいとの判定又は前記所定範囲よりも小さいとの判定が所定回数以上連続した場合には、前記判定手段により所定範囲外にあると判定された受光量データを前記移動平均値の算出に用いるところに特徴を有する。
【００１２】
請求項５の発明は、請求項４に記載のものにおいて、前記演算手段は、前記受光量データが前記所定範囲よりも大きいとの判定又は前記所定範囲よりも小さいとの判定が前記所定回数以上連続する受光量データのうち、最新の受光量データ以外の受光量データを前記移動平均値の算出に用いないところに特徴を有する。
【００１３】
請求項６の発明は、請求項１ないし請求項４のいずれかに記載のものにおいて、前記判定手段は、前記受光手段から受光量データが出力されるごとに当該受光量データが所定範囲内にあるか否かを判定しており、
前記受光量データが所定回数以上連続して前記所定範囲よりも大きい場合及び所定回数以上連続して前記所定範囲よりも小さい場合を除き、前記受光量データが所定回数以上所定範囲外にある場合に異常信号の出力を行う異常信号出力手段を備える。
【発明の効果】
【００１４】
＜請求項１の発明＞
ノイズ成分の大きな受光量データについて、受光量データを所定の閾値と比較し、受光量データが閾値以上であれば、当該閾値まで受光量データをオフセットして移動平均値を求める構成とした場合には、閾値以上の受光量データを閾値まで減少させることができるものの、やはり実際の（ノイズ成分のない）受光量から閾値までの値に相当する誤差を含んだまま移動平均値が求められてしまう。
しかしながら、本構成によれば、演算手段は、判定手段により所定範囲外にあると判定された受光量データを用いずに移動平均値を算出する。したがって、ノイズ成分の大きな受光量データが移動平均値に含まれないから、精度の高い検出を行うことができる。
【００１５】
＜請求項２の発明＞
本構成によれば、最も信頼性の高い最新の受光量データにより、移動平均値に基づいた検出を行うことができる。
【００１６】
＜請求項３の発明＞
本構成によれば、予め非投光時にサンプリングした値に基づき所定範囲を定めることができる。また、受光量の最大値と最小値との差から変動量を測定し、測定された変動量の大きさに応じた所定範囲が定められるから、例えば、単に係数等を用いて所定範囲を定める場合と比較して、ノイズ成分の範囲に応じた所定範囲が定められる。
【００１７】
＜請求項４の発明＞
所定範囲外の大きさの受光量データが受光手段から出力された場合であっても、必ずしも外乱光等によるノイズによるものとは限らず、実際には本来検出すべき被検出物等であることもありうる。
ここで、一般に、外乱光による受光量の変化は短時間で終了することが多いが、被検出物等による受光量の変化は比較的長時間に亘って生じることが多い。
そこで、本構成では、演算手段は、受光量データが所定範囲よりも大きいとの判定又は小さいとの判定が所定回数以上連続しない場合には、所定範囲外にあると判定された受光量データを移動平均値の算出に用いない。一方、受光量データが所定範囲よりも大きいとの判定又は小さいとの判定が所定回数以上連続した場合には、前記移動平均値の算出に前記判定手段により所定範囲外にあると判定された受光量データを用いることとした。これにより、比較的短時間のうちに生じるノイズによる受光量の変化のみを移動平均値の算出に含ませないことができるから、精度の高い移動平均値に基づいた検出を行うことができる。
【００１８】
＜請求項５の発明＞
受光量データが所定範囲よりも大きいとの判定又は所定範囲よりも小さいとの判定が所定回数以上連続して生じた場合であっても、必ずしも被検出物等による受光量の変化とは限らず、例えば、単に外乱光等によるノイズで長時間に亘って生じる受光量データの変化が長時間生じただけということもありうる。かかる場合であっても、本構成によれば、検出誤りを生じるのが最後の受光量データのみであるから、移動平均値の算出における悪影響を最小限にとどめることができる。
【００１９】
＜請求項６の発明＞
前記受光量データが所定回数以上連続して前記所定範囲よりも大きい場合及び所定回数以上連続して前記所定範囲よりも小さい場合を除き、受光量データが所定回数以上所定範囲外にある場合には異常が生じた可能性が比較的高いが、本構成によれば、かかる異常を異常信号により知らせることができる。
【発明を実施するための最良の形態】
【００２０】
＜実施形態１＞
下に、本発明の光電センサの実施形態１を図面を参照しつつ説明する。
１．光電センサの構成
光電センサは、図１に示すように、ＬＥＤ等からなる投光素子１１と、投光素子１１を投光させる投光回路１２と、ＰＤ（フォトダイオード）等からなり投光された光のうち被検出物からの光を受光する受光素子１３と、受光素子１３からの信号を受ける受光回路１４と、受光回路１４からの信号を増幅させる増幅回路１５と、光電センサへの各種情報入力のための入力部１６と、検出結果等が表示される表示部１７と、検出結果に基づく出力を外部機器へ出力するための出力部１８と、メモリ１９と、それらを制御するＣＰＵ２０とを有している。
【００２１】
メモリ１９は、フラッシュメモリを主体として構成され、順次投受光動作を行うと、新たに受光した光の受光量データ（受光量レベル。図３（ａ）ではＤｎ）がＣＰＵ２０を介して記憶され、この新しい受光量データを含めて少なくとも直近の４回分の受光量データが記憶されるようになっている（図３参照）。そして、新しい受光量データＤｎが得られたときには、受光量データＭ１〜Ｍ４が隣にシフトすることで（図３（ｂ）参照）、順次新しい受光量データに書き換えられ、最も古い受光量データＭ１（４回前の受光量データ）は消去されるようになっている。
【００２２】
また、メモリ１９には、詳しくは後述するが、ＣＰＵ２０により演算された新たに受光した光の受光量データＤｎと、過去にメモリ１９に記憶された受光量データのうち最も新しいものＭ４（基準値）との差Ｚ（＝Ｄｎ−Ｍ４）が記憶されるようになっている。
【００２３】
ＣＰＵ２０は、マイクロプロセッサを主体として構成されており、増幅回路１５により増幅された受光信号をうけると、受光信号に応じた受光量データを順次メモリ１９に記憶させる。
【００２４】
ここで、図２に示すように、記憶された受光量データには、外乱光や増幅時等に生じるノイズ等に起因してばらつきが生じているため、ＣＰＵ２０は、記憶した受光量データのうちから直近の連続する所定回数分（本実施形態では４回分）の受光量データをメモリ１９から読み出し、所定回数分（４回分）の受光量データを加算した値（図３（ａ）ではＭ１＋Ｍ２＋Ｍ３＋Ｍ４）から当該所定回数（４）を除算した値（図３（ａ）では（Ｍ１＋Ｍ２＋Ｍ３＋Ｍ４）／４）である移動平均値を演算により求める。
【００２５】
そして、ＣＰＵ２０は、移動平均値を所定の閾値と比較することで、被検出物の有無等を検出するようになっている。したがって、ＣＰＵ２０が本発明の演算手段及び検出手段に相当する。
【００２６】
ところで、図２に示すように、サンプリングした受光量データのうちに、外乱光などに起因する極端に大きなノイズが含まれていると（図２のサンプリング値が３０の受光量データ）、かかる受光量データが含まれる回数分（４回分）だけ移動平均値にも比較的大きな誤差が生じてしまい（図２の移動平均値のうち、斜線で示した部分）、正確に被検出物の検出等を行うことができない。
【００２７】
そこで、本実施形態では、ＣＰＵ２０は、順次サンプリングされた光の受光量データのうち、前回受光してメモリ１９に記憶された受光量データとの差Ｚが所定量Ａ以上（差が所定範囲外（Ｚ＞Ａ又はＺ＜−Ａ））ある受光量データについては、かかる受光量データをメモリ１９に記憶させないようになっている。なお、所定量Ａ（所定範囲）は、物体検出に先立ち行われる自己ノイズ算出ルーチンにおいて光電センサを投光させずに受光量の最大値と最小値との差（自己ノイズの変動量）を求め、この差（変動量）が所定量Ａ（変動量の大きさに応じた所定量）としてメモリ１９に記憶されるようになっている。
【００２８】
具体的には、ＣＰＵ２０は、受光量データ（図３ではＤｎ）を受信すると、その都度前回（直近に）受光した受光量データ（図３ではＭ４）との差Ｚを演算して求める。更に、ＣＰＵ２０は、受光量データの差Ｚが所定量Ａ以上（差が所定範囲外Ｚ＞Ａ又はＺ＜−Ａ）であるか又は差Ｚが所定量Ａ以下（差が所定範囲内−Ａ＜Ｚ＜Ａ）であるかを判定する（本発明の「判定手段」に相当）。そして、求めた差Ｚが予めメモリに記憶させた所定量Ａ（所定範囲）以下であるときには、図３（ｂ）に示すように、受光量データＤｎをメモリ１９に記憶させるとともに、メモリ１９に記憶されている当該受光量データＤｎを含めた（用いた）受光量データ（受光量データＭ２，Ｍ３，Ｍ４，Ｄｎ）を加算し、この加算した受光量データを所定回数（４回）で除算して移動平均値（（Ｍ２＋Ｍ３＋Ｍ４＋Ｄｎ）/４）を算出する。
【００２９】
一方、求めた差Ｚが予めメモリに記憶させた所定量Ａ（所定範囲）以上であるときには、図３（ｃ）に示すように、受光量データＤｎをメモリ１９に記憶させず（消去して）、メモリ１９に記憶されている他の受光量データ（（所定数−１）回分の受光量データＭ２〜Ｍ４）のみを（受光量データＤｎを用いずに）加算し、この受光量データＤｎを含めずに加算した受光量データを（所定数−１）回で除算して移動平均値（（Ｍ２＋Ｍ３＋Ｍ４）/３）を算出する。
【００３０】
そして、差が所定量以上である受光量データＤｎを含まずに演算した移動平均値（（Ｍ２＋Ｍ３＋Ｍ４）/３）を所定の閾値Ｓと比較することで、被検出物の有無等を検出するようになっている。
【００３１】
ところで、上記構成とすることで、外乱光等のノイズの影響を排除することができるが、所定範囲外の大きさの受光量データには、実際には本来検出すべき被検出物等であるおそれがあり、かかる場合についても受光量データを除外することは望ましくない。ここで、一般に、外乱光による受光量の変化は短時間で終了することが多いが、被検出物等による受光量の変化は比較的長時間に亘って生じることが多い。
【００３２】
そこで、本実施形態では、上記構成に加え、ＣＰＵ２０は、受光量データの差Ｚが所定範囲外Ｚ＞Ａ又はＺ＜−Ａであると判定したものについて、差Ｚが所定範囲よりも大きいか（Ｚ＞Ａ）又は所定範囲よりも小さいか（Ｚ＜−Ａ）を判別しており（本発明の「判別手段」に相当）、所定範囲よりも大きいとの判定又は所定範囲よりも小さいとの判定が所定回数（２回）以上連続した場合には、差Ｚが所定範囲外Ｚ＞Ａ又はＺ＜−Ａであると判定された受光量データＤｎであっても移動平均値の算出に用いるようになっている。
【００３３】
これにより、比較的短時間のうちに生じるノイズによる受光量の変化のみを移動平均値の算出に含ませない（用いない）ことができるから、精度の高い移動平均値に基づいて被検出物の検出を行うことができる。
【００３４】
２．光電センサの制御
次に、光電センサのＣＰＵ２０の処理について説明する。
光電センサのＣＰＵ２０の処理には、検出動作（検出ルーチン）に先立って行われる自己ノイズ算出ルーチンと、被検出物の検出動作時に行われる検出ルーチンとがある。
【００３５】
（１）自己ノイズ算出ルーチン
ＣＰＵ２０は、自己ノイズ検出開始の信号を入力部１６から受けると、受光素子１３にて受光された外乱光等が受光回路１４を介し増幅回路１５にて増幅された受光信号ＤとしてＣＰＵ２０に出力される（Ｓ１１）。
ＣＰＵ２０は、受光信号Ｄが入力されると、予めメモリ１９に記憶されている最大値Ｘ（本実施形態では最大値Ｘ＝０が記憶されているとする）を読み出すとともに（Ｓ１２）、受光信号Ｄの受光量データがメモリ１９に記憶されている最大値Ｘよりも大きいかどうか判定する（Ｓ１３）。
【００３６】
そして、受光信号Ｄの受光量データが最大値Ｘよりも大きければ（Ｓ１３で「Ｙ」）、受光信号Ｄの受光量データを最大値Ｘの受光量データと置き換える（Ｓ１４）。一方、受光信号Ｄの受光量データが最大値Ｘよりも小さければ（Ｓ１３で「Ｎ」）、最大値Ｘの受光量データは置き換えない。
【００３７】
次に、ＣＰＵ２０は、予めメモリ１９に記憶されている最小値Ｙ（本実施形態では最小値Ｙ＝０が記憶されているとする）を読み出すとともに（Ｓ１５）、受光信号Ｄの受光量データがメモリ１９に記憶されている最小値Ｙよりも小さいかどうか判定する（Ｓ１６）。
【００３８】
そして、受光信号Ｄの受光量データが最小値Ｙよりも小さければ（Ｓ１６で「Ｙ」）、最小値Ｙを受光信号Ｄの受光量データに置き換える。一方、受光信号Ｄの受光量データが最小値Ｙよりも大きければ（Ｓ１６で「Ｎ」）、最小値Ｙの受光量データは置き換えない。
【００３９】
そして、自己ノイズ検出に十分な所定時間Ｔのサンプリングが終了すると（Ｓ１８で「Ｙ」）、ＣＰＵ２０は、最大値Ｘと最小値Ｙの差を測定し（Ｓ１９，本発明の「測定手段」に相当）、求めた差（変動量）を所定量Ａとし（Ｓ２０）、メモリ１９に記憶する。そして、物体検出時（検出ルーチン時）には、この所定量Ａに基づき、受光量データが突発的に変動したものかどうかを検出することができる。
【００４０】
（２）検出ルーチン
ＣＰＵ２０は、被検出物の検出開始の信号を入力部１６から受けると、投光回路１２に投光信号を送出する。これにより、投光回路１２が駆動することで投光素子１１から光が出射され、出射された光のうち被検出物にて反射した光が受光素子１３にて受光され、受光回路１４を介し増幅回路１５にて増幅された受光信号がＣＰＵ２０に出力される（Ｓ３１）。
【００４１】
ＣＰＵ２０は、受光信号が入力されると、受光信号を順次メモリ１９に記憶させるとともに、現在受信した受光信号の受光量データＤｎと、メモリ１９に記憶した受光信号の受光量データＭ１〜Ｍ４のうち最後（直近）に記憶した受光信号の受光量データＭ４との差Ｘ（＝Ｄｎ−Ｍ４）を演算する（Ｓ３２）。
【００４２】
そして、求めた差Ｚが自己ノイズ算出ルーチンにて求めた所定量Ａ（設定値）の所定範囲（−Ａ＜Ｚ＜Ａ。即ち、差Ｚの絶対値が設定値Ａの絶対値以下）内に存在するかどうかを判定する（Ｓ３３）。
【００４３】
＜差が所定範囲内（−Ａ＜Ｚ＜Ａ）である場合＞
差Ｚが所定範囲（−Ａ＜Ｚ＜Ａ）内に存在する場合には（Ｓ３３で「Ｙ」）、ＣＰＵ２０は、新たなデータを加えてメモリ１９に記憶された４つの受光信号の受光量データの入れ替え（シフト）を行い（Ｓ３４）、最も古い受光信号の受光量データＭ１を消去し、新しい受光信号の受光量データＤｎを加えて記憶させる。
【００４４】
そして、４つの受光信号の受光量データを加算した値を４で除算して移動平均値Ｄｈ１を求め（Ｓ３５）、移動平均値Ｄｈ１をメモリ１９に記憶するとともに、差Ｚが所定範囲（−Ａ＜Ｚ＜Ａ）内に存在するものについて算出した移動平均値Ｄｈ１であることを示す符号（フラグ）をメモリ１９に記憶する（Ｓ３６）。
【００４５】
＜差が所定範囲外（Ｚ＞Ａ又はＺ＜−Ａ）である場合＞
差Ｚが設定値Ａの所定範囲内に存在しない（所定範囲外である。Ｚ＞Ａ又はＺ＜−Ａ）場合には（Ｓ３３で「Ｎ」）、ＣＰＵ２０は、所定範囲を超える大きさの差（Ｚ＞Ａ＞０）であるか（差の符号が正か）又は所定範囲より小さい差（Ｚ＜−Ａ＜０）であるか（差の符号が負か）どうかが判定される（Ｓ３７）。
【００４６】
＜差が所定範囲を超える（Ｚ＞Ａ＞０）場合＞
差Ｚが所定範囲を超える大きさ（Ｚ＞Ａ＞０）である場合には（Ｓ３７で「Ｙ」）、ＣＰＵ２０は、前回も差Ｚが所定範囲を超える大きさ（Ｚ＞Ａ＞０）であったかどうかを判定する（Ｓ３８）。
【００４７】
そして、前回も差Ｚが所定範囲よりも大きい（Ｚ＞Ａ＞０）ときには（Ｓ３８で「Ｙ」）、受光信号の受光量データの変動が、被検出物に起因する変動である可能性が高いため、差Ｚが設定値の所定範囲内（−Ａ＜Ｚ＜Ａ）に存在する場合と同じ処理を行う（Ｓ３４〜Ｓ３６）。
【００４８】
一方、差が所定範囲を超える大きさ（Ｚ＞Ａ＞０）である場合であって（Ｓ３７で「Ｙ」）、前回の受光信号の差が所定範囲よりも大きくなかった（Ｚ＜Ａ）場合には（Ｓ３８で「Ｎ」）、ＣＰＵ２０は、前回の差が設定値の所定範囲（−Ａ＜Ｚ＜Ａ）内に存在するものであったかどうかを判定する（Ｓ３９）。
【００４９】
前回の差Ｚが設定値の所定範囲（−Ａ＜Ｚ＜Ａ）内に存在する場合には（Ｓ３９で「Ｙ」）、新たなデータを加えずに４つのメモリ１９の入れ替え（シフト）を行う（Ｓ４０，即ち、Ｍ４を記憶していた部分は空白になる）とともに、３つの受光信号の受光量データ（４つめの受光信号の受光量データを除いた３つの受光信号の受光量データ）を加算した値を３で除算して移動平均値Ｄｈ２を求め（Ｓ４１）、移動平均値Ｄｈ２をメモリ１９に記憶するとともに、差Ｚが所定範囲外（Ｚ＞Ａ＞０）に存在するものについて算出した移動平均値Ｄｈ２であることを示す符号（フラグ）をメモリ１９に記憶する（Ｓ４２）。
【００５０】
一方、ＣＰＵ２０は、前回の差Ｚが設定値の所定範囲（−Ａ＜Ｚ＜Ａ）内に存在しない場合（前回はＺ＜−Ａ）には（Ｓ３９で「Ｎ」）、異常が生じているとして、異常信号を出力部１８に出力する（Ｓ４３，本発明の「異常信号出力手段」に相当）とともに、かかる旨を表示部１７に表示させる。
【００５１】
＜差が所定範囲以下（Ｚ＜−Ａ）である場合＞
差Ｚが所定範囲以下である（超える大きさでない）場合（Ｚ＜−Ａ＜０）には（Ｓ３７で「Ｎ」）、ＣＰＵ２０は、前回も差Ｚが所定範囲よりも小さい（Ｚ＜−Ａ＜０）かどうかを判定する（Ｓ４４）。
【００５２】
そして、前回も差Ｚが所定範囲よりも小さい（Ｚ＜−Ａ＜０）ときには（Ｓ４４で「Ｙ」）、受光信号の受光量データの変動が、検出物に起因する変動である可能性が高いため、ＣＰＵ２０は、差Ｚが設定値の所定範囲内（−Ａ＜Ｚ＜Ａ）に存在する場合と同じ処理を行う（Ｓ３４〜Ｓ３６）。
【００５３】
一方、差が所定範囲よりも小さい場合であって（Ｓ３７で「Ｎ」）、前回の受光信号の差が所定範囲よりも小さくなかった（Ｚ＞−Ａ）場合（Ｓ４４で「Ｎ」）には、ＣＰＵ２０は、前回の差が設定値の所定範囲（−Ａ＜Ｚ＜Ａ）内に存在するものであったかどうかを判定する（Ｓ４５）。
【００５４】
前回の差Ｚが設定値の所定範囲（−Ａ＜Ｚ＜Ａ）内に存在する場合には（Ｓ４５で「Ｙ」）、ＣＰＵ２０は、新たなデータを加えずに４つのメモリ１９の入れ替え（シフト）を行う（Ｓ４６，即ち、Ｍ４を記憶していた部分を空白になる）とともに、３つの受光信号の受光量データ（４つめの受光信号の受光量データを除いた３つの受光信号の受光量データ）を加算した値を３で除算して移動平均値Ｄｈ３を求め（Ｓ４７）、移動平均値Ｄｈ３をメモリ１９に記憶するとともに、差Ｚが所定範囲外（Ｚ＜−Ａ＜０）に存在するものについて算出した移動平均値Ｄｈ３であることを示す符号（フラグ）をメモリ１９に記憶する（Ｓ４８）。
【００５５】
一方、ＣＰＵ２０は、前回の差Ｚが設定値の所定範囲（−Ａ＜Ｚ＜Ａ）内に存在しない場合（Ｚ＞Ａ）には（Ｓ４５で「Ｎ」）、異常が生じているとして、異常信号を出力部１８に出力する（Ｓ４３）とともに、かかる旨を表示部１７に表示させる。
【００５６】
＜検出処理＞
ＣＰＵ２０は、求めた移動平均値Ｄｈ（Ｄｈ１，Ｄｈ２，Ｄｈ３）に対して閾値Ｓと比較し（Ｓ４９）、移動平均値Ｄｈが閾値Ｓよりも大きければ被検出物の検出と判断し（Ｓ４９で「Ｙ」，５０）、移動平均値Ｄｈが閾値よりも小さければ被検出物の検出がなされなかったと判断する（Ｓ４９で「Ｎ」，５１）。
【００５７】
３．本実施形態の効果
ノイズ成分の大きな受光量データについて、受光量データを所定の閾値と比較し、受光量データが閾値以上であれば、当該閾値まで受光量データをオフセットして移動平均値を求める構成とした場合には、閾値以上の受光量データを閾値まで減少させることができるものの、やはり実際の（ノイズ成分のない）受光量から閾値までの値に相当する誤差を含んだまま移動平均値が求められてしまう。
【００５８】
しかしながら、本実施形態によれば、ＣＰＵ２０（演算手段、判定手段）により所定範囲外にあると判定された受光量データを（その受光量データのままでは）用いずに移動平均値Ｄｈを算出する。したがって、ノイズ成分の大きな受光量データが移動平均値Ｄｈに含まれないから、高い精度で被検出物の検出を行うことができる。
【００５９】
また、自己ノイズ算出ルーチンにおいて受光量の最大値と最小値との差から変動量を測定し、測定された変動量に基づいて所定範囲（−Ａ＜Ｚ＜Ａ）が定められるから、例えば、単に係数等を用いて所定範囲を定める場合と比較して、ノイズ成分の範囲に応じた所定範囲が定められる。
【００６０】
さらに、本実施形態では、ＣＰＵ２０（演算手段）は、受光量データが所定範囲よりも大きい（Ｚ＞Ａ）との判定又は小さい（Ｚ＜−Ａ）との判定が所定回数（２回）以上連続しない場合には、所定範囲外（Ｚ＞Ａ，Ｚ＜−Ａ）にあると判定された受光量データを移動平均値Ｄｈの算出に用いない。一方、受光量データが所定範囲よりも大きい（Ｚ＞Ａ）との判定又は小さい（Ｚ＜−Ａ）との判定が所定回数以上連続した場合には、移動平均値Ｄｈの算出に所定範囲外にあると判定された受光量データを用いることとした。これにより、比較的短時間のうちに生じるノイズによる受光量の変化のみを移動平均値の算出に含ませないことができるから、精度の高い移動平均値に基づいた検出を行うことができる。
＜他の実施形態＞
本発明は上記記述及び図面によって説明した実施形態に限定されるものではなく、例えば次のような実施形態も本発明の技術的範囲に含まれ、さらに、下記以外にも要旨を逸脱しない範囲内で種々変更して実施することができる。
【００６１】
（１）メモリ１９に記憶される所定量Ａは、被検出物の検出前に行う自己ノイズ算出ルーチンにより設定されるものでなくてもよい。例えば、入力部１６から作業者が所望の値を所定量Ａとして入力するようにしてもよい。
（２）ＣＰＵ２０による受光量データが所定範囲よりも大きいとの判定又は所定範囲よりも小さいとの判定が「所定回数」以上連続するかの当該「所定回数」は、２回に限らず３回以上であってもよい。
（３）受光量データＤｎとの差を比較する過去の受光量データは直前（前回）のものに限らず、それ以前のものであってもよい。
（４）移動平均値の算出は、上記実施形態の受光量データの数（３又は４）以外の受光量データの数を加算及び除算するものであってもよい。
【００６２】
（５）上記実施形態では、自己ノイズ算出ルーチンにおいてＣＰＵ２０が測定した受光量の最大値と最小値との差（自己ノイズの変動量）を所定量Ａとしたが、例えば、変動量の大きさに所定の係数を与えた値を所定量Ａとし、当該変動量が大きくなれば所定量Ａを大きくし、逆に変動量が小さくなれば所定量Ａを小さく（変動量の大きさに応じて所定量を設定）するようにしてもよい。なお、最大値と最小値との差に所定の係数を与えた値を変動量とし、この変動量を基準として所定量Ａを求めてもよい。
【図面の簡単な説明】
【００６３】
【図１】実施形態１の光電センサの電気的構成を示すブロック図
【図２】サンプリングした受光量データについての移動平均値を示す図
【図３】新しい受光量データがメモリに記憶されることを説明する図
【図４】被検出物の検出前の自己ノイズ検出時におけるＣＰＵの処理を示すフローチャート
【図５】被検出物の検出時のＣＰＵの処理を示すフローチャート
【符号の説明】
【００６４】
１１…投光素子
１２…投光回路
１３…受光素子
１４…受光回路
１５…増幅回路
１６…入力部
１７…表示部
１８…出力部
１９…メモリ
２０…ＣＰＵ（判定手段、演算手段、判別手段、測定手段、検出手段、異常信号出力手段）     
Ｄ…受光信号
Ｄｎ…受光量データ
Ｄｈ（Ｄｈ１，Ｄｈ２， Ｄｈ３）…移動平均値
Ａ…所定量（変動量）
【図１】
2006245685.tif 000003
【図２】
2006245685.tif 000004
【図３】
2006245685.tif 000005
【図４】
2006245685.tif 000006
【図５】
2006245685.tif 000007