(57)【特許請求の範囲】
【請求項１】
複数の電子制御装置が接続され、予め定められた通信スケジュールに従ってこれら接続された複数の電子制御装置が一定時間毎に順次データを送信するタイムスロット方式の車載ネットワークと、
前記車載ネットワークに接続された複数の電子制御装置のうち、記憶保持するプログラムを書換可能な電子制御装置であってプログラム書換対象とする電子制御装置であるプログラム書換対象制御装置のプログラムを、前記車載ネットワークを介して書き換えるプログラム書換装置と、
前記プログラム書換対象制御装置のプログラム書換開始を指示するプログラム書換開始指示手段とを備え、
前記プログラム書換装置は、前記プログラム書換開始の指示を受けた場合、前記プログラム書換対象制御装置との間でのみ前記車載ネットワークを介した通信を確立することで、前記プログラムの書き換えを行うプログラム書換システムであって、
前記車載ネットワークに接続された複数の電子制御装置には、記憶保持するプログラムを書き換えることのできない電子制御装置であるプログラム書換不可制御装置が含まれており、
このプログラム書換不可制御装置は、前記プログラム書換開始の指示を受けた場合、前記車載ネットワークを介した通信を停止する通信制御部を備えており、
前記車載ネットワークに接続された複数の電子制御装置には、記憶保持するプログラムを書換可能な電子制御装置であってプログラム書換対象としない電子制御装置であるプログラム書換対象外制御装置が含まれており、
このプログラム書換対象外制御装置は、前記プログラム書換開始の指示を受けたが対象制御装置でないと判断した場合、前記車載ネットワークを介した通信を停止する通信制御部を備えており、
前記プログラム書換不可制御装置の前記車載ネットワークを介した通信が前記プログラム書換不可制御装置の前記通信制御部によって停止され、前記プログラム書換対象外制御装置の前記車載ネットワークを介した通信が前記プログラム書換対象外制御装置の前記通信制御部によって停止されることで、前記プログラム書換装置は、前記プログラム書換対象制御装置との間でのみ前記車載ネットワークを介した通信を確立し、
前記車載ネットワークを介した通信が前記通信制御部によって停止された電子制御装置は、その通信が停止してから所定期間経過後に、前記車載ネットワークを介した通信を再開し、
前記通信スケジュールは、固定幅のフレームによって構成されるスタティックセグメント及び可変幅のフレームによって構成されるダイナミックセグメントからなる通信サイクルが繰り返されて構成されており、
前記プログラムの書換時には、前記スタティックセグメントが最小数に設定され、残りの前記ダイナミックセグメントが使用されることを特徴とするプログラム書換システム。
【発明の詳細な説明】
【技術分野】
【０００１】
例えば車載ネットワークに接続された複数の電子制御装置のプログラムを車載ネットワークを介して書き換えるプログラム書換システムに関する。
【背景技術】
【０００２】
この種のプログラム書換システム（以下、リプログシステムとも記載する）としては、従来、例えば特許文献１及び２に記載の技術が知られている。以下、これら文献に記載の技術も含め、従来一般に知られている技術を説明する。
【０００３】
従来一般に知られているリプログシステムでは、まず、複数の電子制御装置が接続された車載ネットワークにリプログ装置が接続される。次に、リプログ装置によって、リプログ対象とする電子制御装置（以下、リプログ対象ＥＣＵとも記載）に対し所定の操作が行われる。すると、リプログ対象ＥＣＵは、その動作モードをリプログ専用モードに移行し、リプログ装置は、車載ネットワークのプロトコルに従ってリプログ対象ＥＣＵに対しプログラムデータを送信する。このようにして、リプログ装置は、リプログ対象ＥＣＵが記憶保持するプログラムを車載ネットワークを介して書き換えることができる。
【０００４】
ところで、車載ネットワークのプロトコルとしては、例えばＬＩＮやＣＡＮ等、イベント発生時に通信を開始するイベントドリブン方式が知られている。このイベントドリブン方式では、車載ネットワークに接続された複数のノード（この場合、複数のＥＣＵ及びリプログ装置）は、任意のタイミングでデータを送信することが可能である。ただし、複数のＥＣＵ及びリプログ装置が同一タイミングでデータを送信しようとする場合もあり、その場合にはデータが衝突してしまう。これに対し、車載ネットワークに接続された複数のＥＣＵ及びリプログ装置には予め優先順位を付与しておくとともに、複数のＥＣＵ及びリプログ装置が優先順位に従ってデータを送信することで、データの衝突が回避されるようになる。そして例えば、最も高い優先順位をリプログ装置に予め付与しておくことで、リプログ装置は、他の複数のＥＣＵに優先して、リプログ対象ＥＣＵに対しプログラムデータを送信する（リプログを実行する）ことができるようになる。したがって、高い通信効率をもってリプログを実行することが可能である。
【０００５】
一方、車載ネットワークのプロトコルとして、例えばＦｌｅｘＲａｙ等、一定周期で通信を開始するタイムスロット方式も知られている。タイムスロット方式では、車載ネットワークに接続された複数のノード（ここではＥＣＵ及びリプログ装置）は、予め定められた通信スケジュールに従って一定時間毎に順次データを送信する。このような通信スケジュールでは、車両機能制御に必要なデータの送信に利用されるスタティックセグメント、及び、車両機能制御に直接関係のないデータの送信に利用されるダイナミックセグメントが交互に繰り返されている。ちなみに、１つのスタティックセグメントとそれに続く１つのダイナミックセグメントによって１つの通信サイクルが構成されている。こうしたタイムスロット方式では、ＬＩＮやＣＡＮと比べて、高速且つ大容量の通信を行うことが可能である。
【特許文献１】特開２００６−２４４１２９号公報
【特許文献２】特開２００７−２２３６２号公報
【発明の開示】
【発明が解決しようとする課題】
【０００６】
しかしながら、タイムスロット方式にてリプログを実行しようとすると、次のような課題が生じることが懸念される。
【０００７】
詳しくは、上記タイムスロット方式の場合、リプログ対象外ＥＣＵの通信スケジュールを変更することなく通常の通信スケジュールを継続したまま、リプログ対象ＥＣＵをリプログしようとすると、リプログ対象ＥＣＵは通常の通信スケジュールを継続しなければならず、そのため、リプログ装置も通常時の通信スケジュールで通信を行うことになる。この場合、通常の通信スケジュールには、リプログ装置及びリプログ対象ＥＣＵだけでなくリプログ対象外ＥＣＵも割り当てられることになり、通信スケジュールに割り当てられるノード数が増大することになる。したがって、リプログ装置がリプログ対象ＥＣＵへプログラムデータを送信することのできる時間は短くなり、リプログに係る通信効率が低下してしまう。
【０００８】
本発明は、上記実情に鑑みてなされたものであって、その目的は、プログラム書換対象制御装置のプログラムを車載ネットワークを介して書き換えるに当たり、通信効率の向上を図ることのできるプログラム書換システムを提供することにある。
【課題を解決するための手段】
【０００９】
こうした目的を達成するため、請求項１に記載の発明では、複数の電子制御装置が接続され、予め定められた通信スケジュールに従ってこれら接続された複数の電子制御装置が一定時間毎に順次データを送信するタイムスロット方式の車載ネットワークと、前記車載ネットワークに接続された複数の電子制御装置のうち、記憶保持するプログラムを書換可能な電子制御装置であってプログラム書換対象とする電子制御装置であるプログラム書換対象制御装置のプログラムを、前記車載ネットワークを介して書き換えるプログラム書換装置と、前記プログラム書換対象制御装置のプログラム書換開始を指示するプログラム書換開始指示手段とを備え、前記プログラム書換装置は、前記プログラム書換開始の指示を受けた場合、前記プログラム書換対象制御装置との間でのみ前記車載ネットワークを介した通信を確立することで、前記プログラムの書き換えを行うプログラム書換システムであって、前記車載ネットワークに接続された複数の電子制御装置には、記憶保持するプログラムを書き換えることのできない電子制御装置であるプログラム書換不可制御装置が含まれており、このプログラム書換不可制御装置は、前記プログラム書換開始の指示を受けた場合、前記車載ネットワークを介した通信を停止する通信制御部を備えており、前記車載ネットワークに接続された複数の電子制御装置には、記憶保持するプログラムを書換可能な電子制御装置であってプログラム書換対象としない電子制御装置であるプログラム書換対象外制御装置が含まれており、このプログラム書換対象外制御装置は、前記プログラム書換開始の指示を受けたが対象制御装置でないと判断した場合、前記車載ネットワークを介した通信を停止する通信制御部を備えており、前記プログラム書換不可制御装置の前記車載ネットワークを介した通信が前記プログラム書換不可制御装置の前記通信制御部によって停止され、前記プログラム書換対象外制御装置の前記車載ネットワークを介した通信が前記プログラム書換対象外制御装置の前記通信制御部によって停止されることで、前記プログラム書換装置は、前記プログラム書換対象制御装置との間でのみ前記車載ネットワークを介した通信を確立し、前記車載ネットワークを介した通信が前記通信制御部によって停止された電子制御装置は、その通信が停止してから所定期間経過後に、前記車載ネットワークを介した通信を再開し、前記通信スケジュールは、固定幅のフレームによって構成されるスタティックセグメント及び可変幅のフレームによって構成されるダイナミックセグメントからなる通信サイクルが繰り返されて構成されており、前記プログラムの書換時には、前記スタティックセグメントが最小数に設定され、残りの前記ダイナミックセグメントが使用されることを特徴とする。
【００１０】
プログラム書換システムとしてのこのような構成では、プログラム書換装置は、プログラム書換開始指示を受けた場合、プログラム書換対象制御装置との間でのみ車載ネットワークを介した通信を確立するため、プログラム書換対象制御装置及びプログラム書換装置のみが車載ネットワークを介した通信スケジュールに参加することになる。これにより、プログラム書換対象制御装置以外の制御装置も参加する場合と比較して、通信スケジュールに割り当てられる電子制御装置の数は減少するため、プログラム書換装置がプログラム書換対象制御装置へプログラムを送信することのできる時間が長くなる。したがって、通信効率の向上を図ることができるようになる。
【００１１】
車載ネットワークに接続される複数の電子制御装置には、記憶保持するプログラムを書き換えることのできない電子制御装置であるプログラム書換不可制御装置や、記憶保持するプログラムを書き換えることができてもプログラム書換対象とされない電子制御装置であるプログラム書換対象外制御装置も含まれる。
【００１３】
本発明では、プログラム書換不可制御装置は、プログラム書換開始指示を受けた場合、車載ネットワークを介した通信が通信制御部によって停止されるため、プログラム書換不可制御装置は、車載ネットワークを介した通信に参加することができなくなる。
【００１５】
また、プログラム書換対象外制御装置も、プログラム書換開始指示を受けた場合、車載ネットワークを介した通信が通信制御部によって停止されるため、プログラム書換対象外制御装置は、車載ネットワークを介した通信に参加することができなくなる。これにより、プログラム書換対象制御装置及びプログラム書換装置のみが、確実に、車載ネットワークを介した通信に参加することができるようになる。
【００１６】
上記プログラム書換不可制御装置あるいはプログラム書換対象外制御装置は、プログラム書換開始指示手段からプログラム書換開始指示を受けたと誤認識してしまう場合もある。その場合、通信制御部によって停止されてしまうため、プログラム書換不可制御装置あるいはプログラム書換対象外制御装置が車載ネットワークを介した通信から離脱してしまう。
【００１７】
しかし、本発明では、前記車載ネットワークを介した通信が前記通信制御部によって停止された電子制御装置は、その通信が停止してから所定期間経過後に、前記車載ネットワークを介した通信を再開する。これにより、プログラム書換開始指示を受けたと誤認識したことに起因して、車載ネットワークを介した通信から離脱してしまっても、所定期間経過後には、プログラム書換不可制御装置あるいはプログラム書換対象外制御装置は、車載ネットワークを介した通信に参加することができるようになる。
【００３２】
また、本発明では、前記通信スケジュールは、固定幅のフレームによって構成されるスタティックセグメント及び可変幅のフレームによって構成されるダイナミックセグメントからなる通信サイクルが繰り返されて構成されており、前記プログラムの書換時は、前記スタティックセグメントが最小数（例えば「２個」）に設定され、残りの前記ダイナミックセグメントが使用される。
【００３３】
これにより、プログラム書換時には、このプログラム書換時以外の通常時とは異なり、プログラムデータの送信に利用するダイナミックセグメントの数を増大することができるようになるため、プログラムの書換に係る通信効率の向上を図ることができるようになる。
【００３４】
なお、プログラムの書換時に、必ずしもスタティックセグメントを最少数に設定する必要はない。要は、プログラムの書換時には、このプログラム書換時以外の通常時よりも、ダイナミックセグメントの領域が広く設定され、プログラムデータの送信にダイナミックセグメントが使用されれば、プログラムの書換に係る通信効率の向上を図ることはできる。
【発明を実施するための最良の形態】
【００４４】
（第１の実施の形態）
以下、本発明に係るリプログシステム（プログラム書換システム）の第1の実施の形態について説明する。
【００４５】
図面に示されるように、また、以下で詳述するように、本実施の形態のリプログシステムも、既述した従来技術と同様に、複数の電子制御装置（以下、ＥＣＵとも記載）が接続され、予め定められた通信スケジュールに従ってこれら接続された複数のＥＣＵが一定時間毎に順次データを送信するタイムスロット方式の車載ネットワークと、車載ネットワークに接続された複数のＥＣＵのうちリプログ対象ＥＣＵのプログラムを車載ネットワークを介して書き換えるリプログ装置とを備える。ただし、本実施の形態では、既述した従来技術とは異なり、リプログ装置は、プログラム書換開始の指示を受けた場合、リプログ対象ＥＣＵとの間でのみ車載ネットワークを介した通信を確立し、プログラムを書き換える。これにより、リプログ対象ＥＣＵのプログラムを車載ネットワークを介して書き換えるに当たり、通信効率の向上を図ろうとしている。
【００４６】
図１（ａ）は、リプログ装置が通信線に接続されていない状態における全体構成を示すブロック図であり、図１（ｂ）は、リプログ装置が通信線に接続されている状態における全体構成を示すブロック図である。これら図１（ａ）及び（ｂ）に示されるように、リプログシステム１は、複数のＥＣＵ１０、リプログ装置１１、並びに、これらＥＣＵ１０及びリプログ装置１１が接続される通信線（車載ネットワーク）１２を備えており、図示しない車両に搭載される。
【００４７】
これら複数のＥＣＵ１０には、例えば内蔵フラッシュメモリ等にプログラムを記憶保持してそのプログラムを書換可能なＥＣＵであってプログラム書換対象とするＥＣＵであるリプログ対象ＥＣＵ（プログラム書換対象制御装置）、及び、例えば内蔵フラッシュメモリ等にプログラムを記憶保持してそのプログラムを書換可能なＥＣＵであるもののプログラム書換対象としないＥＣＵであるリプログ対象外ＥＣＵ（プログラム書換対象外制御装置）、並びに、例えばマスクＲＯＭ等の不揮発性メモリにプログラムを記憶保持してそのプログラムを書き換えることのできないＥＣＵであるリプログ不可ＥＣＵ（プログラム書換不可制御装置）が含まれている。なお、リプログ対象ＥＣＵ及びリプログ対象外ＥＣＵはリプログ機能を有しているため、以下では、これらＥＣＵを総称してリプログ可能ＥＣＵと記載することもある。また、リプログ不可ＥＣＵはリプログ機能を有していない。
【００４８】
また、これら複数のＥＣＵ１０及びリプログ装置１１間における通信では、その通信プロトコルとして、例えばＦｌｅｘＲａｙ等、予め定められた通信スケジュールに従って一定時間毎に順次データを送信する、いわゆるタイムスロット方式が採用されている。
【００４９】
図２（ａ）に、リプログ装置未接続時の通信スケジュール、すなわち、通常時の通信スケジュールの一例を示し、図２（ｂ）に、リプログ装置接続時の通信スケジュール、すなわち、リプログ時の通信スケジュールの一例を示す。
【００５０】
このうち、図２（ａ）に示されるように、通常時の通信スケジュールには、複数個（例えば「６個」）の固定幅のフレームＦ１１から構成され、車両機能制御に必要なデータの送信に利用されるスタティックセグメントＳＳ１と、複数個（例えば「２個」）の可変幅のフレームＦ１２から構成され、車両機能制御に直接関係のないデータの送信に利用されるダイナミックセグメントＤＳ１とが交互に繰り返されている。
【００５１】
同様に、図２（ｂ）に示されるように、リプログ時の通信スケジュールには、複数個（例えば「２個」）の固定幅のフレームＦ２１から構成されて車両機能制御に必要なデータの送信に利用されるスタティックセグメントＳＳ２と、複数個（例えば「８個」）の可変幅のフレームＦ２２から構成されて車両機能制御に直接関係のないデータの送信に利用されるダイナミックセグメントＤＳ２とが交互に繰り返されている。
【００５２】
なお、上記リプログ時の通信スケジュールにおいては、スタティックセグメントＳＳ２は例えば「２個」のフレームＦ２１から構成されている。本実施の形態では、通信プロトコルとしてＦｌｅｘＲａｙを採用しているため、その制約から、スタティックセグメントＳＳ２を構成するフレーム数は最低数である「２個」となっている。なお、タイムスロット方式の通信プロトコルでは、一般に、同時に通信を確立しているノードの数が最小限必要なスタティックセグメントの数として要求される。
【００５３】
また、図示の便宜上、図２（ａ）には、１つのスタティックセグメントＳＳ１とこれに続く１つのダイナミックセグメントＤＳ１とによって構成される通信サイクルＣ１を１つのみ示しており、図２（ｂ）には、１つのスタティックセグメントＳＳ２とこれに続く１つのダイナミックセグメントＤＳ２とによって構成される通信サイクルＣ２を１つのみ示しているが、実際には、こうした通信サイクルＣ１及びＣ２は繰り返される。
【００５４】
ここで、リプログシステム１を構成するリプログ装置１１の内部構成を図３（ａ）に示す。この図３（ａ）に示すように、リプログ装置１１は、リプログ開始指示部１１０、通信制御部（通信コントローラ）１１１及び記憶保持部１１２を有する。
【００５５】
このうち、リプログ開始指示部１１０は、例えば当該リプログシステムのユーザによって後述の所定操作がなされるか否かを逐次判断し、その所定操作がなされたと判断すると、記憶保持部１１２にその旨を記憶保持するとともに、通信線１２に接続されている複数のＥＣＵ１０に対し通信制御部１１１を介してリプログ準備要求を送信する。また、リプログ開始指示部１１０は、複数のＥＣＵ１０のいずれがリプログ対象ＥＣＵであるかについての情報も取得し、記憶保持部１１２にその情報を記憶保持するとともに、通信線１２に接続されている複数のＥＣＵ１０に対し通信制御部１１１を介してその情報を送信する。さらに、リプログ開始指示部１１０は、リプログ開始操作がなされるか否かを逐次判断し、リプログ開始操作がなされたと判断するとき、通信線１２に接続されている複数のＥＣＵ１０に対し通信制御部１１１を介してプログラム書換開始を指示する。
【００５６】
通信制御部１１１は、リプログ準備要求及びリプログ対象ＥＣＵに関する情報（リプログ対象ＥＣＵ情報）を通信線１２を介してＥＣＵ１０に実際に送信する通信中処理を実行する。また、通信制御部１１１は、通常時の通信スケジュール（図２（ａ）参照）にて通信の確立準備を開始するか、あるいは、リプログ時の通信スケジュール（図２（ｂ）参照）にて通信の確立準備を開始するかを当該装置１１の起動時に決定する起動時処理を実行する。さらに、通信制御部１１１は、リプログ対象ＥＣＵへ送信するデータそのものであって記憶保持部１１２に記憶保持されている制御プログラムデータ（マスタデータ）を、リプログ対象ＥＣＵに通信線１２を介して送信するリプログ処理を実行する。
【００５７】
記憶保持部１１２は、上記リプログ準備要求、上記リプログ対象ＥＣＵ情報、通常時の通信スケジュールの情報、リプログ時の通信スケジュールの情報、リプログ対象ＥＣＵへ送信するデータそのものである制御プログラムデータ（マスタデータ）を記憶保持する。
【００５８】
また、リプログ可能ＥＣＵ（すなわち、リプログ対象ＥＣＵ１０ａ及びリプログ対象外ＥＣＵ１０ｂ）の内部構成を図３（ｂ）に示す。この図３（ｂ）に示すように、リプログ対象ＥＣＵ１０ａ及びリプログ対象外ＥＣＵ１０ｂは、通信制御部（通信コントローラ）１０１ａ及び記憶保持部１０２をそれぞれ有する。
【００５９】
このうち、通信制御部１０１ａは、上記通信制御部１１１によって通信線１２を介して送信される上記リプログ準備要求及び上記リプログ対象ＥＣＵ情報を受信するとともに、これら受信したリプログ準備要求及びリプログ対象ＥＣＵ情報を記憶保持部１０２に記憶保持する通信中処理を実行する。また、通信制御部１０１ａは、通常時の通信スケジュールにて通信の確立準備を開始するか、リプログ時の通信スケジュールにて通信の確立準備を開始するか、あるいは、通信の確立準備を停止するかについて、当該ＥＣＵ１０ａ及び１０ｂの起動時に決定する起動時処理を実行する。さらに、通信制御部１０１ａは、リプログ装置１１から通信線１２を介して送信されるマスタデータを受信し、記憶保持部１０２に記憶保持しているプログラムをマスタデータによって書き換えるリプログ処理を実行する。
【００６０】
記憶保持部１０２は、上記リプログ準備要求、上記リプログ対象ＥＣＵ情報、通常時の通信スケジュールの情報、リプログ時の通信スケジュールの情報、及び、制御プログラムを記憶保持する。
【００６１】
このように、リプログ可能ＥＣＵは、「通常時の通信スケジュール情報」、「リプログ時の通信スケジュール情報」、「通信起動処理切替機能（通常時の通信スケジュール、リプログ時の通信スケジュール及び通信開始の停止を切替）」及び「リプログ機能」を有する。
【００６２】
さらに、リプログ不可ＥＣＵ１０ｃの内部構成を図３（ｃ）に示す。この図３（ｃ）に示すように、リプログ不可ＥＣＵ１０ｃは、通信制御部（通信コントローラ）１０１ｃ及び記憶保持部１０２をそれぞれ有する。このうち、通信制御部１０１ｃは、上記通信制御部１１１によって通信線１２を介して送信されるリプログ準備要求を受信するとともに、この受信したリプログ準備要求を記憶保持部１０２に記憶保持する通信中処理を実行する。また、通信制御部１０１ｃは、通常時の通信スケジュールにて通信の確立準備を開始するか、通信の確立準備を停止するかについて、当該ＥＣＵ１０ｃの起動時に決定する起動時処理を実行する。また、記憶保持部１０２は、上記リプログ準備要求、通常時の通信スケジュールの情報及び制御プログラムを記憶保持する。
【００６３】
このように、リプログ不可ＥＣＵは、「通常の通信スケジュール情報」及び「通信起動処理切替機能（通常時の通信スケジュール及び通信開始の停止を切替）」を有する。
【００６４】
以上のように構成されたリプログシステム１を用いるリプログの実行手順を図４に一覧にて示す。この図４に示すように、リプログ装置１１の未接続時において（図１（ａ）参照）、リプログシステム１のユーザは、まず、手順１として、イグニッションスイッチをオン操作する。このとき、車載ネットワーク（通信線１２）に接続された複数のＥＣＵ１０は、通常時の通信スケジュールにて通信の確立準備を開始し、やがて通信が確立する。
【００６５】
通常時の通信スケジュールにて通信が確立すると、次に、リプログシステム１のユーザは、手順２として、リプログ装置１１を接続して、リプログ準備要求を送信するとともに、リプログ対象ＥＣＵ情報も送信する。このとき、車載ネットワーク（通信線１２）に接続された全てのＥＣＵ１０は、リプログ準備要求を受信し、記憶保持部に各々記憶保持する。なお、複数のＥＣＵ１０のうちリプログ可能ＥＣＵは、リプログ対象ＥＣＵ情報も取得し、記憶保持部に各々記憶保持する。
【００６６】
リプログ準備要求及びリプログ対象ＥＣＵ情報が送信されると、次に、リプログシステム１のユーザは、手順３として、イグニッションスイッチをオフ操作し、再度オン操作する（所定操作）。このとき、リプログ装置１１及びリプログ対象制御装置１０ａは、事前に受信した情報に基づいて、リプログ時の通信スケジュールにて通信の確立準備を開始する。一方、リプログ対象外ＥＣＵ１０ｂ及びリプログ不可ＥＣＵ１０ｃは、事前に受信した情報に基づいて、通信の確立準備を停止する。これにより、リプログ装置１１及びリプログ対象ＥＣＵ１０ａ間でのみ、リプログ時の通信スケジュールにて通信が確立することとなる。
【００６７】
次に、リプログシステム１のユーザは、手順４として、リプログ装置１１に対しリプログ開始操作を行う。すると、リプログ装置１１は、リプログ対象ＥＣＵ１０ａへ制御プログラムデータを送信開始し、リプログ対象ＥＣＵ１０ａのプログラムデータが書き換えられる（リプログが実行される）ことになる。
【００６８】
こうしてリプログが実行されると、リプログシステム１のユーザは、手順５として、イグニッションスイッチをオフ操作し、再度オン操作する。このとき、車載ネットワーク（通信線１２）に接続された複数のＥＣＵ１０は、通常時の通信スケジュールにて通信の確立準備を開始する。やがて、車載ネットワークを介した通信が確立することになる。
【００６９】
図５（ａ）は、リプログ装置１１によって実行される通信中処理の処理手順を示すフローチャートであり、図５（ｂ）は、リプログ装置１１によって実行される起動時処理の処理手順を示すフローチャートである。
【００７０】
例えばリプログ装置１１が通信線１２に接続されて通信が確立された後（イグニッションスイッチはオンとされている）等、リプログ装置１１は、図５（ａ）に示す通信中処理を実行する。詳しくは、図５（ａ）に示されるように、通信中処理を開始すると、リプログ装置１１は、まず、ステップＳ１１１の判断処理として、リプログ準備操作（図４の手順２参照）が行われるまで待機する。
【００７１】
ここで、リプログ準備操作が行われたと判断するとき（ステップＳ１１１の判断処理において「Ｙｅｓ」）、リプログ装置１１は、続くステップＳ１１２の処理として、車載ネットワーク（通信線１２）に接続されたＥＣＵ１０に対しリプログ準備要求を送信する。リプログ準備要求を送信すると、リプログ装置１１は、続くステップＳ１１３の処理として、車載ネットワーク（通信線１２）に接続されたＥＣＵ１０に対しリプログ対象ＥＣＵ情報を送信する。このとき、リプログ可能ＥＣＵのみがリプログ対象ＥＣＵ情報を各記憶保持部に記憶保持する。リプログ装置１１は、続くステップＳ１１４の処理として、リプログ準備要求フラグを記憶保持部１１２にセットし、通信中処理を一旦終了する。
【００７２】
このようにして、リプログ装置１１は、イグニッションスイッチがオンとされている間に、当該リプログ装置１１に対しユーザがリプログ準備操作をする場合、リプログ準備要求及びリプログ対象ＥＣＵ情報を送信する（Ｓ１１１→Ｓ１１２→Ｓ１１３→Ｓ１１４）。
【００７３】
また、リプログ装置１１は、例えばイグニッションスイッチがオン操作されると、図５（ｂ）に示す起動時処理を実行する。詳しくは、図５（ｂ）に示されるように、起動時処理を開始すると、リプログ装置１１は、まず、ステップＳ１２１の判断処理として、記憶保持部１１２に記憶保持したリプログ準備要求フラグがセットされているか否かを判断する。ここで、リプログ準備要求フラグがセットされていると判断するとき（ステップＳ１２１の判断処理において「Ｙｅｓ」）、リプログ装置１１は、続くステップＳ１２２の処理として、リプログ準備要求フラグをリセットするとともに、続くステップＳ１２３の処理として、リプログ時の通信スケジュールにて通信の確立準備を開始する。一方、リプログ準備要求フラグがセットされていないと判断するとき（ステップＳ１２１の判断処理において「Ｎｏ」）、リプログ装置１１は、続くステップＳ１２４の処理として、通常時の通信スケジュールにて通信の確立準備を開始する。そして、リプログ装置１１は、それぞれの通信スケジュールにて通信を確立する。
【００７４】
このようにして、リプログ装置１１は、イグニッションスイッチがオン操作されるとき、前回イグニッションスイッチがオン中にリプログ準備要求を送信していた場合には、リプログ時の通信スケジュールにて通信の確立準備を開始するとともに、リプログ準備要求の送信の記憶を削除する（Ｓ１２１→Ｓ１２２→Ｓ１２３）。また、リプログ装置１１は、イグニッションスイッチがオン操作されるとき、前回イグニッションスイッチがオン中にリプログ準備要求を送信したことが記憶保持されて無い場合には、通常時の通信スケジュールにて通信の確立準備を開始する（Ｓ１２１→Ｓ１２４）。
【００７５】
図６（ａ）は、リプログ可能ＥＣＵによって実行される通信中処理の処理手順を示すフローチャートであり、図６（ｂ）は、リプログ可能ＥＣＵによって実行される起動時処理の処理手順を示すフローチャートである。
【００７６】
例えばリプログ可能ＥＣＵが通信線１２に接続されて通信が確立された後等、リプログ可能ＥＣＵは、図６（ａ）に示す通信中処理を実行する。詳しくは、図６（ａ）に示されるように、通信中処理を開始すると、リプログ可能ＥＣＵは、まず、ステップＳ１３１の判断処理として、リプログ準備要求（図４の手順２参照）を受信するまで待機する。
【００７７】
ここで、リプログ準備要求を受信したと判断するとき（ステップＳ１３１の判断処理において「Ｙｅｓ」）、リプログ可能ＥＣＵは、続くステップＳ１３２の処理として、リプログ準備要求フラグを記憶保持部１０２にセットする。また、リプログ可能ＥＣＵは、リプログ対象ＥＣＵ情報を記憶保持部１０２に記憶保持する。そして、通信中処理を一旦終了する。
【００７８】
このようにして、リプログ可能ＥＣＵは、イグニッションスイッチがオンとされている間に、リプログ装置１１からリプログ準備要求を受信する場合、その旨を記憶保持するとともに、リプログ対象が自ノードであるかあるいは他ノードであるかについても記憶保持する（ステップＳ１３１→Ｓ１３２→Ｓ１３３）。
【００７９】
また、リプログ可能ＥＣＵは、例えばイグニッションスイッチがオン操作されると、図６（ｂ）に示す起動時処理を実行する。詳しくは、図６（ｂ）に示されるように、起動時処理を開始すると、リプログ可能ＥＣＵは、まず、ステップＳ１４１の判断処理として、記憶保持部１０２に記憶保持したリプログ準備要求フラグがセットされているか否かを判断する。ここで、リプログ準備要求フラグがセットされていると判断するとき（ステップＳ１４１の判断処理において「Ｙｅｓ」）、リプログ可能ＥＣＵは、続くステップＳ１４２の処理として、当該リプログ可能ＥＣＵがリプログ対象とされているか否かを判断する。
【００８０】
当該リプログ可能ＥＣＵがリプログ対象ＥＣＵ１０ａであると判断するとき（ステップＳ１４２の判断処理において「Ｙｅｓ」）、リプログ対象ＥＣＵ１０ａは、続くステップＳ１４３の処理として、リプログ準備要求フラグをリセットするとともに、続くステップＳ１４４の処理として、リプログ時の通信スケジュールにて通信の確立準備を開始する。このようにして、イグニッションスイッチがオン操作されたときに、前回のイグニッションスイッチがオンとされている間にリプログ準備要求を受信するとともに当該リプログ可能ＥＣＵがリプログ対象ＥＣＵであると判断した場合には、リプログ時の通信スケジュールにて通信の確立準備を開始する（ステップＳ１４１→Ｓ１４２→Ｓ１４３→Ｓ１４４）。
【００８１】
一方、当該リプログ可能ＥＣＵがリプログ対象外ＥＣＵ１０ｂであると判断するとき（ステップＳ１４２の判断処理において「Ｎｏ」）、リプログ対象外ＥＣＵ１０ｂは、続くステップＳ１４５の処理として、リプログ準備要求フラグをリセットするとともに、続くステップＳ１４６の処理として、通信の確立準備を停止する。このようにして、イグニッションスイッチがオン操作されたときに、前回のイグニッションスイッチがオンとされている間にリプログ準備要求を受信するとともに当該リプログ可能ＥＣＵがリプログ対象外ＥＣＵであると判断した場合には、通信の確立準備を停止する（ステップＳ１４１→Ｓ１４２→Ｓ１４５→Ｓ１４６）。
【００８２】
他方、リプログ準備要求フラグがセットされていないと判断するとき（ステップＳ１４１の判断処理において「Ｎｏ」）、リプログ可能ＥＣＵは、続くステップＳ１４７の処理として、通常時の通信スケジュールにて通信の確立準備を開始する。このようにして、イグニッションスイッチがオン操作されたときに、前回のイグニッションスイッチがオンとされている間にリプログ準備要求を受信していないと判断した場合には、通常時の通信スケジュールにて通信の確立準備を開始する（ステップＳ１４１→Ｓ１４７）。
【００８３】
図７（ａ）は、リプログ不可ＥＣＵ１０ｃによって実行される通信中処理の処理手順を示すフローチャートであり、図７（ｂ）は、リプログ不可ＥＣＵ１０ｃによって実行される起動時処理の処理手順を示すフローチャートである。
【００８４】
例えばリプログ不可ＥＣＵ１０ｃが通信線１２に接続されて通信が確立された後等、リプログ不可ＥＣＵ１０ｃは、図７（ａ）に示す通信中処理を実行する。詳しくは、図７（ａ）に示されるように、通信中処理を開始すると、リプログ不可ＥＣＵは、まず、ステップＳ１５１の判断処理として、リプログ準備要求（図４の手順２参照）を受信するまで待機する。ここで、リプログ準備要求を受信したと判断するとき（ステップＳ１５１の判断処理において「Ｙｅｓ」）、リプログ不可ＥＣＵ１０ｃは、続くステップＳ１５２の処理として、リプログ準備要求フラグを記憶保持部１０２にセットして、通信中処理を一旦終了する。なお、リプログ不可ＥＣＵ１０ｃは、リプログ機能を有していないため、リプログ対象ＥＣＵ情報を記憶保持する必要はない。このようにして、イグニッションスイッチがオンとされている間に、リプログ装置１１からリプログ準備要求を受信すると、受信したことを記憶保持する（ステップＳ１５１→Ｓ１５２）。
【００８５】
また、例えばイグニッションスイッチがオン操作されると、リプログ不可ＥＣＵ１０ｃは、図７（ｂ）に示す起動時処理を実行する。詳しくは、図７（ｂ）に示されるように、起動時処理を開始すると、リプログ不可ＥＣＵ１０ｃは、まず、ステップＳ１６１の判断処理として、記憶保持部１０２に記憶保持したリプログ準備要求フラグがセットされているか否かを判断する。ここで、リプログ準備要求フラグがセットされていると判断するとき（ステップＳ１６１の判断処理において「Ｙｅｓ」）、リプログ不可ＥＣＵ１０ｃは、続くステップＳ１６２の処理として、リプログ準備要求フラグをリセットするとともに、続くステップＳ１６３の処理として、通信の確立準備を停止する。このようにして、イグニッションスイッチがオン操作されたときに、前回のイグニッションスイッチがオンとされている間にリプログ準備要求を受信していた場合には、リプログ時の通信スケジュールにて通信の確立準備を開始するとともに、リプログ準備要求の受信の記憶を削除する（ステップＳ１６１→Ｓ１６２→Ｓ１６３）。
【００８６】
一方、リプログ準備要求フラグがセットされていないと判断するとき（ステップＳ１６１の判断処理において「Ｎｏ」）、リプログ不可ＥＣＵ１０ｃは、続くステップＳ１６４の処理として、通常時の通信スケジュールにて通信の確立準備を開始する。このようにして、イグニッションスイッチがオン操作されたときに、前回のイグニッションスイッチがオンとされている間にリプログ準備要求を受信していなかった場合には、通常時の通信スケジュールにて通信の確立準備を開始する（ステップＳ１６１→Ｓ１６４）。
【００８７】
以上説明したように、上記第１の実施の形態では、リプログ装置１１は、プログラム書換開始の指示を受けた場合、リプログ対象ＥＣＵ１０ａとの間でのみ通信線１２を介した通信を確立することで、プログラムを書き換えることとした。これにより、リプログ対象ＥＣＵ１０ａ以外のＥＣＵ（リプログ対象外ＥＣＵ１０ｂやリプログ不可ＥＣＵ１０ｃ）も通信に参加する場合と比較して、通信スケジュールに割り当てられるＥＣＵの数が減少するため、リプログ装置１１がリプログ対象ＥＣＵ１０ａへプログラムを送信することのできる時間が長くなる。したがって、通信効率の向上を図ることができるようになる。
【００８８】
上記第１の実施の形態では、リプログ不可ＥＣＵ１０ｃは、プログラム書換開始指示を受けた場合、通信の確立準備を停止することとした。これにより、リプログ装置１１とリプログ対象ＥＣＵ１０ａとの間でのみ通信を確立することが確実にできるようになる。
【００８９】
上記第１の実施の形態では、リプログ可能ＥＣＵは、プログラム書換開始の指示を受けたがリプログ対象ではないと判断した場合、すなわち、リプログ対象外ＥＣＵ１０ｂであると判断した場合、通信の確立準備を停止することとした。これによっても、リプログ装置１１とリプログ対象ＥＣＵ１０ａとの間でのみ通信を確立することが確実にできるようになる。
【００９０】
上記第１の実施の形態では、リプログ時の通信スケジュールにおける通信サイクルＣ２を構成するスタティックセグメントＳＳ２は最少数に設定されていることとした。これにより、ダイナミックセグメントＤＳ２の数を増加することができるようになるため、リプログに係る通信効率の向上をさらに図ることができるようになる。
【００９１】
なお、本発明に係るリプログシステム及びリプログ装置は、上記実施の形態にて例示した構成に限定されるものではなく、本発明の趣旨を逸脱しない範囲において、種々に変形して実施することが可能である。すなわち、上記実施の形態を適宜変更した例えば次の形態として実施することもできる。
【００９２】
上記第１の実施の形態では、リプログ対象ＥＣＵ１０ａのリプログ終了後、先の図４に手順５として示すように、リプログシステム１のユーザがイグニッションスイッチをオフ操作し再度オン操作していた。これにより、リプログ対象外ＥＣＵ１０ｂ及びリプログ不可ＥＣＵ１０ｃは、通常時の通信スケジュールにて通信の確立準備を再開していた。しかしながら、これに限らない。他に例えば、フェイルセーフを考慮して、リプログ対象外ＥＣＵ１０ｂ及びリプログ不可ＥＣＵ１０ｃは、通信の確立準備が停止されてから所定時間経過後に、通信の確立準備を再開することとしてもよい。これにより、プログラム書換指示を受けたと誤認識したことに起因して、通信から離脱してしまっても、所定期間経過後には、リプログ対象外ＥＣＵ１０ｂ及びリプログ不可ＥＣＵ１０ｃは、通信の確立準備を開始することができ、やがて通信に参加することができるようになる。
【００９３】
ちなみに、リプログ対象ＥＣＵ１０ａのリプログが所定期間内に終了せず、リプログ対象外ＥＣＵ１０ｂ及びリプログ不可ＥＣＵ１０ｃが通信の確立準備を開始してしまったとしても次の理由により問題ない。すなわち、リプログが所定期間内に終了しなかったとき、リプログ装置１１及びリプログ対象ＥＣＵ１０ａ間では、リプログ時の通信スケジュールにて通信がまだ確立している。この状態において、リプログ対象外ＥＣＵ１０ｂやリプログ不可ＥＣＵ１０ｃが通常時の通信スケジュールにて通信の確立準備を開始しても、既に確立されているリプログ時の通信スケジュールと異なる通信スケジュールであるため、通信を確立することはできない。したがって、リプログ装置１１及びリプログ対象ＥＣＵ１０ａ間で、リプログ時の通信スケジュールにて通信は維持される。そして、リプログ対象外ＥＣＵ１０ｂ及びリプログ不可ＥＣＵ１０ｃは、通常時の通信スケジュールにて通信が確立できないとき、所定期間経過後に、通常時の通信スケジュールにて通信の確立準備を再度開始する。これにより、やがてはリプログが終了し、リプログ対象外ＥＣＵ１０ｂ及びリプログ不可ＥＣＵ１０ｃは、通信に参加することができるようになる。
【００９４】
（第２の実施の形態）
以下、本発明に係るリプログシステム及びリプログ装置の第２の実施の形態について説明する。
【００９５】
図面に示されるように、また、以下で詳述するように、本実施の形態のリプログ装置も、先の第１の実施の形態に準じた構成を有する。ただし、本実施の形態では、リプログ対象外ＥＣＵ及びリプログ不可ＥＣＵが通常の通信スケジュール（第１通信スケジュール）にて通信の確立準備を開始するとともにリプログ対象ＥＣＵがリプログ時の通信スケジュール（第２通信スケジュール）にて通信の確立準備を開始する時期である第１開始時期、並びに、リプログ装置がリプログ時の通信スケジュール（第２通信スケジュール）にて通信の確立準備を開始する時期である第２開始時期をそれぞれ制御する開始時期制御部をさらに備えており、この開始時期制御部は、プログラム書換開始指示を受けた場合、第１開始時期を第２開始時期よりも遅らせることで、リプログ対象ＥＣＵとの間でのみ通信を確立するようにしている。
【００９６】
図８（ａ）は、リプログ装置１１ａの内部構成を示す模式図である。この図８（ａ）に示すように、リプログ装置１１ａは、リプログ開始指示部１１０、通信制御部（通信コントローラ）１１１、記憶保持部１１２、開始時期制御部１１３、バスドライバＢＤ１、バスドライバＢＤ２及びアナログスイッチ１１４等々を有する。このうち、リプログ開始指示部１１０、通信制御部１１１及び記憶保持部１１２については、第１の実施の形態と同様であるため、ここでの重複する説明を割愛する。
【００９７】
開始時期制御部（開始時期制御手段）１１３は、例えばマイコンによって構成されており、リプログ対象外ＥＣＵ１０ｂ及びリプログ不可ＥＣＵ１０ｃが通常時の通信スケジュール（第１通信スケジュール）による通信の確立準備を開始するとともにリプログ対象ＥＣＵ１０ａがリプログ時の通信スケジュール（第２通信スケジュール）による通信の確立準備を開始する第１開始時期、並びに、リプログ装置１１ａがリプログ時の通信スケジュール（第２通信スケジュール）による通信の確立準備を開始する第２開始時期をそれぞれ制御する。
【００９８】
詳しくは、図８（ａ）に示すように、開始時期制御部１１３は、バスドライバＢＤ２を介して通信線１２に接続されており、バスドライバＢＤ２のＴｘＤラインを用いることで、通信線１２の状態をデータ授受が行われている状態と同一のアクティブ状態にしたり、あるいは、通信線１２の状態をデータ授受が行われていない状態と同一のアイドル状態にしたりする。
【００９９】
また、図８（ａ）に示すように、開始時期制御部１１３は、通信制御部１１１及びバスドライバＢＤ１間のＲｘＤラインに介在するアナログスイッチ１１４に接続されている。開始時期制御部１１３は、アナログスイッチ１１４をオフとしてＲｘＤラインをオープンとすることで、通信制御部１１１（当該リプログ装置１１ａ）に通信線１２の状態がアイドル状態のままであると誤認識させることが可能となる。一方、開始時期制御部１１３は、アナログスイッチ１１４をオンとしてＲｘＤラインをショートすることで、通信制御部１１１（当該リプログ装置１１ａ）に通信線１２の状態がアクティブ状態であるか、あるいは、アイドル状態であるかについて検出させることが可能となる。
【０１００】
そして、開始時期制御部１１３は、通信線１２をアクティブ状態とすることで全てのＥＣＵ１０に通信の確立準備を待機させる一方、通信線１２が実際にはアクティブ状態とされているにもかかわらずアイドル状態であると誤認識させて当該リプログ装置１１ａに通信の確立準備を開始させる。これにより、第１開始時期を第２開始時期よりも遅らせている。
【０１０１】
図８（ｂ）は、リプログ可能ＥＣＵ（リプログ対象ＥＣＵ１０ａ及びリプログ対象外ＥＣＵ１０ｂ）の内部構成を示す模式図である。図８（ｂ）に示すように、リプログ対象ＥＣＵ１０ａ及びリプログ対象外ＥＣＵ１０ｂは、通信制御部（通信コントローラ）１０１ａ及び記憶保持部１０２ａをそれぞれ有する。
【０１０２】
このうち、通信制御部１０１ｂは、先の通信制御部１０１ａに準じた構成を有しており、通信中処理（図６（ａ））を実行する。ただし、通信制御部１０１ｂは、先の通信制御部１０１ａとは異なり、通常時の通信スケジュールにて通信の確立準備を開始するか、あるいは、リプログ時の通信スケジュールにて通信の確立準備を開始するかについて、リプログ対象ＥＣＵ１０ａ及びリプログ対象外ＥＣＵ１０ｂの起動時に決定する起動時処理（図１１（ａ）にて後述）を実行する。
【０１０３】
このように、リプログ可能ＥＣＵは、「通常時の通信スケジュール情報」、「リプログ時の通信スケジュール情報」、「通信起動処理切替機能（通常時の通信スケジュール、リプログ時の通信スケジュールを切替）」及び「リプログ機能」を有する。
【０１０４】
図８（ｃ）は、リプログ不可ＥＣＵ１０ｃの内部構成を示すブロック図である。図８（ｃ）に示すように、リプログ不可ＥＣＵ１０ｃは、通信制御部（通信コントローラ）１０１ｃ及び記憶保持部１０２をそれぞれ有する。このうち、通信制御部１０１ｄは、通常時の通信スケジュールにて通信の確立準備を当該ＥＣＵ１０ｃの起動時に開始する起動時処理を実行する。記憶保持部１０２ｄは、通常時の通信スケジュールの情報及び制御プログラムを記憶保持する。このように、リプログ不可ＥＣＵは、「通常時の通信スケジュール情報」を有する。
【０１０５】
なお、本実施の形態では、通常時の通信スケジュールとして図１３（ａ）に示す通信スケジュールを採用しているとともに、リプログ時の通信スケジュールとして図１３（ｂ）に示す通信スケジュールを採用している。
【０１０６】
このうち、図１３（ａ）に示されるように、通常時の通信スケジュールには、複数個（例えば「６個」）の固定幅のフレームＦ１１から構成され、車両機能制御に必要なデータの送信に利用されるスタティックセグメントＳＳ１と、複数個（例えば「２個」）の可変幅のフレームＦ１２から構成され、車両機能制御に直接関係のないデータの送信に利用されるダイナミックセグメントＤＳ１とが交互に繰り返されている。
【０１０７】
同様に、図１３（ｂ）に示されるように、リプログ時の通信スケジュールには、複数個（例えば「２個」）の固定幅のフレームＦ２１から構成されて車両機能制御に必要なデータの送信に利用されるスタティックセグメントＳＳ２と、複数個（例えば「７個」）の可変幅のフレームＦ２２から構成されて車両機能制御に直接関係のないデータの送信に利用されるダイナミックセグメントＤＳ２とが交互に繰り返されている。
【０１０８】
これら図１３（ａ）及び（ｂ）の対比から分かるように、フレームＸの大きさとフレームＹの大きさが異なるものの、通信サイクルＣ１と通信サイクルＣ２の大きさは同一である。したがって、リプログ対象外ＥＣＵ１０ｂは、フレームＸを受信することができるものの、そのフレームＸの受信間隔が通信サイクルＣ２とは異なるため、通信の確立に失敗することとなる。
【０１０９】
これら図１３（ａ）及び（ｂ）の対比から分かるように、通信サイクルＣ１と通信サイクルＣ２の大きさが同一であるものの、フレームＸの大きさとフレームＹの大きさが異なる。したがって、リプログ対象外ＥＣＵ１０ｂは、後述するように、リプログ時の通信スケジュールのフレームＹを受信することができないため、通信の確立に失敗する（通信に参加できない）ことになる。
【０１１０】
リプログ装置１１ａについてさらに説明する。なお、リプログ装置１１ａは、後述の通信開始信号を送信する前にＲｘＤ端子にて通信線１２がアクティブ状態であることを検出すると、通信開始信号を送信することはできない。しかし、リプログ装置１１ａは、ＲｘＤラインの状態がオープンであれば、通信線１２の実際の状態にかかわらず、通信線１２はアイドル状態であると認識するため、この通信開始信号を送信可能である。
【０１１１】
リプログ装置１１ａは、リプログ開始操作がなされると、リプログ対象ＥＣＵ１０ａとの間でのみ車載ネットワーク（通信線１２）を介した通信を確立することで、プログラムの書換を行う。詳しくは、リプログ装置１１ａは、リプログ開始操作がなされてから例えば通信サイクルＣ２の２倍の期間が経過した後、通信開始信号を通信線１２に送信するとともに、この通信開始信号を送信した通信サイクルの次の通信サイクル以降、スタートアップフレームを周期的に送信する。他のノード（リプログ対象ＥＣＵ１０ａ及びリプログ対象外ＥＣＵ１０ｂ並びにリプログ不可ＥＣＵ１０ｃ）は、こうしたスタートアップフレームを受信して、その周期的なタイミングに同期することで通信が確立されることになる。なお、リプログ装置１１ａによって送信される通信開始信号とスタートアップフレームとの送信間隔は、通信サイクルＣ２の１サイクル時間未満であり、スタートアップフレームの周期的な送信とは、通信サイクルＣ２の１サイクル時間による周期的な送信である。
【０１１２】
ここで例えば、上記スタートアップフレームがリプログ装置１１ａのアクティブ出力によって破壊されると、他のノードは同期することができず、通信を確立することができなくなってしまう。そのため、通信開始信号の送信後、最初のスタートアップフレームを送信する前に、通信線１２はアイドル状態に戻される必要がある。このタイミングが、アイドル状態に戻す必須のタイミングである。
【０１１３】
ちなみに、通信開始信号とリプログ装置１１ａのアクティブ出力が重なっても通信確立に影響を及ぼさない。通信開始信号は、実態は、アクティブ出力と同じ意味であり、他のノードはアクティブ状態が継続していると認識するに過ぎない。他のノードは、通信開始信号によるアクティブ状態であるか、リプログ装置１１ａによるアクティブ状態であるかによらず、そのアクティブ状態が解除、すなわちアイドル状態になってから各々の通信サイクルの２倍の期間が経過した後、そのノードが通信開始信号を送信することができるようになる。したがって、リプログ装置１１ａによるアクティブ状態が継続するほど、他のノードの通信開始信号の送信は遅延されることになる。
【０１１４】
以上のように構成されたリプログ装置１１ａを用いるリプログの実行手順を図９に一覧にて示す。図９に示すように、リプログ装置１１ａの未接続時において（図１（ａ）参照）、リプログ装置１１ａのユーザは、まず、手順１として、イグニッションスイッチをオン操作する。このとき、車載ネットワーク（通信線１２）に接続された全てのＥＣＵ１０は、通常時の通信スケジュール（図２（ａ）参照）にて通信の確立準備を開始し、やがて通信が確立される。
【０１１５】
通常時の通信スケジュールにて通信が確立されると、次に、リプログ装置１１ａのユーザは、手順２として、当該リプログ装置１１ａを接続して、リプログ準備要求を送信するとともに、リプログ対象ＥＣＵの情報（リプログ対象ＥＣＵ情報）も送信する。このとき、車載ネットワーク（通信線１２）に接続されたＥＣＵ１０のうち、リプログ可能ＥＣＵは、リプログ準備要求を受信し記憶保持部に各々記憶保持する。さらに、リプログ可能ＥＣＵは、リプログ対象ＥＣＵ情報も取得し記憶保持部に各々記憶保持する。
【０１１６】
リプログ準備要求及びリプログ対象ＥＣＵ情報が送信されると、次に、リプログ装置１１ａのユーザは、手順３として、イグニッションスイッチをオフ操作し、再度オン操作する（所定操作）。このイグニッションスイッチのオン操作時に、リプログ装置１１ａは、バスドライバＢＤ２を通じて通信線１２をアクティブ状態とするとともに、アナログスイッチ１１４をオフとしてバスドライバＢＤ１のＲｘＤラインをオープンとする。そして、再度のイグニッションスイッチのオン操作時に、リプログ対象ＥＣＵ１０ａは、事前に受信した情報に基づいて、リプログ時の通信スケジュール（図２（ｂ）参照）にて通信の確立準備を開始しようとする。しなしながら、通信線１２がアクティブ状態であるため、リプログ対象ＥＣＵ１０ａは待ち状態となる（通信制御部の特性）。また、リプログ対象外ＥＣＵ１０ｂ及びリプログ不可ＥＣＵ１０ｃは、事前に受信した情報に基づいて、通常時の通信スケジュール（図２（ａ）参照）にて通信の確立準備を開始しようとする。しかしながら、通信線１２がアクティブ状態であるため、リプログ対象外ＥＣＵ１０ｂ及びリプログ不可ＥＣＵ１０ｃは待ち状態となる（通信制御部の特性）。
【０１１７】
次に、リプログ装置１１ａのユーザは、手順４として、当該リプログ装置１１ａに対しリプログ開始操作をする。リプログ装置１１ａは、バスドライバＢＤ２の通信線１２をアイドル状態とするとともに、アナログスイッチ１１４をオンとしてバスドライバＢＤ１のＲｘＤラインをショートする。その後、リプログ装置１１ａは、通信開始の信号を通信線１２に出力する。
【０１１８】
このとき、リプログ装置１１ａは、リプログ時の通信スケジュールにて最初に通信を確立し、同一の通信スケジュールを持つリプログ対象ＥＣＵ１０ａのみが通信を確立（通信に参加）できる。一方、リプログ対象外ＥＣＵ１０ｂ及びリプログ不可ＥＣＵ１０ｃは、通常時の通信スケジュールにて通信を確立（通信に参加）しようとするが、通信スケジュールが異なるため、通信を確立（通信に参加）することはできない。こうして、リプログ装置１１ａとリプログ対象ＥＣＵ１０ａとの間でのみ通信が確立され、リプログ装置１１ａは、リプログ対象ＥＣＵ１０ａへ制御プログラムデータを送信開始し、リプログ対象ＥＣＵ１０ａのプログラムデータが書き換えられる（リプログが実行される）ことになる。
【０１１９】
リプログが実行されると、リプログ装置１１ａのユーザは、手順５として、イグニッションスイッチをオフ操作し、再度オン操作する。このとき、車載ネットワーク（通信線１２）に接続された全てのＥＣＵ１０は、通常時の通信スケジュールにて通信の確立準備を開始する。やがて、車載ネットワークを介した通信が確立することになる。
【０１２０】
図１０は、リプログ装置１１ａによって実行される起動時処理の処理手順を示すフローチャートである。
【０１２１】
リプログ装置１１ａは、例えばイグニッションスイッチがオン操作されると、図１０に示す起動時処理を実行する。詳しくは、図１０に示されるように、起動時処理を開始すると、リプログ装置１１ａは、まず、ステップＳ２１１の判断処理として、記憶保持部１１２に記憶保持したリプログ準備要求フラグがセットされているか否かを判断する。ここで、リプログ準備要求フラグがセットされていると判断するとき（ステップＳ２１１の判断処理において「Ｙｅｓ」）、リプログ装置１１ａは、続くステップＳ２１２の処理として、リプログ準備要求フラグをリセットするとともに、続くステップＳ２１３の処理として、バスドライバＢＤ２を通じて通信線１２をアクティブ状態にするとともに、アナログスイッチ１１４をオンとしてバスドライバＢＤ１のＲｘＤラインをオープンとする。
【０１２２】
このようにして、リプログ装置１１ａは、イグニッションスイッチがオン操作されるとき、前回イグニッションスイッチのオン中にリプログ準備要求を送信していた場合には、リプログ準備要求の送信の記憶を削除するとともに、バスドライバＢＤ２を通じて通信線１２をアクティブ状態とし、バスドライバＢＤ１のＲｘＤラインをオープンとする（Ｓ２１１→Ｓ２１２→Ｓ２１３）。
【０１２３】
これにより、リプログ対象ＥＣＵ１０ａは、リプログ時の通信スケジュールにて通信の確立準備を開始しようとする。しかしながら、通信線１２がアクティブ状態であるため、リプログ対象ＥＣＵ１０ａは待ち状態となる（通信制御部の特性）。また、リプログ対象外ＥＣＵ１０ｂ及びリプログ不可ＥＣＵ１０ｃは、通常時の通信スケジュールにて通信の確立準備を開始しようとする。しかしながら、通信線１２がアクティブ状態であるため、リプログ対象外ＥＣＵ１０ｂ及びリプログ不可ＥＣＵ１０ｃは待ち状態となる（通信制御部の特性）。
【０１２４】
そしてリプログ装置１１ａは、続くステップＳ２１４の判断処理を通じて、リプログ開始操作がなされるまで待機する。リプログ開始操作がなされると（ステップＳ２１４の判断処理において「Ｙｅｓ」）、リプログ装置１１ａは、続くステップＳ２１５の処理として、リプログ時の通信スケジュールにて通信の確立準備を開始する。
【０１２５】
ところで、通信の確立準備が開始されても即座に通信が確立されるわけではなく、例えば通信サイクルＣ２の２倍の期間が経過した後、リプログ装置１１ａが通信開始信号を通信線１２に送信することで通信が確立される。なお、通信を確立するには、通信開始信号の送信後、次の最初のスタートアップフレームを送信する前に通信線１２がアイドル状態に戻されていればよいことは既述の通りである。しかしながら、本実施の形態では、リプログ装置１１ａから通信開始信号が送信される前に通信線１２をアイドル状態としている。また、リプログ装置１１ａが間違ってアクティブ状態を認識しないようにするべく、通信線１２をアイドル状態に戻すタイミングを、ＲｘＤラインをショート状態に戻すタイミングよりも前としている。ちなみに、通信線１２をアクティブ状態からアイドル状態に戻すタイミングは、スタートアップフレームが送信されるタイミングよりも前であっても、あるいは、通信開始信号が送信されるタイミングよりも前であってもよい。
【０１２６】
リプログ装置１１ａは、続くステップＳ２１６の処理として、適宜の計時手段（図示略）にて計時を開始し、続くステップＳ２１７の判断処理を通じて、リプログ開始操作がなされた時点を基準として期間Ｔａが経過するまで待機する。ここで、期間Ｔａが経過したと判断するとき（ステップＳ２１７の判断処理において「Ｙｅｓ」）、リプログ装置１１ａは、続くステップＳ２１８の処理として、バスドライバＢＤ２を通じて通信線１２をアイドル状態とする。これにより、リプログ装置１１ａが通信開始信号を送信する前に通信線１２をアイドル状態とすることができるようになる。
【０１２７】
さらに、リプログ装置１１ａは、続くステップＳ２１９の判断処理として、リプログ開始操作がなされた時点を基準として期間Ｔｂが経過するまで待機する。ここで、期間Ｔｂが経過したと判断するとき（ステップＳ２１９の判断処理において「Ｙｅｓ」）、リプログ装置１１ａは、続くステップＳ２２０の処理として、アナログスイッチ１１４をバスドライバＢＤ１のＲｘＤラインをショートにする。これにより、リプログ装置１１ａは通信線１２の状態を検出することができるようになる。
【０１２８】
なお、本実施の形態では、上記期間Ｔａとして、通信サイクルＣ２の２倍の期間から所定期間αだけ短縮した期間を設定しており、上記期間Ｔｂとして、通信サイクルＣ１の２倍の期間から所定期間βだけ短縮した期間に設定している（ここで、所定期間α＞所定期間β）。期間Ｔａ及びＴｂをこのように設定することで、通信線１２をアクティブ状態とする期間を明確にすることができるようになる。
【０１２９】
一方、先のステップＳ２１１の判断処理において、リプログ準備要求フラグがセットされていないと判断するとき（ステップＳ２１１の判断処理において「Ｎｏ」）、リプログ装置１１ａは、続くステップＳ２２１の処理として、通常の通信スケジュールにて通信の確立準備を開始する。このようにして、リプログ装置１１ａは、イグニッションスイッチがオン操作されるとき、前回イグニッションスイッチがオン中にリプログ準備要求を送信していなかった場合には、通常時の通信スケジュールにて通信の確立準備を開始する（Ｓ２１１→Ｓ２２１）。
【０１３０】
リプログ可能ＥＣＵは、例えばイグニッションスイッチがオン操作されると、図１１（ａ）に示す起動時処理を実行する。詳しくは、図１１（ａ）に示されるように、リプログ可能ＥＣＵは、起動時処理を開始すると、まず、ステップＳ２３１の判断処理として、記憶保持部１０２ａに記憶保持したリプログ準備要求フラグがセットされているか否かを判断する。ここで、リプログ準備要求フラグがセットされていると判断するとき（ステップＳ２３１の判断処理において「Ｙｅｓ」）、リプログ可能ＥＣＵは、続くステップＳ２３２の処理として、当該リプログ可能ＥＣＵがリプログ対象とされているか否かを判断する。
【０１３１】
当該リプログ可能ＥＣＵがリプログ対象ＥＣＵ１０ａであると判断するとき（ステップＳ２３２の判断処理において「Ｙｅｓ」）、リプログ対象ＥＣＵ１０ａは、続くステップＳ２３３の処理として、リプログ準備要求フラグをリセットするとともに、続くステップＳ２３４の処理として、リプログ時の通信スケジュールにて通信の確立準備を開始する。このようにして、イグニッションスイッチがオン操作されたときに、前回のイグニッションスイッチがオンとされている間にリプログ準備要求を受信するとともに当該リプログ可能ＥＣＵがリプログ対象ＥＣＵであると判断した場合には、リプログ時の通信スケジュールにて通信の確立準備を開始する（ステップＳ２３１→Ｓ２３２→Ｓ２３３→Ｓ２３４）。
【０１３２】
一方、当該リプログ可能ＥＣＵがリプログ対象外ＥＣＵ１０ｂであると判断するとき（ステップＳ２３２の判断処理において「Ｎｏ」）、リプログ対象外ＥＣＵ１０ｂは、続くステップＳ２３５の処理として、リプログ準備要求フラグをリセットするとともに、続くステップＳ２３６の処理として、通常時の通信スケジュールにて通信の確立準備を開始する。このようにして、イグニッションスイッチがオン操作されたときに、前回のイグニッションスイッチがオンとされている間にリプログ準備要求を受信するとともに当該リプログ可能ＥＣＵがリプログ対象外ＥＣＵであると判断した場合には、通常時の通信スケジュールにて通信の確立準備を開始する（ステップＳ２３１→Ｓ２３２→Ｓ２３５→Ｓ２３６）。
【０１３３】
他方、リプログ準備要求フラグがセットされていないと判断するとき（ステップＳ２３１の判断処理において「Ｎｏ」）、リプログ可能ＥＣＵは、続くステップＳ２３６の処理として、通常時の通信スケジュールにて通信の確立準備を開始する。このようにして、イグニッションスイッチがオン操作されたときに、前回のイグニッションスイッチがオンとされている間にリプログ準備要求を受信していないと判断した場合には、通常時の通信スケジュールにて通信の確立準備を開始する（ステップＳ２３１→Ｓ２３６）。
【０１３４】
また、例えばイグニッションスイッチがオン操作されると、リプログ不可ＥＣＵ１０ｃは、図１１（ｂ）に示す起動時処理を実行する。詳しくは、図１１（ｂ）に示されるように、リプログ不可ＥＣＵ１０ｃは、続くステップＳ２４１の処理として、通常時の通信スケジュールにて通信の確立準備を開始する。このように、イグニッションスイッチがオン操作されたときに、通常時の通信スケジュールにて通信の確立準備を開始する（ステップＳ２４１）。
【０１３５】
図１２（ａ）は、リプログ装置１１ａの動作例を示すタイミングチャートである。また、図１２（ｂ）は、通信線１２の状態例を示すタイミングチャートであり、図１２（ｃ）は、ＲｘＤラインの状態例を示すタイミングチャートである。さらに、図１２（ｄ）は、リプログ対象外ＥＣＵ１０ｂの動作例を示すタイミングチャートである。これら図１２（ａ）〜（ｄ）を参照しつつ、本実施の形態の動作について総括する。なお、リプログ装置１１ａは、前回イグニッションスイッチのオン中にリプログ準備要求を送信していたものとする。
【０１３６】
図１２（ｂ）及び（ｃ）にそれぞれ示されるように、例えば時刻ｔ１において、イグニッションスイッチがオン操作されると、リプログ装置１１ａは、バスドライバＢＤ２を通じて通信線１２をアクティブ状態とするとともに、バスドライバＢＤ１のＲｘＤラインをオープンとする。これにより、図１２（ｂ）に示されるように通信線１２がアクティブ状態であるため、リプログ対象ＥＣＵ１０ａは、リプログ時の通信スケジュールにて通信の確立準備を開始しようとするものの待ち状態となる。同様に、リプログ対象外ＥＣＵ１０ｂ及びリプログ不可ＥＣＵ１０ｃも、通常時の通信スケジュールにて通信の確立準備を開始しようとするものの待ち状態となる。
【０１３７】
図１２（ａ）に示されるように、例えば時刻ｔ２において、リプログ装置１１ａに対しリプログ開始操作が行われると、リプログ装置１１ａは通信線１２がアイドル状態のままであると誤認識しているため、リプログ時の通信スケジュールにて通信の確立準備を開始可能である。そして、リプログ装置１１ａは、時刻ｔ２を基準として通信サイクルＣ２の２倍の期間が経過した例えば時刻ｔ４（第２開始時期）に通信開始信号を通信線１２に送信することで、リプログ時の通信スケジュールにて通信の確立準備を開始し、その後、スタートアップフレーム（図示略）を送信することで、リプログ時の通信スケジュールにて通信を確立する。
【０１３８】
図１２（ｂ）に示すように、リプログ装置１１ａは、リプログ開始操作が行われた時刻ｔ２を基準として期間Ｔａが経過した例えば時刻ｔ３に、バスドライバＢＤ２を通じて通信線１２をアイドル状態とする。なお、期間Ｔａは、通信サイクルＣ２の２倍よりも短い時間に設定されている。そのため、リプログ装置１１ａは、プログラム書換開始指示を受けた時刻２以降、通信の確立準備を開始する時刻ｔ４（第２開始時期）よりも前に、通信線１２をアクティブ状態からアイドル状態へ切り換えることになる。
【０１３９】
また、図１２（ｃ）に示すように、リプログ装置１１ａは、リプログ開始操作が行われた時刻ｔ２を基準として期間Ｔｂが経過した時刻に、バスドライバＢＤ１のＲｘＤラインをショートとする。なお、この期間Ｔｂは、上記期間Ｔａよりも長く、通信サイクルＣ２の２倍よりも短い時間に設定されている。これにより、リプログ装置１１ａは、通信線１２の状態を誤認識させられることがなくなり、通信線１２の状態を検出することができるようになる。すなわち、リプログ装置１１ａは、通信線１２をアクティブ状態から実際にアイドル状態とした時刻ｔ３以降時刻ｔ４（第２開始時期）までに、通信線１２がアイドル状態であるとの誤認識を終了させることになる。
【０１４０】
また、リプログ対象外ＥＣＵ１０ｂは次のように動作する。すなわち、リプログ装置１１ａが送信した通信開始信号の送信完了後に通信線１２はアイドル状態になるので、アイドル状態になった時刻から起算した通信サイクルＣ１の２倍の期間経過後に通信開始信号を送信しようとする。しかし、実際には、その手前でリプログ装置１１ａが送信するスタートアップフレームを受信する。リプログ装置１１ａから周期的に送信されるスタートアップフレームをリプログ対象外ＥＣＵ１０ｂが受信して、リプログ装置１１ａに同期して通信開始することを試みるが、通信スケジュールが異なるため通信を開始することができない。また、通信線１２のアイドル状態が通信サイクルＣ１の２倍の期間発生することはないため、もはや自ら通信開始信号を送信することはない。
【０１４１】
また、リプログ対象ＥＣＵ１０ａは次のように動作する。すなわち、リプログ装置１１ａが送信した通信開始信号の送信完了後に通信線１２がアイドル状態になるので、アイドル状態になった時刻から起算した通信サイクルＣ２の２倍の期間経過後に通信開始信号を送信しようとする。しかし、実際には、その手前でリプログ装置１１ａが送信するスタートアップフレームを受信する。リプログ装置１１ａから周期的に送信されるスタートアップフレームをリプログ対象ＥＣＵ１０ａが受信して、リプログ装置１１ａに同期して通信開始することを試み、通信スケジュールが同じであるため通信を開始することができる。なお、この場合、リプログ対象ＥＣＵ１０ａは通信開始信号を送信する必要はもはやなく、スタートアップフレームを受信することによって通信開始することができる。
【０１４２】
なお、図１２（ｂ）においては図示を割愛しており、図１２（ｄ）においては割愛した図に基づきリプログ対象外ＥＣＵ１０ｂのタイミングチャートを図示しているが、通信線１２は、実際には、時刻ｔ３に一旦アイドル状態になった後、リプログ装置１１ａから通信開始信号が送信開始される時刻ｔ４から送信完了する時刻まで、通信開始信号が送信されることに起因して再びアクティブ状態となる。そのため、この間、リプログ対象外ＥＣＵ１０ｂ及びリプログ対象ＥＣＵ１０ａは、実際には、再び通信開始待ち状態となっている。したがって、実際には、リプログ対象外ＥＣＵ１０ｂが通信開始信号を送信しようとする時刻ｔ５は図示されたタイミングよりもより遅延することとなる。ちなみに、リプログ対象外ＥＣＵ１０ｂは通信開始信号を送信しないため、図１２（ｄ）において破線にて示している。
【０１４３】
このようにして、リプログ対象外ＥＣＵ１０ｂ及びリプログ不可ＥＣＵ１０ｃが通常の通信スケジュールにて通信の確立準備を開始しようとする時期である第１開始時期ｔ５は、リプログ装置１１ａがリプログ時の通信スケジュールにて通信の確立準備を開始する時期である第２開始時期ｔ４より遅れることになり、ひいては、リプログ装置１１ａの通信開始信号が必ず最初に通信線１２に送信させることになる。
【０１４４】
そして、リプログ装置１１ａによって、リプログ時の通信スケジュールにて最初に通信が確立されることになるため、この確立された通信に参加することができるのは、同一の通信スケジュールを有するリプログ対象ＥＣＵ１０ａのみであり、異なる通信スケジュールを有するリプログ対象外ＥＣＵ１０ｂやリプログ不可ＥＣＵ１０ｃは、通信に参加することはできない。したがって、リプログ装置１１ａは、リプログ対象ＥＣＵ１０ａとの間でのみ通信を確立することができるようになる。
【０１４５】
以上説明したように、上記第２の実施の形態では、リプログ対象外ＥＣＵ１０ｂ及びリプログ不可ＥＣＵ１０ｃが通常の通信スケジュールにて通信の確立準備を開始しようとする時刻ｔ５を、リプログ装置１１ａがリプログ時の通信スケジュールにて通信の確立準備を開始する時刻ｔ４よりも遅らせることとした。これにより、リプログ装置１１ａ及びリプログ対象ＥＣＵ１０ａとの間でのみ通信が確立するようになる。
【０１４６】
上記第２の実施の形態では、開始時期制御部１１３は、リプログ開始操作がされた（プログラム書換開始指示を受けた）時刻ｔ２以降、通信開始信号が送信される時刻ｔ４よりも前の、例えば時刻ｔ３に、アクティブ状態からアイドル状態へ通信線１２を切り換えることとした。これにより、通信線１２をアクティブ状態とする期間を明確にすることができるようになる。
【０１４７】
上記第２の実施の形態では、開始時期制御部１１３は、通信線１２をアクティブ状態から実際にアイドル状態とした時刻ｔ３以降、通信線１２がアイドル状態であるとの誤認を終了させることとした。これにより、リプログ装置１１ａは、通信線１２が現実にアイドル状態となったときに、その状態を正しく検出することができるようになる。換言すれば、通信線１２が現実にはアクティブ状態であることをリプログ装置１１ａが検出してしまうことを確実に防止することができるようになる。
【０１４８】
なお、本発明に係るリプログシステム及びリプログ装置は、上記実施の形態にて例示した構成に限定されるものではなく、本発明の趣旨を逸脱しない範囲において、種々に変形して実施することが可能である。すなわち、上記実施の形態を適宜変更した例えば次の形態として実施することもできる。
【０１４９】
上記第２の実施の形態では、先の図１３（ａ）及び（ｂ）に示されるように、フレームＸの大きさとフレームＹの大きさは異なるものの、通信サイクルＣ１と通信サイクルＣ２の大きさは同一としていたがこれに限らない。他に例えば、図１３（ａ）及び（ｂ）に対応する図として図１４（ａ）及び（ｂ）に示すように、通信サイクルＣ１と通信サイクルＣ２の大きさは異なるものの、フレームＸの大きさとフレームＹの大きさは同一としてもよい。これにより、リプログ対象外ＥＣＵ１０ｂ及びリプログ不可ＥＣＵ１０ｃは、フレームＹを受信することができるものの、そのフレームＹの受信間隔が通信サイクルＣ２と異なるため、通信の確立に失敗する（通信に参加することはできない）。さらに、これらを併用することとしてもよい。図示を割愛するが、フレームＸの大きさとフレームＹの大きさが異なり、且つ、通信サイクルＣ１と通信サイクルＣ２の大きさも異なることとしてもよい。これによっても、上記第２の実施の形態と同一の効果及び変形例と同一の効果を得ることができるようになる。
【０１５０】
上記第２の実施の形態では、バスドライバＢＤ１及びＢＤ２並びにアナログスイッチ１１４をそれぞれ別のデバイスで実現していたが、これに限らない。これらバスドライバＢＤ１及びＢＤ２並びにアナログスイッチ１４を１つのデバイスで実現してもよい。これにより、コストの低減を図ることができるようになる。
【０１５１】
リプログ対象ＥＣＵ１０ａにリプログ装置１１ａ自体を内蔵してもよい。リプログ装置内蔵ＥＣＵの制御プログラムをクローンＥＣＵに書き込むにあたり、これら内蔵ＥＣＵ及びクローンＥＣＵ間で、通常時とは異なる通信スケジュールにて通信を確立することができるようになる。
【図面の簡単な説明】
【０１５２】
【図１】本発明に係るリプログシステム及びリプログ装置の第１の実施の形態について、（ａ）は、リプログ装置が通信線に未接続である状態の全体構成を示すブロック図。（ｂ）は、リプログ装置が通信線に接続済である状態の全体構成を示すブロック図。
【図２】（ａ）は、リプログ装置未接続時（通常時）における通信スケジュールの一例を示す模式図であり、（ｂ）は、リプログ装置接続時（リプログ時）における通信スケジュールの一例を示す模式図。
【図３】（ａ）はリプログ装置の内部構成例を示すブロック図。（ｂ）はリプログ対象制御装置及びリプログ対象外制御装置の内部構成例を示すブロック図。（ｃ）はリプログ不可制御装置の内部構成例を示すブロック図。
【図４】第１の実施の形態を用いたリプログの実行手順を一覧にて示す図。
【図５】第１の実施の形態を構成するリプログ装置によって実行される処理について、（ａ）は通信中処理の処理手順を示すフローチャート。（ｂ）は起動時処理の処理手順を示すフローチャート。
【図６】第１の実施の形態を構成するリプログ可能ＥＣＵによって実行される処理について、（ａ）は通信中処理の処理手順を示すフローチャート。（ｂ）は起動時処理の処理手順を示すフローチャート。
【図７】第１の実施の形態を構成するリプログ不可ＥＣＵによって実行される処理について、（ａ）は通信中処理の処理手順を示すフローチャート。（ｂ）は起動時処理の処理手順を示すフローチャート。
【図８】本発明に係るリプログシステム及びリプログ装置の第２の実施の形態について、（ａ）はリプログ装置の内部構成例を示すブロック図。（ｂ）はリプログ対象制御装置及びリプログ対象外制御装置の内部構成例を示すブロック図。（ｃ）はリプログ不可制御装置の内部構成例を示すブロック図。
【図９】第２の実施の形態を用いたリプログの実行手順を一覧にて示す図。
【図１０】リプログ装置によって実行される起動時処理の処理手順を示すフローチャート。
【図１１】（ａ）はリプログ可能ＥＣＵによって実行される起動時処理の処理手順を示すフローチャート。（ｂ）はリプログ不可ＥＣＵによって実行される起動時処理の処理手順を示すフローチャート。
【図１２】（ａ）はリプログ装置の動作例を示すタイミングチャート。（ｂ）は通信線の状態例を示すタイミングチャート。（ｃ）はＲｘＤラインの状態例を示すタイミングチャート。（ｄ）はリプログ対象外ＥＣＵの動作例を示すタイミングチャート。
【図１３】第２の実施の形態で採用される通信スケジュールについて、（ａ）は通常時の通信スケジュールの一例を示す模式図。（ｂ）はリプログ時の通信スケジュールの一例を示す模式図。
【図１４】第２の実施の形態の変形例で採用される通信スケジュールについて、（ａ）は通常時の通信スケジュールの一例を示す模式図。（ｂ）はリプログ時の通信スケジュールの一例を示す模式図。
【符号の説明】
【０１５３】
１…リプログシステム（プログラム書換システム）、１０…電子制御装置、１０ａ…リプログ対象ＥＣＵ（プログラム書換対象制御装置）、１０ｂ…リプログ対象外ＥＣＵ（プログラム書換対象外制御装置）、１０ｃ…リプログ不可ＥＣＵ（プログラム書換不可制御装置）、１１、１１ａ…リプログ装置（プログラム書換装置）、１２…通信線（車載ネットワーク）、１１０…リプログ開始指示部（プログラム書換開始指示手段）、１０１ａ、１０１ｃ、１１１、１１１ａ…通信制御部（通信コントローラ）、１０２、１０２ａ、１１２…記憶保持部、１１３…開始時期制御部、１１４…アナログスイッチ。
【図１】
0005141377.tif 000002
【図２】
0005141377.tif 000003
【図３】
0005141377.tif 000004
【図４】
0005141377.tif 000005
【図５】
0005141377.tif 000006
【図６】
0005141377.tif 000007
【図７】
0005141377.tif 000008
【図８】
0005141377.tif 000009
【図９】
0005141377.tif 000010
【図１０】
0005141377.tif 000011
【図１１】
0005141377.tif 000012
【図１２】
0005141377.tif 000013
【図１３】
0005141377.tif 000014
【図１４】
0005141377.tif 000015