(57)【要約】【課題】  複数のＥＣＵにＣＡＮリプログラミングを行う場合に、ゲートウェイなどの仲介装置を介さずに並行でプログラムを書き換えることで、プログラムの書き換え時間を短縮するようにした書き換え方法を提供する。【解決手段】  プログラム書き換えシステム１０００は、書き換え装置１００と１つ以上の書き換え対象ＥＣＵ２００a、２００ｂ、２００ｃとが同一のネットワークバス３００で接続された構成を持ち、書き換え装置１００は予め定められた特定のＩＤを使用して書き換え対象ＥＣＵ全てに対して同時にデータを送信し、書き換え対象ＥＣＵは個体識別データを使用してそれぞれ異なったＩＤを生成し、そのＩＤで書き換え装置にデータを送信する。【選択図】図１
2014194688.tif 000002
【特許請求の範囲】
【請求項１】
書き換え可能な記憶媒体と、通信ネットワークを介して外部と通信するための通信手段を持つ車両用の電子制御装置に関して、
前記電子制御装置は、前記通信ネットワークに書き換え装置を接続し、前記通信手段を介して前記電子制御装置の記憶媒体のプログラムを書き換え可能に構成したプログラムを有し、
前記電子制御装置を複数個同一の通信ネットワークに接続し、
前記書き換え装置から、前記通信ネットワークに接続されている複数の電子制御装置に対して単一の識別子で同時にデータの送信を行い、
前記複数の電子制御装置はそれぞれ異なった識別子で前記書き換え装置に対して応答データを送信することで、
前記複数の同一電子制御装置に対して並列で同一プログラムの書き換え動作を実行する電子制御装置のプログラム書き換え方法。
【請求項２】
前記通信ネットワークはＣＡＮプロトコルによるバスであり、前記電子制御装置が応答に使用する識別子は、電子制御装置が個体識別するために不揮発性メモリに保持している個体識別データから生成することを特徴とする請求項1記載の電子制御装置。
【請求項３】
前記個体識別データは、前記電子制御装置の不揮発性メモリのプログラム書き換えにより書き換わらない領域に保存することを特徴とする請求項１又は２に記載の電子制御装置。
【請求項４】
前記個体識別データは、製造工場、製造ライン、製造番号、製造日のいずれかの情報を有していることを特徴とする請求項１から３のいずれか記載の電子制御装置。
【請求項５】
前記個体識別データは、電子制御装置の筐体外部に機械的読み取り手段に対応した形式で印字されていることを特徴とする請求項１から４のいずれか記載の電子制御装置。
【請求項６】
前記電子制御装置は、車両搭載時に一定の間隔で通信ネットワークにデータを送信する通常モードと、プログラムを書き換える場合のプログラム書き換えモードを有し、プログラム書き換えモード動作では、前記電子制御装置からの通信ネットワークへの定期的なデータ送信を停止することを特徴とする請求項１記載の電子制御装置。
【請求項７】
前記書き換え装置は、プログラム書き換え前に、書き換え対象の前記電子制御装置の筐体に印字された前記個体識別データを機械的読み取り手段で読み取ることで、前記電子制御装置から応答される識別子を特定することを特徴とする請求項１記載の書き換え装置。
【請求項８】
前記書き換え装置は、前記電子制御装置の筐体に印字された前記個体識別データから特定した識別子と、プログラム書き換え時の前記電子制御装置の応答データに使用されている識別子を照合することで、前記電子制御装置の接続ミスや通信ネットワークの問題、電子制御装置の通信回路の故障を検出することを特徴とする請求項１又は請求項７に記載の書き換え装置。
【請求項９】
請求項１において、
前記電子制御装置は、自動車に搭載されるエンジン制御装置又は変速機制御装置であって、
前記プログラム書き換えは、前記電子制御装置が前記自動車に搭載される前に行われることを特徴とする電子制御装置のプログラム書き換え方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、車両通信ネットワークに接続される電子制御装置等に関し、通信ネットワークを介して電子制御装置のプログラムを書き換える方法、書き換え機能を有する電子制御装置、書き換え装置に関する。
【背景技術】
【０００２】
近年、走行性能、安全性、快適性、省資源、省エネルギー等を追求する目的で、自動車等の車両にも多くのマイクロプロセッサを含む電子制御装置（ＥＣＵ（Electronic Control Unit）） が搭載されている。
【０００３】
車両のパワートレーン系、ボディ系、安全系、情報系等を制御するために複数のＥＣＵが搭載されており、これらＥＣＵ同士が車載ネットワークシステム（ＣＡＮプロトコル）で接続され、必要なデータのやりとりを実施し、車両全体の制御を行っている。
【０００４】
この車載ネットワークシステムを使用して、ＥＣＵのプログラム書き換えを行うＣＡＮリプログラミングが公知である。
【０００５】
特許文献１では、プログラム書き換え装置から取得された制御プログラムを、一旦ゲートウェイのＲＡＭに蓄積し、その後ゲートウェイから各ＥＣＵをＣＡＮリプログラミングすることで、プログラムデータがゲートウェイのＲＡＭに蓄積された後であれば、書き換え装置の接続状態を維持しなくても、ＥＣＵそれぞれに制御プログラムを書き込むことができるように構成したものである。
【０００６】
特許文献２では、複数の異なるＣＡＮバスを介して接続された複数のＥＣＵにプログラムを書き換えるための書き換えデータを送信するゲートウェイにおいて、それぞれの異なるバスに接続されたＥＣＵの書き換えデータの送信を並行して行うように構成したものである。
【先行技術文献】
【特許文献】
【０００７】
【特許文献１】特開２００５−７８３２４
【特許文献２】特開２０１０−２７１８９１
【発明の概要】
【発明が解決しようとする課題】
【０００８】
しかし、上述のプログラム書き換え方法は、書き換え装置から一旦ゲートウェイに高速通信を使用して書き換えデータを送信し、次にゲートウェイからそれぞれのＥＣＵにＣＡＮ通信を介して書き換えデータを送信し、ゲートウェイとＥＣＵの間でＣＡＮリプログラミングを行う構成である。そのため、書き換え装置と書き換え対象ＥＣＵの間にゲートウェイ装置が必要不可欠であり、ゲートウェイ分の部品コスト、製造コストが増加するという問題があった。
【０００９】
また、書き換え装置からゲートウェイを介し、書き換えデータをＥＣＵに送信するため、書き換えシステム全体の構成が複雑になり、システムの故障率が上がってしまうといった問題もある。
【００１０】
一方、ゲートウェイを使用せずに、複数のＥＣＵを並行でＣＡＮリプログラミングするには、書き換え装置を複数用意する必要があった。例えば１０台のＥＣＵを並行でＣＡＮリプログラミングする場合には、１０台の書き換え装置が必要になり、これもコストが増加する要因となる。
【００１１】
本発明は、上記課題を解決するためになされたものであり、その目的は、複数のＥＣＵにＣＡＮリプログラミングを行う場合に、ゲートウェイなどの仲介装置を介さずに並行でプログラムを書き換えることで、プログラムの書き換え時間を短縮するようにした書き換え方法を提供することである。
【課題を解決するための手段】
【００１２】
上述した目的を達成するために、請求項１に係る車両用プログラム書き換え方法は、書き換え可能な記憶媒体と、通信ネットワークを介して外部と通信するための通信手段を持つ車両用の電子制御装置に関して、前記電子制御装置は、前記通信ネットワークに書き換え装置を接続し、前記通信手段を介して前記電子制御装置の記憶媒体のプログラムを書き換え可能に構成したプログラムを有し、前記電子制御装置を複数個同一の通信ネットワークに接続し、前記書き換え装置から、前記通信ネットワークに接続されている複数の電子制御装置に対して単一の識別子で同時にデータの送信を行い、前記複数の電子制御装置はそれぞれ異なった識別子で前記書き換え装置に対して応答データを送信することで、前記複数の同一電子制御装置に対して並列で同一プログラムの書き換え動作を実行することができるように構成している。
【００１３】
これにより、書き換え装置からのデータ送信を複数の電子制御装置に同時に送信するとともに、複数の電子制御装置の応答それぞれを書込み装置が識別することが可能となり、複数の電子制御装置に対して並列でプログラムの書き換え動作が実施できるようになる。
【００１４】
請求項２に係る電子制御装置が書き換え装置との通信で使用する通信ネットワークは、ＣＡＮプロトコルによるバスであり、前記電子制御装置が応答に使用する識別子は、電子制御装置が個体識別するために不揮発性メモリに保持している個体識別データから生成することを特徴とする。
【００１５】
これにより、電子制御装置自身の制御プログラムを変更することなく、個体識別データの設定を変更するのみで、複数の同一電子制御装置それぞれについて、重複しない識別子を割り当てることが可能となる。
【００１６】
請求項３に係る電子制御装置が使用する個体識別データは、前記電子制御装置の不揮発性メモリのプログラム書き換えにより書き換わらない領域に保存することを特徴とする。
【００１７】
これにより、プログラム書き換えを複数回実施する場合でも、同一の電子制御装置であれば、同一の個体識別データを使用することが可能となる。
【００１８】
請求項４に係る電子制御装置が使用する個体識別データは、製造工場、製造ライン、製造番号、製造日のいずれかの情報を有していることを特徴とする。
【００１９】
これにより、同一の電子制御装置であっても、重複しない個体識別データの設定が可能となる。
【００２０】
請求項５に係る電子制御装置が使用する個体識別データは、電子制御装置の筐体外部に機械的読み取り手段に対応した形式で印字されていることを特徴とする。
【００２１】
これにより、個体識別データを容易に取得可能となる。
【００２２】
請求項６に係る電子制御装置は、車両搭載時に一定の間隔で通信ネットワークにデータを送信する通常モードと、プログラムを書き換える場合のプログラム書き換えモードを有し、プログラム書き換えモード動作では、前記電子制御装置からの通信ネットワークへの定期的なデータ送信を停止することを特徴とする。
【００２３】
これにより、同一の識別子を複数の電子制御装置が送信することにより発生する通信ネットワークのエラー発生を防止することができ、複数の同一電子制御装置を同一の通信ネットワークに接続可能となる。
【００２４】
請求項７に係る書き換え装置は、プログラム書き換え前に、書き換え対象の前記電子制御装置の筐体に印字された前記個体識別データを機械的読み取り手段で読み取ることで、前記電子制御装置から応答される識別子を特定することを特徴とする、
これにより、プログラム書き換え前に、効率的に電子制御装置が応答する識別子を特定可能となる。
【００２５】
請求項８に係る書き換え装置は、前記電子制御装置の筐体に印字された前記個体識別データから特定した識別子と、プログラム書き換え時の前記電子制御装置の応答データに使用されている識別子を照合することで、前記電子制御装置の接続ミスや通信ネットワークの問題、電子制御装置の通信回路の故障を検出することを特徴とする。
【００２６】
これにより、複数の電子制御装置を接続した場合でも、全ての電子制御装置に対して、接続ミスや通信ネットワークの問題、電子制御装置の通信回路の故障を検出することが可能となる。
【発明の効果】
【００２７】
本発明によれば、複数のＥＣＵにＣＡＮリプログラミングを行う場合に、プログラムの書き換え時間を短縮することができる。
【図面の簡単な説明】
【００２８】
【図１】本実施形態の書き換えシステムを示した概略ブロック図。
【図２】本実施形態の書き換えシステムを示した詳細ブロック図。
【図３】本実施形態の書き換え対象ＥＣＵの書き換え処理プログラムのフローチャートを示す図。
【図４】本実施形態の書き換え対象ＥＣＵの書き換え処理プログラムのフローチャートを示す図。
【図５】本実施形態の書き換え対象ＥＣＵのプログラム書き換えモード判別方法の実施例を示した概略図。
【図６】本実施形態の書き換え対象ＥＣＵの個体識別データの構成と、個体識別データを使用して生成されたＥＣＵ送信データ構成を示した概略図。
【図７】本実施形態の書き換え装置の書き換え処理プログラムのフローチャートを示す図。
【図８】本実施形態の書き換え装置の書き換え処理プログラムのフローチャートを示す図。
【発明を実施するための形態】
【００２９】
本発明を一層明らかにするために、本発明の好適な実施形態について図面を参照しながら以下に説明する。
【００３０】
図１は本実施形態の電子制御装置のプログラム書き換え方法、書き換え機能を有する電子制御装置、及び書き換え装置（これら全体を“書き換えシステム”とする）を示した概略ブロック図である。
【００３１】
本実施形態の書き換えシステム１０００は、書き換え装置１００と、書き換え対象である電子制御装置（ＥＣＵ）２００ａ、２００ｂ、２００ｃが、通信ネットワーク（ＣＡＮ）３００、を介して接続されている。ここで各電子制御装置は、例えば、後に自動車に搭載されるエンジン制御装置や変速制御装置などであり、搭載はプログラムの書き替え後に行われる。
【００３２】
図１では、１つの書き換え装置１００に対して、３つの書き換え対象ＥＣＵを接続したシステム構成を示したが、書き換え対象ＥＣＵの数は３つに限定することなく、１つから３つ以上の複数まで対応でき、特に書き換え対象ＥＣＵ数の制限は無い。
【００３３】
図２は本実施形態の書き換えシステムの書き換え装置１００と書き換え対象のＥＣＵ２００ａに対しての詳細を示した概略ブロック図である。
【００３４】
書き換え対象ＥＣＵ２００ａは、書き換え対象ＥＣＵの制御を司るＣＰＵ２２０ａと、プログラムが格納された書き換え可能な記憶媒体であるＦｌａｓｈ  ＲＯＭ２３０ａと、通信でやり取りするデータを一時的に記憶するＲＡＭ２４０ａと、ＥＣＵで使用する各種情報を保存するためのデータ記憶部２５０ａと、ネットワークを介してデータ通信を行うための通信回路２１０ａを備える。また、外部のセンサ入力などを処理する入力部２６０ａ、外部アクチュエータを駆動するための出力部２７０ａも備える。図２では、書換え可能な記憶媒体２３０ａの一例として、Ｆｌａｓｈ  ＲＯＭを記載しているが、これはプログラムを保存する書き換え可能な記憶媒体であればどのような物でも良く、ＥＥＰＲＯＭ、ハードディスクなども適用可能である。
【００３５】
書き換え装置１００は、書き換え装置の制御を司るＣＰＵ１２０と、プログラムが格納されたＲＯＭ１３０と、通信でやり取りするデータを一時的に記憶するＲＡＭ１４０と、書き換え結果などの過去情報を保存するためのデータ記憶部１５０と、ネットワークを介してデータ通信を行うための通信回路１１０と、書き換え対象ＥＣＵに印字された外部情報を読み取るための外部情報読み取り手段１７０と、外部情報読み取り手段から受け取った信号をＣＰＵが理解可能なデジタルデータに変換する外部情報読み取り回路１６０を有する。
【００３６】
書き換え装置１００は、例えばパーソナルコンピュータなどに通信ネットワーク（ＣＡＮ）に接続する通信インターフェースと、外部情報読み取り手段であるバーコードスキャン装置などを接続し、構成することも可能である。
【００３７】
次に図３、図４を用い、書き換え対象ＥＣＵ２００ａの書き換え動作を説明する。ＣＰＵ２２０ａは、Ｆｌａｓｈ  ＲＯＭ２３０ａに記憶されているプログラムを読み出し、それをＲＡＭ２４０ａに展開して実行する。ＲＡＭ２４０ａに展開してからプログラムを実行することで、プログラムが記憶されているＦｌａｓｈ  ＲＯＭ２３０ａを書き換えることが可能になる。このプログラムが実行されると、ＣＰＵ２２０ａはステップＳ１００でプログラム書き換えモードか通常モードかを判断する。（このプログラム書き換えモードか否かの判断方法については、複数の判断方法があり、図５にて実施例１、２として後述する。）
【００３８】
ステップＳ１００で通常モードと判断された場合には車両搭載状態と判断し、ステップＳ１０５に遷移し、通信ネットワークへの定期データ送信を開始した後、図４のエンド処理に遷移し処理を終了する。一方、プログラム書き換えモードと判断された場合には、ステップＳ１１０に遷移し、通信ネットワークへの定期データ送信を停止し、プログラム書き換えモードへ遷移する。
【００３９】
ステップＳ１２０では、通信ネットワークへの定期データ送信を停止した状態のまま、書き換え装置１００からの書き換え開始要求データの受信を待つ。書き換え装置１００から書き換え開始データを受信すると、ステップＳ１３０に遷移し、ＥＣＵの不揮発性メモリ（プログラム書き換えにより書き換わらないＦｌａｓｈ  ＲＯＭ２３０ａ、あるいは、データ記憶部２５０ａの領域）に記憶している個体識別データを使用してＣＡＮ識別子（ＣＡＮ  ＩＤ）を生成する。この個体識別データの詳細については、図６の説明として後述する。
【００４０】
なお、この個体識別データはプログラム書き換えにより書き換わらないＥＣＵ２００ａの不揮発性メモリの特定領域（Ｆｌａｓｈ  ＲＯＭ２３０ａ、あるいは、データ記憶部２５０ａ）に保存すると共に、ＥＣＵ２００ａの筐体外部に何かしらの形で印字される。これは、書き換え装置１００が機械的に読み取れる形式であれば何でも良く、例えばバーコード（１次元、２次元）の形式でも良いし、ＩＣタグの形式でも良い。
【００４１】
次に、図３のステップＳ１４０にて、生成したＣＡＮ  ＩＤを使用して書き換え装置１００に応答データを送信する。ここまでの処理が書き換えデータを受信するまでの前処理である。なお、次のステップＳ１５０以降の処理でＥＣＵが応答データに使用するＣＡＮ  ＩＤは、全てこのステップＳ１３０で生成したＣＡＮ  ＩＤを使用する。
【００４２】
その後、ステップＳ１５０の判定処理で、全領域の書き込みが完了したか否か、又は、書き込みが失敗したか否か、を判断する。初回の場合には、まだ書き込みを実施していないため、次のステップＳ１６０に遷移する。
【００４３】
ステップＳ１６０では、書き換えデータを受信するまで待機する。書き換え装置１００から書き換えデータを受信すると、ステップＳ１７０に遷移し、受信したデータをＦｌａｓｈ  ＲＯＭ２３０ａに書き込み、続くステップＳ１８０にて、書き換えデータ受信に対する応答データを送信する。その後、再度ステップＳ１５０に戻り、全領域について書き込み実施するまで処理を繰り返す。
【００４４】
ステップＳ１５０の判定処理で、全領域書き込み終了、又は、書き込み失敗と判断された場合、図４のステップＳ１９０に遷移する。
【００４５】
ステップＳ１９０では、全領域の書き込みチェック要求を受信するまで待機する。書き換え装置１００から書き込みチェック要求を受信すると、ステップＳ２００で正常に全領域に書き込みが実施されたかを確認し、正常に全領域に書き込みが実施された場合には、ステップＳ２１０で書き換えＯＫの応答データを送信し、ステップＳ２００で正常に全領域に書き込みが実施できなかった場合には、ステップＳ２０５で書き換えＮＧの応答データを送信し、書き換え処理を完了する。
【００４６】
次に図５を使用してプログラム書き換えモードか通常モードかの判別方法の実施例を示す。
【００４７】
（実施例１）
図５の（Ｆｌａｓｈ  ＲＯＭに保存する場合）（データ記憶部に保存する場合）は、プログラム書き換えモードか否かの判別フラグをＦｌａｓｈ  ＲＯＭ２３０ａかデータ記憶部２５０ａに保存し、それを読み出して判別する方法である。この方法の場合、例えば、ＥＣＵ製造時にこの判別フラグを読み出してプログラム書き換えモードの設定に使用とすることで、書き換え対象ＥＣＵは常にプログラム書き換えモードで動作するようになる。ＥＣＵがこの状態であれば、書き換えに使用する最低限の端子（電源端子、通信ネットワーク端子、ＧＮＤ端子など）のみを接続すればプログラム書き換えが実施できる状態となるため、プログラム書き換え時のＥＣＵ端子接続状態を簡略化することができる。
【００４８】
（実施例２）
図５の（入力センサ値が車両搭載状態ではありえない組み合わせで判断する場合）（入力センサ端子にセンサが接続されていない状態で判断する場合）は、ＥＣＵに備わっている入力端子の状態でプログラム書き換えモードか否かを判別する方法である。この方法は入力部２６０ａで入力するセンサの状態が車両搭載状態ではありえない状態（例えば、トランスミッションをコントロールするＥＣＵの場合、入力レンジＳＷの状態が通常取りえない組み合わせとなっている状態など）の場合プログラム書き換えモードと判別する方法である。この方法の場合、書き換え対象ＥＣＵの端子状態のみでプログラム書き換えモード動作にするか、通常動作にするかを選択可能なため、不揮発性メモリに不要なデータを用意する必要がない。
【００４９】
なお、本方法では入力端子の状態がオープン（センサが接続されていない状態）をプログラム書き換えモード動作にする判断条件に設定しても良い。この方法だと、ＥＣＵが車両搭載の状態ではセンサが接続される状態となるため通常動作モードで動作し、プログラム書き換え時にはセンサ入力を全てオープン状態とすることで、プログラム書き換えモード動作で使用することができる。
【００５０】
次に図６を使用して、個体識別データの構成と、個体識別データを使用して生成されたＥＣＵ送信データ構成について示す。
【００５１】
図６に示した個体識別データは、２９ｂｉｔの拡張ＣＡＮ  ＩＤに対応したデータ構成の例を示しており、個体識別データの全ｂｉｔ数が拡張ＣＡＮ  ＩＤのＩＤで使用するｂｉｔ数と同じ２９ｂｉｔになっている。
【００５２】
個体識別データにはＥＣＵの個体識別が可能なように、製造工場、製造ライン、製造番号、製造日（年、日）の情報を含んでいる。
【００５３】
このデータをＣＡＮ  ＩＤとして使用することで、複数の同一ＥＣＵを使用する場合でも、ＥＣＵ毎に全て異なったＣＡＮ  ＩＤを生成することが可能となる。
【００５４】
なお、図６では拡張ＣＡＮ  ＩＤで使用する２９ｂｉｔのデータ構成を示したが、生産規模が小さいＥＣＵに対しては、最低限必要なデータのみを個体識別データに使用することで標準ＣＡＮ  ＩＤの１１ｂｉｔのデータ構成として、使用することも可能である。また、ＣＡＮデータ構成のＤＬＣ（４ｂｉｔ）の値、ＥＣＵ送信データ（０〜６４ｂｉｔ）のデータサイズと値については、送信する内容によって適した値とサイズで使用することが可能である。
【００５５】
次に、図７、図８を使用し書き換え装置の動作を説明する。図７のステップＳ３００で外部情報読み取り手段１７０を使用し書き換え対象ＥＣＵの筐体外部に印字された個体識別データを読出し、外部情報読み取り回路１６０とＣＰＵ１２０を介し、ＲＡＭ１４０に書き換え対象ＥＣＵ１００の固体識別データを格納する。外部情報読み取り手段１７０はＥＣＵ２００ａが使用している固体識別データの印字形式に合わせた装置を使用する。例えばバーコード（１次元、２次元）形式の場合は、バーコードリーダとなり、ＩＣタグ形式の場合にはＩＣタグリーダとなる。
【００５６】
次のステップＳ３１０では、書き換え対象全てのＥＣＵに対してこのステップＳ３００を実施したか否かを判別する。例えば書き換え対象ＥＣＵを５台並列接続して書き換えを実施する場合、ステップＳ３００を５回（ＥＣＵ５台分）実施後にステップＳ３２０に遷移する。
【００５７】
ステップＳ３２０では、通信ネットワークに接続されている全ＥＣＵに対して同一のＣＡＮ  ＩＤを使用して、書き換え開始要求のデータを送信する。ＣＡＮプロトコルでは同一のネットワークに接続されている複数のＥＣＵに対して、同一のＣＡＮ  ＩＤを使用した場合には、１回のデータ送信で全てのＥＣＵに同一のデータを送信することができる。なお、書き換え装置からＥＣＵに対して送信するＣＡＮ  ＩＤは、ある特定のＩＤ値に予め決められている。
【００５８】
次に、ステップＳ３３０で接続されている全てのＥＣＵから応答のデータを受信したかを確認する。各ＥＣＵが応答で使用するＣＡＮ  ＩＤは、ステップＳ３００で読み出した個体識別データと等しいので、受信するＣＡＮ  ＩＤによってそれぞれのＥＣＵからの応答があるかないかを識別することができる。
【００５９】
ステップＳ３３０で全てのＥＣＵからの応答データを受信後に次のステップＳ３４０に遷移する。ステップＳ３４０では、書き換えデータ（書き換え対象ＥＣＵのプログラム）を全て送信したか否かを判定する。ステップＳ３４０への初回遷移時は、まだ書き換えデータを送信していない状態なので、次のステップＳ３５０に遷移する。
【００６０】
Ｓ３５０では通信ネットワークに接続されている全ＥＣＵに対して同一のＣＡＮ  ＩＤを使用して、書き換えデータを送信する。その後、ステップＳ３６０で接続されている全てのＥＣＵから応答のデータを受信したかを確認し、全てのＥＣＵから応答を受信した場合は、再度ステップＳ３４０に戻り、書き換えデータを全て送信したか否かを確認し、書き換えデータを全て送信していない場合には、再度ステップＳ３５０の処理を実施し、次の書き換えデータを送信する。ＣＡＮプロトコルでは、一度の書き換えデータの送信では最大８ｂｙｔｅ（６４ｂｉｔ）のデータしか送信できないため、この書き換えデータ送信を複数回実行することで、全ての書き換えデータを送信する。
【００６１】
書き換えデータを全て送信実施後は、ステップＳ３４０から図８のステップＳ３７０に遷移し、通信ネットワークに接続されている全ＥＣＵに対して同一のＣＡＮ  ＩＤを使用して、書き込みチェック要求を送信する。その後、ステップＳ３８０で接続されている全てのＥＣＵから応答のデータを受信したかを確認し、全てのＥＣＵから応答を受信した場合は、ステップＳ３９０に遷移する。
【００６２】
ステップＳ３９０では、各ＥＣＵの受信データを確認する。この時点で、書き換えＯＫの応答を返信したＥＣＵに対しては書き換えが正常に完了したと判断し、書き換えＮＧの応答を返信したＥＣＵに対しては書き換え失敗したと判断する。
【００６３】
なお、図７、図８の全ての書き換え対象ＥＣＵから応答データ受信を確認するステップＳ３１０、Ｓ３３０、Ｓ３６０、Ｓ３８０にて、ある特定のＥＣＵの応答データを受信できない状態が一定時間継続する場合には、その特定ＥＣＵに対して、通信ネットワークの接続ミスや通信ネットワークの問題、ＥＣＵの通信回路の故障などが発生していると判断し、処理を中断する構成としても良い。
【００６４】
以上のようにして、本実施の形態に係る電子制御装置のプログラム書き換え方法、書き換え機能を有する電子制御装置、及び書き換え装置によると、複数のＥＣＵにＣＡＮリプログラミングを行う場合に、ゲートウェイなどの仲介装置を介さずに複数台のＥＣＵに対して、並行でプログラムを書き換えることが可能となり、プログラムの書き換え時間を短縮することができる。
【００６５】
上記で開示した実施形態はすべての点で例示であり、制限的なものではない。本発明の範囲は上記した説明だけではなく、特許請求の範囲によって示され、本発明に係る技術的思想を逸脱しない範囲であれば、設計等に応じて様々な変更が可能であることは勿論である。
【符号の説明】
【００６６】
１０００・・・プログラム書き換えシステム、１００・・・書き換え装置、２００ａ，２００ｂ，２００ｃ・・・書き換え対象電子制御装置（ＥＣＵ）、１１０，２１０ａ・・・通信回路、１２０，２２０ａ・・・ＣＰＵ、１３０・・・ＲＯＭ、２３０ａ・・・Ｆｌａｓｈ  ＲＯＭ、１４０，２４０ａ・・・ＲＡＭ、１５０，２５０ａ・・・データ記憶部、２６０ａ・・・入力部、２７０ａ・・・出力部、３００・・・通信ネットワークバス、１６０・・・外部情報読み取り回路、１７０・・・外部情報読み取り手段。
【図１】
2014194688.tif 000003
【図２】
2014194688.tif 000004
【図３】
2014194688.tif 000005
【図４】
2014194688.tif 000006
【図５】
2014194688.tif 000007
【図６】
2014194688.tif 000008
【図７】
2014194688.tif 000009
【図８】
2014194688.tif 000010