(57)【特許請求の範囲】
【請求項１】
ＰＬＣとの間でネットワークを介して入出力データのやり取りを行うための通信処理部と、
複数の透過型光電センサの各投光器の投光制御端子のそれぞれへと接続されるべき複数の出力端子を含む出力端子台と、
複数の透過型光電センサの各受光器の受光出力端子のそれぞれへと接続されるべき複数の入力端子を含む入力端子台と、
与えられた出力データに基づいて出力信号を生成し、これを出力端子台の該当する出力端子から外部へと送出する出力処理部と、
入力端子台を構成する入力端子へと外部から入力される入力信号を取り込んで対応する入力データを生成する入力処理部と、
制御部とを含み、
前記制御部には、
前記ＰＬＣからの指示を待つことなく、前記出力処理部への出力データの送出タイミングと前記入力処理部からの入力データ取込タイミングとを制御する投受光タイミング制御手段と、
前記投受光タイミング制御手段の作動下において、前記入力処理部を介して複数の入力端子のそれぞれから取り込まれる入力データを、各対応する透過型光電センサのワーク検出接点の動作状態として記憶するワーク検出接点メモリとが含まれており、
それにより、前記ＰＬＣの側では、相互干渉防止のための指示をスレーブ側へと与えることなく、単に、前記ワーク検出接点メモリの内容を参照するだけで、干渉防止機能の作動下において、各対応する透過型光電センサのワーク検出接点の動作状態を取得できる、ことを特徴とするＰＬＣのスレーブ。
【請求項２】
前記投受光タイミング制御手段が、
それぞれ投光停止中に対応する第１の論理状態期間と投光中に対応する第２の論理状態期間（α）とを交互に繰り返し、かつ投光中に対応する第２の論理状態期間（α）が信号相互間で重ならないように移相された複数系統の投光制御信号が、前記各投光器の投光制御端子へと接続されるべき複数の出力端子のそれぞれから出力されるように、前記出力処理部へと対応する出力データを与える投光タイミング制御手段と、
各投光器と対をなす受光器のそれぞれから、各対応する投光器の投光制御信号の第２の論理状態期間（α）内であって、期間（α）の開始から投受光間伝達遅れ相当期間（β）経過後の受光出力信号のみが、各受光器の受光出力端子へと接続されるべき複数の入力端子のそれぞれから取り込まれるように、入力処理部からの入力データ取込を制御する受光タイミング制御手段とを含む、ことを特徴とする請求項１に記載のＰＬＣのスレーブ。
【請求項３】
前記第２の論理状態期間（α）及び前記投受光間伝達遅れ相当期間（β）は、任意に変更可能なパラメータとして所定のパラメータ格納用メモリに格納されている、ことを特徴とする請求項２に記載のＰＬＣのスレーブ。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、プログラマブル・コントローラ（以下、ＰＬＣと言う）と通信を介して結ばれて入出力ターミナルとして機能するリモート入出力ターミナル（以下、スレーブと言う）に係り、特に、複数の透過型光電センサが接続されるＰＬＣのスレーブに関する。
【背景技術】
【０００２】
当業者にはよく知られているように、透過型光電センサを複数備えてワークの有無等の判定を行うようにした透過型光電センサシステムにあっては、ある透過型光電センサの受光器に他の透過型光電センサの投光器からの光が入射されること（一般に、「相互干渉」と言う）に起因して、ワークの有無等の誤判定が生ずる場合がある（特許文献１参照）。
【０００３】
単独型センサ使用の透過型光電センサシステムの応用例（ワークの高さ検出用）が図６に示されている。このセンサシステムには、４台の透過型光電センサ（以下、単に「センサ」という）が含まれている。第１乃至第４のセンサは、それぞれ投光器ＳＴ（１）〜（４）と受光器ＳＲ（１）〜（４）とを有する。図示例では、４台の投光器ＳＴ（１）〜（４）と４台の受光器ＳＲ（１）〜（４）とは、ワークＷの搬送路を挟んで、同一センサ同士が対向するようにして、上下方向に所定間隔を隔てて配置されている。すなわち、４台の投光器ＳＴ（１）〜（４）はワークの搬送路の図中左側に、４台の受光器ＳＲ（１）〜（４）は搬送路の図中右側にそれぞれまとめて配置されている。このような構成によれば、４台の受光器ＳＲ（１）〜（４）のうちで、下から連続する幾つまでがＯＮするかによって、ワークＷの高さを５段階に判定することができる。
【０００４】
判定誤りが生ずる例（対策なしの場合）が図７に示されている。このように、第１のセンサの投光器ＳＴ（１）からの光が拡散して第２のセンサの受光器ＳＲ（２）に入射されると、第２のセンサの投光器ＳＴ（２）からの光はワークＷにより遮られているにも拘わらず、第２のセンサの受光器ＳＲ（２）が上記の拡散光を受光することによりＯＦＦとなってしまい、ワークＷの高さ判定を誤る結果となる。
【０００５】
判定誤りが生ずる例（対策ありの場合）が図８に示されている。このように、対をなす投光器ＳＴと受光器ＳＲとの配置を１つおきに左右逆にしたとしても、第１のセンサの投光器ＳＴ（１）からの光がより広く拡散して第３のセンサの受光器ＳＲ（３）に入射されると、第３のセンサの投光器ＳＴ（３）からの光はワークＷにより遮られているにも拘わらず、第３のセンサの受光器ＳＲ（３）が上記の拡散光を受光することによりＯＦＦとなってしまい、やはり、ワークＷの高さ判定を誤る結果となる。
【０００６】
投受光タイミング同期による誤判定防止対策の説明図（連結型センサ使用の場合）が図９に示されている。この例にあっては、単独型センサに代えて連結型センサが採用されている。各連結型センサは、互いに対をなす連結型投光器ＳＳＴと連結型受光器ＳＳＲとから構成される。連結型投光器ＳＳＴは一連に連結された４個の投光器ＳＴ（１）〜（４）と、それらの投光器を順に１つずつ動作させる投光タイミング制御器ＣＴとを有する。連結型受光器ＳＳＲは一連に連結された４個の受光器ＳＲ（１）〜（４）と、それらの受光器を順に１つずつ動作させる受光タイミング制御器ＣＲとを有する。
【０００７】
このような連結型センサを採用した例によれば、所謂同期検波の技術が応用されているため、各受光器ＳＲ（１）〜（４）のそれぞれは、対面する各投光器ＳＴ（１）〜（４）が投光中でない限り、その受光出力信号が取り込まれることはないから、対面する以外の投光器からの拡散光が入射されても、ワークＷの高さ判定を誤ることはない。しかし、この連結型センサを使用する例にあっては、配線工数の増大並びにセンサ自体の価格が高価なことから、コストアップが招来されると言う問題がある。
【０００８】
投受光タイミング同期による誤判定防止対策の説明図（ＰＬＣ直結の場合）が図１０に示されている。この例にあっては、第１乃至第４のセンサは、制御盤内に配置されたＰＬＣ１によって投受光タイミングの同期が取られる。ＰＬＣ１はこの例ではビルディングブロック型のものとされ、バックプレーン上に装着される各種のユニットの中で、ＣＰＵユニット１２、出力ユニット１４ａ、及び入力ユニット１４ｂのみが図示されている。
【０００９】
出力ユニット１４ａは、一連の出力端子を有する出力用端子台を有する。この出力用端子台の各出力端子には、多芯ケーブルＣＶ１を介して、各投光器ＳＴ（１）〜（４）の投光制御端子が接続される。入力ユニット１４ｂは、一連の入力端子を有する入力用端子台を有する。この入力用端子台の各入力端子には、多芯ケーブルＣＶ２を介して、各受光器ＳＲ（１）〜（４）の受光出力端子が接続される。それらの出力ユニット１４ａ及び入力ユニット１４ｂは、図示しないバックプレーン上に敷設されたシステムバスを介して、ＣＰＵユニット１２との間で入出力データのやりとりが可能とされている。
【００１０】
ＣＰＵユニット１２内には、例えば、ユーザプログラムを格納するためのユーザメモリと、入出力データを格納するための入出力メモリと、ユーザプログラム実行機能が組み込まれたＡＳＩＣと、ユニット全体を統括制御するためのマイクロプロセッサと、マイクロプロセッサが実行すべきシステムプログラムを格納するためのシステムメモリと、マイクロプロセッサが各種のプログラムを実行するためのワークエリアとして使用されるワークメモリ等が設けられている。
【００１１】
マイクロプロセッサは、システムメモリに格納されたシステムプログラムを実行することにより、動作モードがＲＵＮモードの場合には、入出力更新処理と、ユーザプログラム実行処理と、周辺サービス処理とを１サイクルとして、これらの処理を繰り返し実行するように仕組まれている。
【００１２】
ここで、当業者にはよく知られているように、入出力更新処理とは、入力ユニット１４ｂから取り込まれた（通信マスタユニットが存在するときには、通信ユニットからの入力データの取り込みも含む）入力データを入出力メモリの入力領域に書き込む入力更新処理と、入出力メモリの出力エリアから読み出された出力データを出力ユニット１４ａに送り出す（通信マスタユニットが存在するときには、通信ユニットへの出力データの送り出しも含む）出力更新処理とから構成されている。
【００１３】
ユーザプログラム実行処理とは、ユーザメモリからユーザプログラムを構成する各命令語を順次に読み出すと共に、これを入出力メモリに格納される入出力データを参照して実行し、その実行結果で入出力メモリの内容を書き換えると言った一連の処理により構成されている。なお、周辺サービス処理とは、ツール装置との間でデータのやり取りを行ったり、ネットワークを介して他のＰＬＣとのデータのやり取りを行ったりする処理などで構成される。
【００１４】
一方、ユーザメモリに格納されるべきラダー図言語等で記述されるユーザプログラムとしては、複数のセンサ間における相互干渉を回避しつつ、各センサの受光器からの受光出力信号を取り込むように仕組まれた投受光タイミング制御プログラムが採用される。この投受光タイミング制御プログラムは、投光タイミング制御機能と受光タイミング制御機能とを含んで構成される。
【００１５】
投光タイミング制御機能は、複数系統の投光制御信号が、各投光器ＳＴ（１）〜（４）の投光制御端子へと接続されるべき複数の出力端子のそれぞれから出力されるように、出力ユニット１４ａへと対応する出力データを与えるように仕組まれている。これら複数系統の投光制御信号のそれぞれは、投光停止中に対応する第１の論理状態期間と投光中に対応する第２の論理状態期間（α）とを交互に繰り返すものであり、かつ投光中に対応する第２の論理状態期間（α）が投光制御信号相互間で重ならないように移相されている。
【００１６】
受光タイミング制御機能は、各投光器と対をなす受光器のそれぞれから、各対応する投光器ＳＴ（１）〜（４）の投光制御信号の第２の論理状態期間（α）内であって、期間（α）の開始から投受光間伝達遅れ相当期間（β）経過後の受光出力信号のみが、各受光器ＳＲ（１）〜（４）の受光出力端子へと接続されるべき複数の入力端子のそれぞれから取り込まれるように、入力処理部からの入力データ取込を制御するように仕組まれている。
【００１７】
このような投受光タイミング制御プログラムが組み込まれたＰＬＣ１を有するセンシングシステムによれば、同期検波の技術が応用されているため、各受光器ＳＲ（１）〜（４）のそれぞれは、対面する各投光器ＳＴ（１）〜（４）が投光中でない限り、その受光出力信号が取り込まれることはないから、対面する以外の投光器からの拡散光が入射されても、ワークＷの高さ判定を誤ることはない。しかも、この例にあっては、単独型のセンサをそのまま使用することができるため、センサ価格に起因するコストアップについては回避することができる。
【００１８】
しかし、この例にあっては、複数のセンサのそれぞれとＰＬＣ１の出力ユニット１４ａ、入力ユニット１４ｂとを多芯ケーブルで直結せねばならないから、センサとＰＬＣとが大きく離隔されている場合には、多芯ケーブルによる配線引き回し並びに配線工数の増大によりコストアップが招来されると言う問題点がある。
【特許文献１】特開平１０−３２４７９号公報
【発明の開示】
【発明が解決しようとする課題】
【００１９】
投受光タイミング同期による誤判定防止対策の説明図（スレーブを介してＰＬＣと接続する場合）が図１１に示されている。この例にあっては、第１乃至第４のセンサは、直接にではなくて、スレーブ２を介して、制御盤内に配置されたＰＬＣ１によって投受光タイミングの同期が取られる。ＰＬＣ１は、この例にあっても、ビルディングブロック型のものとされ、バックプレーン上に装着される各種のユニットの中で、ＣＰＵユニット１２と通信マスタユニット１３のみが図示されている。
【００２０】
なお、ＣＰＵユニット１２の内部構成については、先に図１０を参照して説明した通りである。また、ユーザメモリに格納されるべきユーザプログラムとしては、図１０を参照して説明したように、複数のセンサ間における干渉を回避しつつ、各センサの受光器からの受光出力信号を取り込むように仕組まれた投受光タイミング制御プログラムが採用される。
【００２１】
通信マスタユニット１３は、当業者にはよく知られているように、バックプレーン上に敷設されたシステムバスを介してＣＰＵユニット１２との間で入出力データのやり取りを行う一方、ネットワーク３を介して通信によりスレーブ２との間で入出力データのやり取りを行うように構成されている。ここで、ＣＰＵユニット１２との間の入出力データのやり取りは、ＣＰＵユニット１２の側で実行される入出力更新処理のタイミングに依存される。一方、スレーブ２との間における通信による入出力データのやり取りは、ＣＰＵユニット１２の側における入出力更新処理のタイミングとは非同期のタイミングにて実行される。
【００２２】
従来スレーブの構成図が図１２に示されている。同図（ａ）は機能構成図、同図（ｂ）はハードウェア構成図である。スレーブ２は、同図（ａ）に示されるように、ＰＬＣ１の通信マスタユニット１３との間でネットワーク３を介して入出力データのやり取りを行うための通信処理部２５と、複数の透過型光電センサの各投光器ＳＴ（１）〜（４）の投光制御端子のそれぞれへと接続されるべき複数の出力端子を含む出力端子台ＯＵＴ（図１１参照）と、複数の透過型光電センサの各受光器ＳＲ（１）〜（４）の受光出力端子のそれぞれへと接続されるべき複数の入力端子を含む入力端子台ＩＮ（図１１参照）と、与えられた出力データに基づいて出力信号を生成し、これを出力端子台ＯＵＴの該当する出力端子から外部へと送出する出力処理部２２と、入力端子台ＩＮを構成する入力端子へと外部から入力される入力信号を取り込んで対応する入力データを生成する入力処理部２１とを含んで構成されている。
【００２３】
より具体的には、同図（ｂ）に示されるように、上記の入力処理部２１の機能が外部入力との電気的な変換を行うための入力回路２１０により実現され、上記の出力処理部２２の機能が外部出力との電気的な変換を行うための出力回路２２０により実現され、さらに通信処理部２５の機能が通信用ＭＰＵ２５１、通信用ＡＳＩＣ２５２、及びトランシーバ２５３により実現される。
【００２４】
このような投受光タイミング制御プログラムが組み込まれたＰＬＣ１及びスレーブ２を有するセンシングシステムによれば、同期検波の技術が応用されているため、各受光器ＳＲ（１）〜（４）のそれぞれは、対面する各投光器ＳＴ（１）〜（４）が投光中でない限り、その受光出力信号が取り込まれることはないから、対面する以外の投光器からの拡散光が入射されても、ワークＷの高さ判定を誤ることはない。また、この例にあっても、単独型のセンサをそのまま使用することができるため、センサ価格に起因するコストアップについては回避することができる。しかも、複数のセンサのそれぞれとＰＬＣ１の通信マスタユニット１３との間にあって、センサの間近には、スレーブ２が介在されているため、センサとＰＬＣとが大きく離隔されている場合にも、多芯ケーブルによる配線引き回しはスレーブ２までで極力短くて済むと共に、スレーブ２と通信マスタユニット１３との間は通信ケーブルにて結ばれるため、多芯ケーブルの長距離引き回し並びに配線工数の増大によるコストアップについてはも回避することができる。
【００２５】
しかしながら、このような投受光タイミング制御プログラムが組み込まれたＰＬＣ１及びスレーブ２を有するセンシングシステムにおいては、ＣＰＵユニット１２と通信マスタユニット１３との間の入出力データのやり取りは、ＣＰＵユニット１２の側で実行される入出力更新処理のタイミングに依存される一方、通信マスタユニット１３とスレーブ２との間における通信による入出力データのやり取りは、ＣＰＵユニット１２の側における入出力更新処理のタイミングとは非同期のタイミングにて実行されるため、各センサのそれぞれにおいて、投光開始タイミングと受光読み取り開始タイミングとの遅れ時間との関係を適切に設定するためには、ユーザプログラム中において、理論上の遅れ時間に加えて、サイクルタイムに起因する時間誤差と通信処理に起因する時間誤差との双方を考慮してプログラミングを行わねばならず、相互干渉防止のためのプログラミングが極めて煩雑であるという問題点があった。
【００２６】
この発明は、上述の問題点に着目してなされたものであり、その目的とするところは、透過型光電センサを複数有するセンシングシステムにおける相互干渉の問題を投受光タイミング制御により解決することができ、センサ価格に起因するコストアップや多芯ケーブルの長距離引き回し並びに配線工数の増大によるコストアップについても回避することができ、しかも各センサのそれぞれにおいて、投光開始タイミングと受光読み取り開始タイミングとの遅れ時間との関係を設定するに際しても、ＰＬＣのユーザプログラム中においては、相互干渉防止のためのプログラムを一切組むことが不要となるようにしたＰＬＣのスレーブを提供することにある。
【００２７】
この発明のさらに他の目的並びに作用効果については、明細書の以下の記述を参照することにより、当業者であれば容易に理解されるであろう。
【課題を解決するための手段】
【００２８】
上述の技術的な課題は、以下の構成を有するＰＬＣのスレーブにより解決することができると考えられる。
【００２９】
すなわち、この発明のＰＬＣのスレーブは、通信処理部と、出力端子台と、入力端子台と、出力処理部と、入力処理部と、制御部とを含んで構成される。
【００３０】
ここで、通信処理部は、ＰＬＣとの間でネットワークを介して入出力データのやり取りを行うためのものである。出力端子台は、複数の透過型光電センサの各投光器の投光制御端子のそれぞれへと接続されるべき複数の出力端子を含んでいる。入力端子台は、複数の透過型光電センサの各受光器の受光出力端子のそれぞれへと接続されるべき複数の入力端子を含んでいる。出力処理部は、与えられた出力データに基づいて出力信号を生成し、これを出力端子台の該当する出力端子から外部へと送出する。入力処理部は、入力端子台を構成する入力端子へと外部から入力される入力信号を取り込んで対応する入力データを生成する。
【００３１】
以上の基本的な構成に加えて、制御部には、投受光タイミング制御手段と、ワーク検出接点メモリとが設けられている。
【００３２】
ここで、投受光タイミング制御手段は、ＰＬＣからの指示を待つことなく、出力処理部への出力データの送出タイミングと入力処理部からの入力データ取込タイミングとを制御する。
【００３３】
ワーク検出接点メモリは、投受光タイミング制御手段の作動下において、入力処理部を介して複数の入力端子のそれぞれから取り込まれる入力データを、各対応する透過型光電センサのワーク検出接点の動作状態として記憶する。
【００３４】
このような構成によれば、投受光タイミング制御手段は、ＰＬＣからの指示を待つことなく、複数の透過型光電センサの各対をなす投光器と受光器との間における相互干渉防止のための投受光同期をスレーブ独自に実現するために、出力処理部への出力データの送出タイミングと入力処理部からの入力データ取込タイミングとを制御する一方、ワーク検出接点メモリは、投受光タイミング制御手段の作動下において、入力処理部を介して複数の入力端子のそれぞれから取り込まれる入力データを、各対応する透過型光電センサのワーク検出接点の動作状態として記憶するため、ＰＬＣの側では、干渉防止のための指示をスレーブ側へと与えることなく、単に、ワーク検出接点メモリの内容を参照するだけで、干渉防止機能の作動下において、各対応する透過型光電センサのワーク検出接点の動作状態を取得することができる。
【００３５】
そのため、本発明のスレーブによれば、センシングシステムを構成する複数の透過型センサの側に配置して、通信を介してＰＬＣと接続することにより、相互干渉の問題を投受光タイミング制御により解決することができ、センサ価格に起因するコストアップや多芯ケーブルの長距離引き回し並びに配線工数の増大によるコストアップについても回避することができ、しかも各センサのそれぞれにおいて、投光開始タイミングと受光読み取り開始タイミングとの遅れ時間との関係を設定するに際しても、ＰＬＣのユーザプログラム中においては、相互干渉防止のためのプログラムを一切組むことが不要となると言う利点がある。
【００３６】
好ましい実施形態においては、投受光タイミング制御手段を、それぞれ所定の構成を有する投光タイミング制御手段と受光タイミング制御手段とで構成することができる。
【００３７】
この場合、投光タイミング制御手段は、それぞれ投光停止中に対応する第１の論理状態期間と投光中に対応する第２の論理状態期間（α）とを交互に繰り返し、かつ投光中に対応する第２の論理状態期間（α）が信号相互間で重ならないように移相された複数系統の投光制御信号が、前記各投光器の投光制御端子へと接続されるべき複数の出力端子のそれぞれから出力されるように、前記出力処理部へと対応する出力データを与える。
【００３８】
受光タイミング制御手段は、各投光器と対をなす受光器のそれぞれから、各対応する投光器の投光制御信号の第２の論理状態期間（α）内であって、かつ期間（α）の開始から投受光間伝達遅れ相当期間（β）経過後の受光出力信号のみが、各受光器の受光出力端子へと接続されるべき複数の入力端子のそれぞれから取り込まれるように、入力処理部からの入力データ取込を制御する。
【００３９】
このような構成によれば、複数の透過型センサを有するセンシングシステムにおいて、投光期間同士が重なることが無く、しかも受光期間については、投受光器間の信号伝達遅れを考慮して、投光に基づく受光信号が確実に受光されて取り込まれるため、信頼性の高いセンシング動作を実現することができる。
【００４０】
好ましい実施形態においては、第２の論理状態期間（α）、及び投受光間伝達遅れ相当期間（β）は、任意に変更可能なパラメータとして所定のパラメータ格納用メモリに格納されている。
【００４１】
このような構成によれば、上述のパラメータ格納用メモリに格納されたパラメータα、βの値を任意に所定のツールで書き換えることで、各々のセンシングシステムに特化した最適な運用が可能となる。
【発明の効果】
【００４２】
この発明によれば、透過型光電センサを複数有するセンシングシステムにおける相互干渉の問題を投受光タイミング制御により解決することができ、センサ価格に起因するコストアップや多芯ケーブルの長距離引き回し並びに配線工数の増大によるコストアップについても回避することができ、しかも各センサのそれぞれにおいて、投光開始タイミングと受光読み取り開始タイミングとの遅れ時間との関係を設定するに際しても、ＰＬＣのユーザプログラム中においては、相互干渉防止のためのプログラムを一切組むことが不要となると言った利点がある。
【発明を実施するための最良の形態】
【００４３】
以下にこの発明に係るＰＬＣのスレーブの好適な実施の一形態を添付図面を参照しながら詳細に説明する。
【００４４】
本発明スレーブが適用されたセンシングシステムの構成図が図１に示されている。同図に示されるように、このセンシングシステムは、１台のＰＬＣ１とＮ台のスレーブ２−１，２−２，・・・２−Ｎとをネットワーク３で結んで構成されている。
【００４５】
この例では、ＰＬＣ１としてはビルディングブロック型のものが採用されている。図示例のＰＬＣ１は、システムバスが敷設されたバックプレーン上に、電源ユニット１１、ＣＰＵユニット１２、通信マスタユニット１３、及び２台のＩ／Ｏユニット１４，１４をコネクタ接続することにより構成されており、電源ユニット１１はシステムバス上の電源ラインを介して各ユニット１２〜１４へと電源を供給している。
【００４６】
ＣＰＵユニット１２は、ＰＬＣ１の全体を統括制御するものであり、先に説明したように、その内部には、ユーザプログラムを格納するためのユーザメモリと、入出力データを格納するための入出力メモリと、ユーザプログラム実行機能が組み込まれたＡＳＩＣと、ユニット全体を統括制御するためのマイクロプロセッサと、マイクロプロセッサが実行すべきシステムプログラムを格納するためのシステムメモリと、マイクロプロセッサが各種のプログラムを実行するためのワークエリアとして使用されるワークメモリ等が設けられている。
【００４７】
マイクロプロセッサは、システムメモリに格納されたシステムプログラムを実行することにより、動作モードがＲＵＮモードの場合には、入出力更新処理と、ユーザプログラム実行処理と、周辺サービス処理とを１サイクルとして、これらの処理を繰り返し実行するように仕組まれている。
【００４８】
ここで、当業者にはよく知られているように、入出力更新処理とは、入出力ユニット１４及び通信マスタユニット１３から取り込まれた入力データを入出力メモリの入力領域に書き込む入力更新処理と、入出力メモリの出力エリアから読み出された出力データを入出力ユニット１４及び通信マスタユニット１３へと送り出す出力更新処理とから構成されている。
【００４９】
ユーザプログラム実行処理とは、ユーザメモリからユーザプログラムを構成する各命令語を順次に読み出すと共に、これを入出力メモリに格納される入出力データを参照して実行し、その実行結果で入出力メモリの内容を書き換えると言った一連の処理により構成されている。
【００５０】
なお、周辺サービス処理とは、図示しないツール装置との間でデータのやり取りを行ったり、ネットワークを介して他のＰＬＣとの通信を介してデータのやり取りを行ったりする処理などで構成される。
【００５１】
通信マスタユニットは、ネットワーク３を介して各スレーブ２−１，２−２，・・・２−Ｎとの間で入出力データのやり取りを行うための通信処理部と、ＣＰＵユニット１１との間でバックプレーン上のシステムバスを介してハンドシェイク処理によりデータのやり取りを行うための転送仲介メモリ（一般に、デュアルポートメモリで構成される）と、ユニット全体を統括制御するためのマイクロプロセッサを含んで構成される。
【００５２】
先に説明した出力更新処理においては、転送仲介メモリには、通信を介してスレーブ２−１，２−２，・・・２−Ｎのいずれかへと送信されるべき出力データが、ＣＰＵユニット１２側の制御で書き込まれる。こうして転送仲介メモリの所定領域に格納された出力データは、随時又は所定のタイミングで、転送仲介メモリの所定領域から読み出され、ネットワーク３を介する通信により、スレーブ２−１，２−２，・・・２−Ｎのうちの該当するものへと送られる。
【００５３】
一方、ネットワーク３を介する通信によりスレーブ２−１，２−２，・・・２−Ｎのいずれかから受信された入力データは、転送仲介メモリの所定領域に書き込まれる。こうして転送仲介メモリの所定領域に書き込まれた入力データは、先に説明した入力更新処理において、ＣＰＵユニット１２側の制御で読み出され、ＣＰＵユニット１２内の入出力メモリの入力領域に書き込まれる。
【００５４】
このようにして、入出力更新処理に際して、ＣＰＵユニット１２と通信マスタユニット１３との間で、転送仲介メモリを介して入出力データのやり取りが行われ、随時又は所定のタイミングにて、通信マスタユニット１３と各スレーブ２−１，２−２，・・・２−Ｎとの間において、ネットワーク３を経由する通信を介して、入出力データのやり取りが行われる。
【００５５】
次に、本発明の要部であるスレーブ２−１，２−２，・・・２−Ｎの構成について詳細に説明する。本発明スレーブの機能構成図が図２に、ハードウェア構成図が図３にそれぞれ示されている。
【００５６】
図１と図２とを参照して明らかなように、Ｎ台のスレーブ２−１，２−２，・・・２−Ｎのそれぞれは、ＰＬＣ１（正確には、ＰＬＣ１の通信マスタユニット１３）との間でネットワーク３を介して入出力データのやり取りを行うための通信処理部２５と、複数（この例ではＭ台）の透過型光電センサの各投光器ＳＴ（１）〜（Ｍ）の投光制御端子のそれぞれへと接続されるべき複数（Ｍ個）の出力端子ＯＵＴ１〜Ｍを含む出力端子台ＯＵＴと、複数の透過型光電センサの各受光器ＳＲ（１）〜（Ｍ）の受光出力端子のそれぞれへと接続されるべき複数の入力端子ＩＮ１〜Ｍを含む入力端子台ＩＮと、与えられた出力データに基づいて出力信号を生成し、これを出力端子台ＯＵＴの該当する出力端子ＯＵＴ１〜Ｍから外部へと送出する出力処理部２２と、入力端子台ＩＮを構成する入力端子ＩＮ１〜Ｍへと外部から入力される入力信号を取り込んで対応する入力データを生成する入力処理部２１と、スレーブ２の全体を統括する制御部２４とを含んで構成される。
【００５７】
制御部２４には、ＰＬＣ１からの指示を待つことなく、複数（Ｍ個）の透過型光電センサの各対をなす投光器ＳＴ（１）〜（Ｍ）と受光器ＳＲ（１）〜（Ｍ）との間における相互干渉防止のための投受光同期をスレーブ独自に実現するために、出力処理部２２への出力データの送出タイミングと入力処理部２１からの入力データ取込タイミングとを制御する投受光タイミング制御手段として機能するプログラム２４−２と、投受光タイミング制御手段の作動下において、入力処理部２１を介して複数の入力端子ＩＮ１〜Ｍのそれぞれから取り込まれる入力データに相当するワーク検出接点２４ａと、のちに詳述するパラメータ２４−３とが含まれている。
【００５８】
より具体的には、図２に示される入力処理部２１、出力処理部２２の機能は、図３に示されるように、外部入力との電気的変換を行う入力回路２１０、外部出力との電気的変換を行う出力回路２２０により実現することができる。また、図２に示される通信処理部２５の機能は、図３に示されるように、通信処理の全体を統括する通信用ＭＰＵ２５１、通通信用ＭＰＵ２５１の指令を受けてトランシーバ２５３を制御する通信用ＡＳＩＣ２５２、通信物理層を構成するトランシーバ２５３、及び通信用ＭＰＵ２５１と制御用ＭＰＵ２４１との間のデータのやり取りを仲介するデュアルポートＲＡＭ（ＤＰ−ＲＡＭ）２５４により構成することができる。
【００５９】
さらに、図２に示される制御部２４の機能は、スレーブ全体の動作を統括制御する制御用ＭＰＵ２４１、制御用ＭＰＵ２４１が実行すべきプログラムを格納するプログラム格納用メモリ２４２、プログラムの実行の際に参照される各種のパラメータを格納するパラメータ格納用メモリ２４３、及び制御用ＭＰＵ２４１が各種のプログラムを実行する際のワークエリアとして使用されるワークメモリ２４４により構成することができる。ここで、プログラム格納用メモリ２４２には、投受光タイミング制御手段として機能する投受光タイミング制御プログラム２４−２が格納される。また、パラメータ格納用メモリ２４３には、のちに詳述するパラメータα、βが格納される。さらに、ワークメモリ２４４のワーク検出接点領域２４４ａには、相互干渉防止機能の作動下において、各対応する透過型光電センサ２−１，２−２，・・・２−Ｎのワーク検出接点の動作状態が格納される。
【００６０】
次に、相互干渉防止のための投受光タイミング制御プログラム２４−２の内容を示すフローチャートが図４に示されている。この投受光タイミング制御プログラムは、それぞれ投光停止中に対応する第１の論理状態（“Ｈ”）期間と投光中に対応する第２の論理状態（“Ｌ”）期間（α）ｍｓとを交互に繰り返し、かつ投光中に対応する第２の論理状態（“Ｌ”）期間（α）が信号相互間で重ならないように移相された複数系統の投光制御信号が、前記各投光器の投光制御端子へと接続されるべき複数の出力端子のそれぞれから出力されるように、前記出力処理部へと対応する出力データを与える投光タイミング制御処理（ステップ１０３，１０４，１０７，１０９）と、各投光器と対をなす受光器のそれぞれから、各対応する投光器の投光制御信号の第２の論理状態期間（α）内であって、期間（α）の開始から投受光間伝達遅れ相当期間（β）ｍｓ経過後の受光出力信号のみが、各受光器の受光出力端子へと接続されるべき複数の入力端子のそれぞれから取り込まれるように、入力処理部からの入力データ取込を制御する受光タイミング制御処理（ステップ１０４，１０５，１０６，１０８）とを含んで構成されている。
【００６１】
同図において、電源ＯＮにより処理が開始されると、先ず、イニシャル処理として、タイマ設定値（α、β）及びセンサ接続数（ｎ（ｍａｘ））を読み出したのち、センサポインタｎの値を０から１つずつインクリメントしては（ステップ１０２，１１１）、一連の処理（ステップ１０３〜１０９）を繰り返し実行すると共に、センサポインタｎの値がセンサ接続数（ｎ（ｍａｘ））に達したならば（ステップ１１０ＹＥＳ）、再びセンサポインタｎの値を０に戻したのち（ステップ１０２）、以上の一連の処理（ステップ１０２〜１０９）を繰り返す。
【００６２】
上記の一連の処理（ステップ１０２〜１０９）は、センサポインタｎで指定されるセンサに対応する出力端子の出力信号をＯＦＦ（“Ｈ”状態）からＯＮ（“Ｌ”状態）とすることにより、センサポインタｎで指定されるセンサを投光停止状態から投光状態へと切り替え、同時に時間α、βの計測を開始する第１段階の処理（ステップ１０３，１０４）と、投受光器間信号遅れ時間に相当する時間βが経過するのを待って、センサポインタｎで指定されるセンサの入力ゲートを開く第２段階の処理（ステップ１０５，１０６）と、投光期間に相当する時間αが経過するのを待って、センサポインタｎで指定されるセンサに対応する入力端子の入力信号をラッチし、同時にセンサポインタｎで指定されるセンサに対応する出力端子の出力信号をＯＮ（“Ｌ”）からＯＦＦ（“Ｈ”）とすることにより、センサポインタｎで指定されるセンサを投光状態から投光停止状態へと復帰させる第３段階の処理（ステップ１０７，１０８，１０９）とから構成されている。
【００６３】
投受光タイミング制御プログラムの実行結果を示すタイムチャートが図５に示されている。同図に示されるように、投受光タイミング制御プログラムが実行されると、各投光器ＳＴ（０）〜ＳＴ（Ｎ）の投光制御端子へと接続されるべき複数の出力端子（出力０〜Ｎ）のそれぞれには、投光停止中に対応する“Ｈ”期間と投光中に対応する“Ｌ”期間（（α）ｍｓ）とを交互に繰り返し、かつ投光中に対応する“Ｌ”期間（（α）ｍｓ）が信号相互間で重ならないように移相された複数系統の投光制御信号が出力される。
【００６４】
一方、各受光器ＳＲ（０）〜ＳＲ（Ｎ）の受光出力端子へと接続されるべき複数の入力端子（入力０〜Ｎ）のそれぞれからは、各対応する投光器の投光制御信号の“Ｌ”期間（（α）ｍｓ）内であって、“Ｌ”期間（（α）ｍｓ）の開始から投受光間伝達遅れ相当期間（（β）ｍｓ）経過後の受光出力信号のみが取り込まれ、かつ投光制御信号の“Ｌ”期間（（α）ｍｓ）の終了時の信号がラッチ（保持）される。
【００６５】
そして、このラッチされた受光出力信号は、図３に示されるワークメモリ２４４のワーク検出接点領域２４４ａ内のセンサポインタｎで指定されるアドレス（ビット）に、各対応するセンサ２−１，２−２，・・・２−Ｎのワーク検出接点の動作状態として格納される。なお、受光出力信号のラッチタイミングは、各対応する投光器の投光制御信号の“Ｌ”期間（（α）ｍｓ）内であって、“Ｌ”期間（（α）ｍｓ）の開始から投受光間伝達遅れ相当期間（（β）ｍｓ）経過後の期間であれば、どのタイミングでも良いであろう。
【００６６】
こうして、ワーク検出接点領域２４４ａ内に格納された各センサ２−１，２−２，・・・２−Ｎのワーク検出接点２４ａの動作状態は、例えば、予め決められた送信タイミング（タイマ管理、イベント管理の双方を含む）の到来を待って、或いは通信マスタユニット１３から送信リクエストが到来するのを待って、ネットワーク３を介する通信により、通信マスタユニット１３へと送られ、さらに、前述のように、入力更新処理によって転送仲介メモリを介してＣＰＵユニット１２へと転送されることとなる。
【００６７】
以上の実施形態によれば、スレーブのプログラム格納用メモリ２４２に格納された投受光タイミング制御プログラム２４−２を制御用ＭＰＵ２４１が実行することで、複数のセンサ間における相互干渉防止機能が、ＰＬＣ１からの指令を待つことなく、スレーブ独自に実現されるため、ＰＬＣ１の側ではワーク検出接点領域２４４ａから読み出されかつ通信を介してスレーブから送られてくる所望のセンサに関するワーク検出接点の動作状態を取得するだけで済み、ユーザプログラム中に相互干渉防止のための投受光タイミング制御機能を組み込むことが不要となり、この種の複数の透過型光電センサを含むセンシングシステム取り扱いが容易となる利点がある。
【００６８】
また、上記のパラメータα、βはパラメータメモリ２４３に格納されると共に、ツールＩ／Ｆ回路２３０を介して所定のツールにて任意に書換可能とされているため、使用される透過型センサの特性に合わせてパラメータα、βの値を任意に変更することができ、しかもその際には、ＰＬＣのユーザプログラムに組み込みかつスレーブを介して伝達する従来例のように、理論上の遅れ時間に加えて、ＰＬＣのサイクルタイムに起因する時間誤差とＣＰＵユニットとスレーブとの間の通信処理に起因する時間誤差との双方を考慮する必要もなく、そのため、理論通りの遅れ時間βを設定するだけで、所望の相互干渉防止機能を確実に実現することができる。
【００６９】
なお、本発明に係るスレーブの運用方法の一例としては、例えば、投受光タイミング制御プログラム２４−２の全体については、ユーザ側の仕様に基づいて予め出荷時にメーカサイドで組み込む一方、パラメータα、βについては、ユーザ側で任意に書き換え可能とすることが考えられる。
【産業上の利用可能性】
【００７０】
この発明によれば、透過型光電センサを複数有するセンシングシステムにおける相互干渉の問題を投受光タイミング制御により解決することができ、センサ価格に起因するコストアップや多芯ケーブルの長距離引き回し並びに配線工数の増大によるコストアップについても回避することができ、しかも各センサのそれぞれにおいて、投光開始タイミングと受光読み取り開始タイミングとの遅れ時間との関係を設定するに際しても、ＰＬＣのユーザプログラム中においては、相互干渉防止のためのプログラムを一切組むことが不要となる。
【図面の簡単な説明】
【００７１】
【図１】本発明スレーブが適用されたセンシングシステムの構成図である。
【図２】本発明スレーブの機能構成図である。
【図３】本発明スレーブのハードウェア構成図である。
【図４】相互干渉防止のための投受光タイミング制御プログラムを示すフローチャートである。
【図５】投受光タイミング制御プログラムの実行結果を示すタイムチャートである。
【図６】単独型センサ使用の透過型光電センサシステムの応用例（ワーク高さ判定用）である。
【図７】判定誤りが生ずる例（対策なしの場合）である。
【図８】判定誤りが生ずる例（対策ありの場合）である。
【図９】投受光タイミング同期による誤判定防止対策の説明図（連結型センサ使用の場合）である。
【図１０】投受光タイミング同期による誤判定防止対策の説明図（ＰＬＣ直結の場合）である。
【図１１】投受光タイミング同期による誤判定防止対策の説明図（スレーブを介してＰＬＣと結合する場合）である。
【図１２】従来スレーブの構成図である。
【符号の説明】
【００７２】
１        ＰＬＣ
２        スレーブ
２−１    第１スレーブ
２−２    第２スレーブ
２−Ｍ    第Ｍスレーブ
３        ネットワーク
１１      電源ユニット
１２      ＣＰＵユニット
１３      通信マスタユニット
１４      Ｉ／Ｏユニット
２１      入力処理部
２２      出力処理部
２３      ツールＩ／Ｆ
２４      制御部
２４ａ    ワーク検出接点
２４−２  投受光タイミング制御プログラム
２４−３  パラメータ
２１０    入力回路
２２０    出力回路
２３０    ツールＩ／Ｆ回路
２４１    制御用ＭＰＵ
２４２    プログラム格納用メモリ
２４３    パラメータ格納用メモリ
２４４    ワークメモリ
２４４ａ  ワーク検出接点領域
２５      通信処理部
２５１    通信用ＭＰＵ
２５２    通信用ＡＳＩＣ
２５３    トランシーバ
２５４    デュアルポートＲＡＭ（ＤＰ−ＲＡＭ）
ＳＴ（１）〜（Ｍ）    投光器
ＳＲ（１）〜（Ｍ）    受光器
ＩＮ      入力端子台
ＯＵＴ    出力端子台
ＩＮ（１）〜（Ｍ）    入力端子
ＯＵＴ（１）〜（Ｍ）  出力端子
【図１】
0005158335.tif 000002
【図２】
0005158335.tif 000003
【図３】
0005158335.tif 000004
【図４】
0005158335.tif 000005
【図５】
0005158335.tif 000006
【図６】
0005158335.tif 000007
【図７】
0005158335.tif 000008
【図８】
0005158335.tif 000009
【図９】
0005158335.tif 000010
【図１０】
0005158335.tif 000011
【図１１】
0005158335.tif 000012
【図１２】
0005158335.tif 000013