JP2022163396A - Otaマスタ、更新制御方法、更新制御プログラム及びotaセンタ - Google Patents

Otaマスタ、更新制御方法、更新制御プログラム及びotaセンタ Download PDF

Info

Publication number
JP2022163396A
JP2022163396A JP2021068295A JP2021068295A JP2022163396A JP 2022163396 A JP2022163396 A JP 2022163396A JP 2021068295 A JP2021068295 A JP 2021068295A JP 2021068295 A JP2021068295 A JP 2021068295A JP 2022163396 A JP2022163396 A JP 2022163396A
Authority
JP
Japan
Prior art keywords
update
software
ota
order
target ecus
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.)
Pending
Application number
JP2021068295A
Other languages
English (en)
Inventor
義和 酒井
Yoshikazu Sakai
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 JP2021068295A priority Critical patent/JP2022163396A/ja
Priority to DE102022106660.6A priority patent/DE102022106660A1/de
Priority to CN202210310642.6A priority patent/CN115202682A/zh
Priority to US17/708,338 priority patent/US20220334821A1/en
Publication of JP2022163396A publication Critical patent/JP2022163396A/ja
Pending legal-status Critical Current

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
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/65Updates
    • G06F8/658Incremental updates; Differential updates
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/70Software maintenance or management
    • G06F8/71Version control; Configuration management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/48Program initiating; Program switching, e.g. by interrupt
    • G06F9/4806Task transfer initiation or dispatching
    • G06F9/4843Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
    • G06F9/4881Scheduling strategies for dispatcher, e.g. round robin, multi-level priority queues
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5027Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
    • G06F9/5038Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals considering the execution order of a plurality of tasks, e.g. taking priority or time dependency constraints into consideration
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/40Bus networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/46Interconnection of networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/40Bus networks
    • H04L2012/40267Bus for use in transportation systems
    • H04L2012/40273Bus for use in transportation systems the transportation system being a vehicle

Abstract

【課題】複数のECUについてソフトウェア更新の順序に制約がある場合に、適切にソフトウェア更新を行うことがきるOTAマスタ等を提供する。【解決手段】本開示に係るOTAマスタは、複数のターゲットECUのソフトウェアの更新データ、および、当該ソフトウェアの更新順序を規定した更新順序情報をOTAセンタから受信する通信部と、上記の更新順序に基づいて、複数のターゲットECUの更新データを用いたソフトウェア更新の実行を制御する制御部とを備える。【選択図】図8

Description

