JP7069084B2 - ソフトウェア更新装置およびソフトウェア更新方法 - Google Patents

ソフトウェア更新装置およびソフトウェア更新方法 Download PDF

Info

Publication number
JP7069084B2
JP7069084B2 JP2019096131A JP2019096131A JP7069084B2 JP 7069084 B2 JP7069084 B2 JP 7069084B2 JP 2019096131 A JP2019096131 A JP 2019096131A JP 2019096131 A JP2019096131 A JP 2019096131A JP 7069084 B2 JP7069084 B2 JP 7069084B2
Authority
JP
Japan
Prior art keywords
communication
vehicle
software
update
unit
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2019096131A
Other languages
English (en)
Other versions
JP2020190488A (ja
Inventor
尚利 加藤
陽介 塩ノ谷
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Honda Motor Co Ltd
Original Assignee
Honda Motor Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Honda Motor Co Ltd filed Critical Honda Motor Co Ltd
Priority to JP2019096131A priority Critical patent/JP7069084B2/ja
Priority to CN202010422103.2A priority patent/CN111984283A/zh
Priority to US16/877,532 priority patent/US20200371774A1/en
Publication of JP2020190488A publication Critical patent/JP2020190488A/ja
Application granted granted Critical
Publication of JP7069084B2 publication Critical patent/JP7069084B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/65Updates
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V20/00Scenes; Scene-specific elements
    • G06V20/50Context or environment of the image
    • G06V20/59Context or environment of the image inside of a vehicle, e.g. relating to seat occupancy, driver state or inner lighting conditions
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04BTRANSMISSION
    • H04B1/00Details of transmission systems, not covered by a single one of groups H04B3/00 - H04B13/00; Details of transmission systems not characterised by the medium used for transmission
    • H04B1/38Transceivers, i.e. devices in which transmitter and receiver form a structural unit and in which at least one part is used for functions of transmitting and receiving
    • H04B1/3827Portable transceivers
    • H04B1/3877Arrangements for enabling portable transceivers to be used in a fixed position, e.g. cradles or boosters
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/34Network arrangements or protocols for supporting network services or applications involving the movement of software or configuration parameters 
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V20/00Scenes; Scene-specific elements
    • G06V20/50Context or environment of the image
    • G06V20/59Context or environment of the image inside of a vehicle, e.g. relating to seat occupancy, driver state or inner lighting conditions
    • G06V20/597Recognising the driver's state or behaviour, e.g. attention or drowsiness
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V40/00Recognition of biometric, human-related or animal-related patterns in image or video data
    • G06V40/10Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands
    • G06V40/16Human faces, e.g. facial parts, sketches or expressions
    • G06V40/174Facial expression recognition
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/12Protocols specially adapted for proprietary or special-purpose networking environments, e.g. medical networks, sensor networks, networks in vehicles or remote metering networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/52Network services specially adapted for the location of the user terminal

Description

本発明は、ソフトウェア更新装置およびソフトウェア更新方法に関する。
従来、外部から車両にデータを提供するための様々な仕組みが知られている(例えば、特許文献1参照)。例えば、車両に搭載されたソフトウェア更新装置が、サーバ装置から更新プログラムをダウンロードし、ダウンロードした更新プログラムを、機器を制御する制御部に組み込まれたソフトウェアに適用して、ソフトウェアを更新している。
特許第5970547号公報
しかしながら、車両は、走行時の通信状況が異なるため、通信状況によっては、データの送受信が適切に行われない場合があった。
本発明は、このような事情を考慮してなされたものであり、より適切な通信状況下でデータの送受信を行うことができるソフトウェア更新装置およびソフトウェア更新方法を提供することを目的の一つとする。
この発明に係るソフトウェア更新装置およびソフトウェア更新方法は、以下の構成を採用した。
(1):この発明の一態様に係るソフトウェア更新装置は、車両に搭載された機器のうち少なくとも一部の機器を制御するソフトウェアが組み込まれた機器制御部と、外部装置と通信する通信部と、前記通信部による外部装置との通信により前記機器制御部に組み込まれた前記ソフトウェアを更新する更新制御部と、前記通信部と前記外部装置との通信状況を管理する通信状況管理部とを備え、前記更新制御部は、前記通信状況管理部により管理された過去の通信状況のうち、所定速度以上の通信状況下で通信を行ったエリアで前記外部装置との通信を実行させる、ソフトウェア更新装置である。
(2):上記(1)の態様において、前記更新制御部は、前記車両の現在位置から目的地までの経路を案内する経路案内部により前記車両の目的地までの経路が設定された場合に、前記経路のうち、前記ソフトウェアの更新を行うための通信を行う領域を設定するものである。
(3):上記(1)または(2)の態様において、前記通信状況管理部により管理された過去の通信状況に基づいて、前記車両の将来の行動予測を行う行動予測部を更に備え、前記行動予測部により予測された前記車両の将来の行動予測に基づいて、前記ソフトウェアの更新を行うための通信を行う領域を設定するものである。
(4):上記(3)の態様において、前記行動予測部は、前記車両の乗員を撮像した画像から前記乗員の状態を推定し、推定した乗員の状態に基づいて、前記車両の将来の行動予測を行うものである。
(5):上記(1)~(4)のうち何れか一つの態様において、前記車両の位置を取得する位置取得部を更に備え、前記通信状況管理部は、前記位置取得部により取得された前記車両の位置に基づき、前記車両が前記過去の通信状況に含まれる位置情報と異なる位置を走行している場合に、前記異なる位置の通信状況を学習するものである。
(6):上記(1)~(5)のうち何れか一つの態様において、前記所定速度以上の通信状況は、Wi-Fi(商標)に準拠した通信方式を用いた通信を含むものである。
(7):上記(1)~(6)のうち何れか一つの態様において、前記更新制御部は、前記通信状況が特定地点におけるWi-Fi(商標)に準拠した通信方式を用いた通信であり、且つ8前記車両が停車している場合に、他の通信状況よりも優先して、前記ソフトウェアの更新を行うための通信を行うものである。
(8):上記(1)~(7)のうち何れか一つの態様において、前記更新制御部は、更新される前記ソフトウェアが緊急性の高いソフトウェアである場合に、通信状況に関係なく外部装置と通信を行い、前記ソフトウェアを更新するための通信を行うものである。
(9):上記(1)~(8)のうち何れか一つの態様において、前記通信部は、前記車両の周辺に存在する他車両と通信を行い、前記更新制御部は、前記通信部により前記他車両または前記外部装置から、前記車両の周辺の通信状況に関する情報を取得した場合に、前記取得した周辺の通信状況に基づいて、前記ソフトウェアの更新を行うための通信を行う領域を設定するものである。
(10):この発明の一態様に係るソフトウェア更新方法は、車両に搭載されるソフトウェア更新装置を実現するコンピュータが、外部装置と通信し、前記外部装置との通信により前記車両に搭載された機器のうち少なくとも一部の機器を制御する制御部に組み込まれたソフトウェアを更新し、前記外部装置との通信状況を管理し、管理された過去の通信状況のうち、所定速度以上の通信状況下で通信を行ったエリアで前記外部装置との通信を実行させる、ソフトウェア更新方法である。
上記(1)~(10)によれば、より適切な通信状況下でデータの送受信を行うことができる。
第1実施形態のソフトウェア更新装置100を含む車両システム1の構成図である。 通信履歴情報164の内容の一例を示す図である。 ソフトウェア管理情報162の内容の一例を示す図である。 更新制御部120の処理について説明するための図である。 通信予定情報166の内容の一例を示す図である。 第1実施形態のソフトウェア更新装置100の処理の一例を示すフローチャートである。 第2実施形態のソフトウェア更新装置100Aを含む車両システム1Aの構成図である。 更新制御部120Aの処理について説明するための図である。 第2実施形態のソフトウェア更新装置100の処理の一例を示すフローチャートである。 第3実施形態に係るソフトウェア更新装置100を含むソフトウェア更新システム2の構成の一例を示す図である。 第3実施形態のサーバ装置200の構成図である。 サーバ側通信履歴情報252の内容の一例を示す図である。 マップ生成部244により生成されるマップの一例を示す図である。 第3実施形態のソフトウェア更新装置100の処理の一例を示すフローチャートである。 第3実施形態のサーバ装置200におけるマップ生成処理の一例を示すフローチャートである。 第3実施形態のサーバ装置200におけるマップ提供処理の一例を示すフローチャートである。
以下、図面を参照し、本発明のソフトウェア更新装置、サーバ装置、およびソフトウェア更新方法の実施形態について説明する。なお、以下では、ソフトウェア更新装置が、車両システムの一部として車両に搭載されている例について説明する。車両は、例えば、二輪や三輪、四輪等の車両であり、その駆動源は、ディーゼルエンジンやガソリンエンジン等の内燃機関、電動機、或いはこれらの組み合わせである。電動機は、内燃機関に連結された発電機による発電電力、或いは二次電池や燃料電池の放電電力を使用して動作する。なお、ソフトウェア装置は、車両以外の移動体に搭載されてもよい。
<第1実施形態>
図1は、第1実施形態のソフトウェア更新装置100を含む車両システム1の構成図である。車両システム1は、例えば、車載装置10と、バッテリ(蓄電池の一例)50と、表示部60と、ソフトウェア更新装置100とを備える。
車載装置10は、例えば、運転制御装置20と、駆動制御装置30と、ナビゲーション装置40とを備える。運転制御装置20は、例えば、車両(以下、車両Mと称する)の自動運転(自律運転)制御や運転支援制御等を行う。自動運転制御とは、例えば、車両Mの乗員による運転操作に依らずに、車両Mの操舵または速度のうち一方または双方を制御することである。また、運転支援制御は、例えば、ACC(Adaptive Cruise Control System)やLKAS(Lane Keeping Assistance System)、CMBS(Collision Mitigation Brake System)等の乗員の運転操作を支援する運転制御である。運転制御装置20は、車両Mの挙動や乗員からの制御指示に対応する運転制御を実行する。ナビゲーション装置40は、「経路案内部」の一例である。
駆動制御装置30は、車両Mに駆動力等を与えて車両Mを走行させるための装置である。駆動制御装置30は、例えば、車両Mが走行するための走行駆動力(トルク)を駆動輪に出力する走行駆動力出力装置と、所定の制動操作に応じたブレーキトルクを各車輪に出力させるブレーキ装置と、転舵輪の向きを変更させるステアリング装置とを含む。
ナビゲーション装置40は、例えば、GNSS(Global Navigation Satellite System)受信機41と、ナビHMI(Human Machine Interface)42と、経路決定部43とを備える。ナビゲーション装置40は、HDD(Hard Disk Drive)やフラッシュメモリ等の記憶装置に地図情報44を保持している。GNSS受信機41は、GNSS衛星から受信した信号に基づいて、車両Mの位置を特定する。車両Mの位置は、車両Mに搭載された車両センサ(不図示)の出力を利用したINS(Inertial Navigation System)によって特定または補完されてもよい。なお、第1実施形態では、ナビゲーション装置40に代えて、車両MにGPS(Global Positioning System)装置を搭載し、GPS装置によって車両Mの位置を取得してもよい。ナビゲーション装置40またはGPS装置は、車両Mの位置を取得する「位置取得部」の一例である。
ナビHMI42は、ディスプレイ、スピーカ、タッチパネル、キー等を含む。ナビHMI42は、画像や音声等を用いて乗員に目的地等を設定させたり、目的地までの走行経路を乗員に案内する。経路決定部43は、例えば、GNSS受信機41により特定された車両Mの位置(或いは入力された任意の位置)から、ナビHMI42を用いて乗員により入力された目的地までの経路(以下、地図上経路)を、地図情報44を参照して決定する。地図情報44は、例えば、道路を示すリンクと、リンクによって接続されたノードとによって道路形状が表現された情報である。地図情報44は、道路の曲率やPOI(Point Of Interest)情報等を含んでもよい。また、地図情報44は、例えば、車線の中央の情報あるいは車線の境界の情報、車線の種別の情報等を含んでもよい。また、地図情報44には、道路情報、交通規制情報、住所情報(住所・郵便番号)、施設情報、電話番号情報等が含まれてよい。地図情報44は、通信部110が他装置と通信することにより、随時、アップデートされてよい。ナビゲーション装置40は、地図上経路に基づいて、表示部60による地図画像表示やスピーカ(不図示)による音声出力によって、経路案内等を行う。
ここで、車載装置10の運転制御装置20、駆動制御装置30、およびナビゲーション装置40の各機器は、それぞれECU(Electronic Control Unit)を中心として構成される。ECUは、「機器制御部」の一例である。ECUは、例えば、プロセッサ、メモリ、補助記憶装置、および外部通信インターフェース等が、バスで接続されたものである。ECUには、ソフトウェアが組み込まれており、ソフトウェアを実行することで、対応する機器の少なくとも一部の制御が実行される。ソフトウェアは、少なくとも一以上のプログラムモジュールを含む。プログラムモジュールとは、例えば、一以上のプログラムを含み、ソフトウェアによって実現できる機能のうち部分的な機能を実行するものである。ソフトウェアは、例えば、更新制御部120の制御によってモジュール単位の更新が可能である。以下では、更新用のソフトウェア(以下、更新ソフトウェアと称する)を外部装置(例えば、ソフトウェア提供装置)からダウンロードして機器のソフトウェアを更新する一連の処理を「リプログラミング」と称する場合がある。また、各機器のECUを区別しない場合には、単に「ECU」と称して説明する場合がある。
バッテリ50は、例えば、車載装置10や表示部60、ソフトウェア更新装置100、その他の車両M内の電気機器等に電力を供給する。リプログラミングの実行時に用いられる電源は、主にバッテリ50から更新対象のECUに供給される。また、車両システム1は、充電コネクタ52を備えていてもよい。充電コネクタ52は、充電スポットまたは乗員の自宅に設置された充電設備から供給される電力を取得するために、充電設備の充電プラグと接続される、着脱自在に構成されたコネクタである。例えば、充電コネクタ52と充電プラグとが接続された状態において、バッテリ50の充電が行われる。なお、車両Mは、充電コネクタ52に代えて、無線で電力を受信する電力受信部(不図示)を備えてもよい。この場合、電力受信部が充電スポット等に設けられた電力送信部から非接触で電力を受信できる位置に車両Mを停車させることで、ワイヤレスでバッテリ50の充電が行われる。
表示部60は、例えば、LCD(Liquid Crystal Display)や有機EL(Electro Luminescence)ディスプレイ等の表示装置である。表示部60は、例えば、表示制御部140により生成された画像を表示する。表示部60は、例えば、タッチパネル装置として、乗員からの操作内容を受け付ける機能を備えていてもよい。また、表示部60は、ナビゲーション装置40と一体に構成され、ナビゲーション装置40による目的地までの経路案内等の表示を行ってもよい。
ソフトウェア更新装置100は、例えば、通信部110と、更新制御部120と、通信状況管理部130と、表示制御部140と、バッテリ管理部150と、記憶部160とを備える。これらの構成要素は、例えば、CPU(Central Processing Unit)等のハードウェアプロセッサがプログラム(ソフトウェア)を実行することにより実現される。また、これらの構成要素のうち一部または全部は、LSI(Large Scale Integration)やASIC(Application Specific Integrated Circuit)、FPGA(Field-Programmable Gate Array)、GPU(Graphics Processing Unit)等のハードウェア(回路部;circuitryを含む)によって実現されてもよいし、ソフトウェアとハードウェアの協働によって実現されてもよい。プログラムは、予め記憶部160に格納されていてもよいし、DVDやCD-ROM等の着脱可能な記憶媒体に格納されており、記憶媒体がドライブ装置に装着されることで記憶部160にインストールされてもよい。
記憶部160は、例えば、HDD(Hard Disk Drive)、フラッシュメモリ、EEPROM(Electrically Erasable Programmable Read Only Memory)、ROM(Read Only Memory)、またはRAM(Random Access Memory)等により実現される。記憶部160には、例えば、ソフトウェア管理情報162、通信履歴情報164、通信予定情報166、プロセッサによって読み出されて実行されるプログラム、その他各種情報等が格納される。
通信部110は、例えば、セルラー網やWi-Fi(商標)網、Bluetooth(登録商標)、DSRC(Dedicated Short Range Communication)等を利用して、各種サーバ装置や携帯型端末装置と通信したり、車両Mの周辺に存在する周辺車両(他車両)と通信する。各種サーバ装置には、例えば、ECUに組み込まれるソフトウェアを提供するサーバ装置が含まれる。通信部110は、例えば、TCU(Telematics Control Unit)であってもよい。
更新制御部120は、例えば、通信部110を介して、外部装置からソフトウェアの更新があることを示す情報(以下、更新情報)を受信した場合、表示部60等を用いて、車両Mの乗員または所有者等に、ソフトウェアの更新が有ることを通知する。ソフトウェアとは、上述したECUに組み込まれるソフトウェアである。また、更新制御部120は、車両Mの乗員または所有者等からソフトウェアの更新指示を受け付けた場合、ECUごとに組み込まれるソフトウェアを更新するためのリプログラミング制御を行う。
例えば、更新制御部120は、通信部110により受信した外部装置からの更新情報と、記憶部160に記憶されたソフトウェア管理情報162とに基づいて更新の有無を判定し、更新が必要であると判定された場合にリプログラミング制御を行う。また、更新制御部120は、記憶部160に記憶された通信履歴情報164に基づいて、更新を行うタイミングやサーバ装置から更新ソフトウェアをダウンロードするときのデータ容量の調整を行う。更新制御部120の機能の詳細については後述する。
通信状況管理部130は、車両Mが通信部110を介して外部装置とデータの送受信を行った場合に、そのときの車両Mの位置、通信方式、データ容量等の通信状況を取得する。また、通信状況管理部130は、取得した通信状況に基づいて、過去の通信状況の一例としての通信履歴情報164を生成し、生成した通信履歴情報164を記憶部160に記憶させる。
図2は、通信履歴情報164の内容の一例を示す図である。通信履歴情報164は、日時情報に、位置情報、通信方式情報、データ量、およびデータ内容等が対応付けられている。日時情報とは、通信部110により外部と通信を行った日時に関する情報である。日時情報には、例えば、通信開始時刻と通信終了時刻の情報が含まれる。日時情報は、例えば、車両Mに搭載された時計(不図示)によって取得される情報である。位置情報は、例えば、通信部110により外部との通信が行われたときの車両Mの位置である。位置情報は、例えば、通信開始地点から通信終了地点までの情報(区間または経路情報)が含まれてよい。位置情報は、例えば、ナビゲーション装置40によって取得される情報である。
通信方式情報は、例えば、通信部110が外部と通信を行った場合の通信方式に関する情報である。通信方式情報には、例えば、電波通信における通信方式の世代を表す規格情報が含まれる。規格情報には、例えば、第3世代移動通信規格(以下、「3G」と称する)や、第3.9世代移動通信規格(以下、「LTE」と称する)、第4世代移動通信規格(以下、「4G」と称する)、第5世代移動通信規格(以下、「5G」と称する)が含まれる。また、通信規格は、世代が大きくなるごとに高速通信が可能となる。したがって、通信方式情報は、通信速度の速度レベルに関する情報に相当する。なお、上記の通信規格は、キャリア(通信事業者)との通信に利用する規格である。また、通信方式情報には、Wi-Fi(商標)等の無線LAN(Local Area Network)の規格に関する情報が含まれてもよい。Wi-Fi(商標)は、例えば、各個人または各企業等が自身のネットワークを自由に使用することができる電波通信の規格である。Wi-Fi(商標)に準拠した通信方式での通信規格は、電波の到達範囲が非常に狭く、Wi-Fi(商標)のアンテナ位置から約10[m]程度での利用に限定される。また、Wi-Fi(商標)に準拠した通信方式である場合、通信方式情報として、周波数帯域に関する情報(例えば、5[GHz]帯、2.4[GHz]帯)や、その帯域での通信規格に関する情報が含まれてもよい。また、通信方式情報には、通信先の設備(無線ルーターや基地局等)を識別する識別情報が含まれていてもよい。
また、通信方式情報には、通信状態に関する情報が含まれてよい。通信状態には、例えば、電波強度に基づく情報や、通信が安定しているか否かの情報が含まれる。電波強度は、例えば、通信部110により計測される。通信状況管理部130は、例えば、通信部110により計測された電波強度の所定時間における変動幅が閾値未満である場合に通信が安定していると判定し、閾値を超える場合に通信が安定していないと判定する。データ量は、例えば、通信開始時刻から通信終了時刻までの期間において通信部110が通信を行ったデータ量である。データ量は、外部から受信したデータ量であるが、これに加えて外部に送信したデータ量が含まれてもよい。データ内容は、通信部110が外部から取得したデータの内容に関する情報である。データの内容は、例えば、更新ソフトウェアを識別する識別情報(例えば、モジュール種別やバージョン情報)である。また、データ内容には、無線通信により外部からダウンロードした映像コンテンツ、音楽コンテンツ、地図データ等の他のコンテンツデータが含まれてもよい。
通信状況管理部130は、外部と通信を行うごとに、通信履歴情報164を生成または最新の情報に更新する。また、通信状況管理部130は、車両Mの位置に基づき、車両Mがすでに通信履歴情報164に含まれる位置情報とは異なる位置を走行している場合に、異なる位置の通信状況を学習して、通信履歴情報164に反映させてもよい。これにより、処理負荷を低減させることができる。
表示制御部140は、表示部60を制御して、ECUのソフトウェアの更新に関する情報や、運転制御、運転支援に関する情報を含む画像等を生成する。生成する画像には、アイコン等のGUI(Graphical User Interface)が含まれてもよい。また、表示制御部140は、生成した画像やナビゲーション装置40から得られる経路画像、外部装置からダウンロードしたコンテンツデータ、後述する通信予定情報に関する情報等を表示部60に表示させる。
バッテリ管理部150は、バッテリ50のエネルギー残量や充放電等のバッテリ状態を管理する。例えば、バッテリ管理部150は、バッテリ50の端子電圧を測定し、測定した端子電圧の大きさに基づいてエネルギー残量を取得する。また、バッテリ管理部150は、例えば、電流検出抵抗を使って充電時に蓄えられた電流量を積算しておき、放電時に出力された電流量を求めることでエネルギー残量を取得してもよい。また、バッテリ管理部150は、例えば、バッテリ50の放電特性や温度特性等のデータベースを予め記憶部160等に記憶しておき、計測した電圧値や電流値と、データベースとに基づいて残量を取得してもよい。また、バッテリ管理部150は、上述した取得手法のうち一部または全部を組み合わせてもよい。また、バッテリ管理部150は、上述したエネルギー残量に代えて充電率(SOC;State Of Charge)を取得してもよい。
[更新制御部]
次に、更新制御部120の機能の詳細について説明する。更新制御部120は、例えば、OTA(Over The Air)等の無線通信により外部装置(以下、サーバ装置として説明する)と通信を行い、対象機器のECUに組み込まれているソフトウェアのリプログラミングを行う。具体的には、更新制御部120は、車載装置10の各機器のECUに組み込まれているソフトウェアのバージョン情報を、記憶部160に記憶されたソフトウェア管理情報162から取得する。
図3は、ソフトウェア管理情報162の内容の一例を示す図である。ソフトウェア管理情報162は、ECU識別情報に、最新更新日時およびバージョン情報が対応付けられている。ECU識別情報とは、車載装置10の各装置のECUを識別するための識別情報である。最新更新日は、リプログラミングされたソフトウェアの最新の更新日時である。バージョン情報とは、サーバ装置からダウンロードし、ECUに組み込まれているソフトウェアのバージョンに関する情報である。
更新制御部120は、ソフトウェアの更新が必要であるか否かを判定するため、所定のタイミングで通信部110を介してサーバ装置と通信を行い、各ソフトウェアのバージョン情報の問い合わせを行う。そして、更新制御部120は、サーバ装置から取得したバージョン情報と、ソフトウェア管理情報162から取得したバージョン情報とを比較し、合致していない場合(より具体的には、サーバ装置のバージョンの方が新しい場合)に、対象ソフトウェアの更新を行う。
なお、更新制御部120は、ソフトウェアの更新を開始する前に、表示制御部140にソフトウェアの更新を実行するか否かを乗員に問い合わせるための画像を生成させ、生成させた画像を表示部60に表示させてもよい。更新制御部120は、表示部60により更新の実行を拒否する選択を受け付けた場合、ソフトウェアの更新を行わない。また、更新制御部120は、表示部60により更新の実行を許可する選択を受け付けた場合に、ナビゲーション装置40により目的地までの経路案内と連携させて、ソフトウェアを更新するタイミングを制御する。
図4は、更新制御部120の処理について説明するための図である。図4の例では、地図情報44の一部が表示されている。図4に示す地図画像MAP1は、位置や領域が縦1~5および横A~Eのブロックによって識別可能に区分けされている。各ブロックは、例えば、道路や交差点によって区分けされてもよく、地図座標によって距離単位で区分けされてもよい。以下では、ブロックの区切り部分に道路や交差点が存在しているものとして説明する。
ナビゲーション装置40は、例えば、ナビHMI42により目的地の入力が受け付けられた場合に、車両Mの現在位置から目的地までの経路を決定する。図4の例では、自宅HOに駐車している車両Mが存在する地点(現在地)P1から会社OF(目的地)が存在する地点P2までの経路K1が決定されている。次に、更新制御部120は、決定された経路K1における位置情報を用いて、通信履歴情報164を参照し、経路K1における過去の通信状況を取得し、取得した通信状況を地図画像MAP1に反映させる。図4の例では、通信履歴情報164に基づいて地図画像MAP1上に通信方式情報が重畳して示されている。図4には、通信規格が5Gで通信された領域(以下、「5Gエリア」と称し、他の規格についても同様とする)A5と、4GエリアA4と、3GエリアA3と、Wi-Fi(商標)エリアAW1~AW4とが示されている。図4の例において、経路K1には、3G、4Gよりも高速通信が可能なWi-Fi(商標)エリアAW1、AW2、AW4、および5GエリアA5が含まれている。したがって、更新制御部120は、Wi-Fi(商標)エリアや5Gエリアよりも通信が低速(通信速度が所定速度未満)である3GエリアA3および4GエリアA4での更新ソフトウェアのダウンロードを抑制し、高速通信(通信速度が所定速度以上)の通信状況下で通信を行ったエリア(Wi-Fi(商標)エリアAW1、AW2、AW4、および5GエリアA5)を車両Mが走行しているときに、更新ソフトウェアがダウンロードされるように更新のタイミングを制御する。
ここで、Wi-Fi(商標)エリアAW1は、自宅HOに設置され、乗員が月ごとの定額料金等で契約したWi-Fi(商標)ルータにより通信を行うエリア(プライベートWi-Fi(商標)エリア)であるものとする。また、Wi-Fi(商標)エリアAW2、AW4は、企業や店舗等が提供する誰でも認証が不要または簡単な認証で使用できると共に使用者のコストが発生しないエリア(Free Wi-Fi(商標)エリア)であるものとする。また、5GエリアA5は、通信キャリアがユーザ認証を行った複数人に提供するエリアであり、契約内容によってデータ量ごとに料金が加算されたり、高速通信が可能なデータ量の上限に制限が課せられているものとする。
更新制御部120は、高速通信が可能なエリアが複数ある場合に、複数にエリアごとに設定される優先度に基づいて、更新ソフトウェアをダウンロードするタイミングを調整してもよい。優先度は、例えば、通信速度(最高速度)や通信コスト、規格の種類、通信可能エリアの大きさ、セキュリティの強弱、現在位置からの距離等によって設定される。例えば、5GエリアA5は、Wi-Fi(商標)エリアAW1、AW2、およびAW4よりも通信可能エリアが広域である。また、Wi-Fi(商標)エリアAW1は、Wi-Fi(商標)エリアAW2、AW4や、5Gエリア5Aよりもセキュリティが強い。また、仮に、5GエリアA5がセルラー網を用いた通信である場合には、通信コストが1パケットごとに発生するため、大容量データや複数台の車両のソフトウェア更新を行う場合にコストが大きくなる可能性がある。したがって、更新制御部120は、高速通信可能な通信方式が複数ある場合には、Wi-Fi(商標)に準拠した通信方式の優先度を高く設定してもよい。
更に、更新制御部120は、例えば、自宅HOや会社等の特定地点におけるWi-Fi(商標)に準拠した通信方式を用いた通信であり、且つ車両Mが停車している場合に、他の通信方式よりも優先して、ソフトウェアの更新を行うようにスケジュールを調整してもよい。データの送受信を行う場合に、最も効率的でセキュリティ強度が高いのは、車両Mが自宅HOに駐車中の状態でプライベートWi-Fi(商標)を用いた通信である。そのため、更新制御部120は、プライベートWi-Fi(商標)エリアでの通信が可能である場合に、そのエリアでの通信が積極的に実行されるように優先度を高く設定する。
したがって、図4の例において、更新制御部120は、優先度を高い方から、「Wi-Fi(商標)エリアAW1」、「Wi-Fi(商標)エリアAW2、AW4」、「5Gエリア5A」と設定し、設定した優先度順にダウンロードする更新ソフトウェアのデータ量を割り当てる。
また、更新制御部120は、更新ソフトウェアのデータをモジュール等で分割してダウンロードする場合に、どのエリアでどの程度のデータ量をダウンロードするかを設定してもよい。また、更新制御部120は、割り当てたダウンロードの予定を通信予定情報166として記憶部160に記憶させる。
図5は、通信予定情報166の内容の一例を示す図である。通信予定情報166は、例えば、エリア情報に、通信方式情報、データ量、およびデータ内容が対応付けられている。エリア情報は、例えば、データのダウンロードを行うエリアに関する情報である。データ内容は、例えば、ダウンロードする更新ソフトウェアのバージョン情報(例えば、V3.0)やモジュール情報等の内容である。例えば、リプログラミングするための更新ソフトウェアに含まれるプログラムモジュールがモジュール1~5である場合、更新制御部120は、一又は複数のモジュール単位でダウンロードするエリア、データ量、データ内容を設定する。
なお、車両Mは、赤信号や渋滞等で停止している場合等を除き、目的地まで走行している。そのため、通信可能エリア内に存在する時間は、限られている。したがって、更新制御部120は、通信履歴情報164の記憶された日時情報、または、地図情報44を参照して得られる経路上の道路の法定速度に基づいて、車両Mが通信可能範囲に存在する時間を推定してもよい。そして、更新制御部120は、推定した時間と、そのエリアでの通信速度とに基づいて、エリア通過時において、取得可能なデータ量を推定し、推定したデータ量に対応するダウンロードするデータ内容を設定する。図5の例では、Wi-Fi(商標)エリアAW1で更新ソフトウェア(バージョン3.0)のモジュール1をダウンロードし、Wi-Fi(商標)エリアAW2で更新ソフトウェア(バージョン3.0)のモジュール2~5をダウンロードするように通信予定が設定されている。更新制御部120は、設定された通信予定情報166に基づいて、更新ソフトウェアのダウンロードを行い、ダウンロード後に更新処理を行う。
また、通信上の混雑や通信強度の低下による通信不良等により、予定通りにデータをダウンロードできずにエリアを通過した場合、更新制御部120は、例えば、通信予定に含まれていなかった高速通信可能エリア(Wi-Fi(商標)エリアAW4、5Gエリア5A)を用いて、更新予定情報を再生成してもよい。なお、更新制御部120は、最初に通信予定情報を生成する場合に、再生成することを見越して、予め予備の高速通信エリアを残して通信予定情報を生成してもよい。また、更新制御部120は、地点P1から地点P2までの往路だけでなく、地点P2から地点P1までの復路も含めて通信予定情報を生成してもよい。
また、更新制御部120は、更新ソフトウェアが緊急性の高いソフトウェアである場合には、高速通信や低速通信に関係なく、現時点で通信可能な通信方式によって、更新ソフトウェアをダウンロードしてもよい。緊急性の高いソフトウェアとは、例えば、運転制御や駆動制御のように、車両Mの挙動への影響度が高いソフトウェアである。したがって、例えば、ナビゲーション装置40に対する更新ソフトウェアについては、緊急性が高いソフトウェアではないため、上述した更新予定情報に基づいてデータのダウンロードおよび更新処理を実行する。また、緊急性の高いソフトウェアとは、外部から受信した更新情報に、緊急性の高いソフトウェアである旨の通知があったソフトウェアであってもよい。
また、更新制御部120は、更新ソフトウェアのデータ量が閾値以内である場合には、現時点で通信可能な通信によって更新ソフトウェアをダウンロードしてもよい。データ量が少ないデータの場合に、低速通信であっても短時間でダウンロードできるため、通信途中で切断されたり、通信状況が切り替わることが少なく、適切なリプログラミングを実現することができる。
また、更新制御部120は、データのダウンロード時における通信状況に基づいて、通信履歴情報164を更新する。これにより、リアルタイムで通信状況を取得することができ、通信状況の変化等を、より正確に把握することができる。
また、更新制御部120は、バッテリ管理部150により管理されたバッテリ50のエネルギー残量や充放電の状態に基づいて、更新するタイミングを設定してもよい。例えば、エネルギー残量が所定量以上である場合に、ソフトウェアのリプログラミングを実行し、エネルギー残量が所定量未満である場合に、リプログラミングを抑制するように制御する。また、更新制御部120は、例えば、自宅等に停車している車両の充電コネクタ52が充電設備に接続されている状態(充電状態)であって、且つ高速通信が可能な状態である場合に、ソフトウェアのリプログラミングを実行するように制御してもよい。これにより、リプログラミングの途中でバッテリ50の電力がなくなり、リプログラミングが中断することを抑制することができる。したがって、リプログラミングにおける安全性を向上させることができる。
更新制御部120は、更新ソフトウェアによるリプログラミングが正常に終了した場合、記憶部160に記憶されたソフトウェア管理情報162を更新する。また、更新制御部120は、更新ソフトウェアによるリプログラミングが正常に終了しなかった場合には、所定のタイミングでリプログラミングを再実行してもよい。
なお、上述の例において、更新制御部120は、ナビゲーション装置40により設定された目的地までの経路に基づいて通信履歴情報164を用いて更新ソフトウェアをダウンロードするタイミングを制御したが、これに代えて(または加えて)、通信履歴情報164の通信状況に基づいて、ナビゲーション経路を変更させてもよい。この場合、更新制御部120は、ナビゲーション装置40により設定された経路に高速通信が可能な5GエリアやWi-Fi(商標)エリアが存在しない場合に、通信履歴情報164を用いて経路付近に高速通信が可能なエリアが存在するか否かを判定する。経路付近とは、例えば、経路からの最短距離が所定距離以内の領域であって、経路上からは通信ができない領域である。経路付近に高速通信可能エリアが存在する場合、更新制御部120は、その高速通信エリアを通過する新たな経路を生成し、生成した経路を、経路変更指示と共にナビゲーション装置40に出力する。ナビゲーション装置40は、経路変更指示に基づいて、新たに生成された経路を乗員に案内する経路として設定する。そして、更新制御部120は、変更させた経路に基づいて通信予定情報166を生成し、生成した通信予定情報166に基づいて、更新ソフトウェアのダウンロードを行う。
[処理フロー]
図6は、第1実施形態のソフトウェア更新装置100の処理の一例を示すフローチャートである。まず、更新制御部120は、サーバ装置等から送信された更新ソフトウェア情報のバージョン情報と、ソフトウェア管理情報162のバージョン情報とに基づいて、ソフトウェアを更新するか否かを判定する(ステップS100)。ソフトウェアを更新すると判定された場合、更新制御部120は、緊急性が高い更新か否かを判定する(ステップS102)。緊急性が高い更新ではないと判定された場合、更新制御部120は、ナビゲーション装置40から車両Mの目的地までの経路を取得し(ステップS104)、取得した経路に基づいて、記憶部160に記憶された通信履歴情報164を参照し、経路に対応する道路上での通信履歴を取得する(ステップS106)。
次に、更新制御部120は、通信履歴に基づいて、高速通信エリアで通信を行う通信予定情報166を生成する(ステップS108)。次に、更新制御部120は、生成した通信予定情報166に基づいて、予定したエリアで更新ソフトウェアのデータをダウンロードする(ステップS110)。なお、ステップS102の処理において、緊急性が高い更新であると判定された場合、更新制御部120は、現在位置で通信可能な通信状況下で更新ソフトウェアのデータをダウンロードする(ステップS112)。
ステップS110またはステップS112の処理が終了後、更新制御部120は、ソフトウェアを更新する(ステップS114)。次に、更新制御部120は、通信履歴情報164およびソフトウェア管理情報162を更新する(ステップS116)。これにより、本フローチャートの処理は、終了する。また、ステップS100の処理において、ソフトウェアを更新しないと判定された場合、本フローチャートの処理は、終了する。
上述した第1実施形態のソフトウェア更新装置によれば、車両M(自車両)の過去の通信履歴に基づいて、高速通信を用いたデータのダウンロードを行うことができる。これにより、より迅速にソフトウェアの更新を行うことができる。
<第2実施形態>
次に、第2実施形態のソフトウェア更新装置100について説明する。第2実施形態は、通信履歴情報164に基づいて車両Mの行動を予測し、予測結果に基づいてタイミングを制御する点で、第1実施形態と相違する。したがって、以下では、上述した相違点を中心として説明する。また、以下では、第1の実施形態と同様の機能については、同様の名称および符号を付するものとし、ここでの具体的な説明は省略する。以降の実施形態についても同様とする。
図7は、第2実施形態のソフトウェア更新装置100Aを含む車両システム1Aの構成図である。車両システム1Aは、例えば、車載装置10と、バッテリ(蓄電池の一例)50と、表示部60と、車室内カメラ70と、ソフトウェア更新装置100Aとを備える。車両システム1Aは、第1実施形態の車両システム1と比較すると、車室内カメラ70が設けられているとともに、ソフトウェア更新装置100がソフトウェア更新装置100Aに置き換わっている点で相違する。
車室内カメラ70は、例えば、CCD(Charge Coupled Device)やCMOS(Complementary Metal Oxide Semiconductor)等の固体撮像素子を利用したデジタルカメラである。車室内カメラ70は、ステレオカメラであってもよい。車室内カメラ70は、車両Mの室内の任意の箇所に取り付けられる。車室内カメラ70は、車室内に存在する乗員の顔や上半身、手や腕等を含む領域を撮像する。車室内カメラ70は、上記の領域を周期的に繰り返し撮像してもよく、所定のタイミングで撮像してもよい。車室内カメラ70により撮像された画像は、ソフトウェア更新装置100に出力される。
ソフトウェア更新装置100Aは、例えば、通信部110と、更新制御部120Aと、通信状況管理部130と、表示制御部140と、行動予測部145と、バッテリ管理部150と、記憶部160とを備える。これらの構成要素は、例えば、CPU等のハードウェアプロセッサがプログラム(ソフトウェア)を実行することにより実現される。また、これらの構成要素のうち一部または全部は、LSIやASIC、FPGA、GPU等のハードウェア(回路部;circuitryを含む)によって実現されてもよいし、ソフトウェアとハードウェアの協働によって実現されてもよい。プログラムは、予め記憶部160に格納されていてもよいし、DVDやCD-ROM等の着脱可能な記憶媒体に格納されており、記憶媒体がドライブ装置に装着されることで記憶部160にインストールされてもよい。ソフトウェア更新装置100Aは、第1実施形態のソフトウェア更新装置100と比較して、行動予測部145を備えると共に、更新制御部120が更新制御部120Aに置き換わっている点で相違する。
更新制御部120Aは、外部装置から更新情報やバージョン情報を受け付け、ソフトウェア管理情報162から取得したバージョン情報とを比較し、合致していない場合に、対象ソフトウェアの更新を行う。この場合、更新制御部120Aは、行動予測部145に車両Mの将来の行動予測を実行させる。なお、更新制御部120Aは、ナビゲーション装置40により目的地が設定されていない状態で車両Mが走行している場合やその他の条件を満たす場合に、行動予測を行わせてもよい。
行動予測部145は、更新制御部120Aからソフトウェアを更新する通知または行動予測を行う指示を受け付けた場合に、通信履歴情報164に基づいて、車両Mの将来の行動予測を行う。例えば、行動予測部145は、車両Mの位置情報、所定時間における位置情報の変化量、車速、または進行方向に基づいて車両Mの現在の走行状況を取得する。また、行動予測部145は、車両Mの位置に基づいて、通信履歴情報164を参照し、車両Mの位置に近似する位置情報に対応付けられた通信方式情報やデータ量、データ内容等を取得する。また、行動予測部145は、通信履歴情報164の位置情報と日時情報に基づいて、車両Mの現在の位置からの行動予測を行う。
また、行動予測部145は、車両Mの現在位置と日時情報とを用いて通信履歴情報164と照合してもよい。これにより、曜日や時間帯で習慣付けられた行動がある場合に、より高精度に行動予測を行うことができる。
また、行動予測部145は、車室内カメラ70により撮像された画像から乗員(例えば、運転者)の状態を推定し、推定した状態に基づいて、車両Mの行動予測を行ってもよい。乗員の状態とは、例えば、乗員の状態は、眠気、視線の向き、感情等のうち一部または全部を含む。行動予測部145は、車室内カメラ70により撮像された画像を解析して乗員の顔の位置や、目、鼻、口の位置および配置、色情報等の顔の特徴情報を取得し、取得した特徴情報と、不図示のモデル情報に基づいて、乗員の眠気の有無や視線、感情を取得する。モデル情報とは、AI(Artificial Intelligence;人工知能)等を用いて学習対象情報に対してディープラーニング等の機械学習が行われることで生成された情報である。学習対象情報とは、人物の画像と画像に対応する感情の種別とが対応付けられた情報である。このモデル情報は、画像または顔の特徴情報が入力されると、その画像に含まれる乗員または特徴情報に対する感情を出力する。感情とは、例えば、喜怒哀楽である。また、行動予測部145は、予め乗員の複数の感情に対応付けられた特徴情報を記憶部160等に記憶しておき、記憶された特徴情報と画像から得られた特徴情報とを比較することで、乗員の状態を取得してもよい。また、行動予測部145は、上述した画像解析に代えて(または加えて)、車両Mに搭載されたマイク(不図示)により乗員の音声を取得し、取得した音声に基づいて乗員の状態(例えば、感情)を取得してもよい。
そして、行動予測部145は、車両Mの走行状態、乗員の状態、および通信履歴情報164に基づいて、車両Mの将来の行動予測を行う。例えば、車両Mの現在の走行状態から予測される経路が二つ存在する場合であり、且つ、乗員に眠気がある(瞼が下がっている)、または乗員が怒っていると推定される場合、行動予測部145は、車両Mが近くに駐車される可能性が高いと判断し、予測される二つの経路のうち、距離が短い(推定される目的地までの距離が短い)経路を予測経路として行動予測を行う。また、乗員に眠気がない、または乗員が笑っていると推定される場合、行動予測部145は、乗員が運転を継続する可能性が高いと判断し、予測される二つの経路のうち、距離が長い(推定される目的地までの距離が長い)経路を予測経路として行動予測を行う。これにより、行動予測部145は、より高精度に行動予測を行うことができる。
更新制御部120Aは、行動予測部145により予測された車両Mの行動に基づいて、通信予定情報166を生成する。図8は、更新制御部120Aの処理について説明するための図である。図8の例では、図4と地図画像MAP1に通信方式情報が重畳されている。図8において、車両Mは、現在地点P3に存在し、図8に示す地図画像MAP1の下方向に速度VMで走行しているものとする。この場合、行動予測部145は、通信履歴情報164を参照し、過去の行動履歴から店舗SHに向かっているものと予測し、予測経路K2を生成する。更新制御部120は、行動予測部145からの予測経路K2に基づいて、通信履歴情報164を参照し、通信方式の優先度等に基づいて、高速通信エリアで通信を行う通信予定情報166を生成する。図8の例では、Wi-Fi(商標)エリアAW2、AW3を優先させた通信予定情報が生成される。
[処理フロー]
図9は、第2実施形態のソフトウェア更新装置100の処理の一例を示すフローチャートである。図9に示す処理では、上述した第1実施形態のソフトウェア更新装置100の処理と比較して、ステップS104~S108の処理に代えて、ステップS120~S124の処理が追加されている点で相違する。したがって、以下では、主にステップS120~S124の処理を中心として説明する。
図9に示すステップS104の処理において、緊急性が高い更新ではない場合、行動予測部145は、通信履歴情報164、車両Mの走行状態、および乗員状態を取得する(ステップS120)。次に、行動予測部145は、車両の行動を予測し予測経路を生成する(ステップS120)。次に、更新制御部120は、予測経路および通信履歴情報164に基づいて、高速通信エリアで通信を行う通信予定情報166を生成し(ステップS124)ステップS110以降の処理を行う。
上述した第2実施形態のソフトウェア更新装置によれば、通信履歴に基づいて、目的地までの経路を高速通信が可能な経路に変更することで、ナビゲーション装置40による経路案内と連携させて、適切なタイミングで更新ソフトウェアのダウンロードを行うことができる。
なお、第2実施形態では、第1実施形態と同様の効果を奏する他、ナビゲーション装置40により目的地までの経路が設定されていない場合であっても、予測経路等に基づいて、より適切な通信予定情報を生成することができる。また、第2実施形態によれば、乗員の習慣(例えば、通勤、買い物)等と連携させた更新スケジュールを生成することができる。
<第3実施形態>
次に、第3実施形態のソフトウェア更新装置100について説明する。第3実施形態では、他車両または外部装置から通信状況に関する情報(後述する他車両の通信履歴情報、通信状況マップ)を取得し、取得した情報に基づいて、更新ソフトウェアのデータをダウンロードするタイミングを制御する点で、第1実施形態と相違する。したがって、以下では、主に上述の相違点を中心として説明し、それ以外の説明は省略するものとする。なお、第3実施形態では、他車両にも第1実施形態と同様のソフトウェア更新装置100が搭載されているものとする。
図10は、第3実施形態に係るソフトウェア更新装置100を含むソフトウェア更新システム2の構成の一例を示す図である。ソフトウェア更新システム2は、例えば、一以上の車両のそれぞれに搭載されたソフトウェア更新装置100と、サーバ装置200とを備える。以下では、説明の便宜上、車両(自車両)Mと他車両m1とを用いて説明する。
ソフトウェア更新装置100と、サーバ装置200とは、ネットワークNWを介して互いに通信可能である。ネットワークNWは、例えば、セルラー網や、Wi-Fi(商標)網、Bluetooth(登録商標)、インターネット、WAN(Wide Area Network)、LAN、公衆回線、プロバイダ装置、専用回線、無線基地局等を含む。また、これらの構成要素は、それぞれネットワークNWを介さずに、直接、無線通信を行ってもよい。また、図10に示すソフトウェア更新システム2において、車両Mと他車両m1は、車両間の距離が所定距離以内である場合に車車間通信を行ってもよい。また、第3実施形態において、ソフトウェア更新装置100は、第2実施形態のソフトウェア更新装置100Aであってもよい。
図11は、第3実施形態のサーバ装置200の構成図である。サーバ装置200は、例えば、サーバ側通信部210と、入力部220と、出力部230と、サーバ側制御部240と、サーバ側記憶部250とを備える。また、サーバ装置200は、例えば、ソフトウェア更新装置100と、ネットワークNWを介して互いに通信し、各種データを送受信するクラウドサーバとして機能してもよい。
サーバ側通信部210は、NIC等の通信インターフェースを含む。サーバ側通信部210は、ネットワークNWを介して車両ごとに搭載されたソフトウェア更新装置100と通信する。
入力部220は、例えば、ボタン、キーボードやマウス等のユーザインターフェースである。入力部220は、利用者(例えば、管理者等)の操作を受け付けて、受け付けた操作に応じた信号をサーバ側制御部240に出力する。入力部220は、出力部230の表示部と一体として構成されるタッチパネルであってもよい。
出力部230は、利用者に情報を出力する。出力部230は、例えば、画像を表示する表示部と、音声を出力する音声出力部とを備える。表示部は、例えば、LCD(Liquid Crystal Display)や有機EL(Electro Luminescence)ディスプレイ等の表示装置を含む。表示部は、サーバ側制御部240により出力される情報に対応した画像を表示する。音声出力部は、例えば、スピーカである。音声出力部は、サーバ側制御部240により出力される情報に対応した音声を出力する。
サーバ側制御部240は、例えば、通信履歴取得部242と、マップ生成部244と、情報提供部246とを備える。サーバ側制御部240の各構成要素は、例えば、CPU等のプロセッサがサーバ側記憶部250に格納されたプログラムを実行することにより実現される。また、サーバ側制御部240の構成要素の一部または全部は、LSI、ASIC、FPGA、またはGPU等のハードウェア(回路部;circuitry)により実現されてもよいし、ソフトウェアとハードウェアの協働によって実現されてもよい。
サーバ側記憶部250は、例えば、HDD、フラッシュメモリ、EEPROM、ROM、RAM等の記憶装置により実現される。サーバ側記憶部250には、サーバ側通信履歴情報252、通信状況マップ254、プロセッサによって読み出されて実行されるプログラム、およびその他各種情報等が格納される。
通信履歴取得部242は、ネットワークNWを介して一以上の車両(車両Mおよび他車両m1)から送信された通信履歴情報を取得し、取得した通信履歴情報をサーバ側通信履歴情報252としてサーバ側記憶部250に記憶させる。図12は、サーバ側通信履歴情報252の内容の一例を示す図である。サーバ側通信履歴情報252は、車両を識別する識別情報としての車両IDに、日時情報、位置情報、通信方式情報、データ量、およびデータ内容が対応付けられている。これにより、通信履歴情報を車両ごとに管理することができる。
マップ生成部244は、サーバ側通信履歴情報252に基づいて、通信状況を示すマップを生成する。図13は、マップ生成部244により生成されるマップの一例を示す図である。図13の例では、上述した図4と同様の領域からなる地図画像MAP2が示されている。この地図画像MAP2は、車両から取得してもよく、サーバ側記憶部250に記憶された地図情報(不図示)から取得してもよい。マップ生成部244は、例えば、地図画像MAP2における位置情報と、サーバ側通信履歴情報252の位置情報とを対応付けて、地図画像MAP2上に、通信方式ごとに通信可能エリアをプロットする。
この場合、マップ生成部244は、高速通信以外の通信方式(例えば、G3)の通信可能エリアを地図画像MAP2上にプロットしないようにしてもよい。これにより、車両側で通信状況マップを用いて通信予定情報を生成する場合に、高速通信以外の通信を抑制することができる。
また、マップ生成部244は、個人契約等により第三者が使用することができない通信方式(例えば、Free Wi-Fi(商標)ではなく、プライベートWi-Fi(商標)の通信可能エリア(例えば、図4に示すWi-Fi(商標)エリアAW1)を地図画像MAP2上にプロットしないようにしてもよい。これにより、車両の乗員が個人で契約した情報を含めずに通信状況マップを生成することができる。したがって、通信状況マップに含まれる通信可能な領域だけの情報から、適切な通信予定を生成することができる。図13の例では、5GエリアA5と、4GエリアA4、A42と、Wi-Fi(商標)エリアAW2~AW7とが示されている。マップ生成部244は、生成した通信状況マップ254をサーバ側記憶部250に記憶させる。なお、マップ生成部244は、所定の周期またはタイミングでマップ生成を繰り返し行うことで、リアルタイムな通信状況を管理することができる。
情報提供部246は、車両からの通信状況マップの取得要求に基づいて、サーバ側記憶部250に記憶された通信状況マップ254を要求のあった車両に送信する。なお、情報提供部246は、車両から現在位置や目的地に関する情報が送信された場合、通信状況マップ254のうち、車両の現在位置および目的地を含むマップを抽出し、抽出したマップを車両に送信してもよい。これにより、データ量を削減することができる。
なお、第3実施形態におけるサーバ装置200は、通信状況マップの生成や提供を行う機能に加えて、更新ソフトウェアを配信する機能を備えていてもよい。この場合、情報提供部246は、車両のECU等に対してソフトウェアの更新があり場合に、更新情報をソフトウェア更新装置100に送信する。また、情報提供部246は、例えば、ソフトウェア更新装置100の通知に応じて、車両の乗員または所有者等から更新指示を受け付けた場合に、ソフトウェア更新装置100によって制御されたダウンロードのタイミングに基づいて、更新に用いられる情報(更新ソフトウェア等)を、ネットワークNWを介して送信する。
また、情報提供部246は、通信状況マップを提供するのに代えて(または加えて)、サーバ側通信履歴情報252を用いた統計処理等を用いた機械学習を行い、学習結果に基づいて車両ごとの行動パターンを予測し、予測した行動パターンを用いた将来の行動予測に基づいて、車両ごとに、更新データをダウンロードする通信予定情報を生成してもよい。また、情報提供部246は、予測した行動パターンに基づいて、運転者の感情等を推定し、推定した結果に基づいて通信予定情報を生成してもよい。ソフトウェア更新装置100は、情報提供部246から提供された通信予定情報を用いて更新データのダウンロードを行うことで、通信予定を設定するための処理負荷を低減させることができる。
例えば、第3実施形態の更新制御部120は、ソフトウェアの更新を行うための通信を実行する場合であって、且つ車両Mの通信履歴情報164のデータ量が所定量以下である場合、または現在位置に対応する過去の通信状況(通信履歴)が存在しない場合に、サーバ装置200にマップ取得要求を送信する。また、更新制御部120は、車両Mの経路を含む所定範囲の通信状況マップを取得し、取得した通信状況マップに基づいて通信予定情報166を生成する。また、更新制御部120は、サーバ装置200から通信状況マップを取得するのに代えて、車両Mの周辺に存在する他車両m1との車車間通信が可能である場合(他車両m1が、車両Mから所定距離以内に存在する場合)に、他車両m1に通信履歴情報の取得要求を送信し、他車両m1で管理された通信履歴情報を取得してもよい。
なお、更新制御部120は、他車両m1またはサーバ装置200のうち、一方または双方から上述した各情報を取得してもよい。例えば、更新制御部120は、車両Mから所定範囲以内に他車両m1が存在する場合には、他車両m1から通信履歴情報を取得する。また、更新制御部120は、他車両m1が存在しない場合、または他車両m1で管理された通信履歴情報のデータ量が所定量以下である場合には、サーバ装置200から通信状況マップを取得する。また、更新制御部120は、乗員の選択結果に基づいて、他車両m1またはサーバ装置200のうち一方または双方から上述した各情報を取得してもよい。また、更新制御部120は、他車両m1から通信履歴情報を取得する場合、またはサーバ装置200から通信状況マップを取得する場合に、高速通信が可能なエリアで他車両m1やサーバ装置200と通信を行うように制御してもよい。
[処理フロー]
図14は、第3実施形態のソフトウェア更新装置100の処理の一例を示すフローチャートである。図14に示す処理では、上述した第1実施形態のソフトウェア更新装置100の処理と比較して、ステップS106およびS108の処理に代えてステップS140およびS142の処理を備える点、ステップS116の処理に代えてステップS144およびS146の処理を備える点で相違する。したがって、以下では、主にステップS140~S146の処理を中心として説明する。
第3実施形態において、更新制御部120は、ステップS104の処理後に、通信部110を介して他車両m1および/またはサーバ装置200と通信を行い、ステップS104の処理において取得した経路を含む地域の通信状況マップを取得する(ステップS140)。次に、更新制御部120は、他車両m1から取得した通信履歴情報および/または通信状況マップに基づいて通信予定情報を生成し(ステップS142)、ステップS110以降の処理を行う。
また、第3実施形態において、更新制御部120は、ステップS114の処理が終了後、ソフトウェア管理情報162を更新し(ステップS144)、この度のソフトウェア更新における通信履歴情報をサーバ装置200に送信する(ステップS146)。
図15は、第3実施形態のサーバ装置200におけるマップ生成処理の一例を示すフローチャートである。通信履歴取得部242は、ネットワークNWを介して各車両から通信履歴情報を取得し(ステップS200)、取得した通信履歴情報に基づいてサーバ側通信履歴情報252にサーバ側記憶部250に記憶させる(ステップS202)。次に、マップ生成部244は、サーバ側通信履歴情報の統計処理を行い、通信状況マップを生成し(ステップS204)、生成した通信状況マップ254をサーバ側記憶部250に記憶させる(ステップS206)。これにより、本フローチャートの処理は、終了する。
図16は、第3実施形態のサーバ装置200におけるマップ提供処理の一例を示すフローチャートである。情報提供部246は、車両からマップ取得要求を取得したか否かを判定する(ステップS210)。マップ取得要求を取得した場合、情報提供部246は、車両の現在位置および目的地までの経路を含む通信状況マップを取得し(ステップS212)、取得した通信状況マップを車両に送信する(ステップS214)。これにより、本フローチャートの処理は、終了する。また、ステップS210の処理において、車両からマップ取得要求を取得していないと判定された場合、本フローチャートの処理は、終了する。
なお、上述の例では、車両Mが他車両m1から更新履歴情報を取得する例を示したが、更新制御部120は、他車両m1から更新履歴情報の取得要求があった場合に、記憶部160に記憶された更新履歴情報を他車両m1に送信してもよい。
上述した第3実施形態によれば、例えば、車両Mが現在位置付近の通信履歴情報を有していない場合であっても、他車両から取得した通信履歴情報および/またはサーバ装置200から取得した通信状況マップに基づいて、より適切な通信予定情報を生成することができる。また、第3実施形態によれば、例えば、Wi-Fi(商標)に準拠した通信方式を用いた通信が可能な地点やエリアをサーバ装置200で管理し、車両Mがセルラー網からWi-Fi(商標)網に移動した際に、サーバ装置200から車両Mに更新ソフトウェアのダウンロードを実行させる指示を送信してもよい。
なお、第3実施形態において、更新制御部120は、他車両の通信履歴情報やサーバ装置200からの通信状況マップと、車両Mの通信履歴情報とを組み合わせてダウンロードするタイミングを制御してもよい。また、第3実施形態によれば、他車両m1またはサーバ装置200からの通信状況に関する情報に基づいて、データの送受信のタイミングを、より適切なタイミングに変更することができる。
上述した第1~第3実施形態のそれぞれは、他の実施形態の一部または全部を組み合わせてもよい。上述した各実施形態によれば、高速通信環境化でデータの送受信を行うことによりリアルタイム性を担保することができ、例えば、車両Mのイグニッションサイクル(イグニッションがオン状態)中にデータをダウンロードすることができる。また、各実施形態によれば、低速通信が可能であっても、敢えてデータの送受信を行わないことで、通信占有による障害を抑制することができ、大容量のデータであっても迅速にダウンロードすることができる。また、各実施形態によれば、Wi-Fi(商標)に準拠した通信方式の優先度を高くして通信予定を生成することで、大容量データを通信する場合であっても通信コストを抑えることができる。また、実施形態によれば、目的地設定や行動予測と連携させて、より適切なタイミングでデータのダウンロードやソフトウェアの更新等のリプログラミングを実行することができる。なお、本実施形態は、更新ソフトウェアのダウンロードに限定されず、他のデータ(例えば、大容量のコンテンツデータ)をダウンロードする場合のタイミングの調整にも適用できる。
以上、本発明を実施するための形態について実施形態を用いて説明したが、本発明はこうした実施形態に何等限定されるものではなく、本発明の要旨を逸脱しない範囲内において種々の変形および置換を加えることができる。
1、1A…車両システム、2…ソフトウェア更新システム、10…車載装置、20…運転制御装置、30…駆動制御装置、40…ナビゲーション装置40…バッテリ、60…表示部、100、100A…ソフトウェア更新装置、110…通信部、120、120A…更新制御部、130…通信状況管理部、140…表示制御部、145…行動予測部、150…バッテリ管理部、160…記憶部、200…サーバ装置、210…サーバ側通信部、220…入力部、230…出力部、240…サーバ側制御部、250…サーバ側記憶部

Claims (10)

  1. 車両に搭載された機器のうち少なくとも一部の機器を制御するソフトウェアが組み込まれた機器制御部と、
    外部装置と通信する通信部と、
    前記通信部による外部装置との通信により前記機器制御部に組み込まれた前記ソフトウェアを更新する更新制御部と、
    前記通信部と前記外部装置との通信状況を管理する通信状況管理部と、
    前記通信状況管理部により管理された過去の通信状況に基づいて、前記車両の将来の行動予測を行う行動予測部と、を備え、
    前記更新制御部は、前記過去の通信状況のうち、所定速度以上の通信状況下で通信を行ったエリアで前記外部装置との通信を実行させ、
    前記更新制御部は、前記行動予測部により予測された前記車両の将来の行動予測に基づいて、前記ソフトウェアの更新を行うための通信を行う領域を設定する、
    ソフトウェア更新装置。
  2. 前記更新制御部は、前記車両の現在位置から目的地までの経路を案内する経路案内部により前記車両の目的地までの経路が設定された場合に、前記経路のうち、前記ソフトウェアの更新を行うための通信を行う領域を設定する、
    請求項1に記載のソフトウェア更新装置。
  3. 前記行動予測部は、前記車両の乗員を撮像した画像から前記乗員の状態を推定し、推定した乗員の状態に基づいて、前記車両の将来の行動予測を行う、
    請求項1または2に記載のソフトウェア更新装置。
  4. 前記車両の位置を取得する位置取得部を更に備え、
    前記通信状況管理部は、前記位置取得部により取得された前記車両の位置に基づき、前記車両が前記過去の通信状況に含まれる位置情報と異なる位置を走行している場合に、前記異なる位置の通信状況を学習する、
    請求項1から3のうち何れか1項に記載のソフトウェア更新装置。
  5. 前記所定速度以上の通信状況は、Wi-Fi(商標)に準拠した通信方式を用いた通信を含む、
    請求項1から4のうち何れか1項に記載のソフトウェア更新装置。
  6. 前記更新制御部は、前記通信状況が特定地点におけるWi-Fi(商標)に準拠した通信方式を用いた通信であり、且つ前記車両が停車している場合に、他の通信状況よりも優先して、前記ソフトウェアの更新を行うための通信を行う、
    請求項1から5のうち何れか1項に記載のソフトウェア更新装置。
  7. 前記更新制御部は、更新される前記ソフトウェアが緊急性の高いソフトウェアである場合に、通信状況に関係なく外部装置と通信を行い、前記ソフトウェアを更新するための通信を行う、
    請求項1から6のうち何れか1項に記載のソフトウェア更新装置。
  8. 前記通信部は、前記車両の周辺に存在する他車両と通信を行い、
    前記更新制御部は、前記通信部により前記他車両または前記外部装置から、前記車両の周辺の通信状況に関する情報を取得した場合に、前記取得した周辺の通信状況に基づいて、前記ソフトウェアの更新を行うための通信を行う領域を設定する、
    請求項1から7のうち何れか1項に記載のソフトウェア更新装置。
  9. 車両に搭載された機器のうち少なくとも一部の機器を制御するソフトウェアが組み込まれた機器制御部と、
    外部装置と通信する通信部と、
    前記通信部による外部装置との通信により前記機器制御部に組み込まれた前記ソフトウェアを更新する更新制御部と、
    前記通信部と前記外部装置との通信状況を管理する通信状況管理部と、
    前記通信状況管理部により管理された過去の通信状況に基づいて、前記車両の将来の行動予測を行う行動予測部と、を備え、
    前記更新制御部は、前記行動予測部により予測された前記車両の将来の行動予測に基づいて、前記ソフトウェアの更新を行うための通信を行う領域を設定する、
    ソフトウェア更新装置。
  10. 車両に搭載されるソフトウェア更新装置を実現するコンピュータが、
    外部装置と通信し、
    前記外部装置との通信により前記車両に搭載された機器のうち少なくとも一部の機器を制御する制御部に組み込まれたソフトウェアを更新し、
    前記外部装置との通信状況を管理し、
    管理された過去の通信状況のうち、所定速度以上の通信状況下で通信を行ったエリアで前記外部装置との通信を実行させ、
    更に、前記過去の通信状況に基づいて、前記車両の将来の行動予測を行い、
    予測された前記車両の将来の行動予測に基づいて、前記ソフトウェアの更新を行うための通信を行う領域を設定する、
    ソフトウェア更新方法。
JP2019096131A 2019-05-22 2019-05-22 ソフトウェア更新装置およびソフトウェア更新方法 Active JP7069084B2 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP2019096131A JP7069084B2 (ja) 2019-05-22 2019-05-22 ソフトウェア更新装置およびソフトウェア更新方法
CN202010422103.2A CN111984283A (zh) 2019-05-22 2020-05-18 软件更新装置及软件更新方法
US16/877,532 US20200371774A1 (en) 2019-05-22 2020-05-19 Software updating device and software updating method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2019096131A JP7069084B2 (ja) 2019-05-22 2019-05-22 ソフトウェア更新装置およびソフトウェア更新方法

Publications (2)

Publication Number Publication Date
JP2020190488A JP2020190488A (ja) 2020-11-26
JP7069084B2 true JP7069084B2 (ja) 2022-05-17

Family

ID=73441612

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2019096131A Active JP7069084B2 (ja) 2019-05-22 2019-05-22 ソフトウェア更新装置およびソフトウェア更新方法

Country Status (3)

Country Link
US (1) US20200371774A1 (ja)
JP (1) JP7069084B2 (ja)
CN (1) CN111984283A (ja)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6884744B2 (ja) * 2018-12-27 2021-06-09 株式会社 ミックウェア 情報伝送システム
KR20200141296A (ko) * 2019-06-10 2020-12-18 현대자동차주식회사 차량 업데이트 제어 장치 및 방법
JP7243589B2 (ja) * 2019-11-15 2023-03-22 トヨタ自動車株式会社 車両の制御装置
US20230161583A1 (en) * 2020-03-06 2023-05-25 Sonatus, Inc. System, method, and apparatus for managing vehicle automation
JP2022100031A (ja) * 2020-12-23 2022-07-05 キヤノン株式会社 処理装置、装置、システム、方法およびプログラム
DE102021201116A1 (de) 2021-02-05 2022-08-11 Volkswagen Aktiengesellschaft Fahrzeug, Verfahren, Vorrichtung und Computerprogramm zur Aktualisierung einer Software für ein Fahrzeug
US11271971B1 (en) * 2021-03-19 2022-03-08 King Saud University Device for facilitating managing cyber security health of a connected and autonomous vehicle (CAV)

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2017090092A (ja) 2015-11-04 2017-05-25 株式会社デンソー 車載用ダウンロード制御装置、及びダウンロード制御方法
JP2017228104A5 (ja) 2016-06-23 2018-05-31

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH05199167A (ja) * 1992-01-20 1993-08-06 Toyota Motor Corp 自動車用通信情報提供装置
US9715378B2 (en) * 2013-12-18 2017-07-25 International Business Machines Corporation Automated software update scheduling
JP6372521B2 (ja) * 2016-06-23 2018-08-15 住友電気工業株式会社 制御装置、プログラム配信方法、およびコンピュータプログラム
US10318269B2 (en) * 2016-05-04 2019-06-11 General Motors Llc Providing vehicle system module updates
JP6697357B2 (ja) * 2016-09-15 2020-05-20 株式会社日立製作所 ソフトウェア更新システム
JP6610639B2 (ja) * 2017-10-03 2019-11-27 株式会社安川電機 ソフトウェア管理システム、ソフトウェア更新装置、ソフトウェア更新方法、及びソフトウェア更新プログラム

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2017090092A (ja) 2015-11-04 2017-05-25 株式会社デンソー 車載用ダウンロード制御装置、及びダウンロード制御方法
JP2017228104A5 (ja) 2016-06-23 2018-05-31

Also Published As

Publication number Publication date
CN111984283A (zh) 2020-11-24
JP2020190488A (ja) 2020-11-26
US20200371774A1 (en) 2020-11-26

Similar Documents

Publication Publication Date Title
JP6959959B2 (ja) ソフトウェア更新装置、サーバ装置、およびソフトウェア更新方法
JP7069084B2 (ja) ソフトウェア更新装置およびソフトウェア更新方法
US11307043B2 (en) Vehicle energy management
US10006778B2 (en) Method and apparatus for vehicular travel assistance
JP5494270B2 (ja) 情報提供装置および情報提供方法
CN111220168A (zh) 一种电动汽车充电路径规划方法、装置和存储介质
US9552728B2 (en) Route-based propulsion mode control for multimodal vehicles
Mueck et al. Networking vehicles to everything: Evolving automotive solutions
JP5860831B2 (ja) 走行支援システム、走行支援方法及びコンピュータプログラム
CN106998351A (zh) 用于车辆远程信息处理单元的无线通信信道的控制
WO2013094302A1 (ja) 移動体通信装置及び通信制御方法
US10185323B2 (en) System and method to reduce vehicle resource depletion risk
CN112236648A (zh) 使用v2x补充信息增强导航体验
WO2020008792A1 (ja) 特典付与装置及び特典付与方法
JP5115072B2 (ja) アドバイス提供システム
JP2015157566A (ja) 移動支援装置、移動支援方法、及び運転支援システム
US11055785B1 (en) System for monitoring and using data indicative of driver characteristics based on sensors
JP2021072062A (ja) 管理装置、車車間充電システム、プログラム及び管理方法
CN111310062A (zh) 匹配方法、匹配服务器、匹配系统以及存储介质
CN114550435A (zh) 一种预警信息展示方法、终端及系统
JP2015157557A (ja) 走行支援装置
CN111462519B (zh) 引导装置、引导方法及存储介质
JP2018059721A (ja) 駐車位置探索方法、駐車位置探索装置、駐車位置探索プログラム及び移動体
US20220207447A1 (en) Information providing device, information providing method, and storage medium
CN115938148A (zh) 低/无连接区域中的驾驶事件检测的智能车辆导航系统和控制逻辑

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20200124

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20210309

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20210405

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20210914

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20211110

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20220405

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20220502

R150 Certificate of patent or registration of utility model

Ref document number: 7069084

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150