(57)【特許請求の範囲】
【請求項１】
マスタユニットと、このマスタユニットに通信線を介して順にカスケード接続された複数のスレーブユニットとからなり、
上記各スレーブユニットは、カスケード接続された上位および下位のユニットとの間でそれぞれデータを通信する通信手段と、前記マスタユニットに通知すべきスレーブ情報が未送信のとき、該スレーブ情報を下位のスレーブユニットからの受信データに加えて上位のユニットに送信すると共に、前記スレーブ情報が送信済みの場合には下位のスレーブユニットからの受信データをそのまま送信データとして上位のユニットに送信する通信制御手段とをそれぞれ備え、
更に前記マスタユニットに対して最下位に位置付けられたスレーブユニット、および選択的に指定された中間位置のスレーブユニットにおける前記各通信制御手段は、前記マスタユニットからの通信要求に対して、前記マスタユニットに通知すべきスレーブ情報を最初の通信データとして同時に送信を開始する通信開始手段をそれぞれ備えることを特徴とする通信システム。
【請求項２】
前記マスタユニットからの通信要求に対して送信を開始する中間位置のスレーブユニットは、ユニット間で通信されるデータのフレーム構成に応じて、最下位のスレーブユニットを基準として定められる請求項１に記載の通信システム。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、通信手順が簡単で効率的なデータ通信を実現することができ、例えばマルチポイントのデータセンシングシステムとして用いるに好適な簡易な構成の通信システムに関する。
【０００２】
【関連する背景技術】
近時、複数箇所に設置されたセンサによるセンシング情報を集中管理部に収集して、その全体を統括管理するマルチポイントのデータセンシングシステムが種々の分野で用いられている。この種のセンシングシステムとして用いられる通信システムは、例えばＲＳ４８５に代表されるシリアル通信のように、一般的にはマスタユニットにバスラインを介して接続された複数のスレーブユニットに対してアドレス指定しながら、アドレス指定されたスレーブユニットとマスタユニットとの間でのそれぞれデータ通信を行う如く構成される。
【０００３】
【発明が解決しようとする課題】
しかしながら上述した通信システムにあっては、複数のスレーブユニットに対して予めアドレスを設定しておく必要があり、しかもアドレス指定によりスレーブユニットを特定すると言う通信手順を踏まえることが必要である。この為、各スレーブユニットとってはマスタユニットから指定されたアドレスを識別した上でデータ通信を制御することが必要なので、その処理負担が大きくなることが否めない。しかもマスタユニットにとっては、複数のスレーブユニットを順次指定しながら各スレーブユニットからのデータを順次個別に収集しなければならないので、データ収集効率が悪いと言う問題がある。
【０００４】
またスレーブユニットを増設する毎に、そのスレーブユニットに対する新たなアドレス設定が必要である上、各スレーブユニットの接続位置を管理する必要があるので、システムの構築・管理コストが高く、種々の仕様に合わせて柔軟にシステムを構築（変更）していくことが困難である等の不具合もある。
本発明はこのような事情を考慮してなされたもので、その目的は、通信手順が簡単で効率的なデータ通信を実現することのできる簡易な構成の通信システムを提供することにある。
【０００５】
【課題を解決するための手段】
上述した目的を達成するべく本発明に係る通信システムは、マスタユニットに対して複数のスレーブユニットを通信線を介して順にカスケード接続したものであって、特に各スレーブユニットに、カスケード接続された上位および下位のユニットとの間でそれぞれデータを通信する通信手段、および前記マスタユニットに通知すべきスレーブ情報が未送信のとき、該スレーブ情報を下位のスレーブユニットからの受信データに加えて上位のユニットに送信すると共に、前記スレーブ情報が送信済みの場合には下位のスレーブユニットからの受信データをそのまま送信データとして上位のユニットに送信する通信制御手段をそれぞれ設け、更に前記マスタユニットに対して最下位に位置付けられたスレーブユニット、および選択的に指定された中間位置のスレーブユニットにおける前記各通信制御手段には、前記マスタユニットからの通信要求に対して、前記マスタユニットに通知すべきスレーブ情報を最初の通信データとして同時に送信を開始する通信開始手段をそれぞれ設けたことを特徴としている。
【０００６】
即ち、本発明はカスケード接続されて通信システムを構築する複数のスレーブユニットのそれぞれにおいて、下位のスレーブユニットからの受信データに自己のスレーブ情報を付加することで新たな通信データを生成し、これをその上位のユニットに送信するようにしたもので、これによって各スレーブユニットが持つスレーブ情報を当該スレーブユニットを介するデータ通信が行われる都度、その通信データに順次統合しながら、上位のスレーブユニットを順に介してマスタユニットに伝送するようにしたことを特徴としている。
【０００７】
特に前記マスタユニットに対して最下位に位置付けられたスレーブユニット、および選択的に指定された中間位置のスレーブユニットにおける前記各通信制御手段においては、マスタユニットからの通信要求に対して該マスタユニットに通知すべきスレーブ情報を最初の通信データとしてそれぞれ送信を開始するように、その通信制御手段を構成することを特徴としている。
【０００８】
つまり最下位に位置付けられたスレーブユニット、および選択的に指定された中間位置のスレーブユニットは、通信要求に対して自己のスレーブ情報を最初の通信データとして、換言すれば空データが受信されたと看做して当該空データに自己のスレーブ情報を付加することで自己のスレーブ情報だけからなる通信データを生成し、その送信を開始することを特徴としている。
【０００９】
ちなみに選択的に指定されて、前記マスタユニットからの通信要求に対して送信を開始する中間位置のスレーブユニットは、請求項２に記載するように各スレーブユニット間で通信されるデータのフレーム構成に応じて、最下位のスレーブユニットを基準として定めることを特徴としている。具体的には、例えば各スレーブユニットから通知されるスレーブ情報が１ビットのオン／オフ情報からなり、各スレーブユニット間で通信されるデータのフレーム構成が８ビットを１フレーム単位とするような場合、最下位のスレーブユニットから８ユニット分（８ビット／１フレーム分）、遡った位置のスレーブユニットを、最下位置のスレーブユニットと同時に送信を開始する中間位置のスレーブユニットとして定めることを特徴としている。そしてこれらの各スレーブユニットからの通信データの同時送信により、カスケード接続された複数のスレーブユニットを順に介して、所謂パイプライン的にデータ伝送を行うことを特徴としている。
【００１０】
【発明の実施の形態】
以下、図面を参照して本発明の一実施形態に係る通信システムについて説明する。
図１はこの発明に係る通信システムの全体的な構成を示すもので、１はマスタユニット（ＭＵ）、２（２ａ,２ｂ,２ｃ,〜２ｎ）は通信線３を介して前記マスタユニット１に順にカスケードに接続された複数（ｎ台）のスレーブユニット（ＳＵ）である。これらの各スレーブユニット２（２ａ,２ｂ,２ｃ,〜２ｎ）は、カスケード接続された順位に従ってマスタユニット１に近い上位のものから順に、例えば＃０,＃１,＃２,〜＃(ｎ−１)として一義的にアドレス設定される。また上記通信線３は、例えば制御線３ｃやデータ線３ｄ、更にはクロック信号線等からなる。
【００１１】
尚、各スレーブユニット２は、例えば光電センサや磁歪式センサ等のセンシング素子を備えて、予め設定された計測（監視）対象部位での状態をそれぞれ検出し、その検出情報を、例えば１ビットのスレーブ情報として前記マスタユニット１に通知する役割を担う。これに対して前記マスタユニット１は、これらの各スレーブユニット２にてそれぞれ検出されたスレーブ情報を収集してその全体を統括管理する役割を担う（マルチセンシングシステム）。
【００１２】
しかして各スレーブユニット２は、例えば図２に示すようにＣＰＵからなる制御部２１を主体として構成され、後述する通信制御手順に従って前記マスタユニット１とのデータ通信を実行する。またスレーブユニット２には、該スレーブユニット２が備えた図示しないセンシング素子により、例えば所定の周期毎に検出される検出情報を前記マスタユニット１に通知すべきスレーブ情報として格納するスレーブ情報格納部２２が設けられると共に、該スレーブユニット２に対する初期設定データを格納する初期設定データ格納部２３が設けられる。これらの格納部２２,２３は、電気的にその格納情報を消去可能な情報記憶媒体であるＥＥＰＲＯＭ等を用いて実現される。
【００１３】
また各スレーブユニット２には、カスケードに接続された下位のスレーブユニットから送られてくる通信データを受信して前記制御部２１に取り込むデータ受信部２４、および制御部２１の下で生成された通信データを、カスケードに接続された上位のユニット（上位のスレーブユニット２またはマスタユニット１）に対して送信するデータ送信部２５が備えられる。これらのデータ受信部２４およびデータ送信部２５により、隣接するユニット間での通信データのシリアル通信が実現される。更にスレーブユニット２には、マスタユニット１から通知される制御信号を受信し、例えば通信要求としてのスタート信号（ＣＬＲ信号）を検出するスタート信号受信部２６が備えられる。
【００１４】
制御部２１は、基本的には上記スタート信号受信部２６にてマスタユニット１からのスタート信号（通信要求）が受信されたとき、前記スレーブ情報格納部２２に格納されているスレーブ情報を前記マスタユニット１に対して送信するべく動作する。この際、制御部２１は前記初期設定データ格納部２３に設定された初期設定データを参照して、当該スレーブユニット２が最初にデータ通信を開始するものとして設定されているか否かを判定する。具体的にはマスタユニット１に対して順にカスケード接続された最下位のスレーブユニットであるか否か、またマスタユニット１によって選択的に指定されるか、或いは後述する通信データのフレーム構成等に従って特定される中間位置のスレーブユニットであって、最下位のスレーブユニットと同時にデータ通信を開始するスレーブユニットであるか否かを判定する。
【００１５】
そして制御部２１は、前記スタート信号に従ってデータ通信を開始するスレーブユニットである場合には、前記スレーブ情報格納部２２に格納されているスレーブ情報を読み出して最初の通信データを作成し、これをデータ送信部２５から上位のユニットに向けて送信する。また制御部２１は、データ受信部２４にて下位のスレーブユニットから送られてきた通信データをデータ受信部２４にて受信したとき、当該受信データに前記スレーブ情報格納部２２に格納されているスレーブ情報を付加して新たな通信データを作成し、これをデータ送信部２５から上位のユニットに向けて送信する。尚、新たな通信データの作成は、スレーブ情報格納部２２に格納されているスレーブ情報を既に送信したか否かを監視しながら行われる。そして既にスレーブ情報の送信を完了している場合には、制御部２１は受信データをそのまま上位のユニットに対して送信するように、つまり単に通信データを中継するように通信動作制御する。
【００１６】
各スレーブユニット２は、制御部２１における上述した通信動作制御の下で下位のスレーブユニットから送られてきた通信データに自己のスレーブ情報を付け加えて上位のユニットに送信することで隣接するユニット間でのデータ通信を実行し、これによってカスケードに接続されたスレーブユニット２を介して前記マスタユニット１に対してスレーブ情報を伝送する。換言すればマスタユニット１に対してカスケードに接続された複数のスレーブユニット２（２ａ,２ｂ,２ｃ,〜２ｎ）は、マスタユニット１からのスタート信号（通信要求）を受けたとき、所謂将棋倒し（ドミノ倒し）的に上位のスレーブユニット２を介して、しかも下位のユニットから送られてきた通信データに自己のスレーブ情報を加えながら伝送することで、簡易に、且つ効率的にマスタユニット１に対してデータ通信することになる。
【００１７】
このように機能する通信システムについて更に詳しく説明すると、この通信システムは、例えば１ビットのオン／オフ情報からなるスレーブ情報を、８ビットを１フレーム単位とする構成の通信データとしてユニット間で伝送し、またマスタユニット１においては、１６ビットのデータを一括処理する能力を有するものとすると、マスタユニット１に対して最大１６台のスレーブユニット２がカスケード接続される。しかして図３に示すように１１台のスレーブユニット２がカスケード接続されるものとすると、これらの各スレーブユニット２にはカスケード接続された順序に従って、その上位のものから順に＃０,＃１,＃２,〜＃１０として一義的にアドレスが設定される。
【００１８】
この場合、アドレス＃１０の最下位のスレーブユニット２は、その下位に次のスレーブユニットがカスケード接続されていないことから、スタート信号（通信要求）を受けたときに、通信データの送信を最初に開始するユニットであることが特定される。また最下位のスレーブユニット２（＃１０）から遡って８台目までのスレーブユニット２（＃３）までが、８ビット／１フレーム構成の通信データとして各スレーブ情報をビット対応に付加しながら情報通信し得ることから、上位の（ｎ−８）台目のスレーブユニット２（＃２）に対しても、最下位のスレーブユニット２（＃１０）と同時に通信データの送信を最初に開始するユニットとして特定される。
【００１９】
このような通信データの送信を最初に開始するユニットである旨の情報は、例えばマスタユニット１からの個別のアドレス指定により該当するスレーブユニット２における前記初期設定データ格納部２３に記憶するようにすれば良い。或いはマスタユニット１から一斉通知されるスレーブユニットの接続台数の情報を受けて、各スレーブユニット２毎に通信データの送信を最初に開始するユニットであるか否かを判定して初期設定するようにしても良い。また或いは、複数のスレーブユニット２を順にカスケード接続して通信システムを構築していく際、各スレーブユニット２に組み込まれたディップスイッチ（図示せず）等を用いてマニュアル設定することも可能である。尚、各スレーブユニット２においては、その下位に次のスレーブユニット２が接続されているか否かをそれぞれ判定して、最下位のスレーブユニット２である旨を認識するようにしても良い。
【００２０】
このようにして通信データの送信を最初に開始するユニットが特定された条件下において、マスタユニット１から制御線３ｃを介して各スレーブユニット２に対してスタート信号（ＣＬＲ信号；通信要求）が発せられると、これを受けて各スレーブユニット２は自己のスレーブ情報Ｓ（Ｓ０,Ｓ１,Ｓ２,〜Ｓ１０）をマスタユニット１に対してそれぞれ通知するべく動作し、図３に示すように隣接するユニット間で順次データ通信を実行してスレーブ情報Ｓを伝送する。
【００２１】
具体的には最下位のスレーブユニット２（＃１０）と、前述した如く特定された中間位置のスレーブユニット２（＃２）は、通信データの送信を最初に開始するユニットとしてそれぞれ特定されていることから、自己のスレーブ情報Ｓ（Ｓ１０,Ｓ２）をそれぞれ最初の通信データＡ１,Ｂ１として作成する。換言すれば下位のユニットから空パケット（空データ）の通信データが受信されたと看做して、当該空データの特定のビット位置に自己のスレーブ情報Ｓ（Ｓ１０,Ｓ２）を付け加えることで最初の通信データＡ１,Ｂ１をそれぞれ作成し、これをその上位のユニットに送信する。
【００２２】
しかしてスレーブユニット２（＃１０）,２（＃２）からの通信データＡ１,Ｂ１をそれぞれ受信するその上位のスレーブユニット２（＃９）,２（＃１）は、これらの通信データＡ１,Ｂ１に自己のスレーブ情報Ｓ（Ｓ９,Ｓ１）をそれぞれ付け加えることで新たな通信データＡ２,Ｂ２を作成し、これをその上位のユニットに送信する。同様にしてその上位のスレーブユニット２（＃８）,２（＃０）は、スレーブユニット２（＃９）,２（＃１）からの受信データＡ２,Ｂ２に自己のスレーブ情報Ｓ（Ｓ９,Ｓ１）をそれぞれ付け加えることで新たな通信データＡ３,Ｂ３を作成し、これをその上位のユニットに送信する。この結果、マスタユニット１はスレーブユニット２（＃０）からの通信データＢ３を受信し、該受信データＢ３に付加されて伝送されたスレーブユニット２（＃２,＃１,＃０）からのスレーブ情報Ｓ（Ｓ２,Ｓ１,Ｓ０）を得ることになる。
【００２３】
尚、通信データＡ３は、その後、上位のスレーブユニット２を介する都度、当該スレーブユニット２のスレーブ情報Ｓが付加されて更にその上位のスレーブユニット２に伝送される。そして最下位のスレーブユニット２（＃１０）から送信された通信データＡ１が８番目のスレーブユニット２（＃３）を介して伝送される時点では、その通信データＡ８は１フレームを構成する情報ビットの全てに各スレーブユニット２（＃１０,＃９,〜＃３）からの各スレーブ情報Ｓ（Ｓ１０,Ｓ９,〜Ｓ３）がそれぞれ埋め込まれたものとなる。
【００２４】
しかしてこの通信データＡ８を受信するスレーブユニット２（＃２）は既にそのスレーブ情報Ｓ２を通信した後の２回目のデータ通信でり、マスタユニット１に新たに通知すべきスレーブ情報を持たないことから、その受信データＡ８をそのままその上位のユニットに対して送信する。同様にしてその上位のスレーブユニット２（＃１,＃０）においても、既にそのスレーブ情報Ｓ（Ｓ１,Ｓ０）を送信していることら、上記通信データＡ８をそのままその上位のユニットに送信する。この結果、マスタユニット１はスレーブユニット２（＃０）からの２回目の通信データＡ８を受信し、該受信データＡ８に付加されて伝送されたスレーブユニット２（＃１０,＃９,〜＃３）からの各スレーブ情報Ｓ（Ｓ１０,Ｓ９,〜Ｓ３）を得ることになる。
【００２５】
尚、前記各スレーブユニット２において実行される、通信データＡに対するスレーブ情報Ｓの付加、つまりスレーブ情報Ｓの埋め込みについては、例えば図４にその概念を示すように、カスケード接続されたスレーブユニット２の総数と、各スレーブユニット２に対して一義的に定められるアドレスとに従って特定される通信データフレーム中の、個々のスレーブユニット２に該当する情報ビット位置にそのスレーブ情報Ｓを順に埋め込んでいくようにすれば良い。また或いは図５にその概念を示すように、所定のフレーム構成の通信データをビットシフトしながら、その最下位の情報ビット位置に各スレーブユニット２のスレーブ情報Ｓを順に埋め込んでいくようにしても良い。
【００２６】
かくして上述した如く構成されて、各スレーブユニット２が持つスレーブ情報Ｓを、カスケード接続された上位のスレーブユニット２を次々と介してマスタユニット１に伝送していくこの発明に係る通信システムによれば、複数のスレーブユニット２をアドレス指定しながら、各スレーブユニット２との間で個々にデータ通信する必要がないので、その通信手順の大幅な簡素化を図ることができ、また通信効率の向上を図ることができる。特に各スレーブユニット２は、下位のスレーブユニット２から送られてきた通信データ（受信データ）に自己のスレーブ情報Ｓを付加することで、具体的には所定のフレーム構成の通信データ（受信データ）に自己のスレーブ情報Ｓを埋め込むことで新たな通信データを作成し、これを上位のユニットに送信するので、上述した例においては２回のデータ通信だけで極めて効率的に、各スレーブユニット２のスレーブ情報Ｓをマスタユニット１に伝送することができる。
【００２７】
しかも上述した例においては最下位のスレーブユニット２と、中間位置のスレーブユニット２とから同時にデータ通信を開始するので、上記中間位置のスレーブユニット２において区分される上位側のスレーブユニット群と、下位側のスレーブユニット群からの各通信データをパイプライン的に伝送することができ、この点でもデータ伝送効率の向上を図ることができると言う効果が奏せられる。
【００２８】
尚、実際的には各スレーブユニット２を、例えば図６に示すようにＣＰＵ２１を主体とし、このＣＰＵ２１にＥＥＰＲＯＭ２３やセンサ部をなすアナログ回路２２をそれぞれ接続すると共に、受信アンプ２４を介してＣＰＵ２１に通信データ（ＤＡＴＡ,ＣＬＫ）を取り込み、また送信アンプ２５を介してＣＰＵ２１からの通信データ（ＤＡＴＡ,ＣＬＫ）を送信するように構成すればよい。またマスタユニット１からのスタート信号（ＣＬＲ；通信要求）については、中継アンプ２６ａを介してＣＰＵ２１取り込むと共に、その出力をそのまま下位のユニットに対して位送出する如く構成するようにすればよい。
【００２９】
更にカスケード接続された最下位のスレーブユニットの検出については、抵抗２７ａを介してプルアップされて下位のスレーブユニットが接続される検出端子（Ｅ−ＣＨＫ）２７ｂを設けると共に、予め接地されて上位のスレーブユニットにおける上記検出端子２７ｂに接続される制御端子（Ｅ−ＣＨＫ）２７ｃを設けておき、前記検出端子２７ｂが接地されるか否かにより、その下位にスレーブユニットがカスケード接続されたか否かを自己判定するようにすれば良い。
【００３０】
またここではマスタユニット１から通知されて各ユニット間で相互通信される制御信号の通信制御手段として、上位のユニットから通知される制御信号に応じて動作制御されるゲート回路２８ａおよびセレクタ回路２８ｂが設けられている。そしてゲート回路２８ａおよびセレクタ回路２８ｂの選択的な動作により、該ユニットから発する制御信号を下位または上位のユニットに択一的に送信し、また上位のユニットに上記制御信号を送信しない場合には、上記セレクタ回路２８ｂを介して下位のユニットから通知される制御信号をそのまま上位に送信するように構成されている。
【００３１】
このように構成された通信制御手段によれば、例えばマスタユニット１からのアドレス指定の下で各スレーブユニット２における初期設定を行うような場合、アドレス指定されたスレーブユニット２においては、ゲート回路２８ａを閉じることでその下位のスレーブユニットに対する初期設定情報の伝達を禁止し、セレクタ回路２８ｂを介して上位のユニットに対してだけ、その応答を返すことが可能となる。また自己がアドレス指定されていない場合には、ゲート回路２８ａを開けることで期設定情報を下位のスレーブユニット２に通知し、また同時にセレクタ回路２８ｂを切り替えることで、下位のスレーブユニット２から通知される応答をそのまま上位のユニットに伝達することが可能となる。従って初期設定情報の通信を効率的に行うことが可能となる。
【００３２】
ちなみに図６に示す如く構成されたスレーブユニット２のＣＰＵ２１においては、例えば図７および図８にそれぞれ示すような処理手順の下でユニット間のデータ通信を制御するようにすれば良い。具体的には、マスタユニット１から通信要求（ＣＬＲ信号）が発せられたとき、図７に示すようにスレーブユニット２のＣＰＵ２１においては上記通信要求の受信をユニット間通信（マスタユニット１によるスレーブユニット２からのスレーブ情報の収集）の割り込みとして検出し［ステップＳ１］、所定の割り込み処理を起動する［ステップＳ２］。そして先ずＣＬＲ信号のアサートを確認し［ステップＳ３］、アサートが確認されたときにマスタユニット１に対して通知すべきデータを、例えば前述したセンサによる検出信号としてラッチする［ステップＳ４］。尚、ＣＬＲ信号のアサートが確認できなかった場合には、直ちに割り込み処理を終了して元のメインルーチン（スレーブユニット２における固有の処理）に戻る。
【００３３】
しかして各スレーブユニット２においては、前述した如くラッチした検出データに基づいてマスタユニットに通知すべき送信データ（スレーブ情報）を準備する［ステップＳ５］。このスレーブ情報の準備は、例えば自己に割り当てられたアドレスと、カスケード接続により構築されたシステムの全体に対する接続位置とのＯＲパターンを予め準備されたテーブルを参照して求めることで、ユニット間で通信されるデータの１フレーム中における自己に割り当てられたビット位置を求め、当該ビット位置に前記検出データを埋め込むことによってなされる。しかる後、送信データ（スレーブ情報）の送信を管理する送信済フラグＦをクリアして［ステップＳ６］、上記送信データ（スレーブ情報）の送信に待機する。
【００３４】
次いで自己のアドレスが、データ通信を最初に開始するスレーブユニット２を特定する送信開始アドレスであるか否かを判定し［ステップＳ７］、送信開始アドレスでない場合にはデータ受信部２４に対して受信割り込みを許可し、下位のスレーブユニット２からの通信データの順に待機する［ステップＳ８］。これに対して自己のアドレスが送信開始アドレスであるならば［ステップＳ７］、上記送信データ（スレーブ情報）をデータ送信部２５に出力し［ステップＳ９］、該データ送信部２５に送信開始要求を与えて該送信データ（スレーブ情報）を上位のユニットに対して送信する［ステップＳ１０］。
【００３５】
しかる後、自己のアドレスから、該通信システムにおける自局（スレーブユニット２）の位置が、前述したスレーブユニット２（＃０,＃１,＃２）ように１回の通信要求に対して２回に亘ってデータ通信を行う位置であるか否かを判定する［ステップＳ１１］。そして自己アドレスが上述した２回目のデータ通信に対応する必要のあるスレーブユニット２であることを示す場合には、前述したようにデータ受信部２４に対して受信割り込みを許可し、下位のスレーブユニット２からの通信データの受信に待機する［ステップＳ８］。これに対して自己アドレスが、前述したスレーブユニット２（＃３,〜＃９,＃１０）のように２回目のデータ通信に対応する必要がない場合には、前述した送信済フラグＦをセットし［ステップＳ１２］、データ送信部２５に対する受信割り込みを禁止する［ステップＳ１３］。
【００３６】
一方、前述した如くデータ送信部２５に対する受信割り込みを発生させた場合には、図８に記す処理手順に従ってデータ通信を制御する。この場合には、主審割り込み処理を起動し［ステップＳ２１］、先ず受信データにオーバーランが発生したか否かをチェックする［ステップＳ２２］。オーバーランが生じた場合には、当然のことながら正常なデータ通信を行い得ないので、異常処理を起動して通信異常に対処する［ステップＳ２３］。
【００３７】
しかして受信データにオーバーランが発生することなく、その通信データが正常に受信されたならば、次に自己のアドレスから、該通信システムにおける自局（スレーブユニット２）の位置が、前述したように２回に亘ってデータ通信を行う位置であるか否かを判定する［ステップＳ２４］。そしてスレーブユニット２（＃３,〜＃９,＃１０）のように１回のデータ通信を行うだけでよい場合には、その受信データに自己のデータ（スレーブ情報）を加えて送信データを生成してデータ送信部２５に出力し［ステップＳ２５］、該データ送信部２５に送信開始要求を与えて該送信データ（スレーブ情報）を上位のユニットに対して送信する［ステップＳ２６］。その後、前述した送信済フラグＦをセットし［ステップＳ２７］、データ送信部２５に対する受信割り込みを禁止して受信割り込み処理を終了する［ステップＳ２８］。
【００３８】
これに対して自己のアドレスが２回に亘ってデータ通信を行う必要のあるスレーブユニット２であることを示す場合には［ステップＳ２４］、次に前述した送信済フラグＦがセットされているか否かを判定する［ステップＳ２９］。そして送信済フラグＦがリセットされている（送信済みフラグがセットされていない）場合には、自局のスレーブ情報の送信が行われていないことが示されるので、受信データに自己のデータ（スレーブ情報）を加えて送信データを生成してデータ送信部２５に出力し［ステップＳ３０］、該データ送信部２５に送信開始要求を与えて該送信データ（スレーブ情報）を上位のユニットに対して送信する［ステップＳ３１］。その後、前述した送信済フラグＦをセットする［ステップＳ３２］。しかしこの場合には、２回目のデータ通信に対処する必要があるので、再度、データ送信部２５に対する受信割り込みを許可して次のデータ受信に待機して［ステップＳ３３］、前述した受信割り込み処理［ステップＳ２１］からの処理手順を繰り返し実行する。
【００３９】
しかしてこの２回目の受信割り込み処理においては、既に自己のスレーブ情報の送信を終了していることから、送信済フラグＦはセットされた状態にある。するとこの２回目の受信割り込み処理においては、ステップＳ２９において送信済フラグＦのセットが確認されることから、ＣＰＵ２１はデータ受信部２４にて受信された下位のスレーブユニット２からの受信データをそのまま送信データとしてデータ送信部２５にセットし［ステップＳ３４］、該データ送信部２５に送信開始要求を与えて上記送信データ（受信データ）を上位のユニットに対して送信する［ステップＳ３５］。その後、データ送信部２５に対する受信割り込みを禁止して受信割り込み処理を終了する［ステップＳ３６］。
【００４０】
このような図７および図８に示す一連の通信制御を前記各スレーブユニット２においてそれぞれ実行することで、各スレーブユニット２からマスタユニット１に対して通知すべきスレーブ情報が、カスケード接続された上位のスレーブユニット２を次々と介して、所謂将棋倒し（ドミノ倒し）的に効率良く、しかも高速にデータ通信されてマスタユニット１に収集される。また各スレーブユニット２にとっては、送信すべきスレーブ情報を持つ場合、受信データに自己のスレーブ情報を付け加えて上位のユニットに対する送信データとし、またスレーブ情報を既に送信している場合には、受信データをそのまま上位のユニットに送信するだけでよいので、その制御が非常に簡単であり、通信効率を妨げる虞もない等の効果が奏せられる。
【００４１】
尚、本発明は上述した実施形態に限定されるものではない。例えば実施形態においては８ビットを１フレームとする通信フォーマットでユニット間のデータ通信を行うものとして説明したが、１６ビットを１フレームとすることも勿論可能である。またデータ通信は必ずしもクロックに同期させて行う必要はなく（同期通信）、スタートビット情報等を付加しながら非同期で行うこともを勿論可能である。またカスケード接続するスレーブユニット２の数も特に限定されず、マスタユニット１における処理能力や、スレーブ情報のビット数等のシステム仕様に応じて定めるようにすれば良い。
【００４２】
更にはこの例では、カスケード接続された複数のスレーブユニット２を２つのブロック（グループ）に分け、１回の通信要求に対して２回のデータ通信を実行するものとして説明したが、グループ分けすることなくデータ通信を１回だけ行うようにしても良い。逆に複数のスレーブユニットを更に多くグループ分けして３回以上に亘ってデータ通信するようにしても良い。その他、本発明はその要旨を逸脱しない範囲で種々変形して実施することができる。
【００４３】
【発明の効果】
以上説明したように本発明によれば、カスケードに接続された複数のスレーブユニットが下位のユニットからの受信データにスレーブ情報を付け加えながら上位のユニットに送信するので、各スレーブユニットの情報を上位のユニットを順に介して効率的に介して伝送することができる。
【００４４】
特に複数のスレーブユニットとの間でアドレス指定しながら個別にデータ通信することなく、所謂将棋倒し（ドミノ倒し）的に、更にはパイプライン的にデータ通信を行い得るので、簡単なシステム構成の下で、簡易に、且つ効率的に情報伝送を行い得うことができ、マルチポイントのデータセンシングシステムに公的である等の実用上多大なる効果が奏せられる。
【図面の簡単な説明】
【図１】本発明の一実施形態に係る通信システムの全体的な構成を示す図。
【図２】図１に示す通信システムにおけるスレーブユニットの概略的な構成を示す図。
【図３】図１に示す通信システムのデータ通信形態の概念を模式的に示す図。
【図４】各スレーブユニットにおいて実行される受信データに対するスレーブ情報の付加処理の概念を示す図。
【図５】各スレーブユニットにおいて実行される受信データに対するスレーブ情報の付加処理の他の例を示す図。
【図６】スレーブユニットの具体的な構成例を示す図。
【図７】スレーブユニットにおいて実行されるデータ送信開始制御の処理手順の例を示す図。
【図８】スレーブユニットにおいて実行されるデータの受信とデータの送信制御の手順を示す図。
【符号の説明】
１  マスタユニット
２  スレーブユニット
３  通信線
２１  制御部（ＣＰＵ）
２２  スレーブ情報格納部（アナログ回路，ＥＥＰＲＯＭ）
２３  初期設定データ格納部（ＥＥＰＲＯＭ）
２４  データ受信部
２５  データ送信部
２６  スタート信号受信部
【図１】
0003852067.tif 000002
【図２】
0003852067.tif 000003
【図３】
0003852067.tif 000004
【図４】
0003852067.tif 000005
【図５】
0003852067.tif 000006
【図６】
0003852067.tif 000007
【図７】
0003852067.tif 000008
【図８】
0003852067.tif 000009