WO2018043381A1 - 車載更新システム、車載更新装置及び通信装置の更新方法 - Google Patents
車載更新システム、車載更新装置及び通信装置の更新方法 Download PDFInfo
- Publication number
- WO2018043381A1 WO2018043381A1 PCT/JP2017/030695 JP2017030695W WO2018043381A1 WO 2018043381 A1 WO2018043381 A1 WO 2018043381A1 JP 2017030695 W JP2017030695 W JP 2017030695W WO 2018043381 A1 WO2018043381 A1 WO 2018043381A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- update
- vehicle
- unit
- program
- information
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Ceased
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/60—Software deployment
- G06F8/65—Updates
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B60—VEHICLES IN GENERAL
- B60R—VEHICLES, VEHICLE FITTINGS, OR VEHICLE PARTS, NOT OTHERWISE PROVIDED FOR
- B60R16/00—Electric 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/02—Electric 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
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B60—VEHICLES IN GENERAL
- B60R—VEHICLES, VEHICLE FITTINGS, OR VEHICLE PARTS, NOT OTHERWISE PROVIDED FOR
- B60R16/00—Electric 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/02—Electric 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/023—Electric 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 for transmission of signals between vehicle parts or subsystems
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/60—Software deployment
- G06F8/65—Updates
- G06F8/654—Updates using techniques specially adapted for alterable solid state memories, e.g. for EEPROM or flash memories
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/445—Program loading or initiating
-
- G—PHYSICS
- G07—CHECKING-DEVICES
- G07C—TIME OR ATTENDANCE REGISTERS; REGISTERING OR INDICATING THE WORKING OF MACHINES; GENERATING RANDOM NUMBERS; VOTING OR LOTTERY APPARATUS; ARRANGEMENTS, SYSTEMS OR APPARATUS FOR CHECKING NOT PROVIDED FOR ELSEWHERE
- G07C5/00—Registering or indicating the working of vehicles
- G07C5/008—Registering or indicating the working of vehicles communicating information to a remotely located station
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/34—Network arrangements or protocols for supporting network services or applications involving the movement of software or configuration parameters
Definitions
- the present invention relates to an in-vehicle update system, an in-vehicle update device, and a communication device update method 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.
- an update control program for a control device to be updated means for calculating a digest value related to the update control program, means for determining whether or not the operation of the updated control device is normal, and a determination result
- the control device receives update data including a computer program that implements a means for responding to the program, updates the control program with the update control program included in the received update data, and executes the computer program to perform an operation after the update.
- a program update system capable of verifying the validity of program update by determining whether or not the program is normal.
- the present invention has been made in view of such circumstances, and an object of the present invention is to perform a renewal process of a communication device mounted on a vehicle while preventing a decrease in convenience of a user using the vehicle.
- the present invention provides an in-vehicle update system, an in-vehicle update device, and a communication device update method.
- An in-vehicle update system includes a communication device mounted on a vehicle, a server device provided outside the vehicle, and an update for performing processing for obtaining a program or data for updating the communication device from the server device.
- an in-vehicle update system comprising an in-vehicle update device that performs a process of updating data, wherein the in-vehicle update device is acquired by a travel information acquisition unit that acquires information related to travel of the vehicle and the travel information acquisition unit
- a travel information transmitter that transmits the information to the server device, and the server device receives the information related to the travel of the vehicle transmitted by the in-vehicle update device.
- a start instruction transmitting unit that transmits an instruction to start update processing to the in-vehicle update device based on timing, and the in-vehicle update device starts receiving an instruction to start update processing of the communication device from the server device
- the update information transmission unit further transmits an update program or data to the communication device according to the start instruction received by the start instruction reception unit.
- the on-board update system is based on a travel information storage unit in which the server device accumulates and stores information received by the travel information reception unit, and information stored in the travel information storage unit.
- a non-running time zone estimating unit that estimates a time zone during which the vehicle does not travel, and the update timing determining unit is a timing for performing update processing based on the time zone estimated by the non-running time zone estimating unit It is characterized by determining.
- the non-traveling time zone estimation unit extracts a time zone during which the vehicle has not traveled based on information for a predetermined number of days stored in the travel information storage unit.
- the longest time zone among the extracted time zones is estimated as the time zone during which the vehicle does not travel.
- the update timing determination unit is in a time range that is around the time required for the update process of the communication device from the central time point of the time zone estimated by the non-running time estimation unit.
- the timing for performing the update process is determined in step (b).
- the in-vehicle update device includes a battery information acquisition unit that acquires information related to a stored power amount of the battery of the vehicle, and a stored power amount of the battery acquired by the battery information acquisition unit. And an update availability determination unit that determines whether or not the communication device can be updated, and the update information transmission unit is configured so that the update availability determination unit performs the update process. When it is determined that the update is possible, an update program or data is transmitted to the communication device.
- the in-vehicle update device cannot perform an update process by the IG state acquisition unit that acquires the state of the IG (ignition) signal of the vehicle and the update availability determination unit.
- a selection receiving unit that receives a selection as to whether or not to allow the update processing of the communication device to be performed when the IG signal changes from an off state to an on state.
- the update information transmitting unit transmits an update program or data to the communication device when the selection receiving unit receives a selection permitting an update process to be performed.
- the in-vehicle update device includes an IG state acquisition unit that acquires a state of an IG (ignition) signal of the vehicle, and the update unit when the IG signal is in an on state. And an update interrupting unit for interrupting transmission of an update program or data by the information transmitting unit and returning the communication apparatus to the operation of the program or data before the update.
- IG state acquisition unit that acquires a state of an IG (ignition) signal of the vehicle
- the update unit when the IG signal is in an on state.
- an update interrupting unit for interrupting transmission of an update program or data by the information transmitting unit and returning the communication apparatus to the operation of the program or data before the update.
- the in-vehicle update device includes an update information acquisition unit that performs a process of acquiring a program or data for updating a communication device installed in a vehicle from a server device provided outside the vehicle, and the communication
- An update information transmitting unit that performs a process of transmitting an update program or data acquired by the update information acquisition unit to a device, and a process of updating the program or data stored in the storage unit of the communication device
- An in-vehicle update device that performs an update that determines a timing for performing update processing of the communication device based on a travel information acquisition unit that acquires information related to travel of the vehicle and information acquired by the travel information acquisition unit A timing determination unit, and the update information transmission unit transmits an update program or data according to the timing determined by the update timing determination unit. And transmitting to the location.
- the communication device update method acquires a program or data for updating a communication device mounted on a vehicle from a server device provided outside the vehicle, and the acquired program or data for update is acquired.
- the server device that has received the transmitted information determines a timing for performing the update processing of the communication device based on the received information, and the server device transmits an instruction to start the update processing based on the determined timing And receiving an update processing start instruction from the server device and transmitting an update program or data to the communication device in accordance with the received start instruction. And features.
- the in-vehicle update device performs the update processing of the program or data of the communication device 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 transmits the update program or data acquired from the server device to the update target communication device at a predetermined timing.
- the communication device that has received the update program or data from the in-vehicle update device updates the program or data by writing the received update program or data in its storage unit.
- the timing at which the in-vehicle update device acquires the update program or data from the server device may be different from the timing at which the in-vehicle update device transmits the update program or data to the communication device.
- the in-vehicle update device acquires and stores an update program or data from the server device while the vehicle is running, and stores the update program or data stored after the vehicle stops and the engine is stopped. Data can be transmitted to the communication device to be updated.
- the server device determines the timing at which the in-vehicle update device transmits an update program or data to the update target communication device, that is, the timing at which the communication device is updated.
- the in-vehicle update device performs processing for acquiring vehicle travel information and transmitting it to the server device.
- the server device determines the timing for performing the update process based on the travel information received from the in-vehicle update device, and transmits an instruction to start the update process to the in-vehicle update device.
- the in-vehicle update device receives a start instruction from the server device, starts transmission of an update program or data to the communication device according to the received start instruction, and starts update processing of the communication device.
- the server apparatus that has determined the timing for performing the update process transmits a start instruction to the in-vehicle update apparatus at the determined timing, and the in-vehicle update apparatus starts the update process of the communication apparatus immediately after receiving the start instruction or without delay. It can be.
- the server device that has determined the timing for performing the update process transmits, for example, a start instruction designating the time for performing the update process to the in-vehicle update device at a time before that time, and receives the start instruction.
- the update process may be started at a designated time.
- the server apparatus may transmit a start instruction specifying the timing for performing the update process together with the update program or data to the in-vehicle update apparatus.
- the in-vehicle update system determines an appropriate timing (for example, a time zone in which the vehicle is unlikely to travel) by which the server device accumulates the travel information of the vehicle and performs the update processing of the communication device.
- the start instruction is transmitted to the in-vehicle update device, and at this timing, the in-vehicle update device can perform the update process of the communication device.
- the server device accumulates and stores travel information received from the in-vehicle update device, and estimates a time zone during which the vehicle does not travel based on the accumulated travel information. For example, the server device extracts a time zone during which the vehicle has not traveled during this period, based on the accumulated travel information for a predetermined number of days (for example, one month). If there is only one extracted time zone, the server device can estimate this time zone as a time zone during which the vehicle does not travel. When the extracted time zone is divided into a plurality of times, the server device selects the longest time zone and uses this time zone as an estimation result of a time zone during which the vehicle does not travel.
- the server device calculates the central time point of the estimated time zone (that is, if the estimated time zone is a time zone from 1 am to 3 am, the central time point is 2 am)
- the timing for performing the update process is determined within a predetermined time range before and after the central time point.
- the predetermined time range can be a time required for the update process of the communication device, for example.
- the server device can transmit an update process start instruction to the in-vehicle update device so that the update process is performed in a time zone where the vehicle is unlikely to travel.
- the in-vehicle update device acquires information on the stored power amount of the vehicle battery, and determines whether or not the update process is possible according to the stored power amount of the battery before performing the update process.
- the in-vehicle update device determines whether or not the update process can be performed, for example, depending on whether or not the stored power amount of the battery exceeds a predetermined threshold value.
- the in-vehicle update device starts transmission of the update program or data to the communication device. Thereby, for example, it is possible to prevent the battery from running out during the update process.
- the in-vehicle updating device acquires the state of the IG (ignition) signal of the vehicle.
- the in-vehicle updating apparatus tries to perform the updating process that could not be performed when the IG signal changes from the off state to the on state after determining that the updating process is impossible according to the stored power amount of the battery.
- the IG signal changes to the on state
- the user may be trying to drive the vehicle, and if the update process is performed, the vehicle cannot be driven until the update process is completed.
- the in-vehicle update device starts update processing of the communication device when permission to perform update processing is obtained based on the received selection. Thereby, it can prevent that an update process interferes with the use of the vehicle by a user.
- the in-vehicle update device when the IG signal is in an on state when the timing for performing the update process of the communication device is reached, or when the IG signal is in an on state during the update process, the in-vehicle update device is Then, the transmission of the update program or data to the communication device is interrupted, and the communication device to be updated is returned to the operation by the program or data before the update.
- the user can use the vehicle even during the update process.
- the in-vehicle update device not the server device, performs processing such as storage of travel information and determination of timing for performing update processing based on travel information.
- 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 to do.
- 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, all the ECUs 2 can transmit / receive data to / from another ECU 2 or the display device 7.
- the wireless communication device 3 is connected to the gateway 10 via the communication line 1c, and the gateway 10 is installed outside the vehicle 1 via the wireless communication device 3. 9 can be communicated.
- 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, the display device 7, 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.
- the 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 the update necessary for the update from the server device 9 to the gateway 10 is performed.
- Data is acquired (downloaded).
- the gateway 10 that has completed the acquisition of the program and / or data necessary for the update has reached a predetermined update timing after the engine of the vehicle 1 is subsequently stopped (after the IG switch 4 is switched to the OFF state).
- the update process is performed by transmitting the program and / or data acquired from the server device 9 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.
- the gateway 10 collects information related to the travel of the vehicle 1 and periodically transmits the information to the server device 9.
- the travel information transmitted from the gateway 10 to the server device 9 includes, for example, the time when the engine of the vehicle 1 starts, the time when the engine stops, the time when the door lock of the vehicle 1 is operated, and the user sits on the seat inside the vehicle 1 Information such as the time when the seat belt was attached / detached, the time when the shift lever was operated, the time when the brake was operated, and the like can be included.
- the gateway 10 collects these pieces of information from the ECU 2 mounted on the vehicle 1 or other in-vehicle devices.
- the travel information includes information related to the start and stop times of the engine of the vehicle 1.
- the server device 9 receives the travel information transmitted from the vehicle 1 and accumulates the received travel information in the storage unit.
- the server device 9 performs processing for estimating a time zone in which there is a high possibility that the vehicle 1 will not travel based on the accumulated travel information.
- the time zone estimated by the server device 9 can be represented by a time interval indicated by a start time and an end time, for example, from 1:00 am to 5:00 am, and furthermore, every Sunday at 1 am Conditions such as day of the week or date may be added, such as from 1 am to 5 am or from 1 am to 5 am on the 10th of every month.
- the server device 9 performs estimation with reference to travel information for a predetermined period such as the past 30 days or one year.
- the server device 9 determines that one time point included in the estimated time zone is a timing for performing the update process of the ECU 2 of the vehicle 1.
- the update timing determined by the server device 9 in the present embodiment can be expressed as a time such as 3 am, for example.
- the server device 9 transmits an update process start instruction to the vehicle 1 when the determined update process timing is reached.
- the gateway 10 of the vehicle 1 that has received this start instruction performs an update process by transmitting an update program and / or data that has been acquired and stored in advance from the server device 9 to the ECU 2 to be updated.
- the server device 9 may transmit a start instruction designating this timing to the vehicle 1 before reaching the determined update processing timing.
- the gateway 10 of the vehicle 1 that has received this start instruction performs an update process for the ECU 2 to be updated when the timing designated by the received start instruction has been reached.
- 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, an update information writing processing unit 21b, an update processing unit 21c, and a return processing unit 21d.
- the update information receiving unit 21a to the return processing unit 21d are functional blocks for performing an update process of the program 22a stored in the storage unit 22.
- the update information receiving unit 21a to the return processing unit 21d are software functional blocks realized by the processing unit 21 executing a program (not shown) different from the program 22a to be updated. is there.
- the update information receiving unit 21a receives an update program transmitted from the gateway 10 via the communication line 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 information write processing unit 21 b performs a process of writing the update program stored in the update information receiving unit 21 a into an empty area of the storage unit 22.
- the update processing unit 21c invalidates the pre-update program stored in the storage unit 22 after the update information write processing unit 21b completes the writing of the update program, and newly writes the update program
- the program 22a is updated by enabling.
- the return processing unit 21d starts processing by the pre-update program stored in the storage unit 22, and in the state before the update processing is performed. Perform processing to return to operation.
- FIG. 3 is a schematic diagram for explaining an update process performed by the ECU 2.
- the storage unit 22 of the ECU 2 according to the present embodiment has a storage capacity sufficient to store at least two sets of programs 22a.
- the storage unit 22 includes a program 22 a and a free area 22 b having the same capacity as the program 22 a.
- the program 22a stored in the storage unit 22 is validated, and the processing unit 21 reads and executes the program 22a.
- the update information writing processing unit 21b receives the update program 22a in the free area 22b of the storage unit 22 without overwriting the program 22a before update.
- An update program 22a is stored.
- the update processing unit 21c invalidates the program 22a before update and newly stores the update program 22a.
- the update process is completed by enabling. Thereafter, the processing unit 21 of the ECU 2 reads and executes the validated update program 22a.
- the invalidated program 22a before update may be erased at some timing, for example, and remains in the storage unit 22 without being erased, for example, and is treated as a free area 22b in the next update process. Also good.
- the ECU 2 includes at least a storage unit that stores an area (first area) for storing the program 22a before update and an area (second area) for storing the program 22a for update. 22 is provided. That is, each ECU 2 has a storage area in which at least two sets of programs 22a can be stored.
- the ECU 2 that has received the update program 22a transmitted by the gateway 10 for the update process stores the received update program 22a in a region different from the region in which the program 22a before update is stored. That is, in the ECU 2, the update program 22 a is stored in the storage unit 22 without being overwritten with the program 22 a before being updated.
- the ECU 2 switches the program 22a executed by the processing unit 21 by invalidating the pre-update program 22a and validating the update program 22a after storing the update program 22a in the storage unit 22. . That is, the ECU 2 completes the update process by switching the program to be booted by the processing unit 21.
- FIG. 4 is a block diagram showing the configuration of the gateway 10.
- the gateway 10 includes a processing unit 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 information on the accumulated electric energy of the battery detected by the battery detection unit 6 are input to the processing unit 11.
- the IG signal and / or the stored power amount of the battery 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 a travel information acquisition unit 11a, a travel information transmission unit 11b, an update information acquisition unit 11c, a start instruction reception unit 11d,
- the IG state acquisition unit 11e, the battery information acquisition unit 11f, the update availability determination unit 11g, the update information transmission unit 11h, the selection reception unit 11i, the update interruption unit 11j, and the like are realized as software functional blocks.
- the traveling information acquisition unit 11a performs processing for acquiring information related to traveling of the vehicle 1 from information input directly to the gateway 10 and information received via the in-vehicle network.
- the travel information acquired by the travel information acquisition unit 11a in the present embodiment is information regarding the start and stop times of the engine of the vehicle 1.
- the travel information acquisition unit 11a can acquire information related to the start and stop times of the engine by acquiring the time when the on / off state of the IG signal input from the IG switch 4 is switched.
- the processing unit 11 is provided with a time measuring function.
- the time information included in a GPS (Global Positioning System) signal is used. It can also be used.
- the travel information acquisition unit 11a stores the time when the IG signal is switched from the off state to the on state as the time when the engine of the vehicle 1 starts, and the time when the IG signal switches from the on state to the off state as the time when the engine stops in the storage unit 12.
- the traveling information transmitting unit 11b performs processing for transmitting the traveling information acquired by the traveling information acquiring unit 11a to the server device 9 by the wireless communication device 3.
- the timing at which the travel information transmission unit 11b transmits the travel information may be a predetermined cycle, for example, every day or every week, or may be, for example, every time the travel information acquisition unit 11a acquires the travel information.
- the update information acquisition unit 11c 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 11c 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 11c acquires an update program for all the ECUs 2 that need to be updated.
- the start instruction receiving unit 11d performs a process of receiving, via the wireless communication device 3, an update process start instruction transmitted by the server device 9. If the server apparatus 9 is configured to transmit a start instruction at the timing when the update process is started, the gateway 10 may start the update process when the start instruction receiving unit 11d receives the start instruction. If the server apparatus 9 is configured to transmit a start instruction designating the timing before the start timing of the update process, the start instruction receiving unit 11d stores the timing of the update process designated by the received start instruction. 12 to store. In this case, when the update process timing stored in the storage unit 12 is reached, the gateway 10 starts the update process.
- the IG state acquisition unit 11e acquires an IG signal input from the IG switch 4 when the timing for starting the update process of the ECU 2 is reached and during the update process, and the IG switch 4 is turned on. / Processing to monitor changes in off state.
- the update process is basically performed when the vehicle 1 is not traveling, that is, when the IG switch 4 is in the off state. For this reason, even if it comes to the timing which starts an update process, if the IG switch 4 is an ON state, an update process will not be performed.
- the update process is also interrupted when the IG switch 4 changes from the off state to the on state during the update process.
- the battery information acquisition unit 11f is stored in the battery 5 of the vehicle 1 at that time by acquiring the stored electric energy input from the battery detection unit 6 when the timing for performing the update process of the ECU 2 is reached. Get the amount of power.
- the battery information acquisition unit 11 f simply acquires the detection result of the battery detection unit 6.
- the battery information acquisition unit 11f acquires the input information from the battery detection unit 6, and based on the acquired information. It is necessary to perform a process for calculating the amount of electric power stored in the battery 5.
- the update possibility determination unit 11g performs update processing using the update program acquired from the server device 9 according to a comparison result between the stored power amount of the battery 5 acquired by the battery information acquisition unit 11f and a predetermined threshold value. It is determined whether or not it is possible. For example, when it is determined that the update process may be performed if the stored power amount of the battery 5 is 95% or more, the update availability determination unit 11g has the stored power amount acquired by the battery information acquisition unit 11f of 95% or more. It can be determined whether or not update processing is possible depending on whether or not. When the update availability determination unit 11g determines that update processing is possible, the gateway 10 performs update processing. When it is determined that update processing is not possible, the gateway 10 does not perform update processing and waits for the next opportunity.
- the update information transmission unit 11h reads the update program acquired by the update information acquisition unit 11c from the server device 9 and stored in the storage unit 22, and the read update program is sent 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 11h may sequentially transmit the update programs in an appropriate order, and the plurality of update programs may be transmitted in parallel. May be sent to.
- the update program transmitted to the ECU 2 by the update information transmitting unit 11h is deleted from the storage unit 12 (however, it may be stored until another data needs to be written without being deleted). However, the update program that is determined not to be updated by the update availability determination unit 11g is stored in the storage unit 12, and waits for the next opportunity to perform the update process.
- the selection accepting unit 11i performs an update process that has not been performed when the update availability determination unit 11g determines that the update process is not possible and the update process is not performed, and then the IG switch 4 is switched from the off state to the on state. A process of accepting selection from the user as to whether or not to perform is performed. At this time, the selection receiving unit 11 i gives an instruction to display a message to the user on the display device 7 via the in-vehicle communication unit 13. The display device 7 that has received this instruction, for example, “The software could not be updated due to insufficient battery power. Would you like to update from now on? A message such as “The car cannot be driven” is displayed.
- the display device 7 accepts a selection operation as to whether or not to perform an update process by an operation unit such as a touch panel or a hardware key, and transmits the received operation content to the gateway 10.
- the selection receiving unit 11 i of the gateway 10 receives a selection as to whether or not to perform an update process based on information from the display device 7.
- the gateway 10 performs an update process for the ECU 2.
- the gateway 10 waits for the next opportunity without performing the update process.
- the update interruption unit 11j starts the update process at the timing of performing the update process, and the state of the IG switch 4 acquired by the IG state acquisition unit 11e is switched from the off state to the on state during the update process.
- the update process is interrupted.
- the update interruption unit 11j interrupts the transmission process of the update program to the ECU 2 by the update information transmission unit 11h, and interrupts the update process of the program 22a of the ECU 2.
- the update interruption unit 11j may notify the ECU 2 of interruption of the update process.
- the ECU 2 in which the update process is interrupted returns to the operation by the program 22a before the update by the return processing unit 21d.
- FIG. 5 is a block diagram showing the configuration of the server device 9.
- the server device 9 according to the present embodiment is a device that is operated and managed by a manufacturer or sales company of the vehicle 1, for example, and is installed at an appropriate location outside the vehicle 1.
- the server device 9 is a device that can communicate with a plurality of vehicles 1 and collect and manage information from each vehicle 1.
- the server device 9 includes a processing unit 91, a storage unit 92, a communication unit 93, and the like.
- the processing unit 91 is configured using an arithmetic processing device such as a CPU or an MPU, for example, and performs various arithmetic processes related to management of the vehicle 1 by reading and executing a server program stored in the storage unit 92.
- the processing unit 91 performs a process of distributing an update program for the ECU 2 mounted on the vehicle 1, a process of determining a timing for performing an update process using the update program, and the like.
- the storage unit 92 is configured using a large-capacity storage device such as a hard disk.
- the storage unit 92 stores a server program executed by the processing unit 91 and data necessary for the execution, and also stores data generated in the process of the processing unit 91.
- the storage unit 92 is provided with an update program DB (database) 92 a that stores an update program or data to be distributed to the vehicle 1.
- update program DB 92a various versions of programs for various ECUs 2 that can be mounted on a plurality of types of vehicles 1 are stored as update programs, and the server device 9 selects an appropriate one from these programs. And transmit to the vehicle 1.
- the storage unit 92 is provided with a vehicle information DB 92b that stores information on each vehicle 1.
- the vehicle information DB 92b stores, for example, information such as the vehicle type and model of the vehicle 1, the type of the mounted ECU 2, and the software version of each ECU 2.
- the server device 9 can determine whether or not the update process of the ECU 2 of each vehicle 1 is necessary based on the vehicle information DB 92b.
- the storage unit 92 is provided with a travel information DB 92c that stores travel information received from the gateway 10 of each vehicle 1.
- the communication unit 93 performs communication with the vehicle 1 through, for example, the Internet and a mobile phone communication network.
- the communication unit 93 transmits the message for transmission given from the processing unit 91 to the desired vehicle 1 and gives the message received from the vehicle 1 to the processing unit 91.
- the processing unit 91 executes the server program stored in the storage unit 92, whereby an update information transmission unit 91a, a travel information reception unit 91b, a non-traveling time zone estimation unit 91c, an update timing determination unit 91d, and The start instruction transmission unit 91e and the like are realized as software functional blocks.
- the update information transmission unit 91a receives an inquiry about whether or not there is an update from the gateway 10 of the vehicle 1, the update information transmission unit 91a acquires information about the vehicle 1 from the vehicle information DB 92b, and whether or not the program needs to be updated. The process which transmits the determination result to the vehicle 1 as an inquiry response is performed.
- the update information transmission unit 91 a is suitable for the requesting vehicle 1 from the update program stored in the update program DB 92 a of the storage unit 92. A thing is read out and transmitted to the requesting vehicle 1.
- the travel information receiving unit 91b performs a process of receiving travel information of the vehicle 1 transmitted from the gateway 10 of the vehicle 1 periodically or at an appropriate timing.
- the travel information receiving unit 91b receives the travel information from the vehicle 1, the travel information receiving unit 91b performs processing for storing the received travel information in the travel information DB 92c of the storage unit 92 in association with the identification information of the vehicle 1 or the like.
- the non-traveling time zone estimation unit 91c estimates a time zone in which the vehicle 1 is not likely to travel based on the travel information of each vehicle 1 transmitted from each vehicle 1 and accumulated in the travel information DB 92c of the storage unit 92. Perform the process.
- the update timing determination unit 91d performs a process of determining a predetermined timing included in the time zone estimated by the non-traveling time zone estimation unit 91c as a timing for performing the update process of the vehicle 1.
- the start instruction transmission unit 91e performs a process of transmitting an update process start instruction to the vehicle 1 based on the update timing determined by the update timing determination unit 91d.
- the start instruction transmission unit 91e may be configured to transmit a start instruction to the vehicle 1 when the timing determined by the update timing determination unit 91d is reached. In this case, the start instruction transmission unit 91e is updated by the vehicle 1 that has received the start instruction. Processing begins.
- the start instruction transmission unit 91e may be configured to transmit a start instruction specifying the update timing to the vehicle 1 before reaching the timing determined by the update timing determination unit 91d. In this case, the vehicle that has received the start instruction In 1, the update process is not started immediately.
- the gateway 10 of the vehicle 1 starts the update process of the vehicle 1 when the update timing designated by the start instruction is reached.
- FIG. 6 is a schematic diagram for explaining the non-running time zone estimation process and the update timing determination process performed by the server device 9.
- examples of travel information for three days of the vehicle 1 accumulated in the travel information DB 92c of the storage unit 92 of the server device 9 are shown side by side.
- Each travel information indicates the period during which the vehicle 1 traveled (the IG switch 4 was on) from 0 o'clock to 24 o'clock on each day as a horizontally long rectangle labeled “travel”.
- a period during which the IG switch 4 is not turned on is indicated by a horizontal solid line.
- a non-traveling time zone is estimated from travel information for three days is shown. However, actually, for example, more travel information such as one month or six months is obtained. May be used to perform the estimation process.
- the non-traveling time zone estimation unit 91c of the server device 9 extracts a time zone in which the vehicle 1 is not traveling at all from the traveling information for three days.
- two time zones a time zone near the center of the day and a time zone spanning the first part of the day and the first part of the next day, are extracted as non-running time zones. If there is one extracted time zone, the non-running time zone estimation unit 91c may set the extracted time zone as the non-running time zone.
- the non-running time zone estimation unit 91c selects one of these time zones having the longest time and sets the selected one time zone as the non-running time zone. .
- the time zone near the center of the day is used as the estimation result of the non-traveling time zone.
- the update timing determination unit 91d performs a process of estimating the time T required for the update process in the vehicle 1.
- the time T required for the update process can be estimated based on the data size of the update program, for example.
- the start instruction transmission unit 91e of the server device 9 transmits an update start instruction to the vehicle 1 when the update start time t3 determined by the update timing determination unit 91d is reached, or the update timing determination unit 91d determines the update timing.
- An update start instruction designating the update start time t3 is transmitted to the vehicle 1 after the determination and until the update start time 100 million t3.
- FIG. 7 is a flowchart showing a processing procedure of travel information collection and transmission performed by the gateway 10.
- this flowchart has shown the process as the initial state when the IG switch 4 of the vehicle 1 is in the on state.
- the travel information acquisition unit 11a of the processing unit 11 of the gateway 10 acquires the IG signal input from the IG switch 4, and determines whether or not the IG signal has been switched from the on state to the off state (step S1).
- the travel information acquisition unit 11a waits until the IG signal is switched to the off state.
- the travel information acquisition unit 11a acquires the time when the IG signal is switched, and stores this switching time as travel information in the storage unit 12. (Step S2).
- the travel information acquisition unit 11a determines whether or not the IG signal has been switched from the off state to the on state (step S3).
- the traveling information acquisition unit 11a waits until the IG signal is switched to the on state.
- the travel information acquisition unit 11a acquires the time when the IG signal is switched, and stores this switching time as travel information in the storage unit 12. (Step S4).
- the travel information transmission unit 11b transmits the travel information stored in the storage unit 12 to the server device 9 by the wireless communication device 3 (step S5), and returns the process to step S1.
- the travel information is transmitted to the server device 9 when the IG switch 4 is switched to the ON state.
- the travel information is transmitted at a different timing. Also good.
- FIG. 8 is a flowchart showing the procedure of the update program acquisition process performed by the gateway 10.
- the update information acquisition unit 11c of the processing unit 11 of the gateway 10 acquires the IG signal input from the IG switch 4, and determines whether or not the IG signal has been switched from the off state to the on state (step S11).
- the update information acquisition unit 11c waits until the IG signal is switched to the on state.
- the update information acquisition unit 11c performs wireless communication via the wireless communication device 3, and updates the program of the ECU 2 mounted on the vehicle 1 to the server device 9.
- An inquiry is made as to whether or not there is an update (step S12).
- the update information acquisition unit 11c receives a response transmitted from the server device 9 in response to the inquiry via the wireless communication device 3 (step S13). In addition to the presence / absence of the update, this response includes information related to the program that needs to be updated, for example, information such as program identification information and data amount. Based on the response from the server device 9, the update information acquisition unit 11c determines whether the program of the ECU 2 mounted on the vehicle 1 has been updated (step S14). If there is no update (S14: NO), the update information acquisition unit 11c returns the process to step S11. When there is an update (S14: YES), the update information acquisition unit 11c requests the server device 9 to transmit the update program (step S15). The update information acquisition unit 11c receives the update program transmitted from the server device 9 in response to the request via the wireless communication device 3 (step S16), and stores the received update program in the storage unit 12. (Step S17), the process returns to Step S11.
- FIG. 9 and FIG. 10 are flowcharts showing the procedure of update processing performed by the gateway 10.
- the start instruction receiving unit 11d of the processing unit 11 of the gateway 10 determines whether or not the wireless communication device 3 has received the update processing start instruction transmitted from the server device 9 (step S21). When the update process start instruction has not been received (S21: NO), the start instruction receiving unit 11d waits until a start instruction from the server device 9 is received.
- the update process start instruction is received (S21: YES)
- the IG state acquisition unit 11e of the processing unit 11 acquires the IG signal input from the IG switch 4, and whether or not the IG signal is in the off state. Is determined (step S22).
- the IG state acquisition unit 11e returns the process to step S21. At this time, the gateway 10 may notify the server device 9 that the update process could not be performed.
- the battery information acquisition unit 11f of the processing unit 11 acquires the stored power amount of the battery 5 input from the battery detection unit 6 (step S23).
- the update availability determination unit 11g of the processing unit 11 determines whether or not the update process can be performed based on whether or not the stored power amount of the battery 5 acquired in step S23 exceeds a predetermined threshold ( Step S24).
- the process part 11 notifies that update process is performed with respect to ECU2 which performs update process in the vehicle interior communication part 13 (step S25).
- the IG state acquisition unit 11e of the processing unit 11 acquires the IG signal input from the IG switch 4, and determines whether or not the IG signal is on (step S22).
- the update information transmitting unit 11h of the processing unit 11 reads the update program stored in the storage unit 12 and transmits it to the ECU 2 to be updated (step S27). ).
- the update information transmitting unit 11h divides the update program stored in the storage unit 12 into a predetermined data size, and sequentially transmits the divided update program to the ECU 2.
- the update information transmission unit 11h determines whether or not the update process of the ECU 2 has been completed by checking whether or not the transmission of the update program stored in the storage unit 12 to the ECU 2 has been completed (step S1). S29). When the update process has not been completed (S29: NO), the processing unit 11 returns the process to step S26.
- step S26 when the IG signal is on (S26: YES), the update interruption unit 11j of the processing unit 11 interrupts transmission of the update program by the update information transmission unit 11h, and interrupts the update process.
- a process for notifying the ECU 2 of the fact is performed (step S28).
- the update interrupting unit 11j resends a notification to the effect that the update process is performed to the ECU 2 that interrupted the update process, and returns the process to step S26.
- the processing unit 11 continuously transmits the update program to the ECU 2 while transmitting the update program to the ECU 2 and interrupting the transmission as necessary.
- the processing unit 11 deletes the updated update program from the storage unit 12 (step S30).
- the processing unit 11 notifies the server device 9 of the completion of update in the wireless communication device 3 (step S31), and returns the processing to step S21.
- the IG state acquisition unit 11e of the processing unit 11 receives the IG input from the IG switch 4. A signal is acquired and it is determined whether or not the IG signal is on (step S32). When the IG signal is not on (S32: NO), the processing unit 11 stands by until the IG signal is turned on. When the IG signal is in the on state (S32: YES), the selection receiving unit 11i of the processing unit 11 transmits the message display command to the display device 7 in the in-vehicle communication unit 13 to perform the update process. A message for prompting selection is displayed on the display device 7 (step S33). The selection receiving unit 11i receives an operation content for the operation unit of the display device 7 from the display device 7, thereby receiving a selection operation as to whether or not to perform the update process (step S34).
- the processing unit 11 determines whether or not the update process is permitted based on the selection received by the selection receiving unit 11i (step S35).
- the update information transmitting unit 11h of the processing unit 11 reads the update program stored in the storage unit 12 and transmits it to the ECU 2 to be updated (step S36). ).
- the update information transmission unit 11h determines whether or not the update process of the ECU 2 has been completed by checking whether or not the transmission of the update program stored in the storage unit 12 to the ECU 2 has been completed (step S1). S37). When the update process has not been completed (S37: NO), the processing unit 11 returns the process to step S36.
- the processing unit 11 deletes the updated update program from the storage unit 12 (step S38).
- the processing unit 11 notifies the server device 9 of the completion of update in the wireless communication device 3 (step S39), and returns the processing to step S21.
- step S35 If the update process is not permitted (S35: NO), the processing unit 11 transmits a notification that the update process is not completed to the server apparatus 9 by the wireless communication apparatus 3 (step S40). The process returns to step S21.
- FIGS. 11 and 12 are flowcharts showing a procedure of processing performed by the server device 9.
- the server device 9 individually performs the processing shown in the flowchart of this figure for each vehicle 1 to be managed.
- the travel information receiving unit 91b of the processing unit 91 of the server device 9 determines whether or not the travel information transmitted from the vehicle 1 has been received (step S51). When the traveling information is not received (S51: NO), the traveling information receiving unit 91b advances the process to step S53. When the travel information is received (S51: YES), the travel information receiving unit 91b stores the received travel information in the travel information DB 92c of the storage unit 92 (step S52), and the process proceeds to step S53.
- the processing unit 91 determines whether or not an inquiry about whether or not the program of the ECU 2 has been updated has been received from the vehicle 1 (step S53). When the inquiry has not been received (S53: NO), the processing unit 91 advances the process to step S56. When the inquiry is received (S53: YES), the processing unit 91 refers to the vehicle information DB 92b in the storage unit 92 to investigate whether or not the program of the ECU 2 of the vehicle 1 related to the inquiry is updated (step) S54). The processing unit 91 transmits the presence / absence of the update obtained as a result of the survey to the inquiry source vehicle 1 as a response (step S55), and proceeds to step S56.
- the processing unit 91 determines whether or not a transmission request for an update program has been received from the vehicle 1 (step S56). When the transmission request has not been received (S56: NO), the processing unit 91 returns the process to step S51. When the transmission request is received (S56: YES), the update information transmission unit 91a of the processing unit 91 stores an update program to be updated by the ECU 2 of the requesting vehicle 1 in the storage unit 92. Are transmitted to the requesting vehicle 1 (step S57).
- the non-running time zone estimation unit 91c of the processing unit 91 sets a non-running time zone (a time zone in which there is a high possibility of not running) for the vehicle 1 that has transmitted the update program based on the running information stored in the running information DB 92c.
- An estimation process is performed (step S58).
- the update timing determination unit 91d of the processing unit 91 determines the timing for performing the update process based on the non-running time zone estimated by the non-running time zone estimation unit 91c (step S59).
- the processing unit 91 determines whether or not the determined update timing has been reached by comparing the time measured by the time counting function of the processing unit 91 with the time determined as the update timing in step S59 (step S59). S60). When the update timing has not been reached (S60: NO), the processing unit 91 waits until the update timing is reached. When the update timing is reached (S60: YES), the start instruction transmission unit 91e of the processing unit 91 transmits a start instruction to the vehicle 1 that has transmitted the update program (step S61).
- the processing unit 91 determines whether or not the update process is completed depending on whether or not a notification of the update process completion is received from the vehicle 1 (step S62).
- the processing unit 91 waits until the update process is completed.
- the processing unit 91 updates the vehicle information DB 92b of the storage unit 92 in order to record the completion of the program update (step S63), and returns the process to step S51.
- the processing unit 91 returns the process to step S58 to estimate the non-traveling time zone and update timing. The same process may be performed by newly making a determination.
- FIG. 13 is a flowchart showing a procedure of update processing performed by the ECU 2.
- the processing unit 21 of the ECU 2 determines whether or not a notification to update the program 22a stored in the storage unit 22 has been received from the gateway 10 (step S71).
- the processing unit 21 stands by until a notification indicating that the update processing is performed is received.
- S (71: YES) is received, the processing unit 21 stops normal processing by the program 22a stored in the storage unit 22 (step S72) and updates from the normal operation mode. Switch to processing mode.
- the update information receiving unit 21a of the processing unit 21 determines whether an update program (update program divided into a predetermined data size) transmitted from the gateway 10 has been received (step S73).
- the update program is received (S73: YES)
- the update information writing processing unit 21b of the processing unit 21 writes the received update program into the empty area 22b of the storage unit 22 (step S75).
- the processing unit 21 determines whether or not the update program to be received from the gateway 10 has been received and the writing has been completed (step S76). When writing of all the update programs has not been completed (S76: NO), the processing unit 21 returns the process to step S73.
- step S76 When all writing of the update program is completed (S76: YES), the update processing unit 21c of the processing unit 21 invalidates the program 22a before update stored in the storage unit 22 and newly stores the update program.
- the program 22a executed by the processing unit 21 is switched (step S77), and the process returns to step S71. Thereby, ECU2 switches from the mode which performs an update process to the normal operation mode by the updated program 22a.
- the processing unit 21 determines whether or not a notification to interrupt the update process has been received from the gateway 10 (step S74). When the interruption notification has not been received (S74: NO), the processing unit 21 returns the process to step S73, and waits until the update program or the update processing interruption notification is received from the gateway 10. When a notification to interrupt the update process is received (S74: YES), the return processing unit 21d of the processing unit 21 interrupts the reception and writing of the update program, and before the update stored in the storage unit 22 The process of returning to the operation by the program 22a is performed (step S78), and the process returns to step S71. Thereby, ECU2 switches from the mode which performs an update process to the normal operation mode by the program 22a before update.
- the gateway 10 performs the update process of the program 22a stored in the storage unit 22 of the ECU 2 mounted on the vehicle 1.
- the gateway 10 acquires an update program from the server device 9 installed outside the vehicle 1.
- the gateway 10 acquires an update program for each ECU 2.
- a plurality of ECUs 2 may be updated by using one update program.
- the gateway 10 transmits the update program acquired from the server device at a predetermined timing to the ECU 2 to be updated.
- the ECU 2 that has received the update program from the gateway 10 updates the program 22 a by writing the received update program to the storage unit 12.
- the timing at which the gateway 10 acquires the update program from the server device 9 and the timing at which the gateway 10 transmits the update program to the ECU 2 may be different.
- the gateway 10 acquires the update program from the server device 9 while the vehicle 1 is traveling, stores the update program in the storage unit 12, and stores the update program stored after the vehicle 1 stops and the engine stops.
- the program can be transmitted to the ECU 2 to be updated.
- the server device 9 determines the timing at which the gateway 10 transmits the update program to the ECU 2 to be updated, that is, the timing at which the ECU 2 is updated.
- the gateway 10 performs processing for acquiring travel information of the vehicle 1 and transmitting it to the server device 9.
- the server device 9 determines the timing for performing the update process, and transmits an update process start instruction to the gateway 10.
- the gateway 10 receives the start instruction from the server device 9, starts transmission of the update program to the ECU 2 in response to the received start instruction, and starts the update process of the ECU 2.
- the server device 9 that has determined the timing for performing the update process transmits a start instruction to the gateway 10 at the determined timing, and the gateway 10 starts the update process of the ECU 2 immediately after receiving the start instruction or without delay. can do.
- the server device 9 that has determined the timing for performing the update process transmits, for example, a start instruction designating the time for performing the update process to the gateway 10 at a time earlier than that time, and receives the start instruction.
- the update process may be started at a designated time. In this case, when transmitting the update program, the server device 9 may transmit to the gateway 10 a start instruction specifying the timing for performing the update process together with the update program.
- the server device 9 accumulates the travel information of the vehicle 1 and the appropriate timing for performing the update process of the ECU 2 (for example, the time zone when the vehicle 1 is highly likely not to travel). Is transmitted to the gateway 10 and the gateway 10 can update the ECU 2 at this timing. By determining the timing for performing the update process of the ECU 2 based on the travel information of the vehicle 1, it is possible to prevent the user from using the vehicle 1 from being deteriorated due to the update process.
- the server device 9 accumulates and stores the information received from the gateway 10 in the travel information DB 92c of the storage unit 92, and estimates a time zone during which the vehicle 1 does not travel based on the accumulated travel information. To do. For example, the server device 9 extracts a time zone during which the vehicle 1 has not traveled during this period, based on the accumulated travel information for a predetermined number of days (for example, one month). If there is one extracted time zone, the server device 9 can estimate this time zone as a time zone during which the vehicle 1 does not travel. When there are a plurality of extracted time zones, the server device 9 selects the longest time zone, and uses this time zone as an estimation result of a time zone during which the vehicle 1 does not travel.
- the server device 9 calculates the central time point of the estimated time zone, and determines the timing for performing the update process within a predetermined time range before and after the central time point.
- the predetermined time range can be a time required for the update process of the ECU 2, for example.
- the server device 9 can transmit an update process start instruction to the gateway 10 so as to perform the update process in a time zone in which the vehicle 1 is unlikely to travel.
- whether or not the gateway 10 acquires information on the stored power amount of the battery 5 of the vehicle 1 and can perform the update process according to the stored power amount of the battery 5 before performing the update process. Determine. For example, the gateway 10 determines whether or not the update process can be performed according to whether or not the stored power amount of the battery 5 exceeds a predetermined threshold value. When it is determined that the update process is possible based on the amount, transmission of the update program to the ECU 2 is started. Thereby, for example, it is possible to prevent the battery from running out during the update process.
- the gateway 10 acquires the state of the IG signal output from the IG switch of the vehicle 1. After determining that the update process is not possible according to the stored power amount of the battery 5, the gateway 10 tries the update process that could not be performed when the IG signal changes from the off state to the on state. However, when the IG signal changes to the on state, the user may be trying to drive the vehicle 1, and if the update process is performed, the vehicle 1 cannot be driven until the update process is completed. 10 inquires of the user whether or not to permit the update process and accepts the selection of whether or not to permit the update process. The gateway 10 starts the update process of the ECU 2 when permission to perform the update process is obtained based on the received selection. Thereby, it can prevent that an update process obstructs use of the vehicle 1 by a user.
- the gateway 10 when the IG signal is in an on state when the timing for performing the update process of the ECU 2 is reached, or when the IG signal is in an on state during the update process, the gateway 10 Then, the transmission of the update program to the ECU 2 is interrupted, and the ECU 2 to be updated is returned to the operation by the program 22a before the update. Thus, the user can use the vehicle 1 even during the update process.
- 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 is updated on-board.
- the gateway 10 is configured to function as a device, it is not limited to this.
- An in-vehicle device other than the gateway 10, for example, any one of the ECUs 2 may perform a process as an in-vehicle update device.
- the update program is acquired from the server device 9 outside the vehicle by wireless communication, the present invention is not limited to this.
- 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.
- the server device that performs the process of transmitting the update program to the gateway 10 and the server device that accumulates the travel information of the vehicle 1 and determines the timing of the update process based on the travel information are different server devices. Also good. Further, the estimation of the non-running time zone and the determination of the update timing shown in FIG. 6 are examples, and the present invention is not limited to this.
- the server device 9 may use the time t2 or t0 in FIG. 6 as the update timing.
- FIG. 14 is a block diagram showing a configuration of the gateway 110 according to the modification.
- the in-vehicle update system according to the modification has a configuration in which the gateway 110 mounted on the vehicle 1 performs accumulation of travel information, determination of update processing timing, and the like.
- the determination unit 111l is provided in the processing unit 111.
- the storage unit 112 of the gateway 110 according to the modified example is provided with a travel information DB 112a.
- the gateway 110 stores and accumulates the travel information acquired by the travel information acquisition unit 11a in the travel information DB 112a provided in the storage unit 12.
- the non-traveling time zone estimation unit 111k performs processing for estimating a time zone in which the vehicle 1 is unlikely to travel based on the travel information of each vehicle 1 accumulated in the travel information DB 112a.
- the update timing determination unit 111l performs a process of determining a predetermined timing included in the time zone estimated by the non-traveling time zone estimation unit 111k as a timing for performing the update process of the vehicle 1.
- the gateway 110 starts transmitting the update program acquired from the server device 9 to the ECU 2 and starts the update process.
- the in-vehicle update system is a configuration in which the gateway 110, not the server device 9, performs processing such as storage of travel information and determination of update processing timing based on the travel information. Thereby, even if it is a bridge in which the gateway 110 cannot communicate with the server apparatus 9 frequently, the timing which performs an update process can be determined appropriately.
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Security & Cryptography (AREA)
- Mechanical Engineering (AREA)
- Quality & Reliability (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Stored Programmes (AREA)
- Information Transfer Between Computers (AREA)
Priority Applications (3)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| DE112017004415.4T DE112017004415T5 (de) | 2016-09-02 | 2017-08-28 | Bordeigenes Aktualisierungssystem, bordeigene Aktualisierungsvorrichtung und Kommunikationsvorrichtungs-Aktualisierungsverfahren |
| US16/329,425 US20190250902A1 (en) | 2016-09-02 | 2017-08-28 | On-board update system, on-board update device, and communication device update method |
| CN201780052408.5A CN109643254B (zh) | 2016-09-02 | 2017-08-28 | 车载更新系统、车载更新装置及通信装置的更新方法 |
Applications Claiming Priority (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2016-172063 | 2016-09-02 | ||
| JP2016172063A JP6658409B2 (ja) | 2016-09-02 | 2016-09-02 | 車載更新システム、車載更新装置及び通信装置の更新方法 |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| WO2018043381A1 true WO2018043381A1 (ja) | 2018-03-08 |
Family
ID=61301009
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| PCT/JP2017/030695 Ceased WO2018043381A1 (ja) | 2016-09-02 | 2017-08-28 | 車載更新システム、車載更新装置及び通信装置の更新方法 |
Country Status (5)
| Country | Link |
|---|---|
| US (1) | US20190250902A1 (enExample) |
| JP (1) | JP6658409B2 (enExample) |
| CN (1) | CN109643254B (enExample) |
| DE (1) | DE112017004415T5 (enExample) |
| WO (1) | WO2018043381A1 (enExample) |
Cited By (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| WO2018187860A1 (en) * | 2017-04-13 | 2018-10-18 | Blackberry Limited | Program release packages including program updates |
Families Citing this family (32)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP6971189B2 (ja) * | 2018-03-30 | 2021-11-24 | フォルシアクラリオン・エレクトロニクス株式会社 | 車載装置、配信方法 |
| JP6992667B2 (ja) * | 2018-04-20 | 2022-01-13 | 株式会社オートネットワーク技術研究所 | 車載更新装置、車載更新システム、更新処理方法及び更新処理プログラム |
| JP7354631B2 (ja) * | 2018-08-10 | 2023-10-03 | 株式会社デンソー | 電子制御装置、車両用電子制御システム、差分データの整合性判定方法及び差分データの整合性判定プログラム |
| WO2020032202A1 (ja) * | 2018-08-10 | 2020-02-13 | 株式会社デンソー | センター装置 |
| JP7031643B2 (ja) * | 2018-08-10 | 2022-03-08 | 株式会社デンソー | 車両情報通信システム |
| JP6628375B1 (ja) * | 2018-09-06 | 2020-01-08 | みこらった株式会社 | 自動運転車及び自動運転車用プログラム |
| JP6742381B2 (ja) * | 2018-10-15 | 2020-08-19 | 本田技研工業株式会社 | 車両制御装置、車両制御方法、およびプログラム |
| JP6773099B2 (ja) | 2018-10-30 | 2020-10-21 | トヨタ自動車株式会社 | 制御装置 |
| JP7124660B2 (ja) * | 2018-11-15 | 2022-08-24 | 株式会社デンソー | 車載システム |
| JP6943903B2 (ja) | 2019-02-22 | 2021-10-06 | 本田技研工業株式会社 | ソフトウェア更新装置、車両及びソフトウェア更新方法 |
| CN113490910B (zh) * | 2019-02-22 | 2022-09-20 | 本田技研工业株式会社 | 软件更新装置、车辆和软件更新方法 |
| JP7212736B2 (ja) * | 2019-02-22 | 2023-01-25 | 本田技研工業株式会社 | ソフトウェア更新装置、車両及びソフトウェア更新方法 |
| US11561789B2 (en) | 2019-02-22 | 2023-01-24 | Honda Motor Co., Ltd. | Software update device, vehicle, and software update method |
| JP7108579B2 (ja) * | 2019-06-03 | 2022-07-28 | 本田技研工業株式会社 | 管理装置、管理方法、およびプログラム |
| JP2021005832A (ja) * | 2019-06-27 | 2021-01-14 | 矢崎総業株式会社 | 車両通信システム |
| KR20210014254A (ko) * | 2019-07-29 | 2021-02-09 | 현대자동차주식회사 | 차량의 셧오프를 자동 제어하는 차량 시스템 및 그 방법 |
| US20220283798A1 (en) * | 2019-08-06 | 2022-09-08 | Nec Corporation | Mobility control system, method, and program |
| JP7502014B2 (ja) * | 2019-10-31 | 2024-06-18 | トヨタ自動車株式会社 | 車両用制御装置、プログラム更新方法、及びプログラム更新システム |
| EP3819725A1 (de) | 2019-11-06 | 2021-05-12 | Siemens Aktiengesellschaft | System und verfahren zur administration von antriebskomponenten |
| JP7248297B2 (ja) * | 2019-11-28 | 2023-03-30 | みこらった株式会社 | 自動運転車及び自動運転車用プログラム |
| JP7132904B2 (ja) * | 2019-12-19 | 2022-09-07 | 本田技研工業株式会社 | プログラム更新方法 |
| EP4122775B1 (en) * | 2020-03-18 | 2024-11-20 | Nissan Motor Co., Ltd. | Software update device, software update method, and software update processing program |
| WO2021186204A1 (ja) * | 2020-03-18 | 2021-09-23 | 日産自動車株式会社 | ソフトウェア更新装置、ソフトウェアの更新方法及びソフトウェア更新処理プログラム |
| JP7396216B2 (ja) * | 2020-06-26 | 2023-12-12 | トヨタ自動車株式会社 | サーバ、更新管理方法、更新管理プログラム及びソフトウェア更新装置 |
| CN112035140B (zh) * | 2020-08-26 | 2022-02-01 | 安徽江淮汽车集团股份有限公司 | 智能泊车场景的系统升级方法、装置、设备及存储介质 |
| JP7257375B2 (ja) * | 2020-12-22 | 2023-04-13 | 本田技研工業株式会社 | 制御システム、移動体、制御方法及びプログラム |
| JP7194761B2 (ja) * | 2021-01-13 | 2022-12-22 | 本田技研工業株式会社 | 制御システム、移動体、制御方法、及びプログラム |
| JP7434205B2 (ja) * | 2021-03-26 | 2024-02-20 | 本田技研工業株式会社 | プログラム更新管理システム、移動体故障診断装置、プログラム更新管理方法 |
| CN118119920A (zh) * | 2021-10-20 | 2024-05-31 | 株式会社小糸制作所 | 车辆系统 |
| JP7779112B2 (ja) * | 2021-12-01 | 2025-12-03 | 株式会社アイシン | 車両用プログラム書換システムおよびシフト装置 |
| US20240101161A1 (en) * | 2022-02-07 | 2024-03-28 | Nuro, Inc. | Methods and apparatus for state-based attack detection |
| DE102022205889A1 (de) | 2022-06-10 | 2023-12-21 | Volkswagen Aktiengesellschaft | Vorrichtung zum Aktualisieren einer elektronischen Rechnereinheit eines Kraftfahrzeuges, System, Kraftfahrzeug und Verfahren zum Aktualisieren einer elektronischen Rechnereinheit |
Citations (6)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2005132131A (ja) * | 2003-10-28 | 2005-05-26 | Fujitsu Ten Ltd | ソフトウェア更新装置およびソフトウェア更新方法 |
| JP2007034815A (ja) * | 2005-07-28 | 2007-02-08 | Toyota Infotechnology Center Co Ltd | 車載端末 |
| JP2010258990A (ja) * | 2009-04-28 | 2010-11-11 | Autonetworks Technologies Ltd | 制御システム及び制御プログラム更新方法 |
| JP2011053954A (ja) * | 2009-09-02 | 2011-03-17 | Toyota Motor Corp | ソフトウェア更新装置 |
| JP2012014253A (ja) * | 2010-06-29 | 2012-01-19 | Toyota Motor Corp | 制御装置 |
| WO2015194406A1 (ja) * | 2014-06-18 | 2015-12-23 | 日立オートモティブシステムズ株式会社 | 車載プログラム書込み装置 |
Family Cites Families (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP6056424B2 (ja) * | 2012-11-29 | 2017-01-11 | 株式会社デンソー | 車載プログラム更新装置 |
| JP5949732B2 (ja) * | 2013-11-27 | 2016-07-13 | 株式会社オートネットワーク技術研究所 | プログラム更新システム及びプログラム更新方法 |
-
2016
- 2016-09-02 JP JP2016172063A patent/JP6658409B2/ja active Active
-
2017
- 2017-08-28 CN CN201780052408.5A patent/CN109643254B/zh active Active
- 2017-08-28 DE DE112017004415.4T patent/DE112017004415T5/de active Pending
- 2017-08-28 WO PCT/JP2017/030695 patent/WO2018043381A1/ja not_active Ceased
- 2017-08-28 US US16/329,425 patent/US20190250902A1/en not_active Abandoned
Patent Citations (6)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2005132131A (ja) * | 2003-10-28 | 2005-05-26 | Fujitsu Ten Ltd | ソフトウェア更新装置およびソフトウェア更新方法 |
| JP2007034815A (ja) * | 2005-07-28 | 2007-02-08 | Toyota Infotechnology Center Co Ltd | 車載端末 |
| JP2010258990A (ja) * | 2009-04-28 | 2010-11-11 | Autonetworks Technologies Ltd | 制御システム及び制御プログラム更新方法 |
| JP2011053954A (ja) * | 2009-09-02 | 2011-03-17 | Toyota Motor Corp | ソフトウェア更新装置 |
| JP2012014253A (ja) * | 2010-06-29 | 2012-01-19 | Toyota Motor Corp | 制御装置 |
| WO2015194406A1 (ja) * | 2014-06-18 | 2015-12-23 | 日立オートモティブシステムズ株式会社 | 車載プログラム書込み装置 |
Cited By (2)
| 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 |
Also Published As
| Publication number | Publication date |
|---|---|
| DE112017004415T5 (de) | 2019-06-19 |
| CN109643254B (zh) | 2022-05-17 |
| JP2018037022A (ja) | 2018-03-08 |
| US20190250902A1 (en) | 2019-08-15 |
| JP6658409B2 (ja) | 2020-03-04 |
| CN109643254A (zh) | 2019-04-16 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| JP6658409B2 (ja) | 車載更新システム、車載更新装置及び通信装置の更新方法 | |
| JP6696468B2 (ja) | 車載更新装置及び車載更新システム | |
| US10929120B2 (en) | Vehicle-mounted device validity determination system and information collecting device | |
| JP6696417B2 (ja) | 車載更新装置、更新システム及び可搬型通信器 | |
| JP6665728B2 (ja) | 車載更新装置、車載更新システム及び通信装置の更新方法 | |
| CN108701065B (zh) | 控制设备、程序更新方法和计算机程序 | |
| JP6314775B2 (ja) | 通信システム、車載装置、通信装置、及びコンピュータプログラム | |
| JP6992667B2 (ja) | 車載更新装置、車載更新システム、更新処理方法及び更新処理プログラム | |
| JP6702269B2 (ja) | 制御装置、制御方法、およびコンピュータプログラム | |
| JP2018060323A (ja) | 車載更新システム、車載更新装置、車載機器及び更新方法 | |
| JP2017123012A (ja) | 車載更新装置、更新システム及び更新処理プログラム | |
| JP6717241B2 (ja) | 車両消耗品管理システム、端末装置、コンピュータプログラム及び車両消耗品管理方法 | |
| WO2015041161A1 (ja) | 書換検出システム、書換検出装置及び情報処理装置 | |
| KR20160045191A (ko) | 차량의 소프트웨어 업데이트 장치 및 방법 | |
| WO2018043107A1 (ja) | 車載更新装置及び車載更新システム | |
| US20190155998A1 (en) | Information terminal, communication terminal, server, license transfer system and license transfer method | |
| JP2011163951A (ja) | ナビゲーション装置、ナビゲーションシステム | |
| JP5662729B2 (ja) | 地図データ配信システム及び地図データ配信方法 | |
| JP7647894B2 (ja) | ソフトウェア更新装置、ソフトウェア更新システム、及びソフトウェア更新方法 | |
| JP2015041231A (ja) | プログラム書換システム、制御装置、プログラム出力装置、蓄積装置、コネクタ、及びプログラム書換方法 | |
| JP7087334B2 (ja) | 電子制御装置 | |
| JP2017123060A (ja) | 車両情報書込装置 | |
| JP5508051B2 (ja) | ナビゲーション装置 | |
| JPWO2023007577A5 (enExample) |
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: 17846386 Country of ref document: EP Kind code of ref document: A1 |
|
| 122 | Ep: pct application non-entry in european phase |
Ref document number: 17846386 Country of ref document: EP Kind code of ref document: A1 |