JP2021165999A - 車載装置、情報処理方法及びコンピュータプログラム - Google Patents

車載装置、情報処理方法及びコンピュータプログラム Download PDF

Info

Publication number
JP2021165999A
JP2021165999A JP2020069814A JP2020069814A JP2021165999A JP 2021165999 A JP2021165999 A JP 2021165999A JP 2020069814 A JP2020069814 A JP 2020069814A JP 2020069814 A JP2020069814 A JP 2020069814A JP 2021165999 A JP2021165999 A JP 2021165999A
Authority
JP
Japan
Prior art keywords
program
update
vehicle
input
information regarding
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.)
Granted
Application number
JP2020069814A
Other languages
English (en)
Other versions
JP7415756B2 (ja
Inventor
健太郎 芦邉
Kentaro Ashibe
達也 泉
Tatsuya Izumi
一郎 神田
Ichiro Kanda
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.)
Sumitomo Wiring Systems Ltd
AutoNetworks Technologies Ltd
Sumitomo Electric Industries Ltd
Original Assignee
Sumitomo Wiring Systems Ltd
AutoNetworks Technologies Ltd
Sumitomo Electric Industries 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 Sumitomo Wiring Systems Ltd, AutoNetworks Technologies Ltd, Sumitomo Electric Industries Ltd filed Critical Sumitomo Wiring Systems Ltd
Priority to JP2020069814A priority Critical patent/JP7415756B2/ja
Priority to CN202180023682.6A priority patent/CN115315686A/zh
Priority to PCT/JP2021/010612 priority patent/WO2021205825A1/ja
Priority to US17/995,536 priority patent/US20230195445A1/en
Publication of JP2021165999A publication Critical patent/JP2021165999A/ja
Application granted granted Critical
Publication of JP7415756B2 publication Critical patent/JP7415756B2/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
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60RVEHICLES, VEHICLE FITTINGS, OR VEHICLE PARTS, NOT OTHERWISE PROVIDED FOR
    • B60R16/00Electric or fluid circuits specially adapted for vehicles and not otherwise provided for; Arrangement of elements of electric or fluid circuits specially adapted for vehicles and not otherwise provided for
    • B60R16/02Electric or fluid circuits specially adapted for vehicles and not otherwise provided for; Arrangement of elements of electric or fluid circuits specially adapted for vehicles and not otherwise provided for electric constitutive elements
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60RVEHICLES, VEHICLE FITTINGS, OR VEHICLE PARTS, NOT OTHERWISE PROVIDED FOR
    • B60R16/00Electric or fluid circuits specially adapted for vehicles and not otherwise provided for; Arrangement of elements of electric or fluid circuits specially adapted for vehicles and not otherwise provided for
    • B60R16/02Electric or fluid circuits specially adapted for vehicles and not otherwise provided for; Arrangement of elements of electric or fluid circuits specially adapted for vehicles and not otherwise provided for electric constitutive elements
    • B60R16/023Electric or fluid circuits specially adapted for vehicles and not otherwise provided for; Arrangement of elements of electric or fluid circuits specially adapted for vehicles and not otherwise provided for electric constitutive elements for transmission of signals between vehicle parts or subsystems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Mechanical Engineering (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Security & Cryptography (AREA)
  • Quality & Reliability (AREA)
  • Stored Programmes (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

【課題】自装置の制御プログラムの更新を効率的に実施することができる車載装置等を提供する。【解決手段】車載装置は、処理部と、前記処理部が実行可能な複数のプログラムが記憶される記憶部とを備える車載装置であって、前記処理部は、車外のサーバから提供される更新の有無に関する情報を取得し、取得した前記更新の有無に関する情報を、基本プログラムに含まれる入出力機能とは異なる入出力機能を実行することにより共有領域に保存し、保存した前記更新の有無に関する情報に基づき、ブートプログラムの実行開始後に、前記基本プログラム又は更新処理プログラムを選択的に実行するよう構成されている。【選択図】図2

Description

本技術は、車載装置、情報処理方法及びコンピュータプログラムに関する。
車両には、エンジン制御等のパワー・トレーン系、エアコン制御等のボディ系等の車載機器を制御するための車載ECU(Electronic Control Unit)が搭載されている。車載ECUは、MPU等の演算処理部、RAM等の書き換え可能な不揮発性の記憶部、及び他の車載ECUと通信するための通信部を含み、記憶部に記憶した制御プログラムを読み込んで実行することにより、車載機器の制御を行う。更に車両には、無線通信の機能を備えた中継装置が実装されており、中継装置を介して、車外のネットワークに接続されているプログラム提供装置と通信し、当該プログラム提供装置から車載ECUの制御プログラムをダウンロード(受信)し、当該車載ECUの制御プログラムを更新することができる(例えば特許文献1参照)。
特開2017−97851号公報
しかしながら、特許文献1の中継装置は、自装置にて実行する制御プログラムを更新する処理に関する事項は考慮されていないため、当該自装置の制御プログラムの更新を効率的に実施できないことが懸念される。
本開示の目的は、自装置の制御プログラムの更新を効率的に実施することができる車載装置を提供することである。
本開示の一態様に係る車載装置は、処理部と、前記処理部が実行可能な複数のプログラムが記憶される記憶部とを備える車載装置であって、前記複数のプログラムは、前記処理部の起動時に実行されるブートプログラムと、前記ブートプログラムにより選択的に実行される基本プログラムと、前記ブートプログラムにより選択的に実行され、車外のサーバと更新に関する情報の通信を行う更新処理プログラムとを含み、前記記憶部は、自装置の制御プログラムの更新の有無に関する情報を保存する共有領域を含み、前記共有領域は、前記ブートプログラムを実行することによりアクセスが可能であり、前記基本プログラムに含まれる入出力機能によるアクセスが可能な領域とは異なる領域であり、前記処理部は、車外のサーバから提供される前記更新の有無に関する情報を取得し、取得した前記更新の有無に関する情報を、前記基本プログラムに含まれる入出力機能とは異なる入出力機能により前記共有領域に保存し、保存した前記更新の有無に関する情報に基づき、前記ブートプログラムの実行開始後に、前記基本プログラム又は前記更新処理プログラムを実行する。
本開示の一態様によれば、自装置の制御プログラムの更新を効率的に実施することができる。
本実施の形態に係る中継装置(車載装置)を含む車載システムの構成を例示する模式図である。 中継装置等の構成を例示するブロック図である。 本実施の形態に係る中継装置が行う更新フラグの格納処理の手順を示すフローチャートである。 本実施の形態に係る中継装置が行う起動処理の手順を示すフローチャートである。
[本開示の実施形態の説明]
最初に本開示の実施態様を列挙して説明する。また、以下に記載する実施形態の少なくとも一部を任意に組み合わせてもよい。
(1)本開示の一態様に係る車載装置は、処理部と、前記処理部が実行可能な複数のプログラムが記憶される記憶部とを備える車載装置であって、前記複数のプログラムは、前記処理部の起動時に実行されるブートプログラムと、前記ブートプログラムにより選択的に実行される基本プログラムと、前記ブートプログラムにより選択的に実行され、車外のサーバと更新に関する情報の通信を行う更新処理プログラムとを含み、前記記憶部は、自装置の制御プログラムの更新の有無に関する情報を保存する共有領域を含み、前記共有領域は、前記ブートプログラムを実行することによりアクセスが可能であり、前記基本プログラムに含まれる入出力機能によるアクセスが可能な領域とは異なる領域であり、前記処理部は、車外のサーバから提供される前記更新の有無に関する情報を取得し、取得した前記更新の有無に関する情報を、前記基本プログラムに含まれる入出力機能とは異なる入出力機能により前記共有領域に保存し、保存した前記更新の有無に関する情報に基づき、前記ブートプログラムの実行開始後に、前記基本プログラム又は前記更新処理プログラムを実行する。
本態様にあっては、車載装置の記憶部にはブートプログラム、基本プログラム、更新処理プログラム、基本プログラム上で実行される制御プログラム等を含む複数のプログラムが記憶されている。車載装置の処理部は、実行するプログラム毎に異なる制御内容、アクセス権限に基づき処理を実行する。ブートプログラムを実行する処理部は、車外のサーバから提供され記憶部に記憶された更新の有無に関する情報を識別することにより、基本プログラム又は更新処理プログラムのいずれを選択して起動するかを決定する。更新に関する情報がある場合、処理部は、基本プログラムを介することなくブートプログラムを実行する処理部によりアクセス可能に構成されている共有領域に、当該更新に関する情報があることを示す識別子を保存する。基本プログラムの実行開始前であっても、ブートプログラムを実行する処理部により更新の有無に関する情報を取得することで、ブートフェーズにおいて実行対象となるプログラムを判定することができるため、判定結果に応じて選択的に起動された更新処理プログラムに基づき、プログラムの更新を効率的に実施することができる。共有領域は、基本プログラムを実行する処理部がアクセス不可能であり、更新の有無に関する情報のみを格納する専用領域とすることで、簡易な構成によりコンフリクトの発生を防止しつつ効率的な処理の実行を実現する。
(2)本開示の一態様に係る車載装置は、前記複数のプログラムは、前記基本プログラム上で実行される前記制御プログラムとダイアグプログラムとを含み、前記ダイアグプログラムは、前記基本プログラムに含まれる入出力機能とは異なる入出力機能を含み、前記制御プログラムを実行中の処理部は、通信により接続する複数の車載ECUとの中継を制御し、前記ダイアグプログラムを実行中の処理部は、前記車外のサーバから提供される前記更新の有無に関する情報を取得し、取得した前記更新の有無に関する情報を前記基本プログラムに含まれる入出力機能とは異なる入出力機能により前記共有領域に保存する。
本態様にあっては、基本プログラムをプラットフォームとして制御プログラム及び診断プログラムが並行して実行されることで、車載装置が例えばゲートウェイとしての機能を備えつつ効率的な更新処理を実行することができる。
(3)本開示の一態様に係る車載装置は、前記処理部は、前記記憶部における物理記憶位置を示す物理アドレスにより前記共有領域を指定し、指定した前記共有領域に前記更新の有無に関する情報を保存する。
本態様にあっては、直接物理アドレスにより指定される共有領域に更新の有無に関する情報が保存される。これにより、基本プログラムに含まれる入出力機能の制御によることなく他のプログラムが共有領域を参照することができ、効率的に処理を実行することができる。
(4)本開示の一態様に係る車載装置は、前記共有領域は、前記更新処理プログラムを実行することによりアクセスが可能であり、前記更新処理プログラムを実行する処理部は、更新処理が完了された場合に更新処理が完了したことを示す情報を前記共有領域に保存する。
本態様にあっては、更新処理プログラムにより、更新処理が完了した場合に更新完了を示す情報が共有領域に保存される。共有領域は、基本プログラムを介することなく更新処理プログラムを実行する処理部によりアクセス可能に構成されているため、効率的に処理を実行することができる。
(5)本開示の一態様に係る情報処理方法は、起動時に実行されるブート処理と、前記ブート処理により選択的に実行される基本処理と、前記ブート処理により選択的に実行され、車外のサーバと更新に関する情報の通信を行う更新処理とを含み、自装置の制御プログラムの更新の有無に関する情報を保存する共有領域は、前記ブート処理を実行することによりアクセスが可能であり、前記基本処理に含まれる入出力機能によるアクセスが可能な領域とは異なる領域であり、車外のサーバから提供される前記更新の有無に関する情報を取得し、取得した前記更新の有無に関する情報を、前記基本処理に含まれる入出力機能とは異なる入出力機能により前記共有領域に保存し、保存した前記更新の有無に関する情報に基づき、前記ブート処理の実行開始後に、前記基本処理又は前記更新処理を実行する。
本態様にあっては、自装置の制御プログラムの更新を効率的に実施することができる。
(6)本開示の一態様に係るコンピュータプログラムは、起動時に実行されるブートプログラムと、前記ブートプログラムにより選択的に実行される基本プログラムと、前記ブートプログラムにより選択的に実行され、車外のサーバと更新に関する情報の通信を行う更新処理プログラムとを含み、自装置の制御プログラムの更新の有無に関する情報を保存する共有領域は、前記ブートプログラムを実行することによりアクセスが可能であり、前記基本プログラムに含まれる入出力機能によるアクセスが可能な領域とは異なる領域であり、車外のサーバから提供される前記更新の有無に関する情報を取得し、取得した前記更新の有無に関する情報を、前記基本プログラムに含まれる入出力機能とは異なる入出力機能により前記共有領域に保存し、保存した前記更新の有無に関する情報に基づき、前記ブートプログラムの実行開始後に、前記基本プログラム又は前記更新処理プログラムを実行する。
本態様にあっては、自装置の制御プログラムの更新を効率的に実施することができる。
[本開示の実施形態の詳細]
本開示の実施形態に係る中継装置の具体例を、以下に図面を参照しつつ説明する。なお、本開示はこれらの例示に限定されるものではなく、特許請求の範囲によって示され、特許請求の範囲と均等の意味及び範囲内でのすべての変更が含まれることが意図される。
図1は、本実施の形態に係る中継装置(車載装置)2を含む車載システムの構成を例示する模式図である。図2は、中継装置等の構成を例示するブロック図である。車載システムは、車両Cに搭載された車外通信装置1、中継装置2及び外部サーバ100を含む。本実施形態においては、中継装置2は、ブートプログラム2a、基本プログラム2b、更新処理プログラム2g等を記憶する車載装置に相当する。中継装置2は、車外ネットワークNを介して接続された外部サーバ100からプログラム又はデータを取得し、車両Cに搭載されている車載ECU3(Electronic Control Unit)に送信する。また、車両Cに外部認証装置5が接続された場合、外部認証装置5は、車外ネットワークNを介して外部サーバ100と通信する。
外部サーバ100は、例えばインターネット又は公衆回線網等の車外ネットワークNに接続されているサーバ等のコンピュータであり、RAM(Random Access Memory)、ROM(Read Only Memory)又はハードディスク等による記憶部101を備える。記憶部101には、中継装置2の製造メーカ等によって作成された当該中継装置2を制御するためのプログラム又はデータが保存されている。当該プログラム又はデータは、更新プログラムとして、後述のごとく車両Cに送信され、車両Cに搭載されている中継装置2の制御プログラム2c又はデータを更新するために用いられる。このように構成された外部サーバ100は、OTA(Over The Air)サーバとも称される。車両Cに搭載される中継装置2は、外部サーバ100から無線通信により送信された更新プログラムを取得し、当該更新プログラムを実行する制御プログラムとして適用することにより、自装置が実行する制御プログラムを更新(リプロ)することができる。外部サーバ100の記憶部101には、外部認証装置5から送信された中継装置2の構成情報が記憶される。当該構成情報には、車両Cを識別するための識別情報(VIN:車両識別番号)が含まれている。外部サーバ100は、当該識別情報に基づき車両Cを特定し、特定した車両Cとの間で、当該車両Cの中継装置2の構成情報に関する通信を行う。
車両Cには、車外通信装置1、中継装置2、表示装置7、及び種々の車載機器を制御するための複数の車載ECU3が搭載されている。車外通信装置1と中継装置2とは、例えばシリアルケーブル等のハーネスにより通信可能に接続されている。中継装置2及び車載ECU3は、CAN(Control Area Network/登録商標)又はイーサネット(Ethernet/登録商標)等の通信プロトコルに対応した通信線41及び車内LAN4によって通信可能に接続されている。
車外通信装置1は、車外通信部11及び、中継装置2と通信するための入出力I/F(インターフェイス)12を含む。車外通信部11は、3G、LTE、4G、5G、WiFi等の移動体通信のプロトコルを用いて無線通信をするための通信装置であり、車外通信部11に接続されたアンテナ13を介して外部サーバ100とデータの送受信を行う。車外通信装置1と外部サーバ100との通信は、例えば公衆回線網又はインターネット等の車外ネットワークNを介して行われる。
入出力I/F12は、中継装置2と、例えばシリアル通信するための通信インターフェイスである。車外通信装置1と中継装置2とは、入出力I/F12及び入出力I/F12に接続されたシリアルケーブル等のハーネスを介して相互に通信する。本実施形態では、車外通信装置1は、中継装置2と別装置とし、入出力I/F12等によってこれら装置を通信可能に接続しているが、これに限定されない。車外通信装置1は、中継装置2の一構成部位として、中継装置2に内蔵されるものであってもよい。
中継装置2は、図2に示す如く、処理部20、記憶部21、入出力I/F22、車内通信部23などを含む。中継装置2は、例えば、制御系の車載ECU3、安全系の車載ECU3及び、ボディ系の車載ECU3等の複数の通信線41による系統のセグメントを統括し、これらセグメント間での車載ECU3同士の通信を中継する。中継装置2は、例えばゲートウェイ又はイーサスイッチである。中継装置2は、例えば車両C全体をコントロールするボディECU、自動運転を制御する自動運転ECU等の一機能部として構成されるものであってもよい。
処理部20は、CPU(Central Processing Unit)又はMPU(Micro Processing Unit)等により構成されている。処理部20は、記憶部21に予め記憶された各プログラム及びデータを読み出して実行することにより、種々の制御処理及び演算処理等を行う。なお以下において"プログラム"との記載には、プログラムと、当該プログラムの実行に必要なデータとを含み得る。
記憶部21は、RAM(Random Access Memory)等の揮発性のメモリ素子又は、ROM(Read Only Memory)、EEPROM(Electrically Erasable Programmable ROM)若しくはフラッシュメモリ等の不揮発性のメモリ素子により構成してある。記憶部21には、ブートプログラム領域211、基本プログラム領域212、更新処理プログラム領域215、共有領域216等が含まれている。
ブートプログラム領域211には、ブートプログラム2aが格納されている。ブートプログラム2aは、中継装置2のリセット後、最初に起動されるプログラムである。処理部20は、ブートプログラム2aを実行することにより、共有領域216に保存される更新の有無に関する情報に応じて、後述する基本プログラム2b又は更新処理プログラム2gのいずれかを選択的に起動する処理を行う。更新の有無に関する情報とは、外部サーバ100に更新プログラムに関する情報があるか否かを示す情報である。更新の有無に関する情報は、例えば、更新に関する情報があることを示す更新フラグ、更新に関する情報がないことを示す完了フラグ等が含まれる。更新フラグがある場合には、処理部20は更新処理プログラム2gを起動させる。完了フラグがある場合には、処理部20は基本プログラム2bを起動させる。ブートプログラム2aは、更新処理プログラム2g又は基本プログラム2bを起動させる処理を実行後、終了するものであってよい。
更新処理プログラム領域215には、更新処理プログラム2gが格納されている。更新処理プログラム2gは、外部サーバ100から更新プログラムが提供された場合に、更新対象である制御プログラム2cを更新プログラムへと更新する更新処理を実行するためのプログラムである。処理部20は、更新処理プログラム2gを実行することにより、車外通信装置1を介して、外部サーバ100と後述する制御プログラム2cの更新に関する情報の通信を行い、外部サーバ100から更新プログラムを取得する更新処理を行う。取得した更新プログラムは、基本プログラム領域212に格納される。更新処理が完了した場合、処理部20は、更新処理が完了したことを示す識別子を共有領域216に格納する。
基本プログラム領域212には、プログラム領域(コードフラッシュ)213及びデータ領域(データフラッシュ)214が含まれている。プログラム領域213には、基本プログラム2b、当該基本プログラム2b上で実行される制御プログラム2c、ダイアグプログラム2d及びセキュリティプログラム2eなどが格納されている。データ領域214には、基本プログラム2bの有する入出力機能(NVM)により管理されるNVM管理領域2fが含まれている。基本プログラム2bは、オペレーティングシステムに係るコンピュータプログラムである。基本プログラム2bは、例えばAUTOSAR(Automotive Open System Architecture )の規格に準拠したものであってもよい。
制御プログラム2c、ダイアグプログラム2d及びセキュリティプログラム2eはいずれも、基本プログラム2bをプラットフォームとして実行されるプログラムである。
制御プログラム2cは、更新処理プログラム2gに基づく更新処理を実施していない状態において実行されるプログラムであり、例えば車載ECU3間、あるいは外部サーバ100と車載ECU3との間における通信の中継を行う。この制御プログラム2cが、中継装置2から送信される更新プログラムによって更新される対象である。処理部20は、制御プログラム2cを実行することにより、例えば記憶部21に記憶されている中継経路情報(ルーティングテーブル)を参照して、車載ECU3から送信されるCANメッセージ、IPパケット等を中継する。
ダイアグプログラム2dは、制御プログラム2cに並行して実行されるプログラムであり、更新プログラムに関する情報の有無を監視する。処理部20は、ダイアグプログラム2dを実行することにより、車外通信装置1を用いた外部サーバ100との通信を行い、定期的に車両Cに搭載された制御プログラム2cの更新に関する情報があるか否かの問い合わせを行う。更新に関する情報があった場合、処理部20は、更新要求があったことを示す識別子を共有領域216に格納する。なお、ダイアグプログラム2dは、制御プログラム2cに並行して実行されるプログラムに限定されるものではない。例えば、制御プログラム2cに含まれる1モジュールとして構成され、制御プログラム2cのプロセスのサブプロセスとして実行されるものであってもよい。
セキュリティプログラム2eは、制御プログラム2c及びダイアグプログラム2dと並行して実行されるプログラムであり、これら制御プログラム2c及びダイアグプログラム2dにおけるセキュリティ情報を管理する。
上記では、基本プログラム2b上で実行される制御プログラム2c、ダイアグプログラム2d及びセキュリティプログラム2eが、それぞれ異なるプログラムモジュールとして構成される例を説明したが、本実施形態は限定されるものではない。例えば、制御プログラム2c、ダイアグプログラム2d及びセキュリティプログラム2eは、基本プログラム2bの機能の一部として基本プログラム2bに含まれる構成であってもよい。
記憶部21に記憶された上述のブートプログラム2a、基本プログラム2b、制御プログラム2c、ダイアグプログラム2d、セキュリティプログラム2e、及び更新処理プログラム2gは、中継装置2が読み取り可能な記録媒体2Aから読み出されたブートプログラム2a、基本プログラム2b、制御プログラム2c、ダイアグプログラム2d、セキュリティプログラム2e、及び更新処理プログラム2g夫々を記憶したものであってもよい。また、図示しない通信網に接続されている図示しない外部コンピュータからブートプログラム2a、基本プログラム2b、制御プログラム2c、ダイアグプログラム2d、セキュリティプログラム2e、及び更新処理プログラム2g夫々をダウンロードし、記憶部21に記憶させたものであってもよい。更に、記憶部21には、自中継装置2及び車両Cに搭載される全ての車載ECU3の構成情報が記憶される。
NVM管理領域2fは、基本プログラム2bに含まれる入出力機能(メモリ管理機能)により管理されるデータ保存領域である。基本プログラム2bを実行する処理部20は、基本プログラム2bに基づく処理において、論理アドレスを物理アドレスに変換する入出力機能を用いてNVM管理領域2fにアクセスし、データを保存する。すなわち基本プログラム2bを実行する処理部20は、入出力機能により論理アドレスと物理アドレスと対応付けて変換する変換情報を記憶し、変換情報を参照して特定したNVM管理領域2fにデータを格納する。従って、NVM管理領域2fは、基本プログラム2bに含まれる入出力機能を備えない他のプログラムを実行する処理部20からはアクセスが制限される。すなわちブートプログラム2a及び更新処理プログラム2gを実行する場合、処理部20はNVM管理領域2fの情報を参照することができない。この様に構成されるNVM管理領域2fに対して、基本プログラム2bが備える入出力機能を用いて入出力処理を実行することにより、処理部20は、当該NVM管理領域2fへのデータ、音等の読み書きを実行する。
共有領域(データフラッシュ)216は、更新の有無に関する情報を示す識別子のみを格納する識別子専用領域である。更新の有無に関する情報を示す識別子には、例えば上述の更新フラグ、完了フラグ等が含まれてよい。共有領域216は、基本プログラム2bが備える入出力機能で管理されないデータ保存領域であり、物理アドレスを用いて一意に場所を指定することができる記憶領域である。共有領域216に対しては、基本プログラム2bが備える入出力機能を実行する処理部20はアクセスすることができない。ダイアグプログラム2d及び更新処理プログラム2gを実行する処理部20は、更新の有無に関する情報を識別した場合、あるいは更新処理が完了した場合には、これらの結果に応じた識別子を共有領域216に保存する。この場合において、処理部20は、記憶部21の不揮発性メモリにおける物理位置情報である物理アドレスを用いて共有領域216を指定し、当該共有領域216に識別子を格納する。すなわち、ダイアグプログラム2d又は更新処理プログラム2gを実行する処理部20は、論理アドレスと物理アドレスとを対応付ける変換処理を行う基本プログラム2bの入出力機能とは異なる、直接物理アドレスを指定する入出力機能により、共有領域216にアクセスしデータを保存する。
上記のように、記憶部21に基本プログラム2bが備える入出力機能で管理されない共有領域216が備えられることにより、基本プログラム2bを実行することなく、他のプログラムを実行する処理部20から直接共有領域216にアクセスすることが可能となる。処理部20がブートプログラム2aに基づき処理を実行する場合であっても、基本プログラム2bを起動することなく、直接共有領域216へアクセスし更新の有無に関する情報を示す識別子を認識することができ、効率的にその後の起動処理を行うことができる。
入出力I/F22は、車外通信装置1の入出力I/F12と同様に、例えばシリアル通信するための通信インターフェイスである。入出力I/F22を介して、中継装置2は、車外通信装置1及びIGスイッチ6と通信可能に接続される。
車内通信部23は、例えばCAN(Control Area Network)又はイーサネット(Ethernet/登録商標)等の通信プロトコルを用いた入出力インターフェイスであり、処理部20は、車内通信部23を介して車内LAN4に接続されている車載ECU3又は他の中継装置等の車載機器と相互に通信する。車内通信部23は、複数個設けられており、車内通信部23夫々に、車内LAN4を構成する通信線41が接続されている。このように車内通信部23を複数個設けることにより、車内LAN4は複数個のセグメントに分け、各セグメントに車載ECUを、当該車載ECUの機能(制御系機能、安全系機能、ボディ系機能)に応じて接続する。車内通信部23には、後述する外部認証装置5が必要に応じて接続され、外部認証装置5が接続された場合、処理部20は、車内通信部23を介して外部認証装置5と相互に通信する。
車載ECU3は、制御部30、記憶部31及び車内通信部32を含む。記憶部31は、RAM等の揮発性のメモリ素子又は、ROM、EEPROM若しくはフラッシュメモリ等の不揮発性のメモリ素子により構成してあり、車載ECU3のプログラム又はデータが記憶されている。制御部30は、CPU又はMPU等により構成してあり、記憶部31に記憶されたプログラム及びデータを読み出し実行して制御処理等を行い、当該車載ECU3を含む車載機器又はアクチュエータ等を制御する。
外部認証装置5は、車載ECU3の交換等の車両Cの整備作業を担う正規ディーラ等を含む車両C整備業者によって用いられる装置(ダイアグツール)であり、例えばパソコン、タブレットPC又はスマートフォン等の汎用情報端末に専用アプリケーションをインストールした装置、又はハードウェアを含み専用情報端末として構成された装置である。外部認証装置5は、前述の車載ECU3と同様にCPU又はMPUによる制御部、記憶部、及び車内通信部(いずれも図示せず)等を含む。外部認証装置5の車内通信部は、車載ECU3と同様のCAN又はイーサネットに限定されず、例えばシリアルケーブル等のワイヤーハーネスによる通信するための入出力I/F又は通信モジュールであってもよい。
外部認証装置5は、車内通信部によって、車内LAN等を介して中継装置2又は車載ECU3夫々と通信する。又は、外部認証装置5の車内通信部は、無線通信の機能を有し、外部認証装置5は無線通信により中継装置2と通信するものであってもよい。更に外部認証装置5は、外部サーバ100と通信するための車外通信部(図示せず)を含む。外部認証装置5の車外通信部は、有線又は無線による通信機能を有する通信モジュールであり、外部認証装置5は、車外通信部によって、車外ネットワークNを介して外部サーバ100と通信する。
中継装置2の入出力I/F22には、シリアルケーブル等のワイヤーハーネスにより、車両Cの起動又は停止を行うIG(イグニッション)スイッチ6が通信可能に接続されている。IGスイッチ6がオン又はオフにされた場合、IGスイッチ6から出力(送信)された信号を、中継装置2の処理部20は、入出力I/F22を介して取得(受信)する。中継装置2の処理部20は、取得した信号に基づき、当該IGスイッチ6のオン又はオフに関する情報(IGオンの信号又はIGオフの信号)を、車内通信部23を介して全ての車載ECU3及び、外部認証装置5が車両Cに接続されている場合は、外部認証装置5に対しても送信する。車載ECU3及び外部認証装置5は、中継装置2から送信されたIGスイッチ6のオン又はオフに関する情報を取得し、取得した情報に基づき所定の動作を行う。
表示装置7は、例えばカーナビゲーションのディスプレイ等のHMI(Human Machine Interface)装置である。表示装置7は、中継装置2の入出力I/F22とシリアルケーブル等のハーネスにより通信可能に接続されている。表示装置7には、中継装置2の処理部20から入出力I/F22を介して出力されたデータ又は情報が表示される。
図3は、本実施の形態に係る中継装置2が行う更新フラグの格納処理の手順を示すフローチャートである。中継装置2の処理部20は、例えば車両Cが起動状態(IGスイッチ6がオン)又は停止状態(IGスイッチ6がオフ)において、定常的に以下の処理を行う。
中継装置2の処理部20は、車外通信装置1を介して外部サーバ100と通信し、更新プログラムに関する情報の有無に関する問い合わせを行う(ステップS11)。処理部20は、キャンペーン情報等、当該更新プログラムに関する情報があるか否か、すなわち更新要求があるか否かを判定する(ステップS12)。当該更新要求があるか否かの判定は、中継装置2から外部サーバ100への問合せによるプル型通信のみならず、外部サーバ100から中継装置2へ送信されるメッセージ等のプッシュ型通信に基づき行われるものであってもよい。なお、更新プログラムに関する情報の問い合わせは、車内通信部23に外部認証装置5が接続されることにより行われてもよい。
外部サーバ100から更新プログラムに関する情報がないことを示す応答を受信したことにより更新プログラムに関する情報がないと判定した場合(ステップS12:NO)、処理部20は、再度S11の処理を実行すべく、ループ処理を行う。当該ループ処理を行うことにより、処理部20は、外部サーバ100に対する更新プログラムに関する問い合わせを周期的に行うものとなる。
外部サーバ100から更新プログラムに関する情報があることを示す応答を受信したことにより更新プログラムに関する情報があると判定した場合(ステップS12:YES)、処理部20は、更新プログラムに関する情報があることを示す更新フラグ(例えば識別子「1」)を共有領域216に格納し(ステップS13)、処理を終了する。この場合において、処理部20は、論理アドレスと物理アドレスとを対応付ける変換処理を行うことなく、共有領域216の物理位置情報である物理アドレスを直接指定して、共有領域216に更新フラグを格納する。すなわち、処理部20は、基本プログラム2bの入出力機能とは異なる入出力機能により、共有領域216に更新フラグを格納する。
図4は、本実施の形態に係る中継装置2が行う起動処理の手順を示すフローチャートである。例えば車両Cのリセットを指示するリセットシグナルを取得し、あるいはIGスイッチ6がオフ状態からオン状態又はオン状態からオフ状態へ変化すると、中継装置2の処理部20により以下の処理が実行される。
処理部20は、記憶部21に格納されたブートプログラム2aをRAM上に展開し、ブートプログラム2aを起動する(ステップS21)。処理部20は、物理アドレスに基づき特定される共有領域216を参照し、更新フラグがあるか否かを判定する(ステップS22)。処理部20は、例えば共有領域216に識別子「1」が格納されている場合、更新フラグがあると判定する。一方識別子「0」が格納されている場合、処理部20は更新フラグがないと判定する。処理部20は、更新フラグの有無に基づき起動すべきプログラムを特定する。
更新フラグがあると判定した場合(ステップS22:YES)、処理部20は、更新処理プログラム2gを起動すると判断する。処理部20は、更新処理プログラム領域215に保存される更新処理プログラム2gを選択して起動し(ステップS23)、ブートプログラム2aの処理を終了する。
処理部20は、更新処理プログラム2gに基づく処理に移行する。処理部20は、車外通信装置1を介して、外部サーバ100から更新プログラムを取得する(ステップS24)。処理部20は、車内通信部23を介して外部認証装置5から更新プログラムを取得してもよい。
処理部20は、制御プログラム2cを、取得した更新プログラム、すなわち新たな制御プログラム2cに更新する更新処理を実行する(ステップS25)。具体的には、処理部20は、プログラム領域に保存される制御プログラム2cを削除し、取得した更新プログラムを新たに格納することで更新プログラムを適用する更新処理を実行する。あるいは、処理部20は、記憶部21のプログラム領域に2つの領域が設けられている場合には、更新対象である制御プログラム2cを記憶する領域とは異なる、他方の領域に取得した更新プログラムを格納してもよい。処理部20は、適用する制御プログラム2cを読み出す記憶部21の領域を、以前の制御プログラム2cが記憶された領域から、更新プログラムを記憶した領域に切り替えることで、更新処理を実行する。
新たな制御プログラム2cを適用し更新処理が正常に完了した場合、処理部20は、共有領域216に格納されるフラグをリセットする。処理部20は、例えば更新処理の完了、すなわち、更新に関する情報が適切に保存され更新に関する情報がないことを示す完了フラグ(例えば識別子「0」)を共有領域216に保存し(ステップS26)、更新処理プログラム2gの処理を終了する。この場合においても、処理部20は、論理アドレスと物理アドレスとを対応付ける変換処理を行うことなく、共有領域216の物理位置情報である物理アドレスを直接指定して、共有領域216に完了フラグを格納する。すなわち、処理部20は、基本プログラム2bの入出力機能とは異なる入出力機能により、共有領域216に完了フラグを格納する。
一方、更新フラグがないと判定した場合(ステップS22:NO)、処理部20は、基本プログラム2bを起動すると判断する。処理部20は、プログラム領域213に保存される基本プログラム2bを選択して起動し(ステップS27)、ブートプログラム2aの処理を終了する。
処理部20は、基本プログラム2bに基づく処理に移行する。処理部20は、基本プログラム2b上で制御プログラム2cを起動し(ステップS28)、制御プログラム2cに基づく処理を開始する。処理部20は、例えば車載ECU3から送信されるCANメッセージ、IPパケット等を中継する中継処理を実行し(ステップS29)、制御プログラム2c及び基本プログラム2bの処理を終了する。
処理部20は、サブプロセスを発生させ、ステップS28以下の処理に並行してステップS30の処理を行う。処理部20は、基本プログラム2b上でダイアグプログラム2dを起動し(ステップS30)、ダイアグプログラム2dに基づく処理を開始する。処理部20は、図3で示した如く、更新の有無に関する情報を監視する処理を実行し(ステップS31)、ダイアグプログラム2d及び基本プログラム2bの処理を終了する。なお、処理部20はさらにサブプロセスを発生させ、ステップS28及びステップS30に並行して、セキュリティプログラム2eを起動させる処理を実行してよい。
本実施形態によれば、複数のプログラムを実行する処理部20により共通してアクセス可能に構成される共有領域216に、更新の有無に関する情報を格納することができる。処理部20は、ブートプログラムの機能により、共有領域216に格納された更新の有無に関する情報を参照し起動すべきプログラムを特定することができるため、自装置の制御プログラム2cの更新を効率的に実施することが可能となる。
今回開示された実施の形態は全ての点で例示であって、制限的なものではない。本発明の範囲は、特許請求の範囲によって示され、特許請求の範囲と均等の意味及び範囲内での全ての変更が含まれる。
C 車両
N 車外ネットワーク
100 外部サーバ(OTAサーバ)
101 記憶部
1 車外通信装置
11 車外通信部
12 入出力I/F
13 アンテナ
2 中継装置(車載装置、ゲートウェイ)
20 処理部
21 記憶部
211 ブートプログラム領域
212 基本プログラム領域
213 プログラム領域
214 データ領域
215 更新処理プログラム領域
216 共有領域
2a ブートプログラム
2b 基本プログラム
2c 制御プログラム
2d ダイアグプログラム
2e セキュリティプログラム
2f NVM管理領域
2g 更新処理プログラム
2A 記録媒体
22 入出力I/F
23 車内通信部
3 車載ECU
30 制御部
31 記憶部
32 車内通信部
4 車内LAN
41 通信線
5 外部認証装置
6 IGスイッチ
7 表示装置(HMI装置)

Claims (6)

  1. 処理部と、前記処理部が実行可能な複数のプログラムが記憶される記憶部とを備える車載装置であって、
    前記複数のプログラムは、
    前記処理部の起動時に実行されるブートプログラムと、
    前記ブートプログラムにより選択的に実行される基本プログラムと、
    前記ブートプログラムにより選択的に実行され、車外のサーバと更新に関する情報の通信を行う更新処理プログラムとを含み、
    前記記憶部は、自装置の制御プログラムの更新の有無に関する情報を保存する共有領域を含み、
    前記共有領域は、前記ブートプログラムを実行することによりアクセスが可能であり、前記基本プログラムに含まれる入出力機能によるアクセスが可能な領域とは異なる領域であり、
    前記処理部は、
    車外のサーバから提供される前記更新の有無に関する情報を取得し、
    取得した前記更新の有無に関する情報を、前記基本プログラムに含まれる入出力機能とは異なる入出力機能により前記共有領域に保存し、
    保存した前記更新の有無に関する情報に基づき、前記ブートプログラムの実行開始後に、前記基本プログラム又は前記更新処理プログラムを実行する
    車載装置。
  2. 前記複数のプログラムは、前記基本プログラム上で実行される前記制御プログラムとダイアグプログラムとを含み、
    前記ダイアグプログラムは、前記基本プログラムに含まれる入出力機能とは異なる入出力機能を含み、
    前記制御プログラムを実行中の処理部は、通信により接続する複数の車載ECUとの中継を制御し、
    前記ダイアグプログラムを実行中の処理部は、前記車外のサーバから提供される前記更新の有無に関する情報を取得し、取得した前記更新の有無に関する情報を前記基本プログラムに含まれる入出力機能とは異なる入出力機能により前記共有領域に保存する
    請求項1に記載の車載装置。
  3. 前記処理部は、前記記憶部における物理記憶位置を示す物理アドレスにより前記共有領域を指定し、指定した前記共有領域に前記更新の有無に関する情報を保存する
    請求項1又は請求項2に記載の車載装置。
  4. 前記共有領域は、前記更新処理プログラムを実行することによりアクセスが可能であり、
    前記更新処理プログラムを実行する処理部は、更新処理が完了された場合に更新処理が完了したことを示す情報を前記共有領域に保存する
    請求項1から請求項3のいずれか1項に車載装置。
  5. 起動時に実行されるブート処理と、
    前記ブート処理により選択的に実行される基本処理と、
    前記ブート処理により選択的に実行され、車外のサーバと更新に関する情報の通信を行う更新処理とを含み、
    自装置の制御プログラムの更新の有無に関する情報を保存する共有領域は、前記ブート処理を実行することによりアクセスが可能であり、前記基本処理に含まれる入出力機能によるアクセスが可能な領域とは異なる領域であり、
    車外のサーバから提供される前記更新の有無に関する情報を取得し、
    取得した前記更新の有無に関する情報を、前記基本処理に含まれる入出力機能とは異なる入出力機能により前記共有領域に保存し、
    保存した前記更新の有無に関する情報に基づき、前記ブート処理の実行開始後に、前記基本処理又は前記更新処理を実行する
    処理をコンピュータに実行させるための情報処理方法。
  6. 起動時に実行されるブートプログラムと、
    前記ブートプログラムにより選択的に実行される基本プログラムと、
    前記ブートプログラムにより選択的に実行され、車外のサーバと更新に関する情報の通信を行う更新処理プログラムとを含み、
    自装置の制御プログラムの更新の有無に関する情報を保存する共有領域は、前記ブートプログラムを実行することによりアクセスが可能であり、前記基本プログラムに含まれる入出力機能によるアクセスが可能な領域とは異なる領域であり、
    車外のサーバから提供される前記更新の有無に関する情報を取得し、
    取得した前記更新の有無に関する情報を、前記基本プログラムに含まれる入出力機能とは異なる入出力機能により前記共有領域に保存し、
    保存した前記更新の有無に関する情報に基づき、前記ブートプログラムの実行開始後に、前記基本プログラム又は前記更新処理プログラムを実行する
    処理をコンピュータに実行させるためのコンピュータプログラム。
JP2020069814A 2020-04-08 2020-04-08 車載装置、情報処理方法及びコンピュータプログラム Active JP7415756B2 (ja)

Priority Applications (4)

Application Number Priority Date Filing Date Title
JP2020069814A JP7415756B2 (ja) 2020-04-08 2020-04-08 車載装置、情報処理方法及びコンピュータプログラム
CN202180023682.6A CN115315686A (zh) 2020-04-08 2021-03-16 车载装置、信息处理方法及计算机程序
PCT/JP2021/010612 WO2021205825A1 (ja) 2020-04-08 2021-03-16 車載装置、情報処理方法及びコンピュータプログラム
US17/995,536 US20230195445A1 (en) 2020-04-08 2021-03-16 On-board device, information processing method, and computer program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2020069814A JP7415756B2 (ja) 2020-04-08 2020-04-08 車載装置、情報処理方法及びコンピュータプログラム

Publications (2)

Publication Number Publication Date
JP2021165999A true JP2021165999A (ja) 2021-10-14
JP7415756B2 JP7415756B2 (ja) 2024-01-17

Family

ID=78022160

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2020069814A Active JP7415756B2 (ja) 2020-04-08 2020-04-08 車載装置、情報処理方法及びコンピュータプログラム

Country Status (4)

Country Link
US (1) US20230195445A1 (ja)
JP (1) JP7415756B2 (ja)
CN (1) CN115315686A (ja)
WO (1) WO2021205825A1 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7392544B2 (ja) * 2020-03-26 2023-12-06 住友電装株式会社 車載ecu、プログラム及び情報処理方法

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011148398A (ja) 2010-01-21 2011-08-04 Denso Corp 車両用プログラム更新システム
JP5867638B2 (ja) 2015-03-13 2016-02-24 日本電気株式会社 情報処理装置、及び、情報処理方法
JP6528700B2 (ja) 2016-02-17 2019-06-12 株式会社デンソー 車載制御装置、及び車載制御装置を含む車載ネットワーク
JP6798413B2 (ja) 2017-05-09 2020-12-09 株式会社オートネットワーク技術研究所 車載中継装置、制御プログラム及びメモリ共有方法

Also Published As

Publication number Publication date
JP7415756B2 (ja) 2024-01-17
CN115315686A (zh) 2022-11-08
WO2021205825A1 (ja) 2021-10-14
US20230195445A1 (en) 2023-06-22

Similar Documents

Publication Publication Date Title
US11507365B2 (en) On-board update device, update processing program, program update method, and on-board update system
US11967188B2 (en) Vehicle mounted update apparatus, update processing program, and program update method
EP3933576A1 (en) Server, managing method, non-transitory storage medium, software updating device, center, and over-the-air master
US11354112B2 (en) On-board update device, update process method, and update process program
JP7192415B2 (ja) プログラム更新システム及び更新処理プログラム
JP7160111B2 (ja) 監視装置、監視プログラム及び監視方法
US10625754B2 (en) Control apparatus, control method, and computer program
WO2019202965A1 (ja) 車載更新装置、車載更新システム、更新処理方法及び更新処理プログラム
US20220206909A1 (en) Substitution apparatus, substitution control program, and substitution method
JP2018181377A (ja) 中継装置、プログラム更新システム、およびプログラム更新方法
US10970063B2 (en) Relay apparatus, transfer method, and computer program
JPWO2018230084A1 (ja) 更新制御装置、制御方法、およびコンピュータプログラム
WO2021205825A1 (ja) 車載装置、情報処理方法及びコンピュータプログラム
US11853742B2 (en) Server, software update system, distribution method, and non-transitory storage medium
JP2019034652A (ja) 制御装置、制御方法、およびコンピュータプログラム
US20230004375A1 (en) Vehicle-mounted update device, program, and program update method
JP2018181376A (ja) 中継装置、プログラム更新システム、およびプログラム更新方法
JP2021166335A (ja) 車載中継装置、情報処理方法及びプログラム
JP2022041194A (ja) 車載機器、情報生成方法、情報生成プログラム、および、車両
CN113631430A (zh) 车载计算机、计算机执行方法及计算机程序
US20230095760A1 (en) On-vehicle relay device, information processing method and program
US20230105426A1 (en) In-vehicle information processing apparatus, information processing method, and client program
US11958423B2 (en) On-board communication device, program, and communication method
JP7211189B2 (ja) 更新処理システム及び更新処理方法
JP2023057798A (ja) 車載装置、プログラム及び、プログラムの更新方法

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20220930

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: 20231205

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20231218

R150 Certificate of patent or registration of utility model

Ref document number: 7415756

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150