JP2023118652A - Program management apparatus, program management method, and recording medium - Google Patents

Program management apparatus, program management method, and recording medium Download PDF

Info

Publication number
JP2023118652A
JP2023118652A JP2022137518A JP2022137518A JP2023118652A JP 2023118652 A JP2023118652 A JP 2023118652A JP 2022137518 A JP2022137518 A JP 2022137518A JP 2022137518 A JP2022137518 A JP 2022137518A JP 2023118652 A JP2023118652 A JP 2023118652A
Authority
JP
Japan
Prior art keywords
program
area
update
vehicle
storage
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
JP2022137518A
Other languages
Japanese (ja)
Inventor
毅 辻岡
Takeshi Tsujioka
さとみ 友國
Satomi Tomokuni
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 US18/082,944 priority Critical patent/US20230259351A1/en
Priority to CN202310095658.4A priority patent/CN116610250A/en
Publication of JP2023118652A publication Critical patent/JP2023118652A/en
Pending legal-status Critical Current

Links

Images

Landscapes

  • Stored Programmes (AREA)

Abstract

To ease restrictions on timing to update a program of a vehicle.SOLUTION: A program management apparatus includes: a communication unit which communicates with an external device located outside a vehicle; a control unit which executes a vehicle control program for controlling the vehicle; a program storage first region for storing a vehicle control program; a program storage second region for storing a vehicle control program; a program storage third region for storing an irrelevant program for performing a control that is irrelevant to driving the vehicle; and a program update unit configured to execute: first processing that causes at least one of the program storage first region and the program storage second region to store a vehicle control update program to be used for updating the vehicle control program, the vehicle control update program being received by the communication unit; and second processing that causes the program storage third region to store a non-control update program which is used for updating the irrelevant program, the non-control update program being received by the communication unit.SELECTED DRAWING: Figure 3

Description

本発明は、プログラム管理装置、プログラム管理方法、及び、記録媒体に関する。 The present invention relates to a program management device, program management method, and recording medium.

近年、交通の安全性の向上やCOの排出削減を目的として、車両を制御するソフトウェアの機能が充実している。そして、車両に搭載されるECU(Electronic Control Unit)によって実行されるプログラムを更新する技術が提案されている。例えば、特許文献1には、プログラムを記憶する記憶部が、制御プログラムを記憶する車両制御プログラム記憶領域と、制御プログラムの更新版である更新プログラムを記憶する第2プログラム記憶領域とを含む構成が開示されている。この構成によれば、制御プログラムの実行中であっても更新プログラムを記憶部に記憶させることが可能であり、プログラムを更新するタイミングの制約を小さくできる、とされている。 In recent years, with the aim of improving traffic safety and reducing CO 2 emissions, the functions of vehicle control software have been enhanced. Techniques have been proposed for updating a program executed by an ECU (Electronic Control Unit) mounted on a vehicle. For example, in Patent Document 1, a storage unit for storing a program includes a vehicle control program storage area for storing a control program and a second program storage area for storing an update program that is an updated version of the control program. disclosed. According to this configuration, it is possible to store the update program in the storage unit even while the control program is being executed, and it is possible to reduce restrictions on the timing of updating the program.

特開2019-144669号公報JP 2019-144669 A

特許文献1に記載されたように、プログラムを記憶する記憶領域を複数設ける構成は、プログラムのサイズに比べて大きな記憶容量を必要とする。車両の制御技術やインフォテイメントの進歩に伴い、車両において利用されるプログラムの数や複雑さが増している。このため、プログラムを記憶する記憶領域を複数設けるために、大容量の記憶装置を車両に搭載しなければならないという課題があった。また、仮に大容量の記憶装置を採用したとしても、プログラムを更新するときに記憶容量の不足を招く可能性があった。
本発明はかかる背景に鑑みてなされたものであり、記憶領域の極端な大容量化、或いは、記憶領域の不足を生じにくい手法により、車両において利用されるプログラムを更新するタイミングの制約を小さくすることを目的とする。
As described in Patent Document 1, a configuration in which a plurality of storage areas for storing programs is provided requires a large storage capacity compared to the size of the programs. BACKGROUND ART Advances in vehicle control technology and infotainment have increased the number and complexity of programs used in vehicles. Therefore, there is a problem that a large-capacity storage device must be installed in the vehicle in order to provide a plurality of storage areas for storing programs. Moreover, even if a large-capacity storage device is adopted, there is a possibility that the storage capacity will be insufficient when updating the program.
The present invention has been made in view of such a background, and reduces restrictions on the timing of updating programs used in vehicles by means of a technique that makes it difficult for the storage area to become extremely large or to cause a shortage of the storage area. for the purpose.

上記目的を達成するための一態様は、車両の外部に存在する外部装置と通信を行う通信部と、前記車両の制御を行うための車両制御プログラムを実行する制御部と、前記車両制御プログラムを記憶するプログラム記憶第1領域と、前記車両制御プログラムを記憶するプログラム記憶第2領域と、前記車両の駆動に関与しない制御を行うための非関与プログラムを記憶するプログラム記憶第3領域と、前記通信部によって受信された、前記車両制御プログラムの更新に利用される車両制御更新プログラムを、前記プログラム記憶第1領域または前記プログラム記憶第2領域の少なくとも一方に記憶させる第1処理、及び、前記通信部によって受信された、前記非関与プログラムの更新に利用される非制御更新プログラムを、前記プログラム記憶第3領域に記憶させる第2処理を実行するプログラム更新部と、を備えるプログラム管理装置である。 In one aspect for achieving the above object, a communication unit that communicates with an external device existing outside the vehicle, a control unit that executes a vehicle control program for controlling the vehicle, and the vehicle control program. a first program storage area for storing; a second program storage area for storing the vehicle control program; a third program storage area for storing a non-participating program for performing control not involved in driving the vehicle; and the communication a first process for storing, in at least one of the program storage first area or the program storage second area, the vehicle control update program received by the unit and used for updating the vehicle control program; a program update unit that executes a second process of storing, in the third program storage area, a non-control update program used for updating the non-participation program received by the program management apparatus.

上記構成によれば、車両制御プログラムを更新する間、更新に影響されない領域に車両制御プログラムを保持するので、プログラムを更新するタイミングの制約を小さくすることができる。非制御更新プログラムを記憶するプログラム記憶第3領域を二重化しないため、記憶領域の大容量化を抑制できる。従って、車両のプログラムを記憶するための記憶領域の大容量化を抑制することができ、プログラムを記憶する記憶領域の不足を回避できる。 According to the above configuration, while the vehicle control program is being updated, the vehicle control program is held in an area that is not affected by the update, so it is possible to reduce restrictions on the timing of updating the program. Since the third program storage area for storing the non-controlled update program is not duplicated, it is possible to suppress an increase in the capacity of the storage area. Therefore, it is possible to suppress an increase in the capacity of the storage area for storing the program of the vehicle, and to avoid the shortage of the storage area for storing the program.

図1は、車両の制御システムの概略構成図である。FIG. 1 is a schematic configuration diagram of a vehicle control system. 図2は、プログラム管理システムの概略構成を示す図である。FIG. 2 is a diagram showing a schematic configuration of the program management system. 図3は、制御システムの要部構成を示すブロック図である。FIG. 3 is a block diagram showing the main configuration of the control system. 図4は、データ記憶部の構成例を示す模式図である。FIG. 4 is a schematic diagram showing a configuration example of a data storage unit. 図5は、プログラム管理システムの動作を示すシーケンス図である。FIG. 5 is a sequence diagram showing operations of the program management system. 図6は、制御システムの動作を示すフローチャートである。FIG. 6 is a flow chart showing the operation of the control system. 図7は、制御システムの動作を示すフローチャートである。FIG. 7 is a flow chart showing the operation of the control system. 図8は、制御システムの動作を示すフローチャートである。FIG. 8 is a flow chart showing the operation of the control system. 図9は、制御システムの動作を示すフローチャートである。FIG. 9 is a flow chart showing the operation of the control system. 図10は、車両の状態の遷移例を示すタイミングチャートである。FIG. 10 is a timing chart showing an example of vehicle state transition. 図11は、変形例における制御システムの動作を示すフローチャートである。FIG. 11 is a flow chart showing the operation of the control system in the modified example. 図12は、変形例における制御システムの動作を示すフローチャートである。FIG. 12 is a flow chart showing the operation of the control system in the modified example.

図1は、車両の制御システム1を示す図である。
制御システム1は、車両の全般的な制御および情報処理を行うセントラルECU2を備えている。以下、制御システム1が搭載された車両を自車両とする。自車両とは、具体的には後述する車両Vである。セントラルECU2は、通信ライン4a、4b、4cを含む通信ラインに接続される。セントラルECU2は、これらの通信ライン間における通信データの授受を管理するゲートウェイの機能を実現する。また、セントラルECU2には、移動通信システムの通信規格に準拠する無線装置であるTCU(Telematics Control Unit)12が接続される。セントラルECU2は、TCU12を利用してOTA(Over The Air)管理を実行する。OTA管理は、車両が備える車載装置の更新プログラムを車外のサーバからダウンロードする処理、及び、ダウンロードした更新プログラムを車載装置に適用する処理に関する制御を含む。
FIG. 1 is a diagram showing a control system 1 for a vehicle.
The control system 1 includes a central ECU 2 that performs general vehicle control and information processing. Hereinafter, the vehicle on which the control system 1 is mounted is referred to as the own vehicle. The self-vehicle is specifically a vehicle V which will be described later. The central ECU 2 is connected to communication lines including communication lines 4a, 4b, 4c. The central ECU 2 implements a function of a gateway that manages transmission and reception of communication data between these communication lines. The central ECU 2 is also connected to a TCU (Telematics Control Unit) 12, which is a wireless device conforming to the communication standards of the mobile communication system. The central ECU 2 uses the TCU 12 to perform OTA (Over The Air) management. OTA management includes control related to a process of downloading an update program for an in-vehicle device provided in the vehicle from a server outside the vehicle and a process of applying the downloaded update program to the in-vehicle device.

通信ライン4a、4b、及び4cには、それぞれ、第1ゾーンECU20a、第2ゾーンECU20b、及び第3ゾーンECU20cが接続されている。第1ゾーンECU20aには、ECU30a、30b、30cが接続されており、第2ゾーンECU20bには、ECU30d、30e、30fが接続されている。また、第3ゾーンECU20cには、ECU30g、30h、30iが接続されている。 A first zone ECU 20a, a second zone ECU 20b, and a third zone ECU 20c are connected to the communication lines 4a, 4b, and 4c, respectively. ECUs 30a, 30b and 30c are connected to the first zone ECU 20a, and ECUs 30d, 30e and 30f are connected to the second zone ECU 20b. Further, ECUs 30g, 30h, and 30i are connected to the third zone ECU 20c.

以下、第1ゾーンECU20a、第2ゾーンECU20b、及び第3ゾーンECU20cを総称してゾーンECU20ともいい、ECU30a、30b、30c、30d、30e、30f、30g、30h、30iを総称してECU30ともいうものとする。 Hereinafter, the first zone ECU 20a, the second zone ECU 20b, and the third zone ECU 20c are collectively referred to as the zone ECU 20, and the ECUs 30a, 30b, 30c, 30d, 30e, 30f, 30g, 30h, and 30i are collectively referred to as the ECU 30. shall be

ECU30には、例えば、MPU(Map Positioning Unit)、MVC-ECU(MVC;Multi View Camera)、PKS-ECU(PKS;Parking Support)、及び又はADAS-ECU(ADAS;Advanced Driver-Assistace System)、及びその他の、自車両が備える種々のデバイスやセンサの動作を制御するECUが含まれ得る。そのようなデバイスやセンサには、自車両を走行させる走行用モータ、アクセルやブレーキなどの操縦器、VSA装置(VSA;Vehicle Stability Asist)、バッテリ、ヘッドランプ等の灯体、ドアウィンドウを駆動するウィンドウモータ、ドアロック機構を駆動するアクチュエータ、ドアロックセンサ、ドア開閉センサ、温度センサ、車外カメラ、車室内カメラなどが含まれ得る。 The ECU 30 includes, for example, an MPU (Map Positioning Unit), an MVC-ECU (MVC; Multi View Camera), a PKS-ECU (PKS; Parking Support), and/or an ADAS-ECU (ADAS; Advanced Driver-Assistance System), and In addition, an ECU that controls the operation of various devices and sensors provided in the host vehicle may be included. Such devices and sensors include driving motors that drive the vehicle, controllers such as accelerators and brakes, VSA devices (VSA: Vehicle Stability Assist), batteries, lights such as headlamps, and door windows that drive Window motors, actuators that drive door lock mechanisms, door lock sensors, door open/close sensors, temperature sensors, exterior cameras, interior cameras, etc. may be included.

ゾーンECU20には、それぞれ、自車両の車体空間の同じ区画内に配された複数のECU30、または同じ区画内に配されたデバイスやセンサの動作を制御する複数のECU30が接続されている。 The zone ECUs 20 are connected to a plurality of ECUs 30 arranged in the same section of the body space of the host vehicle, or a plurality of ECUs 30 controlling the operations of devices and sensors arranged in the same section.

なお、セントラルECU2には、ゾーンECU20に加えて、他の制御装置や機器が接続され得る。そのような制御装置や機器には、ICB(Infotainment Control Box)、スピーカ、マイクロホンと、メーターパネル、ステアリングスイッチ、GNSS(GNSS;Global Navigation Satellite System)センサ、タッチパネルなどが含まれ得る。 In addition to the zone ECU 20, the central ECU 2 may be connected to other control devices and devices. Such control devices and devices may include an ICB (Infotainment Control Box), a speaker, a microphone, a meter panel, a steering switch, a GNSS (Global Navigation Satellite System) sensor, a touch panel, and the like.

通信ライン4a、4b、及び4cは、本実施形態では、例えば、CAN通信規格に準拠した通信を行うCANバスで構成される。以下、通信ライン4a、4b、及び4cを総称して通信ライン4ともいうものとする。ここで、通信ライン4は、本開示における車載ネットワークに対応する。また、通信ライン4に接続されたゾーンECU20は、本開示における、複数の電子制御装置に対応する。 In this embodiment, the communication lines 4a, 4b, and 4c are configured by, for example, a CAN bus that performs communication conforming to the CAN communication standard. Hereinafter, the communication lines 4a, 4b, and 4c are collectively referred to as the communication line 4 as well. Here, the communication line 4 corresponds to the in-vehicle network in the present disclosure. Also, the zone ECU 20 connected to the communication line 4 corresponds to a plurality of electronic control units in the present disclosure.

通信ライン4に接続されたゾーンECU20は、従来技術に従い、送信するデータを、CAN通信規格に従って一つのフレームにより又は複数のフレームの列として、通信ライン4へ送出する。CAN通信規格に従い、送出される各フレームには識別コード(ID)が含まれており、フレームを受信した各ゾーンECU20は、そのフレームに含まれるIDに基づいて、当該フレームが自身に宛てて送信されたフレームであるか否かを判断する。 The zone ECU 20 connected to the communication line 4 transmits data to be transmitted to the communication line 4 in one frame or as a train of multiple frames according to the CAN communication standard according to the prior art. In accordance with the CAN communication standard, each transmitted frame includes an identification code (ID), and each zone ECU 20 that receives the frame transmits the frame to itself based on the ID included in the frame. frame.

図2は、プログラム管理システム100の概略構成を示す図である。
プログラム管理システム100は、制御システム1を構成する各種のECUが実行するプログラムの更新を可能とするシステムである。プログラム管理システム100は、サーバ110、及び、車両診断装置120を含む。
FIG. 2 is a diagram showing a schematic configuration of the program management system 100. As shown in FIG.
The program management system 100 is a system that enables updating of programs executed by various ECUs that constitute the control system 1 . A program management system 100 includes a server 110 and a vehicle diagnostic device 120 .

サーバ110は、通信ネットワークNによって制御システム1と接続される。
通信ネットワークNは、例えば、セルラー通信網、Wi-Fi(登録商標)ネットワーク、Bluetooth(登録商標)、インターネット、WAN(Wide Area Network)、LAN(Local Area Network)、公衆回線、プロバイダ装置、専用回線、基地局等を含み、図2には基地局Bを図示する。制御システム1が備えるTCU12は、基地局Bとの間でセルラー通信を実行することにより、通信ネットワークNを通じて外部装置とデータ通信を実行する。
The server 110 is connected with the control system 1 by a communication network N. FIG.
The communication network N is, for example, a cellular communication network, a Wi-Fi (registered trademark) network, Bluetooth (registered trademark), the Internet, a WAN (Wide Area Network), a LAN (Local Area Network), a public line, a provider device, a dedicated line. , base stations, etc., and base station B is illustrated in FIG. The TCU 12 provided in the control system 1 executes cellular communication with the base station B, thereby executing data communication with an external device through the communication network N. FIG.

制御システム1は、TCU12によってサーバ110と通信を実行することによって、制御システム1の各種のECUが実行するプログラムを更新するための更新データを、サーバ110からダウンロードすることができる。制御システム1が、サーバ110から更新データをダウンロードしてプログラムを更新する手段は、上述したOTAに相当する。サーバ110は、制御システム1の外部装置の一例に対応する。TCU12は、通信部の一例に対応する。 The control system 1 can download update data for updating programs executed by various ECUs of the control system 1 from the server 110 by communicating with the server 110 through the TCU 12 . The means by which the control system 1 downloads the update data from the server 110 to update the program corresponds to the OTA described above. The server 110 corresponds to an example of an external device of the control system 1 . The TCU 12 corresponds to an example of a communication unit.

車両診断装置120は、制御システム1が搭載される車両Vを取り扱う販売店や整備工場に設置される装置である。車両診断装置120は、制御システム1が有する不図示のDLC(Data Link Connector)に、ケーブルによって接続される。制御システム1は、車両診断装置120と通信を実行することにより、制御システム1が実行するプログラムの更新等を行うことができる。 The vehicle diagnosis device 120 is a device installed in a dealer or a maintenance shop that handles the vehicle V on which the control system 1 is mounted. The vehicle diagnostic device 120 is connected by a cable to a DLC (Data Link Connector) (not shown) of the control system 1 . The control system 1 can update a program executed by the control system 1 by communicating with the vehicle diagnosis device 120 .

ここで、ECUのプログラムの更新とは、ECUが実行するプログラムを異なるバージョンのプログラムに書き換えることを指す。ECUのプログラムの更新は、ECUがプログラムを実行する際に参照されるデータ、及び/または、プログラムの実行により生成または変更されるデータを、プログラムとともに書き換えることを含む場合がある。ECUのプログラムの更新は、ECUが実行するプログラムを、同じバージョンのプログラムに書き換えることを含む場合がある。 Here, updating the program of the ECU refers to rewriting the program executed by the ECU into a program of a different version. Updating the program of the ECU may include rewriting, together with the program, data referenced when the ECU executes the program and/or data generated or changed by executing the program. Updating the program of the ECU may include rewriting the program executed by the ECU to the same version of the program.

図3は、制御システム1の要部構成を示すブロック図である。図3は、制御システム1においてプログラムの更新に関わる構成の一部を示しており、制御システム1が図3に示されていない構成を具備することを妨げない。 FIG. 3 is a block diagram showing the main configuration of the control system 1. As shown in FIG. FIG. 3 shows a part of the configuration related to program update in the control system 1, and the control system 1 may be provided with configurations not shown in FIG.

