"通信データ毎に予め定められた周期で複数の通信データを周期的に送信する電子制御にユニットであって、各通信データのオフセット時間を記憶するオフセット時間記憶手段と、通信データの送信を伴うイベントを検出するイベント検出手段と、前記オフセット時間オフセットして前記周期で各通信データを周期的に送信し、前記イベント検出手段がイベントを検出した際にイベント通信データを送信する送信手段と、前記送信手段がイベントの発生によりイベント通信データを送信した場合、イベント通信データと同種の情報が含まれる同種通信データを最後に周期的に送信した送信タイミングを基準に、前記周期を変更せずに前記同種通信データの前記周期の起点を決定する送信タイミング決定手段と、を有し、前記送信手段は、前記イベント通信データを送信した後、前記送信タイミング決定手段が決定した前記周期の起点から前記同種通信データの送信を再開する、ことを特徴とする電子制御ユニット。前記送信タイミング決定手段は、イベントの発生により送信されたイベント通信データの送信タイミングの直後の、前記同種通信データの周期の到来を無視し、2回目の周期の到来を前記同種通信データの周期の起点に決定する、ことを特徴とする請求項1記載の電子制御ユニット。前記イベント検出手段がイベントを検出した場合、前記送信タイミング決定手段は、イベントが検出されてから最初に周期的な送信タイミングが到来する、前記同種通信データ以外の通信データの送信を1回だけ中止する、ことを特徴とする請求項1又は2記載の電子制御ユニット。前記イベント検出手段がイベントを検出した場合、前記送信タイミング決定手段は、前記イベントが検出されてから前記同種通信データの最初の周期的な送信タイミングにおいて、前記同種通信データ以外の1つの通信データを送信する、ことを特徴とする請求項2記載の電子制御ユニット。前記送信タイミング決定手段は、前記同種通信データ以外に送信する1つの通信データを、同じ前記同種通信データが送信されるイベントが検出される毎に切り換える、ことを特徴とする請求項4記載の電子制御ユニット。前記同種通信データが最後に周期的に送信されてから、イベント通信データが送信されるまでの時間をx秒とすると、前記送信タイミング決定手段は、前記同種通信データの周期からx秒を減算し、さらに前記同種通信データの周期を加えた時間を、該同種通信データの周期の起点に決定する、ことを特徴とする請求項2記載の電子制御ユニット。複数の電子制御ユニットがネットワークを介して周期的に通信データを送信する車載ネットワークにおいて、各電子制御ユニットは、各通信データのオフセット時間を記憶するオフセット時間記憶手段と、通信データの送信を伴うイベントを検出するイベント検出手段と、前記オフセット時間オフセットして前記周期で各通信データを周期的に送信し、前記イベント検出手段がイベントを検出した際にイベント通信データを送信する送信手段と、前記送信手段がイベントの発生によりイベント通信データを送信した場合、イベント通信データと同種の情報が含まれる同種通信データを最後に周期的に送信した送信タイミングを基準に、前記周期を変更せずに前記同種通信データの前記周期の起点を決定する送信タイミング決定手段と、を有し、前記送信手段は、前記イベント通信データを送信した後、前記送信タイミング決定手段が決定した前記周期の起点から前記同種通信データの送信を再開する、ことを特徴とする車載ネットワーク。通信データ毎に予め定められた周期で複数の通信データを周期的に送信する電子制御にユニットのデータ送信方法であって、オフセット時間記憶手段に記憶された、各通信データのオフセット時間、オフセットして、送信手段が各通信データを周期的に送信する送信ステップと、通信データの送信を伴うイベントを検出するイベント検出ステップと、イベントが検出された際にイベント通信データを送信するステップと、前記送信手段がイベントの発生によりイベント通信データを送信した場合、イベント通信データと同種の情報が含まれる同種通信データを最後に周期的に送信した送信タイミングを基準に、前記周期を変更せずに前記同種通信データの前記周期の起点を決定する送信タイミング決定ステップと、前記送信手段が、前記イベント通信データを送信した後、前記送信タイミング決定ステップにより決定された前記周期の起点から同種通信データの送信を再開するステップと、有することを特徴とするデータ送信方法。しかしながら、特許文献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にイベントが発生し、イベントによりいずれかの通信データの送信タイミングがずれると、送信タイミングが衝突するおそれが生じてしまう。本発明は、上記課題に鑑み、通信データを周期的に送信する電子制御ユニットにイベントが生じても、送信タイミングの衝突を回避できる電子制御ユニットを提供することを目的とする。本発明は、通信データ毎に予め定められた周期で複数の通信データを周期的に送信する電子制御にユニットであって、各通信データのオフセット時間を記憶するオフセット時間記憶手段と、通信データの送信を伴うイベントを検出するイベント検出手段と、前記オフセット時間オフセットして前記周期で各通信データを周期的に送信し、前記イベント検出手段がイベントを検出した際にイベント通信データを送信する送信手段と、前記送信手段がイベントの発生によりイベント通信データを送信した場合、イベント通信データと同種の情報が含まれる同種通信データを最後に周期的に送信した送信タイミングを基準に、前記周期を変更せずに前記同種通信データの前記周期の起点を決定する送信タイミング決定手段と、を有し、前記送信手段は、前記イベント通信データを送信した後、前記送信タイミング決定手段が決定した前記周期の起点から前記同種通信データの送信を再開する、ことを特徴とする。通信データを周期的に送信する電子制御ユニットにイベントが生じても、送信タイミングの衝突を回避できる電子制御ユニットを提供することができる。以下、本発明を実施するための形態について図面を参照しながら説明する。図2は、本実施形態の電子制御ユニットによる送信タイミングの制御を説明するための図の一例である。電子制御ユニット以下、ECU:ElectronicControlUnitは通信データA~Cをそれぞれ周期的に送信している。各通信データの周期は以下のようになっている。通信データA100ミリ秒通信データB200ミリ秒通信データC300ミリ秒したがって、通信データ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-x100ミリ秒から100ミリ秒の周期を刻む。よって、通信データAの周期の起点は周期を変えることなく元に戻り、他の通信データB、Cの送信タイミングと衝突することを回避できる。構成図3は、車載ネットワーク200の概略構成図の一例を示す。車載ネットワーク200は、ECU100を電気的に接続し、所定のプロトコルに基づき、通信データの送信を可能にしている。図ではECU100が3個接続されているが、2個だけ接続されていてもよいし、4個以上接続されていてもよい。車載ネットワーク200のプロトコルには、CANControllerAreaNetwork、LINLocalInterconnectNetwork、FrexRay等があるが、バスを共有した時分割多重通信であることが多い。このため、各ECUはプロトコルに従いバスの使用権を得て通信データを送信する。本実施形態では、各ECUはCANプロトコルにより通信するものとする。ECUA~ECUCは、例えばボディ系、制御系、情報AV系等、系統別にゲートウェイで区分されたネットワーク内のECUである。ボディ系であればドアECU、パワーシートECU、ライトECU、エアコンECU、メータECU、制御系であればエンジンECU、ブレーキECU、エアバッグECU、情報AV系であればナビECU、AV用ECU等がある。ECUA~ECUCの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は、オフセットの態様のいくつかの例を説明する図の一例である。図5aでは、周期の長い通信データBが、本来の周期の送信タイミングからオフセット時間Bオフセットされた時刻に送信されている。周期の短い通信データAは優先順位が高いことが多いので、周期の長い通信データBの送信タイミングをオフセットすることで、通信データAの送信タイミングをオフセットすることを防止できる。また、通信データA、Bを受信する他のECUも、周期が長い通信データBについては受信タイミングのずれを比較的許容しやすいので、オフセットがもたらす影響を抑制しやすい。図5bでは、ECU100は、周期の短い通信データAを本来の周期の送信タイミングからオフセット時間Aオフセットした時刻に送信している。何らかの理由で、通信データB又は通信データCの送信タイミングをオフセットしにくい場合、周期の短い通信データAの送信タイミングをオフセットすることも有効である。図5cでは、複数の通信データが本来の周期の送信タイミングからオフセット時間オフセットされた時刻に通信データを送信している。通信データ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が決定するとして説明する。図5aの場合、ECU100は、通信データBの送信タイミングを1オフセット時間オフセットする。図5bの場合、ECU100は、通信データAの送信タイミングを1オフセット時間オフセットする。図5cの場合、ECU100は送信周期の短い順に優先順位の高い順に通信タイミングをオフセットする。図5cを例にオフセット時間の決定について詳細に説明する。まず、ECU100は周期的に送信する全ての通信データの周期を取得し、最も周期の短い通信データAを固定して他の通信データB,Cとの組における最小公倍数を計算する。ECU100は、通信データAは最も周期が短いので、通信データAはオフセットしない。通信データAとBの周期の最小公倍数は200ミリ秒、通信データAとCの周期の最小公倍数は300ミリ秒である。したがって、例えば通信データBとCがオフセットの対象となる。次に、ECU100は通信データBの送信タイミングを1オフセット時間オフセットする。次に、ECU100は、通信データCの送信タイミングを1オフセット時間オフセットする。通信データBとCを同じ時間オフセットしたので、通信データBとCは送信タイミングが衝突したままである。このため、ECU100は、次に周期の短い通信データBを固定して、他の通信データCとの組における最小公倍数を計算する。最小公倍数は600ミリ秒である。通信データBは最も周期が短いので、通信データBはオフセットしない。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-x100ミリ秒である。すなわち、送信周期演算部13は、100-x100ミリ秒を周期の次の起点として、周期毎送信部11に通知する。イベントデータの送信直後に周期毎送信部11はタイマをリセットしているので、周期毎送信部11はイベントデータの送信時から100-x100ミリ秒経過後に周期的な通信データAの送信を再開できる。例えば、xが50ミリ秒とすると、100-50100ミリ秒=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を送信してからxb秒が経過している場合、通信データBの周期の起点は、通信データBの送信タイミングから200200ミリ秒経過した時である。通信データCの場合同様に、通信データCの周期の起点は、通信データCの送信タイミングから300300ミリ秒経過した時である。このように、通信データ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-xbミリ秒の経過時、実施例2と同様、通信データBを送信しない。そして、イベントデータの送信タイミングから200-xb200ミリ秒経過した時に周期的な送信を再開する。通信データ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が最後に送信されてからxb秒が経過している。最後の通信データAと通信データBの送信タイミングの差はx-xbであるが、この差はオフセット時間Bである。したがって、代替送信の送信タイミングは、100-x-xb=100-オフセット時間Bである。なお、その次の通信データBの送信タイミングは、200-100-オフセット時間B200ミリ秒である。通信データCの場合代替送信の送信タイミングは、100-x-xc=100-オフセット時間Cである。なお、その次の通信データCの送信タイミングは、300-100-オフセット時間C300ミリ秒である。送信周期演算部13はこのように演算した周期の起点を周期毎送信部11に通知する。周期毎送信部11は、最後に通信データB,Cを送信した時を基準にソフト的なタイマで時間を計測しているので、タイマの計測時間と演算された周期の起点を比較するだけで、通信データBを通信データA、Cと衝突しないタイミングで、又は、通信データCを通信データA、Bと衝突しないタイミングで代替送信できる。以上説明したように、本実施例のECUは、実施例1、2の効果に加え、通信データB,Cの送信も確保することができる。実施例1では、1つのECU内の複数の通信データの衝突について説明したが、ネットワークを介して接続された複数のECUの通信データにおいても衝突しないように、周期の起点を元に戻すことができる。図11は、本実施形態の車載ネットワーク200による送信タイミングの制御を説明するための図の一例である。ECUA~ECUCはそれぞれ周期的に通信データを送信している。各ECUの周期は以下のようになっている。ECUA100ミリ秒、ECUB200ミリ秒、ECUC300ミリ秒このような周期では、ECUAとECUBの送信タイミングが200ミリ秒毎に、ECUAとECUCの送信タイミングが300ミリ秒毎に、それぞれ衝突してしまう。そこで、ECUBとECUCは送信タイミングが衝突しないように、送信タイミングをオフセットしている。通信データB,Cの送信主体がECUB、ECUCに分散しただけで、オフセットの態様は実施例1と同様である。ECUAに通信データの送信タイミングを異ならせるイベントが発生したとする。このため、ECUAは、周期Aの最後の送信タイミングxミリ秒で通信データA ́を送信する。このxミリ秒はイベントの発生タイミングに依存するため不定である。本実施形態のECUAは、イベントが発生して通信データAの送信タイミングが元の周期からずれると、周期を元に戻す。すなわち、ECUAが通信データA ́以下、イベントデータというを送信した周期Aの最後の送信タイミングxミリ秒から100ミリ秒の周期を刻むのではなく、イベントデータの送信タイミングから100-x100ミリ秒から100ミリ秒の周期を刻む。よって、ECUAの周期の起点は元の周期のまま元に戻り、ECUB、ECUCの送信タイミングと衝突することを回避できる。図12は、車載ネットワーク200の機能ブロック図の一例である。図12において図6と同一部の説明は省略する。各ECUが有する機能は実施例1と同様だが、周期毎送信部11は自機のECUの通信データのみを送信し、オフセット時間保持部14は自機の通信データのオフセット時間のみを保持している。その他の機能は実施例1と同じであり、例えば、送信周期演算部13は周期毎送信部11がイベントデータを送信したことで、自機のECU100の通信データの送信タイミングが変更しないように周期の起点を演算する。本実施例によれば、複数のECUがオフセットしてそれぞれ周期的に通信データを送信する車載ネットワークにおいて、イベントが検出された場合、通信データが衝突する頻度を低減することができる。"