WO2014148003A1 - 車載電子制御装置のプログラム書換システム及び車載中継装置 - Google Patents

車載電子制御装置のプログラム書換システム及び車載中継装置 Download PDF

Info

Publication number
WO2014148003A1
WO2014148003A1 PCT/JP2014/001389 JP2014001389W WO2014148003A1 WO 2014148003 A1 WO2014148003 A1 WO 2014148003A1 JP 2014001389 W JP2014001389 W JP 2014001389W WO 2014148003 A1 WO2014148003 A1 WO 2014148003A1
Authority
WO
WIPO (PCT)
Prior art keywords
program
vehicle
electronic control
unit
control device
Prior art date
Application number
PCT/JP2014/001389
Other languages
English (en)
French (fr)
Inventor
拓矢 長谷川
豪 榎崎
雅人 久米
充啓 夏目
Original Assignee
株式会社デンソー
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 株式会社デンソー filed Critical 株式会社デンソー
Publication of WO2014148003A1 publication Critical patent/WO2014148003A1/ja

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/445Program loading or initiating
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0706Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment
    • G06F11/0736Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment in functional embedded systems, i.e. in a data processing system designed as a combination of hardware and software dedicated to performing a certain function
    • G06F11/0739Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment in functional embedded systems, i.e. in a data processing system designed as a combination of hardware and software dedicated to performing a certain function in a data processing system embedded in automotive or aircraft systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0793Remedial or corrective actions
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operation
    • G06F11/1402Saving, restoring, recovering or retrying
    • G06F11/1415Saving, restoring, recovering or retrying at system level
    • G06F11/1433Saving, restoring, recovering or retrying at system level during software upgrading