制御システム1において、セントラルECU2、ゾーンECU20、及びECU30を含む各々のECUは、プロセッサと、記憶部と、を備える。プロセッサは、例えば、CPU(Central ProcessingU nit)、MCU(Micro Controller Unit)、MPU(Micro Processor Unit)により構成される。記憶部は、プロセッサが実行するプログラム、及び、プロセッサにより処理されるデータを不揮発的に記憶する。記憶部は、例えば、ROM(Read Only Memory)である。また、ECUは、プログラム及びデータを一時的に記憶するためのワークエリアを形成するRAM(Random Access Memory)を備えてもよい。ECUは、プロセッサ、ROM、RAMを一体に備える集積回路で構成されてもよい。また、ECUは、プロセッサ、ROM及びRAMのそれぞれを独立したハードウェアとして備える構成であってもよい。 In the control system 1, each ECU including the central ECU 2, the zone ECU 20, and the ECU 30 includes a processor and a memory. The processor is composed of, for example, a CPU (Central Processing Unit), an MCU (Micro Controller Unit), and an MPU (Micro Processor Unit). The storage unit non-volatilely stores programs executed by the processor and data processed by the processor. The storage unit is, for example, a ROM (Read Only Memory). The ECU may also include a RAM (Random Access Memory) forming a work area for temporarily storing programs and data. The ECU may be composed of an integrated circuit integrally including a processor, ROM, and RAM. Further, the ECU may have a configuration in which each of the processor, ROM, and RAM is provided as independent hardware.

セントラルECU2は、プログラムの更新に関わる機能部として、更新制御部201、及び、データ処理部211を備える。更新制御部201、及びデータ処理部211は、セントラルECU2が備えるハードウェアであってもよい。また、更新制御部201、及びデータ処理部211は、セントラルECU2のプロセッサがプログラムを実行することによってソフトウェアとハードウェアとの協働により実現される機能部であってもよい。 The central ECU 2 includes an update control unit 201 and a data processing unit 211 as functional units related to program update. The update control unit 201 and the data processing unit 211 may be hardware provided in the central ECU 2 . Also, the update control unit 201 and the data processing unit 211 may be functional units realized by cooperation of software and hardware when the processor of the central ECU 2 executes programs.

更新制御部201は、更新データ受信部202、及び、更新データ制御部203を備える。更新データ受信部202は、TCU12を制御して、サーバ110からプログラムを更新するための更新データを受信する。更新データ制御部203は、更新データ受信部202が受信した更新データを利用して、セントラルECU2を含む各種のECUがプログラムを更新する処理を制御する。 The update control unit 201 has an update data reception unit 202 and an update data control unit 203 . Update data receiving unit 202 controls TCU 12 to receive update data for updating the program from server 110 . The update data control unit 203 uses the update data received by the update data reception unit 202 to control the process of updating the programs of various ECUs including the central ECU 2 .

図3には、更新制御部201による制御の対象として、セントラルECU2、第1ゾーンECU20a、第2ゾーンECU20b、及び、ECU30dを図示するが、これは一例である。更新制御部201の制御の対象となるECUの数に制限はない。更新制御部201は、制御システム1が備える少なくとも一部のECUが実行するプログラムの更新を制御する。更新制御部201は、制御システム1が備える全てのECU、或いは、ほとんど全てのECUによるプログラムの更新を制御してもよい。 Although FIG. 3 illustrates the central ECU 2, the first zone ECU 20a, the second zone ECU 20b, and the ECU 30d as targets to be controlled by the update control unit 201, this is an example. The number of ECUs to be controlled by the update control unit 201 is not limited. The update control unit 201 controls updating of programs executed by at least some of the ECUs included in the control system 1 . The update control unit 201 may control updating of programs by all or almost all ECUs included in the control system 1 .

データ処理部211は、更新実行部212、及び、データ記憶部213を備える。データ記憶部213は、上述した記憶部に相当する。データ記憶部213は、セントラルECU2が実行するプログラム、及び、このプログラムに関連するデータを記憶する。更新実行部212は、データ記憶部213が記憶するプログラムを更新する。更新実行部212は、プログラム更新部の一例に対応する。 The data processing unit 211 has an update execution unit 212 and a data storage unit 213 . The data storage unit 213 corresponds to the storage unit described above. The data storage unit 213 stores programs executed by the central ECU 2 and data related to the programs. Update execution unit 212 updates the program stored in data storage unit 213 . The update execution unit 212 corresponds to an example of a program update unit.

第1ゾーンECU20aは、更新実行部51a、及び、データ記憶部52aを備える。データ記憶部52aは、第1ゾーンECU20aが実行するプログラム、及び、これらのプログラムに関連するデータを記憶する。更新実行部51aは、データ記憶部52aが記憶するプログラムを更新する。
第2ゾーンECU20bは、更新実行部51b、及び、データ記憶部52bを備える。データ記憶部52bは、第2ゾーンECU20bが実行するプログラム、及び、これらのプログラムに関連するデータを記憶する。更新実行部51bは、データ記憶部52bが記憶するプログラムを更新する。
The first zone ECU 20a includes an update executing section 51a and a data storage section 52a. The data storage unit 52a stores programs executed by the first zone ECU 20a and data related to these programs. The update execution unit 51a updates the program stored in the data storage unit 52a.
The second zone ECU 20b includes an update executing section 51b and a data storage section 52b. The data storage unit 52b stores programs executed by the second zone ECU 20b and data related to these programs. The update execution unit 51b updates the program stored in the data storage unit 52b.

ECU30dの具体的な例としては、エントリECUが挙げられる。エントリECUは、自車両の電子キーとの無線通信を行うLF/RFアンテナ(不図示)に接続される。電子キーは、無線通信機能を有する電子デバイスであり、スマートキーやFOBキーと呼ばれる。エントリECUは、他の車載ECUと連携して、車外から制御システム1へのユーザアクセスを処理し、いわゆるスマートエントリの動作を実現する。 A specific example of the ECU 30d is an entry ECU. The entry ECU is connected to an LF/RF antenna (not shown) for wireless communication with the electronic key of the vehicle. An electronic key is an electronic device having a wireless communication function, and is called a smart key or FOB key. The entry ECU processes user access to the control system 1 from outside the vehicle in cooperation with other in-vehicle ECUs, and realizes so-called smart entry operation.

ECU30dは、更新実行部51c、及び、データ記憶部52cを備える。データ記憶部52cは、ECU30dが実行するプログラム、及び、これらのプログラムに関連するデータを記憶する。更新実行部51cは、データ記憶部52cが記憶するプログラムを更新する。 The ECU 30d includes an update executing section 51c and a data storage section 52c. The data storage unit 52c stores programs executed by the ECU 30d and data related to these programs. The update execution unit 51c updates the program stored in the data storage unit 52c.

ここで、更新実行部51a、51b、51cを区別しない場合は更新実行部51と表記する。更新実行部51は、更新実行部51a、51b、51cのほか、図3に示していないECUが備える更新実行部を含む場合がある。同様に、データ記憶部52a、52b、52cを区別しない場合はデータ記憶部52と表記する。データ記憶部52は、データ記憶部52a、52b、52cのほか、図3に示していないECUが備えるデータ記憶部52を含む場合がある。更新実行部51は、プログラム更新部の一例に対応する。 Here, when the update execution units 51a, 51b, and 51c are not distinguished, they are referred to as the update execution unit 51. FIG. The update execution unit 51 may include an update execution unit provided in an ECU (not shown in FIG. 3) in addition to the update execution units 51a, 51b, and 51c. Similarly, data storage units 52a, 52b, and 52c are referred to as data storage unit 52 when they are not distinguished from each other. The data storage unit 52 may include the data storage units 52a, 52b, and 52c as well as the data storage unit 52 provided in the ECU (not shown in FIG. 3). The update execution unit 51 corresponds to an example of a program update unit.

図3には、第1ゾーンECU20aに接続されるECU30の例として、ECU30a、及び、ECU30bを示す。本実施形態において、ECU30aは、自車両の駆動を制御するECUであり、駆動装置と呼ぶことができる。本実施形態において、ECU30aは、自車両の駆動源の操作を受け付けるECUであり、シフト装置25a、及び、駆動源25bを備える。ECU30bは、操縦操作器と呼ぶことができる。ECU30bは、SSSW(Start-Stop SWitch)27a、及び、シフトSW(SWitch)27bを備える。SSSW27a及びシフトSW27bは、車両Vを運転するユーザが操作可能な位置に設けられる。 FIG. 3 shows an ECU 30a and an ECU 30b as examples of the ECUs 30 connected to the first zone ECU 20a. In this embodiment, the ECU 30a is an ECU that controls driving of the own vehicle and can be called a driving device. In this embodiment, the ECU 30a is an ECU that receives the operation of the drive source of the host vehicle, and includes a shift device 25a and a drive source 25b. The ECU 30b can be called a steering operator. The ECU 30b includes an SSSW (Start-Stop Switch) 27a and a shift SW (SWitch) 27b. The SSSW 27a and the shift SW 27b are provided at positions where the user who drives the vehicle V can operate them.

駆動源25bは、車両Vを走行させる動力源であり、モータまたは内燃機関あるいは、モータと内燃機関の組合せである。シフト装置25aは、シフトSW27bの操作に従って、駆動源25bの出力を車両Vの駆動輪に伝達する伝達機構を制御する。駆動源25bがモータのみで構成される場合、シフト装置25aは、伝達機構を制御する装置でなくてもよい。例えば、シフト装置25aは、駆動源25bに電流を供給する回路または駆動源25bの回転を制御する回路であってもよい。 The drive source 25b is a power source that drives the vehicle V, and is a motor, an internal combustion engine, or a combination of a motor and an internal combustion engine. The shift device 25a controls a transmission mechanism that transmits the output of the drive source 25b to the drive wheels of the vehicle V according to the operation of the shift SW 27b. If the drive source 25b is composed only of a motor, the shift device 25a may not be a device that controls the transmission mechanism. For example, the shift device 25a may be a circuit that supplies current to the drive source 25b or a circuit that controls the rotation of the drive source 25b.

図4は、データ記憶部213の構成例を示す模式図である。データ記憶部52は、データ記憶部213と同様の構成とすることができる。 FIG. 4 is a schematic diagram showing a configuration example of the data storage unit 213. As shown in FIG. The data storage unit 52 can have the same configuration as the data storage unit 213 .

データ記憶部213は、上述した記憶部に相当し、不揮発性の記憶領域を有する。データ記憶部213は、プログラム及びデータを書き換え可能に記憶領域に記憶する。データ記憶部213は、例えば、半導体記憶デバイス、或いは、磁気記録装置により構成される。具体的な例として、データ記憶部213は、フラッシュROM、或いは、EEPROM(Electrically Erasable Programmable ROM)で構成される。以下の説明では、データ記憶部213、及びデータ記憶部52が記憶するプログラム及びデータを、プログラムと表記する。すなわち、以下の説明において言及されるプログラムとは、そのプログラムをプロセッサが実行する時に参照され、生成され、或いは処理されるデータを含む。これらのプログラム及びデータの全体は、ソフトウェアと言い換えることができる。すなわち、プログラム管理システム100は、車両Vに搭載された制御システム1のソフトウェアを管理し、更新する機能を有する。 The data storage unit 213 corresponds to the storage unit described above and has a nonvolatile storage area. The data storage unit 213 rewritably stores programs and data in a storage area. The data storage unit 213 is configured by, for example, a semiconductor storage device or a magnetic recording device. As a specific example, the data storage unit 213 is composed of a flash ROM or an EEPROM (Electrically Erasable Programmable ROM). In the following description, the programs and data stored in the data storage unit 213 and the data storage unit 52 are referred to as programs. That is, a program referred to in the following description includes data that is referenced, generated, or processed when the program is executed by a processor. The entirety of these programs and data can be called software. That is, the program management system 100 has a function of managing and updating the software of the control system 1 installed in the vehicle V. FIG.

データ記憶部213の記憶領域は論理的に複数の領域に区分されている。データ記憶部213の各領域、及び、データ記憶部213に記憶されたプログラムは、データ記憶部213のアドレスによって特定される。 The storage area of the data storage unit 213 is logically divided into a plurality of areas. Each area of the data storage unit 213 and the programs stored in the data storage unit 213 are specified by addresses of the data storage unit 213 .

データ記憶部213には、ブートセクタ61、A面ブートイメージ記憶領域62、B面ブートイメージ記憶領域63、共通領域64、予備領域65、チェック用領域66、プログラム記憶第1領域70、及び、プログラム記憶第2領域75が設けられる。共通領域64は、プログラム記憶第3領域の一例に対応する。 The data storage unit 213 includes a boot sector 61, an A-side boot image storage area 62, a B-side boot image storage area 63, a common area 64, a spare area 65, a check area 66, a program storage first area 70, and a program A second storage area 75 is provided. The common area 64 corresponds to an example of a third program storage area.

上述のように、データ記憶部52はデータ記憶部213と同様に構成される。すなわち、データ記憶部52には、ブートセクタ61、A面ブートイメージ記憶領域62、B面ブートイメージ記憶領域63、共通領域64、予備領域65、チェック用領域66、プログラム記憶第1領域70、及び、プログラム記憶第2領域75が設けられる。ここでは、一例として、セントラルECU2がデータ記憶部213を利用することについて説明する。第1ゾーンECU20aによるデータ記憶部52aの利用、第2ゾーンECU20bによるデータ記憶部52bの利用、及び、ECU30dによるデータ記憶部52cの利用は、データ記憶部213の利用と同様に実行される。その他のECUによるデータ記憶部52の利用も同様である。 As described above, data storage unit 52 is configured similarly to data storage unit 213 . That is, the data storage unit 52 includes a boot sector 61, an A-side boot image storage area 62, a B-side boot image storage area 63, a common area 64, a spare area 65, a check area 66, a program storage first area 70, and , a program storage second area 75 is provided. Here, as an example, the use of the data storage unit 213 by the central ECU 2 will be described. The use of the data storage unit 52a by the first zone ECU 20a, the use of the data storage unit 52b by the second zone ECU 20b, and the use of the data storage unit 52c by the ECU 30d are performed in the same manner as the use of the data storage unit 213. The same applies to the use of the data storage unit 52 by other ECUs.

データ記憶部213の記憶領域は、A面とB面とに分類される。A面にはA面ブートイメージ記憶領域62及びプログラム記憶第1領域70が属する。B面にはB面ブートイメージ記憶領域63及びプログラム記憶第2領域75が属する。ブートセクタ61、共通領域64、予備領域65及びチェック用領域66はA面とB面のいずれにも属しない。 The storage area of the data storage unit 213 is classified into an A side and a B side. The A-side boot image storage area 62 and the program storage first area 70 belong to the A-side. A B-side boot image storage area 63 and a second program storage area 75 belong to the B-side. The boot sector 61, common area 64, spare area 65 and check area 66 belong to neither the A side nor the B side.

A面の記憶領域と、B面の記憶領域とは、互いに独立してプログラムを記憶する。セントラルECU2は、A面、及び、B面のいずれか一方の記憶領域に記憶されたプログラムを利用して、セントラルECU2に求められる各種の動作を実行できる。換言すれば、セントラルECU2は、データ記憶部213においてA面またはB面のいずれか一方に、プログラムが正常に記憶されていれば、セントラルECU2としての動作を実行できる。 The A-side storage area and the B-side storage area store programs independently of each other. The central ECU 2 can perform various operations required of the central ECU 2 using programs stored in either one of the A-side and B-side storage areas. In other words, the central ECU 2 can operate as the central ECU 2 if the program is normally stored in either the A side or the B side of the data storage unit 213 .

更新実行部212は、データ記憶部213が記憶しているプログラムを更新する場合、A面及びB面のいずれかを選択する。
一例として、更新実行部212がA面を選択してプログラムを更新する場合を説明する。この例では、更新実行部212は、プログラム記憶第1領域70に新しいプログラムを書き込む処理を実行し、その後、正常にプログラムが書き込まれたことを確認する処理を行う。ここで、プログラム記憶第1領域70へのプログラムの書き込みが失敗した場合、更新実行部212によって、プログラムの更新をやり直す必要がある。セントラルECU2は、プログラム記憶第1領域70のプログラムの更新が正常に完了するまで、プログラム記憶第1領域70に書き込まれたプログラムを実行して車両Vを制御することはできない。しかし、セントラルECU2は、プログラム記憶第2領域75に記憶されているプログラムを実行することにより、車両Vを制御できる。更新実行部212がB面を選択する場合も同様である。このように、データ記憶部213がA面とB面のいずれか一方に対するプログラムの更新を行う場合、他方に実行可能なプログラムが記憶されているので、プログラムの更新の成否が車両Vの制御に大きな影響を与えない。従って、プログラムを更新するタイミングに関する制約が緩和され、例えば、車両Vが走行している間にプログラムを更新することも不可能ではない。
When updating the program stored in the data storage unit 213, the update execution unit 212 selects either the A side or the B side.
As an example, a case where the update execution unit 212 selects side A and updates the program will be described. In this example, the update execution unit 212 executes processing of writing a new program into the first program storage area 70, and then executes processing of confirming that the program has been written normally. Here, if writing of the program to the first program storage area 70 fails, the update execution unit 212 needs to update the program again. The central ECU 2 cannot control the vehicle V by executing the program written in the first program storage area 70 until the update of the program in the first program storage area 70 is normally completed. However, the central ECU 2 can control the vehicle V by executing the program stored in the second program storage area 75 . The same applies when the update execution unit 212 selects the B side. In this way, when the data storage unit 213 updates the program for either the A side or the B side, the executable program is stored in the other side. do not have a large impact. Therefore, restrictions on the timing of updating the program are eased, and it is not impossible to update the program while the vehicle V is running, for example.

ブートセクタ61は、ブートローダを記憶する。ブートローダは、セントラルECU2が起動する際に、セントラルECU2のプロセッサによって最初に実行されるプログラムである。プロセッサは、ブートローダを実行することによって、セントラルECU2の基本的な動作に必要な処理を実行する。ブートセクタ61はアクティブプログラム指定データ61aを記憶する。アクティブプログラム指定データ61aは、ブートローダに含まれ、或いは、ブートローダが参照する領域に記憶される。アクティブプログラム指定データ61aは、ブートローダに続いてセントラルECU2が実行するプログラムが、A面のプログラムであるか、B面のプログラムであるかを指定するデータである。具体的には、アクティブプログラム指定データ61aは、A面ブートイメージ記憶領域62に記憶されたブートイメージのアドレス、或いは、B面ブートイメージ記憶領域63に記憶されたブートイメージのアドレスである。 Boot sector 61 stores a boot loader. A boot loader is a program that is first executed by the processor of the central ECU 2 when the central ECU 2 starts up. The processor executes the processes necessary for the basic operation of the central ECU 2 by executing the bootloader. Boot sector 61 stores active program designation data 61a. The active program designation data 61a is contained in the bootloader or stored in an area referred to by the bootloader. The active program designation data 61a is data for designating whether the program executed by the central ECU 2 following the bootloader is the A-side program or the B-side program. Specifically, the active program designation data 61 a is the address of the boot image stored in the A-side boot image storage area 62 or the address of the boot image stored in the B-side boot image storage area 63 .