本開示は、ECU(電子制御ユニット)のソフトウェアの更新を制御するためのOTAマスタ、更新制御方法、更新制御プログラム及びOTAセンタに関する。
車両には、車両の動作を制御するための複数のECU(電子制御ユニット)が搭載されている。ECUは、プロセッサと、RAMのような一時的な記憶部と、フラッシュROMのような不揮発性の記憶部とを備え、プロセッサが不揮発性の記憶部に記憶されるソフトウェアを実行することによりECUの制御機能を実現する。各ECUが記憶するソフトウェアは書き換え可能であり、より新しいバージョンのソフトウェアに更新することにより、各ECUの機能を改善したり、新たな車両制御機能を追加したりすることができる。
ECUのソフトウェアを更新する技術として、車載ネットワークに接続された車載通信機器とインターネット等の通信ネットワークとを無線で接続し、無線通信を介してOTAセンタからソフトウェアをダウンロードし、ダウンロードしたソフトウェアをインストールすることによりECUのプログラム更新や追加を行うOTA(Over The Air)技術が知られている(例えば、特許文献1参照)。
特開2004-326689号公報
OTAのキャンペーンによって複数のECUに対してソフトウェア更新を行う場合、更新の順序に制約がある場合がある。例えば、ソフトウェア更新済みのECU1から新たな信号(機能追加が目的のソフトウェア更新により新たに追加された信号等)が、ソフトウェア更新前のECU2(旧ソフトウェアで動作しているECU2)に送信された場合、この新たな信号を受信したECU2が不明な信号を受信したとしてエラー判定をしてしまう場合がある。
それ故に、本開示は、複数のECUについてソフトウェア更新の順序に制約がある場合において、適切にソフトウェア更新を行うことがきるOTAマスタ、更新制御方法、更新制御プログラム等を提供することを目的とする。
本開示に係るOTAマスタは、車両に搭載された複数のターゲットECUのソフトウェア更新を制御するOTAマスタであって、複数のターゲットECUのソフトウェアの更新データ、および、当該ソフトウェアの更新順序を規定した更新順序情報をOTAセンタから受信する通信部と、上記の更新順序に基づいて、複数のターゲットECUの更新データを用いたソフトウェア更新の実行を制御する制御部とを備える。
本開示に係る更新制御方法は、プロセッサとメモリとを備え、車両に搭載された複数のターゲットECUのソフトウェア更新を制御するコンピュータが実行する更新制御方法であって、複数のターゲットECUのソフトウェアの更新データ、および、当該ソフトウェアの更新順序を規定した更新順序情報をOTAセンタから受信するステップと、上記の更新順序に基づいて、複数のターゲットECUの更新データを用いたソフトウェア更新の実行を制御するステップとを備える。
本開示に係る更新制御プログラムは、プロセッサとメモリとを備え、車両に搭載された複数のターゲットECUのソフトウェア更新を制御するコンピュータが実行する更新制御プログラムであって、複数のターゲットECUのソフトウェアの更新データ、および、当該ソフトウェアの更新順序を規定した更新順序情報をOTAセンタから受信するステップと、上記の更新順序に基づいて、複数のターゲットECUの更新データを用いたソフトウェア更新の実行を制御するステップとを、コンピュータに実行させる。
本開示に係るOTAセンタは、車両に搭載された、複数のターゲットECUのソフトウェア更新を制御するOTAマスタと、ネットワークを介して通信可能なOTAセンタであって、OTAマスタに、複数のターゲットECUのソフトウェアの更新データ、および、当該ソフトウェアの更新順序を規定した更新順序情報を送信する通信部と、通信部により更新データおよび更新順序情報を送信することによって、OTAマスタに、上記の更新順序に基づいて複数のターゲットECUのソフトウェア更新を行わせる制御部とを備える。
本開示によれば、複数のECUについてソフトウェア更新の順序に制約がある場合において、適切にソフトウェア更新を行うことがきるOTAマスタ、更新制御方法、更新制御プログラム等を提供できる。
一実施形態に係るネットワークシステムの全体構成の一例を示すブロック図 図1に示したOTAセンタの概略構成の一例を示すブロック図 図1に示したOTAマスタの概略構成の一例を示すブロック図 図1に示したOTAセンタの一例を示す機能ブロック図 図1に示したOTAマスタの一例を示す機能ブロック図 更新可否情報の一例を説明するための図 更新順序情報の一例を説明するための図 図1に示したOTAマスタが実行する制御処理の一例を示すフローチャート 更新順序情報の他の例を説明するための図
(一実施形態)
図1は、一実施形態に係るネットワークシステムの全体構成の一例を示すブロック図である。図2は、図1に示したOTAセンタの概略構成の一例を示すブロック図である。図3は、図1に示したOTAマスタの概略構成の一例を示すブロック図である。
図1に示すネットワークシステムは、車両に搭載されたECU(Electronic Control Unit;電子制御ユニット)13a~13dのソフトウェアを更新するためのシステムであり、OTAセンタ1と、車両に搭載される車載ネットワーク2とを備える。
OTAセンタ1は、インターネット等の通信ネットワーク5を介して車両に搭載されたOTAマスタ11と無線等で通信可能であり、車両に搭載されたECU13a~13dのソフトウェア更新を管理する。
図2に示すように、OTAセンタ1は、CPU21と、RAM22と、記憶装置23と、通信装置24とを備える。記憶装置23は、ハードディスクやSSD等の読み書き可能な記憶媒体を備え、ソフトウェアの更新管理を実行するためのプログラムや、更新管理に用いる情報、ECUの更新データ等を記憶する。CPU21は、記憶装置23から読み出したプログラムを、RAM22を作業領域として用いて実行することにより、制御処理を実行する。通信装置24は、通信ネットワーク5を介してOTAマスタ11と通信を行う。
図1に示すように、車載ネットワーク2は、OTAマスタ11と、通信モジュール12と、複数のECU13a~13dと、HMI(Human Machine Interface;例えば、入力操作が可能なカーナビゲーションシステムの表示装置)14とを備える。OTAマスタ11は、バス15aを介して通信モジュール12と接続され、バス15bを介してECU13a及び13bと接続され、バス15cを介してECU13c及び13dと接続され、バス15dを介してHMI14と接続されている。OTAマスタ11は、通信モジュール12を介してOTAセンタ1と無線での通信が可能である。OTAマスタ11は、OTAセンタ1から取得した更新データに基づいて、ECU13a~13dのうちのソフトウェア(「SW」という場合がある)の更新対象であるECU(「ターゲットECU」という場合がある)のソフトウェア更新を制御する。通信モジュール12は、車載ネットワーク2とOTAセンタ1とを接続する通信機器である。ECU13a~13dは、車両の各部の動作を制御する。HMI14は、ECU13a~13dのソフトウェアの更新処理の際に、更新データがあることの表示や、ユーザや管理者にソフトウェア更新に対する承諾を求めるための承諾要求画面の表示、更新結果の表示等の各種表示を行うために用いられる。なお、図1では、4つのECU13a~13dを例示したが、ECUの数は限定されない。
図3に示すように、OTAマスタ11は、CPU31と、RAM32と、ROM33と、記憶装置34とを備えるマイクロコンピュータ35と、通信装置36とを備える。CPU31は、ROM33から読み出したプログラムを、RAM32を作業領域として用いて実行することにより、制御処理を実行する。通信装置36は、図1に示したバス15a~15dを介して、通信モジュール12、ECU13a~13d、HMI14と通信を行う。
ここで、ソフトウェアの更新処理は、OTAセンタ1からOTAマスタ11に更新データをダウンロードするフェーズと、ダウンロードした更新データを更新対象であるターゲットECUに転送し、ターゲットECUの記憶領域に更新データをインストールするフェーズと、ターゲットECUにおいてインストールした更新版のソフトウェアを有効化するアクティベートのフェーズとからなる。
ダウンロードは、OTAセンタ1から送信された、ECUのソフトウェアを更新するための更新データを受信して、記憶装置34に記憶する処理である。ダウンロードのフェーズは、更新データの受信だけでなく、ダウンロードの実行可否判断、更新データの検証等、ダウンロードに関する一連の処理の制御を含む。インストールは、ダウンロードした更新データに基づいて、ターゲットECUの不揮発性メモリに更新版のプログラム(更新ソフトウェア)を書き込む処理である。インストールのフェーズは、インストールの実行だけでなく、インストールの実行可否判断、更新データの転送および更新版のプログラムの検証等、インストールに関する一連の処理の制御を含む。アクティベートは、インストールした更新版のプログラムをアクティベート(有効化)する処理である。アクティベートのフェーズは、アクティベートの実行だけでなく、アクティベートの実行可否判断、実行結果の検証等、アクティベートに関する一連の制御を含む。
OTAセンタ1からOTAマスタ11に送信される更新データは、ECUの更新ソフトウェア、更新ソフトウェアを圧縮した圧縮データ、更新ソフトウェアまたは圧縮データを分割した分割データのいずれを含んでいても良い。また、更新データは、ターゲットECUを識別する識別子(ECU ID)と、更新前のソフトウェアを識別する識別子(ECU ソフトウェア ID)を含んでいても良い。更新データは、配信パッケージとしてダウンロードされるが、配信パッケージには、単一または複数のECUの更新データが含まれる。
更新データが更新ソフトウェアそのものを含む場合は、インストールのフェーズにおいて、OTAマスタ11が更新データ(つまり、更新ソフトウェア)をターゲットECUに転送する。また、更新データが更新ソフトウェアの圧縮データ、差分データあるいは分割データを含む場合、OTAマスタ11がターゲットECUに更新データを転送し、ターゲットECUが更新データから更新ソフトウェアを生成しても良いし、OTAマスタ11が更新データから更新ソフトウェアを生成してから、更新ソフトウェアをターゲットECUに転送しても良い。ここで、更新ソフトウェアの生成は、圧縮データの解凍、差分データまたは分割データの組み付けにより行うことができる。
更新ソフトウェアのインストールは、OTAマスタ11からのインストール要求に基づき、ターゲットECUが行うことができる。または、更新データを受信したターゲットECUが、OTAマスタ11からの明示の指示を受けることなく、自律的にインストールを行っても良い。
更新ソフトウェアのアクティベートは、OTAマスタ11からのアクティベート要求に基づき、ターゲットECUが行うことができる。または、更新データを受信したターゲットECUが、OTAマスタ11からの明示の指示を受けることなく、自律的にアクティベートを行っても良い。
図4は、図1に示したOTAセンタ1の機能ブロック図の一例である。図4に示すように、OTAセンタ1は、記憶部26と、通信部27と、制御部28とを備える。通信部27及び制御部28は、図2に示したCPU21がRAM22を用いて記憶装置23に記憶されるプログラムを実行することにより実現される。記憶部26は、図2に示した記憶装置23により実現される。
図5は、図1に示したOTAマスタ11の機能ブロック図の一例である。図5に示すように、OTAマスタ11は、記憶部37と、通信部38と、制御部39とを備える。通信部38及び制御部39は、図3に示したCPU31がRAM32を用いてROM33に記憶されるプログラムを実行することにより実現される。記憶部37は、図3に示した記憶装置34によって実現される。
図6は、更新可否情報の一例を説明するための模式図である。更新可否情報は、車両に搭載された各ECU(ターゲットECUを含む各ECU)について、ソフトウェア更新が現在実行可能な状況であるか否かを示す情報である。
本実施形態において、車両に搭載されるECUには、車両が停車中の場合はソフトウェア更新を実行できる一方で走行中の場合はソフトウェア更新を実行できないECU(「走行関連ECU」という場合がある)と、車両が停車中の場合も走行中の場合もソフトウェア更新を実行できるECU(「非走行関連ECU」という場合がある)とがある。走行関連ECUは、車両の走行に関わる制御を行うECUであり、例えば、エンジンの制御を行うECUや、ブレーキの制御を行うECUや、ステアリングの制御を行うECUである。非走行関連ECUは、車両の走行に関わらない制御を行うECUであり、例えば、音響システムの制御を行うECUや、空調システムの制御を行うECUである。ここで、停車中は、例えば、IG-ON状態(イグニッション電源がONの状態)であって車速が出ていない状態(車両が移動していない状態)である。また、走行中は、例えば、IG-ON状態であって車速が出ている状態(車両が移動している状態)である。
図6に示す更新可否情報は、停車中には、車両に搭載されたECU1~ECU7の全てのECUのソフトウェア更新が可能であることを示す一方で、走行中には、ECU1、ECU4、ECU5、ECU7のみのソフトウェア更新が可能であることを示す。ここで、ECU1、ECU4、ECU5、ECU7は、非走行関連ECUであり、ECU2、ECU3、ECU6は、走行関連ECUである。
OTAマスタ11は、更新可否情報を記憶しており、イグニッション電源の状態及び車速の状態を監視することによって車両の状態(停車中か走行中か)を判定し、この判定に応じて更新可否情報(つまり、ソフトウェア更新が可能なECU)を常時更新している。なお、イグニッション電源の状態は、例えば電源状態を監視するデバイスから受信する信号を用いて監視でき、車速の状態は、例えば車速を制御するECUから受信する信号を用いて監視できる。
図7は、更新順序情報の一例を説明するための模式図である。更新順序情報は、ECUのソフトウェアの更新順序を示す情報である。
本実施形態では、1つのECUに複数のソフトウェアをインストールして稼働させることが可能であり、又、ソフトウェアの更新には順序がある。
以下、図7に示す更新順序情報の一例を参照して具体的に説明する。図7に示す更新順序情報は、ソフトウェアの更新対象であるターゲットECUがECU1、ECU3及びECU4であることを示している。また、ターゲットECU1に実装されているソフトウェアa1(図示なし)をソフトウェアA1に更新してから、ソフトウェアA1をソフトウェアA2に更新した後に、ソフトウェアA2をソフトウェアA3に更新することを示している。その後、ターゲットECU3に実装されているソフトウェアa2(図示なし)をソフトウェアA4に更新してから、ソフトウェアA4をソフトウェアA5に更新することを示している。更にその後、ターゲットECU4に実装されているソフトウェアa3(図示なし)をソフトウェアA6に更新してから、ソフトウェアA6をソフトウェアA7に更新することを示している。つまり、ターゲットECU1、ECU3及びECU4について、ソフトウェアA1→A2→A3→A4→A5→A6→A7の順序で更新処理を実行することが規定されている。
また、ターゲットECU1に実装されているソフトウェアb1(図示なし)をソフトウェアB1に更新してから、ソフトウェアB1をソフトウェアB2に更新することを示している。その後、ターゲットECU4に実装されているソフトウェアb2(図示なし)をソフトウェアB3に更新することを示している。つまり、ターゲットECU1及びECU4について、ソフトウェアB1→B2→B3の順序で更新処理を実行することが規定されている。
また、図7に示すように、更新グループ1(A1→A2→A3→A4→A5→A6→A7の更新グループ)は優先度1であり、更新グループ2(B1→B2→B3の更新グループ)は優先度2であることが規定されている。つまり、更新グループ1の方が、更新グループ2よりも、更新する優先度が高いことが規定されている。つまり、図7に示す更新順序情報は、ソフトウェアの更新順序を、「A1→A2→A3→A4→A5→A6→A7→B1→B2→B3」に規定している。
ここで、更新グループが示す更新順序は、ECUによるエラー判定発生の不具合防止等のために、必ず守られる必要がある。具体的には、更新グループ1が示す更新順序(A1→A2→A3→A4→A5→A6→A7の更新順序)、及び、更新グループ2が示す更新順序(B1→B2→B3の更新順序)は、必ず守られる必要がある。一方で、更新グループの優先度が示す更新順序は、例えば更新の重要度に応じた順序であり、必ずしも守られる必要はない。具体的には、優先度1の更新グループ1よりも先に、優先度2の更新グループ2の更新を実行する場合があっても良い。
図8は、本実施形態のOTAマスタ11が実行する制御処理の一例を示すフローチャートである。以下では、図8に示すフローチャートに沿って、本実施形態に係る制御処理について説明する。
図8に示す処理は、OTAキャンペーンによりOTAセンタ1から送信されたソフトウェアの更新データ及び更新順序情報(図7参照)をOTAマスタ11(図5参照)の通信部38が受信することで開始される。なお、ソフトウェアの更新データ及び更新順序情報は、例えばIG-ON状態(イグニッション電源がONの状態)において受信され、記憶部37に記憶される。
ステップS1において、制御部39は、記憶部37に記憶されている更新可否情報(図6参照)に基づいて、ターゲットECUのうちソフトウェア更新が現在可能なECUを判定する。以下、図6に示した更新可否情報を用いて具体的に説明する。図6を用いて説明したように、制御部39は、イグニッション電源の状態及び車速の状態を監視することによって車両の状態(停車中か走行中か)を判定し、この判定に応じて更新可否情報を常時更新している。そして、ステップS1において、制御部39は、例えばターゲットECUがECU1、ECU3及びECU4である場合において車両が走行中である場合には、図6に示す更新可否情報を参照してターゲットECU1及びECU4がソフトウェア更新可能であると判定する。また、ステップS1において、制御部39は、例えばターゲットECUがECU1、ECU3及びECU4である場合において車両が停車中である場合には、図6に示す更新可否情報を参照してターゲットECU1、ECU3及びECU4がソフトウェア更新可能であると判定する。その後、処理はステップS2に移る。
ステップS2において、制御部39は、記憶部37に記憶されている更新順序情報(図7参照)に基づいて、ステップS1でソフトウェア更新可能と判定したターゲットECUのソフトウェアのうち、更新するソフトウェアを判定する。以下、図7に示した更新順序情報(ターゲットECUがECU1、ECU3及びECU4の場合における更新順序情報の一例)を用いて具体的に説明する。
ステップS2において、制御部39は、車両が停車中である場合には、ステップS1でターゲットECU1、ECU3及びECU4がソフトウェア更新可能と判定されているので(図6参照)、図7に示す更新順序情報に基づいて、ターゲットECU1、ECU3及びECU4のソフトウェアのうち更新するソフトウェアを判定する。例えば図8のフローチャートの処理を開始して最初にステップS2の処理を実行した時点であれば、ECU1のソフトウェアa1(図示なし)をソフトウェアA1に更新することを判定する。また、例えばソフトウェアA2への更新が終了している時点であれば、ECU1のソフトウェアA2をソフトウェアA3に更新することを判定する。また、例えば(ECU1について)ソフトウェアA3への更新が終了している時点であれば、ECU3のソフトウェアa2(図示なし)をソフトウェアA4に更新することを判定する。また、例えば(ECU4について)ソフトウェアA7への更新が終了している時点であれば、ECU1のソフトウェアb1(図示なし)をソフトウェアB1に更新することを判定する。このように車両が停車中の場合には、全てのターゲットECUについてソフトウェア更新が可能なので、更新順序情報が示す更新順序(つまり、図7に示す順序;A1→A2→A3→A4→A5→A6→A7→B1→B2→B3)に従って、更新するソフトウェアが判定される。
また、ステップS2において、制御部39は、車両が走行中である場合には、ステップS1でターゲットECU1及びECU4がソフトウェア更新可能である(つまり、ターゲットECU3はソフトウェア更新可能ではない)と判定されているので(図6参照)、ソフトウェア更新可能ではないターゲットECU3のソフトウェア更新を含む更新グループ1(優先度1)のソフトウェア更新を実行する判定は行わず、更新グループ2(優先度2)のソフトウェア更新のうちから実行するものを判定する。例えば図8のフローチャートの処理を開始して最初にステップS2の処理を実行した時点であれば、ECU1のソフトウェアb1(図示なし)をソフトウェアB1に更新することを判定する。また、例えば(ECU1について)ソフトウェアB2への更新が終了している時点であれば、ECU4のソフトウェアb2(図示なし)をソフトウェアB3に更新することを判定する。このように車両が走行中の場合には、ソフトウェア更新可能ではないターゲットECUのソフトウェア更新を含む更新グループのソフトウェア更新を実行する判定は行われず、ソフトウェア更新可能ではないターゲットECUのソフトウェア更新を含まない更新グループのソフトウェア更新を実行する判定が行われる。つまり、車両が走行中の場合には、更新順序情報が示す更新順序(つまり、図7に示す順序;A1→A2→A3→A4→A5→A6→A7→B1→B2→B3)とは異なる順序で、更新するソフトウェアが判定される場合がある。以上に説明したステップ2の処理の次に、処理はステップS3に移る。
ステップS3において、制御部39は、ステップS2の処理において、更新するソフトウェアが判定された(つまり、更新するソフトウェアがある)か否かを判定する。ステップS3での判定がYESの場合、処理はステップS4に移り、この判定がNOの場合、処理はステップS1に戻る。
ステップS4において、制御部39は、ステップS2で判定した更新するソフトウェアについての更新処理を実行する。具体的には、制御部39は、ステップS2で判定した更新するソフトウェアの更新データを記憶部37から読み出して、ターゲットECUに送信してインストールさせ(ターゲットECUの不揮発性メモリに書き込みさせ)、インストールさせたソフトウェア(更新ソフトウェア)をアクティベート(有効化)させる。その後、処理はステップS5に移る。
ステップS5において、制御部39は、今回のOTAキャンペーンに係る全てのソフトウェア更新を実行したか否かを判定する。ステップS5での判定がYESの場合、図8の処理を終了し、この判定がNOの場合、処理をステップS1に戻して残りのソフトウェア更新を実行する。
以上に説明したように、本実施形態では、更新順序情報(図7参照)に基づいた更新順序で複数のターゲットECUのソフトウェア更新の実行を制御するので、更新順序に制約のある複数のソフトウェア更新(OTAキャンペーン)を適切に実行できる。
また、本実施形態では、更新可否情報(図6参照)および更新可否情報に基づいてソフトウェア更新を実行するので、ターゲットECUのソフトウェア更新ができる状況か否かの制約も考慮して、更新可否情報で規定される更新順序に基づいてソフトウェア更新を適切に実行できる。
また、本実施形態では、更新グループ(図7の更新グループ1参照)にソフトウェア更新が現在不可のECU(ECU3)のソフトウェア更新(A4、A5)が含まれる場合、ソフトウェア更新可能なECU(例えば、ECU1)について更新順序情報が示す更新順序と異なる順序でソフトウェア更新が可能(例えば、A1より先にB1の更新が可能)である。これにより、本実施形態によれば、必ずしも守る必要のない更新順序(優先度による更新順序)でソフトウェア更新を実行できるので、効率的に更新処理を進めることができる。
(変形例)
上記した本実施形態では、車両が走行中であることにより更新グループ(図7の更新グループ1参照)にソフトウェア更新が現在不可のECU(ECU3)のソフトウェア更新(A4、A5)が含まれる状況では、この更新グループに含まれるソフトウェア更新を全て行わない(保留する)制御例を挙げた。しかし、車両が走行中であっても、ソフトウェア更新が現在不可のECUのソフトウェア更新が含まれる更新グループのソフトウェア更新を、この更新グループ内の更新順序を守った上で、可能な範囲で実行しても良い。例えば、図7に示す更新順序情報の場合であって、車両が走行中であることによりターゲットECU3のソフトウェア更新(A4、A5)ができない状況において(図6参照)、更新グループ1内の更新順序を守った上で、ターゲットECU1のソフトウェア更新(A1→A2→A3)や、ターゲットECU4のソフトウェア更新(A6→A7)を実行する制御としても良い。
また、上記した場合(車両が走行中であっても、ソフトウェア更新が現在不可のECUのソフトウェア更新が含まれる更新グループのソフトウェア更新を、この更新グループ内の更新順序を守った上で、可能な範囲で実行する場合)において、複数のターゲットECUについて、ソフトウェア更新を並行して実行させる制御を行っても良い。例えば、図7に示す更新順序情報の場合であって、車両が走行中であることによりターゲットECU3のソフトウェア更新(A4、A5)ができない状況において、ターゲットECU1のソフトウェア更新A1の実行と並行して、ターゲットECU4のソフトウェア更新B3を実行する制御としても良い。このように制御することで、ソフトウェア更新を効率的に進行できる。
また、更新順序情報が示す複数の更新グループのソフトウェア更新の優先度が同じである場合には、複数のターゲットECUについて、ソフトウェア更新を並行して実行させる制御を行っても良い。図9は、図7に示す更新順序情報に対して、更新グループ3(更新グループ2と同じ優先度2)が追加されたものである。図9に示す更新順序情報の場合には、例えばターゲットECU1のソフトウェア更新B1の実行と並行して、ターゲットECU4のソフトウェア更新C1を実行する制御としても良い。このように制御することで、ソフトウェア更新を効率的に進行できる。
また、上記した本実施形態では、車両に搭載されたECUが、シングルバンクメモリECUである場合について説明した。そのため、上記した本実施形態では、図8のステップS4において、ソフトウェアの更新処理として、更新データをターゲットECU(シングルバンクメモリECU)にインストールしてアクティベートする処理を説明した。
ここで、ECUには、ソフトウェアを格納するための1つのデータ格納領域(バンク)を有するシングルバンクメモリECU(1面メモリECU)と、ソフトウェアを格納するための2つのデータ格納領域(バンク)を有するダブルバンクメモリECU(2面メモリECU)とがある。シングルバンクメモリECUでは、データ格納領域に更新データをインストールしてアクティベートすることにより、ECUのソフトウェアに影響が生じる。一方、ダブルバンクメモリECUでは、2つのデータ格納領域(擬似的に2つのデータ格納領域を構成した場合も含む)のうち、いずれか一方を読み出し対象のデータ格納領域(運用面)とし、読み出し対象のデータ格納領域に格納されるソフトウェアを実行する。読み出し対象でない他方のデータ格納領域(非運用面)には、読み出し対象のデータ格納領域(運用面)のソフトウェアの実行中に、バックグラウンドで更新データを書き込み可能である。ソフトウェア更新処理におけるアクティベート時には、ソフトウェアの読み出し対象のデータ格納領域が切り替えられることにより、更新版のソフトウェアをアクティベート(有効化)することができる。
そして、上記した本実施形態において、車両に搭載されたECUが、ダブルバンクメモリECUであっても良い。この場合には、非運用領域のデータ格納領域に予め更新データ(更新版のソフトウェア)をインストールしておいて、図8のステップS4のソフトウェアの更新処理として、非運用領域のデータ格納領域を運用領域に切り替えるアクティベートを行うこととなる。
また、上記した本実施形態で例示したOTAセンタ1の機能は、プロセッサ(CPU)とメモリと通信装置とを備えるコンピュータが実行する管理方法、あるいは、当該コンピュータに実行させる管理プログラム、管理プログラムを記憶したコンピュータ読み取り可能な非一時的記憶媒体として実現することも可能である。同様に、上記した本実施形態として例示したOTAマスタ11の機能は、プロセッサ(CPU)とメモリと通信装置とを備える、車載されたコンピュータが実行する制御方法、あるいは、当該車載されたコンピュータに実行させる制御プログラム、制御プログラムを記憶したコンピュータ読み取り可能な非一時的記憶媒体として実現することも可能である。
本開示技術は、ECU(電子制御ユニット)のプログラムを更新するためのネットワークシステムに利用できる。
1 OTAセンタ
11 OTAマスタ
13a~13d ECU
26、37 記憶部
27、38 通信部
28、39 制御部

