(57)【特許請求の範囲】
【請求項１】
シリアルバスに接続された複数ノード間で、該複数ノードの内、ある１つのノードを送信ノードとし少なくとも１つの他のノードを受信ノードとする通信チャネルであって、１又は複数の通信チャネルが設定されており、該１又は複数の通信チャネルを経由してデータ伝送をするシリアルバス伝送システムであって、
時分割された複数の時間スロットに、複数の識別信号時間スロット、及び、該複数の識別信号時間スロットのそれぞれに対応してデータ伝送時間スロット、が割り当てられるとともに、前記複数ノードの内、１つがマスターノード、その他がスレーブノードに割り当てられており、
前記マスターノードは、前記識別信号時間スロットで、当該マスターノードから前記通信チャネルを指示する識別信号を送信する識別信号送信手段を有し、
前記各ノードは、当該ノードが、前記識別信号時間スロットで送信された識別信号により指示される通信チャネルが設定されているノードに該当するときに、当該識別信号が送信された識別信号時間スロットに対応したデータ伝送時間スロットで、当該通信チャネルの設定内容に基づいて、当該通信チャネルを経由したデータ送信又はデータ受信をするデータ伝送手段を有する、
ことを特徴とするシリアルバス伝送システム。
【請求項２】
前記識別信号時間スロットに対応した前記データ伝送時間スロットは、当該識別信号時間スロットよりも所定時間遅れた時間スロットに割り当てられている、
ことを特徴とする請求項１に記載のシリアルバス伝送システム。
【請求項３】
前記通信チャネルは、前記ある１つのノードにおける送信データレジスタの特定領域から前記少なくとも１つの他のノードにおける受信レジスタの特定領域までに設定される、
ことを特徴とする請求項１又は２に記載のシリアルバス伝送システム。
【請求項４】
前記時分割された複数の時間スロットは、前記データ伝送のクロック周期の整数倍間隔で割り当てられる、
ことを特徴とする請求項１から３までのいずれか１項に記載のシリアルバス伝送システム。
【請求項５】
前記スレーブノードは、ゲート手段とクロック発生手段を有し、
前記ゲート手段は、前記シリアルバスから受信した受信信号を、前記データ伝送時間スロットにおいて阻止するとともに、前記識別信号時間スロットにおいて通過させ、
前記クロック発生手段は、前記ゲート手段を通過した受信信号に同期したクロック信号を出力し、
前記スレーブノードにおける前記データ伝送手段は、前記クロック発生手段が出力するクロック信号を基準として前記データ伝送をする、
ことを特徴とする請求項４に記載のシリアルバス伝送システム。
【請求項６】
前記各ノードは記憶手段を有し、
該記憶手段は、当該ノードに設定される１又は複数の前記通信チャネルのそれぞれを指示する１又は複数の識別信号と、当該１又は複数の通信チャネルの当該ノードにおける前記設定内容との対応テーブルを記憶する、
ことを特徴とする請求項１から５までのいずれか１項に記載のシリアルバス伝送システム。
【請求項７】
前記記憶手段は書き替え可能な記憶手段であり、
前記マスターノードは、当該マスターノードから、前記識別信号送信手段に対し、複数の設定処理用の識別信号を送信させるとともに、当該マスターノードの前記データ伝送手段に対し、前記設定処理用の識別信号が送信された識別信号時間スロットに対応したデータ伝送時間スロットで、ある１つの前記スレーブノードを特定する情報、前記ある１つのスレーブノードに設定される通信チャネルを指示する識別信号、及び、当該通信チャネルの前記ある１つのスレーブノードにおける前記設定内容を、前記シリアルバスに送信させる設定処理手段を有し、
前記各スレーブノードは、当該スレーブノードの前記データ伝送手段に対し、前記設定処理用の識別信号が送信された識別信号時間スロットに対応したデータ伝送時間スロットで、前記ある１つのスレーブノードを特定する情報、前記ある１つのスレーブノードに設定される通信チャネルを指示する識別信号、及び、当該通信チャネルの前記ある１つのスレーブノードにおける前記設定内容を受信させるとともに、受信した前記ある１つのスレーブノードを特定する情報が当該スレーブノードであるときは、受信した前記ある１つのスレーブノードに設定される通信チャネルを指示する識別信号、及び、受信した当該通信チャネルの前記ある１つのスレーブノードにおける前記設定内容により、前記書き替え可能な記憶手段に記憶された対応テーブルを設定する設定処理手段を有する、
ことを特徴とする請求項６に記載のシリアルバス伝送システム。
【請求項８】
前記複数の識別信号時間スロット及び該複数の識別信号時間スロットのそれぞれに対応したデータ伝送時間スロットを１セグメントとしてデータ伝送をする、
ことを特徴とする請求項１から７までのいずれか１項に記載のシリアルバス伝送システム。
【請求項９】
前記１セグメント単位における最初の識別信号時間スロットよりも前の時間スロットに、あらかじめ基準時間スロットが割り当てられ、
前記マスターノードは、前記基準時間スロットで、前記識別信号時間スロット及び前記データ伝送時間スロットにおいて送信されることのないパターンの基準信号を送信する基準信号送信手段を有し、
前記スレーブノードは、受信信号中に含まれる前記基準信号のパターンを識別することにより前記基準時間スロットを検出する基準信号検出手段を有する、
ことを特徴とする請求項８に記載のシリアルバス伝送システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、１つのマスターノードと複数地点にあるスレーブノードとがシリアルバスに接続された伝送システムであって、マスターノードと各スレーブノードとの間、及び、各スレーブノードの間でデータを双方向に伝送可能なシリアルバス伝送システムに関するものである。
具体的には、複数地点に設置されたセンサから測定データを制御装置に伝送したり、制御装置から制御データを複数地点に設置されたドライバ，アクチュエータ等へ伝送したりする。
【背景技術】
【０００２】
産業機器、製造装置等の大規模なシステム内では、多数のセンサや多数のドライバ，アクチュエータ等の入出力装置が各所に設置されている。これらに対し、装置を制御したり監視したりする、コンピュータやシーケンサ等の制御装置が設置されている。
センサがフォトインタラプタのようなものであれば、オン/オフ・データを、また、センサが温度や電圧等を検出するものであれば、これらをA/D変換したデータを、伝送路を経て制御装置に伝送する。一方、制御装置からは、制御データが伝送路を経てドライバ，アクチュエータ等に伝送され、モータやシリンダ等を制御する。
【０００３】
上述した伝送路として、センサやドライバの設置点ごとに１本のケーブルを用いれば、きわめて膨大な本数のケーブルが使用されることになる。そのため、システムの小型化、保守を困難にするなどの数多くの問題がある。
これに対し、シリアルバス伝送システムが知られている。例えば、１本ないし３本の信号線からなるバスラインに、バスを統括するマスターノードと、複数のスレーブノードとがマルチドロップ接続されたネットワークである（非特許文献１参照）。
シリアルバス伝送システムでは、信号電圧とその遷移状態の組み合わせで、各ノードの動作が規定されていて、各ノードは所定の手順でネットワーク制御フローを実行する。
【０００４】
ネットワーク制御方式としては、各ノードが任意にアクセスしても衝突を回避して制御権を確立することができるバス調停（アービトレーション）方式（非特許文献１、特許文献１）や、各ノードに対し、送信可能なタイムスロットが固定的に順次割当てられるサイクリック方式（特許文献２）等が知られている。そこで、伝送路としてシリアルバス伝送システムを採用すれば、ケーブルの物量を大幅に削減できる。
しかし、産業機器、製造装置内では、大きなノイズが発生しているため、ノイズに起因して、ネットワーク制御フローに異常が発生し、ノイズが長時間にわたって継続すると、ネットワーク制御フローが大きく混乱し、大規模システムが致命的な誤作動をするおそれがある。
【非特許文献１】中尾司、「マイコンの１線２線３線インターフェース活用入門」ＣＱ出版社（2007.6.15）P.16-33
【特許文献１】特開平９−２９４１３１号公報
【特許文献２】特開２００５−１５９７５４号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
本発明の目的は、上述した問題点を解決し、マスターノード及び複数のスレーブノードの間において、ノイズの影響を受けにくく安定したネットワーク制御が可能となるシリアルバス伝送システムを提供することにある。
【課題を解決するための手段】
【０００６】
請求項１に記載の発明においては、シリアルバスに接続された複数ノード間で、該複数ノードの内、ある１つのノードを送信ノードとし少なくとも１つの他のノードを受信ノードとする通信チャネルであって、１又は複数の通信チャネルが設定されており、該１又は複数の通信チャネルを経由してデータ伝送をするシリアルバス伝送システムであって、時分割された複数の時間スロットに、複数の識別信号時間スロット、及び、該複数の識別信号時間スロットのそれぞれに対応してデータ伝送時間スロット、が割り当てられるとともに、前記複数ノードの内、１つがマスターノード、その他がスレーブノードに割り当てられており、前記マスターノードは、前記識別信号時間スロットで、当該マスターノードから前記通信チャネルを指示する識別信号を送信する識別信号送信手段を有し、前記各ノードは、当該ノードが、前記識別信号時間スロットで送信された識別信号により指示される通信チャネルが設定されているノードに該当するときに、当該識別信号が送信された識別信号時間スロットに対応したデータ伝送時間スロットで、当該通信チャネルの設定内容に基づいて、当該通信チャネルを経由したデータ送信又はデータ受信をするデータ伝送手段を有するものである。
マスターノードが送信する識別信号により、通信チャネルが設定されるため、複数のスレーブノードが同時に送信してしまうような衝突が回避される。
時分割された複数の時間スロットに、識別信号時間スロット及びデータ伝送時間スロットが明確に分けられており、かつ、識別信号時間スロットに対応してデータ伝送時間スロットが割り当てられていることにより、通信チャネルが設定されている送信ノードと受信ノードとの間で、ノイズ等の影響でデータ伝送ができなくなったとしても、再び識別信号時間スロットを受信した時に通信チャネルが設定されるため、ネットワーク制御の信頼性が向上する。
【０００７】
請求項２に記載の発明においては、請求項１に記載のシリアルバス伝送システムにおいて、前記識別信号時間スロットに対応した前記データ伝送時間スロットは、当該識別信号時間スロットよりも所定時間遅れた時間スロットに割り当てられているものである。
データ伝送をする時間スロットが明確であるから、処理が容易である。識別信号時間スロットにより通信チャネルが指定されてから実際にデータ伝送をするまでに要する処理時間を考慮して、上述した所定時間を決めることができる。
データ伝送時間スロットを、識別信号時間スロットよりも１時間スロットの奇数倍（１時間スロット、３時間スロット等）、遅れた時間スロットに割り当てれば、識別信号時間スロットとデータ伝送時間スロットとが交互に割り当てられることになる。
【０００８】
請求項３に記載の発明においては、請求項１又は２に記載のシリアルバス伝送システムにおいて、前記通信チャネルは、前記ある１つのノードにおける送信データレジスタの特定領域から前記少なくとも１つの他のノードにおける受信レジスタの特定領域までに設定されるものである。
従って、送信ノードでは、伝送するデータを識別信号に応じて送信レジスタにおける記憶領域を異ならせて異なる通信チャネルとして送信することができる。受信ノードでは、伝送されたデータを識別信号に応じて受信レジスタにおける記憶領域を異ならせて異なる通信チャネルとして受信することができる。その結果、送信ノード及び受信ノードは、識別信号により指示される通信チャネルに応じて、伝送データに対して、異なるデータ処理をすることができる。
【０００９】
請求項４に記載の発明においては、請求項１から３までのいずれか１項に記載のシリアルバス伝送システムにおいて、前記時分割された複数の時間スロットは、前記データ伝送のクロック周期の整数倍間隔で割り当てられるものである。
従って、ノイズ等の影響で識別信号時間スロットやデータ伝送時間スロットが受信できなくなっても、クロック周期の整数倍間隔で割り当てられている識別信号時間スロットやデータ伝送時間スロットは、ノイズがなくなれば、再びクロック同期して、再び容易に検出されるから、ネットワーク制御の信頼性が向上する。
【００１０】
請求項５に記載の発明においては、請求項４に記載のシリアルバス伝送システムにおいて、前記スレーブノードは、ゲート手段とクロック発生手段を有し、前記ゲート手段は、前記シリアルバスから受信した受信信号を、前記データ伝送時間スロットにおいて阻止するとともに、前記識別信号時間スロットにおいて通過させ、前記クロック発生手段は、前記ゲート手段を通過した受信信号に同期したクロック信号を出力し、前記スレーブノードにおける前記データ伝送手段は、前記クロック発生手段が出力するクロック信号を基準として前記データ伝送をするものである。
識別信号時間スロットは、必ずマスターノードから送信される時間スロットであるから、正確なクロックに基づいて信号が送信されている。従って、スレーブノードにおいて、この識別信号時間スロットにおいてクロック発生手段をクロック同期させることにより、マスターノード及びスレーブノード間で、クロックの時間誤差が小さくなるから、正確なデータ受信及びデータ送信ができる。
【００１１】
請求項６に記載の発明においては、請求項１から５までのいずれか１項に記載のシリアルバス伝送システムにおいて、前記各ノードは記憶手段を有し、該記憶手段は、当該ノードに設定される１又は複数の前記通信チャネルのそれぞれを指示する１又は複数の識別信号と、当該１又は複数の通信チャネルの当該ノードにおける前記設定内容との対応テーブルを記憶するものである。
従って、スレーブノードの追加、既存のスレーブノードに設定される通信チャネルを変更する必要があったときにも、記憶手段に記憶された対応テーブルを変更することにより柔軟に対応できる。
記憶手段が書き替え可能な記憶手段であれば、記憶手段自体を取り替えなくてもよい。電源供給を受けていないときにも記憶内容を保持する不揮発性記憶手段、例えば、フラッシュROMであれば、さらによい。
【００１２】
請求項７に記載の発明においては、請求項６に記載のシリアルバス伝送システムにおいて、前記記憶手段は書き替え可能な記憶手段であり、前記マスターノードは、当該マスターノードから、前記識別信号送信手段に対し、複数の設定処理用の識別信号を送信させるとともに、当該マスターノードの前記データ伝送手段に対し、前記設定処理用の識別信号が送信された識別信号時間スロットに対応したデータ伝送時間スロットで、ある１つの前記スレーブノードを特定する情報、前記ある１つのスレーブノードに設定される通信チャネルを指示する識別信号、及び、当該通信チャネルの前記ある１つのスレーブノードにおける前記設定内容を、前記シリアルバスに送信させる設定処理手段を有し、前記各スレーブノードは、当該スレーブノードの前記データ伝送手段に対し、前記設定処理用の識別信号が送信された識別信号時間スロットに対応したデータ伝送時間スロットで、前記ある１つのスレーブノードを特定する情報、前記ある１つのスレーブノードに設定される通信チャネルを指示する識別信号、及び、当該通信チャネルの前記ある１つのスレーブノードにおける前記設定内容を受信させるとともに、受信した前記ある１つのスレーブノードを特定する情報が当該スレーブノードであるときは、受信した前記ある１つのスレーブノードに設定される通信チャネルを指示する識別信号、及び、受信した当該通信チャネルの前記ある１つのスレーブノードにおける前記設定内容により、前記書き替え可能な記憶手段に記憶された対応テーブルを設定する設定処理手段を有するものである。
従って、スレーブノードの書き替え可能な記憶手段に記憶された対応テーブルをマスターノードからシリアルバス経由で設定することができる。
【００１３】
請求項８に記載の発明においては、請求項１から７までのいずれか１項に記載のシリアルバス伝送システムにおいて、前記複数の識別信号時間スロット及び該複数の識別信号時間スロットのそれぞれに対応したデータ伝送時間スロットを１セグメントとしてデータ伝送をするものである。
従って、１セグメントでデータ伝送を終了したり、１セグメントを単位として同じデータ伝送を繰り返したり、異なるセグメントと組み合わせてデータ伝送することが容易になる。上述した１セグメントは、必要に応じて基準信号（スタート信号）や同期信号の時間スロットを含む場合がある。
【００１４】
請求項９に記載の発明においては、請求項８に記載のシリアルバス伝送システムにおいて、前記１セグメント単位における最初の識別信号時間スロットよりも前の時間スロットに、あらかじめ基準時間スロットが割り当てられ、前記マスターノードは、前記基準時間スロットで、前記識別信号時間スロット及び前記データ伝送時間スロットにおいて送信されることのないパターンの基準信号を送信する基準信号送信手段を有し、前記スレーブノードは、受信信号中に含まれる前記基準信号のパターンを識別することにより前記基準時間スロットを検出する基準信号時間スロット検出手段を有するものである。
従って、基準時間スロットを検出することにより、スレーブノードにおけるデータ伝送手段は、１セグメント単位を識別することができるから、セグメント単位で行う処理の基準とすることができる。また、スレーブノードにおけるデータ伝送手段は、基準時間スロットを基準としてすべての識別信号時間スロット及び前記データ伝送時間スロットの位置を識別できるから、ノイズ等により、マスターノードとスレーブノードとの間で、時間スロットの同期がずれても、基準時間スロットを検出することにより、再び時間スロットの同期をとることができる。その結果、ネットワーク制御の信頼性が向上する。
【発明の効果】
【００１５】
本発明によれば、ノイズに起因するネットワーク制御の異常を防止し、信頼性の高いシリアルバス伝送システムが実現されるという効果がある。
本発明は、ノイズに強いため、光や微弱電波を用いた無線通信にも好適である。
従来技術のような調停が不要なので、全ノード数が数十から数百以上の伝送システムにも有効である。
【発明を実施するための最良の形態】
【００１６】
以下に、図面を参照して本発明の実施の形態を詳細に説明する。
図１は、本発明の実施の一形態を具体例で示すブロック構成図である。図中、１はシリアルバス、２はインタフェース基板（マスター用）である。３1〜３nはインタフェース基板（スレーブ用）である。
４は、パーソナルコンピュータ（PC）、シーケンサ等の制御装置であって、インタフェース基板（マスター用）２を経由してシリアルバス１に接続されている。
インタフェース基板（スレーブ用）３1には、１又は複数の入出力装置５1〜５mが接続されている。インタフェース基板（スレーブ用）３1には、センサ等の入力装置、アクチュエータ、ドライバ等の出力装置が混在して接続されてもよいし、いずれか一方が接続されてもよい。他のインタフェース基板（スレーブ用）３2〜３nについても同様である。
【００１７】
シリアルバス１は、直列伝送路であり、例えば、ツイストペアの信号線であり、差動伝送方式でデータ信号が伝送される。インタフェース基板（マスター用）２とインタフェース基板（スレーブ用）３1〜３nとでは、ネットワーク制御の機能が大きく異なる。また、制御装置４との接続規格、入出力装置５1〜５mとの接続規格は、それぞれに適したものが採用される。なお、シリアルバス１の両端に接続されるインタフェース基板（スレーブ用）３1，３nには、終端抵抗が接続され、線路端での信号の反射を防止する。
インタフェース基板（マスター用）２からインタフェース基板（スレーブ用）３1〜３nに電源を供給する場合、上述した信号線と共に電源線を同一の外被覆（シース）内に収容したケーブルを用いれば、省配線化が図られる。
【００１８】
図２は、図１に示した実施の一形態をシリアルバス伝送システムとして見た時の構成図である。図２（ａ）はネットワーク構成図、図２（ｂ）は通信チャネルの具体例の説明図である。
図２（ａ）において、トポロジーはバス型であって、シリアルバス１に、マスターノード１２、複数のスレーブノード１３1〜１３nが接続されている。
マスターノードデバイス（以下、単にマスターノードという）１２は、図１のインタフェース基板（マスター用）２及び制御装置４に相当し、通信機能は主にインタフェース基板（マスター用）２により実行される。
スレーブノードデバイス（以下、単にスレーブノードという）１３1は、図１のインタフェース基板（スレーブ用）３1及び入出力装置５〜５m等に相当し、通信機能は主にインタフェース基板（スレーブ用）３1により実行される。他のスレーブノード１３2〜１３nについても同様である。
【００１９】
上述したシリアルバス伝送システムは、マスターノード１２と複数のスレーブノード１３1〜１３nとの間で、マスター、スレーブの区別なく、ノード間で双方向にデータ伝送が可能なものである。その際、ある１つのノードから送信したデータを複数のノードで受信することも可能である。
また、上述したシリアルバス伝送システムは、マスターノード１２と１又は複数のスレーブノード１３1〜１３nとの間で、マスターノードからスレーブノードへの一方向のデータ伝送しか行わないように限定されたり、スレーブノードからマスターノードへの一方向の伝送しか行わないように限定されたりするものでもよい。
【００２０】
図２（ｂ）に示すように、通信チャネルは、シリアルバス１上において、マスターノード１２とスレーブノード１３1との間に設定される。
本発明の実施の一形態では、データの通信方向を区別して通信チャネルを定義し、マスターノード１２からスレーブノード１３1への通信チャネルと、この逆方向の通信チャネルとを異なる通信チャネルとしている。
マスターノード１２は、上述した通信チャネルを設定する制御権（ネットワーク制御権）を独占的に有する。マスターノード１２は、図３を参照して後述するように、時分割された複数の時間スロットを規定している。スレーブノード１３1〜１３nは、受動的に伝送を実行する。
【００２１】
本発明の実施の一形態において、通信チャネルは、ある１つのノードにおける送信データレジスタの特定領域から少なくとも１つの他のノードにおける受信レジスタの特定領域までに設定される。
すなわち、送信データを格納する送信レジスタ（マスターノード１２では１２S、スレーブノード１３1では１３1S）において送信データを格納する特定領域（アドレスで指定される）と、受信レジスタ（マスターノード１２では１２R、スレーブノード１３1では１３1R）において受信データを格納する特定領域（アドレスで指定される）との間を、「通信チャネル」と定義している。
【００２２】
ここで、スレーブノード１３1に、ある１つのセンサ（例えば、入力装置５1）が接続されている場合、このセンサのデータを、送信レジスタ１３1Sの特定領域に記憶させる。マスターノード１２における制御装置４は、スレーブノード１３1から送信されたセンサのデータを、通信チャネルによって、どのセンサのデータであるかを認識することができる。同一のスレーブノードにおける複数のセンサのデータを伝送する場合には、通信チャネルを異ならせて、送信レジスタの異なる領域に記憶させればよい。
【００２３】
一方、スレーブノード１３1にある１つのアクチュエータ（例えば、出力装置５2）が接続されている場合、このアクチュエータへのデータを、受信レジスタ１３1Rの特定領域に記憶させる。マスターノード１２における制御装置４は、スレーブノード１３1に受信されるデータを、通信チャネルによって、どのアクチュエータへのデータであるかを指示することができる。同一のスレーブノードにおける複数のアクチュエータへのデータを伝送する場合には、通信チャネルを異ならせて、受信レジスタの異なる領域に記憶させればよい。
【００２４】
ある１つのノードから送信されたデータを複数のノードで受信する場合、本明細書では、これらをまとめて１つの通信チャネルとして定義する。
従って、ある特定のデータに着目して、伝送前におけるこのデータの所在地と、伝送後におけるこのデータの所在地までを、通信チャネルとして定義しているともいえる。
図２（ｂ）に示す具体例以外に、スレーブノード間に、通信チャネルが設定されてもよい。例えば、スレーブノード１３1の送信レジスタの特定領域から、スレーブノード１３2の受信レジスタの特定領域との間に通信チャネルを設定する。
【００２５】
図３は、図２に示した実施の一形態で用いる時分割伝送シーケンスを示す説明図である。横軸は時間である。
通信時間を一定時間ごとに区切り、区切られた個々の時分割区間を時間スロットという。図示の例では、複数の時間スロットを単位として、１セグメントを構成し、１セグメントを単位としてデータ伝送をする。
第１時間スロットは同期信号の時間スロット、第２時間スロットはスタート信号（基準信号）の時間スロットであり、同期信号とスタート信号とは、マスターノード１２が送信する。
【００２６】
次の、第３時間スロット以後において、奇数番目の時間スロットは識別信号の時間スロットである。
識別信号は、図２（ｂ）を参照して説明した通信チャネルを識別するためのIDデータであって、通信チャネルと、１対１に対応する。識別信号は、マスターノード１２が送信する。マスターノード１２において、各識別信号時間スロットで、どの識別信号を送信するかが、あらかじめプログラムされている。
第４時間スロット以後において、偶数番目の時間スロットは、データ伝送の時間スロットである。データ伝送の時間スロットにおいて、Ａ，Ｂ，Ｃ，…，Ｆと記載しているのは、各データ伝送の時間スロットにおける通信チャネルを例示している。
【００２７】
図２に示したマスターノード１２は、識別信号時間スロットで、マスターノードから通信チャネルを指示する識別信号を送信する識別信号送信手段を有する。
また、図２に示したマスターノード１２，スレーブノード１３1〜１３nは、自身のノードが、識別信号時間スロット（例えば、第３時間スロット）で、マスターノード１２から送信された識別信号（第１識別信号）により指示される通信チャネル（Ａ）が設定されているノードに該当するときに、この識別信号が送信された識別信号時間スロット（第３時間スロット）に対応したデータ伝送時間スロット（第４時間スロット）で、この通信チャネル（Ａ）の設定内容に基づいて、この通信チャネル（Ａ）を経由したデータ伝送をするデータ伝送手段を有する。
【００２８】
図示の例では、時分割された複数の時間スロットに、識別信号時間スロットとデータ伝送時間スロットとが交互に割り当てられる。かつ、直前（奇数番目）の時間スロットで送信された識別信号に対応したデータ伝送時間スロットは、直後（偶数番目）の時間スロットである。そのため、各スレーブノード１３1〜１３nにおいて、自身のスレーブノードが通信処理を実行する通信チャネルを指示する識別信号を受信してからデータを送受信するまでに、後述するアイドル期間分の時間的余裕しかない。
しかし、識別信号時間スロットに対応したデータ伝送時間スロットは、識別信号時間スロットよりも所定時間遅れた時間スロットに割り当てられてもよい。
例えば、時分割された複数の時間スロットに、識別信号時間スロットとデータ伝送時間スロットとが交互に割り当てられるが、識別信号で指定される通信チャネルのデータ伝送を実行する時間スロットを、この識別信号を受信した直後（偶数番目）の時間スロットではなく、さらに次の識別信号時間スロットの直後（偶数番目）の時間スロット（例えば、第３時間スロットに対し、第６時間スロット）としてもよい。
また、例えば、時分割された複数の時間スロットに、複数の識別信号時間スロットが連続して割り当てられた後に、これらの複数の識別信号時間スロットのそれぞれに対応して所定時間遅れた時間スロットにデータ伝送時間スロットが連続して割り当てられ、同様の割り当てが繰り返されてもよい。
【００２９】
図３に示した時分割伝送シーケンスは、マスターノード１２が規定するから、各スレーブノード１３1〜１３nにおいては、送受信する動作タイミングが明確である。その結果、シリアルバス１上にノイズが載った識別信号時間スロット又はデータ伝送時間スロットにおける伝送が影響を受けるだけで、他の時間スロットで実行されるデータ伝送は影響を受けないから、信頼性の高いデータ伝送が実現される。
これに対し、従来技術では、バス・アービトレーション制御ができなくなったり、サイクリックな送信順序が狂ったりする。
【００３０】
スレーブノード１３1〜１３nでは同期信号を受信して、クロック発生器をマスターノード１２のクロック信号に同期させる。同期信号は、例えば、全て同じデータ１又は0を表すデータビット列の信号である。
スタート信号は、マスターノード１２が規定するセグメントを、スレーブノード１３1〜１３nに認識させるためのものである。クロック同期をとってからスタート信号が識別される。その信号波形については、図７（ｆ）を参照して後述する。
スタート信号は、１セグメントの最初の識別信号の時間スロット（図示の例では、第３時間スロット）よりも前の時間スロットに割り当てればよい。従って、スタート信号の時間スロット（第１時間スロット）、同期信号の時間スロット（第２時間スロット）、識別信号の時間スロット（第３時間スロット）、データ伝送の時間スロット（第４時間スロット）、・・の順に、時間スロットを配置してもよい。
【００３１】
スレーブノード１３1〜１３nにおいて、１セグメントを識別する必要がない場合は、スタート信号を配置する必要がないし、同期信号で同期をかける必要がない場合は、同期信号を配置しなくてもよい。
しかし、図７を参照して後述するように、スタート信号の時間スロットを基準に、偶数時間スロット、奇数時間スロットの位置を明確に判定することができる。
【００３２】
上述した時間スロットは、データ伝送のクロック周期の整数倍間隔、図示の例では、19倍（時間スロット自体は、18ビット長）で割り当てられる。図示の例では、隣接する時間スロットの間にアイドル期間（1ビット長）を設けている。アイドル期間を設ける場合は、クロック周期との関係で規定され、例えば、クロック周期の整数倍であり、伝送規格に応じて、この期間にアイドルビットを挿入したり、この期間を無通信状態の電圧レベルにしたりする。
【００３３】
図４は、識別信号で指定された通信チャネルで通信処理を実行するための「設定内容のテーブル」を作成する元となるデータ例を示す説明図である。
識別信号で指定された通信チャネルで通信処理を実行するには、図４に示すように、処理を実行するノード、このノードにおける送信/受信の区別、データレジスタのアドレスの情報といった、識別信号で指定された通信チャネルの設定内容を示すデータが必要となる。
なお、処理を実行するノードとして、マスター、スレーブ１〜スレーブ３と記載しているが、実際には、すべてのノードには、マスターを含めて、ノード番号が割り当ててある。
【００３４】
図４は、すべてのノードを対象とした通信チャネルの設定内容のテーブルである。各ノード、特に、マスターノード１２においては、図４に示した設定内容のテーブルそのものを記憶してもよい。
しかし、自身のノードに設定される通信チャネル、すなわち、自身がデータ伝送（送信又は受信）を実行するノードに該当する、１または複数の通信チャネル（すなわち、１又は複数の識別信号）と、それらの通信チャネルの、自身のノードにおける通信チャネルの設定内容との対応のみを記述した「設定内容のテーブル」を、各ノードの記憶手段に記憶しておけばよい。このような「設定内容のテーブル」を、図１０に示してある。
【００３５】
ただし、受信ノードにおいて、受信したデータが、どのノードにおける送信レジスタのどの領域に記憶されたものであるか、又は、送信ノードにおいて、送信したデータが、どのノードにおける受信レジスタのどの領域に記憶されることになるかを、識別信号によって識別する必要があれば、自身のノードに設定される通信チャネルの送信ノードと受信ノードの両者における、通信チャネルの設定内容を記憶しておく必要がある。
【００３６】
図４において、識別信号「00000000001」は、通信チャネル（Ａ）を指示し、スレーブ１（スレーブノード１３1）を送信ノードとし、マスターノード１２を受信ノードとする。従って、スレーブノード１３1がマスターノード１２に対してデータを送信する。スレーブノード１３1の送信データレジスタにおけるアドレスは01H、マスターノード１２の受信データレジスタにおけるアドレスは01Hである。
【００３７】
識別信号「00000000101」は、通信チャネル（Ｅ）を指示し、スレーブ１（スレーブノード１３1）を送信ノードとし、２つのノード（マスターノード１２及びスレーブノード１３2）を受信ノードとしている。
識別信号「00000000110」は、通信チャネル（Ｆ）を指示し、マスターノード１２を送信ノードとし、３つのノード（スレーブノード１３1，１３2，１３3）を受信ノードとする。
【００３８】
識別信号「000 0000 0011」は、通信チャネル（Ｃ）を指示し、スレーブ３（スレーブノード１３3）を送信ノードとし、マスターノード１２を受信ノードとしている。識別信号「000 0000 0100」は通信チャネル（Ｄ）を指示し、同様に、スレーブ３（スレーブノード１３3）を送信ノードとし、マスターノード１２を受信ノードとしている。
従って、通信チャネル（Ｃ），（Ｄ）は、いずれも送信ノードと受信ノードが一致する。しかし、通信チャネル（Ｃ）においては、送信データレジスタのアドレスが01H、受信データレジスタのアドレスが03Hであるのに対し、通信チャネルＤにおいては、送信データレジスタのアドレスが02H、受信データレジスタのアドレスが04Hであり、アドレスが隣接している。
【００３９】
このような通信チャネル（Ｃ），（Ｄ）を、２個のデータ伝送時間スロット（例えば、図３における第８時間スロット，第１０時間スロット、必ずしも連続するデータ伝送時間スロットである必要はない）に設定することにより、スレーブノード１３3からマスターノード１２に対し、２個の通信チャネル分のデータをまとめて伝送することが可能である。使用する通信チャネル数を増やせば、データ長の長いデータを伝送可能となる。センサが出力するデータ長が長いときや、アクチュエータが入力するデータ長が長いときに、このような通信チャネルを設定することができる。
【００４０】
図５は、図３に示した時分割伝送シーケンスにおいて、識別信号を具体的に指定した場合の、送信ノード、通信相手のノード（受信ノード）を示す説明図である。
信号種別が「同期信号」、「スタート信号」の受信ノードは、すべてのスレーブノード１３1〜１３nである。
これに対し、「識別信号」及び「データ」の受信ノードは、この「識別信号」によって、「データ」の受信又は送信をするノードを記載している。
なお、図９を参照して後述するように、すべての「識別信号」及び「データ」は、すべてのスレーブノード１３1〜１３nにおいて受信されている。
【００４１】
図６は、図３に示した時分割伝送シーケンスにおける、１セグメント内の通信チャネル割当ての構成例を示す説明図である。
図６（ａ）に示す構成例１では、１セグメント中における通信チャネルが、Ａ，Ｂ，Ｃ，Ｄ，Ｅ，Ｆである。従って、同じ通信チャネルは１回しか割り当てられない。
【００４２】
図６（ｂ）に示す構成例２では、１セグメント中における通信チャネルは、Ａ，Ｂ，Ｃ，Ａ，Ｄ，Ｅ，Ａ，Ｆである。１セグメント中に、ある通信チャネルが複数回割り当てられる。すなわち、スレーブノード１３1がマスターノード１２に対し、通信チャネルＡにより、１セグメントあたり３つの時間スロット分のデータを伝送する。１セグメント内において、割り当てる時間スロットの数を増やすことで、ある通信チャネルの伝送容量（更新頻度ということもできる）を、他の通信チャネルよりも大きくし、伝送遅延を小さくすることができる。
【００４３】
図６（ｃ）に示す構成例３は、可変長セグメントの構成例である。
セグメント１における通信チャネルはＡ〜Ｆ、セグメント２の通信チャネルはＡ，Ｂ、セグメント３の通信チャネルは、Ａ〜Ｄ、セグメント４の通信チャネルは、Ａ，Ｂである。
従って、通信チャネルＡ及びＢ、通信チャネルＣ及びＤ、通信チャネルＥ及びＦの順に、データの伝送容量（更新頻度）が大きく、伝送遅延が小さい。
従って、複数のセグメントにおける通信チャネルの割当てを変更することにより、各通信チャネルの伝送容量（更新頻度）、伝送遅延を制御できる。
【００４４】
図６（ｃ）に示したように、１セグメントは、時間スロット（＋アイドル期間）を単位として、可変時間長とすることができる。
このシリアルバス伝送システムでは、図６（ａ），図６（ｂ）に示した１セグメント、図６（ｃ）に示した複数セグメントを１単位として、これを周期的に繰り返す方法の他、１単位で伝送を終了する方法、１単位毎に異なる通信チャネルを割り当てて、１単位を繰り返す方法を実行することができる。
上述した１単位が繰り返されるとき、１単位内の通信チャネル構成は、各セグメントで同じである必要はなく、全く自由に通信チャネル構成を設定できる。また、セグメントの長さ（時間スロット数）も、毎回同じである必要はなく、任意の長さのセグメントを組み合わせることも可能である。
【００４５】
図６に示したセグメント内の構成、及び、複数セグメント構成は、マスターノード１２に記憶しておけばよい。スレーブノード１３1〜１３nは、識別信号に応じてデータの送受信をするから、上述したセグメント構成等を記憶しておく必要はない。
【００４６】
図７は、図３に示した時分割伝送シーケンスにおける、識別信号とデータ伝送の時間スロットにおいて、データビット列の伝送フォーマット及び伝送路符号を示す説明図である。横軸はいずれも時間である。
図７（ａ）はデータビット列である。図示の例では、11ビットの情報ビットD0〜D10とエラー検出訂正用の５ビットの冗長ビットD11〜D15からなる。
図７（ｂ）は、データビット列の伝送フォーマットである。図示の例では、調歩同期形式を採用し、データビット列の頭に１ビット長のスタートビット、後に１ビット長のストップビットが付加される。
図示の例では、直前にある隣接時間スロットのストップビットとこの時間スロットとの間の「アイドル期間」に、１ビット長のアイドルビットを挿入し、この時間スロットとこの直後にある隣接時間スロットとの間の「アイドル期間」に、１ビット長のアイドルビットを挿入している。
【００４７】
図７（ｅ）に示すように、伝送路符号として周知のマンチェスタ符号を採用している。１ビット区間の中間において、一方のデータ値、例えば、「１」は立ち上がりの遷移で表現され、他方のデータ値「０」は立ち下がりの遷移で表現される。１ビット区間の境界では、前後の中間遷移に応じて遷移があったりなかったりする。この符号はセルフクロック符号であり、クロックタイミングを取り出すことができる。
図示の例では、スタートビットとアイドルビットに、データ「１」の時の伝送路符号を用い、ストップビットに、データ値「０」の時の伝送路符号を用いている。
【００４８】
図７（ｆ）は、スタート信号波形の一例を示す信号波形である。波線で省略していない図示区間においては、D15，D13，D3，D1、及び、ストップビットのビット区間において、図中、ｘ印を付した中間位置に信号遷移がないという、マンチェスタ符号規則違反（バイオレーション）をしたパターンである。
このようなバイオレーションを含んだ信号波形は、その他の時間スロットにおいて出現しない。
【００４９】
従って、マスターノード１２は、識別信号時間スロット及びデータ伝送時間スロットにおいて送信されることのないパターンのスタート信号（基準信号）を送信するスタート信号（基準信号）送信手段を有する。スレーブノード１３1〜１３nは、受信信号中に含まれる基準信号のパターンを識別することにより基準時間スロットを検出する基準信号時間スロット検出手段を有する。この基準信号時間スロット検出手段は、大きなノイズが発生しない限り、スタート信号のパターンを確実に識別できる。このスタート信号を基準に、偶数時間スロット、奇数時間スロットを識別できるから、識別信号時間スロットとデータ伝送時間スロットが明確に判定できる。
【００５０】
図８は、図２に示したシリアルバス伝送システムにおいて、１つのスレーブノード１３1〜１３nの機能構成を示すブロック図である。
図中、枠で囲ったブロック２１は、ハードウエア回路を用いてもよいが、１チップマイコン等で構成可能な機能ブロックである。
スレーブノード１３1〜１３nは、コネクタ２２を介してシリアルバス１に接続される。
【００５１】
まず、送信側の機能構成を説明する。
２３は入力信号端子であり、図１に示したセンサ５1〜５m等が出力するデータを入力する。２４は入力インタフェースであり、センサがアナログ信号を出力する場合は、これをA/D変換してデジタルデータを出力する。
２５は送信データレジスタであり、複数ビットのデータを一時的に記憶する。
２６は送信データ選択手段であって、制御手段３８からの制御信号に従って、シリアルバス１に送信すべきデータ、例えば、送信データレジスタ２５の特定領域（通信チャネルに設定されたデータレジスタのアドレスで指定される）に書き込まれたセンサ５1のデータを選択して出力する。
ここで、制御手段３８は、記憶手段３９に記憶された「設定内容のテーブル」を参照し、受信した識別信号により指示される通信チャネルが設定されているノードに、このスレーブノードが該当し、かつ、送信が設定されていれば、送信データ選択手段２６、後述するパラレルシリアル変換手段２８、送信信号出力回路２９に、それぞれに応じた制御信号を出力する。
【００５２】
２７はエラー検出訂正符号化手段であって、送信データ選択手段２５で選択されたデータに冗長ビットを付加して並列データを出力する。エラー検出訂正符号に拡張ハミング符号を用い、図７に示したように、11ビットの情報に5ビットの冗長ビットを付加して16ビットの送信用データビット列とする。
なお、シリアルバス伝送システムにとって、識別信号及び伝送データのエラー検出訂正符号化は必須ではない。従って、エラー検出訂正符号化手段２７及びエラー検出訂正復号手段３３を省略することもできる。
２８はパラレルシリアル（並列直列）変換手段と記載しているが、ここでは、並列ビットを直列ビット列に変換するとともに、スタートビット、ストップビットの付加、伝送路に適した伝送路符号（図７の例では、マンチェスタ符号）に変換することも行う。
【００５３】
このパラレルシリアル変換手段２８は、制御手段３８からの制御信号により、送信すべきデータ伝送時間スロットにおいて動作し、後述する受信信号処理手段３１から出力されるクロック信号を基準にして、セルフクロック伝送路符号（図７の例では、マンチェスタ符号）に符号化する。
送信信号出力回路２９は、伝送路符号化信号を差動信号電圧にし、コネクタ２２を経由してシリアルバス１に出力するとともに、制御手段３８からの制御信号により、送信データを出力しない期間は、出力インピーダンスを高い状態にする。
【００５４】
次に、受信側の構成を説明する。
３０は受信信号入力回路であり、コネクタ２２を経由してシリアルバス１の信号を受信し、矩形波に波形整形して出力する。受信信号入力回路３０の入力インピーダンスは、シリアルバス１の信号に影響を与えないように、なるべく高いことが望ましい。入力容量が10pF以下であれば好適である。
【００５５】
３１は受信信号処理手段であって、矩形波を入力し、クロック発生及び伝送路符号を復号しビットデータ列を再生出力する。ここで再生されたクロック信号は、スレーブノードにおいて、送信信号及び受信信号の基準となる。
受信信号処理手段３１内にあるクロック発生手段は、図１１を参照して後述するように、マスターノード１２から送信された同期信号及び識別信号を受信し、これらの信号のレベル遷移点のタイミングにより、クロック発生手段を同期させる。
受信信号処理手段３１は、また、スタート信号を検出し、制御手段３８に出力する。
【００５６】
３２はシリアルパラレル変換手段であって、伝送路符号が復号されたデータビット列を16ビットの並列ビット列に変換する。３３はエラー検出訂正符号の復号手段であって、エラー検出訂正を行い、11ビットのデータビット列（エラー検出訂正された識別信号又は伝送データ）を出力する。
制御手段３８は、エラー検出訂正されたデータビット列を入力し、識別信号時間スロットにおいてエラー検出訂正された識別信号を取得する。制御手段３８は、記憶手段３９に記憶された「設定内容のテーブル」を参照し、エラー検出訂正された識別信号により指示される通信チャネルが設定されているノードに、このスレーブノードが該当し、かつ、受信が設定されていれば、受信データ処理手段３４に制御信号を出力する。
受信データ処理手段３４は、制御手段３８から出力される制御信号に従って、エラー検出訂正されたデータビット列の中から、データ伝送時間スロットにおいてエラー検出訂正された伝送データを受信データとして取り込み、受信データレジスタ３５の特定領域（通信チャネルに設定されたデータレジスタのアドレスで指定される）に格納する。
【００５７】
３６は出力インタフェースであって、受信データレジスタ３５に格納されたデータを利用回路に適した信号にし、出力信号端子３７を経由して出力する。出力されるデータは、ドライバ，アクチュエータ等を制御するデータである。アナログ信号を外部に出力する場合は、D/A変換をする。
制御手段３８は、記憶手段（例えば、不揮発性で書き替え可能な、フラッシュROM）３９に格納された、このスレーブノード１３1〜１３nに対応する「設定内容のテーブル」（例えば、図１０（ｂ）〜図１０（ｄ））を参照して、制御信号を出力することにより、送信制御及び受信制御を実行する。
【００５８】
図８に示したブロック構成は、スレーブノード１３1〜１３nにおける機能ブロック図であった。
マスターノード１２における機能ブロックがスレーブノード１３1〜１３nと相違する点は、図３に示した、同期信号、スタート信号、及び、識別信号という伝送制御信号を、予め規定された時間スロットで送信することと、自身の基準発振器の周波数をもとにクロック信号を生成する点にある。
【００５９】
図９は、図８に示したスレーブノードのデータ伝送機能を、ソフトウエアで実現する場合のデータ伝送処理を説明するフローチャートである。図８における送信データ選択手段２６、受信データ処理手段３４の機能、及び、制御手段３８の一部の機能を実現する。
図１０は、図２に示したシリアルバス伝送システムにおいて、各ノードの記憶手段３９に格納されている「設定内容のテーブル」の説明図である。
これは、先に図４を参照して説明した「設定内容のテーブル」のうち、各ノードに必要な識別信号とこの識別信号に対応する通信チャネルの設定データのみを取り出した限定版である。
【００６０】
図９のフローチャートは、識別信号時間スロットの区間において、識別信号を受信することにより起動する。
Ｓ４１において、図１０に示した、自身のノードの「設定内容のテーブル」を参照する。
Ｓ４２において、受信した識別信号が、自身の「設定内容のテーブル」にあるか否かを判定する。あればＳ４３に処理を進め、なければ以後の処理を終了し、再び識別信号の受信を待つ。すなわち、自身のノードを送信ノード又は受信ノードとする通信チャネルを指示する識別信号であれば、処理を進める。
Ｓ４３において、自身の「設定内容のテーブル」から、マスターノード１２より送信された識別信号に対応する「送信・受信の区別」を参照し、送信であればＳ４４に処理を進め、受信であればＳ４６に処理を進める。
【００６１】
送信の場合、Ｓ４４において、自身の「設定内容のテーブル」から、マスターノード１２より送信された識別信号に対応する「データレジスタのアドレス」を参照する。送信データレジスタにおける、参照した「データレジスタのアドレス」により指示されるデータを選択し、Ｓ４５において、選択したデータを、受信した識別信号時間スロットに対応した所定のデータ伝送時間スロット（次のデータ伝送時間スロット）のタイミングで送信し、再び識別信号の受信を待つ。
【００６２】
一方、受信の場合、Ｓ４６において、受信した識別信号時間スロットに対応した所定のデータ伝送時間スロット（次の時間スロット）のタイミングでデータを受信し、Ｓ４７において、自身の「設定内容のテーブル」から、「データレジスタのアドレス」を参照する。受信データレジスタにおける、参照した「データレジスタのアドレス」に、受信したデータを格納し、再び識別信号の受信を待つ。
【００６３】
図９に示したデータの送受信動作は、マスターノード１２においても、同様である。ただし、識別信号を受信する必要はなく、自身が識別信号を送信することにより起動する。
【００６４】
図１１は、図８に示した受信信号処理手段３１において実行されるクロック発生処理の説明図である。
図１１（ａ）は機能ブロック図であり、図１１（ｂ）は各部の信号を示す波形図である。
図８の受信信号入力回路３０から出力された受信信号６１は、ゲート手段５１に入力される。
ゲート手段５１は、後述するタイマー手段５４が出力するゲート制御信号６２に制御され、奇数番目の時間スロットにおいて受信信号６１を通過させる。図３に示した例では、同期信号も奇数番目の時間スロットで送信されている。
【００６５】
なお、同期信号が偶数番目のタイムスロットで送信される場合には、同期信号の時間スロットもゲートを通過させるように設計する。スタート信号が送信される時間スロットは、ゲートを通過させないようにする。
従って、ゲート手段５１を通過した受信信号６３は、図３に示した時分割伝送シーケンスにおける、同期信号又は識別信号の時間スロットにおける、マスターノード１２から送信された受信信号のみとなる。マンチェスタ符号はセルフクロック符号であるから、クロック成分を含んでいる。
【００６６】
PLL（Phase Locked Loop）型クロック発生手段５２は、ゲート手段５１を通過した受信信号６３と自身が出力するクロック信号とを位相比較し、位相差に応じて出力するクロック信号のビット周期を制御することにより、ゲート手段５１を通過した受信信号６３と位相同期したクロック信号を出力する。
【００６７】
スタート信号検出手段５３は、受信信号６１を入力し、図７（ｆ）に示した、マンチェスタ符号規則を満たさないパターンを、例えば、比較照合用に保持しているスタート信号のパターンと比較することによりスタート信号を検出する。スタート信号を検出すると、タイマー手段５４が出力するゲート信号６２を、次の奇数番目の第３時間スロットにタイミングが合うように、強制的に立ち上げる。タイマー手段５４は、PLL型クロック発生手段５２から出力されるクロックを計数することにより、奇数番目の時間スロットにおいてゲートを開くゲート制御信号６２を出力する。
【００６８】
データ再生手段５５は、受信信号６１を入力し、PLL型クロック発生手段５２から出力されるクロック信号を基準に、マンチェスタ符号を復号する。復号の結果、同期信号時間スロットでは、予め決められたデータ列（例えば、全て１）が出力され、スタート信号の時間スロットではデータが出力されないようにし、識別信号時間スロット、データ伝送時間スロットでは、伝送路エラーが発生していない限り、送信されたデータビット列が出力される。
なお、データ再生手段５５の前に、第２のゲート手段を挿入し、識別信号時間スロット及びデータ伝送時間スロットの受信信号のみを通過させるようにしてもよい。
【００６９】
図２に示したシリアルバス伝送システムにおいて、増設したスレーブノードに「設定内容のテーブル」を初期設定したり、既にあるスレーブノードに設定する通信チャネルを変更設定したりする場合は、図１０に示した、各ノードに格納されている「設定内容のテーブル」の初期設定又は変更設定をする必要がある。
【００７０】
図１２は、図２に示したシリアルバス伝送システムにおいて、マスターノード１２が図１０に示した自身の「設定内容のテーブル」を設定するとともに、マスターノード１２がシリアルバス１を経由してスレーブノード１３1〜１３nのそれぞれにある、図１０に示した「設定内容のテーブル」を設定する処理を示すフローチャートである。
図１２（ａ）は、マスターノードにおける設定処理のフローチャート、図１２（ｂ）はスレーブノードにおける設定処理のフローチャートである。
図１２（ａ），図１２（ｂ）は、それぞれ、マスターノード１２，スレーブノード１３1〜１３nにあるマイクロコンピュータが、それぞれのコンピュータプログラムにより実行する。
【００７１】
図１３は、図１２に示した設定処理に用いる「設定処理用の識別信号」の説明図である。
図１３（ａ）は、すべてのノードにおける、設定処理用の識別信号と、対応する通信チャネルの設定内容との対応を示す、「設定処理用の設定内容のテーブル」の元となるデータの説明図である。
図１３（ｂ）は、データレジスタに書き込む設定処理用のデータを示す説明図である。マスターノード１２の送信データレジスタにおいて、設定処理用のデータを書き込むアドレスが決められている。スレーブノード１３1〜１３nの受信データレジスタにおいても、同様に、設定処理用のデータを書き込むアドレスが決められている。図示の例では、各データレジスタにおいて、アドレスを一致させている。
マスターノードを含め、すべてのノードには、ノードの番号が割り当ててある。また、すべてのノードは、少なくとも、図１３（ａ）に示した、「設定処理用の設定内容のテーブル」の元となるデータのうち、自身が設定処理を実行するノードに該当するもののみを選択して、「設定処理用の設定内容のテーブル」に格納しておく。
図１３（ａ）の例では、「処理を実行するノード」が「マスター」又は「すべてのスレーブ」であることから、すべてのスレーブノード１３1〜１３nにおいて、「設定処理用の設定内容のテーブル」が同一になる。
【００７２】
図１２（ａ）のフローチャートのＳ７１において、すべてのノードに対する「設定内容のテーブル」を作成する元となるデータ（初期設定時には図４に示した元データ、変更設定時には図４に示した元データを変更したもの）をマスターノード１２に格納する。これは、ユーザが手動で行うこともある。
Ｓ７２において、上述した元となるデータに基づいて、マスターノード１２が処理を実行するノードに該当する通信チャネルの設定内容を、識別信号とともに、自身の「設定内容のテーブル」に書き込む。その結果、図１０（ａ）に示した「設定内容のテーブル」が設定される。これは、マスターノード１２の内部のデータ転送で行われる。
なお、Ｓ７２の処理を省略し、上述したすべてのノードに対する「設定内容のテーブル」を作成する元となるデータを、マスターノード１２の「設定内容のテーブル」として使用してもよい。
【００７３】
Ｓ７３において、上述した元データに基づいて、その「設定内容のテーブル」を変更する対象とする１つのスレーブノードの番号（ｉ）を、送信レジスタのＦ０Ｈに格納する。
Ｓ７４において、上述した元データに基づいて、スレーブノード（ｉ）における変更対象となる１つの識別信号（ｊ）と対応する通信チャネルの設定内容とを、送信レジスタのＦ１Ｈ〜Ｆ３Ｈに書き込む。
Ｓ７５において、Ｆ０Ｈ〜Ｆ３Ｈのチェックサムを送信レジスタＦ４Ｈに書き込む。
Ｓ７６において、書き込み指令ビットなどの特殊処理用データを送信レジスタのＦ５Ｈに書き込む。
Ｓ７７において、図３に示した時分割伝送シーケンスにおいて、図１３（ａ）に示した「設定処理用の識別信号」を用いて通信する。設定変更は、１つのスレーブノードに設定される１つの識別信号（通信チャネル）毎に実行される。
【００７４】
すなわち、マスターノード１２は、識別信号送信手段に対し、このマスターノードから、複数の「設定処理用の識別信号」（図１３（ａ）に示した識別信号）を送信させるとともに、このマスターノードのデータ伝送手段に対し、上述した「設定処理用の識別信号」が送信された識別信号時間スロットに対応したデータ伝送時間スロットで、ある１つのスレーブノードを特定する情報（例えば、送信レジスタＦ０Ｈに格納されている「処理を実行するスレーブノード１３1の番号（ｉ）」、このスレーブノードに設定される通信チャネルを指示する識別信号（ｊ）（例えば、図１０（ｂ）における識別信号「000 0000 0001」）、及び、この通信チャネルのこのスレーブノードにおける設定内容（例えば、図１０（ｂ）における「送信」、「０１Ｈ」）を、シリアルバス１に送信させる設定処理手段を有している。
【００７５】
Ｓ７８において、すべての設定が終了したか否かを判定し、終了していないときには、Ｓ７３に処理を戻す。変更すべき「設定内容のテーブル」を有するすべてのスレーブノードに対して、変更すべき識別信号に対応する通信チャネルの設定内容を変更したときに、すべての設定が終了したと判定する。
【００７６】
一方、各スレーブノード１３1〜１３nでは、図１２（ｂ）のフローチャートのＳ８１において、図１３に示した設定用の識別信号を用いて通信する。
Ｓ８２において、受信レジスタのＦ０Ｈ〜Ｆ５Ｈにスレーブノードの番号（ｉ），識別信号（ｊ），識別信号（ｊ）に対応する通信チャネルの設定内容，チェックサム，書き込み指令ビット等を順次書き込んで行く。
【００７７】
すなわち、各スレーブノード１３1〜１３nは、このスレーブノードのデータ伝送手段に対し、設定処理用の識別信号（例えば、図１３（ａ）に示した識別信号）が送信された識別信号時間スロットに対応したデータ伝送時間スロットで、「ある１つのスレーブノードを特定する情報」、「ある１つのスレーブノードに設定される通信チャネルを指示する識別信号」、及び、「この通信チャネルの、ある１つのスレーブノードにおける設定内容」を受信させる設定処理手段を有している。
【００７８】
Ｓ８１，Ｓ８２の処理中におけるＳ８３において、書き込み指令ビットが有効か否か、すなわち、Ｆ５Ｈに書き込み指令ビットが書き込まれたか否かを判定する。書き込み指令ビットが有効であれば、Ｓ８４に処理を進め、有効でなければＳ８１に処理を戻し、受信データを順次受信レジスタに書き込んで行く。
Ｓ８４において、書き込み条件を満たすか否かを判定し、満たしていればＳ８５に処理を進め、満たしていなければＳ８６に処理を進める。
書き込み条件とは、受信データレジスタのアドレスＦ０Ｈに書き込まれた「スレーブノードの番号」と、このスレーブノード１３1〜１３nに割り当てられているスレーブノードの番号とが一致し、かつ、Ｆ４Ｈに書き込まれたチェックサムの値が正常であるということである。
Ｓ８５において、受信データレジスタのアドレスＦ１Ｈ〜Ｆ３Ｈに書き込まれた識別信号と、識別信号に対応する通信チャネルの設定内容を、このスレーブノードの「設定内容のテーブル」に書き込む。
Ｓ８６において、使用した受信データレジスタＦ０Ｈ〜Ｆ５Ｈを初期化する。
【００７９】
すなわち、各スレーブノード１３1〜１３nにおける上述した設定処理手段は、受信した「ある１つのスレーブノードを特定する情報」が、この図１２（ｂ）の動作を実行しているスレーブノードであるときは、受信した「ある１つのスレーブノードに設定される通信チャネルを指示する識別信号」、及び、受信した、この通信チャネルのある１つのスレーブノードにおける「設定内容」により、記憶手段（図８の３９）に記憶された対応テーブルを設定する機能を有している。
【００８０】
Ｓ８７において、設定が終了したか否かを判定し、終了していないときにはＳ８１に処理を戻し、このスレーブノードにおける次の識別信号と、この識別信号に対応する通信チャネルの設定内容を受信するのを待つ。
ここで、設定が終了したか否かを知る方法は、種々の方法が考えられるが、例えば、一定時間が経過すれば、設定が終了しているものとする。
【００８１】
上述したようにして、各ノードにおける「設定内容のテーブル」が設定される。「設定内容のテーブル」の一部のみを変更する場合は、変更する識別信号と、これに対応する通信チャネルの設定内容のみを、図１３（ａ）に示した設定用の識別信号を用いて通信すればよい。
「設定内容のテーブル」を設定処理するためのノードは、通常のマスターノードでなくてもよい。通常のマスターノードをスレーブノードに切り替えた上で、臨時のマスターノードデバイスをシリアルバスに接続し、この臨時のマスターノードデバイスから、設定処理をすればよい。
【００８２】
図１を参照した説明では、インタフェース基板（マスター用）２からインタフェース基板（スレーブ用）３1〜３nに電源を供給する場合、信号線とは別に電源線を用いればよいと説明した。
これに代えて、シリアルバス１に直流電源電圧を重畳してもよい。この場合、マンチェスタ符号のような直流成分のない伝送路符号を用い、直流遮断フィルタ及び直流通過フィルタを介して信号と直流とを分離すればよい。線の本数が減るために、一層省配線化が図られる。
あるいは、シリアルバス１を商用電源の電力線としたシステムとしてもよい。
この場合、インタフェース基板（マスター用）、インタフェース基板（スレーブ用）３1〜３4，…，３nは、商用電源から電源供給を受けるとともに、上述したマンチェスタ符号のようなベースバンド符号で符号化されたデータをデジタル変調した搬送波帯の信号を、商用電源の電力線に出力し、電力線から入力した搬送波帯の信号をデジタル復調することにより、ベースバンド符号で符号化されたデータに戻せばよい。
【産業上の利用可能性】
【００８３】
本願の発明は、産業機器の装置内におけるデジタル値やアナログ値のデータ伝送、ロボット制御システムをはじめ、様々な機器内の制御信号のデータ伝送に利用可能である。
例えば、産業機器で使われる多数のフォトインタラプタ等のセンサと制御マイクロコンピュータとを接続する多数のケーブルを、シリアルバスに置き換え、本発明のシリアルバス伝送システムを実装することで、信頼性の高い省配線化が実現できる。
【図面の簡単な説明】
【００８４】
【図１】本発明の実施の一形態を具体例で示すブロック構成図である。
【図２】図１に示した実施の一形態をシリアルバス伝送システムとして見た時の構成図である。
【図３】図２に示した実施の一形態で用いる時分割伝送シーケンスを示す説明図である。
【図４】識別信号で指定された通信チャネルで通信処理を実行するための「設定内容のテーブル」を作成する元となるデータ例を示す説明図である。
【図５】図３に示した時分割伝送シーケンスにおいて、識別信号を具体的に指定した場合の、送信ノード、通信相手のノード（受信ノード）を示す説明図である。
【図６】図３に示した時分割伝送シーケンスにおける、１セグメント内の通信チャネル割当ての構成例を示す説明図である。
【図７】図３に示した時分割伝送シーケンスにおける、識別信号とデータ伝送の時間スロットにおいて、データビット列の伝送フォーマット及び伝送路符号を示す説明図である。
【図８】図２に示したシリアルバス伝送システムにおいて、１つのスレーブノードの機能構成を示すブロック図である。
【図９】図８に示したスレーブノードのデータ伝送機能を、ソフトウエアで実現する場合のデータ伝送処理を説明するフローチャートである。
【図１０】図２に示したシリアルバス伝送システムにおいて、各ノードに格納されている「設定内容のテーブル」の説明図である。
【図１１】図８に示した受信信号処理手段において実行されるクロック発生処理の説明図である。
【図１２】図２に示したシリアルバス伝送システムにおいて、マスターノードが図１０に示した自身の「設定内容のテーブル」を設定するとともに、マスターノードがシリアルバスを経由してスレーブノードのそれぞれにある、図１０に示した「設定内容のテーブル」を設定する処理を示すフローチャートである。
【図１３】図１２に示した設定処理に用いる「設定処理用の識別信号」の説明図である。
【符号の説明】
【００８５】
１…シリアルバス、２…インタフェース基板（マスター用）、３1〜３n…インタフェース基板（スレーブ用）、４…制御装置、５1〜５m…入出力装置、
１２…マスターノード、１２R…受信レジスタ、１２S…送信レジスタ、１３1〜１３n…スレーブノード、１３S…送信レジスタ、１３R…受信レジスタ、
２１…１チップマイコン等で構成可能な機能ブロック、２２…コネクタ、２５…送信データレジスタ、２６…送信データ選択手段、３１…受信信号処理手段、３４…受信データ処理手段、３５…受信データレジスタ、５１…ゲート手段、５２…PLL型クロック発生手段、５３…スタート信号検出手段、５４…タイマー手段、５５…データ再生手段
【図１】
0004999006.tif 000002
【図２】
0004999006.tif 000003
【図３】
0004999006.tif 000004
【図４】
0004999006.tif 000005
【図５】
0004999006.tif 000006
【図６】
0004999006.tif 000007
【図７】
0004999006.tif 000008
【図８】
0004999006.tif 000009
【図９】
0004999006.tif 000010
【図１０】
0004999006.tif 000011
【図１１】
0004999006.tif 000012
【図１２】
0004999006.tif 000013
【図１３】
0004999006.tif 000014