ブートイメージは、セントラルECU2のプロセッサがブートローダに続いて実行する基本制御プログラムである。A面ブートイメージ記憶領域62は、プログラム記憶第1領域70に記憶されたプログラムを実行する場合に利用されるブートイメージを記憶する。A面ブートイメージ記憶領域62は、先頭アドレス62aを記憶する。先頭アドレス62aは、例えば、プログラム記憶第1領域70に含まれるA面プログラム領域71に記憶されたプログラムの先頭のアドレスである。B面ブートイメージ記憶領域63は、プログラム記憶第2領域75に記憶されたプログラムを実行する場合に利用されるブートイメージを記憶する。B面ブートイメージ記憶領域63は、先頭アドレス63aを記憶する。先頭アドレス63aは、例えば、プログラム記憶第2領域75に含まれるB面プログラム領域76に記憶されたプログラムの先頭のアドレスである。 A boot image is a basic control program which the processor of central ECU2 runs following a boot loader. The A-side boot image storage area 62 stores a boot image used when executing the program stored in the first program storage area 70 . The A-side boot image storage area 62 stores a start address 62a. The start address 62a is, for example, the start address of the program stored in the A-side program area 71 included in the first program storage area 70. FIG. The B-side boot image storage area 63 stores a boot image used when executing the program stored in the second program storage area 75 . The B-side boot image storage area 63 stores a start address 63a. The start address 63a is, for example, the start address of the program stored in the B-side program area 76 included in the second program storage area 75. FIG.

プログラム記憶第1領域70は、A面プログラム領域71、予備領域72、A面ユーザ領域73、及び、予備領域74を含む。A面プログラム領域71及びA面ユーザ領域73は、プログラムを記憶する。 The program storage first area 70 includes an A-side program area 71 , a spare area 72 , an A-side user area 73 and a spare area 74 . The A-side program area 71 and the A-side user area 73 store programs.

A面プログラム領域71及びA面ユーザ領域73は、ECUが車両Vを制御するためのプログラムを記憶するための領域である。A面ユーザ領域73は、ECUが実行するプログラムであって、車両Vの制御とは直接関わらないプログラムを記憶してもよい。 The A-side program area 71 and the A-side user area 73 are areas for storing programs for controlling the vehicle V by the ECU. The A-side user area 73 may store a program that is executed by the ECU and is not directly related to the control of the vehicle V. FIG.

予備領域72は、A面プログラム領域71の記憶容量を拡張するために利用される。更新実行部212がA面プログラム領域71にプログラムを記憶させる処理において、A面プログラム領域71の記憶容量が足りない場合に、予備領域72が、A面プログラム領域71の拡張領域となる。この場合、更新実行部212は、A面プログラム領域71と予備領域72にプログラムを記憶させる。予備領域74は、A面ユーザ領域73の記憶容量を拡張するために利用される。更新実行部212がA面ユーザ領域73にプログラムを記憶させる処理において、A面ユーザ領域73の記憶容量が足りない場合に、予備領域74が、A面ユーザ領域73の拡張領域となる。この場合、更新実行部212は、A面ユーザ領域73と予備領域74にプログラムを記憶させる。予備領域72、74はプログラム予備記憶第1領域の一例に対応する。 The spare area 72 is used to extend the storage capacity of the A-side program area 71 . When the update execution unit 212 stores a program in the A-side program area 71 and the storage capacity of the A-side program area 71 is insufficient, the spare area 72 becomes an extended area of the A-side program area 71 . In this case, the update executing section 212 stores the program in the A-side program area 71 and the spare area 72 . The spare area 74 is used to expand the storage capacity of the A-side user area 73 . When the update execution unit 212 stores a program in the A-side user area 73, the spare area 74 becomes an extended area of the A-side user area 73 when the storage capacity of the A-side user area 73 is insufficient. In this case, the update executing section 212 stores the program in the A-side user area 73 and the spare area 74 . Spare areas 72 and 74 correspond to an example of a program spare storage first area.

プログラム記憶第2領域75は、B面プログラム領域76、予備領域77、B面ユーザ領域78、及び、予備領域79を含む。B面プログラム領域76及びB面ユーザ領域78は、プログラムを記憶する。 The program storage second area 75 includes a B-side program area 76 , a spare area 77 , a B-side user area 78 and a spare area 79 . Side B program area 76 and side B user area 78 store programs.

B面プログラム領域76及びB面ユーザ領域78は、ECUが車両Vを制御するためのプログラムを記憶するための領域である。B面ユーザ領域78は、ECUが実行するプログラムであって、車両Vの制御とは直接関わらないプログラムを記憶してもよい。 The B-side program area 76 and the B-side user area 78 are areas for storing programs for controlling the vehicle V by the ECU. The B-side user area 78 may store a program that is executed by the ECU and is not directly related to control of the vehicle V. FIG.

予備領域77は、B面プログラム領域76の記憶容量を拡張するために利用される。更新実行部212がB面プログラム領域76にプログラムを記憶させる処理において、B面プログラム領域76の記憶容量が足りない場合に、予備領域77が、B面プログラム領域76の拡張領域となる。この場合、更新実行部212は、B面プログラム領域76と予備領域77にプログラムを記憶させる。予備領域79は、B面ユーザ領域78の記憶容量を拡張するために利用される。更新実行部212がB面ユーザ領域78にプログラムを記憶させる処理において、B面ユーザ領域78の記憶容量が足りない場合に、予備領域79が、B面ユーザ領域78の拡張領域となる。この場合、更新実行部212は、B面ユーザ領域78と予備領域79にプログラムを記憶させる。予備領域77、79はプログラム予備記憶第1領域の一例に対応する。 The spare area 77 is used to extend the storage capacity of the B-side program area 76 . When the update execution unit 212 stores a program in the B-side program area 76 and the storage capacity of the B-side program area 76 is insufficient, the spare area 77 becomes an extended area of the B-side program area 76 . In this case, the update executing section 212 stores the program in the B-side program area 76 and the spare area 77 . The spare area 79 is used to expand the storage capacity of the B-side user area 78 . When the update execution unit 212 stores a program in the B-side user area 78 and the storage capacity of the B-side user area 78 is insufficient, the spare area 79 becomes an extended area of the B-side user area 78 . In this case, the update executing section 212 stores the program in the B-side user area 78 and the spare area 79 . Spare areas 77 and 79 correspond to an example of a program spare storage first area.

共通領域64は、車両Vの制御に関与しないプログラムを記憶するための記憶領域である。予備領域65は、共通領域64の記憶容量を拡張するために利用される。更新実行部212が共通領域64にプログラムを記憶させる処理において、B面ユーザ領域78の記憶容量が足りない場合に、予備領域65が共通領域64の拡張領域となる。チェック用領域66は、データ記憶部213が記憶するプログラムの誤り検出用のデータを記憶する。予備領域65はプログラム予備記憶第3領域の一例に対応する。 Common area 64 is a storage area for storing programs that are not involved in vehicle V control. The spare area 65 is used to extend the storage capacity of the common area 64 . When the update execution unit 212 stores the program in the common area 64 and the storage capacity of the B-side user area 78 is insufficient, the spare area 65 becomes an extended area of the common area 64 . The check area 66 stores program error detection data stored in the data storage unit 213 . The spare area 65 corresponds to an example of a third program spare storage area.

A面プログラム領域71、A面ユーザ領域73、B面プログラム領域76、及びB面ユーザ領域78が記憶するプログラムは、車両Vの制御を行うためのプログラムである。これを、車両制御プログラムと呼ぶ。車両制御プログラムは、車両Vの走行に関する制御、及び、車両Vの走行に際して必須の制御に関与する。車両制御プログラムを実行する主体は、セントラルECU2、第1ゾーンECU20a、第2ゾーンECU20b、ECU30d、及び、その他のECUであり、これらは制御部の一例に対応する。例えば、セントラルECU2が、図5-図9を参照して説明する動作を実行するためのプログラムは、車両制御プログラムに含まれる。従って、データ記憶部213は、本発明の記録媒体の一例に相当する。制御システム1がサーバ110からダウンロードするプログラムのうち、車両制御プログラムを更新するためのプログラム及びデータを、車両制御更新プログラムと呼ぶ。これらのプログラムを記憶する構成を有する制御システム1は、プログラム管理装置の一例に対応する。 The programs stored in the A-side program area 71, the A-side user area 73, the B-side program area 76, and the B-side user area 78 are programs for controlling the vehicle V. FIG. This is called a vehicle control program. The vehicle control program is involved in control related to running of the vehicle V and control essential when the vehicle V runs. The subjects that execute the vehicle control program are the central ECU 2, the first zone ECU 20a, the second zone ECU 20b, the ECU 30d, and other ECUs, which correspond to an example of the control section. For example, a program for the central ECU 2 to execute the operations described with reference to FIGS. 5 to 9 is included in the vehicle control program. Therefore, the data storage unit 213 corresponds to an example of the recording medium of the present invention. Of the programs that the control system 1 downloads from the server 110, the program and data for updating the vehicle control program are called a vehicle control update program. A control system 1 configured to store these programs corresponds to an example of a program management device.

共通領域64が記憶するプログラムを、非関与プログラムと呼ぶ。非関与プログラムは、制御システム1が実行する処理のうち、車両Vの走行に関する制御、及び、車両Vの走行に際して必須の制御に関与しない。
制御システム1がサーバ110からダウンロードするプログラムのうち、非関与プログラムを更新するためのプログラム及びデータを、非制御更新プログラムと呼ぶ。
Programs stored in common area 64 are referred to as non-participating programs. Of the processes executed by the control system 1, the non-participating program does not participate in the control related to the travel of the vehicle V and the control essential for the travel of the vehicle V. FIG.
Of the programs that the control system 1 downloads from the server 110, the programs and data for updating the non-participation programs are called non-control update programs.

ここで、車両Vの走行に関する制御とは、車両Vの加速、減速、停止、操舵に関係する制御を含む。例えば、車両Vの走行に関する制御は、ユーザが車両Vを操縦または運転するための操作を行う場合に、この操作に基づいて車両Vを制御することを含む。また、車両Vの走行に関する制御は、ADAS機能やPKS機能がユーザの操作に基づくことなく実行する制御を含む。また、車両Vの走行に際して必須の制御とは、車両Vが走行するために必要な補機類を動作させるための制御を含む。補機類とは、例えば、メーターパネル、車両Vの灯体、ワイパー、ウィンドウウォッシャー、空調装置等である。車両Vの走行に際して必須の制御は、ADAS機能やPKS機能を実行するためにカメラやレーダー装置を制御することを含む。 Here, the control related to running of the vehicle V includes control related to acceleration, deceleration, stopping, and steering of the vehicle V. FIG. For example, the control related to traveling of the vehicle V includes controlling the vehicle V based on the user's operation to steer or drive the vehicle. Further, the control related to running of the vehicle V includes control executed by the ADAS function and the PKS function without being based on the user's operation. Further, the control that is essential when the vehicle V runs includes control for operating auxiliary machines necessary for the vehicle V to run. The auxiliaries are, for example, a meter panel, a lamp body of the vehicle V, a wiper, a window washer, an air conditioner, and the like. Controls essential for running the vehicle V include controlling cameras and radar devices to perform ADAS and PKS functions.

共通領域64が記憶する非関与プログラムは、例えば、制御システム1が提供するインフォテイメント機能に関するプログラムを含む。インフォテイメント機能に関するプログラムとは、例えば、エンターテイメントに関するアプリケーションプログラムをいう。具体的には、インフォテイメント機能として、音楽再生、ラジオ放送の受信および聴取、電子メールの送受信、テレビ放送の受信および視聴、インターネット等のネットワークを利用した情報検索、ビデオゲームの実行、及び、その他の娯楽に関する機能等が挙げられる。また、例えば、非関与プログラムは、車両Vに搭載されたタッチパネルの操作に基づいて、車両Vの外部のサーバと通信することによって、外部サービス事業者に対し注文または予約を行う機能に関するプログラムを含む。外部サービス事業者とは、例えば、飲食物を含む物品の販売、飲食物を含む物品の配達、洗車サービス、クリーニングサービス、チケット販売またはチケット予約サービス、その他のサービスを提供する事業者である。 Non-participating programs stored in common area 64 include, for example, programs related to infotainment functions provided by control system 1 . A program related to the infotainment function is, for example, an application program related to entertainment. Specifically, as infotainment functions, music playback, reception and listening to radio broadcasts, sending and receiving e-mails, reception and viewing of television broadcasts, information retrieval using networks such as the Internet, execution of video games, and others functions related to the entertainment of Also, for example, the non-participating program includes a program related to the function of placing an order or making a reservation with an external service provider by communicating with a server outside the vehicle V based on the operation of the touch panel mounted on the vehicle V. . An external service provider is, for example, a provider of sales of goods including food and drink, delivery of goods including food and drink, car wash service, cleaning service, ticket sales or ticket reservation service, and other services.

A面ユーザ領域73、及び、B面ユーザ領域78が記憶するプログラムは、車両Vに乗車するユーザの指示に従ってインストールされるプログラムである。例えば、ユーザがタッチパネルを操作することによって、インストールを希望するプログラムを指定し、指定したプログラムのインストールを指示した場合、更新データ受信部202は、指定されたプログラムをサーバ110からダウンロードする。更新データ制御部203は、更新データ受信部202によりダウンロードされたプログラムを、このプログラムを実行するECUが備えるデータA面ユーザ領域73、または、B面ユーザ領域78に記憶させる。 The programs stored in the A-side user area 73 and the B-side user area 78 are programs installed according to the instructions of the user who gets into the vehicle V. FIG. For example, when the user designates a desired program to be installed by operating the touch panel and instructs installation of the designated program, the update data receiving unit 202 downloads the designated program from the server 110 . Update data control unit 203 stores the program downloaded by update data receiving unit 202 in data A-side user area 73 or B-side user area 78 provided in the ECU executing this program.

A面ユーザ領域73、及び、B面ユーザ領域78に記憶されるプログラムは、特に、車両Vの製造事業者または車両Vの販売事業者によって指定されたプログラムである。この種のプログラムは、例えば、車両Vの製造事業者または車両Vの販売事業者によって、車両Vにインストールすることが公式に認定または審査されたプログラムである。 The programs stored in the A-side user area 73 and the B-side user area 78 are programs specified by the manufacturer of the vehicle V or the dealer of the vehicle V in particular. A program of this kind is, for example, a program that has been officially certified or reviewed for installation in the vehicle V by the manufacturer of the vehicle V or the dealer of the vehicle V. FIG.

A面ユーザ領域73、及び、B面ユーザ領域78が記憶するプログラムは、非関与プログラムを含んでもよい。すなわち、A面ユーザ領域73及びB面ユーザ領域78は、車両制御プログラム及び非関与プログラムのうち、車両Vの製造事業者または車両Vの販売事業者によって指定されたプログラムを記憶する。一方、車両Vの製造事業者または車両Vの販売事業者によって指定されていないプログラムは、A面ユーザ領域73及びB面ユーザ領域78に記憶されない。このようなプログラムを、サードパーティープログラムと呼ぶ。サードパーティープログラムは、共通領域64に記憶される。共通領域64は、サードパーティーの非関与プログラムを記憶するための領域ということができる。 The programs stored by A-side user area 73 and B-side user area 78 may include non-participating programs. In other words, the A-side user area 73 and the B-side user area 78 store programs specified by the vehicle V manufacturer or the vehicle V dealer among the vehicle control programs and non-participating programs. On the other hand, programs not specified by the manufacturer of the vehicle V or the dealer of the vehicle V are not stored in the A-side user area 73 and the B-side user area 78 . Such programs are called third party programs. Third party programs are stored in common area 64 . The common area 64 can be said to be an area for storing third party non-participating programs.

図5は、プログラム管理システム100の動作を示すシーケンス図である。
ステップSA11~SA20は制御システム1の動作を示し、ステップSB11~SB14はサーバ110の動作を示す。図6、図7、図8及び図9は、図5のステップSA20における制御システム1の動作を詳細に示すフローチャートである。
図5~図9には、制御システム1がプログラムを更新する動作に関連する処理を示す。
FIG. 5 is a sequence diagram showing operations of the program management system 100. As shown in FIG.
Steps SA11-SA20 show the operation of the control system 1, and steps SB11-SB14 show the operation of the server 110. FIG. 6, 7, 8 and 9 are flow charts showing in detail the operation of the control system 1 in step SA20 of FIG.
5 to 9 show processing related to the operation of the control system 1 updating the program.

図5において、ステップSA11~SA19は更新データ受信部202によって実行される。制御システム1は、車両Vの車両情報を取得する(ステップSA11)。車両情報は、制御システム1に適合するプログラムの種類、及び、プログラムのバージョンをサーバ110が特定するための情報である。車両情報は、例えば、車両Vの車両識別番号、制御システム1が有するECUの種類、ECUが搭載するプログラムのバージョンを含む。制御システム1は、制御システム1が有する情報、及び、制御システム1に接続されたECUが有する情報を取得し、1まとまりの車両情報にまとめる。 In FIG. 5, steps SA11 to SA19 are executed by update data receiving section 202. FIG. The control system 1 acquires vehicle information of the vehicle V (step SA11). The vehicle information is information for the server 110 to identify the type of program and version of the program compatible with the control system 1 . The vehicle information includes, for example, the vehicle identification number of the vehicle V, the type of ECU that the control system 1 has, and the version of the program installed in the ECU. The control system 1 acquires information possessed by the control system 1 and information possessed by the ECUs connected to the control system 1, and organizes them into one unit of vehicle information.

制御システム1は、サーバ110に対してプログラム更新情報を要求する(ステップSA12)。プログラム更新情報は、制御システム1が既に記憶しているプログラムに関する情報である。詳細には、プログラム更新情報は、制御システム1が既に記憶しているプログラムのうち更新可能なプログラムの名称、及び、バージョンを含む。また。プログラム更新情報は、制御システム1が使用可能なプログラムであって、制御システム1に記憶されていないプログラムに関する情報を含んでもよい。この場合、プログラム更新情報は、制御システム1で使用可能なプログラムの名称、及び、プログラムの概要を示す情報を含む。ステップSA12で、制御システム1は、プログラム更新情報を要求する際に、ステップSA11で取得した車両情報を、サーバ110に送信する。プログラム更新情報の要求、及び、車両Vの車両情報は、サーバ110によって受信される。 The control system 1 requests program update information from the server 110 (step SA12). The program update information is information about programs already stored in the control system 1 . Specifically, the program update information includes the names and versions of updatable programs among programs already stored in the control system 1 . Also. The program update information is a program that can be used by the control system 1 and may include information on a program that is not stored in the control system 1 . In this case, the program update information includes the name of the program that can be used in the control system 1 and information indicating the outline of the program. At step SA12, the control system 1 transmits the vehicle information acquired at step SA11 to the server 110 when requesting the program update information. Requests for program update information and vehicle information for vehicle V are received by server 110 .

