(57)【要約】【課題】１つの車載送信装置が送信する複数のフレーム種別のうち、定期送信タイミングおよびイベント送信タイミングで送信するようになっており、かつ互いの定期送信間隔が等しいようになっているフレーム種別において、イベント送信タイミングが一度重なると、以後それらのフレーム種別間の送信タイミングの重なりが連続的に何度も発生してしまう恐れを低減する。【解決手段】  定期送信タイミングおよびイベント送信タイミングで送信するようになっており、かつ互いの定期送信間隔が等しいようになっているフレーム種別について、車載送信装置は、２つ以上のフレーム種別の送信タイミングが重なったことに基づいて、送信タイミングが重なった当該フレーム種別のうち優先度の低いものの次回の送信タイミングを、現在から定期送信間隔の経過時よりも遅延時間分遅らせる。【選択図】 図８
2006180205.tif 000002
【特許請求の範囲】
【請求項１】
複数のフレーム種別のそれぞれについてのデータフレームを、前回の同じフレーム種別のデータフレームの送信から当該複数フレーム間で一律の一定期間後に当たる定期送信タイミング、および、不定期のイベント発生に起因するイベント送信タイミングで、車両内の他の装置に送信する車載送信装置であって、
前記複数のフレーム種別のうち、２つ以上のフレーム種別の送信タイミングが重なったことを判定する重なり判定手段と、
前記重なり判定手段が送信タイミングが重なっていると判定した対象のフレーム種別間の送信タイミングをずらずタイミングずらし手段と、を備えたことを特徴とする車載送信装置。
【請求項２】
前記タイミングずらし手段は、前記重なり判定手段が送信タイミングが重なっていると判定した対象のフレーム種別の一部についての、次回の送信タイミングを、今回の送信タイミングから前記一定期間に遅延時間を加えた時間の経過時とすることを特徴とする請求項１に記載の車載送信装置。
【請求項３】
前記タイミングずらし手段は、前記重なり判定手段が送信タイミングが重なっていると判定した対象のフレーム種別の一部についての、今回の送信タイミングを、現在から遅延時間の経過時とすることを特徴とする請求項１または２に記載の車載送信装置。
【請求項４】
前記複数のフレーム種別のそれぞれに割り当てられた遅延許容時間を記憶する記憶媒体を備え、
前記タイミングずらし手段は、送信タイミングをずらす対象のフレーム種別の遅延許容時間が前記所定の基準よりも短ければ、当該フレーム種別の次回の送信タイミングを、今回の送信タイミングから前記一定期間に遅延時間を加えた時間の経過時とし、送信タイミングをずらす対象のフレーム種別の遅延許容時間が前記所定の基準よりも長ければ、当該フレーム種別の今回の送信タイミングを、現在から遅延時間の経過時とすることを特徴とする請求項１に記載の車載送信装置。
【請求項５】
ある回のデータフレームの送信から次回の同じフレーム種別の定期送信タイミングまでの一定期間が同じとなる複数のフレーム種別を他のフレーム種別と区別するフレーム種別グループデータを記憶する記憶媒体を備え、
前記重なり判定手段は、前記記憶媒体が記憶する前記フレーム種別グループデータに含まれる２つ以上のフレーム種別の送信タイミングが重なったことを判定することを特徴とする請求項１ないし４のいずれか１つに記載の車載送信装置。
【請求項６】
前記複数のフレーム種別のそれぞれに割り当てられた優先度を記憶する記憶媒体を備え、
前記タイミングずらし手段は、前記重なり判定手段が送信タイミングが重なっていると判定した対象のフレーム種別のうち、前記記憶媒体が記憶する優先度のより低い方のフレーム種別の送信タイミングをより遅らせることを特徴とする請求項１ないし５のいずれか１つに記載の車載送信装置。
【請求項７】
前記優先度は、フレーム種別毎に付与された識別番号またはフレーム種別の重要度を示すデータであることを特徴とする請求項６に記載の車載送信装置。
【請求項８】
前記重なり判定手段は、前記複数のフレーム種別の、前記イベント送信タイミングにおいてのみ作動することを特徴とする請求項１ないし７のいずれか１つに記載の車載送信装置。
【請求項９】
前記重なり判定手段は、前記複数のフレーム種別の、前記定期送信タイミングにおいてのみ作動することを特徴とする請求項１ないし７のいずれか１つに記載の車載送信装置。
【請求項１０】
前記重なり判定手段は、前記複数のフレーム種別の、前記定期送信タイミングおよび前記不定期タイミングにおいて作動することを特徴とする請求項１ないし７のいずれか１つに記載の車載送信装置。
【請求項１１】
複数のフレーム種別のそれぞれについてのデータフレームを、前回の同じフレーム種別のデータフレームの送信から当該複数フレーム間で一律の一定期間後に当たる定期送信タイミング、および、不定期のイベント発生に起因するイベント送信タイミングで、車両内の他の装置に送信する車載送信装置に用いるプログラムであって、
前記複数のフレーム種別のうち、２つ以上のフレーム種別の送信タイミングが重なったことを判定する重なり判定手段、および
前記重なり判定手段が送信タイミングが重なっていると判定した対象のフレーム種別間の送信タイミングをずらずタイミングずらし手段として、前記車載送信装置の有するコンピュータを機能させるプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、複数のフレーム種別のそれぞれについてのデータフレームを、前回の同じフレーム種別のデータフレームの送信から一定期間後の定期送信タイミング、および、イベント発生に起因するイベント送信タイミングで、車両内の他の装置に送信する車載送信装置、ならびにその車載送信装置に用いるプログラムに関するものである。
【背景技術】
【０００２】
従来、エンジン制御用のエンジンＥＣＵ、ブレーキ制御用のブレーキＥＣＵ、エアコン制御用のエアコンＥＣＵ等、車両に搭載される装置は、互いに通信を行うようになっている場合がある。通信の例としては、ブレーキＥＣＵからエンジンＥＣＵへの制動量のデータの送信、エンジンＥＣＵからエアコンＥＣＵへのエアコン制御の可否を指令するエアコンデータの送信等がある。
【０００３】
また、１つの車載装置から送信されるデータの種別が複数ある場合もある。例えば、エンジンＥＣＵが、エアコンＥＣＵに上述のエアコンデータを送信し、ブレーキＥＣＵに制動量を制御するデータを送信し、メータを制御するメータＥＣＵにエンジン制御状態のデータを送信する場合がある。
【０００４】
これらの車載装置間のデータ通信が、データ通信経路を共有する場合、複数のデータフレームの送信タイミングが重ならないようにすることが必要となる。ここでデータフレームとは、送信されるデータの１まとまりをいう。
【０００５】
データフレームの送信タイミングが重ならないようにする技術としては、例えば特許文献１、特許文献２に記載の技術がある。特許文献１には、車内のＥＣＵが、他のＥＣＵの送信するデータフレームとの衝突を検出したときに、自身の送信するデータフレームの送信間隔を設定する技術が開示されている。また、特許文献２には、通信経路の負荷状況に応じて送信タイミングを再設定する技術が開示されている。
【特許文献１】特開平１１−２９８５０７号公報
【特許文献２】特開平９−２３２１７９８号公報
【発明の開示】
【発明が解決しようとする課題】
【０００６】
しかし、上記のような技術は、他の車載送信装置の送信するデータフレームと自身の送信するデータフレームとの送信タイミングの重なりを軽減することはできても、１つの車載送信装置の送信する複数のデータフレームの送信タイミングの重なりを軽減することはできなかった。１つの車載送信装置が同じタイミングで送信できるフレーム数には限りがあり、また、車載送信装置が有する送信フレームのための記憶領域にも限りがあるため、１つの車載送信装置内でも、複数のデータフレームの送信タイミングの重なりを避けることが望ましい。
【０００７】
１つの車載送信装置の送信するデータフレームの送信タイミングの重なりが、特に問題となる例を、図９のタイミング図を用いて説明する。この例においては、車載送信装置は、２つのフレーム種別のデータフレームの送信を行うようになっている。図９のタイミング図は、これら２つのフレーム種別Ａ、Ｂのデータフレームの送信タイミング８１〜９０を示している。ここで、車載送信装置は、各フレーム種別のデータフレームを、定期送信タイミングおよびイベント送信タイミングの２つのタイミングにおいて送信するようになっている。イベント送信タイミングとは、不定期に発生する特定の事象に起因するタイミングである。また、定期送信タイミングとは、前回の同一フレーム種別の（定期送信タイミングまたはイベント送信タイミングにおける）データフレームの送信から一定期間（すなわち定期送信間隔）Ｔが経過した時点のタイミングである。
【０００８】
図９においては、タイミング８１、８３、８５が、フレーム種別Ａの定期送信タイミングに当たり、タイミング８２、８４、８６が、フレーム種別Ｂの定期送信タイミングに当たる。この図に示す通り、フレーム種別Ａの定期送信間隔と、フレーム種別Ｂの定期送信間隔とは同じである。
【０００９】
ここで、図９のタイミング８７において、フレームＡのイベント送信タイミングおよびフレームＢのイベント送信タイミングが同時に発生した場合を考える。この場合、後にイベント送信タイミングが再度発生するまでは、フレーム種別Ａおよびフレーム種別Ｂの定期送信タイミングは、共にタイミング８７を起点とする定期送信間隔Ｔのタイミング８８、８９、９０で繰り返し発生する。したがって、定期送信タイミングおよびイベント送信タイミングで送信するようになっており、かつ互いの定期送信間隔が等しいようになっているフレーム種別において、イベント送信タイミングが一度重なると、以後それらのフレーム種別間の送信タイミングの重なりが連続的に何度も発生してしまう。
【００１０】
本発明は上記点に鑑み、１つの車載送信装置が送信する複数のフレーム種別のうち、定期送信タイミングおよびイベント送信タイミングで送信するようになっており、かつ互いの定期送信間隔が等しいようになっているフレーム種別において、イベント送信タイミングが一度重なると、以後それらのフレーム種別間の送信タイミングの重なりが連続的に何度も発生してしまう恐れを低減することを目的とする。
【課題を解決するための手段】
【００１１】
上記目的を達成するための請求項１に記載の発明は、複数のフレーム種別のそれぞれについてのデータフレームを、前回の同じフレーム種別のデータフレームの送信から当該複数フレーム間で一律の一定期間後に当たる定期送信タイミング、および、不定期のイベント発生に起因するイベント送信タイミングで、車両内の他の装置に送信する車載送信装置であって、前記複数のフレーム種別のうち、２つ以上のフレーム種別の送信タイミングが重なったことを判定する重なり判定手段と、前記重なり判定手段が送信タイミングが重なっていると判定した対象のフレーム種別間の送信タイミングをずらずタイミングずらし手段と、を備えたことを特徴とする車載送信装置である。
【００１２】
このようになっているので、この車載送信装置が送信する上記複数のフレーム種別、すなわち、定期送信タイミングおよびイベント送信タイミングで送信するようになっており、かつ定期送信間隔が一律に等しくなっているフレーム種別について、当該車載通信装置は、２つ以上のフレーム種別の送信タイミングが重なったことに基づいて、その重なったフレーム種別間の一部の送信タイミングをずらずようになっているので、ずらして以降はそれらのフレーム種別間の送信タイミングの重なりが連続的に何度も発生してしまう恐れが低減する。
【００１３】
また、請求項２に記載の発明は、請求項１に記載の車載送信装置において、前記タイミングずらし手段は、前記重なり判定手段が送信タイミングが重なっていると判定した対象のフレーム種別の一部についての、次回の送信タイミングを、今回の送信タイミングから前記一定期間に遅延時間を加えた時間の経過時とすることを特徴とする。
【００１４】
このようになっているので、送信タイミングが重なったフレーム種別のうち一部についての次回の送信タイミングが、現在から一定期間（すなわち定期送信間隔）経過時よりも遅延時間分遅らせることで、重なったフレーム種別間の一部の送信タイミングをずらずことができる。
【００１５】
また、請求項３に記載の発明は、請求項１または２に記載の車載送信装置において、前記タイミングずらし手段は、前記重なり判定手段が送信タイミングが重なっていると判定した対象のフレーム種別の一部についての、今回の送信タイミングを、現在から遅延時間の経過時とすることを特徴とする。
【００１６】
このようになっているので、送信タイミングが重なったフレーム種別のうち一部についての今回の送信タイミングを、現在から遅延時間分遅らすことで、重なったフレーム種別間の一部の送信タイミングをずらずことができる。
【００１７】
また、請求項４に記載の発明は、請求項１に記載の車載送信装置において、前記複数のフレーム種別のそれぞれに割り当てられた遅延許容時間を記憶する記憶媒体を備え、前記タイミングずらし手段は、送信タイミングをずらす対象のフレーム種別の遅延許容時間が前記所定の基準よりも短ければ、当該フレーム種別の次回の送信タイミングを、今回の送信タイミングから前記一定期間に遅延時間を加えた時間の経過時とし、送信タイミングをずらす対象のフレーム種別の遅延許容時間が前記所定の基準よりも長ければ、当該フレーム種別の今回の送信タイミングを、現在から遅延時間の経過時とすることを特徴とする。
【００１８】
このようになっているので、遅延許容時間が短いフレーム種別、すなわち現在送信することがより重要なフレーム種別については、今回の送信タイミングについては遅延させず、次回以降の定期送信タイミングをずらし、一方、遅延許容時間が長いフレーム種別、すなわち現在送信することが比較的重要でないフレーム種別については、今回の送信タイミングをずらすことができる。すなわち、遅延許容時間に基づいて送信タイミングをずらす時期を調整することができる。
【００１９】
また、請求項５に記載の発明は、請求項１ないし４のいずれか１つに記載の車載送信装置において、ある回のデータフレームの送信から次回の同じフレーム種別の定期送信タイミングまでの一定期間が同じとなる複数のフレーム種別を他のフレーム種別と区別するフレーム種別グループデータを記憶する記憶媒体を備え、前記重なり判定手段は、前記記憶媒体が記憶する前記フレーム種別グループデータに含まれる２つ以上のフレーム種別の送信タイミングが重なったことを判定することを特徴とする。
【００２０】
このようなフレーム種別グループデータを用いることで、あるフレーム種別と定期送信間隔が同じフレーム種別がどれであるかについての判断が、すべてのフレーム種別を総当たり的に検索する場合に比べて容易になる。
【００２１】
また、請求項６に記載の発明は、請求項１ないし５のいずれか１つに記載の車載送信装置において、前記複数のフレーム種別のそれぞれに割り当てられた優先度を記憶する記憶媒体を備え、前記タイミングずらし手段は、前記重なり判定手段が送信タイミングが重なっていると判定した対象のフレーム種別のうち、前記記憶媒体が記憶する優先度のより低い方のフレーム種別の送信タイミングをより遅らせることを特徴とする。
【００２２】
このようになっていることで、優先度に基づいた系統的な方法で、送信タイミングを遅らせるフレーム種別を選ぶことができる。
【００２３】
また、請求項７に記載の発明は、請求項６に記載の車載送信装置において、前記優先度は、フレーム種別毎に付与された識別番号またはフレーム種別の重要度を示すデータであることを特徴とする。
【００２４】
また、請求項８に記載の発明は、請求項１ないし７のいずれか１つに記載の車載送信装置において、前記重なり判定手段は、前記複数のフレーム種別の、前記イベント送信タイミングにおいてのみ作動することを特徴とする。
【００２５】
このように、複数のフレーム種別間のイベント送信タイミング同士の重なり、および複数のフレーム種別間の定期送信タイミングとイベント送信タイミングの重なりのみを検出することで、処理が簡易になる。
【００２６】
また、請求項９に記載の発明は、請求項１ないし７のいずれか１つに記載の車載送信装置において、前記重なり判定手段は、前記複数のフレーム種別の、前記定期送信タイミングにおいてのみ作動することを特徴とする。
【００２７】
このように、複数のフレーム種別間の定期送信タイミング同士の重なり、および複数のフレーム種別間の定期送信タイミングとイベント送信タイミングの重なりのみを検出することで、処理が簡易になる。
【００２８】
また、請求項１０に記載の発明は、請求項１ないし７のいずれか１つに記載の車載送信装置において、前記重なり判定手段は、前記複数のフレーム種別の、前記定期送信タイミングおよび前記不定期タイミングにおいて作動することを特徴とする。
【００２９】
このように、複数のフレーム種別間のイベント送信タイミング同士の重なり、複数のフレーム種別間の定期送信タイミング同士の重なり、および複数のフレーム種別間の定期送信タイミングとイベント送信タイミングの重なりを検出することで、網羅的な重なりの検出を行うことができる。
【００３０】
また、請求項１１に記載の発明は、複数のフレーム種別のそれぞれについてのデータフレームを、前回の同じフレーム種別のデータフレームの送信から当該複数フレーム間で一律の一定期間後に当たる定期送信タイミング、および、不定期のイベント発生に起因するイベント送信タイミングで、車両内の他の装置に送信する車載送信装置に用いるプログラムであって、前記複数のフレーム種別のうち、２つ以上のフレーム種別の送信タイミングが重なったことを判定する重なり判定手段、および前記重なり判定手段が送信タイミングが重なっていると判定した対象のフレーム種別間の送信タイミングをずらずタイミングずらし手段として、前記車載送信装置の有するコンピュータを機能させるプログラムである。このように、プログラムとしても本発明を捉えることができる。
【発明を実施するための最良の形態】
【００３１】
以下、本発明の一実施形態について説明する。図１に、本実施形態に係る車内通信システムの構成を示す。この車内通信システムは、エンジン、ブレーキ、メータ、ＡＴ（オートマチックトランスミッション）、エアコン等、車内の機器の制御を行うためのシステムである。
【００３２】
この車内通信システムは、エンジンを制御するためのエンジンＥＣＵ１（車載送信装置に相当する）、ＡＢＳ（アンチロックブレーキシステム）等の制動制御を行うためのブレーキＥＣＵ２、速度、警告等のドライバへのメータ表示を行うメータＥＣＵ３、ＡＴを制御するためのＡＴＥＣＵ４、エアコンを制御するためのエアコンＥＣＵ５等の制御装置を有している。また、これら制御装置は、通信バス６を介して互いに現在の制御状態等のデータ通信を行うことができるようになっている。データ通信のプロトコルとしては、ＣＡＮ（Ｃｏｎｔｒｏｌｌｅｒ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）を用いる。
【００３３】
また、エンジンＥＣＵ１は、データ送受信部１１、ＣＰＵ１２、ＲＡＭ１３、ＲＯＭ１４、フラッシュメモリ１５等を有している。
【００３４】
データ送受信部１１は、ＣＰＵ１２から受けた送信用のデータを、所定の送信タイミングで通信バス６に送出する。またデータ送受信部１１は、通信バス６を流れるエンジンＥＣＵ１宛のデータを受信し、受信したデータをＲＡＭ１３の所定の領域に記憶させる。なお、データ送受信部１１は、ＣＰＵ１２から受けたデータを一時記憶するためのバッファを有している。このバッファは、複数個（例えば５個）のデータフレーム分の記憶容量を有している。ここで、データフレームとは、１回のデータ送信において送信されるデータの１まとまりをいう。
【００３５】
ＣＰＵ１２は、ＲＯＭ１４またはフラッシュメモリ１５からプログラムを読み出して実
行し、そのプログラムに記述された処理内容に基づいて動作し、その動作において、適宜
ＲＡＭ１３、ＲＯＭ１４、フラッシュメモリ１５から情報を読み出し、またＲＡＭ１３およびフラッシュメモリ１５に情報を書き込む。またＣＰＵ１２は、その動作中に通信バス６を介して他のＥＣＵへデータを送信するため、例えば送信先のＥＣＵの識別データと共にこの送信するデータをデータ送受信部１１に出力する。
【００３６】
またＣＰＵ１２は、その動作において、必要に応じて図示しないクランク角センサ、メインスロットルセンサ、水温センサ等のセンサからの検出信号を受け取り、また図示しないイグナイタ、インジェクタ、フューエルポンプ等のアクチュエータの制御を行う。
【００３７】
ここで、ＣＰＵ１２が通信バス６を介して他のＥＣＵに送信するデータフレームについて説明する。ＣＰＵ１２が送信するデータフレームは、そのデータフレームの送信先、そのデータフレームの示すデータの意味合い等によって、複数のフレーム種別に分類される。フレーム種別としては、例えばエンジン回転数等のエンジンステータス、燃料噴射量等の各種エンジン制御データ等がある。
【００３８】
本実施形態のエンジンＥＣＵ１は、フレーム種別毎に、そのフレーム種別のデータフレームを定期送信タイミングのみで送信するか、あるいは定期送信タイミングおよびイベント送信タイミングで送信するかが決まっている。イベント送信タイミングとは、不定期に発生する特定の事象（例えばエンジン回転数やエンジン冷却水温の変化）に起因するタイミングである。また、定期送信タイミングとは、前回の同一フレーム種別のデータフレームの送信から一定期間（すなわち定期送信間隔）Ｔが経過した時点のタイミングである。なお、ここでいう前回の同一フレーム種別のデータフレームの送信とは、定期送信タイミングにおける送信のみならず、イベント送信タイミングにおける送信をも含むものである。
【００３９】
また、本実施形態のエンジンＥＣＵ１のＲＯＭ１４は、これら複数のフレーム種別を区分けする情報としてのフレーム種別グループデータを記憶している。図２に、このフレーム種別グループデータの構造を概略的に示す。フレーム種別グループデータは、エンジンＥＣＵ１が送信するフレーム種別を、複数のグループに分け、それぞれのグループ毎にそのグループに属するフレーム種別をまとめて列記している。図２においては、グループ１、グループ２、およびグループ３が例示されている。グループ分けは、それぞれのフレーム種別の定期送信間隔が同じもの同士を同じグループに属するように行われている。具体的には、グループ１には、定期送信タイミングが１０００ミリ秒であるフレーム種別が列記されており、グループ２には、定期送信タイミングが３２リ秒であるフレーム種別が列記されており、グループ３には、定期送信タイミングが９１０ミリ秒であるフレーム種別が列記されている。また、グループ１に属するフレーム種別は、定期送信タイミングおよびイベント送信タイミングでデータフレームが送信されるフレーム種別であり、グループ２および３に属するフレーム種別は、定期送信タイミングのみでデータフレームが送信されるフレーム種別である。
【００４０】
グループ１に属するフレーム種別としては、例えばクルーズデータ、ＥＣＴデータ、エアコンデータ等がある。クルーズデータは、現在自車両がオートクルーズ状態にあるか否かを示すデータであり、メータＥＣＵ３等に送信するためのデータである。なお、メータＥＣＵ３は、このクルーズデータの内容に基づいて、クルーズランプの点灯、消灯を制御するようになっている。
【００４１】
ＥＣＴデータは、ＡＴＥＣＵ４に送信するためのデータであり、ＡＴＥＣＵ４がＡＴをどのように制御するかに関わるエンジン制御内容の情報を含んでいる。
【００４２】
エアコンデータは、エアコン制御のオンオフデータであり、エアコンＥＣＵ５に送信するためのデータである。なお、エアコンＥＣＵ５は、このエアコンデータのオン・オフに基づいて、エアコン制御を行うか行わないかを決定するようになっている。
【００４３】
グループ２に属するフレーム種別としては、各種エンジン制御データがある。また、グループ３に属するフレーム種別としては、エンジン状態データがある。
【００４４】
また、本実施形態のフラッシュメモリ１５は、図３に示すように、フレーム種別毎に１組の定期送信間隔データＴｉおよび定期送信カウンタＣｉの組のための変数を記憶している。なお、ｉはフレーム種別を区別するための自然数インデックスである。これらの変数は、後述するように、各フレーム種別の定期送信タイミングとなった否かを判定するためのデータとして用いられる。これらのデータは、エンジンＥＣＵ１の作動開始時等の初期状態においては、定期送信間隔データＴｉが、対応するフレーム種別の定期送信間隔を記憶している。また、初期状態において、各定期送信カウンタＣｉは、同一のグループに属するフレーム種別間で値が異なるように設定される。
【００４５】
また、本実施形態のＲＡＭ１３は、イベント送信のあるフレーム種別、すなわち上述のグループ１に属するフレーム種別毎に、イベント発生フラグを有しており、ＣＰＵ１２は、その処理においてそれぞれのフレーム種別のデータフレームを送信する必要が不定期的に発生したと判定すると、当該フレーム種別に対応するイベント発生フラグをオンとする。
【００４６】
なお、クルーズデータのデータフレームを送信する必要が不定期的に発生したと判定する場合は、車両の走行がオートクルーズ状態から非オートクルーズ状態に変化したことを検出した場合、車両の走行が非オートクルーズ状態からオートクルーズ状態に変化したことを検出した場合である。また、ＥＣＴデータのデータフレームを送信する必要が不定期的に発生したと判定する場合はエンジンの状態（例えばエンジン回転数、冷却水温度等）があるしきい値に達したことを検出した場合等である。また、エアコンデータのデータフレームを送信する必要が不定期的に発生したと判定する場合は、エンジンの状態の変化に起因して、エアコンＥＣＵ５に送信すべきエアコンデータがオンからオフに変化する場合、およびオフからオンに変化する場合である。
【００４７】
ここで、ＣＰＵ１２が具体的に他のＥＣＵにデータを送信するために常時実行する通信処理プログラム１００を、図４に示す。ＣＰＵ１２は、この通信処理プログラム１００を定期的に、具体的には１ミリ秒毎に、実行するようになっている。
【００４８】
この通信処理プログラム１００の実行において、ＣＰＵ１２は、まずステップ１１０で、上述の定期送信カウンタを更新する。具体的には、すべての定期送信カウンタの値を、現在の値から通信処理プログラム１００の実行間隔時間分（具体的には１ミリ秒分）減じる。続いてステップ１２０で送信処理を実行し、さらにステップ１３０で、データ送受信部１１を用いて他のＥＣＵから送信されたエンジンＥＣＵ１宛のデータの受信処理を実行し、その後通信処理プログラム１００の１回分の実行を終了する。
【００４９】
ここで、図５に、ステップ１２０の送信処理の詳細を示すフローチャートを示す。ステップ１２０の実行において、ＣＰＵ１２は、まずステップ１２２で、ある１つのフレーム種別（以下選択フレーム種別と記す）について、送信要求が現在発生しているか否かを判定する。ここでいう送信要求とは、定期送信要求およびイベント送信要求である。定期送信要求が現在発生しているか否かは、直前のステップ１１０で更新した選択フレーム種別の定期送信カウンタＣｉがゼロになっているか否かで判定する。また、イベント送信要求が発生しているか否かは、選択フレーム種別についてのイベント発生フラグがオンであるか否かで判定する。なお、定期送信のみしか行われないフレーム種別については、ここでは、定期送信要求が現在発生しているか否かのみを判定する。送信要求が現在発生している場合、続いてステップ１２４を実行し、発生していない場合、続いてステップ１２９を実行する。
【００５０】
ステップ１２４では、選択フレーム種別のデータフレームを送信する。具体的には、その選択フレーム種別のデータフレームに含めるためのデータを生成し、生成したデータを含むデータフレームをデータ送受信部１１に送信させる。
【００５１】
続いてステップ１２５では、選択フレーム種別が第１グループに属し、かつ第１グループに属する他のフレーム種別についても現在送信要求が発生しているか否かを判定する。ここで、どのフレーム種別が第１グループに属しているか否かは、フレーム種別グループデータを参照することで特定する。このようになっていることで、あるフレーム種別と定期送信間隔が同じフレーム種別がどれであるかについての判断が、すべてのフレーム種別を総当たり的に検索する場合に比べて容易になる。なお、ここでいう送信要求も、定期送信要求およびイベント送信要求である。この判定が肯定の場合、続いてステップ１２６を実行し、否定の場合、続いてステップ１２７を実行する。
【００５２】
ステップ１２６では、選択フレーム種別と、ステップ１２５で第１グループに属すると判定した現在送信要求が発生している他のフレーム種別（以下衝突フレーム種別と記す）との優先度確認を行い、それに基づいた遅延時間の設定を行う。ここで、優先度のデータとしては、それら選択フレーム種別、衝突フレーム種別に割り当てられたＣＡＮ  ＩＤを用いる。ＣＡＮ  ＩＤは、通信バス６に送信されるフレーム種別毎に、そのフレーム種別の車両制御に対する重要度が多きい程値が小さくなるように、付与されている。そこで、ここでは、ＣＡＮ  ＩＤの小さいフレーム種別ほど優先度が高いとする。なお、フレーム種別とＣＡＮ  ＩＤとの対応関係は、ＲＯＭ１４に記憶されている。このようにして特定した優先度に基づいて、選択フレーム種別が、衝突フレーム種別よりも優先度が低い場合は、遅延時間を所定の値（例えば３ミリ秒）に設定する。また、選択フレーム種別が、衝突フレーム種別よりも優先度が高い場合は、遅延時間をゼロ秒に設定する。また、ステップ１２７では、遅延時間をゼロ秒に設定する。
【００５３】
ステップ１２６、１２７に続いては、ステップ１２８で、次回の定期送信間隔を再設定する。具体的には、選択フレーム種別に対応する定期送信間隔データＴｉに、ステップ１２６または１２７で設定した遅延時間を加算した値を、選択フレーム種別に対応する定期送信カウンタＣｉの新たな値とする。
【００５４】
続いてステップ１２９では、今回のステップ１２０の実行において、エンジンＥＣＵ１におけるすべてのフレーム種別について、それらを選択フレーム種別としてステップ１２２〜１２８を実行したか否かを判定する。そして、まだ実行していない場合、その実行していないフレーム種別のうち１つを選択フレーム種別として再度ステップ１２２を実行する。また、すべてのフレーム種別について実行した場合、すべてのイベント発生フラグをオフにし、ステップ１２０の処理を終了する。
【００５５】
以上のような通信処理プログラム１００をＣＰＵ１２が実行することで、エンジンＥＣＵ１は、所定の時間経過毎に、各定期送信カウンタをデクリメントし（ステップ１１０参照）、送信処理を行い（ステップ１２０参照）、受信処理を行う（ステップ１３０参照）。そして、送信処理において、各フレーム種別について、定期送信またはイベント送信についての送信要求がある場合、すなわち現在が定期送信タイミングまたはイベント送信タイミングである場合（ステップ１２２参照）、今回の送信タイミング分のデータフレームの送信を行う（ステップ１２４参照）。
【００５６】
さらに、送信したデータフレームのフレーム種別がグループ１に属し、かつグループ１に属する他のフレーム種別のうち、現時点で送信要求のあるものがあるか否かを判定する（ステップ１２５参照）。そして、送信要求のあるグループ１に属する他のフレームが存在する場合、当該送信要求のある他のフレーム種別よりも自身のフレーム種別の方が優先度が低ければ、遅延時間を所定の正の（通信処理プログラム１００の実行周期よりも大きい）値に設定し、また、当該送信要求のある他のフレーム種別よりも自身のフレーム種別の方が優先度が高ければ、遅延時間をゼロに設定する（ステップ１２６参照）。また、送信要求のあるグループ１に属する他のフレームが存在しない場合、遅延時間をゼロに設定する（ステップ１２７参照）。そして、次回の定期送信間隔を、定期送信間隔データＴｉの値、すなわち定期送信間隔のフォルト値から設定した遅延時間だけ増やしたものに設定する（ステップ１２８参照）。
【００５７】
図６〜図８に、このような作動のエンジンＥＣＵ１によって送信されるグループ１に属するフレーム種別Ａおよびフレーム種別Ｂのデータフレームの、実際の送信タイミングの図を示す。なおここでは、フレーム種別Ａの優先度の方が、フレーム種別Ｂの優先度よりも高いとする。
【００５８】
まず、エンジンＥＣＵ１の起動直後は、グループ１の各定期送信カウンタの値がそれぞれ異なっており、ＣＰＵ１２による通信処理プログラム１００の実行の度にそれらの値が等しく減少していく。そして、どのフレーム種別についてもイベント送信タイミングとならないうちに、まず図６のタイミング３１において、フレーム種別Ａの定期送信カウンタがゼロになるとする。すると、その時点でステップ１２４の処理によって、フレーム種別Ａのデータフレームが送信される。そしてこの時点では、グループ１の各定期送信カウンタの値がそれぞれ異なっており、かつイベント送信タイミングの発生もないので、ステップ１２５、１２７、１２８の処理により、フレーム種別Ａの定期送信カウンタには、当該フレーム種別Ａの定期送信間隔データの値、すなわちグループ１において一律の１０００ミリ秒が設定される。
【００５９】
また、タイミング３１の後、どのフレーム種別についてもイベント送信タイミングとならないうちに、タイミング３２において、フレーム種別Ｂの定期送信カウンタがゼロになるとする。すると、その時点でステップ１２４の処理によって、フレーム種別Ｂのデータフレームが送信され、また、ステップ１２５、１２７、１２８の処理により、フレーム種別Ｂの定期送信カウンタには、当該フレーム種別Ｂの定期送信間隔データの値、すなわちグループ１において一律の１０００ミリ秒が設定される。
【００６０】
また、タイミング３２の後、どのフレーム種別についてもイベント送信タイミングとならないうちに、タイミング３１から１０００ミリ秒後のタイミング３３になるとする。すると、フレーム種別Ａの定期送信カウンタがゼロとなる。そして、その時点でフレーム種別Ａのデータフレームが送信され、また、フレーム種別Ａの定期送信カウンタには、グループ１において一律の定期送信間隔データの値が設定される。
【００６１】
また、タイミング３３の後、どのフレーム種別についてもイベント送信タイミングとならないうちに、タイミング３２から１０００ミリ秒後のタイミング３４になるとする。すると、フレーム種別Ｂの定期送信カウンタがゼロとなる。そして、その時点でフレーム種別Ｂのデータフレームが送信され、また、フレーム種別Ｂの定期送信カウンタには、グループ１において一律の定期送信間隔データの値が設定される。
【００６２】
このように、どのフレーム種別についてもイベント送信タイミングとならないまま時間が経過していくと、図７のタイミング４１、４３、４５のような一律の定期送信間隔Ｔ毎に、フレーム種別Ａのデータフレームが送信され、また、タイミング４２、４４、４６、４８、５０、５２のような、一律の定期送信間隔Ｔ毎ではあるが、フレーム種別Ａとはずれたタイミングで、フレーム種別Ｂのデータフレームが送信される。
【００６３】
また、他のグループ１のフレーム種別の定期送信タイミングと異なるタイミング４７において、フレーム種別Ａのデータフレームのイベント送信タイミングとなった、すなわち、フレーム種別Ａのイベント発生フラグがオンとなったとする。すると、その時点でステップ１２４の処理によって、フレーム種別Ａのデータフレームが送信され、また、ステップ１２５、１２７、１２８の処理により、フレーム種別Ａの定期送信カウンタには、当該フレーム種別Ｂの定期送信間隔データの値、すなわちグループ１において一律の１０００ミリ秒が設定される。そしてこの後は、タイミング４７を起点として定期送信間隔Ｔで繰り返すタイミング４９、５１、５３で、フレーム種別Ａのデータフレームが送信される。
【００６４】
また、図８のタイミング６７において、フレーム種別Ａおよびフレーム種別Ｂのデータフレームの送信タイミングが同時に発生した、すなわち、フレーム種別Ａおよびフレーム種別Ｂのイベント発生フラグが同時期（すなわち通信処理プログラム１００の同じ実行周期内に）に共にオンとなったとする。すると、その時点で、フレーム種別Ａを選択フレームとするステップ１２４の処理によって、フレーム種別Ａのデータフレームが送信され、また、その直後のステップ１２５で、グループ１の他のフレーム種別（すなわちフレーム種別Ｂ）の送信要求があると判定する。そして、ステップ１２６で、フレーム種別Ａの方がフレーム種別Ｂよりも優先度が高いので、遅延時間がゼロとなり、続いてステップ１２８では、フレーム種別Ａの定期送信カウンタには、グループ１において一律の定期送信間隔Ｔが設定される。さらに、フレーム種別Ｂを選択フレームとするステップ１２４の処理によって、フレーム種別Ｂのデータフレームが送信され、また、その直後のステップ１２５で、グループ１の他のフレーム種別（すなわちフレーム種別Ａ）の送信要求があると判定する。そして、ステップ１２６で、フレーム種別Ａの方がフレーム種別Ｂよりも優先度が高いので、遅延時間Δｔが所定の正の値（例えば３ミリ秒）となり、続いてステップ１２８では、フレーム種別Ｂの定期送信カウンタには、グループ１において一律の定期送信間隔Ｔにこの遅延時間Δｔを加えた値が設定される。
【００６５】
このようになることで、タイミング６７以後は、そのＴ秒後のタイミング６８でフレーム種別Ａのデータフレームが送信され、さらにΔｔ秒遅れたタイミング６９で種別Ｂのデータフレームが送信されるようになる。そしてタイミング６８を起点として定期送信間隔Ｔで繰り返すタイミング７０、７２等で、フレーム種別Ａのデータフレームが送信される。また、タイミング６９において、フレーム種別Ｂを選択フレームとするステップ１２５、１２７、１２８の処理によって、フレーム種別Ｂの定期送信カウンタには、グループ１において一律の定期送信間隔Ｔが再度設定されるので、タイミング６９を起点として定期送信間隔Ｔで繰り返すタイミング７１、７３等で、フレーム種別Ｂのデータフレームが送信される。
【００６６】
このようになっているので、定期送信タイミングおよびイベント送信タイミングで送信するようになっており、かつ互いの定期送信間隔が等しいようになっているフレーム種別について、エンジンＥＣＵ１は、２つ以上のフレーム種別の送信タイミングが重なったことに基づいて、送信タイミングが重なった当該フレーム種別のうち優先度の低いものの次回の送信タイミングを、現在から定期送信間隔の経過時よりも遅延時間分遅らすことで、重なったフレーム種別間の一部の送信タイミングをずらずことができる。したがって、ずれて以降それらのフレーム種別間の送信タイミングの重なりが連続的に何度も発生してしまう恐れが低減する。
【００６７】
なお、上記の実施形態において、ＣＰＵ１２が、通信処理プログラム１００のステップ１２５を実行することで、重なり判定手段として機能し、ステップ１２６、１２７、および１２８を実行することで、タイミングずらし手段として機能する。
（他の実施形態）
なお、上記の実施形態において図８に示したタイミング６７のような、グループ１に属する２つのフレーム種別Ａ、Ｂのイベント送信タイミングが重なった場合のみならず、（１）フレーム種別Ａのイベント送信タイミングとフレーム種別Ｂの定期送信タイミングとが重なった場合、（２）フレーム種別Ｂのイベント送信タイミングとフレーム種別Ａの定期送信タイミングとが重なった場合、および（３）設計ミス等の原因によってフレーム種別Ａの定期送信タイミングとフレーム種別Ｂの定期送信タイミングとが重なった場合、の３つの場合においても、上記の実施形態のエンジンＥＣＵ１は、その重なったタイミングの次の定期送信タイミングを、２つのフレーム種別Ａ、Ｂ間でずれるようにすることができる。これは、図５のステップ１２２で、送信要求があるか否かを、「定期送信要求またはイベント送信要求がある」か否かで判定することで、「定期送信要求またはイベント送信要求がある」場合に、ステップ１２５の判定およびステップ１２６、１２７、１２８の処理を行うようになっているからである。
【００６８】
このように、複数のフレーム種別間のイベント送信タイミング同士の重なり、複数のフレーム種別間の定期送信タイミング同士の重なり、および複数のフレーム種別間の定期送信タイミングとイベント送信タイミングの重なりを検出することで、網羅的な重なりの検出を行うことができる。
【００６９】
他の例としては、図５のステップ１２２で、送信要求があるか否かを、「定期送信要求がある」か否かで判定することで、「定期送信要求がある」場合に、ステップ１２５の判定およびステップ１２６、１２７、１２８の処理を行うようになっている場合は、（１）フレーム種別Ａのイベント送信タイミングとフレーム種別Ｂの定期送信タイミングとが重なった場合、（２）フレーム種別Ｂのイベント送信タイミングとフレーム種別Ａの定期送信タイミングとが重なった場合、および（３）フレーム種別Ａの定期送信タイミングとフレーム種別Ｂの定期送信タイミングとが重なった場合、の３つの場合には、その後の定期送信タイミングをずらすことができるが、（４）フレーム種別Ａ、Ｂのイベント送信タイミングが重なった場合には、ステップ１２２で否定と判定するので、その後の定期送信タイミングをずらすことができない。
【００７０】
さらに他の例としては、図５のステップ１２２で、送信要求があるか否かを、「イベント送信要求がある」か否かで判定することで、「イベント送信要求がある」場合に、ステップ１２５の判定およびステップ１２６、１２７、１２８の処理を行うようになっている場合は、（１）フレーム種別Ａのイベント送信タイミングとフレーム種別Ｂの定期送信タイミングとが重なった場合、（２）フレーム種別Ｂのイベント送信タイミングとフレーム種別Ａの定期送信タイミングとが重なった場合、およびの（４）フレーム種別Ａ、Ｂのイベント送信タイミングが重なった場合の３つの場合には、その後の定期送信タイミングをずらすことができるが、（３）フレーム種別Ａの定期送信タイミングとフレーム種別Ｂの定期送信タイミングとが重なった場合には、ステップ１２２で否定と判定するので、その後の定期送信タイミングをずらすことができない。
【００７１】
しかし、これら２つの他の例の処理は、上記実施形態の場合に比べて処理が簡易である。なお、これら２つの他の例においても、定期送信タイミングとイベント送信タイミングの両方のタイミングで、データフレーム送信する。
【００７２】
また、上記の実施形態において、ステップ１２５で、選択フレーム種別を含め３つ以上のグループ１のフレーム種別の送信要求が重なった場合、それら重なったフレーム種別中で自分の優先度がｎ番目のときは、通信処理プログラム１００のステップ１２６で、自身の次回の遅延時間をΔｔ×（ｎ−１）と設定するようになっていればよい。
【００７３】
また、エンジンＥＣＵ１は、送信タイミングが重なっていると判定した対象のフレーム種別の一部についての、次回の送信タイミングを、現在から遅延時間の経過時とするようになっているが、ずらす対象のタイミングは、かならずしも次回のものでなくとも、今回のものであってもよいし、次々回のものであってもよい。
【００７４】
また、エンジンＥＣＵ１のＲＯＭ１４またはフラッシュメモリ１５が、グループ１の複数のフレーム種別のそれぞれに割り当てられた遅延許容時間を記憶するようになっている場合、送信タイミングをずらす対象のフレーム種別の遅延許容時間が所定の基準（例えば所定のしきい値時間）よりも短ければ、当該フレーム種別の次回の送信タイミングを、今回の送信タイミングから前記一定期間に遅延時間を加えた時間の経過時とし、送信タイミングをずらす対象のフレーム種別の遅延許容時間が前記所定の基準よりも長ければ、当該フレーム種別の今回の送信タイミングを、現在から遅延時間の経過時とするようになっていてもよい。
【００７５】
このようになっているので、遅延許容時間が短いフレーム種別、すなわち現在送信することがより重要なフレーム種別については、今回の送信タイミングについては遅延させず、次回以降の定期送信タイミングをずらし、一方、遅延許容時間が長いフレーム種別、すなわち現在送信することが比較的重要でないフレーム種別については、今回の送信タイミングをずらすことができる。すなわち、遅延許容時間に基づいて送信タイミングをずらす時期を調整することができる。
【００７６】
また、通信バス６は、かならずしもＣＡＮの通信経路である必要はない。また、有線通信経路である必要もなく、無線通信経路であってもよい。
【図面の簡単な説明】
【００７７】
【図１】エンジンＥＣＵ１を含む車両内の通信システムを示すブロック図である。
【図２】エンジンＥＣＵ１の有するフレーム種別グループデータを示す図である。
【図３】ＲＡＭ１３またはフラッシュメモリ１５中の、フレーム種別毎の定期送信間隔データおよび定期送信カウンタを示す図である。
【図４】ＣＰＵ１２の実行する通信処理プログラム１００のフローチャートである。
【図５】通信処理プログラム１００の送信処理の詳細を示すフローチャートである。
【図６】定期送信タイミングの割り当てを示すタイミング図である。
【図７】異なるフレーム種別間で送信タイミングが重ならない場合のフレームデータ送信のタイミング図である。
【図８】異なるフレーム種別間で送信タイミングが重なった場合のフレームデータ送信のタイミング図である。
【図９】従来における、異なるフレーム種別間で送信タイミングが重なった場合のらない場合のフレームデータ送信のタイミング図である。
【符号の説明】
【００７８】
１…エンジンＥＣＵ、２…ブレーキＥＣＵ、３…メータＥＣＵ、４…ＡＴＥＣＵ、
５…エアコンＥＣＵ、６…通信バス、１１…データ送受信部、１２…ＣＰＵ、
１３…ＲＡＭ、１４…ＲＯＭ、１５…フラッシュメモリ、
１００…通信処理プログラム。
【図１】
2006180205.tif 000003
【図２】
2006180205.tif 000004
【図３】
2006180205.tif 000005
【図４】
2006180205.tif 000006
【図５】
2006180205.tif 000007
【図６】
2006180205.tif 000008
【図７】
2006180205.tif 000009
【図８】
2006180205.tif 000010
【図９】
2006180205.tif 000011