(57)【要約】【課題】予め設けられているメッセージバッファを用いて通信データ量の増大に対応する【解決手段】メッセージと、メッセージの種別を示すＣＡＮＩＤ（以下ＩＤという）とが少なくとも格納される複数のメッセージバッファ（以下ＭＢという）と、ＭＢに格納されたデータを抽出してフレームを構成し送信すると共に、フレームを受信した場合には、フレームから抽出したＩＤと一致するＩＤが格納されたＭＢに、抽出したメッセージを格納するＣＡＮコントローラ１１を備え、ＩＤ毎に予め設定された、データパターン（以下ＤＰという）１でフレームを送信するタイミングに近づくと、ＤＰ１のデータとサム値ＣＳＵＭ１を、このタイミングに対応したＩＤが格納されているＭＢに格納すると共に、ＤＰ２でフレームを送信するタイミングに近づくと、ＤＰ２のデータとサム値ＣＳＵＭ２を、このＩＤが格納されたＭＢに格納する。【選択図】図１
2013082352.tif 000002
【特許請求の範囲】
【請求項１】
メッセージと、該メッセージの種別であるメッセージ種別を示すメッセージ識別コードとが少なくとも格納される複数のメッセージバッファと、
前記メッセージバッファに格納されたデータを抽出してフレームを構成し通信バス上に送信するとともに、該通信バスを介して前記フレームを受信した場合には、受信した前記フレームから抽出した前記メッセージ識別コードと一致する前記メッセージ識別コードが格納されている前記メッセージバッファに、前記フレームから抽出した前記メッセージを格納する送受信手段とを備える車両用通信装置であって、
前記メッセージ識別コード毎に予め設定された第１タイミングになると、該第１タイミングに対応した前記メッセージ識別コードの前記メッセージについて予め設定された第１データ種別のデータと、前記第１データ種別を示す第１データ種別情報とを、前記第１タイミングに対応した前記メッセージ識別コードが格納されている前記メッセージバッファに格納する第１格納手段と、
前記メッセージ識別コード毎に前記第１タイミングと異なるように予め設定された第２タイミングになると、該第１タイミングに対応した前記メッセージ識別コードの前記メッセージについて前記第１データ種別と異なるように予め設定された第２データ種別のデータと、前記第２データ種別を示す第２データ種別情報とを、前記第２タイミングに対応した前記メッセージ識別コードが格納されている前記メッセージバッファに格納する第２格納手段とを備える
ことを特徴とする車両用通信装置。
【請求項２】
前記第１データ種別情報は、前記第１データ種別のデータについて、予め設定された第１チェックサム算出式に基づいて算出された第１チェックサム値であり、
前記第２データ種別情報は、前記第２データ種別のデータについて、前記第１チェックサム算出式と異なるように予め設定された第２チェックサム算出式に基づいて算出された第２チェックサム値である
ことを特徴とする請求項１に記載の車両用通信装置。
【請求項３】
前記第１データ種別情報は、前記第１データ種別のデータについてのデータ長であり、
前記第２データ種別情報は、前記第２データ種別のデータについてのデータ長であり、
前記第１データ種別のデータと前記第２データ種別のデータとで、データ長が異なる
ことを特徴とする請求項１に記載の車両用通信装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、メッセージバッファを利用してメッセージの送受信を行う車両用通信装置に関する。
【背景技術】
【０００２】
車両において制御の高度化やサービスの充実を図るために、電子制御ユニット（ＥＣＵ）等の車載機器同士を通信バスで相互に接続してローカルエリアネットワーク（いわゆる車内ＬＡＮ）を構成し、車載機器間で情報を共有することが行われており（例えば、特許文献１を参照）、特に車内ＬＡＮに多用されている通信プロトコルとして、ＣＳＭＡ／ＣＤ方式の一つであるＣＡＮ（Controller Area Network ）プロトコルが知られている。
【０００３】
このＣＡＮプロトコルでは、送信メッセージをフレーム化して通信バスへ送信する前には、送信メッセージの種類を表す識別ＩＤコード（以下、ＣＡＮＩＤという）が設定されたメッセージバッファに送信メッセージを格納するとともに、通信バスを介してフレームを受信した場合には、フレームから抽出した受信メッセージを、この受信メッセージに付与されているＣＡＮＩＤと同一のＣＡＮＩＤが予め設定されたメッセージバッファに格納するように規定されている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００１−２６５４０２号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
近年、制御の高度化等により、車内ＬＡＮ内の車載機器間でやり取りされる通信データ量が増大している。しかし、車載機器に搭載された通信装置内に設けられているメッセージバッファの数の上限は予め決められている（例えば３２個）。このため、通信データ量が増大すると、メッセージバッファを増設しなければならなくなるという問題があった。
【０００６】
本発明は、こうした問題に鑑みてなされたものであり、予め設けられているメッセージバッファを用いて通信データ量の増大に対応することを可能とする技術を提供することを目的とする。
【課題を解決するための手段】
【０００７】
上記目的を達成するためになされた請求項１に記載の発明は、メッセージと、メッセージの種別であるメッセージ種別を示すメッセージ識別コードとが少なくとも格納される複数のメッセージバッファと、メッセージバッファに格納されたデータを抽出してフレームを構成し通信バス上に送信するとともに、通信バスを介してフレームを受信した場合には、受信したフレームから抽出したメッセージ識別コードと一致するメッセージ識別コードが格納されているメッセージバッファに、フレームから抽出したメッセージを格納する送受信手段とを備える車両用通信装置であって、第１格納手段が、メッセージ識別コード毎に予め設定された第１タイミングになると、第１タイミングに対応したメッセージ識別コードのメッセージについて予め設定された第１データ種別のデータと、第１データ種別を示す第１データ種別情報とを、第１タイミングに対応したメッセージ識別コードが格納されているメッセージバッファに格納するとともに、第２格納手段が、メッセージ識別コード毎に第１タイミングと異なるように予め設定された第２タイミングになると、第１タイミングに対応したメッセージ識別コードのメッセージについて第１データ種別と異なるように予め設定された第２データ種別のデータと、第２データ種別を示す第２データ種別情報とを、第２タイミングに対応したメッセージ識別コードが格納されているメッセージバッファに格納する。
【０００８】
このように構成された車両用通信装置では、まず、第１タイミングになると、第１タイミングに対応したメッセージ識別コードのメッセージについて、第１データ種別のデータと、第１データ種別情報とが、第１タイミングに対応したメッセージ識別コードが格納されているメッセージバッファに格納される。これにより、メッセージバッファに格納されたメッセージ識別コード、第１データ種別のデータ、および第１データ種別情報が含まれるフレームが送信される。さらに、第１タイミングと異なる第２タイミングになると、第２タイミングに対応したメッセージ識別コードのメッセージについて、第１データ種別と異なる第２データ種別のデータと、第２データ種別情報とが、第２タイミングに対応したメッセージ識別コードが格納されているメッセージバッファに格納される。これにより、メッセージバッファに格納されたメッセージ識別コード、第２データ種別のデータ、および第２データ種別情報が含まれるフレームが送信される。つまり、同一のメッセージ識別コードを含みデータ種別の異なるデータを含む２種類のフレームがそれぞれ異なるタイミングで送信される。そして、この２種類のフレームにはそれぞれ、データ種別を示す情報が含まれている。
【０００９】
このため、第１タイミングの直後に送信されたフレームを受信した通信装置は、この受信フレームから抽出したメッセージ識別コードと一致するメッセージ識別コードが格納されているメッセージバッファに、フレームから抽出したメッセージ（すなわち、第１データ種別のデータと第１データ種別情報）を格納する一方、第２タイミングの直後に送信されたフレームを受信した通信装置は、この受信フレームから抽出したメッセージ識別コードと一致するメッセージ識別コードが格納されているメッセージバッファに、フレームから抽出したメッセージ（すなわち、第２データ種別のデータと第２データ種別情報）を格納する。
【００１０】
したがって、同一のメッセージ識別コードが格納されているメッセージバッファに、データ種別が異なる２種類のデータを時分割で格納することができるとともに、同一のメッセージ識別コードが格納されているメッセージバッファに格納されたデータのデータ種別を第１データ種別情報および第２データ種別情報により認識することができる。
【００１１】
これにより、第１データ種別のデータと第２データ種別のデータのそれぞれのデータ量が１つのメッセージバッファに記憶可能なデータ量を超えておらず、且つ、第１データ種別のデータと第２データ種別のデータとの総データ量が、１つのメッセージバッファに記憶可能なデータ量を超えている場合において、第１データ種別のデータを格納するためのメッセージバッファと、第２データ種別のデータを格納するためのメッセージバッファとを別々に設ける必要がなくなり、予め設けられているメッセージバッファを用いて通信データ量の増大に対応することが可能になる。
【００１２】
さらに、第１データ種別のデータと第２データ種別のデータの受信を必要とする車両用通信装置（以下、第１，２データ必要通信装置という）と、第１データ種別のデータの受信を必要とするとともに第２データ種別のデータの受信を不要とする車両用通信装置（以下、第２データ不要通信装置という）とが混在する車両用通信システムにおいて、或る車両用通信装置が第２データ種別のデータを含むフレームを送信した場合に、第１，２データ必要通信装置では、受信したフレームに第２データ種別情報が含まれるか否かを判断するための機能が必要である一方、第２データ不要通信装置では、受信したフレームに第２データ種別情報が含まれるか否かを判断するための機能が不要である。そして、車両用通信システムを構成する複数の車両用通信装置のうち、第２データ種別のデータを必要とする車両用通信装置（第１，２データ必要通信装置）のみに、第２データ種別情報が含まれるか否かを判断するための上記機能を追加すればよく、第２データ不要通信装置に対しては何らかの機能を追加することなく、第２データ種別のデータを送受信することが可能な車両用通信システムを構築することが可能となる。
【００１３】
また、請求項１に記載の車両用通信装置において、請求項２に記載のように、第１データ種別情報は、第１データ種別のデータについて、予め設定された第１チェックサム算出式に基づいて算出された第１チェックサム値であり、第２データ種別情報は、第２データ種別のデータについて、第１チェックサム算出式と異なるように予め設定された第２チェックサム算出式に基づいて算出された第２チェックサム値であるようにしてもよいし、請求項３に記載のように、第１データ種別情報は、第１データ種別のデータについてのデータ長であり、第２データ種別情報は、第２データ種別のデータについてのデータ長であり、第１データ種別のデータと第２データ種別のデータとで、データ長が異なるようにしてもよい。
【００１４】
チェックサム値およびデータ長は、フレームに含まれる情報として、従来、広く利用されているものであり、チェックサム値またはデータ長を含むフレームを送受信するように構成された車両用通信システムにおいて、フレームに新たな情報を追加することなく、第１データ種別のデータと第２データ種別のデータとの識別を可能とすることができる。具体的には、送受信データの誤り検出のためにチェックサムを含むデータを送受信する通信システムでは第１，２データ種別情報としてチェックサム値を利用すればよく、データ長を含むデータを送受信する通信システムでは、第１，２データ種別情報としてデータ長を利用すればよい。
【図面の簡単な説明】
【００１５】
【図１】車両用通信システム１とメッセージバッファの構成を示すブロック図である。
【図２】第１実施形態の送信メッセージ格納処理を示すフローチャートである。
【図３】第１実施形態のメッセージバッファＭＢのデータパターンを示す図である。
【図４】第１実施形態の受信メッセージ格納処理を示すフローチャートである。
【図５】データパターン２が不要な第１実施形態の受信メッセージ格納処理を示すフローチャートである。
【図６】第２実施形態の送信メッセージ格納処理を示すフローチャートである。
【図７】第２実施形態のメッセージバッファＭＢのデータパターンを示す図である。
【図８】第２実施形態の受信メッセージ格納処理を示すフローチャートである。
【発明を実施するための形態】
【００１６】
（第１実施形態）
以下に本発明の第１実施形態を図面とともに説明する。
図１は、本発明が適用された車両用通信システム１の構成を示すブロック図である。
【００１７】
車両用通信システム１は、車両に搭載され、図１に示すように、複数の電子制御装置（以下、ＥＣＵという）１０ａ，１０ｂ，１０ｃ，…を、共通の通信バスＢＳを介して相互に通信可能となるように接続することで構成され、これらＥＣＵ１０ａ，１０ｂ，１０ｃ，…のそれぞれがノードとして機能するようにされている。なお、この車両用通信システム１では、通信プロトコルとしてＣＡＮ（ＣＡＮ；Controller Area Network）が採用されている。以下、ＥＣＵ１０ａ，１０ｂ，１０ｃ…を特に区別しないでいずれか一つを指す場合は、ＥＣＵ１０と表記する。
【００１８】
ＥＣＵ１０ａ，１０ｂ，１０ｃ…としては、具体的には、エンジン制御を司るエンジンＥＣＵ、ブレーキ制御を司るブレーキＥＣＵ、ステアリング制御を司るステアリングＥＣＵ、サスペンション制御を司るサスペンションＥＣＵ、ライトのオン／オフを制御するＥＣＵ等、種々の電子制御装置を挙げることができる。なお図１では、ＥＣＵ１０を５つ図示しているが、通信システム１を構成するＥＣＵ１０の数がこれに限定されないことは言うまでもない。
【００１９】
ＥＣＵ１０は、ＣＡＮプロトコルに従って他のＥＣＵとの通信を制御するＣＡＮコントローラ１１と、ＣＡＮコントローラ１１と通信バスＢＳとの間でデータを送受信するためのＣＡＮトランシーバ１２と、ＣＡＮコントローラ１１を介して他のＥＣＵとの間でメッセージを交換することにより、他のＥＣＵと連携して各種処理を実行する制御部１３とを備えている。
【００２０】
ＣＡＮトランシーバ１２は、予め規定された通信バスの電気的条件を満たす信号を確実に送受信するように構成されている。
ＣＡＮコントローラ１１は、ＥＣＵ間で送受信されるメッセージ等を格納するためのメッセージバッファＭＢを複数（本実施形態で３２個）備えたデータ格納部２１と、メッセージバッファＭＢの格納値に基づいてメッセージをフレーム化し、ＣＡＮトランシーバ１２を介して通信バスＢＳに送信する送信制御、ＣＡＮトランシーバ１２を介してフレームを受信してメッセージの抽出等を行う受信制御、バス上でフレームが衝突した際のバス権の調停制御等、ＣＡＮプロトコルに従った通信制御を実行するプロトコルコア部２２と、プロトコルコア部２２の送信制御および受信制御時に、データ格納部２１へのアクセスを制御するアクセス制御部２３とを備えている。
【００２１】
なお、データ格納部２１に設けられたメッセージバッファＭＢのそれぞれには、メッセージバッファを識別するためのボックス番号（本実施形態では０〜３１の整数値）が付与されている。
【００２２】
また各メッセージバッファＭＢには、メッセージの種類および優先度を表す識別コード（以下、ＣＡＮＩＤという）を格納するためのＣＡＮＩＤレジスタＲ１、メッセージのデータ長を示すＤＬＣ（Data Length Code）を格納するためのＤＬＣレジスタＲ２、フレームに載せて送信するメッセージまたは受信フレームから抽出したメッセージを格納するためのメッセージレジスタＲ３が設けられている。なお、メッセージレジスタＲ３には１バイトのデータ記憶領域が８個設けられており、メッセージレジスタＲ３は最大８バイトのデータを記憶することができる。そして、１バイトのデータ記憶領域のそれぞれには、記憶領域を識別するためデータ番号（本実施形態では１〜８の整数値）が付与されている。以下、付与されたデータ番号がｎであるデータ記憶領域を第ｎデータ記憶領域（ｎは１〜８の整数値）というとともに、付与されたデータ番号が１，２，３，４，５，６，７，８であるデータ記憶領域に格納されているデータをそれぞれ、ｄａｔａ１，ｄａｔａ２，ｄａｔａ３，ｄａｔａ４，ｄａｔａ５，ｄａｔａ６，ｄａｔａ７，ｄａｔａ８と表記する。  
【００２３】
また制御部１３は、ＣＰＵ３１、ＲＯＭ３２、およびＲＡＭ３３を備え、ＲＯＭ３２が記憶するプログラムに基づく処理をＣＰＵ３１が実行することにより、各種処理を実行する。例えば、他のＥＣＵに対して送信すべきメッセージ（以下、送信メッセージという）がある場合、メッセージの内容からそのメッセージに対応するＣＡＮＩＤを特定し、特定したＣＡＮＩＤが設定されているメッセージバッファＭＢのメッセージレジスタＲ３にメッセージを格納する。
【００２４】
また制御部１３は、ＣＡＮコントローラ１１からフレームを受信した旨の通知を受けた場合に、メッセージバッファＭＢのメッセージレジスタＲ３の内容を読み出すことにより、他のＥＣＵからのメッセージを受信する。
【００２５】
このように構成されたＥＣＵ１０において、制御部１３は、送信メッセージをメッセージバッファＭＢに格納する送信メッセージ格納処理と、メッセージバッファＭＢに格納された受信メッセージをＲＡＭ３３に格納する受信メッセージ格納処理を実行する。
【００２６】
まず、制御部１３が実行する送信メッセージ格納処理の手順を図２，３を用いて説明する。図２は送信メッセージ格納処理を示すフローチャートである。図３は、メッセージバッファＭＢのデータパターンを示す図である。この送信メッセージ格納処理は、ＥＣＵ１０が起動している間に繰り返し実行される処理である。
【００２７】
この送信メッセージ格納処理が実行されると、制御部１３のＣＰＵ３１は、まずＳ１０にて、フレームを送信するタイミングに近づいているＣＡＮＩＤがあるか否かを判断する。ここで、フレームを送信するタイミングに近づいているＣＡＮＩＤがない場合には（Ｓ１０：ＮＯ）、送信メッセージ格納処理を一旦終了する。一方、フレームを送信するタイミングに近づいているＣＡＮＩＤがある場合には（Ｓ１０：ＹＥＳ）、Ｓ２０にて、データパターン１で送信するタイミングであるか否かを判断する。
【００２８】
なお、データパターン１は、下式（１）で算出されたサム値ＣＳＵＭ１が、メッセージバッファＭＢの第８データ記憶領域に格納されるものである（図３（ａ）を参照）。
【００２９】
【数１】
2013082352.tif 000003
【００３０】
また、データパターン２は、下式（２）で算出されたサム値ＣＳＵＭ２が、メッセージバッファＭＢの第８データ記憶領域に格納されるものである（図３（ｂ）を参照）。
【００３１】
【数２】
2013082352.tif 000004
【００３２】
また、データパターン１でフレーム送信を実行するタイミングと、データパターン２でフレーム送信を実行するタイミングが、ＣＡＮＩＤ毎に予め設定されている。
そしてＳ２０にて、データパターン１で送信するタイミングである場合には（Ｓ２０：ＹＥＳ）、Ｓ３０にて、今回送信するデータ（すなわち、ｄａｔａ１〜７）について上式（１）でサム値ＣＳＵＭ１を算出して、Ｓ５０に移行する。
【００３３】
一方、Ｓ２０にて、データパターン１で送信するタイミングでない場合には（Ｓ２０：ＮＯ）、データパターン２で送信するタイミングであると判断して、Ｓ４０にて、今回送信するデータ（すなわち、ｄａｔａ１〜７）について上式（２）でサム値ＣＳＵＭ２を算出して、Ｓ５０に移行する。
【００３４】
そしてＳ５０に移行すると、フレームを送信するタイミングに近づいているとＳ１０で判断されたＣＡＮＩＤが格納されたメッセージバッファＭＢの第１〜７データ記憶領域に、今回送信するデータ（ｄａｔａ１〜７）を格納するとともに、第８データ記憶領域に、Ｓ３０またはＳ４０で算出されたサム値ＣＳＵＭ１またはサム値ＣＳＵＭ２を格納する。その後Ｓ６０にて、Ｓ５０の処理でメッセージバッファＭＢに格納されたメッセージをフレーム化して送信する処理をＣＡＮコントローラ１１に実行させて、送信メッセージ格納処理を一旦終了する。
【００３５】
次に、制御部１３が実行する受信メッセージ格納処理の手順を図４を用いて説明する。図４は受信メッセージ格納処理を示すフローチャートである。この受信メッセージ格納処理は、ＥＣＵ１０が起動している間に繰り返し実行される処理である。
【００３６】
この受信メッセージ格納処理が実行されると、制御部１３のＣＰＵ３１は、まずＳ１１０にて、メッセージバッファＭＢにメッセージが格納されたか否かを判断する。ここで、メッセージバッファＭＢにメッセージが格納されていない場合には（Ｓ１１０：ＮＯ）、受信メッセージ格納処理を一旦終了する。一方、メッセージバッファＭＢにメッセージが格納された場合には（Ｓ１１０：ＹＥＳ）、Ｓ１２０にて、メッセージが格納されたとＳ１１０の処理で判断されたメッセージバッファＭＢのメッセージレジスタＲ３について上式（１）でサム値ＣＳＵＭ１を算出する。
【００３７】
その後Ｓ１３０にて、Ｓ１２０で算出されたサム値ＣＳＵＭ１が、メッセージが格納されたとＳ１１０の処理で判断されたメッセージバッファＭＢのｄａｔａ８と一致しているか否かを判断する。ここで、サム値ＣＳＵＭ１がｄａｔａ８と一致している場合には（Ｓ１３０：ＹＥＳ）、Ｓ１６０に移行する。
【００３８】
一方、サム値ＣＳＵＭ１がｄａｔａ８と一致していない場合には（Ｓ１３０：ＮＯ）、Ｓ１４０にて、メッセージが格納されたとＳ１１０の処理で判断されたメッセージバッファＭＢのメッセージレジスタＲ３について上式（２）でサム値ＣＳＵＭ２を算出する。
【００３９】
その後Ｓ１５０にて、Ｓ１４０で算出されたサム値ＣＳＵＭ２が、メッセージが格納されたとＳ１１０の処理で判断されたメッセージバッファＭＢのｄａｔａ８と一致しているか否かを判断する。ここで、サム値ＣＳＵＭ２がｄａｔａ８と一致していない場合には（Ｓ１５０：ＮＯ）、受信メッセージ格納処理を一旦終了する。一方、サム値ＣＳＵＭ２がｄａｔａ８と一致している場合には（Ｓ１５０：ＹＥＳ）、Ｓ１６０に移行する。
【００４０】
そしてＳ１６０に移行すると、メッセージが格納されたとＳ１１０で判断されたメッセージバッファＭＢのメッセージレジスタＲ３に格納されたメッセージを、制御用ＲＡＭにコピーし、受信メッセージ格納処理を一旦終了する。
【００４１】
なお、制御用ＲＡＭは、ＲＡＭ３３内に設けられたデータ記憶領域であり、データ格納部２１に設けられたメッセージバッファＭＢのそれぞれに対応して設けられている。これにより、制御部１３のＣＰＵ３１が、制御用ＲＡＭにコピーされたメッセージを参照し、このメッセージが示す情報を用いて、車両制御処理を実行することができる。
【００４２】
このように構成されたＥＣＵ１０では、メッセージと、メッセージの種別を示すＣＡＮＩＤとが少なくとも格納される複数のメッセージバッファＭＢと、メッセージバッファＭＢに格納されたデータを抽出してフレームを構成し通信バスＢＳ上に送信するとともに、通信バスＢＳを介してフレームを受信した場合には、受信したフレームから抽出したＣＡＮＩＤと一致するＣＡＮＩＤが格納されているメッセージバッファＭＢに、フレームから抽出したメッセージを格納するＣＡＮコントローラ１１とを備え、ＣＡＮＩＤ毎に予め設定された、データパターン１でフレームを送信するタイミングに近づくと（Ｓ１０：ＹＥＳ，Ｓ２０：ＹＥＳ）、データパターン１のデータと、サム値ＣＳＵＭ１とを、このタイミングに対応したＣＡＮＩＤが格納されているメッセージバッファＭＢに格納する（Ｓ３０，Ｓ５０）とともに、データパターン２でフレームを送信するタイミングに近づくと（Ｓ１０：ＹＥＳ，Ｓ２０：ＮＯ）、データパターン２のデータと、サム値ＣＳＵＭ２とを、このタイミングに対応したＣＡＮＩＤが格納されているメッセージバッファＭＢに格納する（Ｓ４０，Ｓ５０）。
【００４３】
このため、まず、データパターン１のデータとサム値ＣＳＵＭ１とがメッセージバッファＭＢに格納されることにより、このメッセージバッファＭＢに格納されたＣＡＮＩＤ、データパターン１のデータ、およびサム値ＣＳＵＭ１が含まれるフレームが送信される。さらに、データパターン２のデータとサム値ＣＳＵＭ２とがメッセージバッファＭＢに格納されることにより、このメッセージバッファＭＢに格納されたＣＡＮＩＤ、データパターン２のデータ、およびサム値ＣＳＵＭ２が含まれるフレームが送信される。つまり、同一のＣＡＮＩＤを含みデータ種別の異なるデータを含む２種類のフレームがそれぞれ異なるタイミングで送信される。そして、この２種類のフレームにはそれぞれ、データ種別を示す情報（すなわち、サム値ＣＳＵＭ１，２）が含まれている（以下、データパターン１のデータおよびサム値ＣＳＵＭ１を含むフレームを第１フレーム、データパターン２のデータおよびサム値ＣＳＵＭ２を含むフレームを第２フレームともいう）。
【００４４】
このため、第１フレームを受信したＥＣＵ１０は、この受信フレームから抽出したＣＡＮＩＤと一致するＣＡＮＩＤが格納されているメッセージバッファＭＢに、フレームから抽出したメッセージ（すなわち、データパターン１のデータとサム値ＣＳＵＭ１）を格納する一方、第２フレームを受信したＥＣＵ１０は、この受信フレームから抽出したＣＡＮＩＤと一致するＣＡＮＩＤが格納されているメッセージバッファＭＢに、フレームから抽出したメッセージ（すなわち、データパターン２のデータとサム値ＣＳＵＭ２）を格納する。
【００４５】
したがって、同一のＣＡＮＩＤが格納されているメッセージバッファＭＢに、データ種別が異なる２種類のデータを時分割で格納することができるとともに、同一のＣＡＮＩＤが格納されているメッセージバッファＭＢに格納されたデータのデータ種別をサム値ＣＳＵＭ１，２により認識することができる。
【００４６】
これにより、データパターン１のデータとデータパターン２のデータのそれぞれのデータ量が１つのメッセージバッファＭＢに記憶可能なデータ量を超えておらず、且つ、データパターン１のデータとデータパターン２のデータとの総データ量が、１つのメッセージバッファＭＢに記憶可能なデータ量を超えている場合において、データパターン１のデータを格納するためのメッセージバッファＭＢと、データパターン２のデータを格納するためのメッセージバッファＭＢとを別々に設ける必要がなくなり、予め設けられているメッセージバッファＭＢを用いて通信データ量の増大に対応することが可能になる。
【００４７】
さらに、データパターン１のデータとデータパターン２のデータの受信を必要とするＥＣＵ１０（以下、第１，２データ必要ＥＣＵ１０という）と、データパターン１のデータの受信を必要とするとともにデータパターン２のデータの受信を不要とするＥＣＵ１０（以下、第２データ不要ＥＣＵ１０という）とが混在する車両用通信システムにおいて、或るＥＣＵ１０がデータパターン２のデータを含むフレームを送信した場合に、第１，２データ必要ＥＣＵ１０では、受信したフレームにサム値ＣＳＵＭ２が含まれるか否かを判断するための機能が必要である一方、第２データ不要ＥＣＵ１０では、受信したフレームにサム値ＣＳＵＭ２が含まれるか否かを判断するための機能が不要である。
【００４８】
すなわち、データパターン２のフレームが不要なＥＣＵ１０（第２データ不要ＥＣＵ１０）における受信メッセージ格納処理は、図５に示すように、Ｓ１４０とＳ１５０の処理が省略されて、Ｓ１３０において、サム値ＣＳＵＭ１がｄａｔａ８と一致していない場合には（Ｓ１３０：ＮＯ）、受信メッセージ格納処理を一旦終了するように構成された点以外は、データパターン２のフレームを必要とするＥＣＵ１０における受信メッセージ格納処理と同一である。
【００４９】
つまり、車両用通信システム１を構成する複数のＥＣＵ１０のうち、データパターン２のデータを必要とする車両用通信装置（第１，２データ必要ＥＣＵ１０）のみに、サム値ＣＳＵＭ２が含まれるか否かを判断するための上記機能を追加すればよく、第２データ不要ＥＣＵ１０に対しては何らかの機能を追加することなく、データパターン２のデータを送受信することが可能な車両用通信システム１を構築することが可能となる。
【００５０】
また、チェックサム値は、フレームに含まれる情報として、従来、広く利用されているものであり、チェックサム値を含むフレームを送受信するように構成された車両用通信システム１において、フレームに新たな情報を追加することなく、データパターン１のデータとデータパターン２のデータとの識別を可能とすることができる。
【００５１】
以上説明した実施形態において、ＥＣＵ１０は本発明における車両用通信装置、ＣＡＮコントローラ１１は本発明における送受信手段、Ｓ３０，Ｓ５０の処理は本発明における第１格納手段、Ｓ４０，Ｓ５０の処理は本発明における第２格納手段である。
【００５２】
また、ＣＡＮＩＤは本発明におけるメッセージ識別コード、Ｓ１０とＳ２０でＹＥＳと判断されるタイミングは本発明における第１タイミング、データパターン１のデータは本発明における第１データ種別のデータ、サム値ＣＳＵＭ１は本発明における第１データ種別情報、Ｓ１０でＹＥＳと判断されＳ２０でＮＯと判断されるタイミングは本発明における第２タイミング、データパターン２のデータは本発明における第２データ種別のデータ、サム値ＣＳＵＭ２は本発明における第２データ種別情報である。
【００５３】
また、式（１）は本発明における第１チェックサム算出式、サム値ＣＳＵＭ１は本発明における第１チェックサム値、式（２）は本発明における第２チェックサム算出式、サム値ＣＳＵＭ２は本発明における第２チェックサム値である。
【００５４】
（第２実施形態）
以下に本発明の第２実施形態を図面とともに説明する。なお第２実施形態では、第１実施形態と異なる部分のみを説明する。
【００５５】
第２実施形態における車両用通信システム１は、送信メッセージ格納処理と受信メッセージ格納処理が変更された点以外は第１実施形態と同じである。
まず、第２実施形態における送信メッセージ格納処理の手順を図６，７を用いて説明する。図６は第２実施形態の送信メッセージ格納処理を示すフローチャートである。図７は、第２実施形態におけるメッセージバッファＭＢのデータパターンを示す図である。
【００５６】
この送信メッセージ格納処理が実行されると、制御部１３のＣＰＵ３１は、まずＳ２１０にて、フレームを送信するタイミングに近づいているＣＡＮＩＤがあるか否かを判断する。ここで、フレームを送信するタイミングに近づいているＣＡＮＩＤがない場合には（Ｓ２１０：ＮＯ）、送信メッセージ格納処理を一旦終了する。一方、フレームを送信するタイミングに近づいているＣＡＮＩＤがある場合には（Ｓ２１０：ＹＥＳ）、Ｓ２２０にて、データパターン１で送信するタイミングであるか否かを判断する。
【００５７】
なお、データパターン１１は、メッセージバッファＭＢのメッセージレジスタＲ３に８バイトのデータが格納されるものである（図７（ａ）を参照）。また、データパターン１２は、メッセージバッファＭＢのメッセージレジスタＲ３に４バイトのデータが格納されるものである（図７（ｂ）を参照）。
【００５８】
また、データパターン１１でフレーム送信を実行するタイミングと、データパターン１２でフレーム送信を実行するタイミングが、ＣＡＮＩＤ毎に予め設定されている。
そしてＳ２２０にて、データパターン１１で送信するタイミングである場合には（Ｓ２２０：ＹＥＳ）、Ｓ２３０にて、フレームを送信するタイミングに近づいているとＳ２１０で判断されたＣＡＮＩＤが格納されたメッセージバッファＭＢのメッセージレジスタＲ３に、今回送信するデータ（ｄａｔａ１〜８）を格納するとともに、データパターン１１でのデータ長を示すデータ長値ＤＬＣ１（本実施形態では８）をＤＬＣレジスタＲ２に格納して、Ｓ２５０に移行する。
【００５９】
一方、Ｓ２２０にて、データパターン１２で送信するタイミングでない場合には（Ｓ２２０：ＮＯ）、データパターン１２で送信するタイミングであると判断して、Ｓ２４０にて、フレームを送信するタイミングに近づいているとＳ２１０で判断されたＣＡＮＩＤが格納されたメッセージバッファＭＢのメッセージレジスタＲ３に、今回送信するデータ（ｄａｔａ１〜４）を格納するとともに、データパターン１２でのデータ長を示すデータ長値ＤＬＣ２（本実施形態では４）をＤＬＣレジスタＲ２に格納して、Ｓ２５０に移行する。
【００６０】
そしてＳ２５０に移行すると、Ｓ２３０またはＳ２４０の処理でメッセージバッファＭＢに格納されたメッセージをフレーム化して送信する処理をＣＡＮコントローラ１１に実行させて、送信メッセージ格納処理を一旦終了する。
【００６１】
次に、第２実施形態における受信メッセージ格納処理の手順を図８を用いて説明する。図８は第２実施形態の受信メッセージ格納処理を示すフローチャートである。
この受信メッセージ格納処理が実行されると、制御部１３のＣＰＵ３１は、まずＳ３１０にて、メッセージバッファＭＢにメッセージが格納されたか否かを判断する。ここで、メッセージバッファＭＢにメッセージが格納されていない場合には（Ｓ３１０：ＮＯ）、受信メッセージ格納処理を一旦終了する。一方、メッセージバッファＭＢにメッセージが格納された場合には（Ｓ３１０：ＹＥＳ）、Ｓ３２０にて、メッセージが格納されたとＳ３１０の処理で判断されたメッセージバッファＭＢのデータ長がデータ長値ＤＬＣ１と一致しているか否かを判断する。
【００６２】
ここで、データ長がデータ長値ＤＬＣ１と一致している場合には（Ｓ３２０：ＹＥＳ）、Ｓ３４０に移行する。一方、データ長がデータ長値ＤＬＣ１と一致していない場合には（Ｓ３２０：ＮＯ）、Ｓ３３０にて、メッセージが格納されたとＳ３１０の処理で判断されたメッセージバッファＭＢのデータ長がデータ長値ＤＬＣ２と一致しているか否かを判断する。
【００６３】
ここで、データ長がデータ長値ＤＬＣ２と一致している場合には（Ｓ３３０：ＹＥＳ）、Ｓ３４０に移行する。一方、データ長がデータ長値ＤＬＣ２と一致していない場合には（Ｓ３３０：ＮＯ）、受信メッセージ格納処理を一旦終了する。
【００６４】
そしてＳ３４０に移行すると、メッセージが格納されたとＳ１１０で判断されたメッセージバッファＭＢのメッセージレジスタＲ３に格納されたメッセージを、制御用ＲＡＭにコピーし、受信メッセージ格納処理を一旦終了する。
【００６５】
このように構成されたＥＣＵ１０では、ＣＡＮＩＤ毎に予め設定された、データパターン１１でフレームを送信するタイミングに近づくと（Ｓ２１０：ＹＥＳ，Ｓ２２０：ＹＥＳ）、データパターン１１のデータとデータ長値ＤＬＣ１とを、このタイミングに対応したＣＡＮＩＤが格納されているメッセージバッファＭＢに格納する（Ｓ２３０）とともに、データパターン１２でフレームを送信するタイミングに近づくと（Ｓ２１０：ＹＥＳ，Ｓ２２０：ＮＯ）、データパターン１２のデータとデータ長値ＤＬＣ２とを、このタイミングに対応したＣＡＮＩＤが格納されているメッセージバッファＭＢに格納する（Ｓ２４０）。
【００６６】
このため、まず、データパターン１１のデータとデータ長値ＤＬＣ１とがメッセージバッファＭＢに格納されることにより、このメッセージバッファＭＢに格納されたＣＡＮＩＤ、データパターン１１のデータ、およびデータ長値ＤＬＣ１が含まれるフレームが送信される。さらに、データパターン１２のデータとデータ長値ＤＬＣ２とがメッセージバッファＭＢに格納されることにより、このメッセージバッファＭＢに格納されたＣＡＮＩＤ、データパターン１２のデータ、およびデータ長値ＤＬＣ２が含まれるフレームが送信される。つまり、同一のＣＡＮＩＤを含みデータ種別の異なるデータを含む２種類のフレームがそれぞれ異なるタイミングで送信される。そして、この２種類のフレームにはそれぞれ、データ種別を示す情報（すなわち、データ長値ＤＬＣ１，２）が含まれている（以下、データパターン１１のデータおよびデータ長値ＤＬＣ１を含むフレームを第３フレーム、データパターン１２のデータおよびデータ長値ＤＬＣ２を含むフレームを第４フレームともいう）。
【００６７】
このため、第３フレームを受信したＥＣＵ１０は、この受信フレームから抽出したＣＡＮＩＤと一致するＣＡＮＩＤが格納されているメッセージバッファＭＢに、フレームから抽出したメッセージ（すなわち、データパターン１１のデータとデータ長値ＤＬＣ１）を格納する一方、第４フレームを受信したＥＣＵ１０は、この受信フレームから抽出したＣＡＮＩＤと一致するＣＡＮＩＤが格納されているメッセージバッファＭＢに、フレームから抽出したメッセージ（すなわち、データパターン１２のデータとデータ長値ＤＬＣ２）を格納する。
【００６８】
したがって、同一のＣＡＮＩＤが格納されているメッセージバッファＭＢに、データ種別が異なる２種類のデータを時分割で格納することができるとともに、同一のＣＡＮＩＤが格納されているメッセージバッファＭＢに格納されたデータのデータ種別をデータ長値ＤＬＣ１，２により認識することができる。
【００６９】
これにより、データパターン１１のデータとデータパターン１２のデータのそれぞれのデータ量が１つのメッセージバッファＭＢに記憶可能なデータ量を超えておらず、且つ、データパターン１１のデータとデータパターン１２のデータとの総データ量が、１つのメッセージバッファＭＢに記憶可能なデータ量を超えている場合において、データパターン１１のデータを格納するためのメッセージバッファＭＢと、データパターン１２のデータを格納するためのメッセージバッファＭＢとを別々に設ける必要がなくなり、予め設けられているメッセージバッファＭＢを用いて通信データ量の増大に対応することが可能になる。
【００７０】
またデータ長は、フレームに含まれる情報として、従来、広く利用されているものであり、データ長値を含むフレームを送受信するように構成された車両用通信システム１において、フレームに新たな情報を追加することなく、データパターン１１のデータとデータパターン１２のデータとの識別を可能とすることができる。
【００７１】
以上説明した実施形態において、Ｓ２３０の処理は本発明における第１格納手段、Ｓ２４０の処理は本発明における第２格納手段である。
また、Ｓ２１０とＳ２２０でＹＥＳと判断されるタイミングは本発明における第１タイミング、データパターン１１のデータは本発明における第１データ種別のデータ、データ長値ＤＬＣ１は本発明における第１データ種別情報、Ｓ２１０でＹＥＳと判断されＳ２２０でＮＯと判断されるタイミングは本発明における第２タイミング、データパターン１２のデータは本発明における第２データ種別のデータ、データ長値ＤＬＣ２は本発明における第２データ種別情報である。
【００７２】
以上、本発明の一実施形態について説明したが、本発明は上記実施形態に限定されるものではなく、本発明の技術的範囲に属する限り種々の形態を採ることができる。
例えば上記実施形態においては、データパターンが２種類であるものを示したが、３種類以上であってもよい。
【符号の説明】
【００７３】
１…車両用通信システム、１０…ＥＣＵ、１１…ＣＡＮコントローラ、１２…ＣＡＮトランシーバ、１３…制御部、２１…データ格納部、２２…プロトコルコア部、２３…アクセス制御部、３１…ＣＰＵ、３２…ＲＯＭ、３３…ＲＡＭ、ＢＳ…通信バス、ＭＢ…メッセージバッファ、Ｒ１…ＣＡＮＩＤレジスタ、Ｒ２…ＤＬＣレジスタ、Ｒ３…メッセージレジスタ
【図１】
2013082352.tif 000005
【図２】
2013082352.tif 000006
【図３】
2013082352.tif 000007
【図４】
2013082352.tif 000008
【図５】
2013082352.tif 000009
【図６】
2013082352.tif 000010
【図７】
2013082352.tif 000011
【図８】
2013082352.tif 000012