JP7035635B2 - 車両制御システム及び車両制御システムにおけるソフトウェアの整合性確認方法 - Google Patents

車両制御システム及び車両制御システムにおけるソフトウェアの整合性確認方法 Download PDF

Info

Publication number
JP7035635B2
JP7035635B2 JP2018040983A JP2018040983A JP7035635B2 JP 7035635 B2 JP7035635 B2 JP 7035635B2 JP 2018040983 A JP2018040983 A JP 2018040983A JP 2018040983 A JP2018040983 A JP 2018040983A JP 7035635 B2 JP7035635 B2 JP 7035635B2
Authority
JP
Japan
Prior art keywords
vehicle
matching information
software
control system
version
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
JP2018040983A
Other languages
English (en)
Other versions
JP2019159401A (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.)
Toyota Motor Corp
Original Assignee
Toyota Motor Corp
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 Toyota Motor Corp filed Critical Toyota Motor Corp
Priority to JP2018040983A priority Critical patent/JP7035635B2/ja
Priority to US16/282,933 priority patent/US10936306B2/en
Priority to CN201910142736.5A priority patent/CN110244959B/zh
Publication of JP2019159401A publication Critical patent/JP2019159401A/ja
Application granted granted Critical
Publication of JP7035635B2 publication Critical patent/JP7035635B2/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/70Software maintenance or management
    • G06F8/71Version control; Configuration management
    • 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
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/65Updates
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/70Software maintenance or management

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Security & Cryptography (AREA)
  • Mechanical Engineering (AREA)
  • Stored Programmes (AREA)

Description

