(57)【特許請求の範囲】
【請求項１】
データを記憶する記憶装置と、前記データを処理する制御部とを有し、外部装置から入力された読み書きコマンドに応じて前記データの書き換えが可能な車両用電子制御装置において、
前記制御部は、
前記記憶装置に記憶された前記データの一部に対して前記読み書きコマンドの実行を許可する第１のモードを設定する第１のモード設定部と、
前記記憶装置に記憶された前記データの一部を含む前記第１のモードより広い範囲のデータに対して、認証を行った後に前記読み書きコマンドの実行を許可する第２のモードを設定する第２のモード設定部と、
前記読み書きコマンドの前に前記外部装置から入力されるイニシャル信号に応じて、前記第１のモードと前記第２のモードのいずれかを選択するモード選択部と、
を含み、
前記イニシャル信号は、前記読み書きコマンドによる前記データの読み書きを可能にする移行コマンドと、前記第１のモードと前記第２のモードのいずれかを特定する権限コードとを少なくとも１つ有し、
前記モード選択部は、前記イニシャル信号が前記移行コマンドを有し、前記権限コードを有しない場合に前記第１のモードを選択することを特徴とする車両用電子制御装置。
【請求項２】
前記モード選択部は、前記制御部に電源が投入されてから所定時間以内に前記イニシャル信号を受信し、かつ前記イニシャル信号が前記移行コマンド及び前記権限コードを有する場合に前記第２のモードを選択することを特徴とする請求項１に記載の車両用電子制御装置。
【請求項３】
前記制御部に電源が投入されてから所定時間以内に受信した前記イニシャル信号が権限コードを有し、前記移行コマンドを有しない場合又は、電源が投入されてから所定時間以降に権限コードを含む前記イニシャル信号があった場合には、前記外部装置との通信を遮断する通信モード設定部を有する請求項１又は請求項２に記載の車両用電子制御装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、車両用電子制御装置に関する。
【背景技術】
【０００２】
車両の電子制御装置は、ＣＰＵ（Central Processing Unit）やＲＯＭ（Read Only Memory）やＲＡＭ(Random Access Memory)などを有し、プログラムを実行することで、エンジンなどの制御を行っている。
【０００３】
電子制御装置は、製造段階や製造後に記憶装置に記憶されているデータの一部を書き換えできるようになっている。書き換え可能なデータとしては、例えば、エンジンなどを制御するためのプログラムや制御パラメータなどがある。また、製造後に電子制御装置のデータにアクセスする例としては、車両メーカーや、正規に発行された制御用プログラムの書き換えを行う場合がある。また、車両のメンテナンス時に、電子制御装置が正常動作していることを診断するために、電子制御装置の演算結果や、センサの出力値などの内部データを確認することもある。
【０００４】
ここで、従来の電子制御装置では、外部装置からデータの書き換えを要求されたときに、データの書き換えを要求するコマンドが正規のコマンドであることを認証するように構成されている。これは、車両メーカーや電子制御装置のメーカーによる正規のデータ以外のデータや、正式なメンテナンス以外でデータが書き換えられることを防止するためである。
【０００５】
また、従来の電子制御装置には、開発時の制御用プログラムを効率的に書き換えできるようにしたものがある。この種の電子制御装置では、プログラムを実行する本体チップと、開発段階のみに本体チップに接続されるサブチップとを有し、本体チップは、プログラム書き換えのコマンドを受け取ったら、サブチップが接続されていた場合のみ、コマンドの認証を行わずに書き換え処理を実行する。サブチップが接続されていない場合には、コマンドが認証された場合のみプログラムの書き換えが許可される。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開２０１０−２５０７５１号公報
【発明の概要】
【発明が解決しようとする課題】
【０００７】
しかしながら、従来の電子制御装置では、通常の制御処理には使用されないサブチップが必要になるため、コストが高くなっていた。
また、レース車両などでは、製品出荷後に制御用のパラメータを微調整することがある。このような場合、従来の電子制御装置では、記憶装置内のデータにアクセスする度に認証処理を行う必要があった。このため、車両の整備又は調整の作業を迅速に行うことが難しかった。
本発明は、このような事情を鑑みてなされたものであり、電子制御装置に対する外部からのアクセスを効率良く行うことを目的とする。
【課題を解決するための手段】
【０００８】
本願の一観点によれば、データを記憶する記憶装置と、前記データを処理する制御部とを有し、外部装置から入力された読み書きコマンドに応じて前記データの書き換えが可能な車両用電子制御装置において、前記制御部は、前記記憶装置に記憶された前記データの一部に対して前記読み書きコマンドの実行を許可する第１のモードを設定する第１のモード設定部と、前記記憶装置に記憶された前記データの一部を含む前記第１のモードより広い範囲のデータに対して、認証を行った後に前記読み書きコマンドの実行を許可する第２のモードを設定する第２のモード設定部と、前記読み書きコマンドの前に前記外部装置から入力されるイニシャル信号に応じて、前記第１のモードと前記第２のモードのいずれかを選択するモード選択部と、を含み、前記イニシャル信号は、前記読み書きコマンドによる前記データの読み書きを可能にする移行コマンドと、前記第１のモードと前記第２のモードのいずれかを特定する権限コードとを少なくとも１つ有し、前記モード選択部は、前記イニシャル信号が前記移行コマンドを有し、前記権限コードを有しない場合に前記第１のモードを選択することを特徴とする車両用電子制御装置が提供される。
【０００９】
本発明の別の観点によれば、前記モード選択部は、前記制御部に電源が投入されてから所定時間以内に前記イニシャル信号を受信し、かつ前記イニシャル信号が前記移行コマンド及び前記権限コードを有する場合に前記第２のモードを選択することを特徴とする請求項１に記載の車両用電子制御装置が提供される。
【００１０】
本発明の別の観点によれば、前記制御部に電源が投入されてから所定時間以内に受信した前記イニシャル信号が権限コードを有し、前記移行コマンドを有しない場合又は、電源が投入されてから所定時間以降に権限コードを含む前記イニシャル信号があった場合には、前記外部装置との通信を遮断する通信モード設定部を有する請求項１又は請求項２に記載の車両用電子制御装置が提供される。
【発明の効果】
【００１２】
本発明によれば、一部のデータのみにアクセス可能な第１のモードでは読み書きコマンドの実行が権限コードの有無に拘らず実行される。これに対して、より広範囲のデータにアクセスする第２のモードでは権限コードを有する場合のみ読み書きコマンドが実行される。これによって、車両用電子制御装置に対するアクセスの利便性とセキュリティを両立できる。
【図面の簡単な説明】
【００１３】
【図１】図１は、本発明の実施の形態に係る車両用電子制御装置と外部装置のブロック図である。
【図２】図２は、本発明の実施の形態に係る車両用電子制御装置の処理を説明するフローチャートである。
【図３】図３は、本発明の実施の形態に係る車両用電子制御装置の通信モード処理を説明するフローチャートである。
【図４】図４は、本発明の実施の形態に係る車両用電子制御装置の処理を説明するタイミングチャートである。
【発明を実施するための最良の形態】
【００１４】
本発明を実施するための形態について以下に詳細に説明する。
図１に車両用電子制御装置と、電子制御装置のデータにアクセス可能な外部装置のブロック図を示す。
車両用電子制御装置１（以下、電子制御装置１という）は、外部装置２との通信を制御する通信ＩＦ（インターフェイス）１０と、プログラムやコマンドを実行する制御部であ
るＣＰＵ１１と、データの記憶装置であるＲＡＭ１２、ＲＯＭ１３、ＥＥＰＲＯＭ（Electrically Erasable Programmable Read-Only Memory）１４を含んでいる。
ＣＰＵ１１は、モード選択部２１と、ユーザーモード設定部２２と、スーパーバイザーモード設定部２３と、通信モード設定部２４と、機器制御部２５とに機能分割できる。
【００１５】
モード選択部２１は、第１のモードであるユーザーモードと、第２のモードであるスーパーバイザーモードを選択する処理を行う。ユーザーモードは、電子制御装置１の一部のデータの読み出しや書き込みが可能なモードである。スーパーバイザーモードは、読み出し書き込みが可能なデータの種類や範囲がユーザーモードより広いモードである。つまり、スーパーバイザーモードは、ユーザーモードより高い権限を有する。
ユーザーモード設定部２２は、ユーザーモードが選択されたときにＲＡＭ１２などに対してデータ処理を要求するコマンドの実行を受け付ける。
スーパーバイザーモード設定部２３は、スーパーバイザーモードが選択されたときにＲＡＭ１２などに対してデータ処理を要求するコマンドの実行を受け付ける。
通信モード設定部２４は、電子制御装置１と外部装置２の間の通信状態を設定する処理を行う。
機器制御部２５は、エンジンやその他のアクチュエータなどの制御対象を制御する処理を行う。
【００１６】
外部装置２としては、例えば、メーカーなどが使用する診断機３１と、車両の購入者やディーラーなどのユーザーが使用するセッティングツール３２とがある。診断機３１は、プログラムやセンサの検出出力や、エンジンなどのアクチュエータへの指令値や、アクチュエータの制御用パラメータの読み出しや、書き込みを行う装置である。セッティングツール３２は、キャリブレーションデータの読み出しや、書き込みを行う装置である。セッティングツール３２は、一部のプログラムやデータに対して外部からアクセスする装置であり、診断機３１は、セッティングツール３２より広範囲のデータに対して外部からアクセスする装置である。
【００１７】
ここで、外部装置２から電子制御装置１に出力される信号としては、イニシャル信号と、読み書きコマンドとが含まれる。イニシャル信号は、移行コマンドと権限コードの少なくとも一つを含む信号である。移行コマンドは、外部装置２からデータの読み書きが可能になるように電子制御装置１の設定を切り替える指令する情報を有する。権限コードは、外部装置２が電子制御装置１をスーパーバイザーモードで動作させる権限を有することを示す情報である。権限コードは、車両メーカーや電子制御装置１のメーカー、又はそれらメーカーから正規のライセンスを受けた外部装置２に付与される。
【００１８】
次に、図２のフローチャートを主に参照して、外部装置２からのアクセスがあった場合の電子制御装置１の処理について以下に説明する。
最初に、ステップＳ１０１でモード選択部２１は、モード選択フラグＦ＿ＳＰＶＭの値を、ユーザーモードに相当するゼロに設定する。外部装置２からイニシャル信号が通信ＩＦ１０を介してＣＰＵ１１に入力されたら、ステップＳ１０２でモード選択部２１が通信遮断モードであるか調べる。通信遮断モードであれば、ここでの処理を終了する。
【００１９】
ステップＳ１０３でモード選択部２１が権限コードの有無を調べる。イニシャル信号に権限コードが含まれていない場合には、ステップＳ１０４に進む。ステップＳ１０４では、モード選択部２１がイニシャル信号に移行コマンドが含まれているか調べる。移行コマンドがイニシャル信号に含まれていない場合には、ここでの処理を終了する。従って、イニシャル信号が入力されない場合や、イニシャル信号に権限コード及び移行コマンドが含まれていない場合には、電子制御装置１のデータの読み書きは行われない。
【００２０】
ステップＳ１０４で移行コマンドがイニシャル信号に含まれていた場合、モード選択部２１は外部装置２からデータの読み書きが可能なモードとして、ユーザーモードを選択する。これは、イニシャル信号が移行コマンドを有するが、権限コードを有しないからである。その結果、ステップＳ１１０に進んで、ユーザーモード設定部２２が通信モード処理を実行して必要なデータの読み出しや書き込みを行う。通信モード処理の詳細は、後に説明する。
【００２１】
また、ステップＳ１０３でイニシャル信号に権限コードが含まれていた場合には、ステップＳ１０５に進む。ステップＳ１０５では、通信モード設定部２４がイニシャル信号の受信が電子制御装置１の電源投入から所定時間以内であるか調べる。所定時間、例えば２秒を経過した後にイニシャル信号を受信した場合（ステップＳ１０５でＮｏ）は、ステップＳ１０８に進んで、通信モード設定部２４が通信遮断モードに設定した後、ここでの処理を終了する。
【００２２】
一方、ステップＳ１０５で、所定時間以内であれば、ステップＳ１０６に進んで、モード選択部２１が移行コマンドの有無を調べる。イニシャル信号に移行コマンドが含まれていなければ、ステップＳ１０８に進んで、通信モード設定部２４が通信遮断モードに設定する。この後、ここでの処理を終了する。電源が投入されてから所定時間以内にイニシャル信号を受信した場合であっても、移行コマンドを有しない場合には、以降の外部装置２との通信が遮断される。
【００２３】
ステップＳ１０６でイニシャル信号に移行コマンドが含まれていたら、ステップＳ１０９に進む。ステップＳ１０９でモード選択部２１がモード選択フラグＦ＿ＳＰＶＭの値を「１」にする。これは、権限コード及び移行コマンドが所定時間内に電子制御装置１に入力されたことを示すもので、これによりモード選択部２１はスーパーバイザーモードを選択する。さらに、ステップＳ１１０に進み、スーパーバイザーモード設定部２３が通信モード処理を実行して必要なデータの読み出しや書き込みを行う。なお、ステップＳ１０１からステップＳ１１０までの処理は、所定時間ごとに実施される。
【００２４】
次に、ステップＳ１１０の通信モード処理の詳細について、図３のフローチャートを参照して説明する。
ステップＳ２０１の読み出し処理は、ユーザーモード、スーパーバイザーモードのいずれにおいても実行可能である。具体的には、ユーザーモード設定部２２又はスーパーバイザーモード設定部２３は、外部装置２から入力された読み書きコマンドを許可する。これによって、電子制御装置１は、読み書きコマンドで指定されたユーザー設定値の読み出しを行う。ユーザー設定値とは、ユーザーによって設定可能なデータである。この工程で読み出されるユーザー設定値は、例えば、ＥＥＰＲＯＭ１４に記憶されている。
【００２５】
続くステップＳ２０２の書き込み処理は、ユーザーモード、スーパーバイザーモードのいずれにおいても実行可能である。具体的には、ユーザーモード設定部２２又はスーパーバイザーモード設定部２３は、外部装置２から入力された読み書きコマンドを許可し、外部装置２から入力されたユーザー設定値が、例えばＥＥＰＲＯＭ１４に書き込まれる。
【００２６】
この後、ステップＳ２０３では、スーパーバイザーモード設定部２３がモード選択フラグＦ＿ＳＰＶＭの値を調べる。電子制御装置１が受信したイニシャル信号に権限コードが含まれておらず、ユーザーモードが選択されていた場合には、モード選択フラグＦ＿ＳＰＶＭの値が「０」なので、ここでの処理を終了する。これに対して、電子制御装置１が受信したイニシャル信号に権限コードが含まれており、スーパーバイザーモードが選択されていた場合には、モード選択フラグＦ＿ＳＰＶＭの値が「１」なので、ステップＳ２０４に進む。したがって、ステップＳ２０４からステップＳ２０６は、スーパーバイザーモー
ドが選択されていた場合にのみ実行される。
【００２７】
ステップＳ２０４では、スーパーバイザーモード設定部２３が診断機３１から入力された読み書きコマンドを許可し、読み書きコマンドで指定された入力値や制御値の読み出しを行う。入力値や制御値としては、例えばセンサの値や制御パラメータがあり、これらのデータは例えばＲＡＭ１２に記憶されている。続くステップＳ２０５では、スーパーバイザーモード設定部２３が診断機３１から入力されたコマンドを許可する。その結果、制御値や出力値が変更される。制御値や出力値としては、例えばセンサの値や制御パラメータがあり、これらのデータは例えばＲＡＭ１２に書き込まれる。さらに、ステップＳ２０６では、スーパーバイザーモード設定部２３が、診断機３１から入力されたコマンドを許可する。その結果、例えばＲＯＭ１３に書き込まれているプログラムや、制御データが読み出みだされる。プログラムや、制御データは、ＣＰＵ１１において実行され、車両の制御に用いられる。
【００２８】
なお、図３に示す通信モード処理は、一部の処理のみを実行しても良い。例えば、書き込みコマンドが、ＥＥＰＲＯＭ１４への書き込みコマンドのみの場合もある。また、スーパーバイザーモードは、ステップＳ２０１，Ｓ２０２を実行せずに、ステップＳ２０４からステップＳ２０６の処理のみを実行しても良い。
【００２９】
以上の処理の具体例について、図４のタイミングチャートを参照して説明する。図４（ａ）及び（ｂ）は電子制御装置１と診断機３１の間の通信を示し、図４（ｃ）及び（ｄ）は電子制御装置１とセッティングツール３２の間の通信を示している。また、図４の各図の横軸は時間を示し、縦軸は上から電源のＯＮ／ＯＦＦ、診断機３１又はセッティングツール３２からの信号入力、電子制御装置１の動作モードをそれぞれ示している。
【００３０】
まず、図４（ａ）及び図４（ｂ）を参照して、スーパーバイザーモードの処理について説明する。
図４（ａ）に示すように、電子制御装置１の電源がＯＮになってから所定時間、例えば２秒は通信モード設定部２４によって待機モードに設定される。そして、待機モードの間に、診断機３１は、通信ラインを介してイニシャル信号を電子制御装置１に入力する。診断機３１から入力されるイニシャル信号は、権限コードと移行コマンドとを含む。権限コードは、例えば、信号レベルが規定時間だけＬｏｗレベルになった後、信号レベルがＨｉｇｈレベルに切り替わる。Ｈｉｇｈレベルは所定時間継続するものとする。権限コードの後には、移行コマンドが入力される。移行コマンドは、予め定められた信号パターンからなる。
【００３１】
ここでは、イニシャル信号が権限コードを有し、かつ移行コマンドまでが２秒以内に入力されたので、モード選択部２１はスーパーバイザーモードであると判定する。その結果、モード選択部２１によって通信モードがスーパーバイザーモードに設定される。
スーパーバイザーモードでは、診断機３１から読み書きコマンドが電子制御装置１に入力される。読み書きコマンドは、例えば、ＥＥＰＲＯＭ１４の読み出しコマンドや、ＥＥＰＲＯＭ１４の書き込みコマンド、ＲＡＭ１２の読み出しコマンド、ＲＡＭ１２の書き込みコマンド、ＲＯＭ１３の読み出しコマンドの少なくとも１つを含む。これらコマンドによる処理は、図３のステップＳ２０１，Ｓ２０２、及びステップＳ２０４〜Ｓ２０６の少なくとも１つに相当する。
【００３２】
また、図４（ｂ）に示すように、電源投入後２秒以降に権限コードを含むイニシャル信号があった場合は不正コマンドとみなし、モード選択部２１が以降の通信を遮断する通信遮断モードを選択する。なお、２秒が経過した後にスーパーバイザーモードに入りたい場合には、電子制御装置１の電源を一度落としてから再度投入し、電源ＯＮ時から２秒以内
に権限コードを含むイニシャル信号を電子制御装置１に入力する。
【００３３】
次に、図４（ｃ）及び図４（ｄ）を参照して、ユーザーモードの処理について説明する。
図４（ｃ）に示すように、セッティングツール３２からは、移行コマンドのみのイニシャル信号が電子制御装置１に入力される。移行コマンドは、予め定められた信号パターンからなる。モード選択部２１は、権限コードが入力されておらず、かつ移行コマンドが入力されたので、通信モードをユーザーモードに設定する。
ユーザーモードでは、セッティングツール３２から読み書きコマンドが電子制御装置１に入力される。読み書きコマンドは、例えば、ＥＥＰＲＯＭ１４の読み出しコマンドや、ＥＥＰＲＯＭ１４の書き込みコマンドの少なくとも１つを含む。これらコマンドによる処理は、図２のステップＳ２０１やステップＳ２０２に相当する。
【００３４】
また、図４（ｄ）に示すように、イニシャル信号が移行コマンドのみであった場合には、電源投入後の所定時間以降であっても図２の通信モード処理が実施される。これにより、ユーザレベルでの車両のセッティングが可能になる。
【００３５】
以上、説明したように、この電子制御装置１では、書き込み目的に応じてセキュリティレベルを変更するようにしたので、キャリブレーションなどの変更が容易になった。電子制御装置１は、市場に供給された後、制御用のプログラムが使用するマップデータの係数、いわゆるキャリブレーションデータの設定を変更する場合がある。このとき、権限コードを用いずに移行コマンドのみを入力すると、ユーザーモードで電子制御装置１にアクセスできるようになる。この場合には、複雑な認証処理などが不要になるので、キャリブレーションデータの設定変更などの軽微な調整が迅速に行える。これにより、ユーザーに要求される手順を簡略化でき、利便性が向上する。例えば、レース用の車両などの場合には、コースやライダーの特性に合わせて、車両制御用のパラメータを制限された範囲内で微調整することが可能になる。
【００３６】
また、制御用のプログラム本体を変更したい場合などのように、車両に比較的に大きい影響を与える変更を行うためには、権限コードを入力してスーパーバイザーモードに入る必要がある。権限コードを診断機３１など限られた装置からのみ出力できるようにすれば、電子制御装置１の外部から制御用のプログラムに容易にアクセスすることができなくなる。従って、電子制御装置１のデータに対するセキュリティが向上する。
【００３７】
また、スーパーバイザーモードは、電子制御装置１の電源投入から所定時間の間だけ選択可能にしたので、電子制御装置１のデータに対するセキュリティがさらに向上する。
さらに、電子制御装置１の電源投入から所定時間が経過した後でも、ユーザーモードには、入ることができるようにした。このため、キャリブレーションデータの調整などを適切なタイミングで実施することが可能になる。
イニシャル信号に権限コードが含まれているにも拘らず、移行コマンドを有しない場合には以降の通信を遮断するようにしたので、電子制御装置１のセキュリティを向上できる。
【００３８】
なお、電子制御装置１は、スーパーバイザーモードに入るための認証処理を追加しても良い。また、スーパーバイザーモード及びユーザーモードの両方に対して認証処理を追加しても良い。認証処理は、読み書きコマンドの入力前に実行しても良いし、読み書きコマンドの入力後に実行しても良い。
【符号の説明】
【００３９】
１  電子制御装置
２  外部装置
１１  ＣＰＵ（制御部）
１２  ＲＡＭ
１３  ＲＯＭ
１４  ＥＥＰＲＯＭ
２１  モード選択部
２２  ユーザーモード設定部（第１のモード設定部）
２３  スーパーバイザーモード設定部（第２のモード設定部）
２４  通信モード設定部
２５  機器制御部
【図１】
0005700660.tif 000002
【図２】
0005700660.tif 000003
【図３】
0005700660.tif 000004
【図４】
0005700660.tif 000005