Definitions

  • the present disclosure relates to a program rewriting system for an in-vehicle electronic control device and an in-vehicle relay device for rewriting an in-vehicle electronic control device program connected in a predetermined protocol in an on-board state.
  • an ECU Electronic Control Unit
  • DLC vehicle diagnostic connector
  • ECU-specific tool directly to the ECU
  • Patent Document 1 has been proposed as a technique for reducing the rewriting time of a program, this Patent Document 1 does not assume rewriting of an ECU connected by a multi-protocol. For this reason, if multi-protocolization of in-vehicle communication (Flex Ray (registered trademark), Ethernet (registered trademark), etc.) proceeds in the future, rewriting tools for the number of protocols will be required to rewrite multiple ECUs. Longer time is assumed.
  • in-vehicle communication Fex Ray (registered trademark), Ethernet (registered trademark), etc.
  • the present disclosure has been made in view of the above circumstances, and a purpose thereof is a program rewriting system for an in-vehicle electronic control device and an in-vehicle relay capable of shortening a program rewriting time of the in-vehicle electronic control device connected by a multi-protocol. To provide an apparatus.
  • a program rewriting system for an in-vehicle electronic control device includes an in-vehicle network device that connects an in-vehicle electronic control device in a communicable manner with a predetermined protocol, and an in-vehicle relay device that connects a plurality of the in-vehicle network devices with different protocols And a program supply unit for supplying a new program to be rewritten from outside the vehicle to the in-vehicle relay device, and the in-vehicle relay device stores a program stored in a storage unit of the in-vehicle electronic control device to be rewritten. The program is updated to a new program supplied from the program supply unit.
  • the in-vehicle relay device stores a new program supplied from the program supply unit as an old program, a new program supplied from the program supply unit, and the program storage unit corresponding to the new program.
  • the new and old program comparison unit for identifying the difference data that is different from the old program in the new program by comparing the stored old program, and the in-vehicle device for which the difference data specified by the old and new program comparison unit is to be rewritten
  • a protocol conversion unit that converts the protocol to the protocol of the in-vehicle network device to which the electronic control device belongs and transmits the protocol.
  • the on-vehicle electronic control device stores the difference data received from the protocol conversion unit in a corresponding area in the storage unit.
  • the difference data different from the old program is specified in the new program of the electronic control device supplied from the program supply unit.
  • the difference data is stored in the electronic control unit, it is possible to achieve time reduction and man-hour reduction as compared with the case where all programs are rewritten, thereby realizing user satisfaction and operator satisfaction.
  • the in-vehicle relay device supports the multi-protocol, it is not necessary to prepare a plurality of rewriting tools corresponding to the protocol.
  • FIG. 1 is a block diagram illustrating an overall configuration of a system according to an embodiment of the present disclosure.
  • FIG. 2 is a functional block diagram showing the in-vehicle relay device.
  • FIG. 3 is a block diagram of the ECU for explaining rewriting.
  • FIG. 4 is a flowchart showing operations of the information center, the in-vehicle relay device, the ECU, and the user.
  • program rewriting system rewrites the program of the electronic control apparatus mounted in the vehicle in an on-board state.
  • the program rewriting system of the present embodiment includes an in-vehicle network device 100 having a predetermined protocol installed in a vehicle, an in-vehicle relay device 200 that connects the in-vehicle network device 100 having a different protocol, and the in-vehicle relay.
  • An information center 300 (corresponding to a program supply unit) that transmits a program to the apparatus 200 is configured.
  • the in-vehicle network device 100 includes a plurality of ECUs 101 (corresponding to in-vehicle electronic control devices), an in-vehicle network 102 that connects these ECUs 101, various devices such as actuators and displays (not shown) controlled by the ECU 101, and vehicle information. It is comprised from the sensor, switch, etc. which are input into ECU101.
  • ECU101 is classified into a control system, an information system, a body system, an AVC system, etc., and ECU101 which belongs to the same system is connected by the same in-vehicle network 102.
  • the in-vehicle network 102 is CAN, MOST (Media Oriented Systems Transport), Flex Ray, Ethernet, or the like.
  • CAN is a control system network
  • ECU 101 connected thereto is an engine ECU, brake ECU, door lock ECU, air conditioner ECU, etc.
  • MOST is an information system network
  • ECU 101 connected thereto is A navigation device ECU, an audio ECU, a telephone ECU, and the like.
  • the ECUs 101 connected to the same in-vehicle network 102 can communicate with each other because the protocols are the same, but cannot communicate with the ECUs 101 connected to different in-vehicle networks 102 because the protocol is different. For this reason, each in-vehicle network 102 is connected to the in-vehicle relay device 200.
  • the in-vehicle relay device 200 includes a CPU 201, a ROM 202, and a RAM 203. Various functions are enabled when the CPU 201 executes a program stored in the ROM 202, and a protocol conversion unit 205 is provided as one of the functions.
  • the protocol conversion unit 205 performs protocol conversion on data received from the ECU 101 belonging to one system and transmits the data to the ECU 101 belonging to another system, so that the ECUs 101 connected to the in-vehicle network 102 having different protocols can communicate with each other. ing.
  • the data acquired by one ECU 101 can be used by other ECUs 101 and data can be shared. Thereby, it is not necessary to provide a plurality of sensors or switches for acquiring the same data for each in-vehicle network 102, and the configuration of the entire in-vehicle network device 100 can be simplified.
  • the CPU 201 executes the program stored in the ROM 202 as functions implemented in addition to the protocol conversion unit 205 described above, the old and new program comparison unit 204, the rewrite priority management unit 206, the encryption / decryption A unit 207, a compression / decompression unit 208, a fail-safe processing unit 209, and a risk information notification unit 210 are provided.
  • the in-vehicle relay device 200 includes a relay function unit 213 as a function of connecting a plurality of in-vehicle network devices 100 having different protocols, and a data storage function unit as a function of realizing a program rewriting function. 214.
  • the relay function unit 213 includes an RxMB (reception memory block) 213a, a RAM buffer 213b, and a TxMB (transmission memory block) 213c, and the protocol is converted in the TxMB 213c.
  • the data storage function unit 214 includes an encryption processing unit 214a, a data storage unit 214b, and a data generation unit 214c.
  • the encryption processing unit 214a performs a process of decrypting data encrypted with the public key.
  • the data storage unit 214b stores and stores the new program decrypted by the encryption processing unit 214a in a compressed state.
  • the data generation unit 214c decompresses the new program stored in the data storage unit 214b and the old program corresponding to the new program, searches for difference data with different data by comparing the two, and the difference data in the new program Is output to TxMB 213c.
  • TxMB 213c the input data is converted into a network protocol to which the ECU 101 to be rewritten as a transmission destination belongs and transmitted.
  • the in-vehicle relay device 200 has a flash ROM 202a (corresponding to a program storage unit and a user preference setting storage unit) as a large-scale memory, and the flash ROM 202a receives the information from the information center 300.
  • the new program is compressed and stored as an old program.
  • the ECU 101 also has a flash ROM 101a (corresponding to a storage unit).
  • the flash ROM 101a is divided into a rewritable area and a non-rewritable area, and an old program is stored in the rewritable area.
  • a boot area is set in the non-rewritable area, and a boot program for enabling the CPU 201 to read the program is stored in the boot area.
  • This boot program has a partial rewriting function, and a rewriting process for rewriting a part of the old program to the new program can be executed by the partial rewriting function.
  • user-preferred settings are stored in the EEPROM 101b which is a small-scale memory.
  • the user preference is a function that, for example, assumes a scene where a plurality of users share one vehicle, stores user preference settings in the in-vehicle relay device 200, and the user calls the preference settings from the in-vehicle relay device 200. It is.
  • the in-vehicle relay device 200 sets the called user preference in the ECU 101.
  • each user can use one vehicle with the preference setting. , The stress experienced by the user can be reduced.
  • user preferences include seat position, steering position, mirror position, etc., but for example, a setting to notify the user of the parking position by flashing the light by operating the remote control key is added. It may be possible to use the vehicle as an answerback or sounding device by opening / closing a door, operating a specific switch, or changing the display specifications of the meter. By setting such user preferences, it is possible to uniquely arrange the operation of the vehicle according to the preferences that the user likes. Such a setting is performed by calling a setting preset in the in-vehicle relay device 200 and turning it on / off, or by selecting an arbitrary setting from a plurality of settings.
  • the information center 300 shown in FIG. 1 is operated by the vehicle manufacturer itself or a contractor entrusted by the vehicle manufacturer, and manages the program stored in the ECU 101 mounted on the vehicle manufactured by the vehicle manufacturer for each vehicle.
  • This server is provided with a database (DB) for managing the update history of the program of the ECU 101 for each vehicle. That is, when the program of the ECU 101 is updated, an update program management DB 301 is provided that stores and stores the updated program corresponding to the vehicle.
  • an update result management DB 302 (corresponding to an update result management unit) is provided for accumulating and storing rewrite success / failure by a response from the vehicle when the program of the ECU 101 is updated.
  • the information center 300 stores destination information (for example, IP) for each in-vehicle relay device 200 mounted on a vehicle, and when updating a program of a specific ECU 101 mounted on a specific vehicle type, a new program is compressed. It is encrypted in the state and transmitted to the in-vehicle relay device 200 through the mobile phone network 400.
  • destination information for example, IP
  • the in-vehicle relay device 200 includes a communication device 212 that can be wirelessly connected to the base station 401.
  • a communication device 212 that can be wirelessly connected to the base station 401.
  • the information program 300 compresses the new program, and further public key Encrypt with the public key of the encryption method.
  • the public key is created so that the in-vehicle relay device 200 to be rewritten becomes a pair of secret keys stored in the memory in advance. That is, the information center 300 stores an exchange key corresponding to each in-vehicle relay device 200, and when a new program is transmitted to a specific in-vehicle relay device 200, the new program is compressed with the exchange key in a compressed state.
  • each vehicle-mounted relay apparatus 200 is compressed. Encrypt with the corresponding public key and send it all at once. If there are a plurality of ECUs 101 to be rewritten, a plurality of new programs are compressed and transmitted with the public key in a compressed state.
  • the information center 300 When the information center 300 updates the program of the ECU 101, the information center 300 notifies the vehicle-mounted relay device 200 of the vehicle on which the ECU 101 to be rewritten is installed as shown in FIG.
  • This rewrite notification includes information that can identify the new program and the ECU 101 to be rewritten.
  • the in-vehicle relay device 200 When the in-vehicle relay device 200 receives the rewrite notification from the information center 300, the in-vehicle relay device 200 decrypts the received information using the private key held by the encryption / decryption unit 207 and then decompresses it by the compression / decompression unit 208. Get the program. At this time, the old program and old user preference settings compressed and stored at the time of the previous program update to the ECU 101 to be rewritten are decompressed. As a result, the in-vehicle relay device 200 holds both the new program for the ECU 101 and the old program currently stored in the ECU 101, and therefore performs a difference comparison between these programs.
  • the new program and the old program are compared for each unit block to search for differential data that is different data, and the differential data in the new program is determined to be rewritten.
  • the unit block including the difference data in the new program is transmitted to the ECU 101.
  • the unit block has a blank part other than the program area. This is because by providing a blank portion in the unit block, even if the program area in the unit block increases, the increase can be absorbed by the blank portion.
  • the distributed difference data can be rewritten by sequentially rewriting the unit blocks.
  • the blank part has a feature that new functions other than the simple differential replog as described above can be added, that is, a new function logic that becomes a difference and bug correction can be implemented.
  • the in-vehicle relay device 200 confirms / determines the rewrite order by the rewrite priority management unit 206.
  • This rewrite order confirmation / determination is performed when there are a plurality of ECUs 101 to be rewritten, whether or not the control system ECU 101 is included as the rewrite target ECU 101, and the control system ECU 101 is included.
  • the rewriting order is determined so that the program of the ECU 101 of the control system is rewritten preferentially over the ECU 101 of the other system.
  • operations related to the control system related to running, stopping, turning, etc. of the vehicle are particularly important, so that the control of the ECU 101 of the control system is preferentially updated so as not to hinder the vehicle control. -ing
  • the in-vehicle relay device 200 then performs fail-safe processing by the fail-safe processing unit 209.
  • the program stored in the ECU 101 by the fail-safe processing unit 209 and user preference settings are stored in the save RAM 203 of the in-vehicle relay device 200. That is, when the rewriting to the new program fails, the program saved in the in-vehicle relay device 200 and the user preference setting are returned to the ECU 101, whereby the program of the ECU 101 and the user preference setting can be restored.
  • the in-vehicle relay device 200 then makes a user notification determination by the risk information notification unit 210.
  • This user notification determination specifies the ECU 101 to be rewritten indicated by the rewrite notification, and notifies the user of risk information assumed when the program of the ECU 101 is updated.
  • the risk information relates to vehicle functions that cannot be used when the update of the new program does not end normally.
  • the vehicle function includes basic functions of the vehicle such as running, turning, and stopping, functions related to vehicle equipment, and information related to a response when the program update fails. Specifically, depending on the degree of risk in the event of a program update failure, it is instructed to enter the dealer, instruct to execute the reprogram, or notify the total time required for the reprogram Etc.
  • the user determines the risk indicated by the user notification determination and decides whether to permit rewriting.
  • the in-vehicle relay device 200 executes rewrite processing of difference data by the protocol conversion unit 205 in accordance with the rewriting order determined as described above.
  • the bus load of the in-vehicle network 102 of the control system is 20% or more, for example, it is determined that the rewriting time is long, and the rewriting is performed from the program of the ECU 101 connected to the other in-vehicle network 102.
  • the ECU 101 is configured to execute an operation customized by the user. That is, as shown in FIG. 3, the CPU 101d of the ECU 101 has a function of controlling the user to prefer the control target based on the user preference setting stored in the EEPROM 101b.
  • the above-described program differential data rewriting function is also applied to user preference settings. That is, the in-vehicle relay device 200 stores the user preference setting set by the user in the flash ROM 202a in a compressed manner.
  • the new and old program comparison unit 204 compares the new user preference settings made this time with the old user preference settings stored in the flash ROM.
  • the difference data is retrieved, and the difference data in the new user preference setting is transmitted to the ECU 101.
  • the user preference setting can be updated by storing the difference data received by the ECU 101 in the corresponding memory area of the EEPROM 101b.
  • the user-preferred setting is a simple data change such as turning on / off a preset operation item or selecting a desired setting from a plurality of settings, so the program is updated.
  • the address of the difference data does not fluctuate.
  • an EEPROM 101b that can be rewritten in units of memory addresses is employed as a memory in which the ECU 101 stores user-preferred settings.
  • the rewriting time can be shortened by rewriting the difference data.
  • the rewriting time is significantly reduced as compared with the case where the entire program is updated. be able to.
  • the address stored for each setting is the same for the new user preference setting and the old user preference setting, no address management processing is required. In this respect, the rewriting time can be shortened. .
  • the in-vehicle relay device 200 notifies the user when rewriting is completed.
  • the new program is compressed by the compression / decompression unit 208 and stored in the flash ROM 202a.
  • the in-vehicle relay device 200 notifies the information center 300 of the end of rewriting. At this time, when rewriting fails, the rewriting failure is transmitted to the information center 300.
  • the information center 300 holds the update history in the update record management DB 302 when receiving a rewrite end (rewrite failure) notification from the in-vehicle relay device 200. Therefore, when it is stored in the update record management DB 302 that a plurality of rewrites have failed, it is possible to investigate and deal with the cause of the failure by tracking the update history. Thus, by performing a plurality of fail-safe processes as described above, it is possible to prevent problems that occur during writing.
  • the in-vehicle relay device 200 When rewriting the program of the ECU 101 connected by the multi-protocol in an on-board state, the in-vehicle relay device 200 corresponding to the multi-protocol searches the difference data by comparing the new program and the old program, and the difference in the new program Since the data is transmitted to the ECU 101 and stored, compared with a configuration in which all programs are rewritten, time reduction and man-hour reduction can be achieved, and user satisfaction and operator satisfaction can be realized. In addition, since the in-vehicle relay device 200 supports the multi-protocol, it is not necessary to prepare a plurality of rewriting tools corresponding to the protocol, and the configuration can be simplified.
  • the on-vehicle relay device 200 updates the programs of the plurality of ECUs 101, the rewrite priority is determined, and the difference data is protocol-converted and transmitted sequentially from the ECU 101 having the high rewrite priority.
  • the program of the ECU 101 to which it belongs can be preferentially updated.
  • the information center 300 encrypts and transmits the new program with the public key in a compressed state, and the in-vehicle relay device 200 decrypts the received new program with the private key and decompresses it, so that the new program is a public network. Even if transmission / reception is performed via the mobile phone network 400, it is possible to prevent the new program from leaking to an external third party due to encryption, and to reduce the capacity of the new program through compression.
  • the in-vehicle relay device 200 Since the in-vehicle relay device 200 notifies the user of risk information at the time of rewriting that is assumed when the program of the ECU 101 is updated, even if the user fails to update the program in advance, It is possible to deal with the notified risk.
  • the update result of the program for the ECU 101 is transmitted to the information center 300, and the update result is accumulated and stored in the update result management DB 302 of the information center 300, so the program update has failed continuously. In such a case, it is possible to appropriately cope with the failure by analyzing the contents of the update failure.
  • the new user preference setting is compared with the old user preference setting to search for difference data, and the difference data in the new user preference setting is transmitted to the ECU 101. Therefore, the rewriting time can be shortened as compared with a configuration in which all user-preferred settings are rewritten.
  • the in-vehicle relay device 200 updates the program of the ECU 101 or the user preference setting
  • the program stored in the ECU 101 and the user preference setting are temporarily stored in the RAM 203 and saved. It is possible to restore the program and user preference settings to the ECU 101 at the time of rewriting to.
  • Each ECU 101 divides and sets the memory allocation of the program in advance so that partial reprogramming can be performed for each functional unit block, so that a blank area of a predetermined area remains in each block.
  • the blank part has a feature that enables new function logic implementation and bug correction.
  • new function additions other than simple differential reprolog can be reprogressed at high speed.
  • the program is updated by the in-vehicle relay device 200 in the unit block of the flash ROM 101a of the ECU 101, the increase in the difference data can be absorbed by the blank portion, so that the program stored in the flash ROM 101a is securely rewritten. Can.
  • the embodiment of the present disclosure is not limited to the above embodiment.
  • the above embodiment may be modified or expanded as follows, each modification may be combined with the above embodiment, or each modification may be combined.
  • the new program is wirelessly transmitted from the information center 300 to the in-vehicle relay device 200.
  • the new program is supplied from the information center 300 to the service tool of the dealer and connected to the in-vehicle relay device 200. You may make it do.
  • the new program may be transmitted to a mobile phone carried by the user and supplied from the mobile phone to the in-vehicle relay device 200 by, for example, Bluetooth (registered trademark).
  • the program of the ECU 101 may be rewritten when the vehicle is stopped.
  • a car navigation device may have the function of the in-vehicle relay device 200.

