WO2018043107A1 - 車載更新装置及び車載更新システム - Google Patents

車載更新装置及び車載更新システム Download PDF

Info

Publication number
WO2018043107A1
WO2018043107A1 PCT/JP2017/029285 JP2017029285W WO2018043107A1 WO 2018043107 A1 WO2018043107 A1 WO 2018043107A1 JP 2017029285 W JP2017029285 W JP 2017029285W WO 2018043107 A1 WO2018043107 A1 WO 2018043107A1
Authority
WO
WIPO (PCT)
Prior art keywords
update
program
vehicle
data
unit
Prior art date
Application number
PCT/JP2017/029285
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
Priority claimed from JP2017056007A external-priority patent/JP6696468B2/ja
Application filed by 株式会社オートネットワーク技術研究所, 住友電装株式会社, 住友電気工業株式会社 filed Critical 株式会社オートネットワーク技術研究所
Priority to DE112017004311.5T priority Critical patent/DE112017004311T5/de
Priority to US16/327,998 priority patent/US11029935B2/en
Priority to CN201780052273.2A priority patent/CN109643253A/zh
Publication of WO2018043107A1 publication Critical patent/WO2018043107A1/ja

Links

Images

Classifications

    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60RVEHICLES, VEHICLE FITTINGS, OR VEHICLE PARTS, NOT OTHERWISE PROVIDED FOR
    • B60R16/00Electric or fluid circuits specially adapted for vehicles and not otherwise provided for; Arrangement of elements of electric or fluid circuits specially adapted for vehicles and not otherwise provided for
    • B60R16/02Electric or fluid circuits specially adapted for vehicles and not otherwise provided for; Arrangement of elements of electric or fluid circuits specially adapted for vehicles and not otherwise provided for electric constitutive elements
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60RVEHICLES, VEHICLE FITTINGS, OR VEHICLE PARTS, NOT OTHERWISE PROVIDED FOR
    • B60R16/00Electric or fluid circuits specially adapted for vehicles and not otherwise provided for; Arrangement of elements of electric or fluid circuits specially adapted for vehicles and not otherwise provided for
    • B60R16/02Electric or fluid circuits specially adapted for vehicles and not otherwise provided for; Arrangement of elements of electric or fluid circuits specially adapted for vehicles and not otherwise provided for electric constitutive elements
    • B60R16/04Arrangement of batteries
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring

