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

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

▶ トヨタ自動車株式会社の特許一覧

特許7388301サーバ、管理方法、管理プログラム及びソフトウェア更新装置
<>
  • 特許-サーバ、管理方法、管理プログラム及びソフトウェア更新装置 図1
  • 特許-サーバ、管理方法、管理プログラム及びソフトウェア更新装置 図2
  • 特許-サーバ、管理方法、管理プログラム及びソフトウェア更新装置 図3
  • 特許-サーバ、管理方法、管理プログラム及びソフトウェア更新装置 図4
  • 特許-サーバ、管理方法、管理プログラム及びソフトウェア更新装置 図5
  • 特許-サーバ、管理方法、管理プログラム及びソフトウェア更新装置 図6
  • 特許-サーバ、管理方法、管理プログラム及びソフトウェア更新装置 図7
  • 特許-サーバ、管理方法、管理プログラム及びソフトウェア更新装置 図8
  • 特許-サーバ、管理方法、管理プログラム及びソフトウェア更新装置 図9
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2023-11-20
(45)【発行日】2023-11-29
(54)【発明の名称】サーバ、管理方法、管理プログラム及びソフトウェア更新装置
(51)【国際特許分類】
   G06F 8/00 20180101AFI20231121BHJP
   B60R 16/02 20060101ALI20231121BHJP
   B60R 16/023 20060101ALI20231121BHJP
