JP5712783B2 - 電子制御ユニット、車載ネットワーク、データ送信方法 - Google Patents

電子制御ユニット、車載ネットワーク、データ送信方法 Download PDF

Info

Publication number
JP5712783B2
JP5712783B2 JP2011108507A JP2011108507A JP5712783B2 JP 5712783 B2 JP5712783 B2 JP 5712783B2 JP 2011108507 A JP2011108507 A JP 2011108507A JP 2011108507 A JP2011108507 A JP 2011108507A JP 5712783 B2 JP5712783 B2 JP 5712783B2
Authority
JP
Japan
Prior art keywords
communication data
event
transmission
transmission timing
cycle
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2011108507A
Other languages
English (en)
Other versions
JP2012239143A (ja
Inventor
博哉 安藤
博哉 安藤
雄介 佐藤
雄介 佐藤
洋志 長尾
洋志 長尾
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Toyota Motor Corp
Original Assignee
Toyota Motor Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Toyota Motor Corp filed Critical Toyota Motor Corp
Priority to JP2011108507A priority Critical patent/JP5712783B2/ja
Publication of JP2012239143A publication Critical patent/JP2012239143A/ja
Application granted granted Critical
Publication of JP5712783B2 publication Critical patent/JP5712783B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Small-Scale Networks (AREA)

Description

本発明は、複数の通信データを送信する電子制御ユニットに関し、特に、通信データの衝突を回避できる電子制御ユニット等に関する。
車両には車載装置を制御するための各種の電子制御ユニット(以下、ECUという)が搭載されており、各ECUは互いに通信することで種々の処理を実行している。ECU間の通信の通信規格としてCANプロトコルやFlexRayプロトコル等が知られているが、いずれも各ECUがバスを共有する時分割多重通信である。このため、CANプロトコルでは、CANバスの使用権を調停するためにCSMA/CDを採用して、同時に複数のECUが送信を開始した場合、アービトレーションフィールドのIDの優先度が最も高いECUだけがCANバスを使って通信データを送信することができる。優先度の低いECUは所定時間をおいて送信する。
また、複数のECUが送信する場合だけでなく、1つのECUが複数の通信データを送信する場合も少なくない。例えば、複数のECUの機能が1つに統合されたECUでは、複数の通信データをCANバスに出力する必要があり、ECU内で共有リソースの使用権の調停などが必要になる送信タイミングの衝突が発生することがある。
従来から送信タイミングの衝突を低減する技術が考案されている(例えば、特許文献1参照。)。特許文献1には、各ECUから送信される周期的メッセージの送信時間を集計して、各ECUから送信されるメッセージが他のECUから送信されるメッセージの送信開始時点から送信終了時点までの時間と重ならないように送信タイミングを調整する車両用通信制御ユニットが開示されている。
特開2007−184833号公報
しかしながら、特許文献1に記載された車両用通信制御ユニットでは、イベントの発生による送信タイミングのずれに対応できないという問題がある。また、特許文献1では、一台のECU内部の送信タイミングの衝突について考慮されてない。
図1は、送信タイミングのずれについて説明するための図の一例である。一例として、ECUは3つの通信データA〜Cを周期的に送信するものとし、通信データAは100ミリ秒周期、通信データBは200ミリ秒周期、通信データCは300ミリ秒周期であるとする。
(1)このようにあるECUが周期的に異なる通信データを送信する場合、周期の最小公倍数が経過するタイミングで内部的に送信タイミングが衝突してしまう。例えば、通信データBの周期は通信データAの周期の2倍、通信データCの周期は通信データAの周期の3倍となっているので、通信データAにとっては200ミリ秒毎と300ミリ秒毎に送信タイミングが衝突する。
このため、ECUは、例えば、周期の大きい方の通信データの送信タイミングをオフセットする。ECUは、周期Bの送信タイミングが到来してからオフセット時間遅らせて通信データBを送信し、周期Cの送信タイミングが到来してからオフセット時間遅らせて通信データCを送信する。
(2)次に、ECUになんらかのイベントが発生し、100ms周期と異なるタイミング(最後に周期的に通信データAを送信してからxミリ秒後)に通信データA´を送信したとする。この場合、ECUは通信データA´を送信したタイミングで時間の計測をゼロにするので、通信データA´の送信タイミングから100ms周期の通信データAの送信を再開する。
しかし、このような通信データAの周期の起点のずれは、通信データAと、通信データB又Cとの送信タイミングの衝突の可能性を生じさせる。図では、通信データAの送信タイミングとオフセット後の通信データCの送信タイミングが衝突している。
したがって、ECUにイベントが発生し、イベントによりいずれかの通信データの送信タイミングがずれると、送信タイミングが衝突するおそれが生じてしまう。
本発明は、上記課題に鑑み、通信データを周期的に送信する電子制御ユニットにイベントが生じても、送信タイミングの衝突を回避できる電子制御ユニットを提供することを目的とする。
本発明は、通信データ毎に予め定められた異なる周期で複数の通信データを周期的に送信する電子制御ユニットであって、各通信データが衝突しないオフセット時間を記憶するオフセット時間記憶手段と、通信データの送信を伴うイベントを検出するイベント検出手段と、前記オフセット時間オフセットして各通信データをそれぞれの前記周期で周期的に送信し、前記イベント検出手段がイベントを検出した際にイベント通信データを送信する送信手段と、前記送信手段がイベントの発生によりイベント通信データを送信した場合、イベント通信データと同種の情報が含まれる同種通信データを最後に周期的に送信した送信タイミング、前記同種通信データの前記周期の起点決定する送信タイミング決定手段と、を有し、前記送信手段は、前記イベント通信データを送信した後、前記送信タイミング決定手段が決定した前記周期の起点からイベント発生前と前記周期を変更せずに前記同種通信データの送信を再開する、ことを特徴とする。
通信データを周期的に送信する電子制御ユニットにイベントが生じても、送信タイミングの衝突を回避できる電子制御ユニットを提供することができる。
送信タイミングのずれについて説明するための図の一例である。 電子制御ユニットによる送信タイミングの制御を説明するための図の一例である。 車載ネットワークの概略構成図の一例である。 ECUのハードウェア構成図の一例である。 オフセットの態様のいくつかの例を説明する図の一例である。 ECUの機能ブロック図の一例である。 周期の起点の演算について説明する図の一例である。 イベント発生時に各ECU100が周期の起点を元に戻す手順の一例を示すフローチャート図である。 イベントデータと通信データCの衝突について説明する図の一例である。 イベントデータと通信データCの衝突について説明する図の一例である。 本実施形態の車載ネットワーク200による送信タイミングの制御を説明するための図の一例である。 車載ネットワークの機能ブロック図の一例である。
以下、本発明を実施するための形態について図面を参照しながら説明する。
図2は、本実施形態の電子制御ユニットによる送信タイミングの制御を説明するための図の一例である。電子制御ユニット(以下、ECU:Electronic Control Unit)は通信データA〜Cをそれぞれ周期的に送信している。各通信データの周期は以下のようになっている。
通信データA(100ミリ秒)
通信データB(200ミリ秒)
通信データC(300ミリ秒)
したがって、通信データAと通信データB、通信データAと通信データCが比較的短時間に衝突を繰り返す(通信データBとCについても衝突しうるが、詳しくは後述する)。そこで、ECU100は、通信データBとCの送信タイミングが通信データAと衝突しないように、送信タイミングをオフセットする。オフセット時間については後述する。図では通信データB,Cのオフセット時間をそれぞれオフセット時間B,Cとしている。
ECU100に通信データの送信タイミングを異ならせるイベントが発生したとする。このため、ECU100は、周期Aに基づく通信データAの最後の送信タイミング+xミリ秒で通信データA´(以下、イベントデータという)を送信する。このxミリ秒はイベントの発生タイミングに依存するため不定である。
本実施形態のECU100は、イベントが発生することで通信データAの送信タイミングが元の周期の送信タイミングからずれると、周期の起点を元に戻す。すなわち、ECU100がイベントデータを送信した「送信タイミング+x」ミリ秒から100ミリ秒の周期を刻むのではなく、イベントデータの送信タイミングから「100−x+100」ミリ秒から100ミリ秒の周期を刻む。よって、通信データAの周期の起点は周期を変えることなく元に戻り、他の通信データB、Cの送信タイミングと衝突することを回避できる。
〔構成〕
図3は、車載ネットワーク200の概略構成図の一例を示す。車載ネットワーク200は、ECU100を電気的に接続し、所定のプロトコルに基づき、通信データの送信を可能にしている。図ではECU100が3個接続されているが、2個だけ接続されていてもよいし、4個以上接続されていてもよい。
車載ネットワーク200のプロトコルには、CAN(Controller Area Network)、LIN(Local Interconnect Network)、FrexRay等があるが、バスを共有した時分割多重通信であることが多い。このため、各ECUはプロトコルに従いバスの使用権を得て通信データを送信する。本実施形態では、各ECUはCANプロトコルにより通信するものとする。
ECU_A〜ECU_Cは、例えばボディ系、制御系、情報・AV系等、系統別にゲートウェイで区分されたネットワーク内のECUである。ボディ系であればドアECU、パワーシートECU、ライトECU、エアコンECU、メータECU、制御系であればエンジンECU、ブレーキECU、エアバッグECU、情報・AV系であればナビECU、AV用ECU等がある。ECU_A〜ECU_Cの1つ以上がゲートウェイでもよく、また、ゲートウェイ機能が統合されたECUでもよい。本実施例ではこのうちの1つのECU100による複数の通信データA〜Cの送信タイミングの衝突の回避について説明していることに注意されたい。
図4は、ECU100のハードウェア構成図の一例を示す。ECU100はマイコン50とその他の回路とを有し、その他の回路は主に電源IC21、入出力I/F22、不揮発メモリ23、監視回路24、及び、クロック生成器25である。
また、マイコン50はCPU31、RAM32、ROM33、INTC(割込みコントローラ)34、不揮発メモリ35、DMAC36、及び、ブリッジ37を有する。CPU31は、例えばROM33に記憶されたプログラムを実行しRAM32にデータを書き込み、またRAM32に書き込まれたデータを読み出して演算結果を生成したり、他のECU100と通信するための通信情報を生成する。RAM32はこのようなプログラムの作業メモリとなり、各種のデータが一時的に記憶される。
ROM33にはプログラムが予め記憶されている。また、プログラムはECU100に特有の処理を行うものの他、通信データの衝突を回避するためのプログラムが含まれている。このようなプログラムは通信ソフトと一体に構成されることが多い。INTC34は、入出力I/F22、不図示のタイマ、又は、他のECU等からの割込み要因を調停して、CPU31に割込み要求する。不揮発メモリ35は、フラッシュメモリなどのEEPROMであり省電力モード移行時にデータの退避に使用される。DMAC36は、入出力I/F22からの要求を受け付けて入出力I/F22からRAM32の指定アドレスにデータを転送し、また、CPU31からの要求を受け付けてRAM32の指定アドレスから入出力I/F22にデータを転送する。ブリッジ37は、マイコン内のバス18とマイコン50外のバス26の周波数の違いや電圧の違いを吸収してバス同士を接続する。
電源IC21は、不図示のバッテリから電力供給を受けてマイコン駆動用の電圧・電流を生成する。IGオン時は、ECU内の全ての回路を通常モードで動作させるために必要な大容量の電圧・電流を生成し、IGオフ時は、マイコン50や他の回路の一部を省電力モードに保持するために必要な最小限の電圧・電流を生成する。電源IC21は、通常モードと省電力モードにおいて、予めそれぞれに決められた回路に電力を供給する。
入出力I/F22にはマイコン50が演算に用いる信号を検出する各種のセンサ、マイコン50が制御するアクチュエータやアクチュエータのドライバ回路等が接続されている。CAN通信装置23は、CANプロトコルに従って他のECU等と通信する装置である。
クロック生成器25はマイコン50に動作クロックを供給する。クロック生成器25は、スリープモードになると、クロックを停止するか通常モードよりも低速にし、また、CPU(又は一部)やCAN通信装置23など、通常モードに復帰するための移行条件の成立を検出するための回路以外へのクロック供給を停止して消費電力を抑制する。
監視回路24は、異常を検出するためのウォッチドックタイマ、異常時にマイコン50をリセットして再起動させるためのリセット回路等を有する。
〔オフセットの態様〕
まず、オフセット対象の通信データについて説明する。1つのECU100はイグニッションオンやウェイクアップによる起動後、周期的な通信データの送信を開始する。このため、各通信データの周期の起点は“ECUの起動時”という共通のタイミングになる。複数の通信データの周期的な送信の起点が共通なため、ある通信データの送信タイミングは他の通信データと周期の最小公倍数の時間が経過する毎に衝突する。したがって、理論上は、1つの通信データを除き、全ての通信データにオフセットを設ける必要が生じてしまう。しかし、ECU100に負荷を掛けるのは頻繁な衝突であるので、例えば開発者は以下のようにオフセット対象の通信データを選別することができる。
例えば、周期の最小公倍数が所定値未満の場合、頻繁に衝突が発生することになるので、最小公倍数が所定値未満の周期の通信データのいずれか一方をオフセットすると決定すればよい。例えば、通信データAの周期が100ミリ秒、通信データBの周期が200ミリ秒の場合、最小公倍数は200ミリ秒、通信データAの周期が100ミリ秒、通信データCの周期が300ミリ秒の場合、最小公倍数は300ミリ秒、通信データAの周期が100ミリ秒、通信データDの周期が150ミリ秒の場合、最小公倍数は300ミリ秒、通信データAの周期が100ミリ秒、通信データEの周期が130ミリ秒の場合、最小公倍数は1300ミリ秒である。上限の最小公倍数を例えば1000ミリ秒としておけば、通信データB〜Dの送信タイミングがオフセットされることになる。
図5は、オフセットの態様のいくつかの例を説明する図の一例である。図5(a)では、周期の長い通信データBが、本来の周期の送信タイミングからオフセット時間Bオフセットされた時刻に送信されている。周期の短い通信データAは優先順位が高いことが多いので、周期の長い通信データBの送信タイミングをオフセットすることで、通信データAの送信タイミングをオフセットすることを防止できる。また、通信データA、Bを受信する他のECUも、周期が長い通信データBについては受信タイミングのずれを比較的許容しやすいので、オフセットがもたらす影響を抑制しやすい。
図5(b)では、ECU100は、周期の短い通信データAを本来の周期の送信タイミングからオフセット時間Aオフセットした時刻に送信している。何らかの理由で、通信データB又は通信データCの送信タイミングをオフセットしにくい場合、周期の短い通信データAの送信タイミングをオフセットすることも有効である。
図5(c)では、複数の通信データが本来の周期の送信タイミングからオフセット時間オフセットされた時刻に通信データを送信している。通信データBのオフセット時間はオフセット時間B、通信データCのオフセット時間はオフセット時間Cである。図ではオフセット時間B<オフセット時間Cであるが、オフセット時間B>オフセット時間Cとすることも可能である。しかし、この場合も、他のECUにとって、周期が長い通信データCの受信タイミングのずれは比較的許容しやすいので、オフセット時間B<オフセット時間Cとする方が、オフセットがもたらす影響を抑制しやすい。
オフセット時間は、通信データのバス使用時間を下限に、周期の例えば十分の一を上限とする。すなわち必要最小限とすればよい。通信データを受信して利用するECU100にとって、オフセット時間は短い方が好ましいためである。
バス使用時間は、プロトコルにしたがって算出することができる。CANの場合、通信データはフレームという単位で送信され、1つのフレーム(データフレームの場合)は、SoF、CANID、RTR、コントロールフィールド、データフィールド、CRC、ACK、EoFの各フィールドを有する。SoFはリセッシブ(High)からドミナント(Low)に変化したタイミングであり、EOFは7ビット長のリセッシブ固定である。したがって、SoFからEoFまでのビット数をカウントすることで、通信データのバス使用時間を計測できる。データフィールド以外の各フィールドのビット長は固定であるが、データフィールドは0〜64ビットである。このため、バス使用時間を算出する場合、通信データの1フレームの最大長を想定して算出してもよいし、オフセットされる通信データ毎にデータフィールドのビット長を求め個別に算出してもよい。
例えば、CANの通信速度を500kbpsとすれば、1ビットの長さは1/500000=2マイクロ秒である。したがって、データフィールドを64ビットとするか又は通信データAのデータフィールドのビット長から1フレーム全体のビット長を求め、2マイクロ秒を乗じることで、バス使用時間を算出できる。なお、実際には通信処理のオーバーヘッドを考慮して数ミリ秒(例えば1〜10秒程度)を1つのオフセット時間とする。以下、説明のため、一単位のオフセット時間は固定であるとする。
なお、各通信データのオフセット時間はプログラムにより決定することができ、このプログラムの実行は車両に搭載する前に完了させることができる。しかしながら、車載されたECU100が計算することも可能であるので、説明上はECU100が決定するとして説明する。
・図5(a)の場合、ECU100は、通信データBの送信タイミングを1オフセット時間オフセットする。
・図5(b)の場合、ECU100は、通信データAの送信タイミングを1オフセット時間オフセットする。
・図5(c)の場合、ECU100は送信周期の短い順に(優先順位の高い順に)通信タイミングをオフセットする。
図5(c)を例にオフセット時間の決定について詳細に説明する。
(i)まず、ECU100は周期的に送信する全ての通信データの周期を取得し、最も周期の短い通信データAを固定して他の通信データB,Cとの組における最小公倍数を計算する。ECU100は、通信データAは最も周期が短いので、通信データAはオフセットしない。通信データAとBの周期の最小公倍数は200ミリ秒、通信データAとCの周期の最小公倍数は300ミリ秒である。したがって、例えば通信データBとCがオフセットの対象となる。
(ii)次に、ECU100は通信データBの送信タイミングを1オフセット時間オフセットする。
(iii)次に、ECU100は、通信データCの送信タイミングを1オフセット時間オフセットする。
(iv)通信データBとCを同じ時間オフセットしたので、通信データBとCは送信タイミングが衝突したままである。このため、ECU100は、次に周期の短い通信データBを固定して、他の通信データCとの組における最小公倍数を計算する。最小公倍数は600ミリ秒である。通信データBは最も周期が短いので、通信データBはオフセットしない。
(v)ECU100は、通信データCの送信タイミングを1オフセット時間オフセットする。したがって、通信データCは合計2オフセット時間オフセットされる。
このような処理を周期の短い順に繰り返すことで、周期の短い通信データを優先しながら、各通信データのオフセット時間を決定することができる。
〔機能ブロック図〕
図6は、ECU100の機能ブロック図の一例である。各ECU100は、周期毎送信部11、イベント検出部12、送信周期演算部13、及び、オフセット時間保持部14を有する。各機能は、CPU31がプログラムを実行すると共にハードウェアと協働することで実現される。
周期毎送信部11は、自ECU100が他のECU100に提供すべき通信データを周期的に送信する。周期毎送信部11は、通信データ毎に決まっている周期で通信データ毎に独立に通信データを送信する。すなわち、周期毎送信部11は、通信データAを送信するとソフト的なタイマをリセットし100ミリ秒の経過毎に、通信データAの送信とタイマのリセットを繰り返す。通信データBについては、通信データBを送信するとソフト的なタイマをリセットし、200+オフセット時間Bミリ秒の経過毎に、通信データBの送信とタイマのリセットを繰り返す。通信データCについては、通信データCを送信するとソフト的なタイマをリセットし、300+オフセット時間Cミリ秒の経過毎に、通信データCの送信とタイマのリセットを繰り返す。
なお、通信データA〜Cの内容は値は変化しうるがある決まった物理量であり、イベントの発生により送信されるイベントデータも物理量としては通信データA〜Cのいずれかになる。通信データの内容は、例えば、車速データ、時刻データ、等である。周期毎送信部11は、例えば、IG(イグニション)オン又はウェイクアップ端子の立ち上がりを起点に周期的な通信データの送信を開始する。
周期の起点は、複数の通信データに共通である。共通であるので周期の最小公倍数で送信タイミングの衝突が生じ得るが、本実施例では送信タイミングにオフセットを設けているので衝突することはない。また、例えば、周期の起点をランダムにずらすと、バスの空き時間が細切れになるが、周期の起点を複数のECU100に共通にして、かつ、送信タイミングにオフセットを設けることで、バスの使用効率を向上させることができる。
なお、周期毎送信部11は周期的に通信データを送信する度に、周期の起点の再設定のため、送信タイミングを送信周期演算部13に送出する。この送信タイミングは、例えば、時刻でもよいし、ソフト的又はハード的なタイマのカウント値でもよい。
オフセット時間保持部14は、上記のように決定された通信データ毎のオフセット時間を保持している。オフセット時間保持部14は、保持しているオフセット時間を周期毎送信部11に送出する。これにより、周期毎送信部11は、予め定められた周期が到来してからオフセット時間待機した後、通信データを送信できる。
イベント検出部12は、例えば入出力I/Fなどの割り込みによりECU100に生じたイベントを検出して、イベント内容を周期毎送信部11に通知する。
周期毎送信部11は、周期的に送信する通信データ以外に、発生したイベントに応じて、イベントデータを不定期に送信する。イベントには様々なものがありまたECU100によっても異なるが、例えば、運転者の各種の操作(ブレーキペダルの踏み込み・踏み戻し、アクセルペダルの踏み込み・踏み戻し、シフトポジションの変更、ステアリングの操作…)、スマートキーの認証、ドアのロック・アンロックなどがある。
イベントデータは、通信データA、通信データB、通信データCのいずれかと同じ物理量(以下、同種という)の場合と、通信データA〜Cと異なる場合があるが、本実施例では同種の場合を扱う。例えば、通信データAがアクセル開度の場合、ユーザがアクセルペダルを操作したためECU100がアクセル開度をイベントデータとして送信するような場合、通信データAとイベントデータは同種になる。
なお、周期毎送信部11はイベントデータを送信すると、周期の起点の再設定のため、送信タイミング(上記のxミリ秒)を送信周期演算部13に送出する。
そして、送信周期演算部13は周期毎送信部11がイベントデータを送信したことで、自ECU100の通信データの送信タイミングが変更しないように周期の起点を演算する。
図7は、周期の起点の演算について説明する図の一例である。周期毎送信部11が最後に通信データAを送信した送信タイミングと、周期毎送信部11が通信データAと同種のイベントデータを送信した送信タイミングの時間差がxミリ秒であったとする。この場合、次回の周期的な送信の送信タイミングはイベントデータの送信から「100−x」ミリ秒経過した時である。
しかし、xミリ秒が送信周期である100ミリ秒に近い場合(例えば、95ミリ秒以上)に、例えばバッファに記憶されて送信待ちになっているイベントデータが周期的な送信用の通信データに上書きされるおそれがある。このため、周期毎送信部11はイベントデータの送信から「100−x」ミリ秒経時の周期の到来時に通信データAを送信しない。すなわち、周期毎送信部11は周期の到来を1回無視する(飛ばす)。
よって、次回の送信タイミングは、「100−x+100ミリ秒」である。すなわち、送信周期演算部13は、「100−x+100ミリ秒」を周期の次の起点として、周期毎送信部11に通知する。イベントデータの送信直後に周期毎送信部11はタイマをリセットしているので、周期毎送信部11はイベントデータの送信時から「100−x+100ミリ秒」経過後に周期的な通信データAの送信を再開できる。例えば、xが50ミリ秒とすると、「100−50+100ミリ秒=150ミリ秒」となるので、これが次回の送信タイミングであると共に周期の起点となる。なお、イベントデータが通信データB,Cと同種の場合も同様であるが、通信データB,Cの場合はそれぞれオフセット時間B、Cオフセットされる。
〔動作手順〕
図8は、イベント発生時に各ECU100が周期の起点を元に戻す手順の一例を示すフローチャート図である。図8の手順は、イグニッションオンなどによりECU100が起動するとスタートする。
起動後、オフセット時間保持部は周期毎送信部11に通信データA(オフセット時間はゼロ)、通信データB、Cのオフセット時間を設定する(S10、S20)。
イベント検出部12はイベントが発生したか否かを監視している(S30、S40、S50)。イベントが発生しない場合(S30〜50のNo)。周期毎送信部11は通信データAをオフセットせずに周期的に送信し、通信データBをオフセット時間Bオフセットして周期的に送信し、通信データCをオフセット時間Cオフセットして周期的に送信する(S70)。
イベント検出部12がイベントの発生を検出した場合(S30〜50のYes)、周期毎送信部11はイベントに応じたイベントデータを送信する(S60)。
そして、送信周期演算部13は周期毎送信部11がイベントデータを送信すると、周期の起点を演算して周期毎送信部11に通知する(S80)。周期毎送信部11は、通知された周期の起点に、必要であれば(通信データB,Cの場合)オフセット時間を加えて周期的に通信データを送信する。
以上説明したように、本実施例のECU100は、イベントが発生しても、周期に基づく送信タイミングを変更せずに周期的な通信データの送信を再開することができる。衝突を検知して送信タイミングをずらすことがないので、衝突の頻度を抑制できECU100の負荷が増大することを防止できる。
実施例1では、ECU100がイベントに応じてイベントデータを送信できると説明した。この場合、イベントデータが通信データAと同種であれば、イベントデータと通信データAとが衝突するおそれはない。しかし、通信データAと同種のイベントデータは通信データB,Cと衝突するおそれがある。本実施例では、イベントデータが他の通信データと衝突しないECUについて説明する。
図9は、イベントデータと通信データCの衝突について説明する図の一例である。図示するようにイベントデータの送信タイミングが通信データCの送信タイミングと衝突している。送信タイミングが衝突すると、ECU内で例えばバスや共有リソースの調停が始まるため、ECU100の負荷が増大する。そこで、本実施例のECU100は、イベントが検出された場合、他の通信データの送信を1周期、遅らせる(飛ばす)。こうすることで、イベントデータと通信データが衝突する可能性を極めて小さくすることができ、また、他の通信データの周期の起点が狂うことも防止できる。
このため、本実施例の送信周期演算部13は、イベント検出部12から検出されたイベント内容に基づき、イベントデータと同種の通信データを特定し、イベントデータと同種の通信データ以外の通信データの周期の起点を演算する。イベントデータと同種の通信データについては実施例1と同様である。
例えば、通信データAと同種のイベントデータが送信される場合、送信周期演算部13は通信データBとCの周期の起点を演算する。すなわち、実際に衝突するか否かは問わない。
・通信データBの場合
イベントデータの送信タイミングにおいて、周期毎送信部11が最後に通信データBを送信してからx秒が経過している場合、通信データBの周期の起点は、通信データBの送信タイミングから「200+200ミリ秒」経過した時である。
・通信データCの場合
同様に、通信データCの周期の起点は、通信データCの送信タイミングから「300+300ミリ秒」経過した時である。
このように、通信データB、Cの周期の起点は、イベントデータの送信タイミングの影響を受けず、一度だけ周期を2倍することで求められる。
送信周期演算部13はこのように演算した周期の起点を周期毎送信部11に通知する。周期毎送信部11は、最後に通信データB,Cを送信した時を基準にソフト的なタイマで時間を計測しているので、タイマの計測時間と演算された周期の起点を比較するだけで、通信データの送信を1周期、遅らせることができる。
以上説明したように、本実施例のECUは、実施例1の効果に加え、イベントデータが他の通信データと衝突する可能性を抑制できるので、ECU100の負荷が増大するおそれをさらに低減できる。
実施例2のように、ECU100が通信データB、Cの送信を1周期遅らせると、通信データB、Cが1周期より長い間、他のECU100に送信されなくなってしまう。周期の長い通信データは優先度が低いので不都合は少ないが、通信データAと同種のイベントデータが頻繁に送信されると、2周期以上、通信データB,Cが送信されないおそれもある。そこで、本実施例では、通信データB,Cの送信を確保可能なECU100について説明する。
図10は、イベントデータと通信データB,Cの送信について説明する図の一例である。実施例2と同様に、ECU100は、イベントが検出された場合、他の通信データB,Cの送信を1周期、遅らせる(飛ばす)。そして、他の通信データのいずれか1つをイベントデータと同種の通信データAの送信タイミングで送信する。例えば、図の例ではイベントデータと同種の通信データAが「100−x」ミリ秒の送信タイミングでは送信されないので、ECU100はこの送信タイミングに通信データB(又は通信データCでもよい)を送信する。この送信タイミングは通信データAに固有なので、通信データBが通信データAやCと衝突するおそれはない。
なお、ECU100は、イベントデータの送信タイミングから「200−x」ミリ秒の経過時、実施例2と同様、通信データBを送信しない。そして、イベントデータの送信タイミングから「200−x+200ミリ秒」経過した時に周期的な送信を再開する。
通信データCについては、実施例1と同様になるが、次回、イベントが検出された場合、ECU100は、イベントデータと同種の通信データのタイミングで通信データCを送信する。こうすることで、通信データAと同種のイベントデータが頻繁に送信されても、通信データB,Cの送信を確保できる。以下、このような送信を代替送信という。
周期の起点の算出について説明する。本実施例の送信周期演算部13は、イベントの検出時に、どの通信データを代替送信するかを決定するためのフラグを有している。このフラグはイベントの発生毎に順番に対応づけられる通信データが変わっていく(通信データB→C→B→C…)。または、通信データの優先度に応じて、イベントの発生毎に対応づけられる通信データが変わっていく。周期を優先度とするなら、通信データBとCは3:2の比で代替送信される(通信データB→C→B→C→B→B→C→B→C→B…)。
また、フラグはイベント内容毎に設けられるのでフラグa〜フラグcが存在する。例えば、イベントデータが通信データAと同種の場合、通信データBを代替送信するとフラグaは通信データCに対応づけられ、通信データCを代替送信するとフラグaは通信データBに対応づけられる。イベントデータが通信データBと同種の場合、通信データAを代替送信するとフラグbは通信データCに対応づけられ、通信データCを代替送信するとフラグbは通信データAに対応づけられる。
送信周期演算部13はフラグにより代替送信すべき通信データを特定し、その通信データの送信タイミングを決定する。
・通信データBの場合
イベントデータの送信タイミングにおいて、通信データBが最後に送信されてからx秒が経過している。最後の通信データAと通信データBの送信タイミングの差は「x−x」であるが、この差はオフセット時間Bである。したがって、代替送信の送信タイミングは、「100−(x−x)=100−オフセット時間B」である。なお、その次の通信データBの送信タイミングは、「200−(100−オフセット時間B)+200」ミリ秒である。
・通信データCの場合
代替送信の送信タイミングは、「100−(x−x)=100−オフセット時間C」である。なお、その次の通信データCの送信タイミングは、「300−(100−オフセット時間C)+300」ミリ秒である。
送信周期演算部13はこのように演算した周期の起点を周期毎送信部11に通知する。周期毎送信部11は、最後に通信データB,Cを送信した時を基準にソフト的なタイマで時間を計測しているので、タイマの計測時間と演算された周期の起点を比較するだけで、通信データBを通信データA、Cと衝突しないタイミングで、又は、通信データCを通信データA、Bと衝突しないタイミングで代替送信できる。
以上説明したように、本実施例のECUは、実施例1、2の効果に加え、通信データB,Cの送信も確保することができる。
実施例1では、1つのECU内の複数の通信データの衝突について説明したが、ネットワークを介して接続された複数のECUの通信データにおいても衝突しないように、周期の起点を元に戻すことができる。
図11は、本実施形態の車載ネットワーク200による送信タイミングの制御を説明するための図の一例である。ECU_A〜ECU_Cはそれぞれ周期的に通信データを送信している。各ECUの周期は以下のようになっている。
ECU_A(100ミリ秒)、ECU_B(200ミリ秒)、ECU_C(300ミリ秒)
このような周期では、ECU_AとECU_Bの送信タイミングが200ミリ秒毎に、ECU_AとECU_Cの送信タイミングが300ミリ秒毎に、それぞれ衝突してしまう。そこで、ECU_BとECU_Cは送信タイミングが衝突しないように、送信タイミングをオフセットしている。通信データB,Cの送信主体がECU_B、ECU_Cに分散しただけで、オフセットの態様は実施例1と同様である。
ECU_Aに通信データの送信タイミングを異ならせるイベントが発生したとする。このため、ECU_Aは、周期Aの「最後の送信タイミング+x」ミリ秒で通信データA´を送信する。このxミリ秒はイベントの発生タイミングに依存するため不定である。
本実施形態のECU_Aは、イベントが発生して通信データAの送信タイミングが元の周期からずれると、周期を元に戻す。すなわち、ECU_Aが通信データA´(以下、イベントデータという)を送信した「周期Aの最後の送信タイミング+x」ミリ秒から100ミリ秒の周期を刻むのではなく、イベントデータの送信タイミングから「100−x+100」ミリ秒から100ミリ秒の周期を刻む。よって、ECU_Aの周期の起点は元の周期のまま元に戻り、ECU_B、ECU_Cの送信タイミングと衝突することを回避できる。
図12は、車載ネットワーク200の機能ブロック図の一例である。図12において図6と同一部の説明は省略する。各ECUが有する機能は実施例1と同様だが、周期毎送信部11は自機のECUの通信データのみを送信し、オフセット時間保持部14は自機の通信データのオフセット時間のみを保持している。その他の機能は実施例1と同じであり、例えば、送信周期演算部13は周期毎送信部11がイベントデータを送信したことで、自機のECU100の通信データの送信タイミングが変更しないように周期の起点を演算する。
本実施例によれば、複数のECUがオフセットしてそれぞれ周期的に通信データを送信する車載ネットワークにおいて、イベントが検出された場合、通信データが衝突する頻度を低減することができる。
11 周期毎送信部
12 イベント検出部
13 送信周期演算部
14 オフセット時間保持部
100 電子制御ユニット(ECU)
200 車載ネットワーク

Claims (8)

  1. 通信データ毎に予め定められた異なる周期で複数の通信データを周期的に送信する電子制御ユニットであって、
    各通信データが衝突しないオフセット時間を記憶するオフセット時間記憶手段と、
    通信データの送信を伴うイベントを検出するイベント検出手段と、
    前記オフセット時間オフセットして各通信データをそれぞれの前記周期で周期的に送信し、前記イベント検出手段がイベントを検出した際にイベント通信データを送信する送信手段と、
    前記送信手段がイベントの発生によりイベント通信データを送信した場合、イベント通信データと同種の情報が含まれる同種通信データを最後に周期的に送信した送信タイミング、前記同種通信データの前記周期の起点決定する送信タイミング決定手段と、を有し、
    前記送信手段は、前記イベント通信データを送信した後、前記送信タイミング決定手段が決定した前記周期の起点からイベント発生前と前記周期を変更せずに前記同種通信データの送信を再開する、ことを特徴とする電子制御ユニット。
  2. 前記送信タイミング決定手段は、イベントの発生により送信されたイベント通信データの送信タイミングの直後の、前記同種通信データの周期の到来を無視し、2回目の周期の到来を前記同種通信データの周期の起点に決定する、
    ことを特徴とする請求項1記載の電子制御ユニット。
  3. 前記イベント検出手段がイベントを検出した場合、
    前記送信タイミング決定手段は、イベントが検出されてから最初に周期的な送信タイミングが到来する、前記同種通信データ以外の通信データの送信を1回だけ中止する、
    ことを特徴とする請求項1又は2記載の電子制御ユニット。
  4. 前記イベント検出手段がイベントを検出した場合、
    前記送信タイミング決定手段は、前記イベントが検出されてから前記同種通信データの最初の周期的な送信タイミングにおいて、前記同種通信データ以外の1つの通信データを送信する、ことを特徴とする請求項2記載の電子制御ユニット。
  5. 前記送信タイミング決定手段は、前記同種通信データ以外に送信する1つの通信データを、前記同種通信データが送信されるイベントが検出される毎に切り換える、
    ことを特徴とする請求項4記載の電子制御ユニット。
  6. 前記同種通信データが最後に周期的に送信されてから、イベント通信データが送信されるまでの時間をx秒とすると、
    前記送信タイミング決定手段は、前記同種通信データの周期からx秒を減算し、さらに前記同種通信データの周期を加えた時間を、該同種通信データの周期の起点に決定する、
    ことを特徴とする請求項2記載の電子制御ユニット。
  7. 子制御ユニットが通信データ毎に予め定められた異なる周期で複数の通信データを送信する車載ネットワークにおいて、
    子制御ユニットは、
    各通信データが衝突しないオフセット時間を記憶するオフセット時間記憶手段と、
    通信データの送信を伴うイベントを検出するイベント検出手段と、
    前記オフセット時間オフセットして各通信データをそれぞれの前記周期で周期的に送信し、前記イベント検出手段がイベントを検出した際にイベント通信データを送信する送信手段と、
    前記送信手段がイベントの発生によりイベント通信データを送信した場合、イベント通信データと同種の情報が含まれる同種通信データを最後に周期的に送信した送信タイミングを、前記同種通信データの前記周期の起点決定する送信タイミング決定手段と、を有し、
    前記送信手段は、前記イベント通信データを送信した後、前記送信タイミング決定手段が決定した前記周期の起点からイベント発生前と前記周期を変更せずに前記同種通信データの送信を再開する、 ことを特徴とする車載ネットワーク。
  8. 通信データ毎に予め定められた異なる周期で複数の通信データを周期的に送信する電子制御ユニットのデータ送信方法であって、
    オフセット時間記憶手段に記憶された、各通信データが衝突しないオフセット時間オフセットして、送信手段が各通信データをそれぞれの前記周期で周期的に送信する送信ステップと、
    通信データの送信を伴うイベントを検出するイベント検出ステップと、
    イベントが検出された際にイベント通信データを送信するステップと、
    前記送信手段がイベントの発生によりイベント通信データを送信した場合、イベント通信データと同種の情報が含まれる同種通信データを最後に周期的に送信した送信タイミング、前記同種通信データの前記周期の起点決定する送信タイミング決定ステップと、
    前記送信手段が、前記イベント通信データを送信した後、前記送信タイミング決定ステップにより決定された前記周期の起点からイベント発生前と前記周期を変更せずに前記同種通信データの送信を再開するステップと、
    有することを特徴とするデータ送信方法。
JP2011108507A 2011-05-13 2011-05-13 電子制御ユニット、車載ネットワーク、データ送信方法 Active JP5712783B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2011108507A JP5712783B2 (ja) 2011-05-13 2011-05-13 電子制御ユニット、車載ネットワーク、データ送信方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2011108507A JP5712783B2 (ja) 2011-05-13 2011-05-13 電子制御ユニット、車載ネットワーク、データ送信方法

Publications (2)

Publication Number Publication Date
JP2012239143A JP2012239143A (ja) 2012-12-06
JP5712783B2 true JP5712783B2 (ja) 2015-05-07

Family

ID=47461627

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2011108507A Active JP5712783B2 (ja) 2011-05-13 2011-05-13 電子制御ユニット、車載ネットワーク、データ送信方法

Country Status (1)

Country Link
JP (1) JP5712783B2 (ja)

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5892889B2 (ja) * 2012-07-27 2016-03-23 ダイハツ工業株式会社 通信制御装置
JP5892890B2 (ja) * 2012-07-27 2016-03-23 ダイハツ工業株式会社 通信制御装置
JP2015099951A (ja) * 2013-11-18 2015-05-28 Ntn株式会社 車両用通信制御装置
JP6572685B2 (ja) * 2015-08-28 2019-09-11 株式会社アドヴィックス 車両の電動制動装置
JP6798280B2 (ja) * 2016-11-29 2020-12-09 富士通株式会社 攻撃検知装置、攻撃検知方法、および、攻撃検知プログラム
JP6862231B2 (ja) * 2017-03-17 2021-04-21 日立Astemo株式会社 制御システム、監視装置
JP2022034414A (ja) * 2020-08-18 2022-03-03 株式会社デンソー 負荷駆動システム
CN113364657A (zh) * 2021-05-12 2021-09-07 东风汽车集团股份有限公司 基于网关的车辆数据服务系统及方法

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4028096B2 (ja) * 1998-07-23 2007-12-26 富士通テン株式会社 ネットワークシステム
JP2006180205A (ja) * 2004-12-22 2006-07-06 Denso Corp 車載送信装置およびプログラム。
JP2008294662A (ja) * 2007-05-23 2008-12-04 Toyota Motor Corp 通信装置、通信システム

Also Published As

Publication number Publication date
JP2012239143A (ja) 2012-12-06

Similar Documents

Publication Publication Date Title
JP5712783B2 (ja) 電子制御ユニット、車載ネットワーク、データ送信方法
US7245631B2 (en) Multiplex communication apparatus for vehicle
JP5099156B2 (ja) 通信ネットワークシステム、中継端末、マイクロコンピュータ、送受信装置
US10397332B2 (en) In-vehicle communication system
JP2009530933A (ja) データ伝送システムと、データ伝送システムの加入者のホストプロセッサとの間でデータを転送するための方法およびデータ伝送システム
WO2014045354A1 (ja) 通信装置及び通信方法
JP5811140B2 (ja) 通信システム
KR101526413B1 (ko) 트랜시버 ic 및 그 동작 방법
JP2011022934A (ja) 電子制御ユニット、異常検出方法
JP2008114806A (ja) 車載装置中継システム、車載装置中継方法及び中継装置
JP2009296280A (ja) 通信ネットワークシステム及びその通信制御方法
JP2020022019A (ja) 車両システム
KR20100020253A (ko) 차량 네트워크에서의 메시지 전송 상태 진단 장치
JP2020078022A (ja) ネットワークシステム
JP2008283492A (ja) ゲートウェイ装置、車載通信システム
JP2019097088A (ja) シリアル通信システム
JP2008294662A (ja) 通信装置、通信システム
JP5510192B2 (ja) 通信装置
JP2005502970A (ja) バスシステムの加入者におけるプログラム中断を発生させる方法,その装置及びバスシステム
KR100747760B1 (ko) Can에서의 시분할 스케줄링 방법 및 그 can 시스템
JP5614365B2 (ja) データ中継装置、車載ネットワーク
JP4732926B2 (ja) 電子制御ユニット
JP4361540B2 (ja) ゲートウェイ装置、データ転送方法及びプログラム
JP2012114724A (ja) 電子制御装置
JP6337783B2 (ja) 車載ネットワークシステム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20140108

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20140926

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20141007

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20141204

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20150210

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20150223

R151 Written notification of patent or utility model registration

Ref document number: 5712783

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151