Abstract

 マルチプロトコルで接続された車載電子制御装置(101)のプログラムの書換時間の短縮を図ることができる車載電子制御装置(101)のプログラム書換システム及び車載中継装置(200)を提供する。一実施形態において、マルチプロトコルで接続された車載電子制御装置(101)のプログラムをオンボード状態で書換える場合に、マルチプロトコルに対応した車載中継装置(200)において新プログラムと旧プログラムとの差分データを検索し、新プログラムにおける差分データを車載電子制御装置(101)に送信して記憶するようにした。

Description

車載電子制御装置のプログラム書換システム及び車載中継装置 関連出願の相互参照
 本出願は、2013年3月19日に出願された日本国特許出願2013-56441号に基づくものであり、ここにその開示を参照により援用する。
 本開示は、所定のプロトコルで接続された車載電子制御装置のプログラムをオンボード状態で書換える車載電子制御装置のプログラム書換システム及び車載中継装置に関する。
 従来より、車両に搭載されたECU(Electronic Control Unit)のプログラムを、そのプログラムが格納されたメモリをECUに搭載したままのオンボード状態で書換えることが実施されている。具体的には、ECUの書換えには、サービスツールを車両ダイアグコネクター(DLC)に接続、或いはECU固有のツールをECUと直接つなぎ、ECUに搭載されたフラッシュROM内蔵マイコンのプログラムの全書換えを実施している。