サーバ110は、制御システム1が送信した要求、及び、車両Vの車両情報に基づき、車両Vに対応するプログラムを、不図示のデータベースにおいて探索する(ステップSB11)。このデータベースは、サーバ110が、車両Vを含む複数の車両に対応するプログラムを記憶する。このデータベースは、サーバ110が備えていてもよいし、サーバ110に通信ネットワークNを介して接続されるデータベースサーバであってもよい。 The server 110 searches a database (not shown) for a program corresponding to the vehicle V based on the request sent by the control system 1 and the vehicle information of the vehicle V (step SB11). In this database, server 110 stores programs corresponding to a plurality of vehicles, including vehicle V. FIG. The database may be provided by the server 110 or may be a database server connected to the server 110 via the communication network N. FIG.

サーバ110は、データベースを探索した結果に基づいて、プログラム更新情報を生成し(ステップSB11)、プログラム更新情報を制御システム1に送信する(ステップSB12)。このプログラム更新情報は、制御システム1によって受信される。 Server 110 generates program update information based on the results of searching the database (step SB11), and transmits the program update information to control system 1 (step SB12). This program update information is received by the control system 1 .

制御システム1は、サーバ110から受信したプログラム更新情報に基づいて、受信可能リストを更新する(ステップSA13)。受信可能リストは、制御システム1がサーバ110からダウンロードすることが可能なプログラムのリストである。受信可能リストは、制御システム1が既に記憶しているプログラムのうち更新可能なプログラム、及び、制御システム1が使用可能なプログラムであって、制御システム1に記憶されていないプログラムを含むリストである。受信可能リストは、プログラムの名称、及び、プログラムの種類または概要を含む。 Control system 1 updates the receivable list based on the program update information received from server 110 (step SA13). The receivable list is a list of programs that control system 1 can download from server 110 . The receivable list is a list including programs that can be updated among the programs already stored in the control system 1 and programs that are usable by the control system 1 and are not stored in the control system 1. . The receivable list includes program names and program types or outlines.

制御システム1、及び、サーバ110は、ステップSA11~SA13及びステップSB11~SB13の動作を、予め設定された周期で繰り返し実行する。これにより、制御システム1は、車両Vに対応するプログラムに関する最新の受信可能リストを保持する状態を、維持できる。 The control system 1 and the server 110 repeatedly execute the operations of steps SA11 to SA13 and steps SB11 to SB13 at preset intervals. Thereby, the control system 1 can maintain a state of holding the latest receivable list regarding the program corresponding to the vehicle V. FIG.

制御システム1におけるプログラムの更新は、ユーザがタッチパネル等を操作することによって開始される。ユーザがプログラムの更新に関する操作を行うと、制御システム1は、ユーザの操作を受け付ける(ステップSA14)。制御システム1は、ユーザの操作に対応して、受信可能リストを、例えば車両Vに搭載されたディスプレイに表示する(ステップSA15)。ここで、制御システム1は、ユーザが、プログラムのダウンロードが指示されたか否かを判定する(ステップSA16)。ユーザは、例えばタッチパネルを操作することによって、ダウンロードするプログラムを選択し、選択したプログラムのダウンロードを指示する。プログラムのダウンロードが指示されない間(ステップSA16;NO)、制御システム1はステップSA16で待機する。 The update of the program in the control system 1 is started by the user operating the touch panel or the like. When the user performs an operation related to updating the program, the control system 1 accepts the user's operation (step SA14). The control system 1 displays the receivable list, for example, on a display mounted on the vehicle V in response to the user's operation (step SA15). Here, the control system 1 determines whether or not the user instructs to download the program (step SA16). The user selects a program to be downloaded by operating the touch panel, for example, and instructs download of the selected program. The control system 1 waits in step SA16 while no instruction to download the program is given (step SA16; NO).

プログラムのダウンロードが指示された場合(ステップSA16;YES)、制御システム1は、ダウンロードするプログラムを、ユーザの指示に基づき特定する(ステップSA17)。制御システム1は、特定したプログラムのダウンロードを、サーバ110に対して要求する(ステップSA18)。制御システム1によるダウンロードの要求は、サーバ110によって受信される。 If the download of the program is instructed (step SA16; YES), the control system 1 identifies the program to be downloaded based on the user's instruction (step SA17). Control system 1 requests server 110 to download the specified program (step SA18). A request for download by the control system 1 is received by the server 110 .

サーバ110は、制御システム1によって要求されたプログラムを制御システム1に送信する(ステップSB14)。サーバ110が送信するプログラムは、車両制御プログラムの更新または新規のインストールをするための車両制御更新プログラム、及び、非関与プログラムの更新または新規のインストールをするための非制御更新プログラムの少なくともいずれかを含む。制御システム1は、サーバ110が送信するプログラムをダウンロードする(ステップSA19)。続いて、制御システム1は、インストール処理を実行する(ステップSA20)。インストール処理は、ステップSA19でダウンロードしたプログラムをデータ記憶部52またはデータ記憶部213に記憶させることを含む。また、インストール処理は、車両制御更新プログラム及び/または非制御更新プログラムを実行することによって、車両制御プログラム及び/または非関与プログラムをECUによって実行可能な状態にする処理を含む。インストールの後、データ記憶部52またはデータ記憶部213には、ECUによって実行可能な状態でプログラムが記憶される。 Server 110 transmits the program requested by control system 1 to control system 1 (step SB14). The program transmitted by the server 110 includes at least one of a vehicle control update program for updating or newly installing a vehicle control program and a non-controlling update program for updating or newly installing a non-participating program. include. The control system 1 downloads the program transmitted by the server 110 (step SA19). Subsequently, the control system 1 executes installation processing (step SA20). The installation process includes storing the program downloaded in step SA19 in data storage unit 52 or data storage unit 213. FIG. The installation process also includes executing the vehicle control update program and/or the non-control update program to render the vehicle control program and/or non-participation program executable by the ECU. After installation, the program is stored in the data storage unit 52 or the data storage unit 213 in a state executable by the ECU.

図6及び図7には、インストール処理の詳細を示す。図6及び図7において、後述する第1処理および第2処理は、更新実行部212または更新実行部51によって実行され、それ以外の動作は更新データ制御部203によって実行される。以下の説明では、更新実行部212が第1処理および第2処理を実行する場合を例に挙げて説明するが、更新実行部51も同様の動作を実行可能である。 6 and 7 show details of the installation process. 6 and 7, first processing and second processing to be described later are executed by the update execution unit 212 or the update execution unit 51, and the other operations are executed by the update data control unit 203. FIG. In the following description, a case where the update execution unit 212 executes the first process and the second process will be described as an example, but the update execution unit 51 can also execute similar operations.

更新データ制御部203は、制御システム1にインストールするプログラムが複数であるか否かを判定する(ステップSA31)。例えば、更新データ制御部203は、ステップSA19でダウンロードされたプログラムが複数ある場合、インストールするプログラムが複数であると判定する(ステップSA31;YES)。この場合、更新データ制御部203は、後述するステップSA51に移行する。 The update data control unit 203 determines whether or not there are a plurality of programs to be installed in the control system 1 (step SA31). For example, when there are multiple programs downloaded in step SA19, the update data control unit 203 determines that there are multiple programs to be installed (step SA31; YES). In this case, the update data control unit 203 proceeds to step SA51, which will be described later.

インストールするプログラムが1つであると判定した場合(ステップSA31;NO)、更新データ制御部203は、インストールするプログラムが非制御更新プログラムであるか否かを判定する(ステップSA32)。インストールするプログラムが非制御更新プログラムでない場合(ステップSA32;NO)、更新データ制御部203は、プログラムをインストールする対象のECUを特定する(ステップSA33)。ステップSA33で、更新データ制御部203は、セントラルECU2、第1ゾーンECU20a、第2ゾーンECU20b、ECU30d、及び、その他のECUの中から、インストールを行うECUを選択する。続いて、更新データ制御部203によって特定されたECUによって、車両制御更新プログラムをインストールする第1処理(ステップSA34)が実行される。第1処理の詳細については図8を参照して後述する。第1処理の実行後、制御システム1は、本処理を終了する。 When it is determined that there is one program to be installed (step SA31; NO), the update data control unit 203 determines whether or not the program to be installed is an uncontrolled update program (step SA32). If the program to be installed is not the non-controlled update program (step SA32; NO), update data control unit 203 identifies the target ECU for program installation (step SA33). At step SA33, the update data control unit 203 selects an ECU to be installed from among the central ECU 2, the first zone ECU 20a, the second zone ECU 20b, the ECU 30d, and other ECUs. Subsequently, the ECU identified by update data control unit 203 executes a first process (step SA34) of installing the vehicle control update program. Details of the first process will be described later with reference to FIG. After executing the first process, the control system 1 ends this process.

一方、インストールするプログラムが非制御更新プログラムである場合(ステップSA32;YES)、更新データ制御部203は、プログラムをインストールする対象のECUを特定する(ステップSA35)。ステップSA35の動作はステップSA33と同様である。
更新データ制御部203は、ステップSA35で特定したECUに第2処理を実行させるため、第2処理を待機する待機状態に移行する(ステップSA36)。第2処理は、更新実行部212または更新実行部51が非制御更新プログラムをインストールする処理である。更新データ制御部203は、待機状態において、車両Vをイグニッションオフ(IG_OFF)状態にする操作が行われたか否かを判定する(ステップSA37)。
On the other hand, if the program to be installed is a non-controlled update program (step SA32; YES), update data control unit 203 identifies the target ECU for program installation (step SA35). The operation of step SA35 is similar to that of step SA33.
The update data control unit 203 shifts to a standby state to wait for the second process in order to cause the ECU identified in step SA35 to execute the second process (step SA36). The second process is a process in which the update execution unit 212 or the update execution unit 51 installs the uncontrolled update program. The update data control unit 203 determines whether or not an operation has been performed to turn the ignition off (IG_OFF) of the vehicle V in the standby state (step SA37).

車両Vのイグニッションオフとは、車両Vの駆動源25bが停止された状態をいう。例えば、駆動源25bが内燃機関を含む場合、イグニッションオフの状態とは、内燃機関が動作を停止した状態である。また、例えば、駆動源25bがモータを含む場合、イグニッションオフの状態とは、モータへの電力供給が停止し、かつ、モータの駆動状態の制御が停止した状態である。イグニッションオフ状態は、電源オフ状態と言い換えることができる。 The ignition off of the vehicle V refers to a state in which the drive source 25b of the vehicle V is stopped. For example, when the drive source 25b includes an internal combustion engine, the ignition-off state is a state in which the internal combustion engine stops operating. Further, for example, when the drive source 25b includes a motor, the ignition-off state is a state in which the power supply to the motor is stopped and the control of the driving state of the motor is stopped. The ignition off state can be rephrased as a power off state.

これに対し、イグニッションオン状態とは、イグニッションオフ状態でない状態であり、車両Vの駆動源25bが動作中または動作可能な状態をいう。例えば、駆動源25bが内燃機関を含む場合、イグニッションオンの状態とは、内燃機関が運転中の状態である。また、例えば、駆動源25bがモータを含む場合、イグニッションオンの状態とは、モータへの電力供給が行われているか、或いは、モータの駆動状態の制御が行われている状態である。図5、図6及び図7の動作は、車両Vがイグニッションオン状態で開始される。
イグニッションオン状態において車両Vをイグニッションオフ状態にする操作、及び、イグニッションオフ状態において車両Vをイグニッションオン状態にする操作は、例えば、ユーザによるSSSW27aの操作である。イグニッションオン状態は、電源オン状態と言い換えることができる。
On the other hand, the ignition ON state is a state in which the ignition is not OFF, and refers to a state in which the drive source 25b of the vehicle V is in operation or operable. For example, when the drive source 25b includes an internal combustion engine, the ignition-on state means that the internal combustion engine is in operation. Further, for example, when the drive source 25b includes a motor, the ignition-on state is a state in which power is being supplied to the motor, or the driving state of the motor is being controlled. The operations of FIGS. 5, 6 and 7 are started when the vehicle V is in the ignition ON state.
The operation of turning the vehicle V into the ignition-off state when the ignition is on and the operation of turning the vehicle V into the ignition-on state when the ignition is off are, for example, operations of the SSSW 27a by the user. The ignition-on state can be rephrased as a power-on state.

車両Vをイグニッションオフにする操作が行われない場合(ステップSA37;NO)、更新データ制御部203は待機する。車両Vをイグニッションオフにする操作が行われた場合(ステップSA37;YES)、更新データ制御部203は、ユーザへの通知を実行する(ステップSA38)。ステップSA38の通知は、ユーザに対し、プログラムのインストールが完了するまで、車両Vがイグニッションオン状態にならないことを知らせる。ステップSA38で、更新データ制御部203は、例えば、車両Vに搭載されたディスプレイに文字や画像を表示させることによって、通知を行う。また、更新データ制御部203は、ステップSA38で、車両Vに搭載されたスピーカから音声を出力させることによって通知を行ってもよい。 If the operation to turn off the ignition of the vehicle V is not performed (step SA37; NO), the update data control unit 203 waits. If the vehicle V is operated to turn off the ignition (step SA37; YES), the update data control unit 203 notifies the user (step SA38). The notification of step SA38 informs the user that the ignition of the vehicle V will not be turned on until the installation of the program is completed. In step SA38, the update data control unit 203 makes a notification by displaying characters or images on a display mounted on the vehicle V, for example. Further, the update data control unit 203 may notify by outputting a sound from a speaker mounted on the vehicle V in step SA38.

通知を行った後、更新データ制御部203は、車両Vをイグニッションオフ状態にする操作が行われたか否かを判定する(ステップSA39)。車両Vをイグニッションオフにする操作が行われない場合(ステップSA39;NO)、更新データ制御部203は待機する。車両Vをイグニッションオフにする操作が行われた場合(ステップSA39;YES)、更新データ制御部203は、イグニッションオン(IG_ON)制限を設定する(ステップSA40)。イグニッションオン制限は、第2処理が完了するまで車両Vがイグニッションオン状態とならないようにする制限である。セントラルECU2がイグニッションオン制限を設定すると、制御システム1は、SSSW27aが操作された場合であってもイグニッションオフ状態を維持する。イグニッションオン制限が設定されていない場合、制御システム1は、イグニッションオフ状態でSSSW27aが操作されると、イグニッションオン状態に移行する。 After making the notification, the update data control unit 203 determines whether or not an operation has been performed to turn the ignition off of the vehicle V (step SA39). If the operation to turn off the ignition of the vehicle V is not performed (step SA39; NO), the update data control unit 203 waits. If the vehicle V is operated to turn off the ignition (step SA39; YES), the update data control unit 203 sets the ignition on (IG_ON) limit (step SA40). The ignition-on restriction is a restriction that prevents the vehicle V from entering the ignition-on state until the second process is completed. When the central ECU 2 sets the ignition ON limit, the control system 1 maintains the ignition OFF state even when the SSSW 27a is operated. When the ignition ON limit is not set, the control system 1 shifts to the ignition ON state when the SSSW 27a is operated in the ignition OFF state.

続いて、更新データ制御部203がステップSA35で特定したECUによって、非制御更新プログラムをインストールする第2処理(ステップSA41)が実行される。第2処理の詳細については図9を参照して後述する。第2処理が完了した後、更新データ制御部203は、イグニッションオン制限を解除する(ステップSA42)。更新データ制御部203は、SSSW27aの操作に基づき、第1ゾーンECU20aの制御によって、車両Vがイグニッションオン状態に移行したか否かを判定する(ステップSA43)。車両Vがイグニッションオン状態に移行していない場合(ステップSA43;NO)、更新データ制御部203は待機する。車両Vがイグニッションオン状態に移行した場合(ステップSA43;YES)、更新データ制御部203は、本処理を終了する。 Subsequently, the second process (step SA41) of installing the non-controlled update program is executed by the ECU identified by the update data control unit 203 in step SA35. Details of the second process will be described later with reference to FIG. After completing the second process, update data control unit 203 cancels the ignition-on restriction (step SA42). Based on the operation of the SSSW 27a, the update data control unit 203 determines whether or not the vehicle V has shifted to the ignition ON state under the control of the first zone ECU 20a (step SA43). If the vehicle V has not transitioned to the ignition-on state (step SA43; NO), the update data control unit 203 waits. If the vehicle V has switched to the ignition ON state (step SA43; YES), the update data control unit 203 terminates this process.

また、インストールするプログラムが複数であると判定した場合(ステップSA31;YES)、更新データ制御部203は、インストールするプログラムが非制御更新プログラムを含むか否かを判定する(ステップSA51)。インストールするプログラムが非制御更新プログラムを含まない場合(ステップSA51;NO)、更新データ制御部203は、インストールの対象である1以上の車両制御更新プログラムの中から、処理対象とする1つの車両制御更新プログラムを選択する(ステップSA52)。更新データ制御部203は、ステップSA52で選択したプログラムをインストールする対象のECUを特定する(ステップSA54)。ステップSA54の処理は、ステップSA33と同様である。続いて、更新データ制御部203によって特定されたECUによって、車両制御更新プログラムをインストールする第1処理(ステップSA54)が実行される。第1処理はステップSA34と同じ処理であり、その詳細については図8を参照して後述する。第1処理の実行後、更新データ制御部203は、ダウンロードされた全てのプログラムのインストールが完了したか否かを判定する(ステップSA55)。全てのプログラムのインストールが完了したと判定した場合(ステップSA55;YES)、制御システム1は本処理を終了する。まだインストールされていないプログラムがあると判定した場合(ステップSA55;NO)、更新データ制御部203はステップSA52に戻る。 If it is determined that there are a plurality of programs to be installed (step SA31; YES), the update data control unit 203 determines whether or not the programs to be installed include an uncontrolled update program (step SA51). If the program to be installed does not include a non-control update program (step SA51; NO), the update data control unit 203 selects one vehicle control program to be processed from among the one or more vehicle control update programs to be installed. Select an update program (step SA52). Update data control unit 203 identifies the target ECU for installing the program selected in step SA52 (step SA54). The processing of step SA54 is similar to that of step SA33. Subsequently, the ECU identified by update data control unit 203 executes a first process (step SA54) of installing the vehicle control update program. The first process is the same process as step SA34, and details thereof will be described later with reference to FIG. After executing the first process, the update data control unit 203 determines whether installation of all downloaded programs has been completed (step SA55). If it is determined that the installation of all programs has been completed (step SA55; YES), the control system 1 terminates this process. If it is determined that there is a program that has not been installed yet (step SA55; NO), the update data control unit 203 returns to step SA52.

また、インストールするプログラムが非制御更新プログラムを含む場合(ステップSA51;YES)、更新データ制御部203は、第2処理を待機する待機状態に移行する(ステップSA56)。第2処理は、更新実行部212または更新実行部51が非制御更新プログラムをインストールする処理である。更新データ制御部203は、待機状態において、車両Vをイグニッションオフ状態にする操作が行われたか否かを判定する(ステップSA57)。 If the program to be installed includes an uncontrolled update program (step SA51; YES), the update data control unit 203 shifts to a standby state for waiting for the second process (step SA56). The second process is a process in which the update execution unit 212 or the update execution unit 51 installs the uncontrolled update program. The update data control unit 203 determines whether or not an operation has been performed to turn off the ignition of the vehicle V in the standby state (step SA57).