本発明は、複数の車載機のソフトウェアの整合性を確認できる車両制御システム及び当該車両制御システムにおいてソフトウェアの整合性を確認する方法に関する。
近年、自動運転システムが種々開発されている。自動運転システムは、加速、減速、操舵等の車両制御を行う複数の車載機を組み合わせて構成されている。自動運転システムのような複数の車載機により構成されるシステムにおいては、各車載機のソフトウェアのバージョンの組み合わせが、予め動作確認されたソフトウェアのバージョンの組み合わせと整合していない場合、予期しない車両制御が実行される可能性がある。したがって、複数の車載機により構成されるシステムでは、複数の車載機のソフトウェアのバージョンの整合性を確認することが重要となる。
例えば、特許文献1には、複数のECUで構成されるシステムにおいて、ECUのプログラム同士のバージョンの不整合に起因する動作不良の発生を防止するため、プログラムの更新前に、プログラム更新対象のECUのバージョンアッププログラムと他のECUのプログラムとの依存関係情報を参照して、プログラムの更新可否を決定することが記載されている。
特開2009-53920号公報
複数の車載機のソフトウェアのバージョンの整合性を確認する際に、車両が無線通信可能な環境にない場合も想定される。したがって、複数の車載機で構成される車両制御システムにおいて複数の車載機のソフトウェアのバージョンの整合性を確認する処理は、外部サーバ等と通信を行うことなく、車両制御システム内で実行できることが好ましい。
それ故に、本発明は、車両が無線通信可能な環境にない場合でも、車両制御システムを構成する全ての車載機のソフトウェアバージョンの整合性を確認できる車両制御システム及びソフトウェアの整合性確認方法を提供することを目的とする。
本発明は、複数の車載機で構成される車両制御システムに関する。当該車両制御システムは、複数の車載機の各々が、車両制御システムを構成する全ての車載機のソフトウェアのバージョンの許可された組み合わせを含む、整合情報を記憶する整合情報記憶部を備え、複数の車載機のうちのいずれか1つである特定の車載機が、他の車載機のソフトウェアのバージョンと、他の車載機が保持する整合情報とを取得する取得部と、特定の車載機が整合情報記憶部に記憶する整合情報と、他の車載機から取得した整合情報との中から、正当な整合情報を特定する整合情報特定部と、特定の車載機のソフトウェアのバージョンと、他の車載機から取得したソフトウェアのバージョンとを、正当な整合情報と照合することにより、車両制御システムを構成する全ての車載機のソフトウェアのバージョンに整合性があるか否かを判定する判定部とを備える。
この構成によれば、車両制御システムを構成する車載機のそれぞれが保持する整合情報に基づいて、車両外の装置と通信を行うことなく、ソフトウェアのバージョンの整合性を自律的に確認することができる。
また、複数の車載機のそれぞれは、現在のバージョンの整合情報と、旧バージョンの整合情報とを保持し、特定の車載機の取得部は、他の車載機から現在のバージョンの整合情報と旧バージョンの整合情報とを取得し、特定の車載機の整合情報特定部は、特定の車載機が整合情報記憶部に記憶する現在のバージョンの整合情報及び旧バージョンの整合情報と、他の車載機から取得した現在のバージョンの整合情報及び旧バージョンの整合情報とに基づいて、正当な整合情報を特定しても良い。
この構成によれば、各車載機が保持する現在のバージョンの整合テーブル及び旧バージョンの整合テーブルの中から正当な整合テーブルを特定することにより、整合テーブルの更新履歴を加味して、より正当な整合テーブルの特定を精度良く行うことができる。
また、整合情報特定部は、特定の車載機が整合情報記憶部に記憶する整合情報と、他の車載機から取得した整合情報との中から、最新のバージョンであって、かつ、他の整合情報のバージョンと連続したバージョンを有する整合情報を正当な整合情報として特定しても良い。
この構成によれば、各車載機が保持する整合情報の中で最新かつ連続性のあるバージョンの整合情報に基づいて、ソフトウェアのバージョンの組み合わせがより新しいバージョンで整合しているか否かを判定できる。
また、整合情報特定部は、特定の車載機が整合情報記憶部に記憶する整合情報と、他の車載機から取得した整合情報とに含まれる、同一かつ最多数の整合情報を正当な整合情報として特定しても良い。
この構成によれば、正当である蓋然性の高い整合情報を容易に特定することができる。
また、特定の車載機は、判定部によって、車両制御システムを構成する全ての車載機のソフトウェアのバージョンに整合性がないと判定された場合に、正当な整合情報と整合していないバージョンのソフトウェアを有する車載機に対して、ソフトウェアを更新するよう指示する更新指示部を更に備えても良い。
この構成によれば、車両制御システムを構成する全ての車載機のソフトウェアのバージョンに整合性がないと判定された場合に、不整合なバージョンのソフトウェアの更新を促進することにより、車載機A~Dのソフトウェアのバージョンの整合性が取れた状態に早期に復帰させることができる。
また、判定部は、車両の電源がオンされるたびに判定処理を実行することが好ましい。
この構成によれば、車両の電源がオンされるたびに、車両制御システムを構成する全ての車載機のソフトウェアのバージョンの整合性が取れていることが確認されるため、車載機のソフトウェアのバージョンに不整合があることに起因して予期しない車両制御が実行される可能性をより低減することができる。
また、本発明は、複数の車載機で構成される車両制御システムにおけるソフトウェアの整合性確認方法に関する。当該整合性確認方法は、複数の車載機の各々が有するコンピュータが、車両制御システムを構成する全ての車載機のソフトウェアのバージョンの許可された組み合わせを含む、整合情報を記憶ステップと、複数の車載機のうちのいずれか1つである特定の車載機が、他の車載機のソフトウェアのバージョンと、他の車載機が保持する整合情報とを取得するステップと、特定の車載機が記憶する整合情報と、他の車載機から取得した整合情報との中から、正当な整合情報を特定するステップと、特定の車載機のソフトウェアのバージョンと、他の車載機から取得したソフトウェアのバージョンとを、正当な整合情報と照合することにより、車両制御システムを構成する全ての車載機のソフトウェアのバージョンに整合性があるか否かを判定するステップとを備える。
この構成によれば、車両制御システムを構成する車載機のそれぞれが保持する整合情報に基づいて、車両外の装置と通信を行うことなく、ソフトウェアのバージョンの整合性を自律的に確認することができる。
本発明によれば、車両が無線通信可能な環境にない場合でも、車両制御システムを構成する全ての車載機のソフトウェアバージョンの整合性を確認できる車両制御システム及びソフトウェアの整合性確認方法を提供できる。
実施形態に係る車両制御システムの概略構成を示すブロック図 図1に示した車両制御システムの機能ブロック図 実施形態におけるソフトウェアのバージョンの整合性判定方法を説明するための図 実施形態におけるソフトウェアのバージョンの整合性判定方法を説明するための図 実施形態におけるソフトウェアのバージョンの整合性判定方法を説明するための図 図1に示した代表車載機が実行する制御処理の一例を示すフローチャート
(概要)
本発明に係る車両制御システムでは、車両制御システムを構成する車載機が保持する整合情報に基づいて、全ての車載機のソフトウェアのバージョンに整合性があるか否かを確認する。全ての車載機が整合性確認に用いる整合情報を保持しており、全ての整合情報の中から特定した正当な整合情報を用いて整合性確認を行う。したがって、本発明に係る車両制御システムは、車両外の装置と通信を行うことなく、ソフトウェアのバージョンの整合性を自律的に確認することができる。
(実施形態)
<構成>
図1は、実施形態に係る車両制御システムの概略構成を示すブロック図である。
車両制御システム100は、相互に通信可能な車載機A~Dから構成され、車載機A~Dのそれぞれの機能を組み合わせることにより、所定の車両制御を実現するシステムである。図1の例では、車両制御システム100が4つの車載機A~Dで構成されているが、車両制御システム100を構成する車載機の数は4つに限定されない。車両制御システム100が実現する所定の車両制御としては、例えば自動運転を挙げることができる。車載機A~Dは、加速、減速、操舵など車両走行を制御するECUや、これらの車両走行を制御するECUを組み合わせて走行支援を行うECUに相当する。また、車載機A~Dは、無線通信機1を介して外部サーバ2と通信可能である。尚、以下の説明においては、車両制御システムを構成する複数の車載機A~Dのうちの1つである特定の車載機Aを「代表車載機A」という。
図2は、図1に示した車両制御システムの機能ブロック図であり、図3~図5は、実施形態におけるソフトウェアのバージョンの整合性判定方法を説明するための図である。
[代表車載機A]
代表車載機Aは、車両制御システム100の制御機能を提供する車載機の1つであるが、車載機A~Dのソフトウェアのバージョンの整合性確認処理においては、マスターデバイスとして機能する。代表車載機Aは、車両の電源がオンされたことを契機として、車両制御システム100を構成する全ての車載機A~Dのソフトウェアのバージョンの整合性を確認する。代表車載機Aは、ソフトウェア記憶部10と、整合情報記憶部11と、取得部12と、整合情報特定部13と、判定部14と、更新指示部15と、送受信部16とを備える。
ソフトウェア記憶部10は、代表車載機Aを動作させるためのソフトウェアを記憶する。代表車載機Aは、ソフトウェア記憶部10に記憶されたソフトウェアを実行することにより、車両の動作を制御するための所定の機能を実現する。
整合情報記憶部11は、車両制御システム100を構成する全ての車載機A~Dのソフトウェアのバージョンに整合性があるか否かを判定するために用いる整合情報として、現在のバージョンの整合テーブルTa_curと、旧バージョンの整合テーブルTa_oldとを予め記憶する。整合テーブルには、車両制御システム100を構成する全ての車載機A~Dのソフトウェアのバージョンの組み合わせが定義されている。車載機A~Dのソフトウェアのバージョンの組み合わせは、車両制御システム100が正常に動作することが確認されており、同時に実行することが許可されたバージョンの組み合わせである。例えば、整合テーブルTa_cur及びTa_oldは、図3に示すように、車両制御システム100のバージョンを特定するシステム番号と、車載機A~Dのそれぞれのソフトウェアのバージョンとを含むことができる。図3の整合テーブルの例では、各車載機のバージョンとして単一のバージョンが定義されているが、組み合わせ可能な各車載機のバージョンの範囲を定義しても良い。また、整合テーブルには、同時に実行することが許可されるバージョン(またはバージョンの範囲)の組み合わせを複数セット定義しても良い。1つの車載機が複数のソフトウェアを保持している場合、整合テーブルには、複数のソフトウェアのそれぞれの許可されたバージョンが定義される。
整合テーブルTa_curは、ソフトウェア記憶部10に記憶されるソフトウェアの更新に伴って更新される。更新時には、旧バージョンの整合テーブルTa_oldが削除され、現在バージョンの整合テーブルTa_curが旧バージョンの整合テーブルTa_oldとして保持され、更新された整合テーブルが現在のバージョンの整合テーブルTa_curとして新たに記憶される。整合テーブルTa_curをソフトウェアの更新に合わせて更新するため、整合テーブルTa_curに定義された車載機Aのバージョンは、ソフトウェア記憶部10に記憶されているソフトウェアのバージョンと一致している。
尚、詳細は後述するが、他の車載機B~Dも代表車載機Aと同様に、現在のバージョンの整合テーブル(図3のTb_cur、Tc_cur及びTd_cur)と、旧バージョンの整合テーブル(図3のTb_old、Tc_old及びTd_old)とを予め記憶している。
取得部12は、他の車載機B~Dのそれぞれのソフトウェアのバージョンと、他の車載機B~Dが保持する整合テーブルTb_cur、Tc_cur、Td_cur、Tb_old、Tc_old及びTd_oldとを取得する。車載機B~Dの中に複数のソフトウェアを保持している車載機がある場合、取得部12は、車載機が保持する全てのソフトウェアのバージョンを取得する。
整合情報特定部13は、特定の車載機Aが整合情報記憶部11に記憶する整合テーブルTa_cur及びTa_oldと、取得部12が他の車載機B~Dから取得した整合テーブルTb_cur、Tc_cur、Td_cur、Tb_old、Tc_old及びTd_oldの中から、正当な1種類の整合情報を特定する。尚、正当な整合情報の特定方法については後述する。
判定部14は、車両制御システム100を構成する全ての車載機A~Dのソフトウェアのバージョンに整合性があるか否かを判定する。この判定は、判定部14が、代表車載機Aのソフトウェア記憶部10に記憶されるソフトウェアのバージョンと、取得部12が他の車載機B~Dから取得したソフトウェアのバージョンとを、整合情報特定部13によって特定された正当な整合テーブルと照合することにより行う。判定部14は、特定された正当な整合テーブルに基づいて、車両制御システム100を構成する全ての車載機A~Dのソフトウェアのバージョンに整合性があると判定した場合は、車載機A~Dの機能を組み合わせにより実現される所定の車両制御の実行を許可する。
更新指示部15は、車両制御システム100を構成する全ての車載機A~Dのソフトウェアのバージョンに整合性がないと判定部14により判定された場合、正当な整合テーブルに定義されたバージョンに整合していないバージョンのソフトウェアを保持する車載機に対して、ソフトウェアの更新を指示する。
送受信部16は、他の車載機B~Dと通信を行い、各種情報の送受信を行う。また、送受信部16は、図1に示した無線通信機1を介して外部サーバ2との通信を行い、各種情報の送受信を行うことができる。送受信部16は、更新指示部15によって代表車載機Aのソフトウェアを更新する必要があると判定された場合、外部サーバ2に対してソフトウェアの更新要求を送信し、外部サーバ2から送信された更新されたソフトウェア及び更新された整合テーブルを受信する。
[車載機B~D]
車載機B~Dは、ソフトウェア記憶部20と、整合情報記憶部21と、送受信部22とを備える。
ソフトウェア記憶部20は、車載機B~Dのそれぞれを動作させるためのソフトウェアを予め記憶する。車載機B~Dは、ソフトウェア記憶部20に記憶されたソフトウェアを実行することにより、それぞれ、車両の動作を制御するための所定の機能を実現する。
整合情報記憶部21は、車両制御システム100を構成する全ての車載機A~Dのソフトウェアのバージョンに整合性があるか否かを判定するために用いる整合情報として、現在のバージョンの整合テーブルと、旧バージョンの整合テーブルとを予め記憶する。図3に示すように、車載機B、C及びDの整合情報記憶部21は、現在のバージョンの整合テーブルTb_cur、Tc_cur及びTd_curと、旧バージョンの整合テーブルTb_old、Tc_old及びTd_oldとをそれぞれ記憶する。図3に示すように、各整合テーブルには、代表車載機Aの整合テーブルと同様に、車両制御システム100のバージョンを特定するシステム番号と、車両制御システム100を構成する全ての車載機A~Dのソフトウェアのバージョンの組み合わせとが定義されている。また、代表車載機Aの整合テーブルと同様に、ソフトウェア記憶部20に記憶されるソフトウェアの更新に伴って、旧バージョンの整合テーブルが削除され、現在バージョンの整合テーブルが旧バージョンの整合テーブルとして保持され、更新された整合テーブルが現在のバージョンの整合テーブルとして新たに記憶される。ソフトウェアの更新に合わせて整合テーブルを更新することにより、車載機B、C及びDが保持する整合テーブルTb_cur、Tc_cur及びTd_curに定義された車載機B、C及びDのバージョンは、車載機B、C及びDのソフトウェア記憶部20に記憶されているソフトウェアのバージョンとそれぞれ一致している。
送受信部22は、他の車載機と通信を行い、各種情報の送受信を行う。送受信部22は、ソフトウェア記憶部20に記憶されているソフトウェアのバージョンと、整合情報記憶部21に記憶されている現在のバージョンの整合テーブルと、旧バージョンの整合テーブルとを所定のタイミングで代表車載機Aに送信する。送受信部22は、車両の電源がオンされたことを契機としてソフトウェアのバージョン及び整合テーブルを代表車載機Aに送信しても良いし、車両の電源がオンされたことを契機として送信された代表車載機Aからの要求に応答して、ソフトウェアのバージョンと整合テーブルとを代表車載機Aに送信しても良い。
[外部サーバ2]
外部サーバ2は、受信部30及び送信部31を備える。受信部30は、車載機A~Dから更新ソフトウェアの送信要求を受信する。送信部31は、受信部30が更新ソフトウェアの送信要求を受信すると、対象の車載機に対して更新ソフトウェアを送信する。
以下、図2~図5を参照しながら、正当な整合テーブルの特定方法と、ソフトウェアのバージョンの整合性判定方法とを説明する。
(1)整合性があるケース
図3は、8つの整合テーブルTa_cur~Td_cur及びTa_old~Td_oldの中から特定される最新の整合テーブルが正当なものであり、かつ、車載機A~Dのソフトウェアのバージョンが特定された正当な整合テーブルと整合している例を示す。
まず、代表車載機Aの整合情報特定部13は、取得部12が取得した整合テーブルTa_cur~Td_curのシステム番号(システムバージョン)を参照し、最新のシステム番号「004」を有する整合テーブルTc_curを正当な整合テーブルとして特定する。
次に、代表車載機Aの判定部14は、代表車載機Aのソフトウェアのバージョンと、取得部12が取得した他の車載機B~Dのソフトウェアのバージョンとを、正当なテーブルであると特定した整合テーブルTc_curと照合し、車載機A~Dのソフトウェアのバージョンに整合性があるか否かを判定する。図3の例では、車載機Aのソフトウェアのバージョン「123」、車載機Bのソフトウェアのバージョン「235」、車載機Cのソフトウェアのバージョン「346」、車載機Dのソフトウェアのバージョン「457」はいずれも整合テーブルTc_curに定義されたバージョンと一致する。したがって、判定部14は、車両制御システム100を構成する全ての車載機A~Dのソフトウェアのバージョンに整合性があると判定する。
図3に示したケースでは、車両制御システム100を構成する全ての車載機A~Dのソフトウェアのバージョンに整合性があるため、車載機A~Dの全ての制御機能を用いた車両制御の実行が可能となる。
尚、正当な整合テーブルを特定する際には、整合情報特定部13が旧バージョンの整合テーブルTa_old~Td_oldも参照することが好ましい。例えば、車載機のソフトウェアのバージョンアップに伴って整合テーブルのシステム番号が順次更新される構成では、各車載機の整合テーブルの組において、現在のバージョンの整合テーブルのシステム番号が、旧バージョンの整合テーブルのシステム番号よりも小さい(つまり、システム番号が古い)場合には、整合情報特定部は、現在のバージョンの整合テーブルが正当なものでないと判定することができる。
(2)整合性がないケース
図4は、8つの整合テーブルTa_cur~Td_cur及びTa_old~Td_oldの中から特定される最新の整合テーブルが正当なものであるが、車載機A~Dのソフトウェアのバージョンが特定された正当な整合テーブルと整合していない例を示す。
まず、代表車載機Aの整合情報特定部13は、取得部12が取得した整合テーブルTa_cur~Td_curのシステム番号(システムバージョン)を参照し、最新のシステム番号「004」を有する整合テーブルTc_curを正当な整合テーブルとして特定する。
次に、代表車載機Aの判定部14は、代表車載機Aのソフトウェアのバージョンと、取得部12が取得した他の車載機B~Dのソフトウェアのバージョンとを、正当なテーブルであると特定した整合テーブルTc_curと照合し、車載機A~Dのソフトウェアのバージョンに整合性があるか否かを判定する。図4の例では、車載機Aのソフトウェアのバージョン「123」、車載機Cのソフトウェアのバージョン「346」、車載機Dのソフトウェアのバージョン「457」はいずれも整合テーブルTc_curに定義されたバージョンと一致するが、車載機Bのソフトウェアのバージョン「234」が整合テーブルTc_curに定義されたバージョンと整合していない。したがって、判定部14は、車両制御システム100を構成する全ての車載機A~Dのソフトウェアのバージョンに整合性がないと判定する。
図4に示したケースでは、車両制御システム100を構成する全ての車載機A~Dのソフトウェアのバージョンに整合性がないため、車載機A~Dの全ての制御機能を用いた車両制御の実行が禁止され、更新指示部15から車載機Bへとソフトウェアの更新が指示される。車載機Bのソフトウェアの更新後に実行させる整合性確認処理において、車両制御システム100を構成する全ての車載機A~Dのソフトウェアのバージョンに整合性があると判定されると、車載機A~Dの全ての制御機能を用いた車両制御の実行が可能となる。
(3)正当ではない整合テーブルが含まれているケース
図5は、8つの整合テーブルTa_cur~Td_cur及びTa_old~Td_oldの中に正当ではない整合テーブルが含まれているが、他の整合テーブルから特定された整合テーブルに基づき、車載機A~Dのソフトウェアのバージョンに整合性があると判定できる例を示す。正当な整合テーブルの特定の精度を向上させるため、以下に示す特定方法を採用することがより好ましい。
まず、代表車載機Aの整合情報特定部13は、取得部12が取得した整合テーブルTa_cur~Td_curのシステム番号(システムバージョン)を参照する。整合テーブルTa_cur~Td_curの中で、最新のシステム番号は整合テーブルTb_curの「007」である。整合情報特定部13は、最新のシステム番号「007」が、他の整合テーブルのシステム番号「002」、「003」及び「004」のいずれとも一致していない場合、他の整合テーブルのシステム番号「002」、「003」及び「004」のいずれかと連続した番号であるか否かを判定する。車両制御システム100の更新に伴って、各車載機のソフトウェアのバージョンが更新されると、最新の整合テーブルは他のいずれかの整合テーブルとバージョンが連続している可能性が高い。整合情報特定部13は、システム番号「007」を有する整合テーブルTb_curを正当な整合テーブルではないと判定し、残りの整合テーブルTa_cur、Tc_cur及びTd_curの中で最新のシステム番号を有する整合テーブルTc_curを、正当な整合テーブルであると特定する。
次に、代表車載機Aの判定部14は、代表車載機Aのソフトウェアのバージョンと、取得部12が取得した他の車載機B~Dのソフトウェアのバージョンとを、正当なテーブルであると特定した整合テーブルTc_curと照合し、車載機A~Dのソフトウェアのバージョンに整合性があるか否かを判定する。図4の例では、車載機Aのソフトウェアのバージョン「123」、車載機Bのソフトウェアのバージョン「235」、車載機Cのソフトウェアのバージョン「346」、車載機Dのソフトウェアのバージョン「457」はいずれも整合テーブルTc_curに定義されたバージョンと一致する。したがって、判定部14は、車両制御システム100を構成する全ての車載機A~Dのソフトウェアのバージョンに整合性があると判定する。
図5に示したケースでは、車両制御システム100を構成する全ての車載機A~Dのソフトウェアのバージョンに整合性があるため、車載機A~Dの全ての制御機能を用いた車両制御の実行が可能となる。
<制御処理>
以下、図2及び図6を併せて参照しながら、代表車載機Aが実行する制御処理を説明する。
図6は、図1に示した代表車載機が実行する制御処理の一例を示すフローチャートである。
ステップS1:取得部12は、他の車載機B~Dのソフトウェアのバージョンを取得する。その後、処理はステップS2に移る。
ステップS2:取得部12は、他の車載機B~Dの整合テーブルを取得する。その後、処理はステップS3に移る。
ステップS3:整合情報特定部13は、取得部12が取得した複数の整合テーブルの中から正当な整合テーブルを特定する。その後、処理はステップS4に移る。
ステップS4:整合情報特定部13は、取得部12が取得した複数の整合テーブルの中から正当な整合テーブルを特定することができたか否かを判定する。ステップS4の判定がYESの場合、処理はステップS6に移り、それ以外の場合、処理はステップS5に移る。
ステップS5:ステップS4において正当な整合テーブルを特定できなかった場合、車載機A~Dのソフトウェアのバージョンの整合性確認処理を実行できない。したがって、判定部14は、車載機A~Dを組み合わせて用いた車両制御の実行を禁止し、処理を終了する。
ステップS6:判定部14は、代表車載機Aのソフトウェアのバージョンと、他の車載機B~Dから取得したソフトウェアのバージョンとを、ステップS3で特定された正当な整合テーブルと照合し、車載機A~Dのソフトウェアのバージョンに整合性があるか否かを判定する。また、判定部14は、車載機A~Dのソフトウェアのバージョンに整合性がないと判定した場合は、正当な整合テーブルに定義されたバージョンと整合していないバージョンのソフトウェアを保持する車載機を特定する。ステップS6の判定がYESの場合、処理はステップS7に移り、それ以外の場合、処理はステップS8に移る。
ステップS7:判定部14は、車載機A~Dを組み合わせて用いた車両制御の実行を許可し、処理を終了する。
ステップS8:判定部14は、車載機A~Dを組み合わせて用いた車両制御の実行を禁止する。その後、処理はステップS9に移る。
ステップS9:更新指示部15は、ステップS6において特定された、正当な整合テーブルに定義されたバージョンと整合していないバージョンのソフトウェアを保持する車載機に対して、外部サーバ2との通信によりソフトウェアを更新するよう指示する。その後、処理を終了する。
尚、更新指示部15によってソフトウェアの更新を指示された車載機は、外部サーバ2との通信が可能な状態にあるときに、外部サーバ2と通信を行ってソフトウェア及び整合テーブルの更新を行う。更新指示部15によってソフトウェアの更新を指示された車載機が直接外部サーバ2と通信を行う代わりに、代表車載機Aが外部サーバ2と通信を行って更新ソフトウェアを取得し、更新指示部15が、整合していないバージョンのソフトウェアを保持する車載機に対して、代表車載機Aが取得した更新ソフトウェアでソフトウェアを更新するよう指示する構成を採用しても良い。
上述した図6の制御処理は、専用の回路によって実現しても良いし、例えば、プロセッサ、ROM、RAM、ハードディスク等を有するECU等のコンピュータに、各ステップの処理を実行させることにより実現しても良い。図6の制御処理をECU等のコンピュータに実行させる場合、これらの制御処理を実行可能に記述したプログラムを予めROMやハーディスク等の記憶装置に格納しておき、コンピュータが備えるプロセッサに記憶装置からプログラムを読み出させて実行させれば良い。
<効果等>
車載機A~Dのいずれかが交換または修理されたり、車載機A~Dのいずれかのソフトウェアが更新されたりすると、ソフトウェアのバージョンが変化する。しかしながら、本実施形態に係る車両制御システム100では、車載機A~Dのそれぞれが、ソフトウェアのバージョンの整合性を確認するために用いる整合テーブルを保持しており、代表車載機Aが、車載機A~Dが保持する整合テーブルの中から特定した正当な整合テーブルに基づいて、車載機A~Dのソフトウェアのバージョンの整合性を自律的に確認することができる。したがって、本実施形態によれば、車両が無線通信可能な環境にない場合でも、ソフトウェアのバージョンの整合性を確認することができる車両制御システム100を実現できる。
また、本実施形態に係る車両制御システム100では、車載機A~Dのそれぞれが、現在のバージョンの整合テーブルと、旧バージョンの整合テーブルとを保持しており、代表車載機Aの整合情報特定部13は、車載機A~Dのそれぞれの新旧2つのバージョンの整合テーブルの中から、正当な整合テーブルを特定する。正当な整合テーブルの特定に、新旧2つのバージョンの整合テーブルを用いると、現在のバージョンの整合テーブルが旧バージョンの整合テーブルより古くなっているようなケースを判定できる。したがって、各車載機の整合テーブルの更新履歴を加味して、正当な整合テーブルの特定を精度良く行うことが可能となる。
また、本実施形態に係る車両制御システム100は、判定部14によって車載機A~Dのソフトウェアのバージョンに整合性がないと判定された場合に、正当な整合情報と整合していないバージョンのソフトウェアを有する車載機に対して、ソフトウェアを更新するよう指示する更新指示部15を備えている。この構成によれば、車両制御システム100を構成する全ての車載機A~Dのソフトウェアのバージョンに整合性がないと判定された場合に、不整合なバージョンのソフトウェアの更新により、車載機A~Dのソフトウェアのバージョンの整合性が取れた状態に早期に復帰させることができる。
また、本実施形態に係る車両制御システム100では、整合情報特定部13が複数の整合テーブルの中から正当な整合テーブルを特定できない場合には、車載機A~Dの全ての機能により実現される車両制御の実行が禁止される。したがって、車載機A~Dのソフトウェアのバージョンの整合性を確認できない場合に、車載機A~Dのソフトウェアのバージョンに不整合があることに起因して予期しない車両制御が実行される可能性をより低減することができる。
(その他の変形例等)
尚、上記の実施形態では、他の整合テーブルと連続性がある最新の整合テーブルを正当な整合テーブルとして特定する例を説明したが、正当な整合テーブルは、多数決により決定しても良い。多数決により正当な整合テーブルを決定する場合、整合情報特定部13が車載機A~Dの現在のバージョンの整合テーブルの中から、同一の整合テーブルの数を集計し、最も数が多い整合テーブルを、正当な整合テーブルとして特定することができる。この整合テーブルの特定方法によれば、正当である蓋然性の高い整合情報を容易に特定することができる。判定部14は、整合情報特定部13によって正当なテーブルであると特定された整合テーブルに基づいて、車両制御システム100を構成する全ての車載機A~Dのソフトウェアのバージョンに整合性があるか否かを判定し、整合性がないと判定された場合には、更新指示部15が対象の車載機に対してソフトウェア更新を指示する。この構成によれば、多数決によって選択した整合テーブルに基づいて、車両制御システム100を構成する全ての車載機A~Dのソフトウェアのバージョンに整合性を取ることができる。
また、上記の実施形態において、取得部12、整合情報特定部13及び判定部14が、上述した処理を車両の電源がオンされるたびに実行することが好ましい。車両の電源がオンされるたびに車載機A~Dのソフトウェアのバージョンの整合性が取れていることを確認することにより、車載機A~Dのソフトウェアのバージョンに不整合があることに起因して予期しない車両制御が実行される可能性をより低減することができる。
また、上記の実施形態では、整合情報特定部13が、車載機A~Dの現在のバージョンの整合テーブル及び旧バージョンの整合テーブルの中から1種類の正当な整合テーブルを特定しているが、旧バージョンの整合テーブルを参照せず、車載機A~Dの現在のバージョンの整合テーブルの中から1種類の正当な整合テーブルを特定しても良い。
本発明は、複数の車載機の組み合わせにより所定の車両制御機能を実現する車両制御システムに利用できる。
10 ソフトウェア記憶部
11 整合情報記憶部
12 取得部
13 整合情報特定部
14 判定部
15 更新指示部
16 送受信部
100 車両制御システム
A 代表車載機
B~D 車載機

