(57)【特許請求の範囲】
【請求項１】
データの書き換えが可能な不揮発性メモリを備え、通常時には、前記不揮発性メモリに格納された制御プログラム及び制御データに従って所定の制御対象を制御するための制御処理を実行し、外部からの書き換え指令を受けた場合には、前記不揮発性メモリに格納されている制御プログラム又は制御データの一部又は全部を、外部から送信されて来る新たな制御プログラム又は制御データに書き換えるよう構成された電子制御装置において、
前記制御プログラム及び制御データは、当該制御プログラム及び制御データに従って制御すべき制御対象を示す識別情報であるデータ適合対象識別情報を含むよう作成されており、
当該電子制御装置の制御対象を示す識別情報である制御対象識別情報を記憶するための識別情報記憶手段と、
前記識別情報記憶手段に記憶された制御対象識別情報を、下記外部記憶装置側で記憶させるために該外部記憶装置へと送信する識別情報送信手段と、
前記制御処理の実行に先だって、前記外部装置に対して前記制御対象識別情報を要求し、該要求を受けた前記外部装置から送信されてくる前記制御対象識別情報を受信する識別情報受信手段と、
前記識別情報受信手段によって受信された制御対象識別情報と前記制御プログラム又は制御データに含まれたデータ適合対象識別情報とが一致しているか否かを判断する一致判断手段と、
該一致判断手段によって前記両識別情報が一致していないと判断された場合には異常時対応処理を実行する異常時処理実行手段と、を備え、
前記一致判断手段は、前記識別情報記憶手段から制御対象識別情報が読み出せる場合には、前記識別情報記憶手段に記憶された制御対象識別情報を用いて前記データ適合対象識別情報との一致判断を行い、一方、前記識別情報記憶手段から制御対象識別情報が読み出せない場合には、前記識別情報受信手段によって受信された制御対象識別情報を用いて前記データ適合対象識別情報との一致判断を行うよう構成されている
ことを特徴とする電子制御装置。
外部装置：前記制御対象識別情報を記憶するためのメモリを有し、該メモリに記憶された前記制御対象識別情報を当該電子制御装置からの要求を受けて当該電子制御装置へ送信するように構成された装置
【請求項２】
請求項１に記載の電子制御装置において、
前記異常時処理実行手段によって実行される異常時対応処理は、前記制御プログラム又は制御データが前記所定の制御対象に適合していない旨を報知する処理である
ことを特徴とする電子制御装置。
【請求項３】
請求項１又は２に記載の電子制御装置において、
前記異常時処理実行手段によって実行される異常時対応処理は、前記制御処理への移行を許可しない処理である
ことを特徴とする電子制御装置。
【請求項４】
請求項１〜３のいずれかに記載の電子制御装置において、
前記識別情報送信手段は、前記外部装置から前記制御対象識別情報の送信が要求されると、前記識別情報記憶手段に記憶した制御対象識別情報を前記外部装置へ送信するよう構成されている
ことを特徴とする電子制御装置。
【請求項５】
請求項１から４のいずれかに記載の電子制御装置において、
さらに、前記識別情報記憶手段から制御対象識別情報が読み出せない場合には、前記外部装置に前記制御対象識別情報の送信を要求する識別情報要求手段を備えた
ことを特徴とする電子制御装置。
【請求項６】
請求項１から５のいずれかに記載の電子制御装置において、
前記識別情報受信手段によって受信された制御対象識別情報を前記識別情報記憶手段に記憶するよう構成されている
ことを特徴とする電子制御装置。
【請求項７】
請求項１〜６のいずれかに記載の電子制御装置において、
前記データ適合対象識別情報を、前記制御プログラム及び制御データを構成するコードから唯一決定されるものとした
ことを特徴とする電子制御装置。
【請求項８】
請求項１〜７のいずれかに記載の電子制御装置において、
さらに、
前記外部装置としての他の電子制御装置から送信されてくる当該他の電子制御装置の制御対象を示す識別情報である外部識別情報を受信する外部情報受信手段と、
該外部情報受信手段によって受信された外部識別情報を記憶するための外部情報記憶手段と、
該外部情報記憶手段に記憶された外部識別情報を前記他の電子制御装置へ送信する外部情報送信手段とを備え、
前記他の電子制御装置に対する外部装置としても動作可能に構成されている
ことを特徴とする電子制御装置。
【請求項９】
請求項８に記載の電子制御装置において、
前記外部情報記憶手段に前記外部情報が記憶されていない場合には、前記他の電子制御装置へ前記外部識別情報の送信を要求する外部情報要求手段を備えた
ことを特徴とする電子制御装置。
【請求項１０】
請求項８又は９に記載の電子制御装置において、
前記外部情報要求手段は、前記外部情報受信手段によって外部情報が受信された場合、前記外部情報の再送信を要求するよう構成され、
さらに、最初に受信された外部情報と、前記再送信要求に基づき前記外部情報受信手段によって受信される外部情報とが一致しているか否かを判断し、一致していると判断された場合、前記外部情報を前記外部情報記憶手段に記憶する外部情報記憶制御手段
を備えたことを特徴とする電子制御装置。
【請求項１１】
請求項８〜１０のいずれかに記載の電子制御装置において、
前記外部情報送信手段は、前記他の電子制御装置から前記外部情報の送信要求があると、記外部情報記憶手段に記憶した外部情報を送信するよう構成されている
ことを特徴とする電子制御装置。
【請求項１２】
請求項１〜１１のいずれかに記載の電子制御装置を複数台備えることによって、各電子制御装置に対して少なくとも他の１台の電子制御装置が外部装置として動作するよう構成されている
ことを特徴とする電子制御システム。
【請求項１３】
データの書き換えが可能な不揮発性メモリを備え、通常時には、前記不揮発性メモリに格納された制御プログラム及び制御データに従って所定の制御対象を制御するための制御処理を実行し、外部からの書き換え指令を受けた場合には、前記不揮発性メモリに格納されている制御プログラム又は制御データの一部又は全部を、外部から送信されて来る新たな制御プログラム又は制御データに書き換えるよう構成された電子制御装置により、前記不揮発性メモリに書き込まれている制御プログラム又は制御データが制御対象に適合しているか否かを判断させるための適合判断方法であって、
当該電子制御装置が制御する制御対象を示す識別情報である制御対象識別情報を記憶するための識別情報記憶手段に記憶された制御対象識別情報を、下記外部記憶装置側で記憶させるために該外部装置に対して送信する識別情報送信手順と、
前記制御処理の実行に先だって、前記外部装置に対して前記制御対象識別情報を要求し、該要求を受けた前記外部装置から送信されてくる前記制御対象識別情報を受信する識別情報受信手順と、
前記制御プログラム又は制御データに含まれた識別情報であって当該制御プログラム及び制御データに従って制御すべき制御対象を示すデータ適合対象識別情報、および、前記識別情報受信手順にて受信した制御対象識別情報、が一致しているか否かを判断する一致判断手順と、
該一致判断手順にて両識別情報が一致していれば、前記不揮発性メモリに書き込まれている制御プログラム又は制御データが制御対象に適合していると判断し、両識別情報が一致していなければ、前記不揮発性メモリに書き込まれている制御プログラム又は制御データが制御対象に適合していないと判断と判断する適合判断手順と、からなり、
前記一致判断手順においては、前記識別情報記憶手段から制御対象識別情報が読み出せる場合には、前記識別情報記憶手段に記憶された制御対象識別情報を用いて前記データ適合対象識別情報との一致判断を行い、一方、前記識別情報記憶手段から制御対象識別情報が読み出せない場合には、前記識別情報受信手順にて受信された制御対象識別情報を用いて前記データ適合対象識別情報との一致判断を行う
ことを特徴とする適合判断方法。
外部装置：前記制御対象識別情報を記憶するためのメモリを有し、該メモリに記憶された前記制御対象識別情報を当該電子制御装置からの要求を受けて当該電子制御装置へ送信するように構成された装置
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、電気的にデータの書き換えが可能な不揮発性メモリに格納された制御プログラムや制御データを書き換える技術に関する。
【０００２】
【従来の技術】
従来より、例えば特開平６−２７２６１１号公報に開示されているように、自動車のエンジン等を制御する電子制御装置として、電気的にデータの書き換え（詳しくはデータの消去及び書き込み）が可能な不揮発性メモリに制御用のプログラム及びデータを格納しておき、このような制御プログラムや制御データを、市場への供給後でも書き換え可能に構成されたものが提案されている。
【０００３】
すなわち、この種の電子制御装置は、通常時には、不揮発性メモリに格納された制御プログラム及び制御データに従ってエンジン等の制御対象を制御するための制御処理を実行するのであるが、別途用意されたメモリ書換装置が接続されて、そのメモリ書換装置から書き換え指令が送信されて来ると、所定の通信手順を踏んだ後に、不揮発性メモリの内容を書き換えるように構成されている。なお、不揮発性メモリの内容の書き換えは、不揮発性メモリに格納されている制御プログラム又は制御データの一部又は全部を消去し、その消去したメモリ領域に、メモリ書換装置から送信されて来る新たな制御プログラム又は制御データを書き込むという手順で行われる。
【０００４】
メモリ書換装置は、書き換えるべき新たな制御プログラムや制御データを記憶する記憶媒体（フロッピーディスク，ハードディスク，ＣＤ−ＲＯＭ等）を備えており、作業者によって所定の操作が行われると、電子制御装置へ書き換え指令を送信した後、記憶媒体に記憶されている新たな制御プログラムや制御データを電子制御装置へ送信するように構成されている。なお、記憶媒体に複数の制御プログラム又は制御データが記憶されており、作業者によって選択された制御プログラム等を電子制御装置へ送信するという構成も考えられる。
【０００５】
このような電子制御装置では、不揮発性メモリに格納される制御プログラムや制御データをメモリ書換装置を用いて新たな制御プログラムや制御データに書き換えることができるため、動作内容（制御内容）を任意に変更することができるという点で有利である。このため、最近では、電子制御装置の備えるＣＰＵに上述したような不揮発性メモリが内蔵されることも多くなってきている。
【０００６】
ところが、例えば自動車においては、異なる車種間ではもちろんであるが、同一車種であっても、グレード（搭載装備）やエンジンの型式、あるいは仕向地（輸出国）等の違いによって、電子制御装置が行うべき制御の内容は異なっている。換言するならば、電子制御装置の不揮発性メモリに格納すべき制御プログラムや制御データは、その電子制御装置が制御する制御対象毎に異なっている。
【０００７】
従って、この種の電子制御装置では、作業者が、電子制御装置の制御対象に不適合な制御プログラム等がメモリ書換装置側の記憶媒体に記憶されていることを知らずに、あるいは、メモリ書換装置側の記憶媒体に記憶されている複数の制御プログラム等の中から電子制御装置の制御対象に不適合なものを誤って選択し、メモリ書換装置から電子制御装置へ制御対象に不適合な制御プログラムや制御データを送信させてしまう可能性がある。そして、このような作業ミスが発生すると、電子制御装置が制御対象を適切に制御することができなくなる。
【０００８】
例えば、型式Ａのエンジンを制御する電子制御装置の制御プログラムを書き換える際に、作業者が、メモリ書換装置側の記憶媒体に型式Ｂのエンジンに適合する制御プログラムが記憶されていることを知らずに、あるいは、メモリ書換装置側の記憶媒体に記憶されている複数の制御プログラムの中から型式Ｂのエンジンに適合する制御プログラムを誤って選択し、書き換え作業を行ってしまった場合には、電子制御装置の制御内容が実際の制御対象である型式Ａのエンジンに適合せずに、エンジンが動作しなくなったり、あるいは、エンジンが動作したとしても本来の性能を発揮できなくなる。
【０００９】
このため、出願人は、電子制御装置へ制御対象に不適合な制御プログラムや制御データを誤って書き込んだ場合に、適切な処置を講じることができるように、制御処理の実行に先だって、異常時対応処理を実行可能とする以下に示すような方法を考えた。
【００１０】
その方法は、制御プログラム及び制御データに、適合する制御対象を示す識別情報（以下「データ適合対象識別情報」という。）を含めるようにし、この識別情報を含む制御プログラム又は制御データを不揮発性メモリに書き込むようにしておき、一方、電子制御装置には、その電子制御装置の制御対象を示す識別情報（以下「制御対象識別情報」という。）を記憶しておき、制御処理の実行に先だって、制御対象識別情報と不揮発性メモリに書き込まれた前記制御プログラム又は制御データに含まれるデータ適合対象識別情報とが一致しているか否かを判断し、一致していない場合には例えば外部に一致していない旨を報知するというような異常時対応処理を実行するというものである。
【００１１】
この方法によれば、不揮発性メモリに記憶された制御プログラム又は制御データを書き換えた場合であっても、書き換えられた制御プログラム又は制御データが制御対象に不適合なものである場合には、制御処理の実行に先だって、異常時対応処理が実行されることになり、結果として、適切な処置を講じることができる。
【００１２】
【発明が解決しようとする課題】
しかしながら、上述した方法では、故障などによって電子制御装置が交換された場合には以下のような問題が発生する。
電子制御装置の故障時には、電子制御装置は補給用の電子制御装置と取り替えられるのが一般的であり、メモリ書換装置を用いて補給用の電子制御装置に制御プログラム又は制御データを新たに書き込むことになる。このとき、上述の方法によって、書き込まれた制御プログラム又は制御データが制御対象に適合したものであるか否かを判断するためには、補給用の電子制御装置に制御対象を示す制御対象識別情報を予め書き込んでおく必要がある。つまり、出荷当初から車両に搭載されない補給用の電子制御装置を、上述したような車種の違いによって、また、グレード、エンジンの型式、あるいは仕向地等の違いによって区別する必要が出てくるのである。その結果、ある補給用の電子制御装置は、型式Ａのエンジンを制御するための電子制御装置とは交換できるが、型式Ｂのエンジンを制御する電子制御装置とは交換できないという状況が発生する。
【００１３】
また、補給用の電子制御装置に制御対象を示す制御対象識別情報を予め書き込んでおいた場合、作業者が、故障した電子制御装置の制御対象とは別の制御対象を示す制御対象識別情報の記憶された補給用の電子制御装置を誤って選択し交換してしまうことも考えられる。この場合、書き込まれた制御プログラム又は制御データが制御対象に適合するものであったとしても、その制御プログラム又は制御データに含まれるデータ適合対象識別情報が予め記憶された制御対象識別情報と一致しないため、例えば外部に一致していない旨を報知するというような異常時対応処理が実行されてしまう。
【００１４】
このような点を考慮すれば、車両への搭載以前に電子制御装置の制御対象を特定する制御対象識別情報を記憶しておくことは好ましくない。つまり、補給用の電子制御装置にあっては、制御対象識別情報を記憶しておく必要をなくし、補給用の電子制御装置を制御対象の違いに関係なく共通化することが望まれる。
【００１５】
そこで、本発明は、電子制御装置において、このような共通化を実現し、さらに、制御対象に不適合な制御プログラムや制御データが不揮発性メモリに書き込まれた場合、制御処理の実行に先だって異常時対応処理を実行できるようにすることを目的する。
【００１６】
【課題を解決するための手段及び発明の効果】
上述した目的を達成するためになされた第１の構成に係る電子制御装置は、データの書き換えが可能な不揮発性メモリを備え、通常時には、不揮発性メモリに格納された制御プログラム及び制御データに従って所定の制御対象を制御するための制御処理を実行するのであるが、メモリ書換装置が接続されて、そのメモリ書換装置から送信される書き換え指令を受けた場合には、不揮発性メモリに格納されている制御プログラム又は制御データの一部又は全部を、その後メモリ書換装置から送信されて来る新たな制御プログラム又は制御データに書き換える。なお、データの書き換えが可能な不揮発性メモリとしては、フラッシュＥＥＰＲＯＭ（通称、フラッシュＲＯＭ）あるいはＥＥＰＲＯＭが一般的であるが、電気的に書き換え可能な他のＲＯＭでも良い。
【００１７】
本発明の電子制御装置では、制御プログラム及び制御データが、当該制御プログラム及び制御データに適合する制御対象を示す識別情報であるデータ適合対象識別情報を含むように作成されている。例えば、制御プログラム及び制御データの先頭位置に制御内容に関係しないデータ適合対象識別情報が記憶されているという具合である。
【００１８】
ここで特に、本発明の電子制御装置は、データ通信可能な外部装置と共に用いられるもので、本発明の電子制御装置には、当該電子制御装置の制御対象を記憶するための識別情報記憶手段が設けられている。そして、識別情報送信手段は、この識別情報記憶手段に記憶される制御対象識別情報を上述した外部装置へ送信する。外部装置は、識別情報送信手段によって送信された制御対象識別情報を受信して記憶しておき、この制御対象識別情報を電子制御装置へ送信する。これに対応して、本発明の電子制御装置では、外部装置から送信された制御対象識別情報を識別情報受信手段が受信し、一致判断手段が、制御処理の実行に先だって、識別情報受信手段によって受信された制御対象識別情報と制御プログラム又は制御データに含まれるデータ適合対象識別情報とが一致しているか否かを判断する。この判断結果に基づいて、異常時処理実行手段は、両識別情報が一致していない場合には異常時対応処理を実行する。
【００１９】
上述した識別情報記憶手段には、例えば工場出荷時に制御対象識別情報が記憶されることが考えられる。このように識別情報記憶手段に記憶された制御対象識別情報を外部装置へ送信し記憶させておき、そして、外部装置から送信されてくる制御対象識別情報を用いて上述した一致判断を行う。例えば故障等によって電子制御装置が交換されてしまえば、識別情報記憶手段には制御対象識別情報が記憶されていないことになるが、外部装置に制御対象識別情報が記憶されていれば、識別情報受信手段が外部装置から送信されてくる制御対象識別情報を用いて上述した一致判断を行う。
【００２０】
なお、外部装置としては、例えば電子制御装置が車両に搭載される場合、その車両に共に搭載される装置である。例えば、当該電子制御装置とは別の電子制御装置を外部装置として採用することも考えられるし、例えば、メモリ装置を内蔵し通信機能を備えたイグニッションキーを外部装置として採用することも考えられる。また、上述した「制御対象」は、例えば型式Ａのエンジン、型式Ｂのエンジンというように、同じエンジンであっても制御プログラム又は制御データを異にする対象をそれぞれ示すものである。
【００２１】
このように本発明の電子制御装置では、制御処理の実行に先だって、制御プログラム及び制御データに適合する制御対象を示す識別情報であるデータ適合対象識別情報と電子制御装置の制御対象を示す識別情報である制御対象識別情報とが一致しているか否かを判断し、一致していない場合には異常時対応処理を実行する。従って、不揮発性メモリに書き込まれた制御プログラム又は制御データが制御対象に適合していない場合には、制御処理の実行に先だって異常時対応処理が実行される。
【００２２】
このとき、判断基準となる制御対象識別情報を電子制御装置に記憶しておいた場合、故障時には、交換した電子制御装置に新たに制御対象識別情報を書き込む必要が生じ、又は既に制御対象識別情報が書き込んである電子制御装置に交換する必要が生じる。
【００２３】
そのため、本発明の電子制御装置では、外部装置に記憶されている制御対象識別情報を用いて、すなわち、識別情報受信手段によって受信される制御対象識別情報を用いて上述した一致判断を行うのである。従って、電子制御装置が故障して補給用の電子制御装置に取り換えられた場合であっても、補給用の電子制御装置には予め制御対象識別情報を記憶しておく必要がなくなり、車両等に搭載される以前に電子制御装置の制御対象は特定されないことになる。結果として、例えば補給用の電子制御装置を、車種、グレード、エンジンの型式、仕向地等により異なる制御対象によって区別することなく共通化することができる。
【００２４】
ところで、外部装置から送信されてくる制御対象識別情報を信頼性の高いものにするという観点から見れば、例えば、電子制御装置が車両に搭載される場合、その車両の工場出荷時に電子制御装置に記憶される制御対象識別情報を外部装置に記憶することが望ましい。
【００２５】
そこで、本発明の電子制御装置においては、識別情報送信手段が、識別情報記憶手段に記憶された制御対象識別情報を外部装置へ送信する。その結果、外部装置には、信頼性の高い制御対象識別情報が記憶されることになる。また、外部装置が故障して交換された場合であっても、電子制御装置が交換されなければ、電子制御装置に記憶されている制御対象識別情報が送信されることによって、交換後の外部装置に再び信頼性の高い制御対象識別情報を記憶することができる。
【００２６】
なお、上述した異常時処理実行手段によって実行される異常時対応処理は、例えば、制御プログラムや制御データが制御対象に適合していない旨を報知する処理であることが考えられる。この場合、作業者は、書き換えた制御プログラム又は制御データが電子制御装置の制御対象に適合していないことを、電子制御装置の報知動作によって確実に知ることができ、適切な処置を講じることができる。適切な処置としては、例えばメモり書換装置を用いて再度制御プログラム又は制御データの書き換えを行う処置が挙げられる。
【００２７】
また、異常時処理実行手段によって実行される異常時対応処理は、制御処理への移行を許可しない処理であることも考えられる。この場合、制御対象に不適合な制御プログラム又は制御データに基づいて制御処理が実行され、制御対象に何らかの悪影響が出ることを防止できる。
【００２８】
異常時処理実行手段によって実行される異常時対応処理は、上述した処理に限られるわけではなく、その制御対象に合わせた個別の処理であることも考えられる。例えば制御対象がエンジンである場合、エンジンへの燃料カットを行いエンジンの運転を停止させる処理とすることが考えられる。この場合、利用者は、不適合な制御プログラムに基づくエンジン制御がなされた状態で車両を運転することがなくなるため、利用者の安全性を向上させることができる。
【００２９】
ところで、上述した電子制御装置では、識別情報送信手段は、所定タイミングで制御対象識別情報を外部装置へ送信することが考えられる。ところが、外部装置が故障などで交換された場合には、なるべく早く制御対象識別情報を外部装置へ送信しておく必要がある。しかしながら、外部装置に制御対象識別情報が一度記憶されてしまった場合、電子制御装置から外部装置への制御対象識別情報の送信は無駄になってしまう。
【００３０】
そこで、第２の構成のように、識別情報送信手段は、外部装置から制御対象識別情報の送信が要求されると、識別情報記憶手段に記憶した制御対象識別情報を外部装置へ送信するよう構成することが好ましい。この場合、識別情報送信手段は、外部装置の交換時等に外部装置から制御対象識別情報の送信要求があると、制御対象識別情報を外部装置へ送信する。これによって、外部装置の交換時等には制御対象識別情報が速やかに送信され、また、外部装置に既に制御対象識別情報が記憶されているにも拘わらず制御対象識別情報を送信するという無駄もなくなる。
【００３１】
また、上述の電子制御装置は、外部装置から送信される制御対象識別情報を用いて一致判断するよう構成されていた。それは、上述したように、外部装置に記憶される制御対象識別情報は、電子制御装置から送信される信頼性の高いものだからである。ところで、電子制御装置が交換されないうちは、その電子制御装置に記憶された制御対象識別情報が同様に信頼性の高いものとなる。そこで、第５の構成のように、一致判断手段は、識別情報記憶手段から制御対象識別情報が読み出せる場合には、識別情報記憶手段に記憶された制御対象識別情報を用いてデータ適合対象識別情報との一致判断を行い、一方、識別情報記憶手段から制御対象識別情報が読み出せない場合には、識別情報受信手段によって受信された制御対象識別情報を用いてデータ適合対象識別情報との一致判断を行うよう構成するとよい。
【００３２】
ここで識別対象記憶手段から制御対象識別情報が読み出せる場合とは、電子制御装置が交換されていない場合であり、一方、識別情報記憶手段から制御対象識別情報が読み出せない場合とは、何らかの要因で読み出しエラーとなってしまう場合や電子制御装置の故障によって電子制御装置が交換されてしまった場合である。
【００３３】
このように識別情報記憶手段に記憶された制御対象識別情報を用いて一致判断をするようにすれば、外部装置とのデータ通信によって制御対象識別情報を取得する場合に比べて、その取得時間が短縮され、また、ノイズ等の影響を受けにくくなる点で有利である。
【００３４】
ところで、上述の電子制御装置においては、外部装置が制御対象識別情報を送信してくると、識別情報受信手段がその制御対象識別情報を受信する構成であった。この場合、電子制御装置が制御対象識別情報を必要とするか否かに拘わらず、外部装置が制御対象識別情報を送信することが考えられる。このとき、外部装置から頻繁に制御対象識別情報が送信される場合には無駄な送受信が多くなってしまう。
【００３５】
そこで、第６の構成のように、さらに、識別情報記憶手段から制御対象識別情報が読み出せない場合には、外部装置に対して制御対象識別情報の送信を要求する識別情報要求手段を備える構成とするとよい。この場合、制御対象識別情報が読み出せないと、識別情報要求手段が、外部装置に対して制御対象識別情報の送信を要求し、この送信要求に対して、外部装置から制御対象識別情報が送信されてくると、上述した識別情報受信手段が制御対象識別情報を受信する。従って、電子制御装置が必要とする場合に制御対象識別情報を受信できる可能性が高くなる。
【００３６】
なお、例えば補給用の電子制御装置にあっては、識別情報記憶手段に制御対象識別情報が記憶されていないため、制御処理の実行に先だって、毎回、外部装置から受信した制御対象識別情報を用いて一致判断を行うことが必要となる。そこで、第７の構成のように、識別情報受信手段によって受信された制御対象識別情報を識別情報記憶手段に記憶するよう構成することが望ましい。これによって、外部装置から制御対象識別情報を一度受信すれば、識別情報記憶手段から制御対象識別情報が読み出せるため、外部装置からの制御対象識別情報を受信しなくてよくなる。
【００３７】
ところで、電子制御装置の不揮発性メモリに記憶された制御プログラム又は制御データは、上述したように作業ミスで誤って書き換えられる場合も考えられるが、利用者が制御プログラム又は制御データの定数等を故意に書き換える場合も考えられる。例えば、エンジンを制御する電子制御装置では、車速の上限値を予め設定しておき、車速がその上限値を越えた場合には、燃料をカットするというような制御を行うのが一般的であるが、このとき、利用者が、予め設定された車速の上限値を故意に書き換えることが考えられる。
【００３８】
このような利用者による不正な制御プログラム又は制御データの書き換えを防止するため、第８の構成のように、データ適合対象識別情報は、制御プログラム及び制御データを構成するコードから唯一決定されるものとするとよい。ここで制御プログラム及び制御データを構成するコードから唯一決定されるものは、例えばチェックサムが挙げられる。つまり、制御プログラム又は制御データの一部を変更しただけでも値が変わってくるような情報をデータ適合対象識別情報としておくのである。例えば、データ適合対象識別情報を制御プログラム又は制御データのチェックサムとしておけば、一部のコードが不正に書き換えられた場合にもデータ対象識別情報が変わるために不一致判断がなされ、制御の実行に先だって所定処理が実行される。その結果、上述したように利用者が故意に制御プログラム又は制御データの書き換えを行うことを防止することができる。
【００３９】
なお、メーカー側が正規に制御プログラム又は制御データを書き換える場合には、新たな制御プログラム及び制御データのチェックサムが、書き換え前の制御プログラム及び制御データのチェックサムと一致するように、制御処理の実行に影響しないダミーコードを含めて制御プログラム又は制御データを作成すればよい。
【００４０】
ところで、第１〜８に示した構成に加えて、第９の構成のように、さらに、外部装置としての他の電子制御装置から送信されてくる当該他の電子制御装置の制御対象を示す識別情報である外部情報を受信する外部情報受信手段と、外部情報受信手段によって受信された外部情報を記憶するための外部情報記憶手段と、外部情報記憶手段に記憶された外部情報を他の電子制御装置へ送信する外部情報送信手段とを備え、他の電子制御装置に対する外部装置としても動作可能に構成することが考えられる。
【００４１】
この場合、外部情報受信手段が、外部装置としての他の電子制御装置の識別情報送信手段によって送信されてくる当該他の電子制御装置の制御対象を示す外部情報を受信する。受信された外部情報は、外部情報記憶手段に記憶され、外部情報送信手段によって外部装置へ送信される。その結果、本発明の電子制御装置は、他の電子制御装置に対して上述した外部装置としても動作することになる。
【００４２】
例えば、このように構成されたＸ，Ｙの２台の電子制御装置を考えると、Ｙ電子制御装置がＸ電子制御装置に対する外部装置として動作すると共に、Ｘ電子制御装置がＹ電子制御装置に対する外部装置として動作することになる。つまり、Ｘ電子制御装置は、Ｘ電子制御装置の制御対象を示す制御対象識別情報を外部装置としてのＹ電子制御装置へ送信することによってＹ電子制御装置に記憶される制御対象識別情報を用いて一致判断を行うことができ、一方、Ｙ電子制御装置は、Ｙ電子制御装置の制御対象を示す制御対象識別情報を外部装置としてのＸ電子制御装置へ送信することによってＸ電子制御装置に記憶される制御対象識別情報を用いて一致判断を行うことができるのである。
【００４３】
ここで外部装置としてのＹ電子制御装置から当該Ｙ電子制御装置の制御対象を示す識別情報である外部情報をＸ電子制御装置が受信する場合を考える。
このとき、Ｙ電子制御装置は、所定の間隔で繰り返し外部情報を送信することが考えられる。ところで、Ｘ電子制御装置が交換された場合を考えれば、Ｙ電子制御装置は、なるべく早いタイミングでＸ電子制御装置の外部情報記憶手段に外部情報を記憶させるよう比較的短い間隔で外部情報を送信することが望ましい。その理由は、Ｘ電子制御装置に外部情報が記憶される前にＹ電子制御装置も交換されてしまうと、Ｙ電子制御装置及びＸ電子制御装置のいずれにも外部情報がなくなってしまうからである。そうかと言って、あまり短い間隔で外部情報を送信すれば、外部情報がＸ電子制御装置に一度記憶された後では、無駄な送受信が多くなってしまう。
【００４４】
そこで、第１０の構成のように、さらに、外部情報記憶手段に外部情報が記憶されていない場合には、他の電子制御装置へ外部情報の送信を要求する外部情報要求手段を備える構成とすることが考えられる。ここで外部情報記憶手段に外部情報が記憶されていない場合は、上述したように電子制御装置が故障等によって交換された場合等が考えられる。この場合、外部情報要求手段が他の電子制御装置へ外部情報の送信を要求する。この送信要求に対して他の電子制御装置が外部情報を送信すれば、その外部情報は速やかに記憶されることになり、上述したような送受信の無駄もなくなる。
【００４５】
また、ノイズ等の影響によって他の電子制御装置から送信された外部情報が正確に受信されない可能性も考えられる。このような可能性が高くなれば、Ｙ電子制御装置における一致判断に用いられる外部情報、すなわちＹ電子制御装置の制御対象を示す制御対象識別情報の信頼性が低下することになる。
【００４６】
そこで、第１１の構成のように、外部情報受信手段によって外部情報が受信された場合、外部情報の再送信を要求するように、上述した外部情報要求手段を構成すると共に、最初に受信された外部情報と、再送信要求に基づき受信された外部情報とが一致しているか否かを判断し、一致している場合に外部情報を外部情報記憶手段に記憶する外部情報記憶制御手段を備える構成としてもよい。例えば、Ｘ電子制御装置の外部情報要求手段は、Ｙ電子制御装置からの外部情報を受信した場合、Ｙ電子制御装置へ外部情報の再送信を要求し、この要求に応じて、Ｙ電子制御装置から外部情報が再び送信されてくると、Ｘ電子制御装置の外部情報記憶制御手段は、最初に受信した外部情報と再送信を要求して受信した外部情報との一致を判断して、一致している場合に外部情報を記憶するという具合である。その結果、Ｘ電子制御装置に記憶されるＹ電子制御装置の制御対象を示す制御対象識別情報の信頼性を向上させることができる。
【００４７】
また、Ｘ電子制御装置が、外部装置としてのＹ電子制御装置へＹ電子制御装置の制御対象を示す識別情報である外部情報を送信する場合を考える。Ｘ電子制御装置の外部情報送信手段は、外部情報記憶手段に記憶したＹ電子制御装置の外部情報を例えば所定の間隔で繰り返しＹ電子制御装置へ送信することも考えられるが、このような送信が頻繁に行われると送受信の無駄が多くなる。
【００４８】
そこで、第１２の構成のように、外部情報送信手段は、外部装置から外部情報の送信要求があると、外部情報記憶手段に記憶した外部情報を送信するよう構成するとよい。例えばＸ，Ｙの２台の電子制御装置で説明すれば、Ｘ電子制御装置の外部情報送信手段は、Ｙ電子制御装置による外部情報の送信要求があると、外部情報記憶手段に記憶したＹ電子制御装置の外部情報を送信するという具合である。その結果、Ｙ電子制御装置は、外部情報、すなわちＹ電子制御装置の制御対象識別情報を必要とする場合にその外部情報を取得することができる。
【００４９】
以上、第１〜１２の構成では電子制御装置の発明として説明したが、第９〜１２の構成のように他の電子制御装置に対する外部装置としても動作するような電子制御装置を考えれば、第１３の構成のように、第９〜１２のいずれか構成の電子制御装置を複数台備えることによって、各電子制御装置に対して少なくとも他の１台の電子制御装置が外部装置として動作するよう構成した電子制御システムの発明として実現することができる。
【００５０】
この場合、複数台の電子制御装置の中で、各電子制御装置に対して少なくとも他の１台の電子制御装置が外部装置として動作する。すなわち、一の電子制御装置の制御対象を示す制御対象識別情報は、少なくとも他の１台の電子制御装置に待避されることになる。ここで、一の電子制御装置の制御対象識別情報が他の２台以上の電子制御装置に待避される場合、その一の電子制御装置と、外部装置として動作する２台以上の電子制御装置とが全て同時に交換されない限りその電子制御装置の制御対象識別情報は消失しないため、その信頼性を高く維持することができる。さらに各電子制御装置の制御対象識別情報を他の全ての電子制御装置に待避させるようにすれば、全ての電子制御装置が同時に交換されない限り各電子制御装置の制御対象識別情報は消失しないことになり、さらにその信頼性を高く維持できる。
【００５１】
【発明の実施の形態】
以下、本発明を具体化した実施形態を図面を参照して説明する。
［第１実施形態］
図１は、第１実施形態の電子制御システム１の電気的な構成を示すブロック図である。図１には、電子制御装置（以下「ＥＣＵ」という。）１０と、このＥＣＵ１０と共に車両に搭載される「外部装置」としてのイグニッションキー部５０と、ＥＣＵ１０に接続されたメモリ書換装置８０とが示されている。ここで、ＥＣＵ１０は、自動車に搭載されて内燃機関型エンジンの制御を行う。メモリ書換装置８０は、ＥＣＵ１０に内蔵されたエンジン制御用のプログラムやデータを書き換える際にＥＣＵ１０に接続される。
【００５２】
図１に示すように、ＥＣＵ１０は、エンジンの運転状態に応じた信号を出力する種々のセンサからの信号を入力する入力回路１３と、入力回路１３からの信号に基づきエンジンに対する最適制御量を演算し、その演算結果に基づき制御信号を出力するＣＰＵ１１と、ＣＰＵ１１からの制御信号を受けて、エンジンに取付けられたインジェクタやイグナイタ等のアクチュエータを駆動する出力回路１４と、ＣＰＵ１１が制御を行うのに必要なデータを格納するＥＥＰＲＯＭ１２と、メモリ書換装置８０及びイグニッションキー部５０との間でシリアルデータ通信を行うための入出力ポート１５とを備えている。この入出力ポート１５には、ＥＣＵ１０からの信号を受けて点灯するワーニングランプ３１が接続されている。ワーニングランプ３１は、例えば車室内のインストメントパネルに設けることが考えられる。さらに、ＣＰＵ１１は、エンジンを制御するのに必要な制御プログラム及び制御データを格納するフラッシュＥＥＰＲＯＭ（以下「フラッシュＲＯＭ」という。）１１と、バッテリからの電源供給によって、車両のイグニッションスイッチのオフ時にも、格納されたデータを保持可能なスタンバイＲＡＭ１１ｂとを内蔵している。
【００５３】
ここで、ＣＰＵ１１の内蔵するフラッシュＲＯＭ１１ａは、電気的にデータの消去及び書き込みが可能な不揮発性メモリであり、このフラッシュＲＯＭ１１ａには、エンジン制御用の制御プログラム及び制御データが、既に格納されている。そして、図２に示すように、フラッシュＲＯＭ１１ａに格納された制御プログラム及び制御データは、コード（プログラムコード、データコード）で構成される。このコードには、制御に影響しないダミーコードが含まれており、制御プログラム及び制御データを作成する際、このダミーコードを調整することによって、コードのチェックサムが、当該制御プログラム及び制御データに適合するエンジンの型式を示す識別コードとなるようにしている。なお、この識別コードが、制御プログラム及び制御データに適合する制御対象を示す識別情報である「データ適合対象識別情報」に相当する。
【００５４】
また、ＥＥＰＲＯＭ１２も、電気的にデータの消去及び書き込みが可能な不揮発性メモリである。このＥＥＰＲＯＭ１２及びＣＰＵ１１の内蔵するスタンバイＲＡＭ１１ｂには、ＥＣＵ１０が制御するエンジンの型式を示す識別コードが記憶されている。本第１実施形態では、このようにスタンバイＲＡＭ１１ｂ及びＥＥＰＲＯＭ１２の両方に識別コードを記憶しておき、スタンバイＲＡＭ１１ｂをアクセスして識別コードを読み出し、スタンバイＲＡＭ１１ｂに記憶された識別コードが消失した場合に、ＥＥＰＲＯＭ１２をアクセスし、ＥＥＰＲＯＭ１２に記憶された識別コードをスタンバイＲＡＭ１１ｂにコピーする。なお、この識別コードが、ＥＣＵ１０の制御対象を示す識別情報である「制御対象識別情報」に相当する。そして、この識別コードを記憶するスタンバイＲＡＭ１１ｂ及びＥＥＰＲＯＭ１２が「識別情報記憶手段」に相当する。
【００５５】
以下、上述した両識別コードを区別するために、制御プログラム及び制御データに適合するエンジンの型式を示す識別コードをＡ識別コードと記述し、ＥＣＵ１０の制御対象を示す識別コードをＢ識別コードと記述することとする。なお、本第１実施形態では、識別コードは、型式の異なるエンジンを区別するように設定されるものであるが、車種名や車のグレード名、あるいは車の仕向地等を区別するように設定されるものであってもよい。
【００５６】
メモリ書換装置８０は、ＥＣＵ１０にフラッシュＲＯＭ１１ａの書き換えを行わせるためのものであり、フラッシュＲＯＭ１１ａに書き込むために用意される新たな制御プログラム及び制御データを、フロッピーディスク，ハードディスク，ＣＤ−ＲＯＭ，メモリカートリッジ等に記憶している。メモリ書換装置８０は、作業者によって所定の操作が行われると、電子制御装置へ書き換え指令を送信した後、上述した記憶媒体に記憶されている新たな制御プログラムや制御データをＥＣＵ１０へ送信する。ＥＣＵ１０は、メモリ書換装置８０からの書き換え指令に対し、後述するように、フラッシュＲＯＭ１１ａの内容を書き換えるように動作する。
ここで、ＣＰＵ１１のフラッシュＲＯＭ１１ａに既に格納された制御プログラム及び制御データと全く同様に、メモリ書換装置８０に記憶される新たな制御プログラム及び制御データも、図２に示すように、制御プログラム及び制御データを構成するコードのチェックサムが、当該制御プログラム及び制御データに適合するエンジンの型式を示すＡ識別コードとなっている。
【００５７】
そして、このようなメモリ書換装置８０とＥＣＵ１０との接続は、接続用コネクタ９１を介して、互いの通信ライン９２がそれぞれ接続されることにより行われる。すなわち、接続用コネクタ９１が嵌合されると、通信ライン９２を介して、メモリ書換装置８０とＥＣＵ１０との間における双方向のシリアル通信が可能となる。
【００５８】
また、イグニッションキー部５０は、イグニッションキー６０と、このイグニッションキー６０を挿入して車両のイグニッションスイッチをオン／オフするためのキーシリンダ７０とから構成されている。本第１実施形態におけるキーシリンダ７０は通信用の電子制御装置（以下「通信用ＥＣＵ」という。）７１を備えており、この通信用ＥＣＵ７１は、図１に示すようにＥＣＵ１０の入出力ポート１５に通信ライン９３を介して接続され、ＥＣＵ１０との間で双方向のシリアル通信を行うように構成されている。イグニッションキー６０には、ＥＥＰＲＯＭ６１が搭載されている。上述したキーシリンダ７０の通信用ＥＣＵ７１は、さらに、イグニッションキー６０との間で無線による通信を行う構成となっており、ＥＣＵ１０へＢ識別コードの送信を要求し、ＥＣＵ１０から送信されてくるＢ識別コードを受信してイグニッションキー６０のＥＥＰＲＯＭ６１へ記憶する。また、ＥＣＵ１０からＢ識別コードの送信要求があると、イグニッションキー６０のＥＥＰＲＯＭ６１に記憶したデータを読み出してＥＣＵ１０へ送信する。この動作については後述する。なお、イグニッションキー部５０とＥＣＵ１０とのデータ通信の構成は公知であるため詳しい構成の説明は省略する。
【００５９】
このように構成されたＥＣＵ１０のＣＰＵ１１は、車両のイグニッションスイッチがオンされて、ＥＣＵ１０内の電源回路（図示省略）から動作電圧（５Ｖ）が供給されると、リセット状態から動作を開始する。動作を開始した際にメモリ書換装置８０からの書き換え指令としての書換要求信号を受信すると、フラッシュＲＯＭ１１ａ内の制御プログラムをコールすることなく、フラッシュＲＯＭ１１ａに格納されている現在の制御プログラム及び制御データを、その後メモリ書換装置８０から送信されて来る新たな制御プログラム及び制御データに書き換える。このような動作によって、ＥＣＵ１０のフラッシュＲＯＭ１１ａに格納される制御プログラム及び制御データは、メモリ書換装置８０に記憶された新たな制御プログラム及び制御データに書き換えられる。
【００６０】
また、ＣＰＵ１１は、メモリ書換装置８０が接続されていない通常時にあっては、フラッシュＲＯＭ１１ａ内の制御プログラムをコールして、エンジンの制御を行うのであるが、この制御プログラムの最初の処理において、すなわちフラッシュＲＯＭ１１ａ内の制御プログラム及び制御データに基づくエンジンの制御処理の実行に先だって、フラッシュＲＯＭ１１ａ内の制御プログラム及び制御データがエンジンの型式に適合しているか否かを判断し、適合していない場合には異常時対応処理を実行する。
【００６１】
次に、図３及び図４に示すフローチャートに基づいて、上述したイグニッションキー部５０のキーシリンダ７０の備える通信用ＥＣＵ７１にて実行される処理を説明する。
図３は、コード要求処理を示すフローチャートである。この処理は、例えば８ｍｓというような所定タイミングで実行されるものである。
【００６２】
まず最初のステップＳ４００において、コード記憶フラグＦｅが「０」またはコード送信要求フラグＦｒが「１」であるか否かを判断するものである。両フラグＦｅ，Ｆｒは「０」又は「１」のいずれかの値をとる。通信用ＥＣＵ７１は、イグニッションキー６０のＥＥＰＲＯＭ６１にＥＣＵ１０からのＢ識別コードを記憶するとコード記憶フラグＦｅを「１」にセットする。また、通信用ＥＣＵ７１は、後述するコード記憶処理においてＢ識別コードの再送信を要求する際、コード送信要求フラグＦｒを「１」にセットする。従って、この処理は、イグニッションキー６０のＥＥＰＲＯＭ６１にＥＣＵ１０からのＢ識別コードが記憶されていない場合、または、ＥＣＵ１０へＢ識別コードの再送信の要求がある場合を判断するものである。ここでＦｅ＝０又はＦｒ＝１である場合（Ｓ４００：ＹＥＳ）、Ｓ４１０へ移行する。一方、Ｆｅ＝１かつＦｒ＝０である場合（Ｓ４００：ＮＯ）、本コード要求処理を終了する。
【００６３】
Ｓ４１０では、ＥＣＵ１０へＢ識別コードの送信要求を出力する。その後、本コード要求処理を終了する。
図４は、コード記憶処理を示すフローチャートである。この処理は、ＥＣＵ１０からＢ識別コードを受信した場合に実行されるものである。
【００６４】
まず最初のステップＳ５００において、コード記憶フラグＦｅが「１」であるか否かを判断する。上述したようにコード記憶フラグＦｅは、イグニッションキー６０のＥＥＰＲＯＭ６１にＥＣＵ１０からのＢ識別コードが記憶されると「１」にセットされる。ここでＦｅ＝１である場合（Ｓ５００：ＹＥＳ）、すなわち既にイグニッションキー６０のＥＥＰＲＯＭ６１にＢ識別コードが記憶されている場合には、本コード記憶処理を終了する。一方、Ｆｅ＝０である場合（Ｓ５００：ＮＯ）、すなわちイグニッションキー６０のＥＥＰＲＯＭ６１にＢ識別コードが記憶されていない場合には、Ｓ５１０へ移行する。
【００６５】
Ｓ５１０では、コード受信フラグＦ１が「０」であるか否かを判断する。コード受信フラグＦ１は、ＥＣＵ１０から送信されてくるＢ識別コードを最初に受信して記憶したときに「１」にセットされる。従って、この処理は、ＥＣＵ１０からのＢ識別コードを１回も受信していない場合を判断するものである。ここでＦ１＝０である場合（Ｓ５１０：ＹＥＳ）、Ｓ５３０へ移行する。一方、Ｆ１＝１である場合（Ｓ５１０：ＮＯ）、すなわちＢ識別コードの受信が２回目以降である場合には、Ｓ５２０へ移行する。
【００６６】
Ｓ５２０では、前回受信したＢ識別コードと今回受信したＢ識別コードとが一致しているか否かを判断する。この処理は、データ通信途中のノイズ等の影響によるデータエラーの発生を確認するものである。ここで一致している場合（Ｓ５２０：ＹＥＳ）、Ｓ５５０へ移行する。一方、一致していない場合（Ｓ５２０：ＮＯ）、Ｓ５３０へ移行する。
【００６７】
Ｓ５３０では、コード送信要求フラグＦｒを「１」にセットする。その結果、図３に示したコード要求処理のＳ４００において肯定判断されることになり、ＥＣＵ１０へＢ識別コードの再送信が要求されることになる。
Ｓ５４０では、今回受信したＢ識別コードを一時的に記憶する。本第１実施形態では、通信用ＥＣＵ７１の内部ＲＡＭ（図示省略）に記憶する。また、コード受信フラグＦ１を「１」にセットする。その後、本コード記憶処理を終了する。
【００６８】
一方、Ｓ５２０で肯定判断された場合に移行するＳ５５０では、受信したコードを不揮発性のメモリに記憶する。本第１実施形態では、イグニッションキー６０のＥＥＰＲＯＭ６１に記憶する。その後、本コード記憶処理を終了する。
次に、図５に示すフローチャートに基づいて、図３及び図４のフローチャートを用いて説明した通信用ＥＣＵ７１にて実行される処理に対応するＥＣＵ１０のＣＰＵ１１にて実行される送信処理を説明する。この送信処理は、例えば１６ｍｓというような所定タイミングで実行されるものである。
【００６９】
まず最初のステップＳ６００において、コード送信済フラグＦｓが「０」、又は、コード送信要求フラグＦｒが「１」であるか否かを判断する。両方のフラグＦｓ，Ｆｒは、それぞれ「０」あるいは「１」のいずれかの値をとる。コード送信済フラグＦｓは、ＥＣＵ１０のＥＥＰＲＯＭ１２及びスタンバイＲＡＭ１１ｂに記憶されたＢ識別コードを一度でも送信すると「１」にセットされる。また、コード送信要求フラグＦｒは、上述した図３中のＳ４１０にて通信用ＥＣＵ７１からＢ識別コードの送信要求があった場合に「１」にセットされる。従って、この処理は、Ｂ識別コードを一度も送信していない場合、又は、Ｂ識別コードの送信要求があった場合を判断するものである。ここでＦｓ＝０又はＦｒ＝１である場合（Ｓ６００：ＹＥＳ）、Ｓ６１０へ移行する。一方、Ｆｓ＝１かつＦｒ＝０である場合（Ｓ６１０：ＮＯ）、本送信処理を終了する。
【００７０】
Ｓ６１０では、エンジン回転数ＮＥ＝０で、かつ、スタータＳＴＡ＝ＯＦＦであるか否かを判断する。この処理は、入力回路１３を介して入力されるセンサからの信号に基づく判断処理であり、ノイズの少ない状態であるか否かを判断するものである。ここでＮＥ＝０かつＳＴＡ＝ＯＦＦである場合（Ｓ６１０：ＹＥＳ）、Ｓ６２０へ移行する。一方、ＮＥ≠０またはＳＴＡ＝ＯＮである場合（Ｓ６２０：ＮＯ）、本送信処理を終了する。
【００７１】
Ｓ６２０では、Ｂ識別コードが「０」であるか否かを判断する。この処理は、スタンバイＲＡＭ１１ｂ及びＥＥＰＲＯＭ１２の両方にＢ識別コードが記憶されていない場合、あるいは、スタンバイＲＡＭ１１ｂの故障などによってＢ識別コードが読み出せない場合を判断するものである。ここでＢ識別コード＝０である場合（Ｓ６２０：ＹＥＳ）、本送信処理を終了する。一方、Ｂ識別コード≠０である場合（Ｓ６２０：ＮＯ）、Ｓ６３０へ移行する。
【００７２】
Ｓ６３０では、イグニッションキー部５０のキーシリンダ７０の備える通信用ＥＣＵ７１へＢ識別コードを送信する。通信用ＥＣＵ７１は、送信されるＢ識別コードを受信すると図４のフローチャートに示したコード記憶処理を実行することになる。続くＳ６３０では、コード送信済フラグＦｓを「１」にセットし、このコード送信済フラグＦｓをＥＣＵ１０のスタンバイＲＡＭ１１ｂ及びＥＥＰＲＯＭ１２に記憶して、その後、本送信処理を終了する。
【００７３】
以上説明した通信用ＥＣＵ７１及びＥＣＵ１０にて実行される処理によって、ＥＣＵ１０のスタンバイＲＡＭ１１ｂ及びＥＥＰＲＯＭ１２に記憶されたＥＣＵ１０の制御対象であるエンジンの型式を示すＢ識別コードがイグニッションキー部５０のイグニッションキー６０に搭載されたＥＥＰＲＯＭ６１に記憶される。
【００７４】
次に、図６、図７及び図８に示すフローチャートに基づいて、ＥＣＵ１０のＣＰＵ１１にて、エンジン制御処理の実行に先だって実行される処理を説明する。図６はＥＣＵ１０のＣＰＵ１１にて実行される送信要求処理を示すフローチャートである。この処理は、上述したように、制御プログラムをコールした直後に実行されるものである。
【００７５】
まず最初のステップＳ１００において、Ｂ識別コードが「０」であるか否かを判断する。この処理は、図５中のＳ６２０と同様、スタンバイＲＯＭ１２及びＥＥＰＲＯＭ１２の両方にＢ識別コードが記憶されていない場合、あるいは、スタンバイＲＡＭ１１ｂの故障などによってＢ識別コードが読み出せない場合を判断するものである。ここでＢ識別コード＝０である場合（Ｓ１００：ＹＥＳ）、Ｓ１１０へ移行する。一方、Ｂ識別コード≠０である場合（Ｓ１００：ＮＯ）、本送信要求処理を終了する。
【００７６】
Ｓ１１０では、イグニッションキー部５０のキーシリンダ７０の備える通信用ＥＣＵ７１へＢ識別コードの送信を要求する。その後、本送信要求処理を終了する。通信用ＥＣＵ７１へＢ識別コードの送信を要求すると、通信用ＥＣＵ７１は、イグニッションキー６０との間で無線による通信を行うことによってイグニッションキー６０のＥＥＰＲＯＭ６１に記憶されているＢ識別コードを取得し、このＢ識別コードをＥＣＵ１０へ送信する。
【００７７】
続いて図７に示すフローチャートに基づき、ＥＣＵ１０のＣＰＵ１１にて実行される受信処理を説明する。この受信処理は、上述したように図６中のＳ１１０にてキーシリンダ７０の備える通信用ＥＣＵ７１に対してＢ識別コードの送信を要求した結果、通信用ＥＣＵ７１から送信されてくるＢ識別コードを受信するものである。
【００７８】
まず最初のステップＳ２００において、ＥＣＵ１０の入出力ポート１５に入力される通信用ＥＣＵ７１からの信号がスタートビットであるか否かを判断する。この処理は、通信ライン９３を介して送信されるＢ識別コードの受信開始を判断するものである。ここでスタートビットであると判断された場合（Ｓ２００：ＹＥＳ）、Ｓ２１０へ移行する。一方、スタートビットでないと判断された場合（Ｓ２００：ＮＯ）、スタートビットが判断されるまで、Ｓ２００の判断処理を繰り返す。
【００７９】
Ｓ２１０では、受信信号を記憶する。そして、続くＳ２２０では、ストップビットであるか否かを判断する。この処理は、通信ライン９３を介して送信されるＢ識別コードの受信終了を判断するものである。ここでストップビットであると判断された場合（Ｓ２２０：ＹＥＳ）、Ｓ２３０にて、記憶した一連の受信信号をＢ識別コードとしてスタンバイＲＡＭ１１ｂ及びＥＥＰＲＯＭ１２に記憶し、その後、本受信処理を終了する。一方、ストップビットでないと判断された場合（Ｓ２２０：ＮＯ）、受信が完了していないため、上述のＳ２１０からの処理を繰り返す。
【００８０】
さらに続けて、図８に示すフローチャートに基づき、ＥＣＵ１０のＣＰＵ１１にて実行される一致判断処理を説明する。この一致判断処理は、上述した受信処理に続いて、又は、送信要求処理において送信要求がなされなかった場合には送信要求処理に続いて実行されるものである。
【００８１】
まず最初のステップＳ３００において、チェックフラグＸＣが「１」であるか否かを判断する。チェックフラグＸＣは、「０」又は「１」のいずれかの値を取るフラグであり、車両のイグニッションスイッチがオンされた直後は「０」となっている。ここでＸＣ＝１であると判断された場合（Ｓ３００：ＹＥＳ）、本一致判断処理を終了する。一方、ＸＣ＝０であると判断された場合（Ｓ３００：ＮＯ）、Ｓ３１０へ移行する。
【００８２】
Ｓ３１０では、エンジン回転数ＮＥ＝０で、かつ、スタータＳＴＡ＝ＯＦＦであるか否かを判断する。この処理は、入力回路１３を介して入力されるセンサからの信号に基づく判断処理であり、ノイズの少ない状態であるか否かを判断するものである。ここでＮＥ＝０かつＳＴＡ＝ＯＦＦである場合（Ｓ３１０：ＹＥＳ）、Ｓ３２０へ移行する。一方、ＮＥ≠０またはＳＴＡ＝ＯＮである場合（Ｓ３２０：ＮＯ）、本一致判断処理を終了する。
【００８３】
Ｓ３２０では、Ａ識別コードを作成する。上述したように、Ａ識別コードは、制御プログラム及び制御データの適合するエンジンの型式を示す識別コードであり、制御プログラム及び制御データを構成するコードのチェックサムである。従って、この処理は、ＣＰＵ１１に内蔵されたフラッシュＲＯＭ１１ａに記憶されている制御プログラム及び制御データからチェックサムを作成するものである。
【００８４】
続くＳ３３０では、Ａ識別コードとＢ識別コードとが一致しているか否かを判断する。つまり、ＣＰＵ１１の内蔵するフラッシュＲＯＭ１１ａに記憶された制御プログラム及び制御データに適合するエンジンの型式と、ＥＣＵ１０の制御対象であるエンジンの型式と同一であるか否かを判断するのである。ここで、Ａ識別コード＝Ｂ識別コードである場合（Ｓ３３０：ＹＥＳ）、Ｓ３５０にてチェックフラグＸＣに「１」を代入し、その後、本一致判断処理を終了する。一方、Ａ識別コード≠Ｂ識別コードである場合（Ｓ３３０：ＮＯ）、Ｓ３４０にて入出力ポート１５に接続されたワーニングランプ３１を点灯し、その後、本一致判断処理を終了する。
【００８５】
本一致判断処理終了後、制御プログラム及び制御データに基づきエンジンの制御を行うための制御処理が実行される。
なお、以上説明した処理を実行するＥＣＵ１０のＣＰＵ１１が、「識別情報送信手段」、「識別情報受信手段」、「識別情報要求手段」、「一致判断手段」及び「異常時処理実行手段」に相当し、図５中のＳ６００〜Ｓ６４０の処理が識別情報送信手段としての処理に相当し、図６中のＳ１００及びＳ１１０の処理が識別情報要求手段としての処理に相当し、図７中のＳ２００〜Ｓ２２０の処理が識別情報受信手段としての処理に相当し、図８中のＳ３３０の処理が一致判断手段としての処理に相当し、図８中のＳ３４０の処理が異常時処理実行手段としての処理に相当する。
【００８６】
次に本第１実施形態の電子制御システム１の発揮する効果を説明する。
本第１実施形態のＥＣＵ１０では、制御プログラム及び制御データを構成するコードのチェックサムがその制御プログラム及び制御データに適合するエンジンの型式を示すＡ識別コードとなっており（図２参照）、制御プログラム及び制御データに基づく制御処理の実行に先だって、その制御プログラム及び制御データからＡ識別コードを作成し（図８中のＳ３２０）、作成したＡ識別コードとＥＣＵ１０の制御対象であるエンジンの型式を示すＢ識別コードとが一致しているか否かを判断し（図８中のＳ３３０）、一致していない場合には（図８中のＳ３３０：ＮＯ）、ワーニングランプ３１を点灯させる。（図８中のＳ３４０）。従って、本第１実施形態のＥＣＵ１０によれば、メモリ書換装置８０によって書き換えを行う作業者は、ＣＰＵ１１に内蔵されたフラッシュＲＯＭ１１ａに書き込んだ制御プログラム又は制御データがエンジンの型式に適合していないことを、ワーニングランプ３１の点灯によって確実に知ることができ、適切な処置を講じることができる。例えばメモり書換装置８０を用いて再度制御プログラム又は制御データの書き換えを行うという具合である。
【００８７】
また、本第１実施形態では、車両の工場出荷時に、ＥＣＵ１０の制御するエンジンの型式を示すＢ識別コードをＥＣＵ１０内のスタンバイＲＡＭ１１ｂ及びＥＥＰＲＯＭ１２に記憶される。そして、このＢ識別コードをＥＣＵ１０と共に車両に搭載されるイグニッションキー部５０へ送信することによって（図５中のＳ６３０）、ＥＣＵ１０内のスタンバイＲＡＭ１１ｂ及びＥＥＰＲＯＭ１２に記憶しておくだけでなく、イグニッションキー部５０のイグニッションキー６０に搭載されたＥＥＰＲＯＭ６１にも記憶しておく。
【００８８】
そして、スタンバイＲＡＭ１１ｂからＢ識別コードが読み出せない場合には（図６中のＳ１００：ＹＥＳ）、イグニッションキー６０のＥＥＰＲＯＭ６１に記憶されているＢ識別コードを用いて上述した一致判断を行う。その結果、ＥＣＵ１０内のスタンバイＲＡＭ１１ｂ及びＥＥＰＲＯＭ１２にＢ識別コードが記憶されていなくても、ＣＰＵ１１に内蔵されたフラッシュＲＯＭ１１ａに書き込んだ制御プログラム又は制御データがエンジンの型式に適合していないことを判断でき、ワーニングランプ３１を点灯させることができる。従って、ＥＣＵ１０の故障時に交換される補給用のＥＣＵ１０のスタンバイＲＡＭ１１ｂ及びＥＥＰＲＯＭ１２にＢ識別コードを予め記憶しておく必要がない。すなわち、車両に搭載される以前にＥＣＵ１０の制御するエンジンの型式は特定されないことになる。これによって、補給用のＥＣＵ１０をエンジンの型式によって区別することなく共通化することができる。
【００８９】
一方、スタンバイＲＡＭ１１ｂからＢ識別コードが読み出せる場合には（図３中のＳ１００：ＮＯ）、スタンバイＲＡＭ１１ｂに記憶されたＢ識別コードを用いて上述した一致判断を行う。つまり、原則としては、ＥＣＵ１０内にＢ識別コードを記憶しておき、このＥＣＵ１０内のＢ識別コードを一致判断に用いるのである。その結果、相対的に取得に時間がかかり、ノイズの影響を受け易いイグニッションキー部５０からのＢ識別コードの取得回数を減少させることができる。
【００９０】
さらにまた、本第１実施形態のＥＣＵ１０では、スタンバイＲＡＭ１１ｂからＢ識別コードが読み出せない場合に（図６中のＳ１００）、イグニッションキー部５０のキーシリンダ７０の備える通信用ＥＣＵ７１へ送信要求を行い（図６中のＳ１１０）、この送信要求に対応してイグニッションキー部５０から送信されてくるＢ識別コードを受信する（図７中のＳ２００，Ｓ２１０，Ｓ２２０）。つまり、通信用ＥＣＵ７１は、ＥＣＵ１０からの送信要求があった場合にだけＢ識別コードを送信し、ＥＣＵ１０は、Ｂ識別コードの送信を要求したときだけ受信処理を実行する。また、ＥＣＵ１０では、受信したＢ識別情報をＥＣＵ１０内のＣＰＵ１１に内蔵されるスタンバイＲＡＭ１１ｂ及びＥＥＰＲＯＭ１２に記憶する（図４中のＳ２３０）。従って、例えばＥＣＵ１０の交換後であるため、スタンバイＲＡＭ１１ｂ及びＥＥＰＲＯＭ１２にＢ識別コードが記憶されていない場合、一度イグニッションキー部５０からのＢ識別コードを受信した後は、ＥＣＵ１０内のスタンバイＲＡＭ１１ｂ及びＥＥＰＲＯＭ１２に記憶されたＢ識別コードを用いて一致判断をすることになる。このように本第１実施形態のＥＣＵ１０では、送受信処理を減少させることができる。
【００９１】
また、イグニッションキー部５０が故障等によって交換されてしまい、イグニッションキー６０のＥＥＰＲＯＭ６１に記憶されたＢ識別コードが消失してしまった場合には（Ｓ４００：ＹＥＳ）、イグニッションキー部５０のキーシリンダ７０の備える通信用ＥＣＵ７１がＢ識別コードの送信をＥＣＵ１０に対して要求する（図３中のＳ４１０）。また、通信用ＥＣＵ７１は、Ｂ識別コードを最初に受信すると（Ｓ５１０：ＹＥＳ）、Ｂ識別コードの再送信を要求し、前回受信したＢ識別コードと再送信されたＢ識別コードとの一致を判断して（図４中のＳ５２０）、一致した場合にイグニッションキー６０のＥＥＰＲＯＭ６１へ記憶する（図４中のＳ５５０）。これによって、イグニッションキー部５０が交換されてしまった場合であっても、確実に信頼性の高いＢ識別コードがイグニッションキー６０のＥＥＰＲＯＭ６１に記憶されることになる。つまり、本第１実施形態のＥＣＵ１０においては、イグニッションキー部５０及びＥＣＵ１０の両方が同時に交換されてしまわない限りＢ識別コードが消失してしまうことがなく、また、Ｂ識別コードの信頼性を高く保持することができる。その結果、このＢ識別コードに基づく一致判断処理の信頼性が向上させることができる。
【００９２】
また、本第１実施形態においては、制御プログラム及び制御データに適合するエンジンの型式を示すＡ識別情報を、その制御プログラム及び制御データを構成するコードのチェックサムとしている。そのため、制御プログラム及び制御データの一部を不正に書き換えた場合、チェックサム、すなわちＡ識別コードが変更されることになる。従って、利用者が故意に制御プログラム又は制御データを書き換えることを防止することができる。なお、制御プログラム及び制御データを構成するコードには、図２に示したように制御処理の実行に影響しないダミーコードが含まれている。従って、正規に制御プログラム又は制御データを作成する場合には、このダミーコードを調節することによって、新たな制御プログラム及び制御データのチェックサムを、書き換え前の制御プログラム及び制御データのチェックサムと一致させる。
【００９３】
さらにまた、本第１実施形態のＥＣＵ１０では、ＣＰＵ１１の内蔵するスタンバイＲＡＭ１１ｂ及びＥＥＰＲＯＭ１２の両方にＢ識別コードを記憶しておき、スタンバイＲＡＭ１１ｂをアクセスするようにしており、スタンバイＲＡＭ１１ｂに記憶されたＢ識別コードが消失した場合に、ＥＥＰＲＯＭ１２に記憶されたＢ識別コードをコピーするようにしている。これによって、アクセス回数に限界があるＥＥＰＲＯＭ１２へのアクセス回数を減らすことができる。
［第２実施形態］
上記第１実施形態では、ＥＣＵ１０の制御対象であるエンジンの型式を示すＢ識別コードを記憶させる外部装置としてイグニッションキー部５０を採用した構成であった。このイグニッションキー部５０に代えて、ＥＣＵ１０と共に車両に搭載され、所定の制御対象を制御する別のＥＣＵを外部装置として採用することも考えられる。
【００９４】
図９は、第２実施形態の電子制御システム２の電気的な構成を示すブロック図である。図９には、２台の電子制御装置（以下「ＥＣＵ」という。）１０，２０と、メモリ書換装置８０と、ワーニングランプ３１，３２とが示されている。２台のＥＣＵ１０，２０は、通信ライン９４を介してデータ通信可能な状態で自動車に搭載される。そして、一方のＥＣＵ１０は、内燃機関型エンジンの制御を行い、他方のＥＣＵ２０は、ブレーキ装置の制御、いわゆるアンチスキッド制御を行う。メモリ書換装置８０は、ＥＣＵ１０，２０に内蔵されたエンジン制御用又はブレーキ制御用のプログラムやデータを書き換える際にＥＣＵ１０，２０に接続される（図９ではＥＣＵ１０に接続されている。）。なお、２台のＥＣＵ１０，２０を区別するため、Ｘ−ＥＣＵ１０、Ｙ−ＥＣＵ２０と以下記述する。
【００９５】
なお、Ｘ−ＥＣＵ１０のハード構成については、上記第１実施形態におけるＥＣＵ１０のハード構成と全く同様であるため、ここでの説明は省略する。
また、Ｙ−ＥＣＵ２０は、上述したようにブレーキ装置を制御するのであるが、ハード構成については、Ｘ−ＥＣＵ１０と同様になっている。すなわち、車速センサ等の種々のセンサからの信号を入力する入力回路２３と、入力回路２３からの信号に基づき演算を行い、ブレーキ油圧の制御信号を出力するＣＰＵ２１と、ＣＰＵ２１からの制御信号を受けてアクチュエータを駆動する出力回路２４と、ＣＰＵ２１が制御を行うのに必要なデータを格納するＥＥＰＲＯＭ２２と、メモリ書換装置８０及びＸ−ＥＣＵ１０との間でデータ通信を行うための入出力ポート２５とを備えている。また、入出力ポート２５にはＹ−ＥＣＵ２０からの信号を受けて点灯するワーニングランプ３２が接続され、ＣＰＵ２１には、ブレーキ装置を制御するのに必要な制御プログラム及び制御データを格納するフラッシュＲＯＭ２１ａと、バッテリからの電源供給によって、車両のイグニッションスイッチのオフ時にも、格納されたデータを保持可能なスタンバイＲＡＭ２１ｂとを内蔵している。
【００９６】
上記第１実施形態と同様に、Ｘ−ＥＣＵ１０のＣＰＵ１１に内蔵されたフラッシュＲＯＭ１１ａには、エンジン制御用の制御プログラム及び制御データが、既に格納されている。そして、図２に示すように、フラッシュＲＯＭ１１ａに格納された制御プログラム及び制御データは、コード（プログラムコード、データコード）で構成される。このコードには、制御に影響しないダミーコードが含まれており、制御プログラム及び制御データを作成する際、このダミーコードを調整することによって、コードのチェックサムが、当該制御プログラム及び制御データに適合するエンジンの型式を示す識別コードとなるようにしている。以下、この識別コードをＡ識別コードと記述する。
【００９７】
また、Ｘ−ＥＣＵ１０のＥＥＰＲＯＭ１２及びＣＰＵ１１に内蔵されたスタンバイＲＡＭ１１ｂには、Ｘ−ＥＣＵ１０が制御するエンジンの型式を示す識別コードが記憶されている。本第２実施形態においても、上記第１実施形態と同様に、スタンバイＲＡＭ１１ｂ及びＥＥＰＲＯＭ１２の両方に識別コードを記憶しておき、通常時は、スタンバイＲＡＭ１１ｂをアクセスして識別コードを読み出し、スタンバイＲＡＭ１１ｂに記憶された識別コードが消失した場合に、ＥＥＰＲＯＭ１２をアクセスし、ＥＥＰＲＯＭ１２に記憶された識別コードをスタンバイＲＡＭ１１ｂにコピーする。以下、この識別コードをＢ識別コードと記述する。
【００９８】
さらにまた、Ｙ−ＥＣＵ２０のＣＰＵ２１に内蔵されるフラッシュＲＯＭ２１ａには、ブレーキ装置制御用の制御プログラム及び制御データが、既に格納されている。そして、Ｘ−ＥＣＵ１０のフラッシュＲＯＭ１１ａに記憶された制御プログラム及び制御データと同様に、図２に示す如く、ダミーコードを含むコードで構成されており、コードのチェックサムが、適合するブレーキ装置の型式を示す識別コードとなるようにしている。以下、この識別コードをＣ識別コードと記述する。
【００９９】
また、Ｙ−ＥＣＵ２０のＥＥＰＲＯＭ２２及びＣＰＵ２１の内蔵するスタンバイＲＡＭ２１には、Ｙ−ＥＣＵ２０が制御するブレーキ装置の型式を示す識別コードが記憶されている。以下、この識別コードをＤ識別コードと記述する。なお、ここで、スタンバイＲＡＭ２１ｂに記憶された識別コードが消失するとＥＥＰＲＯＭ２２がアクセスされる点は、Ｘ−ＥＣＵ１０と同様である。
【０１００】
なお、本第２実施形態では、識別コードは、型式の異なるエンジン及びブレーキ装置を区別するように設定されるものであるが、車種名や車のグレード名、あるいは車の仕向地等を区別するように設定されるものであってもよい。
メモリ書換装置８０は、上記第１実施形態と同様に構成されており、メモリ書換装置８０に記憶される新たな制御プログラム及び制御データも、図２に示すように、制御プログラム及び制御データを構成するコードのチェックサムが、当該制御プログラム及び制御データに適合するエンジンやブレーキ装置の型式を示す識別コードとなっている。
【０１０１】
このように構成されたＸ−ＥＣＵ１０のＣＰＵ１１及びＹ−ＥＣＵ２０のＣＰＵ２１は、車両のイグニッションスイッチがオンされて、Ｘ−ＥＣＵ１０及びＹ−ＥＣＵ２０内のそれぞれの電源回路（図示省略）から動作電圧（５Ｖ）が供給されると、リセット状態から動作を開始する。
【０１０２】
上記第１実施形態では、ＥＣＵ１０に対する外部装置としてのイグニッションキー部５０の通信用ＥＣＵ７１が、図３及び図４のフローチャートに示す処理を実行し、ＥＣＵ１０は、図５〜図８のフローチャートに示す処理を実行した。
これに対して、本第２実施形態では、Ｘ−ＥＣＵ１０に対する外部装置としてのＹ−ＥＣＵ２０のＣＰＵ２１が、上記第１実施形態のイグニッションキー部５０の通信用ＥＣＵ７１にて実行される処理と同様の処理、すなわち図３及び図４のフローチャートに示した処理と同様の処理を実行する。一方、Ｘ−ＥＣＵ１０のＣＰＵ１１は、上記第１実施形態のＥＣＵ１０のＣＰＵ１１にて実行される処理と同様の処理、すなわち図５〜図８のフローチャートに示した処理と同様の処理を実行する。
【０１０３】
そして、さらに、本第２実施形態では、Ｘ−ＥＣＵ１０が、Ｙ−ＥＣＵ２０に対する外部装置としても動作する。従って、Ｘ−ＥＣＵ１０のＣＰＵ１１は、上記第１実施形態のイグニッションキー部５０の通信用ＥＣＵ７１にて実行される処理と同様の処理、すなわち図３及び図４のフローチャートに示した処理と同様の処理を実行する。一方、Ｙ−ＥＣＵ２０のＣＰＵ２１は、上記第１実施形態のＥＣＵ１０のＣＰＵ１１にて実行される処理と同様の処理、すなわち図５〜図８のフローチャートに示した処理と同様の処理を実行する。
【０１０４】
つまり、本第２実施形態では、Ｙ−ＥＣＵ２０がＸ−ＥＣＵ１０の外部装置として動作すると共に、Ｘ−ＥＣＵ１０がＹ−ＥＣＵ２０の外部装置として動作するのである。すなわち、Ｘ−ＥＣＵ１０は、Ｘ−ＥＣＵ１０のスタンバイＲＡＭ１１ｂ及びＥＥＰＲＯＭ１２にＸ−ＥＣＵ１０の制御対象であるエンジンの型式を示すＢ識別コードを記憶すると共に、Ｙ−ＥＣＵ２０から送信されてくるＹ−ＥＣＵ２０の制御対象であるブレーキ装置の型式を示すＤ識別コードを記憶する。同様に、Ｙ−ＥＣＵ２０は、Ｙ−ＥＣＵ２０のスタンバイＲＡＭ２１ｂ及びＥＥＰＲＯＭ２２にＹ−ＥＣＵ２０の制御対象を示すＤ識別コードを記憶すると共に、Ｘ−ＥＣＵ１０から送信されてくるＸ−ＥＣＵ１０の制御対象を示すＢ識別コードを記憶する。これによって、Ｘ−ＥＣＵ１０は、スタンバイＲＡＭ１１ｂ及びＥＥＰＲＯＭ１２からＢ識別コードが読み出せない場合、Ｙ−ＥＣＵ２０のスタンバイＲＡＭ２１ｂ及びＥＥＰＲＯＭ２２に記憶されたＢ識別コードを用いて一致判断を行う。同様に、Ｙ−ＥＣＵ２０は、Ｄ識別コードが読み出せない場合、Ｘ−ＥＣＵ１０のスタンバイＲＡＭ１１ｂ及びＥＥＰＲＯＭ１２に記憶されたＤ識別コードを用いて一致判断を行う。
【０１０５】
このとき、例えばＸ−ＥＣＵ１０が故障によって補給用のＸ−ＥＣＵ１０と交換された場合、Ｘ−ＥＣＵ１０は、Ｙ−ＥＣＵ２０に対してＤ識別コードの送信を要求する（図３中のＳ４１０）。そして、Ｙ−ＥＣＵ２０からのＤ識別コードを受信すると再送信を要求し（図４中のＳ５３０，図３中のＳ４１０）、ノイズ等による通信エラーがないことを確認して（図４中のＳ５２０）、Ｙ−ＥＣＵ２０の制御対象を示すＤ識別コードをＸ−ＥＣＵ１０のスタンバイＲＡＭ１１ｂ及びＥＥＰＲＯＭ１２に記憶する（図４中のＳ５５０）。また、Ｘ−ＥＣＵ１０は、エンジン制御処理の実行に先だって、Ｘ−ＥＣＵ１０の制御対象を示すＢ識別コードの送信をＹ−ＥＣＵ２０に要求し（図６中のＳ１１０）、Ｙ−ＥＣＵ２０から送信されてくるＢ識別コードをＸ−ＥＣＵ１０のスタンバイＲＡＭ１１ｂ及びＥＥＰＲＯＭ１２に記憶し（図７中のＳ２３０）、このＢ識別コードを用いて制御プログラム及び制御データが制御対象に適合しているか否かを一致判断を行う（図８中のＳ３３０）。なお、Ｙ−ＥＣＵ２０が交換された場合も、同様である。
【０１０６】
従って、本第２実施形態の場合には、Ｘ−ＥＣＵ１０のＣＰＵ１１が、「識別情報送信手段」、「識別情報受信手段」、「識別情報要求手段」、「一致判断手段」、「異常時処理実行手段」に相当すると共に、「外部情報受信手段」、「外部情報送信手段」、「外部情報要求手段」及び「外部情報記憶制御手段」に相当する。そして、図５中のＳ６００〜Ｓ６４０の処理が識別情報送信手段としての処理に相当し、図６中のＳ１００及びＳ１１０の処理が識別情報要求手段としての処理に相当し、図７中のＳ２００〜Ｓ２２０の処理が識別情報受信手段としての処理に相当し、図８中のＳ３３０の処理が一致判断手段としての処理に相当し、図８中のＳ３４０の処理が異常時処理実行手段としての処理に相当する。さらに、図４中のＳ５００〜Ｓ５５０の処理が外部情報記憶制御手段としての処理に相当し、図３中のＳ４００及びＳ４１０の処理が外部情報要求手段としての処理に相当する。また、Ｘ−ＥＣＵ１０のスタンバイＲＡＭ１１ｂ及びＥＥＰＲＯＭ１２が「識別情報記憶手段」及び「外部情報記憶手段」に相当する。なお、Ｙ−ＥＣＵ２０のＣＰＵ２１も、Ｘ−ＥＣＵ１０のＣＰＵ１１と同様の処理を実行するため、上述したのと同様の対応関係となる。
【０１０７】
以上説明した本第２実施形態の電子制御システム１によれば、Ｘ，Ｙの２台のＥＣＵ１０，２０がそれぞれ上記第１実施形態のＥＣＵ１０と全く同様の効果を奏することになる。
以上、本発明はこのような実施形態に何等限定されるものではなく、本発明の主旨を逸脱しない範囲において種々なる形態で実施し得る。
【０１０８】
上記第１実施形態では、ＥＣＵ１０の外部装置としてイグニッションキー部５０を採用する構成であり、上記第２実施形態では、Ｘ−ＥＣＵ１０の外部装置としてＹ−ＥＣＵ２０を採用する構成であったが、Ｘ−ＥＣＵ１０及びＹ−ＥＣＵ２０の外部装置としてイグニッションキー部５０及びＹ−ＥＣＵ２０の両方を採用する構成としてもよい。この場合、Ｘ−ＥＣＵ１０のＢ識別コードは、イグニッションキー部５０及びＹ−ＥＣＵ２０の両方に記憶されることになる。従って、Ｘ−ＥＣＵ１０、Ｙ−ＥＣＵ２０、イグニッションキー部５０の全てが同時に交換されない限りＢ識別コードを外部から入力しなおす必要がなくＢ識別コードの信頼性をより向上させることができる。また、例えば上記第２実施形態で説明したような動作を行うＥＣＵを３台以上備える構成としてもよい。
【０１０９】
また、例えば、上記第１及び第２実施形態においては、ＣＰＵ１１に内蔵されたフラッシュＲＯＭ１１ａあるいはＣＰＵ２１に内蔵されたフラッシュＲＯＭ２１ａに書き込まれた制御プログラム及び制御データが制御対象に適合していないことを判断した場合（図８中のＳ３３０：ＮＯ）、入出力ポート１５を介してワーニングランプ３１を点灯させ（図８中のＳ３４０）、その後、制御処理に移行させるようにしていた。これに対して、制御プログラム及び制御データが制御対象のエンジンの型式に適合していない場合、上述した一致判断処理終了後に制御処理に移行させないようにすることも考えられる。この場合、制御対象に不適合な制御プログラム又は制御データに基づいて制御処理を実行することによって制御対象に何らかの悪影響が出ることを防止できる。また、上記実施形態のようにエンジンを制御対象としている場合、エンジンへの燃料供給をカットする処理を実行するようにしてもよい。この場合、利用者は、不適合な制御プログラムに基づくエンジン制御がなされた状態で車両を運転することがなくなるため、利用者の安全性を向上させることができる。
【図面の簡単な説明】
【図１】実施形態のＥＣＵの電気的な構成を示すブロック図である。
【図２】制御プログラム及び制御データの構成を示す説明図である。
【図３】実施形態のイグニッションキー部又はＥＣＵにて実行されるコード要求処理を示すフローチャートである。
【図４】実施形態のイグニッションキー部又はＥＣＵにて実行されるコード記憶処理を示すフローチャートである。
【図５】実施形態のＥＣＵにて実行される送信処理を示すフローチャートである。
【図６】実施形態のＥＣＵにて実行される送信要求処理を示すフローチャートである。
【図７】実施形態のＥＣＵにて実行される受信処理を示すフローチャートである。
【図８】実施形態のＥＣＵにて実行される一致判断処理を示すフローチャートである。
【図９】第２実施形態の電子制御システムの電気的な構成を示すブロック図である。
【符号の説明】
１…電子制御システム                １０…ＥＣＵ，Ｘ−ＥＣＵ
２０…Ｙ−ＥＣＵ                      １１，２１…ＣＰＵ
１１ａ，２１ａ…フラッシュＲＯＭ      １１ｂ，２１ｂ…スタンバイＲＡＭ
１２，２２…ＥＥＰＲＯＭ              １３，２３…入力回路
１４，２４…出力回路                  １５，２５…入出力ポート
３１，３２…ワーニングランプ          ５０…イグニッションキー部
６０…イグニッションキー              ６１…ＥＥＰＲＯＭ
７０…キーシリンダ                    ７１…通信用ＥＣＵ
８０…メモリ書換装置                  ９１…通信用コネクタ
９２，９３，９４…通信ライン
【図１】
0004066499.tif 000002
【図２】
0004066499.tif 000003
【図３】
0004066499.tif 000004
【図４】
0004066499.tif 000005
【図５】
0004066499.tif 000006
【図６】
0004066499.tif 000007
【図７】
0004066499.tif 000008
【図８】
0004066499.tif 000009
【図９】
0004066499.tif 000010