車両Vをイグニッションオフにする操作が行われない場合(ステップSA57;NO)、更新データ制御部203は待機する。車両Vをイグニッションオフにする操作が行われた場合(ステップSA57;YES)、更新データ制御部203は、ユーザへの通知を実行する(ステップSA58)。ステップSA58の通知は、ステップSA38と同様である。 If the operation to turn off the ignition of the vehicle V is not performed (step SA57; NO), the update data control unit 203 waits. If the vehicle V is operated to turn off the ignition (step SA57; YES), the update data control unit 203 notifies the user (step SA58). The notification of step SA58 is the same as that of step SA38.

通知を行った後、更新データ制御部203は、車両Vをイグニッションオフ状態にする操作が行われたか否かを判定する(ステップSA59)。車両Vをイグニッションオフにする操作が行われない場合(ステップSA59;NO)、更新データ制御部203は待機する。車両Vをイグニッションオフにする操作が行われた場合(ステップSA59;YES)、更新データ制御部203は、イグニッションオン制限を設定する(ステップSA60)。 After making the notification, the update data control unit 203 determines whether or not an operation has been performed to turn the ignition off of the vehicle V (step SA59). If the operation to turn off the ignition of the vehicle V is not performed (step SA59; NO), the update data control unit 203 waits. If the vehicle V is operated to turn off the ignition (step SA59; YES), the update data control unit 203 sets an ignition-on limit (step SA60).

更新データ制御部203は、インストールすべき1以上の非制御更新プログラムの中から、処理対象とする1つのプログラムを選択する(ステップSA61)。更新データ制御部203は、選択された非制御更新プログラムをインストールする対象のECUを特定する(ステップSA62)。ステップSA62の処理は、ステップSA35と同様である。続いて、更新データ制御部203によって特定されたECUによって、非制御更新プログラムをインストールする第2処理(ステップSA63)が実行される。第2処理はステップSA41と同じ処理であり、その詳細については図9を参照して後述する。 The update data control unit 203 selects one program to be processed from one or more uncontrolled update programs to be installed (step SA61). Update data control unit 203 identifies the target ECU for installation of the selected uncontrolled update program (step SA62). The processing of step SA62 is similar to that of step SA35. Subsequently, the ECU identified by update data control unit 203 executes a second process (step SA63) of installing the non-controlled update program. The second process is the same process as step SA41, and the details thereof will be described later with reference to FIG.

第2処理の後、更新データ制御部203は、ダウンロードされた全ての非制御更新プログラムのインストールが完了したか否かを判定する(ステップSA64)。更新データ制御部203は、まだインストールされていない非制御更新プログラムがある場合、全ての非制御更新プログラムのインストールが完了していないと判定する(ステップSA64;NO)。この場合、更新データ制御部203はステップSA61に戻る。 After the second process, the update data control unit 203 determines whether installation of all downloaded uncontrolled update programs is completed (step SA64). If there is an uncontrolled update program that has not yet been installed, the update data control unit 203 determines that installation of all uncontrolled update programs has not been completed (step SA64; NO). In this case, the update data control unit 203 returns to step SA61.

全ての非制御更新プログラムのインストールが完了したと判定した場合(ステップSA64;YES)、更新データ制御部203は、イグニッションオン制限を解除する(ステップSA65)。更新データ制御部203は、SSSW27aの操作に基づき、第1ゾーンECU20aの制御によって、車両Vがイグニッションオン状態に移行したか否かを判定する(ステップSA66)。車両Vがイグニッションオン状態に移行していない場合(ステップSA66;NO)、更新データ制御部203は待機する。車両Vがイグニッションオン状態に移行した場合(ステップSA66;YES)、更新データ制御部203は、車両制御更新プログラムのインストールを開始する。 If it is determined that installation of all non-controlled update programs has been completed (step SA64; YES), update data control unit 203 cancels the ignition-on restriction (step SA65). Based on the operation of the SSSW 27a, the update data control unit 203 determines whether or not the vehicle V has shifted to the ignition ON state under the control of the first zone ECU 20a (step SA66). If the vehicle V has not transitioned to the ignition ON state (step SA66; NO), the update data control unit 203 waits. When the vehicle V has switched to the ignition ON state (step SA66; YES), the update data control unit 203 starts installing the vehicle control update program.

更新データ制御部203は、インストールする1以上の車両制御更新プログラムの中から、処理対象とする1つの車両制御更新プログラムを選択する(ステップSA67)。更新データ制御部203は、ステップSA67で選択したプログラムをインストールする対象のECUを特定する(ステップSA68)。ステップSA68の処理は、ステップSA33と同様である。続いて、更新データ制御部203によって特定されたECUによって、車両制御更新プログラムをインストールする第1処理(ステップSA69)が実行される。第1処理はステップSA34と同じ処理である。第1処理の実行後、更新データ制御部203は、ダウンロードされた全ての車両制御更新プログラムのインストールが完了したか否かを判定する(ステップSA70)。全ての車両制御更新プログラムのインストールが完了したと判定した場合(ステップSA70;YES)、制御システム1は本処理を終了する。まだインストールされていない車両制御更新プログラムがあると判定した場合(ステップSA70;NO)、更新データ制御部203はステップSA67に戻る。 The update data control unit 203 selects one vehicle control update program to be processed from one or more vehicle control update programs to be installed (step SA67). Update data control unit 203 identifies the target ECU for installation of the program selected in step SA67 (step SA68). The processing of step SA68 is similar to that of step SA33. Subsequently, the ECU identified by update data control unit 203 executes a first process (step SA69) of installing the vehicle control update program. The first process is the same process as step SA34. After executing the first process, update data control unit 203 determines whether installation of all the downloaded vehicle control update programs has been completed (step SA70). If it is determined that installation of all vehicle control update programs has been completed (step SA70; YES), the control system 1 terminates this process. If it is determined that there is a vehicle control update program that has not yet been installed (step SA70; NO), update data control section 203 returns to step SA67.

図6及び図7の処理において、インストールする対象のプログラムが複数であって、その中に車両制御更新プログラムが含まれない場合は、更新実行部212は、ステップSA66を実行した後にステップSA67~SA70をスキップする。 In the processing of FIGS. 6 and 7, if there are a plurality of programs to be installed and the vehicle control update program is not included among them, the update execution unit 212 executes step SA66 and then steps SA67 to SA70. to skip.

図8は、第1処理の詳細を示すフローチャートである。第1処理は、更新実行部212、及び、更新実行部51が実行する処理であり、ここでは更新実行部212が実行する例を説明する。 FIG. 8 is a flowchart showing details of the first process. The first process is a process executed by the update execution unit 212 and the update execution unit 51, and an example executed by the update execution unit 212 will be described here.

更新実行部212は、車両制御更新プログラムをインストールする領域を、プログラム記憶第1領域70とプログラム記憶第2領域75の中から選択する(ステップSA101)。ステップSA101で、更新実行部212は、データ記憶部213のA面とB面のどちらかを選択する。さらに、更新実行部212は、プログラム領域とユーザ領域とのいずれかを選択する。つまり、ステップSA101で、更新実行部212は、A面プログラム領域71、A面ユーザ領域73、B面プログラム領域76、及び、B面ユーザ領域78のいずれか1つを選択する。 The update executing unit 212 selects an area for installing the vehicle control update program from the program storage first area 70 and the program storage second area 75 (step SA101). At step SA101, the update executing unit 212 selects either the A side or the B side of the data storage unit 213. FIG. Furthermore, the update executing unit 212 selects either the program area or the user area. In other words, in step SA101, the update executing section 212 selects any one of the A-side program area 71, the A-side user area 73, the B-side program area 76, and the B-side user area 78. FIG.

ステップSA101において、更新実行部212は、まず、プログラム記憶第1領域70とプログラム記憶第2領域75のいずれか一方を選択する。更新実行部212は、プログラム記憶第1領域70を選択した場合、さらに、A面プログラム領域71とA面ユーザ領域73のいずれかを、インストールするプログラムの種類に基づき選択する。また、更新実行部212は、B面プログラム領域76を選択した場合、さらに、B面プログラム領域76とB面ユーザ領域78のいずれかを、インストールするプログラムの種類に基づき選択する。 In step SA101, update executing unit 212 first selects either program storage first area 70 or program storage second area 75. FIG. When the program storage first area 70 is selected, the update executing section 212 further selects either the A-side program area 71 or the A-side user area 73 based on the type of program to be installed. When the B-side program area 76 is selected, the update execution unit 212 further selects either the B-side program area 76 or the B-side user area 78 based on the type of program to be installed.

更新実行部212は、ステップSA101において、プログラム記憶第1領域70が記憶しているプログラム、及び、プログラム記憶第2領域75が記憶しているプログラムが同一である場合、A面とB面のいずれかを事前の設定に従って選択する。この動作は、プログラム記憶第1領域70とプログラム記憶第2領域75とが、同一のプログラムの同一のバージョンを記憶していて、どちらのプログラムも正常である場合に行われる。プログラム記憶第1領域70及びプログラム記憶第2領域75のいずれかが記憶しているプログラムに問題がある場合、更新実行部212は、ステップSA101で、問題があるプログラムを記憶している領域を選択する。また、プログラム記憶第1領域70が記憶しているプログラム、及び、プログラム記憶第2領域75が記憶しているプログラムのバージョンが異なる場合、更新実行部212は、古いバージョンのプログラムを記憶した領域を、ステップSA101で選択する。 In step SA101, if the program stored in the first program storage area 70 and the program stored in the second program storage area 75 are the same, the update execution unit 212 updates either side A or side B. according to the preset settings. This operation is performed when the first program storage area 70 and the second program storage area 75 store the same version of the same program and both programs are normal. If there is a problem with the program stored in either the first program storage area 70 or the second program storage area 75, the update executing section 212 selects the area storing the program with the problem in step SA101. do. If the program stored in the first program storage area 70 and the program stored in the second program storage area 75 have different versions, the update executing unit 212 replaces the area storing the old version of the program with , is selected in step SA101.

更新実行部212は、ステップSA101で選択した領域の記憶容量と、インストールする対象の車両制御更新プログラムのサイズとを比較する(ステップSA102)。ステップSA101で選択した領域の記憶容量とは、例えば、選択した領域において上書きすることが可能な領域と、選択した領域における空き容量とを合計した記憶容量である。プログラムのサイズとは、例えば、プログラムのデータ量、或いは、データ記憶部213に記憶させた場合にプログラムが占有する記憶容量である。 Update executing unit 212 compares the storage capacity of the area selected in step SA101 with the size of the vehicle control update program to be installed (step SA102). The storage capacity of the area selected in step SA101 is, for example, the total storage capacity of the overwritable area in the selected area and the free space in the selected area. The size of a program is, for example, the data amount of the program or the storage capacity occupied by the program when stored in the data storage unit 213 .

更新実行部212は、ステップSA102の比較の結果に基づき、記憶容量が不足するか否かを判定する(ステップSA103)。ステップSA101で選択した領域の記憶容量が不足しない場合(ステップSA103;NO)、更新実行部212は、後述するステップSA107に移行する。 The update executing unit 212 determines whether or not the storage capacity is insufficient based on the result of the comparison in step SA102 (step SA103). If the storage capacity of the area selected in step SA101 is not insufficient (step SA103; NO), the update executing unit 212 proceeds to step SA107, which will be described later.

ステップSA101で選択した領域の記憶容量が不足すると判定した場合(ステップSA103;YES)、更新実行部212は、選択した領域に対応する予備領域を使用して、ステップSA101で選択した領域の記憶容量を拡張する(ステップSA104)。例えば、更新実行部212は、ステップSA101でA面プログラム領域71を選択した場合、車両制御更新プログラムのインストールに予備領域72を使用するよう決定することによって、A面プログラム領域71の記憶容量を拡大する。 If it is determined that the storage capacity of the area selected in step SA101 is insufficient (step SA103; YES), the update executing unit 212 uses the spare area corresponding to the selected area to increase the storage capacity of the area selected in step SA101. is extended (step SA104). For example, when the A-side program area 71 is selected in step SA101, the update execution unit 212 determines to use the spare area 72 for installing the vehicle control update program, thereby expanding the storage capacity of the A-side program area 71. do.

更新実行部212は、ステップSA104で記憶容量を拡大した後の領域とプログラムのサイズとを比較し、記憶容量が不足するか否かを判定する(ステップSA105)。記憶容量が不足しない場合(ステップSA105;NO)、更新実行部212は、後述するステップSA107に移行する。 The update executing unit 212 compares the area after the storage capacity is expanded in step SA104 with the size of the program, and determines whether or not the storage capacity is insufficient (step SA105). If the storage capacity is sufficient (step SA105; NO), the update execution unit 212 proceeds to step SA107, which will be described later.

記憶容量が不足すると判定した場合(ステップSA105;YES)、更新実行部212は、共通領域64を分割し、分割した領域を使用することによってプログラム記憶第1領域70及びプログラム記憶第2領域75を拡張する(ステップSA106)。ステップSA106で、更新実行部212は、共通領域64を2つの分割領域に分割する。更新実行部212は、2つの分割領域のうち1つを、プログラム記憶第1領域70のA面プログラム領域71またはA面ユーザ領域73を拡張するための拡張領域とする。また、更新実行部212は、2つの分割領域のうち1つを、プログラム記憶第2領域75のB面プログラム領域76またはB面ユーザ領域78を拡張するための拡張領域とする。さらに、更新実行部212は、ステップSA101で選択した領域を、ステップSA106で分割した分割領域のうち1つを使用して拡張する。これにより、プログラムをインストールする領域の記憶容量は、予備領域と、拡張領域とを使用して拡張される。その後、更新実行部212はステップSA107に移行する。 If it is determined that the storage capacity is insufficient (step SA105; YES), the update executing unit 212 divides the common area 64 and uses the divided areas to restore the first program storage area 70 and the second program storage area 75. Expand (step SA106). At step SA106, the update executing unit 212 divides the common area 64 into two divided areas. The update executing unit 212 sets one of the two divided areas as an extension area for extending the A-side program area 71 or the A-side user area 73 of the first program storage area 70 . Also, the update execution unit 212 sets one of the two divided areas as an extension area for extending the B-side program area 76 or the B-side user area 78 of the second program storage area 75 . Furthermore, the update executing unit 212 expands the area selected in step SA101 using one of the divided areas obtained in step SA106. As a result, the storage capacity of the program installation area is expanded using the spare area and the extension area. After that, the update executing unit 212 proceeds to step SA107.

ステップSA107で、更新実行部212は、プログラムのインストールを実行する(ステップSA107)。具体的には、更新実行部212は、プログラムを、ステップSA101で選択した領域または、選択した領域を拡張した領域全体に記憶させる。 At step SA107, the update execution unit 212 installs the program (step SA107). Specifically, update execution unit 212 stores the program in the area selected in step SA101 or the entire area obtained by extending the selected area.

続いて、更新実行部212は、インストールが正常に完了したことを確認する処理を行う(ステップSA108)。ステップSA108で、更新実行部212は、インストールされたプログラムが、セントラルECU2によって正常に実行可能な状態であることを確認する。例えば、更新実行部212は、ハッシュ値の算出と比較を行うことにより、データ記憶部213に書き込まれたプログラム及びデータの同一性を確認する。更新実行部212は、ステップSA108で、チェック用領域66が記憶する誤り検出用のデータを更新してもよい。 Subsequently, the update executing unit 212 performs processing to confirm that the installation has been completed normally (step SA108). At step SA108, the update executing unit 212 confirms that the installed program is in a state in which it can be normally executed by the central ECU 2. For example, the update execution unit 212 confirms the identity of the program and data written in the data storage unit 213 by calculating and comparing hash values. The update executing unit 212 may update the error detection data stored in the check area 66 in step SA108.

更新実行部212は、インストールしたプログラムのアクティベーションを実行する(ステップSA109)。アクティベーションは、制御システム1がインストールしたプログラムを実行するように設定する処理である。例えば、更新実行部212は、ステップSA109でアクティブプログラム指定データ61aを書き換える。更新実行部212は、ステップSA101-SA107の処理によってデータ記憶部213に書き込まれた最新の車両制御プログラムが、セントラルECU2によって実行されるように、アクティブプログラム指定データ61aを書き換える。具体的には、アクティブプログラム指定データ61aが、データ記憶部213のA面とB面のうちステップSA101で選択された側を指定する内容に書き換えられる。 The update execution unit 212 activates the installed program (step SA109). Activation is a process of setting the program installed by the control system 1 to run. For example, the update executing unit 212 rewrites the active program designation data 61a in step SA109. The update executing unit 212 rewrites the active program designation data 61a so that the central ECU 2 executes the latest vehicle control program written in the data storage unit 213 by the processing of steps SA101-SA107. Specifically, the active program designation data 61a is rewritten to designate the side selected in step SA101 between the A side and the B side of the data storage unit 213. FIG.

図9は、第2処理の詳細を示すフローチャートである。第2処理は、更新実行部212、及び、更新実行部51が実行する処理であり、ここでは更新実行部212が実行する例を説明する。 FIG. 9 is a flowchart showing details of the second process. The second process is a process executed by the update execution unit 212 and the update execution unit 51, and an example executed by the update execution unit 212 will be described here.

更新実行部212が非制御更新プログラムをインストールする領域は、共通領域64である。更新実行部212は、共通領域64の記憶容量と、インストールする対象の非制御更新プログラムのサイズとを比較する(ステップSA111)。共通領域64の記憶容量とは、例えば、共通領域64において上書きすることが可能な領域と、共通領域64における空き容量とを合計した記憶容量である。非制御更新プログラムのサイズとは、例えば、非制御更新プログラムのデータ量、或いは、データ記憶部213に記憶させた場合に非制御更新プログラムが占有する記憶容量である。 The area in which the update execution unit 212 installs the uncontrolled update program is the common area 64 . The update executing unit 212 compares the storage capacity of the common area 64 with the size of the uncontrolled update program to be installed (step SA111). The storage capacity of the common area 64 is, for example, the sum of the overwritable area in the common area 64 and the free space in the common area 64 . The size of the uncontrolled update program is, for example, the amount of data of the uncontrolled update program or the storage capacity occupied by the uncontrolled update program when stored in the data storage unit 213 .

更新実行部212は、ステップSA111の比較の結果に基づき、記憶容量が不足するか否かを判定する(ステップSA112)。記憶容量が不足しない場合(ステップSA112;NO)、更新実行部212は、後述するステップSA114に移行する。 The update executing unit 212 determines whether or not the storage capacity is insufficient based on the result of the comparison in step SA111 (step SA112). If the storage capacity does not run short (step SA112; NO), the update executing unit 212 proceeds to step SA114, which will be described later.

共通領域64の記憶容量が不足すると判定した場合(ステップSA112;YES)、更新実行部212は、予備領域65を使用して共通領域64の記憶容量を拡張する(ステップSA113)。 If it is determined that the storage capacity of the common area 64 is insufficient (step SA112; YES), the update executing unit 212 expands the storage capacity of the common area 64 using the spare area 65 (step SA113).

ステップSA114で、更新実行部212は、非制御更新プログラムのインストールを実行する(ステップSA114)。具体的には、更新実行部212は、非制御更新プログラムを共通領域64に記憶させる。 At step SA114, the update execution unit 212 installs the uncontrolled update program (step SA114). Specifically, the update executing unit 212 stores the uncontrolled update program in the common area 64 .