特開2006-277615号公報
 ところで、プログラムのバグによりECUによる制御に何らかの不具合が発生することが想定される場合には、ECUのプログラムを書換える必要を生じる。車載ネットワークが搭載された車両において、このような場面を想定すると、車載通信の主流プロトコルは、CAN(Controller Area Network)や、LIN(Local Interconnect Network)等であり、これらのプロトコルは通信速度が遅いことから、プログラムの書換時間が長いという欠点があった。このため、不具合によるECUの書換時は、車両の販売店に来店したユーザを長く待たせてしまったり、作業者の工数増加によるコストアップが発生したりしてしまう。
 また、量産後にプログラムの変更が起こると、実装時に予め決められたメモリの指定領域を変更する場合であっても、プログラムの全領域を書換えする必要がある。さらに、プログラムの大幅なバージョンアップによって、複数のECUのプログラムを同時に書換える場面を想定すると、一層の時間を要する。
 プログラムの書換時間の短縮を実現する技術として特許文献1が提案されているが、この特許文献1は、マルチプロトコルで接続されたECUの書換えを想定していない。このため、今後、車載通信のマルチプロトコル化(Flex Ray(登録商標)、Ethernet(登録商標)等)が進むと、複数のECUの書換えにはプロトコルの数だけ書換ツールが必要となり、書換時間の長時間化が想定される。
 本開示は上記事情に鑑みてなされたもので、その目的は、マルチプロトコルで接続された車載電子制御装置のプログラムの書換時間の短縮を図ることができる車載電子制御装置のプログラム書換システム及び車載中継装置を提供することにある。
 本開示の一例に係る車載電子制御装置のプログラム書換システムは、所定のプロトコルで車載電子制御装置を通信可能に接続する車載ネットワーク装置と、プロトコルが異なる複数の前記車載ネットワーク装置を接続する車載中継装置と、該車載中継装置へ書換対象の新プログラムを車外から供給するプログラム供給部と、を備え、前記車載中継装置は、書換対象となる前記車載電子制御装置の記憶部に記憶されているプログラムを前記プログラム供給部から供給された新プログラムに更新する。前記車載中継装置は、前記プログラム供給部から供給された新プログラムを旧プログラムとして記憶するプログラム記憶部と、前記プログラム供給部から供給された新プログラムと当該新プログラムに対応して前記プログラム記憶部に記憶されている旧プログラムとを比較することにより新プログラムにおいて旧プログラムと異なるデータである差分データを特定する新旧プログラム比較部と、前記新旧プログラム比較部が特定した差分データを書換対象となる前記車載電子制御装置が所属する前記車載ネットワーク装置のプロトコルに変換して送信するプロトコル変換部と、を備える。前記車載電子制御装置は、前記プロトコル変換部から受信した差分データを前記記憶部における該当領域に記憶する。
 このようなプログラム書換システム及び車載中継装置によれば、マルチプロトコルで電子制御装置を接続する車載中継装置において、プログラム供給部から供給された電子制御装置の新プログラムにおいて旧プログラムと異なる差分データを特定し、その差分データを電子制御装置に記憶するようにしたので、全てのプログラムを書換える場合に比較して、時間短縮、工数削減を達成でき、ユーザ満足、作業者満足を実現することができる。しかも、車載中継装置がマルチプロトコルに対応していることから、プロトコルに対応した複数の書換ツールを用意する必要がなくなる。