Definitions

  • the present invention relates to an in-vehicle update device and an in-vehicle update system for updating a program or data of a communication device mounted on a vehicle.
  • a vehicle is equipped with a plurality of communication devices such as an ECU (Electronic Control Unit), and the plurality of ECUs are connected via a communication line such as a CAN (Controller Area Network) bus to transmit / receive information to / from each other.
  • a communication line such as a CAN (Controller Area Network) bus to transmit / receive information to / from each other.
  • Each ECU reads and executes a program stored in a storage unit such as a flash memory or an EEPROM (ElectricallyrasErasable Programmable Read Only Memory) by a processing device such as a CPU (Central Processing Unit), thereby performing various control such as vehicle control Is being processed.
  • a storage unit such as a flash memory or an EEPROM (ElectricallyrasErasable Programmable Read Only Memory)
  • CPU Central Processing Unit
  • the program or data stored in the storage unit of the ECU needs to be updated to be rewritten with a new program or data, for example, when it becomes necessary to add a function, correct a defect, or upgrade a version.
  • an update program or data is transmitted to the ECU to be updated by a communication line.
  • Patent Document 1 when a driver updates a software program used in a vehicle while the engine is running, the program update device transmits vehicle state monitoring information to the center, and from the center based on the monitoring information.
  • a program update system in which a program update device operates in response to the command.
  • the present invention has been made in view of such circumstances, and an object of the present invention is to provide an in-vehicle update device and an in-vehicle update system that can prevent the stored power amount of a battery from being significantly reduced due to an update process. Is to provide.
  • An in-vehicle update device is an in-vehicle update device that includes an update processing unit that performs a process of updating a program or data stored in a storage unit of a communication device mounted on a vehicle.
  • An update information acquisition unit that performs a process of acquiring an update program or data, and a required power amount that estimates the amount of power required for the update process using the update program or data acquired by the update information acquisition unit
  • An estimation unit and a battery power amount acquisition unit that acquires the amount of power stored in the battery of the vehicle, wherein the update processing unit includes the power amount estimated by the required power amount estimation unit and the battery power amount acquisition unit.
  • the update processing is performed according to the amount of power acquired by and the priority of the update program or data acquired by the update information acquisition unit.
  • the in-vehicle update device is based on the amount of power acquired by the battery power amount acquisition unit and the amount of power estimated by the required power amount estimation unit, for update acquired by the update information acquisition unit.
  • An update determination unit that determines whether or not program or data update processing is possible, and the update processing unit determines that the update determination unit is capable of update processing, and has a high priority update program Alternatively, update processing using data is preferentially performed.
  • the update determination unit determines that the update processing unit is not capable of updating the update program or data having a high priority
  • the update processing unit The update process using the program or data is not performed, and the update process using the update program or data having a lower priority than the priority is not performed.
  • the update determination unit determines that the update processing unit is not capable of updating the update program or data having a high priority
  • the update processing unit The update process using the program or data is not performed, and the update process or the update program or data having the second highest priority is performed according to the determination result of the update determination unit.
  • the in-vehicle update device includes an update notification unit that notifies information related to an update program or data that performs update processing by the update processing unit, and the update notification unit includes the update information acquisition unit Has acquired the update program or data, but does not notify the update program or data that is not subjected to the update processing by the update processing unit.
  • the in-vehicle update device includes an update availability accepting unit that accepts execution of program or data update processing in response to the notification from the update notifying unit.
  • the in-vehicle update device is characterized in that the update notification unit notifies the time required for update processing using an update program or data.
  • the in-vehicle update device includes an update time calculation unit that calculates a time required for an update process using an update program or data, and the update notification unit includes a time calculated by the update time calculation unit. It is characterized by notifying.
  • the update information acquisition unit together with the update program or data from the device outside the vehicle, information on the time required for the update process using the update program or data
  • the update notification unit notifies the time acquired by the update information acquisition unit.
  • the in-vehicle update device includes an update storage unit in which the update information acquisition unit stores an update program or data, and the update storage unit is an update program for which update processing has been completed.
  • the update information acquisition unit acquires the update program or data but the update program or data that is not subjected to update processing by the update processing unit is stored while erasing data. .
  • the update program or data priority and the update It is characterized in that it is determined whether or not to acquire the next update program or data from the device outside the vehicle according to the free capacity of the update storage unit.
  • the update information acquisition unit has an update program stored in the update storage unit and the update storage unit has insufficient free space, or When the priority of data is lower than the priority of the next update program or data, the update program or data stored in the update storage unit is deleted, and the next update is performed from the device outside the vehicle. The program or data is acquired and stored in the update storage unit.
  • the in-vehicle update device includes an unupdate notification unit that notifies the device outside the vehicle when an update program or data that has not been updated is deleted from the update storage unit. It is characterized by that.
  • An in-vehicle update device is an in-vehicle update device that includes an update processing unit that performs a process of updating a program or data stored in a storage unit of a communication device mounted on a vehicle.
  • An update information acquisition unit that performs a process of acquiring an update program or data from the apparatus, an update time calculation unit that calculates a time required for an update process using the update program or data, and the update time calculation unit
  • An update notification unit that notifies the calculated time, and an update availability accepting unit that accepts execution of program or data update processing in response to the notification from the update notification unit.
  • an in-vehicle update system includes a plurality of communication devices mounted on a vehicle, and an in-vehicle update device having an update processing unit that performs processing for updating a program or data stored in a storage unit of the communication device.
  • the in-vehicle update system includes an update information acquisition unit that performs a process of acquiring an update program or data from an apparatus outside the vehicle, and the update acquired by the update information acquisition unit.
  • the update process includes: a required power amount estimation unit that estimates a power amount necessary for an update process using a program or data for use; and a battery power amount acquisition unit that acquires a power amount stored in the battery of the vehicle.
  • Update processing is performed according to data priority, and the communication device receives an update program or data from the in-vehicle update device, and stores and updates the received update program or data in the storage unit It is characterized by performing.
  • the in-vehicle update system includes an update notification unit that notifies the information related to the update program or data in which the in-vehicle update device performs update processing by the update processing unit, and the update notification unit includes:
  • the update information acquisition unit acquires an update program or data, but does not notify an update program or data that is not updated by the update processing unit.
  • the in-vehicle update device calculates the time required for the update process using the update program or data, and the notification of the update notification unit, An update availability accepting unit for accepting execution of program or data update processing, and the update notifying unit notifies the update time calculated by the update time calculating unit.
  • the in-vehicle update device performs update processing of programs or data of a plurality of communication devices mounted on the vehicle.
  • the in-vehicle update device acquires an update program or data from a server device or the like installed outside the vehicle.
  • the in-vehicle update device acquires an update program or data for each communication device.
  • a plurality of communication devices may be updated using one update program or data.
  • the in-vehicle update device estimates the amount of electric power necessary for performing an update process using the acquired update program or data, and acquires information on the amount of electric power stored in the battery of the vehicle.
  • the in-vehicle update device performs the update process of the communication device according to the estimated required power amount, the stored power amount of the battery, and the priority of the update program or data.
  • the priority of the program or data may be configured to acquire the priority information together when acquiring the program or data from a device outside the vehicle, for example, and for example, priority is given to the program or data acquired by the in-vehicle update device. It is good also as a structure which attaches a degree. Accordingly, the in-vehicle update device can preferentially update the program or data with a high priority in consideration of the stored power amount of the battery at that time. In addition, when the in-vehicle update device determines that the update process should not be performed based on the stored power of the battery, the update process can be stopped or postponed.
  • the in-vehicle update device determines that update is possible based on the amount of power, and preferentially performs an update process using an update program or data having a high priority. As a result, even when the stored power amount of the battery is small, the in-vehicle update device can preferentially perform update processing with high priority.
  • the in-vehicle update device Update processing using data is not performed, and update processing using an update program or data having a lower priority than that is not performed. That is, the in-vehicle update device waits for an update process with a low priority until an update process using an update program or data with a high priority is completed.
  • the in-vehicle update device waits for an update process with a low priority until an update process using an update program or data with a high priority is completed.
  • the in-vehicle update device when it is determined that the update program or data with high priority cannot be updated based on the required power amount for update and the stored power amount of the battery, the in-vehicle update device has the next priority. It is determined whether or not an update process using a high update program or data is possible. If the update process is possible, the update process is performed. As a result, the update process can be performed as much as possible by using the power stored in the battery to the maximum.
  • the in-vehicle update device when the update process is performed, notifies the user of the vehicle of information related to the update. Thereby, the user of a vehicle etc. can grasp
  • the in-vehicle update device may acquire a program or data for update from a device outside the vehicle for a program or data that is determined not to be updated based on the required power amount for update and the stored power amount of the battery. Notification to the user is not performed. Thereby, it is possible to prevent notification of information unnecessary for the user, such as information about a program or data that is not subjected to update processing.
  • the program or data that has not been subjected to the update process may be notified when it is determined that the stored power amount of the battery will increase and the update process is performed thereafter.
  • the user or the like receives a selection as to whether or not to permit execution of the update process for the notification.
  • the in-vehicle update device performs update processing when execution is permitted, and does not perform update processing when it is not permitted. Thereby, for example, when the user thinks of using the vehicle when receiving the notification of the update process or when the user thinks of using the vehicle after a while, the user makes a selection not to perform the update process. It is possible to prevent the user from using the vehicle by the update process.
  • the in-vehicle update device may accept whether or not the update processing can be executed for each program or data. Thereby, the range of selection of the user can be expanded.
  • the in-vehicle update device notifies the time required for the update process when the update process is performed using the update program or data.
  • the time required for the update process can be calculated (estimated) from information such as the size of the update program or data and the processing speed of the communication device to be updated.
  • This update time may be configured to be calculated by the in-vehicle update device, or may be acquired from the device outside the vehicle. Thereby, the user can grasp the end time of the update process and the like, and can grasp how much time the vehicle becomes unusable by the update process.
  • the in-vehicle update device may notify the time required for the update processing for each program or data.
  • the user can obtain more detailed information about the time required for the update process.
  • the in-vehicle update device is configured to accept whether or not update processing is possible from the user, providing information useful for selecting whether or not update processing is possible by the user by notifying the time required for the update processing Can do.
  • the in-vehicle update device stores the update program or data acquired from the device outside the vehicle in the update storage unit.
  • the update storage unit is preferably a non-volatile storage unit.
  • the in-vehicle update device deletes the update program or data for which the update process is completed from the update storage unit, but determines that the update process is not performed based on the required power amount for update and the stored power amount of the battery, or The data is stored in the update storage unit.
  • the update process can be performed without re-acquiring the update program or data from the device outside the vehicle. it can.
  • the in-vehicle update device stores an update program or data in the update storage unit, and when it is necessary to acquire another update program or data from a device outside the vehicle, the update storage It is determined whether or not to acquire a new update program or data based on the free space of the copy and the priority of the update program or data. For example, an in-vehicle update device stores in an update storage unit when there is not enough free space in the update storage unit and it is necessary to acquire another update program or data from a device outside the vehicle. The priority of the program or data that has been acquired is compared with the priority of the program or data to be newly acquired.
  • the in-vehicle update device When the priority of the program or data stored in the update storage unit is lower than the priority of the program or data to be newly acquired, the in-vehicle update device erases the program or data stored in the update storage unit Then, a new update program or data is acquired from a device outside the vehicle, and stored in the update storage unit. Thereafter, the in-vehicle update device notifies the device outside the vehicle that the update program or data deleted from the update storage unit without performing the update process has not been updated. As a result, the in-vehicle update device cannot perform the update process, the update program or data is left in the update storage unit, and the free space in the update storage unit is insufficient.
  • the in-vehicle update device acquires a new update program or data with high priority, stores it in the update storage unit, and even if the update program or data with low priority is deleted, By notifying the apparatus, the erased update program or data can be reacquired later.
  • the required power amount for performing the update process is estimated for the update program or data acquired by the in-vehicle update device from the device outside the vehicle, and the estimated required power amount and storage of the vehicle battery are estimated.
  • FIG. 6 is a block diagram illustrating a configuration of a gateway according to Embodiment 2.
  • FIG. 6 is a schematic diagram illustrating an example of a notification screen for update information displayed on a display device in the in-vehicle update system according to Embodiment 2.
  • FIG. 10 is a flowchart illustrating a procedure of update processing performed by a gateway according to the second embodiment.
  • FIG. 1 is a schematic diagram showing a configuration of an in-vehicle update system according to the present embodiment.
  • a plurality of ECUs (Electronic Control Units) 2 mounted on a vehicle 1 communicate with each other via communication lines 1 a and 1 b and a gateway 10 arranged in the vehicle 1. It is a system that performs.
  • the gateway 10 corresponds to an in-vehicle update device
  • the ECU 2 corresponds to a communication device.
  • two ECUs 2 and one display device 7 are connected to the communication line 1a in the vehicle, three ECUs 2 are connected to the communication line 1b, and the two communication lines 1a and 1b are connected to the gateway 10. Since the gateway 10 relays communication between the communication lines 1a and 1b, data can be transmitted and received between all the ECUs 2.
  • the wireless communication device 3 is connected to the gateway 10 via the communication line 1c, and the gateway 10 is a server installed outside the vehicle 1 via the wireless communication device 3. Communication with the device 9 can be performed.
  • An IG signal is input to the gateway 10 from the IG switch 4 of the vehicle 1, and a detection result is input from the battery detection unit 6 that detects the stored power amount of the battery 5 of the vehicle 1.
  • the ECU 2 includes, for example, an ECU that controls the operation of the engine of the vehicle 1, an ECU that controls the locking / unlocking of the door, an ECU that controls the turning on / off of the light, an ECU that controls the operation of the airbag, and an ABS (Antilock Various ECUs such as an ECU for controlling the operation of the Brake System may be included.
  • Each ECU 2 is connected to a communication line 1a or 1b arranged in the vehicle 1, and can transmit and receive data to and from another ECU 2 and the gateway 10 via the communication lines 1a and 1b.
  • the wireless communication device 3 can transmit and receive information to and from the server device 9 by performing wireless communication such as a mobile phone communication network or a wireless LAN (Local Area Network).
  • the wireless communication device 3 is connected to the gateway 10 via the communication line 1c, and can transmit / receive information to / from the gateway 10 by wired communication.
  • the wireless communication device 3 can relay communication between the gateway 10 and the server device 9, transmits data given from the gateway 10 to the server device 9, and transmits data received from the server device 9 to the gateway Give to 10.
  • the gateway 10 is connected to a plurality of communication lines 1a to 1c constituting the in-vehicle network of the vehicle 1, and performs a process of relaying data transmission / reception between the communication lines.
  • the gateway 10 has three communication lines 1a to 1c, that is, a first communication line 1a to which two ECUs 2 and one display device 7 are connected, and a second one to which three ECUs 2 are connected.
  • the communication line 1b and the third communication line 1c to which the wireless communication device 3 is connected are connected.
  • the gateway 10 relays data by transmitting data received from any one of the communication lines 1a to 1c to the other communication lines 1a to 1c.
  • the IG switch 4 is a switch for the user to start the engine of the vehicle 1 and the like, and is switched to two states of on / off.
  • the IG signal indicates the state of the IG switch 4
  • IG ON is a state in which a prime mover such as the engine of the vehicle 1 is operating, and power is generated by an alternator or the like
  • IG OFF is In this state, the prime mover of the vehicle 1 is stopped and no power generation is performed.
  • the battery detection unit 6 detects the amount of electric power stored in the battery 5 based on the voltage value of the output terminal of the battery 5 and / or the integrated value of the input / output current amount.
  • the display device 7 is a liquid crystal display, for example, and displays a message for the user of the vehicle 1 in accordance with a display command given from the ECU 2 or the gateway 10.
  • the display device 7 has an operation unit such as a touch panel or a hardware key, for example, accepts a user operation and notifies the ECU 2 or the gateway 10 of the accepted operation content.
  • the display device 7 may be shared with a car navigation device, for example.
  • the server device 9 manages and stores programs and data executed by the ECU 2 mounted on the vehicle 1. In response to an inquiry from the vehicle 1, the server device 9 notifies whether or not the program needs to be updated, and distributes the update program and data to the vehicle 1 when the update is necessary. Process.
  • communication between the gateway 10 and the server device 9 is performed when the engine of the vehicle 1 is operating, and the program and / or necessary for update are transferred from the server device 9 to the gateway 10.
  • acquisition (download) of data etc. is performed.
  • the gateway 10 that has completed the acquisition of the program and / or data necessary for the update needs to perform the update process when the engine of the vehicle 1 is subsequently stopped (when the IG switch 4 is switched to the off state).
  • the display device 7 notifies the user to that effect.
  • the gateway 10 performs an update process by transmitting the acquired program and / or data to the ECU 2 to be updated.
  • the ECU 2 that has received the program and / or data necessary for the update from the gateway 10 performs the update process by writing the program and / or data in its own storage unit.
  • FIG. 2 is a block diagram showing the configuration of the ECU 2.
  • the ECU 2 includes a processing unit 21, a storage unit 22, a communication unit 23, and the like.
  • the processing unit 21 is configured by using an arithmetic processing device such as a CPU (Central Processing Unit) or an MPU (Micro-Processing Unit), for example, and by reading and executing the program 22a stored in the storage unit 22, Perform arithmetic processing.
  • the contents of the program 22a stored in the storage unit 22 are different for each ECU 2.
  • the storage unit 22 is configured by using a non-volatile memory element such as a flash memory or an EEPROM (Electrically Erasable Programmable Read Only Memory).
  • the storage unit 22 stores a program 22a executed by the processing unit 21 and data necessary for executing the program 22a.
  • program 22a may include the program 22a and data necessary for executing the program 22a.
  • the communication unit 23 is connected to the communication line 1a or 1b constituting the in-vehicle network, and transmits and receives data according to a communication protocol such as CAN (Controller (Area Network).
  • the communication unit 23 converts the data provided from the processing unit 21 into an electrical signal and outputs the signal to the communication line 1a or 1b to transmit the data, and also obtains the potential of the communication line 1a or 1b by sampling.
  • the data is received by, and the received data is given to the processing unit 21.
  • the processing unit 21 of the ECU 2 is provided with an update information receiving unit 21a and an update processing unit 21b.
  • the update information receiving unit 21 a and the update processing unit 21 b are functional blocks for updating the program 22 a stored in the storage unit 22.
  • the update information receiving unit 21a and the update processing unit 21b are software functional blocks realized by the processing unit 21 executing a program (not shown) that is different from the program 22a to be updated. is there.
  • the update information receiving unit 21a receives an update program transmitted via the communication line 1a or 1b by the communication unit 23, and stores the received update program in a buffer memory (not shown) or the like. Perform the process.
  • the update processing unit 21b performs a process of updating the program 22a by storing the update program stored in the buffer memory or the like in the storage unit 22 (overwriting the program 22a before the update).
  • FIG. 3 is a block diagram showing the configuration of the gateway 10.
  • the gateway 10 includes a processing unit (processor) 11, a storage unit 12, three in-vehicle communication units 13, and the like.
  • the processing unit 11 is configured using, for example, an arithmetic processing device such as a CPU or MPU, and reads out and executes a program stored in the storage unit 12 or a ROM (Read Only Memory) (not shown), thereby performing various arithmetic processing. I do.
  • the processing unit 11 performs a processing for relaying data transmission / reception between the communication lines 1a to 1c of the in-vehicle network and an arithmetic processing necessary for an update processing of the ECU 2.
  • the IG signal supplied from the IG switch 4 of the vehicle 1 and the accumulated power amount of the battery 5 detected by the battery detection unit 6 are input to the processing unit 11.
  • the IG signal and / or the stored power amount may be input to the gateway 10 by in-vehicle communication using the communication lines 1a to 1c.
  • the storage unit 12 is configured using a non-volatile memory element such as a flash memory or an EEPROM.
  • the storage unit 12 stores, for example, programs and data used for updating the ECU 2.
  • the storage unit 12 may store a program executed by the processing unit 11 and data necessary for executing the program.
  • the storage unit 12 may store data generated in the course of processing by the processing unit 11.
  • the in-vehicle communication unit 13 is connected to the communication lines 1a to 1c constituting the in-vehicle network, and transmits and receives data according to a communication protocol such as CAN.
  • the in-vehicle communication unit 13 transmits information by converting the data supplied from the processing unit 11 into an electrical signal and outputs the signal to the communication lines 1a to 1c, and samples and acquires the potentials of the communication lines 1a to 1c. Thus, the data is received and the received data is given to the processing unit 11.
  • the three in-vehicle communication units 13 included in the gateway 10 may perform communication according to different communication protocols.
  • the processing unit 11 executes a program stored in the storage unit 12 or the ROM, so that an update information acquisition unit 11a, a required power amount estimation unit 11b, a battery power amount acquisition unit 11c, and an update determination unit 11d.
  • the update notification unit 11e, the update information transmission unit 11f, the non-update notification unit 11g, and the like are realized as software functional blocks.
  • the update information acquisition unit 11a communicates with the server device 9 via the wireless communication device 3 at a predetermined timing, and inquires whether or not the program 22a of the ECU 2 mounted on the vehicle 1 needs to be updated.
  • the predetermined timing for inquiring whether update is necessary may be a predetermined cycle, for example, every day or every week, or may be, for example, every time the IG switch 4 is switched from the off state to the on state.
  • the update information acquisition unit 11a transmits the program and data required for the update from the server device 9 via the wireless communication device 3 (hereinafter simply referred to as update). (Referred to as “program for use”) and stored in the storage unit 12. At this time, the update information acquisition unit 11a acquires the update program for all ECUs 2 that need to be updated.
  • priority information is attached to the update program transmitted from the server device 9 to the gateway 10.
  • the priority information is expressed, for example, as a numerical value in five stages from 1 to 5, and the higher the numerical value, the higher the priority. Further, for example, the priority information is determined by a manufacturer, a sales company, a designer, or the like of the vehicle 1 and registered in the server device 9 together with the update program. However, the priority information is not attached to the update program in advance, but the gateway 10 that has acquired the update program may determine the priority by analyzing the contents of the update program.
  • the required power amount estimation unit 11b performs a process of estimating the amount of power consumed when the update process of the target ECU 2 is performed using the update program for each of the update programs acquired from the server device 9. .
  • the gateway 10 stores a numerical value per predetermined amount of data (for example, 1 Kbyte) in the form of a table or the like for each ECU 2 with respect to the amount of power consumed when processing for storing the update program in the storage unit 22 of the ECU 2 is performed. Has been.
  • the required power amount estimation unit 11b checks the data amount of the update program and obtains the power consumption amount per predetermined data amount from the table for the ECU 2 that is the target of the update process using the update program.
  • the required power amount estimation unit 11b calculates the power consumption amount when the update process using the update program is performed by multiplying the data amount of the update program by the power consumption amount per predetermined data amount. To do.
  • the above table is created in advance based on the power consumption calculated or measured in the design stage or production stage of the vehicle 1 or the ECU 2, for example, and is stored in the storage unit 12 of the gateway 10 or the like.
  • the battery power acquisition unit 11c stores the stored power input from the battery detection unit 6 when the timing for performing the update process of the ECU 2 is reached (in the present embodiment, the IG switch 4 is switched to the off state). By acquiring the amount, the amount of power stored in the battery 5 of the vehicle 1 at that time is acquired.
  • the battery power amount acquisition unit 11 c simply acquires the detection result of the battery detection unit 6.
  • the battery power amount acquisition unit 11c acquires the input information from the battery detection unit 6 and uses the acquired information as the acquired information. Based on this, it is necessary to perform a process of calculating the stored power amount of the battery 5.
  • the update determination unit 11d acquired from the server device 9 based on the power amount necessary for the update process estimated by the required power amount estimation unit 11b and the accumulated power amount of the battery 5 acquired by the battery power amount acquisition unit 11c. It is determined whether or not the update process by the update program can be performed.
  • the amount of power is calculated as the amount of power that can be used for the update process.
  • the required power amount estimation unit 11b calculates a required power amount for each update program. Whether the update determination unit 11d performs the update process using each update program based on the amount of power that can be used for the update process, the required power amount of each update program, and the priority of each update program Whether or not is determined individually for each update program.
  • the update determination unit 11d determines that the update process is performed when the amount of power that can be used for the update process is greater than the required power amount for the update program with the highest priority. Next, the update determination unit 11d subtracts the amount of power used in the update process by the update program with the highest priority from the available power amount, and similarly performs the update process for the update program with the next highest priority. Determine whether to do it. In this way, the update determination unit 11d determines whether or not to perform update processing in order of priority for all the update programs acquired from the server device 9.
  • the update determination unit 11d determines that the update process is not performed for this update program. In the present embodiment, the update determination unit 11d performs update processing without performing determination based on the amount of power for an update program having a lower priority than the update program that has been determined not to perform update processing. Judge that there is no. When there are a plurality of update programs with the same priority, the update determination unit 11d determines that no update process is performed for any of the update programs, and other update programs with the same priority. The program makes a determination based on the amount of power.
  • the update notification unit 11e notifies the user that update processing is to be performed by displaying, on the display device 7, information related to the update program that the update determination unit 11d has determined to perform update processing.
  • the update notification part 11e does not notify a user of the information regarding this update program, when the update program which the update determination part 11d determined not to perform an update process exists. Therefore, the user can know only the information related to the update program that is actually updated, and does not know the information related to the update program that needs to be updated but is not currently updated.
  • the update notification unit 11e receives an approval for the update process from the user through the operation unit of the display device 7. When the update process is not approved by the user, the gateway 10 does not perform the update process.
  • the update information transmission unit 11f reads the update program acquired by the update information acquisition unit 11a from the server device 9 and stored in the storage unit 22, and sends the read update program to the ECU 2 that is the target of the update process. By transmitting, the program 22a stored in the storage unit 22 of the ECU 2 is updated.
  • the update information transmission unit 11f performs transmission to the ECU 2 in descending order of priority.
  • the ECU 2 that has received the update program from the gateway 10 performs an update process on the program 22a by overwriting the pre-update program 22a stored in the storage unit 22 with the received update program.
  • the update program transmitted to the ECU 2 by the update information transmitting unit 11f is deleted from the storage unit 12 (however, it may be stored until another data needs to be written without being deleted).
  • the update program determined not to perform the update process by the update determination unit 11d is stored in the storage unit 12, and waits for the next opportunity to perform the update process. For example, when the IG switch 4 is turned on and the vehicle 1 travels and then the IG switch 4 is turned off, it is determined whether or not the update program stored in the storage unit 22 can be updated in the same procedure as described above. Then, update processing is performed.
  • the update information acquisition unit 11 a acquires a new update program from the server device 9 and stores it in the free area of the storage unit 12. .
  • the update information acquisition unit 11a includes the priority of the update program stored in the storage unit 12, The priority of the update program to be acquired from the server device 9 is compared. When the priority of the update program stored in the storage unit 12 is lower, the update information acquisition unit 11a deletes the update program from the storage unit 12 and the new update program is stored in the server device 9. And stored in the storage unit 12.
  • the non-update notification unit 11g When the update program that has not been updated is deleted from the storage unit 12, the non-update notification unit 11g performs a process of notifying the server device 9 to that effect.
  • the server device 9 manages the update status of the program of each vehicle 1 and stores information regarding whether or not the update program has been transmitted to each vehicle 1. If the server 9 receives a notification from the vehicle 1 that the update program has been deleted without updating, the server device 9 will receive this update when it receives an inquiry from the gateway 10 of the vehicle 1 after that. It is possible to notify the gateway 10 that the program for use needs to be updated.
  • FIG. 4 is a schematic diagram for explaining the acquisition of the update program by the gateway 10.
  • the update program is indicated by a solid or dashed rectangle, and a three-digit number identifying the program is added to the initial letter P indicating the program, for example, P-101 (3) in this rectangle. And show. After this number, a numerical value indicating the priority of the program is written in parentheses. In this example, the priority is five levels of 1 to 5, with priority 5 being the highest priority and priority 1 being the lowest priority. The size of the rectangle indicating each program indicates the data amount of this program.
  • the storage unit 12 of the gateway 10 stores three programs P-101 (3), P-102 (2), and P-103 (1) as unupdated update programs. .
  • the data amount of the update program P-201 (5) is larger than the free capacity of the storage unit 12. In this case, a situation occurs in which the update program P-201 (5) cannot be stored in the storage unit 12.
  • the gateway 10 gives priority to the update programs P-101 (3), P-102 (2) and P-103 (1) stored in the storage unit 12, as shown in the lower part of FIG. And the priority of the new update program P-201 (5).
  • the new update program P-201 (5) has the highest priority. Therefore, the gateway 10 has the update program P- having the lowest priority among the update programs P-101 (3), P-102 (2) and P-103 (1) stored in the storage unit 12. 103 (1) is erased from the storage unit 12 to expand the free space.
  • the gateway 10 notifies the server device 9 that the update program P-103 (1) has been deleted without performing the update process. Then, the gateway 10 acquires a new update program P-201 (5) from the server device 9 and stores it in the storage unit 12.
  • FIG. 5 is a flowchart showing the procedure of the update program acquisition process performed by the gateway 10.
  • the update information acquisition unit 11a of the processing unit 11 of the gateway 10 determines whether the IG switch 4 is switched from the off state to the on state based on the IG signal input from the IG switch 4 (step S1). .
  • the update information acquisition unit 11a waits until the IG switch 4 is switched to the on state.
  • the update information acquisition unit 11a performs wireless communication via the wireless communication device 3, and the program of the ECU 2 mounted on the vehicle 1 to the server device 9 Is inquired about whether or not there is an update (step S2).
  • the update information acquisition unit 11a receives a response transmitted from the server device 9 in response to the inquiry via the wireless communication device 3 (step S3). In addition to the presence / absence of update, this response includes information related to the program that needs to be updated, for example, information such as program identification information, data amount, and priority. Based on the information included in the response from the server device 9, the update information acquisition unit 11a determines whether or not the program of the ECU 2 mounted on the vehicle 1 has been updated (step S4). When there is no update (S4: NO), the update information acquisition unit 11a returns the process to step S1.
  • the update information acquisition unit 11a compares the data amount of the update program to be acquired from the server device 9 with the free capacity of the storage unit 12, and installs a new update program. It is determined whether there is a sufficient free area to be stored in the storage unit 12 (step S5).
  • the update information acquisition unit 11a is for update to be acquired from the server device 9 based on the priority of the update program stored in the storage unit 12. It is determined whether the priority of the program is high (step S6). When the priority of the update program to be acquired from the server device 9 is not high (S6: NO), the update information acquisition unit 11a returns the process to step S1. When the priority of the update program to be acquired from the server device 9 is high (S6: YES), the update information acquisition unit 11a erases the update program with the low priority stored in the storage unit 12 (step S6). S7). Further, the update information acquisition unit 11a transmits a non-update notification about the deleted update program to the server device 9 (step S8), and advances the process to step S9.
  • step S5 When there is a sufficient free area in the storage unit 12 in step S5 (S5: YES), or after sending an unupdate notification in step S8, the update information acquisition unit 11a updates the server device 9 for update. Request transmission of the program (step S9).
  • the update information acquisition unit 11a receives the update program transmitted from the server device 9 in response to the request via the wireless communication device 3 (step S10), and receives the received update program in the free space of the storage unit 12 (Step S11), and the process returns to step S1.
  • FIG. 6 is a flowchart showing the procedure of the update program transmission process performed by the server device 9.
  • the server device 9 determines whether or not an inquiry about whether or not the program of the ECU 2 has been updated has been received from the gateway 10 of the vehicle 1 (step S21). When the inquiry has not been received (S21: NO), the server device 9 advances the process to step S24.
  • the server device 9 accesses a database that records the version of the program of the vehicle 1 and the like, thereby determining whether or not the program of the ECU 2 of the vehicle 1 related to the inquiry has been updated. Investigation is performed (step S22).
  • the server apparatus 9 transmits the presence / absence of the update obtained as a result of the investigation to the inquiry source gateway 10 as a response (step S23), and advances the process to step S24.
  • the server device 9 determines whether or not a transmission request for an update program has been received from the gateway 10 of the vehicle 1 (step S24). When the transmission request has not been received (S24: NO), the server device 9 advances the process to step S27.
  • the server device 9 reads the update program to be updated by the ECU 2 of the requesting vehicle 1 and transmits it to the requesting gateway 10 (step S25).
  • the server device 9 updates the database in order to record that the update program has been transmitted (step S26), and proceeds to step S27.
  • the database managed by the server device 9 records that the update program has already been transmitted for the requesting vehicle 1.
  • the server device 9 determines whether or not an unupdated notification has been received from the gateway 10 of the vehicle 1 (step S27).
  • the server device 9 returns the process to step S21.
  • the server device 9 updates the database in order to change the record that has been transmitted to the vehicle 1 to the non-transmission for the update program to be notified. (Step S28), and the process returns to Step S21.
  • FIG. 7 to 9 are schematic diagrams for explaining determination of whether or not the update process is performed by the server device 9.
  • FIG. the rectangle shown on the left side indicates the stored power amount of the battery 5 and the amount of power that can be used for the update process, and the rectangle shown on the right side shows the required power amount for the update process of each update program. It is.
  • the amount of electric power stored in the battery 5 is shown as a percentage of 0% to 100%. It is assumed that the stored power amount of the battery 5 can be used in the update process as long as the stored power amount of the battery 5 does not fall below 90%.
  • a character string such as P-301 (5) in a plurality of rectangles shown on the right side is a character string for identifying an update program attached according to the same rule as shown in FIG.
  • the rectangular size of each update program indicates the amount of power required for the update process.
  • the example shown in the upper part of FIG. 7 is a situation in which the stored power amount of the battery 5 is 98%, and 8% of power can be used for the update process.
  • the amount of power required for the program update process is equal to 2%. Therefore, the gateway 10 is in a situation where the total amount of power required for updating the four update programs is 8%, and 8% of the power can be used for the update process. It is determined that the update process is possible.
  • the example shown in the lower part of FIG. 7 is a situation in which the stored power amount of the battery 5 is 97%, which is 1% less than that in the upper part of FIG.
  • the gateway 10 since the gateway 10 cannot perform update processing of all the update programs, the gateway 10 selects the update program with a high priority in priority, and selects the three update programs P-301 (5) and P-302. (4) It is determined that update processing is possible for P-303 (2), and it is determined that update processing is not possible for one update program P-304 (1).
  • the example shown in the upper part of FIG. 8 is a case where the stored power amount of the battery 5 is the same as the example of the upper part of FIG. 7, but the required power amount of the update program P-301 (5) is 5%. .
  • the gateway 10 preferentially selects an update program with a high priority, and determines that the update process is possible for the two update programs P-301 (5) and P-302 (4).
  • the other two update processing programs P-303 (2) and P-304 (1) are determined not to be updateable.
  • the example shown in the lower part of FIG. 8 is a situation in which the stored power amount of the battery 5 is 94%, which is 4% less than the example in the upper part of FIG.
  • the update process of the update program P-301 (5) having the highest priority in this situation cannot be performed, so the gateway 10 is not limited to the update program P-301 (5).
  • the update programs P-302 (4), P-303 (2), and P-304 (1) having lower priority than this are determined to be incapable of update processing.
  • the gateway 10 uses the available power amount of 4% to the maximum, and updates the two update programs P-302 (4) and P-303 (2) having the second highest priority. Is determined to be possible.
  • the display device 7 is notified that the update process is to be performed, and this update program is used when the user's approval is obtained. An update process of the ECU 2 is performed.
  • FIG. 10 is a flowchart showing the procedure of the update process performed by the gateway 10.
  • the processing unit 11 of the gateway 10 determines whether or not the IG switch 4 has been switched from the on state to the off state based on the IG signal input from the IG switch 4 (step S31).
  • the processing unit 11 waits until the IG switch 4 is switched to the off state.
  • the processing unit 11 needs to perform update processing by checking whether or not an unupdated update processing program is stored in the storage unit 12. It is determined whether or not there is (step S32).
  • step S32 determines whether or not necessary to perform the update process.
  • the battery power amount acquisition unit 11c of the processing unit 11 acquires the stored power amount of the battery 5 based on the input from the battery detection unit 6 (step S33). .
  • the required power amount estimation unit 11b of the processing unit 11 estimates the power amount necessary for the update process for each update program stored in the storage unit 12 (step S34). At this time, the required power amount estimation unit 11b refers to a table including information on the power consumption amount per predetermined data amount for each ECU 2, and estimates the required power amount based on the data amount of each update program.
  • the update determination unit 11d of the processing unit 11 calculates the amount of power that can be used for the update process from the accumulated power amount acquired in step S33, the amount of usable power, the amount of power required for each update program, Based on the priority of the update program, an update determination process for each update program is performed (step S35).
  • the processing unit 11 determines whether or not at least one update program is determined to be updatable based on the result of the update determination process in step S35 (step S36). When it is determined that all the update programs cannot be updated (S36: NO), the processing unit 11 returns the process to step S31.
  • the update notification unit 11e of the processing unit 11 updates the display device 7 by transmitting a display command to the display device 7 via the in-vehicle communication unit 13.
  • the display device 7 notifies that the update program determined to be possible is updated (step S37).
  • the update notification unit 11e determines whether or not the update has been approved based on the user operation received by the operation unit of the display device 7 in response to the update notification (step S38). When the update is not approved (S38: NO), the processing unit 11 returns the process to step S31.
  • the update information transmitting unit 11f of the processing unit 11 transmits the update program stored in the storage unit 12 to the ECU 2 to be updated by the in-vehicle communication unit 13 (Ste S39).
  • the update information transmitting unit 11f determines whether or not the update process has been completed for all the update target ECUs 2 depending on whether or not an update completion notification has been received from the update target ECU 2 (step S40). If the update process has not been completed (S40: NO), the update information transmitting unit 11f returns the process to step S39 and continues to transmit the update program.
  • the processing unit 11 deletes the update program that has been updated from the storage unit 12 (step S41), and returns the process to step S31.
  • FIG. 11 is a flowchart showing the procedure of the update process performed by the ECU 2.
  • the update information receiving unit 21a of the processing unit 21 of the ECU 2 determines whether or not the update program transmitted from the gateway 10 has been received by the communication unit 23 (step S51). When the update program has not been received (S51: NO), the update information receiving unit 21a waits until the update program is received. When the update program is received (S51: YES), the update information receiving unit 21a temporarily stores the received update program in a buffer or the like.
  • the update processing unit 21b of the processing unit 21 performs update processing of the program 22a by storing (overwriting) the received update program in the storage unit 22 (step S52).
  • the update processing unit 21b determines whether or not the update of the program 22a has been completed (step S53). If the update has not been completed (S53: NO), the update processing unit 21b returns the process to step S52 and continues the update process. When the update of the program 22a is completed (S53: YES), the processing unit 21 notifies the gateway 10 of the update completion through the communication unit 23 (step S54), and returns the process to step S51.
  • the gateway 10 performs the update process of the programs 22a (programs or data) of the plurality of ECUs 2 mounted on the vehicle 1.
  • the gateway 10 acquires an update program (update program or data) from the server device 9 outside the vehicle by wireless communication via the wireless communication device 3.
  • the gateway 10 acquires an update program for each ECU 2.
  • the structure which can perform the update process of several ECU2 using one update program may be sufficient.
  • the gateway 10 estimates the required power amount for performing the update process on the acquired update program, and acquires the stored power amount of the battery 5 of the vehicle 1 based on the input from the battery detection unit 6.
  • the gateway 10 performs an update process of the ECU 2 according to the estimated required power amount, the stored power amount of the battery 5, and the priority of the update program.
  • the priority of the update program may be configured such that, for example, when the update program is acquired from the server device 9, the priority information is acquired together.
  • the gateway 10 has a priority with respect to the acquired update program. It is good also as a structure which attaches.
  • the gateway 10 can preferentially perform the update process by the update program having a high priority in consideration of the stored power amount of the battery 5 at that time. Further, when the gateway 10 determines that the update process should not be performed based on the stored power amount of the battery 5, it is possible to cancel or postpone the update process. Therefore, the in-vehicle update system 100 can prevent the stored power amount of the battery 5 of the vehicle 1 from being significantly reduced by performing the update process of the ECU 2.
  • the gateway 10 determines whether or not the update process using the update program acquired from the server device 9 is possible based on the stored power amount of the battery 5 and the required power amount of the update process of the ECU 2. .
  • the gateway 10 determines that the update is possible based on the electric energy, and preferentially performs the update process using the update program having a high priority. Thereby, even when the amount of stored power of the battery 5 is small, the gateway 10 can preferentially perform the update process with high priority.
  • the gateway 10 determines that the update program with high priority cannot be updated based on the required power amount for update and the stored power amount of the battery 5, the gateway 10 does not perform the update process using the update program. Does not perform update processing using an update program with a lower priority than this. That is, the gateway 10 waits for an update process with a low priority until the update process using the update program with a high priority is completed. As a result, when a large amount of power is required for an update process with a high priority, an update process with a high priority can be prevented from being maintained in a standby state.
  • the gateway 10 determines that the update program with the highest priority is not updatable based on the required power amount for update and the stored power amount of the battery 5, the update using the update program with the next highest priority is performed. Whether or not processing is possible is determined, and if update processing is possible, update processing is performed. Thereby, the update process can be performed as much as possible by using the power stored in the battery 5 to the maximum.
  • the gateway 10 when performing the update process, notifies the user of the vehicle 1 and the like of the information related to the update on the display device 7. Thereby, the user or the like can grasp the update status of the program of the ECU 2 mounted on the vehicle 1.
  • the gateway 10 determines that the update process is not performed based on the required power amount of the update and the stored power amount of the battery 5, even if the update program is acquired from the server device 9, Do not notify. Thereby, it is possible to prevent information unnecessary for the user from being notified, such as information about a program that is not subjected to update processing.
  • the update program that has not been updated may be notified when it is determined that the stored power amount of the battery 5 will increase and the update process is performed thereafter.
  • the gateway 10 stores the update program acquired from the server device 9 in the storage unit 12.
  • the storage unit 12 is preferably a non-volatile storage unit.
  • the gateway 10 deletes the update program for which the update process has been completed from the storage unit 12, but for the update program that is determined not to perform the update process based on the required power amount for update and the stored power amount of the battery 5, This is stored in the storage unit 12.
  • Update processing can be performed using an update program.
  • the gateway 10 stores an update program in the storage unit 12, and when it becomes necessary to acquire another update program from the server device 9, the free space in the storage unit 12 and the priority of the update program are stored. Based on the above, it is determined whether or not a new update program is acquired from the server device 9.
  • the gateway 10 when the gateway 10 has insufficient free space in the storage unit 12 and needs to acquire another update program from the server device 9, the update program stored in the storage unit 12 And the priority of the update program to be newly acquired are compared.
  • the gateway 10 deletes the update program stored in the storage unit 12 and the server device 9 A new update program is acquired from the storage unit 12 and stored in the storage unit 12. Thereafter, the gateway 10 notifies the server device 9 that the update program that has been deleted from the storage unit 12 without performing the update process has not been updated.
  • the gateway 10 cannot perform the update process, the update program remains in the storage unit 12, and a new update program is received from the server device 9 in a state where the storage unit 12 has insufficient free space.
  • a new update program can be acquired can be determined according to the priority.
  • the gateway 10 acquires a new update program with a high priority and stores it in the storage unit 12. Even when the update program with a low priority is deleted from the storage unit 12, the gateway 10 notifies the server device 9 to that effect. By notifying this, the erased update program can be reacquired later.
  • the gateway 10 mounted on the vehicle 1 acquires the update program from the server device 9 and transmits the update program to each ECU 2, that is, the gateway 10 serves as the in-vehicle update device.
  • the gateway 10 serves as the in-vehicle update device.
  • Any ECU 2, wireless communication device 3, or other in-vehicle device may perform processing as the in-vehicle update device.
  • the update program is acquired from the server device 9 outside the vehicle by wireless communication, but is not limited thereto.
  • the update program may be acquired by the gateway 10 reading a recording medium on which the update program is recorded.
  • the communication device to be updated is the ECU 2, the present invention is not limited to this, and various communication devices other than the ECU 2 may be the target of the update process. Communication performed between the gateway 10 and the ECU 2 in the vehicle 1 may be wireless communication instead of wired communication.
  • the gateway 10 is configured to perform the update process when the IG switch 4 is switched to the OFF state, but the present invention is not limited to this.
  • the gateway 10 is updated at a timing other than immediately after the IG switch 4 is switched to the OFF state, such as when the IG switch 4 is in the OFF state and the update process is performed when a predetermined time such as 2 am is reached. Processing may be performed.
  • the gateway 10 does not notify the user, or when the IG switch 4 is switched to the off state, the update program that has been acquired regardless of the stored power amount of the battery 5
  • An update notification may be given to obtain approval from the user, and the amount of stored power in the battery 5 may be checked at the timing when the update process is performed to determine whether the update process is possible.
  • FIG. 12 is a block diagram illustrating a configuration of the gateway according to the second embodiment.
  • the gateway 210 according to the second embodiment has a configuration in which an update time calculation unit 11h and an update availability accepting unit 11i are added to the processing unit 211 with respect to the gateway 10 according to the first embodiment.
  • the update time calculation unit 11h and the update availability accepting unit 11i are configured such that the program stored in the storage unit 12 or the ROM is executed by the processing unit 211 in the same manner as the update information acquisition unit 11a to the non-update notification unit 11g. Is a functional block realized by.
  • the update time calculation unit 11h performs, for each update program acquired from the server device 9, a process for calculating (estimating) a time required when the update process of the ECU 2 is performed using the update program.
  • the update time calculation unit 11h can calculate the time required for the update process based on, for example, the size of the update program and the processing speed of the ECU 2 that performs the update process using the update program.
  • the processing speed of the ECU 2 in this case may be a speed depending on the writing speed to the storage unit 22 instead of the processing speed of the processing unit 21 of the ECU 2.
  • the gateway 210 stores in advance information related to the processing speed of the ECU 2 that can be the target of the update process.
  • the update notification unit 11e of the gateway 210 calculates an update time for each update program when displaying information on the update program that the update determination unit 11d determines to perform the update process on the display device 7.
  • the update time calculated by the unit 11h is displayed.
  • the update availability accepting unit 11i receives a notification from the update notifying unit 11e, and then accepts from the user a selection as to whether or not to perform an update process using each update program.
  • the update availability accepting unit 11 i communicates with the display device 7 in the in-vehicle communication unit 13 and accepts the user's selection through the operation unit provided in the display device 7.
  • FIG. 13 is a schematic diagram illustrating an example of an update information notification screen displayed on the display device 7 in the in-vehicle update system 100 according to the second embodiment.
  • the update notification unit 11e of the gateway 210 displays information on the update program that is determined to be updated based on the amount of power of the battery 5 on the display device 7 as “program update information”.
  • the program update information notification screen displays the name of the program to be updated, the time required for the update, a check box 71 for accepting an update permission operation, an update start button 72, a cancel button 73, and the like.
  • the name of the program to be displayed displayed on the program update information notification screen is not the file name of the update program, but a car navigation update program, a wireless communication security update program, a recall compatible program, or the like. It is preferable that a name that allows the user of the vehicle 1 to easily understand the contents of the program is displayed.
  • the name of the displayed program is given as accompanying information when the gateway 210 acquires the update program from the server device 9, for example.
  • the programs A to E are simply described as program names to be updated.
  • the time required for the update displayed on the program update information notification screen is the update time of each update program calculated by the update time calculation unit 11h.
  • the update time of program A is 50 seconds
  • the update time of program B is 3 minutes
  • the update time of program C is 1 minute
  • the update time of program D is 30 seconds
  • the update time for E is 2 minutes.
  • the display device 7 has a touch panel that detects a touch operation on the displayed screen.
  • the display device 7 corresponds to a check box 71, an update start button 72, and a cancel button 73 provided on a program update information notification screen. Touch operation can be detected by a touch panel.
  • a check box 71 is provided for each program on the program update information notification screen.
  • the check box 71 toggles between a selected state and a non-selected state according to the user's touch operation.
  • the user can switch between permission and non-permission of the program update process by switching the state of the check box 71.
  • the update process is permitted for the programs B and C, and the update process is not permitted for the programs A, D, and E.
  • the update start button 72 provided on the program update information notification screen is a button for accepting an instruction to start update processing by a user's touch operation.
  • update processing of the program permitted to be updated in the check box 71 is started. If there is no program to which update permission is given in the check box 71 (when all check boxes 71 are in a non-selected state), an error message or the like is displayed.
  • the cancel button 73 provided on the program update information notification screen is a button for accepting an instruction to stop the update process by a user's touch operation. When a touch operation is performed on the cancel button 73, update processing is not performed for all programs regardless of the selection state of the check box 71.
  • the display device 7 After displaying the program update information notification screen, the display device 7 receives a touch operation on the check box 71, the update start button 72, and the cancel button 73, and notifies the gateway 210 of the received operation. Based on the operation notified from the display device 7, the update availability accepting unit 11 i of the gateway 210 accepts a selection as to whether or not to permit the update process.
  • FIG. 14 is a flowchart showing a procedure of update processing performed by the gateway 210 according to the second embodiment.
  • the processing unit 211 of the gateway 210 according to the second embodiment determines whether or not the IG switch 4 has been switched from the on state to the off state (step S61). When the IG switch 4 is not switched to the off state (S61: NO), the processing unit 211 waits until the IG switch 4 is switched to the off state. When the IG switch 4 is switched to the off state (S61: YES), the processing unit 211 determines whether or not an update process needs to be performed (step S62). When it is not necessary to perform the update process (S62: NO), the processing unit 211 returns the process to step S61.
  • the battery power amount acquisition unit 11c of the processing unit 211 acquires the stored power amount of the battery 5 (step S63).
  • the required power amount estimation unit 11b of the processing unit 211 estimates the power amount necessary for the update process for each update program stored in the storage unit 12 (step S64).
  • the update determination unit 11d of the processing unit 211 calculates the amount of power that can be used for the update process from the accumulated power amount acquired in step S63, the amount of usable power, the amount of power required for each update program, Based on the priority of the update program, update determination processing for each update program is performed (step S65).
  • the processing unit 211 determines whether or not at least one update program is determined to be updatable based on the result of the update determination process in step S65 (step S66). When it is determined that all the update programs cannot be updated (S66: NO), the processing unit 211 returns the process to step S61.
  • the update time calculation unit 11h of the processing unit 11 updates the update time necessary for the update process for each update program determined to be updateable. Is calculated (step S67).
  • the update notification unit 11e of the processing unit 211 transmits an instruction to display the update information notification screen of the program illustrated in FIG. 13 to the display device 7 together with the update time calculated in step S67, thereby performing the update process. Information on the information is notified to the user on the display device 7 (step S68).
  • the update availability accepting unit 11i of the processing unit 211 determines whether or not the update process by each update program is permitted based on the user operation received by the operation unit of the display device 7 (step S69). When the update is not permitted for all the update programs (S69: NO), the processing unit 211 returns the process to step S61.
  • the update information transmitting unit 11f of the processing unit 211 uses the in-vehicle communication unit 13 to store the update program stored in the storage unit 12. It transmits to ECU2 of update object (step S70).
  • the update information transmitting unit 11f determines whether or not the update process has been completed for all the update target ECUs 2 depending on whether or not an update completion notification has been received from the update target ECU 2 (step S71). If the update process has not been completed (S71: NO), the update information transmitting unit 11f returns the process to step S70 and continues to transmit the update program.
  • the processing unit 211 deletes the update program that has been updated from the storage unit 12 (step S72), and returns the process to step S61.
  • the gateway 210 displays a notification screen on the display device 7 and notifies the update process
  • the update process using the update program is permitted. Selection of whether or not to do is accepted from the user.
  • the gateway 210 performs update processing when execution is permitted, and does not perform update processing when it is not permitted.
  • the user performs the update process. It is possible to prevent the user from using the vehicle 1 by the update process.
  • the gateway 210 accepts whether or not the update process can be executed for each update program. Thereby, the range of selection of the user regarding the execution of the update process can be expanded.
  • the gateway 210 calculates the time required for the process when the ECU 2 is updated using the update program, and notifies the user of the calculated update time on the notification screen.
  • the time required for the update process can be calculated from information such as the size of the update program and the processing speed of the ECU 2 to be updated, for example. Accordingly, the user can grasp the end time of the update process and the like, and can grasp how much time the vehicle 1 cannot be used by the update process.
  • the gateway 210 calculates and notifies the update time for each update program. Thereby, the user can obtain more detailed information about the time required for the update process.
  • the gateway 210 by notifying the time required for the update process by the gateway 210, it is possible to provide the user with useful information for determining whether the update process can be performed when accepting the update process on the notification screen.
  • the configuration of the notification screen shown in FIG. 13 is an example, and the present invention is not limited to this.
  • the update time of each program shown on the notification screen is an example, and is not limited to this.
  • the update time when the gateway 210 performs the update process is calculated.
  • the present invention is not limited to this.
  • the gateway 210 acquires the update program from the server device 9 the server 210 acquires information related to the time required for the update process using the update program.
  • the server device 9 of the in-vehicle update system 100 stores information related to the time required for update processing using the update program, together with the update program transmitted to the gateway 210 of the vehicle 1.
  • the time required for the update process is calculated or measured in advance by the ECU 2 or the developer of the update program, and stored in the server device 9 together with the update program.
  • each time the server device 9 transmits the update program to the gateway 210 the time required for the update process using the update program may be calculated.
  • the server device 9 can calculate the update time based on the size of the update program and the processing speed of the ECU 2 that performs the update process using the update program.
  • the server device 9 has a database that stores the processing speed of the ECU 2 that can be an application target of the update processing program.
  • Modification 2 In the example shown in FIG. 13 as the notification screen displayed by the gateway 210 in the in-vehicle update system 100 according to the second embodiment, the name of the program to be updated and information on the time required for the update are notified.
  • the information to be notified is not limited to these.
  • the gateway 210 according to the modified example 2 notifies the information on the power amount estimated by the required power amount estimation unit 11b for each program in addition to the information on the name of the program to be updated and the time required for the update.
  • the power amount to be notified may be, for example, a ratio of the power consumption amount to the total capacity or the remaining amount of the battery 5 or may be a power amount expressed in units such as W (watts).
  • the gateway 210 according to the second modification may notify the user of the update priority of each program.
  • the gateway 210 may display the priority on the notification screen as a numerical value, for example, or may display a plurality of programs arranged in order of priority.

Landscapes

  • Engineering & Computer Science (AREA)
  • Mechanical Engineering (AREA)
  • Theoretical Computer Science (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Stored Programmes (AREA)

Abstract

更新処理に伴ってバッテリの蓄積電力量が著しく低下することを防止し得る車載更新装置及び車載更新システムを提供する。 車両に搭載された通信装置の記憶部に記憶されたプログラム又はデータを更新する処理を行う更新処理部を備える車載更新装置であって、前記車両外の装置から更新用のプログラム又はデータを取得する処理を行う更新用情報取得部と、前記更新用情報取得部が取得した更新用のプログラム又はデータを用いた更新処理に必要な電力量を推定する必要電力量推定部と、前記車両のバッテリに蓄積された電力量を取得するバッテリ電力量取得部とを備え、前記更新処理部は、前記必要電力量推定部が推定した電力量、前記バッテリ電力量取得部が取得した電力量、及び、前記更新用情報取得部が取得した更新用のプログラム又はデータの優先度に応じて、更新処理を行う。

Description

車載更新装置及び車載更新システム
 本発明は、車両に搭載された通信装置のプログラム又はデータを更新する車載更新装置及び車載更新システムに関する。
 従来、車両には複数のECU(Electronic Control Unit)などの通信装置が搭載され、複数のECUがCAN(Controller Area Network)バスなどの通信線を介して接続されて相互に情報の送受信を行うことが可能とされている。各ECUは、フラッシュメモリ又はEEPROM(Electrically Erasable Programmable Read Only Memory)等の記憶部に記憶されたプログラムをCPU(Central Processing Unit)などの処理装置が読み出して実行することにより、車両の制御などの種々の処理を行っている。ECUの記憶部に記憶されたプログラム又はデータは、例えば機能追加、不具合の修正又はバージョンアップ等の必要が生じた際には、新たなプログラム又はデータに書き換える更新処理を行う必要がある。この場合、更新処理の対象となるECUに対して、通信線を介して更新用のプログラム又はデータを送信することが行われている。
 特許文献1においては、車両内で使用されるソフトウェアのプログラムをエンジン起動中でドライバが降車した後に更新する場合、プログラム更新装置が車両状態の監視情報をセンタに送信し、監視情報に基づくセンタからの指令に応じてプログラム更新装置が動作するプログラム更新システムが提案されている。
特開2011-70287号公報
 車両のECUのプログラム又はデータを更新する場合、安全のために例えば車両が停車している状態などで更新を行う必要がある。しかし車両が停車してエンジンが動作していない状態においては、バッテリに蓄積された電力を消費してECUが動作しなければならない。ECUのプログラム又はデータの更新処理によりバッテリに蓄積された電力量が著しく低下した場合、例えば次回のエンジン始動を行うことができなくなるなどの不具合が発生する虞がある。
 本発明は、斯かる事情に鑑みてなされたものであって、その目的とするところは、更新処理に伴ってバッテリの蓄積電力量が著しく低下することを防止し得る車載更新装置及び車載更新システムを提供することにある。
 本発明に係る車載更新装置は、車両に搭載された通信装置の記憶部に記憶されたプログラム又はデータを更新する処理を行う更新処理部を備える車載更新装置であって、前記車両外の装置から更新用のプログラム又はデータを取得する処理を行う更新用情報取得部と、前記更新用情報取得部が取得した更新用のプログラム又はデータを用いた更新処理に必要な電力量を推定する必要電力量推定部と、前記車両のバッテリに蓄積された電力量を取得するバッテリ電力量取得部とを備え、前記更新処理部は、前記必要電力量推定部が推定した電力量、前記バッテリ電力量取得部が取得した電力量、及び、前記更新用情報取得部が取得した更新用のプログラム又はデータの優先度に応じて、更新処理を行うことを特徴とする。
 また、本発明に係る車載更新装置は、前記バッテリ電力量取得部が取得した電力量及び前記必要電力量推定部が推定した電力量に基づいて、前記更新用情報取得部が取得した更新用のプログラム又はデータの更新処理が可能であるか否かを判定する更新判定部を備え、前記更新処理部は、前記更新判定部が更新処理可能と判定し、且つ、優先度が高い更新用のプログラム又はデータを用いた更新処理を優先して行うことを特徴とする。
 また、本発明に係る車載更新装置は、前記更新処理部が、優先度が高い更新用のプログラム又はデータの更新処理が可能でないと前記更新判定部により判定された場合、当該優先度の更新用のプログラム又はデータを用いた更新処理を行わず、更に当該優先度より低い優先度の更新用のプログラム又はデータを用いた更新処理を行わないことを特徴とする。
 また、本発明に係る車載更新装置は、前記更新処理部が、優先度が高い更新用のプログラム又はデータの更新処理が可能でないと前記更新判定部により判定された場合、当該優先度の更新用のプログラム又はデータを用いた更新処理を行わず、当該優先度の次に優先度が高い更新用のプログラム又はデータについて前記更新判定部の判定結果に応じて更新処理を行うことを特徴とする。
 また、本発明に係る車載更新装置は、前記更新処理部による更新処理を行う更新用のプログラム又はデータに係る情報を通知する更新通知部を備え、前記更新通知部は、前記更新用情報取得部が更新用のプログラム又はデータを取得したが前記更新処理部による更新処理を行わない更新用のプログラム又はデータについての通知を行わないことを特徴とする。
 また、本発明に係る車載更新装置は、前記更新通知部の通知に対して、プログラム又はデータの更新処理の実行可否を受け付ける更新可否受付部を備えることを特徴とする。
 また、本発明に係る車載更新装置は、前記更新通知部が、更新用のプログラム又はデータを用いた更新処理に要する時間を通知することを特徴とする。
 また、本発明に係る車載更新装置は、更新用のプログラム又はデータを用いた更新処理に要する時間を算出する更新時間算出部を備え、前記更新通知部は、前記更新時間算出部が算出した時間を通知することを特徴とする。
 また、本発明に係る車載更新装置は、前記更新用情報取得部が、前記車両外の装置から更新用のプログラム又はデータと共に、該更新用のプログラム又はデータを用いた更新処理に要する時間の情報を取得し、前記更新通知部は、前記更新用情報取得部が取得した時間を通知することを特徴とする。
 また、本発明に係る車載更新装置は、前記更新用情報取得部が更新用のプログラム又はデータを記憶する更新用記憶部を備え、前記更新用記憶部は、更新処理が完了した更新用のプログラム又はデータを消去すると共に、前記更新用情報取得部が更新用のプログラム又はデータを取得したが前記更新処理部による更新処理を行わない更新用のプログラム又はデータを記憶しておくことを特徴とする。
 また、本発明に係る車載更新装置は、前記更新用情報取得部が、前記更新用記憶部に更新用のプログラム又はデータが記憶されている場合、該更新用のプログラム又はデータの優先度及び前記更新用記憶部の空き容量に応じて、前記車両外の装置から次の更新用のプログラム又はデータを取得するか否かを判定することを特徴とする。
 また、本発明に係る車載更新装置は、前記更新用情報取得部が、前記更新用記憶部の空き容量が不足しており、且つ、前記更新用記憶部に記憶されている更新用のプログラム又はデータの優先度が次の更新用のプログラム又はデータの優先度より低い場合、前記更新用記憶部に記憶されている更新用のプログラム又はデータを消去し、前記車両外の装置から次の更新用のプログラム又はデータを取得して前記更新用記憶部に記憶することを特徴とする。
 また、本発明に係る車載更新装置は、前記更新用記憶部から更新処理を行っていない更新用のプログラム又はデータが消去された場合に、前記車両外の装置へ通知する未更新通知部を備えることを特徴とする。
 また、本発明に係る車載更新装置は、車両に搭載された通信装置の記憶部に記憶されたプログラム又はデータを更新する処理を行う更新処理部を備える車載更新装置であって、前記車両外の装置から更新用のプログラム又はデータを取得する処理を行う更新用情報取得部と、更新用のプログラム又はデータを用いた更新処理に要する時間を算出する更新時間算出部と、前記更新時間算出部が算出した時間を通知する更新通知部と、前記更新通知部の通知に対して、プログラム又はデータの更新処理の実行可否を受け付ける更新可否受付部とを備えることを特徴とする。
 また、本発明に係る車載更新システムは、車両に搭載された複数の通信装置と、該通信装置の記憶部に記憶されたプログラム又はデータを更新する処理を行う更新処理部を有する車載更新装置とを備える車載更新システムであって、前記車載更新装置は、前記車両外の装置から更新用のプログラム又はデータを取得する処理を行う更新用情報取得部と、前記更新用情報取得部が取得した更新用のプログラム又はデータを用いた更新処理に必要な電力量を推定する必要電力量推定部と、前記車両のバッテリに蓄積された電力量を取得するバッテリ電力量取得部とを備え、前記更新処理部は、前記必要電力量推定部が推定した電力量、前記バッテリ電力量取得部が取得した電力量、及び、前記更新用情報取得部が取得した更新用のプログラム又はデータの優先度に応じて、更新処理を行い、前記通信装置は、前記車載更新装置から更新用のプログラム又はデータを受信し、受信した更新用のプログラム又はデータを前記記憶部に記憶して更新を行うことを特徴とする。
 また、本発明に係る車載更新システムは、前記車載更新装置が、前記更新処理部による更新処理を行う更新用のプログラム又はデータに係る情報を通知する更新通知部を有し、前記更新通知部は、前記更新用情報取得部が更新用のプログラム又はデータを取得したが前記更新処理部による更新処理を行わない更新用のプログラム又はデータについての通知を行わないことを特徴とする。
 また、本発明に係る車載更新システムは、前記車載更新装置が、更新用のプログラム又はデータを用いた更新処理に要する時間を算出する更新時間算出部と、前記更新通知部の通知に対して、プログラム又はデータの更新処理の実行可否を受け付ける更新可否受付部とを有し、前記更新通知部は、前記更新時間算出部が算出した更新時間を通知することを特徴とする。
 本発明においては、車両に搭載された複数の通信装置のプログラム又はデータの更新処理を車載更新装置が行う。車載更新装置は、車両外に設置されたサーバ装置などから更新用のプログラム又はデータを取得する。車載更新装置は、更新処理の対象が複数である場合、各通信装置について更新用のプログラム又はデータをそれぞれ取得する。ただし、1つの更新用のプログラム又はデータを用いて、複数の通信装置の更新処理を行ってもよい。
 車載更新装置は、取得した更新用のプログラム又はデータについて、これを用いた更新処理を行うために必要な電力量を推定すると共に、車両のバッテリに蓄積された電力量についての情報を取得する。車載更新装置は、推定した必要電力量と、バッテリの蓄積電力量と、更新用のプログラム又はデータの優先度とに応じて通信装置の更新処理を行う。なおプログラム又はデータの優先度は、例えば車外の装置からプログラム又はデータを取得する際に優先度の情報を共に取得する構成としてもよく、また例えば車載更新装置が取得したプログラム又はデータに対して優先度を付す構成としてもよい。
 これにより車載更新装置は、その時点のバッテリの蓄積電力量を考慮して、優先度の高いプログラム又はデータの更新を優先して行うことが可能となる。また車載更新装置は、バッテリの蓄積電量から更新処理を行うべきでないと判断した場合には、更新処理を中止又は延期することが可能となる。
 また本発明においては、バッテリの蓄積電力量とプログラム又はデータの更新の必要電力量とに基づいて、車外の装置から取得した更新用のプログラム又はデータを用いた更新処理が可能であるか否かの判定を車載更新装置が行う。車載更新装置は、電力量に基づいて更新可能であると判定し、且つ、優先度が高い更新用のプログラム又はデータを用いた更新処理を優先して行う。これにより、バッテリの蓄積電力量が少ない場合であっても、優先度が高い更新処理を車載更新装置が優先して行うことができる。
 また本発明においては、更新の必要電力量及びバッテリの蓄積電力量に基づいて優先度の高い更新用のプログラム又はデータが更新不可能と判定した場合、車載更新装置は、この更新用のプログラム又はデータを用いた更新処理を行わず、更にこれより優先度の低い更新用のプログラム又はデータを用いた更新処理を行わない。即ち車載更新装置は、優先度が高い更新用のプログラム又はデータを用いた更新処理が完了するまで、優先度の低い更新処理を待機する。これにより優先度が高い更新処理に多くの電力量が必要である場合などに、優先度が高い更新処理が待機状態で維持されることを防止できる。
 または、本発明においては、更新の必要電力量及びバッテリの蓄積電力量に基づいて優先度の高い更新用のプログラム又はデータが更新不可能と判定した場合、車載更新装置は、次に優先度が高い更新用のプログラム又はデータを用いた更新処理の可否を判定し、更新処理が可能であれば更新処理を行う。これによりバッテリに蓄積された電力を最大限に利用して更新処理を可能な限り行うことができる。
 また本発明においては、更新処理を行う場合に、車載更新装置は、車両のユーザなどへ更新に係る情報を通知する。これにより車両のユーザなどは、車両に搭載された通信装置のプログラム又はデータの更新状況を把握することができる。ただし車載更新装置は、更新の必要電力量及びバッテリの蓄積電力量に基づいて更新処理を行わないと判断したプログラム又はデータについては、車外の装置から更新用のプログラム又はデータを取得していてもユーザなどへの通知は行わない。これにより、更新処理を行わないプログラム又はデータについての情報など、ユーザにとって不要な情報が通知されることを防止できる。更新処理を行わなかったプログラム又はデータについては、その後にバッテリの蓄積電力量が増加して更新処理を行うと判断した際に通知を行えばよい。
 また本発明においては、ユーザなどへ更新の通知を行った後、この通知に対して更新処理の実行を許可するか否かの選択をユーザなどから受け付ける。車載更新装置は、実行が許可された場合に更新処理を行い、許可されない場合には更新処理を行わない。これにより、例えば更新処理の通知を受けた際にユーザが車両を使用しようと考えている場合又はしばらく後に車両を使用しようと考えている場合等に、ユーザが更新処理を行わない選択をなすことができ、更新処理によってユーザによる車両の使用が妨げられることを防止できる。
 なお更新処理用のプログラム又はデータが複数存在する場合、車載更新装置は、プログラム又はデータ毎に更新処理の実行可否を受け付けてもよい。これによりユーザの選択の幅を広げることができる。
 また本発明において車載更新装置は、更新用のプログラム又はデータを用いて更新処理を行った場合の更新処理に要する時間を通知する。更新処理に要する時間は、例えば更新用のプログラム又はデータのサイズ、及び、更新処理の対象となる通信装置の処理速度等の情報から算出(推定)することができる。この更新時間は、車載更新装置が算出する構成であってもよく、車載更新装置が車両外の装置から取得する構成であってもよい。
 これによりユーザは、更新処理の終了時刻などを把握することができ、更新処理により車両が使用不可能となる時間がどの程度であるかを把握することができる。なお更新処理用のプログラム又はデータが複数存在する場合、車載更新装置は、プログラム又はデータ毎に更新処理に要する時間を通知してもよい。これによりユーザは、更新処理に要する時間についてより詳細な情報を得ることができる。
 上述のように車載更新装置が更新処理の可否をユーザから受け付ける構成である場合には、更新処理に要する時間を通知することによって、ユーザによる更新処理の可否の選択に有用な情報を提供することができる。
 また本発明において車載更新装置は、車外の装置から取得した更新用のプログラム又はデータを更新用記憶部に記憶する。更新用記憶部は、不揮発性の記憶部であることが好ましい。車載更新装置は、更新処理が完了した更新用のプログラム又はデータを更新用記憶部から消去するが、更新の必要電力量及びバッテリの蓄積電力量に基づいて更新処理を行わないと判断したプログラム又はデータについては、更新用記憶部に記憶しておく。これにより、その後にバッテリの蓄積電力量が増加して更新処理を行うことが可能となった際に、車外の装置から更新用のプログラム又はデータを再取得することなく、更新処理を行うことができる。
 また本発明において車載更新装置は、更新用記憶部に更新用のプログラム又はデータが記憶されており、別の更新用のプログラム又はデータを車外の装置から取得する必要が生じた場合、更新用記憶部の空き容量と、更新用のプログラム又はデータの優先度とに基づいて、新たな更新用のプログラム又はデータを取得するか否かの判定を行う。
 例えば車載更新装置は、更新用記憶部の空き容量が不足しており、且つ、別の更新用のプログラム又はデータを車外の装置から取得する必要が生じた場合には、更新用記憶部に記憶されているプログラム又はデータの優先度と、新たに取得すべきプログラム又はデータの優先度とを比較する。更新用記憶部に記憶されているプログラム又はデータの優先度が新たに取得すべきプログラム又はデータの優先度より低い場合、車載更新装置は、更新用記憶部に記憶されているプログラム又はデータを消去して、車外の装置から新たな更新用のプログラム又はデータを取得し、更新用記憶部に記憶する。
 その後、車載更新装置は、更新処理を行わずに更新用記憶部から消去した更新用のプログラム又はデータについて、更新が行われなかった旨を車外の装置へ通知する。
 これらにより車載更新装置は、更新処理を行うことができずに更新用記憶部に更新用のプログラム又はデータが残され、更新用記憶部の空き容量が不足している状態で、車外の装置から新たな更新用のプログラム又はデータを取得する必要が生じたときに、新たな更新用のプログラム又はデータの取得の可否を優先度に応じて判定することができる。車載更新装置は、優先度が高い新たな更新用のプログラム又はデータを取得して更新用記憶部に記憶し、優先度が低い更新用のプログラム又はデータを消去した場合であっても、車外の装置へ通知を行っておくことにより、消去した更新用のプログラム又はデータの再取得を後に行うことができる。
 本発明による場合は、車載更新装置が車外の装置から取得した更新用のプログラム又はデータについて、更新処理を行うための必要電力量を推定し、推定して必要電力量と、車両のバッテリの蓄積電力量と、更新用のプログラム又はデータの優先度とに応じて通信装置の更新処理を行う構成とすることにより、その時点のバッテリの蓄積電力量を考慮して、優先度の高いプログラム又はデータの更新を優先して行うことが可能となるため、更新処理に伴ってバッテリの蓄積電力量が著しく低下することを防止することができる。
本実施の形態に係る車載更新システムの構成を示す模式図である。 ECUの構成を示すブロック図である。 ゲートウェイの構成を示すブロック図である。 ゲートウェイによる更新用プログラムの取得を説明するための模式図である。 ゲートウェイが行う更新用プログラム取得処理の手順を示すフローチャートである。 サーバ装置が行う更新用プログラム送信処理の手順を示すフローチャートである。 サーバ装置が行う更新処理の可否の判定を説明するための模式図である。 サーバ装置が行う更新処理の可否の判定を説明するための模式図である。 サーバ装置が行う更新処理の可否の判定を説明するための模式図である。 ゲートウェイが行う更新処理の手順を示すフローチャートである。 ECUが行う更新処理の手順を示すフローチャートである。 実施の形態2に係るゲートウェイの構成を示すブロック図である。 実施の形態2に係る車載更新システムにて表示装置に表示される更新情報の通知画面の一例を示す模式図である。 実施の形態2に係るゲートウェイが行う更新処理の手順を示すフローチャートである。
(実施の形態1)
 図1は、本実施の形態に係る車載更新システムの構成を示す模式図である。本実施の形態に係る車載更新システム100は、車両1に搭載された複数のECU(Electronic Control Unit)2が、車両1内に配された通信線1a,1b及びゲートウェイ10を介して相互に通信を行うシステムである。本実施の形態に係る車載更新システム100は、ゲートウェイ10が車載更新装置に相当し、ECU2が通信装置に相当する。また図示の例では、車内の通信線1aに2つのECU2及び1つの表示装置7が接続され、通信線1bに3つのECU2が接続され、2本の通信線1a,1bがゲートウェイ10に接続されたシステム構成であり、ゲートウェイ10が通信線1a,1b間の通信を中継することによって、全てのECU2間でデータの送受信を行うことができる。
 また本実施の形態に係る車載更新システム100では、ゲートウェイ10に通信線1cを介して無線通信装置3が接続されており、ゲートウェイ10は無線通信装置3を介して車両1外に設置されたサーバ装置9との通信を行うことができる。またゲートウェイ10には、車両1のIGスイッチ4からIG信号が入力されると共に、車両1のバッテリ5の蓄積電力量を検知するバッテリ検知部6から検知結果が入力されている。
 ECU2は、例えば車両1のエンジンの動作を制御するECU、ドアのロック/アンロックを制御するECU、ライトの点灯/消灯を制御するECU、エアバッグの動作を制御するECU、及び、ABS(Antilock Brake System)の動作を制御するECU等の種々のECUが含まれ得る。各ECU2は、車両1に配された通信線1a又は1bに接続され、通信線1a,1bを介して他のECU2及びゲートウェイ10との間でデータの送受信を行うことができる。
 無線通信装置3は、例えば携帯電話通信網又は無線LAN(Local Area Network)等の無線通信を行うことによって、サーバ装置9との間で情報の送受信を行うことができる。無線通信装置3は、通信線1cを介してゲートウェイ10に接続されており、ゲートウェイ10との間で有線通信による情報の送受信を行うことができる。これにより無線通信装置3は、ゲートウェイ10及びサーバ装置9の間の通信を中継することができ、ゲートウェイ10から与えられたデータをサーバ装置9へ送信すると共に、サーバ装置9から受信したデータをゲートウェイ10へ与える。
 ゲートウェイ10は、車両1の車内ネットワークを構成する複数の通信線1a~1cが接続され、通信線間のデータの送受信を中継する処理を行う。図1に示す例においては、ゲートウェイ10には3つの通信線1a~1c、即ち2つのECU2及び1つの表示装置7が接続された第1の通信線1a、3つのECU2が接続された第2の通信線1b及び無線通信装置3が接続された第3の通信線1cが接続されている。ゲートウェイ10は、いずれかの通信線1a~1cから受信したデータを他の通信線1a~1cへ送信することによって、データの中継を行う。
 IGスイッチ4は、車両1のエンジン始動などをユーザが行うためのスイッチであり、オン/オフの2状態に切り替わる。本実施の形態においては、IG信号はIGスイッチ4の状態を示し、IGオンは車両1のエンジンなどの原動機が動作しており、オルタネータなどによる発電が行われている状態であり、IGオフは車両1の原動機が停止して発電が行われていない状態である。バッテリ検知部6は、バッテリ5の出力端子の電圧値及び/又は入出力される電流量の積算値等に基づいて、バッテリ5に蓄積されている電力量の検知を行う。表示装置7は、例えば液晶ディスプレイなどであり、ECU2又はゲートウェイ10から与えられる表示命令などに応じて、車両1のユーザに対するメッセージ表示などを行う。また図示は省略するが、表示装置7は、例えばタッチパネル又はハードウェアキー等の操作部を有しており、ユーザの操作を受け付けてECU2又はゲートウェイ10へ受け付けた操作内容を通知する。なお表示装置7は、例えばカーナビゲーション装置と共用のものであってよい。
 サーバ装置9は、車両1に搭載されるECU2にて実行されるプログラム及びデータを管理及び記憶している。サーバ装置9は、車両1からの問合わせに応じてプログラムなどの更新が必要であるか否かを通知すると共に、更新が必要である場合には更新用のプログラム及びデータを車両1へ配信する処理を行う。
 本実施の形態に係る車載更新システム100では、車両1のエンジンが動作している際にゲートウェイ10及びサーバ装置9の通信が行われ、サーバ装置9からゲートウェイ10へ、更新に必要なプログラム及び/又はデータ等の取得(ダウンロード)が行われる。更新に必要なプログラム及び/又はデータ等の取得を完了したゲートウェイ10は、その後に車両1のエンジンが停止した場合(IGスイッチ4がオフ状態へ切り替えられた場合)、更新処理を行う必要がある旨が表示装置7によりユーザに通知される。この通知に対してユーザの承認が得られた場合、ゲートウェイ10は、取得したプログラム及び/又はデータ等を更新対象のECU2へ送信することにより、更新処理を行う。ゲートウェイ10から更新に必要なプログラム及び/又はデータ等を受信したECU2は、自身の記憶部にこのプログラム及び/又はデータ等を書き込むことによって、更新処理を行う。
 図2は、ECU2の構成を示すブロック図である。なお本図においては、複数のECU2に共通の機能ブロックを抜き出して示しており、ECU2毎に異なる機能ブロックについては図示を省略している。本実施の形態に係るECU2は、処理部21、記憶部22及び通信部23等を備えて構成されている。処理部21は、例えばCPU(Central Processing Unit)又はMPU(Micro-Processing Unit)等の演算処理装置を用いて構成され、記憶部22に記憶されたプログラム22aを読み出して実行することにより、種々の演算処理を行う。なお記憶部22に記憶されるプログラム22aは、ECU2毎にその内容が異なっている。
 記憶部22は、フラッシュメモリ又はEEPROM(Electrically Erasable Programmable Read Only Memory)等の不揮発性のメモリ素子を用いて構成されている。記憶部22は、処理部21が実行するプログラム22aと、このプログラム22aの実行に必要なデータとを記憶する。なお以下において”プログラム22a”との記載には、プログラム22aと、このプログラム22aの実行に必要なデータとを含み得る。
 通信部23は、車内ネットワークを構成する通信線1a又は1bに接続され、例えばCAN(Controller Area Network)などの通信プロトコルに従ってデータの送受信を行う。通信部23は、処理部21から与えられたデータを電気信号に変換して通信線1a又は1bへ出力することによってデータを送信すると共に、通信線1a又は1bの電位をサンプリングして取得することによりデータを受信し、受信したデータを処理部21へ与える。
 また本実施の形態に係るECU2の処理部21には、更新用情報受信部21a及び更新処理部21bが設けられている。更新用情報受信部21a及び更新処理部21bは、記憶部22に記憶されたプログラム22aの更新(アップデート)を行うための機能ブロックである。更新用情報受信部21a及び更新処理部21bは、更新処理の対象となるプログラム22aとは別のプログラム(図示は省略する)を処理部21が実行することにより実現されるソフトウェア的な機能ブロックである。更新用情報受信部21aは、通信線1a又は1bを介して送信される更新用のプログラムを通信部23にて受信し、受信した更新用のプログラムをバッファメモリ(図示は省略する)などに蓄積する処理を行う。更新処理部21bは、バッファメモリなどに蓄積された更新用のプログラムを、記憶部22に記憶(更新前のプログラム22aに対して上書き)することによって、プログラム22aを更新する処理を行う。
 図3は、ゲートウェイ10の構成を示すブロック図である。本実施の形態に係るゲートウェイ10は、処理部(プロセッサ)11、記憶部12、及び、3つの車内通信部13等を備えて構成されている。処理部11は、例えばCPU又はMPU等の演算処理装置を用いて構成され、記憶部12又は図示しないROM(Read Only Memory)等に記憶されたプログラムを読み出して実行することにより、種々の演算処理を行う。本実施の形態において処理部11は、車内ネットワークの通信線1a~1c間のデータ送受信を中継する処理、及び、ECU2の更新処理等に必要な演算処理を行う。また車両1のIGスイッチ4から供給されるIG信号及びバッテリ検知部6が検知するバッテリ5の蓄積電力量は、処理部11に入力されている。ただし、IG信号及び/又は蓄積電力量は、通信線1a~1cを利用した車内通信によりゲートウェイ10へ入力されてもよい。
 記憶部12は、フラッシュメモリ又はEEPROM等の不揮発性のメモリ素子を用いて構成されている。記憶部12は、例えばECU2の更新に用いられるプログラム及びデータ等が記憶される。記憶部12は、処理部11が実行するプログラム及びこのプログラムの実行に必要なデータなどを記憶してもよい。また記憶部12は、処理部11の処理の過程で生成されたデータなどを記憶してもよい。
 車内通信部13は、車内ネットワークを構成する通信線1a~1cに接続され、例えばCANなどの通信プロトコルに従ってデータの送受信を行う。車内通信部13は、処理部11から与えられたデータを電気信号に変換して通信線1a~1cへ出力することによって情報を送信すると共に、通信線1a~1cの電位をサンプリングして取得することによりデータを受信し、受信したデータを処理部11へ与える。なおゲートウェイ10が備える3つの車内通信部13は、それぞれ異なる通信プロトコルに従って通信を行うものであってもよい。
 また処理部11には、記憶部12又はROM等に記憶されたプログラムが実行されることによって、更新用情報取得部11a、必要電力量推定部11b、バッテリ電力量取得部11c、更新判定部11d、更新通知部11e、更新用情報送信部11f及び未更新通知部11g等がソフトウェア的な機能ブロックとして実現される。更新用情報取得部11aは、所定のタイミングで無線通信装置3を介したサーバ装置9との通信を行い、車両1に搭載されたECU2のプログラム22aの更新が必要であるか否かを問い合わせる。更新要否の問合わせを行う所定のタイミングは、例えば1日毎又は1週間毎等のように所定周期としてよく、また例えばIGスイッチ4がオフ状態からオン状態へ切り替えられる都度などとしてもよい。更新が必要であるとの通知をサーバ装置9から与えられた場合、更新用情報取得部11aは、無線通信装置3を介してサーバ装置9から更新に必要なプログラム及びデータ等(以下、単に更新用プログラムという)を取得して記憶部12に記憶する。このときに更新用情報取得部11aは、更新が必要な全てのECU2について、更新用プログラムの取得を行う。
 本実施の形態においては、サーバ装置9からゲートウェイ10へ送信される更新用プログラムには、優先度情報が付されている。優先度情報は、例えば1~5の5段階の数値として表され、数値が大きいほど優先度が高いものとすることができる。また優先度情報は、例えば車両1の製造会社、販売会社又は設計者等が適切な値を決定し、更新用プログラムと共にサーバ装置9に登録しておくものとする。ただし、更新用プログラムに予め優先度情報を付しておくのではなく、更新用プログラムを取得したゲートウェイ10が、更新用プログラムの内容などを解析して優先度を決定する構成としてもよい。
 必要電力量推定部11bは、サーバ装置9から取得した更新用プログラムのそれぞれについて、この更新用プログラムを用いて対象のECU2の更新処理を行った場合に消費される電力量を推定する処理を行う。ゲートウェイ10は、ECU2の記憶部22に更新用プログラムを記憶する処理を行った場合に消費される電力量について、所定データ量(例えば1Kバイト)あたりの数値がECU2毎にテーブルなどの態様で記憶されている。必要電力量推定部11bは、更新用プログラムのデータ量を調べると共に、この更新用プログラムを用いた更新処理の対象となるECU2に関して所定データ量当たりの消費電力量をテーブルから取得する。必要電力量推定部11bは、更新用プログラムのデータ量と、所定データ量当たりの消費電力量とを乗算することによって、この更新用プログラムを用いた更新処理を行った際の消費電力量を算出する。なお上記のテーブルは、例えば車両1又はECU2の設計段階又は生産段階等において算出又は測定した消費電力量に基づいて予め作成され、ゲートウェイ10の記憶部12などに記憶される。
 バッテリ電力量取得部11cは、ECU2の更新処理を行うタイミングに至った場合(本実施の形態においてはIGスイッチ4がオフ状態へ切り替えられた場合)に、バッテリ検知部6から入力される蓄積電力量を取得することにより、車両1のバッテリ5にその時点で蓄積されている電力量を取得する。なおバッテリ検知部6がバッテリ5の蓄積電力量をゲートウェイ10へ入力する構成である場合には、バッテリ電力量取得部11cは、単にバッテリ検知部6の検知結果を取得すればよい。ただし、バッテリ検知部6が例えばバッテリ5の端子電圧値を端に入力する構成である場合などには、バッテリ検知部6からの入力情報をバッテリ電力量取得部11cが取得し、取得した情報に基づいてバッテリ5の蓄積電力量を算出する処理を行う必要がある。
 更新判定部11dは、必要電力量推定部11bが推定した更新処理に必要な電力量と、バッテリ電力量取得部11cが取得したバッテリ5の蓄積電力量とに基づいて、サーバ装置9から取得した更新用プログラムによる更新処理を行うことが可能であるか否かの判定を行う。更新判定部11dは、バッテリ電力量取得部11cが取得した蓄積電力量に基づき、更新処理に使用可能な電力量を算出する。例えばバッテリ5の蓄積電力量が90%未満まで低下することが禁じられており、現時点の蓄積電力量が98%である場合、更新判定部11dは、98%-90%=8%に相当する電力量を更新処理に使用可能な電力量として算出する。
 また更新処理を行うべきECU2が複数存在し、サーバ装置9から更新用プログラムを複数取得している場合、必要電力量推定部11bは、更新用プログラム毎に必要電力量を算出している。更新判定部11dは、更新処理に使用可能な電力量と、各更新用プログラムの必要電力量と、各更新用プログラムの優先度とに基づいて、各更新用プログラムを用いた更新処理を行うか否かを、更新用プログラム毎に個別判定する。
 まず更新判定部11dは、最も優先度の高い更新用プログラムについて、更新処理に使用可能な電力量が必要電力量より多い場合に更新処理を行うと判定する。次いで更新判定部11dは、最も優先度の高い更新用プログラムによる更新処理により使用される電力量を使用可能な電力量から差し引き、次に優先度の高い更新用プログラムについて、同様にして更新処理を行うか否かを判定する。このようにして更新判定部11dは、サーバ装置9から取得した全ての更新用プログラムについて、優先度の順に更新処理を行うか否かの判定を行う。
 なお更新処理に使用可能な電力量が必要電力量より少ない場合には、更新判定部11dは、この更新用プログラムについて更新処理を行わないと判定する。本実施の形態においては、更新処理を行わないと判定した更新用プログラムよりも更に優先度が低い更新用プログラムについて、更新判定部11dは、電力量に基づく判定を行うことなく、更新処理を行わないと判定する。優先度が同じ更新用プログラムが複数存在する場合には、更新判定部11dは、いずれかの更新用プログラムについて更新処理を行わないと判定した場合であっても、優先度が同じ他の更新用プログラムについては電力量に基づく判定を行う。
 更新通知部11eは、更新判定部11dが更新処理を行うと判定した更新用プログラムに関する情報を表示装置7に表示することで、更新処理を行う旨をユーザに通知する。なお更新通知部11eは、更新判定部11dが更新処理を行わないと判定した更新用プログラムが存在する場合、この更新用プログラムに関する情報はユーザに通知しない。よってユーザは、実際に更新処理が行われる更新用プログラムに関する情報のみを知ることができ、更新処理を行う必要はあるが現時点で更新処理を行わない更新用プログラムに関する情報を知ることはない。またこのときに更新通知部11eは、更新処理に対する承認を表示装置7の操作部にてユーザから受け付ける。ユーザから更新処理の承認が得られなかった場合、ゲートウェイ10は、更新処理を行わない。
 更新用情報送信部11fは、更新用情報取得部11aがサーバ装置9から取得して記憶部22に記憶した更新用のプログラムを読み出し、読み出した更新用のプログラムを更新処理の対象となるECU2へ送信することによって、このECU2の記憶部22に記憶されたプログラム22aの更新処理を行う。更新処理を行うと判定された更新用プログラムが複数存在する場合、更新用情報送信部11fは、優先度の高いものから順にECU2への送信を行う。ゲートウェイ10から更新用プログラムを受信したECU2は、記憶部22に記憶されている更新前のプログラム22aを、受信した更新用プログラムで上書きすることによって、プログラム22aの更新処理を行う。
 更新用情報送信部11fによりECU2に送信された更新用プログラムは、記憶部12から消去される(ただし、消去せずに別のデータを書き込む必要が生じるまでは記憶しておいてもよい)。しかし更新判定部11dにより更新処理を行わないと判定された更新用プログラムは、記憶部12に記憶され、次に更新処理を行う機会を待つ。例えばIGスイッチ4がオン状態となって車両1が走行し、その後にIGスイッチ4がオフ状態となった場合、上述と同様の手順で記憶部22に記憶された更新用プログラムの更新可否が判定され、更新処理が行われる。
 ただし、更新処理が行われずに更新用プログラムが記憶部12に記憶されている状態で、サーバ装置9から新たな更新用プログラムを取得する必要が生じる場合がある。このような場合に更新用情報取得部11aは、記憶部12に十分な空き領域が存在していれば、サーバ装置9から新たな更新用プログラムを取得して記憶部12の空き領域に記憶する。記憶部12に十分な空き領域が存在せず、新たな更新用プログラムを記憶することができない場合、更新用情報取得部11aは、記憶部12に記憶されている更新用プログラムの優先度と、サーバ装置9から取得しようとする更新用プログラムの優先度とを比較する。記憶部12に記憶されている更新用プログラムの優先度の方が低い場合、更新用情報取得部11aは、この更新用プログラムを記憶部12から消去して、新たな更新用プログラムをサーバ装置9から取得し、記憶部12に記憶する。
 未更新通知部11gは、更新処理を行っていない更新用プログラムを記憶部12から消去した場合に、その旨をサーバ装置9へ通知する処理を行う。サーバ装置9は、各車両1のプログラムの更新状況を管理しており、更新用プログラムを各車両1へ送信したか否かに関する情報を記憶している。車両1から更新を行わずに更新用プログラムを消去した旨の通知を受けた場合、サーバ装置9は、以後にこの車両1のゲートウェイ10から更新有無の問合わせなどを受けた際に、この更新用プログラムの更新が必要である旨をゲートウェイ10へ通知することができる。
 図4は、ゲートウェイ10による更新用プログラムの取得を説明するための模式図である。本図においては、更新用プログラムを実線又は破線の矩形で示し、この矩形内に例えばP-101(3)のように、プログラムを示す頭文字Pに、プログラムを識別する3桁の番号を付して示す。またこの番号の後には、括弧書でプログラムの優先度を示す数値を記載してある。本例において優先度は1~5の5段階であり、優先度5が最も優先度が高く、優先度1が最も優先度が低いものとする。また各プログラムを示す矩形の大きさは、このプログラムのデータ量を示す。
 図4上段に示す例では、ゲートウェイ10の記憶部12に未更新の更新用プログラムとしてプログラムP-101(3)、P-102(2)及びP-103(1)の3つが記憶されている。ここでサーバ装置9から新たな更新用プログラムP-201(5)を取得する必要が生じたが、記憶部12の空き容量よりも更新用プログラムP-201(5)のデータ量の方が多い場合、記憶部12に更新用プログラムP-201(5)を記憶することができない状況が発生する。
 このような場合にゲートウェイ10は、図4下段に示すように、記憶部12に記憶されている更新用プログラムP-101(3)、P-102(2)及びP-103(1)の優先度と、新たな更新用プログラムP-201(5)の優先度とを比較する。本例では、新たな更新用プログラムP-201(5)の優先度が最も高い。よってゲートウェイ10は、記憶部12に記憶されている更新用プログラムムP-101(3)、P-102(2)及びP-103(1)のうち、最も優先度の低い更新用プログラムP-103(1)を記憶部12から消去して空き領域を広げる。このときにゲートウェイ10は、更新処理を行わずに更新用プログラムP-103(1)を消去した旨をサーバ装置9へ通知する。そしてゲートウェイ10は、サーバ装置9から新たな更新用プログラムP-201(5)を取得して、記憶部12に記憶する。
 図5は、ゲートウェイ10が行う更新用プログラム取得処理の手順を示すフローチャートである。ゲートウェイ10の処理部11の更新用情報取得部11aは、IGスイッチ4から入力されるIG信号に基づいて、IGスイッチ4がオフ状態からオン状態へ切り替えられたか否かを判定する(ステップS1)。IGスイッチ4がオン状態へ切り替えられていない場合(S1:NO)、更新用情報取得部11aは、IGスイッチ4がオン状態へ切り替えられるまで待機する。IGスイッチ4がオン状態へ切り替えられた場合(S1:YES)、更新用情報取得部11aは、無線通信装置3を介した無線通信を行い、サーバ装置9へ車両1に搭載されたECU2のプログラムの更新の有無を問い合わせる(ステップS2)。
 更新用情報取得部11aは、問い合わせに対してサーバ装置9から送信される応答を、無線通信装置3を介して受信する(ステップS3)。この応答には、更新の有無の他に、更新が必要なプログラムに係る情報、例えばプログラムの識別情報、データ量及び優先度等の情報が含まれている。更新用情報取得部11aは、サーバ装置9からの応答に含まれる情報に基づいて、車両1に搭載されたECU2のプログラムの更新の有無を判定する(ステップS4)。更新がない場合(S4:NO)、更新用情報取得部11aは、ステップS1へ処理を戻す。更新がある場合(S4:YES)、更新用情報取得部11aは、サーバ装置9から取得すべき更新用プログラムのデータ量と、記憶部12の空き容量とを比較し、新たな更新用プログラムを記憶する十分な空き領域が記憶部12に存在するか否かを判定する(ステップS5)。
 記憶部12に十分な空き領域がない場合(S5:NO)、更新用情報取得部11aは、記憶部12に記憶されている更新用プログラムの優先度より、サーバ装置9から取得すべき更新用プログラムの優先度が高いか否かを判定する(ステップS6)。サーバ装置9から取得すべき更新用プログラムの優先度が高くない場合(S6:NO)、更新用情報取得部11aは、ステップS1へ処理を戻す。サーバ装置9から取得すべき更新用プログラムの優先度が高い場合(S6:YES)、更新用情報取得部11aは、記憶部12に記憶されている優先度が低い更新用プログラムを消去する(ステップS7)。また更新用情報取得部11aは、消去した更新用プログラムについての未更新通知をサーバ装置9へ送信し(ステップS8)、ステップS9へ処理を進める。
 ステップS5にて記憶部12に十分な空き領域が存在する場合(S5:YES)、又は、ステップS8にて未更新通知を送信した後、更新用情報取得部11aは、サーバ装置9へ更新用プログラムの送信を要求する(ステップS9)。更新用情報取得部11aは、要求に応じてサーバ装置9から送信される更新用プログラムを、無線通信装置3を介して受信し(ステップS10)、受信した更新用プログラムを記憶部12の空き領域に記憶して(ステップS11)、ステップS1へ処理を戻す。
 図6は、サーバ装置9が行う更新用プログラム送信処理の手順を示すフローチャートである。サーバ装置9は、車両1のゲートウェイ10からECU2のプログラムの更新有無の問合わせを受信したか否かを判定する(ステップS21)。問合わせを受信していない場合(S21:NO)、サーバ装置9は、ステップS24へ処理を進める。問合わせを受信した場合(S21:YES)、サーバ装置9は、車両1のプログラムのバージョンなどを記録するデータベースにアクセスすることによって、問合わせに係る車両1のECU2のプログラムについての更新の有無を調査する(ステップS22)。サーバ装置9は、調査結果として得られた更新の有無を応答として問合わせ元のゲートウェイ10へ送信し(ステップS23)、ステップS24へ処理を進める。
 次いでサーバ装置9は、車両1のゲートウェイ10から更新用プログラムの送信要求を受信したか否かを判定する(ステップS24)。送信要求を受信していない場合(S24:NO)、サーバ装置9は、ステップS27へ処理を進める。送信要求を受信した場合(S24:YES)、サーバ装置9は、要求元の車両1のECU2にて更新処理を行うべき更新用プログラムを読み出し、要求元のゲートウェイ10へ送信する(ステップS25)。更新用プログラムの送信完了後、サーバ装置9は、更新用プログラムを送信した旨を記録するためにデータベースを更新し(ステップS26)、ステップS27へ処理を進める。これによりサーバ装置9が管理するデータベースでは、要求元の車両1に関して更新用プログラムが送信済みである旨が記録される。
 次いでサーバ装置9は、車両1のゲートウェイ10から未更新通知を受信したか否かを判定する(ステップS27)。未更新通知を受信していない場合(S27:NO)、サーバ装置9は、ステップS21へ処理を戻す。未更新通知を受信した場合(S27:YES)、サーバ装置9は、通知の対象となる更新用プログラムについて、車両1へ送信済みとされている記録を未送信へと変更するためにデータベースを更新し(ステップS28)、ステップS21へ処理を戻す。
 図7~図9は、サーバ装置9が行う更新処理の可否の判定を説明するための模式図である。本図においては、左側に記載した矩形にてバッテリ5の蓄積電力量及び更新処理に使用可能な電力量を示し、右側に記載した矩形にて各更新用プログラムの更新処理の必要電力量を示してある。バッテリ5の蓄積電力量は、0%~100%の割合で示してある。更新処理にはバッテリ5の蓄積電力量が90%を下回らない範囲で、バッテリ5の蓄積電力量を使用することができるものとする。また右側に記載した複数の矩形内のP-301(5)などの文字列は、図4に示したものと同じ規則で付けられた更新用プログラムを識別するための文字列である。各更新用プログラムの矩形の大きさが、更新処理に必要な電力量を示している。
 図7上段に示す例は、バッテリ5の蓄積電力量が98%であり、更新処理に8%の電力を使用することができる状況である。この状況において、4つの更新用プログラムP-301(5)、P-302(4)、P-303(2)及びP-304(1)を用いた更新処理を行う必要があり、各更新処理プログラムの更新処理に必要な電力量が等しく2%の電力量であるものとする。よってゲートウェイ10は、4つの更新用プログラムの更新に必要な電力量の合計が8%の電力であり、更新処理に8%の電力を使用することができる状況であるため、全ての更新用プログラムについて更新処理が可能であると判定する。
 図7下段に示す例は、図7上段の例に対して、バッテリ5の蓄積電力量が1%少ない97%となった状況である。この場合にゲートウェイ10は、全ての更新用プログラムの更新処理を行うことができないため、優先度が高い更新プログラムを優先して選択し、3つの更新用プログラムP-301(5)、P-302(4)、P-303(2)については更新処理が可能であると判定し、1つの更新用プログラムP-304(1)については更新処理が不可能であると判定する。
 図8上段に示す例は、図7上段の例とバッテリ5の蓄積電力量は同じであるが、更新用プログラムP-301(5)の必要電力量が5%の電力量である場合である。この場合にゲートウェイ10は、優先度が高い更新用プログラムを優先して選択し、2つの更新用プログラムP-301(5)及びP-302(4)については更新処理が可能であると判定し、他の2つの更新処理用プログラムP-303(2)及びP-304(1)については更新処理が不可能であると判定する。
 図8下段に示す例は、図8上段の例に対して、バッテリ5の蓄積電力量が4%少ない94%となった状況である。本実施の形態においては、この状況において最も優先度が高い更新用プログラムP-301(5)の更新処理を行うことができないため、ゲートウェイ10は、更新用プログラムP-301(5)のみでなく、これよりも優先度が低い更新用プログラムP-302(4)、P-303(2)及びP-304(1)についても更新処理が不可能であると判定する。
 なお図8下段に示す状況において、優先度が高い更新用プログラムが更新処理不可能である場合に、これより低い優先度の更新用プログラムについては全て更新処理不可能と判定する構成としたが、これに限るものではない。図9に示す例は、図8下段の例とバッテリ5の蓄積電力量及び更新用プログラムの必要電力量は同じであるが、優先度が高い更新用プログラムが更新処理不可能であっても、これより低い優先度の更新用プログラムの更新処理を行うことを許可する構成とした場合である。この変形例においてゲートウェイ10は、4%の使用可能電力量を最大限に利用して、優先度が次に高い2つの更新用プログラムP-302(4)及びP-303(2)について更新処理が可能であると判定する。
 このようにしてゲートウェイ10が更新処理可能と判定した更新用プログラムについて、更新処理を行う旨の通知が表示装置7にて行われ、ユーザの承認が得られた場合にこの更新用プログラムを用いたECU2の更新処理が行われる。
 図10は、ゲートウェイ10が行う更新処理の手順を示すフローチャートである。ゲートウェイ10の処理部11は、IGスイッチ4から入力されるIG信号に基づいて、IGスイッチ4がオン状態からオフ状態へ切り替えられたか否かを判定する(ステップS31)。IGスイッチ4がオフ状態へ切り替えられていない場合(S31:NO)、処理部11は、IGスイッチ4がオフ状態へ切り替えられるまで待機する。IGスイッチ4がオフ状態へ切り替えられた場合(S31:YES)、処理部11は、記憶部12に未更新の更新処理プログラムが記憶されているか否かを調べることによって、更新処理を行う必要があるか否かを判定する(ステップS32)。更新処理を行う必要がない場合(S32:NO)、処理部11は、ステップS31へ処理を戻す。
 更新処理を行う必要がある場合(S32:YES)、処理部11のバッテリ電力量取得部11cは、バッテリ検知部6からの入力に基づいて、バッテリ5の蓄積電力量を取得する(ステップS33)。処理部11の必要電力量推定部11bは、記憶部12に記憶されている各更新用プログラムについて、更新処理に必要な電力量を推定する(ステップS34)。このときに必要電力量推定部11bは、ECU2毎の所定データ量当たりの消費電力量に関する情報を含むテーブルを参照し、各更新用プログラムのデータ量に基づいて、必要電力量を推定する。
 処理部11の更新判定部11dは、ステップS33にて取得した蓄積電力量から更新処理に使用可能な電力量を算出し、この使用可能電力量と、各更新用プログラムの必要電力量と、各更新用プログラムの優先度とに基づいて、各更新用プログラムの更新判定処理を行う(ステップS35)。処理部11は、ステップS35の更新判定処理の結果に基づいて、少なくとも1つの更新用プログラムについて更新可能と判定されたか否かを判定する(ステップS36)。全ての更新用プログラムについて更新不可能と判定された場合(S36:NO)、処理部11は、ステップS31へ処理を戻す。
 少なくとも1つの更新用プログラムについて更新可能と判定された場合(S36:YES)、処理部11の更新通知部11eは、車内通信部13を介して表示装置7に表示命令を送信することにより、更新可能と判定された更新用プログラムについて更新処理を行う旨の通知を表示装置7にて行う(ステップS37)。更新通知部11eは、更新通知に対して表示装置7の操作部にて受け付けたユーザの操作に基づいて、更新が承認されたか否かを判定する(ステップS38)。更新が承認されなかった場合(S38:NO)、処理部11は、ステップS31へ処理を戻す。
 更新が承認された場合(S38:YES)、処理部11の更新用情報送信部11fは、記憶部12に記憶された更新用プログラムを、車内通信部13にて更新対象のECU2へ送信する(ステップS39)。更新用情報送信部11fは、更新対象のECU2から更新完了の通知を受信したか否かに応じて、全ての更新対象のECU2について更新処理を完了したか否かを判定する(ステップS40)。更新処理を完了していない場合(S40:NO)、更新用情報送信部11fは、ステップS39へ処理を戻し、更新用プログラムの送信を継続して行う。更新処理を完了した場合(S40:YES)、処理部11は、更新完了した更新用プログラムを記憶部12から消去して(ステップS41)、ステップS31へ処理を戻す。
 図11は、ECU2が行う更新処理の手順を示すフローチャートである。ECU2の処理部21の更新用情報受信部21aは、ゲートウェイ10から送信される更新用プログラムを通信部23にて受信したか否かを判定する(ステップS51)。更新用プログラムを受信していない場合(S51:NO)、更新用情報受信部21aは、更新用プログラムを受信するまで待機する。更新用プログラムを受信した場合(S51:YES)、更新用情報受信部21aは受信した更新用プログラムをバッファなどに一時的に記憶する。処理部21の更新処理部21bは、受信した更新用プログラムを記憶部22に記憶する(上書きする)ことによってプログラム22aの更新処理を行う(ステップS52)。更新処理部21bは、プログラム22aの更新を完了したか否かを判定する(ステップS53)。更新を完了していない場合(S53:NO)、更新処理部21bは、ステップS52へ処理を戻し、更新処理を継続する。プログラム22aの更新を完了した場合(S53:YES)、処理部21は、通信部23にてゲートウェイ10へ更新完了を通知し(ステップS54)、ステップS51へ処理を戻す。
 以上の構成の本実施の形態に係る車載更新システム100は、車両1に搭載された複数のECU2のプログラム22a(プログラム又はデータ)の更新処理をゲートウェイ10が行う。ゲートウェイ10は、無線通信装置3を介した無線通信により、車外のサーバ装置9から更新用プログラム(更新用のプログラム又はデータ)を取得する。ゲートウェイ10は、更新処理の対象となるECU2が複数存在する場合、各ECU2について更新用プログラムの取得を行う。ただし、1つの更新用プログラムを用いて複数のECU2の更新処理を行うことが可能な構成であってもよい。
 ゲートウェイ10は、取得した更新用プログラムについて更新処理を行うための必要電力量を推定すると共に、バッテリ検知部6からの入力に基づいて車両1のバッテリ5の蓄積電力量を取得する。ゲートウェイ10は、推定した必要電力量と、バッテリ5の蓄積電力量と、更新用プログラムの優先度とに応じてECU2の更新処理を行う。なお更新用プログラムの優先度は、例えばサーバ装置9から更新用プログラムを取得する際に優先度の情報を共に取得する構成としてもよく、また例えば取得した更新用プログラムに対してゲートウェイ10が優先度を付す構成としてもよい。
 これによりゲートウェイ10は、その時点のバッテリ5の蓄積電力量を考慮して、優先度の高い更新用プログラムによる更新処理を優先して行うことが可能となる。またゲートウェイ10は、バッテリ5の蓄積電力量から更新処理を行うべきでないと判断した場合には、更新処理を中止又は延期することが可能となる。よって車載更新システム100は、ECU2の更新処理を行うことによって、車両1のバッテリ5の蓄積電力量が著しく低下することを防止することができる。
 またゲートウェイ10は、バッテリ5の蓄積電力量とECU2の更新処理の必要電力量とに基づいて、サーバ装置9から取得した更新用プログラムを用いた更新処理が可能であるか否かの判定を行う。ゲートウェイ10は、電力量に基づいて更新可能であると判定し、且つ、優先度が高い更新用プログラムを用いた更新処理を優先して行う。これにより、バッテリ5の蓄積電力量が少ない場合であっても、優先度が高い更新処理をゲートウェイ10が優先して行うことができる。
 またゲートウェイ10は、更新の必要電力量及びバッテリ5の蓄積電力量に基づいて優先度の高い更新用プログラムが更新不可能と判定した場合、この更新用プログラムを用いた更新処理を行わず、更にはこれより優先度の低い更新用プログラムを用いた更新処理も行わない。即ちゲートウェイ10は、優先度が高い更新用プログラムを用いた更新処理が完了するまで、優先度の低い更新処理を待機する。これにより優先度が高い更新処理に多くの電力量が必要である場合などに、優先度が高い更新処理が待機状態で維持されることを防止できる。
 または、ゲートウェイ10は、更新の必要電力量及びバッテリ5の蓄積電力量に基づいて優先度の高い更新用プログラムが更新不可能と判定した場合、次に優先度が高い更新用プログラムを用いた更新処理の可否を判定し、更新処理が可能であれば更新処理を行う。これによりバッテリ5に蓄積された電力を最大限に利用して更新処理を可能な限り行うことができる。
 またゲートウェイ10は、更新処理を行う場合に、更新に係る情報を表示装置7にて車両1のユーザなどへ通知する。これによりユーザなどは、車両1に搭載されたECU2のプログラムの更新状況を把握することができる。ただしゲートウェイ10は、更新の必要電力量及びバッテリ5の蓄積電力量に基づいて更新処理を行わないと判断したものについては、サーバ装置9から更新用プログラムを取得していても、ユーザなどへの通知を行わない。これにより、更新処理を行わないプログラムについての情報など、ユーザにとって不要な情報が通知されることを防止できる。更新処理を行わなかった更新用プログラムについては、その後にバッテリ5の蓄積電力量が増加して更新処理を行うと判断した際に通知を行えばよい。
 またゲートウェイ10は、サーバ装置9から取得した更新用プログラムを記憶部12に記憶する。記憶部12は、不揮発性の記憶部であることが好ましい。ゲートウェイ10は、更新処理が完了した更新用プログラムを記憶部12から消去するが、更新の必要電力量及びバッテリ5の蓄積電力量に基づいて更新処理を行わないと判断した更新用プログラムについては、記憶部12に記憶しておく。これにより、その後にバッテリ5の蓄積電力量が増加して更新処理を行うことが可能となった際に、サーバ装置9から更新用プログラムを再取得することなく、記憶部12に記憶されている更新用プログラムを用いて更新処理を行うことができる。
 またゲートウェイ10は、記憶部12に更新用プログラムが記憶されており、別の更新用プログラムをサーバ装置9から取得する必要が生じた場合、記憶部12の空き容量と、更新用プログラムの優先度とに基づいて、新たな更新用プログラムをサーバ装置9から取得するか否かの判定を行う。
 例えばゲートウェイ10は、記憶部12の空き容量が不足しており、且つ、別の更新用プログラムをサーバ装置9から取得する必要が生じた場合には、記憶部12に記憶されている更新用プログラムの優先度と、新たに取得すべき更新用プログラムの優先度とを比較する。記憶部12に記憶されている更新用プログラムの優先度が新たな更新用プログラムの優先度より低い場合、ゲートウェイ10は、記憶部12に記憶されている更新用プログラムを消去して、サーバ装置9から新たな更新用プログラムを取得して記憶部12に記憶する。その後、ゲートウェイ10は、更新処理を行わずに記憶部12から消去した更新用プログラムについて、更新が行われなかった旨をサーバ装置9へ通知する。
 これらによりゲートウェイ10は、更新処理を行うことができずに記憶部12に更新用プログラムが残され、記憶部12の空き容量が不足している状態で、サーバ装置9から新たな更新用プログラムを取得する必要が生じたときに、新たな更新用プログラムの取得の可否を優先度に応じて判定することができる。ゲートウェイ10は、優先度が高い新たな更新用プログラムを取得して記憶部12に記憶し、優先度が低い更新用プログラムを記憶部12から消去した場合であっても、サーバ装置9へその旨を通知しておくことにより、消去した更新用プログラムの再取得を後に行うことができる。
 なお本実施の形態においては、車両1に搭載されたゲートウェイ10がサーバ装置9からの更新用プログラムの取得及び各ECU2への更新用プログラムの送信等を行う構成、即ちゲートウェイ10が車載更新装置として機能する構成としたが、これに限るものではない。いずれかのECU2、無線通信装置3又はこれら以外の車載機器が車載更新装置としての処理を行う構成としてもよい。また更新用プログラムを無線通信にて車外のサーバ装置9から取得する構成としたが、これに限るものではない。例えば更新用プログラムが記録された記録媒体をゲートウェイ10が読み込むことによって更新用プログラムを取得する構成としてもよい。また更新対象の通信装置をECU2としたが、これに限るものではなく、ECU2以外の種々の通信装置を更新処理の対象としてよい。また車両1内におけるゲートウェイ10及びECU2等の間で行う通信は、有線通信ではなく、無線通信であってもよい。
 また本実施の形態においてゲートウェイ10は、IGスイッチ4がオフ状態へ切り替えられた場合に更新処理を行う構成としたが、これに限るものではない。例えばゲートウェイ10は、IGスイッチ4がオフ状態であり、且つ、午前2時などの所定時刻に達した場合に更新処理を行うなど、IGスイッチ4がオフ状態へ切り替えられた直後以外のタイミングで更新処理を行ってよい。このような場合には、ゲートウェイ10はユーザへの通知を行わないか、又は、IGスイッチ4がオフ状態へ切り替えられた際にバッテリ5の蓄積電力量とは関係なく取得済みの更新用プログラムについて更新の通知を行ってユーザから承認を得ておき、更新処理を行うタイミングでバッテリ5の蓄積電力量を調べて更新処理の可否を判定すればよい。
(実施の形態2)
 図12は、実施の形態2に係るゲートウェイの構成を示すブロック図である。実施の形態2に係るゲートウェイ210は、実施の形態1に係るゲートウェイ10に対して、更新時間算出部11h及び更新可否受付部11iを処理部211に追加した構成である。更新時間算出部11h及び更新可否受付部11iは、更新用情報取得部11a~未更新通知部11gと同様に、記憶部12又はROM等に記憶されたプログラムが処理部211にて実行されることによって実現する機能ブロックである。
 更新時間算出部11hは、サーバ装置9から取得した各更新用プログラムについて、この更新用プログラムを用いてECU2の更新処理を行う場合に必要となる時間を算出(推定)する処理を行う。更新時間算出部11hは、例えば更新用プログラムのサイズ、及び、この更新用プログラムを用いて更新処理を行うECU2の処理速度等に基づいて、更新処理に必要な時間を算出することができる。なおこの場合のECU2の処理速度は、ECU2の処理部21の処理速度ではなく、記憶部22に対する書き込み速度に依存する速度であってよい。このためゲートウェイ210は、更新処理の対象となり得るECU2の処理速度に関する情報を予め記憶している。
 実施の形態2に係るゲートウェイ210の更新通知部11eは、更新判定部11dが更新処理を行うと判定した更新用プログラムに関する情報を表示装置7に表示する際に、各更新用プログラムについて更新時間算出部11hが算出した更新時間を表示する。
 更新可否受付部11iは、更新通知部11eによる通知を行った後、各更新用プログラムを用いた更新処理を行うか否かの選択をユーザから受け付ける。本実施の形態において更新可否受付部11iは、車内通信部13にて表示装置7との通信を行い、表示装置7に設けられた操作部にてユーザの選択を受け付ける。
 図13は、実施の形態2に係る車載更新システム100にて表示装置7に表示される更新情報の通知画面の一例を示す模式図である。ゲートウェイ210の更新通知部11eは、バッテリ5の電力量に基づいて更新処理を行うと判定された更新用プログラムに関する情報を、“プログラムの更新情報”として表示装置7に表示する。プログラムの更新情報の通知画面には、更新するプログラム名、更新に必要な時間、更新許可の操作を受け付けるためのチェックボックス71、更新開始ボタン72及びキャンセルボタン73等が表示される。
 プログラムの更新情報の通知画面に表示される更新するプログラム名は、更新用プログラムのファイル名などではなく、例えばカーナビゲーション用アップデートプログラム、無線通信のセキュリティアップデートプログラム、又は、リコール対応プログラム等のように、車両1のユーザがプログラムの内容を把握しやすい名称が表示されることが好ましい。表示されるプログラムの名称は、例えばサーバ装置9から更新用プログラムをゲートウェイ210が取得する際に付随情報として与えられる。ただし図示の例では、更新するプログラム名として単にプログラムA~Eと記載してある。
 プログラムの更新情報の通知画面に表示される更新に必要な時間は、更新時間算出部11hが算出した各更新プログラムの更新時間である。図示の例では、プログラムAの更新時間は50秒であり、プログラムBの更新時間は3分であり、プログラムCの更新時間は1分であり、プログラムDの更新時間は30秒であり、プログラムEの更新時間は2分である。
 本実施の形態において表示装置7は、表示した画面に対するタッチ操作を検知するタッチパネルを有しており、プログラムの更新情報の通知画面に設けられたチェックボックス71、更新開始ボタン72及びキャンセルボタン73に対するタッチ操作をタッチパネルにて検知することができる。
 プログラムの更新情報の通知画面には、プログラム毎にチェックボックス71が設けられる。チェックボックス71は、ユーザのタッチ操作に応じて選択状態と非選択状態とがトグル的に切り替わる。ユーザは、チェックボックス71の状態を切り替えることによって、プログラムの更新処理の許可と非許可とを切り替えることができる。図示の例では、プログラムB及びCに対して更新処理が許可され、プログラムA,D及びEに対しては更新処理が許可されていない。
 プログラムの更新情報の通知画面に設けられた更新開始ボタン72は、ユーザのタッチ操作により、更新処理を開始する指示を受け付けるためのボタンである。更新開始ボタン72に対するタッチ操作がなされた場合、チェックボックス71にて更新が許可されたプログラムの更新処理が開始される。なおチェックボックス71にて更新許可が与えられたプログラムが存在しない場合(全てのチェックボックス71が非選択状態である場合)には、エラーメッセージなどが表示される。
 プログラムの更新情報の通知画面に設けられたキャンセルボタン73は、ユーザのタッチ操作により、更新処理を中止する指示を受け付けるためのボタンである。キャンセルボタン73に対するタッチ操作がなされた場合、チェックボックス71の選択状態に関わらず、全てのプログラムについて更新処理は行われない。
 表示装置7は、プログラムの更新情報の通知画面を表示した後、チェックボックス71、更新開始ボタン72及びキャンセルボタン73に対するタッチ操作を受け付けて、受け付けた操作をゲートウェイ210へ通知する。ゲートウェイ210の更新可否受付部11iは、表示装置7から通知される操作に基づいて、更新処理を許可するか否かの選択を受け付ける。
 図14は、実施の形態2に係るゲートウェイ210が行う更新処理の手順を示すフローチャートである。実施の形態2に係るゲートウェイ210の処理部211は、IGスイッチ4がオン状態からオフ状態へ切り替えられたか否かを判定する(ステップS61)。IGスイッチ4がオフ状態へ切り替えられていない場合(S61:NO)、処理部211は、IGスイッチ4がオフ状態へ切り替えられるまで待機する。IGスイッチ4がオフ状態へ切り替えられた場合(S61:YES)、処理部211は、更新処理を行う必要があるか否かを判定する(ステップS62)。更新処理を行う必要がない場合(S62:NO)、処理部211は、ステップS61へ処理を戻す。
 更新処理を行う必要がある場合(S62:YES)、処理部211のバッテリ電力量取得部11cは、バッテリ5の蓄積電力量を取得する(ステップS63)。処理部211の必要電力量推定部11bは、記憶部12に記憶されている各更新用プログラムについて、更新処理に必要な電力量を推定する(ステップS64)。
 処理部211の更新判定部11dは、ステップS63にて取得した蓄積電力量から更新処理に使用可能な電力量を算出し、この使用可能電力量と、各更新用プログラムの必要電力量と、各更新用プログラムの優先度とに基づいて、各更新用プログラムの更新判定処理を行う(ステップS65)。処理部211は、ステップS65の更新判定処理の結果に基づいて、少なくとも1つの更新用プログラムについて更新可能と判定されたか否かを判定する(ステップS66)。全ての更新用プログラムについて更新不可能と判定された場合(S66:NO)、処理部211は、ステップS61へ処理を戻す。
 少なくとも1つの更新用プログラムについて更新可能と判定された場合(S66:YES)、処理部11の更新時間算出部11hは、更新可能と判定された各更新用プログラムについて、更新処理に必要な更新時間を算出する(ステップS67)。次いで、処理部211の更新通知部11eは、ステップS67にて算出した更新時間と共に、図13に示したプログラムの更新情報の通知画面を表示する命令を表示装置7へ送信することにより、更新処理に関する情報を表示装置7にてユーザに通知する(ステップS68)。
 処理部211の更新可否受付部11iは、表示装置7の操作部にて受け付けたユーザの操作に基づいて、各更新用プログラムによる更新処理が許可されたか否かを判定する(ステップS69)。全ての更新用プログラムについて更新が許可されなかった場合(S69:NO)、処理部211は、ステップS61へ処理を戻す。
 少なくとも一つの更新用プログラムについて更新処理が許可された場合(S69:YES)、処理部211の更新用情報送信部11fは、記憶部12に記憶された更新用プログラムを、車内通信部13にて更新対象のECU2へ送信する(ステップS70)。更新用情報送信部11fは、更新対象のECU2から更新完了の通知を受信したか否かに応じて、全ての更新対象のECU2について更新処理を完了したか否かを判定する(ステップS71)。更新処理を完了していない場合(S71:NO)、更新用情報送信部11fは、ステップS70へ処理を戻し、更新用プログラムの送信を継続して行う。更新処理を完了した場合(S71:YES)、処理部211は、更新完了した更新用プログラムを記憶部12から消去して(ステップS72)、ステップS61へ処理を戻す。
 以上の構成の実施の形態2に係る車載更新システム100においては、ゲートウェイ210が表示装置7に通知画面を表示して更新処理に関する通知を行った後、更新プログラムを用いた更新処理の実行を許可するか否かの選択をユーザから受け付ける。ゲートウェイ210は、実行が許可された場合に更新処理を行い、許可されない場合には更新処理を行わない。これにより、例えば更新処理の通知を受けた際にユーザが車両1を使用しようと考えている場合又は短時間の経過後に車両1を使用しようと考えている場合等に、ユーザが更新処理を行わない選択をなすことができ、更新処理によってユーザによる車両1の使用が妨げられることを防止できる。
 またゲートウェイ210は、バッテリ5の残量に基づいて更新処理が可能と判断された更新用プログラムが複数存在する場合、更新用プログラム毎に更新処理の実行可否を受け付ける。これにより、更新処理の実行に関してユーザの選択の幅を広げることができる。
 またゲートウェイ210は、更新用プログラムを用いてECU2の更新処理を行った場合に処理に要する時間を算出し、算出した更新時間を通知画面にてユーザに通知する。更新処理に要する時間は、例えば更新用プログラムのサイズ、及び、更新対象となるECU2の処理速度等の情報から算出することができる。これによりユーザは、更新処理の終了時刻などを把握することができ、更新処理により車両1が使用不可能となる時間がどの程度であるかを把握することができる。
 またゲートウェイ210は、バッテリ5の残量に基づいて更新処理が可能と判断された更新用プログラムが複数存在する場合、更新用プログラム毎に更新時間の算出及び通知を行う。これによりユーザは、更新処理に要する時間について、より詳細な情報を得ることができる。
 このようにゲートウェイ210が更新処理に要する時間を通知することによって、通知画面にて更新処理の可否を受け付ける際に、更新処理の可否の判断に有用な情報をユーザに提供することができる。
 なお実施の形態2において図13に示した通知画面の構成は一例であって、これに限るものではない。通知画面に示した各プログラムの更新時間は一例であって、これに限るものではない。また通知画面に設けたチェックボックス71にて更新の可否を受け付ける構成としたが、これに限るものではなく、チェックボックス71以外のどのような方法で受け付けを行ってもよい。
 (変形例1)
 また実施の形態2に係る車載更新システム100では、ゲートウェイ210が更新処理を行う場合の更新時間を算出する構成としたが、これに限るものではない。変形例1に係る車載更新システム100では、ゲートウェイ210が更新用プログラムをサーバ装置9から取得する際に、この更新用プログラムを用いた更新処理に要する時間に関する情報をサーバ装置9から取得する。
 変形例1に係る車載更新システム100のサーバ装置9は、車両1のゲートウェイ210へ送信する更新用プログラムと共に、この更新用プログラムを用いた更新処理に要する時間に関する情報を記憶している。更新処理に要する時間は、例えばECU2又は更新用プログラムの開発者などが予め算出又は測定等して、更新用プログラムと共にサーバ装置9に記憶しておく。
 または、サーバ装置9が、更新用プログラムをゲートウェイ210へ送信する都度、この更新用プログラムを用いた更新処理に要する時間を算出してもよい。サーバ装置9は、更新用プログラムのサイズ、及び、この更新用プログラムにより更新処理を行うECU2の処理速度に基づいて更新時間の算出を行うことができる。このためにサーバ装置9は、更新処理プログラムの適用対象となり得るECU2について処理速度を記憶したデータベースなどを有している。
 (変形例2)
 実施の形態2に係る車載更新システム100においてゲートウェイ210が表示する通知画面として図13に示した一例では、更新するプログラム名及び更新に必要な時間の情報を通知したが、通知画面にてユーザへ通知する情報はこれらに限らない。変形例2に係るゲートウェイ210は、更新するプログラム名及び更新に必要な時間の情報に加えて、必要電力量推定部11bが推定した電力量の情報をプログラム毎に通知する。通知する電力量は、例えばバッテリ5の全容量又は残量に対する消費電力量の割合としてもよく、W(ワット)などの単位で表される電力量としてもよい。
 また変形例2に係るゲートウェイ210は、各プログラムの更新の優先度をユーザに通知してもよい。この場合にゲートウェイ210は、例えば優先度を数値として通知画面に表示してもよく、また例えば複数のプログラムを優先度順に並べて表示してもよい。
 また実施の形態2に係る車載更新システム100のその他の構成は、実施の形態1に係る車載更新システム100と同様であるため、同様の箇所には同じ符号を付し、詳細な説明を省略する。
 1 車両
 1a~1c 通信線
 2 ECU(通信装置)
 3 無線通信装置
 4 IGスイッチ
 5 バッテリ
 6 バッテリ検知部
 7 表示装置
 9 サーバ装置
 10 ゲートウェイ(車載更新装置)
 11 処理部
 11a 更新用情報取得部
 11b 必要電力量推定部
 11c バッテリ電力量取得部
 11d 更新判定部
 11e 更新通知部
 11f 更新用情報送信部
 11g 未更新通知部
 11h 更新時間算出部
 11i 更新可否受付部
 12 記憶部
 13 車内通信部
 21 処理部
 21a 更新用情報受信部
 21b 更新処理部
 22 記憶部
 22a プログラム
 23 通信部
 100 車載更新システム
 210 ゲートウェイ(車載更新装置)
 211 処理部
 

Claims (9)

  1.  車両に搭載された通信装置の記憶部に記憶されたプログラム又はデータを更新する処理を行う更新処理部を備える車載更新装置であって、
     前記車両外の装置から更新用のプログラム又はデータを取得する処理を行う更新用情報取得部と、
     前記更新用情報取得部が取得した更新用のプログラム又はデータを用いた更新処理に必要な電力量を推定する必要電力量推定部と、
     前記車両のバッテリに蓄積された電力量を取得するバッテリ電力量取得部と
     を備え、
     前記更新処理部は、前記必要電力量推定部が推定した電力量、前記バッテリ電力量取得部が取得した電力量、及び、前記更新用情報取得部が取得した更新用のプログラム又はデータの優先度に応じて、更新処理を行うこと
     を特徴とする車載更新装置。
  2.  前記バッテリ電力量取得部が取得した電力量及び前記必要電力量推定部が推定した電力量に基づいて、前記更新用情報取得部が取得した更新用のプログラム又はデータの更新処理が可能であるか否かを判定する更新判定部を備え、
     前記更新処理部は、前記更新判定部が更新処理可能と判定し、且つ、優先度が高い更新用のプログラム又はデータを用いた更新処理を優先して行うこと
     を特徴とする請求項1に記載の車載更新装置。
  3.  前記更新処理部は、優先度が高い更新用のプログラム又はデータの更新処理が可能でないと前記更新判定部により判定された場合、当該優先度の更新用のプログラム又はデータを用いた更新処理を行わず、更に当該優先度より低い優先度の更新用のプログラム又はデータを用いた更新処理を行わないこと
     を特徴とする請求項2に記載の車載更新装置。
  4.  前記更新処理部は、優先度が高い更新用のプログラム又はデータの更新処理が可能でないと前記更新判定部により判定された場合、当該優先度の更新用のプログラム又はデータを用いた更新処理を行わず、当該優先度の次に優先度が高い更新用のプログラム又はデータについて前記更新判定部の判定結果に応じて更新処理を行うこと
     を特徴とする請求項2に記載の車載更新装置。
  5.  前記更新用情報取得部が更新用のプログラム又はデータを記憶する更新用記憶部を備え、
     前記更新用記憶部は、
     更新処理が完了した更新用のプログラム又はデータを消去すると共に、
     前記更新用情報取得部が更新用のプログラム又はデータを取得したが前記更新処理部による更新処理を行わない更新用のプログラム又はデータを記憶しておくこと
     を特徴とする請求項1乃至請求項4のいずれか1つに記載の車載更新装置。
  6.  前記更新用情報取得部は、前記更新用記憶部に更新用のプログラム又はデータが記憶されている場合、該更新用のプログラム又はデータの優先度及び前記更新用記憶部の空き容量に応じて、前記車両外の装置から次の更新用のプログラム又はデータを取得するか否かを判定すること
     を特徴とする請求項5に記載の車載更新装置。
  7.  前記更新用情報取得部は、前記更新用記憶部の空き容量が不足しており、且つ、前記更新用記憶部に記憶されている更新用のプログラム又はデータの優先度が次の更新用のプログラム又はデータの優先度より低い場合、前記更新用記憶部に記憶されている更新用のプログラム又はデータを消去し、前記車両外の装置から次の更新用のプログラム又はデータを取得して前記更新用記憶部に記憶すること
     を特徴とする請求項6に記載の車載更新装置。
  8.  前記更新用記憶部から更新処理を行っていない更新用のプログラム又はデータが消去された場合に、前記車両外の装置へ通知する未更新通知部を備えること
     を特徴とする請求項7に記載の車載更新装置。
  9.  車両に搭載された複数の通信装置と、該通信装置の記憶部に記憶されたプログラム又はデータを更新する処理を行う更新処理部を有する車載更新装置とを備える車載更新システムであって、
     前記車載更新装置は、前記車両外の装置から更新用のプログラム又はデータを取得する処理を行う更新用情報取得部と、前記更新用情報取得部が取得した更新用のプログラム又はデータを用いた更新処理に必要な電力量を推定する必要電力量推定部と、前記車両のバッテリに蓄積された電力量を取得するバッテリ電力量取得部とを備え、前記更新処理部は、前記必要電力量推定部が推定した電力量、前記バッテリ電力量取得部が取得した電力量、及び、前記更新用情報取得部が取得した更新用のプログラム又はデータの優先度に応じて、更新処理を行い、
     前記通信装置は、前記車載更新装置から更新用のプログラム又はデータを受信し、受信した更新用のプログラム又はデータを前記記憶部に記憶して更新を行うこと
     を特徴とする車載更新システム。
     
PCT/JP2017/029285 2016-08-30 2017-08-14 車載更新装置及び車載更新システム WO2018043107A1 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
DE112017004311.5T DE112017004311T5 (de) 2016-08-30 2017-08-14 Bordeigene Aktualisierungsvorrichtung und bordeigenes Aktualisierungssystem
US16/327,998 US11029935B2 (en) 2016-08-30 2017-08-14 On-board update device and on-board update system
CN201780052273.2A CN109643253A (zh) 2016-08-30 2017-08-14 车载更新装置以及车载更新***

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
JP2016168382 2016-08-30
JP2016-168382 2016-08-30
JP2017-056007 2017-03-22
JP2017056007A JP6696468B2 (ja) 2016-08-30 2017-03-22 車載更新装置及び車載更新システム

Publications (1)

Publication Number Publication Date
WO2018043107A1 true WO2018043107A1 (ja) 2018-03-08

Family

ID=61300777

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2017/029285 WO2018043107A1 (ja) 2016-08-30 2017-08-14 車載更新装置及び車載更新システム

Country Status (1)

Country Link
WO (1) WO2018043107A1 (ja)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2018187860A1 (en) * 2017-04-13 2018-10-18 Blackberry Limited Program release packages including program updates
WO2020203023A1 (ja) * 2019-03-29 2020-10-08 マツダ株式会社 自動車用演算装置
CN113168314A (zh) * 2018-12-04 2021-07-23 三菱电机株式会社 更新管理装置、更新管理***及更新管理方法
CN113168382A (zh) * 2018-11-28 2021-07-23 株式会社自动网络技术研究所 监视装置、监视程序及监视方法
US11458863B2 (en) * 2020-09-28 2022-10-04 Subaru Corporation Vehicle

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011000894A (ja) * 2009-06-16 2011-01-06 Fujitsu Ten Ltd 制御装置及び制御方法
JP2013084143A (ja) * 2011-10-11 2013-05-09 Denso Corp 車載通信機

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011000894A (ja) * 2009-06-16 2011-01-06 Fujitsu Ten Ltd 制御装置及び制御方法
JP2013084143A (ja) * 2011-10-11 2013-05-09 Denso Corp 車載通信機

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2018187860A1 (en) * 2017-04-13 2018-10-18 Blackberry Limited Program release packages including program updates
US10353696B2 (en) 2017-04-13 2019-07-16 Blackberry Limited Program release packages including program updates
CN113168382A (zh) * 2018-11-28 2021-07-23 株式会社自动网络技术研究所 监视装置、监视程序及监视方法
CN113168314A (zh) * 2018-12-04 2021-07-23 三菱电机株式会社 更新管理装置、更新管理***及更新管理方法
CN113168314B (zh) * 2018-12-04 2023-11-10 三菱电机株式会社 更新管理装置、更新管理***及更新管理方法
WO2020203023A1 (ja) * 2019-03-29 2020-10-08 マツダ株式会社 自動車用演算装置
JP2020164113A (ja) * 2019-03-29 2020-10-08 マツダ株式会社 自動車用演算装置
JP7238547B2 (ja) 2019-03-29 2023-03-14 マツダ株式会社 自動車用演算装置
US11458863B2 (en) * 2020-09-28 2022-10-04 Subaru Corporation Vehicle

Similar Documents

Publication Publication Date Title
JP6696468B2 (ja) 車載更新装置及び車載更新システム
WO2018043107A1 (ja) 車載更新装置及び車載更新システム
JP6665728B2 (ja) 車載更新装置、車載更新システム及び通信装置の更新方法
CN109643254B (zh) 车载更新***、车载更新装置及通信装置的更新方法
WO2018117016A1 (ja) 車載更新装置、更新システム及び可搬型通信器
US11354112B2 (en) On-board update device, update process method, and update process program
US20180373522A1 (en) In-vehicle updating device, updating system, and update processing program
EP3933576A1 (en) Server, managing method, non-transitory storage medium, software updating device, center, and over-the-air master
JP2019168977A (ja) プログラム更新システム、プログラム更新方法及びコンピュータプログラム
JP2014041456A (ja) 車載機器、携帯端末、情報管理装置、情報通信システム
US10625754B2 (en) Control apparatus, control method, and computer program
CN110753905B (zh) 控制装置、控制方法和计算机程序
JP2019191742A (ja) 車載更新装置、車載更新システム、更新処理方法及び更新処理プログラム
US20240069906A1 (en) Server, software update system, distribution method, and non-transitory storage medium
JP2014204315A (ja) 中継装置
US11449329B2 (en) Vehicle control device and program update system
JP2015041231A (ja) プログラム書換システム、制御装置、プログラム出力装置、蓄積装置、コネクタ、及びプログラム書換方法
JP2020021506A (ja) 電子制御装置及びセッション確立プログラム
JP6631676B2 (ja) 車載更新装置、更新システム及び更新処理プログラム
JP2019074847A (ja) 電子制御装置
KR20220139152A (ko) 차량의 업데이트 관리 장치, 그것의 동작 방법 및 차량
CN112363744A (zh) 一种行车记录仪固件升级方法、***及存储介质
JP2019192027A (ja) 車両用ソフトウェア配信システム、車両用ソフトウェア配信装置、配信指示装置、車載通信装置、車両用ソフトウェア配信方法及びコンピュータプログラム
KR20230025106A (ko) 차량의 업데이트 관리 장치 및 그 방법
JP2010097283A (ja) 制御装置及びコンピュータプログラム

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

Country of ref document: EP

Kind code of ref document: A1

122 Ep: pct application non-entry in european phase

Ref document number: 17846115

Country of ref document: EP

Kind code of ref document: A1