続いて、更新実行部212は、インストールが正常に完了したことを確認する処理を行う(ステップSA115)。ステップSA115で、更新実行部212は、インストールされた非制御更新プログラムが、セントラルECU2によって正常に実行可能な状態であることを確認する。例えば、更新実行部212は、ハッシュ値の算出と比較を行うことにより、データ記憶部213に書き込まれた非制御更新プログラム及びデータの同一性を確認する。更新実行部212は、ステップSA115で、チェック用領域66が記憶する誤り検出用のデータを更新してもよい。 Subsequently, the update executing unit 212 performs processing to confirm that the installation has been completed normally (step SA115). At step SA115, the update executing unit 212 confirms that the installed non-controlled update program is in a state in which the central ECU 2 can normally execute it. For example, the update execution unit 212 confirms the identity of the uncontrolled update program and the data written in the data storage unit 213 by calculating and comparing hash values. The update execution unit 212 may update the error detection data stored in the check area 66 in step SA115.

更新実行部212は、インストールしたプログラムのアクティベーションを実行する(ステップSA116)。アクティベーションは、制御システム1がインストールした非制御更新プログラムを実行するように設定する処理である。 The update execution unit 212 activates the installed program (step SA116). Activation is a process of setting the control system 1 to execute an installed uncontrolled update program.

図10は、図5~図9に示した動作を実行する場合の車両Vの状態の遷移例を示すイミングチャートであル。図10のタイミングチャートにおいて、符号(a)はSSSW27aの操作状態を示す。符号(b)はOTA実行状態を示す。OTAは制御システム1が非制御更新プログラムをダウンロードする動作及びインストールする動作を指す。符号(c)は車両Vの電源状態を示す。符号(d)は車両Vの制御状態を示す。図において、符号Tは時刻を示し、横軸は時間の経過に相当する。 FIG. 10 is a timing chart showing an example of state transition of the vehicle V when the operations shown in FIGS. 5 to 9 are executed. In the timing chart of FIG. 10, symbol (a) indicates the operating state of the SSSW 27a. Symbol (b) indicates the OTA execution state. OTA refers to the actions of the control system 1 downloading and installing uncontrolled updates. Symbol (c) indicates the power supply state of vehicle V. FIG. Symbol (d) indicates the control state of vehicle V. FIG. In the figure, the symbol T indicates time, and the horizontal axis corresponds to the passage of time.

時刻T0は、制御システム1が非制御更新プログラムのダウンロードを開始する時点である。制御システム1が非制御更新プログラムをダウンロードする間、車両Vはイグニッションオン状態である。また、車両Vは走行中であってもよいし、停車していてもよい。 Time T0 is the point in time when the control system 1 starts downloading the uncontrolled update program. The vehicle V has the ignition on while the control system 1 downloads the non-control update program. Further, the vehicle V may be running or may be stopped.

時刻T1でダウンロードが終了すると、制御システム1は、イグニッションオフ操作を待機する。ここで、時刻T2-T3でユーザがSSSW27aを操作すると、この操作に応じて、制御システム1が通知を実行する。SSSW27aの操作は、ユーザがSSSW27aを押すこと、及び、ユーザがSSSW27aの押下をやめることを含む。このため、制御システム1は、時刻T3でユーザがSSSW27aの押下をやめたときに、SSSW27aの操作の完了を検出する。SSSW27aは、車両Vの機能を停止させる操作であるから、時刻T2において車両Vは停車している。 When the download ends at time T1, the control system 1 waits for the ignition off operation. Here, when the user operates the SSSW 27a at time T2-T3, the control system 1 executes notification in response to this operation. The operation of the SSSW 27a includes the user pressing the SSSW 27a and the user stopping pressing the SSSW 27a. Therefore, the control system 1 detects completion of the operation of the SSSW 27a when the user stops pressing the SSSW 27a at time T3. Since the SSSW 27a is an operation to stop the function of the vehicle V, the vehicle V is stopped at the time T2.

制御システム1による通知は、ステップSA38、SA58の処理に対応する。通知を行った後、制御システム1は、さらなるSSSW27aの操作を待機する。 Notification by the control system 1 corresponds to the processing of steps SA38 and SA58. After making the notification, the control system 1 waits for further operation of the SSSW 27a.

時刻T4-T5でユーザがSSSW27aを操作すると、SSSW27aの操作の完了を契機として、車両Vがイグニッションオフ状態に移行する。制御システム1は、時刻T5でイグニッションオフ状態に移行した後、イグニッションオフ状態においてECUを起動させる。ECUが起動する時刻T6は、時刻T5より少し遅れる可能性がある。制御システム1は、時刻T5で、ECUが起動した状態を維持したまま車両Vをイグニッションオフ状態に移行させてもよい。 When the user operates the SSSW 27a at time T4-T5, the vehicle V shifts to the ignition off state upon completion of the operation of the SSSW 27a. After shifting to the ignition off state at time T5, the control system 1 activates the ECU in the ignition off state. The time T6 at which the ECU is activated may be slightly later than the time T5. At time T5, the control system 1 may shift the vehicle V to the ignition off state while maintaining the state where the ECU is activated.

時刻T6でECUが起動した後、制御システム1は、イグニッションオン制限を設定する。このため、時刻T6以後、車両Vは、走行ができない状態となる。この状態を、図10には車両負荷状態として示す。 After the ECU is activated at time T6, the control system 1 sets the ignition ON limit. Therefore, after time T6, the vehicle V is in a state in which it cannot run. This state is shown in FIG. 10 as a vehicle load state.

時刻T6から、制御システム1は非制御更新プログラムのインストールを実行する。非制御更新プログラムのインストールを行った後、制御システム1は、時刻T7からアクティベーションを実行する。アクティベーションが完了した後、制御システム1は、SSSW27aの操作を待機する。時刻T8-T9でSSSW27aが操作されると、制御システム1は、イグニッションオン状態に移行する。イグニッションオン状態となることにより、車両Vは走行可能となる。車両Vは、走行してもよいし、停車を継続してもよい。 From time T6, the control system 1 performs installation of uncontrolled updates. After installing the uncontrolled update program, the control system 1 executes activation from time T7. After completing the activation, the control system 1 waits for the operation of the SSSW 27a. When the SSSW 27a is operated at time T8-T9, the control system 1 shifts to the ignition ON state. When the ignition is turned on, the vehicle V can run. The vehicle V may travel or continue to stop.

時刻T6-T8の長さに制限はない。例えば、ユーザが、時刻T5でSSSW27aを操作した後に車両Vから降車してもよい。この場合、ユーザが、時刻T5から長時間が経過した後にSSSW27aを操作してもよい。 There is no limit to the length of time T6-T8. For example, the user may get off the vehicle V after operating the SSSW 27a at time T5. In this case, the user may operate the SSSW 27a after a long time has passed since time T5.

図6、図7、及び図10では、制御システム1が通知を行う契機を、SSSW27aの操作とする例を説明した。具体的には、ステップSA37、SA57で、制御システム1が、SSSW27aの操作の有無を判定し、SSSW27aが操作された場合にステップSA38、SA58で通知を行う例を説明した。これは一例であり、通知を行う契機は、SSSW27aの操作に限定されない。例えば、制御システム1が通知を行う契機は、降車準備操作であってもよい。降車準備操作とは、ユーザが車両Vから降車することを推定させる操作である。例えば、降車準備操作は、シフトSW27bの操作によってPポジションに入る、パーキングブレーキが作動、ドアが開閉されることである。この場合、制御システム1は、ステップSA37、SA57で、降車準備操作の有無を判定し、降車準備操作が行われた場合、ステップSA38、SA58の通知を実行する。この場合、図10の時刻T2~T3の動作は省略される。 In FIGS. 6, 7, and 10, examples have been described in which the operation of the SSSW 27a triggers the notification by the control system 1. FIG. Specifically, in steps SA37 and SA57, the control system 1 determines whether or not the SSSW 27a is operated, and when the SSSW 27a is operated, an example is described in which notification is given in steps SA38 and SA58. This is just an example, and the trigger for notification is not limited to the operation of the SSSW 27a. For example, the trigger for the notification by the control system 1 may be an operation for preparing to get off the vehicle. The getting-off preparation operation is an operation for estimating that the user will get off the vehicle V. FIG. For example, the operation for getting off the vehicle is to enter the P position by operating the shift SW 27b, operate the parking brake, and open and close the door. In this case, in steps SA37 and SA57, the control system 1 determines whether or not there is an operation to prepare for getting off the vehicle, and if the operation to prepare for getting off has been performed, the notification of steps SA38 and SA58 is executed. In this case, the operations at times T2 to T3 in FIG. 10 are omitted.

上記実施形態は本発明を適用した一具体例を示すものであり、発明が適用される形態を限定するものではない。 The above embodiment shows a specific example to which the present invention is applied, and does not limit the form to which the invention is applied.

上記実施形態では、制御システム1が、サーバ110からダウンロードしたプログラムのうち、非制御更新プログラムを共通領域64にインストールする例を示した。これは一例であり、例えば、制御システム1は、車両Vの所有者または使用者であるユーザの操作に基づきダウンロードしたプログラムと、車両Vの所有者及び使用者のいずれでも借用ユーザの操作に基づきダウンロードしたプログラムと、を区別する構成であってもよい。制御システム1は、車両Vの所有者または使用者であるユーザの操作に基づきダウンロードした車両制御更新プログラムをプログラム記憶第1領域70またはプログラム記憶第2領域75に記憶する。制御システム1は、借用ユーザの操作に基づきダウンロードしたプログラムを、車両制御更新プログラムであるか非制御更新プログラムであるかを問わず、共通領域64にインストールする。所有者または使用者は、第1ユーザの一例に対応する。借用ユーザは、第2ユーザの一例に対応する。 In the above-described embodiment, an example in which the control system 1 installs the non-control update program in the common area 64 among the programs downloaded from the server 110 was shown. This is just an example. For example, the control system 1 can download a program based on the operation of the user who is the owner or user of the vehicle V, and based on the operation of the borrowed user who is either the owner or the user of the vehicle V It may be configured to distinguish between the downloaded program and the downloaded program. Control system 1 stores the vehicle control update program downloaded based on the operation of the user who is the owner or user of vehicle V in first program storage area 70 or second program storage area 75 . The control system 1 installs the downloaded program in the common area 64 based on the borrowing user's operation, regardless of whether it is a vehicle control update program or a non-control update program. An owner or user corresponds to an example of a first user. A borrowing user corresponds to an example of a second user.

また、制御システム1は、車両Vの所有者または使用者であるユーザの操作に基づきダウンロードした非制御更新プログラムを、共通領域64にインストールする。制御システム1は、借用ユーザの操作に基づきダウンロードした非制御更新プログラムを、共通領域64に設けられるビジター用共通領域にインストールする。つまり、共通領域64の一部を利用してビジター用共通領域が形成される。共通領域64においてビジター用共通領域以外の領域に、車両Vの所有者または使用者であるユーザの操作に基づきダウンロードした非制御更新プログラムがインストールされる。 In addition, the control system 1 installs the non-control update program downloaded based on the operation of the user who is the owner or user of the vehicle V in the common area 64 . The control system 1 installs the uncontrolled update program downloaded based on the borrowing user's operation in the visitor common area provided in the common area 64 . In other words, a part of the common area 64 is used to form the visitor common area. An uncontrolled update program downloaded based on the operation of the user who is the owner or user of the vehicle V is installed in an area other than the visitor common area in the common area 64 .

この場合、制御システム1は、車両Vを操作するユーザが、車両Vの所有者または使用者であるか否かを判定可能な構成である。例えば、制御システム1は、車両Vの所有者または使用者を予め登録可能であり、車両Vを操作するユーザが、登録された所有者または使用者であるか否かを判定する処理を実行可能である。借用ユーザとは、車両Vに登録された所有者、及び、使用者のいずれにも該当しないユーザを指す。例えば、借用ユーザは、車両Vの所有者または使用者から車両Vを借り受けたユーザである。車両Vが、個人間におけるカーシェアリングに利用される場合、カーシェアリングの利用者は借用ユーザに該当する。 In this case, the control system 1 is configured to be able to determine whether or not the user operating the vehicle V is the owner or user of the vehicle V. FIG. For example, the control system 1 can preliminarily register the owner or user of the vehicle V, and can execute processing for determining whether or not the user who operates the vehicle V is the registered owner or user. is. A borrowing user refers to a user who is neither the registered owner of the vehicle V nor the user. For example, a borrowing user is a user who borrows a vehicle V from the owner or user of the vehicle V. When the vehicle V is used for car sharing between individuals, the car sharing user corresponds to the borrowing user.

この場合の制御システム1の動作を、変形例として説明する。
図11及び図12は、変形例における制御システム1の動作を示すフローチャートである。図11は第1処理を示し、図12は第2処理を示す。図11において、図8と共通する処理には、図8と同じステップ番号を付し、説明を省略する。また、図12において、図9と共通する処理には、図9と同じステップ番号を付し、説明を省略する。
The operation of the control system 1 in this case will be described as a modified example.
11 and 12 are flow charts showing the operation of the control system 1 in the modified example. FIG. 11 shows the first process, and FIG. 12 shows the second process. In FIG. 11, the same step numbers as in FIG. 8 are assigned to the same processes as in FIG. 8, and description thereof is omitted. In addition, in FIG. 12, the same step numbers as in FIG. 9 are attached to the same processing as in FIG. 9, and description thereof is omitted.

図11に示す第1処理で、更新実行部212は、インストールする対象の車両制御更新プログラムが、車両Vの所有者または使用者であるユーザの操作に応じてダウンロードされたプログラムであるか否かを判定する(ステップSA131)。ここで、操作とは、例えば、車両Vに搭載されたタッチパネルに対する操作である。車両Vの所有者または使用者であるユーザの操作に応じてダウンロードされた車両制御更新プログラムである場合(ステップSA131;YES)、更新実行部212は、ステップSA101に移行する。一方、借用ユーザの操作に応じてダウンロードされた車両制御更新プログラムである場合(ステップSA131;NO)、更新実行部212は、インストールする領域を共通領域64に設定し、ステップSA107に移行する。 In the first process shown in FIG. 11, the update execution unit 212 determines whether the vehicle control update program to be installed is a program downloaded according to the operation of the user who is the owner or user of the vehicle V. is determined (step SA131). Here, the operation is an operation on a touch panel mounted on the vehicle V, for example. If the program is a vehicle control update program downloaded according to the operation of the user who is the owner or user of vehicle V (step SA131; YES), update execution unit 212 proceeds to step SA101. On the other hand, if it is a vehicle control update program downloaded according to the borrowing user's operation (step SA131; NO), the update executing unit 212 sets the installation area to the common area 64, and proceeds to step SA107.

図12に示す第2処理で、更新実行部212は、ダウンロードする対象の非制御更新プログラムが、車両Vの所有者または使用者であるユーザの操作に応じてダウンロードされたプログラムであるか否かを判定する(ステップSA141)。車両Vの所有者または使用者であるユーザの操作に応じてダウンロードされた非制御更新プログラムである場合(ステップSA141;YES)、更新実行部212は、ステップSA142に移行する。ステップSA142で、更新実行部212は、共通領域64においてビジター用共通領域以外の領域、すなわちオーナー用記憶領域を、インストールする領域として選択する。その後、更新実行部212はステップSA111に移行する。 In the second process shown in FIG. 12, the update executing unit 212 determines whether the uncontrolled update program to be downloaded is a program downloaded according to the operation of the user who is the owner or user of the vehicle V. is determined (step SA141). If it is an uncontrolled update program downloaded according to the operation of the user who is the owner or user of the vehicle V (step SA141; YES), the update executing unit 212 proceeds to step SA142. In step SA142, the update execution unit 212 selects an area other than the visitor common area in the common area 64, that is, the owner storage area, as an area to be installed. After that, the update executing unit 212 proceeds to step SA111.

一方、借用ユーザの操作に応じてダウンロードされた非制御更新プログラムである場合(ステップSA141;NO)、更新実行部212は、インストールする領域を、共通領域64に設けられたビジター用共通領域に設定する(ステップSA143)。その後、更新実行部212は、ステップSA114に移行する。 On the other hand, if it is an uncontrolled update program downloaded according to the borrowing user's operation (step SA141; NO), the update executing unit 212 sets the installation area to the visitor common area provided in the common area 64. (step SA143). After that, the update executing unit 212 proceeds to step SA114.

この変形例では、車両Vの所有者または使用者の意図によりインストールされたプログラムと、借用ユーザの意図によりインストールされたプログラムとが、データ記憶部213において異なる記憶領域にインストールされる。このため、インストールを指示したユーザが所有者または使用者であるか否かによって、プログラムを区別できる。例えば、借用ユーザの意図によりインストールされたプログラムのみを対象として、プログラムの削除、或いは、プログラムの実行制限を行うことができる。また、例えば、車両Vの所有者または使用者の意図によりインストールされたプログラムを記憶する記憶領域に、予備領域を割り当てることが可能である。従って、個人間のカーシェアリングにより貸し出された車両Vに、借用ユーザがインストールしたプログラムを、車両Vの所有者または使用者の意図により管理できる。 In this modification, a program installed intentionally by the owner or user of vehicle V and a program intentionally installed by the borrowing user are installed in different storage areas in data storage unit 213 . Therefore, the programs can be distinguished depending on whether the user instructing the installation is the owner or the user. For example, it is possible to delete the program or restrict the execution of the program only for the program installed intentionally by the borrowing user. Further, for example, it is possible to allocate a spare area to a storage area for storing programs installed intentionally by the owner or user of the vehicle V. FIG. Therefore, the program installed by the borrowing user in the vehicle V rented by car sharing between individuals can be managed according to the intention of the owner or user of the vehicle V. FIG.

また、上記実施形態および変形例では、ユーザがタッチパネル等を操作することによって、車両制御更新プログラムまたは非制御更新プログラムがサーバ110から制御システム1にダウンロードされる構成を説明した。これは一例であり、例えば、ユーザの操作を必要とせず、制御システム1がサーバ110から車両制御更新プログラムをダウンロードする構成であってもよい。また、ユーザの操作を必要とせず、制御システム1がサーバ110から非制御更新プログラムをダウンロードする構成であってもよい。これらの場合に、制御システム1は、ユーザの操作に基づいて、ダウンロード済みの車両制御更新プログラム及び/または非制御更新プログラムをインストールする構成であってもよい。また、制御システム1は、ユーザの操作を伴わずに、車両制御更新プログラムをインストールしてもよい。 Further, in the above-described embodiment and modification, a configuration has been described in which the vehicle control update program or the non-control update program is downloaded from the server 110 to the control system 1 by the user operating the touch panel or the like. This is an example, and for example, the control system 1 may download the vehicle control update program from the server 110 without requiring user's operation. Alternatively, the configuration may be such that the control system 1 downloads the non-control update program from the server 110 without requiring user's operation. In these cases, the control system 1 may be configured to install the downloaded vehicle control update program and/or the non-control update program based on the user's operation. Further, the control system 1 may install the vehicle control update program without user's operation.