図1は、本開示の一実施形態におけるシステムの全体構成を示すブロック図である。 図2は、車載中継装置を示す機能ブロック図である。 図3は、書換えを説明するためのECUのブロック図である。 図4は、情報センタ、車載中継装置、ECU、ユーザの動作を示す流れ図である。
 以下、一実施形態に係るプログラム書換システムについて、図面を参照して説明する。尚、本実施形態のプログラム書換システムは、車両に搭載された電子制御装置のプログラムをオンボード状態で書換えるものである。
 図1に示すように、本実施形態のプログラム書換システムは、車両に搭載された所定のプロトコルの車載ネットワーク装置100と、異なるプロトコルの車載ネットワーク装置100を接続する車載中継装置200と、この車載中継装置200にプログラムを送信する情報センタ300(プログラム供給部に相当)とから構成されている。
 車載ネットワーク装置100は、複数のECU101(車載電子制御装置に相当)と、これらのECU101を接続する車載ネットワーク102と、ECU101により制御される図示しないアクチュエータやディスプレイ等の各種機器、及び車両の情報をECU101に入力させるセンサやスイッチ等から構成されている。
 ECU101は、制御系、情報系、ボディ系、AVC系等に分類され、同じ系に属するECU101は同じ車載ネットワーク102により接続されている。車載ネットワーク102としては、CAN、MOST(Media Oriented Systems Transport)、Flex Ray、Ethernet等である。CANは制御系ネットワークであり、これに接続されるECU101としては、エンジンECU、ブレーキECU、ドアロックECU、エアコンECU等である、MOSTは情報系ネットワークであり、これに接続されるECU101としては、ナビゲーション装置ECU、オーディオECU、電話ECU等である。
 尚、基幹系のメインネットワークである例えばCANに接続されたECU101は、サブネットワークであるLINを介して他のECU101と通信可能となっている。
 同じ車載ネットワーク102に接続されたECU101同士はプロトコルが同じであることから通信可能であるが、異なる車載ネットワーク102に接続されたECU101とはプロトコルが異なるため通信することができない。このため、各車載ネットワーク102は車載中継装置200に接続されている。この車載中継装置200は、CPU201、ROM202、RAM203を備えて構成されている。CPU201がROM202に記憶されたプログラムを実行することで各種機能が有効となり、その機能の一つとしてプロトコル変換部205が設けられている。このプロトコル変換部205により一の系に属するECU101から受信したデータをプロトコル変換して他の系に属するECU101に送信することにより、異なるプロトコルの車載ネットワーク102に接続されたECU101同士が通信可能となっている。このような異なる系に属するECU101同士が通信可能となる結果、一のECU101が取得したデータを他のECU101が使用可能になり、データの共有化を図ることができる。これにより、車載ネットワーク102毎に同じデータを取得するための複数のセンサ、或いはスイッチを設ける必要がなくなり、車載ネットワーク装置100全体の構成の簡単化を図ることができる。
 車載中継装置200には、CPU201がROM202に記憶されたプログラムを実行することで実施される機能として、上記したプロトコル変換部205の他、新旧プログラム比較部204、書換優先度管理部206、暗号復号部207、圧縮・解凍部208、フェールセーフ処理部209、リスク情報通知部210が設けられている。
 図2に示すように、車載中継装置200は、プロトコルが異なる複数の車載ネットワーク装置100を接続する機能として中継機能部213を備えていると共に、プログラムの書換機能を実現する機能としてデータ蓄積機能部214を備えている。中継機能部213は、RxMB(受信用メモリブロック)213a、RAMバッファ213b、TxMB(送信用メモリブロック)213cから構成されており、TxMB213cにおいてプロトコルが変換される。データ蓄積機能部214は、暗号処理部214a、データ記憶部214b、データ生成部214cを備えて構成されている。暗号処理部214aは、公開鍵により暗号化されたデータを復号する処理を実施する。データ記憶部214bは、暗号処理部214aにより復号された新プログラムを圧縮した状態で蓄積して記憶する。データ生成部214cは、データ記憶部214bに記憶されている新プログラムと当該新プログラムに対応する旧プログラムを解凍し、両者を比較することでデータが異なる差分データを検索し、新プログラムにおける差分データをTxMB213cに出力する。TxMB213cでは、入力したデータを送信先の書換対象のECU101が所属するネットワークのプロトコルに変換して送信する。
 図3に示すように、車載中継装置200は、大規模メモリとしてフラッシュROM202a(プログラム記憶部、ユーザ好みの設定記憶部に相当)を有しており、そのフラッシュROM202aに、情報センタ300から受信した新プログラムを圧縮して旧プログラムとして蓄積記憶する。一方、ECU101もフラッシュROM101a(記憶部に相当)を有している。フラッシュROM101aは書換対象領域と非書換領域とに区分けされており、書換対象領域に旧プログラムが記憶されている。非書換領域にはBoot領域が設定されており、そのBoot領域に、CPU201がプログラムを読込可能とするためのブートプログラムが記憶されている。このブートプログラムは部分書換機能を有しており、その部分書換機能により旧プログラムの一部を新プログラムに書換える書換処理を実行することができる。
 一方、小規模メモリであるEEPROM101bにはユーザ好みの設定が記憶されている。ユーザ好みとは、例えば複数のユーザが1台の車両をシェアする場面を想定すると、車載中継装置200にユーザ好みの設定を記憶しておき、ユーザが車載中継装置200から好みの設定を呼出す機能である。車載中継装置200は、呼出されたユーザ好みをECU101に設定するもので、ECU101がユーザ好みに応じて動作することで、それぞれのユーザが好みの設定で1台の車両を使用することが可能となり、ユーザが受けるストレスを低減することができる。
 ユーザ好みの具体的な使用例としては、シートポジション、ステアリングポジション、ミラーポジションなどが代表例であるが、例えばリモコンキーに対する操作によりライトを点滅させることで駐車位置をユーザに通知する設定を追加したり、ドアの開閉、特定のスイッチ操作などにより車両をアンサーバックや吹鳴装置として使用することを可能としたり、メータの表示仕様を変更したりすることが考えられる。このようなユーザ好みを設定することで、ユーザが好む趣向に応じて車両の動作を独自にアレンジすることが可能となる。このような設定は、車載中継装置200に予め設定されている設定を呼び出してON/OFFしたり、複数の設定の中から任意の設定を選択したりすることで行われる。
 図1に示す情報センタ300は、車両製造会社自身或いは車両製造会社から委託された業者が運営するもので、車両製造会社が製造した車両に搭載されたECU101に記憶されたプログラムを車両毎に管理するサーバを備えている。このサーバには、車両毎のECU101のプログラムの更新履歴を管理するデータベース(DB)が設けられている。つまり、ECU101のプログラムを更新した場合は、更新したプログラムを車両に対応して蓄積記憶する更新プログラム管理DB301が設けられている。また、ECU101のプログラムを更新した際に車両からの応答により書換えの成否を累積記憶する更新実績管理DB302(更新実績管理部に相当)が設けられている。情報センタ300は、車両に搭載された車載中継装置200毎に宛先情報(例えばIP)を記憶しており、特定車種に搭載された特定のECU101のプログラムを更新する場合は、新プログラムを圧縮した状態で暗号化して車載中継装置200に携帯電話回線網400を通じて送信する。
 車載中継装置200は基地局401と無線接続可能な通信機212を備えており、情報センタ300から新プログラムを受信したときは、後述するようにして書換対象のECU101に記憶されている旧プログラムを新プログラムに更新する。
 次に上記構成の作用について説明する。
 車両に搭載された特定のECU101に記憶されたプログラムに例えばバグが発見され、そのプログラムをバグが修正された新プログラムに更新する場合は、情報センタ300において、新プログラムを圧縮し、さらに公開鍵暗号化方式の公開鍵で暗号化する。公開鍵は、書換対象となる車載中継装置200が予めメモリに記憶している秘密鍵のペアとなるように作成されたものである。つまり、情報センタ300には、各車載中継装置200に対応した交換鍵を記憶しており、特定の車載中継装置200に新プログラムを送信する場合は、新プログラムを圧縮した状態で交換鍵により暗号化する。このようにECU101のプログラムを更新する場合は、同一車種の多数の車両に搭載されたECU101のプログラムを一斉に修正する必要があることから、新プログラムを圧縮した状態でそれぞれの車載中継装置200に対応した公開鍵で暗号化して一斉送信する。また、書換対象のECU101が複数存在する場合は、複数の新プログラムを圧縮した状態で公開鍵により暗号化して送信することになる。
 情報センタ300は、ECU101のプログラムを更新する場合は、図4に示すように書換対象となるECU101が搭載された車両の車載中継装置200に書換通知する。この書換通知には、新プログラム及び書換対象となるECU101を特定可能な情報が含まれている。
 車載中継装置200は、情報センタ300からの書換通知を受信すると、受信情報を暗号復号部207により自己が保有する秘密鍵を用いて復号化してから、圧縮・解凍部208により解凍することにより新プログラムを取得する。このとき、書換対象となるECU101に対する前回のプログラム更新時に圧縮して蓄積記憶していた旧プログラム及び旧ユーザ好みの設定を解凍する。これにより、車載中継装置200は、ECU101に対する新プログラムと現在ECU101に記憶されている旧プログラムの両方を保有することになるので、それらのプログラムの差分比較を実施する。つまり、新プログラムと旧プログラムとを単位ブロック毎に比較して異なるデータである差分データを検索し、新プログラムにおける差分データを書換対象と判断するのである。この場合、フラッシュROMの消去、或いは書込などのアクセスは単位ブロックで行われることから、新プログラムにおいて差分データが含まれる単位ブロックをECU101に送信することになる。
 ここで、単位ブロックにはプログラム領域以外となる空白部が設けられている。これは、単位ブロックに空白部を設けることで、単位ブロックにおけるプログラム領域が増大するような場合であっても、その増大分を空白部により吸収することが可能となる。また、差分データが複数の単位ブロックに分散しているときは、単位ブロックずつ順に書換えを実施することで、分散した差分データの書換えが可能となる。さらに、空白部は、以上のような単純な差分リプログ以外の新機能追加、つまり差分となる新機能ロジック実装やバグ修正が可能となる特長をもつ。
 車載中継装置200は、次に書換優先度管理部206により書換順序を確認・決定する。この書換順序の確認・決定は、書換対象となるECU101が複数の場合に、書換対象のECU101として制御系のECU101が含まれているか否かを確認し、制御系のECU101が含まれている場合には、制御系のECU101のプログラムを他の系のECU101よりも優先的に書換えるように書換順序を決定するものである。つまり、車両の走る、止まる、曲がる等の走行に関わる制御系に関する動作は特に重要であることから、制御系のECU101のプログラムを優先的に更新することにより車両の制御に支障を生じないようにしているのである。
 車載中継装置200は、次にフェールセーフ処理部209によりフェールセーフ処理を実行する。このフェールセーフ処理は、フェールセーフ処理部209によりECU101に記憶されているプログラム及びユーザ好みの設定を車載中継装置200の退避用のRAM203に記憶するものである。つまり、新プログラムへの書換失敗時に、車載中継装置200に退避しているプログラム及びユーザ好みの設定をECU101に戻すことで、ECU101のプログラム及びユーザ好みの設定を復帰することができる。
 車載中継装置200は、次にリスク情報通知部210によりユーザ通知判断を行う。このユーザ通知判断は、書換通知が示す書換対象となるECU101を特定し、当該ECU101のプログラムを更新した場合に想定されるリスク情報をユーザに対して通知するものである。リスク情報としては、新プログラムの更新が正常に終了しない場合に利用不可となる車両機能に関するものである。車両機能としては、走行、旋回、停止等の車両の基本機能の他、車両装備に関する機能、さらにはプログラムの更新が失敗した場合における対応に関する情報が含まれる。具体的には、プログラムの更新が失敗した場合のリスクの大きさに応じて、ディーラへの入庫を指示したり、再プログラムの実行を指示したり、再プログラムに要する総時間を通知したりする等である。
 ユーザは、ユーザ通知判断が示すリスクを判断して書換えを許可するかを決定する。車載中継装置200は、ユーザが書換えを許可した場合、上述のようにして決められた書換順序に従い、プロトコル変換部205により差分データの書換処理を実行する。この場合、制御系の車載ネットワーク102のバス負荷が例えば20%以上であれば、書換時間が長くなると判断し、他の車載ネットワーク102に接続されたECU101のプログラムから書換える。これにより、書換対象となるECU101が複数存在する場合であっても、プログラム全体の書換えを効率よく行うことができ、全体の書換時間の短縮を図ることができる。
 一方、ECU101は、ユーザがカスタマイズした動作を実行するように構成されている。つまり、ECU101のCPU101dは、図3に示すようにEEPROM101bに記憶されているユーザ好みの設定に基づいて制御対象をユーザが好むように制御する機能を有する。
 本実施形態では、上述したプログラムの差分データ書換機能をユーザの好み設定にも適用するものである。つまり、車載中継装置200は、フラッシュROM202aにユーザにより設定されたユーザ好みの設定を圧縮して記憶している。そして、ユーザが車両の動作をユーザ好みの設定によりカスタマイズした場合は、新旧プログラム比較部204により今回行われた新ユーザ好みの設定とフラッシュROMに記憶している旧ユーザ好みの設定とを比較することにより差分データを検索し、新ユーザ好みの設定における差分データをECU101に送信する。これにより、ECU101が受信した差分データをEEPROM101bの該当するメモリ領域に記憶することでユーザ好みの設定を更新することができる。この場合、ユーザ好みの設定は、予め設定された動作項目をON/OFFしたり、複数の設定のうちから所望の設定を選択したりするという単純なデータの変更であるから、プログラムを更新する場合のように差分データのアドレスが変動することはない。このような事情から、ECU101がユーザ好みの設定を記憶するメモリとしてメモリアドレス単位で書換可能なEEPROM101bが採用されている。このようなユーザ好みの設定に関しても、差分データの書換えを行うことで、書換時間の短縮が可能となる。
 以上のような書換えを実施することにより、ECU101のプログラムを更新する場合は、単位ブロックの書換えのみで済むことから、プログラム全体を更新する場合に比較して、書換時間の大幅な時間短縮を図ることができる。また、新ユーザ好みの設定と旧ユーザ好みの設定とは設定毎に記憶されるアドレスが同一であることから、アドレス管理処理が不要であり、この点でも書換時間の時間短縮を図ることができる。
 車載中継装置200は、書換えが終了したときは、そのことをユーザに通知する。プログラムが更新されたECU101の動作が正常であることをユーザが確認したときは、圧縮・解凍部208により新プログラムを圧縮してフラッシュROM202aに記憶する。
 次に車載中継装置200は、書換終了を情報センタ300に通知する。このとき、書換えを失敗したときは、書換失敗を情報センタ300に送信する。
 情報センタ300は、車載中継装置200から書換終了(書換失敗)の通知を受信したときは、更新履歴を更新実績管理DB302に保持する。したがって、更新実績管理DB302に複数回の書換えが失敗したことが記憶されている場合には、更新履歴を追跡することで、不具合の発生原因を追究して対応することが可能となる。このように上述したような複数のフェールセーフ処理を行うことで、書込時に発生する不具合を防止することができる。
 以上のような本実施形態によれば、次のような効果を奏することができる。
 マルチプロトコルで接続されたECU101のプログラムをオンボード状態で書換える場合に、マルチプロトコルに対応した車載中継装置200において新プログラムと旧プログラムとを比較することにより差分データを検索し、新プログラムにおける差分データをECU101に送信して記憶するようにしたので、全てのプログラムを書換える構成に比較して、時間短縮、工数削減を達成でき、ユーザ満足、作業者満足を実現することができる。しかも、車載中継装置200がマルチプロトコルに対応していることから、プロトコルに対応した複数の書換ツールを用意する必要がなくなり、構成の簡単化を図ることができる。
 車載中継装置200は、複数のECU101のプログラムを更新する場合は、書換優先度を判定し、書換優先度の高いECU101から差分データをプロトコル変換して順に送信するので、重要性の高い制御系に属するECU101のプログラムを優先的に更新することができる。
 情報センタ300は新プログラムを圧縮した状態で公開鍵により暗号化して送信し、車載中継装置200は、受信した新プログラムを秘密鍵で復号化してから解凍するので、新プログラムを公衆回線網である携帯電話回線網400を介して送受信するにしても、暗号化により新プログラムが外部の第3者に漏洩してしまうことを防止できると共に、圧縮により新プログラムの容量の低減を図ることができる。
 車載中継装置200は、ECU101のプログラムを更新した場合に想定される書換時のリスク情報をユーザに対して通知するようにしたので、ユーザは、プログラムの更新を失敗した場合であっても事前に通知されたリスクにより対処することが可能となる。
 ECU101に対するプログラムの更新結果を情報センタ300に送信し、情報センタ300の更新実績管理DB302において更新結果を更新実績管理DBに蓄積して記憶するようにしたので、プログラムの更新を連続して失敗した場合は、更新を失敗した内容を解析することにより適切に対処することが可能となる。
 ユーザ好みの設定に関しても、上述したプログラムの更新と同様に、新ユーザ好みの設定と旧ユーザ好みの設定とを比較して差分データを検索し、新ユーザ好みの設定における差分データをECU101に送信して記憶するようにしたので、ユーザ好みの設定を全て書換える構成に比較して、書換時間の短縮を図ることができる。
 車載中継装置200は、ECU101のプログラム或いはユーザ好みの設定を更新する場合は、ECU101に記憶されているプログラム及びユーザ好みの設定をRAM203に一時的に記憶して退避させるようにしたので、新プログラムへの書換失敗時に、ECU101にプログラム及びユーザ好みの設定を復帰させることが可能となる。
 それぞれのECU101は、機能単位ブロックごとに部分リプログできるように、プログラムのメモリ配置をあらかじめブロック単位で分割設定しておき、各ブロックには、所定領域の空白部が残るようにした。空白部は、新機能ロジック実装やバグ修正が可能なようにしている特長をもつ。これにより、中継装置200が差分リプログする際、単純な差分リプログ以外の新機能追加も高速にリプログできることが可能となる。一方、車載中継装置200によりプログラムをECU101のフラッシュROM101aの単位ブロックで更新する場合は、差分データの増大分を空白部により吸収することができるので、フラッシュROM101aに記憶されているプログラムを確実に書換えることができる。
 (その他の実施形態)
 本開示の実施形態は、上記実施形態に限定されることない。上記実施形態を次のように変形または拡張したり、各変形例を上記実施形態と組合せたり、各変形例を組合せるようにしてもよい。
 新プログラムを情報センタ300から車載中継装置200に無線で送信するようにしたが、情報センタ300から販売店のサービスツールに送信し、車載中継装置200にサービスツールを接続することにより新プログラムを供給するようにしてもよい。また、ユーザが携帯する携帯電話機に新プログラムを送信し、携帯電話機から車載中継装置200に例えばBluetooth(登録商標)により供給するようにしてもよい。
 ECU101のプログラムの書換えを車両の停車時に行うようにしてもよい。
 車載中継装置200の機能を例えばカーナビゲーション装置に持たせるように構成してもよい。

