以下、この発明の実施の形態について図面を参照しながら詳細に説明する。なお、図中同一または相当部分には同一符号を付し、その説明は繰り返さない。
(実施の形態1)
図1は、本発明の実施の形態1に従う多光軸光電センサの外観構成図である。
図1を参照して、本発明の実施形態に従う多光軸光電センサ100は、投光センサヘッド1と、受光センサヘッド2と、これらの送受信用に用いられる通信用ケーブル101とを含む。また、図示しないが、これら投光センサヘッド1および受光センサヘッド2は、通信用ケーブル101により外部設定器および上位装置等と接続されて、種々の処理が実行される。
図2は、本発明の実施形態1に従う多光軸光電センサの本体部(センサヘッド)の概略ブロック構成図である。
図2を参照して、投光センサヘッド1は、投光素子、電流制御回路および光軸選択回路で構成されるn個の投光器11(111〜11n)と、それら投光器11の駆動信号等を生成するCPU12と、受光センサヘッド2との通信並びに外部設定器3との通信を行なうための通信回路13と、上位装置(本例ではPLC)との通信を行なうためのI/Oインターフェース14とを含む。
また、受光センサヘッド2は、受光素子を有する光電変換部、受光素子からの受光信号を増幅するプリアンプおよび光軸選択回路で構成される受光器21(211〜21n)と、メインアンプ、フィルタ(コムフィルタ)およびA/D変換器で構成される信号処理部22と、受光器21の駆動信号等を生成すると共に信号処理部22からの信号に基づいて検出判定のための演算を行なうCPU23と、投光センサヘッド1との通信並びに外部設定器3との通信を行なうための通信回路24と、上位装置(この例ではPLC)との通信を行なうためのI/Oインターフェース25とを含む。
図3は、本発明の実施の形態に従う受光センサヘッド2の概略ブロック構成図である。
図3を参照して、各投光センサヘッド2は、光電変換部21a、プリアンプ21b及び光軸選択回路21cを含む投光器21と、プリアンプ21からの受光信号を増幅するメインアンプ22aと、増幅された受光信号の中から検出光による受光信号成分を抽出するフィルタ22bと、フィルタリング後の受光信号をA/D変換器22cを通して受信し、この受光信号レベルに基づき検出判定処理を行なうCPU23とを主体として構成される。
CPU23は、内部メモリを有し、検出判定処理を実行するための受光信号レベルのしきい値(以下、受光判定しきい値とも称する)の設定値は、外部設定器3を介して指定され、この内部メモリに格納される。この受光判定しきい値と信号処理部22からの受光信号値(SI4)との比較を行なうことにより、検出判定処理を実行する。また、CPU23からはメインアンプ22aにおける受光信号増幅率を規定するための信号(SI5)が出力される。すなわち、本発明の実施の形態では、この信号(SI5)に基づいて、メインアンプ22aにおいては、受光信号増幅率を設定することが可能とされている。尚、この受光信号増幅率も、外部設定器3を介して設定されるものであり、その設定値はCPU23の内部メモリに格納される。また、CPU23からは、トランジスタ(図示せず)を有する光軸選択回路21cを介して光電変換部21における受光素子を選択的に駆動するための光軸選択信号(SI6)と、受光信号の有効化(ゲート開)を指示するゲート制御信号(SI7)とが出力されるようになっている。
図4は、本発明の実施の形態に従う多光軸光電センサの投受光タイミングを説明する図である。
本例においては、一例として6個の投光器および受光器の投受光タイミングが示される。ここで、一つのパルス波形は、投光および受光のタイミングを示している。すなわち、投受光タイミングは、各投光器および受光器が投受光動作を実行する投受光期間に相当する。
図4に示されるように、配列された一端側から他端側に対して順次投光素子から投光され、対応する受光素子により順次受光される。点線で示されているのは、受光サンプリングであり、後述する相互干渉判定を実行するために受光素子のみが受光するタイミングである。そして、基本的に周期Tで投受光動作すなわち投光および受光が繰り返される。尚、本例では、投光期間の直前のみの受光サンプリングと、投光期間の直後のみの受光サンプリングとを、1周期毎に交互に繰り返しているが、これは、センサの応答時間を短縮するためである。応答速度を問わずに、干渉発生予知の速さを重視するのであれば、1周期毎に投光期間の直前と直後の両方で受光サンプリングすることも可能である。尚、同図中、縦の点線で挟まれる領域“I”は自己診断やセンサ間通信等に費やされる期間を示している。また、図中一連の投受光動作(全光軸)における投受光動作が実行される期間である投受光動作期間が示されている。なお、本実施の形態においては、全光軸における投受光動作が実行される一連の周期を投受光周期とも称することとする。
次に、図5のフローチャート図を用いて上述の相互干渉回避を実現するための本発明の実施形態に従う多光軸光電センサの動作内容全体について説明する。
図5に示されるように、本発明の実施形態に従う多光軸光電センサは、電源が投入される(ステップS1)と、まず、センサヘッド及び外部設定器のメモリの初期化等の起動処理(ステップS2)が実行される。
起動処理が終了すると、次いで検出処理(ステップS3)が実行される。この検出処理では、投受光のタイミング調整処理(ステップS4)と、投受光処理(ステップS5)と、自己診断処理(ステップS6)と、投光センサヘッド1、受光センサヘッド2および外部設定器3との間の通信又は受光センサヘッド2と他の多光軸光電センサ(多光軸光電センサが併設されるような場合)の受光センサヘッドとの通信を行なう通信処理(ステップS7)とを繰り返すことにより実行される。
尚 、本発明の実施の形態においては、通信処理(ステップS7)の終了後に、異常有無確認(ステップS8)と、受光判定しきい値、投光量、受光信号増幅率等の設定を行なうための設定モードに移行するか否かの確認が行なわれる(ステップS11)。ステップS8で行なわれる異常有無確認では、ステップS6の自己診断についての異常有無確認と、ステップS7の通信処理についての異常確認と、ステップS4のタイミング調整が所定回数以上連続して行なわれていないか(すなわち、繰り返しタイミング調整を行なっても干渉を回避できていない場合)の確認が行なわれている。これらに異常が認められたときには(ステップS8においてYES)、異常モードへと移行し(ステップS9)、センサの動作が一時的にロックアウトされる。
また、本例では、外部設定器3からの所定の設定開始信号の入力があったときに(ステップS11においてYES)、設定モード(ステップS13)へと移行する。
次に、図6のフローチャート図を用いてステップS5に示される投受光処理の詳細について説明する。尚、同図には、投光センサヘッド1における処理(ステップS20,S21)と、受光センサヘッド2における処理(ステップS22〜S29)とが並列的に示されている。
なお、同フローチャート図には示されていないが、投受光処理に際しては、先ず、投光センサヘッド1においては、CPU12において、内部メモリから投光量を規定するための設定値(投光電流データ)が読み込まれる。一方、受光センサヘッド2においては、先ず、CPU23において、内部メモリから受光信号増幅率、及び受光判定しきい値の設定値が読み込まれ、これにより、図3に示したCPU23からの受光信号増幅率を規定するための信号(SI5)及び受光判定しきい値が決定される。
次いで、投光センサヘッド1及び受光センサヘッド2において、通信用ケーブル101を通じて、投光センサヘッド1と受光センサヘッド2との間の同期をとるための同期通信が行なわれる(ステップS20,S22)。
そして、受光センサヘッド2においては、同期通信に基づいて、相互干渉のタイミング等も含めた投受光のパターンが決定される(ステップS23)。
次いで、光軸の数だけループ処理が行なわれる。投光センサヘッド1においては、先に決定された投光量と規定の投光数を前提として、各投光器11を順次選択的に駆動させることにより、各投光器11からの投光が行なわれる(ステップS21)。これが全光軸分終了するまで繰り返される。
一方、受光センサヘッド2においては、先に決定された受光信号増幅率を前提として、各受光器21の受光サンプリングゲートを各々2回分(オンオフ判定用1回+干渉チェック用1回)、選択的に順次開放する。そして、各受光器21からの受光信号を順次取り込む。受光信号は、A/D変換器22cによりA/D変換されて、CPU23に取り込まれる。
CPU23では、取り込まれた受光信号と、先に決定された受光判定しきい値とを比較することにより、受光判定処理(各光軸における受光有無の判定)を実行する(ステップS24)。より詳細には、この判定処理は、投光器からの投光に同期した1回分の受光サンプリングにより得られる受光信号を、それぞれ受光判定しきい値と比較し、しきい値を越える場合にはオン認定、しきい値を越えない場合にはオフ認定として、受光判定を行なう。尚、このとき、同時に、干渉チェック用の受光サンプリングにより得られる受光信号についてもオンオフ認定が行なわれる。この結果は、後述する相互干渉判定処理(ステップS29)で使用される。
尚、この例では、ライトカーテンを用途としているため、受光判定処理(ステップS24)において、何れかの光軸において受光が確認されなかったとき(オフ認定のとき)いいかえるならば遮光状態の際には、それに応じた所定動作(例えば、制御対象機器の停止信号の生成)が実行される(出力制御処理、ステップS25)。また、この多光軸光電センサがエリアセンサを用途とする場合には、受光判定処理(ステップS24)において、受光が確認されなかった光軸に基づいて、それに応じた所定動作(例えば、物体侵入エリアを特定するための信号生成)が実行される(出力制御処理、ステップS25)。尚、これら受光判定処理後の出力制御処理については当業者にとって自明であるからここでの詳細な説明は省略する。
ステップS24およびS25で示されるループ処理が終了されると、次いで、投受光ループ処理の結果に基づく補助出力が生成される(ステップS28)。この補助出力は、PLC等の上位機器に、センサのオンオフ認定の状態を複数周期毎に通知するためのものである。
次に、ステップS29に示される相互干渉判定処理が実行される。
以下、本発明の実施の形態に従う相互干渉判定処理について説明する。
図7は、本発明の実施の形態に従う多光軸光電センサが有する投光器および受光器について説明する図である。
ここでは、簡易のため12個の投光器および受光器を用いて説明する。図7に示されているように投光器および対応する受光器について番号が付されている。なお、番号の小さい下から上すなわち配列された一端側から他端側へと順次、投光器および受光器が動作するものとする。また、本例においては、12個の投光器および受光器を4分割している。そして、第1番目から第3番目の投光器および受光器の領域C3と、第1番目から第6番目の投光器および受光器の領域C4と、第7番目から第12番目の投光器および受光器の領域C2と、第10番目から第12番目の投光器および受光器の領域C1と、第1番目から第9番目の投光器および受光器の領域C5と、第4番目から第12番目の投光器および受光器の領域C6とが示されている。
図8は、本発明の実施の形態に従う多光軸光電センサにおいて、投受光周期のずらしを説明する図である。なお、ここでは、簡略のため図4で示したように全光軸の投受光タイミング等をまとめた投受光動作期間について示している。
本発明では、検知範囲および場所に応じて適切に投受光周期を変更することにより、干渉を検知(予知)しても動作を停止等させることなく、適切に当該干渉を回避して、動作を継続させるように構成している。なお、本実施の形態においては、連続して複数回相互干渉が発生している場合に外乱光の影響を受けていると判別し、所定の動作を実行するものとする。
そのための構成として、本発明の多光軸光電センサにおいては、図に示されるように、各光軸(この例では(a)〜(f)の6個のバリエーションを示す)においては、図4で説明したように投受光タイミングの直前あるいは直後の非投光期間に受光サンプリングを行なって入光有無を判定することにより、干渉を識別して検知するようにしている。
図8(a)においては、投光および受光の投受光周期T1が示されているが、外乱光の影響を受けて、投受光動作期間の全期間のうちの後半期間において相互干渉が発生している。より具体的には、後半期間をさらに前半部分および後半部分の2つに分けると、後半期間のうちのさらに後半部分に相互干渉が発生している。たとえば図7で示される番号の大きい受光器すなわち領域C1の受光器で相互干渉が検知されたような場合を示している。
この場合においては、受光サンプリングによる入光が連続して確認された場合には、次回の同期タイミングである自身の投受光タイミングを所定期間T1よりもタイミング期間α1分少し早めるなら隣接する他の多光軸光電センサの投受光タイミングと重ならないようにすることができる。具体的には、次の投受光タイミングの周期を投受光周期T2(T1>T2)に変更する。これにより、以降の投受光タイミングの周期の位相が時間的に前にずらされるから、相互干渉を未然に防ぐことができるとともに、動作を停止等させることなくセンサ動作を継続させることができる。但し、その後の投受光タイミングの周期T1はそのまま維持される。
図8(b)においては、外乱光の影響を受けて、投受光動作期間の後半期間すなわち中央付近以降から後半部分において相互干渉が発生している。具体的には、たとえば図7で示される番号の後ろ後半部分の受光器すなわち領域C2の受光器で相互干渉が検知されたような場合を示している。
この場合においては、受光サンプリングによる入光が連続して確認された場合には、次回の同期タイミングである自身の投受光タイミングを所定期間T1よりもタイミング期間α2分少し早めるなら隣接する他の多光軸光電センサの投受光タイミングと重ならないようにすることができる。具体的には、次の投受光タイミングの周期を投受光周期T3(T1>T2>T3)に変更する。これにより、以降の投受光タイミングの周期の位相が時間的に前にずらされるから、相互干渉を未然に防ぐことができるとともに、動作を停止等することなくセンサ動作を継続することができる。ただし、その後の投受光タイミングの周期T1はそのまま維持される。
図8(c)においては、投光および受光の周期T1が示されているが、外乱光の影響を受けて、投受光動作期間の前半期間において相互干渉が発生している。より具体的には、前半期間をさらに前半部分および後半部分の2つに分けると、前半期間のうちの前半部分に相互干渉が発生している。具体的には、たとえば図7で示される番号の小さい受光器すなわち領域C3の受光器で相互干渉が検知されたような場合を示している。
この場合においては、受光サンプリングによる入光が連続して確認された場合には、次回の同期タイミングである自身の投受光タイミングを所定期間T1よりもタイミング期間β1分少し遅くするなら隣接する他の多光軸光電センサの投受光タイミングと重ならないようにすることができる。具体的には、次の投受光タイミングの周期を投受光周期T4(T1<T4)に変更する。これにより、以降の投受光タイミングの周期の位相が時間的に後にずらされるから、相互干渉を未然に防ぐことができるとともに、動作を停止等させることなくセンサ動作を継続させることができる。但し、その後の投受光タイミングの周期T1はそのまま維持される。
図8(d)においては、外乱光の影響を受けて、投受光動作期間の前半期間すなわち前半部分から中央部分付近において相互干渉が発生している。具体的には、たとえば図7で示される番号の前の前半部分の受光器すなわち領域C4の受光器で相互干渉が検知されたような場合を示している。
この場合においては、受光サンプリングによる入光が連続して確認された場合には、次回の同期タイミングである自身の投受光タイミングを所定期間T1よりもタイミング期間β2分遅くするなら隣接する他の多光軸光電センサの投受光タイミングと重ならないようにすることができる。具体的には、次の投受光タイミングの周期を投受光周期T5(T1<T4<T5)に変更する。これにより、以降の投受光タイミングの周期の位相が時間的に後にずらされるから、相互干渉が未然に防ぐことができるとともに、動作を停止等することなくセンサ動作を継続することができる。ただし、その後の投受光タイミングの周期T1はそのまま維持される。
図8(e)においては、外乱光の影響を受けて、投受光動作期間の前半期間すなわち前半部分から中央部分付近を越えて、上述した後半期間の前半部分ぐらいまでにおいて相互干渉が発生している。具体的には、たとえば図7で示される領域C5の受光器で相互干渉が検知されたような場合を示している。
この場合においては、受光サンプリングによる入光が連続して確認された場合には、次回の同期タイミングである自身の投受光タイミングを大幅に遅くするたとえば所定期間T1よりもタイミング期間β3分遅くするならなら隣接する他の多光軸光電センサの投受光タイミングと重ならないようにすることができる。具体的には、次の投受光タイミングの周期を周期T6(T1<T4<T5≦T6)に変更する。これにより、以降の投受光タイミングの周期の位相が時間的に後にずらされるから、相互干渉を未然に防ぐことができるとともに、動作を停止等することなくセンサ動作を継続することができる。ただし、その後の投受光タイミングの周期T1はそのまま維持される。
図8(f)においては、外乱光の影響を受けて、投受光動作期間の前半期間すなわち上述した前半期間の後半部分から後半期間全てにおいて相互干渉が発生している。具体的には、たとえば図7で示される領域C6の受光器で相互干渉が検知されたような場合を示している。
この場合においては、受光サンプリングによる入光が連続して確認された場合には、次回の同期タイミングである自身の投受光タイミングを大幅に早めるたとえば所定期間T1よりもタイミング期間α3分早めるなら隣接する他の多光軸光電センサの投受光タイミングと重ならないようにすることができる。具体的には、次の投受光タイミングの周期を投受光周期T7(T1>T2>T3≧T7)に変更する。これにより、以降の投受光タイミングの周期の位相が時間的に前にずらされるから、相互干渉を未然に防ぐことができるとともに、動作を停止等することなくセンサ動作を継続することができる。ただし、その後の投受光タイミングの周期T1はそのまま維持される。
なお、上述の当該タイミング期間は全光軸のうちの外乱光の影響を受けた光軸数を基準として設定することができる。具体的には、期間(次の光軸における投受光処理までの時間)×外乱光の影響を受けた光軸数として設定することも可能であるし、さらには、数光軸数毎の期間に設定することも可能である。なお、外乱光の影響を受けた光軸数が多いほど、上記のタイミング期間の幅は大きくなり、次回の同期タイミングの開始を変更する期間も大きく変化することになる。
図9は、本実施の形態に従う相互干渉データ処理を説明するフローチャート図である。
図9に示されるように、まず、干渉が発生しているかいないかが判断される(ステップSP1)。次に、ステップSP1において干渉があると判断された場合には、次のステップSP2に進む。ステップSP2において、投受光動作期間の全期間において前半期間あるいは後半期間において干渉が生じているかが判断される。いいかえると、順次動作する複数の受光器の前半領域あるいは後半領域において干渉が生じているかが判断される。なお、両方に干渉が生じている場合には、より期間の長い方の期間において干渉が生じていると判断するものとする。
ステップSP2において、前半期間において干渉があると判断された場合には、次に検知幅が小さいかすなわち前半期間のどの部分で干渉が生じているかが判断される(ステップSP3)。ステップSP3において、検知幅(外乱光が検出される光軸数に相当)が小さいと判断される場合すなわち前半期間をさらに前半部分および後半部分に分けた場合に前半部分と判断される場合には次の周期を投受光周期T4に設定する。
一方、ステップSP3において、検知幅が小さくないと判断される場合には、ステップSP5に進む。ステップSP5において、検知幅が特大であるかどうかが判断される。検知幅が特大であるかどうかは、検知幅が前半期間全てを含んでいる場合が考えられる。この場合には、ステップSP7において、次の周期を投受光周期T6に設定する。一方、検知幅が特大ではないと判断される場合には、次の周期を投受光周期T5に設定する(ステップSP6)。
一方、ステップSP2において、後半期間において干渉があると判断される場合には、次に検知幅が小さいかどうかすなわち後半期間のどの部分で干渉が生じているかが判断される(ステップSP8)。ステップSP8において、検知幅が小さいすなわち後半期間をさらに前半部分および後半部分に分けた場合に後半部分と判断される場合には次の周期を投受光周期T2に設定する。一方、ステップSP8において、検知幅が小さくないと判断される場合には、ステップSP10に進む。ステップSP10において、検知幅が特大であるかどうかが判断される。検知幅が特大であるかどうかは、検知幅が後半期間全てを含んでいる場合が考えられる。この場合には、次の周期を投受光周期T7に設定する。一方、検知幅が特大ではないと判断される場合には、次の周期を投受光周期T3に設定する。
このように、本実施形態では、各光軸において、投受光タイミングの直前あるいは直後の非投光期間中に受光サンプリングを行ない、直前あるいは直後のそれぞれのオンオフ認定結果に基づいて、その後の投受光周期を適宜前後へ移動させているため、干渉を検知もしくは予知しても動作を停止等させることなく、適切に当該干渉を回避して、動作を継続させることを可能としている。
また、本実施の形態により相互干渉の原因すなわち外乱光となる他の多光軸光電センサの投受光周期に対して常にわずかに先あるいは後のタイミングで投受光が行なわれる関係となる状態を保つことができるので、複数の多光軸光電センサが存在する場合において、互いに平均的な周期をある程度一定に保つことができ、相互干渉を生じる可能性を低くすることができる。たとえば、複数の多光軸光電センサがランダムに周期を変化させた場合、周期が変化した直後に他の多光軸光電センサと相互干渉が生じる場合があるが、本実施の形態の構成により平均的にほぼ同じ周期で、異なる位相で動作させることにより相互干渉が発生する可能性を低くすることができる。
また、本実施の形態においては、図7で示されたように配列された投光器および受光器を4分割するとともに、複数の領域に分けて、外乱光の入光がいずれの領域で確認されたか否かに基づいて、投受光周期を変更する場合について説明してきたが、これに限られず、さらに複数の領域に分割して、さらに複数の投受光周期の中から適切な投受光周期に設定するように設計することも可能である。
さらに、外乱光の入光の影響を受けた光軸位置に基づいて、投受光周期を変更することも可能である。また、順次、投受光動作を行なう際の連続する光軸、すなわち互いに隣接する連続する光軸において、外乱光の入光が順次連続して確認された光軸数に応じた期間、タイミング期間の変化量を変更することも可能である。
(実施の形態2)
上記の実施の形態においては、全ての周期において、一連の投受光動作を繰り返す方式について説明してきた。本例においては、ある一部の周期においては、投光処理を実行しない外乱光処理すなわち相互干渉判定処理のみを行なう、あるいは投受光処理を行なわず、他の処理を実行する方式について説明する。
図10は、本発明の実施の形態2に従う投受光周期を説明する図である。
図10を参照して、具体的には、複数回(本例においては2回)投受光処理を実行するものとし、一部の周期においては、外乱光処理のみを行なう、あるいは投受光処理を行なわず、他の処理を実行するものとする(図10においては、斜線部分)。そして、受光処理のみを行なう周期において、上述した相互干渉が発生しているか否かの相互干渉判定処理のみを実行するものとする。ここでは、一例として2回の投受光処理の周期の後に1回相互干渉判定処理あるいは他の処理のための周期が設けられている。
より具体的には、図4で説明した多光軸光電センサの投受光タイミングにおいて、各光軸において、2回受光サンプリングが実行されていたものを1回の受光サンプリングに変更する。そして、通常の周期においては、オンオフ判定のための受光判定処理が実行されるものとする。そして、一部の周期においては、相互干渉判定のための受光判定処理が実行されるものとする。すなわち、相互干渉判定処理のための受光サンプリングは、上述した一部の周期でのみ実行される。
相互干渉判定処理については、上述した図8および図9で説明した方式に従って実行されるのでその詳細な説明は繰り返さない。
なお、上記の実施の形態においては、連続して複数回の周期において、相互干渉が生じている場合に投受光周期を調整する方式について説明してきたが、1回の周期において相互干渉が生じている場合に投受光周期を調整することも可能である。
一般的に、上述した相互干渉判定処理は、毎周期毎に実行することにより、その精度を高くすることは可能であるが、実際上それほど頻繁に相互干渉が生じる可能性は高くないと考えられる。
したがって、ある一定間隔すなわち一部の周期において、相互干渉判定処理のための周期を設けることにより、優先されるべきセンサのオンオフ判定のための受光判定処理に重点をおくことができる。すなわち、高速かつより高精度な判定処理が可能となる。
また、一部の周期において、相互干渉判定処理のための周期を設けることについて説明したが、かかる周期において他の機能を実行するための周期とすることも可能である。たとえば、図4で説明した自己診断等を実行するための領域“I”を当該周期に割り当てて実行することも可能である。
(実施の形態3)
図11は、本発明の実施の形態3に従う投受光周期を説明する図である。
図11を参照して、たとえば、上段の投受光周期が本実施の形態に従う多光軸光電センサとし、下段の投受光周期が外乱光となる他の多光軸光電センサの投受光周期とする。
実施の形態2では、ある一部の周期において、投光処理を実行しない外乱光処理すなわち相互干渉判定処理のみを行なう、あるいは投受光処理を行なわず、他の処理を実行する方式について説明したが、特に本実施の形態においては、その周期がランダム的に設けられているものとする(図11においては、斜線部分)。
たとえば、受光処理のみを行なう周期がなければ、すなわち全ての周期において投受光処理を行なう場合であれば、全て他のたとえば隣接する多光軸光電センサの投受光周期と重なりあうことになるので、相互干渉は全ての周期において互いに生じることになる。
しかしながら、本例の如く、多光軸光電センサの投受光周期の複数回について、1回投光動作を休止するものとする。そして、複数回の回数は、複数回の周期単位でランダムな回数に設定されるものとする。これにより、他の多光軸光電センサとの相互間で生じる相互干渉の割合を格段に減少させることができる。なお、本方式は、上記の実施の形態1および2に対して当然に適用可能である。
また、投光動作を休止する周期を除いて少なくとも2回以上にわたり、連続して投受光周期において遮光が確認された場合には、上述した出力制御処理により外部制御機器の動作停止信号を出力するようにすることも可能である。
なお、前述の相互干渉判定処理に基づく投受光周期の変更により繰り返しタイミング調整を行なっても干渉を回避できていない場合、すなわち外乱光が所定回数以上連続して検出されるような場合には、誤動作する危険性が高い状態にあると考えられるので、外部制御機器の動作停止信号を出力するようにすることも可能である。
今回開示された実施の形態はすべての点で例示であって制限的なものではないと考えられるべきである。本発明の範囲は上記した説明ではなくて特許請求の範囲によって示され、特許請求の範囲と均等の意味および範囲内でのすべての変更が含まれることが意図される。