特開2018-205896(P2018-205896A)IP Force 特許公報掲載プロジェクト 2015.5.11 β版

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

▶ 株式会社アドヴィックスの特許一覧
<>
  • 特開2018205896-ソフトウェア管理システム 図000003
  • 特開2018205896-ソフトウェア管理システム 図000004
  • 特開2018205896-ソフトウェア管理システム 図000005
  • 特開2018205896-ソフトウェア管理システム 図000006
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】特開2018-205896(P2018-205896A)
(43)【公開日】2018年12月27日
(54)【発明の名称】ソフトウェア管理システム
(51)【国際特許分類】
   G06F 8/65 20180101AFI20181130BHJP
【FI】
   G06F9/06 630A
【審査請求】未請求
【請求項の数】3
【出願形態】OL
【全頁数】8
(21)【出願番号】特願2017-108140(P2017-108140)
(22)【出願日】2017年5月31日
(71)【出願人】
【識別番号】301065892
【氏名又は名称】株式会社アドヴィックス
(74)【代理人】
【識別番号】100089082
【弁理士】
【氏名又は名称】小林 脩
(74)【代理人】
【識別番号】100190333
【弁理士】
【氏名又は名称】木村 群司
(74)【代理人】
【識別番号】100130188
【弁理士】
【氏名又は名称】山本 喜一
(72)【発明者】
【氏名】牧田 和也
【テーマコード(参考)】
5B376
【Fターム(参考)】
5B376CA05
5B376CA16
5B376CA86
5B376FA11
5B376GA07
(57)【要約】
【課題】ソフトウェアの更新管理機能の長寿命化が可能なソフトウェア管理システムを提供する。
【解決手段】本発明は、車両の外部から無線により送信された更新ソフトウェアを受信する更新管理装置2と、更新管理装置2に通信可能に接続された、それぞれ異なる車載装置を制御する複数のECU3と、を備え、更新管理装置2は、各ECU3のソフトウェア情報のうち、ソフトウェアを更新しても変化しない所定の不変情報を不揮発性メモリ21にて管理する不変情報管理部23と、各ECU3のソフトウェア情報のうち、ソフトウェアの更新の可否を判断するための情報である更新判断情報を揮発性メモリ22にて管理する更新判断情報管理部24と、を備え、各ECU3は、更新管理装置2との間での通信開始以後に、現在の更新判断情報を送信する更新判断情報送信部31を備える。
【選択図】図1
【特許請求の範囲】
【請求項1】
複数の車載装置のソフトウェアの更新を管理する、車両に搭載されたソフトウェア管理システムであって、
前記車両の外部から無線により送信された更新ソフトウェアを受信する更新管理装置と、
前記更新管理装置に通信可能に接続された、それぞれ異なる前記車載装置を制御する複数のECUと、
を備え、
前記更新管理装置は、
各前記ECUのソフトウェア情報のうち、前記ソフトウェアを更新しても変化しない所定の不変情報を不揮発性メモリにて管理する不変情報管理部と、
各前記ECUの前記ソフトウェア情報のうち、前記ソフトウェアの更新により変更され得るものであり前記ソフトウェアの更新の可否を判断するための情報である更新判断情報を揮発性メモリにて管理する更新判断情報管理部と、
を備え、
各前記ECUは、前記更新管理装置との間での通信開始以後に、現在の前記更新判断情報を送信する更新判断情報送信部を備えるソフトウェア管理システム。
【請求項2】
前記更新管理装置は、前記更新ソフトウェアを受信した場合、前記更新判断情報管理部が全ての前記ECUの前記更新判断情報を管理した後に、前記ソフトウェアの更新を実施するか否かの判定を行うソフトウェア更新判定部を備える請求項1に記載のソフトウェア管理システム。
【請求項3】
前記更新判断情報送信部は、前記ソフトウェアの更新が実施された場合、更新後の前記更新判断情報を前記更新管理装置に送信する請求項1又は2に記載のソフトウェア管理システム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、車載装置のソフトウェアの更新を管理するソフトウェア管理システムに関する。
【背景技術】
【0002】
従来から、無線通信により車両の外部から送信された更新ソフトウェアを、車両が受信して、車載装置のECUのソフトウェアを更新するシステムが開発されている。このシステムでは、車両に搭載された複数のECUのソフトウェアのバージョン情報を一括で管理するソフトウェア管理装置を備えることが好ましい。このようなソフトウェア管理装置としては、例えば特開2005−349878号公報に記載されている。このソフトウェア管理装置を含む従来の管理装置では、ソフトウェアのバージョン情報がハードディスクドライブ(磁気記憶装置)やフラッシュメモリのような不揮発性メモリに保存されて管理されている。
【先行技術文献】
【特許文献】
【0003】
【特許文献1】特開2005−349878号公報
【発明の概要】
【発明が解決しようとする課題】
【0004】
ここで、本発明者は、上記無線によりソフトウェアを更新する技術の状況に着目し、ソフトウェアの更新管理についてフラッシュメモリのように書き換え回数に制約のあるメモリを用いた場合の改良すべき課題に到達した。つまり、管理装置がソフトウェア情報を一括で管理しているため、各ECUのソフトウェアが更新される度にメモリの記憶情報を書き換える必要があり、その分、メモリの書き換え回数が多くなり、メモリが寿命(書き換え回数の限界)を迎えやすくなる。メモリが寿命を迎えると、記憶情報の書き換えが困難となり、ソフトウェアの更新が精度良く行われない可能性がある。特に無線による更新が可能となることで、更新の敷居が低くなり、不具合対策目的のみならず機能向上や機能追加目的での更新も行われ、ソフトウェアの更新頻度が高まることが予想される。
【0005】
本発明はこのような事情に鑑みて為されたものであり、ソフトウェアの更新管理機能の長寿命化が可能なソフトウェア管理システムを提供することを目的とする。
【課題を解決するための手段】
【0006】
本発明のソフトウェア管理システムは、複数の車載装置のソフトウェアの更新を管理する、車両に搭載されたソフトウェア管理システムであって、前記車両の外部から無線により送信された更新ソフトウェアを受信する更新管理装置と、前記更新管理装置に通信可能に接続された、それぞれ異なる前記車載装置を制御する複数のECUと、を備え、前記更新管理装置は、各前記ECUのソフトウェア情報のうち、前記ソフトウェアを更新しても変化しない所定の不変情報を不揮発性メモリにて管理する不変情報管理部と、各前記ECUの前記ソフトウェア情報のうち、前記ソフトウェアの更新により変更され得るものであり前記ソフトウェアの更新の可否を判断するための情報である更新判断情報を揮発性メモリにて管理する更新判断情報管理部と、を備え、各前記ECUは、前記更新管理装置との間での通信開始以後に、現在の前記更新判断情報を送信する更新判断情報送信部を備える。
【発明の効果】
【0007】
本発明によれば、更新判断情報管理部が揮発性メモリにて更新判断情報(例えばバージョン情報)を管理しているため、ソフトウェアが更新される度に不揮発性メモリを書き換える必要がない。フラッシュメモリのような不揮発性メモリは構成上、書き換え回数に限界があるが、揮発性メモリは理論上、半永久的に書き換えが可能である。本発明によれば、書き換え回数が多い更新判断情報を、半永久的に書き換え可能な揮発性メモリにて管理するため、不揮発性メモリの書き換え回数が低減され、ソフトウェアの更新管理機能の長寿命化が可能となる。
【図面の簡単な説明】
【0008】
図1】本実施形態のソフトウェア管理システムの構成図である。
図2】本実施形態の不揮発性メモリ及び揮発性メモリの保存例を示す説明図である。
図3】本実施形態の車両通信開始時の処理を示すフローチャートである。
図4】本実施形態の更新ソフトウェア受信時の処理を示すフローチャートである。
【発明を実施するための形態】
【0009】
以下、本発明の実施形態について図に基づいて説明する。説明に用いる各図は概念図である。本実施形態のソフトウェア管理システム1は、複数の車載装置のソフトウェアの更新を管理する、車両に搭載されたシステムである。ソフトウェア管理システム1は、図1に示すように、マスタECU(「更新管理装置」に相当する)2と、複数のスレーブECU3と、を備えている。マスタECU2は、例えばOTA(Over The Air) ECUであって、車両の外部から無線により送信された更新ソフトウェアを受信するECU(CPU等を備える電子制御ユニット)である。車両には、例えばサーバ等の外部装置Aから送信された更新ソフトウェアを受信するアンテナ(例えばフィルムアンテナ)Bが設置されており、マスタECU2はアンテナBから情報を受信する。マスタECU2は受信部を有するといえる。サーバ等の外部装置Aは、例えばOTAセンターに設置されている。マスタECU2は、更新ソフトウェアを所定のメモリに保存する。また、マスタECU2は、更新ソフトウェアを更新対象のスレーブECU3に送信する機能を有している。
【0010】
詳細に、本実施形態のマスタECU2は、不揮発性メモリ21と、揮発性メモリ22と、不変情報管理部23と、更新判断情報管理部24と、ソフトウェア更新判定部25と、を備えている。
【0011】
不変情報管理部23は、各スレーブECU3のソフトウェア情報のうち、ソフトウェアを更新しても変化しない所定の不変情報を不揮発性メモリ21にて管理するように構成されている。具体的に、不変情報管理部23は、マスタECU2とスレーブECU3との通信が初めて開始された際に、スレーブECU3のソフトウェアの個別情報を読み取り(受信し)、当該個別情報を不揮発性メモリ21に書き込む。つまり、本実施形態では、所定の不変情報は、各スレーブECU3の個別情報であり、例えば図2に示すように、メーカ、車両(車名)、ECU(車載装置)、及びソフトバリエーションである。マスタECU2に接続されている全てのスレーブECU3の個別情報が、不揮発性メモリ21に保存される。なお、当該個別情報は予め不揮発性メモリ21に記憶されていても良く、この場合でも、不変情報管理部23は当該個別情報を不揮発性メモリ21にて管理(必要に応じて読み出す等)しているといえる。管理とは、少なくとも保存された情報を読み出す機能ともいえる。
【0012】
更新判断情報管理部24は、各スレーブECU3のソフトウェア情報のうち、ソフトウェアの更新により変更され得るものでありソフトウェアの更新の可否を判断するための情報である更新判断情報を揮発性メモリ22にて管理するように構成されている。更新判断情報は、例えばソフトウェアのバージョン情報である。本実施形態の更新判断情報は、バージョン情報を含む。以下、更新判断情報がバージョン情報であることを例に本実施形態について説明する。更新判断情報管理部24は、スレーブECU3から送信されるバージョン情報を受信し、揮発性メモリ22に書き込む。マスタECU2に接続されている全てのスレーブECU3のバージョン情報が、揮発性メモリ22に保存される。バージョン情報は、例えばID(識別情報)が付与されていること又はIDを含んでいることにより、いずれのスレーブECU3の情報であるかを識別可能となっている。
【0013】
ソフトウェア更新判定部25は、更新ソフトウェアを受信した場合、ソフトウェアの更新を実施するか否かを判定するように構成されている。具体的に、ソフトウェア更新判定部25は、揮発性メモリ22に保存された更新対象のスレーブECU3のバージョン情報と、更新ソフトウェアのバージョン情報とを比較して、更新の必要性があるか否かを判定する。ソフトウェア更新判定部25は、両者のバージョン情報が一致している場合、更新を実施しないと判定する。一方、ソフトウェア更新判定部25は、更新ソフトウェアのバージョン情報が揮発性メモリに保存された対象のスレーブECU3のバージョン情報よりも新しい場合、原則として、更新を実施すると判定する。ソフトウェア更新判定部25は、更新を実施すると判定した場合、更新ソフトウェアを対象のスレーブECU3に送信する。当該更新ソフトウェアの送信は、ユーザから更新の承諾を得た後に行うように設定されても良い。
【0014】
ここで、本実施形態のソフトウェア更新判定部25は、外部装置AからマスタECU2が更新ソフトウェアを受信した場合、更新判断情報管理部24が全てのスレーブECU3のバージョン情報を管理した後に、ソフトウェアの更新を実施するか否かの判定を行うように構成されている。つまり、ソフトウェア更新判定部25は、揮発性メモリ22に全てのスレーブECU3のバージョン情報が記憶された後に、ソフトウェアを更新するか否かを判定する。例えば、マスタECU2は、更新ソフトウェアを受信する度に全てのバージョン情報が揃っているか否かを判定し、揃っていない場合には更新の可否を判定せず、揃っている場合に更新の可否を判定する。例えば、1回目の更新ソフトウェア受信時に全スレーブECU3のバージョン情報が揃っていなくても、2回目の更新ソフトウェア受信時に揃っていれば、その際に更新の可否を判定する。
【0015】
これにより、スレーブECU3間でソフトウェアのバージョンの対応をとらなくてはならない場合にも、適切にソフトウェアの更新を実施することができる。例えば、第1のスレーブECU3のソフトウェアがバージョンXである場合、第2のスレーブECU3のソフトウェアはバージョンZでなくてはならない等(バージョンYだと不都合がある等)の更新条件に応じて、ソフトウェア更新判定部25が更新の可否や順番等を適切に判定することができる。
【0016】
複数のスレーブECU3は、マスタECU2に通信可能に接続されており、それぞれ異なる車載装置を制御するECUである。例えば、図1に示すように、第1のスレーブECU3はエンジン(ENG)を制御するECUであり、第2のスレーブECU3は変速機(T/M)を制御するECUであり、第3のスレーブECU3はステアリング(STR)を制御するECUであり、第4のスレーブECU3はブレーキ装置(ESC)を制御するECUである。各スレーブECU3は、一般のECU同様、図示しないが、ソフトウェア等を記憶する不揮発性メモリと、制御を実行する演算処理部(CPU)と、を備えている。
【0017】
さらに、各スレーブECU3は、マスタECU2との間での通信開始以後に、現在のソフトウェアのバージョン情報を送信する更新判断情報送信部31を備えている。マスタECU2とスレーブECU3との間の通信は、例えばイグニッションがオンされた際に開始される。本実施形態の更新判断情報送信部31は、通信が開始された時、自身のソフトウェアのバージョン情報をマスタECU2に送信する。当該送信は一度だけ行われれば良い。マスタECU2が、各スレーブECU3のソフトウェアのバージョン情報を読み取るともいえる。車両通信は主にCANにより構成されている。
【0018】
車両通信開始時の処理の流れを、図3を参照して説明する。電源が投入され(S101)、イニシャルチェックが完了すると(S102)、車両通信が開始される(S103)。そして、各スレーブECU3の更新判断情報送信部31がマスタECU2にバージョン情報を送信する(S104)。マスタECU2の更新判断情報管理部24は、受信した各バージョン情報を揮発性メモリ22に保存する(S105)。そして、通常の処理に移行する。
【0019】
さらに、本実施形態の更新判断情報送信部31は、ソフトウェアの更新が実施された場合、更新後のバージョン情報をマスタECU2に送信するように構成されている。更新判断情報管理部24は、受信した更新後のバージョン情報を揮発性メモリ22に上書きして管理情報を更新する。これにより、マスタECU2がソフトウェアの更新の完了を認識することができる上、更新判断情報管理部24が最新のバージョン情報を揮発性メモリ22にて管理することができる。なお、更新判断情報送信部31の機能は、スレーブECU3のCPU等が実行する機能の1つといえる。
【0020】
ここで、本実施形態のソフトウェア更新処理の流れについて図4を参照して説明する。まず、マスタECU2がソフトウェアの更新情報を受信すると(S201)、ソフトウェア更新判定部25が全スレーブECU3からバージョン情報を受信済みであるか否か、すなわち揮発性メモリ22に全てのスレーブECU3のバージョン情報が保存されているか否かが判定される(S202)。全スレーブECU3のバージョン情報が保存されている場合(S202:Yes)、ソフトウェア更新判定部25は、不揮発性メモリ21に保存された車両メーカの情報を参照して、更新ソフトウェアの対象の車両メーカと自車両のメーカとが一致しているか否かを判定する(S203)。車両メーカが一致している場合(S203:Yes)、ソフトウェア更新判定部25は、更新ソフトウェアの対象の車両(車名)と、不揮発性メモリ21に保存された自車両の車名とが一致しているか否かを判定する(S204)。車名が一致している場合(S204:Yes)、ソフトウェア更新判定部25は、不揮発性メモリ21を参照して、更新ソフトウェアの対象のスレーブECU3が自車両に搭載されているか否かを判定する(S205)。
【0021】
更新対象のスレーブECU3が自車両に搭載されている場合(S205:Yes)、ソフトウェア更新判定部25は、不揮発性メモリ21を参照して、更新ソフトウェアの対象のソフトバリエーションと、更新対象のスレーブECU3のソフトバリエーションとが一致しているか否かを判定する(S206)。両者のソフトバリエーションが一致している場合(S206:Yes)、ソフトウェア更新判定部25は、揮発性メモリ22を参照して、更新ソフトウェアのバージョンが更新対象のソフトウェアのバージョンよりも新しいか否かを判定する(S207)。更新ソフトウェアのバージョンが自車両のものよりも新しい場合(S207:Yes)、ソフトウェア更新判定部25は、更新を実施すると判定し、対象のスレーブECU3に更新ソフトウェアを送信してソフトウェアの更新を実行する(S208)。
【0022】
そして更新完了後、更新されたスレーブECU3の更新判断情報送信部31が更新後のバージョン情報をマスタECU2に送信する(S209)。マスタECU2は、更新したスレーブECU3について、更新前のバージョン情報を削除し、更新後のバージョン情報を揮発性メモリ22に書き込む(S210)。これにより、更新処理は終了し、通常処理に移行する。また、ステップS202〜S207の何れかにおいて「No」となると、更新処理は終了し、通常処理に移行する。また、例えば、ステップS207において、ソフトウェア更新判定部25は、更新ソフトウェアのバージョンと更新対象外のスレーブECU3のソフトウェアのバージョンとの関係から、更新の可否や更新順を判定しても良い。
【0023】
本実施形態のソフトウェア管理システム1によれば、更新判断情報管理部24が揮発性メモリ22にてバージョン情報を管理しているため、ソフトウェアが更新される度に不揮発性メモリ21を書き換える必要がない。つまり、本実施形態によれば、更新と一括管理により書き換え回数が多くなるバージョン情報を、理論上半永久的に書き換え可能な揮発性メモリ22にて保存・管理するため、書き換え回数に限界がある不揮発性メモリ21の書き換え回数が低減され、ソフトウェアの更新管理機能の長寿命化が可能となる。
【0024】
また、マスタECUとしての機能を兼ねるナビゲーション装置等(不揮発性メモリとしてハードディスクドライブを有する装置)が搭載されていない車両に対してマスタECUを搭載する場合、マスタECUの不揮発性メモリ(21)として書き換え回数に制約のある例えばEEPROM又はフラッシュメモリを採用することで、上記効果(ソフトウェア管理機能の長寿命化)を発揮させつつ、不揮発性メモリにハードディスクドライブを採用する場合と比べてマスタECUの小型化が可能となる。
【0025】
(その他)
本発明は、上記実施形態に限られない。揮発性メモリ22は、バージョン情報以外に、ソフトウェアの更新により変更される情報(変更情報)を保存するように構成されても良い。つまり、更新判断情報は、バージョン情報に限られず、例えば、ある機能(機能Qとする)がソフトウェアに入っているか否かにより更新の可否を判断する場合、当該機能Qの有無に関する情報が更新判断情報となり得る。本実施形態の揮発性メモリ22は、少なくともバージョン情報を含む変更情報を保存するといえる。また、更新管理装置は、マスタECU2だけに限らず、例えば、互いに通信可能なマスタECUとゲートウェイECUとで構成されても良い。この場合、例えばマスタECUが更新ソフトウェアを受信し、ゲートウェイECUが更新ソフトウェアを記憶し、スレーブECUに送信するように構成されても良い。また、スレーブECU3は、予めグループ分けされた所定のグループ内のECUであっても良い。
【0026】
また、ソフトウェア更新判定部25は、揮発性メモリ22に全てのスレーブECU3のバージョン情報が記憶されていない状態であっても、更新対象のソフトウェアのバージョン情報が記憶されている場合、その状態で更新判定を行うように構成されても良い。また、更新方法は、公知の技術を用いることができる。また、ソフトウェアの更新は、ユーザの承認後や車両電源がオフされた後(例えばイグニッションがオフされた後)等、所定のタイミングで開始させることができる。
【符号の説明】
【0027】
1…ソフトウェア管理システム、2…マスタECU(更新管理装置)、21…不揮発性メモリ、22…揮発性メモリ、23…不変情報管理部、24…更新判断情報管理部、25…ソフトウェア更新判定部、3…スレーブECU、31…更新判断情報送信部、A…外部装置。
図1
図2
図3
図4