Claims (7)

  1. 車両に搭載された複数のターゲットECUのソフトウェア更新を制御するOTAマスタであって、
    前記複数のターゲットECUのソフトウェアの更新データ、および、当該ソフトウェアの更新順序を規定した更新順序情報をOTAセンタから受信する通信部と、
    前記更新順序に基づいて、前記複数のターゲットECUの前記更新データを用いたソフトウェア更新の実行を制御する制御部とを備える、OTAマスタ。
  2. 前記制御部は、
    前記複数のターゲットECUについてソフトウェア更新が現在実行可能であるか否かを示す更新可否情報を取得し、
    前記更新可否情報が示すソフトウェア更新が現在実行可能であるターゲットECUについて、前記更新順序に基づいてソフトウェア更新の実行を制御する、請求項1に記載のOTAマスタ。
  3. 前記制御部は、複数のソフトウェア更新のグループである更新グループに、前記更新可否情報が示すソフトウェア更新が現在実行可能でないターゲットECUに係るソフトウェア更新が含まれている場合、前記更新可否情報が示すソフトウェア更新が現在実行可能であるターゲットECUについて、前記更新順序と異なる順序でソフトウェア更新の実行を制御することが可能である、請求項2に記載のOTAマスタ。
  4. 前記制御部は、前記複数のターゲットECUのソフトウェア更新を並行して実行する制御が可能である、請求項1~3の何れかに記載のOTAマスタ。
  5. プロセッサとメモリとを備え、車両に搭載された複数のターゲットECUのソフトウェア更新を制御するコンピュータが実行する更新制御方法であって、
    前記複数のターゲットECUのソフトウェアの更新データ、および、当該ソフトウェアの更新順序を規定した更新順序情報をOTAセンタから受信するステップと、
    前記更新順序に基づいて、前記複数のターゲットECUの前記更新データを用いたソフトウェア更新の実行を制御するステップとを備える、更新制御方法。
  6. プロセッサとメモリとを備え、車両に搭載された複数のターゲットECUのソフトウェア更新を制御するコンピュータが実行する更新制御プログラムであって、
    前記複数のターゲットECUのソフトウェアの更新データ、および、当該ソフトウェアの更新順序を規定した更新順序情報をOTAセンタから受信するステップと、
    前記更新順序に基づいて、前記複数のターゲットECUの前記更新データを用いたソフトウェア更新の実行を制御するステップとを、前記コンピュータに実行させる、更新制御プログラム。
  7. 車両に搭載された、複数のターゲットECUのソフトウェア更新を制御するOTAマスタと、ネットワークを介して通信可能なOTAセンタであって、
    前記OTAマスタに、前記複数のターゲットECUのソフトウェアの更新データ、および、当該ソフトウェアの更新順序を規定した更新順序情報を送信する通信部と、
    前記通信部により前記更新データおよび前記更新順序情報を送信することによって、前記OTAマスタに、前記更新順序に基づいて前記複数のターゲットECUのソフトウェア更新を行わせる制御部とを備える、OTAセンタ。