Claims (10)

  1.  所定のプロトコルで複数の車載電子制御装置(101)を通信可能に接続する車載ネットワーク装置(100)と、プロトコルが異なる複数の前記車載ネットワーク装置(100)を接続する車載中継装置(200)と、該車載中継装置(200)へ書換対象の新プログラムを車外から供給するプログラム供給部(300)と、を備え、前記車載中継装置(200)は、書換対象となる前記車載電子制御装置(101)の記憶部(101a)に記憶されているプログラムを前記プログラム供給部(300)から供給された新プログラムに更新する車載電子制御装置(101)のプログラム書換システムであって、
     前記車載中継装置(200)は、
     前記プログラム供給部(300)から供給された新プログラムを旧プログラムとして記憶するプログラム記憶部(202a)と、
     前記プログラム供給部(300)から供給された新プログラムと当該新プログラムに対応して前記プログラム記憶部(202a)に記憶されている旧プログラムとを比較することにより新プログラムにおいて旧プログラムと異なるデータである差分データを特定する新旧プログラム比較部(204)と、
     前記新旧プログラム比較部(204)が特定した差分データを書換対象となる前記車載電子制御装置(101)が所属する前記車載ネットワーク装置(100)のプロトコルに変換して送信するプロトコル変換部(205)と、を備え、
     前記車載電子制御装置(101)は、前記プロトコル変換部(205)から受信した差分データを前記記憶部(101a)における該当領域に記憶する車載電子制御装置(101)のプログラム書換システム。
  2.  前記車載中継装置(200)は、前記プログラム供給部(300)から書換対象となる複数の車載電子制御装置(101)に対する複数の新プログラムが供給されたときは、書換優先度を判定し、書込優先度の高い前記車載電子制御装置(101)から順に前記差分データを前記プロトコル変換部(205)により変換して順に送信するように管理する書換優先度管理部(206)を備える請求項1記載の車載電子制御装置(101)のプログラム書換システム。
  3.  前記プログラム供給部(300)は、前記新プログラムを暗号化して送信し、
     前記車載中継装置(200)は、前記プログラム供給部(300)から受信した新プログラムを復号化する暗号復号部(207)を備える請求項1または2記載の車載電子制御装置(101)のプログラム書換システム。
  4.  前記車載中継装置(200)は、前記プログラム記憶部(202a)に新プログラムを圧縮して記憶すると共に、前記プログラム記憶部(202a)に記憶されている新プログラムを解凍する圧縮・解凍部(208)を備える請求項1から3のいずれか一項に記載の車載電子制御装置(101)のプログラム書換システム。
  5.  前記車載中継装置(200)は、前記車載電子制御装置(101)のプログラムを更新する場合は、当該車載電子制御装置(101)に記憶されているプログラムを読込んで記憶することで退避させるフェールセーフ処理部(209)を備える請求項1から4のいずれか一項に記載の車載電子制御装置(101)のプログラム書換システム。
  6.  車載中継装置(200)は、前記新旧プログラム比較部(204)による比較結果からプログラムの更新を失敗した場合のリスク情報をユーザに通知するリスク情報通知部(210)を備える請求項1から5のいずれか一項に記載の車載電子制御装置(101)のプログラム書換システム。
  7.  前記車載中継装置(200)は、前記車載電子制御装置(101)に対する前記新プログラムの更新を終了した場合は、更新結果を前記プログラム供給部(300)に送信し、
     前記プログラム供給部(300)は、前記車載中継装置(200)から受信した更新結果を蓄積して管理する更新実績管理部(302)を備える請求項1から6のいずれか一項に記載の車載電子制御装置(101)のプログラム書換システム。
  8.  前記車載電子制御装置(101)は、前記記憶部(101a)に記憶しているユーザ好みの設定に応じて動作し、
     前記車載中継装置(200)は、ユーザによりカスタマイズされたユーザ好みの設定が設定されたときは、当該ユーザ好みの設定を書換対象の前記車載電子制御装置(101)に送信すると共にユーザ好みの設定記憶部(202a)に記憶し、
     前記新旧プログラム比較部(204)は、前記ユーザ好みの設定記憶部(202a)に記憶されている新ユーザ好みの設定と当該新設定に対応する旧ユーザ好みの設定とを比較することにより新ユーザ好みの設定において旧設定と異なるデータである差分データを特定し、
     前記プロトコル変換部(205)は、前記新旧プログラム比較部(204)が特定した差分データを書換対象となる前記車載電子制御装置(101)が所属する前記車載ネットワーク装置(100)のプロトコルに変換して送信し、
     前記車載電子制御装置(101)は、前記プロトコル変換部(205)から受信した差分データを前記ユーザ好みの設定記憶部(202a)の該当領域に記憶する請求項1から7のいずれか一項に記載の車載電子制御装置(101)のプログラム書換システム。
  9.  前記車載電子制御装置(101)の前記記憶部(101a)は、単位ブロック毎にアクセス可能であり、当該単位ブロックにはプログラム領域以外の空白部が設けられ、
     前記プロトコル変換部(205)は、前記差分データが含まれる単位ブロックを前記車載電子制御装置(101)に送信し、
     前記車載電子制御装置(101)は、前記プロトコル変換部(205)から受信した単位ブロックを前記記憶部(101a)における該当領域に記憶する請求項1から8のいずれか一項に記載の車載電子制御装置(101)のプログラム書換システム。
  10.  請求項1から9のいずれか一項に記載の車載電子制御装置(101)のプログラム書換システムにおいて使用される車載中継装置。