Claims (7)

  1. 複数の車載機で構成される車両制御システムであって、
    前記複数の車載機の各々が、前記車両制御システムを構成する全ての車載機のソフトウェアのバージョンの許可された組み合わせを含む、整合情報を記憶する整合情報記憶部を備え、
    前記複数の車載機のうちのいずれか1つである特定の車載機が、
    他の車載機のソフトウェアのバージョンと、他の車載機が保持する整合情報とを取得する取得部と、
    前記特定の車載機が前記整合情報記憶部に記憶する整合情報と、前記他の車載機から取得した整合情報との中から、正当な整合情報を特定する整合情報特定部と、
    前記特定の車載機のソフトウェアのバージョンと、前記他の車載機から取得したソフトウェアのバージョンとを、前記正当な整合情報と照合することにより、前記車両制御システムを構成する全ての車載機のソフトウェアのバージョンに整合性があるか否かを判定する判定部とを備える、車両制御システム。
  2. 前記複数の車載機のそれぞれは、現在のバージョンの整合情報と、旧バージョンの整合情報とを保持し、
    前記特定の車載機の前記取得部は、他の車載機から前記現在のバージョンの整合情報と前記旧バージョンの整合情報とを取得し、
    前記特定の車載機の前記整合情報特定部は、前記特定の車載機が前記整合情報記憶部に記憶する前記現在のバージョンの整合情報及び前記旧バージョンの整合情報と、前記他の車載機から取得した前記現在のバージョンの整合情報及び前記旧バージョンの整合情報とに基づいて、前記正当な整合情報を特定する、請求項1に記載の車両制御システム。
  3. 前記整合情報特定部は、前記特定の車載機が前記整合情報記憶部に記憶する整合情報と、前記他の車載機から取得した整合情報とに含まれる、最新の整合情報を前記正当な整合情報として特定する、請求項1に記載の車両制御システム。
  4. 前記整合情報特定部は、前記特定の車載機が前記整合情報記憶部に記憶する整合情報と、前記他の車載機から取得した整合情報とに含まれる、同一かつ最多数の整合情報を前記正当な整合情報として特定する、請求項1に記載の車両制御システム。
  5. 前記特定の車載機は、前記判定部によって、前記車両制御システムを構成する全ての車載機のソフトウェアのバージョンに整合性がないと判定された場合に、前記正当な整合情報と整合していないバージョンのソフトウェアを有する車載機に対して、ソフトウェアを更新するよう指示する更新指示部を更に備える、請求項1に記載の車両制御システム。
  6. 前記判定部は、車両の電源がオンされるたびに判定処理を実行する、請求項1に記載の車両制御システム。
  7. 複数の車載機で構成される車両制御システムにおけるソフトウェアの整合性確認方法であって、
    前記複数の車載機の各々が有するコンピュータが、前記車両制御システムを構成する全ての車載機のソフトウェアのバージョンの許可された組み合わせを含む、整合情報を予め記憶するステップと、
    前記複数の車載機のうちのいずれか1つである特定の車載機が有するコンピュータが、
    他の車載機のソフトウェアのバージョンと、他の車載機が保持する整合情報とを取得するステップと、
    前記特定の車載機が記憶する整合情報と、前記他の車載機から取得した整合情報との中から、正当な整合情報を特定するステップと、
    前記特定の車載機のソフトウェアのバージョンと、前記他の車載機から取得したソフトウェアのバージョンとを、前記正当な整合情報と照合することにより、前記車両制御システムを構成する全ての車載機のソフトウェアのバージョンに整合性があるか否かを判定するステップとを備える、ソフトウェアの整合性確認方法。