上記実施形態および変形例では、制御システム1がプログラム管理装置として動作する例を説明した。詳細には、制御システム1が、車両制御プログラム及び非関与プログラムを記憶するデータ記憶部52、213を備え、車両制御プログラム及び非関与プログラムの更新を管理する。これは一例であり、例えば、プログラム管理装置を、制御システム1の一部の装置として構成してもよいし、制御システム1に接続される外部装置が、プログラム管理装置として機能する構成であってもよい。 In the above embodiments and modifications, an example in which the control system 1 operates as a program management device has been described. Specifically, the control system 1 includes data storage units 52 and 213 that store vehicle control programs and non-participation programs, and manages updates of the vehicle control programs and non-participation programs. This is an example, for example, the program management device may be configured as a part of the control system 1, or an external device connected to the control system 1 may function as the program management device. good too.

また、上記実施形態で示した制御システム1の構成は一例であり、制御システム1が備えるECUの種類、ECUの数、ECUの制御対象の装置の構成は種々に変更可能である。 Also, the configuration of the control system 1 shown in the above embodiment is an example, and the types of ECUs included in the control system 1, the number of ECUs, and the configuration of devices controlled by the ECUs can be changed in various ways.

図1及び図3は、本願発明の理解を容易にするために、プログラム管理システム100の各装置の機能構成を、主な処理内容により区分して示した概略構成を示す図であり、装置の構成を限定するものではない。図5~図9、図11~図12に示した各処理は、1つのプログラムにより実行されてもよいし、複数のプログラムにより実行されてもよい。 1 and 3 are diagrams showing schematic configurations in which the functional configuration of each device of the program management system 100 is classified according to the main processing content for easy understanding of the present invention. It does not limit the configuration. Each process shown in FIGS. 5 to 9 and FIGS. 11 to 12 may be executed by one program or may be executed by a plurality of programs.

上記実施形態は、以下の構成をサポートする。 The above embodiment supports the following configurations.

(構成1)車両の外部に存在する外部装置と通信を行う通信部と、前記車両の制御を行うための車両制御プログラムを実行する制御部と、前記車両制御プログラムを記憶するプログラム記憶第1領域と、前記車両制御プログラムを記憶するプログラム記憶第2領域と、前記車両の駆動に関与しない制御を行うための非関与プログラムを記憶するプログラム記憶第3領域と、前記通信部によって受信された、前記車両制御プログラムの更新に利用される車両制御更新プログラムを、前記プログラム記憶第1領域または前記プログラム記憶第2領域の少なくとも一方に記憶させる第1処理、及び、前記通信部によって受信された、前記非関与プログラムの更新に利用される非制御更新プログラムを、前記プログラム記憶第3領域に記憶させる第2処理を実行するプログラム更新部と、を備えるプログラム管理装置。
構成1のプログラム管理装置によれば、車両の制御を行うための車両制御プログラムを記憶する領域を二重化することによって、車両制御プログラムを更新する間、更新に影響されない領域に車両制御プログラムを保持できる。このため、プログラムの更新に支障が発生することに備えて、プログラムを更新するタイミングを制限する必要がない。従って、プログラムを更新するタイミングの制約を小さくすることができる。また、非制御更新プログラムを記憶するプログラム記憶第3領域を二重化しないことによって、記憶領域の大容量化を抑制できる。さらに、プログラム記憶第3領域を、プログラム記憶第1領域及びプログラム記憶第2領域とは異なる領域とすることによって、非制御更新プログラムを記憶することに起因して、車両制御プログラムを記憶するための領域が容量不足となることがない。従って、車両のプログラムを記憶するための記憶領域の大容量化を抑制することができ、プログラムを記憶する記憶領域の不足を回避できる。
(Configuration 1) A communication unit that communicates with an external device existing outside the vehicle, a control unit that executes a vehicle control program for controlling the vehicle, and a first program storage area that stores the vehicle control program. a program storage second area for storing the vehicle control program; a program storage third area for storing a non-participating program for performing control not involved in driving the vehicle; a first process of storing a vehicle control update program used for updating the vehicle control program in at least one of the program storage first area and the program storage second area; A program management apparatus comprising: a program update unit that executes a second process of storing a non-control update program used for updating a participating program in the third program storage area.
According to the program management device of configuration 1, by duplicating the area for storing the vehicle control program for controlling the vehicle, the vehicle control program can be held in an area that is not affected by the update while the vehicle control program is being updated. . Therefore, there is no need to limit the timing of updating the program in case there is a problem with updating the program. Therefore, restrictions on the timing of updating the program can be reduced. Further, by not duplicating the third program storage area for storing the non-controlled update program, it is possible to suppress the increase in capacity of the storage area. Further, by making the third program storage area different from the first program storage area and the second program storage area, the storage of the non-control update program reduces the time required for storing the vehicle control program. The area will not run out of capacity. Therefore, it is possible to suppress an increase in the capacity of the storage area for storing the program of the vehicle, and to avoid the shortage of the storage area for storing the program.

(構成2)前記プログラム記憶第1領域はプログラム予備記憶第1領域を備え、前記プログラム記憶第2領域はプログラム予備記憶第2領域を備える、構成1に記載のプログラム管理装置。
構成2のプログラム管理装置によれば、車両制御更新プログラムを記憶する記憶領域の記憶容量の不足に対応できる。
(Arrangement 2) The program management device according to Arrangement 1, wherein the program storage first area comprises a program spare storage first area, and the program storage second area comprises a program spare storage second area.
According to the program management device of configuration 2, it is possible to cope with the lack of storage capacity of the storage area for storing the vehicle control update program.

(構成3)前記プログラム更新部は、前記第1処理において前記プログラム記憶第1領域または前記プログラム記憶第2領域の記憶容量が不足する場合に、前記車両制御更新プログラムの少なくとも一部を前記プログラム予備記憶第1領域または前記プログラム予備記憶第2領域に記憶させる、構成2に記載のプログラム管理装置。
構成3のプログラム管理装置によれば、車両制御更新プログラムを記憶する記憶領域の記憶容量が不足する場合に、プログラム予備記憶第1領域またはプログラム予備記憶第2領域を利用することによって、車両制御更新プログラムを記憶できる。これにより、記憶容量の不足により車両制御プログラムを更新できない事態を回避できる。
(Arrangement 3) The program update unit updates at least a part of the vehicle control update program to the program backup when the storage capacity of the first program storage area or the second program storage area is insufficient in the first process. The program management device according to configuration 2, wherein the program is stored in the first storage area or the second program spare storage area.
According to the program management device of configuration 3, when the storage capacity of the storage area for storing the vehicle control update program is insufficient, the vehicle control update can be performed by using the first program spare storage area or the second program spare storage area. Programs can be memorized. This avoids a situation where the vehicle control program cannot be updated due to insufficient storage capacity.

(構成4)前記プログラム記憶第3領域はプログラム予備記憶第3領域を備える、構成1から構成3のいずれか1項に記載のプログラム管理装置。
構成4のプログラム管理装置によれば、非制御更新プログラムを記憶する記憶領域の記憶容量の不足に対応できる。
(Configuration 4) The program management device according to any one of Configurations 1 to 3, wherein the third program storage area includes a third program spare storage area.
According to the program management device of configuration 4, it is possible to cope with the lack of storage capacity of the storage area for storing the uncontrolled update program.

(構成5)前記プログラム更新部は、前記第2処理において前記プログラム記憶第3領域の記憶容量が不足する場合に、前記非制御更新プログラムの少なくとも一部を前記プログラム予備記憶第3領域に記憶させる、構成4に記載のプログラム管理装置。
構成5のプログラム管理装置によれば、非制御更新プログラムを記憶する記憶領域の記憶容量が不足する場合に、プログラム予備記憶第3領域を利用することによって、非制御更新プログラムを記憶できる。これにより、記憶容量の不足により非関与プログラムを更新できない事態を回避できる。
(Configuration 5) The program update unit stores at least part of the non-controlled update program in the third program spare storage area when the storage capacity of the third program storage area is insufficient in the second process. , the program management device according to the configuration 4.
According to the program management device of configuration 5, when the storage capacity of the storage area for storing the non-controlled update program is insufficient, the non-controlled update program can be stored by using the third program spare storage area. As a result, it is possible to avoid a situation in which the non-participating program cannot be updated due to lack of storage capacity.

(構成6)前記プログラム更新部は、前記第1処理及び前記第2処理を実行可能な場合、前記第2処理が完了してから前記第1処理を実行する、構成1から構成5のいずれか1項に記載のプログラム管理装置。
構成6のプログラム管理装置によれば、非制御更新プログラムを車両制御更新プログラムより先に処理することによって、非制御更新プログラムを利用するプログラムの更新に支障等が生じた場合に、車両の制御に関係する車両制御プログラムに影響が及ぶことを防止できる。
(Configuration 6) Any one of configuration 1 to configuration 5, wherein when the first process and the second process are executable, the program update unit executes the first process after the second process is completed. 2. The program management device according to item 1.
According to the program management device of configuration 6, by processing the non-control update program before the vehicle control update program, if a problem occurs in the update of the program using the non-control update program, the control of the vehicle can be performed. It is possible to prevent related vehicle control programs from being affected.

(構成7)前記制御部は、前記車両の電源状態として前記車両の駆動源の制御が可能な電源オン状態と、前記駆動源が制御されない電源オフ状態とを設定可能であり、前記プログラム更新部が前記第2処理を実行する場合、前記第2処理が完了するまで前記電源オン状態に切り替えないことを設定する、構成1から構成6のいずれか1項に記載のプログラム管理装置。
構成7のプログラム管理装置によれば、第2処理が完了するまで車両を電源オフ状態に保つ。これにより、非制御更新プログラムによる非関与プログラムの更新中に、車両が第2プログラムを実行することがなく、非関与プログラムの更新を、より確実に実行できる。
(Arrangement 7) The control unit can set a power-on state in which a drive source of the vehicle can be controlled and a power-off state in which the drive source is not controlled as the power state of the vehicle, and the program update unit 7. The program management apparatus according to any one of configurations 1 to 6, wherein when the device executes the second processing, the switching to the power-on state is set not to occur until the second processing is completed.
According to the program management device of configuration 7, the vehicle is kept in the power-off state until the second process is completed. As a result, the vehicle does not execute the second program while the non-participating program is being updated by the non-controlling update program, and the non-participating program can be updated more reliably.

(構成8)前記制御部は、前記プログラム更新部が前記第2処理を開始可能な状態で、前記電源オン状態から前記電源オフ状態に切り替えられる場合に、前記電源オン状態に切り替えできない期間があることを通知する、構成7に記載のプログラム管理装置。
構成8のプログラム管理装置によれば、車両を使用できない期間があることを、その期間が生じる前にユーザに通知することによって、プログラムの更新に伴うユーザの利便性への影響を軽微に抑えることができる。
(Arrangement 8) When the control unit switches from the power-on state to the power-off state in a state in which the program update unit can start the second process, there is a period during which the control unit cannot switch to the power-on state. 8. The program management device according to configuration 7, notifying that.
According to the program management device of the configuration 8, by notifying the user that there is a period during which the vehicle cannot be used before the period occurs, the influence on the convenience of the user due to the update of the program is minimized. can be done.

(構成9)前記プログラム更新部は、前記第1処理において前記プログラム記憶第1領域または前記プログラム記憶第2領域の記憶容量が不足する場合に、前記プログラム記憶第3領域を使用して拡張領域を形成し、前記拡張領域に前記車両制御更新プログラムの少なくとも一部を記憶させる、構成1から構成8のいずれか1項に記載のプログラム管理装置。
構成9のプログラム管理装置によれば、記憶容量の不足により車両制御プログラムを更新できない事態を回避できる。
(Arrangement 9) When the storage capacity of the first program storage area or the second program storage area is insufficient in the first process, the program update unit uses the third program storage area to create an expansion area. 9. The program management device according to any one of configurations 1 to 8, wherein at least part of the vehicle control update program is stored in the extension area.
According to the program management device of configuration 9, it is possible to avoid a situation in which the vehicle control program cannot be updated due to insufficient storage capacity.

(構成10)前記プログラム更新部は、前記プログラム記憶第3領域を2つの分割領域に分割し、一方の前記分割領域を前記プログラム記憶第1領域に対応する前記拡張領域とし、もう一方の前記分割領域を前記プログラム記憶第2領域に対応する前記拡張領域とする、構成9に記載のプログラム管理装置。
構成10のプログラム管理装置によれば、プログラム第1記憶領域とプログラム記憶第2領域との記憶容量の差が拡大しないように、記憶領域を拡張できる。このため、車両制御プログラムを記憶する記憶領域が適切に二重化された状態を維持できる。
(Arrangement 10) The program update unit divides the third program storage area into two divided areas, one of the divided areas being the extended area corresponding to the first program storage area, and the other divided area. The program management device according to configuration 9, wherein the area is the extension area corresponding to the second program storage area.
According to the program management device of configuration 10, the storage area can be expanded so that the difference in storage capacity between the first program storage area and the second program storage area does not increase. Therefore, it is possible to maintain a state in which the storage areas for storing the vehicle control programs are appropriately duplicated.

(構成11)前記プログラム更新部は、前記車両に登録された第1ユーザの操作に基づき前記通信部から受信された前記車両制御更新プログラムを前記プログラム記憶第1領域または前記プログラム記憶第2領域に記憶させ、前記第1ユーザとは異なる第2ユーザの操作に基づき前記通信部から受信された前記車両制御更新プログラムを前記プログラム記憶第3領域に記憶させる、構成1から構成10のいずれか1項に記載のプログラム管理装置。
構成11のプログラム管理装置によれば、車両制御更新プログラムのダウンロードが第1ユーザの意図により実行された場合と、第2ユーザの意図により実行された場合とで、車両制御更新プログラムの処理を異ならせることができる。これにより、ダウンロードされた車両制御更新プログラムに対して、ダウンロードを指示したユーザが誰であるかによって、異なる処理を行うことができ、プログラムの保守および管理を容易に行える。
(Arrangement 11) The program update unit stores the vehicle control update program received from the communication unit based on the operation of the first user registered in the vehicle in the first program storage area or the second program storage area. any one of configuration 1 to configuration 10, wherein the vehicle control update program received from the communication unit based on an operation by a second user different from the first user is stored in the third program storage area. The program management device according to .
According to the program management device of configuration 11, the vehicle control update program is processed differently depending on whether the download of the vehicle control update program is executed by the intention of the first user or by the intention of the second user. can let Accordingly, different processing can be performed on the downloaded vehicle control update program depending on who is the user who instructed the download, thereby facilitating maintenance and management of the program.

(構成12)前記プログラム更新部は、前記第1ユーザの操作に基づき前記通信部から受信された前記非制御更新プログラムと、前記第2ユーザの操作に基づき前記通信部から受信された前記非制御更新プログラムとを、前記プログラム記憶第3領域において異なる記憶領域に記憶させる、構成11に記載のプログラム管理装置。
構成12のプログラム管理装置によれば、ダウンロードされた非制御更新プログラムに対して、ダウンロードを指示したユーザが誰であるかによって、異なる処理を行うことができ、プログラムの保守および管理を容易に行える。
(Configuration 12) The program update unit includes the uncontrolled update program received from the communication unit based on the operation of the first user and the uncontrolled update program received from the communication unit based on the operation of the second user. 12. The program management device according to configuration 11, wherein the update program and the update program are stored in different storage areas in the third program storage area.
According to the program management device of configuration 12, different processing can be performed on the downloaded uncontrolled update program depending on who is the user who instructed the download, and maintenance and management of the program can be easily performed. .

(構成13)前記プログラム更新部は、前記第1処理において前記プログラム記憶第1領域または前記プログラム記憶第2領域の記憶容量が不足する場合に、前記プログラム記憶第3領域において前記第2ユーザの操作に基づき前記通信部によって受信された前記非制御更新プログラムを記憶する領域に、前記車両制御更新プログラムの少なくとも一部を記憶させる、構成12に記載のプログラム管理装置。
構成13のプログラム管理装置によれば、登録された第1ユーザの指示に基づきダウンロードされた車両制御更新プログラムに対し、第2ユーザの指示に基づきダウンロードされる非制御更新プログラムよりも優先して、記憶容量を割り当てることができる。このため、より重要度の高い車両制御更新プログラムを、より確実にダウンロードし、インストールできる。
(Arrangement 13) When the storage capacity of the first program storage area or the second program storage area is insufficient in the first process, the program update unit updates the second user's operation in the third program storage area. 13. The program management device according to configuration 12, wherein at least part of the vehicle control update program is stored in an area for storing the non-control update program received by the communication unit based on the above.
According to the program management device of configuration 13, the vehicle control update program downloaded based on the registered first user's instruction is prioritized over the non-control update program downloaded based on the second user's instruction, You can allocate storage capacity. Therefore, more important vehicle control updates can be downloaded and installed more reliably.

(構成14)車両の外部に存在する外部装置と通信を行う通信部と、記憶部と、を備えるプログラム管理装置を利用するプログラム管理方法であって、前記記憶部に、前記車両の制御を行うための車両制御プログラムを記憶するプログラム記憶第1領域と、前記車両制御プログラムを記憶するプログラム記憶第2領域と、前記車両の駆動に関与しない制御を行うための非関与プログラムを記憶するプログラム記憶第3領域と、を設け、前記通信部によって受信された、前記車両制御プログラムの更新に利用される車両制御更新プログラムを、前記プログラム記憶第1領域または前記プログラム記憶第2領域の少なくとも一方に記憶させる第1処理、及び、前記通信部によって受信された、前記非関与プログラムの更新に利用される非制御更新プログラムを、前記プログラム記憶第3領域に記憶させる第2処理を実行する、プログラム管理方法。
構成14のプログラム管理方法によれば、車両の制御を行うための車両制御プログラムを記憶する領域を二重化するので、車両制御プログラムを更新する間、更新に影響されない領域に車両制御プログラムを保持できる。このため、プログラムの更新に支障が発生することに備えて、プログラムを更新するタイミングを制限する必要がない。従って、プログラムを更新するタイミングの制約を小さくすることができる。また、非制御更新プログラムを記憶するプログラム記憶第3領域を二重化しないことによって、記憶領域の大容量化を抑制できる。さらに、プログラム記憶第3領域を、プログラム記憶第1領域及びプログラム記憶第2領域とは異なる領域とすることによって、非制御更新プログラムを記憶することに起因して、車両制御プログラムを記憶するための領域が容量不足となることがない。従って、車両のプログラムを記憶するための記憶領域の大容量化を抑制することができ、プログラムを記憶する記憶領域の不足を回避できる。
(Arrangement 14) A program management method using a program management device comprising a communication unit that communicates with an external device existing outside a vehicle, and a storage unit, wherein the storage unit controls the vehicle. a first program storage area for storing a vehicle control program for driving the vehicle; a second program storage area for storing the vehicle control program; 3 areas are provided, and the vehicle control update program received by the communication unit and used for updating the vehicle control program is stored in at least one of the first program storage area and the second program storage area. A program management method that performs a first process and a second process of storing, in the third program storage area, a non-control update program that is received by the communication unit and is used to update the non-participation program.
According to the program management method of configuration 14, since the area for storing the vehicle control program for controlling the vehicle is duplicated, the vehicle control program can be held in an area that is not affected by the update while the vehicle control program is being updated. Therefore, there is no need to limit the timing of updating the program in case there is a problem with updating the program. Therefore, restrictions on the timing of updating the program can be reduced. Further, by not duplicating the third program storage area for storing the non-controlled update program, it is possible to suppress the increase in capacity of the storage area. Further, by making the third program storage area different from the first program storage area and the second program storage area, the storage of the non-control update program reduces the time required for storing the vehicle control program. The area will not run out of capacity. Therefore, it is possible to suppress an increase in the capacity of the storage area for storing the program of the vehicle, and to avoid the shortage of the storage area for storing the program.

