(57)【要約】【課題】物体検知個数を制御要素として含む制御仕様を別途カウンタを使用せずに実現可能としたセンサを提供すること。【解決手段】検出対象領域から物体有無と相関のある特徴量を取得する特徴量取得手段と、前記特徴量取得手段により取得された特徴量と所定のしきい値との比較により物体の有無を判定する判定手段と、前記判定手段による判定結果に基づいて物体の個数をカウントするカウント手段と、前記判定手段による判定結果に対応する出力動作を行う第１の出力手段と、前記カウント手段によるカウント結果に対応する出力動作を行う第２の出力手段と、を具備する。【選択図】　図８
2004102528.tif 000002
【特許請求の範囲】
【請求項１】
検出対象領域から物体有無と相関のある特徴量を取得する特徴量取得手段と、
前記特徴量取得手段により取得された特徴量と所定のしきい値との比較により物体の有無を判定する判定手段と、
前記判定手段による判定結果に基づいて物体の個数をカウントするカウント手段と、
前記判定手段による判定結果に対応する出力動作を行う第１の出力手段と、
前記カウント手段によるカウント結果に対応する出力動作を行う第２の出力手段と、
を具備する、ことを特徴とするセンサ。
【請求項２】
前記第２の出力手段における出力動作が、前記カウント手段によるカウント結果に対応する表示を所定の表示器に行うものである、ことを特徴とする請求項１に記載のセンサ。
【請求項３】
前記カウント手段がアップカウント動作又はダウンカウント動作を行うものである、ことを特徴とする請求項２に記載のセンサ。
【請求項４】
前記カウント手段がアップカウント動作とダウンカウント動作との双方を実行可能とされ、それらの動作のいずれかが、与えられた動作指定信号の内容により選択される、ことを特徴とする請求項２に記載のセンサ。
【請求項５】
前記第２の出力手段における出力動作が、前記カウント手段によるカウント値が所定の目標カウント値に達したときにカウントアップ信号を出力する動作である、ことを特徴とする請求項１に記載のセンサ。
【請求項６】
前記第２の出力手段における出力動作が、前記カウント手段によるカウント結果と関連付けて、そのカウント結果に対応するワークの状態レベルを出力するものである、ことを特徴とする請求項１に記載のセンサ。
【請求項７】
前記カウント結果とそのカウント結果に対応するワークの状態レベルとが関連付けて記憶され、かつそれらが任意に読み出し可能とされている、ことを特徴とする請求項６に記載のセンサ。
【請求項８】
前記第２の出力手段における出力動作が、前記カウント手段によるカウント結果を、予め設定された複数のしきい値候補又はしきい値範囲内に存在する全てのしきい値候補の各々について出力するものである、請求項１に記載のセンサ。
【請求項９】
予め設定されたサンプルワーク数と一致するカウント値を有するしきい値候補を検索すると共に、こうして検索されたしきい値候補のひとつに基づいて実際のしきい値が自動的に決定される、ことを特徴とする請求項８に記載のセンサ。
【請求項１０】
検出対象領域から物体有無と相関のある特徴量を取得する特徴量取得手段と、
前記特徴量取得手段により取得された特徴量と所定のしきい値との比較により物体の有無を判定する判定手段と、
前記判定手段による判定結果に基づいて物体の個数をカウントするカウント手段と、
第１の出力モードにあっては前記判定手段による判定結果に対応する出力動作を、第２の出力モードにあっては前記カウント手段によるカウント結果に対応する出力動作を行う出力手段と、
前記出力モードを切り換える手段と、
を具備する、ことを特徴とするセンサ。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
この発明は、検出対象領域から取得された特徴量と所定のしきい値との比較により物体の有無を判定するセンサに係り、特に、判定結果をカウントすると共に、カウント結果に対応して様々な態様の出力動作を可能とした新規なセンサに関する。
【０００２】
【従来の技術】
従来の検出物体の個数をカウントするシステムとしては、次のようなものが知られている。
【０００３】
このシステムには、センサとカウンタとからなる２個の機器が含まれている。それらの機器のそれぞれには、通常、７セグメント表示器等のデジタル表示器が設けられている。このようなシステムにおいては、センサは対象物体の検知を行い、有無状態をカウンタへと出力する。カウンタはセンサからの入力状態の変化から対象物体の個数カウントを行い、個数カウント値が予め設定された数量に達したときには、ＰＬＣやＰＣ等の上位システムにその旨の信号出力を行う。このとき、センサには検知した特徴量に相当する数値がデジタル表示され、カウンタにはカウント値に相当する数値がデジタル表示される（例えば、特許文献１、特許文献２参照）。
【０００４】
【特許文献１】
特開平１１−７６００号公報
【特許文献２】
特開２０００−１４９６１５号公報
【０００５】
【発明が解決しようとする課題】
しかしながら、このような従来システムにあっては、センサとカウンタとからなる２個の機器を使用せねばならないことから、省スペース化や低コスト化が難しいと言う問題点が指摘されている。
【０００６】
この発明は、上述の問題点に着目してなされてものであり、その目的とするところは、物体検知個数を制御要素として含む制御仕様を別途カウンタを使用せずに実現可能としたセンサを提供することにある。
【０００７】
この発明のさらに他の目的並びに作用効果については、明細書の以下の説明を参照することにより、当業者であれば容易に理解されるであろう。
【０００８】
【課題を解決するための手段】
この発明のセンサは、検出対象領域から物体有無と相関のある特徴量を取得する特徴量取得手段と、前記特徴量取得手段により取得された特徴量と所定のしきい値との比較により物体の有無を判定する判定手段と、前記判定手段による判定結果に基づいて物体の個数をカウントするカウント手段と、前記判定手段による判定結果に対応する出力動作を行う第１の出力手段と、前記カウント手段によるカウント結果に対応する出力動作を行う第２の出力手段と、を具備している。
【０００９】
尚、具体的な実施の形態としては、本発明のセンサは、光電センサ、超音波センサ、近接センサ、圧力センサ、温度センサ、煙感知器（ガスセンサ）、ｐＨセンサ等々、として実施される。従って、特徴量取得手段の具体的な構成については、それら具体的なセンサの検出原理に応じて特定される。
【００１０】
特徴量抽出手段、判定手段、並びに、第１の出力手段については、この種のセンサにおいて従来より備わっているものである。これにより、検出対象領域に物体が存在する場合、第１の出力手段においてその旨の出力動作が行われる。この出力動作には、物体有無を示す二値信号を外部へと出力する動作や、センサがオン状態にあることやセンサのそのときの取得特徴量をセンサ備え付けのデジタル表示器に表示させる動作などが含まれる。
【００１１】
これに対して、カウント手段及び第２の出力手段は、本発明に関連して、新たに設けられた構成である。すなわち、カウント手段は、判定手段による判定結果に基づいて物体の個数をカウントする。搬送ライン上を流れてくるワークをセンサで検出するような場合を想定すれば、判定手段による判定結果は、検出対象領域に物体が有るか無いかにより繰り返し反転される。このときカウント手段は、物体有りから無し、又は物体無しから有りの状態変化を捉えてカウント動作を行うことが考えられる。尚、判定手段における物体の有無の判定に際し、一般的には、ノイズによるチャタリング防止のための平均化処理などが行われる。ここで言う判定手段による判定結果には、そのような通常当業者が使用する平均化処理技術等を含むことは言うまでもない。
【００１２】
第２の出力手段は、カウント手段によるカウント結果に対応する出力動作を行う。ここで言う『出力動作』は、後述するように、様々な意味を含んでいる。いずれにしても、そのような出力動作はカウント手段によるカウント結果に対応するものでなければならない。
【００１３】
このような構成によれば、特徴量取得手段と、判定手段と、第１の出力手段とを有するので、通常のセンサとしての検出機能を実現することに加え、新たにカウント手段と第２の出力手段とを設けたことによって、カウント手段によるカウント結果に対応する出力動作を行うことができる。そのため、単に検出対象領域に物体の有無等を検出できるのみならず、検出対象領域に存在する又は通過する物体の個数に応じた情報を取得することができる。これを利用することによって、ユーザは、検出対象領域を物体が何個通過したか、決められた個数の物体が通過したか、現在通過している物体は何番目の物体か、といった情報を取得し、様々な制御に利用することが可能となる。
【００１４】
本発明センサの好ましい実施の一形態としては、前記第２の出力手段における出力動作が、前記カウント手段によるカウント結果に対応する表示を所定の表示器に行うようにすることが考えられる。ここで、『カウント結果に対応する表示』としては、単なるカウント数のみならず、個々のカウント数と予め対応付けられた任意の表示態様を含むことができる。
【００１５】
このような構成によれば、センサに備え付けの表示器によって、検出対象領域の通過物体の個数や各通過個数のそれぞれに関連する任意の状態を直ちに目で確認することができるから、検出対象物体が肉眼で捉えにくいものであったり、あるいは微細で判読し難いようなものであったとしても、この表示器上の表示に基づき、それらの情報をユーザは的確に読み取ることができる。
【００１６】
本発明センサの好ましい実施の一形態としては、前記カウント手段としてアップカウント動作を行うものを採用することが考えられる。ここで、『アップカウント動作』とは、いわゆる数値加算動作のことである。もっとも、ここで言う加算単位は必ずしも＋１ずつに限られるものではなく、２個ずつ又は３個ずつといったように、物体有無が検出されるたびに一定の複数個数を繰り返し加算するものも含まれる。
【００１７】
このような構成によれば、検出対象領域を通過する物体の個数が不明であるような場合にも、カウント手段は通過物体の総数に相当する情報を生成するから、それら総数に対応した出力情報を第２の出力手段による表示を介して取得することができる。
【００１８】
本発明センサの好ましい実施の一形態としては、前記カウント手段としてダウンカウント動作を行うものを採用することが考えられる。ここで、『ダウンカウント動作』とは、いわゆる数値減算動作のことである。もっとも、アップカウント動作の場合と同様に、ダウンカウント動作についても、−１ずつダウンカウントするものに限らず、−２個ずつ又は−３個ずつダウンカウントするようなものを格別排除するものではない。
【００１９】
このような構成によれば、検出対象領域を通過する物体の総量が予め分かっているような場合には、カウント手段によって目標カウント値からの残数情報が得られるため、第２の出力手段による表示を介して、物体の残数に対応した情報を取得することができる。
【００２０】
本発明センサの好ましい実施の形態においては、前記カウント手段として、アップカウント動作とダウンカウント動作との双方を実行可能であって、それらの動作のいずれかが、外部から与えられた動作指定信号の内容により選択される、ものを採用することが考えられる。ここで、『与えられた動作指定信号』の意味するところは、センサケースに備えられたキー操作により動作指定信号を生成するものと、動作指定信号が外部から信号線を介して与えられるものとの双方を含んでいる。
【００２１】
このような構成によれば、１台のセンサを使用しつつも、これに与えられる動作指定信号の内容を選択することによって、アップカウント動作とダウンカウント動作とを選択的に実施させることができる。殊に、このアップカウント動作とダウンカウント動作との切り替えを、外部から与えられた動作指定信号の内容により選択されるように構成すれば、オンラインで接続されたＰＬＣやＰＣなどによって、センサにおけるカウント動作を遠隔的に切り替えることができる。
【００２２】
この発明に係るセンサの好ましい実施の一形態としては、前記第２の出力手段における出力動作が、前記カウント手段によるカウント値が所定の目標カウント値に達したときにカウントアップ信号を出力する動作であるように構成することが考えられる。ここで、『カウント値が所定の目標カウント値に達したときに』とあるのは、アップカウント動作とダウンカウント動作との双方を含んでいる。
【００２３】
このような構成によれば、検出対象領域を物体が一定個数通過する毎に、何らかの制御を実施するような用途においては、従前のセンサのように、ＰＬＣやＰＣなどの上位装置側において、物体通過個数が所定値に達したことを確認するための処理が不要となり、センサ自体から直ちにその旨の信号を取得することが可能となるし、センサケースに設けられたデジタル表示器にその旨の表示を行えば、センサケースを目で見て直ちに物体が一定個数通過したことなどを判読することができる。いずれにしても、単なる計数動作のみならず、計数値が一定個数に達したことを示す情報が取得されるため、ユーザはこのカウントアップ出力情報を利用することによって、様々な応用が可能となるであろう。
【００２４】
本発明に係るセンサの好ましい実施の一形態としては、前記カウントアップ信号がワンショットパルスであり、かつカウントアップ信号の出力と共にカウント値がクリアされるように構成することが考えられる。
【００２５】
このような構成によれば、カウント手段は一定個数を繰り返しカウントすることが可能となるため、検出対象領域を物体が一定個数通過する毎に何らかの制御を行うような用途には、ユーザ側でその都度カウンタをクリアするための制御が不要となり、使い勝手が向上するであろう。
【００２６】
本発明に係るセンサの好ましい実施の一形態においては、前記カウントアップ信号が所定のリセット信号が与えられるまで出力保持されるように構成することが考えられる。ここで、『出力保持される』とあるのは、カウントアップ前の論理状態に対し、カウントアップ後の論理状態が反転し、その状態がリセット信号が与えられるまで保持されることを意味している。
【００２７】
このような構成によれば、検出対象領域を通過する物体が一定個数を超えた場合には、強制的に何らかの制御を停止させるような制御仕様に対しては、ユーザ側においてカウントアップ信号を保持するための制御が不要となり、使い勝手が向上する。殊に、検出対象領域に一定個数以上の物体が存在する場合が異常とされ、実際に異常かどうかの確認の上でリセットを行わない限り、制御を再開できないような用途の場合、センサ自体から保持された状態の異常信号が得られるため、使い勝手が良好なものとなる。このとき、リセット信号の与え方としては、外部から信号線を介して与えられるものと、センサに設けられたキー入力部におけるキー操作を介して与えられるものとの双方が考えられる。
【００２８】
本発明に係るセンサの好ましい実施の一形態においては、前記第２の出力手段における出力動作が、前記カウント手段によるカウント結果と関連づけて、そのカウント結果に対応するワークの状態レベルを出力するように構成することが考えられる。ここでは、カウント手段によるカウント結果が、検出物体を特定するための情報として使用される。つまり、様々な特性を有する検出物体が検出対象領域をランダムに搬送されているような場合、カウント手段のカウント結果によってそれぞれの物体を特定すると共に、個々の物体毎に得られる特徴量を、そのカウント結果と対応させて出力するようにしているのである。
【００２９】
このような構成によれば、センサからは、個々の検出物体を特定する情報と、その検出物体に関する状態レベル（しきい値に対する余裕度や取得特徴量の最大値など）とが出力されるため、各検出物体毎に個々の物体の状態レベルをきめ細かく確認することが可能となる。このとき、前記カウント結果とそのカウント結果に対応するワークの状態レベルとが関連づけて記憶され、かつそれらが任意に読み出し可能となるように構成すれば、例えば複数の検出物体がコンベア上を搬送されているような場合に、本発明センサを適用すれば、検出物体のカウントを行いつつ、検出物体毎に状態レベルを記憶し、ユーザは必要時にそのレベルを検出物体毎に読み出すことができるため、検出物体毎のロッギングが可能となって、検出物体の品質管理を行うことが可能となる。
【００３０】
本発明に係るセンサの更に好ましい実施の一形態においては、前記第２の出力手段における出力動作が、前記カウント手段によるカウント結果を、予め設定された複数のしきい値候補又はしきい値範囲内に存在する全てのしきい値候補の各々について出力するように構成することが考えられる。すなわち、今までの実施形態においては、しきい値の数は特に指定されていないが、この例にあってはしきい値は予め複数個設定される。このしきい値の設定は、ユーザにより任意に設定されているものであってもよいし、システム側においてしきい値範囲内に存在する全てのしきい値候補を自動的に設定するようにしたものでもよい。
【００３１】
このような構成を採用すれば、特徴量の異なる複数の検出物体が検出対象領域に流れてくるような場合において、設定すべきしきい値の内容が不明であるような場合に、このセンサを適用して複数のしきい値又は全てのしきい値のそれぞれに対して、個々の検出物体からの特徴量との比較を行い、その大小比較結果を各しきい値毎にカウントするようにすれば、各しきい値毎のカウント結果に基づいて最適なしきい値を決定することが可能となる。
【００３２】
このとき、予め設定されたサンプルワーク数と一致するカウント値を有するしきい値候補を検索すると共に、こうして検索されたしきい値候補の１つに基づいて実際のしきい値が自動的に決定されるように構成すれば、特徴量の値の異なる複数の検出物体が存在するような場合、それら検出物体の全てに適用される共通のしきい値を自動的に決定することが可能となる。
【００３３】
以上説明したように、本発明のセンサは、従前の物体検知機能を有するセンサに対し、物体の個数をカウントする機能を付加したことを主たる特徴とするものであるから、このカウント値に基づき、従前のセンサでは為し得なかった、様々な新規な制御を別途カウンタ装置を使用せずに実現することができ、制御現場における省スペース化並びにローコスト化を実現することが可能となる。
【００３４】
加えて、アップカウントやダウンカウントといったカウント動作の選択、それらの手動並びに自動切り替え、カウント値が目標値に達したことによるカウントアップ信号の生成、カウントアップ信号の信号形態の多様性、カウントアップ信号の保持並びに自在なリセット、さらには、カウントアップ結果による検出物体の特定並びに特定された各物体に関する情報の収集、分析、それらを通じてのしきい値の自動決定といった様々な新規機能を実現するものである。
【００３５】
【発明の実施の形態】
以下に、この発明に係るセンサの好適な実施の一形態を添付図面に従って詳細に説明する。尚、以下に説明する実施の形態は、本発明の一例を示すものに過ぎず、本発明の及ぶ範囲は、特許請求の範囲のみによって特定されることは言うまでもない。殊に、以下の実施の形態は光電センサに関するものであるが、本発明の適用範囲は先に述べたように、光電センサに限定されるものではなく、超音波センサ、近接センサ、圧力センサ、温度センサ、煙感知器（ガスセンサ）、ｐＨセンサ等々の他のセンサにも同様に適用が可能である。
【００３６】
本発明の一実施形態における光電センサの上部カバーを開いた状態における外観斜視図が図１に示されている。同図に示されるように、光電センサ１は多連装型のプラスチック製筐体１０１を有する。筐体１０１の前部には、投光用ファイバ２と受光用ファイバ３とが挿入され、クランプレバー１０３の操作によって抜け止め固定される。筐体１０１の後部からは電気コード４が引き出されている。図示の電気コード４は、アース用の芯線４１と、正電源用の芯線４２と、検出出力用の芯線４３と、カウントアップ出力用の芯線４４と、カウント動作（ＵＰカウント／ＤＯＷＮカウント）指定用の芯線４５とを有する。
【００３７】
筐体１０１は、制御盤などの取付面に対して図示しないＤＩＮレールを介して固定される。符号１０４で示されるものはＤＩＮレール嵌合溝である。筐体１０１の上部には、透明な上部カバー１０２が開閉可能に取り付けられている。上部カバー１０２を開いた状態で露出する筐体１０１の上面には、第１の表示器１０５と、第２の表示器１０６と、第１の操作ボタン（ＵＰ）１０７と、第２の操作ボタン（ＤＯＷＮ）１０８と、第３の操作ボタン（ＭＯＤＥ）１０９と、第１のスライド操作子（ＳＥＴ／ＲＵＮ）１１０と、第２のスライド操作子（Ｌ／Ｄ）１１１とが設けられている。
【００３８】
本発明光電センサの操作・表示部の拡大図が図２に示されている。図１及び図２を参照して明らかなように、第１の表示器１０５及び第２の表示器１０６は、いずれも４桁の７セグメントデジタル表示器で構成されており、それぞれ４桁の数字、アルファベット、さらにはそれらの組み合わせを任意に表示可能となされている。第１の操作ボタン１０７、第２の操作ボタン１０８、及び第３の操作ボタン１０９は、いずれもモメンタリタイプの押しボタンスイッチを構成しており、図２に示されるように、第１の操作ボタン１０７は『ＵＰキー』として、第２の操作ボタン１０８は『ＤＯＷＮキー』として、第３の操作ボタン１０９は『ＭＯＤＥキー』としてそれぞれ機能するように構成されている。第１のスライド操作子１１０及び第２のスライド操作子１１１はいずれもスライドスイッチを構成するものであり、図２に示されるように、第１のスライド操作子１１０は『ＳＥＴ／ＲＵＮ切替スイッチ』として、第２のスライド操作子１１１は『Ｌ／Ｄ切替スイッチ』として機能するように構成されている。
【００３９】
図１に戻って、筐体１０１の内部には、図１では図示しないが、物体検出用の発光素子と物体検出用の受光素子とが内蔵されている。投光用ファイバ２をファイバ挿入孔にしっかりと挿入すると、投光用ファイバ２の端面と検出用の発光素子の発光部とがしっかりと光結合され、これにより検出用の発光素子から発生した光は、投光用光ファイバ２を経由して、その先端の図示しないファイバヘッドから検出領域へと投光される。同様に、受光用ファイバ３をファイバ挿入孔にしっかりと挿入すると、受光用ファイバ３の端面と検出用受光素子とが光結合され、これにより図示しない受光用ファイバ３のファイバヘッドからファイバ内に導入された光は、受光用ファイバ３に案内されて、検出用の受光素子にたどり着くようになっている。以上述べた検出用の発光素子と検出用の受光素子との配置構成は従来のこの種のファイバ型光電スイッチに採用されたものと同様である。
【００４０】
次に、本発明の一実施形態である光電センサの電気的ハードウェア構成の全体を示すブロック図が図３に示されている。同図に示されるように、この回路はマイクロプロセッサを主体として構成されるＣＰＵ２００を中心として構成されている。ＣＰＵ２００内には、マイクロプロセッサの他に、システムプログラムを格納したＲＯＭやプログラムの実行に必要なワーキングＲＡＭ、その他各種の設定データを格納するためのＥＥＰＲＯＭ等が内蔵されている。このようなＣＰＵ２００の構成については、各種の文献において種々公知であるから、その点についての詳細な説明は省略する。
【００４１】
図において最も左側には、先に説明した発光素子を有する投光部２０２と受光素子を有する受光部２０３とが示されている。投光部２０２には、検出用の発光素子である発光ダイオード（以下、ＬＥＤと称する）２０２ａと、ＬＥＤ２０２ａを駆動するためのＬＥＤ駆動部２０２ｂとが含まれている。一方、受光部２０３には、検出用の受光素子であるフォトダイオード（以下、ＰＤと言う）２０３ａと、ＰＤ２０３ａの出力を増幅するためのアンプ部２０３ｂとが含まれている。
【００４２】
そして、ＬＥＤ駆動部２０２ｂの作用により検出用発光素子であるＬＥＤ２０２ａから発生したパルス光は、投光用ファイバ２を介して検出領域へと導かれる。検出領域において透過又は反射したことにより受光用ファイバ３に導入された光は、受光用ファイバ３を経由して検出用受光素子であるＰＤ２０３ａへとたどり着く。ＰＤ２０３ａで光電変換されて生じた出力信号は、アンプ部２０３ｂで増幅された後、ＣＰＵ２００へとＡ／Ｄ変換器を介して取り込まれる。尚、これら投受光の基本的な構成についても、各種の文献において公知であるから、この点についての詳細な説明は省略する。
【００４３】
表示部２０４は、ＣＰＵ２００における各種の演算により生成されたデータを表示させるための表示器で構成されており、この表示部２０４には、より具体的には、先に図１並びに図２を参照して説明した第１の表示器１０５並びに第２の表示器１０６が含まれている。それらの第１並びに第２の表示器１０５，１０６には、後に詳細に説明するように、本発明のカウント動作に関連した各種の情報が数値、アルファベット、それらの組み合わせなどにより表示される。
【００４４】
入力部２０５は、ＣＰＵ２００に対して各種の情報を入力するためのものである。この入力部２０５には、キー入力部２０５ａと信号入力部２０５ｂとが含まれている。キー入力部２０５ａは、オペレータが手動操作で各種のデータを入力するためのものであり、このキー入力部２０５ａには、先に図１並びに図２を参照して説明したように、第１の操作ボタン１０７、第２の操作ボタン１０８、第３の操作ボタン１０９、第１のスライド操作子１１０、及び第２のスライド操作子１１１が含まれている。これに対して、信号入力部２０５ｂは、先に図１を参照して説明した電気コード４の芯線４５を介してカウント動作指定信号を入力するためのものであり、この信号入力部２０５ｂを介して芯線４５からのカウント動作指定信号がＣＰＵ２００へと取り込まれる。
【００４５】
出力部２０６は、ＣＰＵ２００で生成された各種の出力信号を電気コード４に含まれる芯線４３及び４４へと出力するためのものである。この出力部２０６には、物体検出信号出力用の出力部２０６ａとカウントアップ信号出力用の出力部２０６ｂとが含まれている。すなわち、ＣＰＵ２００で生成された物体検出用の検出信号は、出力部２０６ａを介して電気コード４内の芯線４３へと送り出される。同様にして、ＣＰＵ２００で生成されたカウントアップ信号は、出力部２０６ｂを介して、電気コード４に含まれる芯線４４へと送り出される。これらの電気コード４に含まれる芯線４３，４４は一般的にはＰＬＣやＰＣなどの上位装置へ接続される。同様にして、電気コード４に含まれる芯線４５についても、ＰＬＣやＰＣなどの上位装置へと接続される。
【００４６】
電源２０１は、図３に示される投光部２０２、受光部２０３、表示部２０４、入力部２０５、出力部２０６のそれぞれに対して電源を供給するための電源安定化装置などで構成されており、この電源部２０１に対する給電は、電気コード４に含まれる芯線４１及び４２を介して行われる。この例では、芯線４１はＧＮＤに接続され、芯線４２はＶｃｃに接続される。
【００４７】
次に、以上述べた機械的構造並びに電気的なハードウェア構成を前提として、この光電センサに備えられた様々な機能並びにそれらを実現するためにＣＰＵ２００で実行されるシステムプログラムの構成について説明する。
【００４８】
この光電センサには、選択的に実行（ＯＮ／ＯＦＦ）可能な複数の機能が備えられている。それらの機能のそれぞれには、様々な選択肢が用意されている。それら機能の選択（ＯＮ／ＯＦＦ）並びに選択肢の選択は、この光電センサをＳＥＴモードに設定することで行うことができる。特定の選択肢に従ってＯＮ設定された機能を実現させる動作は、この光電センサをＲＵＮモードに設定することで行うことができる。動作モードをＳＥＴモードとするかＲＵＮモードとするかの指定は、図２に示されるように、第１のスライド操作子１１０を『ＳＥＴ』側とするか、『ＲＵＮ』側とするかにより行うことができる。因みに、第２のスライド操作子１１１は、この光電センサの検出出力信号の論理極性を設定するためのもので、第２のスライド操作子１１１が『Ｌ』側に設定されているといわゆるライトオンモードとなり、『Ｄ』側に設定されるとダークオンモードとなる。
【００４９】
ＣＰＵで実行されるシステムプログラムの全体を概略的に示すゼネラルフローチャートが図４に示されている。このシステムプログラムは電源投入によって実行を開始される。
【００５０】
同図において、処理が開始されると、まず初期設定処理（ステップ４０１）が実行される。この初期設定処理（ステップ４０１）においては、後述するルーチン処理を開始するに先立って必要な各種の初期設定処理が実行される。この初期設定処理には、各種メモリ、表示灯、制御出力の初期化の実行や、ＣＰＵ２００に含まれるＥＥＰＲＯＭから必要項目の読み出しとデータチェックを行う処理などが実行される。
【００５１】
初期設定処理（ステップ４０１）が実行を完了すると、ルーチン処理への移行が行われ、その最初においてまず第１のスライド操作子１１０の設定状態が参照される（ステップ４０２）。ここで、第１のスライド操作子１１０が『ＳＥＴ』側へ設定されていれば（ステップ４０２ＳＥＴ）、続いてＳＥＴモード初期設定処理（ステップ４０３）が実行される。このＳＥＴモード初期設定処理（ステップ４０３）では、ＳＥＴモード用設定値の初期化や機能番号Ｆの初期化（Ｆ＝０）などが行われる。
【００５２】
ＳＥＴモード初期設定処理（ステップ４０３）が実行を完了すると、以後、第１のスライド操作子１１０が『ＳＥＴ』側へ設定された状態にある限り（ステップ４０５ＹＥＳ）、様々な機能（Ｆ）に関するＳＥＴモード処理（ステップ４０４）が実行される。この状態において、ユーザは、第１の操作ボタン１０７、第２の操作ボタン１０８、第３の操作ボタン１０９を適宜に操作することによって、当該光電センサに用意された様々な機能（Ｆ）のＯＮ／ＯＦＦ設定、更には、各機能（Ｆ）別の個別設定処理を実行することができる。
【００５３】
一方、第１のスライド操作子１１０の設定状態を参照した結果、『ＲＵＮ』側へと設定されたと判定されると（ステップ４０２ＲＵＮ）、続いて、ＲＵＮモード初期設定処理（ステップ４０６）が実行される。このＲＵＮモード初期設定処理（ステップ４０６）においては、表示灯、制御出力の初期化、しきい値及び各種ＲＵＮモード用設定値の初期化などが行われる。なお、後に図７（ａ）を参照して説明するカウンタモードの初期化処理等は、このＲＵＮモード初期化設定処理４０６にて実行される。
【００５４】
ＲＵＮモード初期設定処理（ステップ４０６）が完了すると、続いて第１のスライド操作子１１０が『ＲＵＮ』側へ設定されている限り（ステップ４０８ＹＥＳ）、ＲＵＮモード処理（ステップ４０７）が実行される。このＲＵＮモード処理（ステップ４０７）においては、光電センサとして必要な基本的な動作の他に、ユーザにより選択的に設定された各種の機能が実現される。尚、このＲＵＮモード処理の具体的な内容については、必要に応じて、後に詳細に説明を行う。
【００５５】
このように、ＣＰＵ２００で実行されるシステムプログラムは、いわゆる電源投入直後に行われるイニシャル処理である初期設定処理（ステップ４０１）と、ルーチン処理であるところの２つの処理、すなわちＳＥＴモード処理（ステップ４０４）及びＲＵＮモード処理（ステップ４０７）に大別される。そして、本発明の要部であるところのカウントモードの実行はＲＵＮモード処理（ステップ４０７）において行われ、カウントモードにおける各種の機能設定はＳＥＴモード処理（ステップ４０４）において行われる。
【００５６】
ＳＥＴモード処理の全体を示すフローチャートが図５に示されている。同図において、処理が開始されると、まず機能別表示処理（ステップ５０１）が実行される。この機能別表示処理（ステップ５０１）では、機能番号Ｆに該当する様々な表示処理が実行される。
【００５７】
続いて、キー入力検知処理が実行され（ステップ５０２）、図１並びに図２に示される操作ボタン１０７〜１０９並びにスライド操作子１１０，１１１におけるキー入力操作の有無を待機する状態となる（ステップ５０３ＮＯ）。
【００５８】
この状態において、キー入力有りと判定され（ステップ５０３ＹＥＳ）、しかも機能切替に相当するキー入力シーケンスが確認されると（ステップ５０４ＹＥＳ）、機能切替指令が確認されるたびに、機能番号Ｆの値は全機能数に達するまで＋１ずつインクリメントされ（ステップ５０５，５０６ＮＯ）、全機能数に達すると共に（ステップ５０６ＹＥＳ）、再びゼロリセットされて（ステップ５０７）、機能（Ｆ）の循環切替が実行される。
【００５９】
この状態において、そのとき設定されている機能Ｆに関する実行が指示されると（ステップ５０４ＮＯ，５０８ＹＥＳ）、機能別実行処理が実行され、機能番号Ｆに該当する処理が行われる（ステップ５０９）。
【００６０】
本発明に関するカウンタモードにおいては、この機能別実行処理（ステップ５０９）において、カウンタモードを実行させる（ＯＮ）又は実行させない（ＯＦＦ）の設定、カウントモードをアップカウント動作とするかダウンカウント動作とするかの設定などが実行可能となる。すなわち、この機能別実行処理（ステップ５０９）の実行によって、ＣＰＵ２００に内蔵されたカウントモード実行フラグの内容は“１”又は“０”に設定され、同様にしてカウントモードフラグの内容もアップカウントに相当する“１”又はダウンカウントに相当する“０”に設定される。これらカウントモード実行フラグ並びにカウントモードフラグの内容は、後に詳細に説明するように、図８のフローチャートにおけるステップ８０１及びステップ８０２において参照されることとなる。
【００６１】
図５のフローチャートにおいて、機能切替指令でもなく（ステップ５０４ＮＯ）、及びいずれの機能実行でもないと判定されれば（ステップ５０８ＮＯ）、処理は終了して、以上の動作が繰り返し実行される（ステップ５０１〜５０８）。
【００６２】
次に、図４に戻って、ＲＵＮモードの処理について説明する。ＲＵＮモードへの導入に先立ち、まずＲＵＮモード初期設定処理が実行される（ステップ４０６）。このＲＵＮモード初期設定処理（ステップ４０６）においては、図７（ａ）に示されるように、設定初期化処理（ステップ７０１）が実行されて、個数カウント値ｎの値は初期値である『ｔ』に設定される。この初期値『ｔ』の値は操作ボタン１０７〜１０９を使用してユーザが任意に設定可能であり、ＣＰＵ２００に内蔵された図示しないＥＥＰＲＯＭから読み出される。尚、図中他の初期化処理（ステップ７０２）とあるのは、本発明の要部であるカウント関連処理とは無関係な別の処理のための初期化処理を示している（ステップ７０２）。
【００６３】
図４に戻って、ＲＵＮモード初期化設定処理（ステップ４０６）が完了すると、以後第１のスライド操作子１１０が『ＲＵＮ』側に設定されている限り（ステップ４０８ＹＥＳ）、ＲＵＮモード処理（ステップ４０７）が繰り返し実行される。
【００６４】
このＲＵＮモード処理（ステップ４０７）の全体を示すフローチャートが図６に示されている。同図に示されるように、このＲＵＮモード処理の全体は、通常処理（ステップ６０１〜６０５）と割込処理（ステップ６０６〜６０８）とに大別される。そして、割込処理（ステップ６０６〜６０８）は、時間Ｔｓｅｃ毎（例えば、１００μｓｅｃ毎）にタイマ割込で実行される。
【００６５】
まず、通常処理（ステップ６０１〜６０５）について説明する。処理が開始されると、表示灯制御処理（ステップ６０１）が実行される。この表示灯制御処理（ステップ６０１）では、指定された表示内容に応じて、７セグメントデジタル表示器である第１及び第２の表示器１０５，１０６の点灯制御を行う。
【００６６】
続いて、オートパワーコントロール（以下、ＡＰＣと言う）処理（ステップ６０２）が実行される。このＡＰＣ処理（ステップ６０２）では、後述する計測用の投受光処理（ステップ６０６）で取得したモニタ受光量を監視し、一定期間毎に、ＡＰＣ補正を実施する。このＡＰＣ補正は、この例においては、投光電流のパワー制御により行われている。
【００６７】
続いて、キー入力検知処理（ステップ６０３）が実行される。このキー入力検知処理（ステップ６０３）においては、一定期間毎に、キー入力の検知を行い、入力を検知した場合は、該当処理が実行できるように設定を行う。続いて、キー入力対応処理（ステップ６０４）が実行されて、検知されたキー入力に対応する様々な処理が実行される。
【００６８】
本発明の要部であるカウント関連処理においては、図７（ｂ）に示されるように、キー入力検知処理（ステップ６０３）において、カウントアップ信号をリセットするためのリセット入力の検知が行われ（ステップ７０３）、ここでリセット入力が検知された場合には、続く入力キー対応処理（ステップ６０４）において、リセット処理（ステップ７０４）が実行され、カウントアップ信号の内容はＯＮ状態からＯＦＦ状態へとリセットされ、同時に個数カウント値ｎの値は初期値『ｔ』にセットしなおされる。尚、後に詳細に説明するが、カウントアップ信号とは、目標カウント値『ｔ』のカウントが完了したことに応答して出力される二値信号であって、図７（ｂ）の場合は、この二値信号がカウントアップと同時にオン状態に保持される場合を想定している。
【００６９】
続いて、図６に戻って、入力キー対応処理（ステップ６０４）が終了すると、続いて外部入力処理（ステップ６０５）が実行される。この外部入力処理（ステップ６０５）では、本発明と関連する処理としては、図１に示される電気コード４に含まれる芯線４５から入力された動作指定信号の内容に応じて、アップカウント動作とダウンカウント動作との切り替えが行われる。すなわち、この実施形態においては、電気コード４に含まれる芯線４５に対して、信号内容を“Ｈ”又は“Ｌ”のいずれかに設定することによって、カウント動作の内容をアップカウント動作とダウンカウント動作とに切り替えることが可能にされている。この切り替えを扱うのも外部入力処理（ステップ６０５）の仕事の１つである。
【００７０】
次に、時刻Ｔｓｅｃ毎に実行される割込処理について説明する。割込処理が開始されると、まず投受光処理（ステップ６０６）が実行される。この投受光処理（ステップ６０６）においては、図３に示されるＬＥＤ２０２ａをＬＥＤ駆動部２０２ｂを介してパルス駆動することによって、可視光又は赤外線光を発生させ、これを投光用ファイバ２を通じて投光用ヘッド（図示せず）へと導き、投光用ヘッドから検出対象領域へと放出する。同時に、検出対象領域において反射又は透過した光を、受光用ファイバの先端に設けられた受光ヘッドから受光用ファイバ３内へと導入し、これを受光用ファイバ３を経由してＰＤ２０３ａへと導き、ＰＤ２０３ａにて光電変換により得られた信号を、アンプ部２０３ｂを介してＣＰＵ２００へと取り込む。これにより、検出対象領域の状況に対応する特徴量を含んだ受光量データが取得される。
【００７１】
続いて、ＯＮ／ＯＦＦ判定処理（ステップ６０７）が実行される。このＯＮ／ＯＦＦ判定処理（ステップ６０７）においては、予め設定されたオンオフ判定用の光量しきい値を基準として、受光量データを弁別二値化することにより、検出対象領域に物体の有無が判定される。すなわち、検出対象領域に目的とする物体が存在すれば、判定結果はＯＮとなり、存在しなければ判定結果はＯＦＦとされる。後に詳細に説明するように、本発明の要部であるカウントモードの動作においては、判定結果であるＯＮとＯＦＦの変化のタイミング（例えば、ＯＦＦからＯＮへの変化タイミング）においてカウントアップ又はカウントダウン処理が実行されることとなる。
【００７２】
こうしてＯＮ／ＯＦＦ判定処理（ステップ６０７）が実行終了すると、続いて本発明の要部であるところのカウントモードを実現するために、カウント機能付き出力制御処理（ステップ６０８）が実行される。カウント機能付き出力制御処理のフローチャートが図８に示されている。同図において、処理が開始されると、まず、カウントモード実行フラグの状態が参照される（ステップ８０１）。先に説明したように、このカウントモード実行フラグの内容は、図４に示される設定モード処理（ステップ４０４）において、ユーザのキー操作によりＯＮ状態又はＯＦＦ状態に設定されている。ここで、カウントモード実行フラグの内容がＯＦＦ状態に設定されていれば（ステップ８０１ＯＦＦ）、カウントモードを実行することなく、通常の出力処理（ステップ８１１）への移行が行われる。この通常の出力処理（ステップ８１１）においては、先に図６に示されるＯＮ／ＯＦＦ判定処理（ステップ６０７）において生成された判定結果に応じて、検出出力信号が、図３に示される出力部２０６ａを介して、電気コード４に含まれる芯線４３へと出力される。こうして芯線４３へと出力された検出出力信号は、例えばＰＬＣやＰＣなどの上位装置などへと送られる。
【００７３】
一方、図８のフローチャートに戻って、カウントモード実行フラグがＯＮ状態であると判定されると（ステップ８０１ＯＮ）、続いてカウントモードフラグの内容が参照される（ステップ８０２）。カウントモードフラグの内容についても、先に図４を参照して説明したように、ＳＥＴモード処理（ステップ４０４）において、ユーザのキー操作に応じて適宜に設定されている。
【００７４】
カウントモードフラグの内容を参照した結果、これがアップカウント動作に設定されていれば（ステップ８０２アップカウント）、以後アップカウント動作が実行される。これに対して、カウントモードフラグを参照した結果、これがダウンカウント動作に設定されていれば（ステップ８０２ダウンカウント）、以後ダウンカウント動作が実行される。
【００７５】
アップカウント動作においては、先に図６のＯＮ／ＯＦＦ判定処理（ステップ６０７）によって得られた判定結果が、ＯＦＦ状態からＯＮ状態へ変化するたびに（ステップ８０３ＹＥＳ）、カウント値ｎの値を＋１ずつアップカウントする動作が（ステップ８０４）、そのカウント値が目標値『ｔ』に達するまで（ステップ８０５ＮＯ）、繰り返し実行される。カウント値ｎの値が、カウント目標値『ｔ』に達すると（ステップ８０５ＹＥＳ）、カウントアップ出力がＯＮ状態とされる（ステップ８０６）。すると、図３のブロック図において、ＣＰＵ２００から出力されたカウントアップ信号は、出力部２０６ｂを介して、電気コード４に含まれる芯線４４へと出力される。この芯線４４に出力されたカウントアップ信号についても、例えばＰＬＣやＰＣなどの上位装置へと送られる。従って、上位装置の側では、このカウントアップ信号を監視することによって、例えば検出対象領域を通過する物体の個数が目標値である『ｔ』に達したことを判別することができる。
【００７６】
一方、図８のフローチャートに戻って、ダウンカウント動作が開始されると、先のアップカウント動作の場合と同様に、判定出力結果が、ＯＦＦ状態からＯＮ状態へ変化するたびに（ステップ８０７ＹＥＳ）、カウント値ｎの内容を−１ずつダウンカウントする動作が（ステップ８０８）、カウント値ｎの値が０になるまで（ステップ８０９ＮＯ）、繰り返される。そして、カウント値ｎの値が０になると（ステップ８０９ＹＥＳ）、カウントアップ出力の状態はＯＮ状態に設定される（ステップ８１０）。すると、図３のブロック図において、ＣＰＵ２００から出力されたカウントアップ信号は、出力部２０６ｂを介して、電気コード４に含まれる芯線４４へと送り出される。この場合、芯線４４に送り出されるカウントアップ信号の内容を監視することによって、予め初期設定されたｔ個の物体の通過が完了したことを判別することができる。
【００７７】
先に説明したように、カウントモードの切替（ダウンカウント／アップカウント）は、操作部における手動によるキー操作によって行うこともできるが、図３に示されるように、電気コード４に含まれる芯線４５を“Ｈ”又は“Ｌ”に設定することによっても、カウントモードの切り替えを実行することができる。すなわち、芯線４５の内容は、信号入力部２０５ｂを介して常時ＣＰＵ２００に取り込まれ、外部入力有効が設定されていれば、その状態によって、カウントモードフラグの内容に反映するように仕組まれている。そのため、電気コード４に含まれる芯線４５の論理状態を“Ｈ”又は“Ｌ”のいずれかに設定すれば、図８に示されるカウントモード参照処理（ステップ８０２）において、アップカウント又はダウンカウントへの切替動作が自動的に行われる。
【００７８】
本発明に係る光電センサの表示例を示す図が図９に示されている。この例にあっては、第１の表示器１０５には受光光量に相当する数値『３０００』が表示され、第２の表示器１０６には現在カウント値に相当する数値『１３２８』が表示されている。これらの表示動作は、先に説明したように、図６のフローチャートにおいて、表示灯制御処理（ステップ６０１）を実行することで行われる。又、表示灯制御処理（ステップ６０１）で参照されるべきデータは、図８のフローチャートにおいて、アップカウント処理（ステップ８０４）又はダウンカウント処理（ステップ８０８）で生成されたものが使用される。
【００７９】
次に、本発明に係る光電センサの動作例を概念的に示す説明図が図１０に示されている。同図（ａ）にはアップカウント動作が、同図（ｂ）にはダウンカウント動作が、同図（ｃ）にはカウントアップ時オン動作が、同図（ｄ）にはカウントアップ時クリア動作が、及び同図（ｅ）にはカウントアップ時ホールド動作がそれぞれ示されている。
【００８０】
先に、図８を参照して説明したアップカウント動作（ステップ８０３ＹＥＳ、８０４、８０５ＮＯ）が実行されると、図１０（ａ）に示されるように、検出信号がＯＦＦ状態からＯＮ状態へ変化するたびに、アップカウント値が、＋１ずつステップ状に増加していき、このアップカウント値が、図９に示されるように、第２の表示器１０６に数値表示される。同様に、図８を参照して説明したダウンカウント動作（ステップ８０７ＹＥＳ、８０８、８０９ＮＯ）が実行されると、図１０（ｂ）に示されるように、ダウンカウント値の値は、検出信号の値がＯＦＦ状態からＯＮ状態へ変化するたびに−１ずつステップ状に減少されていき、このダウンカウント値が図９に示されるように、第２の表示器１０６に数値表示される。
【００８１】
又、図８のフローチャートにおいて、アップカウント動作（ステップ８０３ＹＥＳ、８０４、８０５ＮＯ）、又はダウンカウント動作（ステップ８０７ＹＥＳ、８０８、８０９ＮＯ）のいずれかが実行され、カウントアップ処理（ステップ８０６又は８１０）が実行されると、図１０（ｃ）に示されるように、カウントアップ信号の出力状態は、ＯＦＦ状態からＯＮ状態へと立ち上がり、その状態に以後保持される。このとき、図１に示される第３の操作ボタン１０９が操作されると、先に説明したように、図７（ｂ）に示されるように、リセット入力有りの判定が行われ（ステップ７０３ＹＥＳ）、続いてリセット処理（ステップ７０４）が実行されて、カウントアップ出力の状態はＯＮ状態からＯＦＦ状態へと復帰する。
【００８２】
すなわち、図１０（ｃ）に示される例にあっては、アップカウント値がカウント目標値に達した場合、カウントアップ出力の値はＯＦＦ状態からＯＮ状態へと変化してその状態に保持される。一方、カウントアップ値の値はカウント目標値に達した以降も増加を継続する。
【００８３】
もっとも、カウントアップ信号並びにアップカウント値の変化傾向は、様々な形態をとることができる。図１０（ｄ）に示されるカウントアップ時クリア動作においては、アップカウント値がカウント目標値に達すると同時に、カウントアップ出力としてワンショットパルスが出力され、同時にアップカウント値の値は直ちに０にリセットされる。そのため、このカウントアップ値クリア動作を利用すれば、検出対象領域を一定個数のワークが通過するたびに、繰り返しワンショットパルスであるカウントアップ出力を生ずると言った制御を実現できる。
【００８４】
又、図１０（ｅ）に示されるカウントアップ時ホールド動作によれば、アップカウント値の値がカウント目標値に達した場合、カウントアップ出力の値はＯＦＦ状態からＯＮ状態へと変化し、その状態に保持され、アップカウント値の値もカウント目標値に達するとその状態に保持される。このような構成によれば、アップカウント値がカウント目標値に達した以降カウントアップ出力をＯＮ状態に保持させると共に、アップカウント値についても内容を保持して、表示状態が維持されるといった制御を実現することができる。
【００８５】
次に、本発明に係る光電センサの応用例（その１）を示す図が図１１に示されている。同図において、３０１はラインビーム投光用のファイバヘッド、３０２はラインビーム受光用のファイバヘッド、３０７は光電センサ本体である。このような光電センサにおいて、本発明のカウントモードを採用すれば、ラインビーム３０４を横切ってワーク３０５，３０５が落下するような場合、その落下個数に応じた制御出力を生成することができる。このため、部品トレーの上にランダムに部品が落下するようなアプリケーションを想定すれば、一定個数の部品３０５，３０５が部品トレーに落下した状態で、トレーを交換するといった制御を、従前のようにセンサとカウンタとからなる２つの機器を用いることなく、センサのみで実現することができる。
【００８６】
本発明に係る光電センサの応用例（その２）を示す図が図１２に示されている。同図において、３０８はＤＩＰパッケージ、３０９はパッケージ３０８の端子ピン、３１０は受光用ファイバヘッド、３１１は投光用ファイバヘッド、３１２は光電センサ本体である。このように、搬送ライン上をＤＩＰパッケージ３０８が流れてくるような状況において、端子ピン３０９の欠落を検出しようとする場合、本発明のカウントモードを適用すれば、投光用ファイバヘッド３１１により端子ピンが到来する位置を照射しつつ、その透過光を受光側ファイバヘッド３１０で検出し、その検出個数をカウントアップ又はカウントダウンして端子ピン総数に相当する目標カウント値と比較することによって、ＤＩＰパッケージの不良品を容易に判別することができる。従って、この場合にあっても、光電センサとカウンタとの２つの機器を用いることなく、光電センサ３１２のみをもって、このようなＤＩＰパッケージの端子ピン欠落を判別するシステムを構成することができる。
【００８７】
本発明に係る光電センサの応用例（その３）を示す図が図１３に示されている。同図において、３１３は部品、３１４は投光用ファイバヘッド、３１５は受光用ファイバヘッド、３１６はパーツフィーダである。このように、パーツフィーダ３１６を介して部品３１３が順次供給されるような場合、その出口にファイバヘッド３１４，３１５を配置して、部品３１３の通過個数をカウントすれば、そのカウント値を表示させたり或いは予め目標カウント値を設定してカウントアップ出力を監視すれば、パーツフィーダを介して何個の部品を供給したかを判定するといった制御を、従前のように、光電センサとカウンタとの２つの機器を使用することなく容易に実現することができる。
【００８８】
次に、本発明に係る光電センサの他の実施の一形態が図１４〜図１７に示されている。この実施形態における光電センサにあっては、カウント結果とそのカウント結果に対応するワークの状態レベルとを関連づけてメモリに記憶する一方、それらを任意に読み出し可能に構成することによって、ワーク状態レベルのロッギング機能を実現している。ここで、『ワーク状態レベル』とは、しきい値に対する余裕度（しきい値レベルと受光量の差の最大値）や受光量最大値（ＯＮピーク）などのことを意味している。
【００８９】
ワークの流れる生産ラインに光電センサを設置して、ワークの個々を検出するような制御システムにおいて、しばしばワーク検出用のしきい値が適切であるか否かを判定したいような場合がある。この場合、それぞれのワークに対する受光光量がまちまちな場合には、個々のワーク毎に現在のしきい値に対する余裕度を知ることができれば便利である。
【００９０】
このような場合、この実施形態の光電センサにあっては、センサに内蔵されたメモリ上に、図１７に示されるメモリテーブルを設け、ここにワーク番号毎に余裕度を記憶させ、その後これを適宜に読み出すことによって、現在のしきい値に対し個々のワークの余裕度がどの程度あるかを確認するといったいわゆるロッギング機能を実現することができる。
【００９１】
すなわち、図１４のフローチャートにおいて、処理が開始されると、まずイニシャル処理によってワークカウント値Ｃ並びに最大余裕度Ｔｍａｘはゼロリセットされる（ステップ１４０１）。
【００９２】
その後、所定の終了指令が与えられるまでの間（ステップ１４０２ＹＥＳ）、個々のワークが到来する毎に（ステップ１４０４ＹＥＳ）、投受光計測処理で計測された検出量Ｖに基づき、最大余裕度取得処理（ステップ１４０５）が実行される。
【００９３】
最大余裕度取得処理のフローチャートが図１５に示されている。同図において処理が開始されると、まず最初に、余裕度検知処理が実行される（ステップ１５０１）。この余裕度検知処理（ステップ１５０１）においては、最新の投受光計測処理（ステップ１５０４）により得られた検出量Ｖからしきい値ＴＨを差し引くことによって、余裕度Ｔの値が求められる。
【００９４】
続いて、ステップ１５０２では、最新の余裕度Ｔとその時点の最大余裕度Ｔｍａｘとの大小比較が行われ、最新の余裕度Ｔが最大余裕度Ｔｍａｘよりも大きい場合に限り（ステップ１５０２ＹＥＳ）、最大余裕度Ｔｍａｘの更新が行われる（ステップ１５０３）。
【００９５】
続いて、ステップ１５０４においては、投受光計測処理が実行されて、その時点の検出量がＶとして記憶される。続くステップ１５０５においては、検出量Ｖとしきい値ＴＨとの大小比較によりワークの有無が判定され、ここでワークが存在すると判定される場合には（ステップ１５０５ＹＥＳ）、以上説明した余裕度検知処理（ステップ１５０１）、最大余裕度更新処理（ステップ１５０２、１５０３）、及び投受光計測処理（ステップ１５０４）が繰り返し実行され、これにより１個のワークに関して、最大余裕度Ｔｍａｘが求められる（図１６参照）。
【００９６】
次いで、光電センサの前をワークが通過しきって、ワークなしと判定されると（ステップ１５０５ＮＯ）、ワークカウント値Ｃの値は＋１更新された後（ステップ１５０６）、その時点の最大余裕度Ｔｍａｘの値は、Ｃ個目のワーク余裕度Ｙ（Ｃ）として、図１７に示されるメモリテーブルの該当欄に格納される（図１６参照）。
【００９７】
以上の処理（ステップ１５０１〜１５０７）が繰り返し実行されることによって、所定の終了操作が行われた時点においては（ステップ１４０２ＹＥＳ）、図１７に示されるように、ワーク番号と余裕度とが対となってメモリテーブル内に格納される。こうして格納されたデータは、公知の手法を用いて、操作ボタン１０６〜１０９、表示器１０５，１０６を利用して任意に読み出し可能とされる。その結果、一通りワークの通過が完了した時点において、キー操作で終了指示を行い、その後図１７に示されるメモリテーブルの内容を読み出せば、各ワーク毎に現在のしきい値から見た余裕度を確認することができるから、これに基づき多数のワークが存在する場合にあっても、現在のしきい値が適切であるか否かを個別に判定することができる。
【００９８】
本発明に係る光電センサの更に他の実施の一形態が図１８〜図２１に示されている。この例にあっては、多数のワークが流れる生産ラインに光電センサを適用して個々のワークを検知する場合、最適な検知能力を発揮するためには、どの程度のしきい値に設定すればよいかをセンサ自体を用いて自動決定することを可能としている。
【００９９】
まず動作の概略を説明すると、図２１に示されるように、この実施形態にあっては、所定の操作によって、複数のしきい値候補Ａ，Ｂ，Ｃ，Ｄを設定し、その後実際にラインにワークを流しつつ、各しきい値Ａ，Ｂ，Ｃ，Ｄ毎に、検出回数（カウンタ値）をカウントし、予め設定されたサンプルワーク数に達したならば、そのサンプルワーク数と個々のしきい値Ａ，Ｂ，Ｃ，Ｄ毎の検出回数（カウンタ値）を照合することによって、両者が一致したしきい値を最適しきい値として決定するようにしたものである。以下、この動作を『第１のしきい値自動決定動作』と言う。
【０１００】
図１８には、第１のしきい値自動決定動作に必要な操作設定手順を示すフローチャートが示されている。すなわち、図１８に示されるように、この実施形態においては、まず、ワークサンプル数の入力を行う（ステップ１８０１）。このワークサンプル数の入力は、センサに設けられた操作キーを用いてサンプル数を設定する操作を通じて行われる。
【０１０１】
次に、しきい値候補となるべき仮のしきい値の設定を、同様なキー操作で行う（ステップ１８０２）。このとき仮のしきい値は複数（Ｓ）個分設定することが重要である。図２１の例にあっては、しきい値Ａ，しきい値Ｂ，しきい値Ｃ，しきい値Ｄからなる４個のしきい値が設定されている。
【０１０２】
続いて、計測開始入力を行う（ステップ１８０３）。この計測開始入力はキー入力により計測開始を指示する操作を通じて行われる。
【０１０３】
続いて、ワークを実際に生産ラインに投入し、サンプル数で指定した数のワークをラインに流しつつ、本発明センサによる検出動作を実施させる（ステップ１８０４）。
【０１０４】
最後に、計測終了入力を行う（ステップ１８０５）。この計測終了入力も、キー入力により計測終了を指示する操作を通じて行われる。
【０１０５】
以上一連の操作に対応して、実行される第１のしきい値自動決定処理のシステムプログラムの構成が、図１９及び図２０に示されている。
【０１０６】
同図において、処理が開始されると、まずイニシャル処理が実施されて、ワーク個数カウンタＸの値は初期値『１』に設定され（ステップ１９０１）、その後、ワークサンプル数の入力を待機する状態となる（ステップ１９０２ＮＯ）。
【０１０７】
この状態において、図１８に示されるようにワークサンプル数の入力が行われると（ステップ１８０１）、ワークサンプル数入力有りとの判定が行われ（ステップ１９０２ＹＥＳ）、入力されたワークサンプル数は、ワークサンプル数レジスタＮに格納される（ステップ１９０３）。
【０１０８】
その後、しきい値設定入力の行われるのを待機する状態となる（ステップ１９０４ＮＯ）。この状態において、図１８に示されるように、仮しきい値の設定が行われると（ステップ１８０２）、図１９の処理においてはしきい値設定入力有りとの判定が行われ（ステップ１９０４ＹＥＳ）、入力されたしきい値は、Ｘ番目のしきい値として設定され（ステップ１９０５）、ワークサンプル数カウンタＸの値は＋１更新される（ステップ１９０６）。以上の動作（ステップ１９０４〜１９０６）が、ワークサンプル数カウンタＸの値が最大ワークサンプル数Ｓに達するまで（ステップ１９０７ＮＯ）、繰り返し実行される。
【０１０９】
最大ワークサンプル数『Ｓ』だけしきい値候補の設定が完了すると（ステップ１９０７ＹＥＳ）、その後計測開始入力有りを待機する状態となる（ステップ１９０８ＮＯ）。この状態において、図１８に示されるように、計測開始入力が行われると（ステップ１８０３）、図１９のフローチャートにおいては、計測開始入力有りとの判定が行われ（ステップ１９０８ＹＥＳ）、図２０に移って、投受光処理が実行された後（ステップ２００１）、その後計測終了入力有りとの判定が行われるまでの間（ステップ２００３ＮＯ）、カウント処理が繰り返し実行される（ステップ２００２）。
【０１１０】
一方、図１８のフローチャートに示されるように、この状態でワークの投入を行えば（ステップ１８０４）、図２０においてカウント処理が実行される結果、図２１のグラフに示されるように、各しきい値Ａ，Ｂ，Ｃ，Ｄのそれぞれについて、受光量としきい値との比較が行われ、各しきい値Ａ，Ｂ，Ｃ，Ｄ毎に、検出回数に相当するカウンタ値が求められる。図２１の例にあっては、しきい値Ａに関してはカウンタ値は『３』、しきい値Ｂに対してはカウンタ値は『６』、しきい値Ｃに対してはカウンタ値は『７』、しきい値Ｄに対してはカウンタ値は『７』となる。尚、この例にあっては、ワーク数は『７』、サンプル数入力も『７』とされている。
【０１１１】
この状態において、図１８のフローチャートに示されるように、計測終了入力が与えられると（ステップ１８０５）、図２０のフローチャートにおいては、計測終了入力有りとの判定が行われ（ステップ２００３ＹＥＳ）、その後、メモリに記憶されたカウンタ値の内容Ｃ（Ｘ）を順に読み出しつつ（ステップ２００４，２００６）、読み出された内容Ｃ（Ｘ）をワークサンプル数Ｎと照合することによって（ステップ２００５）、最適しきい値の決定を行う。
【０１１２】
すなわち、読み出されたカウント値Ｃ（Ｘ）とサンプルワーク数Ｎとが一致するまで（ステップ２００５ＮＯ）、カウンタ値Ｃ（Ｘ）とサンプルワーク数Ｎとの照合を行い（ステップ２００５）、両者が一致したことを条件として（ステップ２００５ＹＥＳ）、Ｘ番目のしきい値を最適しきい値として決定する（ステップ２００９）。
【０１１３】
尚、記憶されたカウント値Ｃ（Ｘ）とサンプルワーク数Ｎとの照合を行いつつ、最大サンプル数Ｓを越えてもカウント値Ｃ（Ｘ）とサンプルワーク数Ｎとが一致しなければ（ステップ２００７ＹＥＳ）、所定のエラー処理（ステップ２００８）を実行して、処理を終了する。
【０１１４】
このように、図１８〜図２０の処理並びに操作を実行することによって、図２１に示される例であれば、しきい値Ｃの値が最適しきい値として決定されることとなる。つまり、受光光量の異なる複数のワークを搬送ラインに流しつつ、それらワークにとって最適なしきい値を、光電センサの機能それ自体を利用して、自動的に決定することができるのである。
【０１１５】
次に、図２２〜２５には、以上説明したしきい値自動決定処理の変形例（以下、『第２のしきい値自動決定動作』と言う）が示されている。この例にあっては、ユーザによるしきい値候補の設定操作さえも不要として、より操作性ないしは使い勝手の向上を図っている。
【０１１６】
まず処理の概略について図２５を参照して説明すると、先のしきい値決定処理にあっては、予めユーザサイドが複数のしきい値候補を設定することを必要としたが、この実施形態にあっては、図２５に示されるように、しきい値設定可能範囲内において、順次全てのしきい値を自動選択しつつ、その都度得られた受光量との大小比較を繰り返すことによって、個々のワークに対する受光量を設定可能な全てのしきい値と比較し、それらしきい値毎に検出回数をカウントするようにしている。
【０１１７】
第２のしきい値自動決定動作に必要な操作設定手順を示すフローチャートが図２２に示されている。同図に示されるように、設定操作に関しては、まず最初にワークサンプル数の入力を行う（ステップ２２０１）。このワークサンプル数の入力は、キー入力によるサンプル数を設定する操作を通じて行われる。
【０１１８】
続いて、計測開始入力を行う（ステップ２２０２）。この計測開始入力も、キー入力により計測開始を指示する操作を通じて行われる。
【０１１９】
続いて、ワークを投入する（ステップ２２０３）。このワークの投入は、サンプル数で指定したワークの数を投入する操作を通じて行われる。
【０１２０】
最後に、計測終了入力を行う（ステップ２２０４）。この計測終了入力も、キー入力により計測終了を指示する操作を通じて行われる。
【０１２１】
図２２に示される各操作（ステップ２２０１〜２２０４）に対応して、ＣＰＵ側が実行するシステムプログラムの構成が、図２３及び図２４のフローチャートに示されている。
【０１２２】
図２３において処理が開始されると、ＣＰＵ側では、まずワークサンプル数の入力を待機する状態となる（ステップ２３０１ＮＯ）。この状態において、図２２のフローチャートに示されるように、ワークサンプル数入力操作が行われると（ステップ２２０１）、図２３のフローチャートにおいては、ワークサンプル数の入力ありとの判定が行われ（ステップ２３０１ＹＥＳ）、続いて入力されたワークサンプル数の値はＮとしてメモリに格納され（ステップ２３０２）、続いてしきい値余裕度の入力を待機する状態となる（ステップ２３０３ＮＯ）。
【０１２３】
この状態において、しきい値余裕度の入力が行われると（ステップ２３０４）、入力されたしきい値余裕度（％）はＹとしてメモリに格納され、その後計測開始入力の到来を待機する状態となる（ステップ２３０５ＮＯ）。
【０１２４】
この状態において、図２２のフローチャートに示されるように、計測開始入力が与えられると（ステップ２２０２）、図２３のフローチャートにおいては、計測開始入力有りとの判定が行われ（ステップ２３０５ＹＥＳ）、続いて、図２４のフローチャートに移って、投受光処理が行われた後（ステップ２４０１）、先ほどと同様に、計測終了入力が与えられるまでの間（ステップ２４０３ＮＯ）、カウント処理（ステップ２４０２）が繰り返し実行される。
【０１２５】
このカウント処理においては、投受光処理で得られた検出値を１〜Ｘ番目のしきい値とそれぞれ比較し、ＯＮ／ＯＦＦ状態からワークのカウントを行う。それぞれのしきい値に対して検出したワークのカウント数をＣ（Ａ）に格納する（Ａ：１〜Ｘ）。
【０１２６】
その後、図２２のフローチャートに示されるように、計測終了入力が与えられると（ステップ２２０４）、図２４のフローチャートにおいては、計測終了入力有りとの判定が行われ（ステップ２４０３ＹＥＳ）、以後、しきい値自動決定処理への移行が行われる。
【０１２７】
このしきい値自動決定処理においては、先ほどと同様に、ワークカウンタＫの値を初期値Ｌから＋１ずつ更新しながら（ステップ２４０６）、カウンタＫで指定されるカウント値Ｃ（Ｋ）の値をワークサンプル数Ｎと照合する処理が実施される（ステップ２４０５）。このとき、両者が照合一致すれば（ステップ２４０５ＹＥＳ）、しきい値設定処理（ステップ２４０９）が実行されて、Ｋ＋（Ｋ×Ｙ）として最適しきい値の決定が行われる。
【０１２８】
このように、この第２のしきい値自動決定処理においては、ユーザがしきい値候補を複数決定するという複雑な操作を行わずとも、受光光量の異なる複数のワークに対し、最適なしきい値を自動決定して、適切な検出動作を実現することができる。
【０１２９】
このように、本発明にあっては、センサそれ自体に、ＯＮ／ＯＦＦ出力のカウント機能を内蔵したことによって、これを利用して、カウント値対応出力動作を行わせたり、個々のワーク別状態レベル情報を生成したり、しきい値を自動設定するといった、従来のセンサにはない様々な新規な機能を容易に実現することができるのである。
【０１３０】
尚、上記実施例では、図１、図３等で示したように、芯線４３と芯線４４とを設け、物体検出信号とカウントアップ信号をそれぞれ別個独立して出力するようにしたが、物体検出信号並びにカウントアップ信号を所定の切り替え動作を介して同一の芯線（出力線）から適宜に出力するように構成することも可能である。このようにセンサを構成すれば、同一のセンサを、あるときは物体検出を行う通常のセンサとして、またあるときは物体検出信号を利用したカウンタとして使用することができる。なお、このような光電センサは、第１の出力モードにあっては物体検出信号を、第２の出力モードにあってはカウントアップ信号を出力するように構成するとともに、前記出力モードを切り換える手段を設けることにより実現することができる。もっとも、このようなセンサの具体的態様は、上記実施の形態を参照すれば、当業者であれば容易に実現可能であろうから、ここでのこれ以上の説明は省略する。
【０１３１】
【発明の効果】
以上の説明で明らかなように、本発明によれば、特徴量取得手段と、判定手段と、第１の出力手段とを有するので、通常のセンサとしての機能を実現することに加え、新たにカウント手段と第２の出力手段とを設けたことによって、カウント手段によるカウント結果に対応する出力動作を行うことができる。そのため、単に検出対象領域に物体の有無を検出できるのみならず、検出対象領域に存在する又は通過する物体の個数に応じた情報を取得することができる。これを利用することによって、ユーザは、検出対象領域を物体が何個通過したか、或いは決められた個数の物体が通過したか、といった情報を取得し、様々な制御に利用することが可能となる。
【図面の簡単な説明】
【図１】本発明の一実施形態における光電センサの上部カバーを開いた状態における外観斜視図である。
【図２】本発明の一実施形態である光電センサの操作・表示部の拡大図である。
【図３】本発明の一実施形態である光電センサの電気的ハードウェア構成の全体を示すブロック図である。
【図４】ＣＰＵで実行されるシステムプログラムの全体を概略的に示すゼネラルフローチャートである。
【図５】ＳＥＴモード処理の全体を示すフローチャートである。
【図６】ＲＵＮモード処理の全体を示すフローチャートである。
【図７】カウント機能関連処理のフローチャートである。
【図８】カウント機能付き出力制御処理のフローチャートである。
【図９】本発明に係る光電センサの表示例を示す図である。
【図１０】本発明に係る光電センサの動作例を示す説明図である。
【図１１】本発明に係る光電センサの応用例（その１）を示す図である。
【図１２】本発明に係る光電センサの応用例（その２）を示す図である。
【図１３】本発明に係る光電センサの応用例（その３）を示す図である。
【図１４】ワーク別余裕度取得処理のフローチャートである。
【図１５】最大余裕度取得処理のフローチャートである。
【図１６】ワーク別余裕度取得動作のタイムチャートである。
【図１７】ワーク別余裕度取得処理に使用されるメモリテーブルの内容を示す説明図である。
【図１８】第１のしきい値自動決定動作に必要な操作設定手順を示すフローチャートである。
【図１９】第１のしきい値自動決定処理のフローチャート（その１）である。
【図２０】第１のしきい値自動決定処理のフローチャート（その２）である。
【図２１】第１のしきい値自動決定動作の説明図である。
【図２２】第２のしきい値自動決定動作に必要な操作設定手順を示すフローチャートである。
【図２３】第２のしきい値自動決定処理のフローチャート（その１）である。
【図２４】第２のしきい値自動決定処理のフローチャート（その２）である。
【図２５】第２のしきい値自動決定動作の説明図である。
【符号の説明】
１　光電センサ
２　投光用ファイバ
３　受光用ファイバ
４　電気コード
４１　ＧＮＤ用芯線
４２　Ｖｃｃ用芯線
４３　検出出力用芯線
４４　カウントアップ出力用芯線
４５　カウント動作指定信号入力用芯線
１０１　筐体
１０２　透明カバー
１０３　クランプレバー
１０４　ＤＩＮレール嵌合溝
１０５　第１の表示器
１０６　第２の表示器
１０７　第１の操作ボタン
１０８　第２の操作ボタン
１０９　第３の操作ボタン
１１０　第１のスライド操作子
１１１　第２のスライド操作子
２００　ＣＰＵ
２０１　電源部
２０２　投光部
２０２ａ　ＬＥＤ
２０２ｂ　ＬＥＤ駆動部
２０３　受光部
２０３ａ　ＰＤ
２０３ｂ　アンプ部
２０４　表示部
２０５　入力部
２０５ａ　キー入力部
２０５ｂ　信号入力部
２０６　出力部
２０６ａ　出力部
２０６ｂ　出力部
【図１】
2004102528.tif 000003
【図２】
2004102528.tif 000004
【図３】
2004102528.tif 000005
【図４】
2004102528.tif 000006
【図５】
2004102528.tif 000007
【図６】
2004102528.tif 000008
【図７】
2004102528.tif 000009
【図８】
2004102528.tif 000010
【図９】
2004102528.tif 000011
【図１０】
2004102528.tif 000012
【図１１】
2004102528.tif 000013
【図１２】
2004102528.tif 000014
【図１３】
2004102528.tif 000015
【図１４】
2004102528.tif 000016
【図１５】
2004102528.tif 000017
【図１６】
2004102528.tif 000018
【図１７】
2004102528.tif 000019
【図１８】
2004102528.tif 000020
【図１９】
2004102528.tif 000021
【図２０】
2004102528.tif 000022
【図２１】
2004102528.tif 000023
【図２２】
2004102528.tif 000024
【図２３】
2004102528.tif 000025
【図２４】
2004102528.tif 000026
【図２５】
2004102528.tif 000027