JP2018040983A 2018-03-07 2018-03-07 車両制御システム及び車両制御システムにおけるソフトウェアの整合性確認方法 Active JP7035635B2 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP2018040983A JP7035635B2 (ja) 2018-03-07 2018-03-07 車両制御システム及び車両制御システムにおけるソフトウェアの整合性確認方法
US16/282,933 US10936306B2 (en) 2018-03-07 2019-02-22 Vehicle control system and software compatibility checking method
CN201910142736.5A CN110244959B (zh) 2018-03-07 2019-02-26 车辆控制系统及软件兼容性检查方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2018040983A JP7035635B2 (ja) 2018-03-07 2018-03-07 車両制御システム及び車両制御システムにおけるソフトウェアの整合性確認方法

Publications (2)

Publication Number Publication Date
JP2019159401A JP2019159401A (ja) 2019-09-19
JP7035635B2 true JP7035635B2 (ja) 2022-03-15

Family

ID=67843867

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2018040983A Active JP7035635B2 (ja) 2018-03-07 2018-03-07 車両制御システム及び車両制御システムにおけるソフトウェアの整合性確認方法

Country Status (3)

Country Link
US (1) US10936306B2 (ja)
JP (1) JP7035635B2 (ja)
CN (1) CN110244959B (ja)