JP2021068295A 2021-04-14 2021-04-14 Otaマスタ、更新制御方法、更新制御プログラム及びotaセンタ Pending JP2022163396A (ja)

Priority Applications (4)

Application Number Priority Date Filing Date Title
JP2021068295A JP2022163396A (ja) 2021-04-14 2021-04-14 Otaマスタ、更新制御方法、更新制御プログラム及びotaセンタ
DE102022106660.6A DE102022106660A1 (de) 2021-04-14 2022-03-22 Ota-master, aktualisierungssteuerungsverfahren, nicht-transitorisches speichermedium und ota-center
CN202210310642.6A CN115202682A (zh) 2021-04-14 2022-03-28 Ota管理器及中心、更新控制方法、非暂时性存储介质
US17/708,338 US20220334821A1 (en) 2021-04-14 2022-03-30 Ota master, update control method, non-transitory storage medium, and ota center

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2021068295A JP2022163396A (ja) 2021-04-14 2021-04-14 Otaマスタ、更新制御方法、更新制御プログラム及びotaセンタ

Publications (1)

Publication Number Publication Date
JP2022163396A true JP2022163396A (ja) 2022-10-26

Family

ID=83447431

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2021068295A Pending JP2022163396A (ja) 2021-04-14 2021-04-14 Otaマスタ、更新制御方法、更新制御プログラム及びotaセンタ

