通信バスを介して接続されたスレーブノードとの間で、通信を行う通信ノードであって、スレーブノードとの間で送受信されるべきメッセージフレーム間の時間間隔を設定するメッセージフレーム時間間隔設定部と、前記通信バスを介してスレーブノードとの間で通信を行う他の通信ノードにより送受信されるべきメッセージフレームの終了を検出するメッセージフレーム終了検出部と、前記メッセージフレーム終了検出部によりメッセージフレームが終了したことが検出されてから、前記メッセージフレーム時間間隔設定部により設定されるべきメッセージフレーム間の時間間隔が経過したかどうかを判定する時間間隔経過判定部と、前記時間間隔経過判定部によりメッセージフレーム間の時間間隔が経過したと判定されるまでの間に、前記通信バスが他の通信ノードに占有されているかどうかを判定する第1のバス占有判定部と、該第1のバス占有判定部により前記通信バスが他の通信ノードに占有されていないと判定された場合に、メッセージフレームを送信する制御を行うメッセージフレーム送信制御部とを有する、通信ノード。請求項1に記載の通信ノードにおいて、前記メッセージフレーム時間間隔設定部は、前記メッセージフレーム間の時間間隔として、乱数に基づいて生成されるべき値を設定する、通信ノード。請求項1に記載の通信ノードにおいて、前記メッセージフレーム時間間隔設定部は、前記メッセージフレーム間の時間間隔として、固定された値を設定する、通信ノード。請求項3に記載の通信ノードにおいて、前記メッセージフレームに含まれるべきブレークフィールド長を設定するブレークフィールド長設定部と、該ブレークフィールド長設定部により設定されるべきブレークフィールド長に従って、ブレークフィールドを送信する制御を行うブレークフィールド送信制御部と、前記ブレークフィールド送信制御部によりブレークフィールドの送信が終了したと判定された際に、前記通信バスが他の通信ノードに占有されているかどうかを判定する第2のバス占有判定部とを有し、前記メッセージフレーム送信制御部は、前記第2のバス占有判定部により前記通信バスが他の通信ノードに占有されていないと判定された場合に、メッセージフレームの送信を継続する制御を行う、通信ノード。請求項1に記載の通信ノードにおいて、前記メッセージフレーム終了検出部は、前記通信バスを介してスレーブノードとの間で通信を行う他の通信ノードにより送信されるべきブレークフィールドの立ち上がりからの経過時間に基づいて、メッセージフレームの終了を検出する、通信ノード。請求項1に記載の通信ノードにおいて、前記第1のバス占有判定部は、前記時間間隔経過判定部によりメッセージフレーム間の時間間隔が経過したと判定されるまでの間に、前記通信バスがドミナント状態であることが検出された場合に、該通信バスが他の通信ノードに占有されていると判定する、通信ノード。請求項4に記載の通信ノードにおいて、前記第2のバス占有判定部は、前記ブレークフィールド送信制御部によりブレークフィールドの送信が終了したと判定された際に、前記通信バスがドミナント状態であることが検出された場合に、該通信バスが他の通信ノードに占有されていると判定する、通信ノード。スレーブノードと、該スレーブノードと通信バスを介して接続された通信ノードとを有する通信システムであって、通信ノードは、スレーブノードとの間で送受信されるべきメッセージフレーム間の時間間隔を設定するメッセージフレーム時間間隔設定部と、前記通信バスを介してスレーブノードとの間で通信を行う他の通信ノードにより送受信されるべきメッセージフレームの終了を検出するメッセージフレーム終了検出部と、前記メッセージフレーム終了検出部によりメッセージフレームが終了したことが検出されてから、前記メッセージフレーム時間間隔設定部により設定されるべきメッセージフレーム間の時間間隔が経過したかどうかを判定する時間間隔経過判定部と、前記時間間隔経過判定部によりメッセージフレーム間の時間間隔が経過したと判定されるまでの間際に、前記通信バスが他の通信ノードに占有されているかどうかを判定する第1のバス占有判定部と、該第1のバス占有判定部により前記通信バスが他の通信ノードに占有されていないと判定された場合に、メッセージフレームを送信する制御を行うメッセージフレーム送信制御部とを有する、通信システム。請求項8に記載の通信システムにおいて、前記メッセージフレームに含まれるべきブレークフィールド長を設定するブレークフィールド長設定部と、該ブレークフィールド長設定部により設定されるべきブレークフィールド長に従って、ブレークフィールドを送信する制御を行うブレークフィールド送信制御部と、前記ブレークフィールド送信制御部によりブレークフィールドの送信が終了したと判定された際に、前記通信バスが他の通信ノードに占有されているかどうかを判定する第2のバス占有判定部とを有し、前記メッセージフレーム送信制御部は、前記第2のバス占有判定部により前記通信バスが他の通信ノードに占有されていないと判定された場合に、メッセージフレームの送信を継続する制御を行う、通信システム。通信バスを介して接続されたスレーブノードとの間で、通信を行う通信ノードにおける通信方法であって、スレーブノードとの間で送受信されるべきメッセージフレーム間の時間間隔を設定するメッセージフレーム時間間隔設定ステップと、前記通信バスを介してスレーブノードとの間で通信を行う他の通信ノードにより送受信されるべきメッセージフレームの終了を検出するメッセージフレーム終了検出ステップと、前記メッセージフレーム終了検出ステップによりメッセージフレームが終了したことが検出されてから、前記メッセージフレーム時間間隔設定ステップにより設定されるべきメッセージフレーム間の時間間隔が経過したかどうかを判定する時間間隔経過判定ステップと、前記時間間隔経過判定ステップによりメッセージフレーム間の時間間隔が経過したと判定されるまでの間に、前記通信バスが他の通信ノードに占有されているかどうかを判定する第1のバス占有判定ステップと、該第1のバス占有判定部により前記通信バスが他の通信ノードに占有されていないと判定された場合に、メッセージフレームを送信する制御を行うメッセージフレーム送信制御ステップとを有する、通信方法。請求項10に記載の通信方法において、前記メッセージフレームに含まれるべきブレークフィールド長を設定するブレークフィールド長設定ステップと、該ブレークフィールド長設定ステップにより設定されるべきブレークフィールド長に従って、ブレークフィールドを送信する制御を行うブレークフィールド送信制御ステップと、前記ブレークフィールド送信制御ステップによりブレークフィールドの送信が終了したと判定された際に、前記通信バスが他の通信ノードに占有されているかどうかを判定する第2のバス占有判定ステップとを有し、前記メッセージフレーム送信制御ステップは、前記第2のバス占有判定部により前記通信バスが他の通信ノードに占有されていないと判定された場合に、メッセージフレームの送信を継続する制御を行う、通信方法。既存のLINクラスタに、新たに自発的に通信を行う通信ノードを追加できない。新たに通信ノードを追加するためには、該追加される通信ノードを制御するための通信スケジュールを設計したり、既存のLINクラスタに含まれる通信ノードを制御するための通信スケジュールを再設計したりする必要がある。また、動作が保証されている独立したLINクラスタが複数ある場合に、これらのLINクラスタを1つのLINクラスタとして結合できない。また、通信制御における通信ノード間の主従関係と、実際に通信制御を行う際の主従関係とを一致させようとする場合に、設計に制約がでる。LINは、マスタースレーブ方式を採用しているため、複数のマスターノードを1つのネットワークに配置できない。仮に、1つのネットワークに、複数のマスターノードを配置した場合について説明する。図1は、1つのLINに複数のマスターノードを配置した場合に、各マスターノードにより独立してスケジューリングが実行された場合の一例を示す。図1には、1つのLINに、NNは、N>1の整数個のマスターノードが配置される場合について示される。N個のマスターノードは、同一の通信バスに接続される。また、N個のマスターノードは独立に動作する。マスターノード1により、通信バス上に、メッセージ1M1を送信するためのスケジューリングが行われる。該メッセージは複数のフレームを含み、各フレームはID1、ID2、ID3、ID4により表される。マスターノード2により、通信バス上に、メッセージ2M2を送信するためのスケジューリングが行われる。該メッセージは複数のフレームを含み、各フレームはID1、ID2、ID3、ID4により表される。マスターノードNにより、通信バス上に、メッセージNMNを送信するためのスケジューリングが行われる。該メッセージは複数のフレームを含み、各フレームはID1、ID2、ID3、ID4により表される。マスターノード2によるスケジューリングによりメッセージ2のID1が送信される時間は、マスターノード1によるスケジューリングにより、通信バス上に、メッセージ1のID1が送信されている。通信バス上に、メッセージ1のID1が送信されているため、通信バス上で、複数のメッセージが重複してスケジューリングされている。この状態で、マスターノード2によるスケジューリングに従って、メッセージ2のID1が送信された場合、メッセージ2のID1は、メッセージ1のID1と衝突する。また、マスターノード2によるスケジューリングにより、メッセージ2のID2が送信される時間は、マスターノード1によるスケジューリングにより、通信バス上に、メッセージ1のID3が送信されている。通信バス上に、メッセージ1のID3が送信されているため、通信バス上で、複数のメッセージが重複してスケジューリングされている。この状態で、マスターノード2によるスケジューリングに従って、メッセージ2のID2が送信された場合、メッセージ2のID2は、メッセージ1のID3と衝突する。また、マスターノード2によるスケジューリングにより、メッセージ2のID3が送信される時間は、メッセージが送信される時間としてスケジューリングされていない。通信バス上に、メッセージが送信されていないため、マスターノード2によるスケジューリングに従って、メッセージ2のID3が送信される。また、マスターノード2によるスケジューリングにより、メッセージ2のID4が送信される時間は、マスターノードNによるスケジューリングにより、通信バス上に、メッセージNのID4が送信されている。通信バス上に、メッセージNのID4が送信されているため、通信バス上で、複数のメッセージが重複してスケジューリングされている。この状態で、マスターノード2によるスケジューリングに従って、メッセージ2のID4が送信された場合、メッセージ2のID4は、メッセージNのID4と衝突する。また、マスターノードNによるスケジューリングにより、メッセージNのID1が送信される時間は、マスターノード1によるスケジューリングにより、通信バス上に、メッセージ1のID2が送信されている。通信バス上に、メッセージ1のID2が送信されているため、通信バス上で、複数のメッセージが重複してスケジューリングされている。この状態で、マスターノードNによるスケジューリングに従って、メッセージNのID1が送信された場合、メッセージNのID1は、メッセージ1のID2と衝突する。また、マスターノードNによるスケジューリングにより、メッセージNのID2が送信される時間は、マスターノード1によるスケジューリングにより、通信バス上に、メッセージ1のID3が送信されている。通信バス上に、メッセージ1のID3が送信されているため、通信バス上で、複数のメッセージが重複してスケジューリングされている。この状態で、マスターノードNによるスケジューリングに従って、メッセージNのID2が送信された場合、メッセージNのID2は、メッセージ1のID3と衝突する。また、マスターノードNによるスケジューリングにより、メッセージNのID3が送信される時間は、マスターノード2によるスケジューリングにより、通信バス上に、メッセージ2のID3が送信されている。通信バス上に、メッセージ2のID3が送信されているため、通信バス上で、複数のメッセージが重複してスケジューリングされている。この状態で、マスターノードNによるスケジューリングに従って、メッセージNのID3が送信された場合、メッセージNのID3は、メッセージ2のID3と衝突する。また、マスターノードNによるスケジューリングにより、メッセージNのID4が送信される時間は、メッセージが送信される時間としてスケジューリングされていない。通信バス上に、メッセージが送信されていないため、マスターノードNによるスケジューリングに従って、メッセージNのID4が送信される。以上のように、マスタースレーブ方式が採用されている通信システムに、複数のマスターノードを配置した場合には、メッセージの衝突が生じることがある。本発明は、上述の点に鑑みてなされたものであり、マルチマスタ方式の通信システムとして、マスタースレーブ方式の通信システムを動作させることを目的とする。開示の一実施例の通信ノードは、通信バスを介して接続されたスレーブノードとの間で、通信を行う通信ノードであって、スレーブノードとの間で送受信されるべきメッセージフレーム間の時間間隔を設定するメッセージフレーム時間間隔設定部と、前記通信バスを介してスレーブノードとの間で通信を行う他の通信ノードにより送受信されるべきメッセージフレームの終了を検出するメッセージフレーム終了検出部と、前記メッセージフレーム終了検出部によりメッセージフレームが終了したことが検出されてから、前記メッセージフレーム時間間隔設定部により設定されるべきメッセージフレーム間の時間間隔が経過したかどうかを判定する時間間隔経過判定部と、前記時間間隔経過判定部によりメッセージフレーム間の時間間隔が経過したと判定されるまでの間に、前記通信バスが他の通信ノードに占有されているかどうかを判定する第1のバス占有判定部と、該第1のバス占有判定部により前記通信バスが他の通信ノードに占有されていないと判定された場合に、メッセージフレームを送信する制御を行うメッセージフレーム送信制御部とを有する。開示の一実施例の通信システムは、スレーブノードと、該スレーブノードと通信バスを介して接続された通信ノードとを有する通信システムであって、通信ノードは、スレーブノードとの間で送受信されるべきメッセージフレーム間の時間間隔を設定するメッセージフレーム時間間隔設定部と、前記通信バスを介してスレーブノードとの間で通信を行う他の通信ノードにより送受信されるべきメッセージフレームの終了を検出するメッセージフレーム終了検出部と、前記メッセージフレーム終了検出部によりメッセージフレームが終了したことが検出されてから、前記メッセージフレーム時間間隔設定部により設定されるべきメッセージフレーム間の時間間隔が経過したかどうかを判定する時間間隔経過判定部と、前記時間間隔経過判定部によりメッセージフレーム間の時間間隔が経過したと判定されるまでの間に、前記通信バスが他の通信ノードに占有されているかどうかを判定する第1のバス占有判定部と、該第1のバス占有判定部により前記通信バスが他の通信ノードに占有されていないと判定された場合に、メッセージフレームを送信する制御を行うメッセージフレーム送信制御部とを有する。開示の一実施例の通信方法は、通信バスを介して接続されたスレーブノードとの間で、通信を行う通信ノードにおける通信方法であって、スレーブノードとの間で送受信されるべきメッセージフレーム間の時間間隔を設定するメッセージフレーム時間間隔設定ステップと、前記通信バスを介してスレーブノードとの間で通信を行う他の通信ノードにより送受信されるべきメッセージフレームの終了を検出するメッセージフレーム終了検出ステップと、前記メッセージフレーム終了検出ステップによりメッセージフレームが終了したことが検出されてから、前記メッセージフレーム時間間隔設定ステップにより設定されるべきメッセージフレーム間の時間間隔が経過したかどうかを判定する時間間隔経過判定ステップと、前記時間間隔経過判定ステップによりメッセージフレーム間の時間間隔が経過したと判定されるまでの間に、前記通信バスが他の通信ノードに占有されているかどうかを判定する第1のバス占有判定ステップと、該第1のバス占有判定部により前記通信バスが他の通信ノードに占有されていないと判定された場合に、メッセージフレームを送信する制御を行うメッセージフレーム送信制御ステップとを有する。開示の実施例によれば、マルチマスタ方式の通信システムとして、マスタースレーブ方式の通信システムを動作させることができる。次に、本発明を実施するための形態を、以下の実施例に基づき図面を参照しつつ説明する。なお、実施例を説明するための全図において、同一機能を有するものは同一符号を用い、繰り返しの説明は省略する。<第1の実施例><通信システム>図2は、通信システムの一実施例を示す。本通信システムは、複数の通信ノードを有する。本通信システムは、単線ネットワークであってもよい。該複数の通信ノードによりクラスタが構成されてもよい。複数の通信ノードには、マスターノード100llは、l>1の整数と、スレーブノード200mmは、m>1の整数とが含まれる。マスターノード1001-マスターノード100lは、メッセージを送信すべきタイミングを制御する。具体的には、マスターノード1001-マスターノード100lは、メッセージに含まれるヘッダーを送信すべきタイミングをスケジューリングする。該スケジューリングの際に、送信すべきメッセージのID、送信の順番、送信する時間間隔などが設定される。マスターノード1001-マスターノード100l、スレーブノード2001-スレーブノード200mは、通信バス300を介して有線接続される。マスターノード1001-マスターノード100lと、スレーブノード2001-スレーブノード200mとの間は、通信バス300を介して所定の通信プロトコルに従って通信を行う。具体的には、LINに従って通信を行う。通信バス300を流れる信号は、2つの論理レベルのどちらかの状態を有する。該2つの論理レベルの状態は、ドミナントdominantと、リセッシブrecessiveと呼ばれる。ドミナントは、グラウンド電位に近い、論理レベル0の状態である。リセッシブは、バッテリのプラス端子の電位に近い、論理レベル1の状態である。マスターノード1001-マスターノード100lは、所定のフレームフォーマットに従ってメッセージを送信する。<フレームフォーマット>図3は、マスターノード1001-マスターノード100lと、スレーブノード2001-スレーブノード200mとの間で送受信されるフレームフォーマットの一例を示す。フレームは、ヘッダーと、レスポンスを含む。ヘッダーはマスターノードから送信され、レスポンスはスレーブノードから送信される。ヘッダーには、ブレークフィールドBreakfieldと、シンクフィールドSyncfieldと、プロテクテッドアイデンティファイアーフィールドProtectedidentifierfieldとが含まれる。ブレークフィールドは、クラスタの全スレーブノードに、フレームの開始を通知するためのフィールドである。ブレークフィールドのドミナント継続時間はtBreakにより表される。例えば、該ブレークフィールドのドミナント継続時間は、13ビット長以上である。本実施例では、各マスターノードのブレークフィールドのドミナント継続時間は、固定長であり、略同一である。該ブレークフィールドのドミナント継続時間は、優先制御に使用される。シンクフィールドは、クラスタに含まれる通信ノード間のクロック誤差の補正に使用される。プロテクテッドアイデンティファイアーフィールドは、フレームの識別番号を表す6ビット0~5ビットのフレームIDと、2ビット6、7ビットのパリティの合計8ビットで構成される。レスポンスには、データフィールドDataFieldと、チェックサムChecksumが含まれる。データフィールドと、チェックサムは、UARTUniversalAsynchronousReceiver/Transmitterフレームで送信される。データフィールドは、1個であってもよいし、複数であってもよい。各データフィールドには、最大8バイトのデータを格納できる。チェックサムは、データを正確に受信できたかどうかを判断する際に使用される。具体的には、チェックサムには、各データの値の総和を反転した値が格納される。シンクフィールド長と、プロテクテッドアイデンティファイアーフィールド長と、データフィールド長の合計はtFrameSlotにより表される。具体的には、tFrameSlotは、ブレークフィールドの立ち上がりエッジrisingedgeを基点とする。以下、tFrameSlotにより表されるシンクフィールド長と、プロテクテッドアイデンティファイアーフィールド長と、データフィールド長の合計をフレームスロット長という。また、隣接するフレーム間には、フレーム間間隔Inter-framespaceが設定される。また、図3に示される例では、ジッターjitterが示される。ジッターは、時間軸方向での信号波形の揺らぎを表す。本実施例では、該ジッターを利用してバスアービトレーション制御が行われる。該ジッター長をアービトレイションインターフレームスペースAIFS:ArbitrationInterFrameSpace長以下、AIFS長というと呼ぶ。また、ブレークフィールドからチェックサムまでの時間の合計はTFrame_Maximumにより表される。具体的には、TFrame_Maximumは、ブレークフィールドの立ち上がりエッジrisingedgeを基点とする。<マスターノード>図4は、マスターノードを示す。マスターノード1001-マスターノード100lは略同一の構成であるため、代表してマスターノード100lについて説明する。マスターノード100lは、マイクロコントローラユニットMCU:Micro-ControlUnit102lと、トランシーバ106lとを有する。MCU102lには、1又は複数のマイコンが含まれる。マイコンの代わりにCPUが含まれてもよいし、MCUとCPUとが混在していてもよい。さらに、MCU102lには、通信装置104lが含まれる。通信装置104lはトランシーバ106lとの間で、シリアル通信を行う。具体的には、該通信装置104lは、UARTであってもよい。トランシーバ106lは、MCU102l、通信バス300と接続される。トランシーバ106lは、MCU102lから入力されたデータを通信バス300に送信し、通信バス300からのデータをMCU102lに入力する。<マスターノードの機能>マスターノード100lは、他のマスターノードが、メッセージ送出中である場合には、次のフレームまで待機する。具体的には、他のマスターノードにより送信されるべきメッセージに含まれるブレークフィールドの立ち上がりエッジを基点とする、フレームスロット長の経過を基点として、マスターノード100lは、送信しようとするフレームの保護識別子PID:Protectedidentifierに対応したAIFS長の計測を行う。マスターノード100lは、AIFS長が経過した場合にブレークフィールドの送出を行う。当該マスターノード100lの他にメッセージを送信しようとするマスターノードがいる場合には、当該マスターノード100lのAIFS長が先に経過した場合には、当該マスターノード100lは、ブレークフィールドの送出を行うことにより通信バスを占有できる。一方、他のマスターノードのAIFS長が先に経過した場合には、当該マスターノード100lは次のフレームまで待機する。この場合、当該マスターノード100lは、通信バス300の状態がドミナント状態になったことにより、他のマスターノードにより、通信バス300を占有されたことを検出できる。図5は、バスアービトレーションの一実施例を示す。図5に示される例では、3個のマスターノードマスターノード1001、1002、及び1003におけるバスアービトレーションの例を示す。2個の場合、4個以上のマスターノードの場合においても同様である。図5に示される例では、マスターノード1001はメッセージ送出中である。この状態で、マスターノード1002、マスターノード1003に、送信すべきデータが発生する。マスターノード1002、マスターノード1003は、マスターノード1001によりデータが送出されているので、次のフレームまで待機する。マスターノード1002、マスターノード1003は、マスターノード1001のブレークフィールドの立ち上がりを基点としたフレームスロット長が経過するまで待機する。マスターノード1002、マスターノード1003は、マスターノード1001のフレームスロット長の経過を基点として、次のフレームのPIDに対応したAIFS長を計測する。具体的には、マスターノード1002は、マスターノード1002により送信されるべき次のフレームのPIDに対応したAIFS長を計測する。マスターノード1003は、マスターノード1003により送信されるべき次のフレームのPIDに対応したAIFS長を計測する。図5には、マスターノード1002により設定されたAIFS長の方が、マスターノード1003により設定されたAIFS長よりも短い時間である例が示される。つまり、マスターノード1002により設定されたAIFS長の方が先に満了する。この場合、マスターノード1002は、ブレークフィールドを送出し、バスを占有する。図6は、マスターノード100lを示す機能ブロック図である。図6には、本実施例に関する部分について主に説明される。従って、スレーブノードとしての機能や、診断機能等については省略される。マスターノード100lは、マスター機能部110を有する。マスター機能部110は、インターフレームスペース長設定部112と、フレームスロット計測部114と、インターフレームスペース計測部116と、ブレークフィールド送信制御部118と、バスアービトレーション判定部120と、フレーム送信制御部122とを有する。MCU102lが、所定のプログラムに従って機能することにより、マスター機能部110として機能するようにしてもよい。該所定のプログラムは、MCU102lに格納されていてもよい。インターフレームスペース長設定部112は、送信すべきデータが発生し、かつ他のマスターノードにより通信バス300が占有されている場合に、機能する。インターフレームスペース設定部112は、通信バス300がドミナント状態である場合に、他のマスターノードにより通信バス300が占有されていると判定してもよい。インターフレームスペース長設定部112は、通信バス300を占有している他のマスターノードにより送信されるべきブレークフィールドの立ち上がりを基点としたフレームスロット長の経過後に計測すべきAIFS長を設定する。該AIFS長は、フレーム毎に設定されてもよいし、PID毎に設定されてもよい。<AIFS長の設定方法その1>インターフレームスペース長設定部112は、乱数を発生させることにより、AIFS長を設定するようにしてもよい。具体的には、式1に従って設定する。tAIFS=TUnit×Trunc1nPriority×Rndseed1式1において、tAIFSはAIFS長を表す。TUnitはクロック誤差及びバスの状態認識における遅延delayに基づいて、tAIFSの時間差を認識できる最小時間を表す。nPriorityは優先Priorityレベルの個数を表す。nPriorityは1以上の整数である。Trunc独立変数argumentは小数点以下切り捨てによる整数化関数を表す。Rndseedは乱数発生関数を表す。Rndseedは0以上1未満の一様分布乱数を生成する。マスターノード毎に、異なるseedを与えることにより、異なる系列の乱数を発生させる。乱数によりAIFS長を発生させることにより、通信バス300の占有権を各マスターノード間で分散させることができる。<AIFS長の設定方法その2>インターフレームスペース長設定部112は、AIFS長に、固定値を設定するようにしてもよい。具体的には、式2に従って設定する。tAIFS=TUnit×n2式2において、tAIFSはAIFS長を表す。TUnitはクロック誤差及びバスの状態認識における遅延delayに基づいて、tAIFSの時間差を認識できる最小時間を表す。nは、1、2、3、の自然数を表す。nは、PID毎に異なる値が設定されるAIFS長に、固定値を設定することにより、特定フレームに通信バスの占有権を与えることができる。インターフレームスペース長設定部112は、インターフレームスペース計測部114に、AIFS長を表す情報を入力する。フレームスロット計測部114は、トランシーバ106lと接続される。フレームスロット計測部114は、トランシーバ106lを介して、通信バス300の状態をモニターする。フレームスロット計測部114は、当該マスターノード100lに送信すべきデータが発生した際の通信バス300の状態がドミナント状態である場合、該通信バス300の状態がリセッシブ状態となるまでモニターし続ける。フレームスロット計測部114は、該通信バス300の状態がリセッシブ状態となる際に、フレームスロット長を計測するタイマー以下、フレームスロット長計測タイマーというを起動する。具体的には、フレームスロット計測部114は、通信バス300を占有する他のマスターノードによりブレークフィールドの送信が終了することにより通信バス300の状態がドミナント状態からリセッシブ状態へとなる立ち上がりのエッジが検出された際に、該フレームスロット長計測タイマーを起動する。フレームスロット計測部114は、該フレームスロット長計測タイマーが満了すると、インターフレームスペース計測部116に、フレームスロット長計測タイマーが満了したことを表す情報を入力する。インターフレームスペース計測部116は、インターフレームスペース長設定部112、フレームスロット計測部114と接続される。インターフレームスペース計測部116は、フレームスロット計測部114によりフレームスロット長計測タイマーが満了したことを表す情報が入力された際に、インターフレームスペース長設定部112により入力されるべきAIFS長を表す情報に従って、AIFS長を計測するためのタイマー以下、AIFS長計測タイマーというを起動する。インターフレームスペース計測部116は、AIFS長計測タイマーが満了した際に、ブレークフィールド送信制御部118に、AIFS長計測タイマーが満了したことを表す情報を入力する。また、インターフレームスペース計測部116は、バスアービトレーション判定部120による命令に従って、AIFS長計測タイマーを終了する。AIFS長計測タイマーを終了した場合、フレームスロット計測部114によりフレームスロット長計測タイマーが満了したことを表す情報が入力された際に、AIFS長を表す情報に従って、AIFS長計測タイマーを再度起動する。ブレークフィールド送信制御部118は、インターフレームスペース計測部116、トランシーバ106lと接続される。ブレークフィールド送信制御部118は、インターフレームスペース計測部116から入力されるべき、AIFS長計測タイマーが満了したことを表す情報に従って、ブレークフィールドを生成する。AIFS長計測タイマーが満了したことにより、他のマスターノードにより通信バス300が占有されていない判定されるためである。ブレークフィールド送信制御部118は、トランシーバ106lを介して、ブレークフィールドを送信する。ブレークフィールド送信制御部118は、バスアービトレーション判定部120に、ブレークフィールドの送信を開始したことを表す情報を入力する。また、ブレークフィールド送信制御部118は、ブレークフィールドを送信する際に、ブレークフィールドを送信すべき時間を計測するためのタイマー以下、ブレークフィールド送信時間計測タイマーというを起動する。ブレークフィールド送信制御部118は、ブレークフィールド送信時間計測タイマーが満了した場合に、ブレークフィールドの送信を終了する。ブレークフィールド送信制御部118は、ブレークフィールドの送信を終了した際に、バスアービトレーション判定部120に、ブレークフィールドの送信を終了したことを表す情報を入力する。バスアービトレーション判定部120は、ブレークフィールド送信制御部118、トランシーバ106l、インターフレームスペース計測部116と接続される。バスアービトレーション判定部120は、トランシーバ106lを介して、通信バス300をモニターする。バスアービトレーション判定部120は、当該マスターノード100lが通信バス300を占有できるかどうかを判定する。<当該マスターノードにより通信バスを占有できると判定される場合>図7は、当該マスターノード100lにより通信バス300を占有できると判定される場合のバスアービトレーション判定部120によりモニターされるべき通信バス300の状態を表す。バスアービトレーション判定部120は、ブレークフィールド送信制御部118から、ブレークフィールドの送信を開始したことを表す情報入力された場合に、当該マスターノード100lにより通信バス300を占有できると判定する。ブレークフィールド送信制御部118によりブレークフィードを送信する制御が行われたことにより通信バス300はドミナント状態に変化する。該ブレークフィールドが送信されたことにより、バスアービトレーション判定部120により通信バス300がドミナント状態に変化したことが検出される。バスアービトレーション判定部120は、ブレークフィールド送信制御部118によりブレークフィールドの送信を終了したことを表す情報が入力された際に、フレーム送信制御部122に、ブレークフィールドの送信を終了したことを表す情報を入力する。<当該マスターノードにより通信バスを占有できないと判定される場合>図8は、当該マスターノード100lにより通信バス300を占有できないと判定される場合のバスアービトレーション判定部120によりモニターされるべき通信バス300の状態を表す。バスアービトレーション判定部120は、定期的又は不定期的に、通信バス300の状態をモニターする。インターフレームスペース計測部116によりAIFS長計測タイマーが起動され、該AIFS長計測タイマーが起動中であるにもかかわらず、バスアービトレーション判定部120により、通信バス300の状態がドミナント状態に変化したことが検出された場合に、当該マスターノード100lにより通信バスを占有できないと判定する。他のマスターノードによりブレークフィールドが送信されたと判定できるためである。この場合、バスアービトレーション判定部120は、インターフレームスペース計測部116に、AIFS長計測タイマーを終了するように命令する。フレーム送信制御部122は、バスアービトレーション判定部120と接続される。フレーム送信制御部122は、バスアービトレーション判定部120から、当該マスターノード100lにより通信バスを占有できることを表す情報が入力された場合に、フレームを送信するための制御を行う。具体的には、フレーム送信制御部122は、バスアービトレーション判定部120から、ブレークフィールドの送信を終了したことを表す情報が入力された後に、ヘッダーを送信するための制御を行う。<マスターノードの動作>図9は、マスターノード100lの動作の一実施例を示す。図9には、マスターノード100lに送信すべきメッセージが発生した際に、他のマスターノードにより通信バス300が占有されている場合の例が示される。マスターノード100lは、上位から、メッセージ送信要求を受信するステップS902。該上位は、他のネットワークであってもよい。マスターノード100lは、AIFS長を設定するステップS904。つまり、インターフレームスペース長設定部112は、AIFS長を設定する。マスターノード100lは、フレームスロット長を計測するステップS906。つまり、フレームスロット計測部114は、フレームスロット長計測タイマーを起動し、通信バス300を占有している他のマスターノードにより送信されるべきブレークフィールドの立ち上がりから、フレームスロット長を計測する。マスターノード100lは、フレームスロット長計測タイマーが満了したかどうかを判定するステップS908。つまり、フレームスロット長計測部114は、フレームスロット長計測タイマーが満了したかどうかを判定する。フレームスロット長計測タイマーが満了していないと判定された場合ステップS908:NO、ステップS908に戻る。フレームスロット長計測タイマーが満了するまで継続される。フレームスロット長計測タイマーが満了していると判定された場合ステップS908:YES、マスターノード100lは、AIFS長を計測するステップS910。つまり、インターフレームスペース長計測部116は、AIFS長計測タイマーを起動し、フレームスロット長の終了を基点として、AIFS長を計測する。マスターノード100lは、AIFS長計測タイマーが満了したかどうかを判定するステップS912。つまり、インターフレームスペース計測部116は、AIFS長計測タイマーが満了したかどうかを判定する。AIFS長計測タイマーが満了したと判定された場合ステップS912:YES、マスターノード100lは、ブレークフィールドを送信するステップS914。つまり、ブレークフィールド送信制御部118は、インターフレームスペース計測部116により通知されるべきAIFS長計測タイマーが満了したことを表す情報に従って、ブレークフィールドを送信する。この場合、バスアービトレーション判定部120により当該マスターフレーム100lにより、通信バス300の占有ができると判定される。マスターノード100lは、フレームを送信するステップS916。つまり、フレーム送信制御部122は、ヘッダーを送信するための制御を行う。ステップS912により、AIFS長計測タイマーが満了したと判定されない場合ステップS912:NO、マスターノード100lは、通信バス300の状態がドミナントであるかどうかを判定するステップS918。つまり、バスアービトレーション判定部120は、通信バス300の状態をモニターし、ブレークフィールド送信制御部118によりブレークフィールドの送信を終了したことを表す情報が入力される前に、通信バス300の状態がドミナント状態となったかどうかを判定する。通信バス300の状態がドミナント状態となったと判定されない場合ステップS918:NO、ステップS912に戻る。AIFS長計測タイマーが満了するまで継続される。通信バス300の状態がドミナント状態となったと判定された場合ステップS918:NO、ステップS906に戻る。通信バス300の状態がドミナント状態となったと判定された場合には、当該マスターノード100lと同様に送信すべきメッセージが発生した他のマスターノードによりブレークフィールドが送信されたと判定される。このため、メッセージを送信するためには、次のフレームまで待機する必要がある。本実施例によれば、複数のマスターノード間で、衝突を検知して、送信を実施したり、送信を保留したりすることができる。このため、シングルタスクの通信網であっても、複数のノードをマスターノードとして利用できる。つまり、マルチタスクを実施できる。具体的には、AIFS長を制御することにより、通信バスを占有するマスターノードを決定するためのアービトレーションを実現できる。アービトレーションを実現できるため、マスタースレーブ方式の通信システムをマルチマスタ方式の通信システムとして動作させることができる。この場合、マスターノードのハードウェアの変更は必要ない。このため、コストを増加させずに、通信スケジュールの設計の自由度を向上させることができる。<第2の実施例><通信システム>本通信システムは、図2を参照して説明した通信システムと略同一である。<マスターノード>マスターノード1001-100lは、図4を参照して説明したマスターノードと略同一の構成である。<マスターノードの機能>マスターノード100lは、当該マスターノード100lに送信すべきメッセージが発生した際に、他のマスターノードにより通信バス300が占有され、メッセージ送出中である場合には、次のフレームまで待機する。具体的には、通信バス300を占有している他のマスターノードのブレークフィールドの立ち上がりを基点とするフレームスロット長の経過を基点として、マスターノード100lは、送信しようとするフレームの保護識別子PID:Protectedidentifierに対応したAIFS長の計測を行う。AIFS長の計測が終了すると、マスターノード100lは、ブレークフィールドを送信する。当該マスターノード100lの他にメッセージを送信しようとするマスターノードがいる場合には、当該マスターノード100lのブレークフィールドの送出期間が長い場合には、当該マスターノード100lは通信バス300を占有できる。一方、他のマスターノードのブレークフィールドの送出期間が長い場合には、当該マスターノード100lは次のフレームまで待機する。図10は、バスアービトレーションの一実施例を示す。図10に示される例では、3個のマスターノードマスターノード1001、1002、及び1003におけるバスアービトレーションの例を示す。2個の場合、4個以上のマスターノードの場合においても同様である。図10に示される例では、マスターノード1001はメッセージ送出中である。この状態で、マスターノード1002、マスターノード1003に、送信すべきデータが発生する。マスターノード1002、マスターノード1003は、マスターノード1001によりデータが送出されているので、次のフレームまで待機する。マスターノード1002、マスターノード1003は、マスターノード1001のブレークフィールドの立ち上がりを基点とする、フレームスロット長が経過するまで待機する。マスターノード1002、マスターノード1003は、マスターノード1001のフレームスロット長の経過を基点として、次のフレームのPIDに対応したAIFS長を計測する。具体的には、マスターノード1002は、マスターノード1002により送信されるべき次のフレームのPIDに対応したAIFS長を計測する。マスターノード1003は、マスターノード1003により送信されるべき次のフレームのPIDに対応したAIFS長を計測する。図10には、マスターノード1002により設定されたAIFS長と、マスターノード1003により設定されたAIFS長とが略同一の時間である例が示される。つまり、マスターノード1002により設定されたAIFS長の満了と、マスターノード1003により設定されたAIFS長の満了とは略同一のタイミングである。例えば、AIFS長は、上述した第1の実施例と同様の方法により設定されてもよい。この場合、送信すべきメッセージが発生したマスターノード間で、AIFS長が同じ値となる場合もある。特に、AIFS長として、固定値が設定される場合には、同じ値となる確率が高いと想定される。このような場合に、送信すべきメッセージが発生したマスターノード間で、ブレークフィールド長を異ならせることにより、バスアービトレーションを行うことができる。また、例えば、AIFS長は、固定値が設定されてもよい。該固定値は、フレームのPIDに基づいて設定された値であってもよい。AIFS長が経過したマスターノード1002、マスターノード1003は、ブレークフィールドを送出する。図10には、マスターノード1002により送出されるブレークフィールドの送信時間の方が、マスターノード1003により送信されるブレークフィールドの送信時間よりも長い時間である例が示される。この場合、マスターノード1002はバスを占有する。図11は、マスターノード100lを示す機能ブロック図である。図11には、本実施例に関する部分について主に説明される。従って、スレーブノードとしての機能や、診断機能等については省略される。マスターノード100lは、マスター機能部110を有する。マスター機能部110は、インターフレームスペース長設定部112と、フレームスロット計測部114と、インターフレームスペース計測部116と、ブレークフィールド送信制御部118と、バスアービトレーション判定部120と、フレーム送信制御部122と、ブレークフィールド長設定部124とを有する。MCU102lが、所定のプログラムに従って機能することにより、マスター機能部110として機能するようにしてもよい。該所定のプログラムは、MCU102lに格納されたものであってもよい。インターフレームスペース長設定部112、フレームスロット計測部114、インターフレームスペース計測部116、及びフレーム送信制御部122については、図6を参照して説明したマスターノード100lと同様である。ブレークフィールド長設定部124は、ブレークフィールド送信制御部118と接続される。ブレークフィールド長設定部124は、ブレークフィールド長tBreakを設定する。具体的には、ブレークフィールド長設定部124は、式3に従って、ブレークフィールド長を設定してもよい。tBreak=T13bitTUnit×Trunc1mPriority×Rndseed3式3において、tBreakはブレークフィールド長を表す。T13bitは、13ビットビット幅を表す。TUnitはクロック誤差及び通信バスの状態認識における遅延delayに基づいて、tAIFSの時間差を認識できる最小時間を表す。mPriorityは優先Priorityレベルの個数を表す。mPriorityは1以上の整数である。mPriorityの値は、存在する優先レベルの個数に一致させる必要はない。mPriorityの値を小さくすると、ブレークフィールドの衝突検出に失敗する確率が上がる。一方、mPriorityの値を大きくすることにより、ブレークフィールドの衝突解除の成功率を100に近づけることができる。Trunc独立変数argumentは小数点以下切り捨てによる整数化関数を表す。Rndseedは乱数発生関数を表す。Rndseedは0以上1未満の一様分布乱数を生成する。マスターノード毎に、異なるseedを与えることにより、異なる系列の乱数を発生させる。ブレークフィールド長設定部124は、ブレークフィールド送信制御部118に、ブレークフィールド長を表す情報を入力する。ブレークフィールド送信制御部118は、インターフレームスペース計測部116、ブレークフィールド長設定部124、トランシーバ106lと接続される。ブレークフィールド送信制御部118は、インターフレームスペース計測部116から入力されるべき、AIFS長計測タイマーが満了したことを表す情報に従って、ブレークフィールド長設定部124により入力されるべきブレークフィールド長に従って、ブレークフィールドを生成する。ブレークフィールド送信制御部118は、トランシーバ106lを介して、ブレークフィールドを送信する。ブレークフィールド送信制御部118は、バスアービトレーション判定部120に、ブレークフィールドの送信を開始したことを表す情報を入力する。また、ブレークフィールド送信制御部118は、ブレークフィールドを送信する際に、ブレークフィールド送信時間計測タイマーを起動する。ブレークフィールド送信制御部118は、ブレークフィールド送信時間計測タイマーが満了した場合に、ブレークフィールドの送信を終了する。ブレークフィールド送信制御部118は、ブレークフィールドの送信を終了した際に、バスアービトレーション判定部120に、ブレークフィールドの送信を終了したことを表す情報を入力する。バスアービトレーション判定部120は、ブレークフィールド送信制御部118、トランシーバ106l、インターフレームスペース計測部116と接続される。バスアービトレーション判定部120は、トランシーバ106lを介して、通信バス300をモニターする。バスアービトレーション判定部120は、当該マスターノード100lが通信バスを占有できるかどうかを判定する。<当該マスターノードにより通信バスを占有できると判定される場合>図12は、当該マスターノード100lにより通信バス300が占有されると判定される場合のバスアービトレーション判定部120によりモニターされるべき通信バス300の状態を表す。ブレークフィールド送信制御部118によりブレークフィードを送信する制御が行われたことにより通信バス300はドミナント状態に変化する。該ブレークフィールドが送信されたことにより、バスアービトレーション判定部120により通信バス300がドミナント状態に変化したことが検出される。バスアービトレーション判定部120は、ブレークフィールド送信制御部118によりブレークフィールドの送信を終了したことを表す情報が入力された際に、通信バス300がリセッシブ状態となったかどうかを判定する。バスアービトレーション判定部120は、ブレークフィールド送信制御部118によりブレークフィールドの送信を終了したことを表す情報が入力された際に、通信バス300がリセッシブ状態となったと判定された場合に、当該マスターノード100lにより通信バス300を占有できると判定する。この場合、バスアービトレーション判定部120は、フレーム送信制御部122に、当該マスターノード100lにより通信バス300を占有できることを表す情報を入力する。<当該マスターノードにより通信バスを占有できないと判定される場合>図13は、当該マスターノード100lにより通信バス300を占有できないと判定される場合のバスアービトレーション判定部120によりモニターされるべき通信バス300の状態を表す。ブレークフィールド送信制御部118によりブレークフィードを送信する制御が行われたことにより通信バス300はドミナント状態に変化する。該ブレークフィールドが送信されたことにより、バスアービトレーション判定部120により通信バス300がドミナント状態に変化したことが検出される。バスアービトレーション判定部120は、ブレークフィールド送信制御部118によりブレークフィールドの送信を終了したことを表す情報が入力された際に、通信バス300がリセッシブ状態となったかどうかを判定する。バスアービトレーション判定部120は、ブレークフィールド送信制御部118によりブレークフィールドの送信を終了したことを表す情報が入力された際に、通信バス300がリセッシブ状態となったと判定されない場合、つまりドミナント状態のままであると判定された場合に、当該マスターノード100lにより通信バスを占有できないと判定する。他のマスターノードにより通信バス300が占有されたと判定できるためである。この場合、バスアービトレーション判定部120は、インターフレームスペース計測部116に、AIFS長計測タイマーを終了するように命令する。<マスターノードの動作>図14は、マスターノード100lの動作の一実施例を示す。図14のステップS1402-S1410は、図9のステップS902-S910と同様であるため、説明を省略する。マスターノード100lは、AIFS長計測タイマーが満了したかどうかを判定するステップS1412。つまり、インターフレームスペース計測部116は、AIFS長計測タイマーが満了したかどうかを判定する。AIFS長計測タイマーが満了したと判定された場合ステップS1412:YES、マスターノード100lは、ブレークフィールド長を設定するステップS1414。つまり、ブレークフィールド長設定部124は、ブレークフィールド長を設定する。AIFS長計測タイマーが満了したと判定されない場合ステップS1412:NO、ステップS1412に戻る。AIFSタイマーが満了するまで継続される。マスターノード100lは、ブレークフィールド長を計測するステップS1416。つまり、ブレークフィールド送信制御部118は、ブレークフィールド長計測タイマーを起動し、ブレークフィールドの送信期間を計測する。マスターノード100lは、ブレークフィールド長計測タイマーが満了したかどうかを判定するステップS1418。つまり、ブレークフィールド送信制御部118は、ブレークフィールド長計測タイマーが満了したかどうかを判定する。ブレークフィールド長計測タイマーが満了していないと判定された場合ステップS1418:NO、ステップS1418に戻る。ブレークフィールド長計測タイマーが満了するまで継続される。ブレークフィールド長計測タイマーが満了していると判定された場合ステップS1418:YES、マスターノード100lは、通信バス300の状態がリセッシブ状態であるかどうかを判定するステップS1420。つまり、バスアービトレーション判定部120は、通信バス300の状態をモニターし、ブレークフィールド送信制御部118からブレークフィールドの送信を終了したことを表す情報が入力された際に、通信バス300の状態がリセッシブ状態となったかどうかを判定する。通信バス300の状態がリセッシブ状態となったと判定されない場合ステップS1420:NO、ステップS1406に戻る。通信バス300の状態がリセッシブ状態となったと判定されない場合には、他のマスターノードにより通信バス300が占有されたと判定できるため、メッセージを送信するには、次のフレームまで待機する必要があるからである。通信バス300の状態がドミナント状態となったと判定された場合ステップS1420:YES、マスターノード100lは、フレームを送信するステップS1422。つまり、フレーム送信制御部122は、ヘッダーを送信するための制御を行う。インターフレームスペース長を固定値に設定した場合には、優先的にバスの占有権が付与されることになり、マルチタスク化とはならない。本実施例によれば、このような場合でも、インターフレームスペース時間に続くフィールド、つまりブレークフィールドでバスの占有権を振分けることができる。このため、複数のノードをマスターノードとして利用でき、マルチタスクを実施できる。具体的には、ブレークフィールド長を制御することにより、通信バスを占有するマスターノードを決定するためのアービトレーションを実現できる。アービトレーションを実現できるため、マスタースレーブ方式の通信システムをマルチマスタ方式の通信システムとして動作させることができる。この場合、マスターノードのハードウェアの変更は必要ない。このため、コストを増加させずに、通信スケジュールの設計の自由度を向上させることができる。以上、本発明は特定の実施例及び変形例を参照しながら説明されてきたが、各実施例及び変形例は単なる例示に過ぎず、当業者は様々な変形例、修正例、代替例、置換例等を理解するであろう。説明の便宜上、本発明の実施例に従った装置は機能的なブロック図を用いて説明されたが、そのような装置はハードウェアで、ソフトウエアで又はそれらの組み合わせで実現されてもよい。本発明は上記実施例に限定されず、本発明の精神から逸脱することなく、様々な変形例、修正例、代替例、置換例等が包含される。