Families Citing this family (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10996938B2 (en) * 2019-07-15 2021-05-04 Juniper Networks, Inc. Automated selection of software images for network devices
DE102019119354A1 (de) * 2019-07-17 2021-01-21 WAGO Verwaltungsgesellschaft mit beschränkter Haftung Firmware-aktualisierung von komponenten eines modularen knotens
US20210105321A1 (en) * 2019-10-08 2021-04-08 Ford Global Technologies, Llc Vehicle software check
JP7547713B2 (ja) * 2020-02-14 2024-09-10 住友重機械工業株式会社 射出成形機システム、射出成形機
US11709670B2 (en) * 2020-04-14 2023-07-25 Advanced Micro Devices, Inc. Identifying and configuring compatible versions of runtime components by shared libraries
JP7532874B2 (ja) 2020-04-30 2024-08-14 株式会社アドヴィックス 車両の制御システム
CN112015489A (zh) * 2020-09-18 2020-12-01 华人运通(江苏)技术有限公司 一种车载软件的管理方法、装置、存储介质及系统
JP7257428B2 (ja) * 2021-01-14 2023-04-13 本田技研工業株式会社 情報処理装置、制御システム、システム、情報処理方法、制御方法、及びプログラム
EP4307734A4 (en) * 2021-03-15 2024-04-10 Huawei Technologies Co., Ltd. COMMUNICATION METHOD AND DEVICE BASED ON OTA (OVER-THE-AIR) TECHNOLOGY
CN113415313B (zh) * 2021-07-06 2023-04-21 北京全路通信信号研究设计院集团有限公司 一种特殊车载设备控车权切换方法及系统
US11886860B2 (en) * 2021-09-27 2024-01-30 Red Hat, Inc. Distribution of digital content to vehicles

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006011647A (ja) 2004-06-23 2006-01-12 Fujitsu Ten Ltd ソフトウェア管理装置
JP2009053920A (ja) 2007-08-27 2009-03-12 Auto Network Gijutsu Kenkyusho:Kk 車載用電子制御ユニットのプログラム管理システム
JP2010009193A (ja) 2008-06-25 2010-01-14 Fuji Xerox Co Ltd 電子装置
JP2013250923A (ja) 2012-06-04 2013-12-12 Canon Inc ファームウェア更新システム
US20160170775A1 (en) 2014-12-11 2016-06-16 Ford Global Technologies, Llc Telematics update software compatibility

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060259207A1 (en) * 2005-04-20 2006-11-16 Denso Corporation Electronic control system for automobile
US8694982B2 (en) * 2006-10-30 2014-04-08 Bosch Automotive Service Solutions Llc Dynamic software configuration
KR20110092007A (ko) * 2010-02-08 2011-08-17 주식회사 만도 차량의 소프트웨어 다운로드 시스템 및 방법
EP2503459B1 (en) * 2011-03-23 2021-01-20 Volvo Car Corporation Complete and compatible function
US8978160B2 (en) * 2012-09-12 2015-03-10 GM Global Technology Operations LLC Method for selective software rollback
US20140282470A1 (en) * 2013-03-13 2014-09-18 Arynga Inc. Remote transfer of electronic images to a vehicle
US10216514B2 (en) * 2014-09-25 2019-02-26 Hewlett Packard Enterprise Development Lp Identification of a component for upgrade
US9916151B2 (en) * 2015-08-25 2018-03-13 Ford Global Technologies, Llc Multiple-stage secure vehicle software updating
CN107291457B (zh) * 2017-06-08 2020-07-03 重庆长安新能源汽车科技有限公司 整车控制器软件的远程更新计算系统及方法

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006011647A (ja) 2004-06-23 2006-01-12 Fujitsu Ten Ltd ソフトウェア管理装置
JP2009053920A (ja) 2007-08-27 2009-03-12 Auto Network Gijutsu Kenkyusho:Kk 車載用電子制御ユニットのプログラム管理システム
JP2010009193A (ja) 2008-06-25 2010-01-14 Fuji Xerox Co Ltd 電子装置
JP2013250923A (ja) 2012-06-04 2013-12-12 Canon Inc ファームウェア更新システム
US20160170775A1 (en) 2014-12-11 2016-06-16 Ford Global Technologies, Llc Telematics update software compatibility

Also Published As

Publication number Publication date
US10936306B2 (en) 2021-03-02
JP2019159401A (ja) 2019-09-19
US20190278588A1 (en) 2019-09-12
CN110244959B (zh) 2023-10-31
CN110244959A (zh) 2019-09-17

Similar Documents

Publication Publication Date Title
JP7035635B2 (ja) 車両制御システム及び車両制御システムにおけるソフトウェアの整合性確認方法
JP7388301B2 (ja) サーバ、管理方法、管理プログラム及びソフトウェア更新装置
WO2016158547A1 (ja) プログラム書換装置及びプログラム書換方法
JP7081223B2 (ja) マスタ装置、マスタ、ソフトウェアの整合性を確認するための方法及びプログラム、車両
JP7311245B2 (ja) マスタ装置、マスタ、制御方法、プログラム及び車両
JP6147792B2 (ja) プログラム書換装置及びプログラム書換方法
JP2019159399A5 (ja)
EP3937008B1 (en) Software update apparatus, software update method, non-transitory storage medium storing program, vehicle, and ota master
JP6147791B2 (ja) プログラム書換装置及びプログラム書換方法
JP6060782B2 (ja) 中継装置
US20240069906A1 (en) Server, software update system, distribution method, and non-transitory storage medium
US20240086177A1 (en) Server, update managing method, non-transitory storage medium, software updating device, center, and ota master
US11960876B2 (en) Center, update management method, and non-transitory storage medium
US11861354B2 (en) Update control system, update control method, non-transitory storage medium, and in-vehicle control device
JP6147790B2 (ja) プログラム書換装置及びプログラム書換方法
JP7484791B2 (ja) Otaマスタ、更新制御方法、及び更新制御プログラム
JP2018160207A (ja) 車載制御装置、及び、プログラム更新ソフトウェア
JP6718483B2 (ja) 車両
US20220413831A1 (en) Center, ota master, method, non-transitory storage medium, and vehicle
US20220391193A1 (en) Ota master, system, method, non-transitory storage medium, and vehicle
US12067381B2 (en) Center, update management method, and non-transitory storage medium

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20201026

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20211021

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20211130

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20220117

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20220214

R151 Written notification of patent or utility model registration

Ref document number: 7035635

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151