JP6904067B2 - Software management system - Google Patents

Software management system Download PDF

Info

Publication number
JP6904067B2
JP6904067B2 JP2017108140A JP2017108140A JP6904067B2 JP 6904067 B2 JP6904067 B2 JP 6904067B2 JP 2017108140 A JP2017108140 A JP 2017108140A JP 2017108140 A JP2017108140 A JP 2017108140A JP 6904067 B2 JP6904067 B2 JP 6904067B2
Authority
JP
Japan
Prior art keywords
software
update
information
ecu
volatile memory
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2017108140A
Other languages
Japanese (ja)
Other versions
JP2018205896A (en
Inventor
和也 牧田
和也 牧田
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Advics Co Ltd
Original Assignee
Advics 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 Advics Co Ltd filed Critical Advics Co Ltd
Priority to JP2017108140A priority Critical patent/JP6904067B2/en
Publication of JP2018205896A publication Critical patent/JP2018205896A/en
Application granted granted Critical
Publication of JP6904067B2 publication Critical patent/JP6904067B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Description

本発明は、車載装置のソフトウェアの更新を管理するソフトウェア管理システムに関する。 The present invention relates to a software management system that manages software updates of an in-vehicle device.

従来から、無線通信により車両の外部から送信された更新ソフトウェアを、車両が受信して、車載装置のECUのソフトウェアを更新するシステムが開発されている。このシステムでは、車両に搭載された複数のECUのソフトウェアのバージョン情報を一括で管理するソフトウェア管理装置を備えることが好ましい。このようなソフトウェア管理装置としては、例えば特開2005−349878号公報に記載されている。このソフトウェア管理装置を含む従来の管理装置では、ソフトウェアのバージョン情報がハードディスクドライブ(磁気記憶装置)やフラッシュメモリのような不揮発性メモリに保存されて管理されている。 Conventionally, a system has been developed in which a vehicle receives update software transmitted from the outside of the vehicle by wireless communication and updates the software of the ECU of the in-vehicle device. This system preferably includes a software management device that collectively manages software version information of a plurality of ECUs mounted on the vehicle. Such a software management device is described in, for example, Japanese Patent Application Laid-Open No. 2005-349878. In a conventional management device including this software management device, software version information is stored and managed in a non-volatile memory such as a hard disk drive (magnetic storage device) or a flash memory.

特開2005−349878号公報Japanese Unexamined Patent Publication No. 2005-349878

ここで、本発明者は、上記無線によりソフトウェアを更新する技術の状況に着目し、ソフトウェアの更新管理についてフラッシュメモリのように書き換え回数に制約のあるメモリを用いた場合の改良すべき課題に到達した。つまり、管理装置がソフトウェア情報を一括で管理しているため、各ECUのソフトウェアが更新される度にメモリの記憶情報を書き換える必要があり、その分、メモリの書き換え回数が多くなり、メモリが寿命(書き換え回数の限界)を迎えやすくなる。メモリが寿命を迎えると、記憶情報の書き換えが困難となり、ソフトウェアの更新が精度良く行われない可能性がある。特に無線による更新が可能となることで、更新の敷居が低くなり、不具合対策目的のみならず機能向上や機能追加目的での更新も行われ、ソフトウェアの更新頻度が高まることが予想される。 Here, the present inventor pays attention to the state of the technology for updating software by radio, and reaches a problem to be improved when using a memory having a limited number of rewrites such as a flash memory for software update management. did. That is, since the management device manages the software information collectively, it is necessary to rewrite the memory information every time the software of each ECU is updated, and the number of times the memory is rewritten increases accordingly, and the memory lifespan. It becomes easier to reach (the limit of the number of rewrites). When the memory reaches the end of its life, it becomes difficult to rewrite the stored information, and the software may not be updated accurately. In particular, since wireless updates are possible, the threshold for updates will be lowered, and updates will be made not only for the purpose of troubleshooting but also for the purpose of improving functions and adding functions, and it is expected that the frequency of software updates will increase.

本発明はこのような事情に鑑みて為されたものであり、ソフトウェアの更新管理機能の長寿命化が可能なソフトウェア管理システムを提供することを目的とする。 The present invention has been made in view of such circumstances, and an object of the present invention is to provide a software management system capable of extending the life of a software update management function.

本発明のソフトウェア管理システムは、複数の車載装置のソフトウェアの更新を管理する、車両に搭載されたソフトウェア管理システムであって、前記車両の外部から無線により送信された更新ソフトウェアを受信する更新管理装置と、前記更新管理装置に通信可能に接続された、それぞれ異なる前記車載装置を制御する複数のECUと、を備え、前記更新管理装置は、各前記ECUのソフトウェア情報のうち、前記ソフトウェアを更新しても変化しない所定の不変情報を不揮発性メモリにて管理する不変情報管理部と、各前記ECUの前記ソフトウェア情報のうち、前記ソフトウェアの更新により変更され得るものであり前記ソフトウェアの更新の可否を判断するための情報である更新判断情報を揮発性メモリにて管理する更新判断情報管理部と、前記更新ソフトウェアを受信した場合、前記更新判断情報管理部が全ての前記ECUの前記更新判断情報を管理した後に、前記ソフトウェアの更新を実施するか否かの判定を行うソフトウェア更新判定部と、を備え、各前記ECUは、前記更新管理装置との間での通信開始以後に、現在の前記更新判断情報を送信する更新判断情報送信部を備える。
The software management system of the present invention is a software management system mounted on a vehicle that manages software updates of a plurality of in-vehicle devices, and is an update management device that receives update software wirelessly transmitted from the outside of the vehicle. The update management device includes a plurality of ECUs that are communicably connected to the update management device and control the different in-vehicle devices, and the update management device updates the software out of the software information of each ECU. The invariant information management unit that manages the predetermined invariant information that does not change even if the non-volatile memory, and the software information of each of the ECUs, which can be changed by updating the software, determine whether or not the software can be updated. The update judgment information management unit that manages the update judgment information which is the information for judgment in the volatile memory, and the update judgment information management unit when the update software is received, the update judgment information of all the ECUs. After management, the software update determination unit for determining whether or not to update the software is provided, and each of the ECUs has the current update after the start of communication with the update management device. It is provided with an update judgment information transmission unit that transmits judgment information.

本発明によれば、更新判断情報管理部が揮発性メモリにて更新判断情報(例えばバージョン情報)を管理しているため、ソフトウェアが更新される度に不揮発性メモリを書き換える必要がない。フラッシュメモリのような不揮発性メモリは構成上、書き換え回数に限界があるが、揮発性メモリは理論上、半永久的に書き換えが可能である。本発明によれば、書き換え回数が多い更新判断情報を、半永久的に書き換え可能な揮発性メモリにて管理するため、不揮発性メモリの書き換え回数が低減され、ソフトウェアの更新管理機能の長寿命化が可能となる。 According to the present invention, since the update determination information management unit manages the update determination information (for example, version information) in the volatile memory, it is not necessary to rewrite the non-volatile memory every time the software is updated. Non-volatile memory such as flash memory has a limited number of rewrites due to its configuration, but volatile memory can theoretically be rewritten semi-permanently. According to the present invention, since the update determination information having a large number of rewrites is managed by the volatile memory that can be rewritten semipermanently, the number of rewrites of the non-volatile memory is reduced and the life of the software update management function is extended. It will be possible.

本実施形態のソフトウェア管理システムの構成図である。It is a block diagram of the software management system of this embodiment. 本実施形態の不揮発性メモリ及び揮発性メモリの保存例を示す説明図である。It is explanatory drawing which shows the storage example of the non-volatile memory and the volatile memory of this embodiment. 本実施形態の車両通信開始時の処理を示すフローチャートである。It is a flowchart which shows the process at the time of starting the vehicle communication of this embodiment. 本実施形態の更新ソフトウェア受信時の処理を示すフローチャートである。It is a flowchart which shows the process at the time of receiving the update software of this embodiment.

以下、本発明の実施形態について図に基づいて説明する。説明に用いる各図は概念図である。本実施形態のソフトウェア管理システム1は、複数の車載装置のソフトウェアの更新を管理する、車両に搭載されたシステムである。ソフトウェア管理システム1は、図1に示すように、マスタECU(「更新管理装置」に相当する)2と、複数のスレーブECU3と、を備えている。マスタECU2は、例えばOTA(Over The Air) ECUであって、車両の外部から無線により送信された更新ソフトウェアを受信するECU(CPU等を備える電子制御ユニット)である。車両には、例えばサーバ等の外部装置Aから送信された更新ソフトウェアを受信するアンテナ(例えばフィルムアンテナ)Bが設置されており、マスタECU2はアンテナBから情報を受信する。マスタECU2は受信部を有するといえる。サーバ等の外部装置Aは、例えばOTAセンターに設置されている。マスタECU2は、更新ソフトウェアを所定のメモリに保存する。また、マスタECU2は、更新ソフトウェアを更新対象のスレーブECU3に送信する機能を有している。 Hereinafter, embodiments of the present invention will be described with reference to the drawings. Each figure used for explanation is a conceptual diagram. The software management system 1 of the present embodiment is a system mounted on a vehicle that manages software updates of a plurality of in-vehicle devices. As shown in FIG. 1, the software management system 1 includes a master ECU (corresponding to an “update management device”) 2 and a plurality of slave ECUs 3. The master ECU 2 is, for example, an OTA (Over The Air) ECU, which is an ECU (electronic control unit including a CPU or the like) that receives update software wirelessly transmitted from the outside of the vehicle. The vehicle is equipped with an antenna (for example, a film antenna) B that receives update software transmitted from an external device A such as a server, and the master ECU 2 receives information from the antenna B. It can be said that the master ECU 2 has a receiving unit. An external device A such as a server is installed in, for example, an OTA center. The master ECU 2 stores the update software in a predetermined memory. Further, the master ECU 2 has a function of transmitting update software to the slave ECU 3 to be updated.

詳細に、本実施形態のマスタECU2は、不揮発性メモリ21と、揮発性メモリ22と、不変情報管理部23と、更新判断情報管理部24と、ソフトウェア更新判定部25と、を備えている。 In detail, the master ECU 2 of the present embodiment includes a non-volatile memory 21, a volatile memory 22, an immutable information management unit 23, an update determination information management unit 24, and a software update determination unit 25.

不変情報管理部23は、各スレーブECU3のソフトウェア情報のうち、ソフトウェアを更新しても変化しない所定の不変情報を不揮発性メモリ21にて管理するように構成されている。具体的に、不変情報管理部23は、マスタECU2とスレーブECU3との通信が初めて開始された際に、スレーブECU3のソフトウェアの個別情報を読み取り(受信し)、当該個別情報を不揮発性メモリ21に書き込む。つまり、本実施形態では、所定の不変情報は、各スレーブECU3の個別情報であり、例えば図2に示すように、メーカ、車両(車名)、ECU(車載装置)、及びソフトバリエーションである。マスタECU2に接続されている全てのスレーブECU3の個別情報が、不揮発性メモリ21に保存される。なお、当該個別情報は予め不揮発性メモリ21に記憶されていても良く、この場合でも、不変情報管理部23は当該個別情報を不揮発性メモリ21にて管理(必要に応じて読み出す等)しているといえる。管理とは、少なくとも保存された情報を読み出す機能ともいえる。 The immutable information management unit 23 is configured to manage predetermined invariant information that does not change even if the software is updated in the non-volatile memory 21 among the software information of each slave ECU 3. Specifically, when the communication between the master ECU 2 and the slave ECU 3 is started for the first time, the immutable information management unit 23 reads (receives) the individual information of the software of the slave ECU 3 and transmits the individual information to the non-volatile memory 21. Write. That is, in the present embodiment, the predetermined invariant information is individual information of each slave ECU 3, and is, for example, a manufacturer, a vehicle (vehicle name), an ECU (vehicle-mounted device), and a soft variation as shown in FIG. The individual information of all the slave ECUs 3 connected to the master ECU 2 is stored in the non-volatile memory 21. The individual information may be stored in the non-volatile memory 21 in advance, and even in this case, the invariant information management unit 23 manages the individual information in the non-volatile memory 21 (reads it as necessary, etc.). It can be said that there is. Management can be said to be at least a function of reading stored information.

更新判断情報管理部24は、各スレーブECU3のソフトウェア情報のうち、ソフトウェアの更新により変更され得るものでありソフトウェアの更新の可否を判断するための情報である更新判断情報を揮発性メモリ22にて管理するように構成されている。更新判断情報は、例えばソフトウェアのバージョン情報である。本実施形態の更新判断情報は、バージョン情報を含む。以下、更新判断情報がバージョン情報であることを例に本実施形態について説明する。更新判断情報管理部24は、スレーブECU3から送信されるバージョン情報を受信し、揮発性メモリ22に書き込む。マスタECU2に接続されている全てのスレーブECU3のバージョン情報が、揮発性メモリ22に保存される。バージョン情報は、例えばID(識別情報)が付与されていること又はIDを含んでいることにより、いずれのスレーブECU3の情報であるかを識別可能となっている。 Of the software information of each slave ECU 3, the update determination information management unit 24 uses the volatile memory 22 to display update determination information, which is information for determining whether or not the software can be updated, which can be changed by updating the software. It is configured to manage. The update determination information is, for example, software version information. The update determination information of this embodiment includes version information. Hereinafter, the present embodiment will be described by taking as an example that the update determination information is version information. The update determination information management unit 24 receives the version information transmitted from the slave ECU 3 and writes it in the volatile memory 22. Version information of all slave ECUs 3 connected to the master ECU 2 is stored in the volatile memory 22. It is possible to identify which slave ECU 3 the version information is, for example, by giving an ID (identification information) or by including the ID.

ソフトウェア更新判定部25は、更新ソフトウェアを受信した場合、ソフトウェアの更新を実施するか否かを判定するように構成されている。具体的に、ソフトウェア更新判定部25は、揮発性メモリ22に保存された更新対象のスレーブECU3のバージョン情報と、更新ソフトウェアのバージョン情報とを比較して、更新の必要性があるか否かを判定する。ソフトウェア更新判定部25は、両者のバージョン情報が一致している場合、更新を実施しないと判定する。一方、ソフトウェア更新判定部25は、更新ソフトウェアのバージョン情報が揮発性メモリに保存された対象のスレーブECU3のバージョン情報よりも新しい場合、原則として、更新を実施すると判定する。ソフトウェア更新判定部25は、更新を実施すると判定した場合、更新ソフトウェアを対象のスレーブECU3に送信する。当該更新ソフトウェアの送信は、ユーザから更新の承諾を得た後に行うように設定されても良い。 When the software update determination unit 25 receives the update software, the software update determination unit 25 is configured to determine whether or not to update the software. Specifically, the software update determination unit 25 compares the version information of the slave ECU 3 to be updated stored in the volatile memory 22 with the version information of the update software, and determines whether or not there is a need for update. judge. If the version information of both is the same, the software update determination unit 25 determines that the update is not performed. On the other hand, when the version information of the update software is newer than the version information of the target slave ECU 3 stored in the volatile memory, the software update determination unit 25 determines that the update is performed in principle. When the software update determination unit 25 determines that the update is to be performed, the software update determination unit 25 transmits the update software to the target slave ECU 3. The transmission of the update software may be set to be performed after obtaining the consent of the update from the user.

ここで、本実施形態のソフトウェア更新判定部25は、外部装置AからマスタECU2が更新ソフトウェアを受信した場合、更新判断情報管理部24が全てのスレーブECU3のバージョン情報を管理した後に、ソフトウェアの更新を実施するか否かの判定を行うように構成されている。つまり、ソフトウェア更新判定部25は、揮発性メモリ22に全てのスレーブECU3のバージョン情報が記憶された後に、ソフトウェアを更新するか否かを判定する。例えば、マスタECU2は、更新ソフトウェアを受信する度に全てのバージョン情報が揃っているか否かを判定し、揃っていない場合には更新の可否を判定せず、揃っている場合に更新の可否を判定する。例えば、1回目の更新ソフトウェア受信時に全スレーブECU3のバージョン情報が揃っていなくても、2回目の更新ソフトウェア受信時に揃っていれば、その際に更新の可否を判定する。 Here, the software update determination unit 25 of the present embodiment updates the software after the update determination information management unit 24 manages the version information of all the slave ECUs 3 when the master ECU 2 receives the update software from the external device A. Is configured to determine whether or not to carry out. That is, the software update determination unit 25 determines whether or not to update the software after the version information of all the slave ECUs 3 is stored in the volatile memory 22. For example, the master ECU 2 determines whether or not all the version information is available each time it receives the update software, and if it is not available, it does not determine whether or not the update is possible, and if it is available, it determines whether or not the update is possible. judge. For example, even if the version information of all slave ECUs 3 is not available at the time of receiving the first update software, if it is available at the time of receiving the second update software, it is determined whether or not the update is possible.

これにより、スレーブECU3間でソフトウェアのバージョンの対応をとらなくてはならない場合にも、適切にソフトウェアの更新を実施することができる。例えば、第1のスレーブECU3のソフトウェアがバージョンXである場合、第2のスレーブECU3のソフトウェアはバージョンZでなくてはならない等(バージョンYだと不都合がある等)の更新条件に応じて、ソフトウェア更新判定部25が更新の可否や順番等を適切に判定することができる。 As a result, even when it is necessary to correspond the software version between the slave ECUs 3, the software can be updated appropriately. For example, when the software of the first slave ECU 3 is version X, the software of the second slave ECU 3 must be version Z, etc. (version Y is inconvenient, etc.) according to the update conditions. The update determination unit 25 can appropriately determine whether or not to update, the order, and the like.

複数のスレーブECU3は、マスタECU2に通信可能に接続されており、それぞれ異なる車載装置を制御するECUである。例えば、図1に示すように、第1のスレーブECU3はエンジン(ENG)を制御するECUであり、第2のスレーブECU3は変速機(T/M)を制御するECUであり、第3のスレーブECU3はステアリング(STR)を制御するECUであり、第4のスレーブECU3はブレーキ装置(ESC)を制御するECUである。各スレーブECU3は、一般のECU同様、図示しないが、ソフトウェア等を記憶する不揮発性メモリと、制御を実行する演算処理部(CPU)と、を備えている。 The plurality of slave ECUs 3 are communicably connected to the master ECU 2 and are ECUs that control different in-vehicle devices. For example, as shown in FIG. 1, the first slave ECU 3 is an ECU that controls an engine (ENG), the second slave ECU 3 is an ECU that controls a transmission (T / M), and a third slave. The ECU 3 is an ECU that controls the steering (STR), and the fourth slave ECU 3 is an ECU that controls the braking device (ESC). Like a general ECU, each slave ECU 3 includes a non-volatile memory for storing software and the like, and an arithmetic processing unit (CPU) for executing control, although not shown.

さらに、各スレーブECU3は、マスタECU2との間での通信開始以後に、現在のソフトウェアのバージョン情報を送信する更新判断情報送信部31を備えている。マスタECU2とスレーブECU3との間の通信は、例えばイグニッションがオンされた際に開始される。本実施形態の更新判断情報送信部31は、通信が開始された時、自身のソフトウェアのバージョン情報をマスタECU2に送信する。当該送信は一度だけ行われれば良い。マスタECU2が、各スレーブECU3のソフトウェアのバージョン情報を読み取るともいえる。車両通信は主にCANにより構成されている。 Further, each slave ECU 3 includes an update determination information transmission unit 31 that transmits current software version information after the start of communication with the master ECU 2. Communication between the master ECU 2 and the slave ECU 3 is started, for example, when the ignition is turned on. When the communication is started, the update determination information transmission unit 31 of the present embodiment transmits the version information of its own software to the master ECU 2. The transmission only needs to be done once. It can be said that the master ECU 2 reads the software version information of each slave ECU 3. Vehicle communication is mainly composed of CAN.

車両通信開始時の処理の流れを、図3を参照して説明する。電源が投入され(S101)、イニシャルチェックが完了すると(S102)、車両通信が開始される(S103)。そして、各スレーブECU3の更新判断情報送信部31がマスタECU2にバージョン情報を送信する(S104)。マスタECU2の更新判断情報管理部24は、受信した各バージョン情報を揮発性メモリ22に保存する(S105)。そして、通常の処理に移行する。 The flow of processing at the start of vehicle communication will be described with reference to FIG. When the power is turned on (S101) and the initial check is completed (S102), vehicle communication is started (S103). Then, the update determination information transmission unit 31 of each slave ECU 3 transmits the version information to the master ECU 2 (S104). The update determination information management unit 24 of the master ECU 2 saves each received version information in the volatile memory 22 (S105). Then, the process shifts to normal processing.

さらに、本実施形態の更新判断情報送信部31は、ソフトウェアの更新が実施された場合、更新後のバージョン情報をマスタECU2に送信するように構成されている。更新判断情報管理部24は、受信した更新後のバージョン情報を揮発性メモリ22に上書きして管理情報を更新する。これにより、マスタECU2がソフトウェアの更新の完了を認識することができる上、更新判断情報管理部24が最新のバージョン情報を揮発性メモリ22にて管理することができる。なお、更新判断情報送信部31の機能は、スレーブECU3のCPU等が実行する機能の1つといえる。 Further, the update determination information transmission unit 31 of the present embodiment is configured to transmit the updated version information to the master ECU 2 when the software is updated. The update determination information management unit 24 updates the management information by overwriting the received updated version information on the volatile memory 22. As a result, the master ECU 2 can recognize the completion of the software update, and the update determination information management unit 24 can manage the latest version information in the volatile memory 22. The function of the update determination information transmission unit 31 can be said to be one of the functions executed by the CPU or the like of the slave ECU 3.

ここで、本実施形態のソフトウェア更新処理の流れについて図4を参照して説明する。まず、マスタECU2がソフトウェアの更新情報を受信すると(S201)、ソフトウェア更新判定部25が全スレーブECU3からバージョン情報を受信済みであるか否か、すなわち揮発性メモリ22に全てのスレーブECU3のバージョン情報が保存されているか否かが判定される(S202)。全スレーブECU3のバージョン情報が保存されている場合(S202:Yes)、ソフトウェア更新判定部25は、不揮発性メモリ21に保存された車両メーカの情報を参照して、更新ソフトウェアの対象の車両メーカと自車両のメーカとが一致しているか否かを判定する(S203)。車両メーカが一致している場合(S203:Yes)、ソフトウェア更新判定部25は、更新ソフトウェアの対象の車両(車名)と、不揮発性メモリ21に保存された自車両の車名とが一致しているか否かを判定する(S204)。車名が一致している場合(S204:Yes)、ソフトウェア更新判定部25は、不揮発性メモリ21を参照して、更新ソフトウェアの対象のスレーブECU3が自車両に搭載されているか否かを判定する(S205)。 Here, the flow of the software update process of the present embodiment will be described with reference to FIG. First, when the master ECU 2 receives the software update information (S201), whether or not the software update determination unit 25 has received the version information from all the slave ECUs 3, that is, the version information of all the slave ECUs 3 in the volatile memory 22. Is determined whether or not is stored (S202). When the version information of all slave ECUs 3 is saved (S202: Yes), the software update determination unit 25 refers to the vehicle maker information saved in the non-volatile memory 21 with the vehicle maker targeted for the update software. It is determined whether or not the manufacturer of the own vehicle matches (S203). When the vehicle manufacturers match (S203: Yes), the software update determination unit 25 matches the vehicle (vehicle name) targeted by the update software with the vehicle name of the own vehicle stored in the non-volatile memory 21. It is determined whether or not the software is used (S204). When the vehicle names match (S204: Yes), the software update determination unit 25 refers to the non-volatile memory 21 and determines whether or not the slave ECU 3 targeted by the update software is installed in the own vehicle. (S205).

更新対象のスレーブECU3が自車両に搭載されている場合(S205:Yes)、ソフトウェア更新判定部25は、不揮発性メモリ21を参照して、更新ソフトウェアの対象のソフトバリエーションと、更新対象のスレーブECU3のソフトバリエーションとが一致しているか否かを判定する(S206)。両者のソフトバリエーションが一致している場合(S206:Yes)、ソフトウェア更新判定部25は、揮発性メモリ22を参照して、更新ソフトウェアのバージョンが更新対象のソフトウェアのバージョンよりも新しいか否かを判定する(S207)。更新ソフトウェアのバージョンが自車両のものよりも新しい場合(S207:Yes)、ソフトウェア更新判定部25は、更新を実施すると判定し、対象のスレーブECU3に更新ソフトウェアを送信してソフトウェアの更新を実行する(S208)。 When the slave ECU 3 to be updated is mounted on the own vehicle (S205: Yes), the software update determination unit 25 refers to the non-volatile memory 21 and refers to the software variation of the update software and the slave ECU 3 to be updated. It is determined whether or not the soft variation of the above is the same (S206). When both software variations match (S206: Yes), the software update determination unit 25 refers to the volatile memory 22 and determines whether or not the version of the update software is newer than the version of the software to be updated. Judgment (S207). When the version of the update software is newer than that of the own vehicle (S207: Yes), the software update determination unit 25 determines that the update is to be performed, transmits the update software to the target slave ECU 3, and executes the software update. (S208).

そして更新完了後、更新されたスレーブECU3の更新判断情報送信部31が更新後のバージョン情報をマスタECU2に送信する(S209)。マスタECU2は、更新したスレーブECU3について、更新前のバージョン情報を削除し、更新後のバージョン情報を揮発性メモリ22に書き込む(S210)。これにより、更新処理は終了し、通常処理に移行する。また、ステップS202〜S207の何れかにおいて「No」となると、更新処理は終了し、通常処理に移行する。また、例えば、ステップS207において、ソフトウェア更新判定部25は、更新ソフトウェアのバージョンと更新対象外のスレーブECU3のソフトウェアのバージョンとの関係から、更新の可否や更新順を判定しても良い。 Then, after the update is completed, the update determination information transmission unit 31 of the updated slave ECU 3 transmits the updated version information to the master ECU 2 (S209). The master ECU 2 deletes the version information before the update for the updated slave ECU 3, and writes the updated version information to the volatile memory 22 (S210). As a result, the update process is completed, and the process shifts to the normal process. When "No" is obtained in any of steps S202 to S207, the update process ends and the process proceeds to the normal process. Further, for example, in step S207, the software update determination unit 25 may determine whether or not to update and the update order based on the relationship between the version of the update software and the software version of the slave ECU 3 that is not the update target.

本実施形態のソフトウェア管理システム1によれば、更新判断情報管理部24が揮発性メモリ22にてバージョン情報を管理しているため、ソフトウェアが更新される度に不揮発性メモリ21を書き換える必要がない。つまり、本実施形態によれば、更新と一括管理により書き換え回数が多くなるバージョン情報を、理論上半永久的に書き換え可能な揮発性メモリ22にて保存・管理するため、書き換え回数に限界がある不揮発性メモリ21の書き換え回数が低減され、ソフトウェアの更新管理機能の長寿命化が可能となる。 According to the software management system 1 of the present embodiment, since the update determination information management unit 24 manages the version information in the volatile memory 22, it is not necessary to rewrite the non-volatile memory 21 every time the software is updated. .. That is, according to the present embodiment, the version information that is rewritten many times due to update and batch management is stored and managed in the volatile memory 22 that can be rewritten semi-permanently in theory, so that the number of rewrites is limited. The number of rewrites of the volatile memory 21 is reduced, and the life of the software update management function can be extended.

また、マスタECUとしての機能を兼ねるナビゲーション装置等(不揮発性メモリとしてハードディスクドライブを有する装置)が搭載されていない車両に対してマスタECUを搭載する場合、マスタECUの不揮発性メモリ(21)として書き換え回数に制約のある例えばEEPROM又はフラッシュメモリを採用することで、上記効果(ソフトウェア管理機能の長寿命化)を発揮させつつ、不揮発性メモリにハードディスクドライブを採用する場合と比べてマスタECUの小型化が可能となる。 Further, when the master ECU is mounted on a vehicle that is not equipped with a navigation device or the like (a device having a hard disk drive as a non-volatile memory) that also functions as a master ECU, it is rewritten as the non-volatile memory (21) of the master ECU. By adopting, for example, EEPROM or flash memory, which has a limited number of times, the above effect (extending the life of the software management function) is exhibited, and the size of the master ECU is reduced compared to the case where a hard disk drive is adopted as the non-volatile memory. Is possible.

(その他)
本発明は、上記実施形態に限られない。揮発性メモリ22は、バージョン情報以外に、ソフトウェアの更新により変更される情報(変更情報)を保存するように構成されても良い。つまり、更新判断情報は、バージョン情報に限られず、例えば、ある機能(機能Qとする)がソフトウェアに入っているか否かにより更新の可否を判断する場合、当該機能Qの有無に関する情報が更新判断情報となり得る。本実施形態の揮発性メモリ22は、少なくともバージョン情報を含む変更情報を保存するといえる。また、更新管理装置は、マスタECU2だけに限らず、例えば、互いに通信可能なマスタECUとゲートウェイECUとで構成されても良い。この場合、例えばマスタECUが更新ソフトウェアを受信し、ゲートウェイECUが更新ソフトウェアを記憶し、スレーブECUに送信するように構成されても良い。また、スレーブECU3は、予めグループ分けされた所定のグループ内のECUであっても良い。
(Other)
The present invention is not limited to the above embodiment. The volatile memory 22 may be configured to store information (change information) that is changed by updating software, in addition to version information. That is, the update determination information is not limited to version information. For example, when determining whether or not a certain function (referred to as function Q) can be updated based on whether or not it is included in the software, the information regarding the presence or absence of the function Q is determined to be updated. It can be information. It can be said that the volatile memory 22 of the present embodiment stores change information including at least version information. Further, the update management device is not limited to the master ECU 2, and may be composed of, for example, a master ECU and a gateway ECU that can communicate with each other. In this case, for example, the master ECU may be configured to receive the update software, and the gateway ECU may be configured to store the update software and transmit it to the slave ECU. Further, the slave ECU 3 may be an ECU in a predetermined group that has been grouped in advance.

また、ソフトウェア更新判定部25は、揮発性メモリ22に全てのスレーブECU3のバージョン情報が記憶されていない状態であっても、更新対象のソフトウェアのバージョン情報が記憶されている場合、その状態で更新判定を行うように構成されても良い。また、更新方法は、公知の技術を用いることができる。また、ソフトウェアの更新は、ユーザの承認後や車両電源がオフされた後(例えばイグニッションがオフされた後)等、所定のタイミングで開始させることができる。 Further, even if the version information of all the slave ECUs 3 is not stored in the volatile memory 22, the software update determination unit 25 updates in that state when the version information of the software to be updated is stored. It may be configured to make a determination. Further, as the updating method, a known technique can be used. Further, the software update can be started at a predetermined timing, such as after the user approves or after the vehicle power is turned off (for example, after the ignition is turned off).

1…ソフトウェア管理システム、2…マスタECU(更新管理装置)、21…不揮発性メモリ、22…揮発性メモリ、23…不変情報管理部、24…更新判断情報管理部、25…ソフトウェア更新判定部、3…スレーブECU、31…更新判断情報送信部、A…外部装置。
1 ... Software management system, 2 ... Master ECU (update management device), 21 ... Non-volatile memory, 22 ... Volatile memory, 23 ... Immutable information management unit, 24 ... Update judgment information management unit, 25 ... Software update judgment unit, 3 ... Slave ECU, 31 ... Update judgment information transmitter, A ... External device.

Claims (2)

複数の車載装置のソフトウェアの更新を管理する、車両に搭載されたソフトウェア管理システムであって、
前記車両の外部から無線により送信された更新ソフトウェアを受信する更新管理装置と、
前記更新管理装置に通信可能に接続された、それぞれ異なる前記車載装置を制御する複数のECUと、
を備え、
前記更新管理装置は、
各前記ECUのソフトウェア情報のうち、前記ソフトウェアを更新しても変化しない所定の不変情報を不揮発性メモリにて管理する不変情報管理部と、
各前記ECUの前記ソフトウェア情報のうち、前記ソフトウェアの更新により変更され得るものであり前記ソフトウェアの更新の可否を判断するための情報である更新判断情報を揮発性メモリにて管理する更新判断情報管理部と、
前記更新ソフトウェアを受信した場合、前記更新判断情報管理部が全ての前記ECUの前記更新判断情報を管理した後に、前記ソフトウェアの更新を実施するか否かの判定を行うソフトウェア更新判定部と、
を備え、
各前記ECUは、前記更新管理装置との間での通信開始以後に、現在の前記更新判断情報を送信する更新判断情報送信部を備えるソフトウェア管理システム。
A software management system installed in a vehicle that manages software updates for multiple in-vehicle devices.
An update management device that receives update software transmitted wirelessly from outside the vehicle, and
A plurality of ECUs that are communicably connected to the update management device and control the different in-vehicle devices, and
With
The update management device is
Of the software information of each ECU, the invariant information management unit that manages the predetermined invariant information that does not change even if the software is updated by the non-volatile memory.
Of the software information of each ECU, update judgment information management that manages update judgment information that can be changed by updating the software and is information for determining whether or not the software can be updated in a volatile memory. Department and
When the update software is received, the software update determination unit determines whether or not to update the software after the update determination information management unit manages the update determination information of all the ECUs.
With
Each of the ECUs is a software management system including an update determination information transmitting unit that transmits the current update determination information after the start of communication with the update management device.
前記更新判断情報送信部は、前記ソフトウェアの更新が実施された場合、更新後の前記更新判断情報を前記更新管理装置に送信する請求項1に記載のソフトウェア管理システム。 The software management system according to claim 1, wherein the update determination information transmitting unit transmits the updated update determination information to the update management device when the software is updated.
JP2017108140A 2017-05-31 2017-05-31 Software management system Active JP6904067B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2017108140A JP6904067B2 (en) 2017-05-31 2017-05-31 Software management system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2017108140A JP6904067B2 (en) 2017-05-31 2017-05-31 Software management system

Publications (2)

Publication Number Publication Date
JP2018205896A JP2018205896A (en) 2018-12-27
JP6904067B2 true JP6904067B2 (en) 2021-07-14

Family

ID=64957758

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2017108140A Active JP6904067B2 (en) 2017-05-31 2017-05-31 Software management system

Country Status (1)

Country Link
JP (1) JP6904067B2 (en)

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4889411B2 (en) * 2006-08-30 2012-03-07 株式会社オートネットワーク技術研究所 In-vehicle device communication system and distribution device
JP2011148398A (en) * 2010-01-21 2011-08-04 Denso Corp Program update system for vehicle
WO2014087613A1 (en) * 2012-12-05 2014-06-12 パナソニック株式会社 Communication device, electronic equipment, communication method and vehicle key

Also Published As

Publication number Publication date
JP2018205896A (en) 2018-12-27

Similar Documents

Publication Publication Date Title
JP6665728B2 (en) In-vehicle update device, in-vehicle update system and communication device update method
CN109643254B (en) Vehicle-mounted updating system, vehicle-mounted updating device and updating method of communication device
JP6361671B2 (en) Program update system, program update method, relay device, and computer program
WO2018142750A1 (en) Control device, program updating method, and computer program
JP2018037059A (en) On-vehicle update device and on-vehicle update system
JP2017157003A5 (en)
JPWO2018142751A1 (en) Control device, program update method, and computer program
WO2018154949A1 (en) Program updating system, control device, program updating method and computer program
JP2017157007A (en) System, method, and computer program for updating programs
JP2019159401A (en) Electronic control unit system, and software consistency check system in electronic control unit system
JP2019036855A (en) Control device, control method, and computer program
JPWO2018230084A1 (en) Update control device, control method, and computer program
CN107102849B (en) Method and apparatus for file replacement with periodic ignition switch off
CN105365502A (en) Universal tire pressure sensor
US20210173634A1 (en) Vehicle control device and program update system
WO2014147906A1 (en) Data storage device, method for storing data, and onboard control device
JP6904067B2 (en) Software management system
WO2018142749A1 (en) Control device, program updating method, and computer program
JP2022041194A (en) On-vehicle apparatus, information generation method, information generation program, and vehicle
JP7087334B2 (en) Electronic control device
WO2020195034A1 (en) Vehicle-mounted update device, update processing system, update processing method, and processing program
US20220342653A1 (en) Ota master, center, system, update method, non-transitory storage medium, and vehicle
US20220019424A1 (en) Software update apparatus, update control method, non-transitory storage medium storing update control program, server, ota master, and center
US11954480B2 (en) Center, OTA master, system, method, non-transitory storage medium, and vehicle
JP6988636B2 (en) Reprogramming method

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20200408

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20210222

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20210224

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20210302

RD02 Notification of acceptance of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7422

Effective date: 20210303

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20210329

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

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20210525

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20210607

R150 Certificate of patent or registration of utility model

Ref document number: 6904067

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150