IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ 株式会社ミクニの特許一覧

特開2025-41346制御ユニット更新方法、及び制御ユニット更新装置
<>
  • 特開-制御ユニット更新方法、及び制御ユニット更新装置 図1
  • 特開-制御ユニット更新方法、及び制御ユニット更新装置 図2
  • 特開-制御ユニット更新方法、及び制御ユニット更新装置 図3
  • 特開-制御ユニット更新方法、及び制御ユニット更新装置 図4
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2025041346
(43)【公開日】2025-03-26
(54)【発明の名称】制御ユニット更新方法、及び制御ユニット更新装置
(51)【国際特許分類】
   G06F 8/65 20180101AFI20250318BHJP
   B60R 16/02 20060101ALI20250318BHJP
【FI】
G06F8/65
B60R16/02 660U
【審査請求】未請求
【請求項の数】6
【出願形態】OL
(21)【出願番号】P 2023148580
(22)【出願日】2023-09-13
(71)【出願人】
【識別番号】000177612
【氏名又は名称】株式会社ミクニ
(74)【代理人】
【識別番号】110002664
【氏名又は名称】弁理士法人相原国際知財事務所
(72)【発明者】
【氏名】伊藤 寛之
【テーマコード(参考)】
5B376
【Fターム(参考)】
5B376CA52
5B376GA08
(57)【要約】
【課題】更新の意図しない中断に対しても更新再開時のデータ破損を防止する。
【解決手段】制御ユニット更新方法は、接続された電子制御ユニット20のセキュリティ有無を判定する判定工程と、電子制御ユニット20がセキュリティ対応機器である場合にプログラム更新の開始情報を不揮発メモリに記憶する開始情報記憶工程と、電子制御ユニット20のプログラム更新を実行する更新実行工程と、を含み、判定工程の前に、開始情報の有無を判定し、開始情報が記憶されている場合に電子制御ユニット20をリセットする。
【選択図】図1
【特許請求の範囲】
【請求項1】
接続された電子制御ユニットのセキュリティ有無を判定する判定工程と、
前記電子制御ユニットがセキュリティ対応機器である場合にプログラム更新の開始情報を不揮発メモリに記憶する開始情報記憶工程と、
前記電子制御ユニットのプログラム更新を実行する更新実行工程と、を含み、
前記判定工程の前に、前記開始情報の有無を判定し、前記開始情報が記憶されている場合に前記電子制御ユニットをリセットする、制御ユニット更新方法。
【請求項2】
前記更新実行工程が完了した場合に、前記開始情報を前記不揮発メモリから消去する、請求項1に記載の制御ユニット更新方法。
【請求項3】
前記開始情報は、前記プログラム更新のための設定情報が保存された設定ファイルに記憶される、請求項1又は2に記載の制御ユニット更新方法。
【請求項4】
接続された電子制御ユニットの更新プログラムを記憶する記憶部と、
前記更新プログラムを前記電子制御ユニットへ送信する通信部と、
前記通信部を介して前記電子制御ユニットのセキュリティ有無を判定し、前記電子制御ユニットがセキュリティ対応機器である場合にプログラム更新の開始情報を不揮発メモリに記憶して前記電子制御ユニットの前記プログラム更新を実行する制御部と、を備え、
前記制御部は、セキュリティ有無を判定する前に前記開始情報の有無を判定し、前記開始情報が記憶されている場合に前記電子制御ユニットをリセットする、制御ユニット更新装置。
【請求項5】
前記制御部は、前記プログラム更新が完了した場合に前記開始情報を前記不揮発メモリから消去する、請求項4に記載の制御ユニット更新装置。
【請求項6】
前記開始情報は、前記プログラム更新のための設定情報が保存された設定ファイルに記憶される、請求項4又は5に記載の制御ユニット更新装置。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、制御ユニット更新方法、及び制御ユニット更新装置に関する。
【背景技術】
【0002】
自動車に代表される乗り物では、搭載される多数の電子機器からなるシステムを電子制御するための電子制御ユニット(ECU:Electronic Control Unit)が広く使用されており、ECUに組み込まれたソフトウェア(ファームウェア)の実行により各電子機器を連係した複雑な制御が行なわれている。
【0003】
また、上記のようなECUは、ソフトウェアが更新されることにより機能を修正、又は拡張するいわゆるリプロ処理が行われる。近年では、車両の外部からアクセス可能な無線ネットワークにより、外部のセンタから遠隔で更新プログラムを受信して自動的にリプロ処理を行うOTA(Over The Air)に係る技術も開発されている。例えば、特許文献1に開示された従来技術では、車両に搭載された複数のECUのソフトウェア更新を管理するための車載更新装置が設けられ、各ECUの識別情報や更新状態を管理しつつ外部サーバから受信した暗号化された更新プログラムでリプロ処理が実行されている。
【0004】
一方、OTAに未対応の既存のECUでは、上記のような更新管理機能が車両側に搭載されておらず、例えば整備工場で作業員が更新対象のECUを更新用端末に有線接続してリプロ処理を行うことが一般的である。また、このようなECUは、自己の識別情報や更新状態を管理する仕様となっておらず、更新用端末へ出力可能な情報も限定される。
【0005】
更に、旧型のECUの中には、セキュリティ未対応の機種もあり、初期プログラム、及び更新プログラムが暗号化されることなく実装される仕様も存在する。また、オートバイ、バギー、又は小型農業用車両等の比較的安価な乗り物においてもセキュリティが未対応の安価且つ省演算量のECUが使用されることがあり、暗号化されない更新プログラムでECUが上書きされることによりリプロ処理が行われる。
【先行技術文献】
【特許文献】
【0006】
【特許文献1】特開2022-66260号公報
【発明の概要】
【発明が解決しようとする課題】
【0007】
上記のような状況において、OTAに未対応のECU向け更新用端末は、まず更新対象のECUがセキュリティ対応ECUであるかセキュリティ未対応ECUであるかを判定し、セキュリティ対応ECUであると判定された場合には更新プログラムを暗号化してリプロ処理を実行することになる。しかしながら、更新用端末は、セキュリティ対応ECUの更新中に意図しないシャットダウンが生じることがある。この場合、更新対象のECUは、更新用端末が再起動して更新を再開するときには既にセキュリティが解除された状態である。このため、更新用端末は、更新対象のECUをセキュリティ未対応ECUであると誤判定し、暗号化されない更新プログラムで上書きすることによりデータを破損させる虞が生じる。
【0008】
本発明は、このような状況に鑑みてなされたものであり、その目的とするところは、更新の意図しない中断に対しても更新再開時のデータ破損を防止することができる制御ユニット更新方法、及び制御ユニット更新装置を提供することにある。
【課題を解決するための手段】
【0009】
<本発明の第1の態様>
本発明の第1の態様は、接続された電子制御ユニットのセキュリティ有無を判定する判定工程と、前記電子制御ユニットがセキュリティ対応機器である場合にプログラム更新の開始情報を不揮発メモリに記憶する開始情報記憶工程と、前記電子制御ユニットのプログラム更新を実行する更新実行工程と、を含み、前記判定工程の前に、前記開始情報の有無を判定し、前記開始情報が記憶されている場合に前記電子制御ユニットをリセットする、制御ユニット更新方法である。
【0010】
本発明の第1の態様に係る制御ユニット更新方法は、プログラム更新の対象となる電子制御ユニットがセキュリティ対応機器であると判定された場合に、プログラム更新の実行前に開始情報を不揮発メモリに記憶する。また、電子制御ユニットのセキュリティ有無を判定する前に当該開始情報が記憶されているかを確認し、記憶されている場合には電子制御ユニットをリセットすることで電子制御ユニットのセキュリティを有効な状態に戻しておく。これにより、更新中における更新装置側の意図しないシャットダウンが生じた場合であっても、電子制御ユニットがセキュリティ未対応機器であると誤判定されることはなく、誤ったデータの上書きを回避することができる。従って、本発明に係る制御ユニット更新方法によれば、更新の意図しない中断に対しても更新再開時のデータ破損を防止することができる。
【0011】
<本発明の第2の態様>
本発明の第2の態様は、上記した本発明の第1の態様において、前記更新実行工程が完了した場合に、前記開始情報を前記不揮発メモリから消去する、制御ユニット更新方法である。
【0012】
本発明の第2の態様に係る制御ユニット更新方法によれば、例えばプログラム更新の正常終了を設定ファイルにより確認することができる他、プログラム更新のやり直しが必要となった場合に同一の設定ファイルをそのまま使用することができる。
【0013】
<本発明の第3の態様>
本発明の第3の態様は、上記した本発明の第1又は2の態様において、前記開始情報は、前記プログラム更新のための設定情報が保存された設定ファイルに記憶される、制御ユニット更新方法である。
【0014】
本発明の第3の態様に係る制御ユニット更新方法によれば、リプロ処理で必ず読み込まれる設定ファイルをプログラム更新の開始情報の保存先にすることで、複雑な作り込みを行うことなく開始情報を管理することができる。
【0015】
<本発明の第4の態様>
本発明の第4の態様は、接続された電子制御ユニットの更新プログラムを記憶する記憶部と、前記更新プログラムを前記電子制御ユニットへ送信する通信部と、前記通信部を介して前記電子制御ユニットのセキュリティ有無を判定し、前記電子制御ユニットがセキュリティ対応機器である場合にプログラム更新の開始情報を不揮発メモリに記憶して前記電子制御ユニットの前記プログラム更新を実行する制御部と、を備え、前記制御部は、セキュリティ有無を判定する前に前記開始情報の有無を判定し、前記開始情報が記憶されている場合に前記電子制御ユニットをリセットする、制御ユニット更新装置である。
【0016】
本発明の第4の態様に係る制御ユニット更新装置は、プログラム更新の対象となる電子制御ユニットがセキュリティ対応機器であると判定された場合に、プログラム更新の実行前に開始情報を不揮発メモリに記憶する。また、電子制御ユニットのセキュリティ有無を判定する前に当該開始情報が記憶されているかを確認し、記憶されている場合には電子制御ユニットをリセットすることで電子制御ユニットのセキュリティを有効な状態に戻しておく。これにより、更新中における制御ユニット更新装置側の意図しないシャットダウンが生じた場合であっても、電子制御ユニットがセキュリティ未対応機器であると誤判定されることはなく、誤ったデータの上書きを回避することができる。従って、本発明に係る制御ユニット更新方法によれば、更新の意図しない中断に対しても更新再開時のデータ破損を防止することができる。
【0017】
<本発明の第5の態様>
本発明の第5の態様は、上記した本発明の第4の態様において、前記制御部は、前記プログラム更新が完了した場合に前記開始情報を前記不揮発メモリから消去する、制御ユニット更新装置である。
【0018】
本発明の第5の態様に係る制御ユニット更新装置によれば、例えばプログラム更新の正常終了を設定ファイルにより確認することができる他、プログラム更新のやり直しが必要となった場合に同一の設定ファイルをそのまま使用することができる。
【0019】
<本発明の第6の態様>
本発明の第6の態様は、上記した本発明の第4又は5の態様において、前記開始情報は、前記プログラム更新のための設定情報が保存された設定ファイルに記憶される、制御ユニット更新装置である。
【0020】
本発明の第6の態様に係る制御ユニット更新装置は、リプロ処理で必ず読み込まれる設定ファイルをプログラム更新の開始情報の保存先にすることで、複雑な作り込みを行うことなく開始情報を管理することができる。
【発明の効果】
【0021】
本発明によれば、更新の意図しない中断に対しても更新再開時のデータ破損を防止することができる制御ユニット更新方法、及び制御ユニット更新装置を提供することができる。
【図面の簡単な説明】
【0022】
図1】制御ユニット更新装置、及び電子制御ユニットの構成を模式的に表す構成図である。
図2】判定コマンドのみによる制御ユニット更新方法を示すフローチャートである。
図3】設定ファイルを抽象化して表す概念図である
図4】本発明に係る制御ユニット更新方法を示すフローチャートである。
【発明を実施するための形態】
【0023】
以下、図面を参照し、本発明の実施の形態について詳細に説明する。尚、本発明は以下に説明する内容に限定されるものではなく、その要旨を変更しない範囲において任意に変更して実施することが可能である。また、実施の形態の説明に用いる図面は、いずれも構成部材を模式的に示すものであって、理解を深めるべく部分的な強調、拡大、縮小、又は省略などを行なっており、構成部材の縮尺や形状等を正確に表すものとはなっていない場合がある。
【0024】
図1は、制御ユニット更新装置10、及び電子制御ユニット20の構成を模式的に表す構成図である。制御ユニット更新装置10は、詳細を後述する制御ユニット更新方法に従って、ネットワークNを介して接続される電子制御ユニット20のプログラムを更新するための端末である。
【0025】
より具体的には、制御ユニット更新装置10は、本実施形態においては汎用のPC(Personal Computer)であり、主要構成として記憶部11、制御部12、通信部13、及び入出力部14を含む。
【0026】
記憶部11は、外部から供給される各種データやプログラムを保存・記憶するための不揮発性メモリ、及びハードディスク等からなる補助記憶装置であり、電子制御ユニット20をアップデートするための更新プログラムPuが予め記憶されている。
【0027】
制御部12は、各種の演算処理を行う中央処理装置(CPU:Central Processing Unit)から構成され、基本ソフト及びアプリケーションソフトのプログラムに従って動作する。本実施形態の制御部12は、整備士等の作業員による操作に基づいて主に電子制御ユニット20のプログラム更新の処理(リプロ処理)を行う。また、制御部12は、プログラム更新を行う前に、詳細を後述する設定ファイルFsを読み込んで上記した記憶部11に保存する。
【0028】
通信部13は、制御ユニット更新装置10の外部に接続された機器とネットワークNを介して通信を行うためのモジュールであり、例えばCAN(Control Area Network)又はEthernet等の規格の通信プロトコルに対応している。
【0029】
入出力部14は、例えば表示装置としてのディスプレイや入力装置としてのキーボードを含み、作業員が制御ユニット更新装置10を操作して電子制御ユニット20のリプロ処理を行うインターフェースである。
【0030】
電子制御ユニット20は、車両、オートバイ、バギー、又は小型農業用車両等の乗り物に搭載され、乗り物に搭載された多数の電子機器からなるシステムをソフトウェア(ファームウェア)により電子制御する機器である。本実施形態の電子制御ユニット20は、主要構成としてECU通信部21、ECU制御部22、及びECU記憶部23を備える。
【0031】
ECU通信部21は、電子制御ユニット20のプログラム更新を行う場合に制御ユニット更新装置10の通信部13との間で情報の授受を行う通信モジュールである。ECU制御部22は、ソフトウェア(ファームウェア)の実行により例えば車両等に搭載されるシステムを制御する公知のマイコン制御回路である。ECU記憶部23は、当該ソフトウェアを記憶すると共に、ソフトウェアの実行に必要な各種データを記憶する。
【0032】
ここで、電子制御ユニット20は、個々の仕様によりセキュリティ有無が異なる場合がある。より具体的には、電子制御ユニット20のプログラムは、セキュリティ対応の機種では暗号化されてECU記憶部23に記憶され、セキュリティ未対応の機種では暗号化されずにECU記憶部23に記憶される。このため、制御ユニット更新装置10は、プログラムの更新の前に接続先の電子制御ユニット20に判定コマンドを送信し、その応答により電子制御ユニット20のセキュリティ有無を判断することになる。
【0033】
ただし、以下に説明するように、判定コマンドのみによる判定では、電子制御ユニット20の状態によってはセキュリティ有無を誤判定する可能性があり、そのままでは更新プログラムが破損する虞が生じる。ここでは、まず、本発明の制御ユニット更新方法を採用しない場合の課題について説明する。図2は、判定コマンドのみによる制御ユニット更新方法を示すフローチャートである。
【0034】
制御ユニット更新装置10は、作業員により操作に基づき、電子制御ユニット20が接続された状態で更新アプリケーションを実行することにより、図2に示すプログラム更新の一連の手順を開始する。
【0035】
更新アプリケーションが実行されると、制御部12は、接続された電子制御ユニット20のリプロ処理に必要な各種パラメータが記録された設定ファイルFsを記憶部11から読み込む(ステップS1)。ここで、設定ファイルFsは、更新対象の電子制御ユニット20の仕様に合わせて更新プログラムPuを調整するためのパラメータや、リプロ処理自体に必要な設定情報が記載されたファイルである。
【0036】
図3は、設定ファイルFsを抽象化して表す概念図である。設定ファイルFsは、初期化ファイルとも呼ばれるテキストデータであり、各種パラメータが箇条書きされている。例えばステップS1で読み込まれるデータは、図3左図に示されるように、1~n行目までのそれぞれにパラメータP_1、P_2、P_3、…、P_nの値が設定されている。
【0037】
図2の説明に戻り、設定ファイルFsの読み込みが完了すると、制御部12は、電子制御ユニット20にセキュリティ有無を判定するための判定コマンドを送信し、その応答により電子制御ユニット20がセキュリティ対応機器であるか否かを判定する(ステップS2)。
【0038】
このとき、制御部12は、電子制御ユニット20がセキュリティ対応機器でないと判定された場合には(ステップS2でNo)、更新プログラムPuを暗号化することなく電子制御ユニット20に送信するリプロ処理を実行する(ステップS3)。これにより更新プログラムPuは、ECU記憶部23に記憶される。そして、当該リプロ処理の完了によりプログラム更新の手順が終了する。
【0039】
一方、電子制御ユニット20がセキュリティ対応機器であると判定された場合には(ステップS2でYes)、制御部12は、電子制御ユニット20との間で暗号化に必要な情報の授受を行う。例えば、暗号化としてワンタイムパスワードの一種である公知のS/Key方式を採用する場合、制御部12は、電子制御ユニット20との通信により暗号化キーを取得する(ステップS4)。
【0040】
また、制御部12は、電子制御ユニット20に送信すべき更新プログラムPuに対し暗号化キーを使用して暗号化し(ステップS5)、暗号化リプロ処理を実行する(ステップS6)。そして、当該暗号化リプロ処理の完了によりプログラム更新の手順が終了する。
【0041】
ただし、判定コマンドのみによる上記の制御ユニット更新方法では、暗号化リプロ処理(ステップS6)の途中で制御ユニット更新装置10や更新アプリケーションに意図しないシャットダウンが生じた場合に問題が生じることがある。
【0042】
すなわち、暗号化リプロ処理が中断すると、電子制御ユニット20は、更新プログラムPuを受信できるようセキュリティが解除された状態のままリプロ処理が中断することになる。一方、制御ユニット更新装置10は、シャットダウンにより制御部12の揮発メモリにおける更新制御に関する情報が消失するため、再起動後に一連の制御ユニット更新方法の手順をやり直すことにより更新作業を再開することになる。
【0043】
しかしながら、このとき電子制御ユニット20は、セキュリティが解除された状態であるため、制御ユニット更新装置10から判定コマンドを受信してもセキュリティ対応機器であるとの応答を返すことができず、誤ってセキュリティ未対応機器であると判定させてしまう(ステップS2でNo)。
【0044】
これにより制御ユニット更新装置10は、電子制御ユニット20がセキュリティ対応機器であるにも拘らず、暗号化されない更新プログラムPuでリプロ処理を行なってしまい、ECU記憶部23に記憶されたデータを破損させる虞が生じる。
【0045】
そこで、本発明に係る制御ユニット更新方法では、このような状況であっても電子制御ユニット20のセキュリティ有無を適切に判定してデータ破損を防止する手順が行われる。図4は、本発明に係る制御ユニット更新方法を示すフローチャートである。
【0046】
本発明に係る制御ユニット更新方法の更新アプリケーションが実行されると、制御部12は、図3左図の設定ファイルFsを記憶部11から読み込む(ステップS10)。また、制御部12は、設定ファイルFsの読み込みが完了すると、後述する更新処理の開始情報が設定ファイルFsに記載されているか否かを判定する(ステップS11)。ここで、制御ユニット更新装置10のプログラム更新が初回である場合、又は、前回のプログラム更新が正常に完了した場合には、当該開始情報が記載されていないことになる。
【0047】
そして、制御部12は、更新処理の開始情報が設定ファイルFsに記載されている場合には(ステップS11でYes)、電子制御ユニット20にリセットコマンドを送信して再起動させる(ステップS12)。また、更新処理の開始情報が設定ファイルFsに記載されていない場合には、制御部12は、電子制御ユニット20をリセットすることなく次の手順に進む。
【0048】
次に、制御部12は、電子制御ユニット20にセキュリティ有無を判定するための判定コマンドを送信し、その応答により電子制御ユニット20がセキュリティ対応機器であるか否かを判定する(ステップS13、判定工程)。
【0049】
このとき、制御部12は、電子制御ユニット20がセキュリティ対応機器でないと判定された場合には(ステップS13でNo)、更新プログラムPuを暗号化することなく電子制御ユニット20に送信するリプロ処理を実行する(ステップS14)。これにより更新プログラムPuは、ECU記憶部23に記憶される。そして、当該リプロ処理の完了によりプログラム更新の手順が終了する。
【0050】
一方、電子制御ユニット20がセキュリティ対応機器であると判定された場合には(ステップS13でYes)、制御部12は、電子制御ユニット20との間で暗号化に必要な情報の授受を行う。公知のS/Key方式を採用する場合、制御部12は、電子制御ユニット20との通信により暗号化キーを取得する(ステップS15)。
【0051】
また、制御部12は、電子制御ユニット20に送信すべき更新プログラムPuに対し暗号化キーを使用して暗号化する(ステップS16)。そして、制御部12は、プログラム更新の実行準備が整ったところで、プログラム更新の開始情報を不揮発メモリとしての記憶部11に記憶する。本実施形態においては、当該開始情報は、図3右図に示すように、記憶部11に記憶された設定ファイルFsに追記されることにより、プログラム更新の開始が登録される(ステップS17、開始情報記憶工程)。
【0052】
尚、プログラム更新の開始情報は、制御ユニット更新装置10がシャットダウンした場合であっても保存される限り保存先が限定されるものでなく、例えば記憶部11の他のファイルや新規作成したファイルに保存されてもよい。ただし、設定ファイルFsは、プログラム更新のための設定情報が保存されておりリプロ処理で必ず読み込まれるファイルである。このため、プログラム更新の開始情報の保存先を設定ファイルFsにすることで、複雑な作り込みを行うことなく開始情報を管理することができる。
【0053】
開始情報の書き込みが完了すると、制御部12は、暗号化された更新プログラムPuを電子制御ユニット20に送信することにより暗号化リプロ処理を実行する(ステップS18、更新実行工程)。
【0054】
そして、暗号化リプロ処理が正常に完了すると、制御部12は、開始情報を設定ファイルFsから消去し(ステップS19)、当該プログラム更新の一連の手順が終了する。すなわち、設定ファイルFsは、図3右図の状態から図3左図の状態に戻ることになる。これにより、例えばプログラム更新の正常終了を設定ファイルFsにより確認することができる他、プログラム更新のやり直しが必要となった場合に同一の設定ファイルFsをそのまま使用することができる。
【0055】
以上のように、本発明に係る制御ユニット更新方法によれば、セキュリティ対応機器としての電子制御ユニット20のプログラム更新中に(ステップS18)、制御ユニット更新装置10や更新アプリケーションが意図せずシャットダウンした場合であっても、制御ユニット更新装置10の再起動による更新再開時には、設定ファイルFsに開始情報が登録されている(ステップS11でYes)。このため、制御部12は、セキュリティ有無を判定する前に電子制御ユニット20のリセットをかけることでセキュリティが有効な状態に戻すことができる。これにより制御部12は、その後のセキュリティ有無の判定において(ステップS13)、電子制御ユニット20がセキュリティ未対応機器であると誤判定することはなく、誤ったデータの上書きによるデータ破損を防止することができる。
【0056】
以上で実施形態の説明を終えるが、本発明は上記した実施形態に限定されるものではない。例えば、上記の実施形態では、暗号化にS/Key方式を採用する場合を例示したが、制御ユニット更新装置10と電子制御ユニット20との間で予め暗号化情報が取り決められた固定key方式を採用してセキュリティを向上させてもよい。
【符号の説明】
【0057】
10 制御ユニット更新装置
11 記憶部
12 制御部
13 通信部
14 入出力部
20 電子制御ユニット
21 ECU通信部
22 ECU制御部
23 ECU記憶部
Pu 更新プログラム
Fs 設定ファイル
図1
図2
図3
図4