(58)【調査した分野】(Int.Cl.,DB名)
【発明の概要】
【発明が解決しようとする課題】
【0006】
ところで、IPベースのネットワークを利用する場合、そのネットワークに複数の単位車両制御装置が同時に接続されることは往々にして発生することである。ここで、単位車両制御装置とはエンジン制御装置、ブレーキ制御装置、変速機制御装置、ナビゲーション制御装置等の個別の制御装置を意味するものである。そのため、外部装置である診断装置は、ネットワークに接続された単位車両制御装置がいずれの車両に属するものであるか識別する必要がある。
【0007】
ISO13400では、この識別のために車両識別コード(Vehicle Identification Number、略してVINという)を用いることが規定されている。例えば、診断装置はネットワークに接続された各単位車両制御装置に対して車両識別要求メッセージを送信し、各単位車両制御装置はそのIPアドレスとともに車両識別コードVINを含む車両識別応答メッセージを返信することになる。これにより、診断装置は車両識別コードVINを手掛かりとして、各単位車両制御装置がいずれの車両に属するものであるかを識別することができるようになる。
【0008】
尚、以下の説明では便宜上エンジン制御ECUの不揮発メモリに車両識別コードVINが記憶されているものとして説明するが、本発明はこれに特定されるものではなく、他の制御ECUに車両識別コードVINが記憶されていても良いものである。
【0009】
この車両識別コードVINは各車両に固有のものであり、エンジン制御システムのエンジン制御ECUの不揮発メモリに書き込まれている。従って、各単位車両制御装置が車両識別コードVINを取得するには、車両識別コードVINを記憶したエンジン制御ECUからその車両識別コードVINを読み出し、他の単位車両制御装置のノードに転送して車両識別応答メッセージのヘッダに付加することが考えられる。また、この他に特許文献1に記載されるように、通信負荷の観点から、複数のノードの中で外部装置と直接的に通信を行うノード(エッジノード)に車両識別コードVINを記憶させ、車両識別応答メッセージのヘッダにこの車両識別コードVINを付加することが考えられる。
【0010】
しかしながら、何らかの要因により、車両識別コードVINが不揮発メモリ上から消滅したり、また、エンジン制御ECUの制御プログラムの書き換えを行った直後などに記憶させた車両識別コードVINが消えてしまうことが考えられる。このような状況において、診断装置が車両識別要求メッセージを送信した際、各単位車両制御装置から返信される車両識別応答メッセージには車両識別コードVINが含まれておらず、結果として診断装置は車両と各単位車両制御装置を紐付ける(関係付ける)手掛かりを得られなくなる。このため、ネットワークに複数の車両の単位車両制御装置が同時に接続されている場合、診断装置はいずれの車両の単位車両制御装置か識別できない状態に陥ってしまう。
【0011】
尚、このような場合は再び車両識別コードVINをエンジン制御ECUの不揮発メモリに書き込みすることで車両識別コードVINの回復ができるが、ネットワークに複数の車両が接続されている状態の場合では、どの車両の車両識別コードVINが消えた状態の車両なのか判別が困難である。
【0012】
本発明の目的は、1つの単位車両制御装置に記憶させた車両識別コードVINが消滅した場合であっても、各単位車両制御装置がいずれの車両に属するものか識別することができる車両制御装置を提供することにある。
【課題を解決するための手段】
【0013】
本発明の特徴は、複数の単位車両制御装置が備えるノードの一つを代表ノードとし、この代表ノードが有する固別識別情報を車両識別用情報として代表ノード以外の他のノードに転送、記憶させ、診断装置から各ノードに対して送信される車両識別要求メッセージに対し、各ノードは、車両識別コードと各ノード自身に記憶された車両識別用情報を含む車両識別応答メッセージ、或いは各ノード自身に記憶された車両識別用情報を含む車両識別応答メッセージのいずれかを診断装置に返信する、ところにある。
【発明の効果】
【0014】
本発明によれば、単位車両制御装置に記憶させた車両識別コードVINが消えてしまった場合であっても、車両毎の各単位車両制御装置のノードは共通の車両識別用情報を有しているので、診断装置はそれらをグループとして紐付けして管理できるので、各単位車両制御装置がいずれの車両に属するものか識別することができる。
【発明を実施するための形態】
【0016】
次に、本発明の実施形態について図面を用いて詳細に説明するが、本発明は以下の実施形態に限定されることなく、本発明の技術的な概念の中で種々の変形例や応用例をもその範囲に含むものである。
【0017】
図1は複数の車両と診断装置が接続された状態の構成を示しており、本実施例では説明を簡単にするため2台の車両が診断装置と接続された状態を示している。
【0018】
第1車両10と第2車両20は、IPベースのネットワーク40に接続されて外部の診断装置30と通信可能に接続されている。上述した通り、第1車両10と第2車両20は通信プロトコルとしてISO13400に規定されたDoIPを用いて診断装置30と通信が実行されるものである。
【0019】
そして、第1車両10にはDoIPエンティティ13A、DoIPエンティティ13Bを有し、第2車両20にはDoIPエンティティ23A、DoIPエンティティ23B、DoIPエンティティ23Cを夫々有している。また、これらのDoIPエンティティは必要に応じて追加して設けられる。各DoIPエンティティ13A、13B、23A、23B、23Cは診断装置30とメッセージのやり取りを行うDoIPノードを夫々備えている。尚、以下ではDoIPエンティティはDoIPノードの概念を含むものとして説明する。
【0020】
そして、各DoIPエンティティ13A、13B、23A、23B、23Cは各車両の単位車両制御装置の制御ECUとサブネットワークを構成する。このサブネットワークからなる単位車両制御装置は上述したようにエンジン制御装置、ブレーキ制御装置、変速機制御装置、ナビゲーション制御装置等の個別の制御装置を意味している。
【0021】
したがって、例えば、DoIPエンティティ13Aは第1車両10のエンジン制御ECU11Aと内部ネットワーク12Aによって接続され、また、DoIPエンティティ13Bは第1車両10のブレーキ制御ECU11Bと内部ネットワーク12Bによって接続されている。
【0022】
同様にDoIPエンティティ23Aは第2車両20のエンジン制御ECU21Aと内部ネットワーク22Aによって接続され、またDoIPエンティティ23Bは第2車両20のブレーキ制御ECU21Bと内部ネットワーク22Bによって接続され、更にDoIPエンティティ23Cは第2車両20のナビゲーション制御ECU21Cと内部ネットワーク22Cによって接続されている。
【0023】
これらのサブネットワークは代表的な例を示したものであって、これら以外にも種々のサブネットワークを置き換え、或いは追加できるものである。そして、このサブネットワークの通信プロトコルはCANやLIN等のIPベースのネットワークと異なる通信プロトコルにて接続されている。
【0024】
第1車両10のエンジン制御ECU11A、及び第2車両20のエンジン制御ECU21Aの不揮発性メモリ、例えばフラッシュメモリには車両識別コードVIN1、及び車両識別コードVIN2が記憶されており、これらの車両識別コードVIN1、VIN2は所定のタイミングでDoIPエンティティ13A、DoIPエンティティ23Aに転送されるようになっている。例えば、各車両10、20の単位車両制御装置の電源起動時に、車両識別コードVIN1、及び車両識別コードVIN2を転送するように構成されている。
【0025】
また、各DoIPエンティティ13A、13B、23A、23B、23Cはネットワーク上の通信機器を特定する物理アドレスであるMACアドレス(Media Access Control address)を備えている。MACアドレスはネットワーク上で、各ノード(=DoIPエンティティ)を識別するためにネットワーク機器のハードウェアに一意に割り当てられる物理アドレスである。このMACアドレスは後で説明するが、各DoIPエンティティ13A、13B、23A、23B、23Cの固別識別情報として用いられ、また、そのうちの一つは車両識別用情報として用いられるものである。
【0026】
このMACアドレスはパケット送受信を行うDoIPエンティティに対応するノードの通信ポート毎にユニークな値が割り当てられており、DoIPエンティティ13AにはMACアドレス13A-A、DoIPエンティティ13BにはMACアドレス13B-B、DoIPエンティティ23AにはMACアドレス23A-A、DoIPエンティティ23BにはMACアドレス23B-B、DoIPエンティティ23CにはMACアドレス23C-Cが割り当てられている。ここで、DoIPエンティティ13AとDoIPエンティティ23Aは代表ノードとして位置づけられている。
【0027】
そして、上述したようにIPベースのネットワーク40を介して診断装置30にDoIPエンティティ13A、13B、23A、23B、23Cを通信可能に接続する場合、
図1に示すように第1車両10と第2車両20の各DoIPエンティティ13A、13B、23A、23B、23Cが同時に接続されることが発生する。上述したように、診断装置130はダイアグコードや内部データを読み出し、各制御ECUの診断、制御プログラムの書き換え等を行うものであり、診断装置30は第1車両10及び第2車両20の各DoIPエンティティ13A、13B、23A、23B、23Cを選択して上述の処理動作を実行するものである。
【0028】
したがって、診断装置30は処理動作の対象となる車両を特定する必要があり、そのためには、各DoIPエンティティ13A、13B、23A、23B、23Cの各ノードがいずれの車両に属しているかを識別する必要がある。この識別のために、ISO13400では車両識別コードVINを用いることが規定されている。
【0029】
図2に、ISO13400に規定されている車両識別のための通信手順を示している。
図2に示すように、まず各DoIPエンティティ13A、13B、23A、23B、23CはIPアドレスの取得処理を行う。
【0030】
次に、このIPアドレス取得処理の後、各DoIPエンティティ13A、13B、23A、23B、23Cは夫々マルチキャストにて、自身のIPアドレスを含む車両アナウンスメッセージをタイミングt1〜t3で3回送信する。診断装置30はその車両アナウンスメッセージを受信し、IPアドレスを基に対応するDoIPエンティティに対してタイミングt4で車両識別要求メッセージを送信する。
【0031】
対応するDoIPエンティティがその車両識別要求メッセージを受信すると、これに応答してタイミングt5でメッセージ送信元の診断装置30に車両識別コードVINを含む車両識別応答メッセージを返信する。これにより、診断装置30は車両識別コードVINを基に各DoIPエンティティがいずれの車両に属するものであるかを識別することが可能になる。ここで、車両識別応答メッセージは少なくともヘッダ領域とペイロード領域からなり、ヘッダ領域には診断装置30や各DoIPエンティティを認識する情報が記憶され、ペイロード領域には各DoIPエンティティの個別の種々の詳細情報が記憶されている。
【0032】
ここで、電源起動時にDoIPエンティティ13AからはDoIPエンティティ13Bに対して車両識別コードVIN1が転送されており、同様にDoIPエンティティ23AからはDoIPエンティティ23B、23Cに対して車両識別コードVIN2が転送されており、この転送された車両識別コードVIN1、VIN2が各DoIPエンティティ13A、13B、23A、23B、23Cから診断装置30に送られ、診断装置30ではこの車両識別コードVIN1、VIN2から各DoIPエンティティ13A、13B、23A、23B、23Cの属する車両を特定することができるようになっている。
【0033】
次に、診断装置30における各車両10、20と各DoIPエンティティ13A、13B、23A、23B、23Cの紐付き状態を
図3に基づき説明する。
図2に示す通信手順によって、DoIPエンティティから車両識別コードVINを含む車両識別応答メッセージを受信した診断装置30では、第1車両10に属することを識別する車両識別情報VIN1とDoIPエンティティ13A、13Bとが紐付けられていることから、DoIPエンティティ13A、13Bが第1車両10に属することを判断することができる。同様に、第2車両20に属することを識別する車両識別情報VIN2とDoIPエンティティ、23A、23B、23Cとが紐付けられていることからDoIPエンティティ、23A、23B、23Cが第2車両20に属することを判断することができる。
【0034】
このように車両識別情報VIN1、VIN2が存在していると、車両識別コードVIN1、VIN2を手掛かりに、各DoIPエンティティ13A、13B、23A、23B、23Cがどの車両に搭載されているかを紐付けて管理することができる。
【0035】
しかしながら、第1車両10のエンジン制御ECU11Aや第2車両20のエンジン制御ECU21Aに書き込まれた車両識別コードVIN1、VIN2が何らかの要因により不揮発メモリ上から消滅しり、また、エンジン制御ECU11A、21Aの制御プログラムの書き換えを行った直後に記憶された車両識別コードVIN1、VIN2が消滅しまうことがある。
【0036】
このような場合、各DoIPエンティティ13A、13B、23A、23B、23Cは車両識別コードVIN1、車両識別コードVIN2を診断装置30へ返信することができない。このため、
図4にあるように各DoIPエンティティ13A、13B、23A、23B、23Cは夫々相互にばらばらの関係となる。したがって、診断装置30は各DoIPエンティティ13A、13B、23A、23B、23Cがいずれの車両に属するものであるかを識別することができなくなってしまうことになる。
【0037】
このように、診断装置30は各DoIPエンティティ13A、13B、23A、23B、23Cから返信された車両識別応答メッセージのペイロード領域の情報は取得できるものの、これらの夫々のDoIPエンティティ13A、13B、23A、23B、23Cがいずれの車両に属するものか識別ができず、上述したような処理動作の対象となる車両を特定できないことになる。
【0038】
例えば、DoIPエンティティ23A、23B、23Cは第2車両20に属するものであるが、個々のDoIPエンティティ23A、23B、23Cは車両識別コードVIN2と相互に紐付けが消滅しているので、DoIPエンティティ23A、23B、23Cはばらばらの関係となって、診断装置30はDoIPエンティティ23A、23B、23Cの夫々を相互に特定することができないものである。
【0039】
このような不具合を対策するため、本実施形態では車両内の複数のDoIPエンティティの中で、代表ノードとなるDoIPエンティティを予め決めておき、電源が起動されると代表ノードとなるDoIPエンティティの固別識別情報として機能するMACアドレスを他のDoIPエンティティに転送するものである。
【0040】
この結果、代表ノードとなるDoIPエンティティ以外のノードに代表ノードのMACアドレスが記憶されることになる。そして、転送されたDoIPエンティティのMACアドレス(=固別識別情報)は、これ以外のDoIPエンティティの車両識別用MACアドレス(=車両識別用情報)として利用されることになる。
【0041】
そして、各DoIPエンティティ13A、13B、23A、23B、23Cは診断装置30からの車両識別要求メッセージを受信したならば、それに応答してメッセージ送信元の診断装置30に、車両識別コードVIN1、VIN2と、代表ノードであるDoIPエンティティ13A,23AのMACアドレス13A-A,23A-Aを車両識別用MACアドレスとして車両識別応答メッセージのヘッダ領域に書き込んで、車両識別応答メッセージを診断装置30に返信するように動作する。
【0042】
尚、車両識別コードVIN1、VIN2は電源起動時にエンジン制御ECU11A,21Aから代表ノードであるDoIPエンティティ13A、DoIPエンティティ23Aに転送されるようになっている。このため、代表ノードであるDoIPエンティティ13A、DoIPエンティティ23Aは車両識別コードが格納されていないことを検出する機能を備えており、電源の起動時に車両識別コードが保存されていないことを検出したならば、車両識別コードが保存されていないことを他のノードに通知する構成となっている。これによって、他のノードはこれに基づいて車両識別応答メッセージを作製することなる。
【0043】
つまり、各DoIPエンティティ13A、13B、23A、23B、23Cは、車両識別コードVIN1,VIN2が自身のメモリに格納されてない場合に、診断装置30から送信される識別要求メッセージを受信したならば、車両識別コードVIN1,VIN2が保存されていないことを表す情報と車両識別用MACアドレスに基づいて車両識別応答メッセージを作成して診断装置に返信するように動作する。尚、診断装置から車両識別要求メッセージを受信したときに、車両識別コードVIN1,VIN2が格納されていない場合は、車両のフロント部のパネル上に設けたLEDランプを点灯させて外部に報知することも可能である。
【0044】
本実施例においては上述したように、DoIPエンティティ13AとDoIPエンティティ23Aが代表ノードとなり、これらが備えるMACアドレス13A-AとMACアドレス23A-Aが車両識別用MACアドレスとなって、残りのDoIPエンティティ13B、23B、23Cに転送、記憶されるものである。
【0045】
次に、
図5を用いて本実施形態の通信手順を説明するが、
図5に示すものは第2車両20に搭載されたDoIPエンティティ23A、23B、23Cと診断装置30が通信を行う場合を示している。
【0046】
尚、各DoIPエンティティ13A、13B、23A、23B、23Cは上述したように固別のMACアドレスを有しているが、診断装置30と通信する場合は車両識別用MACアドレスを送信するように各DoIPエンティティの通信ロジックが設定されている。
【0047】
電源の起動直後に、代表ノードとなるDoIPエンティティ23Aは、タイミングt6、t7で車両内の代表ノード以外のDoIPエンティティ23B、23Cへ自身のMACアドレス23A-Aを車両識別用MACアドレスとして転送、通知する。通知を受けたDoIPエンティティ23B、23Cは、受信した車両識別用MACアドレス23A-AをDoIPエンティティ23B、23Cのノードが有しているRAM等の揮発性メモリに一時的に格納し、タイミングt8、t9でDoIPエンティティ23Aに対して車両識別用MACアドレス23A-Aを受信したことを応答として返信する。この状態で、DoIPエンティティ23A、23B、23Cには車両識別用MACアドレス23A-Aが共通して記憶されている状態となる。
【0048】
その後、診断装置30からは順番に車両識別要求メッセージが送られてくるが、例えば、タイミングt10でDoIPエンティティ23Bに対して車両識別要求メッセージが送られてくると、DoIPエンティティ23Bは車両識別コードVIN2だけでなく、タイミングt6で送られてきた車両識別用MACアドレス23A-Aをも含む車両識別応答メッセージをタイミングt11で診断装置30に返信することになる。
【0049】
したがって、診断装置30では車両の識別情報として車両識別コードVIN2に加えて、その車両固有の車両識別用MACアドレス23A-Aの情報を得ることができる。すなわち、DoIPエンティティ23A、23B、23Cは相互に車両識別コードVIN2及び車両識別用MACアドレス23A-Aと紐付け(関係付け)されることになる。
【0050】
ここで、車両識別応答メッセージはヘッダ領域とペイロード領域で構成されていることは上述した通りである。そして、車両識別コードが消滅していない場合は、ヘッダ領域には車両識別コードと車両識別用MACアドレスが格納される。一方、車両識別コードが消滅している場合は、ヘッダ領域には車両識別コードは格納されなく、車両識別用MACアドレスだけが格納されるようになる。尚、この他に車両識別コードが保存されていないことを表す情報を格納することも可能である。
【0051】
図6、
図7は診断装置30における車両と各DoIPエンティティの紐付け(関係付け)の状態を示しており、
図6は車両識別コードVIN1、VIN2が消滅していないときに通信が行われた場合を示し、
図7は車両識別コードVIN1、VIN2が消滅したときに通信が行われた場合を示している。尚、
図6、
図7では車両識別用MACアドレス13A-AをMAC1、車両識別用MACアドレス23A-AをMAC2として表記してある。
【0052】
これから分かるように、車両識別コードVIN1、VIN2、車両識別用MACアドレス13A-A、23A-Aを用いることで各DoIPエンティティ13A、13B、23A、23B、23Cの間の相互の紐付けが可能となる。
【0053】
図6にあるように、診断装置30では車両識別コードVIN1、VIN2と車両識別用MACアドレスMAC1、MAC2が紐付けされている。更に、車両識別用MACアドレスMAC1にはDoIPエンティティ13A、13Bがグループとして紐付けられている。同様に車両識別用MACアドレスMAC2にはDoIPエンティティ23A、23B、23Cがグループとして紐付けられている。このように、車両識別用MACアドレスMAC1、MAC2は車両識別コードVIN1、VIN2に関係付けられているから、これらの2つの情報を用いて、各DoIPエンティティ13A、13B、23A、23B、23Cがどの車両に搭載されているかを紐付けて管理することができる。
【0054】
一方、
図7は車両識別コードVIN1、VIN2が消滅した状態で通信が行われた場合を示している。
図7からわかるように、車両識別コードVIN1、VIN2が消滅した場合、車両識別コードVIN1、VIN2と車両識別用MACアドレスMAC1、MAC2の紐付けは消滅するので、車両識別コードVIN1、VIN2を用いて車両を特定することはできないようになる。このような場合、従来では
図4に示すように各DoIPエンティティ13A、13B、23A、23B、23Cは夫々個々にばらばらとなって、相互にどのような紐付きの状態になっているか全く知る手立てがなかった。
【0055】
しかしながら、本実施形態によれば車両識別用MACアドレスMAC1にはDoIPエンティティ13A、13Bが紐付けられ、車両識別用MACアドレスMAC2にはDoIPエンティティ23A、23B、23Cが紐付けられていることから、少なくともDoIPエンティティ13A、13Bは第1車両10に搭載され、DoIPエンティティ23A、23B、23Cは第2車両20に搭載されていることがわかるようになる。
【0056】
このように、車両に搭載されている複数のDoIPエンティティの夫々に共通の車両識別用MACアドレスを付与することによって、その車両固有のグループとして複数のDoIPエンティティを管理することができるようになる。したがって、夫々のDoIPエンティティの関係が個々にばらばらとならず、車両固有のグループとして複数のDoIPエンティティの紐付き状態を知ることができるようになる。
【0057】
尚、診断装置30において以前に受信した車両識別コードと車両識別用MACアドレスの紐付け情報を記憶しておくことも可能である。このようにすると、エンジン制御ECUに書き込まれた車両識別コードが不揮発メモリ上から消滅したり、また、エンジン制御ECUのプログラム書き換えを行った直後に記憶された車両識別コードが消滅している場合であっても、記憶済みの紐付け情報と車両識別用MACアドレスを手掛かりとして、どの車両の車両識別コードが格納されていたかを特定することが可能となる。
【0058】
これによって、複数の接続された車両の中から容易に車両識別コードが消えた状態の車両を特定できるようになる。更には、エンジン制御ECUへ車両識別コードを送信してフラッシュメモリに書き込むことも可能となる。
【0059】
以上述べた通り、本発明は複数の単位車両制御装置が備えるノードの一つを代表ノードとし、この代表ノードが有する固別識別情報を車両識別用情報として代表ノード以外の他のノードに転送、記憶させ、診断装置から各ノードに対して送信される車両識別要求メッセージに対し、各ノードは、車両識別コードと各ノード自身に記憶された車両識別用情報を含む車両識別応答メッセージ、或いは各ノード自身に記憶された車両識別用情報を含む車両識別応答メッセージのいずれかを診断装置に返信する構成とした。
【0060】
これによれば、単位車両制御装置に記憶させた車両識別コードVINが消えてしまった場合であっても、車両毎の各単位車両制御装置のノードは共通の車両識別用情報を有しているので、診断装置はそれらをグループとして紐付けして管理できるので、各単位車両制御装置がいずれの車両に属するものか識別することができる。