(57)【特許請求の範囲】
【請求項１】
Ｎ（Ｎ：２以上の整数）個の通信線中の１つに夫々が接続され、該通信線を介してデータの送受信を行う複数の通信装置にデータを送信する中継装置において、
Ｋ（Ｋ：２以上Ｎ以下の整数）個の前記通信線に接続されている全ての前記通信装置に送信禁止を示す禁止情報を送信する禁止送信部と、
前記禁止送信部による前記全ての通信装置への前記禁止情報の送信が成功して前記全ての通信装置の送信が禁止されている間に、前記Ｋ個の通信線夫々を介して前記全ての通信装置に共通のデータを送信する同時送信を行うデータ送信部と
を備えることを特徴とする中継装置。
【請求項２】
前記Ｎ個の通信線中の１つを介して特定のデータを受信するデータ受信部を備え、
前記禁止送信部は、該データ受信部が前記特定のデータを受信した場合に前記禁止情報を送信すること
を特徴とする請求項１に記載の中継装置。
【請求項３】
請求項１又は請求項２に記載の中継装置と、
該中継装置からデータを受信する複数の前記通信装置と
を備え、
該複数の通信装置夫々は、前記禁止送信部が送信した禁止情報を受信する禁止受信部を有し、該禁止受信部が前記禁止情報を受信した場合、データの送信を停止すること
を特徴とする通信システム。
【請求項４】
前記通信装置は、前記禁止受信部が禁止情報を受信してから所定期間が経過した後にデータの送信を再開すること
を特徴とする請求項３に記載の通信システム。
【請求項５】
前記中継装置は、前記Ｋ個の通信線に接続されている複数の前記通信装置に送信許可を示す許可情報を送信する許可送信部を有し、
複数の前記通信装置夫々は、前記許可送信部が送信した許可情報を受信する許可受信部を有し、該許可受信部が前記許可情報を受信した場合、データの送信を再開すること
を特徴とする請求項３に記載の通信システム。
【請求項６】
請求項１に記載の中継装置と、
該中継装置からデータを受信する複数の前記通信装置と
を備え、
前記中継装置は、前記データ送信部が前記共通のデータを送信した後に、前記Ｋ個の通信線に接続されている複数の前記通信装置に送信許可を示す許可情報を送信する許可送信部を有し、
複数の前記通信装置夫々は、
前記禁止送信部が送信した禁止情報を受信する禁止受信部と、
前記許可送信部が送信した許可情報を受信する許可受信部と
を有し、
前記禁止受信部が前記禁止情報を受信した場合にデータの送信を停止し、前記許可受信部が前記許可情報を受信した場合にデータの送信を再開すること
を特徴とする通信システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、複数の通信線中の１つに接続されている複数の通信装置にデータを送信する中継装置、及び、該中継装置を備える通信システムに関する。
【背景技術】
【０００２】
車両に搭載される通信システムとして、複数の通信線中の１つに接続されている複数の通信装置が互いに通信する通信システムが提案されている。複数の通信装置夫々は、車両に搭載された電気機器を制御するＥＣＵ(Electronic Control Unit)である。この通信システムでは、複数の通信装置間の通信によって、複数の電気機器を連動させる制御処理が実現される。
【０００３】
複数の通信装置夫々が複数の通信線中の１つに接続されている通信システムでは、複数の通信線夫々は中継装置に接続されており、中継装置が複数の通信装置間の通信を中継する。このような通信システムにおいて、例えば、２つの通信線夫々に接続されている２つの通信装置に中継装置が同時に送信すべき場合が考えられる。
【０００４】
複数の通信線夫々を介した通信において、データ毎に送信の優先度が設けられている場合、通信線ごとに通信の状況が異なっているため、中継装置が、２つの通信線夫々に接続されている２つの通信装置に同時にデータを送信することは難しい。
【０００５】
この問題を解決する通信システムとして、特許文献１は、複数の通信線夫々を介した通信において、中継装置が行うデータ送信の優先度が複数の通信装置が行うデータ送信の優先度よりも高い通信システムを開示している。この通信システムでは、中継装置が行うデータ送信の優先度が高いため、複数の通信線夫々に接続されている複数の通信装置にデータが中継装置から同時に送信される確率は高い。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開２００８−１７２３６２号公報
【発明の概要】
【発明が解決しようとする課題】
【０００７】
しかしながら、特許文献１に記載されている通信システムの中継装置がデータを送信する場合において、データ送信に用いられる通信線を介して、他のデータの送受信が実行中であるとき、中継装置は、データ送信の優先度に無関係に、他のデータの送受信の終了を待たなければならない。
【０００８】
従って、例えば、２つの通信線夫々に接続されている２つの通信装置に中継装置がデータを送信する場合において、一方の通信線が使用されており、他の通信線が使用されていないとき、中継装置は、他の通信線に接続されている通信装置にデータを先に送信してしまう。
このため、特許文献１に記載の通信システムには、中継装置は、複数の通信線夫々を介したデータの同時送信を確実に行うことができないという問題がある。
【０００９】
本発明は斯かる事情に鑑みてなされたものであり、その目的とするところは、複数の通信線夫々を介したデータの同時送信を確実に行うことができる中継装置、及び、該中継装置を備える通信システムを提供することにある。
【課題を解決するための手段】
【００１０】
本発明に係る中継装置は、Ｎ（Ｎ：２以上の整数）個の通信線中の１つに夫々が接続され、該通信線を介してデータの送受信を行う複数の通信装置にデータを送信する中継装置において、Ｋ（Ｋ：２以上Ｎ以下の整数）個の前記通信線に接続されている全ての前記通信装置に送信禁止を示す禁止情報を送信する禁止送信部と、前記禁止送信部による前記全ての通信装置への前記禁止情報の送信が成功して前記全ての通信装置の送信が禁止されている間に、前記Ｋ個の通信線夫々を介して前記全ての通信装置に共通のデータを送信する同時送信を行うデータ送信部とを備えることを特徴とする。
【００１１】
本発明にあっては、複数の通信装置夫々は、Ｎ個の通信線中の１つに接続され、通信線を介してデータの送受信を行う。これらの通信装置にデータを送信する。
例えば、Ｋ個の通信線夫々に接続されているＫ個の通信装置にデータを同時に送信する必要がある場合、事前に、Ｋ個の通信線に接続されている全ての通信装置に送信禁止を示す禁止情報を送信する。これにより、Ｋ個の通信線に接続されている全ての通信装置の送信が禁止されるので、Ｋ個の通信線夫々を介したデータの同時送信を確実に行うことが可能である。
【００１３】
また、Ｋ個の通信線に接続されている全ての通信装置が行う送信が禁止されている間に、Ｋ個の通信線夫々を介して共通のデータを送信する。これにより、Ｋ個の通信線夫々を介した共通のデータの同時受信が実現される。
【００１４】
本発明に係る中継装置は、前記Ｎ個の通信線中の１つを介して特定のデータを受信するデータ受信部を備え、前記禁止送信部は、該データ受信部が前記特定のデータを受信した場合に前記禁止情報を送信することを特徴とする。
【００１５】
本発明にあっては、Ｎ個の通信線中の１つを介して特定のデータを受信した場合、Ｋ個の通信線に接続されている複数の通信装置に禁止情報を送信する。その後、例えば、受信した特定のデータの同時送信を行う。
【００１６】
本発明に係る通信システムは、前述した中継装置と、該中継装置からデータを受信する複数の前記通信装置とを備え、該複数の通信装置夫々は、前記禁止送信部が送信した禁止情報を受信する禁止受信部を有し、該禁止受信部が前記禁止情報を受信した場合、データの送信を停止することを特徴とする。
【００１７】
本発明にあっては、複数の通信装置は中継装置からデータを受信する。複数の通信装置夫々は、中継装置から禁止情報を受信した場合、データの送信を停止する。これにより、複数の通信装置夫々の送信が禁止される。
【００１８】
本発明に係る通信システムは、前記通信装置は、前記禁止受信部が禁止情報を受信してから所定期間が経過した後にデータの送信を再開することを特徴とする。
【００１９】
本発明にあっては、通信装置は、禁止情報を受信してから所定時間が経過した後にデータの送信を再開する。これにより、簡単な構成でデータの送信を許可することが可能となる。
【００２０】
本発明に係る通信システムは、前記中継装置は、前記Ｋ個の通信線に接続されている複数の前記通信装置に送信許可を示す許可情報を送信する許可送信部を有し、複数の前記通信装置夫々は、前記許可送信部が送信した許可情報を受信する許可受信部を有し、該許可受信部が前記許可情報を受信した場合、データの送信を再開することを特徴とする。
【００２１】
本発明にあっては、中継装置は、Ｋ個の通信線に接続されている複数の通信装置に禁止情報を送信し、これらの通信装置の送信が禁止される。その後、中継装置は、Ｋ個の通信線に接続されている複数の通信装置に許可情報を送信する。Ｋ個の通信線に接続されている複数の通信装置夫々は、禁止情報を受信した場合にデータの送信を停止し、許可情報を受信した場合にデータの送信を再開する。このため、Ｋ個の通信線夫々を介したデータの送信が確実に禁止されている状態でデータの同時送信を行うことが可能となる。
【００２２】
本発明に係る通信システムは、前述した中継装置と、該中継装置からデータを受信する複数の前記通信装置とを備え、前記中継装置は、前記データ送信部が前記共通のデータを送信した後に、前記Ｋ個の通信線に接続されている複数の前記通信装置に送信許可を示す許可情報を送信する許可送信部を有し、複数の前記通信装置夫々は、前記禁止送信部が送信した禁止情報を受信する禁止受信部と、前記許可送信部が送信した許可情報を受信する許可受信部とを有し、前記禁止受信部が前記禁止情報を受信した場合にデータの送信を停止し、前記許可受信部が前記許可情報を受信した場合にデータの送信を再開することを特徴とする。
【００２３】
本発明にあっては、複数の通信装置は中継装置からデータを受信する。中継装置は、Ｋ個の通信線に接続されている複数の通信装置に禁止情報を送信する。通信装置は、禁止情報を受信した場合、データの送信を停止する。中継装置は、Ｋ個の通信線に接続されている複数の通信装置の送信が禁止されている間に、Ｋ個の通信線夫々を介して共通のデータを送信する。その後、中継装置は、送信許可を示す許可情報を、Ｋ個の通信線に接続されている複数の通信装置に送信する。これらの通信装置は、許可情報を受信した場合、データの送信を再開する。
【発明の効果】
【００２４】
本発明によれば、Ｋ個の通信線に接続されている複数の通信装置にデータの送信を禁止するため、Ｋ個の通信線夫々を介したデータの同時送信を確実に行うことができる。
【図面の簡単な説明】
【００２５】
【図１】実施の形態１における通信システムの要部構成を示すブロック図である。
【図２】メッセージの構成の説明図である。
【図３】通信装置の要部構成を示すブロック図である。
【図４】通信装置の制御部が実行する送信制御処理の手順を示すフローチャートである。
【図５】通信装置の通信部が実行する送信処理の手順を示すフローチャートである。
【図６】通信装置の通信部が実行する受信処理の手順を示すフローチャートである。
【図７】中継装置の要部構成を示すブロック図である。
【図８】メッセージ対応表の内容を示す図表である。
【図９】中継装置の制御部が実行する送信制御処理の手順を示すフローチャートである。
【図１０】中継装置の制御部が実行する送信制御処理の手順を示すフローチャートである。
【図１１】中継装置の通信部が実行する送信処理の手順を示すフローチャートである。
【図１２】中継装置の通信部が実行する受信処理の手順を示すフローチャートである。
【図１３】実施の形態２における通信装置の制御部が実行する送信制御処理の手順を示すフローチャートである。
【図１４】通信装置の通信部が実行する受信処理の手順を示すフローチャートである。
【図１５】中継装置の制御部が実行する送信制御処理の手順を示すフローチャートである。
【図１６】中継装置の制御部が実行する送信制御処理の手順を示すフローチャートである。
【発明を実施するための形態】
【００２６】
以下、本発明をその実施の形態を示す図面に基づいて詳述する。
（実施の形態１）
図１は、実施の形態１における通信システム１の要部構成を示すブロック図である。通信システム１は、車両に好適に搭載され、中継装置２、Ｎ（＝３）個の通信線３，４，５及び６つの通信装置３０，３１，４０，４１，５０，５１を備える。中継装置２は、Ｎ（＝３）個の通信線３，４，５夫々に接続されている。
【００２７】
通信線３に２つの通信装置３０，３１が各別に接続されている。通信線４に２つの通信装置４０，４１が各別に接続されている。通信線５に２つの通信装置５０，５１に接続されている。
このように、６つの通信装置３０，３１，４０，４１，５０，５１夫々はＮ（＝３）個の通信線３，４，５中の１つに接続されている。
【００２８】
６つの通信装置３０，３１，４０，４１，５０，５１夫々は、車両に搭載された図示しない電気機器を制御するＥＣＵである。６つの通信装置３０，３１，４０，４１，５０，５１は互いに通信し、通信装置３０，３１，４０，４１，５０，５１の通信によって、複数の電気機器を連動させる制御処理が実現される。中継装置２は、６つの通信装置３０，３１，４０，４１，５０，５１間の通信を中継する。
【００２９】
中継装置２及び通信装置３０，３１は通信線３を介して互いにメッセージ、所謂データフレームを送受信する。中継装置２及び通信装置４０，４１は通信線４を介して互いにメッセージを送受信する。中継装置２及び通信装置５０，５１は通信線５を介して互いにメッセージを送受信する。中継装置２は、通信線３，４，５の中で異なる通信線に接続される複数の通信装置の通信を中継する。
【００３０】
６つの通信装置３０，３１，４０，４１，５０，５１夫々は、中継装置２からメッセージを受信し、中継装置２にメッセージを送信する。中継装置２は、６つの通信装置３０，３１，４０，４１，５０，５１からメッセージを受信し、６つの通信装置３０，３１，４０，４１，５０，５１にメッセージを送信する。中継装置２は、例えば、通信装置３０が通信線３を介して送信したメッセージを、通信線４に接続されている通信装置４０と、通信線５に接続されている通信装置５０とに送信する。
【００３１】
中継装置２は、送信禁止を示すメッセージを６つの通信装置３０，３１，４０，４１，５０，５１夫々に送信する。６つの通信装置３０，３１，４０，４１，５０，５１夫々は、送信禁止を示すメッセージを受信した場合、メッセージの送信を停止する。送信禁止を示すメッセージは禁止情報に相当する。
【００３２】
通信線３，４，５夫々は、所謂ツイストペア線であり、撚り合わされた図示しない２つの導線によって構成される。また、メッセージは複数のビットのデータによって構成され、１ビットのデータは、「０」（ドミナント）又は「１」（リセッシブ）で表される。
【００３３】
通信装置３０，３１夫々は、通信線３を構成する２つの導線に電圧を印加することによって、１ビットのデータを送信する。具体的に、通信装置３０，３１夫々は、２つの導線間の電圧差が所定電圧以上の一定電圧、例えば２Ｖとなるように、２つの導線夫々に電圧を印加する。これにより、データ「０」が送信される。また、通信装置３０，３１夫々は、２つの導線間の電圧差が所定電圧未満の一定電圧、例えば、０Ｖとなるように、２つの導線夫々に電圧を印加する。これにより、データ「１」が送信される。所定電圧は例えば１Ｖである。
【００３４】
更に、通信装置３０，３１夫々は、通信線３を構成する２つの導線間の電圧差を検出することによって、１ビットのデータ「０」又は「１」を受信する。通信装置３０，３１夫々は、検出した電圧差が所定電圧以上である場合、データ「０」を受信し、検出した電圧差が所定電圧未満である場合、データ「１」を受信する。
【００３５】
データ「０」及び「１」が通信線３に同時に送信された場合、通信線３を構成する２つの導線間の電圧差は所定電圧以上となり、データ「０」が受信される。
【００３６】
通信装置４０，４１夫々は、通信装置３０，３１と同様に１ビットのデータを送受信する。通信装置３０，３１の送受信の説明において、通信線３及び通信装置３０，３１夫々を通信線４及び通信装置４０，４１に置き換えることによって、通信装置４０，４１の送受信を説明することができる。
同様に、通信装置５０，５１夫々も、通信装置３０，３１と同様に１ビットのデータを送受信する。通信装置３０，３１の送受信の説明において、通信線３及び通信装置３０，３１夫々を通信線５及び通信装置５０，５１に置き換えることによって、通信装置５０，５１の送受信を説明することができる。
【００３７】
図２はメッセージの構成の説明図である。通信線３，４，５夫々を介した通信、即ち、メッセージの送受信は、ＣＡＮ(Controller Area Network)プロトコルに従って行われる。ＣＡＮ通信で用いられるメッセージは、図２に示されているように、ＳＯＦ(Start Of Frame)、アービトレーションフィールド、コントロールフィールド、データフィールド、ＣＲＣ(Cyclic Redundancy Check)フィールド、ＡＣＫ(Acknowledge)及びＥＯＦ(End Of Frame)によって構成される。
【００３８】
ＳＯＦは１つのビットによって構成され、このビットのデータは「０」（ドミナント）である。ＳＯＦはメッセージの開始を示す。
通信線３，４，５夫々において、複数のメッセージが同時に送信された場合、アービトレーション（調停）が行われる。アービトレーションフィールドには、メッセージの種類を表すメッセージＩＤ(Identification Data)とＲＴＲ(Remote Transmission Request)ビットとが含まれる。メッセージＩＤはアービトレーションに用いられる。
【００３９】
コントロールフィールドに含まれるデータは、データフィールドの長さを示す。データフィールドはメッセージの中核をなし、データフィールドに含まれるデータは、メッセージの具体的な内容を示す。ＣＲＣフィールドは複数のビットのデータによって構成される。ＣＲＣフィールドに含まれるデータはコード及びＣＲＣ境界を示す。コードは、例えば、１５ビットのデータによって表され、ＣＲＣ境界は１ビットのデータによって表される。
【００４０】
ＡＣＫは、１ビットのデータによって構成され、メッセージが正しく受信されたか否かの確認に用いられる。ＥＯＦに含まれるデータはメッセージの終了を示す。ＥＯＦは、例えば、夫々が「１」（リセッシブ）である７ビットのデータによって構成される。
【００４１】
通信線３を介した通信で行われるアービトレーションを説明する。中継装置２及び通信装置３０，３１夫々は、メッセージのＳＯＦから順に１ビットのデータを送信する。ここで、中継装置２及び通信装置３０，３１夫々は、通信線３を構成する２つの導線間の電圧差も検出している。
【００４２】
中継装置２及び通信装置３０，３１夫々は、アービトレーションフィールドに含まれるデータを送信している間、送信したデータと、通信線３を介して送信されているデータとが一致しているか否かを判定する。前述したように、データ「０」（ドミナント）及び「１」（リセッシブ）が同時に通信線３に送信された場合、データ「０」が通信線３を介して送信される。中継装置２及び通信装置３０，３１夫々は、データ「１」を送信したにも関わらず、データ「０」が通信線３を介して送信されている場合、データの送信を停止する。このように、アービトレーションが行われる。
【００４３】
通信線３において、メッセージＩＤが同一である複数のメッセージが中継装置２及び通信装置３０，３１から送信されることはない。中継装置２及び通信装置３０，３１の中で、アービトレーションフィールドに含まれるデータの送信を完了した１つの装置が、メッセージを送信する送信権を獲得し、このメッセージの送信が終了するまで他の装置がメッセージを送信することはない。
【００４４】
通信線４，５夫々を介した通信で行われるアービトレーションも、通信線３を介した通信で行われるアービトレーションと同様に行われる。通信線３を介した通信で行われるアービトレーションの説明において、通信線３及び通信装置３０，３１を、通信線４及び通信装置４０，４１に置き換えることによって、通信線４を介した通信で行われるアービトレーションを説明することができる。同様に、通信線３を介した通信で行われるアービトレーションの説明において、通信線３及び通信装置３０，３１を、通信線５及び通信装置５０，５１に置き換えることによって、通信線５を介した通信で行われるアービトレーションを説明することができる。
【００４５】
図３は通信装置３０の要部構成を示すブロック図である。通信装置３０は、制御部６０、通信部６１、入力部６２、出力部６３、記憶部６４及びタイマ６５を有する。これらはバス６６に接続されている。通信部６１は、バス６６の他に通信線３に接続されている。
【００４６】
通信部６１は、所謂、ＣＡＮドライバであり、図示しないＣＰＵ(Central Processing Unit)を有する。通信部６１は、通信線３を介してメッセージを送信する送信処理と、通信線３を介してメッセージを受信する受信処理とを行う。受信処理において、通信部６１が受信するメッセージには、送信禁止を示すメッセージを含む。通信部６１は、受信処理において、受信したメッセージが通信線３を介したメッセージの送信禁止を示していない場合、受信したメッセージを制御部６０に通知する。通信部６１は、受信したメッセージが通信線３を介したメッセージの送信禁止を示している場合、即ち、送信禁止を示すメッセージを中継装置２から受信した場合、メッセージの送信禁止を制御部６０に通知する。通信部６１は禁止受信部として機能する。
【００４７】
入力部６２には、車両に搭載されている図示しない種々のセンサの出力結果、又は、車両に設けられている操作用のスイッチのオン／オフ等を示す信号が入力される。入力部６２は、入力された信号の内容を制御部６０に通知する。
出力部６３は、車両に搭載された電気機器に接続されており、制御部６０の指示に従って、動作を制御するための信号を電気機器に出力する。電気機器は、出力部６３から出力された信号に応じて、作動又は停止等を行う。
【００４８】
タイマ６５は、制御部６０の指示に従って、計時の開始及び終了を行う。タイマ６５が計時している計時時間は、制御部６０によって、タイマ６５から読み出される。
記憶部６４は不揮発性メモリであり、記憶部６４には制御プログラムが記憶されている。記憶部６４には、更に、通信部６１が通信線３を介して送信すべきデータが記憶される送信データ領域が設けられている。記憶部６４に記憶されている内容の読み出し及び書き込みは制御部６０によって行われる。
【００４９】
制御部６０は、記憶部６４に記憶されている制御プログラムを実行することによって種々の処理を実行する。具体的には、制御部６０は、通信部６１が受信したデータ、及び／又は、入力部６２に入力された内容に基づいて、制御信号を出力部６３に出力させ、出力部６３に接続されている電気機器の動作を制御する。
【００５０】
また、制御部６０は、入力部６２に入力された内容に応じて、通信部６１が通信線３を介して送信すべきデータを生成し、生成したデータを記憶部６４の送信データ領域に記憶する。
更に、制御部６０は、通信部６１の送信を制御する送信制御処理を実行する。
【００５１】
図４は、通信装置３０の制御部６０が実行する送信制御処理の手順を示すフローチャートである。制御部６０は送信制御処理を周期的に実行する。制御部６０は、まず、通信部６１からメッセージの送信禁止が通知されたか否かを判定する（ステップＳ１）。制御部６０は、送信禁止が通知されたと判定した場合（Ｓ１:ＹＥＳ）、タイマ６５に指示して計時を開始させ（ステップＳ２）、タイマ６５が計時している計時時間が待機時間以上であるか否かを判定する（ステップＳ３）。待機時間は、一定であり、予め記憶部６４に記憶されている。待機時間は例えば３００〜５００マイクロ秒である。
【００５２】
制御部６０は、計時時間が待機時間未満であると判定した場合（Ｓ３：ＮＯ）、ステップＳ３を再び実行し、計時時間が待機時間以上となるまで待機する。制御部６０は、計時時間が待機時間以上であると判定した場合（Ｓ３：ＹＥＳ）、タイマ６５に指示して計時を終了させる（ステップＳ４）。
【００５３】
制御部６０は、送信禁止が通知されていないと判定した場合（Ｓ１：ＮＯ）、又は、ステップＳ４を実行した後、記憶部６４の送信データ領域に送信すべきデータが記憶されているか否かを判定する（ステップＳ５）。制御部６０は、送信すべきデータが記憶されていないと判定した場合（Ｓ５：ＮＯ）、送信制御処理を終了する。この場合、制御部６０は、次の周期が到来した場合、送信制御処理を再開する。
【００５４】
制御部６０は、送信すべきデータが記憶されていると判定した場合（Ｓ５：ＹＥＳ）、記憶部６４の送信データ領域に記憶されているデータの送信を指示するデータ送信指示を通信部６１に出力する（ステップＳ６）。
通信部６１は、制御部６０からデータ送信指示が入力された場合に送信処理を実行する。通信部６１は、送信処理において、データの送信の成功及び失敗を制御部６０に通知する。
【００５５】
制御部６０は、ステップＳ６を実行した後、通信部６１からデータの送信失敗が通知されたか否かを判定する（ステップＳ７）。制御部６０は、送信失敗が通知されていないと判定した場合（ステップＳ７：ＮＯ）、通信部６１からデータの送信成功が通知されたか否かを判定する（ステップＳ８）。
【００５６】
制御部６０は、送信成功が通知されていないと判定した場合（Ｓ８：ＮＯ）、ステップＳ７を実行し、送信成功又は送信失敗が通信部６１から通知されるまで待機する。制御部６０は、送信失敗が通知された場合（Ｓ７：ＹＥＳ）、送信制御処理を終了する。この場合も、制御部６０は、次の周期が到来した場合、送信制御処理を再開する。再開した送信制御処理では、前回の送信制御処理で送信に失敗したデータが記憶部６４の送信データ領域から削除されていないため、制御部６０は、同一のデータを通信部６１に送信させる。
【００５７】
制御部６０は、送信成功が通知されたと判定した場合（Ｓ８：ＹＥＳ）、通信部６１が送信したデータを記憶部６４の送信データ領域から削除し（ステップＳ９）、送信制御処理を終了する。この場合も、制御部６０は、次の周期が到来した場合、送信制御処理を再開する。再開した送信制御処理では、前回の送信制御処理で送信に成功したデータが記憶部６４の送信データ領域から削除されているため、制御部６０は、記憶部６４の送信データ領域に記憶されている新たなデータを通信部６１に送信させる。
【００５８】
図５は、通信装置３０の通信部６１が実行する送信処理の手順を示すフローチャートである。前述したように、通信部６１は、制御部６０からデータ送信指示が入力された場合に送信処理を実行する。そして、通信部６１は、制御部６０からデータ送信指示が入力されない限り、送信処理を実行することはない。
【００５９】
通信部６１は、通信線３を介したメッセージの送信が可能であるか否かを判定する（ステップＳ１１）。通信部６１は、通信線３を介したメッセージの送信が行われているか否かに基づいて、メッセージの送信が可能であるか否かを判定する。夫々が「１」（リセッシブ）である７ビットのデータによってメッセージのＥＯＦが構成されている場合においては、通信部６１は、７ビット以上連続してデータ「１」を検出しているときに、メッセージの送信が可能であると判定する。同様の場合において、通信部６１は、７ビット以上連続してデータ「１」を検出していないときに、メッセージの送信が不可能であると判定する。夫々が「１」（リセッシブ）である７ビットのデータによってＥＯＦが構成されている場合、通信システム１において送受信されるメッセージでは、７ビット連続してデータ「１」が示されることはない。
【００６０】
通信部６１は、メッセージの送信が可能であると判定した場合（Ｓ１１：ＹＥＳ）、記憶部６４の送信データ領域に記憶されているデータがデータフィールドに含まれているメッセージを生成する（ステップＳ１２）。次に、通信部６１は、ステップＳ１２で生成したメッセージの１ビットのデータを送信する（ステップＳ１３）。送信処理では、通信部６１は、ステップＳ１３を繰り返し実行し、メッセージのＳＯＦを構成する１ビットのデータから、順次、メッセージのデータを送信する。
【００６１】
次に、通信部６１は、メッセージの送信を停止すべきか否かを判定する（ステップＳ１４）。アービトレーションの説明で述べたように、通信部６１は、データ「１」（リセッシブ）を送信したにもかかわらず、データ「０」（ドミナント）が通信線３を介して送信されていた場合、メッセージの送信を停止すべきと判定する。通信部６１は、送信したデータと、通信線３を介して送信されているデータとが一致している場合、メッセージの送信を停止すべきではないと判定する。
【００６２】
通信部６１は、メッセージの送信が不可能であると判定した場合（Ｓ１１：ＮＯ）、又は、メッセージの送信を停止すべきであると判定した場合（Ｓ１４：ＹＥＳ）、メッセージの送信失敗を制御部６０に通知し（ステップＳ１５）、送信処理を終了する。
【００６３】
通信部６１は、メッセージの送信を停止すべきではないと判定した場合（Ｓ１４：ＮＯ）、メッセージの送信権を獲得したか否かを判定する（ステップＳ１６）。アービトレーションの説明で述べたように、通信部６１は、メッセージのアービトレーションフィールドに含まれているデータの送信が完了した場合にメッセージの送信権を獲得したと判定する。通信部６１は、アービトレーションフィールドに含まれているデータの送信が完了していない場合にメッセージの送信権を獲得していないと判定する。
【００６４】
通信部６１は、メッセージの送信権を獲得していないと判定した場合（Ｓ１６：ＮＯ）、ステップＳ１３を実行し、メッセージの送信を停止すべきと判定するか、又は、メッセージの送信権を獲得したと判定するまでメッセージのデータを１ビットずつ送信する。
【００６５】
通信部６１は、メッセージの送信権を獲得したと判定した場合（Ｓ１６：ＹＥＳ）、ステップＳ１３と同様に、ステップＳ１２で生成したメッセージの１ビットのデータを送信する（ステップＳ１７）。通信部６１は、ステップＳ１３と同様に、ステップＳ１７も繰り返し実行する。ステップＳ１７で通信部６１が送信するデータは、アービトレーションフィールド以降に含まれるメッセージのデータである。
【００６６】
通信部６１は、ステップＳ１７を実行した後、メッセージの送信が完了したか否かを判定する（ステップＳ１８）。通信部６１は、メッセージの送信が完了していないと判定した場合（Ｓ１８：ＮＯ）、ステップＳ１７を実行し、メッセージの送信が完了するまでメッセージのデータを１ビットずつ送信する。通信部６１は、メッセージの送信が完了したと判定した場合（Ｓ１８：ＹＥＳ）、メッセージの送信成功を制御部６０に通知し（ステップＳ１９）、送信処理を終了する。
【００６７】
図６は通信装置３０の通信部６１が実行する受信処理の手順を示すフローチャートである。通信部６１は、メッセージのＳＯＦを検出した場合、又は、送信処理で送信を停止すべきと判定した場合に受信処理を実行する。
【００６８】
通信部６１は、メッセージの１ビットのデータを受信し（ステップＳ２１）、メッセージの受信が完了したか否かを判定する（ステップＳ２２）。通信部６１は、メッセージの受信が完了していないと判定した場合（Ｓ２２：ＮＯ）、ステップＳ２１に実行し、メッセージの受信が完了するまで、１ビットのデータを順次受信する。
【００６９】
通信部６１は、メッセージの受信が完了したと判定した場合（Ｓ２２：ＹＥＳ）、受信したメッセージが、メッセージの送信禁止を示しているか否かを判定する（ステップＳ２３）。通信部６１は、受信したメッセージが送信禁止を示していると判定した場合（Ｓ２３：ＹＥＳ）、メッセージの送信禁止を制御部６０に通知する（ステップＳ２４）。
【００７０】
通信部６１は、受信したメッセージが、メッセージの送信禁止を示していないと判定した場合（Ｓ２３：ＮＯ）、又は、ステップＳ２４を実行した後、受信処理を終了する。
【００７１】
なお、通信部６１は、受信処理で受信したメッセージが送信禁止を示していない場合、受信したメッセージ夫々について、メッセージＩＤに基づいて、通信装置３０に送信されたメッセージであるか否かを判定する。通信部６１は、通信装置３０に送信されたメッセージではないと判定した場合、このメッセージを破棄する。通信部６１は、通信装置３０に送信されたメッセージであると判定した場合、このメッセージに含まれるデータを制御部７０に通知し、制御部７０は、前述したように、通信部６１が受信したデータに基づいて、制御信号を出力部６３に出力させ、出力部６３に接続されている電気機器の動作を制御する。
【００７２】
通信装置３１，４０，４１，５０，５１夫々は、通信装置３０と同様に構成され、制御部６０、通信部６１、入力部６２、出力部６３、記憶部６４及びタイマ６５を有する。通信装置３０の構成の説明において、通信装置３０を通信装置３１に置き換えることによって、通信装置３１の構成を説明することができる。通信装置３０の構成の説明において、通信線３を通信線４に置き換え、かつ、通信装置３０を通信装置４０又は通信装置４１に置き換えることによって、通信装置４０又は通信装置４１の構成を説明することができる。通信装置３０の構成の説明において、通信線３を通信線５に置き換え、かつ、通信装置３０を通信装置５０又は通信装置５１に置き換えることによって、通信装置５０又は通信装置５１の構成を説明することができる。
【００７３】
以上のように、通信装置３０，３１，４０，４１，５０，５１夫々の通信部６１が、受信処理において、送信禁止を示すメッセージを受信した場合、制御部６０は、送信制御処理において、通信部６１が、送信禁止を示すメッセージを受信してから待機時間が経過するまで、通信部６１にデータ送信指示を出力しない。このため、通信部６１は、送信禁止を示すメッセージを受信してから待機時間が経過するまで、メッセージの送信を停止する。制御部６０は、通信部６１が、送信禁止を示すメッセージを受信してから待機時間が経過した後において、記憶部６４の送信データ領域に送信すべきデータが記憶されている場合、データ送信指示を通信部６１に出力し、通信部６１はメッセージの送信を再開する。
【００７４】
図７は中継装置２の要部構成を示すブロック図である。中継装置２は、制御部７０、Ｎ（＝３）個の通信部７１，７２，７３及び記憶部７４を有する。これらはバス７５に接続されている。通信部７１，７２，７３夫々は、バス７５の他に、通信線３，４，５に接続されている。
【００７５】
通信部７１も、通信部６１と同様に、所謂、ＣＡＮドライバであり、図示しないＣＰＵを有する。通信部７１は、通信線３を介してメッセージを送信する送信処理と、通信線３を介してメッセージを受信する受信処理とを行う。
通信部７２，７３夫々は通信部７１と同様に作用する。通信部７１の作用の説明において、通信線３及び通信部７１を通信線４及び通信部７２に置き換えることによって通信部７２の作用を説明することができる。通信部７１の作用の説明において、通信線３及び通信部７１を通信線５及び通信部７３に置き換えることによって通信部７３の作用を説明することができる。
【００７６】
記憶部７４は不揮発性メモリである。記憶部７４には制御プログラムが記憶されている。また、記憶部７４には、通信部７１，７２，７３が通信線３，４，５を介して送信すべきメッセージが記憶されている送信メッセージ領域が設けられている。通信部７１，７２，７３が受信処理で受信したメッセージは、記憶部７４の送信メッセージ領域に記憶される。記憶部７４に記憶されている内容の読み出し及び書き込みは制御部６０によって行われる。
【００７７】
制御部７０は、記憶部７４に記憶されている制御プログラムを実行することによって、通信部７１，７２，７３の送信を制御する送信制御処理を実行する。制御部７０が送信制御処理を実行するために、記憶部７４には、メッセージＩＤとメッセージの送信に用いられる通信線３，４，５との対応関係を示すメッセージ対応表が記憶されている。
【００７８】
図８はメッセージ対応表の内容を示す図表である。メッセージ対応表には、メッセージＩＤ毎に、通信線３，４，５の中でメッセージの送信に用いられる通信線が示されている。「○」はメッセージの送信に用いられることを示している。「−」はメッセージの送信に用いられないことを示している。また、通信線３，４，５の中でメッセージの送信に用いられる通信線の数が２以上である場合、メッセージの同時送信が必要であるか又は不要であるかが示されている。
【００７９】
メッセージＩＤが「Ａ１」であるメッセージについては、２つの通信線３，４がメッセージの送信に用いられ、通信線３，４夫々を介して同時にメッセージを送信することは不要である。メッセージＩＤが「Ａ２」であるメッセージについては、２つの通信線４，５がメッセージの送信に用いられ、通信線４，５夫々を介して同時にメッセージを送信することが必要である。メッセージＩＤが「Ａ３」であるメッセージについては、１つの通信線５がメッセージの送信に用いられる。
【００８０】
図９及び図１０は、中継装置２の制御部７０が実行する送信制御処理の手順を示すフローチャートである。制御部７０は送信制御処理を周期的に実行する。制御部６０は、記憶部７４の送信メッセージ領域に送信すべきメッセージが記憶されているか否かを判定する（ステップＳ３１）。制御部６０は、送信すべきメッセージが記憶されていると判定した場合（Ｓ３１：ＹＥＳ）、送信すべきメッセージのメッセージＩＤとメッセージ対応表とに基づいて、メッセージを出力する通信線を決定する（ステップＳ３２）。例えば、メッセージＩＤが「Ａ２」である場合、メッセージを出力する通信線を通信線４，５に決定する。
【００８１】
次に、制御部７０は、送信すべきメッセージのメッセージＩＤとメッセージ対応表とに基づいて、メッセージを同時に送信すべきか否かを判定する（ステップＳ３３）。制御部７０は、例えば、メッセージＩＤが「Ａ１」又は「Ａ３」である場合、メッセージを同時に送信すべきではないと判定する。制御部７０は、例えば、メッセージＩＤが「Ａ２」である場合、メッセージを同時に送信すべきであると判定する。
【００８２】
制御部７０は、メッセージを同時に送信すべきではないと判定した場合（Ｓ３３：ＮＯ）、記憶部７４の送信メッセージ領域に記憶されているメッセージの送信を指示するメッセージ送信指示を、ステップＳ３２で決定した通信線に接続されている通信部に出力する（ステップＳ３４）。制御部７０は、例えば、ステップＳ３２でメッセージの送信に用いる通信線を通信線５に決定した場合、通信部７３にメッセージ送信指示を出力する。
【００８３】
通信部７１，７２，７３夫々は、制御部７０からメッセージ送信指示が入力された場合に送信処理を実行する。通信部７１，７２，７３夫々は、送信処理において、メッセージの送信の成功及び失敗を制御部７０に通知する。
【００８４】
制御部７０は、通信部７１，７２，７３の中でメッセージの送信処理を実行している通信部の少なくとも１つから送信失敗が通知されたか否かを判定する（ステップＳ３５）。制御部７０は、送信処理を実行している通信部の少なくとも１つから送信失敗が通知されたと判定した場合（Ｓ３５：ＹＥＳ）、メッセージ送信指示を、通信部７１，７２，７３の中で送信失敗を通知した通信部に出力する（ステップＳ３６）。その後、制御部７０は再びステップＳ３５を実行する。
【００８５】
制御部７０は、送信失敗が通知されていない場合（Ｓ３５：ＮＯ）、通信部７１，７２，７３の中でメッセージの送信処理を実行している全ての通信部から送信成功が通知されたか否かを判定する（ステップＳ３７）。制御部７０は、全ての通信部から送信成功が通知されていないと判定した場合（Ｓ３７：ＮＯ）、ステップＳ３５を実行し、メッセージの送信が成功するまで、メッセージ送信指示の出力、又は、待機を行い続ける。
【００８６】
制御部７０は、送信成功が通知された場合（Ｓ３７：ＹＥＳ）、送信されたメッセージを記憶部７４の送信メッセージ領域から削除する（ステップＳ３８）。制御部７０は、送信すべきメッセージが記憶されていないと判定した場合（Ｓ３１：ＮＯ）、又は、ステップＳ３８を実行した後、送信制御処理を終了する。制御部７０は、次の周期が到来した場合、送信制御処理を再開する。
【００８７】
制御部７０は、メッセージを同時に送信すべきであると判定した場合（Ｓ３３：ＹＥＳ）、送信禁止を示すメッセージの送信を指示する禁止送信指示を、ステップＳ３２で決定した通信線夫々に接続されている通信部に出力する（ステップＳ３９）。制御部７０は、例えば、ステップＳ３２でメッセージの送信に用いる通信線を２つの通信線４，５に決定した場合、通信部７２，７３に禁止送信指示を出力する。
メッセージを同時に送信すべきである場合、当然のことながら、ステップＳ３２で決定される通信線の数は、Ｋ（Ｋ：２以上Ｎ以下の整数）個である。従って、ステップＳ３９では、制御部７０は、禁止送信指示をステップＳ３２で決定したＫ個の通信線夫々に接続されているＫ個の通信部に出力する。
【００８８】
通信部７１，７２，７３夫々は、制御部７０から禁止送信指示が入力された場合も送信処理を実行する。通信部７１，７２，７３夫々は、送信処理において、送信禁止を示すメッセージの送信の成功及び失敗を制御部７０に通知する。
【００８９】
制御部７０は、通信部７１，７２，７３の中で、送信禁止を示すメッセージの送信処理を実行しているＫ個の通信部の少なくとも１つから送信失敗が通知されたか否かを判定する（ステップＳ４０）。制御部７０は、Ｋ個の通信部の少なくとも１つから送信失敗が通知されたと判定した場合（Ｓ４０：ＹＥＳ）、禁止送信指示を、通信部７１，７２，７３の中で送信失敗を通知した通信部に出力する（ステップＳ４１）。その後、制御部７０は再びステップＳ４０を実行する。
【００９０】
制御部７０は、通信部７１，７２，７３の中で、送信禁止を示すメッセージの送信処理を実行しているＫ個の通信部のいずれからも送信失敗が通知されていない場合（Ｓ４０：ＮＯ）、通信部７１，７２，７３の中で、送信禁止を示すメッセージの送信処理を実行しているＫ個の通信部の全てから送信成功が通知されたか否かを判定する（ステップＳ４２）。制御部７０は、送信禁止を示すメッセージの送信処理を実行しているＫ個の通信部の全てから送信成功が通知されていないと判定した場合（Ｓ４２：ＮＯ）、ステップＳ４０を実行し、送信禁止を示す全てのメッセージの送信が成功するまで、禁止送信指示の出力、又は、待機を行い続ける。
【００９１】
制御部７０は、送信禁止を示すメッセージの送信処理を実行しているＫ個の通信部の全てから送信成功が通知されたと判定した場合（Ｓ４２：ＹＥＳ）、ステップＳ３４と同様に、記憶部７４の送信メッセージ領域に記憶されているメッセージの送信を指示するメッセージ送信指示を、ステップＳ３２で決定したＫ個の通信線夫々に接続されているＫ個の通信部に出力する（ステップＳ４３）。
【００９２】
ステップＳ４３でメッセージ送信指示を出力するＫ個の通信部は、ステップＳ３９で禁止送信指示を出力したＫ個の通信部である。このため、ステップＳ４３でメッセージ送信指示を出力したＫ個の通信部夫々に接続しているＫ個の通信線を介して、メッセージは送信されていない。従って、ステップＳ４３でメッセージ送信指示を出力されたＫ個の通信部夫々はメッセージの送信失敗を制御部７０に通知することはない。
【００９３】
制御部７０は、ステップＳ４３を実行した後、通信部７１，７２，７３の中で、記憶部７４の送信メッセージ領域に記憶されているメッセージの送信処理を実行しているＫ個の通信部の全てから送信成功が通知されたか否かを判定する（ステップＳ４４）。制御部７０は、メッセージの送信処理を実行しているＫ個の通信部の全てから送信成功が通知されていないと判定した場合（Ｓ４４：ＮＯ）、ステップＳ４４を再び実行し、メッセージの送信処理を実行しているＫ個の通信部の全てから送信成功が通知されるまで待機する。
【００９４】
制御部７０は、メッセージの送信処理を実行しているＫ個の通信部の全てから送信成功が通知されたと判定した場合（Ｓ４４：ＹＥＳ）、送信されたメッセージを記憶部７４の送信メッセージ領域から削除し（ステップＳ４５）、送信制御処理を終了する。その後、制御部７０は、次の周期が到来した場合、送信制御処理を再開する。
【００９５】
図１１は、中継装置２の通信部７１が実行する送信処理の手順を示すフローチャートである。前述したように、通信部７１は、制御部７０からメッセージ送信指示又は禁止送信指示が入力された場合に送信処理を実行する。
通信部７２，７３は通信部７１と同様の送信処理を実行する。通信部７１が実行する送信処理の説明において、通信線３、通信装置３０及び通信部７１夫々を通信線４、通信装置４０及び通信部７２に置き換えることによって通信部７２が実行する送信処理を説明することができる。通信部７１が実行する送信処理の説明において、通信線３、通信装置３０及び通信部７１夫々を通信線５、通信装置５０及び通信部７３に置き換えることによって通信部７３が実行する送信処理を説明することができる。
【００９６】
通信部７１は、通信装置３０の通信部６１が実行する送信処理のステップＳ１１と同様に、通信線３を介したメッセージの送信が可能であるか否かを判定する（ステップＳ５１）。通信部７１は、メッセージの送信が可能であると判定した場合（Ｓ５１：ＹＥＳ）、メッセージの１ビットのデータを送信する（ステップＳ５２）。メッセージ送信指示が入力された通信部７１が実行する送信処理のステップＳ５２では、通信部７１は、記憶部７４の送信メッセージ領域に記憶されているメッセージの１ビットのデータを送信する。禁止送信指示が入力された通信部７１が実行する送信処理のステップＳ５２では、通信部７１は、送信禁止を示すメッセージの１ビットのデータを送信する。
【００９７】
次に、通信部７１は、通信装置３０の通信部６１が実行する送信処理のステップＳ１４と同様に、メッセージの送信を停止すべきか否かを判定する（ステップＳ５３）。通信部６１は、メッセージの送信が不可能であると判定した場合（Ｓ５１：ＮＯ）、又は、メッセージの送信を停止すべきであると判定した場合（Ｓ５３：ＹＥＳ）、メッセージの送信失敗を制御部７０に通知し（ステップＳ５４）、送信処理を終了する。
【００９８】
通信部７１は、メッセージの送信を停止すべきではないと判定した場合（Ｓ５３：ＮＯ）、通信装置３０の通信部６１が実行する送信処理のステップＳ１６と同様に、メッセージの送信権を獲得したか否かを判定する（ステップＳ５５）。通信部７１は、メッセージの送信権を獲得していないと判定した場合（Ｓ５５：ＮＯ）、ステップＳ５２を実行し、メッセージの送信を停止すべきと判定するか、又は、メッセージの送信権を獲得したと判定するまでメッセージのデータを１ビットずつ送信する。
【００９９】
通信部７１は、メッセージの送信権を獲得したと判定した場合（Ｓ５５：ＹＥＳ）、ステップＳ５２と同様に、メッセージの１ビットのデータを送信する（ステップＳ５６）。通信部７１は、ステップＳ５２と同様に、ステップＳ５６も繰り返し実行する。ステップＳ５６で通信部７１が送信するデータは、アービトレーションフィールド以降に含まれるメッセージのデータである。
【０１００】
通信部７１は、ステップＳ５６を実行した後、メッセージの送信が完了したか否かを判定する（ステップＳ５７）。通信部７１は、メッセージの送信が完了していないと判定した場合（Ｓ５７：ＮＯ）、ステップＳ５６を実行し、メッセージの送信が完了するまでメッセージのデータを１ビットずつ送信する。通信部７１は、メッセージの送信が完了したと判定した場合（Ｓ５７：ＹＥＳ）、メッセージの送信成功を制御部７０に通知し（ステップＳ５８）、送信処理を終了する。
【０１０１】
図１２は、中継装置２の通信部７１が実行する受信処理の手順を示すフローチャートである。通信部７１は、メッセージのＳＯＦを検出した場合、又は、送信処理で送信を停止すべきと判定した場合に受信処理を実行する。
通信部７２，７３は通信部７１と同様の受信処理を実行する。通信部７１が実行する受信処理の説明において、通信部７１を通信部７２に置き換えることによって通信部７２が実行する受信処理を説明することができる。通信部７１が実行する受信処理の説明において、通信部７１を通信部７３に置き換えることによって通信部７３が実行する受信処理を説明することができる。
【０１０２】
通信部７１は、メッセージの１ビットのデータを受信し（ステップＳ６１）、メッセージの受信が完了したか否かを判定する（ステップＳ６２）。通信部６１は、メッセージの受信が完了していないと判定した場合（Ｓ６２：ＮＯ）、ステップＳ６１に実行し、メッセージの受信が完了するまで、１ビットのデータを順次受信する。
【０１０３】
通信部７１は、メッセージの受信が完了したと判定した場合（Ｓ６２：ＹＥＳ）、受信処理を終了する。
なお、通信部７１は、受信処理で受信したメッセージ夫々について、メッセージＩＤに基づいて、中継装置２に送信されたメッセージであるか否かを判定する。通信部７１は、中継装置２に送信されたメッセージではないと判定した場合、このメッセージを破棄する。通信部７１は、中継装置２に送信されたメッセージであると判定した場合、このメッセージを記憶部７４の送信メッセージ領域に記憶する。
【０１０４】
以上のように、中継装置２の通信部７１，７２，７３中の少なくとも２つは、Ｎ（＝３）個の通信線３，４，５中のＫ個の通信線を介してメッセージの同時送信を行う場合、該Ｋ個の通信線に接続されている通信装置の通信部６１に、送信禁止を示すメッセージを送信して、これらの通信装置が行うメッセージの送信を禁止する。例えば、通信部７２，７３は、２つの通信線４，５を介してメッセージの同時送信を行う場合、通信装置４０，４１，５０，５１夫々の通信部６１に、送信禁止を示すメッセージを送信して、通信装置４０，４１，５０，５１の通信部６１が行うメッセージの送信を禁止する。
通信部７１，７２，７３夫々は禁止送信部として機能する。
【０１０５】
従って、例えば、中継装置２の通信部７２，７３が通信装置４０，５０にメッセージＩＤが「Ａ２」であるメッセージを同時に送信する必要がある場合、事前に、２つの通信線３，４に接続されている４つの通信装置４０，４１，５０，５１の通信部６１に、送信禁止を示すメッセージを送信する。これにより、２つの通信線３，４に接続されている４つの通信装置４０，４１，５０，５１夫々の送信が禁止されるので、通信部７２，７３は、２つの通信線４，５を介してメッセージの同時送信を確実に行うことができる。この例では、データの送受信が禁止される通信線の数Ｋは２である。
【０１０６】
中継装置２の通信部７１，７２，７３中の少なくとも２つは、Ｋ個の通信線夫々に接続されている通信装置のメッセージの送信が禁止されている間に、Ｋ個の通信線夫々を介して共通のメッセージを送信する。例えば、メッセージＩＤが「Ａ２」である場合、中継装置２の通信部７２，７３は、２つの通信線４，５夫々に接続されている通信装置４０，４１，５０，５１のメッセージの送信が禁止されている間に、２つの通信線４，５夫々を介して、メッセージＩＤが「Ａ２」である共通のメッセージを送信する。これにより、例えば、通信装置４０，５０において、２つの通信線４，５夫々を介した共通のメッセージの同時受信が実現される。この例でも、データの送受信が禁止される通信線の数Ｋは２である。
通信部７１，７２，７３夫々はデータ送信部としても機能する。
【０１０７】
前述したように、通信装置３０，３１，４０，４１，５０，５１夫々の通信部６１は、送信禁止を示すメッセージを受信してから待機時間が経過した後、メッセージの送信を再開する。
これにより、通信装置３０，３１，４０，４１，５０，５１夫々において、簡単な構成でメッセージの送信を許可することができる。
【０１０８】
中継装置２の通信部７１，７２，７３夫々は、Ｎ（＝３）個の通信線３，４，５中の１つを介して、特定のメッセージ、具体的には、同時送信が必要とされるメッセージを受信する。通信部７１，７２，７３中の１つが特定のメッセージを受信した場合に、通信部７１，７２，７３中の少なくとも２つは、送信禁止を示すメッセージを送信して、メッセージの送信を禁止する。例えば、通信部７１によって、メッセージＩＤが「Ａ２」であるメッセージが受信された場合、通信部７２，７３は、送信禁止を示すメッセージを、通信線４，５を介して送信し、通信装置４０，４１，５０，５１のメッセージの送信を禁止する。その後、メッセージＩＤが「Ａ２」であるメッセージの同時送信が行われる。通信部７１，７２，７３夫々はデータ受信部としても機能する。
【０１０９】
（実施の形態２）
実施の形態１においては、通信装置３０，３１，４０，４１，５０，５１夫々の通信部６１は、送信禁止を示すメッセージを受信してから待機時間が経過した後、メッセージの送信を再開する。しかしながら、通信部６１がメッセージの送信を再開するタイミングは、送信禁止を示すメッセージを受信してから待機時間が経過した場合に限定されない。通信部６１は、中継装置２の通信部７１，７２，７３中の１つから送信許可を示すメッセージを受信した場合に、メッセージの送信を再開してもよい。
【０１１０】
以下では、実施の形態２について実施の形態１と異なる点を説明する。後述する構成を除く他の構成については実施の形態１と同様であるため、同様の符号を付してその詳細な説明を省略する。送信許可を示すメッセージは許可情報に相当する。
【０１１１】
実施の形態２における通信システム１は、実施の形態１における通信システム１と同様に構成されている。実施の形態２における通信システム１に関して、通信装置３０，３１，４０，４１，５０，５１夫々の制御部６０が実行する送信制御処理と、通信装置３０，３１，４０，４１，５０，５１夫々の通信部６１が実行する受信処理と、中継装置２の制御部７０が実行する送信制御処理とが実施の形態１と異なる。通信装置３０，３１，４０，４１，５０，５１夫々の通信部６１は、受信処理において、受信したメッセージが、メッセージの送信許可を示している場合、メッセージの送信許可を制御部６０に通知する。
【０１１２】
図１３は、実施の形態２における通信装置３０の制御部６０が実行する送信制御処理の手順を示すフローチャートである。制御部６０は、実施の形態１と同様に、送信制御処理を周期的に実行する。実施の形態２における制御部６０が実行する送信制御処理のステップＳ７１，Ｓ７３〜Ｓ７７は、実施の形態１における制御部６０が実行する送信制御処理のステップＳ１，Ｓ５〜Ｓ９と同様である。このため、ステップＳ７１，Ｓ７３〜Ｓ７７の詳細な説明を省略する。
【０１１３】
制御部６０は、通信部６１からメッセージの送信禁止が通知されたと判定した場合（Ｓ７１：ＹＥＳ）、通信部６１からメッセージの送信許可が通知されたか否かを判定する（ステップＳ７２）。制御部６０は、送信許可が通知されていないと判定した場合（Ｓ７２：ＮＯ）、ステップＳ７２を実行し、通信部６１からメッセージの送信許可が通知されるまで待機する。制御部６０は、メッセージの送信禁止が通知されていないと判定した場合（Ｓ７１：ＮＯ）、又は、メッセージの送信許可が通知されたと判定した場合（Ｓ７２：ＹＥＳ）、ステップＳ７３を実行する。
【０１１４】
図１４は通信装置３０の通信部６１が実行する受信処理の手順を示すフローチャートである。実施の形態２における通信部６１も、実施の形態１と同様に、メッセージのＳＯＦを検出した場合、又は送信処理で送信を停止すべきと判定した場合に受信処理を実行する。実施の形態２における通信部６１が実行する受信処理のステップＳ８１〜Ｓ８４は、実施の形態１における通信部６１が実行する受信処理のステップＳ２１〜Ｓ２４と同様である。このため、ステップＳ８１〜Ｓ８４の詳細な説明を省略する。
【０１１５】
通信部６１は、受信したメッセージが、メッセージの送信禁止を示していないと判定した場合（Ｓ８３：ＮＯ）、受信したメッセージが、メッセージの送信許可を示しているか否かを判定する（ステップＳ８５）。通信部６１は、受信したメッセージが、メッセージの送信許可を示していると判定した場合（Ｓ８５：ＹＥＳ）、メッセージの送信許可を制御部６０に通知する（ステップＳ８６）。
【０１１６】
通信部６１は、受信したメッセージが、ステップＳ８４，Ｓ８６のいずれか一方を実行した後、又は、メッセージの送信許可を示していないと判定した場合（Ｓ８５：ＮＯ）、受信処理を終了する。
【０１１７】
なお、実施の形態２においても、通信部６１は、受信処理で受信したメッセージが送信禁止又は送信許可を示していない場合、受信したメッセージ夫々について、メッセージＩＤに基づいて、通信装置３０に送信されたメッセージであるか否かを判定する。通信部６１は、通信装置３０に送信されたメッセージではないと判定した場合、このメッセージを破棄する。通信部６１は、通信装置３０に送信されたメッセージであると判定した場合、このメッセージに含まれるデータを制御部７０に通知し、制御部７０は、通信部６１が受信したデータに基づいて、制御信号を出力部６３に出力させ、出力部６３に接続されている電気機器の動作を制御する。
【０１１８】
実施の形態２においても、通信装置３１，４０，４１，５０，５１夫々は、通信装置３０と同様に構成される。通信装置３０の構成の説明において、通信装置３０を通信装置３１に置き換えることによって、通信装置３１の構成を説明することができる。通信装置３０の構成の説明において、通信線３を通信線４に置き換え、かつ、通信装置３０を通信装置４０又は通信装置４１に置き換えることによって、通信装置４０又は通信装置４１の構成を説明することができる。通信装置３０の構成の説明において、通信線３を通信線５に置き換え、かつ、通信装置３０を通信装置５０又は通信装置５１に置き換えることによって、通信装置５０又は通信装置５１の構成を説明することができる。
【０１１９】
以上のように、通信装置３０，３１，４０，４１，５０，５１夫々の通信部６１は、送信許可を示すメッセージを中継装置２から受信する。受信処理において通信部６１が、送信禁止を示すメッセージを受信した場合、制御部６０は、送信制御処理において、通信部６１が、送信許可を示すメッセージを受信するまで、通信部６１にデータ送信指示を出力しない。このため、通信部６１は、送信禁止を示すメッセージを受信してから送信許可を示すメッセージを受信するまで、メッセージの送信を停止する。制御部６０は、通信部６１が、送信許可を示すメッセージを受信した場合において、記憶部６４の送信データ領域に送信すべきデータが記憶されているとき、データ送信指示を通信部６１に出力し、通信部６１はメッセージの送信を再開する。通信部６１は許可受信部としても機能する。
【０１２０】
図１５及び図１６は、中継装置２の制御部７０が実行する送信制御処理の手順を示すフローチャートである。制御部７０は、実施の形態２と同様に、送信制御処理を周期的に実行する。実施の形態２における制御部７０が実行する送信制御処理のステップＳ９１〜Ｓ１０５は、実施の形態１における制御部７０が実行する送信制御処理のステップＳ３１〜Ｓ４５と同様である。このため、ステップＳ９１〜Ｓ１０５の詳細な説明を省略する。
【０１２１】
制御部７０は、ステップＳ１０５を実行した後、送信許可を示すメッセージの送信を指示する許可送信指示を、ステップＳ９２で決定したＫ個の通信線夫々に接続されているＫ個の通信部に出力する（ステップＳ１０６）。制御部７０は、例えば、ステップＳ９２でメッセージの送信に用いるＫ個の通信線を通信線４，５に決定した場合、通信部７２，７３に許可送信指示を出力する。
【０１２２】
通信部７１，７２，７３夫々は、制御部７０から許可送信指示が入力された場合も送信処理を実行する。通信部７１，７２，７３夫々は、送信処理において、送信許可を示すメッセージの送信の成功及び失敗を制御部７０に通知する。
【０１２３】
制御部７０は、通信部７１，７２，７３の中で、送信許可を示すメッセージの送信処理を実行しているＫ個の通信部の少なくとも１つから送信失敗が通知されたか否か判定する（ステップＳ１０７）。制御部７０は、複数の通信部の少なくとも１つから送信失敗が通知されたと判定した場合（Ｓ１０７：ＹＥＳ）、許可送信指示を、通信部７１，７２，７３の中で送信失敗を通知した通信部に出力する（ステップＳ１０８）。その後、制御部７０は再びステップＳ１０７を実行する。
【０１２４】
制御部７０は、通信部７１，７２，７３の中で、送信許可を示すメッセージの送信処理を実行しているＫ個の通信部のいずれからも送信失敗が通知されていない場合（Ｓ１０７：ＮＯ）、通信部７１，７２，７３の中で、送信許可を示すメッセージの送信処理を実行しているＫ個の通信部の全てから送信成功が通知されたか否かを判定する（ステップＳ１０９）。制御部７０は、送信許可を示すメッセージの送信処理を実行しているＫ個の通信部の全てから送信成功が通知されていないと判定した場合（Ｓ１０９：ＮＯ）、ステップＳ１０７を実行し、送信許可を示す全てのメッセージの送信が成功するまで、許可送信指示の出力、又は、待機を行い続ける。
【０１２５】
制御部７０は、送信許可を示すメッセージの送信処理を実行しているＫ個の通信部の全てから送信成功が通知されたと判定した場合（Ｓ１０９：ＹＥＳ）、送信制御処理を終了する。その後、制御部７０は、次の周期が到来した場合、送信制御処理を再開する。
【０１２６】
通信部７１，７２，７３夫々は、制御部７０からメッセージの送信指示、禁止送信指示又は許可送信指示が入力された場合に実施の形態１と同様の送信処理を実行する。送信処理では、通信部７１，７２，７３夫々は、実施の形態２と同様に、メッセージ送信指示が入力されている場合、記憶部７４の送信メッセージ領域に記憶されているメッセージを送信し、禁止送信指示が入力されている場合、送信禁止を示すメッセージを送信する。実施の形態２では、通信部７１，７２，７３夫々は、更に、許可送信指示が入力されている場合、送信許可を示すメッセージを送信する。
【０１２７】
以上のように、中継装置２の通信部７１，７２，７３中の少なくとも２つは、Ｎ（＝３）個の通信線３，４，５中のＫ個の通信線を介してメッセージの同時送信を行う場合、該Ｋ個の通信線に接続されている通信装置の通信部６１に、送信禁止を示すメッセージを送信して、これらの通信装置の通信部６１が行うメッセージの送信を禁止した後、Ｋ個の通信線を介して共通のメッセージを送信する。通信部７１，７２，７３中の少なくとも２つは、共通のメッセージを送信した後、Ｋ個の通信線に接続されている通信装置の通信部６１に、送信許可を示すメッセージを送信して、これらの通信装置が行うメッセージの送信を許可する。例えば、通信部７２，７３は、２つの通信線４，５を介して通信部７２，７３がメッセージの同時送信を行う場合、通信装置４０，４１，５０，５１夫々の通信部６１に、送信禁止を示すメッセージを送信して、通信装置４０，４１，５０，５１の通信部６１が行うメッセージの送信を禁止した後、２つの通信線４，５を介して共通のメッセージを送信する。通信部７２，７３は、共通のメッセージを送信した後、２つの通信線４，５に接続されている通信装置４０，４１，５０，５１夫々の通信部６１に、送信許可を示すメッセージを送信して、通信装置４０，４１，５０，５１の通信部６１が行うメッセージの送信を許可する。
通信部７１，７２，７３夫々は許可送信部として機能する。
【０１２８】
通信装置３０，３１，４０，４１，５０，５１の通信部６１は、送信禁止を示すメッセージを受信した場合にメッセージの送信を停止し、送信許可を示すメッセージを受信した場合にメッセージの送信を再開する。例えば、通信装置３０の通信部６１は、中継装置２の通信部７１から、送信禁止を示すメッセージを受信した場合にメッセージの送信を停止し、送信許可を示すメッセージを受信した場合に、通信線３を介してメッセージの送信を再開する。
【０１２９】
通信装置３０，３１，４０，４１，５０，５１夫々の通信部６１は、送信禁止を示すメッセージを受信してから、送信許可を示すメッセージを受信するまで、メッセージの送信を再開することはない。このため、例えば、中継装置２の通信部７２，７３は、２つの通信線３，４夫々を介したデータの送信が確実に禁止されている状態でメッセージの同時送信を行うことができる。この例では、データの送受信が禁止される通信線の数Ｋは２である。
【０１３０】
実施の形態２において、通信装置３０，３１，４０，４１，５０，５１夫々の通信部６１がメッセージの送信を再開する構成を除く他の構成は、実施の形態１と同様である。このため、実施の形態２における通信システム１は、実施の形態１における通信システム１が奏する効果の中で、送信禁止を示すメッセージを受信してから待機時間が経過した後にメッセージの送信を再開する構成によって得られる効果を除く他の効果を奏する。
【０１３１】
なお、実施の形態１，２において、中継装置２の通信部７１，７２，７３中の複数の通信部は、メッセージの同時送信を行う場合に、送信されるメッセージは、通信部７１，７２，７３中の１つが受信したメッセージに限定されない。
【０１３２】
また、中継装置２の通信部７１，７２，７３中の複数の通信部は、同時送信を行う場合に、相互に異なるメッセージを送信してもよい。例えば、中継装置２の通信部７２，７３夫々は、通信装置４０，４１，５０，５１が行うメッセージの送信を禁止している間に、２つの通信線４，５夫々を介して、相互に異なるメッセージを送信してもよい。例えば、通信装置４０，５０が同時に受信する必要があるメッセージは同一であるとは限らない。
【０１３３】
また、中継装置２には、外部装置、例えばダイアグツールが着脱可能に接続されていてもよい。この場合、中継装置２は、外部装置から特定のメッセージを受信したときに、Ｎ（＝３）個の通信線３，４，５中の複数の通信線を介してメッセージの同時送信を行ってもよい。
【０１３４】
更に、中継装置２に接続されている通信線の数Ｎは、３に限定されず、２又は４以上の整数であってもよい。更に、メッセージの同時送信が行われる通信線の数Ｋは２に限定されず、２以上Ｎ以下であればよい。通信システム１が備える通信装置の数は６に限定されず、２以上５以下、又は、７以上であってもよい。更に、１つの通信線に接続することができる通信装置の数も２つに限定されず、１又は３以上であってもよい。
【０１３５】
また、通信システム１において、電気機器の動作の制御を行う通信装置の代わりに、電気機器の動作の制御を行わない通信装置を用いてもよい。通信線を介した通信で用いられるプロトコルは、ＣＡＮプロトコルに限定されず、例えば、ＣＡＮ＿ＦＤ(Controller Area Network with Flexible Data Rate)プロトコルであってもよい。この場合、メッセージの構成において、データフィールドの送信速度は、他の部分の送信速度よりも速く、例えば、他の部分の送信速度の４倍である。
【０１３６】
開示された実施の形態１，２は、全ての点で例示であって制限的なものではないと考えられるべきである。本発明の範囲は上述の説明ではなく特許請求の範囲によって示され、特許請求の範囲と均等の意味及び範囲内での全ての変更が含まれることが意図される。
【符号の説明】
【０１３７】
１  通信システム
２  中継装置
３，４，５  通信線
３０，３１，４０，４１，５０，５１  通信装置
６１  通信部（禁止受信部、許可受信部）
７１，７２，７３  通信部（禁止送信部、許可送信部、データ送信部、データ受信部）
【図１】
0006471613.tif 000002
【図２】
0006471613.tif 000003
【図３】
0006471613.tif 000004
【図４】
0006471613.tif 000005
【図５】
0006471613.tif 000006
【図６】
0006471613.tif 000007
【図７】
0006471613.tif 000008
【図８】
0006471613.tif 000009
【図９】
0006471613.tif 000010
【図１０】
0006471613.tif 000011
【図１１】
0006471613.tif 000012
【図１２】
0006471613.tif 000013
【図１３】
0006471613.tif 000014
【図１４】
0006471613.tif 000015
【図１５】
0006471613.tif 000016
【図１６】
0006471613.tif 000017