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

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

▶ クラリオン株式会社の特許一覧

特開2023-125853ソフトウェア更新装置及びソフトウェア更新方法
<>
  • 特開-ソフトウェア更新装置及びソフトウェア更新方法 図1
  • 特開-ソフトウェア更新装置及びソフトウェア更新方法 図2
  • 特開-ソフトウェア更新装置及びソフトウェア更新方法 図3
  • 特開-ソフトウェア更新装置及びソフトウェア更新方法 図4
  • 特開-ソフトウェア更新装置及びソフトウェア更新方法 図5
  • 特開-ソフトウェア更新装置及びソフトウェア更新方法 図6
  • 特開-ソフトウェア更新装置及びソフトウェア更新方法 図7
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2023125853
(43)【公開日】2023-09-07
(54)【発明の名称】ソフトウェア更新装置及びソフトウェア更新方法
(51)【国際特許分類】
   G06F 8/65 20180101AFI20230831BHJP
【FI】
G06F8/65
【審査請求】未請求
【請求項の数】7
【出願形態】OL
(21)【出願番号】P 2022030194
(22)【出願日】2022-02-28
(71)【出願人】
【識別番号】000001487
【氏名又は名称】フォルシアクラリオン・エレクトロニクス株式会社
(74)【代理人】
【識別番号】240000327
【弁護士】
【氏名又は名称】弁護士法人クレオ国際法律特許事務所
(72)【発明者】
【氏名】川村 晋司
【テーマコード(参考)】
5B376
【Fターム(参考)】
5B376CA36
5B376CA43
5B376GA08
(57)【要約】
【課題】車載制御ユニットによる本来の機能を実行する処理を制限することなく、遅延を抑えながらソフトウェア更新を実行すること。
【解決手段】車両に搭載されている電子制御ユニットのソフトウェアを更新する装置であって、車両状態検出部60と、最大処理負荷情報の記憶部502と、優先度設定部503と、実行部505と、を備える。優先度設定部503は、車両状態が、最大処理負荷が所定の閾値よりも大きいと予測される状態であるとき、電子制御ユニットのソフトウェアを更新する処理の優先度を車両状態において実行されうるシステム機能の処理の優先度よりも低くする。車両状態が、最大処理負荷が所定の閾値よりも小さいと予測される状態であるとき、電子制御ユニットのソフトウェアを更新する処理の優先度を車両状態において実行されうるシステム機能の処理の優先度よりも高くする。
【選択図】図1
【特許請求の範囲】
【請求項1】
車両に搭載されている電子制御ユニットのソフトウェアを更新するソフトウェア更新装置であって、
前記車両の車両状態を検出する車両状態検出部と、
前記車両状態と、前記車両状態毎に予測される最大処理負荷とを対応付けた最大処理負荷情報を記憶する記憶部と、
前記電子制御ユニットで実行される複数の処理の優先度を設定する優先度設定部と、
前記優先度に基づいて、前記電子制御ユニットにおいて処理を実行する実行部と、を備え、
前記優先度設定部は、
前記車両状態が、前記最大処理負荷が所定の閾値よりも大きいと予測される状態であるとき、前記電子制御ユニットのソフトウェアを更新する処理の優先度を前記車両状態において実行されうるシステム機能の処理の優先度よりも低くし、
前記車両状態が、前記最大処理負荷が前記所定の閾値よりも小さいと予測される状態であるとき、前記電子制御ユニットのソフトウェアを更新する処理の優先度を前記車両状態において実行されうるシステム機能の処理の優先度よりも高くする
ことを特徴とするソフトウェア更新装置。
【請求項2】
請求項1に記載されたソフトウェア更新装置において、
前記電子制御ユニットは、前記システム機能としてカメラ映像を用いる制御処理を実行する自動駐車支援システムのカメラ制御ユニットであり、
前記車両状態検出部は、選択されている車両のギア位置を検出するギア位置センサと、車速を検出する車速センサと、を有する
ことを特徴とするソフトウェア更新装置。
【請求項3】
請求項2に記載されたソフトウェア更新装置において、
前記記憶部は、前記車両状態が、前記ギア位置としてリバース位置が選択され、かつ、前記車速が設定車速以下である状態、又は、前記ギア位置としてドライブ位置が選択され、かつ、停車している状態のとき、前記最大処理負荷が所定の閾値よりも大きい高負荷であることを記憶し、
前記優先度設定部は、前記車両状態検出部によって、前記ギア位置としてリバース位置が選択され、かつ、前記車速が設定車速以下である状態、又は、前記ギア位置としてドライブ位置が選択され、かつ、停車している状態であると検出されるとき、前記自動駐車支援の制御処理を優先し、前記カメラ制御ユニットのCPUリソース配分を、前記ソフトウェアの更新処理配分より前記自動駐車支援の制御処理配分に多く割り振る
ことを特徴とするソフトウェア更新装置。
【請求項4】
請求項3に記載されたソフトウェア更新装置において、
前記記憶部は、前記車両状態が、前記ギア位置としてパーキング位置が選択されている状態、又は、前記ギア位置としてドライブ位置が選択され、かつ、前記車速が設定車速以上の状態のとき、前記最大処理負荷は所定の閾値よりも小さい低負荷であることを記憶し、
前記優先度設定部は、前記車両状態検出部によって、前記ギア位置としてパーキング位置が選択されている状態、又は、前記ギア位置としてドライブ位置が選択され、かつ、前記車速が設定車速以上の状態であると検出されるとき、ソフトウェア更新処理を優先し、前記カメラ制御ユニットのCPUリソース配分を、前記自動駐車支援の制御処理配分より前記ソフトウェアの更新処理配分に多く割り振る
ことを特徴とするソフトウェア更新装置。
【請求項5】
請求項4に記載されたソフトウェア更新装置において、
前記記憶部は、前記車両状態が、前記ギア位置としてドライブ位置が選択され、かつ、前記車速が設定車速未満の走行状態であるとき、前記最大処理負荷は前記低負荷よりも負荷が大きく、前記高負荷よりも負荷が小さい中負荷であることを記憶し、
前記優先度設定部は、前記車両状態検出部によって、前記ギア位置としてドライブ位置が選択され、かつ、前記車速が設定車速未満の走行状態であると検出されるとき、前記カメラ制御ユニットのCPUリソース配分を、前記自動駐車支援の制御処理配分と前記ソフトウェアの更新処理配分で均等に割り振る
ことを特徴とするソフトウェア更新装置。
【請求項6】
請求項1に記載されたソフトウェア更新装置において、
前記車両状態を検出するタイミングを制御するタイマーを設定するタイマー設定部をさらに備え、
前記タイマー設定部は、複数のシステム機能のうち一つのシステム機能が実行されると、実行されるシステム機能が継続する予測時間に合わせてタイマーを設定する
ことを特徴とするソフトウェア更新装置。
【請求項7】
車両に搭載されている電子制御ユニットのソフトウェアを更新するソフトウェア更新方法であって、
前記電子制御ユニットのうち、更新処理が未完了のソフトウェアの有無を判断する更新処理ソフト判断ステップと、
前記更新処理が未完了のソフトウェアが有りと判断されると、前記車両の車両状態を検出する車両状態検出ステップと、
前記車両状態の検出結果に基づいて、前記車両状態に応じて予測される最大処理負荷を判定する最大処理負荷判定ステップと、
前記最大処理負荷の判定結果に基づいて、複数の処理の優先度を設定する優先度設定ステップと、
前記優先度に基づいて、前記電子制御ユニットにおいて処理を実行する処理実行ステップと、を備え、
前記優先度設定ステップは、
前記車両状態が、前記最大処理負荷が所定の閾値よりも大きいと予測される状態であるとき、前記電子制御ユニットのソフトウェアを更新する処理の優先度を前記車両状態において実行されうるシステム機能の処理の優先度よりも低くし、
前記車両状態が、前記最大処理負荷が前記所定の閾値よりも小さいと予測される状態であるとき、前記電子制御ユニットのソフトウェアを更新する処理の優先度を前記車両状態において実行されうるシステム機能の処理の優先度よりも高くする
ことを特徴とするソフトウェア更新方法。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、ソフトウェア更新装置及びソフトウェア更新方法に関する。
【背景技術】
【0002】
従来、車両用制御装置に格納される第1情報を第2情報に更新する装置として、ダウンロード制御部と、イベント管理部と、を備える情報更新装置が知られている。ダウンロード制御部は、第1情報と第2情報との差分または第2情報である更新本体、更新本体を用いて第1情報を第2情報に更新する手順が含まれる手順情報、および第1情報の第2情報への更新を開始する条件である起動条件を含む更新パッケージを受信する。イベント管理部は、車両用制御装置および情報更新装置が搭載される車両の状態を取得し、車両の状態が起動条件に合致すると更新実行部に手順情報に基づく更新を実行させる(特許文献1を参照)。
【先行技術文献】
【特許文献】
【0003】
【特許文献1】特開2021-192280号公報
【発明の概要】
【発明が解決しようとする課題】
【0004】
車載ECU(「Electronic Control Unit」の略)のソフトウェアを更新するとき、例えば、車載装置が外部サーバー等から更新情報を取得すると、CAN通信線を用いてソフトウェアの更新情報を車載ECUへ転送することで車載ECUのソフトウェアが更新される。しかしながら、車載ECUのソフトウェアを更新するとき、下記に述べるような技術要求がある。なお、「CAN」は、「Controller Area Network」の略である。
【0005】
車両が停車している間、車載装置は蓄電池によって駆動されるため、車両が走行中に時間がかかるソフトウェアを更新する処理を終えるべきである。しかしながら、車両が走行している間、車載ECUが本来果たすべき機能が実行されているため、それら機能と同時にソフトウェアの更新を実施する必要がある。特に、安全にかかわる車載ECUにおいて、ソフトウェアを更新する処理が車載ECUによる本来の機能を実行する処理に影響を及ぼすべきではない。
【0006】
これに対し、特許文献1には、ADAS(「Advanced Driver-Assistance Systems」の略)/ECUや自動運転ECUはイグニッションオンの期間にソフトウェアを更新処理し、エンジン制御ECUは停車中にソフトウェアを更新処理する技術が開示されている。しかしながら、ADAS/ECUによる本来の機能を実行する処理とADAS/ECUのソフトウェア更新処理が重なると、CPUが有する処理能力の限界を超えてしまうことがある。このとき、例えば、ADAS/ECUによる本来の機能を実行する処理が制限されるのを避けるため、先にADAS/ECUによる本来の機能を実行する処理を実行し、処理終了後、ソフトウェア更新処理を実行すると、ソフトウェア更新が遅延する虞がある。
【0007】
本発明は上記事情に鑑みなされたものであり、車載制御ユニットによる本来の機能を実行する処理を制限することなく、遅延を抑えながらソフトウェア更新を実行するソフトウェア更新装置及びソフトウェア更新方法を提供することを目的とする。
【課題を解決するための手段】
【0008】
本発明のソフトウェア更新装置は、車両に搭載されている電子制御ユニットのソフトウェアを更新する装置であって、車両状態検出部と、最大処理負荷情報の記憶部と、優先度設定部と、実行部と、を備える。優先度設定部は、車両状態が、最大処理負荷が所定の閾値よりも大きいと予測される状態であるとき、電子制御ユニットのソフトウェアを更新する処理の優先度を車両状態において実行されうるシステム機能の処理の優先度よりも低くする。車両状態が、最大処理負荷が所定の閾値よりも小さいと予測される状態であるとき、電子制御ユニットのソフトウェアを更新する処理の優先度を車両状態において実行されうるシステム機能の処理の優先度よりも高くする。
【0009】
本発明のソフトウェア更新方法は、車両に搭載されている電子制御ユニットのソフトウェアを更新する方法であって、更新処理ソフト判断ステップと、車両状態検出ステップと、最大処理負荷判定ステップと、優先度設定ステップと、処理実行ステップと、を備える。優先度設定ステップは、車両状態が、最大処理負荷が所定の閾値よりも大きいと予測される状態であるとき、電子制御ユニットのソフトウェアを更新する処理の優先度を車両状態において実行されうるシステム機能の処理の優先度よりも低くする。車両状態が、最大処理負荷が所定閾値よりも小さいと予測される状態であるとき、電子制御ユニットのソフトウェアを更新する処理の優先度を車両状態において実行されうるシステム機能の処理の優先度よりも高くする。
【発明の効果】
【0010】
本発明に係るソフトウェア更新装置及びソフトウェア更新方法によれば、車載制御ユニットによる本来の機能を実行する処理を制限することなく、遅延を抑えながらソフトウェア更新を実行することができる。
【図面の簡単な説明】
【0011】
図1】実施例1のソフトウェア更新装置及びソフトウェア更新方法が適用された自動駐車支援システムを示すブロック図である。
図2】低速ADAS用カメラ制御ECUにて実行されるソフトウェア更新処理の流れを示すフローチャートである。
図3】車両状態による最大負荷予測、実行されうる機能、状態予測時間、ソフトウェア更新の優先度の設定による車両状態表の一例を示す図である。
図4】ソフトウェア更新の優先度として低負荷又は高負荷が選択される車両状態のときのCPUリソース配分を2つの配分に割り振る一例を示す図である。
図5】ソフトウェア更新の優先度として中負荷が選択される車両状態のときのCPUリソース配分を2つの配分に割り振る一例を示す図である。
図6】自動駐車支援システムにおける機能の種類、実際にCPUにかかる処理負荷、機能予測時間の設定による機能表の一例を示す図である。
図7】自動駐車支援システムにおける機能の種類とカメラ表示との関係を示すブロック説明図である。
【発明を実施するための形態】
【0012】
以下、本発明によるソフトウェア更新装置及びソフトウェア更新方法を実施するための形態を、図面に示す実施例1に基づいて説明する。
【実施例0013】
実施例1のソフトウェア更新装置及びソフトウェア更新方法は、縦列駐車や並列駐車等を行う駐車シーンにおいて、自動駐車及びドライバーによる駐車を支援する自動駐車支援システムAに適用されている。以下、図1を参照して自動駐車支援システムAの構成を説明する。
【0014】
自動駐車支援システムAは、図1に示すように、TCU10と、ゲートウェイECU20と、ナビECU30(電子制御ユニット)と、カメラ40と、低速ADAS用カメラ制御ECU50(カメラ制御ユニット)と、車両状態検出部60と、を備えている。
【0015】
ここで、「ADAS(先進運転支援システム)」とは、車両自体が周囲の情報を把握し、車両周囲の情報を報知したり、運転操作を支援したりする機能の総称をいう。
【0016】
TCU10(「Telematics Control Unit」の略)は、無線通信機能を通じて、外部から様々な情報を受信したり、車両から様々な情報を外部へ発信したりする制御ユニットである。つまり、TCU10は、双方向通信が可能であり、例えば、「クラウドから車両」と「車両からクラウド」の両方に対応できる。実施例1におけるTCU10は、外部サーバーやクラウド等から低速ADAS用カメラ制御ECU50のソフトウェア情報をバージョン番号情報と共に受け取ると、第1のCAN通信線71を介してゲートウェイECU20へ低速ADAS用カメラ制御ECU50のソフトウェア情報を送る。
【0017】
ゲートウェイECU20は、車両に搭載される各種のECU(車載制御ユニット)の情報を集約する電子制御ユニットである。実施例1では、車両に搭載される各種のECUとして、第2のCAN通信線72により接続されるナビECU30と、第3のCAN通信線73により接続される低速ADAS用カメラ制御ECU50を例示している。しかし、1台の車両に実際に搭載されるECUの数は2個に限られない。
【0018】
ナビECU30は、カーナビゲーションECUの略称であり、車両の位置を検出して道路地図上で車両が存在する位置表示や車両を目的地へ誘導する役割を担う電子制御ユニットである。ナビECU30は、画像処理IC、GPSセンサECU、電子地図メモリー等を有して構成されている。GPSセンサとしては、例えば、衛星GPSに加えて、ジャイロセンサ(角速度センサ)を組み合わせて位置検出精度を向上させたハイブリッド方式が用いられる。
【0019】
カメラ40は、車両周囲の4方向(前方向、後方向、左方向、右方向)にレンズ光軸を向けて取付けられたカメラであり、自動駐車支援システムAの機能を実行するために必要な画像を撮像する撮像手段である。例えば、自動駐車支援システムAは、車両を上空から見下ろした様な俯瞰画像を生成し、車両の周囲360度を分かりやすく表示することで駐車を支援する。「俯瞰画像」は、4方向のカメラ40から得られた映像信号をリアルタイムで俯瞰視点からの画像に視点変換処理し、これら視点変換処理された4つのカメラ映像を、俯瞰で見た車両のアイコン画像を中心として1つの画像に合成処理することによって得られる。俯瞰映像の他にも、車両の周囲を撮像した周囲画像(前方の画像、後方の画像、側方の画像など)を必要に応じて画像処理を実施して表示することで、ドライバーによる駐車を支援したり、自動駐車の様子を表示してドライバーを支援したりする。
【0020】
低速ADAS用カメラ制御ECU50は、本発明のソフトウェア更新装置及びソフトウェア更新方法が適用された車両に搭載された複数の電子制御ユニットの一例である。低速ADAS用カメラ制御ECU50は、低車速域において駐車操作(アクセル・ブレーキ・ハンドル・シフト・パーキングブレーキなど)を自動制御することで、車両の駐車を支援する車載の電子制御ユニットである。低速ADAS用カメラ制御ECU50は、カメラ表示、移動物体検出、駐車空間探索、自動駐車によるシステム機能の処理を実行する。
【0021】
車両状態検出部60は、選択されている車両のギア位置を検出するギア位置センサ61と、車両の速度である車速を検出する車速センサ62と、を有し、そのときの車両の車両状態(ギア位置、車速)を検出する。ここで、ギア位置センサ61とは、ドライバー又はシステムによって選択されているレンジ位置が、パーキング位置(駐車位置)であるか、リバース位置(後退走行位置)であるか、ドライブ位置(前進走行位置)であるかどうかを検出するセンサである。即ち、ギア位置センサ61には、ギア変速機が搭載されているか否かを問わず、例えば、ギア変速機が搭載されていない電気自動車でレンジ位置(Dレンジ位置、Rレンジ位置、Pレンジ位置、Nレンジ位置等)を検出するセンサも含む。
【0022】
次に、低速ADAS用カメラ制御ECU50の詳細構成を、図1を参照して説明する。低速ADAS用カメラ制御ECU50は、図1に示すように、データ送受信部501と、記憶部502と、優先度設定部503と、車両状態判定部504と、実行部505と、負荷予測部506と、を備えている。さらに、電源制御部507と、カメラ制御部508と、画像認識部509と、更新管理部510と、機能制御部511と、タイマー設定部512と、を備えている。
【0023】
データ送受信部501は、ゲートウェイECU20と第3のCAN通信線73により接続され、低速ADAS用カメラ制御ECU50のソフトウェア情報をバージョン番号情報と共に受信する等、各種のデータを送受信する。
【0024】
記憶部502は、低速ADAS用カメラ制御ECU50が受け付けた受信データと、低速ADAS用カメラ制御ECU50から外部へ送出する送信データと、を一時的に保存する。加えて、記憶部502には、車両状態毎に予測される最大処理負荷を対応付けた車両状態表(図3を参照)と、システム機能毎に機能予測時間を対応付けた機能表(図6を参照)と、が記憶されている。
【0025】
優先度設定部503は、車両状態に基づく最大処理負荷に基づき、ソフトウェア更新の優先度を設定する。優先度設定部503による基本的な優先度設定は以下の通りである。車両状態が、最大処理負荷が閾値2(>閾値1)よりも大きいと予測される状態であるときは、低速ADAS用カメラ制御ECU50のソフトウェアを更新する処理の優先度を車両状態において実行されうるシステム機能の処理の優先度よりも低くする。一方、車両状態が、最大処理負荷が閾値1(<閾値2)よりも小さいと予測される状態であるときは、低速ADAS用カメラ制御ECU50のソフトウェアを更新する処理の優先度を車両状態において実行されうるシステム機能の処理の優先度よりも高くする。なお、「優先度」とは、システム機能処理とソフトウェア更新処理とを同時進行にて実行するとき、ECUが有する総処理能力に対して2つの処理に割り振られる処理能力の度合(比率)をいう。
【0026】
車両状態判定部504は、車両状態検出部60から車両のギア位置情報と車速情報を受信し、そのときのギア位置と車速の組み合わせによって車両状態を判定する。
【0027】
実行部505は、優先度設定部503において設定されたソフトウェア更新処理とシステム機能処理の優先度に基づいて、低速ADAS用カメラ制御ECU50においてソフトウェア更新処理とシステム機能処理を実行する。
【0028】
負荷予測部506は、各種の車両状態に応じて予め設定保存された図3に示す車両状態表を参照して、各種の車両状態に対応付けられた最大処理負荷を予測する。
【0029】
電源制御部507は、低速ADAS用カメラ制御ECU50の電源を制御する。例えば、低速ADAS用カメラ制御ECU50の電源のON/OFFを制御する。
【0030】
カメラ制御部508は、自動駐車支援システム等の要求操作がなされ、低速ADAS用カメラ制御ECU50が作動するときにカメラ40を起動する。そして、カメラ40からの車両の周囲を撮影した映像データに基づいて、車両の俯瞰画像や車両の周囲画像等を生成する画像生成処理を行う。
【0031】
画像認識部509は、カメラ制御部508により生成された車両の俯瞰画像や車両の周囲画像等に基づいて、車両周囲に存在する障害物や移動物体等を画像認識する。
【0032】
更新管理部510は、TCU10及びゲートウェイECU20を介して転送されたソフトウェア更新情報に基づいて、低速ADAS用カメラ制御ECU50に有する複数のソフトウェアの更新を管理する。ソフトウェア更新管理には、例えば、複数のソフトウェアの中に未完了のソフトウェア更新処理があるかどうかを判断することも含まれる。
【0033】
機能制御部511は、要求されたシステム機能(カメラ表示、移動物体検出、駐車空間探索、自動駐車)を制御し、実行する。また、システム機能要求の有無を判定し、システム要求がある場合、要求されたシステム機能(カメラ表示、移動物体検出、駐車空間探索、自動駐車)の内容に関する情報をタイマー設定部512へ送信する。
【0034】
タイマー設定部512は、システム機能が要求されているとき、又は、システム機能が要求されていないとき、次に車両状態を検出するタイミングを制御するためのタイマー時間を設定する。タイマー設定部512は、複数のシステム機能(カメラ表示、移動物体検出、駐車空間探索、自動駐車)のうち一つのシステム機能が要求されると、図6に示す機能表を参照して、要求されるシステム機能が継続する時間である機能予測時間に合わせてタイマーを設定する。また、タイマー設定部512は、システム機能が要求されないとき、図3に示す車両状態表を参照して、車両状態毎に設定された状態予測時間に合わせてタイマーを設定する。さらに、タイマー設定部512は、タイマー設定以外に、設定されたタイマー時間が経過した否かの判断処理等によるタイマー管理機能も併せて有する。
【0035】
次に、図2のフローチャートを参照して低速ADAS用カメラ制御ECU50にて実行されるソフトウェア更新処理について説明する。なお、ソフトウェア更新装置の処理の流れは、本発明に係るソフトウェア更新方法の一実施形態である。
【0036】
ステップS1では、車両起動、又は、ステップS7でのYES(タイマー時間が経過)の判断に続き、更新管理部510において、未完了のソフトウェア更新処理があるかどうかを判断する。NOの場合には、ステップS1の判断を繰り返す。
【0037】
ここで、低速ADAS用カメラ制御ECU50は、例えば、システム機能(カメラ表示、移動物体検出、駐車空間探索、自動駐車)毎に、バージョン番号が付されたソフトウェアを有する。よって、そのときに使われているバージョン番号より大きな番号のソフトウェアの転送がないと、未完了のソフトウェア更新処理がないと判断される。一方、そのときに使われているバージョン番号より大きな番号のソフトウェアの転送があると、未完了のソフトウェア更新処理があると判断される。
【0038】
ステップS2では、ステップS1でのYES(未完了の更新処理がある)との判断に続き、車両状態判定部504において、車両状態検出部60から車両のギア位置情報と車速情報を受信し、ギア位置と車速組み合わせにより車両状態を検出する。
【0039】
ステップS3では、ステップS2での車両状態の検出に続き、図3に示す車両状態表を参照して、負荷予測部506が各車両状態に対応付けられた最大処理負荷を予測する。なお、車両状態毎に実行されうるシステム機能は、図3における「実行されうる機能」として定められているため、1つの車両状態につき最大でかかる処理負荷を予測することができる。
【0040】
ステップS4では、ステップS3での最大処理負荷の予測判定に続き、優先度設定部503において、車両状態に基づく最大処理負荷によってソフトウェア更新の優先度を設定する。即ち、最大処理負荷が低負荷であるLow(閾値1よりも低い)ならばソフトウェア更新の実行を優先し、最大処理負荷が高負荷であるHigh(閾値2よりも高い)ならばシステム機能の実行を優先するようCPUリソースを配分する。例えば、高速走行中は、低速ADAS用カメラ制御ECU50によるシステム機能を使わないため、ソフトウェア更新の実行に用いるCPUリソースを半分より多く割り振る。
【0041】
ここで、「CPUリソース」とは、IT用語でコンピューターのソフトウェアやハードウェアにおいて処理を実行させるために必要なハードディスク容量、CPUの処理速度、メモリー容量等の資源を意味する。よって、「CPUリソースを割り振る」とは、CPUが有する総処理能力を所定の比率により割り振ることをいう。例えば、低速ADAS用カメラ制御ECU50が、CPUとして、1つのプロセッサー内に複数のプロセッサ・コアが搭載されているマルチコア・プロセッサーである。この場合、ソフトウェア更新処理とシステム機能処理のそれぞれを、どのプロセッサ・コアに割り当てるかを設定することで、CPUリソースが割り振られる。なお、1つのプロセッサー内に1つのみのプロセッサ・コアが搭載されている低速ADAS用カメラ制御ECU50である場合は、そのプロセッサ・コアによる処理領域を振り分けて割り当てる。
【0042】
ステップS5では、ステップS4でのソフトウェア更新の優先度設定に続き、機能制御部511において、システム機能要求の有無を判定する。そして、システム機能要求がある場合、要求されたシステム機能の内容に関する情報をタイマー設定部512へ送信する。
【0043】
ステップS6では、ステップS5でYES(システム機能要求が有る)と判断されると図6に示す機能表を参照して、タイマー設定部512は各機能に対応付けられた機能予測時間に基づいて、タイマーを設定する。このタイマーによって、車両状態が変化したかどうかを確認するタイミングが制御される。例えば、自動駐車機能は、図6のNo5に示すように、高負荷な状態が2分間継続するので、頻繁(例えば1秒おき)にソフトウェア更新処理の状況を確認することは避ける。これによって、CPUの負荷を上げることを避けられる。
【0044】
ステップS7では、ステップS6での機能予測時間に基づくタイマー設定、或いは、ステップS8での状態予測時間に基づくタイマー設定(後述)の後、タイマー設定部512において、タイマー設定された時間を経過したどうかを判定する。タイマー設定された時間が経過したらステップS1へ戻る。また、タイマー設定された時間が経過するまで、ステップS7の判定を繰り返す。
【0045】
ステップS8では、ステップS5でのNO(システム機能要求が無い)との判断に続き、タイマー設定部512において、図3に示す車両状態表を参照して、機能が実行されない場合のタイマーを設定し、ステップS7へ進む。
【0046】
よって、未完了の更新処理が有り、かつ、機能要求が有りのときは、図2のフローチャートにおいて、S1→S2→S3→S4→S5→S6→S7へと進み、ステップS7にてタイマー設定された時間が経過したと判断されたら、ステップS1へ戻る。また、未完了の更新処理が有るが、機能要求が無いときは、図2のフローチャートにおいて、S1→S2→S3→S4→S5→S8→S7へと進み、ステップS7にてタイマー設定された時間が経過したと判断されたら、ステップS1へ戻る。
【0047】
次に、図3図5を参照して低速ADAS用カメラ制御ECU50にて実行されるソフトウェア更新処理において、最大処理負荷を判定する最大処理負荷判定作用、及び、最大処理負荷の判定結果に基づく優先度設定作用について説明する。
【0048】
まず、記憶部502には、図3に示す車両状態表が記憶保存されている。車両状態表には、6種類の車両状態のそれぞれに応じて実行されうるシステム機能(※機能表に対応)、最大負荷予測(係数)、状態予測時間、ソフトウェア更新の優先度が設定されている。また、最大負荷予測は、Low(低負荷)<閾値1<Mid(中負荷)<閾値2<High(高負荷)というように2つの閾値を用いて3段階に分けた設定としている。ここで、図3に示す車両状態表において、最大負荷予測の根拠は、図6の機能表に記載の「実際の処理負荷」である。そして、車両状態毎に実行されうる機能が限られているため、実行されうる機能における処理負荷のうち最大のものが図3に示す車両状態表の最大負荷予測に採用される。
【0049】
例えば、車両状態検出部60によってパーキング位置が選択されている状態(車速=0km/h)が検出されたとする。記憶部502に記憶された車両状態表を参照すると、この車両状態の場合、低速ADAS用カメラ制御ECU50のシステム機能として実行されうる機能は無く、最大負荷予測は、閾値1よりも小さいLow(低負荷)と記憶されている。そして、記憶部502に記憶された車両状態表を参照すると、状態予測時間は、1秒であり、ソフトウェア更新の優先度は、High(高優先度)と記憶されている。このように、パーキング位置が選択されて停車している車両状態は、自動駐車支援のシステム機能による処理が無いと予測されるため、ソフトウェア更新優先度が高く設定され、低速ADAS用カメラ制御ECU50のシステム機能による処理の優先度が低く設定される。
【0050】
例えば、車両状態検出部60によってリバース位置が選択され、かつ、停車している状態(車速=0km/h)、又は、低速状態(車速=1~30km/h)が検出されたと仮定する。記憶部502に記憶された車両状態表を参照すると、この車両状態の場合、低速ADAS用カメラ制御ECU50のシステム機能として実行されうる機能は、図6のNo2(カメラ表示),No3(移動物体検出)であり、最大負荷予測は、閾値2よりも大きいHigh(高負荷)と記憶されている。そして、記憶部502に記憶された車両状態表を参照すると、状態予測時間は、1秒であり、ソフトウェア更新の優先度はLow(低優先度)と記憶されている。このように、リバース位置が選択されて停車又は低速走行している車両状態は、カメラ表示機能や移動物体検出機能が実行されうるため、ソフトウェア更新優先度が低く設定され、低速ADAS用カメラ制御ECU50のシステム機能による処理の優先度が高く設定される。そして、状態予測時間は、基本的に1秒だが、移動物体検出機能が実行されると、移動物体検出機能が継続すると予測される時間(1分)に設定される。このように、状態予測時間に基づいて車両状態を検出するタイミングを制御するタイマーが設定されるため、低速ADAS用カメラ制御ECU50のシステム機能である移動体物体検出機能が継続している間はソフトウェア更新処理の状況を確認せず、CPU負荷を軽減することができる。
【0051】
例えば、車両状態検出部60によってドライブ位置が選択され、かつ、停車している状態(車速=0km/h)が検出されたと仮定する。記憶部502に記憶された車両状態表を参照すると、この車両状態の場合、低速ADAS用カメラ制御ECU50のシステム機能として実行されうる機能は、図6のNo2(カメラ表示),No4(駐車空間探索),No5(自動駐車)であり、最大負荷予測は、閾値2よりも大きいHigh(高負荷)と記憶されている。そして、記憶部502に記憶された車両状態表を参照すると、状態予測時間は、1秒であり、ソフトウェア更新の優先度はLow(低優先度)と記憶部502に記憶されている。このように、ドライブ位置が選択されて停車している車両状態は、カメラ表示機能や駐車空間探索機能や自動駐車機能が実行されうるため、ソフトウェア更新優先度が低く設定される。そして、状態予測時間は、基本的に1秒であるが、自動駐車機能が実行される時点で、自動駐車機能が継続すると予測される時間(2分)にセットされる。状態予測時間に基づいて車両状態を検出するタイミングを制御するタイマーが設定されるため、低速ADAS用カメラ制御ECU50のシステム機能である自動駐車機能が継続している間はソフトウェア更新処理の状況を確認せず、CPU負荷を軽減することができる。
【0052】
例えば、車両状態検出部60によってドライブ位置が選択され、かつ、低速状態(車速=1~30km/h)が検出されたと仮定する。記憶部502に記憶された車両状態表を参照すると、この車両状態の場合、低速ADAS用カメラ制御ECU50のシステム機能として実行されうる機能は、図6のNo2(カメラ表示),No4(駐車空間探索)であり、最大負荷予測は、閾値1より大きく閾値2よりも小さいMid(中負荷)と記憶されている。そして、記憶部502に記憶された車両状態表を参照すると、状態予測時間は、1秒であり、ソフトウェア更新の優先度はLow(低優先度)と記憶されている。このように、ドライブ位置が選択されて停車している車両状態は、カメラ表示機能や駐車空間探索機能が実行されうるため、ソフトウェア更新優先度が低く設定される、低速ADAS用カメラ制御ECU50のシステム機能による処理の優先度が高く設定される。そして、状態予測時間は、基本的に1秒である。
【0053】
例えば、車両状態検出部60によってドライブ位置が選択され、かつ、高速状態(車速=30km/h~)が検出されたと仮定する。記憶部502に記憶された車両状態表を参照すると、この車両状態の場合、低速ADAS用カメラ制御ECU50のシステム機能として実行されうる機能は無く、最大負荷予測は、閾値1よりも小さいLow(低負荷)と記憶されている。そして、記憶部502に記憶された車両状態表を参照すると、状態予測時間は、2秒以上であり、ソフトウェア更新の優先度はHigh(高優先度)と記憶されている。なお、機能No2から機能No5の各機能を実行するには車両の速度が、例えば、30km/h以下の低速であることが求められる。このため、ドライブ位置が選択されて高速走行(例えば、50km/h程度)している車両状態では、各システム機能に移行することが無いと予測されるため、ソフトウェア更新優先度が高く設定される。そして、状態予測時間も、いきなり車両状態が変化する可能性は低いため、1秒よりも長い時間(例えば2秒)が設定されるとされる。このように、1秒よりも長い間隔で車両状態を検出することで、CPU負荷を軽減することができる。
【0054】
そして、優先度設定部503は、車両状態検出部60によって検出された車両状態がHigh(高負荷)に対応する状態であると予測されると、自動駐車支援の制御処理を優先し、低速ADAS用カメラ制御ECU50のCPUリソース配分を、ソフトウェアの更新処理配分より自動駐車支援の制御処理配分に多く割り振る。具体的なCPUリソース配分の例を図4に示す。例えば、100%のCPUリソースのうち、実質的に稼働するCPUリソース(70%程度)を2:1の比率で分け、比率2を自動駐車支援の制御処理に配分し、比率1をソフトウェアの更新処理に配分する。
【0055】
また、優先度設定部503は、車両状態検出部60によって検出された車両状態がLow(低負荷)に対応する状態であると予測されると、ソフトウェア更新処理を優先し、低速ADAS用カメラ制御ECU50のCPUリソース配分を、自動駐車支援の制御処理配分よりソフトウェアの更新処理配分に多く割り振る。具体的なCPUリソース配分の例を図4に示す。例えば、高負荷と予測される場合とは逆に、比率2をソフトウェアの更新処理に配分し、比率1を自動駐車支援の制御処理に配分する。
【0056】
さらに、優先度設定部503は、Mid(中負荷)と予測されると、次の処理を行う。例えば、低速ADAS用カメラ制御ECU50のCPUリソースが自動駐車支援の制御処理ソフトウェアの更新処理とで均等に割り振られる。具体的なCPUリソース配分の例を図5に示す。例えば、100%のCPUリソースのうち、実質的に稼働するCPUリソース(70%程度)を1:1の比率で分け、自動駐車支援の制御処理とソフトウェアの更新処理に対して等配分する。
【0057】
次に、図6図7を参照して、低速ADAS用カメラ制御ECU50にて実行されるソフトウェア更新処理において、車両状態を検出するタイミングを制御するタイマーの作用について説明する。
【0058】
記憶部502には、図6に示す機能表が記憶保存されている。機能表には、1~5の番号のそれぞれに応じた機能、実際の処理負荷(係数)、機能予測時間(負荷が継続する時間)が設定されている。そして、タイマー設定部512は、複数のシステム機能のうち一つのシステム機能が実行されると、実行されるシステム機能が継続する予測時間に合わせてタイマーを設定する。
【0059】
記憶部502に記憶された車両状態表を参照すると、No2のカメラ表示機能の場合、実際の処理負荷は、Mid(中負荷)という負荷情報が記憶され、機能予測時間は、1秒と記憶されている。
【0060】
記憶部502に記憶された車両状態表を参照すると、No3の移動物体検出機能の場合、実際の処理負荷は、High(高負荷)と記憶され、機能予測時間は、1分と記憶されている。
【0061】
記憶部502に記憶された車両状態表を参照すると、No4の駐車空間探索機能の場合は、実際の処理負荷は、Mid(中負荷)と記憶され、機能予測時間は、1秒と記憶されていると。
【0062】
記憶部502に記憶された車両状態表を参照すると、No5の自動駐車機能の場合は、実際の処理負荷は、High(高負荷)と記憶され、機能予測時間は、2分と記憶されている。なお、No1は、機能なしである。
【0063】
図7において、低速ADAS用カメラ制御ECU50が実行するシステム機能と車両状態の遷移を説明する。なお、カメラ表示、後方移動体検出、車両制御(自動駐車)、駐車空間探索はいずれも低速ADAS用カメラ制御ECU50が実行するシステム機能である。例えば、カメラ表示から後方移動体検出へ移行するとき、ギア位置をリバース位置へ切り替える操作が必要である。また、後方移動体検出からカメラ表示へ移行するとき、表示ボタンへのユーザ操作が行われる。そして、画像認識部509が後方カメラからのカメラ画像を画像処理することによって後方移動体を認識することで、後方移動体検出が実現される。後方移動体の認識は継続して行われ、後方移動体を認識すると警告を出力する。このため、No3の移動物体検出機能の場合、実際の処理負荷が高い。さらに、ギア位置をリバース位置へ切り替える操作が行われると、ドライバーは車両を駐車したいと推測できることから、車両が後進で駐車する状態は1秒よりも長く継続すると考えられる。したがって、移動物体検出はすぐに終了するものではなく1分程度継続する処理であるため、機能予測時間を例えば1分とする。
【0064】
例えば、図7に示すように、カメラ表示から駐車空間探索へ移行するときは、開始ボタン操作が行われる。また、駐車空間探索からカメラ表示へ移行するとき、ユーザキャンセル操作が行われる。駐車可能な空間の検出を試みるNo4の駐車空間探索の場合、実際の処理負荷が中負荷である。また、駐車空間の探索はユーザの操作によって終了するため、比較的頻繁にソフトウェア更新処理の状況を確認する必要がある。このため、機能予測時間は、例えば、1秒に設定される。
【0065】
例えば、図7に示すように、駐車空間探索から自動駐車へ移行するとき、ユーザ操作が行われる。また、自動駐車からカメラ表示へ移行するとき、表示ボタンへのユーザ操作が行われる。そして、自動駐車が行われるとき、機能制御部511において、検出した駐車枠に車両を駐車させる自動運転による複雑な車両制御処理が必要である。このため、No5の自動駐車機能の場合は、実際の処理負荷が高くなる。また、自動駐車が実行されている間は他のシステム機能が実行されないため、自動駐車が実行されている間に頻繁にソフトウェア更新処理の状況を確認しても確認のための処理負荷が高くなるだけである。したがって、機能予測時間として、例えば、自動駐車が実行される時間の目安である2分が設定される。
【0066】
以上説明したように、実施例1のソフトウェア更新装置及びソフトウェア更新方法にあっては、下記に列挙する効果が得られる。
【0067】
(1)車両に搭載されている電子制御ユニットのソフトウェアを更新する装置であって、車両状態検出部60と、最大処理負荷情報の記憶部502と、優先度設定部503と、実行部505と、を備える。優先度設定部503は、車両状態が、最大処理負荷が所定の閾値よりも大きいと予測される状態であるとき、電子制御ユニットのソフトウェアを更新する処理の優先度を車両状態において実行されうるシステム機能の処理の優先度よりも低くする。車両状態が、最大処理負荷は所定の閾値よりも小さいと予測される状態であるとき、電子制御ユニットのソフトウェアを更新する処理の優先度を車両状態において実行されうるシステム機能の処理の優先度よりも高くする。即ち、車載の電子制御ユニットのソフトウェアを更新するとき、車両状態(ギア位置や車速)に基づいて、現在の車両状態で実行されうるシステム機能から最大処理負荷を予測する。そして、予測された最大処理負荷が大きければソフトウェア更新処理の優先度を低くし、予測された最大処理負荷が小さければソフトウェア更新処理の優先度を高くする構成を採用している。このため、車載制御ユニットによる本来の機能を実行する処理を制限することなく、遅延を抑えながらソフトウェア更新を実行するソフトウェア更新装置を提供することができる。
【0068】
(2)電子制御ユニットは、システム機能としてカメラ映像を用いる制御処理を実行する自動駐車支援システムのカメラ制御ユニット(低速ADAS用カメラ制御ECU50)である。車両状態検出部60は、選択されている車両のギア位置を検出するギア位置センサ61と、車速を検出する車速センサ62と、を有する。このため、自動駐車支援の制御処理を実行するカメラ制御ユニットを搭載した車両において、ギア位置と車速による車両状態を検出するだけで、カメラ制御ユニットの機能を制限することなく、ソフトウェア更新を実行することができる。
【0069】
(3)記憶部502は、車両状態が、ギア位置としてリバース位置が選択され、かつ、車速が設定車速以下である状態、又は、ギア位置としてドライブ位置が選択され、かつ、停車している状態のとき、最大処理負荷が所定の閾値(閾値2)よりも大きい高負荷であることを記憶する。優先度設定部503は、車両状態検出部60によって、ギア位置としてリバース位置が選択され、かつ、車速が設定車速以下である状態、又は、ギア位置としてドライブ位置が選択され、かつ、停車している状態であると検出されるとき、自動駐車支援の制御処理を優先し、カメラ制御ユニットのCPUリソース配分を、ソフトウェアの更新処理配分より自動駐車支援の制御処理配分に多く割り振る。このため、最大処理負荷が高負荷と予測されたとき、ソフトウェアの更新処理を行いつつ、自動駐車支援の制御処理が制限されるのを防止することができる。
【0070】
(4)記憶部502は、車両状態が、ギア位置としてパーキング位置が選択されている状態、又は、ギア位置としてドライブ位置が選択され、かつ、車速が設定車速以上のとき、最大処理負荷は所定の閾値(閾値1)よりも小さい低負荷であることを記憶する。優先度設定部503は、車両状態検出部60によって、ギア位置としてパーキング位置が選択されている状態、又は、ギア位置としてドライブ位置が選択され、かつ、車速が設定車速以上の状態であると検出されるとき、ソフトウェア更新処理を優先し、カメラ制御ユニットのCPUリソース配分を、自動駐車支援の制御処理配分よりソフトウェアの更新処理配分に多く割り振る。このため、最大処理負荷が低負荷と予測されたとき、自動駐車支援の制御処理が制限されるのを抑えつつ、ソフトウェア更新に要する時間を短縮することができる。
【0071】
(5)記憶部502は、車両状態が、ギア位置としてドライブ位置が選択され、かつ、車速が設定車速未満の走行状態が検出されると、最大処理負荷は低負荷よりも負荷が大きく、高負荷よりも負荷が小さい中負荷であることを記憶する。優先度設定部503は、車両状態検出部60によって、ギア位置としてドライブ位置が選択され、かつ、車速が設定車速未満の走行状態であると検出されるとき、カメラ制御ユニットのCPUリソース配分を、自動駐車支援の制御処理配分とソフトウェアの更新処理配分で均等に割り振る。このため、最大処理負荷が中負荷と予測されたとき、制限のない自動駐車支援の制御処理と遅延を抑えるソフトウェアの更新処理とを両立させることができる。
【0072】
(6)車両状態を検出するタイミングを制御するタイマーを設定するタイマー設定部512をさらに備える。タイマー設定部512は、複数のシステム機能のうち一つのシステム機能が実行されると、実行されるシステム機能が継続する予測時間に合わせてタイマーを設定する。このため、実行されるシステム機能が継続する予測時間に合わせたタイマーの設定により、車両状態を検出するタイミングを、車両状態の変化が予測される適切なタイミングに制御することができる。
【0073】
(7)車両に搭載されている電子制御ユニットのソフトウェアを更新する方法であって、更新処理ソフト判断ステップ(S1)と、車両状態検出ステップ(S2)と、最大処理負荷判定ステップ(S3)と、優先度設定ステップ(S4)と、処理実行ステップ(S5~S8)と、を備える。優先度設定ステップ(S4)は、車両状態が、最大処理負荷が所定の閾値よりも大きいと予測される状態であるとき、電子制御ユニットのソフトウェアを更新する処理の優先度を車両状態において実行されうるシステム機能の処理の優先度よりも低くする。車両状態が、最大処理負荷が所定閾値よりも小さいと予測される状態であるとき、電子制御ユニットのソフトウェアを更新する処理の優先度を車両状態において実行されうるシステム機能の処理の優先度よりも高くする。このため、車載制御ユニットによる本来の機能を実行する処理を制限することなく、遅延を抑えながらソフトウェア更新を実行するソフトウェア更新方法を提供することができる。
【0074】
以上、本発明のソフトウェア更新装置及びソフトウェア更新方法を実施例1に基づき説明してきた。しかし、具体的な構成については、この実施例1に限られるものではない。特許請求の範囲の各請求項に係る発明の要旨を逸脱しない限り、設計の変更や追加などは許容される。
【0075】
実施例1では、ソフトウェア更新の対象とする電子制御ユニットとして、TCU10、ゲートウェイECU20、ナビECU30と共に、予め車両に搭載されている低速ADAS用カメラ制御ECU50のソフトウェアを更新する例を示した。しかし、ソフトウェア更新の対象とする電子制御ユニットは、予め車両に搭載されているECUに限られない。例えば、車外から持ち込んで車両に搭載され、アプリケーションソフトとして駐車表示支援ソフトをダウンロードしているスマートフォンやタブレットパーソナルコンピュータ等の携帯端末であってもよい。この場合、車両状態の検出情報は、無線通信によって車載ECUから取得される。
【0076】
実施例1では、ソフトウェア更新の対象とする電子制御ユニットとして、カメラ映像を用いる制御処理を実行する自動駐車支援システムの低速ADAS用カメラ制御ECU50の例を示した。しかし、ソフトウェア更新の対象とする電子制御ユニットは、自動駐車支援システムのカメラ制御ユニットに限定されず、ソフトウェア更新が必要な様々なECUが含まれる。例えば、運転支援システムの場合、ACCS(Adaptive Cruise Control System:アダプティブクルーズコントロールシステム)、FCWS(Forward Collision Warning System:前方衝突警告システム)、AEBS(Advanced Emergency Braking System:衝突被害軽減制動システム)、NV/PDS(Night Vision/Pedestrian Detection System:ナイトビジョン/歩行者検出システム)、TSRS(Traffic Sign Recognition System:交通標識認識システム)、LDWS(Lane Departure Warning System:車線逸脱警報システム)、LKAS(Lane Keeping Assist System:車線逸脱防止支援システム)、BSMS(Blind Spot Monitoring System:死角モニタリングシステム)、等が含まれる。
【0077】
実施例1では、車両状態検出部として、選択されている車両のギア位置を検出するギア位置センサ61と、車速を検出する車速センサ62と、を有する例を示した。しかし、車両状態検出部としては、ギア位置と車速を検出する検出部に限られず、最大処理負荷を予測する場合、現在の車両状態で実行されうるシステム機能を特定できる車両状態の検出部であればよい。例えば、運転支援システムによっては、車両の旋回状態を検出する舵角センサや車両の加速状態や減速状態を検出する前後Gセンサ等を加えてもよい。
【0078】
実施例1では、負荷予測部506として、Low(低負荷)<閾値1<Mid(中負荷)<閾値2<High(高負荷)というように2つの閾値を用いて最大負荷予測を3段階に分けて設定した例を示した。しかし、負荷予測部としては、1つの閾値を用いて最大負荷予測を2段階に分けて設定する例としても良いし、複数の閾値を用いて最大負荷予測を4段階以上に分けて設定する例としても良い。また、CPUのリソース比率についても、図4及び図5に示した具体的な比率に限定されるものではない。
【符号の説明】
【0079】
A 自動駐車支援システム
10 TCU
20 ゲートウェイECU
30 ナビECU(電子制御ユニット)
40 カメラ
50 低速ADAS用カメラ制御ECU(カメラ制御ユニット)
60 車両状態検出部
図1
図2
図3
図4
図5
図6
図7