(57)【要約】【課題】省スペース化を図りつつ、データの更新履歴を確実に記録する【解決手段】メーカー側のデータ処理装置２から電子制御装置３の記憶部２１に制御データが書き込まれると、ハッシュコード生成部３１が制御データに対応するハッシュコードを作成する。ハッシュコードは、第２の保存データ４２として記録される。第２の保存データ４２は、既存のハッシュコードに新しいハッシュコードを追加したデータ構造を有する。データ処理装置２側にも同様の構成の第１の保存データ４１が記憶されているので、２つの保存データ４１，４２を比較すると、メーカーが意図しないデータ書き換えの有無を調べることができる。【選択図】図１
2014056381.tif 000002
【特許請求の範囲】
【請求項１】
車両に搭載された制御対象機器の制御データを記憶する記憶部を備え、前記記憶部に記憶された制御データに基づいて前記制御対象機器を制御する電子制御装置であって、
前記記憶部に記憶されている制御データが変更されたとき、変更後の制御データに対応してユニークなコードを生成するコード生成部と、
前記コードを記録するコード記録部と、
を含んで構成されたことを特徴とする車両の電子制御装置。
【請求項２】
前記コード記録部は、前記コードが新しく生成されたときは、既に記録されている前記コードに新たなコードを追加するように構成したことを特徴とする請求項１に記載の車両の電子制御装置。
【請求項３】
前記コード記録部は、制御データが更新された順番に前記コードを配列して記憶するように構成されていることを特徴とする請求項１又は請求項２に記載の車両の電子制御装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、車両の電子制御装置に関する。
【背景技術】
【０００２】
車両には、エンジンなどの機器を制御する電子制御装置が搭載されており、電子制御装置には、機器の制御に使用される制御データが予めフラッシュＲＯＭ（Read Only Memory）に記憶されている。制御データには、制御プログラムや制御値が含まれ、制御プログラムをＣＰＵ（Central Processing Unit）で実行したり、ＣＰＵの演算に制御値を用いたりすることによってエンジンなどを制御している。そして、制御プログラムの仕様変更などがあった場合には、メーカーやディーラーによってフラッシュＲＯＭの内容が書き換えられる。
【０００３】
このように、電子制御装置のフラッシュＲＯＭの内容は、外部からのアクセスによって書き換えが可能になっている。また、従来の電子制御装置では、制御データを書き換えた履歴を保存するように構成されている。
【０００４】
例えば、四輪自動車では、エンジンなどを制御する電子制御装置に加えて、他の電子制御装置、例えばナビゲーション装置の制御装置を搭載し、電子制御装置の制御データを書き換えたときには、変更履歴情報を他の電子制御装置に書き込む。変更履歴情報には、更新用の制御データの受信日時、更新対象となる電子制御装置、更新用の制御データのバージョン情報、更新処理完了日時が含まれる。（例えば、特許文献１参照）
【０００５】
このようにして他の電子制御装置に更新履歴情報を記録することによって、例えば、車両のディーラーがユーザによるデータの書き換えの有無を確認できるようになる。また、車両のメーカーは、車両のテスト等で使用した制御データを確認したり、更新すべき制御データに抜けがないか確認したりすることが可能になる。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開２０１１−８９４号公報
【発明の概要】
【発明が解決しようとする課題】
【０００７】
しかしながら、電子制御装置を搭載する車両が、例えば、自動二輪車のような小型の車両であった場合には、省スペース化やコスト低減の観点から、他の電子制御装置を搭載することが困難であった。このようなケースでは、データの更新履歴を管理することが困難であった。
本発明は、このような事情を鑑みてなされたものであり、省スペース化を図りつつ、データの更新履歴を確実に記録することを目的とする。
【課題を解決するための手段】
【０００８】
本発明によれば、車両に搭載された制御対象機器の制御データを記憶する記憶部を備え、前記記憶部に記憶された制御データに基づいて前記制御対象機器を制御する電子制御装置であって、前記記憶部に記憶されている制御データが変更されたとき、変更後の制御データに対応してユニークなコードを生成するコード生成部と、前記コードを記録するコード記録部と、を含んで構成されたことを特徴とする車両の電子制御装置が提供される。
【０００９】
また、本発明によれば、前記コード記録部は、前記コードが新しく生成されたときは、既に記録されている前記コードに新たなコードを追加するように構成したことを特徴とする請求項１に記載の車両の電子制御装置が提供される。
【００１０】
さらに、本発明によれば、前記コード記録部は、制御データが更新された順番に前記コードを配列して記憶するように構成されていることを特徴とする請求項１又は請求項２に記載の車両の電子制御装置が提供される。
【発明の効果】
【００１１】
本発明によれば、制御データに対応してユニークなコードを作成することによって、更新履歴を他の電子制御装置に作成することなく、データの更新履歴を確認することが可能になる。
【図面の簡単な説明】
【００１２】
【図１】図１は、本発明の実施の形態に係る電子制御装置を含むデータ更新システムの概略構成を示すブロック図である。
【図２】図２は、本発明の実施の形態に係る電子制御装置を含むデータ更新システムにおいて、ユーザからのアクセスがあった場合を説明する図である。
【発明を実施するための最良の形態】
【００１３】
本発明を実施するための形態について以下に詳細に説明する。
図１に車両の電子制御装置のデータ更新システムの概略構成を示す。
データ更新システム１は、車両のメーカーで使用するデータ処理装置２と、車両に搭載された電子制御装置３とを含んで構成されている。データ処理装置２は、ディーラーに設けられても良い。
【００１４】
データ処理装置２は、制御プログラムや制御値などを含む制御データを記録する制御データ格納部１１と、制御データを特徴付けるユニークなデータからなるハッシュコードを作成するハッシュコード出力部１２と、ハッシュコードを保存するハッシュコード格納部１３と、複数のハッシュコードを比較するハッシュコード比較部１４とに機能分割できる。
【００１５】
制御データ格納部１１及びハッシュコード格納部１３には、読み書きが可能なメモリが用いられている。ハッシュコード出力部１２は、例えば、バイナリコードから整数値やアルファベットからなるハッシュコードを作成するハッシュ・アルゴリズムが搭載されている。ハッシュコード比較部１４は、メーカー側で保存されているハッシュコードからなる第１の保存データ４１と、車両の電子制御装置側に保存されているハッシュコードのデータとを比較し、両者が一致するか否かを判定する処理を行う。
【００１６】
車両の電子制御装置３は、記憶部２１と、ＣＰＵ２２とを含んで構成されている。記憶部２１には、フラッシュＲＯＭが用いられ、制御プログラムや、制御値など、車両の制御に必要な制御データが記憶されている。ＣＰＵ２２は、ハッシュコードを生成するハッシュコード生成部３１と、ハッシュコードを第２の保存データ４２として記録するハッシュコード記録部３２と、機器制御部３３とに機能分割できる。機器制御部３３は、記憶部２１に記憶された制御データを用いて電装品やエンジンなどの制御対象機器３４を制御する信号などを生成する。
【００１７】
次に、データの更新時の処理について、電子制御装置３の記憶部２１に記憶されている制御プログラムを更新する場合を例にして説明する。
最初に、メーカー側のデータ処理装置２と電子制御装置３をデータ通信可能に接続する
。そして、データ処理装置２の制御データ格納部１１から更新用の制御プログラムのバイナリコードを、電子制御装置３の記憶部２１に送信する。
【００１８】
このとき、制御データ格納部１１は、電子制御装置３に送信した制御プログラムと同じバイナリコードをデータ処理装置２のハッシュコード出力部１２に受け渡す。ハッシュコード出力部１２は、予め用意されているハッシュ・アルゴリズムを用いて制御プログラムのバイナリコードからハッシュコードを作成する。ハッシュコードは、制御プログラムよりもデータ量が遥かに小さく、制御プログラムに対してユニークに作成されるデータである。このようにして作成されたハッシュコードは、ハッシュコード格納部１３に第１の保存データ４１として格納される。ハッシュコード格納部１３は、既に格納されているハッシュコードがある場合には、既存のハッシュコードを新しいハッシュコードに置き換えずに、新たなハッシュコードを既存のハッシュコードの後に追加して第１の保存データ４１を作成し、保存する。
【００１９】
例えば、今回のデータ更新の前に電子制御装置３に対するデータの書き込み処理が２回実行されていた場合、更新前の第１の保存データ４１に２つのハッシュコードを既に有している。既存の２つのハッシュコードを、例えば、「５ｅｃ８ｅｅｅ６２ｅ６６４５７ｂ」と、「４１ｆ２ｄ２ｄａ５ｄ８３ｅｃｆ６」とする。ここに、今回のデータ更新に伴ってハッシュコード出力部１２が新しいハッシュコード、「７ａａ０３７１ｆｆ９３ｄ０１４４」を作成すると、既存の２つのハッシュコードの後に新しいハッシュコードが１つ追加され、これら３つのハッシュコードが第１の保存データ４１になる。
【００２０】
即ち、今回の更新処理によって、第１の保存データ４１の内容は、
「５ｅｃ８ｅｅｅ６２ｅ６６４５７ｂ」
「４１ｆ２ｄ２ｄａ５ｄ８３ｅｃｆ６」
「７ａａ０３７１ｆｆ９３ｄ０１４４」
になる。この第１の保存データ４１の内容を調べると、電子制御装置３に対して３回データの書き込みが行われ、最初に処理でハッシュコード「５ｅｃ８ｅｅｅ６２ｅ６６４５７ｂ」に相当するデータが電子制御装置３に書き込まれたことが分かる。同様に、２回目の処理と３回目の処理で、それぞれ「４１ｆ２ｄ２ｄａ５ｄ８３ｅｃｆ６」と「７ａａ０３７１ｆｆ９３ｄ０１４４」に相当するデータが電子制御装置３に書き込まれたことが分かる。
【００２１】
一方、車両の電子制御装置３では、記憶部２１に今まで記憶されていた制御プログラムをデータ処理装置２から新しく送信された制御プログラムに書き換える。以降は、更新された新しい制御プログラムを用いて機器制御部３３が制御対象機器３４を制御する。さらに、記憶部２１は、新しい制御プログラムのバイナリコードをＣＰＵ２２のハッシュコード生成部３１に送る。ハッシュコード生成部３１は、データ処理装置２のハッシュコード出力部１２と同じハッシュ・アルゴリズムを用いて新しい制御プログラムのバイナリコードからハッシュコードを作成する。作成したハッシュコードは、ハッシュコード記憶部３２に第２の保存データ４２として格納される。ハッシュコード記憶部３２は、既に格納されているハッシュコードがある場合には、既存のハッシュコードを新しいハッシュコードに置き換えずに、新たなハッシュコードを既存のハッシュコードの後に追加して第２の保存データ４２を作成し、保存する。
【００２２】
ここで、前記のように、メーカー側のハッシュコード出力部１２と、車両側のハッシュコード生成部３１は、同じハッシュ・アルゴリズムを使用している。従って、メーカー側のハッシュコード格納部１３に格納された第１の保存データ４１と、車両側のハッシュコード記録部３２に格納された第２の保存データ４２は、改ざん等がなければ同一の内容になる。さらに、新しいハッシュコードを順次追加して記憶するので、記憶されるハッシュ
コードの数や、配列順番も同じになる。このために、電子制御装置３が適切に使用されていれば、第１の保存データ４１と第２の保存データ４２は、同じものになる。即ち、データ処理装置２のハッシュコード比較部１４で２つの保存データ４１，４２を比較すると、両者は一致する。
一致する。
【００２３】
これに対して、電子制御装置３のデータに対してメーカーやディーラーが意図しない書き換え作業が実施された場合について説明する。
例えば、図２に示すように、車両のユーザが、パーソナルコンピュータ５１を車両の電子制御装置３に接続し、制御データ格納部５２から独自に作成した車両の制御に必要なデータ、例えば制御プログラムを電子制御装置３の記憶部２１に書き込むと、電子制御装置３の記憶部２１の制御プログラムがユーザから入力された制御プログラムに書き換えられる。
【００２４】
このとき、電子制御装置３のハッシュコード生成部３１は、ユーザに書き込まれた制御プログラムについてのハッシュコード、例えば「９２ｃ７４７ｆ６５７０７１４３ｂ」を生成する。ユーザによって書き込まれた制御プログラムは、正規の制御プログラムとは異なるので、ハッシュコードの値は異なるものになる。そして、ハッシュコード記録部３２は、不正に書き込まれた制御プログラムに相当するハッシュコード「９２ｃ７４７ｆ６５７０７１４３ｂ」を追加した第２の保存データ４２を作成して保存する。
【００２５】
この後、図１に示すように、電子制御装置３にメーカーのデータ処理装置２を接続し、ハッシュコード比較部１４でハッシュコード格納部１３に格納されている第１の保存データ４１と、車両の電子制御装置３のハッシュコード記録部３２に記憶されている第２の保存データ４２が一致するか調べると、ユーザによって制御プログラムが書き換えられていた場合には、書き換え回数分だけハッシュコード記録部３２の第２の保存データ４２に含まれるハッシュコードの数が増える。
【００２６】
例えば、２回目と３回目の書き換え作業の間にユーザによるデータ書き換えが有った場合について具体的に説明する。このとき、メーカー側のデータ処理装置２の第１の保存データ４１は、例えば、
「５ｅｃ８ｅｅｅ６２ｅ６６４５７ｂ」
「４１ｆ２ｄ２ｄａ５ｄ８３ｅｃｆ６」
「７ａａ０３７１ｆｆ９３ｄ０１４４」
である。
【００２７】
これに対して、電子制御装置３の第２の保存データ４２は、
「５ｅｃ８ｅｅｅ６２ｅ６６４５７ｂ」
「４１ｆ２ｄ２ｄａ５ｄ８３ｅｃｆ６」
「９２ｃ７４７ｆ６５７０７１４３ｂ」
「７ａａ０３７１ｆｆ９３ｄ０１４４」
になる。
【００２８】
メーカー側に保存されている第１の保存データ４１が３つのハッシュコードを有するのに対して、電子制御装置３内の第２の保存データ４２は４つのハッシュコードを有する。第２の保存データ４２は、内容の異なるハッシュコードが１つ余分に含まれる。このために、ハッシュコード比較部１４は、両者が不一致、即ちメーカーが意図しない書き換えが実行されたと判定する。さらに、ハッシュコードの配列から、２回目にデータを書き込んだときから、３回目にデータを書き込むまでの間に、ユーザによりデータの書き換えがあったことがわかる。
【００２９】
以上のように、この実施の形態では、外部からデータが書き込まれたら、そのデータを特徴付けるユニークなデータ、例えばハッシュコードを作成し、保存するようにした。ハッシュコードのデータ量は、元の制御データに比べて十分に小さいので、電子制御装置３に搭載されている小さいメモリであっても更新履歴を保存することができる。保存データ４１，４２は、データが書き込まれる毎に上書きされるのではなく、既存のデータに新しいハッシュコードを追加するように構成したので、保存データ４１，４２の内容を調べることによって、メーカーやディーラーが意図しないデータ更新の有無を簡単に確認できる。更新履歴を保存する他の制御装置を設ける必要がなくなるので、装置構成が簡略化、小型化でき、低コスト化が図れる。
【００３０】
また、この実施の形態では、保存データ４１，４２が既存のハッシュコードを消去せずに、追加するように構成したので、一度書き換えた制御データを後に元のデータに書き直した場合でも、意図しない書き換え作業の発生を確認できる。例えば、先の例で、「９２ｃ７４７ｆ６５７０７１４３ｂ」に相当する制御データを書き込んだ後、再び元の制御データに戻した場合、第２の保存データ４２は、
「５ｅｃ８ｅｅｅ６２ｅ６６４５７ｂ」
「４１ｆ２ｄ２ｄａ５ｄ８３ｅｃｆ６」
「９２ｃ７４７ｆ６５７０７１４３ｂ」
「４１ｆ２ｄ２ｄａ５ｄ８３ｅｃｆ６」
「７ａａ０３７１ｆｆ９３ｄ０１４４」
になる。即ち、３行目と４行目に本来であれば存在しないハッシュコードが存在するので、更新履歴を確実に把握できる。
【００３１】
さらに、この実施の形態では、保存データ４１，４２に時系列に追加するように構成したので、意図しない書き換えが実行されたタイミングを確認できる。先の例では、「４１ｆ２ｄ２ｄａ５ｄ８３ｅｃｆ６」のデータ更新後、かつ「７ａａ０３７１ｆｆ９３ｄ０１４４」のデータ更新前に意図しない書き換えが実行されたことを容易に確認できる。
【００３２】
なお、本発明の実施の形態に限定されずに広く応用できる。
例えば、保存データ４１，４２に保存されるデータは、制御データの特徴をユニークに現すことができ、かつデータ容量の少ないデータであれば良く、ハッシュコードに限定されない。
また、保存データ４１，４２は、ハッシュコードに、車両を特定する情報を関連付けた構成にしたり、ハッシュコードにデータの書き換え時間を関連付けた構成にしたりしても良い。ハッシュコードに車両を特定する情報を関連付けると、データ処理装置２において複数の車種や車両の更新履歴を確実に検査することが可能になる。
【符号の説明】
【００３３】
２  データ処理装置
３  電子制御装置
２１  記憶部
３１  コード生成部
３２  コード記録部
３３  機器制御部
３４  制御対象機器
４２  第２の保存データ
【図１】
2014056381.tif 000003
【図２】
2014056381.tif 000004