【FI】
G06F8/00
B60R16/02 660U
B60R16/023 P
【請求項の数】 8
(21)【出願番号】P 2020113422
(22)【出願日】2020-06-30
(65)【公開番号】P2022011973
(43)【公開日】2022-01-17
【審査請求日】2022-05-23
(73)【特許権者】
【識別番号】000003207
【氏名又は名称】トヨタ自動車株式会社
(74)【代理人】
【識別番号】110001276
【氏名又は名称】弁理士法人小笠原特許事務所
(72)【発明者】
【氏名】高綱 雄介
【審査官】松平 英
(56)【参考文献】
【文献】特開2019-182231(JP,A)
【文献】特開2005-254986(JP,A)
【文献】特開2019-036238(JP,A)
【文献】特開2004-021331(JP,A)
【文献】特開2001-147120(JP,A)
【文献】特開2007-182139(JP,A)
【文献】特開2012-079109(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
B60R 9/00-11/06
16/00-21/13
21/34-99/00
G06F 8/00-8/38
8/60-8/77
9/44-9/445
9/451
(57)【特許請求の範囲】
【請求項1】
車両と通信可能なサーバであって、
前記車両に搭載された複数の電子制御ユニットのうち少なくとも1つの電子制御ユニットが実行するソフトウェアの設定情報を、前記車両のユーザを識別するユーザ識別情報に関連付けた利用情報を記憶する記憶部と、
前記複数の電子制御ユニットのうち1つであるソフトウェア更新装置から前記ソフトウェア更新装置が指定したユーザ識別情報を受信し、前記指定されたユーザ識別情報と前記利用情報とに基づいて、前記ユーザ識別情報に関連付けられた設定情報を前記ソフトウェア更新装置に送信する通信部とを備え、
前記ユーザ識別情報は、前記車両のキーとして用いられる携帯機の識別情報を含み、
前記通信部は、前記ユーザ識別情報に関連付けられた設定情報を、前記車両の電源がオフであるときに前記車両の解錠を行うための認証に用いる前記携帯機からの指示を受信してから前記車両の電源がオンにされる前までに、前記ソフトウェア更新装置に送信する、サーバ。
【請求項2】
前記通信部は、前記車両の利用が終了した後、前記車両を利用していたユーザのユーザ識別情報と、前記複数の電子制御ユニットのうち少なくとも1つの電子制御ユニットが実行していたソフトウェアの設定情報とを前記ソフトウェア更新装置から受信し、
前記通信部が受信した設定情報に基づいて、前記記憶部に記憶される前記利用情報を更新する制御部を備える、請求項1に記載のサーバ。
【請求項3】
プロセッサと、メモリと、記憶装置とを備えるコンピュータが実行する管理方法であって、
車両に搭載された複数の電子制御ユニットのうち少なくとも1つの電子制御ユニットが実行するソフトウェアの設定情報を、前記車両のユーザを識別するユーザ識別情報に関連付けた利用情報を記憶するステップと、
前記複数の電子制御ユニットのうち1つであるソフトウェア更新装置から前記ソフトウェア更新装置が指定したユーザ識別情報を受信するステップと、
前記指定されたユーザ識別情報と前記利用情報とに基づいて、前記ユーザ識別情報に関連付けられた設定情報を前記ソフトウェア更新装置に送信するステップとを含み、
前記ユーザ識別情報は、前記車両のキーとして用いられる携帯機の識別情報を含み、
前記送信するステップにおいて、前記ユーザ識別情報に関連付けられた設定情報を、前記車両の電源がオフであるときに前記車両の解錠を行うための認証に用いる前記携帯機からの指示を受信してから前記車両の電源がオンにされる前までに、前記ソフトウェア更新装置に送信する、管理方法。
【請求項4】
プロセッサと、メモリと、記憶装置とを備えるコンピュータに実行させる管理プログラムであって、
車両に搭載された複数の電子制御ユニットのうち少なくとも1つの電子制御ユニットが実行するソフトウェアの設定情報を、前記車両のユーザを識別するユーザ識別情報に関連付けた利用情報を記憶するステップと、
前記複数の電子制御ユニットのうち1つであるソフトウェア更新装置から前記ソフトウェア更新装置が指定したユーザ識別情報を受信するステップと、
前記指定されたユーザ識別情報と前記利用情報とに基づいて、前記ユーザ識別情報に関連付けられた設定情報を前記ソフトウェア更新装置に送信するステップとを含み、
前記ユーザ識別情報は、前記車両のキーとして用いられる携帯機の識別情報を含み、
前記送信するステップにおいて、前記ユーザ識別情報に関連付けられた設定情報を、前記車両の電源がオフであるときに前記車両の解錠を行うための認証に用いる前記携帯機からの指示を受信してから前記車両の電源がオンにされる前までに、前記ソフトウェア更新装置に送信する、管理プログラム。
【請求項5】
サーバと通信可能なソフトウェア更新装置であって、
車両のユーザを識別するユーザ識別情報を取得する取得部と、
前記ユーザ識別情報に関連付けられた、前記車両に搭載された複数の電子制御ユニットのうち少なくとも1つの電子制御ユニットが実行するソフトウェアの設定情報を前記サーバから取得する通信部と、
前記設定情報を前記少なくとも1つの電子制御ユニットに転送する制御部とを備え、
前記ユーザ識別情報は、前記車両のキーとして用いられる携帯機の識別情報を含み、
前記通信部は、前記ユーザ識別情報に関連付けられた設定情報を、前記車両の電源がオフであるときに前記車両の解錠を行うための認証に用いる前記携帯機からの指示を受信してから前記車両の電源がオンにされる前までに、前記サーバから取得する、ソフトウェア更新装置。
【請求項6】
前記通信部は、前記車両の利用が終了した後、前記ユーザ識別情報と、前記少なくとも1つの電子制御ユニットのソフトウェアの設定情報とを前記サーバに送信する、請求項に記載のソフトウェア更新装置。
【請求項7】
車両と通信可能なセンタであって、
前記車両に搭載された複数の電子制御ユニットのうち少なくとも1つの電子制御ユニットが実行するソフトウェアの設定情報を、前記車両のユーザを識別するユーザ識別情報に関連付けた利用情報を記憶する記憶部と、
前記複数の電子制御ユニットのうち1つであるOTAマスタから、前記OTAマスタが指定したユーザ識別情報を受信し、前記指定されたユーザ識別情報と前記利用情報とに基づいて、前記ユーザ識別情報に関連付けられた設定情報を前記OTAマスタに送信する通信部とを備え、
前記ユーザ識別情報は、前記車両のキーとして用いられる携帯機の識別情報を含み、
前記通信部は、前記ユーザ識別情報に関連付けられた設定情報を、前記車両の電源がオフであるときに前記車両の解錠を行うための認証に用いる前記携帯機からの指示を受信してから前記車両の電源がオンにされる前までに、ソフトウェア更新装置に送信する、センタ。
【請求項8】
センタと通信可能な制御装置であって、
車両のユーザを識別するユーザ識別情報を取得する取得部と、
前記ユーザ識別情報に関連付けられた、前記車両に搭載された複数の電子制御ユニットのうち少なくとも1つの電子制御ユニットが実行するソフトウェアの設定情報を前記センタから取得する通信部と、
前記設定情報を前記少なくとも1つの電子制御ユニットに転送する制御部とを備え、
前記ユーザ識別情報は、前記車両のキーとして用いられる携帯機の識別情報を含み、
前記通信部は、前記ユーザ識別情報に関連付けられた設定情報を、前記車両の電源がオフであるときに前記車両の解錠を行うための認証に用いる前記携帯機からの指示を受信してから前記車両の電源がオンにされる前までに、前記センタから取得する、OTAマスタ。
【発明の詳細な説明】
【技術分野】
【0001】
本開示は、電子制御ユニットのソフトウェアの設定情報を管理するサーバ、管理方法及び管理プログラム、並びに、車載されたソフトウェア更新装置に関する。
【背景技術】
【0002】
車両には、車両の動作を制御するための複数の電子制御ユニット(ECU)が搭載されている。ECUは、プロセッサと、RAMのような一時的な記憶部と、フラッシュROMのような不揮発性の記憶部とを備え、プロセッサが不揮発性の記憶部に記憶されるソフトウェアを実行することによりECUの制御機能を実現する。各ECUが記憶するソフトウェアは書き換え可能であり、より新しいバージョンのソフトウェアに更新することにより、各ECUの機能を改善したり、新たな機能を追加したりすることができる。
【0003】
ECUのソフトウェアを更新する技術として、車載ネットワークが備える通信機器とインターネット等の通信ネットワークとを無線で接続し、無線通信を介してセンタに設けられた配信サーバからソフトウェアをダウンロードし、ダウンロードしたソフトウェアをインストールすることによりECUのソフトウェア更新や追加を行うOTA(Over The Air)技術が知られている。
【0004】
ソフトウェアを配信するサーバでは、車両に搭載される複数のECUのソフトウェアのバージョン及びバージョンの組み合わせを、車両識別番号に基づいて管理することが一般的である。例えば、特許文献1には、車両に設けられたゲートウェイが、車両の識別番号と複数のECUの制御プログラムのバージョン情報とを管理サーバに送信し、管理サーバがリビジョンテーブルに基づいて制御プログラムの更新要否を判定し、必要な場合に更新プログラムをゲートウェイ宛に送信するシステムが記載されている。
【先行技術文献】
【特許文献】
【0005】
【文献】特開2018-181377号公報
【発明の概要】
【発明が解決しようとする課題】
【0006】
上述したOTAによりソフトウェアの更新や追加が可能な車両においては、ユーザの課金状況、ユーザ毎のOTAの許可/不許可の設定、ユーザの好みや過去の車両の利用履歴に基づく学習値等に応じて、車両で利用できるソフトウェア、ソフトウェアの実行により提供される機能の範囲、各機能の利用態様等がユーザ毎に異なることが想定される。
【0007】
近年、一人のユーザが複数台の車両を使用するケースや、カーシェアリング等で多数のユーザが1台の車両を共用するケースなど、車両の利用態様はユーザに応じて様々である。同一のユーザがどの車両を使用する場合でも、利用可能なソフトウェアの組み合わせやソフトウェアが提供する機能の範囲をなるべく同じにできれば、車両の利用のたびにユーザの使用感が大きく変わらないので、ユーザの利便性を向上させることができ好ましい。
【0008】
それ故に、本開示は、ユーザの使用感を大きく変化させることなく車両の利用を可能とするサーバ、管理方法及び管理プログラム、並びに、ソフトウェア更新装置を提供することを目的とする。
【課題を解決するための手段】
【0009】
本開示に係るサーバは、車両に搭載された複数の電子制御ユニットのうち少なくとも1つの電子制御ユニットが実行するソフトウェアの設定情報を、車両のユーザを識別するユーザ識別情報に関連付けた利用情報を記憶する記憶部と、複数の電子制御ユニットのうち1つであるソフトウェア更新装置からソフトウェア更新装置が指定したユーザ識別情報を受信し、指定されたユーザ識別情報と利用情報とに基づいて、ユーザ識別情報に関連付けられた設定情報をソフトウェア更新装置に送信する通信部とを備える。
【0010】
本開示に係る管理方法は、プロセッサと、メモリと、記憶装置とを備えるコンピュータが実行する方法であって、車両に搭載された複数の電子制御ユニットのうち少なくとも1つの電子制御ユニットが実行するソフトウェアの設定情報を、車両のユーザを識別するユーザ識別情報に関連付けた利用情報を記憶するステップと、複数の電子制御ユニットのうち1つであるソフトウェア更新装置からソフトウェア更新装置が指定したユーザ識別情報を受信するステップと、指定されたユーザ識別情報と利用情報とに基づいて、ユーザ識別情報に関連付けられた設定情報をソフトウェア更新装置に送信するステップとを含む。
【0011】
本開示に係る管理プログラムは、プロセッサと、メモリと、記憶装置とを備えるコンピュータに実行させる管理プログラムであって、車両に搭載された複数の電子制御ユニットのうち少なくとも1つの電子制御ユニットが実行するソフトウェアの設定情報を、車両のユーザを識別するユーザ識別情報に関連付けた利用情報を記憶するステップと、複数の電子制御ユニットのうち1つであるソフトウェア更新装置からソフトウェア更新装置が指定したユーザ識別情報を受信するステップと、指定されたユーザ識別情報と利用情報とに基づいて、ユーザ識別情報に関連付けられた設定情報をソフトウェア更新装置に送信するステップとを含む。
【0012】
本開示に係るソフトウェア更新装置は、車両のユーザを識別するユーザ識別情報を取得する取得部と、ユーザ識別情報に関連付けられた、車両に搭載された複数の電子制御ユニットのうち少なくとも1つの電子制御ユニットが実行するソフトウェアの設定情報をサーバから取得する通信部と、設定情報を少なくとも1つの電子制御ユニットに転送する制御部とを備える。
【発明の効果】
【0013】
本開示によれば、ユーザの使用感を大きく変化させることなく車両の利用を可能とするサーバ、管理方法及び管理プログラム、並びに、ソフトウェア更新装置を提供できる。
【図面の簡単な説明】
【0014】
図1】実施形態に係るネットワークシステムの全体構成を示すブロック図
図2図1に示したサーバの概略構成を示すブロック図
図3図1に示したソフトウェア更新装置の概略構成を示すブロック図
図4図1に示したサーバの機能ブロック図
図5図1に示したサーバが記憶する利用情報の一例を示す図
図6図1に示したソフトウェア更新装置の機能ブロック図
図7】実施形態に係るサーバが実行する制御処理の一例を示すフローチャート
図8】実施形態に係るソフトウェア更新装置が実行する設定処理の一例を示すフローチャート
図9】実施形態に係るソフトウェア更新装置が実行する更新処理の一例を示すフローチャート
【発明を実施するための形態】
【0015】
図1は、実施形態に係るネットワークシステムの全体構成を示すブロック図であり、図2は、図1に示したサーバの概略構成を示すブロック図であり、図3は、図1に示したソフトウェア更新装置の概略構成を示すブロック図である。
【0016】
図1に示すネットワークシステムは、車両に搭載された電子制御ユニット13a~13dのソフトウェアを更新するためのシステムであり、サーバ1(センタ)と、車両に搭載される車載ネットワーク2とを備える。また、図1のネットワークシステムは、ソフトウェア更新装置11及び電子制御ユニット13a~13eがソフトウェアを実行することにより提供する機能を制御することができる。
【0017】
サーバ1は、ネットワーク5を介して車両に搭載されたソフトウェア更新装置11と通信可能であり、ソフトウェア更新装置11及び電子制御ユニット13a~13eが実行する1以上のソフトウェアの設定情報を含む利用情報を管理する。
【0018】
図2に示すように、サーバ1は、CPU21と、RAM22と、記憶装置23と、通信装置24とを備える。記憶装置23は、ハードディスクやSSD等の読み書き可能な記憶媒体を備え、ソフトウェアの更新管理を実行するためのプログラムや、後述する利用情報を記憶する。サーバ1において、CPU21は、記憶装置23から読み出したソフトウェアを、RAM22を作業領域として用いて実行することにより、後述する制御処理を実行する。通信装置24は、インターネット等のネットワーク5を介してソフトウェア更新装置11と通信を行うための通信機器である。
【0019】
車載ネットワーク2は、ソフトウェア更新装置11(OTAマスタ)と、通信モジュール12と、複数の電子制御ユニット13a~13eと、表示装置14とを備える。ソフトウェア更新装置11は、バス15aを介して通信モジュール12と接続され、バス15bを介して電子制御ユニット13a及び13bと接続され、バス15cを介して電子制御ユニット13c及び13dと接続され、バス15dを介して電子制御ユニット15e及び表示装置14と接続されている。ソフトウェア更新装置11は、通信モジュール12及びネットワーク5を介して無線(On The Air)でサーバ1と通信可能であり、電子制御ユニット13a~13eのソフトウェアの更新データをサーバ1からダウンロードし、ダウンロードした更新データを更新対象の電子制御ユニットに転送してソフトウェアを更新するよう指示する装置である。ソフトウェア更新装置11は、セントラルゲートウェイと称される場合もある。また、ソフトウェア更新装置11は、また、ソフトウェア更新装置11は、サーバ1から、ソフトウェア更新装置11及び電子制御ユニット13a~13eが実行する1以上のソフトウェアの設定情報を取得可能である。通信モジュール12は、車載ネットワーク2とセンタに設けられるサーバ1とを接続する通信装置である。電子制御ユニット13a~13eは、車両の各部の動作を制御するECUであり、CPUと、RAMと、フラッシュメモリやEEPROM等の不揮発性の記憶装置とを備え、CPUがRAMを作業領域として用いて、記憶装置に記憶されたソフトウェアを実行することにより制御機能を実行する。これらのうち、電子制御ユニット13eは、後述する携帯端末3と通信可能な機器であり、例えば、アンテナや送受信機を備え、携帯端末3との通信により認証処理を行って車両のドアの解錠や始動を制御するECUである。表示装置14(HMI)は、ソフトウェア更新装置11及び電子制御ユニット13a~13eのいずれかが提供する機能に関する各種表示を行ったり、ユーザが設定値を入力するための画面を表示したりするために用いられる。表示装置14としては、典型的にはカーナビゲーションシステムの表示装置を用いることができるが、情報を表示可能なものであれば特に限定されない。尚、図1においては、5つの電子制御ユニット13a~13eを例示したが、電子制御ユニットの数は特に限定されない。
【0020】
図3に示すように、ソフトウェア更新装置11は、CPU31と、RAM32と、ROM33と、記憶装置34とを備えるマイクロコンピュータ35と、通信装置36とを備える。ソフトウェア更新装置11において、マイクロコンピュータ35のCPU31は、ROM33から読み出したソフトウェアを、RAM32を作業領域として用いて実行することにより、後述する制御処理を実行する。通信装置36は、図1に示したバス15a~15dを介して、通信モジュール12、電子制御ユニット13a~13e、表示装置14と通信を行う通信装置である。ソフトウェア更新装置11も電子制御ユニットの一種である。
【0021】
携帯端末3は、本実施形態では、電子制御ユニット13eと通信可能な端末装置であり、例えば、車両のキーとして利用される携帯機(ワイヤレスキー)やスマートフォン等である。携帯端末3と電子制御ユニット13eとの通信方式は、特に限定されず、RF/LF通信や、BLE(Bluetooth(登録商標) Low Energy)、Wi-Fi(登録商標)等を利用することができる。携帯端末3は、電子制御ユニット13eとの通信時に、携帯端末3に割り当てられた固有の識別情報またはユーザに割り当てられた固有の識別情報を電子制御ユニット13eに送信する。携帯端末3に割り当てられた識別情報及びユーザに割り当てられた識別情報は、ユーザを識別するためのユーザ識別情報(ユーザID)として利用することができる。
【0022】
図4は、図1に示したサーバの機能ブロック図であり、図5は、図1に示したサーバが記憶する利用情報の一例を示す図である。尚、図5における「No.」の列は、説明のために設けたものであり、省略しても良い。
【0023】
サーバ1は、記憶部26と、通信部27と、制御部28とを備える。記憶部26は、図2に示した記憶装置23によって実現され、通信部27及び制御部28は、図2に示したCPU21がRAM22を用いて記憶装置23に記憶されるソフトウェアを実行することにより実現される。
【0024】
記憶部26は、利用情報を記憶する。利用情報は、ソフトウェア更新装置11及び電子制御ユニット13a~13eが実行する1以上のソフトウェアの設定情報を、ユーザを識別するユーザIDに関連付けた情報である。ユーザIDはユーザを一意に識別できる情報であれば良く、予めユーザによる登録に基づいて発行される識別子や、ユーザのメールアドレスや電話番号、車両のキーとして用いられる携帯機の識別情報等を利用できる。利用情報は、新しくユーザの登録を行った際、あるいは、ユーザの登録後に最初に車両を利用した後に、サーバ1でユーザIDと設定情報を関連付けて記憶することにより生成することができる。
【0025】
図5に示す利用情報の例では、ユーザIDに対して、ソフトウェアを識別するソフトウェアIDと、当該ソフトウェアIDで識別されるソフトウェアの設定値とを含む設定情報が関連付けられている。利用情報においては、1つのユーザIDに対して、1または複数の電子制御ユニット(ソフトウェア更新装置11、電子制御ユニット13a~13eのいずれか)が実行可能な1または複数のソフトウェアIDとソフトウェアの設定値とが関連付けられていても良い。尚、図5の例では、ソフトウェアIDを用いて設定値の対象が特定されているが、ソフトウェアIDの代わりに電子制御ユニットを特定する識別情報を使用しても良い。
【0026】
ソフトウェアID毎に記憶される設定値は、電子制御ユニットがソフトウェアIDで特定されるソフトウェアを実行する際に参照する情報である。より詳細には、設定値は、車両において利用可能なソフトウェア、車両において利用可能なソフトウェアが提供可能な機能(提供可能な機能の範囲や、機能の有効性)、無線通信を介したソフトウェアの更新(OTAによる更新)の可否、車両側で登録された設定値、車両の利用中にソフトウェアが学習した学習値、ソフトウェアの課金状況の少なくとも1つを表す情報を含む。
【0027】
以下、図5に基づいて、具体例を説明する。
【0028】
図5のテーブルに示すNo.1及びNo.2の利用情報は、ユーザに対してソフトウェアID「sw_a01」及び「sw_a02」で特定されるソフトウェアの設定情報を含むが、ユーザIDによって、利用できる機能の範囲が異なっている。具体的に、ユーザID「user_001」の利用情報では、機能A、B及びDが有効であることと、ソフトウェアID「sw_a02」が使用する設定値αの値が設定されている。一方、ユーザID「user_002」の利用情報では、機能A~Dが有効であることと、ソフトウェアID「sw_a02」が使用する設定値α及びβの値が設定されている。
【0029】
また、図5のテーブルに示すNo.3~5の利用情報は、ユーザに対してソフトウェアID「sw_a03」の設定情報を含むが、課金状況によって、利用できる追加機能の範囲が異なっている。具体的に、ユーザID「user_003」の利用情報では、プランaに課金がされ、追加の機能F及びGが有効であることと、前回の車両の利用中にソフトウェアが学習した学習値が設定されている。ユーザID「user_004」の利用情報では、プランbに課金がされ、追加の機能Fが有効であることが設定されている。また、ユーザID「user_005」の利用情報では、課金がされておらず、追加の機能F及びGが無効であることが設定されている。
【0030】
近年、車両の利用形態は様々であり、1人のユーザが複数台の車両を利用したり、複数のユーザが1台の車両を共用したりするケースがある。本実施形態では、図5に示すような、ユーザIDにソフトウェアの設定情報を関連付けた利用情報をサーバで保持し、後述するように、車両の利用開始時等にサーバ1から電子制御ユニットへと配信する。本実施形態によれば、1人のユーザが複数台の車両を利用している場合、利用する車両が変わっても、ユーザの利用情報に設定されるソフトウェアや機能を、どの車両でも利用できるようになる。また、複数のユーザが1台の車両を共用する場合、車両を利用するユーザが変わっても、利用するユーザの利用情報に設定されるソフトウェアや機能を利用できるようになる。したがって、ユーザによる車両の使用感を大きく変化させることなく車両の利用ができるようになる。また、無線通信を介したソフトウェアの更新(OTAによる更新)が可能な車両においては、ソフトウェアの更新処理を行う際にユーザの承諾が必要となる。このようなOTAによるソフトウェア更新が可能な車両を複数のユーザで共用する場合、OTAによるソフトウェアの更新機能は、車両のオーナーや管理者等の権限を有するユーザに限定することが好ましい。利用情報において、ソフトウェア更新装置11によるソフトウェア更新機能の利用可否をユーザ毎に設定することにより、特定のユーザのみがOTAによるソフトウェア更新を実行することが可能となる。
【0031】
設定情報に具体的に設定可能な設定情報の具体例としては、ユーザが車両に接近したときのウェルカムランプの点灯、エアコンの自動運転や設置温度、シートポジションの設定、ドライビングモード、ユーザの運転特性に基づいて取得した制駆動力の調整用の補正値(定数、学習値)等が挙げられるが、これらに限定されない。
【0032】
通信部27は、ソフトウェア更新装置からの要求に基づき、ソフトウェア更新装置11によって指定されたユーザIDに関連付けて記憶される設定情報を記憶部26から取得し、取得した設定情報をソフトウェア更新装置11に送信する。また、通信部27は、車両の利用が終了した後、ソフトウェア更新装置11から、車両を利用していたユーザのユーザIDと、車両においてソフトウェア更新装置11及び電子制御ユニット13a~13eが実行していた1以上のソフトウェアの設定情報とを含む更新要求を受信する。この更新要求とは、車両の利用中に、ユーザによって新たに設定または変更された設定値や、ソフトウェアが学習した学習値等を用いて、記憶部26に記憶される利用情報の更新するための指示である。また、通信部27は、ソフトウェア更新装置11から送信される設定情報の送信要求を受け付ける。
【0033】
制御部28は、通信部27が更新要求を受信すると、受信したユーザID及び設定情報に基づいて、記憶部26に記憶される利用情報を更新する。
【0034】
図6は、図1に示したソフトウェア更新装置の機能ブロック図である。
【0035】
ソフトウェア更新装置11は、取得部37と、通信部38と、制御部39とを備える。取得部37、通信部38及び制御部39は、図3に示したCPU31がRAM32を用いてROM33に記憶されるソフトウェアを実行することにより実現される。
【0036】
取得部37は、車両の利用開始時に、ユーザを識別するユーザIDを取得する。図1で説明したように、本実施形態では、電子制御ユニット13eがユーザの携帯端末3と通信を行うことにより、車載ネットワーク2にユーザIDを取り込むことが可能である。したがって、取得部37は、電子制御ユニット13eが携帯端末3から受信したユーザIDを取得することができる。取得部37は、電子制御ユニット13eを介して携帯端末3が保持するユーザIDを取得する代わりに、携帯端末3と直接通信を行うことにより、携帯端末3が保持するユーザIDを取得し手も良い。また、取得部37は、表示装置14にユーザIDを入力するよう促す表示を表示させ、ユーザによる図示しない入力装置の操作や、事前登録されたユーザ情報に基づく生体認証によってユーザIDを取得しても良い。
【0037】
通信部38は、車両の利用開始時に、取得部37が取得したユーザIDをサーバ1に送信し、設定情報の送信を要求する。通信部38は、サーバ1から送信された設定情報を受信し、受信した設定情報を記憶装置34に記憶させる。また、通信部38は、車両の利用が終了した後、取得部37が取得したユーザIDと、制御部39が取得した設定情報とを含む更新要求をサーバ1に送信する。
【0038】
制御部39は、通信部38が取得した設定情報を記憶装置34から読み出し、読み出した設定情報に含まれる設定値を、設定情報に含まれるソフトウェアIDで特定される電子制御ユニットに転送する。サーバ1から取得した設定情報にソフトウェア更新装置11が実行するソフトウェアの設定値が含まれている場合、制御部39は、ソフトウェア更新装置11が実行するソフトウェアの設定値を所定の格納領域に格納する。また、制御部39は、車両の利用が終了した後、ソフトウェア更新装置11及び電子制御ユニット13a~13eの1以上からソフトウェアの設定情報を取得する。
【0039】
上記の処理に加え、通信部38および制御部39は、サーバ1との無線通信により、電子制御ユニット13a~13eのソフトウェア更新処理を行う。ここで、ソフトウェア更新処理は、サーバ1から車両に更新データを送信するダウンロードと、ダウンロードした更新データを更新対象の電子制御ユニットに転送し、更新対象の電子制御ユニットの記憶領域に更新データを書き込むインストールと、更新対象の電子制御ユニットにおいてインストールした更新プログラムを有効化するアクティベートの3つのフェーズを含む。
【0040】
ダウンロードは、サーバ1から送信された、電子制御ユニットのソフトウェアを更新するための更新データを受信して記憶する処理である。ダウンロードのフェーズでは、更新データの受信だけでなく、ダウンロードの実行可否判断、更新データの検証等、ダウンロードに関する一連の処理の制御を含む。インストールは、ダウンロードした更新データに基づいて、更新対象の電子制御ユニットに車載機器の記憶部に更新版のプログラム(更新ソフトウェア)を書き込む処理である。インストールのフェーズでは、インストール実行だけでなく、インストールの実行可否判断、更新データの転送および更新版のプログラムの検証等、インストールに関する一連の処理の制御を含む。アクティベートは、インストールした更新版のプログラムを有効化(アクティベート)する処理である。アクティベートする制御は、アクティベート実行だけでなく、アクティベートの実行可否判断、実行結果の検証等、アクティベートに関する一連の制御を含む。
【0041】
サーバ1からソフトウェア更新装置11に送信される更新データは、電子制御ユニットの更新ソフトウェア、更新ソフトウェアを圧縮した圧縮データ、更新ソフトウェアまたは圧縮データを分割した分割データのいずれを含んでいても良い。また、更新データは、更新対象の電子制御ユニットを識別する識別子(ECU ID)と、更新前のソフトウェアを識別する識別子(ECU ソフトウェア ID)を含んでいても良い。更新データは、上述した配信パッケージとしてダウンロードされるが、配信パッケージには、単一または複数の電子制御ユニットの更新データが含まれる。
【0042】
更新データが更新ソフトウェアそのものを含む場合は、インストールのフェーズにおいて、ソフトウェア更新装置が更新データ(更新ソフトウェア)を更新対象の電子制御ユニットに転送する。また、更新データが更新ソフトウェアの圧縮データ、差分データあるいは分割データを含む場合、ソフトウェア更新装置11が更新対象の電子制御ユニットに更新データを転送し、更新対象の電子制御ユニットが更新データから更新ソフトウェアを生成しても良いし、ソフトウェア更新装置11が更新データから更新ソフトウェアを生成してから、更新ソフトウェアを更新対象の電子制御ユニットに転送しても良い。ここで、更新ソフトウェアの生成は、圧縮データの解凍、差分データまたは分割データの組み付けにより行うことができる。
【0043】
更新ソフトウェアのインストールは、ソフトウェア更新装置11からのインストール要求に基づき、更新対象の電子制御ユニットが行うことができる。あるいは、更新データを受信した更新対象の電子制御ユニットが、ソフトウェア更新装置11からの明示の指示を受けることなく、自律的にインストールを行っても良い。
【0044】
更新ソフトウェアのアクティベートは、ソフトウェア更新装置11からのアクティベート要求に基づき、更新対象の電子制御ユニットが行うことができる。あるいは、更新データを受信した更新対象の電子制御ユニットが、ソフトウェア更新装置11からの明示の指示を受けることなく、自律的にアクティベートを行っても良い。
【0045】
尚、ソフトウェアの更新処理は、複数の電子制御ユニットのそれぞれに対して、連続的あるいは並列的に行うことができる。
【0046】
通信部38は、車両の電源またはイグニッションがオンされた際等の所定のタイミングで、電子制御ユニット13a~13dのソフトウェアの更新データがあるか否かを確認するための確認要求をサーバ1に送信し、サーバ1における確認結果(更新データがあるか否かを示す情報)を受信する。また、通信部38は、配信パッケージのダウンロード要求をサーバ1に送信し、サーバ1から送信される配信パッケージを受信する。配信パッケージは、更新データの真正性を検証するための検証用データや、更新データの数、インストール順、ソフトウェア更新時に用いる各種制御情報等を含んでいても良い。通信部38は、受信した配信パッケージを記憶装置34に記憶させる。通信部38は、受信した更新データの真正性を検証する。
【0047】
制御部39は、通信部38による配信パッケージのダウンロードが完了すると、更新対象の電子制御ユニットのインストール及びアクティベートを行う。尚、更新対象の電子制御ユニットは、配信パッケージに含まれる情報(更新データに関連付けられた電子制御ユニットの識別情報等)に基づいて特定することができる。
【0048】
以下、サーバ1及びソフトウェア更新装置11が実行する制御処理を説明する。
【0049】
図7は、実施形態に係るサーバが実行する制御処理の一例を示すフローチャートである。図7に示す制御処理は、サーバ1において所定の時間間隔で繰り返し実行される。
【0050】
ステップS1において、通信部27は、ソフトウェア更新装置11から設定情報の送信要求を受信したか否かを判定する。ステップS1の判定がYESの場合、処理はステップS2に進み、それ以外の場合、処理はステップS3に進む。
【0051】
ステップS2において、通信部27は、記憶部26に記憶される利用情報を参照し、ソフトウェア更新装置11から受信した送信要求に含まれるユーザIDに関連付けられた設定情報を取得する。通信部27は、取得した設定情報をソフトウェア更新装置11に送信する。その後、処理はステップS3に進む。
【0052】
ステップS3において、通信部27は、ソフトウェア更新装置11から設定情報の更新要求を受信したか否かを判定する。ステップS3の判定がYESの場合、処理はステップS4に進み、それ以外の場合、ステップS1に進む。
【0053】
ステップS4において、制御部28は、記憶部26に記憶される利用情報の中から、ソフトウェア更新装置11から受信した更新要求に含まれるユーザIDに関連付けられた設定情報を特定し、更新要求に含まれる新しい設定情報で、特定した設置情報を更新する。その後、処理はステップS1に進む。
【0054】
図8は、実施形態に係るソフトウェア更新装置が実行する設定処理の一例を示すフローチャートである。図8に示す制御処理は、例えば、車両の利用開始時に実行される。ソフトウェア更新装置11がサーバ1から取得する設定情報は、ソフトウェア更新装置11及び電子制御ユニット13a~13eが実行する1以上のソフトウェアが用いる設定値を含むため、電子制御ユニット13a~13eがソフトウェアを起動する前、すなわち、車両の電源またはイグニッションがオンされるまでに実行されることが好ましい。図8に示す制御処理は、例えば、車両の解錠を行うための携帯端末3を用いた認証が成功した時、認証に用いる携帯端末3を保持したユーザが車両に乗り込んだことを検出した時、車両の電源またはイグニッションがオンされる前に、認証に用いる携帯端末3からの指示を受信した時のいずれかに開始することができる。ただし、サーバ1から取得した設定情報を参照する電子制御ユニットが、車両の動作に影響を与えないものである場合は、車両の電源またはイグニッションがオンされた後に、図8の制御処理を開始してサーバ1から設定情報を取得し、取得した設定情報に基づいて対象の電子制御ユニットのソフトウェアを再起動しても良い。
【0055】
ステップS11において、取得部37は、ユーザIDを取得する。ユーザIDは、取得部37が車両の操作を行うための認証に用いる携帯端末3から直接取得しても良いし、あるいは、取得部37が図1に示したように電子制御ユニット13eを介して取得しても良い。その後、処理はステップS12に進む。
【0056】
ステップS12において、通信部38は、ステップS11で取得したユーザIDを含む設定情報の送信要求をサーバ1に送信する。その後、処理はステップS13に進む。
【0057】
ステップS13において、通信部38は、ステップS12で送信した送信要求に応答してサーバ1から送信された設定情報を取得する。その後、処理はステップS14に進む。
【0058】
ステップS14において、制御部39は、ステップS13で取得した設定情報に含まれる設定値を、設定情報において特定される電子制御ユニットに対して転送し、処理を終了する。ステップS13で取得した設定情報にソフトウェア更新装置11が実行するソフトウェアの設定値が含まれている場合、制御部39は、ソフトウェア更新装置11が実行するソフトウェアの設定値を所定の格納領域に格納する。尚、ソフトウェア更新装置11及び電子制御ユニット13a~13eのそれぞれは、設定値を受け取ると、受け取った設定値に基づいてソフトウェアを実行することにより、サーバ1から取得した設定値を反映した機能等を提供する。1人のユーザが複数台の車両を利用する場合、車両の型式やオプション選択、課金状況に応じて、電子制御ユニット13a~13eが実行可能なソフトウェアの有無や、提供可能な機能の範囲が異なる場合がある。この場合でも、設定情報に含まれる設定値のうち、利用する車両において設定可能な全ての設定値を反映させることによって、ソフトウェア更新装置11及び電子制御ユニット13a~13eが実行するソフトウェアの設定値を、サーバ1から取得した設定情報に可能な限り近づけることができる。これにより、ユーザが利用する車両が変わっても、車両が提供可能な機能や車両の特性の範囲内でユーザの体験を毎回同一、または、ほぼ同等とすることができ、ユーザの使用感が大きく変化することを抑制できる。
【0059】
図9は、実施形態に係るソフトウェア更新装置が実行する更新処理の一例を示すフローチャートである。図9に示す制御処理は、車両の利用中にユーザによって新たに設定された設定値や、車両の利用中にユーザによって変更された設定値、電子制御ユニットのソフトウェアが車両の利用中に学習した学習値等をサーバに保存するための処理であり、車両の利用が完了した後に実行される。図9に示す制御処理は、例えば、車両の電源またはイグニッションがオフされたことを契機として実行しても良い。
【0060】
ステップS21において、制御部39は、ソフトウェア更新装置11及び電子制御ユニット13a~13eからソフトウェアの設定情報を取得する。その後、処理はステップS22に進む。
【0061】
ステップS22において、通信部38は、取得した設定情報と、図8のステップS11で取得したユーザIDとを含む設定情報の更新要求をサーバ1に送信し、処理を終了する。
【0062】
以上説明したように、本実施形態に係るサーバ1は、車両に搭載されたソフトウェア更新装置11及び電子制御ユニット13a~13eがソフトウェアを実行する際の設定情報をユーザIDに関連付けて記憶し、ソフトウェア更新装置11からの要求に基づいて利用情報を送信する。したがって、電子制御ユニットがソフトウェアを実行することによってユーザに提供可能な機能を、ユーザ毎に管理することができるので、ユーザが利用する車両が変わっても、ユーザがほぼ同等の機能を利用できるようにすることが可能となる。
【0063】
また、サーバ1は、ユーザによる車両の利用が終了した後に、ソフトウェア更新装置11及び電子制御ユニット13a~13eのソフトウェアの設定情報を取得して利用情報を更新するため、同じユーザが同じ車両を次に利用する際に同等の機能を提供することが可能となる。
【0064】
また、サーバ1が記憶する利用情報には、図5で説明した種々の情報を設定可能であるので、ユーザにより利用可能な機能やその利用形態等を細かく設定し、車両使用時に再現することができる。
【0065】
また、本実施形態に係るソフトウェア更新装置11は、サーバ1から、ユーザIDに関連付けられた設定情報を取得して、ソフトウェア更新装置11及び電子制御ユニット13a~13eのソフトウェア実行時に反映させるため、使用する車両が変わっても、ユーザが同じ機能を利用できるようにすることが可能となる。
【0066】
また、ソフトウェア更新装置11は、車両の利用が終了した後に、ソフトウェア更新装置11及び電子制御ユニット13a~13eがソフトウェアを実行する際に参照する設定値をサーバ1に送信することにより、電子制御ユニット13a~13eがソフトウェアを実行する際の設定値をサーバ1で管理して、次回の車両利用時に使用することができる。
【0067】
実施形態として例示したサーバ1の機能は、プロセッサ(CPU)とメモリと記憶装置とを備えるコンピュータが実行する管理方法、あるいは、当該コンピュータに実行させる管理プログラム、管理プログラムを記憶したコンピュータ読み取り可能な非一時的記憶媒体として実現することも可能である。同様に、実施形態として例示したソフトウェア更新装置11の機能は、プロセッサ(CPU)とメモリと記憶装置とを備える、車載されたコンピュータが実行する制御方法、あるいは、当該車載されたコンピュータに実行させる制御プログラム、制御プログラムを記憶したコンピュータ読み取り可能な非一時的記憶媒体として実現することも可能である。
【0068】
上記の実施形態では、車両側において、車載ネットワーク2に設けられたソフトウェア更新装置11が、マスタ装置として、全ての電子制御ユニット13a~13eのソフトウェアの設定情報をサーバ1から取得し、更新後の設定値をサーバ1に送信する例を説明したが、ソフトウェア更新装置11の代わりに、電子制御ユニット13a~13eのいずれか1つ(ソフトウェア更新制御を行わない電子制御ユニット)が図7図9に示した制御機能を有しており、サーバ1からの設定情報の受信と設定情報の更新要求を行っても良い。また、図7図9に示した制御機能を車載ネットワーク2に有線で接続可能な外部機器に設け、この外部機器を用いて電子制御ユニット13a~13eのソフトウェアの設定情報の取得及び更新要求を行うことも可能である。
【0069】
また、上記の実施形態で例示した利用情報は、設定情報が更新された日時を更に含んでも良い。この場合、利用情報は、ユーザID毎に経時的に設定情報を記録したものとなる。このように構成すれば、ソフトウェアの購入前または契約前に特定の電子制御ユニットの機能が無効であったが、ある時点以降はソフトウェアの購入済みまたは契約済みとなったことにより、当該特定の電子制御ユニットの機能が有効になったという履歴を残すことができる。電子制御ユニットのソフトウェアに何かしらの不具合が発生した場合には、利用情報を参照することにより、ソフトウェアに不具合があった時期にそのソフトウェアが有効であったか無効であったかを把握することができる。また、ユーザID毎に経時的に設定情報を記録した利用情報は、ユーザによるソフトウェアの利用状況を把握し、電子制御ユニットの新しい機能やソフトウェアをユーザに提案するのに利用できる。
【0070】
また、設定情報には、車両の利用場所に関する情報を含めても良い。利用場所に関する情報は、利用可能な場所を特定する情報、利用不可な場所を特定する情報のいずれであっても良く、国、州、省、地方の名称で、GPSの座標範囲等を使用することができる。ソフトウェア更新装置11や電子制御ユニット13a~13eがソフトウェアを実行することによって実現する機能は、車両の利用場所の法規等で使用が制限される場合が考えられる。そこで、設定情報に車両の利用場所に関する情報を含め、車両側で、予め設定された仕向地に関する情報や取得したGPS座標に基づいて、ソフトウェアの利用可否を判定しても良い。
【産業上の利用可能性】
【0071】
本開示技術は、電子制御ユニットが実行するソフトウェアの設定情報を管理するためのネットワークシステムに利用できる。
【符号の説明】
【0072】
1 サーバ
2 車載ネットワーク
3 携帯端末
5 ネットワーク
11 ソフトウェア更新装置
13a~13e 電子制御ユニット
26 記憶部
27 通信部
28 制御部
37 取得部
38 通信部
39 制御部
図1
図2
図3
図4
図5
図6
図7
図8
図9