PCT/JP2014/001389 2013-03-19 2014-03-12 車載電子制御装置のプログラム書換システム及び車載中継装置 WO2014148003A1 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2013-056441 2013-03-19
JP2013056441A JP2014182571A (ja) 2013-03-19 2013-03-19 車載電子制御装置のプログラム書換システム及び車載中継装置

Publications (1)

Publication Number Publication Date
WO2014148003A1 true WO2014148003A1 (ja) 2014-09-25

Family

ID=51579701

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2014/001389 WO2014148003A1 (ja) 2013-03-19 2014-03-12 車載電子制御装置のプログラム書換システム及び車載中継装置

Country Status (2)

Country Link
JP (1) JP2014182571A (ja)
WO (1) WO2014148003A1 (ja)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10228934B2 (en) 2015-01-26 2019-03-12 Hitachi Automotive Systems, Ltd. Vehicle-mounted control device, program writing device, program generating device and program
EP3379417A4 (en) * 2015-11-16 2019-09-11 Hitachi Automotive Systems, Ltd. PROCESSING DEVICE AND VEHICLE CONTROL SYSTEM
CN110402428A (zh) * 2017-03-24 2019-11-01 日立汽车系统株式会社 车载控制装置、及程序更新软件

Families Citing this family (28)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6354566B2 (ja) * 2014-12-19 2018-07-11 株式会社デンソー マイクロコンピュータ
JP6314859B2 (ja) * 2015-01-28 2018-04-25 株式会社デンソー 電子制御装置及びソフトウェア書き換えシステム
JP2016170471A (ja) * 2015-03-11 2016-09-23 日立オートモティブシステムズ株式会社 電子制御装置
JP6675271B2 (ja) * 2015-09-14 2020-04-01 パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカPanasonic Intellectual Property Corporation of America ゲートウェイ装置、車載ネットワークシステム及びファームウェア更新方法
JP6440643B2 (ja) * 2016-01-26 2018-12-19 株式会社日立製作所 ソフトウェア更新システム、サーバ
JP6260067B1 (ja) 2016-08-09 2018-01-17 Kddi株式会社 管理システム、鍵生成装置、車載コンピュータ、管理方法、及びコンピュータプログラム
CN109314644B (zh) 2016-08-10 2021-08-27 Kddi株式会社 数据提供系统、数据保护装置、数据提供方法以及存储介质
JP6697357B2 (ja) * 2016-09-15 2020-05-20 株式会社日立製作所 ソフトウェア更新システム
WO2018051654A1 (ja) * 2016-09-16 2018-03-22 日立オートモティブシステムズ株式会社 車載電子制御装置
JP6755158B2 (ja) 2016-09-30 2020-09-16 株式会社日立製作所 計算機システム、計算機システムによるソフトウェアの更新方法、及び、そのためのプログラム
WO2018070242A1 (ja) * 2016-10-13 2018-04-19 日立オートモティブシステムズ株式会社 車載ゲートウェイ、鍵管理装置
JP6784178B2 (ja) 2017-01-27 2020-11-11 住友電気工業株式会社 車載通信システム、ゲートウェイ、スイッチ装置、通信制御方法および通信制御プログラム
US10705826B2 (en) * 2017-02-01 2020-07-07 Sumitomo Electric Industries, Ltd. Control apparatus, program updating method, and computer program
JP6454919B2 (ja) * 2017-10-10 2019-01-23 Kddi株式会社 管理システム、データ提供装置、車載コンピュータ、管理方法、及びコンピュータプログラム
JP7087334B2 (ja) 2017-10-13 2022-06-21 株式会社デンソー 電子制御装置
JP6554704B2 (ja) * 2017-10-18 2019-08-07 Kddi株式会社 データ提供システム及びデータ提供方法
JP6958308B2 (ja) * 2017-12-11 2021-11-02 株式会社オートネットワーク技術研究所 車載更新装置、プログラム及び、プログラム又はデータの更新方法
US11516024B2 (en) 2018-01-19 2022-11-29 Renesas Electronics Corporation Semiconductor device, update data-providing method, update data-receiving method, and program
US11579865B2 (en) 2018-08-10 2023-02-14 Denso Corporation Vehicle information communication system
JP7427879B2 (ja) * 2018-08-10 2024-02-06 株式会社デンソー 車両用マスタ装置、書換え対象のグループ管理方法及び書換え対象のグループ管理プログラム
WO2020032045A1 (ja) * 2018-08-10 2020-02-13 株式会社デンソー 車両用マスタ装置、書換え対象のグループ管理方法、書換え対象のグループ管理プログラム及び諸元データのデータ構造
JP7003975B2 (ja) 2018-08-10 2022-01-21 株式会社デンソー 車両情報通信システム,センター装置及びセンター装置のメッセージ送信方法
US11163549B2 (en) 2018-08-10 2021-11-02 Denso Corporation Vehicle information communication system
US10592231B2 (en) 2018-08-10 2020-03-17 Denso Corporation Vehicle information communication system
JP7423959B2 (ja) * 2019-09-27 2024-01-30 株式会社アドヴィックス 車両リプログラミングシステム
JP7439720B2 (ja) * 2020-10-06 2024-02-28 トヨタ自動車株式会社 更新データを配信するサーバ、方法及びプログラム
JP2022163546A (ja) * 2021-04-14 2022-10-26 日立Astemo株式会社 制御装置及び制御システム
JP7447864B2 (ja) 2021-04-26 2024-03-12 トヨタ自動車株式会社 Otaマスタ、方法およびプログラム

Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH11312089A (ja) * 1998-04-28 1999-11-09 Matsushita Electric Ind Co Ltd 電子制御装置
JP2001067232A (ja) * 1999-08-31 2001-03-16 Hitachi Ltd ソフトウエアの配信システムおよびソフトウエアの受信端末装置
US20040128673A1 (en) * 2002-12-17 2004-07-01 Systemauto, Inc. System, method and computer program product for sharing information in distributed framework
JP2004194298A (ja) * 2002-11-18 2004-07-08 Ricoh Co Ltd 画像形成装置、プログラム更新方法
JP2004326689A (ja) * 2003-04-28 2004-11-18 Nissan Motor Co Ltd 車載機器のソフトウェア書き換え方法、テレマティクスシステムおよびテレマティクス装置
JP2006277615A (ja) * 2005-03-30 2006-10-12 Denso Corp 自動車用制御ユニット
JP2009277062A (ja) * 2008-05-15 2009-11-26 Mitsubishi Electric Corp データ書き換えシステム及び新版データ作成装置及び差分データ作成装置及び新版データ作成プログラム及び差分データ作成プログラム
JP2011081604A (ja) * 2009-10-07 2011-04-21 Toyota Motor Corp 車両用プログラム更新装置
JP2011121425A (ja) * 2009-12-09 2011-06-23 Nec Corp 車載制御システム、無線通信システム、車載制御システムの制御方法、及び統合通信ecu

