(57)【要約】【課題】データ送信の衝突によってデータの遅延及び欠落等が発生することがなく、低速通信から高速通信までの広範囲に亘ってデータの送受信を行うことができる車載通信システム、車載通信装置及び車載通信方法を提供する。【解決手段】ゲートウェイ及びＥＣＵを個別の通信線により一対一に接続する。ゲートウェイ及びＥＣＵは、メッセージを受信した場合に受信応答を返信する。このとき、返信先へ送信すべきメッセージを有している場合には、ゲートウェイ及びＥＣＵは受信応答にこのメッセージを付与して送信する。また、メッセージ送信の衝突が発生した場合には、ゲートウェイのメッセージ再送信を優先して行う。【選択図】図３
2008306592.tif 000002
【特許請求の範囲】
【請求項１】
車輌に搭載され、データの送受信を行う複数の車載通信装置を備える車載通信システムにおいて、
前記車載通信装置は、
データを受信した場合に、前記データの受信を通知する受信応答を前記データの送信元へ送信する手段を有し、
前記送信元へ送信すべきデータを有する場合、前記受信応答に前記データを付与し、前記受信応答と共に前記データを前記送信元へ送信するようにしてあること
を特徴とする車載通信システム。
【請求項２】
一の車載通信装置には、複数の他の車載通信装置が個別の通信線でそれぞれ接続してあること
を特徴とする請求項１に記載の車載通信システム。
【請求項３】
前記車載通信装置は、
前記通信線でのデータの送信に衝突が生じているか否かを判定する判定手段と、
前記衝突が生じている場合、所定の送信待機期間の経過後に前記データを再送信する手段と
を有し、
前記一の車載通信装置の送信待機期間は、前記他の車載通信装置の送信待機期間より短くしてあること
を特徴とする請求項２に記載の車載通信システム。
【請求項４】
データの送信終了後に所定の判定期間が設けてあり、
前記判定手段は、データの送信終了後から前記判定期間内に、前記データの送信先から送信されたデータを受信した場合に、前記衝突が生じていると判定するようにしてあること
を特徴とする請求項３に記載の車載通信システム。
【請求項５】
前記車載通信装置は、データの送信終了後から所定の受信待機期間内に、前記データの送信先から送信された前記受信応答を受信しない場合、所定の送信待機期間の経過後に前記データを再送信する手段を有し、
前記一の車載通信装置の送信待機期間は、前記他の車載通信装置の送信待機期間より短くしてあること
を特徴とする請求項２乃至請求項４のいずれか１つに記載の車載通信システム。
【請求項６】
前記受信応答には、付与されたデータが再送信に係るものであるか否かを示す情報が含まれること
を特徴とする請求項３乃至請求項５のいずれか１つに記載の車載通信システム。
【請求項７】
前記車載通信装置は、受信したデータにエラーが含まれるか否かを判定する手段を有し、
前記受信応答には、前記エラーの有無を示す情報が含まれること
を特徴とする請求項１乃至請求項６のいずれか１つに記載の車載通信システム。
【請求項８】
車輌に搭載され、データの送受信を行う車載通信装置において、
データを受信した場合に、前記データの受信を通知する受信応答を前記データの送信元へ送信する手段を有し、
前記送信元へ送信すべきデータを有する場合、前記受信応答に前記データを付与し、前記受信応答と共に前記データを前記送信元へ送信するようにしてあること
を特徴とする車載通信装置。
【請求項９】
車輌に搭載された複数の車載通信装置の間でデータの送受信を行う車載通信方法において、
一の車載通信装置に複数の他の車載通信装置を予め個別の通信線でそれぞれ接続しておき、
前記車載通信装置が、
データを受信した場合に、前記データの受信を通知する受信応答を前記データの送信元へ送信し、
前記送信元へ送信すべきデータを有する場合には、前記受信応答に前記データを付与し、前記受信応答と共に前記データを前記送信元へ送信すること
を特徴とする車載通信方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、車輌に搭載された複数の装置が相互に高速なデータ通信を行うことができる車載通信システム、車載通信装置及び車載通信方法に関する。
【背景技術】
【０００２】
従来、車輌には多数の電子機器が搭載されて種々の処理を行っている。これらの電子機器の動作を制御するために車輌には複数のＥＣＵ（Electronic Control Unit）が搭載されている。また、複数のＥＣＵを協調して動作させるために、各ＥＣＵをネットワークを介して相互に接続し、データの送受信を行って複数のＥＣＵが情報を共有することが行われており、この場合に通信規約としてＣＡＮ（Controller Area Network）（非特許文献１、非特許文献２参照）が広く採用されている。
【０００３】
ＣＡＮの規約では、作動信号を伝送するツイストペアケーブルからなるバスに複数のＥＣＵが接続され、各ＥＣＵは作動信号によって表されるデジタルデータを送受信する。また、ＣＡＮはシリアル通信のプロトコルであり、ＣＡＮバスに接続されている複数のＥＣＵのうちの一のＥＣＵのみがデータを送信することができ、他のＥＣＵは一のＥＣＵがデータの送信を終了するまで待機するように制御される。また、複数のＥＣＵが同時的にデータの送信を行った場合には、データに付されたＩＤを基に調停が行われ、優先度の高いデータの送信を行うように制御される。
【非特許文献１】ＩＳＯ  １１８９８−１：２００３  Road vehicles--Controller area network(CAN)--Part1:Data link layer and physical signaling
【非特許文献２】ＩＳＯ  １１５１９−１：１９９４  Road vehicles--Low-speed serial data communication--Part1:General and definitions
【発明の開示】
【発明が解決しようとする課題】
【０００４】
しかし、近年では車輌にて行われる電子制御の高機能化に伴って、車輌に搭載されるＥＣＵが高機能化されると共に、搭載数が増加しているため、ＥＣＵ間で送受信されるデータ量及び送受信の発生頻度が増大している。上述のように従来のＣＡＮによる車載通信システムは、複数のＥＣＵをバスに接続する構成であるため、１つのバスに多数のＥＣＵが接続されている場合には、データ送信の衝突が頻繁に発生して、優先度の低いデータが長期間に亘って待機される虞があり、データの遅延及び欠落等が発生するという問題がある。データの著しい遅延又は欠落は、ＥＣＵによるブレーキ制御などの運転補助機能に対して致命的な場合がある。
【０００５】
そこで、少数のＥＣＵが接続されたバスを車輌に複数搭載し、複数のバスをゲートウェイを介して接続する構成の車載通信システムが近年では採用されている。この構成では、小数のＥＣＵが各バス内でデータの送受信を行うと共に、異なるバスに接続されたＥＣＵ間ではゲートウェイを介してデータの送受信を行うため、各バスでデータ送信の衝突が発生する頻度が低下し、データの遅延及び欠落等の発生を低減することができる。しかしながら、車輌中の限定された空間内に搭載することができるゲートウェイの数は限られており、車輌に搭載されるＥＣＵの数が増加した場合には、各バスに接続されるＥＣＵの数が増加するため、上述の問題を根本的に解決することはできない。
【０００６】
また、従来のＣＡＮによる通信の速度は数１００Ｋｂｐｓ〜１Ｍｂｐｓ程度が限度であった。上述のように近年ではＥＣＵ間で送受信されるデータ量が増大しているため、１０Ｍｂｐｓ又はそれ以上の高速な通信を行うことが望まれている。しかし、車輌に搭載された複数のＥＣＵは通信ケーブルを用いて接続されるが、通信ケーブルの特性によりケーブル長が１ｍにつき信号の伝搬に５ｎｓ程度の遅延が生じる。ＣＡＮを構成するバスと、バスから分岐して各ＥＣＵまで接続される支線とはこの特性の通信ケーブルにより構成されており、従来の車輌において支線の長さは４０ｍ程度に達する場合がある。この場合、各ＥＣＵ間でのデータの送受信に伴う遅延は、通信速度が１０Ｍｂｐｓの場合には２ビットのデータを送信する時間に相当し、更に通信速度が１００Ｍｂｐｓの場合には２０ビットのデータを送信する時間に相当する。このため、従来のＣＡＮにて高速通信を行った場合には、各ＥＣＵが同期して処理を行うことができないため、データの送信が衝突した場合の調停などを正しく行うことができないという問題がある。
【０００７】
本発明は、斯かる事情に鑑みてなされたものであって、その目的とするところは、データ送信の衝突によってデータの遅延及び欠落等が発生することがなく、数１００Ｋｂｐｓ以下の低速通信から１０Ｍｂｐｓ以上の高速通信までの広範囲に亘ってデータの送受信を行うことができる車載通信システム、車載通信装置及び車載通信方法を提供することにある。
【課題を解決するための手段】
【０００８】
第１発明に係る車載通信システムは、車輌に搭載され、データの送受信を行う複数の車載通信装置を備える車載通信システムにおいて、前記車載通信装置は、データを受信した場合に、前記データの受信を通知する受信応答を前記データの送信元へ送信する手段を有し、前記送信元へ送信すべきデータを有する場合、前記受信応答に前記データを付与し、前記受信応答と共に前記データを前記送信元へ送信するようにしてあることを特徴とする。
【０００９】
第２発明に係る車載通信システムは、一の車載通信装置には、複数の他の車載通信装置が個別の通信線でそれぞれ接続してあることを特徴とする。
【００１０】
第３発明に係る車載通信システムは、前記車載通信装置が、前記通信線でのデータの送信に衝突が生じているか否かを判定する判定手段と、前記衝突が生じている場合、所定の送信待機期間の経過後に前記データを再送信する手段とを有し、前記一の車載通信装置の送信待機期間は、前記他の車載通信装置の送信待機期間より短くしてあることを特徴とする。
【００１１】
第４発明に係る車載通信システムは、データの送信終了後に所定の判定期間が設けてあり、前記判定手段は、データの送信終了後から前記判定期間内に、前記データの送信先から送信されたデータを受信した場合に、前記衝突が生じていると判定するようにしてあることを特徴とする。
【００１２】
第５発明に係る車載通信システムは、前記車載通信装置は、データの送信終了後から所定の受信待機期間内に、前記データの送信先から送信された前記受信応答を受信しない場合、所定の送信待機期間の経過後に前記データを再送信する手段を有し、前記一の車載通信装置の送信待機期間は、前記他の車載通信装置の送信待機期間より短くしてあることを特徴とする。
【００１３】
第６発明に係る車載通信システムは、前記受信応答には、付与されたデータが再送信に係るものであるか否かを示す情報が含まれることを特徴とする。
【００１４】
第７発明に係る車載通信システムは、前記車載通信装置が、受信したデータにエラーが含まれるか否かを判定する手段を有し、前記受信応答には、前記エラーの有無を示す情報が含まれることを特徴とする。
【００１５】
第８発明に係る車載通信装置は、車輌に搭載され、データの送受信を行う車載通信装置において、データを受信した場合に、前記データの受信を通知する受信応答を前記データの送信元へ送信する手段を有し、前記送信元へ送信すべきデータを有する場合、前記受信応答に前記データを付与し、前記受信応答と共に前記データを前記送信元へ送信するようにしてあることを特徴とする。
【００１６】
第９発明に係る車載通信方法は、車輌に搭載された複数の車載通信装置の間でデータの送受信を行う車載通信方法において、一の車載通信装置に複数の他の車載通信装置を予め個別の通信線でそれぞれ接続しておき、前記車載通信装置が、データを受信した場合に、前記データの受信を通知する受信応答を前記データの送信元へ送信し、前記送信元へ送信すべきデータを有する場合には、前記受信応答に前記データを付与し、前記受信応答と共に前記データを前記送信元へ送信することを特徴とする。
【００１７】
本発明においては、ゲートウェイ及びＥＣＵ等の車載通信装置は、データを受信した場合にこのデータの送信元へ受信応答を送信する。また、送信元へ送信すべきデータを有する場合には、このデータを受信応答と共に送信元へ送信する。これにより、車載通信装置がデータ送信可能となった場合に、受信応答とデータとを一度に送信することができるため、データ送信の効率が向上する。
【００１８】
また、本発明においては、一の車載通信装置（ゲートウェイ）に複数の他の車載通信装置（ＥＣＵ）を個別の通信線で接続する。この構成は、所謂スター型のネットワーク構成である。これにより、ゲートウェイ及びＥＣＵが一対一でデータの送受信を行うことができるため、複数のＥＣＵのデータ送信が衝突することはなく（ただし、ゲートウェイとＥＣＵとのデータ送信が衝突する場合はある）、優先度の低いデータの送信が長期間に亘って待機されることがない。
【００１９】
また、本発明においては、ゲートウェイとＥＣＵとのデータ送信に衝突が生じているか否かを判定し、衝突が生じている場合には所定の送信待機期間の経過後にデータを再送信する。これにより、衝突を判定できたゲートウェイ又はＥＣＵがデータを再送信することができるため、データの欠落が生じることなく確実にデータの送受信を行うことができる。また、ゲートウェイの送信待機期間をＥＣＵの送信待機期間より短くする。これにより、ゲートウェイ及びＥＣＵの両車載通信装置がデータ送信の衝突を判定した場合に、ゲートウェイの再送信が優先して行われるため、ゲートウェイの再送信とＥＣＵの再送信とが再び衝突することがない。ＥＣＵのデータはゲートウェイから再送信されたデータに対する受信応答と共に送信することができる。更に、この受信応答及びデータを受信したゲートウェイがＥＣＵに受信応答を送信する際にデータを付与して送信することができる。よって、データ送信の衝突が発生した場合であっても、衝突が連続的に発生することがなく、送信すべきデータがなくなるまでゲートウェイ及びＥＣＵが交互にデータの送信を衝突の虞なく行うことができる。
【００２０】
また、本発明においては、データの送信及び受信が終了した後に、データの衝突を判定する期間を設ける。これは、例えば従来のＣＡＮにおけるＥＯＦ（End Of Frame）及びＩＦＳ（Inter Frame Space）等の期間を含む期間である。ゲートウェイ及びＥＣＵは、データの送信終了後からこの期間内にデータを受信した場合には、データ送信に衝突が生じていたと判定することができる。
【００２１】
また、本発明においては、データの送信終了後から所定の受信待機期間を設け、この期間内にデータの送信先からの受信応答が得られるか否かにより、データの送信の成功／失敗を判定する。データの送信に失敗した場合には、所定の送信待機期間の経過後にデータを再送信する。このとき、ゲートウェイの送信待機期間をＥＣＵの送信待機期間より短くすることによって、上述のようにデータの再送信時に衝突が再び発生することを防止できる。
【００２２】
また、本発明においては、受信応答にデータを付与して送信する場合に、受信応答には付与されたデータが再送信に係るデータであるか否かを示す情報を含める。これにより、受信応答を受信したゲートウェイ又はＥＣＵは、この受信応答の送信前に送信の衝突又は通信障害等が発生したことを知ることができる。
【００２３】
また、本発明においては、誤り検出の技術などを用いることによって受信したデータにエラーが含まれるか否かを判定し、このデータの送信元への受信応答にはエラーの有無を示す情報を含める。これにより、受信応答を受信したゲートウェイ又はＥＣＵは、データを再送信する必要があるか否かを判断できる。
【発明の効果】
【００２４】
本発明による場合は、一の車載通信装置に複数の他の車載通信装置を個別の通信線で接続する構成とすることにより、２つの車載通信装置が一対一でデータの送受信を行うことができるため、データ送信の際に衝突が発生する頻度が低下し、優先度の低いデータの送信が長期間に亘って待機されることがない。また、車載通信装置が、データを受信した場合にこのデータの送信元へ受信応答を送信すると共に、送信元へ送信すべきデータを有する場合には、このデータを受信応答と共に送信元へ送信する構成とすることにより、受信応答とデータとを一度に送信することができるため、データ送信の効率が向上する。よって、データ送信の衝突によってデータの遅延及び欠落等を発生させることなく、信頼性の高い高速通信を行うことができるため、数１００Ｋｂｐｓ以下の低速通信から１０Ｍｂｐｓ以上の高速通信までの広範囲に亘ってデータの送受信を行うことができる。
【発明を実施するための最良の形態】
【００２５】
以下、本発明をその実施の形態を示す図面に基づき具体的に説明する。図１は、本発明に係る車載通信システムの一構成例を示す模式図である。図において３はＥＣＵであり、図示しない車輌の適所に複数のＥＣＵ３が配設されて、車輌に搭載された種々の電子機器の制御又はセンサによる車輌の走行状態の検知等の処理をそれぞれ行うようにしてある。また、図において１はゲートウェイであり、ＥＣＵ３又は他のゲートウェイ１が接続されて、ＥＣＵ３間でのデータの送受信を中継する装置である。
【００２６】
図示の車載通信システムは、車輌に搭載された７つのＥＣＵ３と２つのゲートウェイ１とにより構成されている。第１のゲートウェイ１には４つのＥＣＵ３が接続され、第２のゲートウェイ１には３つのＥＣＵ３が接続されると共に、２つのゲートウェイ１が接続されており、一のＥＣＵ３から他のＥＣＵ３へ１つ又は２つのゲートウェイ１を介してデータの送受信を行うことができるようにしてある。また、各ＥＣＵ３とゲートウェイ１とは、それぞれ個別の通信線で接続してある。この通信線は、ＣＡＮのバスと同様の構成であり、２つの線で構成されて差動信号を伝達する構成である。なお、本発明に係る車載通信システムにおいては、ＥＣＵ３及びゲートウェイ１の間で送受信されるデータの値は、論理ビットの”０”に対応する”ドミナント”、及び論理ビットの”１”に対応する”レセシブ”とする。
【００２７】
図２は、本発明に係るゲートウェイ１及びＥＣＵ３の構成を示すブロック図である。なお、図２においてはゲートウェイ１及びＥＣＵ３をそれぞれ１つずつ図示し、その他のゲートウェイ１及びＥＣＵ３については同様の構成であるため図示を省略する。ＥＣＵ３は、車輌の走行状態などを検出するセンサ５に接続されてセンサ５から入力される信号を取得する入力部３２、車輌に搭載された制御対象となる電子機器（図示は省略する）に接続されて制御信号などを出力する出力部３３、制御に必要なプログラム及びデータ等を記憶する記憶部３４、ＥＣＵ３内の各部へ電力を供給する電源回路３５、及び通信線７が接続されてデータの送受信を行う通信制御部３６等と、ＥＣＵ３内の各部の動作を制御する制御部３１とを備えている。
【００２８】
ＥＣＵ３の入力部３２には、例えば車速、加速度、エンジンの温度又はハンドルの操舵角等を検出する各種のセンサ５が接続してあり、センサ５からの検出値が信号として入力されている。入力部３２は、センサ５が検出した検出値を取得して記憶部１５に記憶すると共に、制御部３１へセンサ５からの検出値の所得完了を通知するようにしてある。出力部３３には、車輌のエンジン又はブレーキ等の各種装置を電子的に制御するための電子機器に接続してあり、制御部３１の制御に応じて各種装置の動作を制御する制御信号を出力するようにしてある。なお、ＥＣＵ３によっては入力部３２又は出力部３３のいずれか一方のみを備える構成であってもよい。
【００２９】
記憶部３４は、ＥＥＰＲＯＭ（Electrically Erasable Programmable Read Only Memory）又はフラッシュメモリ等のデータ書き換え可能な不揮発性のメモリ素子により構成してあり、ＥＣＵ３の電源投入時に制御部３１が記憶部３４に予め記憶されたプログラム及びデータ等を読み出して処理を開始するようにしてあると共に、制御部３１の処理過程で発生する各種のデータ、センサ５が検出した検出値、通信により他のＥＣＵ３又はゲートウェイ１へ送信するデータ、及び他のＥＣＵ３又はゲートウェイ１から受信したデータ等を記憶するようにしてある。なお、記憶部３４は、所謂ＲＯＭとＲＡＭ（Random Access Memory）とが別に設けられる構成であってもよい。
【００３０】
電源回路３５は、図示しないオルタネータ又はバッテリ等の電力供給源に接続され、電力供給源からの電力を各部に適した電圧又は電流に調整した後に、各部へ供給するようにしてある。
【００３１】
通信制御部３６は、通信線７を介してゲートウェイ１に接続されて、制御部３１の指示に従って記憶部３４からデータを読み出し、このデータをゲートウェイ１へ送信すると共に、ゲートウェイ１からのデータを受信して記憶部３４に記憶し、受信完了を制御部３１へ通知するようにしてある。また、通信制御部３６は通信に係る種々の制御処理を行うようにしてあり、例えばデータの送信を行う際に、ゲートウェイ１によるデータ送信との衝突が発生したか否かの判定、及び衝突が発生した場合のデータの再送信等を行うようにしてあり、データを受信する際に受信データの誤り検出などを行うようにしてある。通信制御部３６により行われるＥＣＵ３とゲートウェイ１とのデータ送受信の詳細な方法は後述する。
【００３２】
制御部３１は、センサ５からの検出値を入力部３２にて取得し、取得した検出値を基に演算を行って制御信号を生成し、出力部３３から制御信号を出力することによって、車輌に搭載された電子機器の制御を行うようにしてある。このとき、センサ５からの検出値を他のＥＣＵ３と共有する必要がある場合には、検出値を含む送信データを生成して通信制御部３６に送信の指示を与えることによって、通信制御部３６から通信線７を介してゲートウェイ１へ送信するようにしてある。
【００３３】
また、ゲートウェイ１は、ＥＣＵ３から受信したデータを記憶する記憶部１２、各部へ電力を供給する電源回路１３、及び通信線７が接続されてデータの送受信をそれぞれ行う複数の通信制御部１４等と、ゲートウェイ１内の各部の動作を制御する制御部１１とを備えている。ゲートウェイ１の記憶部１２は、ＥＣＵ３の記憶部３４と略同じ構成であるが、主として通信バッファとして利用されるため、複数のＥＣＵ３から受信した大量のデータを記憶できるように大容量のメモリ素子で構成してある。また、ゲートウェイ１の電源回路１３は、ＥＣＵ３の電源回路３５と同様に、車輌に搭載されたオルタネータ又はバッテリ等の電力供給源に接続され、電力供給源からの電力をゲートウェイ１の各部に適した電圧又は電流に調整した後に、各部へ供給するようにしてある。
【００３４】
ゲートウェイ１の通信制御部１４もまた、ＥＣＵ３の通信制御部３６と略同じ機能を有するものであり、通信線７を介してＥＣＵ３の通信制御部３６に接続されて、ＥＣＵ３の通信制御部３６との間でデータの送受信を行うようにしてある。また、ゲートウェイ１には複数の通信制御部１４が備えられているが、各通信制御部１４は通信線７を介して１つのＥＣＵ３の１つの通信制御部３６にそれぞれ接続されて、各ＥＣＵ３の通信制御部３６と一対一の通信を行うようにしてある。なお、ゲートウェイ１の通信制御部１４には、通信線７を介して他のゲートウェイ１の通信制御部１４を接続することによって、２つのゲートウェイ１間でデータの送受信を行うこともできるようにしてある。
【００３５】
制御部１１は、一の通信制御部１４にて一のＥＣＵ３からのデータが受信された場合に、このデータの送信を他の通信制御部１４へ与えることにより、他のＥＣＵ３へデータの中継を行うようにしてある。この際に制御部１１は、受信したデータに付された優先度に応じて、記憶部１２に蓄積されたデータの送信順を決定する処理、所謂スケジューリング処理を行うようにしてある。
【００３６】
本発明に係る車載通信システムは、上述のようにＥＣＵ３の通信制御部３６とゲートウェイ１の通信制御部１４とが１つの通信線７にて接続されて一対一の通信を行う構成である。また、本発明に係る車載通信システムでは、データにＩＤ（IDentifier）及び誤り検出用ビット等の情報を付与したメッセージをＥＣＵ３及びゲートウェイ１の間で送受信するようにしてある。ＥＣＵ３の通信制御部３６及びゲートウェイ１の通信制御部１４は、通信線７が空いている（メッセージが送信されていない）場合に送信を開始する通信方式、所謂ＣＳＭＡ（Carrier Sense Multiple Access）方式による通信を行うようにしてある。メッセージの送信を先に開始したＥＣＵ３の通信制御部３６又はゲートウェイ１の通信制御部１４が送信権を獲得することができる。通信線７が空いていない場合には、メッセージの受信を行って、受信完了後にメッセージの送信を行う。
【００３７】
また、ＥＣＵ３の通信制御部３６及びゲートウェイ１の通信制御部１４が同時に送信を開始した場合、即ちメッセージの送信に衝突が発生した場合には、衝突を検知した通信制御部３６又は通信制御部１４のいずれか一方が再送信を行って、この再送信が完了した後に他方が再送を行うようにしてあると共に、通信制御部３６及び通信制御部１４が共に衝突を検知した場合には、ゲートウェイ１の通信制御部１４による再送信が優先して行われるようにしてある。このとき、通信制御部３６及び通信制御部１４は、メッセージの送信を行っている間には衝突の検知を行わず、送信完了後に受信状態へ移行してメッセージの受信の有無を調べることにより衝突を検知するようにしてある。（即ち、従来のＣＡＮにおいては、メッセージの送信中に通信線７を監視することによってメッセージの受信の有無を監視する必要があるが、本発明の車載通信システムにおいては、メッセージの送信中には通信線７の監視を行う必要はなく、メッセージの送信完了後に監視を開始すればよい。）よって、従来のＣＡＮによる通信では、メッセージの送信に衝突が発生した場合には、メッセージに付されたＩＤを優先度として調停を行っていたが、本発明に係る車載通信システムにおいては、通信制御部３６及び通信制御部１４にてメッセージのＩＤによる調停は行わない。なお、ゲートウェイ１内でのメッセージ送信のスケジューリングについては、メッセージに付されたＩＤを基に行うものとする。
【００３８】
また、本発明に係る車載通信システムでは、ＥＣＵ３の通信制御部３６及びゲートウェイ１の通信制御部１４は、メッセージを受信した場合に、このメッセージの送信元へ受信を完了した旨を通知する受信応答、所謂ＡＣＫ（ACKnowledgement）／ＮＡＫ（Negative AcKnowledgment）を返信するようにしてある。このとき、受信応答を送信する送信先へ送信すべきメッセージを有する場合、通信制御部３６及び通信制御部１４は受信応答にメッセージを付与し、受信応答とメッセージとを共に送信することができるようにしてある。本発明においては、受信応答にメッセージを付与して送信する処理を「ピギーバック」と呼称する。なお、通信制御部３６及び通信制御部１４は、メッセージ送信後に送信先からの受信応答を受信するまでメッセージを記憶しておき、所定時間内に受信応答が得られない場合にはメッセージの再送信を行う必要がある。
【００３９】
図３は、本発明に係る車載通信システムのピギーバックを説明するための模式図である。例えば、ＥＣＵ３からゲートウェイ１へメッセージが送信された場合、これを受信したゲートウェイ１はＥＣＵ３へ受信応答を送信する（図３（ａ）参照）。このとき、ゲートウェイ１がＥＣＵ３へ送信すべきメッセージを有している場合、ゲートウェイ１は受信応答にメッセージを付与してＥＣＵ３へ送信する。受信応答に付与されたメッセージを受信したＥＣＵ３は、これに対して受信応答をゲートウェイ１に送信するが、このときにもＥＣＵ３は受信応答にメッセージを付与してゲートウェイ１へ送信することができる（図３（ｂ）参照）。
【００４０】
また、ＥＣＵ３からのメッセージ送信とゲートウェイ１からのメッセージ送信が衝突した場合（図３（ｃ）参照）、ゲートウェイ１が優先的にメッセージをＥＣＵ３へ再送信する。これは、ＥＣＵ３及びゲートウェイ１がメッセージ送信の衝突を検知した場合にメッセージの再送信を行うまでの期間を、ゲートウェイ１は短く、ＥＣＵ３は長く設定することによって実現される。ＥＣＵ３は、ゲートウェイ１からのメッセージに対する受信応答に、衝突により送信できなかったメッセージを付与して、受信応答とメッセージとをゲートウェイ１へ送信することができる。このように、本発明に係る車載通信システムは、受信応答にメッセージを付与して送信することを可能とすることにより、ＥＣＵ３とゲートウェイ１とが交互にメッセージ通信を行うことができる。このため、ＥＣＵ３及びゲートウェイ１が送信すべきメッセージを大量に有し、通信が高負荷な状態となった場合であっても、いずれか一方のメッセージ送信が待機され続けることがなく、効率よくメッセージの送受信を行うことができる。更に、メッセージ送信に衝突が生じた場合であっても、このメッセージの再送信では衝突が発生することはない。
【００４１】
本発明に係る車載通信システムでは、ＥＣＵ３及びゲートウェイ１の間で行われるメッセージの送受信は、３種のフレームと１種のスペースとを用いてＥＣＵ３の通信制御部３６及びゲートウェイ１の通信制御部１４により制御される。図４は、本発明に係る車載通信システムの通信に用いられるフレーム及びスペースの役割を説明するための図表である。本発明に係る車載通信システムでは、（１）データフレーム、（２）リモートフレーム及び（３）ＡＣＫフレームと、（４）インターフレームスペースとが用いられる。
【００４２】
（１）データフレーム
データフレームは、ＥＣＵ３又はゲートウェイ１の送信側ユニットから受信側ユニットへメッセージを送信するためのフレームである。データフレームは従来のＣＡＮによる通信方式でも用いられている。本発明の車載通信システムのデータフレームと従来のＣＡＮによるデータフレームとは、用途は略同じであるが、構成が若干異なる。図５は、本発明に係る車載通信システムのデータフレームの構成を示す模式図である。データフレームは、以下の７つのフィールドで構成されている。
（ａ）ＳＯＦ（Start Of Frame）
（ｂ）ＩＤフィールド
（ｃ）コントロールフィールド
（ｄ）ＡＣＫフィールド
（ｅ）データフィールド
（ｆ）ＣＲＣ（Cyclic Redundancy Check）フィールド
（ｇ）ＥＯＦ（End Of Frame）
【００４３】
（ａ）ＳＯＦ
従来のＣＡＮのデータフレームに設けられたＳＯＦと同じである。データフレームの開始を表すビットであり、１ビットのドミナントである。本発明に係る車載通信システム（及び従来のＣＡＮによる通信システム）は、メッセージ送信を行う送信側及び受信側に共通のクロック信号が設けられていない。このため、ＥＣＵ３の通信制御部３６及びゲートウェイ１の通信制御部１４は、通信線７を監視してＳＯＦを検出し（即ち、レセシブからドミナントへ変化する際のエッジを検出し）、同期を行うようにしてある。
【００４４】
（ｂ）ＩＤフィールド
従来のＣＡＮのデータフレームに設けられたアービトレーションフィールドと同じ構成であるが、上述のように本発明に係る車載通信システムではメッセージに付されたＩＤによる調停（アービトレーション）を行わないため、このフィールドの値は単にメッセージのＩＤとして用いられる。ＩＤフィールドには標準フォーマットと拡張フォーマットとの２種の構成（従来のＣＡＮのアービトレーションフィールドと同様であるため詳細な構成の説明は省略する）があり、いずれのフォーマットにもＩＤ及びＲＴＲ（Remote Transmission Request）ビットの情報が含まれている。ＩＤはメッセージの種類を示すものであり、標準フォーマットでは１１ビットであり、拡張フォーマットでは２９ビットである。ＲＴＲビットはデータフレーム、リモートフレーム及びＡＣＫフレームを区別するためのビットであり、データフレームにおいては常にドミナントである。なお、ＲＴＲビットは、リモートフレームでは常にレセシブであり、ＡＣＫフレームでは常にドミナントである。
【００４５】
（ｃ）コントロールフィールド
従来のＣＡＮのデータフレームに設けられたコントロールフィールドと同じである。データフレームのデータ長、及び標準フォーマット又は拡張フォーマットを区別するための情報等が含まれている。
【００４６】
（ｄ）ＡＣＫフィールド
従来のＣＡＮのデータフレームにおいてＡＣＫフィールドはＣＲＣフィールドとＥＯＦとの間に設けられた２ビットであったが、本発明の車載通信システムではコントロールフィールドとデータフィールドとの間に８ビットのＡＣＫフィールドが設けてある。このため、従来のＣＡＮによる通信方式とＡＣＫの処理方法が異なり、本発明の車載通信システムではＡＣＫ／ＮＡＫをメッセージ送信と同様の方法で通知するようにしてある。図６は、本発明に係る車載通信システムのデータフレームに設けられるＡＣＫフィールドの構成を示す模式図である。
【００４７】
ＡＣＫフィールドは、４ビットのリザーブビット（ｒ３〜ｒ０）と、再送ビット（ＥＲ２）と、オーバーロードフラグ（ＥＲ１）と、アクティブエラーフラグ（ＥＲ０）と、ＡＣＫビット（ＡＣＫ）との８ビットで構成される。ＡＣＫビットは、メッセージの受信を正しく行うことができた旨を通知する場合にドミナントが設定され、メッセージの受信を正しく行うことができなかった場合にレセシブが設定される。
【００４８】
アクティブエラーフラグは、従来のＣＡＮにおけるエラーフレームの代替として用いられるものであり、通信制御部３６又は通信制御部１４の一方がエラーを検出した場合に他方へエラーを通知するために用いられる。アクティブエラーフラグは、エラーを通知する場合にドミナントに設定される。従来のＣＡＮではエラーを検知した直後にエラーフレームを送信するが、本発明の車載通信システムではメッセージの送信が可能なタイミングで（即ち、送信権が獲得できた場合に）エラーを通知する。
【００４９】
オーバーロードフラグは、従来のＣＡＮにおけるオーバーロードフレームの代替として用いられるものであり、所定条件の成立を通知するために用いられる。オーバーロードの通知は、ＥＣＵ３又はゲートウェイ１の一方の内部事情により他方のメッセージ送信を遅らせる必要がある場合、又はインターミッション（後述する）の１ビット目／２ビット目でドミナントを検出した場合に行われる。オーバーロードフラグは、オーバーロードを通知する場合にドミナントに設定される。従来のＣＡＮでは上記の条件が成立した直後にオーバーロードフレームを送信するが、本発明の車載通信システムではメッセージの送信が可能なタイミングでオーバーロードを通知する。
【００５０】
再送ビットは、送信するデータフレームのメッセージが再送信に係るものであるか否かを示すビットである。再送信に係るメッセージの場合、再送ビットはドミナントに設定される。ＥＣＵ３の通信制御部３６及びゲートウェイ１の通信制御部１４は、ＡＣＫフィールドの各ビットをチェックすることによって、メッセージの送受信に障害などが発生したことを判別することができ、これらに対するエラー処理を行うことができる。
【００５１】
（ｅ）データフィールド
従来のＣＡＮのデータフレームに設けられたデータフィールドと同じである。データフィールドは０〜８バイトのデータで構成されており、ＭＳＢ（Most Significant Bit）ファーストで送信される。データフィールドには、例えばセンサ５の検出値又は一のＥＣＵ３から他のＥＣＵ３への処理命令等の種々のデータが与えられて送信される。
【００５２】
（ｆ）ＣＲＣフィールド
ＣＲＣフィールドは、１５ビットのＣＲＣシーケンスと、１ビットのＣＲＣデリミタ（区切り用のビット）とで構成されており、ＥＣＵ３の通信制御部３６又はゲートウェイ１の通信制御部１４がメッセージを受信した際に、誤り検出を行うためのものである。ＣＲＣシーケンスは、ＳＯＦ、ＩＤフィールド、コントロールフィールド、ＡＣＫフィールド及びデータフィールドの値について予め定められた生成多項式を用いた演算を行うことにより取得することができる。なお、演算に用いる生成多項式は、従来のＣＡＮで用いられるものと同じである。メッセージを受信した通信制御部３６又は通信制御部１４は、受信したメッセージについて生成多項式により算出される値と、受信したメッセージのＣＲＣシーケンスの値とを比較することによって誤り検出を行うことができ、２つの値が一致しない場合は誤りが生じていると判断する。ＣＲＣデリミタは、従来のＣＡＮにおいてはレセシブであったが、本発明の車載通信システムにおいてはドミナントとする。
【００５３】
（ｇ）ＥＯＦ
従来のＣＡＮのデータフレームに設けられたＥＯＦと同じである。データフレームの終了を表すビットであり、７ビットのレセシブである。
【００５４】
（２）リモートフレーム
リモートフレームは、ＥＣＵ３又はゲートウェイ１の送信側ユニットから受信側ユニットへ、指定したＩＤを持つメッセージの送信を要求するためのフレームである。リモートフレームは従来のＣＡＮによる通信方式でも用いられている。リモートフレームは、データフレームからデータフィールドを除いた６つのフィールド（ＳＯＦ、ＩＤフィールド、コントロールフィールド、ＡＣＫフィールド、ＣＲＣフィールド、ＥＯＦ）により構成されている。データフレームとリモートフレームとの差異は、上述のようにデータフィールドの有無、及びＩＤフィールドのＲＴＲビットの値である。データフレームのＲＴＲビットはドミナントであり、リモートフレームのＲＴＲビットはレセシブである。
【００５５】
（３）ＡＣＫフレーム
ＡＣＫ／ＮＡＣフレームは、ＥＣＵ３又はゲートウェイ１の受信側ユニットから送信側ユニットへ、メッセージを正常に受信したか否かを通知するためのフレームであり、図３における受信応答に相当するものである。本発明の車載通信システムのＡＣＫフレームは従来のＣＡＮによる通信方式では用いられていない。ＡＣＫフレームは、リモートフレームと同様に、データフレームからデータフィールドを除いた６つのフィールドにより構成されている。リモートフレームとＡＣＫフレームとの差異は、ＩＤフィールドのＲＴＲビットの値である。リモートフレームのＲＴＲビットはレセシブであるが、ＡＣＫフレームのＲＴＲビットはドミナントである。
【００５６】
また、図３に示したように、本発明に係る車載通信システムでは、受信応答にメッセージを付与して送信することができる。この場合、ＥＣＵ３の通信制御部３６及びゲートウェイ１の通信制御部１４は、ＡＣＫフレームにデータフィールドを追加して送信するようにしてある。この場合、データフレームとＡＣＫフレームとの差異は、ＡＣＫフィールドのＡＣＫビットの値である。データフレーのＡＣＫビットはレセシブであるが、ＡＣＫフレームのＡＣＫビットはドミナントである。
【００５７】
（４）インターフレームスペース
インターフレームスペースは、データフレーム、リモートフレーム及びＡＣＫフレームを直前のフレームと分離するためのビットフィールドである。各フレーム間にインターフレームスペースを挿入することによって、ＥＣＵ３の通信制御部３６及びゲートウェイ１の通信制御部１４は前後のフレームを分離して受信することができる。
【００５８】
インターフレームスペースは、従来のＣＡＮによる通信方式で用いられるものである。従来のＣＡＮのインターフレームスペースは、３ビットのレセシブのインターミッションと、８ビットのレセシブのサスペンドトランスミッションとで構成されている。本発明の車載通信システムのインターフレームスペースは、サスペンドトランスミッションを有さず、３ビットのレセシブのインターミッションのみで構成される（即ち、インターフレームスペース＝インターミッションである）。ＥＣＵ３の通信制御部３６及びゲートウェイ１の通信制御部１４は、インターミッション中にドミナントを検出した場合、オーバーロードを通知するようにしてある。ただし、インターミッションの３ビット目がドミナントの場合には、このビットをＳＯＦとみなすものとする。
【００５９】
このように、本発明に係る車載通信システムでは、データフレーム、リモートフレーム、ＡＣＫフレーム及びインターフレームスペースの４つで通信の制御を行うようにしてある。従来のＣＡＮではこの他にエラーフレーム及びオーバーロードフレームが用いられているが、本発明に係る車載通信システムではエラーフレーム及びオーバーロードフレームを用いない。本発明に係る車載通信システムにおいて、通信制御部３６及び通信制御部１４は、メッセージの送信中に通信線７の監視、即ちメッセージ受信の監視を行わない。また、後述のエラー制御において、従来のＣＡＮが備えるエラーパッシブ状態を本発明の車載通信システムでは備えないことから、従来のＣＡＮにて発生するパッシブエラーが存在しない。このため、本発明の車載通信システムは、エラーフレームを用いることなく、データフレーム、リモートフレーム及びＡＣＫフレームのＡＣＫフィールドに設けられたアクティブエラーフラグを用いてエラーの通知を行うようにしてある。また、オーバーロードの通知についても、本発明の車載通信システムは、オーバーロードフレームを用いることなく、ＡＣＫフィールドのオーバーロードフラグを用いて通知を行うことができる。また、従来のＣＡＮが備えるエラーパッシブ状態を本発明の車載通信システムが備えないことから、インターフレームスペースのサスペンドトランスミッションについても用いる必要がない。
【００６０】
また、ＥＣＵ３の通信制御部３６及びゲートウェイ１の通信制御部１４の間でデータフレーム、リモートフレーム、ＡＣＫフレーム及びインターフレームスペースが送受信されていない状態が通信線７の空き状態であり、この状態をバスアイドルと呼ぶ。バスアイドルの場合、通信線７は常にレセシブであり、通信制御部３６又は通信制御部１４はメッセージの送信を開始することができる。通信制御部３６及び通信制御部１４は、バスアイドル状態のレセシブレベルがＳＯＦのドミナントに変化することを検知してメッセージの受信処理を開始することができる。
【００６１】
次に、ＥＣＵ３の通信制御部３６及びゲートウェイ１の通信制御部１４が行うエラー制御について説明する。なお、以下の説明においては、ゲートウェイ１の通信制御部１４について説明するが、ＥＣＵ３の通信制御部３６についても同様である。図７は、本発明に係る車載通信システムのエラー制御を説明するための状態遷移図である。ゲートウェイ１の通信制御部１４は、エラーアクティブ状態（Ｓｔ１）又はバスオフ状態（Ｓｔ２）のいずれかの状態にあり、所定の条件で状態遷移を行いながら処理を行うようにしてある。また、通信制御部１４は、送信エラーカウンタ（ＴＥＣ）及び受信エラーカウンタ（ＲＥＣ）を有しており、メッセージの送信又は受信にエラーが生じた場合にはＴＥＣ又はＲＥＣの値を増加するようにしてある。メッセージの送信又は受信を正常に行った場合に、ＴＥＣ又はＲＥＣの値を減少させてもよい。ＴＥＣ及びＲＥＣは、通信制御部１４の状態遷移の条件判定に用いられる。
【００６２】
本発明の車載通信システムが行うエラー制御におけるエラーアクティブ状態（Ｓｔ１）は、通信制御部１４が通信線７を介してメッセージの送受信を正常に行うことができる状態である。ゲートウェイ１の起動直後には、通信制御部１４は必ずこの状態となる、即ち通信制御部１４の初期状態はエラーアクティブ状態（Ｓｔ１）である。また、バスオフ状態（Ｓｔ２）は、通信制御部１４が通信線７を介してメッセージの送受信を行うことができない状態である。バスオフ状態（Ｓｔ２）においては通信制御部１４は全ての通信処理が禁止され、メッセージの送受信を行うことはできない。
【００６３】
通信制御部１４が有するＴＥＣ及びＲＥＣの値は、上述のようにメッセージの送信又は受信にエラーが生じた場合に増加される。エラーアクティブ状態（Ｓｔ１）において、ＴＥＣの値が１２８以上となった場合又はＲＥＣの値が１２８以上となった場合（イベントＥ１）、通信制御部１４の状態はバスオフ状態（Ｓｔ２）へ遷移するようにしてあり、メッセージの送受信が禁止される。バスオフ状態（Ｓｔ２）において、通信制御部１４は通信線７の状態を監視しており、１１ビット連続のレセシブを１２８回検出した場合（イベントＥ２）、通信制御部１４はエラーアクティブ状態（Ｓｔ１）へ遷移するようにしてあり、メッセージの送受信を再開される。なお、バスオフ状態（Ｓｔ２）からエラーアクティブ状態（Ｓｔ１）へ遷移した場合にはＴＥＣ及びＲＥＣの値は初期化されて０となるようにしてある。
【００６４】
このように、ＴＥＣ及びＲＥＣを用いたエラー制御を行うことにより、一定数以上のエラーが検知された場合に通信制御部１４の通信処理を停止させることができる。通信制御部１４は、通信処理が停止されたバスオフ状態において、エラー発生原因の探索、除去又は回復のための処理を行うことができる。なお、ＴＥＣは、例えば通信制御部１４がＡＣＫフィールドのアクティブエラーフラグをドミナントとしたフレームを送信した場合に値を増加させ、送信したデータフレームに対するＡＣＫフレームを受信したときに値を減少させる構成とすることができる。また、ＲＥＣは、例えば通信制御部が１４が受信したフレームのＣＲＣフィールドの不一致によりエラーを検出した場合に値を増加させ、ＣＲＣフィールドが一致して正常に受信を行うことができた場合に値を減少させる構成とすることができる。
【００６５】
なお、従来のＣＡＮによるエラー制御では、エラーアクティブ状態及びバスオフ状態の他にエラーパッシブ状態が設けてあり、３つの状態を遷移することでエラー制御を行っている。従来のＣＡＮではエラーパッシブ状態の場合に、サスペンドトランスミッションの期間についてＥＣＵ又はゲートウェイはメッセージ送信を行うことができず、送信が制限される。これは、従来のＣＡＮでは１つの通信線に複数のＥＣＵが接続されるため、エラーの発生頻度が高いＥＣＵのメッセージ送信を制限するためのものである。しかし、本発明の車載通信システムは、ＥＣＵ３の通信制御部３６とゲートウェイ１の通信制御部１４が一対一に通信線７を介して接続される構成であり、通信制御部１４のメッセージ送信先は通信制御部３６に限られるため、エラーパッシブ状態を設ける必要はない。
【００６６】
次に、ＥＣＵ３の通信制御部３６及びゲートウェイ１の通信制御部１４が行う通信制御について説明する。なお、以下の説明においては、ゲートウェイ１の通信制御部１４について説明するが、ＥＣＵ３の通信制御部３６についても同様である。図８は、本発明に係る車載通信システムの通信制御を説明するための状態遷移図である。また、図９は、本発明に係る車載通信システムの通信制御を説明するための状態遷移表である。ゲートウェイの通信制御部１４は、アイドル状態（Ｓｔ１１）、起動フレーム送信状態（Ｓｔ１２）、交互通信状態（Ｓｔ１３）及びバスオフ状態（Ｓｔ１４）の４つの状態を遷移しながら通信制御処理を行うようにしてある。なお、図８及び図９に示す通信制御の状態遷移は、図７に示したエラー制御の状態遷移を含むものであり、エラー制御のエラーアクティブ状態（Ｓｔ１）は、通信制御のアイドル状態（Ｓｔ１１）、起動フレーム送信状態（Ｓｔ１２）及び交互通信状態（Ｓｔ１３）の３つの状態をあわせたものに相当する。また、エラー制御のバスオフ状態（Ｓｔ２）は、通信制御のバスオフ状態（Ｓｔ１４）に等しい。
【００６７】
本発明の車載通信システムが行う通信制御におけるアイドル状態（Ｓｔ１１）は、通信制御部１４が送信するメッセージ（データフレーム又はリモートフレーム）を有していない状態であり、通信制御における通信制御部１４の初期状態である。この状態では通信制御部１４は、通信線７を監視してＥＣＵ３からのメッセージ受信を待機している。通信制御部１４は、ゲートウェイ１の制御部１１からメッセージの送信要求が与えられた場合に（イベントＥ１１）、アイドル状態（Ｓｔ１１）から起動フレーム送信状態（Ｓｔ１２）へ遷移するようにしてある。また、通信制御部１４は、ＥＣＵ３からのメッセージを受信した場合に（イベントＥ１２）、アイドル状態（Ｓｔ１１）から交互通信状態（Ｓｔ１３）へ遷移するようにしてある。
【００６８】
起動フレーム送信状態（Ｓｔ１２）は、通信制御部１４が送信メッセージを有し、このメッセージを送信している状態である。この状態はメッセージの送信が終了してＥＣＵ３からの受信応答（ＡＣＫフレーム）が得られるまで継続され、ＥＣＵ３からの受信応答が得られてメッセージの送受信が成立した場合に（イベントＥ１３）、通信制御部１４は起動フレーム送信状態（Ｓｔ１２）から交互通信状態（Ｓｔ１３）へ遷移するようにしてある。
【００６９】
交互通信状態（Ｓｔ１３）は、図３（ｂ）に示すように、ゲートウェイ１及びＥＣＵ３の間で受信応答にメッセージを付与して（ＡＣＫフレームにデータフィールドを付加して）送受信することにより、メッセージの送信と受信とを交互に行っている状態である。通信制御部１４は、ＥＣＵ３からの受信応答を調べて、受信応答にメッセージが付与されている場合には（イベントＥ１４）、交互通信状態（Ｓｔ１３）を維持してメッセージの送受信を交互に行うようにしてある。また、受信応答にメッセージが付与されていない場合には（イベントＥ１５）、通信制御部１４は交互通信状態（Ｓｔ１３）からアイドル状態（Ｓｔ１１）へ遷移し、制御部１１からの送信要求が与えられるか、又はＥＣＵ３からのメッセージを受信するまで待機する。また、エラーカウンタＴＥＣ又はＲＥＣの値が１２８以上となってバスオフの条件が成立した場合には（イベントＥ１６）、通信制御部１４は、交互通信状態（Ｓｔ１３）からバスオフ状態（Ｓｔ１４）へ遷移する。
【００７０】
バスオフ状態（Ｓｔ１４）は、通信制御部１４が通信線７を介してメッセージの送受信を行うことができない状態である。バスオフ状態（Ｓｔ１４）において、通信制御部１４は通信線７の状態を監視しており、１１ビット連続のレセシブを１２８回検出して復帰条件が成立した場合には（イベントＥ１７）、通信制御部１４はバスオフ状態（Ｓｔ１４）からアイドル状態（Ｓｔ１１）に遷移するようにしてある。なお、通信制御部１４がバスオフ状態（Ｓｔ１４）からアイドル状態（Ｓｔ１１）へ遷移した場合には、ＴＥＣ及びＲＥＣの値は初期化されて０となるようにしてある。
【００７１】
このように、図８及び図９に示す状態遷移にしたがって通信制御部１４がメッセージの送受信を行うことによって、図３（ｂ）に示すようにゲートウェイ１とＥＣＵ３とが交互にメッセージの送受信を行うことができる。
【００７２】
次に、ＥＣＵ３の通信制御部３６及びゲートウェイ１の通信制御部１４が行うメッセージ送信の衝突判定及びメッセージの再送信について説明する。本発明の車載通信システムにおいては、データフレーム、リモートフレーム及びＡＣＫフレームのＳＯＦからＣＲＣフィールドのＣＲＣシーケンスまでの各ビットについて、同一の値（ドミナント又はレセシブ）が５ビット連続する場合には、次のビットに１ビットの反転データを付加する処理を通信制御部３６及び通信制御部１４が行った後に、メッセージ送信を行うようにしてある。これは所謂ビットスタッフと呼ばれる処理であり、従来のＣＡＮにて行われている処理と同じである。これにより、メッセージのＳＯＦからＣＲＣフィールドのＣＲＣシーケンスまでには、５ビットに１回の信号変化が発生する。
【００７３】
これを利用して、本発明に係る車載通信システムの通信制御部３６及び通信制御部１４は、ＣＲＣフィールドのＣＲＣデリミタを送信した後、７ビット以内にドミナントのビットが検出されない場合に、メッセージ送信の衝突が発生しておらず、通信線７が空き状態であると判定するようにしてある。逆に、少なくともこの７ビット以内にドミナントが検出された場合には、メッセージ送信の衝突が発生したと判定することができる。ビットスタッフによりメッセージには５ビットに１回の信号変化が含まれるため、メッセージの送信に衝突が発生した場合には、６ビット以内にドミナントのビットが検出される。よって、１ビットのクロック誤差を考慮して６＋１＝７ビットの期間を衝突判定の期間とする。
【００７４】
通信制御部３６及び通信制御部１４は、メッセージの再送信に係る制御を行う際に以下の５つの期間（時間）を用いる。なお、車載通信システムの動作周波数（又は通信速度）に応じて実時間は変動するため、以下の説明において各時間の単位は”ビット時間”とする。ビット時間は１ビットの送信（又は処理）に要する時間であり、動作周波数に依存しない相対的な時間である。８ビットのデータは８ビット時間で送信される。
（１）メッセージ送信時間：Ｃｍ
（２）メッセージ送信の最大伝播遅延時間：τ
（３）ＥＯＦ期間：ｔＥＯＦ
（４）ＩＦＳ期間：ｔＩＦＳ
（５）クロック誤差：α
【００７５】
（１）メッセージ送信時間：Ｃｍ
メッセージ送信時間Ｃｍは、データフレーム、リモートフレーム又はＡＣＫフレームにおいて、ＳＯＦからＣＲＣデリミタまでの送信に要する時間である。即ち、各フレームのＳＯＦからＣＲＣデリミタまでのビット長に等しい。
【００７６】
（２）メッセージ送信の最大伝播遅延時間：τ
最大伝播遅延時間τは、送信側から受信側までにメッセージの伝播に必要な時間の最大値である。伝播に必要な時間には、通信線７での信号の伝播遅延時間及びメッセージの送受信処理に要する時間等を含む。また、図１に示すように車載通信システムが複数のゲートウェイ１と複数のＥＣＵ３とで構成されている場合であっても、最大伝播遅延時間τは全てのゲートウェイ１及びＥＣＵ３に共通の値であり、最も遅延の大きい通信経路により決定される値である。最大伝播遅延時間τは、車載通信システムの設計時に決定され、全てのゲートウェイ１の通信制御部１４及びＥＣＵ３の通信制御部３６に予め記憶されている。例えば、通信線７にて１ｍにつき５ｎｓの遅延が生じ、通信線７の長さが１０ｍの場合、１０Ｍｂｐｓの通信速度では往復で１００ｎｓ（１ビット時間）程度の伝播遅延が生じる。また、１００Ｍｂｐｓの通信速度では往復で１０ビット時間程度の伝播遅延が生じる。
【００７７】
（３）ＥＯＦ期間：ｔＥＯＦ
データフレーム、リモートフレーム又はＡＣＫフレームにおけるＥＯＦの期間をｔＥＯＦとする。上述の通り、ＥＯＦは７ビットであるため、ｔＥＯＦは７ビット時間である。
【００７８】
（４）ＩＦＳ期間：ｔＩＦＳ
インターフレームスペースの期間をｔＩＦＳとする。上述の通り、インターフレームスペースは３ビットであるため、ｔＩＦＳは３ビット時間である。
【００７９】
（５）クロック誤差期間：α
メッセージの送受信を行うＥＣＵ３の通信制御部３６とゲートウェイ１の通信制御部１４との間のクロック誤差ｅ％を、メッセージの送受信が成立するために必要な期間に掛け合わせた期間である。具体的には、以下の（式１）により算出される。
α  ＝  （ｔＥＯＦ＋ｔＩＦＳ＋２τ）×ｅ    …（式１）
【００８０】
図１０は、本発明に係る車載通信システムの一通信例であり、ゲートウェイ１からＥＣＵ３へメッセージの送信が正常に行われた場合を図示してある。例えば、ゲートウェイ１の通信制御部１４がデータフレームのＳＯＦからＣＲＣデリミタまでをＥＣＵ３へ送信し、ＥＣＵ３の通信制御部３６が通信線７依存の遅延時間後にこれを受信した場合、ＥＣＵ３の通信制御部３６はデータフレームのＣＲＣデリミタを受信してからＥＯＦ及びインターフレームスペースの期間（即ち、ｔＥＯＦ＋ｔＩＦＳの期間）が経過した後に、受信応答としてＡＣＫフレームをゲートウェイ１へ送信する。ＥＣＵ３からのＡＣＫフレームは通信路７依存の遅延時間後にゲートウェイ１の通信制御部１４にて受信されるが、上記の通信が正常に行われた場合、ゲートウェイ１の通信制御部１４がデータフレームのＣＲＣデリミタを送信した後に、ＡＣＫフレームのＳＯＦを受信する期間は以下の（式２）の通りである。
ｔＥＯＦ＋ｔＩＦＳ−α≦受信期間≦ｔＥＯＦ＋ｔＩＦＳ＋２τ＋α    …（式２）
【００８１】
よって、ゲートウェイ１の通信制御部１４は、この受信期間内にＥＣＵ３からのＡＣＫフレームを受信しない場合にメッセージの送受信にエラーが発生したと判断し、メッセージの再送信を行うようにしてある。なお、ゲートウェイ１の通信制御部１４がＣＲＣデリミタを送信した後、所定期間（ｔＥＯＦ＋ｔＩＦＳ−α）に達する前にＥＣＵ３からのメッセージを受信した場合には、ゲートウェイ１及びＥＣＵ３のメッセージ送信が衝突している虞があると判断でき、所定期間（ｔＥＯＦ＋ｔＩＦＳ＋２τ＋α）以内にＡＣＫフレームを受信できない場合には、ＥＣＵ３がメッセージを受信できていない虞があると判断できるため、メッセージの再送信を行う。図示は省略するが、ＥＣＵ３の通信制御部３６についても同様である。即ち、ゲートウェイ１及びＥＣＵ３においては、所定期間（ｔＥＯＦ＋ｔＩＦＳ−α）がメッセージの衝突が生じたか否かを判定する判定期間として設けてあり、また、（式２）に示す期間が受信応答の受信を待機する受信待機期間として設けてある。
【００８２】
ゲートウェイ１の通信制御部１４及びＥＣＵ３の通信制御部３６が行うメッセージの再送信処理は、以下の２つの方針に従って行われる。
・メッセージの送信後、上述の受信期間に正常なＡＣＫフレームを受信しない場合にメッセージの再送信を行う。
・メッセージの再送信はゲートウェイ１を優先し、ＥＣＵ３はゲートウェイ１からの再送信を待って所定時間内にメッセージを受信しない場合に再送信を行う。
【００８３】
図１１及び図１２は、本発明に係る車載通信システムのゲートウェイ１の通信制御部１４が行うメッセージの再送信処理の手順を示すフローチャートである。なお、本図においてはドミナントを「Ｄ」と略して記載してある。まず、ゲートウェイ１の通信制御部１４は、制御部１１からメッセージの送信要求が与えられたか否かを調べ（ステップＳ１）、送信要求が与えられていない場合には（Ｓ１：ＮＯ）、送信要求が与えられるまで待機する。制御部１１から送信要求が与えられた場合（Ｓ１：ＹＥＳ）、通信制御部１４は、図８及び図９に示したアイドル状態（Ｓｔ１１）から起動フレーム送信状態（Ｓｔ１２）へ遷移し（ステップＳ２）、記憶部１２からメッセージを読み出してＥＣＵ３へ送信する（ステップＳ３）。
【００８４】
通信制御部１４はメッセージ（データフレーム）のＳＯＦから順に送信を行って、ＣＲＣデリミタの送信が終了したか否かを調べ（ステップＳ４）、ＣＲＣデリミタの送信が終了していない場合には（Ｓ４：ＮＯ）、ステップＳ３へ戻ってメッセージの送信を継続する。ＣＲＣデリミタの送信が終了した場合（Ｓ４：ＹＥＳ）、通信制御部１４は通信線７の監視を開始し（ステップＳ５）、ＣＲＣデリミタの送信終了から所定期間（７ビット）以内にドミナントを検出したか否かを調べる（ステップＳ６）。
【００８５】
所定期間（７ビット）以内にドミナントを検出した場合（Ｓ６：ＹＥＳ）、ゲートウェイ１の通信制御部１４によるメッセージ送信とＥＣＵ３によるメッセージ送信とが衝突していると判断できるため、通信制御部１４はＥＣＵ３から送信されるメッセージの最後のドミナント（ＥＣＵ３から送信されたデータフレームのＣＲＣデリミタ）を検出し（ステップＳ７）、最後のドミナントから所定期間（ｔＥＯＦ＋ｔＩＦＳ）の経過後にメッセージの再送信を行う（ステップＳ８）。
【００８６】
ステップＳ６にて所定期間（７ビット）以内にドミナントを検出しない場合（Ｓ６：ＮＯ）、更に通信制御部１４は所定期間（ｔＥＯＦ＋ｔＩＦＳ＋２τ＋α）以内にドミナントを検出したか否かを調べる（ステップＳ９）。所定期間（ｔＥＯＦ＋ｔＩＦＳ＋２τ＋α）以内にドミナントを検出した場合（Ｓ９：ＹＥＳ）、ＥＣＵ３からの受信応答が得られたと判断できるため、通信制御部１４はＥＣＵ３からのメッセージを受信し（ステップＳ１０）、処理を終了する。また、所定期間（ｔＥＯＦ＋ｔＩＦＳ＋２τ＋α）以内にドミナントを検出しない場合（Ｓ９：ＮＯ）、ゲートウェイ１の通信制御部１４によるメッセージ送信とＥＣＵ３によるメッセージ送信とが衝突しているか、又はＥＣＵ３がメッセージを受信できていないと判断できるため、通信制御部１４はメッセージの再送信を行う（ステップＳ１１）。
【００８７】
図１３及び図１４は、本発明に係る車載通信システムのＥＣＵ３の通信制御部３６が行うメッセージの再送信処理の手順を示すフローチャートである。ＥＣＵ３の通信制御部３６が行うメッセージの再送信処理は、ゲートウェイ１の通信制御部１４の再送信処理と略同じであるが、メッセージを再送信する際の待ち時間が異なる。ゲートウェイ１の通信制御部１４の待ち時間は、ＥＣＵ３の通信制御部３６の待ち時間より短く設定してある。
【００８８】
まず、ＥＣＵ３の通信制御部３６は、制御部３１からメッセージの送信要求が与えられたか否かを調べ（ステップＳ２１）、送信要求が与えられていない場合には（Ｓ２１：ＮＯ）、送信要求が与えられるまで待機する。制御部３１から送信要求が与えられた場合（Ｓ２１：ＹＥＳ）、通信制御部３６は、アイドル状態（Ｓｔ１１）から起動フレーム送信状態（Ｓｔ１２）へ遷移し（ステップＳ２２）、記憶部３４からメッセージを読み出してゲートウェイ１へ送信する（ステップＳ２３）。
【００８９】
通信制御部３６はメッセージ（データフレーム）のＳＯＦから順に送信を行って、ＣＲＣデリミタの送信が終了したか否かを調べ（ステップＳ２４）、ＣＲＣデリミタの送信が終了していない場合には（Ｓ２４：ＮＯ）、ステップＳ２３へ戻ってメッセージの送信を継続する。ＣＲＣデリミタの送信が終了した場合（Ｓ２４：ＹＥＳ）、通信制御部３６は通信線７の監視を開始し（ステップＳ２５）、ＣＲＣデリミタの送信終了から所定期間（７ビット）以内にドミナントを検出したか否かを調べる（ステップＳ２６）。
【００９０】
所定期間（７ビット）以内にドミナントを検出した場合（Ｓ２６：ＹＥＳ）、ＥＣＵ３の通信制御部３６によるメッセージ送信とゲートウェイ１によるメッセージ送信とが衝突していると判断できるため、通信制御部３６はゲートウェイ１から送信されるメッセージの最後のドミナントを検出し（ステップＳ２７）、最後のドミナントから所定期間（ｔＥＯＦ＋ｔＩＦＳ＋２τ＋２α）の経過後にメッセージの再送信を行う（ステップＳ２８）。ここで、ＥＣＵ３は待ち時間として所定期間（ｔＥＯＦ＋ｔＩＦＳ＋２τ＋２α）が経過した後に再送信を行うが、ゲートウェイ１は待ち時間として所定期間（ｔＥＯＦ＋ｔＩＦＳ）が経過した後に再送信を行う（図１１のステップＳ８参照）。（ｔＥＯＦ＋ｔＩＦＳ＋２τ＋２α）＞（ｔＥＯＦ＋ｔＩＦＳ）であるため、ＥＣＵ３の待ち時間はゲートウェイ１の待ち時間より長い。ただし、ＥＣＵ３の通信制御部３６においては、ステップＳ２８にて再送信まで待機する所定時間（ｔＥＯＦ＋ｔＩＦＳ＋２τ＋２α）にゲートウェイ１からのメッセージを受信した場合には、再送信を行わない。
【００９１】
ステップＳ２６にて所定期間（７ビット）以内にドミナントを検出しない場合（Ｓ２６：ＮＯ）、更に通信制御部３６は所定期間（ｔＥＯＦ＋ｔＩＦＳ＋２τ＋α）以内にドミナントを検出したか否かを調べる（ステップＳ２９）。所定期間（ｔＥＯＦ＋ｔＩＦＳ＋２τ＋α）以内にドミナントを検出した場合（Ｓ２９：ＹＥＳ）、ゲートウェイ１からの受信応答が得られたと判断できるため、通信制御部３６はゲートウェイ１からのメッセージを受信し（ステップＳ３０）、処理を終了する。また、所定期間（ｔＥＯＦ＋ｔＩＦＳ＋２τ＋α）以内にドミナントを検出しない場合（Ｓ２９：ＮＯ）、ＥＣＵ３の通信制御部３６によるメッセージ送信とゲートウェイ１によるメッセージ送信とが衝突しているか、又はゲートウェイ１がメッセージを受信できていないと判断できるため、通信制御部３６は所定期間（２τ＋α）が経過した後にメッセージの再送信を行う（ステップＳ３１）。ここで、ＥＣＵ３は待ち時間として所定期間（２τ＋α）が経過した後に再送信を行うが、ゲートウェイ１は判定終了直後に再送信を行う（図１２のステップＳ１０参照）。よって、ＥＣＵ３の待ち時間はゲートウェイ１の待ち時間より長い。
【００９２】
図１５乃至図１８は、本発明に係る車載通信システムにて行われるメッセージの再送信の例を示す模式図である。
例１：ゲートウェイ１が衝突を検出した場合（図１５参照）。
例えば、ゲートウェイ１がメッセージ１０１をデータフレームとしてＥＣＵ３へ送信し、ＥＣＵ３がメッセージ１０１を受信する前にメッセージ１０２をゲートウェイ１へ送信した場合、ゲートウェイ１の通信制御部１４はメッセージ１０１の送信終了後（ＣＲＣデリミタの送信終了後）に通信線７の監視を開始し、７ビット以内（ｔＥＯＦ＋ｔＩＦＳ−α以内）にドミナントを検出する。よって、ゲートウェイ１の通信制御部１４はメッセージ送信の衝突が生じたことを検出できるため、ＥＣＵ３からのメッセージ１０１の最後のドミナント（メッセージ１０１のＣＲＣデリミタ）を受信した後、所定期間（ｔＥＯＦ＋ｔＩＦＳ）の経過後にメッセージ１０１の再送信を行う。このとき、ゲートウェイ１の通信制御部１４は、インターフレームスペースの期間中にドミナントを検出した場合、再送信するメッセージのＡＣＫフィールドのオーバーロードフラグをドミナントに設定することによって、ＥＣＵ３へオーバーロードの通知を行うようにしてある。
【００９３】
また、ＥＣＵ３の通信制御部３６はメッセージの衝突を検出することができないため、ゲートウェイ１からの受信応答を所定期間（ｔＥＯＦ＋ｔＩＦＳ＋２τ＋α）待ち、この期間内に受信応答が得られた場合には、この受信応答に付与されて再送信されたメッセージ１０１を受信する。所定期間（ｔＥＯＦ＋ｔＩＦＳ＋２τ＋α）にゲートウェイ１から受信応答が得られない場合、通信制御部３６はその後更に所定期間（２τ＋α）を待ってメッセージ１０２の再送信を行う。
【００９４】
例２：ＥＣＵ３が衝突を検出した場合（図１６参照）。
例えば、ゲートウェイ１の通信制御部１４がメッセージ１０３をデータフレームとしてＥＣＵ３へ送信すると同時に、ＥＣＵ３の通信制御部３６がメッセージ１０４をデータフレームとしてゲートウェイ１へ送信したとする。また、メッセージ１０３のビット長がメッセージ１０４のビット長より長いとする。この場合、ＥＣＵ３の通信制御部３６はメッセージ１０４の送信終了後に通信線７の監視を開始し、７ビット以内にドミナントを検出するが、ゲートウェイ１の通信制御部１４は検出することはできない。
【００９５】
ゲートウェイ１の通信制御部１４は、メッセージ１０３に対するＥＣＵ３からの受信応答を所定期間（ｔＥＯＦ＋ｔＩＦＳ＋２τ＋α）待ち、メッセージ１０３の再送信を行う。一方、ＥＣＵ３の通信制御部３６は、メッセージの衝突を検出するため、ゲートウェイ１からのメッセージ１０３の最後のドミナントを受信した後、所定期間（ｔＥＯＦ＋ｔＩＦＳ＋２τ＋２α）の経過後にメッセージ１０４の再送信を行うが、所定期間（ｔＥＯＦ＋ｔＩＦＳ＋２τ＋２α）内にゲートウェイ１からのメッセージ１０３を受信した場合には、メッセージ１０３の受信処理を行う。
【００９６】
この場合、ＥＣＵ３の通信制御部３６は、ゲートウェイ１から最初に送信されたメッセージ１０３（衝突したメッセージ１０３）の受信終了後、（ｔＥＯＦ＋ｔＩＦＳ＋２τ＋α）の期間が経過した後にゲートウェイ１から再送信されたメッセージ１０３を受信することができる。このため、ＥＣＵ３の通信制御部３６では、メッセージの再送信は期間αの余裕を加えて、（ｔＥＯＦ＋ｔＩＦＳ＋２τ＋２α）の経過後とする。
【００９７】
例３：ゲートウェイ１及びＥＣＵ３が衝突を検出した場合（図１７参照）。
例えば、ゲートウェイ１の通信制御部１４がメッセージ１０５をデータフレームとしてＥＣＵ３へ送信すると同時に、ＥＣＵ３の通信制御部３６がメッセージ１０６をデータフレームとしてゲートウェイ１へ送信したとする。また、メッセージ１０５及びメッセージ１０６のビット長は略同じとし、ゲートウェイ１及びＥＣＵ３の間の通信には十分に大きな伝播遅延が発生するものとする。この場合、ゲートウェイ１の通信制御部１４はメッセージ１０５の送信終了後の７ビット以内にドミナントを検出し、ＥＣＵ３の通信制御部３６はメッセージ１０６の送信終了後の７ビット以内にドミナントを検出するため、ゲートウェイ１及びＥＣＵ３にてメッセージの衝突を検出することができる。
【００９８】
ゲートウェイ１の通信制御部１４は、ＥＣＵ３からのメッセージ１０６の最後のドミナントを受信した後、所定期間（ｔＥＯＦ＋ｔＩＦＳ）の経過後にメッセージ１０６の再送信を行う。ＥＣＵ３の通信制御部３６は、メッセージの衝突を検出するため、ゲートウェイ１からのメッセージ１０５の最後のドミナントを受信した後、所定期間（ｔＥＯＦ＋ｔＩＦＳ＋２τ＋２α）の経過後にメッセージ１０６の再送信を行うが、所定期間（ｔＥＯＦ＋ｔＩＦＳ＋２τ＋２α）内にゲートウェイ１からのメッセージ１０５を受信した場合には、メッセージ１０５の受信処理を行う。
【００９９】
この場合、ＥＣＵ３の通信制御部３６は、ゲートウェイ１から最初に送信されたメッセージ１０５の受信終了後、（ｔＥＯＦ＋ｔＩＦＳ）の期間が経過後の更に期間２τが経過するまでの間に、ゲートウェイ１から再送信されたメッセージ１０５を受信することができる。ただし、ＥＣＵ３の通信制御部３６では、メッセージ１０６の再送信は期間２αの余裕を加えて、（ｔＥＯＦ＋ｔＩＦＳ＋２τ＋２α）の経過後とする。
【０１００】
例４：ゲートウェイ１及びＥＣＵ３が共に衝突を検出できない場合（図１８参照）。
例えば、ゲートウェイ１の通信制御部１４がメッセージ１０７をデータフレームとしてＥＣＵ３へ送信すると同時に、ＥＣＵ３の通信制御部３６がメッセージ１０８をデータフレームとしてゲートウェイ１へ送信したとする。また、メッセージ１０７及びメッセージ１０８のビット長は略同じとし、ゲートウェイ１及びＥＣＵ３の間の通信には微小な伝播遅延しか発生しないものとする。この場合、ゲートウェイ１の通信制御部１４はメッセージ１０７の送信終了後の７ビット以内にドミナントを検出することができず、ＥＣＵ３の通信制御部３６はメッセージ１０８の送信終了後の７ビット以内にドミナントを検出することができないため、ゲートウェイ１及びＥＣＵ３にてメッセージの衝突を検出することはできない。
【０１０１】
ゲートウェイ１の通信制御部１４は、メッセージ１０７の送信終了後、メッセージ１０７に対するＥＣＵ３からの受信応答を所定期間（ｔＥＯＦ＋ｔＩＦＳ＋２τ＋α）待ち、メッセージ１０７の再送信を行う。ＥＣＵ３の通信制御部３６は、メッセージ１０８の送信終了後、メッセージ１０８に対するゲートウェイ１からの受信応答を所定期間（ｔＥＯＦ＋ｔＩＦＳ＋２τ＋α）待ち、この期間内にゲートウェイ１からのメッセージ１０７を受信しない場合にのみ、その後更に所定期間（２τ＋α）を待ってメッセージ１０８の再送信を行う。
【０１０２】
以上の例に示すように、図１１乃至図１４のフローチャートに示す手順でメッセージの衝突検出及びメッセージの再送信等の処理を行うことによって、メッセージの衝突が発生した場合にはゲートウェイ１のメッセージの再送信を優先して行うことができる。これは、ゲートウェイ１の通信制御部１４が再送信を行う場合の待ち時間を、ＥＣＵ３の通信制御部３６による待ち時間よりも短く設定することによって実現されている。
【０１０３】
次に、上述のメッセージの衝突検出及びメッセージの再送信等を含めた詳細な通信制御について説明する。図１９は、本発明に係る車載通信システムのゲートウェイ１による詳細な通信制御の一例を説明するための状態遷移図である。また、図２０は、本発明に係る車載通信システムのゲートウェイ１による詳細な通信制御の一例を説明するための状態遷移表である。ただし、図１９及び図２０に示す状態遷移は、上述の方法によるメッセージの再送信を実現するための一構成例であって、これに限るものではない。ゲートウェイ１の通信制御部１４は、リセット（Ｓｔ３１）、スリープ（Ｓｔ３２）、バスオフ（Ｓｔ３３）、アイドル（Ｓｔ３４）、送信１（Ｓｔ３５）、ドミナント待ち１（Ｓｔ３６）、ＥＯＦ待ち（Ｓｔ３７）、ＩＦＳ遅延１（Ｓｔ３８）、送信２（Ｓｔ３９）、ドミナント待ち２（Ｓｔ４０）、受信（Ｓｔ４１）及びＩＦＳ遅延２（Ｓｔ４２）の１２の状態を遷移しながら通信制御を行う少にしてある。
【０１０４】
ゲートウェイ１の通信制御部１４が遷移するリセット（Ｓｔ３１）の状態は、通信制御部１４の初期状態であり、この状態にてハードウェアの初期化作業を行うようにしてある。通信制御部１４は、制御部１１からリセット解除要求が与えられた場合に（イベントＥ３１）、リセット（Ｓｔ３１）からアイドル（Ｓｔ３４）に状態遷移するようにしてある。また、制御部１１からスリープ要求が与えられた場合に（イベントＥ３２）、通信制御部１４はリセット（Ｓｔ３１）からスリープ（Ｓｔ３２）へ状態遷移するようにしてある。
【０１０５】
スリープ（Ｓｔ３２）の状態は、通信制御部１４の動作が停止されて消費電力が低減される状態である。通信制御部１４は、制御部１１からスリープ解除要求が与えられた場合に（イベントＥ３３）、スリープ（Ｓｔ３２）からリセット（Ｓｔ３１）へ状態遷移するようにしてある。
【０１０６】
バスオフ（Ｓｔ３３）の状態は、通信制御部１４が通信線７を介してメッセージの送受信を行うことができない状態である。通信制御部１４は、制御部１１からリセット要求が与えられた場合に（イベントＥ３４）、バスオフ（Ｓｔ３３）からリセット（Ｓｔ３１）へ状態遷移するようにしてある。また、バスオフ（Ｓｔ３３）の状態において、通信制御部１４は通信線７を監視しており、１１ビット連続のレセシブを１２８回検出して復帰条件が成立した場合には（イベントＥ３５）、通信制御部１４はバスオフ（Ｓｔ３３）からアイドル（Ｓｔ３４）に状態遷移するようにしてある。なお、通信制御部１４がバスオフ（Ｓｔ３３）からアイドル（Ｓｔ３４）へ状態遷移した場合には、ＴＥＣ及びＲＥＣの値は初期化されて０となるようにしてある。
【０１０７】
アイドル（Ｓｔ３４）の状態は、送信すべきメッセージが存在しない状態である。この状態では、信制御部１４は、通信線７を監視してＥＣＵ３からのメッセージ受信を待機している。通信制御部１４は、制御部１１からリセット要求が与えられた場合に（イベントＥ３６）、アイドル（Ｓｔ３４）からリセット（Ｓｔ３１）へ状態遷移するようにしてある。制御部１１からメッセージの送信要求が与えられた場合には（イベントＥ３７）、通信制御部１４はアイドル（Ｓｔ３４）から送信１（Ｓｔ３５）へ状態遷移するようにしてある。また、通信制御部１４は、ＥＣＵ３からのメッセージを受信した場合に（イベントＥ３８）、アイドル（Ｓｔ３４）から受信（Ｓｔ４１）へ状態遷移するようにしてある。エラーカウンタＴＥＣ又はＲＥＣの値が１２８以上となってバスオフの条件が成立した場合には（イベントＥ３９）、通信制御部１４はアイドル（Ｓｔ３４）からバスオフ（Ｓｔ３３）へ状態遷移するようにしてある。
【０１０８】
送信１（Ｓｔ３５）の状態は、通信制御部１４がメッセージを送信する状態である。この状態では、データフレーム、リモートフレーム又はＡＣＫフレームのＣＲＣデリミタまでの送信を行うようにしてあり、ＣＲＣデリミタまでの送信が終了した場合（イベントＥ４０）、通信制御部１４は送信１（Ｓｔ３５）からドミナント待ち１（Ｓｔ３６）へ状態遷移するようにしてある。
【０１０９】
ドミナント待ち１（Ｓｔ３６）の状態は、送信メッセージのＣＲＣデリミタ送出後に通信制御部１４が通信線７を監視して、ドミナントが生じるまで待機している状態である。ＣＲＣデリミタ送出後から所定期間（７ビット）以内にドミナントを検出した場合（イベントＥ４１）、メッセージの衝突が発生していると判断できるため、通信制御部１４はドミナント待ち１（Ｓｔ３６）からＥＯＦ待ち（Ｓｔ３７）へ状態遷移するようにしてある。ＣＲＣデリミタ送出後から所定期間（７ビット）以内にドミナントが検出されず、所定期間（ｔＥＯＦ＋ｔＩＦＳ＋２τ＋α）以内にドミナントを検出した場合（イベントＥ４２）、通常のメッセージを受信したと判断できるため、通信制御部１４はドミナント待ち１（Ｓｔ３６）から受信（Ｓｔ４１）へ状態遷移するようにしてある。また、ＣＲＣデリミタ送出後から所定期間（ｔＥＯＦ＋ｔＩＦＳ＋２τ＋α）以内にドミナントが検出されなかった場合（イベントＥ４３）、ＥＣＵ３からの受信応答が得られておらず、メッセージの再送を行う必要があるため、通信制御部１４はドミナント待ち１（Ｓｔ３６）から送信２（Ｓｔ３９）へ状態遷移するようにしてある。
【０１１０】
ＥＯＦ待ち（Ｓｔ３７）の状態は、ＥＣＵ３からのメッセージ送信が終了して、更にＥＯＦの期間が経過するまで通信制御部１４が待機している状態である。通信制御部１４は、ＥＯＦの期間が経過した場合に（イベントＥ４４）、ＥＯＦ待ち（Ｓｔ３７）からＩＦＳ遅延１（Ｓｔ３８）へ状態遷移するようにしてある。
【０１１１】
ＩＦＳ遅延１（Ｓｔ３８）の状態は、インターフレームスペースの期間が経過するまで通信制御部１４が待機している状態である。通信制御部１４は、インターフレームスペースの期間が経過した場合に（イベントＥ４５）、ＩＦＳ遅延１（Ｓｔ３８）から送信２（Ｓｔ３９）へ状態遷移するようにしてある。
【０１１２】
送信２（Ｓｔ３９）の状態は、通信制御部１４がＥＣＵ３との間で受信応答と共にメッセージを交互に送受信している際のメッセージ送信中の状態か、又はメッセージ送信に衝突が生じて再送信を行っている状態である。通信制御部１４は、メッセージの送信が終了し、ＥＣＵ３へ送信すべきメッセージが残されている場合（イベントＥ４６）、送信２（Ｓｔ３９）からドミナント待ち２（Ｓｔ４０）へ状態遷移するようにしてある。また、メッセージ送信が終了し、ＥＣＵ３へ送信すべきメッセージが残されていない場合（イベントＥ４７）、通信制御部１４は送信２（Ｓｔ３９）からアイドル（Ｓｔ３４）へ状態遷移するようにしてある。
【０１１３】
ドミナント待ち２（Ｓｔ４０）の状態は、送信メッセージのＣＲＣデリミタ送出後に通信制御部１４が通信線７を監視して、ドミナントが生じるまで待機している状態である。ＣＲＣデリミタ送出後から所定期間（７ビット）以内にドミナントを検出した場合（イベントＥ４８）、通信制御部１４はドミナント待ち２（Ｓｔ４０）からＥＯＦ待ち（Ｓｔ３７）へ状態遷移するようにしてある。ＣＲＣデリミタ送出後から所定期間（７ビット）以内にドミナントが検出されず、所定期間（ｔＥＯＦ＋ｔＩＦＳ＋２τ＋α）以内にドミナントを検出した場合（イベントＥ４９）、通信制御部１４はエラーカウンタをインクリメントして、ドミナント待ち２（Ｓｔ４０）から受信（Ｓｔ４１）へ状態遷移するようにしてある。また、ＣＲＣデリミタ送出後から所定期間（ｔＥＯＦ＋ｔＩＦＳ＋２τ＋α）以内にドミナントが検出されなかった場合（イベントＥ５０）、ＥＣＵ３からの受信応答が得られていないため、通信制御部１４はエラーカウンタをインクリメントして、ドミナント待ち２（Ｓｔ４０）からアイドル（Ｓｔ３４）へ状態遷移するようにしてある。
【０１１４】
受信（Ｓｔ４１）の状態は、通信制御部１４がＥＣＵ３からのメッセージを受信している状態である。通信制御部１４は、メッセージの受信を終了した場合に（イベントＥ５１）、受信（Ｓｔ４１）からＩＦＳ遅延２（Ｓｔ４２）へ状態遷移するようにしてある。
【０１１５】
ＩＦＳ遅延２（Ｓｔ４２）の状態は、データフレーム、リモートフレーム又はＡＣＫフレームを受信した後にインターフレームスペースの期間が経過するまで通信制御部１４が待機している状態である。この状態において通信制御部１４は、受信応答の送信が必要である場合、インターフレームスペースの期間が経過した後（イベントＥ５２）、受信応答をＥＣＵ３へ送信する必要があるため、ＩＦＳ遅延２（Ｓｔ４２）から送信２（Ｓｔ３９）へ状態遷移するようにしてある。また、受信応答の送信が必要ない場合、通信制御部１４はインターフレームスペースの期間が経過した後（イベントＥ５３）、ＩＦＳ遅延２（Ｓｔ４２）からアイドル（Ｓｔ３４）へ状態遷移するようにしてある。
【０１１６】
図２１は、本発明に係る車載通信システムのＥＣＵ３による詳細な通信制御の一例を説明するための状態遷移図である。また、図２２は、本発明に係る車載通信システムのＥＣＵ３による詳細な通信制御の一例を説明するための状態遷移表である。ＥＣＵ３の通信制御部３６の状態遷移は、図１９及び図２０に示したゲートウェイ１の通信制御部１４の状態遷移と略同じであるため、異なる部分のみ説明する。ＥＣＵ３の通信制御部３６は、ゲートウェイ１の通信制御部１４が有するＩＦＳ遅延１（Ｓｔ３８）に代えて、再送ドミナント待ち（Ｓｔ６１）を有している。即ち、ＥＣＵ３の通信制御部３６は、ＥＯＦ待ち（Ｓｔ３７）の状態においてＥＯＦの期間が経過した場合に（イベントＥ６０）、ＥＯＦ待ち（Ｓｔ３７）から再送ドミナント待ち（Ｓｔ６１）へ状態遷移するようにしてある。
【０１１７】
ドミナント待ち１（Ｓｔ３６）の状態は、送信メッセージのＣＲＣデリミタ送出後に通信制御部３６が通信線７を監視して、ドミナントが生じるまで待機している状態である。ＣＲＣデリミタ送出後から所定期間（７ビット）以内にドミナントを検出した場合（イベントＥ４１）、メッセージの衝突が発生していると判断できるため、通信制御部３６はドミナント待ち１（Ｓｔ３６）からＥＯＦ待ち（Ｓｔ３７）へ状態遷移するようにしてある。ＣＲＣデリミタ送出後から所定期間（７ビット）以内にドミナントが検出されず、所定期間（ｔＥＯＦ＋ｔＩＦＳ＋４τ＋２α）以内にドミナントを検出した場合（イベントＥ４２）、通常のメッセージを受信したと判断できるため、通信制御部３６はドミナント待ち１（Ｓｔ３６）から受信（Ｓｔ４１）へ状態遷移するようにしてある。また、ＣＲＣデリミタ送出後から所定期間（ｔＥＯＦ＋ｔＩＦＳ＋４τ＋２α）以内にドミナントが検出されなかった場合（イベントＥ４３）、ＥＣＵ３からの受信応答が得られておらず、メッセージの再送を行う必要があるため、通信制御部３６はドミナント待ち１（Ｓｔ３６）から送信２（Ｓｔ３９）へ状態遷移するようにしてある。
【０１１８】
再送ドミナント待ち（Ｓｔ６１）の状態は、ゲートウェイ１へのメッセージを送信した後、メッセージの衝突が生じていた場合にゲートウェイ１から再送信されるメッセージの受信をＥＣＵ３の通信制御部３６が待機している状態である。ＥＯＦの期間が経過した後から所定期間（ｔＩＦＳ＋２τ＋２α）以内にドミナントを検出した場合（イベントＥ６１）、ゲートウェイ１からの再送信に係るメッセージを受信したので、通信制御部３６は再送ドミナント待ち（Ｓｔ６１）から受信（Ｓｔ４１）へ状態遷移するようにしてある。また、所定期間（ｔＩＦＳ＋２τ＋２α）以内にドミナントを検出しない場合（イベントＥ６２）、ゲートウェイ１からメッセージが再送信されておらず、通信制御部３６がメッセージの再送信を行う必要がるため、通信制御部３６は再送ドミナント待ち（Ｓｔ６１）から送信２（Ｓｔ３９）へ状態遷移するようにしてある。
【０１１９】
その他の状態については、送受信の関係が逆転するのみでＥＣＵ３の通信制御部３６はゲートウェイ１の通信制御部１６と同様の処理を行うため、説明を省略する。図１９〜図２２に示した状態遷移に従ってゲートウェイ１の通信制御部１６及びＥＣＵ３の通信制御部３６が処理を行うことによって、ゲートウェイ１及びＥＣＵ３の交互通信、及びメッセージ送信が衝突した場合のゲートウェイ１を優先したメッセージの再送信等を実現することができる。
【０１２０】
以上の構成の車載通信システムにおいては、ゲートウェイ１及びＥＣＵ３を一対一に接続し、メッセージを受信した場合に送信元へ受信応答（ＡＣＫフレーム）を返送する構成とすると共に、受信応答にメッセージを付与して送信することを可能とすることによって、ゲートウェイ１とＥＣＵ３とが交互にメッセージの送信を行うことができる。よって、ゲートウェイ１及びＥＣＵ３が共に送信すべきメッセージを多数蓄積している場合であっても、いずれか一方のメッセージ送信が待機されつづけるなどの大幅な遅延が発生することがない。また、メッセージ送信に衝突が発生した場合に、ゲートウェイ１の再送信までの待機時間をＥＣＵ３の待機時間より短く設定することにより、ゲートウェイ１のメッセージの再送信が優先して行い、ＥＣＵ３のメッセージの再送信はゲートウェイ１への受信応答と共に行うことができるため、連続してメッセージ送信の衝突が発生することがない。これらのことから、本発明の車載通信システムは、ゲートウェイ１及びＥＣＵ３の間の通信経路を最大限に効率よく利用してメッセージの送受信を行うことができ、高速通信を実現することができると共に、車輌の走行制御などリアルタイム性が要求される処理を確実に行うことができる。
【０１２１】
なお、本実施の形態においては、車載通信システムのゲートウェイ１及びＥＣＵ３の間の通信について説明したが、２つのゲートウェイ１の間の通信についても同様の構成を適用することができる。この場合、一方のゲートウェイ１のメッセージ再送信の待機時間と他のゲートウェイ１の待機時間とに差を設ければよい。また、本実施の形態においては、ゲートウェイ１の再送信をＥＣＵ３の再送信より優先して行う構成としたが、これに限るものではなく、ＥＣＵ３の再送信を優先して行う構成としてもよい。また、最大伝播遅延時間τは車載通信システム全体で１つの値を設定する構成としたが、これに限るものではなく、通信線７の長さなどに応じて各ゲートウェイ１及びＥＣＵ３についてそれぞれ異なる値を設定してもよい。また、図１に示した車載通信システムの構成は一例であってこれに限るものではなく、車輌に搭載するゲートウェイ１及びＥＣＵ３の数は任意の数であってよい。
【図面の簡単な説明】
【０１２２】
【図１】本発明に係る車載通信システムの一構成例を示す模式図である。
【図２】本発明に係るゲートウェイ及びＥＣＵの構成を示すブロック図である。
【図３】本発明に係る車載通信システムのピギーバックを説明するための模式図である。
【図４】本発明に係る車載通信システムの通信に用いられるフレーム及びスペースの役割を説明するための図表である。
【図５】本発明に係る車載通信システムのデータフレームの構成を示す模式図である。
【図６】本発明に係る車載通信システムのデータフレームに設けられるＡＣＫフィールドの構成を示す模式図である。
【図７】本発明に係る車載通信システムのエラー制御を説明するための状態遷移図である。
【図８】本発明に係る車載通信システムの通信制御を説明するための状態遷移図である。
【図９】本発明に係る車載通信システムの通信制御を説明するための状態遷移表である。
【図１０】本発明に係る車載通信システムの一通信例である。
【図１１】本発明に係る車載通信システムのゲートウェイの通信制御部が行うメッセージの再送信処理の手順を示すフローチャートである。
【図１２】本発明に係る車載通信システムのゲートウェイの通信制御部が行うメッセージの再送信処理の手順を示すフローチャートである。
【図１３】本発明に係る車載通信システムのＥＣＵの通信制御部が行うメッセージの再送信処理の手順を示すフローチャートである。
【図１４】本発明に係る車載通信システムのＥＣＵの通信制御部が行うメッセージの再送信処理の手順を示すフローチャートである。
【図１５】本発明に係る車載通信システムにて行われるメッセージの再送信の例を示す模式図である。
【図１６】本発明に係る車載通信システムにて行われるメッセージの再送信の例を示す模式図である。
【図１７】本発明に係る車載通信システムにて行われるメッセージの再送信の例を示す模式図である。
【図１８】本発明に係る車載通信システムにて行われるメッセージの再送信の例を示す模式図である。
【図１９】本発明に係る車載通信システムのゲートウェイによる詳細な通信制御の一例を説明するための状態遷移図である。
【図２０】本発明に係る車載通信システムのゲートウェイによる詳細な通信制御の一例を説明するための状態遷移表である。
【図２１】本発明に係る車載通信システムのＥＣＵによる詳細な通信制御の一例を説明するための状態遷移図である。
【図２２】本発明に係る車載通信システムのＥＣＵによる詳細な通信制御の一例を説明するための状態遷移表である。
【符号の説明】
【０１２３】
１  ゲートウェイ（車載通信装置）
３  ＥＣＵ（車載通信装置）
５  センサ
１１  制御部
１２  記憶部
１４  通信制御部（送信する手段、判定手段、再送信する手段）
３１  制御部
３２  入力部
３３  出力部
３４  記憶部
３６  通信制御部（送信する手段、判定手段、再送信する手段）
【図１】
2008306592.tif 000003
【図２】
2008306592.tif 000004
【図３】
2008306592.tif 000005
【図４】
2008306592.tif 000006
【図５】
2008306592.tif 000007
【図６】
2008306592.tif 000008
【図７】
2008306592.tif 000009
【図８】
2008306592.tif 000010
【図９】
2008306592.tif 000011
【図１０】
2008306592.tif 000012
【図１１】
2008306592.tif 000013
【図１２】
2008306592.tif 000014
【図１３】
2008306592.tif 000015
【図１４】
2008306592.tif 000016
【図１５】
2008306592.tif 000017
【図１６】
2008306592.tif 000018
【図１７】
2008306592.tif 000019
【図１８】
2008306592.tif 000020
【図１９】
2008306592.tif 000021
【図２０】
2008306592.tif 000022
【図２１】
2008306592.tif 000023
【図２２】
2008306592.tif 000024