(57)【要約】【課題】マスタ局とスレーブ局との間で任意のタイミングで送信するメッセージデータの高速伝送を可能とする。【解決手段】マスタ局Ｍの送信部４５に、スレーブ局ＳＬ１〜ＳＬ４宛の同期データを格納するための送信レジスタ６２〜６５と、何れかのスレーブ局宛に送信するメッセージデータを格納するための送信レジスタ６６〜６８とを設け、メッセージデータを送信レジスタ６６に書き込み、ここに書き込みきれない場合には送信レジスタ６７、６８の順に順次書き込む。送信周期期間毎に、各スレーブ局に送信レジスタ６２〜６５の同期データを送信した後、送信レジスタ６６〜６８を順次切り替えて何れか一つの送信レジスタに格納されているメッセージデータの一部を指定のスレーブ局宛に送信し、メッセージデータを複数に分割して複数の送信周期にわたって指定のスレーブ局宛に送信し、スレーブ局側で、分割されたメッセージデータを復元する。【選択図】          図７
2004242031.tif 000002
【特許請求の範囲】
【請求項１】
マスタ局及び当該マスタ局と全二重方式のシリアル伝送ラインで接続されるスレーブ局を備え、前記マスタ局と前記スレーブ局との間で、所定の送信周期で定期送信データの授受を行うようにした通信システムにおいて、前記送信周期で特定される送信周期期間内の前記定期送信データの授受が行われていない空き時間に、前記シリアル伝送ラインを利用して前記マスタ局とスレーブ局との間で定期送信する必要のない非定期送信データの授受を行うようにしたことを特徴とする通信システム。
【請求項２】
マスタ局及び当該マスタ局と全二重方式のシリアル伝送ラインで接続されるスレーブ局を備え、前記スレーブ局は、前記マスタ局から自局宛のデータを受信したときに前記マスタ局宛にデータを送信するようにした通信システムにおいて、
前記マスタ局は、前記定期送信データを、前記送信周期で前記スレーブ局宛に送信する定期送信手段と、前記送信周期で特定される送信周期期間内の前記定期送信データの授受が行われない空き時間に、前記シリアル伝送ラインを利用して定期送信する必要のない非定期送信データを前記スレーブ局に送信する非定期送信手段と、を備え、
前記スレーブ局は、前記マスタ局から受信したデータのデータ種が前記定期送信データであるか非定期送信データであるかを判別するデータ種判別手段と、前記マスタ局からデータを受信したとき、前記マスタ局宛に送信すべき前記定期送信データ及び前記非定期送信データのうち、前記データ種判別手段で特定されるデータ種と同一種のデータを、前記マスタ局宛に送信する応答データ送信手段と、を備えることを特徴とする通信システム。
【請求項３】
前記マスタ局の前記非定期送信手段は、送信すべき前記非定期送信データを前記空き時間内に送信可能なデータ長に分割する分割手段と、当該分割手段で分割した非定期送信データの分割ブロックを、当該分割ブロック単位で複数の送信周期にわたって送信する分割送信手段を備え、
前記スレーブ局は、複数の送信周期にわたって送信された複数の前記分割ブロックから元の非定期送信データを復元する復元手段、を備えることを特徴とする請求項２記載の通信システム。
【請求項４】
前記マスタ局の前記非定期送信手段は、前記空き時間を予測する空き時間予測手段を備え、
前記分割送信手段は、前記空き時間予測手段で予測された空き時間に応じて前記非定周期送信データを分割するようになっていることを特徴とする請求項３記載の通信システム。
【請求項５】
前記分割送信手段は、前記非定周期送信データを、予め設定された容量の複数の記憶領域に分割して格納し、一の送信周期期間内に、一の記憶領域に格納されたデータを送信するようになっていることを特徴とする請求項３記載の通信システム。
【請求項６】
前記分割送信手段は、前記非定周期送信データを、予め設定された容量の複数の記憶領域に分割して格納し、前記空き時間予測手段で予測された空き時間と、前記記憶領域の容量とをもとに、前記空き時間内にデータ送信可能な前記記憶領域の個数を推定し、一の送信周期期間内に、前記推定した個数分の記憶領域に格納されたデータを送信するようになっていることを特徴とする請求項４記載の通信システム。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
この発明は、サーボモータ制御、主軸モータ制御を行うサーボアンプ制御装置、或いは主軸アンプ制御装置等からなる複数のスレーブ局と、数値制御装置からなるマスタ局との間を、シリアル伝送線により接続し、両者間でデータ伝送を行うようにした通信システムに関する。
【０００２】
【従来の技術】
従来、複数のスレーブ局と、これらスレーブ局を制御するマスタ局とで構成される通信システムにおいては、例えば、これらスレーブ局及びマスタ局間を、半二重方式のシリアル伝送用のバスラインで接続するようにした通信システムが提案されている。この通信システムにおいては、マスタ局からのメッセージを受け取ったスレーブ局がフレーム受信終了後、バスラインを受信用から送信用に切り替え、スレーブ局からの送信を行うようにしている。
【０００３】
つまり、図１３に示すように、第１のスレーブ局ＳＬ１では、マスタ局Ｍからフレームを受信すると、バスラインを受信用から送信用に切り替え、マスタ局Ｍ宛にフレームを送信する。次に、マスタ局Ｍが、第２のスレーブ局ＳＬ２にフレームを送信し、第２のスレーブ局ＳＬ２がこれを受信すると、この第２のスレーブ局ＳＬ２では、バスラインを受信用から送信用に切り替え、マスタ局Ｍにフレームを送信する。各スレーブ局ＳＬ１〜ＳＬ４がこの動作を行うことによって、マスタ局Ｍとスレーブ局ＳＬ１〜ＳＬ４との間の通信が、フレームどうしが衝突することなく行われるようになっている。
【０００４】
しかしながら、このように、バスラインを受信用と送信用とで切り替えて通信を行うようにした場合、図１３に示すように、受信用及び送信用との切り替えに伴う無駄時間Δｔが発生し、また、フレームの受信及び送信を同時に行うことができない。
これに対し、例えば、マスタ局とスレーブ局との間を全二重方式のシリアル伝送ラインによって接続するようにした方法も提案されている（例えば、特開平１１−１７７１２号公報参照。）
この場合、フレームの送信及び受信を同時に行うことができ、つまり、マスタ局がスレーブ局にフレームを送信している間でも、スレーブ局がマスタ局にフレームを送信することが可能であり、伝送効率を向上させることができ伝送時間の短縮を図ることができる。
【０００５】
そして、例えば、サーボモータ制御、主軸モータ制御を行うサーボアンプ制御装置、主軸アンプ制御装置からなる複数のスレーブ局と、数値制御装置からなるマスタ局とから構成される数値制御システムにおいては、上述のような通信システムを構成することによって、高速な同期通信を可能とし、サーボモータ軸の位置決め等といったモーションコントールを適切に行うことができるようになっている。
【０００６】
【特許文献１】
特開平１１−１７７１２号公報
【０００７】
【発明が解決しようとする課題】
しかしながら、上述のような数値制御システムにおいては、マスタ局と複数のスレーブ局との間で、サーボ軸の位置決め制御用のデータを高速に同期伝送する必要がある。このため、この位置決め制御用データ伝送以外の、例えば、保守用データをスレーブ局から取り出す場合、或いはスレーブ局へ各種制御定数をセットアップする場合等には、例えば、スレーブ局としてのサーボアンプや各種制御装置に別途、データ授受用のパーソナルコンピュータ等を直接接続し、このパーソナルコンピュータとスレーブ局との間で、例えばＲＳ２３２Ｃ通信等によって、行うようにしている。
【０００８】
しかしながら、最近の高機能化に伴い、モーションコントールを行いながら、各スレーブへの個別の伝送、すなわちメッセージ伝送も合わせて行う必要性が高まっており、位置決め用の高速シリアルバスを兼用しての通信が望まれていた。そこで、この発明は、上記従来の未解決の問題点に着目してなされたものであり、各スレーブ局とマスタ局との間の同期伝送用の通信回線を兼用して、スレーブ局個別にメッセージ伝送を行うことの可能な、通信システムを提供することを目的としている。
【０００９】
【課題を解決するための手段】
上記目的を達成するために、本発明の請求項１に係る通信システムは、マスタ局及び当該マスタ局と全二重方式のシリアル伝送ラインで接続されるスレーブ局を備え、前記マスタ局と前記スレーブ局との間で、所定の送信周期で定期送信データの授受を行うようにした通信システムにおいて、前記送信周期で特定される送信周期期間内の前記定期送信データの授受が行われていない空き時間に、前記シリアル伝送ラインを利用して前記マスタ局とスレーブ局との間で定期送信する必要のない非定期送信データの授受を行うようにしたことを特徴としている。
【００１０】
また、請求項２に係る通信システムは、マスタ局及び当該マスタ局と全二重方式のシリアル伝送ラインで接続されるスレーブ局を備え、前記スレーブ局は、前記マスタ局から自局宛のデータを受信したときに前記マスタ局宛にデータを送信するようにした通信システムにおいて、前記マスタ局は、前記定期送信データを、前記送信周期で前記スレーブ局宛に送信する定期送信手段と、前記送信周期で特定される送信周期期間内の前記定期送信データの授受が行われない空き時間に、前記シリアル伝送ラインを利用して定期送信する必要のない非定期送信データを前記スレーブ局に送信する非定期送信手段と、を備え、前記スレーブ局は、前記マスタ局から受信したデータのデータ種が前記定期送信データであるか非定期送信データであるかを判別するデータ種判別手段と、前記マスタ局からデータを受信したとき、前記マスタ局宛に送信すべき前記定期送信データ及び前記非定期送信データのうち、前記データ種判別手段で特定されるデータ種と同一種のデータを、前記マスタ局宛に送信する応答データ送信手段と、を備えることを特徴としている。
【００１１】
また、請求項３に係る通信システムは、前記請求項２記載の通信システムにおいて、前記マスタ局の前記非定期送信手段は、送信すべき前記非定期送信データを前記空き時間内に送信可能なデータ長に分割する分割手段と、当該分割手段で分割した非定期送信データの分割ブロックを、当該分割ブロック単位で複数の送信周期にわたって送信する分割送信手段を備え、前記スレーブ局は、複数の送信周期にわたって送信された複数の前記分割ブロックから元の非定期送信データを復元する復元手段、を備えることを特徴としている。
【００１２】
また、請求項４に係る通信システムは、前記請求項３記載の通信システムにおいて、前記マスタ局の前記非定期送信手段は、前記空き時間を予測する空き時間予測手段を備え、前記分割送信手段は、前記空き時間予測手段で予測された空き時間に応じて前記非定周期送信データを分割するようになっていることを特徴としている。
【００１３】
また、請求項５に係る通信システムは、前記請求項３記載の通信システムにおいて、前記分割送信手段は、前記非定周期送信データを、予め設定された容量の複数の記憶領域に分割して格納し、一の送信周期期間内に、一の記憶領域に格納されたデータを送信するようになっていることを特徴としている。
また、請求項６に係る通信システムは、前記請求項４記載の通信システムにおいて、前記分割送信手段は、前記非定周期送信データを、予め設定された容量の複数の記憶領域に分割して格納し、前記空き時間予測手段で予測された空き時間と、前記記憶領域の容量とをもとに、前記空き時間内にデータ送信可能な前記記憶領域の個数を推定し、一の送信周期期間内に、前記推定した個数分の記憶領域に格納されたデータを送信するようになっていることを特徴としている。
【００１４】
【発明の実施の形態】
以下に、本発明の実施の形態を説明する。
図１は、本発明の第１の実施の形態を適用した通信システムの構成を示した概略構成図である。
図１において、Ｍは、例えばＮＣ制御装置等で構成されるマスタ局、Ｓ１〜Ｓ４は、サーボアンプ制御装置、主軸アンプ制御装置等で構成されるスレーブ局であって、これらマスタ局Ｍとスレーブ局ＳＬ１〜ＳＬ４とは、全二重方式のシリアルバスＬ１、Ｌ２を介して、マルチドロップ形式で接続されている。
【００１５】
なお、ここでは、４つのスレーブ局ＳＬ１〜ＳＬ４が接続されている場合について説明しているが、これに限るものではなく、任意数のスレーブ局を接続することができる。
そして、マスタ局Ｍは各スレーブ局ＳＬ１〜ＳＬ４と予め設定した所定の送信周期毎に、データ伝送を行っており、図２（ａ）に示すように、マスタ局Ｍは、各スレーブ局間で同期をとるためのタクト同期用データを、前記送信周期毎に、各スレーブ局宛に、ブロードキャスト伝送によって送信する。このタクト同期用データを受信した各スレーブ局の演算処理部（ＣＰＵ）では、このタクト同期用データを受信した時点で先に受信している同期データを取り込みこれに基づいて制御対象に対する処理を行うようになっている。つまり、各スレーブ局ＳＬ１〜ＳＬ４がマスタ局からの同期データを受信するタイミングが異なることから、タクト同期用データを受信した時点を基準として、各スレーブ局ＳＬ１〜ＳＬ４の演算処理部が同期データに対する制御を行うようにすることによって、各スレーブ局ＳＬ１〜ＳＬ４間で同期をとるようになっている。
【００１６】
また、マスタ局Ｍは、各スレーブ局に対して、前記送信周期毎に各スレーブ局がその制御対象を制御するための制御情報等といった情報を同期データとして送信する。この同期データを受信した各スレーブ局では、その応答として、スレーブ局における制御対象の制御状況、或いはそのモニタ情報等を、同期データとして、マスタ局Ｍに送信する。
【００１７】
つまり、マスタ局Ｍは、図２（ａ）に示すように、前記送信周期毎に、まず、タクト同期用データＤＢをブロードキャストで送信した後、例えばスレーブ局ＳＬ１宛に同期データＤＭ１を送信して、この同期データＤＭ１を受信したスレーブ局ＳＬ１からの応答としての同期データＤＳ１を受信し、次に、スレーブ局ＳＬ２宛に同期データＤＭ２を送信して、この同期データＤＭ２に対する応答としての同期データＤＳ２を受信し、次にスレーブ局ＳＬ３宛に同期データＤＭ３を送信し、というように、順次各スレーブ局宛に同期データを送信し、この応答を受信するようにしている。
【００１８】
そして、この処理を各送信周期毎に行うことによって、図２（ｂ）に示すように、各送信周期毎に、各スレーブ局宛に制御情報等を送信し、その応答として、各スレーブ局から各制御対象の制御状況情報等を受信するようになっている。
そして、この通信システムにおいては、図３に示すように、さらに、送信周期の開始から次の送信周期の開始までの１送信周期期間内の、各スレーブ局宛にタクト同期用データ及び同期データを送信した後の空き時間に、各スレーブ局間で同期させる必要のない各スレーブ局が個別に必要とする情報或いはマスタ局が各スレーブ局の情報として個別に必要とする情報を、メッセージデータＭ−ＤＭ及びＭ−ＤＳとしてマスタ局Ｍ及びスレーブ局ＳＬ１〜ＳＬ４間で送受信するようにしている。なお、図３において、Ｍ−ＤＭはマスタ局Ｍから何れかのスレーブ局宛に送信されるメッセージデータを表し、Ｍ−ＤＳは、マスタ局ＭからのメッセージデータＭ−ＤＭを受信したスレーブ局からマスタ局Ｍ宛に送信されるメッセージデータを表す。
【００１９】
図４は、マスタ局Ｍとスレーブ局ＳＬ１〜ＳＬ４との間で伝送される伝送フレームのフォーマットの一例を示したものであって、マスタ局Ｍからスレーブ局ＳＬ１〜ＳＬ４への伝送フレームは、図４（ａ）に示すように、フレームの開始を表すフラグデータｍ１、フレームの送信先を表す送信先アドレスｍ２、データ種を表す制御コマンドｍ３、伝送データｍ４、フレーム検査シーケンス用のチェック用データｍ５、そして、フレームの終了を表すフラグデータｍ６、から構成されている。なお、制御コマンドｍ３としてのデータ種としては、スレーブ局間での同期をとるために各スレーブ局宛に送信されるタクト同期用データ、各スレーブ局に同期伝送される同期データ、及び、個別のスレーブ局宛に伝送されるメッセージデータがある。
【００２０】
また、スレーブ局からマスタ局への伝送フレームは、図４（ｂ）に示すように、フレームの開始を表すフラグデータｓ１、フレームの送信元を表す送信元アドレスｓ２、制御コマンドｍ３と同様の伝送フレームのデータ種を表す制御コマンドｓ３、伝送データｓ４、フレーム検査シーケンス用のチェック用データｓ５、そして、フレームの終了を表すフラグデータｓ６とから構成されている。なお、前記伝送フレームにおいて、伝送データｍ４及びｓ４は情報が設定されない場合もある。
【００２１】
図５は、スレーブ局の構成を示すブロック図である。なお、各スレーブ局は同一に構成されているので、ここではスレーブ局ＳＬ１について説明する。
スレーブ局ＳＬ１は、図５に示すように、全二重方式のシリアルバスの一方のバスラインＬ１から伝送フレームを受信し、この伝送フレーム中のデータ情報を演算処理部（ＣＰＵ）１１に伝達する受信部１３と、演算処理部１１で設定されたスレーブ局に送信する送信データをもとに伝送フレームを生成し、これを他方のバスラインＬ２に送信する送信部１５とを備えている。
【００２２】
そして、前記演算処理部（ＣＰＵ）１１は、マスタ局Ｍから通知される、自局において制御している図示しない各種機器の位置指令或いは速度指令等の制御情報をもとに、各種機器を制御すると共に、これら各種機器の位置情報や速度情報等のモニタ情報を予め設定された周期で収集して送信データを生成し、これを送信部１５に出力する。
【００２３】
前記受信部１３は、図５に示すように、バスラインＬ１からの伝送フレームを取り込む第１受信レジスタ部２１と、第１受信レジスタ部２１に取り込まれた伝送フレームから、伝送フレームの開始を表すフラグデータｍ１を検出するフラグ検出部２２と、このフラグ検出部２２でフラグデータｍ１を検出したとき、第１受信レジスタ部２１の伝送フレームのうちの、送信先アドレスｍ２からフレーム検査シーケンスチェック用データｍ５を順次取り込む第２受信レジスタ部２３と、第１受信レジスタ部２１の伝送フレーム中の送信先アドレスｍ２、制御コマンドｍ３及び伝送データｍ４に対し、ＣＲＣチェック等のフレーム検査シーケンス演算を行い、その演算結果と伝送フレームのチェック用データｍ５とを比較し、異常を検出したとき、これを演算処理部１１に通知するＦＣＳ計算・比較部２４と、第２受信レジスタ部２３で取り込んだ伝送フレームの送信先アドレスｍ２を参照し、これが自局のアドレスであるかどうかを判定し、送信先アドレスｍ２が自局のアドレスであることを確認することができたとき、第２受信レジスタ部２３の伝送フレームの中から伝送データｍ４及び制御コマンドｍ３を第３受信レジスタ部２５に書き込むと共に、前記送信部１５に対して起動指令を通知するアドレス検出部２６と、第３受信レジスタ部２５に書き込まれた制御コマンドｍ３を参照して、タクト同期用データであるか、同期データであるか、メッセージデータであるか、を判定する制御コマンド検出部２７と、この制御コマンド検出部２７によって制御される切り替え回路２８と、第４受信レジスタ部２９及び第５受信レジスタ部３０と、を備えている。
【００２４】
前記制御コマンド検出部２７は、前記制御コマンドｍ３を参照し、これがタクト同期用データであるときには、切り替え回路２８を制御して第３受信レジスタ部２５と演算処理部（ＣＰＵ）１１とを接続して、タクト同期用データを受信したことを演算処理部１１に通知する。また、前記制御コマンドｍ３が、同期データであるときには、第３受信レジスタ部２５と第４受信レジスタ部２９とを接続し、また、メッセージデータであるときには、第３受信レジスタ部２５と第５レジスタ部３０とを接続する。さらに、送信部１５の後述の制御コマンド付加部３５に対し、受信した伝送フレームが、同期データであるか、メッセージデータであるかを通知する。また、送信部１５の後述の切り替え回路３３を制御する。
【００２５】
そして、演算処理部１１では、タクト同期用データを受信した時点を、同期制御の同期データの送信周期の開始時点として認識して第４受信レジスタ部２９及び第５受信レジスタ部３０を参照し、前記第４受信レジスタ部２９の伝送データｍ４を、マスタ局Ｍからの同期データとして取り込んでこれに基づき所定の処理を行う。また、前記第５受信レジスタ部３０の伝送データｍ４が変更されていれば、これをメッセージデータとして読み込み、その内容に応じて所定の処理を実行し、このメッセージデータが、スレーブ局側で保持する情報の送信要求である場合には、指定された情報からなる送信データを生成し、必要に応じてこれを分割して送信レジスタ３２に書き込む。また、マスタ局から分割されたメッセージデータを受信しているときには、送信レジスタ３２に意味をなさない送信データを書き込むか或いは空データを書き込む等して、ダミーのメッセージデータをマスタ局Ｍに送信するようになっている。
【００２６】
一方、前記送信部１５は、マスタ局Ｍに同期データとして送信する送信データを書き込むための送信レジスタ３１と、メッセージデータとして送信する送信データを書き込むための送信レジスタ３２と、前記送信レジスタ３１及び３２の何れか一方と、第１送信レジスタ３４とを選択的に接続する切り替え回路３３と、前記制御コマンド検出部２７から通知される、受信した伝送フレームの制御コマンドｍ３と同じデータ種を、送信レジスタ３１に書き込まれた伝送データｓ４としての送信データに、制御コマンドｓ３として付加する制御コマンド付加部３５と、これら制御コマンドｓ３及び伝送データｓ４に自局のアドレスを送信元アドレスｓ２として付加し、これをフレーム情報として第２送信レジスタ３７に書き込むアドレス挿入部３６と、第２送信レジスタ３７に書き込まれるフレーム情報に対しＣＲＣチェック等のフレーム検査シーケンス演算を行い、その演算結果をチェック用データｓ５としてフレーム情報に付加するＦＣＳ計算部３８と、送信回路３９によって第２送信レジスタ３７から読み出されるフレーム情報に、フラグデータｓ１、ｓ６を付加するフラグ挿入部４０とを備えている。
【００２７】
そして、前記切り替え回路３３は、前記受信部１３の制御コマンド検出部２７によって制御され、制御コマンド検出部２７は、受信した伝送フレームの制御コマンドｍ３が同期データであるときには、同期データ伝送用の送信レジスタ３１と第１送信レジスタ３４とを接続し、制御コマンドｍ３がメッセージデータであるときには、メッセージデータ伝送用の送信レジスタ３２と第１送信レジスタ３４とを接続する。
【００２８】
また、前記送信回路３９は、受信部１３から起動指令が通知されると、前記受信部１３がこの起動指令を通知するトリガとなった受信フレームの制御コマンドに応じて切り替え回路３３で選択された同期データ又はメッセージデータからなる伝送データＳ４と、これに対応する制御コマンドｓ３と自局の送信元アドレスｓ２とからなるフレーム情報が前記第２送信レジスタ３７に格納された後、この第２送信レジスタ３７から、このフレーム情報を読み出し、フラグデータｓ１、送信元アドレスｓ２、制御コマンドｓ３、伝送データｓ４、チェック用データｓ５及びフラグデータｓ６からなる伝送フレームとして、フラグデータｓ１から順にバスラインＬ２に送信する。
【００２９】
つまり、送信部１５では、受信部１３で受信した伝送フレームの制御コマンドが同期データであれば、同期データからなる伝送フレームを送信し、逆にメッセージデータであれば、メッセージデータからなる伝送フレームを送信するというように、受信した伝送フレームの制御コマンドで特定されるデータ種と同じデータ種のデータからなる伝送フレームを生成し、これを送信するようになっている。また、送信部１５では、伝送フレームを受信したときには、これ以前に送信レジスタ３１又は３２に既に書き込まれている送信データを、伝送フレームとして送信するようになっている。
【００３０】
図６は、マスタ局Ｍの受信部４３の構成を示すブロック図である。
なお、マスタ局Ｍも、スレーブ局と同様に、スレーブ局からの伝送フレームを受信する受信部４３と、演算処理部４１で設定された送信データをもとに伝送フレームを生成し、これを送信する送信部４５とから構成されている。
【００３１】
図６に示すように前記受信部４３は、バスラインＬ２からの伝送フレームを取り込む第１受信レジスタ部５１と、第１受信レジスタ部５１に取り込まれた伝送フレームから伝送フレームの開始を表すフラグデータｓ１を検出するフラグ検出部５２と、このフラグ検出部５２でフラグデータｓ１を検出したとき、フラグデータｓ１からｓ６までを一つの伝送フレームとして、第１受信レジスタ部５１の伝送フレームを取り込む第２受信レジスタ部５３と、第１受信レジスタ部５１の伝送フレームに対しフレーム検査シーケンス演算を行い、その演算結果と伝送フレームのチェック用データｓ５とを比較し、異常を検出したとき、これを演算処理部４１に通知するＦＣＳ計算・比較部５４と、第２受信レジスタ部５３に取り込まれた伝送フレームの送信元アドレスｓ２を参照し、その送信元のスレーブ局を認識すると共に、第２受信レジスタ部５３に取り込まれた伝送フレームの中から、伝送データｓ４を第３受信レジスタ部５５に書き込むアドレス検出部５６と、第３受信レジスタ部５５に書き込まれた制御コマンドｍ３を参照して、同期データであるか、メッセージデータであるか、を判定する制御コマンド検出部５７と、この制御部コマンド検出部５７によって制御される切り替え回路５８、第４受信レジスタ部５９及び第５受信レジスタ部６０、を備えている。
【００３２】
前記制御コマンド検出部５７は、前記制御コマンドｍ３を参照し、これが同期データであるときには、前記切り替え回路５８を制御して第３受信レジスタ部５５と第４受信レジスタ部５９とを接続し、また、メッセージデータであるときには、第３受信レジスタ部５５と第５受信レジスタ部６０とを接続する。
そして、演算処理部４１では、所定の周期で第４受信レジスタ部５９を参照すると共に、何れかのスレーブ局に対してメッセージデータを送信した場合には、必要に応じて所定のタイミングで第５受信レジスタ部６０を参照して、それぞれに書き込まれた伝送データｓ４をマスタ局Ｍからの受信データとして処理するようになっている。
【００３３】
一方、前記送信部４５は、図７に示すように、演算処理部４１によって、スレーブ局に送信する送信データが書き込まれる送信レジスタ６１〜６８と、この送信レジスタ６１〜６８のうちの何れかと、後述の第１送信レジスタ７１とを選択的に接続する切り替え回路６９と、前記第１送信レジスタ７１に書き込まれた送信データを伝送データｍ４とし、この伝送データｍ４にこの伝送データｍ４が、、タクト同期用データ、同期データ或いはメッセージデータの何れであるかを表す制御コマンドｍ４を付加するコマンド付加部７０と、前記第１送信レジスタ７１に書き込まれた伝送データｍ４及び前記制御コマンドｍ３に、送信先のスレーブ局を特定するアドレスを送信先アドレスｍ２として付加し、これをフレーム情報として第２送信レジスタ７２に書き込むアドレス挿入部７３と、第２送信レジスタ７３に書き込まれるフレーム情報に対しフレーム検査シーケンス演算を行いその演算結果を、チェック用データｍ５として前記フレーム情報に付加するＦＣＳ計算部７４と、送信回路７５が第２送信レジスタ７２のフレーム情報を読み出したとき、これに、フラグデータｍ１、ｍ６を付加するフラグ挿入部７６と、演算処理部４１から送信データ書き込み終了が通知されたとき送信回路７５に起動指令を通知するタイミング発生回路７７と、を備えている。
【００３４】
そして、前記送信回路７５は、タイミング発生回路７７から起動指令が通知されると、これをトリガとして前記第２送信レジスタ７２のフレーム情報を読み出し、フラグデータｍ１、送信元アドレスｍ２、制御コマンドｍ３、伝送データｍ４、チェック用データｍ５及びフラグデータｍ６を一つの伝送フレームとして、フラグデータｍ１から順にバスラインＬ１に送信する。
【００３５】
また、前記タイミング発生回路７７は、演算処理部４１から送信データ書き込み終了の通知、また、マスタ局Ｍから同期伝送を行うスレーブ局の最大数、メッセージデータの有無、また、メッセージデータがある場合には、メッセージデータの書き込み終了の通知、その送信先のスレーブ局、メッセージデータの分割数を入力し、これら情報に基づいて、切り替え回路６９の切り替えを行い、伝送データｍ４を順次更新する。また、切り替え回路６９の切り替えと共に、切り替え先の、送信レジスタ６１〜６８が、タクト同期用であるか、同期データ用であるか、メッセージ伝送用の何れであるかを識別可能な情報、例えば、送信レジスタを識別するための識別情報等を、コマンド付加部７０に出力する。
【００３６】
このコマンド付加部７０では、この識別情報をもとに制御コマンドを判断し、これを第１送信レジスタ７１の伝送データｍ４に付加する。また、伝送エラーの発生の有無等の伝送状態情報を、必要に応じて演算処理部４１に通知し、演算処理部４１では、この伝送状態情報に基づいて再送信処理を行う等の対処を行うようになっている。
【００３７】
前記送信レジスタ６１〜６８のうち、送信レジスタ６１は、タクト同期用データを書き込むための送信レジスタである。また、送信レジスタ６２〜６４は、スレーブ局宛の同期データを書き込むための送信レジスタであって、それぞれスレーブ局と一対一に対応している。また、送信レジスタ６６〜６８は、メッセージデータを書き込むための送信レジスタである。ここでは、メッセージデータを三分割して送信するようにしているため、メッセージデータ用の送信レジスタを３つ備えている。また、これらメッセージデータ用の送信レジスタ６６〜６８は、連続したアドレスに設定され、メッセージデータの送信レジスタ６６〜６８への書き込みを行うことによって、自動的に、これら３つの送信レジスタに分割されて書き込まれるようになっている。また、これら送信レジスタ６６〜６８の容量は、この送信レジスタ６６〜６８のそれぞれに書き込まれた送信データからなる伝送フレームを形成しこれを送信した場合に、同期データの送受信に影響を及ぼすことなく送信を行うことの可能な容量に設定される。
【００３８】
そして、前記演算処理部４１は、各スレーブ局からの伝送フレームによって通知されるモニタ情報等をもとに、各スレーブ局で制御する制御機器に対する制御演算を行うと共に、その演算結果に基づいて、位置指令或いは速度指令といった制御情報を同期データとして予め設定した所定周期で生成し、これを送信先のスレーブ局に対応する送信レジスタ６２〜６５に書き込む。また、各スレーブ局間で同期伝送の同期をとるためのタクト同期用データを生成し、これを送信レジスタ６１に書き込む。また、各スレーブ局間で、同期伝送をする必要のないメッセージデータ、つまり例えば、スレーブ局において保持する、トレースデータ及び故障状態データ等のアップロード、或いは、制御定数のダウンロード等を行うためのメッセージデータを、送信レジスタ６６〜６８に書き込む。このとき、演算処理部４１では、例えば制御定数のダウンロード等を行うためにメッセージデータをスレーブ局宛に送信するときには、マスタ局Ｍから送信すべきメッセージデータのデータ長及び、各スレーブ局から受信すべきメッセージデータ長に応じて、このメッセージデータを、最大３分割にして送信するようになっている。つまり、送信すべきメッセージデータは、送信レジスタ６６〜６８に分割して書き込み可能な長さに設定される。
【００３９】
また、何れかのスレーブ局からメッセージデータを受信するときには、前記スレーブ局宛にメッセージデータの送信要求等からなるメッセージデータを送信した後、この送信したメッセージデータに対する応答としてのメッセージデータを前記スレーブ局がメッセージデータを送信するためのトリガとなるダミーのメッセージデータを、前記スレーブ局宛に送信するようになっている。なお、このダミーのメッセージデータの送信データとしては、意味のないデータ又は空データを送信するようになっている。また、スレーブ局からトレースデータ等、前記スレーブ局の送信レジスタ３２に一度に格納しきれないデータを受信する場合、つまり、複数に分割されてデータが送信される場合には、所定のデータを全て受信するまで、ダミーのメッセージデータを送信するようになっている。
【００４０】
そして、前記送信レジスタ６６〜６８の容量は、送信レジスタ単位で、この送信レジスタ６６〜６８に格納されたメッセージデータからなる伝送フレームを生成した場合に、一つの送信レジスタに格納されたメッセージ送信データを、１送信周期期間内の空き時間に送信した場合に、１送信周期期間内で十分伝送フレームの授受を行うことの可能な容量に設定される。
【００４１】
また、演算処理部４１では、このようにして、各送信レジスタ６１〜６８にデータの書き込みを行ったならば、送信データ書き込みの終了を、前記タイミング発生回路７７に通知すると共に、同期伝送を行うスレーブ局の総数（この場合、Ｓ１〜Ｓ４の４つ）を通知する。また、メッセージデータの書き込みを行った場合には、メッセージデータの書き込みの終了を前記タイミング発生回路７７に通知すると共に、メッセージデータの送信先のスレーブ局、さらに、メッセージデータをいくつに分割して、送信レジスタに書き込んだかを表すメッセージデータの分割数を、タイミング発生回路７７に通知する。
【００４２】
次に、上記第１の実施の形態の動作を説明する。
マスタ局Ｍでは、予め設定した周期で各スレーブ局ＳＬ１〜ＳＬ４に対し、位置指令、或いは、速度指令等の制御情報等の同期データからなる伝送フレームを送信し、各スレーブ局ＳＬ１〜ＳＬ４では、同期データを受信するとこれをトリガとして、マスタ局Ｍからの制御情報に基づいて、自局が制御する各種機器の位置情報或いは速度情報等といったモニタ情報等の同期データからなる伝送フレームをマスタ局Ｍに送信する。そして、マスタ局Ｍでは、受信したモニタ情報に基づいて各スレーブ局ＳＬ１〜ＳＬ４の制御状況を認識しこれに基づいて制御演算を行い、前記制御情報の生成を行う。
【００４３】
なお、前記マスタ局からの伝送フレーム及びスレーブ局からの伝送フレームの伝送データは必ずしも毎周期毎に更新或いは設定されている必要はなく、例えば、伝送データｍ４、ｓ４が設定されていなくてもよい。つまり、例えば、マスタ局Ｍにおいて、各種機器の制御演算周期に比較して、より短い周期で、各種制御機器のモニタ情報を収集する必要がある場合には、マスタ局Ｍから、伝送データを設定せずに、形式的に伝送フレームを送信するようにしてもよい。
【００４４】
そして、マスタ局Ｍでは、所定の送信周期に応じて、タクト同期用データ、各スレーブ局宛の同期データを生成すると共に、必要に応じて、スレーブ局宛のメッセージデータを生成し、図８に示すデータ書き込み処理を所定の周期で実行して、タクト同期用データ、各スレーブ局宛の同期データをタクト同期用送信レジスタ６１及び同期データ伝送用送信レジスタ６２〜６５にそれぞれ書き込むと共に、メッセージデータを送信レジスタ６６〜６８に書き込む。
【００４５】
具体的には、まず、ステップＳ１でタクト同期用データ及びスレーブ局宛の同期データをそれぞれタクト同期用送信レジスタ６１及び同期データ伝送用送信レジスタ６２〜６５に書き込む。次いで、ステップＳ２に移行し、書き込み可能フラグＦｗがＦｗ＝０であるかどうかを判定し、Ｆｗ＝０でないときには、ステップＳ３に移行して、タイミング発生回路７７からメッセージデータの送信終了が通知されたかどうかを判定し、終了通知がなされているときには、ステップＳ４に移行し、書き込み可能フラグＦｗを“０”に設定した後、ステップＳ５に移行し、ステップＳ３で、終了通知がなされていないときにはそのまま後述のステップＳ７に移行する。
【００４６】
前記ステップＳ５では、送信すべきメッセージデータがあるかどうかを判定し、送信すべきメッセージデータがないときにはそのまま後述のステップＳ７に移行する。一方、送信すべきメッセージデータがあるときには、ステップＳ６に移行し、送信すべきメッセージデータを、例えば、送信レジスタ６６に書き込む。これにより、送信すべきメッセージデータが送信レジスタ６６に書き込みきれない場合には、順次、送信レジスタ６７、６８の順に書き込みが行われ、結果的に最大３分割されることになる。また、この書き込みの結果、いくつの送信レジスタに分割して書き込みが行われたかをメッセージデータの先頭に付加する。そして、メッセージデータの書き込み終わったならば書き込み可能フラグをＦｗ＝１に設定した後、ステップＳ７に移行する。
【００４７】
このステップＳ７では、各送信レジスタへの送信データの書き込みが終了したことをタイミング発生回路７７に通知すると共に、メッセージデータを新たに書き込んだ場合には、メッセージデータ有りとして、メッセージデータの有無をタイミング発生回路７７に通知し、さらに、メッセージデータ有りの場合には、このメッセージデータの送信先、また、メッセージデータをいくつの送信レジスタに分割して格納したかを表す分割数を通知する。そして、データ書き込み処理を終了する。
【００４８】
なお、前記メッセージデータの分割数は、例えば送信すべきメッセージデータのデータ長と、各記送信レジスタ６６〜６８の容量とに基づいて検出する。
また、予め起動時等に、前記タイミング発生回路７７に対し、マスタ局Ｍと伝送フレームの授受を行うスレーブ局数を、最大スレーブ局数として通知するようになっている。
【００４９】
一方、タイミング発生回路７７では、演算処理部４１から通知された最大スレーブ局数に基づいてスレーブ局の最大数を認識し、この最大スレーブ局数に応じて、送信レジスタを切り替える。つまり、最大スレーブ局数が“４”として通知された場合には、例えば、各スレーブ局への同期データを書き込むための、送信レジスタを４つ使用し、例えば送信レジスタ６２から順に、送信レジスタ６５まで切り替えを行うものと認識する。また、例えば“２”として通知された場合には、送信レジスタ６４及び６５への切り替えは行わず、送信レジスタ６２及び６３を切り替えることになる。なお、ここでは、送信レジスタ６２から順に、６３、６４、６５の順で切り替えを行うようにしているが、これに限るものではなく、任意の順で切り替えを行うことができる。
【００５０】
そして、タイミング発生回路７７では、図９のフローチャートに示すように、送信データの書き込み終了通知を演算処理部４１から受信すると、ステップＳ１１からステップＳ１２に移行し、このとき、演算処理部４１からメッセージデータ有りとして通知された場合には、ステップＳ１３に移行し、メッセージフラグＦｍをＦｍ＝１に設定した後、ステップＳ１４に移行する。一方、メッセージデータ無しとして通知されたときには、そのままステップＳ１４に移行する。
【００５１】
このステップＳ１４では、タクト同期用データの送信処理を実行する。具体的には、切り替え回路６９を制御して、送信レジスタ７１とタクト同期用の送信レジスタ６１とを連通させる。また、アドレス挿入部７３及びコマンド付加部７０に対し、タクト同期用の送信レジスタ６１を選択したことを通知する。
これによって、送信レジスタ６１のタクト同期用データは、第１送信レジスタ７１に書き込まれ、この送信データに対し、コマンド付加部７０によって、制御コマンドｍ３として、送信レジスタ６１に対応するタクト同期用データであることが付加され、さらに、アドレス挿入部７３によって、ブロードキャスト伝送用のアドレスが付加される。
【００５２】
さらに、ＦＣＳ計算部７４によりフレーム検査シーケンス演算が行われ、送信データに、マスタ局Ｍのアドレス、フレーム検査シーケンス演算の結果が付加されてフレーム情報として、第２送信レジスタ７２に格納される。
そして、タイミング発生回路７７では、予め設定された送信周期にしたがって、次の送信周期が開始するタイミングで、起動指令を送信回路７５に出力し、送信回路７５では、第２送信レジスタ７２に格納されたフレーム情報を読み出し、フラグ挿入部７６によって、その先頭及び末尾にフラグデータｍ１及びｍ６が付加されたフレーム情報を、伝送フレームとして、バスＬ１に出力する。これによって、このタクト同期用データは、ブロードキャスト伝送によって、各スレーブ局ＳＬ１〜ＳＬ４に伝送されることになる。
【００５３】
そして、タイミング発生回路７７では、前記タクト同期用データの送信が終了したならば、ステップＳ１６に移行し、同期データの送信処理を行う。すなわち、まず、切り替え回路６９を操作して第１送信レジスタ７１及び送信レジスタ６２を連通し、送信レジスタ６２の送信データを第１送信レジスタ７１に転送し、この第１送信レジスタ７１の送信データに対し、アドレス挿入部７３によって、送信レジスタ６２に対応するスレーブ局、つまりスレーブ局ＳＬ１のアドレスを付加し、また、コマンド付加部７０によって、送信レジスタ６２に対応する制御コマンド、つまり、同期データであること、を付加し、さらに、フレーム情報、フラグ情報等を付加する。そして、タイミング発生回路７７が、予め設定された同期データの送信タイミングにしたがって所定のタイミングで送信回路７５に起動指令を通知し、これをうけて、スレーブ局ＳＬ１宛の同期データからなる伝送フレームを送信回路７５がバスＬ１に送信することによって、送信レジスタ６２に書き込まれたスレーブ局ＳＬ１宛の同期データが、スレーブ局ＳＬ１宛に送信されることになる。
【００５４】
そして、タイミング発生回路７７では、次に、送信レジスタ６３と、第１送信レジスタ７１とを連通するよう切り替え回路６９を切り替え、送信レジスタ６３を選択したことをアドレス挿入部７３及びコマンド付加部７０に通知し、以後、上記と同様にして、今度は、送信レジスタ６３に書き込まれたスレーブ局ＳＬ２宛の伝送フレームが生成され、これがバスＬ１に送信されて、送信レジスタ６３に書き込まれたスレーブ局ＳＬ２宛の同期データが、スレーブ局ＳＬ２宛に送信されることになる。
【００５５】
この処理を繰り返し行って、切り替え回路６９によって、第１送信レジスタ７１の接続先を送信レジスタ６４、６５に順次切り替えることによって、スレーブ局ＳＬ３宛、ＳＬ４宛に順次同期データを送信する。
そして、最大スレーブ数として指定された数のスレーブ局宛に伝送フレームを送信したとき、同期データの送信処理を終了し、ステップＳ２４に移行する。
【００５６】
このステップＳ２４では、メッセージフラグがＦｍ＝１であるかどうか、つまり、送信すべきメッセージデータがあるかどうかを判断する。このとき、Ｆｍ＝０であるときには、送信すべきメッセージデータはないものと判断し、一回の送信周期における、データの送信は終了したものと判定し、処理を終了する。
一方、メッセージフラグがＦｍ＝１であり、送信すべきメッセージデータがあると判定される場合には、ステップＳ２６に移行し、メッセージカウンタＣｍを“１”だけインクリメントとする。そして、このメッセージカウンタＣｍのカウント値に応じた送信レジスタを選択するよう、切り替え回路６９を制御する。
【００５７】
前記メッセージカウンタＣｍは、送信レジスタ６６〜６８のうちの何れを選択するかを決定するためのカウンタであって、メッセージカウンタＣｍが“１”のとき送信レジスタ６６、“２”のとき送信レジスタ６７、“３”のとき送信レジスタ６８を選択するものとする。したがって、この場合、メッセージカウンタＣｍは“１”であるから、メッセージデータ用の送信レジスタ６６と、第１送信レジスタ７１とを接続するよう指示を行う。また、メッセージカウンタＣｍを“１”だけインクリメントし、さらに、アドレス挿入部７３に対して、送信先のスレーブ局例えば、スレーブ局ＳＬ１を通知し、また、送信レジスタ６６を選択したことを通知する。
【００５８】
これによって、今度は第１送信レジスタ７１と送信レジスタ６６とが接続され、送信レジスタ６６のメッセージデータが、第１送信レジスタ７１に取り込まれ、送信先として通知されたスレーブ局ＳＬ１のアドレスがアドレス挿入部７３によって付加され、また、送信レジスタ６６に対応する制御コマンド、つまりメッセージデータであることが付加される。
【００５９】
そして、タイミング発生回路７７では、予め設定されたメッセージデータを送信するタイミングとなった時点で、送信回路７５に対して起動指令を通知し（ステップＳ２８）、これによって、送信回路７５からスレーブ局ＳＬ１宛のメッセージデータが送信されることになる。
そして、タイミング発生回路７７では、メッセージカウンタＣｍが、演算処理部４１から通知されたメッセージデータの分割数と一致するかを判定し（ステップＳ３０）、例えば、このとき、メッセージデータの分割数として“３”が通知された場合には、一致しないから、そのまま処理を終了する。
【００６０】
以上の処理によって、第１の送信周期におけるマスタ局Ｍの送信部４５の処理が終了する。
したがって、この第１の送信周期においては、図３に示すように、まず、タクト同期用データＤＢが、各スレーブ局ＳＬ１〜ＳＬ４宛にブロードキャスト伝送で送信され、続いて、同期データＤＭ１〜ＤＭ４がそれぞれスレーブ局ＳＬ１宛、スレーブ局ＳＬ２宛、スレーブ局ＳＬ３宛、スレーブ局ＳＬ４宛に順次送信された後、さらに、スレーブ局ＳＬ１宛のメッセージデータＭ−ＤＭが送信される。このとき、送信されるメッセージデータは、送信すべきメッセージデータを３分割にしたうちの、第１のブロックが送信されることになる。
【００６１】
そして、次の第２の送信周期では、演算処理部４１では、上記と同様にして、送信すべき送信データを生成し、これを送信レジスタに書き込む。このとき、送信すべきメッセージデータがあったとしても、先の第１の送信周期で、メッセージデータの送信を行っており、書き込み可能フラグＦｗがＦｗ＝１に設定されているから、ステップＳ１からステップＳ２に移行し、第１の送信周期で、メッセージデータを３分割した３ブロックのうち、まだ１ブロックしか送信していないから、この時点では、タイミング発生回路７７から、メッセージデータの送信終了通知が行われていない。したがって、ステップＳ２からそのまま処理を終了し、新たなメッセージデータの書き込みは行わない。したがって、送信レジスタ６６〜６８に格納されている、まだ送信されていない送信すべきメッセージデータが削除されることはない。
【００６２】
そして、タイミング発生回路７７では、上記と同様にしてタクト用同期データ及び同期データの書き込みが終了したことを通知されると、これをうけて、図９に示すように、ステップＳ１１からステップＳ１２に移行し、このとき、メッセージデータの書き込み通知は行われないから、ステップＳ１４に移行し、切り替え回路６９を制御して、まず、タクト同期用データの送信処理を行い、続いて、送信レジスタ６２〜６５を順次切り替え、各スレーブ局宛の同期データの送信処理を行う（ステップＳ１６）。
【００６３】
そして、このとき、メッセージフラグはＦｍ＝１に設定されていることから、ステップＳ２４からステップＳ２６に移行し、メッセージカウンタＣｍを“１”だけインクリメントした後、このカウンタ値“２”に相当する送信レジスタ、この場合送信レジスタ６７を第１送信レジスタ７１の接続先として切り替え、所定のタイミングで起動通知を送信回路７５に通知する（ステップＳ２６、Ｓ２８）。
【００６４】
これによって、上記と同様にして、送信レジスタ６７のメッセージデータに対して、指定されたスレーブ局ＳＬ１のアドレス及び制御コマンドはメッセージデータが付加され、これらから伝送フレームが生成されて所定のタイミングでバスＬ１に送信される。
そして、メッセージデータが３分割されている場合には、メッセージカウンタＣｍの値は、メッセージデータと一致しないから、そのまま処理を終了する。
【００６５】
以上の処理によって、第２の送信周期が終了したことになる。この場合も、図３に示すように、第２の送信周期のうちに、タクト同期用データ、各スレーブ局宛の同期送信データ、スレーブ局ＳＬ１宛のメッセージデータが送信されるが、この第２の送信周期で送信されるメッセージデータは、本来送信すべきメッセージデータを３分割にした、２ブロック目のデータである。
【００６６】
そして、第３の送信周期においては、演算処理部４１では、第２の送信周期と同様にして、タクト同期用データ、同期データを書き込み、送信データの書き込みをタイミング発生回路７７に通知する。
そして、タイミング発生回路７７では、第２の送信周期と同様に、タクト同期用データ、同期データを送信した後、ステップＳ２４からステップＳ２６に移行し、メッセージカウンタＣｍを“１”だけインクリメントし、メッセージカウンタＣｍが“３”となることから、切り替え回路６９によって送信レジスタ６８に切り替え、送信レジスタ６８のメッセージデータを送信する。そして、ステップＳ３０に移行し、このとき、メッセージカウンタＣｍは、“３”であり、分割数（＝３）と一致するからステップＳ３０からステップＳ３２に移行し、メッセージカウンタＣｍ、メッセージフラグＦｍを零にリセットすると共に、演算処理部４１に対して、メッセージデータの送信が終了したことを通知する。
【００６７】
以上の処理によって、第３の送信周期が終了したことになる。この場合も、図３に示すように、第３の送信周期のうちに、タクト同期用データ、各スレーブ局宛の同期送信データ、スレーブ局ＳＬ１宛のメッセージデータが送信されるが、この第３の送信周期で送信されるメッセージデータは、本来送信すべきメッセージデータを３分割にした、３ブロック目のデータである。
【００６８】
したがって、送信すべきメッセージデータは、第１から第３の送信周期にわけて、スレーブ局ＳＬ１に送信されることになる。
そして、次に、メッセージデータを送信する場合には、メッセージデータを３分割した３ブロック目の送信が終了したときに、メッセージデータの終了通知がタイミング発生回路７７から演算処理部４１に対して行われるから、図８のステップＳ１からステップＳ２、Ｓ３を経てステップＳ４に移行し、書き込み可能フラグがＦｗ＝０にリセットされる。したがって、ステップＳ４からステップＳ５に移行し、新たなメッセージデータの、送信レジスタ６６〜６８への書き込みが可能となる。そして、以後、上記と同様の処理が行われることになる。
【００６９】
一方、スレーブ局ＳＬ１〜ＳＬ４では、その受信部１３では、図５に示すように、バスＬ１から伝送フレームを受信すると、第１受信レジスタ部２１にこれを取り込み、フラグ検出部２２においてフラグデータｍ１を検出すると、送信先アドレスｍ２からフラグデータｍ６までを第２受信レジスタ部２３に書き込む。また、ＦＣＳ計算・比較部２４では、伝送フレームに対し、フレーム検査シーケンス演算を行い、その結果が正常でなければこれを演算処理部１１に通知し、演算処理部１１では、マスタ局からの伝送フレームを正常に受信することができなかったとして、所定の対処を行う。
【００７０】
また、アドレス検出部２６では、第２受信レジスタ部２３に格納された伝送フレーム中の送信先アドレスｍ２を参照し、これが自局を特定するアドレスであることを認識したとき、送信部１４の送信回路３５に対し、起動指令を通知する。また、第２受信レジスタ部２３の伝送フレーム中の制御コマンドｍ３をもとに、制御コマンド検出部２７において、受信した伝送フレームが、同期データであるか、メッセージデータであるかが判定され、同期データであると判定されたときには、切り替え回路２８により、第３受信レジスタ部２５と第４受信レジスタ部２９とが接続されて、伝送データｍ４が第４受信レジスタ部２９に書き込まれ、メッセージデータであると判定されたときには、切り替え回路２８により、第３受信レジスタ２５と第５受信レジスタ部３０とが接続されて、第５受信レジスタ部３０に書き込まれる。
【００７１】
そして、演算処理部１１では、第４受信レジスタ部２９及び第５受信レジスタ部３０に書き込まれた伝送データｍ４を、所定のタイミングで参照し、第４受信レジスタ部２９に書き込まれた同期データをもとに、所定の制御処理を行うと共に、第５受信レジスタ部３０にメッセージデータが書き込まれている場合には、このメッセージデータに付加されている分割数に応じて、このメッセージデータが何分割されて送信されるかを判定する。
【００７２】
この場合、上述のようにメッセージデータが３分割して送信されるから、最初のメッセージデータに付加されている分割数情報に基づいて、このメッセージデータは３分割して送信されることを認識し、３送信周期が経過して、３分割したメッセージデータを全て受信したとき、これら３送信周期分のメッセージデータを組み合わせて分割して送信されたメッセージデータを一つのメッセージデータに復元する（復元手段）。これによって、スレーブ局では、マスタ局が送信したメッセージデータ全体を認識することができる。そして、このメッセージデータに基づいて所定の処理を行う。
【００７３】
また、各スレーブ局ＳＬ１〜ＳＬ４では、演算処理部１１において、マスタ局Ｍから自局宛の伝送フレームを受信するタイミングに応じて、マスタ局Ｍに送信すべき同期データを生成し、同期データ伝送用の送信レジスタ３１に書き込んでいる。
そして、同期データからなる伝送フレームを受信すると、これに応じて切り替え回路３３が動作して送信レジスタ３１と第１送信レジスタ３４を接続し、これによって、送信レジスタ３１の同期データが第１送信レジスタ３４に伝達され、制御コマンド付加部３５が受信部１３から通知された制御コマンドつまり同期データを制御コマンドとしてこれに付加し、この送信レジスタ３４に書き込まれた送信データ及び制御データに対し、アドレス挿入部３６によって、自局を特定するアドレスが付加され、これが第２送信レジスタ３７に書き込まれる。また、送信レジスタ３７に書き込まれたフレーム情報に対し、ＦＣＳ計算部３８によってフレーム検査シーケンス演算が行われ、その演算結果が第２送信レジスタ３７のフレーム情報に付加される。
【００７４】
そして、送信回路３９は第２送信レジスタ３７に格納されている、この受信した伝送フレームと同じデータ種である、フレーム情報を読み出し、フラグ挿入部４０によって、フラグデータｓ１及びｓ６を付加し、これを伝送フレームとして送信する。
これによって、マスタ局Ｍからの同期データに対する応答として、各スレーブ局ＳＬ１〜ＳＬ４では、同期データからなる伝送フレームを送信することになる。
【００７５】
なお、ここでは、スレーブ局では、マスタ局Ｍから同期データを受信したとき、この時点で既に送信レジスタ３１に格納されている同期データを送信するようになっている。つまり、スレーブ局では、マスタ局Ｍからの同期データに対し、送信周期が一つ遅れたタイミングで同期データを送信するようになっている。
一方、同期データと共にメッセージデータを受信したスレーブ局ＳＬ１では、制御コマンド検出部２７において、切り替え回路２８を切り替えてメッセージデータを第５受信レジスタ部３０に伝達すると共に、切り替え回路３３を切り替えて送信レジスタ３２と第１送信レジスタ３４とを接続し、送信レジスタ３２のメッセージデータを第１送信レジスタ３４に伝達する。つまり、送信部１５では、メッセージデータからなる伝送フレームを受信する以前に既に、送信レジスタ３２に格納されていたメッセージデータを第１送信レジスタ３４に伝達する。なお、演算処理部１１では、マスタ局Ｍから何れのメッセージデータを送信するかを指示されていない状態では、意味のない、ダミーの送信データを書き込む。したがって、マスタ局Ｍから３分割したメッセージデータの第１ブロックを受信した時点では、ダミーのメッセージデータが送信されることになる。
【００７６】
続いて、メッセージデータの第２ブロックを受信した時点でも、スレーブ局ＳＬ１では、送信すべきメッセージデータがないことから、ダミーの送信データを格納し、これが送信される。そして、第３のブロックを受信したときにもダミーの送信データが送信される。
つまり、図３に示すように、マスタ局Ｍがスレーブ局ＳＬ１に対して３分割したメッセージデータＭ−ＤＭを３周期にわたって送信しているときには、この応答としてスレーブ局ＳＬ１では、ダミーのメッセージデータＭ−ＤＳを送信することになる。
【００７７】
そして、マスタ局Ｍの受信部４３では、図６に示すように、バスＬ２から、各スレーブ局ＳＬ１〜ＳＬ４からの伝送フレームを受信するとこれを第１受信レジスタ部５１に取り込み、フラグ検出部５２でフラグデータｓ１を検出したならば、送信元アドレスｓ２〜フラグデータｓ６までを第２受信レジスタ部５３に格納する。また、ＦＣＳ計算・比較部５４では、この受信データに対し、フレーム検査シーケンス演算を行い、この演算結果と、伝送フレーム中のチェック用データｓ５とを比較し、これらが一致しないときには、演算処理部４１に対しＦＣＳエラーであることを通知する。演算処理部４１では、ＦＣＳエラー通知が行われたときには、この伝送データは無効であることを認識し所定の対処を行う。
【００７８】
一方、フレーム検査シーケンス演算の結果がチェック用データｓ５と一致した場合には、伝送が正常に行われたものと認識し、アドレス検出部５６において、送信元アドレスｓ２をもとに、この伝送フレームの送信元のスレーブ局を認識し、制御コマンドｓ３及び伝送データｓ４を、送信元アドレスｓ２で特定したスレーブ局からの伝送データとして、第３受信レジスタ部５５に書き込む。この第３受信レジスタ部５５の制御コマンドｓ３を参照し、制御コマンド検出部５７において、伝送データが同期データであるか、メッセージデータであるかを判断し、これに応じて、切り替え回路５８を切り替え、すなわち、同期データであるときには、第４受信レジスタ５９を選択して第３受信レジスタ部５５の伝送データを第４受信レジスタ部５９に書き込み、逆にメッセージデータであるときには、第３受信レジスタ部５５の伝送データを第５受信レジスタ６０に書き込む。
【００７９】
そして、演算処理部４１では、送信周期に応じて、所定のタイミングで、第４受信レジスタ５９及び第５受信レジスタ６０を参照し、第４受信レジスタ５９の同期データをもとに所定の処理を行う。また、スレーブ局ＳＬ１から送信されたメッセージデータは、第５受信レジスタ６０に伝達されるが、このメッセージデータはダミーであるから、演算処理部４１では処理を行わない。
【００８０】
以上が、マスタ局Ｍからスレーブ局ＳＬ１に、３分割したメッセージデータを伝送する際のマスタ局Ｍ及びスレーブ局ＳＬ１〜ＳＬ４の動作である。
この状態から、例えば、マスタ局Ｍが、スレーブ局ＳＬ１のトレースデータをロードアップする場合には、マスタ局Ｍでは、トレースデータ等をアップロードするための送信要求を行うためのメッセージデータを生成して、上記と同様にしてスレーブ局ＳＬ１宛に送信する。そして、次の送信周期で、スレーブ局ＳＬ１がアップロード情報からなるメッセージデータを送信するためのトリガとなるダミーのメッセージデータを送信する。そして、例えば、スレーブ局ＳＬ１から、アップロード情報の送信終了が通知されるまで、ダミーのメッセージデータを送信周期毎に送信する。
【００８１】
一方、スレーブ局ＳＬ１では、アップロード情報の送信要求のメッセージデータを受けると、この時点ではまだ指定された送信すべきメッセージデータの送信レジスタ３２への書き込みが終了していないから、まず、ダミーのメッセージデータを送信し、受信したメッセージデータを解読し、指定されたアップロード情報からなるメッセージデータを生成し、メッセージデータ伝送用の送信レジスタ３２に書き込む。そして、次に、マスタ局Ｍからダミーのメッセージデータを受信したとき、指定されたアップロード情報からなるメッセージデータを送信する。
【００８２】
このとき、トレースデータを一度に送信することができない場合には、複数回に分割して送信レジスタ３２に書き込む。そして、以後、マスタ局からダミーのメッセージデータを送信するタイミングで順次アップロード情報をマスタ局Ｍに送信し、指定されたアップロード情報を全て送信し終えたとき、アップロード情報の送信終了を通知するためのメッセージデータを送信する。
【００８３】
これによって、マスタ局Ｍでは、スレーブ局ＳＬ１から全てのメッセージデータを受信したことを認識し、ダミーのメッセージデータの送信を終了する。
以上の処理によって、スレーブ局ＳＬ１からマスタ局Ｍへのアップロード情報の伝送が終了する。
ここで、マスタ局Ｍは、所定の送信周期で、各スレーブ局宛に同期データを送信しその応答を受信するようにしている。したがって、各スレーブ局から同期データを受信した後は、次の送信周期が始まるまでの間は、バスＬ１及びＬ２は空き状態となる。前記マスタ局とスレーブ局との間でのメッセージデータの授受は、前記バスＬ１及びＬ２が空き状態となる期間を利用して行うようにしている。このため、本来授受される同期データの高速通信には、何ら影響を与えることなく、メッセージデータを送信することができる。
【００８４】
したがって、このように空き時間を利用してバスＬ１及びＬ２を利用してメッセージデータを送信することができるから、各スレーブ局におけるモーションコントロールを実行しながら、これと共に、各スレーブ局への制御定数のセットアップや、各スレーブ局で保持する情報の吸い上げ等を行うことができ、効率向上を図ることができると共に、バスＬ１、Ｌ２を有効に活用することができる。
【００８５】
また、このとき、バスＬ１及びＬ２を介して高速通信を行うことができるから、メッセージデータの授受に要する通信時間の短縮を図ることができる。
また、このとき、比較的長い送信データをメッセージデータとして送信する場合には、メッセージデータを分割して送信するようにし、且つ分割したメッセージデータからなる伝送フレームを送信する際に、同期データの伝送における空き時間内で送信可能な大きさに分割して送信するようにしている。したがって、メッセージデータを送信するに当たり、大容量のメッセージデータを伝送する場合であっても、同期データの伝送に影響を及ぼすことなく伝送することができる。
【００８６】
また、このとき、メッセージデータ用の送信レジスタを複数設け、比較的長い送信データであっても複数の送信レジスタにわたって一度に書き込みを行うようにしている。したがって、マスタ局Ｍの演算処理部４１では、複数の送信周期にわたって送信する必要のあるメッセージデータであっても、一度、送信レジスタへの書き込みを行えば、後は、タイミング発生回路７７側でメッセージデータを分割送信するから、演算処理部４１ではメッセージデータの書き込みを一度行うだけでよい。したがって、その分、演算処理部４１での処理を軽減することができ、これに伴って演算処理部４１での処理効率を向上させることができる。
【００８７】
なお、上記第１の実施の形態においては、スレーブ局ＳＬ１から、トレースデータ等をアップロードするときに、マスタ局Ｍから送信要求からなるメッセージデータをスレーブ局ＳＬ１に対して送信した後、スレーブ局ＳＬ１に対してダミーのメッセージデータを送信して、送信要求したアップロード情報をスレーブ局ＳＬ１から送信させるようにした場合について説明したが、これに限るものではなく、マスタ局Ｍからの送信要求を受けたスレーブ局ＳＬ１側での、送信用データの生成処理に伴う処理時間を考慮し、例えば、送信要求からなるメッセージデータをスレーブ局ＳＬ１に対して送信した後、前記処理時間を考慮した所定の送信周期後に、スレーブ局ＳＬ１に対してダミーのメッセージデータを送信するようにし、送信要求をうけてスレーブ局ＳＬ１側で送信要求に応じた送信データの送信レジスタ３２への書き込みが完了したと予測される時点で、再度ダミーのメッセージデータを送信するようにしてもよい。
【００８８】
また、このとき、スレーブ局ＳＬ１から複数に分割してトレースデータを送信する場合には、スレーブ局ＳＬ１側で、ロードアップ情報の送信終了通知を行わず、スレーブ局ＳＬ１側で分割した第１ブロックのメッセージデータに分割数を付加して送信し、マスタ局側でこの分割数に応じてダミーのメッセージデータの送信回数を調整するようにしてもよい。また、このとき、通知された分割数に応じて、演算処理部４１で、メッセージデータ用の送信レジスタ６６〜６８にダミーのメッセージデータを設定し、さらに、通知された分割数を、マスタ局側からのメッセージデータの分割数としてタイミング発生回路７７に通知することによって、タイミング発生回路７７において、順次ダミーのメッセージデータを送信管理を行うようにしてもよい。
【００８９】
なお、マスタ局Ｍとスレーブ局との間のメッセージデータを伝送する際の伝送手順、つまり例えば、マスタ局Ｍから何れかのスレーブ局に対してダウンロード情報を送信するときにマスタ局Ｍとスレーブ局との間でやりとりする情報の伝送手順、或いは、マスタ局Ｍが各スレーブ局からアップロード情報を受信するための伝送手順等は、上記に限らず、任意に設定することができる。
【００９０】
また、上記第１の実施の形態においては、マスタ局Ｍの送信部４５において、メッセージデータ伝送用の送信レジスタ６６〜６８を３つ設けた場合について説明したが、これに限らず、任意数の送信レジスタを設けることが可能であり、また、メッセージデータのデータ長が、同期データの送信の空き時間に一度に送信可能なデータ長である場合には、送信レジスタを１つだけ設けるようにしてもよいことはいうまでもない。
【００９１】
また、送信レジスタ６６〜６８に書き込みきれないメッセージデータを送信する場合には、上述のように、送信レジスタを増やすようにしてもよく、また、演算処理部４１側で、メッセージデータを送信レジスタ６６〜６８を一つの分割単位として、分割して書き込むようにし、送信レジスタ６６〜６８に格納されたメッセージデータの一部を送信し終えた後、この続きのメッセージデータを送信レジスタ６６〜６８に書き込み、同様にして送信するようにしてもよい。
【００９２】
次に、本発明の第２の実施の形態を説明する。
この第２の実施の形態は、上記第１の実施の形態においては、一回の送信周期間に、メッセージデータを分割したうちの１ブロックを送信するようにした場合について説明したが、この第２の実施の形態は、空き時間がある場合には、複数のブロックを送信するようにしたものである。
【００９３】
この第２の実施の形態におけるマスタ局Ｍの送信部４５は、図１０に示すように、図７に示す第１の実施の形態におけるマスタ局Ｍの送信部４５において、さらに、伝送時間演算部８０が追加されている。なお、上記第１の実施の形態と同一部には、同一符号を付与しその詳細な説明は省略する。
この第２の実施の形態におけるマスタ局Ｍの演算処理部４１は、予め起動時等に前記伝送時間演算部８０に対し、同期伝送を行う最大スレーブ局数、同期伝送を行う送信周期の設定時間及び、同期伝送バイト数を通知するようになっている。
【００９４】
そして、伝送時間演算部８０では、通知された同期伝送を行う最大スレーブ局数、同期伝送を行う送信周期の設定時間及び、同期伝送バイト数に基づいて、一回の送信周期期間において、メッセージデータを送信するために利用することの可能な空き時間を算出する。例えば、タクト同期用データのバイト数と、同期データのバイト数と最大スレーブ局数とを乗算した値とを加算して、送信すべきデータのバイト数の総和を算出し、これに、バスのビット数（例えば８ビット）／伝送速度〔ｂｐｓ〕を乗算して、送信すべきデータを送信し終えるのに要する所要時間を算出し、これを送信周期の設定時間から減算して空き時間Ｔｆｒｅｅを算出する。
【００９５】
さらに、メッセージデータを送信可能な送信レジスタの数をＸとし、この送信レジスタに格納可能なデータの全ビット長とを乗算した値を伝送速度〔ｂｐｓ〕で割り算した、送信レジスタの数Ｘに相当する伝送データを送信し終えるのに要する所要時間をＴａｌｌ  とし、所要時間Ｔａｌｌ  ＜空き時間Ｔｆｒｅｅを満足する送信レジスタの数Ｘを算出する。
【００９６】
なお、送信レジスタに格納可能なデータのビット長、つまり、分割されたメッセージデータの１ブロックのビット長は固定長とし、また、伝送速度も固定値とする。
例えば、モーションコントロールにおいては、送信周期設定時間は、１〔ｍｓ〕以上に設定されることが大きいから、送信周期設定時間を１〔ｍｓ〕、伝送速度を１６〔Ｍｂｐｓ〕、最大スレーブ局数を２０局、１伝送ブロック、つまり、各送信レジスタのビット長をそれぞれ５０バイトとすると、メッセージ伝送で使用することのできる空き時間Ｔｆｒｅｅは、次式（１）で表すことができる。
【００９７】
Ｔｆｒｅｅ＝１〔ｍｓ〕
−（５０バイト＋５０バイト×２０局）×８ビット／１６〔Ｍｂｐｓ〕
＝４７５〔μｓ〕                                ……（１）
したがって、この空き時間がメッセージ伝送に利用することの可能な時間となる。
【００９８】
よって、この空き時間を満足し得る、伝送ブロック数Ｘを算出し、これをタイミング発生回路７７に通知する。
これを受けて、タイミング発生回路７７では、送信すべきメッセージデータがある場合には、一回の送信周期期間内に、伝送ブロック数Ｘに相当するメッセージデータを送信する。
【００９９】
つまり、図１１に示すように、上記第１の実施の形態と同様にして、タクト同期データ、同期データを送信した後、送信すべきメッセージデータがある場合には、ステップＳ２４からステップＳ２６ａに移行し、まず、メッセージデータ用の送信レジスタを切り替えた後、アドレス挿入部７３、コマンド付加部７０にこれを通知し、メッセージカウンタＣｍを“１”だけインクリメントし、さらに、送信回数カウンタＣｘを“１”だけインクリメントする。そして、起動指令を通知する（ステップＳ２８）。これにより、メッセージデータの第１のブロックが送信される。続いて、メッセージカウンタＣｍの値が、分割数と一致しないときには、ステップＳ３０からステップＳ３４に移行して、送信回数カウンタＣｘが伝送ブロック数Ｘと一致するかどうかを判定し、これらが一致しないときには、ステップＳ２６ａに戻り、メッセージ伝送用の送信レジスタを切り替え、上記と同様にして、メッセージデータの第２のブロックを送信する。再度、送信回数カウンタＣｘが、伝送ブロック数Ｘと一致しないときには、同様にして、次の送信レジスタに切り替え、第３のブロックを送信する。
【０１００】
したがって、以上の処理により、一つの送信周期期間内で、３ブロックからなるメッセージデータの送信が終了することになる。
そして、全てのメッセージデータの送信が終了し、メッセージカウンタＣｍが分割数に達すると、ステップＳ３０からステップＳ３２ａに移行し、レジスタカウンタＣｍ、メッセージフラグＦｍを零にリセットすると共に、演算処理部４１に対して、メッセージデータの送信が終了したことを通知する。さらに、送信回数カウンタＣｘを零にリセットした後、処理を終了する。
【０１０１】
一方、例えば３ブロックからなるメッセージデータのうち、２ブロックを送信した時点で、送信回数カウンタＣｘが伝送ブロック数Ｘと一致した場合には、ステップＳ３４からステップＳ３６に移行し、送信回数カウンタＣｘを零にリセットした後、処理を終了する。そして、次の送信周期では、メッセージフラグＦｍが“１”に設定されているから、ステップＳ２６ａに移行し、メッセージカウンタＣｍで特定される、次の送信レジスタに切り替えてこれを送信する。つまり、第３ブロックの送信が行われることになる。
【０１０２】
したがって、図１２に示すように、マスタ局から、タクト同期用データＤＢに続いて、各スレーブ局宛の同期データＤＭ１〜ＤＭ４を送信した後、同期データの送信に影響を与えない期間、メッセージデータの分割ブロックＭ−ＤＭが送信されこの場合、一つの送信周期期間内に３つの分割ブロックＭ−ＤＭが送信されることになる。したがって、上記第１の実施の形態と同等の作用効果を得ることができると共に、この場合、バスＬ１、Ｌ２の空き時間を最大限活用して、メッセージデータを送信するようにしているから、より伝送効率を向上させることができると共に、バスＬ１、Ｌ２をより有効に活用することができる。
【０１０３】
また、メッセージデータを送信するブロック数を、タクト同期用データ、各スレーブ局宛の同期データのデータ量に基づいて決定し、同期データの授受に対して確実に影響を与えないブロック数だけ伝送するようにしているから、メッセージデータの複数ブロックを送信することに起因して、同期データの授受に影響を及ぼすことはない。
【０１０４】
なお、上記各実施の形態において、定期送信データが同期データに対応し、メッセージデータが非定期送信データに対応し、図９及び図１１のステップＳ１６の処理が定期送信手段に対応し、図９のステップＳ２６〜Ｓ３２及び図１１のステップＳ２６ａ〜Ｓ３６の処理が非定期送信手段に対応し、図５の制御コマンド検出部２７がデータ種別判別手段に対応し、制御コマンド検出部２７及び切り替え回路３３が応答データ送信手段に対応し、図７及び図１０の送信レジスタ６６〜６８が分割手段に対応し、スレーブ局の演算処理部１１において、分割して伝送された所定数のメッセージデータの分割ブロックを受信したときにこれを復元する処理が復元手段に対応し、図１０の伝送時間演算部８０が空き時間予測手段に対応している。
【０１０５】
【発明の効果】
以上説明したように、本発明に係る通信システムによれば、所定の送信周期で定期送信データの授受を行う際に、その空き時間を利用して、定期送信データを送信するための伝送ラインを利用して非定期送信データを送信するようにしたから、非定期送信データを伝送するための伝送ラインを別途設けることなく、定期送信データと共に非定期送信データを伝送することができると共に、シリアル伝送ラインを有効に活用することができ、伝送効率を向上させることができる。
【０１０６】
特に、請求項３に係る通信システムによれば、この非定期送信データを、分割手段によって一つの送信周期期間内の空き時間で送信可能なデータ長に分割し、非定期送信データを送信する際には、分割送信手段により分割ブロック単位で複数の送信周期にわたって送信し、スレーブ局側では、分割して送信された複数の分割ブロックを復元するようにしたから、送信すべき非定期送信データが、一つの送信周期期間内で送信しきれないデータ長である場合でも、定期送信データの送信に影響を及ぼすことなく送信することができる。
【０１０７】
また、請求項４に係る通信システムによれば、空き時間予測手段によって送信周期期間内の空き時間を予測し、予測された空き時間に応じて非定周期送信データを分割するようにしたから、空き時間をより有効に活用することができる。
また、請求項５に係る通信システムによれば、非定周期送信データを予め設定された容量の複数の記憶領域に分割して格納し、一つの送信周期期間内に一つの記憶領域に格納されたデータを送信するようにしたから、前記記憶領域の容量を空き時間に応じて設定することによって、非定周期送信データを、一つの送信周期期間内で送信可能なデータ長に容易に分割することができる。
【０１０８】
また、請求項６に係る通信システムによれば、非定周期送信データを予め設定された容量の複数の記憶領域に分割して格納し、空き時間予測手段で予測された空き時間内にデータ送信可能な記憶領域の個数を推定し、一の送信周期期間内に、推定した個数分の記憶領域に格納されたデータを送信するようにしたから、非定周期送信データを、空き時間内で送信可能なデータ長に容易に分割することができる。
【図面の簡単な説明】
【図１】本発明を適用した通信システムの一例を示すシステム構成図である。
【図２】第１の実施の形態の動作説明に供するタイミングチャートである。
【図３】第１の実施の形態の動作説明に供するタイミングチャートである。
【図４】マスタ局及びスレーブ局との間で授受される伝送フレームのフォーマットの一例である。
【図５】第１の実施の形態におけるスレーブ局の構成を示すブロック図の一例である。
【図６】第１の実施の形態におけるマスタ局の受信部の構成を示すブロック図の一例である。
【図７】第１の実施の形態におけるマスタ局の送信部の構成を示すブロック図の一例である。
【図８】第１の実施の形態におけるマスタ局の演算処理部のメッセージデータの書き込み処理の一例を示すフローチャートである。
【図９】第１の実施の形態におけるマスタ局のタイミング発生回路におけるデータ送信時の処理の一例を示すフローチャートである。
【図１０】第２の実施の形態におけるマスタ局の送信部の構成を示すブロック図の一例である。
【図１１】第２の実施の形態におけるマスタ局のタイミング発生回路におけるデータ送信時の処理の一例を示すフローチャートである。
【図１２】第２の実施の形態の動作説明に供するタイミングチャートである。
【図１３】従来の伝送フレームの伝送手順を説明するためのタイミングチャートである。
【符号の説明】
１１、４１  演算処理部
１３、４３  受信部
１５、４５  送信部
２６、５６  アドレス検出部
２８、３３、６９  切り替え回路
３１、３２  送信レジスタ
３９、７５  送信回路
６１  タクト同期用送信レジスタ
６２〜６５  同期データ伝送用送信レジスタ
６６〜６８  メッセージデータ伝送用送信レジスタ
３５、７０  コマンド付加部
７７  タイミング発生回路
８０  伝送時間演算部
Ｍ  マスタ局
Ｓ１〜Ｓ４  スレーブ局
【図１】
2004242031.tif 000003
【図２】
2004242031.tif 000004
【図３】
2004242031.tif 000005
【図４】
2004242031.tif 000006
【図５】
2004242031.tif 000007
【図６】
2004242031.tif 000008
【図７】
2004242031.tif 000009
【図８】
2004242031.tif 000010
【図９】
2004242031.tif 000011
【図１０】
2004242031.tif 000012
【図１１】
2004242031.tif 000013
【図１２】
2004242031.tif 000014
【図１３】
2004242031.tif 000015