Country Status (4)

Country Link
US (1) US20220334821A1 (ja)
JP (1) JP2022163396A (ja)
CN (1) CN115202682A (ja)
DE (1) DE102022106660A1 (ja)

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004326689A (ja) 2003-04-28 2004-11-18 Nissan Motor Co Ltd 車載機器のソフトウェア書き換え方法、テレマティクスシステムおよびテレマティクス装置
US10496398B2 (en) * 2017-07-25 2019-12-03 Aurora Labs Ltd. Hot updates to ECU software using tool chain
JP7338280B2 (ja) * 2018-08-10 2023-09-05 株式会社デンソー 車両用電子制御システム、車両用マスタ装置、メータ装置、プログラム更新の報知制御方法、インジケータの表示指示プログラム及びインジケータの表示プログラム
JP7177755B2 (ja) * 2019-07-24 2022-11-24 株式会社日立製作所 サーバ、ソフトウェア更新システム、およびソフトウェア更新装置
JP7371461B2 (ja) * 2019-11-28 2023-10-31 株式会社オートネットワーク技術研究所 車載更新装置、更新処理プログラム、及び更新方法
CN113031980A (zh) * 2019-12-24 2021-06-25 华为技术有限公司 Ota系统软件升级控制方法及终端设备

Also Published As