Patent Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH11312089A (ja) * 1998-04-28 1999-11-09 Matsushita Electric Ind Co Ltd 電子制御装置
JP2001067232A (ja) * 1999-08-31 2001-03-16 Hitachi Ltd ソフトウエアの配信システムおよびソフトウエアの受信端末装置
JP2004194298A (ja) * 2002-11-18 2004-07-08 Ricoh Co Ltd 画像形成装置、プログラム更新方法
US20040128673A1 (en) * 2002-12-17 2004-07-01 Systemauto, Inc. System, method and computer program product for sharing information in distributed framework
JP2004326689A (ja) * 2003-04-28 2004-11-18 Nissan Motor Co Ltd 車載機器のソフトウェア書き換え方法、テレマティクスシステムおよびテレマティクス装置
JP2006277615A (ja) * 2005-03-30 2006-10-12 Denso Corp 自動車用制御ユニット
JP2009277062A (ja) * 2008-05-15 2009-11-26 Mitsubishi Electric Corp データ書き換えシステム及び新版データ作成装置及び差分データ作成装置及び新版データ作成プログラム及び差分データ作成プログラム
JP2011081604A (ja) * 2009-10-07 2011-04-21 Toyota Motor Corp 車両用プログラム更新装置
JP2011121425A (ja) * 2009-12-09 2011-06-23 Nec Corp 車載制御システム、無線通信システム、車載制御システムの制御方法、及び統合通信ecu

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10228934B2 (en) 2015-01-26 2019-03-12 Hitachi Automotive Systems, Ltd. Vehicle-mounted control device, program writing device, program generating device and program
US10649769B2 (en) 2015-01-26 2020-05-12 Hitachi Automotive Systems, Ltd. Vehicle-mounted control device, program writing device, program generating device and program
EP3379417A4 (en) * 2015-11-16 2019-09-11 Hitachi Automotive Systems, Ltd. PROCESSING DEVICE AND VEHICLE CONTROL SYSTEM
US10946867B2 (en) 2015-11-16 2021-03-16 Hitachi Automotive Systems, Ltd. Processing device and vehicle control system
CN110402428A (zh) * 2017-03-24 2019-11-01 日立汽车系统株式会社 车载控制装置、及程序更新软件
EP3611614A4 (en) * 2017-03-24 2020-12-23 Hitachi Automotive Systems, Ltd. IN-CAR CONTROLLER AND PROGRAM UPDATE SOFTWARE
US11263001B2 (en) 2017-03-24 2022-03-01 Hitachi Astemo, Ltd. Car onboard control device and program updating software
CN110402428B (zh) * 2017-03-24 2024-01-30 日立安斯泰莫株式会社 车载控制装置、及程序更新软件

Also Published As

Publication number Publication date
JP2014182571A (ja) 2014-09-29

Similar Documents

Publication Publication Date Title
WO2014148003A1 (ja) 車載電子制御装置のプログラム書換システム及び車載中継装置
US10592231B2 (en) Vehicle information communication system
US11163549B2 (en) Vehicle information communication system
JP5949732B2 (ja) プログラム更新システム及びプログラム更新方法
WO2018079385A1 (ja) 車載機器判定システム及び情報収集装置
US11507365B2 (en) On-board update device, update processing program, program update method, and on-board update system
US11354112B2 (en) On-board update device, update process method, and update process program
JP7192415B2 (ja) プログラム更新システム及び更新処理プログラム
WO2019202965A1 (ja) 車載更新装置、車載更新システム、更新処理方法及び更新処理プログラム
JP2013060047A (ja) 車両用ネットワークシステム及び車両用情報処理方法
JP2022093680A (ja) ゲートウェイ装置、車載ネットワークシステム及びファームウェア更新方法
US11579865B2 (en) Vehicle information communication system
US11126422B2 (en) Program update system, control system, mobile body, program update method, recording medium
WO2017195389A1 (ja) 車載制御装置、制御方法及びコンピュータプログラム
JP2018079768A (ja) 更新データ保存システム
JP2019009639A (ja) 車載通信システム、車載中継装置及び中継プログラム
JP2014204315A (ja) 中継装置
JP2024040359A (ja) 更新データを配信するサーバ、更新データの配信方法及び配信プログラム、ソフトウェア更新システム
WO2021106568A1 (ja) 車載更新装置、プログラム及び、プログラムの更新方法
WO2017150233A1 (ja) 端末装置およびソフトウェア書き換えプログラム
JP7087334B2 (ja) 電子制御装置
WO2020195034A1 (ja) 車載更新装置、更新処理システム、更新処理方法及び処理プログラム
US20230195445A1 (en) On-board device, information processing method, and computer program
JP6769270B2 (ja) 車載電子制御装置、車載電子制御システム、中継装置
WO2018127393A1 (en) Control system for a motor vehicle, with a central control device and multiple further control devices

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 14769227

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 14769227

Country of ref document: EP

Kind code of ref document: A1