(構成15)車両の外部に存在する外部装置と通信を行う通信部と、記憶部と、を備えるプログラム管理装置を制御するコンピュータが実行するプログラムを記憶した記録媒体であって、前記記憶部には、前記車両の制御を行うための車両制御プログラムを記憶するプログラム記憶第1領域と、前記車両制御プログラムを記憶するプログラム記憶第2領域と、前記車両の駆動に関与しない制御を行うための非関与プログラムを記憶するプログラム記憶第3領域と、が設けられ、前記コンピュータに、前記通信部によって受信された、前記車両制御プログラムの更新に利用される車両制御更新プログラムを、前記プログラム記憶第1領域または前記プログラム記憶第2領域の少なくとも一方に記憶させる第1処理、及び、前記通信部によって受信された、前記非関与プログラムの更新に利用される非制御更新プログラムを、前記プログラム記憶第3領域に記憶させる第2処理を実行させるプログラムを記憶する、記録媒体。
構成15の記録媒体に記憶されたプログラムによれば、車両の制御を行うための車両制御プログラムを記憶する領域を二重化するので、車両制御プログラムを更新する間、更新に影響されない領域に車両制御プログラムを保持できる。このため、プログラムの更新に支障が発生することに備えて、プログラムを更新するタイミングを制限する必要がない。従って、プログラムを更新するタイミングの制約を小さくすることができる。また、非制御更新プログラムを記憶するプログラム記憶第3領域を二重化しないことによって、記憶領域の大容量化を抑制できる。さらに、プログラム記憶第3領域を、プログラム記憶第1領域及びプログラム記憶第2領域とは異なる領域とすることによって、非制御更新プログラムを記憶することに起因して、車両制御プログラムを記憶するための領域が容量不足となることがない。従って、車両のプログラムを記憶するための記憶領域の大容量化を抑制することができ、プログラムを記憶する記憶領域の不足を回避できる。
(Arrangement 15) A recording medium storing a program executed by a computer that controls a program management device comprising: a communication unit that communicates with an external device that exists outside a vehicle; includes a first program storage area for storing a vehicle control program for controlling the vehicle, a second program storage area for storing the vehicle control program, and a non-control area for performing control not involved in driving the vehicle. a program storage third area for storing a participating program, wherein the computer stores the vehicle control update program received by the communication unit and used for updating the vehicle control program in the program storage first area; Alternatively, a first process of storing in at least one of the second program storage areas, and storing the uncontrolled update program received by the communication unit and used for updating the non-participating programs in the third program storage area A recording medium for storing a program for executing a second process to be stored.
According to the program stored in the recording medium of configuration 15, the area for storing the vehicle control program for controlling the vehicle is duplicated. can hold Therefore, there is no need to limit the timing of updating the program in case there is a problem with updating the program. Therefore, restrictions on the timing of updating the program can be reduced. Further, by not duplicating the third program storage area for storing the non-controlled update program, it is possible to suppress the increase in capacity of the storage area. Further, by making the third program storage area different from the first program storage area and the second program storage area, the storage of the non-control update program reduces the time required for storing the vehicle control program. The area will not run out of capacity. Therefore, it is possible to suppress an increase in the capacity of the storage area for storing the program of the vehicle, and to avoid the shortage of the storage area for storing the program.

1…制御システム(プログラム管理装置)、2…セントラルECU(制御部)、12…TCU(通信部)、20…ゾーンECU(制御部)、20a…第1ゾーンECU(制御部)、20b…第2ゾーンECU(制御部)、20c…第3ゾーンECU(制御部)、25a…シフト装置、25b…駆動源、27a…SSSW、27b…シフトSW、30、30a、30b、30c、30e、30f、30g、30h、30i…ECU、30d…ECU(制御部)、51、51a、51b、51c、212…更新実行部(プログラム更新部)、52、52a、52b、52c、213…データ記憶部、61…ブートセクタ、62…A面ブートイメージ記憶領域、63…B面ブートイメージ記憶領域、64…共通領域(プログラム記憶第3領域)、65…予備領域(プログラム予備記憶第3領域)、66…チェック用領域、70…プログラム記憶第1領域、71…A面プログラム領域、72、74…予備領域(プログラム予備記憶第1領域)、73…A面ユーザ領域、75…プログラム記憶第2領域、76…B面プログラム領域、77、79…予備領域(プログラム予備記憶第2領域)、78…B面ユーザ領域、100…プログラム管理システム、110…サーバ、120…車両診断装置、201…更新制御部、202…更新データ受信部、203…更新データ制御部、211…データ処理部、V…車両。 DESCRIPTION OF SYMBOLS 1... Control system (program management apparatus), 2... Central ECU (control part), 12... TCU (communication part), 20... Zone ECU (control part), 20a... 1st zone ECU (control part), 20b... 3rd 2-zone ECU (control section) 20c... 3rd zone ECU (control section) 25a...shift device 25b...drive source 27a...SSSW 27b...shift SW 30, 30a, 30b, 30c, 30e, 30f, 30g, 30h, 30i...ECU 30d...ECU (control unit) 51, 51a, 51b, 51c, 212...Update execution unit (program update unit) 52, 52a, 52b, 52c, 213...Data storage unit 61 Boot sector 62 Side A boot image storage area 63 Side B boot image storage area 64 Common area (third program storage area) 65 Spare area (third program spare storage area) 66 Check 70... First program storage area 71... A-side program area 72, 74... Spare area (first program spare storage area) 73... A-side user area 75... Second program storage area 76... B-side program area 77, 79 Reserve area (second program reserve storage area) 78 B-side user area 100 Program management system 110 Server 120 Vehicle diagnosis device 201 Update control unit 202 ... update data receiving unit, 203 ... update data control unit, 211 ... data processing unit, V ... vehicle.

Claims (15)

車両の外部に存在する外部装置と通信を行う通信部と、
前記車両の制御を行うための車両制御プログラムを実行する制御部と、
前記車両制御プログラムを記憶するプログラム記憶第1領域と、
前記車両制御プログラムを記憶するプログラム記憶第2領域と、
前記車両の駆動に関与しない制御を行うための非関与プログラムを記憶するプログラム記憶第3領域と、
前記通信部によって受信された、前記車両制御プログラムの更新に利用される車両制御更新プログラムを、前記プログラム記憶第1領域または前記プログラム記憶第2領域の少なくとも一方に記憶させる第1処理、及び、前記通信部によって受信された、前記非関与プログラムの更新に利用される非制御更新プログラムを、前記プログラム記憶第3領域に記憶させる第2処理を実行するプログラム更新部と、
を備えるプログラム管理装置。
a communication unit that communicates with an external device existing outside the vehicle;
a control unit that executes a vehicle control program for controlling the vehicle;
a program storage first area for storing the vehicle control program;
a program storage second area for storing the vehicle control program;
a program storage third area for storing a non-participating program for performing control that does not involve driving the vehicle;
a first process for storing the vehicle control update program received by the communication unit and used for updating the vehicle control program in at least one of the first program storage area and the second program storage area; a program update unit that executes a second process of storing, in the third program storage area, the non-control update program that is received by the communication unit and is used to update the non-participation program;
A program management device comprising:
前記プログラム記憶第1領域はプログラム予備記憶第1領域を備え、前記プログラム記憶第2領域はプログラム予備記憶第2領域を備える、請求項1に記載のプログラム管理装置。 2. The program management apparatus according to claim 1, wherein said program storage first area comprises a program spare storage first area, and said program storage second area comprises a program spare storage second area. 前記プログラム更新部は、前記第1処理において前記プログラム記憶第1領域または前記プログラム記憶第2領域の記憶容量が不足する場合に、前記車両制御更新プログラムの少なくとも一部を前記プログラム予備記憶第1領域または前記プログラム予備記憶第2領域に記憶させる、請求項2に記載のプログラム管理装置。 The program update unit stores at least part of the vehicle control update program in the first program spare storage area when the storage capacity of the first program storage area or the second program storage area is insufficient in the first process. 3. The program management device according to claim 2, wherein the program is stored in said program spare storage second area. 前記プログラム記憶第3領域はプログラム予備記憶第3領域を備える、請求項2に記載のプログラム管理装置。 3. The program management apparatus according to claim 2, wherein said program storage third area comprises a program spare storage third area. 前記プログラム更新部は、前記第2処理において前記プログラム記憶第3領域の記憶容量が不足する場合に、前記非制御更新プログラムの少なくとも一部を前記プログラム予備記憶第3領域に記憶させる、請求項4に記載のプログラム管理装置。 5. The program update unit stores at least part of the non-controlled update program in the third program spare storage area when the storage capacity of the third program storage area is insufficient in the second process. The program management device according to . 前記プログラム更新部は、前記第1処理及び前記第2処理を実行可能な場合、前記第2処理が完了してから前記第1処理を実行する、請求項1に記載のプログラム管理装置。 2. The program management apparatus according to claim 1, wherein said program updating unit executes said first process after said second process is completed when said first process and said second process are executable. 前記制御部は、前記車両の電源状態として前記車両の駆動源の制御が可能な電源オン状態と、前記駆動源が制御されない電源オフ状態とを設定可能であり、
前記プログラム更新部が前記第2処理を実行する場合、前記第2処理が完了するまで前記電源オン状態に切り替えないことを設定する、請求項1に記載のプログラム管理装置。
The control unit is capable of setting, as a power supply state of the vehicle, a power-on state in which a drive source of the vehicle can be controlled and a power-off state in which the drive source is not controlled,
2. The program management apparatus according to claim 1, wherein when said program update unit executes said second process, it is set not to switch to said power-on state until said second process is completed.
前記制御部は、前記プログラム更新部が前記第2処理を開始可能な状態で、前記電源オン状態から前記電源オフ状態に切り替えられる場合に、前記電源オン状態に切り替えできない期間があることを通知する、請求項7に記載のプログラム管理装置。 The control unit notifies that there is a period in which switching to the power-on state is not possible when the power-on state is switched to the power-off state while the program update unit is capable of starting the second process. 8. The program management apparatus according to claim 7. 前記プログラム更新部は、前記第1処理において前記プログラム記憶第1領域または前記プログラム記憶第2領域の記憶容量が不足する場合に、前記プログラム記憶第3領域を使用して拡張領域を形成し、前記拡張領域に前記車両制御更新プログラムの少なくとも一部を記憶させる、請求項1に記載のプログラム管理装置。 When the storage capacity of the first program storage area or the second program storage area is insufficient in the first process, the program update unit forms an extension area using the third program storage area, 2. The program management device according to claim 1, wherein at least part of said vehicle control update program is stored in an expansion area. 前記プログラム更新部は、前記プログラム記憶第3領域を2つの分割領域に分割し、一方の前記分割領域を前記プログラム記憶第1領域に対応する前記拡張領域とし、もう一方の前記分割領域を前記プログラム記憶第2領域に対応する前記拡張領域とする、請求項9に記載のプログラム管理装置。 The program update unit divides the third program storage area into two divided areas, one of the divided areas being the extension area corresponding to the first program storage area, and the other divided area being the program storage area. 10. The program management device according to claim 9, wherein said extended area corresponds to said second storage area. 前記プログラム更新部は、前記車両に登録された第1ユーザの操作に基づき前記通信部から受信された前記車両制御更新プログラムを前記プログラム記憶第1領域または前記プログラム記憶第2領域に記憶させ、前記第1ユーザとは異なる第2ユーザの操作に基づき前記通信部から受信された前記車両制御更新プログラムを前記プログラム記憶第3領域に記憶させる、請求項1から請求項10のいずれか1項に記載のプログラム管理装置。 The program update unit stores the vehicle control update program received from the communication unit based on an operation of a first user registered in the vehicle in the first program storage area or the second program storage area. 11. The program storage device according to any one of claims 1 to 10, wherein the vehicle control update program received from the communication unit based on an operation by a second user different from the first user is stored in the third program storage area. program management equipment. 前記プログラム更新部は、前記第1ユーザの操作に基づき前記通信部から受信された前記非制御更新プログラムと、前記第2ユーザの操作に基づき前記通信部から受信された前記非制御更新プログラムとを、前記プログラム記憶第3領域において異なる記憶領域に記憶させる、請求項11に記載のプログラム管理装置。 The program update unit updates the uncontrolled update program received from the communication unit based on the first user's operation and the uncontrolled update program received from the communication unit based on the second user's operation. 12. The program management apparatus according to claim 11, wherein said program storage third area is stored in a different storage area. 前記プログラム更新部は、前記第1処理において前記プログラム記憶第1領域または前記プログラム記憶第2領域の記憶容量が不足する場合に、前記プログラム記憶第3領域において前記第2ユーザの操作に基づき前記通信部によって受信された前記非制御更新プログラムを記憶する領域に、前記車両制御更新プログラムの少なくとも一部を記憶させる、請求項12に記載のプログラム管理装置。 When the storage capacity of the first program storage area or the second program storage area is insufficient in the first process, the program update unit performs the communication in the third program storage area based on the second user's operation. 13. The program management device according to claim 12, wherein at least part of said vehicle control update program is stored in an area for storing said non-control update program received by said unit. 車両の外部に存在する外部装置と通信を行う通信部と、記憶部と、を備えるプログラム管理装置を利用するプログラム管理方法であって、
前記記憶部に、
前記車両の制御を行うための車両制御プログラムを記憶するプログラム記憶第1領域と、
前記車両制御プログラムを記憶するプログラム記憶第2領域と、
前記車両の駆動に関与しない制御を行うための非関与プログラムを記憶するプログラム記憶第3領域と、
を設け、
前記通信部によって受信された、前記車両制御プログラムの更新に利用される車両制御更新プログラムを、前記プログラム記憶第1領域または前記プログラム記憶第2領域の少なくとも一方に記憶させる第1処理、及び、前記通信部によって受信された、前記非関与プログラムの更新に利用される非制御更新プログラムを、前記プログラム記憶第3領域に記憶させる第2処理を実行する、プログラム管理方法。
A program management method using a program management device comprising a communication unit that communicates with an external device existing outside a vehicle, and a storage unit,
in the storage unit,
a program storage first area for storing a vehicle control program for controlling the vehicle;
a program storage second area for storing the vehicle control program;
a program storage third area for storing a non-participating program for performing control that does not involve driving the vehicle;
provided,
a first process for storing the vehicle control update program received by the communication unit and used for updating the vehicle control program in at least one of the first program storage area and the second program storage area; A program management method, comprising: executing a second process of storing, in the third program storage area, a non-control update program received by a communication unit and used for updating the non-participation program.
車両の外部に存在する外部装置と通信を行う通信部と、記憶部と、を備えるプログラム管理装置を制御するコンピュータが実行するプログラムを記憶した記録媒体であって、
前記記憶部には、
前記車両の制御を行うための車両制御プログラムを記憶するプログラム記憶第1領域と、
前記車両制御プログラムを記憶するプログラム記憶第2領域と、
前記車両の駆動に関与しない制御を行うための非関与プログラムを記憶するプログラム記憶第3領域と、
が設けられ、
前記コンピュータに、前記通信部によって受信された、前記車両制御プログラムの更新に利用される車両制御更新プログラムを、前記プログラム記憶第1領域または前記プログラム記憶第2領域の少なくとも一方に記憶させる第1処理、及び、前記通信部によって受信された、前記非関与プログラムの更新に利用される非制御更新プログラムを、前記プログラム記憶第3領域に記憶させる第2処理を実行させるプログラムを記憶する、記録媒体。
A recording medium storing a program executed by a computer that controls a program management device that includes a communication unit that communicates with an external device that exists outside the vehicle, and a storage unit,
The storage unit contains
a program storage first area for storing a vehicle control program for controlling the vehicle;
a program storage second area for storing the vehicle control program;
a program storage third area for storing a non-participating program for performing control that does not involve driving the vehicle;
is provided,
A first process of causing the computer to store, in at least one of the first program storage area and the second program storage area, the vehicle control update program received by the communication unit and used for updating the vehicle control program. and a recording medium storing a program for executing a second process of storing, in the program storage third area, a non-control update program used for updating the non-participation program received by the communication unit.
JP2022137518A 2022-02-15 2022-08-31 Program management apparatus, program management method, and recording medium Pending JP2023118652A (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
US18/082,944 US20230259351A1 (en) 2022-02-15 2022-12-16 Program management device, program management method, and recording medium
CN202310095658.4A CN116610250A (en) 2022-02-15 2023-01-30 Program management device, program management method, and recording medium

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2022021062 2022-02-15
JP2022021062 2022-02-15

Publications (1)

Publication Number Publication Date
JP2023118652A true JP2023118652A (en) 2023-08-25

Family

ID=87663191

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2022137518A Pending JP2023118652A (en) 2022-02-15 2022-08-31 Program management apparatus, program management method, and recording medium

Country Status (1)

Country Link
JP (1) JP2023118652A (en)

Similar Documents

Publication Publication Date Title
JP6525105B2 (en) CONTROL DEVICE, PROGRAM UPDATE METHOD, AND COMPUTER PROGRAM
JP4809418B2 (en) Software updating apparatus and software updating method
CN105691330B (en) Telematics update software compatibility
WO2018079008A1 (en) Control device, program update method, and computer program
US20210405996A1 (en) Server, managing method, non-transitory storage medium, software updating device, center, and over-the-air master
JP4286633B2 (en) Software updating apparatus and software updating method
CN108268264A (en) Pre-shutdown exchanges verification
JP2018181377A (en) Relay device, program update system, and program update method
JP7207301B2 (en) Update controller, control method and computer program
JP2012091755A (en) Program rewriting system for vehicle
JPWO2012056773A1 (en) Program rewriting system for vehicles
WO2017208890A1 (en) Control device, control method, and computer program
KR20200032541A (en) vehicle and method for controlling the same
CN111949299A (en) Control method and device for OTA (over the air) upgrade of vehicle-mounted software
JP6394678B2 (en) Control device, control program update determination method, and computer program
US20200301695A1 (en) Control apparatus, control method, and computer program
JP6547904B2 (en) CONTROL DEVICE, PROGRAM UPDATE METHOD, AND COMPUTER PROGRAM
JP2018181376A (en) Relay device, program update system, and program update method
JP2014118071A (en) Vehicular information processing device and program update method
CN115543395A (en) Vehicle-mounted ECU upgrading method and device, electronic equipment and storage medium
US20230259354A1 (en) Program management device, program management method, and recording medium
JP2021105923A (en) Vehicle, software update system and software update method
CN115129337A (en) Control device and terminal device
US20210201599A1 (en) Vehicle and software update method
JP5551045B2 (en) Program rewriting system for vehicles

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20230328

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20240402

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20240530