(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2022-09-07
(45)【発行日】2022-09-15
(54)【発明の名称】車載通信システム、車載通信装置及び送信周期算出方法
(51)【国際特許分類】
H04L 41/00 20220101AFI20220908BHJP
【FI】
H04L41/00
(21)【出願番号】P 2019115712
(22)【出願日】2019-06-21
【審査請求日】2021-09-13
(73)【特許権者】
【識別番号】504139662
【氏名又は名称】国立大学法人東海国立大学機構
(73)【特許権者】
【識別番号】395011665
【氏名又は名称】株式会社オートネットワーク技術研究所
(73)【特許権者】
【識別番号】000183406
【氏名又は名称】住友電装株式会社
(73)【特許権者】
【識別番号】000002130
【氏名又は名称】住友電気工業株式会社
(74)【代理人】
【識別番号】100114557
【氏名又は名称】河野 英仁
(74)【代理人】
【識別番号】100078868
【氏名又は名称】河野 登夫
(72)【発明者】
【氏名】倉地 亮
(72)【発明者】
【氏名】高田 広章
(72)【発明者】
【氏名】上田 浩史
【審査官】大石 博見
(56)【参考文献】
【文献】特開2002-84337(JP,A)
【文献】特開2010-258565(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
H04L 41/00
(57)【特許請求の範囲】
【請求項1】
共通の通信線に接続された複数の車載通信装置が、前記通信線を介してメッセージを送受信する車載通信システムであって、
メッセージの送信側の車載通信装置は、
送信すべきメッセージの送信を最初に試みた時点から、当該メッセージの送信を開始した時点までの遅延時間を測定する遅延時間測定部と、
前記遅延時間測定部が測定した遅延時間を前記メッセージに付与する付与部と
を有し、
メッセージの受信側の車載通信装置は、
前記送信側の車載通信装置からのメッセージを受信した時点を取得する受信時点取得部と、
受信したメッセージに付与された遅延時間を取得する遅延時間取得部と、
受信した2つのメッセージそれぞれについて前記受信時点取得部が取得した時点及び前記遅延時間取得部が取得した遅延時間に基づき、前記メッセージの送信周期を算出する算出部と
を有する、
車載通信システム。
【請求項2】
前記算出部は、先に受信したメッセージについて受信時点から遅延時間だけ遡った時点と、後に受信したメッセージについて受信時点から遅延時間だけ遡った時点との時間差を前記送信周期として算出する、請求項1に記載の車載通信システム。
【請求項3】
前記受信側の車載通信装置は、前記算出部が算出した送信周期に基づいて、受信したメッセージが周期的に送信されるメッセージ又は非周期的に送信されるメッセージのいずれであるかを判定する周期メッセージ判定部を有する、請求項1又は請求項2に記載の車載通信システム。
【請求項4】
前記複数の車載通信装置には、
前記遅延時間測定部及び前記付与部を有する車載通信装置と、
前記遅延時間測定部及び前記付与部を有さない車載通信装置と
を含む、請求項1から請求項3までのいずれか1項に記載の車載通信システム。
【請求項5】
前記メッセージには、当該メッセージを識別する識別情報が付与され、
前記受信側の車載通信装置は、
受信したメッセージに付与された識別情報に基づいて、当該メッセージに遅延時間が付与されているか否かを判定する付与判定部を有する、請求項4に記載の車載通信システム。
【請求項6】
他の車載通信装置と共に共通の通信線に接続され、前記通信線を介してメッセージを送受信する車載通信装置であって、
送信すべきメッセージの送信を最初に試みた時点から、当該メッセージの送信を開始した時点までの遅延時間が付与されたメッセージを受信する受信部と、
前記受信部がメッセージを受信した時点を取得する受信時点取得部と、
受信したメッセージに付与された遅延時間を取得する遅延時間取得部と、
受信した2つのメッセージそれぞれについて前記受信時点取得部が取得した時点及び前記遅延時間取得部が取得した遅延時間に基づき、前記メッセージの送信周期を算出する算出部と
を備える、車載通信装置。
【請求項7】
共通の通信線に接続された複数の車載通信装置が、前記通信線を介して送受信するメッセージの送信周期を算出する送信周期算出方法であって、
メッセージの送信側の車載通信装置が、送信すべきメッセージの送信を最初に試みた時点から、当該メッセージの送信を開始した時点までの遅延時間を測定し、測定した遅延時間を前記メッセージに付与し、
メッセージの受信側の車載通信装置が、前記送信側の車載通信装置からのメッセージを受信した時点を取得し、受信したメッセージに付与された遅延時間を取得し、受信した2つのメッセージそれぞれについて取得した時点及び遅延時間に基づき、前記メッセージの送信周期を算出する、
送信周期算出方法。
【発明の詳細な説明】
【技術分野】
【0001】
本開示は、共通の通信線を介してメッセージの送受信を行う車載通信システム及び車載通信装置に関し、また周期的に送信されるメッセージの送信周期を算出する送信周期算出方法に関する。
【背景技術】
【0002】
従来、車両にはECU(Electronic Control Unit)等の装置が複数搭載されている。これら複数の車載装置は通信線を介して相互に接続され、メッセージの送受信を行うことにより情報を交換し、協働により車両の種々の機能を実現している。車両内の通信には、CAN(Controller Area Network)の通信規格が広く採用されている。
【0003】
特許文献1においては、車両内に配されるCANの通信線を多系統に分割した場合に、通信線間の通信を効率よく調停することが期待できる車載ネットワーク拡張装置が提案されている。この車載ネットワーク拡張装置は、通信線間で通信の衝突が生じた際に、メッセージに付与された優先度に基づいて通信線間の通信を調停する回路を備えている。
【先行技術文献】
【特許文献】
【0004】
【発明の概要】
【発明が解決しようとする課題】
【0005】
車両に搭載されたECU等の装置は、所定の情報を有するメッセージを周期的に送信することが多い。これを利用し、メッセージを受信する側の装置において、受信したメッセージについて送信周期を算出し、算出した送信周期が正しいものであるか否かを判定することによって、受信したメッセージの正否を判定することが可能である。しかしながら、複数の車載装置によるメッセージ送信が同時的に行われてメッセージの衝突が発生し、調停処理により優先度が低いメッセージの送信が遅延することが起こり得る。調停処理によるメッセージ送信の遅延が発生した場合、このメッセージを受信した装置では送信周期を算出することが難しく、送信周期に基づくメッセージの正否判定の精度を低下させる虞がある。
【0006】
本開示は、斯かる事情に鑑みてなされたものであって、その目的とするところは、メッセージの送信周期を精度よく算出することができる車載通信システム、車載通信装置及び送信周期算出方法を提供することにある。
【課題を解決するための手段】
【0007】
本態様に係る車載通信システムは、共通の通信線に接続された複数の車載通信装置が、前記通信線を介してメッセージを送受信する車載通信システムであって、メッセージの送信側の車載通信装置は、送信すべきメッセージの送信を最初に試みた時点から、当該メッセージの送信を開始した時点までの遅延時間を測定する遅延時間測定部と、前記遅延時間測定部が測定した遅延時間を前記メッセージに付与する付与部とを有し、メッセージの受信側の車載通信装置は、前記送信側の車載通信装置からのメッセージを受信した時点を取得する受信時点取得部と、受信したメッセージに付与された遅延時間を取得する遅延時間取得部と、受信した2つのメッセージそれぞれについて前記受信時点取得部が取得した時点及び前記遅延時間取得部が取得した遅延時間に基づき、前記メッセージの送信周期を算出する算出部とを有する。
【0008】
本願は、このような特徴的な処理部を備える車載通信装置等の装置として実現することができるだけでなく、かかる特徴的な処理をステップとする通信方法として実現したり、かかるステップをコンピュータに実行させるためのコンピュータプログラムとして実現したりすることができる。これらの装置の一部又は全部を実現する半導体集積回路として実現したり、これらの装置を含むその他の装置又はシステムとして実現したりすることができる。
【発明の効果】
【0009】
上記によれば、メッセージの送信周期を精度よく算出することが期待できる。
【図面の簡単な説明】
【0010】
【
図1】本実施の形態に係る車載通信システムの構成を示すブロック図である。
【
図2】本実施の形態に係るECUの構成を示すブロック図である。
【
図3】本実施の形態に係る車載通信システムにおいてECUが送信するメッセージの構成を説明するための模式図である。
【
図4】本実施の形態に係るCANコントローラが行うメッセージ送信処理の手順を示すフローチャートである。
【
図5】本実施の形態に係る送信周期算出方法を説明するための模式図である。
【
図6】本実施の形態に係る送信周期算出方法を説明するための模式図である。
【
図7】本実施の形態に係るCANコントローラが行う送信周期算出処理の手順を示すフローチャートである。
【
図8】本実施の形態に係る送信周期算出処理の検証実験の方法を説明するための模式図である。
【
図9】本実施の形態に係る送信周期算出処理の検証実験の結果を示すグラフである。
【
図10】実施の形態2に係る車載通信システムの構成を示すブロック図である。
【発明を実施するための形態】
【0011】
[本開示の実施の形態の説明]
最初に本開示の実施態様を列記して説明する。以下に記載する実施形態の少なくとも一部を任意に組み合わせてもよい。
【0012】
(1)本態様に係る車載通信システムは、共通の通信線に接続された複数の車載通信装置が、前記通信線を介してメッセージを送受信する車載通信システムであって、メッセージの送信側の車載通信装置は、送信すべきメッセージの送信を最初に試みた時点から、当該メッセージの送信を開始した時点までの遅延時間を測定する遅延時間測定部と、前記遅延時間測定部が測定した遅延時間を前記メッセージに付与する付与部とを有し、メッセージの受信側の車載通信装置は、前記送信側の車載通信装置からのメッセージを受信した時点を取得する受信時点取得部と、受信したメッセージに付与された遅延時間を取得する遅延時間取得部と、受信した2つのメッセージそれぞれについて前記受信時点取得部が取得した時点及び前記遅延時間取得部が取得した遅延時間に基づき、前記メッセージの送信周期を算出する算出部とを有する。
【0013】
本態様にあっては、送信側の車載通信装置が、メッセージの送信を最初に試みた時点から、このメッセージの送信を実際に開始した時点までの遅延時間を、このメッセージに付与する。送信側の車載通信装置から送信されたメッセージは、共通の通信線に接続された受信側の車載通信装置にて受信される。受信側の車載通信装置は、受信したメッセージの受信時点を取得すると共に、受信したメッセージに付与された遅延時間を取得する。受信側の車載通信装置は、時系列的に前後して受信した2つのメッセージについてそれぞれ受信時点及び遅延時間を取得し、取得したこれらの情報に基づいてメッセージの送信周期を算出する。送信側の車載通信装置が遅延時間をメッセージに付与して送信し、受信側の車載通信装置がメッセージから遅延時間を取得して送信周期を算出することにより、送信側の車載通信装置にて調停処理等により生じたメッセージ送信の遅延を受信側の車載通信装置が考慮してメッセージの送信周期を算出することができる。よって受信側の車載通信装置は、メッセージの送信周期を精度よく算出することができる。
【0014】
(2)前記算出部は、先に受信したメッセージについて受信時点から遅延時間だけ遡った時点と、後に受信したメッセージについて受信時点から遅延時間だけ遡った時点との時間差を前記送信周期として算出することが好ましい。
【0015】
本態様にあっては、メッセージの受信時点から遅延時間だけ遡った時点が、このメッセージの送信を最初に試みた時点となる。そこで受信側の車載通信装置は、先に受信したメッセージについて受信時点から遅延時間だけ遡った時点と、後に受信したメッセージについて受信時点から遅延時間だけ遡った時点との時間差を算出し、この時間差をメッセージの送信周期とする。送信側の車載通信装置がメッセージの送信を最初に試みた時点に基づいて、受信側の車載通信装置がメッセージの送信周期を算出することができるため、メッセージの送信周期を精度よく算出することができる。
【0016】
(3)前記受信側の車載通信装置は、前記算出部が算出した送信周期に基づいて、受信したメッセージが周期的に送信されるメッセージ又は非周期的に送信されるメッセージのいずれであるかを判定する周期メッセージ判定部を有することが好ましい。
【0017】
本態様にあっては、算出したメッセージの送信周期に基づいて、受信側の車載通信装置は、受信したメッセージが周期的に送信されるものであるか又は非周期的に送信されるものであるかを判定する。受信側の車載通信装置は、例えばメッセージを受信する都度、1つ前に受信したメッセージとの送信時点の時間差を算出し、算出した時間差が以前に算出した送信周期に対して誤差範囲内に収まる場合、受信メッセージが周期的に送信されるものであると判定することができる。これに対して、算出した時間差が送信周期に対して誤差範囲を超えて異なる値である場合、受信側の車載通信装置は、受信したメッセージが非周期的に送信されるものであると判定することができる。非周期的と判定されたメッセージは、例えばイベント駆動により送信されるメッセージ、又は、不正な装置による不正なメッセージ等の可能性がある。
【0018】
(4)前記複数の車載通信装置には、前記遅延時間測定部及び前記付与部を有する車載通信装置と、前記遅延時間測定部及び前記付与部を有さない車載通信装置とを含むことが好ましい。
【0019】
本態様にあっては、共通の通信線に接続される複数の車載通信装置には、メッセージに遅延時間を付与して送信する車載通信装置と、遅延時間の付与を行わずにメッセージを送信する車載通信装置とが含まれ得る。即ち、車載通信システムは、遅延時間が付与されたメッセージと、遅延時間が付与されていないメッセージとの混在が可能である。遅延時間を付与しない従来構成の車載通信システムに対して、メッセージの送信周期を精度よく判定することが求められる車載通信装置に対して遅延時間を付与する機能を追加すればよい。よって、本態様の車載通信システムの構成を従来の車両へ導入することを容易化できる。
【0020】
(5)前記メッセージには、当該メッセージを識別する識別情報が付与され、前記受信側の車載通信装置は、受信したメッセージに付与された識別情報に基づいて、当該メッセージに遅延時間が付与されているか否かを判定する付与判定部を有することが好ましい。
【0021】
本態様にあっては、車載通信装置が送受信するメッセージには、このメッセージを識別する識別情報が付与される。メッセージの識別情報は、例えばCANの通信規格ではCAN-IDとすることができる。ただし本態様の通信は、CANの通信規格に限定されるものではなく、例えばFlexRay又はイーサネット(登録商標)等の種々の通信規格が採用できる。受信側の車載通信装置は、受信したメッセージの識別情報に基づいて、このメッセージに遅延時間が付与されているか否かを判定する。これにより、遅延時間が付与されたメッセージと、遅延時間が付与されていないメッセージとが混在する場合であっても、受信側の車載通信装置がメッセージの送信周期の算出を行うことが可能となる。
【0022】
(6)本態様に係る車載通信装置は、他の車載通信装置と共に共通の通信線に接続され、前記通信線を介してメッセージを送受信する車載通信装置であって、送信すべきメッセージの送信を最初に試みた時点から、当該メッセージの送信を開始した時点までの遅延時間が付与されたメッセージを受信する受信部と、前記受信部がメッセージを受信した時点を取得する受信時点取得部と、受信したメッセージに付与された遅延時間を取得する遅延時間取得部と、受信した2つのメッセージそれぞれについて前記受信時点取得部が取得した時点及び前記遅延時間取得部が取得した遅延時間に基づき、前記メッセージの送信周期を算出する算出部とを備える。
【0023】
本態様にあっては、態様(1)と同様に、メッセージの送信周期を精度よく算出することができる。
【0024】
(7)本態様に係る送信周期算出方法は、共通の通信線に接続された複数の車載通信装置が、前記通信線を介して送受信するメッセージの送信周期を算出する送信周期算出方法であって、メッセージの送信側の車載通信装置が、送信すべきメッセージの送信を最初に試みた時点から、当該メッセージの送信を開始した時点までの遅延時間を測定し、測定した遅延時間を前記メッセージに付与し、メッセージの受信側の車載通信装置が、前記送信側の車載通信装置からのメッセージを受信した時点を取得し、受信したメッセージに付与された遅延時間を取得し、受信した2つのメッセージそれぞれについて取得した時点及び遅延時間に基づき、前記メッセージの送信周期を算出する。
【0025】
本態様にあっては、態様(1)と同様に、メッセージの送信周期を精度よく算出することができる。
【0026】
[本開示の実施形態の詳細]
本開示の実施形態に係る車載通信システムの具体例を、以下に図面を参照しつつ説明する。本開示はこれらの例示に限定されるものではなく、特許請求の範囲によって示され、特許請求の範囲と均等の意味及び範囲内でのすべての変更が含まれることが意図される。
【0027】
<システム構成>
図1は、本実施の形態に係る車載通信システムの構成を示すブロック図である。本実施の形態に係る車載通信システムは、車両1に搭載された複数のECU2を備えて構成されている。複数のECU2は、車両1内に配された通信線4にそれぞれ接続されており、通信線4を介してメッセージの送受信を行うことができる。なお本実施の形態において、複数のECU2は、CANの通信規格に従うメッセージの送受信を行う。通信線4はCANバスと呼ばれ、1つの通信線4には数個から十数個程度のECU2が接続され得る。車両1には複数の通信線4が設けられてもよく、この場合には通信線4の間のメッセージを中継するゲートウェイ等の装置が車両に搭載される。なお車載通信システムに含まれるECU2の数、通信線4の数、装置の接続態様及びネットワークの構成等は、図示のものに限らない。
【0028】
ECU2は、例えば車両1のエンジンの動作を制御するECU、ドアのロック/アンロックを制御するECU、ライトの点灯/消灯を制御するECU、エアバッグの動作を制御するECU、及び、ABS(Antilock Brake System)の動作を制御するECU等の種々のECUが含まれ得る。なお、本実施の形態においては、通信線4を介したメッセージの送受信を行う車載通信装置としてECU2を挙げるが、車載通信装置はこれらに限るものではない。
【0029】
CANの通信規格に従うメッセージには、CANIDと呼ばれる識別情報が、アービトレーションフィールドと呼ばれるメッセージの先頭領域に格納される。CANIDは、このメッセージに含まれるデータの種別等を示すと共に、このメッセージの優先度を示す情報である。CANIDは、その値が小さいほど優先度が高いメッセージであることを示す。複数のECU2が通信線4に対して同時的にメッセージの送信を試みた場合、CANの通信規格ではメッセージのアービトレーションフィールドに格納されたCANIDの値に基づくアービトレーション(調停)処理が各ECU2にて行われる。アービトレーション処理の結果、最も優先度が高い1つのメッセージが送信を許可され、これ以外のメッセージは送信を待機する必要がある。CANIDは、車両1、車載通信システム又はECU2の設計段階等において設計者により決定される値である。
【0030】
本実施の形態に係る車載通信システムにおいては、ECU2がアービトレーション処理により生じた遅延時間の情報をメッセージに付与して送信する。このメッセージを受信したECU2は、メッセージの受信時刻(受信時点)と、このメッセージに付与された遅延時間とに基づいて、送信元のECU2がこのメッセージの送信を始めに試みた時刻(時点)、即ちアービトレーション処理による遅延が発生しなければ送信元のECU2がこのメッセージを送信できた送信時刻(送信時点)を算出することができる。
【0031】
また本実施の形態において各ECU2は、所定の周期でメッセージ送信を繰り返し行う。送信周期は、例えばECU2毎に又はメッセージの種別毎(即ちCANID毎)に予め定められている。メッセージを受信したECU2は、受信したメッセージの受信時刻及び遅延時間と、この受信メッセージと同じCANIDを有する前回の受信メッセージの受信時刻及び遅延時間とに基づいて、前回のメッセージ送信時刻から今回のメッセージ送信時刻までの時間差を算出する。この時間差の算出は、このメッセージの送信周期を算出する処理に相当する。
【0032】
本実施の形態に係るECU2は、メッセージを受信する都度、このメッセージの送信周期を算出する。ECU2は、今回の送信周期の算出結果と、前回までの送信周期の算出結果とを比較し、今回の送信周期が前回までの送信周期と大きく相違している場合に、今回の受信メッセージが想定される周期メッセージではないと判断する。本実施の形態においては、ECU2が周期メッセージではないと判断したメッセージは、不正なメッセージと見なされ、破棄される。ただし、非周期のメッセージは、例えばイベントメッセージ等の正規のメッセージとして処理されてもよい。
【0033】
図2は、本実施の形態に係るECU2の構成を示すブロック図である。本実施の形態に係るECU2は、処理部(プロセッサ)21、記憶部(ストレージ)22、入出力部(I/O)23及びCANコントローラ24等を備えて構成されている。処理部21は、記憶部22に記憶されたプログラム22aを読み出して実行することにより、車両1の制御処理等の種々の処理を行う。処理部21は、制御処理等において他のECU2へのメッセージ送信が必要となった場合に、送信すべきメッセージをCANコントローラ24へ与えて、このメッセージの送信を指示する。また本実施の形態において処理部21は、受信したメッセージの送信周期を算出する処理を行う。
【0034】
記憶部22は、例えばフラッシュメモリ又はEEPROM(Electrically Erasable Programmable Read Only Memory)等の不揮発性のメモリ素子を用いて構成されている。記憶部22は、処理部21が実行する各種のプログラム、及び、処理部21の処理に必要な各種のデータを記憶する。本実施の形態において記憶部22は、処理部21が実行するプログラム22aを記憶している。
【0035】
プログラム22aは、例えばECU2の製造段階において記憶部22に書き込まれてもよい。例えばプログラム22aは、遠隔のサーバ装置などが配信するものをECU2が通信にて取得してもよい。例えばプログラム22aは、メモリカード又は光ディスク等の記録媒体に記録されたプログラム22aをECU2が読み出して記憶部22に記憶してもよい。例えばプログラム22aは、記録媒体に記録されたものを書込装置が読み出してECU2の記憶部22に書き込んでもよい。プログラム22aは、ネットワークを介した配信の態様で提供されてもよく、記録媒体に記録された態様で提供されてもよい。
【0036】
入出力部23は、例えばセンサ5a及びアクチュエータ5b等の装置が信号線等を介して接続される。入出力部23は、センサ5a等の入力装置から入力される信号をサンプリングして取得し、取得した情報を処理部21へ与える。また入出力部23は、アクチュエータ5b等の制御対象装置に対する制御命令を処理部21から与えられた場合に、この制御命令に応じた制御信号を出力する。なおECU2は、入出力の両方を行う必要はなく、入力のみ又は出力のみを行う構成であってよく、更には入出力のいずれも行わない構成であってもよい。
【0037】
CANコントローラ24は、通信線4を介したメッセージの送受信に関する処理を行う。CANコントローラ24は、例えば1つのIC(Integrated Circuit)として構成され得る。CANコントローラ24は、車両1内に配された通信線4に接続され、この通信線4を介して他のECU2との間でCANの通信規格に従うメッセージの送受信を行う。CANコントローラ24は、処理部21から与えられた送信用のメッセージをCANの通信規格に応じた電気信号に変換して通信線4へ出力することにより、他のECU2へのメッセージ送信を行う。CANコントローラ24は、通信線4の電位をサンプリングして取得することにより他のECU2からのメッセージを受信し、受信したメッセージを処理部21へ与える。
【0038】
また本実施の形態に係るCANコントローラ24は、送信処理部24a、遅延時間測定部24b、遅延時間付与部24c、受信処理部24d、受信時刻取得部24e及び遅延時間取得部24f等を備えている。送信処理部24aは、処理部21から送信すべきメッセージ及び送信指示が与えられた場合に、このメッセージを通信線4へ出力することで他のECU2へ送信する処理を行う。また送信処理部24aは、他のECU2のメッセージ送信が同時的に行われた場合にアービトレーション処理を行う。送信処理部24aは、アービトレーション処理により送信権利を獲得した場合に、メッセージ送信を行う。
【0039】
遅延時間測定部24bは、アービトレーション処理により送信権利を獲得できずにメッセージ送信が遅延した時間を測定する処理を行う。遅延時間測定部24bは、カウンタを用いて遅延時間を測定する。遅延時間測定部24bは、例えば処理部21から送信すべきメッセージ及び送信指示が与えられた際にカウンタの計時を開始する。その後、遅延時間測定部24bは、アービトレーション処理により送信権利を獲得した時点のカウンタの値を取得し、この値を遅延時間とする。例えばカウンタの値が100であり、カウンタを動作させるクロックの周期が1μ秒である場合、実際の遅延時間は100μ秒となる。本実施の形態においては、カウンタのクロック周期の値が複数のECU2にとって既知のものであるとし、このカウンタの値を遅延時間として扱う。
【0040】
遅延時間付与部24cは、遅延時間測定部24bが測定した遅延時間(に相当するカウンタの値)を、送信メッセージに付与する処理を行う。遅延時間付与部24cは、例えばCANの通信規格に従うメッセージのデータフィールドの一部に遅延時間を格納する。
【0041】
受信処理部24dは、他のECU2から送信されたメッセージを受信する処理を行う。受信処理部24dは、通信線4の電位を繰り返しサンプリングすることでメッセージを受信し、受信したメッセージを処理部21へ与える。
【0042】
受信時刻取得部24eは、他のECU2からのメッセージを受信処理部24dにて受信した時刻を取得する処理を行う。本実施の形態においてCANコントローラ24は、現在の時刻を計時するタイマ機能を備えている。CANコントローラ24にて計時される時刻は、他の装置と共有される絶対的な時刻であってもよく、自装置のみで用いられる相対的な時刻であってもよい。例えば、タイマ機能はカウンタにより実現され、CANコントローラ24の起動と共にカウンタを動作させることで、起動からの相対的な時間をカウンタで計測することができる。受信時刻取得部24eは、メッセージを受信したタイミングでタイマ機能のカウンタの値を取得することで、メッセージの受信時刻を取得する。
【0043】
遅延時間取得部24fは、受信したメッセージに付与された遅延時間の情報を取得する処理を行う。本実施の形態においてはメッセージのデータフィールドの一部に遅延時間の情報が格納されている。遅延時間取得部24fは、受信したメッセージのデータフィールドの所定箇所から遅延時間の情報を抽出して取得する。
【0044】
CANコントローラ24は、受信処理部24dが受信したメッセージの内容、受信時刻取得部24eが取得した受信時刻、及び、遅延時間取得部24fが取得した遅延時間等の情報を、処理部21へ与える。
【0045】
本実施の形態において処理部21には、送信周期算出部21aが設けられる。送信周期算出部21aは、記憶部22に記憶されたプログラム22aを処理部21が実行することにより実現されるソフトウェア的な機能ブロックである。ただし、送信周期算出部21aをハードウェア的な機能ブロックとして実現してもよい。
【0046】
上述のように、CANコントローラ24はメッセージを受信する都度、このメッセージの内容、受信時刻及び遅延時間等の情報を処理部21へ与える。CANコントローラ24から与えられたこれらの情報に基づいて、処理部21の送信周期算出部21aは、受信したメッセージと前回に受信したメッセージとの時間差を算出することにより、このメッセージの送信周期を算出する処理を行う。このため送信周期算出部21aは、前回に受信したメッセージについての受信時刻及び遅延時間の情報(又は、受信時刻及び遅延時間から算出されるメッセージの送信時刻の情報であってもよい)を記憶している。送信周期算出部21aは、前回の受信メッセージの受信時刻及び遅延時間と、今回の受信メッセージの受信時刻及び遅延時間とを基に、このメッセージの送信周期を算出する。
【0047】
例えば、あるECUαが周期的にメッセージMαを送信し、このメッセージの送信周期がTαであるものとする。即ち、ECUαでは処理部21からCANコントローラ24へ周期Tαで送信メッセージ及び送信指示が与えられている。ECUαが送信するメッセージMαをECUβが受信する場合に、連続してECUβが受信するメッセージMα0、Mα1、…、Mαnの受信時刻の列をtβ={tβ0、tβ1、…、tβn}とする。このときに各受信時刻に対応する遅延時間の列をd={d0、d1、…、dn}とする。
【0048】
この場合に、ECUβが受信時刻tβ0にて受信したメッセージMα0について、ECUαにおいて送信指示がなされた時刻(メッセージの生成時刻)tα0は、以下の(1)式を用いて算出することができる。
tα0 = tβ0-d0 …(1)
【0049】
よって、連続する2つのメッセージMα0、Mα1の送信間隔Tβは、以下の(2)式を用いて算出することができる。
Tβ = (tβ1-d1)-(tβ0-d0) …(2)
【0050】
この(2)式にて算出される送信間隔Tβは、ECUαによるメッセージMの送信周期Tαに相当する。ただしECUα及びECUβのクロック信号の誤差等が存在するため、Tα及びTβにはこれらの誤差による差異が存在する可能性がある。即ち、Tβ≒Tαである。
また送信周期算出部21aはCANコントローラ24が備えてもよく、この場合には送信周期の算出結果をCANコントローラ24が処理部21へ与える。
【0051】
処理部21は、送信周期算出部21aが算出した送信周期に基づいて受信メッセージの正否判定等を行うことができる。なお本実施の形態においては、受信メッセージの送信周期の算出を処理部21が行うが、送信周期の算出はCANコントローラ24が行い、算出結果をCANコントローラ24が処理部21へ与えてもよい。この場合、算出した送信周期に基づく受信メッセージの正否判定等をCANコントローラ24が行ってもよい。
【0052】
<送信周期算出方法>
図3は、本実施の形態に係る車載通信システムにおいてECU2が送信するメッセージの構成を説明するための模式図である。CANの通信規格に従うメッセージには、アービトレーションフィールド、コントロールフィールド、データフィールド、CRC(Cyclic Redundancy Check)フィールド及びACKフィールド等が含まれる。本実施の形態に係るメッセージでは、アービトレーションフィールドにCANIDが格納され、データフィールドの一部に遅延時間の情報が格納される。
【0053】
CANの通信規格では、メッセージのデータフィールドのサイズは最大8バイトである。このうち遅延時間を格納するための領域のサイズは、例えば2バイト~4バイトとすることができる。遅延時間のサイズは、車載通信システムの設計段階等において、例えば最大の遅延時間に基づき、予め決定される。遅延時間を計測するためのカウンタを動作させるクロック信号の周期を例えば2μ秒とすると、2バイトの遅延時間は最大で約130m秒であり、3バイトの遅延時間は最大で約33秒であり、4バイトの遅延時間は最大で約67秒である。
【0054】
CANコントローラ24は、処理部21から与えられたメッセージをMSB(Most Significant Bit)側、即ちアービトレーションフィールド側から順に通信線4へ出力することにより、メッセージの送信を開始する。メッセージの送信開始と共に、CANコントローラ24は、カウンタによる遅延時間の測定を開始する。メッセージの送信開始からアービトレーションフィールドの送信完了までの間にアービトレーション処理が行われ、アービトレーションフィールドの最終ビットの送信を完了した時点でアービトレーション処理の結果、即ちメッセージの送信権利の有無が確定する。アービトレーション処理により送信権利の獲得が確定した場合、CANコントローラ24は、カウンタにより測定される遅延時間を取得し、取得した遅延時間をデータフィールドの所定箇所に格納する。その後、CANコントローラ24は、コントロールフィールド、データフィールド、CRCフィールド及びACKフィールドを順に送信し、メッセージ送信を完了する。
【0055】
図4は、本実施の形態に係るCANコントローラ24が行うメッセージ送信処理の手順を示すフローチャートである。本実施の形態に係るCANコントローラ24の送信処理部24aは、処理部21から送信すべきメッセージと共に送信指示が与えられたか否かを判定する(ステップS1)。送信指示が与えられていない場合(S1:NO)、送信処理部24aは、送信指示が与えられるまで待機する。送信指示が与えられた場合(S1:YES)、CANコントローラ24の遅延時間測定部24bは、カウンタによる遅延時間のカウントを開始する(ステップS2)。
【0056】
送信処理部は、送信メッセージの先頭部分から送信を開始し、まずアービトレーションフィールドの送信処理を行う(ステップS3)。このときに送信処理部24aは、他のECU2との間でアービトレーション処理を行い、アービトレーションフィールドの最終ビットの送信により送信権利の有無が確定する。送信処理部24aは、アービトレーション処理の結果に基づいて、自身のメッセージの送信が可能であるか否かを判定する(ステップS4)。メッセージの送信が不可能である場合(S4:NO)、送信処理部24aは、他のECU2によるメッセージ送信が終了するまで待機し(ステップS5)、ステップS3へ処理を戻して再度のメッセージ送信を試みる。
【0057】
メッセージの送信が可能である場合(S4:YES)、遅延時間測定部24bは、カウンタがカウントした遅延時間を取得する(ステップS6)。CANコントローラ24の遅延時間付与部24cは、ステップS6にて取得した遅延時間を、送信メッセージのデータフィールドの所定箇所に付与する(ステップS7)。送信処理部24aは、送信メッセージのコントロールフィールド以降についての送信処理を行い(ステップS8)、メッセージ送信処理を終了する。
【0058】
図5及び
図6は、本実施の形態に係る送信周期算出方法を説明するための模式図である。
図5には、1つのメッセージについての時刻(時点)及び時間の関係を図示している。
図5に示す例では、CANコントローラ24が処理部21から送信指示を与えられてメッセージの送信を最初に試みた時点を送信開始の時刻t0としている。本例では、このメッセージの送信は他のECU2のメッセージ送信により待機させられ、その後の時刻t1にてメッセージの再送信が試みられている。このメッセージはアービトレーションフィールドの最終ビットを送信した時刻t2にて送信権利が確定し、この時点での遅延時間Dがメッセージのデータフィールドの所定箇所に付与される。CANコントローラ24は、メッセージの残りの部分を送信し、時刻t3にてメッセージの送信を完了する。その後、メッセージの送信開始時刻t0からこのメッセージの送信周期Tが経過した時刻t4にて、CANコントローラ24は、次のメッセージの送信を試みる。
【0059】
このメッセージを受信するECU2のCANコントローラ24は、アービトレーション処理によりこのメッセージの送信が確定した時刻t2を、このメッセージの受信時刻とする。CANコントローラ24は、その後の時刻t3にてメッセージの受信を完了し、受信メッセージのデータフィールドの所定箇所から遅延時間Dを取得する。CANコントローラ24は、メッセージの受信時刻及び遅延時間の情報を処理部21へ与える。処理部21は、メッセージの受信時刻t2から遅延時間Dを遡った時刻t0をこのメッセージの送信時刻t0として算出することができる。処理部21は、CANコントローラ24がメッセージを受信する都度、同様にしてメッセージの送信時刻を算出し、時系列的に連続する2つの受信メッセージについて送信時刻の時間差を算出することで、このメッセージの送信周期Tを算出することができる。
【0060】
なお、送信側のECU2のCANコントローラ24がメッセージに付与する遅延時間Dは、送信するメッセージの長さを事前に計算し、このメッセージの送信完了の時刻t3までの時間、即ち(t3-t0)に相当する時間としてもよい。この場合、受信側のECU2は、メッセージの受信完了の時点をメッセージの受信時刻とする。
【0061】
図6には、4つのメッセージM0~M3について、受信時刻及び遅延時間の例が示されている。なお本図における受信時刻及び遅延時間等は、メッセージを受信したECU2のCANコントローラ24が備えるタイマ機能のカウンタにより計時されたカウンタ値を用いて示されている。例えばメッセージM0は、受信時刻1100にて受信され、遅延時間として100が付されている。同様に、メッセージM1は、受信時刻2100にて受信され、遅延時間として100が付されている。メッセージM2は、受信時刻3210にて受信され、遅延時間として210が付されている。メッセージM3は、受信時刻4175にて受信され、遅延時間として175が付されている。
【0062】
メッセージを受信したECU2は、メッセージの受信時刻から遅延時間だけ遡った時刻を送信時刻として算出することができる。本例では、メッセージM0の送信時刻は1000であり、メッセージM1の送信時刻は2000であり、メッセージM2の送信時刻は3000であり、メッセージM3の送信時刻は4000である。ECU2は、時系列的に連続する2つのメッセージの送信時刻の時間差を算出する。本例では、メッセージM0及びM1の送信時刻の時間差は1000であり、メッセージM1及びM2の送信時刻の時間差は1000であり、メッセージM2及びM3の送信時刻の時間差は1000である。よってECU2は、このメッセージの送信周期が1000であると判定することができる。
【0063】
図7は、本実施の形態に係るECU2が行う送信周期算出処理の手順を示すフローチャートである。本実施の形態に係るECU2のCANコントローラ24の受信処理部24dは、通信線4に対する他のECU2のメッセージ送信の有無を判定する(ステップS21)。メッセージが送信されていない場合(S21:NO)、受信処理部24dは、他のECU2がメッセージを送信するまで待機する。
【0064】
他のECU2によるメッセージが送信された場合(S21:YES)、CANコントローラ24の受信時刻取得部24eは、CANコントローラ24のタイマ機能に基づいて、このメッセージの受信時刻を取得する(ステップS22)。このときに受信時刻取得部24eは、このメッセージのアービトレーションフィールドまでの受信を完了した時点を、受信時刻として取得する。その後、CANコントローラ24の遅延時間取得部24fは、受信したメッセージのデータフィールドの所定箇所に付与された遅延時間を取得する(ステップS23)。CANコントローラ24が取得した受信時刻及び遅延時間の情報は、処理部21へ与えられる。処理部21の送信周期算出部21aは、前回に受信したメッセージについて記憶した受信時刻及び遅延時間の情報を読み出す(ステップS24)。送信周期算出部21aは、前回の受信メッセージの受信時刻及び遅延時間と、今回の受信メッセージの受信時刻及び遅延時間とに基づいて、このメッセージの送信周期を算出する(ステップS25)。
【0065】
処理部21は、ステップS25にて算出した送信周期が正しい送信周期であるか否かを判定する(ステップS26)。例えば処理部21は、予めメッセージのCANIDに対して正当な送信周期が定められたテーブル等の情報を有しており、算出した送信周期がテーブル等に記憶された正当な送信周期と一致するか否か、又は、算出した送信周期と正当な送信周期との差が閾値内であるか否か等を判定することにより、算出した送信周期が正当なものであるか否かを判定することができる。また例えば処理部21は、以前に算出した送信周期と今回に算出した送信周期とを比較し、両送信周期の差が閾値内であるか否かを判定することにより、送信周期が正当なものであるか否かを判定することができる。送信周期の正否判定は、どのような方法で行われてもよい。
【0066】
処理部21は、受信メッセージの送信周期が正しい送信周期であると判定した場合(S26:YES)、このメッセージの受信処理を行い(ステップS27)、受信したメッセージの内容に応じた種々の処理を行う。また処理部21は、今回に受信したメッセージについて受信時刻及び遅延時間の情報を記憶し(ステップS28)、処理を終了する。受信時刻及び遅延時間の記憶は、記憶部22又は処理部21の内部にあるレジスタ等の記憶領域を用いて行われる。
【0067】
また処理部21は、受信メッセージの送信周期が正しい送信周期ではないと判定した場合(S26:NO)、このメッセージを破棄する処理を行い(ステップS29)、処理を終了する。メッセージの破棄は、例えば処理部21が受信メッセージを用いた処理を行わないことにより実現される。なお送信周期の算出及び判定等をCANコントローラ24が行う構成の場合には、送信周期が正しくないと判定したメッセージの受信が完了する前に、CANコントローラ24がエラーフレームを通信線4に対して出力することにより、このメッセージが他のECU2にて受信されることを阻止してもよい。
【0068】
なお本フローチャートにおいては、送信周期が正しくないと判定したメッセージは不正なメッセージとして扱っているが、これに限るものではない。例えば送信周期が正しくないと判定したメッセージを、イベントメッセージ等の正当な非周期メッセージとして扱ってもよい。
【0069】
<検証実験>
図8は、本実施の形態に係る送信周期算出処理の検証実験の方法を説明するための模式図である。本実施の形態に係る送信周期算出処理の検証実験には、PC(Personal Computer)101、検証用ボード102、負荷生成装置103及び計測装置104が用いられている。PC101は、汎用のコンピュータであり、負荷生成装置103の動作を制御するソフトウェア、及び、計測装置104の計測結果を取得するソフトウェア等がインストールされている。検証用ボード102は、本実施の形態に係るECU2の機能をFPGA(Field Programmable Gate Array)にて実装したものである。本検証では、ALTERA社のFPGAが搭載された「DE2-115」を検証用ボード102として利用している。検証用ボード102は、CANバスに相当する通信線4に接続され、検証対象のメッセージ、即ち遅延時間を付与したメッセージを所定周期で送信する。
【0070】
負荷生成装置103は、検証用ボード102が通信線4に対して送信する検証対象メッセージを阻害するメッセージを送信するための装置である。検証対象メッセージを阻害するメッセージとは、通信線4に対して他のECU2が送信するメッセージに相当し、アービトレーション処理により検証対象メッセージを遅延させるメッセージである。負荷生成装置103はPC101に接続され、通信線4に対するメッセージ送信の頻度等はPC101により制御される。本検証では、PEAK System社の「PCAN-USB」を負荷生成装置103として利用している。
【0071】
計測装置104は、通信線4に対して送信されるメッセージを受信し、受信したメッセージの内容及び受信時刻等の情報をPC101へ与える装置である。本検証では、Vector社の「VN1630A」を計測装置104として用い、同社のソフトウェア「CANoe」をPC101にて動作させて検証結果を取得している。本検証における検証用ボード102が本実施の形態に係る車載通信システムにおける送信側のECU2に相当し、計測装置104及びPC101が受信側のECU2に相当する。本実施の形態に係るECU2の送信周期算出の演算は、計測装置104から与えられる情報に基づいてPC101にて行った。
【0072】
図9は、本実施の形態に係る送信周期算出処理の検証実験の結果を示すグラフである。本検証では、検証用ボード102からの周期的なメッセージ送信を1000回行い、このメッセージを受信してPC101にて送信周期を算出した。なお負荷生成装置103は、通信線4の占有率が50%となるように負荷となるメッセージを送信している。送信周期の算出は、メッセージに付与された遅延時間を利用する上述の本実施の形態に係る送信周期算出方法と、遅延時間を利用せずに受信時刻の時間差のみで送信周期を算出する従来方法との2つ7の方法で行った。
図9に示すグラフは、横軸を受信メッセージの受信順序とし、縦軸を受信メッセージに基づいて算出された送信周期[秒]として検証実験の結果を示したものである。本実施の形態に係る送信周期算出方法による送信周期の算出結果を黒丸とし、従来方式による算出結果を白丸としてグラフ上に示してある。
【0073】
図示の検証実験の結果によれば、本方式では算出される送信周期が0.9987又は0.9988のいずれかに集約されているが、従来方式では算出される送信周期が0.9982から0.9992の間で広範囲にわたってばらついている。なお、本方式の結果が2つの送信周期に分かれているのは、検証実験に用いた検証用ボード102によるメッセージの送信タイミングのバラツキに起因するものである。検証用ボード102は、送信周期が0.9987又は0.9988となる2つのタイミングでメッセージを送信している。よって本方式により算出されるメッセージの送信周期は、算出結果のバラツキが少なく、送信元の送信周期が精度よく算出されたものとなっている。
【0074】
<まとめ>
以上の構成の本実施の形態に係る車載通信システムは、送信側のECU2がメッセージの送信を最初に試みた時点から、このメッセージを実際に送信した時点までの遅延時間を、このメッセージに付与する。送信側のECU2から送信されたメッセージは、共通の通信線4に接続された受信側のECU2にて受信される。受信側のECU2は、受信したメッセージの受信時刻を取得すると共に、受信したメッセージに付与された遅延時間を取得する。受信側のECU2は、時系列的に前後して受信した2つのメッセージについてそれぞれ受信時刻及び遅延時間を取得し、取得したこれらの情報に基づいてメッセージの送信周期を算出する。送信側のECU2が遅延時間をメッセージに付与して送信し、受信側のECU2がメッセージから遅延時間を取得して送信周期を算出することにより、送信側のECU2にてアービトレーション処理等により生じたメッセージ送信の遅延を受信側のECU2が考慮してメッセージの送信周期を算出することができる。よって受信側のECU2は、メッセージの送信周期を精度よく算出することができる。
【0075】
また本実施の形態においては、メッセージの受信時刻から遅延時間だけ遡った時刻が、このメッセージの送信を最初に試みた時刻、即ちメッセージの送信時刻となる。そこで受信側のECU2は、先に受信したメッセージについて受信時刻から遅延時間だけ遡った時刻と、後に受信したメッセージについて受信時刻から遅延時間だけ遡った時刻との時間差を算出し、この時間差をメッセージの送信周期とする。送信側のECU2がメッセージの送信を最初に試みた時刻に基づいて、受信側のECU2がメッセージの送信周期を算出することができるため、メッセージの送信周期を精度よく算出することができる。
【0076】
また本実施の形態においては、算出したメッセージの送信周期に基づいて、受信側のECU2は、受信したメッセージが正当な送信周期で周期的に送信されたものであるか、又は、不当な送信周期で非周期的に送信されたものであるかを判定する。受信側のECU2は、例えばメッセージを受信する都度、1つ前に受信したメッセージとの送信時刻の時間差を算出し、算出した時間差が以前に算出した送信周期に対して所定範囲内に収まる場合、受信メッセージが周期的に送信されるものであると判定することができる。これに対して、算出した時間差が送信周期に対して所定範囲を超えて異なる値である場合、受信側のECU2は、受信したメッセージが非周期的に送信されるものであると判定することができる。非周期と判定されるメッセージは、例えばイベント駆動により送信されるメッセージ、又は、不正な装置による不正なメッセージ等の可能性がある。
【0077】
なお本実施の形態においては、ECU2がCANの通信規格に従うメッセージの送受信を行う構成としたが、これに限るものではなく、例えばCAN-FD(CAN with Flexible Data rate)の通信規格に従うメッセージの送受信を行ってもよい。またECU2は、CANとは異なる通信規格に従うメッセージの送受信を行う構成であってもよい。また本実施の形態においてCANコントローラ24が備える送信処理部24a~送信周期算出部21aが行う処理の一部又は全部は、ECU2の処理部21にて行われてもよい。また
図7のフローチャートに示した処理の一部又は全部は、CANコントローラ24が行うのではなく、処理部21が行ってもよい。またCANコントローラ24は、受信メッセージの受信時刻及び遅延時間を記憶しておく構成としたが、これに限るものではなく、受信時刻及び遅延時間を基に算出されたメッセージの送信時刻を記憶しておく構成であってもよい。
【0078】
<実施の形態2>
図10は、実施の形態2に係る車載通信システムの構成を示すブロック図である。実施の形態2に係る車載通信システムは、メッセージに遅延時間を付す機能を有するECU2Aと、メッセージに付された遅延時間に基づく送信周期を算出する機能を有するECU2Cと、これらの両機能を有さないECU2Bとが混在するシステムである。
【0079】
ECU2Aは、上述の方法により、自身が送信するメッセージに対して遅延時間を付与する。ただしECU2Aは、メッセージの受信に関しては送信周期を算出する処理を行わず、通常のCANの通信規格に従うメッセージ受信を行うのみである。ECU2Bは、上述の遅延時間の付与及び送信周期の算出等の処理を行わず、通常のCANの通信規格に従ってメッセージの送受信を行う。ECU2Bは、ECU2Aが送信する遅延時間が付与されたメッセージについて、これを通常のCANの通信規格に従うメッセージとして扱えばよい。ECU2Cは、上述の方法により、メッセージに付与された遅延時間を用いて送信周期を算出する処理を行う。ただしECU2Cは、自身が送信するメッセージに対して遅延時間を付与する処理は行わない。
【0080】
実施の形態2に係る車載通信システムでは、遅延時間が付与されたメッセージと、遅延時間が付与されていないメッセージとが混在することとなる。このためECU2Cは、メッセージを受信する都度、遅延時間が付与されたメッセージであるか又は遅延時間が付与されていないメッセージであるかを判定する必要がある。実施の形態2に係るECU2Cは、メッセージに付されるCANIDと、このメッセージに遅延時間が付与されるか否かを示す情報とが対応付けられたテーブルを予め記憶している。ECU2Cは、受信したメッセージのCANIDを取得してテーブルを参照することにより、この受信メッセージに遅延時間が付されているか否かを判定する。遅延時間が付与されたメッセージに対して、ECU2Cは、送信周期を算出する処理を行う。
【0081】
以上の構成の実施の形態2に係る車載通信システムは、共通の通信線4に接続される複数のECU2には、メッセージに遅延時間を付与して送信するECU2Aと、遅延時間の付与を行わずにメッセージを送信するECU2B及び2Cとが含まれる。即ち、実施の形態2に係る車載通信システムでは、遅延時間が付与されたメッセージと、遅延時間が付与されていないメッセージとが混在する。遅延時間を付与しないメッセージを送受信する従来構成のCANの車載通信システムに対して、メッセージの送信周期を精度よく判定することが求められるECU2Aについてのみ遅延時間を付与する機能を追加すればよいため、遅延時間を用いた送信周期の判定を行う構成を、従来の車載通信システムに対して導入することを容易化できる。
【0082】
また実施の形態2に係る車載通信システムでは、ECU2A~2Cが送受信するメッセージには、このメッセージを識別するためのCANIDが付されている。メッセージを受信したECU2Cは、受信したメッセージのCANIDに基づいて、このメッセージに遅延時間が付与されているか否かを判定する。これにより、遅延時間が付与されたメッセージと、遅延時間が付与されていないメッセージとが混在する場合であっても、受信側のECU2Cがメッセージの送信周期の算出を行うことが可能となる。
【0083】
なお実施の形態2に係る車載通信システムは、3種のECU2A~2Cが混在する構成であるが、これ以外の構成のECUが更に混在してもよい。例えば、遅延時間を付与してメッセージを送信する機能と、メッセージに付された遅延時間を用いて送信周期を算出する機能とを備えるECUが更に混在してもよい。また、ECU2A、2Cと同様のECUは、車載通信システムに複数が含まれていてよい。またECU2Cは、予め記憶したテーブルを参照して受信メッセージに遅延時間が付されているか否かを判定する構成としたが、これに限るものではない。例えばメッセージ中に遅延時間の有無を示すフラグ等の情報を含めてもよい。
【0084】
車載通信システムにおける各装置は、マイクロプロセッサ、ROM及びRAM等を含んで構成されるコンピュータを備える。マイクロプロセッサ等の演算処理部は、
図4及び
図7に示すような、シーケンス図又はフローチャートの各ステップの一部又は全部を含むコンピュータプログラムを、ROM、RAM等の記憶部からそれぞれ読み出して実行してよい。これら複数の装置のコンピュータプログラムは、それぞれ、外部のサーバ装置等からインストールすることができる。また、これら複数の装置のコンピュータプログラムは、それぞれ、CD-ROM、DVD-ROM、半導体メモリ等の記録媒体に格納された状態で流通する。
【0085】
今回開示された実施形態はすべての点で例示であって、制限的なものではないと考えられるべきである。本開示の範囲は、上記した意味ではなく、特許請求の範囲によって示され、特許請求の範囲と均等の意味及び範囲内でのすべての変更が含まれることが意図される。
【符号の説明】
【0086】
1 車両
2,2A,2B,2C ECU(車載通信装置)
4 通信線
5a センサ
5b アクチュエータ
21 処理部
21a 送信周期算出部(算出部)
22 記憶部
22a プログラム
23 入出力部
24 CANコントローラ(周期メッセージ判定部、付与判定部)
24a 送信処理部
24b 遅延時間測定部
24c 遅延時間付与部(付与部)
24d 受信処理部
24e 受信時刻取得部(受信時点取得部)
24f 遅延時間取得部