Publication number Publication date
CN115202682A (zh) 2022-10-18
US20220334821A1 (en) 2022-10-20
DE102022106660A1 (de) 2022-10-20

Similar Documents

Publication Publication Date Title
WO2018142751A1 (ja) 制御装置、プログラム更新方法、およびコンピュータプログラム
JPWO2018230084A1 (ja) 更新制御装置、制御方法、およびコンピュータプログラム
JP2024015111A (ja) ソフトウェア更新装置、更新制御方法、更新制御プログラム及びotaマスタ
US11945453B2 (en) Onboard device, information generating method, non-transitory storage medium, and vehicle
WO2018142749A1 (ja) 制御装置、プログラム更新方法、およびコンピュータプログラム
JP2022163396A (ja) Otaマスタ、更新制御方法、更新制御プログラム及びotaセンタ
US20220391192A1 (en) Ota master, center, system, method, non-transitory storage medium, and vehicle
JP7371585B2 (ja) ソフトウェア更新装置、更新制御方法、更新制御プログラム及びサーバ
JP7396216B2 (ja) サーバ、更新管理方法、更新管理プログラム及びソフトウェア更新装置
JP7452452B2 (ja) Otaマスタ、ソフトウェアの更新制御方法及び更新制御プログラム、otaマスタを備える車両
JP2022187646A (ja) Otaマスタ、システム、方法、プログラム、及び車両
JP2022180976A (ja) Otaセンタ、更新管理方法、更新管理プログラム、otaマスタ、更新制御方法および更新制御プログラム
US11954480B2 (en) Center, OTA master, system, method, non-transitory storage medium, and vehicle
US20220391193A1 (en) Ota master, system, method, non-transitory storage medium, and vehicle
JP7380468B2 (ja) ソフトウェア更新装置、更新制御方法、更新制御プログラム、サーバ、otaマスタ及びセンタ
US11941126B2 (en) Center, information rewriting method, and non-transitory storage medium
JP2022109039A (ja) センタ、更新管理方法及び更新管理プログラム
US20220253234A1 (en) Electronic control unit, method, and program
JP7363853B2 (ja) Otaマスタ、センタ、システム、更新方法、更新プログラム、及び車両
US20220405080A1 (en) Ota master, system, method, non-transitory storage medium, and vehicle
WO2022259348A1 (ja) 車両用制御装置
US20220413831A1 (en) Center, ota master, method, non-transitory storage medium, and vehicle
KR20220147020A (ko) 센터, ota 마스터, 시스템, 배신 방법, 비일시적인 기억 매체 및 차량
JP2022109037A (ja) センタ、管理方法および管理プログラム
CN115586908A (zh) 中心、ota管理器、方法、非暂时性存储介质以及车辆

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20230323

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20240220

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20240301